@hai3/uikit 0.1.0-alpha.1 → 0.1.0-alpha.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1,23 +1,40 @@
1
1
  'use strict';
2
2
 
3
- var React16 = require('react');
3
+ var AspectRatioPrimitive = require('@radix-ui/react-aspect-ratio');
4
+ var jsxRuntime = require('react/jsx-runtime');
5
+ var React18 = require('react');
4
6
  var AvatarPrimitive = require('@radix-ui/react-avatar');
5
7
  var clsx = require('clsx');
6
8
  var tailwindMerge = require('tailwind-merge');
7
- var jsxRuntime = require('react/jsx-runtime');
8
9
  var reactSlot = require('@radix-ui/react-slot');
9
10
  var classVarianceAuthority = require('class-variance-authority');
10
11
  var uikitContracts = require('@hai3/uikit-contracts');
12
+ var CheckboxPrimitive = require('@radix-ui/react-checkbox');
11
13
  var SwitchPrimitives = require('@radix-ui/react-switch');
12
14
  var lucideReact = require('lucide-react');
13
15
  var lodash = require('lodash');
14
16
  var SliderPrimitive = require('@radix-ui/react-slider');
15
17
  var ProgressPrimitive = require('@radix-ui/react-progress');
16
18
  var TooltipPrimitive = require('@radix-ui/react-tooltip');
19
+ var PopoverPrimitive = require('@radix-ui/react-popover');
20
+ var HoverCardPrimitive = require('@radix-ui/react-hover-card');
17
21
  var NavigationMenuPrimitive = require('@radix-ui/react-navigation-menu');
22
+ var MenubarPrimitive = require('@radix-ui/react-menubar');
23
+ var TabsPrimitive = require('@radix-ui/react-tabs');
18
24
  var SheetPrimitive = require('@radix-ui/react-dialog');
25
+ var vaul = require('vaul');
26
+ var ResizablePrimitive = require('react-resizable-panels');
27
+ var ScrollAreaPrimitive = require('@radix-ui/react-scroll-area');
28
+ var SeparatorPrimitive = require('@radix-ui/react-separator');
29
+ var AccordionPrimitive = require('@radix-ui/react-accordion');
30
+ var useEmblaCarousel = require('embla-carousel-react');
31
+ var CollapsiblePrimitive = require('@radix-ui/react-collapsible');
32
+ var recharts = require('recharts');
19
33
  var SelectPrimitive = require('@radix-ui/react-select');
20
34
  var DropdownMenuPrimitive = require('@radix-ui/react-dropdown-menu');
35
+ var ContextMenuPrimitive = require('@radix-ui/react-context-menu');
36
+
37
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
21
38
 
