Input
Input is Orbital's single-line text control for short values — names, emails, passwords, and numbers.
Bind a string with InputBind (or bind=signal), wrap in Field when you need a label or validation message, and use prefix/suffix slots for icons or units. Optional parser/format hooks let display text differ from stored values without ad-hoc filtering in event handlers.
- Short text, email, password, search, and numeric fields
- Inputs with leading icons or affix text (currency, units)
- Controlled values via
InputBindin forms and filters
- Create a value signal and pass it in
InputBind(two-way binding). - Wrap in Field when the control needs a visible label or validation message.
- Add InputPrefix / InputSuffix slot children for icons or affix text.
- Attach
rulesonInputBind(e.g.InputRule::required) when Field should show errors. - Use
parser/formatonInputAppearancewhen display text should differ from stored value.
Grouped props: InputBind (value, id, name, rules), InputAppearance (size, placeholder, input_type, disabled, readonly, autofocus), InputEvents (focus, blur, allow_value). At call sites you can write bind=signal via From on InputBind.
Single-line text field for short user input. Bind value with a signal for two-way sync; use placeholder to hint format—not as a substitute for a Field label.
Leading and trailing slots for icons, currency symbols, or units. Affixes stay aligned inside the input border instead of floating over the text.
Small, medium, and large visual heights for dense toolbars or prominent form fields. Medium is the default when size is omitted.
Non-editable state: the value is visible but cannot be changed or focused for editing.
Hint text shown when the field is empty. Pair with a Field label—placeholder alone does not meet accessible naming requirements.
Moves keyboard focus to the input on mount. Useful in modal dialogs or single-field flows.
Sets the native email input type for appropriate keyboards and basic format hints.
Stored value uses underscores; the field displays spaces.
Field shows the label and required indicator; InputRule::required on the bind drives validation text below the control when the value is empty.