kda / filament-blocks
Requires
- fdt2k/laravel-package-service-provider: dev-dev-v2 ||^2.0
- filament/filament: ^3.0
Requires (Dev)
- laravel/framework: ^9.19
- laravel/pint: ^1.1
- orchestra/canvas: ^7.2
- orchestra/testbench: ^7.6
This package is auto-updated.
Last update: 2024-10-19 09:19:29 UTC
README
Reusables Blocks for Filament Builder Field
This package is a partial fork of Z3d0X/filament-fabricator by Z3d0X
Liked the concept but I needed to split the features in separate packages.
Works well with kda/laravel-layouts
Installation
You can install the package via composer:
composer require kda/filament-blocks
Create a block
php artisan make:filament-block MyBlock
This will create two files in your laravel folder
- app/Filament/Blocks/MyBlock.php
- resources/views/components/filament-blocks/my.blade.php
Getting the blocks
in filament Builder form
BlockManager::getBlocks()
<?php
class PageResource extends Resource
{
public static function form(Form $form): Form
{
return $form
->schema([
Builder::make('content')
->blocks(BlockManager::getBlocksByClass(PageGroup::class))
]);
}
}
in your blade template
just call the blade component to render all the blocks
<x-filament-blocks::blocks :blocks="$content" />
rendering blocks
Your block component blade file will receive all form data as properties.
you can customize data sent to the component in the mutateData
function of your Block
public static function mutateData(array $data): array
{
$data['post']= Post::find($data['post_id']);
return $data;
}
Testing
composer test
Changelog
Please see CHANGELOG for more information on what has changed recently.
Contributing
Please see CONTRIBUTING for details.
Security Vulnerabilities
Please review our security policy on how to report security vulnerabilities.
Credits
License
The MIT License (MIT). Please see License File for more information.