import { ReactNode } from 'react' import cx from 'classnames' import { Details, useDetails, Text, Dropdown, Box } from '@primer/components' import { ChevronDownIcon } from '@primer/octicons-react' export type PickerOptionsTypeT = { text: string item: ReactNode selected?: boolean } export type PickerPropsT = { variant?: 'inline' defaultText: string options: Array } type PickerWrapperPropsT = { variant?: 'inline' children: ReactNode } function PickerSummaryWrapper({ variant, children }: PickerWrapperPropsT) { if (variant === 'inline') { return (
{children}
) } return ( <> {children} ) } function PickerOptionsWrapper({ variant, children }: PickerWrapperPropsT) { if (variant === 'inline') { return (
    {children}
) } return ( {children} ) } export function Picker({ variant, defaultText, options, ...restProps }: PickerPropsT) { const { getDetailsProps, setOpen } = useDetails({ closeOnOutsideClick: true }) const selectedOption = options.find((option) => option.selected) return (
{selectedOption?.text || defaultText} {options.map((option) => ( setOpen(false)} key={option.text}> {option.item} ))}
) }