$resource::getBreadcrumb(), self::getUrl(['searchTerm' => $this->searchTerm]) => trans('server/file.actions.global_search.search') . ' "' . $this->searchTerm . '"', ]; } public function table(Table $table): Table { /** @var Server $server */ $server = Filament::getTenant(); return $table ->paginated(false) ->query(fn () => File::get($server, $this->path, $this->searchTerm)->orderByDesc('is_directory')->orderBy('name')) ->columns([ TextColumn::make('name') ->label(trans('server/file.name')) ->searchable() ->sortable() ->icon(fn (File $file) => $file->getIcon()), BytesColumn::make('size') ->label(trans('server/file.size')) ->visibleFrom('md') ->state(fn (File $file) => $file->size) ->sortable(), DateTimeColumn::make('modified_at') ->label(trans('server/file.modified_at')) ->visibleFrom('md') ->since() ->sortable(), ]) ->recordUrl(function (File $file) { if ($file->is_directory) { return ListFiles::getUrl(['path' => join_paths($this->path, $file->name)]); } return $file->canEdit() ? EditFiles::getUrl(['path' => join_paths($this->path, $file->name)]) : null; }); } public function getTitle(): string|Htmlable { return trans('server/file.actions.global_search.title'); } }