@northslopetech/altitude-ui 2.4.0 → 2.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -115,6 +115,7 @@ __export(index_exports, {
115
115
  MagnifyingGlass: () => MagnifyingGlass,
116
116
  Minus: () => Minus,
117
117
  MoreMenu: () => MoreMenu,
118
+ Panel: () => Panel,
118
119
  PdfViewer: () => PdfViewer,
119
120
  Phone: () => Phone,
120
121
  PieChart: () => PieChart,
@@ -133,6 +134,17 @@ __export(index_exports, {
133
134
  SelectValue: () => SelectValue,
134
135
  Separator: () => Separator2,
135
136
  Share: () => Share,
137
+ Sidebar: () => Sidebar,
138
+ SidebarContent: () => SidebarContent,
139
+ SidebarFooter: () => SidebarFooter,
140
+ SidebarGroup: () => SidebarGroup,
141
+ SidebarGroupContent: () => SidebarGroupContent,
142
+ SidebarHeader: () => SidebarHeader,
143
+ SidebarInset: () => SidebarInset,
144
+ SidebarMenu: () => SidebarMenu,
145
+ SidebarMenuButton: () => SidebarMenuButton,
146
+ SidebarMenuItem: () => SidebarMenuItem,
147
+ SidebarProvider: () => SidebarProvider,
136
148
  Star: () => Star,
137
149
  Statement: () => Statement,
138
150
  Table: () => Table,
@@ -142,8 +154,12 @@ __export(index_exports, {
142
154
  TabsList: () => TabsList,
143
155
  TabsTrigger: () => TabsTrigger,
144
156
  Textarea: () => Textarea,
157
+ Tooltip: () => Tooltip,
145
158
  TooltipContainer: () => TooltipContainer,
159
+ TooltipContent: () => TooltipContent,
146
160
  TooltipItem: () => TooltipItem,
161
+ TooltipProvider: () => TooltipProvider,
162
+ TooltipTrigger: () => TooltipTrigger,
147
163
  Trash: () => Trash,
148
164
  Typography: () => Typography,
149
165
  Upload: () => Upload,
@@ -172,7 +188,8 @@ __export(index_exports, {
172
188
  selectTriggerVariants: () => selectTriggerVariants,
173
189
  tabsVariants: () => tabsVariants,
174
190
  typographyVariants: () => typographyVariants,
175
- uploadVariants: () => uploadVariants
191
+ uploadVariants: () => uploadVariants,
192
+ useSidebar: () => useSidebar
176
193
  });
177
194
  module.exports = __toCommonJS(index_exports);
178
195
 
@@ -1876,6 +1893,29 @@ var Download = ({
1876
1893
  )
1877
1894
  }
1878
1895
  );
1896
+ var Panel = ({
1897
+ className,
1898
+ variant = "dark",
1899
+ ...props
1900
+ }) => /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
1901
+ "svg",
1902
+ {
1903
+ width: "16",
1904
+ height: "16",
1905
+ viewBox: "0 0 16 16",
1906
+ fill: "none",
1907
+ xmlns: "http://www.w3.org/2000/svg",
1908
+ className: cn(getVariantStyles(variant), className),
1909
+ ...props,
1910
+ children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
1911
+ "path",
1912
+ {
1913
+ d: "M14 2C14.5523 2 15 2.44772 15 3V13C15 13.5523 14.5523 14 14 14H2C1.44772 14 1 13.5523 1 13V3C1 2.44772 1.44772 2 2 2H14ZM7 12H13V4H7V12ZM3 12H5V4H3V12Z",
1914
+ fill: "currentColor"
1915
+ }
1916
+ )
1917
+ }
1918
+ );
1879
1919
 
1880
1920
  // src/components/ui/select.tsx
1881
1921
  var import_jsx_runtime4 = require("react/jsx-runtime");
@@ -2295,15 +2335,329 @@ function FieldError({
2295
2335
  );
2296
2336
  }
2297
2337
 
2298
- // src/components/ui/date-picker.tsx
2338
+ // src/components/ui/tooltip.tsx
2339
+ var React4 = __toESM(require("react"));
2340
+ var TooltipPrimitive = __toESM(require("@radix-ui/react-tooltip"));
2341
+ var import_jsx_runtime8 = require("react/jsx-runtime");
2342
+ function TooltipProvider({
2343
+ delayDuration = 0,
2344
+ ...props
2345
+ }) {
2346
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
2347
+ TooltipPrimitive.Provider,
2348
+ {
2349
+ "data-slot": "tooltip-provider",
2350
+ delayDuration,
2351
+ ...props
2352
+ }
2353
+ );
2354
+ }
2355
+ TooltipProvider.displayName = "TooltipProvider";
2356
+ function Tooltip({ delayDuration, ...props }) {
2357
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(TooltipProvider, { delayDuration, children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(TooltipPrimitive.Root, { "data-slot": "tooltip", ...props }) });
2358
+ }
2359
+ Tooltip.displayName = "Tooltip";
2360
+ var TooltipTrigger = React4.forwardRef(({ ...props }, ref) => {
2361
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
2362
+ TooltipPrimitive.Trigger,
2363
+ {
2364
+ ref,
2365
+ "data-slot": "tooltip-trigger",
2366
+ ...props
2367
+ }
2368
+ );
2369
+ });
2370
+ TooltipTrigger.displayName = "TooltipTrigger";
2371
+ var TooltipContent = React4.forwardRef(({ className, sideOffset = 2, children, ...props }, ref) => {
2372
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(TooltipPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
2373
+ TooltipPrimitive.Content,
2374
+ {
2375
+ ref,
2376
+ "data-slot": "tooltip-content",
2377
+ sideOffset,
2378
+ className: cn(
2379
+ "bg-dark text-light animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit origin-[var(--radix-tooltip-content-transform-origin)] flex items-start gap-2 rounded p-1.5 text-balance shadow-sm",
2380
+ className
2381
+ ),
2382
+ ...props,
2383
+ children: [
2384
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(TooltipPrimitive.Arrow, { className: "fill-dark", width: 10, height: 9 }),
2385
+ children
2386
+ ]
2387
+ }
2388
+ ) });
2389
+ });
2390
+ TooltipContent.displayName = "TooltipContent";
2391
+
2392
+ // src/components/ui/sidebar.tsx
2299
2393
  var React5 = __toESM(require("react"));
2394
+ var import_jsx_runtime9 = require("react/jsx-runtime");
2395
+ var SIDEBAR_CONSTANTS = {
2396
+ WIDTH: "144px",
2397
+ WIDTH_ICON: "48px"
2398
+ };
2399
+ var SidebarContext = React5.createContext(null);
2400
+ function useSidebar() {
2401
+ const context = React5.useContext(SidebarContext);
2402
+ if (!context) {
2403
+ throw new Error("useSidebar must be used within a SidebarProvider.");
2404
+ }
2405
+ return context;
2406
+ }
2407
+ var SidebarProvider = React5.forwardRef(
2408
+ ({
2409
+ defaultOpen = true,
2410
+ open: openProp,
2411
+ onOpenChange: setOpenProp,
2412
+ className,
2413
+ style,
2414
+ children,
2415
+ ...props
2416
+ }, ref) => {
2417
+ const [_open, _setOpen] = React5.useState(defaultOpen);
2418
+ const open = openProp ?? _open;
2419
+ const setOpen = React5.useCallback(
2420
+ (value) => {
2421
+ const openState = typeof value === "function" ? value(open) : value;
2422
+ if (setOpenProp) {
2423
+ setOpenProp(openState);
2424
+ } else {
2425
+ _setOpen(openState);
2426
+ }
2427
+ },
2428
+ [setOpenProp, open]
2429
+ );
2430
+ const toggleSidebar = React5.useCallback(() => {
2431
+ return setOpen((open2) => !open2);
2432
+ }, [setOpen]);
2433
+ const state = open ? "expanded" : "collapsed";
2434
+ const contextValue = React5.useMemo(
2435
+ () => ({
2436
+ state,
2437
+ open,
2438
+ setOpen,
2439
+ toggleSidebar
2440
+ }),
2441
+ [state, open, setOpen, toggleSidebar]
2442
+ );
2443
+ return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(SidebarContext.Provider, { value: contextValue, children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
2444
+ "div",
2445
+ {
2446
+ style: {
2447
+ "--sidebar-width": SIDEBAR_CONSTANTS.WIDTH,
2448
+ "--sidebar-width-icon": SIDEBAR_CONSTANTS.WIDTH_ICON,
2449
+ ...style
2450
+ },
2451
+ className: cn(
2452
+ "group/sidebar-wrapper flex min-h-svh w-full has-[[data-variant=inset]]:bg-light",
2453
+ className
2454
+ ),
2455
+ ref,
2456
+ ...props,
2457
+ children
2458
+ }
2459
+ ) });
2460
+ }
2461
+ );
2462
+ SidebarProvider.displayName = "SidebarProvider";
2463
+ var Sidebar = React5.forwardRef(
2464
+ ({ collapsible = "icon", className, children, ...props }, ref) => {
2465
+ const { state } = useSidebar();
2466
+ return /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(
2467
+ "aside",
2468
+ {
2469
+ ref,
2470
+ className: "group peer text-light",
2471
+ "data-state": state,
2472
+ "data-collapsible": state === "collapsed" ? collapsible : "",
2473
+ "aria-label": "Main navigation",
2474
+ "aria-expanded": state === "expanded",
2475
+ role: "navigation",
2476
+ children: [
2477
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
2478
+ "div",
2479
+ {
2480
+ className: cn(
2481
+ "relative h-svh shrink-0 transition-[width] duration-200 ease-linear",
2482
+ "w-[var(--sidebar-width)] group-data-[collapsible=icon]:w-[var(--sidebar-width-icon)]"
2483
+ )
2484
+ }
2485
+ ),
2486
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
2487
+ "div",
2488
+ {
2489
+ className: cn(
2490
+ "fixed inset-y-0 z-10 h-svh w-[var(--sidebar-width)] transition-[left,right,width] duration-200 ease-linear flex left-0",
2491
+ "group-data-[collapsible=icon]:w-[var(--sidebar-width-icon)]",
2492
+ className
2493
+ ),
2494
+ ...props,
2495
+ children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
2496
+ "div",
2497
+ {
2498
+ "data-sidebar": "sidebar",
2499
+ className: "flex h-full w-full flex-col gap-8 p-4 px-2 bg-dark",
2500
+ children
2501
+ }
2502
+ )
2503
+ }
2504
+ )
2505
+ ]
2506
+ }
2507
+ );
2508
+ }
2509
+ );
2510
+ Sidebar.displayName = "Sidebar";
2511
+ var SidebarInset = React5.forwardRef(
2512
+ ({ className, ...props }, ref) => {
2513
+ return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
2514
+ "main",
2515
+ {
2516
+ ref,
2517
+ className: cn(
2518
+ "relative flex min-h-svh flex-1 flex-col bg-dark",
2519
+ className
2520
+ ),
2521
+ ...props
2522
+ }
2523
+ );
2524
+ }
2525
+ );
2526
+ SidebarInset.displayName = "SidebarInset";
2527
+ var SidebarHeader = React5.forwardRef(
2528
+ ({ className, ...props }, ref) => {
2529
+ return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
2530
+ "div",
2531
+ {
2532
+ ref,
2533
+ "data-sidebar": "header",
2534
+ className: cn(
2535
+ "flex h-8 justify-between items-center shrink-0 self-stretch",
2536
+ "group-data-[collapsible=icon]:justify-center group-data-[collapsible=icon]:p-2",
2537
+ className
2538
+ ),
2539
+ ...props
2540
+ }
2541
+ );
2542
+ }
2543
+ );
2544
+ SidebarHeader.displayName = "SidebarHeader";
2545
+ var SidebarFooter = React5.forwardRef(
2546
+ ({ className, ...props }, ref) => {
2547
+ return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
2548
+ "div",
2549
+ {
2550
+ ref,
2551
+ "data-sidebar": "footer",
2552
+ className: cn("flex flex-col gap-2", className),
2553
+ ...props
2554
+ }
2555
+ );
2556
+ }
2557
+ );
2558
+ SidebarFooter.displayName = "SidebarFooter";
2559
+ var SidebarContent = React5.forwardRef(
2560
+ ({ className, ...props }, ref) => {
2561
+ return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
2562
+ "div",
2563
+ {
2564
+ ref,
2565
+ "data-sidebar": "content",
2566
+ className: cn(
2567
+ "flex min-h-0 flex-1 flex-col gap-8 overflow-auto group-data-[collapsible=icon]:overflow-hidden",
2568
+ className
2569
+ ),
2570
+ ...props
2571
+ }
2572
+ );
2573
+ }
2574
+ );
2575
+ SidebarContent.displayName = "SidebarContent";
2576
+ var SidebarGroup = React5.forwardRef(
2577
+ ({ className, ...props }, ref) => {
2578
+ return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
2579
+ "div",
2580
+ {
2581
+ ref,
2582
+ "data-sidebar": "group",
2583
+ className: cn("relative flex w-full min-w-0 flex-col", className),
2584
+ ...props
2585
+ }
2586
+ );
2587
+ }
2588
+ );
2589
+ SidebarGroup.displayName = "SidebarGroup";
2590
+ var SidebarGroupContent = React5.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
2591
+ "div",
2592
+ {
2593
+ ref,
2594
+ "data-sidebar": "group-content",
2595
+ className: cn("w-full text-sm", className),
2596
+ ...props
2597
+ }
2598
+ ));
2599
+ SidebarGroupContent.displayName = "SidebarGroupContent";
2600
+ var SidebarMenu = React5.forwardRef(
2601
+ ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
2602
+ "ul",
2603
+ {
2604
+ ref,
2605
+ "data-sidebar": "menu",
2606
+ className: cn("flex w-full min-w-0 flex-col gap-1", className),
2607
+ ...props
2608
+ }
2609
+ )
2610
+ );
2611
+ SidebarMenu.displayName = "SidebarMenu";
2612
+ var SidebarMenuItem = React5.forwardRef(
2613
+ ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
2614
+ "li",
2615
+ {
2616
+ ref,
2617
+ "data-sidebar": "menu-item",
2618
+ className: cn("group/menu-item relative", className),
2619
+ ...props
2620
+ }
2621
+ )
2622
+ );
2623
+ SidebarMenuItem.displayName = "SidebarMenuItem";
2624
+ var SidebarMenuButton = React5.forwardRef(({ isActive = false, tooltip, className, children, ...props }, ref) => {
2625
+ const { state } = useSidebar();
2626
+ const button = /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
2627
+ "button",
2628
+ {
2629
+ ref,
2630
+ "data-sidebar": "menu-button",
2631
+ "data-active": isActive,
2632
+ "aria-current": isActive ? "page" : void 0,
2633
+ className: cn(
2634
+ "peer/menu-button flex w-full h-8 items-center gap-2 overflow-hidden rounded-lg p-2 text-left outline-none transition-[width,height,padding] hover:bg-white/10 data-[active=true]:bg-info data-[active=true]:hover:bg-info group-data-[collapsible=icon]:!size-8 group-data-[collapsible=icon]:!p-2 group-data-[collapsible=icon]:!gap-2 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0",
2635
+ className
2636
+ ),
2637
+ ...props,
2638
+ children
2639
+ }
2640
+ );
2641
+ if (!tooltip || state !== "collapsed") {
2642
+ return button;
2643
+ }
2644
+ const tooltipProps = typeof tooltip === "string" ? { children: tooltip } : tooltip;
2645
+ return /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(Tooltip, { delayDuration: 0, children: [
2646
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(TooltipTrigger, { asChild: true, children: button }),
2647
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(TooltipContent, { side: "right", align: "center", ...tooltipProps })
2648
+ ] });
2649
+ });
2650
+ SidebarMenuButton.displayName = "SidebarMenuButton";
2651
+
2652
+ // src/components/ui/date-picker.tsx
2653
+ var React7 = __toESM(require("react"));
2300
2654
  var PopoverPrimitive = __toESM(require("@radix-ui/react-popover"));
