@northslopetech/altitude-ui 2.4.0 → 2.6.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.mjs CHANGED
@@ -1698,6 +1698,29 @@ var Download = ({
1698
1698
  )
1699
1699
  }
1700
1700
  );
1701
+ var Panel = ({
1702
+ className,
1703
+ variant = "dark",
1704
+ ...props
1705
+ }) => /* @__PURE__ */ jsx2(
1706
+ "svg",
1707
+ {
1708
+ width: "16",
1709
+ height: "16",
1710
+ viewBox: "0 0 16 16",
1711
+ fill: "none",
1712
+ xmlns: "http://www.w3.org/2000/svg",
1713
+ className: cn(getVariantStyles(variant), className),
1714
+ ...props,
1715
+ children: /* @__PURE__ */ jsx2(
1716
+ "path",
1717
+ {
1718
+ 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",
1719
+ fill: "currentColor"
1720
+ }
1721
+ )
1722
+ }
1723
+ );
1701
1724
 
1702
1725
  // src/components/ui/select.tsx
1703
1726
  import { jsx as jsx3, jsxs as jsxs3 } from "react/jsx-runtime";
@@ -2117,15 +2140,329 @@ function FieldError({
2117
2140
  );
2118
2141
  }
2119
2142
 
2120
- // src/components/ui/date-picker.tsx
2143
+ // src/components/ui/tooltip.tsx
2144
+ import * as React4 from "react";
2145
+ import * as TooltipPrimitive from "@radix-ui/react-tooltip";
2146
+ import { jsx as jsx7, jsxs as jsxs5 } from "react/jsx-runtime";
2147
+ function TooltipProvider({
2148
+ delayDuration = 0,
2149
+ ...props
2150
+ }) {
2151
+ return /* @__PURE__ */ jsx7(
2152
+ TooltipPrimitive.Provider,
2153
+ {
2154
+ "data-slot": "tooltip-provider",
2155
+ delayDuration,
2156
+ ...props
2157
+ }
2158
+ );
2159
+ }
2160
+ TooltipProvider.displayName = "TooltipProvider";
2161
+ function Tooltip({ delayDuration, ...props }) {
2162
+ return /* @__PURE__ */ jsx7(TooltipProvider, { delayDuration, children: /* @__PURE__ */ jsx7(TooltipPrimitive.Root, { "data-slot": "tooltip", ...props }) });
2163
+ }
2164
+ Tooltip.displayName = "Tooltip";
2165
+ var TooltipTrigger = React4.forwardRef(({ ...props }, ref) => {
2166
+ return /* @__PURE__ */ jsx7(
2167
+ TooltipPrimitive.Trigger,
2168
+ {
2169
+ ref,
2170
+ "data-slot": "tooltip-trigger",
2171
+ ...props
2172
+ }
2173
+ );
2174
+ });
2175
+ TooltipTrigger.displayName = "TooltipTrigger";
2176
+ var TooltipContent = React4.forwardRef(({ className, sideOffset = 2, children, ...props }, ref) => {
2177
+ return /* @__PURE__ */ jsx7(TooltipPrimitive.Portal, { children: /* @__PURE__ */ jsxs5(
2178
+ TooltipPrimitive.Content,
2179
+ {
2180
+ ref,
2181
+ "data-slot": "tooltip-content",
2182
+ sideOffset,
2183
+ className: cn(
2184
+ "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",
2185
+ className
2186
+ ),
2187
+ ...props,
2188
+ children: [
2189
+ /* @__PURE__ */ jsx7(TooltipPrimitive.Arrow, { className: "fill-dark", width: 10, height: 9 }),
2190
+ children
2191
+ ]
2192
+ }
2193
+ ) });
2194
+ });
2195
+ TooltipContent.displayName = "TooltipContent";
2196
+
2197
+ // src/components/ui/sidebar.tsx
2121
2198
  import * as React5 from "react";
2199
+ import { jsx as jsx8, jsxs as jsxs6 } from "react/jsx-runtime";
2200
+ var SIDEBAR_CONSTANTS = {
2201
+ WIDTH: "144px",
2202
+ WIDTH_ICON: "48px"
2203
+ };
2204
+ var SidebarContext = React5.createContext(null);
2205
+ function useSidebar() {
2206
+ const context = React5.useContext(SidebarContext);
2207
+ if (!context) {
2208
+ throw new Error("useSidebar must be used within a SidebarProvider.");
2209
+ }
2210
+ return context;
2211
+ }
2212
+ var SidebarProvider = React5.forwardRef(
2213
+ ({
2214
+ defaultOpen = true,
2215
+ open: openProp,
2216
+ onOpenChange: setOpenProp,
2217
+ className,
2218
+ style,
2219
+ children,
2220
+ ...props
2221
+ }, ref) => {
2222
+ const [_open, _setOpen] = React5.useState(defaultOpen);
2223
+ const open = openProp ?? _open;
2224
+ const setOpen = React5.useCallback(
2225
+ (value) => {
2226
+ const openState = typeof value === "function" ? value(open) : value;
2227
+ if (setOpenProp) {
2228
+ setOpenProp(openState);
2229
+ } else {
2230
+ _setOpen(openState);
2231
+ }
2232
+ },
2233
+ [setOpenProp, open]
2234
+ );
2235
+ const toggleSidebar = React5.useCallback(() => {
2236
+ return setOpen((open2) => !open2);
2237
+ }, [setOpen]);
2238
+ const state = open ? "expanded" : "collapsed";
2239
+ const contextValue = React5.useMemo(
2240
+ () => ({
2241
+ state,
2242
+ open,
2243
+ setOpen,
2244
+ toggleSidebar
2245
+ }),
2246
+ [state, open, setOpen, toggleSidebar]
2247
+ );
2248
+ return /* @__PURE__ */ jsx8(SidebarContext.Provider, { value: contextValue, children: /* @__PURE__ */ jsx8(
2249
+ "div",
2250
+ {
2251
+ style: {
2252
+ "--sidebar-width": SIDEBAR_CONSTANTS.WIDTH,
2253
+ "--sidebar-width-icon": SIDEBAR_CONSTANTS.WIDTH_ICON,
2254
+ ...style
2255
+ },
2256
+ className: cn(
2257
+ "group/sidebar-wrapper flex min-h-svh w-full has-[[data-variant=inset]]:bg-light",
2258
+ className
2259
+ ),
2260
+ ref,
2261
+ ...props,
2262
+ children
2263
+ }
2264
+ ) });
2265
+ }
2266
+ );
2267
+ SidebarProvider.displayName = "SidebarProvider";
2268
+ var Sidebar = React5.forwardRef(
2269
+ ({ collapsible = "icon", className, children, ...props }, ref) => {
2270
+ const { state } = useSidebar();
2271
+ return /* @__PURE__ */ jsxs6(
2272
+ "aside",
2273
+ {
2274
+ ref,
2275
+ className: "group peer text-light",
2276
+ "data-state": state,
2277
+ "data-collapsible": state === "collapsed" ? collapsible : "",
2278
+ "aria-label": "Main navigation",
2279
+ "aria-expanded": state === "expanded",
2280
+ role: "navigation",
2281
+ children: [
2282
+ /* @__PURE__ */ jsx8(
2283
+ "div",
2284
+ {
2285
+ className: cn(
2286
+ "relative h-svh shrink-0 transition-[width] duration-200 ease-linear",
2287
+ "w-[var(--sidebar-width)] group-data-[collapsible=icon]:w-[var(--sidebar-width-icon)]"
2288
+ )
2289
+ }
2290
+ ),
2291
+ /* @__PURE__ */ jsx8(
2292
+ "div",
2293
+ {
2294
+ className: cn(
2295
+ "fixed inset-y-0 z-10 h-svh w-[var(--sidebar-width)] transition-[left,right,width] duration-200 ease-linear flex left-0",
2296
+ "group-data-[collapsible=icon]:w-[var(--sidebar-width-icon)]",
2297
+ className
2298
+ ),
2299
+ ...props,
2300
+ children: /* @__PURE__ */ jsx8(
2301
+ "div",
2302
+ {
2303
+ "data-sidebar": "sidebar",
2304
+ className: "flex h-full w-full flex-col gap-8 p-4 px-2 bg-dark",
2305
+ children
2306
+ }
2307
+ )
2308
+ }
2309
+ )
2310
+ ]
2311
+ }
2312
+ );
2313
+ }
2314
+ );
2315
+ Sidebar.displayName = "Sidebar";
2316
+ var SidebarInset = React5.forwardRef(
2317
+ ({ className, ...props }, ref) => {
2318
+ return /* @__PURE__ */ jsx8(
2319
+ "main",
2320
+ {
2321
+ ref,
2322
+ className: cn(
2323
+ "relative flex min-h-svh flex-1 flex-col bg-dark",
2324
+ className
2325
+ ),
2326
+ ...props
2327
+ }
2328
+ );
2329
+ }
2330
+ );
2331
+ SidebarInset.displayName = "SidebarInset";
2332
+ var SidebarHeader = React5.forwardRef(
2333
+ ({ className, ...props }, ref) => {
2334
+ return /* @__PURE__ */ jsx8(
2335
+ "div",
2336
+ {
2337
+ ref,
2338
+ "data-sidebar": "header",
2339
+ className: cn(
2340
+ "flex h-8 justify-between items-center shrink-0 self-stretch",
2341
+ "group-data-[collapsible=icon]:justify-center group-data-[collapsible=icon]:p-2",
2342
+ className
2343
+ ),
2344
+ ...props
2345
+ }
2346
+ );
2347
+ }
2348
+ );
2349
+ SidebarHeader.displayName = "SidebarHeader";
2350
+ var SidebarFooter = React5.forwardRef(
2351
+ ({ className, ...props }, ref) => {
2352
+ return /* @__PURE__ */ jsx8(
2353
+ "div",
2354
+ {
2355
+ ref,
2356
+ "data-sidebar": "footer",
2357
+ className: cn("flex flex-col gap-2", className),
2358
+ ...props
2359
+ }
2360
+ );
2361
+ }
2362
+ );
2363
+ SidebarFooter.displayName = "SidebarFooter";
2364
+ var SidebarContent = React5.forwardRef(
2365
+ ({ className, ...props }, ref) => {
2366
+ return /* @__PURE__ */ jsx8(
2367
+ "div",
2368
+ {
2369
+ ref,
2370
+ "data-sidebar": "content",
2371
+ className: cn(
2372
+ "flex min-h-0 flex-1 flex-col gap-8 overflow-auto group-data-[collapsible=icon]:overflow-hidden",
2373
+ className
2374
+ ),
2375
+ ...props
2376
+ }
2377
+ );
2378
+ }
2379
+ );
2380
+ SidebarContent.displayName = "SidebarContent";
2381
+ var SidebarGroup = React5.forwardRef(
2382
+ ({ className, ...props }, ref) => {
2383
+ return /* @__PURE__ */ jsx8(
2384
+ "div",
2385
+ {
2386
+ ref,
2387
+ "data-sidebar": "group",
2388
+ className: cn("relative flex w-full min-w-0 flex-col", className),
2389
+ ...props
2390
+ }
2391
+ );
2392
+ }
2393
+ );
2394
+ SidebarGroup.displayName = "SidebarGroup";
2395
+ var SidebarGroupContent = React5.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx8(
2396
+ "div",
2397
+ {
2398
+ ref,
2399
+ "data-sidebar": "group-content",
2400
+ className: cn("w-full text-sm", className),
2401
+ ...props
2402
+ }
2403
+ ));
2404
+ SidebarGroupContent.displayName = "SidebarGroupContent";
2405
+ var SidebarMenu = React5.forwardRef(
2406
+ ({ className, ...props }, ref) => /* @__PURE__ */ jsx8(
2407
+ "ul",
2408
+ {
2409
+ ref,
2410
+ "data-sidebar": "menu",
2411
+ className: cn("flex w-full min-w-0 flex-col gap-1", className),
2412
+ ...props
2413
+ }
2414
+ )
2415
+ );
2416
+ SidebarMenu.displayName = "SidebarMenu";
2417
+ var SidebarMenuItem = React5.forwardRef(
2418
+ ({ className, ...props }, ref) => /* @__PURE__ */ jsx8(
2419
+ "li",
2420
+ {
2421
+ ref,
2422
+ "data-sidebar": "menu-item",
2423
+ className: cn("group/menu-item relative", className),
2424
+ ...props
2425
+ }
2426
+ )
2427
+ );
2428
+ SidebarMenuItem.displayName = "SidebarMenuItem";
2429
+ var SidebarMenuButton = React5.forwardRef(({ isActive = false, tooltip, className, children, ...props }, ref) => {
2430
+ const { state } = useSidebar();
2431
+ const button = /* @__PURE__ */ jsx8(
2432
+ "button",
2433
+ {
2434
+ ref,
2435
+ "data-sidebar": "menu-button",
2436
+ "data-active": isActive,
2437
+ "aria-current": isActive ? "page" : void 0,
2438
+ className: cn(
2439
+ "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",
2440
+ className
2441
+ ),
2442
+ ...props,
2443
+ children
2444
+ }
2445
+ );
2446
+ if (!tooltip || state !== "collapsed") {
2447
+ return button;
2448
+ }
2449
+ const tooltipProps = typeof tooltip === "string" ? { children: tooltip } : tooltip;
2450
+ return /* @__PURE__ */ jsxs6(Tooltip, { delayDuration: 0, children: [
2451
+ /* @__PURE__ */ jsx8(TooltipTrigger, { asChild: true, children: button }),
2452
+ /* @__PURE__ */ jsx8(TooltipContent, { side: "right", align: "center", ...tooltipProps })
2453
+ ] });
2454
+ });
2455
+ SidebarMenuButton.displayName = "SidebarMenuButton";
2456
+
2457
+ // src/components/ui/date-picker.tsx
2458
+ import * as React7 from "react";
2122
2459
  import * as PopoverPrimitive from "@radix-ui/react-popover";
