poll('10sec') ->striped() ->columns([ IconColumn::make('sport_id') ->label('') ->icon(fn (string $state): string => match ($state) { '1' => 'icon-soccerball', }), TextColumn::make('league.name')->searchable(), TextColumn::make('home.name')->searchable(), TextColumn::make('away.name')->searchable(), TextColumn::make('starttime')->dateTime('d.m.Y H:i'), ]) ->filters([ // when we do another sport make all filter depending on sport // SelectFilter::make('sport_id') // ->options(fn () => Sport::getSportForClient(auth()->user()->client_id)) // ->label('Sport'), SelectFilter::make('league_id') ->relationship('league', 'name') ->searchable() ->label('League'), SelectFilter::make('home_id') ->relationship('home', 'name') ->searchable() ->label('Home'), SelectFilter::make('away_id') ->relationship('away', 'name') ->searchable() ->label('Away'), ], layout: FiltersLayout::AboveContent) ->deferFilters(false) ->recordActions([ EditAction::make(), ]) ->toolbarActions([ BulkActionGroup::make([ DeleteBulkAction::make(), ]), ]); } }