linhntaim / advanced-fields
Advanced fields for Form Builders of Filament.
Installs: 3
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
pkg:composer/linhntaim/advanced-fields
Requires
- php: ^8.2
- filament/forms: ^4.0|^5.0
This package is auto-updated.
Last update: 2026-01-29 12:15:51 UTC
README
This is where your description should go. Limit it to a paragraph or two. Consider adding a small example.
Installation
You can install the package via composer:
composer require linhntaim/advanced-fields
Optionally, you can publish the views using
php artisan vendor:publish --tag="advanced-fields-views"
Usage
Grid Fields
Currently, supports: RadioGrid, CheckboxGrid.
use Filament\Schemas\Schema; use LinhntAim\AdvancedFields\RadioGrid; use LinhntAim\AdvancedFields\CheckboxGrid; public function mount(): void { $this->form->fill([ // format of the state used for RadioGrid 'filled_radio_grid' => [ 'row_1' => 'column_c', 'row_2' => 'column_b', 'row_3' => 'column_a', ], // format of the state used for CheckboxGrid 'filled_checkbox_grid' => [ 'row_1' => [ 'column_c', 'column_a', ], 'row_2' => [ 'column_b', 'column_c', ], 'row_3' => [ 'column_a', 'column_b', ], ], ]); } public function form(Schema $schema): Schema { return $schema->components([ ..., RadioGrid::make('radio_grid') ->options([ 'column_a' => 'Column A', 'column_b' => 'Column B', 'column_c' => 'Column C', ]) ->rows([ 'row_1' => 'Row 1', 'row_2' => 'Row 2', 'row_3' => 'Row 3', ]) // optionally, (one) radio must be checked in each row ->required() // optionally, disable specific column option(s) ->disableOptionWhen(fn($value) => $value == 'column_b') // optionally, set the label of the "Clear selection" button // - note: the button will be shown after checking any radio if not required ->clearButtonLabel('X'), ..., CheckboxGrid::make('checkbox_grid') ->options([ 'column_a' => 'Column A', 'column_b' => 'Column B', 'column_c' => 'Column C', ]) ->rows([ 'row_1' => 'Row 1', 'row_2' => 'Row 2', 'row_3' => 'Row 3', ]) // optionally, at least one checkbox must be checked in each row ->required() // optionally, disable specific column option(s) ->disableOptionWhen(fn($value) => $value == 'column_b'), ..., ]); }
Changelog
Please see CHANGELOG for more information on what has changed recently.
License
The MIT License (MIT). Please see License File for more information.

