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 atom
Tag gy-select
PropTypeDefaultDescription
size 'sm' | 'md' | 'lg''md'Control density scale shared with the rest of the form family.
multiple booleanfalseAllow multiple options to be selected at once.
searchable booleanfalseRender an inline filter input above the select.
disabled booleanfalseDisable 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 defaultHandler 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';
Owner
gyrum-ui
Build state
registered-and-built