label(__('filament-support::actions/restore.single.label')); $this->modalHeading(fn (): string => __('filament-support::actions/restore.single.modal.heading', ['label' => $this->getRecordTitle()])); $this->modalButton(__('filament-support::actions/restore.single.modal.actions.restore.label')); $this->successNotificationTitle(__('filament-support::actions/restore.single.messages.restored')); $this->color('secondary'); $this->icon('heroicon-s-reply'); $this->requiresConfirmation(); $this->action(function (Model $record): void { if (! method_exists($record, 'restore')) { $this->failure(); return; } $result = $this->process(static fn () => $record->restore()); if (! $result) { $this->failure(); return; } $this->success(); }); $this->visible(static function (Model $record): bool { if (! method_exists($record, 'trashed')) { return false; } return $record->trashed(); }); } }