@spear-ai/spectral 1.11.3 → 1.12.1

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.
Files changed (123) hide show
  1. package/README.md +4 -0
  2. package/dist/.js +124 -121
  3. package/dist/{Accordion-CDXdSAST.js → Accordion-Cyrb2byI.js} +1 -1
  4. package/dist/Accordion.js +1 -1
  5. package/dist/Alert/AlertBase.js +1 -1
  6. package/dist/Alert.js +3 -3
  7. package/dist/{AnimatePresence-D-9jXfgI.js → AnimatePresence-D9FLxIGV.js} +1 -1
  8. package/dist/Avatar.js +46 -48
  9. package/dist/Badge.js +1 -1
  10. package/dist/Button.js +1 -1
  11. package/dist/ButtonGroup/ButtonGroupButton.js +1 -1
  12. package/dist/ButtonGroup.js +1 -1
  13. package/dist/ButtonIcon.js +1 -1
  14. package/dist/{Calendar-s4lyijkn.js → Calendar-2UVWeLYp.js} +4 -4
  15. package/dist/Checkbox/CheckboxBase.js +1 -1
  16. package/dist/Checkbox.d.ts +10 -3
  17. package/dist/Checkbox.js +55 -35
  18. package/dist/{es2015-YHaMV-St.js → Combination-9q50p_Vu.js} +251 -254
  19. package/dist/Combobox/ComboboxBase.js +492 -3
  20. package/dist/Combobox-Ch5Rxk5v.js +6360 -0
  21. package/dist/Combobox.d.ts +5 -3
  22. package/dist/Combobox.js +3 -143
  23. package/dist/ControlGroup/ControlGroupSelect.d.ts +5 -2
  24. package/dist/ControlGroup/ControlGroupSelect.js +32 -29
  25. package/dist/ControlGroup.d.ts +3 -2
  26. package/dist/ControlGroup.js +41 -33
  27. package/dist/DataCard/Card.js +1 -1
  28. package/dist/DataCard.js +1 -1
  29. package/dist/DateTimePicker/Calendar.js +1 -1
  30. package/dist/DateTimePicker/DateTimeDisplayInput.js +84 -83
  31. package/dist/DateTimePicker/DateTimeInput.js +2 -2
  32. package/dist/DateTimePicker/DateTimeUtils.js +1 -1
  33. package/dist/DateTimePicker/TimePeriodSelect.js +32 -35
  34. package/dist/DateTimePicker/TimePicker.js +2 -2
  35. package/dist/DateTimePicker.d.ts +1 -1
  36. package/dist/DateTimePicker.js +55 -52
  37. package/dist/{DateTimeUtils-DVvG6H-p.js → DateTimeUtils-DrR2JWoU.js} +1 -1
  38. package/dist/Dialog.js +3 -3
  39. package/dist/Drawer.js +1 -1
  40. package/dist/DropdownMenu.d.ts +61 -0
  41. package/dist/DropdownMenu.js +869 -0
  42. package/dist/{HoverCard-CYDsIiVK.js → HoverCard-BGpW6LnA.js} +3 -3
  43. package/dist/HoverCard.js +1 -1
  44. package/dist/Icons/AdjustmentsIcon.d.ts +5 -0
  45. package/dist/Icons/AdjustmentsIcon.js +78 -0
  46. package/dist/Icons/MenuDotsIcon.d.ts +5 -0
  47. package/dist/Icons/MenuDotsIcon.js +36 -0
  48. package/dist/Icons/MenuIcon.d.ts +5 -0
  49. package/dist/Icons/MenuIcon.js +36 -0
  50. package/dist/Icons/index.d.ts +3 -0
  51. package/dist/Icons.js +81 -78
  52. package/dist/IconsAnimated/PanelLeftCloseIcon.js +3 -3
  53. package/dist/IconsAnimated/PanelLeftOpenIcon.js +3 -3
  54. package/dist/Input.js +1 -1
  55. package/dist/InputNumeric.js +1 -1
  56. package/dist/{InputOTP-cVn5Bzyp.js → InputOTP-BkSw_KIB.js} +12 -10
  57. package/dist/InputOTP.js +1 -1
  58. package/dist/Kbd.js +1 -1
  59. package/dist/Label.js +1 -1
  60. package/dist/MultiSelect/MultiSelectBase.d.ts +6 -4
  61. package/dist/MultiSelect/MultiSelectBase.js +222 -201
  62. package/dist/MultiSelect.d.ts +2 -1
  63. package/dist/MultiSelect.js +14 -12
  64. package/dist/Popover.js +2 -2
  65. package/dist/RadioButton.js +1 -1
  66. package/dist/RadioButtonGroup/RadioButtonGroupBase.js +1 -1
  67. package/dist/RadioButtonGroup.js +1 -1
  68. package/dist/RadioGroup-CfjhpW5o.js +328 -0
  69. package/dist/RadioGroup.d.ts +7 -0
  70. package/dist/RadioGroup.js +1 -1
  71. package/dist/Select.d.ts +5 -2
  72. package/dist/Select.js +97 -85
  73. package/dist/Separator.js +1 -1
  74. package/dist/Skeleton.js +1 -1
  75. package/dist/{Slider-BzzZT3Zm.js → Slider-mODhqkCs.js} +4 -4
  76. package/dist/Slider.js +1 -1
  77. package/dist/Switch-Wj_zov--.js +144 -0
  78. package/dist/Switch.d.ts +12 -3
  79. package/dist/Switch.js +1 -1
  80. package/dist/Tabs/TabsBase.js +4 -4
  81. package/dist/Tabs.js +1 -1
  82. package/dist/Textarea.d.ts +3 -2
  83. package/dist/Textarea.js +50 -45
  84. package/dist/{Toast-9zqXxKKO.js → Toast-CJvzLlMD.js} +1 -1
  85. package/dist/Toast.js +1 -1
  86. package/dist/Toggle.js +1 -1
  87. package/dist/ToggleGroup.js +1 -1
  88. package/dist/{Tooltip-D1K8kY1y.js → Tooltip-DH_BzFye.js} +5 -5
  89. package/dist/Tooltip.js +1 -1
  90. package/dist/Tray.js +5 -5
  91. package/dist/{chunk-h9knIhTc.js → chunk-C4rFPcKS.js} +1 -1
  92. package/dist/dist-BMu6Dgh_.js +149 -0
  93. package/dist/{dist-fW81qjVl.js → dist-C9fJjxxB.js} +41 -41
  94. package/dist/{dist-C0Hifjgh.js → dist-Cv8I-d2q.js} +2 -2
  95. package/dist/{dist-B9tup-4O.js → dist-D6QANKSj.js} +5 -5
  96. package/dist/{dist-3Af8168y.js → dist-Tbzy5UFA.js} +1 -1
  97. package/dist/{dist-B2k1iWFp.js → dist-jQ7HawWM.js} +1 -1
  98. package/dist/{dist-BtdmHAzK.js → dist-nYKAWiy4.js} +6 -6
  99. package/dist/main.js +1 -1
  100. package/dist/primitives/button.js +1 -1
  101. package/dist/primitives/input-group.js +1 -1
  102. package/dist/primitives/input.js +1 -1
  103. package/dist/primitives/popover.js +2 -2
  104. package/dist/primitives/select.js +40 -40
  105. package/dist/primitives/textarea.js +1 -1
  106. package/dist/{proxy-Dn10Pl_g.js → proxy-CCB7C4Pu.js} +10 -10
  107. package/dist/styles/spectral.css +1 -1
  108. package/dist/{twUtils-VNWgstKL.js → twUtils-D_qzdiwM.js} +1 -1
  109. package/dist/{use-animation-CBUDycyW.js → use-animation-C-qL83hj.js} +1 -1
  110. package/dist/utils/formFieldUtils.d.ts +15 -1
  111. package/dist/utils/formFieldUtils.d.ts.map +1 -1
  112. package/dist/utils/formFieldUtils.js +35 -19
  113. package/dist/utils/twUtils.js +1 -1
  114. package/package.json +27 -22
  115. package/dist/ComboboxBase-qX-mQhT6.js +0 -491
  116. package/dist/RadioGroup-w_q6RGEK.js +0 -447
  117. package/dist/Switch-CVzRJ-0n.js +0 -126
  118. /package/dist/{dist-Bfjk-jx9.js → dist-ChNh3U3S.js} +0 -0
  119. /package/dist/{dist-B4FgboI8.js → dist-Cujfuel1.js} +0 -0
  120. /package/dist/{dist-D8Wb_MX9.js → dist-DDjUcieO.js} +0 -0
  121. /package/dist/{dist-s1uWaZYZ.js → dist-DFT13f_s.js} +0 -0
  122. /package/dist/{dist-ClmepHp4.js → dist-DIt8FP2G.js} +0 -0
  123. /package/dist/{dist-BK1K0g9W.js → dist-K0_i37VL.js} +0 -0
