PHP code example of asignua / filament-relation-manager-tabs

1. Go to this page and download the library: Download asignua/filament-relation-manager-tabs library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

asignua / filament-relation-manager-tabs example snippets


use Asignua\FilamentRelationManagerTabs\RelationManagerTab;
use Filament\Forms\Components\TextInput;
use Filament\Resources\Resource;
use Filament\Schemas\Components\Tabs;
use Filament\Schemas\Schema;

class TeamResource extends Resource
{
    public static function form(Schema $schema): Schema
    {
        return $schema->components([
            Tabs::make('Tabs')
                ->persistTabInQueryString()
                ->tabs([
                    Tabs\Tab::make('Details')->schema([
                        TextInput::make('name')->ons(): array
    {
        return [];
    }
}

RelationManagerTab::make(PostsRelationManager::make(['status' => 'draft']));

Tabs::make('Tabs')->tabs([
    Tabs\Tab::make('Details')->schema([/* ... */]),
    ...RelationManagerTab::many([
        PostsRelationManager::class,
        MembersRelationManager::class,
    ]),
]);

RelationManagerTab::make(PostsRelationManager::class);               // follow the manager (default)
RelationManagerTab::make(PostsRelationManager::class, lazy: true);   // force lazy, even if $isLazy = false
RelationManagerTab::make(PostsRelationManager::class, lazy: false);  // mount eagerly with the page
RelationManagerTab::many([...], lazy: true);

use Asignua\FilamentRelationManagerTabs\RelationManagerSection;

$schema->components([
    Section::make('Details')->schema([/* ... */]),
    RelationManagerSection::make(PostsRelationManager::class),              // collapsed + lazy
    RelationManagerSection::make(
        MembersRelationManager::class,
        label: 'People',
        icon: 'heroicon-o-users',
        collapsed: false,
        lazy: false,
        key: 'people',
    ),
]);