# 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 für 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

```js
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 für Row und Link-Element sichtbar.
3. Explizite `actions.enabled: true` pro Seite darf Link-Column übersteuern (eigene Action-Spalte).
4. Link-Column darf keine Spalte mit verschachtelten `<a>`-Elementen umwickeln (z.B. Avatar mit Lightbox).
