atom
gy-select
Token-aware wrapper around the native select primitive that owns the visual contract while letting the browser keep the listbox and keyboard contract.
Live
What you ship.
Markup
<gy-form-field label="Primary region">
<gy-select>
<option value="us-east-1">us-east-1</option>
<option value="eu-west-2" selected>eu-west-2</option>
</gy-select>
</gy-form-field>Prop space
Tier
Tag
| Prop | Type | Default | Description |
|---|---|---|---|
size | 'sm' | 'md' | 'lg' | 'md' | Control density scale shared with the rest of the form family. |
multiple | boolean | false | Allow multiple options to be selected at once. |
searchable | boolean | false | Render an inline filter input above the select. |
disabled | boolean | false | Disable interaction; suppresses the change callback. |
name | string | '' | Name forwarded to the inner select (flows into a parent <form>). |
onchange | (ev: CustomEvent<ChangeDetail>) => void; /** The <option> declarations rendered inside the inner native select. */ children?: Snippet; | no default | Handler for the gy-change CustomEvent. `detail.value` is a string for single-select; a string[] for `multiple`. Suppressed while `disabled`. |
Where this lives
import '@gyrum-labs/components/select/select.js';