@dilipod/ui 0.2.15 → 0.3.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/components/alert-dialog.d.ts +34 -0
- package/dist/components/alert-dialog.d.ts.map +1 -0
- package/dist/components/breadcrumbs.d.ts +30 -0
- package/dist/components/breadcrumbs.d.ts.map +1 -0
- package/dist/components/date-range-picker.d.ts +36 -0
- package/dist/components/date-range-picker.d.ts.map +1 -0
- package/dist/components/pagination.d.ts +29 -0
- package/dist/components/pagination.d.ts.map +1 -0
- package/dist/components/popover.d.ts +10 -0
- package/dist/components/popover.d.ts.map +1 -0
- package/dist/components/radio-group.d.ts +17 -0
- package/dist/components/radio-group.d.ts.map +1 -0
- package/dist/components/settings-nav.d.ts +35 -0
- package/dist/components/settings-nav.d.ts.map +1 -0
- package/dist/components/skeleton.d.ts +28 -0
- package/dist/components/skeleton.d.ts.map +1 -0
- package/dist/components/step-progress.d.ts +28 -0
- package/dist/components/step-progress.d.ts.map +1 -0
- package/dist/components/switch.d.ts +15 -0
- package/dist/components/switch.d.ts.map +1 -0
- package/dist/components/tabs.d.ts +10 -0
- package/dist/components/tabs.d.ts.map +1 -0
- package/dist/components/tooltip.d.ts +17 -0
- package/dist/components/tooltip.d.ts.map +1 -0
- package/dist/index.d.ts +22 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1263 -87
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +1209 -89
- package/dist/index.mjs.map +1 -1
- package/package.json +7 -1
- package/src/components/alert-dialog.tsx +203 -0
- package/src/components/breadcrumbs.tsx +160 -0
- package/src/components/date-range-picker.tsx +183 -0
- package/src/components/pagination.tsx +220 -0
- package/src/components/popover.tsx +53 -0
- package/src/components/radio-group.tsx +125 -0
- package/src/components/settings-nav.tsx +137 -0
- package/src/components/skeleton.tsx +103 -0
- package/src/components/step-progress.tsx +205 -0
- package/src/components/switch.tsx +95 -0
- package/src/components/tabs.tsx +92 -0
- package/src/components/tooltip.tsx +78 -0
- package/src/index.ts +78 -0
package/dist/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var React27 = require('react');
|
|
4
4
|
var reactSlot = require('@radix-ui/react-slot');
|
|
5
5
|
var classVarianceAuthority = require('class-variance-authority');
|
|
6
6
|
var clsx = require('clsx');
|
|
@@ -9,10 +9,16 @@ var jsxRuntime = require('react/jsx-runtime');
|
|
|
9
9
|
var SheetPrimitive = require('@radix-ui/react-dialog');
|
|
10
10
|
var react_star = require('@phosphor-icons/react');
|
|
11
11
|
require('react-dom');
|
|
12
|
+
var SwitchPrimitive = require('@radix-ui/react-switch');
|
|
13
|
+
var RadioGroupPrimitive = require('@radix-ui/react-radio-group');
|
|
12
14
|
var AccordionPrimitive = require('@radix-ui/react-accordion');
|
|
13
15
|
var NavigationMenuPrimitive = require('@radix-ui/react-navigation-menu');
|
|
14
16
|
var AvatarPrimitive = require('@radix-ui/react-avatar');
|
|
15
17
|
var DropdownMenuPrimitive = require('@radix-ui/react-dropdown-menu');
|
|
18
|
+
var TabsPrimitive = require('@radix-ui/react-tabs');
|
|
19
|
+
var AlertDialogPrimitive = require('@radix-ui/react-alert-dialog');
|
|
20
|
+
var PopoverPrimitive = require('@radix-ui/react-popover');
|
|
21
|
+
var TooltipPrimitive = require('@radix-ui/react-tooltip');
|
|
16
22
|
var ToastPrimitives = require('@radix-ui/react-toast');
|
|
17
23
|
|
|
18
24
|
function _interopNamespace(e) {
|
|
@@ -33,13 +39,19 @@ function _interopNamespace(e) {
|
|
|
33
39
|
return Object.freeze(n);
|
|
34
40
|
}
|
|
35
41
|
|
|
36
|
-
var
|
|
42
|
+
var React27__namespace = /*#__PURE__*/_interopNamespace(React27);
|
|
37
43
|
var SheetPrimitive__namespace = /*#__PURE__*/_interopNamespace(SheetPrimitive);
|
|
38
44
|
var react_star__namespace = /*#__PURE__*/_interopNamespace(react_star);
|
|
45
|
+
var SwitchPrimitive__namespace = /*#__PURE__*/_interopNamespace(SwitchPrimitive);
|
|
46
|
+
var RadioGroupPrimitive__namespace = /*#__PURE__*/_interopNamespace(RadioGroupPrimitive);
|
|
39
47
|
var AccordionPrimitive__namespace = /*#__PURE__*/_interopNamespace(AccordionPrimitive);
|
|
40
48
|
var NavigationMenuPrimitive__namespace = /*#__PURE__*/_interopNamespace(NavigationMenuPrimitive);
|
|
41
49
|
var AvatarPrimitive__namespace = /*#__PURE__*/_interopNamespace(AvatarPrimitive);
|
|
42
50
|
var DropdownMenuPrimitive__namespace = /*#__PURE__*/_interopNamespace(DropdownMenuPrimitive);
|
|
51
|
+
var TabsPrimitive__namespace = /*#__PURE__*/_interopNamespace(TabsPrimitive);
|
|
52
|
+
var AlertDialogPrimitive__namespace = /*#__PURE__*/_interopNamespace(AlertDialogPrimitive);
|
|
53
|
+
var PopoverPrimitive__namespace = /*#__PURE__*/_interopNamespace(PopoverPrimitive);
|
|
54
|
+
var TooltipPrimitive__namespace = /*#__PURE__*/_interopNamespace(TooltipPrimitive);
|
|
43
55
|
var ToastPrimitives__namespace = /*#__PURE__*/_interopNamespace(ToastPrimitives);
|
|
44
56
|
|
|
45
57
|
var __defProp = Object.defineProperty;
|
|
@@ -68,10 +80,23 @@ __export(index_exports, {
|
|
|
68
80
|
AccordionItem: () => AccordionItem,
|
|
69
81
|
AccordionTrigger: () => AccordionTrigger,
|
|
70
82
|
Alert: () => Alert,
|
|
83
|
+
AlertDialog: () => AlertDialog,
|
|
84
|
+
AlertDialogAction: () => AlertDialogAction,
|
|
85
|
+
AlertDialogCancel: () => AlertDialogCancel,
|
|
86
|
+
AlertDialogContent: () => AlertDialogContent,
|
|
87
|
+
AlertDialogDescription: () => AlertDialogDescription,
|
|
88
|
+
AlertDialogFooter: () => AlertDialogFooter,
|
|
89
|
+
AlertDialogHeader: () => AlertDialogHeader,
|
|
90
|
+
AlertDialogOverlay: () => AlertDialogOverlay,
|
|
91
|
+
AlertDialogPortal: () => AlertDialogPortal,
|
|
92
|
+
AlertDialogTitle: () => AlertDialogTitle,
|
|
93
|
+
AlertDialogTrigger: () => AlertDialogTrigger,
|
|
71
94
|
Avatar: () => Avatar,
|
|
72
95
|
AvatarFallback: () => AvatarFallback,
|
|
73
96
|
AvatarImage: () => AvatarImage,
|
|
74
97
|
Badge: () => Badge,
|
|
98
|
+
BreadcrumbLink: () => BreadcrumbLink,
|
|
99
|
+
Breadcrumbs: () => Breadcrumbs,
|
|
75
100
|
Button: () => Button,
|
|
76
101
|
Card: () => Card,
|
|
77
102
|
CardContent: () => CardContent,
|
|
@@ -81,6 +106,9 @@ __export(index_exports, {
|
|
|
81
106
|
CardTitle: () => CardTitle,
|
|
82
107
|
Checkbox: () => Checkbox,
|
|
83
108
|
CodeBlock: () => CodeBlock,
|
|
109
|
+
ConfirmDialog: () => ConfirmDialog,
|
|
110
|
+
DateRangePicker: () => DateRangePicker,
|
|
111
|
+
DateRangeSelect: () => DateRangeSelect,
|
|
84
112
|
Dialog: () => Dialog,
|
|
85
113
|
DialogClose: () => DialogClose,
|
|
86
114
|
DialogContent: () => DialogContent,
|
|
@@ -112,6 +140,7 @@ __export(index_exports, {
|
|
|
112
140
|
IconBox: () => IconBox,
|
|
113
141
|
Input: () => Input,
|
|
114
142
|
Label: () => Label2,
|
|
143
|
+
LabeledSwitch: () => LabeledSwitch,
|
|
115
144
|
Logo: () => Logo,
|
|
116
145
|
MetricCard: () => MetricCard,
|
|
117
146
|
NavigationMenu: () => NavigationMenu,
|
|
@@ -122,9 +151,22 @@ __export(index_exports, {
|
|
|
122
151
|
NavigationMenuList: () => NavigationMenuList,
|
|
123
152
|
NavigationMenuTrigger: () => NavigationMenuTrigger,
|
|
124
153
|
NavigationMenuViewport: () => NavigationMenuViewport,
|
|
154
|
+
Pagination: () => Pagination,
|
|
155
|
+
Popover: () => Popover,
|
|
156
|
+
PopoverAnchor: () => PopoverAnchor,
|
|
157
|
+
PopoverArrow: () => PopoverArrow,
|
|
158
|
+
PopoverClose: () => PopoverClose,
|
|
159
|
+
PopoverContent: () => PopoverContent,
|
|
160
|
+
PopoverTrigger: () => PopoverTrigger,
|
|
125
161
|
Progress: () => Progress,
|
|
162
|
+
RadioGroup: () => RadioGroup,
|
|
163
|
+
RadioGroupCard: () => RadioGroupCard,
|
|
164
|
+
RadioGroupItem: () => RadioGroupItem,
|
|
165
|
+
RadioGroupOption: () => RadioGroupOption,
|
|
126
166
|
Select: () => Select,
|
|
127
167
|
Separator: () => Separator2,
|
|
168
|
+
SettingsNav: () => SettingsNav,
|
|
169
|
+
SettingsNavLink: () => SettingsNavLink,
|
|
128
170
|
Sheet: () => Sheet,
|
|
129
171
|
SheetClose: () => SheetClose,
|
|
130
172
|
SheetContent: () => SheetContent,
|
|
@@ -137,7 +179,15 @@ __export(index_exports, {
|
|
|
137
179
|
SheetTrigger: () => SheetTrigger,
|
|
138
180
|
Sidebar: () => Sidebar,
|
|
139
181
|
SidebarNavItem: () => SidebarNavItem,
|
|
182
|
+
SimplePagination: () => SimplePagination,
|
|
183
|
+
SimpleTooltip: () => SimpleTooltip,
|
|
184
|
+
Skeleton: () => Skeleton,
|
|
185
|
+
SkeletonCard: () => SkeletonCard,
|
|
186
|
+
SkeletonText: () => SkeletonText,
|
|
140
187
|
Stat: () => Stat,
|
|
188
|
+
StepDots: () => StepDots,
|
|
189
|
+
StepProgress: () => StepProgress,
|
|
190
|
+
Switch: () => Switch,
|
|
141
191
|
Table: () => Table,
|
|
142
192
|
TableBody: () => TableBody,
|
|
143
193
|
TableCaption: () => TableCaption,
|
|
@@ -146,6 +196,12 @@ __export(index_exports, {
|
|
|
146
196
|
TableHead: () => TableHead,
|
|
147
197
|
TableHeader: () => TableHeader,
|
|
148
198
|
TableRow: () => TableRow,
|
|
199
|
+
Tabs: () => Tabs,
|
|
200
|
+
TabsContent: () => TabsContent,
|
|
201
|
+
TabsList: () => TabsList,
|
|
202
|
+
TabsListUnderline: () => TabsListUnderline,
|
|
203
|
+
TabsTrigger: () => TabsTrigger,
|
|
204
|
+
TabsTriggerUnderline: () => TabsTriggerUnderline,
|
|
149
205
|
Tag: () => Tag,
|
|
150
206
|
Textarea: () => Textarea,
|
|
151
207
|
Toast: () => Toast,
|
|
@@ -157,12 +213,18 @@ __export(index_exports, {
|
|
|
157
213
|
ToastTitle: () => ToastTitle,
|
|
158
214
|
ToastViewport: () => ToastViewport,
|
|
159
215
|
Toaster: () => Toaster,
|
|
216
|
+
Tooltip: () => Tooltip,
|
|
217
|
+
TooltipArrow: () => TooltipArrow,
|
|
218
|
+
TooltipContent: () => TooltipContent,
|
|
219
|
+
TooltipProvider: () => TooltipProvider,
|
|
220
|
+
TooltipTrigger: () => TooltipTrigger,
|
|
160
221
|
UsageBar: () => UsageBar,
|
|
161
222
|
UsageChart: () => UsageChart,
|
|
162
223
|
alertVariants: () => alertVariants,
|
|
163
224
|
badgeVariants: () => badgeVariants,
|
|
164
225
|
buttonVariants: () => buttonVariants,
|
|
165
226
|
cn: () => cn,
|
|
227
|
+
getDateRangeFromPreset: () => getDateRangeFromPreset,
|
|
166
228
|
iconBoxVariants: () => iconBoxVariants,
|
|
167
229
|
metricCardVariants: () => metricCardVariants,
|
|
168
230
|
navigationMenuTriggerStyle: () => navigationMenuTriggerStyle,
|
|
@@ -203,7 +265,7 @@ var buttonVariants = classVarianceAuthority.cva(
|
|
|
203
265
|
}
|
|
204
266
|
}
|
|
205
267
|
);
|
|
206
|
-
var Button =
|
|
268
|
+
var Button = React27__namespace.forwardRef(
|
|
207
269
|
({ className, variant, size, asChild = false, loading, loadingText, children, disabled, ...props }, ref) => {
|
|
208
270
|
const Comp = asChild ? reactSlot.Slot : "button";
|
|
209
271
|
const isDisabled = disabled || loading;
|
|
@@ -256,7 +318,7 @@ var Sheet = SheetPrimitive__namespace.Root;
|
|
|
256
318
|
var SheetTrigger = SheetPrimitive__namespace.Trigger;
|
|
257
319
|
var SheetClose = SheetPrimitive__namespace.Close;
|
|
258
320
|
var SheetPortal = SheetPrimitive__namespace.Portal;
|
|
259
|
-
var SheetOverlay =
|
|
321
|
+
var SheetOverlay = React27__namespace.forwardRef(({ className, ...props }, ref) => (
|
|
260
322
|
// @ts-ignore - Radix Dialog Overlay accepts className at runtime
|
|
261
323
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
262
324
|
SheetPrimitive__namespace.Overlay,
|
|
@@ -287,7 +349,7 @@ var sheetVariants = classVarianceAuthority.cva(
|
|
|
287
349
|
}
|
|
288
350
|
}
|
|
289
351
|
);
|
|
290
|
-
var SheetContent =
|
|
352
|
+
var SheetContent = React27__namespace.forwardRef(({ side = "right", className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(SheetPortal, { children: [
|
|
291
353
|
/* @__PURE__ */ jsxRuntime.jsx(SheetOverlay, {}),
|
|
292
354
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
293
355
|
SheetPrimitive__namespace.Content,
|
|
@@ -334,7 +396,7 @@ var SheetFooter = ({
|
|
|
334
396
|
}
|
|
335
397
|
);
|
|
336
398
|
SheetFooter.displayName = "SheetFooter";
|
|
337
|
-
var SheetTitle =
|
|
399
|
+
var SheetTitle = React27__namespace.forwardRef(({ className, ...props }, ref) => (
|
|
338
400
|
// @ts-ignore - Radix Dialog Title accepts className at runtime
|
|
339
401
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
340
402
|
SheetPrimitive__namespace.Title,
|
|
@@ -346,7 +408,7 @@ var SheetTitle = React25__namespace.forwardRef(({ className, ...props }, ref) =>
|
|
|
346
408
|
)
|
|
347
409
|
));
|
|
348
410
|
SheetTitle.displayName = SheetPrimitive__namespace.Title.displayName;
|
|
349
|
-
var SheetDescription =
|
|
411
|
+
var SheetDescription = React27__namespace.forwardRef(({ className, ...props }, ref) => (
|
|
350
412
|
// @ts-ignore - Radix Dialog Description accepts className at runtime
|
|
351
413
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
352
414
|
SheetPrimitive__namespace.Description,
|
|
@@ -446,7 +508,7 @@ var badgeVariants = classVarianceAuthority.cva(
|
|
|
446
508
|
}
|
|
447
509
|
}
|
|
448
510
|
);
|
|
449
|
-
var Badge =
|
|
511
|
+
var Badge = React27__namespace.forwardRef(
|
|
450
512
|
({ className, variant, size, pulse, pulseColor: pulseColorProp, children, ...props }, ref) => {
|
|
451
513
|
const getPulseColorClass = () => {
|
|
452
514
|
const color = pulseColorProp || variant || "default";
|
|
@@ -500,7 +562,7 @@ var Badge = React25__namespace.forwardRef(
|
|
|
500
562
|
}
|
|
501
563
|
);
|
|
502
564
|
Badge.displayName = "Badge";
|
|
503
|
-
var Card =
|
|
565
|
+
var Card = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
504
566
|
"div",
|
|
505
567
|
{
|
|
506
568
|
ref,
|
|
@@ -512,7 +574,7 @@ var Card = React25__namespace.forwardRef(({ className, ...props }, ref) => /* @_
|
|
|
512
574
|
}
|
|
513
575
|
));
|
|
514
576
|
Card.displayName = "Card";
|
|
515
|
-
var CardHeader =
|
|
577
|
+
var CardHeader = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
516
578
|
"div",
|
|
517
579
|
{
|
|
518
580
|
ref,
|
|
@@ -521,7 +583,7 @@ var CardHeader = React25__namespace.forwardRef(({ className, ...props }, ref) =>
|
|
|
521
583
|
}
|
|
522
584
|
));
|
|
523
585
|
CardHeader.displayName = "CardHeader";
|
|
524
|
-
var CardTitle =
|
|
586
|
+
var CardTitle = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
525
587
|
"h3",
|
|
526
588
|
{
|
|
527
589
|
ref,
|
|
@@ -533,7 +595,7 @@ var CardTitle = React25__namespace.forwardRef(({ className, ...props }, ref) =>
|
|
|
533
595
|
}
|
|
534
596
|
));
|
|
535
597
|
CardTitle.displayName = "CardTitle";
|
|
536
|
-
var CardDescription =
|
|
598
|
+
var CardDescription = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
537
599
|
"p",
|
|
538
600
|
{
|
|
539
601
|
ref,
|
|
@@ -542,9 +604,9 @@ var CardDescription = React25__namespace.forwardRef(({ className, ...props }, re
|
|
|
542
604
|
}
|
|
543
605
|
));
|
|
544
606
|
CardDescription.displayName = "CardDescription";
|
|
545
|
-
var CardContent =
|
|
607
|
+
var CardContent = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn("p-6 pt-0", className), ...props }));
|
|
546
608
|
CardContent.displayName = "CardContent";
|
|
547
|
-
var CardFooter =
|
|
609
|
+
var CardFooter = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
548
610
|
"div",
|
|
549
611
|
{
|
|
550
612
|
ref,
|
|
@@ -567,7 +629,7 @@ var progressVariants = classVarianceAuthority.cva("h-full rounded-full transitio
|
|
|
567
629
|
variant: "default"
|
|
568
630
|
}
|
|
569
631
|
});
|
|
570
|
-
var Progress =
|
|
632
|
+
var Progress = React27__namespace.forwardRef(
|
|
571
633
|
({ className, value, variant, showLabel, label = "Progress", size = "default", ...props }, ref) => {
|
|
572
634
|
const clampedValue = Math.min(100, Math.max(0, value));
|
|
573
635
|
const heightClass = {
|
|
@@ -634,7 +696,7 @@ var iconBoxVariants = classVarianceAuthority.cva(
|
|
|
634
696
|
}
|
|
635
697
|
}
|
|
636
698
|
);
|
|
637
|
-
var IconBox =
|
|
699
|
+
var IconBox = React27__namespace.forwardRef(
|
|
638
700
|
({ className, variant, size, rounded, children, ...props }, ref) => {
|
|
639
701
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
640
702
|
"div",
|
|
@@ -670,7 +732,7 @@ var tagVariants = classVarianceAuthority.cva(
|
|
|
670
732
|
}
|
|
671
733
|
}
|
|
672
734
|
);
|
|
673
|
-
var Tag =
|
|
735
|
+
var Tag = React27__namespace.forwardRef(
|
|
674
736
|
({ className, variant, size, icon, children, ...props }, ref) => {
|
|
675
737
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
676
738
|
"span",
|
|
@@ -724,7 +786,7 @@ var valueVariants = classVarianceAuthority.cva("font-bold", {
|
|
|
724
786
|
color: "default"
|
|
725
787
|
}
|
|
726
788
|
});
|
|
727
|
-
var Stat =
|
|
789
|
+
var Stat = React27__namespace.forwardRef(
|
|
728
790
|
({
|
|
729
791
|
className,
|
|
730
792
|
variant,
|
|
@@ -806,7 +868,7 @@ var iconVariants = classVarianceAuthority.cva("h-5 w-5", {
|
|
|
806
868
|
color: "cyan"
|
|
807
869
|
}
|
|
808
870
|
});
|
|
809
|
-
var MetricCard =
|
|
871
|
+
var MetricCard = React27__namespace.forwardRef(
|
|
810
872
|
({
|
|
811
873
|
className,
|
|
812
874
|
variant,
|
|
@@ -865,7 +927,7 @@ var progressColorVariants = classVarianceAuthority.cva("", {
|
|
|
865
927
|
color: "cyan"
|
|
866
928
|
}
|
|
867
929
|
});
|
|
868
|
-
var UsageBar =
|
|
930
|
+
var UsageBar = React27__namespace.forwardRef(
|
|
869
931
|
({
|
|
870
932
|
className,
|
|
871
933
|
size,
|
|
@@ -937,7 +999,7 @@ var UsageBar = React25__namespace.forwardRef(
|
|
|
937
999
|
}
|
|
938
1000
|
);
|
|
939
1001
|
UsageBar.displayName = "UsageBar";
|
|
940
|
-
var UsageChart =
|
|
1002
|
+
var UsageChart = React27__namespace.forwardRef(
|
|
941
1003
|
({
|
|
942
1004
|
className,
|
|
943
1005
|
data,
|
|
@@ -948,8 +1010,8 @@ var UsageChart = React25__namespace.forwardRef(
|
|
|
948
1010
|
formatValue = (v) => v.toLocaleString(),
|
|
949
1011
|
...props
|
|
950
1012
|
}, ref) => {
|
|
951
|
-
const [hoveredIndex, setHoveredIndex] =
|
|
952
|
-
const maxValue =
|
|
1013
|
+
const [hoveredIndex, setHoveredIndex] = React27__namespace.useState(null);
|
|
1014
|
+
const maxValue = React27__namespace.useMemo(() => {
|
|
953
1015
|
return Math.max(
|
|
954
1016
|
...data.map((d) => d.value + (d.secondaryValue || 0)),
|
|
955
1017
|
1
|
|
@@ -1076,7 +1138,7 @@ var UsageChart = React25__namespace.forwardRef(
|
|
|
1076
1138
|
}
|
|
1077
1139
|
);
|
|
1078
1140
|
UsageChart.displayName = "UsageChart";
|
|
1079
|
-
var Input =
|
|
1141
|
+
var Input = React27__namespace.forwardRef(
|
|
1080
1142
|
({ className, type, error, ...props }, ref) => {
|
|
1081
1143
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
1082
1144
|
"input",
|
|
@@ -1116,7 +1178,7 @@ var NODES = [
|
|
|
1116
1178
|
];
|
|
1117
1179
|
var Primitive = NODES.reduce((primitive, node) => {
|
|
1118
1180
|
const Slot2 = reactSlot.createSlot(`Primitive.${node}`);
|
|
1119
|
-
const Node =
|
|
1181
|
+
const Node = React27__namespace.forwardRef((props, forwardedRef) => {
|
|
1120
1182
|
const { asChild, ...primitiveProps } = props;
|
|
1121
1183
|
const Comp = asChild ? Slot2 : node;
|
|
1122
1184
|
if (typeof window !== "undefined") {
|
|
@@ -1128,7 +1190,7 @@ var Primitive = NODES.reduce((primitive, node) => {
|
|
|
1128
1190
|
return { ...primitive, [node]: Node };
|
|
1129
1191
|
}, {});
|
|
1130
1192
|
var NAME = "Label";
|
|
1131
|
-
var Label =
|
|
1193
|
+
var Label = React27__namespace.forwardRef((props, forwardedRef) => {
|
|
1132
1194
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
1133
1195
|
Primitive.label,
|
|
1134
1196
|
{
|
|
@@ -1148,7 +1210,7 @@ var Root2 = Label;
|
|
|
1148
1210
|
var labelVariants = classVarianceAuthority.cva(
|
|
1149
1211
|
"text-sm font-medium leading-none text-[var(--black)] peer-disabled:cursor-not-allowed peer-disabled:opacity-70"
|
|
1150
1212
|
);
|
|
1151
|
-
var Label2 =
|
|
1213
|
+
var Label2 = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1152
1214
|
Root2,
|
|
1153
1215
|
{
|
|
1154
1216
|
ref,
|
|
@@ -1157,7 +1219,7 @@ var Label2 = React25__namespace.forwardRef(({ className, ...props }, ref) => /*
|
|
|
1157
1219
|
}
|
|
1158
1220
|
));
|
|
1159
1221
|
Label2.displayName = Root2.displayName;
|
|
1160
|
-
var Textarea =
|
|
1222
|
+
var Textarea = React27__namespace.forwardRef(
|
|
1161
1223
|
({ className, error, ...props }, ref) => {
|
|
1162
1224
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
1163
1225
|
"textarea",
|
|
@@ -1175,7 +1237,7 @@ var Textarea = React25__namespace.forwardRef(
|
|
|
1175
1237
|
}
|
|
1176
1238
|
);
|
|
1177
1239
|
Textarea.displayName = "Textarea";
|
|
1178
|
-
var Select =
|
|
1240
|
+
var Select = React27__namespace.forwardRef(
|
|
1179
1241
|
({ className, error, children, ...props }, ref) => {
|
|
1180
1242
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
1181
1243
|
"select",
|
|
@@ -1202,7 +1264,7 @@ Select.displayName = "Select";
|
|
|
1202
1264
|
// src/icons.ts
|
|
1203
1265
|
var icons_exports = {};
|
|
1204
1266
|
__reExport(icons_exports, react_star__namespace);
|
|
1205
|
-
var Checkbox =
|
|
1267
|
+
var Checkbox = React27__namespace.forwardRef(
|
|
1206
1268
|
({ className, checked, onCheckedChange, ...props }, ref) => {
|
|
1207
1269
|
return /* @__PURE__ */ jsxRuntime.jsxs("label", { className: "relative inline-flex items-center cursor-pointer", children: [
|
|
1208
1270
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -1233,8 +1295,150 @@ var Checkbox = React25__namespace.forwardRef(
|
|
|
1233
1295
|
}
|
|
1234
1296
|
);
|
|
1235
1297
|
Checkbox.displayName = "Checkbox";
|
|
1298
|
+
var Switch = React27__namespace.forwardRef(({ className, size = "default", ...props }, ref) => {
|
|
1299
|
+
const sizeStyles = {
|
|
1300
|
+
sm: {
|
|
1301
|
+
root: "h-4 w-7",
|
|
1302
|
+
thumb: "h-3 w-3 data-[state=checked]:translate-x-3"
|
|
1303
|
+
},
|
|
1304
|
+
default: {
|
|
1305
|
+
root: "h-5 w-9",
|
|
1306
|
+
thumb: "h-4 w-4 data-[state=checked]:translate-x-4"
|
|
1307
|
+
},
|
|
1308
|
+
lg: {
|
|
1309
|
+
root: "h-6 w-11",
|
|
1310
|
+
thumb: "h-5 w-5 data-[state=checked]:translate-x-5"
|
|
1311
|
+
}
|
|
1312
|
+
};
|
|
1313
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
1314
|
+
SwitchPrimitive__namespace.Root,
|
|
1315
|
+
{
|
|
1316
|
+
className: cn(
|
|
1317
|
+
"peer inline-flex shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent shadow-sm transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-[var(--cyan)] data-[state=unchecked]:bg-input",
|
|
1318
|
+
sizeStyles[size].root,
|
|
1319
|
+
className
|
|
1320
|
+
),
|
|
1321
|
+
...props,
|
|
1322
|
+
ref,
|
|
1323
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1324
|
+
SwitchPrimitive__namespace.Thumb,
|
|
1325
|
+
{
|
|
1326
|
+
className: cn(
|
|
1327
|
+
"pointer-events-none block rounded-full bg-white shadow-lg ring-0 transition-transform data-[state=unchecked]:translate-x-0",
|
|
1328
|
+
sizeStyles[size].thumb
|
|
1329
|
+
)
|
|
1330
|
+
}
|
|
1331
|
+
)
|
|
1332
|
+
}
|
|
1333
|
+
);
|
|
1334
|
+
});
|
|
1335
|
+
Switch.displayName = SwitchPrimitive__namespace.Root.displayName;
|
|
1336
|
+
var LabeledSwitch = React27__namespace.forwardRef(({ label, description, labelPosition = "right", className, id, ...props }, ref) => {
|
|
1337
|
+
const switchId = id || React27__namespace.useId();
|
|
1338
|
+
const labelContent = /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-0.5", children: [
|
|
1339
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1340
|
+
"label",
|
|
1341
|
+
{
|
|
1342
|
+
htmlFor: switchId,
|
|
1343
|
+
className: "text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70 cursor-pointer",
|
|
1344
|
+
children: label
|
|
1345
|
+
}
|
|
1346
|
+
),
|
|
1347
|
+
description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs text-muted-foreground", children: description })
|
|
1348
|
+
] });
|
|
1349
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1350
|
+
"div",
|
|
1351
|
+
{
|
|
1352
|
+
className: cn(
|
|
1353
|
+
"flex items-center gap-3",
|
|
1354
|
+
labelPosition === "left" && "flex-row-reverse justify-end",
|
|
1355
|
+
className
|
|
1356
|
+
),
|
|
1357
|
+
children: [
|
|
1358
|
+
/* @__PURE__ */ jsxRuntime.jsx(Switch, { ref, id: switchId, ...props }),
|
|
1359
|
+
labelContent
|
|
1360
|
+
]
|
|
1361
|
+
}
|
|
1362
|
+
);
|
|
1363
|
+
});
|
|
1364
|
+
LabeledSwitch.displayName = "LabeledSwitch";
|
|
1365
|
+
var RadioGroup = React27__namespace.forwardRef(({ className, ...props }, ref) => {
|
|
1366
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
1367
|
+
RadioGroupPrimitive__namespace.Root,
|
|
1368
|
+
{
|
|
1369
|
+
className: cn("grid gap-2", className),
|
|
1370
|
+
...props,
|
|
1371
|
+
ref
|
|
1372
|
+
}
|
|
1373
|
+
);
|
|
1374
|
+
});
|
|
1375
|
+
RadioGroup.displayName = RadioGroupPrimitive__namespace.Root.displayName;
|
|
1376
|
+
var RadioGroupItem = React27__namespace.forwardRef(({ className, ...props }, ref) => {
|
|
1377
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
1378
|
+
RadioGroupPrimitive__namespace.Item,
|
|
1379
|
+
{
|
|
1380
|
+
ref,
|
|
1381
|
+
className: cn(
|
|
1382
|
+
"aspect-square h-4 w-4 rounded-full border border-primary text-primary shadow focus:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",
|
|
1383
|
+
className
|
|
1384
|
+
),
|
|
1385
|
+
...props,
|
|
1386
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(RadioGroupPrimitive__namespace.Indicator, { className: "flex items-center justify-center", children: /* @__PURE__ */ jsxRuntime.jsx(react_star.Circle, { weight: "fill", className: "h-2.5 w-2.5 fill-current" }) })
|
|
1387
|
+
}
|
|
1388
|
+
);
|
|
1389
|
+
});
|
|
1390
|
+
RadioGroupItem.displayName = RadioGroupPrimitive__namespace.Item.displayName;
|
|
1391
|
+
var RadioGroupOption = React27__namespace.forwardRef(({ label, description, className, id, ...props }, ref) => {
|
|
1392
|
+
const optionId = id || React27__namespace.useId();
|
|
1393
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("flex items-start gap-3", className), children: [
|
|
1394
|
+
/* @__PURE__ */ jsxRuntime.jsx(RadioGroupItem, { ref, id: optionId, ...props }),
|
|
1395
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-0.5", children: [
|
|
1396
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1397
|
+
"label",
|
|
1398
|
+
{
|
|
1399
|
+
htmlFor: optionId,
|
|
1400
|
+
className: "text-sm font-medium leading-none cursor-pointer peer-disabled:cursor-not-allowed peer-disabled:opacity-70",
|
|
1401
|
+
children: label
|
|
1402
|
+
}
|
|
1403
|
+
),
|
|
1404
|
+
description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs text-muted-foreground", children: description })
|
|
1405
|
+
] })
|
|
1406
|
+
] });
|
|
1407
|
+
});
|
|
1408
|
+
RadioGroupOption.displayName = "RadioGroupOption";
|
|
1409
|
+
var RadioGroupCard = React27__namespace.forwardRef(({ label, description, children, className, id, ...props }, ref) => {
|
|
1410
|
+
const cardId = id || React27__namespace.useId();
|
|
1411
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
1412
|
+
RadioGroupPrimitive__namespace.Item,
|
|
1413
|
+
{
|
|
1414
|
+
ref,
|
|
1415
|
+
id: cardId,
|
|
1416
|
+
className: cn(
|
|
1417
|
+
"relative flex cursor-pointer rounded-lg border bg-background p-4 transition-all hover:border-[var(--cyan)]/50 focus:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 data-[state=checked]:border-[var(--cyan)] data-[state=checked]:ring-1 data-[state=checked]:ring-[var(--cyan)] disabled:cursor-not-allowed disabled:opacity-50",
|
|
1418
|
+
className
|
|
1419
|
+
),
|
|
1420
|
+
...props,
|
|
1421
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex w-full items-start gap-3", children: [
|
|
1422
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex h-5 items-center", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "aspect-square h-4 w-4 rounded-full border border-primary text-primary shadow", children: /* @__PURE__ */ jsxRuntime.jsx(RadioGroupPrimitive__namespace.Indicator, { className: "flex items-center justify-center h-full", children: /* @__PURE__ */ jsxRuntime.jsx(react_star.Circle, { weight: "fill", className: "h-2.5 w-2.5 fill-[var(--cyan)]" }) }) }) }),
|
|
1423
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex-1 space-y-1", children: [
|
|
1424
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1425
|
+
"label",
|
|
1426
|
+
{
|
|
1427
|
+
htmlFor: cardId,
|
|
1428
|
+
className: "text-sm font-medium leading-none cursor-pointer",
|
|
1429
|
+
children: label
|
|
1430
|
+
}
|
|
1431
|
+
),
|
|
1432
|
+
description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs text-muted-foreground", children: description }),
|
|
1433
|
+
children
|
|
1434
|
+
] })
|
|
1435
|
+
] })
|
|
1436
|
+
}
|
|
1437
|
+
);
|
|
1438
|
+
});
|
|
1439
|
+
RadioGroupCard.displayName = "RadioGroupCard";
|
|
1236
1440
|
var Accordion = AccordionPrimitive__namespace.Root;
|
|
1237
|
-
var AccordionItem =
|
|
1441
|
+
var AccordionItem = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1238
1442
|
AccordionPrimitive__namespace.Item,
|
|
1239
1443
|
{
|
|
1240
1444
|
ref,
|
|
@@ -1243,7 +1447,7 @@ var AccordionItem = React25__namespace.forwardRef(({ className, ...props }, ref)
|
|
|
1243
1447
|
}
|
|
1244
1448
|
));
|
|
1245
1449
|
AccordionItem.displayName = "AccordionItem";
|
|
1246
|
-
var AccordionTrigger =
|
|
1450
|
+
var AccordionTrigger = React27__namespace.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(AccordionPrimitive__namespace.Header, { className: "flex", children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1247
1451
|
AccordionPrimitive__namespace.Trigger,
|
|
1248
1452
|
{
|
|
1249
1453
|
ref,
|
|
@@ -1259,7 +1463,7 @@ var AccordionTrigger = React25__namespace.forwardRef(({ className, children, ...
|
|
|
1259
1463
|
}
|
|
1260
1464
|
) }));
|
|
1261
1465
|
AccordionTrigger.displayName = AccordionPrimitive__namespace.Trigger.displayName;
|
|
1262
|
-
var AccordionContent =
|
|
1466
|
+
var AccordionContent = React27__namespace.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1263
1467
|
AccordionPrimitive__namespace.Content,
|
|
1264
1468
|
{
|
|
1265
1469
|
ref,
|
|
@@ -1290,7 +1494,7 @@ var NODES2 = [
|
|
|
1290
1494
|
];
|
|
1291
1495
|
var Primitive2 = NODES2.reduce((primitive, node) => {
|
|
1292
1496
|
const Slot2 = reactSlot.createSlot(`Primitive.${node}`);
|
|
1293
|
-
const Node =
|
|
1497
|
+
const Node = React27__namespace.forwardRef((props, forwardedRef) => {
|
|
1294
1498
|
const { asChild, ...primitiveProps } = props;
|
|
1295
1499
|
const Comp = asChild ? Slot2 : node;
|
|
1296
1500
|
if (typeof window !== "undefined") {
|
|
@@ -1304,7 +1508,7 @@ var Primitive2 = NODES2.reduce((primitive, node) => {
|
|
|
1304
1508
|
var NAME2 = "Separator";
|
|
1305
1509
|
var DEFAULT_ORIENTATION = "horizontal";
|
|
1306
1510
|
var ORIENTATIONS = ["horizontal", "vertical"];
|
|
1307
|
-
var Separator =
|
|
1511
|
+
var Separator = React27__namespace.forwardRef((props, forwardedRef) => {
|
|
1308
1512
|
const { decorative, orientation: orientationProp = DEFAULT_ORIENTATION, ...domProps } = props;
|
|
1309
1513
|
const orientation = isValidOrientation(orientationProp) ? orientationProp : DEFAULT_ORIENTATION;
|
|
1310
1514
|
const ariaOrientation = orientation === "vertical" ? orientation : void 0;
|
|
@@ -1323,10 +1527,10 @@ Separator.displayName = NAME2;
|
|
|
1323
1527
|
function isValidOrientation(orientation) {
|
|
1324
1528
|
return ORIENTATIONS.includes(orientation);
|
|
1325
1529
|
}
|
|
1326
|
-
var
|
|
1327
|
-
var Separator2 =
|
|
1530
|
+
var Root6 = Separator;
|
|
1531
|
+
var Separator2 = React27__namespace.forwardRef(
|
|
1328
1532
|
({ className, orientation = "horizontal", decorative = true, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1329
|
-
|
|
1533
|
+
Root6,
|
|
1330
1534
|
{
|
|
1331
1535
|
ref,
|
|
1332
1536
|
decorative,
|
|
@@ -1340,8 +1544,8 @@ var Separator2 = React25__namespace.forwardRef(
|
|
|
1340
1544
|
}
|
|
1341
1545
|
)
|
|
1342
1546
|
);
|
|
1343
|
-
Separator2.displayName =
|
|
1344
|
-
var NavigationMenu =
|
|
1547
|
+
Separator2.displayName = Root6.displayName;
|
|
1548
|
+
var NavigationMenu = React27__namespace.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1345
1549
|
NavigationMenuPrimitive__namespace.Root,
|
|
1346
1550
|
{
|
|
1347
1551
|
ref,
|
|
@@ -1357,7 +1561,7 @@ var NavigationMenu = React25__namespace.forwardRef(({ className, children, ...pr
|
|
|
1357
1561
|
}
|
|
1358
1562
|
));
|
|
1359
1563
|
NavigationMenu.displayName = NavigationMenuPrimitive__namespace.Root.displayName;
|
|
1360
|
-
var NavigationMenuList =
|
|
1564
|
+
var NavigationMenuList = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1361
1565
|
NavigationMenuPrimitive__namespace.List,
|
|
1362
1566
|
{
|
|
1363
1567
|
ref,
|
|
@@ -1373,7 +1577,7 @@ var NavigationMenuItem = NavigationMenuPrimitive__namespace.Item;
|
|
|
1373
1577
|
var navigationMenuTriggerStyle = classVarianceAuthority.cva(
|
|
1374
1578
|
"group inline-flex h-10 w-max items-center justify-center rounded-md bg-white px-4 py-2 text-sm font-medium text-[var(--black)] transition-colors hover:bg-gray-100 hover:text-[var(--black)] focus:bg-gray-100 focus:text-[var(--black)] focus:outline-none disabled:pointer-events-none disabled:opacity-50 data-[state=open]:text-[var(--black)] data-[state=open]:bg-gray-100/50 data-[state=open]:hover:bg-gray-100 data-[state=open]:focus:bg-gray-100"
|
|
1375
1579
|
);
|
|
1376
|
-
var NavigationMenuTrigger =
|
|
1580
|
+
var NavigationMenuTrigger = React27__namespace.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1377
1581
|
NavigationMenuPrimitive__namespace.Trigger,
|
|
1378
1582
|
{
|
|
1379
1583
|
ref,
|
|
@@ -1393,7 +1597,7 @@ var NavigationMenuTrigger = React25__namespace.forwardRef(({ className, children
|
|
|
1393
1597
|
}
|
|
1394
1598
|
));
|
|
1395
1599
|
NavigationMenuTrigger.displayName = NavigationMenuPrimitive__namespace.Trigger.displayName;
|
|
1396
|
-
var NavigationMenuContent =
|
|
1600
|
+
var NavigationMenuContent = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1397
1601
|
NavigationMenuPrimitive__namespace.Content,
|
|
1398
1602
|
{
|
|
1399
1603
|
ref,
|
|
@@ -1406,7 +1610,7 @@ var NavigationMenuContent = React25__namespace.forwardRef(({ className, ...props
|
|
|
1406
1610
|
));
|
|
1407
1611
|
NavigationMenuContent.displayName = NavigationMenuPrimitive__namespace.Content.displayName;
|
|
1408
1612
|
var NavigationMenuLink = NavigationMenuPrimitive__namespace.Link;
|
|
1409
|
-
var NavigationMenuViewport =
|
|
1613
|
+
var NavigationMenuViewport = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("absolute left-0 top-full flex justify-center"), children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1410
1614
|
NavigationMenuPrimitive__namespace.Viewport,
|
|
1411
1615
|
{
|
|
1412
1616
|
className: cn(
|
|
@@ -1418,7 +1622,7 @@ var NavigationMenuViewport = React25__namespace.forwardRef(({ className, ...prop
|
|
|
1418
1622
|
}
|
|
1419
1623
|
) }));
|
|
1420
1624
|
NavigationMenuViewport.displayName = NavigationMenuPrimitive__namespace.Viewport.displayName;
|
|
1421
|
-
var NavigationMenuIndicator =
|
|
1625
|
+
var NavigationMenuIndicator = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1422
1626
|
NavigationMenuPrimitive__namespace.Indicator,
|
|
1423
1627
|
{
|
|
1424
1628
|
ref,
|
|
@@ -1431,7 +1635,7 @@ var NavigationMenuIndicator = React25__namespace.forwardRef(({ className, ...pro
|
|
|
1431
1635
|
}
|
|
1432
1636
|
));
|
|
1433
1637
|
NavigationMenuIndicator.displayName = NavigationMenuPrimitive__namespace.Indicator.displayName;
|
|
1434
|
-
var Avatar =
|
|
1638
|
+
var Avatar = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1435
1639
|
AvatarPrimitive__namespace.Root,
|
|
1436
1640
|
{
|
|
1437
1641
|
ref,
|
|
@@ -1443,7 +1647,7 @@ var Avatar = React25__namespace.forwardRef(({ className, ...props }, ref) => /*
|
|
|
1443
1647
|
}
|
|
1444
1648
|
));
|
|
1445
1649
|
Avatar.displayName = AvatarPrimitive__namespace.Root.displayName;
|
|
1446
|
-
var AvatarImage =
|
|
1650
|
+
var AvatarImage = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1447
1651
|
AvatarPrimitive__namespace.Image,
|
|
1448
1652
|
{
|
|
1449
1653
|
ref,
|
|
@@ -1452,7 +1656,7 @@ var AvatarImage = React25__namespace.forwardRef(({ className, ...props }, ref) =
|
|
|
1452
1656
|
}
|
|
1453
1657
|
));
|
|
1454
1658
|
AvatarImage.displayName = AvatarPrimitive__namespace.Image.displayName;
|
|
1455
|
-
var AvatarFallback =
|
|
1659
|
+
var AvatarFallback = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1456
1660
|
AvatarPrimitive__namespace.Fallback,
|
|
1457
1661
|
{
|
|
1458
1662
|
ref,
|
|
@@ -1470,7 +1674,7 @@ var DropdownMenuGroup = DropdownMenuPrimitive__namespace.Group;
|
|
|
1470
1674
|
var DropdownMenuPortal = DropdownMenuPrimitive__namespace.Portal;
|
|
1471
1675
|
var DropdownMenuSub = DropdownMenuPrimitive__namespace.Sub;
|
|
1472
1676
|
var DropdownMenuRadioGroup = DropdownMenuPrimitive__namespace.RadioGroup;
|
|
1473
|
-
var DropdownMenuSubTrigger =
|
|
1677
|
+
var DropdownMenuSubTrigger = React27__namespace.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1474
1678
|
DropdownMenuPrimitive__namespace.SubTrigger,
|
|
1475
1679
|
{
|
|
1476
1680
|
ref,
|
|
@@ -1487,7 +1691,7 @@ var DropdownMenuSubTrigger = React25__namespace.forwardRef(({ className, inset,
|
|
|
1487
1691
|
}
|
|
1488
1692
|
));
|
|
1489
1693
|
DropdownMenuSubTrigger.displayName = DropdownMenuPrimitive__namespace.SubTrigger.displayName;
|
|
1490
|
-
var DropdownMenuSubContent =
|
|
1694
|
+
var DropdownMenuSubContent = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1491
1695
|
DropdownMenuPrimitive__namespace.SubContent,
|
|
1492
1696
|
{
|
|
1493
1697
|
ref,
|
|
@@ -1499,7 +1703,7 @@ var DropdownMenuSubContent = React25__namespace.forwardRef(({ className, ...prop
|
|
|
1499
1703
|
}
|
|
1500
1704
|
));
|
|
1501
1705
|
DropdownMenuSubContent.displayName = DropdownMenuPrimitive__namespace.SubContent.displayName;
|
|
1502
|
-
var DropdownMenuContent =
|
|
1706
|
+
var DropdownMenuContent = React27__namespace.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(DropdownMenuPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1503
1707
|
DropdownMenuPrimitive__namespace.Content,
|
|
1504
1708
|
{
|
|
1505
1709
|
ref,
|
|
@@ -1512,7 +1716,7 @@ var DropdownMenuContent = React25__namespace.forwardRef(({ className, sideOffset
|
|
|
1512
1716
|
}
|
|
1513
1717
|
) }));
|
|
1514
1718
|
DropdownMenuContent.displayName = DropdownMenuPrimitive__namespace.Content.displayName;
|
|
1515
|
-
var DropdownMenuItem =
|
|
1719
|
+
var DropdownMenuItem = React27__namespace.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1516
1720
|
DropdownMenuPrimitive__namespace.Item,
|
|
1517
1721
|
{
|
|
1518
1722
|
ref,
|
|
@@ -1525,7 +1729,7 @@ var DropdownMenuItem = React25__namespace.forwardRef(({ className, inset, ...pro
|
|
|
1525
1729
|
}
|
|
1526
1730
|
));
|
|
1527
1731
|
DropdownMenuItem.displayName = DropdownMenuPrimitive__namespace.Item.displayName;
|
|
1528
|
-
var DropdownMenuCheckboxItem =
|
|
1732
|
+
var DropdownMenuCheckboxItem = React27__namespace.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1529
1733
|
DropdownMenuPrimitive__namespace.CheckboxItem,
|
|
1530
1734
|
{
|
|
1531
1735
|
ref,
|
|
@@ -1542,7 +1746,7 @@ var DropdownMenuCheckboxItem = React25__namespace.forwardRef(({ className, child
|
|
|
1542
1746
|
}
|
|
1543
1747
|
));
|
|
1544
1748
|
DropdownMenuCheckboxItem.displayName = DropdownMenuPrimitive__namespace.CheckboxItem.displayName;
|
|
1545
|
-
var DropdownMenuRadioItem =
|
|
1749
|
+
var DropdownMenuRadioItem = React27__namespace.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1546
1750
|
DropdownMenuPrimitive__namespace.RadioItem,
|
|
1547
1751
|
{
|
|
1548
1752
|
ref,
|
|
@@ -1558,7 +1762,7 @@ var DropdownMenuRadioItem = React25__namespace.forwardRef(({ className, children
|
|
|
1558
1762
|
}
|
|
1559
1763
|
));
|
|
1560
1764
|
DropdownMenuRadioItem.displayName = DropdownMenuPrimitive__namespace.RadioItem.displayName;
|
|
1561
|
-
var DropdownMenuLabel =
|
|
1765
|
+
var DropdownMenuLabel = React27__namespace.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1562
1766
|
DropdownMenuPrimitive__namespace.Label,
|
|
1563
1767
|
{
|
|
1564
1768
|
ref,
|
|
@@ -1571,7 +1775,7 @@ var DropdownMenuLabel = React25__namespace.forwardRef(({ className, inset, ...pr
|
|
|
1571
1775
|
}
|
|
1572
1776
|
));
|
|
1573
1777
|
DropdownMenuLabel.displayName = DropdownMenuPrimitive__namespace.Label.displayName;
|
|
1574
|
-
var DropdownMenuSeparator =
|
|
1778
|
+
var DropdownMenuSeparator = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1575
1779
|
DropdownMenuPrimitive__namespace.Separator,
|
|
1576
1780
|
{
|
|
1577
1781
|
ref,
|
|
@@ -1593,7 +1797,7 @@ var DropdownMenuShortcut = ({
|
|
|
1593
1797
|
);
|
|
1594
1798
|
};
|
|
1595
1799
|
DropdownMenuShortcut.displayName = "DropdownMenuShortcut";
|
|
1596
|
-
var SidebarNavItem =
|
|
1800
|
+
var SidebarNavItem = React27__namespace.forwardRef(
|
|
1597
1801
|
({ item, isActive, className, LinkComponent, ...props }, ref) => {
|
|
1598
1802
|
const Icon = item.icon;
|
|
1599
1803
|
const baseClassName = cn(
|
|
@@ -1633,7 +1837,7 @@ var SidebarNavItem = React25__namespace.forwardRef(
|
|
|
1633
1837
|
}
|
|
1634
1838
|
);
|
|
1635
1839
|
SidebarNavItem.displayName = "SidebarNavItem";
|
|
1636
|
-
var Sidebar =
|
|
1840
|
+
var Sidebar = React27__namespace.forwardRef(
|
|
1637
1841
|
({
|
|
1638
1842
|
mainNav = [],
|
|
1639
1843
|
bottomNav = [],
|
|
@@ -1743,7 +1947,7 @@ var alertVariants = classVarianceAuthority.cva(
|
|
|
1743
1947
|
}
|
|
1744
1948
|
}
|
|
1745
1949
|
);
|
|
1746
|
-
var Alert =
|
|
1950
|
+
var Alert = React27__namespace.forwardRef(
|
|
1747
1951
|
({ className, variant, icon, title, action, children, ...props }, ref) => {
|
|
1748
1952
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
1749
1953
|
"div",
|
|
@@ -1766,7 +1970,7 @@ var Alert = React25__namespace.forwardRef(
|
|
|
1766
1970
|
}
|
|
1767
1971
|
);
|
|
1768
1972
|
Alert.displayName = "Alert";
|
|
1769
|
-
var EmptyState =
|
|
1973
|
+
var EmptyState = React27__namespace.forwardRef(
|
|
1770
1974
|
({ className, icon, title, description, action, size = "default", ...props }, ref) => {
|
|
1771
1975
|
const paddingClass = {
|
|
1772
1976
|
sm: "p-8",
|
|
@@ -1794,7 +1998,7 @@ var EmptyState = React25__namespace.forwardRef(
|
|
|
1794
1998
|
}
|
|
1795
1999
|
);
|
|
1796
2000
|
EmptyState.displayName = "EmptyState";
|
|
1797
|
-
var CodeBlock =
|
|
2001
|
+
var CodeBlock = React27__namespace.forwardRef(
|
|
1798
2002
|
({ className, children, language, ...props }, ref) => {
|
|
1799
2003
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
1800
2004
|
"pre",
|
|
@@ -1812,15 +2016,15 @@ var CodeBlock = React25__namespace.forwardRef(
|
|
|
1812
2016
|
}
|
|
1813
2017
|
);
|
|
1814
2018
|
CodeBlock.displayName = "CodeBlock";
|
|
1815
|
-
var FormField =
|
|
2019
|
+
var FormField = React27__namespace.forwardRef(
|
|
1816
2020
|
({ label, error, helperText, hint, required, id, className, children, ...props }, ref) => {
|
|
1817
|
-
const fieldId = id ||
|
|
2021
|
+
const fieldId = id || React27__namespace.useId();
|
|
1818
2022
|
const errorId = `${fieldId}-error`;
|
|
1819
2023
|
const helperId = `${fieldId}-helper`;
|
|
1820
|
-
const enhancedChildren =
|
|
1821
|
-
if (
|
|
2024
|
+
const enhancedChildren = React27__namespace.Children.map(children, (child) => {
|
|
2025
|
+
if (React27__namespace.isValidElement(child)) {
|
|
1822
2026
|
const childProps = child.props;
|
|
1823
|
-
return
|
|
2027
|
+
return React27__namespace.cloneElement(child, {
|
|
1824
2028
|
id: fieldId,
|
|
1825
2029
|
"aria-invalid": error ? "true" : void 0,
|
|
1826
2030
|
"aria-describedby": error ? errorId : helperText ? helperId : void 0,
|
|
@@ -1844,7 +2048,7 @@ var FormField = React25__namespace.forwardRef(
|
|
|
1844
2048
|
}
|
|
1845
2049
|
);
|
|
1846
2050
|
FormField.displayName = "FormField";
|
|
1847
|
-
var Table =
|
|
2051
|
+
var Table = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { className: "overflow-x-auto", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
1848
2052
|
"table",
|
|
1849
2053
|
{
|
|
1850
2054
|
ref,
|
|
@@ -1853,11 +2057,11 @@ var Table = React25__namespace.forwardRef(({ className, ...props }, ref) => /* @
|
|
|
1853
2057
|
}
|
|
1854
2058
|
) }));
|
|
1855
2059
|
Table.displayName = "Table";
|
|
1856
|
-
var TableHeader =
|
|
2060
|
+
var TableHeader = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("thead", { ref, className: cn("", className), ...props }));
|
|
1857
2061
|
TableHeader.displayName = "TableHeader";
|
|
1858
|
-
var TableBody =
|
|
2062
|
+
var TableBody = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("tbody", { ref, className: cn("", className), ...props }));
|
|
1859
2063
|
TableBody.displayName = "TableBody";
|
|
1860
|
-
var TableFooter =
|
|
2064
|
+
var TableFooter = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1861
2065
|
"tfoot",
|
|
1862
2066
|
{
|
|
1863
2067
|
ref,
|
|
@@ -1866,7 +2070,7 @@ var TableFooter = React25__namespace.forwardRef(({ className, ...props }, ref) =
|
|
|
1866
2070
|
}
|
|
1867
2071
|
));
|
|
1868
2072
|
TableFooter.displayName = "TableFooter";
|
|
1869
|
-
var TableRow =
|
|
2073
|
+
var TableRow = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1870
2074
|
"tr",
|
|
1871
2075
|
{
|
|
1872
2076
|
ref,
|
|
@@ -1875,7 +2079,7 @@ var TableRow = React25__namespace.forwardRef(({ className, ...props }, ref) => /
|
|
|
1875
2079
|
}
|
|
1876
2080
|
));
|
|
1877
2081
|
TableRow.displayName = "TableRow";
|
|
1878
|
-
var TableHead =
|
|
2082
|
+
var TableHead = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1879
2083
|
"th",
|
|
1880
2084
|
{
|
|
1881
2085
|
ref,
|
|
@@ -1887,7 +2091,7 @@ var TableHead = React25__namespace.forwardRef(({ className, ...props }, ref) =>
|
|
|
1887
2091
|
}
|
|
1888
2092
|
));
|
|
1889
2093
|
TableHead.displayName = "TableHead";
|
|
1890
|
-
var TableCell =
|
|
2094
|
+
var TableCell = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1891
2095
|
"td",
|
|
1892
2096
|
{
|
|
1893
2097
|
ref,
|
|
@@ -1896,7 +2100,7 @@ var TableCell = React25__namespace.forwardRef(({ className, ...props }, ref) =>
|
|
|
1896
2100
|
}
|
|
1897
2101
|
));
|
|
1898
2102
|
TableCell.displayName = "TableCell";
|
|
1899
|
-
var TableCaption =
|
|
2103
|
+
var TableCaption = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1900
2104
|
"caption",
|
|
1901
2105
|
{
|
|
1902
2106
|
ref,
|
|
@@ -1905,7 +2109,7 @@ var TableCaption = React25__namespace.forwardRef(({ className, ...props }, ref)
|
|
|
1905
2109
|
}
|
|
1906
2110
|
));
|
|
1907
2111
|
TableCaption.displayName = "TableCaption";
|
|
1908
|
-
var Divider =
|
|
2112
|
+
var Divider = React27__namespace.forwardRef(
|
|
1909
2113
|
({ className, text, orientation = "horizontal", ...props }, ref) => {
|
|
1910
2114
|
if (orientation === "vertical") {
|
|
1911
2115
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -1943,11 +2147,72 @@ var Divider = React25__namespace.forwardRef(
|
|
|
1943
2147
|
}
|
|
1944
2148
|
);
|
|
1945
2149
|
Divider.displayName = "Divider";
|
|
2150
|
+
var Tabs = TabsPrimitive__namespace.Root;
|
|
2151
|
+
var TabsList = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
2152
|
+
TabsPrimitive__namespace.List,
|
|
2153
|
+
{
|
|
2154
|
+
ref,
|
|
2155
|
+
className: cn(
|
|
2156
|
+
"inline-flex h-10 items-center justify-center rounded-sm bg-muted p-1 text-muted-foreground",
|
|
2157
|
+
className
|
|
2158
|
+
),
|
|
2159
|
+
...props
|
|
2160
|
+
}
|
|
2161
|
+
));
|
|
2162
|
+
TabsList.displayName = TabsPrimitive__namespace.List.displayName;
|
|
2163
|
+
var TabsTrigger = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
2164
|
+
TabsPrimitive__namespace.Trigger,
|
|
2165
|
+
{
|
|
2166
|
+
ref,
|
|
2167
|
+
className: cn(
|
|
2168
|
+
"inline-flex items-center justify-center whitespace-nowrap rounded-sm px-3 py-1.5 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow-sm",
|
|
2169
|
+
className
|
|
2170
|
+
),
|
|
2171
|
+
...props
|
|
2172
|
+
}
|
|
2173
|
+
));
|
|
2174
|
+
TabsTrigger.displayName = TabsPrimitive__namespace.Trigger.displayName;
|
|
2175
|
+
var TabsContent = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
2176
|
+
TabsPrimitive__namespace.Content,
|
|
2177
|
+
{
|
|
2178
|
+
ref,
|
|
2179
|
+
className: cn(
|
|
2180
|
+
"mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
|
|
2181
|
+
className
|
|
2182
|
+
),
|
|
2183
|
+
...props
|
|
2184
|
+
}
|
|
2185
|
+
));
|
|
2186
|
+
TabsContent.displayName = TabsPrimitive__namespace.Content.displayName;
|
|
2187
|
+
var TabsListUnderline = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
2188
|
+
TabsPrimitive__namespace.List,
|
|
2189
|
+
{
|
|
2190
|
+
ref,
|
|
2191
|
+
className: cn(
|
|
2192
|
+
"inline-flex items-center justify-start border-b border-border",
|
|
2193
|
+
className
|
|
2194
|
+
),
|
|
2195
|
+
...props
|
|
2196
|
+
}
|
|
2197
|
+
));
|
|
2198
|
+
TabsListUnderline.displayName = "TabsListUnderline";
|
|
2199
|
+
var TabsTriggerUnderline = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
2200
|
+
TabsPrimitive__namespace.Trigger,
|
|
2201
|
+
{
|
|
2202
|
+
ref,
|
|
2203
|
+
className: cn(
|
|
2204
|
+
"inline-flex items-center justify-center whitespace-nowrap px-4 py-2 text-sm font-medium text-muted-foreground transition-colors hover:text-foreground border-b-2 border-transparent -mb-px data-[state=active]:text-foreground data-[state=active]:border-[var(--cyan)] disabled:pointer-events-none disabled:opacity-50",
|
|
2205
|
+
className
|
|
2206
|
+
),
|
|
2207
|
+
...props
|
|
2208
|
+
}
|
|
2209
|
+
));
|
|
2210
|
+
TabsTriggerUnderline.displayName = "TabsTriggerUnderline";
|
|
1946
2211
|
var Dialog = SheetPrimitive__namespace.Root;
|
|
1947
2212
|
var DialogTrigger = SheetPrimitive__namespace.Trigger;
|
|
1948
2213
|
var DialogPortal = SheetPrimitive__namespace.Portal;
|
|
1949
2214
|
var DialogClose = SheetPrimitive__namespace.Close;
|
|
1950
|
-
var DialogOverlay =
|
|
2215
|
+
var DialogOverlay = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1951
2216
|
SheetPrimitive__namespace.Overlay,
|
|
1952
2217
|
{
|
|
1953
2218
|
ref,
|
|
@@ -1959,7 +2224,7 @@ var DialogOverlay = React25__namespace.forwardRef(({ className, ...props }, ref)
|
|
|
1959
2224
|
}
|
|
1960
2225
|
));
|
|
1961
2226
|
DialogOverlay.displayName = SheetPrimitive__namespace.Overlay.displayName;
|
|
1962
|
-
var DialogContent =
|
|
2227
|
+
var DialogContent = React27__namespace.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(DialogPortal, { children: [
|
|
1963
2228
|
/* @__PURE__ */ jsxRuntime.jsx(DialogOverlay, {}),
|
|
1964
2229
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
1965
2230
|
SheetPrimitive__namespace.Content,
|
|
@@ -2009,7 +2274,7 @@ var DialogFooter = ({
|
|
|
2009
2274
|
}
|
|
2010
2275
|
);
|
|
2011
2276
|
DialogFooter.displayName = "DialogFooter";
|
|
2012
|
-
var DialogTitle =
|
|
2277
|
+
var DialogTitle = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
2013
2278
|
SheetPrimitive__namespace.Title,
|
|
2014
2279
|
{
|
|
2015
2280
|
ref,
|
|
@@ -2021,7 +2286,7 @@ var DialogTitle = React25__namespace.forwardRef(({ className, ...props }, ref) =
|
|
|
2021
2286
|
}
|
|
2022
2287
|
));
|
|
2023
2288
|
DialogTitle.displayName = SheetPrimitive__namespace.Title.displayName;
|
|
2024
|
-
var DialogDescription =
|
|
2289
|
+
var DialogDescription = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
2025
2290
|
SheetPrimitive__namespace.Description,
|
|
2026
2291
|
{
|
|
2027
2292
|
ref,
|
|
@@ -2030,8 +2295,214 @@ var DialogDescription = React25__namespace.forwardRef(({ className, ...props },
|
|
|
2030
2295
|
}
|
|
2031
2296
|
));
|
|
2032
2297
|
DialogDescription.displayName = SheetPrimitive__namespace.Description.displayName;
|
|
2298
|
+
var AlertDialog = AlertDialogPrimitive__namespace.Root;
|
|
2299
|
+
var AlertDialogTrigger = AlertDialogPrimitive__namespace.Trigger;
|
|
2300
|
+
var AlertDialogPortal = AlertDialogPrimitive__namespace.Portal;
|
|
2301
|
+
var AlertDialogOverlay = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
2302
|
+
AlertDialogPrimitive__namespace.Overlay,
|
|
2303
|
+
{
|
|
2304
|
+
className: cn(
|
|
2305
|
+
"fixed inset-0 z-50 bg-black/60 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
|
|
2306
|
+
className
|
|
2307
|
+
),
|
|
2308
|
+
...props,
|
|
2309
|
+
ref
|
|
2310
|
+
}
|
|
2311
|
+
));
|
|
2312
|
+
AlertDialogOverlay.displayName = AlertDialogPrimitive__namespace.Overlay.displayName;
|
|
2313
|
+
var AlertDialogContent = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(AlertDialogPortal, { children: [
|
|
2314
|
+
/* @__PURE__ */ jsxRuntime.jsx(AlertDialogOverlay, {}),
|
|
2315
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2316
|
+
AlertDialogPrimitive__namespace.Content,
|
|
2317
|
+
{
|
|
2318
|
+
ref,
|
|
2319
|
+
className: cn(
|
|
2320
|
+
"fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] rounded-sm",
|
|
2321
|
+
className
|
|
2322
|
+
),
|
|
2323
|
+
...props
|
|
2324
|
+
}
|
|
2325
|
+
)
|
|
2326
|
+
] }));
|
|
2327
|
+
AlertDialogContent.displayName = AlertDialogPrimitive__namespace.Content.displayName;
|
|
2328
|
+
var AlertDialogHeader = ({
|
|
2329
|
+
className,
|
|
2330
|
+
...props
|
|
2331
|
+
}) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
2332
|
+
"div",
|
|
2333
|
+
{
|
|
2334
|
+
className: cn(
|
|
2335
|
+
"flex flex-col space-y-2 text-center sm:text-left",
|
|
2336
|
+
className
|
|
2337
|
+
),
|
|
2338
|
+
...props
|
|
2339
|
+
}
|
|
2340
|
+
);
|
|
2341
|
+
AlertDialogHeader.displayName = "AlertDialogHeader";
|
|
2342
|
+
var AlertDialogFooter = ({
|
|
2343
|
+
className,
|
|
2344
|
+
...props
|
|
2345
|
+
}) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
2346
|
+
"div",
|
|
2347
|
+
{
|
|
2348
|
+
className: cn(
|
|
2349
|
+
"flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",
|
|
2350
|
+
className
|
|
2351
|
+
),
|
|
2352
|
+
...props
|
|
2353
|
+
}
|
|
2354
|
+
);
|
|
2355
|
+
AlertDialogFooter.displayName = "AlertDialogFooter";
|
|
2356
|
+
var AlertDialogTitle = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
2357
|
+
AlertDialogPrimitive__namespace.Title,
|
|
2358
|
+
{
|
|
2359
|
+
ref,
|
|
2360
|
+
className: cn("text-lg font-semibold text-[var(--black)]", className),
|
|
2361
|
+
...props
|
|
2362
|
+
}
|
|
2363
|
+
));
|
|
2364
|
+
AlertDialogTitle.displayName = AlertDialogPrimitive__namespace.Title.displayName;
|
|
2365
|
+
var AlertDialogDescription = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
2366
|
+
AlertDialogPrimitive__namespace.Description,
|
|
2367
|
+
{
|
|
2368
|
+
ref,
|
|
2369
|
+
className: cn("text-sm text-muted-foreground", className),
|
|
2370
|
+
...props
|
|
2371
|
+
}
|
|
2372
|
+
));
|
|
2373
|
+
AlertDialogDescription.displayName = AlertDialogPrimitive__namespace.Description.displayName;
|
|
2374
|
+
var AlertDialogAction = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
2375
|
+
AlertDialogPrimitive__namespace.Action,
|
|
2376
|
+
{
|
|
2377
|
+
ref,
|
|
2378
|
+
className: cn(buttonVariants(), className),
|
|
2379
|
+
...props
|
|
2380
|
+
}
|
|
2381
|
+
));
|
|
2382
|
+
AlertDialogAction.displayName = AlertDialogPrimitive__namespace.Action.displayName;
|
|
2383
|
+
var AlertDialogCancel = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
2384
|
+
AlertDialogPrimitive__namespace.Cancel,
|
|
2385
|
+
{
|
|
2386
|
+
ref,
|
|
2387
|
+
className: cn(
|
|
2388
|
+
buttonVariants({ variant: "outline" }),
|
|
2389
|
+
"mt-2 sm:mt-0",
|
|
2390
|
+
className
|
|
2391
|
+
),
|
|
2392
|
+
...props
|
|
2393
|
+
}
|
|
2394
|
+
));
|
|
2395
|
+
AlertDialogCancel.displayName = AlertDialogPrimitive__namespace.Cancel.displayName;
|
|
2396
|
+
function ConfirmDialog({
|
|
2397
|
+
open,
|
|
2398
|
+
onOpenChange,
|
|
2399
|
+
title,
|
|
2400
|
+
description,
|
|
2401
|
+
confirmText = "Confirm",
|
|
2402
|
+
cancelText = "Cancel",
|
|
2403
|
+
onConfirm,
|
|
2404
|
+
onCancel,
|
|
2405
|
+
variant = "default",
|
|
2406
|
+
loading = false
|
|
2407
|
+
}) {
|
|
2408
|
+
return /* @__PURE__ */ jsxRuntime.jsx(AlertDialog, { open, onOpenChange, children: /* @__PURE__ */ jsxRuntime.jsxs(AlertDialogContent, { children: [
|
|
2409
|
+
/* @__PURE__ */ jsxRuntime.jsxs(AlertDialogHeader, { children: [
|
|
2410
|
+
/* @__PURE__ */ jsxRuntime.jsx(AlertDialogTitle, { children: title }),
|
|
2411
|
+
description && /* @__PURE__ */ jsxRuntime.jsx(AlertDialogDescription, { children: description })
|
|
2412
|
+
] }),
|
|
2413
|
+
/* @__PURE__ */ jsxRuntime.jsxs(AlertDialogFooter, { children: [
|
|
2414
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2415
|
+
AlertDialogCancel,
|
|
2416
|
+
{
|
|
2417
|
+
onClick: () => {
|
|
2418
|
+
onCancel?.();
|
|
2419
|
+
onOpenChange(false);
|
|
2420
|
+
},
|
|
2421
|
+
children: cancelText
|
|
2422
|
+
}
|
|
2423
|
+
),
|
|
2424
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2425
|
+
AlertDialogAction,
|
|
2426
|
+
{
|
|
2427
|
+
onClick: () => {
|
|
2428
|
+
onConfirm();
|
|
2429
|
+
},
|
|
2430
|
+
className: cn(
|
|
2431
|
+
variant === "destructive" && "bg-destructive text-destructive-foreground hover:bg-destructive/90"
|
|
2432
|
+
),
|
|
2433
|
+
disabled: loading,
|
|
2434
|
+
children: loading ? "Loading..." : confirmText
|
|
2435
|
+
}
|
|
2436
|
+
)
|
|
2437
|
+
] })
|
|
2438
|
+
] }) });
|
|
2439
|
+
}
|
|
2440
|
+
var Popover = PopoverPrimitive__namespace.Root;
|
|
2441
|
+
var PopoverTrigger = PopoverPrimitive__namespace.Trigger;
|
|
2442
|
+
var PopoverAnchor = PopoverPrimitive__namespace.Anchor;
|
|
2443
|
+
var PopoverClose = PopoverPrimitive__namespace.Close;
|
|
2444
|
+
var PopoverContent = React27__namespace.forwardRef(({ className, align = "center", sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(PopoverPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
2445
|
+
PopoverPrimitive__namespace.Content,
|
|
2446
|
+
{
|
|
2447
|
+
ref,
|
|
2448
|
+
align,
|
|
2449
|
+
sideOffset,
|
|
2450
|
+
className: cn(
|
|
2451
|
+
"z-50 w-72 rounded-sm border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
|
|
2452
|
+
className
|
|
2453
|
+
),
|
|
2454
|
+
...props
|
|
2455
|
+
}
|
|
2456
|
+
) }));
|
|
2457
|
+
PopoverContent.displayName = PopoverPrimitive__namespace.Content.displayName;
|
|
2458
|
+
var PopoverArrow = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
2459
|
+
PopoverPrimitive__namespace.Arrow,
|
|
2460
|
+
{
|
|
2461
|
+
ref,
|
|
2462
|
+
className: cn("fill-popover", className),
|
|
2463
|
+
...props
|
|
2464
|
+
}
|
|
2465
|
+
));
|
|
2466
|
+
PopoverArrow.displayName = PopoverPrimitive__namespace.Arrow.displayName;
|
|
2467
|
+
var TooltipProvider = TooltipPrimitive__namespace.Provider;
|
|
2468
|
+
var Tooltip = TooltipPrimitive__namespace.Root;
|
|
2469
|
+
var TooltipTrigger = TooltipPrimitive__namespace.Trigger;
|
|
2470
|
+
var TooltipContent = React27__namespace.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(TooltipPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
2471
|
+
TooltipPrimitive__namespace.Content,
|
|
2472
|
+
{
|
|
2473
|
+
ref,
|
|
2474
|
+
sideOffset,
|
|
2475
|
+
className: cn(
|
|
2476
|
+
"z-50 overflow-hidden rounded-sm bg-[var(--black)] px-3 py-1.5 text-xs text-white animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
|
|
2477
|
+
className
|
|
2478
|
+
),
|
|
2479
|
+
...props
|
|
2480
|
+
}
|
|
2481
|
+
) }));
|
|
2482
|
+
TooltipContent.displayName = TooltipPrimitive__namespace.Content.displayName;
|
|
2483
|
+
var TooltipArrow = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
2484
|
+
TooltipPrimitive__namespace.Arrow,
|
|
2485
|
+
{
|
|
2486
|
+
ref,
|
|
2487
|
+
className: cn("fill-[var(--black)]", className),
|
|
2488
|
+
...props
|
|
2489
|
+
}
|
|
2490
|
+
));
|
|
2491
|
+
TooltipArrow.displayName = TooltipPrimitive__namespace.Arrow.displayName;
|
|
2492
|
+
function SimpleTooltip({
|
|
2493
|
+
content,
|
|
2494
|
+
children,
|
|
2495
|
+
side = "top",
|
|
2496
|
+
align = "center",
|
|
2497
|
+
delayDuration = 200
|
|
2498
|
+
}) {
|
|
2499
|
+
return /* @__PURE__ */ jsxRuntime.jsx(TooltipProvider, { delayDuration, children: /* @__PURE__ */ jsxRuntime.jsxs(Tooltip, { children: [
|
|
2500
|
+
/* @__PURE__ */ jsxRuntime.jsx(TooltipTrigger, { asChild: true, children }),
|
|
2501
|
+
/* @__PURE__ */ jsxRuntime.jsx(TooltipContent, { side, align, children: content })
|
|
2502
|
+
] }) });
|
|
2503
|
+
}
|
|
2033
2504
|
var ToastProvider = ToastPrimitives__namespace.Provider;
|
|
2034
|
-
var ToastViewport =
|
|
2505
|
+
var ToastViewport = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
2035
2506
|
ToastPrimitives__namespace.Viewport,
|
|
2036
2507
|
{
|
|
2037
2508
|
ref,
|
|
@@ -2060,7 +2531,7 @@ var toastVariants = classVarianceAuthority.cva(
|
|
|
2060
2531
|
}
|
|
2061
2532
|
}
|
|
2062
2533
|
);
|
|
2063
|
-
var Toast =
|
|
2534
|
+
var Toast = React27__namespace.forwardRef(({ className, variant, ...props }, ref) => {
|
|
2064
2535
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
2065
2536
|
ToastPrimitives__namespace.Root,
|
|
2066
2537
|
{
|
|
@@ -2071,7 +2542,7 @@ var Toast = React25__namespace.forwardRef(({ className, variant, ...props }, ref
|
|
|
2071
2542
|
);
|
|
2072
2543
|
});
|
|
2073
2544
|
Toast.displayName = ToastPrimitives__namespace.Root.displayName;
|
|
2074
|
-
var ToastAction =
|
|
2545
|
+
var ToastAction = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
2075
2546
|
ToastPrimitives__namespace.Action,
|
|
2076
2547
|
{
|
|
2077
2548
|
ref,
|
|
@@ -2083,7 +2554,7 @@ var ToastAction = React25__namespace.forwardRef(({ className, ...props }, ref) =
|
|
|
2083
2554
|
}
|
|
2084
2555
|
));
|
|
2085
2556
|
ToastAction.displayName = ToastPrimitives__namespace.Action.displayName;
|
|
2086
|
-
var ToastClose =
|
|
2557
|
+
var ToastClose = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
2087
2558
|
ToastPrimitives__namespace.Close,
|
|
2088
2559
|
{
|
|
2089
2560
|
ref,
|
|
@@ -2097,7 +2568,7 @@ var ToastClose = React25__namespace.forwardRef(({ className, ...props }, ref) =>
|
|
|
2097
2568
|
}
|
|
2098
2569
|
));
|
|
2099
2570
|
ToastClose.displayName = ToastPrimitives__namespace.Close.displayName;
|
|
2100
|
-
var ToastTitle =
|
|
2571
|
+
var ToastTitle = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
2101
2572
|
ToastPrimitives__namespace.Title,
|
|
2102
2573
|
{
|
|
2103
2574
|
ref,
|
|
@@ -2106,7 +2577,7 @@ var ToastTitle = React25__namespace.forwardRef(({ className, ...props }, ref) =>
|
|
|
2106
2577
|
}
|
|
2107
2578
|
));
|
|
2108
2579
|
ToastTitle.displayName = ToastPrimitives__namespace.Title.displayName;
|
|
2109
|
-
var ToastDescription =
|
|
2580
|
+
var ToastDescription = React27__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
2110
2581
|
ToastPrimitives__namespace.Description,
|
|
2111
2582
|
{
|
|
2112
2583
|
ref,
|
|
@@ -2245,8 +2716,8 @@ function toast({ ...props }) {
|
|
|
2245
2716
|
};
|
|
2246
2717
|
}
|
|
2247
2718
|
function useToast() {
|
|
2248
|
-
const [state, setState] =
|
|
2249
|
-
|
|
2719
|
+
const [state, setState] = React27__namespace.useState(memoryState);
|
|
2720
|
+
React27__namespace.useEffect(() => {
|
|
2250
2721
|
listeners.push(setState);
|
|
2251
2722
|
return () => {
|
|
2252
2723
|
const index = listeners.indexOf(setState);
|
|
@@ -2281,6 +2752,661 @@ function Toaster() {
|
|
|
2281
2752
|
/* @__PURE__ */ jsxRuntime.jsx(ToastViewport, {})
|
|
2282
2753
|
] });
|
|
2283
2754
|
}
|
|
2755
|
+
var Skeleton = React27__namespace.forwardRef(
|
|
2756
|
+
({ className, variant = "default", width, height, animate = true, style, ...props }, ref) => {
|
|
2757
|
+
const variantStyles = {
|
|
2758
|
+
default: "rounded-sm",
|
|
2759
|
+
circular: "rounded-full",
|
|
2760
|
+
rounded: "rounded-md"
|
|
2761
|
+
};
|
|
2762
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
2763
|
+
"div",
|
|
2764
|
+
{
|
|
2765
|
+
ref,
|
|
2766
|
+
className: cn(
|
|
2767
|
+
"bg-muted",
|
|
2768
|
+
animate && "animate-pulse",
|
|
2769
|
+
variantStyles[variant],
|
|
2770
|
+
className
|
|
2771
|
+
),
|
|
2772
|
+
style: {
|
|
2773
|
+
width: typeof width === "number" ? `${width}px` : width,
|
|
2774
|
+
height: typeof height === "number" ? `${height}px` : height,
|
|
2775
|
+
...style
|
|
2776
|
+
},
|
|
2777
|
+
...props
|
|
2778
|
+
}
|
|
2779
|
+
);
|
|
2780
|
+
}
|
|
2781
|
+
);
|
|
2782
|
+
Skeleton.displayName = "Skeleton";
|
|
2783
|
+
var SkeletonText = React27__namespace.forwardRef(
|
|
2784
|
+
({ lines = 3, gap = 8, className, ...props }, ref) => {
|
|
2785
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn("space-y-2", className), style: { gap }, children: Array.from({ length: lines }).map((_, i) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
2786
|
+
Skeleton,
|
|
2787
|
+
{
|
|
2788
|
+
height: 16,
|
|
2789
|
+
width: i === lines - 1 ? "70%" : "100%",
|
|
2790
|
+
...props
|
|
2791
|
+
},
|
|
2792
|
+
i
|
|
2793
|
+
)) });
|
|
2794
|
+
}
|
|
2795
|
+
);
|
|
2796
|
+
SkeletonText.displayName = "SkeletonText";
|
|
2797
|
+
var SkeletonCard = React27__namespace.forwardRef(
|
|
2798
|
+
({ hasHeader = true, hasAvatar = false, className, ...props }, ref) => {
|
|
2799
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
2800
|
+
"div",
|
|
2801
|
+
{
|
|
2802
|
+
ref,
|
|
2803
|
+
className: cn("rounded-lg border p-6 space-y-4", className),
|
|
2804
|
+
...props,
|
|
2805
|
+
children: [
|
|
2806
|
+
hasHeader && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-4", children: [
|
|
2807
|
+
hasAvatar && /* @__PURE__ */ jsxRuntime.jsx(Skeleton, { variant: "circular", width: 40, height: 40 }),
|
|
2808
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-2 flex-1", children: [
|
|
2809
|
+
/* @__PURE__ */ jsxRuntime.jsx(Skeleton, { height: 20, width: "50%" }),
|
|
2810
|
+
/* @__PURE__ */ jsxRuntime.jsx(Skeleton, { height: 14, width: "30%" })
|
|
2811
|
+
] })
|
|
2812
|
+
] }),
|
|
2813
|
+
/* @__PURE__ */ jsxRuntime.jsx(SkeletonText, { lines: 3 })
|
|
2814
|
+
]
|
|
2815
|
+
}
|
|
2816
|
+
);
|
|
2817
|
+
}
|
|
2818
|
+
);
|
|
2819
|
+
SkeletonCard.displayName = "SkeletonCard";
|
|
2820
|
+
function generatePagination(currentPage, totalPages, siblingCount) {
|
|
2821
|
+
const totalPageNumbers = siblingCount * 2 + 5;
|
|
2822
|
+
if (totalPageNumbers >= totalPages) {
|
|
2823
|
+
return Array.from({ length: totalPages }, (_, i) => i + 1);
|
|
2824
|
+
}
|
|
2825
|
+
const leftSiblingIndex = Math.max(currentPage - siblingCount, 1);
|
|
2826
|
+
const rightSiblingIndex = Math.min(currentPage + siblingCount, totalPages);
|
|
2827
|
+
const showLeftDots = leftSiblingIndex > 2;
|
|
2828
|
+
const showRightDots = rightSiblingIndex < totalPages - 1;
|
|
2829
|
+
if (!showLeftDots && showRightDots) {
|
|
2830
|
+
const leftRange = Array.from(
|
|
2831
|
+
{ length: 3 + siblingCount * 2 },
|
|
2832
|
+
(_, i) => i + 1
|
|
2833
|
+
);
|
|
2834
|
+
return [...leftRange, "ellipsis", totalPages];
|
|
2835
|
+
}
|
|
2836
|
+
if (showLeftDots && !showRightDots) {
|
|
2837
|
+
const rightRange = Array.from(
|
|
2838
|
+
{ length: 3 + siblingCount * 2 },
|
|
2839
|
+
(_, i) => totalPages - (3 + siblingCount * 2) + i + 1
|
|
2840
|
+
);
|
|
2841
|
+
return [1, "ellipsis", ...rightRange];
|
|
2842
|
+
}
|
|
2843
|
+
const middleRange = Array.from(
|
|
2844
|
+
{ length: siblingCount * 2 + 1 },
|
|
2845
|
+
(_, i) => leftSiblingIndex + i
|
|
2846
|
+
);
|
|
2847
|
+
return [1, "ellipsis", ...middleRange, "ellipsis", totalPages];
|
|
2848
|
+
}
|
|
2849
|
+
var Pagination = React27__namespace.forwardRef(
|
|
2850
|
+
({
|
|
2851
|
+
currentPage,
|
|
2852
|
+
totalPages,
|
|
2853
|
+
onPageChange,
|
|
2854
|
+
siblingCount = 1,
|
|
2855
|
+
showBoundaryPages = true,
|
|
2856
|
+
size = "default",
|
|
2857
|
+
className
|
|
2858
|
+
}, ref) => {
|
|
2859
|
+
const pages = generatePagination(currentPage, totalPages, siblingCount);
|
|
2860
|
+
const buttonSize = size === "sm" ? "sm" : size === "lg" ? "lg" : "default";
|
|
2861
|
+
const iconSize = size === "sm" ? 14 : size === "lg" ? 20 : 16;
|
|
2862
|
+
if (totalPages <= 1) {
|
|
2863
|
+
return null;
|
|
2864
|
+
}
|
|
2865
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
2866
|
+
"nav",
|
|
2867
|
+
{
|
|
2868
|
+
ref,
|
|
2869
|
+
role: "navigation",
|
|
2870
|
+
"aria-label": "Pagination",
|
|
2871
|
+
className: cn("flex items-center gap-1", className),
|
|
2872
|
+
children: [
|
|
2873
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2874
|
+
Button,
|
|
2875
|
+
{
|
|
2876
|
+
variant: "outline",
|
|
2877
|
+
size: buttonSize,
|
|
2878
|
+
onClick: () => onPageChange(currentPage - 1),
|
|
2879
|
+
disabled: currentPage <= 1,
|
|
2880
|
+
"aria-label": "Go to previous page",
|
|
2881
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(react_star.CaretLeft, { size: iconSize })
|
|
2882
|
+
}
|
|
2883
|
+
),
|
|
2884
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center gap-1", children: pages.map((page, index) => {
|
|
2885
|
+
if (page === "ellipsis") {
|
|
2886
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
2887
|
+
"span",
|
|
2888
|
+
{
|
|
2889
|
+
className: "flex h-9 w-9 items-center justify-center text-muted-foreground",
|
|
2890
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(react_star.DotsThree, { size: iconSize })
|
|
2891
|
+
},
|
|
2892
|
+
`ellipsis-${index}`
|
|
2893
|
+
);
|
|
2894
|
+
}
|
|
2895
|
+
const isCurrentPage = page === currentPage;
|
|
2896
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
2897
|
+
Button,
|
|
2898
|
+
{
|
|
2899
|
+
variant: isCurrentPage ? "default" : "outline",
|
|
2900
|
+
size: buttonSize,
|
|
2901
|
+
onClick: () => onPageChange(page),
|
|
2902
|
+
"aria-label": `Go to page ${page}`,
|
|
2903
|
+
"aria-current": isCurrentPage ? "page" : void 0,
|
|
2904
|
+
children: page
|
|
2905
|
+
},
|
|
2906
|
+
page
|
|
2907
|
+
);
|
|
2908
|
+
}) }),
|
|
2909
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2910
|
+
Button,
|
|
2911
|
+
{
|
|
2912
|
+
variant: "outline",
|
|
2913
|
+
size: buttonSize,
|
|
2914
|
+
onClick: () => onPageChange(currentPage + 1),
|
|
2915
|
+
disabled: currentPage >= totalPages,
|
|
2916
|
+
"aria-label": "Go to next page",
|
|
2917
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(react_star.CaretRight, { size: iconSize })
|
|
2918
|
+
}
|
|
2919
|
+
)
|
|
2920
|
+
]
|
|
2921
|
+
}
|
|
2922
|
+
);
|
|
2923
|
+
}
|
|
2924
|
+
);
|
|
2925
|
+
Pagination.displayName = "Pagination";
|
|
2926
|
+
var SimplePagination = React27__namespace.forwardRef(
|
|
2927
|
+
({
|
|
2928
|
+
currentPage,
|
|
2929
|
+
totalPages,
|
|
2930
|
+
onPageChange,
|
|
2931
|
+
size = "default",
|
|
2932
|
+
className,
|
|
2933
|
+
showPageInfo = true
|
|
2934
|
+
}, ref) => {
|
|
2935
|
+
const buttonSize = size === "sm" ? "sm" : size === "lg" ? "lg" : "default";
|
|
2936
|
+
const iconSize = size === "sm" ? 14 : size === "lg" ? 20 : 16;
|
|
2937
|
+
if (totalPages <= 1) {
|
|
2938
|
+
return null;
|
|
2939
|
+
}
|
|
2940
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
2941
|
+
"nav",
|
|
2942
|
+
{
|
|
2943
|
+
ref,
|
|
2944
|
+
role: "navigation",
|
|
2945
|
+
"aria-label": "Pagination",
|
|
2946
|
+
className: cn("flex items-center gap-2", className),
|
|
2947
|
+
children: [
|
|
2948
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
2949
|
+
Button,
|
|
2950
|
+
{
|
|
2951
|
+
variant: "outline",
|
|
2952
|
+
size: buttonSize,
|
|
2953
|
+
onClick: () => onPageChange(currentPage - 1),
|
|
2954
|
+
disabled: currentPage <= 1,
|
|
2955
|
+
"aria-label": "Go to previous page",
|
|
2956
|
+
children: [
|
|
2957
|
+
/* @__PURE__ */ jsxRuntime.jsx(react_star.CaretLeft, { size: iconSize }),
|
|
2958
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "ml-1", children: "Previous" })
|
|
2959
|
+
]
|
|
2960
|
+
}
|
|
2961
|
+
),
|
|
2962
|
+
showPageInfo && /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "text-sm text-muted-foreground px-2", children: [
|
|
2963
|
+
"Page ",
|
|
2964
|
+
currentPage,
|
|
2965
|
+
" of ",
|
|
2966
|
+
totalPages
|
|
2967
|
+
] }),
|
|
2968
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
2969
|
+
Button,
|
|
2970
|
+
{
|
|
2971
|
+
variant: "outline",
|
|
2972
|
+
size: buttonSize,
|
|
2973
|
+
onClick: () => onPageChange(currentPage + 1),
|
|
2974
|
+
disabled: currentPage >= totalPages,
|
|
2975
|
+
"aria-label": "Go to next page",
|
|
2976
|
+
children: [
|
|
2977
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "mr-1", children: "Next" }),
|
|
2978
|
+
/* @__PURE__ */ jsxRuntime.jsx(react_star.CaretRight, { size: iconSize })
|
|
2979
|
+
]
|
|
2980
|
+
}
|
|
2981
|
+
)
|
|
2982
|
+
]
|
|
2983
|
+
}
|
|
2984
|
+
);
|
|
2985
|
+
}
|
|
2986
|
+
);
|
|
2987
|
+
SimplePagination.displayName = "SimplePagination";
|
|
2988
|
+
var StepProgress = React27__namespace.forwardRef(
|
|
2989
|
+
({
|
|
2990
|
+
steps,
|
|
2991
|
+
currentStep,
|
|
2992
|
+
onStepClick,
|
|
2993
|
+
orientation = "horizontal",
|
|
2994
|
+
size = "default",
|
|
2995
|
+
showLabels = true,
|
|
2996
|
+
className
|
|
2997
|
+
}, ref) => {
|
|
2998
|
+
const sizeStyles = {
|
|
2999
|
+
sm: {
|
|
3000
|
+
indicator: "w-6 h-6 text-xs",
|
|
3001
|
+
icon: 12,
|
|
3002
|
+
label: "text-xs",
|
|
3003
|
+
connector: orientation === "horizontal" ? "h-0.5" : "w-0.5",
|
|
3004
|
+
connectorLength: orientation === "horizontal" ? "w-4 sm:w-8" : "h-6"
|
|
3005
|
+
},
|
|
3006
|
+
default: {
|
|
3007
|
+
indicator: "w-7 h-7 text-xs",
|
|
3008
|
+
icon: 14,
|
|
3009
|
+
label: "text-sm",
|
|
3010
|
+
connector: orientation === "horizontal" ? "h-0.5" : "w-0.5",
|
|
3011
|
+
connectorLength: orientation === "horizontal" ? "w-6 sm:w-10 md:w-14" : "h-8"
|
|
3012
|
+
},
|
|
3013
|
+
lg: {
|
|
3014
|
+
indicator: "w-8 h-8 text-sm",
|
|
3015
|
+
icon: 16,
|
|
3016
|
+
label: "text-sm",
|
|
3017
|
+
connector: orientation === "horizontal" ? "h-0.5" : "w-0.5",
|
|
3018
|
+
connectorLength: orientation === "horizontal" ? "w-8 sm:w-12 md:w-16" : "h-10"
|
|
3019
|
+
}
|
|
3020
|
+
};
|
|
3021
|
+
const styles = sizeStyles[size];
|
|
3022
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
3023
|
+
"div",
|
|
3024
|
+
{
|
|
3025
|
+
ref,
|
|
3026
|
+
className: cn(
|
|
3027
|
+
"flex",
|
|
3028
|
+
orientation === "horizontal" ? "flex-row items-center" : "flex-col",
|
|
3029
|
+
className
|
|
3030
|
+
),
|
|
3031
|
+
children: steps.map((step, index) => {
|
|
3032
|
+
const isCompleted = step.id < currentStep;
|
|
3033
|
+
const isCurrent = step.id === currentStep;
|
|
3034
|
+
const isClickable = onStepClick && step.id < currentStep;
|
|
3035
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
3036
|
+
"div",
|
|
3037
|
+
{
|
|
3038
|
+
className: cn(
|
|
3039
|
+
"flex",
|
|
3040
|
+
orientation === "horizontal" ? "flex-row items-center" : "flex-col items-start"
|
|
3041
|
+
),
|
|
3042
|
+
children: [
|
|
3043
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
3044
|
+
"button",
|
|
3045
|
+
{
|
|
3046
|
+
type: "button",
|
|
3047
|
+
onClick: () => isClickable && onStepClick(step.id),
|
|
3048
|
+
disabled: !isClickable,
|
|
3049
|
+
className: cn(
|
|
3050
|
+
"flex items-center gap-2 px-2 py-1.5 rounded-sm transition-colors",
|
|
3051
|
+
isClickable ? "cursor-pointer hover:bg-gray-50" : "cursor-default",
|
|
3052
|
+
orientation === "vertical" && "flex-row"
|
|
3053
|
+
),
|
|
3054
|
+
children: [
|
|
3055
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3056
|
+
"span",
|
|
3057
|
+
{
|
|
3058
|
+
className: cn(
|
|
3059
|
+
"rounded-sm flex items-center justify-center font-bold transition-colors",
|
|
3060
|
+
styles.indicator,
|
|
3061
|
+
isCompleted ? "bg-[var(--cyan)] text-white" : isCurrent ? "bg-[var(--black)] text-white" : "bg-gray-100 text-gray-400"
|
|
3062
|
+
),
|
|
3063
|
+
children: isCompleted ? /* @__PURE__ */ jsxRuntime.jsx(react_star.Check, { size: styles.icon, weight: "bold" }) : step.id
|
|
3064
|
+
}
|
|
3065
|
+
),
|
|
3066
|
+
showLabels && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn(
|
|
3067
|
+
orientation === "horizontal" && "hidden sm:block",
|
|
3068
|
+
"text-left"
|
|
3069
|
+
), children: [
|
|
3070
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3071
|
+
"span",
|
|
3072
|
+
{
|
|
3073
|
+
className: cn(
|
|
3074
|
+
"font-medium transition-colors whitespace-nowrap",
|
|
3075
|
+
styles.label,
|
|
3076
|
+
isCompleted ? "text-[var(--cyan)]" : isCurrent ? "text-[var(--black)]" : "text-gray-400"
|
|
3077
|
+
),
|
|
3078
|
+
children: step.label
|
|
3079
|
+
}
|
|
3080
|
+
),
|
|
3081
|
+
step.description && orientation === "vertical" && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs text-muted-foreground mt-0.5", children: step.description })
|
|
3082
|
+
] })
|
|
3083
|
+
]
|
|
3084
|
+
}
|
|
3085
|
+
),
|
|
3086
|
+
index < steps.length - 1 && /* @__PURE__ */ jsxRuntime.jsx(
|
|
3087
|
+
"div",
|
|
3088
|
+
{
|
|
3089
|
+
className: cn(
|
|
3090
|
+
"transition-colors",
|
|
3091
|
+
styles.connector,
|
|
3092
|
+
styles.connectorLength,
|
|
3093
|
+
isCompleted ? "bg-[var(--cyan)]" : "bg-gray-200",
|
|
3094
|
+
orientation === "vertical" && "ml-[13px] my-1"
|
|
3095
|
+
)
|
|
3096
|
+
}
|
|
3097
|
+
)
|
|
3098
|
+
]
|
|
3099
|
+
},
|
|
3100
|
+
step.id
|
|
3101
|
+
);
|
|
3102
|
+
})
|
|
3103
|
+
}
|
|
3104
|
+
);
|
|
3105
|
+
}
|
|
3106
|
+
);
|
|
3107
|
+
StepProgress.displayName = "StepProgress";
|
|
3108
|
+
var StepDots = React27__namespace.forwardRef(
|
|
3109
|
+
({ totalSteps, currentStep, onStepClick, className }, ref) => {
|
|
3110
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn("flex items-center gap-2", className), children: Array.from({ length: totalSteps }, (_, i) => i + 1).map((step) => {
|
|
3111
|
+
const isCompleted = step < currentStep;
|
|
3112
|
+
const isCurrent = step === currentStep;
|
|
3113
|
+
const isClickable = onStepClick && step < currentStep;
|
|
3114
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
3115
|
+
"button",
|
|
3116
|
+
{
|
|
3117
|
+
type: "button",
|
|
3118
|
+
onClick: () => isClickable && onStepClick(step),
|
|
3119
|
+
disabled: !isClickable,
|
|
3120
|
+
className: cn(
|
|
3121
|
+
"w-2 h-2 rounded-full transition-colors",
|
|
3122
|
+
isClickable && "cursor-pointer",
|
|
3123
|
+
!isClickable && "cursor-default",
|
|
3124
|
+
isCompleted || isCurrent ? "bg-[var(--cyan)]" : "bg-gray-200"
|
|
3125
|
+
),
|
|
3126
|
+
"aria-label": `Step ${step}`
|
|
3127
|
+
},
|
|
3128
|
+
step
|
|
3129
|
+
);
|
|
3130
|
+
}) });
|
|
3131
|
+
}
|
|
3132
|
+
);
|
|
3133
|
+
StepDots.displayName = "StepDots";
|
|
3134
|
+
var Breadcrumbs = React27__namespace.forwardRef(
|
|
3135
|
+
({
|
|
3136
|
+
items,
|
|
3137
|
+
LinkComponent,
|
|
3138
|
+
separator,
|
|
3139
|
+
showHomeIcon = false,
|
|
3140
|
+
maxItems,
|
|
3141
|
+
size = "default",
|
|
3142
|
+
className,
|
|
3143
|
+
...props
|
|
3144
|
+
}, ref) => {
|
|
3145
|
+
const sizeStyles = {
|
|
3146
|
+
sm: "text-xs gap-1",
|
|
3147
|
+
default: "text-sm gap-1.5"
|
|
3148
|
+
};
|
|
3149
|
+
const iconSize = size === "sm" ? 10 : 12;
|
|
3150
|
+
let displayItems = items;
|
|
3151
|
+
if (maxItems && items.length > maxItems) {
|
|
3152
|
+
displayItems = [
|
|
3153
|
+
items[0],
|
|
3154
|
+
{ label: "...", href: void 0 },
|
|
3155
|
+
...items.slice(-(maxItems - 2))
|
|
3156
|
+
];
|
|
3157
|
+
}
|
|
3158
|
+
const defaultSeparator = /* @__PURE__ */ jsxRuntime.jsx(react_star.CaretRight, { size: iconSize, className: "text-gray-400" });
|
|
3159
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
3160
|
+
"nav",
|
|
3161
|
+
{
|
|
3162
|
+
ref,
|
|
3163
|
+
"aria-label": "Breadcrumb",
|
|
3164
|
+
className: cn("flex items-center text-gray-500", sizeStyles[size], className),
|
|
3165
|
+
...props,
|
|
3166
|
+
children: /* @__PURE__ */ jsxRuntime.jsx("ol", { className: cn("flex items-center", sizeStyles[size]), children: displayItems.map((item, index) => {
|
|
3167
|
+
const isFirst = index === 0;
|
|
3168
|
+
const isLast = index === displayItems.length - 1;
|
|
3169
|
+
const isEllipsis = item.label === "...";
|
|
3170
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("li", { className: cn("flex items-center", sizeStyles[size]), children: [
|
|
3171
|
+
index > 0 && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "mx-1 text-gray-400", children: separator || defaultSeparator }),
|
|
3172
|
+
isEllipsis ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-gray-400", children: item.label }) : item.href && !isLast ? LinkComponent ? /* @__PURE__ */ jsxRuntime.jsxs(
|
|
3173
|
+
LinkComponent,
|
|
3174
|
+
{
|
|
3175
|
+
href: item.href,
|
|
3176
|
+
className: "flex items-center gap-1 hover:text-[var(--black)] transition-colors",
|
|
3177
|
+
children: [
|
|
3178
|
+
isFirst && showHomeIcon && /* @__PURE__ */ jsxRuntime.jsx(react_star.House, { size: iconSize + 2, weight: "fill" }),
|
|
3179
|
+
item.icon,
|
|
3180
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { children: item.label })
|
|
3181
|
+
]
|
|
3182
|
+
}
|
|
3183
|
+
) : /* @__PURE__ */ jsxRuntime.jsxs(
|
|
3184
|
+
"a",
|
|
3185
|
+
{
|
|
3186
|
+
href: item.href,
|
|
3187
|
+
className: "flex items-center gap-1 hover:text-[var(--black)] transition-colors",
|
|
3188
|
+
children: [
|
|
3189
|
+
isFirst && showHomeIcon && /* @__PURE__ */ jsxRuntime.jsx(react_star.House, { size: iconSize + 2, weight: "fill" }),
|
|
3190
|
+
item.icon,
|
|
3191
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { children: item.label })
|
|
3192
|
+
]
|
|
3193
|
+
}
|
|
3194
|
+
) : /* @__PURE__ */ jsxRuntime.jsxs(
|
|
3195
|
+
"span",
|
|
3196
|
+
{
|
|
3197
|
+
className: cn(
|
|
3198
|
+
"flex items-center gap-1",
|
|
3199
|
+
isLast && "text-[var(--black)] font-medium"
|
|
3200
|
+
),
|
|
3201
|
+
"aria-current": isLast ? "page" : void 0,
|
|
3202
|
+
children: [
|
|
3203
|
+
isFirst && showHomeIcon && /* @__PURE__ */ jsxRuntime.jsx(react_star.House, { size: iconSize + 2, weight: "fill" }),
|
|
3204
|
+
item.icon,
|
|
3205
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { children: item.label })
|
|
3206
|
+
]
|
|
3207
|
+
}
|
|
3208
|
+
)
|
|
3209
|
+
] }, index);
|
|
3210
|
+
}) })
|
|
3211
|
+
}
|
|
3212
|
+
);
|
|
3213
|
+
}
|
|
3214
|
+
);
|
|
3215
|
+
Breadcrumbs.displayName = "Breadcrumbs";
|
|
3216
|
+
var BreadcrumbLink = React27__namespace.forwardRef(
|
|
3217
|
+
({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
3218
|
+
"a",
|
|
3219
|
+
{
|
|
3220
|
+
ref,
|
|
3221
|
+
className: cn(
|
|
3222
|
+
"hover:text-[var(--black)] transition-colors",
|
|
3223
|
+
className
|
|
3224
|
+
),
|
|
3225
|
+
...props
|
|
3226
|
+
}
|
|
3227
|
+
)
|
|
3228
|
+
);
|
|
3229
|
+
BreadcrumbLink.displayName = "BreadcrumbLink";
|
|
3230
|
+
var presetLabels = {
|
|
3231
|
+
"today": "Today",
|
|
3232
|
+
"yesterday": "Yesterday",
|
|
3233
|
+
"7d": "Last 7 days",
|
|
3234
|
+
"30d": "Last 30 days",
|
|
3235
|
+
"90d": "Last 90 days",
|
|
3236
|
+
"this-week": "This week",
|
|
3237
|
+
"this-month": "This month",
|
|
3238
|
+
"this-year": "This year",
|
|
3239
|
+
"custom": "Custom"
|
|
3240
|
+
};
|
|
3241
|
+
var DateRangePicker = React27__namespace.forwardRef(
|
|
3242
|
+
({
|
|
3243
|
+
value,
|
|
3244
|
+
onChange,
|
|
3245
|
+
customStart = "",
|
|
3246
|
+
customEnd = "",
|
|
3247
|
+
onCustomChange,
|
|
3248
|
+
presets = ["7d", "30d", "90d", "custom"],
|
|
3249
|
+
size = "default",
|
|
3250
|
+
className,
|
|
3251
|
+
inlineCustom = true
|
|
3252
|
+
}, ref) => {
|
|
3253
|
+
const buttonSize = size === "sm" ? "sm" : "default";
|
|
3254
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { ref, className: cn("flex flex-wrap items-center gap-2", className), children: [
|
|
3255
|
+
presets.map((preset) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
3256
|
+
Button,
|
|
3257
|
+
{
|
|
3258
|
+
variant: value === preset ? "default" : "outline",
|
|
3259
|
+
size: buttonSize,
|
|
3260
|
+
onClick: () => onChange(preset),
|
|
3261
|
+
children: presetLabels[preset]
|
|
3262
|
+
},
|
|
3263
|
+
preset
|
|
3264
|
+
)),
|
|
3265
|
+
value === "custom" && inlineCustom && onCustomChange && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2", children: [
|
|
3266
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-1", children: [
|
|
3267
|
+
/* @__PURE__ */ jsxRuntime.jsx(Label2, { htmlFor: "start-date", className: "text-xs sr-only", children: "Start" }),
|
|
3268
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3269
|
+
Input,
|
|
3270
|
+
{
|
|
3271
|
+
id: "start-date",
|
|
3272
|
+
type: "date",
|
|
3273
|
+
value: customStart,
|
|
3274
|
+
onChange: (e) => onCustomChange(e.target.value, customEnd),
|
|
3275
|
+
className: cn(size === "sm" ? "h-8 text-xs" : "h-9"),
|
|
3276
|
+
"aria-label": "Start date"
|
|
3277
|
+
}
|
|
3278
|
+
)
|
|
3279
|
+
] }),
|
|
3280
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground", children: "to" }),
|
|
3281
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-1", children: [
|
|
3282
|
+
/* @__PURE__ */ jsxRuntime.jsx(Label2, { htmlFor: "end-date", className: "text-xs sr-only", children: "End" }),
|
|
3283
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3284
|
+
Input,
|
|
3285
|
+
{
|
|
3286
|
+
id: "end-date",
|
|
3287
|
+
type: "date",
|
|
3288
|
+
value: customEnd,
|
|
3289
|
+
onChange: (e) => onCustomChange(customStart, e.target.value),
|
|
3290
|
+
className: cn(size === "sm" ? "h-8 text-xs" : "h-9"),
|
|
3291
|
+
"aria-label": "End date"
|
|
3292
|
+
}
|
|
3293
|
+
)
|
|
3294
|
+
] })
|
|
3295
|
+
] })
|
|
3296
|
+
] });
|
|
3297
|
+
}
|
|
3298
|
+
);
|
|
3299
|
+
DateRangePicker.displayName = "DateRangePicker";
|
|
3300
|
+
var DateRangeSelect = React27__namespace.forwardRef(
|
|
3301
|
+
({ value, onChange, presets = ["7d", "30d", "90d"], className }, ref) => {
|
|
3302
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
3303
|
+
"select",
|
|
3304
|
+
{
|
|
3305
|
+
ref,
|
|
3306
|
+
value,
|
|
3307
|
+
onChange: (e) => onChange(e.target.value),
|
|
3308
|
+
className: cn(
|
|
3309
|
+
"h-9 rounded-sm border border-input bg-background px-3 text-sm ring-offset-background focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",
|
|
3310
|
+
className
|
|
3311
|
+
),
|
|
3312
|
+
children: presets.map((preset) => /* @__PURE__ */ jsxRuntime.jsx("option", { value: preset, children: presetLabels[preset] }, preset))
|
|
3313
|
+
}
|
|
3314
|
+
);
|
|
3315
|
+
}
|
|
3316
|
+
);
|
|
3317
|
+
DateRangeSelect.displayName = "DateRangeSelect";
|
|
3318
|
+
function getDateRangeFromPreset(preset) {
|
|
3319
|
+
const now = /* @__PURE__ */ new Date();
|
|
3320
|
+
const end = new Date(now);
|
|
3321
|
+
end.setHours(23, 59, 59, 999);
|
|
3322
|
+
let start = new Date(now);
|
|
3323
|
+
start.setHours(0, 0, 0, 0);
|
|
3324
|
+
switch (preset) {
|
|
3325
|
+
case "today":
|
|
3326
|
+
break;
|
|
3327
|
+
case "yesterday":
|
|
3328
|
+
start.setDate(start.getDate() - 1);
|
|
3329
|
+
end.setDate(end.getDate() - 1);
|
|
3330
|
+
break;
|
|
3331
|
+
case "7d":
|
|
3332
|
+
start.setDate(start.getDate() - 7);
|
|
3333
|
+
break;
|
|
3334
|
+
case "30d":
|
|
3335
|
+
start.setDate(start.getDate() - 30);
|
|
3336
|
+
break;
|
|
3337
|
+
case "90d":
|
|
3338
|
+
start.setDate(start.getDate() - 90);
|
|
3339
|
+
break;
|
|
3340
|
+
case "this-week":
|
|
3341
|
+
start.setDate(start.getDate() - start.getDay());
|
|
3342
|
+
break;
|
|
3343
|
+
case "this-month":
|
|
3344
|
+
start.setDate(1);
|
|
3345
|
+
break;
|
|
3346
|
+
case "this-year":
|
|
3347
|
+
start.setMonth(0, 1);
|
|
3348
|
+
break;
|
|
3349
|
+
}
|
|
3350
|
+
return { start, end };
|
|
3351
|
+
}
|
|
3352
|
+
var SettingsNav = React27__namespace.forwardRef(
|
|
3353
|
+
({ groups, LinkComponent, className, ...props }, ref) => {
|
|
3354
|
+
const Link2 = LinkComponent || "a";
|
|
3355
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn("space-y-8", className), ...props, children: groups.map((group) => /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
3356
|
+
/* @__PURE__ */ jsxRuntime.jsx("h2", { className: "text-sm font-medium text-muted-foreground uppercase tracking-wide mb-3 px-1", children: group.title }),
|
|
3357
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-1", children: group.items.map((item) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
3358
|
+
Link2,
|
|
3359
|
+
{
|
|
3360
|
+
href: item.href,
|
|
3361
|
+
className: "group flex items-center gap-4 p-4 rounded-sm transition-all hover:bg-gray-50 border border-transparent hover:border-gray-200",
|
|
3362
|
+
children: [
|
|
3363
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center justify-center w-10 h-10 rounded-sm bg-gray-100 group-hover:bg-[var(--cyan)]/10 transition-colors", children: /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-gray-600 group-hover:text-[var(--cyan)] transition-colors [&>svg]:w-5 [&>svg]:h-5", children: item.icon }) }),
|
|
3364
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex-1 min-w-0", children: [
|
|
3365
|
+
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "font-medium text-[var(--black)] group-hover:text-[var(--cyan)] transition-colors", children: item.title }),
|
|
3366
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-muted-foreground", children: item.description })
|
|
3367
|
+
] }),
|
|
3368
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3369
|
+
react_star.CaretRight,
|
|
3370
|
+
{
|
|
3371
|
+
size: 18,
|
|
3372
|
+
className: "text-gray-300 group-hover:text-[var(--cyan)] group-hover:translate-x-0.5 transition-all shrink-0"
|
|
3373
|
+
}
|
|
3374
|
+
)
|
|
3375
|
+
]
|
|
3376
|
+
},
|
|
3377
|
+
item.href
|
|
3378
|
+
)) })
|
|
3379
|
+
] }, group.title)) });
|
|
3380
|
+
}
|
|
3381
|
+
);
|
|
3382
|
+
SettingsNav.displayName = "SettingsNav";
|
|
3383
|
+
var SettingsNavLink = React27__namespace.forwardRef(
|
|
3384
|
+
({ title, description, icon, href, LinkComponent, className, ...props }, ref) => {
|
|
3385
|
+
const content = /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
3386
|
+
icon && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center justify-center w-10 h-10 rounded-sm bg-gray-100 group-hover:bg-[var(--cyan)]/10 transition-colors", children: /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-gray-600 group-hover:text-[var(--cyan)] transition-colors [&>svg]:w-5 [&>svg]:h-5", children: icon }) }),
|
|
3387
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex-1 min-w-0", children: [
|
|
3388
|
+
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "font-medium text-[var(--black)] group-hover:text-[var(--cyan)] transition-colors", children: title }),
|
|
3389
|
+
description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-muted-foreground", children: description })
|
|
3390
|
+
] }),
|
|
3391
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3392
|
+
react_star.CaretRight,
|
|
3393
|
+
{
|
|
3394
|
+
size: 18,
|
|
3395
|
+
className: "text-gray-300 group-hover:text-[var(--cyan)] group-hover:translate-x-0.5 transition-all shrink-0"
|
|
3396
|
+
}
|
|
3397
|
+
)
|
|
3398
|
+
] });
|
|
3399
|
+
const linkClassName = cn(
|
|
3400
|
+
"group flex items-center gap-4 p-4 rounded-sm transition-all hover:bg-gray-50 border border-transparent hover:border-gray-200",
|
|
3401
|
+
className
|
|
3402
|
+
);
|
|
3403
|
+
if (LinkComponent && href) {
|
|
3404
|
+
return /* @__PURE__ */ jsxRuntime.jsx(LinkComponent, { href, className: linkClassName, children: content });
|
|
3405
|
+
}
|
|
3406
|
+
return /* @__PURE__ */ jsxRuntime.jsx("a", { ref, href, className: linkClassName, ...props, children: content });
|
|
3407
|
+
}
|
|
3408
|
+
);
|
|
3409
|
+
SettingsNavLink.displayName = "SettingsNavLink";
|
|
2284
3410
|
|
|
2285
3411
|
// src/index.ts
|
|
2286
3412
|
__reExport(index_exports, icons_exports);
|
|
@@ -2290,10 +3416,23 @@ exports.AccordionContent = AccordionContent;
|
|
|
2290
3416
|
exports.AccordionItem = AccordionItem;
|
|
2291
3417
|
exports.AccordionTrigger = AccordionTrigger;
|
|
2292
3418
|
exports.Alert = Alert;
|
|
3419
|
+
exports.AlertDialog = AlertDialog;
|
|
3420
|
+
exports.AlertDialogAction = AlertDialogAction;
|
|
3421
|
+
exports.AlertDialogCancel = AlertDialogCancel;
|
|
3422
|
+
exports.AlertDialogContent = AlertDialogContent;
|
|
3423
|
+
exports.AlertDialogDescription = AlertDialogDescription;
|
|
3424
|
+
exports.AlertDialogFooter = AlertDialogFooter;
|
|
3425
|
+
exports.AlertDialogHeader = AlertDialogHeader;
|
|
3426
|
+
exports.AlertDialogOverlay = AlertDialogOverlay;
|
|
3427
|
+
exports.AlertDialogPortal = AlertDialogPortal;
|
|
3428
|
+
exports.AlertDialogTitle = AlertDialogTitle;
|
|
3429
|
+
exports.AlertDialogTrigger = AlertDialogTrigger;
|
|
2293
3430
|
exports.Avatar = Avatar;
|
|
2294
3431
|
exports.AvatarFallback = AvatarFallback;
|
|
2295
3432
|
exports.AvatarImage = AvatarImage;
|
|
2296
3433
|
exports.Badge = Badge;
|
|
3434
|
+
exports.BreadcrumbLink = BreadcrumbLink;
|
|
3435
|
+
exports.Breadcrumbs = Breadcrumbs;
|
|
2297
3436
|
exports.Button = Button;
|
|
2298
3437
|
exports.Card = Card;
|
|
2299
3438
|
exports.CardContent = CardContent;
|
|
@@ -2303,6 +3442,9 @@ exports.CardHeader = CardHeader;
|
|
|
2303
3442
|
exports.CardTitle = CardTitle;
|
|
2304
3443
|
exports.Checkbox = Checkbox;
|
|
2305
3444
|
exports.CodeBlock = CodeBlock;
|
|
3445
|
+
exports.ConfirmDialog = ConfirmDialog;
|
|
3446
|
+
exports.DateRangePicker = DateRangePicker;
|
|
3447
|
+
exports.DateRangeSelect = DateRangeSelect;
|
|
2306
3448
|
exports.Dialog = Dialog;
|
|
2307
3449
|
exports.DialogClose = DialogClose;
|
|
2308
3450
|
exports.DialogContent = DialogContent;
|
|
@@ -2334,6 +3476,7 @@ exports.FormField = FormField;
|
|
|
2334
3476
|
exports.IconBox = IconBox;
|
|
2335
3477
|
exports.Input = Input;
|
|
2336
3478
|
exports.Label = Label2;
|
|
3479
|
+
exports.LabeledSwitch = LabeledSwitch;
|
|
2337
3480
|
exports.Logo = Logo;
|
|
2338
3481
|
exports.MetricCard = MetricCard;
|
|
2339
3482
|
exports.NavigationMenu = NavigationMenu;
|
|
@@ -2344,9 +3487,22 @@ exports.NavigationMenuLink = NavigationMenuLink;
|
|
|
2344
3487
|
exports.NavigationMenuList = NavigationMenuList;
|
|
2345
3488
|
exports.NavigationMenuTrigger = NavigationMenuTrigger;
|
|
2346
3489
|
exports.NavigationMenuViewport = NavigationMenuViewport;
|
|
3490
|
+
exports.Pagination = Pagination;
|
|
3491
|
+
exports.Popover = Popover;
|
|
3492
|
+
exports.PopoverAnchor = PopoverAnchor;
|
|
3493
|
+
exports.PopoverArrow = PopoverArrow;
|
|
3494
|
+
exports.PopoverClose = PopoverClose;
|
|
3495
|
+
exports.PopoverContent = PopoverContent;
|
|
3496
|
+
exports.PopoverTrigger = PopoverTrigger;
|
|
2347
3497
|
exports.Progress = Progress;
|
|
3498
|
+
exports.RadioGroup = RadioGroup;
|
|
3499
|
+
exports.RadioGroupCard = RadioGroupCard;
|
|
3500
|
+
exports.RadioGroupItem = RadioGroupItem;
|
|
3501
|
+
exports.RadioGroupOption = RadioGroupOption;
|
|
2348
3502
|
exports.Select = Select;
|
|
2349
3503
|
exports.Separator = Separator2;
|
|
3504
|
+
exports.SettingsNav = SettingsNav;
|
|
3505
|
+
exports.SettingsNavLink = SettingsNavLink;
|
|
2350
3506
|
exports.Sheet = Sheet;
|
|
2351
3507
|
exports.SheetClose = SheetClose;
|
|
2352
3508
|
exports.SheetContent = SheetContent;
|
|
@@ -2359,7 +3515,15 @@ exports.SheetTitle = SheetTitle;
|
|
|
2359
3515
|
exports.SheetTrigger = SheetTrigger;
|
|
2360
3516
|
exports.Sidebar = Sidebar;
|
|
2361
3517
|
exports.SidebarNavItem = SidebarNavItem;
|
|
3518
|
+
exports.SimplePagination = SimplePagination;
|
|
3519
|
+
exports.SimpleTooltip = SimpleTooltip;
|
|
3520
|
+
exports.Skeleton = Skeleton;
|
|
3521
|
+
exports.SkeletonCard = SkeletonCard;
|
|
3522
|
+
exports.SkeletonText = SkeletonText;
|
|
2362
3523
|
exports.Stat = Stat;
|
|
3524
|
+
exports.StepDots = StepDots;
|
|
3525
|
+
exports.StepProgress = StepProgress;
|
|
3526
|
+
exports.Switch = Switch;
|
|
2363
3527
|
exports.Table = Table;
|
|
2364
3528
|
exports.TableBody = TableBody;
|
|
2365
3529
|
exports.TableCaption = TableCaption;
|
|
@@ -2368,6 +3532,12 @@ exports.TableFooter = TableFooter;
|
|
|
2368
3532
|
exports.TableHead = TableHead;
|
|
2369
3533
|
exports.TableHeader = TableHeader;
|
|
2370
3534
|
exports.TableRow = TableRow;
|
|
3535
|
+
exports.Tabs = Tabs;
|
|
3536
|
+
exports.TabsContent = TabsContent;
|
|
3537
|
+
exports.TabsList = TabsList;
|
|
3538
|
+
exports.TabsListUnderline = TabsListUnderline;
|
|
3539
|
+
exports.TabsTrigger = TabsTrigger;
|
|
3540
|
+
exports.TabsTriggerUnderline = TabsTriggerUnderline;
|
|
2371
3541
|
exports.Tag = Tag;
|
|
2372
3542
|
exports.Textarea = Textarea;
|
|
2373
3543
|
exports.Toast = Toast;
|
|
@@ -2379,12 +3549,18 @@ exports.ToastProvider = ToastProvider;
|
|
|
2379
3549
|
exports.ToastTitle = ToastTitle;
|
|
2380
3550
|
exports.ToastViewport = ToastViewport;
|
|
2381
3551
|
exports.Toaster = Toaster;
|
|
3552
|
+
exports.Tooltip = Tooltip;
|
|
3553
|
+
exports.TooltipArrow = TooltipArrow;
|
|
3554
|
+
exports.TooltipContent = TooltipContent;
|
|
3555
|
+
exports.TooltipProvider = TooltipProvider;
|
|
3556
|
+
exports.TooltipTrigger = TooltipTrigger;
|
|
2382
3557
|
exports.UsageBar = UsageBar;
|
|
2383
3558
|
exports.UsageChart = UsageChart;
|
|
2384
3559
|
exports.alertVariants = alertVariants;
|
|
2385
3560
|
exports.badgeVariants = badgeVariants;
|
|
2386
3561
|
exports.buttonVariants = buttonVariants;
|
|
2387
3562
|
exports.cn = cn;
|
|
3563
|
+
exports.getDateRangeFromPreset = getDateRangeFromPreset;
|
|
2388
3564
|
exports.iconBoxVariants = iconBoxVariants;
|
|
2389
3565
|
exports.metricCardVariants = metricCardVariants;
|
|
2390
3566
|
exports.navigationMenuTriggerStyle = navigationMenuTriggerStyle;
|