2301
2655
 
2302
2656
  // src/components/ui/input.tsx
2303
- var React4 = __toESM(require("react"));
2304
- var import_jsx_runtime8 = require("react/jsx-runtime");
2657
+ var React6 = __toESM(require("react"));
2658
+ var import_jsx_runtime10 = require("react/jsx-runtime");
2305
2659
  var inputBaseStyles = "flex h-10 py-2 w-full border bg-light text-dark focus:outline-none disabled:cursor-not-allowed disabled:opacity-50 transition-colors rounded-md px-3 min-w-80 placeholder:text-secondary read-only:bg-gray read-only:cursor-default read-only:border-transparent read-only:text-secondary read-only:focus-visible:border-transparent border-secondary focus-visible:border-2 focus-visible:border-strong disabled:border-secondary aria-invalid:border-error aria-invalid:focus-visible:border-error";
2306
- var Input = React4.forwardRef(
2660
+ var Input = React6.forwardRef(
2307
2661
  ({
2308
2662
  className,
2309
2663
  style,
@@ -2314,7 +2668,7 @@ var Input = React4.forwardRef(
2314
2668
  readOnly,
2315
2669
  ...props
2316
2670
  }, ref) => {
2317
- const [internalValue, setInternalValue] = React4.useState(value || "");
2671
+ const [internalValue, setInternalValue] = React6.useState(value || "");
2318
2672
  const isControlled = value !== void 0;
2319
2673
  const currentValue = isControlled ? value : internalValue;
2320
2674
  const showClear = showClearProp !== false && currentValue && currentValue.toString().length > 0 && !readOnly;
@@ -2344,8 +2698,8 @@ var Input = React4.forwardRef(
2344
2698
  }
2345
2699
  onClear?.();
2346
2700
  };
2347
- return /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { className: "relative", children: [
2348
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
2701
+ return /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)("div", { className: "relative", children: [
2702
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
2349
2703
  "input",
2350
2704
  {
2351
2705
  className: cn(
@@ -2361,23 +2715,23 @@ var Input = React4.forwardRef(
2361
2715
  ...props
2362
2716
  }
2363
2717
  ),
2364
- showClear && /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
2718
+ showClear && /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
2365
2719
  "button",
2366
2720
  {
2367
2721
  type: "button",
2368
2722
  onClick: handleClear,
2369
2723
  className: "absolute right-3 top-1/2 transform -translate-y-1/2 h-4 w-4 text-secondary hover:text-dark transition-colors",
2370
- children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(X, { className: "h-4 w-4" })
2724
+ children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(X, { className: "h-4 w-4" })
2371
2725
  }
2372
2726
  ),
2373
- showLock && /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Lock, { className: "absolute right-3 top-1/2 transform -translate-y-1/2 h-4 w-4 text-secondary" })
2727
+ showLock && /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(Lock, { className: "absolute right-3 top-1/2 transform -translate-y-1/2 h-4 w-4 text-secondary" })
2374
2728
  ] });
2375
2729
  }
2376
2730
  );
2377
2731
  Input.displayName = "Input";
2378
2732
 
2379
2733
  // src/components/ui/date-picker.tsx
2380
- var import_jsx_runtime9 = require("react/jsx-runtime");
2734
+ var import_jsx_runtime11 = require("react/jsx-runtime");
2381
2735
  var getDayNames = () => {
2382
2736
  const days = [];
2383
2737
  for (let i = 0; i < 7; i++) {
@@ -2413,7 +2767,7 @@ var formatDateInput = (date) => {
2413
2767
  day: "2-digit"
2414
2768
  });
2415
2769
  };
2416
- var DatePicker = React5.forwardRef(
2770
+ var DatePicker = React7.forwardRef(
2417
2771
  ({
2418
2772
  value,
2419
2773
  onValueChange,
@@ -2432,19 +2786,19 @@ var DatePicker = React5.forwardRef(
2432
2786
  if (isNaN(parsed.getTime())) return void 0;
2433
2787
  return parsed;
2434
2788
  };
2435
- const [selectedDate, setSelectedDate] = React5.useState(
2789
+ const [selectedDate, setSelectedDate] = React7.useState(
2436
2790
  value || parseDate(defaultValue)
2437
2791
  );
2438
- const [currentMonth, setCurrentMonth] = React5.useState(() => {
2792
+ const [currentMonth, setCurrentMonth] = React7.useState(() => {
2439
2793
  const date = value || parseDate(defaultValue) || /* @__PURE__ */ new Date();
2440
2794
  return new Date(date.getFullYear(), date.getMonth());
2441
2795
  });
2442
- const [open, setOpen] = React5.useState(false);
2443
- const [inputValue, setInputValue] = React5.useState(() => {
2796
+ const [open, setOpen] = React7.useState(false);
2797
+ const [inputValue, setInputValue] = React7.useState(() => {
2444
2798
  const initialDate = value || parseDate(defaultValue);
2445
2799
  return initialDate ? formatDateInput(initialDate) : "";
2446
2800
  });
2447
- React5.useEffect(() => {
2801
+ React7.useEffect(() => {
2448
2802
  setSelectedDate(value);
2449
2803
  if (value) {
2450
2804
  setCurrentMonth(new Date(value.getFullYear(), value.getMonth()));
@@ -2455,7 +2809,7 @@ var DatePicker = React5.forwardRef(
2455
2809
  setInputValue("");
2456
2810
  }
2457
2811
  }, [value]);
2458
- React5.useEffect(() => {
2812
+ React7.useEffect(() => {
2459
2813
  if (value) return;
2460
2814
  const parsedDefault = parseDate(defaultValue);
2461
2815
  if (!parsedDefault) return;
@@ -2578,14 +2932,14 @@ var DatePicker = React5.forwardRef(
2578
2932
  const months = getMonthNames();
2579
2933
  const dayNames = getDayNames();
2580
2934
  const years = generateYears();
2581
- return /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(
2935
+ return /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(
2582
2936
  PopoverPrimitive.Root,
2583
2937
  {
2584
2938
  open: disabled ? false : open,
2585
2939
  onOpenChange: disabled ? void 0 : setOpen,
2586
2940
  children: [
2587
- /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)("div", { className: "relative", children: [
2588
- /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
2941
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)("div", { className: "relative", children: [
2942
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
2589
2943
  Input,
2590
2944
  {
2591
2945
  ref,
@@ -2598,7 +2952,7 @@ var DatePicker = React5.forwardRef(
2598
2952
  ...props
2599
2953
  }
2600
2954
  ),
2601
- /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(PopoverPrimitive.Trigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("button", { className: "absolute right-3 top-1/2 transform -translate-y-1/2 hover:bg-gray rounded p-0.5 transition-colors", children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
2955
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(PopoverPrimitive.Trigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("button", { className: "absolute right-3 top-1/2 transform -translate-y-1/2 hover:bg-gray rounded p-0.5 transition-colors", children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
2602
2956
  Calendar,
2603
2957
  {
2604
2958
  className: cn(
@@ -2608,7 +2962,7 @@ var DatePicker = React5.forwardRef(
2608
2962
  }
2609
2963
  ) }) })
2610
2964
  ] }),
2611
- /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(PopoverPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
2965
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(PopoverPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
2612
2966
  PopoverPrimitive.Content,
2613
2967
  {
2614
2968
  className: "z-50 w-80 rounded-lg border border-secondary bg-light text-dark shadow-lg animate-in fade-in-0 zoom-in-95 duration-200",
@@ -2617,51 +2971,51 @@ var DatePicker = React5.forwardRef(
2617
2971
  alignOffset: -12,
2618
2972
  side: "bottom",
2619
2973
  sticky: "always",
2620
- children: /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)("div", { className: "p-4", children: [
2621
- /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)("div", { className: "flex items-center justify-between mb-4 gap-1", children: [
2622
- /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
2974
+ children: /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)("div", { className: "p-4", children: [
2975
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)("div", { className: "flex items-center justify-between mb-4 gap-1", children: [
2976
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
2623
2977
  "button",
2624
2978
  {
2625
2979
  onClick: () => handleMonthChange("prev"),
2626
2980
  className: "p-1 hover:bg-gray rounded transition-colors flex-shrink-0",
2627
- children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(ChevronLeft, { className: "h-4 w-4" })
2981
+ children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(ChevronLeft, { className: "h-4 w-4" })
2628
2982
  }
2629
2983
  ),
2630
- /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)("div", { className: "flex gap-1 flex-1 min-w-0", children: [
2631
- /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(
2984
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)("div", { className: "flex gap-1 flex-1 min-w-0", children: [
2985
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(
2632
2986
  Select,
2633
2987
  {
2634
2988
  value: currentMonth.getMonth().toString(),
2635
2989
  onValueChange: handleMonthSelect,
2636
2990
  children: [
2637
- /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(SelectTrigger, { className: "min-w-fit h-8 text-sm", children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(SelectValue, {}) }),
2638
- /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(SelectContent, { children: months.map((month, index) => /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(SelectItem, { value: index.toString(), children: month }, month)) })
2991
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(SelectTrigger, { className: "min-w-fit h-8 text-sm", children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(SelectValue, {}) }),
2992
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(SelectContent, { children: months.map((month, index) => /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(SelectItem, { value: index.toString(), children: month }, month)) })
2639
2993
  ]
2640
2994
  }
2641
2995
  ),
2642
- /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(
2996
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(
2643
2997
  Select,
2644
2998
  {
2645
2999
  value: currentMonth.getFullYear().toString(),
2646
3000
  onValueChange: handleYearSelect,
2647
3001
  children: [
2648
- /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(SelectTrigger, { className: "min-w-fit h-8 text-sm", children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(SelectValue, {}) }),
2649
- /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(SelectContent, { children: years.map((year) => /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(SelectItem, { value: year.toString(), children: year }, year)) })
3002
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(SelectTrigger, { className: "min-w-fit h-8 text-sm", children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(SelectValue, {}) }),
3003
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(SelectContent, { children: years.map((year) => /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(SelectItem, { value: year.toString(), children: year }, year)) })
2650
3004
  ]
2651
3005
  }
2652
3006
  )
2653
3007
  ] }),
2654
- /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
3008
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
2655
3009
  "button",
2656
3010
  {
2657
3011
  onClick: () => handleMonthChange("next"),
2658
3012
  className: "p-1 hover:bg-gray rounded transition-colors flex-shrink-0",
2659
- children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(ChevronRight, { className: "h-4 w-4" })
3013
+ children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(ChevronRight, { className: "h-4 w-4" })
2660
3014
  }
2661
3015
  )
2662
3016
  ] }),
2663
- /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)("div", { className: "space-y-1", children: [
2664
- /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("div", { className: "grid grid-cols-7 gap-1 mb-2", children: dayNames.map((day) => /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
3017
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)("div", { className: "space-y-1", children: [
3018
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("div", { className: "grid grid-cols-7 gap-1 mb-2", children: dayNames.map((day) => /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
2665
3019
  Typography,
2666
3020
  {
2667
3021
  variant: "label-xs-bold",
@@ -2671,11 +3025,11 @@ var DatePicker = React5.forwardRef(
2671
3025
  },
2672
3026
  day
2673
3027
  )) }),
2674
- /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("div", { className: "grid grid-cols-7 gap-1", children: days.map((date, index) => /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
3028
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("div", { className: "grid grid-cols-7 gap-1", children: days.map((date, index) => /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
2675
3029
  "div",
2676
3030
  {
2677
3031
  className: "h-8 w-8 flex items-center justify-center",
2678
- children: date && /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
3032
+ children: date && /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
2679
3033
  "button",
2680
3034
  {
2681
3035
  onClick: () => handleDateSelect(date),
@@ -2689,7 +3043,7 @@ var DatePicker = React5.forwardRef(
2689
3043
  isToday(date) && !isDateSelected(date) && !isDateDisabled(date) && "text-blue-600 after:content-[''] after:absolute after:bottom-1 after:left-1/2 after:-translate-x-1/2 after:w-1 after:h-1 after:bg-blue-600 after:rounded-full",
2690
3044
  isDateDisabled(date) && "text-secondary/40 cursor-not-allowed opacity-50"
2691
3045
  ),
2692
- children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(Typography, { variant: "label-sm", as: "span", children: date.getDate() })
3046
+ children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(Typography, { variant: "label-sm", as: "span", children: date.getDate() })
2693
3047
  }
2694
3048
  )
2695
3049
  },
@@ -2707,9 +3061,9 @@ var DatePicker = React5.forwardRef(
2707
3061
  DatePicker.displayName = "DatePicker";
2708
3062
 
2709
3063
  // src/components/ui/upload.tsx
2710
- var React6 = __toESM(require("react"));
3064
+ var React8 = __toESM(require("react"));
2711
3065
  var import_class_variance_authority6 = require("class-variance-authority");
2712
- var import_jsx_runtime10 = require("react/jsx-runtime");
3066
+ var import_jsx_runtime12 = require("react/jsx-runtime");
2713
3067
  var DEFAULT_MAX_FILE_SIZE = 10 * 1024 * 1024;
2714
3068
  var uploadVariants = (0, import_class_variance_authority6.cva)(
2715
3069
  "relative flex flex-col items-center justify-center rounded-lg transition-all duration-200 ease-in-out overflow-hidden",
@@ -2733,7 +3087,7 @@ var uploadVariants = (0, import_class_variance_authority6.cva)(
2733
3087
  }
2734
3088
  }
2735
3089
  );
2736
- var Upload = React6.forwardRef(
3090
+ var Upload = React8.forwardRef(
2737
3091
  ({
2738
3092
  className,
2739
3093
  onFileSelect,
@@ -2746,8 +3100,8 @@ var Upload = React6.forwardRef(
2746
3100
  selectedFiles = [],
2747
3101
  ...props
2748
3102
  }, ref) => {
2749
- const fileInputRef = React6.useRef(null);
2750
- const [isDragOver, setIsDragOver] = React6.useState(false);
3103
+ const fileInputRef = React8.useRef(null);
3104
+ const [isDragOver, setIsDragOver] = React8.useState(false);
2751
3105
  const getFileTypeDisplay = () => {
2752
3106
  const typeMap = {
2753
3107
  "application/pdf": "PDF",
@@ -2811,17 +3165,17 @@ var Upload = React6.forwardRef(
2811
3165
  const renderContent = () => {
2812
3166
  switch (effectiveState) {
2813
3167
  case "error":
2814
- return /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(
3168
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(
2815
3169
  "div",
2816
3170
  {
2817
3171
  className: "flex flex-col items-center text-center max-w-[289px]",
2818
3172
  style: { gap: "32px" },
2819
3173
  children: [
2820
- /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)("div", { className: "space-y-4", children: [
2821
- /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(Typography, { variant: "heading-sm", children: "Upload fail" }),
2822
- /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(Typography, { variant: "body-md", className: "text-error", children: errorMessage })
3174
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("div", { className: "space-y-4", children: [
3175
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Typography, { variant: "heading-sm", children: "Upload fail" }),
3176
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Typography, { variant: "body-md", className: "text-error", children: errorMessage })
2823
3177
  ] }),
2824
- /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
3178
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
2825
3179
  Button,
2826
3180
  {
2827
3181
  variant: "destructive",
@@ -2835,22 +3189,22 @@ var Upload = React6.forwardRef(
2835
3189
  }
2836
3190
  );
2837
3191
  case "uploading":
2838
- return /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(
3192
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(
2839
3193
  "div",
2840
3194
  {
2841
3195
  className: "flex flex-col items-center text-center max-w-[289px]",
2842
3196
  style: { gap: "32px" },
2843
3197
  children: [
2844
- /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(Typography, { variant: "heading-sm", className: "text-dark", children: "Uploading files" }),
2845
- /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)("div", { className: "w-full max-w-[720px] space-y-2", children: [
2846
- /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("div", { className: "w-full bg-gray rounded-full h-2", children: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
3198
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Typography, { variant: "heading-sm", className: "text-dark", children: "Uploading files" }),
3199
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("div", { className: "w-full max-w-[720px] space-y-2", children: [
3200
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("div", { className: "w-full bg-gray rounded-full h-2", children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
2847
3201
  "div",
2848
3202
  {
2849
3203
  className: "bg-canvas-primary h-2 rounded-full transition-all duration-300 ease-in-out",
2850
3204
  style: { width: `${progress}%` }
2851
3205
  }
2852
3206
  ) }),
2853
- /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(
3207
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(
2854
3208
  Typography,
2855
3209
  {
2856
3210
  variant: "body-sm",
@@ -2866,29 +3220,29 @@ var Upload = React6.forwardRef(
2866
3220
  }
2867
3221
  );
2868
3222
  case "success":
2869
- return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
3223
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
2870
3224
  "div",
2871
3225
  {
2872
3226
  className: "flex flex-col items-center text-center max-w-[289px]",
2873
3227
  style: { gap: "32px" },
2874
- children: /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)("div", { className: "space-y-4", children: [
2875
- /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(Typography, { variant: "heading-sm", className: "text-success", children: "Upload successful!" }),
2876
- selectedFiles.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("div", { className: "text-center", children: selectedFiles.map((file, index) => /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(Typography, { variant: "body-sm", children: file.name }, index)) })
3228
+ children: /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("div", { className: "space-y-4", children: [
3229
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Typography, { variant: "heading-sm", className: "text-success", children: "Upload successful!" }),
3230
+ selectedFiles.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("div", { className: "text-center", children: selectedFiles.map((file, index) => /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Typography, { variant: "body-sm", children: file.name }, index)) })
2877
3231
  ] })
2878
3232
  }
2879
3233
  );
2880
3234
  default:
2881
- return /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(
3235
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(
2882
3236
  "div",
2883
3237
  {
2884
3238
  className: "flex flex-col items-center text-center max-w-[289px]",
2885
3239
  style: { gap: "32px" },
2886
3240
  children: [
2887
- /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)("div", { className: "space-y-4", children: [
2888
- /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(Typography, { variant: "heading-sm", className: "text-dark", children: "Drag & drop files here" }),
2889
- /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(Typography, { variant: "body-md", className: "text-secondary", children: "or click to browse from your computer" })
3241
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("div", { className: "space-y-4", children: [
3242
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Typography, { variant: "heading-sm", className: "text-dark", children: "Drag & drop files here" }),
3243
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Typography, { variant: "body-md", className: "text-secondary", children: "or click to browse from your computer" })
2890
3244
  ] }),
2891
- /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
3245
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
2892
3246
  Button,
2893
3247
  {
2894
3248
  variant: "default",
@@ -2902,10 +3256,10 @@ var Upload = React6.forwardRef(
2902
3256
  children: "Choose files"
2903
3257
  }
2904
3258
  ),
2905
- /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(Typography, { variant: "body-sm", className: "text-secondary", children: [
3259
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(Typography, { variant: "body-sm", className: "text-secondary", children: [
2906
3260
  "Supported file: ",
2907
3261
  getFileTypeDisplay(),
2908
- /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("br", {}),
3262
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("br", {}),
2909
3263
  "Max: ",
2910
3264
  Math.round(maxFileSize / 1024 / 1024),
2911
3265
  " MB each"
@@ -2915,7 +3269,7 @@ var Upload = React6.forwardRef(
2915
3269
  );
2916
3270
  }
2917
3271
  };
2918
- return /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(
3272
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(
2919
3273
  "div",
2920
3274
  {
2921
3275
  ref,
@@ -2939,7 +3293,7 @@ var Upload = React6.forwardRef(
2939
3293
  "aria-disabled": disabled,
2940
3294
  ...props,
2941
3295
  children: [
2942
- /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
3296
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
2943
3297
  "input",
2944
3298
  {
2945
3299
  ref: fileInputRef,
@@ -2959,34 +3313,34 @@ var Upload = React6.forwardRef(
2959
3313
  Upload.displayName = "Upload";
2960
3314
 
2961
3315
  // src/components/ui/checkbox.tsx
2962
- var React7 = __toESM(require("react"));
3316
+ var React9 = __toESM(require("react"));
2963
3317
  var CheckboxPrimitive = __toESM(require("@radix-ui/react-checkbox"));
2964
3318
  var import_class_variance_authority7 = require("class-variance-authority");
2965
- var import_jsx_runtime11 = require("react/jsx-runtime");
3319
+ var import_jsx_runtime13 = require("react/jsx-runtime");
2966
3320
  var checkboxVariants = (0, import_class_variance_authority7.cva)(
2967
3321
  "peer size-4 shrink-0 rounded-[4px] border bg-light hover:bg-info-subtle transition-colors focus-visible:outline-none focus-visible:border-2 disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=checked]:border-primary data-[state=checked]:text-light [&_svg]:pointer-events-none [&_svg]:size-3 [&_svg]:shrink-0 border-strong focus-visible:border-interactive aria-invalid:border-error aria-invalid:focus-visible:border-error"
2968
3322
  );
2969
- var Checkbox = React7.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
3323
+ var Checkbox = React9.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
2970
3324
  CheckboxPrimitive.Root,
2971
3325
  {
2972
3326
  ref,
2973
3327
  className: cn(checkboxVariants(), className),
2974
3328
  ...props,
2975
- children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(CheckboxPrimitive.Indicator, { className: "flex items-center justify-center text-current", children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(CheckIcon, { variant: "light", className: "size-3" }) })
3329
+ children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(CheckboxPrimitive.Indicator, { className: "flex items-center justify-center text-current", children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(CheckIcon, { variant: "light", className: "size-3" }) })
2976
3330
  }
2977
3331
  ));
2978
3332
  Checkbox.displayName = CheckboxPrimitive.Root.displayName;
2979
3333
 
2980
3334
  // src/components/ui/textarea.tsx
2981
- var React8 = __toESM(require("react"));
2982
- var import_jsx_runtime12 = require("react/jsx-runtime");
2983
- var Textarea = React8.forwardRef(
3335
+ var React10 = __toESM(require("react"));
3336
+ var import_jsx_runtime14 = require("react/jsx-runtime");
3337
+ var Textarea = React10.forwardRef(
2984
3338
  ({ className, style, ...props }, ref) => {
2985
3339
  const tokenStyles = {
2986
3340
  font: "var(--typography-label-md-regular)",
2987
3341
  ...style
2988
3342
  };
2989
- return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
3343
+ return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
2990
3344
  "textarea",
2991
3345
  {
2992
3346
  className: cn(
@@ -3003,9 +3357,9 @@ var Textarea = React8.forwardRef(
3003
3357
  Textarea.displayName = "Textarea";
3004
3358
 
3005
3359
  // src/components/ui/badge.tsx
3006
- var React9 = __toESM(require("react"));
3360
+ var React11 = __toESM(require("react"));
3007
3361
  var import_class_variance_authority8 = require("class-variance-authority");
3008
- var import_jsx_runtime13 = require("react/jsx-runtime");
3362
+ var import_jsx_runtime15 = require("react/jsx-runtime");
3009
3363
  var badgeVariants = (0, import_class_variance_authority8.cva)(
3010
3364
  "inline-flex items-center justify-center gap-1 whitespace-nowrap transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2",
3011
3365
  {
@@ -3028,7 +3382,7 @@ var badgeVariants = (0, import_class_variance_authority8.cva)(
3028
3382
  function getBadgeTypographyStyles() {
3029
3383
  return { font: "var(--typography-label-sm-bold)" };
3030
3384
  }
3031
- var Badge = React9.forwardRef(
3385
+ var Badge = React11.forwardRef(
3032
3386
  ({ className, variant, style, ...props }, ref) => {
3033
3387
  if (!variant) {
3034
3388
  return null;
@@ -3038,7 +3392,7 @@ var Badge = React9.forwardRef(
3038
3392
  ...typographyStyles,
3039
3393
  ...style
3040
3394
  };
3041
- return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
3395
+ return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
3042
3396
  "span",
3043
3397
  {
3044
3398
  className: cn(
@@ -3056,13 +3410,13 @@ var Badge = React9.forwardRef(
3056
3410
  Badge.displayName = "Badge";
3057
3411
 
3058
3412
  // src/components/pdf-viewer/index.tsx
3059
- var React14 = __toESM(require("react"));
3413
+ var React16 = __toESM(require("react"));
3060
3414
  var import_TextLayer = require("react-pdf/dist/Page/TextLayer.css");
3061
3415
 
3062
3416
  // src/components/pdf-viewer/components/PdfDocument.tsx
3063
- var React10 = __toESM(require("react"));
3417
+ var React12 = __toESM(require("react"));
3064
3418
  var import_react_pdf = require("react-pdf");
3065
- var import_jsx_runtime14 = require("react/jsx-runtime");
3419
+ var import_jsx_runtime16 = require("react/jsx-runtime");
3066
3420
  var PdfDocument = ({
3067
3421
  file,
3068
3422
  pageWidth,
@@ -3070,24 +3424,24 @@ var PdfDocument = ({
3070
3424
  onLoadSuccess,
3071
3425
  onLoadError
3072
3426
  }) => {
3073
- const [numPages, setNumPages] = React10.useState();
3427
+ const [numPages, setNumPages] = React12.useState();
3074
3428
  function handleDocumentLoadSuccess({ numPages: numPages2 }) {
3075
3429
  setNumPages(numPages2);
3076
3430
  onLoadSuccess?.(numPages2);
3077
3431
  }
3078
3432
  if (!file) {
3079
- return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: "flex items-center justify-center h-64", children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(Typography, { variant: "body-md", className: "text-secondary", children: "No PDF available" }) });
3433
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { className: "flex items-center justify-center h-64", children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Typography, { variant: "body-md", className: "text-secondary", children: "No PDF available" }) });
3080
3434
  }
3081
- return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
3435
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
3082
3436
  import_react_pdf.Document,
3083
3437
  {
3084
3438
  file,
3085
3439
  onLoadSuccess: handleDocumentLoadSuccess,
3086
3440
  onLoadError,
3087
- loading: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: "flex items-center justify-center h-64", children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(Typography, { variant: "body-md", className: "text-secondary", children: "Rendering PDF..." }) }),
3088
- error: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: "flex items-center justify-center h-64", children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(Typography, { variant: "body-md", className: "text-error", children: "Failed to render PDF" }) }),
3441
+ loading: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { className: "flex items-center justify-center h-64", children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Typography, { variant: "body-md", className: "text-secondary", children: "Rendering PDF..." }) }),
3442
+ error: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { className: "flex items-center justify-center h-64", children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Typography, { variant: "body-md", className: "text-error", children: "Failed to render PDF" }) }),
3089
3443
  className: "flex flex-col items-center p-4",
3090
- children: numPages && pageWidth > 0 && Array.from(new Array(numPages), (_, index) => /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
3444
+ children: numPages && pageWidth > 0 && Array.from(new Array(numPages), (_, index) => /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
3091
3445
  import_react_pdf.Page,
3092
3446
  {
3093
3447
  pageNumber: index + 1,
@@ -3104,14 +3458,14 @@ var PdfDocument = ({
3104
3458
  PdfDocument.displayName = "PdfDocument";
3105
3459
 
3106
3460
  // src/components/pdf-viewer/components/PdfHeader.tsx
3107
- var import_jsx_runtime15 = require("react/jsx-runtime");
3461
+ var import_jsx_runtime17 = require("react/jsx-runtime");
3108
3462
  var PdfHeader = ({
3109
3463
  title,
3110
3464
  onDownload,
3111
3465
  onPrint
3112
3466
  }) => {
3113
- return /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { className: "flex items-center justify-between gap-4 px-4 py-3 bg-neutral-400 border-b border-subtle", children: [
3114
- /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { className: "flex-shrink min-w-0", children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
3467
+ return /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)("div", { className: "flex items-center justify-between gap-4 px-4 py-3 bg-neutral-400 border-b border-subtle", children: [
3468
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "flex-shrink min-w-0", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
3115
3469
  Typography,
3116
3470
  {
3117
3471
  variant: "label-md-bold",
@@ -3120,25 +3474,25 @@ var PdfHeader = ({
3120
3474
  children: title || "Untitled Document"
3121
3475
  }
3122
3476
  ) }),
3123
- /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { className: "flex items-center gap-2 flex-shrink-0", children: [
3124
- /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
3477
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)("div", { className: "flex items-center gap-2 flex-shrink-0", children: [
3478
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
3125
3479
  "button",
3126
3480
  {
3127
3481
  onClick: onDownload,
3128
3482
  className: "p-2 hover:bg-neutral-500 rounded transition-colors",
3129
3483
  "aria-label": "Download PDF",
3130
3484
  type: "button",
3131
- children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(Download, { variant: "dark", className: "w-5 h-5" })
3485
+ children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Download, { variant: "dark", className: "w-5 h-5" })
3132
3486
  }
3133
3487
  ),
3134
- /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
3488
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
3135
3489
  "button",
3136
3490
  {
3137
3491
  onClick: onPrint,
3138
3492
  className: "p-2 hover:bg-neutral-500 rounded transition-colors",
3139
3493
  "aria-label": "Print PDF",
3140
3494
  type: "button",
3141
- children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(Print, { variant: "dark", className: "w-5 h-5" })
3495
+ children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Print, { variant: "dark", className: "w-5 h-5" })
3142
3496
  }
3143
3497
  )
3144
3498
  ] })
@@ -3147,12 +3501,12 @@ var PdfHeader = ({
3147
3501
  PdfHeader.displayName = "PdfHeader";
3148
3502
 
3149
3503
  // src/components/pdf-viewer/hooks/useContainerWidth.ts
3150
- var React11 = __toESM(require("react"));
3504
+ var React13 = __toESM(require("react"));
3151
3505
  function useContainerWidth(padding = 32) {
3152
- const [containerWidth, setContainerWidth] = React11.useState(0);
3153
- const containerRef = React11.useRef(null);
3154
- const lastWidthRef = React11.useRef(0);
3155
- React11.useEffect(() => {
3506
+ const [containerWidth, setContainerWidth] = React13.useState(0);
3507
+ const containerRef = React13.useRef(null);
3508
+ const lastWidthRef = React13.useRef(0);
3509
+ React13.useEffect(() => {
3156
3510
  const element = containerRef.current;
3157
3511
  if (!element) return;
3158
3512
  const resizeObserver = new ResizeObserver((entries) => {
@@ -3176,9 +3530,9 @@ function useContainerWidth(padding = 32) {
3176
3530
  }
3177
3531
 
3178
3532
  // src/components/pdf-viewer/hooks/usePdfDownload.ts
3179
- var React12 = __toESM(require("react"));
3533
+ var React14 = __toESM(require("react"));
3180
3534
  function usePdfDownload(file, title) {
3181
- const download = React12.useCallback(async () => {
3535
+ const download = React14.useCallback(async () => {
3182
3536
  if (!file) return;
3183
3537
  try {
3184
3538
  let blob;
@@ -3210,11 +3564,11 @@ function usePdfDownload(file, title) {
3210
3564
  }
3211
3565
 
3212
3566
  // src/components/pdf-viewer/hooks/usePdfPrint.ts
3213
- var React13 = __toESM(require("react"));
3567
+ var React15 = __toESM(require("react"));
3214
3568
  function usePdfPrint(file) {
3215
- const [printBlobUrl, setPrintBlobUrl] = React13.useState(null);
3216
- const printFrameRef = React13.useRef(null);
3217
- const preparePrint = React13.useCallback(async () => {
3569
+ const [printBlobUrl, setPrintBlobUrl] = React15.useState(null);
3570
+ const printFrameRef = React15.useRef(null);
3571
+ const preparePrint = React15.useCallback(async () => {
3218
3572
  if (!file) return;
3219
3573
  try {
3220
3574
  let blob;
@@ -3230,14 +3584,14 @@ function usePdfPrint(file) {
3230
3584
  console.error("Failed to prepare PDF for printing:", error);
3231
3585
  }
3232
3586
  }, [file]);
3233
- React13.useEffect(() => {
3587
+ React15.useEffect(() => {
3234
3588
  return () => {
3235
3589
  if (printBlobUrl) {
3236
3590
  URL.revokeObjectURL(printBlobUrl);
3237
3591
  }
3238
3592
  };
3239
3593
  }, [printBlobUrl]);
3240
- const print = React13.useCallback(() => {
3594
+ const print = React15.useCallback(() => {
3241
3595
  if (printFrameRef.current?.contentWindow) {
3242
3596
  printFrameRef.current.contentWindow.print();
3243
3597
  }
@@ -3252,8 +3606,8 @@ function initializePdfWorker(workerUrl) {
3252
3606
  }
3253
3607
 
3254
3608
  // src/components/pdf-viewer/index.tsx
3255
- var import_jsx_runtime16 = require("react/jsx-runtime");
3256
- var PdfViewer = React14.forwardRef(
3609
+ var import_jsx_runtime18 = require("react/jsx-runtime");
3610
+ var PdfViewer = React16.forwardRef(
3257
3611
  ({
3258
3612
  file,
3259
3613
  title,
@@ -3270,35 +3624,35 @@ var PdfViewer = React14.forwardRef(
3270
3624
  const { printFrameRef, printBlobUrl, preparePrint, print } = usePdfPrint(file);
3271
3625
  const download = usePdfDownload(file, title);
3272
3626
  const effectiveWidth = pageWidth || containerWidth;
3273
- const handleLoadSuccess = React14.useCallback(
3627
+ const handleLoadSuccess = React16.useCallback(
3274
3628
  async (numPages) => {
3275
3629
  onLoadSuccess?.(numPages);
3276
3630
  await preparePrint();
3277
3631
  },
3278
3632
  [onLoadSuccess, preparePrint]
3279
3633
  );
3280
- const handleDownload = React14.useCallback(() => {
3634
+ const handleDownload = React16.useCallback(() => {
3281
3635
  if (onDownload) {
3282
3636
  onDownload();
3283
3637
  return;
3284
3638
  }
3285
3639
  download();
3286
3640
  }, [onDownload, download]);
3287
- const handlePrint = React14.useCallback(() => {
3641
+ const handlePrint = React16.useCallback(() => {
3288
3642
  if (onPrint) {
3289
3643
  onPrint();
3290
3644
  return;
3291
3645
  }
3292
3646
  print();
3293
3647
  }, [onPrint, print]);
3294
- return /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
3648
+ return /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
3295
3649
  "div",
3296
3650
  {
3297
3651
  ref,
3298
3652
  className: cn("h-full flex flex-col", className),
3299
3653
  ...props,
3300
3654
  children: [
3301
- printBlobUrl && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
3655
+ printBlobUrl && /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
3302
3656
  "iframe",
3303
3657
  {
3304
3658
  ref: printFrameRef,
@@ -3307,7 +3661,7 @@ var PdfViewer = React14.forwardRef(
3307
3661
  title: "PDF for printing"
3308
3662
  }
3309
3663
  ),
3310
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
3664
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
3311
3665
  PdfHeader,
3312
3666
  {
3313
3667
  title,
@@ -3315,12 +3669,12 @@ var PdfViewer = React14.forwardRef(
3315
3669
  onPrint: handlePrint
3316
3670
  }
3317
3671
  ),
3318
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
3672
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
3319
3673
  "div",
3320
3674
  {
3321
3675
  ref: containerRef,
3322
3676
  className: "flex-1 overflow-y-auto overflow-x-hidden bg-neutral-300",
3323
- children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
3677
+ children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
3324
3678
  PdfDocument,
3325
3679
  {
3326
3680
  file,
@@ -3340,9 +3694,9 @@ var PdfViewer = React14.forwardRef(
3340
3694
  PdfViewer.displayName = "PdfViewer";
3341
3695
 
3342
3696
  // src/components/ui/tabs.tsx
3343
- var React15 = __toESM(require("react"));
3697
+ var React17 = __toESM(require("react"));
3344
3698
  var import_class_variance_authority9 = require("class-variance-authority");
3345
- var import_jsx_runtime17 = require("react/jsx-runtime");
3699
+ var import_jsx_runtime19 = require("react/jsx-runtime");
3346
3700
  var tabsVariants = (0, import_class_variance_authority9.cva)(
3347
3701
  "inline-flex items-center justify-start whitespace-nowrap transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-border-interactive focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 h-10",
3348
3702
  {
@@ -3356,17 +3710,17 @@ var tabsVariants = (0, import_class_variance_authority9.cva)(
3356
3710
  }
3357
3711
  }
3358
3712
  );
3359
- var TabsContext = React15.createContext(
3713
+ var TabsContext = React17.createContext(
3360
3714
  void 0
3361
3715
  );
3362
3716
  function useTabsContext() {
3363
- const context = React15.useContext(TabsContext);
3717
+ const context = React17.useContext(TabsContext);
3364
3718
  if (!context) {
3365
3719
  throw new Error("Tabs components must be used within a Tabs provider");
3366
3720
  }
3367
3721
  return context;
3368
3722
  }
3369
- var Tabs = React15.forwardRef((props, ref) => {
3723
+ var Tabs = React17.forwardRef((props, ref) => {
3370
3724
  const {
3371
3725
  className,
3372
3726
  value,
@@ -3375,7 +3729,7 @@ var Tabs = React15.forwardRef((props, ref) => {
3375
3729
  children,
3376
3730
  ...restProps
3377
3731
  } = props;
3378
- const contextValue = React15.useMemo(
3732
+ const contextValue = React17.useMemo(
3379
3733
  () => ({
3380
3734
  activeTab: value,
3381
3735
  setActiveTab: onValueChange,
@@ -3383,13 +3737,13 @@ var Tabs = React15.forwardRef((props, ref) => {
3383
3737
  }),
3384
3738
  [value, onValueChange, variant]
3385
3739
  );
3386
- return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(TabsContext.Provider, { value: contextValue, children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { ref, className: cn("w-full", className), ...restProps, children }) });
3740
+ return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(TabsContext.Provider, { value: contextValue, children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("div", { ref, className: cn("w-full", className), ...restProps, children }) });
3387
3741
  });
3388
3742
  Tabs.displayName = "Tabs";
3389
- var TabsList = React15.forwardRef(
3743
+ var TabsList = React17.forwardRef(
3390
3744
  (props, ref) => {
3391
3745
  const { className, children, ...restProps } = props;
3392
- return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
3746
+ return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
3393
3747
  "div",
3394
3748
  {
3395
3749
  ref,
@@ -3405,7 +3759,7 @@ TabsList.displayName = "TabsList";
3405
3759
  var getTabTypographyStyles = (isActive) => ({
3406
3760
  font: isActive ? "var(--typography-label-sm-bold)" : "var(--typography-label-sm-regular)"
3407
3761
  });
3408
- var TabsTrigger = React15.forwardRef(
3762
+ var TabsTrigger = React17.forwardRef(
3409
3763
  (props, ref) => {
3410
3764
  const { className, value, disabled, style, children, ...restProps } = props;
3411
3765
  const { activeTab, setActiveTab, variant } = useTabsContext();
@@ -3413,22 +3767,22 @@ var TabsTrigger = React15.forwardRef(
3413
3767
  throw new Error("TabsTrigger must have a value prop");
3414
3768
  }
3415
3769
  const isActive = activeTab === value;
3416
- const tokenStyles = React15.useMemo(
3770
+ const tokenStyles = React17.useMemo(
3417
3771
  () => ({
3418
3772
  ...getTabTypographyStyles(isActive),
3419
3773
  ...style
3420
3774
  }),
3421
3775
  [isActive, style]
3422
3776
  );
3423
- const triggerClassName = React15.useMemo(
3777
+ const triggerClassName = React17.useMemo(
3424
3778
  () => cn(tabsVariants({ variant }), className),
3425
3779
  [variant, className]
3426
3780
  );
3427
- const handleClick = React15.useCallback(() => {
3781
+ const handleClick = React17.useCallback(() => {
3428
3782
  if (disabled) return;
3429
3783
  setActiveTab(value);
3430
3784
  }, [disabled, setActiveTab, value]);
3431
- return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
3785
+ return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
3432
3786
  "button",
3433
3787
  {
3434
3788
  ref,
@@ -3442,13 +3796,13 @@ var TabsTrigger = React15.forwardRef(
3442
3796
  disabled,
3443
3797
  onClick: handleClick,
3444
3798
  ...restProps,
3445
- children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("span", { className: "pl-3 pr-6 py-2", children })
3799
+ children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("span", { className: "pl-3 pr-6 py-2", children })
3446
3800
  }
3447
3801
  );
3448
3802
  }
3449
3803
  );
3450
3804
  TabsTrigger.displayName = "TabsTrigger";
3451
- var TabsContent = React15.forwardRef(
3805
+ var TabsContent = React17.forwardRef(
3452
3806
  (props, ref) => {
3453
3807
  const { className, value, children, ...restProps } = props;
3454
3808
  const { activeTab } = useTabsContext();
@@ -3459,7 +3813,7 @@ var TabsContent = React15.forwardRef(
3459
3813
  if (!isActive) {
3460
3814
  return null;
3461
3815
  }
3462
- return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
3816
+ return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
3463
3817
  "div",
3464
3818
  {
3465
3819
  ref,
@@ -3477,11 +3831,11 @@ var TabsContent = React15.forwardRef(
3477
3831
  TabsContent.displayName = "TabsContent";
3478
3832
 
3479
3833
  // src/components/ui/dropdown-menu.tsx
3480
- var React16 = __toESM(require("react"));
3834
+ var React18 = __toESM(require("react"));
3481
3835
  var DropdownMenuPrimitive = __toESM(require("@radix-ui/react-dropdown-menu"));
3482
- var import_jsx_runtime18 = require("react/jsx-runtime");
3836
+ var import_jsx_runtime20 = require("react/jsx-runtime");
3483
3837
  var DropdownMenu = DropdownMenuPrimitive.Root;
3484
- var DropdownMenuTrigger = React16.forwardRef(({ className, icon, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
3838
+ var DropdownMenuTrigger = React18.forwardRef(({ className, icon, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(
3485
3839
  DropdownMenuPrimitive.Trigger,
3486
3840
  {
3487
3841
  ref,
@@ -3491,7 +3845,7 @@ var DropdownMenuTrigger = React16.forwardRef(({ className, icon, children, ...pr
3491
3845
  ),
3492
3846
  ...props,
3493
3847
  children: [
3494
- icon || /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(MoreMenu, { className: "size-4" }),
3848
+ icon || /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(MoreMenu, { className: "size-4" }),
3495
3849
  children
3496
3850
  ]
3497
3851
  }
@@ -3501,7 +3855,7 @@ var DropdownMenuGroup = DropdownMenuPrimitive.Group;
3501
3855
  var DropdownMenuPortal = DropdownMenuPrimitive.Portal;
3502
3856
  var DropdownMenuSub = DropdownMenuPrimitive.Sub;
3503
3857
  var DropdownMenuRadioGroup = DropdownMenuPrimitive.RadioGroup;
3504
- var DropdownMenuSubTrigger = React16.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
3858
+ var DropdownMenuSubTrigger = React18.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(
3505
3859
  DropdownMenuPrimitive.SubTrigger,
3506
3860
  {
3507
3861
  ref,
@@ -3514,12 +3868,12 @@ var DropdownMenuSubTrigger = React16.forwardRef(({ className, inset, children, .
3514
3868
  ...props,
3515
3869
  children: [
3516
3870
  children,
3517
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(ChevronRight, { className: "ml-auto" })
3871
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(ChevronRight, { className: "ml-auto" })
3518
3872
  ]
3519
3873
  }
3520
3874
  ));
3521
3875
  DropdownMenuSubTrigger.displayName = DropdownMenuPrimitive.SubTrigger.displayName;
3522
- var DropdownMenuSubContent = React16.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
3876
+ var DropdownMenuSubContent = React18.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
3523
3877
  DropdownMenuPrimitive.SubContent,
3524
3878
  {
3525
3879
  ref,
@@ -3531,7 +3885,7 @@ var DropdownMenuSubContent = React16.forwardRef(({ className, ...props }, ref) =
3531
3885
  }
3532
3886
  ));
3533
3887
  DropdownMenuSubContent.displayName = DropdownMenuPrimitive.SubContent.displayName;
3534
- var DropdownMenuContent = React16.forwardRef(({ className, sideOffset = 4, align = "end", ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
3888
+ var DropdownMenuContent = React18.forwardRef(({ className, sideOffset = 4, align = "end", ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
3535
3889
  DropdownMenuPrimitive.Content,
3536
3890
  {
3537
3891
  ref,
@@ -3545,7 +3899,7 @@ var DropdownMenuContent = React16.forwardRef(({ className, sideOffset = 4, align
3545
3899
  }
3546
3900
  ) }));
3547
3901
  DropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName;
3548
- var DropdownMenuItem = React16.forwardRef(({ className, inset, style, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
3902
+ var DropdownMenuItem = React18.forwardRef(({ className, inset, style, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
3549
3903
  DropdownMenuPrimitive.Item,
3550
3904
  {
3551
3905
  ref,
@@ -3562,7 +3916,7 @@ var DropdownMenuItem = React16.forwardRef(({ className, inset, style, ...props }
3562
3916
  }
3563
3917
  ));
3564
3918
  DropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName;
3565
- var DropdownMenuCheckboxItem = React16.forwardRef(({ className, children, style, checked, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
3919
+ var DropdownMenuCheckboxItem = React18.forwardRef(({ className, children, style, checked, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(
3566
3920
  DropdownMenuPrimitive.CheckboxItem,
3567
3921
  {
3568
3922
  ref,
@@ -3577,7 +3931,7 @@ var DropdownMenuCheckboxItem = React16.forwardRef(({ className, children, style,
3577
3931
  },
3578
3932
  ...props,
3579
3933
  children: [
3580
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
3934
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
3581
3935
  Checkbox,
3582
3936
  {
3583
3937
  checked: checked === true,
@@ -3585,12 +3939,12 @@ var DropdownMenuCheckboxItem = React16.forwardRef(({ className, children, style,
3585
3939
  "aria-hidden": "true"
3586
3940
  }
3587
3941
  ),
3588
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("span", { className: "flex-1", children })
3942
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("span", { className: "flex-1", children })
3589
3943
  ]
3590
3944
  }
3591
3945
  ));
3592
3946
  DropdownMenuCheckboxItem.displayName = DropdownMenuPrimitive.CheckboxItem.displayName;
3593
- var DropdownMenuRadioItem = React16.forwardRef(({ className, children, style, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
3947
+ var DropdownMenuRadioItem = React18.forwardRef(({ className, children, style, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(
3594
3948
  DropdownMenuPrimitive.RadioItem,
3595
3949
  {
3596
3950
  ref,
@@ -3604,13 +3958,13 @@ var DropdownMenuRadioItem = React16.forwardRef(({ className, children, style, ..
3604
3958
  },
3605
3959
  ...props,
3606
3960
  children: [
3607
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("span", { className: "h-2 w-2 rounded-full bg-current" }) }) }),
3961
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("span", { className: "h-2 w-2 rounded-full bg-current" }) }) }),
3608
3962
  children
3609
3963
  ]
3610
3964
  }
3611
3965
  ));
3612
3966
  DropdownMenuRadioItem.displayName = DropdownMenuPrimitive.RadioItem.displayName;
3613
- var DropdownMenuLabel = React16.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
3967
+ var DropdownMenuLabel = React18.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
3614
3968
  DropdownMenuPrimitive.Label,
3615
3969
  {
3616
3970
  ref,
@@ -3623,7 +3977,7 @@ var DropdownMenuLabel = React16.forwardRef(({ className, inset, ...props }, ref)
3623
3977
  }
3624
3978
  ));
3625
3979
  DropdownMenuLabel.displayName = DropdownMenuPrimitive.Label.displayName;
3626
- var DropdownMenuSeparator = React16.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
3980
+ var DropdownMenuSeparator = React18.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
3627
3981
  DropdownMenuPrimitive.Separator,
3628
3982
  {
3629
3983
  ref,
@@ -3636,7 +3990,7 @@ var DropdownMenuShortcut = ({
3636
3990
  className,
3637
3991
  ...props
3638
3992
  }) => {
3639
- return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
3993
+ return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
3640
3994
  "span",
3641
3995
  {
3642
3996
  className: cn("ml-auto text-xs tracking-widest opacity-60", className),
@@ -3647,21 +4001,21 @@ var DropdownMenuShortcut = ({
3647
4001
  DropdownMenuShortcut.displayName = "DropdownMenuShortcut";
3648
4002
 
3649
4003
  // src/components/ui/charts/chart-legend.tsx
3650
- var import_jsx_runtime19 = require("react/jsx-runtime");
4004
+ var import_jsx_runtime21 = require("react/jsx-runtime");
3651
4005
  function ChartLegend({
3652
4006
  items,
3653
4007
  x = 0,
3654
4008
  y = 550,
3655
4009
  className = ""
3656
4010
  }) {
3657
- return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("foreignObject", { x, y, width: "100%", height: "40", children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
4011
+ return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("foreignObject", { x, y, width: "100%", height: "40", children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
3658
4012
  "div",
3659
4013
  {
3660
4014
  className: `flex justify-center items-center gap-6 ${className}`,
3661
4015
  style: { height: "100%" },
3662
- children: items.map(({ key, color, label }) => /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)("div", { className: "flex items-center gap-2", children: [
3663
- /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("div", { className: "w-3 h-3", style: { backgroundColor: color } }),
3664
- /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(Typography, { variant: "body-xs", children: label || key })
4016
+ children: items.map(({ key, color, label }) => /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)("div", { className: "flex items-center gap-2", children: [
4017
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("div", { className: "w-3 h-3", style: { backgroundColor: color } }),
4018
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(Typography, { variant: "body-xs", children: label || key })
3665
4019
  ] }, key))
3666
4020
  }
3667
4021
  ) });
@@ -3779,12 +4133,12 @@ var formatLargeNumber = (value) => {
3779
4133
  };
3780
4134
 
3781
4135
  // src/components/ui/charts/chart-labels.tsx
3782
- var import_jsx_runtime20 = require("react/jsx-runtime");
4136
+ var import_jsx_runtime22 = require("react/jsx-runtime");
3783
4137
  var createCustomXAxisLabel = (text, yOffset = 40) => {
3784
4138
  const CustomXAxisLabel = ({ viewBox }) => {
3785
4139
  if (!viewBox) return null;
3786
4140
  const { x, y, width } = viewBox;
3787
- return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("g", { children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("foreignObject", { x, y: y + yOffset, width, height: 20, children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("div", { className: "flex justify-center w-full", children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(Typography, { variant: "label-xs-bold", className: "text-secondary", children: text }) }) }) });
4141
+ return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("g", { children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("foreignObject", { x, y: y + yOffset, width, height: 20, children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("div", { className: "flex justify-center w-full", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(Typography, { variant: "label-xs-bold", className: "text-secondary", children: text }) }) }) });
3788
4142
  };
3789
4143
  CustomXAxisLabel.displayName = "CustomXAxisLabel";
3790
4144
  return CustomXAxisLabel;
@@ -3794,7 +4148,7 @@ var createCustomYAxisLabel = (text, leftMargin) => {
3794
4148
  if (!viewBox) return null;
3795
4149
  const { x, y, height } = viewBox;
3796
4150
  const offset = leftMargin ? leftMargin + 10 : 110;
3797
- return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("g", { children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("foreignObject", { x: x - offset, y, width: 100, height, children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("div", { className: "flex items-center justify-center h-full transform -rotate-90 whitespace-nowrap", children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(Typography, { variant: "label-xs-bold", className: "text-secondary", children: text }) }) }) });
4151
+ return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("g", { children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("foreignObject", { x: x - offset, y, width: 100, height, children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("div", { className: "flex items-center justify-center h-full transform -rotate-90 whitespace-nowrap", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(Typography, { variant: "label-xs-bold", className: "text-secondary", children: text }) }) }) });
3798
4152
  };
3799
4153
  CustomYAxisLabel.displayName = "CustomYAxisLabel";
3800
4154
  return CustomYAxisLabel;
@@ -3803,14 +4157,14 @@ var createCustomYAxisRightLabel = (text) => {
3803
4157
  const CustomYAxisRightLabel = ({ viewBox }) => {
3804
4158
  if (!viewBox) return null;
3805
4159
  const { x, y, width, height } = viewBox;
3806
- return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("g", { children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("foreignObject", { x: x + width - 70, y, width: 120, height, children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("div", { className: "flex items-center justify-center h-full transform rotate-90 whitespace-nowrap", children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(Typography, { variant: "label-xs-bold", className: "text-secondary", children: text }) }) }) });
4160
+ return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("g", { children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("foreignObject", { x: x + width - 70, y, width: 120, height, children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("div", { className: "flex items-center justify-center h-full transform rotate-90 whitespace-nowrap", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(Typography, { variant: "label-xs-bold", className: "text-secondary", children: text }) }) }) });
3807
4161
  };
3808
4162
  CustomYAxisRightLabel.displayName = "CustomYAxisRightLabel";
3809
4163
  return CustomYAxisRightLabel;
3810
4164
  };
3811
4165
  var customXAxisTick = (props) => {
3812
4166
  const { x, y, payload } = props;
3813
- return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("g", { transform: `translate(${x},${y})`, children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
4167
+ return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("g", { transform: `translate(${x},${y})`, children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
3814
4168
  "foreignObject",
3815
4169
  {
3816
4170
  x: -20,
@@ -3818,12 +4172,12 @@ var customXAxisTick = (props) => {
3818
4172
  width: 40,
3819
4173
  height: 20,
3820
4174
  style: { overflow: "visible" },
3821
- children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
4175
+ children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
3822
4176
  "div",
3823
4177
  {
3824
4178
  className: "flex items-start justify-center h-full",
3825
4179
  style: { overflow: "visible" },
3826
- children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
4180
+ children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
3827
4181
  Typography,
3828
4182
  {
3829
4183
  variant: "body-xs",
@@ -3838,7 +4192,7 @@ var customXAxisTick = (props) => {
3838
4192
  };
3839
4193
  var customXAxisTickRotated = (props) => {
3840
4194
  const { x, y, payload } = props;
3841
- return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("g", { transform: `translate(${x},${y})`, children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
4195
+ return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("g", { transform: `translate(${x},${y})`, children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
3842
4196
  "text",
3843
4197
  {
3844
4198
  x: 0,
@@ -3857,25 +4211,25 @@ var customYAxisTick = (props) => {
3857
4211
  const { x, y, payload } = props;
3858
4212
  const text = String(payload.value);
3859
4213
  const estimatedWidth = Math.max(text.length * 8, 80);
3860
- return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
4214
+ return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
3861
4215
  "foreignObject",
3862
4216
  {
3863
4217
  x: x - estimatedWidth + 5,
3864
4218
  y: y - 6,
3865
4219
  width: estimatedWidth,
3866
4220
  height: 15,
3867
- children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("div", { className: "flex justify-end w-full", children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(Typography, { variant: "body-xs", className: "text-secondary", children: payload.value }) })
4221
+ children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("div", { className: "flex justify-end w-full", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(Typography, { variant: "body-xs", className: "text-secondary", children: payload.value }) })
3868
4222
  }
3869
4223
  );
3870
4224
  };
3871
4225
 
3872
4226
  // src/components/ui/charts/chart-tooltip.tsx
3873
- var import_jsx_runtime21 = require("react/jsx-runtime");
4227
+ var import_jsx_runtime23 = require("react/jsx-runtime");
3874
4228
  function TooltipContainer({
3875
4229
  children,
3876
4230
  className = ""
3877
4231
  }) {
3878
- return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
4232
+ return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
3879
4233
  "div",
3880
4234
  {
3881
4235
  className: `bg-light border border-subtle rounded p-2.5 text-dark ${className}`,
@@ -3889,10 +4243,10 @@ function TooltipItem({
3889
4243
  value,
3890
4244
  className = ""
3891
4245
  }) {
3892
- return /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(import_jsx_runtime21.Fragment, { children: [
3893
- /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("br", {}),
3894
- /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(Typography, { variant: "label-sm", className, children: [
3895
- /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
4246
+ return /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(import_jsx_runtime23.Fragment, { children: [
4247
+ /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("br", {}),
4248
+ /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(Typography, { variant: "label-sm", className, children: [
4249
+ /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
3896
4250
  "span",
3897
4251
  {
3898
4252
  className: "inline-block w-3 h-3 mr-1.5",
@@ -3910,9 +4264,9 @@ function GenericTooltip({
3910
4264
  items,
3911
4265
  className = ""
3912
4266
  }) {
3913
- return /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(TooltipContainer, { className, children: [
3914
- title && /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(Typography, { variant: "label-sm-bold", children: title }),
3915
- items.map((item, index) => /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
4267
+ return /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(TooltipContainer, { className, children: [
4268
+ title && /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(Typography, { variant: "label-sm-bold", children: title }),
4269
+ items.map((item, index) => /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
3916
4270
  TooltipItem,
3917
4271
  {
3918
4272
  color: item.color,
@@ -3927,7 +4281,7 @@ function GenericTooltip({
3927
4281
  // src/components/ui/charts/bar-chart.tsx
3928
4282
  var import_react2 = require("react");
3929
4283
  var import_recharts = require("recharts");
3930
- var import_jsx_runtime22 = require("react/jsx-runtime");
4284
+ var import_jsx_runtime24 = require("react/jsx-runtime");
3931
4285
  var BarChart = (0, import_react2.forwardRef)(
3932
4286
  ({
3933
4287
  data,
@@ -3954,19 +4308,19 @@ var BarChart = (0, import_react2.forwardRef)(
3954
4308
  };
3955
4309
  const defaultLegendItems = showLegend && legendItems.length === 0 ? [{ key: yAxisKey, color: barColor, label: yAxisKey }] : legendItems;
3956
4310
  const hasData = data && data.length > 0;
3957
- return /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)(
4311
+ return /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)(
3958
4312
  "div",
3959
4313
  {
3960
4314
  ref,
3961
4315
  className: `bg-light border border-subtle mx-6 ${className}`,
3962
4316
  children: [
3963
- /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("div", { className: "flex items-center justify-between px-3 py-2 border-b border-subtle", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(Typography, { variant: "label-sm-bold", children: title }) }),
3964
- /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("div", { className: "pt-2 px-2", children: hasData ? /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
4317
+ /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("div", { className: "flex items-center justify-between px-3 py-2 border-b border-subtle", children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(Typography, { variant: "label-sm-bold", children: title }) }),
4318
+ /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("div", { className: "pt-2 px-2", children: hasData ? /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
3965
4319
  import_recharts.ResponsiveContainer,
3966
4320
  {
3967
4321
  width: "100%",
3968
4322
  height: CHART_CONSTANTS.STANDARD_HEIGHT,
3969
- children: /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)(
4323
+ children: /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)(
3970
4324
  import_recharts.BarChart,
3971
4325
  {
3972
4326
  data,
@@ -3978,7 +4332,7 @@ var BarChart = (0, import_react2.forwardRef)(
3978
4332
  onClick: handleClick,
3979
4333
  layout,
3980
4334
  children: [
3981
- /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
4335
+ /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
3982
4336
  import_recharts.XAxis,
3983
4337
  {
3984
4338
  dataKey: xAxisKey,
@@ -3992,7 +4346,7 @@ var BarChart = (0, import_react2.forwardRef)(
3992
4346
  label: xAxisLabel ? createCustomXAxisLabel(xAxisLabel, 80) : void 0
3993
4347
  }
3994
4348
  ),
3995
- /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
4349
+ /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
3996
4350
  import_recharts.YAxis,
3997
4351
  {
3998
4352
  axisLine: false,
@@ -4003,7 +4357,7 @@ var BarChart = (0, import_react2.forwardRef)(
4003
4357
  type: yAxisType
4004
4358
  }
4005
4359
  ),
4006
- /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
4360
+ /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
4007
4361
  import_recharts.Tooltip,
4008
4362
  {
4009
4363
  content: ({
@@ -4012,7 +4366,7 @@ var BarChart = (0, import_react2.forwardRef)(
4012
4366
  label
4013
4367
  }) => {
4014
4368
  if (active && payload && payload.length) {
4015
- return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
4369
+ return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
4016
4370
  GenericTooltip,
4017
4371
  {
4018
4372
  title: label?.toString(),
@@ -4028,7 +4382,7 @@ var BarChart = (0, import_react2.forwardRef)(
4028
4382
  }
4029
4383
  }
4030
4384
  ),
4031
- /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
4385
+ /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
4032
4386
  import_recharts.Bar,
4033
4387
  {
4034
4388
  dataKey: barDataKey || yAxisKey,
@@ -4036,12 +4390,12 @@ var BarChart = (0, import_react2.forwardRef)(
4036
4390
  name: barDataKey || yAxisKey
4037
4391
  }
4038
4392
  ),
4039
- showLegend && defaultLegendItems.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(ChartLegend, { items: defaultLegendItems })
4393
+ showLegend && defaultLegendItems.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(ChartLegend, { items: defaultLegendItems })
4040
4394
  ]
4041
4395
  }
4042
4396
  )
4043
4397
  }
4044
- ) : /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("div", { className: "flex items-center justify-center h-[500px]", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(Typography, { variant: "body-md", className: "text-secondary", children: "No data is available" }) }) })
4398
+ ) : /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("div", { className: "flex items-center justify-center h-[500px]", children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(Typography, { variant: "body-md", className: "text-secondary", children: "No data is available" }) }) })
4045
4399
  ]
4046
4400
  }
4047
4401
  );
@@ -4052,7 +4406,7 @@ BarChart.displayName = "BarChart";
4052
4406
  // src/components/ui/charts/line-chart.tsx
4053
4407
  var import_react3 = require("react");
4054
4408
  var import_recharts2 = require("recharts");
4055
- var import_jsx_runtime23 = require("react/jsx-runtime");
4409
+ var import_jsx_runtime25 = require("react/jsx-runtime");
4056
4410
  var LineChart = (0, import_react3.forwardRef)(
4057
4411
  ({
4058
4412
  data,
@@ -4081,19 +4435,19 @@ var LineChart = (0, import_react3.forwardRef)(
4081
4435
  )
4082
4436
  );
4083
4437
  const hasData = data && data.length > 0;
4084
- return /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(
4438
+ return /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(
4085
4439
  "div",
4086
4440
  {
4087
4441
  ref,
4088
4442
  className: `bg-light border border-subtle mx-6 ${className}`,
4089
4443
  children: [
4090
- /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: "flex items-center justify-between px-3 py-2 border-b border-subtle", children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(Typography, { variant: "label-sm-bold", children: title }) }),
4091
- /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: "pt-2 px-2", children: hasData ? /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
4444
+ /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { className: "flex items-center justify-between px-3 py-2 border-b border-subtle", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(Typography, { variant: "label-sm-bold", children: title }) }),
4445
+ /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { className: "pt-2 px-2", children: hasData ? /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
4092
4446
  import_recharts2.ResponsiveContainer,
4093
4447
  {
4094
4448
  width: "100%",
4095
4449
  height: CHART_CONSTANTS.STANDARD_HEIGHT,
4096
- children: /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(
4450
+ children: /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(
4097
4451
  import_recharts2.LineChart,
4098
4452
  {
4099
4453
  data,
@@ -4104,7 +4458,7 @@ var LineChart = (0, import_react3.forwardRef)(
4104
4458
  },
4105
4459
  onClick: handleClick,
4106
4460
  children: [
4107
- /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
4461
+ /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
4108
4462
  import_recharts2.XAxis,
4109
4463
  {
4110
4464
  dataKey: xAxisKey,
@@ -4116,7 +4470,7 @@ var LineChart = (0, import_react3.forwardRef)(
4116
4470
  label: xAxisLabel ? createCustomXAxisLabel(xAxisLabel) : void 0
4117
4471
  }
4118
4472
  ),
4119
- /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
4473
+ /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
4120
4474
  import_recharts2.YAxis,
4121
4475
  {
4122
4476
  axisLine: false,
@@ -4125,7 +4479,7 @@ var LineChart = (0, import_react3.forwardRef)(
4125
4479
  label: yAxisLabel ? createCustomYAxisLabel(yAxisLabel, 40) : void 0
4126
4480
  }
4127
4481
  ),
4128
- /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
4482
+ /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
4129
4483
  import_recharts2.Tooltip,
4130
4484
  {
4131
4485
  content: ({
@@ -4134,7 +4488,7 @@ var LineChart = (0, import_react3.forwardRef)(
4134
4488
  label
4135
4489
  }) => {
4136
4490
  if (active && payload && payload.length) {
4137
- return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
4491
+ return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
4138
4492
  GenericTooltip,
4139
4493
  {
4140
4494
  title: label?.toString(),
@@ -4150,7 +4504,7 @@ var LineChart = (0, import_react3.forwardRef)(
4150
4504
  }
4151
4505
  }
4152
4506
  ),
4153
- series.map((s, index) => /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
4507
+ series.map((s, index) => /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
4154
4508
  import_recharts2.Line,
4155
4509
  {
4156
4510
  type: "monotone",
@@ -4162,12 +4516,12 @@ var LineChart = (0, import_react3.forwardRef)(
4162
4516
  },
4163
4517
  s.dataKey
4164
4518
  )),
4165
- showLegend && defaultLegendItems.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(ChartLegend, { items: defaultLegendItems })
4519
+ showLegend && defaultLegendItems.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(ChartLegend, { items: defaultLegendItems })
4166
4520
  ]
4167
4521
  }
4168
4522
  )
4169
4523
  }
4170
- ) : /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: "flex items-center justify-center h-[500px]", children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(Typography, { variant: "body-md", className: "text-secondary", children: "No data is available" }) }) })
4524
+ ) : /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { className: "flex items-center justify-center h-[500px]", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(Typography, { variant: "body-md", className: "text-secondary", children: "No data is available" }) }) })
4171
4525
  ]
4172
4526
  }
4173
4527
  );
@@ -4178,7 +4532,7 @@ LineChart.displayName = "LineChart";
4178
4532
  // src/components/ui/charts/pie-chart.tsx
4179
4533
  var import_react4 = require("react");
4180
4534
  var import_recharts3 = require("recharts");
4181
- var import_jsx_runtime24 = require("react/jsx-runtime");
4535
+ var import_jsx_runtime26 = require("react/jsx-runtime");
4182
4536
  var PieChart = (0, import_react4.forwardRef)(
4183
4537
  ({
4184
4538
  data,
@@ -4206,20 +4560,20 @@ var PieChart = (0, import_react4.forwardRef)(
4206
4560
  )
4207
4561
  );
4208
4562
  const hasData = data && data.length > 0;
4209
- return /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)(
4563
+ return /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(
4210
4564
  "div",
4211
4565
  {
4212
4566
  ref,
4213
4567
  className: `bg-light border border-subtle mx-6 ${className}`,
4214
4568
  children: [
4215
- /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("div", { className: "flex items-center justify-between px-3 py-2 border-b border-subtle", children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(Typography, { variant: "label-sm-bold", children: title }) }),
4216
- /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("div", { className: "pt-2 px-2", children: hasData ? /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("div", { className: "flex justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)(
4569
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("div", { className: "flex items-center justify-between px-3 py-2 border-b border-subtle", children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(Typography, { variant: "label-sm-bold", children: title }) }),
4570
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("div", { className: "pt-2 px-2", children: hasData ? /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("div", { className: "flex justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(
4217
4571
  import_recharts3.PieChart,
4218
4572
  {
4219
4573
  width: 600,
4220
4574
  height: CHART_CONSTANTS.LARGE_HEIGHT,
4221
4575
  children: [
4222
- /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
4576
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
4223
4577
  import_recharts3.Pie,
4224
4578
  {
4225
4579
  data,
@@ -4231,7 +4585,7 @@ var PieChart = (0, import_react4.forwardRef)(
4231
4585
  label: showLabels,
4232
4586
  labelLine: false,
4233
4587
  onClick: handleClick,
4234
- children: data.map((entry, index) => /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
4588
+ children: data.map((entry, index) => /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
4235
4589
  import_recharts3.Cell,
4236
4590
  {
4237
4591
  fill: entry.color || getSeriesColor(index)
@@ -4240,7 +4594,7 @@ var PieChart = (0, import_react4.forwardRef)(
4240
4594
  ))
4241
4595
  }
4242
4596
  ),
4243
- /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
4597
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
4244
4598
  import_recharts3.Tooltip,
4245
4599
  {
4246
4600
  content: ({
@@ -4249,7 +4603,7 @@ var PieChart = (0, import_react4.forwardRef)(
4249
4603
  }) => {
4250
4604
  if (active && payload && payload.length && payload[0]) {
4251
4605
  const data2 = payload[0].payload;
4252
- return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
4606
+ return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
4253
4607
  GenericTooltip,
4254
4608
  {
4255
4609
  title: data2.name,
@@ -4267,10 +4621,10 @@ var PieChart = (0, import_react4.forwardRef)(
4267
4621
  }
4268
4622
  }
4269
4623
  ),
4270
- showLegend && defaultLegendItems.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(ChartLegend, { items: defaultLegendItems, y: 400 })
4624
+ showLegend && defaultLegendItems.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(ChartLegend, { items: defaultLegendItems, y: 400 })
4271
4625
  ]
4272
4626
  }
4273
- ) }) : /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("div", { className: "flex items-center justify-center h-[500px]", children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(Typography, { variant: "body-md", className: "text-secondary", children: "No data is available" }) }) })
4627
+ ) }) : /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("div", { className: "flex items-center justify-center h-[500px]", children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(Typography, { variant: "body-md", className: "text-secondary", children: "No data is available" }) }) })
4274
4628
  ]
4275
4629
  }
4276
4630
  );
@@ -4281,7 +4635,7 @@ PieChart.displayName = "PieChart";
4281
4635
  // src/components/ui/table.tsx
4282
4636
  var import_react5 = require("react");
4283
4637
  var import_react_table = require("@tanstack/react-table");
4284
- var import_jsx_runtime25 = require("react/jsx-runtime");
4638
+ var import_jsx_runtime27 = require("react/jsx-runtime");
4285
4639
  function Table({
4286
4640
  table,
4287
4641
  className,
@@ -4311,15 +4665,15 @@ function Table({
4311
4665
  },
4312
4666
  [table]
4313
4667
  );
4314
- return /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)("div", { children: [
4315
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { className: cn("overflow-x-auto", className), children: /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)("table", { className: "min-w-full divide-y divide-border", children: [
4316
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("thead", { className: "bg-dark text-light", children: table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("tr", { children: headerGroup.headers.map((header) => /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("th", { className: "px-6 py-3 text-left", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(
4668
+ return /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)("div", { children: [
4669
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("div", { className: cn("overflow-x-auto", className), children: /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)("table", { className: "min-w-full divide-y divide-border", children: [
4670
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("thead", { className: "bg-dark text-light", children: table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("tr", { children: headerGroup.headers.map((header) => /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("th", { className: "px-6 py-3 text-left", children: /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)(
4317
4671
  "div",
4318
4672
  {
4319
4673
  className: `flex items-center space-x-1 ${header.column.getCanSort() ? "cursor-pointer select-none" : ""}`,
4320
4674
  onClick: header.column.getToggleSortingHandler(),
4321
4675
  children: [
4322
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
4676
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
4323
4677
  Typography,
4324
4678
  {
4325
4679
  variant: "label-xs",
@@ -4330,19 +4684,19 @@ function Table({
4330
4684
  )
4331
4685
  }
4332
4686
  ),
4333
- header.column.getCanSort() && /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)("span", { className: "ml-1", children: [
4334
- header.column.getIsSorted() === "asc" && /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(ChevronUp, { className: "w-4 h-4 text-light" }),
4335
- header.column.getIsSorted() === "desc" && /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(ChevronDown, { className: "w-4 h-4 text-light" })
4687
+ header.column.getCanSort() && /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)("span", { className: "ml-1", children: [
4688
+ header.column.getIsSorted() === "asc" && /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(ChevronUp, { className: "w-4 h-4 text-light" }),
4689
+ header.column.getIsSorted() === "desc" && /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(ChevronDown, { className: "w-4 h-4 text-light" })
4336
4690
  ] })
4337
4691
  ]
4338
4692
  }
4339
4693
  ) }, header.id)) }, headerGroup.id)) }),
4340
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("tbody", { className: "bg-light divide-y divide-border", children: table.getRowModel().rows.map((row) => /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("tr", { children: row.getVisibleCells().map((cell) => /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("td", { className: "px-6 py-4 whitespace-nowrap", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(Typography, { variant: "body-sm", children: (0, import_react_table.flexRender)(
4694
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("tbody", { className: "bg-light divide-y divide-border", children: table.getRowModel().rows.map((row) => /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("tr", { children: row.getVisibleCells().map((cell) => /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("td", { className: "px-6 py-4 whitespace-nowrap", children: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(Typography, { variant: "body-sm", children: (0, import_react_table.flexRender)(
4341
4695
  cell.column.columnDef.cell,
4342
4696
  cell.getContext()
4343
4697
  ) }) }, cell.id)) }, row.id)) })
4344
4698
  ] }) }),
4345
- showPagination && /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(
4699
+ showPagination && /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)(
4346
4700
  "div",
4347
4701
  {
4348
4702
  className: cn(
@@ -4350,9 +4704,9 @@ function Table({
4350
4704
  paginationClassName
4351
4705
  ),
4352
4706
  children: [
4353
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { className: "flex items-center", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(Typography, { variant: "body-sm", className: "text-secondary", children: showingText }) }),
4354
- /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)("div", { className: "flex items-center space-x-1", children: [
4355
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
4707
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("div", { className: "flex items-center", children: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(Typography, { variant: "body-sm", className: "text-secondary", children: showingText }) }),
4708
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)("div", { className: "flex items-center space-x-1", children: [
4709
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
4356
4710
  Button,
4357
4711
  {
4358
4712
  variant: "ghost",
@@ -4360,7 +4714,7 @@ function Table({
4360
4714
  onClick: handlePreviousPage,
4361
4715
  disabled: !table.getCanPreviousPage(),
4362
4716
  className: "p-2",
4363
- children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(ChevronLeft, { className: "w-4 h-4" })
4717
+ children: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(ChevronLeft, { className: "w-4 h-4" })
4364
4718
  }
4365
4719
  ),
4366
4720
  Array.from(
@@ -4377,7 +4731,7 @@ function Table({
4377
4731
  pageNumber = currentPage - 2 + i;
4378
4732
  }
4379
4733
  const isActive = pageNumber === currentPage;
4380
- return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
4734
+ return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
4381
4735
  Button,
4382
4736
  {
4383
4737
  variant: isActive ? "default" : "ghost",
@@ -4390,11 +4744,11 @@ function Table({
4390
4744
  );
4391
4745
  }
4392
4746
  ),
4393
- table.getPageCount() > 5 && currentPage < totalPages - 3 && /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(import_jsx_runtime25.Fragment, { children: [
4394
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("span", { className: "px-1 text-secondary", children: "..." }),
4395
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(Typography, { variant: "body-sm", className: "text-secondary", children: totalPages })
4747
+ table.getPageCount() > 5 && currentPage < totalPages - 3 && /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)(import_jsx_runtime27.Fragment, { children: [
4748
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("span", { className: "px-1 text-secondary", children: "..." }),
4749
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(Typography, { variant: "body-sm", className: "text-secondary", children: totalPages })
4396
4750
  ] }),
4397
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
4751
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
4398
4752
  Button,
4399
4753
  {
4400
4754
  variant: "ghost",
@@ -4402,12 +4756,12 @@ function Table({
4402
4756
  onClick: handleNextPage,
4403
4757
  disabled: !table.getCanNextPage(),
4404
4758
  className: "p-2",
4405
- children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(ChevronRight, { className: "w-4 h-4" })
4759
+ children: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(ChevronRight, { className: "w-4 h-4" })
4406
4760
  }
4407
4761
  )
4408
4762
  ] }),
4409
- /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)("div", { className: "flex items-center gap-3 w-48", children: [
4410
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
4763
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)("div", { className: "flex items-center gap-3 w-48", children: [
4764
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
4411
4765
  Typography,
4412
4766
  {
4413
4767
  variant: "body-sm",
@@ -4415,14 +4769,14 @@ function Table({
4415
4769
  children: "Rows per page:"
4416
4770
  }
4417
4771
  ),
4418
- /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(
4772
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)(
4419
4773
  Select,
4420
4774
  {
4421
4775
  value: table.getState().pagination.pageSize.toString(),
4422
4776
  onValueChange: handlePageSizeChange,
4423
4777
  children: [
4424
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(SelectTrigger, { className: "min-w-0 h-8", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(SelectValue, {}) }),
4425
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(SelectContent, { children: [10, 20, 50, 100].map((size) => /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(SelectItem, { value: size.toString(), children: size }, size)) })
4778
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(SelectTrigger, { className: "min-w-0 h-8", children: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(SelectValue, {}) }),
4779
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(SelectContent, { children: [10, 20, 50, 100].map((size) => /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(SelectItem, { value: size.toString(), children: size }, size)) })
4426
4780
  ]
4427
4781
  }
4428
4782
  )
@@ -4519,6 +4873,7 @@ function Table({
4519
4873
  MagnifyingGlass,
4520
4874
  Minus,
4521
4875
  MoreMenu,
4876
+ Panel,
4522
4877
  PdfViewer,
4523
4878
  Phone,
4524
4879
  PieChart,
@@ -4537,6 +4892,17 @@ function Table({
4537
4892
  SelectValue,
4538
4893
  Separator,
4539
4894
  Share,
4895
+ Sidebar,
4896
+ SidebarContent,
4897
+ SidebarFooter,
4898
+ SidebarGroup,
4899
+ SidebarGroupContent,
4900
+ SidebarHeader,
4901
+ SidebarInset,
4902
+ SidebarMenu,
4903
+ SidebarMenuButton,
4904
+ SidebarMenuItem,
4905
+ SidebarProvider,
4540
4906
  Star,
4541
4907
  Statement,
4542
4908
  Table,
@@ -4546,8 +4912,12 @@ function Table({
4546
4912
  TabsList,
4547
4913
  TabsTrigger,
4548
4914
  Textarea,
4915
+ Tooltip,
4549
4916
  TooltipContainer,
4917
+ TooltipContent,
4550
4918
  TooltipItem,
4919
+ TooltipProvider,
4920
+ TooltipTrigger,
4551
4921
  Trash,
4552
4922
  Typography,
4553
4923
  Upload,
@@ -4576,5 +4946,6 @@ function Table({
4576
4946
  selectTriggerVariants,
4577
4947
  tabsVariants,
4578
4948
  typographyVariants,
4579
- uploadVariants
4949
+ uploadVariants,
4950
+ useSidebar
4580
4951
  });