twenty-ui 2.51.3 → 2.52.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{AllIcons-1tBWXXrE.cjs → AllIcons-HGLkp696.cjs} +1 -1
- package/dist/{AllIcons-ayl8BCtV.js → AllIcons-fCCVOqoJ.js} +1 -1
- package/dist/{Button-CU8BS-Yd.js → Button-Dd8cNsn1.js} +2 -2
- package/dist/{Button-iVyxlrwO.cjs → Button-Du8T-dOv.cjs} +1 -1
- package/dist/Dropdown-D3LPyrQI.js +1163 -0
- package/dist/Dropdown-h5-yIsU7.cjs +1 -0
- package/dist/Input-BKRR1xlO.js +26 -0
- package/dist/Input-DS19vWhl.cjs +1 -0
- package/dist/{ListItem-WLONJMo5.js → ListItem-DR7Xh2WV.js} +3 -3
- package/dist/{ListItem-B-SFWJZb.cjs → ListItem-g1B--M70.cjs} +1 -1
- package/dist/{Loader-Bb72CUQ9.cjs → Loader-Dau0YQpY.cjs} +1 -1
- package/dist/{Loader-DtHWQH8w.js → Loader-U1LuZtJf.js} +1 -1
- package/dist/{OverflowingTextWithTooltip-D4eZc-7P.js → OverflowingTextWithTooltip-Cky5WlIk.js} +1 -1
- package/dist/{OverflowingTextWithTooltip-ClpPsdpP.cjs → OverflowingTextWithTooltip-Dmsmy-9g.cjs} +1 -1
- package/dist/{Popover-CneCJTvD.cjs → Popover-B-VIhr5g.cjs} +1 -1
- package/dist/{Popover-CWeCV7X9.js → Popover-DhFCYRtv.js} +1 -1
- package/dist/{ProgressBar-goqxS9NE.cjs → ProgressBar-BG38LPgC.cjs} +1 -1
- package/dist/{ProgressBar-8pjpGrmZ.js → ProgressBar-BO0MkswY.js} +14 -14
- package/dist/{Radio-CpQPRHXa.cjs → Radio-BK47Ig6J.cjs} +1 -1
- package/dist/{Radio-VTjpEz8M.js → Radio-WuoC3hJ5.js} +4 -4
- package/dist/{Shortcut-N8TELGPI.cjs → Shortcut-CbbRd1uM.cjs} +1 -1
- package/dist/{Shortcut-Bp9iDdQg.js → Shortcut-YMhkp7f6.js} +1 -1
- package/dist/TablerIcons-CqzhliLC.js +462 -0
- package/dist/{Tooltip-08dDawT_.cjs → Tooltip-BXeUFCdb.cjs} +1 -1
- package/dist/{Tooltip-C7zc16gI.js → Tooltip-CT9YCDaV.js} +1 -1
- package/dist/components/code-editor.cjs +1 -1
- package/dist/components/code-editor.mjs +2 -2
- package/dist/components/data-display.cjs +1 -1
- package/dist/components/data-display.mjs +1 -1
- package/dist/components/feedback.cjs +1 -1
- package/dist/components/feedback.mjs +1 -1
- package/dist/components/input/SegmentedControl/SegmentedControl.d.ts +1 -1
- package/dist/components/input/SegmentedControl/types/SegmentedControlProps.d.ts +1 -0
- package/dist/components/input.cjs +1 -1
- package/dist/components/input.mjs +6 -6
- package/dist/components/layout.cjs +1 -1
- package/dist/components/layout.mjs +1 -1
- package/dist/components/navigation/Dropdown/Dropdown.d.ts +1 -1
- package/dist/components/navigation/Dropdown/__stories__/DropdownPlacementExample.d.ts +6 -0
- package/dist/components/navigation/Dropdown/hooks/useDropdownPlacementOrThrow.d.ts +1 -0
- package/dist/components/navigation/Dropdown/internal/DropdownContent.d.ts +1 -1
- package/dist/components/navigation/Dropdown/internal/DropdownContentRenderer.d.ts +10 -0
- package/dist/components/navigation/Dropdown/internal/DropdownPlacementContext.d.ts +1 -0
- package/dist/components/navigation/Dropdown/internal/compareDropdownElementOrder.d.ts +4 -0
- package/dist/components/navigation/Dropdown/internal/getDropdownTabNavigation.d.ts +7 -0
- package/dist/components/navigation/Dropdown/internal/getDropdownTriggerTabTarget.d.ts +1 -0
- package/dist/components/navigation/index.d.ts +1 -0
- package/dist/components/navigation.cjs +1 -1
- package/dist/components/navigation.mjs +8 -7
- package/dist/components/settings.cjs +1 -1
- package/dist/components/settings.mjs +1 -1
- package/dist/components.cjs +1 -1
- package/dist/components.mjs +27 -26
- package/dist/{data-display-DUMj_z1t.js → data-display-B7beM2yK.js} +54 -54
- package/dist/{data-display-DzHM5j7j.cjs → data-display-C3Q_8G-N.cjs} +1 -1
- package/dist/{data-display-b-9s0RTe.js → data-display-CHKKTmH_.js} +63 -63
- package/dist/{data-display-D_kbXJJd.cjs → data-display-VghHkQY5.cjs} +1 -1
- package/dist/{feedback-BzR4ggrP.cjs → feedback-3S9S-Xi9.cjs} +1 -1
- package/dist/{feedback-EaZszoXf.js → feedback-DHATp8in.js} +51 -51
- package/dist/icon/components/TablerIcons.d.ts +1 -1
- package/dist/icon/index.d.ts +1 -1
- package/dist/{icon-ICz2_dVB.js → icon-C3fz8p3W.js} +3 -3
- package/dist/{icon-TSBamkxk.cjs → icon-C688lfSq.cjs} +1 -1
- package/dist/icon.cjs +1 -1
- package/dist/icon.mjs +505 -503
- package/dist/index.cjs +1 -1
- package/dist/index.mjs +658 -655
- package/dist/{input-CuySKbhm.js → input-BLU0vrJM.js} +585 -584
- package/dist/{input-ExCbk62Y.cjs → input-BLUZOGq8.cjs} +1 -1
- package/dist/{input-BQABEELu.cjs → input-DRIIJ4Zd.cjs} +1 -1
- package/dist/{input-DxoXgI5-.js → input-jkwxjdtI.js} +6 -6
- package/dist/{layout-B2KvJ900.js → layout-4nLOjbJA.js} +2 -2
- package/dist/{layout-B1Iwc9ku.cjs → layout-DEoY3Qd0.cjs} +1 -1
- package/dist/navigation-CSSOuhFm.cjs +1 -0
- package/dist/navigation-iP54gZTV.js +140 -0
- package/dist/primitives/data-display.cjs +1 -1
- package/dist/primitives/data-display.mjs +1 -1
- package/dist/primitives/feedback.cjs +1 -1
- package/dist/primitives/feedback.mjs +2 -2
- package/dist/primitives/input/Input/Input.d.ts +1 -1
- package/dist/primitives/input/Input/types/InputProps.d.ts +1 -0
- package/dist/primitives/input.cjs +1 -1
- package/dist/primitives/input.mjs +4 -4
- package/dist/primitives/navigation.cjs +1 -1
- package/dist/primitives/navigation.mjs +1 -1
- package/dist/primitives/surfaces/Card/Card.d.ts +1 -1
- package/dist/primitives/surfaces/Card/internal/CardRoot.d.ts +1 -1
- package/dist/primitives/surfaces/Card/types/CardRootProps.d.ts +1 -0
- package/dist/primitives/surfaces.cjs +1 -1
- package/dist/primitives/surfaces.mjs +3 -3
- package/dist/primitives/typography.cjs +1 -1
- package/dist/primitives/typography.mjs +3 -3
- package/dist/primitives.cjs +1 -1
- package/dist/primitives.mjs +14 -14
- package/dist/{settings-BTFAqYrD.js → settings-BmsLbd-g.js} +1 -1
- package/dist/{settings-D_iT1ngl.cjs → settings-DGwyi63i.cjs} +1 -1
- package/dist/style.css +1 -1
- package/dist/surfaces-C70biBA8.js +225 -0
- package/dist/surfaces-DcGz8LO-.cjs +1 -0
- package/dist/testing.cjs +1 -1
- package/dist/testing.mjs +1 -1
- package/dist/theme/constants/ThemeLight.d.ts +1 -0
- package/dist/theme/themeCssVariables.d.ts +1 -0
- package/dist/theme/themeTypes.d.ts +1 -0
- package/dist/theme-BJRNJNPO.cjs +1 -0
- package/dist/{theme-B2EaXhye.js → theme-CuGIQBsJ.js} +7 -4
- package/dist/theme-dark.css +1 -0
- package/dist/theme-light.css +1 -0
- package/dist/theme.cjs +1 -1
- package/dist/theme.mjs +1 -1
- package/dist/{typography-B05olPwL.cjs → typography-DeFnsH3k.cjs} +1 -1
- package/dist/{typography-BwyZEDDi.js → typography-sorTYmvG.js} +2 -2
- package/dist/{useIsMobile-D1ImfQnE.js → useIsMobile-CZeJLJJN.js} +1 -1
- package/dist/{useIsMobile-Byp9AIq-.cjs → useIsMobile-VmnhfE8g.cjs} +1 -1
- package/dist/{utilities-xZh8D2gd.cjs → utilities-Bfnz_GAC.cjs} +1 -1
- package/dist/{utilities-BKCMZyqZ.js → utilities-D0KcLLtO.js} +2 -2
- package/dist/utilities.cjs +1 -1
- package/dist/utilities.mjs +2 -2
- package/package.json +7 -7
- package/dist/Dropdown-D_hFndP5.cjs +0 -1
- package/dist/Dropdown-xXsGBv57.js +0 -1056
- package/dist/Input-D1sIHUZ5.js +0 -25
- package/dist/Input-D69M4UwD.cjs +0 -1
- package/dist/TablerIcons-B-5Ua_Ne.js +0 -460
- package/dist/navigation-DP5Edsq_.cjs +0 -1
- package/dist/navigation-DXMjQMPm.js +0 -134
- package/dist/surfaces-DtZwsfms.cjs +0 -1
- package/dist/surfaces-v0kQLZYO.js +0 -224
- package/dist/theme-1XkFz8Qu.cjs +0 -1
|
@@ -0,0 +1,1163 @@
|
|
|
1
|
+
import { t as a } from "./isDefined-fMi6eQ4r.js";
|
|
2
|
+
import { t as We } from "./isRenderableSlot-DT_depzM.js";
|
|
3
|
+
import { Ot as ut, Tc as pt, Tt as ft, kt as mt } from "./TablerIcons-CqzhliLC.js";
|
|
4
|
+
import { t as ne } from "./doNotTranslate-BSVT8Xyd.js";
|
|
5
|
+
import { t as Z } from "./mergeClassNames-ClFMR1v0.js";
|
|
6
|
+
import { t as gt } from "./preventDismissingClickActivation-BQFMKRey.js";
|
|
7
|
+
import { r as ze, t as wt } from "./Button-Dd8cNsn1.js";
|
|
8
|
+
import { t as ht } from "./Tooltip-CT9YCDaV.js";
|
|
9
|
+
import { r as He } from "./OverflowingTextWithTooltip-Cky5WlIk.js";
|
|
10
|
+
import { t as ve } from "./ListItem.module-B31VK9XZ.js";
|
|
11
|
+
import { t as Ee } from "./ListItem-DR7Xh2WV.js";
|
|
12
|
+
import { t as oe } from "./Popover-DhFCYRtv.js";
|
|
13
|
+
import { t as vt } from "./Input-BKRR1xlO.js";
|
|
14
|
+
import { useRender as ue } from "@base-ui/react/use-render";
|
|
15
|
+
import { isBoolean as bt, isFunction as yt, isNonEmptyString as ye, isPositiveInteger as $e, isUndefined as be } from "@sniptt/guards";
|
|
16
|
+
import { clsx as q } from "clsx";
|
|
17
|
+
import { Fragment as Tt, createContext as Se, isValidElement as Dt, useCallback as J, useContext as pe, useEffect as It, useId as Te, useLayoutEffect as fe, useRef as Ce, useState as M } from "react";
|
|
18
|
+
import { Fragment as _t, jsx as u, jsxs as ee } from "react/jsx-runtime";
|
|
19
|
+
import { Button as Ye } from "@base-ui/react/button";
|
|
20
|
+
import { useMergedRefs as me } from "@base-ui/utils/useMergedRefs";
|
|
21
|
+
import { Popover as je } from "@base-ui/react/popover";
|
|
22
|
+
import { areArraysEqual as At } from "@base-ui/utils/areArraysEqual";
|
|
23
|
+
import { useDirection as Xe } from "@base-ui/react/direction-provider";
|
|
24
|
+
import { Menu as Pe } from "@base-ui/react/menu";
|
|
25
|
+
var Et = "_content_nig04_1", St = "_inactivePositioner_nig04_13", Ct = "_page_nig04_17", Pt = "_selectionGroup_nig04_24", Ot = "_group_nig04_28", Rt = "_groupLabel_nig04_34", kt = "_separator_nig04_43", Nt = "_section_nig04_50", xt = "_back_nig04_84", Ft = "_backIcon_nig04_96", Lt = "_searchContainer_nig04_100", Bt = "_search_nig04_100", Mt = "_status_nig04_113", Gt = "_header_nig04_117", Kt = "_title_nig04_130", qt = "_itemWithActions_nig04_139", Ut = "_itemWithActionsPrimary_nig04_145", Vt = "_itemActions_nig04_160", Wt = "_itemDecoration_nig04_164", O = {
|
|
26
|
+
content: Et,
|
|
27
|
+
inactivePositioner: St,
|
|
28
|
+
page: Ct,
|
|
29
|
+
selectionGroup: Pt,
|
|
30
|
+
group: Ot,
|
|
31
|
+
groupLabel: Rt,
|
|
32
|
+
separator: kt,
|
|
33
|
+
section: Nt,
|
|
34
|
+
back: xt,
|
|
35
|
+
backIcon: Ft,
|
|
36
|
+
searchContainer: Lt,
|
|
37
|
+
search: Bt,
|
|
38
|
+
status: Mt,
|
|
39
|
+
header: Gt,
|
|
40
|
+
title: Kt,
|
|
41
|
+
itemWithActions: qt,
|
|
42
|
+
itemWithActionsPrimary: Ut,
|
|
43
|
+
itemActions: Vt,
|
|
44
|
+
itemDecoration: Wt
|
|
45
|
+
}, Je = ({ render: e, ref: t, disabled: r, ...o }) => ue({
|
|
46
|
+
render: e,
|
|
47
|
+
ref: t,
|
|
48
|
+
defaultTagName: "button",
|
|
49
|
+
props: {
|
|
50
|
+
...o,
|
|
51
|
+
disabled: r
|
|
52
|
+
}
|
|
53
|
+
}), Oe = ({ nativeButton: e, renderProps: t }) => e && "disabled" in t && bt(t.disabled) ? t.disabled : void 0, zt = "[data-dropdown-item]", Qe = ({ actions: e, actionsVisibility: t = "hover", color: r = "neutral", selected: o = !1, focused: i = !1, indicator: c = "none", disabled: s = !1, hasSubmenu: d = !1, children: n }) => /* @__PURE__ */ ee("div", {
|
|
54
|
+
className: q(ve.root, O.itemWithActions),
|
|
55
|
+
role: "none",
|
|
56
|
+
"data-actions-visibility": t,
|
|
57
|
+
"data-color": r,
|
|
58
|
+
"data-selected": o ? "" : void 0,
|
|
59
|
+
"data-highlighted": i ? "" : void 0,
|
|
60
|
+
"data-indicator": c,
|
|
61
|
+
"data-disabled": s ? "" : void 0,
|
|
62
|
+
onClick: (l) => {
|
|
63
|
+
l.target === l.currentTarget && l.currentTarget.querySelector(zt)?.click();
|
|
64
|
+
},
|
|
65
|
+
children: [
|
|
66
|
+
n,
|
|
67
|
+
/* @__PURE__ */ u("span", {
|
|
68
|
+
className: q(ve.actions, O.itemActions),
|
|
69
|
+
children: e
|
|
70
|
+
}),
|
|
71
|
+
c === "check" && o && /* @__PURE__ */ u(ft, {
|
|
72
|
+
className: q(ve.checkIndicator, O.itemDecoration),
|
|
73
|
+
"aria-hidden": !0
|
|
74
|
+
}),
|
|
75
|
+
d && /* @__PURE__ */ u(mt, {
|
|
76
|
+
className: q(ve.submenuIcon, O.itemDecoration),
|
|
77
|
+
"aria-hidden": !0
|
|
78
|
+
})
|
|
79
|
+
]
|
|
80
|
+
}), Re = ({ id: e, render: t }) => Dt(t) ? t.props.id ?? e : e, ke = (e) => e.getAttribute("aria-label") ?? e.textContent ?? "", Ne = ({ firstElement: e, secondElement: t }) => {
|
|
81
|
+
if (e === t) return 0;
|
|
82
|
+
const r = (e.compareDocumentPosition(t) & Node.DOCUMENT_POSITION_FOLLOWING) !== 0 ? -1 : 1;
|
|
83
|
+
let o = e;
|
|
84
|
+
for (; a(o.parentElement) && !o.parentElement.contains(t); ) o = o.parentElement;
|
|
85
|
+
const i = o.parentElement, c = i?.ownerDocument.defaultView;
|
|
86
|
+
if (!a(i) || !a(c)) return r;
|
|
87
|
+
let s = t;
|
|
88
|
+
for (; a(s.parentElement) && s.parentElement !== i; ) s = s.parentElement;
|
|
89
|
+
if (o === s) return r;
|
|
90
|
+
const d = c.getComputedStyle(i);
|
|
91
|
+
if (!(d.display === "flex" || d.display === "inline-flex")) return r;
|
|
92
|
+
const n = Number(c.getComputedStyle(o).order) - Number(c.getComputedStyle(s).order) || r;
|
|
93
|
+
return d.flexDirection === "column-reverse" ? -n : n;
|
|
94
|
+
}, Ht = "[hidden],[inert]", ae = (e) => !a(e.closest(Ht)), xe = ({ content: e, item: t }) => t.getAttribute("aria-disabled") !== "true" && !t.hasAttribute("disabled") && ae(t) && t.closest("[data-dropdown-content]") === e, ge = (e) => Array.from(e.querySelectorAll("[data-dropdown-item]")).filter((t) => xe({
|
|
95
|
+
content: e,
|
|
96
|
+
item: t
|
|
97
|
+
})).sort((t, r) => Ne({
|
|
98
|
+
firstElement: t,
|
|
99
|
+
secondElement: r
|
|
100
|
+
})), de = Se(void 0), F = () => {
|
|
101
|
+
const e = pe(de);
|
|
102
|
+
if (!a(e)) throw new Error(ne("Dropdown components must be inside Dropdown.Root"));
|
|
103
|
+
return e;
|
|
104
|
+
}, Fe = ({ id: e, disabled: t, isSubmenuTrigger: r = !1 }) => {
|
|
105
|
+
const o = F(), i = r ? o.parentType : o.type, c = r ? o.parentRowFocus : o.rowFocus, s = i !== "panel" && (c?.rowIds?.includes(e) ?? !0);
|
|
106
|
+
return { tabIndex: t || s && c?.tabStopRowId !== e ? -1 : 0 };
|
|
107
|
+
}, Ze = ({ color: e, startIcon: t, endIcon: r, description: o, descriptionPlacement: i, shortcut: c, shortcutJoinLabel: s, hasSubmenu: d, actions: n, actionsVisibility: l, children: p, render: w, disabled: T = !1, nativeButton: g = !a(w), closeOnClick: f = !0, onClick: _, page: R, id: v, ...m }) => {
|
|
108
|
+
const { type: S, closeTree: h, goToPage: b } = F(), k = Te(), N = Re({
|
|
109
|
+
id: v,
|
|
110
|
+
render: w
|
|
111
|
+
}), L = N ?? k, B = Fe({
|
|
112
|
+
id: L,
|
|
113
|
+
disabled: T
|
|
114
|
+
}), C = We(n), P = d ?? a(R), x = /* @__PURE__ */ u(Ye, {
|
|
115
|
+
...m,
|
|
116
|
+
id: L,
|
|
117
|
+
disabled: T,
|
|
118
|
+
nativeButton: g,
|
|
119
|
+
role: m.role ?? (S === "menu" ? "menuitem" : void 0),
|
|
120
|
+
tabIndex: B.tabIndex,
|
|
121
|
+
"data-dropdown-item": "",
|
|
122
|
+
"data-dropdown-page": R,
|
|
123
|
+
onClick: (I) => {
|
|
124
|
+
if (_?.(I), !I.defaultPrevented) {
|
|
125
|
+
if (a(R)) {
|
|
126
|
+
const A = I.currentTarget.closest("[data-dropdown-content]");
|
|
127
|
+
if (!a(A)) return;
|
|
128
|
+
b({
|
|
129
|
+
id: R,
|
|
130
|
+
trigger: {
|
|
131
|
+
id: N,
|
|
132
|
+
index: ge(A).indexOf(I.currentTarget),
|
|
133
|
+
page: R,
|
|
134
|
+
label: ke(I.currentTarget)
|
|
135
|
+
}
|
|
136
|
+
});
|
|
137
|
+
return;
|
|
138
|
+
}
|
|
139
|
+
f && h();
|
|
140
|
+
}
|
|
141
|
+
},
|
|
142
|
+
render: (I) => {
|
|
143
|
+
const A = Oe({
|
|
144
|
+
nativeButton: g,
|
|
145
|
+
renderProps: I
|
|
146
|
+
});
|
|
147
|
+
return /* @__PURE__ */ u(Ee, {
|
|
148
|
+
...I,
|
|
149
|
+
render: /* @__PURE__ */ u(Je, {
|
|
150
|
+
render: w,
|
|
151
|
+
disabled: A
|
|
152
|
+
}),
|
|
153
|
+
className: q(I.className, C && O.itemWithActionsPrimary),
|
|
154
|
+
disabled: T,
|
|
155
|
+
color: e,
|
|
156
|
+
startIcon: t,
|
|
157
|
+
endIcon: r,
|
|
158
|
+
actionsVisibility: l,
|
|
159
|
+
description: o,
|
|
160
|
+
descriptionPlacement: i,
|
|
161
|
+
shortcut: c,
|
|
162
|
+
shortcutJoinLabel: s,
|
|
163
|
+
hasSubmenu: !C && P,
|
|
164
|
+
children: p
|
|
165
|
+
});
|
|
166
|
+
}
|
|
167
|
+
});
|
|
168
|
+
return C ? /* @__PURE__ */ u(Qe, {
|
|
169
|
+
actions: n,
|
|
170
|
+
actionsVisibility: l,
|
|
171
|
+
color: e,
|
|
172
|
+
disabled: T,
|
|
173
|
+
hasSubmenu: P,
|
|
174
|
+
children: x
|
|
175
|
+
}) : x;
|
|
176
|
+
}, $t = ({ children: e = ne("Back"), className: t, onClick: r, ...o }) => {
|
|
177
|
+
const { goBack: i, canGoBack: c } = F();
|
|
178
|
+
return /* @__PURE__ */ u(Ze, {
|
|
179
|
+
...o,
|
|
180
|
+
className: q(O.back, t),
|
|
181
|
+
"data-dropdown-back": "",
|
|
182
|
+
disabled: o.disabled || !c,
|
|
183
|
+
startIcon: /* @__PURE__ */ u(ut, { className: O.backIcon }),
|
|
184
|
+
closeOnClick: !1,
|
|
185
|
+
onClick: (s) => {
|
|
186
|
+
r?.(s), !s.defaultPrevented && i();
|
|
187
|
+
},
|
|
188
|
+
children: e
|
|
189
|
+
});
|
|
190
|
+
}, Yt = "_button_1qwl0_1", jt = "_tooltipAnchor_1qwl0_29", Xt = "_icon_1qwl0_33", Ie = {
|
|
191
|
+
button: Yt,
|
|
192
|
+
tooltipAnchor: jt,
|
|
193
|
+
icon: Xt
|
|
194
|
+
}, Jt = ({ children: e, size: t, shape: r = "square", className: o, tooltip: i, tooltipPlace: c = "bottom", tooltipDelay: s = 1e3, tooltipOffset: d = 5, disabled: n, loading: l, ...p }) => {
|
|
195
|
+
const w = pe(ze), T = t ?? w?.size ?? "md", g = ye(i), f = n || l, _ = /* @__PURE__ */ u(wt, {
|
|
196
|
+
...p,
|
|
197
|
+
size: T === "xs" ? "sm" : T,
|
|
198
|
+
"data-icon-size": T,
|
|
199
|
+
"data-shape": r,
|
|
200
|
+
disabled: n,
|
|
201
|
+
loading: l,
|
|
202
|
+
startIcon: /* @__PURE__ */ u("span", {
|
|
203
|
+
className: Ie.icon,
|
|
204
|
+
children: e
|
|
205
|
+
}),
|
|
206
|
+
className: Z(Ie.button, o)
|
|
207
|
+
});
|
|
208
|
+
return g ? /* @__PURE__ */ u(ht, {
|
|
209
|
+
content: i,
|
|
210
|
+
delay: s,
|
|
211
|
+
side: c,
|
|
212
|
+
sideOffset: d,
|
|
213
|
+
children: f ? /* @__PURE__ */ u("span", {
|
|
214
|
+
className: Ie.tooltipAnchor,
|
|
215
|
+
children: _
|
|
216
|
+
}) : _
|
|
217
|
+
}) : _;
|
|
218
|
+
}, Qt = "_button_prhtf_1", Zt = { button: Qt }, er = ({ className: e, emphasis: t = "standard", size: r, variant: o, ...i }) => {
|
|
219
|
+
const c = pe(ze), s = r ?? c?.size ?? "sm", d = o ?? c?.variant ?? "ghost";
|
|
220
|
+
return /* @__PURE__ */ u(Jt, {
|
|
221
|
+
...i,
|
|
222
|
+
size: s,
|
|
223
|
+
variant: d,
|
|
224
|
+
"data-emphasis": t,
|
|
225
|
+
className: Z(Zt.button, e)
|
|
226
|
+
});
|
|
227
|
+
}, tr = ({ render: e, children: t, "aria-label": r, ...o }) => /* @__PURE__ */ u(je.Close, {
|
|
228
|
+
...o,
|
|
229
|
+
"aria-label": r,
|
|
230
|
+
render: e ?? /* @__PURE__ */ u(er, {
|
|
231
|
+
size: "sm",
|
|
232
|
+
"aria-label": r,
|
|
233
|
+
children: t ?? /* @__PURE__ */ u(pt, {})
|
|
234
|
+
}),
|
|
235
|
+
children: a(e) ? t : void 0
|
|
236
|
+
}), rr = Se(void 0), ce = () => null, or = {
|
|
237
|
+
open: ce,
|
|
238
|
+
side: ce,
|
|
239
|
+
align: ce,
|
|
240
|
+
instant: ce,
|
|
241
|
+
transitionStatus: ce
|
|
242
|
+
}, nr = ({ props: e, state: t, render: r }) => {
|
|
243
|
+
const o = ue({
|
|
244
|
+
defaultTagName: "div",
|
|
245
|
+
props: { ...e },
|
|
246
|
+
state: { ...t },
|
|
247
|
+
stateAttributesMapping: or,
|
|
248
|
+
render: r
|
|
249
|
+
});
|
|
250
|
+
return /* @__PURE__ */ u(rr.Provider, {
|
|
251
|
+
value: {
|
|
252
|
+
side: t.side,
|
|
253
|
+
align: t.align
|
|
254
|
+
},
|
|
255
|
+
children: o
|
|
256
|
+
});
|
|
257
|
+
}, De = (e) => Array.from(e.querySelectorAll("[data-dropdown-search]:not(:disabled)")).find((t) => t.closest("[data-dropdown-content]") === e && ae(t)) ?? null, Le = ({ content: e, target: t, edge: r = "first", type: o }) => {
|
|
258
|
+
const i = a(t?.id) ? e.ownerDocument.getElementById(t.id) : null;
|
|
259
|
+
if (a(i) && xe({
|
|
260
|
+
content: e,
|
|
261
|
+
item: i
|
|
262
|
+
})) return i;
|
|
263
|
+
const c = ge(e), s = a(t) ? c.filter((f) => f.dataset.dropdownPage === t.page) : [], [d] = s;
|
|
264
|
+
if (s.length === 1 && a(d)) return d;
|
|
265
|
+
const n = ye(t?.label) ? s.filter((f) => ke(f) === t?.label) : [], [l] = n;
|
|
266
|
+
if (n.length === 1 && a(l)) return l;
|
|
267
|
+
const p = a(t) ? c[t.index] : void 0;
|
|
268
|
+
if (a(p)) return p;
|
|
269
|
+
const w = Array.from(e.querySelectorAll('input:not(:disabled):not([type="hidden"]),button:not(:disabled),textarea:not(:disabled),select:not(:disabled),a[href],[tabindex="0"]')).find(ae), T = Array.from(e.querySelectorAll("[data-dropdown-page-type]")).find((f) => f.closest("[data-dropdown-content]") === e && ae(f))?.dataset.dropdownPageType ?? o ?? e.dataset.type;
|
|
270
|
+
if (T === "panel") return w ?? e;
|
|
271
|
+
const g = De(e);
|
|
272
|
+
return a(g) ? g : r === "last" ? c[c.length - 1] ?? w ?? e : (T === "picker" ? c.find((f) => f.hasAttribute("data-dropdown-option-item") && (f.getAttribute("aria-selected") === "true" || f.getAttribute("aria-pressed") === "true" || f.getAttribute("aria-checked") === "true" || f.getAttribute("aria-current") === "true")) : void 0) ?? c.find((f) => !f.hasAttribute("data-dropdown-back")) ?? c[0] ?? w ?? e;
|
|
273
|
+
}, ar = ({ contentRef: e }) => {
|
|
274
|
+
const { open: t, pageId: r, pageFocusRequest: o, setPageFocusRequest: i } = F();
|
|
275
|
+
return fe(() => {
|
|
276
|
+
a(o) && (i(void 0), !(!t || o.pageId !== r || !a(e.current)) && Le({
|
|
277
|
+
content: e.current,
|
|
278
|
+
target: o.target
|
|
279
|
+
}).focus());
|
|
280
|
+
}, [
|
|
281
|
+
e,
|
|
282
|
+
t,
|
|
283
|
+
r,
|
|
284
|
+
o,
|
|
285
|
+
i
|
|
286
|
+
]), null;
|
|
287
|
+
}, et = ({ content: e, item: t }) => t.hasAttribute("data-dropdown-item") && xe({
|
|
288
|
+
content: e,
|
|
289
|
+
item: t
|
|
290
|
+
}) && (!t.hasAttribute("data-dropdown-back") || !a(De(e))), tt = (e) => ge(e).filter((t) => et({
|
|
291
|
+
content: e,
|
|
292
|
+
item: t
|
|
293
|
+
})), le = (e) => {
|
|
294
|
+
if (e.dataset.type === "panel") return;
|
|
295
|
+
const t = De(e);
|
|
296
|
+
if (!(!a(t) || t !== e.ownerDocument.activeElement || !ye(t.value.trim())))
|
|
297
|
+
return ge(e).find((r) => r.hasAttribute("data-dropdown-option-item"));
|
|
298
|
+
}, ir = ({ content: e }) => {
|
|
299
|
+
const { setRowIds: t, setSearchTargetId: r } = F();
|
|
300
|
+
return fe(() => {
|
|
301
|
+
if (!a(e)) return;
|
|
302
|
+
const o = () => {
|
|
303
|
+
const c = tt(e).map((s) => s.id);
|
|
304
|
+
t((s) => a(s) && At(s, c) ? s : c), r(le(e)?.id);
|
|
305
|
+
};
|
|
306
|
+
o();
|
|
307
|
+
const i = new MutationObserver(o);
|
|
308
|
+
return i.observe(e, {
|
|
309
|
+
childList: !0,
|
|
310
|
+
subtree: !0,
|
|
311
|
+
attributes: !0,
|
|
312
|
+
attributeFilter: [
|
|
313
|
+
"disabled",
|
|
314
|
+
"aria-disabled",
|
|
315
|
+
"id",
|
|
316
|
+
"hidden",
|
|
317
|
+
"inert",
|
|
318
|
+
"class",
|
|
319
|
+
"style"
|
|
320
|
+
]
|
|
321
|
+
}), () => {
|
|
322
|
+
i.disconnect(), t(void 0), r(void 0);
|
|
323
|
+
};
|
|
324
|
+
}, [
|
|
325
|
+
e,
|
|
326
|
+
t,
|
|
327
|
+
r
|
|
328
|
+
]), null;
|
|
329
|
+
}, sr = (e) => (e.ctrlKey || e.metaKey) && !e.defaultPrevented, _e = /* @__PURE__ */ new WeakMap(), rt = {
|
|
330
|
+
activate: ({ item: e, event: t }) => {
|
|
331
|
+
_e.set(e, t);
|
|
332
|
+
try {
|
|
333
|
+
e.click();
|
|
334
|
+
} finally {
|
|
335
|
+
_e.delete(e);
|
|
336
|
+
}
|
|
337
|
+
},
|
|
338
|
+
getEvent: ({ item: e, event: t }) => _e.get(e) ?? t
|
|
339
|
+
}, Ue = (e) => Array.from(e.ownerDocument.querySelectorAll("[aria-controls]")).find((t) => t.getAttribute("aria-controls") === e.id && ae(t)), cr = 'a[href],button,input:not([type="hidden"]),select,textarea,[tabindex]', ot = ({ content: e, target: t, shiftKey: r }) => {
|
|
340
|
+
const o = Array.from(e.querySelectorAll(cr)).filter((d) => Number(d.getAttribute("data-tabindex") ?? d.tabIndex) >= 0 && !d.matches(':disabled,[aria-disabled="true"]') && ae(d) && d.closest("[data-dropdown-content]") === e), i = [...o].sort((d, n) => Ne({
|
|
341
|
+
firstElement: d,
|
|
342
|
+
secondElement: n
|
|
343
|
+
})), c = o.some((d, n) => d !== i[n]), s = a(t) ? i.indexOf(t) : -1;
|
|
344
|
+
if (!(!c || a(t) && s < 0))
|
|
345
|
+
return { target: i[s + (r ? -1 : 1)] };
|
|
346
|
+
}, dr = ({ rowCells: e, column: t, isEnabledCell: r }) => {
|
|
347
|
+
const o = Math.min(t, e.length - 1);
|
|
348
|
+
for (let i = 0; i < e.length; i++) {
|
|
349
|
+
const c = [e[o - i], e[o + i]].find(r);
|
|
350
|
+
if (a(c)) return c;
|
|
351
|
+
}
|
|
352
|
+
}, nt = ({ key: e, items: t, currentItem: r, search: o, isRightToLeft: i }) => {
|
|
353
|
+
const c = r?.closest("[data-dropdown-columns]"), s = Number(c?.dataset.dropdownColumns), d = ne([
|
|
354
|
+
"ArrowUp",
|
|
355
|
+
"ArrowDown",
|
|
356
|
+
"ArrowLeft",
|
|
357
|
+
"ArrowRight"
|
|
358
|
+
]).includes(e);
|
|
359
|
+
if (!a(c) || !a(r) || !d || !$e(s)) return;
|
|
360
|
+
const n = Array.from(c.children).filter((m) => m instanceof HTMLElement && !m.hasAttribute("data-dropdown-section-label")), l = n.indexOf(r);
|
|
361
|
+
if (l < 0) return;
|
|
362
|
+
const p = Math.floor(l / s), w = l % s, T = e === "ArrowUp" || e === "ArrowDown", g = ne(i ? "ArrowLeft" : "ArrowRight"), f = e === "ArrowDown" || e === g ? 1 : -1, _ = Math.ceil(n.length / s), R = new Set(t), v = (m) => a(m) && R.has(m);
|
|
363
|
+
if (T) {
|
|
364
|
+
for (let h = p + f; h >= 0 && h < _; h += f) {
|
|
365
|
+
const b = n[Math.min(h * s + w, n.length - 1)];
|
|
366
|
+
if (v(b)) return b;
|
|
367
|
+
}
|
|
368
|
+
for (let h = p + f; h >= 0 && h < _; h += f) {
|
|
369
|
+
const b = dr({
|
|
370
|
+
rowCells: n.slice(h * s, (h + 1) * s),
|
|
371
|
+
column: w,
|
|
372
|
+
isEnabledCell: v
|
|
373
|
+
});
|
|
374
|
+
if (a(b)) return b;
|
|
375
|
+
}
|
|
376
|
+
const m = n.filter(v), S = f < 0 ? m[0] : m[m.length - 1];
|
|
377
|
+
return (a(S) ? t[t.indexOf(S) + f] : void 0) ?? (f < 0 ? o : void 0) ?? r;
|
|
378
|
+
}
|
|
379
|
+
for (let m = w + f; m >= 0 && m < s; m += f) {
|
|
380
|
+
const S = n[p * s + m];
|
|
381
|
+
if (v(S)) return S;
|
|
382
|
+
}
|
|
383
|
+
return r;
|
|
384
|
+
}, lr = ({ key: e, items: t, currentIndex: r, search: o, isSearch: i, isRightToLeft: c = !1 }) => {
|
|
385
|
+
const s = nt({
|
|
386
|
+
key: e,
|
|
387
|
+
items: t,
|
|
388
|
+
currentItem: t[r],
|
|
389
|
+
search: o,
|
|
390
|
+
isRightToLeft: c
|
|
391
|
+
});
|
|
392
|
+
if (a(s)) return s;
|
|
393
|
+
const d = t.length - 1, n = t[d], l = a(o) && a(n) && Ne({
|
|
394
|
+
firstElement: n,
|
|
395
|
+
secondElement: o
|
|
396
|
+
}) < 0;
|
|
397
|
+
if (e === "ArrowDown" && r === d && l) return o ?? void 0;
|
|
398
|
+
if (e === "ArrowDown") return t[r === d ? 0 : r + 1];
|
|
399
|
+
if (e === "ArrowUp" && r === 0 && a(o) && !l) return o;
|
|
400
|
+
if (e === "ArrowUp") return t[r <= 0 ? d : r - 1];
|
|
401
|
+
if (!i && e === "Home") return t[0];
|
|
402
|
+
if (!i && e === "End") return t[d];
|
|
403
|
+
}, ur = 500, pr = 229, fr = () => {
|
|
404
|
+
const { type: e, isSubmenu: t, setOpen: r, closeTree: o, tabForwardOutOfTree: i } = F(), c = Xe(), [s, d] = M({
|
|
405
|
+
text: "",
|
|
406
|
+
timestamp: 0
|
|
407
|
+
});
|
|
408
|
+
return (n) => {
|
|
409
|
+
if (n.defaultPrevented || n.nativeEvent.isComposing || n.nativeEvent.keyCode === pr) return;
|
|
410
|
+
const l = n.currentTarget, p = n.target;
|
|
411
|
+
if (!(p instanceof HTMLElement) || p.closest("[data-dropdown-content]") !== l) return;
|
|
412
|
+
const w = p.matches('input,textarea,select,[contenteditable="true"]'), T = c === "rtl", g = ne(T ? "ArrowRight" : "ArrowLeft"), f = t && !w && n.key === g, _ = f && e !== "panel" ? nt({
|
|
413
|
+
key: n.key,
|
|
414
|
+
items: ge(l),
|
|
415
|
+
currentItem: p,
|
|
416
|
+
search: null,
|
|
417
|
+
isRightToLeft: T
|
|
418
|
+
}) : void 0, R = a(_) && _ !== p;
|
|
419
|
+
if (t && (n.key === "Escape" || f && !R)) {
|
|
420
|
+
n.preventDefault(), n.stopPropagation(), Ue(l)?.focus(), r(!1);
|
|
421
|
+
return;
|
|
422
|
+
}
|
|
423
|
+
if (e === "panel") return;
|
|
424
|
+
const v = e === "picker" && n.key === "Tab" ? ot({
|
|
425
|
+
content: l,
|
|
426
|
+
target: p,
|
|
427
|
+
shiftKey: n.shiftKey
|
|
428
|
+
}) : void 0;
|
|
429
|
+
if (a(v) && n.preventDefault(), a(v?.target)) {
|
|
430
|
+
v.target.focus();
|
|
431
|
+
return;
|
|
432
|
+
}
|
|
433
|
+
const m = a(v) && n.shiftKey ? Ue(l) : void 0;
|
|
434
|
+
if (a(m)) {
|
|
435
|
+
m.focus();
|
|
436
|
+
return;
|
|
437
|
+
}
|
|
438
|
+
if (a(v) && n.shiftKey) {
|
|
439
|
+
o(n.nativeEvent);
|
|
440
|
+
return;
|
|
441
|
+
}
|
|
442
|
+
if (a(v)) {
|
|
443
|
+
i({
|
|
444
|
+
ownerDocument: l.ownerDocument,
|
|
445
|
+
tabOutEvent: n.nativeEvent
|
|
446
|
+
});
|
|
447
|
+
return;
|
|
448
|
+
}
|
|
449
|
+
if (e === "menu" && n.key === "Tab" && n.shiftKey) {
|
|
450
|
+
n.preventDefault(), o(n.nativeEvent);
|
|
451
|
+
return;
|
|
452
|
+
}
|
|
453
|
+
if (e === "menu" && n.key === "Tab" && t) {
|
|
454
|
+
n.preventDefault(), i({
|
|
455
|
+
ownerDocument: l.ownerDocument,
|
|
456
|
+
tabOutEvent: n.nativeEvent
|
|
457
|
+
});
|
|
458
|
+
return;
|
|
459
|
+
}
|
|
460
|
+
const S = De(l), h = p === S;
|
|
461
|
+
if (w && !h) return;
|
|
462
|
+
const b = tt(l), k = h && n.key === "Enter" ? le(l) : void 0;
|
|
463
|
+
if (a(k)) {
|
|
464
|
+
n.preventDefault(), rt.activate({
|
|
465
|
+
item: k,
|
|
466
|
+
event: n.nativeEvent
|
|
467
|
+
});
|
|
468
|
+
return;
|
|
469
|
+
}
|
|
470
|
+
const N = b.indexOf(p), L = lr({
|
|
471
|
+
key: n.key,
|
|
472
|
+
items: b,
|
|
473
|
+
currentIndex: N,
|
|
474
|
+
search: S,
|
|
475
|
+
isSearch: h,
|
|
476
|
+
isRightToLeft: T
|
|
477
|
+
});
|
|
478
|
+
if (a(L)) {
|
|
479
|
+
n.preventDefault(), L.focus();
|
|
480
|
+
return;
|
|
481
|
+
}
|
|
482
|
+
if (w || n.key.length !== 1 || n.key === " " || n.altKey || n.ctrlKey || n.metaKey) return;
|
|
483
|
+
const B = Date.now(), C = B - s.timestamp > ur ? n.key : s.text + n.key;
|
|
484
|
+
d({
|
|
485
|
+
text: C,
|
|
486
|
+
timestamp: B
|
|
487
|
+
});
|
|
488
|
+
const P = ([...C].every((I) => I === C[0]) ? n.key : C).toLocaleLowerCase(), x = [...b.slice(N + 1), ...b.slice(0, N + 1)].find((I) => ke(I).trim().toLocaleLowerCase().startsWith(P));
|
|
489
|
+
a(x) && (n.preventDefault(), x.focus());
|
|
490
|
+
};
|
|
491
|
+
}, mr = ({ side: e, align: t = "start", sideOffset: r = 0, alignOffset: o, anchor: i, collisionPadding: c, container: s, keepMounted: d, width: n = 200, className: l, style: p, render: w, children: T, initialFocus: g, finalFocus: f, onKeyDown: _, onFocus: R, onInput: v, onClick: m, onMouseDown: S, onPointerDown: h, "aria-label": b, "aria-labelledby": k, ref: N, ...L }) => {
|
|
492
|
+
const B = F(), { type: C, isPageActive: P, sessionId: x, isSubmenu: I, rowFocus: A, initialFocusEdge: U, focusOnOpen: G, triggerId: H, titleId: te, setSearchTargetId: Q } = B, $ = Ce(null), [ie, Y] = M(null), se = me($, N, Y), z = fr(), re = a(b) ? void 0 : te ?? H;
|
|
493
|
+
return /* @__PURE__ */ ee(_t, { children: [
|
|
494
|
+
/* @__PURE__ */ u(oe.Portal, {
|
|
495
|
+
container: s,
|
|
496
|
+
keepMounted: d,
|
|
497
|
+
children: /* @__PURE__ */ u(oe.Positioner, {
|
|
498
|
+
className: P ? void 0 : O.inactivePositioner,
|
|
499
|
+
inert: !P || void 0,
|
|
500
|
+
side: e ?? (I ? "inline-end" : "bottom"),
|
|
501
|
+
align: t,
|
|
502
|
+
sideOffset: r,
|
|
503
|
+
alignOffset: o,
|
|
504
|
+
anchor: i,
|
|
505
|
+
collisionPadding: c,
|
|
506
|
+
children: /* @__PURE__ */ u(oe.Popup, {
|
|
507
|
+
...L,
|
|
508
|
+
ref: se,
|
|
509
|
+
render: (y, V) => /* @__PURE__ */ u(nr, {
|
|
510
|
+
props: y,
|
|
511
|
+
state: V,
|
|
512
|
+
render: w
|
|
513
|
+
}),
|
|
514
|
+
role: C === "menu" ? "menu" : "dialog",
|
|
515
|
+
"aria-label": b,
|
|
516
|
+
"aria-labelledby": k ?? re,
|
|
517
|
+
"data-dropdown-content": "",
|
|
518
|
+
"data-type": C,
|
|
519
|
+
className: Z(O.content, l),
|
|
520
|
+
style: (y) => ({
|
|
521
|
+
width: n,
|
|
522
|
+
...yt(p) ? p(y) : p
|
|
523
|
+
}),
|
|
524
|
+
initialFocus: g ?? (() => G ? a($.current) ? Le({
|
|
525
|
+
content: $.current,
|
|
526
|
+
edge: U,
|
|
527
|
+
type: C
|
|
528
|
+
}) : !0 : !1),
|
|
529
|
+
finalFocus: P ? f : !1,
|
|
530
|
+
onKeyDown: (y) => {
|
|
531
|
+
_?.(y), z(y), sr(y) || y.stopPropagation();
|
|
532
|
+
},
|
|
533
|
+
onFocus: (y) => {
|
|
534
|
+
R?.(y), Q(le(y.currentTarget)?.id);
|
|
535
|
+
const { target: V } = y;
|
|
536
|
+
V instanceof HTMLElement && et({
|
|
537
|
+
content: y.currentTarget,
|
|
538
|
+
item: V
|
|
539
|
+
}) && A.focusRow(V.id);
|
|
540
|
+
},
|
|
541
|
+
onInput: (y) => {
|
|
542
|
+
v?.(y), Q(le(y.currentTarget)?.id);
|
|
543
|
+
},
|
|
544
|
+
onClick: (y) => {
|
|
545
|
+
y.stopPropagation(), m?.(y);
|
|
546
|
+
},
|
|
547
|
+
onMouseDown: (y) => {
|
|
548
|
+
y.stopPropagation(), S?.(y);
|
|
549
|
+
},
|
|
550
|
+
onPointerDown: (y) => {
|
|
551
|
+
y.stopPropagation(), h?.(y);
|
|
552
|
+
},
|
|
553
|
+
children: /* @__PURE__ */ u(de.Provider, {
|
|
554
|
+
value: {
|
|
555
|
+
...B,
|
|
556
|
+
isInsideContent: !0
|
|
557
|
+
},
|
|
558
|
+
children: /* @__PURE__ */ u(Tt, { children: T }, x)
|
|
559
|
+
})
|
|
560
|
+
})
|
|
561
|
+
})
|
|
562
|
+
}),
|
|
563
|
+
/* @__PURE__ */ u(ar, { contentRef: $ }),
|
|
564
|
+
/* @__PURE__ */ u(ir, { content: ie })
|
|
565
|
+
] });
|
|
566
|
+
}, gr = ({ color: e, className: t, ...r }) => /* @__PURE__ */ u(He, {
|
|
567
|
+
...r,
|
|
568
|
+
render: /* @__PURE__ */ u("div", { color: e }),
|
|
569
|
+
size: "sm",
|
|
570
|
+
color: "secondary",
|
|
571
|
+
role: "status",
|
|
572
|
+
"aria-live": "polite",
|
|
573
|
+
className: q(O.status, t)
|
|
574
|
+
}), wr = ({ render: e, ref: t, className: r, ...o }) => ue({
|
|
575
|
+
render: e,
|
|
576
|
+
ref: t,
|
|
577
|
+
props: {
|
|
578
|
+
...o,
|
|
579
|
+
className: q(O.header, r)
|
|
580
|
+
}
|
|
581
|
+
}), hr = ({ color: e, className: t, ...r }) => /* @__PURE__ */ u(He, {
|
|
582
|
+
...r,
|
|
583
|
+
render: /* @__PURE__ */ u("div", { color: e }),
|
|
584
|
+
size: "sm",
|
|
585
|
+
color: "secondary",
|
|
586
|
+
role: "status",
|
|
587
|
+
"aria-live": "polite",
|
|
588
|
+
"aria-busy": "true",
|
|
589
|
+
className: q(O.status, t)
|
|
590
|
+
}), vr = ({ render: e, ref: t, state: r, ...o }) => ue({
|
|
591
|
+
render: e,
|
|
592
|
+
ref: t,
|
|
593
|
+
state: r,
|
|
594
|
+
defaultTagName: "button",
|
|
595
|
+
props: o
|
|
596
|
+
}), Be = Se(void 0), br = ({ event: e, trigger: t }) => {
|
|
597
|
+
let r = !1;
|
|
598
|
+
return {
|
|
599
|
+
reason: "item-press",
|
|
600
|
+
event: e,
|
|
601
|
+
trigger: t,
|
|
602
|
+
cancel: () => {
|
|
603
|
+
r = !0;
|
|
604
|
+
},
|
|
605
|
+
get isCanceled() {
|
|
606
|
+
return r;
|
|
607
|
+
}
|
|
608
|
+
};
|
|
609
|
+
}, yr = ({ type: e, hasSelectionState: t, hasSelectionOwner: r, multiple: o, role: i }) => e === "menu" && t ? o ? "menuitemcheckbox" : "menuitemradio" : e === "menu" ? "menuitem" : e === "picker" && r ? "option" : i, Tr = ({ selection: e, value: t, standaloneSelected: r }) => !a(e) || !a(t) ? r : e.multiple ? e.value.includes(t) : e.value === t, Dr = ({ value: e, selected: t, indicator: r, onSelect: o, closeOnSelect: i, color: c, startIcon: s, endIcon: d, description: n, descriptionPlacement: l, shortcut: p, shortcutJoinLabel: w, hasSubmenu: T, actions: g, actionsVisibility: f, children: _, render: R, disabled: v = !1, nativeButton: m = !a(R), onClick: S, id: h, ...b }) => {
|
|
610
|
+
const { type: k, multiple: N, closeTree: L, searchTargetId: B } = F(), C = pe(Be), P = a(C) && a(e), x = P ? C.multiple : N, I = Tr({
|
|
611
|
+
selection: C,
|
|
612
|
+
value: e,
|
|
613
|
+
standaloneSelected: t
|
|
614
|
+
}), A = k === "menu", U = k === "picker" && P, G = a(I), H = !A && !U && (m || b.role === "button"), te = !A && !U && !H && G && I, Q = yr({
|
|
615
|
+
type: k,
|
|
616
|
+
hasSelectionState: G,
|
|
617
|
+
hasSelectionOwner: P,
|
|
618
|
+
multiple: x,
|
|
619
|
+
role: b.role
|
|
620
|
+
}), $ = x ? "checkbox" : "check", ie = Te(), Y = Re({
|
|
621
|
+
id: h,
|
|
622
|
+
render: R
|
|
623
|
+
}) ?? ie, se = Fe({
|
|
624
|
+
id: Y,
|
|
625
|
+
disabled: v
|
|
626
|
+
}), z = We(g), re = B === Y, y = r ?? (G ? $ : "none"), V = z && y === "check", we = /* @__PURE__ */ u(Ye, {
|
|
627
|
+
...b,
|
|
628
|
+
id: Y,
|
|
629
|
+
disabled: v,
|
|
630
|
+
nativeButton: m,
|
|
631
|
+
role: Q,
|
|
632
|
+
"aria-checked": A && G ? I : void 0,
|
|
633
|
+
"aria-selected": U ? I : void 0,
|
|
634
|
+
"aria-pressed": H && G ? I : void 0,
|
|
635
|
+
"aria-current": te ? "true" : void 0,
|
|
636
|
+
tabIndex: se.tabIndex,
|
|
637
|
+
"data-dropdown-item": "",
|
|
638
|
+
"data-dropdown-option-item": "",
|
|
639
|
+
onClick: (K) => {
|
|
640
|
+
if (S?.(K), K.defaultPrevented) return;
|
|
641
|
+
const j = br({
|
|
642
|
+
event: rt.getEvent({
|
|
643
|
+
item: K.currentTarget,
|
|
644
|
+
event: K.nativeEvent
|
|
645
|
+
}),
|
|
646
|
+
trigger: K.currentTarget
|
|
647
|
+
});
|
|
648
|
+
o?.(j), !(j.isCanceled || K.defaultPrevented) && (P && C.select({
|
|
649
|
+
value: e,
|
|
650
|
+
eventDetails: j
|
|
651
|
+
}), !(j.isCanceled || K.defaultPrevented) && (i ?? (P ? C.closeOnSelect : !x)) && L());
|
|
652
|
+
},
|
|
653
|
+
render: (K) => {
|
|
654
|
+
const j = Oe({
|
|
655
|
+
nativeButton: m,
|
|
656
|
+
renderProps: K
|
|
657
|
+
});
|
|
658
|
+
return /* @__PURE__ */ u(Ee, {
|
|
659
|
+
...K,
|
|
660
|
+
render: /* @__PURE__ */ u(vr, {
|
|
661
|
+
render: R,
|
|
662
|
+
disabled: j,
|
|
663
|
+
state: {
|
|
664
|
+
selected: I ?? !1,
|
|
665
|
+
multiple: x,
|
|
666
|
+
disabled: v
|
|
667
|
+
}
|
|
668
|
+
}),
|
|
669
|
+
className: q(K.className, z && O.itemWithActionsPrimary),
|
|
670
|
+
disabled: v,
|
|
671
|
+
selected: I,
|
|
672
|
+
focused: re,
|
|
673
|
+
indicator: V ? "none" : y,
|
|
674
|
+
color: c,
|
|
675
|
+
startIcon: s,
|
|
676
|
+
endIcon: d,
|
|
677
|
+
actionsVisibility: f,
|
|
678
|
+
description: n,
|
|
679
|
+
descriptionPlacement: l,
|
|
680
|
+
shortcut: p,
|
|
681
|
+
shortcutJoinLabel: w,
|
|
682
|
+
hasSubmenu: !z && T,
|
|
683
|
+
children: _
|
|
684
|
+
});
|
|
685
|
+
}
|
|
686
|
+
});
|
|
687
|
+
return z ? /* @__PURE__ */ u(Qe, {
|
|
688
|
+
actions: g,
|
|
689
|
+
actionsVisibility: f,
|
|
690
|
+
color: c,
|
|
691
|
+
selected: I,
|
|
692
|
+
focused: re,
|
|
693
|
+
indicator: y,
|
|
694
|
+
disabled: v,
|
|
695
|
+
hasSubmenu: T,
|
|
696
|
+
children: we
|
|
697
|
+
}) : we;
|
|
698
|
+
}, Ir = ({ id: e, type: t, isActive: r }) => {
|
|
699
|
+
const { registerPage: o } = F();
|
|
700
|
+
return fe(() => {
|
|
701
|
+
r && o({
|
|
702
|
+
id: e,
|
|
703
|
+
type: t
|
|
704
|
+
});
|
|
705
|
+
}, [
|
|
706
|
+
e,
|
|
707
|
+
t,
|
|
708
|
+
r,
|
|
709
|
+
o
|
|
710
|
+
]), null;
|
|
711
|
+
}, _r = ({ id: e, type: t, children: r }) => {
|
|
712
|
+
const o = F(), { registerTitle: i } = o, [c, s] = M(), d = o.isPageActive && o.pageId === e, n = d && o.open, l = J((p) => d ? i(p) : () => {
|
|
713
|
+
}, [d, i]);
|
|
714
|
+
return n && c !== e && s(e), c !== e && !n ? null : /* @__PURE__ */ ee(de.Provider, {
|
|
715
|
+
value: {
|
|
716
|
+
...o,
|
|
717
|
+
type: t ?? o.rootType,
|
|
718
|
+
isPageActive: d,
|
|
719
|
+
registerTitle: l
|
|
720
|
+
},
|
|
721
|
+
children: [/* @__PURE__ */ u("div", {
|
|
722
|
+
hidden: !d,
|
|
723
|
+
inert: !d,
|
|
724
|
+
className: O.page,
|
|
725
|
+
"data-dropdown-page-type": t ?? o.rootType,
|
|
726
|
+
children: r
|
|
727
|
+
}), /* @__PURE__ */ u(Ir, {
|
|
728
|
+
id: e,
|
|
729
|
+
type: t,
|
|
730
|
+
isActive: d
|
|
731
|
+
})]
|
|
732
|
+
});
|
|
733
|
+
}, Ar = ({ open: e, registerOpenNestedRoot: t }) => (It(() => {
|
|
734
|
+
if (e)
|
|
735
|
+
return t?.();
|
|
736
|
+
}, [e, t]), null), Er = ({ rowIds: e = [], focusedRowId: t }) => a(t) && e.includes(t) ? t : e[0], Sr = "data-base-ui-focus-guard", Cr = (e) => {
|
|
737
|
+
const t = e?.nextElementSibling;
|
|
738
|
+
if (!(!(t instanceof HTMLElement) || !t.hasAttribute(Sr)))
|
|
739
|
+
return t;
|
|
740
|
+
}, Pr = (e) => e instanceof FocusEvent ? e.type === "focusout" && e.relatedTarget instanceof Element ? e.relatedTarget : null : e.target instanceof Element ? e.target : null, Ae = ({ onDismiss: e, event: t, target: r = Pr(t) }) => {
|
|
741
|
+
if (!a(e)) return !1;
|
|
742
|
+
let o = !1;
|
|
743
|
+
return e({
|
|
744
|
+
target: r,
|
|
745
|
+
type: t.type,
|
|
746
|
+
preventDefault: () => {
|
|
747
|
+
o = !0;
|
|
748
|
+
}
|
|
749
|
+
}), o;
|
|
750
|
+
}, Ve = () => {
|
|
751
|
+
const [e, t] = M();
|
|
752
|
+
return [e, J((r) => (t(r), () => t((o) => o === r ? void 0 : o)), [])];
|
|
753
|
+
}, Or = () => {
|
|
754
|
+
const [e, t] = M(() => /* @__PURE__ */ new Map());
|
|
755
|
+
return {
|
|
756
|
+
selections: e,
|
|
757
|
+
initializeSelection: J(({ id: r, state: o }) => {
|
|
758
|
+
t((i) => i.get(r)?.multiple === o.multiple ? i : new Map(i).set(r, o));
|
|
759
|
+
}, []),
|
|
760
|
+
updateSelection: J(({ id: r, state: o }) => {
|
|
761
|
+
t((i) => new Map(i).set(r, o));
|
|
762
|
+
}, [])
|
|
763
|
+
};
|
|
764
|
+
}, at = ({ children: e, type: t, open: r, defaultOpen: o = !1, onOpenChange: i, onEscapeKeyDown: c, onInteractOutside: s, multiple: d = !1, defaultPage: n = "root", isSubmenu: l = !1 }) => {
|
|
765
|
+
const p = pe(de), w = Or(), { selections: T, initializeSelection: g, updateSelection: f } = l && a(p) ? p : w, _ = Ce(0), R = J(() => (_.current += 1, () => {
|
|
766
|
+
_.current -= 1;
|
|
767
|
+
}), []), [v, m] = M(o), S = !a(p) || p.isPageActive && (!p.isInsideContent || p.open), h = S && (r ?? v), [b, k] = M(h), [N, L] = M(0), [{ history: B, focusRequest: C }, P] = M({ history: [{ id: n }] }), x = J((D) => {
|
|
768
|
+
P((E) => E.focusRequest === D ? E : {
|
|
769
|
+
...E,
|
|
770
|
+
focusRequest: D
|
|
771
|
+
});
|
|
772
|
+
}, []), [I, A] = M(), [U, G] = M(), [H, te] = M(), Q = B[B.length - 1], $ = Q?.id, [ie, Y] = M("first"), [se, z] = M(!0), [re, y] = M(), [V, we] = Ve(), [K, j] = Ve(), Ge = h && !b, Ke = !h && b;
|
|
773
|
+
!S && v && !a(r) && m(!1), (Ge || Ke) && k(h), Ge && (L(N + 1), P({ history: [{ id: n }] }), A(void 0), te(void 0), G(void 0)), Ke && (Y("first"), z(!0), y(void 0));
|
|
774
|
+
const he = (D) => {
|
|
775
|
+
a(r) || m(D), i?.(D);
|
|
776
|
+
}, qe = (D) => {
|
|
777
|
+
a(D) && Ae({
|
|
778
|
+
onDismiss: s,
|
|
779
|
+
event: D,
|
|
780
|
+
target: null
|
|
781
|
+
}) || (he(!1), l && p?.closeTree(D));
|
|
782
|
+
}, it = ({ ownerDocument: D, tabOutEvent: E }) => {
|
|
783
|
+
const W = a(V) ? D.getElementById(V) : null;
|
|
784
|
+
if (l && a(p)) {
|
|
785
|
+
he(!1), W?.focus(), p.tabForwardOutOfTree({
|
|
786
|
+
ownerDocument: D,
|
|
787
|
+
tabOutEvent: E
|
|
788
|
+
});
|
|
789
|
+
return;
|
|
790
|
+
}
|
|
791
|
+
const X = Cr(W);
|
|
792
|
+
if (!a(X)) {
|
|
793
|
+
qe(E);
|
|
794
|
+
return;
|
|
795
|
+
}
|
|
796
|
+
X.focus();
|
|
797
|
+
}, st = ({ id: D, trigger: E }) => {
|
|
798
|
+
P((W) => ({
|
|
799
|
+
history: [...W.history, {
|
|
800
|
+
id: D,
|
|
801
|
+
trigger: E
|
|
802
|
+
}],
|
|
803
|
+
focusRequest: { pageId: D }
|
|
804
|
+
}));
|
|
805
|
+
}, ct = () => {
|
|
806
|
+
P((D) => {
|
|
807
|
+
if (D.history[D.history.length - 1] !== Q) return D;
|
|
808
|
+
const E = D.history[D.history.length - 2];
|
|
809
|
+
return a(E) ? {
|
|
810
|
+
history: D.history.slice(0, -1),
|
|
811
|
+
focusRequest: {
|
|
812
|
+
pageId: E.id,
|
|
813
|
+
target: D.history[D.history.length - 1]?.trigger
|
|
814
|
+
}
|
|
815
|
+
} : D;
|
|
816
|
+
});
|
|
817
|
+
}, dt = J(({ id: D, type: E }) => {
|
|
818
|
+
if (!h) return;
|
|
819
|
+
const W = E ?? t;
|
|
820
|
+
A((X) => X?.id === D && X.type === W ? X : {
|
|
821
|
+
id: D,
|
|
822
|
+
type: W
|
|
823
|
+
});
|
|
824
|
+
}, [h, t]);
|
|
825
|
+
return /* @__PURE__ */ u(oe.Root, {
|
|
826
|
+
open: h,
|
|
827
|
+
onOpenChange: (D, E) => {
|
|
828
|
+
if (!S || !D && !h) {
|
|
829
|
+
E.cancel();
|
|
830
|
+
return;
|
|
831
|
+
}
|
|
832
|
+
const W = E.reason === "outside-press" || E.reason === "focus-out";
|
|
833
|
+
if (W && _.current > 0) {
|
|
834
|
+
E.cancel();
|
|
835
|
+
return;
|
|
836
|
+
}
|
|
837
|
+
const X = E.reason === "escape-key" && Ae({
|
|
838
|
+
onDismiss: c,
|
|
839
|
+
event: E.event
|
|
840
|
+
}), lt = W && Ae({
|
|
841
|
+
onDismiss: s,
|
|
842
|
+
event: E.event
|
|
843
|
+
});
|
|
844
|
+
if (X || lt) {
|
|
845
|
+
E.cancel();
|
|
846
|
+
return;
|
|
847
|
+
}
|
|
848
|
+
W && gt(E.event), z(E.reason !== "trigger-hover"), he(D);
|
|
849
|
+
},
|
|
850
|
+
children: /* @__PURE__ */ ee(de.Provider, {
|
|
851
|
+
value: {
|
|
852
|
+
type: a(I) && I.id === $ ? I.type : t,
|
|
853
|
+
rootType: t,
|
|
854
|
+
open: h,
|
|
855
|
+
isPageActive: S,
|
|
856
|
+
isInsideContent: !1,
|
|
857
|
+
sessionId: N,
|
|
858
|
+
multiple: d,
|
|
859
|
+
selections: T,
|
|
860
|
+
initializeSelection: g,
|
|
861
|
+
updateSelection: f,
|
|
862
|
+
isSubmenu: l,
|
|
863
|
+
parentType: p?.type,
|
|
864
|
+
rowFocus: {
|
|
865
|
+
rowIds: U,
|
|
866
|
+
tabStopRowId: Er({
|
|
867
|
+
rowIds: U,
|
|
868
|
+
focusedRowId: H
|
|
869
|
+
}),
|
|
870
|
+
focusRow: te
|
|
871
|
+
},
|
|
872
|
+
parentRowFocus: p?.rowFocus,
|
|
873
|
+
setRowIds: G,
|
|
874
|
+
pageId: $,
|
|
875
|
+
pageFocusRequest: C,
|
|
876
|
+
setPageFocusRequest: x,
|
|
877
|
+
canGoBack: B.length > 1,
|
|
878
|
+
initialFocusEdge: ie,
|
|
879
|
+
setInitialFocusEdge: Y,
|
|
880
|
+
focusOnOpen: se,
|
|
881
|
+
setFocusOnOpen: z,
|
|
882
|
+
setOpen: he,
|
|
883
|
+
closeTree: qe,
|
|
884
|
+
tabForwardOutOfTree: it,
|
|
885
|
+
goToPage: st,
|
|
886
|
+
goBack: ct,
|
|
887
|
+
registerPage: dt,
|
|
888
|
+
registerOpenNestedRoot: R,
|
|
889
|
+
searchTargetId: re,
|
|
890
|
+
setSearchTargetId: y,
|
|
891
|
+
triggerId: V,
|
|
892
|
+
registerTrigger: we,
|
|
893
|
+
titleId: K,
|
|
894
|
+
registerTitle: j
|
|
895
|
+
},
|
|
896
|
+
children: [/* @__PURE__ */ u(Ar, {
|
|
897
|
+
open: h,
|
|
898
|
+
registerOpenNestedRoot: l ? void 0 : p?.registerOpenNestedRoot
|
|
899
|
+
}), /* @__PURE__ */ u(Be.Provider, {
|
|
900
|
+
value: void 0,
|
|
901
|
+
children: e
|
|
902
|
+
})]
|
|
903
|
+
})
|
|
904
|
+
});
|
|
905
|
+
}, Rr = ({ searchRef: e, value: t }) => {
|
|
906
|
+
const { setSearchTargetId: r } = F();
|
|
907
|
+
return fe(() => {
|
|
908
|
+
const o = e.current?.closest("[data-dropdown-content]");
|
|
909
|
+
a(o) && r(le(o)?.id);
|
|
910
|
+
}, [
|
|
911
|
+
e,
|
|
912
|
+
t,
|
|
913
|
+
r
|
|
914
|
+
]), null;
|
|
915
|
+
}, kr = ({ onValueChange: e, onBlur: t, className: r, hasFocusRing: o = !1, value: i, ref: c, ...s }) => {
|
|
916
|
+
const { searchTargetId: d, setSearchTargetId: n } = F(), l = Ce(null), p = me(l, c);
|
|
917
|
+
return /* @__PURE__ */ ee("div", {
|
|
918
|
+
className: O.searchContainer,
|
|
919
|
+
children: [/* @__PURE__ */ u(vt, {
|
|
920
|
+
type: "search",
|
|
921
|
+
autoComplete: "off",
|
|
922
|
+
"aria-activedescendant": d,
|
|
923
|
+
...s,
|
|
924
|
+
ref: p,
|
|
925
|
+
value: i,
|
|
926
|
+
"data-dropdown-search": "",
|
|
927
|
+
variant: "plain",
|
|
928
|
+
hasFocusRing: o,
|
|
929
|
+
className: Z(O.search, r),
|
|
930
|
+
onValueChange: (w) => e?.(w),
|
|
931
|
+
onBlur: (w) => {
|
|
932
|
+
n(void 0), t?.(w);
|
|
933
|
+
}
|
|
934
|
+
}), /* @__PURE__ */ u(Rr, {
|
|
935
|
+
searchRef: l,
|
|
936
|
+
value: i
|
|
937
|
+
})]
|
|
938
|
+
});
|
|
939
|
+
}, Nr = ({ className: e, ...t }) => /* @__PURE__ */ u(Pe.Group, {
|
|
940
|
+
...t,
|
|
941
|
+
className: Z(O.group, e)
|
|
942
|
+
}), xr = ({ className: e, ...t }) => /* @__PURE__ */ u(Pe.GroupLabel, {
|
|
943
|
+
...t,
|
|
944
|
+
className: Z(O.groupLabel, e)
|
|
945
|
+
}), Fr = ({ label: e, scrollable: t, columns: r, style: o, className: i, children: c, ...s }) => {
|
|
946
|
+
const d = $e(r) ? r : void 0;
|
|
947
|
+
return /* @__PURE__ */ ee(Nr, {
|
|
948
|
+
...s,
|
|
949
|
+
"data-scrollable": t || void 0,
|
|
950
|
+
"data-dropdown-columns": d,
|
|
951
|
+
style: {
|
|
952
|
+
...o,
|
|
953
|
+
...a(d) && { gridTemplateColumns: `repeat(${d}, minmax(0, 1fr))` }
|
|
954
|
+
},
|
|
955
|
+
className: q(O.section, i),
|
|
956
|
+
children: [a(e) && /* @__PURE__ */ u(xr, {
|
|
957
|
+
"data-dropdown-section-label": "",
|
|
958
|
+
children: e
|
|
959
|
+
}), c]
|
|
960
|
+
});
|
|
961
|
+
}, Lr = ({ id: e, initialState: t, initializeSelection: r }) => (fe(() => {
|
|
962
|
+
r({
|
|
963
|
+
id: e,
|
|
964
|
+
state: t
|
|
965
|
+
});
|
|
966
|
+
}, [
|
|
967
|
+
e,
|
|
968
|
+
t,
|
|
969
|
+
r
|
|
970
|
+
]), null), Br = ({ props: e, storedState: t }) => e.multiple ? {
|
|
971
|
+
multiple: !0,
|
|
972
|
+
value: e.value ?? (t?.multiple ? t.value : e.defaultValue ?? [])
|
|
973
|
+
} : be(e.value) ? {
|
|
974
|
+
multiple: !1,
|
|
975
|
+
value: t?.multiple === !1 ? t.value : e.defaultValue ?? null
|
|
976
|
+
} : {
|
|
977
|
+
multiple: !1,
|
|
978
|
+
value: e.value
|
|
979
|
+
}, Mr = (e) => {
|
|
980
|
+
const { id: t, multiple: r = !1, value: o, defaultValue: i, onValueChange: c, closeOnSelect: s = !r, render: d, ref: n, className: l, children: p, ...w } = e, { type: T, selections: g, initializeSelection: f, updateSelection: _ } = F(), R = Te(), v = t ?? R, m = Br({
|
|
981
|
+
props: e,
|
|
982
|
+
storedState: g.get(v)
|
|
983
|
+
}), S = ({ value: b, eventDetails: k }) => {
|
|
984
|
+
if (!(!m.multiple && m.value === b)) {
|
|
985
|
+
if (m.multiple && e.multiple) {
|
|
986
|
+
const N = m.value.includes(b) ? m.value.filter((L) => L !== b) : [...m.value, b];
|
|
987
|
+
e.onValueChange?.(N, k), !k.isCanceled && be(o) && _({
|
|
988
|
+
id: v,
|
|
989
|
+
state: {
|
|
990
|
+
multiple: !0,
|
|
991
|
+
value: N
|
|
992
|
+
}
|
|
993
|
+
});
|
|
994
|
+
return;
|
|
995
|
+
}
|
|
996
|
+
e.multiple || (e.onValueChange?.(b, k), !k.isCanceled && be(o) && _({
|
|
997
|
+
id: v,
|
|
998
|
+
state: {
|
|
999
|
+
multiple: !1,
|
|
1000
|
+
value: b
|
|
1001
|
+
}
|
|
1002
|
+
}));
|
|
1003
|
+
}
|
|
1004
|
+
}, h = ue({
|
|
1005
|
+
render: d,
|
|
1006
|
+
ref: n,
|
|
1007
|
+
state: m,
|
|
1008
|
+
props: {
|
|
1009
|
+
...w,
|
|
1010
|
+
id: v,
|
|
1011
|
+
className: q(O.selectionGroup, l),
|
|
1012
|
+
role: T === "picker" ? "listbox" : "group",
|
|
1013
|
+
"aria-multiselectable": T === "picker" ? r : void 0,
|
|
1014
|
+
children: p
|
|
1015
|
+
}
|
|
1016
|
+
});
|
|
1017
|
+
return /* @__PURE__ */ ee(Be.Provider, {
|
|
1018
|
+
value: {
|
|
1019
|
+
...m,
|
|
1020
|
+
closeOnSelect: s,
|
|
1021
|
+
select: S
|
|
1022
|
+
},
|
|
1023
|
+
children: [be(o) && /* @__PURE__ */ u(Lr, {
|
|
1024
|
+
id: v,
|
|
1025
|
+
initialState: m,
|
|
1026
|
+
initializeSelection: f
|
|
1027
|
+
}), h]
|
|
1028
|
+
});
|
|
1029
|
+
}, Gr = ({ className: e, ...t }) => /* @__PURE__ */ u(Pe.Separator, {
|
|
1030
|
+
...t,
|
|
1031
|
+
role: "separator",
|
|
1032
|
+
"data-dropdown-separator": "",
|
|
1033
|
+
className: q(O.separator, e)
|
|
1034
|
+
}), Kr = ({ type: e = "menu", ...t }) => /* @__PURE__ */ u(at, {
|
|
1035
|
+
...t,
|
|
1036
|
+
type: e,
|
|
1037
|
+
isSubmenu: !0
|
|
1038
|
+
}), Me = (e) => J((t) => {
|
|
1039
|
+
if (!(!a(t) || !ye(t.id)))
|
|
1040
|
+
return e(t.id);
|
|
1041
|
+
}, [e]), qr = ({ color: e, startIcon: t, endIcon: r, description: o, descriptionPlacement: i, shortcut: c, shortcutJoinLabel: s, hasSubmenu: d = !0, children: n, render: l, disabled: p = !1, nativeButton: w = !a(l), openOnHover: T = !0, onKeyDown: g, id: f, ref: _, ...R }) => {
|
|
1042
|
+
const v = Xe(), { type: m, rootType: S, parentType: h, open: b, setOpen: k, setFocusOnOpen: N, registerTrigger: L } = F(), B = b ? m : S, C = Te(), P = Re({
|
|
1043
|
+
id: f,
|
|
1044
|
+
render: l
|
|
1045
|
+
}) ?? C, x = Fe({
|
|
1046
|
+
id: P,
|
|
1047
|
+
disabled: p,
|
|
1048
|
+
isSubmenuTrigger: !0
|
|
1049
|
+
}), I = me(_, Me(L));
|
|
1050
|
+
return /* @__PURE__ */ u(oe.Trigger, {
|
|
1051
|
+
...R,
|
|
1052
|
+
ref: I,
|
|
1053
|
+
id: P,
|
|
1054
|
+
disabled: p,
|
|
1055
|
+
nativeButton: w,
|
|
1056
|
+
openOnHover: T,
|
|
1057
|
+
role: h === "menu" ? "menuitem" : void 0,
|
|
1058
|
+
"aria-haspopup": B === "menu" ? "menu" : "dialog",
|
|
1059
|
+
tabIndex: x.tabIndex,
|
|
1060
|
+
"data-dropdown-item": "",
|
|
1061
|
+
onKeyDown: (A) => {
|
|
1062
|
+
if (g?.(A), A.defaultPrevented || p) return;
|
|
1063
|
+
const U = ne(v === "rtl" ? "ArrowLeft" : "ArrowRight");
|
|
1064
|
+
if (A.key === U) {
|
|
1065
|
+
A.preventDefault(), A.stopPropagation(), N(!0);
|
|
1066
|
+
const G = A.currentTarget.getAttribute("aria-controls"), H = a(G) ? A.currentTarget.ownerDocument.getElementById(G) : null;
|
|
1067
|
+
if (b && a(H)) {
|
|
1068
|
+
Le({
|
|
1069
|
+
content: H,
|
|
1070
|
+
type: m
|
|
1071
|
+
}).focus();
|
|
1072
|
+
return;
|
|
1073
|
+
}
|
|
1074
|
+
k(!0);
|
|
1075
|
+
}
|
|
1076
|
+
},
|
|
1077
|
+
render: (A) => {
|
|
1078
|
+
const U = Oe({
|
|
1079
|
+
nativeButton: w,
|
|
1080
|
+
renderProps: A
|
|
1081
|
+
});
|
|
1082
|
+
return /* @__PURE__ */ u(Ee, {
|
|
1083
|
+
...A,
|
|
1084
|
+
render: /* @__PURE__ */ u(Je, {
|
|
1085
|
+
render: l,
|
|
1086
|
+
disabled: U
|
|
1087
|
+
}),
|
|
1088
|
+
disabled: p,
|
|
1089
|
+
color: e,
|
|
1090
|
+
startIcon: t,
|
|
1091
|
+
endIcon: r,
|
|
1092
|
+
description: o,
|
|
1093
|
+
descriptionPlacement: i,
|
|
1094
|
+
shortcut: c,
|
|
1095
|
+
shortcutJoinLabel: s,
|
|
1096
|
+
hasSubmenu: d,
|
|
1097
|
+
children: n
|
|
1098
|
+
});
|
|
1099
|
+
}
|
|
1100
|
+
});
|
|
1101
|
+
}, Ur = ({ className: e, render: t, ref: r, ...o }) => {
|
|
1102
|
+
const { registerTitle: i } = F(), c = me(r, Me(i));
|
|
1103
|
+
return /* @__PURE__ */ u(je.Title, {
|
|
1104
|
+
...o,
|
|
1105
|
+
ref: c,
|
|
1106
|
+
render: t ?? /* @__PURE__ */ u("div", {}),
|
|
1107
|
+
className: Z(O.title, e)
|
|
1108
|
+
});
|
|
1109
|
+
}, Vr = (e) => {
|
|
1110
|
+
const t = e.getAttribute("aria-controls"), r = a(t) ? e.ownerDocument.getElementById(t) : null;
|
|
1111
|
+
if (a(r))
|
|
1112
|
+
return ot({
|
|
1113
|
+
content: r,
|
|
1114
|
+
shiftKey: !1
|
|
1115
|
+
})?.target;
|
|
1116
|
+
}, Wr = ({ onKeyDown: e, onClick: t, ref: r, ...o }) => {
|
|
1117
|
+
const { type: i, rootType: c, open: s, setOpen: d, setInitialFocusEdge: n, setFocusOnOpen: l, registerTrigger: p } = F(), w = s ? i : c, T = me(r, Me(p));
|
|
1118
|
+
return /* @__PURE__ */ u(oe.Trigger, {
|
|
1119
|
+
...o,
|
|
1120
|
+
ref: T,
|
|
1121
|
+
"aria-haspopup": w === "menu" ? "menu" : "dialog",
|
|
1122
|
+
onClick: (g) => {
|
|
1123
|
+
g.stopPropagation(), g.preventDefault(), t?.(g);
|
|
1124
|
+
},
|
|
1125
|
+
onKeyDown: (g) => {
|
|
1126
|
+
if (e?.(g), g.defaultPrevented || g.baseUIHandlerPrevented || o.disabled || w === "panel") return;
|
|
1127
|
+
const f = s && w === "picker" && g.key === "Tab" && !g.shiftKey ? Vr(g.currentTarget) : void 0;
|
|
1128
|
+
if (a(f)) {
|
|
1129
|
+
g.preventDefault(), f.focus();
|
|
1130
|
+
return;
|
|
1131
|
+
}
|
|
1132
|
+
g.key !== "ArrowDown" && g.key !== "ArrowUp" || (g.preventDefault(), l(!0), n(g.key === "ArrowUp" ? "last" : "first"), d(!0));
|
|
1133
|
+
}
|
|
1134
|
+
});
|
|
1135
|
+
}, zr = at, ho = {
|
|
1136
|
+
Root: zr,
|
|
1137
|
+
Trigger: Wr,
|
|
1138
|
+
Content: mr,
|
|
1139
|
+
ActionItem: Ze,
|
|
1140
|
+
OptionItem: Dr,
|
|
1141
|
+
SelectionGroup: Mr,
|
|
1142
|
+
Search: kr,
|
|
1143
|
+
Header: wr,
|
|
1144
|
+
Title: Ur,
|
|
1145
|
+
Close: tr,
|
|
1146
|
+
Page: _r,
|
|
1147
|
+
Back: $t,
|
|
1148
|
+
Submenu: Kr,
|
|
1149
|
+
SubmenuTrigger: qr,
|
|
1150
|
+
Section: Fr,
|
|
1151
|
+
Separator: Gr,
|
|
1152
|
+
Loading: hr,
|
|
1153
|
+
Empty: gr
|
|
1154
|
+
};
|
|
1155
|
+
export {
|
|
1156
|
+
er as a,
|
|
1157
|
+
rr as i,
|
|
1158
|
+
Br as n,
|
|
1159
|
+
Jt as o,
|
|
1160
|
+
Lr as r,
|
|
1161
|
+
F as s,
|
|
1162
|
+
ho as t
|
|
1163
|
+
};
|