mirror of
https://github.com/supabase/supabase.git
synced 2026-10-12 21:05:06 +03:00
* multi-select v2
* update values
* multi-select 2 wip
* multi select 2
* multi select with combobox
* use includs
* finish multi select
* wrap badges
* overflow-x-scroll
* more
* remove multi select old from menu
* add inline search input mode in multi-select
* fix size type
* reset input when adding item
* update studio multiselector
* remove console.log
* flex-1
* remove old multi-select and decrease badge padding
* remove removeEventListener
* fix errors
* fix
* try only command
* restore inline
* Revert "fix"
This reverts commit 2fc1bea1c6.
* change callback depencency
* remove useCallback
* sdf
* remove Popover from multiselect
* udpate troubleshooting multiselect
* update
* form
* multiselect changelog
* try to remove useCallback
* fox
* bug found: checkbox in CommandItem no good
* clean up commented code
* clean up
* restore loading check
* cleanup type
* autofocus combobox input
* autofocus
* remove badgeLimit auto
* focus trigger button when hitting escape
* add tests for multi-select
* add disabled example
* remove console and useless function
* showResetIcon
* showResetIcon
* handleClose
* reset focus after reset
46 lines
1.3 KiB
TypeScript
46 lines
1.3 KiB
TypeScript
import { useState } from 'react'
|
|
import {
|
|
MultiSelector,
|
|
MultiSelectorContent,
|
|
MultiSelectorItem,
|
|
MultiSelectorList,
|
|
MultiSelectorTrigger,
|
|
} from 'ui-patterns/multi-select'
|
|
|
|
export default function MultiSelectDemo() {
|
|
const [selectedValues, setSelectedValues] = useState<string[]>([])
|
|
|
|
const fruits = [
|
|
{ value: 'Apple', isDisabled: false },
|
|
{ value: 'Banana', isDisabled: false },
|
|
{ value: 'Cherry', isDisabled: false },
|
|
{ value: 'Date', isDisabled: false },
|
|
{ value: 'Elderberrie', isDisabled: false },
|
|
{ value: 'Fig', isDisabled: false },
|
|
{ value: 'Grape', isDisabled: false },
|
|
{ value: 'Kiwi', isDisabled: true },
|
|
{ value: 'Mango', isDisabled: false },
|
|
{ value: 'Strawberry', isDisabled: false },
|
|
]
|
|
|
|
return (
|
|
<MultiSelector values={selectedValues} onValuesChange={setSelectedValues}>
|
|
<MultiSelectorTrigger
|
|
className="w-72"
|
|
label="Select fruits"
|
|
badgeLimit="wrap"
|
|
showIcon={false}
|
|
/>
|
|
<MultiSelectorContent>
|
|
<MultiSelectorList>
|
|
{fruits.map(({ value, isDisabled }) => (
|
|
<MultiSelectorItem key={value} value={value} disabled={isDisabled}>
|
|
{value}
|
|
</MultiSelectorItem>
|
|
))}
|
|
</MultiSelectorList>
|
|
</MultiSelectorContent>
|
|
</MultiSelector>
|
|
)
|
|
}
|