@drjoshcsimmons/scl 0.1.2 → 0.1.4

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 (100) hide show
  1. package/README.md +202 -13
  2. package/dist/index100.js +13 -217
  3. package/dist/index101.js +8 -649
  4. package/dist/index102.js +48 -179
  5. package/dist/index103.js +218 -3
  6. package/dist/index106.js +21 -12
  7. package/dist/index107.js +3 -15
  8. package/dist/index108.js +32 -3
  9. package/dist/index109.js +12 -32
  10. package/dist/index11.js +1 -1
  11. package/dist/index110.js +12 -18
  12. package/dist/index115.js +1 -1
  13. package/dist/index116.js +1 -1
  14. package/dist/index117.js +2 -25
  15. package/dist/index118.js +2 -29
  16. package/dist/index119.js +25 -5
  17. package/dist/index12.js +1 -1
  18. package/dist/index120.js +29 -2
  19. package/dist/index121.js +5 -2
  20. package/dist/index125.js +1 -1
  21. package/dist/index126.js +1 -1
  22. package/dist/index13.js +2 -2
  23. package/dist/index130.js +1 -1
  24. package/dist/index14.js +2 -2
  25. package/dist/index15.js +2 -2
  26. package/dist/index17.js +4 -4
  27. package/dist/index18.js +2 -2
  28. package/dist/index20.js +2 -2
  29. package/dist/index21.js +1 -1
  30. package/dist/index22.js +1 -1
  31. package/dist/index23.js +1 -1
  32. package/dist/index25.js +3 -3
  33. package/dist/index26.js +1 -1
  34. package/dist/index27.js +3 -3
  35. package/dist/index29.js +1 -1
  36. package/dist/index31.js +1 -1
  37. package/dist/index33.js +1 -1
  38. package/dist/index36.js +2 -2
  39. package/dist/index37.js +1 -1
  40. package/dist/index45.js +8 -8
  41. package/dist/index46.js +1 -1
  42. package/dist/index47.js +435 -33
  43. package/dist/index48.js +141 -98
  44. package/dist/index49.js +302 -65
  45. package/dist/index5.js +1 -1
  46. package/dist/index50.js +12 -310
  47. package/dist/index51.js +33 -12
  48. package/dist/index52.js +104 -246
  49. package/dist/index53.js +73 -12
  50. package/dist/index54.js +12 -60
  51. package/dist/index55.js +9 -254
  52. package/dist/index56.js +7 -7
  53. package/dist/index57.js +60 -9
  54. package/dist/index58.js +210 -110
  55. package/dist/index59.js +4 -5
  56. package/dist/index6.js +1 -1
  57. package/dist/index60.js +11 -18
  58. package/dist/index61.js +110 -210
  59. package/dist/index62.js +260 -11
  60. package/dist/index63.js +5 -4
  61. package/dist/index64.js +71 -230
  62. package/dist/index65.js +9 -9
  63. package/dist/index66.js +8 -8
  64. package/dist/index67.js +21 -160
  65. package/dist/index68.js +835 -105
  66. package/dist/index69.js +9 -336
  67. package/dist/index7.js +1 -1
  68. package/dist/index70.js +248 -76
  69. package/dist/index71.js +30 -434
  70. package/dist/index72.js +332 -18
  71. package/dist/index73.js +204 -823
  72. package/dist/index74.js +18 -9
  73. package/dist/index75.js +130 -31
  74. package/dist/index76.js +66 -5
  75. package/dist/index77.js +42 -64
  76. package/dist/index78.js +24 -49
  77. package/dist/index79.js +7 -4
  78. package/dist/index8.js +1 -1
  79. package/dist/index80.js +49 -24
  80. package/dist/index81.js +1 -1
  81. package/dist/index82.js +10 -68
  82. package/dist/index83.js +7 -10
  83. package/dist/index84.js +3 -54
  84. package/dist/index85.js +5 -10
  85. package/dist/index86.js +25 -30
  86. package/dist/index87.js +178 -10
  87. package/dist/index88.js +66 -43
  88. package/dist/index89.js +14 -7
  89. package/dist/index9.js +2 -2
  90. package/dist/index90.js +30 -15
  91. package/dist/index91.js +48 -118
  92. package/dist/index92.js +10 -134
  93. package/dist/index93.js +4 -14
  94. package/dist/index94.js +11 -13
  95. package/dist/index95.js +54 -9
  96. package/dist/index96.js +648 -48
  97. package/dist/index97.js +120 -49
  98. package/dist/index98.js +134 -5
  99. package/dist/index99.js +14 -25
  100. package/package.json +1 -1
