Merge pull request #16830 from howdu/fix-form-builder

This commit is contained in:
Dan Harrin
2025-07-05 08:00:56 +01:00
committed by GitHub
2 changed files with 48 additions and 1 deletions
@@ -120,7 +120,7 @@
x-on:expand="isCollapsed = false"
x-sortable-item="{{ $itemKey }}"
{{
$item->getParentComponent()->getExtraAttributes()
$item->getParentComponent()->getExtraAttributeBag()
->class(['fi-fo-builder-item'])
}}
x-bind:class="{ 'fi-collapsed': isCollapsed }"
@@ -0,0 +1,47 @@
<?php
use Filament\Forms\Components\Builder;
use Filament\Forms\Components\TextInput;
use Filament\Schemas\Schema;
use Filament\Tests\Fixtures\Livewire\Livewire;
use Filament\Tests\TestCase;
use function Filament\Tests\livewire;
uses(TestCase::class);
it('displays blocks in builder', function (): void {
$data = [
'builder' => [
[
'type' => 'one',
'data' => [
'foo' => 'test',
],
],
],
];
livewire(TestComponentWithBuilder::class)
->assertSuccessful()
->fillForm($data)
->assertSchemaStateSet($data);
});
class TestComponentWithBuilder extends Livewire
{
public function form(Schema $form): Schema
{
return $form
->components([
Builder::make('builder')
->blocks([
Builder\Block::make('one')
->schema([
TextInput::make('foo'),
]),
]),
])
->statePath('data');
}
}