Status
The status of the component
Status
The status of the component
Figma component
A link to the Figma library where the component lives.
Repository
A link to the repo where the component lives.
Use a multi-select dropdown when the user has the option to pick more than one attribute to modify the data results.
Use in cases were choice making is easy and convenient for the user.
Don’t use multi-select for conflicting selections
Overflow content is typically reduced to fit a space or reduce repetition. Truncation is a way to indicate that overflow content is continued.
If the text is too long for one line, truncate and add an ellipsis (…). In truncated options, hovering triggers a tooltip with the full label text.
Avoid having multiple lines of text in a dropdown.
If used as a filter or have a long list of options, each category should have a way to clear all selected options at once without having to interact with each individual item. Clearing filters returns the filters to their original default starting state.
If multiple categories have been applied to the same data set then there should also be a way to dismiss all filters across all categories at once.
Avoid making to interact with each individual item to dismiss all selections.
In general, it is not advisable to position a dropdown so that it exceeds the bottom of the contained space as the dropdown should always expand downwards (with the exception of pagination).
Leave sufficient space for the dropdown to expand downwards.
Avoid positioning a dropdown where it can be truncated by the bottom of the container.
When a maximum number of selections is enforced, users should still be able to review and update their choices after reaching the limit. Restrict additional selections without preventing users from removing existing ones.
Disable only the remaining unselected options once the maximum selection limit is reached.
Avoid disabling the entire multi-select component when the maximum selection limit is reached.
Descriptive and counter labels are present within the select-all feature to provide additional context and awareness to the user as they navigate through multi-select dropdown lists.
In order to clearly highlight the function of the select-all feature we recommend stating this through "all options" along with a counter of items selected and the total available
Vague or unclear labelling within the select-all may confuse users
The select-all counter by it’s very nature is connected to the options of a list. A action made in the menu has a knock on effect to the selected state of the select-all feature.
If items are selected in the menu, this should be visualized through the select-all feature too, irrespective of whether the user interacted with the select-all feature or not.
Showing a select-all selection status that is independent of the selected state of the menu options, may confuse users and incorrectly suggest that the select-all feature is not tied to the menu options
To provide better emphasis to users who are navigating particularly lengthy menu lists, the sticky interaction provides a degree permanence to the select-all feature.
The sticky interaction should be used on large menu lists to fix the select-all feature to the top, and ensure it is readily at hand for the user.
Avoid showing large menu lists without the select-all feature's sticky behavior. Without this, a user is required to scroll to the top of this 200+ menu to select all the items.