neatkit 0.11.0 → 0.12.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.
Files changed (55) hide show
  1. package/dist/{Button-DtrX4X-s.cjs → Button-6oWs-pyF.cjs} +1 -1
  2. package/dist/{Button-LmEHdRkW.js → Button-B0E-M8mp.js} +1 -1
  3. package/dist/Button.cjs +1 -1
  4. package/dist/Button.js +1 -1
  5. package/dist/Card.cjs +1 -1
  6. package/dist/Card.js +75 -2
  7. package/dist/Checkbox.cjs +1 -1
  8. package/dist/Checkbox.js +1 -1
  9. package/dist/Code-f0GWveGp.cjs +4 -0
  10. package/dist/{Code-Bp2X1k-g.js → Code-pROJjsiG.js} +57 -58
  11. package/dist/Code.cjs +1 -1
  12. package/dist/Code.js +1 -1
  13. package/dist/Icon-BFaHVAoQ.cjs +1 -0
  14. package/dist/{Icon-NT3kRJYz.js → Icon-Cj1s40xn.js} +122 -91
  15. package/dist/Icon.cjs +1 -1
  16. package/dist/Icon.js +1 -1
  17. package/dist/Input.cjs +1 -1
  18. package/dist/Input.js +1 -1
  19. package/dist/Markdown.cjs +1 -1
  20. package/dist/Markdown.js +76 -75
  21. package/dist/Modal.cjs +1 -1
  22. package/dist/Modal.js +1 -1
  23. package/dist/PinInput.cjs +1 -1
  24. package/dist/PinInput.js +228 -192
  25. package/dist/Select.cjs +1 -1
  26. package/dist/Select.js +1 -1
  27. package/dist/Sidebar.cjs +1 -1
  28. package/dist/Sidebar.js +427 -344
  29. package/dist/{Table-GeoE4h-u.js → Table-B2G8CHJ9.js} +111 -108
  30. package/dist/Table-Z8Q6XRkc.cjs +1 -0
  31. package/dist/Table.cjs +1 -1
  32. package/dist/Table.js +1 -1
  33. package/dist/components/Card/Card.d.ts +22 -23
  34. package/dist/components/Card/components/CardBody.d.ts +24 -0
  35. package/dist/components/Card/components/CardFooter.d.ts +24 -0
  36. package/dist/components/Card/components/CardHeader.d.ts +24 -0
  37. package/dist/components/Card/index.d.ts +1 -1
  38. package/dist/components/Code/Code.d.ts +9 -7
  39. package/dist/components/Code/index.d.ts +1 -1
  40. package/dist/components/Icon/icons/ChainIcon.d.ts +11 -0
  41. package/dist/components/Icon/utils/registry.d.ts +1 -0
  42. package/dist/components/PinInput/hooks/usePinInput.d.ts +1 -1
  43. package/dist/components/Sidebar/Sidebar.d.ts +5 -0
  44. package/dist/components/Sidebar/components/SidebarFooter.d.ts +5 -0
  45. package/dist/components/Sidebar/hooks/useContentBelow.d.ts +23 -0
  46. package/dist/components/Sidebar/utils/children.d.ts +16 -0
  47. package/dist/components/Table/Table.d.ts +8 -2
  48. package/dist/components/Table/index.d.ts +1 -1
  49. package/dist/style.css +1 -1
  50. package/package.json +1 -1
  51. package/dist/Card-CPq6dsut.js +0 -34
  52. package/dist/Card-CQ-8_1tO.cjs +0 -1
  53. package/dist/Code-B7s_rN0G.cjs +0 -4
  54. package/dist/Icon-CMSHMSDJ.cjs +0 -1
  55. package/dist/Table-Bjw9lUKS.cjs +0 -1
package/dist/PinInput.js CHANGED
@@ -1,249 +1,285 @@
1
1
  "use client";
