components([ PublicImageUploadRules::fileUpload('path', 'Imagem', 'content/portfolio'), PublicImageUploadRules::altTextField('alt_text', 'path'), TextInput::make('caption') ->label('Legenda') ->maxLength(255), TextInput::make('sort_order') ->label('Ordem') ->numeric() ->default(0) ->required(), ]); } public function table(Table $table): Table { return $table ->recordTitleAttribute('alt_text') ->columns([ TextColumn::make('alt_text') ->label('Texto alternativo') ->searchable(), TextColumn::make('caption') ->label('Legenda'), TextColumn::make('sort_order') ->label('Ordem') ->sortable(), ]) ->defaultSort('sort_order') ->reorderable('sort_order') ->headerActions([ CreateAction::make(), ]) ->recordActions([ EditAction::make(), DeleteAction::make() ->requiresConfirmation(), ]) ->toolbarActions([ BulkActionGroup::make([ DeleteBulkAction::make(), ]), ]); } }