formstexulinot agent-emittableapp
Input
input
A single-line text (or file) control with optional clear.
Live examples
Text input
Text input
Loading demo…
Email input
Email input
Props
| Name | Kind | Required | Default | Description |
|---|---|---|---|---|
type | string | no | "text" | Native input type |
value | string | no | — | Controlled value (bind:value) |
files | unknown | no | — | FileList when type=file (bind:files) |
ref | unknown | no | — | Element ref for the native input |
clearable | boolean | no | false | — |
clearLabel | string | no | "Clear" | — |
disabled | boolean | no | false | — |
readonly | boolean | no | false | — |
onValueChange | event | no | — | — |
onClear | event | no | — | — |
class | string | no | — | — |
Keyboard
| Key | Action |
|---|---|
— | See accessibility notes for keyboard behavior. |
Accessibility
- Pair with Field or an external label via id/for
- Clear control has an accessible name when clearable
Evidence for input
Latest committed gates for input (as of 2026-10-23). Static snapshot — not live CI.
Behavior
n/ano behavior scenario
No dedicated behavior scenario for this catalog id (a styled or display surface, covered by its unit and axe tests).
Size (gzip)
texuli/input · budget 12.0 KiB
Budget from texuli.budgets.json; re-measure with `pnpm size --filter <entry>`.
Axe
documented
tests/e2e/site-component-pages.spec.tsdocs/quality (a11y-*)
Site component pages axe gate; package-level a11y docs under docs/quality when present.
Browsers
chromiumwebkitmobile
Playwright projects: Desktop Chrome, Desktop Safari, Pixel 7. Firefox is a known gap on this host.
When to use
Use when
- Short free-text fields
- Native file selection
Don’t use when
Prefer another component
- Multi-line text (use textarea)
- A labeled field with description and error (wrap in field)