"use client"; import { Select as SelectPrimitive } from "@base-ui/react/select"; import { CheckIcon, ChevronDownIcon, ChevronUpIcon } from "lucide-react"; import type * as React from "react"; import { cn } from "@/lib/utils"; type SelectProps = Omit, "onValueChange"> & { onValueChange?: (value: string) => void; }; function Select({ onValueChange, ...props }: SelectProps) { return ( { if (value == null) return; onValueChange?.(value); }} {...props} /> ); } function SelectValue({ className, ...props }: SelectPrimitive.Value.Props) { return ( ); } function SelectTrigger({ className, size = "default", children, ...props }: SelectPrimitive.Trigger.Props & { size?: "sm" | "default"; }) { return ( {children} } /> ); } function SelectContent({ className, children, side = "bottom", sideOffset = 4, align = "center", alignOffset = 0, alignItemWithTrigger = true, position: _position, ...props }: SelectPrimitive.Popup.Props & Pick< SelectPrimitive.Positioner.Props, "align" | "alignOffset" | "side" | "sideOffset" | "alignItemWithTrigger" > & { /** @deprecated Radix compat — ignored */ position?: "popper" | "item-aligned"; }) { return ( {children} ); } function SelectItem({ className, children, ...props }: SelectPrimitive.Item.Props) { return ( {children} ); } function SelectScrollUpButton({ className, ...props }: React.ComponentProps) { return ( ); } function SelectScrollDownButton({ className, ...props }: React.ComponentProps) { return ( ); } export { Select, SelectContent, SelectItem, SelectScrollDownButton, SelectScrollUpButton, SelectTrigger, SelectValue, };