@abumble/design-system 0.0.35 → 0.0.38
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/components/BackLink/BackLink.d.ts.map +1 -1
- package/dist/components/Banner/Banner.d.ts +9 -11
- package/dist/components/Banner/Banner.d.ts.map +1 -1
- package/dist/components/Banner/bannerType.d.ts +9 -0
- package/dist/components/Banner/bannerType.d.ts.map +1 -0
- package/dist/components/Banner/index.d.ts +2 -1
- package/dist/components/Banner/index.d.ts.map +1 -1
- package/dist/components/Banner.js +35 -25
- package/dist/components/Banner.js.map +1 -1
- package/dist/components/BannerHeader.js +1 -1
- package/dist/components/Carousel/Carousel.d.ts.map +1 -1
- package/dist/components/Carousel.js +36 -36
- package/dist/components/Carousel.js.map +1 -1
- package/dist/components/Dialog.js +1 -1
- package/dist/components/PageHeader.js +1 -1
- package/dist/components/Sheet.js +1 -1
- package/dist/components/Sidebar/Sidebar.d.ts +32 -32
- package/dist/components/Sidebar/Sidebar.d.ts.map +1 -1
- package/dist/components/Sidebar.js +109 -92
- package/dist/components/Sidebar.js.map +1 -1
- package/dist/components/Tooltip/Tooltip.d.ts.map +1 -1
- package/dist/components/Tooltip.js +1 -1
- package/dist/components/UnderConstruction.js +1 -1
- package/dist/hooks/use-mobile.d.ts.map +1 -1
- package/dist/main.d.ts +1 -0
- package/dist/main.d.ts.map +1 -1
- package/dist/shared/BackLink.js +25 -19
- package/dist/shared/BackLink.js.map +1 -1
- package/dist/shared/Dialog.js +2 -2
- package/dist/shared/Empty.js +1 -1
- package/dist/shared/Empty.js.map +1 -1
- package/dist/shared/PageHeader.js +2 -2
- package/dist/shared/Sheet.js +11 -11
- package/dist/shared/Sheet.js.map +1 -1
- package/dist/shared/Skeleton.js +7 -7
- package/dist/shared/Skeleton.js.map +1 -1
- package/dist/shared/Tooltip.js +12 -12
- package/dist/shared/Tooltip.js.map +1 -1
- package/dist/shared/use-mobile.js +6 -4
- package/dist/shared/use-mobile.js.map +1 -1
- package/package.json +14 -11
- package/src/styles.css +14 -152
- package/src/themes/linen.css +261 -0
- package/src/themes/steel.css +261 -0
|
@@ -1,46 +1,46 @@
|
|
|
1
1
|
import { jsx as t, jsxs as g, Fragment as k } from "react/jsx-runtime";
|
|
2
2
|
import { Slot as h } from "@radix-ui/react-slot";
|
|
3
|
-
import { cva as
|
|
3
|
+
import { cva as _ } from "class-variance-authority";
|
|
4
4
|
import { ChevronsLeft as I } from "lucide-react";
|
|
5
5
|
import * as c from "react";
|
|
6
|
-
import {
|
|
7
|
-
import { I as T } from "../shared/Input.js";
|
|
8
|
-
import { S as D } from "../shared/Separator.js";
|
|
9
|
-
import { S as B, c as A, d as O, f as R, g as H } from "../shared/Sheet.js";
|
|
10
|
-
import { S as y } from "../shared/Skeleton.js";
|
|
11
|
-
import { T as K, a as j, b as G, c as L } from "../shared/Tooltip.js";
|
|
12
|
-
import { u as $ } from "../shared/use-mobile.js";
|
|
6
|
+
import { u as T } from "../shared/use-mobile.js";
|
|
13
7
|
import { c as r } from "../shared/utils.js";
|
|
14
|
-
|
|
8
|
+
import { B as D } from "../shared/Button.js";
|
|
9
|
+
import { I as B } from "../shared/Input.js";
|
|
10
|
+
import { S as E } from "../shared/Separator.js";
|
|
11
|
+
import { S as O, b as R, e as A, f as H, c as j } from "../shared/Sheet.js";
|
|
12
|
+
import { S as y } from "../shared/Skeleton.js";
|
|
13
|
+
import { T as L, c as G, a as K, b as V } from "../shared/Tooltip.js";
|
|
14
|
+
const W = "18rem", q = "18rem", F = "3rem", P = "b", C = c.createContext(null);
|
|
15
15
|
function S() {
|
|
16
16
|
const a = c.useContext(C);
|
|
17
17
|
if (!a)
|
|
18
18
|
throw new Error("useSidebar must be used within a SidebarProvider.");
|
|
19
19
|
return a;
|
|
20
20
|
}
|
|
21
|
-
function
|
|
21
|
+
function ne({
|
|
22
22
|
defaultOpen: a = !0,
|
|
23
23
|
open: e,
|
|
24
24
|
onOpenChange: i,
|
|
25
25
|
className: o,
|
|
26
26
|
style: n,
|
|
27
27
|
children: d,
|
|
28
|
-
...
|
|
28
|
+
...b
|
|
29
29
|
}) {
|
|
30
|
-
const s =
|
|
30
|
+
const s = T(), [p, u] = c.useState(!1), [v, M] = c.useState(a), m = e ?? v, x = c.useCallback(
|
|
31
31
|
(l) => {
|
|
32
|
-
const
|
|
33
|
-
i ? i(
|
|
32
|
+
const f = typeof l == "function" ? l(m) : l;
|
|
33
|
+
i ? i(f) : M(f);
|
|
34
34
|
},
|
|
35
35
|
[i, m]
|
|
36
36
|
), w = c.useCallback(() => s ? u((l) => !l) : x((l) => !l), [s, x, u]);
|
|
37
37
|
c.useEffect(() => {
|
|
38
|
-
const l = (
|
|
39
|
-
|
|
38
|
+
const l = (f) => {
|
|
39
|
+
f.key === P && (f.metaKey || f.ctrlKey) && (f.preventDefault(), w());
|
|
40
40
|
};
|
|
41
41
|
return window.addEventListener("keydown", l), () => window.removeEventListener("keydown", l);
|
|
42
42
|
}, [w]);
|
|
43
|
-
const N = m ? "expanded" : "collapsed",
|
|
43
|
+
const N = m ? "expanded" : "collapsed", z = c.useMemo(
|
|
44
44
|
() => ({
|
|
45
45
|
state: N,
|
|
46
46
|
open: m,
|
|
@@ -50,27 +50,35 @@ function de({
|
|
|
50
50
|
setOpenMobile: u,
|
|
51
51
|
toggleSidebar: w
|
|
52
52
|
}),
|
|
53
|
-
[
|
|
53
|
+
[
|
|
54
|
+
N,
|
|
55
|
+
m,
|
|
56
|
+
x,
|
|
57
|
+
s,
|
|
58
|
+
p,
|
|
59
|
+
u,
|
|
60
|
+
w
|
|
61
|
+
]
|
|
54
62
|
);
|
|
55
|
-
return /* @__PURE__ */ t(C.Provider, { value:
|
|
63
|
+
return /* @__PURE__ */ t(C.Provider, { value: z, children: /* @__PURE__ */ t(V, { delayDuration: 0, children: /* @__PURE__ */ t(
|
|
56
64
|
"div",
|
|
57
65
|
{
|
|
58
66
|
"data-slot": "sidebar-wrapper",
|
|
59
67
|
style: {
|
|
60
|
-
"--sidebar-width":
|
|
61
|
-
"--sidebar-width-icon":
|
|
68
|
+
"--sidebar-width": W,
|
|
69
|
+
"--sidebar-width-icon": F,
|
|
62
70
|
...n
|
|
63
71
|
},
|
|
64
72
|
className: r(
|
|
65
73
|
"group/sidebar-wrapper has-data-[variant=inset]:bg-sidebar flex w-full",
|
|
66
74
|
o
|
|
67
75
|
),
|
|
68
|
-
...
|
|
76
|
+
...b,
|
|
69
77
|
children: d
|
|
70
78
|
}
|
|
71
79
|
) }) });
|
|
72
80
|
}
|
|
73
|
-
function
|
|
81
|
+
function se({
|
|
74
82
|
side: a = "left",
|
|
75
83
|
variant: e = "sidebar",
|
|
76
84
|
collapsible: i = "offcanvas",
|
|
@@ -78,7 +86,7 @@ function le({
|
|
|
78
86
|
children: n,
|
|
79
87
|
...d
|
|
80
88
|
}) {
|
|
81
|
-
const { isMobile:
|
|
89
|
+
const { isMobile: b, state: s, openMobile: p, setOpenMobile: u } = S();
|
|
82
90
|
return i === "none" ? /* @__PURE__ */ t(
|
|
83
91
|
"div",
|
|
84
92
|
{
|
|
@@ -90,20 +98,20 @@ function le({
|
|
|
90
98
|
...d,
|
|
91
99
|
children: n
|
|
92
100
|
}
|
|
93
|
-
) :
|
|
94
|
-
|
|
101
|
+
) : b ? /* @__PURE__ */ t(O, { open: p, onOpenChange: u, ...d, children: /* @__PURE__ */ g(
|
|
102
|
+
R,
|
|
95
103
|
{
|
|
96
104
|
"data-slot": "sidebar",
|
|
97
105
|
"data-mobile": "true",
|
|
98
106
|
className: "sidebar w-(--sidebar-width) p-0 [&>button]:hidden",
|
|
99
107
|
style: {
|
|
100
|
-
"--sidebar-width":
|
|
108
|
+
"--sidebar-width": q
|
|
101
109
|
},
|
|
102
110
|
side: a,
|
|
103
111
|
children: [
|
|
104
|
-
/* @__PURE__ */ g(
|
|
105
|
-
/* @__PURE__ */ t(
|
|
106
|
-
/* @__PURE__ */ t(
|
|
112
|
+
/* @__PURE__ */ g(A, { className: "sr-only", children: [
|
|
113
|
+
/* @__PURE__ */ t(H, { children: "Sidebar" }),
|
|
114
|
+
/* @__PURE__ */ t(j, { children: "Displays the mobile sidebar." })
|
|
107
115
|
] }),
|
|
108
116
|
/* @__PURE__ */ t("div", { className: "flex w-full flex-col", children: n })
|
|
109
117
|
]
|
|
@@ -157,14 +165,14 @@ function le({
|
|
|
157
165
|
}
|
|
158
166
|
);
|
|
159
167
|
}
|
|
160
|
-
function
|
|
168
|
+
function de({
|
|
161
169
|
className: a,
|
|
162
170
|
onClick: e,
|
|
163
171
|
...i
|
|
164
172
|
}) {
|
|
165
|
-
const { isMobile: o, open: n, toggleSidebar: d } = S(),
|
|
173
|
+
const { isMobile: o, open: n, toggleSidebar: d } = S(), b = o || !n ? "rotate-180" : "";
|
|
166
174
|
return /* @__PURE__ */ t(k, { children: /* @__PURE__ */ g(
|
|
167
|
-
|
|
175
|
+
D,
|
|
168
176
|
{
|
|
169
177
|
"data-slot": "sidebar-trigger",
|
|
170
178
|
variant: "ghost",
|
|
@@ -175,13 +183,18 @@ function ce({
|
|
|
175
183
|
},
|
|
176
184
|
...i,
|
|
177
185
|
children: [
|
|
178
|
-
/* @__PURE__ */ t(
|
|
186
|
+
/* @__PURE__ */ t(
|
|
187
|
+
I,
|
|
188
|
+
{
|
|
189
|
+
className: `transition-transform ${b} size-6`
|
|
190
|
+
}
|
|
191
|
+
),
|
|
179
192
|
/* @__PURE__ */ t("span", { className: "sr-only", children: "Toggle Sidebar" })
|
|
180
193
|
]
|
|
181
194
|
}
|
|
182
195
|
) });
|
|
183
196
|
}
|
|
184
|
-
function
|
|
197
|
+
function le({ className: a, ...e }) {
|
|
185
198
|
const { toggleSidebar: i } = S();
|
|
186
199
|
return /* @__PURE__ */ t(
|
|
187
200
|
"button",
|
|
@@ -204,7 +217,7 @@ function ue({ className: a, ...e }) {
|
|
|
204
217
|
}
|
|
205
218
|
);
|
|
206
219
|
}
|
|
207
|
-
function
|
|
220
|
+
function ce({ className: a, ...e }) {
|
|
208
221
|
return /* @__PURE__ */ t(
|
|
209
222
|
"main",
|
|
210
223
|
{
|
|
@@ -218,12 +231,12 @@ function be({ className: a, ...e }) {
|
|
|
218
231
|
}
|
|
219
232
|
);
|
|
220
233
|
}
|
|
221
|
-
function
|
|
234
|
+
function ue({
|
|
222
235
|
className: a,
|
|
223
236
|
...e
|
|
224
237
|
}) {
|
|
225
238
|
return /* @__PURE__ */ t(
|
|
226
|
-
|
|
239
|
+
B,
|
|
227
240
|
{
|
|
228
241
|
"data-slot": "sidebar-input",
|
|
229
242
|
className: r("bg-background h-8 w-full shadow-none", a),
|
|
@@ -231,7 +244,7 @@ function fe({
|
|
|
231
244
|
}
|
|
232
245
|
);
|
|
233
246
|
}
|
|
234
|
-
function
|
|
247
|
+
function be({ className: a, ...e }) {
|
|
235
248
|
return /* @__PURE__ */ t(
|
|
236
249
|
"div",
|
|
237
250
|
{
|
|
@@ -241,7 +254,7 @@ function pe({ className: a, ...e }) {
|
|
|
241
254
|
}
|
|
242
255
|
);
|
|
243
256
|
}
|
|
244
|
-
function
|
|
257
|
+
function fe({ className: a, ...e }) {
|
|
245
258
|
return /* @__PURE__ */ t(
|
|
246
259
|
"div",
|
|
247
260
|
{
|
|
@@ -251,12 +264,12 @@ function ge({ className: a, ...e }) {
|
|
|
251
264
|
}
|
|
252
265
|
);
|
|
253
266
|
}
|
|
254
|
-
function
|
|
267
|
+
function pe({
|
|
255
268
|
className: a,
|
|
256
269
|
...e
|
|
257
270
|
}) {
|
|
258
271
|
return /* @__PURE__ */ t(
|
|
259
|
-
|
|
272
|
+
E,
|
|
260
273
|
{
|
|
261
274
|
"data-slot": "sidebar-separator",
|
|
262
275
|
className: r("bg-sidebar-border mx-2 w-auto", a),
|
|
@@ -264,7 +277,7 @@ function me({
|
|
|
264
277
|
}
|
|
265
278
|
);
|
|
266
279
|
}
|
|
267
|
-
function
|
|
280
|
+
function ge({ className: a, ...e }) {
|
|
268
281
|
return /* @__PURE__ */ t(
|
|
269
282
|
"div",
|
|
270
283
|
{
|
|
@@ -277,17 +290,20 @@ function he({ className: a, ...e }) {
|
|
|
277
290
|
}
|
|
278
291
|
);
|
|
279
292
|
}
|
|
280
|
-
function
|
|
293
|
+
function me({ className: a, ...e }) {
|
|
281
294
|
return /* @__PURE__ */ t(
|
|
282
295
|
"div",
|
|
283
296
|
{
|
|
284
297
|
"data-slot": "sidebar-group",
|
|
285
|
-
className: r(
|
|
298
|
+
className: r(
|
|
299
|
+
"relative flex w-full min-w-0 flex-col p-2",
|
|
300
|
+
a
|
|
301
|
+
),
|
|
286
302
|
...e
|
|
287
303
|
}
|
|
288
304
|
);
|
|
289
305
|
}
|
|
290
|
-
function
|
|
306
|
+
function he({
|
|
291
307
|
className: a,
|
|
292
308
|
asChild: e = !1,
|
|
293
309
|
...i
|
|
@@ -305,7 +321,7 @@ function xe({
|
|
|
305
321
|
}
|
|
306
322
|
);
|
|
307
323
|
}
|
|
308
|
-
function
|
|
324
|
+
function ve({
|
|
309
325
|
className: a,
|
|
310
326
|
asChild: e = !1,
|
|
311
327
|
...i
|
|
@@ -325,7 +341,7 @@ function we({
|
|
|
325
341
|
}
|
|
326
342
|
);
|
|
327
343
|
}
|
|
328
|
-
function
|
|
344
|
+
function xe({
|
|
329
345
|
className: a,
|
|
330
346
|
...e
|
|
331
347
|
}) {
|
|
@@ -338,7 +354,7 @@ function Se({
|
|
|
338
354
|
}
|
|
339
355
|
);
|
|
340
356
|
}
|
|
341
|
-
function
|
|
357
|
+
function we({ className: a, ...e }) {
|
|
342
358
|
return /* @__PURE__ */ t(
|
|
343
359
|
"ul",
|
|
344
360
|
{
|
|
@@ -348,7 +364,7 @@ function Ne({ className: a, ...e }) {
|
|
|
348
364
|
}
|
|
349
365
|
);
|
|
350
366
|
}
|
|
351
|
-
function
|
|
367
|
+
function Se({ className: a, ...e }) {
|
|
352
368
|
return /* @__PURE__ */ t(
|
|
353
369
|
"li",
|
|
354
370
|
{
|
|
@@ -358,7 +374,7 @@ function ye({ className: a, ...e }) {
|
|
|
358
374
|
}
|
|
359
375
|
);
|
|
360
376
|
}
|
|
361
|
-
const
|
|
377
|
+
const $ = _(
|
|
362
378
|
"peer/menu-button flex w-full items-center gap-2 overflow-hidden rounded p-2 text-left text-sm outline-hidden ring-sidebar-ring transition-[width,height,padding] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 group-has-data-[slot=sidebar-menu-action]/menu-item:pr-8 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[active=true]:bg-sidebar-accent data-[active=true]:font-medium data-[active=true]:text-sidebar-accent-foreground data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0",
|
|
363
379
|
{
|
|
364
380
|
variants: {
|
|
@@ -378,14 +394,14 @@ const X = z(
|
|
|
378
394
|
}
|
|
379
395
|
}
|
|
380
396
|
);
|
|
381
|
-
function
|
|
397
|
+
function Ne({
|
|
382
398
|
asChild: a = !1,
|
|
383
399
|
isActive: e = !1,
|
|
384
400
|
variant: i = "default",
|
|
385
401
|
size: o = "default",
|
|
386
402
|
tooltip: n,
|
|
387
403
|
className: d,
|
|
388
|
-
...
|
|
404
|
+
...b
|
|
389
405
|
}) {
|
|
390
406
|
const s = a ? h : "button", { isMobile: p, state: u } = S(), v = /* @__PURE__ */ t(
|
|
391
407
|
s,
|
|
@@ -393,16 +409,19 @@ function Ce({
|
|
|
393
409
|
"data-slot": "sidebar-menu-button",
|
|
394
410
|
"data-size": o,
|
|
395
411
|
"data-active": e,
|
|
396
|
-
className: r(
|
|
397
|
-
|
|
412
|
+
className: r(
|
|
413
|
+
$({ variant: i, size: o }),
|
|
414
|
+
d
|
|
415
|
+
),
|
|
416
|
+
...b
|
|
398
417
|
}
|
|
399
418
|
);
|
|
400
419
|
return n ? (typeof n == "string" && (n = {
|
|
401
420
|
children: n
|
|
402
|
-
}), /* @__PURE__ */ g(
|
|
403
|
-
/* @__PURE__ */ t(
|
|
421
|
+
}), /* @__PURE__ */ g(L, { children: [
|
|
422
|
+
/* @__PURE__ */ t(G, { asChild: !0, children: v }),
|
|
404
423
|
/* @__PURE__ */ t(
|
|
405
|
-
|
|
424
|
+
K,
|
|
406
425
|
{
|
|
407
426
|
side: "right",
|
|
408
427
|
align: "center",
|
|
@@ -412,7 +431,7 @@ function Ce({
|
|
|
412
431
|
)
|
|
413
432
|
] })) : v;
|
|
414
433
|
}
|
|
415
|
-
function
|
|
434
|
+
function ye({
|
|
416
435
|
className: a,
|
|
417
436
|
asChild: e = !1,
|
|
418
437
|
showOnHover: i = !1,
|
|
@@ -437,7 +456,7 @@ function _e({
|
|
|
437
456
|
}
|
|
438
457
|
);
|
|
439
458
|
}
|
|
440
|
-
function
|
|
459
|
+
function Ce({
|
|
441
460
|
className: a,
|
|
442
461
|
...e
|
|
443
462
|
}) {
|
|
@@ -458,7 +477,7 @@ function Me({
|
|
|
458
477
|
}
|
|
459
478
|
);
|
|
460
479
|
}
|
|
461
|
-
function
|
|
480
|
+
function Me({
|
|
462
481
|
className: a,
|
|
463
482
|
showIcon: e = !1,
|
|
464
483
|
...i
|
|
@@ -468,15 +487,13 @@ function ke({
|
|
|
468
487
|
"div",
|
|
469
488
|
{
|
|
470
489
|
"data-slot": "sidebar-menu-skeleton",
|
|
471
|
-
className: r(
|
|
490
|
+
className: r(
|
|
491
|
+
"flex h-8 items-center gap-2 rounded px-2",
|
|
492
|
+
a
|
|
493
|
+
),
|
|
472
494
|
...i,
|
|
473
495
|
children: [
|
|
474
|
-
e && /* @__PURE__ */ t(
|
|
475
|
-
y,
|
|
476
|
-
{
|
|
477
|
-
className: "size-4 rounded"
|
|
478
|
-
}
|
|
479
|
-
),
|
|
496
|
+
e && /* @__PURE__ */ t(y, { className: "size-4 rounded" }),
|
|
480
497
|
/* @__PURE__ */ t(
|
|
481
498
|
y,
|
|
482
499
|
{
|
|
@@ -504,7 +521,7 @@ function ze({ className: a, ...e }) {
|
|
|
504
521
|
}
|
|
505
522
|
);
|
|
506
523
|
}
|
|
507
|
-
function
|
|
524
|
+
function ke({
|
|
508
525
|
className: a,
|
|
509
526
|
...e
|
|
510
527
|
}) {
|
|
@@ -517,7 +534,7 @@ function Ie({
|
|
|
517
534
|
}
|
|
518
535
|
);
|
|
519
536
|
}
|
|
520
|
-
function
|
|
537
|
+
function _e({
|
|
521
538
|
asChild: a = !1,
|
|
522
539
|
size: e = "md",
|
|
523
540
|
isActive: i = !1,
|
|
@@ -543,29 +560,29 @@ function Ee({
|
|
|
543
560
|
);
|
|
544
561
|
}
|
|
545
562
|
export {
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
563
|
+
se as Sidebar,
|
|
564
|
+
ge as SidebarContent,
|
|
565
|
+
fe as SidebarFooter,
|
|
566
|
+
me as SidebarGroup,
|
|
567
|
+
ve as SidebarGroupAction,
|
|
568
|
+
xe as SidebarGroupContent,
|
|
569
|
+
he as SidebarGroupLabel,
|
|
570
|
+
be as SidebarHeader,
|
|
571
|
+
ue as SidebarInput,
|
|
572
|
+
ce as SidebarInset,
|
|
573
|
+
we as SidebarMenu,
|
|
574
|
+
ye as SidebarMenuAction,
|
|
575
|
+
Ce as SidebarMenuBadge,
|
|
576
|
+
Ne as SidebarMenuButton,
|
|
577
|
+
Se as SidebarMenuItem,
|
|
578
|
+
Me as SidebarMenuSkeleton,
|
|
562
579
|
ze as SidebarMenuSub,
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
580
|
+
_e as SidebarMenuSubButton,
|
|
581
|
+
ke as SidebarMenuSubItem,
|
|
582
|
+
ne as SidebarProvider,
|
|
583
|
+
le as SidebarRail,
|
|
584
|
+
pe as SidebarSeparator,
|
|
585
|
+
de as SidebarTrigger,
|
|
569
586
|
S as useSidebar
|
|
570
587
|
};
|
|
571
588
|
//# sourceMappingURL=Sidebar.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sidebar.js","sources":["../../src/components/Sidebar/Sidebar.tsx"],"sourcesContent":["\"use client\"\n\nimport { Slot } from \"@radix-ui/react-slot\"\nimport { cva, type VariantProps } from \"class-variance-authority\"\nimport { ChevronsLeft } from \"lucide-react\"\nimport * as React from \"react\"\n\nimport { Button } from \"../Button\"\nimport { Input } from \"../Input\"\nimport { Separator } from \"../Separator\"\nimport {\n\tSheet,\n\tSheetContent,\n\tSheetDescription,\n\tSheetHeader,\n\tSheetTitle,\n} from \"../Sheet\"\nimport { Skeleton } from \"../Skeleton\"\nimport {\n\tTooltip,\n\tTooltipContent,\n\tTooltipProvider,\n\tTooltipTrigger,\n} from \"../Tooltip\"\nimport { useIsMobile } from \"@/hooks/use-mobile\"\nimport { cn } from \"@/utils\"\n\nconst SIDEBAR_COOKIE_NAME = \"sidebar_state\"\nconst SIDEBAR_COOKIE_MAX_AGE = 60 * 60 * 24 * 7\nconst SIDEBAR_WIDTH = \"18rem\"\nconst SIDEBAR_WIDTH_MOBILE = \"18rem\"\nconst SIDEBAR_WIDTH_ICON = \"3rem\"\nconst SIDEBAR_KEYBOARD_SHORTCUT = \"b\"\n\ntype SidebarContextProps = {\n\tstate: \"expanded\" | \"collapsed\"\n\topen: boolean\n\tsetOpen: (open: boolean) => void\n\topenMobile: boolean\n\tsetOpenMobile: (open: boolean) => void\n\tisMobile: boolean\n\ttoggleSidebar: () => void\n}\n\nconst SidebarContext = React.createContext<SidebarContextProps | null>(null)\n\nfunction useSidebar() {\n\tconst context = React.useContext(SidebarContext)\n\tif (!context) {\n\t\tthrow new Error(\"useSidebar must be used within a SidebarProvider.\")\n\t}\n\n\treturn context\n}\n\nfunction SidebarProvider({\n\tdefaultOpen = true,\n\topen: openProp,\n\tonOpenChange: setOpenProp,\n\tclassName,\n\tstyle,\n\tchildren,\n\t...props\n}: React.ComponentProps<\"div\"> & {\n\tdefaultOpen?: boolean\n\topen?: boolean\n\tonOpenChange?: (open: boolean) => void\n}) {\n\tconst isMobile = useIsMobile()\n\tconst [openMobile, setOpenMobile] = React.useState(false)\n\n\t// This is the internal state of the sidebar.\n\t// We use openProp and setOpenProp for control from outside the component.\n\tconst [_open, _setOpen] = React.useState(defaultOpen)\n\tconst open = openProp ?? _open\n\tconst setOpen = React.useCallback(\n\t\t(value: boolean | ((value: boolean) => boolean)) => {\n\t\t\tconst openState = typeof value === \"function\" ? value(open) : value\n\t\t\tif (setOpenProp) {\n\t\t\t\tsetOpenProp(openState)\n\t\t\t} else {\n\t\t\t\t_setOpen(openState)\n\t\t\t}\n\n\t\t\t// This sets the cookie to keep the sidebar state.\n\t\t\tdocument.cookie = `${SIDEBAR_COOKIE_NAME}=${openState}; path=/; max-age=${SIDEBAR_COOKIE_MAX_AGE}`\n\t\t},\n\t\t[setOpenProp, open]\n\t)\n\n\t// Helper to toggle the sidebar.\n\tconst toggleSidebar = React.useCallback(() => {\n\t\treturn isMobile ? setOpenMobile((open) => !open) : setOpen((open) => !open)\n\t}, [isMobile, setOpen, setOpenMobile])\n\n\t// Adds a keyboard shortcut to toggle the sidebar.\n\tReact.useEffect(() => {\n\t\tconst handleKeyDown = (event: KeyboardEvent) => {\n\t\t\tif (\n\t\t\t\tevent.key === SIDEBAR_KEYBOARD_SHORTCUT &&\n\t\t\t\t(event.metaKey || event.ctrlKey)\n\t\t\t) {\n\t\t\t\tevent.preventDefault()\n\t\t\t\ttoggleSidebar()\n\t\t\t}\n\t\t}\n\n\t\twindow.addEventListener(\"keydown\", handleKeyDown)\n\t\treturn () => window.removeEventListener(\"keydown\", handleKeyDown)\n\t}, [toggleSidebar])\n\n\t// We add a state so that we can do data-state=\"expanded\" or \"collapsed\".\n\t// This makes it easier to style the sidebar with Tailwind classes.\n\tconst state = open ? \"expanded\" : \"collapsed\"\n\n\tconst contextValue = React.useMemo<SidebarContextProps>(\n\t\t() => ({\n\t\t\tstate,\n\t\t\topen,\n\t\t\tsetOpen,\n\t\t\tisMobile,\n\t\t\topenMobile,\n\t\t\tsetOpenMobile,\n\t\t\ttoggleSidebar,\n\t\t}),\n\t\t[state, open, setOpen, isMobile, openMobile, setOpenMobile, toggleSidebar]\n\t)\n\n\treturn (\n\t\t<SidebarContext.Provider value={contextValue}>\n\t\t\t<TooltipProvider delayDuration={0}>\n\t\t\t\t<div\n\t\t\t\t\tdata-slot=\"sidebar-wrapper\"\n\t\t\t\t\tstyle={\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"--sidebar-width\": SIDEBAR_WIDTH,\n\t\t\t\t\t\t\t\"--sidebar-width-icon\": SIDEBAR_WIDTH_ICON,\n\t\t\t\t\t\t\t...style,\n\t\t\t\t\t\t} as React.CSSProperties\n\t\t\t\t\t}\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\"group/sidebar-wrapper has-data-[variant=inset]:bg-sidebar flex w-full\",\n\t\t\t\t\t\tclassName\n\t\t\t\t\t)}\n\t\t\t\t\t{...props}\n\t\t\t\t>\n\t\t\t\t\t{children}\n\t\t\t\t</div>\n\t\t\t</TooltipProvider>\n\t\t</SidebarContext.Provider>\n\t)\n}\n\nfunction Sidebar({\n\tside = \"left\",\n\tvariant = \"sidebar\",\n\tcollapsible = \"offcanvas\",\n\tclassName,\n\tchildren,\n\t...props\n}: React.ComponentProps<\"div\"> & {\n\tside?: \"left\" | \"right\"\n\tvariant?: \"sidebar\" | \"floating\" | \"inset\"\n\tcollapsible?: \"offcanvas\" | \"icon\" | \"none\"\n}) {\n\tconst { isMobile, state, openMobile, setOpenMobile } = useSidebar()\n\n\tif (collapsible === \"none\") {\n\t\treturn (\n\t\t\t<div\n\t\t\t\tdata-slot=\"sidebar\"\n\t\t\t\tclassName={cn(\n\t\t\t\t\t\"sidebar flex w-(--sidebar-width) flex-col\",\n\t\t\t\t\tclassName\n\t\t\t\t)}\n\t\t\t\t{...props}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</div>\n\t\t)\n\t}\n\n\tif (isMobile) {\n\t\treturn (\n\t\t\t<Sheet open={openMobile} onOpenChange={setOpenMobile} {...props}>\n\t\t\t\t<SheetContent\n\t\t\t\t\tdata-slot=\"sidebar\"\n\t\t\t\t\tdata-mobile=\"true\"\n\t\t\t\t\tclassName=\"sidebar w-(--sidebar-width) p-0 [&>button]:hidden\"\n\t\t\t\t\tstyle={\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"--sidebar-width\": SIDEBAR_WIDTH_MOBILE,\n\t\t\t\t\t\t} as React.CSSProperties\n\t\t\t\t\t}\n\t\t\t\t\tside={side}\n\t\t\t\t>\n\t\t\t\t\t<SheetHeader className=\"sr-only\">\n\t\t\t\t\t\t<SheetTitle>Sidebar</SheetTitle>\n\t\t\t\t\t\t<SheetDescription>Displays the mobile sidebar.</SheetDescription>\n\t\t\t\t\t</SheetHeader>\n\t\t\t\t\t<div className=\"flex w-full flex-col\">\n\t\t\t\t\t\t{children}\n\t\t\t\t\t</div>\n\t\t\t\t</SheetContent>\n\t\t\t</Sheet>\n\t\t)\n\t}\n\n\treturn (\n\t\t<div\n\t\t\tclassName=\"group peer text-sidebar-foreground hidden md:block\"\n\t\t\tdata-state={state}\n\t\t\tdata-collapsible={state === \"collapsed\" ? collapsible : \"\"}\n\t\t\tdata-variant={variant}\n\t\t\tdata-side={side}\n\t\t\tdata-slot=\"sidebar\"\n\t\t>\n\t\t\t{/* This is what handles the sidebar gap on desktop */}\n\t\t\t<div\n\t\t\t\tdata-slot=\"sidebar-gap\"\n\t\t\t\tclassName={cn(\n\t\t\t\t\t\"relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear\",\n\t\t\t\t\t\"group-data-[collapsible=offcanvas]:w-0\",\n\t\t\t\t\t\"group-data-[side=right]:rotate-180\",\n\t\t\t\t\t\"group-data-[state=collapsed]:mr-0 mr-6\",\n\t\t\t\t\tvariant === \"floating\" || variant === \"inset\"\n\t\t\t\t\t\t? \"group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]\"\n\t\t\t\t\t\t: \"group-data-[collapsible=icon]:w-(--sidebar-width-icon)\"\n\t\t\t\t)}\n\t\t\t/>\n\t\t\t<div\n\t\t\t\tdata-slot=\"sidebar-container\"\n\t\t\t\tclassName={cn(\n\t\t\t\t\t\"fixed z-10 hidden w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear md:flex\",\n\t\t\t\t\tside === \"left\"\n\t\t\t\t\t\t? \"group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]\"\n\t\t\t\t\t\t: \"group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]\",\n\t\t\t\t\t// Adjust the padding for floating and inset variants.\n\t\t\t\t\tvariant === \"floating\" || variant === \"inset\"\n\t\t\t\t\t\t? \"p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4))+2px)]\"\n\t\t\t\t\t\t: \"group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l\",\n\t\t\t\t\tclassName\n\t\t\t\t)}\n\t\t\t\t{...props}\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\tdata-slot=\"sidebar-inner\"\n\t\t\t\t\tclassName=\"sidebar group-data-[variant=floating]:border-sidebar-border flex w-full flex-col group-data-[variant=floating]:rounded group-data-[variant=floating]:border group-data-[variant=floating]:shadow-sm flex-1\"\n\t\t\t\t>\n\t\t\t\t\t{children}\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t)\n}\n\nfunction SidebarTrigger({\n\tclassName,\n\tonClick,\n\t...props\n}: React.ComponentProps<typeof Button>) {\n\tconst { isMobile, open, toggleSidebar } = useSidebar();\n\tconst rotationStyle = isMobile || !open ? 'rotate-180' : '';\n\n\treturn (\n\t\t<>\n\t\t\t<Button\n\t\t\t\tdata-slot=\"sidebar-trigger\"\n\t\t\t\tvariant=\"ghost\"\n\t\t\t\tsize=\"icon\"\n\t\t\t\tclassName={cn(\"rounded-full\", className)}\n\t\t\t\tonClick={(event) => {\n\t\t\t\t\tonClick?.(event)\n\t\t\t\t\ttoggleSidebar()\n\t\t\t\t}}\n\t\t\t\t{...props}\n\t\t\t>\n\t\t\t\t<ChevronsLeft className={`transition-transform ${rotationStyle} size-6`} />\n\t\t\t\t<span className=\"sr-only\">Toggle Sidebar</span>\n\t\t\t</Button>\n\t\t</>\n\t)\n}\n\nfunction SidebarRail({ className, ...props }: React.ComponentProps<\"button\">) {\n\tconst { toggleSidebar } = useSidebar()\n\n\treturn (\n\t\t<button\n\t\t\tdata-slot=\"sidebar-rail\"\n\t\t\taria-label=\"Toggle Sidebar\"\n\t\t\ttabIndex={-1}\n\t\t\tonClick={toggleSidebar}\n\t\t\ttitle=\"Toggle Sidebar\"\n\t\t\tclassName={cn(\n\t\t\t\t\"hover:after:bg-sidebar-border absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 transition-all ease-linear group-data-[side=left]:-right-4 group-data-[side=right]:left-0 after:absolute after:inset-y-0 after:left-1/2 after:w-[2px] sm:flex\",\n\t\t\t\t\"in-data-[side=left]:cursor-w-resize in-data-[side=right]:cursor-e-resize\",\n\t\t\t\t\"[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize\",\n\t\t\t\t\"hover:group-data-[collapsible=offcanvas]:bg-sidebar group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full\",\n\t\t\t\t\"[[data-side=left][data-collapsible=offcanvas]_&]:-right-2\",\n\t\t\t\t\"[[data-side=right][data-collapsible=offcanvas]_&]:-left-2\",\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nfunction SidebarInset({ className, ...props }: React.ComponentProps<\"main\">) {\n\treturn (\n\t\t<main\n\t\t\tdata-slot=\"sidebar-inset\"\n\t\t\tclassName={cn(\n\t\t\t\t\"bg-background relative flex w-full flex-1 flex-col\",\n\t\t\t\t\"md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded md:peer-data-[variant=inset]:shadow-sm md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ml-2\",\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nfunction SidebarInput({\n\tclassName,\n\t...props\n}: React.ComponentProps<typeof Input>) {\n\treturn (\n\t\t<Input\n\t\t\tdata-slot=\"sidebar-input\"\n\t\t\tclassName={cn(\"bg-background h-8 w-full shadow-none\", className)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nfunction SidebarHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n\treturn (\n\t\t<div\n\t\t\tdata-slot=\"sidebar-header\"\n\t\t\tclassName={cn(\"flex flex-col gap-2 p-2\", className)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nfunction SidebarFooter({ className, ...props }: React.ComponentProps<\"div\">) {\n\treturn (\n\t\t<div\n\t\t\tdata-slot=\"sidebar-footer\"\n\t\t\tclassName={cn(\"flex flex-col gap-2 p-2\", className)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nfunction SidebarSeparator({\n\tclassName,\n\t...props\n}: React.ComponentProps<typeof Separator>) {\n\treturn (\n\t\t<Separator\n\t\t\tdata-slot=\"sidebar-separator\"\n\t\t\tclassName={cn(\"bg-sidebar-border mx-2 w-auto\", className)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nfunction SidebarContent({ className, ...props }: React.ComponentProps<\"div\">) {\n\treturn (\n\t\t<div\n\t\t\tdata-slot=\"sidebar-content\"\n\t\t\tclassName={cn(\n\t\t\t\t\"flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden\",\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nfunction SidebarGroup({ className, ...props }: React.ComponentProps<\"div\">) {\n\treturn (\n\t\t<div\n\t\t\tdata-slot=\"sidebar-group\"\n\t\t\tclassName={cn(\"relative flex w-full min-w-0 flex-col p-2\", className)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nfunction SidebarGroupLabel({\n\tclassName,\n\tasChild = false,\n\t...props\n}: React.ComponentProps<\"div\"> & { asChild?: boolean }) {\n\tconst Comp = asChild ? Slot : \"div\"\n\n\treturn (\n\t\t<Comp\n\t\t\tdata-slot=\"sidebar-group-label\"\n\t\t\tclassName={cn(\n\t\t\t\t\"sidebar-text outline-hidden transition-[margin,opacity] duration-200 ease-linear focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0\",\n\t\t\t\t\"group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0\",\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nfunction SidebarGroupAction({\n\tclassName,\n\tasChild = false,\n\t...props\n}: React.ComponentProps<\"button\"> & { asChild?: boolean }) {\n\tconst Comp = asChild ? Slot : \"button\"\n\n\treturn (\n\t\t<Comp\n\t\t\tdata-slot=\"sidebar-group-action\"\n\t\t\tclassName={cn(\n\t\t\t\t\"text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground absolute top-3.5 right-3 flex aspect-square w-5 items-center justify-center rounded p-0 outline-hidden transition-transform focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0\",\n\t\t\t\t// Increases the hit area of the button on mobile.\n\t\t\t\t\"after:absolute after:-inset-2 md:after:hidden\",\n\t\t\t\t\"group-data-[collapsible=icon]:hidden\",\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nfunction SidebarGroupContent({\n\tclassName,\n\t...props\n}: React.ComponentProps<\"div\">) {\n\treturn (\n\t\t<div\n\t\t\tdata-slot=\"sidebar-group-content\"\n\t\t\tclassName={cn(\"w-full text-sm\", className)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nfunction SidebarMenu({ className, ...props }: React.ComponentProps<\"ul\">) {\n\treturn (\n\t\t<ul\n\t\t\tdata-slot=\"sidebar-menu\"\n\t\t\tclassName={cn(\"flex w-full min-w-0 flex-col gap-1\", className)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nfunction SidebarMenuItem({ className, ...props }: React.ComponentProps<\"li\">) {\n\treturn (\n\t\t<li\n\t\t\tdata-slot=\"sidebar-menu-item\"\n\t\t\tclassName={cn(\"group/menu-item relative\", className)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nconst sidebarMenuButtonVariants = cva(\n\t\"peer/menu-button flex w-full items-center gap-2 overflow-hidden rounded p-2 text-left text-sm outline-hidden ring-sidebar-ring transition-[width,height,padding] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 group-has-data-[slot=sidebar-menu-action]/menu-item:pr-8 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[active=true]:bg-sidebar-accent data-[active=true]:font-medium data-[active=true]:text-sidebar-accent-foreground data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0\",\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\tdefault: \"hover:bg-sidebar-accent hover:text-sidebar-accent-foreground\",\n\t\t\t\toutline:\n\t\t\t\t\t\"bg-background shadow-[0_0_0_1px_hsl(var(--sidebar-border))] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_hsl(var(--sidebar-accent))]\",\n\t\t\t},\n\t\t\tsize: {\n\t\t\t\tdefault: \"h-8 text-sm\",\n\t\t\t\tsm: \"h-7 text-xs\",\n\t\t\t\tlg: \"h-12 text-sm group-data-[collapsible=icon]:p-0!\",\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tvariant: \"default\",\n\t\t\tsize: \"default\",\n\t\t},\n\t}\n)\n\nfunction SidebarMenuButton({\n\tasChild = false,\n\tisActive = false,\n\tvariant = \"default\",\n\tsize = \"default\",\n\ttooltip,\n\tclassName,\n\t...props\n}: React.ComponentProps<\"button\"> & {\n\tasChild?: boolean\n\tisActive?: boolean\n\ttooltip?: string | React.ComponentProps<typeof TooltipContent>\n} & VariantProps<typeof sidebarMenuButtonVariants>) {\n\tconst Comp = asChild ? Slot : \"button\"\n\tconst { isMobile, state } = useSidebar()\n\n\tconst button = (\n\t\t<Comp\n\t\t\tdata-slot=\"sidebar-menu-button\"\n\t\t\tdata-size={size}\n\t\t\tdata-active={isActive}\n\t\t\tclassName={cn(sidebarMenuButtonVariants({ variant, size }), className)}\n\t\t\t{...props}\n\t\t/>\n\t)\n\n\tif (!tooltip) {\n\t\treturn button\n\t}\n\n\tif (typeof tooltip === \"string\") {\n\t\ttooltip = {\n\t\t\tchildren: tooltip,\n\t\t}\n\t}\n\n\treturn (\n\t\t<Tooltip>\n\t\t\t<TooltipTrigger asChild>{button}</TooltipTrigger>\n\t\t\t<TooltipContent\n\t\t\t\tside=\"right\"\n\t\t\t\talign=\"center\"\n\t\t\t\thidden={state !== \"collapsed\" || isMobile}\n\t\t\t\t{...tooltip}\n\t\t\t/>\n\t\t</Tooltip>\n\t)\n}\n\nfunction SidebarMenuAction({\n\tclassName,\n\tasChild = false,\n\tshowOnHover = false,\n\t...props\n}: React.ComponentProps<\"button\"> & {\n\tasChild?: boolean\n\tshowOnHover?: boolean\n}) {\n\tconst Comp = asChild ? Slot : \"button\"\n\n\treturn (\n\t\t<Comp\n\t\t\tdata-slot=\"sidebar-menu-action\"\n\t\t\tclassName={cn(\n\t\t\t\t\"text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground peer-hover/menu-button:text-sidebar-accent-foreground absolute top-1.5 right-1 flex aspect-square w-5 items-center justify-center rounded p-0 outline-hidden transition-transform focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0\",\n\t\t\t\t// Increases the hit area of the button on mobile.\n\t\t\t\t\"after:absolute after:-inset-2 md:after:hidden\",\n\t\t\t\t\"peer-data-[size=sm]/menu-button:top-1\",\n\t\t\t\t\"peer-data-[size=default]/menu-button:top-1.5\",\n\t\t\t\t\"peer-data-[size=lg]/menu-button:top-2.5\",\n\t\t\t\t\"group-data-[collapsible=icon]:hidden\",\n\t\t\t\tshowOnHover &&\n\t\t\t\t\"peer-data-[active=true]/menu-button:text-sidebar-accent-foreground group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 data-[state=open]:opacity-100 md:opacity-0\",\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nfunction SidebarMenuBadge({\n\tclassName,\n\t...props\n}: React.ComponentProps<\"div\">) {\n\treturn (\n\t\t<div\n\t\t\tdata-slot=\"sidebar-menu-badge\"\n\t\t\tclassName={cn(\n\t\t\t\t\"text-sidebar-foreground pointer-events-none absolute right-1 flex h-5 min-w-5 items-center justify-center rounded px-1 text-xs font-medium tabular-nums select-none\",\n\t\t\t\t\"peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[active=true]/menu-button:text-sidebar-accent-foreground\",\n\t\t\t\t\"peer-data-[size=sm]/menu-button:top-1\",\n\t\t\t\t\"peer-data-[size=default]/menu-button:top-1.5\",\n\t\t\t\t\"peer-data-[size=lg]/menu-button:top-2.5\",\n\t\t\t\t\"group-data-[collapsible=icon]:hidden\",\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nfunction SidebarMenuSkeleton({\n\tclassName,\n\tshowIcon = false,\n\t...props\n}: React.ComponentProps<\"div\"> & {\n\tshowIcon?: boolean\n}) {\n\t// Random width between 50 to 90%.\n\tconst width = React.useMemo(() => {\n\t\treturn `${Math.floor(Math.random() * 40) + 50}%`\n\t}, [])\n\n\treturn (\n\t\t<div\n\t\t\tdata-slot=\"sidebar-menu-skeleton\"\n\t\t\tclassName={cn(\"flex h-8 items-center gap-2 rounded px-2\", className)}\n\t\t\t{...props}\n\t\t>\n\t\t\t{showIcon && (\n\t\t\t\t<Skeleton\n\t\t\t\t\tclassName=\"size-4 rounded\"\n\t\t\t\t/>\n\t\t\t)}\n\t\t\t<Skeleton\n\t\t\t\tclassName=\"h-4 max-w-(--skeleton-width) flex-1\"\n\t\t\t\tstyle={\n\t\t\t\t\t{\n\t\t\t\t\t\t\"--skeleton-width\": width,\n\t\t\t\t\t} as React.CSSProperties\n\t\t\t\t}\n\t\t\t/>\n\t\t</div>\n\t)\n}\n\nfunction SidebarMenuSub({ className, ...props }: React.ComponentProps<\"ul\">) {\n\treturn (\n\t\t<ul\n\t\t\tdata-slot=\"sidebar-menu-sub\"\n\t\t\tclassName={cn(\n\t\t\t\t\"border-sidebar-border mx-3.5 flex min-w-0 translate-x-px flex-col gap-1 border-l px-2.5 py-0.5\",\n\t\t\t\t\"group-data-[collapsible=icon]:hidden\",\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nfunction SidebarMenuSubItem({\n\tclassName,\n\t...props\n}: React.ComponentProps<\"li\">) {\n\treturn (\n\t\t<li\n\t\t\tdata-slot=\"sidebar-menu-sub-item\"\n\t\t\tclassName={cn(\"group/menu-sub-item relative\", className)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nfunction SidebarMenuSubButton({\n\tasChild = false,\n\tsize = \"md\",\n\tisActive = false,\n\tclassName,\n\t...props\n}: React.ComponentProps<\"a\"> & {\n\tasChild?: boolean\n\tsize?: \"sm\" | \"md\"\n\tisActive?: boolean\n}) {\n\tconst Comp = asChild ? Slot : \"a\"\n\n\treturn (\n\t\t<Comp\n\t\t\tdata-slot=\"sidebar-menu-sub-button\"\n\t\t\tdata-size={size}\n\t\t\tdata-active={isActive}\n\t\t\tclassName={cn(\n\t\t\t\t\"text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground active:bg-sidebar-accent active:text-sidebar-accent-foreground [&>svg]:text-sidebar-accent-foreground flex h-7 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded px-2 outline-hidden focus-visible:ring-2 disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0\",\n\t\t\t\t\"data-[active=true]:bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground\",\n\t\t\t\tsize === \"sm\" && \"text-xs\",\n\t\t\t\tsize === \"md\" && \"text-sm\",\n\t\t\t\t\"group-data-[collapsible=icon]:hidden\",\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nexport {\n\tSidebar,\n\tSidebarContent,\n\tSidebarFooter,\n\tSidebarGroup,\n\tSidebarGroupAction,\n\tSidebarGroupContent,\n\tSidebarGroupLabel,\n\tSidebarHeader,\n\tSidebarInput,\n\tSidebarInset,\n\tSidebarMenu,\n\tSidebarMenuAction,\n\tSidebarMenuBadge,\n\tSidebarMenuButton,\n\tSidebarMenuItem,\n\tSidebarMenuSkeleton,\n\tSidebarMenuSub,\n\tSidebarMenuSubButton,\n\tSidebarMenuSubItem,\n\tSidebarProvider,\n\tSidebarRail,\n\tSidebarSeparator,\n\tSidebarTrigger,\n\tuseSidebar\n}\n\n"],"names":["SIDEBAR_COOKIE_NAME","SIDEBAR_COOKIE_MAX_AGE","SIDEBAR_WIDTH","SIDEBAR_WIDTH_MOBILE","SIDEBAR_WIDTH_ICON","SIDEBAR_KEYBOARD_SHORTCUT","SidebarContext","React","useSidebar","context","SidebarProvider","defaultOpen","openProp","setOpenProp","className","style","children","props","isMobile","useIsMobile","openMobile","setOpenMobile","_open","_setOpen","open","setOpen","value","openState","toggleSidebar","handleKeyDown","event","state","contextValue","jsx","TooltipProvider","cn","Sidebar","side","variant","collapsible","Sheet","jsxs","SheetContent","SheetHeader","SheetTitle","SheetDescription","SidebarTrigger","onClick","rotationStyle","Fragment","Button","ChevronsLeft","SidebarRail","SidebarInset","SidebarInput","Input","SidebarHeader","SidebarFooter","SidebarSeparator","Separator","SidebarContent","SidebarGroup","SidebarGroupLabel","asChild","Slot","SidebarGroupAction","SidebarGroupContent","SidebarMenu","SidebarMenuItem","sidebarMenuButtonVariants","cva","SidebarMenuButton","isActive","size","tooltip","Comp","button","Tooltip","TooltipTrigger","TooltipContent","SidebarMenuAction","showOnHover","SidebarMenuBadge","SidebarMenuSkeleton","showIcon","width","Skeleton","SidebarMenuSub","SidebarMenuSubItem","SidebarMenuSubButton"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Sidebar.js","sources":["../../src/components/Sidebar/Sidebar.tsx"],"sourcesContent":["'use client'\n\nimport { Slot } from '@radix-ui/react-slot'\nimport { cva, type VariantProps } from 'class-variance-authority'\nimport { ChevronsLeft } from 'lucide-react'\nimport * as React from 'react'\n\nimport { useIsMobile } from '@/hooks/use-mobile'\nimport { cn } from '@/utils'\nimport { Button } from '../Button'\nimport { Input } from '../Input'\nimport { Separator } from '../Separator'\nimport {\n\tSheet,\n\tSheetContent,\n\tSheetDescription,\n\tSheetHeader,\n\tSheetTitle,\n} from '../Sheet'\nimport { Skeleton } from '../Skeleton'\nimport {\n\tTooltip,\n\tTooltipContent,\n\tTooltipProvider,\n\tTooltipTrigger,\n} from '../Tooltip'\n\n// const SIDEBAR_COOKIE_NAME = 'sidebar_state'\n// const SIDEBAR_COOKIE_MAX_AGE = 60 * 60 * 24 * 7\nconst SIDEBAR_WIDTH = '18rem'\nconst SIDEBAR_WIDTH_MOBILE = '18rem'\nconst SIDEBAR_WIDTH_ICON = '3rem'\nconst SIDEBAR_KEYBOARD_SHORTCUT = 'b'\n\ntype SidebarContextProps = {\n\tstate: 'expanded' | 'collapsed'\n\topen: boolean\n\tsetOpen: (open: boolean) => void\n\topenMobile: boolean\n\tsetOpenMobile: (open: boolean) => void\n\tisMobile: boolean\n\ttoggleSidebar: () => void\n}\n\nconst SidebarContext = React.createContext<SidebarContextProps | null>(null)\n\nfunction useSidebar() {\n\tconst context = React.useContext(SidebarContext)\n\tif (!context) {\n\t\tthrow new Error('useSidebar must be used within a SidebarProvider.')\n\t}\n\n\treturn context\n}\n\nfunction SidebarProvider({\n\tdefaultOpen = true,\n\topen: openProp,\n\tonOpenChange: setOpenProp,\n\tclassName,\n\tstyle,\n\tchildren,\n\t...props\n}: React.ComponentProps<'div'> & {\n\tdefaultOpen?: boolean\n\topen?: boolean\n\tonOpenChange?: (open: boolean) => void\n}) {\n\tconst isMobile = useIsMobile()\n\tconst [openMobile, setOpenMobile] = React.useState(false)\n\n\t// This is the internal state of the sidebar.\n\t// We use openProp and setOpenProp for control from outside the component.\n\tconst [_open, _setOpen] = React.useState(defaultOpen)\n\tconst open = openProp ?? _open\n\tconst setOpen = React.useCallback(\n\t\t(value: boolean | ((value: boolean) => boolean)) => {\n\t\t\tconst openState = typeof value === 'function' ? value(open) : value\n\t\t\tif (setOpenProp) {\n\t\t\t\tsetOpenProp(openState)\n\t\t\t} else {\n\t\t\t\t_setOpen(openState)\n\t\t\t}\n\n\t\t\t// This sets the cookie to keep the sidebar state.\n\t\t\t// document.cookie = `${SIDEBAR_COOKIE_NAME}=${openState}; path=/; max-age=${SIDEBAR_COOKIE_MAX_AGE}`\n\t\t},\n\t\t[setOpenProp, open],\n\t)\n\n\t// Helper to toggle the sidebar.\n\tconst toggleSidebar = React.useCallback(() => {\n\t\treturn isMobile\n\t\t\t? setOpenMobile((open) => !open)\n\t\t\t: setOpen((open) => !open)\n\t}, [isMobile, setOpen, setOpenMobile])\n\n\t// Adds a keyboard shortcut to toggle the sidebar.\n\tReact.useEffect(() => {\n\t\tconst handleKeyDown = (event: KeyboardEvent) => {\n\t\t\tif (\n\t\t\t\tevent.key === SIDEBAR_KEYBOARD_SHORTCUT &&\n\t\t\t\t(event.metaKey || event.ctrlKey)\n\t\t\t) {\n\t\t\t\tevent.preventDefault()\n\t\t\t\ttoggleSidebar()\n\t\t\t}\n\t\t}\n\n\t\twindow.addEventListener('keydown', handleKeyDown)\n\t\treturn () => window.removeEventListener('keydown', handleKeyDown)\n\t}, [toggleSidebar])\n\n\t// We add a state so that we can do data-state=\"expanded\" or \"collapsed\".\n\t// This makes it easier to style the sidebar with Tailwind classes.\n\tconst state = open ? 'expanded' : 'collapsed'\n\n\tconst contextValue = React.useMemo<SidebarContextProps>(\n\t\t() => ({\n\t\t\tstate,\n\t\t\topen,\n\t\t\tsetOpen,\n\t\t\tisMobile,\n\t\t\topenMobile,\n\t\t\tsetOpenMobile,\n\t\t\ttoggleSidebar,\n\t\t}),\n\t\t[\n\t\t\tstate,\n\t\t\topen,\n\t\t\tsetOpen,\n\t\t\tisMobile,\n\t\t\topenMobile,\n\t\t\tsetOpenMobile,\n\t\t\ttoggleSidebar,\n\t\t],\n\t)\n\n\treturn (\n\t\t<SidebarContext.Provider value={contextValue}>\n\t\t\t<TooltipProvider delayDuration={0}>\n\t\t\t\t<div\n\t\t\t\t\tdata-slot=\"sidebar-wrapper\"\n\t\t\t\t\tstyle={\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t'--sidebar-width': SIDEBAR_WIDTH,\n\t\t\t\t\t\t\t'--sidebar-width-icon': SIDEBAR_WIDTH_ICON,\n\t\t\t\t\t\t\t...style,\n\t\t\t\t\t\t} as React.CSSProperties\n\t\t\t\t\t}\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t'group/sidebar-wrapper has-data-[variant=inset]:bg-sidebar flex w-full',\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t)}\n\t\t\t\t\t{...props}\n\t\t\t\t>\n\t\t\t\t\t{children}\n\t\t\t\t</div>\n\t\t\t</TooltipProvider>\n\t\t</SidebarContext.Provider>\n\t)\n}\n\nfunction Sidebar({\n\tside = 'left',\n\tvariant = 'sidebar',\n\tcollapsible = 'offcanvas',\n\tclassName,\n\tchildren,\n\t...props\n}: React.ComponentProps<'div'> & {\n\tside?: 'left' | 'right'\n\tvariant?: 'sidebar' | 'floating' | 'inset'\n\tcollapsible?: 'offcanvas' | 'icon' | 'none'\n}) {\n\tconst { isMobile, state, openMobile, setOpenMobile } = useSidebar()\n\n\tif (collapsible === 'none') {\n\t\treturn (\n\t\t\t<div\n\t\t\t\tdata-slot=\"sidebar\"\n\t\t\t\tclassName={cn(\n\t\t\t\t\t'sidebar flex w-(--sidebar-width) flex-col',\n\t\t\t\t\tclassName,\n\t\t\t\t)}\n\t\t\t\t{...props}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</div>\n\t\t)\n\t}\n\n\tif (isMobile) {\n\t\treturn (\n\t\t\t<Sheet open={openMobile} onOpenChange={setOpenMobile} {...props}>\n\t\t\t\t<SheetContent\n\t\t\t\t\tdata-slot=\"sidebar\"\n\t\t\t\t\tdata-mobile=\"true\"\n\t\t\t\t\tclassName=\"sidebar w-(--sidebar-width) p-0 [&>button]:hidden\"\n\t\t\t\t\tstyle={\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t'--sidebar-width': SIDEBAR_WIDTH_MOBILE,\n\t\t\t\t\t\t} as React.CSSProperties\n\t\t\t\t\t}\n\t\t\t\t\tside={side}\n\t\t\t\t>\n\t\t\t\t\t<SheetHeader className=\"sr-only\">\n\t\t\t\t\t\t<SheetTitle>Sidebar</SheetTitle>\n\t\t\t\t\t\t<SheetDescription>\n\t\t\t\t\t\t\tDisplays the mobile sidebar.\n\t\t\t\t\t\t</SheetDescription>\n\t\t\t\t\t</SheetHeader>\n\t\t\t\t\t<div className=\"flex w-full flex-col\">{children}</div>\n\t\t\t\t</SheetContent>\n\t\t\t</Sheet>\n\t\t)\n\t}\n\n\treturn (\n\t\t<div\n\t\t\tclassName=\"group peer text-sidebar-foreground hidden md:block\"\n\t\t\tdata-state={state}\n\t\t\tdata-collapsible={state === 'collapsed' ? collapsible : ''}\n\t\t\tdata-variant={variant}\n\t\t\tdata-side={side}\n\t\t\tdata-slot=\"sidebar\"\n\t\t>\n\t\t\t{/* This is what handles the sidebar gap on desktop */}\n\t\t\t<div\n\t\t\t\tdata-slot=\"sidebar-gap\"\n\t\t\t\tclassName={cn(\n\t\t\t\t\t'relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear',\n\t\t\t\t\t'group-data-[collapsible=offcanvas]:w-0',\n\t\t\t\t\t'group-data-[side=right]:rotate-180',\n\t\t\t\t\t'group-data-[state=collapsed]:mr-0 mr-6',\n\t\t\t\t\tvariant === 'floating' || variant === 'inset'\n\t\t\t\t\t\t? 'group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]'\n\t\t\t\t\t\t: 'group-data-[collapsible=icon]:w-(--sidebar-width-icon)',\n\t\t\t\t)}\n\t\t\t/>\n\t\t\t<div\n\t\t\t\tdata-slot=\"sidebar-container\"\n\t\t\t\tclassName={cn(\n\t\t\t\t\t'fixed z-10 hidden w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear md:flex',\n\t\t\t\t\tside === 'left'\n\t\t\t\t\t\t? 'group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]'\n\t\t\t\t\t\t: 'group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]',\n\t\t\t\t\t// Adjust the padding for floating and inset variants.\n\t\t\t\t\tvariant === 'floating' || variant === 'inset'\n\t\t\t\t\t\t? 'p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4))+2px)]'\n\t\t\t\t\t\t: 'group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l',\n\t\t\t\t\tclassName,\n\t\t\t\t)}\n\t\t\t\t{...props}\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\tdata-slot=\"sidebar-inner\"\n\t\t\t\t\tclassName=\"sidebar group-data-[variant=floating]:border-sidebar-border flex w-full flex-col group-data-[variant=floating]:rounded group-data-[variant=floating]:border group-data-[variant=floating]:shadow-sm flex-1\"\n\t\t\t\t>\n\t\t\t\t\t{children}\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t)\n}\n\nfunction SidebarTrigger({\n\tclassName,\n\tonClick,\n\t...props\n}: React.ComponentProps<typeof Button>) {\n\tconst { isMobile, open, toggleSidebar } = useSidebar()\n\tconst rotationStyle = isMobile || !open ? 'rotate-180' : ''\n\n\treturn (\n\t\t<>\n\t\t\t<Button\n\t\t\t\tdata-slot=\"sidebar-trigger\"\n\t\t\t\tvariant=\"ghost\"\n\t\t\t\tsize=\"icon\"\n\t\t\t\tclassName={cn('rounded-full', className)}\n\t\t\t\tonClick={(event) => {\n\t\t\t\t\tonClick?.(event)\n\t\t\t\t\ttoggleSidebar()\n\t\t\t\t}}\n\t\t\t\t{...props}\n\t\t\t>\n\t\t\t\t<ChevronsLeft\n\t\t\t\t\tclassName={`transition-transform ${rotationStyle} size-6`}\n\t\t\t\t/>\n\t\t\t\t<span className=\"sr-only\">Toggle Sidebar</span>\n\t\t\t</Button>\n\t\t</>\n\t)\n}\n\nfunction SidebarRail({ className, ...props }: React.ComponentProps<'button'>) {\n\tconst { toggleSidebar } = useSidebar()\n\n\treturn (\n\t\t<button\n\t\t\tdata-slot=\"sidebar-rail\"\n\t\t\taria-label=\"Toggle Sidebar\"\n\t\t\ttabIndex={-1}\n\t\t\tonClick={toggleSidebar}\n\t\t\ttitle=\"Toggle Sidebar\"\n\t\t\tclassName={cn(\n\t\t\t\t'hover:after:bg-sidebar-border absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 transition-all ease-linear group-data-[side=left]:-right-4 group-data-[side=right]:left-0 after:absolute after:inset-y-0 after:left-1/2 after:w-[2px] sm:flex',\n\t\t\t\t'in-data-[side=left]:cursor-w-resize in-data-[side=right]:cursor-e-resize',\n\t\t\t\t'[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize',\n\t\t\t\t'hover:group-data-[collapsible=offcanvas]:bg-sidebar group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full',\n\t\t\t\t'[[data-side=left][data-collapsible=offcanvas]_&]:-right-2',\n\t\t\t\t'[[data-side=right][data-collapsible=offcanvas]_&]:-left-2',\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nfunction SidebarInset({ className, ...props }: React.ComponentProps<'main'>) {\n\treturn (\n\t\t<main\n\t\t\tdata-slot=\"sidebar-inset\"\n\t\t\tclassName={cn(\n\t\t\t\t'bg-background relative flex w-full flex-1 flex-col',\n\t\t\t\t'md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded md:peer-data-[variant=inset]:shadow-sm md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ml-2',\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nfunction SidebarInput({\n\tclassName,\n\t...props\n}: React.ComponentProps<typeof Input>) {\n\treturn (\n\t\t<Input\n\t\t\tdata-slot=\"sidebar-input\"\n\t\t\tclassName={cn('bg-background h-8 w-full shadow-none', className)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nfunction SidebarHeader({ className, ...props }: React.ComponentProps<'div'>) {\n\treturn (\n\t\t<div\n\t\t\tdata-slot=\"sidebar-header\"\n\t\t\tclassName={cn('flex flex-col gap-2 p-2', className)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nfunction SidebarFooter({ className, ...props }: React.ComponentProps<'div'>) {\n\treturn (\n\t\t<div\n\t\t\tdata-slot=\"sidebar-footer\"\n\t\t\tclassName={cn('flex flex-col gap-2 p-2', className)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nfunction SidebarSeparator({\n\tclassName,\n\t...props\n}: React.ComponentProps<typeof Separator>) {\n\treturn (\n\t\t<Separator\n\t\t\tdata-slot=\"sidebar-separator\"\n\t\t\tclassName={cn('bg-sidebar-border mx-2 w-auto', className)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nfunction SidebarContent({ className, ...props }: React.ComponentProps<'div'>) {\n\treturn (\n\t\t<div\n\t\t\tdata-slot=\"sidebar-content\"\n\t\t\tclassName={cn(\n\t\t\t\t'flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden',\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nfunction SidebarGroup({ className, ...props }: React.ComponentProps<'div'>) {\n\treturn (\n\t\t<div\n\t\t\tdata-slot=\"sidebar-group\"\n\t\t\tclassName={cn(\n\t\t\t\t'relative flex w-full min-w-0 flex-col p-2',\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nfunction SidebarGroupLabel({\n\tclassName,\n\tasChild = false,\n\t...props\n}: React.ComponentProps<'div'> & { asChild?: boolean }) {\n\tconst Comp = asChild ? Slot : 'div'\n\n\treturn (\n\t\t<Comp\n\t\t\tdata-slot=\"sidebar-group-label\"\n\t\t\tclassName={cn(\n\t\t\t\t'sidebar-text outline-hidden transition-[margin,opacity] duration-200 ease-linear focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0',\n\t\t\t\t'group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0',\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nfunction SidebarGroupAction({\n\tclassName,\n\tasChild = false,\n\t...props\n}: React.ComponentProps<'button'> & { asChild?: boolean }) {\n\tconst Comp = asChild ? Slot : 'button'\n\n\treturn (\n\t\t<Comp\n\t\t\tdata-slot=\"sidebar-group-action\"\n\t\t\tclassName={cn(\n\t\t\t\t'text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground absolute top-3.5 right-3 flex aspect-square w-5 items-center justify-center rounded p-0 outline-hidden transition-transform focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0',\n\t\t\t\t// Increases the hit area of the button on mobile.\n\t\t\t\t'after:absolute after:-inset-2 md:after:hidden',\n\t\t\t\t'group-data-[collapsible=icon]:hidden',\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nfunction SidebarGroupContent({\n\tclassName,\n\t...props\n}: React.ComponentProps<'div'>) {\n\treturn (\n\t\t<div\n\t\t\tdata-slot=\"sidebar-group-content\"\n\t\t\tclassName={cn('w-full text-sm', className)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nfunction SidebarMenu({ className, ...props }: React.ComponentProps<'ul'>) {\n\treturn (\n\t\t<ul\n\t\t\tdata-slot=\"sidebar-menu\"\n\t\t\tclassName={cn('flex w-full min-w-0 flex-col gap-1', className)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nfunction SidebarMenuItem({ className, ...props }: React.ComponentProps<'li'>) {\n\treturn (\n\t\t<li\n\t\t\tdata-slot=\"sidebar-menu-item\"\n\t\t\tclassName={cn('group/menu-item relative', className)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nconst sidebarMenuButtonVariants = cva(\n\t'peer/menu-button flex w-full items-center gap-2 overflow-hidden rounded p-2 text-left text-sm outline-hidden ring-sidebar-ring transition-[width,height,padding] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 group-has-data-[slot=sidebar-menu-action]/menu-item:pr-8 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[active=true]:bg-sidebar-accent data-[active=true]:font-medium data-[active=true]:text-sidebar-accent-foreground data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0',\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\tdefault:\n\t\t\t\t\t'hover:bg-sidebar-accent hover:text-sidebar-accent-foreground',\n\t\t\t\toutline:\n\t\t\t\t\t'bg-background shadow-[0_0_0_1px_hsl(var(--sidebar-border))] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_hsl(var(--sidebar-accent))]',\n\t\t\t},\n\t\t\tsize: {\n\t\t\t\tdefault: 'h-8 text-sm',\n\t\t\t\tsm: 'h-7 text-xs',\n\t\t\t\tlg: 'h-12 text-sm group-data-[collapsible=icon]:p-0!',\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tvariant: 'default',\n\t\t\tsize: 'default',\n\t\t},\n\t},\n)\n\nfunction SidebarMenuButton({\n\tasChild = false,\n\tisActive = false,\n\tvariant = 'default',\n\tsize = 'default',\n\ttooltip,\n\tclassName,\n\t...props\n}: React.ComponentProps<'button'> & {\n\tasChild?: boolean\n\tisActive?: boolean\n\ttooltip?: string | React.ComponentProps<typeof TooltipContent>\n} & VariantProps<typeof sidebarMenuButtonVariants>) {\n\tconst Comp = asChild ? Slot : 'button'\n\tconst { isMobile, state } = useSidebar()\n\n\tconst button = (\n\t\t<Comp\n\t\t\tdata-slot=\"sidebar-menu-button\"\n\t\t\tdata-size={size}\n\t\t\tdata-active={isActive}\n\t\t\tclassName={cn(\n\t\t\t\tsidebarMenuButtonVariants({ variant, size }),\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t)\n\n\tif (!tooltip) {\n\t\treturn button\n\t}\n\n\tif (typeof tooltip === 'string') {\n\t\ttooltip = {\n\t\t\tchildren: tooltip,\n\t\t}\n\t}\n\n\treturn (\n\t\t<Tooltip>\n\t\t\t<TooltipTrigger asChild>{button}</TooltipTrigger>\n\t\t\t<TooltipContent\n\t\t\t\tside=\"right\"\n\t\t\t\talign=\"center\"\n\t\t\t\thidden={state !== 'collapsed' || isMobile}\n\t\t\t\t{...tooltip}\n\t\t\t/>\n\t\t</Tooltip>\n\t)\n}\n\nfunction SidebarMenuAction({\n\tclassName,\n\tasChild = false,\n\tshowOnHover = false,\n\t...props\n}: React.ComponentProps<'button'> & {\n\tasChild?: boolean\n\tshowOnHover?: boolean\n}) {\n\tconst Comp = asChild ? Slot : 'button'\n\n\treturn (\n\t\t<Comp\n\t\t\tdata-slot=\"sidebar-menu-action\"\n\t\t\tclassName={cn(\n\t\t\t\t'text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground peer-hover/menu-button:text-sidebar-accent-foreground absolute top-1.5 right-1 flex aspect-square w-5 items-center justify-center rounded p-0 outline-hidden transition-transform focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0',\n\t\t\t\t// Increases the hit area of the button on mobile.\n\t\t\t\t'after:absolute after:-inset-2 md:after:hidden',\n\t\t\t\t'peer-data-[size=sm]/menu-button:top-1',\n\t\t\t\t'peer-data-[size=default]/menu-button:top-1.5',\n\t\t\t\t'peer-data-[size=lg]/menu-button:top-2.5',\n\t\t\t\t'group-data-[collapsible=icon]:hidden',\n\t\t\t\tshowOnHover &&\n\t\t\t\t\t'peer-data-[active=true]/menu-button:text-sidebar-accent-foreground group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 data-[state=open]:opacity-100 md:opacity-0',\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nfunction SidebarMenuBadge({\n\tclassName,\n\t...props\n}: React.ComponentProps<'div'>) {\n\treturn (\n\t\t<div\n\t\t\tdata-slot=\"sidebar-menu-badge\"\n\t\t\tclassName={cn(\n\t\t\t\t'text-sidebar-foreground pointer-events-none absolute right-1 flex h-5 min-w-5 items-center justify-center rounded px-1 text-xs font-medium tabular-nums select-none',\n\t\t\t\t'peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[active=true]/menu-button:text-sidebar-accent-foreground',\n\t\t\t\t'peer-data-[size=sm]/menu-button:top-1',\n\t\t\t\t'peer-data-[size=default]/menu-button:top-1.5',\n\t\t\t\t'peer-data-[size=lg]/menu-button:top-2.5',\n\t\t\t\t'group-data-[collapsible=icon]:hidden',\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nfunction SidebarMenuSkeleton({\n\tclassName,\n\tshowIcon = false,\n\t...props\n}: React.ComponentProps<'div'> & {\n\tshowIcon?: boolean\n}) {\n\t// Random width between 50 to 90%.\n\tconst width = React.useMemo(() => {\n\t\treturn `${Math.floor(Math.random() * 40) + 50}%`\n\t}, [])\n\n\treturn (\n\t\t<div\n\t\t\tdata-slot=\"sidebar-menu-skeleton\"\n\t\t\tclassName={cn(\n\t\t\t\t'flex h-8 items-center gap-2 rounded px-2',\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t{showIcon && <Skeleton className=\"size-4 rounded\" />}\n\t\t\t<Skeleton\n\t\t\t\tclassName=\"h-4 max-w-(--skeleton-width) flex-1\"\n\t\t\t\tstyle={\n\t\t\t\t\t{\n\t\t\t\t\t\t'--skeleton-width': width,\n\t\t\t\t\t} as React.CSSProperties\n\t\t\t\t}\n\t\t\t/>\n\t\t</div>\n\t)\n}\n\nfunction SidebarMenuSub({ className, ...props }: React.ComponentProps<'ul'>) {\n\treturn (\n\t\t<ul\n\t\t\tdata-slot=\"sidebar-menu-sub\"\n\t\t\tclassName={cn(\n\t\t\t\t'border-sidebar-border mx-3.5 flex min-w-0 translate-x-px flex-col gap-1 border-l px-2.5 py-0.5',\n\t\t\t\t'group-data-[collapsible=icon]:hidden',\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nfunction SidebarMenuSubItem({\n\tclassName,\n\t...props\n}: React.ComponentProps<'li'>) {\n\treturn (\n\t\t<li\n\t\t\tdata-slot=\"sidebar-menu-sub-item\"\n\t\t\tclassName={cn('group/menu-sub-item relative', className)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nfunction SidebarMenuSubButton({\n\tasChild = false,\n\tsize = 'md',\n\tisActive = false,\n\tclassName,\n\t...props\n}: React.ComponentProps<'a'> & {\n\tasChild?: boolean\n\tsize?: 'sm' | 'md'\n\tisActive?: boolean\n}) {\n\tconst Comp = asChild ? Slot : 'a'\n\n\treturn (\n\t\t<Comp\n\t\t\tdata-slot=\"sidebar-menu-sub-button\"\n\t\t\tdata-size={size}\n\t\t\tdata-active={isActive}\n\t\t\tclassName={cn(\n\t\t\t\t'text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground active:bg-sidebar-accent active:text-sidebar-accent-foreground [&>svg]:text-sidebar-accent-foreground flex h-7 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded px-2 outline-hidden focus-visible:ring-2 disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0',\n\t\t\t\t'data-[active=true]:bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground',\n\t\t\t\tsize === 'sm' && 'text-xs',\n\t\t\t\tsize === 'md' && 'text-sm',\n\t\t\t\t'group-data-[collapsible=icon]:hidden',\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nexport {\n\tSidebar,\n\tSidebarContent,\n\tSidebarFooter,\n\tSidebarGroup,\n\tSidebarGroupAction,\n\tSidebarGroupContent,\n\tSidebarGroupLabel,\n\tSidebarHeader,\n\tSidebarInput,\n\tSidebarInset,\n\tSidebarMenu,\n\tSidebarMenuAction,\n\tSidebarMenuBadge,\n\tSidebarMenuButton,\n\tSidebarMenuItem,\n\tSidebarMenuSkeleton,\n\tSidebarMenuSub,\n\tSidebarMenuSubButton,\n\tSidebarMenuSubItem,\n\tSidebarProvider,\n\tSidebarRail,\n\tSidebarSeparator,\n\tSidebarTrigger,\n\tuseSidebar,\n}\n"],"names":["SIDEBAR_WIDTH","SIDEBAR_WIDTH_MOBILE","SIDEBAR_WIDTH_ICON","SIDEBAR_KEYBOARD_SHORTCUT","SidebarContext","React","useSidebar","context","SidebarProvider","defaultOpen","openProp","setOpenProp","className","style","children","props","isMobile","useIsMobile","openMobile","setOpenMobile","_open","_setOpen","open","setOpen","value","openState","toggleSidebar","handleKeyDown","event","state","contextValue","jsx","TooltipProvider","cn","Sidebar","side","variant","collapsible","Sheet","jsxs","SheetContent","SheetHeader","SheetTitle","SheetDescription","SidebarTrigger","onClick","rotationStyle","Fragment","Button","ChevronsLeft","SidebarRail","SidebarInset","SidebarInput","Input","SidebarHeader","SidebarFooter","SidebarSeparator","Separator","SidebarContent","SidebarGroup","SidebarGroupLabel","asChild","Slot","SidebarGroupAction","SidebarGroupContent","SidebarMenu","SidebarMenuItem","sidebarMenuButtonVariants","cva","SidebarMenuButton","isActive","size","tooltip","Comp","button","Tooltip","TooltipTrigger","TooltipContent","SidebarMenuAction","showOnHover","SidebarMenuBadge","SidebarMenuSkeleton","showIcon","width","Skeleton","SidebarMenuSub","SidebarMenuSubItem","SidebarMenuSubButton"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tooltip.d.ts","sourceRoot":"","sources":["../../../src/components/Tooltip/Tooltip.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,gBAAgB,MAAM,yBAAyB,CAAA;AAI3D,iBAAS,eAAe,CAAC,EACxB,aAAiB,EACjB,GAAG,KAAK,EACR,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,QAAQ,CAAC,2CAQxD;AAED,iBAAS,OAAO,CAAC,EAChB,GAAG,KAAK,EACR,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"Tooltip.d.ts","sourceRoot":"","sources":["../../../src/components/Tooltip/Tooltip.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,gBAAgB,MAAM,yBAAyB,CAAA;AAI3D,iBAAS,eAAe,CAAC,EACxB,aAAiB,EACjB,GAAG,KAAK,EACR,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,QAAQ,CAAC,2CAQxD;AAED,iBAAS,OAAO,CAAC,EAChB,GAAG,KAAK,EACR,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,IAAI,CAAC,2CAEpD;AAED,iBAAS,cAAc,CAAC,EACvB,GAAG,KAAK,EACR,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,OAAO,CAAC,2CAEvD;AAED,iBAAS,cAAc,CAAC,EACvB,SAAS,EACT,UAAc,EACd,QAAQ,EACR,GAAG,KAAK,EACR,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,OAAO,CAAC,2CAiBvD;AAED,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,eAAe,EAAE,CAAA"}
|