22
39
  function _interopNamespace(e) {
23
40
  if (e && e.__esModule) return e;
@@ -37,22 +54,40 @@ function _interopNamespace(e) {
37
54
  return Object.freeze(n);
38
55
  }
39
56
 
40
- var React16__namespace = /*#__PURE__*/_interopNamespace(React16);
57
+ var AspectRatioPrimitive__namespace = /*#__PURE__*/_interopNamespace(AspectRatioPrimitive);
58
+ var React18__namespace = /*#__PURE__*/_interopNamespace(React18);
41
59
  var AvatarPrimitive__namespace = /*#__PURE__*/_interopNamespace(AvatarPrimitive);
60
+ var CheckboxPrimitive__namespace = /*#__PURE__*/_interopNamespace(CheckboxPrimitive);
42
61
  var SwitchPrimitives__namespace = /*#__PURE__*/_interopNamespace(SwitchPrimitives);
43
62
  var SliderPrimitive__namespace = /*#__PURE__*/_interopNamespace(SliderPrimitive);
44
63
  var ProgressPrimitive__namespace = /*#__PURE__*/_interopNamespace(ProgressPrimitive);
45
64
  var TooltipPrimitive__namespace = /*#__PURE__*/_interopNamespace(TooltipPrimitive);
65
+ var PopoverPrimitive__namespace = /*#__PURE__*/_interopNamespace(PopoverPrimitive);
66
+ var HoverCardPrimitive__namespace = /*#__PURE__*/_interopNamespace(HoverCardPrimitive);
46
67
  var NavigationMenuPrimitive__namespace = /*#__PURE__*/_interopNamespace(NavigationMenuPrimitive);
68
+ var MenubarPrimitive__namespace = /*#__PURE__*/_interopNamespace(MenubarPrimitive);
69
+ var TabsPrimitive__namespace = /*#__PURE__*/_interopNamespace(TabsPrimitive);
47
70
  var SheetPrimitive__namespace = /*#__PURE__*/_interopNamespace(SheetPrimitive);
71
+ var ResizablePrimitive__namespace = /*#__PURE__*/_interopNamespace(ResizablePrimitive);
72
+ var ScrollAreaPrimitive__namespace = /*#__PURE__*/_interopNamespace(ScrollAreaPrimitive);
73
+ var SeparatorPrimitive__namespace = /*#__PURE__*/_interopNamespace(SeparatorPrimitive);
74
+ var AccordionPrimitive__namespace = /*#__PURE__*/_interopNamespace(AccordionPrimitive);
75
+ var useEmblaCarousel__default = /*#__PURE__*/_interopDefault(useEmblaCarousel);
76
+ var CollapsiblePrimitive__namespace = /*#__PURE__*/_interopNamespace(CollapsiblePrimitive);
48
77
  var SelectPrimitive__namespace = /*#__PURE__*/_interopNamespace(SelectPrimitive);
49
78
  var DropdownMenuPrimitive__namespace = /*#__PURE__*/_interopNamespace(DropdownMenuPrimitive);
79
+ var ContextMenuPrimitive__namespace = /*#__PURE__*/_interopNamespace(ContextMenuPrimitive);
50
80
 
51
- // src/base/avatar.tsx
81
+ // src/base/aspect-ratio.tsx
82
+ function AspectRatio({
83
+ ...props
84
+ }) {
85
+ return /* @__PURE__ */ jsxRuntime.jsx(AspectRatioPrimitive__namespace.Root, { "data-slot": "aspect-ratio", ...props });
86
+ }
52
87
  function cn(...inputs) {
53
88
  return tailwindMerge.twMerge(clsx.clsx(inputs));
54
89
  }
55
- var Avatar = React16__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
90
+ var Avatar = React18__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
56
91
  AvatarPrimitive__namespace.Root,
57
92
  {
58
93
  ref,
@@ -64,7 +99,7 @@ var Avatar = React16__namespace.forwardRef(({ className, ...props }, ref) => /*
64
99
  }
65
100
  ));
66
101
  Avatar.displayName = AvatarPrimitive__namespace.Root.displayName;
67
- var AvatarImage = React16__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
102
+ var AvatarImage = React18__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
68
103
  AvatarPrimitive__namespace.Image,
69
104
  {
70
105
  ref,
@@ -73,7 +108,7 @@ var AvatarImage = React16__namespace.forwardRef(({ className, ...props }, ref) =
73
108
  }
74
109
  ));
75
110
  AvatarImage.displayName = AvatarPrimitive__namespace.Image.displayName;
76
- var AvatarFallback = React16__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
111
+ var AvatarFallback = React18__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
77
112
  AvatarPrimitive__namespace.Fallback,
78
113
  {
79
114
  ref,
@@ -110,7 +145,7 @@ var buttonVariants = classVarianceAuthority.cva(
110
145
  }
111
146
  }
112
147
  );
113
- var Button = React16__namespace.forwardRef(
148
+ var Button = React18__namespace.forwardRef(
114
149
  ({ className, variant, size, asChild = false, ...props }, ref) => {
115
150
  const Comp = asChild ? reactSlot.Slot : "button";
116
151
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -155,7 +190,48 @@ function Badge({
155
190
  }
156
191
  );
157
192
  }
158
- var Input = React16__namespace.forwardRef(
193
+ var CheckIcon = ({ className = "" }) => {
194
+ return /* @__PURE__ */ jsxRuntime.jsx(
195
+ "svg",
196
+ {
197
+ className,
198
+ width: "16",
199
+ height: "16",
200
+ viewBox: "0 0 24 24",
201
+ fill: "none",
202
+ stroke: "currentColor",
203
+ strokeWidth: "2",
204
+ strokeLinecap: "round",
205
+ strokeLinejoin: "round",
206
+ children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M20 6 9 17l-5-5" })
207
+ }
208
+ );
209
+ };
210
+ function Checkbox({
211
+ className,
212
+ ...props
213
+ }) {
214
+ return /* @__PURE__ */ jsxRuntime.jsx(
215
+ CheckboxPrimitive__namespace.Root,
216
+ {
217
+ "data-slot": "checkbox",
218
+ className: cn(
219
+ "peer border-input dark:bg-input/30 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground dark:data-[state=checked]:bg-primary data-[state=checked]:border-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive size-4 shrink-0 rounded-[4px] border shadow-xs transition-shadow outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",
220
+ className
221
+ ),
222
+ ...props,
223
+ children: /* @__PURE__ */ jsxRuntime.jsx(
224
+ CheckboxPrimitive__namespace.Indicator,
225
+ {
226
+ "data-slot": "checkbox-indicator",
227
+ className: "grid place-content-center text-current transition-none",
228
+ children: /* @__PURE__ */ jsxRuntime.jsx(CheckIcon, { className: "size-3.5" })
229
+ }
230
+ )
231
+ }
232
+ );
233
+ }
234
+ var Input = React18__namespace.forwardRef(
159
235
  ({ className, type, ...props }, ref) => {
160
236
  return /* @__PURE__ */ jsxRuntime.jsx(
161
237
  "input",
@@ -172,10 +248,10 @@ var Input = React16__namespace.forwardRef(
172
248
  }
173
249
  );
174
250
  Input.displayName = "Input";
175
- var Textarea = React16__namespace.forwardRef(
251
+ var Textarea = React18__namespace.forwardRef(
176
252
  ({ className, autoResize = false, minHeight = 50, maxHeight = 350, size = "default", onChange, ...props }, ref) => {
177
- const internalRef = React16__namespace.useRef(null);
178
- React16__namespace.useImperativeHandle(ref, () => internalRef.current);
253
+ const internalRef = React18__namespace.useRef(null);
254
+ React18__namespace.useImperativeHandle(ref, () => internalRef.current);
179
255
  const sizeClasses = {
180
256
  sm: "min-h-11 h-11",
181
257
  // 44px / 2.75rem - exact height
@@ -192,7 +268,7 @@ var Textarea = React16__namespace.forwardRef(
192
268
  lg: "py-2"
193
269
  // 8px top + 8px bottom (default)
194
270
  };
195
- const handleResize = React16__namespace.useCallback(() => {
271
+ const handleResize = React18__namespace.useCallback(() => {
196
272
  if (autoResize && size !== "sm" && internalRef.current) {
197
273
  const textarea = internalRef.current;
198
274
  textarea.style.height = "auto";
@@ -200,10 +276,10 @@ var Textarea = React16__namespace.forwardRef(
200
276
  textarea.style.height = `${Math.min(Math.max(scrollHeight, minHeight), maxHeight)}px`;
201
277
  }
202
278
  }, [autoResize, size, minHeight, maxHeight]);
203
- React16__namespace.useEffect(() => {
279
+ React18__namespace.useEffect(() => {
204
280
  handleResize();
205
281
  }, [handleResize, props.value]);
206
- const handleChange = React16__namespace.useCallback(
282
+ const handleChange = React18__namespace.useCallback(
207
283
  (e) => {
208
284
  handleResize();
209
285
  onChange?.(e);
@@ -227,7 +303,7 @@ var Textarea = React16__namespace.forwardRef(
227
303
  }
228
304
  );
229
305
  Textarea.displayName = "Textarea";
230
- var Switch = React16__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
306
+ var Switch = React18__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
231
307
  SwitchPrimitives__namespace.Root,
232
308
  {
233
309
  className: cn(
@@ -266,7 +342,7 @@ function Skeleton({
266
342
  }
267
343
  );
268
344
  }
269
- var Spinner = React16__namespace.forwardRef(
345
+ var Spinner = React18__namespace.forwardRef(
270
346
  ({ className, icon: Icon2 = lucideReact.Loader2, size = "size-4", ...props }, ref) => {
271
347
  const textColorClasses = className?.match(/\btext-\S+/g)?.join(" ") || "";
272
348
  const wrapperClasses = lodash.trim(className?.replace(/\btext-\S+/g, "") || "");
@@ -282,7 +358,7 @@ var Spinner = React16__namespace.forwardRef(
282
358
  }
283
359
  );
284
360
  Spinner.displayName = "Spinner";
285
- var Slider = React16__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
361
+ var Slider = React18__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
286
362
  SliderPrimitive__namespace.Root,
287
363
  {
288
364
  ref,
@@ -294,7 +370,7 @@ var Slider = React16__namespace.forwardRef(({ className, ...props }, ref) => /*
294
370
  }
295
371
  ));
296
372
  Slider.displayName = SliderPrimitive__namespace.Root.displayName;
297
- var SliderTrack = React16__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
373
+ var SliderTrack = React18__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
298
374
  SliderPrimitive__namespace.Track,
299
375
  {
300
376
  ref,
@@ -306,7 +382,7 @@ var SliderTrack = React16__namespace.forwardRef(({ className, ...props }, ref) =
306
382
  }
307
383
  ));
308
384
  SliderTrack.displayName = SliderPrimitive__namespace.Track.displayName;
309
- var SliderRange = React16__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
385
+ var SliderRange = React18__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
310
386
  SliderPrimitive__namespace.Range,
311
387
  {
312
388
  ref,
@@ -315,7 +391,7 @@ var SliderRange = React16__namespace.forwardRef(({ className, ...props }, ref) =
315
391
  }
316
392
  ));
317
393
  SliderRange.displayName = SliderPrimitive__namespace.Range.displayName;
318
- var SliderThumb = React16__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
394
+ var SliderThumb = React18__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
319
395
  SliderPrimitive__namespace.Thumb,
320
396
  {
321
397
  ref,
@@ -327,7 +403,7 @@ var SliderThumb = React16__namespace.forwardRef(({ className, ...props }, ref) =
327
403
  }
328
404
  ));
329
405
  SliderThumb.displayName = SliderPrimitive__namespace.Thumb.displayName;
330
- var Progress = React16__namespace.forwardRef(({ className, value, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
406
+ var Progress = React18__namespace.forwardRef(({ className, value, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
331
407
  ProgressPrimitive__namespace.Root,
332
408
  {
333
409
  ref,
@@ -361,9 +437,9 @@ var Tooltip = ({
361
437
  ...props
362
438
  }) => /* @__PURE__ */ jsxRuntime.jsx(TooltipProvider, { children: /* @__PURE__ */ jsxRuntime.jsx(TooltipPrimitive__namespace.Root, { ...props }) });
363
439
  Tooltip.displayName = TooltipPrimitive__namespace.Root.displayName;
364
- var TooltipTrigger = React16__namespace.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(TooltipPrimitive__namespace.Trigger, { ref, ...props }));
440
+ var TooltipTrigger = React18__namespace.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(TooltipPrimitive__namespace.Trigger, { ref, ...props }));
365
441
  TooltipTrigger.displayName = TooltipPrimitive__namespace.Trigger.displayName;
366
- var TooltipContent = React16__namespace.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(TooltipPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx(
442
+ var TooltipContent = React18__namespace.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(TooltipPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx(
367
443
  TooltipPrimitive__namespace.Content,
368
444
  {
369
445
  ref,
@@ -376,7 +452,68 @@ var TooltipContent = React16__namespace.forwardRef(({ className, sideOffset = 4,
376
452
  }
377
453
  ) }));
378
454
  TooltipContent.displayName = TooltipPrimitive__namespace.Content.displayName;
379
- var Card = React16__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
455
+ var Popover = PopoverPrimitive__namespace.Root;
456
+ Popover.displayName = "Popover";
457
+ var PopoverTrigger = React18__namespace.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
458
+ PopoverPrimitive__namespace.Trigger,
459
+ {
460
+ ref,
461
+ "data-slot": "popover-trigger",
462
+ ...props
463
+ }
464
+ ));
465
+ PopoverTrigger.displayName = "PopoverTrigger";
466
+ var PopoverContent = React18__namespace.forwardRef(({ className, align = "center", sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(PopoverPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx(
467
+ PopoverPrimitive__namespace.Content,
468
+ {
469
+ ref,
470
+ "data-slot": "popover-content",
471
+ align,
472
+ sideOffset,
473
+ className: cn(
474
+ "z-50 w-72 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-hidden 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",
475
+ className
476
+ ),
477
+ ...props
478
+ }
479
+ ) }));
480
+ PopoverContent.displayName = "PopoverContent";
481
+ var PopoverAnchor = React18__namespace.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
482
+ PopoverPrimitive__namespace.Anchor,
483
+ {
484
+ ref,
485
+ "data-slot": "popover-anchor",
486
+ ...props
487
+ }
488
+ ));
489
+ PopoverAnchor.displayName = "PopoverAnchor";
490
+ var HoverCard = HoverCardPrimitive__namespace.Root;
491
+ HoverCard.displayName = "HoverCard";
492
+ var HoverCardTrigger = React18__namespace.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
493
+ HoverCardPrimitive__namespace.Trigger,
494
+ {
495
+ ref,
496
+ "data-slot": "hover-card-trigger",
497
+ ...props
498
+ }
499
+ ));
500
+ HoverCardTrigger.displayName = "HoverCardTrigger";
501
+ var HoverCardContent = React18__namespace.forwardRef(({ className, align = "center", sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(HoverCardPrimitive__namespace.Portal, { "data-slot": "hover-card-portal", children: /* @__PURE__ */ jsxRuntime.jsx(
502
+ HoverCardPrimitive__namespace.Content,
503
+ {
504
+ ref,
505
+ "data-slot": "hover-card-content",
506
+ align,
507
+ sideOffset,
508
+ className: cn(
509
+ "z-50 w-64 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-hidden 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",
510
+ className
511
+ ),
512
+ ...props
513
+ }
514
+ ) }));
515
+ HoverCardContent.displayName = "HoverCardContent";
516
+ var Card = React18__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
380
517
  "div",
381
518
  {
382
519
  ref,
@@ -388,7 +525,7 @@ var Card = React16__namespace.forwardRef(({ className, ...props }, ref) => /* @_
388
525
  }
389
526
  ));
390
527
  Card.displayName = "Card";
391
- var CardHeader = React16__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
528
+ var CardHeader = React18__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
392
529
  "div",
393
530
  {
394
531
  ref,
@@ -397,7 +534,7 @@ var CardHeader = React16__namespace.forwardRef(({ className, ...props }, ref) =>
397
534
  }
398
535
  ));
399
536
  CardHeader.displayName = "CardHeader";
400
- var CardTitle = React16__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
537
+ var CardTitle = React18__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
401
538
  "div",
402
539
  {
403
540
  ref,
@@ -406,7 +543,7 @@ var CardTitle = React16__namespace.forwardRef(({ className, ...props }, ref) =>
406
543
  }
407
544
  ));
408
545
  CardTitle.displayName = "CardTitle";
409
- var CardDescription = React16__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
546
+ var CardDescription = React18__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
410
547
  "div",
411
548
  {
412
549
  ref,
@@ -415,9 +552,9 @@ var CardDescription = React16__namespace.forwardRef(({ className, ...props }, re
415
552
  }
416
553
  ));
417
554
  CardDescription.displayName = "CardDescription";
418
- var CardContent = React16__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn("p-6 pt-0", className), ...props }));
555
+ var CardContent = React18__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn("p-6 pt-0", className), ...props }));
419
556
  CardContent.displayName = "CardContent";
420
- var CardFooter = React16__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
557
+ var CardFooter = React18__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
421
558
  "div",
422
559
  {
423
560
  ref,
@@ -426,7 +563,7 @@ var CardFooter = React16__namespace.forwardRef(({ className, ...props }, ref) =>
426
563
  }
427
564
  ));
428
565
  CardFooter.displayName = "CardFooter";
429
- var Header = React16__namespace.default.forwardRef(
566
+ var Header = React18__namespace.default.forwardRef(
430
567
  ({ children, className }, ref) => {
431
568
  return /* @__PURE__ */ jsxRuntime.jsx(
432
569
  "header",
@@ -442,7 +579,7 @@ var Header = React16__namespace.default.forwardRef(
442
579
  }
443
580
  );
444
581
  Header.displayName = "Header";
445
- var NavigationMenu = React16__namespace.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
582
+ var NavigationMenu = React18__namespace.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
446
583
  NavigationMenuPrimitive__namespace.Root,
447
584
  {
448
585
  ref,
@@ -458,7 +595,7 @@ var NavigationMenu = React16__namespace.forwardRef(({ className, children, ...pr
458
595
  }
459
596
  ));
460
597
  NavigationMenu.displayName = NavigationMenuPrimitive__namespace.Root.displayName;
461
- var NavigationMenuList = React16__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
598
+ var NavigationMenuList = React18__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
462
599
  NavigationMenuPrimitive__namespace.List,
463
600
  {
464
601
  ref,
@@ -474,7 +611,7 @@ var NavigationMenuItem = NavigationMenuPrimitive__namespace.Item;
474
611
  var navigationMenuTriggerStyle = classVarianceAuthority.cva(
475
612
  "group inline-flex h-9 w-max items-center justify-center rounded-md bg-background px-4 py-2 text-sm font-medium transition-colors hover:bg-accent hover:text-accent-foreground focus:bg-accent focus:text-accent-foreground focus:outline-none disabled:pointer-events-none disabled:opacity-50 data-[state=open]:text-accent-foreground data-[state=open]:bg-accent/50 data-[state=open]:hover:bg-accent data-[state=open]:focus:bg-accent"
476
613
  );
477
- var NavigationMenuTrigger = React16__namespace.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
614
+ var NavigationMenuTrigger = React18__namespace.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
478
615
  NavigationMenuPrimitive__namespace.Trigger,
479
616
  {
480
617
  ref,
@@ -494,7 +631,7 @@ var NavigationMenuTrigger = React16__namespace.forwardRef(({ className, children
494
631
  }
495
632
  ));
496
633
  NavigationMenuTrigger.displayName = NavigationMenuPrimitive__namespace.Trigger.displayName;
497
- var NavigationMenuContent = React16__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
634
+ var NavigationMenuContent = React18__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
498
635
  NavigationMenuPrimitive__namespace.Content,
499
636
  {
500
637
  ref,
@@ -507,7 +644,7 @@ var NavigationMenuContent = React16__namespace.forwardRef(({ className, ...props
507
644
  ));
508
645
  NavigationMenuContent.displayName = NavigationMenuPrimitive__namespace.Content.displayName;
509
646
  var NavigationMenuLink = NavigationMenuPrimitive__namespace.Link;
510
- var NavigationMenuViewport = React16__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("absolute left-0 top-full flex justify-center"), children: /* @__PURE__ */ jsxRuntime.jsx(
647
+ var NavigationMenuViewport = React18__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("absolute left-0 top-full flex justify-center"), children: /* @__PURE__ */ jsxRuntime.jsx(
511
648
  NavigationMenuPrimitive__namespace.Viewport,
512
649
  {
513
650
  className: cn(
@@ -519,7 +656,7 @@ var NavigationMenuViewport = React16__namespace.forwardRef(({ className, ...prop
519
656
  }
520
657
  ) }));
521
658
  NavigationMenuViewport.displayName = NavigationMenuPrimitive__namespace.Viewport.displayName;
522
- var NavigationMenuIndicator = React16__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
659
+ var NavigationMenuIndicator = React18__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
523
660
  NavigationMenuPrimitive__namespace.Indicator,
524
661
  {
525
662
  ref,
@@ -532,147 +669,705 @@ var NavigationMenuIndicator = React16__namespace.forwardRef(({ className, ...pro
532
669
  }
533
670
  ));
534
671
  NavigationMenuIndicator.displayName = NavigationMenuPrimitive__namespace.Indicator.displayName;
535
- var Sheet = SheetPrimitive__namespace.Root;
536
- var SheetTrigger = SheetPrimitive__namespace.Trigger;
537
- var SheetClose = SheetPrimitive__namespace.Close;
538
- var SheetPortal = SheetPrimitive__namespace.Portal;
539
- var SheetOverlay = React16__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
540
- SheetPrimitive__namespace.Overlay,
541
- {
542
- className: cn(
543
- "fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
544
- className
545
- ),
546
- ...props,
547
- ref
548
- }
549
- ));
550
- SheetOverlay.displayName = SheetPrimitive__namespace.Overlay.displayName;
551
- var sheetVariants = classVarianceAuthority.cva(
552
- "fixed z-50 gap-4 bg-background p-6 shadow-lg transition ease-in-out data-[state=closed]:duration-300 data-[state=open]:duration-500 data-[state=open]:animate-in data-[state=closed]:animate-out",
553
- {
554
- variants: {
555
- side: {
556
- top: "inset-x-0 top-0 border-b data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top",
557
- bottom: "inset-x-0 bottom-0 border-t data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom",
558
- left: "inset-y-0 left-0 h-full w-3/4 border-r data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left sm:max-w-sm",
559
- right: "inset-y-0 right-0 h-full w-3/4 border-l data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right sm:max-w-sm"
560
- }
561
- },
562
- defaultVariants: {
563
- side: "right"
672
+ function Breadcrumb({ ...props }) {
673
+ return /* @__PURE__ */ jsxRuntime.jsx("nav", { "aria-label": "breadcrumb", "data-slot": "breadcrumb", ...props });
674
+ }
675
+ function BreadcrumbList({ className, ...props }) {
676
+ return /* @__PURE__ */ jsxRuntime.jsx(
677
+ "ol",
678
+ {
679
+ "data-slot": "breadcrumb-list",
680
+ className: cn(
681
+ "text-muted-foreground flex flex-wrap items-center gap-1.5 text-sm break-words sm:gap-2.5",
682
+ className
683
+ ),
684
+ ...props
564
685
  }
565
- }
566
- );
567
- var SheetContent = React16__namespace.forwardRef(({ side = "right", className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(SheetPortal, { children: [
568
- /* @__PURE__ */ jsxRuntime.jsx(SheetOverlay, {}),
569
- /* @__PURE__ */ jsxRuntime.jsxs(
570
- SheetPrimitive__namespace.Content,
686
+ );
687
+ }
688
+ function BreadcrumbItem({ className, ...props }) {
689
+ return /* @__PURE__ */ jsxRuntime.jsx(
690
+ "li",
571
691
  {
572
- ref,
573
- className: cn(sheetVariants({ side }), className),
574
- ...props,
575
- children: [
576
- /* @__PURE__ */ jsxRuntime.jsxs(SheetPrimitive__namespace.Close, { className: "absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-secondary", children: [
577
- /* @__PURE__ */ jsxRuntime.jsx(lucideReact.X, { className: "h-4 w-4" }),
578
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: "Close" })
579
- ] }),
580
- children
581
- ]
692
+ "data-slot": "breadcrumb-item",
693
+ className: cn("inline-flex items-center gap-1.5", className),
694
+ ...props
582
695
  }
583
- )
584
- ] }));
585
- SheetContent.displayName = SheetPrimitive__namespace.Content.displayName;
586
- var SheetHeader = ({
696
+ );
697
+ }
698
+ function BreadcrumbLink({
699
+ asChild,
587
700
  className,
588
701
  ...props
589
- }) => /* @__PURE__ */ jsxRuntime.jsx(
590
- "div",
591
- {
592
- className: cn(
593
- "flex flex-col space-y-2 text-center sm:text-left",
594
- className
595
- ),
596
- ...props
597
- }
598
- );
599
- SheetHeader.displayName = "SheetHeader";
600
- var SheetFooter = ({
702
+ }) {
703
+ const Comp = asChild ? reactSlot.Slot : "a";
704
+ return /* @__PURE__ */ jsxRuntime.jsx(
705
+ Comp,
706
+ {
707
+ "data-slot": "breadcrumb-link",
708
+ className: cn("hover:text-foreground transition-colors", className),
709
+ ...props
710
+ }
711
+ );
712
+ }
713
+ function BreadcrumbPage({ className, ...props }) {
714
+ return /* @__PURE__ */ jsxRuntime.jsx(
715
+ "span",
716
+ {
717
+ "data-slot": "breadcrumb-page",
718
+ role: "link",
719
+ "aria-disabled": "true",
720
+ "aria-current": "page",
721
+ className: cn("text-foreground font-normal", className),
722
+ ...props
723
+ }
724
+ );
725
+ }
726
+ function BreadcrumbSeparator({
727
+ children,
601
728
  className,
602
729
  ...props
603
- }) => /* @__PURE__ */ jsxRuntime.jsx(
604
- "div",
605
- {
606
- className: cn(
607
- "flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",
608
- className
609
- ),
610
- ...props
611
- }
612
- );
613
- SheetFooter.displayName = "SheetFooter";
614
- var SheetTitle = React16__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
615
- SheetPrimitive__namespace.Title,
616
- {
617
- ref,
618
- className: cn("text-lg font-semibold text-foreground", className),
619
- ...props
620
- }
621
- ));
622
- SheetTitle.displayName = SheetPrimitive__namespace.Title.displayName;
623
- var SheetDescription = React16__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
624
- SheetPrimitive__namespace.Description,
625
- {
626
- ref,
627
- className: cn("text-sm text-muted-foreground", className),
628
- ...props
629
- }
630
- ));
631
- SheetDescription.displayName = SheetPrimitive__namespace.Description.displayName;
632
- var Dialog = SheetPrimitive__namespace.Root;
633
- var DialogTrigger = SheetPrimitive__namespace.Trigger;
634
- var DialogPortal = SheetPrimitive__namespace.Portal;
635
- var DialogClose = SheetPrimitive__namespace.Close;
636
- var DialogOverlay = React16__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
637
- SheetPrimitive__namespace.Overlay,
638
- {
639
- ref,
640
- className: cn(
641
- "fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
642
- className
643
- ),
644
- ...props
645
- }
646
- ));
647
- DialogOverlay.displayName = SheetPrimitive__namespace.Overlay.displayName;
648
- var DialogContent = React16__namespace.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(DialogPortal, { children: [
649
- /* @__PURE__ */ jsxRuntime.jsx(DialogOverlay, {}),
650
- /* @__PURE__ */ jsxRuntime.jsxs(
651
- SheetPrimitive__namespace.Content,
730
+ }) {
731
+ return /* @__PURE__ */ jsxRuntime.jsx(
732
+ "li",
652
733
  {
653
- ref,
654
- className: cn(
655
- "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%] sm:rounded-lg",
656
- className
657
- ),
734
+ "data-slot": "breadcrumb-separator",
735
+ role: "presentation",
736
+ "aria-hidden": "true",
737
+ className: cn("[&>svg]:size-3.5", className),
738
+ ...props,
739
+ children: children ?? /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ChevronRight, {})
740
+ }
741
+ );
742
+ }
743
+ function BreadcrumbEllipsis({
744
+ className,
745
+ ...props
746
+ }) {
747
+ return /* @__PURE__ */ jsxRuntime.jsxs(
748
+ "span",
749
+ {
750
+ "data-slot": "breadcrumb-ellipsis",
751
+ role: "presentation",
752
+ "aria-hidden": "true",
753
+ className: cn("flex size-9 items-center justify-center", className),
658
754
  ...props,
659
755
  children: [
660
- children,
661
- /* @__PURE__ */ jsxRuntime.jsxs(SheetPrimitive__namespace.Close, { className: "absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground", children: [
662
- /* @__PURE__ */ jsxRuntime.jsx(lucideReact.X, { className: "h-4 w-4" }),
663
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: "Close" })
664
- ] })
756
+ /* @__PURE__ */ jsxRuntime.jsx(lucideReact.MoreHorizontal, { className: "size-4" }),
757
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: "More" })
665
758
  ]
666
759
  }
667
- )
668
- ] }));
669
- DialogContent.displayName = SheetPrimitive__namespace.Content.displayName;
670
- var DialogHeader = ({
760
+ );
761
+ }
762
+ var ChevronRightIcon = ({ className = "" }) => {
763
+ return /* @__PURE__ */ jsxRuntime.jsx(
764
+ "svg",
765
+ {
766
+ className,
767
+ width: "16",
768
+ height: "16",
769
+ viewBox: "0 0 24 24",
770
+ fill: "none",
771
+ stroke: "currentColor",
772
+ strokeWidth: "2",
773
+ strokeLinecap: "round",
774
+ strokeLinejoin: "round",
775
+ children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "m9 18 6-6-6-6" })
776
+ }
777
+ );
778
+ };
779
+ var CircleIcon = ({ className = "" }) => {
780
+ return /* @__PURE__ */ jsxRuntime.jsx(
781
+ "svg",
782
+ {
783
+ className,
784
+ width: "16",
785
+ height: "16",
786
+ viewBox: "0 0 24 24",
787
+ fill: "none",
788
+ stroke: "currentColor",
789
+ strokeWidth: "2",
790
+ strokeLinecap: "round",
791
+ strokeLinejoin: "round",
792
+ children: /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "12", cy: "12", r: "10" })
793
+ }
794
+ );
795
+ };
796
+ function Menubar({
671
797
  className,
672
798
  ...props
673
- }) => /* @__PURE__ */ jsxRuntime.jsx(
674
- "div",
675
- {
799
+ }) {
800
+ return /* @__PURE__ */ jsxRuntime.jsx(
801
+ MenubarPrimitive__namespace.Root,
802
+ {
803
+ "data-slot": "menubar",
804
+ className: cn(
805
+ "bg-background flex h-9 items-center gap-1 rounded-md border p-1 shadow-xs",
806
+ className
807
+ ),
808
+ ...props
809
+ }
810
+ );
811
+ }
812
+ function MenubarMenu({
813
+ ...props
814
+ }) {
815
+ return /* @__PURE__ */ jsxRuntime.jsx(MenubarPrimitive__namespace.Menu, { "data-slot": "menubar-menu", ...props });
816
+ }
817
+ function MenubarGroup({
818
+ ...props
819
+ }) {
820
+ return /* @__PURE__ */ jsxRuntime.jsx(MenubarPrimitive__namespace.Group, { "data-slot": "menubar-group", ...props });
821
+ }
822
+ function MenubarPortal({
823
+ ...props
824
+ }) {
825
+ return /* @__PURE__ */ jsxRuntime.jsx(MenubarPrimitive__namespace.Portal, { "data-slot": "menubar-portal", ...props });
826
+ }
827
+ function MenubarRadioGroup({
828
+ ...props
829
+ }) {
830
+ return /* @__PURE__ */ jsxRuntime.jsx(MenubarPrimitive__namespace.RadioGroup, { "data-slot": "menubar-radio-group", ...props });
831
+ }
832
+ function MenubarTrigger({
833
+ className,
834
+ ...props
835
+ }) {
836
+ return /* @__PURE__ */ jsxRuntime.jsx(
837
+ MenubarPrimitive__namespace.Trigger,
838
+ {
839
+ "data-slot": "menubar-trigger",
840
+ className: cn(
841
+ "focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground flex items-center rounded-sm px-2 py-1 text-sm font-medium outline-hidden select-none",
842
+ className
843
+ ),
844
+ ...props
845
+ }
846
+ );
847
+ }
848
+ function MenubarContent({
849
+ className,
850
+ align = "start",
851
+ alignOffset = -4,
852
+ sideOffset = 8,
853
+ ...props
854
+ }) {
855
+ return /* @__PURE__ */ jsxRuntime.jsx(MenubarPortal, { children: /* @__PURE__ */ jsxRuntime.jsx(
856
+ MenubarPrimitive__namespace.Content,
857
+ {
858
+ "data-slot": "menubar-content",
859
+ align,
860
+ alignOffset,
861
+ sideOffset,
862
+ className: cn(
863
+ "bg-popover text-popover-foreground data-[state=open]:animate-in 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 z-50 min-w-[12rem] origin-(--radix-menubar-content-transform-origin) overflow-hidden rounded-md border p-1 shadow-md",
864
+ className
865
+ ),
866
+ ...props
867
+ }
868
+ ) });
869
+ }
870
+ function MenubarItem({
871
+ className,
872
+ inset,
873
+ variant = "default",
874
+ ...props
875
+ }) {
876
+ return /* @__PURE__ */ jsxRuntime.jsx(
877
+ MenubarPrimitive__namespace.Item,
878
+ {
879
+ "data-slot": "menubar-item",
880
+ "data-inset": inset,
881
+ "data-variant": variant,
882
+ className: cn(
883
+ "focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
884
+ className
885
+ ),
886
+ ...props
887
+ }
888
+ );
889
+ }
890
+ function MenubarCheckboxItem({
891
+ className,
892
+ children,
893
+ checked,
894
+ ...props
895
+ }) {
896
+ return /* @__PURE__ */ jsxRuntime.jsxs(
897
+ MenubarPrimitive__namespace.CheckboxItem,
898
+ {
899
+ "data-slot": "menubar-checkbox-item",
900
+ className: cn(
901
+ "focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-xs py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
902
+ className
903
+ ),
904
+ checked,
905
+ ...props,
906
+ children: [
907
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ jsxRuntime.jsx(MenubarPrimitive__namespace.ItemIndicator, { children: /* @__PURE__ */ jsxRuntime.jsx(CheckIcon, { className: "size-4" }) }) }),
908
+ children
909
+ ]
910
+ }
911
+ );
912
+ }
913
+ function MenubarRadioItem({
914
+ className,
915
+ children,
916
+ ...props
917
+ }) {
918
+ return /* @__PURE__ */ jsxRuntime.jsxs(
919
+ MenubarPrimitive__namespace.RadioItem,
920
+ {
921
+ "data-slot": "menubar-radio-item",
922
+ className: cn(
923
+ "focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-xs py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
924
+ className
925
+ ),
926
+ ...props,
927
+ children: [
928
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ jsxRuntime.jsx(MenubarPrimitive__namespace.ItemIndicator, { children: /* @__PURE__ */ jsxRuntime.jsx(CircleIcon, { className: "size-2 fill-current" }) }) }),
929
+ children
930
+ ]
931
+ }
932
+ );
933
+ }
934
+ function MenubarLabel({
935
+ className,
936
+ inset,
937
+ ...props
938
+ }) {
939
+ return /* @__PURE__ */ jsxRuntime.jsx(
940
+ MenubarPrimitive__namespace.Label,
941
+ {
942
+ "data-slot": "menubar-label",
943
+ "data-inset": inset,
944
+ className: cn(
945
+ "px-2 py-1.5 text-sm font-medium data-[inset]:pl-8",
946
+ className
947
+ ),
948
+ ...props
949
+ }
950
+ );
951
+ }
952
+ function MenubarSeparator({
953
+ className,
954
+ ...props
955
+ }) {
956
+ return /* @__PURE__ */ jsxRuntime.jsx(
957
+ MenubarPrimitive__namespace.Separator,
958
+ {
959
+ "data-slot": "menubar-separator",
960
+ className: cn("bg-border -mx-1 my-1 h-px", className),
961
+ ...props
962
+ }
963
+ );
964
+ }
965
+ function MenubarShortcut({
966
+ className,
967
+ ...props
968
+ }) {
969
+ return /* @__PURE__ */ jsxRuntime.jsx(
970
+ "span",
971
+ {
972
+ "data-slot": "menubar-shortcut",
973
+ className: cn(
974
+ "text-muted-foreground ml-auto text-xs tracking-widest",
975
+ className
976
+ ),
977
+ ...props
978
+ }
979
+ );
980
+ }
981
+ function MenubarSub({
982
+ ...props
983
+ }) {
984
+ return /* @__PURE__ */ jsxRuntime.jsx(MenubarPrimitive__namespace.Sub, { "data-slot": "menubar-sub", ...props });
985
+ }
986
+ function MenubarSubTrigger({
987
+ className,
988
+ inset,
989
+ children,
990
+ ...props
991
+ }) {
992
+ return /* @__PURE__ */ jsxRuntime.jsxs(
993
+ MenubarPrimitive__namespace.SubTrigger,
994
+ {
995
+ "data-slot": "menubar-sub-trigger",
996
+ "data-inset": inset,
997
+ className: cn(
998
+ "focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-none select-none data-[inset]:pl-8",
999
+ className
1000
+ ),
1001
+ ...props,
1002
+ children: [
1003
+ children,
1004
+ /* @__PURE__ */ jsxRuntime.jsx(ChevronRightIcon, { className: "ml-auto h-4 w-4" })
1005
+ ]
1006
+ }
1007
+ );
1008
+ }
1009
+ function MenubarSubContent({
1010
+ className,
1011
+ ...props
1012
+ }) {
1013
+ return /* @__PURE__ */ jsxRuntime.jsx(
1014
+ MenubarPrimitive__namespace.SubContent,
1015
+ {
1016
+ "data-slot": "menubar-sub-content",
1017
+ className: cn(
1018
+ "bg-popover text-popover-foreground 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 z-50 min-w-[8rem] origin-(--radix-menubar-content-transform-origin) overflow-hidden rounded-md border p-1 shadow-lg",
1019
+ className
1020
+ ),
1021
+ ...props
1022
+ }
1023
+ );
1024
+ }
1025
+ var ChevronLeftIcon = ({ className = "" }) => {
1026
+ return /* @__PURE__ */ jsxRuntime.jsx(
1027
+ "svg",
1028
+ {
1029
+ className,
1030
+ width: "16",
1031
+ height: "16",
1032
+ viewBox: "0 0 24 24",
1033
+ fill: "none",
1034
+ stroke: "currentColor",
1035
+ strokeWidth: "2",
1036
+ strokeLinecap: "round",
1037
+ strokeLinejoin: "round",
1038
+ children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "m15 18-6-6 6-6" })
1039
+ }
1040
+ );
1041
+ };
1042
+ var MoreHorizontalIcon = ({ className = "" }) => {
1043
+ return /* @__PURE__ */ jsxRuntime.jsxs(
1044
+ "svg",
1045
+ {
1046
+ className,
1047
+ width: "16",
1048
+ height: "16",
1049
+ viewBox: "0 0 24 24",
1050
+ fill: "none",
1051
+ stroke: "currentColor",
1052
+ strokeWidth: "2",
1053
+ strokeLinecap: "round",
1054
+ strokeLinejoin: "round",
1055
+ children: [
1056
+ /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "12", cy: "12", r: "1" }),
1057
+ /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "19", cy: "12", r: "1" }),
1058
+ /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "5", cy: "12", r: "1" })
1059
+ ]
1060
+ }
1061
+ );
1062
+ };
1063
+ function Pagination({ className, ...props }) {
1064
+ return /* @__PURE__ */ jsxRuntime.jsx(
1065
+ "nav",
1066
+ {
1067
+ role: "navigation",
1068
+ "aria-label": "pagination",
1069
+ "data-slot": "pagination",
1070
+ className: cn("mx-auto flex w-full justify-center", className),
1071
+ ...props
1072
+ }
1073
+ );
1074
+ }
1075
+ function PaginationContent({
1076
+ className,
1077
+ ...props
1078
+ }) {
1079
+ return /* @__PURE__ */ jsxRuntime.jsx(
1080
+ "ul",
1081
+ {
1082
+ "data-slot": "pagination-content",
1083
+ className: cn("flex flex-row items-center gap-1", className),
1084
+ ...props
1085
+ }
1086
+ );
1087
+ }
1088
+ function PaginationItem({ ...props }) {
1089
+ return /* @__PURE__ */ jsxRuntime.jsx("li", { "data-slot": "pagination-item", ...props });
1090
+ }
1091
+ function PaginationLink({
1092
+ className,
1093
+ isActive,
1094
+ size = uikitContracts.ButtonSize.Icon,
1095
+ asChild,
1096
+ ...props
1097
+ }) {
1098
+ const Comp = asChild ? reactSlot.Slot : "a";
1099
+ return /* @__PURE__ */ jsxRuntime.jsx(
1100
+ Comp,
1101
+ {
1102
+ "aria-current": isActive ? "page" : void 0,
1103
+ "data-slot": "pagination-link",
1104
+ "data-active": isActive,
1105
+ className: cn(
1106
+ buttonVariants({
1107
+ variant: isActive ? uikitContracts.ButtonVariant.Outline : uikitContracts.ButtonVariant.Ghost,
1108
+ size
1109
+ }),
1110
+ className
1111
+ ),
1112
+ ...props
1113
+ }
1114
+ );
1115
+ }
1116
+ function PaginationPrevious({
1117
+ className,
1118
+ children,
1119
+ ...props
1120
+ }) {
1121
+ return /* @__PURE__ */ jsxRuntime.jsxs(
1122
+ PaginationLink,
1123
+ {
1124
+ "aria-label": "Go to previous page",
1125
+ size: uikitContracts.ButtonSize.Default,
1126
+ className: cn("gap-1 px-2.5 sm:pl-2.5", className),
1127
+ ...props,
1128
+ children: [
1129
+ /* @__PURE__ */ jsxRuntime.jsx(ChevronLeftIcon, { className: "h-4 w-4" }),
1130
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "hidden sm:block", children: children ?? "Previous" })
1131
+ ]
1132
+ }
1133
+ );
1134
+ }
1135
+ function PaginationNext({
1136
+ className,
1137
+ children,
1138
+ ...props
1139
+ }) {
1140
+ return /* @__PURE__ */ jsxRuntime.jsxs(
1141
+ PaginationLink,
1142
+ {
1143
+ "aria-label": "Go to next page",
1144
+ size: uikitContracts.ButtonSize.Default,
1145
+ className: cn("gap-1 px-2.5 sm:pr-2.5", className),
1146
+ ...props,
1147
+ children: [
1148
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "hidden sm:block", children: children ?? "Next" }),
1149
+ /* @__PURE__ */ jsxRuntime.jsx(ChevronRightIcon, { className: "h-4 w-4" })
1150
+ ]
1151
+ }
1152
+ );
1153
+ }
1154
+ function PaginationEllipsis({
1155
+ className,
1156
+ ...props
1157
+ }) {
1158
+ return /* @__PURE__ */ jsxRuntime.jsxs(
1159
+ "span",
1160
+ {
1161
+ "aria-hidden": true,
1162
+ "data-slot": "pagination-ellipsis",
1163
+ className: cn("flex size-9 items-center justify-center", className),
1164
+ ...props,
1165
+ children: [
1166
+ /* @__PURE__ */ jsxRuntime.jsx(MoreHorizontalIcon, { className: "h-4 w-4" }),
1167
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: "More pages" })
1168
+ ]
1169
+ }
1170
+ );
1171
+ }
1172
+ function Tabs({
1173
+ className,
1174
+ ...props
1175
+ }) {
1176
+ return /* @__PURE__ */ jsxRuntime.jsx(
1177
+ TabsPrimitive__namespace.Root,
1178
+ {
1179
+ "data-slot": "tabs",
1180
+ className: cn("flex flex-col gap-2", className),
1181
+ ...props
1182
+ }
1183
+ );
1184
+ }
1185
+ function TabsList({
1186
+ className,
1187
+ ...props
1188
+ }) {
1189
+ return /* @__PURE__ */ jsxRuntime.jsx(
1190
+ TabsPrimitive__namespace.List,
1191
+ {
1192
+ "data-slot": "tabs-list",
1193
+ className: cn(
1194
+ "bg-muted text-muted-foreground inline-flex h-9 w-fit items-center justify-center rounded-lg p-[3px]",
1195
+ className
1196
+ ),
1197
+ ...props
1198
+ }
1199
+ );
1200
+ }
1201
+ function TabsTrigger({
1202
+ className,
1203
+ ...props
1204
+ }) {
1205
+ return /* @__PURE__ */ jsxRuntime.jsx(
1206
+ TabsPrimitive__namespace.Trigger,
1207
+ {
1208
+ "data-slot": "tabs-trigger",
1209
+ className: cn(
1210
+ "data-[state=active]:bg-background dark:data-[state=active]:text-foreground focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring dark:data-[state=active]:border-input dark:data-[state=active]:bg-input/30 text-foreground dark:text-muted-foreground inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-md border border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-sm [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
1211
+ className
1212
+ ),
1213
+ ...props
1214
+ }
1215
+ );
1216
+ }
1217
+ function TabsContent({
1218
+ className,
1219
+ ...props
1220
+ }) {
1221
+ return /* @__PURE__ */ jsxRuntime.jsx(
1222
+ TabsPrimitive__namespace.Content,
1223
+ {
1224
+ "data-slot": "tabs-content",
1225
+ className: cn("flex-1 outline-none", className),
1226
+ ...props
1227
+ }
1228
+ );
1229
+ }
1230
+ var Sheet = SheetPrimitive__namespace.Root;
1231
+ var SheetTrigger = SheetPrimitive__namespace.Trigger;
1232
+ var SheetClose = SheetPrimitive__namespace.Close;
1233
+ var SheetPortal = SheetPrimitive__namespace.Portal;
1234
+ var SheetOverlay = React18__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1235
+ SheetPrimitive__namespace.Overlay,
1236
+ {
1237
+ className: cn(
1238
+ "fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
1239
+ className
1240
+ ),
1241
+ ...props,
1242
+ ref
1243
+ }
1244
+ ));
1245
+ SheetOverlay.displayName = SheetPrimitive__namespace.Overlay.displayName;
1246
+ var sheetVariants = classVarianceAuthority.cva(
1247
+ "fixed z-50 gap-4 bg-background p-6 shadow-lg transition ease-in-out data-[state=closed]:duration-300 data-[state=open]:duration-500 data-[state=open]:animate-in data-[state=closed]:animate-out",
1248
+ {
1249
+ variants: {
1250
+ side: {
1251
+ top: "inset-x-0 top-0 border-b data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top",
1252
+ bottom: "inset-x-0 bottom-0 border-t data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom",
1253
+ left: "inset-y-0 left-0 h-full w-3/4 border-r data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left sm:max-w-sm",
1254
+ right: "inset-y-0 right-0 h-full w-3/4 border-l data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right sm:max-w-sm"
1255
+ }
1256
+ },
1257
+ defaultVariants: {
1258
+ side: "right"
1259
+ }
1260
+ }
1261
+ );
1262
+ var SheetContent = React18__namespace.forwardRef(({ side = "right", className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(SheetPortal, { children: [
1263
+ /* @__PURE__ */ jsxRuntime.jsx(SheetOverlay, {}),
1264
+ /* @__PURE__ */ jsxRuntime.jsxs(
1265
+ SheetPrimitive__namespace.Content,
1266
+ {
1267
+ ref,
1268
+ className: cn(sheetVariants({ side }), className),
1269
+ ...props,
1270
+ children: [
1271
+ /* @__PURE__ */ jsxRuntime.jsxs(SheetPrimitive__namespace.Close, { className: "absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-secondary", children: [
1272
+ /* @__PURE__ */ jsxRuntime.jsx(lucideReact.X, { className: "h-4 w-4" }),
1273
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: "Close" })
1274
+ ] }),
1275
+ children
1276
+ ]
1277
+ }
1278
+ )
1279
+ ] }));
1280
+ SheetContent.displayName = SheetPrimitive__namespace.Content.displayName;
1281
+ var SheetHeader = ({
1282
+ className,
1283
+ ...props
1284
+ }) => /* @__PURE__ */ jsxRuntime.jsx(
1285
+ "div",
1286
+ {
1287
+ className: cn(
1288
+ "flex flex-col space-y-2 text-center sm:text-left",
1289
+ className
1290
+ ),
1291
+ ...props
1292
+ }
1293
+ );
1294
+ SheetHeader.displayName = "SheetHeader";
1295
+ var SheetFooter = ({
1296
+ className,
1297
+ ...props
1298
+ }) => /* @__PURE__ */ jsxRuntime.jsx(
1299
+ "div",
1300
+ {
1301
+ className: cn(
1302
+ "flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",
1303
+ className
1304
+ ),
1305
+ ...props
1306
+ }
1307
+ );
1308
+ SheetFooter.displayName = "SheetFooter";
1309
+ var SheetTitle = React18__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1310
+ SheetPrimitive__namespace.Title,
1311
+ {
1312
+ ref,
1313
+ className: cn("text-lg font-semibold text-foreground", className),
1314
+ ...props
1315
+ }
1316
+ ));
1317
+ SheetTitle.displayName = SheetPrimitive__namespace.Title.displayName;
1318
+ var SheetDescription = React18__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1319
+ SheetPrimitive__namespace.Description,
1320
+ {
1321
+ ref,
1322
+ className: cn("text-sm text-muted-foreground", className),
1323
+ ...props
1324
+ }
1325
+ ));
1326
+ SheetDescription.displayName = SheetPrimitive__namespace.Description.displayName;
1327
+ var Dialog = SheetPrimitive__namespace.Root;
1328
+ var DialogTrigger = SheetPrimitive__namespace.Trigger;
1329
+ var DialogPortal = SheetPrimitive__namespace.Portal;
1330
+ var DialogClose = SheetPrimitive__namespace.Close;
1331
+ var DialogOverlay = React18__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1332
+ SheetPrimitive__namespace.Overlay,
1333
+ {
1334
+ ref,
1335
+ className: cn(
1336
+ "fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
1337
+ className
1338
+ ),
1339
+ ...props
1340
+ }
1341
+ ));
1342
+ DialogOverlay.displayName = SheetPrimitive__namespace.Overlay.displayName;
1343
+ var DialogContent = React18__namespace.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(DialogPortal, { children: [
1344
+ /* @__PURE__ */ jsxRuntime.jsx(DialogOverlay, {}),
1345
+ /* @__PURE__ */ jsxRuntime.jsxs(
1346
+ SheetPrimitive__namespace.Content,
1347
+ {
1348
+ ref,
1349
+ className: cn(
1350
+ "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%] sm:rounded-lg",
1351
+ className
1352
+ ),
1353
+ ...props,
1354
+ children: [
1355
+ children,
1356
+ /* @__PURE__ */ jsxRuntime.jsxs(SheetPrimitive__namespace.Close, { className: "absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground", children: [
1357
+ /* @__PURE__ */ jsxRuntime.jsx(lucideReact.X, { className: "h-4 w-4" }),
1358
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: "Close" })
1359
+ ] })
1360
+ ]
1361
+ }
1362
+ )
1363
+ ] }));
1364
+ DialogContent.displayName = SheetPrimitive__namespace.Content.displayName;
1365
+ var DialogHeader = ({
1366
+ className,
1367
+ ...props
1368
+ }) => /* @__PURE__ */ jsxRuntime.jsx(
1369
+ "div",
1370
+ {
676
1371
  className: cn(
677
1372
  "flex flex-col space-y-1.5 text-center sm:text-left",
678
1373
  className
@@ -684,42 +1379,606 @@ DialogHeader.displayName = "DialogHeader";
684
1379
  var DialogFooter = ({
685
1380
  className,
686
1381
  ...props
687
- }) => /* @__PURE__ */ jsxRuntime.jsx(
688
- "div",
1382
+ }) => /* @__PURE__ */ jsxRuntime.jsx(
1383
+ "div",
1384
+ {
1385
+ className: cn(
1386
+ "flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",
1387
+ className
1388
+ ),
1389
+ ...props
1390
+ }
1391
+ );
1392
+ DialogFooter.displayName = "DialogFooter";
1393
+ var DialogTitle = React18__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1394
+ SheetPrimitive__namespace.Title,
1395
+ {
1396
+ ref,
1397
+ className: cn(
1398
+ "text-lg font-semibold leading-none tracking-tight",
1399
+ className
1400
+ ),
1401
+ ...props
1402
+ }
1403
+ ));
1404
+ DialogTitle.displayName = SheetPrimitive__namespace.Title.displayName;
1405
+ var DialogDescription = React18__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1406
+ SheetPrimitive__namespace.Description,
1407
+ {
1408
+ ref,
1409
+ className: cn("text-sm text-muted-foreground", className),
1410
+ ...props
1411
+ }
1412
+ ));
1413
+ DialogDescription.displayName = SheetPrimitive__namespace.Description.displayName;
1414
+ function Drawer({
1415
+ ...props
1416
+ }) {
1417
+ return /* @__PURE__ */ jsxRuntime.jsx(vaul.Drawer.Root, { "data-slot": "drawer", ...props });
1418
+ }
1419
+ function DrawerTrigger({
1420
+ ...props
1421
+ }) {
1422
+ return /* @__PURE__ */ jsxRuntime.jsx(vaul.Drawer.Trigger, { "data-slot": "drawer-trigger", ...props });
1423
+ }
1424
+ function DrawerPortal({
1425
+ ...props
1426
+ }) {
1427
+ return /* @__PURE__ */ jsxRuntime.jsx(vaul.Drawer.Portal, { "data-slot": "drawer-portal", ...props });
1428
+ }
1429
+ function DrawerClose({
1430
+ ...props
1431
+ }) {
1432
+ return /* @__PURE__ */ jsxRuntime.jsx(vaul.Drawer.Close, { "data-slot": "drawer-close", ...props });
1433
+ }
1434
+ function DrawerOverlay({
1435
+ className,
1436
+ ...props
1437
+ }) {
1438
+ return /* @__PURE__ */ jsxRuntime.jsx(
1439
+ vaul.Drawer.Overlay,
1440
+ {
1441
+ "data-slot": "drawer-overlay",
1442
+ className: cn(
1443
+ "data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50",
1444
+ className
1445
+ ),
1446
+ ...props
1447
+ }
1448
+ );
1449
+ }
1450
+ function DrawerContent({
1451
+ className,
1452
+ children,
1453
+ ...props
1454
+ }) {
1455
+ return /* @__PURE__ */ jsxRuntime.jsxs(DrawerPortal, { "data-slot": "drawer-portal", children: [
1456
+ /* @__PURE__ */ jsxRuntime.jsx(DrawerOverlay, {}),
1457
+ /* @__PURE__ */ jsxRuntime.jsxs(
1458
+ vaul.Drawer.Content,
1459
+ {
1460
+ "data-slot": "drawer-content",
1461
+ className: cn(
1462
+ "group/drawer-content bg-background fixed z-50 flex h-auto flex-col",
1463
+ "data-[vaul-drawer-direction=top]:inset-x-0 data-[vaul-drawer-direction=top]:top-0 data-[vaul-drawer-direction=top]:mb-24 data-[vaul-drawer-direction=top]:max-h-[80vh] data-[vaul-drawer-direction=top]:rounded-b-lg data-[vaul-drawer-direction=top]:border-b",
1464
+ "data-[vaul-drawer-direction=bottom]:inset-x-0 data-[vaul-drawer-direction=bottom]:bottom-0 data-[vaul-drawer-direction=bottom]:mt-24 data-[vaul-drawer-direction=bottom]:max-h-[80vh] data-[vaul-drawer-direction=bottom]:rounded-t-lg data-[vaul-drawer-direction=bottom]:border-t",
1465
+ "data-[vaul-drawer-direction=right]:inset-y-0 data-[vaul-drawer-direction=right]:right-0 data-[vaul-drawer-direction=right]:w-3/4 data-[vaul-drawer-direction=right]:border-l data-[vaul-drawer-direction=right]:sm:max-w-sm",
1466
+ "data-[vaul-drawer-direction=left]:inset-y-0 data-[vaul-drawer-direction=left]:left-0 data-[vaul-drawer-direction=left]:w-3/4 data-[vaul-drawer-direction=left]:border-r data-[vaul-drawer-direction=left]:sm:max-w-sm",
1467
+ className
1468
+ ),
1469
+ ...props,
1470
+ children: [
1471
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "bg-muted mx-auto mt-4 hidden h-2 w-[100px] shrink-0 rounded-full group-data-[vaul-drawer-direction=bottom]/drawer-content:block" }),
1472
+ children
1473
+ ]
1474
+ }
1475
+ )
1476
+ ] });
1477
+ }
1478
+ function DrawerHeader({ className, ...props }) {
1479
+ return /* @__PURE__ */ jsxRuntime.jsx(
1480
+ "div",
1481
+ {
1482
+ "data-slot": "drawer-header",
1483
+ className: cn(
1484
+ "flex flex-col gap-1.5 p-4 text-center sm:text-left",
1485
+ className
1486
+ ),
1487
+ ...props
1488
+ }
1489
+ );
1490
+ }
1491
+ function DrawerFooter({ className, ...props }) {
1492
+ return /* @__PURE__ */ jsxRuntime.jsx(
1493
+ "div",
1494
+ {
1495
+ "data-slot": "drawer-footer",
1496
+ className: cn("mt-auto flex flex-col gap-2 p-4", className),
1497
+ ...props
1498
+ }
1499
+ );
1500
+ }
1501
+ function DrawerTitle({
1502
+ className,
1503
+ ...props
1504
+ }) {
1505
+ return /* @__PURE__ */ jsxRuntime.jsx(
1506
+ vaul.Drawer.Title,
1507
+ {
1508
+ "data-slot": "drawer-title",
1509
+ className: cn("text-lg font-semibold text-foreground", className),
1510
+ ...props
1511
+ }
1512
+ );
1513
+ }
1514
+ function DrawerDescription({
1515
+ className,
1516
+ ...props
1517
+ }) {
1518
+ return /* @__PURE__ */ jsxRuntime.jsx(
1519
+ vaul.Drawer.Description,
1520
+ {
1521
+ "data-slot": "drawer-description",
1522
+ className: cn("text-sm text-muted-foreground", className),
1523
+ ...props
1524
+ }
1525
+ );
1526
+ }
1527
+ function ResizablePanelGroup({
1528
+ className,
1529
+ ...props
1530
+ }) {
1531
+ return /* @__PURE__ */ jsxRuntime.jsx(
1532
+ ResizablePrimitive__namespace.PanelGroup,
1533
+ {
1534
+ "data-slot": "resizable-panel-group",
1535
+ className: cn(
1536
+ "flex h-full w-full data-[panel-group-direction=vertical]:flex-col",
1537
+ className
1538
+ ),
1539
+ ...props
1540
+ }
1541
+ );
1542
+ }
1543
+ function ResizablePanel({
1544
+ ...props
1545
+ }) {
1546
+ return /* @__PURE__ */ jsxRuntime.jsx(ResizablePrimitive__namespace.Panel, { "data-slot": "resizable-panel", ...props });
1547
+ }
1548
+ function ResizableHandle({
1549
+ withHandle,
1550
+ className,
1551
+ ...props
1552
+ }) {
1553
+ return /* @__PURE__ */ jsxRuntime.jsx(
1554
+ ResizablePrimitive__namespace.PanelResizeHandle,
1555
+ {
1556
+ "data-slot": "resizable-handle",
1557
+ className: cn(
1558
+ "bg-border focus-visible:ring-ring relative flex w-px items-center justify-center after:absolute after:inset-y-0 after:left-1/2 after:w-1 after:-translate-x-1/2 focus-visible:ring-1 focus-visible:ring-offset-1 focus-visible:outline-hidden data-[panel-group-direction=vertical]:h-px data-[panel-group-direction=vertical]:w-full data-[panel-group-direction=vertical]:after:left-0 data-[panel-group-direction=vertical]:after:h-1 data-[panel-group-direction=vertical]:after:w-full data-[panel-group-direction=vertical]:after:translate-x-0 data-[panel-group-direction=vertical]:after:-translate-y-1/2 [&[data-panel-group-direction=vertical]>div]:rotate-90",
1559
+ className
1560
+ ),
1561
+ ...props,
1562
+ children: withHandle && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "bg-border z-10 flex h-4 w-3 items-center justify-center rounded-sm border", children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.GripVertical, { className: "size-2.5" }) })
1563
+ }
1564
+ );
1565
+ }
1566
+ function ScrollArea({
1567
+ className,
1568
+ children,
1569
+ ...props
1570
+ }) {
1571
+ return /* @__PURE__ */ jsxRuntime.jsxs(
1572
+ ScrollAreaPrimitive__namespace.Root,
1573
+ {
1574
+ "data-slot": "scroll-area",
1575
+ className: cn("relative", className),
1576
+ ...props,
1577
+ children: [
1578
+ /* @__PURE__ */ jsxRuntime.jsx(
1579
+ ScrollAreaPrimitive__namespace.Viewport,
1580
+ {
1581
+ "data-slot": "scroll-area-viewport",
1582
+ className: "focus-visible:ring-ring/50 size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:outline-1",
1583
+ children
1584
+ }
1585
+ ),
1586
+ /* @__PURE__ */ jsxRuntime.jsx(ScrollBar, {}),
1587
+ /* @__PURE__ */ jsxRuntime.jsx(ScrollAreaPrimitive__namespace.Corner, {})
1588
+ ]
1589
+ }
1590
+ );
1591
+ }
1592
+ function ScrollBar({
1593
+ className,
1594
+ orientation = "vertical",
1595
+ ...props
1596
+ }) {
1597
+ return /* @__PURE__ */ jsxRuntime.jsx(
1598
+ ScrollAreaPrimitive__namespace.ScrollAreaScrollbar,
1599
+ {
1600
+ "data-slot": "scroll-area-scrollbar",
1601
+ orientation,
1602
+ className: cn(
1603
+ "flex touch-none p-px transition-colors select-none",
1604
+ orientation === "vertical" && "h-full w-2.5 border-l border-l-transparent",
1605
+ orientation === "horizontal" && "h-2.5 flex-col border-t border-t-transparent",
1606
+ className
1607
+ ),
1608
+ ...props,
1609
+ children: /* @__PURE__ */ jsxRuntime.jsx(
1610
+ ScrollAreaPrimitive__namespace.ScrollAreaThumb,
1611
+ {
1612
+ "data-slot": "scroll-area-thumb",
1613
+ className: "bg-border relative flex-1 rounded-full"
1614
+ }
1615
+ )
1616
+ }
1617
+ );
1618
+ }
1619
+ function Separator2({
1620
+ className,
1621
+ orientation = "horizontal",
1622
+ decorative = true,
1623
+ ...props
1624
+ }) {
1625
+ return /* @__PURE__ */ jsxRuntime.jsx(
1626
+ SeparatorPrimitive__namespace.Root,
1627
+ {
1628
+ "data-slot": "separator",
1629
+ decorative,
1630
+ orientation,
1631
+ className: cn(
1632
+ "bg-border shrink-0 data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-px",
1633
+ className
1634
+ ),
1635
+ ...props
1636
+ }
1637
+ );
1638
+ }
1639
+ var Accordion = React18__namespace.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1640
+ AccordionPrimitive__namespace.Root,
1641
+ {
1642
+ ref,
1643
+ "data-slot": "accordion",
1644
+ ...props
1645
+ }
1646
+ ));
1647
+ Accordion.displayName = "Accordion";
1648
+ var AccordionItem = React18__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1649
+ AccordionPrimitive__namespace.Item,
689
1650
  {
1651
+ ref,
1652
+ "data-slot": "accordion-item",
1653
+ className: cn("border-b last:border-b-0", className),
1654
+ ...props
1655
+ }
1656
+ ));
1657
+ AccordionItem.displayName = "AccordionItem";
1658
+ var AccordionTrigger = React18__namespace.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(AccordionPrimitive__namespace.Header, { className: "flex", children: /* @__PURE__ */ jsxRuntime.jsxs(
1659
+ AccordionPrimitive__namespace.Trigger,
1660
+ {
1661
+ ref,
1662
+ "data-slot": "accordion-trigger",
690
1663
  className: cn(
691
- "flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",
1664
+ "flex flex-1 items-start justify-between gap-4 rounded-md py-4 text-left text-sm font-medium transition-all outline-none hover:underline focus-visible:ring-[3px] focus-visible:border-ring focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 [&[data-state=open]>svg]:rotate-180",
692
1665
  className
693
1666
  ),
1667
+ ...props,
1668
+ children: [
1669
+ children,
1670
+ /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ChevronDown, { className: "h-4 w-4 shrink-0 text-muted-foreground transition-transform duration-200" })
1671
+ ]
1672
+ }
1673
+ ) }));
1674
+ AccordionTrigger.displayName = "AccordionTrigger";
1675
+ var AccordionContent = React18__namespace.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1676
+ AccordionPrimitive__namespace.Content,
1677
+ {
1678
+ ref,
1679
+ "data-slot": "accordion-content",
1680
+ className: "overflow-hidden text-sm data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down",
1681
+ ...props,
1682
+ children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("pt-0 pb-4", className), children })
1683
+ }
1684
+ ));
1685
+ AccordionContent.displayName = "AccordionContent";
1686
+ var CarouselContext = React18__namespace.createContext(null);
1687
+ function useCarousel() {
1688
+ const context = React18__namespace.useContext(CarouselContext);
1689
+ if (!context) {
1690
+ throw new Error("useCarousel must be used within a <Carousel />");
1691
+ }
1692
+ return context;
1693
+ }
1694
+ var Carousel = React18__namespace.forwardRef(
1695
+ ({
1696
+ orientation = "horizontal",
1697
+ opts,
1698
+ setApi,
1699
+ plugins,
1700
+ className,
1701
+ children,
694
1702
  ...props
1703
+ }, ref) => {
1704
+ const [carouselRef, api] = useEmblaCarousel__default.default(
1705
+ {
1706
+ ...opts,
1707
+ axis: orientation === "horizontal" ? "x" : "y"
1708
+ },
1709
+ plugins
1710
+ );
1711
+ const [canScrollPrev, setCanScrollPrev] = React18__namespace.useState(false);
1712
+ const [canScrollNext, setCanScrollNext] = React18__namespace.useState(false);
1713
+ const onSelect = React18__namespace.useCallback((api2) => {
1714
+ if (!api2) return;
1715
+ setCanScrollPrev(api2.canScrollPrev());
1716
+ setCanScrollNext(api2.canScrollNext());
1717
+ }, []);
1718
+ const scrollPrev = React18__namespace.useCallback(() => {
1719
+ api?.scrollPrev();
1720
+ }, [api]);
1721
+ const scrollNext = React18__namespace.useCallback(() => {
1722
+ api?.scrollNext();
1723
+ }, [api]);
1724
+ const handleKeyDown = React18__namespace.useCallback(
1725
+ (event) => {
1726
+ if (event.key === "ArrowLeft") {
1727
+ event.preventDefault();
1728
+ scrollPrev();
1729
+ } else if (event.key === "ArrowRight") {
1730
+ event.preventDefault();
1731
+ scrollNext();
1732
+ }
1733
+ },
1734
+ [scrollPrev, scrollNext]
1735
+ );
1736
+ React18__namespace.useEffect(() => {
1737
+ if (!api || !setApi) return;
1738
+ setApi(api);
1739
+ }, [api, setApi]);
1740
+ React18__namespace.useEffect(() => {
1741
+ if (!api) return;
1742
+ onSelect(api);
1743
+ api.on("reInit", onSelect);
1744
+ api.on("select", onSelect);
1745
+ return () => {
1746
+ api?.off("select", onSelect);
1747
+ };
1748
+ }, [api, onSelect]);
1749
+ return /* @__PURE__ */ jsxRuntime.jsx(
1750
+ CarouselContext.Provider,
1751
+ {
1752
+ value: {
1753
+ carouselRef,
1754
+ api,
1755
+ opts,
1756
+ orientation: orientation || (opts?.axis === "y" ? "vertical" : "horizontal"),
1757
+ scrollPrev,
1758
+ scrollNext,
1759
+ canScrollPrev,
1760
+ canScrollNext
1761
+ },
1762
+ children: /* @__PURE__ */ jsxRuntime.jsx(
1763
+ "div",
1764
+ {
1765
+ ref,
1766
+ onKeyDownCapture: handleKeyDown,
1767
+ className: cn("relative", className),
1768
+ role: "region",
1769
+ "aria-roledescription": "carousel",
1770
+ "data-slot": "carousel",
1771
+ ...props,
1772
+ children
1773
+ }
1774
+ )
1775
+ }
1776
+ );
695
1777
  }
696
1778
  );
