@expofp/floorplan
Version:
Interactive floor plan library for expos and events
1,368 lines (1,367 loc) • 46.8 kB
JavaScript
(function() {
try {
var e = typeof window < "u" ? window : typeof global < "u" ? global : typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : {};
e.SENTRY_RELEASE = { id: "3.20.0" };
var t = new e.Error().stack;
t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "dd596517-c899-4440-bc1a-dac5091635be", e._sentryDebugIdIdentifier = "sentry-dbid-dd596517-c899-4440-bc1a-dac5091635be");
} catch {}
})();
import { r as e } from "./rolldown-runtime-7-Wh3Cc7.js";
import { t } from "./react-lDheuaid.js";
import { t as n } from "./jsx-runtime-BRhWrtmW.js";
import { t as r } from "./react-dom-D8-OMRDw.js";
import { O as i, T as a, g as o, l as s, s as c, u as l, y as u } from "./flex-CjUEJCJL.js";
import { i as d, n as f, o as p, r as m, s as h } from "./dist-D2vwS61f.js";
import { _ as g, a as _, b as v, c as y, d as b, f as x, g as S, h as C, i as w, l as T, m as E, n as D, o as O, p as k, r as A, s as j, t as ee, u as te, v as ne } from "./theme-B72VWXzW.js";
import { t as M } from "./dist-CaujNaF9.js";
import { t as N } from "./classnames-DuZoMrrx.js";
//#region ../../node_modules/.pnpm/@radix-ui+number@1.1.1/node_modules/@radix-ui/number/dist/index.mjs
var P = /* @__PURE__ */ e(t(), 1);
function re(e, [t, n]) {
return Math.min(n, Math.max(t, e));
}
//#endregion
//#region ../../node_modules/.pnpm/@radix-ui+react-scroll-area@1.2.10_@types+react-dom@19.2.3_@types+react@19.2.17__@types_ccf3bf291c3d61fabfd75191215dd41a/node_modules/@radix-ui/react-scroll-area/dist/index.mjs
var F = n();
function ie(e, t) {
return P.useReducer((e, n) => {
let r = t[e][n];
return r == null ? e : r;
}, e);
}
var I = "ScrollArea", [L, R] = p(I), [z, B] = L(I), ae = P.forwardRef((e, t) => {
let { __scopeScrollArea: n, type: r = "hover", dir: a, scrollHideDelay: o = 600, ...s } = e, [c, l] = P.useState(null), [u, d] = P.useState(null), [f, p] = P.useState(null), [m, g] = P.useState(null), [_, v] = P.useState(null), [y, b] = P.useState(0), [x, S] = P.useState(0), [w, T] = P.useState(!1), [E, D] = P.useState(!1), O = i(t, (e) => l(e)), k = C(a);
return /* @__PURE__ */ (0, F.jsx)(z, {
scope: n,
type: r,
dir: k,
scrollHideDelay: o,
scrollArea: c,
viewport: u,
onViewportChange: d,
content: f,
onContentChange: p,
scrollbarX: m,
onScrollbarXChange: g,
scrollbarXEnabled: w,
onScrollbarXEnabledChange: T,
scrollbarY: _,
onScrollbarYChange: v,
scrollbarYEnabled: E,
onScrollbarYEnabledChange: D,
onCornerWidthChange: b,
onCornerHeightChange: S,
children: /* @__PURE__ */ (0, F.jsx)(h.div, {
dir: k,
...s,
ref: O,
style: {
position: "relative",
"--radix-scroll-area-corner-width": y + "px",
"--radix-scroll-area-corner-height": x + "px",
...e.style
}
})
});
});
ae.displayName = I;
var oe = "ScrollAreaViewport", se = P.forwardRef((e, t) => {
let { __scopeScrollArea: n, children: r, nonce: a, ...o } = e, s = B(oe, n), c = i(t, P.useRef(null), s.onViewportChange);
return /* @__PURE__ */ (0, F.jsxs)(F.Fragment, { children: [/* @__PURE__ */ (0, F.jsx)("style", {
dangerouslySetInnerHTML: { __html: "[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}" },
nonce: a
}), /* @__PURE__ */ (0, F.jsx)(h.div, {
"data-radix-scroll-area-viewport": "",
...o,
ref: c,
style: {
overflowX: s.scrollbarXEnabled ? "scroll" : "hidden",
overflowY: s.scrollbarYEnabled ? "scroll" : "hidden",
...e.style
},
children: /* @__PURE__ */ (0, F.jsx)("div", {
ref: s.onContentChange,
style: {
minWidth: "100%",
display: "table"
},
children: r
})
})] });
});
se.displayName = oe;
var V = "ScrollAreaScrollbar", ce = P.forwardRef((e, t) => {
let { forceMount: n, ...r } = e, i = B(V, e.__scopeScrollArea), { onScrollbarXEnabledChange: a, onScrollbarYEnabledChange: o } = i, s = e.orientation === "horizontal";
return P.useEffect(() => (s ? a(!0) : o(!0), () => {
s ? a(!1) : o(!1);
}), [
s,
a,
o
]), i.type === "hover" ? /* @__PURE__ */ (0, F.jsx)(le, {
...r,
ref: t,
forceMount: n
}) : i.type === "scroll" ? /* @__PURE__ */ (0, F.jsx)(ue, {
...r,
ref: t,
forceMount: n
}) : i.type === "auto" ? /* @__PURE__ */ (0, F.jsx)(de, {
...r,
ref: t,
forceMount: n
}) : i.type === "always" ? /* @__PURE__ */ (0, F.jsx)(fe, {
...r,
ref: t
}) : null;
});
ce.displayName = V;
var le = P.forwardRef((e, t) => {
let { forceMount: n, ...r } = e, i = B(V, e.__scopeScrollArea), [a, o] = P.useState(!1);
return P.useEffect(() => {
let e = i.scrollArea, t = 0;
if (e) {
let n = () => {
window.clearTimeout(t), o(!0);
}, r = () => {
t = window.setTimeout(() => o(!1), i.scrollHideDelay);
};
return e.addEventListener("pointerenter", n), e.addEventListener("pointerleave", r), () => {
window.clearTimeout(t), e.removeEventListener("pointerenter", n), e.removeEventListener("pointerleave", r);
};
}
}, [i.scrollArea, i.scrollHideDelay]), /* @__PURE__ */ (0, F.jsx)(g, {
present: n || a,
children: /* @__PURE__ */ (0, F.jsx)(de, {
"data-state": a ? "visible" : "hidden",
...r,
ref: t
})
});
}), ue = P.forwardRef((e, t) => {
let { forceMount: n, ...r } = e, i = B(V, e.__scopeScrollArea), a = e.orientation === "horizontal", o = ke(() => c("SCROLL_END"), 100), [s, c] = ie("hidden", {
hidden: { SCROLL: "scrolling" },
scrolling: {
SCROLL_END: "idle",
POINTER_ENTER: "interacting"
},
interacting: {
SCROLL: "interacting",
POINTER_LEAVE: "idle"
},
idle: {
HIDE: "hidden",
SCROLL: "scrolling",
POINTER_ENTER: "interacting"
}
});
return P.useEffect(() => {
if (s === "idle") {
let e = window.setTimeout(() => c("HIDE"), i.scrollHideDelay);
return () => window.clearTimeout(e);
}
}, [
s,
i.scrollHideDelay,
c
]), P.useEffect(() => {
let e = i.viewport, t = a ? "scrollLeft" : "scrollTop";
if (e) {
let n = e[t], r = () => {
let r = e[t];
n !== r && (c("SCROLL"), o()), n = r;
};
return e.addEventListener("scroll", r), () => e.removeEventListener("scroll", r);
}
}, [
i.viewport,
a,
c,
o
]), /* @__PURE__ */ (0, F.jsx)(g, {
present: n || s !== "hidden",
children: /* @__PURE__ */ (0, F.jsx)(fe, {
"data-state": s === "hidden" ? "hidden" : "visible",
...r,
ref: t,
onPointerEnter: d(e.onPointerEnter, () => c("POINTER_ENTER")),
onPointerLeave: d(e.onPointerLeave, () => c("POINTER_LEAVE"))
})
});
}), de = P.forwardRef((e, t) => {
let n = B(V, e.__scopeScrollArea), { forceMount: r, ...i } = e, [a, o] = P.useState(!1), s = e.orientation === "horizontal", c = ke(() => {
if (n.viewport) {
let e = n.viewport.offsetWidth < n.viewport.scrollWidth, t = n.viewport.offsetHeight < n.viewport.scrollHeight;
o(s ? e : t);
}
}, 10);
return G(n.viewport, c), G(n.content, c), /* @__PURE__ */ (0, F.jsx)(g, {
present: r || a,
children: /* @__PURE__ */ (0, F.jsx)(fe, {
"data-state": a ? "visible" : "hidden",
...i,
ref: t
})
});
}), fe = P.forwardRef((e, t) => {
let { orientation: n = "vertical", ...r } = e, i = B(V, e.__scopeScrollArea), a = P.useRef(null), o = P.useRef(0), [s, c] = P.useState({
content: 0,
viewport: 0,
scrollbar: {
size: 0,
paddingStart: 0,
paddingEnd: 0
}
}), l = Ce(s.viewport, s.content), u = {
...r,
sizes: s,
onSizesChange: c,
hasThumb: l > 0 && l < 1,
onThumbChange: (e) => a.current = e,
onThumbPointerUp: () => o.current = 0,
onThumbPointerDown: (e) => o.current = e
};
function d(e, t) {
return we(e, o.current, s, t);
}
return n === "horizontal" ? /* @__PURE__ */ (0, F.jsx)(pe, {
...u,
ref: t,
onThumbPositionChange: () => {
if (i.viewport && a.current) {
let e = i.viewport.scrollLeft, t = Te(e, s, i.dir);
a.current.style.transform = `translate3d(${t}px, 0, 0)`;
}
},
onWheelScroll: (e) => {
i.viewport && (i.viewport.scrollLeft = e);
},
onDragScroll: (e) => {
i.viewport && (i.viewport.scrollLeft = d(e, i.dir));
}
}) : n === "vertical" ? /* @__PURE__ */ (0, F.jsx)(me, {
...u,
ref: t,
onThumbPositionChange: () => {
if (i.viewport && a.current) {
let e = i.viewport.scrollTop, t = Te(e, s);
a.current.style.transform = `translate3d(0, ${t}px, 0)`;
}
},
onWheelScroll: (e) => {
i.viewport && (i.viewport.scrollTop = e);
},
onDragScroll: (e) => {
i.viewport && (i.viewport.scrollTop = d(e));
}
}) : null;
}), pe = P.forwardRef((e, t) => {
let { sizes: n, onSizesChange: r, ...a } = e, o = B(V, e.__scopeScrollArea), [s, c] = P.useState(), l = P.useRef(null), u = i(t, l, o.onScrollbarXChange);
return P.useEffect(() => {
l.current && c(getComputedStyle(l.current));
}, [l]), /* @__PURE__ */ (0, F.jsx)(_e, {
"data-orientation": "horizontal",
...a,
ref: u,
sizes: n,
style: {
bottom: 0,
left: o.dir === "rtl" ? "var(--radix-scroll-area-corner-width)" : 0,
right: o.dir === "ltr" ? "var(--radix-scroll-area-corner-width)" : 0,
"--radix-scroll-area-thumb-width": W(n) + "px",
...e.style
},
onThumbPointerDown: (t) => e.onThumbPointerDown(t.x),
onDragScroll: (t) => e.onDragScroll(t.x),
onWheelScroll: (t, n) => {
if (o.viewport) {
let r = o.viewport.scrollLeft + t.deltaX;
e.onWheelScroll(r), De(r, n) && t.preventDefault();
}
},
onResize: () => {
l.current && o.viewport && s && r({
content: o.viewport.scrollWidth,
viewport: o.viewport.offsetWidth,
scrollbar: {
size: l.current.clientWidth,
paddingStart: U(s.paddingLeft),
paddingEnd: U(s.paddingRight)
}
});
}
});
}), me = P.forwardRef((e, t) => {
let { sizes: n, onSizesChange: r, ...a } = e, o = B(V, e.__scopeScrollArea), [s, c] = P.useState(), l = P.useRef(null), u = i(t, l, o.onScrollbarYChange);
return P.useEffect(() => {
l.current && c(getComputedStyle(l.current));
}, [l]), /* @__PURE__ */ (0, F.jsx)(_e, {
"data-orientation": "vertical",
...a,
ref: u,
sizes: n,
style: {
top: 0,
right: o.dir === "ltr" ? 0 : void 0,
left: o.dir === "rtl" ? 0 : void 0,
bottom: "var(--radix-scroll-area-corner-height)",
"--radix-scroll-area-thumb-height": W(n) + "px",
...e.style
},
onThumbPointerDown: (t) => e.onThumbPointerDown(t.y),
onDragScroll: (t) => e.onDragScroll(t.y),
onWheelScroll: (t, n) => {
if (o.viewport) {
let r = o.viewport.scrollTop + t.deltaY;
e.onWheelScroll(r), De(r, n) && t.preventDefault();
}
},
onResize: () => {
l.current && o.viewport && s && r({
content: o.viewport.scrollHeight,
viewport: o.viewport.offsetHeight,
scrollbar: {
size: l.current.clientHeight,
paddingStart: U(s.paddingTop),
paddingEnd: U(s.paddingBottom)
}
});
}
});
}), [he, ge] = L(V), _e = P.forwardRef((e, t) => {
let { __scopeScrollArea: n, sizes: r, hasThumb: a, onThumbChange: o, onThumbPointerUp: s, onThumbPointerDown: c, onThumbPositionChange: l, onDragScroll: u, onWheelScroll: f, onResize: p, ...m } = e, g = B(V, n), [_, v] = P.useState(null), y = i(t, (e) => v(e)), b = P.useRef(null), x = P.useRef(""), S = g.viewport, C = r.content - r.viewport, w = E(f), T = E(l), D = ke(p, 10);
function O(e) {
if (b.current) {
let t = e.clientX - b.current.left, n = e.clientY - b.current.top;
u({
x: t,
y: n
});
}
}
return P.useEffect(() => {
let e = (e) => {
let t = e.target;
_ != null && _.contains(t) && w(e, C);
};
return document.addEventListener("wheel", e, { passive: !1 }), () => document.removeEventListener("wheel", e, { passive: !1 });
}, [
S,
_,
C,
w
]), P.useEffect(T, [r, T]), G(_, D), G(g.content, D), /* @__PURE__ */ (0, F.jsx)(he, {
scope: n,
scrollbar: _,
hasThumb: a,
onThumbChange: E(o),
onThumbPointerUp: E(s),
onThumbPositionChange: T,
onThumbPointerDown: E(c),
children: /* @__PURE__ */ (0, F.jsx)(h.div, {
...m,
ref: y,
style: {
position: "absolute",
...m.style
},
onPointerDown: d(e.onPointerDown, (e) => {
e.button === 0 && (e.target.setPointerCapture(e.pointerId), b.current = _.getBoundingClientRect(), x.current = document.body.style.webkitUserSelect, document.body.style.webkitUserSelect = "none", g.viewport && (g.viewport.style.scrollBehavior = "auto"), O(e));
}),
onPointerMove: d(e.onPointerMove, O),
onPointerUp: d(e.onPointerUp, (e) => {
let t = e.target;
t.hasPointerCapture(e.pointerId) && t.releasePointerCapture(e.pointerId), document.body.style.webkitUserSelect = x.current, g.viewport && (g.viewport.style.scrollBehavior = ""), b.current = null;
})
})
});
}), H = "ScrollAreaThumb", ve = P.forwardRef((e, t) => {
let { forceMount: n, ...r } = e, i = ge(H, e.__scopeScrollArea);
return /* @__PURE__ */ (0, F.jsx)(g, {
present: n || i.hasThumb,
children: /* @__PURE__ */ (0, F.jsx)(ye, {
ref: t,
...r
})
});
}), ye = P.forwardRef((e, t) => {
let { __scopeScrollArea: n, style: r, ...a } = e, o = B(H, n), s = ge(H, n), { onThumbPositionChange: c } = s, l = i(t, (e) => s.onThumbChange(e)), u = P.useRef(void 0), f = ke(() => {
u.current && (u.current(), u.current = void 0);
}, 100);
return P.useEffect(() => {
let e = o.viewport;
if (e) {
let t = () => {
if (f(), !u.current) {
let t = Oe(e, c);
u.current = t, c();
}
};
return c(), e.addEventListener("scroll", t), () => e.removeEventListener("scroll", t);
}
}, [
o.viewport,
f,
c
]), /* @__PURE__ */ (0, F.jsx)(h.div, {
"data-state": s.hasThumb ? "visible" : "hidden",
...a,
ref: l,
style: {
width: "var(--radix-scroll-area-thumb-width)",
height: "var(--radix-scroll-area-thumb-height)",
...r
},
onPointerDownCapture: d(e.onPointerDownCapture, (e) => {
let t = e.target.getBoundingClientRect(), n = e.clientX - t.left, r = e.clientY - t.top;
s.onThumbPointerDown({
x: n,
y: r
});
}),
onPointerUp: d(e.onPointerUp, s.onThumbPointerUp)
});
});
ve.displayName = H;
var be = "ScrollAreaCorner", xe = P.forwardRef((e, t) => {
let n = B(be, e.__scopeScrollArea), r = !!(n.scrollbarX && n.scrollbarY);
return n.type !== "scroll" && r ? /* @__PURE__ */ (0, F.jsx)(Se, {
...e,
ref: t
}) : null;
});
xe.displayName = be;
var Se = P.forwardRef((e, t) => {
let { __scopeScrollArea: n, ...r } = e, i = B(be, n), [a, o] = P.useState(0), [s, c] = P.useState(0), l = !!(a && s);
return G(i.scrollbarX, () => {
var e;
let t = ((e = i.scrollbarX) == null ? void 0 : e.offsetHeight) || 0;
i.onCornerHeightChange(t), c(t);
}), G(i.scrollbarY, () => {
var e;
let t = ((e = i.scrollbarY) == null ? void 0 : e.offsetWidth) || 0;
i.onCornerWidthChange(t), o(t);
}), l ? /* @__PURE__ */ (0, F.jsx)(h.div, {
...r,
ref: t,
style: {
width: a,
height: s,
position: "absolute",
right: i.dir === "ltr" ? 0 : void 0,
left: i.dir === "rtl" ? 0 : void 0,
bottom: 0,
...e.style
}
}) : null;
});
function U(e) {
return e ? parseInt(e, 10) : 0;
}
function Ce(e, t) {
let n = e / t;
return isNaN(n) ? 0 : n;
}
function W(e) {
let t = Ce(e.viewport, e.content), n = e.scrollbar.paddingStart + e.scrollbar.paddingEnd, r = (e.scrollbar.size - n) * t;
return Math.max(r, 18);
}
function we(e, t, n, r = "ltr") {
let i = W(n), a = i / 2, o = t || a, s = i - o, c = n.scrollbar.paddingStart + o, l = n.scrollbar.size - n.scrollbar.paddingEnd - s, u = n.content - n.viewport, d = r === "ltr" ? [0, u] : [u * -1, 0];
return Ee([c, l], d)(e);
}
function Te(e, t, n = "ltr") {
let r = W(t), i = t.scrollbar.paddingStart + t.scrollbar.paddingEnd, a = t.scrollbar.size - i, o = t.content - t.viewport, s = a - r, c = re(e, n === "ltr" ? [0, o] : [o * -1, 0]);
return Ee([0, o], [0, s])(c);
}
function Ee(e, t) {
return (n) => {
if (e[0] === e[1] || t[0] === t[1]) return t[0];
let r = (t[1] - t[0]) / (e[1] - e[0]);
return t[0] + r * (n - e[0]);
};
}
function De(e, t) {
return e > 0 && e < t;
}
var Oe = (e, t = () => {}) => {
let n = {
left: e.scrollLeft,
top: e.scrollTop
}, r = 0;
return (function i() {
let a = {
left: e.scrollLeft,
top: e.scrollTop
}, o = n.left !== a.left, s = n.top !== a.top;
(o || s) && t(), n = a, r = window.requestAnimationFrame(i);
})(), () => window.cancelAnimationFrame(r);
};
function ke(e, t) {
let n = E(e), r = P.useRef(0);
return P.useEffect(() => () => window.clearTimeout(r.current), []), P.useCallback(() => {
window.clearTimeout(r.current), r.current = window.setTimeout(n, t);
}, [n, t]);
}
function G(e, t) {
let n = E(t);
m(() => {
let t = 0;
if (e) {
let r = new ResizeObserver(() => {
cancelAnimationFrame(t), t = window.requestAnimationFrame(n);
});
return r.observe(e), () => {
window.cancelAnimationFrame(t), r.unobserve(e);
};
}
}, [e, n]);
}
var Ae = ae, je = se, Me = ce, Ne = ve, Pe = /* @__PURE__ */ e(r(), 1), Fe = [
" ",
"Enter",
"ArrowUp",
"ArrowDown"
], Ie = [" ", "Enter"], K = "Select", [Le, Re, ze] = ne(K), [q, Be] = p(K, [ze, j]), Ve = j(), [He, J] = q(K), [Ue, We] = q(K), Ge = (e) => {
let { __scopeSelect: t, children: n, open: r, defaultOpen: i, onOpenChange: a, value: o, defaultValue: s, onValueChange: c, dir: l, name: u, autoComplete: d, disabled: p, required: m, form: h } = e, g = Ve(t), [_, v] = P.useState(null), [y, b] = P.useState(null), [x, w] = P.useState(!1), T = C(l), [E, D] = f({
prop: r,
defaultProp: i != null && i,
onChange: a,
caller: K
}), [k, A] = f({
prop: o,
defaultProp: s,
onChange: c,
caller: K
}), j = P.useRef(null), ee = !_ || h || !!_.closest("form"), [te, ne] = P.useState(/* @__PURE__ */ new Set()), M = Array.from(te).map((e) => e.props.value).join(";");
return /* @__PURE__ */ (0, F.jsx)(O, {
...g,
children: /* @__PURE__ */ (0, F.jsxs)(He, {
required: m,
scope: t,
trigger: _,
onTriggerChange: v,
valueNode: y,
onValueNodeChange: b,
valueNodeHasChildren: x,
onValueNodeHasChildrenChange: w,
contentId: S(),
value: k,
onValueChange: A,
open: E,
onOpenChange: D,
dir: T,
triggerPointerDownPosRef: j,
disabled: p,
children: [/* @__PURE__ */ (0, F.jsx)(Le.Provider, {
scope: t,
children: /* @__PURE__ */ (0, F.jsx)(Ue, {
scope: e.__scopeSelect,
onNativeOptionAdd: P.useCallback((e) => {
ne((t) => new Set(t).add(e));
}, []),
onNativeOptionRemove: P.useCallback((e) => {
ne((t) => {
let n = new Set(t);
return n.delete(e), n;
});
}, []),
children: n
})
}), ee ? /* @__PURE__ */ (0, F.jsxs)(It, {
"aria-hidden": !0,
required: m,
tabIndex: -1,
name: u,
autoComplete: d,
value: k,
onChange: (e) => A(e.target.value),
disabled: p,
form: h,
children: [k === void 0 ? /* @__PURE__ */ (0, F.jsx)("option", { value: "" }) : null, Array.from(te)]
}, M) : null]
})
});
};
Ge.displayName = K;
var Ke = "SelectTrigger", qe = P.forwardRef((e, t) => {
let { __scopeSelect: n, disabled: r = !1, ...a } = e, o = Ve(n), s = J(Ke, n), c = s.disabled || r, l = i(t, s.onTriggerChange), u = Re(n), f = P.useRef("touch"), [p, m, g] = Rt((e) => {
let t = u().filter((e) => !e.disabled), n = zt(t, e, t.find((e) => e.value === s.value));
n !== void 0 && s.onValueChange(n.value);
}), _ = (e) => {
c || (s.onOpenChange(!0), g()), e && (s.triggerPointerDownPosRef.current = {
x: Math.round(e.pageX),
y: Math.round(e.pageY)
});
};
return /* @__PURE__ */ (0, F.jsx)(A, {
asChild: !0,
...o,
children: /* @__PURE__ */ (0, F.jsx)(h.button, {
type: "button",
role: "combobox",
"aria-controls": s.contentId,
"aria-expanded": s.open,
"aria-required": s.required,
"aria-autocomplete": "none",
dir: s.dir,
"data-state": s.open ? "open" : "closed",
disabled: c,
"data-disabled": c ? "" : void 0,
"data-placeholder": Lt(s.value) ? "" : void 0,
...a,
ref: l,
onClick: d(a.onClick, (e) => {
e.currentTarget.focus(), f.current !== "mouse" && _(e);
}),
onPointerDown: d(a.onPointerDown, (e) => {
f.current = e.pointerType;
let t = e.target;
t.hasPointerCapture(e.pointerId) && t.releasePointerCapture(e.pointerId), e.button === 0 && e.ctrlKey === !1 && e.pointerType === "mouse" && (_(e), e.preventDefault());
}),
onKeyDown: d(a.onKeyDown, (e) => {
let t = p.current !== "";
!(e.ctrlKey || e.altKey || e.metaKey) && e.key.length === 1 && m(e.key), !(t && e.key === " ") && Fe.includes(e.key) && (_(), e.preventDefault());
})
})
});
});
qe.displayName = Ke;
var Je = "SelectValue", Ye = P.forwardRef((e, t) => {
let { __scopeSelect: n, className: r, style: a, children: o, placeholder: s = "", ...c } = e, l = J(Je, n), { onValueNodeHasChildrenChange: u } = l, d = o !== void 0, f = i(t, l.onValueNodeChange);
return m(() => {
u(d);
}, [u, d]), /* @__PURE__ */ (0, F.jsx)(h.span, {
...c,
ref: f,
style: { pointerEvents: "none" },
children: Lt(l.value) ? /* @__PURE__ */ (0, F.jsx)(F.Fragment, { children: s }) : o
});
});
Ye.displayName = Je;
var Xe = "SelectIcon", Ze = P.forwardRef((e, t) => {
let { __scopeSelect: n, children: r, ...i } = e;
return /* @__PURE__ */ (0, F.jsx)(h.span, {
"aria-hidden": !0,
...i,
ref: t,
children: r || "▼"
});
});
Ze.displayName = Xe;
var Qe = "SelectPortal", $e = (e) => /* @__PURE__ */ (0, F.jsx)(b, {
asChild: !0,
...e
});
$e.displayName = Qe;
var Y = "SelectContent", et = P.forwardRef((e, t) => {
let n = J(Y, e.__scopeSelect), [r, i] = P.useState();
if (m(() => {
i(new DocumentFragment());
}, []), !n.open) {
let t = r;
return t ? Pe.createPortal(/* @__PURE__ */ (0, F.jsx)(tt, {
scope: e.__scopeSelect,
children: /* @__PURE__ */ (0, F.jsx)(Le.Slot, {
scope: e.__scopeSelect,
children: /* @__PURE__ */ (0, F.jsx)("div", { children: e.children })
})
}), t) : null;
}
return /* @__PURE__ */ (0, F.jsx)(it, {
...e,
ref: t
});
});
et.displayName = Y;
var X = 10, [tt, Z] = q(Y), nt = "SelectContentImpl", rt = a("SelectContent.RemoveScroll"), it = P.forwardRef((e, t) => {
let { __scopeSelect: n, position: r = "item-aligned", onCloseAutoFocus: a, onEscapeKeyDown: o, onPointerDownOutside: s, side: c, sideOffset: l, align: u, alignOffset: f, arrowPadding: p, collisionBoundary: m, collisionPadding: h, sticky: g, hideWhenDetached: _, avoidCollisions: v, ...b } = e, S = J(Y, n), [C, w] = P.useState(null), [E, D] = P.useState(null), O = i(t, (e) => w(e)), [A, j] = P.useState(null), [ee, ne] = P.useState(null), M = Re(n), [N, re] = P.useState(!1), ie = P.useRef(!1);
P.useEffect(() => {
if (C) return y(C);
}, [C]), te();
let I = P.useCallback((e) => {
let [t, ...n] = M().map((e) => e.ref.current), [r] = n.slice(-1), i = document.activeElement;
for (let n of e) if (n === i || (n == null || n.scrollIntoView({ block: "nearest" }), n === t && E && (E.scrollTop = 0), n === r && E && (E.scrollTop = E.scrollHeight), n == null || n.focus(), document.activeElement !== i)) return;
}, [M, E]), L = P.useCallback(() => I([A, C]), [
I,
A,
C
]);
P.useEffect(() => {
N && L();
}, [N, L]);
let { onOpenChange: R, triggerPointerDownPosRef: z } = S;
P.useEffect(() => {
if (C) {
let e = {
x: 0,
y: 0
}, t = (t) => {
var n, r, i, a;
e = {
x: Math.abs(Math.round(t.pageX) - ((n = (r = z.current) == null ? void 0 : r.x) == null ? 0 : n)),
y: Math.abs(Math.round(t.pageY) - ((i = (a = z.current) == null ? void 0 : a.y) == null ? 0 : i))
};
}, n = (n) => {
e.x <= 10 && e.y <= 10 ? n.preventDefault() : C.contains(n.target) || R(!1), document.removeEventListener("pointermove", t), z.current = null;
};
return z.current !== null && (document.addEventListener("pointermove", t), document.addEventListener("pointerup", n, {
capture: !0,
once: !0
})), () => {
document.removeEventListener("pointermove", t), document.removeEventListener("pointerup", n, { capture: !0 });
};
}
}, [
C,
R,
z
]), P.useEffect(() => {
let e = () => R(!1);
return window.addEventListener("blur", e), window.addEventListener("resize", e), () => {
window.removeEventListener("blur", e), window.removeEventListener("resize", e);
};
}, [R]);
let [B, ae] = Rt((e) => {
let t = M().filter((e) => !e.disabled), n = zt(t, e, t.find((e) => e.ref.current === document.activeElement));
n && setTimeout(() => n.ref.current.focus());
}), oe = P.useCallback((e, t, n) => {
let r = !ie.current && !n;
(S.value !== void 0 && S.value === t || r) && (j(e), r && (ie.current = !0));
}, [S.value]), se = P.useCallback(() => C == null ? void 0 : C.focus(), [C]), V = P.useCallback((e, t, n) => {
let r = !ie.current && !n;
(S.value !== void 0 && S.value === t || r) && ne(e);
}, [S.value]), ce = r === "popper" ? ct : ot, le = ce === ct ? {
side: c,
sideOffset: l,
align: u,
alignOffset: f,
arrowPadding: p,
collisionBoundary: m,
collisionPadding: h,
sticky: g,
hideWhenDetached: _,
avoidCollisions: v
} : {};
return /* @__PURE__ */ (0, F.jsx)(tt, {
scope: n,
content: C,
viewport: E,
onViewportChange: D,
itemRefCallback: oe,
selectedItem: A,
onItemLeave: se,
itemTextRefCallback: V,
focusSelectedItem: L,
selectedItemText: ee,
position: r,
isPositioned: N,
searchRef: B,
children: /* @__PURE__ */ (0, F.jsx)(T, {
as: rt,
allowPinchZoom: !0,
children: /* @__PURE__ */ (0, F.jsx)(x, {
asChild: !0,
trapped: S.open,
onMountAutoFocus: (e) => {
e.preventDefault();
},
onUnmountAutoFocus: d(a, (e) => {
var t;
(t = S.trigger) == null || t.focus({ preventScroll: !0 }), e.preventDefault();
}),
children: /* @__PURE__ */ (0, F.jsx)(k, {
asChild: !0,
disableOutsidePointerEvents: !0,
onEscapeKeyDown: o,
onPointerDownOutside: s,
onFocusOutside: (e) => e.preventDefault(),
onDismiss: () => S.onOpenChange(!1),
children: /* @__PURE__ */ (0, F.jsx)(ce, {
role: "listbox",
id: S.contentId,
"data-state": S.open ? "open" : "closed",
dir: S.dir,
onContextMenu: (e) => e.preventDefault(),
...b,
...le,
onPlaced: () => re(!0),
ref: O,
style: {
display: "flex",
flexDirection: "column",
outline: "none",
...b.style
},
onKeyDown: d(b.onKeyDown, (e) => {
let t = e.ctrlKey || e.altKey || e.metaKey;
if (e.key === "Tab" && e.preventDefault(), !t && e.key.length === 1 && ae(e.key), [
"ArrowUp",
"ArrowDown",
"Home",
"End"
].includes(e.key)) {
let t = M().filter((e) => !e.disabled).map((e) => e.ref.current);
if (["ArrowUp", "End"].includes(e.key) && (t = t.slice().reverse()), ["ArrowUp", "ArrowDown"].includes(e.key)) {
let n = e.target, r = t.indexOf(n);
t = t.slice(r + 1);
}
setTimeout(() => I(t)), e.preventDefault();
}
})
})
})
})
})
});
});
it.displayName = nt;
var at = "SelectItemAlignedPosition", ot = P.forwardRef((e, t) => {
let { __scopeSelect: n, onPlaced: r, ...a } = e, o = J(Y, n), s = Z(Y, n), [c, l] = P.useState(null), [u, d] = P.useState(null), f = i(t, (e) => d(e)), p = Re(n), g = P.useRef(!1), _ = P.useRef(!0), { viewport: v, selectedItem: y, selectedItemText: b, focusSelectedItem: x } = s, S = P.useCallback(() => {
if (o.trigger && o.valueNode && c && u && v && y && b) {
let e = o.trigger.getBoundingClientRect(), t = u.getBoundingClientRect(), n = o.valueNode.getBoundingClientRect(), i = b.getBoundingClientRect();
if (o.dir !== "rtl") {
let r = i.left - t.left, a = n.left - r, o = e.left - a, s = e.width + o, l = Math.max(s, t.width), u = window.innerWidth - X, d = re(a, [X, Math.max(X, u - l)]);
c.style.minWidth = s + "px", c.style.left = d + "px";
} else {
let r = t.right - i.right, a = window.innerWidth - n.right - r, o = window.innerWidth - e.right - a, s = e.width + o, l = Math.max(s, t.width), u = window.innerWidth - X, d = re(a, [X, Math.max(X, u - l)]);
c.style.minWidth = s + "px", c.style.right = d + "px";
}
let a = p(), s = window.innerHeight - X * 2, l = v.scrollHeight, d = window.getComputedStyle(u), f = parseInt(d.borderTopWidth, 10), m = parseInt(d.paddingTop, 10), h = parseInt(d.borderBottomWidth, 10), _ = parseInt(d.paddingBottom, 10), x = f + m + l + _ + h, S = Math.min(y.offsetHeight * 5, x), C = window.getComputedStyle(v), w = parseInt(C.paddingTop, 10), T = parseInt(C.paddingBottom, 10), E = e.top + e.height / 2 - X, D = s - E, O = y.offsetHeight / 2, k = y.offsetTop + O, A = f + m + k, j = x - A;
if (A <= E) {
let e = a.length > 0 && y === a[a.length - 1].ref.current;
c.style.bottom = "0px";
let t = u.clientHeight - v.offsetTop - v.offsetHeight, n = A + Math.max(D, O + (e ? T : 0) + t + h);
c.style.height = n + "px";
} else {
let e = a.length > 0 && y === a[0].ref.current;
c.style.top = "0px";
let t = Math.max(E, f + v.offsetTop + (e ? w : 0) + O) + j;
c.style.height = t + "px", v.scrollTop = A - E + v.offsetTop;
}
c.style.margin = `${X}px 0`, c.style.minHeight = S + "px", c.style.maxHeight = s + "px", r == null || r(), requestAnimationFrame(() => g.current = !0);
}
}, [
p,
o.trigger,
o.valueNode,
c,
u,
v,
y,
b,
o.dir,
r
]);
m(() => S(), [S]);
let [C, w] = P.useState();
return m(() => {
u && w(window.getComputedStyle(u).zIndex);
}, [u]), /* @__PURE__ */ (0, F.jsx)(lt, {
scope: n,
contentWrapper: c,
shouldExpandOnScrollRef: g,
onScrollButtonChange: P.useCallback((e) => {
e && _.current === !0 && (S(), x == null || x(), _.current = !1);
}, [S, x]),
children: /* @__PURE__ */ (0, F.jsx)("div", {
ref: l,
style: {
display: "flex",
flexDirection: "column",
position: "fixed",
zIndex: C
},
children: /* @__PURE__ */ (0, F.jsx)(h.div, {
...a,
ref: f,
style: {
boxSizing: "border-box",
maxHeight: "100%",
...a.style
}
})
})
});
});
ot.displayName = at;
var st = "SelectPopperPosition", ct = P.forwardRef((e, t) => {
let { __scopeSelect: n, align: r = "start", collisionPadding: i = X, ...a } = e, o = Ve(n);
return /* @__PURE__ */ (0, F.jsx)(_, {
...o,
...a,
ref: t,
align: r,
collisionPadding: i,
style: {
boxSizing: "border-box",
...a.style,
"--radix-select-content-transform-origin": "var(--radix-popper-transform-origin)",
"--radix-select-content-available-width": "var(--radix-popper-available-width)",
"--radix-select-content-available-height": "var(--radix-popper-available-height)",
"--radix-select-trigger-width": "var(--radix-popper-anchor-width)",
"--radix-select-trigger-height": "var(--radix-popper-anchor-height)"
}
});
});
ct.displayName = st;
var [lt, ut] = q(Y, {}), dt = "SelectViewport", ft = P.forwardRef((e, t) => {
let { __scopeSelect: n, nonce: r, ...a } = e, o = Z(dt, n), s = ut(dt, n), c = i(t, o.onViewportChange), l = P.useRef(0);
return /* @__PURE__ */ (0, F.jsxs)(F.Fragment, { children: [/* @__PURE__ */ (0, F.jsx)("style", {
dangerouslySetInnerHTML: { __html: "[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}" },
nonce: r
}), /* @__PURE__ */ (0, F.jsx)(Le.Slot, {
scope: n,
children: /* @__PURE__ */ (0, F.jsx)(h.div, {
"data-radix-select-viewport": "",
role: "presentation",
...a,
ref: c,
style: {
position: "relative",
flex: 1,
overflow: "hidden auto",
...a.style
},
onScroll: d(a.onScroll, (e) => {
let t = e.currentTarget, { contentWrapper: n, shouldExpandOnScrollRef: r } = s;
if (r != null && r.current && n) {
let e = Math.abs(l.current - t.scrollTop);
if (e > 0) {
let r = window.innerHeight - X * 2, i = parseFloat(n.style.minHeight), a = parseFloat(n.style.height), o = Math.max(i, a);
if (o < r) {
let i = o + e, a = Math.min(r, i), s = i - a;
n.style.height = a + "px", n.style.bottom === "0px" && (t.scrollTop = s > 0 ? s : 0, n.style.justifyContent = "flex-end");
}
}
}
l.current = t.scrollTop;
})
})
})] });
});
ft.displayName = dt;
var pt = "SelectGroup", [mt, ht] = q(pt), gt = P.forwardRef((e, t) => {
let { __scopeSelect: n, ...r } = e, i = S();
return /* @__PURE__ */ (0, F.jsx)(mt, {
scope: n,
id: i,
children: /* @__PURE__ */ (0, F.jsx)(h.div, {
role: "group",
"aria-labelledby": i,
...r,
ref: t
})
});
});
gt.displayName = pt;
var _t = "SelectLabel", vt = P.forwardRef((e, t) => {
let { __scopeSelect: n, ...r } = e, i = ht(_t, n);
return /* @__PURE__ */ (0, F.jsx)(h.div, {
id: i.id,
...r,
ref: t
});
});
vt.displayName = _t;
var yt = "SelectItem", [bt, xt] = q(yt), St = P.forwardRef((e, t) => {
let { __scopeSelect: n, value: r, disabled: a = !1, textValue: o, ...s } = e, c = J(yt, n), l = Z(yt, n), u = c.value === r, [f, p] = P.useState(o == null ? "" : o), [m, g] = P.useState(!1), _ = i(t, (e) => {
var t;
return (t = l.itemRefCallback) == null ? void 0 : t.call(l, e, r, a);
}), v = S(), y = P.useRef("touch"), b = () => {
a || (c.onValueChange(r), c.onOpenChange(!1));
};
if (r === "") throw Error("A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.");
return /* @__PURE__ */ (0, F.jsx)(bt, {
scope: n,
value: r,
disabled: a,
textId: v,
isSelected: u,
onItemTextChange: P.useCallback((e) => {
p((t) => {
var n;
return t || ((n = e == null ? void 0 : e.textContent) == null ? "" : n).trim();
});
}, []),
children: /* @__PURE__ */ (0, F.jsx)(Le.ItemSlot, {
scope: n,
value: r,
disabled: a,
textValue: f,
children: /* @__PURE__ */ (0, F.jsx)(h.div, {
role: "option",
"aria-labelledby": v,
"data-highlighted": m ? "" : void 0,
"aria-selected": u && m,
"data-state": u ? "checked" : "unchecked",
"aria-disabled": a || void 0,
"data-disabled": a ? "" : void 0,
tabIndex: a ? void 0 : -1,
...s,
ref: _,
onFocus: d(s.onFocus, () => g(!0)),
onBlur: d(s.onBlur, () => g(!1)),
onClick: d(s.onClick, () => {
y.current !== "mouse" && b();
}),
onPointerUp: d(s.onPointerUp, () => {
y.current === "mouse" && b();
}),
onPointerDown: d(s.onPointerDown, (e) => {
y.current = e.pointerType;
}),
onPointerMove: d(s.onPointerMove, (e) => {
if (y.current = e.pointerType, a) {
var t;
(t = l.onItemLeave) == null || t.call(l);
} else y.current === "mouse" && e.currentTarget.focus({ preventScroll: !0 });
}),
onPointerLeave: d(s.onPointerLeave, (e) => {
if (e.currentTarget === document.activeElement) {
var t;
(t = l.onItemLeave) == null || t.call(l);
}
}),
onKeyDown: d(s.onKeyDown, (e) => {
var t;
((t = l.searchRef) == null ? void 0 : t.current) !== "" && e.key === " " || (Ie.includes(e.key) && b(), e.key === " " && e.preventDefault());
})
})
})
});
});
St.displayName = yt;
var Q = "SelectItemText", Ct = P.forwardRef((e, t) => {
let { __scopeSelect: n, className: r, style: a, ...o } = e, s = J(Q, n), c = Z(Q, n), l = xt(Q, n), u = We(Q, n), [d, f] = P.useState(null), p = i(t, (e) => f(e), l.onItemTextChange, (e) => {
var t;
return (t = c.itemTextRefCallback) == null ? void 0 : t.call(c, e, l.value, l.disabled);
}), g = d == null ? void 0 : d.textContent, _ = P.useMemo(() => /* @__PURE__ */ (0, F.jsx)("option", {
value: l.value,
disabled: l.disabled,
children: g
}, l.value), [
l.disabled,
l.value,
g
]), { onNativeOptionAdd: v, onNativeOptionRemove: y } = u;
return m(() => (v(_), () => y(_)), [
v,
y,
_
]), /* @__PURE__ */ (0, F.jsxs)(F.Fragment, { children: [/* @__PURE__ */ (0, F.jsx)(h.span, {
id: l.textId,
...o,
ref: p
}), l.isSelected && s.valueNode && !s.valueNodeHasChildren ? Pe.createPortal(o.children, s.valueNode) : null] });
});
Ct.displayName = Q;
var wt = "SelectItemIndicator", Tt = P.forwardRef((e, t) => {
let { __scopeSelect: n, ...r } = e;
return xt(wt, n).isSelected ? /* @__PURE__ */ (0, F.jsx)(h.span, {
"aria-hidden": !0,
...r,
ref: t
}) : null;
});
Tt.displayName = wt;
var Et = "SelectScrollUpButton", Dt = P.forwardRef((e, t) => {
let n = Z(Et, e.__scopeSelect), r = ut(Et, e.__scopeSelect), [a, o] = P.useState(!1), s = i(t, r.onScrollButtonChange);
return m(() => {
if (n.viewport && n.isPositioned) {
let e = function() {
let e = t.scrollTop > 0;
o(e);
}, t = n.viewport;
return e(), t.addEventListener("scroll", e), () => t.removeEventListener("scroll", e);
}
}, [n.viewport, n.isPositioned]), a ? /* @__PURE__ */ (0, F.jsx)(At, {
...e,
ref: s,
onAutoScroll: () => {
let { viewport: e, selectedItem: t } = n;
e && t && (e.scrollTop -= t.offsetHeight);
}
}) : null;
});
Dt.displayName = Et;
var Ot = "SelectScrollDownButton", kt = P.forwardRef((e, t) => {
let n = Z(Ot, e.__scopeSelect), r = ut(Ot, e.__scopeSelect), [a, o] = P.useState(!1), s = i(t, r.onScrollButtonChange);
return m(() => {
if (n.viewport && n.isPositioned) {
let e = function() {
let e = t.scrollHeight - t.clientHeight, n = Math.ceil(t.scrollTop) < e;
o(n);
}, t = n.viewport;
return e(), t.addEventListener("scroll", e), () => t.removeEventListener("scroll", e);
}
}, [n.viewport, n.isPositioned]), a ? /* @__PURE__ */ (0, F.jsx)(At, {
...e,
ref: s,
onAutoScroll: () => {
let { viewport: e, selectedItem: t } = n;
e && t && (e.scrollTop += t.offsetHeight);
}
}) : null;
});
kt.displayName = Ot;
var At = P.forwardRef((e, t) => {
let { __scopeSelect: n, onAutoScroll: r, ...i } = e, a = Z("SelectScrollButton", n), o = P.useRef(null), s = Re(n), c = P.useCallback(() => {
o.current !== null && (window.clearInterval(o.current), o.current = null);
}, []);
return P.useEffect(() => () => c(), [c]), m(() => {
var e;
let t = s().find((e) => e.ref.current === document.activeElement);
t == null || (e = t.ref.current) == null || e.scrollIntoView({ block: "nearest" });
}, [s]), /* @__PURE__ */ (0, F.jsx)(h.div, {
"aria-hidden": !0,
...i,
ref: t,
style: {
flexShrink: 0,
...i.style
},
onPointerDown: d(i.onPointerDown, () => {
o.current === null && (o.current = window.setInterval(r, 50));
}),
onPointerMove: d(i.onPointerMove, () => {
var e;
(e = a.onItemLeave) == null || e.call(a), o.current === null && (o.current = window.setInterval(r, 50));
}),
onPointerLeave: d(i.onPointerLeave, () => {
c();
})
});
}), jt = "SelectSeparator", Mt = P.forwardRef((e, t) => {
let { __scopeSelect: n, ...r } = e;
return /* @__PURE__ */ (0, F.jsx)(h.div, {
"aria-hidden": !0,
...r,
ref: t
});
});
Mt.displayName = jt;
var Nt = "SelectArrow", Pt = P.forwardRef((e, t) => {
let { __scopeSelect: n, ...r } = e, i = Ve(n), a = J(Nt, n), o = Z(Nt, n);
return a.open && o.position === "popper" ? /* @__PURE__ */ (0, F.jsx)(w, {
...i,
...r,
ref: t
}) : null;
});
Pt.displayName = Nt;
var Ft = "SelectBubbleInput", It = P.forwardRef(({ __scopeSelect: e, value: t, ...n }, r) => {
let a = P.useRef(null), o = i(r, a), s = M(t);
return P.useEffect(() => {
let e = a.current;
if (!e) return;
let n = window.HTMLSelectElement.prototype, r = Object.getOwnPropertyDescriptor(n, "value").set;
if (s !== t && r) {
let n = new Event("change", { bubbles: !0 });
r.call(e, t), e.dispatchEvent(n);
}
}, [s, t]), /* @__PURE__ */ (0, F.jsx)(h.select, {
...n,
style: {
...v,
...n.style
},
ref: o,
defaultValue: t
});
});
It.displayName = Ft;
function Lt(e) {
return e === "" || e === void 0;
}
function Rt(e) {
let t = E(e), n = P.useRef(""), r = P.useRef(0), i = P.useCallback((e) => {
let i = n.current + e;
t(i), (function e(t) {
n.current = t, window.clearTimeout(r.current), t !== "" && (r.current = window.setTimeout(() => e(""), 1e3));
})(i);
}, [t]), a = P.useCallback(() => {
n.current = "", window.clearTimeout(r.current);
}, []);
return P.useEffect(() => () => window.clearTimeout(r.current), []), [
n,
i,
a
];
}
function zt(e, t, n) {
let r = t.length > 1 && Array.from(t).every((e) => e === t[0]) ? t[0] : t, i = n ? e.indexOf(n) : -1, a = Bt(e, Math.max(i, 0));
r.length === 1 && (a = a.filter((e) => e !== n));
let o = a.find((e) => e.textValue.toLowerCase().startsWith(r.toLowerCase()));
return o === n ? void 0 : o;
}
function Bt(e, t) {
return e.map((n, r) => e[(t + r) % e.length]);
}
var Vt = Ge, Ht = qe, Ut = Ye, Wt = Ze, Gt = $e, Kt = et, qt = ft, Jt = gt, Yt = vt, Xt = St, Zt = Ct, Qt = Tt, $t = Mt, $ = /* @__PURE__ */ e(N()), en = P.forwardRef((e, t) => P.createElement("svg", {
width: "9",
height: "9",
viewBox: "0 0 9 9",
fill: "currentcolor",
xmlns: "http://www.w3.org/2000/svg",
...e,
ref: t
}, P.createElement("path", {
fillRule: "evenodd",
clipRule: "evenodd",
d: "M0.75 4.5C0.75 4.08579 1.08579 3.75 1.5 3.75H7.5C7.91421 3.75 8.25 4.08579 8.25 4.5C8.25 4.91421 7.91421 5.25 7.5 5.25H1.5C1.08579 5.25 0.75 4.91421 0.75 4.5Z"
})));
en.displayName = "ThickDividerHorizontalIcon";
var tn = P.forwardRef((e, t) => P.createElement("svg", {
width: "9",
height: "9",
viewBox: "0 0 9 9",
fill: "currentcolor",
xmlns: "http://www.w3.org/2000/svg",
...e,
ref: t
}, P.createElement("path", {
fillRule: "evenodd",
clipRule: "evenodd",
d: "M8.53547 0.62293C8.88226 0.849446 8.97976 1.3142 8.75325 1.66099L4.5083 8.1599C4.38833 8.34356 4.19397 8.4655 3.9764 8.49358C3.75883 8.52167 3.53987 8.45309 3.3772 8.30591L0.616113 5.80777C0.308959 5.52987 0.285246 5.05559 0.563148 4.74844C0.84105 4.44128 1.31533 4.41757 1.62249 4.69547L3.73256 6.60459L7.49741 0.840706C7.72393 0.493916 8.18868 0.396414 8.53547 0.62293Z"
})));
tn.displayName = "ThickCheckIcon";
var nn = P.forwardRef((e, t) => P.createElement("svg", {
width: "9",
height: "9",
viewBox: "0 0 9 9",
fill: "currentcolor",
xmlns: "http://www.w3.org/2000/svg",
...e,
ref: t
}, P.createElement("path", { d: "M0.135232 3.15803C0.324102 2.95657 0.640521 2.94637 0.841971 3.13523L4.5 6.56464L8.158 3.13523C8.3595 2.94637 8.6759 2.95657 8.8648 3.15803C9.0536 3.35949 9.0434 3.67591 8.842 3.86477L4.84197 7.6148C4.64964 7.7951 4.35036 7.7951 4.15803 7.6148L0.158031 3.86477C-0.0434285 3.67591 -0.0536285 3.35949 0.135232 3.15803Z" })));
nn.displayName = "ChevronDownIcon";
var rn = P.forwardRef((e, t) => P.createElement("svg", {
width: "9",
height: "9",
viewBox: "0 0 9 9",
fill: "currentcolor",
xmlns: "http://www.w3.org/2000/svg",
...e,
ref: t
}, P.createElement("path", {
fillRule: "evenodd",
clipRule: "evenodd",
d: "M3.23826 0.201711C3.54108 -0.0809141 4.01567 -0.0645489 4.29829 0.238264L7.79829 3.98826C8.06724 4.27642 8.06724 4.72359 7.79829 5.01174L4.29829 8.76174C4.01567 9.06455 3.54108 9.08092 3.23826 8.79829C2.93545 8.51567 2.91909 8.04108 3.20171 7.73826L6.22409 4.5L3.20171 1.26174C2.91909 0.958928 2.93545 0.484337 3.23826 0.201711Z"
})));
rn.displayName = "ThickChevronRightIcon";
//#endregion
//#region ../../node_modules/.pnpm/@radix-ui+themes@3.3.0_@types+react-dom@19.2.3_@types+react@19.2.17__@types+react@19.2._5ea800d4e947acedb1fa1275f1697b17/node_modules/@radix-ui/themes/dist/esm/components/select.props.js
var an = { size: {
type: "enum",
className: "rt-r-size",
values: [
"1",
"2",
"3"
],
default: "2",
responsive: !0
} }, on = {
variant: {
type: "enum",
className: "rt-variant",
values: [
"classic",
"surface",
"soft",
"ghost"
],
default: "surface"
},
...u,
...c,
placeholder: { type: "string" }
}, sn = {
variant: {
type: "enum",
className: "rt-variant",
values: ["solid", "soft"],
default: "solid"
},
...u,
...o
}, cn = P.createContext({}), ln = (e) => {
let { children: t, size: n = an.size.default, ...r } = e;
return P.createElement(Vt, { ...r }, P.createElement(cn.Provider, { value: P.useMemo(() => ({ size: n }), [n]) }, t));
};
ln.displayName = "Select.Root";
var un = P.forwardRef((e, t) => {
let n = P.useContext(cn), { children: r, className: i, color: a, radius: o, placeholder: c, ...u } = l({
size: n == null ? void 0 : n.size,
...e
}, { size: an.size }, on, s);
return P.createElement(Ht, { asChild: !0 }, P.createElement("button", {
"data-accent-color": a,
"data-radius": o,
...u,
ref: t,
className: (0, $.default)("rt-reset", "rt-SelectTrigger", i)
}, P.createElement("span", { className: "rt-SelectTriggerInner" }, P.createElement(Ut, { placeholder: c }, r)), P.createElement(Wt, { asChild: !0 }, P.createElement(nn, { className: "rt-SelectIcon" }))));
});
un.displayName = "Select.Trigger";
var dn = P.forwardRef((e, t) => {
let n = P.useContext(cn), { className: r, children: i, color: a, container: o, ...s } = l({
size: n == null ? void 0 : n.size,
...e
}, { size: an.size }, sn), c = ee(), u = a || c.accentColor;
return P.createElement(Gt, { container: o }, P.createElement(D, { asChild: !0 }, P.createElement(Kt, {
"data-accent-color": u,
sideOffset: 4,
...s,
asChild: !1,
ref: t,
className: (0, $.default)({ "rt-PopperContent": s.position === "popper" }, "rt-SelectContent", r)
}, P.createElement(Ae, {
type: "auto",
className: "rt-ScrollAreaRoot"
}, P.createElement(qt, {
asChild: !0,
className: "rt-SelectViewport"
}, P.createElement(je, {
className: "rt-ScrollAreaViewport",
style: { overflowY: void 0 }
}, i)), P.createElement(Me, {
className: "rt-ScrollAreaScrollbar rt-r-size-1",
orientation: "vertical"
}, P.createElement(Ne, { className: "rt-ScrollAreaThumb" }))))));
});
dn.displayName = "Select.Content";
var fn = P.forwardRef((e, t) => {
let { className: n, children: r, ...i } = e;
return P.createElement(Xt, {
...i,
asChild: !1,
ref: t,
className: (0, $.default)("rt-SelectItem", n)
}, P.createElement(Qt, { className: "rt-SelectItemIndicator" }, P.createElement(tn, { className: "rt-SelectItemIndicatorIcon" })), P.createElement(Zt, null, r));
});
fn.displayName = "Select.Item";
var pn = P.forwardRef(({ className: e, ...t }, n) => P.createElement(Jt, {
...t,
asChild: !1,
ref: n,
className: (0, $.default)("rt-SelectGroup", e)
}));
pn.displayName = "Select.Group";
var mn = P.forwardRef(({ className: e, ...t }, n) => P.createElement(Yt, {
...t,
asChild: !1,
ref: n,
className: (0, $.default)("rt-SelectLabel", e)
}));
mn.displayName = "Select.Label";
var hn = P.forwardRef(({ className: e, ...t }, n) => P.createElement($t, {
...t,
asChild: !1,
ref: n,
className: (0, $.default)("rt-SelectSeparator", e)
}));
hn.displayName = "Select.Separator";
//#endregion
export { fn as i, dn as n, un as r, ln as t };