neatkit 0.15.0 → 0.15.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Markdown.cjs +1 -1
- package/dist/Markdown.js +1 -1
- package/dist/Popover.cjs +1 -1
- package/dist/Popover.js +1 -1
- package/dist/Select.cjs +1 -1
- package/dist/Select.js +123 -123
- package/dist/Sidebar.cjs +1 -1
- package/dist/Sidebar.js +2 -2
- package/dist/{Table-GlG5aITK.cjs → Table-DBkiHOd0.cjs} +1 -1
- package/dist/{Table-Dvi-4XA7.js → Table-DdTjtnRE.js} +1 -1
- package/dist/Table.cjs +1 -1
- package/dist/Table.js +1 -1
- package/dist/{Tooltip-CDOwCTig.js → Tooltip-4RWCnb2Q.js} +1 -1
- package/dist/{Tooltip-DrAZSmEv.cjs → Tooltip-B2rZmRCs.cjs} +1 -1
- package/dist/Tooltip.cjs +1 -1
- package/dist/Tooltip.js +1 -1
- package/dist/components/Portal/hooks/useAnchoredPosition.d.ts +12 -10
- package/dist/components/Portal/utils/floating-position.d.ts +5 -36
- package/dist/components/Portal/utils/geometry.d.ts +45 -0
- package/dist/components/Select/utils/listbox-position.d.ts +6 -5
- package/dist/style.css +1 -1
- package/dist/useAnchoredPosition-CrdY2Eat.cjs +1 -0
- package/dist/useAnchoredPosition-xI79veB2.js +79 -0
- package/dist/useFloatingPosition-DPVO2E8O.cjs +1 -0
- package/dist/useFloatingPosition-DktY7k-t.js +110 -0
- package/package.json +1 -1
- package/dist/useAnchoredPosition-BEzN03Oi.cjs +0 -1
- package/dist/useAnchoredPosition-BIXEDNSo.js +0 -119
- package/dist/useFloatingPosition-8_GSpDjw.cjs +0 -1
- package/dist/useFloatingPosition-Cizey9UN.js +0 -58
package/dist/Select.js
CHANGED
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsx as h, jsxs as O } from "react/jsx-runtime";
|
|
3
|
-
import { useRef as
|
|
3
|
+
import { useRef as S, useEffect as Q, useCallback as I, useMemo as Ee, useId as xe, useState as Y, forwardRef as De } from "react";
|
|
4
4
|
import { u as ee } from "./effects-DGbA6Q2O.js";
|
|
5
|
-
import { h as
|
|
5
|
+
import { h as le, r as oe } from "./aria-Bv-xVREf.js";
|
|
6
6
|
import { a as Oe } from "./reference-CXMr27nM.js";
|
|
7
7
|
import { I as G } from "./Icon-DK4tkZtF.js";
|
|
8
|
-
import { c as Re, d as
|
|
9
|
-
import {
|
|
10
|
-
function
|
|
11
|
-
const { form: n, onReset: a, resetValue:
|
|
8
|
+
import { c as Re, d as Le, b as Ne, P as Pe } from "./usePresence-BTRY1_l-.js";
|
|
9
|
+
import { c as Ae, u as Te } from "./useAnchoredPosition-xI79veB2.js";
|
|
10
|
+
function Se(t) {
|
|
11
|
+
const { form: n, onReset: a, resetValue: i, triggerReference: s } = t, r = S(null);
|
|
12
12
|
return Q(() => {
|
|
13
13
|
var d;
|
|
14
|
-
const c = (d =
|
|
14
|
+
const c = (d = s.current) == null ? void 0 : d.form;
|
|
15
15
|
if (!c) return;
|
|
16
|
-
function
|
|
16
|
+
function l() {
|
|
17
17
|
const u = r.current;
|
|
18
18
|
if (u) {
|
|
19
19
|
const b = Array.from(u.options), g = b.find(
|
|
20
|
-
(y) => y.value ===
|
|
20
|
+
(y) => y.value === i
|
|
21
21
|
) ?? b[0];
|
|
22
22
|
b.forEach((y) => {
|
|
23
23
|
y.defaultSelected = y === g;
|
|
@@ -25,19 +25,19 @@ function Te(t) {
|
|
|
25
25
|
}
|
|
26
26
|
a();
|
|
27
27
|
}
|
|
28
|
-
return c.addEventListener("reset",
|
|
29
|
-
}, [n, a,
|
|
28
|
+
return c.addEventListener("reset", l), () => c.removeEventListener("reset", l);
|
|
29
|
+
}, [n, a, i, s]), r;
|
|
30
30
|
}
|
|
31
|
-
const $ = 8,
|
|
32
|
-
function Ve(t, n, a,
|
|
33
|
-
const
|
|
31
|
+
const $ = 8, B = 4, He = 160, Me = 72;
|
|
32
|
+
function Ve(t, n, a, i = "start") {
|
|
33
|
+
const s = a.bottom - t.bottom - B - $, r = t.top - a.top - B - $, c = s < He && r > s, l = Math.max(
|
|
34
34
|
Me,
|
|
35
|
-
c ? r :
|
|
35
|
+
c ? r : s
|
|
36
36
|
), d = Math.max(
|
|
37
37
|
t.width,
|
|
38
38
|
(n == null ? void 0 : n.width) ?? t.width
|
|
39
|
-
), u = a.left + $, b =
|
|
40
|
-
|
|
39
|
+
), u = a.left + $, b = Ae(
|
|
40
|
+
i,
|
|
41
41
|
t.left,
|
|
42
42
|
t.width,
|
|
43
43
|
d
|
|
@@ -49,31 +49,31 @@ function Ve(t, n, a, o = "start") {
|
|
|
49
49
|
)
|
|
50
50
|
), y = c ? Math.max(
|
|
51
51
|
a.top + $,
|
|
52
|
-
t.top -
|
|
53
|
-
) : t.bottom +
|
|
52
|
+
t.top - B - Math.min((n == null ? void 0 : n.height) ?? l, l)
|
|
53
|
+
) : t.bottom + B;
|
|
54
54
|
return {
|
|
55
55
|
left: g,
|
|
56
|
-
maxHeight:
|
|
56
|
+
maxHeight: l,
|
|
57
57
|
minWidth: t.width,
|
|
58
58
|
top: y
|
|
59
59
|
};
|
|
60
60
|
}
|
|
61
|
-
function Ce(t, n, a,
|
|
61
|
+
function Ce(t, n, a, i, s = "start") {
|
|
62
62
|
const r = I(
|
|
63
63
|
(c) => {
|
|
64
|
-
const {
|
|
64
|
+
const { panelSize: l, triggerBounds: d, visibleBounds: u } = c;
|
|
65
65
|
return Ve(
|
|
66
66
|
d,
|
|
67
|
-
|
|
67
|
+
l,
|
|
68
68
|
u,
|
|
69
|
-
|
|
69
|
+
s
|
|
70
70
|
);
|
|
71
71
|
},
|
|
72
|
-
[
|
|
72
|
+
[s]
|
|
73
73
|
);
|
|
74
|
-
return
|
|
74
|
+
return Te({
|
|
75
75
|
active: t,
|
|
76
|
-
boundary:
|
|
76
|
+
boundary: i,
|
|
77
77
|
fit: r,
|
|
78
78
|
panel: a,
|
|
79
79
|
trigger: n
|
|
@@ -81,34 +81,34 @@ function Ce(t, n, a, o, l = "start") {
|
|
|
81
81
|
}
|
|
82
82
|
const We = 500;
|
|
83
83
|
function $e(t) {
|
|
84
|
-
const n =
|
|
84
|
+
const n = S(""), a = S(null), i = S(null);
|
|
85
85
|
return Q(() => () => {
|
|
86
|
-
const
|
|
87
|
-
|
|
88
|
-
}, []), I((
|
|
86
|
+
const s = i.current;
|
|
87
|
+
s && a.current !== null && s.clearTimeout(a.current);
|
|
88
|
+
}, []), I((s) => {
|
|
89
89
|
var d;
|
|
90
90
|
const r = (d = t.current) == null ? void 0 : d.ownerDocument.defaultView;
|
|
91
91
|
if (!r) return null;
|
|
92
|
-
|
|
93
|
-
const c = n.current +
|
|
94
|
-
return n.current =
|
|
92
|
+
i.current = r;
|
|
93
|
+
const c = n.current + s, l = Array.from(c).every((u) => u === s);
|
|
94
|
+
return n.current = l ? s : c, a.current !== null && r.clearTimeout(a.current), a.current = r.setTimeout(() => {
|
|
95
95
|
n.current = "", a.current = null;
|
|
96
96
|
}, We), n.current;
|
|
97
97
|
}, [t]);
|
|
98
98
|
}
|
|
99
|
-
function
|
|
99
|
+
function z(t, n, a) {
|
|
100
100
|
if (t.length === 0) return -1;
|
|
101
|
-
for (let
|
|
102
|
-
const
|
|
103
|
-
if (!t[
|
|
101
|
+
for (let i = 1; i <= t.length; i += 1) {
|
|
102
|
+
const s = (n + a * i + t.length) % t.length;
|
|
103
|
+
if (!t[s].disabled) return s;
|
|
104
104
|
}
|
|
105
105
|
return -1;
|
|
106
106
|
}
|
|
107
107
|
function Ge(t, n, a) {
|
|
108
|
-
for (let
|
|
109
|
-
const
|
|
108
|
+
for (let i = 1; i <= t.length; i += 1) {
|
|
109
|
+
const s = (a + i + t.length) % t.length, r = t[s];
|
|
110
110
|
if (!r.disabled && r.label.toLocaleLowerCase().startsWith(n))
|
|
111
|
-
return
|
|
111
|
+
return s;
|
|
112
112
|
}
|
|
113
113
|
return -1;
|
|
114
114
|
}
|
|
@@ -124,38 +124,38 @@ function qe(t) {
|
|
|
124
124
|
const {
|
|
125
125
|
active: n,
|
|
126
126
|
align: a,
|
|
127
|
-
closeOnEscape:
|
|
128
|
-
closeOnOutsideInteraction:
|
|
127
|
+
closeOnEscape: i,
|
|
128
|
+
closeOnOutsideInteraction: s,
|
|
129
129
|
highlightedIndex: r,
|
|
130
130
|
id: c,
|
|
131
|
-
listboxReference:
|
|
131
|
+
listboxReference: l,
|
|
132
132
|
onEscapeDismiss: d,
|
|
133
133
|
onEscapeKeyDown: u,
|
|
134
134
|
onHighlight: b,
|
|
135
135
|
onOutsideDismiss: g,
|
|
136
136
|
onPointerDownOutside: y,
|
|
137
137
|
onSelect: R,
|
|
138
|
-
options:
|
|
138
|
+
options: L,
|
|
139
139
|
ownerDocument: H,
|
|
140
140
|
position: E,
|
|
141
141
|
selectedValue: x,
|
|
142
|
-
state:
|
|
142
|
+
state: N,
|
|
143
143
|
triggerReference: K
|
|
144
|
-
} = t, m =
|
|
144
|
+
} = t, m = S(null), q = ee("Select").boundaryElement, D = Re(!0, q), F = Ee(
|
|
145
145
|
() => [K, m],
|
|
146
146
|
[K]
|
|
147
147
|
), j = I(
|
|
148
148
|
(f) => {
|
|
149
|
-
m.current = f,
|
|
149
|
+
m.current = f, l(f);
|
|
150
150
|
},
|
|
151
|
-
[
|
|
151
|
+
[l]
|
|
152
152
|
);
|
|
153
|
-
return
|
|
153
|
+
return Le({
|
|
154
154
|
active: n,
|
|
155
155
|
boundaries: F,
|
|
156
156
|
boundary: q,
|
|
157
|
-
dismissOnEscape:
|
|
158
|
-
dismissOnPointerDownOutside:
|
|
157
|
+
dismissOnEscape: i,
|
|
158
|
+
dismissOnPointerDownOutside: s,
|
|
159
159
|
layerId: D.id,
|
|
160
160
|
onEscapeDismiss: d,
|
|
161
161
|
onEscapeKeyDown: u,
|
|
@@ -169,7 +169,7 @@ function qe(t) {
|
|
|
169
169
|
"aria-labelledby": c,
|
|
170
170
|
className: "nk-select__listbox",
|
|
171
171
|
"data-align": a,
|
|
172
|
-
"data-state":
|
|
172
|
+
"data-state": N,
|
|
173
173
|
id: `${c}-listbox`,
|
|
174
174
|
ref: j,
|
|
175
175
|
role: "listbox",
|
|
@@ -180,7 +180,7 @@ function qe(t) {
|
|
|
180
180
|
top: E.top,
|
|
181
181
|
zIndex: D.zIndex
|
|
182
182
|
} : { visibility: "hidden", zIndex: D.zIndex },
|
|
183
|
-
children:
|
|
183
|
+
children: L.map((f, M) => /* @__PURE__ */ O(
|
|
184
184
|
"div",
|
|
185
185
|
{
|
|
186
186
|
"aria-disabled": f.disabled || void 0,
|
|
@@ -215,22 +215,22 @@ function je(t) {
|
|
|
215
215
|
const {
|
|
216
216
|
"aria-invalid": n,
|
|
217
217
|
align: a = "start",
|
|
218
|
-
className:
|
|
219
|
-
closeOnEscape:
|
|
218
|
+
className: i,
|
|
219
|
+
closeOnEscape: s = !0,
|
|
220
220
|
closeOnOutsideInteraction: r = !0,
|
|
221
221
|
defaultValue: c = "",
|
|
222
|
-
disabled:
|
|
222
|
+
disabled: l = !1,
|
|
223
223
|
displayOverride: d,
|
|
224
224
|
form: u,
|
|
225
225
|
forwardedReference: b,
|
|
226
226
|
id: g,
|
|
227
227
|
invalid: y = !1,
|
|
228
228
|
name: R,
|
|
229
|
-
onChange:
|
|
229
|
+
onChange: L,
|
|
230
230
|
onClick: H,
|
|
231
231
|
onEscapeKeyDown: E,
|
|
232
232
|
onKeyDown: x,
|
|
233
|
-
onOpenChange:
|
|
233
|
+
onOpenChange: N,
|
|
234
234
|
onPointerDownOutside: K,
|
|
235
235
|
options: m,
|
|
236
236
|
placeholder: q,
|
|
@@ -241,15 +241,15 @@ function je(t) {
|
|
|
241
241
|
...M
|
|
242
242
|
} = t;
|
|
243
243
|
Ke(m);
|
|
244
|
-
const J = xe(),
|
|
245
|
-
(e) => e.value ===
|
|
246
|
-
), ue = y ||
|
|
244
|
+
const J = xe(), P = g ?? J, w = S(null), [V, ie] = Y(null), [p, re] = Y(!1), [_, C] = Y(-1), [ce, te] = Y(c), A = j !== void 0, T = A ? j : ce, de = m.find(
|
|
245
|
+
(e) => e.value === T
|
|
246
|
+
), ue = y || le(n), fe = oe(y, n), Z = Ne(p), W = ((ae = w.current) == null ? void 0 : ae.ownerDocument) ?? (typeof document > "u" ? null : document), me = ee("Select").boundaryElement, he = Ce(
|
|
247
247
|
Z.present,
|
|
248
248
|
w.current,
|
|
249
249
|
V,
|
|
250
250
|
me,
|
|
251
251
|
a
|
|
252
|
-
), pe = $e(w), ve = f === void 0 ? F : { ...F, width: f },
|
|
252
|
+
), pe = $e(w), ve = f === void 0 ? F : { ...F, width: f }, U = d ?? de, be = I(
|
|
253
253
|
(e) => Fe(
|
|
254
254
|
e,
|
|
255
255
|
w,
|
|
@@ -257,57 +257,57 @@ function je(t) {
|
|
|
257
257
|
),
|
|
258
258
|
[b]
|
|
259
259
|
), v = I((e) => {
|
|
260
|
-
p !== e && (re(e),
|
|
261
|
-
}, [
|
|
262
|
-
|
|
263
|
-
}, [c,
|
|
260
|
+
p !== e && (re(e), N == null || N(e));
|
|
261
|
+
}, [N, p]), ye = I(() => {
|
|
262
|
+
A || te(c), v(!1);
|
|
263
|
+
}, [c, A, v]), Ie = Se({
|
|
264
264
|
form: u,
|
|
265
265
|
onReset: ye,
|
|
266
|
-
resetValue:
|
|
266
|
+
resetValue: A ? T : c,
|
|
267
267
|
triggerReference: w
|
|
268
|
-
}),
|
|
269
|
-
const
|
|
270
|
-
(
|
|
268
|
+
}), X = I((e = 1) => {
|
|
269
|
+
const o = m.findIndex(
|
|
270
|
+
(se) => se.value === T && !se.disabled
|
|
271
271
|
), k = e === 1 ? -1 : m.length;
|
|
272
272
|
C(
|
|
273
|
-
|
|
273
|
+
o >= 0 ? o : z(m, k, e)
|
|
274
274
|
), v(!0);
|
|
275
|
-
}, [m,
|
|
276
|
-
var
|
|
277
|
-
|
|
278
|
-
}, [
|
|
275
|
+
}, [m, T, v]), ne = I((e) => {
|
|
276
|
+
var o;
|
|
277
|
+
l || e.disabled || (A || te(e.value), v(!1), (o = w.current) == null || o.focus(), L == null || L(e.value));
|
|
278
|
+
}, [l, A, L, v]), ge = I(() => {
|
|
279
279
|
var e;
|
|
280
280
|
v(!1), (e = w.current) == null || e.focus();
|
|
281
281
|
}, [v]), we = I(() => {
|
|
282
282
|
v(!1);
|
|
283
283
|
}, [v]);
|
|
284
284
|
function _e(e) {
|
|
285
|
-
H == null || H(e), !(e.defaultPrevented ||
|
|
285
|
+
H == null || H(e), !(e.defaultPrevented || l) && (p ? v(!1) : X());
|
|
286
286
|
}
|
|
287
287
|
function ke(e) {
|
|
288
|
-
if (x == null || x(e), !(e.defaultPrevented ||
|
|
288
|
+
if (x == null || x(e), !(e.defaultPrevented || l)) {
|
|
289
289
|
if (e.key === "ArrowDown" || e.key === "ArrowUp") {
|
|
290
290
|
e.preventDefault();
|
|
291
|
-
const
|
|
291
|
+
const o = e.key === "ArrowDown" ? 1 : -1;
|
|
292
292
|
p ? C(
|
|
293
|
-
(k) =>
|
|
294
|
-
) :
|
|
293
|
+
(k) => z(m, k, o)
|
|
294
|
+
) : X(o);
|
|
295
295
|
return;
|
|
296
296
|
}
|
|
297
297
|
if (e.key === "Home" || e.key === "End") {
|
|
298
|
-
if (e.preventDefault(), !p)
|
|
298
|
+
if (e.preventDefault(), !p) X(e.key === "Home" ? 1 : -1);
|
|
299
299
|
else {
|
|
300
|
-
const
|
|
300
|
+
const o = e.key === "Home" ? 1 : -1, k = o === 1 ? -1 : m.length;
|
|
301
301
|
C(
|
|
302
|
-
|
|
302
|
+
z(m, k, o)
|
|
303
303
|
);
|
|
304
304
|
}
|
|
305
305
|
return;
|
|
306
306
|
}
|
|
307
307
|
if (e.key === "Enter" || e.key === " ") {
|
|
308
308
|
e.preventDefault();
|
|
309
|
-
const
|
|
310
|
-
p &&
|
|
309
|
+
const o = m[_];
|
|
310
|
+
p && o ? ne(o) : p || X();
|
|
311
311
|
return;
|
|
312
312
|
}
|
|
313
313
|
if (e.key === "Tab") {
|
|
@@ -315,11 +315,11 @@ function je(t) {
|
|
|
315
315
|
return;
|
|
316
316
|
}
|
|
317
317
|
if (e.key.length === 1 && !e.altKey && !e.ctrlKey && !e.metaKey) {
|
|
318
|
-
const
|
|
319
|
-
if (
|
|
318
|
+
const o = pe(e.key.toLocaleLowerCase());
|
|
319
|
+
if (o === null) return;
|
|
320
320
|
const k = Ge(
|
|
321
321
|
m,
|
|
322
|
-
|
|
322
|
+
o,
|
|
323
323
|
_
|
|
324
324
|
);
|
|
325
325
|
k >= 0 && (e.preventDefault(), p || v(!0), C(k));
|
|
@@ -327,20 +327,20 @@ function je(t) {
|
|
|
327
327
|
}
|
|
328
328
|
}
|
|
329
329
|
return Q(() => {
|
|
330
|
-
|
|
331
|
-
}, [
|
|
330
|
+
l && v(!1);
|
|
331
|
+
}, [l, v]), Q(() => {
|
|
332
332
|
var e;
|
|
333
333
|
if (p && _ >= 0) {
|
|
334
|
-
const
|
|
335
|
-
`${
|
|
334
|
+
const o = W == null ? void 0 : W.getElementById(
|
|
335
|
+
`${P}-option-${_}`
|
|
336
336
|
);
|
|
337
|
-
|
|
337
|
+
o && (V != null && V.contains(o)) && ((e = o.scrollIntoView) == null || e.call(o, { block: "nearest" }));
|
|
338
338
|
}
|
|
339
|
-
}, [_,
|
|
339
|
+
}, [_, P, V, p]), /* @__PURE__ */ O(
|
|
340
340
|
"span",
|
|
341
341
|
{
|
|
342
|
-
className: ["nk-select",
|
|
343
|
-
"data-disabled":
|
|
342
|
+
className: ["nk-select", i].filter(Boolean).join(" "),
|
|
343
|
+
"data-disabled": l || void 0,
|
|
344
344
|
"data-invalid": ue || void 0,
|
|
345
345
|
"data-mode": "custom",
|
|
346
346
|
"data-open": p || void 0,
|
|
@@ -351,25 +351,25 @@ function je(t) {
|
|
|
351
351
|
{
|
|
352
352
|
...M,
|
|
353
353
|
ref: be,
|
|
354
|
-
"aria-activedescendant": p && _ >= 0 ? `${
|
|
355
|
-
"aria-controls": `${
|
|
354
|
+
"aria-activedescendant": p && _ >= 0 ? `${P}-option-${_}` : void 0,
|
|
355
|
+
"aria-controls": `${P}-listbox`,
|
|
356
356
|
"aria-expanded": p,
|
|
357
357
|
"aria-haspopup": "listbox",
|
|
358
358
|
"aria-invalid": fe,
|
|
359
359
|
"aria-required": D || void 0,
|
|
360
360
|
"aria-autocomplete": "none",
|
|
361
361
|
className: "nk-select__trigger",
|
|
362
|
-
disabled:
|
|
362
|
+
disabled: l,
|
|
363
363
|
form: u,
|
|
364
|
-
id:
|
|
364
|
+
id: P,
|
|
365
365
|
onClick: _e,
|
|
366
366
|
onKeyDown: ke,
|
|
367
367
|
role: "combobox",
|
|
368
368
|
type: "button",
|
|
369
369
|
children: [
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
/* @__PURE__ */ h("span", { className: "nk-select__value-label", children:
|
|
370
|
+
U ? /* @__PURE__ */ O("span", { className: "nk-select__value", children: [
|
|
371
|
+
U.icon ? /* @__PURE__ */ h(G, { type: U.icon }) : null,
|
|
372
|
+
/* @__PURE__ */ h("span", { className: "nk-select__value-label", children: U.label })
|
|
373
373
|
] }) : /* @__PURE__ */ h("span", { className: "nk-select__placeholder", children: q }),
|
|
374
374
|
/* @__PURE__ */ h(G, { className: "nk-select__icon", type: "chevron-down" })
|
|
375
375
|
]
|
|
@@ -381,18 +381,18 @@ function je(t) {
|
|
|
381
381
|
ref: Ie,
|
|
382
382
|
"aria-hidden": "true",
|
|
383
383
|
className: "nk-select__form-control",
|
|
384
|
-
disabled:
|
|
384
|
+
disabled: l,
|
|
385
385
|
form: u,
|
|
386
386
|
name: R,
|
|
387
387
|
onChange: () => {
|
|
388
388
|
},
|
|
389
389
|
onInvalid: (e) => {
|
|
390
|
-
var
|
|
391
|
-
e.preventDefault(), (
|
|
390
|
+
var o;
|
|
391
|
+
e.preventDefault(), (o = w.current) == null || o.focus();
|
|
392
392
|
},
|
|
393
393
|
required: D,
|
|
394
394
|
tabIndex: -1,
|
|
395
|
-
value:
|
|
395
|
+
value: T,
|
|
396
396
|
children: [
|
|
397
397
|
/* @__PURE__ */ h("option", { value: "" }),
|
|
398
398
|
m.map((e) => /* @__PURE__ */ h(
|
|
@@ -407,16 +407,16 @@ function je(t) {
|
|
|
407
407
|
]
|
|
408
408
|
}
|
|
409
409
|
) : null,
|
|
410
|
-
Z.present && W ? /* @__PURE__ */ h(
|
|
410
|
+
Z.present && W ? /* @__PURE__ */ h(Pe, { children: /* @__PURE__ */ h(
|
|
411
411
|
qe,
|
|
412
412
|
{
|
|
413
413
|
active: p,
|
|
414
414
|
align: a,
|
|
415
|
-
closeOnEscape:
|
|
415
|
+
closeOnEscape: s,
|
|
416
416
|
closeOnOutsideInteraction: r,
|
|
417
417
|
highlightedIndex: _,
|
|
418
|
-
id:
|
|
419
|
-
listboxReference:
|
|
418
|
+
id: P,
|
|
419
|
+
listboxReference: ie,
|
|
420
420
|
onEscapeDismiss: ge,
|
|
421
421
|
onEscapeKeyDown: E,
|
|
422
422
|
onHighlight: C,
|
|
@@ -426,7 +426,7 @@ function je(t) {
|
|
|
426
426
|
options: m,
|
|
427
427
|
ownerDocument: W,
|
|
428
428
|
position: he,
|
|
429
|
-
selectedValue:
|
|
429
|
+
selectedValue: T,
|
|
430
430
|
state: Z.state === "closing" ? "closing" : "open",
|
|
431
431
|
triggerReference: w
|
|
432
432
|
}
|
|
@@ -435,24 +435,24 @@ function je(t) {
|
|
|
435
435
|
}
|
|
436
436
|
);
|
|
437
437
|
}
|
|
438
|
-
function
|
|
438
|
+
function Ue(t) {
|
|
439
439
|
const {
|
|
440
440
|
"aria-invalid": n,
|
|
441
441
|
children: a,
|
|
442
|
-
className:
|
|
443
|
-
defaultValue:
|
|
442
|
+
className: i,
|
|
443
|
+
defaultValue: s,
|
|
444
444
|
disabled: r = !1,
|
|
445
445
|
forwardedReference: c,
|
|
446
|
-
invalid:
|
|
446
|
+
invalid: l = !1,
|
|
447
447
|
placeholder: d,
|
|
448
448
|
style: u,
|
|
449
449
|
value: b,
|
|
450
450
|
...g
|
|
451
|
-
} = t, y =
|
|
451
|
+
} = t, y = oe(l, n), R = l || le(n);
|
|
452
452
|
return /* @__PURE__ */ O(
|
|
453
453
|
"span",
|
|
454
454
|
{
|
|
455
|
-
className: ["nk-select",
|
|
455
|
+
className: ["nk-select", i].filter(Boolean).join(" "),
|
|
456
456
|
"data-disabled": r || void 0,
|
|
457
457
|
"data-invalid": R || void 0,
|
|
458
458
|
"data-mode": "native",
|
|
@@ -465,7 +465,7 @@ function ze(t) {
|
|
|
465
465
|
ref: c,
|
|
466
466
|
"aria-invalid": y,
|
|
467
467
|
className: "nk-select__control",
|
|
468
|
-
defaultValue: b === void 0 ?
|
|
468
|
+
defaultValue: b === void 0 ? s ?? (d !== void 0 ? "" : void 0) : void 0,
|
|
469
469
|
disabled: r,
|
|
470
470
|
value: b,
|
|
471
471
|
children: [
|
|
@@ -480,15 +480,15 @@ function ze(t) {
|
|
|
480
480
|
);
|
|
481
481
|
}
|
|
482
482
|
const tt = De(function(n, a) {
|
|
483
|
-
const { options:
|
|
484
|
-
return ee("Select"),
|
|
483
|
+
const { options: i } = n;
|
|
484
|
+
return ee("Select"), i !== void 0 ? /* @__PURE__ */ h(
|
|
485
485
|
je,
|
|
486
486
|
{
|
|
487
487
|
...n,
|
|
488
488
|
forwardedReference: a
|
|
489
489
|
}
|
|
490
490
|
) : /* @__PURE__ */ h(
|
|
491
|
-
|
|
491
|
+
Ue,
|
|
492
492
|
{
|
|
493
493
|
...n,
|
|
494
494
|
forwardedReference: a
|
package/dist/Sidebar.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
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"),z=require("./Button-pinr6Woy.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-8_GSpDjw.cjs"),ce=require("./Avatar-Belo7qAY.cjs"),ue=require("./Spinner-BE0F4y2S.cjs"),de=require("./Tooltip-DrAZSmEv.cjs"),fe=require("./units-BEMW4BNr.cjs");function be(s){const{label:n,onToggle:e,panelId:r,reference:b,side:u,sidebarOpen:i}=s;return l.jsx(z.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",variant:"secondary",size:"large",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 me(s){var n;return s?(n=q.get(s))==null?void 0:n.state:void 0}function ge(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=>ge(n,b),[n]),r=t.useCallback(()=>me(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",m=h,E=m.href!==void 0||m.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(z.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:m.href,icon:y,onClick:v,shape:"rectangle",size:"small",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 m;if((m=e.current)==null||m.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:m,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":m||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),[m,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(()=>{m&&(m.inert=!h)},[h,m]);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:m,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 m=o.current;m&&m!==f&&(i==null||i(m)),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:m,...E}=d;return l.jsx(de.Tooltip2,{content:m,children:l.jsx(z.Button,{...E,"aria-label":a??m,className:"nk-sidebar__user-action",icon:f,shape:"rectangle",type:"button",variant:"ghost"})},m)})}):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("medium")?"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`,m=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),G=t.useRef(null),N=k?y:I,w=t.useRef(o);R.useIsomorphicLayoutEffect(()=>{w.current=o});const F=t.useCallback((g,C)=>{var x;N!==g&&(k||L(g),(x=w.current)==null||x.call(w,g,C))},[k,N]),V=t.useCallback(g=>{E.current=g,H.assignElementReference(e,g)},[e]),_=t.useMemo(()=>[E],[]),$=t.useCallback(g=>{_.push({current:g}),j(C=>C+1)},[_]),K=t.useCallback(g=>{const C=_.findIndex(x=>x.current===g);C>0&&_.splice(C,1),j(x=>Math.max(x-1,0))},[_]),te=t.useCallback(g=>{const C=G.current;if(C&&C!==g){const x=_.findIndex(se=>se.current===C);x>0&&_.splice(x,1)}G.current=g,g&&_.push({current:g})},[_]),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 g=a==null?void 0:a.boundaryElement;if(!g)return;if(pe(g,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.")},[a==null?void 0:a.boundaryElement,m,A]),R.useIsomorphicLayoutEffect(()=>{const g=a==null?void 0:a.boundaryElement;if(g)return()=>he(g,m)},[a==null?void 0:a.boundaryElement,m]),t.useEffect(()=>{v==="inline"&&F(!1,"variant")},[v,F]),t.useEffect(()=>{var x;const g=(x=a==null?void 0:a.boundaryElement)==null?void 0:x.ownerDocument.defaultView;if(!g)return;const C=g.setTimeout(()=>re(!0),Le);return()=>g.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:V,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:V,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;
|
|
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"),z=require("./Button-pinr6Woy.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-DPVO2E8O.cjs"),ce=require("./Avatar-Belo7qAY.cjs"),ue=require("./Spinner-BE0F4y2S.cjs"),de=require("./Tooltip-B2rZmRCs.cjs"),fe=require("./units-BEMW4BNr.cjs");function be(s){const{label:n,onToggle:e,panelId:r,reference:b,side:u,sidebarOpen:i}=s;return l.jsx(z.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",variant:"secondary",size:"large",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 me(s){var n;return s?(n=q.get(s))==null?void 0:n.state:void 0}function ge(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=>ge(n,b),[n]),r=t.useCallback(()=>me(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",m=h,E=m.href!==void 0||m.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(z.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:m.href,icon:y,onClick:v,shape:"rectangle",size:"small",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 m;if((m=e.current)==null||m.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:m,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":m||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),[m,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(()=>{m&&(m.inert=!h)},[h,m]);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:m,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 m=o.current;m&&m!==f&&(i==null||i(m)),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:m,...E}=d;return l.jsx(de.Tooltip2,{content:m,children:l.jsx(z.Button,{...E,"aria-label":a??m,className:"nk-sidebar__user-action",icon:f,shape:"rectangle",type:"button",variant:"ghost"})},m)})}):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("medium")?"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`,m=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),G=t.useRef(null),N=k?y:I,w=t.useRef(o);R.useIsomorphicLayoutEffect(()=>{w.current=o});const F=t.useCallback((g,C)=>{var x;N!==g&&(k||L(g),(x=w.current)==null||x.call(w,g,C))},[k,N]),V=t.useCallback(g=>{E.current=g,H.assignElementReference(e,g)},[e]),_=t.useMemo(()=>[E],[]),$=t.useCallback(g=>{_.push({current:g}),j(C=>C+1)},[_]),K=t.useCallback(g=>{const C=_.findIndex(x=>x.current===g);C>0&&_.splice(C,1),j(x=>Math.max(x-1,0))},[_]),te=t.useCallback(g=>{const C=G.current;if(C&&C!==g){const x=_.findIndex(se=>se.current===C);x>0&&_.splice(x,1)}G.current=g,g&&_.push({current:g})},[_]),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 g=a==null?void 0:a.boundaryElement;if(!g)return;if(pe(g,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.")},[a==null?void 0:a.boundaryElement,m,A]),R.useIsomorphicLayoutEffect(()=>{const g=a==null?void 0:a.boundaryElement;if(g)return()=>he(g,m)},[a==null?void 0:a.boundaryElement,m]),t.useEffect(()=>{v==="inline"&&F(!1,"variant")},[v,F]),t.useEffect(()=>{var x;const g=(x=a==null?void 0:a.boundaryElement)==null?void 0:x.ownerDocument.defaultView;if(!g)return;const C=g.setTimeout(()=>re(!0),Le);return()=>g.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:V,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:V,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;
|
package/dist/Sidebar.js
CHANGED
|
@@ -9,10 +9,10 @@ import { T as V } from "./Text-rN6iDo0V.js";
|
|
|
9
9
|
import { u as Pe } from "./useFocusTrap-BxPazAL6.js";
|
|
10
10
|
import { u as Te } from "./useScrollLock-Drd7OZRC.js";
|
|
11
11
|
import { m as Ie } from "./aria-Bv-xVREf.js";
|
|
12
|
-
import { r as Le } from "./useFloatingPosition-
|
|
12
|
+
import { r as Le } from "./useFloatingPosition-DktY7k-t.js";
|
|
13
13
|
import { A as Re } from "./Avatar-DjDCFqNG.js";
|
|
14
14
|
import { S as Be } from "./Spinner-CmxlDlOk.js";
|
|
15
|
-
import { T as Oe } from "./Tooltip-
|
|
15
|
+
import { T as Oe } from "./Tooltip-4RWCnb2Q.js";
|
|
16
16
|
import { b as Fe } from "./units-D4Waz9EO.js";
|
|
17
17
|
function xe(t) {
|
|
18
18
|
const { label: n, onToggle: e, panelId: r, reference: u, side: l, sidebarOpen: o } = t;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";"use strict";const o=require("react/jsx-runtime"),a=require("react"),H=require("./reference-C2guRuR0.cjs"),D=require("./Surface-BttJYSDt.cjs"),K=require("./Button-pinr6Woy.cjs"),O=require("./Tooltip-
|
|
1
|
+
"use client";"use strict";const o=require("react/jsx-runtime"),a=require("react"),H=require("./reference-C2guRuR0.cjs"),D=require("./Surface-BttJYSDt.cjs"),K=require("./Button-pinr6Woy.cjs"),O=require("./Tooltip-B2rZmRCs.cjs"),v=a.createContext("body"),w=a.forwardRef(function(l,e){const{align:t="left",children:s,className:i,scope:c="col",sticky:b=!1,...d}=l;return o.jsx("th",{...d,ref:e,className:["nk-table__header-cell",i].filter(Boolean).join(" "),"data-align":t,"data-sticky":b||void 0,scope:c,children:s})});function S(n){for(const l of a.Children.toArray(n)){if(a.isValidElement(l)&&l.type===a.Fragment){if(S(l.props.children))return!0;continue}return!0}return!1}function F(n){const{"aria-label":l,icon:e,label:t,...s}=n;return o.jsx(O.Tooltip2,{content:t,children:o.jsx(K.Button,{...s,"aria-label":l??t,icon:e,shape:"rectangle",size:"small",type:"button",variant:"ghost"})})}function P(n){const{actions:l}=n;function e(t){t.stopPropagation()}return o.jsx("td",{className:"nk-table__cell nk-table__action-cell","data-align":"right",onClick:e,children:l.length>0?o.jsx("span",{className:"nk-table__action-list",children:l.map(t=>a.createElement(F,{...t,key:t.label}))}):null})}const q=a.forwardRef(function(l,e){const{children:t,className:s,emptyColumnCount:i=1,emptyMessage:c,...b}=l,d=!S(t),h=Number.isFinite(i)?Math.max(1,Math.floor(i)):1;return o.jsx("tbody",{...b,ref:e,className:["nk-table__body",s].filter(Boolean).join(" "),children:d&&c!==void 0?o.jsxs("tr",{className:"nk-table__row",children:[o.jsx("td",{"aria-hidden":"true",className:"nk-table__cell nk-table__overscroll-start-cell"}),o.jsx("td",{className:"nk-table__cell nk-table__empty-cell",colSpan:h,children:o.jsx("div",{className:"nk-table__empty-content",children:c})}),o.jsx(P,{actions:[]})]}):o.jsx(v.Provider,{value:"body",children:t})})});function z(n,l,e){return n===void 0?l:e?e(n):n instanceof Date?Number.isNaN(n.getTime())?"Invalid Date":n.toISOString().slice(0,10):typeof n=="boolean"?n?"Yes":"No":n}function V(n){if(typeof n=="number"||typeof n=="string")return String(n)}const E=a.forwardRef(function(l,e){const{align:t="left",children:s,className:i,format:c,title:b,truncate:d,value:h,...k}=l,{rowTrigger:r,...u}=k,p=z(h,s,c),f=d===void 0?void 0:{maxWidth:d},_=b??(d===void 0?void 0:V(p));return o.jsxs("td",{...u,ref:e,className:["nk-table__cell",i].filter(Boolean).join(" "),"data-align":t,title:_,children:[(r==null?void 0:r.kind)==="link"&&r.linkProperties?o.jsx("a",{ref:r.reference,"aria-label":r.ariaLabel,className:"nk-table__row-trigger",download:r.linkProperties.download,href:r.linkProperties.href,hrefLang:r.linkProperties.hrefLang,onClick:r.linkProperties.onNavigate,rel:r.linkProperties.rel,target:r.linkProperties.target}):null,(r==null?void 0:r.kind)==="button"?o.jsx("button",{ref:r.reference,"aria-label":r.ariaLabel,className:"nk-table__row-trigger",onClick:r.onClick,type:"button"}):null,d!==void 0?o.jsx("span",{className:"nk-table__truncated-content",style:f,children:p}):p]})}),M=a.forwardRef(function(l,e){const{children:t,className:s,...i}=l;return o.jsx("tfoot",{...i,ref:e,className:["nk-table__foot",s].filter(Boolean).join(" "),children:o.jsx(v.Provider,{value:"foot",children:t})})}),Y=a.forwardRef(function(l,e){const{children:t,className:s,...i}=l;return o.jsx("thead",{...i,ref:e,className:["nk-table__head",s].filter(Boolean).join(" "),children:o.jsx(v.Provider,{value:"head",children:t})})}),X=["a[href]","audio[controls]","button","iframe","input","label","select","summary","textarea","video[controls]","[contenteditable]:not([contenteditable='false'])"].join(","),$=new Set(["button","checkbox","combobox","grid","link","listbox","menu","menubar","menuitem","menuitemcheckbox","menuitemradio","option","radio","radiogroup","scrollbar","searchbox","slider","spinbutton","switch","tab","tablist","textbox","tree","treegrid","treeitem"]);function G(n,l){var t;let e=n;for(;e&&e!==l;){if(e.matches(X)||(((t=e.getAttribute("role"))==null?void 0:t.split(/\s+/))??[]).some(i=>$.has(i)))return!0;e=e.parentElement}return!1}function J(n,l){let e=!1;function t(i){return a.Children.map(i,c=>a.isValidElement(c)?c.type===a.Fragment?a.cloneElement(c,void 0,t(c.props.children)):!e&&c.type===E?(e=!0,a.cloneElement(c,{rowTrigger:l})):c:c)}const s=t(n);return{attached:e,content:s}}const Q=a.forwardRef(function(l,e){const{children:t,className:s,...i}=l;return o.jsx(w,{...i,ref:e,align:"right",className:["nk-table__action-header-cell",s].filter(Boolean).join(" "),children:t??o.jsx("span",{className:"nk-table__visually-hidden",children:"Row actions"})})}),U=a.forwardRef(function(l,e){const{"aria-label":t,actions:s,children:i,className:c,download:b,href:d,hrefLang:h,onClick:k,onNavigate:r,rel:u,target:p,...f}=l,_=a.useRef(null),g=a.useContext(v),j=d!==void 0||k!==void 0,N=(t==null?void 0:t.trim())||(d!==void 0?"Open row":"Activate row");function T(m){_.current=m}let x;d!==void 0?x={ariaLabel:N,kind:"link",linkProperties:{download:b,href:d,hrefLang:h,onNavigate:r,rel:u,target:p},reference:T}:k!==void 0&&(x={ariaLabel:N,kind:"button",onClick:k,reference:T});const B=x?J(i,x):{content:i};function L(m){if(m.defaultPrevented)return;const y=m.target;if(!(y instanceof Element)||G(y,m.currentTarget))return;const C=_.current;if(!C)return;const R=C.ownerDocument.defaultView;if(!R){C.click();return}C.dispatchEvent(new R.MouseEvent("click",{altKey:m.altKey,bubbles:!0,button:m.button,buttons:m.buttons,cancelable:!0,clientX:m.clientX,clientY:m.clientY,ctrlKey:m.ctrlKey,metaKey:m.metaKey,shiftKey:m.shiftKey}))}const A=g==="head"?o.jsx(Q,{}):o.jsx(P,{actions:s??[]}),I=g==="head"?o.jsx("th",{"aria-hidden":"true",className:"nk-table__header-cell nk-table__overscroll-start-cell"}):o.jsx("td",{"aria-hidden":"true",className:"nk-table__cell nk-table__overscroll-start-cell"});return o.jsxs("tr",{...f,ref:e,"aria-label":j?void 0:t,className:["nk-table__row",c].filter(Boolean).join(" "),"data-interactive":j||void 0,onClick:j?L:void 0,children:[I,B.content,A]})});function W(){const n=a.useRef(null),l=a.useRef(null),[e,t]=a.useState(!1),[s,i]=a.useState(!1);a.useEffect(()=>{const b=n.current,d=l.current;if(!b||!d)return;const h=b,k=d;function r(){const _=h.scrollWidth>h.clientWidth;t(_),_||i(!1)}r();const u=h.ownerDocument.defaultView;u==null||u.addEventListener("resize",r);const p=u==null?void 0:u.ResizeObserver,f=p?new p(r):void 0;return f==null||f.observe(h),f==null||f.observe(k),()=>{u==null||u.removeEventListener("resize",r),f==null||f.disconnect()}},[]);function c(b){i(e&&b.currentTarget.scrollLeft>1)}return{containerReference:n,contentReference:l,isScrollable:e,isScrolled:s,handleScroll:c}}const Z=a.forwardRef(function(l,e){const{"aria-label":t,children:s,className:i,containerClassName:c,frame:b="outline",...d}=l,{containerReference:h,contentReference:k,isScrollable:r,isScrolled:u,handleScroll:p}=W(),f=t?`${t} scroll area`:"Scrollable table",_=a.useCallback(g=>{k.current=g,H.assignElementReference(e,g)},[k,e]);return o.jsx(D.Surface,{ref:h,"aria-label":r?f:void 0,className:["nk-table",c].filter(Boolean).join(" "),"data-frame":b,"data-scrolled":u||void 0,onScroll:p,role:r?"region":void 0,tabIndex:r?0:void 0,children:o.jsx("table",{...d,ref:_,"aria-label":t,className:["nk-table__element",i].filter(Boolean).join(" "),children:s})})}),ee=Object.assign(Z,{Body:q,Cell:E,Foot:M,HeaderCell:w,Head:Y,Row:U});exports.Table=ee;
|