From c174ab83d25e1bf3dce4c120fa7ba94001044d30 Mon Sep 17 00:00:00 2001 From: Arthur Monney Date: Wed, 8 Oct 2025 13:52:50 +0200 Subject: [PATCH] fix: update PageBuilder for Filament v4 compatibility --- .../forms/components/page-builder.blade.php | 7 ++++++- .../dropdown-block-picker.blade.php | 17 +++++------------ .../page-builder/modal-block-picker.blade.php | 9 +++++---- 3 files changed, 16 insertions(+), 17 deletions(-) diff --git a/resources/views/components/forms/components/page-builder.blade.php b/resources/views/components/forms/components/page-builder.blade.php index 82bd143..dd5ad3a 100644 --- a/resources/views/components/forms/components/page-builder.blade.php +++ b/resources/views/components/forms/components/page-builder.blade.php @@ -1,5 +1,5 @@ @php - use Filament\Forms\Components\Actions\Action; + use Filament\Actions\Action; use Z3d0X\FilamentFabricator\Enums\BlockPickerStyle; $containers = $getChildComponentContainers(); @@ -26,6 +26,7 @@ $isReorderableWithButtons = $isReorderableWithButtons(); $isReorderableWithDragAndDrop = $isReorderableWithDragAndDrop(); + $key = $getKey(); $statePath = $getStatePath(); @endphp @@ -209,6 +210,7 @@ class="fi-fo-builder-block-picker-ctn rounded-lg bg-white dark:bg-gray-900" :after-item="$uuid" :columns="$blockPickerColumns" :blocks="$blockPickerBlocks" + :key="$key" :state-path="$statePath" :width="$blockPickerWidth" > @@ -222,6 +224,7 @@ class="fi-fo-builder-block-picker-ctn rounded-lg bg-white dark:bg-gray-900" :after-item="$uuid" :columns="$blockPickerColumns" :blocks="$blockPickerBlocks" + :key="$key" :state-path="$statePath" :width="$blockPickerWidth" > @@ -255,6 +258,7 @@ class="absolute -top-3 left-3 px-1 text-sm font-medium" :action="$addAction" :blocks="$blockPickerBlocks" :columns="$blockPickerColumns" + :key="$key" :state-path="$statePath" :width="$blockPickerWidth" class="flex justify-center" @@ -268,6 +272,7 @@ class="flex justify-center" :action="$addAction" :blocks="$blockPickerBlocks" :columns="$blockPickerColumns" + :key="$key" :state-path="$statePath" :width="$blockPickerWidth" class="flex justify-center" diff --git a/resources/views/components/forms/components/page-builder/dropdown-block-picker.blade.php b/resources/views/components/forms/components/page-builder/dropdown-block-picker.blade.php index a1a5c04..f7f4daa 100644 --- a/resources/views/components/forms/components/page-builder/dropdown-block-picker.blade.php +++ b/resources/views/components/forms/components/page-builder/dropdown-block-picker.blade.php @@ -3,6 +3,7 @@ 'afterItem' => null, 'blocks', 'columns' => null, + 'key', 'statePath', 'trigger', 'width' => null, @@ -17,26 +18,18 @@ - +
@foreach ($blocks as $block) @php $wireClickActionArguments = ['block' => $block->getName()]; - if ($afterItem) { + if (filled($afterItem)) { $wireClickActionArguments['afterItem'] = $afterItem; } $wireClickActionArguments = \Illuminate\Support\Js::from($wireClickActionArguments); - $wireClickAction = "mountFormComponentAction('{$statePath}', '{$action->getName()}', {$wireClickActionArguments})"; + $wireClickAction = "mountAction('{$action->getName()}', {$wireClickActionArguments}, { schemaComponent: '{$key}' })"; @endphp getLabel() }} @endforeach - +
diff --git a/resources/views/components/forms/components/page-builder/modal-block-picker.blade.php b/resources/views/components/forms/components/page-builder/modal-block-picker.blade.php index dfc99b8..bc3458b 100644 --- a/resources/views/components/forms/components/page-builder/modal-block-picker.blade.php +++ b/resources/views/components/forms/components/page-builder/modal-block-picker.blade.php @@ -3,6 +3,7 @@ 'afterItem' => null, 'blocks', 'columns' => null, + 'key', 'statePath', 'trigger', 'width' => null, @@ -23,26 +24,26 @@ @php $wireClickActionArguments = ['block' => $block->getName()]; - if ($afterItem) { + if (filled($afterItem)) { $wireClickActionArguments['afterItem'] = $afterItem; } $wireClickActionArguments = \Illuminate\Support\Js::from($wireClickActionArguments); - $wireClickAction = "mountFormComponentAction('{$statePath}', '{$action->getName()}', {$wireClickActionArguments})"; + $wireClickAction = "mountAction('{$action->getName()}', {$wireClickActionArguments}, { schemaComponent: '{$key}' })"; @endphp