diff --git a/apps/design-system/content/docs/components/combobox.mdx b/apps/design-system/content/docs/components/combobox.mdx index 21d55d94ae8..3ad33b0124e 100644 --- a/apps/design-system/content/docs/components/combobox.mdx +++ b/apps/design-system/content/docs/components/combobox.mdx @@ -19,18 +19,21 @@ See installation instructions for the [Popover](/docs/components/popover#install ```tsx 'use client' -import { Check, ChevronsUpDown } from 'lucide-react' +import { Check } from 'lucide-react' import * as React from 'react' - -import { Button } from '@/components/ui/button' import { + ComboboxTrigger, Command, CommandEmpty, CommandGroup, CommandInput, CommandItem, -} from '@/components/ui/command' -import { Popover, PopoverContent, PopoverTrigger } from '@/components/ui/popover' + CommandList, + Popover, + PopoverContent, + PopoverTrigger, +} from 'ui' + import { cn } from '@/lib/utils' const frameworks = [ @@ -63,17 +66,15 @@ export function ComboboxDemo() { return ( - + diff --git a/apps/design-system/registry/default/example/combobox-demo.tsx b/apps/design-system/registry/default/example/combobox-demo.tsx index 5216f8b4ada..280d9b772b5 100644 --- a/apps/design-system/registry/default/example/combobox-demo.tsx +++ b/apps/design-system/registry/default/example/combobox-demo.tsx @@ -1,9 +1,9 @@ 'use client' -import { Check, ChevronsUpDown } from 'lucide-react' +import { Check } from 'lucide-react' import * as React from 'react' import { - Button, + ComboboxTrigger, Command, CommandEmpty, CommandGroup, @@ -47,18 +47,15 @@ export default function ComboboxDemo() { return ( - + diff --git a/apps/design-system/registry/default/example/combobox-form.tsx b/apps/design-system/registry/default/example/combobox-form.tsx index a0a71ccd955..44545f313a2 100644 --- a/apps/design-system/registry/default/example/combobox-form.tsx +++ b/apps/design-system/registry/default/example/combobox-form.tsx @@ -1,11 +1,13 @@ 'use client' import { zodResolver } from '@hookform/resolvers/zod' -import { Check, ChevronsUpDown } from 'lucide-react' +import { Check } from 'lucide-react' +import { useState } from 'react' import { useForm } from 'react-hook-form' import { toast } from 'sonner' import { Button, + ComboboxTrigger, Command, CommandEmpty, CommandGroup, @@ -46,6 +48,7 @@ const FormSchema = z.object({ }) export default function ComboboxForm() { + const [open, setOpen] = useState(false) const form = useForm>({ resolver: zodResolver(FormSchema), }) @@ -69,28 +72,18 @@ export default function ComboboxForm() { render={({ field }) => ( Language - + - + @@ -105,6 +98,7 @@ export default function ComboboxForm() { key={language.value} onSelect={() => { form.setValue('language', language.value) + setOpen(false) }} > - + { const trigger = screen.getByRole('combobox') expect(trigger).toHaveClass('h-[26px]', 'p-0.5') expect(trigger.firstElementChild).toHaveClass('gap-0.5') + expect(trigger.querySelector('.lucide-chevron-down')).toHaveAttribute('aria-hidden', 'true') }) it('renders selected values with a custom label', () => { diff --git a/packages/ui-patterns/src/multi-select/multi-select.tsx b/packages/ui-patterns/src/multi-select/multi-select.tsx index a26425c0220..01de5c3354a 100644 --- a/packages/ui-patterns/src/multi-select/multi-select.tsx +++ b/packages/ui-patterns/src/multi-select/multi-select.tsx @@ -1,7 +1,7 @@ 'use client' import { cva, VariantProps } from 'class-variance-authority' -import { Check, ChevronsUpDown, X as RemoveIcon } from 'lucide-react' +import { Check, ChevronDown, X as RemoveIcon } from 'lucide-react' // @ts-ignore Required to avoid TS error: The inferred type of MultiSelectorContent cannot be named without a reference to @radix-ui import type { Popover as PopoverPrimitive } from 'radix-ui' import React, { Children, useEffect } from 'react' @@ -489,7 +489,8 @@ const MultiSelectorTrigger = React.forwardRef {showIcon && ( -