@cupcodev/ui 5.1.3 → 6.1.1

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.cjs CHANGED
@@ -51,6 +51,7 @@ __export(src_exports, {
51
51
  AlertDialogTitle: () => AlertDialogTitle,
52
52
  AlertDialogTrigger: () => AlertDialogTrigger,
53
53
  AlertTitle: () => AlertTitle,
54
+ AnimatedThemeToggle: () => ThemeToggle,
54
55
  AppSidebar: () => AppSidebar,
55
56
  AspectRatio: () => AspectRatio,
56
57
  AuthProvider: () => AuthProvider,
@@ -339,7 +340,9 @@ __export(src_exports, {
339
340
  TelescupVideo: () => TelescupVideo,
340
341
  Textarea: () => Textarea,
341
342
  TextareaField: () => TextareaField,
342
- ThemeToggle: () => ThemeToggle,
343
+ ThemeProvider: () => ThemeProvider,
344
+ ThemeScript: () => ThemeScript,
345
+ ThemeToggle: () => ThemeToggle2,
343
346
  Timeline: () => Timeline,
344
347
  Toast: () => Toast,
345
348
  ToastAction: () => ToastAction,
@@ -399,6 +402,7 @@ __export(src_exports, {
399
402
  toast: () => toast,
400
403
  toggleVariants: () => toggleVariants,
401
404
  useActiveSection: () => useActiveSection,
405
+ useAppTheme: () => useAppTheme,
402
406
  useAuth: () => useAuth,
403
407
  useBreakpoint: () => useBreakpoint,
404
408
  useFormField: () => useFormField,
@@ -2315,10 +2319,10 @@ var DockWrapper_default = DockWrapper;
2315
2319
 
2316
2320
  // src/components/layout/main-layout.tsx
2317
2321
  var import_lucide_react11 = require("lucide-react");
2318
- var import_react18 = require("react");
2322
+ var import_react20 = require("react");
2319
2323
 
2320
2324
  // src/components/cupcode/MainNavbar.tsx
2321
- var import_react16 = require("react");
2325
+ var import_react18 = require("react");
2322
2326
 
2323
2327
  // src/components/cupcode/NavbarCupcode.tsx
2324
2328
  var React5 = __toESM(require("react"), 1);
@@ -2389,23 +2393,23 @@ var NavbarCupcode = ({
2389
2393
  {
2390
2394
  ref: navRef,
2391
2395
  className: cn(
2392
- "fixed left-2 right-2 top-[calc(max(env(safe-area-inset-top),0px)+var(--cc-navbar-top-offset,8px))] z-[200] overflow-hidden rounded-2xl",
2393
- "glass border-border/70 shadow-[var(--elevation-3)] md:left-4 md:right-4",
2396
+ "fixed left-[var(--cc-navbar-side-offset-mobile)] right-[var(--cc-navbar-side-offset-mobile)] top-[calc(max(env(safe-area-inset-top),0px)+var(--cc-navbar-top-offset,8px))] z-[200] overflow-hidden rounded-[var(--cc-navbar-radius)]",
2397
+ "border border-[hsl(var(--cc-navbar-border))] bg-[hsl(var(--cc-navbar-bg))] shadow-[var(--cc-navbar-shadow)] backdrop-blur-[var(--glass-blur-md)] md:left-[var(--cc-navbar-side-offset-desktop)] md:right-[var(--cc-navbar-side-offset-desktop)]",
2394
2398
  className
2395
2399
  ),
2396
2400
  children: /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)("div", { className: "cc-container", children: [
2397
- /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)("div", { className: "hidden h-16 items-center md:flex", children: [
2401
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)("div", { className: "hidden h-[var(--cc-navbar-height-desktop)] items-center md:flex", children: [
2398
2402
  /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("div", { className: cn("flex-shrink-0", !hasItems && "mr-auto"), children: logo }),
2399
2403
  hasItems ? /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("div", { className: "mx-auto flex items-center space-x-8", children: items.map((item, index) => {
2400
2404
  const key = `${item.label}-${index}`;
2401
2405
  const isActive = item.isActive;
2402
2406
  const baseClasses = cn(
2403
2407
  "flex items-center gap-2 text-sm font-semibold text-foreground",
2404
- "hover:text-primary transition-colors duration-200",
2408
+ "hover:text-[hsl(var(--cc-navbar-link-hover))] transition-colors duration-200",
2405
2409
  "relative after:absolute after:bottom-0 after:left-0 after:h-0.5 after:w-0",
2406
- "after:bg-primary after:transition-all after:duration-300",
2410
+ "after:bg-[hsl(var(--cc-navbar-link-hover))] after:transition-all after:duration-300",
2407
2411
  "hover:after:w-full",
2408
- isActive && "text-primary after:w-full"
2412
+ isActive && "text-[hsl(var(--cc-navbar-link-active))] after:w-full after:bg-[hsl(var(--cc-navbar-link-active))]"
2409
2413
  );
2410
2414
  const handleClick = (event) => {
2411
2415
  var _a78;
@@ -2444,7 +2448,7 @@ var NavbarCupcode = ({
2444
2448
  }) }) : null,
2445
2449
  actions && /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("div", { className: cn("flex", !hasItems && "ml-auto"), children: actions })
2446
2450
  ] }),
2447
- hasItems ? /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)("div", { className: "relative flex h-16 items-center md:hidden", children: [
2451
+ hasItems ? /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)("div", { className: "relative flex h-[var(--cc-navbar-height-mobile)] items-center md:hidden", children: [
2448
2452
  /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
2449
2453
  "button",
2450
2454
  {
@@ -2459,7 +2463,7 @@ var NavbarCupcode = ({
2459
2463
  ),
2460
2464
  /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("div", { className: "pointer-events-none absolute left-1/2 top-1/2 z-0 w-[min(62vw,18rem)] -translate-x-1/2 -translate-y-1/2 overflow-hidden", children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("div", { className: "flex items-center justify-center", children: logo }) }),
2461
2465
  /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("div", { className: "z-10 ml-auto flex items-center", children: actions != null ? actions : /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("span", { className: "inline-flex h-10 w-10", "aria-hidden": "true" }) })
2462
- ] }) : /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)("div", { className: "flex h-16 items-center justify-between gap-3 md:hidden", children: [
2466
+ ] }) : /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)("div", { className: "flex h-[var(--cc-navbar-height-mobile)] items-center justify-between gap-3 md:hidden", children: [
2463
2467
  /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("div", { className: "min-w-0 shrink", children: logo }),
2464
2468
  /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("div", { className: "flex items-center", children: actions != null ? actions : /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("span", { className: "inline-flex h-10 w-10", "aria-hidden": "true" }) })
2465
2469
  ] })
@@ -2482,7 +2486,7 @@ var NavbarCupcode = ({
2482
2486
  id: mobileMenuId,
2483
2487
  ref: mobileDrawerRef,
2484
2488
  className: cn(
2485
- "glass-strong absolute inset-y-0 left-0 z-10 w-[min(84vw,22rem)] border-r border-border/70 px-3 pb-[max(env(safe-area-inset-bottom),0.75rem)] pt-[max(env(safe-area-inset-top),0.9rem)] text-foreground shadow-[var(--elevation-5)]",
2489
+ "absolute inset-y-0 left-0 z-10 w-[min(84vw,22rem)] border-r border-r-[hsl(var(--cc-navbar-drawer-border))] bg-[hsl(var(--cc-navbar-drawer-bg))] px-3 pb-[max(env(safe-area-inset-bottom),0.75rem)] pt-[max(env(safe-area-inset-top),0.9rem)] text-foreground shadow-[var(--elevation-5)] backdrop-blur-[var(--glass-blur-lg)]",
2486
2490
  "data-[state=open]:animate-in data-[state=open]:slide-in-from-left data-[state=open]:duration-300"
2487
2491
  ),
2488
2492
  "data-state": "open",
@@ -2505,7 +2509,7 @@ var NavbarCupcode = ({
2505
2509
  const isActive = item.isActive;
2506
2510
  const classes = cn(
2507
2511
  "flex min-h-11 items-center gap-2 rounded-lg px-4 py-2.5 text-sm font-semibold text-foreground transition-colors hover:bg-primary/10 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/40",
2508
- isActive && "text-primary"
2512
+ isActive && "text-[hsl(var(--cc-navbar-link-active))]"
2509
2513
  );
2510
2514
  const handleClick = (event) => {
2511
2515
  var _a78;
@@ -2531,47 +2535,6 @@ var NavbarCupcode = ({
2531
2535
  };
2532
2536
  var NavbarCupcode_default = NavbarCupcode;
2533
2537
 
2534
- // src/components/cupcode/TelescupImage.tsx
2535
- var import_jsx_runtime12 = require("react/jsx-runtime");
2536
- var TelescupImage = ({
2537
- apiId,
2538
- imageWidth,
2539
- imageHeight,
2540
- fit = "cover",
2541
- format = "avif",
2542
- quality = 60,
2543
- lang = "pt-BR",
2544
- alt,
2545
- title,
2546
- loading = "lazy",
2547
- className,
2548
- ...props
2549
- }) => {
2550
- const { url, meta } = useTelescupImage(
2551
- {
2552
- id: apiId,
2553
- width: imageWidth,
2554
- height: imageHeight,
2555
- fit,
2556
- format,
2557
- quality
2558
- },
2559
- lang
2560
- );
2561
- return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
2562
- "img",
2563
- {
2564
- src: url,
2565
- "data-api-id": apiId,
2566
- alt: alt || meta.alt || "",
2567
- title: title || meta.title,
2568
- loading,
2569
- className,
2570
- ...props
2571
- }
2572
- );
2573
- };
2574
-
2575
2538
  // src/components/cupcode/UserMenuCupcode.tsx
2576
2539
  var DialogPrimitive2 = __toESM(require("@radix-ui/react-dialog"), 1);
2577
2540
  var import_lucide_react8 = require("lucide-react");
@@ -2581,11 +2544,11 @@ var import_react15 = require("react");
2581
2544
  var React6 = __toESM(require("react"), 1);
2582
2545
  var SelectPrimitive = __toESM(require("@radix-ui/react-select"), 1);
2583
2546
  var import_lucide_react4 = require("lucide-react");
2584
- var import_jsx_runtime13 = require("react/jsx-runtime");
2547
+ var import_jsx_runtime12 = require("react/jsx-runtime");
2585
2548
  var Select = SelectPrimitive.Root;
2586
2549
  var SelectGroup = SelectPrimitive.Group;
2587
2550
  var SelectValue = SelectPrimitive.Value;
2588
- var SelectTrigger = React6.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(
2551
+ var SelectTrigger = React6.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(
2589
2552
  SelectPrimitive.Trigger,
2590
2553
  {
2591
2554
  ref,
@@ -2596,32 +2559,32 @@ var SelectTrigger = React6.forwardRef(({ className, children, ...props }, ref) =
2596
2559
  ...props,
2597
2560
  children: [
2598
2561
  children,
2599
- /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(SelectPrimitive.Icon, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(import_lucide_react4.ChevronDown, { className: "h-4 w-4 opacity-50" }) })
2562
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(SelectPrimitive.Icon, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_lucide_react4.ChevronDown, { className: "h-4 w-4 opacity-50" }) })
2600
2563
  ]
2601
2564
  }
2602
2565
  ));
2603
2566
  SelectTrigger.displayName = SelectPrimitive.Trigger.displayName;
2604
- var SelectScrollUpButton = React6.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
2567
+ var SelectScrollUpButton = React6.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
2605
2568
  SelectPrimitive.ScrollUpButton,
2606
2569
  {
2607
2570
  ref,
2608
2571
  className: cn("flex cursor-default items-center justify-center py-1", className),
2609
2572
  ...props,
2610
- children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(import_lucide_react4.ChevronUp, { className: "h-4 w-4" })
2573
+ children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_lucide_react4.ChevronUp, { className: "h-4 w-4" })
2611
2574
  }
2612
2575
  ));
2613
2576
  SelectScrollUpButton.displayName = SelectPrimitive.ScrollUpButton.displayName;
2614
- var SelectScrollDownButton = React6.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
2577
+ var SelectScrollDownButton = React6.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
2615
2578
  SelectPrimitive.ScrollDownButton,
2616
2579
  {
2617
2580
  ref,
2618
2581
  className: cn("flex cursor-default items-center justify-center py-1", className),
2619
2582
  ...props,
2620
- children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(import_lucide_react4.ChevronDown, { className: "h-4 w-4" })
2583
+ children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_lucide_react4.ChevronDown, { className: "h-4 w-4" })
2621
2584
  }
2622
2585
  ));
2623
2586
  SelectScrollDownButton.displayName = SelectPrimitive.ScrollDownButton.displayName;
2624
- var SelectContent = React6.forwardRef(({ className, children, position = "popper", ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(SelectPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(
2587
+ var SelectContent = React6.forwardRef(({ className, children, position = "popper", ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(SelectPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(
2625
2588
  SelectPrimitive.Content,
2626
2589
  {
2627
2590
  ref,
@@ -2633,8 +2596,8 @@ var SelectContent = React6.forwardRef(({ className, children, position = "popper
2633
2596
  position,
2634
2597
  ...props,
2635
2598
  children: [
2636
- /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(SelectScrollUpButton, {}),
2637
- /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
2599
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(SelectScrollUpButton, {}),
2600
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
2638
2601
  SelectPrimitive.Viewport,
2639
2602
  {
2640
2603
  className: cn(
@@ -2644,14 +2607,14 @@ var SelectContent = React6.forwardRef(({ className, children, position = "popper
2644
2607
  children
2645
2608
  }
2646
2609
  ),
2647
- /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(SelectScrollDownButton, {})
2610
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(SelectScrollDownButton, {})
2648
2611
  ]
2649
2612
  }
2650
2613
  ) }));
2651
2614
  SelectContent.displayName = SelectPrimitive.Content.displayName;
2652
- var SelectLabel = React6.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(SelectPrimitive.Label, { ref, className: cn("py-1.5 pl-8 pr-2 text-sm font-semibold", className), ...props }));
2615
+ var SelectLabel = React6.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(SelectPrimitive.Label, { ref, className: cn("py-1.5 pl-8 pr-2 text-sm font-semibold", className), ...props }));
2653
2616
  SelectLabel.displayName = SelectPrimitive.Label.displayName;
2654
- var SelectItem = React6.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(
2617
+ var SelectItem = React6.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(
2655
2618
  SelectPrimitive.Item,
2656
2619
  {
2657
2620
  ref,
@@ -2661,20 +2624,20 @@ var SelectItem = React6.forwardRef(({ className, children, ...props }, ref) => /
2661
2624
  ),
2662
2625
  ...props,
2663
2626
  children: [
2664
- /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(SelectPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(import_lucide_react4.Check, { className: "h-4 w-4" }) }) }),
2665
- /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(SelectPrimitive.ItemText, { children })
2627
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(SelectPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_lucide_react4.Check, { className: "h-4 w-4" }) }) }),
2628
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(SelectPrimitive.ItemText, { children })
2666
2629
  ]
2667
2630
  }
2668
2631
  ));
2669
2632
  SelectItem.displayName = SelectPrimitive.Item.displayName;
2670
- var SelectSeparator = React6.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(SelectPrimitive.Separator, { ref, className: cn("-mx-1 my-1 h-px bg-muted", className), ...props }));
2633
+ var SelectSeparator = React6.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(SelectPrimitive.Separator, { ref, className: cn("-mx-1 my-1 h-px bg-muted", className), ...props }));
2671
2634
  SelectSeparator.displayName = SelectPrimitive.Separator.displayName;
2672
2635
 
2673
2636
  // src/components/ui/avatar.tsx
2674
2637
  var React7 = __toESM(require("react"), 1);
2675
2638
  var AvatarPrimitive2 = __toESM(require("@radix-ui/react-avatar"), 1);
2676
- var import_jsx_runtime14 = require("react/jsx-runtime");
2677
- var Avatar2 = React7.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
2639
+ var import_jsx_runtime13 = require("react/jsx-runtime");
2640
+ var Avatar2 = React7.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
2678
2641
  AvatarPrimitive2.Root,
2679
2642
  {
2680
2643
  ref,
@@ -2683,7 +2646,7 @@ var Avatar2 = React7.forwardRef(({ className, ...props }, ref) => /* @__PURE__ *
2683
2646
  }
2684
2647
  ));
2685
2648
  Avatar2.displayName = AvatarPrimitive2.Root.displayName;
2686
- var AvatarImage2 = React7.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
2649
+ var AvatarImage2 = React7.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
2687
2650
  AvatarPrimitive2.Image,
2688
2651
  {
2689
2652
  ref,
@@ -2692,7 +2655,7 @@ var AvatarImage2 = React7.forwardRef(({ className, ...props }, ref) => /* @__PUR
2692
2655
  }
2693
2656
  ));
2694
2657
  AvatarImage2.displayName = AvatarPrimitive2.Image.displayName;
2695
- var AvatarFallback2 = React7.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
2658
+ var AvatarFallback2 = React7.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
2696
2659
  AvatarPrimitive2.Fallback,
2697
2660
  {
2698
2661
  ref,
@@ -2751,7 +2714,7 @@ function responsiveSizeClasses(s, currentBp) {
2751
2714
 
2752
2715
  // src/components/cupcode/JellyButton.tsx
2753
2716
  var import_react9 = require("react");
2754
- var import_jsx_runtime15 = require("react/jsx-runtime");
2717
+ var import_jsx_runtime14 = require("react/jsx-runtime");
2755
2718
  var JellyButton = (0, import_react9.forwardRef)(
2756
2719
  ({ variant = "primary", size = "md", className, children, type = "button", ...props }, ref) => {
2757
2720
  const sizeClass = {
@@ -2759,8 +2722,8 @@ var JellyButton = (0, import_react9.forwardRef)(
2759
2722
  md: "cc-blob-cta--md",
2760
2723
  lg: "cc-blob-cta--lg"
2761
2724
  }[size];
2762
- const variantClass = variant === "secondary" || variant === "original-green" ? "cc-blob-cta--secondary" : variant === "half" ? "cc-blob-cta--half" : "cc-blob-cta--primary";
2763
- return /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(
2725
+ const variantClass = variant === "primary" || variant === "original-green" ? "cc-blob-cta--primary" : variant === "secondary" || variant === "original-pink" ? "cc-blob-cta--secondary" : "cc-blob-cta--half";
2726
+ return /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(
2764
2727
  "button",
2765
2728
  {
2766
2729
  ref,
@@ -2768,15 +2731,15 @@ var JellyButton = (0, import_react9.forwardRef)(
2768
2731
  className: cn("cc-blob-cta", sizeClass, variantClass, className),
2769
2732
  ...props,
2770
2733
  children: [
2771
- /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("span", { className: "cc-blob-cta__color-wrap", "aria-hidden": "true", children: [
2772
- /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("span", { className: "cc-blob-cta__color cc-blob-cta__color--1" }),
2773
- /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("span", { className: "cc-blob-cta__color cc-blob-cta__color--3" }),
2774
- /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("span", { className: "cc-blob-cta__color cc-blob-cta__color--2" }),
2775
- /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("span", { className: "cc-blob-cta__bg" })
2734
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("span", { className: "cc-blob-cta__color-wrap", "aria-hidden": "true", children: [
2735
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("span", { className: "cc-blob-cta__color cc-blob-cta__color--1" }),
2736
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("span", { className: "cc-blob-cta__color cc-blob-cta__color--3" }),
2737
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("span", { className: "cc-blob-cta__color cc-blob-cta__color--2" }),
2738
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("span", { className: "cc-blob-cta__bg" })
2776
2739
  ] }),
2777
- /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("span", { className: "cc-blob-cta__label", children }),
2778
- /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("span", { className: "cc-blob-cta__glow cc-blob-cta__glow--1", "aria-hidden": "true" }),
2779
- /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("span", { className: "cc-blob-cta__glow cc-blob-cta__glow--2", "aria-hidden": "true" })
2740
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("span", { className: "cc-blob-cta__label", children }),
2741
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("span", { className: "cc-blob-cta__glow cc-blob-cta__glow--1", "aria-hidden": "true" }),
2742
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("span", { className: "cc-blob-cta__glow cc-blob-cta__glow--2", "aria-hidden": "true" })
2780
2743
  ]
2781
2744
  }
2782
2745
  );
@@ -2785,7 +2748,7 @@ var JellyButton = (0, import_react9.forwardRef)(
2785
2748
  JellyButton.displayName = "JellyButton";
2786
2749
 
2787
2750
  // src/components/cupcode/JellyButtonOriginal.tsx
2788
- var import_jsx_runtime16 = require("react/jsx-runtime");
2751
+ var import_jsx_runtime15 = require("react/jsx-runtime");
2789
2752
  var resolveResponsiveSize = (value, currentBp) => {
2790
2753
  var _a78, _b7, _c, _d, _e;
2791
2754
  if (typeof value === "string") {
@@ -2835,16 +2798,16 @@ function JellyButtonOriginal({
2835
2798
  window.location.href = href;
2836
2799
  }
2837
2800
  };
2838
- return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
2801
+ return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
2839
2802
  JellyButton,
2840
2803
  {
2841
2804
  variant: color === "green" ? "original-green" : "original-pink",
2842
2805
  size: resolvedSize,
2843
2806
  className,
2844
2807
  onClick: handleClick,
2845
- children: /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("span", { className: "inline-flex items-center gap-2", children: [
2846
- icon ? /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("span", { className: "inline-flex items-center justify-center", children: icon }) : null,
2847
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("span", { children: label })
2808
+ children: /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("span", { className: "inline-flex items-center gap-2", children: [
2809
+ icon ? /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("span", { className: "inline-flex items-center justify-center", children: icon }) : null,
2810
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("span", { children: label })
2848
2811
  ] })
2849
2812
  }
2850
2813
  );
@@ -2854,14 +2817,14 @@ function JellyButtonOriginal({
2854
2817
  var React8 = __toESM(require("react"), 1);
2855
2818
  var DropdownMenuPrimitive = __toESM(require("@radix-ui/react-dropdown-menu"), 1);
2856
2819
  var import_lucide_react5 = require("lucide-react");
2857
- var import_jsx_runtime17 = require("react/jsx-runtime");
2820
+ var import_jsx_runtime16 = require("react/jsx-runtime");
2858
2821
  var DropdownMenu = DropdownMenuPrimitive.Root;
2859
2822
  var DropdownMenuTrigger = DropdownMenuPrimitive.Trigger;
2860
2823
  var DropdownMenuGroup = DropdownMenuPrimitive.Group;
2861
2824
  var DropdownMenuPortal = DropdownMenuPrimitive.Portal;
2862
2825
  var DropdownMenuSub = DropdownMenuPrimitive.Sub;
2863
2826
  var DropdownMenuRadioGroup = DropdownMenuPrimitive.RadioGroup;
2864
- var DropdownMenuSubTrigger = React8.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(
2827
+ var DropdownMenuSubTrigger = React8.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
2865
2828
  DropdownMenuPrimitive.SubTrigger,
2866
2829
  {
2867
2830
  ref,
@@ -2873,12 +2836,12 @@ var DropdownMenuSubTrigger = React8.forwardRef(({ className, inset, children, ..
2873
2836
  ...props,
2874
2837
  children: [
2875
2838
  children,
2876
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_lucide_react5.ChevronRight, { className: "ml-auto h-4 w-4" })
2839
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_lucide_react5.ChevronRight, { className: "ml-auto h-4 w-4" })
2877
2840
  ]
2878
2841
  }
2879
2842
  ));
2880
2843
  DropdownMenuSubTrigger.displayName = DropdownMenuPrimitive.SubTrigger.displayName;
2881
- var DropdownMenuSubContent = React8.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
2844
+ var DropdownMenuSubContent = React8.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
2882
2845
  DropdownMenuPrimitive.SubContent,
2883
2846
  {
2884
2847
  ref,
@@ -2890,7 +2853,7 @@ var DropdownMenuSubContent = React8.forwardRef(({ className, ...props }, ref) =>
2890
2853
  }
2891
2854
  ));
2892
2855
  DropdownMenuSubContent.displayName = DropdownMenuPrimitive.SubContent.displayName;
2893
- var DropdownMenuContent = React8.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
2856
+ var DropdownMenuContent = React8.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
2894
2857
  DropdownMenuPrimitive.Content,
2895
2858
  {
2896
2859
  ref,
@@ -2903,7 +2866,7 @@ var DropdownMenuContent = React8.forwardRef(({ className, sideOffset = 4, ...pro
2903
2866
  }
2904
2867
  ) }));
2905
2868
  DropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName;
2906
- var DropdownMenuItem = React8.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
2869
+ var DropdownMenuItem = React8.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
2907
2870
  DropdownMenuPrimitive.Item,
2908
2871
  {
2909
2872
  ref,
@@ -2916,7 +2879,7 @@ var DropdownMenuItem = React8.forwardRef(({ className, inset, ...props }, ref) =
2916
2879
  }
2917
2880
  ));
2918
2881
  DropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName;
2919
- var DropdownMenuCheckboxItem = React8.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(
2882
+ var DropdownMenuCheckboxItem = React8.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
2920
2883
  DropdownMenuPrimitive.CheckboxItem,
2921
2884
  {
2922
2885
  ref,
@@ -2927,13 +2890,13 @@ var DropdownMenuCheckboxItem = React8.forwardRef(({ className, children, checked
2927
2890
  checked,
2928
2891
  ...props,
2929
2892
  children: [
2930
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_lucide_react5.Check, { className: "h-4 w-4" }) }) }),
2893
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_lucide_react5.Check, { className: "h-4 w-4" }) }) }),
2931
2894
  children
2932
2895
  ]
2933
2896
  }
2934
2897
  ));
2935
2898
  DropdownMenuCheckboxItem.displayName = DropdownMenuPrimitive.CheckboxItem.displayName;
2936
- var DropdownMenuRadioItem = React8.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(
2899
+ var DropdownMenuRadioItem = React8.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
2937
2900
  DropdownMenuPrimitive.RadioItem,
2938
2901
  {
2939
2902
  ref,
@@ -2943,13 +2906,13 @@ var DropdownMenuRadioItem = React8.forwardRef(({ className, children, ...props }
2943
2906
  ),
2944
2907
  ...props,
2945
2908
  children: [
2946
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_lucide_react5.Circle, { className: "h-2 w-2 fill-current" }) }) }),
2909
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_lucide_react5.Circle, { className: "h-2 w-2 fill-current" }) }) }),
2947
2910
  children
2948
2911
  ]
2949
2912
  }
2950
2913
  ));
2951
2914
  DropdownMenuRadioItem.displayName = DropdownMenuPrimitive.RadioItem.displayName;
2952
- var DropdownMenuLabel = React8.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
2915
+ var DropdownMenuLabel = React8.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
2953
2916
  DropdownMenuPrimitive.Label,
2954
2917
  {
2955
2918
  ref,
@@ -2958,10 +2921,10 @@ var DropdownMenuLabel = React8.forwardRef(({ className, inset, ...props }, ref)
2958
2921
  }
2959
2922
  ));
2960
2923
  DropdownMenuLabel.displayName = DropdownMenuPrimitive.Label.displayName;
2961
- var DropdownMenuSeparator = React8.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(DropdownMenuPrimitive.Separator, { ref, className: cn("-mx-1 my-1 h-px bg-muted", className), ...props }));
2924
+ var DropdownMenuSeparator = React8.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(DropdownMenuPrimitive.Separator, { ref, className: cn("-mx-1 my-1 h-px bg-muted", className), ...props }));
2962
2925
  DropdownMenuSeparator.displayName = DropdownMenuPrimitive.Separator.displayName;
2963
2926
  var DropdownMenuShortcut = ({ className, ...props }) => {
2964
- return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("span", { className: cn("ml-auto text-xs tracking-widest opacity-60", className), ...props });
2927
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("span", { className: cn("ml-auto text-xs tracking-widest opacity-60", className), ...props });
2965
2928
  };
2966
2929
  DropdownMenuShortcut.displayName = "DropdownMenuShortcut";
2967
2930
 
@@ -2973,13 +2936,14 @@ var AlertDialogPrimitive = __toESM(require("@radix-ui/react-alert-dialog"), 1);
2973
2936
  var React9 = __toESM(require("react"), 1);
2974
2937
  var import_react_slot = require("@radix-ui/react-slot");
2975
2938
  var import_class_variance_authority = require("class-variance-authority");
2976
- var import_jsx_runtime18 = require("react/jsx-runtime");
2939
+ var import_jsx_runtime17 = require("react/jsx-runtime");
2977
2940
  var buttonVariants = (0, import_class_variance_authority.cva)(
2978
2941
  "inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",
2979
2942
  {
2980
2943
  variants: {
2981
2944
  variant: {
2982
- default: "bg-primary text-primary-foreground hover:bg-primary/90",
2945
+ default: "bg-[#18b765] text-white hover:bg-[#149355]",
2946
+ primary: "bg-[#18b765] text-white hover:bg-[#149355]",
2983
2947
  destructive: "bg-destructive text-destructive-foreground hover:bg-destructive/90",
2984
2948
  outline: "border border-input bg-background hover:bg-accent hover:text-accent-foreground",
2985
2949
  secondary: "bg-secondary text-secondary-foreground hover:bg-secondary/80",
@@ -3002,17 +2966,17 @@ var buttonVariants = (0, import_class_variance_authority.cva)(
3002
2966
  var Button = React9.forwardRef(
3003
2967
  ({ className, variant, size, asChild = false, ...props }, ref) => {
3004
2968
  const Comp = asChild ? import_react_slot.Slot : "button";
3005
- return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(Comp, { className: cn(buttonVariants({ variant, size, className })), ref, ...props });
2969
+ return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Comp, { className: cn(buttonVariants({ variant, size, className })), ref, ...props });
3006
2970
  }
3007
2971
  );
3008
2972
  Button.displayName = "Button";
3009
2973
 
3010
2974
  // src/components/ui/alert-dialog.tsx
3011
- var import_jsx_runtime19 = require("react/jsx-runtime");
2975
+ var import_jsx_runtime18 = require("react/jsx-runtime");
3012
2976
  var AlertDialog = AlertDialogPrimitive.Root;
3013
2977
  var AlertDialogTrigger = AlertDialogPrimitive.Trigger;
3014
2978
  var AlertDialogPortal = AlertDialogPrimitive.Portal;
3015
- var AlertDialogOverlay = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
2979
+ var AlertDialogOverlay = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
3016
2980
  AlertDialogPrimitive.Overlay,
3017
2981
  {
3018
2982
  className: cn(
@@ -3024,9 +2988,9 @@ var AlertDialogOverlay = React10.forwardRef(({ className, ...props }, ref) => /*
3024
2988
  }
3025
2989
  ));
3026
2990
  AlertDialogOverlay.displayName = AlertDialogPrimitive.Overlay.displayName;
3027
- var AlertDialogContent = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(AlertDialogPortal, { children: [
3028
- /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(AlertDialogOverlay, {}),
3029
- /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
2991
+ var AlertDialogContent = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(AlertDialogPortal, { children: [
2992
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(AlertDialogOverlay, {}),
2993
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
3030
2994
  AlertDialogPrimitive.Content,
3031
2995
  {
3032
2996
  ref,
@@ -3039,17 +3003,17 @@ var AlertDialogContent = React10.forwardRef(({ className, ...props }, ref) => /*
3039
3003
  )
3040
3004
  ] }));
3041
3005
  AlertDialogContent.displayName = AlertDialogPrimitive.Content.displayName;
3042
- var AlertDialogHeader = ({ className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("div", { className: cn("flex flex-col space-y-2 text-center sm:text-left", className), ...props });
3006
+ var AlertDialogHeader = ({ className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: cn("flex flex-col space-y-2 text-center sm:text-left", className), ...props });
3043
3007
  AlertDialogHeader.displayName = "AlertDialogHeader";
3044
- var AlertDialogFooter = ({ className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("div", { className: cn("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2", className), ...props });
3008
+ var AlertDialogFooter = ({ className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: cn("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2", className), ...props });
3045
3009
  AlertDialogFooter.displayName = "AlertDialogFooter";
3046
- var AlertDialogTitle = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(AlertDialogPrimitive.Title, { ref, className: cn("text-lg font-semibold", className), ...props }));
3010
+ var AlertDialogTitle = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(AlertDialogPrimitive.Title, { ref, className: cn("text-lg font-semibold", className), ...props }));
3047
3011
  AlertDialogTitle.displayName = AlertDialogPrimitive.Title.displayName;
3048
- var AlertDialogDescription = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(AlertDialogPrimitive.Description, { ref, className: cn("text-sm text-muted-foreground", className), ...props }));
3012
+ var AlertDialogDescription = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(AlertDialogPrimitive.Description, { ref, className: cn("text-sm text-muted-foreground", className), ...props }));
3049
3013
  AlertDialogDescription.displayName = AlertDialogPrimitive.Description.displayName;
3050
- var AlertDialogAction = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(AlertDialogPrimitive.Action, { ref, className: cn(buttonVariants(), className), ...props }));
3014
+ var AlertDialogAction = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(AlertDialogPrimitive.Action, { ref, className: cn(buttonVariants(), className), ...props }));
3051
3015
  AlertDialogAction.displayName = AlertDialogPrimitive.Action.displayName;
3052
- var AlertDialogCancel = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
3016
+ var AlertDialogCancel = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
3053
3017
  AlertDialogPrimitive.Cancel,
3054
3018
  {
3055
3019
  ref,
@@ -3063,12 +3027,12 @@ AlertDialogCancel.displayName = AlertDialogPrimitive.Cancel.displayName;
3063
3027
  var React11 = __toESM(require("react"), 1);
3064
3028
  var DialogPrimitive = __toESM(require("@radix-ui/react-dialog"), 1);
3065
3029
  var import_lucide_react6 = require("lucide-react");
3066
- var import_jsx_runtime20 = require("react/jsx-runtime");
3030
+ var import_jsx_runtime19 = require("react/jsx-runtime");
3067
3031
  var Dialog = DialogPrimitive.Root;
3068
3032
  var DialogTrigger = DialogPrimitive.Trigger;
3069
3033
  var DialogPortal = DialogPrimitive.Portal;
3070
3034
  var DialogClose = DialogPrimitive.Close;
3071
- var DialogOverlay = React11.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
3035
+ var DialogOverlay = React11.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
3072
3036
  DialogPrimitive.Overlay,
3073
3037
  {
3074
3038
  ref,
@@ -3080,9 +3044,9 @@ var DialogOverlay = React11.forwardRef(({ className, ...props }, ref) => /* @__P
3080
3044
  }
3081
3045
  ));
3082
3046
  DialogOverlay.displayName = DialogPrimitive.Overlay.displayName;
3083
- var DialogContent = React11.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(DialogPortal, { children: [
3084
- /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(DialogOverlay, {}),
3085
- /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(
3047
+ var DialogContent = React11.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(DialogPortal, { children: [
3048
+ /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(DialogOverlay, {}),
3049
+ /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(
3086
3050
  DialogPrimitive.Content,
3087
3051
  {
3088
3052
  ref,
@@ -3093,20 +3057,20 @@ var DialogContent = React11.forwardRef(({ className, children, ...props }, ref)
3093
3057
  ...props,
3094
3058
  children: [
3095
3059
  children,
3096
- /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(DialogPrimitive.Close, { className: "absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity data-[state=open]:bg-accent data-[state=open]:text-muted-foreground hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none", children: [
3097
- /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_lucide_react6.X, { className: "h-4 w-4" }),
3098
- /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("span", { className: "sr-only", children: "Close" })
3060
+ /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(DialogPrimitive.Close, { className: "absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity data-[state=open]:bg-accent data-[state=open]:text-muted-foreground hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none", children: [
3061
+ /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_lucide_react6.X, { className: "h-4 w-4" }),
3062
+ /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("span", { className: "sr-only", children: "Close" })
3099
3063
  ] })
3100
3064
  ]
3101
3065
  }
3102
3066
  )
3103
3067
  ] }));
3104
3068
  DialogContent.displayName = DialogPrimitive.Content.displayName;
3105
- var DialogHeader = ({ className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("div", { className: cn("flex flex-col space-y-1.5 text-center sm:text-left", className), ...props });
3069
+ var DialogHeader = ({ className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("div", { className: cn("flex flex-col space-y-1.5 text-center sm:text-left", className), ...props });
3106
3070
  DialogHeader.displayName = "DialogHeader";
3107
- var DialogFooter = ({ className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("div", { className: cn("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2", className), ...props });
3071
+ var DialogFooter = ({ className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("div", { className: cn("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2", className), ...props });
3108
3072
  DialogFooter.displayName = "DialogFooter";
3109
- var DialogTitle = React11.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
3073
+ var DialogTitle = React11.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
3110
3074
  DialogPrimitive.Title,
3111
3075
  {
3112
3076
  ref,
@@ -3115,14 +3079,14 @@ var DialogTitle = React11.forwardRef(({ className, ...props }, ref) => /* @__PUR
3115
3079
  }
3116
3080
  ));
3117
3081
  DialogTitle.displayName = DialogPrimitive.Title.displayName;
3118
- var DialogDescription = React11.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(DialogPrimitive.Description, { ref, className: cn("text-sm text-muted-foreground", className), ...props }));
3082
+ var DialogDescription = React11.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(DialogPrimitive.Description, { ref, className: cn("text-sm text-muted-foreground", className), ...props }));
3119
3083
  DialogDescription.displayName = DialogPrimitive.Description.displayName;
3120
3084
 
3121
3085
  // src/components/ui/switch.tsx
3122
3086
  var React12 = __toESM(require("react"), 1);
3123
3087
  var SwitchPrimitives = __toESM(require("@radix-ui/react-switch"), 1);
3124
- var import_jsx_runtime21 = require("react/jsx-runtime");
3125
- var Switch = React12.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
3088
+ var import_jsx_runtime20 = require("react/jsx-runtime");
3089
+ var Switch = React12.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
3126
3090
  SwitchPrimitives.Root,
3127
3091
  {
3128
3092
  className: cn(
@@ -3131,7 +3095,7 @@ var Switch = React12.forwardRef(({ className, ...props }, ref) => /* @__PURE__ *
3131
3095
  ),
3132
3096
  ...props,
3133
3097
  ref,
3134
- children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
3098
+ children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
3135
3099
  SwitchPrimitives.Thumb,
3136
3100
  {
3137
3101
  className: cn(
@@ -4805,6 +4769,47 @@ function useTelescupAssets(options) {
4805
4769
  };
4806
4770
  }
4807
4771
 
4772
+ // src/components/cupcode/TelescupImage.tsx
4773
+ var import_jsx_runtime21 = require("react/jsx-runtime");
4774
+ var TelescupImage = ({
4775
+ apiId,
4776
+ imageWidth,
4777
+ imageHeight,
4778
+ fit = "cover",
4779
+ format = "avif",
4780
+ quality = 60,
4781
+ lang = "pt-BR",
4782
+ alt,
4783
+ title,
4784
+ loading = "lazy",
4785
+ className,
4786
+ ...props
4787
+ }) => {
4788
+ const { url, meta } = useTelescupImage(
4789
+ {
4790
+ id: apiId,
4791
+ width: imageWidth,
4792
+ height: imageHeight,
4793
+ fit,
4794
+ format,
4795
+ quality
4796
+ },
4797
+ lang
4798
+ );
4799
+ return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
4800
+ "img",
4801
+ {
4802
+ src: url,
4803
+ "data-api-id": apiId,
4804
+ alt: alt || meta.alt || "",
4805
+ title: title || meta.title,
4806
+ loading,
4807
+ className,
4808
+ ...props
4809
+ }
4810
+ );
4811
+ };
4812
+
4808
4813
  // src/components/cupcode/TelescupVideo.tsx
4809
4814
  var import_jsx_runtime22 = require("react/jsx-runtime");
4810
4815
  var TelescupVideo = ({
@@ -6788,7 +6793,9 @@ var applyThemePreference = (preference) => {
6788
6793
  const appliedMode = resolveAppliedThemeMode(preference);
6789
6794
  root.classList.toggle("dark", appliedMode === "dark");
6790
6795
  root.classList.toggle("light", appliedMode === "light");
6796
+ root.dataset.theme = appliedMode;
6791
6797
  root.dataset.cupcodeTheme = preference;
6798
+ root.style.colorScheme = appliedMode;
6792
6799
  if (typeof window === "undefined") return;
6793
6800
  try {
6794
6801
  window.localStorage.setItem(THEME_PREFERENCE_STORAGE_KEY, preference);
@@ -10402,7 +10409,7 @@ var UserMenuCupcode = ({
10402
10409
  return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("div", { className: cn("h-11 w-11 animate-pulse rounded-full bg-muted/70", className) });
10403
10410
  }
10404
10411
  if (!isAuthenticated) {
10405
- return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(JellyButtonOriginal, { label: loginLabel, size: "sm", className, onClick: onLogin });
10412
+ return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(JellyButtonOriginal, { label: loginLabel, color: "green", size: "sm", className, onClick: onLogin });
10406
10413
  }
10407
10414
  const customPanel = panels == null ? void 0 : panels[activeTab];
10408
10415
  const hasCustomPanel = typeof customPanel !== "undefined";
@@ -22249,10 +22256,490 @@ var Toaster = ({ theme, ...props }) => {
22249
22256
  );
22250
22257
  };
22251
22258
 
22259
+ // src/components/use-app-theme.ts
22260
+ var import_react17 = require("react");
22261
+
22262
+ // src/components/theme-context.ts
22263
+ var import_react16 = require("react");
22264
+ var ThemeContext = (0, import_react16.createContext)(null);
22265
+
22266
+ // src/components/use-app-theme.ts
22267
+ function useAppTheme() {
22268
+ const context = (0, import_react17.useContext)(ThemeContext);
22269
+ if (!context) {
22270
+ throw new Error("useAppTheme must be used inside ThemeProvider");
22271
+ }
22272
+ return context;
22273
+ }
22274
+
22275
+ // src/components/theme-toggle.tsx
22276
+ var import_jsx_runtime38 = require("react/jsx-runtime");
22277
+ function ThemeToggle({ className }) {
22278
+ const { theme, toggleTheme } = useAppTheme();
22279
+ const isDark = theme === "dark";
22280
+ const handleClick = (event) => {
22281
+ toggleTheme({
22282
+ x: event.clientX,
22283
+ y: event.clientY
22284
+ });
22285
+ };
22286
+ return /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)(
22287
+ "button",
22288
+ {
22289
+ type: "button",
22290
+ onClick: handleClick,
22291
+ "aria-label": isDark ? "Ativar modo claro" : "Ativar modo escuro",
22292
+ "aria-pressed": isDark,
22293
+ title: isDark ? "Ativar modo claro" : "Ativar modo escuro",
22294
+ className: ["cc-theme-toggle", isDark ? "is-dark" : "", className].filter(Boolean).join(" "),
22295
+ children: [
22296
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("span", { className: "track", children: [
22297
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("span", { className: "light-bg", children: [
22298
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("span", { className: "light-orb light-orb-1" }),
22299
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("span", { className: "light-orb light-orb-2" }),
22300
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("span", { className: "light-sweep" }),
22301
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("span", { className: "light-veil" })
22302
+ ] }),
22303
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("span", { className: "stars stars-1" }),
22304
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("span", { className: "stars stars-2" }),
22305
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("span", { className: "stars stars-3" }),
22306
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("span", { className: "cloud cloud-1" }),
22307
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("span", { className: "cloud cloud-2" }),
22308
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("span", { className: "thumb", children: [
22309
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("span", { className: "sun-core" }),
22310
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("span", { className: "moon-cut" })
22311
+ ] })
22312
+ ] }),
22313
+ /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("style", { children: `
22314
+ :root {
22315
+ --toggle-width: 76px;
22316
+ --toggle-height: 42px;
22317
+ --thumb-size: 30px;
22318
+ --toggle-thumb-offset: 34px;
22319
+ --duration: 560ms;
22320
+ --ease: cubic-bezier(0.22, 1, 0.36, 1);
22321
+ --dark-top: #7c5bbb;
22322
+ --dark-bottom: #3a2a58;
22323
+ }
22324
+
22325
+ .cc-theme-toggle {
22326
+ border: 0;
22327
+ background: transparent;
22328
+ padding: 0;
22329
+ cursor: pointer;
22330
+ display: inline-flex;
22331
+ align-items: center;
22332
+ justify-content: center;
22333
+ flex-shrink: 0;
22334
+ }
22335
+
22336
+ .cc-theme-toggle .track {
22337
+ position: relative;
22338
+ width: var(--toggle-width);
22339
+ height: var(--toggle-height);
22340
+ border-radius: 999px;
22341
+ overflow: hidden;
22342
+ background: linear-gradient(180deg, #f7f6fb 0%, #f1edf9 55%, #e6def5 100%);
22343
+ box-shadow:
22344
+ inset 0 1px 0 rgba(255, 255, 255, 0.92),
22345
+ inset 0 0 0 1px rgba(232, 219, 255, 0.85),
22346
+ 0 0 0 1px rgba(227, 182, 255, 0.45),
22347
+ 0 8px 24px rgba(134, 102, 182, 0.18);
22348
+ transition:
22349
+ background var(--duration) var(--ease),
22350
+ box-shadow var(--duration) var(--ease);
22351
+ }
22352
+
22353
+ .cc-theme-toggle .track::before {
22354
+ content: "";
22355
+ position: absolute;
22356
+ inset: 0;
22357
+ border-radius: inherit;
22358
+ padding: 1px;
22359
+ background: linear-gradient(
22360
+ 90deg,
22361
+ rgba(200, 106, 232, 0.95) 0%,
22362
+ rgba(199, 166, 255, 0.95) 38%,
22363
+ rgba(239, 233, 255, 0.95) 68%,
22364
+ rgba(243, 123, 175, 0.95) 100%
22365
+ );
22366
+ -webkit-mask:
22367
+ linear-gradient(#000 0 0) content-box,
22368
+ linear-gradient(#000 0 0);
22369
+ -webkit-mask-composite: xor;
22370
+ mask-composite: exclude;
22371
+ pointer-events: none;
22372
+ }
22373
+
22374
+ .cc-theme-toggle .track::after {
22375
+ content: "";
22376
+ position: absolute;
22377
+ inset: 4px;
22378
+ border-radius: inherit;
22379
+ border: 1px solid rgba(255, 255, 255, 0.72);
22380
+ box-shadow: inset 0 0 0 1px rgba(217, 204, 248, 0.38);
22381
+ pointer-events: none;
22382
+ }
22383
+
22384
+ .cc-theme-toggle .light-bg {
22385
+ position: absolute;
22386
+ inset: 0;
22387
+ border-radius: inherit;
22388
+ overflow: hidden;
22389
+ opacity: 1;
22390
+ transition: opacity 240ms ease;
22391
+ z-index: 0;
22392
+ }
22393
+
22394
+ .cc-theme-toggle .light-orb {
22395
+ position: absolute;
22396
+ border-radius: 999px;
22397
+ filter: blur(10px);
22398
+ will-change: transform, opacity;
22399
+ }
22400
+
22401
+ .cc-theme-toggle .light-orb-1 {
22402
+ width: 48px;
22403
+ height: 28px;
22404
+ left: -8px;
22405
+ bottom: -1px;
22406
+ background: radial-gradient(
22407
+ ellipse at center,
22408
+ rgba(241, 138, 195, 0.58) 0%,
22409
+ rgba(232, 167, 208, 0.24) 58%,
22410
+ rgba(255, 255, 255, 0) 100%
22411
+ );
22412
+ animation: cc-theme-light-flow-pink 6.4s ease-in-out infinite;
22413
+ }
22414
+
22415
+ .cc-theme-toggle .light-orb-2 {
22416
+ width: 52px;
22417
+ height: 30px;
22418
+ right: -10px;
22419
+ top: -3px;
22420
+ background: radial-gradient(
22421
+ ellipse at center,
22422
+ rgba(200, 141, 255, 0.34) 0%,
22423
+ rgba(217, 184, 255, 0.14) 60%,
22424
+ rgba(255, 255, 255, 0) 100%
22425
+ );
22426
+ animation: cc-theme-light-flow-purple 6.4s ease-in-out infinite;
22427
+ }
22428
+
22429
+ .cc-theme-toggle .light-sweep {
22430
+ position: absolute;
22431
+ left: -44px;
22432
+ bottom: 5px;
22433
+ width: 42px;
22434
+ height: 4px;
22435
+ border-radius: 999px;
22436
+ background: linear-gradient(
22437
+ 90deg,
22438
+ rgba(255, 122, 200, 0) 0%,
22439
+ rgba(217, 108, 255, 0.65) 35%,
22440
+ rgba(183, 124, 255, 0.8) 70%,
22441
+ rgba(255, 255, 255, 0) 100%
22442
+ );
22443
+ filter: blur(2px);
22444
+ opacity: 0.9;
22445
+ animation: cc-theme-light-sweep 4.3s linear infinite;
22446
+ }
22447
+
22448
+ .cc-theme-toggle .light-veil {
22449
+ position: absolute;
22450
+ inset: 0;
22451
+ background: rgba(255, 255, 255, 0.16);
22452
+ animation: cc-theme-light-veil 5.8s ease-in-out infinite;
22453
+ }
22454
+
22455
+ .cc-theme-toggle.is-dark .track {
22456
+ background: linear-gradient(180deg, var(--dark-top) 0%, var(--dark-bottom) 100%);
22457
+ box-shadow:
22458
+ inset 0 2px 8px rgba(255, 255, 255, 0.06),
22459
+ inset 0 -4px 12px rgba(0, 0, 0, 0.28),
22460
+ 0 8px 24px rgba(58, 42, 88, 0.3);
22461
+ }
22462
+
22463
+ .cc-theme-toggle.is-dark .track::before,
22464
+ .cc-theme-toggle.is-dark .track::after,
22465
+ .cc-theme-toggle.is-dark .light-bg {
22466
+ opacity: 0;
22467
+ }
22468
+
22469
+ .cc-theme-toggle .thumb {
22470
+ position: absolute;
22471
+ top: 6px;
22472
+ left: 6px;
22473
+ width: var(--thumb-size);
22474
+ height: var(--thumb-size);
22475
+ border-radius: 50%;
22476
+ background: linear-gradient(180deg, #ffd76a 0%, #ffb238 100%);
22477
+ box-shadow:
22478
+ 0 4px 10px rgba(255, 176, 56, 0.35),
22479
+ inset 0 2px 4px rgba(255, 255, 255, 0.5);
22480
+ transition:
22481
+ transform var(--duration) var(--ease),
22482
+ background var(--duration) var(--ease),
22483
+ box-shadow var(--duration) var(--ease);
22484
+ z-index: 3;
22485
+ overflow: hidden;
22486
+ }
22487
+
22488
+ .cc-theme-toggle.is-dark .thumb {
22489
+ transform: translateX(var(--toggle-thumb-offset));
22490
+ background: linear-gradient(180deg, #f5f7ff 0%, #cfd8ef 100%);
22491
+ box-shadow:
22492
+ 0 4px 12px rgba(194, 208, 255, 0.25),
22493
+ inset 0 2px 4px rgba(255, 255, 255, 0.8);
22494
+ }
22495
+
22496
+ .cc-theme-toggle .sun-core {
22497
+ position: absolute;
22498
+ inset: 0;
22499
+ border-radius: 50%;
22500
+ }
22501
+
22502
+ .cc-theme-toggle .moon-cut {
22503
+ position: absolute;
22504
+ width: 22px;
22505
+ height: 22px;
22506
+ border-radius: 50%;
22507
+ background: linear-gradient(180deg, var(--dark-top) 0%, var(--dark-bottom) 100%);
22508
+ top: 4px;
22509
+ left: 12px;
22510
+ transform: scale(0.2);
22511
+ opacity: 0;
22512
+ transition:
22513
+ transform var(--duration) var(--ease),
22514
+ opacity calc(var(--duration) * 0.8) var(--ease);
22515
+ }
22516
+
22517
+ .cc-theme-toggle.is-dark .moon-cut {
22518
+ transform: scale(1);
22519
+ opacity: 1;
22520
+ }
22521
+
22522
+ .cc-theme-toggle .stars {
22523
+ position: absolute;
22524
+ border-radius: 50%;
22525
+ background: white;
22526
+ opacity: 0;
22527
+ transform: scale(0.9);
22528
+ z-index: 1;
22529
+ }
22530
+
22531
+ .cc-theme-toggle .stars::after {
22532
+ content: "";
22533
+ position: absolute;
22534
+ inset: -3px;
22535
+ border-radius: 50%;
22536
+ background: rgba(255, 255, 255, 0.18);
22537
+ filter: blur(3px);
22538
+ }
22539
+
22540
+ .cc-theme-toggle .stars-1 {
22541
+ width: 4px;
22542
+ height: 4px;
22543
+ top: 9px;
22544
+ left: 14px;
22545
+ animation: cc-theme-star-blink-1 1.9s ease-in-out infinite;
22546
+ }
22547
+
22548
+ .cc-theme-toggle .stars-2 {
22549
+ width: 4px;
22550
+ height: 4px;
22551
+ top: 15px;
22552
+ left: 26px;
22553
+ animation: cc-theme-star-blink-2 2.3s ease-in-out infinite;
22554
+ }
22555
+
22556
+ .cc-theme-toggle .stars-3 {
22557
+ width: 3px;
22558
+ height: 3px;
22559
+ top: 26px;
22560
+ left: 20px;
22561
+ animation: cc-theme-star-blink-3 1.7s ease-in-out infinite;
22562
+ }
22563
+
22564
+ .cc-theme-toggle:not(.is-dark) .stars {
22565
+ opacity: 0;
22566
+ animation-play-state: paused;
22567
+ }
22568
+
22569
+ .cc-theme-toggle.is-dark .stars {
22570
+ animation-play-state: running;
22571
+ }
22572
+
22573
+ .cc-theme-toggle .cloud {
22574
+ position: absolute;
22575
+ background: #fff;
22576
+ border-radius: 999px;
22577
+ transition: opacity 320ms ease;
22578
+ will-change: transform;
22579
+ }
22580
+
22581
+ .cc-theme-toggle .cloud::before,
22582
+ .cc-theme-toggle .cloud::after {
22583
+ content: "";
22584
+ position: absolute;
22585
+ background: inherit;
22586
+ border-radius: 50%;
22587
+ }
22588
+
22589
+ .cc-theme-toggle .cloud-1 {
22590
+ width: 6px;
22591
+ height: 2.5px;
22592
+ left: 58px;
22593
+ top: 11px;
22594
+ box-shadow: 3.5px 0 0 0 #fff;
22595
+ z-index: 2;
22596
+ animation: cc-theme-cloud-float-small 4.8s ease-in-out infinite;
22597
+ }
22598
+
22599
+ .cc-theme-toggle .cloud-1::before {
22600
+ width: 3px;
22601
+ height: 3px;
22602
+ left: 0.5px;
22603
+ top: -1.5px;
22604
+ }
22605
+
22606
+ .cc-theme-toggle .cloud-1::after {
22607
+ width: 4px;
22608
+ height: 4px;
22609
+ left: 2.5px;
22610
+ top: -2.5px;
22611
+ }
22612
+
22613
+ .cc-theme-toggle .cloud-2 {
22614
+ width: 18px;
22615
+ height: 7px;
22616
+ left: 40px;
22617
+ top: 23px;
22618
+ box-shadow: 12px 0 0 0 #fff;
22619
+ z-index: 2;
22620
+ animation: cc-theme-cloud-float-large 9.6s ease-in-out infinite;
22621
+ }
22622
+
22623
+ .cc-theme-toggle .cloud-2::before {
22624
+ width: 10px;
22625
+ height: 10px;
22626
+ left: 2px;
22627
+ top: -5px;
22628
+ }
22629
+
22630
+ .cc-theme-toggle .cloud-2::after {
22631
+ width: 13px;
22632
+ height: 13px;
22633
+ left: 9px;
22634
+ top: -9px;
22635
+ }
22636
+
22637
+ .cc-theme-toggle.is-dark .cloud {
22638
+ opacity: 0;
22639
+ animation-play-state: paused;
22640
+ }
22641
+
22642
+ .cc-theme-toggle:focus-visible .track {
22643
+ outline: 3px solid rgba(99, 102, 241, 0.45);
22644
+ outline-offset: 4px;
22645
+ }
22646
+
22647
+ @keyframes cc-theme-light-flow-pink {
22648
+ 0% { transform: translateX(-8px) translateY(0px); opacity: 0.7; }
22649
+ 25% { transform: translateX(4px) translateY(-1px); opacity: 0.48; }
22650
+ 50% { transform: translateX(18px) translateY(-3px); opacity: 0.22; }
22651
+ 75% { transform: translateX(30px) translateY(-5px); opacity: 0.12; }
22652
+ 100% { transform: translateX(-8px) translateY(0px); opacity: 0.7; }
22653
+ }
22654
+
22655
+ @keyframes cc-theme-light-flow-purple {
22656
+ 0% { transform: translateX(0px) translateY(0px); opacity: 0.22; }
22657
+ 25% { transform: translateX(-12px) translateY(0px); opacity: 0.34; }
22658
+ 50% { transform: translateX(-24px) translateY(2px); opacity: 0.46; }
22659
+ 75% { transform: translateX(-34px) translateY(5px); opacity: 0.24; }
22660
+ 100% { transform: translateX(0px) translateY(0px); opacity: 0.22; }
22661
+ }
22662
+
22663
+ @keyframes cc-theme-light-sweep {
22664
+ 0% { transform: translateX(0); opacity: 0; }
22665
+ 25% { opacity: 0.95; }
22666
+ 60% { opacity: 0.72; }
22667
+ 100% { transform: translateX(124px); opacity: 0; }
22668
+ }
22669
+
22670
+ @keyframes cc-theme-light-veil {
22671
+ 0%, 100% { opacity: 0.18; }
22672
+ 30% { opacity: 0.1; }
22673
+ 60% { opacity: 0.16; }
22674
+ 80% { opacity: 0.22; }
22675
+ }
22676
+
22677
+ @keyframes cc-theme-cloud-float-small {
22678
+ 0% { transform: translateX(0); }
22679
+ 50% { transform: translateX(-12px); }
22680
+ 100% { transform: translateX(0); }
22681
+ }
22682
+
22683
+ @keyframes cc-theme-cloud-float-large {
22684
+ 0% { transform: translateX(0); }
22685
+ 50% { transform: translateX(-18px); }
22686
+ 100% { transform: translateX(0); }
22687
+ }
22688
+
22689
+ @keyframes cc-theme-star-blink-1 {
22690
+ 0%, 100% { opacity: 0.35; transform: scale(0.9); }
22691
+ 50% { opacity: 1; transform: scale(1.08); }
22692
+ }
22693
+
22694
+ @keyframes cc-theme-star-blink-2 {
22695
+ 0%, 100% { opacity: 0.25; transform: scale(0.85); }
22696
+ 45% { opacity: 0.95; transform: scale(1.05); }
22697
+ }
22698
+
22699
+ @keyframes cc-theme-star-blink-3 {
22700
+ 0%, 100% { opacity: 0.3; transform: scale(0.9); }
22701
+ 55% { opacity: 1; transform: scale(1.12); }
22702
+ }
22703
+ ` })
22704
+ ]
22705
+ }
22706
+ );
22707
+ }
22708
+
22252
22709
  // src/lib/accountsAuth.ts
22253
22710
  var normalizeBaseUrl2 = (value) => value.replace(/\/+$/, "");
22711
+ var AUTH_REQUEST_TIMEOUT_MS = 8e3;
22712
+ var LOCAL_BROWSER_HOSTNAMES = /* @__PURE__ */ new Set(["localhost", "127.0.0.1", "::1"]);
22713
+ var isLocalBrowserOrigin = () => {
22714
+ if (typeof window === "undefined") return false;
22715
+ return LOCAL_BROWSER_HOSTNAMES.has(window.location.hostname);
22716
+ };
22717
+ var getLocalRedirectUri = () => {
22718
+ if (typeof window === "undefined") {
22719
+ return "http://localhost:8080/auth/callback";
22720
+ }
22721
+ const port = window.location.port || "8080";
22722
+ return `${window.location.protocol}//localhost:${port}/auth/callback`;
22723
+ };
22724
+ var fetchWithTimeout = async (input, init, timeoutMs = AUTH_REQUEST_TIMEOUT_MS) => {
22725
+ const controller = new AbortController();
22726
+ const timeoutId = window.setTimeout(() => controller.abort(), timeoutMs);
22727
+ try {
22728
+ return await fetch(input, {
22729
+ ...init,
22730
+ signal: controller.signal
22731
+ });
22732
+ } catch (error) {
22733
+ if (error.name === "AbortError") {
22734
+ throw new Error("Timeout ao consultar o Accounts.");
22735
+ }
22736
+ throw error;
22737
+ } finally {
22738
+ window.clearTimeout(timeoutId);
22739
+ }
22740
+ };
22254
22741
  var getAccountsConfig = () => {
22255
- var _a78, _b7, _c;
22742
+ var _a78, _b7;
22256
22743
  const baseUrl = normalizeBaseUrl2(
22257
22744
  (_a78 = getRuntimeEnv("VITE_ACCOUNTS_BASE_URL")) != null ? _a78 : "https://accounts.cupcode.com.br"
22258
22745
  );
@@ -22260,12 +22747,14 @@ var getAccountsConfig = () => {
22260
22747
  if (!clientId) {
22261
22748
  throw new Error("VITE_ACCOUNTS_CLIENT_ID \xE9 obrigat\xF3rio para login.");
22262
22749
  }
22263
- const redirectUri = (_b7 = getRuntimeEnv("VITE_ACCOUNTS_REDIRECT_URI")) != null ? _b7 : `${window.location.origin}/auth/callback`;
22750
+ const runtimeRedirectUri = getRuntimeEnv("VITE_ACCOUNTS_REDIRECT_URI");
22751
+ const fallbackRedirectUri = typeof window === "undefined" ? "http://localhost:8080/auth/callback" : `${window.location.origin}/auth/callback`;
22752
+ const redirectUri = runtimeRedirectUri != null ? runtimeRedirectUri : isLocalBrowserOrigin() ? getLocalRedirectUri() : fallbackRedirectUri;
22264
22753
  return {
22265
22754
  baseUrl,
22266
22755
  clientId,
22267
22756
  redirectUri,
22268
- scope: (_c = getRuntimeEnv("VITE_ACCOUNTS_SCOPE")) != null ? _c : "openid profile email",
22757
+ scope: (_b7 = getRuntimeEnv("VITE_ACCOUNTS_SCOPE")) != null ? _b7 : "openid profile email",
22269
22758
  audience: getRuntimeEnv("VITE_ACCOUNTS_AUDIENCE"),
22270
22759
  authUrl: getRuntimeEnv("VITE_ACCOUNTS_AUTH_URL"),
22271
22760
  tokenUrl: getRuntimeEnv("VITE_ACCOUNTS_TOKEN_URL"),
@@ -22291,7 +22780,7 @@ var resolveOidcEndpoints = async (config) => {
22291
22780
  };
22292
22781
  }
22293
22782
  const discoveryUrl = `${normalizeBaseUrl2(config.baseUrl)}/.well-known/openid-configuration`;
22294
- const response = await fetch(discoveryUrl);
22783
+ const response = await fetchWithTimeout(discoveryUrl);
22295
22784
  if (!response.ok) {
22296
22785
  throw new Error("Falha ao resolver configura\xE7\xE3o OIDC do accounts.");
22297
22786
  }
@@ -22382,7 +22871,7 @@ var exchangeCodeForToken = async (config, tokenUrl, code, verifier) => {
22382
22871
  redirect_uri: config.redirectUri,
22383
22872
  code_verifier: verifier
22384
22873
  });
22385
- const response = await fetch(tokenUrl, {
22874
+ const response = await fetchWithTimeout(tokenUrl, {
22386
22875
  method: "POST",
22387
22876
  headers: { "Content-Type": "application/x-www-form-urlencoded" },
22388
22877
  body
@@ -22429,7 +22918,7 @@ var decodeJwt = (token) => {
22429
22918
  };
22430
22919
 
22431
22920
  // src/components/cupcode/MainNavbar.tsx
22432
- var import_jsx_runtime38 = require("react/jsx-runtime");
22921
+ var import_jsx_runtime39 = require("react/jsx-runtime");
22433
22922
  var parsePositiveInteger = (rawValue, fallback) => {
22434
22923
  const parsed = Number(rawValue);
22435
22924
  if (!Number.isFinite(parsed) || parsed <= 0) return fallback;
@@ -22589,6 +23078,7 @@ var DATE_WITH_YEAR_PT_BR_FORMATTER = new Intl.DateTimeFormat("pt-BR", {
22589
23078
  year: "numeric"
22590
23079
  });
22591
23080
  var CHAT_FEATURE_FLAGS_STORAGE_KEY = "cc_chat_feature_flags";
23081
+ var DEFAULT_LOGO_SLOT_CLASS_NAME = "h-10 w-[175px] shrink-0";
22592
23082
  var getDefaultChatFeatureFlags = () => ({
22593
23083
  hasReadAt: true,
22594
23084
  hasReplyToMessage: true,
@@ -23080,24 +23570,24 @@ var MainNavbar = ({
23080
23570
  appVersion
23081
23571
  }) => {
23082
23572
  var _a78, _b7, _c;
23083
- const [chatUsers, setChatUsers] = (0, import_react16.useState)([]);
23084
- const [chatMessages, setChatMessages] = (0, import_react16.useState)([]);
23085
- const [chatMessageLogs, setChatMessageLogs] = (0, import_react16.useState)([]);
23086
- const [chatReactions, setChatReactions] = (0, import_react16.useState)([]);
23087
- const [isChatLoading, setIsChatLoading] = (0, import_react16.useState)(false);
23088
- const [isChatSending, setIsChatSending] = (0, import_react16.useState)(false);
23089
- const [chatError, setChatError] = (0, import_react16.useState)(null);
23090
- const [resolvedSenderId, setResolvedSenderId] = (0, import_react16.useState)(null);
23091
- const [tokenDerivedUserId, setTokenDerivedUserId] = (0, import_react16.useState)(null);
23092
- const [tokenDerivedEmail, setTokenDerivedEmail] = (0, import_react16.useState)(void 0);
23093
- const [persistedProfileAvatarValue, setPersistedProfileAvatarValue] = (0, import_react16.useState)(void 0);
23094
- const [accountsLanguage, setAccountsLanguage] = (0, import_react16.useState)("pt-BR");
23095
- const [accountsRecentActivity, setAccountsRecentActivity] = (0, import_react16.useState)([]);
23096
- const [isAccountsActivityLoading, setIsAccountsActivityLoading] = (0, import_react16.useState)(false);
23097
- const chatMessagesRef = (0, import_react16.useRef)([]);
23098
- const chatFeatureFlagsRef = (0, import_react16.useRef)(readStoredChatFeatureFlags());
23099
- const presenceSnapshotsRef = (0, import_react16.useRef)(/* @__PURE__ */ new Map());
23100
- const updateChatFeatureFlags = (0, import_react16.useCallback)((partial) => {
23573
+ const [chatUsers, setChatUsers] = (0, import_react18.useState)([]);
23574
+ const [chatMessages, setChatMessages] = (0, import_react18.useState)([]);
23575
+ const [chatMessageLogs, setChatMessageLogs] = (0, import_react18.useState)([]);
23576
+ const [chatReactions, setChatReactions] = (0, import_react18.useState)([]);
23577
+ const [isChatLoading, setIsChatLoading] = (0, import_react18.useState)(false);
23578
+ const [isChatSending, setIsChatSending] = (0, import_react18.useState)(false);
23579
+ const [chatError, setChatError] = (0, import_react18.useState)(null);
23580
+ const [resolvedSenderId, setResolvedSenderId] = (0, import_react18.useState)(null);
23581
+ const [tokenDerivedUserId, setTokenDerivedUserId] = (0, import_react18.useState)(null);
23582
+ const [tokenDerivedEmail, setTokenDerivedEmail] = (0, import_react18.useState)(void 0);
23583
+ const [persistedProfileAvatarValue, setPersistedProfileAvatarValue] = (0, import_react18.useState)(void 0);
23584
+ const [accountsLanguage, setAccountsLanguage] = (0, import_react18.useState)("pt-BR");
23585
+ const [accountsRecentActivity, setAccountsRecentActivity] = (0, import_react18.useState)([]);
23586
+ const [isAccountsActivityLoading, setIsAccountsActivityLoading] = (0, import_react18.useState)(false);
23587
+ const chatMessagesRef = (0, import_react18.useRef)([]);
23588
+ const chatFeatureFlagsRef = (0, import_react18.useRef)(readStoredChatFeatureFlags());
23589
+ const presenceSnapshotsRef = (0, import_react18.useRef)(/* @__PURE__ */ new Map());
23590
+ const updateChatFeatureFlags = (0, import_react18.useCallback)((partial) => {
23101
23591
  const nextFlags = {
23102
23592
  ...chatFeatureFlagsRef.current,
23103
23593
  ...partial
@@ -23105,28 +23595,28 @@ var MainNavbar = ({
23105
23595
  chatFeatureFlagsRef.current = nextFlags;
23106
23596
  persistChatFeatureFlags(nextFlags);
23107
23597
  }, []);
23108
- const currentPathname = (0, import_react16.useMemo)(() => {
23598
+ const currentPathname = (0, import_react18.useMemo)(() => {
23109
23599
  if (pathname && pathname.trim() !== "") return pathname;
23110
23600
  if (typeof window !== "undefined") return window.location.pathname || "/";
23111
23601
  return "/";
23112
23602
  }, [pathname]);
23113
- const currentUserId = (0, import_react16.useMemo)(() => {
23603
+ const currentUserId = (0, import_react18.useMemo)(() => {
23114
23604
  var _a79;
23115
23605
  return (_a79 = resolveCurrentUserId(authUser)) != null ? _a79 : tokenDerivedUserId;
23116
23606
  }, [authUser, tokenDerivedUserId]);
23117
- const authEmail = (0, import_react16.useMemo)(
23607
+ const authEmail = (0, import_react18.useMemo)(
23118
23608
  () => {
23119
23609
  var _a79, _b8;
23120
23610
  return (_b8 = (_a79 = toStringOrUndefined(authUser == null ? void 0 : authUser.email)) == null ? void 0 : _a79.toLowerCase()) != null ? _b8 : tokenDerivedEmail;
23121
23611
  },
23122
23612
  [authUser == null ? void 0 : authUser.email, tokenDerivedEmail]
23123
23613
  );
23124
- const isChatSuperAdmin = (0, import_react16.useMemo)(() => {
23614
+ const isChatSuperAdmin = (0, import_react18.useMemo)(() => {
23125
23615
  var _a79, _b8;
23126
23616
  const roleTokens = `${(_a79 = authUser == null ? void 0 : authUser.role) != null ? _a79 : ""} ${(_b8 = authUser == null ? void 0 : authUser.jobTitle) != null ? _b8 : ""}`.toLowerCase();
23127
23617
  return roleTokens.includes("superadmin") || roleTokens.includes("super admin");
23128
23618
  }, [authUser == null ? void 0 : authUser.jobTitle, authUser == null ? void 0 : authUser.role]);
23129
- const resolvedTelescupBaseUrl = (0, import_react16.useMemo)(() => {
23619
+ const resolvedTelescupBaseUrl = (0, import_react18.useMemo)(() => {
23130
23620
  if (TELESCUP_BASE_URL) {
23131
23621
  return TELESCUP_BASE_URL;
23132
23622
  }
@@ -23142,7 +23632,7 @@ var MainNavbar = ({
23142
23632
  return false;
23143
23633
  }
23144
23634
  })();
23145
- const resolvedAuthStatus = (0, import_react16.useMemo)(() => {
23635
+ const resolvedAuthStatus = (0, import_react18.useMemo)(() => {
23146
23636
  if (authStatus) return authStatus;
23147
23637
  if ((authUser == null ? void 0 : authUser.sub) || (authUser == null ? void 0 : authUser.id) || (authUser == null ? void 0 : authUser.userId) || (authUser == null ? void 0 : authUser.email)) {
23148
23638
  return "authenticated";
@@ -23162,7 +23652,7 @@ var MainNavbar = ({
23162
23652
  tokenDerivedUserId
23163
23653
  ]);
23164
23654
  const isAuthenticated = resolvedAuthStatus === "authenticated";
23165
- (0, import_react16.useEffect)(() => {
23655
+ (0, import_react18.useEffect)(() => {
23166
23656
  if (authStatus === "unauthenticated") {
23167
23657
  setTokenDerivedUserId(null);
23168
23658
  setTokenDerivedEmail(void 0);
@@ -23205,7 +23695,7 @@ var MainNavbar = ({
23205
23695
  canceled = true;
23206
23696
  };
23207
23697
  }, [authStatus, getAccessToken]);
23208
- (0, import_react16.useEffect)(() => {
23698
+ (0, import_react18.useEffect)(() => {
23209
23699
  if (!isAuthenticated) {
23210
23700
  setResolvedSenderId(null);
23211
23701
  setPersistedProfileAvatarValue(void 0);
@@ -23284,7 +23774,7 @@ var MainNavbar = ({
23284
23774
  canceled = true;
23285
23775
  };
23286
23776
  }, [authEmail, currentUserId, isAuthenticated]);
23287
- (0, import_react16.useEffect)(() => {
23777
+ (0, import_react18.useEffect)(() => {
23288
23778
  if (!isAuthenticated) return;
23289
23779
  if (typeof window === "undefined") return;
23290
23780
  const controller = new AbortController();
@@ -23360,10 +23850,10 @@ var MainNavbar = ({
23360
23850
  controller.abort();
23361
23851
  };
23362
23852
  }, [getAccessToken, isAuthenticated, currentUserId]);
23363
- (0, import_react16.useEffect)(() => {
23853
+ (0, import_react18.useEffect)(() => {
23364
23854
  chatMessagesRef.current = chatMessages;
23365
23855
  }, [chatMessages]);
23366
- (0, import_react16.useEffect)(() => {
23856
+ (0, import_react18.useEffect)(() => {
23367
23857
  if (!isAuthenticated) {
23368
23858
  presenceSnapshotsRef.current.clear();
23369
23859
  setChatUsers([]);
@@ -23764,7 +24254,7 @@ var MainNavbar = ({
23764
24254
  canceled = true;
23765
24255
  };
23766
24256
  }, [effectiveCurrentUserId, isAuthenticated, isChatSuperAdmin, updateChatFeatureFlags]);
23767
- (0, import_react16.useEffect)(() => {
24257
+ (0, import_react18.useEffect)(() => {
23768
24258
  if (!isAuthenticated || !effectiveCurrentUserId) return;
23769
24259
  const supabase = getSupabase();
23770
24260
  if (!supabase) return;
@@ -23896,7 +24386,7 @@ var MainNavbar = ({
23896
24386
  void supabase.removeChannel(presenceChannel);
23897
24387
  };
23898
24388
  }, [effectiveCurrentUserId, isAuthenticated, isChatSuperAdmin]);
23899
- (0, import_react16.useEffect)(() => {
24389
+ (0, import_react18.useEffect)(() => {
23900
24390
  if (!isAuthenticated) return;
23901
24391
  const intervalId = window.setInterval(() => {
23902
24392
  const now = Date.now();
@@ -23922,7 +24412,7 @@ var MainNavbar = ({
23922
24412
  window.clearInterval(intervalId);
23923
24413
  };
23924
24414
  }, [isAuthenticated]);
23925
- const chatUnreadByUser = (0, import_react16.useMemo)(() => {
24415
+ const chatUnreadByUser = (0, import_react18.useMemo)(() => {
23926
24416
  const counters = {};
23927
24417
  chatMessages.forEach((message) => {
23928
24418
  var _a79;
@@ -23932,10 +24422,10 @@ var MainNavbar = ({
23932
24422
  });
23933
24423
  return counters;
23934
24424
  }, [chatMessages]);
23935
- const chatUnreadCount = (0, import_react16.useMemo)(() => {
24425
+ const chatUnreadCount = (0, import_react18.useMemo)(() => {
23936
24426
  return Object.values(chatUnreadByUser).reduce((total, count2) => total + count2, 0);
23937
24427
  }, [chatUnreadByUser]);
23938
- const handleChatMarkConversationRead = (0, import_react16.useCallback)(
24428
+ const handleChatMarkConversationRead = (0, import_react18.useCallback)(
23939
24429
  async ({ contactId }) => {
23940
24430
  if (!effectiveCurrentUserId || !contactId) return;
23941
24431
  const readAt = (/* @__PURE__ */ new Date()).toISOString();
@@ -23986,7 +24476,7 @@ var MainNavbar = ({
23986
24476
  },
23987
24477
  [effectiveCurrentUserId, updateChatFeatureFlags]
23988
24478
  );
23989
- const handleChatToggleReaction = (0, import_react16.useCallback)(
24479
+ const handleChatToggleReaction = (0, import_react18.useCallback)(
23990
24480
  async ({ messageId, emoji }) => {
23991
24481
  if (!effectiveCurrentUserId || !messageId || !emoji) return;
23992
24482
  const localToggleReaction = () => {
@@ -24064,7 +24554,7 @@ var MainNavbar = ({
24064
24554
  },
24065
24555
  [chatReactions, effectiveCurrentUserId, updateChatFeatureFlags]
24066
24556
  );
24067
- const insertChatLog = (0, import_react16.useCallback)(
24557
+ const insertChatLog = (0, import_react18.useCallback)(
24068
24558
  async ({
24069
24559
  messageId,
24070
24560
  action,
@@ -24095,7 +24585,7 @@ var MainNavbar = ({
24095
24585
  },
24096
24586
  [effectiveCurrentUserId, updateChatFeatureFlags]
24097
24587
  );
24098
- const handleChatEditMessage = (0, import_react16.useCallback)(
24588
+ const handleChatEditMessage = (0, import_react18.useCallback)(
24099
24589
  async ({ messageId, text }) => {
24100
24590
  if (!effectiveCurrentUserId || !messageId) return;
24101
24591
  const nextText = text.trim();
@@ -24165,7 +24655,7 @@ var MainNavbar = ({
24165
24655
  },
24166
24656
  [chatMessages, effectiveCurrentUserId, insertChatLog, updateChatFeatureFlags]
24167
24657
  );
24168
- const handleChatDeleteMessage = (0, import_react16.useCallback)(
24658
+ const handleChatDeleteMessage = (0, import_react18.useCallback)(
24169
24659
  async ({ messageId }) => {
24170
24660
  if (!effectiveCurrentUserId || !messageId) return;
24171
24661
  const targetMessage = chatMessages.find((message) => message.id === messageId);
@@ -24252,7 +24742,7 @@ var MainNavbar = ({
24252
24742
  },
24253
24743
  [chatMessages, chatReactions, effectiveCurrentUserId, insertChatLog, updateChatFeatureFlags]
24254
24744
  );
24255
- const handleChatViewMessageData = (0, import_react16.useCallback)(
24745
+ const handleChatViewMessageData = (0, import_react18.useCallback)(
24256
24746
  ({ messageId }) => {
24257
24747
  const message = chatMessages.find((entry) => entry.id === messageId);
24258
24748
  if (!message) return;
@@ -24271,7 +24761,7 @@ var MainNavbar = ({
24271
24761
  },
24272
24762
  [chatMessages]
24273
24763
  );
24274
- const handleChatSendMessage = (0, import_react16.useCallback)(
24764
+ const handleChatSendMessage = (0, import_react18.useCallback)(
24275
24765
  async ({
24276
24766
  recipientId,
24277
24767
  text,
@@ -24360,7 +24850,7 @@ var MainNavbar = ({
24360
24850
  },
24361
24851
  [effectiveCurrentUserId, updateChatFeatureFlags]
24362
24852
  );
24363
- const items = (0, import_react16.useMemo)(() => {
24853
+ const items = (0, import_react18.useMemo)(() => {
24364
24854
  var _a79;
24365
24855
  if (!showNavItems) return [];
24366
24856
  const normalizedPathname = currentPathname === "" ? "/" : currentPathname;
@@ -24388,32 +24878,9 @@ var MainNavbar = ({
24388
24878
  };
24389
24879
  });
24390
24880
  }, [currentPathname, onNavigate, showNavItems]);
24391
- const resolvedLogo = (0, import_react16.useMemo)(() => {
24881
+ const resolvedLogo = (0, import_react18.useMemo)(() => {
24392
24882
  if (logo !== void 0) return logo;
24393
- return /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("div", { className: "flex items-center gap-[15px]", children: [
24394
- /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
24395
- TelescupImage,
24396
- {
24397
- apiId: "be574751-cf1b-499a-8473-360b4115b447",
24398
- imageWidth: 40,
24399
- imageHeight: 40,
24400
- alt: "Design System Cupcode",
24401
- loading: "eager",
24402
- className: "h-10 w-auto"
24403
- }
24404
- ),
24405
- /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
24406
- TelescupImage,
24407
- {
24408
- apiId: "3b913721-2eda-48fd-8d76-1a53055a337f",
24409
- imageWidth: 120,
24410
- imageHeight: 32,
24411
- alt: "Cupcode",
24412
- loading: "eager",
24413
- className: "h-8 w-auto"
24414
- }
24415
- )
24416
- ] });
24883
+ return /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("div", { className: DEFAULT_LOGO_SLOT_CLASS_NAME, "aria-hidden": "true" });
24417
24884
  }, [logo]);
24418
24885
  const handleCtaClick = () => {
24419
24886
  if (onNavigate) {
@@ -24448,7 +24915,7 @@ var MainNavbar = ({
24448
24915
  if (typeof window === "undefined") return;
24449
24916
  window.open(`${MC_BASE_URL2}/tasks`, "_blank", "noopener,noreferrer");
24450
24917
  };
24451
- const handleChatOpenUserProfile = (0, import_react16.useCallback)(({ userId }) => {
24918
+ const handleChatOpenUserProfile = (0, import_react18.useCallback)(({ userId }) => {
24452
24919
  var _a79;
24453
24920
  if (!userId || typeof window === "undefined") return;
24454
24921
  const baseUrl = ((_a79 = getRuntimeEnv("VITE_ACCOUNTS_BASE_URL")) != null ? _a79 : "https://accounts.cupcode.com.br").replace(
@@ -24457,7 +24924,7 @@ var MainNavbar = ({
24457
24924
  );
24458
24925
  window.open(`${baseUrl}/users/${encodeURIComponent(userId)}`, "_blank", "noopener,noreferrer");
24459
24926
  }, []);
24460
- const handleChatSendEmail = (0, import_react16.useCallback)(({ email }) => {
24927
+ const handleChatSendEmail = (0, import_react18.useCallback)(({ email }) => {
24461
24928
  if (!email) {
24462
24929
  import_sonner.toast.message("E-mail indispon\xEDvel", {
24463
24930
  description: "Esse usu\xE1rio n\xE3o possui e-mail dispon\xEDvel para contato."
@@ -24467,7 +24934,7 @@ var MainNavbar = ({
24467
24934
  if (typeof window === "undefined") return;
24468
24935
  window.open(`mailto:${email}`, "_blank", "noopener,noreferrer");
24469
24936
  }, []);
24470
- const handleChatAddToAgenda = (0, import_react16.useCallback)(
24937
+ const handleChatAddToAgenda = (0, import_react18.useCallback)(
24471
24938
  ({ email, name }) => {
24472
24939
  if (typeof window === "undefined") return;
24473
24940
  const attendee = email ? `&add=${encodeURIComponent(email)}` : "";
@@ -24480,7 +24947,7 @@ var MainNavbar = ({
24480
24947
  },
24481
24948
  []
24482
24949
  );
24483
- const getTelescupAccessToken = (0, import_react16.useCallback)(async () => {
24950
+ const getTelescupAccessToken = (0, import_react18.useCallback)(async () => {
24484
24951
  if (getAccessToken) {
24485
24952
  return getAccessToken();
24486
24953
  }
@@ -24493,7 +24960,7 @@ var MainNavbar = ({
24493
24960
  }
24494
24961
  return token;
24495
24962
  }, [getAccessToken]);
24496
- const handleLanguageChange = (0, import_react16.useCallback)(
24963
+ const handleLanguageChange = (0, import_react18.useCallback)(
24497
24964
  async (nextLanguage) => {
24498
24965
  setAccountsLanguage(nextLanguage);
24499
24966
  if (!ACCOUNTS_LANGUAGE_ENDPOINT || typeof window === "undefined") return;
@@ -24519,7 +24986,7 @@ var MainNavbar = ({
24519
24986
  },
24520
24987
  [getAccessToken]
24521
24988
  );
24522
- const handleProfileAvatarChange = (0, import_react16.useCallback)(
24989
+ const handleProfileAvatarChange = (0, import_react18.useCallback)(
24523
24990
  async ({ avatarId, avatarUrl }) => {
24524
24991
  var _a79;
24525
24992
  const normalizedAvatarId = (_a79 = parseAssetId(avatarId)) != null ? _a79 : parseAssetId(avatarUrl);
@@ -24637,61 +25104,64 @@ var MainNavbar = ({
24637
25104
  },
24638
25105
  [authEmail, currentUserId, resolvedSenderId]
24639
25106
  );
24640
- return /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(import_jsx_runtime38.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
25107
+ return /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(import_jsx_runtime39.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
24641
25108
  NavbarCupcode,
24642
25109
  {
24643
25110
  logo: resolvedLogo,
24644
25111
  items,
24645
25112
  className,
24646
- actions: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { className: "flex items-center gap-2", children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
24647
- UserMenuCupcode,
24648
- {
24649
- isAuthenticated: resolvedAuthStatus === "authenticated",
24650
- isLoading: resolvedAuthStatus === "loading",
24651
- loginLabel: ctaLabel,
24652
- displayName: authUser == null ? void 0 : authUser.name,
24653
- username: (_c = authUser == null ? void 0 : authUser.preferredUsername) != null ? _c : authUser == null ? void 0 : authUser.nickname,
24654
- email: authUser == null ? void 0 : authUser.email,
24655
- avatarUrl: resolvedProfileAvatarUrl,
24656
- roleLabel: authUser == null ? void 0 : authUser.jobTitle,
24657
- status: presenceStatus,
24658
- onStatusChange: onPresenceStatusChange,
24659
- chatUsers,
24660
- chatMessages,
24661
- chatReactions,
24662
- chatMessageLogs,
24663
- currentChatUserId: effectiveCurrentUserId,
24664
- chatUnreadCount,
24665
- chatUnreadByUser,
24666
- isChatSuperAdmin,
24667
- isChatLoading,
24668
- isChatSending,
24669
- chatError,
24670
- onChatSendMessage: handleChatSendMessage,
24671
- onChatMarkConversationRead: handleChatMarkConversationRead,
24672
- onChatToggleReaction: handleChatToggleReaction,
24673
- onChatEditMessage: handleChatEditMessage,
24674
- onChatDeleteMessage: handleChatDeleteMessage,
24675
- onChatViewMessageData: handleChatViewMessageData,
24676
- onChatOpenUserProfile: handleChatOpenUserProfile,
24677
- onChatSendEmail: handleChatSendEmail,
24678
- onChatAddToAgenda: handleChatAddToAgenda,
24679
- onLogin: handleCtaClick,
24680
- onLogout: handleLogoutClick,
24681
- onOpenAccount: handleOpenAccounts,
24682
- onOpenProfile: handleOpenAccountsProfile,
24683
- onOpenBilling: handleOpenAccountsBilling,
24684
- onOpenTasks: handleOpenMcTasks,
24685
- onProfileAvatarChange: handleProfileAvatarChange,
24686
- language: accountsLanguage,
24687
- onLanguageChange: handleLanguageChange,
24688
- recentActivity: accountsRecentActivity,
24689
- isRecentActivityLoading: isAccountsActivityLoading,
24690
- telescupBaseUrl: resolvedTelescupBaseUrl,
24691
- getTelescupAccessToken,
24692
- appVersion
24693
- }
24694
- ) })
25113
+ actions: /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)("div", { className: "flex items-center gap-3", children: [
25114
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(ThemeToggle, {}),
25115
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
25116
+ UserMenuCupcode,
25117
+ {
25118
+ isAuthenticated: resolvedAuthStatus === "authenticated",
25119
+ isLoading: resolvedAuthStatus === "loading",
25120
+ loginLabel: ctaLabel,
25121
+ displayName: authUser == null ? void 0 : authUser.name,
25122
+ username: (_c = authUser == null ? void 0 : authUser.preferredUsername) != null ? _c : authUser == null ? void 0 : authUser.nickname,
25123
+ email: authUser == null ? void 0 : authUser.email,
25124
+ avatarUrl: resolvedProfileAvatarUrl,
25125
+ roleLabel: authUser == null ? void 0 : authUser.jobTitle,
25126
+ status: presenceStatus,
25127
+ onStatusChange: onPresenceStatusChange,
25128
+ chatUsers,
25129
+ chatMessages,
25130
+ chatReactions,
25131
+ chatMessageLogs,
25132
+ currentChatUserId: effectiveCurrentUserId,
25133
+ chatUnreadCount,
25134
+ chatUnreadByUser,
25135
+ isChatSuperAdmin,
25136
+ isChatLoading,
25137
+ isChatSending,
25138
+ chatError,
25139
+ onChatSendMessage: handleChatSendMessage,
25140
+ onChatMarkConversationRead: handleChatMarkConversationRead,
25141
+ onChatToggleReaction: handleChatToggleReaction,
25142
+ onChatEditMessage: handleChatEditMessage,
25143
+ onChatDeleteMessage: handleChatDeleteMessage,
25144
+ onChatViewMessageData: handleChatViewMessageData,
25145
+ onChatOpenUserProfile: handleChatOpenUserProfile,
25146
+ onChatSendEmail: handleChatSendEmail,
25147
+ onChatAddToAgenda: handleChatAddToAgenda,
25148
+ onLogin: handleCtaClick,
25149
+ onLogout: handleLogoutClick,
25150
+ onOpenAccount: handleOpenAccounts,
25151
+ onOpenProfile: handleOpenAccountsProfile,
25152
+ onOpenBilling: handleOpenAccountsBilling,
25153
+ onOpenTasks: handleOpenMcTasks,
25154
+ onProfileAvatarChange: handleProfileAvatarChange,
25155
+ language: accountsLanguage,
25156
+ onLanguageChange: handleLanguageChange,
25157
+ recentActivity: accountsRecentActivity,
25158
+ isRecentActivityLoading: isAccountsActivityLoading,
25159
+ telescupBaseUrl: resolvedTelescupBaseUrl,
25160
+ getTelescupAccessToken,
25161
+ appVersion
25162
+ }
25163
+ )
25164
+ ] })
24695
25165
  }
24696
25166
  ) });
24697
25167
  };
@@ -24699,51 +25169,9 @@ var MainNavbar = ({
24699
25169
  // src/components/layout/sidebar.tsx
24700
25170
  var import_framer_motion = require("framer-motion");
24701
25171
  var import_lucide_react10 = require("lucide-react");
24702
- var import_react17 = require("react");
25172
+ var import_react19 = require("react");
24703
25173
  var import_react_router_dom = require("react-router-dom");
24704
25174
 
24705
- // src/components/layout/DsNavbarLogo.tsx
24706
- var import_jsx_runtime39 = require("react/jsx-runtime");
24707
- var DsNavbarLogo = () => {
24708
- return /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)("div", { className: "flex items-center gap-[15px]", children: [
24709
- /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
24710
- TelescupImage,
24711
- {
24712
- apiId: "be574751-cf1b-499a-8473-360b4115b447",
24713
- imageWidth: 40,
24714
- imageHeight: 40,
24715
- alt: "Design System Cupcode",
24716
- loading: "eager",
24717
- className: "h-10 w-auto"
24718
- }
24719
- ),
24720
- /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
24721
- TelescupImage,
24722
- {
24723
- apiId: "3b913721-2eda-48fd-8d76-1a53055a337f",
24724
- imageWidth: 120,
24725
- imageHeight: 32,
24726
- alt: "Cupcode",
24727
- loading: "eager",
24728
- className: "h-8 w-auto"
24729
- }
24730
- )
24731
- ] });
24732
- };
24733
- var DsNavbarCompactLogo = () => {
24734
- return /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
24735
- TelescupImage,
24736
- {
24737
- apiId: "be574751-cf1b-499a-8473-360b4115b447",
24738
- imageWidth: 32,
24739
- imageHeight: 32,
24740
- alt: "Cupcode",
24741
- loading: "eager",
24742
- className: "h-8 w-8 rounded-lg object-contain"
24743
- }
24744
- );
24745
- };
24746
-
24747
25175
  // src/components/layout/sidebar-groups.tsx
24748
25176
  var toStableId = (value) => value.toLowerCase().normalize("NFD").replace(/\p{Diacritic}+/gu, "").replace(/[^a-z0-9]+/g, "-").replace(/(^-|-$)+/g, "");
24749
25177
  var getGroupMetadata = (item) => {
@@ -24794,20 +25222,22 @@ var findGroupByRoute = (groups, pathname) => {
24794
25222
  return (_b7 = (_a78 = groups.find((group) => group.items.some((item) => item.route === pathname))) == null ? void 0 : _a78.label) != null ? _b7 : null;
24795
25223
  };
24796
25224
  var IconFallback = () => /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_lucide_react10.Circle, { className: "h-3 w-3 opacity-80", "aria-hidden": "true" });
25225
+ var DEFAULT_EXPANDED_LOGO_SLOT = /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("div", { className: "h-10 w-[175px] shrink-0", "aria-hidden": "true" });
25226
+ var DEFAULT_COLLAPSED_LOGO_SLOT = /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("div", { className: "h-8 w-8 shrink-0 rounded-lg", "aria-hidden": "true" });
24797
25227
  var IconSlot = ({ icon, className }) => /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("span", { className: cn("inline-flex items-center justify-center [&>svg]:h-4 [&>svg]:w-4", className), children: icon != null ? icon : /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(IconFallback, {}) });
24798
25228
  var AppSidebar = ({ isCollapsed, onToggle, groups, logo, collapsedLogo }) => {
24799
25229
  const location = (0, import_react_router_dom.useLocation)();
24800
- const navScrollRef = (0, import_react17.useRef)(null);
24801
- const scrollTopRef = (0, import_react17.useRef)(0);
24802
- const [searchQuery, setSearchQuery] = (0, import_react17.useState)("");
24803
- const [openGroup, setOpenGroup] = (0, import_react17.useState)(null);
25230
+ const navScrollRef = (0, import_react19.useRef)(null);
25231
+ const scrollTopRef = (0, import_react19.useRef)(0);
25232
+ const [searchQuery, setSearchQuery] = (0, import_react19.useState)("");
25233
+ const [openGroup, setOpenGroup] = (0, import_react19.useState)(null);
24804
25234
  const normalizedQuery = searchQuery.trim().toLowerCase();
24805
- const resolvedGroups = (0, import_react17.useMemo)(() => {
25235
+ const resolvedGroups = (0, import_react19.useMemo)(() => {
24806
25236
  if (groups && groups.length > 0) return groups;
24807
25237
  return defaultSidebarGroups;
24808
25238
  }, [groups]);
24809
- const activeGroup = (0, import_react17.useMemo)(() => findGroupByRoute(resolvedGroups, location.pathname), [location.pathname, resolvedGroups]);
24810
- const filteredGroups = (0, import_react17.useMemo)(() => {
25239
+ const activeGroup = (0, import_react19.useMemo)(() => findGroupByRoute(resolvedGroups, location.pathname), [location.pathname, resolvedGroups]);
25240
+ const filteredGroups = (0, import_react19.useMemo)(() => {
24811
25241
  if (!normalizedQuery) return resolvedGroups;
24812
25242
  return resolvedGroups.map((group) => ({
24813
25243
  ...group,
@@ -24815,27 +25245,27 @@ var AppSidebar = ({ isCollapsed, onToggle, groups, logo, collapsedLogo }) => {
24815
25245
  })).filter((group) => group.items.length > 0);
24816
25246
  }, [normalizedQuery, resolvedGroups]);
24817
25247
  const visibleGroups = isCollapsed ? resolvedGroups : filteredGroups;
24818
- const resolvedExpandedLogo = logo != null ? logo : /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(DsNavbarLogo, {});
24819
- const resolvedCollapsedLogo = collapsedLogo != null ? collapsedLogo : /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(DsNavbarCompactLogo, {});
24820
- (0, import_react17.useEffect)(() => {
25248
+ const resolvedExpandedLogo = logo != null ? logo : DEFAULT_EXPANDED_LOGO_SLOT;
25249
+ const resolvedCollapsedLogo = collapsedLogo != null ? collapsedLogo : DEFAULT_COLLAPSED_LOGO_SLOT;
25250
+ (0, import_react19.useEffect)(() => {
24821
25251
  if (!openGroup && resolvedGroups.length > 0) {
24822
25252
  setOpenGroup(resolvedGroups[0].label);
24823
25253
  }
24824
25254
  }, [openGroup, resolvedGroups]);
24825
- (0, import_react17.useEffect)(() => {
25255
+ (0, import_react19.useEffect)(() => {
24826
25256
  const groupForRoute = findGroupByRoute(resolvedGroups, location.pathname);
24827
25257
  if (groupForRoute) {
24828
25258
  setOpenGroup(groupForRoute);
24829
25259
  }
24830
25260
  }, [location.pathname, resolvedGroups]);
24831
- (0, import_react17.useEffect)(() => {
25261
+ (0, import_react19.useEffect)(() => {
24832
25262
  if (isCollapsed || visibleGroups.length === 0) return;
24833
25263
  const hasOpenGroup = openGroup ? visibleGroups.some((group) => group.label === openGroup) : false;
24834
25264
  if (!hasOpenGroup) {
24835
25265
  setOpenGroup(visibleGroups[0].label);
24836
25266
  }
24837
25267
  }, [isCollapsed, openGroup, visibleGroups]);
24838
- (0, import_react17.useEffect)(() => {
25268
+ (0, import_react19.useEffect)(() => {
24839
25269
  const element = navScrollRef.current;
24840
25270
  if (!element) return void 0;
24841
25271
  const handleScroll = () => {
@@ -24846,7 +25276,7 @@ var AppSidebar = ({ isCollapsed, onToggle, groups, logo, collapsedLogo }) => {
24846
25276
  element.removeEventListener("scroll", handleScroll);
24847
25277
  };
24848
25278
  }, []);
24849
- (0, import_react17.useEffect)(() => {
25279
+ (0, import_react19.useEffect)(() => {
24850
25280
  const element = navScrollRef.current;
24851
25281
  if (!element) return void 0;
24852
25282
  const frame = window.requestAnimationFrame(() => {
@@ -24980,11 +25410,11 @@ var MainLayout = ({
24980
25410
  sidebarLogo,
24981
25411
  sidebarCollapsedLogo
24982
25412
  }) => {
24983
- const [sidebarCollapsed, setSidebarCollapsed] = (0, import_react18.useState)(getInitialSidebarCollapsed);
24984
- const toggleSidebar = (0, import_react18.useCallback)(() => {
25413
+ const [sidebarCollapsed, setSidebarCollapsed] = (0, import_react20.useState)(getInitialSidebarCollapsed);
25414
+ const toggleSidebar = (0, import_react20.useCallback)(() => {
24985
25415
  setSidebarCollapsed((current) => !current);
24986
25416
  }, []);
24987
- (0, import_react18.useEffect)(() => {
25417
+ (0, import_react20.useEffect)(() => {
24988
25418
  if (typeof window === "undefined") return;
24989
25419
  try {
24990
25420
  window.localStorage.setItem(SIDEBAR_COLLAPSED_STORAGE_KEY, String(sidebarCollapsed));
@@ -24993,7 +25423,7 @@ var MainLayout = ({
24993
25423
  }, [sidebarCollapsed]);
24994
25424
  const contentMarginLeft = sidebarCollapsed ? SIDEBAR_COLLAPSED_WIDTH : SIDEBAR_EXPANDED_WIDTH;
24995
25425
  const navbarOffsetClassName = sidebarCollapsed ? "left-[84px] md:left-[88px] right-3 md:right-4" : "left-[328px] md:left-[332px] right-3 md:right-4";
24996
- const mergedNavbarClassName = (0, import_react18.useMemo)(
25426
+ const mergedNavbarClassName = (0, import_react20.useMemo)(
24997
25427
  () => cn(navbarOffsetClassName, navbarProps == null ? void 0 : navbarProps.className),
24998
25428
  [navbarOffsetClassName, navbarProps == null ? void 0 : navbarProps.className]
24999
25429
  );
@@ -25058,10 +25488,10 @@ var MainLayout = ({
25058
25488
  };
25059
25489
 
25060
25490
  // src/components/cupcode/ErrorBoundary.tsx
25061
- var import_react19 = __toESM(require("react"), 1);
25491
+ var import_react21 = __toESM(require("react"), 1);
25062
25492
  var import_lucide_react12 = require("lucide-react");
25063
25493
  var import_jsx_runtime42 = require("react/jsx-runtime");
25064
- var ErrorBoundary = class extends import_react19.default.Component {
25494
+ var ErrorBoundary = class extends import_react21.default.Component {
25065
25495
  constructor(props) {
25066
25496
  super(props);
25067
25497
  __publicField(this, "handleReset", () => {
@@ -25099,9 +25529,9 @@ var ErrorBoundary = class extends import_react19.default.Component {
25099
25529
  };
25100
25530
 
25101
25531
  // src/components/cupcode/EyebrowCupcode.tsx
25102
- var import_react20 = require("react");
25532
+ var import_react22 = require("react");
25103
25533
  var import_jsx_runtime43 = require("react/jsx-runtime");
25104
- var Eyebrow = (0, import_react20.forwardRef)(
25534
+ var Eyebrow = (0, import_react22.forwardRef)(
25105
25535
  ({ variant = "galaxy", glow = false, className, children, ...props }, ref) => {
25106
25536
  const baseClasses = cn(
25107
25537
  "inline-flex items-center gap-2",
@@ -25375,15 +25805,15 @@ var ModalDescription = React26.forwardRef(({ className, ...props }, ref) => /* @
25375
25805
  ModalDescription.displayName = DialogPrimitive3.Description.displayName;
25376
25806
 
25377
25807
  // src/components/cupcode/ParticleSystem.tsx
25378
- var import_react21 = require("react");
25808
+ var import_react23 = require("react");
25379
25809
  var import_jsx_runtime49 = require("react/jsx-runtime");
25380
25810
  function ParticleSystem({
25381
25811
  count: count2 = 50,
25382
25812
  variant = "stars",
25383
25813
  className
25384
25814
  }) {
25385
- const canvasRef = (0, import_react21.useRef)(null);
25386
- (0, import_react21.useEffect)(() => {
25815
+ const canvasRef = (0, import_react23.useRef)(null);
25816
+ (0, import_react23.useEffect)(() => {
25387
25817
  const canvas = canvasRef.current;
25388
25818
  if (!canvas) return;
25389
25819
  const ctx = canvas.getContext("2d");
@@ -25896,19 +26326,31 @@ function applyThemeClass(theme) {
25896
26326
  const root = document.documentElement;
25897
26327
  root.classList.toggle("dark", theme === "dark");
25898
26328
  root.classList.toggle("light", theme === "light");
26329
+ root.dataset.theme = theme;
26330
+ root.style.colorScheme = theme;
26331
+ }
26332
+ function readThemeFromRoot() {
26333
+ var _a78;
26334
+ if (typeof document === "undefined") return null;
26335
+ const root = document.documentElement;
26336
+ const datasetTheme = (_a78 = root.dataset.theme) != null ? _a78 : null;
26337
+ if (isThemeMode(datasetTheme)) return datasetTheme;
26338
+ if (root.classList.contains("dark")) return "dark";
26339
+ if (root.classList.contains("light")) return "light";
26340
+ return null;
25899
26341
  }
25900
26342
  function resolveTheme(defaultTheme) {
26343
+ const rootTheme = readThemeFromRoot();
26344
+ if (rootTheme) return rootTheme;
25901
26345
  const storedTheme = readStoredTheme();
25902
26346
  if (storedTheme) return storedTheme;
25903
26347
  if (typeof document === "undefined") return defaultTheme;
25904
- if (document.documentElement.classList.contains("dark")) return "dark";
25905
- if (document.documentElement.classList.contains("light")) return "light";
25906
26348
  if (typeof window !== "undefined" && window.matchMedia("(prefers-color-scheme: dark)").matches) {
25907
26349
  return "dark";
25908
26350
  }
25909
26351
  return defaultTheme;
25910
26352
  }
25911
- var ThemeToggle = ({
26353
+ var ThemeToggle2 = ({
25912
26354
  className,
25913
26355
  theme,
25914
26356
  defaultTheme = "light",
@@ -25936,7 +26378,7 @@ var ThemeToggle = ({
25936
26378
  const resolvedTheme = resolveTheme(defaultTheme);
25937
26379
  setInternalTheme((currentTheme) => currentTheme === resolvedTheme ? currentTheme : resolvedTheme);
25938
26380
  });
25939
- observer.observe(document.documentElement, { attributes: true, attributeFilter: ["class"] });
26381
+ observer.observe(document.documentElement, { attributes: true, attributeFilter: ["class", "data-theme"] });
25940
26382
  return () => observer.disconnect();
25941
26383
  }, [defaultTheme, isControlled]);
25942
26384
  if (!mounted) {
@@ -25952,6 +26394,7 @@ var ThemeToggle = ({
25952
26394
  return /* @__PURE__ */ (0, import_jsx_runtime57.jsxs)(
25953
26395
  "button",
25954
26396
  {
26397
+ type: "button",
25955
26398
  onClick: handleToggle,
25956
26399
  className: cn(
25957
26400
  "relative inline-flex items-center justify-center w-10 h-10",
@@ -25973,12 +26416,175 @@ var ThemeToggle = ({
25973
26416
  );
25974
26417
  };
25975
26418
 
25976
- // src/components/cupcode/TimelineCupcode.tsx
26419
+ // src/components/theme-provider.tsx
26420
+ var import_react24 = require("react");
26421
+ var import_react_dom = require("react-dom");
25977
26422
  var import_jsx_runtime58 = require("react/jsx-runtime");
26423
+ var STORAGE_KEY2 = "cupcode-theme";
26424
+ var LEGACY_STORAGE_KEY = "theme";
26425
+ function getPreferredTheme() {
26426
+ if (typeof window === "undefined") {
26427
+ return "light";
26428
+ }
26429
+ return window.matchMedia("(prefers-color-scheme: dark)").matches ? "dark" : "light";
26430
+ }
26431
+ function getStoredTheme() {
26432
+ var _a78;
26433
+ if (typeof window === "undefined") {
26434
+ return null;
26435
+ }
26436
+ const storedTheme = (_a78 = window.localStorage.getItem(STORAGE_KEY2)) != null ? _a78 : window.localStorage.getItem(LEGACY_STORAGE_KEY);
26437
+ return storedTheme === "light" || storedTheme === "dark" ? storedTheme : null;
26438
+ }
26439
+ function getThemeFromRoot() {
26440
+ if (typeof document === "undefined") {
26441
+ return null;
26442
+ }
26443
+ const { documentElement: root } = document;
26444
+ const datasetTheme = root.dataset.theme;
26445
+ if (datasetTheme === "light" || datasetTheme === "dark") {
26446
+ return datasetTheme;
26447
+ }
26448
+ if (root.classList.contains("dark")) {
26449
+ return "dark";
26450
+ }
26451
+ if (root.classList.contains("light")) {
26452
+ return "light";
26453
+ }
26454
+ return null;
26455
+ }
26456
+ function resolveTheme2() {
26457
+ var _a78, _b7;
26458
+ return (_b7 = (_a78 = getThemeFromRoot()) != null ? _a78 : getStoredTheme()) != null ? _b7 : getPreferredTheme();
26459
+ }
26460
+ function applyThemeToRoot(theme) {
26461
+ const root = document.documentElement;
26462
+ root.classList.toggle("dark", theme === "dark");
26463
+ root.classList.toggle("light", theme === "light");
26464
+ root.dataset.theme = theme;
26465
+ root.style.colorScheme = theme;
26466
+ }
26467
+ function persistTheme(theme) {
26468
+ window.localStorage.setItem(STORAGE_KEY2, theme);
26469
+ window.localStorage.setItem(LEGACY_STORAGE_KEY, theme);
26470
+ }
26471
+ function ThemeProvider({ children }) {
26472
+ const [theme, setThemeState] = (0, import_react24.useState)(() => resolveTheme2());
26473
+ const [mounted, setMounted] = (0, import_react24.useState)(false);
26474
+ (0, import_react24.useEffect)(() => {
26475
+ const initialTheme = resolveTheme2();
26476
+ setThemeState((currentTheme) => currentTheme === initialTheme ? currentTheme : initialTheme);
26477
+ applyThemeToRoot(initialTheme);
26478
+ setMounted(true);
26479
+ }, []);
26480
+ (0, import_react24.useEffect)(() => {
26481
+ if (!mounted) {
26482
+ return;
26483
+ }
26484
+ persistTheme(theme);
26485
+ applyThemeToRoot(theme);
26486
+ }, [mounted, theme]);
26487
+ (0, import_react24.useEffect)(() => {
26488
+ if (typeof window === "undefined") {
26489
+ return;
26490
+ }
26491
+ const mediaQuery = window.matchMedia("(prefers-color-scheme: dark)");
26492
+ const handleChange = () => {
26493
+ if (getStoredTheme()) {
26494
+ return;
26495
+ }
26496
+ const nextTheme = mediaQuery.matches ? "dark" : "light";
26497
+ setThemeState(nextTheme);
26498
+ applyThemeToRoot(nextTheme);
26499
+ };
26500
+ mediaQuery.addEventListener("change", handleChange);
26501
+ return () => mediaQuery.removeEventListener("change", handleChange);
26502
+ }, []);
26503
+ (0, import_react24.useEffect)(() => {
26504
+ if (typeof document === "undefined") {
26505
+ return;
26506
+ }
26507
+ const root = document.documentElement;
26508
+ const observer = new MutationObserver(() => {
26509
+ const rootTheme = getThemeFromRoot();
26510
+ if (!rootTheme) {
26511
+ return;
26512
+ }
26513
+ setThemeState((currentTheme) => currentTheme === rootTheme ? currentTheme : rootTheme);
26514
+ });
26515
+ observer.observe(root, {
26516
+ attributes: true,
26517
+ attributeFilter: ["class", "data-theme"]
26518
+ });
26519
+ return () => observer.disconnect();
26520
+ }, []);
26521
+ const setTheme = (0, import_react24.useCallback)((nextTheme) => {
26522
+ setThemeState(nextTheme);
26523
+ }, []);
26524
+ const toggleTheme = (0, import_react24.useCallback)((coords) => {
26525
+ var _a78;
26526
+ const documentWithTransition = document;
26527
+ const prefersReducedMotion = window.matchMedia(
26528
+ "(prefers-reduced-motion: reduce)"
26529
+ ).matches;
26530
+ const supportsTransition = typeof documentWithTransition.startViewTransition === "function";
26531
+ const flipTheme = () => {
26532
+ setThemeState(
26533
+ (currentTheme) => currentTheme === "light" ? "dark" : "light"
26534
+ );
26535
+ };
26536
+ if (coords) {
26537
+ document.documentElement.style.setProperty("--theme-x", `${coords.x}px`);
26538
+ document.documentElement.style.setProperty("--theme-y", `${coords.y}px`);
26539
+ }
26540
+ if (!supportsTransition || prefersReducedMotion) {
26541
+ flipTheme();
26542
+ return;
26543
+ }
26544
+ (_a78 = documentWithTransition.startViewTransition) == null ? void 0 : _a78.call(documentWithTransition, () => {
26545
+ (0, import_react_dom.flushSync)(() => {
26546
+ flipTheme();
26547
+ });
26548
+ });
26549
+ }, []);
26550
+ const value = (0, import_react24.useMemo)(
26551
+ () => ({
26552
+ theme,
26553
+ setTheme,
26554
+ toggleTheme
26555
+ }),
26556
+ [theme, setTheme, toggleTheme]
26557
+ );
26558
+ return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(ThemeContext.Provider, { value, children });
26559
+ }
26560
+ function ThemeScript() {
26561
+ const script = `
26562
+ (() => {
26563
+ const storageKey = "${STORAGE_KEY2}";
26564
+ const legacyStorageKey = "${LEGACY_STORAGE_KEY}";
26565
+ const storedTheme = localStorage.getItem(storageKey) ?? localStorage.getItem(legacyStorageKey);
26566
+ const theme =
26567
+ storedTheme === "light" || storedTheme === "dark"
26568
+ ? storedTheme
26569
+ : window.matchMedia("(prefers-color-scheme: dark)").matches
26570
+ ? "dark"
26571
+ : "light";
26572
+ const root = document.documentElement;
26573
+ root.classList.toggle("dark", theme === "dark");
26574
+ root.classList.toggle("light", theme === "light");
26575
+ root.dataset.theme = theme;
26576
+ root.style.colorScheme = theme;
26577
+ })();
26578
+ `;
26579
+ return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("script", { dangerouslySetInnerHTML: { __html: script } });
26580
+ }
26581
+
26582
+ // src/components/cupcode/TimelineCupcode.tsx
26583
+ var import_jsx_runtime59 = require("react/jsx-runtime");
25978
26584
  function Timeline({ items, variant = "vertical", className }) {
25979
26585
  if (variant === "horizontal") {
25980
- return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("div", { className: cn("flex items-start gap-4 overflow-x-auto pb-4", className), children: items.map((item, index) => /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)("div", { className: "flex flex-col items-center min-w-[200px]", children: [
25981
- /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
26586
+ return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("div", { className: cn("flex items-start gap-4 overflow-x-auto pb-4", className), children: items.map((item, index) => /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)("div", { className: "flex flex-col items-center min-w-[200px]", children: [
26587
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
25982
26588
  "div",
25983
26589
  {
25984
26590
  className: cn(
@@ -25986,27 +26592,27 @@ function Timeline({ items, variant = "vertical", className }) {
25986
26592
  "transition-all duration-300",
25987
26593
  item.active ? "cc-gradient-galaxy text-white elevation-3 scale-110" : "bg-muted text-muted-foreground"
25988
26594
  ),
25989
- children: item.icon || /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("span", { className: "text-sm font-bold", children: index + 1 })
26595
+ children: item.icon || /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("span", { className: "text-sm font-bold", children: index + 1 })
25990
26596
  }
25991
26597
  ),
25992
- index < items.length - 1 && /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("div", { className: cn(
26598
+ index < items.length - 1 && /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("div", { className: cn(
25993
26599
  "h-1 w-full mb-3",
25994
26600
  item.active ? "bg-cupcode-purple" : "bg-muted"
25995
26601
  ) }),
25996
- /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)("div", { className: "text-center", children: [
25997
- /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("h4", { className: cn(
26602
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)("div", { className: "text-center", children: [
26603
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("h4", { className: cn(
25998
26604
  "font-display font-semibold mb-1",
25999
26605
  item.active ? "text-cupcode-purple" : "text-foreground"
26000
26606
  ), children: item.title }),
26001
- item.description && /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("p", { className: "text-sm text-muted-foreground", children: item.description }),
26002
- item.date && /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("p", { className: "text-xs text-muted-foreground mt-1", children: item.date })
26607
+ item.description && /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("p", { className: "text-sm text-muted-foreground", children: item.description }),
26608
+ item.date && /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("p", { className: "text-xs text-muted-foreground mt-1", children: item.date })
26003
26609
  ] })
26004
26610
  ] }, item.id)) });
26005
26611
  }
26006
- return /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)("div", { className: cn("relative space-6", className), children: [
26007
- /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("div", { className: "absolute left-6 top-0 bottom-0 w-0.5 bg-muted" }),
26008
- items.map((item, index) => /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)("div", { className: "relative flex gap-6 pb-8 last:pb-0", children: [
26009
- /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
26612
+ return /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)("div", { className: cn("relative space-6", className), children: [
26613
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("div", { className: "absolute left-6 top-0 bottom-0 w-0.5 bg-muted" }),
26614
+ items.map((item, index) => /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)("div", { className: "relative flex gap-6 pb-8 last:pb-0", children: [
26615
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
26010
26616
  "div",
26011
26617
  {
26012
26618
  className: cn(
@@ -26014,16 +26620,16 @@ function Timeline({ items, variant = "vertical", className }) {
26014
26620
  "transition-all duration-300",
26015
26621
  item.active ? "cc-gradient-galaxy text-white elevation-3" : "bg-muted text-muted-foreground"
26016
26622
  ),
26017
- children: item.icon || /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("span", { className: "text-sm font-bold", children: index + 1 })
26623
+ children: item.icon || /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("span", { className: "text-sm font-bold", children: index + 1 })
26018
26624
  }
26019
26625
  ),
26020
- /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)("div", { className: "flex-1 pt-1", children: [
26021
- /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("h4", { className: cn(
26626
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)("div", { className: "flex-1 pt-1", children: [
26627
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("h4", { className: cn(
26022
26628
  "font-display font-semibold mb-1",
26023
26629
  item.active ? "text-cupcode-purple" : "text-foreground"
26024
26630
  ), children: item.title }),
26025
- item.description && /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("p", { className: "text-sm text-muted-foreground mb-2", children: item.description }),
26026
- item.date && /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("p", { className: "text-xs text-muted-foreground", children: item.date })
26631
+ item.description && /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("p", { className: "text-sm text-muted-foreground mb-2", children: item.description }),
26632
+ item.date && /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("p", { className: "text-xs text-muted-foreground", children: item.date })
26027
26633
  ] })
26028
26634
  ] }, item.id))
26029
26635
  ] });
@@ -26031,7 +26637,7 @@ function Timeline({ items, variant = "vertical", className }) {
26031
26637
 
26032
26638
  // src/components/cupcode/ToastCupcode.tsx
26033
26639
  var import_lucide_react17 = require("lucide-react");
26034
- var import_jsx_runtime59 = require("react/jsx-runtime");
26640
+ var import_jsx_runtime60 = require("react/jsx-runtime");
26035
26641
  var variantStyles2 = {
26036
26642
  success: {
26037
26643
  gradient: "from-success/20 to-success/5",
@@ -26066,7 +26672,7 @@ var ToastCupcode = ({
26066
26672
  }) => {
26067
26673
  const style = variantStyles2[variant];
26068
26674
  const Icon3 = style.icon;
26069
- return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
26675
+ return /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
26070
26676
  "div",
26071
26677
  {
26072
26678
  className: cn(
@@ -26078,18 +26684,18 @@ var ToastCupcode = ({
26078
26684
  "min-w-[300px] max-w-[420px]",
26079
26685
  "animate-slide-up"
26080
26686
  ),
26081
- children: /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)("div", { className: "flex items-start gap-3", children: [
26082
- /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(Icon3, { className: cn("h-5 w-5 shrink-0 mt-0.5", style.iconColor) }),
26083
- /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)("div", { className: "flex-1 space-y-1", children: [
26084
- /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("p", { className: "text-sm font-semibold text-cupcode-ink", children: title }),
26085
- description && /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("p", { className: "text-xs text-cupcode-ink/70", children: description })
26687
+ children: /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)("div", { className: "flex items-start gap-3", children: [
26688
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(Icon3, { className: cn("h-5 w-5 shrink-0 mt-0.5", style.iconColor) }),
26689
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)("div", { className: "flex-1 space-y-1", children: [
26690
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("p", { className: "text-sm font-semibold text-cupcode-ink", children: title }),
26691
+ description && /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("p", { className: "text-xs text-cupcode-ink/70", children: description })
26086
26692
  ] }),
26087
- onClose && /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
26693
+ onClose && /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
26088
26694
  "button",
26089
26695
  {
26090
26696
  onClick: onClose,
26091
26697
  className: "shrink-0 rounded-md p-1 hover:bg-cupcode-ink/10 transition-colors",
26092
- children: /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_lucide_react17.X, { className: "h-4 w-4 text-cupcode-ink/50" })
26698
+ children: /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(import_lucide_react17.X, { className: "h-4 w-4 text-cupcode-ink/50" })
26093
26699
  }
26094
26700
  )
26095
26701
  ] })
@@ -26098,12 +26704,12 @@ var ToastCupcode = ({
26098
26704
  };
26099
26705
 
26100
26706
  // src/components/cupcode/VideoWatchButton.tsx
26101
- var import_react22 = __toESM(require("react"), 1);
26102
- var import_jsx_runtime60 = require("react/jsx-runtime");
26103
- var PlayGlyph = () => /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("svg", { viewBox: "0 0 18 18", "aria-hidden": "true", className: "h-[18px] w-[18px]", children: /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("path", { d: "M6 4.5L13.5 9L6 13.5V4.5Z", fill: "currentColor" }) });
26104
- var VideoWatchButton = import_react22.default.forwardRef(
26105
- ({ className, label = "Watch now", type = "button", "aria-label": ariaLabel, ...props }, ref) => {
26106
- return /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)(
26707
+ var import_react25 = __toESM(require("react"), 1);
26708
+ var import_jsx_runtime61 = require("react/jsx-runtime");
26709
+ var PlayGlyph = () => /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("svg", { viewBox: "0 0 18 18", "aria-hidden": "true", className: "h-[18px] w-[18px]", children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("path", { d: "M6 4.5L13.5 9L6 13.5V4.5Z", fill: "currentColor" }) });
26710
+ var VideoWatchButton = import_react25.default.forwardRef(
26711
+ ({ className, label = "Assistir", type = "button", "aria-label": ariaLabel, ...props }, ref) => {
26712
+ return /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)(
26107
26713
  "button",
26108
26714
  {
26109
26715
  ref,
@@ -26112,18 +26718,18 @@ var VideoWatchButton = import_react22.default.forwardRef(
26112
26718
  className: cn("cc-video-watch-btn", className),
26113
26719
  ...props,
26114
26720
  children: [
26115
- /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)("span", { className: "cc-video-watch-btn__bg", children: [
26116
- /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("span", { className: "cc-video-watch-btn__icon", children: /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(PlayGlyph, {}) }),
26117
- /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("span", { className: "cc-video-watch-btn__label", children: label }),
26118
- /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)("span", { className: "cc-video-watch-btn__mask", "aria-hidden": "true", children: [
26119
- /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("span", { className: "cc-video-watch-btn__blob cc-video-watch-btn__blob--1" }),
26120
- /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("span", { className: "cc-video-watch-btn__blob cc-video-watch-btn__blob--2" }),
26121
- /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("span", { className: "cc-video-watch-btn__blob cc-video-watch-btn__blob--3" }),
26122
- /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("span", { className: "cc-video-watch-btn__blob cc-video-watch-btn__blob--4" }),
26123
- /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("span", { className: "cc-video-watch-btn__blob cc-video-watch-btn__blob--5" })
26721
+ /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)("span", { className: "cc-video-watch-btn__bg", children: [
26722
+ /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("span", { className: "cc-video-watch-btn__icon", children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(PlayGlyph, {}) }),
26723
+ /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("span", { className: "cc-video-watch-btn__label", children: label }),
26724
+ /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)("span", { className: "cc-video-watch-btn__mask", "aria-hidden": "true", children: [
26725
+ /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("span", { className: "cc-video-watch-btn__blob cc-video-watch-btn__blob--1" }),
26726
+ /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("span", { className: "cc-video-watch-btn__blob cc-video-watch-btn__blob--2" }),
26727
+ /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("span", { className: "cc-video-watch-btn__blob cc-video-watch-btn__blob--3" }),
26728
+ /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("span", { className: "cc-video-watch-btn__blob cc-video-watch-btn__blob--4" }),
26729
+ /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("span", { className: "cc-video-watch-btn__blob cc-video-watch-btn__blob--5" })
26124
26730
  ] })
26125
26731
  ] }),
26126
- /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("span", { className: "cc-video-watch-btn__glow", "aria-hidden": "true" })
26732
+ /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("span", { className: "cc-video-watch-btn__glow", "aria-hidden": "true" })
26127
26733
  ]
26128
26734
  }
26129
26735
  );
@@ -26132,13 +26738,13 @@ var VideoWatchButton = import_react22.default.forwardRef(
26132
26738
  VideoWatchButton.displayName = "VideoWatchButton";
26133
26739
 
26134
26740
  // src/components/cupcode/TooltipCupcode.tsx
26135
- var React35 = __toESM(require("react"), 1);
26741
+ var React36 = __toESM(require("react"), 1);
26136
26742
  var TooltipPrimitive2 = __toESM(require("@radix-ui/react-tooltip"), 1);
26137
- var import_jsx_runtime61 = require("react/jsx-runtime");
26743
+ var import_jsx_runtime62 = require("react/jsx-runtime");
26138
26744
  var TooltipProvider2 = TooltipPrimitive2.Provider;
26139
26745
  var TooltipCupcode = TooltipPrimitive2.Root;
26140
26746
  var TooltipTrigger2 = TooltipPrimitive2.Trigger;
26141
- var TooltipContent2 = React35.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
26747
+ var TooltipContent2 = React36.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
26142
26748
  TooltipPrimitive2.Content,
26143
26749
  {
26144
26750
  ref,
@@ -26159,14 +26765,14 @@ var TooltipContent2 = React35.forwardRef(({ className, sideOffset = 4, ...props
26159
26765
  TooltipContent2.displayName = TooltipPrimitive2.Content.displayName;
26160
26766
 
26161
26767
  // src/components/ui/accordion.tsx
26162
- var React36 = __toESM(require("react"), 1);
26768
+ var React37 = __toESM(require("react"), 1);
26163
26769
  var AccordionPrimitive2 = __toESM(require("@radix-ui/react-accordion"), 1);
26164
26770
  var import_lucide_react18 = require("lucide-react");
26165
- var import_jsx_runtime62 = require("react/jsx-runtime");
26771
+ var import_jsx_runtime63 = require("react/jsx-runtime");
26166
26772
  var Accordion = AccordionPrimitive2.Root;
26167
- var AccordionItem2 = React36.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(AccordionPrimitive2.Item, { ref, className: cn("border-b", className), ...props }));
26773
+ var AccordionItem2 = React37.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(AccordionPrimitive2.Item, { ref, className: cn("border-b", className), ...props }));
26168
26774
  AccordionItem2.displayName = "AccordionItem";
26169
- var AccordionTrigger2 = React36.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(AccordionPrimitive2.Header, { className: "flex", children: /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)(
26775
+ var AccordionTrigger2 = React37.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(AccordionPrimitive2.Header, { className: "flex", children: /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)(
26170
26776
  AccordionPrimitive2.Trigger,
26171
26777
  {
26172
26778
  ref,
@@ -26177,26 +26783,26 @@ var AccordionTrigger2 = React36.forwardRef(({ className, children, ...props }, r
26177
26783
  ...props,
26178
26784
  children: [
26179
26785
  children,
26180
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_lucide_react18.ChevronDown, { className: "h-4 w-4 shrink-0 transition-transform duration-200" })
26786
+ /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_lucide_react18.ChevronDown, { className: "h-4 w-4 shrink-0 transition-transform duration-200" })
26181
26787
  ]
26182
26788
  }
26183
26789
  ) }));
26184
26790
  AccordionTrigger2.displayName = AccordionPrimitive2.Trigger.displayName;
26185
- var AccordionContent2 = React36.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
26791
+ var AccordionContent2 = React37.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
26186
26792
  AccordionPrimitive2.Content,
26187
26793
  {
26188
26794
  ref,
26189
26795
  className: "overflow-hidden text-sm transition-all data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down",
26190
26796
  ...props,
26191
- children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("div", { className: cn("pb-4 pt-0", className), children })
26797
+ children: /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("div", { className: cn("pb-4 pt-0", className), children })
26192
26798
  }
26193
26799
  ));
26194
26800
  AccordionContent2.displayName = AccordionPrimitive2.Content.displayName;
26195
26801
 
26196
26802
  // src/components/ui/alert.tsx
26197
- var React37 = __toESM(require("react"), 1);
26803
+ var React38 = __toESM(require("react"), 1);
26198
26804
  var import_class_variance_authority3 = require("class-variance-authority");
26199
- var import_jsx_runtime63 = require("react/jsx-runtime");
26805
+ var import_jsx_runtime64 = require("react/jsx-runtime");
26200
26806
  var alertVariants = (0, import_class_variance_authority3.cva)(
26201
26807
  "relative w-full rounded-lg border p-4 [&>svg~*]:pl-7 [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground",
26202
26808
  {
@@ -26211,14 +26817,14 @@ var alertVariants = (0, import_class_variance_authority3.cva)(
26211
26817
  }
26212
26818
  }
26213
26819
  );
26214
- var Alert = React37.forwardRef(({ className, variant, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("div", { ref, role: "alert", className: cn(alertVariants({ variant }), className), ...props }));
26820
+ var Alert = React38.forwardRef(({ className, variant, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { ref, role: "alert", className: cn(alertVariants({ variant }), className), ...props }));
26215
26821
  Alert.displayName = "Alert";
26216
- var AlertTitle = React37.forwardRef(
26217
- ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("h5", { ref, className: cn("mb-1 font-medium leading-none tracking-tight", className), ...props })
26822
+ var AlertTitle = React38.forwardRef(
26823
+ ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("h5", { ref, className: cn("mb-1 font-medium leading-none tracking-tight", className), ...props })
26218
26824
  );
26219
26825
  AlertTitle.displayName = "AlertTitle";
26220
- var AlertDescription = React37.forwardRef(
26221
- ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("div", { ref, className: cn("text-sm [&_p]:leading-relaxed", className), ...props })
26826
+ var AlertDescription = React38.forwardRef(
26827
+ ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { ref, className: cn("text-sm [&_p]:leading-relaxed", className), ...props })
26222
26828
  );
26223
26829
  AlertDescription.displayName = "AlertDescription";
26224
26830
 
@@ -26227,14 +26833,14 @@ var AspectRatioPrimitive = __toESM(require("@radix-ui/react-aspect-ratio"), 1);
26227
26833
  var AspectRatio = AspectRatioPrimitive.Root;
26228
26834
 
26229
26835
  // src/components/ui/breadcrumb.tsx
26230
- var React38 = __toESM(require("react"), 1);
26836
+ var React39 = __toESM(require("react"), 1);
26231
26837
  var import_react_slot2 = require("@radix-ui/react-slot");
26232
26838
  var import_lucide_react19 = require("lucide-react");
26233
- var import_jsx_runtime64 = require("react/jsx-runtime");
26234
- var Breadcrumb = React38.forwardRef(({ ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("nav", { ref, "aria-label": "breadcrumb", ...props }));
26839
+ var import_jsx_runtime65 = require("react/jsx-runtime");
26840
+ var Breadcrumb = React39.forwardRef(({ ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("nav", { ref, "aria-label": "breadcrumb", ...props }));
26235
26841
  Breadcrumb.displayName = "Breadcrumb";
26236
- var BreadcrumbList = React38.forwardRef(
26237
- ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
26842
+ var BreadcrumbList = React39.forwardRef(
26843
+ ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
26238
26844
  "ol",
26239
26845
  {
26240
26846
  ref,
@@ -26247,17 +26853,17 @@ var BreadcrumbList = React38.forwardRef(
26247
26853
  )
26248
26854
  );
26249
26855
  BreadcrumbList.displayName = "BreadcrumbList";
26250
- var BreadcrumbItem = React38.forwardRef(
26251
- ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("li", { ref, className: cn("inline-flex items-center gap-1.5", className), ...props })
26856
+ var BreadcrumbItem = React39.forwardRef(
26857
+ ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("li", { ref, className: cn("inline-flex items-center gap-1.5", className), ...props })
26252
26858
  );
26253
26859
  BreadcrumbItem.displayName = "BreadcrumbItem";
26254
- var BreadcrumbLink = React38.forwardRef(({ asChild, className, ...props }, ref) => {
26860
+ var BreadcrumbLink = React39.forwardRef(({ asChild, className, ...props }, ref) => {
26255
26861
  const Comp = asChild ? import_react_slot2.Slot : "a";
26256
- return /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Comp, { ref, className: cn("transition-colors hover:text-foreground", className), ...props });
26862
+ return /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(Comp, { ref, className: cn("transition-colors hover:text-foreground", className), ...props });
26257
26863
  });
26258
26864
  BreadcrumbLink.displayName = "BreadcrumbLink";
26259
- var BreadcrumbPage = React38.forwardRef(
26260
- ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
26865
+ var BreadcrumbPage = React39.forwardRef(
26866
+ ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
26261
26867
  "span",
26262
26868
  {
26263
26869
  ref,
@@ -26270,9 +26876,9 @@ var BreadcrumbPage = React38.forwardRef(
26270
26876
  )
26271
26877
  );
26272
26878
  BreadcrumbPage.displayName = "BreadcrumbPage";
26273
- var BreadcrumbSeparator = ({ children, className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("li", { role: "presentation", "aria-hidden": "true", className: cn("[&>svg]:size-3.5", className), ...props, children: children != null ? children : /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_lucide_react19.ChevronRight, {}) });
26879
+ var BreadcrumbSeparator = ({ children, className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("li", { role: "presentation", "aria-hidden": "true", className: cn("[&>svg]:size-3.5", className), ...props, children: children != null ? children : /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react19.ChevronRight, {}) });
26274
26880
  BreadcrumbSeparator.displayName = "BreadcrumbSeparator";
26275
- var BreadcrumbEllipsis = ({ className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(
26881
+ var BreadcrumbEllipsis = ({ className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(
26276
26882
  "span",
26277
26883
  {
26278
26884
  role: "presentation",
@@ -26280,8 +26886,8 @@ var BreadcrumbEllipsis = ({ className, ...props }) => /* @__PURE__ */ (0, import
26280
26886
  className: cn("flex h-9 w-9 items-center justify-center", className),
26281
26887
  ...props,
26282
26888
  children: [
26283
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_lucide_react19.MoreHorizontal, { className: "h-4 w-4" }),
26284
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("span", { className: "sr-only", children: "More" })
26889
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react19.MoreHorizontal, { className: "h-4 w-4" }),
26890
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "sr-only", children: "More" })
26285
26891
  ]
26286
26892
  }
26287
26893
  );
@@ -26290,9 +26896,9 @@ BreadcrumbEllipsis.displayName = "BreadcrumbElipssis";
26290
26896
  // src/components/ui/calendar.tsx
26291
26897
  var import_lucide_react20 = require("lucide-react");
26292
26898
  var import_react_day_picker = require("react-day-picker");
26293
- var import_jsx_runtime65 = require("react/jsx-runtime");
26899
+ var import_jsx_runtime66 = require("react/jsx-runtime");
26294
26900
  function Calendar({ className, classNames, showOutsideDays = true, ...props }) {
26295
- return /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
26901
+ return /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
26296
26902
  import_react_day_picker.DayPicker,
26297
26903
  {
26298
26904
  showOutsideDays,
@@ -26327,9 +26933,9 @@ function Calendar({ className, classNames, showOutsideDays = true, ...props }) {
26327
26933
  components: {
26328
26934
  Chevron: ({ orientation, className: className2, ...chevronProps }) => {
26329
26935
  if (orientation === "left") {
26330
- return /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react20.ChevronLeft, { className: cn("h-4 w-4", className2), ...chevronProps });
26936
+ return /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_lucide_react20.ChevronLeft, { className: cn("h-4 w-4", className2), ...chevronProps });
26331
26937
  }
26332
- return /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react20.ChevronRight, { className: cn("h-4 w-4", className2), ...chevronProps });
26938
+ return /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_lucide_react20.ChevronRight, { className: cn("h-4 w-4", className2), ...chevronProps });
26333
26939
  }
26334
26940
  },
26335
26941
  ...props
@@ -26339,45 +26945,45 @@ function Calendar({ className, classNames, showOutsideDays = true, ...props }) {
26339
26945
  Calendar.displayName = "Calendar";
26340
26946
 
26341
26947
  // src/components/ui/card.tsx
26342
- var React39 = __toESM(require("react"), 1);
26343
- var import_jsx_runtime66 = require("react/jsx-runtime");
26344
- var Card = React39.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("div", { ref, className: cn("rounded-lg border bg-card text-card-foreground shadow-sm", className), ...props }));
26948
+ var React40 = __toESM(require("react"), 1);
26949
+ var import_jsx_runtime67 = require("react/jsx-runtime");
26950
+ var Card = React40.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("div", { ref, className: cn("rounded-lg border bg-card text-card-foreground shadow-sm", className), ...props }));
26345
26951
  Card.displayName = "Card";
26346
- var CardHeader = React39.forwardRef(
26347
- ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("div", { ref, className: cn("flex flex-col space-y-1.5 p-6", className), ...props })
26952
+ var CardHeader = React40.forwardRef(
26953
+ ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("div", { ref, className: cn("flex flex-col space-y-1.5 p-6", className), ...props })
26348
26954
  );
26349
26955
  CardHeader.displayName = "CardHeader";
26350
- var CardTitle = React39.forwardRef(
26351
- ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("h3", { ref, className: cn("text-2xl font-semibold leading-none tracking-tight", className), ...props })
26956
+ var CardTitle = React40.forwardRef(
26957
+ ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("h3", { ref, className: cn("text-2xl font-semibold leading-none tracking-tight", className), ...props })
26352
26958
  );
26353
26959
  CardTitle.displayName = "CardTitle";
26354
- var CardDescription = React39.forwardRef(
26355
- ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("p", { ref, className: cn("text-sm text-muted-foreground", className), ...props })
26960
+ var CardDescription = React40.forwardRef(
26961
+ ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("p", { ref, className: cn("text-sm text-muted-foreground", className), ...props })
26356
26962
  );
26357
26963
  CardDescription.displayName = "CardDescription";
26358
- var CardContent = React39.forwardRef(
26359
- ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("div", { ref, className: cn("p-6 pt-0", className), ...props })
26964
+ var CardContent = React40.forwardRef(
26965
+ ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("div", { ref, className: cn("p-6 pt-0", className), ...props })
26360
26966
  );
26361
26967
  CardContent.displayName = "CardContent";
26362
- var CardFooter = React39.forwardRef(
26363
- ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("div", { ref, className: cn("flex items-center p-6 pt-0", className), ...props })
26968
+ var CardFooter = React40.forwardRef(
26969
+ ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("div", { ref, className: cn("flex items-center p-6 pt-0", className), ...props })
26364
26970
  );
26365
26971
  CardFooter.displayName = "CardFooter";
26366
26972
 
26367
26973
  // src/components/ui/carousel.tsx
26368
- var React40 = __toESM(require("react"), 1);
26974
+ var React41 = __toESM(require("react"), 1);
26369
26975
  var import_embla_carousel_react = __toESM(require("embla-carousel-react"), 1);
26370
26976
  var import_lucide_react21 = require("lucide-react");
26371
- var import_jsx_runtime67 = require("react/jsx-runtime");
26372
- var CarouselContext = React40.createContext(null);
26977
+ var import_jsx_runtime68 = require("react/jsx-runtime");
26978
+ var CarouselContext = React41.createContext(null);
26373
26979
  function useCarousel() {
26374
- const context = React40.useContext(CarouselContext);
26980
+ const context = React41.useContext(CarouselContext);
26375
26981
  if (!context) {
26376
26982
  throw new Error("useCarousel must be used within a <Carousel />");
26377
26983
  }
26378
26984
  return context;
26379
26985
  }
26380
- var Carousel = React40.forwardRef(
26986
+ var Carousel = React41.forwardRef(
26381
26987
  ({ orientation = "horizontal", opts, setApi, plugins, className, children, ...props }, ref) => {
26382
26988
  const [carouselRef, api] = (0, import_embla_carousel_react.default)(
26383
26989
  {
@@ -26386,22 +26992,22 @@ var Carousel = React40.forwardRef(
26386
26992
  },
26387
26993
  plugins
26388
26994
  );
26389
- const [canScrollPrev, setCanScrollPrev] = React40.useState(false);
26390
- const [canScrollNext, setCanScrollNext] = React40.useState(false);
26391
- const onSelect = React40.useCallback((api2) => {
26995
+ const [canScrollPrev, setCanScrollPrev] = React41.useState(false);
26996
+ const [canScrollNext, setCanScrollNext] = React41.useState(false);
26997
+ const onSelect = React41.useCallback((api2) => {
26392
26998
  if (!api2) {
26393
26999
  return;
26394
27000
  }
26395
27001
  setCanScrollPrev(api2.canScrollPrev());
26396
27002
  setCanScrollNext(api2.canScrollNext());
26397
27003
  }, []);
26398
- const scrollPrev = React40.useCallback(() => {
27004
+ const scrollPrev = React41.useCallback(() => {
26399
27005
  api == null ? void 0 : api.scrollPrev();
26400
27006
  }, [api]);
26401
- const scrollNext = React40.useCallback(() => {
27007
+ const scrollNext = React41.useCallback(() => {
26402
27008
  api == null ? void 0 : api.scrollNext();
26403
27009
  }, [api]);
26404
- const handleKeyDown = React40.useCallback(
27010
+ const handleKeyDown = React41.useCallback(
26405
27011
  (event) => {
26406
27012
  if (event.key === "ArrowLeft") {
26407
27013
  event.preventDefault();
@@ -26413,13 +27019,13 @@ var Carousel = React40.forwardRef(
26413
27019
  },
26414
27020
  [scrollPrev, scrollNext]
26415
27021
  );
26416
- React40.useEffect(() => {
27022
+ React41.useEffect(() => {
26417
27023
  if (!api || !setApi) {
26418
27024
  return;
26419
27025
  }
26420
27026
  setApi(api);
26421
27027
  }, [api, setApi]);
26422
- React40.useEffect(() => {
27028
+ React41.useEffect(() => {
26423
27029
  if (!api) {
26424
27030
  return;
26425
27031
  }
@@ -26430,7 +27036,7 @@ var Carousel = React40.forwardRef(
26430
27036
  api == null ? void 0 : api.off("select", onSelect);
26431
27037
  };
26432
27038
  }, [api, onSelect]);
26433
- return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
27039
+ return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
26434
27040
  CarouselContext.Provider,
26435
27041
  {
26436
27042
  value: {
@@ -26443,7 +27049,7 @@ var Carousel = React40.forwardRef(
26443
27049
  canScrollPrev,
26444
27050
  canScrollNext
26445
27051
  },
26446
- children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
27052
+ children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
26447
27053
  "div",
26448
27054
  {
26449
27055
  ref,
@@ -26460,10 +27066,10 @@ var Carousel = React40.forwardRef(
26460
27066
  }
26461
27067
  );
26462
27068
  Carousel.displayName = "Carousel";
26463
- var CarouselContent = React40.forwardRef(
27069
+ var CarouselContent = React41.forwardRef(
26464
27070
  ({ className, ...props }, ref) => {
26465
27071
  const { carouselRef, orientation } = useCarousel();
26466
- return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("div", { ref: carouselRef, className: "overflow-hidden", children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
27072
+ return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { ref: carouselRef, className: "overflow-hidden", children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
26467
27073
  "div",
26468
27074
  {
26469
27075
  ref,
@@ -26474,10 +27080,10 @@ var CarouselContent = React40.forwardRef(
26474
27080
  }
26475
27081
  );
26476
27082
  CarouselContent.displayName = "CarouselContent";
26477
- var CarouselItem = React40.forwardRef(
27083
+ var CarouselItem = React41.forwardRef(
26478
27084
  ({ className, ...props }, ref) => {
26479
27085
  const { orientation } = useCarousel();
26480
- return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
27086
+ return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
26481
27087
  "div",
26482
27088
  {
26483
27089
  ref,
@@ -26490,10 +27096,10 @@ var CarouselItem = React40.forwardRef(
26490
27096
  }
26491
27097
  );
26492
27098
  CarouselItem.displayName = "CarouselItem";
26493
- var CarouselPrevious = React40.forwardRef(
27099
+ var CarouselPrevious = React41.forwardRef(
26494
27100
  ({ className, variant = "outline", size = "icon", ...props }, ref) => {
26495
27101
  const { orientation, scrollPrev, canScrollPrev } = useCarousel();
26496
- return /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)(
27102
+ return /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(
26497
27103
  Button,
26498
27104
  {
26499
27105
  ref,
@@ -26508,18 +27114,18 @@ var CarouselPrevious = React40.forwardRef(
26508
27114
  onClick: scrollPrev,
26509
27115
  ...props,
26510
27116
  children: [
26511
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_lucide_react21.ArrowLeft, { className: "h-4 w-4" }),
26512
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("span", { className: "sr-only", children: "Previous slide" })
27117
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_lucide_react21.ArrowLeft, { className: "h-4 w-4" }),
27118
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("span", { className: "sr-only", children: "Previous slide" })
26513
27119
  ]
26514
27120
  }
26515
27121
  );
26516
27122
  }
26517
27123
  );
26518
27124
  CarouselPrevious.displayName = "CarouselPrevious";
26519
- var CarouselNext = React40.forwardRef(
27125
+ var CarouselNext = React41.forwardRef(
26520
27126
  ({ className, variant = "outline", size = "icon", ...props }, ref) => {
26521
27127
  const { orientation, scrollNext, canScrollNext } = useCarousel();
26522
- return /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)(
27128
+ return /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(
26523
27129
  Button,
26524
27130
  {
26525
27131
  ref,
@@ -26534,8 +27140,8 @@ var CarouselNext = React40.forwardRef(
26534
27140
  onClick: scrollNext,
26535
27141
  ...props,
26536
27142
  children: [
26537
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_lucide_react21.ArrowRight, { className: "h-4 w-4" }),
26538
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("span", { className: "sr-only", children: "Next slide" })
27143
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_lucide_react21.ArrowRight, { className: "h-4 w-4" }),
27144
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("span", { className: "sr-only", children: "Next slide" })
26539
27145
  ]
26540
27146
  }
26541
27147
  );
@@ -26544,22 +27150,22 @@ var CarouselNext = React40.forwardRef(
26544
27150
  CarouselNext.displayName = "CarouselNext";
26545
27151
 
26546
27152
  // src/components/ui/chart.tsx
26547
- var React41 = __toESM(require("react"), 1);
27153
+ var React42 = __toESM(require("react"), 1);
26548
27154
  var RechartsPrimitive = __toESM(require("recharts"), 1);
26549
- var import_jsx_runtime68 = require("react/jsx-runtime");
27155
+ var import_jsx_runtime69 = require("react/jsx-runtime");
26550
27156
  var THEMES = { light: "", dark: ".dark" };
26551
- var ChartContext = React41.createContext(null);
27157
+ var ChartContext = React42.createContext(null);
26552
27158
  function useChart() {
26553
- const context = React41.useContext(ChartContext);
27159
+ const context = React42.useContext(ChartContext);
26554
27160
  if (!context) {
26555
27161
  throw new Error("useChart must be used within a <ChartContainer />");
26556
27162
  }
26557
27163
  return context;
26558
27164
  }
26559
- var ChartContainer = React41.forwardRef(({ id, className, children, config, ...props }, ref) => {
26560
- const uniqueId = React41.useId();
27165
+ var ChartContainer = React42.forwardRef(({ id, className, children, config, ...props }, ref) => {
27166
+ const uniqueId = React42.useId();
26561
27167
  const chartId = `chart-${id || uniqueId.replace(/:/g, "")}`;
26562
- return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(ChartContext.Provider, { value: { config }, children: /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(
27168
+ return /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(ChartContext.Provider, { value: { config }, children: /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)(
26563
27169
  "div",
26564
27170
  {
26565
27171
  "data-chart": chartId,
@@ -26570,8 +27176,8 @@ var ChartContainer = React41.forwardRef(({ id, className, children, config, ...p
26570
27176
  ),
26571
27177
  ...props,
26572
27178
  children: [
26573
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(ChartStyle, { id: chartId, config }),
26574
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(RechartsPrimitive.ResponsiveContainer, { children })
27179
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(ChartStyle, { id: chartId, config }),
27180
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(RechartsPrimitive.ResponsiveContainer, { children })
26575
27181
  ]
26576
27182
  }
26577
27183
  ) });
@@ -26582,7 +27188,7 @@ var ChartStyle = ({ id, config }) => {
26582
27188
  if (!colorConfig.length) {
26583
27189
  return null;
26584
27190
  }
26585
- return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
27191
+ return /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
26586
27192
  "style",
26587
27193
  {
26588
27194
  dangerouslySetInnerHTML: {
@@ -26602,7 +27208,7 @@ ${colorConfig.map(([key, itemConfig]) => {
26602
27208
  );
26603
27209
  };
26604
27210
  var ChartTooltip = RechartsPrimitive.Tooltip;
26605
- var ChartTooltipContent = React41.forwardRef(
27211
+ var ChartTooltipContent = React42.forwardRef(
26606
27212
  ({
26607
27213
  active,
26608
27214
  payload,
@@ -26619,7 +27225,7 @@ var ChartTooltipContent = React41.forwardRef(
26619
27225
  labelKey
26620
27226
  }, ref) => {
26621
27227
  const { config } = useChart();
26622
- const tooltipLabel = React41.useMemo(() => {
27228
+ const tooltipLabel = React42.useMemo(() => {
26623
27229
  var _a78;
26624
27230
  if (hideLabel || !(payload == null ? void 0 : payload.length)) {
26625
27231
  return null;
@@ -26629,18 +27235,18 @@ var ChartTooltipContent = React41.forwardRef(
26629
27235
  const itemConfig = getPayloadConfigFromPayload(config, item, key);
26630
27236
  const value = !labelKey && typeof label === "string" ? ((_a78 = config[label]) == null ? void 0 : _a78.label) || label : itemConfig == null ? void 0 : itemConfig.label;
26631
27237
  if (labelFormatter) {
26632
- return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: cn("font-medium", labelClassName), children: labelFormatter(value, payload) });
27238
+ return /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: cn("font-medium", labelClassName), children: labelFormatter(value, payload) });
26633
27239
  }
26634
27240
  if (!value) {
26635
27241
  return null;
26636
27242
  }
26637
- return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: cn("font-medium", labelClassName), children: value });
27243
+ return /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: cn("font-medium", labelClassName), children: value });
26638
27244
  }, [label, labelFormatter, payload, hideLabel, labelClassName, config, labelKey]);
26639
27245
  if (!active || !(payload == null ? void 0 : payload.length)) {
26640
27246
  return null;
26641
27247
  }
26642
27248
  const nestLabel = payload.length === 1 && indicator !== "dot";
26643
- return /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(
27249
+ return /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)(
26644
27250
  "div",
26645
27251
  {
26646
27252
  ref,
@@ -26650,19 +27256,19 @@ var ChartTooltipContent = React41.forwardRef(
26650
27256
  ),
26651
27257
  children: [
26652
27258
  !nestLabel ? tooltipLabel : null,
26653
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: "grid gap-1.5", children: payload.map((item, index) => {
27259
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: "grid gap-1.5", children: payload.map((item, index) => {
26654
27260
  const key = `${nameKey || item.name || item.dataKey || "value"}`;
26655
27261
  const itemConfig = getPayloadConfigFromPayload(config, item, key);
26656
27262
  const indicatorColor = color || item.payload.fill || item.color;
26657
- return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
27263
+ return /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
26658
27264
  "div",
26659
27265
  {
26660
27266
  className: cn(
26661
27267
  "flex w-full flex-wrap items-stretch gap-2 [&>svg]:h-2.5 [&>svg]:w-2.5 [&>svg]:text-muted-foreground",
26662
27268
  indicator === "dot" && "items-center"
26663
27269
  ),
26664
- children: formatter && (item == null ? void 0 : item.value) !== void 0 && item.name ? formatter(item.value, item.name, item, index, item.payload) : /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(import_jsx_runtime68.Fragment, { children: [
26665
- (itemConfig == null ? void 0 : itemConfig.icon) ? /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(itemConfig.icon, {}) : !hideIndicator && /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
27270
+ children: formatter && (item == null ? void 0 : item.value) !== void 0 && item.name ? formatter(item.value, item.name, item, index, item.payload) : /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)(import_jsx_runtime69.Fragment, { children: [
27271
+ (itemConfig == null ? void 0 : itemConfig.icon) ? /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(itemConfig.icon, {}) : !hideIndicator && /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
26666
27272
  "div",
26667
27273
  {
26668
27274
  className: cn("shrink-0 rounded-[2px] border-[--color-border] bg-[--color-bg]", {
@@ -26677,7 +27283,7 @@ var ChartTooltipContent = React41.forwardRef(
26677
27283
  }
26678
27284
  }
26679
27285
  ),
26680
- /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(
27286
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)(
26681
27287
  "div",
26682
27288
  {
26683
27289
  className: cn(
@@ -26685,11 +27291,11 @@ var ChartTooltipContent = React41.forwardRef(
26685
27291
  nestLabel ? "items-end" : "items-center"
26686
27292
  ),
26687
27293
  children: [
26688
- /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "grid gap-1.5", children: [
27294
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "grid gap-1.5", children: [
26689
27295
  nestLabel ? tooltipLabel : null,
26690
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("span", { className: "text-muted-foreground", children: (itemConfig == null ? void 0 : itemConfig.label) || item.name })
27296
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("span", { className: "text-muted-foreground", children: (itemConfig == null ? void 0 : itemConfig.label) || item.name })
26691
27297
  ] }),
26692
- item.value && /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("span", { className: "font-mono font-medium tabular-nums text-foreground", children: item.value.toLocaleString() })
27298
+ item.value && /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("span", { className: "font-mono font-medium tabular-nums text-foreground", children: item.value.toLocaleString() })
26693
27299
  ]
26694
27300
  }
26695
27301
  )
@@ -26705,12 +27311,12 @@ var ChartTooltipContent = React41.forwardRef(
26705
27311
  );
26706
27312
  ChartTooltipContent.displayName = "ChartTooltip";
26707
27313
  var ChartLegend = RechartsPrimitive.Legend;
26708
- var ChartLegendContent = React41.forwardRef(({ className, hideIcon = false, payload, verticalAlign = "bottom", nameKey }, ref) => {
27314
+ var ChartLegendContent = React42.forwardRef(({ className, hideIcon = false, payload, verticalAlign = "bottom", nameKey }, ref) => {
26709
27315
  const { config } = useChart();
26710
27316
  if (!(payload == null ? void 0 : payload.length)) {
26711
27317
  return null;
26712
27318
  }
26713
- return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
27319
+ return /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
26714
27320
  "div",
26715
27321
  {
26716
27322
  ref,
@@ -26718,12 +27324,12 @@ var ChartLegendContent = React41.forwardRef(({ className, hideIcon = false, payl
26718
27324
  children: payload.map((item) => {
26719
27325
  const key = `${nameKey || item.dataKey || "value"}`;
26720
27326
  const itemConfig = getPayloadConfigFromPayload(config, item, key);
26721
- return /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(
27327
+ return /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)(
26722
27328
  "div",
26723
27329
  {
26724
27330
  className: cn("flex items-center gap-1.5 [&>svg]:h-3 [&>svg]:w-3 [&>svg]:text-muted-foreground"),
26725
27331
  children: [
26726
- (itemConfig == null ? void 0 : itemConfig.icon) && !hideIcon ? /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(itemConfig.icon, {}) : /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
27332
+ (itemConfig == null ? void 0 : itemConfig.icon) && !hideIcon ? /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(itemConfig.icon, {}) : /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
26727
27333
  "div",
26728
27334
  {
26729
27335
  className: "h-2 w-2 shrink-0 rounded-[2px]",
@@ -26757,11 +27363,11 @@ function getPayloadConfigFromPayload(config, payload, key) {
26757
27363
  }
26758
27364
 
26759
27365
  // src/components/ui/checkbox.tsx
26760
- var React42 = __toESM(require("react"), 1);
27366
+ var React43 = __toESM(require("react"), 1);
26761
27367
  var CheckboxPrimitive = __toESM(require("@radix-ui/react-checkbox"), 1);
26762
27368
  var import_lucide_react22 = require("lucide-react");
26763
- var import_jsx_runtime69 = require("react/jsx-runtime");
26764
- var Checkbox = React42.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
27369
+ var import_jsx_runtime70 = require("react/jsx-runtime");
27370
+ var Checkbox = React43.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
26765
27371
  CheckboxPrimitive.Root,
26766
27372
  {
26767
27373
  ref,
@@ -26770,7 +27376,7 @@ var Checkbox = React42.forwardRef(({ className, ...props }, ref) => /* @__PURE__
26770
27376
  className
26771
27377
  ),
26772
27378
  ...props,
26773
- children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(CheckboxPrimitive.Indicator, { className: cn("flex items-center justify-center text-current"), children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(import_lucide_react22.Check, { className: "h-4 w-4" }) })
27379
+ children: /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(CheckboxPrimitive.Indicator, { className: cn("flex items-center justify-center text-current"), children: /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(import_lucide_react22.Check, { className: "h-4 w-4" }) })
26774
27380
  }
26775
27381
  ));
26776
27382
  Checkbox.displayName = CheckboxPrimitive.Root.displayName;
@@ -26782,11 +27388,11 @@ var CollapsibleTrigger2 = CollapsiblePrimitive.CollapsibleTrigger;
26782
27388
  var CollapsibleContent2 = CollapsiblePrimitive.CollapsibleContent;
26783
27389
 
26784
27390
  // src/components/ui/command.tsx
26785
- var React43 = __toESM(require("react"), 1);
27391
+ var React44 = __toESM(require("react"), 1);
26786
27392
  var import_cmdk = require("cmdk");
26787
27393
  var import_lucide_react23 = require("lucide-react");
26788
- var import_jsx_runtime70 = require("react/jsx-runtime");
26789
- var Command = React43.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
27394
+ var import_jsx_runtime71 = require("react/jsx-runtime");
27395
+ var Command = React44.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
26790
27396
  import_cmdk.Command,
26791
27397
  {
26792
27398
  ref,
@@ -26799,11 +27405,11 @@ var Command = React43.forwardRef(({ className, ...props }, ref) => /* @__PURE__
26799
27405
  ));
26800
27406
  Command.displayName = import_cmdk.Command.displayName;
26801
27407
  var CommandDialog = ({ children, ...props }) => {
26802
- return /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(Dialog, { ...props, children: /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(DialogContent, { className: "overflow-hidden p-0 shadow-lg", children: /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(Command, { className: "[&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-group]]:px-2 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5", children }) }) });
27408
+ return /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(Dialog, { ...props, children: /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(DialogContent, { className: "overflow-hidden p-0 shadow-lg", children: /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(Command, { className: "[&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-group]]:px-2 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5", children }) }) });
26803
27409
  };
26804
- var CommandInput = React43.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime70.jsxs)("div", { className: "flex items-center border-b px-3", "cmdk-input-wrapper": "", children: [
26805
- /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(import_lucide_react23.Search, { className: "mr-2 h-4 w-4 shrink-0 opacity-50" }),
26806
- /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
27410
+ var CommandInput = React44.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime71.jsxs)("div", { className: "flex items-center border-b px-3", "cmdk-input-wrapper": "", children: [
27411
+ /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(import_lucide_react23.Search, { className: "mr-2 h-4 w-4 shrink-0 opacity-50" }),
27412
+ /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
26807
27413
  import_cmdk.Command.Input,
26808
27414
  {
26809
27415
  ref,
@@ -26816,7 +27422,7 @@ var CommandInput = React43.forwardRef(({ className, ...props }, ref) => /* @__PU
26816
27422
  )
26817
27423
  ] }));
26818
27424
  CommandInput.displayName = import_cmdk.Command.Input.displayName;
26819
- var CommandList = React43.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
27425
+ var CommandList = React44.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
26820
27426
  import_cmdk.Command.List,
26821
27427
  {
26822
27428
  ref,
@@ -26825,9 +27431,9 @@ var CommandList = React43.forwardRef(({ className, ...props }, ref) => /* @__PUR
26825
27431
  }
26826
27432
  ));
26827
27433
  CommandList.displayName = import_cmdk.Command.List.displayName;
26828
- var CommandEmpty = React43.forwardRef((props, ref) => /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(import_cmdk.Command.Empty, { ref, className: "py-6 text-center text-sm", ...props }));
27434
+ var CommandEmpty = React44.forwardRef((props, ref) => /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(import_cmdk.Command.Empty, { ref, className: "py-6 text-center text-sm", ...props }));
26829
27435
  CommandEmpty.displayName = import_cmdk.Command.Empty.displayName;
26830
- var CommandGroup = React43.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
27436
+ var CommandGroup = React44.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
26831
27437
  import_cmdk.Command.Group,
26832
27438
  {
26833
27439
  ref,
@@ -26839,9 +27445,9 @@ var CommandGroup = React43.forwardRef(({ className, ...props }, ref) => /* @__PU
26839
27445
  }
26840
27446
  ));
26841
27447
  CommandGroup.displayName = import_cmdk.Command.Group.displayName;
26842
- var CommandSeparator = React43.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(import_cmdk.Command.Separator, { ref, className: cn("-mx-1 h-px bg-border", className), ...props }));
27448
+ var CommandSeparator = React44.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(import_cmdk.Command.Separator, { ref, className: cn("-mx-1 h-px bg-border", className), ...props }));
26843
27449
  CommandSeparator.displayName = import_cmdk.Command.Separator.displayName;
26844
- var CommandItem = React43.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
27450
+ var CommandItem = React44.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
26845
27451
  import_cmdk.Command.Item,
26846
27452
  {
26847
27453
  ref,
@@ -26854,22 +27460,22 @@ var CommandItem = React43.forwardRef(({ className, ...props }, ref) => /* @__PUR
26854
27460
  ));
26855
27461
  CommandItem.displayName = import_cmdk.Command.Item.displayName;
26856
27462
  var CommandShortcut = ({ className, ...props }) => {
26857
- return /* @__PURE__ */ (0, import_jsx_runtime70.jsx)("span", { className: cn("ml-auto text-xs tracking-widest text-muted-foreground", className), ...props });
27463
+ return /* @__PURE__ */ (0, import_jsx_runtime71.jsx)("span", { className: cn("ml-auto text-xs tracking-widest text-muted-foreground", className), ...props });
26858
27464
  };
26859
27465
  CommandShortcut.displayName = "CommandShortcut";
26860
27466
 
26861
27467
  // src/components/ui/context-menu.tsx
26862
- var React44 = __toESM(require("react"), 1);
27468
+ var React45 = __toESM(require("react"), 1);
26863
27469
  var ContextMenuPrimitive = __toESM(require("@radix-ui/react-context-menu"), 1);
26864
27470
  var import_lucide_react24 = require("lucide-react");
26865
- var import_jsx_runtime71 = require("react/jsx-runtime");
27471
+ var import_jsx_runtime72 = require("react/jsx-runtime");
26866
27472
  var ContextMenu = ContextMenuPrimitive.Root;
26867
27473
  var ContextMenuTrigger = ContextMenuPrimitive.Trigger;
26868
27474
  var ContextMenuGroup = ContextMenuPrimitive.Group;
26869
27475
  var ContextMenuPortal = ContextMenuPrimitive.Portal;
26870
27476
  var ContextMenuSub = ContextMenuPrimitive.Sub;
26871
27477
  var ContextMenuRadioGroup = ContextMenuPrimitive.RadioGroup;
26872
- var ContextMenuSubTrigger = React44.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime71.jsxs)(
27478
+ var ContextMenuSubTrigger = React45.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime72.jsxs)(
26873
27479
  ContextMenuPrimitive.SubTrigger,
26874
27480
  {
26875
27481
  ref,
@@ -26881,12 +27487,12 @@ var ContextMenuSubTrigger = React44.forwardRef(({ className, inset, children, ..
26881
27487
  ...props,
26882
27488
  children: [
26883
27489
  children,
26884
- /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(import_lucide_react24.ChevronRight, { className: "ml-auto h-4 w-4" })
27490
+ /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(import_lucide_react24.ChevronRight, { className: "ml-auto h-4 w-4" })
26885
27491
  ]
26886
27492
  }
26887
27493
  ));
26888
27494
  ContextMenuSubTrigger.displayName = ContextMenuPrimitive.SubTrigger.displayName;
26889
- var ContextMenuSubContent = React44.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
27495
+ var ContextMenuSubContent = React45.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(
26890
27496
  ContextMenuPrimitive.SubContent,
26891
27497
  {
26892
27498
  ref,
@@ -26898,7 +27504,7 @@ var ContextMenuSubContent = React44.forwardRef(({ className, ...props }, ref) =>
26898
27504
  }
26899
27505
  ));
26900
27506
  ContextMenuSubContent.displayName = ContextMenuPrimitive.SubContent.displayName;
26901
- var ContextMenuContent = React44.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(ContextMenuPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
27507
+ var ContextMenuContent = React45.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(ContextMenuPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(
26902
27508
  ContextMenuPrimitive.Content,
26903
27509
  {
26904
27510
  ref,
@@ -26910,7 +27516,7 @@ var ContextMenuContent = React44.forwardRef(({ className, ...props }, ref) => /*
26910
27516
  }
26911
27517
  ) }));
26912
27518
  ContextMenuContent.displayName = ContextMenuPrimitive.Content.displayName;
26913
- var ContextMenuItem = React44.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
27519
+ var ContextMenuItem = React45.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(
26914
27520
  ContextMenuPrimitive.Item,
26915
27521
  {
26916
27522
  ref,
@@ -26923,7 +27529,7 @@ var ContextMenuItem = React44.forwardRef(({ className, inset, ...props }, ref) =
26923
27529
  }
26924
27530
  ));
26925
27531
  ContextMenuItem.displayName = ContextMenuPrimitive.Item.displayName;
26926
- var ContextMenuCheckboxItem = React44.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime71.jsxs)(
27532
+ var ContextMenuCheckboxItem = React45.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime72.jsxs)(
26927
27533
  ContextMenuPrimitive.CheckboxItem,
26928
27534
  {
26929
27535
  ref,
@@ -26934,13 +27540,13 @@ var ContextMenuCheckboxItem = React44.forwardRef(({ className, children, checked
26934
27540
  checked,
26935
27541
  ...props,
26936
27542
  children: [
26937
- /* @__PURE__ */ (0, import_jsx_runtime71.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(ContextMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(import_lucide_react24.Check, { className: "h-4 w-4" }) }) }),
27543
+ /* @__PURE__ */ (0, import_jsx_runtime72.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(ContextMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(import_lucide_react24.Check, { className: "h-4 w-4" }) }) }),
26938
27544
  children
26939
27545
  ]
26940
27546
  }
26941
27547
  ));
26942
27548
  ContextMenuCheckboxItem.displayName = ContextMenuPrimitive.CheckboxItem.displayName;
26943
- var ContextMenuRadioItem = React44.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime71.jsxs)(
27549
+ var ContextMenuRadioItem = React45.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime72.jsxs)(
26944
27550
  ContextMenuPrimitive.RadioItem,
26945
27551
  {
26946
27552
  ref,
@@ -26950,13 +27556,13 @@ var ContextMenuRadioItem = React44.forwardRef(({ className, children, ...props }
26950
27556
  ),
26951
27557
  ...props,
26952
27558
  children: [
26953
- /* @__PURE__ */ (0, import_jsx_runtime71.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(ContextMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(import_lucide_react24.Circle, { className: "h-2 w-2 fill-current" }) }) }),
27559
+ /* @__PURE__ */ (0, import_jsx_runtime72.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(ContextMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(import_lucide_react24.Circle, { className: "h-2 w-2 fill-current" }) }) }),
26954
27560
  children
26955
27561
  ]
26956
27562
  }
26957
27563
  ));
26958
27564
  ContextMenuRadioItem.displayName = ContextMenuPrimitive.RadioItem.displayName;
26959
- var ContextMenuLabel = React44.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
27565
+ var ContextMenuLabel = React45.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(
26960
27566
  ContextMenuPrimitive.Label,
26961
27567
  {
26962
27568
  ref,
@@ -26965,39 +27571,39 @@ var ContextMenuLabel = React44.forwardRef(({ className, inset, ...props }, ref)
26965
27571
  }
26966
27572
  ));
26967
27573
  ContextMenuLabel.displayName = ContextMenuPrimitive.Label.displayName;
26968
- var ContextMenuSeparator = React44.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(ContextMenuPrimitive.Separator, { ref, className: cn("-mx-1 my-1 h-px bg-border", className), ...props }));
27574
+ var ContextMenuSeparator = React45.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(ContextMenuPrimitive.Separator, { ref, className: cn("-mx-1 my-1 h-px bg-border", className), ...props }));
26969
27575
  ContextMenuSeparator.displayName = ContextMenuPrimitive.Separator.displayName;
26970
27576
  var ContextMenuShortcut = ({ className, ...props }) => {
26971
- return /* @__PURE__ */ (0, import_jsx_runtime71.jsx)("span", { className: cn("ml-auto text-xs tracking-widest text-muted-foreground", className), ...props });
27577
+ return /* @__PURE__ */ (0, import_jsx_runtime72.jsx)("span", { className: cn("ml-auto text-xs tracking-widest text-muted-foreground", className), ...props });
26972
27578
  };
26973
27579
  ContextMenuShortcut.displayName = "ContextMenuShortcut";
26974
27580
 
26975
27581
  // src/components/ui/form.tsx
26976
- var React46 = __toESM(require("react"), 1);
27582
+ var React47 = __toESM(require("react"), 1);
26977
27583
  var import_react_slot3 = require("@radix-ui/react-slot");
26978
27584
  var import_react_hook_form = require("react-hook-form");
26979
27585
 
26980
27586
  // src/components/ui/label.tsx
26981
- var React45 = __toESM(require("react"), 1);
27587
+ var React46 = __toESM(require("react"), 1);
26982
27588
  var LabelPrimitive = __toESM(require("@radix-ui/react-label"), 1);
26983
27589
  var import_class_variance_authority4 = require("class-variance-authority");
26984
- var import_jsx_runtime72 = require("react/jsx-runtime");
27590
+ var import_jsx_runtime73 = require("react/jsx-runtime");
26985
27591
  var labelVariants = (0, import_class_variance_authority4.cva)("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70");
26986
- var Label4 = React45.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(LabelPrimitive.Root, { ref, className: cn(labelVariants(), className), ...props }));
27592
+ var Label4 = React46.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(LabelPrimitive.Root, { ref, className: cn(labelVariants(), className), ...props }));
26987
27593
  Label4.displayName = LabelPrimitive.Root.displayName;
26988
27594
 
26989
27595
  // src/components/ui/form.tsx
26990
- var import_jsx_runtime73 = require("react/jsx-runtime");
27596
+ var import_jsx_runtime74 = require("react/jsx-runtime");
26991
27597
  var Form = import_react_hook_form.FormProvider;
26992
- var FormFieldContext = React46.createContext({});
27598
+ var FormFieldContext = React47.createContext({});
26993
27599
  var FormField = ({
26994
27600
  ...props
26995
27601
  }) => {
26996
- return /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(FormFieldContext.Provider, { value: { name: props.name }, children: /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(import_react_hook_form.Controller, { ...props }) });
27602
+ return /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(FormFieldContext.Provider, { value: { name: props.name }, children: /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(import_react_hook_form.Controller, { ...props }) });
26997
27603
  };
26998
27604
  var useFormField = () => {
26999
- const fieldContext = React46.useContext(FormFieldContext);
27000
- const itemContext = React46.useContext(FormItemContext);
27605
+ const fieldContext = React47.useContext(FormFieldContext);
27606
+ const itemContext = React47.useContext(FormItemContext);
27001
27607
  const { getFieldState, formState } = (0, import_react_hook_form.useFormContext)();
27002
27608
  const fieldState = getFieldState(fieldContext.name, formState);
27003
27609
  if (!fieldContext) {
@@ -27013,23 +27619,23 @@ var useFormField = () => {
27013
27619
  ...fieldState
27014
27620
  };
27015
27621
  };
27016
- var FormItemContext = React46.createContext({});
27017
- var FormItem = React46.forwardRef(
27622
+ var FormItemContext = React47.createContext({});
27623
+ var FormItem = React47.forwardRef(
27018
27624
  ({ className, ...props }, ref) => {
27019
- const id = React46.useId();
27020
- return /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(FormItemContext.Provider, { value: { id }, children: /* @__PURE__ */ (0, import_jsx_runtime73.jsx)("div", { ref, className: cn("space-y-2", className), ...props }) });
27625
+ const id = React47.useId();
27626
+ return /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(FormItemContext.Provider, { value: { id }, children: /* @__PURE__ */ (0, import_jsx_runtime74.jsx)("div", { ref, className: cn("space-y-2", className), ...props }) });
27021
27627
  }
27022
27628
  );
27023
27629
  FormItem.displayName = "FormItem";
27024
- var FormLabel = React46.forwardRef(({ className, ...props }, ref) => {
27630
+ var FormLabel = React47.forwardRef(({ className, ...props }, ref) => {
27025
27631
  const { error, formItemId } = useFormField();
27026
- return /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(Label4, { ref, className: cn(error && "text-destructive", className), htmlFor: formItemId, ...props });
27632
+ return /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(Label4, { ref, className: cn(error && "text-destructive", className), htmlFor: formItemId, ...props });
27027
27633
  });
27028
27634
  FormLabel.displayName = "FormLabel";
27029
- var FormControl = React46.forwardRef(
27635
+ var FormControl = React47.forwardRef(
27030
27636
  ({ ...props }, ref) => {
27031
27637
  const { error, formItemId, formDescriptionId, formMessageId } = useFormField();
27032
- return /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
27638
+ return /* @__PURE__ */ (0, import_jsx_runtime74.jsx)(
27033
27639
  import_react_slot3.Slot,
27034
27640
  {
27035
27641
  ref,
@@ -27042,42 +27648,42 @@ var FormControl = React46.forwardRef(
27042
27648
  }
27043
27649
  );
27044
27650
  FormControl.displayName = "FormControl";
27045
- var FormDescription = React46.forwardRef(
27651
+ var FormDescription = React47.forwardRef(
27046
27652
  ({ className, ...props }, ref) => {
27047
27653
  const { formDescriptionId } = useFormField();
27048
- return /* @__PURE__ */ (0, import_jsx_runtime73.jsx)("p", { ref, id: formDescriptionId, className: cn("text-sm text-muted-foreground", className), ...props });
27654
+ return /* @__PURE__ */ (0, import_jsx_runtime74.jsx)("p", { ref, id: formDescriptionId, className: cn("text-sm text-muted-foreground", className), ...props });
27049
27655
  }
27050
27656
  );
27051
27657
  FormDescription.displayName = "FormDescription";
27052
- var FormMessage = React46.forwardRef(
27658
+ var FormMessage = React47.forwardRef(
27053
27659
  ({ className, children, ...props }, ref) => {
27054
27660
  const { error, formMessageId } = useFormField();
27055
27661
  const body = error ? String(error == null ? void 0 : error.message) : children;
27056
27662
  if (!body) {
27057
27663
  return null;
27058
27664
  }
27059
- return /* @__PURE__ */ (0, import_jsx_runtime73.jsx)("p", { ref, id: formMessageId, className: cn("text-sm font-medium text-destructive", className), ...props, children: body });
27665
+ return /* @__PURE__ */ (0, import_jsx_runtime74.jsx)("p", { ref, id: formMessageId, className: cn("text-sm font-medium text-destructive", className), ...props, children: body });
27060
27666
  }
27061
27667
  );
27062
27668
  FormMessage.displayName = "FormMessage";
27063
27669
 
27064
27670
  // src/components/ui/glass-card.tsx
27065
- var React47 = __toESM(require("react"), 1);
27066
- var import_jsx_runtime74 = require("react/jsx-runtime");
27067
- var GlassCard = React47.forwardRef(
27671
+ var React48 = __toESM(require("react"), 1);
27672
+ var import_jsx_runtime75 = require("react/jsx-runtime");
27673
+ var GlassCard = React48.forwardRef(
27068
27674
  ({ className, ...props }, ref) => {
27069
- return /* @__PURE__ */ (0, import_jsx_runtime74.jsx)("div", { ref, className: cn("glass-card", className), ...props });
27675
+ return /* @__PURE__ */ (0, import_jsx_runtime75.jsx)("div", { ref, className: cn("glass-card", className), ...props });
27070
27676
  }
27071
27677
  );
27072
27678
  GlassCard.displayName = "GlassCard";
27073
27679
 
27074
27680
  // src/components/ui/hover-card.tsx
27075
- var React48 = __toESM(require("react"), 1);
27681
+ var React49 = __toESM(require("react"), 1);
27076
27682
  var HoverCardPrimitive = __toESM(require("@radix-ui/react-hover-card"), 1);
27077
- var import_jsx_runtime75 = require("react/jsx-runtime");
27683
+ var import_jsx_runtime76 = require("react/jsx-runtime");
27078
27684
  var HoverCard = HoverCardPrimitive.Root;
27079
27685
  var HoverCardTrigger = HoverCardPrimitive.Trigger;
27080
- var HoverCardContent = React48.forwardRef(({ className, align = "center", sideOffset = 4, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(
27686
+ var HoverCardContent = React49.forwardRef(({ className, align = "center", sideOffset = 4, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(
27081
27687
  HoverCardPrimitive.Content,
27082
27688
  {
27083
27689
  ref,
@@ -27093,12 +27699,12 @@ var HoverCardContent = React48.forwardRef(({ className, align = "center", sideOf
27093
27699
  HoverCardContent.displayName = HoverCardPrimitive.Content.displayName;
27094
27700
 
27095
27701
  // src/components/ui/input-otp.tsx
27096
- var React49 = __toESM(require("react"), 1);
27702
+ var React50 = __toESM(require("react"), 1);
27097
27703
  var import_input_otp = require("input-otp");
27098
27704
  var import_lucide_react25 = require("lucide-react");
27099
- var import_jsx_runtime76 = require("react/jsx-runtime");
27100
- var InputOTP = React49.forwardRef(
27101
- ({ className, containerClassName, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(
27705
+ var import_jsx_runtime77 = require("react/jsx-runtime");
27706
+ var InputOTP = React50.forwardRef(
27707
+ ({ className, containerClassName, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(
27102
27708
  import_input_otp.OTPInput,
27103
27709
  {
27104
27710
  ref,
@@ -27109,14 +27715,14 @@ var InputOTP = React49.forwardRef(
27109
27715
  )
27110
27716
  );
27111
27717
  InputOTP.displayName = "InputOTP";
27112
- var InputOTPGroup = React49.forwardRef(
27113
- ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime76.jsx)("div", { ref, className: cn("flex items-center", className), ...props })
27718
+ var InputOTPGroup = React50.forwardRef(
27719
+ ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime77.jsx)("div", { ref, className: cn("flex items-center", className), ...props })
27114
27720
  );
27115
27721
  InputOTPGroup.displayName = "InputOTPGroup";
27116
- var InputOTPSlot = React49.forwardRef(({ index, className, ...props }, ref) => {
27117
- const inputOTPContext = React49.useContext(import_input_otp.OTPInputContext);
27722
+ var InputOTPSlot = React50.forwardRef(({ index, className, ...props }, ref) => {
27723
+ const inputOTPContext = React50.useContext(import_input_otp.OTPInputContext);
27118
27724
  const { char, hasFakeCaret, isActive } = inputOTPContext.slots[index];
27119
- return /* @__PURE__ */ (0, import_jsx_runtime76.jsxs)(
27725
+ return /* @__PURE__ */ (0, import_jsx_runtime77.jsxs)(
27120
27726
  "div",
27121
27727
  {
27122
27728
  ref,
@@ -27128,28 +27734,28 @@ var InputOTPSlot = React49.forwardRef(({ index, className, ...props }, ref) => {
27128
27734
  ...props,
27129
27735
  children: [
27130
27736
  char,
27131
- hasFakeCaret && /* @__PURE__ */ (0, import_jsx_runtime76.jsx)("div", { className: "pointer-events-none absolute inset-0 flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime76.jsx)("div", { className: "animate-caret-blink h-4 w-px bg-foreground duration-1000" }) })
27737
+ hasFakeCaret && /* @__PURE__ */ (0, import_jsx_runtime77.jsx)("div", { className: "pointer-events-none absolute inset-0 flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime77.jsx)("div", { className: "animate-caret-blink h-4 w-px bg-foreground duration-1000" }) })
27132
27738
  ]
27133
27739
  }
27134
27740
  );
27135
27741
  });
27136
27742
  InputOTPSlot.displayName = "InputOTPSlot";
27137
- var InputOTPSeparator = React49.forwardRef(
27138
- ({ ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime76.jsx)("div", { ref, role: "separator", ...props, children: /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(import_lucide_react25.Dot, {}) })
27743
+ var InputOTPSeparator = React50.forwardRef(
27744
+ ({ ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime77.jsx)("div", { ref, role: "separator", ...props, children: /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(import_lucide_react25.Dot, {}) })
27139
27745
  );
27140
27746
  InputOTPSeparator.displayName = "InputOTPSeparator";
27141
27747
 
27142
27748
  // src/components/ui/menubar.tsx
27143
- var React50 = __toESM(require("react"), 1);
27749
+ var React51 = __toESM(require("react"), 1);
27144
27750
  var MenubarPrimitive = __toESM(require("@radix-ui/react-menubar"), 1);
27145
27751
  var import_lucide_react26 = require("lucide-react");
27146
- var import_jsx_runtime77 = require("react/jsx-runtime");
27752
+ var import_jsx_runtime78 = require("react/jsx-runtime");
27147
27753
  var MenubarMenu = MenubarPrimitive.Menu;
27148
27754
  var MenubarGroup = MenubarPrimitive.Group;
27149
27755
  var MenubarPortal = MenubarPrimitive.Portal;
27150
27756
  var MenubarSub = MenubarPrimitive.Sub;
27151
27757
  var MenubarRadioGroup = MenubarPrimitive.RadioGroup;
27152
- var Menubar = React50.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(
27758
+ var Menubar = React51.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(
27153
27759
  MenubarPrimitive.Root,
27154
27760
  {
27155
27761
  ref,
@@ -27158,7 +27764,7 @@ var Menubar = React50.forwardRef(({ className, ...props }, ref) => /* @__PURE__
27158
27764
  }
27159
27765
  ));
27160
27766
  Menubar.displayName = MenubarPrimitive.Root.displayName;
27161
- var MenubarTrigger = React50.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(
27767
+ var MenubarTrigger = React51.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(
27162
27768
  MenubarPrimitive.Trigger,
27163
27769
  {
27164
27770
  ref,
@@ -27170,7 +27776,7 @@ var MenubarTrigger = React50.forwardRef(({ className, ...props }, ref) => /* @__
27170
27776
  }
27171
27777
  ));
27172
27778
  MenubarTrigger.displayName = MenubarPrimitive.Trigger.displayName;
27173
- var MenubarSubTrigger = React50.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime77.jsxs)(
27779
+ var MenubarSubTrigger = React51.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime78.jsxs)(
27174
27780
  MenubarPrimitive.SubTrigger,
27175
27781
  {
27176
27782
  ref,
@@ -27182,12 +27788,12 @@ var MenubarSubTrigger = React50.forwardRef(({ className, inset, children, ...pro
27182
27788
  ...props,
27183
27789
  children: [
27184
27790
  children,
27185
- /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(import_lucide_react26.ChevronRight, { className: "ml-auto h-4 w-4" })
27791
+ /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(import_lucide_react26.ChevronRight, { className: "ml-auto h-4 w-4" })
27186
27792
  ]
27187
27793
  }
27188
27794
  ));
27189
27795
  MenubarSubTrigger.displayName = MenubarPrimitive.SubTrigger.displayName;
27190
- var MenubarSubContent = React50.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(
27796
+ var MenubarSubContent = React51.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(
27191
27797
  MenubarPrimitive.SubContent,
27192
27798
  {
27193
27799
  ref,
@@ -27199,7 +27805,7 @@ var MenubarSubContent = React50.forwardRef(({ className, ...props }, ref) => /*
27199
27805
  }
27200
27806
  ));
27201
27807
  MenubarSubContent.displayName = MenubarPrimitive.SubContent.displayName;
27202
- var MenubarContent = React50.forwardRef(({ className, align = "start", alignOffset = -4, sideOffset = 8, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(MenubarPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(
27808
+ var MenubarContent = React51.forwardRef(({ className, align = "start", alignOffset = -4, sideOffset = 8, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(MenubarPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(
27203
27809
  MenubarPrimitive.Content,
27204
27810
  {
27205
27811
  ref,
@@ -27214,7 +27820,7 @@ var MenubarContent = React50.forwardRef(({ className, align = "start", alignOffs
27214
27820
  }
27215
27821
  ) }));
27216
27822
  MenubarContent.displayName = MenubarPrimitive.Content.displayName;
27217
- var MenubarItem = React50.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(
27823
+ var MenubarItem = React51.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(
27218
27824
  MenubarPrimitive.Item,
27219
27825
  {
27220
27826
  ref,
@@ -27227,7 +27833,7 @@ var MenubarItem = React50.forwardRef(({ className, inset, ...props }, ref) => /*
27227
27833
  }
27228
27834
  ));
27229
27835
  MenubarItem.displayName = MenubarPrimitive.Item.displayName;
27230
- var MenubarCheckboxItem = React50.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime77.jsxs)(
27836
+ var MenubarCheckboxItem = React51.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime78.jsxs)(
27231
27837
  MenubarPrimitive.CheckboxItem,
27232
27838
  {
27233
27839
  ref,
@@ -27238,13 +27844,13 @@ var MenubarCheckboxItem = React50.forwardRef(({ className, children, checked, ..
27238
27844
  checked,
27239
27845
  ...props,
27240
27846
  children: [
27241
- /* @__PURE__ */ (0, import_jsx_runtime77.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(MenubarPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(import_lucide_react26.Check, { className: "h-4 w-4" }) }) }),
27847
+ /* @__PURE__ */ (0, import_jsx_runtime78.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(MenubarPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(import_lucide_react26.Check, { className: "h-4 w-4" }) }) }),
27242
27848
  children
27243
27849
  ]
27244
27850
  }
27245
27851
  ));
27246
27852
  MenubarCheckboxItem.displayName = MenubarPrimitive.CheckboxItem.displayName;
27247
- var MenubarRadioItem = React50.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime77.jsxs)(
27853
+ var MenubarRadioItem = React51.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime78.jsxs)(
27248
27854
  MenubarPrimitive.RadioItem,
27249
27855
  {
27250
27856
  ref,
@@ -27254,13 +27860,13 @@ var MenubarRadioItem = React50.forwardRef(({ className, children, ...props }, re
27254
27860
  ),
27255
27861
  ...props,
27256
27862
  children: [
27257
- /* @__PURE__ */ (0, import_jsx_runtime77.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(MenubarPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(import_lucide_react26.Circle, { className: "h-2 w-2 fill-current" }) }) }),
27863
+ /* @__PURE__ */ (0, import_jsx_runtime78.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(MenubarPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(import_lucide_react26.Circle, { className: "h-2 w-2 fill-current" }) }) }),
27258
27864
  children
27259
27865
  ]
27260
27866
  }
27261
27867
  ));
27262
27868
  MenubarRadioItem.displayName = MenubarPrimitive.RadioItem.displayName;
27263
- var MenubarLabel = React50.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(
27869
+ var MenubarLabel = React51.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(
27264
27870
  MenubarPrimitive.Label,
27265
27871
  {
27266
27872
  ref,
@@ -27269,20 +27875,20 @@ var MenubarLabel = React50.forwardRef(({ className, inset, ...props }, ref) => /
27269
27875
  }
27270
27876
  ));
27271
27877
  MenubarLabel.displayName = MenubarPrimitive.Label.displayName;
27272
- var MenubarSeparator = React50.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(MenubarPrimitive.Separator, { ref, className: cn("-mx-1 my-1 h-px bg-muted", className), ...props }));
27878
+ var MenubarSeparator = React51.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(MenubarPrimitive.Separator, { ref, className: cn("-mx-1 my-1 h-px bg-muted", className), ...props }));
27273
27879
  MenubarSeparator.displayName = MenubarPrimitive.Separator.displayName;
27274
27880
  var MenubarShortcut = ({ className, ...props }) => {
27275
- return /* @__PURE__ */ (0, import_jsx_runtime77.jsx)("span", { className: cn("ml-auto text-xs tracking-widest text-muted-foreground", className), ...props });
27881
+ return /* @__PURE__ */ (0, import_jsx_runtime78.jsx)("span", { className: cn("ml-auto text-xs tracking-widest text-muted-foreground", className), ...props });
27276
27882
  };
27277
27883
  MenubarShortcut.displayname = "MenubarShortcut";
27278
27884
 
27279
27885
  // src/components/ui/navigation-menu.tsx
27280
- var React51 = __toESM(require("react"), 1);
27886
+ var React52 = __toESM(require("react"), 1);
27281
27887
  var NavigationMenuPrimitive = __toESM(require("@radix-ui/react-navigation-menu"), 1);
27282
27888
  var import_class_variance_authority5 = require("class-variance-authority");
27283
27889
  var import_lucide_react27 = require("lucide-react");
27284
- var import_jsx_runtime78 = require("react/jsx-runtime");
27285
- var NavigationMenu = React51.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime78.jsxs)(
27890
+ var import_jsx_runtime79 = require("react/jsx-runtime");
27891
+ var NavigationMenu = React52.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)(
27286
27892
  NavigationMenuPrimitive.Root,
27287
27893
  {
27288
27894
  ref,
@@ -27290,12 +27896,12 @@ var NavigationMenu = React51.forwardRef(({ className, children, ...props }, ref)
27290
27896
  ...props,
27291
27897
  children: [
27292
27898
  children,
27293
- /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(NavigationMenuViewport, {})
27899
+ /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(NavigationMenuViewport, {})
27294
27900
  ]
27295
27901
  }
27296
27902
  ));
27297
27903
  NavigationMenu.displayName = NavigationMenuPrimitive.Root.displayName;
27298
- var NavigationMenuList = React51.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(
27904
+ var NavigationMenuList = React52.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
27299
27905
  NavigationMenuPrimitive.List,
27300
27906
  {
27301
27907
  ref,
@@ -27308,7 +27914,7 @@ var NavigationMenuItem = NavigationMenuPrimitive.Item;
27308
27914
  var navigationMenuTriggerStyle = (0, import_class_variance_authority5.cva)(
27309
27915
  "group inline-flex h-10 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-[active]:bg-accent/50 data-[state=open]:bg-accent/50"
27310
27916
  );
27311
- var NavigationMenuTrigger = React51.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime78.jsxs)(
27917
+ var NavigationMenuTrigger = React52.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)(
27312
27918
  NavigationMenuPrimitive.Trigger,
27313
27919
  {
27314
27920
  ref,
@@ -27317,7 +27923,7 @@ var NavigationMenuTrigger = React51.forwardRef(({ className, children, ...props
27317
27923
  children: [
27318
27924
  children,
27319
27925
  " ",
27320
- /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(
27926
+ /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
27321
27927
  import_lucide_react27.ChevronDown,
27322
27928
  {
27323
27929
  className: "relative top-[1px] ml-1 h-3 w-3 transition duration-200 group-data-[state=open]:rotate-180",
@@ -27328,7 +27934,7 @@ var NavigationMenuTrigger = React51.forwardRef(({ className, children, ...props
27328
27934
  }
27329
27935
  ));
27330
27936
  NavigationMenuTrigger.displayName = NavigationMenuPrimitive.Trigger.displayName;
27331
- var NavigationMenuContent = React51.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(
27937
+ var NavigationMenuContent = React52.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
27332
27938
  NavigationMenuPrimitive.Content,
27333
27939
  {
27334
27940
  ref,
@@ -27341,7 +27947,7 @@ var NavigationMenuContent = React51.forwardRef(({ className, ...props }, ref) =>
27341
27947
  ));
27342
27948
  NavigationMenuContent.displayName = NavigationMenuPrimitive.Content.displayName;
27343
27949
  var NavigationMenuLink = NavigationMenuPrimitive.Link;
27344
- var NavigationMenuViewport = React51.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime78.jsx)("div", { className: cn("absolute left-0 top-full flex justify-center"), children: /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(
27950
+ var NavigationMenuViewport = React52.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime79.jsx)("div", { className: cn("absolute left-0 top-full flex justify-center"), children: /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
27345
27951
  NavigationMenuPrimitive.Viewport,
27346
27952
  {
27347
27953
  className: cn(
@@ -27353,7 +27959,7 @@ var NavigationMenuViewport = React51.forwardRef(({ className, ...props }, ref) =
27353
27959
  }
27354
27960
  ) }));
27355
27961
  NavigationMenuViewport.displayName = NavigationMenuPrimitive.Viewport.displayName;
27356
- var NavigationMenuIndicator = React51.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(
27962
+ var NavigationMenuIndicator = React52.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
27357
27963
  NavigationMenuPrimitive.Indicator,
27358
27964
  {
27359
27965
  ref,
@@ -27362,16 +27968,16 @@ var NavigationMenuIndicator = React51.forwardRef(({ className, ...props }, ref)
27362
27968
  className
27363
27969
  ),
27364
27970
  ...props,
27365
- children: /* @__PURE__ */ (0, import_jsx_runtime78.jsx)("div", { className: "relative top-[60%] h-2 w-2 rotate-45 rounded-tl-sm bg-border shadow-md" })
27971
+ children: /* @__PURE__ */ (0, import_jsx_runtime79.jsx)("div", { className: "relative top-[60%] h-2 w-2 rotate-45 rounded-tl-sm bg-border shadow-md" })
27366
27972
  }
27367
27973
  ));
27368
27974
  NavigationMenuIndicator.displayName = NavigationMenuPrimitive.Indicator.displayName;
27369
27975
 
27370
27976
  // src/components/ui/pagination.tsx
27371
- var React52 = __toESM(require("react"), 1);
27977
+ var React53 = __toESM(require("react"), 1);
27372
27978
  var import_lucide_react28 = require("lucide-react");
27373
- var import_jsx_runtime79 = require("react/jsx-runtime");
27374
- var Pagination = ({ className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
27979
+ var import_jsx_runtime80 = require("react/jsx-runtime");
27980
+ var Pagination = ({ className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(
27375
27981
  "nav",
27376
27982
  {
27377
27983
  role: "navigation",
@@ -27381,13 +27987,13 @@ var Pagination = ({ className, ...props }) => /* @__PURE__ */ (0, import_jsx_run
27381
27987
  }
27382
27988
  );
27383
27989
  Pagination.displayName = "Pagination";
27384
- var PaginationContent = React52.forwardRef(
27385
- ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime79.jsx)("ul", { ref, className: cn("flex flex-row items-center gap-1", className), ...props })
27990
+ var PaginationContent = React53.forwardRef(
27991
+ ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime80.jsx)("ul", { ref, className: cn("flex flex-row items-center gap-1", className), ...props })
27386
27992
  );
27387
27993
  PaginationContent.displayName = "PaginationContent";
27388
- var PaginationItem = React52.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime79.jsx)("li", { ref, className: cn("", className), ...props }));
27994
+ var PaginationItem = React53.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime80.jsx)("li", { ref, className: cn("", className), ...props }));
27389
27995
  PaginationItem.displayName = "PaginationItem";
27390
- var PaginationLink = ({ className, isActive, size = "icon", ...props }) => /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
27996
+ var PaginationLink = ({ className, isActive, size = "icon", ...props }) => /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(
27391
27997
  "a",
27392
27998
  {
27393
27999
  "aria-current": isActive ? "page" : void 0,
@@ -27402,29 +28008,29 @@ var PaginationLink = ({ className, isActive, size = "icon", ...props }) => /* @_
27402
28008
  }
27403
28009
  );
27404
28010
  PaginationLink.displayName = "PaginationLink";
27405
- var PaginationPrevious = ({ className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)(PaginationLink, { "aria-label": "Go to previous page", size: "default", className: cn("gap-1 pl-2.5", className), ...props, children: [
27406
- /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_lucide_react28.ChevronLeft, { className: "h-4 w-4" }),
27407
- /* @__PURE__ */ (0, import_jsx_runtime79.jsx)("span", { children: "Previous" })
28011
+ var PaginationPrevious = ({ className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime80.jsxs)(PaginationLink, { "aria-label": "Go to previous page", size: "default", className: cn("gap-1 pl-2.5", className), ...props, children: [
28012
+ /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(import_lucide_react28.ChevronLeft, { className: "h-4 w-4" }),
28013
+ /* @__PURE__ */ (0, import_jsx_runtime80.jsx)("span", { children: "Previous" })
27408
28014
  ] });
27409
28015
  PaginationPrevious.displayName = "PaginationPrevious";
27410
- var PaginationNext = ({ className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)(PaginationLink, { "aria-label": "Go to next page", size: "default", className: cn("gap-1 pr-2.5", className), ...props, children: [
27411
- /* @__PURE__ */ (0, import_jsx_runtime79.jsx)("span", { children: "Next" }),
27412
- /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_lucide_react28.ChevronRight, { className: "h-4 w-4" })
28016
+ var PaginationNext = ({ className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime80.jsxs)(PaginationLink, { "aria-label": "Go to next page", size: "default", className: cn("gap-1 pr-2.5", className), ...props, children: [
28017
+ /* @__PURE__ */ (0, import_jsx_runtime80.jsx)("span", { children: "Next" }),
28018
+ /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(import_lucide_react28.ChevronRight, { className: "h-4 w-4" })
27413
28019
  ] });
27414
28020
  PaginationNext.displayName = "PaginationNext";
27415
- var PaginationEllipsis = ({ className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime79.jsxs)("span", { "aria-hidden": true, className: cn("flex h-9 w-9 items-center justify-center", className), ...props, children: [
27416
- /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(import_lucide_react28.MoreHorizontal, { className: "h-4 w-4" }),
27417
- /* @__PURE__ */ (0, import_jsx_runtime79.jsx)("span", { className: "sr-only", children: "More pages" })
28021
+ var PaginationEllipsis = ({ className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime80.jsxs)("span", { "aria-hidden": true, className: cn("flex h-9 w-9 items-center justify-center", className), ...props, children: [
28022
+ /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(import_lucide_react28.MoreHorizontal, { className: "h-4 w-4" }),
28023
+ /* @__PURE__ */ (0, import_jsx_runtime80.jsx)("span", { className: "sr-only", children: "More pages" })
27418
28024
  ] });
27419
28025
  PaginationEllipsis.displayName = "PaginationEllipsis";
27420
28026
 
27421
28027
  // src/components/ui/popover.tsx
27422
- var React53 = __toESM(require("react"), 1);
28028
+ var React54 = __toESM(require("react"), 1);
27423
28029
  var PopoverPrimitive = __toESM(require("@radix-ui/react-popover"), 1);
27424
- var import_jsx_runtime80 = require("react/jsx-runtime");
28030
+ var import_jsx_runtime81 = require("react/jsx-runtime");
27425
28031
  var Popover = PopoverPrimitive.Root;
27426
28032
  var PopoverTrigger = PopoverPrimitive.Trigger;
27427
- var PopoverContent = React53.forwardRef(({ className, align = "center", sideOffset = 4, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(PopoverPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(
28033
+ var PopoverContent = React54.forwardRef(({ className, align = "center", sideOffset = 4, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(PopoverPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(
27428
28034
  PopoverPrimitive.Content,
27429
28035
  {
27430
28036
  ref,
@@ -27440,16 +28046,16 @@ var PopoverContent = React53.forwardRef(({ className, align = "center", sideOffs
27440
28046
  PopoverContent.displayName = PopoverPrimitive.Content.displayName;
27441
28047
 
27442
28048
  // src/components/ui/radio-group.tsx
27443
- var React54 = __toESM(require("react"), 1);
28049
+ var React55 = __toESM(require("react"), 1);
27444
28050
  var RadioGroupPrimitive = __toESM(require("@radix-ui/react-radio-group"), 1);
27445
28051
  var import_lucide_react29 = require("lucide-react");
27446
- var import_jsx_runtime81 = require("react/jsx-runtime");
27447
- var RadioGroup4 = React54.forwardRef(({ className, ...props }, ref) => {
27448
- return /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(RadioGroupPrimitive.Root, { className: cn("grid gap-2", className), ...props, ref });
28052
+ var import_jsx_runtime82 = require("react/jsx-runtime");
28053
+ var RadioGroup4 = React55.forwardRef(({ className, ...props }, ref) => {
28054
+ return /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(RadioGroupPrimitive.Root, { className: cn("grid gap-2", className), ...props, ref });
27449
28055
  });
27450
28056
  RadioGroup4.displayName = RadioGroupPrimitive.Root.displayName;
27451
- var RadioGroupItem = React54.forwardRef(({ className, ...props }, ref) => {
27452
- return /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(
28057
+ var RadioGroupItem = React55.forwardRef(({ className, ...props }, ref) => {
28058
+ return /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(
27453
28059
  RadioGroupPrimitive.Item,
27454
28060
  {
27455
28061
  ref,
@@ -27458,7 +28064,7 @@ var RadioGroupItem = React54.forwardRef(({ className, ...props }, ref) => {
27458
28064
  className
27459
28065
  ),
27460
28066
  ...props,
27461
- children: /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(RadioGroupPrimitive.Indicator, { className: "flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(import_lucide_react29.Circle, { className: "h-2.5 w-2.5 fill-current text-current" }) })
28067
+ children: /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(RadioGroupPrimitive.Indicator, { className: "flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(import_lucide_react29.Circle, { className: "h-2.5 w-2.5 fill-current text-current" }) })
27462
28068
  }
27463
28069
  );
27464
28070
  });
@@ -27467,8 +28073,8 @@ RadioGroupItem.displayName = RadioGroupPrimitive.Item.displayName;
27467
28073
  // src/components/ui/resizable.tsx
27468
28074
  var import_lucide_react30 = require("lucide-react");
27469
28075
  var ResizablePrimitive = __toESM(require("react-resizable-panels"), 1);
27470
- var import_jsx_runtime82 = require("react/jsx-runtime");
27471
- var ResizablePanelGroup = ({ className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(
28076
+ var import_jsx_runtime83 = require("react/jsx-runtime");
28077
+ var ResizablePanelGroup = ({ className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime83.jsx)(
27472
28078
  ResizablePrimitive.PanelGroup,
27473
28079
  {
27474
28080
  className: cn("flex h-full w-full data-[panel-group-direction=vertical]:flex-col", className),
@@ -27480,7 +28086,7 @@ var ResizableHandle = ({
27480
28086
  withHandle,
27481
28087
  className,
27482
28088
  ...props
27483
- }) => /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(
28089
+ }) => /* @__PURE__ */ (0, import_jsx_runtime83.jsx)(
27484
28090
  ResizablePrimitive.PanelResizeHandle,
27485
28091
  {
27486
28092
  className: cn(
@@ -27488,15 +28094,15 @@ var ResizableHandle = ({
27488
28094
  className
27489
28095
  ),
27490
28096
  ...props,
27491
- children: withHandle && /* @__PURE__ */ (0, import_jsx_runtime82.jsx)("div", { className: "z-10 flex h-4 w-3 items-center justify-center rounded-sm border bg-border", children: /* @__PURE__ */ (0, import_jsx_runtime82.jsx)(import_lucide_react30.GripVertical, { className: "h-2.5 w-2.5" }) })
28097
+ children: withHandle && /* @__PURE__ */ (0, import_jsx_runtime83.jsx)("div", { className: "z-10 flex h-4 w-3 items-center justify-center rounded-sm border bg-border", children: /* @__PURE__ */ (0, import_jsx_runtime83.jsx)(import_lucide_react30.GripVertical, { className: "h-2.5 w-2.5" }) })
27492
28098
  }
27493
28099
  );
27494
28100
 
27495
28101
  // src/components/ui/separator.tsx
27496
- var React55 = __toESM(require("react"), 1);
28102
+ var React56 = __toESM(require("react"), 1);
27497
28103
  var SeparatorPrimitive = __toESM(require("@radix-ui/react-separator"), 1);
27498
- var import_jsx_runtime83 = require("react/jsx-runtime");
27499
- var Separator5 = React55.forwardRef(({ className, orientation = "horizontal", decorative = true, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime83.jsx)(
28104
+ var import_jsx_runtime84 = require("react/jsx-runtime");
28105
+ var Separator5 = React56.forwardRef(({ className, orientation = "horizontal", decorative = true, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(
27500
28106
  SeparatorPrimitive.Root,
27501
28107
  {
27502
28108
  ref,
@@ -27512,13 +28118,13 @@ Separator5.displayName = SeparatorPrimitive.Root.displayName;
27512
28118
  var SheetPrimitive = __toESM(require("@radix-ui/react-dialog"), 1);
27513
28119
  var import_class_variance_authority6 = require("class-variance-authority");
27514
28120
  var import_lucide_react31 = require("lucide-react");
27515
- var React56 = __toESM(require("react"), 1);
27516
- var import_jsx_runtime84 = require("react/jsx-runtime");
28121
+ var React57 = __toESM(require("react"), 1);
28122
+ var import_jsx_runtime85 = require("react/jsx-runtime");
27517
28123
  var Sheet = SheetPrimitive.Root;
27518
28124
  var SheetTrigger = SheetPrimitive.Trigger;
27519
28125
  var SheetClose = SheetPrimitive.Close;
27520
28126
  var SheetPortal = SheetPrimitive.Portal;
27521
- var SheetOverlay = React56.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(
28127
+ var SheetOverlay = React57.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
27522
28128
  SheetPrimitive.Overlay,
27523
28129
  {
27524
28130
  className: cn(
@@ -27546,7 +28152,7 @@ var sheetVariants = (0, import_class_variance_authority6.cva)(
27546
28152
  }
27547
28153
  }
27548
28154
  );
27549
- var SheetContent = React56.forwardRef(
28155
+ var SheetContent = React57.forwardRef(
27550
28156
  ({
27551
28157
  side = "right",
27552
28158
  className,
@@ -27555,11 +28161,11 @@ var SheetContent = React56.forwardRef(
27555
28161
  closeButtonClassName,
27556
28162
  closeButtonLabel = "Close",
27557
28163
  ...props
27558
- }, ref) => /* @__PURE__ */ (0, import_jsx_runtime84.jsxs)(SheetPortal, { children: [
27559
- /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(SheetOverlay, {}),
27560
- /* @__PURE__ */ (0, import_jsx_runtime84.jsxs)(SheetPrimitive.Content, { ref, className: cn(sheetVariants({ side }), className), ...props, children: [
28164
+ }, ref) => /* @__PURE__ */ (0, import_jsx_runtime85.jsxs)(SheetPortal, { children: [
28165
+ /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(SheetOverlay, {}),
28166
+ /* @__PURE__ */ (0, import_jsx_runtime85.jsxs)(SheetPrimitive.Content, { ref, className: cn(sheetVariants({ side }), className), ...props, children: [
27561
28167
  children,
27562
- showCloseButton ? /* @__PURE__ */ (0, import_jsx_runtime84.jsxs)(
28168
+ showCloseButton ? /* @__PURE__ */ (0, import_jsx_runtime85.jsxs)(
27563
28169
  SheetPrimitive.Close,
27564
28170
  {
27565
28171
  className: cn(
@@ -27567,8 +28173,8 @@ var SheetContent = React56.forwardRef(
27567
28173
  closeButtonClassName
27568
28174
  ),
27569
28175
  children: [
27570
- /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(import_lucide_react31.X, { className: "h-4 w-4" }),
27571
- /* @__PURE__ */ (0, import_jsx_runtime84.jsx)("span", { className: "sr-only", children: closeButtonLabel })
28176
+ /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(import_lucide_react31.X, { className: "h-4 w-4" }),
28177
+ /* @__PURE__ */ (0, import_jsx_runtime85.jsx)("span", { className: "sr-only", children: closeButtonLabel })
27572
28178
  ]
27573
28179
  }
27574
28180
  ) : null
@@ -27576,27 +28182,27 @@ var SheetContent = React56.forwardRef(
27576
28182
  ] })
27577
28183
  );
27578
28184
  SheetContent.displayName = SheetPrimitive.Content.displayName;
27579
- var SheetHeader = ({ className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime84.jsx)("div", { className: cn("flex flex-col space-y-2 text-center sm:text-left", className), ...props });
28185
+ var SheetHeader = ({ className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime85.jsx)("div", { className: cn("flex flex-col space-y-2 text-center sm:text-left", className), ...props });
27580
28186
  SheetHeader.displayName = "SheetHeader";
27581
- var SheetFooter = ({ className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime84.jsx)("div", { className: cn("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2", className), ...props });
28187
+ var SheetFooter = ({ className, ...props }) => /* @__PURE__ */ (0, import_jsx_runtime85.jsx)("div", { className: cn("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2", className), ...props });
27582
28188
  SheetFooter.displayName = "SheetFooter";
27583
- var SheetTitle = React56.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(SheetPrimitive.Title, { ref, className: cn("text-lg font-semibold text-foreground", className), ...props }));
28189
+ var SheetTitle = React57.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(SheetPrimitive.Title, { ref, className: cn("text-lg font-semibold text-foreground", className), ...props }));
27584
28190
  SheetTitle.displayName = SheetPrimitive.Title.displayName;
27585
- var SheetDescription = React56.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(SheetPrimitive.Description, { ref, className: cn("text-sm text-muted-foreground", className), ...props }));
28191
+ var SheetDescription = React57.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(SheetPrimitive.Description, { ref, className: cn("text-sm text-muted-foreground", className), ...props }));
27586
28192
  SheetDescription.displayName = SheetPrimitive.Description.displayName;
27587
28193
 
27588
28194
  // src/components/ui/sidebar.tsx
27589
- var React58 = __toESM(require("react"), 1);
28195
+ var React59 = __toESM(require("react"), 1);
27590
28196
  var import_react_slot4 = require("@radix-ui/react-slot");
27591
28197
  var import_class_variance_authority7 = require("class-variance-authority");
27592
28198
  var import_lucide_react32 = require("lucide-react");
27593
28199
 
27594
28200
  // src/hooks/use-mobile.tsx
27595
- var React57 = __toESM(require("react"), 1);
28201
+ var React58 = __toESM(require("react"), 1);
27596
28202
  var MOBILE_BREAKPOINT = 768;
27597
28203
  function useIsMobile() {
27598
- const [isMobile, setIsMobile] = React57.useState(void 0);
27599
- React57.useEffect(() => {
28204
+ const [isMobile, setIsMobile] = React58.useState(void 0);
28205
+ React58.useEffect(() => {
27600
28206
  const mql = window.matchMedia(`(max-width: ${MOBILE_BREAKPOINT - 1}px)`);
27601
28207
  const onChange = () => {
27602
28208
  setIsMobile(window.innerWidth < MOBILE_BREAKPOINT);
@@ -27609,27 +28215,27 @@ function useIsMobile() {
27609
28215
  }
27610
28216
 
27611
28217
  // src/components/ui/sidebar.tsx
27612
- var import_jsx_runtime85 = require("react/jsx-runtime");
28218
+ var import_jsx_runtime86 = require("react/jsx-runtime");
27613
28219
  var SIDEBAR_COOKIE_NAME = "sidebar:state";
27614
28220
  var SIDEBAR_COOKIE_MAX_AGE = 60 * 60 * 24 * 7;
27615
28221
  var SIDEBAR_WIDTH = "16rem";
27616
28222
  var SIDEBAR_WIDTH_MOBILE = "18rem";
27617
28223
  var SIDEBAR_WIDTH_ICON = "3rem";
27618
28224
  var SIDEBAR_KEYBOARD_SHORTCUT = "b";
27619
- var SidebarContext = React58.createContext(null);
28225
+ var SidebarContext = React59.createContext(null);
27620
28226
  function useSidebar() {
27621
- const context = React58.useContext(SidebarContext);
28227
+ const context = React59.useContext(SidebarContext);
27622
28228
  if (!context) {
27623
28229
  throw new Error("useSidebar must be used within a SidebarProvider.");
27624
28230
  }
27625
28231
  return context;
27626
28232
  }
27627
- var SidebarProvider = React58.forwardRef(({ defaultOpen = true, open: openProp, onOpenChange: setOpenProp, className, style, children, ...props }, ref) => {
28233
+ var SidebarProvider = React59.forwardRef(({ defaultOpen = true, open: openProp, onOpenChange: setOpenProp, className, style, children, ...props }, ref) => {
27628
28234
  const isMobile = useIsMobile();
27629
- const [openMobile, setOpenMobile] = React58.useState(false);
27630
- const [_open, _setOpen] = React58.useState(defaultOpen);
28235
+ const [openMobile, setOpenMobile] = React59.useState(false);
28236
+ const [_open, _setOpen] = React59.useState(defaultOpen);
27631
28237
  const open = openProp != null ? openProp : _open;
27632
- const setOpen = React58.useCallback(
28238
+ const setOpen = React59.useCallback(
27633
28239
  (value) => {
27634
28240
  const openState = typeof value === "function" ? value(open) : value;
27635
28241
  if (setOpenProp) {
@@ -27641,10 +28247,10 @@ var SidebarProvider = React58.forwardRef(({ defaultOpen = true, open: openProp,
27641
28247
  },
27642
28248
  [setOpenProp, open]
27643
28249
  );
27644
- const toggleSidebar = React58.useCallback(() => {
28250
+ const toggleSidebar = React59.useCallback(() => {
27645
28251
  return isMobile ? setOpenMobile((open2) => !open2) : setOpen((open2) => !open2);
27646
28252
  }, [isMobile, setOpen, setOpenMobile]);
27647
- React58.useEffect(() => {
28253
+ React59.useEffect(() => {
27648
28254
  const handleKeyDown = (event) => {
27649
28255
  if (event.key === SIDEBAR_KEYBOARD_SHORTCUT && (event.metaKey || event.ctrlKey)) {
27650
28256
  event.preventDefault();
@@ -27655,7 +28261,7 @@ var SidebarProvider = React58.forwardRef(({ defaultOpen = true, open: openProp,
27655
28261
  return () => window.removeEventListener("keydown", handleKeyDown);
27656
28262
  }, [toggleSidebar]);
27657
28263
  const state = open ? "expanded" : "collapsed";
27658
- const contextValue = React58.useMemo(
28264
+ const contextValue = React59.useMemo(
27659
28265
  () => ({
27660
28266
  state,
27661
28267
  open,
@@ -27667,7 +28273,7 @@ var SidebarProvider = React58.forwardRef(({ defaultOpen = true, open: openProp,
27667
28273
  }),
27668
28274
  [state, open, setOpen, isMobile, openMobile, setOpenMobile, toggleSidebar]
27669
28275
  );
27670
- return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(SidebarContext.Provider, { value: contextValue, children: /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(TooltipProvider, { delayDuration: 0, children: /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
28276
+ return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(SidebarContext.Provider, { value: contextValue, children: /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(TooltipProvider, { delayDuration: 0, children: /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
27671
28277
  "div",
27672
28278
  {
27673
28279
  style: {
@@ -27683,10 +28289,10 @@ var SidebarProvider = React58.forwardRef(({ defaultOpen = true, open: openProp,
27683
28289
  ) }) });
27684
28290
  });
27685
28291
  SidebarProvider.displayName = "SidebarProvider";
27686
- var Sidebar = React58.forwardRef(({ side = "left", variant = "sidebar", collapsible = "offcanvas", className, children, ...props }, ref) => {
28292
+ var Sidebar = React59.forwardRef(({ side = "left", variant = "sidebar", collapsible = "offcanvas", className, children, ...props }, ref) => {
27687
28293
  const { isMobile, state, openMobile, setOpenMobile } = useSidebar();
27688
28294
  if (collapsible === "none") {
27689
- return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
28295
+ return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
27690
28296
  "div",
27691
28297
  {
27692
28298
  className: cn("flex h-full w-[--sidebar-width] flex-col bg-sidebar text-sidebar-foreground", className),
@@ -27697,7 +28303,7 @@ var Sidebar = React58.forwardRef(({ side = "left", variant = "sidebar", collapsi
27697
28303
  );
27698
28304
  }
27699
28305
  if (isMobile) {
27700
- return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(Sheet, { open: openMobile, onOpenChange: setOpenMobile, ...props, children: /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
28306
+ return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(Sheet, { open: openMobile, onOpenChange: setOpenMobile, ...props, children: /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
27701
28307
  SheetContent,
27702
28308
  {
27703
28309
  "data-sidebar": "sidebar",
@@ -27707,11 +28313,11 @@ var Sidebar = React58.forwardRef(({ side = "left", variant = "sidebar", collapsi
27707
28313
  "--sidebar-width": SIDEBAR_WIDTH_MOBILE
27708
28314
  },
27709
28315
  side,
27710
- children: /* @__PURE__ */ (0, import_jsx_runtime85.jsx)("div", { className: "flex h-full w-full flex-col", children })
28316
+ children: /* @__PURE__ */ (0, import_jsx_runtime86.jsx)("div", { className: "flex h-full w-full flex-col", children })
27711
28317
  }
27712
28318
  ) });
27713
28319
  }
27714
- return /* @__PURE__ */ (0, import_jsx_runtime85.jsxs)(
28320
+ return /* @__PURE__ */ (0, import_jsx_runtime86.jsxs)(
27715
28321
  "div",
27716
28322
  {
27717
28323
  ref,
@@ -27721,7 +28327,7 @@ var Sidebar = React58.forwardRef(({ side = "left", variant = "sidebar", collapsi
27721
28327
  "data-variant": variant,
27722
28328
  "data-side": side,
27723
28329
  children: [
27724
- /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
28330
+ /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
27725
28331
  "div",
27726
28332
  {
27727
28333
  className: cn(
@@ -27732,7 +28338,7 @@ var Sidebar = React58.forwardRef(({ side = "left", variant = "sidebar", collapsi
27732
28338
  )
27733
28339
  }
27734
28340
  ),
27735
- /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
28341
+ /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
27736
28342
  "div",
27737
28343
  {
27738
28344
  className: cn(
@@ -27743,7 +28349,7 @@ var Sidebar = React58.forwardRef(({ side = "left", variant = "sidebar", collapsi
27743
28349
  className
27744
28350
  ),
27745
28351
  ...props,
27746
- children: /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
28352
+ children: /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
27747
28353
  "div",
27748
28354
  {
27749
28355
  "data-sidebar": "sidebar",
@@ -27758,10 +28364,10 @@ var Sidebar = React58.forwardRef(({ side = "left", variant = "sidebar", collapsi
27758
28364
  );
27759
28365
  });
27760
28366
  Sidebar.displayName = "Sidebar";
27761
- var SidebarTrigger = React58.forwardRef(
28367
+ var SidebarTrigger = React59.forwardRef(
27762
28368
  ({ className, onClick, ...props }, ref) => {
27763
28369
  const { toggleSidebar } = useSidebar();
27764
- return /* @__PURE__ */ (0, import_jsx_runtime85.jsxs)(
28370
+ return /* @__PURE__ */ (0, import_jsx_runtime86.jsxs)(
27765
28371
  Button,
27766
28372
  {
27767
28373
  ref,
@@ -27775,18 +28381,18 @@ var SidebarTrigger = React58.forwardRef(
27775
28381
  },
27776
28382
  ...props,
27777
28383
  children: [
27778
- /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(import_lucide_react32.PanelLeft, {}),
27779
- /* @__PURE__ */ (0, import_jsx_runtime85.jsx)("span", { className: "sr-only", children: "Toggle Sidebar" })
28384
+ /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(import_lucide_react32.PanelLeft, {}),
28385
+ /* @__PURE__ */ (0, import_jsx_runtime86.jsx)("span", { className: "sr-only", children: "Toggle Sidebar" })
27780
28386
  ]
27781
28387
  }
27782
28388
  );
27783
28389
  }
27784
28390
  );
27785
28391
  SidebarTrigger.displayName = "SidebarTrigger";
27786
- var SidebarRail = React58.forwardRef(
28392
+ var SidebarRail = React59.forwardRef(
27787
28393
  ({ className, ...props }, ref) => {
27788
28394
  const { toggleSidebar } = useSidebar();
27789
- return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
28395
+ return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
27790
28396
  "button",
27791
28397
  {
27792
28398
  ref,
@@ -27810,8 +28416,8 @@ var SidebarRail = React58.forwardRef(
27810
28416
  }
27811
28417
  );
27812
28418
  SidebarRail.displayName = "SidebarRail";
27813
- var SidebarInset = React58.forwardRef(({ className, ...props }, ref) => {
27814
- return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
28419
+ var SidebarInset = React59.forwardRef(({ className, ...props }, ref) => {
28420
+ return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
27815
28421
  "main",
27816
28422
  {
27817
28423
  ref,
@@ -27825,9 +28431,9 @@ var SidebarInset = React58.forwardRef(({ className, ...props }, ref) => {
27825
28431
  );
27826
28432
  });
27827
28433
  SidebarInset.displayName = "SidebarInset";
27828
- var SidebarInput = React58.forwardRef(
28434
+ var SidebarInput = React59.forwardRef(
27829
28435
  ({ className, ...props }, ref) => {
27830
- return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
28436
+ return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
27831
28437
  Input,
27832
28438
  {
27833
28439
  ref,
@@ -27842,17 +28448,17 @@ var SidebarInput = React58.forwardRef(
27842
28448
  }
27843
28449
  );
27844
28450
  SidebarInput.displayName = "SidebarInput";
27845
- var SidebarHeader = React58.forwardRef(({ className, ...props }, ref) => {
27846
- return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)("div", { ref, "data-sidebar": "header", className: cn("flex flex-col gap-2 p-2", className), ...props });
28451
+ var SidebarHeader = React59.forwardRef(({ className, ...props }, ref) => {
28452
+ return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)("div", { ref, "data-sidebar": "header", className: cn("flex flex-col gap-2 p-2", className), ...props });
27847
28453
  });
27848
28454
  SidebarHeader.displayName = "SidebarHeader";
27849
- var SidebarFooter = React58.forwardRef(({ className, ...props }, ref) => {
27850
- return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)("div", { ref, "data-sidebar": "footer", className: cn("flex flex-col gap-2 p-2", className), ...props });
28455
+ var SidebarFooter = React59.forwardRef(({ className, ...props }, ref) => {
28456
+ return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)("div", { ref, "data-sidebar": "footer", className: cn("flex flex-col gap-2 p-2", className), ...props });
27851
28457
  });
27852
28458
  SidebarFooter.displayName = "SidebarFooter";
27853
- var SidebarSeparator = React58.forwardRef(
28459
+ var SidebarSeparator = React59.forwardRef(
27854
28460
  ({ className, ...props }, ref) => {
27855
- return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
28461
+ return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
27856
28462
  Separator5,
27857
28463
  {
27858
28464
  ref,
@@ -27864,8 +28470,8 @@ var SidebarSeparator = React58.forwardRef(
27864
28470
  }
27865
28471
  );
27866
28472
  SidebarSeparator.displayName = "SidebarSeparator";
27867
- var SidebarContent = React58.forwardRef(({ className, ...props }, ref) => {
27868
- return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
28473
+ var SidebarContent = React59.forwardRef(({ className, ...props }, ref) => {
28474
+ return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
27869
28475
  "div",
27870
28476
  {
27871
28477
  ref,
@@ -27879,8 +28485,8 @@ var SidebarContent = React58.forwardRef(({ className, ...props }, ref) => {
27879
28485
  );
27880
28486
  });
27881
28487
  SidebarContent.displayName = "SidebarContent";
27882
- var SidebarGroup = React58.forwardRef(({ className, ...props }, ref) => {
27883
- return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
28488
+ var SidebarGroup = React59.forwardRef(({ className, ...props }, ref) => {
28489
+ return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
27884
28490
  "div",
27885
28491
  {
27886
28492
  ref,
@@ -27891,10 +28497,10 @@ var SidebarGroup = React58.forwardRef(({ className, ...props }, ref) => {
27891
28497
  );
27892
28498
  });
27893
28499
  SidebarGroup.displayName = "SidebarGroup";
27894
- var SidebarGroupLabel = React58.forwardRef(
28500
+ var SidebarGroupLabel = React59.forwardRef(
27895
28501
  ({ className, asChild = false, ...props }, ref) => {
27896
28502
  const Comp = asChild ? import_react_slot4.Slot : "div";
27897
- return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
28503
+ return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
27898
28504
  Comp,
27899
28505
  {
27900
28506
  ref,
@@ -27910,10 +28516,10 @@ var SidebarGroupLabel = React58.forwardRef(
27910
28516
  }
27911
28517
  );
27912
28518
  SidebarGroupLabel.displayName = "SidebarGroupLabel";
27913
- var SidebarGroupAction = React58.forwardRef(
28519
+ var SidebarGroupAction = React59.forwardRef(
27914
28520
  ({ className, asChild = false, ...props }, ref) => {
27915
28521
  const Comp = asChild ? import_react_slot4.Slot : "button";
27916
- return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
28522
+ return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
27917
28523
  Comp,
27918
28524
  {
27919
28525
  ref,
@@ -27931,13 +28537,13 @@ var SidebarGroupAction = React58.forwardRef(
27931
28537
  }
27932
28538
  );
27933
28539
  SidebarGroupAction.displayName = "SidebarGroupAction";
27934
- var SidebarGroupContent = React58.forwardRef(
27935
- ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime85.jsx)("div", { ref, "data-sidebar": "group-content", className: cn("w-full text-sm", className), ...props })
28540
+ var SidebarGroupContent = React59.forwardRef(
28541
+ ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime86.jsx)("div", { ref, "data-sidebar": "group-content", className: cn("w-full text-sm", className), ...props })
27936
28542
  );
27937
28543
  SidebarGroupContent.displayName = "SidebarGroupContent";
27938
- var SidebarMenu = React58.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime85.jsx)("ul", { ref, "data-sidebar": "menu", className: cn("flex w-full min-w-0 flex-col gap-1", className), ...props }));
28544
+ var SidebarMenu = React59.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime86.jsx)("ul", { ref, "data-sidebar": "menu", className: cn("flex w-full min-w-0 flex-col gap-1", className), ...props }));
27939
28545
  SidebarMenu.displayName = "SidebarMenu";
27940
- var SidebarMenuItem = React58.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime85.jsx)("li", { ref, "data-sidebar": "menu-item", className: cn("group/menu-item relative", className), ...props }));
28546
+ var SidebarMenuItem = React59.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime86.jsx)("li", { ref, "data-sidebar": "menu-item", className: cn("group/menu-item relative", className), ...props }));
27941
28547
  SidebarMenuItem.displayName = "SidebarMenuItem";
27942
28548
  var sidebarMenuButtonVariants = (0, import_class_variance_authority7.cva)(
27943
28549
  "peer/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm outline-none ring-sidebar-ring transition-[width,height,padding] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 group-has-[[data-sidebar=menu-action]]/menu-item:pr-8 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[active=true]:bg-sidebar-accent data-[active=true]:font-medium data-[active=true]:text-sidebar-accent-foreground data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground group-data-[collapsible=icon]:!size-8 group-data-[collapsible=icon]:!p-2 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0",
@@ -27959,10 +28565,10 @@ var sidebarMenuButtonVariants = (0, import_class_variance_authority7.cva)(
27959
28565
  }
27960
28566
  }
27961
28567
  );
27962
- var SidebarMenuButton = React58.forwardRef(({ asChild = false, isActive = false, variant = "default", size = "default", tooltip, className, ...props }, ref) => {
28568
+ var SidebarMenuButton = React59.forwardRef(({ asChild = false, isActive = false, variant = "default", size = "default", tooltip, className, ...props }, ref) => {
27963
28569
  const Comp = asChild ? import_react_slot4.Slot : "button";
27964
28570
  const { isMobile, state } = useSidebar();
27965
- const button = /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
28571
+ const button = /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
27966
28572
  Comp,
27967
28573
  {
27968
28574
  ref,
@@ -27981,15 +28587,15 @@ var SidebarMenuButton = React58.forwardRef(({ asChild = false, isActive = false,
27981
28587
  children: tooltip
27982
28588
  };
27983
28589
  }
27984
- return /* @__PURE__ */ (0, import_jsx_runtime85.jsxs)(Tooltip, { children: [
27985
- /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(TooltipTrigger, { asChild: true, children: button }),
27986
- /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(TooltipContent, { side: "right", align: "center", hidden: state !== "collapsed" || isMobile, ...tooltip })
28590
+ return /* @__PURE__ */ (0, import_jsx_runtime86.jsxs)(Tooltip, { children: [
28591
+ /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(TooltipTrigger, { asChild: true, children: button }),
28592
+ /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(TooltipContent, { side: "right", align: "center", hidden: state !== "collapsed" || isMobile, ...tooltip })
27987
28593
  ] });
27988
28594
  });
27989
28595
  SidebarMenuButton.displayName = "SidebarMenuButton";
27990
- var SidebarMenuAction = React58.forwardRef(({ className, asChild = false, showOnHover = false, ...props }, ref) => {
28596
+ var SidebarMenuAction = React59.forwardRef(({ className, asChild = false, showOnHover = false, ...props }, ref) => {
27991
28597
  const Comp = asChild ? import_react_slot4.Slot : "button";
27992
- return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
28598
+ return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
27993
28599
  Comp,
27994
28600
  {
27995
28601
  ref,
@@ -28010,8 +28616,8 @@ var SidebarMenuAction = React58.forwardRef(({ className, asChild = false, showOn
28010
28616
  );
28011
28617
  });
28012
28618
  SidebarMenuAction.displayName = "SidebarMenuAction";
28013
- var SidebarMenuBadge = React58.forwardRef(
28014
- ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
28619
+ var SidebarMenuBadge = React59.forwardRef(
28620
+ ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
28015
28621
  "div",
28016
28622
  {
28017
28623
  ref,
@@ -28030,11 +28636,11 @@ var SidebarMenuBadge = React58.forwardRef(
28030
28636
  )
28031
28637
  );
28032
28638
  SidebarMenuBadge.displayName = "SidebarMenuBadge";
28033
- var SidebarMenuSkeleton = React58.forwardRef(({ className, showIcon = false, ...props }, ref) => {
28034
- const width = React58.useMemo(() => {
28639
+ var SidebarMenuSkeleton = React59.forwardRef(({ className, showIcon = false, ...props }, ref) => {
28640
+ const width = React59.useMemo(() => {
28035
28641
  return `${Math.floor(Math.random() * 40) + 50}%`;
28036
28642
  }, []);
28037
- return /* @__PURE__ */ (0, import_jsx_runtime85.jsxs)(
28643
+ return /* @__PURE__ */ (0, import_jsx_runtime86.jsxs)(
28038
28644
  "div",
28039
28645
  {
28040
28646
  ref,
@@ -28042,8 +28648,8 @@ var SidebarMenuSkeleton = React58.forwardRef(({ className, showIcon = false, ...
28042
28648
  className: cn("flex h-8 items-center gap-2 rounded-md px-2", className),
28043
28649
  ...props,
28044
28650
  children: [
28045
- showIcon && /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(Skeleton, { className: "size-4 rounded-md", "data-sidebar": "menu-skeleton-icon" }),
28046
- /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
28651
+ showIcon && /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(Skeleton, { className: "size-4 rounded-md", "data-sidebar": "menu-skeleton-icon" }),
28652
+ /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
28047
28653
  Skeleton,
28048
28654
  {
28049
28655
  className: "h-4 max-w-[--skeleton-width] flex-1",
@@ -28058,8 +28664,8 @@ var SidebarMenuSkeleton = React58.forwardRef(({ className, showIcon = false, ...
28058
28664
  );
28059
28665
  });
28060
28666
  SidebarMenuSkeleton.displayName = "SidebarMenuSkeleton";
28061
- var SidebarMenuSub = React58.forwardRef(
28062
- ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
28667
+ var SidebarMenuSub = React59.forwardRef(
28668
+ ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
28063
28669
  "ul",
28064
28670
  {
28065
28671
  ref,
@@ -28074,11 +28680,11 @@ var SidebarMenuSub = React58.forwardRef(
28074
28680
  )
28075
28681
  );
28076
28682
  SidebarMenuSub.displayName = "SidebarMenuSub";
28077
- var SidebarMenuSubItem = React58.forwardRef(({ ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime85.jsx)("li", { ref, ...props }));
28683
+ var SidebarMenuSubItem = React59.forwardRef(({ ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime86.jsx)("li", { ref, ...props }));
28078
28684
  SidebarMenuSubItem.displayName = "SidebarMenuSubItem";
28079
- var SidebarMenuSubButton = React58.forwardRef(({ asChild = false, size = "md", isActive, className, ...props }, ref) => {
28685
+ var SidebarMenuSubButton = React59.forwardRef(({ asChild = false, size = "md", isActive, className, ...props }, ref) => {
28080
28686
  const Comp = asChild ? import_react_slot4.Slot : "a";
28081
- return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
28687
+ return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
28082
28688
  Comp,
28083
28689
  {
28084
28690
  ref,
@@ -28100,44 +28706,44 @@ var SidebarMenuSubButton = React58.forwardRef(({ asChild = false, size = "md", i
28100
28706
  SidebarMenuSubButton.displayName = "SidebarMenuSubButton";
28101
28707
 
28102
28708
  // src/components/ui/slider.tsx
28103
- var React59 = __toESM(require("react"), 1);
28709
+ var React60 = __toESM(require("react"), 1);
28104
28710
  var SliderPrimitive = __toESM(require("@radix-ui/react-slider"), 1);
28105
- var import_jsx_runtime86 = require("react/jsx-runtime");
28106
- var Slider = React59.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime86.jsxs)(
28711
+ var import_jsx_runtime87 = require("react/jsx-runtime");
28712
+ var Slider = React60.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime87.jsxs)(
28107
28713
  SliderPrimitive.Root,
28108
28714
  {
28109
28715
  ref,
28110
28716
  className: cn("relative flex w-full touch-none select-none items-center", className),
28111
28717
  ...props,
28112
28718
  children: [
28113
- /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(SliderPrimitive.Track, { className: "relative h-2 w-full grow overflow-hidden rounded-full bg-secondary", children: /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(SliderPrimitive.Range, { className: "absolute h-full bg-primary" }) }),
28114
- /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(SliderPrimitive.Thumb, { className: "block h-5 w-5 rounded-full border-2 border-primary bg-background ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50" })
28719
+ /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(SliderPrimitive.Track, { className: "relative h-2 w-full grow overflow-hidden rounded-full bg-secondary", children: /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(SliderPrimitive.Range, { className: "absolute h-full bg-primary" }) }),
28720
+ /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(SliderPrimitive.Thumb, { className: "block h-5 w-5 rounded-full border-2 border-primary bg-background ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50" })
28115
28721
  ]
28116
28722
  }
28117
28723
  ));
28118
28724
  Slider.displayName = SliderPrimitive.Root.displayName;
28119
28725
 
28120
28726
  // src/components/ui/table.tsx
28121
- var React60 = __toESM(require("react"), 1);
28122
- var import_jsx_runtime87 = require("react/jsx-runtime");
28123
- var Table = React60.forwardRef(
28124
- ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime87.jsx)("div", { className: "relative w-full overflow-auto", children: /* @__PURE__ */ (0, import_jsx_runtime87.jsx)("table", { ref, className: cn("w-full caption-bottom text-sm", className), ...props }) })
28727
+ var React61 = __toESM(require("react"), 1);
28728
+ var import_jsx_runtime88 = require("react/jsx-runtime");
28729
+ var Table = React61.forwardRef(
28730
+ ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime88.jsx)("div", { className: "relative w-full overflow-auto", children: /* @__PURE__ */ (0, import_jsx_runtime88.jsx)("table", { ref, className: cn("w-full caption-bottom text-sm", className), ...props }) })
28125
28731
  );
28126
28732
  Table.displayName = "Table";
28127
- var TableHeader = React60.forwardRef(
28128
- ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime87.jsx)("thead", { ref, className: cn("[&_tr]:border-b", className), ...props })
28733
+ var TableHeader = React61.forwardRef(
28734
+ ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime88.jsx)("thead", { ref, className: cn("[&_tr]:border-b", className), ...props })
28129
28735
  );
28130
28736
  TableHeader.displayName = "TableHeader";
28131
- var TableBody = React60.forwardRef(
28132
- ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime87.jsx)("tbody", { ref, className: cn("[&_tr:last-child]:border-0", className), ...props })
28737
+ var TableBody = React61.forwardRef(
28738
+ ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime88.jsx)("tbody", { ref, className: cn("[&_tr:last-child]:border-0", className), ...props })
28133
28739
  );
28134
28740
  TableBody.displayName = "TableBody";
28135
- var TableFooter = React60.forwardRef(
28136
- ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime87.jsx)("tfoot", { ref, className: cn("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0", className), ...props })
28741
+ var TableFooter = React61.forwardRef(
28742
+ ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime88.jsx)("tfoot", { ref, className: cn("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0", className), ...props })
28137
28743
  );
28138
28744
  TableFooter.displayName = "TableFooter";
28139
- var TableRow = React60.forwardRef(
28140
- ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(
28745
+ var TableRow = React61.forwardRef(
28746
+ ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(
28141
28747
  "tr",
28142
28748
  {
28143
28749
  ref,
@@ -28147,8 +28753,8 @@ var TableRow = React60.forwardRef(
28147
28753
  )
28148
28754
  );
28149
28755
  TableRow.displayName = "TableRow";
28150
- var TableHead = React60.forwardRef(
28151
- ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(
28756
+ var TableHead = React61.forwardRef(
28757
+ ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(
28152
28758
  "th",
28153
28759
  {
28154
28760
  ref,
@@ -28161,23 +28767,23 @@ var TableHead = React60.forwardRef(
28161
28767
  )
28162
28768
  );
28163
28769
  TableHead.displayName = "TableHead";
28164
- var TableCell = React60.forwardRef(
28165
- ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime87.jsx)("td", { ref, className: cn("p-4 align-middle [&:has([role=checkbox])]:pr-0", className), ...props })
28770
+ var TableCell = React61.forwardRef(
28771
+ ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime88.jsx)("td", { ref, className: cn("p-4 align-middle [&:has([role=checkbox])]:pr-0", className), ...props })
28166
28772
  );
28167
28773
  TableCell.displayName = "TableCell";
28168
- var TableCaption = React60.forwardRef(
28169
- ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime87.jsx)("caption", { ref, className: cn("mt-4 text-sm text-muted-foreground", className), ...props })
28774
+ var TableCaption = React61.forwardRef(
28775
+ ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime88.jsx)("caption", { ref, className: cn("mt-4 text-sm text-muted-foreground", className), ...props })
28170
28776
  );
28171
28777
  TableCaption.displayName = "TableCaption";
28172
28778
 
28173
28779
  // src/components/ui/toast.tsx
28174
- var React61 = __toESM(require("react"), 1);
28780
+ var React62 = __toESM(require("react"), 1);
28175
28781
  var ToastPrimitives = __toESM(require("@radix-ui/react-toast"), 1);
28176
28782
  var import_class_variance_authority8 = require("class-variance-authority");
28177
28783
  var import_lucide_react33 = require("lucide-react");
28178
- var import_jsx_runtime88 = require("react/jsx-runtime");
28784
+ var import_jsx_runtime89 = require("react/jsx-runtime");
28179
28785
  var ToastProvider = ToastPrimitives.Provider;
28180
- var ToastViewport = React61.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(
28786
+ var ToastViewport = React62.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(
28181
28787
  ToastPrimitives.Viewport,
28182
28788
  {
28183
28789
  ref,
@@ -28203,11 +28809,11 @@ var toastVariants = (0, import_class_variance_authority8.cva)(
28203
28809
  }
28204
28810
  }
28205
28811
  );
28206
- var Toast = React61.forwardRef(({ className, variant, ...props }, ref) => {
28207
- return /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(ToastPrimitives.Root, { ref, className: cn(toastVariants({ variant }), className), ...props });
28812
+ var Toast = React62.forwardRef(({ className, variant, ...props }, ref) => {
28813
+ return /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(ToastPrimitives.Root, { ref, className: cn(toastVariants({ variant }), className), ...props });
28208
28814
  });
28209
28815
  Toast.displayName = ToastPrimitives.Root.displayName;
28210
- var ToastAction = React61.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(
28816
+ var ToastAction = React62.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(
28211
28817
  ToastPrimitives.Action,
28212
28818
  {
28213
28819
  ref,
@@ -28219,7 +28825,7 @@ var ToastAction = React61.forwardRef(({ className, ...props }, ref) => /* @__PUR
28219
28825
  }
28220
28826
  ));
28221
28827
  ToastAction.displayName = ToastPrimitives.Action.displayName;
28222
- var ToastClose = React61.forwardRef(({ className, onClick, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(
28828
+ var ToastClose = React62.forwardRef(({ className, onClick, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(
28223
28829
  ToastPrimitives.Close,
28224
28830
  {
28225
28831
  ref,
@@ -28233,39 +28839,39 @@ var ToastClose = React61.forwardRef(({ className, onClick, ...props }, ref) => /
28233
28839
  },
28234
28840
  "toast-close": "",
28235
28841
  ...props,
28236
- children: /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(import_lucide_react33.X, { className: "h-4 w-4" })
28842
+ children: /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(import_lucide_react33.X, { className: "h-4 w-4" })
28237
28843
  }
28238
28844
  ));
28239
28845
  ToastClose.displayName = ToastPrimitives.Close.displayName;
28240
- var ToastTitle = React61.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(ToastPrimitives.Title, { ref, className: cn("text-sm font-semibold", className), ...props }));
28846
+ var ToastTitle = React62.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(ToastPrimitives.Title, { ref, className: cn("text-sm font-semibold", className), ...props }));
28241
28847
  ToastTitle.displayName = ToastPrimitives.Title.displayName;
28242
- var ToastDescription = React61.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(ToastPrimitives.Description, { ref, className: cn("text-sm opacity-90", className), ...props }));
28848
+ var ToastDescription = React62.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(ToastPrimitives.Description, { ref, className: cn("text-sm opacity-90", className), ...props }));
28243
28849
  ToastDescription.displayName = ToastPrimitives.Description.displayName;
28244
28850
 
28245
28851
  // src/components/ui/toaster.tsx
28246
- var import_jsx_runtime89 = require("react/jsx-runtime");
28852
+ var import_jsx_runtime90 = require("react/jsx-runtime");
28247
28853
  function Toaster2() {
28248
28854
  const { toasts } = useToast();
28249
- return /* @__PURE__ */ (0, import_jsx_runtime89.jsxs)(ToastProvider, { children: [
28855
+ return /* @__PURE__ */ (0, import_jsx_runtime90.jsxs)(ToastProvider, { children: [
28250
28856
  toasts.map(function({ id, title, description, action, ...props }) {
28251
- return /* @__PURE__ */ (0, import_jsx_runtime89.jsxs)(Toast, { ...props, children: [
28252
- /* @__PURE__ */ (0, import_jsx_runtime89.jsxs)("div", { className: "grid gap-1", children: [
28253
- title && /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(ToastTitle, { children: title }),
28254
- description && /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(ToastDescription, { children: description })
28857
+ return /* @__PURE__ */ (0, import_jsx_runtime90.jsxs)(Toast, { ...props, children: [
28858
+ /* @__PURE__ */ (0, import_jsx_runtime90.jsxs)("div", { className: "grid gap-1", children: [
28859
+ title && /* @__PURE__ */ (0, import_jsx_runtime90.jsx)(ToastTitle, { children: title }),
28860
+ description && /* @__PURE__ */ (0, import_jsx_runtime90.jsx)(ToastDescription, { children: description })
28255
28861
  ] }),
28256
28862
  action,
28257
- /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(ToastClose, {})
28863
+ /* @__PURE__ */ (0, import_jsx_runtime90.jsx)(ToastClose, {})
28258
28864
  ] }, id);
28259
28865
  }),
28260
- /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(ToastViewport, {})
28866
+ /* @__PURE__ */ (0, import_jsx_runtime90.jsx)(ToastViewport, {})
28261
28867
  ] });
28262
28868
  }
28263
28869
 
28264
28870
  // src/components/ui/toggle.tsx
28265
- var React62 = __toESM(require("react"), 1);
28871
+ var React63 = __toESM(require("react"), 1);
28266
28872
  var TogglePrimitive = __toESM(require("@radix-ui/react-toggle"), 1);
28267
28873
  var import_class_variance_authority9 = require("class-variance-authority");
28268
- var import_jsx_runtime90 = require("react/jsx-runtime");
28874
+ var import_jsx_runtime91 = require("react/jsx-runtime");
28269
28875
  var toggleVariants = (0, import_class_variance_authority9.cva)(
28270
28876
  "inline-flex items-center justify-center rounded-md text-sm font-medium ring-offset-background transition-colors hover:bg-muted hover:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground",
28271
28877
  {
@@ -28286,22 +28892,22 @@ var toggleVariants = (0, import_class_variance_authority9.cva)(
28286
28892
  }
28287
28893
  }
28288
28894
  );
28289
- var Toggle = React62.forwardRef(({ className, variant, size, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime90.jsx)(TogglePrimitive.Root, { ref, className: cn(toggleVariants({ variant, size, className })), ...props }));
28895
+ var Toggle = React63.forwardRef(({ className, variant, size, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(TogglePrimitive.Root, { ref, className: cn(toggleVariants({ variant, size, className })), ...props }));
28290
28896
  Toggle.displayName = TogglePrimitive.Root.displayName;
28291
28897
 
28292
28898
  // src/components/ui/toggle-group.tsx
28293
- var React63 = __toESM(require("react"), 1);
28899
+ var React64 = __toESM(require("react"), 1);
28294
28900
  var ToggleGroupPrimitive = __toESM(require("@radix-ui/react-toggle-group"), 1);
28295
- var import_jsx_runtime91 = require("react/jsx-runtime");
28296
- var ToggleGroupContext = React63.createContext({
28901
+ var import_jsx_runtime92 = require("react/jsx-runtime");
28902
+ var ToggleGroupContext = React64.createContext({
28297
28903
  size: "default",
28298
28904
  variant: "default"
28299
28905
  });
28300
- var ToggleGroup = React63.forwardRef(({ className, variant, size, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(ToggleGroupPrimitive.Root, { ref, className: cn("flex items-center justify-center gap-1", className), ...props, children: /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(ToggleGroupContext.Provider, { value: { variant, size }, children }) }));
28906
+ var ToggleGroup = React64.forwardRef(({ className, variant, size, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime92.jsx)(ToggleGroupPrimitive.Root, { ref, className: cn("flex items-center justify-center gap-1", className), ...props, children: /* @__PURE__ */ (0, import_jsx_runtime92.jsx)(ToggleGroupContext.Provider, { value: { variant, size }, children }) }));
28301
28907
  ToggleGroup.displayName = ToggleGroupPrimitive.Root.displayName;
28302
- var ToggleGroupItem = React63.forwardRef(({ className, children, variant, size, ...props }, ref) => {
28303
- const context = React63.useContext(ToggleGroupContext);
28304
- return /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(
28908
+ var ToggleGroupItem = React64.forwardRef(({ className, children, variant, size, ...props }, ref) => {
28909
+ const context = React64.useContext(ToggleGroupContext);
28910
+ return /* @__PURE__ */ (0, import_jsx_runtime92.jsx)(
28305
28911
  ToggleGroupPrimitive.Item,
28306
28912
  {
28307
28913
  ref,
@@ -28320,11 +28926,11 @@ var ToggleGroupItem = React63.forwardRef(({ className, children, variant, size,
28320
28926
  ToggleGroupItem.displayName = ToggleGroupPrimitive.Item.displayName;
28321
28927
 
28322
28928
  // src/hooks/useActiveSection.ts
28323
- var import_react23 = require("react");
28929
+ var import_react26 = require("react");
28324
28930
  var useActiveSection = (sectionIds, offset = 180) => {
28325
28931
  var _a78;
28326
- const [activeId, setActiveId] = (0, import_react23.useState)((_a78 = sectionIds[0]) != null ? _a78 : "");
28327
- (0, import_react23.useEffect)(() => {
28932
+ const [activeId, setActiveId] = (0, import_react26.useState)((_a78 = sectionIds[0]) != null ? _a78 : "");
28933
+ (0, import_react26.useEffect)(() => {
28328
28934
  if (!sectionIds.length || typeof window === "undefined") return;
28329
28935
  const update = () => {
28330
28936
  let nextActive = sectionIds[0];
@@ -28356,7 +28962,7 @@ function slugify(value) {
28356
28962
  }
28357
28963
 
28358
28964
  // src/lib/layoutMode.ts
28359
- var import_react24 = require("react");
28965
+ var import_react27 = require("react");
28360
28966
  var LAYOUT_MODE_STORAGE_KEY = "cc-layout-preview-mode";
28361
28967
  var LAYOUT_MODE_CHANGE_EVENT = "cc-layout-mode-change";
28362
28968
  var normalizeLayoutMode = (value) => {
@@ -28379,8 +28985,8 @@ var writeStoredLayoutMode = (mode) => {
28379
28985
  window.dispatchEvent(new CustomEvent(LAYOUT_MODE_CHANGE_EVENT, { detail: mode }));
28380
28986
  };
28381
28987
  var useLayoutMode = () => {
28382
- const [mode, setMode] = (0, import_react24.useState)(readStoredLayoutMode);
28383
- (0, import_react24.useEffect)(() => {
28988
+ const [mode, setMode] = (0, import_react27.useState)(readStoredLayoutMode);
28989
+ (0, import_react27.useEffect)(() => {
28384
28990
  if (typeof window === "undefined") return void 0;
28385
28991
  const handleStorage = (event) => {
28386
28992
  if (event.key !== LAYOUT_MODE_STORAGE_KEY) return;
@@ -28402,15 +29008,15 @@ var useLayoutMode = () => {
28402
29008
  };
28403
29009
  var useLayoutModeControl = () => {
28404
29010
  const mode = useLayoutMode();
28405
- const setMode = (0, import_react24.useCallback)((nextMode) => {
29011
+ const setMode = (0, import_react27.useCallback)((nextMode) => {
28406
29012
  writeStoredLayoutMode(nextMode);
28407
29013
  }, []);
28408
29014
  return { mode, setMode };
28409
29015
  };
28410
29016
 
28411
29017
  // src/lib/auth.tsx
28412
- var import_react25 = require("react");
28413
- var import_jsx_runtime92 = require("react/jsx-runtime");
29018
+ var import_react28 = require("react");
29019
+ var import_jsx_runtime93 = require("react/jsx-runtime");
28414
29020
  var STORAGE_KEYS = {
28415
29021
  accessToken: "cc_access_token",
28416
29022
  idToken: "cc_id_token",
@@ -28490,6 +29096,39 @@ var PRESENCE_HEARTBEAT_INTERVAL_MS = parsePositiveInteger2(
28490
29096
  );
28491
29097
  var INACTIVITY_CHECK_INTERVAL_MS = 3e4;
28492
29098
  var SILENT_AUTH_ERRORS = /* @__PURE__ */ new Set(["login_required", "interaction_required", "consent_required", "account_selection_required"]);
29099
+ var PROTECTED_ROUTE_PREFIXES = ["/layout-preview", "/componentes", "/docs", "/animacoes"];
29100
+ var LOOPBACK_HOSTNAMES = /* @__PURE__ */ new Set(["localhost", "127.0.0.1", "::1"]);
29101
+ var isTruthyEnvFlag = (value) => {
29102
+ if (!value) return false;
29103
+ const normalized = value.trim().toLowerCase();
29104
+ return normalized === "1" || normalized === "true" || normalized === "yes" || normalized === "on";
29105
+ };
29106
+ var isProtectedRoute = (pathname) => {
29107
+ return PROTECTED_ROUTE_PREFIXES.some((prefix) => pathname === prefix || pathname.startsWith(`${prefix}/`));
29108
+ };
29109
+ var shouldAttemptSilentLoginForPath = (pathname) => {
29110
+ const override = getRuntimeEnv("VITE_ACCOUNTS_SILENT_AUTH");
29111
+ if (typeof override === "string") {
29112
+ return isTruthyEnvFlag(override);
29113
+ }
29114
+ return isProtectedRoute(pathname);
29115
+ };
29116
+ var isSilentAuthRedirectCompatible = () => {
29117
+ if (typeof window === "undefined") return true;
29118
+ const configuredRedirectUri = getRuntimeEnv("VITE_ACCOUNTS_REDIRECT_URI");
29119
+ if (!configuredRedirectUri) return true;
29120
+ try {
29121
+ const currentUrl = new URL(window.location.href);
29122
+ const redirectUrl = new URL(configuredRedirectUri, window.location.origin);
29123
+ if (redirectUrl.origin === currentUrl.origin) {
29124
+ return true;
29125
+ }
29126
+ const usesLoopbackHosts = LOOPBACK_HOSTNAMES.has(redirectUrl.hostname) && LOOPBACK_HOSTNAMES.has(currentUrl.hostname);
29127
+ return usesLoopbackHosts && redirectUrl.protocol === currentUrl.protocol && redirectUrl.port === currentUrl.port;
29128
+ } catch (e) {
29129
+ return true;
29130
+ }
29131
+ };
28493
29132
  var DEFAULT_PRESENCE_STATUS = "online";
28494
29133
  var PRESENCE_STATUS_VALUES2 = [
28495
29134
  "online",
@@ -28569,7 +29208,7 @@ var readStoredPresenceSource = () => {
28569
29208
  if (isPresenceSource(stored)) return stored;
28570
29209
  return "auto";
28571
29210
  };
28572
- var AuthContext = (0, import_react25.createContext)(void 0);
29211
+ var AuthContext = (0, import_react28.createContext)(void 0);
28573
29212
  var readStoredToken = () => {
28574
29213
  const accessToken = sessionStorage.getItem(STORAGE_KEYS.accessToken);
28575
29214
  const idToken = sessionStorage.getItem(STORAGE_KEYS.idToken);
@@ -28688,17 +29327,17 @@ var buildUserFromTokens = ({
28688
29327
  };
28689
29328
  };
28690
29329
  var AuthProvider = ({ children }) => {
28691
- const [status, setStatus] = (0, import_react25.useState)("loading");
28692
- const [accessToken, setAccessToken] = (0, import_react25.useState)(null);
28693
- const [user, setUser] = (0, import_react25.useState)(null);
28694
- const [presenceStatus, setPresenceStatusState] = (0, import_react25.useState)(() => readStoredPresence());
28695
- const presenceStatusRef = (0, import_react25.useRef)(readStoredPresence());
28696
- const presenceSourceRef = (0, import_react25.useRef)(readStoredPresenceSource());
28697
- const lastActivityAtRef = (0, import_react25.useRef)(Date.now());
28698
- const lastActivityBroadcastAtRef = (0, import_react25.useRef)(0);
28699
- const resolvedPresenceIdentityKeyRef = (0, import_react25.useRef)(null);
28700
- const resolvedPresenceUserIdRef = (0, import_react25.useRef)(null);
28701
- const storePresenceStatus = (0, import_react25.useCallback)((nextStatus, source) => {
29330
+ const [status, setStatus] = (0, import_react28.useState)("loading");
29331
+ const [accessToken, setAccessToken] = (0, import_react28.useState)(null);
29332
+ const [user, setUser] = (0, import_react28.useState)(null);
29333
+ const [presenceStatus, setPresenceStatusState] = (0, import_react28.useState)(() => readStoredPresence());
29334
+ const presenceStatusRef = (0, import_react28.useRef)(readStoredPresence());
29335
+ const presenceSourceRef = (0, import_react28.useRef)(readStoredPresenceSource());
29336
+ const lastActivityAtRef = (0, import_react28.useRef)(Date.now());
29337
+ const lastActivityBroadcastAtRef = (0, import_react28.useRef)(0);
29338
+ const resolvedPresenceIdentityKeyRef = (0, import_react28.useRef)(null);
29339
+ const resolvedPresenceUserIdRef = (0, import_react28.useRef)(null);
29340
+ const storePresenceStatus = (0, import_react28.useCallback)((nextStatus, source) => {
28702
29341
  setPresenceStatusState(nextStatus);
28703
29342
  presenceStatusRef.current = nextStatus;
28704
29343
  sessionStorage.setItem(STORAGE_KEYS.presence, nextStatus);
@@ -28708,7 +29347,7 @@ var AuthProvider = ({ children }) => {
28708
29347
  localStorage.setItem(LOCAL_STORAGE_KEYS.presenceSource, source);
28709
29348
  }
28710
29349
  }, []);
28711
- const resolvePresenceUserId = (0, import_react25.useCallback)(async (targetUser) => {
29350
+ const resolvePresenceUserId = (0, import_react28.useCallback)(async (targetUser) => {
28712
29351
  var _a78, _b7, _c, _d;
28713
29352
  const sub = toNonEmptyString(targetUser == null ? void 0 : targetUser.sub);
28714
29353
  const id = toNonEmptyString(targetUser == null ? void 0 : targetUser.id);
@@ -28746,7 +29385,7 @@ var AuthProvider = ({ children }) => {
28746
29385
  resolvedPresenceUserIdRef.current = fallbackUserId;
28747
29386
  return fallbackUserId;
28748
29387
  }, []);
28749
- const syncPresenceFromRecord = (0, import_react25.useCallback)(
29388
+ const syncPresenceFromRecord = (0, import_react28.useCallback)(
28750
29389
  (rawRow) => {
28751
29390
  var _a78, _b7, _c;
28752
29391
  if (!rawRow) return;
@@ -28761,7 +29400,7 @@ var AuthProvider = ({ children }) => {
28761
29400
  },
28762
29401
  [storePresenceStatus]
28763
29402
  );
28764
- const persistPresenceLegacy = (0, import_react25.useCallback)(
29403
+ const persistPresenceLegacy = (0, import_react28.useCallback)(
28765
29404
  async (nextStatus, source, targetUser, options) => {
28766
29405
  const userId = await resolvePresenceUserId(targetUser != null ? targetUser : user);
28767
29406
  if (!userId) return false;
@@ -28796,7 +29435,7 @@ var AuthProvider = ({ children }) => {
28796
29435
  },
28797
29436
  [resolvePresenceUserId, syncPresenceFromRecord, user]
28798
29437
  );
28799
- const executePresenceRpc = (0, import_react25.useCallback)(
29438
+ const executePresenceRpc = (0, import_react28.useCallback)(
28800
29439
  async (fnName, payload, options) => {
28801
29440
  const supabase = getSupabase();
28802
29441
  if (!supabase) {
@@ -28824,7 +29463,7 @@ var AuthProvider = ({ children }) => {
28824
29463
  },
28825
29464
  [persistPresenceLegacy, syncPresenceFromRecord]
28826
29465
  );
28827
- const touchPresence = (0, import_react25.useCallback)(
29466
+ const touchPresence = (0, import_react28.useCallback)(
28828
29467
  async (options) => {
28829
29468
  var _a78;
28830
29469
  const targetUser = (_a78 = options == null ? void 0 : options.targetUser) != null ? _a78 : user;
@@ -28855,7 +29494,7 @@ var AuthProvider = ({ children }) => {
28855
29494
  },
28856
29495
  [executePresenceRpc, resolvePresenceUserId, user]
28857
29496
  );
28858
- const markPresenceIdle = (0, import_react25.useCallback)(
29497
+ const markPresenceIdle = (0, import_react28.useCallback)(
28859
29498
  async (targetUser) => {
28860
29499
  const resolvedTargetUser = targetUser != null ? targetUser : user;
28861
29500
  const userId = await resolvePresenceUserId(resolvedTargetUser);
@@ -28880,7 +29519,7 @@ var AuthProvider = ({ children }) => {
28880
29519
  },
28881
29520
  [executePresenceRpc, resolvePresenceUserId, user]
28882
29521
  );
28883
- const setPresenceNetworkStatus = (0, import_react25.useCallback)(
29522
+ const setPresenceNetworkStatus = (0, import_react28.useCallback)(
28884
29523
  async (nextStatus, source, targetUser) => {
28885
29524
  const resolvedTargetUser = targetUser != null ? targetUser : user;
28886
29525
  const userId = await resolvePresenceUserId(resolvedTargetUser);
@@ -28906,7 +29545,7 @@ var AuthProvider = ({ children }) => {
28906
29545
  },
28907
29546
  [executePresenceRpc, resolvePresenceUserId, user]
28908
29547
  );
28909
- const loadPresenceFromDatabase = (0, import_react25.useCallback)(
29548
+ const loadPresenceFromDatabase = (0, import_react28.useCallback)(
28910
29549
  async (targetUser) => {
28911
29550
  const userId = await resolvePresenceUserId(targetUser);
28912
29551
  if (!userId) return;
@@ -28940,7 +29579,7 @@ var AuthProvider = ({ children }) => {
28940
29579
  },
28941
29580
  [resolvePresenceUserId, syncPresenceFromRecord, touchPresence]
28942
29581
  );
28943
- const clearAuthFlowState = (0, import_react25.useCallback)((options) => {
29582
+ const clearAuthFlowState = (0, import_react28.useCallback)((options) => {
28944
29583
  sessionStorage.removeItem(STORAGE_KEYS.state);
28945
29584
  sessionStorage.removeItem(STORAGE_KEYS.verifier);
28946
29585
  sessionStorage.removeItem(STORAGE_KEYS.nonce);
@@ -28950,7 +29589,7 @@ var AuthProvider = ({ children }) => {
28950
29589
  sessionStorage.removeItem(STORAGE_KEYS.silentCheckDone);
28951
29590
  }
28952
29591
  }, []);
28953
- const startAuthorization = (0, import_react25.useCallback)(
29592
+ const startAuthorization = (0, import_react28.useCallback)(
28954
29593
  async (options) => {
28955
29594
  var _a78, _b7;
28956
29595
  const config = getAccountsConfig();
@@ -28976,7 +29615,7 @@ var AuthProvider = ({ children }) => {
28976
29615
  },
28977
29616
  []
28978
29617
  );
28979
- const attemptSilentLogin = (0, import_react25.useCallback)(async () => {
29618
+ const attemptSilentLogin = (0, import_react28.useCallback)(async () => {
28980
29619
  if (typeof window === "undefined") return false;
28981
29620
  if (window.location.pathname.startsWith("/auth/callback")) return false;
28982
29621
  if (sessionStorage.getItem(STORAGE_KEYS.silentCheckDone) === "1") return false;
@@ -28987,7 +29626,7 @@ var AuthProvider = ({ children }) => {
28987
29626
  });
28988
29627
  return true;
28989
29628
  }, [startAuthorization]);
28990
- (0, import_react25.useEffect)(() => {
29629
+ (0, import_react28.useEffect)(() => {
28991
29630
  let cancelled = false;
28992
29631
  const initializeAuth = async () => {
28993
29632
  var _a78;
@@ -29011,9 +29650,13 @@ var AuthProvider = ({ children }) => {
29011
29650
  sessionStorage.removeItem(STORAGE_KEYS.presence);
29012
29651
  sessionStorage.removeItem(STORAGE_KEYS.presenceSource);
29013
29652
  localStorage.removeItem(LOCAL_STORAGE_KEYS.presenceSource);
29653
+ const pathname = typeof window === "undefined" ? "/" : window.location.pathname;
29654
+ const shouldAttemptSilentLogin = shouldAttemptSilentLoginForPath(pathname) && isSilentAuthRedirectCompatible();
29014
29655
  try {
29015
- const redirected = await attemptSilentLogin();
29016
- if (redirected || cancelled) return;
29656
+ if (shouldAttemptSilentLogin) {
29657
+ const redirected = await attemptSilentLogin();
29658
+ if (redirected || cancelled) return;
29659
+ }
29017
29660
  } catch (error) {
29018
29661
  if (isRuntimeDev()) {
29019
29662
  console.warn("[auth] Falha na verifica\xE7\xE3o silenciosa de sess\xE3o:", error.message);
@@ -29028,7 +29671,7 @@ var AuthProvider = ({ children }) => {
29028
29671
  cancelled = true;
29029
29672
  };
29030
29673
  }, [attemptSilentLogin]);
29031
- (0, import_react25.useEffect)(() => {
29674
+ (0, import_react28.useEffect)(() => {
29032
29675
  var _a78;
29033
29676
  if (status !== "authenticated") return;
29034
29677
  if (user) return;
@@ -29041,15 +29684,15 @@ var AuthProvider = ({ children }) => {
29041
29684
  if (!hydratedUser) return;
29042
29685
  setUser(hydratedUser);
29043
29686
  }, [status, user]);
29044
- (0, import_react25.useEffect)(() => {
29687
+ (0, import_react28.useEffect)(() => {
29045
29688
  resolvedPresenceIdentityKeyRef.current = null;
29046
29689
  resolvedPresenceUserIdRef.current = null;
29047
29690
  }, [user == null ? void 0 : user.email, user == null ? void 0 : user.id, user == null ? void 0 : user.sub, user == null ? void 0 : user.userId]);
29048
- (0, import_react25.useEffect)(() => {
29691
+ (0, import_react28.useEffect)(() => {
29049
29692
  if (status !== "authenticated") return;
29050
29693
  void loadPresenceFromDatabase(user);
29051
29694
  }, [loadPresenceFromDatabase, status, user]);
29052
- (0, import_react25.useEffect)(() => {
29695
+ (0, import_react28.useEffect)(() => {
29053
29696
  if (status !== "authenticated") return;
29054
29697
  const supabase = getSupabase();
29055
29698
  if (!supabase) return;
@@ -29086,7 +29729,7 @@ var AuthProvider = ({ children }) => {
29086
29729
  }
29087
29730
  };
29088
29731
  }, [resolvePresenceUserId, status, storePresenceStatus, syncPresenceFromRecord, user]);
29089
- (0, import_react25.useEffect)(() => {
29732
+ (0, import_react28.useEffect)(() => {
29090
29733
  if (status !== "authenticated") return;
29091
29734
  const registerActivity = () => {
29092
29735
  lastActivityAtRef.current = Date.now();
@@ -29135,13 +29778,13 @@ var AuthProvider = ({ children }) => {
29135
29778
  document.removeEventListener("visibilitychange", onVisibility);
29136
29779
  };
29137
29780
  }, [markPresenceIdle, status, touchPresence]);
29138
- const login = (0, import_react25.useCallback)(async (redirectTo) => {
29781
+ const login = (0, import_react28.useCallback)(async (redirectTo) => {
29139
29782
  await startAuthorization({
29140
29783
  mode: "interactive",
29141
29784
  redirectTo: redirectTo != null ? redirectTo : window.location.pathname + window.location.search + window.location.hash
29142
29785
  });
29143
29786
  }, [startAuthorization]);
29144
- const completeLogin = (0, import_react25.useCallback)(async () => {
29787
+ const completeLogin = (0, import_react28.useCallback)(async () => {
29145
29788
  var _a78;
29146
29789
  const params = new URLSearchParams(window.location.search);
29147
29790
  const redirectTo = (_a78 = sessionStorage.getItem(STORAGE_KEYS.redirect)) != null ? _a78 : "/";
@@ -29211,7 +29854,7 @@ var AuthProvider = ({ children }) => {
29211
29854
  return { ok: false, error: err.message };
29212
29855
  }
29213
29856
  }, [clearAuthFlowState]);
29214
- const logout = (0, import_react25.useCallback)(async () => {
29857
+ const logout = (0, import_react28.useCallback)(async () => {
29215
29858
  var _a78;
29216
29859
  const config = getAccountsConfig();
29217
29860
  const { logoutUrl } = await resolveOidcEndpoints(config);
@@ -29230,13 +29873,13 @@ var AuthProvider = ({ children }) => {
29230
29873
  window.location.assign(url);
29231
29874
  }
29232
29875
  }, [setPresenceNetworkStatus, storePresenceStatus, user]);
29233
- const getAccessToken = (0, import_react25.useCallback)(async () => {
29876
+ const getAccessToken = (0, import_react28.useCallback)(async () => {
29234
29877
  const stored = readStoredToken();
29235
29878
  if (stored == null ? void 0 : stored.accessToken) return stored.accessToken;
29236
29879
  if (accessToken) return accessToken;
29237
29880
  throw new Error("Usu\xE1rio n\xE3o autenticado.");
29238
29881
  }, [accessToken]);
29239
- const setPresenceStatus = (0, import_react25.useCallback)(
29882
+ const setPresenceStatus = (0, import_react28.useCallback)(
29240
29883
  async (nextStatus) => {
29241
29884
  if (!isUserPresenceStatus(nextStatus) || nextStatus === "offline") return;
29242
29885
  const now = Date.now();
@@ -29247,7 +29890,7 @@ var AuthProvider = ({ children }) => {
29247
29890
  },
29248
29891
  [setPresenceNetworkStatus]
29249
29892
  );
29250
- const value = (0, import_react25.useMemo)(
29893
+ const value = (0, import_react28.useMemo)(
29251
29894
  () => ({
29252
29895
  status,
29253
29896
  user,
@@ -29261,10 +29904,10 @@ var AuthProvider = ({ children }) => {
29261
29904
  }),
29262
29905
  [status, user, accessToken, login, logout, completeLogin, getAccessToken, presenceStatus, setPresenceStatus]
29263
29906
  );
29264
- return /* @__PURE__ */ (0, import_jsx_runtime92.jsx)(AuthContext.Provider, { value, children });
29907
+ return /* @__PURE__ */ (0, import_jsx_runtime93.jsx)(AuthContext.Provider, { value, children });
29265
29908
  };
29266
29909
  var useAuth = () => {
29267
- const ctx = (0, import_react25.useContext)(AuthContext);
29910
+ const ctx = (0, import_react28.useContext)(AuthContext);
29268
29911
  if (!ctx) {
29269
29912
  throw new Error("useAuth deve ser usado dentro de AuthProvider.");
29270
29913
  }
@@ -29291,6 +29934,7 @@ var useAuth = () => {
29291
29934
  AlertDialogTitle,
29292
29935
  AlertDialogTrigger,
29293
29936
  AlertTitle,
29937
+ AnimatedThemeToggle,
29294
29938
  AppSidebar,
29295
29939
  AspectRatio,
29296
29940
  AuthProvider,
@@ -29579,6 +30223,8 @@ var useAuth = () => {
29579
30223
  TelescupVideo,
29580
30224
  Textarea,
29581
30225
  TextareaField,
30226
+ ThemeProvider,
30227
+ ThemeScript,
29582
30228
  ThemeToggle,
29583
30229
  Timeline,
29584
30230
  Toast,
@@ -29639,6 +30285,7 @@ var useAuth = () => {
29639
30285
  toast,
29640
30286
  toggleVariants,
29641
30287
  useActiveSection,
30288
+ useAppTheme,
29642
30289
  useAuth,
29643
30290
  useBreakpoint,
29644
30291
  useFormField,