Skip to main content

Text Input

Accessible labeled input with required marker, hints, errors (role=alert), prefix/suffix, and full native input props.

Default

We use this for receipts and login links.

Optional

Prefix & suffix

https://
USD

Error

Disabled & read-only

Loading

Loading field
Loading field

API

PropRequiredTypeDefaultDescription
themeOptionalSiteThemeatelierVisual theme for the field group.
modeOptional"light" | "dark"lightColor mode — swaps token palette for light or dark surfaces.
labelOptionalstring—Visible label linked via htmlFor.
requiredOptionalboolean—Shows required marker + aria-required.
hintOptionalstring—Helper text linked via aria-describedby.
errorOptionalstring—Validation message; aria-invalid + role=alert.
prefix / suffixOptionalReactNode—Inline affixes (e.g. https://, .com).
name, value, onChange, onBlurOptionalnative input—Standard controlled/uncontrolled form wiring.
type, autoComplete, inputMode, patternOptionalnative input—Pass through for email, tel, password, etc.
readOnly, disabled, maxLengthOptionalnative input—Native states with visible styling.
TextInputSkeletonOptionalcomponent—Colocated loading preset — label, control, optional hint bars.