Configuration & State API
Pagination configuration
Section titled “Pagination configuration”PaginationConfiguration
PaginationConfiguration::make( bool $enabled = true, PaginationType $type = PaginationType::Standard, int $defaultPerPage = 15, ?array $perPageOptions = null, bool $scrollToTop = true,): PaginationConfigurationPaginationConfiguration validates allowed page sizes and controls pagination behavior.
normalizePage(mixed $page): int: Safely normalizes page number input.normalizePerPage(mixed $perPage): int: Ensures page size is within configured$perPageOptions.normalizeCursor(mixed $cursor): ?string: Normalizes cursor tokens for cursor-based pagination.
State and request input
Section titled “State and request input”TableState
TableState::fromArray(array $state, ?PaginationConfiguration $pagination = null): TableStateTableState::merge(array $state, ?PaginationConfiguration $pagination = null): TableStateTableState represents the normalized table state across page, per-page, cursor, search query, sort column, sort direction, hidden columns, and sticky-column preferences.
TableRequest
TableRequest::fromRequest(Request $request): TableRequestTableRequest::fromArray(array $input): TableRequestTableRequest::for(Table $table): arrayTableRequest extracts state from either a named table query namespace (?users[search]=...) or top-level query parameters.
Navigation and presentation metadata
Section titled “Navigation and presentation metadata”TableNavigation
TableNavigation::page(int $page): arrayTableNavigation::cursor(?string $cursor): arrayTableNavigation::perPage(int $perPage): arrayTableNavigation::search(?string $search): arrayTableNavigation::sort(?string $sort, string|Direction|null $direction = null): arrayTableNavigation produces query-string parameter arrays used to build client-side pagination, search, and sorting links.
Url
Url::make(string $url): UrlUrl::route(string $name, mixed $parameters = []): UrlUrl configures action URLs, route names, query parameters, Inertia partial reloads, and external navigation for rows and action buttons.
Image
Image::make(?string $url = null): ImageImage is a serializable value object configuring avatar URLs, rounded borders, display dimensions, and alternative text for image columns.
TableEmptyState
TableEmptyState::make(string $title, ?string $description = null, ?string $icon = null): TableEmptyStateTableEmptyState configures title, description, icon string, and action buttons displayed by the frontend adapter when zero records match the query.