# TableRow

> One row of a table, selectable when the table is.

- **Level**: molecule · **Status**: stable · **Role**: content
- **Import**: `import { TableRow } from "@rrios-forge/ui/molecules/table-row";`
- **Source**: `packages/ui/src/molecules/table-row`

Renders <div role="row">. Cells accept a node or `{ content, align }`; `align` mirrors TableHeaderColumn.align so a column lines up with its header (`end` adds tabular-nums). Selected rows wear the selected register plus weight and `aria-selected`; hover is a quiet fill. The molecule never adds tabIndex; the consumer wraps the row in a real semantic interactive element when the whole row commits an action. Patterns consulted: Patterns/Density & Growth · DensityLevels + ContentGrowth.

## Use it for

- Table → `DataTable`, or `TableHeader` + `TableRow` + `TablePagination`

## Axes

| Axis | Part | Values | Default | Meaning |
|---|---|---|---|---|
| `selected` | — | `true` `false` | `false` | Chosen in a set: the selected wash plus a non-colour cue (weight, check). |
| `disabled` | — | `true` `false` | `false` | Not available: dimmed, skipped by the keyboard, ignores the pointer. |
| `interactive` | — | `true` `false` | `false` | Responds to the pointer: hover and press feedback, a pointer cursor. |

## Stories

- [Playground](/?path=/story/components-molecules-tablerow--playground) · frame: `/iframe.html?id=components-molecules-tablerow--playground&viewMode=story`
- [Densities](/?path=/story/components-molecules-tablerow--densities) · frame: `/iframe.html?id=components-molecules-tablerow--densities&viewMode=story`
- [Selected](/?path=/story/components-molecules-tablerow--selected) · frame: `/iframe.html?id=components-molecules-tablerow--selected&viewMode=story`
- [With actions](/?path=/story/components-molecules-tablerow--with-actions) · frame: `/iframe.html?id=components-molecules-tablerow--with-actions&viewMode=story`
- [In data surface](/?path=/story/components-molecules-tablerow--in-data-surface) · frame: `/iframe.html?id=components-molecules-tablerow--in-data-surface&viewMode=story`

## Always

- Tokens only (R04); variants are semantic axes, never appearance (R02).
- Typography and actions are Poesía atoms, never raw HTML with utilities.
- Vibrant panes need a ground and never nest (ADR-027).