697
- DialogFooter.displayName = "DialogFooter";
698
- var DialogTitle = React16__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
699
- SheetPrimitive__namespace.Title,
1779
+ Carousel.displayName = "Carousel";
1780
+ var CarouselContent = React18__namespace.forwardRef(({ className, ...props }, ref) => {
1781
+ const { carouselRef, orientation } = useCarousel();
1782
+ return /* @__PURE__ */ jsxRuntime.jsx(
1783
+ "div",
1784
+ {
1785
+ ref: carouselRef,
1786
+ className: "overflow-hidden",
1787
+ "data-slot": "carousel-content",
1788
+ children: /* @__PURE__ */ jsxRuntime.jsx(
1789
+ "div",
1790
+ {
1791
+ ref,
1792
+ className: cn(
1793
+ "flex",
1794
+ orientation === "horizontal" ? "-ml-4" : "-mt-4 flex-col",
1795
+ className
1796
+ ),
1797
+ ...props
1798
+ }
1799
+ )
1800
+ }
1801
+ );
1802
+ });
1803
+ CarouselContent.displayName = "CarouselContent";
1804
+ var CarouselItem = React18__namespace.forwardRef(({ className, ...props }, ref) => {
1805
+ const { orientation } = useCarousel();
1806
+ return /* @__PURE__ */ jsxRuntime.jsx(
1807
+ "div",
1808
+ {
1809
+ ref,
1810
+ role: "group",
1811
+ "aria-roledescription": "slide",
1812
+ "data-slot": "carousel-item",
1813
+ className: cn(
1814
+ "min-w-0 shrink-0 grow-0 basis-full",
1815
+ orientation === "horizontal" ? "pl-4" : "pt-4",
1816
+ className
1817
+ ),
1818
+ ...props
1819
+ }
1820
+ );
1821
+ });
1822
+ CarouselItem.displayName = "CarouselItem";
1823
+ var CarouselPrevious = React18__namespace.forwardRef(({ className, variant = uikitContracts.ButtonVariant.Outline, size = uikitContracts.ButtonSize.Icon, ...props }, ref) => {
1824
+ const { orientation, scrollPrev, canScrollPrev } = useCarousel();
1825
+ return /* @__PURE__ */ jsxRuntime.jsxs(
1826
+ Button,
1827
+ {
1828
+ ref,
1829
+ "data-slot": "carousel-previous",
1830
+ variant,
1831
+ size,
1832
+ className: cn(
1833
+ "absolute h-8 w-8 rounded-full",
1834
+ orientation === "horizontal" ? "top-1/2 -left-12 -translate-y-1/2" : "-top-12 left-1/2 -translate-x-1/2 rotate-90",
1835
+ className
1836
+ ),
1837
+ disabled: !canScrollPrev,
1838
+ onClick: scrollPrev,
1839
+ ...props,
1840
+ children: [
1841
+ /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ArrowLeft, { className: "h-4 w-4" }),
1842
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: "Previous slide" })
1843
+ ]
1844
+ }
1845
+ );
1846
+ });
1847
+ CarouselPrevious.displayName = "CarouselPrevious";
1848
+ var CarouselNext = React18__namespace.forwardRef(({ className, variant = uikitContracts.ButtonVariant.Outline, size = uikitContracts.ButtonSize.Icon, ...props }, ref) => {
1849
+ const { orientation, scrollNext, canScrollNext } = useCarousel();
1850
+ return /* @__PURE__ */ jsxRuntime.jsxs(
1851
+ Button,
1852
+ {
1853
+ ref,
1854
+ "data-slot": "carousel-next",
1855
+ variant,
1856
+ size,
1857
+ className: cn(
1858
+ "absolute h-8 w-8 rounded-full",
1859
+ orientation === "horizontal" ? "top-1/2 -right-12 -translate-y-1/2" : "-bottom-12 left-1/2 -translate-x-1/2 rotate-90",
1860
+ className
1861
+ ),
1862
+ disabled: !canScrollNext,
1863
+ onClick: scrollNext,
1864
+ ...props,
1865
+ children: [
1866
+ /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ArrowRight, { className: "h-4 w-4" }),
1867
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: "Next slide" })
1868
+ ]
1869
+ }
1870
+ );
1871
+ });
1872
+ CarouselNext.displayName = "CarouselNext";
1873
+ var Collapsible = React18__namespace.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1874
+ CollapsiblePrimitive__namespace.Root,
700
1875
  {
701
1876
  ref,
702
- className: cn(
703
- "text-lg font-semibold leading-none tracking-tight",
704
- className
705
- ),
1877
+ "data-slot": "collapsible",
706
1878
  ...props
707
1879
  }
