columns([ TextColumn::make('name') ->searchable() ->sortable(), TextColumn::make('code') ->searchable() ->sortable(), TextColumn::make('description') ->limit(50) ->toggleable(), TextColumn::make('is_active') ->label(__('hr.fields.status')) ->badge() ->formatStateUsing(fn (bool $state): string => $state ? __('enums.employment_status.active') : __('enums.employment_status.inactive')) ->color(fn (bool $state): string => $state ? 'success' : 'danger') ->sortable(), TextColumn::make('created_at') ->dateTime() ->sortable() ->toggleable(isToggledHiddenByDefault: true), TextColumn::make('updated_at') ->dateTime() ->sortable() ->toggleable(isToggledHiddenByDefault: true), TextColumn::make('deleted_at') ->dateTime() ->sortable() ->toggleable(isToggledHiddenByDefault: true), ]) ->filters([ TernaryFilter::make('is_active') ->label(__('hr.fields.status')) ->placeholder(__('hr.filters.all_departments')) ->trueLabel(__('enums.employment_status.active')) ->falseLabel(__('enums.employment_status.inactive')), TrashedFilter::make(), ]) ->recordActions([ ViewAction::make(), EditAction::make(), ]) ->toolbarActions([ BulkActionGroup::make([ DeleteBulkAction::make(), ForceDeleteBulkAction::make(), RestoreBulkAction::make(), ]), ]); } }