Table toolbar search
useDebounce waits for a pause in typing before it narrows the list8 catalogs
- AC Delco Q3
- Brake & Chassis
- Lighting SKUs
- Filters (May)
- Timing Components
- Ignition Systems
- Suspension Parts
- Cooling Systems
Field chrome
Select takes the same top label as Input, a disabled field says why, and an end action stays on the field rowName
required
Category
required
Pick one
Webhook
Use an https:// address
Owner
Only admins can change the owner
Region
Billing
Locked after the first runSettings form
A required field that validates on blur, plus disabled and readonly rowsEmail
required
Display name
Shown to teammates in the workspace
Plan
Workspace ID
Presets
email, password, search, url, numeric: the field shapes both apps kept spelling out, as one word each; explicit props winEmail
Password
Search
Website
Max pages per part
Job id
Notes
Numeric field with a unit
presets="numeric" plus the unit prop: decimal keypad, tabular right-aligned figures, the unit behind the valueDiameter
≈ 45.7 cm
Filters panel
A checkbox group and a toggle row, both narrowing the same list liveModule
37 of 37 jobs match
Login form footer
Submit stays disabled until the email and password both validateEmail
Password
At least 8 characters
Three field shapes
element switches between input, textarea, and checkboxText
Textarea
Checkbox
Toggle
Icons and suffixes in the frame
before and after put content inside the field without breaking its layoutPrefixed
Suffixed
Label and helper text
top and bottom caption the field above and below; required adds the asteriskName
As it appears on your ID
Coupon
required
API key
required
Five sizes
size and textSize scale independentlyOutline, flat, or shadow
surface controls how the field's edge is drawnOutline
Flat
Shadow
Error, changed, disabled, readonly
The states a field moves through outside plain editingPlain
Error
Invalid value
Error (custom)
Must be a valid email
Warning
Looks unusual, worth a second look
Changed
Disabled
Readonly
Hide instead of gray out
hideIfDisabled renders null entirely once the field is disabled(Nothing renders above: the field returned null.)
Same chrome around a custom control
InputContainer wraps the label/error frame around a control it doesn't ownCustom control
Read-only
Disabled
Styling slots
Every className the component exposes, and what it reaches- className
- the native input or textarea element
- _className
- the outer container
- labelClassName
- the field's frame holding before, control, and after
- beforeClassName
- the leading before slot
- afterClassName
- the trailing after slot
- topClassName
- the label-above row
- bottomClassName
- the helper-text row below the field
- errorClassName
- the error message text