## `hb-form-composer` — form-composer

**Category:** forms  
**Tags:** forms, builder

### What it does

Visual form-schema builder: internal `hb-form` defines field types, validation flags, and options, mirrored into an `hb-table` preview and editable via `hb-dialogform`. Accumulates `output_schema` as the composed `hb-form` schema array and emits `done` when the schema is finalized (e.g. via the UI save action).

### Custom element

`hb-form-composer`

### Attributes (snake_case; use string values in HTML)

- `id` — optional string  
- `style` — optional string  
- `debug` — optional boolean (string in HTML)  
- `output_schema` — optional string (JSON array of generator field descriptors; seed or inspect composed schema)

### Events

- `done` — `{ schema: any; id: string }`

### Usage notes

Uses nested `hb-form`, `hb-table`, and `hb-dialogform`. `output_schema` mirrors the live composed schema suitable for `hb-form`. The table slot “done” control uses a Bulma outline button from `styles/bulma.scss`.

### Minimal HTML example

```html
<hb-form-composer debug="no"></hb-form-composer>
```
