Search Field.
An editable query, with a way to clear it.
React Aria owns the query, clear action, validation and submission events. Label names the field; Description and Error keep their slots. Keep controlled value and onChange paired; the application owns search results.
Make it yours
Preparing the example…
Composition
AnatomyReact Aria owns the query, clear action, validation and submission events. Label names the field; Description and Error keep their slots. Keep controlled value and onChange paired; the application owns search results.
SearchField.Root (value/onChange, onSubmit)
├── SearchField.Label
├── SearchField.Input
├── SearchField.Clear (primitive clear action)
├── SearchField.Description (slot=description)
└── SearchField.ErrorA place to start
UsageImport the stylesheet once at your application root. This complete example reflects the properties selected above.
Loading example…
Details that make a difference
Examples & statesSizes
Compare the three Dixy shirt sizes side by side.
Loading source…
Corner radii
Contextual rounding applies to the control or surface; large panels stay readable.
Loading source…
The finer details
API referenceGenerated from Dixy’s local TypeScript interfaces. React Aria props, refs and render callbacks are forwarded; this table covers Dixy’s added visual options.
SearchFieldRoot
| Prop | Type / description | Default |
|---|---|---|
size | "sm" | "md" | "lg"Component proportions. | md |
radius | "none" | "sm" | "md" | "lg" | "full"Inherits the nearest Theme. | — |
Built from the same foundations
Styling tokensChange Theme settings above to compare appearance, accent, neutral, radius, spacing density, motion and direction. Override component aliases on a Theme root so custom properties follow portaled content too. The wrapper merges className, style, refs and render composition with its owning primitive.
| Token | Purpose |
|---|---|
--dixy-color-background-surface | The component-specific starting point. |
--dixy-font-label-md | Control label font and line height; body roles remain readable in text inputs. |
--dixy-color-background-selected | Selected surfaces use semantic color across appearances. |
--dixy-color-border-focus | Focus indication remains visible independently of shadows. |
--dixy-spacing-inset-sm | Density-aware component padding. |
--dixy-motion-transition-feedback | Short state feedback, reduced by the inherited motion setting. |
Consider everyone
AccessibilityProvide visible labels and meaningful names. Preserve native semantics, selected/disabled state and visible focus. Target WCAG 2.2 AA; full contrast, assistive-technology and platform verification remains pending.
Target: WCAG 2.2 AA. Automated tests cover selected behavior; manual screen-reader, contrast, and zoom validation remain part of the release checklist.
Build it. Then understand it.
React Aria owns the query, clear action, validation and submission events. Label names the field; Description and Error keep their slots. Keep controlled value and onChange paired; the application owns search results.
--dixy-color-background-surface