Files
breadcrumb-the-shire/.agents/skills/starterkit-grid-standards/references/row-interaction-standard.md
fs 1c5648c727 fix: replace grid action column with link-column on primary data cell
Remove the dedicated "Edit"/"Open" action button column from all list
pages. Instead, wrap the primary data column (name, description, subject,
etc.) in a clickable <a> link via the new rowInteraction.linkColumn option.

Double-click, Enter-key, and click-to-focus row navigation preserved.
Pages with explicit actions config are unaffected. Address-book opts out
of auto-wrapping (linkColumn: false) and renders the link in its own
formatter to avoid nested <a> with avatar lightbox.

Also fixes pre-existing XSS in insertActionColumn (unescaped href/label)
and updates typography test for --text-page-title token change.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-24 19:43:03 +01:00

1.6 KiB

Row Interaction Standard

Ziel

Row-Navigation discoverable und keyboard-freundlich machen.

Standardverhalten

  1. Konfigurierbares Link-Column: Die primaere Datenspalte (z.B. Name, Beschreibung) wird als klickbarer <a>-Link gerendert.
  2. Enter auf fokussierter Row loest dieselbe Navigation aus.
  3. Doppelklick bleibt als Fallback fuer Power-User.
  4. Nur Rows mit Ziel-URL erhalten data-row-open-url und den Link im Link-Column.
  5. Rows ohne URL (z.B. fehlende Berechtigung) zeigen den Inhalt als Plain-Text ohne Link.

Contract

rowInteraction: {
  enabled: true,
  linkColumn: 0,           // Index der sichtbaren Datenspalte, die als Link gerendert wird (default: 0)
  keepDblClick: true,       // Doppelklick-Navigation beibehalten (default: true)
  enableEnterOnRow: true,   // Enter-Key-Navigation auf fokussierter Row (default: true)
  rowEnterHint: 'Press Enter to open row'
}

linkColumn-Zuordnung

Seite linkColumn Zielspalte
Users 2 First name (nach Avatar + hidden UUID)
Tenants 1 Description (nach Avatar)
Roles, Departments, Permissions 0 Description
Address book 1 Name (nach hidden UUID)
Mail log 3 Subject
Scheduled jobs 0 Job label
System audit, Import audit, User lifecycle audit 2 Event/Profile/Action
API audit 3 Path

Guardrails

  1. Keine globale Tab-Stop-Flut auf allen Rows.
  2. Fokusstil fuer Row und Link-Element sichtbar.
  3. Explizite actions.enabled: true pro Seite darf Link-Column uebersteuern (eigene Action-Spalte).
  4. Link-Column darf keine Spalte mit verschachtelten <a>-Elementen umwickeln (z.B. Avatar mit Lightbox).