'use client'; import { ChevronsUpDown } from 'lucide-react'; import { useEffect, useState } from 'react'; import type { Key } from 'react-aria-components'; import { useMediaQuery } from 'usehooks-ts'; import { Drawer as Vaul } from 'vaul'; import { PACKAGES } from '~/util/constants'; import { Button } from './Button'; import { ListBox, ListBoxItem } from './ListBox'; import { Popover } from './Popover'; import { Select, SelectValue } from './Select'; export function PackageSelect({ packageName }: { readonly packageName: string }) { const [selectedPackage, setSelectedPackage] = useState(packageName); const [open, setOpen] = useState(false); const isMedium = useMediaQuery('(min-width: 768px)'); useEffect(() => { if (isMedium) { setOpen(false); } }, [isMedium, setOpen]); return ( <> {selectedPackage}
{ const [val] = selected; setSelectedPackage(val as Key); }} > {(item) => ( {item.name} )} ); }