feat: bootstrap design kit and vaporwave demo baseline
This commit is contained in:
7
kit/patterns/table-pagination/README.md
Normal file
7
kit/patterns/table-pagination/README.md
Normal file
@@ -0,0 +1,7 @@
|
||||
# Table + Pagination Pattern
|
||||
|
||||
This pattern package captures a shared contract for table-based UI pages with server-side
|
||||
filters and pagination.
|
||||
|
||||
It is derived from mature server-rendered admin UIs and list-page conventions across multiple
|
||||
Go web codebases.
|
||||
@@ -0,0 +1,3 @@
|
||||
// Placeholder template for pagination helpers.
|
||||
// Adapt from existing host codebase conventions (net/http or Gin).
|
||||
|
||||
27
kit/patterns/table-pagination/contract.md
Normal file
27
kit/patterns/table-pagination/contract.md
Normal file
@@ -0,0 +1,27 @@
|
||||
# Contract: Table + Server-Side Filters + Pagination
|
||||
|
||||
## Required Behavior
|
||||
|
||||
- Filters apply to the full query scope before pagination (not page-local filtering).
|
||||
- Pagination state is controlled by URL query parameters.
|
||||
- Changing a filter resets the page parameter to page `1`.
|
||||
- UI shows a summary (`Showing X–Y of N`) and an explicit active page state in pagination controls.
|
||||
- Canonical demo visual style uses a centered dot pager while preserving page semantics via URL parameters and accessible labels.
|
||||
- Demo/base contract includes a `rows per page` control.
|
||||
- Status badge columns should be centered when the column semantics are status-only values.
|
||||
- Small modules (no internal scroll, no more than 2 actions) should place actions in the module header row.
|
||||
- Shared table/filter controls should inherit the repository baseline component theme
|
||||
(currently Vapor Soft / Vapor Night in the canonical demo/scaffold) rather than redefining
|
||||
per-pattern primitives.
|
||||
|
||||
## Recommended Query Parameters
|
||||
|
||||
- `page` for single-list pages
|
||||
- `per_page` when the page-size control is user-visible
|
||||
- section-specific params (for example `active_page`, `chronology_page`) for multi-list pages
|
||||
|
||||
## Interaction Guardrails
|
||||
|
||||
- Same-page filter/pagination interactions should preserve user reading position (for example via module anchors such as `#table-filters` / `#table-list`).
|
||||
- Table status badges should remain readable under the shared theme baseline (including tinted badge variants when a host project opts into a legacy or alternate visual preset).
|
||||
- Dot pager interactions should remain keyboard accessible and expose page meaning via labels/`aria-current`, even if numbers are visually hidden.
|
||||
2
kit/patterns/table-pagination/static/table.css
Normal file
2
kit/patterns/table-pagination/static/table.css
Normal file
@@ -0,0 +1,2 @@
|
||||
/* Placeholder styles for table pagination pattern. */
|
||||
|
||||
@@ -0,0 +1,2 @@
|
||||
<!-- Placeholder table + pager partial. -->
|
||||
|
||||
Reference in New Issue
Block a user