Forms\Components\Section::make('Relationships')
->columns()
->schema([
Forms\Components\Select::make('series_id')
->live()
->relationship('series', 'name'),
Forms\Components\Select::make('season_id')
->live()
->disabled(fn ($get): bool => ! filled($get('series_id')))
->relationship(
'season',
'name',
fn ($get, $query) => $query->where('series_id', $get('series_id'))
),
Forms\Components\Select::make('event_id')
->live()
->disabled(fn ($get): bool => ! filled($get('season_id')))
->relationship(
'event',
'name',
fn ($get, $query) => $query->where('season_id', $get('season_id'))
),
Forms\Components\Select::make('session_id')
->live()
->disabled(fn ($get): bool => ! filled($get('event_id')))
->relationship(
'session',
'name',
fn ($get, $query) => $query->where('event_id', $get('event_id'))
),
]),
Forms\Components\Section::make('Relationships')
->columns()
->schema([
Forms\Components\Select::make('series_id')
->live()
->relationship('series', 'name'),
Forms\Components\Select::make('season_id')
->live()
->disabled(fn ($get): bool => ! filled($get('series_id')))
->relationship(
'season',
'name',
fn ($get, $query) => $query->where('series_id', $get('series_id'))
),
Forms\Components\Select::make('event_id')
->live()
->disabled(fn ($get): bool => ! filled($get('season_id')))
->relationship(
'event',
'name',
fn ($get, $query) => $query->where('season_id', $get('season_id'))
),
Forms\Components\Select::make('session_id')
->live()
->disabled(fn ($get): bool => ! filled($get('event_id')))
->relationship(
'session',
'name',
fn ($get, $query) => $query->where('event_id', $get('event_id'))
),
]),