708
1880
  ));
709
- DialogTitle.displayName = SheetPrimitive__namespace.Title.displayName;
710
- var DialogDescription = React16__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
711
- SheetPrimitive__namespace.Description,
1881
+ Collapsible.displayName = "Collapsible";
1882
+ var CollapsibleTrigger2 = React18__namespace.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1883
+ CollapsiblePrimitive__namespace.CollapsibleTrigger,
712
1884
  {
713
1885
  ref,
714
- className: cn("text-sm text-muted-foreground", className),
1886
+ "data-slot": "collapsible-trigger",
1887
+ ...props
1888
+ }
1889
+ ));
1890
+ CollapsibleTrigger2.displayName = "CollapsibleTrigger";
1891
+ var CollapsibleContent2 = React18__namespace.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1892
+ CollapsiblePrimitive__namespace.CollapsibleContent,
1893
+ {
1894
+ ref,
1895
+ "data-slot": "collapsible-content",
715
1896
  ...props
716
1897
  }
717
- ));
718
- DialogDescription.displayName = SheetPrimitive__namespace.Description.displayName;
1898
+ ));
1899
+ CollapsibleContent2.displayName = "CollapsibleContent";
1900
+ function ChartContainer({
1901
+ className,
1902
+ children,
1903
+ width = "100%",
1904
+ height = 350
1905
+ }) {
1906
+ return /* @__PURE__ */ jsxRuntime.jsx(
1907
+ "div",
1908
+ {
1909
+ "data-slot": "chart-container",
1910
+ className: cn("w-full", className),
1911
+ style: { width, height: typeof height === "number" ? `${height}px` : height },
1912
+ children
1913
+ }
1914
+ );
1915
+ }
1916
+ function ChartTooltipContent({
1917
+ className,
1918
+ label,
1919
+ payload,
1920
+ active
1921
+ }) {
1922
+ if (!active || !payload || payload.length === 0) {
1923
+ return null;
1924
+ }
1925
+ return /* @__PURE__ */ jsxRuntime.jsxs(
1926
+ "div",
1927
+ {
1928
+ "data-slot": "chart-tooltip-content",
1929
+ className: cn(
1930
+ "bg-background border-border text-foreground rounded-lg border p-2 shadow-md",
1931
+ className
1932
+ ),
1933
+ children: [
1934
+ label && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mb-1 text-xs font-medium text-muted-foreground", children: label }),
1935
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-col gap-1", children: payload.map((item, index) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2 text-xs", children: [
1936
+ /* @__PURE__ */ jsxRuntime.jsx(
1937
+ "div",
1938
+ {
1939
+ className: "h-2 w-2 rounded-full",
1940
+ style: { backgroundColor: item.color }
1941
+ }
1942
+ ),
1943
+ /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "font-medium", children: [
1944
+ item.name,
1945
+ ":"
1946
+ ] }),
1947
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground", children: item.value })
1948
+ ] }, index)) })
1949
+ ]
1950
+ }
1951
+ );
1952
+ }
1953
+ function ChartLegendContent({
1954
+ className,
1955
+ payload
1956
+ }) {
1957
+ if (!payload || payload.length === 0) {
1958
+ return null;
1959
+ }
1960
+ return /* @__PURE__ */ jsxRuntime.jsx(
1961
+ "div",
1962
+ {
1963
+ "data-slot": "chart-legend-content",
1964
+ className: cn("flex items-center justify-center gap-4 text-sm pt-4", className),
1965
+ children: payload.map((item, index) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2", children: [
1966
+ /* @__PURE__ */ jsxRuntime.jsx(
1967
+ "div",
1968
+ {
1969
+ className: "h-3 w-3 rounded-sm",
1970
+ style: { backgroundColor: item.color }
1971
+ }
1972
+ ),
1973
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground", children: item.value })
1974
+ ] }, index))
1975
+ }
1976
+ );
1977
+ }
719
1978
  var Select = SelectPrimitive__namespace.Root;
