<!-- 04_VISUAL/xwui/xwui-lib/xwui-lib-super/src/documents/XWUIBlockDocument/XWUIBlockDocument.md -->
# XWUIBlockDocument

TODO(agent): one paragraph: what it shows, what the user can do, and which existing XWUI contracts it composes (REF_06 section 2.2).

## Basic Usage

```example
file: examples/BasicUsage.ts
html: examples/BasicUsage.html
title: Basic Usage
description: Four items, one selected and one disabled.
```

## Data

`items[]`: `{ id, label, value?, disabled? }`. `selectedId`: the selected id or null (host-owned; `onSelect` reports a change).

## Options

| Option | Default | What it does |
| --- | --- | --- |
| `title` | locale pack `xwui.block_document.title` | Heading. |
| `ariaLabel` | the title | Accessible name of the list. |
| `emptyText` | locale pack `xwui.block_document.empty` | Text of the empty state. |
| `density` | `'comfortable'` | `'compact'` tightens the rows. |
| `locale`, `numberingSystem` | page language, `'latn'` | Number formatting. |

## Events and methods

`onSelect(id)`; `select(id)`, `getSelectedId()`, `updateData(patch)`, `updateConfig(patch)`, `getElement()`, `destroy()`.

## Accessibility and RTL

A labelled region holding a `listbox` of `option`s with a roving tab stop: ArrowDown and ArrowUp move it (disabled items are skipped, the ends wrap), Home and End jump, Enter and Space select. Selection is `aria-selected` plus a weight change and an inline-start bar, never colour alone. Logical properties only; direction comes from the parent `dir`; numbers use Western digits unless `numberingSystem` says otherwise.

```api
```
