type_id = $id; } protected function getActions(): array { return [ Actions\Action::make('create') ->label('New Document') ->form([ Forms\Components\TextInput::make('document_name')->label('Document Name'), ]) ->action(function (array $data): void { $this->createNewDocument($data); }) ->modalWidth('sm') ->modalHeading('Create Document') ->color('primary') ->modalButton('Create'), ]; } protected function getTableQuery(): Builder { return Document::where('type_id', $this->type_id); } protected function getTableColumns(): array { return [ Tables\Columns\TextColumn::make('document_name') ->label('Document Name'), ]; } protected function getTableActions(): array { return [ // ... ]; } protected function isTablePaginationEnabled(): bool { return true; } protected function getTableRecordsPerPageSelectOptions(): array { return [10, 25, 50, 100]; } public function render(): View { return view('livewire.document'); } }