requiresConfirmation(); $this->label(__('filament-actions::force-delete.single.label')); $this->modalHeading(fn (): string => __('filament-actions::force-delete.single.modal.heading', ['label' => $this->getRecordTitle()])); $this->modalSubmitActionLabel(__('filament-actions::force-delete.single.modal.actions.delete.label')); $this->successNotificationTitle(__('filament-actions::force-delete.single.notifications.deleted.title')); $this->defaultColor('danger'); $this->icon(FilamentIcon::resolve('actions::force-delete-action') ?? 'heroicon-m-trash'); $this->modalIcon(FilamentIcon::resolve('actions::force-delete-action.modal') ?? 'heroicon-o-trash'); $this->action(function (): void { $result = $this->process(static fn (Model $record) => $record->forceDelete()); if (! $result) { $this->failure(); return; } $this->success(); }); $this->visible(static function (Model $record): bool { if (! method_exists($record, 'trashed')) { return false; } return $record->trashed(); }); } }