gladvn 0.2.19 → 0.2.21
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/README.md +1 -0
- package/bin/cli.js +15 -5
- package/dist/components/macro/accordion-preset.d.ts.map +1 -1
- package/dist/components/macro/alert-dialog-preset.d.ts.map +1 -1
- package/dist/components/macro/alert-preset.d.ts.map +1 -1
- package/dist/components/macro/avatar-preset.d.ts.map +1 -1
- package/dist/components/macro/breadcrumb-preset.d.ts.map +1 -1
- package/dist/components/macro/card-preset.d.ts.map +1 -1
- package/dist/components/macro/carousel-preset.d.ts.map +1 -1
- package/dist/components/macro/checkbox-preset.d.ts.map +1 -1
- package/dist/components/macro/combobox-preset.d.ts.map +1 -1
- package/dist/components/macro/command-preset.d.ts +1 -1
- package/dist/components/macro/command-preset.d.ts.map +1 -1
- package/dist/components/macro/date-picker.d.ts.map +1 -1
- package/dist/components/macro/dialog-preset.d.ts.map +1 -1
- package/dist/components/macro/empty-preset.d.ts +1 -1
- package/dist/components/macro/empty-preset.d.ts.map +1 -1
- package/dist/components/macro/field-preset.d.ts.map +1 -1
- package/dist/components/macro/input-otp-preset.d.ts.map +1 -1
- package/dist/components/macro/input-preset.d.ts.map +1 -1
- package/dist/components/macro/pagination-preset.d.ts.map +1 -1
- package/dist/components/macro/progress-preset.d.ts.map +1 -1
- package/dist/components/macro/radio-group-preset.d.ts.map +1 -1
- package/dist/components/macro/select-preset.d.ts.map +1 -1
- package/dist/components/macro/slider-preset.d.ts.map +1 -1
- package/dist/components/macro/switch-preset.d.ts.map +1 -1
- package/dist/components/macro/tabs-preset.d.ts.map +1 -1
- package/dist/components/micro/alert-dialog.d.ts +4 -4
- package/dist/components/micro/alert-dialog.d.ts.map +1 -1
- package/dist/components/micro/combobox.d.ts +4 -3
- package/dist/components/micro/combobox.d.ts.map +1 -1
- package/dist/components/micro/context-menu.d.ts +4 -6
- package/dist/components/micro/context-menu.d.ts.map +1 -1
- package/dist/components/micro/dialog.d.ts +4 -3
- package/dist/components/micro/dialog.d.ts.map +1 -1
- package/dist/components/micro/drawer.d.ts +4 -3
- package/dist/components/micro/drawer.d.ts.map +1 -1
- package/dist/components/micro/dropdown-menu.d.ts +7 -4
- package/dist/components/micro/dropdown-menu.d.ts.map +1 -1
- package/dist/components/micro/hover-card.d.ts +4 -3
- package/dist/components/micro/hover-card.d.ts.map +1 -1
- package/dist/components/micro/menubar.d.ts +2 -3
- package/dist/components/micro/menubar.d.ts.map +1 -1
- package/dist/components/micro/navigation-menu.d.ts +4 -3
- package/dist/components/micro/navigation-menu.d.ts.map +1 -1
- package/dist/components/micro/popover.d.ts +4 -3
- package/dist/components/micro/popover.d.ts.map +1 -1
- package/dist/components/micro/select.d.ts +4 -3
- package/dist/components/micro/select.d.ts.map +1 -1
- package/dist/components/micro/sheet.d.ts +3 -3
- package/dist/components/micro/sheet.d.ts.map +1 -1
- package/dist/components/micro/tooltip.d.ts +4 -3
- package/dist/components/micro/tooltip.d.ts.map +1 -1
- package/dist/dev/App.d.ts.map +1 -1
- package/dist/dev/data.d.ts.map +1 -1
- package/dist/dev/showcase/accordion.d.ts.map +1 -1
- package/dist/dev/showcase/alert-dialog.d.ts.map +1 -1
- package/dist/dev/showcase/alert.d.ts.map +1 -1
- package/dist/dev/showcase/aspect-ratio.d.ts.map +1 -1
- package/dist/dev/showcase/avatar.d.ts.map +1 -1
- package/dist/dev/showcase/badge.d.ts.map +1 -1
- package/dist/dev/showcase/breadcrumb.d.ts.map +1 -1
- package/dist/dev/showcase/button.d.ts.map +1 -1
- package/dist/dev/showcase/calendar.d.ts.map +1 -1
- package/dist/dev/showcase/card.d.ts.map +1 -1
- package/dist/dev/showcase/carousel.d.ts.map +1 -1
- package/dist/dev/showcase/chart.d.ts.map +1 -1
- package/dist/dev/showcase/checkbox.d.ts.map +1 -1
- package/dist/dev/showcase/collapsible.d.ts.map +1 -1
- package/dist/dev/showcase/combobox.d.ts.map +1 -1
- package/dist/dev/showcase/command.d.ts.map +1 -1
- package/dist/dev/showcase/context-menu.d.ts.map +1 -1
- package/dist/dev/showcase/dialog.d.ts.map +1 -1
- package/dist/dev/showcase/drawer.d.ts.map +1 -1
- package/dist/dev/showcase/dropdown-menu.d.ts.map +1 -1
- package/dist/dev/showcase/empty.d.ts.map +1 -1
- package/dist/dev/showcase/hover-card.d.ts.map +1 -1
- package/dist/dev/showcase/input-group.d.ts.map +1 -1
- package/dist/dev/showcase/input-otp.d.ts.map +1 -1
- package/dist/dev/showcase/input.d.ts.map +1 -1
- package/dist/dev/showcase/item.d.ts.map +1 -1
- package/dist/dev/showcase/kbd.d.ts.map +1 -1
- package/dist/dev/showcase/label.d.ts.map +1 -1
- package/dist/dev/showcase/menubar.d.ts.map +1 -1
- package/dist/dev/showcase/navigation-menu.d.ts.map +1 -1
- package/dist/dev/showcase/overview.d.ts.map +1 -1
- package/dist/dev/showcase/pagination.d.ts.map +1 -1
- package/dist/dev/showcase/popover.d.ts.map +1 -1
- package/dist/dev/showcase/progress.d.ts.map +1 -1
- package/dist/dev/showcase/radio-group.d.ts.map +1 -1
- package/dist/dev/showcase/resizable.d.ts.map +1 -1
- package/dist/dev/showcase/scroll-area.d.ts.map +1 -1
- package/dist/dev/showcase/select.d.ts.map +1 -1
- package/dist/dev/showcase/separator.d.ts.map +1 -1
- package/dist/dev/showcase/sheet.d.ts.map +1 -1
- package/dist/dev/showcase/sidebar.d.ts.map +1 -1
- package/dist/dev/showcase/skeleton.d.ts.map +1 -1
- package/dist/dev/showcase/slider.d.ts.map +1 -1
- package/dist/dev/showcase/sonner.d.ts.map +1 -1
- package/dist/dev/showcase/spinner.d.ts.map +1 -1
- package/dist/dev/showcase/switch.d.ts.map +1 -1
- package/dist/dev/showcase/table.d.ts.map +1 -1
- package/dist/dev/showcase/tabs.d.ts.map +1 -1
- package/dist/dev/showcase/textarea.d.ts.map +1 -1
- package/dist/dev/showcase/toast.d.ts.map +1 -1
- package/dist/dev/showcase/toggle-group.d.ts.map +1 -1
- package/dist/dev/showcase/toggle.d.ts.map +1 -1
- package/dist/dev/showcase/tooltip.d.ts.map +1 -1
- package/dist/index.cjs +256 -256
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +257 -244
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
- package/src/components/macro/accordion-preset.test.tsx +1 -2
- package/src/components/macro/accordion-preset.tsx +1 -2
- package/src/components/macro/alert-dialog-preset.tsx +7 -12
- package/src/components/macro/alert-preset.tsx +1 -2
- package/src/components/macro/avatar-preset.tsx +2 -4
- package/src/components/macro/breadcrumb-preset.tsx +1 -2
- package/src/components/macro/card-preset.tsx +1 -2
- package/src/components/macro/carousel-preset.tsx +1 -2
- package/src/components/macro/checkbox-preset.tsx +1 -2
- package/src/components/macro/combobox-preset.tsx +8 -14
- package/src/components/macro/command-preset.tsx +18 -24
- package/src/components/macro/date-picker.tsx +14 -23
- package/src/components/macro/dialog-preset.tsx +45 -49
- package/src/components/macro/empty-preset.tsx +2 -4
- package/src/components/macro/field-preset.tsx +1 -2
- package/src/components/macro/input-otp-preset.tsx +1 -2
- package/src/components/macro/input-preset.tsx +1 -2
- package/src/components/macro/pagination-preset.tsx +3 -6
- package/src/components/macro/progress-preset.tsx +1 -2
- package/src/components/macro/radio-group-preset.tsx +2 -4
- package/src/components/macro/select-preset.tsx +7 -12
- package/src/components/macro/slider-preset.tsx +1 -2
- package/src/components/macro/switch-preset.tsx +1 -2
- package/src/components/macro/tabs-preset.tsx +1 -2
- package/src/components/micro/alert-dialog.tsx +16 -14
- package/src/components/micro/combobox.tsx +28 -22
- package/src/components/micro/context-menu.tsx +52 -36
- package/src/components/micro/dialog.tsx +23 -19
- package/src/components/micro/drawer.tsx +23 -19
- package/src/components/micro/dropdown-menu.tsx +23 -18
- package/src/components/micro/hover-card.tsx +31 -23
- package/src/components/micro/menubar.tsx +0 -8
- package/src/components/micro/navigation-menu.tsx +26 -19
- package/src/components/micro/popover.tsx +31 -25
- package/src/components/micro/select.tsx +36 -29
- package/src/components/micro/sheet.tsx +36 -31
- package/src/components/micro/tooltip.tsx +28 -23
- package/src/dev/App.tsx +36 -10
- package/src/dev/data.ts +0 -8
- package/src/dev/showcase/accordion.tsx +47 -94
- package/src/dev/showcase/alert-dialog.tsx +27 -39
- package/src/dev/showcase/alert.tsx +5 -10
- package/src/dev/showcase/aspect-ratio.tsx +1 -2
- package/src/dev/showcase/avatar.tsx +5 -10
- package/src/dev/showcase/badge.tsx +2 -4
- package/src/dev/showcase/breadcrumb.tsx +8 -11
- package/src/dev/showcase/button.tsx +2 -4
- package/src/dev/showcase/calendar.tsx +5 -10
- package/src/dev/showcase/card.tsx +4 -8
- package/src/dev/showcase/carousel.tsx +40 -80
- package/src/dev/showcase/chart.tsx +7 -16
- package/src/dev/showcase/checkbox.tsx +7 -14
- package/src/dev/showcase/collapsible.tsx +3 -6
- package/src/dev/showcase/combobox.tsx +27 -43
- package/src/dev/showcase/command.tsx +4 -8
- package/src/dev/showcase/context-menu.tsx +13 -19
- package/src/dev/showcase/dialog.tsx +19 -33
- package/src/dev/showcase/drawer.tsx +19 -27
- package/src/dev/showcase/dropdown-menu.tsx +19 -29
- package/src/dev/showcase/empty.tsx +3 -6
- package/src/dev/showcase/hover-card.tsx +24 -36
- package/src/dev/showcase/input-group.tsx +4 -8
- package/src/dev/showcase/input-otp.tsx +5 -10
- package/src/dev/showcase/input.tsx +5 -10
- package/src/dev/showcase/item.tsx +3 -6
- package/src/dev/showcase/kbd.tsx +12 -16
- package/src/dev/showcase/label.tsx +2 -4
- package/src/dev/showcase/menubar.tsx +17 -19
- package/src/dev/showcase/navigation-menu.tsx +12 -15
- package/src/dev/showcase/overview.tsx +17 -30
- package/src/dev/showcase/pagination.tsx +4 -8
- package/src/dev/showcase/popover.tsx +21 -27
- package/src/dev/showcase/progress.tsx +4 -8
- package/src/dev/showcase/radio-group.tsx +8 -16
- package/src/dev/showcase/resizable.tsx +2 -4
- package/src/dev/showcase/scroll-area.tsx +1 -2
- package/src/dev/showcase/select.tsx +27 -39
- package/src/dev/showcase/separator.tsx +1 -2
- package/src/dev/showcase/sheet.tsx +22 -33
- package/src/dev/showcase/sidebar.tsx +2 -4
- package/src/dev/showcase/skeleton.tsx +1 -2
- package/src/dev/showcase/slider.tsx +5 -10
- package/src/dev/showcase/sonner.tsx +18 -38
- package/src/dev/showcase/spinner.tsx +2 -4
- package/src/dev/showcase/switch.tsx +6 -12
- package/src/dev/showcase/table.tsx +3 -6
- package/src/dev/showcase/tabs.tsx +20 -40
- package/src/dev/showcase/textarea.tsx +5 -10
- package/src/dev/showcase/toast.tsx +4 -10
- package/src/dev/showcase/toggle-group.tsx +4 -8
- package/src/dev/showcase/toggle.tsx +2 -4
- package/src/dev/showcase/tooltip.tsx +34 -43
- package/dist/dev/showcase/theme-provider.d.ts +0 -2
- package/dist/dev/showcase/theme-provider.d.ts.map +0 -1
- package/src/dev/showcase/theme-provider.tsx +0 -956
package/dist/index.js
CHANGED
|
@@ -533,6 +533,97 @@ var ButtonIcon = React.forwardRef(function ButtonIcon({ className, render, ...pr
|
|
|
533
533
|
});
|
|
534
534
|
ButtonIcon.displayName = "ButtonIcon";
|
|
535
535
|
//#endregion
|
|
536
|
+
//#region src/components/micro/theme-provider.tsx
|
|
537
|
+
/**
|
|
538
|
+
* ThemeProvider — Micro primitive.
|
|
539
|
+
*
|
|
540
|
+
* Supports both **uncontrolled** and **controlled** modes:
|
|
541
|
+
*
|
|
542
|
+
* - **Uncontrolled**: pass `defaultMode` (optional). Internal state manages
|
|
543
|
+
* the current mode. Children call `setMode()` via `useTheme()`.
|
|
544
|
+
* - **Controlled**: pass `mode` + `onModeChange`. The caller owns the state;
|
|
545
|
+
* `setMode()` inside the context delegates to `onModeChange`.
|
|
546
|
+
*
|
|
547
|
+
* Does NOT read localStorage, system preference, or sync to <html>.
|
|
548
|
+
* All of that belongs to Macro layer (e.g. a ThemeManager preset).
|
|
549
|
+
*/
|
|
550
|
+
var ThemeContext = React.createContext(void 0);
|
|
551
|
+
/**
|
|
552
|
+
* Read and control the nearest ThemeProvider.
|
|
553
|
+
* Returns `undefined` when no provider is found in the tree.
|
|
554
|
+
*
|
|
555
|
+
* @example
|
|
556
|
+
* ```tsx
|
|
557
|
+
* const theme = useTheme();
|
|
558
|
+
* theme?.setMode("dark");
|
|
559
|
+
* console.log(theme?.mode); // "light" | "dark"
|
|
560
|
+
* ```
|
|
561
|
+
*/
|
|
562
|
+
function useTheme() {
|
|
563
|
+
return React.useContext(ThemeContext);
|
|
564
|
+
}
|
|
565
|
+
/**
|
|
566
|
+
* ThemeProvider — wraps children in a `display: contents` div with the
|
|
567
|
+
* `.dark` or `.light` class applied, enabling CSS variable cascade without
|
|
568
|
+
* affecting layout.
|
|
569
|
+
*
|
|
570
|
+
* @example Uncontrolled
|
|
571
|
+
* ```tsx
|
|
572
|
+
* <ThemeProvider defaultMode="dark">
|
|
573
|
+
* <App />
|
|
574
|
+
* </ThemeProvider>
|
|
575
|
+
* ```
|
|
576
|
+
*
|
|
577
|
+
* @example Controlled
|
|
578
|
+
* ```tsx
|
|
579
|
+
* const [mode, setMode] = useState<ThemeMode>("light");
|
|
580
|
+
*
|
|
581
|
+
* <ThemeProvider mode={mode} onModeChange={setMode}>
|
|
582
|
+
* <App />
|
|
583
|
+
* </ThemeProvider>
|
|
584
|
+
* ```
|
|
585
|
+
*/
|
|
586
|
+
function ThemeProvider({ children, defaultMode, mode: controlledMode, onModeChange }) {
|
|
587
|
+
const isControlled = controlledMode !== void 0;
|
|
588
|
+
const [internalMode, setInternalMode] = React.useState(defaultMode ?? "light");
|
|
589
|
+
const mode = isControlled ? controlledMode : internalMode;
|
|
590
|
+
const setMode = React.useCallback((next) => {
|
|
591
|
+
if (isControlled) onModeChange(next);
|
|
592
|
+
else setInternalMode(next);
|
|
593
|
+
}, [isControlled, onModeChange]);
|
|
594
|
+
const value = React.useMemo(() => ({
|
|
595
|
+
mode,
|
|
596
|
+
setMode
|
|
597
|
+
}), [mode, setMode]);
|
|
598
|
+
return /* @__PURE__ */ jsx(ThemeContext.Provider, {
|
|
599
|
+
value,
|
|
600
|
+
children: /* @__PURE__ */ jsx("div", {
|
|
601
|
+
className: mode,
|
|
602
|
+
style: { display: "contents" },
|
|
603
|
+
children
|
|
604
|
+
})
|
|
605
|
+
});
|
|
606
|
+
}
|
|
607
|
+
ThemeProvider.displayName = "ThemeProvider";
|
|
608
|
+
/**
|
|
609
|
+
* ThemeWrapper — re-applies the current theme class inside a Portal.
|
|
610
|
+
* Used internally by Dialog, Tooltip, Popover, etc. to tunnel the theme
|
|
611
|
+
* across the Portal boundary.
|
|
612
|
+
*
|
|
613
|
+
* Falls back gracefully (renders children as-is) when no ThemeProvider
|
|
614
|
+
* is found in the tree.
|
|
615
|
+
*/
|
|
616
|
+
function ThemeWrapper({ children }) {
|
|
617
|
+
const theme = useTheme();
|
|
618
|
+
if (!theme) return /* @__PURE__ */ jsx(Fragment, { children });
|
|
619
|
+
return /* @__PURE__ */ jsx("div", {
|
|
620
|
+
className: theme.mode,
|
|
621
|
+
style: { display: "contents" },
|
|
622
|
+
children
|
|
623
|
+
});
|
|
624
|
+
}
|
|
625
|
+
ThemeWrapper.displayName = "ThemeWrapper";
|
|
626
|
+
//#endregion
|
|
536
627
|
//#region src/components/micro/alert-dialog.tsx
|
|
537
628
|
/**
|
|
538
629
|
* @description A modal dialog that interrupts the user with important content and expects a response.
|
|
@@ -564,7 +655,6 @@ function AlertDialogClose({ ...props }) {
|
|
|
564
655
|
...props
|
|
565
656
|
});
|
|
566
657
|
}
|
|
567
|
-
var AlertDialogPortal = AlertDialog$1.Portal;
|
|
568
658
|
function AlertDialogOverlay({ className, ...props }) {
|
|
569
659
|
return /* @__PURE__ */ jsx(AlertDialog$1.Backdrop, {
|
|
570
660
|
"data-slot": "alert-dialog-overlay",
|
|
@@ -572,14 +662,17 @@ function AlertDialogOverlay({ className, ...props }) {
|
|
|
572
662
|
...props
|
|
573
663
|
});
|
|
574
664
|
}
|
|
575
|
-
|
|
576
|
-
|
|
665
|
+
var AlertDialogContent = React.forwardRef(({ className, container, size = "md", ...props }, ref) => /* @__PURE__ */ jsx(AlertDialog$1.Portal, {
|
|
666
|
+
container,
|
|
667
|
+
children: /* @__PURE__ */ jsxs(ThemeWrapper, { children: [/* @__PURE__ */ jsx(AlertDialogOverlay, {}), /* @__PURE__ */ jsx(AlertDialog$1.Popup, {
|
|
668
|
+
ref,
|
|
577
669
|
"data-slot": "alert-dialog-content",
|
|
578
670
|
"data-size": size,
|
|
579
671
|
className: cn("group/alert-dialog-content fixed top-1/2 left-1/2 z-50 grid w-full -translate-x-1/2 -translate-y-1/2 gap-4 rounded-xl bg-popover p-4 text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none", "data-[size=sm]:max-w-xs", "data-[size=md]:max-w-xs data-[size=md]:sm:max-w-sm", "data-[size=lg]:max-w-sm data-[size=lg]:sm:max-w-md", "data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95", className),
|
|
580
672
|
...props
|
|
581
|
-
})] })
|
|
582
|
-
}
|
|
673
|
+
})] })
|
|
674
|
+
}));
|
|
675
|
+
AlertDialogContent.displayName = "AlertDialogContent";
|
|
583
676
|
function AlertDialogHeader({ className, ...props }) {
|
|
584
677
|
return /* @__PURE__ */ jsx("div", {
|
|
585
678
|
"data-slot": "alert-dialog-header",
|
|
@@ -1048,7 +1141,6 @@ var SelectValue = React.forwardRef(({ className, ...props }, ref) => /* @__PURE_
|
|
|
1048
1141
|
...props
|
|
1049
1142
|
}));
|
|
1050
1143
|
SelectValue.displayName = "SelectValue";
|
|
1051
|
-
var SelectPortal = Select$1.Portal;
|
|
1052
1144
|
var selectTriggerVariants = cva("inline-flex items-center justify-between rounded-lg border border-input bg-transparent text-foreground text-sm whitespace-nowrap transition-colors outline-none select-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-offset-1 focus-visible:ring-offset-background disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:focus-visible:ring-3 aria-invalid:focus-visible:ring-destructive/50 data-placeholder:text-muted-foreground [&_[data-slot=select-value]]:line-clamp-1 [&_[data-slot=select-value]]:flex [&_[data-slot=select-value]]:items-center [&>svg]:pointer-events-none [&>svg]:shrink-0 [&>svg:not([class*='size-'])]:size-4 dark:bg-input/30 dark:aria-invalid:border-destructive/50 dark:aria-invalid:focus-visible:ring-destructive/50", { variants: { size: {
|
|
1053
1145
|
sm: "h-7 gap-1 px-2 py-0.5 text-xs [&_[data-slot=select-value]]:gap-1",
|
|
1054
1146
|
md: "h-8 gap-1.5 px-2.5 py-1 text-sm [&_[data-slot=select-value]]:gap-1.5",
|
|
@@ -1065,25 +1157,28 @@ var SelectTrigger = React.forwardRef(({ className, size = "md", children, ...pro
|
|
|
1065
1157
|
children: [children, /* @__PURE__ */ jsx(Select$1.Icon, { render: /* @__PURE__ */ jsx(ChevronDownIcon, { className: "pointer-events-none size-4 text-muted-foreground" }) })]
|
|
1066
1158
|
}));
|
|
1067
1159
|
SelectTrigger.displayName = "SelectTrigger";
|
|
1068
|
-
var SelectContent = React.forwardRef(({ className, children, side = "bottom", sideOffset = 4, align = "center", alignOffset = 0, alignItemWithTrigger = false, ...props }, ref) => /* @__PURE__ */ jsx(Select$1.
|
|
1069
|
-
|
|
1070
|
-
|
|
1071
|
-
|
|
1072
|
-
|
|
1073
|
-
|
|
1074
|
-
|
|
1075
|
-
|
|
1076
|
-
|
|
1077
|
-
|
|
1078
|
-
|
|
1079
|
-
|
|
1080
|
-
|
|
1081
|
-
|
|
1082
|
-
|
|
1083
|
-
|
|
1084
|
-
|
|
1085
|
-
|
|
1086
|
-
|
|
1160
|
+
var SelectContent = React.forwardRef(({ className, children, side = "bottom", sideOffset = 4, align = "center", alignOffset = 0, alignItemWithTrigger = false, container, ...props }, ref) => /* @__PURE__ */ jsx(Select$1.Portal, {
|
|
1161
|
+
container,
|
|
1162
|
+
children: /* @__PURE__ */ jsx(ThemeWrapper, { children: /* @__PURE__ */ jsx(Select$1.Positioner, {
|
|
1163
|
+
side,
|
|
1164
|
+
sideOffset,
|
|
1165
|
+
align,
|
|
1166
|
+
alignOffset,
|
|
1167
|
+
alignItemWithTrigger,
|
|
1168
|
+
className: "isolate z-50",
|
|
1169
|
+
children: /* @__PURE__ */ jsxs(Select$1.Popup, {
|
|
1170
|
+
ref,
|
|
1171
|
+
"data-slot": "select-content",
|
|
1172
|
+
"data-align-trigger": alignItemWithTrigger,
|
|
1173
|
+
className: cn("relative isolate z-50 max-h-(--available-height) w-[calc(var(--anchor-width)+8px)] overflow-x-hidden overflow-y-auto rounded-lg bg-popover p-1 text-popover-foreground shadow-md ring-1 ring-foreground/10 data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95", alignItemWithTrigger ? "origin-(--transform-origin) data-[align-trigger=true]:animate-none" : "", className),
|
|
1174
|
+
...props,
|
|
1175
|
+
children: [
|
|
1176
|
+
/* @__PURE__ */ jsx(SelectScrollUpButton, {}),
|
|
1177
|
+
/* @__PURE__ */ jsx(Select$1.List, { children }),
|
|
1178
|
+
/* @__PURE__ */ jsx(SelectScrollDownButton, {})
|
|
1179
|
+
]
|
|
1180
|
+
})
|
|
1181
|
+
}) })
|
|
1087
1182
|
}));
|
|
1088
1183
|
SelectContent.displayName = "SelectContent";
|
|
1089
1184
|
var SelectLabel = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(Select$1.GroupLabel, {
|
|
@@ -2006,22 +2101,24 @@ function ComboboxInput({ className, ...props }) {
|
|
|
2006
2101
|
...props
|
|
2007
2102
|
});
|
|
2008
2103
|
}
|
|
2009
|
-
var ComboboxContent = React.forwardRef(({ className, side = "bottom", sideOffset = 4, align = "start", alignOffset = 0, anchor, ...props }, ref) => {
|
|
2104
|
+
var ComboboxContent = React.forwardRef(({ className, side = "bottom", sideOffset = 4, align = "start", alignOffset = 0, anchor, container, ...props }, ref) => {
|
|
2010
2105
|
const { anchor: contextAnchor } = React.useContext(ComboboxContext);
|
|
2011
|
-
return /* @__PURE__ */ jsx(Combobox$1.
|
|
2012
|
-
|
|
2013
|
-
|
|
2014
|
-
|
|
2015
|
-
|
|
2016
|
-
|
|
2017
|
-
|
|
2018
|
-
|
|
2019
|
-
|
|
2020
|
-
|
|
2021
|
-
|
|
2022
|
-
|
|
2023
|
-
|
|
2024
|
-
|
|
2106
|
+
return /* @__PURE__ */ jsx(Combobox$1.Portal, {
|
|
2107
|
+
container,
|
|
2108
|
+
children: /* @__PURE__ */ jsx(ThemeWrapper, { children: /* @__PURE__ */ jsx(Combobox$1.Positioner, {
|
|
2109
|
+
side,
|
|
2110
|
+
sideOffset,
|
|
2111
|
+
align,
|
|
2112
|
+
alignOffset,
|
|
2113
|
+
anchor: anchor || contextAnchor,
|
|
2114
|
+
className: "isolate z-50",
|
|
2115
|
+
children: /* @__PURE__ */ jsx(Combobox$1.Popup, {
|
|
2116
|
+
ref,
|
|
2117
|
+
"data-slot": "combobox-content",
|
|
2118
|
+
className: cn("group/combobox-content relative max-h-(--available-height) min-w-(--anchor-width) max-w-(--available-width) origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-lg bg-popover text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 p-1 data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 [&_[data-slot=input-group]]:mb-1 [&_[data-slot=input-group]]:w-full [&_[data-slot=input-group]]:border-input/30 [&_[data-slot=input-group]]:bg-input/30 [&_[data-slot=input-group]]:shadow-none data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95", className),
|
|
2119
|
+
...props
|
|
2120
|
+
})
|
|
2121
|
+
}) })
|
|
2025
2122
|
});
|
|
2026
2123
|
});
|
|
2027
2124
|
ComboboxContent.displayName = "ComboboxContent";
|
|
@@ -2077,7 +2174,6 @@ function ComboboxSeparator({ className, ...props }) {
|
|
|
2077
2174
|
...props
|
|
2078
2175
|
});
|
|
2079
2176
|
}
|
|
2080
|
-
var ComboboxPortal = Combobox$1.Portal;
|
|
2081
2177
|
var comboboxChipsVariants = cva("group/combobox-chips flex flex-wrap items-center gap-1 rounded-lg border border-input bg-transparent bg-clip-padding transition-colors focus-within:border-ring focus-within:ring-3 focus-within:ring-ring/50 has-aria-invalid:border-destructive has-aria-invalid:focus-within:ring-3 has-aria-invalid:focus-within:ring-destructive/20 has-[[data-slot=combobox-chip]]:px-1 dark:bg-input/30 dark:has-aria-invalid:border-destructive/50 dark:has-aria-invalid:focus-within:ring-destructive/40 has-disabled:opacity-50 has-disabled:cursor-not-allowed has-disabled:pointer-events-none", { variants: { size: {
|
|
2082
2178
|
sm: "chips-sm min-h-7 px-2 py-0.5 text-xs",
|
|
2083
2179
|
md: "chips-md min-h-8 px-2.5 py-1 text-sm",
|
|
@@ -2271,8 +2367,6 @@ function ContextMenu({ ...props }) {
|
|
|
2271
2367
|
});
|
|
2272
2368
|
}
|
|
2273
2369
|
ContextMenu.displayName = "ContextMenu";
|
|
2274
|
-
var ContextMenuPortal = ContextMenu$1.Portal;
|
|
2275
|
-
ContextMenuPortal.displayName = "ContextMenuPortal";
|
|
2276
2370
|
var ContextMenuTrigger = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(ContextMenu$1.Trigger, {
|
|
2277
2371
|
ref,
|
|
2278
2372
|
"data-slot": "context-menu-trigger",
|
|
@@ -2280,20 +2374,25 @@ var ContextMenuTrigger = React.forwardRef(({ className, ...props }, ref) => /* @
|
|
|
2280
2374
|
...props
|
|
2281
2375
|
}));
|
|
2282
2376
|
ContextMenuTrigger.displayName = "ContextMenuTrigger";
|
|
2283
|
-
|
|
2284
|
-
return /* @__PURE__ */ jsx(
|
|
2285
|
-
|
|
2286
|
-
|
|
2287
|
-
|
|
2288
|
-
|
|
2289
|
-
|
|
2290
|
-
|
|
2291
|
-
|
|
2292
|
-
|
|
2293
|
-
|
|
2294
|
-
|
|
2295
|
-
|
|
2296
|
-
|
|
2377
|
+
var ContextMenuContent = React.forwardRef(({ className, align = "start", alignOffset = 0, side = "right", sideOffset = 4, container, children, ...props }, ref) => {
|
|
2378
|
+
return /* @__PURE__ */ jsx(ContextMenu$1.Portal, {
|
|
2379
|
+
container,
|
|
2380
|
+
children: /* @__PURE__ */ jsx(ThemeWrapper, { children: /* @__PURE__ */ jsx(ContextMenu$1.Positioner, {
|
|
2381
|
+
align,
|
|
2382
|
+
alignOffset,
|
|
2383
|
+
side,
|
|
2384
|
+
sideOffset,
|
|
2385
|
+
className: "isolate z-50 outline-none",
|
|
2386
|
+
children: /* @__PURE__ */ jsx(ContextMenu$1.Popup, {
|
|
2387
|
+
ref,
|
|
2388
|
+
"data-slot": "context-menu-content",
|
|
2389
|
+
className: cn("z-50 min-w-[8rem] origin-(--transform-origin) overflow-hidden rounded-lg border bg-popover p-1 text-popover-foreground shadow-md duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95", className),
|
|
2390
|
+
...props,
|
|
2391
|
+
children
|
|
2392
|
+
})
|
|
2393
|
+
}) })
|
|
2394
|
+
});
|
|
2395
|
+
});
|
|
2297
2396
|
ContextMenuContent.displayName = "ContextMenuContent";
|
|
2298
2397
|
function ContextMenuGroup({ ...props }) {
|
|
2299
2398
|
return /* @__PURE__ */ jsx(ContextMenu$1.Group, {
|
|
@@ -2411,7 +2510,6 @@ var DialogTrigger = React.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsx(
|
|
|
2411
2510
|
...props
|
|
2412
2511
|
}));
|
|
2413
2512
|
DialogTrigger.displayName = "DialogTrigger";
|
|
2414
|
-
var DialogPortal = Dialog$1.Portal;
|
|
2415
2513
|
var DialogClose = React.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsx(Dialog$1.Close, {
|
|
2416
2514
|
ref,
|
|
2417
2515
|
"data-slot": "dialog-close",
|
|
@@ -2425,13 +2523,16 @@ var DialogOverlay = React.forwardRef(({ className, ...props }, ref) => /* @__PUR
|
|
|
2425
2523
|
...props
|
|
2426
2524
|
}));
|
|
2427
2525
|
DialogOverlay.displayName = "DialogOverlay";
|
|
2428
|
-
var DialogContent = React.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */
|
|
2429
|
-
|
|
2430
|
-
|
|
2431
|
-
|
|
2432
|
-
|
|
2433
|
-
|
|
2434
|
-
|
|
2526
|
+
var DialogContent = React.forwardRef(({ className, children, container, ...props }, ref) => /* @__PURE__ */ jsx(Dialog$1.Portal, {
|
|
2527
|
+
container,
|
|
2528
|
+
children: /* @__PURE__ */ jsxs(ThemeWrapper, { children: [/* @__PURE__ */ jsx(DialogOverlay, {}), /* @__PURE__ */ jsx(Dialog$1.Popup, {
|
|
2529
|
+
ref,
|
|
2530
|
+
"data-slot": "dialog-content",
|
|
2531
|
+
className: cn("group/dialog-content fixed top-1/2 left-1/2 z-50 grid w-full max-w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 gap-4 rounded-xl bg-popover p-4 text-sm text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none max-h-[calc(100dvh-2rem)] sm:max-h-[calc(100dvh-4rem)] overflow-y-auto", "data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95", className),
|
|
2532
|
+
...props,
|
|
2533
|
+
children
|
|
2534
|
+
})] })
|
|
2535
|
+
}));
|
|
2435
2536
|
DialogContent.displayName = "DialogContent";
|
|
2436
2537
|
var DialogHeader = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx("div", {
|
|
2437
2538
|
ref,
|
|
@@ -2493,7 +2594,6 @@ var DrawerTrigger = React.forwardRef(({ className, ...props }, ref) => /* @__PUR
|
|
|
2493
2594
|
...props
|
|
2494
2595
|
}));
|
|
2495
2596
|
DrawerTrigger.displayName = "DrawerTrigger";
|
|
2496
|
-
var DrawerPortal = Drawer$1.Portal;
|
|
2497
2597
|
var DrawerClose = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(Drawer$1.Close, {
|
|
2498
2598
|
ref,
|
|
2499
2599
|
"data-slot": "drawer-close",
|
|
@@ -2507,15 +2607,15 @@ var DrawerOverlay = React.forwardRef(({ className, ...props }, ref) => /* @__PUR
|
|
|
2507
2607
|
...props
|
|
2508
2608
|
}));
|
|
2509
2609
|
DrawerOverlay.displayName = "DrawerOverlay";
|
|
2510
|
-
var DrawerContent = React.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */
|
|
2511
|
-
|
|
2512
|
-
children: [/* @__PURE__ */ jsx(DrawerOverlay, {}), /* @__PURE__ */ jsxs(Drawer$1.Content, {
|
|
2610
|
+
var DrawerContent = React.forwardRef(({ className, children, container, ...props }, ref) => /* @__PURE__ */ jsx(Drawer$1.Portal, {
|
|
2611
|
+
container,
|
|
2612
|
+
children: /* @__PURE__ */ jsxs(ThemeWrapper, { children: [/* @__PURE__ */ jsx(DrawerOverlay, {}), /* @__PURE__ */ jsxs(Drawer$1.Content, {
|
|
2513
2613
|
ref,
|
|
2514
2614
|
"data-slot": "drawer-content",
|
|
2515
2615
|
className: cn("group/drawer-content fixed z-50 flex h-auto flex-col bg-popover text-sm text-popover-foreground data-[vaul-drawer-direction=bottom]:inset-x-0 data-[vaul-drawer-direction=bottom]:bottom-0 data-[vaul-drawer-direction=bottom]:mt-24 data-[vaul-drawer-direction=bottom]:max-h-[80vh] data-[vaul-drawer-direction=bottom]:rounded-t-xl data-[vaul-drawer-direction=bottom]:border-t data-[vaul-drawer-direction=left]:inset-y-0 data-[vaul-drawer-direction=left]:left-0 data-[vaul-drawer-direction=left]:w-3/4 data-[vaul-drawer-direction=left]:rounded-r-xl data-[vaul-drawer-direction=left]:border-r data-[vaul-drawer-direction=right]:inset-y-0 data-[vaul-drawer-direction=right]:right-0 data-[vaul-drawer-direction=right]:w-3/4 data-[vaul-drawer-direction=right]:rounded-l-xl data-[vaul-drawer-direction=right]:border-l data-[vaul-drawer-direction=top]:inset-x-0 data-[vaul-drawer-direction=top]:top-0 data-[vaul-drawer-direction=top]:mb-24 data-[vaul-drawer-direction=top]:max-h-[80vh] data-[vaul-drawer-direction=top]:rounded-b-xl data-[vaul-drawer-direction=top]:border-b data-[vaul-drawer-direction=left]:sm:max-w-sm data-[vaul-drawer-direction=right]:sm:max-w-sm", className),
|
|
2516
2616
|
...props,
|
|
2517
2617
|
children: [/* @__PURE__ */ jsx("div", { className: "mx-auto mt-4 hidden h-1 w-[100px] shrink-0 rounded-full bg-muted group-data-[vaul-drawer-direction=bottom]/drawer-content:block" }), children]
|
|
2518
|
-
})]
|
|
2618
|
+
})] })
|
|
2519
2619
|
}));
|
|
2520
2620
|
DrawerContent.displayName = "DrawerContent";
|
|
2521
2621
|
var DrawerHeader = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx("div", {
|
|
@@ -2562,29 +2662,29 @@ function DropdownMenu({ ...props }) {
|
|
|
2562
2662
|
});
|
|
2563
2663
|
}
|
|
2564
2664
|
DropdownMenu.displayName = "DropdownMenu";
|
|
2565
|
-
var DropdownMenuPortal = Menu.Portal;
|
|
2566
|
-
DropdownMenuPortal.displayName = "DropdownMenuPortal";
|
|
2567
2665
|
var DropdownMenuTrigger = React.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsx(Menu.Trigger, {
|
|
2568
2666
|
ref,
|
|
2569
2667
|
"data-slot": "dropdown-menu-trigger",
|
|
2570
2668
|
...props
|
|
2571
2669
|
}));
|
|
2572
2670
|
DropdownMenuTrigger.displayName = "DropdownMenuTrigger";
|
|
2573
|
-
var DropdownMenuContent = React.forwardRef(({
|
|
2574
|
-
|
|
2575
|
-
|
|
2671
|
+
var DropdownMenuContent = React.forwardRef(({ className, sideOffset = 4, side = "bottom", align = "start", alignOffset = 0, container, children, ...props }, ref) => /* @__PURE__ */ jsx(Menu.Portal, {
|
|
2672
|
+
container,
|
|
2673
|
+
children: /* @__PURE__ */ jsx(ThemeWrapper, { children: /* @__PURE__ */ jsx(Menu.Positioner, {
|
|
2576
2674
|
align,
|
|
2577
2675
|
alignOffset,
|
|
2578
2676
|
side,
|
|
2579
2677
|
sideOffset,
|
|
2678
|
+
className: "isolate z-50 outline-none",
|
|
2580
2679
|
children: /* @__PURE__ */ jsx(Menu.Popup, {
|
|
2581
2680
|
ref,
|
|
2582
2681
|
"data-slot": "dropdown-menu-content",
|
|
2583
2682
|
className: cn("z-50 max-h-(--available-height) w-(--anchor-width) min-w-32 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-lg bg-popover p-1 text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 outline-none data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:overflow-hidden data-closed:fade-out-0 data-closed:zoom-out-95", className),
|
|
2584
|
-
...props
|
|
2683
|
+
...props,
|
|
2684
|
+
children
|
|
2585
2685
|
})
|
|
2586
|
-
}) })
|
|
2587
|
-
});
|
|
2686
|
+
}) })
|
|
2687
|
+
}));
|
|
2588
2688
|
DropdownMenuContent.displayName = "DropdownMenuContent";
|
|
2589
2689
|
var DropdownMenuGroup = React.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsx(Menu.Group, {
|
|
2590
2690
|
ref,
|
|
@@ -3029,20 +3129,22 @@ var HoverCardTrigger = React.forwardRef(({ ...props }, ref) => /* @__PURE__ */ j
|
|
|
3029
3129
|
...props
|
|
3030
3130
|
}));
|
|
3031
3131
|
HoverCardTrigger.displayName = "HoverCardTrigger";
|
|
3032
|
-
var
|
|
3033
|
-
|
|
3034
|
-
|
|
3035
|
-
|
|
3036
|
-
|
|
3037
|
-
|
|
3038
|
-
|
|
3039
|
-
|
|
3040
|
-
|
|
3041
|
-
|
|
3042
|
-
|
|
3043
|
-
|
|
3044
|
-
|
|
3045
|
-
|
|
3132
|
+
var HoverCardContent = React.forwardRef(({ className, side = "bottom", sideOffset = 4, align = "center", alignOffset = 4, container, ...props }, ref) => {
|
|
3133
|
+
return /* @__PURE__ */ jsx(PreviewCard.Portal, {
|
|
3134
|
+
container,
|
|
3135
|
+
children: /* @__PURE__ */ jsx(ThemeWrapper, { children: /* @__PURE__ */ jsx(PreviewCard.Positioner, {
|
|
3136
|
+
align,
|
|
3137
|
+
alignOffset,
|
|
3138
|
+
side,
|
|
3139
|
+
sideOffset,
|
|
3140
|
+
className: "isolate",
|
|
3141
|
+
children: /* @__PURE__ */ jsx(PreviewCard.Popup, {
|
|
3142
|
+
ref,
|
|
3143
|
+
"data-slot": "hover-card-content",
|
|
3144
|
+
className: cn("z-50 w-64 origin-(--transform-origin) rounded-lg bg-popover p-2.5 text-sm text-popover-foreground shadow-md ring-1 ring-foreground/10 outline-hidden duration-100", "data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2", "data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95 motion-reduce:animate-none motion-reduce:transition-none", className),
|
|
3145
|
+
...props
|
|
3146
|
+
})
|
|
3147
|
+
}) })
|
|
3046
3148
|
});
|
|
3047
3149
|
});
|
|
3048
3150
|
HoverCardContent.displayName = "HoverCardContent";
|
|
@@ -3313,12 +3415,6 @@ function MenubarGroup({ ...props }) {
|
|
|
3313
3415
|
...props
|
|
3314
3416
|
});
|
|
3315
3417
|
}
|
|
3316
|
-
function MenubarPortal({ ...props }) {
|
|
3317
|
-
return /* @__PURE__ */ jsx(DropdownMenuPortal, {
|
|
3318
|
-
"data-slot": "menubar-portal",
|
|
3319
|
-
...props
|
|
3320
|
-
});
|
|
3321
|
-
}
|
|
3322
3418
|
function MenubarTrigger({ className, ...props }) {
|
|
3323
3419
|
return /* @__PURE__ */ jsx(DropdownMenuTrigger, {
|
|
3324
3420
|
"data-slot": "menubar-trigger",
|
|
@@ -3489,19 +3585,22 @@ var NavigationMenuContent = React.forwardRef(({ className, ...props }, ref) => {
|
|
|
3489
3585
|
});
|
|
3490
3586
|
});
|
|
3491
3587
|
NavigationMenuContent.displayName = "NavigationMenuContent";
|
|
3492
|
-
var NavigationMenuPositioner = React.forwardRef(({ className, side = "bottom", sideOffset = 8, align = "start", alignOffset = 0, ...props }, ref) => {
|
|
3493
|
-
return /* @__PURE__ */ jsx(NavigationMenu$1.
|
|
3494
|
-
|
|
3495
|
-
|
|
3496
|
-
|
|
3497
|
-
|
|
3498
|
-
|
|
3499
|
-
|
|
3500
|
-
|
|
3501
|
-
|
|
3502
|
-
|
|
3503
|
-
children: /* @__PURE__ */ jsx(
|
|
3504
|
-
|
|
3588
|
+
var NavigationMenuPositioner = React.forwardRef(({ className, side = "bottom", sideOffset = 8, align = "start", alignOffset = 0, container, ...props }, ref) => {
|
|
3589
|
+
return /* @__PURE__ */ jsx(NavigationMenu$1.Portal, {
|
|
3590
|
+
container,
|
|
3591
|
+
children: /* @__PURE__ */ jsx(ThemeWrapper, { children: /* @__PURE__ */ jsx(NavigationMenu$1.Positioner, {
|
|
3592
|
+
ref,
|
|
3593
|
+
side,
|
|
3594
|
+
sideOffset,
|
|
3595
|
+
align,
|
|
3596
|
+
alignOffset,
|
|
3597
|
+
className: cn("isolate z-50 h-(--positioner-height) w-(--positioner-width) max-w-(--available-width) transition-[top,left,right,bottom] duration-[0.35s] ease-[cubic-bezier(0.22,1,0.36,1)] data-instant:transition-none data-[side=bottom]:before:top-[-10px] data-[side=bottom]:before:right-0 data-[side=bottom]:before:left-0", className),
|
|
3598
|
+
...props,
|
|
3599
|
+
children: /* @__PURE__ */ jsx(NavigationMenu$1.Popup, {
|
|
3600
|
+
className: "data-ending-style:easing-[ease] xs:w-(--popup-width) relative h-(--popup-height) w-(--popup-width) origin-(--transform-origin) rounded-lg bg-popover text-popover-foreground shadow ring-1 ring-foreground/10 transition-[opacity,transform,width,height,scale,translate] duration-[0.35s] ease-[cubic-bezier(0.22,1,0.36,1)] outline-none data-ending-style:scale-90 data-ending-style:opacity-0 data-ending-style:duration-150 data-starting-style:scale-90 data-starting-style:opacity-0",
|
|
3601
|
+
children: /* @__PURE__ */ jsx(NavigationMenuViewport, {})
|
|
3602
|
+
})
|
|
3603
|
+
}) })
|
|
3505
3604
|
});
|
|
3506
3605
|
});
|
|
3507
3606
|
NavigationMenuPositioner.displayName = "NavigationMenuPositioner";
|
|
@@ -3520,7 +3619,6 @@ var NavigationMenuLink = React.forwardRef(({ className, ...props }, ref) => {
|
|
|
3520
3619
|
});
|
|
3521
3620
|
});
|
|
3522
3621
|
NavigationMenuLink.displayName = "NavigationMenuLink";
|
|
3523
|
-
var NavigationMenuPortal = NavigationMenu$1.Portal;
|
|
3524
3622
|
//#endregion
|
|
3525
3623
|
//#region src/components/micro/pagination.tsx
|
|
3526
3624
|
var ellipsisSizeMap = {
|
|
@@ -3641,9 +3739,9 @@ var PopoverTrigger = React.forwardRef((props, ref) => {
|
|
|
3641
3739
|
});
|
|
3642
3740
|
});
|
|
3643
3741
|
PopoverTrigger.displayName = "PopoverTrigger";
|
|
3644
|
-
var
|
|
3645
|
-
|
|
3646
|
-
|
|
3742
|
+
var PopoverContent = React.forwardRef(({ className, align = "center", alignOffset = 0, side = "bottom", sideOffset = 4, container, children, ...props }, ref) => /* @__PURE__ */ jsx(Popover$1.Portal, {
|
|
3743
|
+
container,
|
|
3744
|
+
children: /* @__PURE__ */ jsx(ThemeWrapper, { children: /* @__PURE__ */ jsx(Popover$1.Positioner, {
|
|
3647
3745
|
align,
|
|
3648
3746
|
alignOffset,
|
|
3649
3747
|
side,
|
|
@@ -3653,10 +3751,11 @@ var PopoverContent = React.forwardRef(({ className, align = "center", alignOffse
|
|
|
3653
3751
|
ref,
|
|
3654
3752
|
"data-slot": "popover-content",
|
|
3655
3753
|
className: cn("flex origin-(--transform-origin) flex-col gap-2.5 rounded-lg bg-popover p-2.5 text-sm text-popover-foreground shadow-md ring-1 ring-foreground/10 outline-hidden duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95", className),
|
|
3656
|
-
...props
|
|
3754
|
+
...props,
|
|
3755
|
+
children
|
|
3657
3756
|
})
|
|
3658
|
-
})
|
|
3659
|
-
});
|
|
3757
|
+
}) })
|
|
3758
|
+
}));
|
|
3660
3759
|
PopoverContent.displayName = "PopoverContent";
|
|
3661
3760
|
var PopoverHeader = React.forwardRef(({ className, ...props }, ref) => {
|
|
3662
3761
|
return /* @__PURE__ */ jsx("div", {
|
|
@@ -3921,7 +4020,6 @@ function SheetClose({ ...props }) {
|
|
|
3921
4020
|
...props
|
|
3922
4021
|
});
|
|
3923
4022
|
}
|
|
3924
|
-
var SheetPortal = Dialog$1.Portal;
|
|
3925
4023
|
function SheetOverlay({ className, ...props }) {
|
|
3926
4024
|
return /* @__PURE__ */ jsx(Dialog$1.Backdrop, {
|
|
3927
4025
|
"data-slot": "sheet-overlay",
|
|
@@ -3929,25 +4027,29 @@ function SheetOverlay({ className, ...props }) {
|
|
|
3929
4027
|
...props
|
|
3930
4028
|
});
|
|
3931
4029
|
}
|
|
3932
|
-
function SheetContent({ className, children, side = "right", showCloseButton = true, ...props }) {
|
|
3933
|
-
return /* @__PURE__ */
|
|
3934
|
-
|
|
3935
|
-
|
|
3936
|
-
|
|
3937
|
-
|
|
3938
|
-
|
|
3939
|
-
|
|
3940
|
-
|
|
3941
|
-
|
|
3942
|
-
|
|
3943
|
-
|
|
3944
|
-
|
|
3945
|
-
|
|
3946
|
-
|
|
3947
|
-
|
|
4030
|
+
function SheetContent({ className, children, side = "right", showCloseButton = true, container, ...props }) {
|
|
4031
|
+
return /* @__PURE__ */ jsx(Dialog$1.Portal, {
|
|
4032
|
+
container,
|
|
4033
|
+
children: /* @__PURE__ */ jsxs(ThemeWrapper, { children: [/* @__PURE__ */ jsx(SheetOverlay, {}), /* @__PURE__ */ jsxs(Dialog$1.Popup, {
|
|
4034
|
+
"data-slot": "sheet-content",
|
|
4035
|
+
"data-side": side,
|
|
4036
|
+
className: cn("fixed z-50 flex flex-col gap-4 bg-popover bg-clip-padding text-sm 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 motion-reduce:transition-none", className),
|
|
4037
|
+
...props,
|
|
4038
|
+
children: [children, showCloseButton && /* @__PURE__ */ jsxs(Dialog$1.Close, {
|
|
4039
|
+
"data-slot": "sheet-close",
|
|
4040
|
+
render: /* @__PURE__ */ jsx(Button, {
|
|
4041
|
+
variant: "ghost",
|
|
4042
|
+
className: "absolute top-4 right-4",
|
|
4043
|
+
size: "sm",
|
|
4044
|
+
iconOnly: true
|
|
4045
|
+
}),
|
|
4046
|
+
children: [/* @__PURE__ */ jsx(XIcon, { "aria-hidden": "true" }), /* @__PURE__ */ jsx("span", {
|
|
4047
|
+
className: "sr-only",
|
|
4048
|
+
children: "Close"
|
|
4049
|
+
})]
|
|
3948
4050
|
})]
|
|
3949
|
-
})]
|
|
3950
|
-
})
|
|
4051
|
+
})] })
|
|
4052
|
+
});
|
|
3951
4053
|
}
|
|
3952
4054
|
function SheetHeader({ className, ...props }) {
|
|
3953
4055
|
return /* @__PURE__ */ jsx("div", {
|
|
@@ -4202,97 +4304,6 @@ function Spinner({ className, size = "md", ...props }) {
|
|
|
4202
4304
|
});
|
|
4203
4305
|
}
|
|
4204
4306
|
//#endregion
|
|
4205
|
-
//#region src/components/micro/theme-provider.tsx
|
|
4206
|
-
/**
|
|
4207
|
-
* ThemeProvider — Micro primitive.
|
|
4208
|
-
*
|
|
4209
|
-
* Supports both **uncontrolled** and **controlled** modes:
|
|
4210
|
-
*
|
|
4211
|
-
* - **Uncontrolled**: pass `defaultMode` (optional). Internal state manages
|
|
4212
|
-
* the current mode. Children call `setMode()` via `useTheme()`.
|
|
4213
|
-
* - **Controlled**: pass `mode` + `onModeChange`. The caller owns the state;
|
|
4214
|
-
* `setMode()` inside the context delegates to `onModeChange`.
|
|
4215
|
-
*
|
|
4216
|
-
* Does NOT read localStorage, system preference, or sync to <html>.
|
|
4217
|
-
* All of that belongs to Macro layer (e.g. a ThemeManager preset).
|
|
4218
|
-
*/
|
|
4219
|
-
var ThemeContext = React.createContext(void 0);
|
|
4220
|
-
/**
|
|
4221
|
-
* Read and control the nearest ThemeProvider.
|
|
4222
|
-
* Returns `undefined` when no provider is found in the tree.
|
|
4223
|
-
*
|
|
4224
|
-
* @example
|
|
4225
|
-
* ```tsx
|
|
4226
|
-
* const theme = useTheme();
|
|
4227
|
-
* theme?.setMode("dark");
|
|
4228
|
-
* console.log(theme?.mode); // "light" | "dark"
|
|
4229
|
-
* ```
|
|
4230
|
-
*/
|
|
4231
|
-
function useTheme() {
|
|
4232
|
-
return React.useContext(ThemeContext);
|
|
4233
|
-
}
|
|
4234
|
-
/**
|
|
4235
|
-
* ThemeProvider — wraps children in a `display: contents` div with the
|
|
4236
|
-
* `.dark` or `.light` class applied, enabling CSS variable cascade without
|
|
4237
|
-
* affecting layout.
|
|
4238
|
-
*
|
|
4239
|
-
* @example Uncontrolled
|
|
4240
|
-
* ```tsx
|
|
4241
|
-
* <ThemeProvider defaultMode="dark">
|
|
4242
|
-
* <App />
|
|
4243
|
-
* </ThemeProvider>
|
|
4244
|
-
* ```
|
|
4245
|
-
*
|
|
4246
|
-
* @example Controlled
|
|
4247
|
-
* ```tsx
|
|
4248
|
-
* const [mode, setMode] = useState<ThemeMode>("light");
|
|
4249
|
-
*
|
|
4250
|
-
* <ThemeProvider mode={mode} onModeChange={setMode}>
|
|
4251
|
-
* <App />
|
|
4252
|
-
* </ThemeProvider>
|
|
4253
|
-
* ```
|
|
4254
|
-
*/
|
|
4255
|
-
function ThemeProvider({ children, defaultMode, mode: controlledMode, onModeChange }) {
|
|
4256
|
-
const isControlled = controlledMode !== void 0;
|
|
4257
|
-
const [internalMode, setInternalMode] = React.useState(defaultMode ?? "light");
|
|
4258
|
-
const mode = isControlled ? controlledMode : internalMode;
|
|
4259
|
-
const setMode = React.useCallback((next) => {
|
|
4260
|
-
if (isControlled) onModeChange(next);
|
|
4261
|
-
else setInternalMode(next);
|
|
4262
|
-
}, [isControlled, onModeChange]);
|
|
4263
|
-
const value = React.useMemo(() => ({
|
|
4264
|
-
mode,
|
|
4265
|
-
setMode
|
|
4266
|
-
}), [mode, setMode]);
|
|
4267
|
-
return /* @__PURE__ */ jsx(ThemeContext.Provider, {
|
|
4268
|
-
value,
|
|
4269
|
-
children: /* @__PURE__ */ jsx("div", {
|
|
4270
|
-
className: mode,
|
|
4271
|
-
style: { display: "contents" },
|
|
4272
|
-
children
|
|
4273
|
-
})
|
|
4274
|
-
});
|
|
4275
|
-
}
|
|
4276
|
-
ThemeProvider.displayName = "ThemeProvider";
|
|
4277
|
-
/**
|
|
4278
|
-
* ThemeWrapper — re-applies the current theme class inside a Portal.
|
|
4279
|
-
* Used internally by Dialog, Tooltip, Popover, etc. to tunnel the theme
|
|
4280
|
-
* across the Portal boundary.
|
|
4281
|
-
*
|
|
4282
|
-
* Falls back gracefully (renders children as-is) when no ThemeProvider
|
|
4283
|
-
* is found in the tree.
|
|
4284
|
-
*/
|
|
4285
|
-
function ThemeWrapper({ children }) {
|
|
4286
|
-
const theme = useTheme();
|
|
4287
|
-
if (!theme) return /* @__PURE__ */ jsx(Fragment, { children });
|
|
4288
|
-
return /* @__PURE__ */ jsx("div", {
|
|
4289
|
-
className: theme.mode,
|
|
4290
|
-
style: { display: "contents" },
|
|
4291
|
-
children
|
|
4292
|
-
});
|
|
4293
|
-
}
|
|
4294
|
-
ThemeWrapper.displayName = "ThemeWrapper";
|
|
4295
|
-
//#endregion
|
|
4296
4307
|
//#region src/components/micro/sonner.tsx
|
|
4297
4308
|
/**
|
|
4298
4309
|
* ✅ AUDITED & REFACTORED
|
|
@@ -4716,25 +4727,27 @@ var TooltipTrigger = React.forwardRef((props, ref) => {
|
|
|
4716
4727
|
});
|
|
4717
4728
|
});
|
|
4718
4729
|
TooltipTrigger.displayName = "TooltipTrigger";
|
|
4719
|
-
var
|
|
4720
|
-
|
|
4721
|
-
|
|
4722
|
-
|
|
4723
|
-
|
|
4724
|
-
|
|
4725
|
-
|
|
4726
|
-
|
|
4727
|
-
|
|
4728
|
-
|
|
4729
|
-
|
|
4730
|
-
|
|
4731
|
-
|
|
4732
|
-
|
|
4733
|
-
|
|
4730
|
+
var TooltipContent = React.forwardRef(({ className, side = "top", sideOffset = 4, align = "center", alignOffset = 0, container, children, ...props }, ref) => {
|
|
4731
|
+
return /* @__PURE__ */ jsx(Tooltip$1.Portal, {
|
|
4732
|
+
container,
|
|
4733
|
+
children: /* @__PURE__ */ jsx(ThemeWrapper, { children: /* @__PURE__ */ jsx(Tooltip$1.Positioner, {
|
|
4734
|
+
align,
|
|
4735
|
+
alignOffset,
|
|
4736
|
+
side,
|
|
4737
|
+
sideOffset,
|
|
4738
|
+
className: "isolate z-50",
|
|
4739
|
+
children: /* @__PURE__ */ jsx(Tooltip$1.Popup, {
|
|
4740
|
+
ref,
|
|
4741
|
+
"data-slot": "tooltip-content",
|
|
4742
|
+
className: cn("z-50 inline-flex w-fit max-w-xs origin-(--transform-origin) items-center gap-1.5 rounded-md bg-foreground px-3 py-1.5 text-xs text-background data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95", className),
|
|
4743
|
+
...props,
|
|
4744
|
+
children
|
|
4745
|
+
})
|
|
4746
|
+
}) })
|
|
4734
4747
|
});
|
|
4735
4748
|
});
|
|
4736
4749
|
TooltipContent.displayName = "TooltipContent";
|
|
4737
4750
|
//#endregion
|
|
4738
|
-
export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, Alert, AlertAction, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogClose, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogMedia, AlertDialogOverlay,
|
|
4751
|
+
export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, Alert, AlertAction, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogClose, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogMedia, AlertDialogOverlay, AlertDialogTitle, AlertDialogTrigger, AlertIcon, AlertTitle, AspectRatio, Avatar, AvatarBadge, AvatarFallback, AvatarGroup, AvatarGroupCount, AvatarImage, Badge, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, Button, ButtonIcon, Calendar, CalendarDayButton, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Carousel, CarouselContent, CarouselDots, CarouselItem, CarouselNext, CarouselPrevious, ChartContainer, ChartLegend, ChartLegendContent, ChartStyle, ChartTooltip, ChartTooltipContent, Checkbox, CheckboxIndicator, Collapsible, CollapsibleContent, CollapsibleTrigger, Combobox, ComboboxAnchor, ComboboxChip, ComboboxChips, ComboboxChipsInput, ComboboxClear, ComboboxCollection, ComboboxContent, ComboboxEmpty, ComboboxGroup, ComboboxInput, ComboboxItem, ComboboxLabel, ComboboxList, ComboboxSeparator, ComboboxTrigger, ComboboxValue, Command, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuGroup, ContextMenuItem, ContextMenuLabel, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuShortcut, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogTitle, DialogTrigger, DirectionProvider, Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerTitle, DrawerTrigger, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, Empty, EmptyAction, EmptyContent, EmptyDescription, EmptyHeader, EmptyMedia, EmptyTitle, Field, FieldContent, FieldDescription, FieldError, FieldGroup, FieldLabel, FieldLegend, FieldSeparator, FieldSet, FieldTitle, HoverCard, HoverCardContent, HoverCardTrigger, Input, InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupText, InputGroupTextarea, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, Item, ItemActions, ItemContent, ItemDescription, ItemFooter, ItemGroup, ItemHeader, ItemMedia, ItemSeparator, ItemTitle, Kbd, KbdGroup, Label, Menubar, MenubarCheckboxItem, MenubarContent, MenubarGroup, MenubarItem, MenubarLabel, MenubarMenu, MenubarRadioGroup, MenubarRadioItem, MenubarSeparator, MenubarShortcut, MenubarSub, MenubarSubContent, MenubarSubTrigger, MenubarTrigger, NavigationMenu, NavigationMenuContent, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuPositioner, NavigationMenuTrigger, NavigationMenuViewport, Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, Popover, PopoverContent, PopoverDescription, PopoverHeader, PopoverTitle, PopoverTrigger, Progress, ProgressIndicator, ProgressLabel, ProgressTrack, ProgressValue, RadioGroup, RadioGroupItem, ResizableHandle, ResizablePanel, ResizablePanelGroup, ScrollArea, ScrollBar, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetTitle, SheetTrigger, Sidebar, SidebarLabel, SidebarLogo, SidebarMenuItem, SidebarMenuItemList, Skeleton, Slider, SliderControl, SliderIndicator, SliderThumb, SliderTrack, Spinner, Switch, SwitchThumb, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, Textarea, ThemeProvider, ThemeWrapper, Toaster, Toggle, ToggleGroup, ToggleGroupItem, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, badgeVariants, buttonVariants, cn, labelVariants, navigationMenuTriggerStyle, selectTriggerVariants, tabsListVariants, toggleVariants, useCarousel, useComboboxContext, useDirection, useIsMobile, useSidebarToggle, useTheme };
|
|
4739
4752
|
|
|
4740
4753
|
//# sourceMappingURL=index.js.map
|