"use client";
import { cn as e } from "../../lib/utils.js";
import "react";
import { jsx as t, jsxs as n } from "react/jsx-runtime";
import { CheckIcon as r, ChevronDownIcon as i, ChevronUpIcon as a } from "lucide-react";
import * as o from "@radix-ui/react-select";
//#region src/components/ui/select.tsx
function s({ ...e }) {
	return /* @__PURE__ */ t(o.Root, {
		"data-slot": "select",
		...e
	});
}
function c({ ...e }) {
	return /* @__PURE__ */ t(o.Group, {
		"data-slot": "select-group",
		...e
	});
}
function l({ ...e }) {
	return /* @__PURE__ */ t(o.Value, {
		"data-slot": "select-value",
		...e
	});
}
function u({ className: r, size: a = "default", children: s, ...c }) {
	return /* @__PURE__ */ n(o.Trigger, {
		"data-slot": "select-trigger",
		"data-size": a,
		className: e("border-input data-[placeholder]:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 dark:hover:bg-input/50 flex w-fit cursor-pointer items-center justify-between gap-2 rounded-md border bg-background px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", r),
		...c,
		children: [s, /* @__PURE__ */ t(o.Icon, {
			asChild: !0,
			children: /* @__PURE__ */ t(i, { className: "size-4 opacity-50" })
		})]
	});
}
function d({ className: r, children: i, position: a = "popper", align: s = "center", ...c }) {
	return /* @__PURE__ */ t(o.Portal, { children: /* @__PURE__ */ n(o.Content, {
		"data-slot": "select-content",
		className: e("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border shadow-md", a === "popper" && "data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1", r),
		position: a,
		align: s,
		...c,
		children: [
			/* @__PURE__ */ t(h, {}),
			/* @__PURE__ */ t(o.Viewport, {
				className: e("p-1", a === "popper" && "h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1"),
				children: i
			}),
			/* @__PURE__ */ t(g, {})
		]
	}) });
}
function f({ className: n, ...r }) {
	return /* @__PURE__ */ t(o.Label, {
		"data-slot": "select-label",
		className: e("text-muted-foreground px-2 py-1.5 text-xs", n),
		...r
	});
}
function p({ className: i, children: a, ...s }) {
	return /* @__PURE__ */ n(o.Item, {
		"data-slot": "select-item",
		className: e("focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-pointer items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2", i),
		...s,
		children: [/* @__PURE__ */ t("span", {
			className: "absolute right-2 flex size-3.5 items-center justify-center",
			children: /* @__PURE__ */ t(o.ItemIndicator, { children: /* @__PURE__ */ t(r, { className: "size-4" }) })
		}), /* @__PURE__ */ t(o.ItemText, { children: a })]
	});
}
function m({ className: n, ...r }) {
	return /* @__PURE__ */ t(o.Separator, {
		"data-slot": "select-separator",
		className: e("bg-border pointer-events-none -mx-1 my-1 h-px", n),
		...r
	});
}
function h({ className: n, ...r }) {
	return /* @__PURE__ */ t(o.ScrollUpButton, {
		"data-slot": "select-scroll-up-button",
		className: e("flex cursor-default items-center justify-center py-1", n),
		...r,
		children: /* @__PURE__ */ t(a, { className: "size-4" })
	});
}
function g({ className: n, ...r }) {
	return /* @__PURE__ */ t(o.ScrollDownButton, {
		"data-slot": "select-scroll-down-button",
		className: e("flex cursor-default items-center justify-center py-1", n),
		...r,
		children: /* @__PURE__ */ t(i, { className: "size-4" })
	});
}
//#endregion
export { s as Select, d as SelectContent, c as SelectGroup, p as SelectItem, f as SelectLabel, g as SelectScrollDownButton, h as SelectScrollUpButton, m as SelectSeparator, u as SelectTrigger, l as SelectValue };
