where('server_id', $this->server->id); } protected static ?string $heading = ''; protected function getTableColumns(): array { return [ TextColumn::make('command') ->limit(40) ->tooltip(fn (CronJob $cronJob) => $cronJob->command) ->searchable() ->copyable(), TextColumn::make('created_at') ->formatStateUsing(fn (CronJob $cronJob) => $cronJob->created_at_by_timezone) ->sortable(), ]; } public function getTable(): Table { return $this->table ->actions([ Action::make('delete') ->icon('heroicon-o-trash') ->tooltip('Delete') ->color('danger') ->hiddenLabel() ->requiresConfirmation() ->authorize(fn (CronJob $record) => auth()->user()->can('delete', $record)) ->action(function (CronJob $record) { try { app(DeleteCronJob::class)->delete($this->server, $record); } catch (\Exception $e) { Notification::make() ->danger() ->title($e->getMessage()) ->send(); } $this->dispatch('$refresh'); }), ]); } }