SelectPanel
- Alpha
- Not reviewed for accessibility
A SelectPanel
provides an anchor that will open an overlay with a list of selectable items, and a text input to filter the selectable items
Pressing Enter
or Space
on the SelectPanel
anchor will
open the SelectPanel
and place focus on the filter input. Pressing Escape
or interacting with the cancel or close buttons will close the SelectPanel
and restore focus to the anchor.
A user may use Tab
and Shift+Tab
to navigate between the filter input, list of
items, action buttons, and the close button.
When focus is on the list of items, pressing ArrowDown
and ArrowUp
will allow navigation between items. Support for Home
and End
is also provided to quickly navigate to the first and last items in the list, respectively. Pressing Space
will select an item.
The Enter
key may be used when focus is within the SelectPanel
as an
alternative to activating the save button.
Name | Type | Default | Description |
---|---|---|---|
title | string | React.ReactElement | "Select an item" or "Select items" | A descriptive title for the panel |
subtitle | string | React.ReactElement | When provided, a subtitle is displayed below the title | |
onOpenChange Required | ( open: boolean, gesture: | 'anchor-click' | 'anchor-key-press' | 'click-outside' | 'escape' | 'selection' ) => void | ||
placeholder | string | Text used in anchor when there are no selected items | |
placeholderText | string | Filter items | Text used as placeholder for search input |
inputLabel | string | Same as placeholderText | The aria-label for the filter input |
selected | ItemInput | ItemInput[] | undefined | Specify the selected item(s) | |
onSelectedChange | (selected: ItemInput | ItemInput[]) => void | Provide a callback called when the selected item(s) change | |
overlayProps | Partial<OverlayProps> | See Overlay props. | |
textInputProps | Partial<Omit<TextInputProps, 'onChange'>> | See TextInput props. | |
footer | string | React.ReactElement | null | Footer rendered at the end of the panel |