720
1979
  var SelectGroup = SelectPrimitive__namespace.Group;
721
1980
  var SelectValue = SelectPrimitive__namespace.Value;
722
- var SelectTrigger = React16__namespace.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
1981
+ var SelectTrigger = React18__namespace.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
723
1982
  SelectPrimitive__namespace.Trigger,
724
1983
  {
725
1984
  ref,
@@ -736,7 +1995,7 @@ var SelectTrigger = React16__namespace.forwardRef(({ className, children, ...pro
736
1995
  }
737
1996
  ));
738
1997
  SelectTrigger.displayName = SelectPrimitive__namespace.Trigger.displayName;
739
- var SelectScrollUpButton = React16__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1998
+ var SelectScrollUpButton = React18__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
740
1999
  SelectPrimitive__namespace.ScrollUpButton,
741
2000
  {
742
2001
  ref,
@@ -749,7 +2008,7 @@ var SelectScrollUpButton = React16__namespace.forwardRef(({ className, ...props
749
2008
  }
750
2009
  ));
751
2010
  SelectScrollUpButton.displayName = SelectPrimitive__namespace.ScrollUpButton.displayName;
752
- var SelectScrollDownButton = React16__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
2011
+ var SelectScrollDownButton = React18__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
753
2012
  SelectPrimitive__namespace.ScrollDownButton,
754
2013
  {
755
2014
  ref,
@@ -762,7 +2021,7 @@ var SelectScrollDownButton = React16__namespace.forwardRef(({ className, ...prop
762
2021
  }
763
2022
  ));
764
2023
  SelectScrollDownButton.displayName = SelectPrimitive__namespace.ScrollDownButton.displayName;
765
- var SelectContent = React16__namespace.forwardRef(({ className, children, position = "popper", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(SelectPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsxs(
2024
+ var SelectContent = React18__namespace.forwardRef(({ className, children, position = "popper", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(SelectPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsxs(
766
2025
  SelectPrimitive__namespace.Content,
767
2026
  {
768
2027
  ref,
@@ -790,7 +2049,7 @@ var SelectContent = React16__namespace.forwardRef(({ className, children, positi
790
2049
  }
791
2050
  ) }));
792
2051
  SelectContent.displayName = SelectPrimitive__namespace.Content.displayName;
793
- var SelectLabel = React16__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
2052
+ var SelectLabel = React18__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
794
2053
  SelectPrimitive__namespace.Label,
795
2054
  {
796
2055
  ref,
@@ -799,7 +2058,7 @@ var SelectLabel = React16__namespace.forwardRef(({ className, ...props }, ref) =
799
2058
  }
800
2059
  ));
801
2060
  SelectLabel.displayName = SelectPrimitive__namespace.Label.displayName;
802
- var SelectItem = React16__namespace.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
2061
+ var SelectItem = React18__namespace.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
803
2062
  SelectPrimitive__namespace.Item,
804
2063
  {
805
2064
  ref,
@@ -815,7 +2074,7 @@ var SelectItem = React16__namespace.forwardRef(({ className, children, ...props
815
2074
  }
816
2075
  ));
817
2076
  SelectItem.displayName = SelectPrimitive__namespace.Item.displayName;
818
- var SelectSeparator = React16__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
2077
+ var SelectSeparator = React18__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
819
2078
  SelectPrimitive__namespace.Separator,
820
2079
  {
821
2080
  ref,
@@ -837,7 +2096,7 @@ var DropdownMenuGroup = DropdownMenuPrimitive__namespace.Group;
837
2096
  var DropdownMenuPortal = DropdownMenuPrimitive__namespace.Portal;
838
2097
  var DropdownMenuSub = DropdownMenuPrimitive__namespace.Sub;
839
2098
  var DropdownMenuRadioGroup = DropdownMenuPrimitive__namespace.RadioGroup;
840
- var DropdownMenuSubTrigger = React16__namespace.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
2099
+ var DropdownMenuSubTrigger = React18__namespace.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
841
2100
  DropdownMenuPrimitive__namespace.SubTrigger,
842
2101
  {
843
2102
  ref,
@@ -849,12 +2108,12 @@ var DropdownMenuSubTrigger = React16__namespace.forwardRef(({ className, inset,
849
2108
  ...props,
850
2109
  children: [
851
2110
  children,
852
- /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ChevronRight, { className: "ms-auto rtl:rotate-180" })
2111
+ /* @__PURE__ */ jsxRuntime.jsx(ChevronRightIcon, { className: "ms-auto rtl:rotate-180" })
853
2112
  ]
854
2113
  }
855
2114
  ));
856
2115
  DropdownMenuSubTrigger.displayName = DropdownMenuPrimitive__namespace.SubTrigger.displayName;
857
- var DropdownMenuSubContent = React16__namespace.forwardRef(({ className, container, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(DropdownMenuPrimitive__namespace.Portal, { container: container ?? void 0, children: /* @__PURE__ */ jsxRuntime.jsx(
2116
+ var DropdownMenuSubContent = React18__namespace.forwardRef(({ className, container, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(DropdownMenuPrimitive__namespace.Portal, { container: container ?? void 0, children: /* @__PURE__ */ jsxRuntime.jsx(
858
2117
  DropdownMenuPrimitive__namespace.SubContent,
859
2118
  {
860
2119
  ref,
@@ -866,7 +2125,7 @@ var DropdownMenuSubContent = React16__namespace.forwardRef(({ className, contain
866
2125
  }
867
2126
  ) }));
868
2127
  DropdownMenuSubContent.displayName = DropdownMenuPrimitive__namespace.SubContent.displayName;
869
- var DropdownMenuContent = React16__namespace.forwardRef(({ className, sideOffset = 4, container, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(DropdownMenuPrimitive__namespace.Portal, { container: container ?? void 0, children: /* @__PURE__ */ jsxRuntime.jsx(
2128
+ var DropdownMenuContent = React18__namespace.forwardRef(({ className, sideOffset = 4, container, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(DropdownMenuPrimitive__namespace.Portal, { container: container ?? void 0, children: /* @__PURE__ */ jsxRuntime.jsx(
870
2129
  DropdownMenuPrimitive__namespace.Content,
871
2130
  {
872
2131
  ref,
@@ -880,7 +2139,7 @@ var DropdownMenuContent = React16__namespace.forwardRef(({ className, sideOffset
880
2139
  }
881
2140
  ) }));
882
2141
  DropdownMenuContent.displayName = DropdownMenuPrimitive__namespace.Content.displayName;
883
- var DropdownMenuItem = React16__namespace.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
2142
+ var DropdownMenuItem = React18__namespace.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
884
2143
  DropdownMenuPrimitive__namespace.Item,
885
2144
  {
886
2145
  ref,
@@ -893,7 +2152,7 @@ var DropdownMenuItem = React16__namespace.forwardRef(({ className, inset, ...pro
893
2152
  }
894
2153
  ));
895
2154
  DropdownMenuItem.displayName = DropdownMenuPrimitive__namespace.Item.displayName;
896
- var DropdownMenuCheckboxItem = React16__namespace.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
2155
+ var DropdownMenuCheckboxItem = React18__namespace.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
897
2156
  DropdownMenuPrimitive__namespace.CheckboxItem,
898
2157
  {
899
2158
  ref,
@@ -904,13 +2163,13 @@ var DropdownMenuCheckboxItem = React16__namespace.forwardRef(({ className, child
904
2163
  checked,
905
2164
  ...props,
906
2165
  children: [
907
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ jsxRuntime.jsx(DropdownMenuPrimitive__namespace.ItemIndicator, { children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Check, { className: "h-4 w-4" }) }) }),
2166
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ jsxRuntime.jsx(DropdownMenuPrimitive__namespace.ItemIndicator, { children: /* @__PURE__ */ jsxRuntime.jsx(CheckIcon, { className: "h-4 w-4" }) }) }),
908
2167
  children
909
2168
  ]
910
2169
  }
911
2170
  ));
912
2171
  DropdownMenuCheckboxItem.displayName = DropdownMenuPrimitive__namespace.CheckboxItem.displayName;
913
- var DropdownMenuRadioItem = React16__namespace.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
2172
+ var DropdownMenuRadioItem = React18__namespace.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
914
2173
  DropdownMenuPrimitive__namespace.RadioItem,
915
2174
  {
916
2175
  ref,
@@ -920,13 +2179,13 @@ var DropdownMenuRadioItem = React16__namespace.forwardRef(({ className, children
920
2179
  ),
921
2180
  ...props,
922
2181
  children: [
923
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ jsxRuntime.jsx(DropdownMenuPrimitive__namespace.ItemIndicator, { children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Circle, { className: "h-2 w-2 fill-current" }) }) }),
2182
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ jsxRuntime.jsx(DropdownMenuPrimitive__namespace.ItemIndicator, { children: /* @__PURE__ */ jsxRuntime.jsx(CircleIcon, { className: "h-2 w-2 fill-current" }) }) }),
924
2183
  children
925
2184
  ]
926
2185
  }
927
2186
  ));
928
2187
  DropdownMenuRadioItem.displayName = DropdownMenuPrimitive__namespace.RadioItem.displayName;
929
- var DropdownMenuLabel = React16__namespace.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
2188
+ var DropdownMenuLabel = React18__namespace.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
930
2189
  DropdownMenuPrimitive__namespace.Label,
931
2190
  {
932
2191
  ref,
@@ -939,7 +2198,7 @@ var DropdownMenuLabel = React16__namespace.forwardRef(({ className, inset, ...pr
939
2198
  }
940
2199
  ));
941
2200
  DropdownMenuLabel.displayName = DropdownMenuPrimitive__namespace.Label.displayName;
942
- var DropdownMenuSeparator = React16__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
2201
+ var DropdownMenuSeparator = React18__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
943
2202
  DropdownMenuPrimitive__namespace.Separator,
944
2203
  {
945
2204
  ref,
@@ -961,7 +2220,209 @@ var DropdownMenuShortcut = ({
961
2220
  );
962
2221
  };
963
2222
  DropdownMenuShortcut.displayName = "DropdownMenuShortcut";
964
- var IconButton = React16__namespace.default.forwardRef(
2223
+ function ContextMenu({
2224
+ ...props
2225
+ }) {
2226
+ return /* @__PURE__ */ jsxRuntime.jsx(ContextMenuPrimitive__namespace.Root, { "data-slot": "context-menu", ...props });
2227
+ }
2228
+ function ContextMenuTrigger({
2229
+ ...props
2230
+ }) {
2231
+ return /* @__PURE__ */ jsxRuntime.jsx(ContextMenuPrimitive__namespace.Trigger, { "data-slot": "context-menu-trigger", ...props });
2232
+ }
2233
+ function ContextMenuGroup({
2234
+ ...props
2235
+ }) {
2236
+ return /* @__PURE__ */ jsxRuntime.jsx(ContextMenuPrimitive__namespace.Group, { "data-slot": "context-menu-group", ...props });
2237
+ }
2238
+ function ContextMenuPortal({
2239
+ ...props
2240
+ }) {
2241
+ return /* @__PURE__ */ jsxRuntime.jsx(ContextMenuPrimitive__namespace.Portal, { "data-slot": "context-menu-portal", ...props });
2242
+ }
2243
+ function ContextMenuSub({
2244
+ ...props
2245
+ }) {
2246
+ return /* @__PURE__ */ jsxRuntime.jsx(ContextMenuPrimitive__namespace.Sub, { "data-slot": "context-menu-sub", ...props });
2247
+ }
2248
+ function ContextMenuRadioGroup({
2249
+ ...props
2250
+ }) {
2251
+ return /* @__PURE__ */ jsxRuntime.jsx(
2252
+ ContextMenuPrimitive__namespace.RadioGroup,
2253
+ {
2254
+ "data-slot": "context-menu-radio-group",
2255
+ ...props
2256
+ }
2257
+ );
2258
+ }
2259
+ function ContextMenuSubTrigger({
2260
+ className,
2261
+ inset,
2262
+ children,
2263
+ ...props
2264
+ }) {
2265
+ return /* @__PURE__ */ jsxRuntime.jsxs(
2266
+ ContextMenuPrimitive__namespace.SubTrigger,
2267
+ {
2268
+ "data-slot": "context-menu-sub-trigger",
2269
+ "data-inset": inset,
2270
+ className: cn(
2271
+ "focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
2272
+ className
2273
+ ),
2274
+ ...props,
2275
+ children: [
2276
+ children,
2277
+ /* @__PURE__ */ jsxRuntime.jsx(ChevronRightIcon, { className: "ml-auto" })
2278
+ ]
2279
+ }
2280
+ );
2281
+ }
2282
+ function ContextMenuSubContent({
2283
+ className,
2284
+ ...props
2285
+ }) {
2286
+ return /* @__PURE__ */ jsxRuntime.jsx(
2287
+ ContextMenuPrimitive__namespace.SubContent,
2288
+ {
2289
+ "data-slot": "context-menu-sub-content",
2290
+ className: cn(
2291
+ "bg-popover text-popover-foreground 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 z-50 min-w-[8rem] origin-[var(--radix-context-menu-content-transform-origin)] overflow-hidden rounded-md border p-1 shadow-lg",
2292
+ className
2293
+ ),
2294
+ ...props
2295
+ }
2296
+ );
2297
+ }
2298
+ function ContextMenuContent({
2299
+ className,
2300
+ ...props
2301
+ }) {
2302
+ return /* @__PURE__ */ jsxRuntime.jsx(ContextMenuPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx(
2303
+ ContextMenuPrimitive__namespace.Content,
2304
+ {
2305
+ "data-slot": "context-menu-content",
2306
+ className: cn(
2307
+ "bg-popover text-popover-foreground 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 z-50 max-h-[var(--radix-context-menu-content-available-height)] min-w-[8rem] origin-[var(--radix-context-menu-content-transform-origin)] overflow-x-hidden overflow-y-auto rounded-md border p-1 shadow-md",
2308
+ className
2309
+ ),
2310
+ ...props
2311
+ }
2312
+ ) });
2313
+ }
2314
+ function ContextMenuItem({
2315
+ className,
2316
+ inset,
2317
+ variant = "default",
2318
+ ...props
2319
+ }) {
2320
+ return /* @__PURE__ */ jsxRuntime.jsx(
2321
+ ContextMenuPrimitive__namespace.Item,
2322
+ {
2323
+ "data-slot": "context-menu-item",
2324
+ "data-inset": inset,
2325
+ "data-variant": variant,
2326
+ className: cn(
2327
+ "focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
2328
+ className
2329
+ ),
2330
+ ...props
2331
+ }
2332
+ );
2333
+ }
2334
+ function ContextMenuCheckboxItem({
2335
+ className,
2336
+ children,
2337
+ checked,
2338
+ ...props
2339
+ }) {
2340
+ return /* @__PURE__ */ jsxRuntime.jsxs(
2341
+ ContextMenuPrimitive__namespace.CheckboxItem,
2342
+ {
2343
+ "data-slot": "context-menu-checkbox-item",
2344
+ className: cn(
2345
+ "focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
2346
+ className
2347
+ ),
2348
+ checked,
2349
+ ...props,
2350
+ children: [
2351
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ jsxRuntime.jsx(ContextMenuPrimitive__namespace.ItemIndicator, { children: /* @__PURE__ */ jsxRuntime.jsx(CheckIcon, { className: "size-4" }) }) }),
2352
+ children
2353
+ ]
2354
+ }
2355
+ );
2356
+ }
2357
+ function ContextMenuRadioItem({
2358
+ className,
2359
+ children,
2360
+ ...props
2361
+ }) {
2362
+ return /* @__PURE__ */ jsxRuntime.jsxs(
2363
+ ContextMenuPrimitive__namespace.RadioItem,
2364
+ {
2365
+ "data-slot": "context-menu-radio-item",
2366
+ className: cn(
2367
+ "focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
2368
+ className
2369
+ ),
2370
+ ...props,
2371
+ children: [
2372
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ jsxRuntime.jsx(ContextMenuPrimitive__namespace.ItemIndicator, { children: /* @__PURE__ */ jsxRuntime.jsx(CircleIcon, { className: "size-2 fill-current" }) }) }),
2373
+ children
2374
+ ]
2375
+ }
2376
+ );
2377
+ }
2378
+ function ContextMenuLabel({
2379
+ className,
2380
+ inset,
2381
+ ...props
2382
+ }) {
2383
+ return /* @__PURE__ */ jsxRuntime.jsx(
2384
+ ContextMenuPrimitive__namespace.Label,
2385
+ {
2386
+ "data-slot": "context-menu-label",
2387
+ "data-inset": inset,
2388
+ className: cn(
2389
+ "text-foreground px-2 py-1.5 text-sm font-medium data-[inset]:pl-8",
2390
+ className
2391
+ ),
2392
+ ...props
2393
+ }
2394
+ );
2395
+ }
2396
+ function ContextMenuSeparator({
2397
+ className,
2398
+ ...props
2399
+ }) {
2400
+ return /* @__PURE__ */ jsxRuntime.jsx(
2401
+ ContextMenuPrimitive__namespace.Separator,
2402
+ {
2403
+ "data-slot": "context-menu-separator",
2404
+ className: cn("bg-border -mx-1 my-1 h-px", className),
2405
+ ...props
2406
+ }
2407
+ );
2408
+ }
2409
+ function ContextMenuShortcut({
2410
+ className,
2411
+ ...props
2412
+ }) {
2413
+ return /* @__PURE__ */ jsxRuntime.jsx(
2414
+ "span",
2415
+ {
2416
+ "data-slot": "context-menu-shortcut",
2417
+ className: cn(
2418
+ "text-muted-foreground ml-auto text-xs tracking-widest",
2419
+ className
2420
+ ),
2421
+ ...props
2422
+ }
2423
+ );
2424
+ }
2425
+ var IconButton = React18__namespace.default.forwardRef(
965
2426
  ({ variant = uikitContracts.ButtonVariant.Ghost, size = uikitContracts.IconButtonSize.Default, className, ...props }, ref) => {
966
2427
  const sizeStyles = {
967
2428
  [uikitContracts.IconButtonSize.Small]: "h-8 w-8",
@@ -981,7 +2442,7 @@ var IconButton = React16__namespace.default.forwardRef(
981
2442
  }
982
2443
  );
983
2444
  IconButton.displayName = "IconButton";
984
- var DropdownButton = React16__namespace.default.forwardRef(({ children, variant = uikitContracts.ButtonVariant.Outline, className, ...props }, ref) => {
2445
+ var DropdownButton = React18__namespace.default.forwardRef(({ children, variant = uikitContracts.ButtonVariant.Outline, className, ...props }, ref) => {
985
2446
  return /* @__PURE__ */ jsxRuntime.jsxs(
986
2447
  Button,
987
2448
  {
@@ -997,7 +2458,7 @@ var DropdownButton = React16__namespace.default.forwardRef(({ children, variant
997
2458
  );
998
2459
  });
999
2460
  DropdownButton.displayName = "DropdownButton";
1000
- var Sidebar = React16__namespace.forwardRef(({ collapsed = false, className, children, ...props }, ref) => {
2461
+ var Sidebar = React18__namespace.forwardRef(({ collapsed = false, className, children, ...props }, ref) => {
1001
2462
  return /* @__PURE__ */ jsxRuntime.jsx(
1002
2463
  "aside",
1003
2464
  {
@@ -1016,7 +2477,7 @@ var Sidebar = React16__namespace.forwardRef(({ collapsed = false, className, chi
1016
2477
  );
1017
2478
  });
1018
2479
  Sidebar.displayName = "Sidebar";
1019
- var SidebarContent = React16__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
2480
+ var SidebarContent = React18__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1020
2481
  "div",
1021
2482
  {
1022
2483
  ref,
@@ -1030,7 +2491,7 @@ var SidebarContent = React16__namespace.forwardRef(({ className, ...props }, ref
1030
2491
  }
1031
2492
  ));
1032
2493
  SidebarContent.displayName = "SidebarContent";
1033
- var SidebarMenu = React16__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
2494
+ var SidebarMenu = React18__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1034
2495
  "ul",
1035
2496
  {
1036
2497
  ref,
@@ -1040,7 +2501,7 @@ var SidebarMenu = React16__namespace.forwardRef(({ className, ...props }, ref) =
1040
2501
  }
1041
2502
  ));
1042
2503
  SidebarMenu.displayName = "SidebarMenu";
1043
- var SidebarMenuItem = React16__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
2504
+ var SidebarMenuItem = React18__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1044
2505
  "li",
1045
2506
  {
1046
2507
  ref,
@@ -1072,7 +2533,7 @@ var sidebarMenuButtonVariants = classVarianceAuthority.cva(
1072
2533
  }
1073
2534
  }
1074
2535
  );
1075
- var SidebarMenuButton = React16__namespace.forwardRef(
2536
+ var SidebarMenuButton = React18__namespace.forwardRef(
1076
2537
  ({
1077
2538
  asChild = false,
1078
2539
  isActive = false,
@@ -1098,7 +2559,7 @@ var SidebarMenuButton = React16__namespace.forwardRef(
1098
2559
  }
1099
2560
  );
1100
2561
  SidebarMenuButton.displayName = "SidebarMenuButton";
1101
- var SidebarMenuIcon = React16__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
2562
+ var SidebarMenuIcon = React18__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1102
2563
  "span",
1103
2564
  {
1104
2565
  ref,
@@ -1107,7 +2568,7 @@ var SidebarMenuIcon = React16__namespace.forwardRef(({ className, ...props }, re
1107
2568
  }
1108
2569
  ));
1109
2570
  SidebarMenuIcon.displayName = "SidebarMenuIcon";
1110
- var SidebarMenuLabel = React16__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
2571
+ var SidebarMenuLabel = React18__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1111
2572
  "span",
1112
2573
  {
1113
2574
  ref,
@@ -1116,7 +2577,7 @@ var SidebarMenuLabel = React16__namespace.forwardRef(({ className, ...props }, r
1116
2577
  }
1117
2578
  ));
1118
2579
  SidebarMenuLabel.displayName = "SidebarMenuLabel";
1119
- var SidebarHeader = React16__namespace.forwardRef(
2580
+ var SidebarHeader = React18__namespace.forwardRef(
1120
2581
  ({ logo, logoText, collapsed = false, onClick, className, ...props }, ref) => {
1121
2582
  return /* @__PURE__ */ jsxRuntime.jsxs(
1122
2583
  "div",
@@ -1139,7 +2600,7 @@ var SidebarHeader = React16__namespace.forwardRef(
1139
2600
  }
1140
2601
  );
1141
2602
  SidebarHeader.displayName = "SidebarHeader";
1142
- var UserInfo = React16__namespace.default.forwardRef(
2603
+ var UserInfo = React18__namespace.default.forwardRef(
1143
2604
  ({ displayName, email, avatarUrl, className, loading }, ref) => {
1144
2605
  const getInitials = () => {
1145
2606
  if (!displayName) return lodash.toUpper(email?.[0] || "") || "?";
@@ -1524,6 +2985,11 @@ var applyTheme = (theme, themeName) => {
1524
2985
  root.style.setProperty("--warning", hslToVar(theme.colors.warning));
1525
2986
  root.style.setProperty("--success", hslToVar(theme.colors.success));
1526
2987
  root.style.setProperty("--info", hslToVar(theme.colors.info));
2988
+ root.style.setProperty("--chart-1", theme.colors.chart[1]);
2989
+ root.style.setProperty("--chart-2", theme.colors.chart[2]);
2990
+ root.style.setProperty("--chart-3", theme.colors.chart[3]);
2991
+ root.style.setProperty("--chart-4", theme.colors.chart[4]);
2992
+ root.style.setProperty("--chart-5", theme.colors.chart[5]);
1527
2993
  root.style.setProperty("--left-menu", hslToVar(theme.colors.mainMenu.DEFAULT));
1528
2994
  root.style.setProperty("--left-menu-foreground", hslToVar(theme.colors.mainMenu.foreground));
1529
2995
  root.style.setProperty("--left-menu-hover", hslToVar(theme.colors.mainMenu.hover));
@@ -1560,10 +3026,202 @@ Object.defineProperty(exports, "IconButtonSize", {
1560
3026
  enumerable: true,
1561
3027
  get: function () { return uikitContracts.IconButtonSize; }
1562
3028
  });
3029
+ Object.defineProperty(exports, "Area", {
3030
+ enumerable: true,
3031
+ get: function () { return recharts.Area; }
3032
+ });
3033
+ Object.defineProperty(exports, "AreaChart", {
3034
+ enumerable: true,
3035
+ get: function () { return recharts.AreaChart; }
3036
+ });
3037
+ Object.defineProperty(exports, "Bar", {
3038
+ enumerable: true,
3039
+ get: function () { return recharts.Bar; }
3040
+ });
3041
+ Object.defineProperty(exports, "BarChart", {
3042
+ enumerable: true,
3043
+ get: function () { return recharts.BarChart; }
3044
+ });
3045
+ Object.defineProperty(exports, "Brush", {
3046
+ enumerable: true,
3047
+ get: function () { return recharts.Brush; }
3048
+ });
3049
+ Object.defineProperty(exports, "CartesianGrid", {
3050
+ enumerable: true,
3051
+ get: function () { return recharts.CartesianGrid; }
3052
+ });
3053
+ Object.defineProperty(exports, "Cell", {
3054
+ enumerable: true,
3055
+ get: function () { return recharts.Cell; }
3056
+ });
3057
+ Object.defineProperty(exports, "ChartLegend", {
3058
+ enumerable: true,
3059
+ get: function () { return recharts.Legend; }
3060
+ });
3061
+ Object.defineProperty(exports, "ChartTooltip", {
3062
+ enumerable: true,
3063
+ get: function () { return recharts.Tooltip; }
3064
+ });
3065
+ Object.defineProperty(exports, "ComposedChart", {
3066
+ enumerable: true,
3067
+ get: function () { return recharts.ComposedChart; }
3068
+ });
3069
+ Object.defineProperty(exports, "Cross", {
3070
+ enumerable: true,
3071
+ get: function () { return recharts.Cross; }
3072
+ });
3073
+ Object.defineProperty(exports, "Curve", {
3074
+ enumerable: true,
3075
+ get: function () { return recharts.Curve; }
3076
+ });
3077
+ Object.defineProperty(exports, "Customized", {
3078
+ enumerable: true,
3079
+ get: function () { return recharts.Customized; }
3080
+ });
3081
+ Object.defineProperty(exports, "Dot", {
3082
+ enumerable: true,
3083
+ get: function () { return recharts.Dot; }
3084
+ });
3085
+ Object.defineProperty(exports, "ErrorBar", {
3086
+ enumerable: true,
3087
+ get: function () { return recharts.ErrorBar; }
3088
+ });
3089
+ Object.defineProperty(exports, "Funnel", {
3090
+ enumerable: true,
3091
+ get: function () { return recharts.Funnel; }
3092
+ });
3093
+ Object.defineProperty(exports, "FunnelChart", {
3094
+ enumerable: true,
3095
+ get: function () { return recharts.FunnelChart; }
3096
+ });
3097
+ Object.defineProperty(exports, "Label", {
3098
+ enumerable: true,
3099
+ get: function () { return recharts.Label; }
3100
+ });
3101
+ Object.defineProperty(exports, "LabelList", {
3102
+ enumerable: true,
3103
+ get: function () { return recharts.LabelList; }
3104
+ });
3105
+ Object.defineProperty(exports, "Line", {
3106
+ enumerable: true,
3107
+ get: function () { return recharts.Line; }
3108
+ });
3109
+ Object.defineProperty(exports, "LineChart", {
3110
+ enumerable: true,
3111
+ get: function () { return recharts.LineChart; }
3112
+ });
3113
+ Object.defineProperty(exports, "Pie", {
3114
+ enumerable: true,
3115
+ get: function () { return recharts.Pie; }
3116
+ });
3117
+ Object.defineProperty(exports, "PieChart", {
3118
+ enumerable: true,
3119
+ get: function () { return recharts.PieChart; }
3120
+ });
3121
+ Object.defineProperty(exports, "PolarAngleAxis", {
3122
+ enumerable: true,
3123
+ get: function () { return recharts.PolarAngleAxis; }
3124
+ });
3125
+ Object.defineProperty(exports, "PolarGrid", {
3126
+ enumerable: true,
3127
+ get: function () { return recharts.PolarGrid; }
3128
+ });
3129
+ Object.defineProperty(exports, "PolarRadiusAxis", {
3130
+ enumerable: true,
3131
+ get: function () { return recharts.PolarRadiusAxis; }
3132
+ });
3133
+ Object.defineProperty(exports, "Polygon", {
3134
+ enumerable: true,
3135
+ get: function () { return recharts.Polygon; }
3136
+ });
3137
+ Object.defineProperty(exports, "Radar", {
3138
+ enumerable: true,
3139
+ get: function () { return recharts.Radar; }
3140
+ });
3141
+ Object.defineProperty(exports, "RadarChart", {
3142
+ enumerable: true,
3143
+ get: function () { return recharts.RadarChart; }
3144
+ });
3145
+ Object.defineProperty(exports, "RadialBar", {
3146
+ enumerable: true,
3147
+ get: function () { return recharts.RadialBar; }
3148
+ });
3149
+ Object.defineProperty(exports, "RadialBarChart", {
3150
+ enumerable: true,
3151
+ get: function () { return recharts.RadialBarChart; }
3152
+ });
3153
+ Object.defineProperty(exports, "Rectangle", {
3154
+ enumerable: true,
3155
+ get: function () { return recharts.Rectangle; }
3156
+ });
3157
+ Object.defineProperty(exports, "ReferenceArea", {
3158
+ enumerable: true,
3159
+ get: function () { return recharts.ReferenceArea; }
3160
+ });
3161
+ Object.defineProperty(exports, "ReferenceDot", {
3162
+ enumerable: true,
3163
+ get: function () { return recharts.ReferenceDot; }
3164
+ });
3165
+ Object.defineProperty(exports, "ReferenceLine", {
3166
+ enumerable: true,
3167
+ get: function () { return recharts.ReferenceLine; }
3168
+ });
3169
+ Object.defineProperty(exports, "ResponsiveContainer", {
3170
+ enumerable: true,
3171
+ get: function () { return recharts.ResponsiveContainer; }
3172
+ });
3173
+ Object.defineProperty(exports, "Sankey", {
3174
+ enumerable: true,
3175
+ get: function () { return recharts.Sankey; }
3176
+ });
3177
+ Object.defineProperty(exports, "Scatter", {
3178
+ enumerable: true,
3179
+ get: function () { return recharts.Scatter; }
3180
+ });
3181
+ Object.defineProperty(exports, "ScatterChart", {
3182
+ enumerable: true,
3183
+ get: function () { return recharts.ScatterChart; }
3184
+ });
3185
+ Object.defineProperty(exports, "Sector", {
3186
+ enumerable: true,
3187
+ get: function () { return recharts.Sector; }
3188
+ });
3189
+ Object.defineProperty(exports, "Text", {
3190
+ enumerable: true,
3191
+ get: function () { return recharts.Text; }
3192
+ });
3193
+ Object.defineProperty(exports, "Treemap", {
3194
+ enumerable: true,
3195
+ get: function () { return recharts.Treemap; }
3196
+ });
3197
+ Object.defineProperty(exports, "XAxis", {
3198
+ enumerable: true,
3199
+ get: function () { return recharts.XAxis; }
3200
+ });
3201
+ Object.defineProperty(exports, "YAxis", {
3202
+ enumerable: true,
3203
+ get: function () { return recharts.YAxis; }
3204
+ });
3205
+ Object.defineProperty(exports, "ZAxis", {
3206
+ enumerable: true,
3207
+ get: function () { return recharts.ZAxis; }
3208
+ });
3209
+ exports.Accordion = Accordion;
3210
+ exports.AccordionContent = AccordionContent;
3211
+ exports.AccordionItem = AccordionItem;
3212
+ exports.AccordionTrigger = AccordionTrigger;
3213
+ exports.AspectRatio = AspectRatio;
1563
3214
  exports.Avatar = Avatar;
1564
3215
  exports.AvatarFallback = AvatarFallback;
1565
3216
  exports.AvatarImage = AvatarImage;
1566
3217
  exports.Badge = Badge;
3218
+ exports.Breadcrumb = Breadcrumb;
3219
+ exports.BreadcrumbEllipsis = BreadcrumbEllipsis;
3220
+ exports.BreadcrumbItem = BreadcrumbItem;
3221
+ exports.BreadcrumbLink = BreadcrumbLink;
3222
+ exports.BreadcrumbList = BreadcrumbList;
3223
+ exports.BreadcrumbPage = BreadcrumbPage;
3224
+ exports.BreadcrumbSeparator = BreadcrumbSeparator;
1567
3225
  exports.Button = Button;
1568
3226
  exports.CLOSE_ICON_ID = CLOSE_ICON_ID;
1569
3227
  exports.Card = Card;
@@ -1572,8 +3230,35 @@ exports.CardDescription = CardDescription;
1572
3230
  exports.CardFooter = CardFooter;
1573
3231
  exports.CardHeader = CardHeader;
1574
3232
  exports.CardTitle = CardTitle;
3233
+ exports.Carousel = Carousel;
3234
+ exports.CarouselContent = CarouselContent;
3235
+ exports.CarouselItem = CarouselItem;
3236
+ exports.CarouselNext = CarouselNext;
3237
+ exports.CarouselPrevious = CarouselPrevious;
3238
+ exports.ChartContainer = ChartContainer;
3239
+ exports.ChartLegendContent = ChartLegendContent;
3240
+ exports.ChartTooltipContent = ChartTooltipContent;
1575
3241
  exports.ChatInput = ChatInput;
3242
+ exports.Checkbox = Checkbox;
1576
3243
  exports.CloseIcon = CloseIcon;
3244
+ exports.Collapsible = Collapsible;
3245
+ exports.CollapsibleContent = CollapsibleContent2;
3246
+ exports.CollapsibleTrigger = CollapsibleTrigger2;
3247
+ exports.ContextMenu = ContextMenu;
3248
+ exports.ContextMenuCheckboxItem = ContextMenuCheckboxItem;
3249
+ exports.ContextMenuContent = ContextMenuContent;
3250
+ exports.ContextMenuGroup = ContextMenuGroup;
3251
+ exports.ContextMenuItem = ContextMenuItem;
3252
+ exports.ContextMenuLabel = ContextMenuLabel;
3253
+ exports.ContextMenuPortal = ContextMenuPortal;
3254
+ exports.ContextMenuRadioGroup = ContextMenuRadioGroup;
3255
+ exports.ContextMenuRadioItem = ContextMenuRadioItem;
3256
+ exports.ContextMenuSeparator = ContextMenuSeparator;
3257
+ exports.ContextMenuShortcut = ContextMenuShortcut;
3258
+ exports.ContextMenuSub = ContextMenuSub;
3259
+ exports.ContextMenuSubContent = ContextMenuSubContent;
3260
+ exports.ContextMenuSubTrigger = ContextMenuSubTrigger;
3261
+ exports.ContextMenuTrigger = ContextMenuTrigger;
1577
3262
  exports.Dialog = Dialog;
1578
3263
  exports.DialogClose = DialogClose;
1579
3264
  exports.DialogContent = DialogContent;
@@ -1584,6 +3269,16 @@ exports.DialogOverlay = DialogOverlay;
1584
3269
  exports.DialogPortal = DialogPortal;
1585
3270
  exports.DialogTitle = DialogTitle;
1586
3271
  exports.DialogTrigger = DialogTrigger;
3272
+ exports.Drawer = Drawer;
3273
+ exports.DrawerClose = DrawerClose;
3274
+ exports.DrawerContent = DrawerContent;
3275
+ exports.DrawerDescription = DrawerDescription;
3276
+ exports.DrawerFooter = DrawerFooter;
3277
+ exports.DrawerHeader = DrawerHeader;
3278
+ exports.DrawerOverlay = DrawerOverlay;
3279
+ exports.DrawerPortal = DrawerPortal;
3280
+ exports.DrawerTitle = DrawerTitle;
3281
+ exports.DrawerTrigger = DrawerTrigger;
1587
3282
  exports.DropdownButton = DropdownButton;
1588
3283
  exports.DropdownMenu = DropdownMenu;
1589
3284
  exports.DropdownMenuCheckboxItem = DropdownMenuCheckboxItem;
@@ -1601,10 +3296,29 @@ exports.DropdownMenuSubContent = DropdownMenuSubContent;
1601
3296
  exports.DropdownMenuSubTrigger = DropdownMenuSubTrigger;
1602
3297
  exports.DropdownMenuTrigger = DropdownMenuTrigger;
1603
3298
  exports.Header = Header;
3299
+ exports.HoverCard = HoverCard;
3300
+ exports.HoverCardContent = HoverCardContent;
3301
+ exports.HoverCardTrigger = HoverCardTrigger;
1604
3302
  exports.IconButton = IconButton;
1605
3303
  exports.Input = Input;
1606
3304
  exports.MENU_ICON_ID = MENU_ICON_ID;
1607
3305
  exports.MenuIcon = MenuIcon;
3306
+ exports.Menubar = Menubar;
3307
+ exports.MenubarCheckboxItem = MenubarCheckboxItem;
3308
+ exports.MenubarContent = MenubarContent;
3309
+ exports.MenubarGroup = MenubarGroup;
3310
+ exports.MenubarItem = MenubarItem;
3311
+ exports.MenubarLabel = MenubarLabel;
3312
+ exports.MenubarMenu = MenubarMenu;
3313
+ exports.MenubarPortal = MenubarPortal;
3314
+ exports.MenubarRadioGroup = MenubarRadioGroup;
3315
+ exports.MenubarRadioItem = MenubarRadioItem;
3316
+ exports.MenubarSeparator = MenubarSeparator;
3317
+ exports.MenubarShortcut = MenubarShortcut;
3318
+ exports.MenubarSub = MenubarSub;
3319
+ exports.MenubarSubContent = MenubarSubContent;
3320
+ exports.MenubarSubTrigger = MenubarSubTrigger;
3321
+ exports.MenubarTrigger = MenubarTrigger;
1608
3322
  exports.MessageBubble = MessageBubble;
1609
3323
  exports.MessageType = MessageType;
1610
3324
  exports.NavigationMenu = NavigationMenu;
@@ -1615,7 +3329,23 @@ exports.NavigationMenuLink = NavigationMenuLink;
1615
3329
  exports.NavigationMenuList = NavigationMenuList;
1616
3330
  exports.NavigationMenuTrigger = NavigationMenuTrigger;
1617
3331
  exports.NavigationMenuViewport = NavigationMenuViewport;
3332
+ exports.Pagination = Pagination;
3333
+ exports.PaginationContent = PaginationContent;
3334
+ exports.PaginationEllipsis = PaginationEllipsis;
3335
+ exports.PaginationItem = PaginationItem;
3336
+ exports.PaginationLink = PaginationLink;
3337
+ exports.PaginationNext = PaginationNext;
3338
+ exports.PaginationPrevious = PaginationPrevious;
3339
+ exports.Popover = Popover;
3340
+ exports.PopoverAnchor = PopoverAnchor;
3341
+ exports.PopoverContent = PopoverContent;
3342
+ exports.PopoverTrigger = PopoverTrigger;
1618
3343
  exports.Progress = Progress;
3344
+ exports.ResizableHandle = ResizableHandle;
3345
+ exports.ResizablePanel = ResizablePanel;
3346
+ exports.ResizablePanelGroup = ResizablePanelGroup;
3347
+ exports.ScrollArea = ScrollArea;
3348
+ exports.ScrollBar = ScrollBar;
1619
3349
  exports.Select = Select;
1620
3350
  exports.SelectContent = SelectContent;
1621
3351
  exports.SelectGroup = SelectGroup;
@@ -1626,6 +3356,7 @@ exports.SelectScrollUpButton = SelectScrollUpButton;
1626
3356
  exports.SelectSeparator = SelectSeparator;
1627
3357
  exports.SelectTrigger = SelectTrigger;
1628
3358
  exports.SelectValue = SelectValue;
3359
+ exports.Separator = Separator2;
1629
3360
  exports.Sheet = Sheet;
1630
3361
  exports.SheetClose = SheetClose;
1631
3362
  exports.SheetContent = SheetContent;
@@ -1651,6 +3382,10 @@ exports.SliderThumb = SliderThumb;
1651
3382
  exports.SliderTrack = SliderTrack;
1652
3383
  exports.Spinner = Spinner;
1653
3384
  exports.Switch = Switch;
3385
+ exports.Tabs = Tabs;
3386
+ exports.TabsContent = TabsContent;
3387
+ exports.TabsList = TabsList;
3388
+ exports.TabsTrigger = TabsTrigger;
1654
3389
  exports.Textarea = Textarea;
1655
3390
  exports.ThreadList = ThreadList;
1656
3391
  exports.Tooltip = Tooltip;