@@ -1,491 +0,0 @@
1
- import "./styles/main.css";
2
- import { CheckmarkIcon as e } from "./Icons/CheckmarkIcon.js";
3
- import { SearchIcon as t } from "./Icons/SearchIcon.js";
4
- import { c as n, t as r } from "./dist-7HRQ5IKN.js";
5
- import { t as i } from "./dist-Dtvmk11N.js";
6
- import { t as a } from "./twUtils-VNWgstKL.js";
7
- import { InputGroup as o, InputGroupAddon as s } from "./primitives/input-group.js";
8
- import { a as c, i as l, n as u, o as d } from "./dist-B9tup-4O.js";
9
- import * as f from "react";
10
- import { jsx as p, jsxs as m } from "react/jsx-runtime";
11
- //#region node_modules/.pnpm/cmdk@1.1.1_@types+react-dom@19.2.3_@types+react@19.2.14__@types+react@19.2.14_react-dom_c7cada531f0aaf30a175ae441f7fe8bc/node_modules/cmdk/dist/chunk-NZJY6EH4.mjs
12
- var h = 1, g = .9, _ = .8, v = .17, y = .1, b = .999, x = .9999, S = .99, C = /[\\\/_+.#"@\[\(\{&]/, w = /[\\\/_+.#"@\[\(\{&]/g, T = /[\s-]/, E = /[\s-]/g;
13
- function D(e, t, n, r, i, a, o) {
14
- if (a === t.length) return i === e.length ? h : S;
15
- var s = `${i},${a}`;
16
- if (o[s] !== void 0) return o[s];
17
- for (var c = r.charAt(a), l = n.indexOf(c, i), u = 0, d, f, p, m; l >= 0;) d = D(e, t, n, r, l + 1, a + 1, o), d > u && (l === i ? d *= h : C.test(e.charAt(l - 1)) ? (d *= _, p = e.slice(i, l - 1).match(w), p && i > 0 && (d *= b ** +p.length)) : T.test(e.charAt(l - 1)) ? (d *= g, m = e.slice(i, l - 1).match(E), m && i > 0 && (d *= b ** +m.length)) : (d *= v, i > 0 && (d *= b ** +(l - i))), e.charAt(l) !== t.charAt(a) && (d *= x)), (d < y && n.charAt(l - 1) === r.charAt(a + 1) || r.charAt(a + 1) === r.charAt(a) && n.charAt(l - 1) !== r.charAt(a)) && (f = D(e, t, n, r, l + 1, a + 2, o), f * y > d && (d = f * y)), d > u && (u = d), l = n.indexOf(c, l + 1);
18
- return o[s] = u, u;
19
- }
20
- function O(e) {
21
- return e.toLowerCase().replace(E, " ");
22
- }
23
- function k(e, t, n) {
24
- return e = n && n.length > 0 ? `${e + " " + n.join(" ")}` : e, D(e, t, O(e), O(t), 0, 0, {});
25
- }
26
- //#endregion
27
- //#region node_modules/.pnpm/cmdk@1.1.1_@types+react-dom@19.2.3_@types+react@19.2.14__@types+react@19.2.14_react-dom_c7cada531f0aaf30a175ae441f7fe8bc/node_modules/cmdk/dist/index.mjs
28
- var A = "[cmdk-group=\"\"]", j = "[cmdk-group-items=\"\"]", ee = "[cmdk-group-heading=\"\"]", M = "[cmdk-item=\"\"]", te = `${M}:not([aria-disabled="true"])`, N = "cmdk-item-select", P = "data-value", ne = (e, t, n) => k(e, t, n), F = f.createContext(void 0), I = () => f.useContext(F), L = f.createContext(void 0), R = () => f.useContext(L), z = f.createContext(void 0), B = f.forwardRef((e, t) => {
29
- let n = Z(() => ({
30
- search: "",
31
- value: e.value ?? e.defaultValue ?? "",
32
- selectedItemId: void 0,
33
- filtered: {
34
- count: 0,
35
- items: /* @__PURE__ */ new Map(),
36
- groups: /* @__PURE__ */ new Set()
37
- }
38
- })), a = Z(() => /* @__PURE__ */ new Set()), o = Z(() => /* @__PURE__ */ new Map()), s = Z(() => /* @__PURE__ */ new Map()), c = Z(() => /* @__PURE__ */ new Set()), l = Y(e), { label: u, children: d, value: p, onValueChange: m, filter: h, shouldFilter: g, loop: _, disablePointerSelection: v = !1, vimBindings: y = !0, ...b } = e, x = i(), S = i(), C = i(), w = f.useRef(null), T = se();
39
- X(() => {
40
- if (p !== void 0) {
41
- let e = p.trim();
42
- n.current.value = e, E.emit();
43
- }
44
- }, [p]), X(() => {
45
- T(6, z);
46
- }, []);
47
- let E = f.useMemo(() => ({
48
- subscribe: (e) => (c.current.add(e), () => c.current.delete(e)),
49
- snapshot: () => n.current,
50
- setState: (e, t, r) => {
51
- var i, a, o;
52
- if (!Object.is(n.current[e], t)) {
53
- if (n.current[e] = t, e === "search") R(), k(), T(1, I);
54
- else if (e === "value") {
55
- if (document.activeElement.hasAttribute("cmdk-input") || document.activeElement.hasAttribute("cmdk-root")) {
56
- let e = document.getElementById(C);
57
- e ? e.focus() : (i = document.getElementById(x)) == null || i.focus();
58
- }
59
- if (T(7, () => {
60
- n.current.selectedItemId = B()?.id, E.emit();
61
- }), r || T(5, z), l.current?.value !== void 0) {
62
- let e = t ?? "";
63
- (o = (a = l.current).onValueChange) == null || o.call(a, e);
64
- return;
65
- }
66
- }
67
- E.emit();
68
- }
69
- },
70
- emit: () => {
71
- c.current.forEach((e) => e());
72
- }
73
- }), []), D = f.useMemo(() => ({
74
- value: (e, t, r) => {
75
- t !== s.current.get(e)?.value && (s.current.set(e, {
76
- value: t,
77
- keywords: r
78
- }), n.current.filtered.items.set(e, O(t, r)), T(2, () => {
79
- k(), E.emit();
80
- }));
81
- },
82
- item: (e, t) => (a.current.add(e), t && (o.current.has(t) ? o.current.get(t).add(e) : o.current.set(t, new Set([e]))), T(3, () => {
83
- R(), k(), n.current.value || I(), E.emit();
84
- }), () => {
85
- s.current.delete(e), a.current.delete(e), n.current.filtered.items.delete(e);
86
- let t = B();
87
- T(4, () => {
88
- R(), t?.getAttribute("id") === e && I(), E.emit();
89
- });
90
- }),
91
- group: (e) => (o.current.has(e) || o.current.set(e, /* @__PURE__ */ new Set()), () => {
92
- s.current.delete(e), o.current.delete(e);
93
- }),
94
- filter: () => l.current.shouldFilter,
95
- label: u || e["aria-label"],
96
- getDisablePointerSelection: () => l.current.disablePointerSelection,
97
- listId: x,
98
- inputId: C,
99
- labelId: S,
100
- listInnerRef: w
101
- }), []);
102
- function O(e, t) {
103
- let r = l.current?.filter ?? ne;
104
- return e ? r(e, n.current.search, t) : 0;
105
- }
106
- function k() {
107
- if (!n.current.search || l.current.shouldFilter === !1) return;
108
- let e = n.current.filtered.items, t = [];
109
- n.current.filtered.groups.forEach((n) => {
110
- let r = o.current.get(n), i = 0;
111
- r.forEach((t) => {
112
- let n = e.get(t);
113
- i = Math.max(n, i);
114
- }), t.push([n, i]);
115
- });
116
- let r = w.current;
117
- V().sort((t, n) => {
118
- let r = t.getAttribute("id"), i = n.getAttribute("id");
119
- return (e.get(i) ?? 0) - (e.get(r) ?? 0);
120
- }).forEach((e) => {
121
- let t = e.closest(j);
122
- t ? t.appendChild(e.parentElement === t ? e : e.closest(`${j} > *`)) : r.appendChild(e.parentElement === r ? e : e.closest(`${j} > *`));
123
- }), t.sort((e, t) => t[1] - e[1]).forEach((e) => {
124
- let t = w.current?.querySelector(`${A}[${P}="${encodeURIComponent(e[0])}"]`);
125
- t?.parentElement.appendChild(t);
126
- });
127
- }
128
- function I() {
129
- let e = V().find((e) => e.getAttribute("aria-disabled") !== "true")?.getAttribute(P);
130
- E.setState("value", e || void 0);
131
- }
132
- function R() {
133
- if (!n.current.search || l.current.shouldFilter === !1) {
134
- n.current.filtered.count = a.current.size;
135
- return;
136
- }
137
- n.current.filtered.groups = /* @__PURE__ */ new Set();
138
- let e = 0;
139
- for (let t of a.current) {
140
- let r = O(s.current.get(t)?.value ?? "", s.current.get(t)?.keywords ?? []);
141
- n.current.filtered.items.set(t, r), r > 0 && e++;
142
- }
143
- for (let [e, t] of o.current) for (let r of t) if (n.current.filtered.items.get(r) > 0) {
144
- n.current.filtered.groups.add(e);
145
- break;
146
- }
147
- n.current.filtered.count = e;
148
- }
149
- function z() {
150
- var e;
151
- let t = B();
152
- t && (t.parentElement?.firstChild === t && ((e = t.closest(A)?.querySelector(ee)) == null || e.scrollIntoView({ block: "nearest" })), t.scrollIntoView({ block: "nearest" }));
153
- }
154
- function B() {
155
- return w.current?.querySelector(`${M}[aria-selected="true"]`);
156
- }
157
- function V() {
158
- return Array.from(w.current?.querySelectorAll(te) || []);
159
- }
160
- function H(e) {
161
- let t = V()[e];
162
- t && E.setState("value", t.getAttribute(P));
163
- }
164
- function U(e) {
165
- var t;
166
- let n = B(), r = V(), i = r.findIndex((e) => e === n), a = r[i + e];
167
- (t = l.current) != null && t.loop && (a = i + e < 0 ? r[r.length - 1] : i + e === r.length ? r[0] : r[i + e]), a && E.setState("value", a.getAttribute(P));
168
- }
169
- function W(e) {
170
- let t = B()?.closest(A), n;
171
- for (; t && !n;) t = e > 0 ? ie(t, A) : ae(t, A), n = t?.querySelector(te);
172
- n ? E.setState("value", n.getAttribute(P)) : U(e);
173
- }
174
- let G = () => H(V().length - 1), K = (e) => {
175
- e.preventDefault(), e.metaKey ? G() : e.altKey ? W(1) : U(1);
176
- }, q = (e) => {
177
- e.preventDefault(), e.metaKey ? H(0) : e.altKey ? W(-1) : U(-1);
178
- };
179
- return f.createElement(r.div, {
180
- ref: t,
181
- tabIndex: -1,
182
- ...b,
183
- "cmdk-root": "",
184
- onKeyDown: (e) => {
185
- var t;
186
- (t = b.onKeyDown) == null || t.call(b, e);
187
- let n = e.nativeEvent.isComposing || e.keyCode === 229;
188
- if (!(e.defaultPrevented || n)) switch (e.key) {
189
- case "n":
190
- case "j":
191
- y && e.ctrlKey && K(e);
192
- break;
193
- case "ArrowDown":
194
- K(e);
195
- break;
196
- case "p":
197
- case "k":
198
- y && e.ctrlKey && q(e);
199
- break;
200
- case "ArrowUp":
201
- q(e);
202
- break;
203
- case "Home":
204
- e.preventDefault(), H(0);
205
- break;
206
- case "End":
207
- e.preventDefault(), G();
208
- break;
209
- case "Enter": {
210
- e.preventDefault();
211
- let t = B();
212
- if (t) {
213
- let e = new Event(N);
214
- t.dispatchEvent(e);
215
- }
216
- }
217
- }
218
- }
219
- }, f.createElement("label", {
220
- "cmdk-label": "",
221
- htmlFor: D.inputId,
222
- id: D.labelId,
223
- style: le
224
- }, u), $(e, (e) => f.createElement(L.Provider, { value: E }, f.createElement(F.Provider, { value: D }, e))));
225
- }), V = f.forwardRef((e, t) => {
226
- let a = i(), o = f.useRef(null), s = f.useContext(z), c = I(), l = Y(e), u = l.current?.forceMount ?? s?.forceMount;
227
- X(() => {
228
- if (!u) return c.item(a, s?.id);
229
- }, [u]);
230
- let d = oe(a, o, [
231
- e.value,
232
- e.children,
233
- o
234
- ], e.keywords), p = R(), m = Q((e) => e.value && e.value === d.current), h = Q((e) => u || c.filter() === !1 ? !0 : e.search ? e.filtered.items.get(a) > 0 : !0);
235
- f.useEffect(() => {
236
- let t = o.current;
237
- if (!(!t || e.disabled)) return t.addEventListener(N, g), () => t.removeEventListener(N, g);
238
- }, [
239
- h,
240
- e.onSelect,
241
- e.disabled
242
- ]);
243
- function g() {
244
- var e, t;
245
- _(), (t = (e = l.current).onSelect) == null || t.call(e, d.current);
246
- }
247
- function _() {
248
- p.setState("value", d.current, !0);
249
- }
250
- if (!h) return null;
251
- let { disabled: v, value: y, onSelect: b, forceMount: x, keywords: S, ...C } = e;
252
- return f.createElement(r.div, {
253
- ref: n(o, t),
254
- ...C,
255
- id: a,
256
- "cmdk-item": "",
257
- role: "option",
258
- "aria-disabled": !!v,
259
- "aria-selected": !!m,
260
- "data-disabled": !!v,
261
- "data-selected": !!m,
262
- onPointerMove: v || c.getDisablePointerSelection() ? void 0 : _,
263
- onClick: v ? void 0 : g
264
- }, e.children);
265
- }), H = f.forwardRef((e, t) => {
266
- let { heading: a, children: o, forceMount: s, ...c } = e, l = i(), u = f.useRef(null), d = f.useRef(null), p = i(), m = I(), h = Q((e) => s || m.filter() === !1 ? !0 : e.search ? e.filtered.groups.has(l) : !0);
267
- X(() => m.group(l), []), oe(l, u, [
268
- e.value,
269
- e.heading,
270
- d
271
- ]);
272
- let g = f.useMemo(() => ({
273
- id: l,
274
- forceMount: s
275
- }), [s]);
276
- return f.createElement(r.div, {
277
- ref: n(u, t),
278
- ...c,
279
- "cmdk-group": "",
280
- role: "presentation",
281
- hidden: h ? void 0 : !0
282
- }, a && f.createElement("div", {
283
- ref: d,
284
- "cmdk-group-heading": "",
285
- "aria-hidden": !0,
286
- id: p
287
- }, a), $(e, (e) => f.createElement("div", {
288
- "cmdk-group-items": "",
289
- role: "group",
290
- "aria-labelledby": a ? p : void 0
291
- }, f.createElement(z.Provider, { value: g }, e))));
292
- }), U = f.forwardRef((e, t) => {
293
- let { alwaysRender: i, ...a } = e, o = f.useRef(null), s = Q((e) => !e.search);
294
- return !i && !s ? null : f.createElement(r.div, {
295
- ref: n(o, t),
296
- ...a,
297
- "cmdk-separator": "",
298
- role: "separator"
299
- });
300
- }), W = f.forwardRef((e, t) => {
301
- let { onValueChange: n, ...i } = e, a = e.value != null, o = R(), s = Q((e) => e.search), c = Q((e) => e.selectedItemId), l = I();
302
- return f.useEffect(() => {
303
- e.value != null && o.setState("search", e.value);
304
- }, [e.value]), f.createElement(r.input, {
305
- ref: t,
306
- ...i,
307
- "cmdk-input": "",
308
- autoComplete: "off",
309
- autoCorrect: "off",
310
- spellCheck: !1,
311
- "aria-autocomplete": "list",
312
- role: "combobox",
313
- "aria-expanded": !0,
314
- "aria-controls": l.listId,
315
- "aria-labelledby": l.labelId,
316
- "aria-activedescendant": c,
317
- id: l.inputId,
318
- type: "text",
319
- value: a ? e.value : s,
320
- onChange: (e) => {
321
- a || o.setState("search", e.target.value), n?.(e.target.value);
322
- }
323
- });
324
- }), G = f.forwardRef((e, t) => {
325
- let { children: i, label: a = "Suggestions", ...o } = e, s = f.useRef(null), c = f.useRef(null), l = Q((e) => e.selectedItemId), u = I();
326
- return f.useEffect(() => {
327
- if (c.current && s.current) {
328
- let e = c.current, t = s.current, n, r = new ResizeObserver(() => {
329
- n = requestAnimationFrame(() => {
330
- let n = e.offsetHeight;
331
- t.style.setProperty("--cmdk-list-height", n.toFixed(1) + "px");
332
- });
333
- });
334
- return r.observe(e), () => {
335
- cancelAnimationFrame(n), r.unobserve(e);
336
- };
337
- }
338
- }, []), f.createElement(r.div, {
339
- ref: n(s, t),
340
- ...o,
341
- "cmdk-list": "",
342
- role: "listbox",
343
- tabIndex: -1,
344
- "aria-activedescendant": l,
345
- "aria-label": a,
346
- id: u.listId
347
- }, $(e, (e) => f.createElement("div", {
348
- ref: n(c, u.listInnerRef),
349
- "cmdk-list-sizer": ""
350
- }, e)));
351
- }), K = f.forwardRef((e, t) => {
352
- let { open: n, onOpenChange: r, overlayClassName: i, contentClassName: a, container: o, ...s } = e;
353
- return f.createElement(d, {
354
- open: n,
355
- onOpenChange: r
356
- }, f.createElement(c, { container: o }, f.createElement(l, {
357
- "cmdk-overlay": "",
358
- className: i
359
- }), f.createElement(u, {
360
- "aria-label": e.label,
361
- "cmdk-dialog": "",
362
- className: a
363
- }, f.createElement(B, {
364
- ref: t,
365
- ...s
366
- }))));
367
- }), q = f.forwardRef((e, t) => Q((e) => e.filtered.count === 0) ? f.createElement(r.div, {
368
- ref: t,
369
- ...e,
370
- "cmdk-empty": "",
371
- role: "presentation"
372
- }) : null), re = f.forwardRef((e, t) => {
373
- let { progress: n, children: i, label: a = "Loading...", ...o } = e;
374
- return f.createElement(r.div, {
375
- ref: t,
376
- ...o,
377
- "cmdk-loading": "",
378
- role: "progressbar",
379
- "aria-valuenow": n,
380
- "aria-valuemin": 0,
381
- "aria-valuemax": 100,
382
- "aria-label": a
383
- }, $(e, (e) => f.createElement("div", { "aria-hidden": !0 }, e)));
384
- }), J = Object.assign(B, {
385
- List: G,
386
- Item: V,
387
- Input: W,
388
- Group: H,
389
- Separator: U,
390
- Dialog: K,
391
- Empty: q,
392
- Loading: re
393
- });
394
- function ie(e, t) {
395
- let n = e.nextElementSibling;
396
- for (; n;) {
397
- if (n.matches(t)) return n;
398
- n = n.nextElementSibling;
399
- }
400
- }
401
- function ae(e, t) {
402
- let n = e.previousElementSibling;
403
- for (; n;) {
404
- if (n.matches(t)) return n;
405
- n = n.previousElementSibling;
406
- }
407
- }
408
- function Y(e) {
409
- let t = f.useRef(e);
410
- return X(() => {
411
- t.current = e;
412
- }), t;
413
- }
414
- var X = typeof window > "u" ? f.useEffect : f.useLayoutEffect;
415
- function Z(e) {
416
- let t = f.useRef();
417
- return t.current === void 0 && (t.current = e()), t;
418
- }
419
- function Q(e) {
420
- let t = R(), n = () => e(t.snapshot());
421
- return f.useSyncExternalStore(t.subscribe, n, n);
422
- }
423
- function oe(e, t, n, r = []) {
424
- let i = f.useRef(), a = I();
425
- return X(() => {
426
- var o;
427
- let s = (() => {
428
- for (let e of n) {
429
- if (typeof e == "string") return e.trim();
430
- if (typeof e == "object" && "current" in e) return e.current ? e.current.textContent?.trim() : i.current;
431
- }
432
- })(), c = r.map((e) => e.trim());
433
- a.value(e, s, c), (o = t.current) == null || o.setAttribute(P, s), i.current = s;
434
- }), i;
435
- }
436
- var se = () => {
437
- let [e, t] = f.useState(), n = Z(() => /* @__PURE__ */ new Map());
438
- return X(() => {
439
- n.current.forEach((e) => e()), n.current = /* @__PURE__ */ new Map();
440
- }, [e]), (e, r) => {
441
- n.current.set(e, r), t({});
442
- };
443
- };
444
- function ce(e) {
445
- let t = e.type;
446
- return typeof t == "function" ? t(e.props) : "render" in t ? t.render(e.props) : e;
447
- }
448
- function $({ asChild: e, children: t }, n) {
449
- return e && f.isValidElement(t) ? f.cloneElement(ce(t), { ref: t.ref }, n(t.props.children)) : n(t);
450
- }
451
- var le = {
452
- position: "absolute",
453
- width: "1px",
454
- height: "1px",
455
- padding: "0",
456
- margin: "-1px",
457
- overflow: "hidden",
458
- clip: "rect(0, 0, 0, 0)",
459
- whiteSpace: "nowrap",
460
- borderWidth: "0"
461
- }, ue = ({ className: e, ...t }) => /* @__PURE__ */ p(J, {
462
- "data-slot": "command",
463
- className: a("rounded-xl! p-1 flex size-full flex-col overflow-hidden text-input-text", e),
464
- ...t
465
- }), de = ({ className: e, ...n }) => /* @__PURE__ */ p("div", {
466
- "data-slot": "command-input-wrapper",
467
- className: "p-1 pb-0",
468
- children: /* @__PURE__ */ m(o, {
469
- className: "h-8! rounded-lg! border-input/30 bg-input/30 *:data-[slot=input-group-addon]:pl-2! shadow-none!",
470
- children: [/* @__PURE__ */ p(J.Input, {
471
- "data-slot": "command-input",
472
- className: a("text-sm w-full outline-hidden disabled:cursor-not-allowed disabled:opacity-50", e),
473
- ...n
474
- }), /* @__PURE__ */ p(s, { children: /* @__PURE__ */ p(t, { className: "size-4 shrink-0 opacity-50" }) })]
475
- })
476
- }), fe = ({ className: e, ...t }) => /* @__PURE__ */ p(J.List, {
477
- "data-slot": "command-list",
478
- className: a("no-scrollbar max-h-72 scroll-py-1 overflow-x-hidden overflow-y-auto outline-none", e),
479
- ...t
480
- }), pe = ({ className: e, ...t }) => /* @__PURE__ */ p(J.Empty, {
481
- "data-slot": "command-empty",
482
- className: a("py-6 text-base text-center text-text-secondary", e),
483
- ...t
484
- }), me = ({ className: t, children: n, ...r }) => /* @__PURE__ */ m(J.Item, {
485
- "data-slot": "command-item",
486
- className: a("group/command-item text-base in-data-[slot=dialog-content]:rounded-lg! relative flex text-input-text outline-hidden select-none [&_svg]:pointer-events-none [&_svg]:shrink-0", t),
487
- ...r,
488
- children: [n, /* @__PURE__ */ p(e, { className: "ml-auto opacity-0 group-has-data-[slot=command-shortcut]/command-item:hidden group-data-[checked=true]/command-item:opacity-100" })]
489
- });
490
- //#endregion
491
- export { fe as a, me as i, pe as n, J as o, de as r, ue as t };