2
- import { jsxs as G, jsx as V } from "react/jsx-runtime";
3
- import { useRef as B, useState as H, useCallback as X, useEffect as K, forwardRef as Z } from "react";
4
- import { r as J, h as Q } from "./aria-Bv-xVREf.js";
5
- import { a as W } from "./reference-CXMr27nM.js";
6
- const Y = 3, ee = 10, q = 4;
7
- function te(r) {
8
- return Number.isFinite(r) ? Math.min(
9
- ee,
10
- Math.max(Y, Math.trunc(r))
11
- ) : q;
2
+ import { jsxs as q, jsx as w } from "react/jsx-runtime";
3
+ import { useRef as H, useState as B, useCallback as Q, useEffect as K, forwardRef as Y, useId as ee } from "react";
4
+ import { r as te, h as ne } from "./aria-Bv-xVREf.js";
5
+ import { a as ae } from "./reference-CXMr27nM.js";
6
+ const re = 3, oe = 10, W = 4;
7
+ function le(a) {
8
+ return Number.isFinite(a) ? Math.min(
9
+ oe,
10
+ Math.max(re, Math.trunc(a))
11
+ ) : W;
12
12
  }
13
- function S(r, s, l) {
14
- return (s === "numeric" ? r.replace(/[^0-9]/g, "") : r.replace(/[^0-9a-z]/gi, "").toUpperCase()).slice(0, l);
13
+ function L(a, i, c) {
14
+ return (i === "numeric" ? a.replace(/[^0-9]/g, "") : a.replace(/[^0-9a-z]/gi, "").toUpperCase()).slice(0, c);
15
15
  }
16
- function ne(r, s, l) {
17
- s.current = r, W(l, r);
16
+ function ie(a, i, c) {
17
+ i.current = a, ae(c, a);
18
18
  }
19
- function ae(r, s) {
20
- var c;
21
- const l = (c = Object.getOwnPropertyDescriptor(
22
- Object.getPrototypeOf(r),
19
+ function X(a) {
20
+ return a.getRootNode().activeElement === a;
21
+ }
22
+ function ce(a, i, c) {
23
+ const l = a.getRootNode();
24
+ function m() {
25
+ l.removeEventListener("pointercancel", u), l.removeEventListener("pointerup", u);
26
+ }
27
+ function u(f) {
28
+ const v = f.type === "pointerup" && f.target instanceof Node && i.contains(f.target);
29
+ m(), v || c();
30
+ }
31
+ return l.addEventListener("pointercancel", u), l.addEventListener("pointerup", u), m;
32
+ }
33
+ function se(a, i) {
34
+ var l;
35
+ const c = (l = Object.getOwnPropertyDescriptor(
36
+ Object.getPrototypeOf(a),
23
37
  "value"
24
- )) == null ? void 0 : c.set;
25
- l ? l.call(r, s) : r.value = s;
38
+ )) == null ? void 0 : l.set;
39
+ c ? c.call(a, i) : a.value = i;
26
40
  }
27
- function U(r, s, l) {
28
- const c = Math.min(l - 1, Math.max(0, s)), x = Math.min(c + 1, r.value.length);
29
- r.focus(), r.setSelectionRange(c, x);
41
+ function $(a, i, c) {
42
+ const l = Math.min(c - 1, Math.max(0, i)), m = Math.min(l + 1, a.value.length);
43
+ X(a) || a.focus(), a.setSelectionRange(l, m);
30
44
  }
31
- function re(r) {
45
+ function ue(a) {
32
46
  const {
33
- defaultValue: s,
34
- disabled: l,
35
- forwardedReference: c,
36
- length: x,
47
+ defaultValue: i,
48
+ disabled: c,
49
+ forwardedReference: l,
50
+ length: m,
37
51
  mode: u,
38
- onChange: M,
39
- onComplete: P,
40
- onFocus: _,
41
- onKeyDown: p,
42
- onPaste: g,
52
+ onChange: f,
53
+ onComplete: v,
54
+ onFocus: y,
55
+ onKeyDown: I,
56
+ onPaste: E,
43
57
  onSelect: N,
44
- readOnly: v,
45
- value: b
46
- } = r, n = te(x), w = S(
47
- s,
58
+ readOnly: T,
59
+ value: P
60
+ } = a, o = le(m), b = L(
61
+ i,
48
62
  u,
49
- n
50
- ), y = B(null), [k, R] = H(
51
- w
52
- ), [D, d] = H(0), f = b !== void 0, i = S(
53
- f ? b : k,
63
+ o
64
+ ), k = H(null), s = H(null), S = H(null), [D, x] = B(
65
+ b
66
+ ), [A, h] = B(0), p = P !== void 0, d = L(
67
+ p ? P : D,
54
68
  u,
55
- n
56
- ), C = X(
57
- (t) => ne(
58
- t,
59
- y,
60
- c
69
+ o
70
+ ), F = Q(
71
+ (e) => ie(
72
+ e,
73
+ k,
74
+ l
61
75
  ),
62
- [c]
76
+ [l]
63
77
  );
64
78
  K(() => {
65
- !f && k !== i && R(i);
66
- }, [f, i, k]), K(() => {
67
- var o;
68
- if (f) return;
69
- const t = (o = y.current) == null ? void 0 : o.form;
70
- if (!t) return;
71
- const e = t.getRootNode();
72
- function a(h) {
73
- h.target !== t || h.defaultPrevented || (R(w), d(0));
79
+ !p && D !== d && x(d);
80
+ }, [p, d, D]), K(() => () => {
81
+ var e;
82
+ return (e = s.current) == null ? void 0 : e.call(s);
83
+ }, []), K(() => {
84
+ var r;
85
+ if (p) return;
86
+ const e = (r = k.current) == null ? void 0 : r.form;
87
+ if (!e) return;
88
+ const n = e.getRootNode();
89
+ function t(g) {
90
+ g.target !== e || g.defaultPrevented || (x(b), h(0));
74
91
  }
75
- return e.addEventListener("reset", a), () => e.removeEventListener("reset", a);
76
- }, [f, w]);
77
- function E(t) {
78
- const e = t.selectionStart ?? i.length;
79
- return Math.min(n - 1, Math.max(0, e));
92
+ return n.addEventListener("reset", t), () => n.removeEventListener("reset", t);
93
+ }, [p, b]);
94
+ function R(e) {
95
+ const n = e.selectionStart ?? d.length;
96
+ return Math.min(o - 1, Math.max(0, n));
80
97
  }
81
- function T(t) {
82
- const e = t.currentTarget, a = e.selectionStart ?? e.value.length, o = S(e.value, u, n), h = S(
83
- e.value.slice(0, a),
98
+ function z(e) {
99
+ const n = e.currentTarget, t = n.selectionStart ?? n.value.length, r = L(n.value, u, o), g = L(
100
+ n.value.slice(0, t),
84
101
  u,
85
- n
102
+ o
86
103
  ).length;
87
- e.value = o, f || R(o), M == null || M(t), o.length === n && o !== i && (P == null || P(o));
88
- const m = Math.min(n - 1, h);
89
- d(m), e.setSelectionRange(
90
- m,
91
- Math.min(m + 1, o.length)
104
+ n.value = r, p || x(r), f == null || f(e), r.length === o && r !== d && (v == null || v(r));
105
+ const M = Math.min(o - 1, g);
106
+ h(M), n.setSelectionRange(
107
+ M,
108
+ Math.min(M + 1, r.length)
92
109
  );
93
110
  }
94
- function A(t) {
95
- if (g == null || g(t), t.defaultPrevented || l || v) return;
96
- const e = S(
97
- t.clipboardData.getData("text"),
111
+ function C(e) {
112
+ if (E == null || E(e), e.defaultPrevented || c || T) return;
113
+ const n = L(
114
+ e.clipboardData.getData("text"),
98
115
  u,
99
- n
116
+ o
100
117
  );
101
- if (t.preventDefault(), e.length === 0) return;
102
- const a = t.currentTarget, o = a.selectionStart ?? i.length, h = a.selectionEnd ?? o, m = e.length === n ? e : S(
103
- i.slice(0, o) + e + i.slice(h),
118
+ if (e.preventDefault(), n.length === 0) return;
119
+ const t = e.currentTarget, r = t.selectionStart ?? d.length, g = t.selectionEnd ?? r, M = n.length === o ? n : L(
120
+ d.slice(0, r) + n + d.slice(g),
104
121
  u,
105
- n
106
- ), L = e.length === n ? n : Math.min(n, o + e.length);
107
- ae(a, m), a.setSelectionRange(L, L), a.dispatchEvent(new Event("input", { bubbles: !0 }));
122
+ o
123
+ ), V = n.length === o ? o : Math.min(o, r + n.length);
124
+ se(t, M), t.setSelectionRange(V, V), t.dispatchEvent(new Event("input", { bubbles: !0 }));
108
125
  }
109
- function z(t) {
110
- if (p == null || p(t), t.defaultPrevented || t.key !== "ArrowLeft" && t.key !== "ArrowRight") return;
111
- t.preventDefault();
112
- const e = t.key === "ArrowLeft" ? -1 : 1, a = Math.min(
113
- n - 1,
114
- Math.max(0, E(t.currentTarget) + e)
126
+ function O(e) {
127
+ if (I == null || I(e), e.defaultPrevented || e.key !== "ArrowLeft" && e.key !== "ArrowRight") return;
128
+ e.preventDefault();
129
+ const n = e.key === "ArrowLeft" ? -1 : 1, t = Math.min(
130
+ o - 1,
131
+ Math.max(0, R(e.currentTarget) + n)
115
132
  );
116
- d(a), U(t.currentTarget, a, n);
133
+ h(t), $(e.currentTarget, t, o);
117
134
  }
118
- function F(t) {
119
- _ == null || _(t);
120
- const e = Math.min(n - 1, i.length);
121
- d(e), U(t.currentTarget, e, n);
135
+ function j(e) {
136
+ var r;
137
+ y == null || y(e), (r = s.current) == null || r.call(s), s.current = null;
138
+ const n = S.current;
139
+ S.current = null;
140
+ const t = n ?? Math.min(o - 1, d.length);
141
+ h(t), $(e.currentTarget, t, o);
122
142
  }
123
- function O(t) {
124
- N == null || N(t), d(E(t.currentTarget));
143
+ function U(e) {
144
+ N == null || N(e), h(R(e.currentTarget));
125
145
  }
126
- function j(t, e) {
127
- if (t.preventDefault(), l) return;
128
- const a = y.current;
129
- a && (d(e), U(a, e, n));
146
+ function G(e, n) {
147
+ var r;
148
+ if (c) return;
149
+ const t = k.current;
150
+ if (t) {
151
+ if (!X(t)) {
152
+ (r = s.current) == null || r.call(s), S.current = n, h(n), s.current = ce(
153
+ t,
154
+ e.currentTarget,
155
+ () => {
156
+ S.current = null, s.current = null;
157
+ }
158
+ );
159
+ return;
160
+ }
161
+ e.preventDefault(), S.current = null, h(n), $(t, n, o);
162
+ }
130
163
  }
131
164
  return {
132
- activeIndex: D,
133
- handleChange: T,
134
- handleFocus: F,
135
- handleKeyDown: z,
136
- handlePaste: A,
137
- handleSelect: O,
138
- handleSlotPointerDown: j,
139
- inputCallbackReference: C,
140
- length: n,
141
- renderedValue: i
165
+ activeIndex: A,
166
+ handleChange: z,
167
+ handleFocus: j,
168
+ handleKeyDown: O,
169
+ handlePaste: C,
170
+ handleSelect: U,
171
+ handleSlotPointerDown: G,
172
+ inputCallbackReference: F,
173
+ length: o,
174
+ renderedValue: d
142
175
  };
143
176
  }
144
- const ue = Z(function(s, l) {
177
+ const ge = Y(function(i, c) {
145
178
  const {
146
- "aria-invalid": c,
147
- autoCapitalize: x,
179
+ "aria-invalid": l,
180
+ autoCapitalize: m,
148
181
  autoComplete: u = "one-time-code",
149
- className: M,
150
- censored: P = !1,
151
- defaultValue: _ = "",
152
- disabled: p = !1,
153
- invalid: g = !1,
154
- length: N = q,
155
- mode: v = "numeric",
156
- onChange: b,
157
- onComplete: n,
158
- onFocus: w,
159
- onKeyDown: y,
160
- onPaste: k,
161
- onSelect: R,
162
- readOnly: D = !1,
163
- style: d,
164
- value: f,
165
- wrap: i = !1,
166
- ...C
167
- } = s, {
168
- activeIndex: E,
169
- handleChange: T,
170
- handleFocus: A,
171
- handleKeyDown: z,
172
- handlePaste: F,
173
- handleSelect: O,
174
- handleSlotPointerDown: j,
175
- inputCallbackReference: t,
176
- length: e,
177
- renderedValue: a
178
- } = re({
179
- defaultValue: _,
180
- disabled: p,
181
- forwardedReference: l,
182
- length: N,
183
- mode: v,
184
- onChange: b,
185
- onComplete: n,
186
- onFocus: w,
187
- onKeyDown: y,
188
- onPaste: k,
189
- onSelect: R,
190
- readOnly: D,
191
- value: f
192
- }), o = g || Q(c), h = !i && e >= 6 && e % 2 === 0, m = e / 2, L = {
193
- ...d,
194
- "--nk-pin-input-columns": Math.ceil(e / 2)
182
+ className: f,
183
+ censored: v = !1,
184
+ defaultValue: y = "",
185
+ disabled: I = !1,
186
+ id: E,
187
+ invalid: N = !1,
188
+ length: T = W,
189
+ mode: P = "numeric",
190
+ onChange: o,
191
+ onComplete: b,
192
+ onFocus: k,
193
+ onKeyDown: s,
194
+ onPaste: S,
195
+ onSelect: D,
196
+ readOnly: x = !1,
197
+ style: A,
198
+ value: h,
199
+ wrap: p = !1,
200
+ ...d
201
+ } = i, F = ee(), R = E ?? `${F}-control`, {
202
+ activeIndex: z,
203
+ handleChange: C,
204
+ handleFocus: O,
205
+ handleKeyDown: j,
206
+ handlePaste: U,
207
+ handleSelect: G,
208
+ handleSlotPointerDown: e,
209
+ inputCallbackReference: n,
210
+ length: t,
211
+ renderedValue: r
212
+ } = ue({
213
+ defaultValue: y,
214
+ disabled: I,
215
+ forwardedReference: c,
216
+ length: T,
217
+ mode: P,
218
+ onChange: o,
219
+ onComplete: b,
220
+ onFocus: k,
221
+ onKeyDown: s,
222
+ onPaste: S,
223
+ onSelect: D,
224
+ readOnly: x,
225
+ value: h
226
+ }), g = N || ne(l), M = !p && t >= 6 && t % 2 === 0, V = t / 2, Z = {
227
+ ...A,
228
+ "--nk-pin-input-columns": Math.ceil(t / 2)
195
229
  };
196
- return /* @__PURE__ */ G(
230
+ return /* @__PURE__ */ q(
197
231
  "span",
198
232
  {
199
- className: ["nk-pin-input", M].filter(Boolean).join(" "),
200
- "data-disabled": p || void 0,
201
- "data-invalid": o || void 0,
202
- "data-read-only": D || void 0,
203
- "data-wrap": i || void 0,
204
- style: L,
233
+ className: ["nk-pin-input", f].filter(Boolean).join(" "),
234
+ "data-disabled": I || void 0,
235
+ "data-invalid": g || void 0,
236
+ "data-read-only": x || void 0,
237
+ "data-wrap": p || void 0,
238
+ style: Z,
205
239
  children: [
206
- /* @__PURE__ */ V(
240
+ /* @__PURE__ */ w(
207
241
  "input",
208
242
  {
209
- ...C,
210
- ref: t,
211
- "aria-invalid": J(g, c),
212
- autoCapitalize: x ?? (v === "alphanumeric" ? "characters" : "off"),
243
+ ...d,
244
+ ref: n,
245
+ "aria-invalid": te(N, l),
246
+ autoCapitalize: m ?? (P === "alphanumeric" ? "characters" : "off"),
213
247
  autoComplete: u,
214
248
  className: "nk-pin-input__control",
215
- disabled: p,
216
- inputMode: v === "numeric" ? "numeric" : "text",
217
- maxLength: e,
218
- minLength: e,
219
- onChange: T,
220
- onFocus: A,
221
- onKeyDown: z,
222
- onPaste: F,
223
- onSelect: O,
224
- pattern: v === "numeric" ? `[0-9]{${e}}` : `[0-9A-Za-z]{${e}}`,
225
- readOnly: D,
249
+ disabled: I,
250
+ id: R,
251
+ inputMode: P === "numeric" ? "numeric" : "text",
252
+ maxLength: t,
253
+ minLength: t,
254
+ onChange: C,
255
+ onFocus: O,
256
+ onKeyDown: j,
257
+ onPaste: U,
258
+ onSelect: G,
259
+ pattern: P === "numeric" ? `[0-9]{${t}}` : `[0-9A-Za-z]{${t}}`,
260
+ readOnly: x,
226
261
  spellCheck: !1,
227
262
  type: "text",
228
- value: a
263
+ value: r
229
264
  }
230
265
  ),
231
- /* @__PURE__ */ V("span", { "aria-hidden": "true", className: "nk-pin-input__slots", children: Array.from({ length: e }, (oe, I) => /* @__PURE__ */ G("span", { className: "nk-pin-input__slot-group", children: [
232
- h && I === m ? /* @__PURE__ */ V("span", { className: "nk-pin-input__separator", children: "-" }) : null,
233
- /* @__PURE__ */ V(
234
- "span",
266
+ /* @__PURE__ */ w("span", { "aria-hidden": "true", className: "nk-pin-input__slots", children: Array.from({ length: t }, (de, _) => /* @__PURE__ */ q("span", { className: "nk-pin-input__slot-group", children: [
267
+ M && _ === V ? /* @__PURE__ */ w("span", { className: "nk-pin-input__separator", children: "-" }) : null,
268
+ /* @__PURE__ */ w(
269
+ "label",
235
270
  {
236
271
  className: "nk-pin-input__slot",
237
- "data-active": E === I || void 0,
238
- onPointerDown: ($) => j($, I),
239
- children: P && a[I] ? /* @__PURE__ */ V("span", { className: "nk-pin-input__censor" }) : a[I] ?? ""
272
+ "data-active": z === _ || void 0,
273
+ htmlFor: R,
274
+ onPointerDown: (J) => e(J, _),
275
+ children: /* @__PURE__ */ w("span", { "aria-hidden": "true", children: v && r[_] ? /* @__PURE__ */ w("span", { className: "nk-pin-input__censor" }) : r[_] ?? "" })
240
276
  }
241
277
  )
242
- ] }, I)) })
278
+ ] }, _)) })
243
279
  ]
244
280
  }
245
281
  );
246
282
  });
247
283
  export {
248
- ue as default
284
+ ge as default
249
285
  };
package/dist/Select.cjs CHANGED
@@ -1 +1 @@
1
- "use client";"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const d=require("react/jsx-runtime"),r=require("react"),J=require("./effects-D98vUn6N.cjs"),z=require("./aria-DM-xYEHQ.cjs"),xe=require("./reference-C2guRuR0.cjs"),H=require("./Icon-CMSHMSDJ.cjs"),U=require("./usePresence-Dm0mls5p.cjs"),Ie=require("./useAnchoredPosition-D7GRFzoX.cjs");function ge(t){const{form:n,onReset:s,resetValue:a,triggerReference:o}=t,l=r.useRef(null);return r.useEffect(()=>{var u;const i=(u=o.current)==null?void 0:u.form;if(!i)return;function h(){const b=l.current;if(b){const y=Array.from(b.options),g=y.find(x=>x.value===a)??y[0];y.forEach(x=>{x.defaultSelected=x===g})}s()}return i.addEventListener("reset",h),()=>i.removeEventListener("reset",h)},[n,s,a,o]),l}const M=8,F=4,ke=160,we=72;function Ee(t,n,s){const a=s.bottom-t.bottom-F-M,o=t.top-s.top-F-M,l=a<ke&&o>a,i=Math.max(we,l?o:a),h=Math.max(t.width,(n==null?void 0:n.width)??t.width),u=s.left+M,b=Math.min(Math.max(u,t.left),Math.max(u,s.right-M-h)),y=l?Math.max(s.top+M,t.top-F-Math.min((n==null?void 0:n.height)??i,i)):t.bottom+F;return{left:b,maxHeight:i,minWidth:t.width,top:y}}function Re(t,n,s,a){const o=r.useCallback(l=>{const{panelBounds:i,triggerBounds:h,visibleBounds:u}=l;return Ee(h,i,u)},[]);return Ie.useAnchoredPosition({active:t,boundary:a,fit:o,panel:s,trigger:n})}const _e=500;function Oe(t){const n=r.useRef(""),s=r.useRef(null),a=r.useRef(null);return r.useEffect(()=>()=>{const o=a.current;o&&s.current!==null&&o.clearTimeout(s.current)},[]),r.useCallback(o=>{var u;const l=(u=t.current)==null?void 0:u.ownerDocument.defaultView;if(!l)return null;a.current=l;const i=n.current+o,h=Array.from(i).every(b=>b===o);return n.current=h?o:i,s.current!==null&&l.clearTimeout(s.current),s.current=l.setTimeout(()=>{n.current="",s.current=null},_e),n.current},[t])}function Q(t,n,s){if(t.length===0)return-1;for(let a=1;a<=t.length;a+=1){const o=(n+s*a+t.length)%t.length;if(!t[o].disabled)return o}return-1}function Se(t,n,s){for(let a=1;a<=t.length;a+=1){const o=(s+a+t.length)%t.length,l=t[o];if(!l.disabled&&l.label.toLocaleLowerCase().startsWith(n))return o}return-1}function De(t){const n=new Set;t.forEach(s=>{if(n.has(s.value))throw new Error("Select option values must be unique");n.add(s.value)})}function je(t){const{active:n,closeOnEscape:s,closeOnOutsideInteraction:a,highlightedIndex:o,id:l,listboxReference:i,onEscapeDismiss:h,onEscapeKeyDown:u,onHighlight:b,onOutsideDismiss:y,onPointerDownOutside:g,onSelect:x,options:k,ownerDocument:P,position:R,selectedValue:_,state:S,triggerReference:q}=t,m=r.useRef(null),V=J.useBoundary("Select").boundaryElement,O=U.useOverlayLayer(!0,V),W=r.useMemo(()=>[q,m],[q]),$=r.useCallback(f=>{m.current=f,i(f)},[i]);return U.useDismissableLayer({active:n,boundaries:W,boundary:V,dismissOnEscape:s,dismissOnPointerDownOutside:a,layerId:O.id,onEscapeDismiss:h,onEscapeKeyDown:u,onPointerDownOutside:g,onPointerDownOutsideDismiss:y,ownerDocument:P}),d.jsx("div",{"aria-hidden":n?void 0:!0,"aria-labelledby":l,className:"nk-select__listbox","data-state":S,id:`${l}-listbox`,ref:$,role:"listbox",style:R?{left:R.left,maxHeight:R.maxHeight,minWidth:R.minWidth,top:R.top,zIndex:O.zIndex}:{visibility:"hidden",zIndex:O.zIndex},children:k.map((f,C)=>d.jsxs("div",{"aria-disabled":f.disabled||void 0,"aria-selected":f.value===_,className:"nk-select__option","data-highlighted":C===o||void 0,"data-selected":f.value===_||void 0,id:`${l}-option-${C}`,onPointerDown:X=>{X.preventDefault(),f.disabled||x(f)},onPointerMove:()=>{f.disabled||b(C)},role:"option",children:[f.icon?d.jsx(H.Icon,{type:f.icon}):null,d.jsx("span",{className:"nk-select__option-label",children:f.label}),f.value===_?d.jsx(H.Icon,{className:"nk-select__check",type:"checkmark"}):null]},f.value))})}function Le(t,n,s){n.current=t,xe.assignElementReference(s,t)}function Pe(t){var ee;const{"aria-invalid":n,className:s,closeOnEscape:a=!0,closeOnOutsideInteraction:o=!0,defaultValue:l="",disabled:i=!1,displayOverride:h,form:u,forwardedReference:b,id:y,invalid:g=!1,name:x,onChange:k,onClick:P,onEscapeKeyDown:R,onKeyDown:_,onOpenChange:S,onPointerDownOutside:q,options:m,placeholder:V,required:O=!1,style:W,value:$,width:f,...C}=t;De(m);const X=r.useId(),D=y??X,I=r.useRef(null),[N,ne]=r.useState(null),[v,se]=r.useState(!1),[w,A]=r.useState(-1),[ae,Z]=r.useState(l),j=$!==void 0,L=j?$:ae,le=m.find(e=>e.value===L),ie=g||z.hasInvalidState(n),re=z.resolveAriaInvalid(g,n),Y=U.usePresence(v),T=((ee=I.current)==null?void 0:ee.ownerDocument)??(typeof document>"u"?null:document),oe=J.useBoundary("Select").boundaryElement,ce=Re(Y.present,I.current,N,oe),de=Oe(I),ue=f===void 0?W:{...W,width:f},G=h??le,fe=r.useCallback(e=>Le(e,I,b),[b]),p=r.useCallback(e=>{v!==e&&(se(e),S==null||S(e))},[S,v]),me=r.useCallback(()=>{j||Z(l),p(!1)},[l,j,p]),he=ge({form:u,onReset:me,resetValue:j?L:l,triggerReference:I}),K=r.useCallback((e=1)=>{const c=m.findIndex(te=>te.value===L&&!te.disabled),E=e===1?-1:m.length;A(c>=0?c:Q(m,E,e)),p(!0)},[m,L,p]),B=r.useCallback(e=>{var c;i||e.disabled||(j||Z(e.value),p(!1),(c=I.current)==null||c.focus(),k==null||k(e.value))},[i,j,k,p]),ve=r.useCallback(()=>{var e;p(!1),(e=I.current)==null||e.focus()},[p]),pe=r.useCallback(()=>{p(!1)},[p]);function be(e){P==null||P(e),!(e.defaultPrevented||i)&&(v?p(!1):K())}function ye(e){if(_==null||_(e),!(e.defaultPrevented||i)){if(e.key==="ArrowDown"||e.key==="ArrowUp"){e.preventDefault();const c=e.key==="ArrowDown"?1:-1;v?A(E=>Q(m,E,c)):K(c);return}if(e.key==="Home"||e.key==="End"){if(e.preventDefault(),!v)K(e.key==="Home"?1:-1);else{const c=e.key==="Home"?1:-1,E=c===1?-1:m.length;A(Q(m,E,c))}return}if(e.key==="Enter"||e.key===" "){e.preventDefault();const c=m[w];v&&c?B(c):v||K();return}if(e.key==="Tab"){p(!1);return}if(e.key.length===1&&!e.altKey&&!e.ctrlKey&&!e.metaKey){const c=de(e.key.toLocaleLowerCase());if(c===null)return;const E=Se(m,c,w);E>=0&&(e.preventDefault(),v||p(!0),A(E))}}}return r.useEffect(()=>{i&&p(!1)},[i,p]),r.useEffect(()=>{var e;if(v&&w>=0){const c=T==null?void 0:T.getElementById(`${D}-option-${w}`);c&&(N!=null&&N.contains(c))&&((e=c.scrollIntoView)==null||e.call(c,{block:"nearest"}))}},[w,D,N,v]),d.jsxs("span",{className:["nk-select",s].filter(Boolean).join(" "),"data-disabled":i||void 0,"data-invalid":ie||void 0,"data-mode":"custom","data-open":v||void 0,style:ue,children:[d.jsxs("button",{...C,ref:fe,"aria-activedescendant":v&&w>=0?`${D}-option-${w}`:void 0,"aria-controls":`${D}-listbox`,"aria-expanded":v,"aria-haspopup":"listbox","aria-invalid":re,"aria-required":O||void 0,"aria-autocomplete":"none",className:"nk-select__trigger",disabled:i,form:u,id:D,onClick:be,onKeyDown:ye,role:"combobox",type:"button",children:[G?d.jsxs("span",{className:"nk-select__value",children:[G.icon?d.jsx(H.Icon,{type:G.icon}):null,d.jsx("span",{className:"nk-select__value-label",children:G.label})]}):d.jsx("span",{className:"nk-select__placeholder",children:V}),d.jsx(H.Icon,{className:"nk-select__icon",type:"chevron-down"})]}),x||O?d.jsxs("select",{ref:he,"aria-hidden":"true",className:"nk-select__form-control",disabled:i,form:u,name:x,onChange:()=>{},onInvalid:e=>{var c;e.preventDefault(),(c=I.current)==null||c.focus()},required:O,tabIndex:-1,value:L,children:[d.jsx("option",{value:""}),m.map(e=>d.jsx("option",{disabled:e.disabled,value:e.value,children:e.label},e.value))]}):null,Y.present&&T?d.jsx(U.Portal,{children:d.jsx(je,{active:v,closeOnEscape:a,closeOnOutsideInteraction:o,highlightedIndex:w,id:D,listboxReference:ne,onEscapeDismiss:ve,onEscapeKeyDown:R,onHighlight:A,onOutsideDismiss:pe,onPointerDownOutside:q,onSelect:B,options:m,ownerDocument:T,position:ce,selectedValue:L,state:Y.state==="closing"?"closing":"open",triggerReference:I})}):null]})}function Ce(t){const{"aria-invalid":n,children:s,className:a,defaultValue:o,disabled:l=!1,forwardedReference:i,invalid:h=!1,placeholder:u,style:b,value:y,...g}=t,x=z.resolveAriaInvalid(h,n),k=h||z.hasInvalidState(n);return d.jsxs("span",{className:["nk-select",a].filter(Boolean).join(" "),"data-disabled":l||void 0,"data-invalid":k||void 0,"data-mode":"native",style:b,children:[d.jsxs("select",{...g,ref:i,"aria-invalid":x,className:"nk-select__control",defaultValue:y===void 0?o??(u!==void 0?"":void 0):void 0,disabled:l,value:y,children:[u!==void 0?d.jsx("option",{disabled:!0,value:"",children:u}):null,s]}),d.jsx(H.Icon,{className:"nk-select__icon",type:"chevron-down"})]})}const Ne=r.forwardRef(function(n,s){const{options:a}=n;return J.useBoundary("Select"),a!==void 0?d.jsx(Pe,{...n,forwardedReference:s}):d.jsx(Ce,{...n,forwardedReference:s})});exports.default=Ne;
1
+ "use client";"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const d=require("react/jsx-runtime"),r=require("react"),J=require("./effects-D98vUn6N.cjs"),z=require("./aria-DM-xYEHQ.cjs"),xe=require("./reference-C2guRuR0.cjs"),H=require("./Icon-BFaHVAoQ.cjs"),U=require("./usePresence-Dm0mls5p.cjs"),Ie=require("./useAnchoredPosition-D7GRFzoX.cjs");function ge(t){const{form:n,onReset:s,resetValue:a,triggerReference:o}=t,l=r.useRef(null);return r.useEffect(()=>{var u;const i=(u=o.current)==null?void 0:u.form;if(!i)return;function h(){const b=l.current;if(b){const y=Array.from(b.options),g=y.find(x=>x.value===a)??y[0];y.forEach(x=>{x.defaultSelected=x===g})}s()}return i.addEventListener("reset",h),()=>i.removeEventListener("reset",h)},[n,s,a,o]),l}const M=8,F=4,ke=160,we=72;function Ee(t,n,s){const a=s.bottom-t.bottom-F-M,o=t.top-s.top-F-M,l=a<ke&&o>a,i=Math.max(we,l?o:a),h=Math.max(t.width,(n==null?void 0:n.width)??t.width),u=s.left+M,b=Math.min(Math.max(u,t.left),Math.max(u,s.right-M-h)),y=l?Math.max(s.top+M,t.top-F-Math.min((n==null?void 0:n.height)??i,i)):t.bottom+F;return{left:b,maxHeight:i,minWidth:t.width,top:y}}function Re(t,n,s,a){const o=r.useCallback(l=>{const{panelBounds:i,triggerBounds:h,visibleBounds:u}=l;return Ee(h,i,u)},[]);return Ie.useAnchoredPosition({active:t,boundary:a,fit:o,panel:s,trigger:n})}const _e=500;function Oe(t){const n=r.useRef(""),s=r.useRef(null),a=r.useRef(null);return r.useEffect(()=>()=>{const o=a.current;o&&s.current!==null&&o.clearTimeout(s.current)},[]),r.useCallback(o=>{var u;const l=(u=t.current)==null?void 0:u.ownerDocument.defaultView;if(!l)return null;a.current=l;const i=n.current+o,h=Array.from(i).every(b=>b===o);return n.current=h?o:i,s.current!==null&&l.clearTimeout(s.current),s.current=l.setTimeout(()=>{n.current="",s.current=null},_e),n.current},[t])}function Q(t,n,s){if(t.length===0)return-1;for(let a=1;a<=t.length;a+=1){const o=(n+s*a+t.length)%t.length;if(!t[o].disabled)return o}return-1}function Se(t,n,s){for(let a=1;a<=t.length;a+=1){const o=(s+a+t.length)%t.length,l=t[o];if(!l.disabled&&l.label.toLocaleLowerCase().startsWith(n))return o}return-1}function De(t){const n=new Set;t.forEach(s=>{if(n.has(s.value))throw new Error("Select option values must be unique");n.add(s.value)})}function je(t){const{active:n,closeOnEscape:s,closeOnOutsideInteraction:a,highlightedIndex:o,id:l,listboxReference:i,onEscapeDismiss:h,onEscapeKeyDown:u,onHighlight:b,onOutsideDismiss:y,onPointerDownOutside:g,onSelect:x,options:k,ownerDocument:P,position:R,selectedValue:_,state:S,triggerReference:q}=t,m=r.useRef(null),V=J.useBoundary("Select").boundaryElement,O=U.useOverlayLayer(!0,V),W=r.useMemo(()=>[q,m],[q]),$=r.useCallback(f=>{m.current=f,i(f)},[i]);return U.useDismissableLayer({active:n,boundaries:W,boundary:V,dismissOnEscape:s,dismissOnPointerDownOutside:a,layerId:O.id,onEscapeDismiss:h,onEscapeKeyDown:u,onPointerDownOutside:g,onPointerDownOutsideDismiss:y,ownerDocument:P}),d.jsx("div",{"aria-hidden":n?void 0:!0,"aria-labelledby":l,className:"nk-select__listbox","data-state":S,id:`${l}-listbox`,ref:$,role:"listbox",style:R?{left:R.left,maxHeight:R.maxHeight,minWidth:R.minWidth,top:R.top,zIndex:O.zIndex}:{visibility:"hidden",zIndex:O.zIndex},children:k.map((f,C)=>d.jsxs("div",{"aria-disabled":f.disabled||void 0,"aria-selected":f.value===_,className:"nk-select__option","data-highlighted":C===o||void 0,"data-selected":f.value===_||void 0,id:`${l}-option-${C}`,onPointerDown:X=>{X.preventDefault(),f.disabled||x(f)},onPointerMove:()=>{f.disabled||b(C)},role:"option",children:[f.icon?d.jsx(H.Icon,{type:f.icon}):null,d.jsx("span",{className:"nk-select__option-label",children:f.label}),f.value===_?d.jsx(H.Icon,{className:"nk-select__check",type:"checkmark"}):null]},f.value))})}function Le(t,n,s){n.current=t,xe.assignElementReference(s,t)}function Pe(t){var ee;const{"aria-invalid":n,className:s,closeOnEscape:a=!0,closeOnOutsideInteraction:o=!0,defaultValue:l="",disabled:i=!1,displayOverride:h,form:u,forwardedReference:b,id:y,invalid:g=!1,name:x,onChange:k,onClick:P,onEscapeKeyDown:R,onKeyDown:_,onOpenChange:S,onPointerDownOutside:q,options:m,placeholder:V,required:O=!1,style:W,value:$,width:f,...C}=t;De(m);const X=r.useId(),D=y??X,I=r.useRef(null),[N,ne]=r.useState(null),[v,se]=r.useState(!1),[w,A]=r.useState(-1),[ae,Z]=r.useState(l),j=$!==void 0,L=j?$:ae,le=m.find(e=>e.value===L),ie=g||z.hasInvalidState(n),re=z.resolveAriaInvalid(g,n),Y=U.usePresence(v),T=((ee=I.current)==null?void 0:ee.ownerDocument)??(typeof document>"u"?null:document),oe=J.useBoundary("Select").boundaryElement,ce=Re(Y.present,I.current,N,oe),de=Oe(I),ue=f===void 0?W:{...W,width:f},G=h??le,fe=r.useCallback(e=>Le(e,I,b),[b]),p=r.useCallback(e=>{v!==e&&(se(e),S==null||S(e))},[S,v]),me=r.useCallback(()=>{j||Z(l),p(!1)},[l,j,p]),he=ge({form:u,onReset:me,resetValue:j?L:l,triggerReference:I}),K=r.useCallback((e=1)=>{const c=m.findIndex(te=>te.value===L&&!te.disabled),E=e===1?-1:m.length;A(c>=0?c:Q(m,E,e)),p(!0)},[m,L,p]),B=r.useCallback(e=>{var c;i||e.disabled||(j||Z(e.value),p(!1),(c=I.current)==null||c.focus(),k==null||k(e.value))},[i,j,k,p]),ve=r.useCallback(()=>{var e;p(!1),(e=I.current)==null||e.focus()},[p]),pe=r.useCallback(()=>{p(!1)},[p]);function be(e){P==null||P(e),!(e.defaultPrevented||i)&&(v?p(!1):K())}function ye(e){if(_==null||_(e),!(e.defaultPrevented||i)){if(e.key==="ArrowDown"||e.key==="ArrowUp"){e.preventDefault();const c=e.key==="ArrowDown"?1:-1;v?A(E=>Q(m,E,c)):K(c);return}if(e.key==="Home"||e.key==="End"){if(e.preventDefault(),!v)K(e.key==="Home"?1:-1);else{const c=e.key==="Home"?1:-1,E=c===1?-1:m.length;A(Q(m,E,c))}return}if(e.key==="Enter"||e.key===" "){e.preventDefault();const c=m[w];v&&c?B(c):v||K();return}if(e.key==="Tab"){p(!1);return}if(e.key.length===1&&!e.altKey&&!e.ctrlKey&&!e.metaKey){const c=de(e.key.toLocaleLowerCase());if(c===null)return;const E=Se(m,c,w);E>=0&&(e.preventDefault(),v||p(!0),A(E))}}}return r.useEffect(()=>{i&&p(!1)},[i,p]),r.useEffect(()=>{var e;if(v&&w>=0){const c=T==null?void 0:T.getElementById(`${D}-option-${w}`);c&&(N!=null&&N.contains(c))&&((e=c.scrollIntoView)==null||e.call(c,{block:"nearest"}))}},[w,D,N,v]),d.jsxs("span",{className:["nk-select",s].filter(Boolean).join(" "),"data-disabled":i||void 0,"data-invalid":ie||void 0,"data-mode":"custom","data-open":v||void 0,style:ue,children:[d.jsxs("button",{...C,ref:fe,"aria-activedescendant":v&&w>=0?`${D}-option-${w}`:void 0,"aria-controls":`${D}-listbox`,"aria-expanded":v,"aria-haspopup":"listbox","aria-invalid":re,"aria-required":O||void 0,"aria-autocomplete":"none",className:"nk-select__trigger",disabled:i,form:u,id:D,onClick:be,onKeyDown:ye,role:"combobox",type:"button",children:[G?d.jsxs("span",{className:"nk-select__value",children:[G.icon?d.jsx(H.Icon,{type:G.icon}):null,d.jsx("span",{className:"nk-select__value-label",children:G.label})]}):d.jsx("span",{className:"nk-select__placeholder",children:V}),d.jsx(H.Icon,{className:"nk-select__icon",type:"chevron-down"})]}),x||O?d.jsxs("select",{ref:he,"aria-hidden":"true",className:"nk-select__form-control",disabled:i,form:u,name:x,onChange:()=>{},onInvalid:e=>{var c;e.preventDefault(),(c=I.current)==null||c.focus()},required:O,tabIndex:-1,value:L,children:[d.jsx("option",{value:""}),m.map(e=>d.jsx("option",{disabled:e.disabled,value:e.value,children:e.label},e.value))]}):null,Y.present&&T?d.jsx(U.Portal,{children:d.jsx(je,{active:v,closeOnEscape:a,closeOnOutsideInteraction:o,highlightedIndex:w,id:D,listboxReference:ne,onEscapeDismiss:ve,onEscapeKeyDown:R,onHighlight:A,onOutsideDismiss:pe,onPointerDownOutside:q,onSelect:B,options:m,ownerDocument:T,position:ce,selectedValue:L,state:Y.state==="closing"?"closing":"open",triggerReference:I})}):null]})}function Ce(t){const{"aria-invalid":n,children:s,className:a,defaultValue:o,disabled:l=!1,forwardedReference:i,invalid:h=!1,placeholder:u,style:b,value:y,...g}=t,x=z.resolveAriaInvalid(h,n),k=h||z.hasInvalidState(n);return d.jsxs("span",{className:["nk-select",a].filter(Boolean).join(" "),"data-disabled":l||void 0,"data-invalid":k||void 0,"data-mode":"native",style:b,children:[d.jsxs("select",{...g,ref:i,"aria-invalid":x,className:"nk-select__control",defaultValue:y===void 0?o??(u!==void 0?"":void 0):void 0,disabled:l,value:y,children:[u!==void 0?d.jsx("option",{disabled:!0,value:"",children:u}):null,s]}),d.jsx(H.Icon,{className:"nk-select__icon",type:"chevron-down"})]})}const Ne=r.forwardRef(function(n,s){const{options:a}=n;return J.useBoundary("Select"),a!==void 0?d.jsx(Pe,{...n,forwardedReference:s}):d.jsx(Ce,{...n,forwardedReference:s})});exports.default=Ne;
package/dist/Select.js CHANGED
@@ -4,7 +4,7 @@ import { useRef as T, useEffect as Y, useCallback as I, useMemo as ke, useId as
4
4
  import { u as B } from "./effects-DGbA6Q2O.js";
5
5
  import { h as le, r as ie } from "./aria-Bv-xVREf.js";
6
6
  import { a as De } from "./reference-CXMr27nM.js";
7
- import { I as $ } from "./Icon-NT3kRJYz.js";
7
+ import { I as $ } from "./Icon-Cj1s40xn.js";
8
8
  import { c as Oe, d as Re, b as Se, P as Le } from "./usePresence-BTRY1_l-.js";
9
9
  import { u as Ne } from "./useAnchoredPosition-C0VS7hm6.js";
10
10
  function Pe(t) {
package/dist/Sidebar.cjs CHANGED
@@ -1 +1 @@
1
- "use client";"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const i=require("react/jsx-runtime"),t=require("react"),w=require("./effects-D98vUn6N.cjs"),U=require("./reference-C2guRuR0.cjs"),P=require("./usePresence-Dm0mls5p.cjs"),G=require("./Button-DtrX4X-s.cjs"),z=require("./Text-DWYlIcPj.cjs"),te=require("./useFocusTrap-CrMcAu8s.cjs"),se=require("./useScrollLock-Dy8MZaSn.cjs"),ae=require("./aria-DM-xYEHQ.cjs"),ie=require("./useFloatingPosition-DQgw-w_Z.cjs"),oe=require("./Avatar-Belo7qAY.cjs"),le=require("./Spinner-BE0F4y2S.cjs"),ce=require("./Tooltip-DDPh_YFO.cjs"),ue=require("./units-PzuiQNnw.cjs");function de(a){const{label:r,onToggle:e,panelId:n,reference:b,side:l,sidebarOpen:u}=a;return i.jsx(G.Button,{ref:b,"aria-controls":n,"aria-expanded":u,"aria-haspopup":"dialog","aria-label":r,className:"nk-sidebar__fallback-trigger","data-side":l,icon:"burger",onClick:e})}const B=new WeakMap;function X(a){const r=B.get(a);if(r)return r;const e={listeners:new Set,owner:null,state:void 0};return B.set(a,e),e}function be(a,r,e){const n=X(a);return n.owner!==null&&n.owner!==r?!1:(n.owner=r,n.state=e,n.listeners.forEach(b=>b()),!0)}function fe(a,r){const e=B.get(a);!e||e.owner!==r||(e.owner=null,e.state=void 0,e.listeners.forEach(n=>n()))}function pe(a){var r;return a?(r=B.get(a))==null?void 0:r.state:void 0}function me(a,r){if(!a)return()=>{};const e=X(a);return e.listeners.add(r),()=>{e.listeners.delete(r)}}const ge=()=>{};function I(a){const r=w.useBoundary(a).boundaryElement,e=t.useCallback(b=>me(r,b),[r]),n=t.useCallback(()=>pe(r),[r]);return t.useSyncExternalStore(e,n,ge)}function F(a,r){return a==="both"||a===(r==="overlay"?"overlay":"inline")}const ve=t.forwardRef(function(r,e){const{children:n,className:b,presentation:l="both",...u}=r,o=I("Sidebar.Footer");return F(l,o==null?void 0:o.presentation)?i.jsx("div",{...u,ref:e,className:["nk-sidebar__footer",b].filter(Boolean).join(" "),children:n}):null}),he=t.forwardRef(function(r,e){const{"aria-label":n,"aria-labelledby":b,children:l,className:u,label:o,presentation:S="both",...v}=r,y=I("Sidebar.Group"),h=`${t.useId()}-label`,p=o!=null&&typeof o!="boolean"&&(typeof o!="string"||o.trim()!=="");if(!F(S,y==null?void 0:y.presentation))return null;const c=b??(n===void 0&&p?h:void 0),s=!!(n??c);return t.createElement(s?"nav":"div",{...v,ref:e,"aria-label":n,"aria-labelledby":c,className:["nk-sidebar__group",u].filter(Boolean).join(" ")},p?i.jsx(z.Text,{as:"h2",className:"nk-sidebar__group-label",id:h,size:"subtitle",weight:"medium",children:o}):null,i.jsx("ul",{className:"nk-sidebar__list",children:l}))}),ye=t.forwardRef(function(r,e){const{children:n,className:b,presentation:l="both",...u}=r,o=I("Sidebar.Header");return F(l,o==null?void 0:o.presentation)?i.jsx("div",{...u,ref:e,className:["nk-sidebar__header",b].filter(Boolean).join(" "),children:n}):null}),Se=t.forwardRef(function(r,e){const{active:n=!1,as:b,children:l,className:u,disabled:o=!1,icon:S,onClick:v,presentation:y="both",type:h,...p}=r,c=I("Sidebar.Item"),s=b??"button",d=s==="button",m=p,_=m.href!==void 0||m.to!==void 0;function g(E){if(o){E.preventDefault();return}v==null||v(E),c!=null&&c.open&&c.presentation==="overlay"&&!E.defaultPrevented&&c.requestOpenChange(!1,"item")}return F(y,c==null?void 0:c.presentation)?i.jsx("li",{className:"nk-sidebar__item-container",children:i.jsx(G.Button,{...p,ref:e,"aria-current":n?_?"page":"true":void 0,as:s,className:["nk-sidebar__item",u].filter(Boolean).join(" "),"data-active":n||void 0,disabled:o,fullWidth:!0,href:m.href,icon:S,onClick:g,shape:"rectangle",textAlignment:"left",type:d?h??"button":h,variant:"ghost",children:i.jsx("span",{className:"nk-sidebar__item-label",children:l})})}):null});function Z(a){const{"aria-label":r,"aria-labelledby":e,children:n,className:b,height:l,open:u,panelId:o,panelReference:S,presentation:v,side:y,state:h,style:p,width:c,...s}=a,d=v==="overlay",m=r??(e===void 0?"Sidebar":void 0),_=d&&u;let g=p;return(c!==void 0||l!==void 0)&&(g={...p},l!==void 0&&(g["--nk-sidebar-height"]=l),c!==void 0&&(g["--nk-sidebar-width"]=c)),i.jsx("aside",{...s,ref:S,"aria-hidden":d&&!u?!0:void 0,"aria-label":d&&!u?void 0:m,"aria-labelledby":d&&!u?void 0:e,"aria-modal":_?"true":void 0,className:["nk-sidebar",b].filter(Boolean).join(" "),"data-responsive":v==="pending"||void 0,"data-side":y,"data-state":h,"data-variant":d?"overlay":"inline",id:o,role:_?"dialog":void 0,style:g,tabIndex:d?-1:void 0,children:i.jsx("div",{className:"nk-sidebar__body",children:n})})}function ke(a){const{boundaries:r,initialFocusReference:e,lockScroll:n,ownerDocument:b,panelReference:l,presenceState:u,restoreFocus:o,sidebar:S,side:v,...y}=a,{id:h,open:p,requestOpenChange:c}=S,s=t.useContext(P.FocusScopeContext),d=t.useRef(null),[m,_]=t.useState(null),g=w.useBoundary("Sidebar").boundaryElement,E=P.useOverlayLayer(!0,g),L=t.useCallback(R=>{d.current=R,l(R),_(R)},[l]);w.useIsomorphicLayoutEffect(()=>{m&&(m.inert=!p)},[p,m]);const q=t.useCallback(()=>{c(!1,"escape")},[c]),D=t.useCallback(()=>{c(!1,"outside")},[c]);P.useDismissableLayer({boundary:g,active:p,boundaries:r,dismissOnEscape:!0,dismissOnPointerDownOutside:!0,layerId:E.id,onEscapeDismiss:q,onPointerDownOutsideDismiss:D,ownerDocument:b});const T=te.useFocusTrap({boundary:g,active:p,container:m,initialFocusReference:e??d,layerId:E.id,restoreFocus:o});return se.useScrollLock(n&&p,b,g),i.jsx(P.FocusScopeContext.Provider,{value:p?T:s,children:i.jsx("div",{className:"nk-sidebar__overlay","data-side":v,"data-state":u,role:"presentation",style:{zIndex:E.zIndex},children:i.jsx(Z,{...y,open:p,panelId:h,panelReference:L,presentation:"overlay",side:v,state:u})})})}function xe(a){const{children:r}=a;if(r.type===t.Fragment)throw new Error("Sidebar.Trigger requires a single non-Fragment child");const e=I("Sidebar.Trigger"),n=r.props,b=U.getElementReference(r),l=e==null?void 0:e.registerTrigger,u=e==null?void 0:e.unregisterTrigger,o=t.useRef(null),S=t.useCallback(d=>{const m=o.current;m&&m!==d&&(u==null||u(m)),o.current=d,d&&(l==null||l(d)),U.assignElementReference(b,d)},[b,l,u]),v=t.useCallback(d=>{d.defaultPrevented||!e||e.requestOpenChange(!e.open,"trigger")},[e]);if(!e)return null;const{id:y,open:h,presentation:p,variant:c}=e,s=h&&p==="overlay";return t.cloneElement(r,ie.resolveTriggerOverrides(n,{"aria-controls":s?ae.mergeIdentifiers(n["aria-controls"],y):n["aria-controls"],"aria-expanded":h,"aria-haspopup":n["aria-haspopup"]??"dialog",className:"nk-sidebar__trigger","data-sidebar-variant":c,onClick:v,ref:S}))}const _e=t.forwardRef(function(r,e){const{actions:n,className:b,description:l,image:u,loading:o=!1,name:S,onClick:v,...y}=r,h=l!=null&&typeof l!="boolean",p=i.jsxs(i.Fragment,{children:[i.jsx(oe.Avatar,{alt:S,"aria-hidden":!0,className:"nk-sidebar__user-avatar",image:u}),i.jsxs("span",{className:"nk-sidebar__user-text",children:[i.jsx(z.Text,{as:"span",className:"nk-sidebar__user-name",children:S}),h?i.jsx(z.Text,{as:"span",className:"nk-sidebar__user-description",size:"caption",tone:"muted",children:l}):null]})]});return i.jsx("div",{...y,ref:e,className:["nk-sidebar__user",b].filter(Boolean).join(" "),children:o?i.jsx(le.Spinner,{className:"nk-sidebar__user-spinner",size:16}):i.jsxs(i.Fragment,{children:[v?i.jsx("button",{className:"nk-sidebar__user-details",onClick:v,type:"button",children:p}):i.jsx("div",{className:"nk-sidebar__user-details",children:p}),n!==void 0&&n.length>0?i.jsx("div",{className:"nk-sidebar__user-actions",children:n.map(c=>{const{"aria-label":s,icon:d,label:m,..._}=c;return i.jsx(ce.Tooltip2,{content:m,children:i.jsx(G.Button,{..._,"aria-label":s??m,className:"nk-sidebar__user-action",icon:d,shape:"rectangle",type:"button",variant:"ghost"})},m)})}):null]})})}),Ee=()=>()=>{},Q=()=>{};function je(a,r){const e=a==="responsive"?r:void 0,n=t.useSyncExternalStore((e==null?void 0:e.subscribe)??Ee,(e==null?void 0:e.read)??Q,Q);return a!=="responsive"?a:n===void 0?"pending":n>=ue.breakpoint("md")?"inline":"overlay"}const Ne=32,we=t.forwardRef(function(r,e){var J;const{defaultOpen:n=!1,height:b,initialFocusReference:l,lockScroll:u=!0,onOpenChange:o,open:S,restoreFocus:v=!0,side:y="left",variant:h="responsive",width:p,...c}=r,s=w.useBoundary("Sidebar"),d=`${t.useId()}-sidebar`,m=t.useRef(Symbol("nk-sidebar")).current,_=t.useRef(null),g=je(h,s==null?void 0:s.width),E=S!==void 0,[L,q]=t.useState(n),[D,T]=t.useState(0),[R,ee]=t.useState(!1),H=t.useRef(null),N=E?S:L,O=t.useRef(o);w.useIsomorphicLayoutEffect(()=>{O.current=o});const C=t.useCallback((f,k)=>{var x;N!==f&&(E||q(f),(x=O.current)==null||x.call(O,f,k))},[E,N]),$=t.useCallback(f=>{_.current=f,U.assignElementReference(e,f)},[e]),j=t.useMemo(()=>[_],[]),W=t.useCallback(f=>{j.push({current:f}),T(k=>k+1)},[j]),K=t.useCallback(f=>{const k=j.findIndex(x=>x.current===f);k>0&&j.splice(k,1),T(x=>Math.max(x-1,0))},[j]),re=t.useCallback(f=>{const k=H.current;if(k&&k!==f){const x=j.findIndex(ne=>ne.current===k);x>0&&j.splice(x,1)}H.current=f,f&&j.push({current:f})},[j]),A=t.useMemo(()=>({id:d,open:N,presentation:g,registerTrigger:W,requestOpenChange:C,unregisterTrigger:K,variant:h}),[N,d,g,W,C,K,h]);w.useIsomorphicLayoutEffect(()=>{const f=s==null?void 0:s.boundaryElement;if(!f)return;if(be(f,m,A)===!1)throw new Error("A Boundary supports one Sidebar. Neatkit resolves Trigger, Group, and Item interactions against the single Sidebar published to the nearest Boundary, so give each Sidebar a Boundary of its own.")},[s==null?void 0:s.boundaryElement,m,A]),w.useIsomorphicLayoutEffect(()=>{const f=s==null?void 0:s.boundaryElement;if(f)return()=>fe(f,m)},[s==null?void 0:s.boundaryElement,m]),t.useEffect(()=>{g==="inline"&&C(!1,"variant")},[g,C]),t.useEffect(()=>{var x;const f=(x=s==null?void 0:s.boundaryElement)==null?void 0:x.ownerDocument.defaultView;if(!f)return;const k=f.setTimeout(()=>ee(!0),Ne);return()=>f.clearTimeout(k)},[s==null?void 0:s.boundaryElement]);const M=P.usePresence(N&&g==="overlay"),V=((J=s==null?void 0:s.boundaryElement)==null?void 0:J.ownerDocument)??(typeof document>"u"?null:document);if(g!=="overlay")return i.jsx(Z,{...c,height:b,open:!1,panelId:d,panelReference:$,presentation:g,side:y,width:p});const Y=R&&D===0?i.jsx(P.Portal,{children:i.jsx(de,{label:`Open ${c["aria-label"]??"Sidebar"}`,onToggle:()=>C(!N,"trigger"),panelId:M.present?d:void 0,reference:re,side:y,sidebarOpen:N})}):null;return!M.present||!V?Y:i.jsxs(i.Fragment,{children:[Y,i.jsx(P.Portal,{children:i.jsx(ke,{...c,boundaries:j,initialFocusReference:l,lockScroll:u,ownerDocument:V,panelReference:$,presenceState:M.state==="closing"?"closing":"open",restoreFocus:v,side:y,sidebar:A,width:p})})]})}),Pe=Object.assign(we,{Footer:ve,Group:he,Header:ye,Item:Se,Trigger:xe,User:_e});exports.default=Pe;
1
+ "use client";"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const l=require("react/jsx-runtime"),t=require("react"),R=require("./effects-D98vUn6N.cjs"),H=require("./reference-C2guRuR0.cjs"),P=require("./usePresence-Dm0mls5p.cjs"),G=require("./Button-6oWs-pyF.cjs"),U=require("./Text-DWYlIcPj.cjs"),ae=require("./useFocusTrap-CrMcAu8s.cjs"),oe=require("./useScrollLock-Dy8MZaSn.cjs"),ie=require("./aria-DM-xYEHQ.cjs"),le=require("./useFloatingPosition-DQgw-w_Z.cjs"),ce=require("./Avatar-Belo7qAY.cjs"),ue=require("./Spinner-BE0F4y2S.cjs"),de=require("./Tooltip-DDPh_YFO.cjs"),fe=require("./units-PzuiQNnw.cjs");function be(s){const{label:n,onToggle:e,panelId:r,reference:b,side:u,sidebarOpen:i}=s;return l.jsx(G.Button,{ref:b,"aria-controls":r,"aria-expanded":i,"aria-haspopup":"dialog","aria-label":n,className:"nk-sidebar__fallback-trigger","data-side":u,icon:"burger",onClick:e})}const q=new WeakMap;function Z(s){const n=q.get(s);if(n)return n;const e={listeners:new Set,owner:null,state:void 0};return q.set(s,e),e}function pe(s,n,e){const r=Z(s);return r.owner!==null&&r.owner!==n?!1:(r.owner=n,r.state=e,r.listeners.forEach(b=>b()),!0)}function he(s,n){const e=q.get(s);!e||e.owner!==n||(e.owner=null,e.state=void 0,e.listeners.forEach(r=>r()))}function ge(s){var n;return s?(n=q.get(s))==null?void 0:n.state:void 0}function me(s,n){if(!s)return()=>{};const e=Z(s);return e.listeners.add(n),()=>{e.listeners.delete(n)}}const ve=()=>{};function O(s){const n=R.useBoundary(s).boundaryElement,e=t.useCallback(b=>me(n,b),[n]),r=t.useCallback(()=>ge(n),[n]);return t.useSyncExternalStore(e,r,ve)}function D(s,n){return s==="both"||s===(n==="overlay"?"overlay":"inline")}const W=t.forwardRef(function(n,e){const{children:r,className:b,presentation:u="both",...i}=n,o=O("Sidebar.Footer");return D(u,o==null?void 0:o.presentation)?l.jsx("div",{...i,ref:e,className:["nk-sidebar__footer",b].filter(Boolean).join(" "),children:r}):null}),ye=t.forwardRef(function(n,e){const{"aria-label":r,"aria-labelledby":b,children:u,className:i,label:o,presentation:y="both",...p}=n,S=O("Sidebar.Group"),c=`${t.useId()}-label`,h=o!=null&&typeof o!="boolean"&&(typeof o!="string"||o.trim()!=="");if(!D(y,S==null?void 0:S.presentation))return null;const d=b??(r===void 0&&h?c:void 0),a=!!(r??d);return t.createElement(a?"nav":"div",{...p,ref:e,"aria-label":r,"aria-labelledby":d,className:["nk-sidebar__group",i].filter(Boolean).join(" ")},h?l.jsx(U.Text,{as:"h2",className:"nk-sidebar__group-label",id:c,size:"subtitle",weight:"medium",children:o}):null,l.jsx("ul",{className:"nk-sidebar__list",children:u}))}),Se=t.forwardRef(function(n,e){const{children:r,className:b,presentation:u="both",...i}=n,o=O("Sidebar.Header");return D(u,o==null?void 0:o.presentation)?l.jsx("div",{...i,ref:e,className:["nk-sidebar__header",b].filter(Boolean).join(" "),children:r}):null}),ke=t.forwardRef(function(n,e){const{active:r=!1,as:b,children:u,className:i,disabled:o=!1,icon:y,onClick:p,presentation:S="both",type:c,...h}=n,d=O("Sidebar.Item"),a=b??"button",f=a==="button",g=h,E=g.href!==void 0||g.to!==void 0;function v(k){if(o){k.preventDefault();return}p==null||p(k),d!=null&&d.open&&d.presentation==="overlay"&&!k.defaultPrevented&&d.requestOpenChange(!1,"item")}return D(S,d==null?void 0:d.presentation)?l.jsx("li",{className:"nk-sidebar__item-container",children:l.jsx(G.Button,{...h,ref:e,"aria-current":r?E?"page":"true":void 0,as:a,className:["nk-sidebar__item",i].filter(Boolean).join(" "),"data-active":r||void 0,disabled:o,fullWidth:!0,href:g.href,icon:y,onClick:v,shape:"rectangle",textAlignment:"left",type:f?c??"button":c,variant:"ghost",children:l.jsx("span",{className:"nk-sidebar__item-label",children:u})})}):null}),Ee=1;function Ce(s){return s==null?void 0:s.ResizeObserver}function xe(s){return s==null?void 0:s.MutationObserver}function _e(){const[s,n]=t.useState(!1),e=t.useRef(null),r=t.useCallback(i=>{const o=i.scrollHeight-i.scrollTop-i.clientHeight;n(o>Ee)},[]),b=t.useCallback(i=>{var g;if((g=e.current)==null||g.call(e),e.current=null,!i)return;const o=i;r(o);function y(){r(o)}const p=o.ownerDocument.defaultView;p==null||p.addEventListener("resize",y);const S=Ce(p),c=S?new S(y):void 0;function h(){c==null||c.disconnect(),c==null||c.observe(o);for(const E of o.children)c==null||c.observe(E)}h();function d(E){E.some(k=>k.type==="childList")&&h(),y()}const a=xe(p),f=a?new a(d):void 0;f==null||f.observe(o,{attributeFilter:["class","hidden","style"],characterData:!0,childList:!0,subtree:!0}),e.current=()=>{p==null||p.removeEventListener("resize",y),c==null||c.disconnect(),f==null||f.disconnect()}},[r]),u=t.useCallback(i=>{r(i.currentTarget)},[r]);return{containerReference:b,contentBelow:s,handleScroll:u}}function je(s,n){for(const e of t.Children.toArray(s)){if(t.isValidElement(e)&&e.type===t.Fragment){const r=ee(e.props.children);r.bodyChildren.length>0&&n.bodyChildren.push(t.cloneElement(e,void 0,...r.bodyChildren)),r.footerChildren.length>0&&n.footerChildren.push(t.cloneElement(e,void 0,...r.footerChildren));continue}t.isValidElement(e)&&e.type===W?n.footerChildren.push(e):n.bodyChildren.push(e)}}function ee(s){const n={bodyChildren:[],footerChildren:[]};return je(s,n),n}function ne(s){const{"aria-label":n,"aria-labelledby":e,children:r,className:b,height:u,open:i,panelId:o,panelReference:y,presentation:p,side:S,state:c,style:h,width:d,...a}=s,{containerReference:f,contentBelow:g,handleScroll:E}=_e(),v=p==="overlay",{bodyChildren:k,footerChildren:I}=ee(r),L=n??(e===void 0?"Sidebar":void 0),T=v&&i;let j=h;return(d!==void 0||u!==void 0)&&(j={...h},u!==void 0&&(j["--nk-sidebar-height"]=u),d!==void 0&&(j["--nk-sidebar-width"]=d)),l.jsxs("aside",{...a,ref:y,"aria-hidden":v&&!i?!0:void 0,"aria-label":v&&!i?void 0:L,"aria-labelledby":v&&!i?void 0:e,"aria-modal":T?"true":void 0,className:["nk-sidebar",b].filter(Boolean).join(" "),"data-responsive":p==="pending"||void 0,"data-side":S,"data-state":c,"data-variant":v?"overlay":"inline",id:o,role:T?"dialog":void 0,style:j,tabIndex:v?-1:void 0,children:[l.jsx("div",{ref:f,className:"nk-sidebar__body","data-content-below":g||void 0,onScroll:E,children:k}),I]})}function Ne(s){const{boundaries:n,initialFocusReference:e,lockScroll:r,ownerDocument:b,panelReference:u,presenceState:i,restoreFocus:o,sidebar:y,side:p,...S}=s,{id:c,open:h,requestOpenChange:d}=y,a=t.useContext(P.FocusScopeContext),f=t.useRef(null),[g,E]=t.useState(null),v=R.useBoundary("Sidebar").boundaryElement,k=P.useOverlayLayer(!0,v),I=t.useCallback(B=>{f.current=B,u(B),E(B)},[u]);R.useIsomorphicLayoutEffect(()=>{g&&(g.inert=!h)},[h,g]);const L=t.useCallback(()=>{d(!1,"escape")},[d]),T=t.useCallback(()=>{d(!1,"outside")},[d]);P.useDismissableLayer({boundary:v,active:h,boundaries:n,dismissOnEscape:!0,dismissOnPointerDownOutside:!0,layerId:k.id,onEscapeDismiss:L,onPointerDownOutsideDismiss:T,ownerDocument:b});const j=ae.useFocusTrap({boundary:v,active:h,container:g,initialFocusReference:e??f,layerId:k.id,restoreFocus:o});return oe.useScrollLock(r&&h,b,v),l.jsx(P.FocusScopeContext.Provider,{value:h?j:a,children:l.jsx("div",{className:"nk-sidebar__overlay","data-side":p,"data-state":i,role:"presentation",style:{zIndex:k.zIndex},children:l.jsx(ne,{...S,open:h,panelId:c,panelReference:I,presentation:"overlay",side:p,state:i})})})}function Re(s){const{children:n}=s;if(n.type===t.Fragment)throw new Error("Sidebar.Trigger requires a single non-Fragment child");const e=O("Sidebar.Trigger"),r=n.props,b=H.getElementReference(n),u=e==null?void 0:e.registerTrigger,i=e==null?void 0:e.unregisterTrigger,o=t.useRef(null),y=t.useCallback(f=>{const g=o.current;g&&g!==f&&(i==null||i(g)),o.current=f,f&&(u==null||u(f)),H.assignElementReference(b,f)},[b,u,i]),p=t.useCallback(f=>{f.defaultPrevented||!e||e.requestOpenChange(!e.open,"trigger")},[e]);if(!e)return null;const{id:S,open:c,presentation:h,variant:d}=e,a=c&&h==="overlay";return t.cloneElement(n,le.resolveTriggerOverrides(r,{"aria-controls":a?ie.mergeIdentifiers(r["aria-controls"],S):r["aria-controls"],"aria-expanded":c,"aria-haspopup":r["aria-haspopup"]??"dialog",className:"nk-sidebar__trigger","data-sidebar-variant":d,onClick:p,ref:y}))}const Pe=t.forwardRef(function(n,e){const{actions:r,className:b,description:u,image:i,loading:o=!1,name:y,onClick:p,...S}=n,c=u!=null&&typeof u!="boolean",h=l.jsxs(l.Fragment,{children:[l.jsx(ce.Avatar,{alt:y,"aria-hidden":!0,className:"nk-sidebar__user-avatar",image:i}),l.jsxs("span",{className:"nk-sidebar__user-text",children:[l.jsx(U.Text,{as:"span",className:"nk-sidebar__user-name",children:y}),c?l.jsx(U.Text,{as:"span",className:"nk-sidebar__user-description",size:"caption",tone:"muted",children:u}):null]})]});return l.jsx("div",{...S,ref:e,className:["nk-sidebar__user",b].filter(Boolean).join(" "),children:o?l.jsx(ue.Spinner,{className:"nk-sidebar__user-spinner",size:16}):l.jsxs(l.Fragment,{children:[p?l.jsx("button",{className:"nk-sidebar__user-details",onClick:p,type:"button",children:h}):l.jsx("div",{className:"nk-sidebar__user-details",children:h}),r!==void 0&&r.length>0?l.jsx("div",{className:"nk-sidebar__user-actions",children:r.map(d=>{const{"aria-label":a,icon:f,label:g,...E}=d;return l.jsx(de.Tooltip2,{content:g,children:l.jsx(G.Button,{...E,"aria-label":a??g,className:"nk-sidebar__user-action",icon:f,shape:"rectangle",type:"button",variant:"ghost"})},g)})}):null]})})}),Te=()=>()=>{},X=()=>{};function Ie(s,n){const e=s==="responsive"?n:void 0,r=t.useSyncExternalStore((e==null?void 0:e.subscribe)??Te,(e==null?void 0:e.read)??X,X);return s!=="responsive"?s:r===void 0?"pending":r>=fe.breakpoint("md")?"inline":"overlay"}const Le=32,Be=t.forwardRef(function(n,e){var Q;const{defaultOpen:r=!1,height:b,initialFocusReference:u,lockScroll:i=!0,onOpenChange:o,open:y,restoreFocus:p=!0,side:S="left",variant:c="responsive",width:h,...d}=n,a=R.useBoundary("Sidebar"),f=`${t.useId()}-sidebar`,g=t.useRef(Symbol("nk-sidebar")).current,E=t.useRef(null),v=Ie(c,a==null?void 0:a.width),k=y!==void 0,[I,L]=t.useState(r),[T,j]=t.useState(0),[B,re]=t.useState(!1),V=t.useRef(null),N=k?y:I,w=t.useRef(o);R.useIsomorphicLayoutEffect(()=>{w.current=o});const F=t.useCallback((m,C)=>{var x;N!==m&&(k||L(m),(x=w.current)==null||x.call(w,m,C))},[k,N]),z=t.useCallback(m=>{E.current=m,H.assignElementReference(e,m)},[e]),_=t.useMemo(()=>[E],[]),$=t.useCallback(m=>{_.push({current:m}),j(C=>C+1)},[_]),K=t.useCallback(m=>{const C=_.findIndex(x=>x.current===m);C>0&&_.splice(C,1),j(x=>Math.max(x-1,0))},[_]),te=t.useCallback(m=>{const C=V.current;if(C&&C!==m){const x=_.findIndex(se=>se.current===C);x>0&&_.splice(x,1)}V.current=m,m&&_.push({current:m})},[_]),A=t.useMemo(()=>({id:f,open:N,presentation:v,registerTrigger:$,requestOpenChange:F,unregisterTrigger:K,variant:c}),[N,f,v,$,F,K,c]);R.useIsomorphicLayoutEffect(()=>{const m=a==null?void 0:a.boundaryElement;if(!m)return;if(pe(m,g,A)===!1)throw new Error("A Boundary supports one Sidebar. Neatkit resolves Trigger, Group, and Item interactions against the single Sidebar published to the nearest Boundary, so give each Sidebar a Boundary of its own.")},[a==null?void 0:a.boundaryElement,g,A]),R.useIsomorphicLayoutEffect(()=>{const m=a==null?void 0:a.boundaryElement;if(m)return()=>he(m,g)},[a==null?void 0:a.boundaryElement,g]),t.useEffect(()=>{v==="inline"&&F(!1,"variant")},[v,F]),t.useEffect(()=>{var x;const m=(x=a==null?void 0:a.boundaryElement)==null?void 0:x.ownerDocument.defaultView;if(!m)return;const C=m.setTimeout(()=>re(!0),Le);return()=>m.clearTimeout(C)},[a==null?void 0:a.boundaryElement]);const M=P.usePresence(N&&v==="overlay"),Y=((Q=a==null?void 0:a.boundaryElement)==null?void 0:Q.ownerDocument)??(typeof document>"u"?null:document);if(v!=="overlay")return l.jsx(ne,{...d,height:b,open:!1,panelId:f,panelReference:z,presentation:v,side:S,width:h});const J=B&&T===0?l.jsx(P.Portal,{children:l.jsx(be,{label:`Open ${d["aria-label"]??"Sidebar"}`,onToggle:()=>F(!N,"trigger"),panelId:M.present?f:void 0,reference:te,side:S,sidebarOpen:N})}):null;return!M.present||!Y?J:l.jsxs(l.Fragment,{children:[J,l.jsx(P.Portal,{children:l.jsx(Ne,{...d,boundaries:_,initialFocusReference:u,lockScroll:i,ownerDocument:Y,panelReference:z,presenceState:M.state==="closing"?"closing":"open",restoreFocus:p,side:S,sidebar:A,width:h})})]})}),Fe=Object.assign(Be,{Footer:W,Group:ye,Header:Se,Item:ke,Trigger:Re,User:Pe});exports.default=Fe;