package/dist/index48.js CHANGED
@@ -1,120 +1,163 @@
1
- import * as o from "react";
2
- import { composeEventHandlers as T } from "./index76.js";
3
- import { createContextScope as S } from "./index77.js";
4
- import { useControllableState as D } from "./index78.js";
5
- import { useLayoutEffect as L } from "./index79.js";
6
- import { useComposedRefs as M } from "./index80.js";
7
- import { Primitive as v } from "./index81.js";
8
- import { Presence as k } from "./index82.js";
9
- import { useId as F } from "./index83.js";
10
- import { jsx as c } from "react/jsx-runtime";
11
- var u = "Collapsible", [B, W] = S(u), [G, g] = B(u), w = o.forwardRef(
12
- (e, a) => {
1
+ import * as v from "react";
2
+ import { composeEventHandlers as g } from "./index79.js";
3
+ import { createContextScope as x } from "./index76.js";
4
+ import { createRovingFocusGroupScope as C, Root as E, Item as F } from "./index87.js";
5
+ import { Presence as w } from "./index88.js";
6
+ import { Primitive as b } from "./index81.js";
7
+ import { useDirection as D } from "./index83.js";
8
+ import { useControllableState as V } from "./index80.js";
9
+ import { useId as G } from "./index82.js";
10
+ import { jsx as l } from "react/jsx-runtime";
11
+ var p = "Tabs", [L] = x(p, [
12
+ C
13
+ ]), h = C(), [$, T] = L(p), I = v.forwardRef(
14
+ (e, r) => {
13
15
  const {
14
- __scopeCollapsible: i,
15
- open: r,
16
- defaultOpen: t,
17
- disabled: l,
18
- onOpenChange: s,
16
+ __scopeTabs: s,
17
+ value: t,
18
+ onValueChange: n,
19
+ defaultValue: c,
20
+ orientation: o = "horizontal",
21
+ dir: d,
22
+ activationMode: f = "automatic",
19
23
  ...m
20
- } = e, [d, p] = D({
21
- prop: r,
22
- defaultProp: t ?? !1,
23
- onChange: s,
24
- caller: u
24
+ } = e, i = D(d), [a, u] = V({
25
+ prop: t,
26
+ onChange: n,
27
+ defaultProp: c ?? "",
28
+ caller: p
25
29
  });
26
- return /* @__PURE__ */ c(
27
- G,
30
+ return /* @__PURE__ */ l(
31
+ $,
28
32
  {
29
- scope: i,
30
- disabled: l,
31
- contentId: F(),
32
- open: d,
33
- onOpenToggle: o.useCallback(() => p((C) => !C), [p]),
34
- children: /* @__PURE__ */ c(
35
- v.div,
33
+ scope: s,
34
+ baseId: G(),
35
+ value: a,
36
+ onValueChange: u,
37
+ orientation: o,
38
+ dir: i,
39
+ activationMode: f,
40
+ children: /* @__PURE__ */ l(
41
+ b.div,
36
42
  {
37
- "data-state": h(d),
38
- "data-disabled": l ? "" : void 0,
43
+ dir: i,
44
+ "data-orientation": o,
39
45
  ...m,
40
- ref: a
46
+ ref: r
41
47
  }
42
48
  )
43
49
  }
44
50
  );
45
51
  }
46
52
  );
47
- w.displayName = u;
48
- var A = "CollapsibleTrigger", I = o.forwardRef(
49
- (e, a) => {
50
- const { __scopeCollapsible: i, ...r } = e, t = g(A, i);
51
- return /* @__PURE__ */ c(
52
- v.button,
53
+ I.displayName = p;
54
+ var R = "TabsList", _ = v.forwardRef(
55
+ (e, r) => {
56
+ const { __scopeTabs: s, loop: t = !0, ...n } = e, c = T(R, s), o = h(s);
57
+ return /* @__PURE__ */ l(
58
+ E,
53
59
  {
54
- type: "button",
55
- "aria-controls": t.contentId,
56
- "aria-expanded": t.open || !1,
57
- "data-state": h(t.open),
58
- "data-disabled": t.disabled ? "" : void 0,
59
- disabled: t.disabled,
60
- ...r,
61
- ref: a,
62
- onClick: T(e.onClick, t.onOpenToggle)
60
+ asChild: !0,
61
+ ...o,
62
+ orientation: c.orientation,
63
+ dir: c.dir,
64
+ loop: t,
65
+ children: /* @__PURE__ */ l(
66
+ b.div,
67
+ {
68
+ role: "tablist",
69
+ "aria-orientation": c.orientation,
70
+ ...n,
71
+ ref: r
72
+ }
73
+ )
74
+ }
75
+ );
76
+ }
77
+ );
78
+ _.displayName = R;
79
+ var y = "TabsTrigger", A = v.forwardRef(
80
+ (e, r) => {
81
+ const { __scopeTabs: s, value: t, disabled: n = !1, ...c } = e, o = T(y, s), d = h(s), f = P(o.baseId, t), m = S(o.baseId, t), i = t === o.value;
82
+ return /* @__PURE__ */ l(
83
+ F,
84
+ {
85
+ asChild: !0,
86
+ ...d,
87
+ focusable: !n,
88
+ active: i,
89
+ children: /* @__PURE__ */ l(
90
+ b.button,
91
+ {
92
+ type: "button",
93
+ role: "tab",
94
+ "aria-selected": i,
95
+ "aria-controls": m,
96
+ "data-state": i ? "active" : "inactive",
97
+ "data-disabled": n ? "" : void 0,
98
+ disabled: n,
99
+ id: f,
100
+ ...c,
101
+ ref: r,
102
+ onMouseDown: g(e.onMouseDown, (a) => {
103
+ !n && a.button === 0 && a.ctrlKey === !1 ? o.onValueChange(t) : a.preventDefault();
104
+ }),
105
+ onKeyDown: g(e.onKeyDown, (a) => {
106
+ [" ", "Enter"].includes(a.key) && o.onValueChange(t);
107
+ }),
108
+ onFocus: g(e.onFocus, () => {
109
+ const a = o.activationMode !== "manual";
110
+ !i && !n && a && o.onValueChange(t);
111
+ })
112
+ }
113
+ )
63
114
  }
64
115
  );
65
116
  }
66
117
  );
67
- I.displayName = A;
68
- var R = "CollapsibleContent", O = o.forwardRef(
69
- (e, a) => {
70
- const { forceMount: i, ...r } = e, t = g(R, e.__scopeCollapsible);
71
- return /* @__PURE__ */ c(k, { present: i || t.open, children: ({ present: l }) => /* @__PURE__ */ c($, { ...r, ref: a, present: l }) });
118
+ A.displayName = y;
119
+ var M = "TabsContent", N = v.forwardRef(
120
+ (e, r) => {
121
+ const { __scopeTabs: s, value: t, forceMount: n, children: c, ...o } = e, d = T(M, s), f = P(d.baseId, t), m = S(d.baseId, t), i = t === d.value, a = v.useRef(i);
122
+ return v.useEffect(() => {
123
+ const u = requestAnimationFrame(() => a.current = !1);
124
+ return () => cancelAnimationFrame(u);
125
+ }, []), /* @__PURE__ */ l(w, { present: n || i, children: ({ present: u }) => /* @__PURE__ */ l(
126
+ b.div,
127
+ {
128
+ "data-state": i ? "active" : "inactive",
129
+ "data-orientation": d.orientation,
130
+ role: "tabpanel",
131
+ "aria-labelledby": f,
132
+ hidden: !u,
133
+ id: m,
134
+ tabIndex: 0,
135
+ ...o,
136
+ ref: r,
137
+ style: {
138
+ ...e.style,
139
+ animationDuration: a.current ? "0s" : void 0
140
+ },
141
+ children: u && c
142
+ }
143
+ ) });
72
144
  }
73
145
  );
74
- O.displayName = R;
75
- var $ = o.forwardRef((e, a) => {
76
- const { __scopeCollapsible: i, present: r, children: t, ...l } = e, s = g(R, i), [m, d] = o.useState(r), p = o.useRef(null), C = M(a, p), y = o.useRef(0), x = y.current, N = o.useRef(0), P = N.current, b = s.open || m, _ = o.useRef(b), f = o.useRef(void 0);
77
- return o.useEffect(() => {
78
- const n = requestAnimationFrame(() => _.current = !1);
79
- return () => cancelAnimationFrame(n);
80
- }, []), L(() => {
81
- const n = p.current;
82
- if (n) {
83
- f.current = f.current || {
84
- transitionDuration: n.style.transitionDuration,
85
- animationName: n.style.animationName
86
- }, n.style.transitionDuration = "0s", n.style.animationName = "none";
87
- const E = n.getBoundingClientRect();
88
- y.current = E.height, N.current = E.width, _.current || (n.style.transitionDuration = f.current.transitionDuration, n.style.animationName = f.current.animationName), d(r);
89
- }
90
- }, [s.open, r]), /* @__PURE__ */ c(
91
- v.div,
92
- {
93
- "data-state": h(s.open),
94
- "data-disabled": s.disabled ? "" : void 0,
95
- id: s.contentId,
96
- hidden: !b,
97
- ...l,
98
- ref: C,
99
- style: {
100
- "--radix-collapsible-content-height": x ? `${x}px` : void 0,
101
- "--radix-collapsible-content-width": P ? `${P}px` : void 0,
102
- ...e.style
103
- },
104
- children: b && t
105
- }
106
- );
107
- });
108
- function h(e) {
109
- return e ? "open" : "closed";
146
+ N.displayName = M;
147
+ function P(e, r) {
148
+ return `${e}-trigger-${r}`;
149
+ }
150
+ function S(e, r) {
151
+ return `${e}-content-${r}`;
110
152
  }
111
- var X = w, Y = I, Z = O;
153
+ var Q = I, U = _, W = A, X = N;
112
154
  export {
113
- w as Collapsible,
114
- O as CollapsibleContent,
115
- I as CollapsibleTrigger,
116
- Z as Content,
117
- X as Root,
118
- Y as Trigger,
119
- W as createCollapsibleScope
155
+ X as Content,
156
+ U as List,
157
+ Q as Root,
158
+ I as Tabs,
159
+ N as TabsContent,
160
+ _ as TabsList,
161
+ A as TabsTrigger,
162
+ W as Trigger
120
163
  };
package/dist/index49.js CHANGED
@@ -1,75 +1,312 @@
1
- import * as i from "react";
2
- import { createContextScope as C } from "./index84.js";
3
- import { useCallbackRef as h } from "./index85.js";
4
- import { useLayoutEffect as f } from "./index79.js";
5
- import { Primitive as m } from "./index86.js";
6
- import { useIsHydrated as _ } from "./index87.js";
7
- import { jsx as l } from "react/jsx-runtime";
8
- var v = "Avatar", [y] = C(v), [x, A] = y(v), L = i.forwardRef(
9
- (t, e) => {
10
- const { __scopeAvatar: o, ...r } = t, [n, a] = i.useState("idle");
11
- return /* @__PURE__ */ l(
12
- x,
13
- {
14
- scope: o,
15
- imageLoadingStatus: n,
16
- onImageLoadingStatusChange: a,
17
- children: /* @__PURE__ */ l(m.span, { ...r, ref: e })
1
+ import { a as pe } from "./index89.js";
2
+ import { Root as ge, Portal as he, Overlay as be, Content as Ee } from "./index62.js";
3
+ import * as n from "react";
4
+ import { Primitive as I } from "./index90.js";
5
+ import { useId as K } from "./index82.js";
6
+ import { composeRefs as q } from "./index78.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
+ }
18
37
  }
19
- );
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;
20
62
  }
21
- );
22
- L.displayName = v;
23
- var S = "AvatarImage", E = i.forwardRef(
24
- (t, e) => {
25
- const { __scopeAvatar: o, src: r, onLoadingStatusChange: n = () => {
26
- }, ...a } = t, u = A(S, o), s = N(r, a), d = h((c) => {
27
- n(c), u.onImageLoadingStatusChange(c);
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);
28
85
  });
29
- return f(() => {
30
- s !== "idle" && d(s);
31
- }, [s, d]), s === "loaded" ? /* @__PURE__ */ l(m.img, { ...a, ref: e, src: r }) : null;
32
86
  }
33
- );
34
- E.displayName = S;
35
- var I = "AvatarFallback", R = i.forwardRef(
36
- (t, e) => {
37
- const { __scopeAvatar: o, delayMs: r, ...n } = t, a = A(I, o), [u, s] = i.useState(r === void 0);
38
- return i.useEffect(() => {
39
- if (r !== void 0) {
40
- const d = window.setTimeout(() => s(!0), r);
41
- return () => window.clearTimeout(d);
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;
42
167
  }
43
- }, [r]), u && a.imageLoadingStatus !== "loaded" ? /* @__PURE__ */ l(m.span, { ...n, ref: e }) : null;
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;
44
245
  }
45
- );
46
- R.displayName = I;
47
- function p(t, e) {
48
- return t ? e ? (t.src !== e && (t.src = e), t.complete && t.naturalWidth > 0 ? "loaded" : "loading") : "error" : "idle";
49
246
  }
50
- function N(t, { referrerPolicy: e, crossOrigin: o }) {
51
- const r = _(), n = i.useRef(null), a = r ? (n.current || (n.current = new window.Image()), n.current) : null, [u, s] = i.useState(
52
- () => p(a, t)
53
- );
54
- return f(() => {
55
- s(p(a, t));
56
- }, [a, t]), f(() => {
57
- const d = (w) => () => {
58
- s(w);
59
- };
60
- if (!a) return;
61
- const c = d("loaded"), g = d("error");
62
- return a.addEventListener("load", c), a.addEventListener("error", g), e && (a.referrerPolicy = e), typeof o == "string" && (a.crossOrigin = o), () => {
63
- a.removeEventListener("load", c), a.removeEventListener("error", g);
64
- };
65
- }, [a, o, e]), u;
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);
66
297
  }
67
- var H = L, j = E, B = R;
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" };
68
299
  export {
69
- L as Avatar,
70
- R as AvatarFallback,
71
- E as AvatarImage,
72
- B as Fallback,
73
- j as Image,
74
- H as Root
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
75
312
  };
package/dist/index5.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { jsx as a } from "react/jsx-runtime";
2
2
  import * as o from "react";
3
- import { cva as i } from "./index47.js";
3
+ import { cva as i } from "./index51.js";
4
4
  import { cn as s } from "./index2.js";
5
5
  const n = i(
6
6
  "relative w-full px-4 py-3 text-sm font-medium [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg~*]:pl-7",