atomos_next_genesis 0.0.5 → 0.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -67,9 +67,9 @@ __export(app_exports, {
67
67
  FileUploadPreview: () => FileUploadPreview_default,
68
68
  GlobalNavigation: () => GlobalNavigation_default,
69
69
  HelperText: () => HelperText_default,
70
+ ImageUploadControlled: () => ImageUploadControlled,
70
71
  Input: () => Input_default,
71
72
  Label: () => Label_default,
72
- ListItem: () => ListItem_default,
73
73
  ListPagination: () => ListPagination_default,
74
74
  Loading: () => Loading_default,
75
75
  Modal: () => Modal,
@@ -78,7 +78,6 @@ __export(app_exports, {
78
78
  Pagination: () => Pagination_default,
79
79
  ProgressBar: () => Progress_default,
80
80
  Radio: () => Radio_default,
81
- RazorPayFileUpload: () => ImageUploadControlled,
82
81
  Sidebar: () => Sidebar_default,
83
82
  Skeleton: () => Skeleton_default,
84
83
  Slider: () => Slider_default,
@@ -915,7 +914,7 @@ var Divider = ({
915
914
  var Divider_default = Divider;
916
915
 
917
916
  // app/components/Drawer.tsx
918
- var import_react13 = require("react");
917
+ var import_react13 = __toESM(require("react"), 1);
919
918
  var import_react14 = require("@remixicon/react");
920
919
  var Drawer = ({
921
920
  isOpen,
@@ -943,7 +942,7 @@ var Drawer = ({
943
942
  window.addEventListener("keydown", handleKeyDown);
944
943
  return () => window.removeEventListener("keydown", handleKeyDown);
945
944
  }, [isOpen, handleClose]);
946
- return /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement(
945
+ return /* @__PURE__ */ import_react13.default.createElement("div", null, /* @__PURE__ */ import_react13.default.createElement(
947
946
  "div",
948
947
  {
949
948
  className: cn(
@@ -952,7 +951,7 @@ var Drawer = ({
952
951
  ),
953
952
  onClick: () => closeOnOutsideClick && handleClose()
954
953
  }
955
- ), /* @__PURE__ */ React.createElement(
954
+ ), /* @__PURE__ */ import_react13.default.createElement(
956
955
  "div",
957
956
  {
958
957
  className: cn(
@@ -967,19 +966,19 @@ var Drawer = ({
967
966
  ),
968
967
  onClick: (e) => e.stopPropagation()
969
968
  },
970
- showCloseButton && /* @__PURE__ */ React.createElement(
969
+ showCloseButton && /* @__PURE__ */ import_react13.default.createElement(
971
970
  Button_default,
972
971
  {
973
972
  size: "sm",
974
973
  variant: "outlined",
975
974
  intent: "default-outlined",
976
975
  onClick: handleClose,
977
- startIcon: /* @__PURE__ */ React.createElement(import_react14.RiCloseLine, { size: 20 }),
976
+ startIcon: /* @__PURE__ */ import_react13.default.createElement(import_react14.RiCloseLine, { size: 20 }),
978
977
  "aria-label": "Close drawer",
979
978
  className: "absolute border-none p-1 transition-colors top-3 right-4"
980
979
  }
981
980
  ),
982
- /* @__PURE__ */ React.createElement("div", { className: "overflow-y-auto h-full" }, children)
981
+ /* @__PURE__ */ import_react13.default.createElement("div", { className: "overflow-y-auto h-full" }, children)
983
982
  ));
984
983
  };
985
984
  var Drawer_default = Drawer;
@@ -2256,51 +2255,9 @@ var HelperText = ({ children, className, size, error }) => {
2256
2255
  };
2257
2256
  var HelperText_default = HelperText;
2258
2257
 
2259
- // app/components/ListItem.tsx
2260
- var import_link = __toESM(require("next/link"), 1);
2261
- var import_react30 = __toESM(require("react"), 1);
2262
- var ListItem = import_react30.default.forwardRef(({ className, title, href, onClick, as = "link", icon }, ref) => {
2263
- const commonClasses = cn(
2264
- "px-4 py-[8px] w-full flex items-center gap-2 focus:outline-none focus:ring-2 focus:ring-primary-600 focus-visible:ring-2 rounded",
2265
- className
2266
- );
2267
- if (as === "button") {
2268
- return /* @__PURE__ */ import_react30.default.createElement(
2269
- "button",
2270
- {
2271
- className: commonClasses,
2272
- onClick,
2273
- ref,
2274
- type: "button",
2275
- role: "menuitem"
2276
- },
2277
- /* @__PURE__ */ import_react30.default.createElement("span", { className: "text-base font-normal" }, title),
2278
- icon && /* @__PURE__ */ import_react30.default.createElement("span", { className: "flex-shrink-0", "aria-hidden": "true" }, icon)
2279
- );
2280
- }
2281
- return /* @__PURE__ */ import_react30.default.createElement(
2282
- import_link.default,
2283
- {
2284
- href: href ?? "",
2285
- className: commonClasses,
2286
- ref,
2287
- role: "menuitem",
2288
- onClick: (e) => {
2289
- if (!href) {
2290
- e.preventDefault();
2291
- }
2292
- }
2293
- },
2294
- /* @__PURE__ */ import_react30.default.createElement("span", { className: "text-base font-normal" }, title),
2295
- icon && /* @__PURE__ */ import_react30.default.createElement("span", { className: "flex-shrink-0", "aria-hidden": "true" }, icon)
2296
- );
2297
- });
2298
- ListItem.displayName = "ListItem";
2299
- var ListItem_default = ListItem;
2300
-
2301
2258
  // app/components/ListPagination.tsx
2302
- var import_react31 = __toESM(require("react"), 1);
2303
- var import_react32 = require("@remixicon/react");
2259
+ var import_react30 = __toESM(require("react"), 1);
2260
+ var import_react31 = require("@remixicon/react");
2304
2261
  var ListPagination = ({
2305
2262
  count,
2306
2263
  page,
@@ -2309,10 +2266,10 @@ var ListPagination = ({
2309
2266
  className
2310
2267
  }) => {
2311
2268
  const totalPages = Math.ceil(count / rowsPerPage);
2312
- const [expanded, setExpanded] = (0, import_react31.useState)(false);
2269
+ const [expanded, setExpanded] = (0, import_react30.useState)(false);
2313
2270
  const renderPages = () => {
2314
2271
  if (totalPages <= 6 || expanded) {
2315
- return [...Array(totalPages)].map((_, i) => /* @__PURE__ */ import_react31.default.createElement(PageBtn, { key: i, i, page, onPageChange }));
2272
+ return [...Array(totalPages)].map((_, i) => /* @__PURE__ */ import_react30.default.createElement(PageBtn, { key: i, i, page, onPageChange }));
2316
2273
  }
2317
2274
  const start = [0, 1];
2318
2275
  const mid = [page - 1, page, page + 1].filter(
@@ -2321,7 +2278,7 @@ var ListPagination = ({
2321
2278
  const end = [totalPages - 2, totalPages - 1];
2322
2279
  const range = Array.from(/* @__PURE__ */ new Set([...start, ...mid, ...end]));
2323
2280
  return range.map(
2324
- (i, idx) => typeof range[idx - 1] === "number" && i - range[idx - 1] > 1 ? /* @__PURE__ */ import_react31.default.createElement(
2281
+ (i, idx) => typeof range[idx - 1] === "number" && i - range[idx - 1] > 1 ? /* @__PURE__ */ import_react30.default.createElement(
2325
2282
  Button_default,
2326
2283
  {
2327
2284
  key: `dots-${i}`,
@@ -2330,20 +2287,20 @@ var ListPagination = ({
2330
2287
  onClick: () => setExpanded(true)
2331
2288
  },
2332
2289
  "..."
2333
- ) : /* @__PURE__ */ import_react31.default.createElement(PageBtn, { key: i, i, page, onPageChange })
2290
+ ) : /* @__PURE__ */ import_react30.default.createElement(PageBtn, { key: i, i, page, onPageChange })
2334
2291
  );
2335
2292
  };
2336
- return /* @__PURE__ */ import_react31.default.createElement("section", { className: cn("flex items-center gap-1", className) }, /* @__PURE__ */ import_react31.default.createElement(
2293
+ return /* @__PURE__ */ import_react30.default.createElement("section", { className: cn("flex items-center gap-1", className) }, /* @__PURE__ */ import_react30.default.createElement(
2337
2294
  NavBtn,
2338
2295
  {
2339
- icon: /* @__PURE__ */ import_react31.default.createElement(import_react32.RiArrowLeftSLine, { size: 22 }),
2296
+ icon: /* @__PURE__ */ import_react30.default.createElement(import_react31.RiArrowLeftSLine, { size: 22 }),
2340
2297
  onClick: () => onPageChange(page - 1),
2341
2298
  disabled: page === 0
2342
2299
  }
2343
- ), /* @__PURE__ */ import_react31.default.createElement("div", { className: "max-w-[90vw] w-max overflow-auto flex items-center gap-2 p-2" }, renderPages()), /* @__PURE__ */ import_react31.default.createElement(
2300
+ ), /* @__PURE__ */ import_react30.default.createElement("div", { className: "max-w-[90vw] w-max overflow-auto flex items-center gap-2 p-2" }, renderPages()), /* @__PURE__ */ import_react30.default.createElement(
2344
2301
  NavBtn,
2345
2302
  {
2346
- icon: /* @__PURE__ */ import_react31.default.createElement(import_react32.RiArrowRightSLine, { size: 22 }),
2303
+ icon: /* @__PURE__ */ import_react30.default.createElement(import_react31.RiArrowRightSLine, { size: 22 }),
2347
2304
  onClick: () => onPageChange(page + 1),
2348
2305
  disabled: page === totalPages - 1
2349
2306
  }
@@ -2353,7 +2310,7 @@ var PageBtn = ({
2353
2310
  i,
2354
2311
  page,
2355
2312
  onPageChange
2356
- }) => /* @__PURE__ */ import_react31.default.createElement(
2313
+ }) => /* @__PURE__ */ import_react30.default.createElement(
2357
2314
  Button_default,
2358
2315
  {
2359
2316
  size: "sm",
@@ -2369,7 +2326,7 @@ var NavBtn = ({
2369
2326
  icon,
2370
2327
  onClick,
2371
2328
  disabled
2372
- }) => /* @__PURE__ */ import_react31.default.createElement(
2329
+ }) => /* @__PURE__ */ import_react30.default.createElement(
2373
2330
  Button_default,
2374
2331
  {
2375
2332
  size: "sm",
@@ -2383,9 +2340,9 @@ var NavBtn = ({
2383
2340
  var ListPagination_default = ListPagination;
2384
2341
 
2385
2342
  // app/components/Loading.tsx
2386
- var import_react33 = __toESM(require("react"), 1);
2343
+ var import_react32 = __toESM(require("react"), 1);
2387
2344
  var Loading = ({ width, height, loaderColor, variant }) => {
2388
- return /* @__PURE__ */ import_react33.default.createElement(
2345
+ return /* @__PURE__ */ import_react32.default.createElement(
2389
2346
  "div",
2390
2347
  {
2391
2348
  className: cn(
@@ -2404,8 +2361,8 @@ var Loading = ({ width, height, loaderColor, variant }) => {
2404
2361
  var Loading_default = Loading;
2405
2362
 
2406
2363
  // app/components/Modal.tsx
2407
- var import_react34 = __toESM(require("react"), 1);
2408
- var import_react35 = require("@remixicon/react");
2364
+ var import_react33 = __toESM(require("react"), 1);
2365
+ var import_react34 = require("@remixicon/react");
2409
2366
  function Modal({
2410
2367
  children,
2411
2368
  showModal,
@@ -2415,7 +2372,7 @@ function Modal({
2415
2372
  className = "",
2416
2373
  width = "50%"
2417
2374
  }) {
2418
- (0, import_react34.useEffect)(() => {
2375
+ (0, import_react33.useEffect)(() => {
2419
2376
  if (showModal) {
2420
2377
  document.body.style.overflow = "hidden";
2421
2378
  } else {
@@ -2430,13 +2387,13 @@ function Modal({
2430
2387
  setShowModal(false);
2431
2388
  }
2432
2389
  };
2433
- return /* @__PURE__ */ import_react34.default.createElement(import_react34.default.Fragment, null, showModal && /* @__PURE__ */ import_react34.default.createElement(
2390
+ return /* @__PURE__ */ import_react33.default.createElement(import_react33.default.Fragment, null, showModal && /* @__PURE__ */ import_react33.default.createElement(
2434
2391
  "div",
2435
2392
  {
2436
2393
  onClick: handleClickOutside,
2437
2394
  className: "w-full h-full bg-backdrop bg-blend-overlay fixed top-0 bottom-0 left-0 right-0 flex justify-center items-center z-[1000000] overflow-hidden"
2438
2395
  },
2439
- /* @__PURE__ */ import_react34.default.createElement(
2396
+ /* @__PURE__ */ import_react33.default.createElement(
2440
2397
  "div",
2441
2398
  {
2442
2399
  style: { width },
@@ -2445,14 +2402,14 @@ function Modal({
2445
2402
  className
2446
2403
  )
2447
2404
  },
2448
- /* @__PURE__ */ import_react34.default.createElement("div", null, children),
2449
- closeModal && /* @__PURE__ */ import_react34.default.createElement(
2405
+ /* @__PURE__ */ import_react33.default.createElement("div", null, children),
2406
+ closeModal && /* @__PURE__ */ import_react33.default.createElement(
2450
2407
  "div",
2451
2408
  {
2452
2409
  className: "absolute top-4 ml-5 right-5 z-10 shadow-backdrop rounded-md cursor-pointer hover:bg-gray-100",
2453
2410
  onClick: () => setShowModal(false)
2454
2411
  },
2455
- /* @__PURE__ */ import_react34.default.createElement(import_react35.RiCloseLine, { size: 24 })
2412
+ /* @__PURE__ */ import_react33.default.createElement(import_react34.RiCloseLine, { size: 24 })
2456
2413
  )
2457
2414
  )
2458
2415
  ));
@@ -2460,20 +2417,20 @@ function Modal({
2460
2417
 
2461
2418
  // app/components/Notice.tsx
2462
2419
  var import_class_variance_authority6 = require("class-variance-authority");
2463
- var import_react36 = __toESM(require("react"), 1);
2464
- var import_react37 = require("@remixicon/react");
2420
+ var import_react35 = __toESM(require("react"), 1);
2421
+ var import_react36 = require("@remixicon/react");
2465
2422
  var VariantIcon = ({ variant }) => {
2466
2423
  switch (variant) {
2467
2424
  case "success":
2468
- return /* @__PURE__ */ import_react36.default.createElement("span", null, /* @__PURE__ */ import_react36.default.createElement(import_react37.RiThumbUpLine, { size: 20, color: "#039855" }));
2425
+ return /* @__PURE__ */ import_react35.default.createElement("span", null, /* @__PURE__ */ import_react35.default.createElement(import_react36.RiThumbUpLine, { size: 20, color: "#039855" }));
2469
2426
  case "warning":
2470
- return /* @__PURE__ */ import_react36.default.createElement("span", null, /* @__PURE__ */ import_react36.default.createElement(import_react37.RiQuestionLine, { color: "#F79009", size: 20 }));
2427
+ return /* @__PURE__ */ import_react35.default.createElement("span", null, /* @__PURE__ */ import_react35.default.createElement(import_react36.RiQuestionLine, { color: "#F79009", size: 20 }));
2471
2428
  case "info":
2472
- return /* @__PURE__ */ import_react36.default.createElement("span", null, /* @__PURE__ */ import_react36.default.createElement(import_react37.RiErrorWarningLine, { color: "#1570EF", size: 20 }));
2429
+ return /* @__PURE__ */ import_react35.default.createElement("span", null, /* @__PURE__ */ import_react35.default.createElement(import_react36.RiErrorWarningLine, { color: "#1570EF", size: 20 }));
2473
2430
  case "error":
2474
- return /* @__PURE__ */ import_react36.default.createElement("span", null, /* @__PURE__ */ import_react36.default.createElement(import_react37.RiAlertFill, { color: "#F04438", size: 20 }));
2431
+ return /* @__PURE__ */ import_react35.default.createElement("span", null, /* @__PURE__ */ import_react35.default.createElement(import_react36.RiAlertFill, { color: "#F04438", size: 20 }));
2475
2432
  default:
2476
- return /* @__PURE__ */ import_react36.default.createElement("span", null, /* @__PURE__ */ import_react36.default.createElement(import_react37.RiShieldCheckLine, { color: "#475467", size: 20 }));
2433
+ return /* @__PURE__ */ import_react35.default.createElement("span", null, /* @__PURE__ */ import_react35.default.createElement(import_react36.RiShieldCheckLine, { color: "#475467", size: 20 }));
2477
2434
  }
2478
2435
  };
2479
2436
  var noticeVariants = (0, import_class_variance_authority6.cva)("p-4 w-fit rounded-[6px]", {
@@ -2502,7 +2459,7 @@ var Notice = ({
2502
2459
  showIcon = true
2503
2460
  }) => {
2504
2461
  const handleClose = () => setOpen(false);
2505
- return /* @__PURE__ */ import_react36.default.createElement(import_react36.default.Fragment, null, open && /* @__PURE__ */ import_react36.default.createElement(
2462
+ return /* @__PURE__ */ import_react35.default.createElement(import_react35.default.Fragment, null, open && /* @__PURE__ */ import_react35.default.createElement(
2506
2463
  "div",
2507
2464
  {
2508
2465
  className: cn(
@@ -2513,34 +2470,34 @@ var Notice = ({
2513
2470
  position === "center" && open && `animate-fade-in`
2514
2471
  )
2515
2472
  },
2516
- /* @__PURE__ */ import_react36.default.createElement("div", { className: "relative" }, showIcon ? noticeTitle == "" ? /* @__PURE__ */ import_react36.default.createElement("div", { className: "flex items-start" }, /* @__PURE__ */ import_react36.default.createElement(VariantIcon, { variant }), /* @__PURE__ */ import_react36.default.createElement("span", { className: "ml-2 mr-8 text-text-sm" }, children), /* @__PURE__ */ import_react36.default.createElement("span", { onClick: handleClose }, /* @__PURE__ */ import_react36.default.createElement(import_react37.RiCloseLine, { size: 20 }))) : /* @__PURE__ */ import_react36.default.createElement("div", { className: "" }, /* @__PURE__ */ import_react36.default.createElement("section", { className: "flex items-start" }, /* @__PURE__ */ import_react36.default.createElement(VariantIcon, { variant }), /* @__PURE__ */ import_react36.default.createElement("div", { className: "ml-2 mr-8 -mt-[3px]" }, /* @__PURE__ */ import_react36.default.createElement("span", { className: "font-bold text-gray-800 mb-1" }, noticeTitle), /* @__PURE__ */ import_react36.default.createElement("p", { className: "text-text-sm text-gray-700" }, children))), /* @__PURE__ */ import_react36.default.createElement(
2473
+ /* @__PURE__ */ import_react35.default.createElement("div", { className: "relative" }, showIcon ? noticeTitle == "" ? /* @__PURE__ */ import_react35.default.createElement("div", { className: "flex items-start" }, /* @__PURE__ */ import_react35.default.createElement(VariantIcon, { variant }), /* @__PURE__ */ import_react35.default.createElement("span", { className: "ml-2 mr-8 text-text-sm" }, children), /* @__PURE__ */ import_react35.default.createElement("span", { onClick: handleClose }, /* @__PURE__ */ import_react35.default.createElement(import_react36.RiCloseLine, { size: 20 }))) : /* @__PURE__ */ import_react35.default.createElement("div", { className: "" }, /* @__PURE__ */ import_react35.default.createElement("section", { className: "flex items-start" }, /* @__PURE__ */ import_react35.default.createElement(VariantIcon, { variant }), /* @__PURE__ */ import_react35.default.createElement("div", { className: "ml-2 mr-8 -mt-[3px]" }, /* @__PURE__ */ import_react35.default.createElement("span", { className: "font-bold text-gray-800 mb-1" }, noticeTitle), /* @__PURE__ */ import_react35.default.createElement("p", { className: "text-text-sm text-gray-700" }, children))), /* @__PURE__ */ import_react35.default.createElement(
2517
2474
  "span",
2518
2475
  {
2519
2476
  className: cn("absolute top-0 right-0 cursor-pointer"),
2520
2477
  onClick: handleClose
2521
2478
  },
2522
- /* @__PURE__ */ import_react36.default.createElement(import_react37.RiCloseLine, { size: 20 })
2523
- )) : /* @__PURE__ */ import_react36.default.createElement("div", { className: "mr-8" }, /* @__PURE__ */ import_react36.default.createElement("section", { className: "flex items-center" }, /* @__PURE__ */ import_react36.default.createElement("p", { className: "font-bold text-gray-800 mb-1" }, noticeTitle)), /* @__PURE__ */ import_react36.default.createElement(
2479
+ /* @__PURE__ */ import_react35.default.createElement(import_react36.RiCloseLine, { size: 20 })
2480
+ )) : /* @__PURE__ */ import_react35.default.createElement("div", { className: "mr-8" }, /* @__PURE__ */ import_react35.default.createElement("section", { className: "flex items-center" }, /* @__PURE__ */ import_react35.default.createElement("p", { className: "font-bold text-gray-800 mb-1" }, noticeTitle)), /* @__PURE__ */ import_react35.default.createElement(
2524
2481
  "span",
2525
2482
  {
2526
2483
  className: cn("absolute top-0 right-0 cursor-pointer"),
2527
2484
  onClick: handleClose
2528
2485
  },
2529
- /* @__PURE__ */ import_react36.default.createElement(import_react37.RiCloseLine, { size: 20 })
2530
- ), /* @__PURE__ */ import_react36.default.createElement("p", { className: "text-text-sm" }, children)))
2486
+ /* @__PURE__ */ import_react35.default.createElement(import_react36.RiCloseLine, { size: 20 })
2487
+ ), /* @__PURE__ */ import_react35.default.createElement("p", { className: "text-text-sm" }, children)))
2531
2488
  ));
2532
2489
  };
2533
2490
  var Notice_default = Notice;
2534
2491
 
2535
2492
  // app/components/OTPInput.tsx
2536
- var import_react38 = __toESM(require("react"), 1);
2493
+ var import_react37 = __toESM(require("react"), 1);
2537
2494
  var OTPInput = ({
2538
2495
  length,
2539
2496
  onChange,
2540
2497
  type = "text"
2541
2498
  }) => {
2542
- const [otpValues, setOtpValues] = (0, import_react38.useState)(Array(length).fill(""));
2543
- const inputsRef = (0, import_react38.useRef)([]);
2499
+ const [otpValues, setOtpValues] = (0, import_react37.useState)(Array(length).fill(""));
2500
+ const inputsRef = (0, import_react37.useRef)([]);
2544
2501
  const handleChange = (e, idx) => {
2545
2502
  var _a;
2546
2503
  let value = e.target.value;
@@ -2579,7 +2536,7 @@ var OTPInput = ({
2579
2536
  onChange(newOtp.join(""));
2580
2537
  (_a = inputsRef.current[Math.min(pasteData.length, length - 1)]) == null ? void 0 : _a.focus();
2581
2538
  };
2582
- return /* @__PURE__ */ import_react38.default.createElement("div", { className: "flex items-center gap-2" }, Array.from({ length }).map((_, idx) => /* @__PURE__ */ import_react38.default.createElement(
2539
+ return /* @__PURE__ */ import_react37.default.createElement("div", { className: "flex items-center gap-2" }, Array.from({ length }).map((_, idx) => /* @__PURE__ */ import_react37.default.createElement(
2583
2540
  Input_default,
2584
2541
  {
2585
2542
  key: idx,
@@ -2600,8 +2557,8 @@ var OTPInput = ({
2600
2557
  var OTPInput_default = OTPInput;
2601
2558
 
2602
2559
  // app/components/Pagination.tsx
2603
- var import_react39 = __toESM(require("react"), 1);
2604
- var import_react40 = require("@remixicon/react");
2560
+ var import_react38 = __toESM(require("react"), 1);
2561
+ var import_react39 = require("@remixicon/react");
2605
2562
  var Pagination = ({
2606
2563
  count,
2607
2564
  page,
@@ -2621,7 +2578,7 @@ var Pagination = ({
2621
2578
  const handleNextPageClick = () => {
2622
2579
  onPageChange(page + 1);
2623
2580
  };
2624
- const [showOptions, setShowOptions] = (0, import_react39.useState)(false);
2581
+ const [showOptions, setShowOptions] = (0, import_react38.useState)(false);
2625
2582
  const handleOptionClick = (option) => {
2626
2583
  if (typeof option === "number") {
2627
2584
  onRowsPerPageChange(option);
@@ -2630,7 +2587,7 @@ var Pagination = ({
2630
2587
  }
2631
2588
  setShowOptions(false);
2632
2589
  };
2633
- return /* @__PURE__ */ import_react39.default.createElement(
2590
+ return /* @__PURE__ */ import_react38.default.createElement(
2634
2591
  "div",
2635
2592
  {
2636
2593
  className: cn(
@@ -2639,7 +2596,7 @@ var Pagination = ({
2639
2596
  className
2640
2597
  )
2641
2598
  },
2642
- /* @__PURE__ */ import_react39.default.createElement("section", { className: "flex gap-1.5 items-center" }, countVariable && /* @__PURE__ */ import_react39.default.createElement("p", { className: "text-text-sm text-gray-800 font-medium" }, count, " ", countVariable ?? "Items"), itemsPerPage && /* @__PURE__ */ import_react39.default.createElement("div", { className: "flex gap-1.5 items-center" }, /* @__PURE__ */ import_react39.default.createElement("span", { className: "text-gray-800 text-text-sm font-medium" }, "Items per page"), /* @__PURE__ */ import_react39.default.createElement("div", { className: "relative z-[100]" }, /* @__PURE__ */ import_react39.default.createElement(
2599
+ /* @__PURE__ */ import_react38.default.createElement("section", { className: "flex gap-1.5 items-center" }, countVariable && /* @__PURE__ */ import_react38.default.createElement("p", { className: "text-text-sm text-gray-800 font-medium" }, count, " ", countVariable ?? "Items"), itemsPerPage && /* @__PURE__ */ import_react38.default.createElement("div", { className: "flex gap-1.5 items-center" }, /* @__PURE__ */ import_react38.default.createElement("span", { className: "text-gray-800 text-text-sm font-medium" }, "Items per page"), /* @__PURE__ */ import_react38.default.createElement("div", { className: "relative z-[100]" }, /* @__PURE__ */ import_react38.default.createElement(
2643
2600
  "div",
2644
2601
  {
2645
2602
  className: "border border-gray-600 w-[88px] rounded text-sm px-1.5 py-1 cursor-pointer flex items-center justify-between gap-1 text-gray-600",
@@ -2647,8 +2604,8 @@ var Pagination = ({
2647
2604
  },
2648
2605
  rowsPerPage,
2649
2606
  " ",
2650
- !showOptions ? /* @__PURE__ */ import_react39.default.createElement(import_react40.RiArrowDownSLine, { size: 14 }) : /* @__PURE__ */ import_react39.default.createElement(import_react40.RiArrowUpSLine, { size: 14 })
2651
- ), showOptions && /* @__PURE__ */ import_react39.default.createElement("div", { className: "absolute top-full left-0 shadow bg-white rounded-md text-sm mt-1 z-50" }, rowsPerPageOptions == null ? void 0 : rowsPerPageOptions.map((option, index) => /* @__PURE__ */ import_react39.default.createElement(
2607
+ !showOptions ? /* @__PURE__ */ import_react38.default.createElement(import_react39.RiArrowDownSLine, { size: 14 }) : /* @__PURE__ */ import_react38.default.createElement(import_react39.RiArrowUpSLine, { size: 14 })
2608
+ ), showOptions && /* @__PURE__ */ import_react38.default.createElement("div", { className: "absolute top-full left-0 shadow bg-white rounded-md text-sm mt-1 z-50" }, rowsPerPageOptions == null ? void 0 : rowsPerPageOptions.map((option, index) => /* @__PURE__ */ import_react38.default.createElement(
2652
2609
  "div",
2653
2610
  {
2654
2611
  key: index,
@@ -2657,36 +2614,36 @@ var Pagination = ({
2657
2614
  },
2658
2615
  typeof option === "number" ? option : option.label
2659
2616
  )))))),
2660
- /* @__PURE__ */ import_react39.default.createElement("section", { className: "flex items-center gap-2 font-medium" }, variant === "primary" ? /* @__PURE__ */ import_react39.default.createElement("div", { className: "flex items-center gap-2 text-gray-800 text-text-sm" }, /* @__PURE__ */ import_react39.default.createElement("span", null, "page"), /* @__PURE__ */ import_react39.default.createElement(
2617
+ /* @__PURE__ */ import_react38.default.createElement("section", { className: "flex items-center gap-2 font-medium" }, variant === "primary" ? /* @__PURE__ */ import_react38.default.createElement("div", { className: "flex items-center gap-2 text-gray-800 text-text-sm" }, /* @__PURE__ */ import_react38.default.createElement("span", null, "page"), /* @__PURE__ */ import_react38.default.createElement(
2661
2618
  "select",
2662
2619
  {
2663
2620
  value: page + 1,
2664
2621
  onChange: (e) => onPageChange(parseInt(e.target.value, 10) - 1),
2665
2622
  className: "bg-gray-25 text-gray-500 px-3.5 py-1 border border-gray-200 rounded-md text-sm focus:outline-none focus:border-gray-600"
2666
2623
  },
2667
- totalPages > 0 && [...Array(totalPages)].map((_, index) => /* @__PURE__ */ import_react39.default.createElement("option", { key: index + 1, value: index + 1 }, index + 1))
2668
- ), /* @__PURE__ */ import_react39.default.createElement("span", null, "of ", totalPages > 0 ? totalPages : 0)) : /* @__PURE__ */ import_react39.default.createElement("div", { className: "flex items-center gap-2 text-gray-800 text-text-sm mx-3" }, /* @__PURE__ */ import_react39.default.createElement("span", null, page + 1, " of ", totalPages > 0 ? totalPages : 0)), variant === "primary" ? /* @__PURE__ */ import_react39.default.createElement("div", { className: "flex items-center" }, /* @__PURE__ */ import_react39.default.createElement(
2624
+ totalPages > 0 && [...Array(totalPages)].map((_, index) => /* @__PURE__ */ import_react38.default.createElement("option", { key: index + 1, value: index + 1 }, index + 1))
2625
+ ), /* @__PURE__ */ import_react38.default.createElement("span", null, "of ", totalPages > 0 ? totalPages : 0)) : /* @__PURE__ */ import_react38.default.createElement("div", { className: "flex items-center gap-2 text-gray-800 text-text-sm mx-3" }, /* @__PURE__ */ import_react38.default.createElement("span", null, page + 1, " of ", totalPages > 0 ? totalPages : 0)), variant === "primary" ? /* @__PURE__ */ import_react38.default.createElement("div", { className: "flex items-center" }, /* @__PURE__ */ import_react38.default.createElement(
2669
2626
  Button_default,
2670
2627
  {
2671
2628
  variant: "outlined",
2672
2629
  intent: "default-outlined",
2673
- startIcon: /* @__PURE__ */ import_react39.default.createElement(import_react40.RiArrowLeftLine, { size: 20 }),
2630
+ startIcon: /* @__PURE__ */ import_react38.default.createElement(import_react39.RiArrowLeftLine, { size: 20 }),
2674
2631
  onClick: handlePrevPageClick,
2675
2632
  disabled: page === 0,
2676
2633
  className: "rounded-none h-8 rounded-l-lg"
2677
2634
  }
2678
- ), /* @__PURE__ */ import_react39.default.createElement(
2635
+ ), /* @__PURE__ */ import_react38.default.createElement(
2679
2636
  Button_default,
2680
2637
  {
2681
2638
  variant: "outlined",
2682
2639
  intent: "default-outlined",
2683
- startIcon: /* @__PURE__ */ import_react39.default.createElement(import_react40.RiArrowRightLine, { size: 20 }),
2640
+ startIcon: /* @__PURE__ */ import_react38.default.createElement(import_react39.RiArrowRightLine, { size: 20 }),
2684
2641
  onClick: handleNextPageClick,
2685
2642
  disabled: page === totalPages - 1,
2686
2643
  className: "rounded-none h-8 rounded-r-lg"
2687
2644
  }
2688
- )) : /* @__PURE__ */ import_react39.default.createElement("div", { className: "flex items-center gap-1" }, /* @__PURE__ */ import_react39.default.createElement(
2689
- import_react40.RiArrowLeftSLine,
2645
+ )) : /* @__PURE__ */ import_react38.default.createElement("div", { className: "flex items-center gap-1" }, /* @__PURE__ */ import_react38.default.createElement(
2646
+ import_react39.RiArrowLeftSLine,
2690
2647
  {
2691
2648
  size: 22,
2692
2649
  cursor: "pointer",
@@ -2695,8 +2652,8 @@ var Pagination = ({
2695
2652
  page === 0 && "pointer-events-none select-none opacity-30"
2696
2653
  )
2697
2654
  }
2698
- ), /* @__PURE__ */ import_react39.default.createElement(
2699
- import_react40.RiArrowRightSLine,
2655
+ ), /* @__PURE__ */ import_react38.default.createElement(
2656
+ import_react39.RiArrowRightSLine,
2700
2657
  {
2701
2658
  size: 22,
2702
2659
  cursor: "pointer",
@@ -2711,7 +2668,7 @@ var Pagination = ({
2711
2668
  var Pagination_default = Pagination;
2712
2669
 
2713
2670
  // app/components/Progress.tsx
2714
- var import_react41 = __toESM(require("react"), 1);
2671
+ var import_react40 = __toESM(require("react"), 1);
2715
2672
  var ProgressBar = ({
2716
2673
  progress,
2717
2674
  progressText = "",
@@ -2719,7 +2676,7 @@ var ProgressBar = ({
2719
2676
  progressTextPosition
2720
2677
  }) => {
2721
2678
  const _progress = Math == null ? void 0 : Math.min(Math == null ? void 0 : Math.max(0, progress), 100);
2722
- return /* @__PURE__ */ import_react41.default.createElement(
2679
+ return /* @__PURE__ */ import_react40.default.createElement(
2723
2680
  "div",
2724
2681
  {
2725
2682
  className: cn(
@@ -2727,7 +2684,7 @@ var ProgressBar = ({
2727
2684
  progressTextPosition === "right" ? "flex items-center gap-1" : progressTextPosition === "left" ? "flex items-center gap-1" : ""
2728
2685
  )
2729
2686
  },
2730
- /* @__PURE__ */ import_react41.default.createElement(
2687
+ /* @__PURE__ */ import_react40.default.createElement(
2731
2688
  "span",
2732
2689
  {
2733
2690
  className: cn(
@@ -2737,7 +2694,7 @@ var ProgressBar = ({
2737
2694
  },
2738
2695
  progressText
2739
2696
  ),
2740
- /* @__PURE__ */ import_react41.default.createElement(
2697
+ /* @__PURE__ */ import_react40.default.createElement(
2741
2698
  "div",
2742
2699
  {
2743
2700
  className: "w-full h-2 rounded bg-gray-200",
@@ -2746,7 +2703,7 @@ var ProgressBar = ({
2746
2703
  "aria-valuemin": 0,
2747
2704
  "aria-valuemax": 100
2748
2705
  },
2749
- /* @__PURE__ */ import_react41.default.createElement(
2706
+ /* @__PURE__ */ import_react40.default.createElement(
2750
2707
  "div",
2751
2708
  {
2752
2709
  className: `${progressColor} h-full transition-all delay-100 duration-300 rounded ease-in`,
@@ -2754,7 +2711,7 @@ var ProgressBar = ({
2754
2711
  }
2755
2712
  )
2756
2713
  ),
2757
- /* @__PURE__ */ import_react41.default.createElement(
2714
+ /* @__PURE__ */ import_react40.default.createElement(
2758
2715
  "span",
2759
2716
  {
2760
2717
  className: cn(
@@ -2769,7 +2726,7 @@ var ProgressBar = ({
2769
2726
  var Progress_default = ProgressBar;
2770
2727
 
2771
2728
  // app/components/Radio.tsx
2772
- var import_react42 = __toESM(require("react"), 1);
2729
+ var import_react41 = __toESM(require("react"), 1);
2773
2730
  var import_class_variance_authority7 = require("class-variance-authority");
2774
2731
  var radioVariants = (0, import_class_variance_authority7.cva)("", {
2775
2732
  variants: {
@@ -2782,9 +2739,9 @@ var radioVariants = (0, import_class_variance_authority7.cva)("", {
2782
2739
  size: "sm"
2783
2740
  }
2784
2741
  });
2785
- var Radio = (0, import_react42.forwardRef)(
2742
+ var Radio = (0, import_react41.forwardRef)(
2786
2743
  ({ size, disabled, checked, className, children, id, name, ...props }, ref) => {
2787
- return /* @__PURE__ */ import_react42.default.createElement("div", { className: "relative inline-flex items-center cursor-pointer" }, /* @__PURE__ */ import_react42.default.createElement(
2744
+ return /* @__PURE__ */ import_react41.default.createElement("div", { className: "relative inline-flex items-center cursor-pointer" }, /* @__PURE__ */ import_react41.default.createElement(
2788
2745
  "input",
2789
2746
  {
2790
2747
  ...props,
@@ -2801,7 +2758,7 @@ var Radio = (0, import_react42.forwardRef)(
2801
2758
  radioVariants({ size, className })
2802
2759
  )
2803
2760
  }
2804
- ), /* @__PURE__ */ import_react42.default.createElement(
2761
+ ), /* @__PURE__ */ import_react41.default.createElement(
2805
2762
  "span",
2806
2763
  {
2807
2764
  "aria-hidden": "true",
@@ -2817,11 +2774,11 @@ Radio.displayName = "Radio";
2817
2774
  var Radio_default = Radio;
2818
2775
 
2819
2776
  // app/components/RazorPayFileUpload.tsx
2820
- var import_react44 = __toESM(require("react"), 1);
2821
- var import_react45 = require("@remixicon/react");
2777
+ var import_react43 = __toESM(require("react"), 1);
2778
+ var import_react44 = require("@remixicon/react");
2822
2779
 
2823
2780
  // app/components/Spinner.tsx
2824
- var import_react43 = __toESM(require("react"), 1);
2781
+ var import_react42 = __toESM(require("react"), 1);
2825
2782
  var colorVars = {
2826
2783
  primary: {
2827
2784
  c1: "var(--primary-500)",
@@ -2856,7 +2813,7 @@ var Spinner = ({ size = "md", color = "primary" }) => {
2856
2813
  return colorVars.primary;
2857
2814
  };
2858
2815
  const colorValues = getColorValues(color);
2859
- return /* @__PURE__ */ import_react43.default.createElement("div", { className: cn("relative", sizeClass) }, /* @__PURE__ */ import_react43.default.createElement(
2816
+ return /* @__PURE__ */ import_react42.default.createElement("div", { className: cn("relative", sizeClass) }, /* @__PURE__ */ import_react42.default.createElement(
2860
2817
  "div",
2861
2818
  {
2862
2819
  className: "spinner",
@@ -2870,35 +2827,34 @@ var Spinner = ({ size = "md", color = "primary" }) => {
2870
2827
  var Spinner_default = Spinner;
2871
2828
 
2872
2829
  // app/components/RazorPayFileUpload.tsx
2873
- var import_image2 = __toESM(require("next/image"), 1);
2874
2830
  var defaultGetFileIcon = (fileName, fileType) => {
2875
2831
  var _a;
2876
2832
  const extension = ((_a = fileName.split(".").pop()) == null ? void 0 : _a.toLowerCase()) || "";
2877
2833
  if (fileType.startsWith("image/") || ["jpg", "jpeg", "png", "gif", "svg", "webp", "bmp"].includes(extension)) {
2878
- return /* @__PURE__ */ import_react44.default.createElement(import_react45.RiImageLine, { className: "w-6 h-6 text-white" });
2834
+ return /* @__PURE__ */ import_react43.default.createElement(import_react44.RiImageLine, { className: "w-6 h-6 text-white" });
2879
2835
  }
2880
2836
  if (fileType.startsWith("audio/") || ["mp3", "wav", "ogg", "m4a"].includes(extension)) {
2881
- return /* @__PURE__ */ import_react44.default.createElement(import_react45.RiMusic2Line, { className: "w-6 h-6 text-white" });
2837
+ return /* @__PURE__ */ import_react43.default.createElement(import_react44.RiMusic2Line, { className: "w-6 h-6 text-white" });
2882
2838
  }
2883
2839
  if (fileType.startsWith("video/") || ["mp4", "avi", "mkv", "mov", "wmv"].includes(extension)) {
2884
- return /* @__PURE__ */ import_react44.default.createElement(import_react45.RiVideoLine, { className: "w-6 h-6 text-white" });
2840
+ return /* @__PURE__ */ import_react43.default.createElement(import_react44.RiVideoLine, { className: "w-6 h-6 text-white" });
2885
2841
  }
2886
2842
  if (fileType.includes("excel") || ["xls", "xlsx", "csv", "txt", "ods"].includes(extension)) {
2887
- return /* @__PURE__ */ import_react44.default.createElement(import_react45.RiFileExcel2Line, { className: "w-6 h-6 text-white" });
2843
+ return /* @__PURE__ */ import_react43.default.createElement(import_react44.RiFileExcel2Line, { className: "w-6 h-6 text-white" });
2888
2844
  }
2889
2845
  if (fileType.includes("word") || ["doc", "docx", "odt", "xml"].includes(extension)) {
2890
- return /* @__PURE__ */ import_react44.default.createElement(import_react45.RiFileWord2Line, { className: "w-6 h-6 text-white" });
2846
+ return /* @__PURE__ */ import_react43.default.createElement(import_react44.RiFileWord2Line, { className: "w-6 h-6 text-white" });
2891
2847
  }
2892
2848
  if (["pptx", "pptm", "xps", "ppsx"].includes(extension)) {
2893
- return /* @__PURE__ */ import_react44.default.createElement(import_react45.RiFilePpt2Line, { className: "w-6 h-6 text-white" });
2849
+ return /* @__PURE__ */ import_react43.default.createElement(import_react44.RiFilePpt2Line, { className: "w-6 h-6 text-white" });
2894
2850
  }
2895
2851
  if (fileType.includes("zip") || ["zip", "rar", "7z", "tar", "gz"].includes(extension)) {
2896
- return /* @__PURE__ */ import_react44.default.createElement(import_react45.RiFileZipLine, { className: "w-6 h-6 text-white" });
2852
+ return /* @__PURE__ */ import_react43.default.createElement(import_react44.RiFileZipLine, { className: "w-6 h-6 text-white" });
2897
2853
  }
2898
2854
  if (fileType === "application/pdf" || extension === "pdf") {
2899
- return /* @__PURE__ */ import_react44.default.createElement(import_react45.RiFilePdf2Line, { className: "w-6 h-6 text-white" });
2855
+ return /* @__PURE__ */ import_react43.default.createElement(import_react44.RiFilePdf2Line, { className: "w-6 h-6 text-white" });
2900
2856
  }
2901
- return /* @__PURE__ */ import_react44.default.createElement(import_react45.RiFileLine, { className: "w-6 h-6 text-white" });
2857
+ return /* @__PURE__ */ import_react43.default.createElement(import_react44.RiFileLine, { className: "w-6 h-6 text-white" });
2902
2858
  };
2903
2859
  function ImageUploadControlled({
2904
2860
  items,
@@ -2919,10 +2875,10 @@ function ImageUploadControlled({
2919
2875
  disabled
2920
2876
  }) {
2921
2877
  var _a;
2922
- const inputRef = (0, import_react44.useRef)(null);
2923
- const [isDragging, setIsDragging] = (0, import_react44.useState)(false);
2924
- const localPreviews = (0, import_react44.useRef)(/* @__PURE__ */ new Map());
2925
- const uploadProgress = (0, import_react44.useRef)(/* @__PURE__ */ new Map());
2878
+ const inputRef = (0, import_react43.useRef)(null);
2879
+ const [isDragging, setIsDragging] = (0, import_react43.useState)(false);
2880
+ const localPreviews = (0, import_react43.useRef)(/* @__PURE__ */ new Map());
2881
+ const uploadProgress = (0, import_react43.useRef)(/* @__PURE__ */ new Map());
2926
2882
  const formatSize = (bytes) => {
2927
2883
  if (!bytes)
2928
2884
  return "0 KB";
@@ -2944,7 +2900,7 @@ function ImageUploadControlled({
2944
2900
  text: "Uploading",
2945
2901
  color: "text-blue-600",
2946
2902
  showSpinner: true,
2947
- icon: /* @__PURE__ */ import_react44.default.createElement(Spinner_default, { size: "xs", color: "gray" }),
2903
+ icon: /* @__PURE__ */ import_react43.default.createElement(Spinner_default, { size: "xs", color: "gray" }),
2948
2904
  canPreview: false
2949
2905
  };
2950
2906
  case "success":
@@ -2952,7 +2908,7 @@ function ImageUploadControlled({
2952
2908
  text: "Completed",
2953
2909
  color: "text-green-600",
2954
2910
  showSpinner: false,
2955
- icon: /* @__PURE__ */ import_react44.default.createElement(import_react45.RiCheckLine, { className: "w-3 h-3 text-white" }),
2911
+ icon: /* @__PURE__ */ import_react43.default.createElement(import_react44.RiCheckLine, { className: "w-3 h-3 text-white" }),
2956
2912
  canPreview: true
2957
2913
  };
2958
2914
  case "error":
@@ -2960,7 +2916,7 @@ function ImageUploadControlled({
2960
2916
  text: "Failed",
2961
2917
  color: "text-red-600",
2962
2918
  showSpinner: false,
2963
- icon: /* @__PURE__ */ import_react44.default.createElement(import_react45.RiCloseLine, { className: "w-3 h-3 text-white" }),
2919
+ icon: /* @__PURE__ */ import_react43.default.createElement(import_react44.RiCloseLine, { className: "w-3 h-3 text-white" }),
2964
2920
  canPreview: false
2965
2921
  };
2966
2922
  default:
@@ -2991,18 +2947,24 @@ function ImageUploadControlled({
2991
2947
  const fileType = ((_b = item.file) == null ? void 0 : _b.type) || "";
2992
2948
  return getFileIcon(fileName, fileType);
2993
2949
  };
2994
- const handleUpload = import_react44.default.useCallback(
2950
+ const handleUpload = import_react43.default.useCallback(
2995
2951
  async (item) => {
2996
- if (!item.file || !onUpload)
2952
+ if (!item.file || !onUpload || item.status === "success" || item.status === "uploading") {
2997
2953
  return;
2954
+ }
2998
2955
  try {
2999
2956
  if (onUpdateItem) {
3000
2957
  onUpdateItem(item.id, { status: "uploading", progress: 0 });
3001
2958
  }
2959
+ uploadProgress.current.delete(item.id);
3002
2960
  const previewUrl = await onUpload(item.file, (progress) => {
3003
- uploadProgress.current.set(item.id, progress);
2961
+ const clampedProgress = Math.min(100, Math.max(0, progress));
2962
+ uploadProgress.current.set(item.id, clampedProgress);
3004
2963
  if (onUpdateItem) {
3005
- onUpdateItem(item.id, { progress, status: "uploading" });
2964
+ onUpdateItem(item.id, {
2965
+ progress: clampedProgress,
2966
+ status: "uploading"
2967
+ });
3006
2968
  }
3007
2969
  });
3008
2970
  if (onUpdateItem) {
@@ -3012,15 +2974,25 @@ function ImageUploadControlled({
3012
2974
  previewUrl
3013
2975
  });
3014
2976
  }
2977
+ uploadProgress.current.delete(item.id);
3015
2978
  } catch (error) {
2979
+ console.error("Upload error:", error);
3016
2980
  if (onUpdateItem) {
3017
- onUpdateItem(item.id, { progress: 0, status: "error" });
2981
+ onUpdateItem(item.id, {
2982
+ progress: 0,
2983
+ status: "error"
2984
+ });
3018
2985
  }
2986
+ uploadProgress.current.delete(item.id);
3019
2987
  }
3020
2988
  },
3021
2989
  [onUpload, onUpdateItem]
3022
2990
  );
3023
2991
  const getCurrentProgress = (item) => {
2992
+ if (item.status === "success")
2993
+ return 100;
2994
+ if (item.status === "error")
2995
+ return 0;
3024
2996
  return uploadProgress.current.get(item.id) ?? item.progress ?? 0;
3025
2997
  };
3026
2998
  const handleRetry = (id) => {
@@ -3088,7 +3060,7 @@ function ImageUploadControlled({
3088
3060
  triggerInput();
3089
3061
  }
3090
3062
  };
3091
- import_react44.default.useEffect(() => {
3063
+ import_react43.default.useEffect(() => {
3092
3064
  if (autoUpload && onUpload) {
3093
3065
  items.forEach((item) => {
3094
3066
  if (item.status === "idle" && item.file) {
@@ -3097,13 +3069,13 @@ function ImageUploadControlled({
3097
3069
  });
3098
3070
  }
3099
3071
  }, [items, autoUpload, onUpload, handleUpload]);
3100
- import_react44.default.useEffect(() => {
3072
+ import_react43.default.useEffect(() => {
3101
3073
  const previews = localPreviews == null ? void 0 : localPreviews.current;
3102
3074
  return () => {
3103
3075
  previews == null ? void 0 : previews.forEach((url) => URL == null ? void 0 : URL.revokeObjectURL(url));
3104
3076
  };
3105
3077
  }, []);
3106
- return /* @__PURE__ */ import_react44.default.createElement("div", { className: `w-full ${className}` }, /* @__PURE__ */ import_react44.default.createElement(
3078
+ return /* @__PURE__ */ import_react43.default.createElement("div", { className: `w-full ${className}` }, /* @__PURE__ */ import_react43.default.createElement(
3107
3079
  "input",
3108
3080
  {
3109
3081
  ref: inputRef,
@@ -3114,7 +3086,7 @@ function ImageUploadControlled({
3114
3086
  onChange: handleInputChange,
3115
3087
  disabled
3116
3088
  }
3117
- ), /* @__PURE__ */ import_react44.default.createElement(
3089
+ ), /* @__PURE__ */ import_react43.default.createElement(
3118
3090
  Label_default,
3119
3091
  {
3120
3092
  htmlFor: (_a = inputRef == null ? void 0 : inputRef.current) == null ? void 0 : _a.id,
@@ -3133,42 +3105,34 @@ function ImageUploadControlled({
3133
3105
  disabled && "pointer-events-none cursor-not-allowed"
3134
3106
  )
3135
3107
  },
3136
- /* @__PURE__ */ import_react44.default.createElement("div", { className: "flex items-center gap-3 text-center" }, /* @__PURE__ */ import_react44.default.createElement("div", null, /* @__PURE__ */ import_react44.default.createElement("p", { className: "text-sm text-gray-600" }, "Drag files here or", /* @__PURE__ */ import_react44.default.createElement("span", { className: "text-primary-600 font-semibold ml-1" }, "Upload"), " ", /* @__PURE__ */ import_react44.default.createElement("br", null))))
3137
- ), /* @__PURE__ */ import_react44.default.createElement("span", { className: "text-xs" }, hintText ?? `Only PNG, JPG, GIF. Max file size ${maxSizeMB}MB`), /* @__PURE__ */ import_react44.default.createElement("div", { className: "flex flex-col gap-4 mt-4" }, items == null ? void 0 : items.map((item) => {
3108
+ /* @__PURE__ */ import_react43.default.createElement("div", { className: "flex items-center gap-3 text-center" }, /* @__PURE__ */ import_react43.default.createElement("div", null, /* @__PURE__ */ import_react43.default.createElement("p", { className: "text-sm text-gray-600" }, "Drag files here or", /* @__PURE__ */ import_react43.default.createElement("span", { className: "text-primary-600 font-semibold ml-1" }, "Upload"), " ", /* @__PURE__ */ import_react43.default.createElement("br", null))))
3109
+ ), /* @__PURE__ */ import_react43.default.createElement("span", { className: "text-xs" }, hintText ?? `Only PNG, JPG, GIF. Max file size ${maxSizeMB}MB`), /* @__PURE__ */ import_react43.default.createElement("div", { className: "flex flex-col gap-4 mt-4" }, items == null ? void 0 : items.map((item) => {
3138
3110
  var _a2, _b;
3139
- const previewUrl = getPreviewUrl(item);
3140
3111
  const progress = getCurrentProgress(item);
3141
3112
  const statusInfo = getStatusDisplay(item.status);
3142
3113
  const progressColor = getProgressColor(item == null ? void 0 : item.status);
3143
3114
  const fileIcon = getItemFileIcon(item);
3144
- return /* @__PURE__ */ import_react44.default.createElement(
3115
+ return /* @__PURE__ */ import_react43.default.createElement(
3145
3116
  "div",
3146
3117
  {
3147
3118
  key: item == null ? void 0 : item.id,
3148
3119
  className: "flex items-center gap-4 bg-white max-w-[564px] w-full p-4 rounded-lg border border-gray-200"
3149
3120
  },
3150
- /* @__PURE__ */ import_react44.default.createElement("div", { className: "w-14 h-14 flex-shrink-0 rounded-md overflow-hidden relative" }, /* @__PURE__ */ import_react44.default.createElement(
3151
- import_image2.default,
3121
+ /* @__PURE__ */ import_react43.default.createElement("div", { className: "w-14 h-14 flex-shrink-0 rounded-md overflow-hidden relative" }, /* @__PURE__ */ import_react43.default.createElement(
3122
+ "img",
3152
3123
  {
3153
3124
  src: "/fileImg.svg",
3154
3125
  className: "absolute inset-0 w-full h-full object-contain",
3155
- fill: true,
3156
3126
  alt: "file"
3157
3127
  }
3158
- ), /* @__PURE__ */ import_react44.default.createElement("div", { className: "relative z-10 mt-2 -ml-[2px] flex items-center justify-center w-full h-full text-white" }, fileIcon)),
3159
- /* @__PURE__ */ import_react44.default.createElement("div", { className: "flex-1 min-w-0" }, /* @__PURE__ */ import_react44.default.createElement("div", { className: "flex items-start justify-between gap-2 mb-3" }, /* @__PURE__ */ import_react44.default.createElement("div", { className: "min-w-0" }, /* @__PURE__ */ import_react44.default.createElement("h4", { className: "text-sm font-medium text-gray-900 truncate" }, (item == null ? void 0 : item.name) || ((_a2 = item.file) == null ? void 0 : _a2.name) || "Unnamed file"), showSizeText && /* @__PURE__ */ import_react44.default.createElement("div", { className: "text-xs text-gray-500 mt-1 flex items-center gap-1" }, formatSize((item == null ? void 0 : item.size) || ((_b = item.file) == null ? void 0 : _b.size)), statusInfo.text && /* @__PURE__ */ import_react44.default.createElement("div", { className: "ml-2 font-medium flex items-center gap-1" }, (statusInfo == null ? void 0 : statusInfo.showSpinner) ? (
3160
- // For uploading - just show spinner without circle
3161
- /* @__PURE__ */ import_react44.default.createElement(import_react44.default.Fragment, null, statusInfo.icon, /* @__PURE__ */ import_react44.default.createElement("span", { className: statusInfo.color }, statusInfo.text))
3162
- ) : (
3163
- // For completed/failed - show circle with icon
3164
- /* @__PURE__ */ import_react44.default.createElement(import_react44.default.Fragment, null, /* @__PURE__ */ import_react44.default.createElement(
3165
- "div",
3166
- {
3167
- className: `w-4 h-4 rounded-full flex justify-center items-center ${(statusInfo == null ? void 0 : statusInfo.color) === "text-red-600" ? "bg-red-600" : (statusInfo == null ? void 0 : statusInfo.color) === "text-green-600" ? "bg-green-600" : "bg-gray-400"}`
3168
- },
3169
- statusInfo == null ? void 0 : statusInfo.icon
3170
- ), /* @__PURE__ */ import_react44.default.createElement("span", { className: statusInfo.color }, statusInfo == null ? void 0 : statusInfo.text))
3171
- )))), /* @__PURE__ */ import_react44.default.createElement("div", { className: "flex items-center gap-2" }, /* @__PURE__ */ import_react44.default.createElement("div", { className: "flex items-center gap-2" }, onPreview && (item == null ? void 0 : item.status) === "success" && /* @__PURE__ */ import_react44.default.createElement(
3128
+ ), /* @__PURE__ */ import_react43.default.createElement("div", { className: "relative z-10 mt-2 -ml-[2px] flex items-center justify-center w-full h-full text-white" }, fileIcon)),
3129
+ /* @__PURE__ */ import_react43.default.createElement("div", { className: "flex-1 min-w-0" }, /* @__PURE__ */ import_react43.default.createElement("div", { className: "flex items-start justify-between gap-2 mb-3" }, /* @__PURE__ */ import_react43.default.createElement("div", { className: "min-w-0" }, /* @__PURE__ */ import_react43.default.createElement("h4", { className: "text-sm font-medium text-gray-900 truncate" }, (item == null ? void 0 : item.name) || ((_a2 = item.file) == null ? void 0 : _a2.name) || "Unnamed file"), showSizeText && /* @__PURE__ */ import_react43.default.createElement("div", { className: "text-xs text-gray-500 mt-1 flex items-center gap-1" }, formatSize((item == null ? void 0 : item.size) || ((_b = item.file) == null ? void 0 : _b.size)), statusInfo.text && /* @__PURE__ */ import_react43.default.createElement("div", { className: "ml-2 font-medium flex items-center gap-1" }, (statusInfo == null ? void 0 : statusInfo.showSpinner) ? /* @__PURE__ */ import_react43.default.createElement(import_react43.default.Fragment, null, statusInfo.icon, /* @__PURE__ */ import_react43.default.createElement("span", { className: statusInfo.color }, statusInfo.text)) : /* @__PURE__ */ import_react43.default.createElement(import_react43.default.Fragment, null, /* @__PURE__ */ import_react43.default.createElement(
3130
+ "div",
3131
+ {
3132
+ className: `w-4 h-4 rounded-full flex justify-center items-center ${(statusInfo == null ? void 0 : statusInfo.color) === "text-red-600" ? "bg-red-600" : (statusInfo == null ? void 0 : statusInfo.color) === "text-green-600" ? "bg-green-600" : "bg-gray-400"}`
3133
+ },
3134
+ statusInfo == null ? void 0 : statusInfo.icon
3135
+ ), /* @__PURE__ */ import_react43.default.createElement("span", { className: statusInfo.color }, statusInfo == null ? void 0 : statusInfo.text))))), /* @__PURE__ */ import_react43.default.createElement("div", { className: "flex items-center gap-2" }, /* @__PURE__ */ import_react43.default.createElement("div", { className: "flex items-center gap-2" }, onPreview && (item == null ? void 0 : item.status) === "success" && /* @__PURE__ */ import_react43.default.createElement(
3172
3136
  "button",
3173
3137
  {
3174
3138
  type: "button",
@@ -3176,8 +3140,8 @@ function ImageUploadControlled({
3176
3140
  className: "p-2 rounded-md hover:bg-gray-100 transition-colors text-gray-600",
3177
3141
  title: "Preview"
3178
3142
  },
3179
- /* @__PURE__ */ import_react44.default.createElement(import_react45.RiEyeLine, { size: 16 })
3180
- ), (item == null ? void 0 : item.status) === "error" && /* @__PURE__ */ import_react44.default.createElement(import_react44.default.Fragment, null, /* @__PURE__ */ import_react44.default.createElement("span", { className: "hidden sm:inline-block" }, /* @__PURE__ */ import_react44.default.createElement(
3143
+ /* @__PURE__ */ import_react43.default.createElement(import_react44.RiEyeLine, { size: 16 })
3144
+ ), (item == null ? void 0 : item.status) === "error" && /* @__PURE__ */ import_react43.default.createElement(import_react43.default.Fragment, null, /* @__PURE__ */ import_react43.default.createElement("span", { className: "hidden sm:inline-block" }, /* @__PURE__ */ import_react43.default.createElement(
3181
3145
  Button_default,
3182
3146
  {
3183
3147
  variant: "outlined",
@@ -3187,9 +3151,9 @@ function ImageUploadControlled({
3187
3151
  onClick: () => handleRetry(item == null ? void 0 : item.id),
3188
3152
  className: "whitespace-nowrap h-[30px]"
3189
3153
  },
3190
- /* @__PURE__ */ import_react44.default.createElement(import_react45.RiRefreshLine, { size: 16 }),
3154
+ /* @__PURE__ */ import_react43.default.createElement(import_react44.RiRefreshLine, { size: 16 }),
3191
3155
  "Try Again"
3192
- )), /* @__PURE__ */ import_react44.default.createElement("span", { className: "sm:hidden" }, /* @__PURE__ */ import_react44.default.createElement(
3156
+ )), /* @__PURE__ */ import_react43.default.createElement("span", { className: "sm:hidden" }, /* @__PURE__ */ import_react43.default.createElement(
3193
3157
  Button_default,
3194
3158
  {
3195
3159
  variant: "outlined",
@@ -3199,8 +3163,8 @@ function ImageUploadControlled({
3199
3163
  onClick: () => handleRetry(item == null ? void 0 : item.id),
3200
3164
  className: "h-[30px] px-1 py-1"
3201
3165
  },
3202
- /* @__PURE__ */ import_react44.default.createElement(import_react45.RiRefreshLine, { size: 16 })
3203
- ))), /* @__PURE__ */ import_react44.default.createElement(
3166
+ /* @__PURE__ */ import_react43.default.createElement(import_react44.RiRefreshLine, { size: 16 })
3167
+ ))), /* @__PURE__ */ import_react43.default.createElement(
3204
3168
  "button",
3205
3169
  {
3206
3170
  type: "button",
@@ -3208,25 +3172,25 @@ function ImageUploadControlled({
3208
3172
  className: "p-2 rounded-md hover:bg-gray-100 transition-colors text-gray-600",
3209
3173
  title: "Delete"
3210
3174
  },
3211
- /* @__PURE__ */ import_react44.default.createElement(import_react45.RiDeleteBin6Line, { size: 16 })
3212
- )))), /* @__PURE__ */ import_react44.default.createElement("div", { className: "flex items-center gap-4" }, /* @__PURE__ */ import_react44.default.createElement("div", { className: "flex-1" }, /* @__PURE__ */ import_react44.default.createElement(
3213
- Progress_default,
3175
+ /* @__PURE__ */ import_react43.default.createElement(import_react44.RiDeleteBin6Line, { size: 16 })
3176
+ )))), /* @__PURE__ */ import_react43.default.createElement("div", { className: "flex items-center gap-4" }, /* @__PURE__ */ import_react43.default.createElement("div", { className: "flex-1" }, /* @__PURE__ */ import_react43.default.createElement("div", { className: "w-full h-2 bg-gray-200 rounded-full overflow-hidden" }, /* @__PURE__ */ import_react43.default.createElement(
3177
+ "div",
3214
3178
  {
3215
- progressColor,
3216
- progress
3179
+ className: `h-full rounded-full transition-all duration-300 ease-out ${progressColor}`,
3180
+ style: { width: `${progress}%` }
3217
3181
  }
3218
- )), /* @__PURE__ */ import_react44.default.createElement("div", { className: "text-xs text-gray-500 w-12 text-right" }, item.status === "error" ? "--%" : `${Math.round(progress)}%`)))
3182
+ ))), /* @__PURE__ */ import_react43.default.createElement("div", { className: "text-xs text-gray-500 w-12 text-right" }, item.status === "error" ? "--%" : item.status === "success" ? "100%" : `${Math.round(progress)}%`)))
3219
3183
  );
3220
3184
  })));
3221
3185
  }
3222
3186
 
3223
3187
  // app/components/Sidebar.tsx
3224
- var import_react46 = __toESM(require("react"), 1);
3225
- var import_link2 = __toESM(require("next/link"), 1);
3226
- var import_react47 = require("@remixicon/react");
3188
+ var import_react45 = __toESM(require("react"), 1);
3189
+ var import_link = __toESM(require("next/link"), 1);
3190
+ var import_react46 = require("@remixicon/react");
3227
3191
  var import_navigation = require("next/navigation");
3228
3192
  var Sidebar = ({ children, collapsed, setCollapsed, dense = false }) => {
3229
- return /* @__PURE__ */ import_react46.default.createElement(
3193
+ return /* @__PURE__ */ import_react45.default.createElement(
3230
3194
  "div",
3231
3195
  {
3232
3196
  onMouseEnter: () => setCollapsed(true),
@@ -3236,14 +3200,14 @@ var Sidebar = ({ children, collapsed, setCollapsed, dense = false }) => {
3236
3200
  !collapsed ? dense ? "w-[76px] py-[19px] px-[15px]" : "w-[80px] py-[21px] px-[17px]" : dense ? "w-[304px] py-[20px] px-5" : "w-[308px] py-[22px] px-6"
3237
3201
  )
3238
3202
  },
3239
- /* @__PURE__ */ import_react46.default.createElement("div", null, children)
3203
+ /* @__PURE__ */ import_react45.default.createElement("div", null, children)
3240
3204
  );
3241
3205
  };
3242
3206
  var SidebarHeader = ({
3243
3207
  children,
3244
3208
  dense = false
3245
3209
  }) => {
3246
- return /* @__PURE__ */ import_react46.default.createElement("div", { className: cn("z-20", dense ? "mb-3" : "mb-4") }, /* @__PURE__ */ import_react46.default.createElement("div", { className: "flex justify-between items-center" }, /* @__PURE__ */ import_react46.default.createElement("span", { className: "whitespace-nowrap" }, children)));
3210
+ return /* @__PURE__ */ import_react45.default.createElement("div", { className: cn("z-20", dense ? "mb-3" : "mb-4") }, /* @__PURE__ */ import_react45.default.createElement("div", { className: "flex justify-between items-center" }, /* @__PURE__ */ import_react45.default.createElement("span", { className: "whitespace-nowrap" }, children)));
3247
3211
  };
3248
3212
  var SidebarMenu = ({
3249
3213
  collapsed,
@@ -3251,12 +3215,12 @@ var SidebarMenu = ({
3251
3215
  scroll = false,
3252
3216
  dense = false
3253
3217
  }) => {
3254
- const [openMenus, setOpenMenus] = (0, import_react46.useState)({});
3218
+ const [openMenus, setOpenMenus] = (0, import_react45.useState)({});
3255
3219
  const currentPath = (0, import_navigation.usePathname)();
3256
3220
  const toggleMenu = (label) => {
3257
3221
  setOpenMenus((prev) => ({ ...prev, [label]: !prev[label] }));
3258
3222
  };
3259
- import_react46.default.useEffect(() => {
3223
+ import_react45.default.useEffect(() => {
3260
3224
  if (!collapsed) {
3261
3225
  setOpenMenus({});
3262
3226
  }
@@ -3272,13 +3236,13 @@ var SidebarMenu = ({
3272
3236
  }
3273
3237
  };
3274
3238
  const renderMenuItems = (items, level = 0) => {
3275
- return /* @__PURE__ */ import_react46.default.createElement("ul", { className: level > 0 ? "ml-5 border-l border-gray-200" : "" }, items == null ? void 0 : items.map((item, index) => {
3239
+ return /* @__PURE__ */ import_react45.default.createElement("ul", { className: level > 0 ? "ml-5 border-l border-gray-200" : "" }, items == null ? void 0 : items.map((item, index) => {
3276
3240
  const hasSubItems = item.subItems && item.subItems.length > 0;
3277
3241
  const isActive = item.href === currentPath;
3278
3242
  const isOpen = openMenus[item.label];
3279
3243
  const paddingLeft = level === 0 ? dense ? "10px" : "12px" : `${level * 5 + (dense ? 10 : 12)}px`;
3280
- return /* @__PURE__ */ import_react46.default.createElement("li", { key: index }, hasSubItems ? /* @__PURE__ */ import_react46.default.createElement(
3281
- import_link2.default,
3244
+ return /* @__PURE__ */ import_react45.default.createElement("li", { key: index }, hasSubItems ? /* @__PURE__ */ import_react45.default.createElement(
3245
+ import_link.default,
3282
3246
  {
3283
3247
  href: item.href || "#",
3284
3248
  className: cn(
@@ -3298,22 +3262,22 @@ var SidebarMenu = ({
3298
3262
  e.preventDefault();
3299
3263
  }
3300
3264
  },
3301
- /* @__PURE__ */ import_react46.default.createElement("div", { className: "flex items-center gap-2" }, item.icon && level === 0 && /* @__PURE__ */ import_react46.default.createElement("span", { className: dense ? "text-xs" : "text-text-sm" }, item.icon), /* @__PURE__ */ import_react46.default.createElement("span", { className: cn(!collapsed ? "opacity-0" : "") }, item.label)),
3302
- collapsed && hasSubItems && /* @__PURE__ */ import_react46.default.createElement("span", null, isOpen ? /* @__PURE__ */ import_react46.default.createElement(
3303
- import_react47.RiArrowDownSLine,
3265
+ /* @__PURE__ */ import_react45.default.createElement("div", { className: "flex items-center gap-2" }, item.icon && level === 0 && /* @__PURE__ */ import_react45.default.createElement("span", { className: dense ? "text-xs" : "text-text-sm" }, item.icon), /* @__PURE__ */ import_react45.default.createElement("span", { className: cn(!collapsed ? "opacity-0" : "") }, item.label)),
3266
+ collapsed && hasSubItems && /* @__PURE__ */ import_react45.default.createElement("span", null, isOpen ? /* @__PURE__ */ import_react45.default.createElement(
3267
+ import_react46.RiArrowDownSLine,
3304
3268
  {
3305
3269
  size: dense ? 16 : 18,
3306
3270
  color: "#475467"
3307
3271
  }
3308
- ) : /* @__PURE__ */ import_react46.default.createElement(
3309
- import_react47.RiArrowRightSLine,
3272
+ ) : /* @__PURE__ */ import_react45.default.createElement(
3273
+ import_react46.RiArrowRightSLine,
3310
3274
  {
3311
3275
  size: dense ? 16 : 18,
3312
3276
  color: "#475467"
3313
3277
  }
3314
3278
  ))
3315
- ) : /* @__PURE__ */ import_react46.default.createElement(
3316
- import_link2.default,
3279
+ ) : /* @__PURE__ */ import_react45.default.createElement(
3280
+ import_link.default,
3317
3281
  {
3318
3282
  href: item.href || "#",
3319
3283
  className: cn(
@@ -3324,12 +3288,12 @@ var SidebarMenu = ({
3324
3288
  level > 0 ? "text-sm font-medium" : "font-semibold"
3325
3289
  )
3326
3290
  },
3327
- item.icon && level === 0 && /* @__PURE__ */ import_react46.default.createElement("span", { className: dense ? "text-xs" : "text-text-sm" }, item.icon),
3328
- /* @__PURE__ */ import_react46.default.createElement("span", { className: cn(!collapsed ? "opacity-0" : "") }, item.label)
3329
- ), hasSubItems && isOpen && /* @__PURE__ */ import_react46.default.createElement("div", { className: dense ? "mt-0.5" : "mt-1" }, renderMenuItems(item.subItems, level + 1)));
3291
+ item.icon && level === 0 && /* @__PURE__ */ import_react45.default.createElement("span", { className: dense ? "text-xs" : "text-text-sm" }, item.icon),
3292
+ /* @__PURE__ */ import_react45.default.createElement("span", { className: cn(!collapsed ? "opacity-0" : "") }, item.label)
3293
+ ), hasSubItems && isOpen && /* @__PURE__ */ import_react45.default.createElement("div", { className: dense ? "mt-0.5" : "mt-1" }, renderMenuItems(item.subItems, level + 1)));
3330
3294
  }));
3331
3295
  };
3332
- return /* @__PURE__ */ import_react46.default.createElement(
3296
+ return /* @__PURE__ */ import_react45.default.createElement(
3333
3297
  "nav",
3334
3298
  {
3335
3299
  className: cn(
@@ -3338,7 +3302,7 @@ var SidebarMenu = ({
3338
3302
  scroll && collapsed ? "overflow-y-auto customScroll" : "overflow-hidden"
3339
3303
  )
3340
3304
  },
3341
- /* @__PURE__ */ import_react46.default.createElement(
3305
+ /* @__PURE__ */ import_react45.default.createElement(
3342
3306
  "ul",
3343
3307
  {
3344
3308
  className: cn(
@@ -3346,13 +3310,13 @@ var SidebarMenu = ({
3346
3310
  dense ? "my-1.5" : "my-2"
3347
3311
  )
3348
3312
  },
3349
- navItems == null ? void 0 : navItems.map((parentItem, parentIndex) => /* @__PURE__ */ import_react46.default.createElement(
3313
+ navItems == null ? void 0 : navItems.map((parentItem, parentIndex) => /* @__PURE__ */ import_react45.default.createElement(
3350
3314
  "li",
3351
3315
  {
3352
3316
  key: parentIndex,
3353
3317
  className: "flex flex-col gap-3 mb-1 whitespace-nowrap overflow-hidden"
3354
3318
  },
3355
- /* @__PURE__ */ import_react46.default.createElement(
3319
+ /* @__PURE__ */ import_react45.default.createElement(
3356
3320
  "p",
3357
3321
  {
3358
3322
  className: cn(
@@ -3376,7 +3340,7 @@ var SidebarFooter = ({
3376
3340
  dense = false
3377
3341
  }) => {
3378
3342
  const currentPath = (0, import_navigation.usePathname)();
3379
- return /* @__PURE__ */ import_react46.default.createElement(
3343
+ return /* @__PURE__ */ import_react45.default.createElement(
3380
3344
  "div",
3381
3345
  {
3382
3346
  className: cn({
@@ -3388,8 +3352,8 @@ var SidebarFooter = ({
3388
3352
  }),
3389
3353
  onClick: () => setCollapsed(true)
3390
3354
  },
3391
- collapsed && /* @__PURE__ */ import_react46.default.createElement("div", { className: "shadow-md" }, /* @__PURE__ */ import_react46.default.createElement(Divider_default, null)),
3392
- navItems && navItems.length > 0 && /* @__PURE__ */ import_react46.default.createElement("nav", { className: "flex-grow w-full" }, /* @__PURE__ */ import_react46.default.createElement(
3355
+ collapsed && /* @__PURE__ */ import_react45.default.createElement("div", { className: "shadow-md" }, /* @__PURE__ */ import_react45.default.createElement(Divider_default, null)),
3356
+ navItems && navItems.length > 0 && /* @__PURE__ */ import_react45.default.createElement("nav", { className: "flex-grow w-full" }, /* @__PURE__ */ import_react45.default.createElement(
3393
3357
  "ul",
3394
3358
  {
3395
3359
  className: cn(
@@ -3399,13 +3363,13 @@ var SidebarFooter = ({
3399
3363
  },
3400
3364
  navItems == null ? void 0 : navItems.map((parentItem, parentIndex) => {
3401
3365
  var _a;
3402
- return /* @__PURE__ */ import_react46.default.createElement(
3366
+ return /* @__PURE__ */ import_react45.default.createElement(
3403
3367
  "li",
3404
3368
  {
3405
3369
  key: parentIndex,
3406
3370
  className: "flex flex-col gap-3 mb-1 whitespace-nowrap overflow-hidden"
3407
3371
  },
3408
- /* @__PURE__ */ import_react46.default.createElement(
3372
+ /* @__PURE__ */ import_react45.default.createElement(
3409
3373
  "p",
3410
3374
  {
3411
3375
  className: cn({
@@ -3418,8 +3382,8 @@ var SidebarFooter = ({
3418
3382
  },
3419
3383
  parentItem.label
3420
3384
  ),
3421
- /* @__PURE__ */ import_react46.default.createElement("ul", null, (_a = parentItem == null ? void 0 : parentItem.items) == null ? void 0 : _a.map((item, index) => /* @__PURE__ */ import_react46.default.createElement("li", { key: index }, /* @__PURE__ */ import_react46.default.createElement(
3422
- import_link2.default,
3385
+ /* @__PURE__ */ import_react45.default.createElement("ul", null, (_a = parentItem == null ? void 0 : parentItem.items) == null ? void 0 : _a.map((item, index) => /* @__PURE__ */ import_react45.default.createElement("li", { key: index }, /* @__PURE__ */ import_react45.default.createElement(
3386
+ import_link.default,
3423
3387
  {
3424
3388
  className: cn({
3425
3389
  "hover:bg-gray-100 flex items-center cursor-pointer rounded-md transition-colors duration-300 font-semibold whitespace-nowrap overflow-hidden": true,
@@ -3432,12 +3396,12 @@ var SidebarFooter = ({
3432
3396
  href: (item == null ? void 0 : item.href) || "#",
3433
3397
  passHref: true
3434
3398
  },
3435
- /* @__PURE__ */ import_react46.default.createElement(
3399
+ /* @__PURE__ */ import_react45.default.createElement(
3436
3400
  "div",
3437
3401
  {
3438
3402
  className: `flex items-center gap-2 whitespace-nowrap`
3439
3403
  },
3440
- /* @__PURE__ */ import_react46.default.createElement(
3404
+ /* @__PURE__ */ import_react45.default.createElement(
3441
3405
  "span",
3442
3406
  {
3443
3407
  className: dense ? "text-xs" : "text-text-sm"
@@ -3445,7 +3409,7 @@ var SidebarFooter = ({
3445
3409
  " ",
3446
3410
  item.icon
3447
3411
  ),
3448
- /* @__PURE__ */ import_react46.default.createElement("span", { className: cn(!collapsed ? "opacity-0" : "") }, item.label)
3412
+ /* @__PURE__ */ import_react45.default.createElement("span", { className: cn(!collapsed ? "opacity-0" : "") }, item.label)
3449
3413
  )
3450
3414
  ))))
3451
3415
  );
@@ -3460,7 +3424,7 @@ Sidebar.Footer = SidebarFooter;
3460
3424
  var Sidebar_default = Sidebar;
3461
3425
 
3462
3426
  // app/components/Skeleton.tsx
3463
- var import_react48 = __toESM(require("react"), 1);
3427
+ var import_react47 = __toESM(require("react"), 1);
3464
3428
  var Skeleton = ({
3465
3429
  width = "100%",
3466
3430
  height = "100%",
@@ -3473,7 +3437,7 @@ var Skeleton = ({
3473
3437
  borderRadius: circle ? "50%" : void 0,
3474
3438
  display: "block"
3475
3439
  };
3476
- return /* @__PURE__ */ import_react48.default.createElement(
3440
+ return /* @__PURE__ */ import_react47.default.createElement(
3477
3441
  "span",
3478
3442
  {
3479
3443
  className: cn(
@@ -3490,11 +3454,11 @@ var Skeleton = ({
3490
3454
  var Skeleton_default = Skeleton;
3491
3455
 
3492
3456
  // app/components/Slider.tsx
3493
- var import_react49 = __toESM(require("react"), 1);
3494
- var Slider = (0, import_react49.forwardRef)(
3457
+ var import_react48 = __toESM(require("react"), 1);
3458
+ var Slider = (0, import_react48.forwardRef)(
3495
3459
  ({ value, min = 0, max = 100, size = "sm", ...props }, ref) => {
3496
3460
  const progress = (value - min) / (max - min) * 100;
3497
- return /* @__PURE__ */ import_react49.default.createElement(import_react49.default.Fragment, null, /* @__PURE__ */ import_react49.default.createElement(
3461
+ return /* @__PURE__ */ import_react48.default.createElement(import_react48.default.Fragment, null, /* @__PURE__ */ import_react48.default.createElement(
3498
3462
  "input",
3499
3463
  {
3500
3464
  ref,
@@ -3518,10 +3482,10 @@ Slider.displayName = "Slider";
3518
3482
  var Slider_default = Slider;
3519
3483
 
3520
3484
  // app/components/SplitButton.tsx
3521
- var import_react50 = __toESM(require("react"), 1);
3522
- var SplitButton = (0, import_react50.forwardRef)(
3485
+ var import_react49 = __toESM(require("react"), 1);
3486
+ var SplitButton = (0, import_react49.forwardRef)(
3523
3487
  ({ children, className = "", size = "md", appearance = "primary", compact = false, ...props }, ref) => {
3524
- return /* @__PURE__ */ import_react50.default.createElement(
3488
+ return /* @__PURE__ */ import_react49.default.createElement(
3525
3489
  "div",
3526
3490
  {
3527
3491
  ref,
@@ -3536,8 +3500,8 @@ SplitButton.displayName = "SplitButton";
3536
3500
  var SplitButton_default = SplitButton;
3537
3501
 
3538
3502
  // app/components/Stepper.tsx
3539
- var import_react51 = __toESM(require("react"), 1);
3540
- var import_react52 = require("@remixicon/react");
3503
+ var import_react50 = __toESM(require("react"), 1);
3504
+ var import_react51 = require("@remixicon/react");
3541
3505
  var Stepper = ({
3542
3506
  stepsConfig,
3543
3507
  currentStep,
@@ -3547,19 +3511,19 @@ var Stepper = ({
3547
3511
  position = "horizontal"
3548
3512
  }) => {
3549
3513
  var _a, _b;
3550
- const stepRef = (0, import_react51.useRef)([]);
3514
+ const stepRef = (0, import_react50.useRef)([]);
3551
3515
  if (!stepsConfig.length) {
3552
3516
  return null;
3553
3517
  }
3554
3518
  const ActiveComponent = (_a = stepsConfig[currentStep - 1]) == null ? void 0 : _a.Component;
3555
- return /* @__PURE__ */ import_react51.default.createElement(
3519
+ return /* @__PURE__ */ import_react50.default.createElement(
3556
3520
  "div",
3557
3521
  {
3558
3522
  role: "region",
3559
3523
  "aria-label": "Step Progress",
3560
3524
  className: cn(position !== "horizontal" && "flex")
3561
3525
  },
3562
- /* @__PURE__ */ import_react51.default.createElement(
3526
+ /* @__PURE__ */ import_react50.default.createElement(
3563
3527
  "div",
3564
3528
  {
3565
3529
  className: cn(
@@ -3569,7 +3533,7 @@ var Stepper = ({
3569
3533
  role: "list",
3570
3534
  "aria-label": `Progress: ${currentStep} of ${stepsConfig.length} steps`
3571
3535
  },
3572
- stepsConfig == null ? void 0 : stepsConfig.map((step, index) => /* @__PURE__ */ import_react51.default.createElement(
3536
+ stepsConfig == null ? void 0 : stepsConfig.map((step, index) => /* @__PURE__ */ import_react50.default.createElement(
3573
3537
  "div",
3574
3538
  {
3575
3539
  key: index,
@@ -3584,7 +3548,7 @@ var Stepper = ({
3584
3548
  "aria-current": currentStep === index + 1 ? "step" : void 0,
3585
3549
  "aria-label": `${step.name}${step.helperName ? `, ${step.helperName}` : ""}, ${currentStep > index + 1 || isComplete ? "completed" : currentStep === index + 1 ? "current step" : "pending"}`
3586
3550
  },
3587
- /* @__PURE__ */ import_react51.default.createElement(
3551
+ /* @__PURE__ */ import_react50.default.createElement(
3588
3552
  "div",
3589
3553
  {
3590
3554
  className: cn(
@@ -3592,23 +3556,23 @@ var Stepper = ({
3592
3556
  position === "horizontal" ? "flex items-center" : "flex flex-col"
3593
3557
  )
3594
3558
  },
3595
- /* @__PURE__ */ import_react51.default.createElement(
3559
+ /* @__PURE__ */ import_react50.default.createElement(
3596
3560
  "div",
3597
3561
  {
3598
3562
  className: `w-[20px] h-[20px] rounded-full bg-gray-100 flex justify-center items-center ${currentStep === index + 1 ? "border border-primary-600" : "border border-gray-200"} ${currentStep > index + 1 || isComplete ? "bg-primary-600 border-none" : ""}`,
3599
3563
  role: "status",
3600
3564
  "aria-label": `Step ${index + 1} ${currentStep > index + 1 || isComplete ? "completed" : currentStep === index + 1 ? "current" : "pending"}`
3601
3565
  },
3602
- currentStep === index + 1 && !isComplete && /* @__PURE__ */ import_react51.default.createElement(
3566
+ currentStep === index + 1 && !isComplete && /* @__PURE__ */ import_react50.default.createElement(
3603
3567
  "span",
3604
3568
  {
3605
3569
  "aria-hidden": "true",
3606
3570
  className: "w-[10px] h-[10px] rounded-full bg-primary-600"
3607
3571
  }
3608
3572
  ),
3609
- (currentStep > index + 1 || isComplete) && /* @__PURE__ */ import_react51.default.createElement("span", { "aria-hidden": "true" }, /* @__PURE__ */ import_react51.default.createElement(import_react52.RiCheckLine, { size: 12, color: "#fff" }))
3573
+ (currentStep > index + 1 || isComplete) && /* @__PURE__ */ import_react50.default.createElement("span", { "aria-hidden": "true" }, /* @__PURE__ */ import_react50.default.createElement(import_react51.RiCheckLine, { size: 12, color: "#fff" }))
3610
3574
  ),
3611
- index !== stepsConfig.length - 1 && /* @__PURE__ */ import_react51.default.createElement(
3575
+ index !== stepsConfig.length - 1 && /* @__PURE__ */ import_react50.default.createElement(
3612
3576
  "div",
3613
3577
  {
3614
3578
  className: cn(
@@ -3617,7 +3581,7 @@ var Stepper = ({
3617
3581
  ),
3618
3582
  "aria-hidden": "true"
3619
3583
  },
3620
- /* @__PURE__ */ import_react51.default.createElement(
3584
+ /* @__PURE__ */ import_react50.default.createElement(
3621
3585
  "p",
3622
3586
  {
3623
3587
  className: cn(
@@ -3628,7 +3592,7 @@ var Stepper = ({
3628
3592
  )
3629
3593
  )
3630
3594
  ),
3631
- /* @__PURE__ */ import_react51.default.createElement(
3595
+ /* @__PURE__ */ import_react50.default.createElement(
3632
3596
  "div",
3633
3597
  {
3634
3598
  "aria-hidden": currentStep !== index + 1,
@@ -3637,7 +3601,7 @@ var Stepper = ({
3637
3601
  position === "vertical" || (step == null ? void 0 : step.helperName) ? "-mt-1" : ""
3638
3602
  )
3639
3603
  },
3640
- /* @__PURE__ */ import_react51.default.createElement(
3604
+ /* @__PURE__ */ import_react50.default.createElement(
3641
3605
  "span",
3642
3606
  {
3643
3607
  "aria-label": "Helper text",
@@ -3645,27 +3609,27 @@ var Stepper = ({
3645
3609
  },
3646
3610
  step == null ? void 0 : step.helperName
3647
3611
  ),
3648
- /* @__PURE__ */ import_react51.default.createElement("p", null, step == null ? void 0 : step.name)
3612
+ /* @__PURE__ */ import_react50.default.createElement("p", null, step == null ? void 0 : step.name)
3649
3613
  )
3650
3614
  ))
3651
3615
  ),
3652
- ActiveComponent && /* @__PURE__ */ import_react51.default.createElement(
3616
+ ActiveComponent && /* @__PURE__ */ import_react50.default.createElement(
3653
3617
  "div",
3654
3618
  {
3655
3619
  role: "tabpanel",
3656
3620
  "aria-label": `Current step: ${(_b = stepsConfig[currentStep - 1]) == null ? void 0 : _b.name}`,
3657
3621
  tabIndex: 0
3658
3622
  },
3659
- /* @__PURE__ */ import_react51.default.createElement(ActiveComponent, null)
3623
+ /* @__PURE__ */ import_react50.default.createElement(ActiveComponent, null)
3660
3624
  )
3661
3625
  );
3662
3626
  };
3663
3627
  var Stepper_default = Stepper;
3664
3628
 
3665
3629
  // app/components/TableComponents.tsx
3666
- var import_react53 = __toESM(require("react"), 1);
3630
+ var import_react52 = __toESM(require("react"), 1);
3667
3631
  var Table = ({ children, className, dense, ...props }) => {
3668
- return /* @__PURE__ */ import_react53.default.createElement(
3632
+ return /* @__PURE__ */ import_react52.default.createElement(
3669
3633
  "table",
3670
3634
  {
3671
3635
  ...props,
@@ -3683,7 +3647,7 @@ var TableHead = ({
3683
3647
  className,
3684
3648
  ...props
3685
3649
  }) => {
3686
- return /* @__PURE__ */ import_react53.default.createElement(
3650
+ return /* @__PURE__ */ import_react52.default.createElement(
3687
3651
  "thead",
3688
3652
  {
3689
3653
  ...props,
@@ -3697,7 +3661,7 @@ var TableBody = ({
3697
3661
  className,
3698
3662
  ...props
3699
3663
  }) => {
3700
- return /* @__PURE__ */ import_react53.default.createElement("tbody", { ...props, className: cn(className) }, children);
3664
+ return /* @__PURE__ */ import_react52.default.createElement("tbody", { ...props, className: cn(className) }, children);
3701
3665
  };
3702
3666
  var TableRow = ({
3703
3667
  children,
@@ -3705,7 +3669,7 @@ var TableRow = ({
3705
3669
  indent,
3706
3670
  ...props
3707
3671
  }) => {
3708
- return /* @__PURE__ */ import_react53.default.createElement(
3672
+ return /* @__PURE__ */ import_react52.default.createElement(
3709
3673
  "tr",
3710
3674
  {
3711
3675
  ...props,
@@ -3729,7 +3693,7 @@ var TableHeadCell = ({
3729
3693
  right,
3730
3694
  ...props
3731
3695
  }) => {
3732
- return /* @__PURE__ */ import_react53.default.createElement(
3696
+ return /* @__PURE__ */ import_react52.default.createElement(
3733
3697
  "th",
3734
3698
  {
3735
3699
  ...props,
@@ -3747,7 +3711,7 @@ var TableHeadCell = ({
3747
3711
  right
3748
3712
  }
3749
3713
  },
3750
- /* @__PURE__ */ import_react53.default.createElement("div", { className: "flex items-center gap-1" }, /* @__PURE__ */ import_react53.default.createElement("span", { className: "font-medium text-xs" }, children), icon && /* @__PURE__ */ import_react53.default.createElement(
3714
+ /* @__PURE__ */ import_react52.default.createElement("div", { className: "flex items-center gap-1" }, /* @__PURE__ */ import_react52.default.createElement("span", { className: "font-medium text-xs" }, children), icon && /* @__PURE__ */ import_react52.default.createElement(
3751
3715
  "span",
3752
3716
  {
3753
3717
  className: "hover:bg-gray-200 w-5 h-5 flex items-center justify-center p-1 rounded focus:bg-gray-300 active:bg-gray-300"
@@ -3767,7 +3731,7 @@ var TableDataCell = ({
3767
3731
  right,
3768
3732
  ...props
3769
3733
  }) => {
3770
- return /* @__PURE__ */ import_react53.default.createElement(
3734
+ return /* @__PURE__ */ import_react52.default.createElement(
3771
3735
  "td",
3772
3736
  {
3773
3737
  ...props,
@@ -3785,8 +3749,8 @@ var TableDataCell = ({
3785
3749
  right
3786
3750
  }
3787
3751
  },
3788
- /* @__PURE__ */ import_react53.default.createElement("span", { className: "font-medium text-sm" }, children),
3789
- icon && /* @__PURE__ */ import_react53.default.createElement(
3752
+ /* @__PURE__ */ import_react52.default.createElement("span", { className: "font-medium text-sm" }, children),
3753
+ icon && /* @__PURE__ */ import_react52.default.createElement(
3790
3754
  "span",
3791
3755
  {
3792
3756
  className: "hover:bg-gray-200 w-5 h-5 flex items-center justify-center p-1 rounded focus:bg-gray-300 active:bg-gray-300"
@@ -3798,13 +3762,13 @@ var TableDataCell = ({
3798
3762
  var TableComponents_default = Table;
3799
3763
 
3800
3764
  // app/components/Tabs.tsx
3801
- var import_react54 = __toESM(require("react"), 1);
3765
+ var import_react53 = __toESM(require("react"), 1);
3802
3766
  var TabsContainer = ({
3803
3767
  children,
3804
3768
  className,
3805
3769
  position = "horizontal"
3806
3770
  }) => {
3807
- return /* @__PURE__ */ import_react54.default.createElement("div", { className: cn(position === "vertical" ? "flex" : "block", className) }, children);
3771
+ return /* @__PURE__ */ import_react53.default.createElement("div", { className: cn(position === "vertical" ? "flex" : "block", className) }, children);
3808
3772
  };
3809
3773
  var TabList = ({
3810
3774
  onChange,
@@ -3815,11 +3779,11 @@ var TabList = ({
3815
3779
  className,
3816
3780
  position = "horizontal"
3817
3781
  }) => {
3818
- const [focusIndex, setFocusIndex] = import_react54.default.useState(0);
3819
- const tabRefs = import_react54.default.useRef([]);
3782
+ const [focusIndex, setFocusIndex] = import_react53.default.useState(0);
3783
+ const tabRefs = import_react53.default.useRef([]);
3820
3784
  const handleKeyDown = (e, index) => {
3821
3785
  var _a, _b, _c, _d, _e, _f;
3822
- const tabCount = import_react54.default.Children.count(children);
3786
+ const tabCount = import_react53.default.Children.count(children);
3823
3787
  switch (e.key) {
3824
3788
  case "ArrowRight":
3825
3789
  if (position === "horizontal") {
@@ -3866,7 +3830,7 @@ var TabList = ({
3866
3830
  break;
3867
3831
  }
3868
3832
  };
3869
- return /* @__PURE__ */ import_react54.default.createElement(
3833
+ return /* @__PURE__ */ import_react53.default.createElement(
3870
3834
  "div",
3871
3835
  {
3872
3836
  className: cn(
@@ -3878,8 +3842,8 @@ var TabList = ({
3878
3842
  "aria-label": ariaLabel,
3879
3843
  "aria-orientation": position
3880
3844
  },
3881
- import_react54.default.Children.map(children, (child, index) => {
3882
- if (import_react54.default.isValidElement(child)) {
3845
+ import_react53.default.Children.map(children, (child, index) => {
3846
+ if (import_react53.default.isValidElement(child)) {
3883
3847
  const childProps = {
3884
3848
  onChange,
3885
3849
  box,
@@ -3889,7 +3853,7 @@ var TabList = ({
3889
3853
  onKeyDown: (e) => handleKeyDown(e, index),
3890
3854
  tabIndex: index === focusIndex ? 0 : -1
3891
3855
  };
3892
- return import_react54.default.cloneElement(child, {
3856
+ return import_react53.default.cloneElement(child, {
3893
3857
  ...childProps,
3894
3858
  ref: (el) => {
3895
3859
  tabRefs.current[index] = el;
@@ -3908,7 +3872,7 @@ var TabList = ({
3908
3872
  })
3909
3873
  );
3910
3874
  };
3911
- var Tab = import_react54.default.forwardRef(
3875
+ var Tab = import_react53.default.forwardRef(
3912
3876
  ({
3913
3877
  label,
3914
3878
  value,
@@ -3924,7 +3888,7 @@ var Tab = import_react54.default.forwardRef(
3924
3888
  position = "horizontal"
3925
3889
  }, ref) => {
3926
3890
  const isSelected = value === selectedTabValue;
3927
- return /* @__PURE__ */ import_react54.default.createElement(
3891
+ return /* @__PURE__ */ import_react53.default.createElement(
3928
3892
  "button",
3929
3893
  {
3930
3894
  ref,
@@ -3965,9 +3929,9 @@ var Tab = import_react54.default.forwardRef(
3965
3929
  ),
3966
3930
  onClick: () => onChange(value)
3967
3931
  },
3968
- icon && /* @__PURE__ */ import_react54.default.createElement("span", { "aria-hidden": "true" }, icon),
3932
+ icon && /* @__PURE__ */ import_react53.default.createElement("span", { "aria-hidden": "true" }, icon),
3969
3933
  label,
3970
- content && /* @__PURE__ */ import_react54.default.createElement("span", { "aria-hidden": "true" }, content)
3934
+ content && /* @__PURE__ */ import_react53.default.createElement("span", { "aria-hidden": "true" }, content)
3971
3935
  );
3972
3936
  }
3973
3937
  );
@@ -3977,7 +3941,7 @@ var TabPanel = ({
3977
3941
  children,
3978
3942
  className
3979
3943
  }) => {
3980
- return value === currentValue ? /* @__PURE__ */ import_react54.default.createElement(
3944
+ return value === currentValue ? /* @__PURE__ */ import_react53.default.createElement(
3981
3945
  "div",
3982
3946
  {
3983
3947
  role: "tabpanel",
@@ -3993,8 +3957,8 @@ var Tabs_default = TabsContainer;
3993
3957
  Tab.displayName = "Tab";
3994
3958
 
3995
3959
  // app/components/Textarea.tsx
3996
- var import_react55 = __toESM(require("react"), 1);
3997
- var Textarea = (0, import_react55.forwardRef)(
3960
+ var import_react54 = __toESM(require("react"), 1);
3961
+ var Textarea = (0, import_react54.forwardRef)(
3998
3962
  ({
3999
3963
  size,
4000
3964
  className,
@@ -4006,7 +3970,7 @@ var Textarea = (0, import_react55.forwardRef)(
4006
3970
  id,
4007
3971
  ...props
4008
3972
  }, ref) => {
4009
- return /* @__PURE__ */ import_react55.default.createElement(
3973
+ return /* @__PURE__ */ import_react54.default.createElement(
4010
3974
  "textarea",
4011
3975
  {
4012
3976
  ...props,
@@ -4030,8 +3994,8 @@ Textarea.displayName = "Textarea";
4030
3994
  var Textarea_default = Textarea;
4031
3995
 
4032
3996
  // app/components/TextInputWithLabel.tsx
4033
- var import_react56 = require("@remixicon/react");
4034
- var import_react57 = __toESM(require("react"), 1);
3997
+ var import_react55 = require("@remixicon/react");
3998
+ var import_react56 = __toESM(require("react"), 1);
4035
3999
  var TextInputWithLabel = ({
4036
4000
  intent = "primary",
4037
4001
  placeholder = "Enter tags",
@@ -4063,7 +4027,7 @@ var TextInputWithLabel = ({
4063
4027
  const pasteData = e.clipboardData.getData("text");
4064
4028
  handleAddTags(pasteData);
4065
4029
  };
4066
- return /* @__PURE__ */ import_react57.default.createElement("div", null, /* @__PURE__ */ import_react57.default.createElement(
4030
+ return /* @__PURE__ */ import_react56.default.createElement("div", null, /* @__PURE__ */ import_react56.default.createElement(
4067
4031
  Input_default,
4068
4032
  {
4069
4033
  type,
@@ -4074,14 +4038,14 @@ var TextInputWithLabel = ({
4074
4038
  className: "w-full",
4075
4039
  ...props
4076
4040
  }
4077
- ), /* @__PURE__ */ import_react57.default.createElement("div", { className: "flex flex-wrap items-center gap-2 mt-2 transition-all duration-300" }, tags == null ? void 0 : tags.map((tag, idx) => /* @__PURE__ */ import_react57.default.createElement(
4041
+ ), /* @__PURE__ */ import_react56.default.createElement("div", { className: "flex flex-wrap items-center gap-2 mt-2 transition-all duration-300" }, tags == null ? void 0 : tags.map((tag, idx) => /* @__PURE__ */ import_react56.default.createElement(
4078
4042
  Chip_default,
4079
4043
  {
4080
4044
  size: "md",
4081
4045
  intent,
4082
4046
  key: `${tag}-${idx}`,
4083
- endIcon: /* @__PURE__ */ import_react57.default.createElement(
4084
- import_react56.RiCloseCircleLine,
4047
+ endIcon: /* @__PURE__ */ import_react56.default.createElement(
4048
+ import_react55.RiCloseCircleLine,
4085
4049
  {
4086
4050
  size: 14,
4087
4051
  className: "cursor-pointer hover:text-red-500",
@@ -4096,7 +4060,7 @@ var TextInputWithLabel_default = TextInputWithLabel;
4096
4060
 
4097
4061
  // app/components/Toggle.tsx
4098
4062
  var import_class_variance_authority8 = require("class-variance-authority");
4099
- var import_react58 = __toESM(require("react"), 1);
4063
+ var import_react57 = __toESM(require("react"), 1);
4100
4064
  var toggleVariants = (0, import_class_variance_authority8.cva)("", {
4101
4065
  variants: {
4102
4066
  size: {
@@ -4114,9 +4078,9 @@ var toggleVariants = (0, import_class_variance_authority8.cva)("", {
4114
4078
  intent: "primary"
4115
4079
  }
4116
4080
  });
4117
- var Toggle = (0, import_react58.forwardRef)(
4081
+ var Toggle = (0, import_react57.forwardRef)(
4118
4082
  ({ size, className, intent, disabled, children, id, ...props }, ref) => {
4119
- return /* @__PURE__ */ import_react58.default.createElement(
4083
+ return /* @__PURE__ */ import_react57.default.createElement(
4120
4084
  "label",
4121
4085
  {
4122
4086
  className: cn(
@@ -4125,7 +4089,7 @@ var Toggle = (0, import_react58.forwardRef)(
4125
4089
  ),
4126
4090
  htmlFor: id
4127
4091
  },
4128
- /* @__PURE__ */ import_react58.default.createElement(
4092
+ /* @__PURE__ */ import_react57.default.createElement(
4129
4093
  "input",
4130
4094
  {
4131
4095
  type: "checkbox",
@@ -4138,7 +4102,7 @@ var Toggle = (0, import_react58.forwardRef)(
4138
4102
  className: "sr-only peer"
4139
4103
  }
4140
4104
  ),
4141
- /* @__PURE__ */ import_react58.default.createElement(
4105
+ /* @__PURE__ */ import_react57.default.createElement(
4142
4106
  "span",
4143
4107
  {
4144
4108
  className: cn(
@@ -4161,7 +4125,7 @@ var Toggle_default = Toggle;
4161
4125
 
4162
4126
  // app/components/Tooltip.tsx
4163
4127
  var import_class_variance_authority9 = require("class-variance-authority");
4164
- var import_react59 = __toESM(require("react"), 1);
4128
+ var import_react58 = __toESM(require("react"), 1);
4165
4129
  var tooltipVariants = (0, import_class_variance_authority9.cva)(
4166
4130
  "bg-white shadow-lg rounded-lg absolute hidden group-hover:block p-3 z-10 max-w-[328px] w-max whitespace-normal opacity-0 group-hover:opacity-100 transform transition-all duration-1000 ease-in-out group-hover:delay-[2000ms]",
4167
4131
  {
@@ -4195,13 +4159,13 @@ var Tooltip = ({
4195
4159
  className,
4196
4160
  ...props
4197
4161
  }) => {
4198
- return /* @__PURE__ */ import_react59.default.createElement("div", { ...props, className: "relative cursor-pointer text-sm group w-fit" }, /* @__PURE__ */ import_react59.default.createElement("div", null, children), /* @__PURE__ */ import_react59.default.createElement("div", { className: cn(tooltipVariants({ position }), className) }, content, /* @__PURE__ */ import_react59.default.createElement("div", { className: cn(arrowVariants({ position })) })));
4162
+ return /* @__PURE__ */ import_react58.default.createElement("div", { ...props, className: "relative cursor-pointer text-sm group w-fit" }, /* @__PURE__ */ import_react58.default.createElement("div", null, children), /* @__PURE__ */ import_react58.default.createElement("div", { className: cn(tooltipVariants({ position }), className) }, content, /* @__PURE__ */ import_react58.default.createElement("div", { className: cn(arrowVariants({ position })) })));
4199
4163
  };
4200
4164
  var Tooltip_default = Tooltip;
4201
4165
 
4202
4166
  // app/components/TreeView.tsx
4203
- var import_react60 = __toESM(require("react"), 1);
4204
- var import_react61 = require("@remixicon/react");
4167
+ var import_react59 = __toESM(require("react"), 1);
4168
+ var import_react60 = require("@remixicon/react");
4205
4169
  var TreeView = ({
4206
4170
  children,
4207
4171
  "aria-label": ariaLabel,
@@ -4213,16 +4177,16 @@ var TreeView = ({
4213
4177
  allowMultiple = true,
4214
4178
  expandTopLevelByDefault = false
4215
4179
  }) => {
4216
- const topLevelIds = import_react60.default.Children.toArray(children).map(
4217
- (child) => import_react60.default.isValidElement(child) ? child.props.id : null
4180
+ const topLevelIds = import_react59.default.Children.toArray(children).map(
4181
+ (child) => import_react59.default.isValidElement(child) ? child.props.id : null
4218
4182
  ).filter(Boolean);
4219
- const [internalExpanded, setInternalExpanded] = (0, import_react60.useState)(
4183
+ const [internalExpanded, setInternalExpanded] = (0, import_react59.useState)(
4220
4184
  () => new Set(
4221
4185
  defaultExpandedIds.length ? defaultExpandedIds : expandTopLevelByDefault ? topLevelIds : []
4222
4186
  )
4223
4187
  );
4224
4188
  const expandedNodes = expandedIds ? new Set(expandedIds) : internalExpanded;
4225
- const [selectedId, setSelectedId] = (0, import_react60.useState)(null);
4189
+ const [selectedId, setSelectedId] = (0, import_react59.useState)(null);
4226
4190
  const toggleNode = (id) => {
4227
4191
  const updateSet = (set) => {
4228
4192
  const next = new Set(set);
@@ -4242,9 +4206,9 @@ var TreeView = ({
4242
4206
  }
4243
4207
  };
4244
4208
  const handleSelect = (id) => setSelectedId(id);
4245
- const enhanceChildren = (nodes, level = 0) => import_react60.default.Children.map(nodes, (child) => {
4246
- if (import_react60.default.isValidElement(child)) {
4247
- return import_react60.default.cloneElement(child, {
4209
+ const enhanceChildren = (nodes, level = 0) => import_react59.default.Children.map(nodes, (child) => {
4210
+ if (import_react59.default.isValidElement(child)) {
4211
+ return import_react59.default.cloneElement(child, {
4248
4212
  level,
4249
4213
  expanded: expandedNodes.has(child.props.id),
4250
4214
  onToggle: toggleNode,
@@ -4256,7 +4220,7 @@ var TreeView = ({
4256
4220
  }
4257
4221
  return child;
4258
4222
  });
4259
- return /* @__PURE__ */ import_react60.default.createElement(
4223
+ return /* @__PURE__ */ import_react59.default.createElement(
4260
4224
  "ul",
4261
4225
  {
4262
4226
  role: "tree",
@@ -4266,7 +4230,7 @@ var TreeView = ({
4266
4230
  enhanceChildren(children)
4267
4231
  );
4268
4232
  };
4269
- var DefaultExpandIcon = ({ expanded }) => /* @__PURE__ */ import_react60.default.createElement("span", { className: "transition-transform duration-200" }, expanded ? /* @__PURE__ */ import_react60.default.createElement(import_react61.RiArrowDownSFill, { size: 18 }) : /* @__PURE__ */ import_react60.default.createElement(import_react61.RiArrowRightSFill, { size: 18 }));
4233
+ var DefaultExpandIcon = ({ expanded }) => /* @__PURE__ */ import_react59.default.createElement("span", { className: "transition-transform duration-200" }, expanded ? /* @__PURE__ */ import_react59.default.createElement(import_react60.RiArrowDownSFill, { size: 18 }) : /* @__PURE__ */ import_react59.default.createElement(import_react60.RiArrowRightSFill, { size: 18 }));
4270
4234
  var TreeViewItem = ({
4271
4235
  id,
4272
4236
  children,
@@ -4283,8 +4247,8 @@ var TreeViewItem = ({
4283
4247
  const trailing = [];
4284
4248
  const content = [];
4285
4249
  let subTree = null;
4286
- import_react60.default.Children.forEach(children, (child) => {
4287
- if (import_react60.default.isValidElement(child)) {
4250
+ import_react59.default.Children.forEach(children, (child) => {
4251
+ if (import_react59.default.isValidElement(child)) {
4288
4252
  if (child.type === TreeViewLeadingVisual)
4289
4253
  leading.push(child);
4290
4254
  else if (child.type === TreeViewTrailingVisual)
@@ -4325,8 +4289,8 @@ var TreeViewItem = ({
4325
4289
  break;
4326
4290
  }
4327
4291
  };
4328
- const processedSubTree = subTree && import_react60.default.isValidElement(subTree) ? import_react60.default.cloneElement(subTree, { expanded, flat }) : null;
4329
- return /* @__PURE__ */ import_react60.default.createElement(import_react60.default.Fragment, null, /* @__PURE__ */ import_react60.default.createElement(
4292
+ const processedSubTree = subTree && import_react59.default.isValidElement(subTree) ? import_react59.default.cloneElement(subTree, { expanded, flat }) : null;
4293
+ return /* @__PURE__ */ import_react59.default.createElement(import_react59.default.Fragment, null, /* @__PURE__ */ import_react59.default.createElement(
4330
4294
  "li",
4331
4295
  {
4332
4296
  role: "treeitem",
@@ -4344,8 +4308,8 @@ var TreeViewItem = ({
4344
4308
  onKeyDown: handleKeyDown,
4345
4309
  tabIndex: 0
4346
4310
  },
4347
- /* @__PURE__ */ import_react60.default.createElement("span", { className: "flex items-center gap-1" }, !leading.length && hasSubTree && !flat && /* @__PURE__ */ import_react60.default.createElement(DefaultExpandIcon, { expanded }), leading),
4348
- /* @__PURE__ */ import_react60.default.createElement("span", { className: "flex-1" }, content),
4311
+ /* @__PURE__ */ import_react59.default.createElement("span", { className: "flex items-center gap-1" }, !leading.length && hasSubTree && !flat && /* @__PURE__ */ import_react59.default.createElement(DefaultExpandIcon, { expanded }), leading),
4312
+ /* @__PURE__ */ import_react59.default.createElement("span", { className: "flex-1" }, content),
4349
4313
  trailing
4350
4314
  ), processedSubTree);
4351
4315
  };
@@ -4360,9 +4324,9 @@ var TreeViewSubTree = ({
4360
4324
  if (flat)
4361
4325
  return null;
4362
4326
  if (state === "loading") {
4363
- return /* @__PURE__ */ import_react60.default.createElement("ul", { role: "group", className: cn("list-none m-0", className) }, /* @__PURE__ */ import_react60.default.createElement("li", { className: "text-gray-500 italic p-1 pl-6" }, "Loading", count ? ` ${count} items...` : "..."));
4327
+ return /* @__PURE__ */ import_react59.default.createElement("ul", { role: "group", className: cn("list-none m-0", className) }, /* @__PURE__ */ import_react59.default.createElement("li", { className: "text-gray-500 italic p-1 pl-6" }, "Loading", count ? ` ${count} items...` : "..."));
4364
4328
  }
4365
- return /* @__PURE__ */ import_react60.default.createElement(
4329
+ return /* @__PURE__ */ import_react59.default.createElement(
4366
4330
  "ul",
4367
4331
  {
4368
4332
  role: "group",
@@ -4375,8 +4339,8 @@ var TreeViewSubTree = ({
4375
4339
  children
4376
4340
  );
4377
4341
  };
4378
- var TreeViewLeadingVisual = ({ children, className }) => /* @__PURE__ */ import_react60.default.createElement("span", { className: cn("flex items-center flex-shrink-0", className) }, children);
4379
- var TreeViewTrailingVisual = ({ children, label, className }) => /* @__PURE__ */ import_react60.default.createElement(
4342
+ var TreeViewLeadingVisual = ({ children, className }) => /* @__PURE__ */ import_react59.default.createElement("span", { className: cn("flex items-center flex-shrink-0", className) }, children);
4343
+ var TreeViewTrailingVisual = ({ children, label, className }) => /* @__PURE__ */ import_react59.default.createElement(
4380
4344
  "span",
4381
4345
  {
4382
4346
  className: cn("flex items-center ml-auto flex-shrink-0", className),
@@ -4392,7 +4356,7 @@ var TreeView_default = TreeView;
4392
4356
 
4393
4357
  // app/components/Typography.tsx
4394
4358
  var import_class_variance_authority10 = require("class-variance-authority");
4395
- var import_react62 = __toESM(require("react"), 1);
4359
+ var import_react61 = __toESM(require("react"), 1);
4396
4360
  var typographyVariant = (0, import_class_variance_authority10.cva)("text-dark", {
4397
4361
  variants: {
4398
4362
  variant: {
@@ -4430,7 +4394,7 @@ var Typography = ({
4430
4394
  ...props
4431
4395
  }) => {
4432
4396
  const Component = as || ((variant == null ? void 0 : variant.startsWith("b")) ? "p" : variant);
4433
- return /* @__PURE__ */ import_react62.default.createElement(
4397
+ return /* @__PURE__ */ import_react61.default.createElement(
4434
4398
  Component,
4435
4399
  {
4436
4400
  className: cn(typographyVariant({ variant, intent, className })),
@@ -4479,9 +4443,9 @@ var Typography_default = Typography;
4479
4443
  FileUploadPreview,
4480
4444
  GlobalNavigation,
4481
4445
  HelperText,
4446
+ ImageUploadControlled,
4482
4447
  Input,
4483
4448
  Label,
4484
- ListItem,
4485
4449
  ListPagination,
4486
4450
  Loading,
4487
4451
  Modal,
@@ -4490,7 +4454,6 @@ var Typography_default = Typography;
4490
4454
  Pagination,
4491
4455
  ProgressBar,
4492
4456
  Radio,
4493
- RazorPayFileUpload,
4494
4457
  Sidebar,
4495
4458
  Skeleton,
4496
4459
  Slider,