label(__('hr.actions.export')) ->icon('heroicon-o-arrow-down-tray') ->action(fn (): BinaryFileResponse => Excel::download(new $exportClass, $filename)); } /** * @param class-string $exportClass */ public static function bulk(string $name, string $exportClass, string $filename): BulkAction { return BulkAction::make($name) ->label(__('hr.actions.export_selected')) ->icon('heroicon-o-arrow-down-tray') ->action(function (Collection $records) use ($exportClass, $filename): BinaryFileResponse { $ids = $records->pluck('id')->all(); return Excel::download(new $exportClass($ids), $filename); }) ->deselectRecordsAfterCompletion(); } }