@epilot/volt-ui 1.1.2-alpha.2 → 1.1.2-alpha.3

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 (117) hide show
  1. package/dist/index.cjs33.js +1 -1
  2. package/dist/index.cjs34.js +1 -1
  3. package/dist/index.cjs35.js +1 -1
  4. package/dist/index.cjs36.js +1 -1
  5. package/dist/index.cjs37.js +1 -1
  6. package/dist/index.cjs38.js +1 -1
  7. package/dist/index.cjs39.js +1 -1
  8. package/dist/index.cjs40.js +1 -1
  9. package/dist/index.cjs41.js +1 -1
  10. package/dist/index.cjs42.js +1 -1
  11. package/dist/index.cjs43.js +1 -1
  12. package/dist/index.cjs44.js +1 -1
  13. package/dist/index.cjs45.js +1 -1
  14. package/dist/index.cjs47.js +1 -1
  15. package/dist/index.cjs48.js +1 -1
  16. package/dist/index.cjs49.js +1 -1
  17. package/dist/index.cjs5.js +1 -1
  18. package/dist/index.cjs50.js +1 -1
  19. package/dist/index.cjs51.js +1 -1
  20. package/dist/index.cjs52.js +1 -1
  21. package/dist/index.cjs53.js +1 -1
  22. package/dist/index.cjs54.js +1 -1
  23. package/dist/index.cjs55.js +1 -1
  24. package/dist/index.cjs56.js +1 -1
  25. package/dist/index.cjs57.js +1 -1
  26. package/dist/index.cjs58.js +1 -1
  27. package/dist/index.cjs59.js +1 -1
  28. package/dist/index.cjs60.js +1 -1
  29. package/dist/index.cjs61.js +1 -1
  30. package/dist/index.cjs62.js +1 -1
  31. package/dist/index.cjs63.js +1 -1
  32. package/dist/index.cjs64.js +1 -1
  33. package/dist/index.cjs65.js +1 -1
  34. package/dist/index.cjs66.js +1 -1
  35. package/dist/index.cjs67.js +1 -1
  36. package/dist/index.cjs69.js +1 -1
  37. package/dist/index.cjs70.js +1 -1
  38. package/dist/index.cjs71.js +1 -1
  39. package/dist/index.cjs72.js +1 -1
  40. package/dist/index.cjs73.js +1 -1
  41. package/dist/index.cjs74.js +1 -1
  42. package/dist/index.cjs75.js +1 -1
  43. package/dist/index.cjs76.js +1 -1
  44. package/dist/index.cjs77.js +1 -1
  45. package/dist/index.cjs79.js +1 -1
  46. package/dist/index.cjs81.js +1 -1
  47. package/dist/index.cjs82.js +1 -1
  48. package/dist/index.cjs86.js +1 -1
  49. package/dist/index.cjs87.js +1 -1
  50. package/dist/index.cjs88.js +1 -1
  51. package/dist/index.cjs89.js +1 -1
  52. package/dist/index.cjs90.js +1 -1
  53. package/dist/index.cjs91.js +1 -4
  54. package/dist/index.cjs92.js +1 -1
  55. package/dist/index.cjs93.js +1 -1
  56. package/dist/index.cjs94.js +4 -1
  57. package/dist/index.cjs95.js +1 -1
  58. package/dist/index.cjs97.js +1 -1
  59. package/dist/index.es33.js +1 -1
  60. package/dist/index.es34.js +20 -20
  61. package/dist/index.es35.js +1 -1
  62. package/dist/index.es36.js +10 -10
  63. package/dist/index.es37.js +6 -6
  64. package/dist/index.es38.js +1 -1
  65. package/dist/index.es39.js +14 -14
  66. package/dist/index.es40.js +13 -13
  67. package/dist/index.es41.js +7 -7
  68. package/dist/index.es42.js +9 -9
  69. package/dist/index.es43.js +8 -8
  70. package/dist/index.es44.js +2 -2
  71. package/dist/index.es45.js +8 -8
  72. package/dist/index.es47.js +7 -30
  73. package/dist/index.es48.js +66 -5
  74. package/dist/index.es49.js +33 -67
  75. package/dist/index.es5.js +15 -15
  76. package/dist/index.es50.js +170 -114
  77. package/dist/index.es51.js +50 -13
  78. package/dist/index.es52.js +7 -134
  79. package/dist/index.es53.js +24 -10
  80. package/dist/index.es54.js +5 -218
  81. package/dist/index.es55.js +69 -14
  82. package/dist/index.es56.js +29 -68
  83. package/dist/index.es57.js +10 -33
  84. package/dist/index.es58.js +120 -43
  85. package/dist/index.es59.js +13 -50
  86. package/dist/index.es60.js +133 -48
  87. package/dist/index.es61.js +218 -8
  88. package/dist/index.es62.js +14 -9
  89. package/dist/index.es63.js +47 -29
  90. package/dist/index.es64.js +50 -6
  91. package/dist/index.es65.js +9 -25
  92. package/dist/index.es66.js +8 -180
  93. package/dist/index.es67.js +30 -8
  94. package/dist/index.es69.js +310 -30
  95. package/dist/index.es70.js +30 -46
  96. package/dist/index.es71.js +3 -117
  97. package/dist/index.es72.js +41 -43
  98. package/dist/index.es73.js +45 -307
  99. package/dist/index.es74.js +10 -3
  100. package/dist/index.es75.js +4 -48
  101. package/dist/index.es76.js +117 -10
  102. package/dist/index.es77.js +48 -4
  103. package/dist/index.es79.js +1 -1
  104. package/dist/index.es81.js +1 -1
  105. package/dist/index.es82.js +3 -3
  106. package/dist/index.es86.js +3 -3
  107. package/dist/index.es87.js +3 -3
  108. package/dist/index.es88.js +525 -5
  109. package/dist/index.es89.js +128 -3
  110. package/dist/index.es90.js +132 -22
  111. package/dist/index.es91.js +5 -110
  112. package/dist/index.es92.js +3 -16
  113. package/dist/index.es93.js +21 -522
  114. package/dist/index.es94.js +109 -127
  115. package/dist/index.es95.js +15 -133
  116. package/dist/index.es97.js +1 -1
  117. package/package.json +1 -1
