@moontra/moonui 2.1.8 → 2.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +1579 -0
- package/dist/index.d.ts +1579 -0
- package/dist/index.js +378 -346
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +381 -348
- package/dist/index.mjs.map +1 -1
- package/package.json +4 -4
- package/src/components/ui/accordion.tsx +1 -1
- package/src/components/ui/alert.tsx +3 -3
- package/src/components/ui/aspect-ratio.tsx +1 -1
- package/src/components/ui/avatar.tsx +6 -6
- package/src/components/ui/badge.tsx +1 -1
- package/src/components/ui/breadcrumb.tsx +10 -10
- package/src/components/ui/button.tsx +48 -51
- package/src/components/ui/calendar.tsx +1 -1
- package/src/components/ui/card.tsx +7 -7
- package/src/components/ui/checkbox.tsx +1 -1
- package/src/components/ui/collapsible.tsx +3 -3
- package/src/components/ui/color-picker.tsx +2 -2
- package/src/components/ui/command.tsx +4 -4
- package/src/components/ui/data-table.tsx +1 -1
- package/src/components/ui/date-picker.tsx +9 -8
- package/src/components/ui/dialog.tsx +2 -2
- package/src/components/ui/draggable-list.tsx +1 -1
- package/src/components/ui/dropdown-menu.tsx +2 -2
- package/src/components/ui/file-upload.tsx +2 -2
- package/src/components/ui/github-stars.tsx +1 -1
- package/src/components/ui/index.ts +0 -2
- package/src/components/ui/input.tsx +1 -1
- package/src/components/ui/moon-logo.tsx +1 -1
- package/src/components/ui/pagination.tsx +8 -8
- package/src/components/ui/popover.tsx +3 -3
- package/src/components/ui/progress.tsx +1 -1
- package/src/components/ui/radio-group.tsx +1 -1
- package/src/components/ui/select.tsx +2 -2
- package/src/components/ui/skeleton.tsx +19 -7
- package/src/components/ui/slider.tsx +1 -1
- package/src/components/ui/switch.tsx +1 -1
- package/src/components/ui/table.tsx +5 -5
- package/src/components/ui/tabs.tsx +4 -1
- package/src/components/ui/textarea.tsx +1 -1
- package/src/components/ui/toast.tsx +3 -3
- package/src/components/ui/toggle.tsx +2 -3
- package/src/components/ui/tooltip.tsx +2 -5
- package/src/index.tsx +0 -1
- package/src/lib/micro-interactions.ts +2 -1
package/dist/index.js
CHANGED
|
@@ -8,7 +8,6 @@ var lucideReact = require('lucide-react');
|
|
|
8
8
|
var jsxRuntime = require('react/jsx-runtime');
|
|
9
9
|
var classVarianceAuthority = require('class-variance-authority');
|
|
10
10
|
var AvatarPrimitive = require('@radix-ui/react-avatar');
|
|
11
|
-
var dateFns = require('date-fns');
|
|
12
11
|
var framerMotion = require('framer-motion');
|
|
13
12
|
var CheckboxPrimitive = require('@radix-ui/react-checkbox');
|
|
14
13
|
require('react-dom');
|
|
@@ -19,6 +18,7 @@ var TabsPrimitive = require('@radix-ui/react-tabs');
|
|
|
19
18
|
var DialogPrimitive = require('@radix-ui/react-dialog');
|
|
20
19
|
var SelectPrimitive = require('@radix-ui/react-select');
|
|
21
20
|
var DropdownMenuPrimitive = require('@radix-ui/react-dropdown-menu');
|
|
21
|
+
var dateFns = require('date-fns');
|
|
22
22
|
var SeparatorPrimitive = require('@radix-ui/react-separator');
|
|
23
23
|
var TooltipPrimitive = require('@radix-ui/react-tooltip');
|
|
24
24
|
var SwitchPrimitives = require('@radix-ui/react-switch');
|
|
@@ -67,7 +67,7 @@ var AccordionItem = t__namespace.forwardRef(({ className, ...props }, ref) => /*
|
|
|
67
67
|
AccordionPrimitive__namespace.Item,
|
|
68
68
|
{
|
|
69
69
|
ref,
|
|
70
|
-
className: cn("border-b border-gray-200 dark:border-gray-800", className),
|
|
70
|
+
className: cn("moonui-theme", "border-b border-gray-200 dark:border-gray-800", className),
|
|
71
71
|
...props
|
|
72
72
|
}
|
|
73
73
|
));
|
|
@@ -161,7 +161,7 @@ var Alert = t__namespace.forwardRef(
|
|
|
161
161
|
{
|
|
162
162
|
ref,
|
|
163
163
|
role: "alert",
|
|
164
|
-
className: cn(alertVariants({ variant, size, radius, withClose: closable }), className),
|
|
164
|
+
className: cn("moonui-theme", alertVariants({ variant, size, radius, withClose: closable }), className),
|
|
165
165
|
...props,
|
|
166
166
|
children: [
|
|
167
167
|
!hideIcon && /* @__PURE__ */ jsxRuntime.jsx(Icon2, { className: "h-5 w-5" }),
|
|
@@ -185,7 +185,7 @@ var AlertTitle = t__namespace.forwardRef(({ className, ...props }, ref) => /* @_
|
|
|
185
185
|
"h5",
|
|
186
186
|
{
|
|
187
187
|
ref,
|
|
188
|
-
className: cn("font-semibold leading-tight tracking-tight mb-1", className),
|
|
188
|
+
className: cn("moonui-theme", "font-semibold leading-tight tracking-tight mb-1", className),
|
|
189
189
|
...props
|
|
190
190
|
}
|
|
191
191
|
));
|
|
@@ -194,7 +194,7 @@ var AlertDescription = t__namespace.forwardRef(({ className, ...props }, ref) =>
|
|
|
194
194
|
"div",
|
|
195
195
|
{
|
|
196
196
|
ref,
|
|
197
|
-
className: cn("text-sm leading-5 text-muted-foreground", className),
|
|
197
|
+
className: cn("moonui-theme", "text-sm leading-5 text-muted-foreground", className),
|
|
198
198
|
...props
|
|
199
199
|
}
|
|
200
200
|
));
|
|
@@ -226,7 +226,7 @@ var AspectRatio = t__namespace.forwardRef(({ className, variant, radius, ratio =
|
|
|
226
226
|
"div",
|
|
227
227
|
{
|
|
228
228
|
ref,
|
|
229
|
-
className: cn(aspectRatioVariants({ variant, radius }), className),
|
|
229
|
+
className: cn("moonui-theme", aspectRatioVariants({ variant, radius }), className),
|
|
230
230
|
style: {
|
|
231
231
|
position: "relative",
|
|
232
232
|
paddingBottom: `${1 / ratio * 100}%`,
|
|
@@ -259,9 +259,9 @@ var avatarVariants = classVarianceAuthority.cva(
|
|
|
259
259
|
},
|
|
260
260
|
variant: {
|
|
261
261
|
default: "",
|
|
262
|
-
ring: "ring-2 ring-
|
|
263
|
-
ringOffset: "ring-2 ring-
|
|
264
|
-
border: "border-2 border-
|
|
262
|
+
ring: "ring-2 ring-border",
|
|
263
|
+
ringOffset: "ring-2 ring-border ring-offset-2 ring-offset-background",
|
|
264
|
+
border: "border-2 border-border"
|
|
265
265
|
}
|
|
266
266
|
},
|
|
267
267
|
defaultVariants: {
|
|
@@ -275,7 +275,7 @@ var Avatar = t__namespace.forwardRef(({ className, size, radius, variant, ...pro
|
|
|
275
275
|
AvatarPrimitive__namespace.Root,
|
|
276
276
|
{
|
|
277
277
|
ref,
|
|
278
|
-
className: cn(avatarVariants({ size, radius, variant }), className),
|
|
278
|
+
className: cn("moonui-theme", avatarVariants({ size, radius, variant }), className),
|
|
279
279
|
...props
|
|
280
280
|
}
|
|
281
281
|
));
|
|
@@ -284,7 +284,7 @@ var AvatarImage = t__namespace.forwardRef(({ className, ...props }, ref) => /* @
|
|
|
284
284
|
AvatarPrimitive__namespace.Image,
|
|
285
285
|
{
|
|
286
286
|
ref,
|
|
287
|
-
className: cn("aspect-square h-full w-full", className),
|
|
287
|
+
className: cn("moonui-theme", "aspect-square h-full w-full", className),
|
|
288
288
|
...props
|
|
289
289
|
}
|
|
290
290
|
));
|
|
@@ -309,7 +309,7 @@ var AvatarGroup = t__namespace.forwardRef(
|
|
|
309
309
|
"div",
|
|
310
310
|
{
|
|
311
311
|
ref,
|
|
312
|
-
className: cn("flex items-center", className),
|
|
312
|
+
className: cn("moonui-theme", "flex items-center", className),
|
|
313
313
|
...props,
|
|
314
314
|
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex", children: [
|
|
315
315
|
visibleAvatars.map((avatar, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -458,7 +458,7 @@ function Badge({
|
|
|
458
458
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
459
459
|
"div",
|
|
460
460
|
{
|
|
461
|
-
className: cn(badgeVariants({ variant, size, radius }), className),
|
|
461
|
+
className: cn("moonui-theme", badgeVariants({ variant, size, radius }), className),
|
|
462
462
|
"data-removable": removable ? "" : void 0,
|
|
463
463
|
...props,
|
|
464
464
|
children: [
|
|
@@ -509,9 +509,9 @@ var breadcrumbVariants = classVarianceAuthority.cva(
|
|
|
509
509
|
{
|
|
510
510
|
variants: {
|
|
511
511
|
variant: {
|
|
512
|
-
default: "
|
|
513
|
-
muted: "text-muted-foreground
|
|
514
|
-
ghost: "text-foreground/60
|
|
512
|
+
default: "text-foreground transition-colors",
|
|
513
|
+
muted: "text-muted-foreground transition-colors",
|
|
514
|
+
ghost: "text-foreground/60 transition-colors"
|
|
515
515
|
},
|
|
516
516
|
size: {
|
|
517
517
|
default: "text-sm",
|
|
@@ -530,7 +530,7 @@ var Breadcrumb = t__namespace.forwardRef(
|
|
|
530
530
|
"nav",
|
|
531
531
|
{
|
|
532
532
|
ref,
|
|
533
|
-
className: cn(breadcrumbVariants({ variant, size }), className),
|
|
533
|
+
className: cn("moonui-theme", breadcrumbVariants({ variant, size }), className),
|
|
534
534
|
"aria-label": "breadcrumb",
|
|
535
535
|
...props
|
|
536
536
|
}
|
|
@@ -583,7 +583,7 @@ var BreadcrumbItem = t__namespace.forwardRef(
|
|
|
583
583
|
"li",
|
|
584
584
|
{
|
|
585
585
|
ref,
|
|
586
|
-
className: cn("inline-flex items-center gap-1.5", className),
|
|
586
|
+
className: cn("moonui-theme", "inline-flex items-center gap-1.5", className),
|
|
587
587
|
"aria-current": isCurrent ? "page" : void 0,
|
|
588
588
|
...props,
|
|
589
589
|
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -591,7 +591,7 @@ var BreadcrumbItem = t__namespace.forwardRef(
|
|
|
591
591
|
{
|
|
592
592
|
className: cn(
|
|
593
593
|
"transition-colors duration-200 hover:text-foreground",
|
|
594
|
-
isCurrent ? "font-medium text-foreground
|
|
594
|
+
isCurrent ? "font-medium text-foreground" : "text-muted-foreground hover:text-foreground hover:underline hover:underline-offset-4 hover:decoration-muted-foreground/30"
|
|
595
595
|
),
|
|
596
596
|
...itemProps,
|
|
597
597
|
children: props.children
|
|
@@ -611,7 +611,7 @@ var BreadcrumbSeparator = ({
|
|
|
611
611
|
{
|
|
612
612
|
role: "presentation",
|
|
613
613
|
"aria-hidden": "true",
|
|
614
|
-
className: cn("text-muted-foreground
|
|
614
|
+
className: cn("moonui-theme", "text-muted-foreground opacity-70", className),
|
|
615
615
|
...props,
|
|
616
616
|
children: children || /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ChevronRight, { className: "h-3.5 w-3.5" })
|
|
617
617
|
}
|
|
@@ -625,7 +625,7 @@ var BreadcrumbEllipsis = ({
|
|
|
625
625
|
{
|
|
626
626
|
role: "presentation",
|
|
627
627
|
"aria-hidden": "true",
|
|
628
|
-
className: cn("flex items-center text-muted-foreground
|
|
628
|
+
className: cn("moonui-theme", "flex items-center text-muted-foreground hover:text-foreground/80 transition-colors duration-200", className),
|
|
629
629
|
...props,
|
|
630
630
|
children: [
|
|
631
631
|
/* @__PURE__ */ jsxRuntime.jsx(lucideReact.MoreHorizontal, { className: "h-4 w-4" }),
|
|
@@ -641,7 +641,7 @@ var BreadcrumbLink = t__namespace.forwardRef(
|
|
|
641
641
|
ref,
|
|
642
642
|
href,
|
|
643
643
|
className: cn(
|
|
644
|
-
"transition-colors duration-200 hover:text-foreground text-muted-foreground hover:underline hover:underline-offset-4 hover:decoration-
|
|
644
|
+
"transition-colors duration-200 hover:text-foreground text-muted-foreground hover:underline hover:underline-offset-4 hover:decoration-muted-foreground/30",
|
|
645
645
|
className
|
|
646
646
|
),
|
|
647
647
|
...props
|
|
@@ -668,75 +668,71 @@ var buttonVariants = classVarianceAuthority.cva(
|
|
|
668
668
|
"inline-flex items-center justify-center gap-2 whitespace-nowrap",
|
|
669
669
|
"font-medium relative",
|
|
670
670
|
"transition-all duration-200 ease-out",
|
|
671
|
-
"
|
|
672
|
-
/* Standart premium hover efekti */
|
|
671
|
+
"transform active:scale-[0.98]",
|
|
673
672
|
"focus:outline-none focus-visible:ring-2 focus-visible:ring-offset-2",
|
|
674
|
-
"disabled:opacity-50 disabled:cursor-not-allowed disabled:pointer-events-none"
|
|
673
|
+
"disabled:opacity-50 disabled:cursor-not-allowed disabled:pointer-events-none disabled:transform-none"
|
|
675
674
|
],
|
|
676
675
|
{
|
|
677
676
|
variants: {
|
|
678
677
|
variant: {
|
|
679
678
|
primary: [
|
|
680
679
|
"bg-primary text-primary-foreground",
|
|
681
|
-
"
|
|
682
|
-
"
|
|
683
|
-
"
|
|
684
|
-
"
|
|
685
|
-
"
|
|
680
|
+
"dark:bg-primary dark:text-primary-foreground",
|
|
681
|
+
"hover:bg-primary/90 dark:hover:bg-primary/90",
|
|
682
|
+
"active:bg-primary/80 dark:active:bg-primary/80",
|
|
683
|
+
"shadow-sm hover:shadow-md",
|
|
684
|
+
"focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
|
|
686
685
|
"transition-all duration-200"
|
|
687
686
|
],
|
|
688
687
|
secondary: [
|
|
689
|
-
"bg-
|
|
690
|
-
"
|
|
691
|
-
"
|
|
692
|
-
"
|
|
693
|
-
"
|
|
694
|
-
"
|
|
695
|
-
"
|
|
688
|
+
"bg-muted text-muted-foreground",
|
|
689
|
+
"dark:bg-muted dark:text-muted-foreground",
|
|
690
|
+
"hover:bg-muted/80 dark:hover:bg-muted/80",
|
|
691
|
+
"active:bg-muted/70 dark:active:bg-muted/70",
|
|
692
|
+
"border border-input dark:border-input",
|
|
693
|
+
"focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
|
|
694
|
+
"shadow-sm hover:shadow-md"
|
|
696
695
|
],
|
|
697
696
|
outline: [
|
|
698
697
|
"bg-background text-foreground",
|
|
699
|
-
"
|
|
700
|
-
"
|
|
701
|
-
"hover:bg-
|
|
702
|
-
"active:bg-
|
|
703
|
-
"focus-visible:ring-
|
|
704
|
-
"
|
|
705
|
-
"dark:shadow-sm dark:shadow-gray-950/10"
|
|
698
|
+
"dark:bg-background dark:text-foreground",
|
|
699
|
+
"border border-input dark:border-input",
|
|
700
|
+
"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent dark:hover:text-accent-foreground",
|
|
701
|
+
"active:bg-accent/80 dark:active:bg-accent/80",
|
|
702
|
+
"focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
|
|
703
|
+
"transition-all duration-200"
|
|
706
704
|
],
|
|
707
705
|
ghost: [
|
|
708
706
|
"text-foreground",
|
|
709
|
-
"
|
|
710
|
-
"
|
|
711
|
-
"
|
|
712
|
-
"
|
|
713
|
-
"transition-
|
|
707
|
+
"dark:text-foreground",
|
|
708
|
+
"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent dark:hover:text-accent-foreground",
|
|
709
|
+
"active:bg-accent/80 dark:active:bg-accent/80",
|
|
710
|
+
"focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
|
|
711
|
+
"transition-all duration-200"
|
|
714
712
|
],
|
|
715
713
|
destructive: [
|
|
716
|
-
"bg-
|
|
717
|
-
"
|
|
718
|
-
"
|
|
719
|
-
"
|
|
720
|
-
"
|
|
721
|
-
"
|
|
722
|
-
"transition-
|
|
714
|
+
"bg-destructive text-destructive-foreground",
|
|
715
|
+
"dark:bg-destructive dark:text-destructive-foreground",
|
|
716
|
+
"hover:bg-destructive/90 dark:hover:bg-destructive/90",
|
|
717
|
+
"active:bg-destructive/80 dark:active:bg-destructive/80",
|
|
718
|
+
"shadow-sm hover:shadow-md",
|
|
719
|
+
"focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
|
|
720
|
+
"transition-all duration-200"
|
|
723
721
|
],
|
|
724
722
|
success: [
|
|
725
|
-
"bg-success text-
|
|
726
|
-
"
|
|
727
|
-
"
|
|
728
|
-
"
|
|
729
|
-
"
|
|
730
|
-
"
|
|
731
|
-
"transition-
|
|
723
|
+
"bg-success text-success-foreground",
|
|
724
|
+
"dark:bg-success dark:text-success-foreground",
|
|
725
|
+
"hover:bg-success/90 dark:hover:bg-success/90",
|
|
726
|
+
"active:bg-success/80 dark:active:bg-success/80",
|
|
727
|
+
"shadow-sm hover:shadow-md",
|
|
728
|
+
"focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
|
|
729
|
+
"transition-all duration-200"
|
|
732
730
|
],
|
|
733
731
|
link: [
|
|
734
732
|
"text-primary bg-transparent",
|
|
735
733
|
"underline-offset-4 hover:underline",
|
|
736
|
-
"hover:text-primary
|
|
734
|
+
"hover:text-primary/80 active:text-primary/70",
|
|
737
735
|
"p-0 h-auto",
|
|
738
|
-
"dark:text-blue-400 dark:hover:text-blue-300",
|
|
739
|
-
"dark:active:text-blue-500",
|
|
740
736
|
"transition-colors duration-200"
|
|
741
737
|
],
|
|
742
738
|
gradient: [
|
|
@@ -786,14 +782,14 @@ var buttonVariants = classVarianceAuthority.cva(
|
|
|
786
782
|
]
|
|
787
783
|
},
|
|
788
784
|
size: {
|
|
789
|
-
xs: "h-7 px-2.5 text-xs rounded",
|
|
790
|
-
sm: "h-8 px-3 text-sm rounded",
|
|
791
|
-
md: "h-10 px-4 text-base rounded-
|
|
785
|
+
xs: "h-7 px-2.5 text-xs rounded-md",
|
|
786
|
+
sm: "h-8 px-3 text-sm rounded-md",
|
|
787
|
+
md: "h-10 px-4 text-base rounded-lg",
|
|
792
788
|
lg: "h-12 px-6 text-lg rounded-lg",
|
|
793
|
-
xl: "h-14 px-8 text-xl rounded-
|
|
794
|
-
icon: "h-10 w-10 p-2 rounded-
|
|
795
|
-
"icon-sm": "h-8 w-8 p-1.5 rounded",
|
|
796
|
-
"icon-lg": "h-12 w-12 p-3 rounded-
|
|
789
|
+
xl: "h-14 px-8 text-xl rounded-xl",
|
|
790
|
+
icon: "h-10 w-10 p-2 rounded-lg",
|
|
791
|
+
"icon-sm": "h-8 w-8 p-1.5 rounded-md",
|
|
792
|
+
"icon-lg": "h-12 w-12 p-3 rounded-xl"
|
|
797
793
|
},
|
|
798
794
|
rounded: {
|
|
799
795
|
default: "",
|
|
@@ -831,7 +827,7 @@ var Button = t__namespace.forwardRef(
|
|
|
831
827
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
832
828
|
Comp,
|
|
833
829
|
{
|
|
834
|
-
className: cn(buttonVariants({ variant, size, rounded, fullWidth, className })),
|
|
830
|
+
className: cn("moonui-theme", buttonVariants({ variant, size, rounded, fullWidth, className })),
|
|
835
831
|
ref,
|
|
836
832
|
disabled: disabled || loading,
|
|
837
833
|
"data-loading": loading ? "" : void 0,
|
|
@@ -847,203 +843,7 @@ var Button = t__namespace.forwardRef(
|
|
|
847
843
|
}
|
|
848
844
|
);
|
|
849
845
|
Button.displayName = "Button";
|
|
850
|
-
|
|
851
|
-
mode = "single",
|
|
852
|
-
selected,
|
|
853
|
-
onSelect,
|
|
854
|
-
disabled,
|
|
855
|
-
showOutsideDays = false,
|
|
856
|
-
className,
|
|
857
|
-
classNames,
|
|
858
|
-
numberOfMonths = 1,
|
|
859
|
-
defaultMonth,
|
|
860
|
-
...props
|
|
861
|
-
}) {
|
|
862
|
-
const [currentMonth, setCurrentMonth] = t__namespace.useState(
|
|
863
|
-
defaultMonth || selected && selected || /* @__PURE__ */ new Date()
|
|
864
|
-
);
|
|
865
|
-
const weekDays = [
|
|
866
|
-
{ short: "S", full: "Sunday" },
|
|
867
|
-
{ short: "M", full: "Monday" },
|
|
868
|
-
{ short: "T", full: "Tuesday" },
|
|
869
|
-
{ short: "W", full: "Wednesday" },
|
|
870
|
-
{ short: "T", full: "Thursday" },
|
|
871
|
-
{ short: "F", full: "Friday" },
|
|
872
|
-
{ short: "S", full: "Saturday" }
|
|
873
|
-
];
|
|
874
|
-
const handlePreviousMonth = () => {
|
|
875
|
-
setCurrentMonth(dateFns.subMonths(currentMonth, 1));
|
|
876
|
-
};
|
|
877
|
-
const handleNextMonth = () => {
|
|
878
|
-
setCurrentMonth(dateFns.addMonths(currentMonth, 1));
|
|
879
|
-
};
|
|
880
|
-
const handleDateClick = (date) => {
|
|
881
|
-
if (disabled?.(date))
|
|
882
|
-
return;
|
|
883
|
-
if (mode === "single") {
|
|
884
|
-
onSelect?.(date);
|
|
885
|
-
} else if (mode === "range") {
|
|
886
|
-
const currentSelection = selected;
|
|
887
|
-
if (!currentSelection?.from || currentSelection.from && currentSelection.to) {
|
|
888
|
-
onSelect?.({ from: date, to: void 0 });
|
|
889
|
-
} else {
|
|
890
|
-
if (date < currentSelection.from) {
|
|
891
|
-
onSelect?.({ from: date, to: currentSelection.from });
|
|
892
|
-
} else {
|
|
893
|
-
onSelect?.({ from: currentSelection.from, to: date });
|
|
894
|
-
}
|
|
895
|
-
}
|
|
896
|
-
}
|
|
897
|
-
};
|
|
898
|
-
const isDateSelected = (date) => {
|
|
899
|
-
if (!selected)
|
|
900
|
-
return false;
|
|
901
|
-
if (mode === "single") {
|
|
902
|
-
return dateFns.isSameDay(date, selected);
|
|
903
|
-
} else if (mode === "range") {
|
|
904
|
-
const range = selected;
|
|
905
|
-
if (range.from && range.to) {
|
|
906
|
-
return date >= range.from && date <= range.to;
|
|
907
|
-
}
|
|
908
|
-
return range.from ? dateFns.isSameDay(date, range.from) : false;
|
|
909
|
-
}
|
|
910
|
-
return false;
|
|
911
|
-
};
|
|
912
|
-
const isRangeStart = (date) => {
|
|
913
|
-
if (mode !== "range" || !selected)
|
|
914
|
-
return false;
|
|
915
|
-
const range = selected;
|
|
916
|
-
return range.from ? dateFns.isSameDay(date, range.from) : false;
|
|
917
|
-
};
|
|
918
|
-
const isRangeEnd = (date) => {
|
|
919
|
-
if (mode !== "range" || !selected)
|
|
920
|
-
return false;
|
|
921
|
-
const range = selected;
|
|
922
|
-
return range.to ? dateFns.isSameDay(date, range.to) : false;
|
|
923
|
-
};
|
|
924
|
-
const isRangeMiddle = (date) => {
|
|
925
|
-
if (mode !== "range" || !selected)
|
|
926
|
-
return false;
|
|
927
|
-
const range = selected;
|
|
928
|
-
if (!range.from || !range.to)
|
|
929
|
-
return false;
|
|
930
|
-
return date > range.from && date < range.to;
|
|
931
|
-
};
|
|
932
|
-
const getDaysInMonth = () => {
|
|
933
|
-
const start = dateFns.startOfMonth(currentMonth);
|
|
934
|
-
const end = dateFns.endOfMonth(currentMonth);
|
|
935
|
-
const days2 = dateFns.eachDayOfInterval({ start, end });
|
|
936
|
-
const firstDayOfWeek = dateFns.getDay(start);
|
|
937
|
-
const previousMonthDays = [];
|
|
938
|
-
if (firstDayOfWeek > 0 && showOutsideDays) {
|
|
939
|
-
const previousMonthStart = dateFns.startOfWeek(start);
|
|
940
|
-
const previousMonthEnd = new Date(start);
|
|
941
|
-
previousMonthEnd.setDate(previousMonthEnd.getDate() - 1);
|
|
942
|
-
previousMonthDays.push(...dateFns.eachDayOfInterval({
|
|
943
|
-
start: previousMonthStart,
|
|
944
|
-
end: previousMonthEnd
|
|
945
|
-
}));
|
|
946
|
-
}
|
|
947
|
-
const lastDayOfWeek = dateFns.getDay(end);
|
|
948
|
-
const nextMonthDays = [];
|
|
949
|
-
if (lastDayOfWeek < 6 && showOutsideDays) {
|
|
950
|
-
const nextMonthStart = new Date(end);
|
|
951
|
-
nextMonthStart.setDate(nextMonthStart.getDate() + 1);
|
|
952
|
-
const nextMonthEnd = dateFns.endOfWeek(end);
|
|
953
|
-
nextMonthDays.push(...dateFns.eachDayOfInterval({
|
|
954
|
-
start: nextMonthStart,
|
|
955
|
-
end: nextMonthEnd
|
|
956
|
-
}));
|
|
957
|
-
}
|
|
958
|
-
const emptyCells = [];
|
|
959
|
-
if (!showOutsideDays && firstDayOfWeek > 0) {
|
|
960
|
-
for (let i = 0; i < firstDayOfWeek; i++) {
|
|
961
|
-
emptyCells.push(null);
|
|
962
|
-
}
|
|
963
|
-
}
|
|
964
|
-
return [...previousMonthDays, ...emptyCells, ...days2, ...nextMonthDays];
|
|
965
|
-
};
|
|
966
|
-
const days = getDaysInMonth();
|
|
967
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("p-0", className), children: [
|
|
968
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center justify-between px-6 py-4", children: [
|
|
969
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
970
|
-
"button",
|
|
971
|
-
{
|
|
972
|
-
onClick: handlePreviousMonth,
|
|
973
|
-
className: cn(
|
|
974
|
-
"h-10 w-10 bg-transparent p-0 rounded-lg",
|
|
975
|
-
"hover:bg-muted transition-colors",
|
|
976
|
-
"inline-flex items-center justify-center"
|
|
977
|
-
),
|
|
978
|
-
type: "button",
|
|
979
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ChevronLeft, { className: "h-5 w-5" })
|
|
980
|
-
}
|
|
981
|
-
),
|
|
982
|
-
/* @__PURE__ */ jsxRuntime.jsx("h2", { className: "text-base font-medium", children: dateFns.format(currentMonth, "MMMM yyyy") }),
|
|
983
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
984
|
-
"button",
|
|
985
|
-
{
|
|
986
|
-
onClick: handleNextMonth,
|
|
987
|
-
className: cn(
|
|
988
|
-
"h-10 w-10 bg-transparent p-0 rounded-lg",
|
|
989
|
-
"hover:bg-muted transition-colors",
|
|
990
|
-
"inline-flex items-center justify-center"
|
|
991
|
-
),
|
|
992
|
-
type: "button",
|
|
993
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ChevronRight, { className: "h-5 w-5" })
|
|
994
|
-
}
|
|
995
|
-
)
|
|
996
|
-
] }),
|
|
997
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "px-6 pb-4", children: [
|
|
998
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid grid-cols-7 mb-2", children: weekDays.map((day, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
999
|
-
"div",
|
|
1000
|
-
{
|
|
1001
|
-
className: "text-muted-foreground text-xs font-medium h-10 flex items-center justify-center",
|
|
1002
|
-
title: day.full,
|
|
1003
|
-
children: day.short
|
|
1004
|
-
},
|
|
1005
|
-
`weekday-${index}`
|
|
1006
|
-
)) }),
|
|
1007
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid grid-cols-7 gap-1", children: days.map((date, index) => {
|
|
1008
|
-
if (!date) {
|
|
1009
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "h-10 w-10" }, `empty-${index}`);
|
|
1010
|
-
}
|
|
1011
|
-
const isOutsideMonth = !dateFns.isSameMonth(date, currentMonth);
|
|
1012
|
-
const isDisabled = disabled?.(date) || false;
|
|
1013
|
-
const isSelected = isDateSelected(date);
|
|
1014
|
-
const isTodayDate = dateFns.isToday(date);
|
|
1015
|
-
const rangeStart = isRangeStart(date);
|
|
1016
|
-
const rangeEnd = isRangeEnd(date);
|
|
1017
|
-
const rangeMiddle = isRangeMiddle(date);
|
|
1018
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
1019
|
-
"button",
|
|
1020
|
-
{
|
|
1021
|
-
onClick: () => handleDateClick(date),
|
|
1022
|
-
disabled: isDisabled,
|
|
1023
|
-
className: cn(
|
|
1024
|
-
"h-10 w-10 p-0 font-normal",
|
|
1025
|
-
"inline-flex items-center justify-center rounded-lg",
|
|
1026
|
-
"hover:bg-muted transition-colors text-sm",
|
|
1027
|
-
"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
|
|
1028
|
-
isOutsideMonth && "text-muted-foreground/50",
|
|
1029
|
-
isDisabled && "text-muted-foreground/30 cursor-not-allowed hover:bg-transparent",
|
|
1030
|
-
isSelected && !rangeMiddle && "bg-primary text-primary-foreground font-medium hover:bg-primary hover:text-primary-foreground",
|
|
1031
|
-
isTodayDate && "font-semibold relative after:absolute after:bottom-1 after:left-1/2 after:-translate-x-1/2 after:h-1 after:w-1 after:rounded-full after:bg-primary",
|
|
1032
|
-
rangeMiddle && "bg-accent/30 text-accent-foreground rounded-none",
|
|
1033
|
-
rangeStart && "rounded-r-none",
|
|
1034
|
-
rangeEnd && "rounded-l-none"
|
|
1035
|
-
),
|
|
1036
|
-
type: "button",
|
|
1037
|
-
children: dateFns.format(date, "d")
|
|
1038
|
-
},
|
|
1039
|
-
date.toISOString()
|
|
1040
|
-
);
|
|
1041
|
-
}) })
|
|
1042
|
-
] })
|
|
1043
|
-
] });
|
|
1044
|
-
}
|
|
1045
|
-
Calendar.displayName = "Calendar";
|
|
1046
|
-
var microInteractionVariants = classVarianceAuthority.cva("", {
|
|
846
|
+
classVarianceAuthority.cva("", {
|
|
1047
847
|
variants: {
|
|
1048
848
|
hover: {
|
|
1049
849
|
lift: [
|
|
@@ -1174,6 +974,32 @@ var tapAnimations = {
|
|
|
1174
974
|
transition: { duration: 0.1 }
|
|
1175
975
|
}
|
|
1176
976
|
};
|
|
977
|
+
var pageTransitions = {
|
|
978
|
+
fadeIn: {
|
|
979
|
+
initial: { opacity: 0 },
|
|
980
|
+
animate: { opacity: 1 },
|
|
981
|
+
exit: { opacity: 0 },
|
|
982
|
+
transition: { duration: 0.3 }
|
|
983
|
+
},
|
|
984
|
+
slideUp: {
|
|
985
|
+
initial: { opacity: 0, y: 20 },
|
|
986
|
+
animate: { opacity: 1, y: 0 },
|
|
987
|
+
exit: { opacity: 0, y: -20 },
|
|
988
|
+
transition: springAnimations.smooth
|
|
989
|
+
},
|
|
990
|
+
slideRight: {
|
|
991
|
+
initial: { opacity: 0, x: -20 },
|
|
992
|
+
animate: { opacity: 1, x: 0 },
|
|
993
|
+
exit: { opacity: 0, x: 20 },
|
|
994
|
+
transition: springAnimations.smooth
|
|
995
|
+
},
|
|
996
|
+
scale: {
|
|
997
|
+
initial: { opacity: 0, scale: 0.95 },
|
|
998
|
+
animate: { opacity: 1, scale: 1 },
|
|
999
|
+
exit: { opacity: 0, scale: 1.05 },
|
|
1000
|
+
transition: springAnimations.smooth
|
|
1001
|
+
}
|
|
1002
|
+
};
|
|
1177
1003
|
var skeletonAnimation = {
|
|
1178
1004
|
initial: { opacity: 0.5 },
|
|
1179
1005
|
animate: {
|
|
@@ -1233,7 +1059,7 @@ var Card = t__namespace.forwardRef(
|
|
|
1233
1059
|
framerMotion.motion.div,
|
|
1234
1060
|
{
|
|
1235
1061
|
ref,
|
|
1236
|
-
className: cn(cardVariants({ variant, size, radius, interactive, className })),
|
|
1062
|
+
className: cn("moonui-theme", cardVariants({ variant, size, radius, interactive, className })),
|
|
1237
1063
|
...interactionProps,
|
|
1238
1064
|
...props
|
|
1239
1065
|
}
|
|
@@ -1243,7 +1069,7 @@ var Card = t__namespace.forwardRef(
|
|
|
1243
1069
|
"div",
|
|
1244
1070
|
{
|
|
1245
1071
|
ref,
|
|
1246
|
-
className: cn(cardVariants({ variant, size, radius, interactive, className })),
|
|
1072
|
+
className: cn("moonui-theme", cardVariants({ variant, size, radius, interactive, className })),
|
|
1247
1073
|
...props
|
|
1248
1074
|
}
|
|
1249
1075
|
);
|
|
@@ -1254,7 +1080,7 @@ var CardHeader = t__namespace.forwardRef(({ className, ...props }, ref) => /* @_
|
|
|
1254
1080
|
"div",
|
|
1255
1081
|
{
|
|
1256
1082
|
ref,
|
|
1257
|
-
className: cn("flex flex-col space-y-1.5", className),
|
|
1083
|
+
className: cn("moonui-theme", "flex flex-col space-y-1.5", className),
|
|
1258
1084
|
...props
|
|
1259
1085
|
}
|
|
1260
1086
|
));
|
|
@@ -1263,7 +1089,7 @@ var CardTitle = t__namespace.forwardRef(({ className, ...props }, ref) => /* @__
|
|
|
1263
1089
|
"h3",
|
|
1264
1090
|
{
|
|
1265
1091
|
ref,
|
|
1266
|
-
className: cn("text-lg font-semibold leading-none tracking-tight", className),
|
|
1092
|
+
className: cn("moonui-theme", "text-lg font-semibold leading-none tracking-tight", className),
|
|
1267
1093
|
...props
|
|
1268
1094
|
}
|
|
1269
1095
|
));
|
|
@@ -1272,18 +1098,18 @@ var CardDescription = t__namespace.forwardRef(({ className, ...props }, ref) =>
|
|
|
1272
1098
|
"p",
|
|
1273
1099
|
{
|
|
1274
1100
|
ref,
|
|
1275
|
-
className: cn("text-sm text-muted-foreground", className),
|
|
1101
|
+
className: cn("moonui-theme", "text-sm text-muted-foreground", className),
|
|
1276
1102
|
...props
|
|
1277
1103
|
}
|
|
1278
1104
|
));
|
|
1279
1105
|
CardDescription.displayName = "CardDescription";
|
|
1280
|
-
var CardContent = t__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn("pt-0", className), ...props }));
|
|
1106
|
+
var CardContent = t__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn("moonui-theme", "pt-0", className), ...props }));
|
|
1281
1107
|
CardContent.displayName = "CardContent";
|
|
1282
1108
|
var CardFooter = t__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1283
1109
|
"div",
|
|
1284
1110
|
{
|
|
1285
1111
|
ref,
|
|
1286
|
-
className: cn("flex items-center pt-4", className),
|
|
1112
|
+
className: cn("moonui-theme", "flex items-center pt-4", className),
|
|
1287
1113
|
...props
|
|
1288
1114
|
}
|
|
1289
1115
|
));
|
|
@@ -1347,7 +1173,7 @@ var Checkbox = t__namespace.forwardRef(({
|
|
|
1347
1173
|
{
|
|
1348
1174
|
ref,
|
|
1349
1175
|
checked: effectiveChecked,
|
|
1350
|
-
className: cn(checkboxVariants({ variant, size, radius, animation }), className),
|
|
1176
|
+
className: cn("moonui-theme", checkboxVariants({ variant, size, radius, animation }), className),
|
|
1351
1177
|
...props,
|
|
1352
1178
|
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1353
1179
|
CheckboxPrimitive__namespace.Indicator,
|
|
@@ -1932,7 +1758,7 @@ var CollapsibleTrigger2 = t__namespace.forwardRef(({ className, children, varian
|
|
|
1932
1758
|
Trigger2,
|
|
1933
1759
|
{
|
|
1934
1760
|
ref,
|
|
1935
|
-
className: cn(collapsibleTriggerVariants({ variant, size }), className),
|
|
1761
|
+
className: cn("moonui-theme", collapsibleTriggerVariants({ variant, size }), className),
|
|
1936
1762
|
asChild,
|
|
1937
1763
|
...props,
|
|
1938
1764
|
children
|
|
@@ -1943,7 +1769,7 @@ var CollapsibleTrigger2 = t__namespace.forwardRef(({ className, children, varian
|
|
|
1943
1769
|
Trigger2,
|
|
1944
1770
|
{
|
|
1945
1771
|
ref,
|
|
1946
|
-
className: cn(collapsibleTriggerVariants({ variant, size }), className),
|
|
1772
|
+
className: cn("moonui-theme", collapsibleTriggerVariants({ variant, size }), className),
|
|
1947
1773
|
...props,
|
|
1948
1774
|
children: [
|
|
1949
1775
|
children,
|
|
@@ -1979,7 +1805,7 @@ var CollapsibleContent2 = t__namespace.forwardRef(({ className, children, varian
|
|
|
1979
1805
|
Content2,
|
|
1980
1806
|
{
|
|
1981
1807
|
ref,
|
|
1982
|
-
className: cn(collapsibleContentVariants({ variant, size }), className),
|
|
1808
|
+
className: cn("moonui-theme", collapsibleContentVariants({ variant, size }), className),
|
|
1983
1809
|
...props,
|
|
1984
1810
|
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "p-4", children })
|
|
1985
1811
|
}
|
|
@@ -2079,7 +1905,7 @@ var Input = t__namespace.forwardRef(
|
|
|
2079
1905
|
const showMessage = alwaysShowMessage || error || success;
|
|
2080
1906
|
const messageType = error ? "error" : success ? "success" : "normal";
|
|
2081
1907
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-1.5 w-full", children: [
|
|
2082
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn(inputWrapperVariants({ size }), wrapperClassName), children: [
|
|
1908
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("moonui-theme", inputWrapperVariants({ size }), wrapperClassName), children: [
|
|
2083
1909
|
leftIcon && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute left-3 text-gray-500 flex items-center justify-center pointer-events-none", children: loading ? /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Loader2, { className: "h-4 w-4 animate-spin" }) : leftIcon }),
|
|
2084
1910
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2085
1911
|
"input",
|
|
@@ -2240,7 +2066,7 @@ var PopoverClose = PopoverPrimitive__namespace.Close;
|
|
|
2240
2066
|
var PopoverSeparator = ({ className, ...props }) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
2241
2067
|
"div",
|
|
2242
2068
|
{
|
|
2243
|
-
className: cn("my-2 h-px bg-border", className),
|
|
2069
|
+
className: cn("moonui-theme", "my-2 h-px bg-border", className),
|
|
2244
2070
|
...props
|
|
2245
2071
|
}
|
|
2246
2072
|
);
|
|
@@ -2248,7 +2074,7 @@ PopoverSeparator.displayName = "PopoverSeparator";
|
|
|
2248
2074
|
var PopoverHeader = ({ className, ...props }) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
2249
2075
|
"div",
|
|
2250
2076
|
{
|
|
2251
|
-
className: cn("-mx-4 -mt-4 mb-3 px-4 pt-4 pb-3 border-b border-border", className),
|
|
2077
|
+
className: cn("moonui-theme", "-mx-4 -mt-4 mb-3 px-4 pt-4 pb-3 border-b border-border", className),
|
|
2252
2078
|
...props
|
|
2253
2079
|
}
|
|
2254
2080
|
);
|
|
@@ -2256,7 +2082,7 @@ PopoverHeader.displayName = "PopoverHeader";
|
|
|
2256
2082
|
var PopoverFooter = ({ className, ...props }) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
2257
2083
|
"div",
|
|
2258
2084
|
{
|
|
2259
|
-
className: cn("-mx-4 -mb-4 mt-3 px-4 pt-3 pb-4 border-t border-border", className),
|
|
2085
|
+
className: cn("moonui-theme", "-mx-4 -mb-4 mt-3 px-4 pt-3 pb-4 border-t border-border", className),
|
|
2260
2086
|
...props
|
|
2261
2087
|
}
|
|
2262
2088
|
);
|
|
@@ -2265,6 +2091,7 @@ var Tabs = t__namespace.forwardRef(({ vertical = false, ...props }, ref) => /* @
|
|
|
2265
2091
|
TabsPrimitive__namespace.Root,
|
|
2266
2092
|
{
|
|
2267
2093
|
ref,
|
|
2094
|
+
className: cn("moonui-theme", props.className),
|
|
2268
2095
|
orientation: vertical ? "vertical" : "horizontal",
|
|
2269
2096
|
...props
|
|
2270
2097
|
}
|
|
@@ -2300,7 +2127,7 @@ var TabsList = t__namespace.forwardRef(({ className, variant, orientation, fullW
|
|
|
2300
2127
|
TabsPrimitive__namespace.List,
|
|
2301
2128
|
{
|
|
2302
2129
|
ref,
|
|
2303
|
-
className: cn(tabsListVariants({ variant, orientation, fullWidth, className })),
|
|
2130
|
+
className: cn("moonui-theme", tabsListVariants({ variant, orientation, fullWidth, className })),
|
|
2304
2131
|
...props
|
|
2305
2132
|
}
|
|
2306
2133
|
));
|
|
@@ -2354,6 +2181,7 @@ var TabsTrigger = t__namespace.forwardRef(({
|
|
|
2354
2181
|
{
|
|
2355
2182
|
ref,
|
|
2356
2183
|
className: cn(
|
|
2184
|
+
"moonui-theme",
|
|
2357
2185
|
tabsTriggerVariants({ variant, size, orientation, fullWidth }),
|
|
2358
2186
|
fadeTabs && "data-[state=inactive]:opacity-60",
|
|
2359
2187
|
className
|
|
@@ -2373,6 +2201,7 @@ var TabsContent = t__namespace.forwardRef(({ className, animated = false, ...pro
|
|
|
2373
2201
|
{
|
|
2374
2202
|
ref,
|
|
2375
2203
|
className: cn(
|
|
2204
|
+
"moonui-theme",
|
|
2376
2205
|
"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
|
|
2377
2206
|
animated && "data-[state=active]:animate-fadeIn data-[state=inactive]:animate-fadeOut",
|
|
2378
2207
|
className
|
|
@@ -2563,7 +2392,7 @@ var Slider = t__namespace.forwardRef(({
|
|
|
2563
2392
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
2564
2393
|
"div",
|
|
2565
2394
|
{
|
|
2566
|
-
className: cn(sliderVariants({ size }), className),
|
|
2395
|
+
className: cn("moonui-theme", sliderVariants({ size }), className),
|
|
2567
2396
|
"data-disabled": disabled ? true : void 0,
|
|
2568
2397
|
children: [
|
|
2569
2398
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -3143,7 +2972,7 @@ function SimpleColorPicker({
|
|
|
3143
2972
|
default: "h-8 w-8",
|
|
3144
2973
|
lg: "h-10 w-10"
|
|
3145
2974
|
};
|
|
3146
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("flex flex-wrap gap-2", className), children: colors.map((color) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
2975
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("moonui-theme", "flex flex-wrap gap-2", className), children: colors.map((color) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
3147
2976
|
"button",
|
|
3148
2977
|
{
|
|
3149
2978
|
className: cn(
|
|
@@ -3168,7 +2997,7 @@ function GradientPicker({
|
|
|
3168
2997
|
setGradient(newGradient);
|
|
3169
2998
|
onChange?.(newGradient);
|
|
3170
2999
|
};
|
|
3171
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("space-y-4", className), children: [
|
|
3000
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("moonui-theme", "space-y-4", className), children: [
|
|
3172
3001
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3173
3002
|
"div",
|
|
3174
3003
|
{
|
|
@@ -3688,7 +3517,7 @@ var DialogOverlay = t__namespace.forwardRef(({ className, variant, animation, ..
|
|
|
3688
3517
|
DialogPrimitive__namespace.Overlay,
|
|
3689
3518
|
{
|
|
3690
3519
|
ref,
|
|
3691
|
-
className: cn(overlayVariants({ variant, animation }), className),
|
|
3520
|
+
className: cn("moonui-theme", overlayVariants({ variant, animation }), className),
|
|
3692
3521
|
...props
|
|
3693
3522
|
}
|
|
3694
3523
|
));
|
|
@@ -3884,7 +3713,7 @@ var DialogForm = t__namespace.forwardRef(({ className, ...props }, ref) => /* @_
|
|
|
3884
3713
|
"form",
|
|
3885
3714
|
{
|
|
3886
3715
|
ref,
|
|
3887
|
-
className: cn("flex flex-col gap-4", className),
|
|
3716
|
+
className: cn("moonui-theme", "flex flex-col gap-4", className),
|
|
3888
3717
|
...props
|
|
3889
3718
|
}
|
|
3890
3719
|
));
|
|
@@ -3914,7 +3743,7 @@ var Command = t__namespace.forwardRef(({ className, variant, size, ...props }, r
|
|
|
3914
3743
|
_e,
|
|
3915
3744
|
{
|
|
3916
3745
|
ref,
|
|
3917
|
-
className: cn(commandVariants({ variant, size }), className),
|
|
3746
|
+
className: cn("moonui-theme", commandVariants({ variant, size }), className),
|
|
3918
3747
|
...props
|
|
3919
3748
|
}
|
|
3920
3749
|
));
|
|
@@ -3951,7 +3780,7 @@ var CommandList = t__namespace.forwardRef(({ className, ...props }, ref) => /* @
|
|
|
3951
3780
|
_e.List,
|
|
3952
3781
|
{
|
|
3953
3782
|
ref,
|
|
3954
|
-
className: cn("max-h-[300px] overflow-y-auto overflow-x-hidden", className),
|
|
3783
|
+
className: cn("moonui-theme", "max-h-[300px] overflow-y-auto overflow-x-hidden", className),
|
|
3955
3784
|
...props
|
|
3956
3785
|
}
|
|
3957
3786
|
));
|
|
@@ -3960,7 +3789,7 @@ var CommandEmpty = t__namespace.forwardRef(({ className, ...props }, ref) => /*
|
|
|
3960
3789
|
_e.Empty,
|
|
3961
3790
|
{
|
|
3962
3791
|
ref,
|
|
3963
|
-
className: cn("py-6 text-center text-sm text-muted-foreground", className),
|
|
3792
|
+
className: cn("moonui-theme", "py-6 text-center text-sm text-muted-foreground", className),
|
|
3964
3793
|
...props
|
|
3965
3794
|
}
|
|
3966
3795
|
));
|
|
@@ -3981,7 +3810,7 @@ var CommandSeparator = t__namespace.forwardRef(({ className, ...props }, ref) =>
|
|
|
3981
3810
|
_e.Separator,
|
|
3982
3811
|
{
|
|
3983
3812
|
ref,
|
|
3984
|
-
className: cn("-mx-1 h-px bg-border", className),
|
|
3813
|
+
className: cn("moonui-theme", "-mx-1 h-px bg-border", className),
|
|
3985
3814
|
...props
|
|
3986
3815
|
}
|
|
3987
3816
|
));
|
|
@@ -7114,7 +6943,7 @@ var Table = t__namespace.forwardRef(({
|
|
|
7114
6943
|
] });
|
|
7115
6944
|
});
|
|
7116
6945
|
Table.displayName = "Table";
|
|
7117
|
-
var TableHeader = t__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("thead", { ref, className: cn("[&_tr]:border-b", className), ...props }));
|
|
6946
|
+
var TableHeader = t__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("thead", { ref, className: cn("moonui-theme", "[&_tr]:border-b", className), ...props }));
|
|
7118
6947
|
TableHeader.displayName = "TableHeader";
|
|
7119
6948
|
var TableBody = t__namespace.forwardRef(({ className, emptyContent, emptyMessage = "No data available", children, ...props }, ref) => {
|
|
7120
6949
|
const hasChildren = t__namespace.Children.count(children) > 0;
|
|
@@ -7122,7 +6951,7 @@ var TableBody = t__namespace.forwardRef(({ className, emptyContent, emptyMessage
|
|
|
7122
6951
|
"tbody",
|
|
7123
6952
|
{
|
|
7124
6953
|
ref,
|
|
7125
|
-
className: cn("[&_tr:last-child]:border-0", className),
|
|
6954
|
+
className: cn("moonui-theme", "[&_tr:last-child]:border-0", className),
|
|
7126
6955
|
...props,
|
|
7127
6956
|
children: hasChildren ? children : /* @__PURE__ */ jsxRuntime.jsx("tr", { children: /* @__PURE__ */ jsxRuntime.jsx("td", { colSpan: 100, className: "h-24 text-center", children: emptyContent || /* @__PURE__ */ jsxRuntime.jsx("div", { className: "py-6 text-muted-foreground", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm", children: emptyMessage }) }) }) })
|
|
7128
6957
|
}
|
|
@@ -7133,7 +6962,7 @@ var TableFooter = t__namespace.forwardRef(({ className, ...props }, ref) => /* @
|
|
|
7133
6962
|
"tfoot",
|
|
7134
6963
|
{
|
|
7135
6964
|
ref,
|
|
7136
|
-
className: cn("bg-primary text-primary-foreground font-medium", className),
|
|
6965
|
+
className: cn("moonui-theme", "bg-primary text-primary-foreground font-medium", className),
|
|
7137
6966
|
...props
|
|
7138
6967
|
}
|
|
7139
6968
|
));
|
|
@@ -7235,7 +7064,7 @@ var TableCell = t__namespace.forwardRef(({ className, ...props }, ref) => /* @__
|
|
|
7235
7064
|
"td",
|
|
7236
7065
|
{
|
|
7237
7066
|
ref,
|
|
7238
|
-
className: cn("p-4 align-middle [&:has([role=checkbox])]:pr-0", className),
|
|
7067
|
+
className: cn("moonui-theme", "p-4 align-middle [&:has([role=checkbox])]:pr-0", className),
|
|
7239
7068
|
...props
|
|
7240
7069
|
}
|
|
7241
7070
|
));
|
|
@@ -7244,7 +7073,7 @@ var TableCaption = t__namespace.forwardRef(({ className, ...props }, ref) => /*
|
|
|
7244
7073
|
"caption",
|
|
7245
7074
|
{
|
|
7246
7075
|
ref,
|
|
7247
|
-
className: cn("mt-4 text-sm text-muted-foreground", className),
|
|
7076
|
+
className: cn("moonui-theme", "mt-4 text-sm text-muted-foreground", className),
|
|
7248
7077
|
...props
|
|
7249
7078
|
}
|
|
7250
7079
|
));
|
|
@@ -7362,7 +7191,7 @@ var SelectLabel = t__namespace.forwardRef(({ className, ...props }, ref) => /* @
|
|
|
7362
7191
|
SelectPrimitive__namespace.Label,
|
|
7363
7192
|
{
|
|
7364
7193
|
ref,
|
|
7365
|
-
className: cn("py-1.5 pl-8 pr-2 text-sm font-semibold", className),
|
|
7194
|
+
className: cn("moonui-theme", "py-1.5 pl-8 pr-2 text-sm font-semibold", className),
|
|
7366
7195
|
...props
|
|
7367
7196
|
}
|
|
7368
7197
|
));
|
|
@@ -7398,7 +7227,7 @@ var SelectSeparator = t__namespace.forwardRef(({ className, ...props }, ref) =>
|
|
|
7398
7227
|
SelectPrimitive__namespace.Separator,
|
|
7399
7228
|
{
|
|
7400
7229
|
ref,
|
|
7401
|
-
className: cn("-mx-1 my-1 h-px bg-muted dark:bg-gray-700", className),
|
|
7230
|
+
className: cn("moonui-theme", "-mx-1 my-1 h-px bg-muted dark:bg-gray-700", className),
|
|
7402
7231
|
...props
|
|
7403
7232
|
}
|
|
7404
7233
|
));
|
|
@@ -7514,7 +7343,7 @@ var DropdownMenuSeparator = t__namespace.forwardRef(({ className, ...props }, re
|
|
|
7514
7343
|
DropdownMenuPrimitive__namespace.Separator,
|
|
7515
7344
|
{
|
|
7516
7345
|
ref,
|
|
7517
|
-
className: cn("-mx-1 my-1 h-px bg-muted", className),
|
|
7346
|
+
className: cn("moonui-theme", "-mx-1 my-1 h-px bg-muted", className),
|
|
7518
7347
|
...props
|
|
7519
7348
|
}
|
|
7520
7349
|
));
|
|
@@ -7526,7 +7355,7 @@ var DropdownMenuShortcut = ({
|
|
|
7526
7355
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
7527
7356
|
"span",
|
|
7528
7357
|
{
|
|
7529
|
-
className: cn("ml-auto text-xs tracking-widest opacity-60", className),
|
|
7358
|
+
className: cn("moonui-theme", "ml-auto text-xs tracking-widest opacity-60", className),
|
|
7530
7359
|
...props
|
|
7531
7360
|
}
|
|
7532
7361
|
);
|
|
@@ -7582,6 +7411,15 @@ var Skeleton = t__namespace.forwardRef(
|
|
|
7582
7411
|
style,
|
|
7583
7412
|
...props
|
|
7584
7413
|
}, ref) => {
|
|
7414
|
+
const {
|
|
7415
|
+
onDrag,
|
|
7416
|
+
onDragEnd,
|
|
7417
|
+
onDragStart,
|
|
7418
|
+
onAnimationStart,
|
|
7419
|
+
onAnimationEnd,
|
|
7420
|
+
onAnimationIteration,
|
|
7421
|
+
...filteredProps
|
|
7422
|
+
} = props;
|
|
7585
7423
|
if (isLoaded && children) {
|
|
7586
7424
|
if (useMotion) {
|
|
7587
7425
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -7591,13 +7429,13 @@ var Skeleton = t__namespace.forwardRef(
|
|
|
7591
7429
|
initial: { opacity: 0 },
|
|
7592
7430
|
animate: { opacity: 1 },
|
|
7593
7431
|
transition: { duration: fadeInDuration / 1e3 },
|
|
7594
|
-
className,
|
|
7432
|
+
className: cn("moonui-theme", className),
|
|
7595
7433
|
style: {
|
|
7596
7434
|
height,
|
|
7597
7435
|
width,
|
|
7598
7436
|
...style
|
|
7599
7437
|
},
|
|
7600
|
-
...
|
|
7438
|
+
...filteredProps,
|
|
7601
7439
|
children
|
|
7602
7440
|
}
|
|
7603
7441
|
);
|
|
@@ -7606,7 +7444,7 @@ var Skeleton = t__namespace.forwardRef(
|
|
|
7606
7444
|
"div",
|
|
7607
7445
|
{
|
|
7608
7446
|
ref,
|
|
7609
|
-
className: cn("animate-fade-in", className),
|
|
7447
|
+
className: cn("moonui-theme", "animate-fade-in", className),
|
|
7610
7448
|
style: {
|
|
7611
7449
|
animationDuration: `${fadeInDuration}ms`,
|
|
7612
7450
|
height,
|
|
@@ -7624,6 +7462,7 @@ var Skeleton = t__namespace.forwardRef(
|
|
|
7624
7462
|
{
|
|
7625
7463
|
ref,
|
|
7626
7464
|
className: cn(
|
|
7465
|
+
"moonui-theme",
|
|
7627
7466
|
skeletonVariants({ variant, size, shape, animation }),
|
|
7628
7467
|
"relative isolate",
|
|
7629
7468
|
className
|
|
@@ -7634,7 +7473,7 @@ var Skeleton = t__namespace.forwardRef(
|
|
|
7634
7473
|
...style
|
|
7635
7474
|
},
|
|
7636
7475
|
...useMotion ? skeletonAnimation : {},
|
|
7637
|
-
...
|
|
7476
|
+
...filteredProps
|
|
7638
7477
|
}
|
|
7639
7478
|
);
|
|
7640
7479
|
}
|
|
@@ -7656,7 +7495,7 @@ var SkeletonText = t__namespace.forwardRef(
|
|
|
7656
7495
|
"div",
|
|
7657
7496
|
{
|
|
7658
7497
|
ref,
|
|
7659
|
-
className: cn("flex flex-col", className),
|
|
7498
|
+
className: cn("moonui-theme", "flex flex-col", className),
|
|
7660
7499
|
style: { gap: spacing },
|
|
7661
7500
|
...props,
|
|
7662
7501
|
children: Array.from({ length: lines }).map((_, i) => {
|
|
@@ -7696,7 +7535,7 @@ var SkeletonAvatar = t__namespace.forwardRef(
|
|
|
7696
7535
|
variant,
|
|
7697
7536
|
animation,
|
|
7698
7537
|
shape: "circle",
|
|
7699
|
-
className: cn("shrink-0", className),
|
|
7538
|
+
className: cn("moonui-theme", "shrink-0", className),
|
|
7700
7539
|
style: {
|
|
7701
7540
|
height: size,
|
|
7702
7541
|
width: size
|
|
@@ -7888,7 +7727,7 @@ function DataTable({
|
|
|
7888
7727
|
return /* @__PURE__ */ jsxRuntime.jsx(DataTableLoading, {});
|
|
7889
7728
|
}
|
|
7890
7729
|
const selectedRows = table.getFilteredSelectedRowModel().rows;
|
|
7891
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("space-y-4", className), children: [
|
|
7730
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("moonui-theme", "space-y-4", className), children: [
|
|
7892
7731
|
(title || description) && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-1", children: [
|
|
7893
7732
|
title && /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "text-lg font-semibold", children: title }),
|
|
7894
7733
|
description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-muted-foreground", children: description })
|
|
@@ -8136,6 +7975,202 @@ function createFilterableColumn(accessorKey, header, filterFn) {
|
|
|
8136
7975
|
filterFn
|
|
8137
7976
|
};
|
|
8138
7977
|
}
|
|
7978
|
+
function Calendar({
|
|
7979
|
+
mode = "single",
|
|
7980
|
+
selected,
|
|
7981
|
+
onSelect,
|
|
7982
|
+
disabled,
|
|
7983
|
+
showOutsideDays = false,
|
|
7984
|
+
className,
|
|
7985
|
+
classNames,
|
|
7986
|
+
numberOfMonths = 1,
|
|
7987
|
+
defaultMonth,
|
|
7988
|
+
...props
|
|
7989
|
+
}) {
|
|
7990
|
+
const [currentMonth, setCurrentMonth] = t__namespace.useState(
|
|
7991
|
+
defaultMonth || selected && selected || /* @__PURE__ */ new Date()
|
|
7992
|
+
);
|
|
7993
|
+
const weekDays = [
|
|
7994
|
+
{ short: "S", full: "Sunday" },
|
|
7995
|
+
{ short: "M", full: "Monday" },
|
|
7996
|
+
{ short: "T", full: "Tuesday" },
|
|
7997
|
+
{ short: "W", full: "Wednesday" },
|
|
7998
|
+
{ short: "T", full: "Thursday" },
|
|
7999
|
+
{ short: "F", full: "Friday" },
|
|
8000
|
+
{ short: "S", full: "Saturday" }
|
|
8001
|
+
];
|
|
8002
|
+
const handlePreviousMonth = () => {
|
|
8003
|
+
setCurrentMonth(dateFns.subMonths(currentMonth, 1));
|
|
8004
|
+
};
|
|
8005
|
+
const handleNextMonth = () => {
|
|
8006
|
+
setCurrentMonth(dateFns.addMonths(currentMonth, 1));
|
|
8007
|
+
};
|
|
8008
|
+
const handleDateClick = (date) => {
|
|
8009
|
+
if (disabled?.(date))
|
|
8010
|
+
return;
|
|
8011
|
+
if (mode === "single") {
|
|
8012
|
+
onSelect?.(date);
|
|
8013
|
+
} else if (mode === "range") {
|
|
8014
|
+
const currentSelection = selected;
|
|
8015
|
+
if (!currentSelection?.from || currentSelection.from && currentSelection.to) {
|
|
8016
|
+
onSelect?.({ from: date, to: void 0 });
|
|
8017
|
+
} else {
|
|
8018
|
+
if (date < currentSelection.from) {
|
|
8019
|
+
onSelect?.({ from: date, to: currentSelection.from });
|
|
8020
|
+
} else {
|
|
8021
|
+
onSelect?.({ from: currentSelection.from, to: date });
|
|
8022
|
+
}
|
|
8023
|
+
}
|
|
8024
|
+
}
|
|
8025
|
+
};
|
|
8026
|
+
const isDateSelected = (date) => {
|
|
8027
|
+
if (!selected)
|
|
8028
|
+
return false;
|
|
8029
|
+
if (mode === "single") {
|
|
8030
|
+
return dateFns.isSameDay(date, selected);
|
|
8031
|
+
} else if (mode === "range") {
|
|
8032
|
+
const range = selected;
|
|
8033
|
+
if (range.from && range.to) {
|
|
8034
|
+
return date >= range.from && date <= range.to;
|
|
8035
|
+
}
|
|
8036
|
+
return range.from ? dateFns.isSameDay(date, range.from) : false;
|
|
8037
|
+
}
|
|
8038
|
+
return false;
|
|
8039
|
+
};
|
|
8040
|
+
const isRangeStart = (date) => {
|
|
8041
|
+
if (mode !== "range" || !selected)
|
|
8042
|
+
return false;
|
|
8043
|
+
const range = selected;
|
|
8044
|
+
return range.from ? dateFns.isSameDay(date, range.from) : false;
|
|
8045
|
+
};
|
|
8046
|
+
const isRangeEnd = (date) => {
|
|
8047
|
+
if (mode !== "range" || !selected)
|
|
8048
|
+
return false;
|
|
8049
|
+
const range = selected;
|
|
8050
|
+
return range.to ? dateFns.isSameDay(date, range.to) : false;
|
|
8051
|
+
};
|
|
8052
|
+
const isRangeMiddle = (date) => {
|
|
8053
|
+
if (mode !== "range" || !selected)
|
|
8054
|
+
return false;
|
|
8055
|
+
const range = selected;
|
|
8056
|
+
if (!range.from || !range.to)
|
|
8057
|
+
return false;
|
|
8058
|
+
return date > range.from && date < range.to;
|
|
8059
|
+
};
|
|
8060
|
+
const getDaysInMonth = () => {
|
|
8061
|
+
const start = dateFns.startOfMonth(currentMonth);
|
|
8062
|
+
const end = dateFns.endOfMonth(currentMonth);
|
|
8063
|
+
const days2 = dateFns.eachDayOfInterval({ start, end });
|
|
8064
|
+
const firstDayOfWeek = dateFns.getDay(start);
|
|
8065
|
+
const previousMonthDays = [];
|
|
8066
|
+
if (firstDayOfWeek > 0 && showOutsideDays) {
|
|
8067
|
+
const previousMonthStart = dateFns.startOfWeek(start);
|
|
8068
|
+
const previousMonthEnd = new Date(start);
|
|
8069
|
+
previousMonthEnd.setDate(previousMonthEnd.getDate() - 1);
|
|
8070
|
+
previousMonthDays.push(...dateFns.eachDayOfInterval({
|
|
8071
|
+
start: previousMonthStart,
|
|
8072
|
+
end: previousMonthEnd
|
|
8073
|
+
}));
|
|
8074
|
+
}
|
|
8075
|
+
const lastDayOfWeek = dateFns.getDay(end);
|
|
8076
|
+
const nextMonthDays = [];
|
|
8077
|
+
if (lastDayOfWeek < 6 && showOutsideDays) {
|
|
8078
|
+
const nextMonthStart = new Date(end);
|
|
8079
|
+
nextMonthStart.setDate(nextMonthStart.getDate() + 1);
|
|
8080
|
+
const nextMonthEnd = dateFns.endOfWeek(end);
|
|
8081
|
+
nextMonthDays.push(...dateFns.eachDayOfInterval({
|
|
8082
|
+
start: nextMonthStart,
|
|
8083
|
+
end: nextMonthEnd
|
|
8084
|
+
}));
|
|
8085
|
+
}
|
|
8086
|
+
const emptyCells = [];
|
|
8087
|
+
if (!showOutsideDays && firstDayOfWeek > 0) {
|
|
8088
|
+
for (let i = 0; i < firstDayOfWeek; i++) {
|
|
8089
|
+
emptyCells.push(null);
|
|
8090
|
+
}
|
|
8091
|
+
}
|
|
8092
|
+
return [...previousMonthDays, ...emptyCells, ...days2, ...nextMonthDays];
|
|
8093
|
+
};
|
|
8094
|
+
const days = getDaysInMonth();
|
|
8095
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("moonui-theme", "p-0", className), children: [
|
|
8096
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center justify-between px-6 py-4", children: [
|
|
8097
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
8098
|
+
"button",
|
|
8099
|
+
{
|
|
8100
|
+
onClick: handlePreviousMonth,
|
|
8101
|
+
className: cn(
|
|
8102
|
+
"h-10 w-10 bg-transparent p-0 rounded-lg",
|
|
8103
|
+
"hover:bg-muted transition-colors",
|
|
8104
|
+
"inline-flex items-center justify-center"
|
|
8105
|
+
),
|
|
8106
|
+
type: "button",
|
|
8107
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ChevronLeft, { className: "h-5 w-5" })
|
|
8108
|
+
}
|
|
8109
|
+
),
|
|
8110
|
+
/* @__PURE__ */ jsxRuntime.jsx("h2", { className: "text-base font-medium", children: dateFns.format(currentMonth, "MMMM yyyy") }),
|
|
8111
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
8112
|
+
"button",
|
|
8113
|
+
{
|
|
8114
|
+
onClick: handleNextMonth,
|
|
8115
|
+
className: cn(
|
|
8116
|
+
"h-10 w-10 bg-transparent p-0 rounded-lg",
|
|
8117
|
+
"hover:bg-muted transition-colors",
|
|
8118
|
+
"inline-flex items-center justify-center"
|
|
8119
|
+
),
|
|
8120
|
+
type: "button",
|
|
8121
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ChevronRight, { className: "h-5 w-5" })
|
|
8122
|
+
}
|
|
8123
|
+
)
|
|
8124
|
+
] }),
|
|
8125
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "px-6 pb-4", children: [
|
|
8126
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid grid-cols-7 mb-2", children: weekDays.map((day, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
8127
|
+
"div",
|
|
8128
|
+
{
|
|
8129
|
+
className: "text-muted-foreground text-xs font-medium h-10 flex items-center justify-center",
|
|
8130
|
+
title: day.full,
|
|
8131
|
+
children: day.short
|
|
8132
|
+
},
|
|
8133
|
+
`weekday-${index}`
|
|
8134
|
+
)) }),
|
|
8135
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid grid-cols-7 gap-1", children: days.map((date, index) => {
|
|
8136
|
+
if (!date) {
|
|
8137
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "h-10 w-10" }, `empty-${index}`);
|
|
8138
|
+
}
|
|
8139
|
+
const isOutsideMonth = !dateFns.isSameMonth(date, currentMonth);
|
|
8140
|
+
const isDisabled = disabled?.(date) || false;
|
|
8141
|
+
const isSelected = isDateSelected(date);
|
|
8142
|
+
const isTodayDate = dateFns.isToday(date);
|
|
8143
|
+
const rangeStart = isRangeStart(date);
|
|
8144
|
+
const rangeEnd = isRangeEnd(date);
|
|
8145
|
+
const rangeMiddle = isRangeMiddle(date);
|
|
8146
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
8147
|
+
"button",
|
|
8148
|
+
{
|
|
8149
|
+
onClick: () => handleDateClick(date),
|
|
8150
|
+
disabled: isDisabled,
|
|
8151
|
+
className: cn(
|
|
8152
|
+
"h-10 w-10 p-0 font-normal",
|
|
8153
|
+
"inline-flex items-center justify-center rounded-lg",
|
|
8154
|
+
"hover:bg-muted transition-colors text-sm",
|
|
8155
|
+
"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
|
|
8156
|
+
isOutsideMonth && "text-muted-foreground/50",
|
|
8157
|
+
isDisabled && "text-muted-foreground/30 cursor-not-allowed hover:bg-transparent",
|
|
8158
|
+
isSelected && !rangeMiddle && "bg-primary text-primary-foreground font-medium hover:bg-primary hover:text-primary-foreground",
|
|
8159
|
+
isTodayDate && "font-semibold relative after:absolute after:bottom-1 after:left-1/2 after:-translate-x-1/2 after:h-1 after:w-1 after:rounded-full after:bg-primary",
|
|
8160
|
+
rangeMiddle && "bg-accent/30 text-accent-foreground rounded-none",
|
|
8161
|
+
rangeStart && "rounded-r-none",
|
|
8162
|
+
rangeEnd && "rounded-l-none"
|
|
8163
|
+
),
|
|
8164
|
+
type: "button",
|
|
8165
|
+
children: dateFns.format(date, "d")
|
|
8166
|
+
},
|
|
8167
|
+
date.toISOString()
|
|
8168
|
+
);
|
|
8169
|
+
}) })
|
|
8170
|
+
] })
|
|
8171
|
+
] });
|
|
8172
|
+
}
|
|
8173
|
+
Calendar.displayName = "Calendar";
|
|
8139
8174
|
var datePickerVariants = classVarianceAuthority.cva(
|
|
8140
8175
|
"w-full justify-start text-left font-normal",
|
|
8141
8176
|
{
|
|
@@ -8143,8 +8178,7 @@ var datePickerVariants = classVarianceAuthority.cva(
|
|
|
8143
8178
|
variant: {
|
|
8144
8179
|
default: "",
|
|
8145
8180
|
outline: "border-2",
|
|
8146
|
-
ghost: "hover:bg-accent hover:text-accent-foreground"
|
|
8147
|
-
minimal: "h-auto p-0 border-0 shadow-none"
|
|
8181
|
+
ghost: "hover:bg-accent hover:text-accent-foreground"
|
|
8148
8182
|
},
|
|
8149
8183
|
size: {
|
|
8150
8184
|
default: "h-10 px-4 py-2",
|
|
@@ -8222,11 +8256,11 @@ function DatePicker({
|
|
|
8222
8256
|
};
|
|
8223
8257
|
const displayValue = internalDate && dateFns.isValid(internalDate) ? dateFns.format(internalDate, formatString) : null;
|
|
8224
8258
|
const iconElement = icon || /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Calendar, { className: "h-4 w-4" });
|
|
8225
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(Popover, { open, onOpenChange: setOpen, children: [
|
|
8259
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "moonui-theme", children: /* @__PURE__ */ jsxRuntime.jsxs(Popover, { open, onOpenChange: setOpen, children: [
|
|
8226
8260
|
/* @__PURE__ */ jsxRuntime.jsx(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
8227
8261
|
Button,
|
|
8228
8262
|
{
|
|
8229
|
-
variant: variant === "
|
|
8263
|
+
variant: variant === "ghost" ? "ghost" : "outline",
|
|
8230
8264
|
className: cn(
|
|
8231
8265
|
datePickerVariants({ variant, size, state }),
|
|
8232
8266
|
!displayValue && "text-muted-foreground",
|
|
@@ -8305,7 +8339,7 @@ function DatePicker({
|
|
|
8305
8339
|
children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
8306
8340
|
framerMotion.motion.div,
|
|
8307
8341
|
{
|
|
8308
|
-
...
|
|
8342
|
+
...pageTransitions.fadeIn,
|
|
8309
8343
|
className: "rounded-2xl bg-background overflow-hidden",
|
|
8310
8344
|
children: [
|
|
8311
8345
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -8335,7 +8369,7 @@ function DatePicker({
|
|
|
8335
8369
|
)
|
|
8336
8370
|
}
|
|
8337
8371
|
)
|
|
8338
|
-
] });
|
|
8372
|
+
] }) });
|
|
8339
8373
|
}
|
|
8340
8374
|
function DateRangePicker({
|
|
8341
8375
|
className,
|
|
@@ -8373,7 +8407,7 @@ function DateRangePicker({
|
|
|
8373
8407
|
/* @__PURE__ */ jsxRuntime.jsx(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
8374
8408
|
Button,
|
|
8375
8409
|
{
|
|
8376
|
-
variant: props.variant === "
|
|
8410
|
+
variant: props.variant === "ghost" ? "ghost" : "outline",
|
|
8377
8411
|
className: cn(
|
|
8378
8412
|
datePickerVariants({
|
|
8379
8413
|
variant: props.variant,
|
|
@@ -8531,7 +8565,7 @@ function MonthPicker({
|
|
|
8531
8565
|
/* @__PURE__ */ jsxRuntime.jsx(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
8532
8566
|
Button,
|
|
8533
8567
|
{
|
|
8534
|
-
variant: props.variant || "outline",
|
|
8568
|
+
variant: props.variant === "default" ? "outline" : props.variant || "outline",
|
|
8535
8569
|
className: cn(
|
|
8536
8570
|
datePickerVariants({
|
|
8537
8571
|
variant: props.variant,
|
|
@@ -8573,7 +8607,7 @@ function MonthPicker({
|
|
|
8573
8607
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid grid-cols-3 gap-2", children: months.map((month, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
8574
8608
|
Button,
|
|
8575
8609
|
{
|
|
8576
|
-
variant: value && value.getMonth() === index ? "
|
|
8610
|
+
variant: value && value.getMonth() === index ? "primary" : "outline",
|
|
8577
8611
|
size: "sm",
|
|
8578
8612
|
onClick: () => handleMonthSelect(index),
|
|
8579
8613
|
className: "h-8 text-xs",
|
|
@@ -8619,7 +8653,7 @@ function DraggableList({
|
|
|
8619
8653
|
const handleDragEnd = () => {
|
|
8620
8654
|
setDraggedIndex(null);
|
|
8621
8655
|
};
|
|
8622
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("space-y-2", className), children: items.map((item, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
8656
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("moonui-theme", "space-y-2", className), children: items.map((item, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
8623
8657
|
"div",
|
|
8624
8658
|
{
|
|
8625
8659
|
draggable: !disabled,
|
|
@@ -8738,7 +8772,7 @@ var Progress = t__namespace.forwardRef(({
|
|
|
8738
8772
|
"div",
|
|
8739
8773
|
{
|
|
8740
8774
|
ref,
|
|
8741
|
-
className: cn(progressVariants({ variant, size, radius, animation }), className),
|
|
8775
|
+
className: cn("moonui-theme", progressVariants({ variant, size, radius, animation }), className),
|
|
8742
8776
|
role: "progressbar",
|
|
8743
8777
|
"aria-valuemin": 0,
|
|
8744
8778
|
"aria-valuemax": max2,
|
|
@@ -8819,7 +8853,7 @@ var FileItem = ({
|
|
|
8819
8853
|
/* @__PURE__ */ jsxRuntime.jsx(lucideReact.Loader2, { className: "h-3 w-3 mr-1 animate-spin" }),
|
|
8820
8854
|
"Uploading"
|
|
8821
8855
|
] }),
|
|
8822
|
-
status === "success" && /* @__PURE__ */ jsxRuntime.jsxs(Badge, { variant: "
|
|
8856
|
+
status === "success" && /* @__PURE__ */ jsxRuntime.jsxs(Badge, { variant: "success", className: "h-5", children: [
|
|
8823
8857
|
/* @__PURE__ */ jsxRuntime.jsx(lucideReact.CheckCircle, { className: "h-3 w-3 mr-1" }),
|
|
8824
8858
|
"Done"
|
|
8825
8859
|
] }),
|
|
@@ -8968,7 +9002,7 @@ var FileUpload = t__namespace.default.forwardRef(
|
|
|
8968
9002
|
onRemove(fileId);
|
|
8969
9003
|
}
|
|
8970
9004
|
}, [onRemove]);
|
|
8971
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { ref, className: cn("space-y-4", className), ...props, children: [
|
|
9005
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { ref, className: cn("moonui-theme", "space-y-4", className), ...props, children: [
|
|
8972
9006
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
8973
9007
|
framerMotion.motion.div,
|
|
8974
9008
|
{
|
|
@@ -9307,7 +9341,7 @@ function GitHubStarButton({
|
|
|
9307
9341
|
{
|
|
9308
9342
|
variant: "outline",
|
|
9309
9343
|
size,
|
|
9310
|
-
className: cn("group", className),
|
|
9344
|
+
className: cn("moonui-theme", "group", className),
|
|
9311
9345
|
asChild: true,
|
|
9312
9346
|
children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
9313
9347
|
"a",
|
|
@@ -9335,7 +9369,7 @@ function MoonLogo({
|
|
|
9335
9369
|
}) {
|
|
9336
9370
|
const logoId = t__namespace.useId();
|
|
9337
9371
|
const gradientId = `moon-gradient-${logoId}`;
|
|
9338
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("flex items-center gap-2", className), children: [
|
|
9372
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("moonui-theme", "flex items-center gap-2", className), children: [
|
|
9339
9373
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
9340
9374
|
"svg",
|
|
9341
9375
|
{
|
|
@@ -9412,7 +9446,7 @@ var Pagination = ({ className, ...props }) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
|
9412
9446
|
{
|
|
9413
9447
|
role: "navigation",
|
|
9414
9448
|
"aria-label": "pagination",
|
|
9415
|
-
className: cn("mx-auto flex w-full justify-center", className),
|
|
9449
|
+
className: cn("moonui-theme", "mx-auto flex w-full justify-center", className),
|
|
9416
9450
|
...props
|
|
9417
9451
|
}
|
|
9418
9452
|
);
|
|
@@ -9421,12 +9455,12 @@ var PaginationContent = t__namespace.forwardRef(({ className, ...props }, ref) =
|
|
|
9421
9455
|
"ul",
|
|
9422
9456
|
{
|
|
9423
9457
|
ref,
|
|
9424
|
-
className: cn("flex flex-row items-center gap-1", className),
|
|
9458
|
+
className: cn("moonui-theme", "flex flex-row items-center gap-1", className),
|
|
9425
9459
|
...props
|
|
9426
9460
|
}
|
|
9427
9461
|
));
|
|
9428
9462
|
PaginationContent.displayName = "PaginationContent";
|
|
9429
|
-
var PaginationItem = t__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("li", { ref, className: cn("", className), ...props }));
|
|
9463
|
+
var PaginationItem = t__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("li", { ref, className: cn("moonui-theme", "", className), ...props }));
|
|
9430
9464
|
PaginationItem.displayName = "PaginationItem";
|
|
9431
9465
|
var PaginationLink = ({
|
|
9432
9466
|
className,
|
|
@@ -9455,8 +9489,8 @@ var PaginationPrevious = ({
|
|
|
9455
9489
|
PaginationLink,
|
|
9456
9490
|
{
|
|
9457
9491
|
"aria-label": "Go to previous page",
|
|
9458
|
-
size: "
|
|
9459
|
-
className: cn("gap-1 pl-2.5", className),
|
|
9492
|
+
size: "md",
|
|
9493
|
+
className: cn("moonui-theme", "gap-1 pl-2.5", className),
|
|
9460
9494
|
...props,
|
|
9461
9495
|
children: [
|
|
9462
9496
|
/* @__PURE__ */ jsxRuntime.jsx(lucideReact.ChevronLeft, { className: "h-4 w-4" }),
|
|
@@ -9472,8 +9506,8 @@ var PaginationNext = ({
|
|
|
9472
9506
|
PaginationLink,
|
|
9473
9507
|
{
|
|
9474
9508
|
"aria-label": "Go to next page",
|
|
9475
|
-
size: "
|
|
9476
|
-
className: cn("gap-1 pr-2.5", className),
|
|
9509
|
+
size: "md",
|
|
9510
|
+
className: cn("moonui-theme", "gap-1 pr-2.5", className),
|
|
9477
9511
|
...props,
|
|
9478
9512
|
children: [
|
|
9479
9513
|
/* @__PURE__ */ jsxRuntime.jsx("span", { children: "Next" }),
|
|
@@ -9489,7 +9523,7 @@ var PaginationEllipsis = ({
|
|
|
9489
9523
|
"span",
|
|
9490
9524
|
{
|
|
9491
9525
|
"aria-hidden": true,
|
|
9492
|
-
className: cn("flex h-9 w-9 items-center justify-center", className),
|
|
9526
|
+
className: cn("moonui-theme", "flex h-9 w-9 items-center justify-center", className),
|
|
9493
9527
|
...props,
|
|
9494
9528
|
children: [
|
|
9495
9529
|
/* @__PURE__ */ jsxRuntime.jsx(lucideReact.MoreHorizontal, { className: "h-4 w-4" }),
|
|
@@ -9528,7 +9562,7 @@ var RadioGroup2 = t__namespace.forwardRef(
|
|
|
9528
9562
|
{
|
|
9529
9563
|
ref,
|
|
9530
9564
|
role: "radiogroup",
|
|
9531
|
-
className: cn("grid gap-2", className),
|
|
9565
|
+
className: cn("moonui-theme", "grid gap-2", className),
|
|
9532
9566
|
...props
|
|
9533
9567
|
}
|
|
9534
9568
|
) });
|
|
@@ -9933,7 +9967,7 @@ var Toggle2 = t__namespace.forwardRef(({ className, variant, size, ...props }, r
|
|
|
9933
9967
|
Root13,
|
|
9934
9968
|
{
|
|
9935
9969
|
ref,
|
|
9936
|
-
className: cn(toggleVariants({ variant, size, className })),
|
|
9970
|
+
className: cn("moonui-theme", toggleVariants({ variant, size, className })),
|
|
9937
9971
|
...props
|
|
9938
9972
|
}
|
|
9939
9973
|
));
|
|
@@ -9969,7 +10003,7 @@ var TooltipArrow = t__namespace.forwardRef(({ className, ...props }, ref) => /*
|
|
|
9969
10003
|
TooltipPrimitive__namespace.Arrow,
|
|
9970
10004
|
{
|
|
9971
10005
|
ref,
|
|
9972
|
-
className: cn("fill-current", className),
|
|
10006
|
+
className: cn("moonui-theme", "fill-current", className),
|
|
9973
10007
|
...props
|
|
9974
10008
|
}
|
|
9975
10009
|
));
|
|
@@ -9979,7 +10013,7 @@ var TooltipContent = t__namespace.forwardRef(({ className, variant, size, showAr
|
|
|
9979
10013
|
{
|
|
9980
10014
|
ref,
|
|
9981
10015
|
sideOffset,
|
|
9982
|
-
className: cn(tooltipVariants({ variant, size }), className),
|
|
10016
|
+
className: cn("moonui-theme", tooltipVariants({ variant, size }), className),
|
|
9983
10017
|
...props,
|
|
9984
10018
|
children: [
|
|
9985
10019
|
props.children,
|
|
@@ -9997,7 +10031,6 @@ var SimpleTooltip = t__namespace.forwardRef(
|
|
|
9997
10031
|
side = "top",
|
|
9998
10032
|
align = "center",
|
|
9999
10033
|
delayDuration = 400,
|
|
10000
|
-
skipDelayDuration = 300,
|
|
10001
10034
|
sideOffset = 4,
|
|
10002
10035
|
showArrow = false,
|
|
10003
10036
|
className,
|
|
@@ -10013,7 +10046,6 @@ var SimpleTooltip = t__namespace.forwardRef(
|
|
|
10013
10046
|
defaultOpen,
|
|
10014
10047
|
onOpenChange,
|
|
10015
10048
|
delayDuration,
|
|
10016
|
-
skipDelayDuration,
|
|
10017
10049
|
children: [
|
|
10018
10050
|
/* @__PURE__ */ jsxRuntime.jsx(TooltipTrigger, { asChild: true, children }),
|
|
10019
10051
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -10651,7 +10683,7 @@ var SwipeableCard = t__namespace.forwardRef(
|
|
|
10651
10683
|
}
|
|
10652
10684
|
);
|
|
10653
10685
|
SwipeableCard.displayName = "SwipeableCard";
|
|
10654
|
-
var Switch = t__namespace.forwardRef(({ className, size = "md", variant = "primary", loading, leftIcon, rightIcon, description, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "inline-flex items-center gap-2", children: [
|
|
10686
|
+
var Switch = t__namespace.forwardRef(({ className, size = "md", variant = "primary", loading, leftIcon, rightIcon, description, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "moonui-theme inline-flex items-center gap-2", children: [
|
|
10655
10687
|
leftIcon && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground", children: leftIcon }),
|
|
10656
10688
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
10657
10689
|
SwitchPrimitives__namespace.Root,
|
|
@@ -10716,6 +10748,7 @@ var Textarea = t__namespace.forwardRef(
|
|
|
10716
10748
|
"textarea",
|
|
10717
10749
|
{
|
|
10718
10750
|
className: cn(
|
|
10751
|
+
"moonui-theme",
|
|
10719
10752
|
"flex min-h-[80px] w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",
|
|
10720
10753
|
className
|
|
10721
10754
|
),
|
|
@@ -10761,7 +10794,7 @@ var Toast = t__namespace.forwardRef(({ className, variant, ...props }, ref) => {
|
|
|
10761
10794
|
ToastPrimitives__namespace.Root,
|
|
10762
10795
|
{
|
|
10763
10796
|
ref,
|
|
10764
|
-
className: cn(toastVariants({ variant }), className),
|
|
10797
|
+
className: cn("moonui-theme", toastVariants({ variant }), className),
|
|
10765
10798
|
...props
|
|
10766
10799
|
}
|
|
10767
10800
|
);
|
|
@@ -10797,7 +10830,7 @@ var ToastTitle = t__namespace.forwardRef(({ className, ...props }, ref) => /* @_
|
|
|
10797
10830
|
ToastPrimitives__namespace.Title,
|
|
10798
10831
|
{
|
|
10799
10832
|
ref,
|
|
10800
|
-
className: cn("text-sm font-semibold [&+div]:text-xs", className),
|
|
10833
|
+
className: cn("moonui-theme", "text-sm font-semibold [&+div]:text-xs", className),
|
|
10801
10834
|
...props
|
|
10802
10835
|
}
|
|
10803
10836
|
));
|
|
@@ -10806,7 +10839,7 @@ var ToastDescription = t__namespace.forwardRef(({ className, ...props }, ref) =>
|
|
|
10806
10839
|
ToastPrimitives__namespace.Description,
|
|
10807
10840
|
{
|
|
10808
10841
|
ref,
|
|
10809
|
-
className: cn("text-sm opacity-90", className),
|
|
10842
|
+
className: cn("moonui-theme", "text-sm opacity-90", className),
|
|
10810
10843
|
...props
|
|
10811
10844
|
}
|
|
10812
10845
|
));
|
|
@@ -11000,7 +11033,6 @@ exports.BreadcrumbList = BreadcrumbList;
|
|
|
11000
11033
|
exports.BreadcrumbPage = BreadcrumbPage;
|
|
11001
11034
|
exports.BreadcrumbSeparator = BreadcrumbSeparator;
|
|
11002
11035
|
exports.Button = Button;
|
|
11003
|
-
exports.Calendar = Calendar;
|
|
11004
11036
|
exports.Card = Card;
|
|
11005
11037
|
exports.CardContent = CardContent;
|
|
11006
11038
|
exports.CardDescription = CardDescription;
|