@moontra/moonui 3.0.1 → 3.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/chunk-X5ULQZNC.global.js +33 -0
- package/dist/chunk-X5ULQZNC.global.js.map +1 -0
- package/dist/index.d.mts +169 -2
- package/dist/index.d.ts +169 -2
- package/dist/index.global.js +481 -151
- package/dist/index.global.js.map +1 -1
- package/dist/index.js +989 -288
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +903 -253
- package/dist/index.mjs.map +1 -1
- package/dist/lib/theme.d.mts +1 -1
- package/dist/lib/theme.d.ts +1 -1
- package/dist/lib/theme.global.js +6 -30
- package/dist/lib/theme.global.js.map +1 -1
- package/dist/lib/theme.js +11 -6
- package/dist/lib/theme.js.map +1 -1
- package/dist/lib/theme.mjs +11 -6
- package/dist/lib/theme.mjs.map +1 -1
- package/package.json +3 -1
- package/src/components/ui/__tests__/carousel.test.tsx +291 -0
- package/src/components/ui/__tests__/input-otp.test.tsx +228 -0
- package/src/components/ui/__tests__/kbd.test.tsx +86 -0
- package/src/components/ui/__tests__/rating.test.tsx +218 -0
- package/src/components/ui/__tests__/spinner.test.tsx +141 -0
- package/src/components/ui/carousel.tsx +324 -0
- package/src/components/ui/index.ts +56 -0
- package/src/components/ui/input-otp.tsx +140 -0
- package/src/components/ui/kbd.tsx +66 -0
- package/src/components/ui/rating.tsx +253 -0
- package/src/components/ui/spinner.tsx +112 -0
- package/tailwind-preset.js +6 -0
- package/dist/chunk-PLK4O6WY.global.js +0 -33
- package/dist/chunk-PLK4O6WY.global.js.map +0 -1
package/dist/index.mjs
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
|
|
3
|
-
import * as
|
|
4
|
-
import
|
|
3
|
+
import * as React10 from 'react';
|
|
4
|
+
import React10__default, { useState, useCallback, useEffect } from 'react';
|
|
5
5
|
import * as AccordionPrimitive from '@radix-ui/react-accordion';
|
|
6
|
-
import { ChevronDown, Info, AlertCircle, AlertTriangle, Check, X, MoreHorizontal, Loader2, CreditCard, Minus, Search, ChevronRight, Circle, Upload, ChevronUp, Phone, Bold, Italic, Underline, Strikethrough, AlignLeft, AlignCenter, AlignRight, AlignJustify, List, ListOrdered, Quote, Code, Link, Image, Palette, Undo, Redo, Edit, Eye,
|
|
6
|
+
import { ChevronDown, Info, AlertCircle, AlertTriangle, Check, X, MoreHorizontal, Loader2, CreditCard, ArrowLeft, ArrowRight, Minus, Search, ChevronRight, Circle, Upload, Dot, ChevronUp, Phone, Bold, Italic, Underline, Strikethrough, AlignLeft, AlignCenter, AlignRight, AlignJustify, List, ListOrdered, Quote, Code, Link, Image, Palette, Undo, Redo, Edit, Eye, ChevronLeft, Copy, ArrowDown, ArrowUp, ArrowUpDown, Calendar as Calendar$1, Clock, CheckCircle, Star, GitFork, ExternalLink, Crown, Lock, Zap, Video, Music, FileText, File } from 'lucide-react';
|
|
7
7
|
export { Palette, Pipette } from 'lucide-react';
|
|
8
8
|
import { clsx } from 'clsx';
|
|
9
9
|
import { twMerge } from 'tailwind-merge';
|
|
@@ -13,6 +13,7 @@ import * as AvatarPrimitive from '@radix-ui/react-avatar';
|
|
|
13
13
|
import { motion, AnimatePresence, useMotionValue, useTransform, animate } from 'framer-motion';
|
|
14
14
|
import { format, isSameMonth, isToday, isValid, subMonths, addMonths, isSameDay, startOfMonth, endOfMonth, eachDayOfInterval, getDay, startOfWeek, endOfWeek } from 'date-fns';
|
|
15
15
|
export { format } from 'date-fns';
|
|
16
|
+
import useEmblaCarousel from 'embla-carousel-react';
|
|
16
17
|
import * as CheckboxPrimitive from '@radix-ui/react-checkbox';
|
|
17
18
|
import * as CollapsiblePrimitive from '@radix-ui/react-collapsible';
|
|
18
19
|
import * as LabelPrimitive from '@radix-ui/react-label';
|
|
@@ -20,8 +21,10 @@ import * as PopoverPrimitive from '@radix-ui/react-popover';
|
|
|
20
21
|
import * as TabsPrimitive from '@radix-ui/react-tabs';
|
|
21
22
|
import { Command as Command$1 } from 'cmdk';
|
|
22
23
|
import * as DialogPrimitive from '@radix-ui/react-dialog';
|
|
23
|
-
import { useReactTable,
|
|
24
|
+
import { useReactTable, getCoreRowModel, getPaginationRowModel, getSortedRowModel, getFilteredRowModel, flexRender } from '@tanstack/react-table';
|
|
24
25
|
import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
|
|
26
|
+
import { OTPInput, OTPInputContext } from 'input-otp';
|
|
27
|
+
export { REGEXP_ONLY_CHARS, REGEXP_ONLY_DIGITS, REGEXP_ONLY_DIGITS_AND_CHARS } from 'input-otp';
|
|
25
28
|
import * as SelectPrimitive from '@radix-ui/react-select';
|
|
26
29
|
import * as ScrollAreaPrimitive from '@radix-ui/react-scroll-area';
|
|
27
30
|
import * as SeparatorPrimitive from '@radix-ui/react-separator';
|
|
@@ -34,7 +37,7 @@ function cn(...inputs) {
|
|
|
34
37
|
return twMerge(clsx(inputs));
|
|
35
38
|
}
|
|
36
39
|
var Accordion = AccordionPrimitive.Root;
|
|
37
|
-
var AccordionItem =
|
|
40
|
+
var AccordionItem = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
38
41
|
AccordionPrimitive.Item,
|
|
39
42
|
{
|
|
40
43
|
ref,
|
|
@@ -43,7 +46,7 @@ var AccordionItem = React20.forwardRef(({ className, ...props }, ref) => /* @__P
|
|
|
43
46
|
}
|
|
44
47
|
));
|
|
45
48
|
AccordionItem.displayName = "AccordionItem";
|
|
46
|
-
var AccordionTrigger =
|
|
49
|
+
var AccordionTrigger = React10.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsx(AccordionPrimitive.Header, { className: "flex", children: /* @__PURE__ */ jsxs(
|
|
47
50
|
AccordionPrimitive.Trigger,
|
|
48
51
|
{
|
|
49
52
|
ref,
|
|
@@ -61,7 +64,7 @@ var AccordionTrigger = React20.forwardRef(({ className, children, ...props }, re
|
|
|
61
64
|
}
|
|
62
65
|
) }));
|
|
63
66
|
AccordionTrigger.displayName = AccordionPrimitive.Trigger.displayName;
|
|
64
|
-
var AccordionContent =
|
|
67
|
+
var AccordionContent = React10.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
65
68
|
AccordionPrimitive.Content,
|
|
66
69
|
{
|
|
67
70
|
ref,
|
|
@@ -111,7 +114,7 @@ var alertVariants = cva(
|
|
|
111
114
|
}
|
|
112
115
|
}
|
|
113
116
|
);
|
|
114
|
-
var Alert =
|
|
117
|
+
var Alert = React10.forwardRef(
|
|
115
118
|
({
|
|
116
119
|
className,
|
|
117
120
|
variant = "default",
|
|
@@ -123,7 +126,7 @@ var Alert = React20.forwardRef(
|
|
|
123
126
|
children,
|
|
124
127
|
...props
|
|
125
128
|
}, ref) => {
|
|
126
|
-
const Icon2 =
|
|
129
|
+
const Icon2 = React10.useMemo(() => {
|
|
127
130
|
switch (variant) {
|
|
128
131
|
case "success":
|
|
129
132
|
return Check;
|
|
@@ -171,7 +174,7 @@ var Alert = React20.forwardRef(
|
|
|
171
174
|
}
|
|
172
175
|
);
|
|
173
176
|
Alert.displayName = "Alert";
|
|
174
|
-
var AlertTitle =
|
|
177
|
+
var AlertTitle = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
175
178
|
"h5",
|
|
176
179
|
{
|
|
177
180
|
ref,
|
|
@@ -184,7 +187,7 @@ var AlertTitle = React20.forwardRef(({ className, ...props }, ref) => /* @__PURE
|
|
|
184
187
|
}
|
|
185
188
|
));
|
|
186
189
|
AlertTitle.displayName = "AlertTitle";
|
|
187
|
-
var AlertDescription =
|
|
190
|
+
var AlertDescription = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
188
191
|
"div",
|
|
189
192
|
{
|
|
190
193
|
ref,
|
|
@@ -220,7 +223,7 @@ var aspectRatioVariants = cva(
|
|
|
220
223
|
}
|
|
221
224
|
}
|
|
222
225
|
);
|
|
223
|
-
var AspectRatio =
|
|
226
|
+
var AspectRatio = React10.forwardRef(({ className, variant, radius, ratio = 16 / 9, style, children, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
224
227
|
"div",
|
|
225
228
|
{
|
|
226
229
|
ref,
|
|
@@ -269,7 +272,7 @@ var avatarVariants = cva(
|
|
|
269
272
|
}
|
|
270
273
|
}
|
|
271
274
|
);
|
|
272
|
-
var Avatar =
|
|
275
|
+
var Avatar = React10.forwardRef(({ className, size, radius, variant, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
273
276
|
AvatarPrimitive.Root,
|
|
274
277
|
{
|
|
275
278
|
ref,
|
|
@@ -278,7 +281,7 @@ var Avatar = React20.forwardRef(({ className, size, radius, variant, ...props },
|
|
|
278
281
|
}
|
|
279
282
|
));
|
|
280
283
|
Avatar.displayName = AvatarPrimitive.Root.displayName;
|
|
281
|
-
var AvatarImage =
|
|
284
|
+
var AvatarImage = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
282
285
|
AvatarPrimitive.Image,
|
|
283
286
|
{
|
|
284
287
|
ref,
|
|
@@ -287,7 +290,7 @@ var AvatarImage = React20.forwardRef(({ className, ...props }, ref) => /* @__PUR
|
|
|
287
290
|
}
|
|
288
291
|
));
|
|
289
292
|
AvatarImage.displayName = AvatarPrimitive.Image.displayName;
|
|
290
|
-
var AvatarFallback =
|
|
293
|
+
var AvatarFallback = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
291
294
|
AvatarPrimitive.Fallback,
|
|
292
295
|
{
|
|
293
296
|
ref,
|
|
@@ -299,7 +302,7 @@ var AvatarFallback = React20.forwardRef(({ className, ...props }, ref) => /* @__
|
|
|
299
302
|
}
|
|
300
303
|
));
|
|
301
304
|
AvatarFallback.displayName = AvatarPrimitive.Fallback.displayName;
|
|
302
|
-
var AvatarGroup =
|
|
305
|
+
var AvatarGroup = React10.forwardRef(
|
|
303
306
|
({ className, limit, avatars, overlapOffset = -8, ...props }, ref) => {
|
|
304
307
|
const visibleAvatars = limit ? avatars.slice(0, limit) : avatars;
|
|
305
308
|
const remainingCount = limit ? Math.max(0, avatars.length - limit) : 0;
|
|
@@ -532,7 +535,7 @@ var breadcrumbVariants = cva(
|
|
|
532
535
|
}
|
|
533
536
|
}
|
|
534
537
|
);
|
|
535
|
-
var Breadcrumb =
|
|
538
|
+
var Breadcrumb = React10.forwardRef(
|
|
536
539
|
({ className, variant, size, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
537
540
|
"nav",
|
|
538
541
|
{
|
|
@@ -544,9 +547,9 @@ var Breadcrumb = React20.forwardRef(
|
|
|
544
547
|
)
|
|
545
548
|
);
|
|
546
549
|
Breadcrumb.displayName = "Breadcrumb";
|
|
547
|
-
var BreadcrumbList =
|
|
550
|
+
var BreadcrumbList = React10.forwardRef(
|
|
548
551
|
({ className, collapsed, collapsedWidth = 3, ...props }, ref) => {
|
|
549
|
-
const childrenArray =
|
|
552
|
+
const childrenArray = React10.Children.toArray(props.children).filter(Boolean);
|
|
550
553
|
const childCount = childrenArray.length;
|
|
551
554
|
if (collapsed && childCount > collapsedWidth) {
|
|
552
555
|
const firstItem = childrenArray[0];
|
|
@@ -582,9 +585,9 @@ var BreadcrumbList = React20.forwardRef(
|
|
|
582
585
|
}
|
|
583
586
|
);
|
|
584
587
|
BreadcrumbList.displayName = "BreadcrumbList";
|
|
585
|
-
var BreadcrumbItem =
|
|
588
|
+
var BreadcrumbItem = React10.forwardRef(
|
|
586
589
|
({ className, isCurrent, href, asChild = false, ...props }, ref) => {
|
|
587
|
-
const Comp = asChild ?
|
|
590
|
+
const Comp = asChild ? React10.Fragment : href ? "a" : "span";
|
|
588
591
|
const itemProps = asChild ? {} : href ? { href } : {};
|
|
589
592
|
return /* @__PURE__ */ jsx(
|
|
590
593
|
"li",
|
|
@@ -641,7 +644,7 @@ var BreadcrumbEllipsis = ({
|
|
|
641
644
|
}
|
|
642
645
|
);
|
|
643
646
|
BreadcrumbEllipsis.displayName = "BreadcrumbEllipsis";
|
|
644
|
-
var BreadcrumbLink =
|
|
647
|
+
var BreadcrumbLink = React10.forwardRef(
|
|
645
648
|
({ className, href, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
646
649
|
"a",
|
|
647
650
|
{
|
|
@@ -656,7 +659,7 @@ var BreadcrumbLink = React20.forwardRef(
|
|
|
656
659
|
)
|
|
657
660
|
);
|
|
658
661
|
BreadcrumbLink.displayName = "BreadcrumbLink";
|
|
659
|
-
var BreadcrumbPage =
|
|
662
|
+
var BreadcrumbPage = React10.forwardRef(
|
|
660
663
|
({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
661
664
|
"span",
|
|
662
665
|
{
|
|
@@ -819,7 +822,7 @@ var buttonVariants = cva(
|
|
|
819
822
|
}
|
|
820
823
|
}
|
|
821
824
|
);
|
|
822
|
-
var Button =
|
|
825
|
+
var Button = React10.forwardRef(
|
|
823
826
|
({
|
|
824
827
|
className,
|
|
825
828
|
variant,
|
|
@@ -937,7 +940,26 @@ var springAnimations = {
|
|
|
937
940
|
type: "spring",
|
|
938
941
|
stiffness: 260,
|
|
939
942
|
damping: 20
|
|
940
|
-
}
|
|
943
|
+
},
|
|
944
|
+
// Bouncy spring for playful interactions
|
|
945
|
+
bouncy: {
|
|
946
|
+
type: "spring",
|
|
947
|
+
stiffness: 300,
|
|
948
|
+
damping: 15
|
|
949
|
+
},
|
|
950
|
+
// Stiff spring for quick responses
|
|
951
|
+
stiff: {
|
|
952
|
+
type: "spring",
|
|
953
|
+
stiffness: 400,
|
|
954
|
+
damping: 25
|
|
955
|
+
},
|
|
956
|
+
// Gentle spring for subtle movements
|
|
957
|
+
gentle: {
|
|
958
|
+
type: "spring",
|
|
959
|
+
stiffness: 150,
|
|
960
|
+
damping: 15
|
|
961
|
+
}
|
|
962
|
+
};
|
|
941
963
|
var hoverAnimations = {
|
|
942
964
|
lift: {
|
|
943
965
|
y: -2,
|
|
@@ -950,12 +972,22 @@ var hoverAnimations = {
|
|
|
950
972
|
glow: {
|
|
951
973
|
boxShadow: "0 0 20px rgba(var(--primary), 0.3)",
|
|
952
974
|
transition: springAnimations.smooth
|
|
953
|
-
}
|
|
975
|
+
},
|
|
976
|
+
rotate: {
|
|
977
|
+
rotate: 2,
|
|
978
|
+
transition: springAnimations.bouncy
|
|
979
|
+
}
|
|
980
|
+
};
|
|
954
981
|
var tapAnimations = {
|
|
955
982
|
scale: {
|
|
956
983
|
scale: 0.95,
|
|
957
984
|
transition: { duration: 0.1 }
|
|
958
|
-
}
|
|
985
|
+
},
|
|
986
|
+
depress: {
|
|
987
|
+
y: 1,
|
|
988
|
+
transition: { duration: 0.1 }
|
|
989
|
+
}
|
|
990
|
+
};
|
|
959
991
|
var skeletonAnimation = {
|
|
960
992
|
initial: { opacity: 0.5 },
|
|
961
993
|
animate: {
|
|
@@ -1004,7 +1036,7 @@ var cardVariants = cva(
|
|
|
1004
1036
|
}
|
|
1005
1037
|
}
|
|
1006
1038
|
);
|
|
1007
|
-
var Card =
|
|
1039
|
+
var Card = React10.forwardRef(
|
|
1008
1040
|
({ className, variant, size, radius, interactive, microInteraction = "lift", ...props }, ref) => {
|
|
1009
1041
|
if (interactive && microInteraction !== "none") {
|
|
1010
1042
|
const interactionProps = {
|
|
@@ -1032,7 +1064,7 @@ var Card = React20.forwardRef(
|
|
|
1032
1064
|
}
|
|
1033
1065
|
);
|
|
1034
1066
|
Card.displayName = "Card";
|
|
1035
|
-
var CardHeader =
|
|
1067
|
+
var CardHeader = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
1036
1068
|
"div",
|
|
1037
1069
|
{
|
|
1038
1070
|
ref,
|
|
@@ -1041,7 +1073,7 @@ var CardHeader = React20.forwardRef(({ className, ...props }, ref) => /* @__PURE
|
|
|
1041
1073
|
}
|
|
1042
1074
|
));
|
|
1043
1075
|
CardHeader.displayName = "CardHeader";
|
|
1044
|
-
var CardTitle =
|
|
1076
|
+
var CardTitle = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
1045
1077
|
"h3",
|
|
1046
1078
|
{
|
|
1047
1079
|
ref,
|
|
@@ -1050,7 +1082,7 @@ var CardTitle = React20.forwardRef(({ className, ...props }, ref) => /* @__PURE_
|
|
|
1050
1082
|
}
|
|
1051
1083
|
));
|
|
1052
1084
|
CardTitle.displayName = "CardTitle";
|
|
1053
|
-
var CardDescription =
|
|
1085
|
+
var CardDescription = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
1054
1086
|
"p",
|
|
1055
1087
|
{
|
|
1056
1088
|
ref,
|
|
@@ -1059,9 +1091,9 @@ var CardDescription = React20.forwardRef(({ className, ...props }, ref) => /* @_
|
|
|
1059
1091
|
}
|
|
1060
1092
|
));
|
|
1061
1093
|
CardDescription.displayName = "CardDescription";
|
|
1062
|
-
var CardContent =
|
|
1094
|
+
var CardContent = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx("div", { ref, className: cn("moonui-theme", "p-6 pt-0", className), ...props }));
|
|
1063
1095
|
CardContent.displayName = "CardContent";
|
|
1064
|
-
var CardFooter =
|
|
1096
|
+
var CardFooter = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
1065
1097
|
"div",
|
|
1066
1098
|
{
|
|
1067
1099
|
ref,
|
|
@@ -1082,7 +1114,7 @@ function Calendar({
|
|
|
1082
1114
|
defaultMonth,
|
|
1083
1115
|
...props
|
|
1084
1116
|
}) {
|
|
1085
|
-
const [currentMonth, setCurrentMonth] =
|
|
1117
|
+
const [currentMonth, setCurrentMonth] = React10.useState(
|
|
1086
1118
|
defaultMonth || selected && selected || /* @__PURE__ */ new Date()
|
|
1087
1119
|
);
|
|
1088
1120
|
const weekDays = [
|
|
@@ -1101,7 +1133,8 @@ function Calendar({
|
|
|
1101
1133
|
setCurrentMonth(addMonths(currentMonth, 1));
|
|
1102
1134
|
};
|
|
1103
1135
|
const handleDateClick = (date) => {
|
|
1104
|
-
if (disabled?.(date))
|
|
1136
|
+
if (disabled?.(date))
|
|
1137
|
+
return;
|
|
1105
1138
|
if (mode === "single") {
|
|
1106
1139
|
onSelect?.(date);
|
|
1107
1140
|
} else if (mode === "range") {
|
|
@@ -1118,7 +1151,8 @@ function Calendar({
|
|
|
1118
1151
|
}
|
|
1119
1152
|
};
|
|
1120
1153
|
const isDateSelected = (date) => {
|
|
1121
|
-
if (!selected)
|
|
1154
|
+
if (!selected)
|
|
1155
|
+
return false;
|
|
1122
1156
|
if (mode === "single") {
|
|
1123
1157
|
return isSameDay(date, selected);
|
|
1124
1158
|
} else if (mode === "range") {
|
|
@@ -1131,19 +1165,23 @@ function Calendar({
|
|
|
1131
1165
|
return false;
|
|
1132
1166
|
};
|
|
1133
1167
|
const isRangeStart = (date) => {
|
|
1134
|
-
if (mode !== "range" || !selected)
|
|
1168
|
+
if (mode !== "range" || !selected)
|
|
1169
|
+
return false;
|
|
1135
1170
|
const range = selected;
|
|
1136
1171
|
return range.from ? isSameDay(date, range.from) : false;
|
|
1137
1172
|
};
|
|
1138
1173
|
const isRangeEnd = (date) => {
|
|
1139
|
-
if (mode !== "range" || !selected)
|
|
1174
|
+
if (mode !== "range" || !selected)
|
|
1175
|
+
return false;
|
|
1140
1176
|
const range = selected;
|
|
1141
1177
|
return range.to ? isSameDay(date, range.to) : false;
|
|
1142
1178
|
};
|
|
1143
1179
|
const isRangeMiddle = (date) => {
|
|
1144
|
-
if (mode !== "range" || !selected)
|
|
1180
|
+
if (mode !== "range" || !selected)
|
|
1181
|
+
return false;
|
|
1145
1182
|
const range = selected;
|
|
1146
|
-
if (!range.from || !range.to)
|
|
1183
|
+
if (!range.from || !range.to)
|
|
1184
|
+
return false;
|
|
1147
1185
|
return date > range.from && date < range.to;
|
|
1148
1186
|
};
|
|
1149
1187
|
const getDaysInMonth = () => {
|
|
@@ -1270,7 +1308,8 @@ var getCardType = (number) => {
|
|
|
1270
1308
|
jcb: /^35/
|
|
1271
1309
|
};
|
|
1272
1310
|
for (const [type, pattern] of Object.entries(patterns)) {
|
|
1273
|
-
if (pattern.test(number))
|
|
1311
|
+
if (pattern.test(number))
|
|
1312
|
+
return type;
|
|
1274
1313
|
}
|
|
1275
1314
|
return "unknown";
|
|
1276
1315
|
};
|
|
@@ -1280,16 +1319,18 @@ var formatCardNumber = (value, cardType) => {
|
|
|
1280
1319
|
let formatted = "";
|
|
1281
1320
|
let position = 0;
|
|
1282
1321
|
for (const group of groups) {
|
|
1283
|
-
if (position >= cleaned.length)
|
|
1284
|
-
|
|
1322
|
+
if (position >= cleaned.length)
|
|
1323
|
+
break;
|
|
1324
|
+
if (formatted)
|
|
1325
|
+
formatted += " ";
|
|
1285
1326
|
formatted += cleaned.slice(position, position + group);
|
|
1286
1327
|
position += group;
|
|
1287
1328
|
}
|
|
1288
1329
|
return formatted;
|
|
1289
1330
|
};
|
|
1290
|
-
var CardNumberInput =
|
|
1331
|
+
var CardNumberInput = React10.forwardRef(
|
|
1291
1332
|
({ className, value = "", onChange, showIcon = true, size, ...props }, ref) => {
|
|
1292
|
-
const [cardType, setCardType] =
|
|
1333
|
+
const [cardType, setCardType] = React10.useState("unknown");
|
|
1293
1334
|
const handleChange = (e) => {
|
|
1294
1335
|
const rawValue = e.target.value.replace(/\D/g, "");
|
|
1295
1336
|
const detectedType = getCardType(rawValue);
|
|
@@ -1320,7 +1361,7 @@ var CardNumberInput = React20.forwardRef(
|
|
|
1320
1361
|
}
|
|
1321
1362
|
);
|
|
1322
1363
|
CardNumberInput.displayName = "CardNumberInput";
|
|
1323
|
-
var CardExpiryInput =
|
|
1364
|
+
var CardExpiryInput = React10.forwardRef(
|
|
1324
1365
|
({ className, value = "", onChange, size, ...props }, ref) => {
|
|
1325
1366
|
const handleChange = (e) => {
|
|
1326
1367
|
let rawValue = e.target.value.replace(/\D/g, "");
|
|
@@ -1358,7 +1399,7 @@ var CardExpiryInput = React20.forwardRef(
|
|
|
1358
1399
|
}
|
|
1359
1400
|
);
|
|
1360
1401
|
CardExpiryInput.displayName = "CardExpiryInput";
|
|
1361
|
-
var CardCVCInput =
|
|
1402
|
+
var CardCVCInput = React10.forwardRef(
|
|
1362
1403
|
({ className, value = "", onChange, cardType = "unknown", size, ...props }, ref) => {
|
|
1363
1404
|
const maxLength = cardType === "amex" ? 4 : 3;
|
|
1364
1405
|
const handleChange = (e) => {
|
|
@@ -1383,7 +1424,7 @@ var CardCVCInput = React20.forwardRef(
|
|
|
1383
1424
|
}
|
|
1384
1425
|
);
|
|
1385
1426
|
CardCVCInput.displayName = "CardCVCInput";
|
|
1386
|
-
var CardZipInput =
|
|
1427
|
+
var CardZipInput = React10.forwardRef(
|
|
1387
1428
|
({ className, value = "", onChange, format: format4 = "US", size, ...props }, ref) => {
|
|
1388
1429
|
const handleChange = (e) => {
|
|
1389
1430
|
let rawValue = e.target.value;
|
|
@@ -1434,6 +1475,208 @@ var CardZipInput = React20.forwardRef(
|
|
|
1434
1475
|
}
|
|
1435
1476
|
);
|
|
1436
1477
|
CardZipInput.displayName = "CardZipInput";
|
|
1478
|
+
var CarouselContext = React10.createContext(null);
|
|
1479
|
+
function useCarousel() {
|
|
1480
|
+
const context = React10.useContext(CarouselContext);
|
|
1481
|
+
if (!context) {
|
|
1482
|
+
throw new Error("useCarousel must be used within a <Carousel />");
|
|
1483
|
+
}
|
|
1484
|
+
return context;
|
|
1485
|
+
}
|
|
1486
|
+
var Carousel = React10.forwardRef(
|
|
1487
|
+
({
|
|
1488
|
+
orientation = "horizontal",
|
|
1489
|
+
opts,
|
|
1490
|
+
setApi,
|
|
1491
|
+
plugins,
|
|
1492
|
+
className,
|
|
1493
|
+
children,
|
|
1494
|
+
...props
|
|
1495
|
+
}, ref) => {
|
|
1496
|
+
const resolvedOrientation = orientation || (opts?.axis === "y" ? "vertical" : "horizontal");
|
|
1497
|
+
const [carouselRef, api] = useEmblaCarousel(
|
|
1498
|
+
{
|
|
1499
|
+
...opts,
|
|
1500
|
+
axis: resolvedOrientation === "horizontal" ? "x" : "y"
|
|
1501
|
+
},
|
|
1502
|
+
plugins
|
|
1503
|
+
);
|
|
1504
|
+
const [canScrollPrev, setCanScrollPrev] = React10.useState(false);
|
|
1505
|
+
const [canScrollNext, setCanScrollNext] = React10.useState(false);
|
|
1506
|
+
const onSelect = React10.useCallback((emblaApi) => {
|
|
1507
|
+
if (!emblaApi)
|
|
1508
|
+
return;
|
|
1509
|
+
setCanScrollPrev(emblaApi.canScrollPrev());
|
|
1510
|
+
setCanScrollNext(emblaApi.canScrollNext());
|
|
1511
|
+
}, []);
|
|
1512
|
+
const scrollPrev = React10.useCallback(() => {
|
|
1513
|
+
api?.scrollPrev();
|
|
1514
|
+
}, [api]);
|
|
1515
|
+
const scrollNext = React10.useCallback(() => {
|
|
1516
|
+
api?.scrollNext();
|
|
1517
|
+
}, [api]);
|
|
1518
|
+
const handleKeyDown = React10.useCallback(
|
|
1519
|
+
(event) => {
|
|
1520
|
+
const prevKey = resolvedOrientation === "horizontal" ? "ArrowLeft" : "ArrowUp";
|
|
1521
|
+
const nextKey = resolvedOrientation === "horizontal" ? "ArrowRight" : "ArrowDown";
|
|
1522
|
+
if (event.key === prevKey) {
|
|
1523
|
+
event.preventDefault();
|
|
1524
|
+
scrollPrev();
|
|
1525
|
+
} else if (event.key === nextKey) {
|
|
1526
|
+
event.preventDefault();
|
|
1527
|
+
scrollNext();
|
|
1528
|
+
}
|
|
1529
|
+
},
|
|
1530
|
+
[resolvedOrientation, scrollPrev, scrollNext]
|
|
1531
|
+
);
|
|
1532
|
+
React10.useEffect(() => {
|
|
1533
|
+
if (!api || !setApi)
|
|
1534
|
+
return;
|
|
1535
|
+
setApi(api);
|
|
1536
|
+
}, [api, setApi]);
|
|
1537
|
+
React10.useEffect(() => {
|
|
1538
|
+
if (!api)
|
|
1539
|
+
return;
|
|
1540
|
+
onSelect(api);
|
|
1541
|
+
api.on("reInit", onSelect);
|
|
1542
|
+
api.on("select", onSelect);
|
|
1543
|
+
return () => {
|
|
1544
|
+
api.off("reInit", onSelect);
|
|
1545
|
+
api.off("select", onSelect);
|
|
1546
|
+
};
|
|
1547
|
+
}, [api, onSelect]);
|
|
1548
|
+
return /* @__PURE__ */ jsx(
|
|
1549
|
+
CarouselContext.Provider,
|
|
1550
|
+
{
|
|
1551
|
+
value: {
|
|
1552
|
+
carouselRef,
|
|
1553
|
+
api,
|
|
1554
|
+
opts,
|
|
1555
|
+
scrollPrev,
|
|
1556
|
+
scrollNext,
|
|
1557
|
+
canScrollPrev,
|
|
1558
|
+
canScrollNext,
|
|
1559
|
+
orientation: resolvedOrientation
|
|
1560
|
+
},
|
|
1561
|
+
children: /* @__PURE__ */ jsx(
|
|
1562
|
+
"div",
|
|
1563
|
+
{
|
|
1564
|
+
ref,
|
|
1565
|
+
onKeyDownCapture: handleKeyDown,
|
|
1566
|
+
className: cn("moonui-theme", "relative", className),
|
|
1567
|
+
role: "region",
|
|
1568
|
+
"aria-roledescription": "carousel",
|
|
1569
|
+
...props,
|
|
1570
|
+
children
|
|
1571
|
+
}
|
|
1572
|
+
)
|
|
1573
|
+
}
|
|
1574
|
+
);
|
|
1575
|
+
}
|
|
1576
|
+
);
|
|
1577
|
+
Carousel.displayName = "Carousel";
|
|
1578
|
+
var carouselContentVariants = cva("flex", {
|
|
1579
|
+
variants: {
|
|
1580
|
+
orientation: {
|
|
1581
|
+
horizontal: "-ml-4",
|
|
1582
|
+
vertical: "-mt-4 flex-col"
|
|
1583
|
+
}
|
|
1584
|
+
},
|
|
1585
|
+
defaultVariants: {
|
|
1586
|
+
orientation: "horizontal"
|
|
1587
|
+
}
|
|
1588
|
+
});
|
|
1589
|
+
var CarouselContent = React10.forwardRef(
|
|
1590
|
+
({ className, ...props }, ref) => {
|
|
1591
|
+
const { carouselRef, orientation } = useCarousel();
|
|
1592
|
+
return /* @__PURE__ */ jsx("div", { ref: carouselRef, className: "overflow-hidden", children: /* @__PURE__ */ jsx(
|
|
1593
|
+
"div",
|
|
1594
|
+
{
|
|
1595
|
+
ref,
|
|
1596
|
+
className: cn(carouselContentVariants({ orientation }), className),
|
|
1597
|
+
...props
|
|
1598
|
+
}
|
|
1599
|
+
) });
|
|
1600
|
+
}
|
|
1601
|
+
);
|
|
1602
|
+
CarouselContent.displayName = "CarouselContent";
|
|
1603
|
+
var carouselItemVariants = cva("min-w-0 shrink-0 grow-0 basis-full", {
|
|
1604
|
+
variants: {
|
|
1605
|
+
orientation: {
|
|
1606
|
+
horizontal: "pl-4",
|
|
1607
|
+
vertical: "pt-4"
|
|
1608
|
+
}
|
|
1609
|
+
},
|
|
1610
|
+
defaultVariants: {
|
|
1611
|
+
orientation: "horizontal"
|
|
1612
|
+
}
|
|
1613
|
+
});
|
|
1614
|
+
var CarouselItem = React10.forwardRef(
|
|
1615
|
+
({ className, ...props }, ref) => {
|
|
1616
|
+
const { orientation } = useCarousel();
|
|
1617
|
+
return /* @__PURE__ */ jsx(
|
|
1618
|
+
"div",
|
|
1619
|
+
{
|
|
1620
|
+
ref,
|
|
1621
|
+
role: "group",
|
|
1622
|
+
"aria-roledescription": "slide",
|
|
1623
|
+
className: cn(carouselItemVariants({ orientation }), className),
|
|
1624
|
+
...props
|
|
1625
|
+
}
|
|
1626
|
+
);
|
|
1627
|
+
}
|
|
1628
|
+
);
|
|
1629
|
+
CarouselItem.displayName = "CarouselItem";
|
|
1630
|
+
var CarouselPrevious = React10.forwardRef(({ className, variant = "outline", size = "icon-sm", ...props }, ref) => {
|
|
1631
|
+
const { orientation, scrollPrev, canScrollPrev } = useCarousel();
|
|
1632
|
+
return /* @__PURE__ */ jsxs(
|
|
1633
|
+
Button,
|
|
1634
|
+
{
|
|
1635
|
+
ref,
|
|
1636
|
+
variant,
|
|
1637
|
+
size,
|
|
1638
|
+
rounded: "full",
|
|
1639
|
+
className: cn(
|
|
1640
|
+
"absolute",
|
|
1641
|
+
orientation === "horizontal" ? "-left-12 top-1/2 -translate-y-1/2" : "-top-12 left-1/2 -translate-x-1/2 rotate-90",
|
|
1642
|
+
className
|
|
1643
|
+
),
|
|
1644
|
+
disabled: !canScrollPrev,
|
|
1645
|
+
onClick: scrollPrev,
|
|
1646
|
+
...props,
|
|
1647
|
+
children: [
|
|
1648
|
+
/* @__PURE__ */ jsx(ArrowLeft, { className: "h-4 w-4", "aria-hidden": "true" }),
|
|
1649
|
+
/* @__PURE__ */ jsx("span", { className: "sr-only", children: "Previous slide" })
|
|
1650
|
+
]
|
|
1651
|
+
}
|
|
1652
|
+
);
|
|
1653
|
+
});
|
|
1654
|
+
CarouselPrevious.displayName = "CarouselPrevious";
|
|
1655
|
+
var CarouselNext = React10.forwardRef(({ className, variant = "outline", size = "icon-sm", ...props }, ref) => {
|
|
1656
|
+
const { orientation, scrollNext, canScrollNext } = useCarousel();
|
|
1657
|
+
return /* @__PURE__ */ jsxs(
|
|
1658
|
+
Button,
|
|
1659
|
+
{
|
|
1660
|
+
ref,
|
|
1661
|
+
variant,
|
|
1662
|
+
size,
|
|
1663
|
+
rounded: "full",
|
|
1664
|
+
className: cn(
|
|
1665
|
+
"absolute",
|
|
1666
|
+
orientation === "horizontal" ? "-right-12 top-1/2 -translate-y-1/2" : "-bottom-12 left-1/2 -translate-x-1/2 rotate-90",
|
|
1667
|
+
className
|
|
1668
|
+
),
|
|
1669
|
+
disabled: !canScrollNext,
|
|
1670
|
+
onClick: scrollNext,
|
|
1671
|
+
...props,
|
|
1672
|
+
children: [
|
|
1673
|
+
/* @__PURE__ */ jsx(ArrowRight, { className: "h-4 w-4", "aria-hidden": "true" }),
|
|
1674
|
+
/* @__PURE__ */ jsx("span", { className: "sr-only", children: "Next slide" })
|
|
1675
|
+
]
|
|
1676
|
+
}
|
|
1677
|
+
);
|
|
1678
|
+
});
|
|
1679
|
+
CarouselNext.displayName = "CarouselNext";
|
|
1437
1680
|
var checkboxVariants = cva(
|
|
1438
1681
|
"peer shrink-0 border focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:text-primary-foreground",
|
|
1439
1682
|
{
|
|
@@ -1472,7 +1715,7 @@ var checkboxVariants = cva(
|
|
|
1472
1715
|
}
|
|
1473
1716
|
}
|
|
1474
1717
|
);
|
|
1475
|
-
var Checkbox =
|
|
1718
|
+
var Checkbox = React10.forwardRef(({
|
|
1476
1719
|
className,
|
|
1477
1720
|
variant,
|
|
1478
1721
|
size,
|
|
@@ -1483,8 +1726,8 @@ var Checkbox = React20.forwardRef(({
|
|
|
1483
1726
|
checked,
|
|
1484
1727
|
...props
|
|
1485
1728
|
}, ref) => {
|
|
1486
|
-
const [isIndeterminate, setIsIndeterminate] =
|
|
1487
|
-
|
|
1729
|
+
const [isIndeterminate, setIsIndeterminate] = React10.useState(indeterminate);
|
|
1730
|
+
React10.useEffect(() => {
|
|
1488
1731
|
setIsIndeterminate(indeterminate);
|
|
1489
1732
|
}, [indeterminate]);
|
|
1490
1733
|
const effectiveChecked = isIndeterminate ? false : checked;
|
|
@@ -1509,7 +1752,7 @@ var Checkbox = React20.forwardRef(({
|
|
|
1509
1752
|
);
|
|
1510
1753
|
});
|
|
1511
1754
|
Checkbox.displayName = CheckboxPrimitive.Root.displayName;
|
|
1512
|
-
var CheckboxGroup =
|
|
1755
|
+
var CheckboxGroup = React10.forwardRef(
|
|
1513
1756
|
({ className, orientation = "vertical", spacing = "1rem", children, ...props }, ref) => {
|
|
1514
1757
|
return /* @__PURE__ */ jsx(
|
|
1515
1758
|
"div",
|
|
@@ -1529,7 +1772,7 @@ var CheckboxGroup = React20.forwardRef(
|
|
|
1529
1772
|
}
|
|
1530
1773
|
);
|
|
1531
1774
|
CheckboxGroup.displayName = "CheckboxGroup";
|
|
1532
|
-
var CheckboxLabel =
|
|
1775
|
+
var CheckboxLabel = React10.forwardRef(
|
|
1533
1776
|
({ className, htmlFor, children, position = "end", disabled = false, ...props }, ref) => {
|
|
1534
1777
|
return /* @__PURE__ */ jsx(
|
|
1535
1778
|
"label",
|
|
@@ -1549,14 +1792,14 @@ var CheckboxLabel = React20.forwardRef(
|
|
|
1549
1792
|
}
|
|
1550
1793
|
);
|
|
1551
1794
|
CheckboxLabel.displayName = "CheckboxLabel";
|
|
1552
|
-
var CheckboxWithLabel =
|
|
1795
|
+
var CheckboxWithLabel = React10.forwardRef(({
|
|
1553
1796
|
id,
|
|
1554
1797
|
label,
|
|
1555
1798
|
labelPosition = "end",
|
|
1556
1799
|
labelClassName,
|
|
1557
1800
|
...checkboxProps
|
|
1558
1801
|
}, ref) => {
|
|
1559
|
-
const generatedId =
|
|
1802
|
+
const generatedId = React10.useId();
|
|
1560
1803
|
const checkboxId = id || generatedId;
|
|
1561
1804
|
return /* @__PURE__ */ jsxs("div", { className: "flex items-center", children: [
|
|
1562
1805
|
labelPosition === "start" && /* @__PURE__ */ jsx(
|
|
@@ -1606,7 +1849,7 @@ var collapsibleTriggerVariants = cva(
|
|
|
1606
1849
|
}
|
|
1607
1850
|
}
|
|
1608
1851
|
);
|
|
1609
|
-
var CollapsibleTrigger =
|
|
1852
|
+
var CollapsibleTrigger = React10.forwardRef(({ className, children, variant, size, asChild, ...props }, ref) => {
|
|
1610
1853
|
if (asChild) {
|
|
1611
1854
|
return /* @__PURE__ */ jsx(
|
|
1612
1855
|
CollapsiblePrimitive.Trigger,
|
|
@@ -1655,7 +1898,7 @@ var collapsibleContentVariants = cva(
|
|
|
1655
1898
|
}
|
|
1656
1899
|
}
|
|
1657
1900
|
);
|
|
1658
|
-
var CollapsibleContent =
|
|
1901
|
+
var CollapsibleContent = React10.forwardRef(({ className, children, variant, size, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
1659
1902
|
CollapsiblePrimitive.Content,
|
|
1660
1903
|
{
|
|
1661
1904
|
ref,
|
|
@@ -1738,7 +1981,7 @@ var inputVariants = cva(
|
|
|
1738
1981
|
}
|
|
1739
1982
|
}
|
|
1740
1983
|
);
|
|
1741
|
-
var Input =
|
|
1984
|
+
var Input = React10.forwardRef(
|
|
1742
1985
|
({
|
|
1743
1986
|
className,
|
|
1744
1987
|
wrapperClassName,
|
|
@@ -1765,8 +2008,8 @@ var Input = React20.forwardRef(
|
|
|
1765
2008
|
placeholder,
|
|
1766
2009
|
...props
|
|
1767
2010
|
}, ref) => {
|
|
1768
|
-
const [isFocused, setIsFocused] =
|
|
1769
|
-
const [internalValue, setInternalValue] =
|
|
2011
|
+
const [isFocused, setIsFocused] = React10.useState(false);
|
|
2012
|
+
const [internalValue, setInternalValue] = React10.useState(value || defaultValue || "");
|
|
1770
2013
|
const hasValue = internalValue !== "" && internalValue !== null && internalValue !== void 0;
|
|
1771
2014
|
const isLabelActive = isFocused || hasValue;
|
|
1772
2015
|
const handleFocus = (e) => {
|
|
@@ -1781,7 +2024,7 @@ var Input = React20.forwardRef(
|
|
|
1781
2024
|
setInternalValue(e.target.value);
|
|
1782
2025
|
onChange?.(e);
|
|
1783
2026
|
};
|
|
1784
|
-
|
|
2027
|
+
React10.useEffect(() => {
|
|
1785
2028
|
if (value !== void 0) {
|
|
1786
2029
|
setInternalValue(value);
|
|
1787
2030
|
}
|
|
@@ -1865,7 +2108,7 @@ Input.displayName = "Input";
|
|
|
1865
2108
|
var labelVariants = cva(
|
|
1866
2109
|
"text-sm font-medium leading-none text-gray-900 dark:text-gray-200 peer-disabled:cursor-not-allowed peer-disabled:opacity-70 dark:peer-disabled:opacity-60 transition-colors duration-200"
|
|
1867
2110
|
);
|
|
1868
|
-
var Label =
|
|
2111
|
+
var Label = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
1869
2112
|
LabelPrimitive.Root,
|
|
1870
2113
|
{
|
|
1871
2114
|
ref,
|
|
@@ -1926,7 +2169,7 @@ var popoverContentVariants = cva(
|
|
|
1926
2169
|
var Popover = PopoverPrimitive.Root;
|
|
1927
2170
|
var PopoverTrigger = PopoverPrimitive.Trigger;
|
|
1928
2171
|
var PopoverAnchor = PopoverPrimitive.Anchor;
|
|
1929
|
-
var PopoverContent =
|
|
2172
|
+
var PopoverContent = React10.forwardRef(({
|
|
1930
2173
|
className,
|
|
1931
2174
|
variant,
|
|
1932
2175
|
size,
|
|
@@ -1994,7 +2237,7 @@ var PopoverFooter = ({ className, ...props }) => /* @__PURE__ */ jsx(
|
|
|
1994
2237
|
}
|
|
1995
2238
|
);
|
|
1996
2239
|
PopoverFooter.displayName = "PopoverFooter";
|
|
1997
|
-
var Tabs =
|
|
2240
|
+
var Tabs = React10.forwardRef(({ vertical = false, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
1998
2241
|
TabsPrimitive.Root,
|
|
1999
2242
|
{
|
|
2000
2243
|
ref,
|
|
@@ -2035,7 +2278,7 @@ var tabsListVariants = cva(
|
|
|
2035
2278
|
}
|
|
2036
2279
|
}
|
|
2037
2280
|
);
|
|
2038
|
-
var TabsList =
|
|
2281
|
+
var TabsList = React10.forwardRef(({ className, variant, orientation, fullWidth, scrollable, ...props }, ref) => {
|
|
2039
2282
|
return /* @__PURE__ */ jsx(
|
|
2040
2283
|
TabsPrimitive.List,
|
|
2041
2284
|
{
|
|
@@ -2078,7 +2321,7 @@ var tabsTriggerVariants = cva(
|
|
|
2078
2321
|
}
|
|
2079
2322
|
}
|
|
2080
2323
|
);
|
|
2081
|
-
var TabsTrigger =
|
|
2324
|
+
var TabsTrigger = React10.forwardRef(({
|
|
2082
2325
|
className,
|
|
2083
2326
|
variant,
|
|
2084
2327
|
size,
|
|
@@ -2110,7 +2353,7 @@ var TabsTrigger = React20.forwardRef(({
|
|
|
2110
2353
|
}
|
|
2111
2354
|
));
|
|
2112
2355
|
TabsTrigger.displayName = TabsPrimitive.Trigger.displayName;
|
|
2113
|
-
var TabsContent =
|
|
2356
|
+
var TabsContent = React10.forwardRef(({ className, animated = false, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
2114
2357
|
TabsPrimitive.Content,
|
|
2115
2358
|
{
|
|
2116
2359
|
ref,
|
|
@@ -2204,7 +2447,7 @@ var sliderThumbVariants = cva(
|
|
|
2204
2447
|
}
|
|
2205
2448
|
}
|
|
2206
2449
|
);
|
|
2207
|
-
var Slider =
|
|
2450
|
+
var Slider = React10.forwardRef(({
|
|
2208
2451
|
className,
|
|
2209
2452
|
size,
|
|
2210
2453
|
trackVariant,
|
|
@@ -2220,10 +2463,10 @@ var Slider = React20.forwardRef(({
|
|
|
2220
2463
|
disabled,
|
|
2221
2464
|
...props
|
|
2222
2465
|
}, ref) => {
|
|
2223
|
-
const [sliderValue, setSliderValue] =
|
|
2466
|
+
const [sliderValue, setSliderValue] = React10.useState(
|
|
2224
2467
|
value || defaultValue || [0]
|
|
2225
2468
|
);
|
|
2226
|
-
|
|
2469
|
+
React10.useEffect(() => {
|
|
2227
2470
|
if (value !== void 0) {
|
|
2228
2471
|
setSliderValue(value);
|
|
2229
2472
|
}
|
|
@@ -2238,7 +2481,7 @@ var Slider = React20.forwardRef(({
|
|
|
2238
2481
|
const calculateThumbPercent = (value2, min2, max2) => {
|
|
2239
2482
|
return (value2 - min2) / (max2 - min2) * 100;
|
|
2240
2483
|
};
|
|
2241
|
-
const trackRef =
|
|
2484
|
+
const trackRef = React10.useRef(null);
|
|
2242
2485
|
const min = props.min || 0;
|
|
2243
2486
|
const max = props.max || 100;
|
|
2244
2487
|
const step = props.step || 1;
|
|
@@ -2256,9 +2499,11 @@ var Slider = React20.forwardRef(({
|
|
|
2256
2499
|
}
|
|
2257
2500
|
};
|
|
2258
2501
|
const handleTrackClick = (event) => {
|
|
2259
|
-
if (disabled)
|
|
2502
|
+
if (disabled)
|
|
2503
|
+
return;
|
|
2260
2504
|
const track = trackRef.current;
|
|
2261
|
-
if (!track)
|
|
2505
|
+
if (!track)
|
|
2506
|
+
return;
|
|
2262
2507
|
const rect = track.getBoundingClientRect();
|
|
2263
2508
|
const percent = (event.clientX - rect.left) / rect.width;
|
|
2264
2509
|
const rawValue = min + percent * (max - min);
|
|
@@ -2269,11 +2514,13 @@ var Slider = React20.forwardRef(({
|
|
|
2269
2514
|
handleValueChange(newValues);
|
|
2270
2515
|
};
|
|
2271
2516
|
const handleThumbMouseDown = (index) => (event) => {
|
|
2272
|
-
if (disabled)
|
|
2517
|
+
if (disabled)
|
|
2518
|
+
return;
|
|
2273
2519
|
event.preventDefault();
|
|
2274
2520
|
const handleMouseMove = (moveEvent) => {
|
|
2275
2521
|
const track = trackRef.current;
|
|
2276
|
-
if (!track)
|
|
2522
|
+
if (!track)
|
|
2523
|
+
return;
|
|
2277
2524
|
const rect = track.getBoundingClientRect();
|
|
2278
2525
|
const percent = (moveEvent.clientX - rect.left) / rect.width;
|
|
2279
2526
|
const rawValue = min + percent * (max - min);
|
|
@@ -2390,7 +2637,8 @@ function rgbToHex(r, g, b) {
|
|
|
2390
2637
|
}
|
|
2391
2638
|
function hexToHsl(hex) {
|
|
2392
2639
|
const rgb = hexToRgb(hex);
|
|
2393
|
-
if (!rgb)
|
|
2640
|
+
if (!rgb)
|
|
2641
|
+
return null;
|
|
2394
2642
|
const r = rgb.r / 255;
|
|
2395
2643
|
const g = rgb.g / 255;
|
|
2396
2644
|
const b = rgb.b / 255;
|
|
@@ -2429,11 +2677,16 @@ function hslToHex(h, s, l) {
|
|
|
2429
2677
|
r = g = b = l;
|
|
2430
2678
|
} else {
|
|
2431
2679
|
const hue2rgb = (p2, q2, t) => {
|
|
2432
|
-
if (t < 0)
|
|
2433
|
-
|
|
2434
|
-
if (t
|
|
2435
|
-
|
|
2436
|
-
if (t <
|
|
2680
|
+
if (t < 0)
|
|
2681
|
+
t += 1;
|
|
2682
|
+
if (t > 1)
|
|
2683
|
+
t -= 1;
|
|
2684
|
+
if (t < 1 / 6)
|
|
2685
|
+
return p2 + (q2 - p2) * 6 * t;
|
|
2686
|
+
if (t < 1 / 2)
|
|
2687
|
+
return q2;
|
|
2688
|
+
if (t < 2 / 3)
|
|
2689
|
+
return p2 + (q2 - p2) * (2 / 3 - t) * 6;
|
|
2437
2690
|
return p2;
|
|
2438
2691
|
};
|
|
2439
2692
|
const q = l < 0.5 ? l * (1 + s) : l + s - l * s;
|
|
@@ -2501,14 +2754,14 @@ function ColorPicker({
|
|
|
2501
2754
|
disabled,
|
|
2502
2755
|
...props
|
|
2503
2756
|
}) {
|
|
2504
|
-
const [open, setOpen] =
|
|
2505
|
-
const [color, setColor] =
|
|
2506
|
-
const [opacity, setOpacity] =
|
|
2507
|
-
const [copied, setCopied] =
|
|
2508
|
-
const [inputValue, setInputValue] =
|
|
2509
|
-
const hsl =
|
|
2510
|
-
const rgb =
|
|
2511
|
-
|
|
2757
|
+
const [open, setOpen] = React10.useState(false);
|
|
2758
|
+
const [color, setColor] = React10.useState(value);
|
|
2759
|
+
const [opacity, setOpacity] = React10.useState(100);
|
|
2760
|
+
const [copied, setCopied] = React10.useState(false);
|
|
2761
|
+
const [inputValue, setInputValue] = React10.useState(value);
|
|
2762
|
+
const hsl = React10.useMemo(() => hexToHsl(color) || { h: 0, s: 0, l: 0 }, [color]);
|
|
2763
|
+
const rgb = React10.useMemo(() => hexToRgb(color) || { r: 0, g: 0, b: 0 }, [color]);
|
|
2764
|
+
React10.useEffect(() => {
|
|
2512
2765
|
setColor(value);
|
|
2513
2766
|
setInputValue(value);
|
|
2514
2767
|
}, [value]);
|
|
@@ -2550,8 +2803,10 @@ function ColorPicker({
|
|
|
2550
2803
|
}
|
|
2551
2804
|
};
|
|
2552
2805
|
const formatDisplay = () => {
|
|
2553
|
-
if (format4 === "rgb")
|
|
2554
|
-
|
|
2806
|
+
if (format4 === "rgb")
|
|
2807
|
+
return `rgb(${rgb.r}, ${rgb.g}, ${rgb.b})`;
|
|
2808
|
+
if (format4 === "hsl")
|
|
2809
|
+
return `hsl(${hsl.h}, ${hsl.s}%, ${hsl.l}%)`;
|
|
2555
2810
|
return color;
|
|
2556
2811
|
};
|
|
2557
2812
|
return /* @__PURE__ */ jsxs(Popover, { open, onOpenChange: setOpen, children: [
|
|
@@ -2893,7 +3148,7 @@ function GradientPicker({
|
|
|
2893
3148
|
onChange,
|
|
2894
3149
|
className
|
|
2895
3150
|
}) {
|
|
2896
|
-
const [gradient, setGradient] =
|
|
3151
|
+
const [gradient, setGradient] = React10.useState(value);
|
|
2897
3152
|
const handleChange = (field, newValue) => {
|
|
2898
3153
|
const newGradient = { ...gradient, [field]: newValue };
|
|
2899
3154
|
setGradient(newGradient);
|
|
@@ -2979,7 +3234,7 @@ var overlayVariants = cva(
|
|
|
2979
3234
|
}
|
|
2980
3235
|
}
|
|
2981
3236
|
);
|
|
2982
|
-
var DialogOverlay =
|
|
3237
|
+
var DialogOverlay = React10.forwardRef(({ className, variant, animation, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
2983
3238
|
DialogPrimitive.Overlay,
|
|
2984
3239
|
{
|
|
2985
3240
|
ref,
|
|
@@ -3038,7 +3293,7 @@ var dialogContentVariants = cva(
|
|
|
3038
3293
|
}
|
|
3039
3294
|
}
|
|
3040
3295
|
);
|
|
3041
|
-
var DialogContent =
|
|
3296
|
+
var DialogContent = React10.forwardRef(
|
|
3042
3297
|
({
|
|
3043
3298
|
className,
|
|
3044
3299
|
children,
|
|
@@ -3151,7 +3406,7 @@ var DialogFooter = ({
|
|
|
3151
3406
|
}
|
|
3152
3407
|
);
|
|
3153
3408
|
DialogFooter.displayName = "DialogFooter";
|
|
3154
|
-
var DialogTitle =
|
|
3409
|
+
var DialogTitle = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
3155
3410
|
DialogPrimitive.Title,
|
|
3156
3411
|
{
|
|
3157
3412
|
ref,
|
|
@@ -3163,7 +3418,7 @@ var DialogTitle = React20.forwardRef(({ className, ...props }, ref) => /* @__PUR
|
|
|
3163
3418
|
}
|
|
3164
3419
|
));
|
|
3165
3420
|
DialogTitle.displayName = DialogPrimitive.Title.displayName;
|
|
3166
|
-
var DialogDescription =
|
|
3421
|
+
var DialogDescription = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
3167
3422
|
DialogPrimitive.Description,
|
|
3168
3423
|
{
|
|
3169
3424
|
ref,
|
|
@@ -3175,7 +3430,7 @@ var DialogDescription = React20.forwardRef(({ className, ...props }, ref) => /*
|
|
|
3175
3430
|
}
|
|
3176
3431
|
));
|
|
3177
3432
|
DialogDescription.displayName = DialogPrimitive.Description.displayName;
|
|
3178
|
-
var DialogForm =
|
|
3433
|
+
var DialogForm = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
3179
3434
|
"form",
|
|
3180
3435
|
{
|
|
3181
3436
|
ref,
|
|
@@ -3205,7 +3460,7 @@ var commandVariants = cva(
|
|
|
3205
3460
|
}
|
|
3206
3461
|
}
|
|
3207
3462
|
);
|
|
3208
|
-
var Command =
|
|
3463
|
+
var Command = React10.forwardRef(({ className, variant, size, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
3209
3464
|
Command$1,
|
|
3210
3465
|
{
|
|
3211
3466
|
ref,
|
|
@@ -3227,7 +3482,7 @@ var CommandDialog = ({
|
|
|
3227
3482
|
), children })
|
|
3228
3483
|
] }) });
|
|
3229
3484
|
};
|
|
3230
|
-
var CommandInput =
|
|
3485
|
+
var CommandInput = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxs("div", { className: "flex items-center border-b px-3", "cmdk-input-wrapper": "", children: [
|
|
3231
3486
|
/* @__PURE__ */ jsx(Search, { className: "mr-2 h-4 w-4 shrink-0 opacity-50" }),
|
|
3232
3487
|
/* @__PURE__ */ jsx(
|
|
3233
3488
|
Command$1.Input,
|
|
@@ -3242,7 +3497,7 @@ var CommandInput = React20.forwardRef(({ className, ...props }, ref) => /* @__PU
|
|
|
3242
3497
|
)
|
|
3243
3498
|
] }));
|
|
3244
3499
|
CommandInput.displayName = Command$1.Input.displayName;
|
|
3245
|
-
var CommandList =
|
|
3500
|
+
var CommandList = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
3246
3501
|
Command$1.List,
|
|
3247
3502
|
{
|
|
3248
3503
|
ref,
|
|
@@ -3251,7 +3506,7 @@ var CommandList = React20.forwardRef(({ className, ...props }, ref) => /* @__PUR
|
|
|
3251
3506
|
}
|
|
3252
3507
|
));
|
|
3253
3508
|
CommandList.displayName = Command$1.List.displayName;
|
|
3254
|
-
var CommandEmpty =
|
|
3509
|
+
var CommandEmpty = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
3255
3510
|
Command$1.Empty,
|
|
3256
3511
|
{
|
|
3257
3512
|
ref,
|
|
@@ -3260,7 +3515,7 @@ var CommandEmpty = React20.forwardRef(({ className, ...props }, ref) => /* @__PU
|
|
|
3260
3515
|
}
|
|
3261
3516
|
));
|
|
3262
3517
|
CommandEmpty.displayName = Command$1.Empty.displayName;
|
|
3263
|
-
var CommandGroup =
|
|
3518
|
+
var CommandGroup = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
3264
3519
|
Command$1.Group,
|
|
3265
3520
|
{
|
|
3266
3521
|
ref,
|
|
@@ -3272,7 +3527,7 @@ var CommandGroup = React20.forwardRef(({ className, ...props }, ref) => /* @__PU
|
|
|
3272
3527
|
}
|
|
3273
3528
|
));
|
|
3274
3529
|
CommandGroup.displayName = Command$1.Group.displayName;
|
|
3275
|
-
var CommandSeparator =
|
|
3530
|
+
var CommandSeparator = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
3276
3531
|
Command$1.Separator,
|
|
3277
3532
|
{
|
|
3278
3533
|
ref,
|
|
@@ -3281,7 +3536,7 @@ var CommandSeparator = React20.forwardRef(({ className, ...props }, ref) => /* @
|
|
|
3281
3536
|
}
|
|
3282
3537
|
));
|
|
3283
3538
|
CommandSeparator.displayName = Command$1.Separator.displayName;
|
|
3284
|
-
var CommandItem =
|
|
3539
|
+
var CommandItem = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
3285
3540
|
Command$1.Item,
|
|
3286
3541
|
{
|
|
3287
3542
|
ref,
|
|
@@ -3332,7 +3587,7 @@ var tableVariants = cva(
|
|
|
3332
3587
|
}
|
|
3333
3588
|
}
|
|
3334
3589
|
);
|
|
3335
|
-
var Table =
|
|
3590
|
+
var Table = React10.forwardRef(({
|
|
3336
3591
|
className,
|
|
3337
3592
|
variant,
|
|
3338
3593
|
size,
|
|
@@ -3349,11 +3604,11 @@ var Table = React20.forwardRef(({
|
|
|
3349
3604
|
...props
|
|
3350
3605
|
}, ref) => {
|
|
3351
3606
|
const striped = variant === "striped";
|
|
3352
|
-
const childrenWithProps =
|
|
3353
|
-
if (
|
|
3607
|
+
const childrenWithProps = React10.Children.map(props.children, (child) => {
|
|
3608
|
+
if (React10.isValidElement(child)) {
|
|
3354
3609
|
if (child.type === "tbody") {
|
|
3355
3610
|
const tbodyProps = child.props;
|
|
3356
|
-
return
|
|
3611
|
+
return React10.cloneElement(child, {
|
|
3357
3612
|
className: cn(tbodyProps.className, striped && "even:[&>tr]:bg-muted/50")
|
|
3358
3613
|
});
|
|
3359
3614
|
}
|
|
@@ -3378,10 +3633,10 @@ var Table = React20.forwardRef(({
|
|
|
3378
3633
|
] });
|
|
3379
3634
|
});
|
|
3380
3635
|
Table.displayName = "Table";
|
|
3381
|
-
var TableHeader =
|
|
3636
|
+
var TableHeader = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx("thead", { ref, className: cn("moonui-theme", "[&_tr]:border-b", className), ...props }));
|
|
3382
3637
|
TableHeader.displayName = "TableHeader";
|
|
3383
|
-
var TableBody =
|
|
3384
|
-
const hasChildren =
|
|
3638
|
+
var TableBody = React10.forwardRef(({ className, emptyContent, emptyMessage = "No data available", children, ...props }, ref) => {
|
|
3639
|
+
const hasChildren = React10.Children.count(children) > 0;
|
|
3385
3640
|
return /* @__PURE__ */ jsx(
|
|
3386
3641
|
"tbody",
|
|
3387
3642
|
{
|
|
@@ -3393,7 +3648,7 @@ var TableBody = React20.forwardRef(({ className, emptyContent, emptyMessage = "N
|
|
|
3393
3648
|
);
|
|
3394
3649
|
});
|
|
3395
3650
|
TableBody.displayName = "TableBody";
|
|
3396
|
-
var TableFooter =
|
|
3651
|
+
var TableFooter = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
3397
3652
|
"tfoot",
|
|
3398
3653
|
{
|
|
3399
3654
|
ref,
|
|
@@ -3402,7 +3657,7 @@ var TableFooter = React20.forwardRef(({ className, ...props }, ref) => /* @__PUR
|
|
|
3402
3657
|
}
|
|
3403
3658
|
));
|
|
3404
3659
|
TableFooter.displayName = "TableFooter";
|
|
3405
|
-
var TableRow =
|
|
3660
|
+
var TableRow = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
3406
3661
|
"tr",
|
|
3407
3662
|
{
|
|
3408
3663
|
ref,
|
|
@@ -3414,10 +3669,11 @@ var TableRow = React20.forwardRef(({ className, ...props }, ref) => /* @__PURE__
|
|
|
3414
3669
|
}
|
|
3415
3670
|
));
|
|
3416
3671
|
TableRow.displayName = "TableRow";
|
|
3417
|
-
var TableHead =
|
|
3672
|
+
var TableHead = React10.forwardRef(
|
|
3418
3673
|
({ className, sortable, sorted, onSort, align = "left", children, ...props }, ref) => {
|
|
3419
3674
|
const renderSortIcon = () => {
|
|
3420
|
-
if (!sortable)
|
|
3675
|
+
if (!sortable)
|
|
3676
|
+
return null;
|
|
3421
3677
|
if (sorted === "asc") {
|
|
3422
3678
|
return /* @__PURE__ */ jsx(
|
|
3423
3679
|
"svg",
|
|
@@ -3501,7 +3757,7 @@ var TableHead = React20.forwardRef(
|
|
|
3501
3757
|
}
|
|
3502
3758
|
);
|
|
3503
3759
|
TableHead.displayName = "TableHead";
|
|
3504
|
-
var TableCell =
|
|
3760
|
+
var TableCell = React10.forwardRef(({ className, align = "left", ...props }, ref) => {
|
|
3505
3761
|
const alignmentClass = {
|
|
3506
3762
|
left: "text-left",
|
|
3507
3763
|
center: "text-center",
|
|
@@ -3517,7 +3773,7 @@ var TableCell = React20.forwardRef(({ className, align = "left", ...props }, ref
|
|
|
3517
3773
|
);
|
|
3518
3774
|
});
|
|
3519
3775
|
TableCell.displayName = "TableCell";
|
|
3520
|
-
var TableCaption =
|
|
3776
|
+
var TableCaption = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
3521
3777
|
"caption",
|
|
3522
3778
|
{
|
|
3523
3779
|
ref,
|
|
@@ -3537,8 +3793,8 @@ function DataTableBasic({
|
|
|
3537
3793
|
emptyMessage = "No results found.",
|
|
3538
3794
|
className
|
|
3539
3795
|
}) {
|
|
3540
|
-
const [sorting, setSorting] =
|
|
3541
|
-
const [globalFilter, setGlobalFilter] =
|
|
3796
|
+
const [sorting, setSorting] = React10.useState([]);
|
|
3797
|
+
const [globalFilter, setGlobalFilter] = React10.useState("");
|
|
3542
3798
|
const table = useReactTable({
|
|
3543
3799
|
data,
|
|
3544
3800
|
columns,
|
|
@@ -3724,9 +3980,9 @@ function DatePicker({
|
|
|
3724
3980
|
disabled,
|
|
3725
3981
|
...props
|
|
3726
3982
|
}) {
|
|
3727
|
-
const [open, setOpen] =
|
|
3728
|
-
const [internalDate, setInternalDate] =
|
|
3729
|
-
|
|
3983
|
+
const [open, setOpen] = React10.useState(false);
|
|
3984
|
+
const [internalDate, setInternalDate] = React10.useState(value);
|
|
3985
|
+
React10.useEffect(() => {
|
|
3730
3986
|
setInternalDate(value);
|
|
3731
3987
|
}, [value]);
|
|
3732
3988
|
const handleSelect = (date) => {
|
|
@@ -3746,10 +4002,14 @@ function DatePicker({
|
|
|
3746
4002
|
handleSelect(today);
|
|
3747
4003
|
};
|
|
3748
4004
|
const isDateDisabled = (date) => {
|
|
3749
|
-
if (minDate && date < minDate)
|
|
3750
|
-
|
|
3751
|
-
if (
|
|
3752
|
-
|
|
4005
|
+
if (minDate && date < minDate)
|
|
4006
|
+
return true;
|
|
4007
|
+
if (maxDate && date > maxDate)
|
|
4008
|
+
return true;
|
|
4009
|
+
if (disabledDates?.some((d) => d.toDateString() === date.toDateString()))
|
|
4010
|
+
return true;
|
|
4011
|
+
if (disabledDaysOfWeek?.includes(date.getDay()))
|
|
4012
|
+
return true;
|
|
3753
4013
|
return false;
|
|
3754
4014
|
};
|
|
3755
4015
|
const displayValue = internalDate && isValid(internalDate) ? format(internalDate, formatString) : null;
|
|
@@ -3878,9 +4138,9 @@ function DateRangePicker({
|
|
|
3878
4138
|
separator = " - ",
|
|
3879
4139
|
...props
|
|
3880
4140
|
}) {
|
|
3881
|
-
const [open, setOpen] =
|
|
3882
|
-
const [internalRange, setInternalRange] =
|
|
3883
|
-
|
|
4141
|
+
const [open, setOpen] = React10.useState(false);
|
|
4142
|
+
const [internalRange, setInternalRange] = React10.useState(value);
|
|
4143
|
+
React10.useEffect(() => {
|
|
3884
4144
|
setInternalRange(value);
|
|
3885
4145
|
}, [value]);
|
|
3886
4146
|
const handleSelect = (range) => {
|
|
@@ -3890,8 +4150,9 @@ function DateRangePicker({
|
|
|
3890
4150
|
setOpen(false);
|
|
3891
4151
|
}
|
|
3892
4152
|
};
|
|
3893
|
-
const displayValue =
|
|
3894
|
-
if (!internalRange?.from)
|
|
4153
|
+
const displayValue = React10.useMemo(() => {
|
|
4154
|
+
if (!internalRange?.from)
|
|
4155
|
+
return null;
|
|
3895
4156
|
if (!internalRange?.to) {
|
|
3896
4157
|
return format(internalRange.from, formatString);
|
|
3897
4158
|
}
|
|
@@ -3944,8 +4205,8 @@ function DateTimePicker({
|
|
|
3944
4205
|
timeInterval = 15,
|
|
3945
4206
|
...props
|
|
3946
4207
|
}) {
|
|
3947
|
-
const [date, setDate] =
|
|
3948
|
-
const [time, setTime] =
|
|
4208
|
+
const [date, setDate] = React10.useState(value);
|
|
4209
|
+
const [time, setTime] = React10.useState(
|
|
3949
4210
|
value ? format(value, timeFormat === "24" ? "HH:mm" : "hh:mm a") : "00:00"
|
|
3950
4211
|
);
|
|
3951
4212
|
const handleDateChange = (newDate) => {
|
|
@@ -3970,7 +4231,7 @@ function DateTimePicker({
|
|
|
3970
4231
|
onChange?.(newDate);
|
|
3971
4232
|
}
|
|
3972
4233
|
};
|
|
3973
|
-
const timeOptions =
|
|
4234
|
+
const timeOptions = React10.useMemo(() => {
|
|
3974
4235
|
const options = [];
|
|
3975
4236
|
for (let h = 0; h < 24; h++) {
|
|
3976
4237
|
for (let m = 0; m < 60; m += timeInterval) {
|
|
@@ -4030,8 +4291,8 @@ function MonthPicker({
|
|
|
4030
4291
|
formatString = "MMMM yyyy",
|
|
4031
4292
|
...props
|
|
4032
4293
|
}) {
|
|
4033
|
-
const [open, setOpen] =
|
|
4034
|
-
const [viewDate, setViewDate] =
|
|
4294
|
+
const [open, setOpen] = React10.useState(false);
|
|
4295
|
+
const [viewDate, setViewDate] = React10.useState(value || /* @__PURE__ */ new Date());
|
|
4035
4296
|
const months = [
|
|
4036
4297
|
"January",
|
|
4037
4298
|
"February",
|
|
@@ -4123,9 +4384,10 @@ function DraggableList({
|
|
|
4123
4384
|
className,
|
|
4124
4385
|
disabled = false
|
|
4125
4386
|
}) {
|
|
4126
|
-
const [draggedIndex, setDraggedIndex] =
|
|
4387
|
+
const [draggedIndex, setDraggedIndex] = React10.useState(null);
|
|
4127
4388
|
const handleDragStart = (e, index) => {
|
|
4128
|
-
if (disabled)
|
|
4389
|
+
if (disabled)
|
|
4390
|
+
return;
|
|
4129
4391
|
setDraggedIndex(index);
|
|
4130
4392
|
e.dataTransfer.effectAllowed = "move";
|
|
4131
4393
|
};
|
|
@@ -4174,7 +4436,7 @@ var DropdownMenuGroup = DropdownMenuPrimitive.Group;
|
|
|
4174
4436
|
var DropdownMenuPortal = DropdownMenuPrimitive.Portal;
|
|
4175
4437
|
var DropdownMenuSub = DropdownMenuPrimitive.Sub;
|
|
4176
4438
|
var DropdownMenuRadioGroup = DropdownMenuPrimitive.RadioGroup;
|
|
4177
|
-
var DropdownMenuSubTrigger =
|
|
4439
|
+
var DropdownMenuSubTrigger = React10.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
4178
4440
|
DropdownMenuPrimitive.SubTrigger,
|
|
4179
4441
|
{
|
|
4180
4442
|
ref,
|
|
@@ -4191,7 +4453,7 @@ var DropdownMenuSubTrigger = React20.forwardRef(({ className, inset, children, .
|
|
|
4191
4453
|
}
|
|
4192
4454
|
));
|
|
4193
4455
|
DropdownMenuSubTrigger.displayName = DropdownMenuPrimitive.SubTrigger.displayName;
|
|
4194
|
-
var DropdownMenuSubContent =
|
|
4456
|
+
var DropdownMenuSubContent = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
4195
4457
|
DropdownMenuPrimitive.SubContent,
|
|
4196
4458
|
{
|
|
4197
4459
|
ref,
|
|
@@ -4203,7 +4465,7 @@ var DropdownMenuSubContent = React20.forwardRef(({ className, ...props }, ref) =
|
|
|
4203
4465
|
}
|
|
4204
4466
|
));
|
|
4205
4467
|
DropdownMenuSubContent.displayName = DropdownMenuPrimitive.SubContent.displayName;
|
|
4206
|
-
var DropdownMenuContent =
|
|
4468
|
+
var DropdownMenuContent = React10.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx(
|
|
4207
4469
|
DropdownMenuPrimitive.Content,
|
|
4208
4470
|
{
|
|
4209
4471
|
ref,
|
|
@@ -4216,7 +4478,7 @@ var DropdownMenuContent = React20.forwardRef(({ className, sideOffset = 4, ...pr
|
|
|
4216
4478
|
}
|
|
4217
4479
|
) }));
|
|
4218
4480
|
DropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName;
|
|
4219
|
-
var DropdownMenuItem =
|
|
4481
|
+
var DropdownMenuItem = React10.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
4220
4482
|
DropdownMenuPrimitive.Item,
|
|
4221
4483
|
{
|
|
4222
4484
|
ref,
|
|
@@ -4229,7 +4491,7 @@ var DropdownMenuItem = React20.forwardRef(({ className, inset, ...props }, ref)
|
|
|
4229
4491
|
}
|
|
4230
4492
|
));
|
|
4231
4493
|
DropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName;
|
|
4232
|
-
var DropdownMenuCheckboxItem =
|
|
4494
|
+
var DropdownMenuCheckboxItem = React10.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
4233
4495
|
DropdownMenuPrimitive.CheckboxItem,
|
|
4234
4496
|
{
|
|
4235
4497
|
ref,
|
|
@@ -4246,7 +4508,7 @@ var DropdownMenuCheckboxItem = React20.forwardRef(({ className, children, checke
|
|
|
4246
4508
|
}
|
|
4247
4509
|
));
|
|
4248
4510
|
DropdownMenuCheckboxItem.displayName = DropdownMenuPrimitive.CheckboxItem.displayName;
|
|
4249
|
-
var DropdownMenuRadioItem =
|
|
4511
|
+
var DropdownMenuRadioItem = React10.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
4250
4512
|
DropdownMenuPrimitive.RadioItem,
|
|
4251
4513
|
{
|
|
4252
4514
|
ref,
|
|
@@ -4262,7 +4524,7 @@ var DropdownMenuRadioItem = React20.forwardRef(({ className, children, ...props
|
|
|
4262
4524
|
}
|
|
4263
4525
|
));
|
|
4264
4526
|
DropdownMenuRadioItem.displayName = DropdownMenuPrimitive.RadioItem.displayName;
|
|
4265
|
-
var DropdownMenuLabel =
|
|
4527
|
+
var DropdownMenuLabel = React10.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
4266
4528
|
DropdownMenuPrimitive.Label,
|
|
4267
4529
|
{
|
|
4268
4530
|
ref,
|
|
@@ -4275,7 +4537,7 @@ var DropdownMenuLabel = React20.forwardRef(({ className, inset, ...props }, ref)
|
|
|
4275
4537
|
}
|
|
4276
4538
|
));
|
|
4277
4539
|
DropdownMenuLabel.displayName = DropdownMenuPrimitive.Label.displayName;
|
|
4278
|
-
var DropdownMenuSeparator =
|
|
4540
|
+
var DropdownMenuSeparator = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
4279
4541
|
DropdownMenuPrimitive.Separator,
|
|
4280
4542
|
{
|
|
4281
4543
|
ref,
|
|
@@ -4364,7 +4626,7 @@ var progressIndicatorVariants = cva(
|
|
|
4364
4626
|
}
|
|
4365
4627
|
}
|
|
4366
4628
|
);
|
|
4367
|
-
var Progress =
|
|
4629
|
+
var Progress = React10.forwardRef(({
|
|
4368
4630
|
className,
|
|
4369
4631
|
value = 0,
|
|
4370
4632
|
variant,
|
|
@@ -4419,14 +4681,19 @@ var Progress = React20.forwardRef(({
|
|
|
4419
4681
|
});
|
|
4420
4682
|
Progress.displayName = "Progress";
|
|
4421
4683
|
var getFileIcon = (type) => {
|
|
4422
|
-
if (type.startsWith("image/"))
|
|
4423
|
-
|
|
4424
|
-
if (type.startsWith("
|
|
4425
|
-
|
|
4684
|
+
if (type.startsWith("image/"))
|
|
4685
|
+
return /* @__PURE__ */ jsx(Image, { className: "h-4 w-4" });
|
|
4686
|
+
if (type.startsWith("video/"))
|
|
4687
|
+
return /* @__PURE__ */ jsx(Video, { className: "h-4 w-4" });
|
|
4688
|
+
if (type.startsWith("audio/"))
|
|
4689
|
+
return /* @__PURE__ */ jsx(Music, { className: "h-4 w-4" });
|
|
4690
|
+
if (type.includes("text") || type.includes("document"))
|
|
4691
|
+
return /* @__PURE__ */ jsx(FileText, { className: "h-4 w-4" });
|
|
4426
4692
|
return /* @__PURE__ */ jsx(File, { className: "h-4 w-4" });
|
|
4427
4693
|
};
|
|
4428
4694
|
var formatFileSize = (bytes) => {
|
|
4429
|
-
if (bytes === 0)
|
|
4695
|
+
if (bytes === 0)
|
|
4696
|
+
return "0 Bytes";
|
|
4430
4697
|
const k = 1024;
|
|
4431
4698
|
const sizes = ["Bytes", "KB", "MB", "GB"];
|
|
4432
4699
|
const i = Math.floor(Math.log(bytes) / Math.log(k));
|
|
@@ -4488,7 +4755,7 @@ var FileItem = ({
|
|
|
4488
4755
|
}
|
|
4489
4756
|
);
|
|
4490
4757
|
};
|
|
4491
|
-
var FileUpload =
|
|
4758
|
+
var FileUpload = React10__default.forwardRef(
|
|
4492
4759
|
({
|
|
4493
4760
|
accept = "*",
|
|
4494
4761
|
multiple = true,
|
|
@@ -4586,7 +4853,8 @@ var FileUpload = React20__default.forwardRef(
|
|
|
4586
4853
|
const handleDrop = useCallback((e) => {
|
|
4587
4854
|
e.preventDefault();
|
|
4588
4855
|
setIsDragOver(false);
|
|
4589
|
-
if (disabled)
|
|
4856
|
+
if (disabled)
|
|
4857
|
+
return;
|
|
4590
4858
|
const files = e.dataTransfer.files;
|
|
4591
4859
|
if (files.length > 0) {
|
|
4592
4860
|
processFiles(files);
|
|
@@ -4709,7 +4977,7 @@ var FileUpload = React20__default.forwardRef(
|
|
|
4709
4977
|
}
|
|
4710
4978
|
);
|
|
4711
4979
|
FileUpload.displayName = "FileUpload";
|
|
4712
|
-
var GestureDrawer =
|
|
4980
|
+
var GestureDrawer = React10__default.forwardRef(
|
|
4713
4981
|
({
|
|
4714
4982
|
children,
|
|
4715
4983
|
isOpen,
|
|
@@ -4727,7 +4995,8 @@ var GestureDrawer = React20__default.forwardRef(
|
|
|
4727
4995
|
const motionValue = isVertical ? y : x;
|
|
4728
4996
|
const opacity = useTransform(motionValue, [0, threshold], [1, 0.5]);
|
|
4729
4997
|
const handleDragEnd = (event, info) => {
|
|
4730
|
-
if (!enableSwipeToClose)
|
|
4998
|
+
if (!enableSwipeToClose)
|
|
4999
|
+
return;
|
|
4731
5000
|
const offset = isVertical ? info.offset.y : info.offset.x;
|
|
4732
5001
|
const velocity = isVertical ? info.velocity.y : info.velocity.x;
|
|
4733
5002
|
let shouldClose = false;
|
|
@@ -4768,7 +5037,8 @@ var GestureDrawer = React20__default.forwardRef(
|
|
|
4768
5037
|
const getAnimatePosition = () => {
|
|
4769
5038
|
return isVertical ? { y: 0 } : { x: 0 };
|
|
4770
5039
|
};
|
|
4771
|
-
if (!isOpen)
|
|
5040
|
+
if (!isOpen)
|
|
5041
|
+
return null;
|
|
4772
5042
|
return /* @__PURE__ */ jsxs("div", { className: "fixed inset-0 z-50", children: [
|
|
4773
5043
|
/* @__PURE__ */ jsx(
|
|
4774
5044
|
motion.div,
|
|
@@ -4978,6 +5248,77 @@ function GitHubStarButton({
|
|
|
4978
5248
|
}
|
|
4979
5249
|
);
|
|
4980
5250
|
}
|
|
5251
|
+
var InputOTP = React10.forwardRef(({ className, containerClassName, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
5252
|
+
OTPInput,
|
|
5253
|
+
{
|
|
5254
|
+
ref,
|
|
5255
|
+
containerClassName: cn(
|
|
5256
|
+
"moonui-theme",
|
|
5257
|
+
"flex items-center gap-2 has-[:disabled]:opacity-50",
|
|
5258
|
+
containerClassName
|
|
5259
|
+
),
|
|
5260
|
+
className: cn("disabled:cursor-not-allowed", className),
|
|
5261
|
+
...props
|
|
5262
|
+
}
|
|
5263
|
+
));
|
|
5264
|
+
InputOTP.displayName = "InputOTP";
|
|
5265
|
+
var InputOTPGroup = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx("div", { ref, className: cn("flex items-center", className), ...props }));
|
|
5266
|
+
InputOTPGroup.displayName = "InputOTPGroup";
|
|
5267
|
+
var inputOTPSlotVariants = cva(
|
|
5268
|
+
[
|
|
5269
|
+
"relative flex h-10 w-10 items-center justify-center",
|
|
5270
|
+
"border-y border-r border-input text-sm text-foreground",
|
|
5271
|
+
"transition-all duration-200",
|
|
5272
|
+
"first:rounded-l-md first:border-l last:rounded-r-md"
|
|
5273
|
+
],
|
|
5274
|
+
{
|
|
5275
|
+
variants: {
|
|
5276
|
+
// Aktif slot vurgusu — token tabanlı ring stili
|
|
5277
|
+
isActive: {
|
|
5278
|
+
true: "z-10 ring-2 ring-ring ring-offset-background",
|
|
5279
|
+
false: ""
|
|
5280
|
+
}
|
|
5281
|
+
},
|
|
5282
|
+
defaultVariants: {
|
|
5283
|
+
isActive: false
|
|
5284
|
+
}
|
|
5285
|
+
}
|
|
5286
|
+
);
|
|
5287
|
+
var InputOTPSlot = React10.forwardRef(
|
|
5288
|
+
({ index, className, ...props }, ref) => {
|
|
5289
|
+
const inputOTPContext = React10.useContext(OTPInputContext);
|
|
5290
|
+
const slot = inputOTPContext?.slots?.[index];
|
|
5291
|
+
const char = slot?.char;
|
|
5292
|
+
const hasFakeCaret = slot?.hasFakeCaret;
|
|
5293
|
+
const isActive = slot?.isActive;
|
|
5294
|
+
return /* @__PURE__ */ jsxs(
|
|
5295
|
+
"div",
|
|
5296
|
+
{
|
|
5297
|
+
ref,
|
|
5298
|
+
"data-active": isActive ? "" : void 0,
|
|
5299
|
+
className: cn(inputOTPSlotVariants({ isActive: !!isActive }), className),
|
|
5300
|
+
...props,
|
|
5301
|
+
children: [
|
|
5302
|
+
char,
|
|
5303
|
+
hasFakeCaret && // Sahte imleç — gerçek input görünmez olduğu için aktif slotta yanıp söner
|
|
5304
|
+
/* @__PURE__ */ jsx("div", { className: "pointer-events-none absolute inset-0 flex items-center justify-center", children: /* @__PURE__ */ jsx("div", { className: "h-4 w-px animate-caret-blink bg-foreground duration-1000" }) })
|
|
5305
|
+
]
|
|
5306
|
+
}
|
|
5307
|
+
);
|
|
5308
|
+
}
|
|
5309
|
+
);
|
|
5310
|
+
InputOTPSlot.displayName = "InputOTPSlot";
|
|
5311
|
+
var InputOTPSeparator = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
5312
|
+
"div",
|
|
5313
|
+
{
|
|
5314
|
+
ref,
|
|
5315
|
+
role: "separator",
|
|
5316
|
+
className: cn("text-muted-foreground", className),
|
|
5317
|
+
...props,
|
|
5318
|
+
children: /* @__PURE__ */ jsx(Dot, { "aria-hidden": "true" })
|
|
5319
|
+
}
|
|
5320
|
+
));
|
|
5321
|
+
InputOTPSeparator.displayName = "InputOTPSeparator";
|
|
4981
5322
|
function LockedComponent({
|
|
4982
5323
|
children,
|
|
4983
5324
|
componentName,
|
|
@@ -4988,7 +5329,8 @@ function LockedComponent({
|
|
|
4988
5329
|
const [isPreviewActive, setIsPreviewActive] = useState(false);
|
|
4989
5330
|
const [previewTimeout, setPreviewTimeout] = useState(null);
|
|
4990
5331
|
const handleMouseEnter = () => {
|
|
4991
|
-
if (!showPreview)
|
|
5332
|
+
if (!showPreview)
|
|
5333
|
+
return;
|
|
4992
5334
|
setIsPreviewActive(true);
|
|
4993
5335
|
if (previewTimeout) {
|
|
4994
5336
|
clearTimeout(previewTimeout);
|
|
@@ -5094,6 +5436,7 @@ function ProComponentWrapper({
|
|
|
5094
5436
|
nodeEnv: process.env.NODE_ENV === "development",
|
|
5095
5437
|
nextPublicEnv: process.env.NEXT_PUBLIC_VERCEL_ENV === "development",
|
|
5096
5438
|
localhost: typeof window !== "undefined" && (window.location.hostname === "localhost" || window.location.hostname === "127.0.0.1" || window.location.hostname.includes(".local")),
|
|
5439
|
+
port: typeof window !== "undefined" && (window.location.port === "3000" || window.location.port === "3001" || window.location.port === "8080"),
|
|
5097
5440
|
vercelEnv: !process.env.VERCEL,
|
|
5098
5441
|
ciEnv: !process.env.CI,
|
|
5099
5442
|
deploymentEnv: !process.env.DEPLOYMENT_ENV
|
|
@@ -5174,7 +5517,9 @@ function ProComponentWrapper({
|
|
|
5174
5517
|
const isDevelopment = () => {
|
|
5175
5518
|
const checks = {
|
|
5176
5519
|
nodeEnv: process.env.NODE_ENV === "development",
|
|
5177
|
-
localhost: typeof window !== "undefined" && (window.location.hostname === "localhost" || window.location.hostname === "127.0.0.1" || window.location.hostname.includes(".local"))
|
|
5520
|
+
localhost: typeof window !== "undefined" && (window.location.hostname === "localhost" || window.location.hostname === "127.0.0.1" || window.location.hostname.includes(".local")),
|
|
5521
|
+
port: typeof window !== "undefined" && (window.location.port === "3000" || window.location.port === "3001" || window.location.port === "8080")
|
|
5522
|
+
};
|
|
5178
5523
|
if (process.env.VERCEL || process.env.NETLIFY || process.env.RENDER || process.env.RAILWAY_ENVIRONMENT || process.env.FLY_APP_NAME) {
|
|
5179
5524
|
return false;
|
|
5180
5525
|
}
|
|
@@ -5262,7 +5607,7 @@ function MoonLogo({
|
|
|
5262
5607
|
showText = true,
|
|
5263
5608
|
...props
|
|
5264
5609
|
}) {
|
|
5265
|
-
const logoId =
|
|
5610
|
+
const logoId = React10.useId();
|
|
5266
5611
|
const gradientId = `moon-gradient-${logoId}`;
|
|
5267
5612
|
const maskId = `moon-mask-${logoId}`;
|
|
5268
5613
|
return /* @__PURE__ */ jsxs("div", { className: cn("flex items-center gap-2", className), children: [
|
|
@@ -5344,7 +5689,7 @@ var Pagination = ({ className, ...props }) => /* @__PURE__ */ jsx(
|
|
|
5344
5689
|
}
|
|
5345
5690
|
);
|
|
5346
5691
|
Pagination.displayName = "Pagination";
|
|
5347
|
-
var PaginationContent =
|
|
5692
|
+
var PaginationContent = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
5348
5693
|
"ul",
|
|
5349
5694
|
{
|
|
5350
5695
|
ref,
|
|
@@ -5353,7 +5698,7 @@ var PaginationContent = React20.forwardRef(({ className, ...props }, ref) => /*
|
|
|
5353
5698
|
}
|
|
5354
5699
|
));
|
|
5355
5700
|
PaginationContent.displayName = "PaginationContent";
|
|
5356
|
-
var PaginationItem =
|
|
5701
|
+
var PaginationItem = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx("li", { ref, className: cn("moonui-theme", "", className), ...props }));
|
|
5357
5702
|
PaginationItem.displayName = "PaginationItem";
|
|
5358
5703
|
var PaginationLink = ({
|
|
5359
5704
|
className,
|
|
@@ -5429,7 +5774,7 @@ var Select = SelectPrimitive.Root;
|
|
|
5429
5774
|
Select.displayName = "Select";
|
|
5430
5775
|
var SelectGroup = SelectPrimitive.Group;
|
|
5431
5776
|
var SelectValue = SelectPrimitive.Value;
|
|
5432
|
-
var SelectTrigger =
|
|
5777
|
+
var SelectTrigger = React10.forwardRef(({ className, children, variant = "standard", size = "md", error, success, loading, leftIcon, rightIcon, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
5433
5778
|
SelectPrimitive.Trigger,
|
|
5434
5779
|
{
|
|
5435
5780
|
ref,
|
|
@@ -5471,7 +5816,7 @@ var SelectTrigger = React20.forwardRef(({ className, children, variant = "standa
|
|
|
5471
5816
|
}
|
|
5472
5817
|
));
|
|
5473
5818
|
SelectTrigger.displayName = SelectPrimitive.Trigger.displayName;
|
|
5474
|
-
var SelectScrollUpButton =
|
|
5819
|
+
var SelectScrollUpButton = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
5475
5820
|
SelectPrimitive.ScrollUpButton,
|
|
5476
5821
|
{
|
|
5477
5822
|
ref,
|
|
@@ -5484,7 +5829,7 @@ var SelectScrollUpButton = React20.forwardRef(({ className, ...props }, ref) =>
|
|
|
5484
5829
|
}
|
|
5485
5830
|
));
|
|
5486
5831
|
SelectScrollUpButton.displayName = SelectPrimitive.ScrollUpButton.displayName;
|
|
5487
|
-
var SelectScrollDownButton =
|
|
5832
|
+
var SelectScrollDownButton = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
5488
5833
|
SelectPrimitive.ScrollDownButton,
|
|
5489
5834
|
{
|
|
5490
5835
|
ref,
|
|
@@ -5497,7 +5842,7 @@ var SelectScrollDownButton = React20.forwardRef(({ className, ...props }, ref) =
|
|
|
5497
5842
|
}
|
|
5498
5843
|
));
|
|
5499
5844
|
SelectScrollDownButton.displayName = SelectPrimitive.ScrollDownButton.displayName;
|
|
5500
|
-
var SelectContent =
|
|
5845
|
+
var SelectContent = React10.forwardRef(({ className, children, position = "popper", side = "bottom", sideOffset = 4, align = "start", ...props }, ref) => /* @__PURE__ */ jsx(SelectPrimitive.Portal, { children: /* @__PURE__ */ jsxs(
|
|
5501
5846
|
SelectPrimitive.Content,
|
|
5502
5847
|
{
|
|
5503
5848
|
ref,
|
|
@@ -5538,7 +5883,7 @@ var SelectContent = React20.forwardRef(({ className, children, position = "poppe
|
|
|
5538
5883
|
}
|
|
5539
5884
|
) }));
|
|
5540
5885
|
SelectContent.displayName = SelectPrimitive.Content.displayName;
|
|
5541
|
-
var SelectLabel =
|
|
5886
|
+
var SelectLabel = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
5542
5887
|
SelectPrimitive.Label,
|
|
5543
5888
|
{
|
|
5544
5889
|
ref,
|
|
@@ -5547,7 +5892,7 @@ var SelectLabel = React20.forwardRef(({ className, ...props }, ref) => /* @__PUR
|
|
|
5547
5892
|
}
|
|
5548
5893
|
));
|
|
5549
5894
|
SelectLabel.displayName = SelectPrimitive.Label.displayName;
|
|
5550
|
-
var SelectItem =
|
|
5895
|
+
var SelectItem = React10.forwardRef(({ className, children, variant = "default", size = "md", rightIcon, customIndicator, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
5551
5896
|
SelectPrimitive.Item,
|
|
5552
5897
|
{
|
|
5553
5898
|
ref,
|
|
@@ -5577,7 +5922,7 @@ var SelectItem = React20.forwardRef(({ className, children, variant = "default",
|
|
|
5577
5922
|
}
|
|
5578
5923
|
));
|
|
5579
5924
|
SelectItem.displayName = SelectPrimitive.Item.displayName;
|
|
5580
|
-
var SelectSeparator =
|
|
5925
|
+
var SelectSeparator = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
5581
5926
|
SelectPrimitive.Separator,
|
|
5582
5927
|
{
|
|
5583
5928
|
ref,
|
|
@@ -5618,22 +5963,30 @@ var formatPhoneNumber = (value, countryCode) => {
|
|
|
5618
5963
|
const cleaned = value.replace(/\D/g, "");
|
|
5619
5964
|
switch (countryCode) {
|
|
5620
5965
|
case "+1":
|
|
5621
|
-
if (cleaned.length <= 3)
|
|
5622
|
-
|
|
5966
|
+
if (cleaned.length <= 3)
|
|
5967
|
+
return cleaned;
|
|
5968
|
+
if (cleaned.length <= 6)
|
|
5969
|
+
return `(${cleaned.slice(0, 3)}) ${cleaned.slice(3)}`;
|
|
5623
5970
|
return `(${cleaned.slice(0, 3)}) ${cleaned.slice(3, 6)}-${cleaned.slice(6, 10)}`;
|
|
5624
5971
|
case "+44":
|
|
5625
|
-
if (cleaned.length <= 4)
|
|
5626
|
-
|
|
5972
|
+
if (cleaned.length <= 4)
|
|
5973
|
+
return cleaned;
|
|
5974
|
+
if (cleaned.length <= 7)
|
|
5975
|
+
return `${cleaned.slice(0, 4)} ${cleaned.slice(4)}`;
|
|
5627
5976
|
return `${cleaned.slice(0, 4)} ${cleaned.slice(4, 7)} ${cleaned.slice(7, 11)}`;
|
|
5628
5977
|
case "+90":
|
|
5629
|
-
if (cleaned.length <= 3)
|
|
5630
|
-
|
|
5631
|
-
if (cleaned.length <=
|
|
5978
|
+
if (cleaned.length <= 3)
|
|
5979
|
+
return cleaned;
|
|
5980
|
+
if (cleaned.length <= 6)
|
|
5981
|
+
return `(${cleaned.slice(0, 3)}) ${cleaned.slice(3)}`;
|
|
5982
|
+
if (cleaned.length <= 9)
|
|
5983
|
+
return `(${cleaned.slice(0, 3)}) ${cleaned.slice(3, 6)} ${cleaned.slice(6)}`;
|
|
5632
5984
|
return `(${cleaned.slice(0, 3)}) ${cleaned.slice(3, 6)} ${cleaned.slice(6, 8)} ${cleaned.slice(8, 10)}`;
|
|
5633
5985
|
default:
|
|
5634
5986
|
let formatted = "";
|
|
5635
5987
|
for (let i = 0; i < cleaned.length; i++) {
|
|
5636
|
-
if (i > 0 && i % 3 === 0)
|
|
5988
|
+
if (i > 0 && i % 3 === 0)
|
|
5989
|
+
formatted += " ";
|
|
5637
5990
|
formatted += cleaned[i];
|
|
5638
5991
|
}
|
|
5639
5992
|
return formatted;
|
|
@@ -5643,18 +5996,15 @@ var getMaxLength = (countryCode) => {
|
|
|
5643
5996
|
switch (countryCode) {
|
|
5644
5997
|
case "+1":
|
|
5645
5998
|
return 10;
|
|
5646
|
-
// US/Canada
|
|
5647
5999
|
case "+44":
|
|
5648
6000
|
return 11;
|
|
5649
|
-
// UK
|
|
5650
6001
|
case "+90":
|
|
5651
6002
|
return 10;
|
|
5652
|
-
// Turkey
|
|
5653
6003
|
default:
|
|
5654
6004
|
return 15;
|
|
5655
6005
|
}
|
|
5656
6006
|
};
|
|
5657
|
-
var PhoneInput =
|
|
6007
|
+
var PhoneInput = React10.forwardRef(
|
|
5658
6008
|
({
|
|
5659
6009
|
className,
|
|
5660
6010
|
value = "",
|
|
@@ -5666,8 +6016,8 @@ var PhoneInput = React20.forwardRef(
|
|
|
5666
6016
|
size,
|
|
5667
6017
|
...props
|
|
5668
6018
|
}, ref) => {
|
|
5669
|
-
const [countryCode, setCountryCode] =
|
|
5670
|
-
const [phoneNumber, setPhoneNumber] =
|
|
6019
|
+
const [countryCode, setCountryCode] = React10.useState(defaultCountry);
|
|
6020
|
+
const [phoneNumber, setPhoneNumber] = React10.useState(value);
|
|
5671
6021
|
const selectedCountry = countries.find((c) => c.code === countryCode) || countries[0];
|
|
5672
6022
|
const handlePhoneChange = (e) => {
|
|
5673
6023
|
const rawValue = e.target.value.replace(/\D/g, "");
|
|
@@ -5738,8 +6088,8 @@ var radioGroupItemVariants = cva(
|
|
|
5738
6088
|
}
|
|
5739
6089
|
}
|
|
5740
6090
|
);
|
|
5741
|
-
var RadioGroupContext =
|
|
5742
|
-
var RadioGroup2 =
|
|
6091
|
+
var RadioGroupContext = React10.createContext({});
|
|
6092
|
+
var RadioGroup2 = React10.forwardRef(
|
|
5743
6093
|
({ className, value, onValueChange, disabled, name, ...props }, ref) => {
|
|
5744
6094
|
return /* @__PURE__ */ jsx(RadioGroupContext.Provider, { value: { value, onValueChange, disabled, name }, children: /* @__PURE__ */ jsx(
|
|
5745
6095
|
"div",
|
|
@@ -5753,9 +6103,9 @@ var RadioGroup2 = React20.forwardRef(
|
|
|
5753
6103
|
}
|
|
5754
6104
|
);
|
|
5755
6105
|
RadioGroup2.displayName = "RadioGroup";
|
|
5756
|
-
var RadioGroupItem =
|
|
5757
|
-
const radioGroup =
|
|
5758
|
-
const generatedId =
|
|
6106
|
+
var RadioGroupItem = React10.forwardRef(({ className, variant, size, indicator, id, value, disabled, ...props }, ref) => {
|
|
6107
|
+
const radioGroup = React10.useContext(RadioGroupContext);
|
|
6108
|
+
const generatedId = React10.useId();
|
|
5759
6109
|
const radioId = id || generatedId;
|
|
5760
6110
|
const isChecked = radioGroup.value === value;
|
|
5761
6111
|
const handleChange = (e) => {
|
|
@@ -5803,7 +6153,7 @@ var RadioGroupItem = React20.forwardRef(({ className, variant, size, indicator,
|
|
|
5803
6153
|
] });
|
|
5804
6154
|
});
|
|
5805
6155
|
RadioGroupItem.displayName = "RadioGroupItem";
|
|
5806
|
-
var RadioLabel =
|
|
6156
|
+
var RadioLabel = React10.forwardRef(
|
|
5807
6157
|
({ className, htmlFor, children, disabled = false, ...props }, ref) => {
|
|
5808
6158
|
return /* @__PURE__ */ jsx(
|
|
5809
6159
|
"label",
|
|
@@ -5822,13 +6172,13 @@ var RadioLabel = React20.forwardRef(
|
|
|
5822
6172
|
}
|
|
5823
6173
|
);
|
|
5824
6174
|
RadioLabel.displayName = "RadioLabel";
|
|
5825
|
-
var RadioItemWithLabel =
|
|
6175
|
+
var RadioItemWithLabel = React10.forwardRef(({
|
|
5826
6176
|
id,
|
|
5827
6177
|
label,
|
|
5828
6178
|
labelClassName,
|
|
5829
6179
|
...radioProps
|
|
5830
6180
|
}, ref) => {
|
|
5831
|
-
const generatedId =
|
|
6181
|
+
const generatedId = React10.useId();
|
|
5832
6182
|
const radioId = id || generatedId;
|
|
5833
6183
|
return /* @__PURE__ */ jsxs("div", { className: "flex items-center", children: [
|
|
5834
6184
|
/* @__PURE__ */ jsx(RadioGroupItem, { ref, id: radioId, ...radioProps }),
|
|
@@ -5905,7 +6255,7 @@ function RichTextEditor({
|
|
|
5905
6255
|
)
|
|
5906
6256
|
] });
|
|
5907
6257
|
}
|
|
5908
|
-
var ScrollArea =
|
|
6258
|
+
var ScrollArea = React10.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
5909
6259
|
ScrollAreaPrimitive.Root,
|
|
5910
6260
|
{
|
|
5911
6261
|
ref,
|
|
@@ -5919,7 +6269,7 @@ var ScrollArea = React20.forwardRef(({ className, children, ...props }, ref) =>
|
|
|
5919
6269
|
}
|
|
5920
6270
|
));
|
|
5921
6271
|
ScrollArea.displayName = ScrollAreaPrimitive.Root.displayName;
|
|
5922
|
-
var ScrollBar =
|
|
6272
|
+
var ScrollBar = React10.forwardRef(({ className, orientation = "vertical", ...props }, ref) => /* @__PURE__ */ jsx(
|
|
5923
6273
|
ScrollAreaPrimitive.ScrollAreaScrollbar,
|
|
5924
6274
|
{
|
|
5925
6275
|
ref,
|
|
@@ -5973,7 +6323,7 @@ var defaultTransition = {
|
|
|
5973
6323
|
ease: [0.25, 0.46, 0.45, 0.94]
|
|
5974
6324
|
// Custom cubic-bezier for smooth motion
|
|
5975
6325
|
};
|
|
5976
|
-
var ScrollReveal =
|
|
6326
|
+
var ScrollReveal = React10.forwardRef(
|
|
5977
6327
|
({
|
|
5978
6328
|
children,
|
|
5979
6329
|
direction = "up",
|
|
@@ -5994,16 +6344,17 @@ var ScrollReveal = React20.forwardRef(
|
|
|
5994
6344
|
viewport
|
|
5995
6345
|
}, ref) => {
|
|
5996
6346
|
const shouldTriggerOnce = triggerOnce !== void 0 ? triggerOnce : once;
|
|
5997
|
-
const animationVariants =
|
|
5998
|
-
if (variants)
|
|
6347
|
+
const animationVariants = React10.useMemo(() => {
|
|
6348
|
+
if (variants)
|
|
6349
|
+
return variants;
|
|
5999
6350
|
return createDefaultVariants(direction, distance);
|
|
6000
6351
|
}, [direction, distance, variants]);
|
|
6001
|
-
const transition =
|
|
6352
|
+
const transition = React10.useMemo(() => ({
|
|
6002
6353
|
...defaultTransition,
|
|
6003
6354
|
duration,
|
|
6004
6355
|
delay: delay + stagger
|
|
6005
6356
|
}), [duration, delay, stagger]);
|
|
6006
|
-
const viewportConfig =
|
|
6357
|
+
const viewportConfig = React10.useMemo(() => ({
|
|
6007
6358
|
once: shouldTriggerOnce,
|
|
6008
6359
|
amount: threshold,
|
|
6009
6360
|
...viewport
|
|
@@ -6038,7 +6389,7 @@ var ScrollReveal = React20.forwardRef(
|
|
|
6038
6389
|
}
|
|
6039
6390
|
);
|
|
6040
6391
|
ScrollReveal.displayName = "ScrollReveal";
|
|
6041
|
-
var ScrollRevealContainer =
|
|
6392
|
+
var ScrollRevealContainer = React10.forwardRef(
|
|
6042
6393
|
({
|
|
6043
6394
|
children,
|
|
6044
6395
|
stagger = 0.1,
|
|
@@ -6051,7 +6402,7 @@ var ScrollRevealContainer = React20.forwardRef(
|
|
|
6051
6402
|
viewport
|
|
6052
6403
|
}, ref) => {
|
|
6053
6404
|
const shouldTriggerOnce = triggerOnce !== void 0 ? triggerOnce : once;
|
|
6054
|
-
const viewportConfig =
|
|
6405
|
+
const viewportConfig = React10.useMemo(() => ({
|
|
6055
6406
|
once: shouldTriggerOnce,
|
|
6056
6407
|
amount: threshold,
|
|
6057
6408
|
...viewport
|
|
@@ -6082,7 +6433,7 @@ var ScrollRevealContainer = React20.forwardRef(
|
|
|
6082
6433
|
}
|
|
6083
6434
|
);
|
|
6084
6435
|
ScrollRevealContainer.displayName = "ScrollRevealContainer";
|
|
6085
|
-
var ScrollRevealItem =
|
|
6436
|
+
var ScrollRevealItem = React10.forwardRef(
|
|
6086
6437
|
({
|
|
6087
6438
|
children,
|
|
6088
6439
|
direction = "up",
|
|
@@ -6093,11 +6444,12 @@ var ScrollRevealItem = React20.forwardRef(
|
|
|
6093
6444
|
style,
|
|
6094
6445
|
id
|
|
6095
6446
|
}, ref) => {
|
|
6096
|
-
const animationVariants =
|
|
6097
|
-
if (variants)
|
|
6447
|
+
const animationVariants = React10.useMemo(() => {
|
|
6448
|
+
if (variants)
|
|
6449
|
+
return variants;
|
|
6098
6450
|
return createDefaultVariants(direction, distance);
|
|
6099
6451
|
}, [direction, distance, variants]);
|
|
6100
|
-
const transition =
|
|
6452
|
+
const transition = React10.useMemo(() => ({
|
|
6101
6453
|
...defaultTransition,
|
|
6102
6454
|
duration
|
|
6103
6455
|
}), [duration]);
|
|
@@ -6213,7 +6565,7 @@ var separatorVariants = cva(
|
|
|
6213
6565
|
}
|
|
6214
6566
|
}
|
|
6215
6567
|
);
|
|
6216
|
-
var Separator3 =
|
|
6568
|
+
var Separator3 = React10.forwardRef(
|
|
6217
6569
|
({
|
|
6218
6570
|
className,
|
|
6219
6571
|
orientation = "horizontal",
|
|
@@ -6256,7 +6608,7 @@ var toggleVariants = cva(
|
|
|
6256
6608
|
}
|
|
6257
6609
|
}
|
|
6258
6610
|
);
|
|
6259
|
-
var Toggle =
|
|
6611
|
+
var Toggle = React10.forwardRef(({ className, variant, size, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
6260
6612
|
TogglePrimitive.Root,
|
|
6261
6613
|
{
|
|
6262
6614
|
ref,
|
|
@@ -6292,7 +6644,7 @@ var tooltipVariants = cva(
|
|
|
6292
6644
|
);
|
|
6293
6645
|
var Tooltip = TooltipPrimitive.Root;
|
|
6294
6646
|
var TooltipTrigger = TooltipPrimitive.Trigger;
|
|
6295
|
-
var TooltipArrow =
|
|
6647
|
+
var TooltipArrow = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
6296
6648
|
TooltipPrimitive.Arrow,
|
|
6297
6649
|
{
|
|
6298
6650
|
ref,
|
|
@@ -6301,7 +6653,7 @@ var TooltipArrow = React20.forwardRef(({ className, ...props }, ref) => /* @__PU
|
|
|
6301
6653
|
}
|
|
6302
6654
|
));
|
|
6303
6655
|
TooltipArrow.displayName = TooltipPrimitive.Arrow.displayName;
|
|
6304
|
-
var TooltipContent =
|
|
6656
|
+
var TooltipContent = React10.forwardRef(({ className, variant, size, showArrow = false, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
6305
6657
|
TooltipPrimitive.Content,
|
|
6306
6658
|
{
|
|
6307
6659
|
ref,
|
|
@@ -6315,7 +6667,7 @@ var TooltipContent = React20.forwardRef(({ className, variant, size, showArrow =
|
|
|
6315
6667
|
}
|
|
6316
6668
|
));
|
|
6317
6669
|
TooltipContent.displayName = TooltipPrimitive.Content.displayName;
|
|
6318
|
-
var SimpleTooltip =
|
|
6670
|
+
var SimpleTooltip = React10.forwardRef(
|
|
6319
6671
|
({
|
|
6320
6672
|
children,
|
|
6321
6673
|
content,
|
|
@@ -6400,7 +6752,7 @@ var ColorPicker2 = ({ onColorSelect }) => {
|
|
|
6400
6752
|
color
|
|
6401
6753
|
)) });
|
|
6402
6754
|
};
|
|
6403
|
-
var SimpleEditor =
|
|
6755
|
+
var SimpleEditor = React10__default.forwardRef(
|
|
6404
6756
|
({
|
|
6405
6757
|
value = "",
|
|
6406
6758
|
onChange,
|
|
@@ -6416,9 +6768,9 @@ var SimpleEditor = React20__default.forwardRef(
|
|
|
6416
6768
|
const [content, setContent] = useState(value);
|
|
6417
6769
|
const [isPreview, setIsPreview] = useState(false);
|
|
6418
6770
|
const [sourceContent, setSourceContent] = useState(value);
|
|
6419
|
-
|
|
6420
|
-
const editorRef =
|
|
6421
|
-
const sourceRef =
|
|
6771
|
+
useState(null);
|
|
6772
|
+
const editorRef = React10__default.useRef(null);
|
|
6773
|
+
const sourceRef = React10__default.useRef(null);
|
|
6422
6774
|
const [formatState, setFormatState] = useState({
|
|
6423
6775
|
bold: false,
|
|
6424
6776
|
italic: false,
|
|
@@ -6445,7 +6797,8 @@ var SimpleEditor = React20__default.forwardRef(
|
|
|
6445
6797
|
return null;
|
|
6446
6798
|
}, []);
|
|
6447
6799
|
useCallback((range) => {
|
|
6448
|
-
if (!range)
|
|
6800
|
+
if (!range)
|
|
6801
|
+
return;
|
|
6449
6802
|
const selection2 = window.getSelection();
|
|
6450
6803
|
if (selection2) {
|
|
6451
6804
|
selection2.removeAllRanges();
|
|
@@ -6453,7 +6806,8 @@ var SimpleEditor = React20__default.forwardRef(
|
|
|
6453
6806
|
}
|
|
6454
6807
|
}, []);
|
|
6455
6808
|
const executeCommand = useCallback((command, value2) => {
|
|
6456
|
-
if (disabled)
|
|
6809
|
+
if (disabled)
|
|
6810
|
+
return;
|
|
6457
6811
|
if (editorRef.current) {
|
|
6458
6812
|
editorRef.current.focus();
|
|
6459
6813
|
}
|
|
@@ -6550,12 +6904,12 @@ var SimpleEditor = React20__default.forwardRef(
|
|
|
6550
6904
|
}
|
|
6551
6905
|
}
|
|
6552
6906
|
}, [executeCommand, updateContent]);
|
|
6553
|
-
|
|
6907
|
+
React10__default.useEffect(() => {
|
|
6554
6908
|
if (editorRef.current && content && content !== editorRef.current.innerHTML) {
|
|
6555
6909
|
editorRef.current.innerHTML = content;
|
|
6556
6910
|
}
|
|
6557
6911
|
}, [content]);
|
|
6558
|
-
|
|
6912
|
+
React10__default.useEffect(() => {
|
|
6559
6913
|
if (value !== void 0 && value !== content) {
|
|
6560
6914
|
setContent(value);
|
|
6561
6915
|
setSourceContent(value);
|
|
@@ -6960,7 +7314,7 @@ var skeletonVariants = cva(
|
|
|
6960
7314
|
}
|
|
6961
7315
|
}
|
|
6962
7316
|
);
|
|
6963
|
-
var Skeleton =
|
|
7317
|
+
var Skeleton = React10.forwardRef(
|
|
6964
7318
|
({
|
|
6965
7319
|
className,
|
|
6966
7320
|
variant,
|
|
@@ -7044,7 +7398,7 @@ var Skeleton = React20.forwardRef(
|
|
|
7044
7398
|
}
|
|
7045
7399
|
);
|
|
7046
7400
|
Skeleton.displayName = "Skeleton";
|
|
7047
|
-
var SkeletonText =
|
|
7401
|
+
var SkeletonText = React10.forwardRef(
|
|
7048
7402
|
({
|
|
7049
7403
|
className,
|
|
7050
7404
|
lines = 3,
|
|
@@ -7085,7 +7439,7 @@ var SkeletonText = React20.forwardRef(
|
|
|
7085
7439
|
}
|
|
7086
7440
|
);
|
|
7087
7441
|
SkeletonText.displayName = "SkeletonText";
|
|
7088
|
-
var SkeletonAvatar =
|
|
7442
|
+
var SkeletonAvatar = React10.forwardRef(
|
|
7089
7443
|
({
|
|
7090
7444
|
className,
|
|
7091
7445
|
size = "2.5rem",
|
|
@@ -7111,7 +7465,7 @@ var SkeletonAvatar = React20.forwardRef(
|
|
|
7111
7465
|
}
|
|
7112
7466
|
);
|
|
7113
7467
|
SkeletonAvatar.displayName = "SkeletonAvatar";
|
|
7114
|
-
var SkeletonCard =
|
|
7468
|
+
var SkeletonCard = React10.forwardRef(
|
|
7115
7469
|
({
|
|
7116
7470
|
className,
|
|
7117
7471
|
showHeader = true,
|
|
@@ -7185,22 +7539,25 @@ var SkeletonCard = React20.forwardRef(
|
|
|
7185
7539
|
}
|
|
7186
7540
|
);
|
|
7187
7541
|
SkeletonCard.displayName = "SkeletonCard";
|
|
7188
|
-
var SwipeableCard =
|
|
7542
|
+
var SwipeableCard = React10.forwardRef(
|
|
7189
7543
|
({ className, children, onSwipeLeft, onSwipeRight, threshold = 100, disabled = false, ...props }, ref) => {
|
|
7190
|
-
const [startX, setStartX] =
|
|
7191
|
-
const [currentX, setCurrentX] =
|
|
7192
|
-
const [isSwiping, setIsSwiping] =
|
|
7544
|
+
const [startX, setStartX] = React10.useState(0);
|
|
7545
|
+
const [currentX, setCurrentX] = React10.useState(0);
|
|
7546
|
+
const [isSwiping, setIsSwiping] = React10.useState(false);
|
|
7193
7547
|
const handleTouchStart = (e) => {
|
|
7194
|
-
if (disabled)
|
|
7548
|
+
if (disabled)
|
|
7549
|
+
return;
|
|
7195
7550
|
setStartX(e.touches[0].clientX);
|
|
7196
7551
|
setIsSwiping(true);
|
|
7197
7552
|
};
|
|
7198
7553
|
const handleTouchMove = (e) => {
|
|
7199
|
-
if (disabled || !isSwiping)
|
|
7554
|
+
if (disabled || !isSwiping)
|
|
7555
|
+
return;
|
|
7200
7556
|
setCurrentX(e.touches[0].clientX);
|
|
7201
7557
|
};
|
|
7202
7558
|
const handleTouchEnd = () => {
|
|
7203
|
-
if (disabled || !isSwiping)
|
|
7559
|
+
if (disabled || !isSwiping)
|
|
7560
|
+
return;
|
|
7204
7561
|
const deltaX = currentX - startX;
|
|
7205
7562
|
if (Math.abs(deltaX) > threshold) {
|
|
7206
7563
|
if (deltaX > 0 && onSwipeRight) {
|
|
@@ -7232,7 +7589,7 @@ var SwipeableCard = React20.forwardRef(
|
|
|
7232
7589
|
}
|
|
7233
7590
|
);
|
|
7234
7591
|
SwipeableCard.displayName = "SwipeableCard";
|
|
7235
|
-
var Switch =
|
|
7592
|
+
var Switch = React10.forwardRef(({ className, size = "md", variant = "primary", loading, leftIcon, rightIcon, description, ...props }, ref) => /* @__PURE__ */ jsxs("div", { className: "moonui-theme inline-flex items-center gap-2", children: [
|
|
7236
7593
|
leftIcon && /* @__PURE__ */ jsx("span", { className: "text-muted-foreground", children: leftIcon }),
|
|
7237
7594
|
/* @__PURE__ */ jsxs(
|
|
7238
7595
|
SwitchPrimitives.Root,
|
|
@@ -7279,7 +7636,7 @@ var Switch = React20.forwardRef(({ className, size = "md", variant = "primary",
|
|
|
7279
7636
|
description && /* @__PURE__ */ jsx("span", { className: "text-sm text-muted-foreground", children: description })
|
|
7280
7637
|
] }));
|
|
7281
7638
|
Switch.displayName = SwitchPrimitives.Root.displayName;
|
|
7282
|
-
var TagsInput =
|
|
7639
|
+
var TagsInput = React10.forwardRef(
|
|
7283
7640
|
({
|
|
7284
7641
|
value = [],
|
|
7285
7642
|
onChange,
|
|
@@ -7292,8 +7649,8 @@ var TagsInput = React20.forwardRef(
|
|
|
7292
7649
|
disabled,
|
|
7293
7650
|
...props
|
|
7294
7651
|
}, ref) => {
|
|
7295
|
-
const [inputValue, setInputValue] =
|
|
7296
|
-
const [error, setError] =
|
|
7652
|
+
const [inputValue, setInputValue] = React10.useState("");
|
|
7653
|
+
const [error, setError] = React10.useState("");
|
|
7297
7654
|
const handleKeyDown = (e) => {
|
|
7298
7655
|
if (e.key === "Enter" || e.key === delimiter) {
|
|
7299
7656
|
e.preventDefault();
|
|
@@ -7304,7 +7661,8 @@ var TagsInput = React20.forwardRef(
|
|
|
7304
7661
|
};
|
|
7305
7662
|
const addTag = () => {
|
|
7306
7663
|
const tag = inputValue.trim();
|
|
7307
|
-
if (!tag)
|
|
7664
|
+
if (!tag)
|
|
7665
|
+
return;
|
|
7308
7666
|
if (!allowDuplicates && value.includes(tag)) {
|
|
7309
7667
|
setError("This tag already exists");
|
|
7310
7668
|
setTimeout(() => setError(""), 2e3);
|
|
@@ -7320,7 +7678,8 @@ var TagsInput = React20.forwardRef(
|
|
|
7320
7678
|
setError("");
|
|
7321
7679
|
};
|
|
7322
7680
|
const removeTag = (index) => {
|
|
7323
|
-
if (disabled)
|
|
7681
|
+
if (disabled)
|
|
7682
|
+
return;
|
|
7324
7683
|
onChange(value.filter((_, i) => i !== index));
|
|
7325
7684
|
};
|
|
7326
7685
|
return /* @__PURE__ */ jsxs("div", { className: "relative", children: [
|
|
@@ -7422,7 +7781,7 @@ var textareaVariants = cva(
|
|
|
7422
7781
|
}
|
|
7423
7782
|
}
|
|
7424
7783
|
);
|
|
7425
|
-
var Textarea =
|
|
7784
|
+
var Textarea = React10.forwardRef(
|
|
7426
7785
|
({
|
|
7427
7786
|
className,
|
|
7428
7787
|
wrapperClassName,
|
|
@@ -7442,12 +7801,13 @@ var Textarea = React20.forwardRef(
|
|
|
7442
7801
|
onChange,
|
|
7443
7802
|
...props
|
|
7444
7803
|
}, ref) => {
|
|
7445
|
-
const textareaRef =
|
|
7446
|
-
const [internalValue, setInternalValue] =
|
|
7447
|
-
|
|
7448
|
-
const adjustHeight =
|
|
7804
|
+
const textareaRef = React10.useRef(null);
|
|
7805
|
+
const [internalValue, setInternalValue] = React10.useState(value || defaultValue || "");
|
|
7806
|
+
React10.useImperativeHandle(ref, () => textareaRef.current);
|
|
7807
|
+
const adjustHeight = React10.useCallback(() => {
|
|
7449
7808
|
const textarea = textareaRef.current;
|
|
7450
|
-
if (!textarea || !autoResize)
|
|
7809
|
+
if (!textarea || !autoResize)
|
|
7810
|
+
return;
|
|
7451
7811
|
textarea.style.height = "auto";
|
|
7452
7812
|
const newHeight = textarea.scrollHeight;
|
|
7453
7813
|
if (maxHeight && newHeight > maxHeight) {
|
|
@@ -7458,10 +7818,10 @@ var Textarea = React20.forwardRef(
|
|
|
7458
7818
|
textarea.style.overflowY = "hidden";
|
|
7459
7819
|
}
|
|
7460
7820
|
}, [autoResize, maxHeight]);
|
|
7461
|
-
|
|
7821
|
+
React10.useEffect(() => {
|
|
7462
7822
|
adjustHeight();
|
|
7463
7823
|
}, [internalValue, adjustHeight]);
|
|
7464
|
-
|
|
7824
|
+
React10.useEffect(() => {
|
|
7465
7825
|
if (value !== void 0) {
|
|
7466
7826
|
setInternalValue(value);
|
|
7467
7827
|
}
|
|
@@ -7527,7 +7887,7 @@ var Textarea = React20.forwardRef(
|
|
|
7527
7887
|
);
|
|
7528
7888
|
Textarea.displayName = "Textarea";
|
|
7529
7889
|
var ToastProvider = ToastPrimitives.Provider;
|
|
7530
|
-
var ToastViewport =
|
|
7890
|
+
var ToastViewport = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
7531
7891
|
ToastPrimitives.Viewport,
|
|
7532
7892
|
{
|
|
7533
7893
|
ref,
|
|
@@ -7556,7 +7916,7 @@ var toastVariants = cva(
|
|
|
7556
7916
|
}
|
|
7557
7917
|
}
|
|
7558
7918
|
);
|
|
7559
|
-
var Toast =
|
|
7919
|
+
var Toast = React10.forwardRef(({ className, variant, ...props }, ref) => {
|
|
7560
7920
|
return /* @__PURE__ */ jsx(
|
|
7561
7921
|
ToastPrimitives.Root,
|
|
7562
7922
|
{
|
|
@@ -7567,7 +7927,7 @@ var Toast = React20.forwardRef(({ className, variant, ...props }, ref) => {
|
|
|
7567
7927
|
);
|
|
7568
7928
|
});
|
|
7569
7929
|
Toast.displayName = ToastPrimitives.Root.displayName;
|
|
7570
|
-
var ToastAction =
|
|
7930
|
+
var ToastAction = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
7571
7931
|
ToastPrimitives.Action,
|
|
7572
7932
|
{
|
|
7573
7933
|
ref,
|
|
@@ -7579,7 +7939,7 @@ var ToastAction = React20.forwardRef(({ className, ...props }, ref) => /* @__PUR
|
|
|
7579
7939
|
}
|
|
7580
7940
|
));
|
|
7581
7941
|
ToastAction.displayName = ToastPrimitives.Action.displayName;
|
|
7582
|
-
var ToastClose =
|
|
7942
|
+
var ToastClose = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
7583
7943
|
ToastPrimitives.Close,
|
|
7584
7944
|
{
|
|
7585
7945
|
ref,
|
|
@@ -7593,7 +7953,7 @@ var ToastClose = React20.forwardRef(({ className, ...props }, ref) => /* @__PURE
|
|
|
7593
7953
|
}
|
|
7594
7954
|
));
|
|
7595
7955
|
ToastClose.displayName = ToastPrimitives.Close.displayName;
|
|
7596
|
-
var ToastTitle =
|
|
7956
|
+
var ToastTitle = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
7597
7957
|
ToastPrimitives.Title,
|
|
7598
7958
|
{
|
|
7599
7959
|
ref,
|
|
@@ -7602,7 +7962,7 @@ var ToastTitle = React20.forwardRef(({ className, ...props }, ref) => /* @__PURE
|
|
|
7602
7962
|
}
|
|
7603
7963
|
));
|
|
7604
7964
|
ToastTitle.displayName = ToastPrimitives.Title.displayName;
|
|
7605
|
-
var ToastDescription =
|
|
7965
|
+
var ToastDescription = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
7606
7966
|
ToastPrimitives.Description,
|
|
7607
7967
|
{
|
|
7608
7968
|
ref,
|
|
@@ -7698,7 +8058,8 @@ function toast({ ...props }) {
|
|
|
7698
8058
|
id,
|
|
7699
8059
|
open: true,
|
|
7700
8060
|
onOpenChange: (open) => {
|
|
7701
|
-
if (!open)
|
|
8061
|
+
if (!open)
|
|
8062
|
+
dismiss();
|
|
7702
8063
|
}
|
|
7703
8064
|
}
|
|
7704
8065
|
});
|
|
@@ -7709,8 +8070,8 @@ function toast({ ...props }) {
|
|
|
7709
8070
|
};
|
|
7710
8071
|
}
|
|
7711
8072
|
function useToast() {
|
|
7712
|
-
const [state, setState] =
|
|
7713
|
-
|
|
8073
|
+
const [state, setState] = React10.useState(memoryState);
|
|
8074
|
+
React10.useEffect(() => {
|
|
7714
8075
|
listeners.push(setState);
|
|
7715
8076
|
return () => {
|
|
7716
8077
|
const index = listeners.indexOf(setState);
|
|
@@ -7741,7 +8102,296 @@ function Toaster() {
|
|
|
7741
8102
|
/* @__PURE__ */ jsx(ToastViewport, {})
|
|
7742
8103
|
] });
|
|
7743
8104
|
}
|
|
8105
|
+
var kbdVariants = cva(
|
|
8106
|
+
[
|
|
8107
|
+
// Temel klavye-tuşu görünümü — token tabanlı, hardcoded renk yok
|
|
8108
|
+
"inline-flex items-center justify-center rounded",
|
|
8109
|
+
"border border-border bg-muted",
|
|
8110
|
+
"px-1.5 font-mono font-medium text-muted-foreground",
|
|
8111
|
+
// Alt kenarda hafif kabartma (border token'ı ile — [#...] hex sınıfı DEĞİL)
|
|
8112
|
+
"shadow-[0_1px_0_1px_hsl(var(--border))]",
|
|
8113
|
+
"select-none whitespace-nowrap"
|
|
8114
|
+
],
|
|
8115
|
+
{
|
|
8116
|
+
variants: {
|
|
8117
|
+
size: {
|
|
8118
|
+
sm: "h-5 min-w-5 text-[10px]",
|
|
8119
|
+
md: "h-6 min-w-6 text-xs"
|
|
8120
|
+
}
|
|
8121
|
+
},
|
|
8122
|
+
defaultVariants: {
|
|
8123
|
+
size: "md"
|
|
8124
|
+
}
|
|
8125
|
+
}
|
|
8126
|
+
);
|
|
8127
|
+
var Kbd = React10.forwardRef(
|
|
8128
|
+
({ className, size, children, ...props }, ref) => {
|
|
8129
|
+
return /* @__PURE__ */ jsx(
|
|
8130
|
+
"kbd",
|
|
8131
|
+
{
|
|
8132
|
+
ref,
|
|
8133
|
+
className: cn("moonui-theme", kbdVariants({ size }), className),
|
|
8134
|
+
...props,
|
|
8135
|
+
children
|
|
8136
|
+
}
|
|
8137
|
+
);
|
|
8138
|
+
}
|
|
8139
|
+
);
|
|
8140
|
+
Kbd.displayName = "Kbd";
|
|
8141
|
+
var ratingVariants = cva(
|
|
8142
|
+
[
|
|
8143
|
+
"moonui-theme inline-flex items-center rounded-md outline-none",
|
|
8144
|
+
"focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background"
|
|
8145
|
+
],
|
|
8146
|
+
{
|
|
8147
|
+
variants: {
|
|
8148
|
+
size: {
|
|
8149
|
+
sm: "gap-0.5",
|
|
8150
|
+
md: "gap-1",
|
|
8151
|
+
lg: "gap-1.5"
|
|
8152
|
+
}
|
|
8153
|
+
},
|
|
8154
|
+
defaultVariants: {
|
|
8155
|
+
size: "md"
|
|
8156
|
+
}
|
|
8157
|
+
}
|
|
8158
|
+
);
|
|
8159
|
+
var iconSizeMap = {
|
|
8160
|
+
sm: "h-4 w-4",
|
|
8161
|
+
md: "h-5 w-5",
|
|
8162
|
+
lg: "h-6 w-6"
|
|
8163
|
+
};
|
|
8164
|
+
var Rating = React10.forwardRef(
|
|
8165
|
+
({
|
|
8166
|
+
className,
|
|
8167
|
+
value,
|
|
8168
|
+
defaultValue,
|
|
8169
|
+
onValueChange,
|
|
8170
|
+
max = 5,
|
|
8171
|
+
readOnly = false,
|
|
8172
|
+
precision = "full",
|
|
8173
|
+
icon,
|
|
8174
|
+
size,
|
|
8175
|
+
"aria-label": ariaLabel = "Rating",
|
|
8176
|
+
...props
|
|
8177
|
+
}, ref) => {
|
|
8178
|
+
const resolvedSize = size ?? "md";
|
|
8179
|
+
const iconSizeClass = iconSizeMap[resolvedSize];
|
|
8180
|
+
const step = precision === "half" ? 0.5 : 1;
|
|
8181
|
+
const isControlled = value !== void 0;
|
|
8182
|
+
const [internalValue, setInternalValue] = React10.useState(defaultValue ?? 0);
|
|
8183
|
+
const currentValue = isControlled ? value ?? 0 : internalValue;
|
|
8184
|
+
const [hoverValue, setHoverValue] = React10.useState(null);
|
|
8185
|
+
const displayValue = hoverValue !== null ? hoverValue : currentValue;
|
|
8186
|
+
const commit = React10.useCallback(
|
|
8187
|
+
(next) => {
|
|
8188
|
+
if (readOnly)
|
|
8189
|
+
return;
|
|
8190
|
+
if (!isControlled)
|
|
8191
|
+
setInternalValue(next);
|
|
8192
|
+
onValueChange?.(next);
|
|
8193
|
+
},
|
|
8194
|
+
[readOnly, isControlled, onValueChange]
|
|
8195
|
+
);
|
|
8196
|
+
const handleKeyDown = React10.useCallback(
|
|
8197
|
+
(event) => {
|
|
8198
|
+
if (readOnly)
|
|
8199
|
+
return;
|
|
8200
|
+
let next = null;
|
|
8201
|
+
switch (event.key) {
|
|
8202
|
+
case "ArrowRight":
|
|
8203
|
+
case "ArrowUp":
|
|
8204
|
+
next = Math.min(max, currentValue + step);
|
|
8205
|
+
break;
|
|
8206
|
+
case "ArrowLeft":
|
|
8207
|
+
case "ArrowDown":
|
|
8208
|
+
next = Math.max(step, currentValue - step);
|
|
8209
|
+
break;
|
|
8210
|
+
case "Home":
|
|
8211
|
+
next = step;
|
|
8212
|
+
break;
|
|
8213
|
+
case "End":
|
|
8214
|
+
next = max;
|
|
8215
|
+
break;
|
|
8216
|
+
default:
|
|
8217
|
+
return;
|
|
8218
|
+
}
|
|
8219
|
+
event.preventDefault();
|
|
8220
|
+
commit(next);
|
|
8221
|
+
},
|
|
8222
|
+
[readOnly, max, currentValue, step, commit]
|
|
8223
|
+
);
|
|
8224
|
+
const renderIcon = (filled) => {
|
|
8225
|
+
if (React10.isValidElement(icon)) {
|
|
8226
|
+
const element = icon;
|
|
8227
|
+
return React10.cloneElement(element, {
|
|
8228
|
+
className: cn(
|
|
8229
|
+
iconSizeClass,
|
|
8230
|
+
"shrink-0",
|
|
8231
|
+
filled && "fill-current",
|
|
8232
|
+
element.props?.className
|
|
8233
|
+
)
|
|
8234
|
+
});
|
|
8235
|
+
}
|
|
8236
|
+
return /* @__PURE__ */ jsx(
|
|
8237
|
+
Star,
|
|
8238
|
+
{
|
|
8239
|
+
className: cn(iconSizeClass, "shrink-0", filled && "fill-current"),
|
|
8240
|
+
"aria-hidden": "true"
|
|
8241
|
+
}
|
|
8242
|
+
);
|
|
8243
|
+
};
|
|
8244
|
+
const stars = Array.from({ length: max }, (_, index) => index + 1);
|
|
8245
|
+
return /* @__PURE__ */ jsx(
|
|
8246
|
+
"div",
|
|
8247
|
+
{
|
|
8248
|
+
ref,
|
|
8249
|
+
role: "radiogroup",
|
|
8250
|
+
"aria-label": ariaLabel,
|
|
8251
|
+
"aria-orientation": "horizontal",
|
|
8252
|
+
"aria-readonly": readOnly || void 0,
|
|
8253
|
+
tabIndex: readOnly ? void 0 : 0,
|
|
8254
|
+
onKeyDown: handleKeyDown,
|
|
8255
|
+
onMouseLeave: () => setHoverValue(null),
|
|
8256
|
+
className: cn(ratingVariants({ size }), className),
|
|
8257
|
+
...props,
|
|
8258
|
+
children: stars.map((starValue) => {
|
|
8259
|
+
const fraction = Math.max(0, Math.min(1, displayValue - (starValue - 1)));
|
|
8260
|
+
const halfValue = starValue - 0.5;
|
|
8261
|
+
return /* @__PURE__ */ jsxs(
|
|
8262
|
+
"span",
|
|
8263
|
+
{
|
|
8264
|
+
"data-slot": "rating-star",
|
|
8265
|
+
className: cn(
|
|
8266
|
+
"relative inline-flex shrink-0",
|
|
8267
|
+
!readOnly && "cursor-pointer"
|
|
8268
|
+
),
|
|
8269
|
+
children: [
|
|
8270
|
+
/* @__PURE__ */ jsx("span", { "aria-hidden": "true", className: "inline-flex text-muted-foreground/30", children: renderIcon(false) }),
|
|
8271
|
+
/* @__PURE__ */ jsx(
|
|
8272
|
+
"span",
|
|
8273
|
+
{
|
|
8274
|
+
"aria-hidden": "true",
|
|
8275
|
+
className: "pointer-events-none absolute left-0 top-0 h-full overflow-hidden text-amber-400",
|
|
8276
|
+
style: { width: `${fraction * 100}%` },
|
|
8277
|
+
children: renderIcon(true)
|
|
8278
|
+
}
|
|
8279
|
+
),
|
|
8280
|
+
!readOnly && precision === "half" && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
8281
|
+
/* @__PURE__ */ jsx(
|
|
8282
|
+
"button",
|
|
8283
|
+
{
|
|
8284
|
+
type: "button",
|
|
8285
|
+
role: "radio",
|
|
8286
|
+
"aria-checked": currentValue === halfValue,
|
|
8287
|
+
"aria-label": `${halfValue} stars`,
|
|
8288
|
+
tabIndex: -1,
|
|
8289
|
+
onClick: () => commit(halfValue),
|
|
8290
|
+
onMouseEnter: () => setHoverValue(halfValue),
|
|
8291
|
+
className: "absolute inset-y-0 left-0 z-10 w-1/2 cursor-pointer bg-transparent"
|
|
8292
|
+
}
|
|
8293
|
+
),
|
|
8294
|
+
/* @__PURE__ */ jsx(
|
|
8295
|
+
"button",
|
|
8296
|
+
{
|
|
8297
|
+
type: "button",
|
|
8298
|
+
role: "radio",
|
|
8299
|
+
"aria-checked": currentValue === starValue,
|
|
8300
|
+
"aria-label": `${starValue} stars`,
|
|
8301
|
+
tabIndex: -1,
|
|
8302
|
+
onClick: () => commit(starValue),
|
|
8303
|
+
onMouseEnter: () => setHoverValue(starValue),
|
|
8304
|
+
className: "absolute inset-y-0 right-0 z-10 w-1/2 cursor-pointer bg-transparent"
|
|
8305
|
+
}
|
|
8306
|
+
)
|
|
8307
|
+
] }),
|
|
8308
|
+
!readOnly && precision === "full" && /* @__PURE__ */ jsx(
|
|
8309
|
+
"button",
|
|
8310
|
+
{
|
|
8311
|
+
type: "button",
|
|
8312
|
+
role: "radio",
|
|
8313
|
+
"aria-checked": currentValue === starValue,
|
|
8314
|
+
"aria-label": `${starValue} ${starValue === 1 ? "star" : "stars"}`,
|
|
8315
|
+
tabIndex: -1,
|
|
8316
|
+
onClick: () => commit(starValue),
|
|
8317
|
+
onMouseEnter: () => setHoverValue(starValue),
|
|
8318
|
+
className: "absolute inset-0 z-10 cursor-pointer bg-transparent"
|
|
8319
|
+
}
|
|
8320
|
+
)
|
|
8321
|
+
]
|
|
8322
|
+
},
|
|
8323
|
+
starValue
|
|
8324
|
+
);
|
|
8325
|
+
})
|
|
8326
|
+
}
|
|
8327
|
+
);
|
|
8328
|
+
}
|
|
8329
|
+
);
|
|
8330
|
+
Rating.displayName = "Rating";
|
|
8331
|
+
var spinnerVariants = cva(
|
|
8332
|
+
[
|
|
8333
|
+
"inline-block shrink-0 rounded-full",
|
|
8334
|
+
"border-current border-t-transparent",
|
|
8335
|
+
"animate-spin motion-reduce:animate-none"
|
|
8336
|
+
],
|
|
8337
|
+
{
|
|
8338
|
+
variants: {
|
|
8339
|
+
size: {
|
|
8340
|
+
sm: "h-4 w-4 border-2",
|
|
8341
|
+
// 16px
|
|
8342
|
+
md: "h-6 w-6 border-2",
|
|
8343
|
+
// 24px
|
|
8344
|
+
lg: "h-8 w-8 border-[3px]",
|
|
8345
|
+
// 32px
|
|
8346
|
+
xl: "h-10 w-10 border-4"
|
|
8347
|
+
// 40px
|
|
8348
|
+
}
|
|
8349
|
+
},
|
|
8350
|
+
defaultVariants: {
|
|
8351
|
+
size: "md"
|
|
8352
|
+
}
|
|
8353
|
+
}
|
|
8354
|
+
);
|
|
8355
|
+
var dotSizeMap = {
|
|
8356
|
+
sm: "h-1 w-1",
|
|
8357
|
+
md: "h-1.5 w-1.5",
|
|
8358
|
+
lg: "h-2 w-2",
|
|
8359
|
+
xl: "h-2.5 w-2.5"
|
|
8360
|
+
};
|
|
8361
|
+
var Spinner = React10.forwardRef(
|
|
8362
|
+
({ className, size, variant = "default", label = "Loading", ...props }, ref) => {
|
|
8363
|
+
return /* @__PURE__ */ jsxs(
|
|
8364
|
+
"div",
|
|
8365
|
+
{
|
|
8366
|
+
ref,
|
|
8367
|
+
role: "status",
|
|
8368
|
+
"aria-live": "polite",
|
|
8369
|
+
className: cn(
|
|
8370
|
+
"moonui-theme inline-flex items-center justify-center",
|
|
8371
|
+
className
|
|
8372
|
+
),
|
|
8373
|
+
...props,
|
|
8374
|
+
children: [
|
|
8375
|
+
variant === "dots" ? /* @__PURE__ */ jsx("span", { className: "inline-flex items-center gap-1", "aria-hidden": "true", children: [0, 1, 2].map((i) => /* @__PURE__ */ jsx(
|
|
8376
|
+
"span",
|
|
8377
|
+
{
|
|
8378
|
+
className: cn(
|
|
8379
|
+
"inline-block rounded-full bg-current",
|
|
8380
|
+
"animate-bounce motion-reduce:animate-none",
|
|
8381
|
+
dotSizeMap[size ?? "md"]
|
|
8382
|
+
),
|
|
8383
|
+
style: { animationDelay: `${i * 0.15}s` }
|
|
8384
|
+
},
|
|
8385
|
+
i
|
|
8386
|
+
)) }) : /* @__PURE__ */ jsx("span", { className: cn(spinnerVariants({ size })), "aria-hidden": "true" }),
|
|
8387
|
+
/* @__PURE__ */ jsx("span", { className: "sr-only", children: label })
|
|
8388
|
+
]
|
|
8389
|
+
}
|
|
8390
|
+
);
|
|
8391
|
+
}
|
|
8392
|
+
);
|
|
8393
|
+
Spinner.displayName = "Spinner";
|
|
7744
8394
|
|
|
7745
|
-
export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, Alert, AlertDescription, AlertTitle, AspectRatio, Avatar, AvatarFallback, AvatarGroup, AvatarImage, Badge, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, Button, Card, CardCVCInput, CardContent, CardDescription, CardExpiryInput, CardFooter, CardHeader, CardNumberInput, CardTitle, CardZipInput, Checkbox, CheckboxGroup, CheckboxLabel, CheckboxWithLabel, Collapsible, CollapsibleContent, CollapsibleTrigger, ColorPicker, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, DatePicker, DateRangePicker, DateTimePicker, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogForm, DialogHeader, DialogTitle, DialogTrigger, DraggableList, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, FileUpload, FreeBadge, GestureDrawer, GitHubStarButton, GitHubStars, GradientPicker, Input, Label, LockedComponent, MonthPicker, MoonLogo, MoonLogoAnimated, MoonLogoIcon, Accordion as MoonUIAccordion, AccordionContent as MoonUIAccordionContent, AccordionItem as MoonUIAccordionItem, AccordionTrigger as MoonUIAccordionTrigger, Alert as MoonUIAlert, AlertDescription as MoonUIAlertDescription, AlertTitle as MoonUIAlertTitle, AspectRatio as MoonUIAspectRatio, Avatar as MoonUIAvatar, AvatarFallback as MoonUIAvatarFallback, AvatarGroup as MoonUIAvatarGroup, AvatarImage as MoonUIAvatarImage, Badge as MoonUIBadge, Breadcrumb as MoonUIBreadcrumb, BreadcrumbEllipsis as MoonUIBreadcrumbEllipsis, BreadcrumbItem as MoonUIBreadcrumbItem, BreadcrumbLink as MoonUIBreadcrumbLink, BreadcrumbList as MoonUIBreadcrumbList, BreadcrumbPage as MoonUIBreadcrumbPage, BreadcrumbSeparator as MoonUIBreadcrumbSeparator, Button as MoonUIButton, Calendar as MoonUICalendar, Card as MoonUICard, CardCVCInput as MoonUICardCVCInput, CardContent as MoonUICardContent, CardDescription as MoonUICardDescription, CardExpiryInput as MoonUICardExpiryInput, CardFooter as MoonUICardFooter, CardHeader as MoonUICardHeader, CardNumberInput as MoonUICardNumberInput, CardTitle as MoonUICardTitle, CardZipInput as MoonUICardZipInput, Checkbox as MoonUICheckbox, CheckboxGroup as MoonUICheckboxGroup, CheckboxLabel as MoonUICheckboxLabel, CheckboxWithLabel as MoonUICheckboxWithLabel, Collapsible as MoonUICollapsible, CollapsibleContent as MoonUICollapsibleContent, CollapsibleTrigger as MoonUICollapsibleTrigger, ColorPicker as MoonUIColorPicker, Command as MoonUICommand, CommandDialog as MoonUICommandDialog, CommandEmpty as MoonUICommandEmpty, CommandGroup as MoonUICommandGroup, CommandInput as MoonUICommandInput, CommandItem as MoonUICommandItem, CommandList as MoonUICommandList, CommandSeparator as MoonUICommandSeparator, CommandShortcut as MoonUICommandShortcut, DataTableBasic as MoonUIDataTableBasic, DatePicker as MoonUIDatePicker, DateRangePicker as MoonUIDateRangePicker, DateTimePicker as MoonUIDateTimePicker, Dialog as MoonUIDialog, DialogClose as MoonUIDialogClose, DialogContent as MoonUIDialogContent, DialogDescription as MoonUIDialogDescription, DialogFooter as MoonUIDialogFooter, DialogHeader as MoonUIDialogHeader, DialogTitle as MoonUIDialogTitle, DialogTrigger as MoonUIDialogTrigger, DraggableList as MoonUIDraggableList, DropdownMenu as MoonUIDropdownMenu, DropdownMenuCheckboxItem as MoonUIDropdownMenuCheckboxItem, DropdownMenuContent as MoonUIDropdownMenuContent, DropdownMenuGroup as MoonUIDropdownMenuGroup, DropdownMenuItem as MoonUIDropdownMenuItem, DropdownMenuLabel as MoonUIDropdownMenuLabel, DropdownMenuPortal as MoonUIDropdownMenuPortal, DropdownMenuRadioGroup as MoonUIDropdownMenuRadioGroup, DropdownMenuRadioItem as MoonUIDropdownMenuRadioItem, DropdownMenuSeparator as MoonUIDropdownMenuSeparator, DropdownMenuShortcut as MoonUIDropdownMenuShortcut, DropdownMenuSub as MoonUIDropdownMenuSub, DropdownMenuSubContent as MoonUIDropdownMenuSubContent, DropdownMenuSubTrigger as MoonUIDropdownMenuSubTrigger, DropdownMenuTrigger as MoonUIDropdownMenuTrigger, FileUpload as MoonUIFileUpload, FreeBadge as MoonUIFreeBadge, GestureDrawer as MoonUIGestureDrawer, GitHubStars as MoonUIGitHubStars, GradientPicker as MoonUIGradientPicker, Input as MoonUIInput, Label as MoonUILabel, LockedComponent as MoonUILockedComponent, MonthPicker as MoonUIMonthPicker, MoonLogo as MoonUIMoonLogo, Pagination as MoonUIPagination, PaginationContent as MoonUIPaginationContent, PaginationEllipsis as MoonUIPaginationEllipsis, PaginationItem as MoonUIPaginationItem, PaginationLink as MoonUIPaginationLink, PaginationNext as MoonUIPaginationNext, PaginationPrevious as MoonUIPaginationPrevious, PhoneInput as MoonUIPhoneInput, Popover as MoonUIPopover, PopoverContent as MoonUIPopoverContent, PopoverTrigger as MoonUIPopoverTrigger, ProBadge as MoonUIProBadge, ProComponentWrapper as MoonUIProComponentWrapper, Progress as MoonUIProgress, RadioGroup2 as MoonUIRadioGroup, RadioGroupItem as MoonUIRadioGroupItem, RadioItemWithLabel as MoonUIRadioItemWithLabel, RadioLabel as MoonUIRadioLabel, RichTextEditor as MoonUIRichTextEditor, ScrollArea as MoonUIScrollArea, ScrollBar as MoonUIScrollBar, ScrollReveal as MoonUIScrollReveal, ScrollRevealContainer as MoonUIScrollRevealContainer, ScrollRevealItem as MoonUIScrollRevealItem, Select as MoonUISelect, SelectContent as MoonUISelectContent, SelectGroup as MoonUISelectGroup, SelectItem as MoonUISelectItem, SelectLabel as MoonUISelectLabel, SelectScrollDownButton as MoonUISelectScrollDownButton, SelectScrollUpButton as MoonUISelectScrollUpButton, SelectSeparator as MoonUISelectSeparator, SelectTrigger as MoonUISelectTrigger, SelectValue as MoonUISelectValue, Separator3 as MoonUISeparator, SimpleColorPicker as MoonUISimpleColorPicker, SimpleEditor as MoonUISimpleEditor, Skeleton as MoonUISkeleton, SkeletonAvatar as MoonUISkeletonAvatar, SkeletonCard as MoonUISkeletonCard, SkeletonText as MoonUISkeletonText, Slider as MoonUISlider, SwipeableCard as MoonUISwipeableCard, Switch as MoonUISwitch, Table as MoonUITable, TableBody as MoonUITableBody, TableCaption as MoonUITableCaption, TableCell as MoonUITableCell, TableFooter as MoonUITableFooter, TableHead as MoonUITableHead, TableHeader as MoonUITableHeader, TableRow as MoonUITableRow, Tabs as MoonUITabs, TabsContent as MoonUITabsContent, TabsList as MoonUITabsList, TabsTrigger as MoonUITabsTrigger, TagsInput as MoonUITagsInput, Textarea as MoonUITextarea, Toast as MoonUIToast, ToastAction as MoonUIToastAction, ToastClose as MoonUIToastClose, ToastDescription as MoonUIToastDescription, ToastProvider as MoonUIToastProvider, ToastTitle as MoonUIToastTitle, ToastViewport as MoonUIToastViewport, Toaster as MoonUIToaster, Toggle as MoonUIToggle, Tooltip as MoonUITooltip, TooltipContent as MoonUITooltipContent, TooltipProvider as MoonUITooltipProvider, TooltipTrigger as MoonUITooltipTrigger, Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, PhoneInput, Popover, PopoverAnchor, PopoverClose, PopoverContent, PopoverFooter, PopoverHeader, PopoverSeparator, PopoverTrigger, ProBadge, ProComponentWrapper, Progress, RadioGroup2 as RadioGroup, RadioGroupItem, RadioItemWithLabel, RadioLabel, RichTextEditor, ScrollArea, ScrollBar, ScrollReveal, ScrollRevealContainer, ScrollRevealItem, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, Separator3 as Separator, SimpleColorPicker, SimpleEditor, SimpleTooltip, Skeleton, SkeletonAvatar, SkeletonCard, SkeletonText, Slider, SwipeableCard, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, TagsInput, Textarea, Toast, ToastAction, ToastClose, ToastDescription, ToastProvider, ToastTitle, ToastViewport, Toaster, Toggle, Tooltip, TooltipArrow, TooltipContent, TooltipProvider, TooltipTrigger, aspectRatioVariants, badgeVariants, buttonVariants, cn, collapsibleContentVariants, collapsibleTriggerVariants, badgeVariants as moonUIBadgeVariants, buttonVariants as moonUIButtonVariants, createSortableHeader as moonUICreateSortableHeader, skeletonVariants as moonUISkeletonVariants, toggleVariants as moonUIToggleVariants, popoverContentVariants, progressVariants, separatorVariants, skeletonVariants, toast, toggleVariants, tooltipVariants, useToast };
|
|
7746
|
-
//# sourceMappingURL=
|
|
8395
|
+
export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, Alert, AlertDescription, AlertTitle, AspectRatio, Avatar, AvatarFallback, AvatarGroup, AvatarImage, Badge, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, Button, Card, CardCVCInput, CardContent, CardDescription, CardExpiryInput, CardFooter, CardHeader, CardNumberInput, CardTitle, CardZipInput, Carousel, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious, Checkbox, CheckboxGroup, CheckboxLabel, CheckboxWithLabel, Collapsible, CollapsibleContent, CollapsibleTrigger, ColorPicker, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, DatePicker, DateRangePicker, DateTimePicker, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogForm, DialogHeader, DialogTitle, DialogTrigger, DraggableList, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, FileUpload, FreeBadge, GestureDrawer, GitHubStarButton, GitHubStars, GradientPicker, Input, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, Kbd, Label, LockedComponent, MonthPicker, MoonLogo, MoonLogoAnimated, MoonLogoIcon, Accordion as MoonUIAccordion, AccordionContent as MoonUIAccordionContent, AccordionItem as MoonUIAccordionItem, AccordionTrigger as MoonUIAccordionTrigger, Alert as MoonUIAlert, AlertDescription as MoonUIAlertDescription, AlertTitle as MoonUIAlertTitle, AspectRatio as MoonUIAspectRatio, Avatar as MoonUIAvatar, AvatarFallback as MoonUIAvatarFallback, AvatarGroup as MoonUIAvatarGroup, AvatarImage as MoonUIAvatarImage, Badge as MoonUIBadge, Breadcrumb as MoonUIBreadcrumb, BreadcrumbEllipsis as MoonUIBreadcrumbEllipsis, BreadcrumbItem as MoonUIBreadcrumbItem, BreadcrumbLink as MoonUIBreadcrumbLink, BreadcrumbList as MoonUIBreadcrumbList, BreadcrumbPage as MoonUIBreadcrumbPage, BreadcrumbSeparator as MoonUIBreadcrumbSeparator, Button as MoonUIButton, Calendar as MoonUICalendar, Card as MoonUICard, CardCVCInput as MoonUICardCVCInput, CardContent as MoonUICardContent, CardDescription as MoonUICardDescription, CardExpiryInput as MoonUICardExpiryInput, CardFooter as MoonUICardFooter, CardHeader as MoonUICardHeader, CardNumberInput as MoonUICardNumberInput, CardTitle as MoonUICardTitle, CardZipInput as MoonUICardZipInput, Carousel as MoonUICarousel, CarouselContent as MoonUICarouselContent, CarouselItem as MoonUICarouselItem, CarouselNext as MoonUICarouselNext, CarouselPrevious as MoonUICarouselPrevious, Checkbox as MoonUICheckbox, CheckboxGroup as MoonUICheckboxGroup, CheckboxLabel as MoonUICheckboxLabel, CheckboxWithLabel as MoonUICheckboxWithLabel, Collapsible as MoonUICollapsible, CollapsibleContent as MoonUICollapsibleContent, CollapsibleTrigger as MoonUICollapsibleTrigger, ColorPicker as MoonUIColorPicker, Command as MoonUICommand, CommandDialog as MoonUICommandDialog, CommandEmpty as MoonUICommandEmpty, CommandGroup as MoonUICommandGroup, CommandInput as MoonUICommandInput, CommandItem as MoonUICommandItem, CommandList as MoonUICommandList, CommandSeparator as MoonUICommandSeparator, CommandShortcut as MoonUICommandShortcut, DataTableBasic as MoonUIDataTableBasic, DatePicker as MoonUIDatePicker, DateRangePicker as MoonUIDateRangePicker, DateTimePicker as MoonUIDateTimePicker, Dialog as MoonUIDialog, DialogClose as MoonUIDialogClose, DialogContent as MoonUIDialogContent, DialogDescription as MoonUIDialogDescription, DialogFooter as MoonUIDialogFooter, DialogHeader as MoonUIDialogHeader, DialogTitle as MoonUIDialogTitle, DialogTrigger as MoonUIDialogTrigger, DraggableList as MoonUIDraggableList, DropdownMenu as MoonUIDropdownMenu, DropdownMenuCheckboxItem as MoonUIDropdownMenuCheckboxItem, DropdownMenuContent as MoonUIDropdownMenuContent, DropdownMenuGroup as MoonUIDropdownMenuGroup, DropdownMenuItem as MoonUIDropdownMenuItem, DropdownMenuLabel as MoonUIDropdownMenuLabel, DropdownMenuPortal as MoonUIDropdownMenuPortal, DropdownMenuRadioGroup as MoonUIDropdownMenuRadioGroup, DropdownMenuRadioItem as MoonUIDropdownMenuRadioItem, DropdownMenuSeparator as MoonUIDropdownMenuSeparator, DropdownMenuShortcut as MoonUIDropdownMenuShortcut, DropdownMenuSub as MoonUIDropdownMenuSub, DropdownMenuSubContent as MoonUIDropdownMenuSubContent, DropdownMenuSubTrigger as MoonUIDropdownMenuSubTrigger, DropdownMenuTrigger as MoonUIDropdownMenuTrigger, FileUpload as MoonUIFileUpload, FreeBadge as MoonUIFreeBadge, GestureDrawer as MoonUIGestureDrawer, GitHubStars as MoonUIGitHubStars, GradientPicker as MoonUIGradientPicker, Input as MoonUIInput, InputOTP as MoonUIInputOTP, InputOTPGroup as MoonUIInputOTPGroup, InputOTPSeparator as MoonUIInputOTPSeparator, InputOTPSlot as MoonUIInputOTPSlot, Kbd as MoonUIKbd, Label as MoonUILabel, LockedComponent as MoonUILockedComponent, MonthPicker as MoonUIMonthPicker, MoonLogo as MoonUIMoonLogo, Pagination as MoonUIPagination, PaginationContent as MoonUIPaginationContent, PaginationEllipsis as MoonUIPaginationEllipsis, PaginationItem as MoonUIPaginationItem, PaginationLink as MoonUIPaginationLink, PaginationNext as MoonUIPaginationNext, PaginationPrevious as MoonUIPaginationPrevious, PhoneInput as MoonUIPhoneInput, Popover as MoonUIPopover, PopoverContent as MoonUIPopoverContent, PopoverTrigger as MoonUIPopoverTrigger, ProBadge as MoonUIProBadge, ProComponentWrapper as MoonUIProComponentWrapper, Progress as MoonUIProgress, RadioGroup2 as MoonUIRadioGroup, RadioGroupItem as MoonUIRadioGroupItem, RadioItemWithLabel as MoonUIRadioItemWithLabel, RadioLabel as MoonUIRadioLabel, Rating as MoonUIRating, RichTextEditor as MoonUIRichTextEditor, ScrollArea as MoonUIScrollArea, ScrollBar as MoonUIScrollBar, ScrollReveal as MoonUIScrollReveal, ScrollRevealContainer as MoonUIScrollRevealContainer, ScrollRevealItem as MoonUIScrollRevealItem, Select as MoonUISelect, SelectContent as MoonUISelectContent, SelectGroup as MoonUISelectGroup, SelectItem as MoonUISelectItem, SelectLabel as MoonUISelectLabel, SelectScrollDownButton as MoonUISelectScrollDownButton, SelectScrollUpButton as MoonUISelectScrollUpButton, SelectSeparator as MoonUISelectSeparator, SelectTrigger as MoonUISelectTrigger, SelectValue as MoonUISelectValue, Separator3 as MoonUISeparator, SimpleColorPicker as MoonUISimpleColorPicker, SimpleEditor as MoonUISimpleEditor, Skeleton as MoonUISkeleton, SkeletonAvatar as MoonUISkeletonAvatar, SkeletonCard as MoonUISkeletonCard, SkeletonText as MoonUISkeletonText, Slider as MoonUISlider, Spinner as MoonUISpinner, SwipeableCard as MoonUISwipeableCard, Switch as MoonUISwitch, Table as MoonUITable, TableBody as MoonUITableBody, TableCaption as MoonUITableCaption, TableCell as MoonUITableCell, TableFooter as MoonUITableFooter, TableHead as MoonUITableHead, TableHeader as MoonUITableHeader, TableRow as MoonUITableRow, Tabs as MoonUITabs, TabsContent as MoonUITabsContent, TabsList as MoonUITabsList, TabsTrigger as MoonUITabsTrigger, TagsInput as MoonUITagsInput, Textarea as MoonUITextarea, Toast as MoonUIToast, ToastAction as MoonUIToastAction, ToastClose as MoonUIToastClose, ToastDescription as MoonUIToastDescription, ToastProvider as MoonUIToastProvider, ToastTitle as MoonUIToastTitle, ToastViewport as MoonUIToastViewport, Toaster as MoonUIToaster, Toggle as MoonUIToggle, Tooltip as MoonUITooltip, TooltipContent as MoonUITooltipContent, TooltipProvider as MoonUITooltipProvider, TooltipTrigger as MoonUITooltipTrigger, Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, PhoneInput, Popover, PopoverAnchor, PopoverClose, PopoverContent, PopoverFooter, PopoverHeader, PopoverSeparator, PopoverTrigger, ProBadge, ProComponentWrapper, Progress, RadioGroup2 as RadioGroup, RadioGroupItem, RadioItemWithLabel, RadioLabel, Rating, RichTextEditor, ScrollArea, ScrollBar, ScrollReveal, ScrollRevealContainer, ScrollRevealItem, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, Separator3 as Separator, SimpleColorPicker, SimpleEditor, SimpleTooltip, Skeleton, SkeletonAvatar, SkeletonCard, SkeletonText, Slider, Spinner, SwipeableCard, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, TagsInput, Textarea, Toast, ToastAction, ToastClose, ToastDescription, ToastProvider, ToastTitle, ToastViewport, Toaster, Toggle, Tooltip, TooltipArrow, TooltipContent, TooltipProvider, TooltipTrigger, aspectRatioVariants, badgeVariants, buttonVariants, carouselContentVariants, carouselItemVariants, cn, collapsibleContentVariants, collapsibleTriggerVariants, inputOTPSlotVariants, kbdVariants, badgeVariants as moonUIBadgeVariants, buttonVariants as moonUIButtonVariants, carouselContentVariants as moonUICarouselContentVariants, carouselItemVariants as moonUICarouselItemVariants, createSortableHeader as moonUICreateSortableHeader, inputOTPSlotVariants as moonUIInputOTPSlotVariants, kbdVariants as moonUIKbdVariants, ratingVariants as moonUIRatingVariants, skeletonVariants as moonUISkeletonVariants, spinnerVariants as moonUISpinnerVariants, toggleVariants as moonUIToggleVariants, popoverContentVariants, progressVariants, ratingVariants, separatorVariants, skeletonVariants, spinnerVariants, toast, toggleVariants, tooltipVariants, useCarousel, useToast };
|
|
8396
|
+
//# sourceMappingURL=out.js.map
|
|
7747
8397
|
//# sourceMappingURL=index.mjs.map
|