@prediktif/ui 0.1.5 → 0.1.7
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/index.d.mts +60 -1
- package/dist/index.d.ts +60 -1
- package/dist/index.js +772 -2
- package/dist/index.mjs +747 -1
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
"use client";
|
|
1
2
|
"use strict";
|
|
2
3
|
var __create = Object.create;
|
|
3
4
|
var __defProp = Object.defineProperty;
|
|
@@ -60,7 +61,31 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
60
61
|
var index_exports = {};
|
|
61
62
|
__export(index_exports, {
|
|
62
63
|
HeaderTitle: () => HeaderTitle,
|
|
63
|
-
NavUser: () => NavUser
|
|
64
|
+
NavUser: () => NavUser,
|
|
65
|
+
Sidebar: () => Sidebar,
|
|
66
|
+
SidebarContent: () => SidebarContent,
|
|
67
|
+
SidebarFooter: () => SidebarFooter,
|
|
68
|
+
SidebarGroup: () => SidebarGroup,
|
|
69
|
+
SidebarGroupAction: () => SidebarGroupAction,
|
|
70
|
+
SidebarGroupContent: () => SidebarGroupContent,
|
|
71
|
+
SidebarGroupLabel: () => SidebarGroupLabel,
|
|
72
|
+
SidebarHeader: () => SidebarHeader,
|
|
73
|
+
SidebarInput: () => SidebarInput,
|
|
74
|
+
SidebarInset: () => SidebarInset,
|
|
75
|
+
SidebarMenu: () => SidebarMenu,
|
|
76
|
+
SidebarMenuAction: () => SidebarMenuAction,
|
|
77
|
+
SidebarMenuBadge: () => SidebarMenuBadge,
|
|
78
|
+
SidebarMenuButton: () => SidebarMenuButton,
|
|
79
|
+
SidebarMenuItem: () => SidebarMenuItem,
|
|
80
|
+
SidebarMenuSkeleton: () => SidebarMenuSkeleton,
|
|
81
|
+
SidebarMenuSub: () => SidebarMenuSub,
|
|
82
|
+
SidebarMenuSubButton: () => SidebarMenuSubButton,
|
|
83
|
+
SidebarMenuSubItem: () => SidebarMenuSubItem,
|
|
84
|
+
SidebarProvider: () => SidebarProvider,
|
|
85
|
+
SidebarRail: () => SidebarRail,
|
|
86
|
+
SidebarSeparator: () => SidebarSeparator,
|
|
87
|
+
SidebarTrigger: () => SidebarTrigger,
|
|
88
|
+
useSidebar: () => useSidebar
|
|
64
89
|
});
|
|
65
90
|
module.exports = __toCommonJS(index_exports);
|
|
66
91
|
|
|
@@ -181,26 +206,195 @@ var buttonVariants = (0, import_class_variance_authority.cva)(
|
|
|
181
206
|
}
|
|
182
207
|
}
|
|
183
208
|
);
|
|
209
|
+
function Button(_a) {
|
|
210
|
+
var _b = _a, {
|
|
211
|
+
className,
|
|
212
|
+
variant = "default",
|
|
213
|
+
size = "default"
|
|
214
|
+
} = _b, props = __objRest(_b, [
|
|
215
|
+
"className",
|
|
216
|
+
"variant",
|
|
217
|
+
"size"
|
|
218
|
+
]);
|
|
219
|
+
return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
|
|
220
|
+
import_button.Button,
|
|
221
|
+
__spreadValues({
|
|
222
|
+
"data-slot": "button",
|
|
223
|
+
className: (0, import_cn2.cn)(buttonVariants({ variant, size, className }))
|
|
224
|
+
}, props)
|
|
225
|
+
);
|
|
226
|
+
}
|
|
184
227
|
|
|
185
228
|
// src/components/ui/input.tsx
|
|
186
229
|
var import_input = require("@base-ui/react/input");
|
|
187
230
|
var import_cn3 = require("cn");
|
|
188
231
|
var import_jsx_runtime4 = require("react/jsx-runtime");
|
|
232
|
+
function Input(_a) {
|
|
233
|
+
var _b = _a, { className, type } = _b, props = __objRest(_b, ["className", "type"]);
|
|
234
|
+
return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
|
|
235
|
+
import_input.Input,
|
|
236
|
+
__spreadValues({
|
|
237
|
+
type,
|
|
238
|
+
"data-slot": "input",
|
|
239
|
+
className: (0, import_cn3.cn)(
|
|
240
|
+
"h-7 w-full min-w-0 rounded-md border border-input bg-input/20 px-2 py-0.5 text-sm transition-colors outline-none file:inline-flex file:h-6 file:border-0 file:bg-transparent file:text-xs/relaxed file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-2 focus-visible:ring-ring/30 disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-2 aria-invalid:ring-destructive/20 md:text-xs/relaxed dark:bg-input/30 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40",
|
|
241
|
+
className
|
|
242
|
+
)
|
|
243
|
+
}, props)
|
|
244
|
+
);
|
|
245
|
+
}
|
|
189
246
|
|
|
190
247
|
// src/components/ui/separator.tsx
|
|
191
248
|
var import_separator = require("@base-ui/react/separator");
|
|
192
249
|
var import_cn4 = require("cn");
|
|
193
250
|
var import_jsx_runtime5 = require("react/jsx-runtime");
|
|
251
|
+
function Separator(_a) {
|
|
252
|
+
var _b = _a, {
|
|
253
|
+
className,
|
|
254
|
+
orientation = "horizontal"
|
|
255
|
+
} = _b, props = __objRest(_b, [
|
|
256
|
+
"className",
|
|
257
|
+
"orientation"
|
|
258
|
+
]);
|
|
259
|
+
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
260
|
+
import_separator.Separator,
|
|
261
|
+
__spreadValues({
|
|
262
|
+
"data-slot": "separator",
|
|
263
|
+
orientation,
|
|
264
|
+
className: (0, import_cn4.cn)(
|
|
265
|
+
"shrink-0 bg-border data-horizontal:h-px data-horizontal:w-full data-vertical:w-px data-vertical:self-stretch",
|
|
266
|
+
className
|
|
267
|
+
)
|
|
268
|
+
}, props)
|
|
269
|
+
);
|
|
270
|
+
}
|
|
194
271
|
|
|
195
272
|
// src/components/ui/sheet.tsx
|
|
196
273
|
var import_dialog = require("@base-ui/react/dialog");
|
|
197
274
|
var import_cn5 = require("cn");
|
|
198
275
|
var import_lucide_react = require("lucide-react");
|
|
199
276
|
var import_jsx_runtime6 = require("react/jsx-runtime");
|
|
277
|
+
function Sheet(_a) {
|
|
278
|
+
var props = __objRest(_a, []);
|
|
279
|
+
return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_dialog.Dialog.Root, __spreadValues({ "data-slot": "sheet" }, props));
|
|
280
|
+
}
|
|
281
|
+
function SheetPortal(_a) {
|
|
282
|
+
var props = __objRest(_a, []);
|
|
283
|
+
return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_dialog.Dialog.Portal, __spreadValues({ "data-slot": "sheet-portal" }, props));
|
|
284
|
+
}
|
|
285
|
+
function SheetOverlay(_a) {
|
|
286
|
+
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
287
|
+
return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
|
|
288
|
+
import_dialog.Dialog.Backdrop,
|
|
289
|
+
__spreadValues({
|
|
290
|
+
"data-slot": "sheet-overlay",
|
|
291
|
+
className: (0, import_cn5.cn)(
|
|
292
|
+
"fixed inset-0 z-50 bg-black/80 transition-opacity duration-150 data-ending-style:opacity-0 data-starting-style:opacity-0 supports-backdrop-filter:backdrop-blur-xs",
|
|
293
|
+
className
|
|
294
|
+
)
|
|
295
|
+
}, props)
|
|
296
|
+
);
|
|
297
|
+
}
|
|
298
|
+
function SheetContent(_a) {
|
|
299
|
+
var _b = _a, {
|
|
300
|
+
className,
|
|
301
|
+
children,
|
|
302
|
+
side = "right",
|
|
303
|
+
showCloseButton = true
|
|
304
|
+
} = _b, props = __objRest(_b, [
|
|
305
|
+
"className",
|
|
306
|
+
"children",
|
|
307
|
+
"side",
|
|
308
|
+
"showCloseButton"
|
|
309
|
+
]);
|
|
310
|
+
return /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(SheetPortal, { children: [
|
|
311
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)(SheetOverlay, {}),
|
|
312
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(
|
|
313
|
+
import_dialog.Dialog.Popup,
|
|
314
|
+
__spreadProps(__spreadValues({
|
|
315
|
+
"data-slot": "sheet-content",
|
|
316
|
+
"data-side": side,
|
|
317
|
+
className: (0, import_cn5.cn)(
|
|
318
|
+
"fixed z-50 flex flex-col bg-popover bg-clip-padding text-xs/relaxed text-popover-foreground shadow-lg transition duration-200 ease-in-out data-ending-style:opacity-0 data-starting-style:opacity-0 data-[side=bottom]:inset-x-0 data-[side=bottom]:bottom-0 data-[side=bottom]:h-auto data-[side=bottom]:border-t data-[side=bottom]:data-ending-style:translate-y-[2.5rem] data-[side=bottom]:data-starting-style:translate-y-[2.5rem] data-[side=left]:inset-y-0 data-[side=left]:left-0 data-[side=left]:h-full data-[side=left]:w-3/4 data-[side=left]:border-r data-[side=left]:data-ending-style:translate-x-[-2.5rem] data-[side=left]:data-starting-style:translate-x-[-2.5rem] data-[side=right]:inset-y-0 data-[side=right]:right-0 data-[side=right]:h-full data-[side=right]:w-3/4 data-[side=right]:border-l data-[side=right]:data-ending-style:translate-x-[2.5rem] data-[side=right]:data-starting-style:translate-x-[2.5rem] data-[side=top]:inset-x-0 data-[side=top]:top-0 data-[side=top]:h-auto data-[side=top]:border-b data-[side=top]:data-ending-style:translate-y-[-2.5rem] data-[side=top]:data-starting-style:translate-y-[-2.5rem] data-[side=left]:sm:max-w-sm data-[side=right]:sm:max-w-sm",
|
|
319
|
+
className
|
|
320
|
+
)
|
|
321
|
+
}, props), {
|
|
322
|
+
children: [
|
|
323
|
+
children,
|
|
324
|
+
showCloseButton && /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(
|
|
325
|
+
import_dialog.Dialog.Close,
|
|
326
|
+
{
|
|
327
|
+
"data-slot": "sheet-close",
|
|
328
|
+
render: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
|
|
329
|
+
Button,
|
|
330
|
+
{
|
|
331
|
+
variant: "ghost",
|
|
332
|
+
className: "absolute top-4 right-4",
|
|
333
|
+
size: "icon-sm"
|
|
334
|
+
}
|
|
335
|
+
),
|
|
336
|
+
children: [
|
|
337
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_lucide_react.XIcon, {}),
|
|
338
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("span", { className: "sr-only", children: "Close" })
|
|
339
|
+
]
|
|
340
|
+
}
|
|
341
|
+
)
|
|
342
|
+
]
|
|
343
|
+
})
|
|
344
|
+
)
|
|
345
|
+
] });
|
|
346
|
+
}
|
|
347
|
+
function SheetHeader(_a) {
|
|
348
|
+
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
349
|
+
return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
|
|
350
|
+
"div",
|
|
351
|
+
__spreadValues({
|
|
352
|
+
"data-slot": "sheet-header",
|
|
353
|
+
className: (0, import_cn5.cn)("flex flex-col gap-1.5 p-6", className)
|
|
354
|
+
}, props)
|
|
355
|
+
);
|
|
356
|
+
}
|
|
357
|
+
function SheetTitle(_a) {
|
|
358
|
+
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
359
|
+
return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
|
|
360
|
+
import_dialog.Dialog.Title,
|
|
361
|
+
__spreadValues({
|
|
362
|
+
"data-slot": "sheet-title",
|
|
363
|
+
className: (0, import_cn5.cn)(
|
|
364
|
+
"font-heading text-sm font-medium text-foreground",
|
|
365
|
+
className
|
|
366
|
+
)
|
|
367
|
+
}, props)
|
|
368
|
+
);
|
|
369
|
+
}
|
|
370
|
+
function SheetDescription(_a) {
|
|
371
|
+
var _b = _a, {
|
|
372
|
+
className
|
|
373
|
+
} = _b, props = __objRest(_b, [
|
|
374
|
+
"className"
|
|
375
|
+
]);
|
|
376
|
+
return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
|
|
377
|
+
import_dialog.Dialog.Description,
|
|
378
|
+
__spreadValues({
|
|
379
|
+
"data-slot": "sheet-description",
|
|
380
|
+
className: (0, import_cn5.cn)("text-xs/relaxed text-muted-foreground", className)
|
|
381
|
+
}, props)
|
|
382
|
+
);
|
|
383
|
+
}
|
|
200
384
|
|
|
201
385
|
// src/components/ui/skeleton.tsx
|
|
202
386
|
var import_cn6 = require("cn");
|
|
203
387
|
var import_jsx_runtime7 = require("react/jsx-runtime");
|
|
388
|
+
function Skeleton(_a) {
|
|
389
|
+
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
390
|
+
return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
|
|
391
|
+
"div",
|
|
392
|
+
__spreadValues({
|
|
393
|
+
"data-slot": "skeleton",
|
|
394
|
+
className: (0, import_cn6.cn)("animate-pulse rounded-md bg-muted", className)
|
|
395
|
+
}, props)
|
|
396
|
+
);
|
|
397
|
+
}
|
|
204
398
|
|
|
205
399
|
// src/components/ui/tooltip.tsx
|
|
206
400
|
var import_tooltip = require("@base-ui/react/tooltip");
|
|
@@ -259,10 +453,31 @@ function TooltipContent(_a) {
|
|
|
259
453
|
|
|
260
454
|
// src/hooks/use-mobile.ts
|
|
261
455
|
var React = __toESM(require("react"));
|
|
456
|
+
var MOBILE_BREAKPOINT = 768;
|
|
457
|
+
function useIsMobile() {
|
|
458
|
+
const [isMobile, setIsMobile] = React.useState(
|
|
459
|
+
void 0
|
|
460
|
+
);
|
|
461
|
+
React.useEffect(() => {
|
|
462
|
+
const mql = window.matchMedia(`(max-width: ${MOBILE_BREAKPOINT - 1}px)`);
|
|
463
|
+
const onChange = () => {
|
|
464
|
+
setIsMobile(window.innerWidth < MOBILE_BREAKPOINT);
|
|
465
|
+
};
|
|
466
|
+
mql.addEventListener("change", onChange);
|
|
467
|
+
setIsMobile(window.innerWidth < MOBILE_BREAKPOINT);
|
|
468
|
+
return () => mql.removeEventListener("change", onChange);
|
|
469
|
+
}, []);
|
|
470
|
+
return !!isMobile;
|
|
471
|
+
}
|
|
262
472
|
|
|
263
473
|
// src/components/ui/sidebar.tsx
|
|
264
474
|
var import_jsx_runtime9 = require("react/jsx-runtime");
|
|
475
|
+
var SIDEBAR_COOKIE_NAME = "sidebar_state";
|
|
265
476
|
var SIDEBAR_COOKIE_MAX_AGE = 60 * 60 * 24 * 7;
|
|
477
|
+
var SIDEBAR_WIDTH = "16rem";
|
|
478
|
+
var SIDEBAR_WIDTH_MOBILE = "18rem";
|
|
479
|
+
var SIDEBAR_WIDTH_ICON = "3rem";
|
|
480
|
+
var SIDEBAR_KEYBOARD_SHORTCUT = "b";
|
|
266
481
|
var SidebarContext = React2.createContext(null);
|
|
267
482
|
function useSidebar() {
|
|
268
483
|
const context = React2.useContext(SidebarContext);
|
|
@@ -271,6 +486,279 @@ function useSidebar() {
|
|
|
271
486
|
}
|
|
272
487
|
return context;
|
|
273
488
|
}
|
|
489
|
+
function SidebarProvider(_a) {
|
|
490
|
+
var _b = _a, {
|
|
491
|
+
defaultOpen = true,
|
|
492
|
+
open: openProp,
|
|
493
|
+
onOpenChange: setOpenProp,
|
|
494
|
+
className,
|
|
495
|
+
style,
|
|
496
|
+
children
|
|
497
|
+
} = _b, props = __objRest(_b, [
|
|
498
|
+
"defaultOpen",
|
|
499
|
+
"open",
|
|
500
|
+
"onOpenChange",
|
|
501
|
+
"className",
|
|
502
|
+
"style",
|
|
503
|
+
"children"
|
|
504
|
+
]);
|
|
505
|
+
const isMobile = useIsMobile();
|
|
506
|
+
const [openMobile, setOpenMobile] = React2.useState(false);
|
|
507
|
+
const [_open, _setOpen] = React2.useState(defaultOpen);
|
|
508
|
+
const open = openProp != null ? openProp : _open;
|
|
509
|
+
const setOpen = React2.useCallback(
|
|
510
|
+
(value) => {
|
|
511
|
+
const openState = typeof value === "function" ? value(open) : value;
|
|
512
|
+
if (setOpenProp) {
|
|
513
|
+
setOpenProp(openState);
|
|
514
|
+
} else {
|
|
515
|
+
_setOpen(openState);
|
|
516
|
+
}
|
|
517
|
+
document.cookie = `${SIDEBAR_COOKIE_NAME}=${openState}; path=/; max-age=${SIDEBAR_COOKIE_MAX_AGE}`;
|
|
518
|
+
},
|
|
519
|
+
[setOpenProp, open]
|
|
520
|
+
);
|
|
521
|
+
const toggleSidebar = React2.useCallback(() => {
|
|
522
|
+
return isMobile ? setOpenMobile((open2) => !open2) : setOpen((open2) => !open2);
|
|
523
|
+
}, [isMobile, setOpen]);
|
|
524
|
+
React2.useEffect(() => {
|
|
525
|
+
const handleKeyDown = (event) => {
|
|
526
|
+
if (event.key === SIDEBAR_KEYBOARD_SHORTCUT && (event.metaKey || event.ctrlKey)) {
|
|
527
|
+
event.preventDefault();
|
|
528
|
+
toggleSidebar();
|
|
529
|
+
}
|
|
530
|
+
};
|
|
531
|
+
window.addEventListener("keydown", handleKeyDown);
|
|
532
|
+
return () => window.removeEventListener("keydown", handleKeyDown);
|
|
533
|
+
}, [toggleSidebar]);
|
|
534
|
+
const state = open ? "expanded" : "collapsed";
|
|
535
|
+
const contextValue = React2.useMemo(
|
|
536
|
+
() => ({
|
|
537
|
+
state,
|
|
538
|
+
open,
|
|
539
|
+
setOpen,
|
|
540
|
+
isMobile,
|
|
541
|
+
openMobile,
|
|
542
|
+
setOpenMobile,
|
|
543
|
+
toggleSidebar
|
|
544
|
+
}),
|
|
545
|
+
[state, open, setOpen, isMobile, openMobile, toggleSidebar]
|
|
546
|
+
);
|
|
547
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(SidebarContext.Provider, { value: contextValue, children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
548
|
+
"div",
|
|
549
|
+
__spreadProps(__spreadValues({
|
|
550
|
+
"data-slot": "sidebar-wrapper",
|
|
551
|
+
style: __spreadValues({
|
|
552
|
+
"--sidebar-width": SIDEBAR_WIDTH,
|
|
553
|
+
"--sidebar-width-icon": SIDEBAR_WIDTH_ICON
|
|
554
|
+
}, style),
|
|
555
|
+
className: (0, import_cn8.cn)(
|
|
556
|
+
"group/sidebar-wrapper flex min-h-svh w-full has-data-[variant=inset]:bg-sidebar",
|
|
557
|
+
className
|
|
558
|
+
)
|
|
559
|
+
}, props), {
|
|
560
|
+
children
|
|
561
|
+
})
|
|
562
|
+
) });
|
|
563
|
+
}
|
|
564
|
+
function Sidebar(_a) {
|
|
565
|
+
var _b = _a, {
|
|
566
|
+
side = "left",
|
|
567
|
+
variant = "sidebar",
|
|
568
|
+
collapsible = "offcanvas",
|
|
569
|
+
className,
|
|
570
|
+
children,
|
|
571
|
+
dir
|
|
572
|
+
} = _b, props = __objRest(_b, [
|
|
573
|
+
"side",
|
|
574
|
+
"variant",
|
|
575
|
+
"collapsible",
|
|
576
|
+
"className",
|
|
577
|
+
"children",
|
|
578
|
+
"dir"
|
|
579
|
+
]);
|
|
580
|
+
const { isMobile, state, openMobile, setOpenMobile } = useSidebar();
|
|
581
|
+
if (collapsible === "none") {
|
|
582
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
583
|
+
"div",
|
|
584
|
+
__spreadProps(__spreadValues({
|
|
585
|
+
"data-slot": "sidebar",
|
|
586
|
+
className: (0, import_cn8.cn)(
|
|
587
|
+
"flex h-full w-(--sidebar-width) flex-col bg-sidebar text-sidebar-foreground",
|
|
588
|
+
className
|
|
589
|
+
)
|
|
590
|
+
}, props), {
|
|
591
|
+
children
|
|
592
|
+
})
|
|
593
|
+
);
|
|
594
|
+
}
|
|
595
|
+
if (isMobile) {
|
|
596
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(Sheet, __spreadProps(__spreadValues({ open: openMobile, onOpenChange: setOpenMobile }, props), { children: /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(
|
|
597
|
+
SheetContent,
|
|
598
|
+
{
|
|
599
|
+
dir,
|
|
600
|
+
"data-sidebar": "sidebar",
|
|
601
|
+
"data-slot": "sidebar",
|
|
602
|
+
"data-mobile": "true",
|
|
603
|
+
className: "w-(--sidebar-width) bg-sidebar p-0 text-sidebar-foreground [&>button]:hidden",
|
|
604
|
+
style: {
|
|
605
|
+
"--sidebar-width": SIDEBAR_WIDTH_MOBILE
|
|
606
|
+
},
|
|
607
|
+
side,
|
|
608
|
+
children: [
|
|
609
|
+
/* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(SheetHeader, { className: "sr-only", children: [
|
|
610
|
+
/* @__PURE__ */ (0, import_jsx_runtime9.jsx)(SheetTitle, { children: "Sidebar" }),
|
|
611
|
+
/* @__PURE__ */ (0, import_jsx_runtime9.jsx)(SheetDescription, { children: "Displays the mobile sidebar." })
|
|
612
|
+
] }),
|
|
613
|
+
/* @__PURE__ */ (0, import_jsx_runtime9.jsx)("div", { className: "flex h-full w-full flex-col", children })
|
|
614
|
+
]
|
|
615
|
+
}
|
|
616
|
+
) }));
|
|
617
|
+
}
|
|
618
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(
|
|
619
|
+
"div",
|
|
620
|
+
{
|
|
621
|
+
className: "group peer hidden text-sidebar-foreground md:block",
|
|
622
|
+
"data-state": state,
|
|
623
|
+
"data-collapsible": state === "collapsed" ? collapsible : "",
|
|
624
|
+
"data-variant": variant,
|
|
625
|
+
"data-side": side,
|
|
626
|
+
"data-slot": "sidebar",
|
|
627
|
+
children: [
|
|
628
|
+
/* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
629
|
+
"div",
|
|
630
|
+
{
|
|
631
|
+
"data-slot": "sidebar-gap",
|
|
632
|
+
className: (0, import_cn8.cn)(
|
|
633
|
+
"relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear",
|
|
634
|
+
"group-data-[collapsible=offcanvas]:w-0",
|
|
635
|
+
"group-data-[side=right]:rotate-180",
|
|
636
|
+
variant === "floating" || variant === "inset" ? "group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]" : "group-data-[collapsible=icon]:w-(--sidebar-width-icon)"
|
|
637
|
+
)
|
|
638
|
+
}
|
|
639
|
+
),
|
|
640
|
+
/* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
641
|
+
"div",
|
|
642
|
+
__spreadProps(__spreadValues({
|
|
643
|
+
"data-slot": "sidebar-container",
|
|
644
|
+
"data-side": side,
|
|
645
|
+
className: (0, import_cn8.cn)(
|
|
646
|
+
"fixed inset-y-0 z-10 hidden h-svh w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear data-[side=left]:left-0 data-[side=left]:group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)] data-[side=right]:right-0 data-[side=right]:group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)] md:flex",
|
|
647
|
+
// Adjust the padding for floating and inset variants.
|
|
648
|
+
variant === "floating" || variant === "inset" ? "p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4))+2px)]" : "group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l",
|
|
649
|
+
className
|
|
650
|
+
)
|
|
651
|
+
}, props), {
|
|
652
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
653
|
+
"div",
|
|
654
|
+
{
|
|
655
|
+
"data-sidebar": "sidebar",
|
|
656
|
+
"data-slot": "sidebar-inner",
|
|
657
|
+
className: "flex size-full flex-col bg-sidebar group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:shadow-sm group-data-[variant=floating]:ring-1 group-data-[variant=floating]:ring-sidebar-border",
|
|
658
|
+
children
|
|
659
|
+
}
|
|
660
|
+
)
|
|
661
|
+
})
|
|
662
|
+
)
|
|
663
|
+
]
|
|
664
|
+
}
|
|
665
|
+
);
|
|
666
|
+
}
|
|
667
|
+
function SidebarTrigger(_a) {
|
|
668
|
+
var _b = _a, {
|
|
669
|
+
className,
|
|
670
|
+
onClick
|
|
671
|
+
} = _b, props = __objRest(_b, [
|
|
672
|
+
"className",
|
|
673
|
+
"onClick"
|
|
674
|
+
]);
|
|
675
|
+
const { toggleSidebar } = useSidebar();
|
|
676
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(
|
|
677
|
+
Button,
|
|
678
|
+
__spreadProps(__spreadValues({
|
|
679
|
+
"data-sidebar": "trigger",
|
|
680
|
+
"data-slot": "sidebar-trigger",
|
|
681
|
+
variant: "ghost",
|
|
682
|
+
size: "icon-sm",
|
|
683
|
+
className: (0, import_cn8.cn)(className),
|
|
684
|
+
onClick: (event) => {
|
|
685
|
+
onClick == null ? void 0 : onClick(event);
|
|
686
|
+
toggleSidebar();
|
|
687
|
+
}
|
|
688
|
+
}, props), {
|
|
689
|
+
children: [
|
|
690
|
+
/* @__PURE__ */ (0, import_jsx_runtime9.jsx)(import_lucide_react2.PanelLeftIcon, {}),
|
|
691
|
+
/* @__PURE__ */ (0, import_jsx_runtime9.jsx)("span", { className: "sr-only", children: "Toggle Sidebar" })
|
|
692
|
+
]
|
|
693
|
+
})
|
|
694
|
+
);
|
|
695
|
+
}
|
|
696
|
+
function SidebarRail(_a) {
|
|
697
|
+
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
698
|
+
const { toggleSidebar } = useSidebar();
|
|
699
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
700
|
+
"button",
|
|
701
|
+
__spreadValues({
|
|
702
|
+
"data-sidebar": "rail",
|
|
703
|
+
"data-slot": "sidebar-rail",
|
|
704
|
+
"aria-label": "Toggle Sidebar",
|
|
705
|
+
tabIndex: -1,
|
|
706
|
+
onClick: toggleSidebar,
|
|
707
|
+
title: "Toggle Sidebar",
|
|
708
|
+
className: (0, import_cn8.cn)(
|
|
709
|
+
"absolute inset-y-0 z-20 hidden w-4 transition-all ease-linear group-data-[side=left]:-right-4 group-data-[side=right]:left-0 after:absolute after:inset-y-0 after:start-1/2 after:w-[2px] hover:after:bg-sidebar-border sm:flex ltr:-translate-x-1/2 rtl:-translate-x-1/2",
|
|
710
|
+
"in-data-[side=left]:cursor-w-resize in-data-[side=right]:cursor-e-resize",
|
|
711
|
+
"[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize",
|
|
712
|
+
"group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full hover:group-data-[collapsible=offcanvas]:bg-sidebar",
|
|
713
|
+
"[[data-side=left][data-collapsible=offcanvas]_&]:-right-2",
|
|
714
|
+
"[[data-side=right][data-collapsible=offcanvas]_&]:-left-2",
|
|
715
|
+
className
|
|
716
|
+
)
|
|
717
|
+
}, props)
|
|
718
|
+
);
|
|
719
|
+
}
|
|
720
|
+
function SidebarInset(_a) {
|
|
721
|
+
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
722
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
723
|
+
"main",
|
|
724
|
+
__spreadValues({
|
|
725
|
+
"data-slot": "sidebar-inset",
|
|
726
|
+
className: (0, import_cn8.cn)(
|
|
727
|
+
"relative flex w-full flex-1 flex-col bg-background md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ml-2",
|
|
728
|
+
className
|
|
729
|
+
)
|
|
730
|
+
}, props)
|
|
731
|
+
);
|
|
732
|
+
}
|
|
733
|
+
function SidebarInput(_a) {
|
|
734
|
+
var _b = _a, {
|
|
735
|
+
className
|
|
736
|
+
} = _b, props = __objRest(_b, [
|
|
737
|
+
"className"
|
|
738
|
+
]);
|
|
739
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
740
|
+
Input,
|
|
741
|
+
__spreadValues({
|
|
742
|
+
"data-slot": "sidebar-input",
|
|
743
|
+
"data-sidebar": "input",
|
|
744
|
+
className: (0, import_cn8.cn)(
|
|
745
|
+
"h-8 w-full border-input bg-muted/20 dark:bg-muted/30",
|
|
746
|
+
className
|
|
747
|
+
)
|
|
748
|
+
}, props)
|
|
749
|
+
);
|
|
750
|
+
}
|
|
751
|
+
function SidebarHeader(_a) {
|
|
752
|
+
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
753
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
754
|
+
"div",
|
|
755
|
+
__spreadValues({
|
|
756
|
+
"data-slot": "sidebar-header",
|
|
757
|
+
"data-sidebar": "header",
|
|
758
|
+
className: (0, import_cn8.cn)("flex flex-col gap-2 p-2", className)
|
|
759
|
+
}, props)
|
|
760
|
+
);
|
|
761
|
+
}
|
|
274
762
|
function SidebarFooter(_a) {
|
|
275
763
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
276
764
|
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
@@ -282,6 +770,116 @@ function SidebarFooter(_a) {
|
|
|
282
770
|
}, props)
|
|
283
771
|
);
|
|
284
772
|
}
|
|
773
|
+
function SidebarSeparator(_a) {
|
|
774
|
+
var _b = _a, {
|
|
775
|
+
className
|
|
776
|
+
} = _b, props = __objRest(_b, [
|
|
777
|
+
"className"
|
|
778
|
+
]);
|
|
779
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
780
|
+
Separator,
|
|
781
|
+
__spreadValues({
|
|
782
|
+
"data-slot": "sidebar-separator",
|
|
783
|
+
"data-sidebar": "separator",
|
|
784
|
+
className: (0, import_cn8.cn)("mx-2 w-auto bg-sidebar-border", className)
|
|
785
|
+
}, props)
|
|
786
|
+
);
|
|
787
|
+
}
|
|
788
|
+
function SidebarContent(_a) {
|
|
789
|
+
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
790
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
791
|
+
"div",
|
|
792
|
+
__spreadValues({
|
|
793
|
+
"data-slot": "sidebar-content",
|
|
794
|
+
"data-sidebar": "content",
|
|
795
|
+
className: (0, import_cn8.cn)(
|
|
796
|
+
"no-scrollbar flex min-h-0 flex-1 flex-col gap-0 overflow-auto group-data-[collapsible=icon]:overflow-hidden",
|
|
797
|
+
className
|
|
798
|
+
)
|
|
799
|
+
}, props)
|
|
800
|
+
);
|
|
801
|
+
}
|
|
802
|
+
function SidebarGroup(_a) {
|
|
803
|
+
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
804
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
805
|
+
"div",
|
|
806
|
+
__spreadValues({
|
|
807
|
+
"data-slot": "sidebar-group",
|
|
808
|
+
"data-sidebar": "group",
|
|
809
|
+
className: (0, import_cn8.cn)(
|
|
810
|
+
"relative flex w-full min-w-0 flex-col px-2 py-1",
|
|
811
|
+
className
|
|
812
|
+
)
|
|
813
|
+
}, props)
|
|
814
|
+
);
|
|
815
|
+
}
|
|
816
|
+
function SidebarGroupLabel(_a) {
|
|
817
|
+
var _b = _a, {
|
|
818
|
+
className,
|
|
819
|
+
render
|
|
820
|
+
} = _b, props = __objRest(_b, [
|
|
821
|
+
"className",
|
|
822
|
+
"render"
|
|
823
|
+
]);
|
|
824
|
+
return (0, import_use_render.useRender)({
|
|
825
|
+
defaultTagName: "div",
|
|
826
|
+
props: (0, import_merge_props.mergeProps)(
|
|
827
|
+
{
|
|
828
|
+
className: (0, import_cn8.cn)(
|
|
829
|
+
"flex h-8 shrink-0 items-center rounded-md px-2 text-xs text-sidebar-foreground/70 ring-sidebar-ring outline-hidden transition-[margin,opacity] duration-200 ease-linear group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0 focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0",
|
|
830
|
+
className
|
|
831
|
+
)
|
|
832
|
+
},
|
|
833
|
+
props
|
|
834
|
+
),
|
|
835
|
+
render,
|
|
836
|
+
state: {
|
|
837
|
+
slot: "sidebar-group-label",
|
|
838
|
+
sidebar: "group-label"
|
|
839
|
+
}
|
|
840
|
+
});
|
|
841
|
+
}
|
|
842
|
+
function SidebarGroupAction(_a) {
|
|
843
|
+
var _b = _a, {
|
|
844
|
+
className,
|
|
845
|
+
render
|
|
846
|
+
} = _b, props = __objRest(_b, [
|
|
847
|
+
"className",
|
|
848
|
+
"render"
|
|
849
|
+
]);
|
|
850
|
+
return (0, import_use_render.useRender)({
|
|
851
|
+
defaultTagName: "button",
|
|
852
|
+
props: (0, import_merge_props.mergeProps)(
|
|
853
|
+
{
|
|
854
|
+
className: (0, import_cn8.cn)(
|
|
855
|
+
"absolute top-3.5 right-3 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground ring-sidebar-ring outline-hidden transition-transform group-data-[collapsible=icon]:hidden after:absolute after:-inset-2 hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 md:after:hidden [&>svg]:size-4 [&>svg]:shrink-0",
|
|
856
|
+
className
|
|
857
|
+
)
|
|
858
|
+
},
|
|
859
|
+
props
|
|
860
|
+
),
|
|
861
|
+
render,
|
|
862
|
+
state: {
|
|
863
|
+
slot: "sidebar-group-action",
|
|
864
|
+
sidebar: "group-action"
|
|
865
|
+
}
|
|
866
|
+
});
|
|
867
|
+
}
|
|
868
|
+
function SidebarGroupContent(_a) {
|
|
869
|
+
var _b = _a, {
|
|
870
|
+
className
|
|
871
|
+
} = _b, props = __objRest(_b, [
|
|
872
|
+
"className"
|
|
873
|
+
]);
|
|
874
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
875
|
+
"div",
|
|
876
|
+
__spreadValues({
|
|
877
|
+
"data-slot": "sidebar-group-content",
|
|
878
|
+
"data-sidebar": "group-content",
|
|
879
|
+
className: (0, import_cn8.cn)("w-full text-xs", className)
|
|
880
|
+
}, props)
|
|
881
|
+
);
|
|
882
|
+
}
|
|
285
883
|
function SidebarMenu(_a) {
|
|
286
884
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
287
885
|
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
@@ -377,6 +975,154 @@ function SidebarMenuButton(_a) {
|
|
|
377
975
|
)
|
|
378
976
|
] });
|
|
379
977
|
}
|
|
978
|
+
function SidebarMenuAction(_a) {
|
|
979
|
+
var _b = _a, {
|
|
980
|
+
className,
|
|
981
|
+
render,
|
|
982
|
+
showOnHover = false
|
|
983
|
+
} = _b, props = __objRest(_b, [
|
|
984
|
+
"className",
|
|
985
|
+
"render",
|
|
986
|
+
"showOnHover"
|
|
987
|
+
]);
|
|
988
|
+
return (0, import_use_render.useRender)({
|
|
989
|
+
defaultTagName: "button",
|
|
990
|
+
props: (0, import_merge_props.mergeProps)(
|
|
991
|
+
{
|
|
992
|
+
className: (0, import_cn8.cn)(
|
|
993
|
+
"absolute top-1.5 right-1 flex aspect-square w-5 items-center justify-center rounded-[calc(var(--radius-sm)-2px)] p-0 text-sidebar-foreground ring-sidebar-ring outline-hidden transition-transform group-data-[collapsible=icon]:hidden peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[size=default]/menu-button:top-1.5 peer-data-[size=lg]/menu-button:top-2.5 peer-data-[size=sm]/menu-button:top-1 after:absolute after:-inset-2 hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 md:after:hidden [&>svg]:size-4 [&>svg]:shrink-0",
|
|
994
|
+
showOnHover && "group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 peer-data-active/menu-button:text-sidebar-accent-foreground aria-expanded:opacity-100 md:opacity-0",
|
|
995
|
+
className
|
|
996
|
+
)
|
|
997
|
+
},
|
|
998
|
+
props
|
|
999
|
+
),
|
|
1000
|
+
render,
|
|
1001
|
+
state: {
|
|
1002
|
+
slot: "sidebar-menu-action",
|
|
1003
|
+
sidebar: "menu-action"
|
|
1004
|
+
}
|
|
1005
|
+
});
|
|
1006
|
+
}
|
|
1007
|
+
function SidebarMenuBadge(_a) {
|
|
1008
|
+
var _b = _a, {
|
|
1009
|
+
className
|
|
1010
|
+
} = _b, props = __objRest(_b, [
|
|
1011
|
+
"className"
|
|
1012
|
+
]);
|
|
1013
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
1014
|
+
"div",
|
|
1015
|
+
__spreadValues({
|
|
1016
|
+
"data-slot": "sidebar-menu-badge",
|
|
1017
|
+
"data-sidebar": "menu-badge",
|
|
1018
|
+
className: (0, import_cn8.cn)(
|
|
1019
|
+
"pointer-events-none absolute right-1 flex h-5 min-w-5 items-center justify-center rounded-[calc(var(--radius-sm)-2px)] px-1 text-xs font-medium text-sidebar-foreground tabular-nums select-none group-data-[collapsible=icon]:hidden peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[size=default]/menu-button:top-1.5 peer-data-[size=lg]/menu-button:top-2.5 peer-data-[size=sm]/menu-button:top-1 peer-data-active/menu-button:text-sidebar-accent-foreground",
|
|
1020
|
+
className
|
|
1021
|
+
)
|
|
1022
|
+
}, props)
|
|
1023
|
+
);
|
|
1024
|
+
}
|
|
1025
|
+
function SidebarMenuSkeleton(_a) {
|
|
1026
|
+
var _b = _a, {
|
|
1027
|
+
className,
|
|
1028
|
+
showIcon = false
|
|
1029
|
+
} = _b, props = __objRest(_b, [
|
|
1030
|
+
"className",
|
|
1031
|
+
"showIcon"
|
|
1032
|
+
]);
|
|
1033
|
+
const [width] = React2.useState(() => {
|
|
1034
|
+
return `${Math.floor(Math.random() * 40) + 50}%`;
|
|
1035
|
+
});
|
|
1036
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(
|
|
1037
|
+
"div",
|
|
1038
|
+
__spreadProps(__spreadValues({
|
|
1039
|
+
"data-slot": "sidebar-menu-skeleton",
|
|
1040
|
+
"data-sidebar": "menu-skeleton",
|
|
1041
|
+
className: (0, import_cn8.cn)("flex h-8 items-center gap-2 rounded-md px-2", className)
|
|
1042
|
+
}, props), {
|
|
1043
|
+
children: [
|
|
1044
|
+
showIcon && /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
1045
|
+
Skeleton,
|
|
1046
|
+
{
|
|
1047
|
+
className: "size-4 rounded-md",
|
|
1048
|
+
"data-sidebar": "menu-skeleton-icon"
|
|
1049
|
+
}
|
|
1050
|
+
),
|
|
1051
|
+
/* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
1052
|
+
Skeleton,
|
|
1053
|
+
{
|
|
1054
|
+
className: "h-4 max-w-(--skeleton-width) flex-1",
|
|
1055
|
+
"data-sidebar": "menu-skeleton-text",
|
|
1056
|
+
style: {
|
|
1057
|
+
"--skeleton-width": width
|
|
1058
|
+
}
|
|
1059
|
+
}
|
|
1060
|
+
)
|
|
1061
|
+
]
|
|
1062
|
+
})
|
|
1063
|
+
);
|
|
1064
|
+
}
|
|
1065
|
+
function SidebarMenuSub(_a) {
|
|
1066
|
+
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
1067
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
1068
|
+
"ul",
|
|
1069
|
+
__spreadValues({
|
|
1070
|
+
"data-slot": "sidebar-menu-sub",
|
|
1071
|
+
"data-sidebar": "menu-sub",
|
|
1072
|
+
className: (0, import_cn8.cn)(
|
|
1073
|
+
"mx-3.5 flex min-w-0 translate-x-px flex-col gap-1 border-l border-sidebar-border px-2.5 py-0.5 group-data-[collapsible=icon]:hidden",
|
|
1074
|
+
className
|
|
1075
|
+
)
|
|
1076
|
+
}, props)
|
|
1077
|
+
);
|
|
1078
|
+
}
|
|
1079
|
+
function SidebarMenuSubItem(_a) {
|
|
1080
|
+
var _b = _a, {
|
|
1081
|
+
className
|
|
1082
|
+
} = _b, props = __objRest(_b, [
|
|
1083
|
+
"className"
|
|
1084
|
+
]);
|
|
1085
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
1086
|
+
"li",
|
|
1087
|
+
__spreadValues({
|
|
1088
|
+
"data-slot": "sidebar-menu-sub-item",
|
|
1089
|
+
"data-sidebar": "menu-sub-item",
|
|
1090
|
+
className: (0, import_cn8.cn)("group/menu-sub-item relative", className)
|
|
1091
|
+
}, props)
|
|
1092
|
+
);
|
|
1093
|
+
}
|
|
1094
|
+
function SidebarMenuSubButton(_a) {
|
|
1095
|
+
var _b = _a, {
|
|
1096
|
+
render,
|
|
1097
|
+
size = "md",
|
|
1098
|
+
isActive = false,
|
|
1099
|
+
className
|
|
1100
|
+
} = _b, props = __objRest(_b, [
|
|
1101
|
+
"render",
|
|
1102
|
+
"size",
|
|
1103
|
+
"isActive",
|
|
1104
|
+
"className"
|
|
1105
|
+
]);
|
|
1106
|
+
return (0, import_use_render.useRender)({
|
|
1107
|
+
defaultTagName: "a",
|
|
1108
|
+
props: (0, import_merge_props.mergeProps)(
|
|
1109
|
+
{
|
|
1110
|
+
className: (0, import_cn8.cn)(
|
|
1111
|
+
"flex h-7 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded-md px-2 text-sidebar-foreground ring-sidebar-ring outline-hidden group-data-[collapsible=icon]:hidden 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 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[size=md]:text-xs data-[size=sm]:text-xs data-active:bg-sidebar-accent data-active:text-sidebar-accent-foreground [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0 [&>svg]:text-sidebar-accent-foreground",
|
|
1112
|
+
className
|
|
1113
|
+
)
|
|
1114
|
+
},
|
|
1115
|
+
props
|
|
1116
|
+
),
|
|
1117
|
+
render,
|
|
1118
|
+
state: {
|
|
1119
|
+
slot: "sidebar-menu-sub-button",
|
|
1120
|
+
sidebar: "menu-sub-button",
|
|
1121
|
+
size,
|
|
1122
|
+
active: isActive
|
|
1123
|
+
}
|
|
1124
|
+
});
|
|
1125
|
+
}
|
|
380
1126
|
|
|
381
1127
|
// src/components/composed/nav-user.tsx
|
|
382
1128
|
var import_jsx_runtime10 = require("react/jsx-runtime");
|
|
@@ -401,5 +1147,29 @@ var NavUser = (0, import_react2.memo)(function NavUser2({
|
|
|
401
1147
|
// Annotate the CommonJS export names for ESM import in node:
|
|
402
1148
|
0 && (module.exports = {
|
|
403
1149
|
HeaderTitle,
|
|
404
|
-
NavUser
|
|
1150
|
+
NavUser,
|
|
1151
|
+
Sidebar,
|
|
1152
|
+
SidebarContent,
|
|
1153
|
+
SidebarFooter,
|
|
1154
|
+
SidebarGroup,
|
|
1155
|
+
SidebarGroupAction,
|
|
1156
|
+
SidebarGroupContent,
|
|
1157
|
+
SidebarGroupLabel,
|
|
1158
|
+
SidebarHeader,
|
|
1159
|
+
SidebarInput,
|
|
1160
|
+
SidebarInset,
|
|
1161
|
+
SidebarMenu,
|
|
1162
|
+
SidebarMenuAction,
|
|
1163
|
+
SidebarMenuBadge,
|
|
1164
|
+
SidebarMenuButton,
|
|
1165
|
+
SidebarMenuItem,
|
|
1166
|
+
SidebarMenuSkeleton,
|
|
1167
|
+
SidebarMenuSub,
|
|
1168
|
+
SidebarMenuSubButton,
|
|
1169
|
+
SidebarMenuSubItem,
|
|
1170
|
+
SidebarProvider,
|
|
1171
|
+
SidebarRail,
|
|
1172
|
+
SidebarSeparator,
|
|
1173
|
+
SidebarTrigger,
|
|
1174
|
+
useSidebar
|
|
405
1175
|
});
|