콘텐츠로 이동

DataTableActiveRow — @gj-kit/expo-ui

@gj-kit/expo-ui에서 공개하는 interface입니다. package version 0.8.1의 release declaration을 그대로 표시합니다.

import { DataTableActiveRow } from '@gj-kit/expo-ui';
/**
* App-driven "current row" highlight for consoles where activating a row opens
* a detail surface (Sheet, side panel) that stays in sync with the table. This
* is deliberately not selection: the row is not aria-selected, because that
* would claim grid/listbox semantics this static table does not have. On the
* web the active body row — the `<tr>` in the table presentation and the
* listitem in the list presentation — carries `aria-current="true"` instead,
* which is valid on any element. Native presentations expose no extra
* accessibility state for the active row, so the detail surface itself must
* also convey which record is open. Grouping key and style in one object makes
* a style without a key impossible by construction, the same shape discipline
* as the selection prop.
*/
interface DataTableActiveRow<RowKey extends DataTableRowKey> {
/** Key of the row currently open in a detail surface; null means none. */
readonly key: RowKey | null;
/**
* Replaces the default active visual (primarySoft full-row wash + primary
* start-edge accent on the row-header cell or list row container). Layered
* onto the active row after built-in row styles; the web table presentation
* applies it to each of the row's cells, because a real <table> row box
* cannot paint above its opaque cells. `aria-current` stays either way.
*/
readonly style?: StyleProp<ViewStyle> | undefined;
}

이 선언은 매개변수, optionality, 제네릭, 반환값, 공개 union/type 계약의 정본입니다. 호출 전 필요한 환경·권한·오류 경계는 패키지 Golden path와 이 subpath의 import 조건을 함께 확인하세요.

  • 패키지: @gj-kit/expo-ui
  • 버전: 0.8.1
  • 공개 entry: .
  • 소스: GitHub

App-driven “current row” highlight for consoles where activating a row opens a detail surface (Sheet, side panel) that stays in sync with the table. This is deliberately not selection: the row is not aria-selected, because that would claim grid/listbox semantics this static table does not have. On the web the active body row — the <tr> in the table presentation and the listitem in the list presentation — carries aria-current="true" instead, which is valid on any element. Native presentations expose no extra accessibility state for the active row, so the detail surface itself must also convey which record is open. Grouping key and style in one object makes a style without a key impossible by construction, the same shape discipline as the selection prop.