recordTitleAttribute('title') ->columns([ TextColumn::make('title') ->searchable() ->url(fn ($record) => FeedbackResource::getUrl('edit', ['record' => $record])), TextColumn::make('customerProduct.product.name') ->label('Product') ->placeholder('General'), TextColumn::make('status') ->badge() ->color(fn (string $state): string => match ($state) { 'pending' => 'warning', 'processing' => 'info', 'resolved' => 'success', 'closed' => 'gray', default => 'gray', }), TextColumn::make('tags.name') ->badge(), TextColumn::make('feedbackChannel.name') ->label('Channel'), TextColumn::make('interactions_count') ->counts('interactions') ->label('Interactions'), TextColumn::make('created_at') ->dateTime('d/m/Y') ->sortable(), ]) ->filters([ SelectFilter::make('status') ->options([ 'pending' => 'Pending', 'processing' => 'Processing', 'resolved' => 'Resolved', 'closed' => 'Closed', ]), SelectFilter::make('tags') ->relationship('tags', 'name'), ]) ->defaultSort('created_at', 'desc') ->headerActions([]) ->recordActions([]); } }