@@ -1,27 +1,11 @@
1
- import * as h from "react";
2
- import { useLayoutEffect as z } from "./index.es77.js";
3
- function c(r) {
4
- const [d, e] = h.useState(void 0);
5
- return z(() => {
6
- if (r) {
7
- e({ width: r.offsetWidth, height: r.offsetHeight });
8
- const f = new ResizeObserver((i) => {
9
- if (!Array.isArray(i) || !i.length)
10
- return;
11
- const b = i[0];
12
- let o, t;
13
- if ("borderBoxSize" in b) {
14
- const s = b.borderBoxSize, u = Array.isArray(s) ? s[0] : s;
15
- o = u.inlineSize, t = u.blockSize;
16
- } else
17
- o = r.offsetWidth, t = r.offsetHeight;
18
- e({ width: o, height: t });
19
- });
20
- return f.observe(r, { box: "border-box" }), () => f.unobserve(r);
21
- } else
22
- e(void 0);
23
- }, [r]), d;
24
- }
1
+ import { __assign as m } from "./index.es85.js";
2
+ import * as r from "react";
3
+ import { RemoveScroll as e } from "./index.es86.js";
4
+ import t from "./index.es87.js";
5
+ var s = r.forwardRef(function(a, o) {
6
+ return r.createElement(e, m({}, a, { ref: o, sideCar: t }));
7
+ });
8
+ s.classNames = e.classNames;
25
9
  export {
26
- c as useSize
10
+ s as default
27
11
  };
