Syntax Entry
Add a Filament infolist entry for themeable syntax highlighting using highlight.js
Author:
Parallax
Documentation
Add a Filament infolist entry for themeable server-side syntax highlighting using tempestphp/highlight.
#Installation
Install the package via composer:
composer require parallax/filament-syntax-entry
Optionally, you can publish the views using
php artisan vendor:publish --tag="filament-syntax-entry-views"
#Upgrading from 1.x
There are a couple of important changes to be aware of when upgrading to version 2.x:
- PHP 8.3 is required for server-side syntax highlighting
- Highlight.js is no longer supported
- Theme selection has been replaced with the ability to create custom themes
#Quickstart
#Add the Infolist entry
Add the SyntaxEntry to the $infolist->schema() method.
<?php
namespace App\Filament\Resources;
use Parallax\FilamentSyntaxEntry\SyntaxEntry;
class ProductResource extends Resource
{
public static function infolist(Infolist $infolist): Infolist
{
return $infolist
->schema([
SyntaxEntry::make('metadata'),
]);
}
}
#Setting the language
The default language value is set to json. To override this value you may use the language() method:
SyntaxEntry::make('metadata')
->language('json');
The following languages are currently available:
bladecssgdscripthtmljavascriptjsonphpsqltwigxmlyaml
#Creating a custom theme
You may override the default theme by using the theme() method:
SyntaxEntry::make('metadata')
->theme('smudge');
This will wrap the syntax component with a custom class like so:
syntax-entry-theme-smudge
The final step is to follow the tempestphp/highlight documentation on how to create your own theme, and use this in combination with Filament themes.
#Changelog
Please see CHANGELOG for more information on what has changed recently.
#Credits
#License
The MIT License (MIT). Please see License File for more information.
The author
From the same author
Featured Plugins
A selection of plugins curated by the Filament team
Custom Dashboards
Let your users build and share their own dashboards with a drag-and-drop interface. Define your data sources in PHP and let them do the rest.
Filament
Advanced Tables (formerly Filter Sets)
Supercharge your tables with powerful features like user-customizable views, quick filters, multi-column sorting, advanced table searching, convenient view management, and more. Compatible with Resource Panel Tables, Relation Managers, Table Widgets, and Table Builder!
Kenneth Sese
Data Lens
Advanced Data Visualization for Laravel Filament - a premium reporting solution enabling custom column creation, sophisticated filtering, and enterprise-grade data insights within admin panels.
Padmission