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 +267 -304
- package/dist/index.cjs.map +1 -1
- package/dist/index.css +3 -4
- package/dist/index.css.map +1 -1
- package/dist/index.d.cts +8 -30
- package/dist/index.d.ts +8 -30
- package/dist/index.js +303 -339
- package/dist/index.js.map +1 -1
- package/package.json +21 -21
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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
|
|
2303
|
-
var
|
|
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,
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
2290
|
+
) : /* @__PURE__ */ import_react30.default.createElement(PageBtn, { key: i, i, page, onPageChange })
|
|
2334
2291
|
);
|
|
2335
2292
|
};
|
|
2336
|
-
return /* @__PURE__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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
|
|
2343
|
+
var import_react32 = __toESM(require("react"), 1);
|
|
2387
2344
|
var Loading = ({ width, height, loaderColor, variant }) => {
|
|
2388
|
-
return /* @__PURE__ */
|
|
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
|
|
2408
|
-
var
|
|
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,
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
2449
|
-
closeModal && /* @__PURE__ */
|
|
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__ */
|
|
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
|
|
2464
|
-
var
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
2523
|
-
)) : /* @__PURE__ */
|
|
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__ */
|
|
2530
|
-
), /* @__PURE__ */
|
|
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
|
|
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,
|
|
2543
|
-
const inputsRef = (0,
|
|
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__ */
|
|
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
|
|
2604
|
-
var
|
|
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,
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
2651
|
-
), showOptions && /* @__PURE__ */
|
|
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__ */
|
|
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__ */
|
|
2668
|
-
), /* @__PURE__ */
|
|
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__ */
|
|
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__ */
|
|
2635
|
+
), /* @__PURE__ */ import_react38.default.createElement(
|
|
2679
2636
|
Button_default,
|
|
2680
2637
|
{
|
|
2681
2638
|
variant: "outlined",
|
|
2682
2639
|
intent: "default-outlined",
|
|
2683
|
-
startIcon: /* @__PURE__ */
|
|
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__ */
|
|
2689
|
-
|
|
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__ */
|
|
2699
|
-
|
|
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
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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
|
|
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,
|
|
2742
|
+
var Radio = (0, import_react41.forwardRef)(
|
|
2786
2743
|
({ size, disabled, checked, className, children, id, name, ...props }, ref) => {
|
|
2787
|
-
return /* @__PURE__ */
|
|
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__ */
|
|
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
|
|
2821
|
-
var
|
|
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
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
2855
|
+
return /* @__PURE__ */ import_react43.default.createElement(import_react44.RiFilePdf2Line, { className: "w-6 h-6 text-white" });
|
|
2900
2856
|
}
|
|
2901
|
-
return /* @__PURE__ */
|
|
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,
|
|
2923
|
-
const [isDragging, setIsDragging] = (0,
|
|
2924
|
-
const localPreviews = (0,
|
|
2925
|
-
const uploadProgress = (0,
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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 =
|
|
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
|
-
|
|
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, {
|
|
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, {
|
|
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
|
-
|
|
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
|
-
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
3137
|
-
), /* @__PURE__ */
|
|
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__ */
|
|
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__ */
|
|
3151
|
-
|
|
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__ */
|
|
3159
|
-
/* @__PURE__ */
|
|
3160
|
-
|
|
3161
|
-
|
|
3162
|
-
|
|
3163
|
-
|
|
3164
|
-
|
|
3165
|
-
|
|
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__ */
|
|
3180
|
-
), (item == null ? void 0 : item.status) === "error" && /* @__PURE__ */
|
|
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__ */
|
|
3154
|
+
/* @__PURE__ */ import_react43.default.createElement(import_react44.RiRefreshLine, { size: 16 }),
|
|
3191
3155
|
"Try Again"
|
|
3192
|
-
)), /* @__PURE__ */
|
|
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__ */
|
|
3203
|
-
))), /* @__PURE__ */
|
|
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__ */
|
|
3212
|
-
)))), /* @__PURE__ */
|
|
3213
|
-
|
|
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__ */
|
|
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
|
|
3225
|
-
var
|
|
3226
|
-
var
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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,
|
|
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
|
-
|
|
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__ */
|
|
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__ */
|
|
3281
|
-
|
|
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__ */
|
|
3302
|
-
collapsed && hasSubItems && /* @__PURE__ */
|
|
3303
|
-
|
|
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__ */
|
|
3309
|
-
|
|
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__ */
|
|
3316
|
-
|
|
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__ */
|
|
3328
|
-
/* @__PURE__ */
|
|
3329
|
-
), hasSubItems && isOpen && /* @__PURE__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
3392
|
-
navItems && navItems.length > 0 && /* @__PURE__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
3422
|
-
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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
|
|
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__ */
|
|
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
|
|
3494
|
-
var Slider = (0,
|
|
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__ */
|
|
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
|
|
3522
|
-
var SplitButton = (0,
|
|
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__ */
|
|
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
|
|
3540
|
-
var
|
|
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,
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
3612
|
+
/* @__PURE__ */ import_react50.default.createElement("p", null, step == null ? void 0 : step.name)
|
|
3649
3613
|
)
|
|
3650
3614
|
))
|
|
3651
3615
|
),
|
|
3652
|
-
ActiveComponent && /* @__PURE__ */
|
|
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__ */
|
|
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
|
|
3630
|
+
var import_react52 = __toESM(require("react"), 1);
|
|
3667
3631
|
var Table = ({ children, className, dense, ...props }) => {
|
|
3668
|
-
return /* @__PURE__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
3789
|
-
icon && /* @__PURE__ */
|
|
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
|
|
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__ */
|
|
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] =
|
|
3819
|
-
const tabRefs =
|
|
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 =
|
|
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__ */
|
|
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
|
-
|
|
3882
|
-
if (
|
|
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
|
|
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 =
|
|
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__ */
|
|
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__ */
|
|
3932
|
+
icon && /* @__PURE__ */ import_react53.default.createElement("span", { "aria-hidden": "true" }, icon),
|
|
3969
3933
|
label,
|
|
3970
|
-
content && /* @__PURE__ */
|
|
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__ */
|
|
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
|
|
3997
|
-
var Textarea = (0,
|
|
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__ */
|
|
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
|
|
4034
|
-
var
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
4084
|
-
|
|
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
|
|
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,
|
|
4081
|
+
var Toggle = (0, import_react57.forwardRef)(
|
|
4118
4082
|
({ size, className, intent, disabled, children, id, ...props }, ref) => {
|
|
4119
|
-
return /* @__PURE__ */
|
|
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__ */
|
|
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__ */
|
|
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
|
|
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__ */
|
|
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
|
|
4204
|
-
var
|
|
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 =
|
|
4217
|
-
(child) =>
|
|
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,
|
|
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,
|
|
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) =>
|
|
4246
|
-
if (
|
|
4247
|
-
return
|
|
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__ */
|
|
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__ */
|
|
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
|
-
|
|
4287
|
-
if (
|
|
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 &&
|
|
4329
|
-
return /* @__PURE__ */
|
|
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__ */
|
|
4348
|
-
/* @__PURE__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
4379
|
-
var TreeViewTrailingVisual = ({ children, label, className }) => /* @__PURE__ */
|
|
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
|
|
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__ */
|
|
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,
|