2123
2460
 
2124
2461
  // src/components/ui/input.tsx
2125
- import * as React4 from "react";
2126
- import { jsx as jsx7, jsxs as jsxs5 } from "react/jsx-runtime";
2462
+ import * as React6 from "react";
2463
+ import { jsx as jsx9, jsxs as jsxs7 } from "react/jsx-runtime";
2127
2464
  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";
2128
- var Input = React4.forwardRef(
2465
+ var Input = React6.forwardRef(
2129
2466
  ({
2130
2467
  className,
2131
2468
  style,
@@ -2136,7 +2473,7 @@ var Input = React4.forwardRef(
2136
2473
  readOnly,
2137
2474
  ...props
2138
2475
  }, ref) => {
2139
- const [internalValue, setInternalValue] = React4.useState(value || "");
2476
+ const [internalValue, setInternalValue] = React6.useState(value || "");
2140
2477
  const isControlled = value !== void 0;
2141
2478
  const currentValue = isControlled ? value : internalValue;
2142
2479
  const showClear = showClearProp !== false && currentValue && currentValue.toString().length > 0 && !readOnly;
@@ -2166,8 +2503,8 @@ var Input = React4.forwardRef(
2166
2503
  }
2167
2504
  onClear?.();
2168
2505
  };
2169
- return /* @__PURE__ */ jsxs5("div", { className: "relative", children: [
2170
- /* @__PURE__ */ jsx7(
2506
+ return /* @__PURE__ */ jsxs7("div", { className: "relative", children: [
2507
+ /* @__PURE__ */ jsx9(
2171
2508
  "input",
2172
2509
  {
2173
2510
  className: cn(
@@ -2183,23 +2520,23 @@ var Input = React4.forwardRef(
2183
2520
  ...props
2184
2521
  }
2185
2522
  ),
2186
- showClear && /* @__PURE__ */ jsx7(
2523
+ showClear && /* @__PURE__ */ jsx9(
2187
2524
  "button",
2188
2525
  {
2189
2526
  type: "button",
2190
2527
  onClick: handleClear,
2191
2528
  className: "absolute right-3 top-1/2 transform -translate-y-1/2 h-4 w-4 text-secondary hover:text-dark transition-colors",
2192
- children: /* @__PURE__ */ jsx7(X, { className: "h-4 w-4" })
2529
+ children: /* @__PURE__ */ jsx9(X, { className: "h-4 w-4" })
2193
2530
  }
2194
2531
  ),
2195
- showLock && /* @__PURE__ */ jsx7(Lock, { className: "absolute right-3 top-1/2 transform -translate-y-1/2 h-4 w-4 text-secondary" })
2532
+ showLock && /* @__PURE__ */ jsx9(Lock, { className: "absolute right-3 top-1/2 transform -translate-y-1/2 h-4 w-4 text-secondary" })
2196
2533
  ] });
2197
2534
  }
2198
2535
  );
2199
2536
  Input.displayName = "Input";
2200
2537
 
2201
2538
  // src/components/ui/date-picker.tsx
2202
- import { jsx as jsx8, jsxs as jsxs6 } from "react/jsx-runtime";
2539
+ import { jsx as jsx10, jsxs as jsxs8 } from "react/jsx-runtime";
2203
2540
  var getDayNames = () => {
2204
2541
  const days = [];
2205
2542
  for (let i = 0; i < 7; i++) {
@@ -2235,7 +2572,7 @@ var formatDateInput = (date) => {
2235
2572
  day: "2-digit"
2236
2573
  });
2237
2574
  };
2238
- var DatePicker = React5.forwardRef(
2575
+ var DatePicker = React7.forwardRef(
2239
2576
  ({
2240
2577
  value,
2241
2578
  onValueChange,
@@ -2254,19 +2591,19 @@ var DatePicker = React5.forwardRef(
2254
2591
  if (isNaN(parsed.getTime())) return void 0;
2255
2592
  return parsed;
2256
2593
  };
2257
- const [selectedDate, setSelectedDate] = React5.useState(
2594
+ const [selectedDate, setSelectedDate] = React7.useState(
2258
2595
  value || parseDate(defaultValue)
2259
2596
  );
2260
- const [currentMonth, setCurrentMonth] = React5.useState(() => {
2597
+ const [currentMonth, setCurrentMonth] = React7.useState(() => {
2261
2598
  const date = value || parseDate(defaultValue) || /* @__PURE__ */ new Date();
2262
2599
  return new Date(date.getFullYear(), date.getMonth());
2263
2600
  });
2264
- const [open, setOpen] = React5.useState(false);
2265
- const [inputValue, setInputValue] = React5.useState(() => {
2601
+ const [open, setOpen] = React7.useState(false);
2602
+ const [inputValue, setInputValue] = React7.useState(() => {
2266
2603
  const initialDate = value || parseDate(defaultValue);
2267
2604
  return initialDate ? formatDateInput(initialDate) : "";
2268
2605
  });
2269
- React5.useEffect(() => {
2606
+ React7.useEffect(() => {
2270
2607
  setSelectedDate(value);
2271
2608
  if (value) {
2272
2609
  setCurrentMonth(new Date(value.getFullYear(), value.getMonth()));
@@ -2277,7 +2614,7 @@ var DatePicker = React5.forwardRef(
2277
2614
  setInputValue("");
2278
2615
  }
2279
2616
  }, [value]);
2280
- React5.useEffect(() => {
2617
+ React7.useEffect(() => {
2281
2618
  if (value) return;
2282
2619
  const parsedDefault = parseDate(defaultValue);
2283
2620
  if (!parsedDefault) return;
@@ -2400,14 +2737,14 @@ var DatePicker = React5.forwardRef(
2400
2737
  const months = getMonthNames();
2401
2738
  const dayNames = getDayNames();
2402
2739
  const years = generateYears();
2403
- return /* @__PURE__ */ jsxs6(
2740
+ return /* @__PURE__ */ jsxs8(
2404
2741
  PopoverPrimitive.Root,
2405
2742
  {
2406
2743
  open: disabled ? false : open,
2407
2744
  onOpenChange: disabled ? void 0 : setOpen,
2408
2745
  children: [
2409
- /* @__PURE__ */ jsxs6("div", { className: "relative", children: [
2410
- /* @__PURE__ */ jsx8(
2746
+ /* @__PURE__ */ jsxs8("div", { className: "relative", children: [
2747
+ /* @__PURE__ */ jsx10(
2411
2748
  Input,
2412
2749
  {
2413
2750
  ref,
@@ -2420,7 +2757,7 @@ var DatePicker = React5.forwardRef(
2420
2757
  ...props
2421
2758
  }
2422
2759
  ),
2423
- /* @__PURE__ */ jsx8(PopoverPrimitive.Trigger, { asChild: true, children: /* @__PURE__ */ jsx8("button", { className: "absolute right-3 top-1/2 transform -translate-y-1/2 hover:bg-gray rounded p-0.5 transition-colors", children: /* @__PURE__ */ jsx8(
2760
+ /* @__PURE__ */ jsx10(PopoverPrimitive.Trigger, { asChild: true, children: /* @__PURE__ */ jsx10("button", { className: "absolute right-3 top-1/2 transform -translate-y-1/2 hover:bg-gray rounded p-0.5 transition-colors", children: /* @__PURE__ */ jsx10(
2424
2761
  Calendar,
2425
2762
  {
2426
2763
  className: cn(
@@ -2430,7 +2767,7 @@ var DatePicker = React5.forwardRef(
2430
2767
  }
2431
2768
  ) }) })
2432
2769
  ] }),
2433
- /* @__PURE__ */ jsx8(PopoverPrimitive.Portal, { children: /* @__PURE__ */ jsx8(
2770
+ /* @__PURE__ */ jsx10(PopoverPrimitive.Portal, { children: /* @__PURE__ */ jsx10(
2434
2771
  PopoverPrimitive.Content,
2435
2772
  {
2436
2773
  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",
@@ -2439,51 +2776,51 @@ var DatePicker = React5.forwardRef(
2439
2776
  alignOffset: -12,
2440
2777
  side: "bottom",
2441
2778
  sticky: "always",
2442
- children: /* @__PURE__ */ jsxs6("div", { className: "p-4", children: [
2443
- /* @__PURE__ */ jsxs6("div", { className: "flex items-center justify-between mb-4 gap-1", children: [
2444
- /* @__PURE__ */ jsx8(
2779
+ children: /* @__PURE__ */ jsxs8("div", { className: "p-4", children: [
2780
+ /* @__PURE__ */ jsxs8("div", { className: "flex items-center justify-between mb-4 gap-1", children: [
2781
+ /* @__PURE__ */ jsx10(
2445
2782
  "button",
2446
2783
  {
2447
2784
  onClick: () => handleMonthChange("prev"),
2448
2785
  className: "p-1 hover:bg-gray rounded transition-colors flex-shrink-0",
2449
- children: /* @__PURE__ */ jsx8(ChevronLeft, { className: "h-4 w-4" })
2786
+ children: /* @__PURE__ */ jsx10(ChevronLeft, { className: "h-4 w-4" })
2450
2787
  }
2451
2788
  ),
2452
- /* @__PURE__ */ jsxs6("div", { className: "flex gap-1 flex-1 min-w-0", children: [
2453
- /* @__PURE__ */ jsxs6(
2789
+ /* @__PURE__ */ jsxs8("div", { className: "flex gap-1 flex-1 min-w-0", children: [
2790
+ /* @__PURE__ */ jsxs8(
2454
2791
  Select,
2455
2792
  {
2456
2793
  value: currentMonth.getMonth().toString(),
2457
2794
  onValueChange: handleMonthSelect,
2458
2795
  children: [
2459
- /* @__PURE__ */ jsx8(SelectTrigger, { className: "min-w-fit h-8 text-sm", children: /* @__PURE__ */ jsx8(SelectValue, {}) }),
2460
- /* @__PURE__ */ jsx8(SelectContent, { children: months.map((month, index) => /* @__PURE__ */ jsx8(SelectItem, { value: index.toString(), children: month }, month)) })
2796
+ /* @__PURE__ */ jsx10(SelectTrigger, { className: "min-w-fit h-8 text-sm", children: /* @__PURE__ */ jsx10(SelectValue, {}) }),
2797
+ /* @__PURE__ */ jsx10(SelectContent, { children: months.map((month, index) => /* @__PURE__ */ jsx10(SelectItem, { value: index.toString(), children: month }, month)) })
2461
2798
  ]
2462
2799
  }
2463
2800
  ),
2464
- /* @__PURE__ */ jsxs6(
2801
+ /* @__PURE__ */ jsxs8(
2465
2802
  Select,
2466
2803
  {
2467
2804
  value: currentMonth.getFullYear().toString(),
2468
2805
  onValueChange: handleYearSelect,
2469
2806
  children: [
2470
- /* @__PURE__ */ jsx8(SelectTrigger, { className: "min-w-fit h-8 text-sm", children: /* @__PURE__ */ jsx8(SelectValue, {}) }),
2471
- /* @__PURE__ */ jsx8(SelectContent, { children: years.map((year) => /* @__PURE__ */ jsx8(SelectItem, { value: year.toString(), children: year }, year)) })
2807
+ /* @__PURE__ */ jsx10(SelectTrigger, { className: "min-w-fit h-8 text-sm", children: /* @__PURE__ */ jsx10(SelectValue, {}) }),
2808
+ /* @__PURE__ */ jsx10(SelectContent, { children: years.map((year) => /* @__PURE__ */ jsx10(SelectItem, { value: year.toString(), children: year }, year)) })
2472
2809
  ]
2473
2810
  }
2474
2811
  )
2475
2812
  ] }),
2476
- /* @__PURE__ */ jsx8(
2813
+ /* @__PURE__ */ jsx10(
2477
2814
  "button",
2478
2815
  {
2479
2816
  onClick: () => handleMonthChange("next"),
2480
2817
  className: "p-1 hover:bg-gray rounded transition-colors flex-shrink-0",
2481
- children: /* @__PURE__ */ jsx8(ChevronRight, { className: "h-4 w-4" })
2818
+ children: /* @__PURE__ */ jsx10(ChevronRight, { className: "h-4 w-4" })
2482
2819
  }
2483
2820
  )
2484
2821
  ] }),
2485
- /* @__PURE__ */ jsxs6("div", { className: "space-y-1", children: [
2486
- /* @__PURE__ */ jsx8("div", { className: "grid grid-cols-7 gap-1 mb-2", children: dayNames.map((day) => /* @__PURE__ */ jsx8(
2822
+ /* @__PURE__ */ jsxs8("div", { className: "space-y-1", children: [
2823
+ /* @__PURE__ */ jsx10("div", { className: "grid grid-cols-7 gap-1 mb-2", children: dayNames.map((day) => /* @__PURE__ */ jsx10(
2487
2824
  Typography,
2488
2825
  {
2489
2826
  variant: "label-xs-bold",
@@ -2493,11 +2830,11 @@ var DatePicker = React5.forwardRef(
2493
2830
  },
2494
2831
  day
2495
2832
  )) }),
2496
- /* @__PURE__ */ jsx8("div", { className: "grid grid-cols-7 gap-1", children: days.map((date, index) => /* @__PURE__ */ jsx8(
2833
+ /* @__PURE__ */ jsx10("div", { className: "grid grid-cols-7 gap-1", children: days.map((date, index) => /* @__PURE__ */ jsx10(
2497
2834
  "div",
2498
2835
  {
2499
2836
  className: "h-8 w-8 flex items-center justify-center",
2500
- children: date && /* @__PURE__ */ jsx8(
2837
+ children: date && /* @__PURE__ */ jsx10(
2501
2838
  "button",
2502
2839
  {
2503
2840
  onClick: () => handleDateSelect(date),
@@ -2511,7 +2848,7 @@ var DatePicker = React5.forwardRef(
2511
2848
  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",
2512
2849
  isDateDisabled(date) && "text-secondary/40 cursor-not-allowed opacity-50"
2513
2850
  ),
2514
- children: /* @__PURE__ */ jsx8(Typography, { variant: "label-sm", as: "span", children: date.getDate() })
2851
+ children: /* @__PURE__ */ jsx10(Typography, { variant: "label-sm", as: "span", children: date.getDate() })
2515
2852
  }
2516
2853
  )
2517
2854
  },
@@ -2529,9 +2866,9 @@ var DatePicker = React5.forwardRef(
2529
2866
  DatePicker.displayName = "DatePicker";
2530
2867
 
2531
2868
  // src/components/ui/upload.tsx
2532
- import * as React6 from "react";
2869
+ import * as React8 from "react";
2533
2870
  import { cva as cva6 } from "class-variance-authority";
2534
- import { jsx as jsx9, jsxs as jsxs7 } from "react/jsx-runtime";
2871
+ import { jsx as jsx11, jsxs as jsxs9 } from "react/jsx-runtime";
2535
2872
  var DEFAULT_MAX_FILE_SIZE = 10 * 1024 * 1024;
2536
2873
  var uploadVariants = cva6(
2537
2874
  "relative flex flex-col items-center justify-center rounded-lg transition-all duration-200 ease-in-out overflow-hidden",
@@ -2555,7 +2892,7 @@ var uploadVariants = cva6(
2555
2892
  }
2556
2893
  }
2557
2894
  );
2558
- var Upload = React6.forwardRef(
2895
+ var Upload = React8.forwardRef(
2559
2896
  ({
2560
2897
  className,
2561
2898
  onFileSelect,
@@ -2568,8 +2905,8 @@ var Upload = React6.forwardRef(
2568
2905
  selectedFiles = [],
2569
2906
  ...props
2570
2907
  }, ref) => {
2571
- const fileInputRef = React6.useRef(null);
2572
- const [isDragOver, setIsDragOver] = React6.useState(false);
2908
+ const fileInputRef = React8.useRef(null);
2909
+ const [isDragOver, setIsDragOver] = React8.useState(false);
2573
2910
  const getFileTypeDisplay = () => {
2574
2911
  const typeMap = {
2575
2912
  "application/pdf": "PDF",
@@ -2633,17 +2970,17 @@ var Upload = React6.forwardRef(
2633
2970
  const renderContent = () => {
2634
2971
  switch (effectiveState) {
2635
2972
  case "error":
2636
- return /* @__PURE__ */ jsxs7(
2973
+ return /* @__PURE__ */ jsxs9(
2637
2974
  "div",
2638
2975
  {
2639
2976
  className: "flex flex-col items-center text-center max-w-[289px]",
2640
2977
  style: { gap: "32px" },
2641
2978
  children: [
2642
- /* @__PURE__ */ jsxs7("div", { className: "space-y-4", children: [
2643
- /* @__PURE__ */ jsx9(Typography, { variant: "heading-sm", children: "Upload fail" }),
2644
- /* @__PURE__ */ jsx9(Typography, { variant: "body-md", className: "text-error", children: errorMessage })
2979
+ /* @__PURE__ */ jsxs9("div", { className: "space-y-4", children: [
2980
+ /* @__PURE__ */ jsx11(Typography, { variant: "heading-sm", children: "Upload fail" }),
2981
+ /* @__PURE__ */ jsx11(Typography, { variant: "body-md", className: "text-error", children: errorMessage })
2645
2982
  ] }),
2646
- /* @__PURE__ */ jsx9(
2983
+ /* @__PURE__ */ jsx11(
2647
2984
  Button,
2648
2985
  {
2649
2986
  variant: "destructive",
@@ -2657,22 +2994,22 @@ var Upload = React6.forwardRef(
2657
2994
  }
2658
2995
  );
2659
2996
  case "uploading":
2660
- return /* @__PURE__ */ jsxs7(
2997
+ return /* @__PURE__ */ jsxs9(
2661
2998
  "div",
2662
2999
  {
2663
3000
  className: "flex flex-col items-center text-center max-w-[289px]",
2664
3001
  style: { gap: "32px" },
2665
3002
  children: [
2666
- /* @__PURE__ */ jsx9(Typography, { variant: "heading-sm", className: "text-dark", children: "Uploading files" }),
2667
- /* @__PURE__ */ jsxs7("div", { className: "w-full max-w-[720px] space-y-2", children: [
2668
- /* @__PURE__ */ jsx9("div", { className: "w-full bg-gray rounded-full h-2", children: /* @__PURE__ */ jsx9(
3003
+ /* @__PURE__ */ jsx11(Typography, { variant: "heading-sm", className: "text-dark", children: "Uploading files" }),
3004
+ /* @__PURE__ */ jsxs9("div", { className: "w-full max-w-[720px] space-y-2", children: [
3005
+ /* @__PURE__ */ jsx11("div", { className: "w-full bg-gray rounded-full h-2", children: /* @__PURE__ */ jsx11(
2669
3006
  "div",
2670
3007
  {
2671
3008
  className: "bg-canvas-primary h-2 rounded-full transition-all duration-300 ease-in-out",
2672
3009
  style: { width: `${progress}%` }
2673
3010
  }
2674
3011
  ) }),
2675
- /* @__PURE__ */ jsxs7(
3012
+ /* @__PURE__ */ jsxs9(
2676
3013
  Typography,
2677
3014
  {
2678
3015
  variant: "body-sm",
@@ -2688,29 +3025,29 @@ var Upload = React6.forwardRef(
2688
3025
  }
2689
3026
  );
2690
3027
  case "success":
2691
- return /* @__PURE__ */ jsx9(
3028
+ return /* @__PURE__ */ jsx11(
2692
3029
  "div",
2693
3030
  {
2694
3031
  className: "flex flex-col items-center text-center max-w-[289px]",
2695
3032
  style: { gap: "32px" },
2696
- children: /* @__PURE__ */ jsxs7("div", { className: "space-y-4", children: [
2697
- /* @__PURE__ */ jsx9(Typography, { variant: "heading-sm", className: "text-success", children: "Upload successful!" }),
2698
- selectedFiles.length > 0 && /* @__PURE__ */ jsx9("div", { className: "text-center", children: selectedFiles.map((file, index) => /* @__PURE__ */ jsx9(Typography, { variant: "body-sm", children: file.name }, index)) })
3033
+ children: /* @__PURE__ */ jsxs9("div", { className: "space-y-4", children: [
3034
+ /* @__PURE__ */ jsx11(Typography, { variant: "heading-sm", className: "text-success", children: "Upload successful!" }),
3035
+ selectedFiles.length > 0 && /* @__PURE__ */ jsx11("div", { className: "text-center", children: selectedFiles.map((file, index) => /* @__PURE__ */ jsx11(Typography, { variant: "body-sm", children: file.name }, index)) })
2699
3036
  ] })
2700
3037
  }
2701
3038
  );
2702
3039
  default:
2703
- return /* @__PURE__ */ jsxs7(
3040
+ return /* @__PURE__ */ jsxs9(
2704
3041
  "div",
2705
3042
  {
2706
3043
  className: "flex flex-col items-center text-center max-w-[289px]",
2707
3044
  style: { gap: "32px" },
2708
3045
  children: [
2709
- /* @__PURE__ */ jsxs7("div", { className: "space-y-4", children: [
2710
- /* @__PURE__ */ jsx9(Typography, { variant: "heading-sm", className: "text-dark", children: "Drag & drop files here" }),
2711
- /* @__PURE__ */ jsx9(Typography, { variant: "body-md", className: "text-secondary", children: "or click to browse from your computer" })
3046
+ /* @__PURE__ */ jsxs9("div", { className: "space-y-4", children: [
3047
+ /* @__PURE__ */ jsx11(Typography, { variant: "heading-sm", className: "text-dark", children: "Drag & drop files here" }),
3048
+ /* @__PURE__ */ jsx11(Typography, { variant: "body-md", className: "text-secondary", children: "or click to browse from your computer" })
2712
3049
  ] }),
2713
- /* @__PURE__ */ jsx9(
3050
+ /* @__PURE__ */ jsx11(
2714
3051
  Button,
2715
3052
  {
2716
3053
  variant: "default",
@@ -2724,10 +3061,10 @@ var Upload = React6.forwardRef(
2724
3061
  children: "Choose files"
2725
3062
  }
2726
3063
  ),
2727
- /* @__PURE__ */ jsxs7(Typography, { variant: "body-sm", className: "text-secondary", children: [
3064
+ /* @__PURE__ */ jsxs9(Typography, { variant: "body-sm", className: "text-secondary", children: [
2728
3065
  "Supported file: ",
2729
3066
  getFileTypeDisplay(),
2730
- /* @__PURE__ */ jsx9("br", {}),
3067
+ /* @__PURE__ */ jsx11("br", {}),
2731
3068
  "Max: ",
2732
3069
  Math.round(maxFileSize / 1024 / 1024),
2733
3070
  " MB each"
@@ -2737,7 +3074,7 @@ var Upload = React6.forwardRef(
2737
3074
  );
2738
3075
  }
2739
3076
  };
2740
- return /* @__PURE__ */ jsxs7(
3077
+ return /* @__PURE__ */ jsxs9(
2741
3078
  "div",
2742
3079
  {
2743
3080
  ref,
@@ -2761,7 +3098,7 @@ var Upload = React6.forwardRef(
2761
3098
  "aria-disabled": disabled,
2762
3099
  ...props,
2763
3100
  children: [
2764
- /* @__PURE__ */ jsx9(
3101
+ /* @__PURE__ */ jsx11(
2765
3102
  "input",
2766
3103
  {
2767
3104
  ref: fileInputRef,
@@ -2781,34 +3118,34 @@ var Upload = React6.forwardRef(
2781
3118
  Upload.displayName = "Upload";
2782
3119
 
2783
3120
  // src/components/ui/checkbox.tsx
2784
- import * as React7 from "react";
3121
+ import * as React9 from "react";
2785
3122
  import * as CheckboxPrimitive from "@radix-ui/react-checkbox";
2786
3123
  import { cva as cva7 } from "class-variance-authority";
2787
- import { jsx as jsx10 } from "react/jsx-runtime";
3124
+ import { jsx as jsx12 } from "react/jsx-runtime";
2788
3125
  var checkboxVariants = cva7(
2789
3126
  "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"
2790
3127
  );
2791
- var Checkbox = React7.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx10(
3128
+ var Checkbox = React9.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx12(
2792
3129
  CheckboxPrimitive.Root,
2793
3130
  {
2794
3131
  ref,
2795
3132
  className: cn(checkboxVariants(), className),
2796
3133
  ...props,
2797
- children: /* @__PURE__ */ jsx10(CheckboxPrimitive.Indicator, { className: "flex items-center justify-center text-current", children: /* @__PURE__ */ jsx10(CheckIcon, { variant: "light", className: "size-3" }) })
3134
+ children: /* @__PURE__ */ jsx12(CheckboxPrimitive.Indicator, { className: "flex items-center justify-center text-current", children: /* @__PURE__ */ jsx12(CheckIcon, { variant: "light", className: "size-3" }) })
2798
3135
  }
2799
3136
  ));
2800
3137
  Checkbox.displayName = CheckboxPrimitive.Root.displayName;
2801
3138
 
2802
3139
  // src/components/ui/textarea.tsx
2803
- import * as React8 from "react";
2804
- import { jsx as jsx11 } from "react/jsx-runtime";
2805
- var Textarea = React8.forwardRef(
3140
+ import * as React10 from "react";
3141
+ import { jsx as jsx13 } from "react/jsx-runtime";
3142
+ var Textarea = React10.forwardRef(
2806
3143
  ({ className, style, ...props }, ref) => {
2807
3144
  const tokenStyles = {
2808
3145
  font: "var(--typography-label-md-regular)",
2809
3146
  ...style
2810
3147
  };
2811
- return /* @__PURE__ */ jsx11(
3148
+ return /* @__PURE__ */ jsx13(
2812
3149
  "textarea",
2813
3150
  {
2814
3151
  className: cn(
@@ -2825,9 +3162,9 @@ var Textarea = React8.forwardRef(
2825
3162
  Textarea.displayName = "Textarea";
2826
3163
 
2827
3164
  // src/components/ui/badge.tsx
2828
- import * as React9 from "react";
3165
+ import * as React11 from "react";
2829
3166
  import { cva as cva8 } from "class-variance-authority";
2830
- import { jsx as jsx12 } from "react/jsx-runtime";
3167
+ import { jsx as jsx14 } from "react/jsx-runtime";
2831
3168
  var badgeVariants = cva8(
2832
3169
  "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",
2833
3170
  {
@@ -2850,7 +3187,7 @@ var badgeVariants = cva8(
2850
3187
  function getBadgeTypographyStyles() {
2851
3188
  return { font: "var(--typography-label-sm-bold)" };
2852
3189
  }
2853
- var Badge = React9.forwardRef(
3190
+ var Badge = React11.forwardRef(
2854
3191
  ({ className, variant, style, ...props }, ref) => {
2855
3192
  if (!variant) {
2856
3193
  return null;
@@ -2860,7 +3197,7 @@ var Badge = React9.forwardRef(
2860
3197
  ...typographyStyles,
2861
3198
  ...style
2862
3199
  };
2863
- return /* @__PURE__ */ jsx12(
3200
+ return /* @__PURE__ */ jsx14(
2864
3201
  "span",
2865
3202
  {
2866
3203
  className: cn(
@@ -2878,13 +3215,13 @@ var Badge = React9.forwardRef(
2878
3215
  Badge.displayName = "Badge";
2879
3216
 
2880
3217
  // src/components/pdf-viewer/index.tsx
2881
- import * as React14 from "react";
3218
+ import * as React16 from "react";
2882
3219
  import "react-pdf/dist/Page/TextLayer.css";
2883
3220
 
2884
3221
  // src/components/pdf-viewer/components/PdfDocument.tsx
2885
- import * as React10 from "react";
3222
+ import * as React12 from "react";
2886
3223
  import { Document, Page } from "react-pdf";
2887
- import { jsx as jsx13 } from "react/jsx-runtime";
3224
+ import { jsx as jsx15 } from "react/jsx-runtime";
2888
3225
  var PdfDocument = ({
2889
3226
  file,
2890
3227
  pageWidth,
@@ -2892,24 +3229,24 @@ var PdfDocument = ({
2892
3229
  onLoadSuccess,
2893
3230
  onLoadError
2894
3231
  }) => {
2895
- const [numPages, setNumPages] = React10.useState();
3232
+ const [numPages, setNumPages] = React12.useState();
2896
3233
  function handleDocumentLoadSuccess({ numPages: numPages2 }) {
2897
3234
  setNumPages(numPages2);
2898
3235
  onLoadSuccess?.(numPages2);
2899
3236
  }
2900
3237
  if (!file) {
2901
- return /* @__PURE__ */ jsx13("div", { className: "flex items-center justify-center h-64", children: /* @__PURE__ */ jsx13(Typography, { variant: "body-md", className: "text-secondary", children: "No PDF available" }) });
3238
+ return /* @__PURE__ */ jsx15("div", { className: "flex items-center justify-center h-64", children: /* @__PURE__ */ jsx15(Typography, { variant: "body-md", className: "text-secondary", children: "No PDF available" }) });
2902
3239
  }
2903
- return /* @__PURE__ */ jsx13(
3240
+ return /* @__PURE__ */ jsx15(
2904
3241
  Document,
2905
3242
  {
2906
3243
  file,
2907
3244
  onLoadSuccess: handleDocumentLoadSuccess,
2908
3245
  onLoadError,
2909
- loading: /* @__PURE__ */ jsx13("div", { className: "flex items-center justify-center h-64", children: /* @__PURE__ */ jsx13(Typography, { variant: "body-md", className: "text-secondary", children: "Rendering PDF..." }) }),
2910
- error: /* @__PURE__ */ jsx13("div", { className: "flex items-center justify-center h-64", children: /* @__PURE__ */ jsx13(Typography, { variant: "body-md", className: "text-error", children: "Failed to render PDF" }) }),
3246
+ loading: /* @__PURE__ */ jsx15("div", { className: "flex items-center justify-center h-64", children: /* @__PURE__ */ jsx15(Typography, { variant: "body-md", className: "text-secondary", children: "Rendering PDF..." }) }),
3247
+ error: /* @__PURE__ */ jsx15("div", { className: "flex items-center justify-center h-64", children: /* @__PURE__ */ jsx15(Typography, { variant: "body-md", className: "text-error", children: "Failed to render PDF" }) }),
2911
3248
  className: "flex flex-col items-center p-4",
2912
- children: numPages && pageWidth > 0 && Array.from(new Array(numPages), (_, index) => /* @__PURE__ */ jsx13(
3249
+ children: numPages && pageWidth > 0 && Array.from(new Array(numPages), (_, index) => /* @__PURE__ */ jsx15(
2913
3250
  Page,
2914
3251
  {
2915
3252
  pageNumber: index + 1,
@@ -2926,14 +3263,14 @@ var PdfDocument = ({
2926
3263
  PdfDocument.displayName = "PdfDocument";
2927
3264
 
2928
3265
  // src/components/pdf-viewer/components/PdfHeader.tsx
2929
- import { jsx as jsx14, jsxs as jsxs8 } from "react/jsx-runtime";
3266
+ import { jsx as jsx16, jsxs as jsxs10 } from "react/jsx-runtime";
2930
3267
  var PdfHeader = ({
2931
3268
  title,
2932
3269
  onDownload,
2933
3270
  onPrint
2934
3271
  }) => {
2935
- return /* @__PURE__ */ jsxs8("div", { className: "flex items-center justify-between gap-4 px-4 py-3 bg-neutral-400 border-b border-subtle", children: [
2936
- /* @__PURE__ */ jsx14("div", { className: "flex-shrink min-w-0", children: /* @__PURE__ */ jsx14(
3272
+ return /* @__PURE__ */ jsxs10("div", { className: "flex items-center justify-between gap-4 px-4 py-3 bg-neutral-400 border-b border-subtle", children: [
3273
+ /* @__PURE__ */ jsx16("div", { className: "flex-shrink min-w-0", children: /* @__PURE__ */ jsx16(
2937
3274
  Typography,
2938
3275
  {
2939
3276
  variant: "label-md-bold",
@@ -2942,25 +3279,25 @@ var PdfHeader = ({
2942
3279
  children: title || "Untitled Document"
2943
3280
  }
2944
3281
  ) }),
2945
- /* @__PURE__ */ jsxs8("div", { className: "flex items-center gap-2 flex-shrink-0", children: [
2946
- /* @__PURE__ */ jsx14(
3282
+ /* @__PURE__ */ jsxs10("div", { className: "flex items-center gap-2 flex-shrink-0", children: [
3283
+ /* @__PURE__ */ jsx16(
2947
3284
  "button",
2948
3285
  {
2949
3286
  onClick: onDownload,
2950
3287
  className: "p-2 hover:bg-neutral-500 rounded transition-colors",
2951
3288
  "aria-label": "Download PDF",
2952
3289
  type: "button",
2953
- children: /* @__PURE__ */ jsx14(Download, { variant: "dark", className: "w-5 h-5" })
3290
+ children: /* @__PURE__ */ jsx16(Download, { variant: "dark", className: "w-5 h-5" })
2954
3291
  }
2955
3292
  ),
2956
- /* @__PURE__ */ jsx14(
3293
+ /* @__PURE__ */ jsx16(
2957
3294
  "button",
2958
3295
  {
2959
3296
  onClick: onPrint,
2960
3297
  className: "p-2 hover:bg-neutral-500 rounded transition-colors",
2961
3298
  "aria-label": "Print PDF",
2962
3299
  type: "button",
2963
- children: /* @__PURE__ */ jsx14(Print, { variant: "dark", className: "w-5 h-5" })
3300
+ children: /* @__PURE__ */ jsx16(Print, { variant: "dark", className: "w-5 h-5" })
2964
3301
  }
2965
3302
  )
2966
3303
  ] })
@@ -2969,12 +3306,12 @@ var PdfHeader = ({
2969
3306
  PdfHeader.displayName = "PdfHeader";
2970
3307
 
2971
3308
  // src/components/pdf-viewer/hooks/useContainerWidth.ts
2972
- import * as React11 from "react";
3309
+ import * as React13 from "react";
2973
3310
  function useContainerWidth(padding = 32) {
2974
- const [containerWidth, setContainerWidth] = React11.useState(0);
2975
- const containerRef = React11.useRef(null);
2976
- const lastWidthRef = React11.useRef(0);
2977
- React11.useEffect(() => {
3311
+ const [containerWidth, setContainerWidth] = React13.useState(0);
3312
+ const containerRef = React13.useRef(null);
3313
+ const lastWidthRef = React13.useRef(0);
3314
+ React13.useEffect(() => {
2978
3315
  const element = containerRef.current;
2979
3316
  if (!element) return;
2980
3317
  const resizeObserver = new ResizeObserver((entries) => {
@@ -2998,9 +3335,9 @@ function useContainerWidth(padding = 32) {
2998
3335
  }
2999
3336
 
3000
3337
  // src/components/pdf-viewer/hooks/usePdfDownload.ts
3001
- import * as React12 from "react";
3338
+ import * as React14 from "react";
3002
3339
  function usePdfDownload(file, title) {
3003
- const download = React12.useCallback(async () => {
3340
+ const download = React14.useCallback(async () => {
3004
3341
  if (!file) return;
3005
3342
  try {
3006
3343
  let blob;
@@ -3032,11 +3369,11 @@ function usePdfDownload(file, title) {
3032
3369
  }
3033
3370
 
3034
3371
  // src/components/pdf-viewer/hooks/usePdfPrint.ts
3035
- import * as React13 from "react";
3372
+ import * as React15 from "react";
3036
3373
  function usePdfPrint(file) {
3037
- const [printBlobUrl, setPrintBlobUrl] = React13.useState(null);
3038
- const printFrameRef = React13.useRef(null);
3039
- const preparePrint = React13.useCallback(async () => {
3374
+ const [printBlobUrl, setPrintBlobUrl] = React15.useState(null);
3375
+ const printFrameRef = React15.useRef(null);
3376
+ const preparePrint = React15.useCallback(async () => {
3040
3377
  if (!file) return;
3041
3378
  try {
3042
3379
  let blob;
@@ -3052,14 +3389,14 @@ function usePdfPrint(file) {
3052
3389
  console.error("Failed to prepare PDF for printing:", error);
3053
3390
  }
3054
3391
  }, [file]);
3055
- React13.useEffect(() => {
3392
+ React15.useEffect(() => {
3056
3393
  return () => {
3057
3394
  if (printBlobUrl) {
3058
3395
  URL.revokeObjectURL(printBlobUrl);
3059
3396
  }
3060
3397
  };
3061
3398
  }, [printBlobUrl]);
3062
- const print = React13.useCallback(() => {
3399
+ const print = React15.useCallback(() => {
3063
3400
  if (printFrameRef.current?.contentWindow) {
3064
3401
  printFrameRef.current.contentWindow.print();
3065
3402
  }
@@ -3074,8 +3411,8 @@ function initializePdfWorker(workerUrl) {
3074
3411
  }
3075
3412
 
3076
3413
  // src/components/pdf-viewer/index.tsx
3077
- import { jsx as jsx15, jsxs as jsxs9 } from "react/jsx-runtime";
3078
- var PdfViewer = React14.forwardRef(
3414
+ import { jsx as jsx17, jsxs as jsxs11 } from "react/jsx-runtime";
3415
+ var PdfViewer = React16.forwardRef(
3079
3416
  ({
3080
3417
  file,
3081
3418
  title,
@@ -3092,35 +3429,35 @@ var PdfViewer = React14.forwardRef(
3092
3429
  const { printFrameRef, printBlobUrl, preparePrint, print } = usePdfPrint(file);
3093
3430
  const download = usePdfDownload(file, title);
3094
3431
  const effectiveWidth = pageWidth || containerWidth;
3095
- const handleLoadSuccess = React14.useCallback(
3432
+ const handleLoadSuccess = React16.useCallback(
3096
3433
  async (numPages) => {
3097
3434
  onLoadSuccess?.(numPages);
3098
3435
  await preparePrint();
3099
3436
  },
3100
3437
  [onLoadSuccess, preparePrint]
3101
3438
  );
3102
- const handleDownload = React14.useCallback(() => {
3439
+ const handleDownload = React16.useCallback(() => {
3103
3440
  if (onDownload) {
3104
3441
  onDownload();
3105
3442
  return;
3106
3443
  }
3107
3444
  download();
3108
3445
  }, [onDownload, download]);
3109
- const handlePrint = React14.useCallback(() => {
3446
+ const handlePrint = React16.useCallback(() => {
3110
3447
  if (onPrint) {
3111
3448
  onPrint();
3112
3449
  return;
3113
3450
  }
3114
3451
  print();
3115
3452
  }, [onPrint, print]);
3116
- return /* @__PURE__ */ jsxs9(
3453
+ return /* @__PURE__ */ jsxs11(
3117
3454
  "div",
3118
3455
  {
3119
3456
  ref,
3120
3457
  className: cn("h-full flex flex-col", className),
3121
3458
  ...props,
3122
3459
  children: [
3123
- printBlobUrl && /* @__PURE__ */ jsx15(
3460
+ printBlobUrl && /* @__PURE__ */ jsx17(
3124
3461
  "iframe",
3125
3462
  {
3126
3463
  ref: printFrameRef,
@@ -3129,7 +3466,7 @@ var PdfViewer = React14.forwardRef(
3129
3466
  title: "PDF for printing"
3130
3467
  }
3131
3468
  ),
3132
- /* @__PURE__ */ jsx15(
3469
+ /* @__PURE__ */ jsx17(
3133
3470
  PdfHeader,
3134
3471
  {
3135
3472
  title,
@@ -3137,12 +3474,12 @@ var PdfViewer = React14.forwardRef(
3137
3474
  onPrint: handlePrint
3138
3475
  }
3139
3476
  ),
3140
- /* @__PURE__ */ jsx15(
3477
+ /* @__PURE__ */ jsx17(
3141
3478
  "div",
3142
3479
  {
3143
3480
  ref: containerRef,
3144
3481
  className: "flex-1 overflow-y-auto overflow-x-hidden bg-neutral-300",
3145
- children: /* @__PURE__ */ jsx15(
3482
+ children: /* @__PURE__ */ jsx17(
3146
3483
  PdfDocument,
3147
3484
  {
3148
3485
  file,
@@ -3162,9 +3499,9 @@ var PdfViewer = React14.forwardRef(
3162
3499
  PdfViewer.displayName = "PdfViewer";
3163
3500
 
3164
3501
  // src/components/ui/tabs.tsx
3165
- import * as React15 from "react";
3502
+ import * as React17 from "react";
3166
3503
  import { cva as cva9 } from "class-variance-authority";
3167
- import { jsx as jsx16 } from "react/jsx-runtime";
3504
+ import { jsx as jsx18 } from "react/jsx-runtime";
3168
3505
  var tabsVariants = cva9(
3169
3506
  "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",
3170
3507
  {
@@ -3178,17 +3515,17 @@ var tabsVariants = cva9(
3178
3515
  }
3179
3516
  }
3180
3517
  );
3181
- var TabsContext = React15.createContext(
3518
+ var TabsContext = React17.createContext(
3182
3519
  void 0
3183
3520
  );
3184
3521
  function useTabsContext() {
3185
- const context = React15.useContext(TabsContext);
3522
+ const context = React17.useContext(TabsContext);
3186
3523
  if (!context) {
3187
3524
  throw new Error("Tabs components must be used within a Tabs provider");
3188
3525
  }
3189
3526
  return context;
3190
3527
  }
3191
- var Tabs = React15.forwardRef((props, ref) => {
3528
+ var Tabs = React17.forwardRef((props, ref) => {
3192
3529
  const {
3193
3530
  className,
3194
3531
  value,
@@ -3197,7 +3534,7 @@ var Tabs = React15.forwardRef((props, ref) => {
3197
3534
  children,
3198
3535
  ...restProps
3199
3536
  } = props;
3200
- const contextValue = React15.useMemo(
3537
+ const contextValue = React17.useMemo(
3201
3538
  () => ({
3202
3539
  activeTab: value,
3203
3540
  setActiveTab: onValueChange,
@@ -3205,13 +3542,13 @@ var Tabs = React15.forwardRef((props, ref) => {
3205
3542
  }),
3206
3543
  [value, onValueChange, variant]
3207
3544
  );
3208
- return /* @__PURE__ */ jsx16(TabsContext.Provider, { value: contextValue, children: /* @__PURE__ */ jsx16("div", { ref, className: cn("w-full", className), ...restProps, children }) });
3545
+ return /* @__PURE__ */ jsx18(TabsContext.Provider, { value: contextValue, children: /* @__PURE__ */ jsx18("div", { ref, className: cn("w-full", className), ...restProps, children }) });
3209
3546
  });
3210
3547
  Tabs.displayName = "Tabs";
3211
- var TabsList = React15.forwardRef(
3548
+ var TabsList = React17.forwardRef(
3212
3549
  (props, ref) => {
3213
3550
  const { className, children, ...restProps } = props;
3214
- return /* @__PURE__ */ jsx16(
3551
+ return /* @__PURE__ */ jsx18(
3215
3552
  "div",
3216
3553
  {
3217
3554
  ref,
@@ -3227,7 +3564,7 @@ TabsList.displayName = "TabsList";
3227
3564
  var getTabTypographyStyles = (isActive) => ({
3228
3565
  font: isActive ? "var(--typography-label-sm-bold)" : "var(--typography-label-sm-regular)"
3229
3566
  });
3230
- var TabsTrigger = React15.forwardRef(
3567
+ var TabsTrigger = React17.forwardRef(
3231
3568
  (props, ref) => {
3232
3569
  const { className, value, disabled, style, children, ...restProps } = props;
3233
3570
  const { activeTab, setActiveTab, variant } = useTabsContext();
@@ -3235,22 +3572,22 @@ var TabsTrigger = React15.forwardRef(
3235
3572
  throw new Error("TabsTrigger must have a value prop");
3236
3573
  }
3237
3574
  const isActive = activeTab === value;
3238
- const tokenStyles = React15.useMemo(
3575
+ const tokenStyles = React17.useMemo(
3239
3576
  () => ({
3240
3577
  ...getTabTypographyStyles(isActive),
3241
3578
  ...style
3242
3579
  }),
3243
3580
  [isActive, style]
3244
3581
  );
3245
- const triggerClassName = React15.useMemo(
3582
+ const triggerClassName = React17.useMemo(
3246
3583
  () => cn(tabsVariants({ variant }), className),
3247
3584
  [variant, className]
3248
3585
  );
3249
- const handleClick = React15.useCallback(() => {
3586
+ const handleClick = React17.useCallback(() => {
3250
3587
  if (disabled) return;
3251
3588
  setActiveTab(value);
3252
3589
  }, [disabled, setActiveTab, value]);
3253
- return /* @__PURE__ */ jsx16(
3590
+ return /* @__PURE__ */ jsx18(
3254
3591
  "button",
3255
3592
  {
3256
3593
  ref,
@@ -3264,13 +3601,13 @@ var TabsTrigger = React15.forwardRef(
3264
3601
  disabled,
3265
3602
  onClick: handleClick,
3266
3603
  ...restProps,
3267
- children: /* @__PURE__ */ jsx16("span", { className: "pl-3 pr-6 py-2", children })
3604
+ children: /* @__PURE__ */ jsx18("span", { className: "pl-3 pr-6 py-2", children })
3268
3605
  }
3269
3606
  );
3270
3607
  }
3271
3608
  );
3272
3609
  TabsTrigger.displayName = "TabsTrigger";
3273
- var TabsContent = React15.forwardRef(
3610
+ var TabsContent = React17.forwardRef(
3274
3611
  (props, ref) => {
3275
3612
  const { className, value, children, ...restProps } = props;
3276
3613
  const { activeTab } = useTabsContext();
@@ -3281,7 +3618,7 @@ var TabsContent = React15.forwardRef(
3281
3618
  if (!isActive) {
3282
3619
  return null;
3283
3620
  }
3284
- return /* @__PURE__ */ jsx16(
3621
+ return /* @__PURE__ */ jsx18(
3285
3622
  "div",
3286
3623
  {
3287
3624
  ref,
@@ -3299,11 +3636,11 @@ var TabsContent = React15.forwardRef(
3299
3636
  TabsContent.displayName = "TabsContent";
3300
3637
 
3301
3638
  // src/components/ui/dropdown-menu.tsx
3302
- import * as React16 from "react";
3639
+ import * as React18 from "react";
3303
3640
  import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
3304
- import { jsx as jsx17, jsxs as jsxs10 } from "react/jsx-runtime";
3641
+ import { jsx as jsx19, jsxs as jsxs12 } from "react/jsx-runtime";
3305
3642
  var DropdownMenu = DropdownMenuPrimitive.Root;
3306
- var DropdownMenuTrigger = React16.forwardRef(({ className, icon, children, ...props }, ref) => /* @__PURE__ */ jsxs10(
3643
+ var DropdownMenuTrigger = React18.forwardRef(({ className, icon, children, ...props }, ref) => /* @__PURE__ */ jsxs12(
3307
3644
  DropdownMenuPrimitive.Trigger,
3308
3645
  {
3309
3646
  ref,
@@ -3313,7 +3650,7 @@ var DropdownMenuTrigger = React16.forwardRef(({ className, icon, children, ...pr
3313
3650
  ),
3314
3651
  ...props,
3315
3652
  children: [
3316
- icon || /* @__PURE__ */ jsx17(MoreMenu, { className: "size-4" }),
3653
+ icon || /* @__PURE__ */ jsx19(MoreMenu, { className: "size-4" }),
3317
3654
  children
3318
3655
  ]
3319
3656
  }
@@ -3323,7 +3660,7 @@ var DropdownMenuGroup = DropdownMenuPrimitive.Group;
3323
3660
  var DropdownMenuPortal = DropdownMenuPrimitive.Portal;
3324
3661
  var DropdownMenuSub = DropdownMenuPrimitive.Sub;
3325
3662
  var DropdownMenuRadioGroup = DropdownMenuPrimitive.RadioGroup;
3326
- var DropdownMenuSubTrigger = React16.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ jsxs10(
3663
+ var DropdownMenuSubTrigger = React18.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ jsxs12(
3327
3664
  DropdownMenuPrimitive.SubTrigger,
3328
3665
  {
3329
3666
  ref,
@@ -3336,12 +3673,12 @@ var DropdownMenuSubTrigger = React16.forwardRef(({ className, inset, children, .
3336
3673
  ...props,
3337
3674
  children: [
3338
3675
  children,
3339
- /* @__PURE__ */ jsx17(ChevronRight, { className: "ml-auto" })
3676
+ /* @__PURE__ */ jsx19(ChevronRight, { className: "ml-auto" })
3340
3677
  ]
3341
3678
  }
3342
3679
  ));
3343
3680
  DropdownMenuSubTrigger.displayName = DropdownMenuPrimitive.SubTrigger.displayName;
3344
- var DropdownMenuSubContent = React16.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx17(
3681
+ var DropdownMenuSubContent = React18.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx19(
3345
3682
  DropdownMenuPrimitive.SubContent,
3346
3683
  {
3347
3684
  ref,
@@ -3353,7 +3690,7 @@ var DropdownMenuSubContent = React16.forwardRef(({ className, ...props }, ref) =
3353
3690
  }
3354
3691
  ));
3355
3692
  DropdownMenuSubContent.displayName = DropdownMenuPrimitive.SubContent.displayName;
3356
- var DropdownMenuContent = React16.forwardRef(({ className, sideOffset = 4, align = "end", ...props }, ref) => /* @__PURE__ */ jsx17(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx17(
3693
+ var DropdownMenuContent = React18.forwardRef(({ className, sideOffset = 4, align = "end", ...props }, ref) => /* @__PURE__ */ jsx19(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx19(
3357
3694
  DropdownMenuPrimitive.Content,
3358
3695
  {
3359
3696
  ref,
@@ -3367,7 +3704,7 @@ var DropdownMenuContent = React16.forwardRef(({ className, sideOffset = 4, align
3367
3704
  }
3368
3705
  ) }));
3369
3706
  DropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName;
3370
- var DropdownMenuItem = React16.forwardRef(({ className, inset, style, ...props }, ref) => /* @__PURE__ */ jsx17(
3707
+ var DropdownMenuItem = React18.forwardRef(({ className, inset, style, ...props }, ref) => /* @__PURE__ */ jsx19(
3371
3708
  DropdownMenuPrimitive.Item,
3372
3709
  {
3373
3710
  ref,
@@ -3384,7 +3721,7 @@ var DropdownMenuItem = React16.forwardRef(({ className, inset, style, ...props }
3384
3721
  }
3385
3722
  ));
3386
3723
  DropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName;
3387
- var DropdownMenuCheckboxItem = React16.forwardRef(({ className, children, style, checked, ...props }, ref) => /* @__PURE__ */ jsxs10(
3724
+ var DropdownMenuCheckboxItem = React18.forwardRef(({ className, children, style, checked, ...props }, ref) => /* @__PURE__ */ jsxs12(
3388
3725
  DropdownMenuPrimitive.CheckboxItem,
3389
3726
  {
3390
3727
  ref,
@@ -3399,7 +3736,7 @@ var DropdownMenuCheckboxItem = React16.forwardRef(({ className, children, style,
3399
3736
  },
3400
3737
  ...props,
3401
3738
  children: [
3402
- /* @__PURE__ */ jsx17(
3739
+ /* @__PURE__ */ jsx19(
3403
3740
  Checkbox,
3404
3741
  {
3405
3742
  checked: checked === true,
@@ -3407,12 +3744,12 @@ var DropdownMenuCheckboxItem = React16.forwardRef(({ className, children, style,
3407
3744
  "aria-hidden": "true"
3408
3745
  }
3409
3746
  ),
3410
- /* @__PURE__ */ jsx17("span", { className: "flex-1", children })
3747
+ /* @__PURE__ */ jsx19("span", { className: "flex-1", children })
3411
3748
  ]
3412
3749
  }
3413
3750
  ));
3414
3751
  DropdownMenuCheckboxItem.displayName = DropdownMenuPrimitive.CheckboxItem.displayName;
3415
- var DropdownMenuRadioItem = React16.forwardRef(({ className, children, style, ...props }, ref) => /* @__PURE__ */ jsxs10(
3752
+ var DropdownMenuRadioItem = React18.forwardRef(({ className, children, style, ...props }, ref) => /* @__PURE__ */ jsxs12(
3416
3753
  DropdownMenuPrimitive.RadioItem,
3417
3754
  {
3418
3755
  ref,
@@ -3426,13 +3763,13 @@ var DropdownMenuRadioItem = React16.forwardRef(({ className, children, style, ..
3426
3763
  },
3427
3764
  ...props,
3428
3765
  children: [
3429
- /* @__PURE__ */ jsx17("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ jsx17(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx17("span", { className: "h-2 w-2 rounded-full bg-current" }) }) }),
3766
+ /* @__PURE__ */ jsx19("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ jsx19(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx19("span", { className: "h-2 w-2 rounded-full bg-current" }) }) }),
3430
3767
  children
3431
3768
  ]
3432
3769
  }
3433
3770
  ));
3434
3771
  DropdownMenuRadioItem.displayName = DropdownMenuPrimitive.RadioItem.displayName;
3435
- var DropdownMenuLabel = React16.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx17(
3772
+ var DropdownMenuLabel = React18.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx19(
3436
3773
  DropdownMenuPrimitive.Label,
3437
3774
  {
3438
3775
  ref,
@@ -3445,7 +3782,7 @@ var DropdownMenuLabel = React16.forwardRef(({ className, inset, ...props }, ref)
3445
3782
  }
3446
3783
  ));
3447
3784
  DropdownMenuLabel.displayName = DropdownMenuPrimitive.Label.displayName;
3448
- var DropdownMenuSeparator = React16.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx17(
3785
+ var DropdownMenuSeparator = React18.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx19(
3449
3786
  DropdownMenuPrimitive.Separator,
3450
3787
  {
3451
3788
  ref,
@@ -3458,7 +3795,7 @@ var DropdownMenuShortcut = ({
3458
3795
  className,
3459
3796
  ...props
3460
3797
  }) => {
3461
- return /* @__PURE__ */ jsx17(
3798
+ return /* @__PURE__ */ jsx19(
3462
3799
  "span",
3463
3800
  {
3464
3801
  className: cn("ml-auto text-xs tracking-widest opacity-60", className),
@@ -3469,21 +3806,21 @@ var DropdownMenuShortcut = ({
3469
3806
  DropdownMenuShortcut.displayName = "DropdownMenuShortcut";
3470
3807
 
3471
3808
  // src/components/ui/charts/chart-legend.tsx
3472
- import { jsx as jsx18, jsxs as jsxs11 } from "react/jsx-runtime";
3809
+ import { jsx as jsx20, jsxs as jsxs13 } from "react/jsx-runtime";
3473
3810
  function ChartLegend({
3474
3811
  items,
3475
3812
  x = 0,
3476
3813
  y = 550,
3477
3814
  className = ""
3478
3815
  }) {
3479
- return /* @__PURE__ */ jsx18("foreignObject", { x, y, width: "100%", height: "40", children: /* @__PURE__ */ jsx18(
3816
+ return /* @__PURE__ */ jsx20("foreignObject", { x, y, width: "100%", height: "40", children: /* @__PURE__ */ jsx20(
3480
3817
  "div",
3481
3818
  {
3482
3819
  className: `flex justify-center items-center gap-6 ${className}`,
3483
3820
  style: { height: "100%" },
3484
- children: items.map(({ key, color, label }) => /* @__PURE__ */ jsxs11("div", { className: "flex items-center gap-2", children: [
3485
- /* @__PURE__ */ jsx18("div", { className: "w-3 h-3", style: { backgroundColor: color } }),
3486
- /* @__PURE__ */ jsx18(Typography, { variant: "body-xs", children: label || key })
3821
+ children: items.map(({ key, color, label }) => /* @__PURE__ */ jsxs13("div", { className: "flex items-center gap-2", children: [
3822
+ /* @__PURE__ */ jsx20("div", { className: "w-3 h-3", style: { backgroundColor: color } }),
3823
+ /* @__PURE__ */ jsx20(Typography, { variant: "body-xs", children: label || key })
3487
3824
  ] }, key))
3488
3825
  }
3489
3826
  ) });
@@ -3601,12 +3938,12 @@ var formatLargeNumber = (value) => {
3601
3938
  };
3602
3939
 
3603
3940
  // src/components/ui/charts/chart-labels.tsx
3604
- import { jsx as jsx19 } from "react/jsx-runtime";
3941
+ import { jsx as jsx21 } from "react/jsx-runtime";
3605
3942
  var createCustomXAxisLabel = (text, yOffset = 40) => {
3606
3943
  const CustomXAxisLabel = ({ viewBox }) => {
3607
3944
  if (!viewBox) return null;
3608
3945
  const { x, y, width } = viewBox;
3609
- return /* @__PURE__ */ jsx19("g", { children: /* @__PURE__ */ jsx19("foreignObject", { x, y: y + yOffset, width, height: 20, children: /* @__PURE__ */ jsx19("div", { className: "flex justify-center w-full", children: /* @__PURE__ */ jsx19(Typography, { variant: "label-xs-bold", className: "text-secondary", children: text }) }) }) });
3946
+ return /* @__PURE__ */ jsx21("g", { children: /* @__PURE__ */ jsx21("foreignObject", { x, y: y + yOffset, width, height: 20, children: /* @__PURE__ */ jsx21("div", { className: "flex justify-center w-full", children: /* @__PURE__ */ jsx21(Typography, { variant: "label-xs-bold", className: "text-secondary", children: text }) }) }) });
3610
3947
  };
3611
3948
  CustomXAxisLabel.displayName = "CustomXAxisLabel";
3612
3949
  return CustomXAxisLabel;
@@ -3616,7 +3953,7 @@ var createCustomYAxisLabel = (text, leftMargin) => {
3616
3953
  if (!viewBox) return null;
3617
3954
  const { x, y, height } = viewBox;
3618
3955
  const offset = leftMargin ? leftMargin + 10 : 110;
3619
- return /* @__PURE__ */ jsx19("g", { children: /* @__PURE__ */ jsx19("foreignObject", { x: x - offset, y, width: 100, height, children: /* @__PURE__ */ jsx19("div", { className: "flex items-center justify-center h-full transform -rotate-90 whitespace-nowrap", children: /* @__PURE__ */ jsx19(Typography, { variant: "label-xs-bold", className: "text-secondary", children: text }) }) }) });
3956
+ return /* @__PURE__ */ jsx21("g", { children: /* @__PURE__ */ jsx21("foreignObject", { x: x - offset, y, width: 100, height, children: /* @__PURE__ */ jsx21("div", { className: "flex items-center justify-center h-full transform -rotate-90 whitespace-nowrap", children: /* @__PURE__ */ jsx21(Typography, { variant: "label-xs-bold", className: "text-secondary", children: text }) }) }) });
3620
3957
  };
3621
3958
  CustomYAxisLabel.displayName = "CustomYAxisLabel";
3622
3959
  return CustomYAxisLabel;
@@ -3625,14 +3962,14 @@ var createCustomYAxisRightLabel = (text) => {
3625
3962
  const CustomYAxisRightLabel = ({ viewBox }) => {
3626
3963
  if (!viewBox) return null;
3627
3964
  const { x, y, width, height } = viewBox;
3628
- return /* @__PURE__ */ jsx19("g", { children: /* @__PURE__ */ jsx19("foreignObject", { x: x + width - 70, y, width: 120, height, children: /* @__PURE__ */ jsx19("div", { className: "flex items-center justify-center h-full transform rotate-90 whitespace-nowrap", children: /* @__PURE__ */ jsx19(Typography, { variant: "label-xs-bold", className: "text-secondary", children: text }) }) }) });
3965
+ return /* @__PURE__ */ jsx21("g", { children: /* @__PURE__ */ jsx21("foreignObject", { x: x + width - 70, y, width: 120, height, children: /* @__PURE__ */ jsx21("div", { className: "flex items-center justify-center h-full transform rotate-90 whitespace-nowrap", children: /* @__PURE__ */ jsx21(Typography, { variant: "label-xs-bold", className: "text-secondary", children: text }) }) }) });
3629
3966
  };
3630
3967
  CustomYAxisRightLabel.displayName = "CustomYAxisRightLabel";
3631
3968
  return CustomYAxisRightLabel;
3632
3969
  };
3633
3970
  var customXAxisTick = (props) => {
3634
3971
  const { x, y, payload } = props;
3635
- return /* @__PURE__ */ jsx19("g", { transform: `translate(${x},${y})`, children: /* @__PURE__ */ jsx19(
3972
+ return /* @__PURE__ */ jsx21("g", { transform: `translate(${x},${y})`, children: /* @__PURE__ */ jsx21(
3636
3973
  "foreignObject",
3637
3974
  {
3638
3975
  x: -20,
@@ -3640,12 +3977,12 @@ var customXAxisTick = (props) => {
3640
3977
  width: 40,
3641
3978
  height: 20,
3642
3979
  style: { overflow: "visible" },
3643
- children: /* @__PURE__ */ jsx19(
3980
+ children: /* @__PURE__ */ jsx21(
3644
3981
  "div",
3645
3982
  {
3646
3983
  className: "flex items-start justify-center h-full",
3647
3984
  style: { overflow: "visible" },
3648
- children: /* @__PURE__ */ jsx19(
3985
+ children: /* @__PURE__ */ jsx21(
3649
3986
  Typography,
3650
3987
  {
3651
3988
  variant: "body-xs",
@@ -3660,7 +3997,7 @@ var customXAxisTick = (props) => {
3660
3997
  };
3661
3998
  var customXAxisTickRotated = (props) => {
3662
3999
  const { x, y, payload } = props;
3663
- return /* @__PURE__ */ jsx19("g", { transform: `translate(${x},${y})`, children: /* @__PURE__ */ jsx19(
4000
+ return /* @__PURE__ */ jsx21("g", { transform: `translate(${x},${y})`, children: /* @__PURE__ */ jsx21(
3664
4001
  "text",
3665
4002
  {
3666
4003
  x: 0,
@@ -3679,25 +4016,25 @@ var customYAxisTick = (props) => {
3679
4016
  const { x, y, payload } = props;
3680
4017
  const text = String(payload.value);
3681
4018
  const estimatedWidth = Math.max(text.length * 8, 80);
3682
- return /* @__PURE__ */ jsx19(
4019
+ return /* @__PURE__ */ jsx21(
3683
4020
  "foreignObject",
3684
4021
  {
3685
4022
  x: x - estimatedWidth + 5,
3686
4023
  y: y - 6,
3687
4024
  width: estimatedWidth,
3688
4025
  height: 15,
3689
- children: /* @__PURE__ */ jsx19("div", { className: "flex justify-end w-full", children: /* @__PURE__ */ jsx19(Typography, { variant: "body-xs", className: "text-secondary", children: payload.value }) })
4026
+ children: /* @__PURE__ */ jsx21("div", { className: "flex justify-end w-full", children: /* @__PURE__ */ jsx21(Typography, { variant: "body-xs", className: "text-secondary", children: payload.value }) })
3690
4027
  }
3691
4028
  );
3692
4029
  };
3693
4030
 
3694
4031
  // src/components/ui/charts/chart-tooltip.tsx
3695
- import { Fragment, jsx as jsx20, jsxs as jsxs12 } from "react/jsx-runtime";
4032
+ import { Fragment, jsx as jsx22, jsxs as jsxs14 } from "react/jsx-runtime";
3696
4033
  function TooltipContainer({
3697
4034
  children,
3698
4035
  className = ""
3699
4036
  }) {
3700
- return /* @__PURE__ */ jsx20(
4037
+ return /* @__PURE__ */ jsx22(
3701
4038
  "div",
3702
4039
  {
3703
4040
  className: `bg-light border border-subtle rounded p-2.5 text-dark ${className}`,
@@ -3711,10 +4048,10 @@ function TooltipItem({
3711
4048
  value,
3712
4049
  className = ""
3713
4050
  }) {
3714
- return /* @__PURE__ */ jsxs12(Fragment, { children: [
3715
- /* @__PURE__ */ jsx20("br", {}),
3716
- /* @__PURE__ */ jsxs12(Typography, { variant: "label-sm", className, children: [
3717
- /* @__PURE__ */ jsx20(
4051
+ return /* @__PURE__ */ jsxs14(Fragment, { children: [
4052
+ /* @__PURE__ */ jsx22("br", {}),
4053
+ /* @__PURE__ */ jsxs14(Typography, { variant: "label-sm", className, children: [
4054
+ /* @__PURE__ */ jsx22(
3718
4055
  "span",
3719
4056
  {
3720
4057
  className: "inline-block w-3 h-3 mr-1.5",
@@ -3732,9 +4069,9 @@ function GenericTooltip({
3732
4069
  items,
3733
4070
  className = ""
3734
4071
  }) {
3735
- return /* @__PURE__ */ jsxs12(TooltipContainer, { className, children: [
3736
- title && /* @__PURE__ */ jsx20(Typography, { variant: "label-sm-bold", children: title }),
3737
- items.map((item, index) => /* @__PURE__ */ jsx20(
4072
+ return /* @__PURE__ */ jsxs14(TooltipContainer, { className, children: [
4073
+ title && /* @__PURE__ */ jsx22(Typography, { variant: "label-sm-bold", children: title }),
4074
+ items.map((item, index) => /* @__PURE__ */ jsx22(
3738
4075
  TooltipItem,
3739
4076
  {
3740
4077
  color: item.color,
@@ -3747,17 +4084,17 @@ function GenericTooltip({
3747
4084
  }
3748
4085
 
3749
4086
  // src/components/ui/charts/bar-chart.tsx
3750
- import { forwardRef as forwardRef13 } from "react";
4087
+ import { forwardRef as forwardRef15 } from "react";
3751
4088
  import {
3752
4089
  BarChart as RechartsBarChart,
3753
4090
  Bar,
3754
4091
  XAxis,
3755
4092
  YAxis,
3756
- Tooltip,
4093
+ Tooltip as Tooltip2,
3757
4094
  ResponsiveContainer
3758
4095
  } from "recharts";
3759
- import { jsx as jsx21, jsxs as jsxs13 } from "react/jsx-runtime";
3760
- var BarChart = forwardRef13(
4096
+ import { jsx as jsx23, jsxs as jsxs15 } from "react/jsx-runtime";
4097
+ var BarChart = forwardRef15(
3761
4098
  ({
3762
4099
  data,
3763
4100
  xAxisKey,
@@ -3783,19 +4120,19 @@ var BarChart = forwardRef13(
3783
4120
  };
3784
4121
  const defaultLegendItems = showLegend && legendItems.length === 0 ? [{ key: yAxisKey, color: barColor, label: yAxisKey }] : legendItems;
3785
4122
  const hasData = data && data.length > 0;
3786
- return /* @__PURE__ */ jsxs13(
4123
+ return /* @__PURE__ */ jsxs15(
3787
4124
  "div",
3788
4125
  {
3789
4126
  ref,
3790
4127
  className: `bg-light border border-subtle mx-6 ${className}`,
3791
4128
  children: [
3792
- /* @__PURE__ */ jsx21("div", { className: "flex items-center justify-between px-3 py-2 border-b border-subtle", children: /* @__PURE__ */ jsx21(Typography, { variant: "label-sm-bold", children: title }) }),
3793
- /* @__PURE__ */ jsx21("div", { className: "pt-2 px-2", children: hasData ? /* @__PURE__ */ jsx21(
4129
+ /* @__PURE__ */ jsx23("div", { className: "flex items-center justify-between px-3 py-2 border-b border-subtle", children: /* @__PURE__ */ jsx23(Typography, { variant: "label-sm-bold", children: title }) }),
4130
+ /* @__PURE__ */ jsx23("div", { className: "pt-2 px-2", children: hasData ? /* @__PURE__ */ jsx23(
3794
4131
  ResponsiveContainer,
3795
4132
  {
3796
4133
  width: "100%",
3797
4134
  height: CHART_CONSTANTS.STANDARD_HEIGHT,
3798
- children: /* @__PURE__ */ jsxs13(
4135
+ children: /* @__PURE__ */ jsxs15(
3799
4136
  RechartsBarChart,
3800
4137
  {
3801
4138
  data,
@@ -3807,7 +4144,7 @@ var BarChart = forwardRef13(
3807
4144
  onClick: handleClick,
3808
4145
  layout,
3809
4146
  children: [
3810
- /* @__PURE__ */ jsx21(
4147
+ /* @__PURE__ */ jsx23(
3811
4148
  XAxis,
3812
4149
  {
3813
4150
  dataKey: xAxisKey,
@@ -3821,7 +4158,7 @@ var BarChart = forwardRef13(
3821
4158
  label: xAxisLabel ? createCustomXAxisLabel(xAxisLabel, 80) : void 0
3822
4159
  }
3823
4160
  ),
3824
- /* @__PURE__ */ jsx21(
4161
+ /* @__PURE__ */ jsx23(
3825
4162
  YAxis,
3826
4163
  {
3827
4164
  axisLine: false,
@@ -3832,8 +4169,8 @@ var BarChart = forwardRef13(
3832
4169
  type: yAxisType
3833
4170
  }
3834
4171
  ),
3835
- /* @__PURE__ */ jsx21(
3836
- Tooltip,
4172
+ /* @__PURE__ */ jsx23(
4173
+ Tooltip2,
3837
4174
  {
3838
4175
  content: ({
3839
4176
  active,
@@ -3841,7 +4178,7 @@ var BarChart = forwardRef13(
3841
4178
  label
3842
4179
  }) => {
3843
4180
  if (active && payload && payload.length) {
3844
- return /* @__PURE__ */ jsx21(
4181
+ return /* @__PURE__ */ jsx23(
3845
4182
  GenericTooltip,
3846
4183
  {
3847
4184
  title: label?.toString(),
@@ -3857,7 +4194,7 @@ var BarChart = forwardRef13(
3857
4194
  }
3858
4195
  }
3859
4196
  ),
3860
- /* @__PURE__ */ jsx21(
4197
+ /* @__PURE__ */ jsx23(
3861
4198
  Bar,
3862
4199
  {
3863
4200
  dataKey: barDataKey || yAxisKey,
@@ -3865,12 +4202,12 @@ var BarChart = forwardRef13(
3865
4202
  name: barDataKey || yAxisKey
3866
4203
  }
3867
4204
  ),
3868
- showLegend && defaultLegendItems.length > 0 && /* @__PURE__ */ jsx21(ChartLegend, { items: defaultLegendItems })
4205
+ showLegend && defaultLegendItems.length > 0 && /* @__PURE__ */ jsx23(ChartLegend, { items: defaultLegendItems })
3869
4206
  ]
3870
4207
  }
3871
4208
  )
3872
4209
  }
3873
- ) : /* @__PURE__ */ jsx21("div", { className: "flex items-center justify-center h-[500px]", children: /* @__PURE__ */ jsx21(Typography, { variant: "body-md", className: "text-secondary", children: "No data is available" }) }) })
4210
+ ) : /* @__PURE__ */ jsx23("div", { className: "flex items-center justify-center h-[500px]", children: /* @__PURE__ */ jsx23(Typography, { variant: "body-md", className: "text-secondary", children: "No data is available" }) }) })
3874
4211
  ]
3875
4212
  }
3876
4213
  );
@@ -3879,17 +4216,17 @@ var BarChart = forwardRef13(
3879
4216
  BarChart.displayName = "BarChart";
3880
4217
 
3881
4218
  // src/components/ui/charts/line-chart.tsx
3882
- import { forwardRef as forwardRef14 } from "react";
4219
+ import { forwardRef as forwardRef16 } from "react";
3883
4220
  import {
3884
4221
  LineChart as RechartsLineChart,
3885
4222
  Line,
3886
4223
  XAxis as XAxis2,
3887
4224
  YAxis as YAxis2,
3888
- Tooltip as Tooltip2,
4225
+ Tooltip as Tooltip3,
3889
4226
  ResponsiveContainer as ResponsiveContainer2
3890
4227
  } from "recharts";
3891
- import { jsx as jsx22, jsxs as jsxs14 } from "react/jsx-runtime";
3892
- var LineChart = forwardRef14(
4228
+ import { jsx as jsx24, jsxs as jsxs16 } from "react/jsx-runtime";
4229
+ var LineChart = forwardRef16(
3893
4230
  ({
3894
4231
  data,
3895
4232
  xAxisKey,
@@ -3917,19 +4254,19 @@ var LineChart = forwardRef14(
3917
4254
  )
3918
4255
  );
3919
4256
  const hasData = data && data.length > 0;
3920
- return /* @__PURE__ */ jsxs14(
4257
+ return /* @__PURE__ */ jsxs16(
3921
4258
  "div",
3922
4259
  {
3923
4260
  ref,
3924
4261
  className: `bg-light border border-subtle mx-6 ${className}`,
3925
4262
  children: [
3926
- /* @__PURE__ */ jsx22("div", { className: "flex items-center justify-between px-3 py-2 border-b border-subtle", children: /* @__PURE__ */ jsx22(Typography, { variant: "label-sm-bold", children: title }) }),
3927
- /* @__PURE__ */ jsx22("div", { className: "pt-2 px-2", children: hasData ? /* @__PURE__ */ jsx22(
4263
+ /* @__PURE__ */ jsx24("div", { className: "flex items-center justify-between px-3 py-2 border-b border-subtle", children: /* @__PURE__ */ jsx24(Typography, { variant: "label-sm-bold", children: title }) }),
4264
+ /* @__PURE__ */ jsx24("div", { className: "pt-2 px-2", children: hasData ? /* @__PURE__ */ jsx24(
3928
4265
  ResponsiveContainer2,
3929
4266
  {
3930
4267
  width: "100%",
3931
4268
  height: CHART_CONSTANTS.STANDARD_HEIGHT,
3932
- children: /* @__PURE__ */ jsxs14(
4269
+ children: /* @__PURE__ */ jsxs16(
3933
4270
  RechartsLineChart,
3934
4271
  {
3935
4272
  data,
@@ -3940,7 +4277,7 @@ var LineChart = forwardRef14(
3940
4277
  },
3941
4278
  onClick: handleClick,
3942
4279
  children: [
3943
- /* @__PURE__ */ jsx22(
4280
+ /* @__PURE__ */ jsx24(
3944
4281
  XAxis2,
3945
4282
  {
3946
4283
  dataKey: xAxisKey,
@@ -3952,7 +4289,7 @@ var LineChart = forwardRef14(
3952
4289
  label: xAxisLabel ? createCustomXAxisLabel(xAxisLabel) : void 0
3953
4290
  }
3954
4291
  ),
3955
- /* @__PURE__ */ jsx22(
4292
+ /* @__PURE__ */ jsx24(
3956
4293
  YAxis2,
3957
4294
  {
3958
4295
  axisLine: false,
@@ -3961,8 +4298,8 @@ var LineChart = forwardRef14(
3961
4298
  label: yAxisLabel ? createCustomYAxisLabel(yAxisLabel, 40) : void 0
3962
4299
  }
3963
4300
  ),
3964
- /* @__PURE__ */ jsx22(
3965
- Tooltip2,
4301
+ /* @__PURE__ */ jsx24(
4302
+ Tooltip3,
3966
4303
  {
3967
4304
  content: ({
3968
4305
  active,
@@ -3970,7 +4307,7 @@ var LineChart = forwardRef14(
3970
4307
  label
3971
4308
  }) => {
3972
4309
  if (active && payload && payload.length) {
3973
- return /* @__PURE__ */ jsx22(
4310
+ return /* @__PURE__ */ jsx24(
3974
4311
  GenericTooltip,
3975
4312
  {
3976
4313
  title: label?.toString(),
@@ -3986,7 +4323,7 @@ var LineChart = forwardRef14(
3986
4323
  }
3987
4324
  }
3988
4325
  ),
3989
- series.map((s, index) => /* @__PURE__ */ jsx22(
4326
+ series.map((s, index) => /* @__PURE__ */ jsx24(
3990
4327
  Line,
3991
4328
  {
3992
4329
  type: "monotone",
@@ -3998,12 +4335,12 @@ var LineChart = forwardRef14(
3998
4335
  },
3999
4336
  s.dataKey
4000
4337
  )),
4001
- showLegend && defaultLegendItems.length > 0 && /* @__PURE__ */ jsx22(ChartLegend, { items: defaultLegendItems })
4338
+ showLegend && defaultLegendItems.length > 0 && /* @__PURE__ */ jsx24(ChartLegend, { items: defaultLegendItems })
4002
4339
  ]
4003
4340
  }
4004
4341
  )
4005
4342
  }
4006
- ) : /* @__PURE__ */ jsx22("div", { className: "flex items-center justify-center h-[500px]", children: /* @__PURE__ */ jsx22(Typography, { variant: "body-md", className: "text-secondary", children: "No data is available" }) }) })
4343
+ ) : /* @__PURE__ */ jsx24("div", { className: "flex items-center justify-center h-[500px]", children: /* @__PURE__ */ jsx24(Typography, { variant: "body-md", className: "text-secondary", children: "No data is available" }) }) })
4007
4344
  ]
4008
4345
  }
4009
4346
  );
@@ -4012,10 +4349,10 @@ var LineChart = forwardRef14(
4012
4349
  LineChart.displayName = "LineChart";
4013
4350
 
4014
4351
  // src/components/ui/charts/pie-chart.tsx
4015
- import { forwardRef as forwardRef15 } from "react";
4016
- import { PieChart as RechartsPieChart, Pie, Cell, Tooltip as Tooltip3 } from "recharts";
4017
- import { jsx as jsx23, jsxs as jsxs15 } from "react/jsx-runtime";
4018
- var PieChart = forwardRef15(
4352
+ import { forwardRef as forwardRef17 } from "react";
4353
+ import { PieChart as RechartsPieChart, Pie, Cell, Tooltip as Tooltip4 } from "recharts";
4354
+ import { jsx as jsx25, jsxs as jsxs17 } from "react/jsx-runtime";
4355
+ var PieChart = forwardRef17(
4019
4356
  ({
4020
4357
  data,
4021
4358
  title,
@@ -4042,20 +4379,20 @@ var PieChart = forwardRef15(
4042
4379
  )
4043
4380
  );
4044
4381
  const hasData = data && data.length > 0;
4045
- return /* @__PURE__ */ jsxs15(
4382
+ return /* @__PURE__ */ jsxs17(
4046
4383
  "div",
4047
4384
  {
4048
4385
  ref,
4049
4386
  className: `bg-light border border-subtle mx-6 ${className}`,
4050
4387
  children: [
4051
- /* @__PURE__ */ jsx23("div", { className: "flex items-center justify-between px-3 py-2 border-b border-subtle", children: /* @__PURE__ */ jsx23(Typography, { variant: "label-sm-bold", children: title }) }),
4052
- /* @__PURE__ */ jsx23("div", { className: "pt-2 px-2", children: hasData ? /* @__PURE__ */ jsx23("div", { className: "flex justify-center", children: /* @__PURE__ */ jsxs15(
4388
+ /* @__PURE__ */ jsx25("div", { className: "flex items-center justify-between px-3 py-2 border-b border-subtle", children: /* @__PURE__ */ jsx25(Typography, { variant: "label-sm-bold", children: title }) }),
4389
+ /* @__PURE__ */ jsx25("div", { className: "pt-2 px-2", children: hasData ? /* @__PURE__ */ jsx25("div", { className: "flex justify-center", children: /* @__PURE__ */ jsxs17(
4053
4390
  RechartsPieChart,
4054
4391
  {
4055
4392
  width: 600,
4056
4393
  height: CHART_CONSTANTS.LARGE_HEIGHT,
4057
4394
  children: [
4058
- /* @__PURE__ */ jsx23(
4395
+ /* @__PURE__ */ jsx25(
4059
4396
  Pie,
4060
4397
  {
4061
4398
  data,
@@ -4067,7 +4404,7 @@ var PieChart = forwardRef15(
4067
4404
  label: showLabels,
4068
4405
  labelLine: false,
4069
4406
  onClick: handleClick,
4070
- children: data.map((entry, index) => /* @__PURE__ */ jsx23(
4407
+ children: data.map((entry, index) => /* @__PURE__ */ jsx25(
4071
4408
  Cell,
4072
4409
  {
4073
4410
  fill: entry.color || getSeriesColor(index)
@@ -4076,8 +4413,8 @@ var PieChart = forwardRef15(
4076
4413
  ))
4077
4414
  }
4078
4415
  ),
4079
- /* @__PURE__ */ jsx23(
4080
- Tooltip3,
4416
+ /* @__PURE__ */ jsx25(
4417
+ Tooltip4,
4081
4418
  {
4082
4419
  content: ({
4083
4420
  active,
@@ -4085,7 +4422,7 @@ var PieChart = forwardRef15(
4085
4422
  }) => {
4086
4423
  if (active && payload && payload.length && payload[0]) {
4087
4424
  const data2 = payload[0].payload;
4088
- return /* @__PURE__ */ jsx23(
4425
+ return /* @__PURE__ */ jsx25(
4089
4426
  GenericTooltip,
4090
4427
  {
4091
4428
  title: data2.name,
@@ -4103,10 +4440,10 @@ var PieChart = forwardRef15(
4103
4440
  }
4104
4441
  }
4105
4442
  ),
4106
- showLegend && defaultLegendItems.length > 0 && /* @__PURE__ */ jsx23(ChartLegend, { items: defaultLegendItems, y: 400 })
4443
+ showLegend && defaultLegendItems.length > 0 && /* @__PURE__ */ jsx25(ChartLegend, { items: defaultLegendItems, y: 400 })
4107
4444
  ]
4108
4445
  }
4109
- ) }) : /* @__PURE__ */ jsx23("div", { className: "flex items-center justify-center h-[500px]", children: /* @__PURE__ */ jsx23(Typography, { variant: "body-md", className: "text-secondary", children: "No data is available" }) }) })
4446
+ ) }) : /* @__PURE__ */ jsx25("div", { className: "flex items-center justify-center h-[500px]", children: /* @__PURE__ */ jsx25(Typography, { variant: "body-md", className: "text-secondary", children: "No data is available" }) }) })
4110
4447
  ]
4111
4448
  }
4112
4449
  );
@@ -4115,11 +4452,11 @@ var PieChart = forwardRef15(
4115
4452
  PieChart.displayName = "PieChart";
4116
4453
 
4117
4454
  // src/components/ui/table.tsx
4118
- import { useCallback as useCallback5 } from "react";
4455
+ import { useCallback as useCallback6 } from "react";
4119
4456
  import {
4120
4457
  flexRender
4121
4458
  } from "@tanstack/react-table";
4122
- import { Fragment as Fragment2, jsx as jsx24, jsxs as jsxs16 } from "react/jsx-runtime";
4459
+ import { Fragment as Fragment2, jsx as jsx26, jsxs as jsxs18 } from "react/jsx-runtime";
4123
4460
  function Table({
4124
4461
  table,
4125
4462
  className,
@@ -4131,33 +4468,33 @@ function Table({
4131
4468
  const totalPages = table.getPageCount();
4132
4469
  const totalRows = table.getFilteredRowModel().rows.length;
4133
4470
  const showingText = totalRows > 0 ? "Showing " + (currentPage * pageSize + 1) + "-" + Math.min((currentPage + 1) * pageSize, totalRows) + " of " + totalRows + " results" : "No results found";
4134
- const handlePreviousPage = useCallback5(() => {
4471
+ const handlePreviousPage = useCallback6(() => {
4135
4472
  table.previousPage();
4136
4473
  }, [table]);
4137
- const handleNextPage = useCallback5(() => {
4474
+ const handleNextPage = useCallback6(() => {
4138
4475
  table.nextPage();
4139
4476
  }, [table]);
4140
- const handlePageChange = useCallback5(
4477
+ const handlePageChange = useCallback6(
4141
4478
  (pageIndex) => {
4142
4479
  table.setPageIndex(pageIndex);
4143
4480
  },
4144
4481
  [table]
4145
4482
  );
4146
- const handlePageSizeChange = useCallback5(
4483
+ const handlePageSizeChange = useCallback6(
4147
4484
  (value) => {
4148
4485
  table.setPageSize(Number(value));
4149
4486
  },
4150
4487
  [table]
4151
4488
  );
4152
- return /* @__PURE__ */ jsxs16("div", { children: [
4153
- /* @__PURE__ */ jsx24("div", { className: cn("overflow-x-auto", className), children: /* @__PURE__ */ jsxs16("table", { className: "min-w-full divide-y divide-border", children: [
4154
- /* @__PURE__ */ jsx24("thead", { className: "bg-dark text-light", children: table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ jsx24("tr", { children: headerGroup.headers.map((header) => /* @__PURE__ */ jsx24("th", { className: "px-6 py-3 text-left", children: /* @__PURE__ */ jsxs16(
4489
+ return /* @__PURE__ */ jsxs18("div", { children: [
4490
+ /* @__PURE__ */ jsx26("div", { className: cn("overflow-x-auto", className), children: /* @__PURE__ */ jsxs18("table", { className: "min-w-full divide-y divide-border", children: [
4491
+ /* @__PURE__ */ jsx26("thead", { className: "bg-dark text-light", children: table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ jsx26("tr", { children: headerGroup.headers.map((header) => /* @__PURE__ */ jsx26("th", { className: "px-6 py-3 text-left", children: /* @__PURE__ */ jsxs18(
4155
4492
  "div",
4156
4493
  {
4157
4494
  className: `flex items-center space-x-1 ${header.column.getCanSort() ? "cursor-pointer select-none" : ""}`,
4158
4495
  onClick: header.column.getToggleSortingHandler(),
4159
4496
  children: [
4160
- /* @__PURE__ */ jsx24(
4497
+ /* @__PURE__ */ jsx26(
4161
4498
  Typography,
4162
4499
  {
4163
4500
  variant: "label-xs",
@@ -4168,19 +4505,19 @@ function Table({
4168
4505
  )
4169
4506
  }
4170
4507
  ),
4171
- header.column.getCanSort() && /* @__PURE__ */ jsxs16("span", { className: "ml-1", children: [
4172
- header.column.getIsSorted() === "asc" && /* @__PURE__ */ jsx24(ChevronUp, { className: "w-4 h-4 text-light" }),
4173
- header.column.getIsSorted() === "desc" && /* @__PURE__ */ jsx24(ChevronDown, { className: "w-4 h-4 text-light" })
4508
+ header.column.getCanSort() && /* @__PURE__ */ jsxs18("span", { className: "ml-1", children: [
4509
+ header.column.getIsSorted() === "asc" && /* @__PURE__ */ jsx26(ChevronUp, { className: "w-4 h-4 text-light" }),
4510
+ header.column.getIsSorted() === "desc" && /* @__PURE__ */ jsx26(ChevronDown, { className: "w-4 h-4 text-light" })
4174
4511
  ] })
4175
4512
  ]
4176
4513
  }
4177
4514
  ) }, header.id)) }, headerGroup.id)) }),
4178
- /* @__PURE__ */ jsx24("tbody", { className: "bg-light divide-y divide-border", children: table.getRowModel().rows.map((row) => /* @__PURE__ */ jsx24("tr", { children: row.getVisibleCells().map((cell) => /* @__PURE__ */ jsx24("td", { className: "px-6 py-4 whitespace-nowrap", children: /* @__PURE__ */ jsx24(Typography, { variant: "body-sm", children: flexRender(
4515
+ /* @__PURE__ */ jsx26("tbody", { className: "bg-light divide-y divide-border", children: table.getRowModel().rows.map((row) => /* @__PURE__ */ jsx26("tr", { children: row.getVisibleCells().map((cell) => /* @__PURE__ */ jsx26("td", { className: "px-6 py-4 whitespace-nowrap", children: /* @__PURE__ */ jsx26(Typography, { variant: "body-sm", children: flexRender(
4179
4516
  cell.column.columnDef.cell,
4180
4517
  cell.getContext()
4181
4518
  ) }) }, cell.id)) }, row.id)) })
4182
4519
  ] }) }),
4183
- showPagination && /* @__PURE__ */ jsxs16(
4520
+ showPagination && /* @__PURE__ */ jsxs18(
4184
4521
  "div",
4185
4522
  {
4186
4523
  className: cn(
@@ -4188,9 +4525,9 @@ function Table({
4188
4525
  paginationClassName
4189
4526
  ),
4190
4527
  children: [
4191
- /* @__PURE__ */ jsx24("div", { className: "flex items-center", children: /* @__PURE__ */ jsx24(Typography, { variant: "body-sm", className: "text-secondary", children: showingText }) }),
4192
- /* @__PURE__ */ jsxs16("div", { className: "flex items-center space-x-1", children: [
4193
- /* @__PURE__ */ jsx24(
4528
+ /* @__PURE__ */ jsx26("div", { className: "flex items-center", children: /* @__PURE__ */ jsx26(Typography, { variant: "body-sm", className: "text-secondary", children: showingText }) }),
4529
+ /* @__PURE__ */ jsxs18("div", { className: "flex items-center space-x-1", children: [
4530
+ /* @__PURE__ */ jsx26(
4194
4531
  Button,
4195
4532
  {
4196
4533
  variant: "ghost",
@@ -4198,7 +4535,7 @@ function Table({
4198
4535
  onClick: handlePreviousPage,
4199
4536
  disabled: !table.getCanPreviousPage(),
4200
4537
  className: "p-2",
4201
- children: /* @__PURE__ */ jsx24(ChevronLeft, { className: "w-4 h-4" })
4538
+ children: /* @__PURE__ */ jsx26(ChevronLeft, { className: "w-4 h-4" })
4202
4539
  }
4203
4540
  ),
4204
4541
  Array.from(
@@ -4215,7 +4552,7 @@ function Table({
4215
4552
  pageNumber = currentPage - 2 + i;
4216
4553
  }
4217
4554
  const isActive = pageNumber === currentPage;
4218
- return /* @__PURE__ */ jsx24(
4555
+ return /* @__PURE__ */ jsx26(
4219
4556
  Button,
4220
4557
  {
4221
4558
  variant: isActive ? "default" : "ghost",
@@ -4228,11 +4565,11 @@ function Table({
4228
4565
  );
4229
4566
  }
4230
4567
  ),
4231
- table.getPageCount() > 5 && currentPage < totalPages - 3 && /* @__PURE__ */ jsxs16(Fragment2, { children: [
4232
- /* @__PURE__ */ jsx24("span", { className: "px-1 text-secondary", children: "..." }),
4233
- /* @__PURE__ */ jsx24(Typography, { variant: "body-sm", className: "text-secondary", children: totalPages })
4568
+ table.getPageCount() > 5 && currentPage < totalPages - 3 && /* @__PURE__ */ jsxs18(Fragment2, { children: [
4569
+ /* @__PURE__ */ jsx26("span", { className: "px-1 text-secondary", children: "..." }),
4570
+ /* @__PURE__ */ jsx26(Typography, { variant: "body-sm", className: "text-secondary", children: totalPages })
4234
4571
  ] }),
4235
- /* @__PURE__ */ jsx24(
4572
+ /* @__PURE__ */ jsx26(
4236
4573
  Button,
4237
4574
  {
4238
4575
  variant: "ghost",
@@ -4240,12 +4577,12 @@ function Table({
4240
4577
  onClick: handleNextPage,
4241
4578
  disabled: !table.getCanNextPage(),
4242
4579
  className: "p-2",
4243
- children: /* @__PURE__ */ jsx24(ChevronRight, { className: "w-4 h-4" })
4580
+ children: /* @__PURE__ */ jsx26(ChevronRight, { className: "w-4 h-4" })
4244
4581
  }
4245
4582
  )
4246
4583
  ] }),
4247
- /* @__PURE__ */ jsxs16("div", { className: "flex items-center gap-3 w-48", children: [
4248
- /* @__PURE__ */ jsx24(
4584
+ /* @__PURE__ */ jsxs18("div", { className: "flex items-center gap-3 w-48", children: [
4585
+ /* @__PURE__ */ jsx26(
4249
4586
  Typography,
4250
4587
  {
4251
4588
  variant: "body-sm",
@@ -4253,14 +4590,14 @@ function Table({
4253
4590
  children: "Rows per page:"
4254
4591
  }
4255
4592
  ),
4256
- /* @__PURE__ */ jsxs16(
4593
+ /* @__PURE__ */ jsxs18(
4257
4594
  Select,
4258
4595
  {
4259
4596
  value: table.getState().pagination.pageSize.toString(),
4260
4597
  onValueChange: handlePageSizeChange,
4261
4598
  children: [
4262
- /* @__PURE__ */ jsx24(SelectTrigger, { className: "min-w-0 h-8", children: /* @__PURE__ */ jsx24(SelectValue, {}) }),
4263
- /* @__PURE__ */ jsx24(SelectContent, { children: [10, 20, 50, 100].map((size) => /* @__PURE__ */ jsx24(SelectItem, { value: size.toString(), children: size }, size)) })
4599
+ /* @__PURE__ */ jsx26(SelectTrigger, { className: "min-w-0 h-8", children: /* @__PURE__ */ jsx26(SelectValue, {}) }),
4600
+ /* @__PURE__ */ jsx26(SelectContent, { children: [10, 20, 50, 100].map((size) => /* @__PURE__ */ jsx26(SelectItem, { value: size.toString(), children: size }, size)) })
4264
4601
  ]
4265
4602
  }
4266
4603
  )
@@ -4356,6 +4693,7 @@ export {
4356
4693
  MagnifyingGlass,
4357
4694
  Minus,
4358
4695
  MoreMenu,
4696
+ Panel,
4359
4697
  PdfViewer,
4360
4698
  Phone,
4361
4699
  PieChart,
@@ -4374,6 +4712,17 @@ export {
4374
4712
  SelectValue,
4375
4713
  Separator2 as Separator,
4376
4714
  Share,
4715
+ Sidebar,
4716
+ SidebarContent,
4717
+ SidebarFooter,
4718
+ SidebarGroup,
4719
+ SidebarGroupContent,
4720
+ SidebarHeader,
4721
+ SidebarInset,
4722
+ SidebarMenu,
4723
+ SidebarMenuButton,
4724
+ SidebarMenuItem,
4725
+ SidebarProvider,
4377
4726
  Star,
4378
4727
  Statement,
4379
4728
  Table,
@@ -4383,8 +4732,12 @@ export {
4383
4732
  TabsList,
4384
4733
  TabsTrigger,
4385
4734
  Textarea,
4735
+ Tooltip,
4386
4736
  TooltipContainer,
4737
+ TooltipContent,
4387
4738
  TooltipItem,
4739
+ TooltipProvider,
4740
+ TooltipTrigger,
4388
4741
  Trash,
4389
4742
  Typography,
4390
4743
  Upload,
@@ -4413,5 +4766,6 @@ export {
4413
4766
  selectTriggerVariants,
4414
4767
  tabsVariants,
4415
4768
  typographyVariants,
4416
- uploadVariants
4769
+ uploadVariants,
4770
+ useSidebar
4417
4771
  };