import * as React from 'react';
import { Select as SelectPrimitive } from '@base-ui/react/select';
import { ChevronDownIcon, CheckIcon, ChevronUpIcon } from 'lucide-react';
import { classNames } from '../../lib/utils';
import { getPortalContainer } from '../../lib/portal';
const Select = SelectPrimitive.Root;
const SelectGroup = React.forwardRef<
HTMLDivElement,
SelectPrimitive.Group.Props
>(function SelectGroup({ className, ...props }, ref) {
return (
);
});
const SelectValue = React.forwardRef<
HTMLSpanElement,
SelectPrimitive.Value.Props
>(function SelectValue({ className, ...props }, ref) {
return (
);
});
const SelectTrigger = React.forwardRef<
HTMLButtonElement,
SelectPrimitive.Trigger.Props & {
size?: 'sm' | 'default';
}
>(function SelectTrigger(
{ className, size = 'default', children, ...props },
ref
) {
return (
{children}
}
/>
);
});
const SelectContent = React.forwardRef<
HTMLDivElement,
SelectPrimitive.Popup.Props &
Pick<
SelectPrimitive.Positioner.Props,
'align' | 'alignOffset' | 'side' | 'sideOffset' | 'alignItemWithTrigger'
>
>(function SelectContent(
{
className,
children,
side = 'bottom',
sideOffset = 4,
align = 'center',
alignOffset = 0,
alignItemWithTrigger = true,
...props
},
ref
) {
return (
{children}
);
});
const SelectLabel = React.forwardRef<
HTMLDivElement,
SelectPrimitive.GroupLabel.Props
>(function SelectLabel({ className, ...props }, ref) {
return (
);
});
const SelectItem = React.forwardRef(
function SelectItem({ className, children, ...props }, ref) {
return (
{children}
}
>
);
}
);
const SelectSeparator = React.forwardRef<
HTMLDivElement,
SelectPrimitive.Separator.Props
>(function SelectSeparator({ className, ...props }, ref) {
return (
);
});
const SelectScrollUpButton = React.forwardRef<
HTMLDivElement,
React.ComponentProps
>(function SelectScrollUpButton({ className, ...props }, ref) {
return (
);
});
const SelectScrollDownButton = React.forwardRef<
HTMLDivElement,
React.ComponentProps
>(function SelectScrollDownButton({ className, ...props }, ref) {
return (
);
});
export {
Select,
SelectContent,
SelectGroup,
SelectItem,
SelectLabel,
SelectScrollDownButton,
SelectScrollUpButton,
SelectSeparator,
SelectTrigger,
SelectValue,
};