@@ -1,183 +1,11 @@
1
- import * as c from "react";
2
- import { composeEventHandlers as p } from "./index.es48.js";
3
- import { createCollection as V } from "./index.es70.js";
4
- import { useComposedRefs as j } from "./index.es46.js";
5
- import { createContextScope as z } from "./index.es49.js";
6
- import { useId as q } from "./index.es53.js";
7
- import { Primitive as G } from "./index.es57.js";
8
- import { useCallbackRef as J } from "./index.es76.js";
9
- import { useControllableState as Q } from "./index.es59.js";
10
- import { useDirection as W } from "./index.es67.js";
11
- import { jsx as d } from "react/jsx-runtime";
12
- var y = "rovingFocusGroup.onEntryFocus", X = { bubbles: !1, cancelable: !0 }, I = "RovingFocusGroup", [D, N, Z] = V(I), [$, Fe] = z(
13
- I,
14
- [Z]
15
- ), [ee, oe] = $(I), O = c.forwardRef(
16
- (e, r) => /* @__PURE__ */ d(D.Provider, { scope: e.__scopeRovingFocusGroup, children: /* @__PURE__ */ d(D.Slot, { scope: e.__scopeRovingFocusGroup, children: /* @__PURE__ */ d(te, { ...e, ref: r }) }) })
17
- );
18
- O.displayName = I;
19
- var te = c.forwardRef((e, r) => {
20
- const {
21
- __scopeRovingFocusGroup: s,
22
- orientation: o,
23
- loop: T = !1,
24
- dir: w,
25
- currentTabStopId: v,
26
- defaultCurrentTabStopId: C,
27
- onCurrentTabStopIdChange: S,
28
- onEntryFocus: m,
29
- preventScrollOnEntryFocus: u = !1,
30
- ...b
31
- } = e, F = c.useRef(null), g = j(r, F), R = W(w), [E, t] = Q({
32
- prop: v,
33
- defaultProp: C ?? null,
34
- onChange: S,
35
- caller: I
36
- }), [i, h] = c.useState(!1), a = J(m), l = N(s), A = c.useRef(!1), [L, P] = c.useState(0);
37
- return c.useEffect(() => {
38
- const n = F.current;
39
- if (n)
40
- return n.addEventListener(y, a), () => n.removeEventListener(y, a);
41
- }, [a]), /* @__PURE__ */ d(
42
- ee,
43
- {
44
- scope: s,
45
- orientation: o,
46
- dir: R,
47
- loop: T,
48
- currentTabStopId: E,
49
- onItemFocus: c.useCallback(
50
- (n) => t(n),
51
- [t]
52
- ),
53
- onItemShiftTab: c.useCallback(() => h(!0), []),
54
- onFocusableItemAdd: c.useCallback(
55
- () => P((n) => n + 1),
56
- []
57
- ),
58
- onFocusableItemRemove: c.useCallback(
59
- () => P((n) => n - 1),
60
- []
61
- ),
62
- children: /* @__PURE__ */ d(
63
- G.div,
64
- {
65
- tabIndex: i || L === 0 ? -1 : 0,
66
- "data-orientation": o,
67
- ...b,
68
- ref: g,
69
- style: { outline: "none", ...e.style },
70
- onMouseDown: p(e.onMouseDown, () => {
71
- A.current = !0;
72
- }),
73
- onFocus: p(e.onFocus, (n) => {
74
- const U = !A.current;
75
- if (n.target === n.currentTarget && U && !i) {
76
- const x = new CustomEvent(y, X);
77
- if (n.currentTarget.dispatchEvent(x), !x.defaultPrevented) {
78
- const _ = l().filter((f) => f.focusable), B = _.find((f) => f.active), Y = _.find((f) => f.id === E), H = [B, Y, ..._].filter(
79
- Boolean
80
- ).map((f) => f.ref.current);
81
- k(H, u);
82
- }
83
- }
84
- A.current = !1;
85
- }),
86
- onBlur: p(e.onBlur, () => h(!1))
87
- }
88
- )
89
- }
90
- );
91
- }), K = "RovingFocusGroupItem", M = c.forwardRef(
92
- (e, r) => {
93
- const {
94
- __scopeRovingFocusGroup: s,
95
- focusable: o = !0,
96
- active: T = !1,
97
- tabStopId: w,
98
- children: v,
99
- ...C
100
- } = e, S = q(), m = w || S, u = oe(K, s), b = u.currentTabStopId === m, F = N(s), { onFocusableItemAdd: g, onFocusableItemRemove: R, currentTabStopId: E } = u;
101
- return c.useEffect(() => {
102
- if (o)
103
- return g(), () => R();
104
- }, [o, g, R]), /* @__PURE__ */ d(
105
- D.ItemSlot,
106
- {
107
- scope: s,
108
- id: m,
109
- focusable: o,
110
- active: T,
111
- children: /* @__PURE__ */ d(
112
- G.span,
113
- {
114
- tabIndex: b ? 0 : -1,
115
- "data-orientation": u.orientation,
116
- ...C,
117
- ref: r,
118
- onMouseDown: p(e.onMouseDown, (t) => {
119
- o ? u.onItemFocus(m) : t.preventDefault();
120
- }),
121
- onFocus: p(e.onFocus, () => u.onItemFocus(m)),
122
- onKeyDown: p(e.onKeyDown, (t) => {
123
- if (t.key === "Tab" && t.shiftKey) {
124
- u.onItemShiftTab();
125
- return;
126
- }
127
- if (t.target !== t.currentTarget) return;
128
- const i = ce(t, u.orientation, u.dir);
129
- if (i !== void 0) {
130
- if (t.metaKey || t.ctrlKey || t.altKey || t.shiftKey) return;
131
- t.preventDefault();
132
- let a = F().filter((l) => l.focusable).map((l) => l.ref.current);
133
- if (i === "last") a.reverse();
134
- else if (i === "prev" || i === "next") {
135
- i === "prev" && a.reverse();
136
- const l = a.indexOf(t.currentTarget);
137
- a = u.loop ? se(a, l + 1) : a.slice(l + 1);
138
- }
139
- setTimeout(() => k(a));
140
- }
141
- }),
142
- children: typeof v == "function" ? v({ isCurrentTabStop: b, hasTabStop: E != null }) : v
143
- }
144
- )
145
- }
146
- );
147
- }
148
- );
149
- M.displayName = K;
150
- var re = {
151
- ArrowLeft: "prev",
152
- ArrowUp: "prev",
153
- ArrowRight: "next",
154
- ArrowDown: "next",
155
- PageUp: "first",
156
- Home: "first",
157
- PageDown: "last",
158
- End: "last"
159
- };
160
- function ne(e, r) {
161
- return r !== "rtl" ? e : e === "ArrowLeft" ? "ArrowRight" : e === "ArrowRight" ? "ArrowLeft" : e;
162
- }
163
- function ce(e, r, s) {
164
- const o = ne(e.key, s);
165
- if (!(r === "vertical" && ["ArrowLeft", "ArrowRight"].includes(o)) && !(r === "horizontal" && ["ArrowUp", "ArrowDown"].includes(o)))
166
- return re[o];
167
- }
168
- function k(e, r = !1) {
169
- const s = document.activeElement;
170
- for (const o of e)
171
- if (o === s || (o.focus({ preventScroll: r }), document.activeElement !== s)) return;
172
- }
173
- function se(e, r) {
174
- return e.map((s, o) => e[(r + o) % e.length]);
1
+ import "react";
2
+ import { jsx as e, Fragment as o } from "react/jsx-runtime";
3
+ var l = Symbol("radix.slottable");
4
+ // @__NO_SIDE_EFFECTS__
5
+ function n(r) {
6
+ const t = ({ children: a }) => /* @__PURE__ */ e(o, { children: a });
7
+ return t.displayName = `${r}.Slottable`, t.__radixId = l, t;
175
8
  }
176
- var ge = O, Re = M;
177
9
  export {
178
- Re as Item,
179
- ge as Root,
180
- O as RovingFocusGroup,
181
- M as RovingFocusGroupItem,
182
- Fe as createRovingFocusGroupScope
10
+ n as createSlottable
183
11
  };
@@ -1,10 +1,32 @@
1
- import * as t from "react";
2
- import "react/jsx-runtime";
3
- var r = t.createContext(void 0);
4
- function n(o) {
5
- const e = t.useContext(r);
6
- return o || e || "ltr";
7
- }
1
+ import * as a from "react";
2
+ import { Primitive as o } from "./index.es49.js";
3
+ import { jsx as t } from "react/jsx-runtime";
4
+ var d = Object.freeze({
5
+ // See: https://github.com/twbs/bootstrap/blob/main/scss/mixins/_visually-hidden.scss
6
+ position: "absolute",
7
+ border: 0,
8
+ width: 1,
9
+ height: 1,
10
+ padding: 0,
11
+ margin: -1,
12
+ overflow: "hidden",
13
+ clip: "rect(0, 0, 0, 0)",
14
+ whiteSpace: "nowrap",
15
+ wordWrap: "normal"
16
+ }), l = "VisuallyHidden", e = a.forwardRef(
17
+ (r, i) => /* @__PURE__ */ t(
18
+ o.span,
19
+ {
20
+ ...r,
21
+ ref: i,
22
+ style: { ...d, ...r.style }
23
+ }
24
+ )
25
+ );
26
+ e.displayName = l;
27
+ var p = e;
8
28
  export {
9
- n as useDirection
29
+ p as Root,
30
+ d as VISUALLY_HIDDEN_STYLES,
31
+ e as VisuallyHidden
10
32
  };
@@ -1,32 +1,312 @@
1
- import * as f from "react";
2
- import "react-dom";
3
- import { createSlot as l } from "./index.es31.js";
4
- import { jsx as n } from "react/jsx-runtime";
5
- var u = [
6
- "a",
7
- "button",
8
- "div",
9
- "form",
10
- "h2",
11
- "h3",
12
- "img",
13
- "input",
14
- "label",
15
- "li",
16
- "nav",
17
- "ol",
18
- "p",
19
- "select",
20
- "span",
21
- "svg",
22
- "ul"
23
- ], w = u.reduce((t, i) => {
24
- const o = l(`Primitive.${i}`), r = f.forwardRef((e, m) => {
25
- const { asChild: a, ...p } = e, s = a ? o : i;
26
- return typeof window < "u" && (window[Symbol.for("radix-ui")] = !0), /* @__PURE__ */ n(s, { ...p, ref: m });
27
- });
28
- return r.displayName = `Primitive.${i}`, { ...t, [i]: r };
29
- }, {});
1
+ import { a as pe } from "./index.es83.js";
2
+ import { Root as ge, Portal as he, Overlay as be, Content as Ee } from "./index.es40.js";
3
+ import * as n from "react";
4
+ import { Primitive as I } from "./index.es84.js";
5
+ import { useId as K } from "./index.es57.js";
6
+ import { composeRefs as q } from "./index.es46.js";
7
+ var $ = '[cmdk-group=""]', X = '[cmdk-group-items=""]', ye = '[cmdk-group-heading=""]', oe = '[cmdk-item=""]', ie = `${oe}:not([aria-disabled="true"])`, Y = "cmdk-item-select", D = "data-value", Ce = (t, a, r) => pe(t, a, r), ce = n.createContext(void 0), O = () => n.useContext(ce), de = n.createContext(void 0), Z = () => n.useContext(de), se = n.createContext(void 0), fe = n.forwardRef((t, a) => {
8
+ let r = F(() => {
9
+ var e, u;
10
+ return { search: "", value: (u = (e = t.value) != null ? e : t.defaultValue) != null ? u : "", selectedItemId: void 0, filtered: { count: 0, items: /* @__PURE__ */ new Map(), groups: /* @__PURE__ */ new Set() } };
11
+ }), v = F(() => /* @__PURE__ */ new Set()), i = F(() => /* @__PURE__ */ new Map()), c = F(() => /* @__PURE__ */ new Map()), d = F(() => /* @__PURE__ */ new Set()), m = me(t), { label: b, children: s, value: h, onValueChange: R, filter: k, shouldFilter: w, loop: V, disablePointerSelection: B = !1, vimBindings: x = !0, ...j } = t, U = K(), ee = K(), W = K(), A = n.useRef(null), g = Fe();
12
+ M(() => {
13
+ if (h !== void 0) {
14
+ let e = h.trim();
15
+ r.current.value = e, y.emit();
16
+ }
17
+ }, [h]), M(() => {
18
+ g(6, re);
19
+ }, []);
20
+ let y = n.useMemo(() => ({ subscribe: (e) => (d.current.add(e), () => d.current.delete(e)), snapshot: () => r.current, setState: (e, u, o) => {
21
+ var l, f, p, C;
22
+ if (!Object.is(r.current[e], u)) {
23
+ if (r.current[e] = u, e === "search") T(), G(), g(1, H);
24
+ else if (e === "value") {
25
+ if (document.activeElement.hasAttribute("cmdk-input") || document.activeElement.hasAttribute("cmdk-root")) {
26
+ let E = document.getElementById(W);
27
+ E ? E.focus() : (l = document.getElementById(U)) == null || l.focus();
28
+ }
29
+ if (g(7, () => {
30
+ var E;
31
+ r.current.selectedItemId = (E = P()) == null ? void 0 : E.id, y.emit();
32
+ }), o || g(5, re), ((f = m.current) == null ? void 0 : f.value) !== void 0) {
33
+ let E = u ?? "";
34
+ (C = (p = m.current).onValueChange) == null || C.call(p, E);
35
+ return;
36
+ }
37
+ }
38
+ y.emit();
39
+ }
40
+ }, emit: () => {
41
+ d.current.forEach((e) => e());
42
+ } }), []), _ = n.useMemo(() => ({ value: (e, u, o) => {
43
+ var l;
44
+ u !== ((l = c.current.get(e)) == null ? void 0 : l.value) && (c.current.set(e, { value: u, keywords: o }), r.current.filtered.items.set(e, te(u, o)), g(2, () => {
45
+ G(), y.emit();
46
+ }));
47
+ }, item: (e, u) => (v.current.add(e), u && (i.current.has(u) ? i.current.get(u).add(e) : i.current.set(u, /* @__PURE__ */ new Set([e]))), g(3, () => {
48
+ T(), G(), r.current.value || H(), y.emit();
49
+ }), () => {
50
+ c.current.delete(e), v.current.delete(e), r.current.filtered.items.delete(e);
51
+ let o = P();
52
+ g(4, () => {
53
+ T(), (o == null ? void 0 : o.getAttribute("id")) === e && H(), y.emit();
54
+ });
55
+ }), group: (e) => (i.current.has(e) || i.current.set(e, /* @__PURE__ */ new Set()), () => {
56
+ c.current.delete(e), i.current.delete(e);
57
+ }), filter: () => m.current.shouldFilter, label: b || t["aria-label"], getDisablePointerSelection: () => m.current.disablePointerSelection, listId: U, inputId: W, labelId: ee, listInnerRef: A }), []);
58
+ function te(e, u) {
59
+ var o, l;
60
+ let f = (l = (o = m.current) == null ? void 0 : o.filter) != null ? l : Ce;
61
+ return e ? f(e, r.current.search, u) : 0;
62
+ }
63
+ function G() {
64
+ if (!r.current.search || m.current.shouldFilter === !1) return;
65
+ let e = r.current.filtered.items, u = [];
66
+ r.current.filtered.groups.forEach((l) => {
67
+ let f = i.current.get(l), p = 0;
68
+ f.forEach((C) => {
69
+ let E = e.get(C);
70
+ p = Math.max(E, p);
71
+ }), u.push([l, p]);
72
+ });
73
+ let o = A.current;
74
+ L().sort((l, f) => {
75
+ var p, C;
76
+ let E = l.getAttribute("id"), N = f.getAttribute("id");
77
+ return ((p = e.get(N)) != null ? p : 0) - ((C = e.get(E)) != null ? C : 0);
78
+ }).forEach((l) => {
79
+ let f = l.closest(X);
80
+ f ? f.appendChild(l.parentElement === f ? l : l.closest(`${X} > *`)) : o.appendChild(l.parentElement === o ? l : l.closest(`${X} > *`));
81
+ }), u.sort((l, f) => f[1] - l[1]).forEach((l) => {
82
+ var f;
83
+ let p = (f = A.current) == null ? void 0 : f.querySelector(`${$}[${D}="${encodeURIComponent(l[0])}"]`);
84
+ p == null || p.parentElement.appendChild(p);
85
+ });
86
+ }
87
+ function H() {
88
+ let e = L().find((o) => o.getAttribute("aria-disabled") !== "true"), u = e == null ? void 0 : e.getAttribute(D);
89
+ y.setState("value", u || void 0);
90
+ }
91
+ function T() {
92
+ var e, u, o, l;
93
+ if (!r.current.search || m.current.shouldFilter === !1) {
94
+ r.current.filtered.count = v.current.size;
95
+ return;
96
+ }
97
+ r.current.filtered.groups = /* @__PURE__ */ new Set();
98
+ let f = 0;
99
+ for (let p of v.current) {
100
+ let C = (u = (e = c.current.get(p)) == null ? void 0 : e.value) != null ? u : "", E = (l = (o = c.current.get(p)) == null ? void 0 : o.keywords) != null ? l : [], N = te(C, E);
101
+ r.current.filtered.items.set(p, N), N > 0 && f++;
102
+ }
103
+ for (let [p, C] of i.current) for (let E of C) if (r.current.filtered.items.get(E) > 0) {
104
+ r.current.filtered.groups.add(p);
105
+ break;
106
+ }
107
+ r.current.filtered.count = f;
108
+ }
109
+ function re() {
110
+ var e, u, o;
111
+ let l = P();
112
+ l && (((e = l.parentElement) == null ? void 0 : e.firstChild) === l && ((o = (u = l.closest($)) == null ? void 0 : u.querySelector(ye)) == null || o.scrollIntoView({ block: "nearest" })), l.scrollIntoView({ block: "nearest" }));
113
+ }
114
+ function P() {
115
+ var e;
116
+ return (e = A.current) == null ? void 0 : e.querySelector(`${oe}[aria-selected="true"]`);
117
+ }
118
+ function L() {
119
+ var e;
120
+ return Array.from(((e = A.current) == null ? void 0 : e.querySelectorAll(ie)) || []);
121
+ }
122
+ function J(e) {
123
+ let u = L()[e];
124
+ u && y.setState("value", u.getAttribute(D));
125
+ }
126
+ function Q(e) {
127
+ var u;
128
+ let o = P(), l = L(), f = l.findIndex((C) => C === o), p = l[f + e];
129
+ (u = m.current) != null && u.loop && (p = f + e < 0 ? l[l.length - 1] : f + e === l.length ? l[0] : l[f + e]), p && y.setState("value", p.getAttribute(D));
130
+ }
131
+ function ne(e) {
132
+ let u = P(), o = u == null ? void 0 : u.closest($), l;
133
+ for (; o && !l; ) o = e > 0 ? Pe(o, $) : De(o, $), l = o == null ? void 0 : o.querySelector(ie);
134
+ l ? y.setState("value", l.getAttribute(D)) : Q(e);
135
+ }
136
+ let le = () => J(L().length - 1), ae = (e) => {
137
+ e.preventDefault(), e.metaKey ? le() : e.altKey ? ne(1) : Q(1);
138
+ }, ue = (e) => {
139
+ e.preventDefault(), e.metaKey ? J(0) : e.altKey ? ne(-1) : Q(-1);
140
+ };
141
+ return n.createElement(I.div, { ref: a, tabIndex: -1, ...j, "cmdk-root": "", onKeyDown: (e) => {
142
+ var u;
143
+ (u = j.onKeyDown) == null || u.call(j, e);
144
+ let o = e.nativeEvent.isComposing || e.keyCode === 229;
145
+ if (!(e.defaultPrevented || o)) switch (e.key) {
146
+ case "n":
147
+ case "j": {
148
+ x && e.ctrlKey && ae(e);
149
+ break;
150
+ }
151
+ case "ArrowDown": {
152
+ ae(e);
153
+ break;
154
+ }
155
+ case "p":
156
+ case "k": {
157
+ x && e.ctrlKey && ue(e);
158
+ break;
159
+ }
160
+ case "ArrowUp": {
161
+ ue(e);
162
+ break;
163
+ }
164
+ case "Home": {
165
+ e.preventDefault(), J(0);
166
+ break;
167
+ }
168
+ case "End": {
169
+ e.preventDefault(), le();
170
+ break;
171
+ }
172
+ case "Enter": {
173
+ e.preventDefault();
174
+ let l = P();
175
+ if (l) {
176
+ let f = new Event(Y);
177
+ l.dispatchEvent(f);
178
+ }
179
+ }
180
+ }
181
+ } }, n.createElement("label", { "cmdk-label": "", htmlFor: _.inputId, id: _.labelId, style: Le }, b), z(t, (e) => n.createElement(de.Provider, { value: y }, n.createElement(ce.Provider, { value: _ }, e))));
182
+ }), we = n.forwardRef((t, a) => {
183
+ var r, v;
184
+ let i = K(), c = n.useRef(null), d = n.useContext(se), m = O(), b = me(t), s = (v = (r = b.current) == null ? void 0 : r.forceMount) != null ? v : d == null ? void 0 : d.forceMount;
185
+ M(() => {
186
+ if (!s) return m.item(i, d == null ? void 0 : d.id);
187
+ }, [s]);
188
+ let h = ve(i, c, [t.value, t.children, c], t.keywords), R = Z(), k = S((g) => g.value && g.value === h.current), w = S((g) => s || m.filter() === !1 ? !0 : g.search ? g.filtered.items.get(i) > 0 : !0);
189
+ n.useEffect(() => {
190
+ let g = c.current;
191
+ if (!(!g || t.disabled)) return g.addEventListener(Y, V), () => g.removeEventListener(Y, V);
192
+ }, [w, t.onSelect, t.disabled]);
193
+ function V() {
194
+ var g, y;
195
+ B(), (y = (g = b.current).onSelect) == null || y.call(g, h.current);
196
+ }
197
+ function B() {
198
+ R.setState("value", h.current, !0);
199
+ }
200
+ if (!w) return null;
201
+ let { disabled: x, value: j, onSelect: U, forceMount: ee, keywords: W, ...A } = t;
202
+ return n.createElement(I.div, { ref: q(c, a), ...A, id: i, "cmdk-item": "", role: "option", "aria-disabled": !!x, "aria-selected": !!k, "data-disabled": !!x, "data-selected": !!k, onPointerMove: x || m.getDisablePointerSelection() ? void 0 : B, onClick: x ? void 0 : V }, t.children);
203
+ }), ke = n.forwardRef((t, a) => {
204
+ let { heading: r, children: v, forceMount: i, ...c } = t, d = K(), m = n.useRef(null), b = n.useRef(null), s = K(), h = O(), R = S((w) => i || h.filter() === !1 ? !0 : w.search ? w.filtered.groups.has(d) : !0);
205
+ M(() => h.group(d), []), ve(d, m, [t.value, t.heading, b]);
206
+ let k = n.useMemo(() => ({ id: d, forceMount: i }), [i]);
207
+ return n.createElement(I.div, { ref: q(m, a), ...c, "cmdk-group": "", role: "presentation", hidden: R ? void 0 : !0 }, r && n.createElement("div", { ref: b, "cmdk-group-heading": "", "aria-hidden": !0, id: s }, r), z(t, (w) => n.createElement("div", { "cmdk-group-items": "", role: "group", "aria-labelledby": r ? s : void 0 }, n.createElement(se.Provider, { value: k }, w))));
208
+ }), Se = n.forwardRef((t, a) => {
209
+ let { alwaysRender: r, ...v } = t, i = n.useRef(null), c = S((d) => !d.search);
210
+ return !r && !c ? null : n.createElement(I.div, { ref: q(i, a), ...v, "cmdk-separator": "", role: "separator" });
211
+ }), Ie = n.forwardRef((t, a) => {
212
+ let { onValueChange: r, ...v } = t, i = t.value != null, c = Z(), d = S((s) => s.search), m = S((s) => s.selectedItemId), b = O();
213
+ return n.useEffect(() => {
214
+ t.value != null && c.setState("search", t.value);
215
+ }, [t.value]), n.createElement(I.input, { ref: a, ...v, "cmdk-input": "", autoComplete: "off", autoCorrect: "off", spellCheck: !1, "aria-autocomplete": "list", role: "combobox", "aria-expanded": !0, "aria-controls": b.listId, "aria-labelledby": b.labelId, "aria-activedescendant": m, id: b.inputId, type: "text", value: i ? t.value : d, onChange: (s) => {
216
+ i || c.setState("search", s.target.value), r == null || r(s.target.value);
217
+ } });
218
+ }), Re = n.forwardRef((t, a) => {
219
+ let { children: r, label: v = "Suggestions", ...i } = t, c = n.useRef(null), d = n.useRef(null), m = S((s) => s.selectedItemId), b = O();
220
+ return n.useEffect(() => {
221
+ if (d.current && c.current) {
222
+ let s = d.current, h = c.current, R, k = new ResizeObserver(() => {
223
+ R = requestAnimationFrame(() => {
224
+ let w = s.offsetHeight;
225
+ h.style.setProperty("--cmdk-list-height", w.toFixed(1) + "px");
226
+ });
227
+ });
228
+ return k.observe(s), () => {
229
+ cancelAnimationFrame(R), k.unobserve(s);
230
+ };
231
+ }
232
+ }, []), n.createElement(I.div, { ref: q(c, a), ...i, "cmdk-list": "", role: "listbox", tabIndex: -1, "aria-activedescendant": m, "aria-label": v, id: b.listId }, z(t, (s) => n.createElement("div", { ref: q(d, b.listInnerRef), "cmdk-list-sizer": "" }, s)));
233
+ }), xe = n.forwardRef((t, a) => {
234
+ let { open: r, onOpenChange: v, overlayClassName: i, contentClassName: c, container: d, ...m } = t;
235
+ return n.createElement(ge, { open: r, onOpenChange: v }, n.createElement(he, { container: d }, n.createElement(be, { "cmdk-overlay": "", className: i }), n.createElement(Ee, { "aria-label": t.label, "cmdk-dialog": "", className: c }, n.createElement(fe, { ref: a, ...m }))));
236
+ }), Ae = n.forwardRef((t, a) => S((r) => r.filtered.count === 0) ? n.createElement(I.div, { ref: a, ...t, "cmdk-empty": "", role: "presentation" }) : null), Me = n.forwardRef((t, a) => {
237
+ let { progress: r, children: v, label: i = "Loading...", ...c } = t;
238
+ return n.createElement(I.div, { ref: a, ...c, "cmdk-loading": "", role: "progressbar", "aria-valuenow": r, "aria-valuemin": 0, "aria-valuemax": 100, "aria-label": i }, z(t, (d) => n.createElement("div", { "aria-hidden": !0 }, d)));
239
+ }), Ne = Object.assign(fe, { List: Re, Item: we, Input: Ie, Group: ke, Separator: Se, Dialog: xe, Empty: Ae, Loading: Me });
240
+ function Pe(t, a) {
241
+ let r = t.nextElementSibling;
242
+ for (; r; ) {
243
+ if (r.matches(a)) return r;
244
+ r = r.nextElementSibling;
245
+ }
246
+ }
247
+ function De(t, a) {
248
+ let r = t.previousElementSibling;
249
+ for (; r; ) {
250
+ if (r.matches(a)) return r;
251
+ r = r.previousElementSibling;
252
+ }
253
+ }
254
+ function me(t) {
255
+ let a = n.useRef(t);
256
+ return M(() => {
257
+ a.current = t;
258
+ }), a;
259
+ }
260
+ var M = typeof window > "u" ? n.useEffect : n.useLayoutEffect;
261
+ function F(t) {
262
+ let a = n.useRef();
263
+ return a.current === void 0 && (a.current = t()), a;
264
+ }
265
+ function S(t) {
266
+ let a = Z(), r = () => t(a.snapshot());
267
+ return n.useSyncExternalStore(a.subscribe, r, r);
268
+ }
269
+ function ve(t, a, r, v = []) {
270
+ let i = n.useRef(), c = O();
271
+ return M(() => {
272
+ var d;
273
+ let m = (() => {
274
+ var s;
275
+ for (let h of r) {
276
+ if (typeof h == "string") return h.trim();
277
+ if (typeof h == "object" && "current" in h) return h.current ? (s = h.current.textContent) == null ? void 0 : s.trim() : i.current;
278
+ }
279
+ })(), b = v.map((s) => s.trim());
280
+ c.value(t, m, b), (d = a.current) == null || d.setAttribute(D, m), i.current = m;
281
+ }), i;
282
+ }
283
+ var Fe = () => {
284
+ let [t, a] = n.useState(), r = F(() => /* @__PURE__ */ new Map());
285
+ return M(() => {
286
+ r.current.forEach((v) => v()), r.current = /* @__PURE__ */ new Map();
287
+ }, [t]), (v, i) => {
288
+ r.current.set(v, i), a({});
289
+ };
290
+ };
291
+ function Ke(t) {
292
+ let a = t.type;
293
+ return typeof a == "function" ? a(t.props) : "render" in a ? a.render(t.props) : t;
294
+ }
295
+ function z({ asChild: t, children: a }, r) {
296
+ return t && n.isValidElement(a) ? n.cloneElement(Ke(a), { ref: a.ref }, r(a.props.children)) : r(a);
297
+ }
298
+ var Le = { position: "absolute", width: "1px", height: "1px", padding: "0", margin: "-1px", overflow: "hidden", clip: "rect(0, 0, 0, 0)", whiteSpace: "nowrap", borderWidth: "0" };
30
299
  export {
31
- w as Primitive
300
+ Ne as Command,
301
+ xe as CommandDialog,
302
+ Ae as CommandEmpty,
303
+ ke as CommandGroup,
304
+ Ie as CommandInput,
305
+ we as CommandItem,
306
+ Re as CommandList,
307
+ Me as CommandLoading,
308
+ fe as CommandRoot,
309
+ Se as CommandSeparator,
310
+ Ce as defaultFilter,
311
+ S as useCommandState
32
312
  };