Skip to content

[6.x] Inertia element indexes#19095

Draft
brianjhanson wants to merge 88 commits into
6.xfrom
feature/inertia-element-indexes
Draft

[6.x] Inertia element indexes#19095
brianjhanson wants to merge 88 commits into
6.xfrom
feature/inertia-element-indexes

Conversation

@brianjhanson

Copy link
Copy Markdown
Contributor

Description

Related issues

brianjhanson and others added 30 commits May 28, 2026 17:09
I ran into some issues going full inertia, namely that elements are able
to render their own HTML within the table, which got me scared. This
takes a step back and tries to find a different middle ground for
rendering the table.

I'm still not sure it's right though
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…element-indexes-entries-assets-users-convert-to
…o brian/cms-2148-cp-element-indexes-entries-assets-users-convert-to
…element-indexes-entries-assets-users-convert-to
…element-indexes-entries-assets-users-convert-to
…hub.com:craftcms/cms into brian/cms-2148-cp-element-indexes-entries-assets-users-convert-to
…element-indexes-entries-assets-users-convert-to
…element-indexes-entries-assets-users-convert-to
brianjhanson and others added 29 commits June 30, 2026 11:09
Design for abstracting the shared shell/footer/selection from AdminTable
and ElementCards into a page-composed BaseElementIndex, extracting a bare
DataTable core, and adding aria-live + shift-click/keyboard selection.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Implements shared selection logic for element indexes with support for:
- Individual row selection with anchor tracking
- Shift-click range selection between anchor and target
- Bulk action visibility based on selection state and available actions
- Read-only mode support

Uses a version trigger to ensure Vue computed properties retrigger when
table row selection state changes, enabling proper reactivity for UI
updates.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Space/Enter toggles selection, Arrow keys move focus between cards,
Shift+Arrow extends selection, mirroring DataTable's keyboard nav.
Both grid axes are supported: Right/Down and Left/Up move to the
next/previous card respectively.
Rows/cards became focusable via tabindex for roving keyboard selection;
give them a visible :focus-visible outline (stand-in treatment).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Any focusable light-DOM element now gets a visible focus ring on keyboard
focus. Placeholder treatment. Supersedes the per-component row/card rules.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Row/card :focus-visible styles are now covered by the global rule in
base.css, so remove the redundant component-scoped copies. (These two
files also carry incidental Prettier reflow from a prior format pass.)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant