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.js CHANGED
@@ -1,5 +1,5 @@
1
1
  // app/components/Accordion.tsx
2
- import React2, { useState, useEffect } from "react";
2
+ import React, { useState, useEffect } from "react";
3
3
  import { RiArrowDownSLine } from "@remixicon/react";
4
4
 
5
5
  // app/utils/utils.tsx
@@ -17,10 +17,10 @@ function Accordion({
17
17
  }) {
18
18
  const [openItems, setOpenItems] = useState(() => {
19
19
  const defaultOpen = [];
20
- React2.Children.forEach(children, (child) => {
21
- if (React2.isValidElement(child)) {
22
- const triggerChild = React2.Children.toArray(child.props.children)[0];
23
- if (React2.isValidElement(triggerChild) && triggerChild.props.defaultOpen) {
20
+ React.Children.forEach(children, (child) => {
21
+ if (React.isValidElement(child)) {
22
+ const triggerChild = React.Children.toArray(child.props.children)[0];
23
+ if (React.isValidElement(triggerChild) && triggerChild.props.defaultOpen) {
24
24
  defaultOpen.push(child.props.value);
25
25
  }
26
26
  }
@@ -31,8 +31,8 @@ function Accordion({
31
31
  if (expanded !== void 0) {
32
32
  if (expanded) {
33
33
  const allValues = [];
34
- React2.Children.forEach(children, (child) => {
35
- if (React2.isValidElement(child)) {
34
+ React.Children.forEach(children, (child) => {
35
+ if (React.isValidElement(child)) {
36
36
  allValues.push(child.props.value);
37
37
  }
38
38
  });
@@ -53,9 +53,9 @@ function Accordion({
53
53
  );
54
54
  }
55
55
  };
56
- return /* @__PURE__ */ React2.createElement("div", { className, role: "region", "aria-label": "Accordion" }, React2.Children.map(children, (child) => {
57
- if (React2.isValidElement(child)) {
58
- return React2.cloneElement(
56
+ return /* @__PURE__ */ React.createElement("div", { className, role: "region", "aria-label": "Accordion" }, React.Children.map(children, (child) => {
57
+ if (React.isValidElement(child)) {
58
+ return React.cloneElement(
59
59
  child,
60
60
  {
61
61
  openItems,
@@ -82,7 +82,7 @@ function AccordionItem({
82
82
  handleToggle(value);
83
83
  }
84
84
  };
85
- return /* @__PURE__ */ React2.createElement(
85
+ return /* @__PURE__ */ React.createElement(
86
86
  "div",
87
87
  {
88
88
  className: cn(
@@ -92,7 +92,7 @@ function AccordionItem({
92
92
  className
93
93
  )
94
94
  },
95
- children && Array.isArray(children) ? /* @__PURE__ */ React2.createElement(React2.Fragment, null, /* @__PURE__ */ React2.createElement(
95
+ children && Array.isArray(children) ? /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(
96
96
  "div",
97
97
  {
98
98
  onClick: toggle,
@@ -110,8 +110,8 @@ function AccordionItem({
110
110
  id: headerId,
111
111
  className: "cursor-pointer"
112
112
  },
113
- React2.cloneElement(children[0], { isOpen })
114
- ), /* @__PURE__ */ React2.createElement(
113
+ React.cloneElement(children[0], { isOpen })
114
+ ), /* @__PURE__ */ React.createElement(
115
115
  "div",
116
116
  {
117
117
  id: contentId,
@@ -123,7 +123,7 @@ function AccordionItem({
123
123
  ),
124
124
  onClick: (e) => e.stopPropagation()
125
125
  },
126
- /* @__PURE__ */ React2.createElement("div", { className: "p-3.5" }, children[1])
126
+ /* @__PURE__ */ React.createElement("div", { className: "p-3.5" }, children[1])
127
127
  )) : children
128
128
  );
129
129
  }
@@ -131,9 +131,9 @@ function AccordionTrigger({
131
131
  isOpen,
132
132
  children,
133
133
  className,
134
- triggerIcon = /* @__PURE__ */ React2.createElement(RiArrowDownSLine, { size: 18 })
134
+ triggerIcon = /* @__PURE__ */ React.createElement(RiArrowDownSLine, { size: 18 })
135
135
  }) {
136
- return /* @__PURE__ */ React2.createElement(
136
+ return /* @__PURE__ */ React.createElement(
137
137
  "div",
138
138
  {
139
139
  className: cn(
@@ -143,7 +143,7 @@ function AccordionTrigger({
143
143
  )
144
144
  },
145
145
  children,
146
- /* @__PURE__ */ React2.createElement(
146
+ /* @__PURE__ */ React.createElement(
147
147
  "span",
148
148
  {
149
149
  className: cn(
@@ -157,12 +157,12 @@ function AccordionTrigger({
157
157
  );
158
158
  }
159
159
  function AccordionContent({ children }) {
160
- return /* @__PURE__ */ React2.createElement("div", { className: "text-gray-700" }, children);
160
+ return /* @__PURE__ */ React.createElement("div", { className: "text-gray-700" }, children);
161
161
  }
162
162
 
163
163
  // app/components/Avatar.tsx
164
164
  import Image from "next/image";
165
- import React3, { forwardRef } from "react";
165
+ import React2, { forwardRef } from "react";
166
166
  var Avatar = forwardRef((props, ref) => {
167
167
  const {
168
168
  type,
@@ -184,7 +184,7 @@ var Avatar = forwardRef((props, ref) => {
184
184
  lg: "w-16 h-16"
185
185
  };
186
186
  const displayText = type === "text" && props.text ? props.text.length === 2 ? props.text.toUpperCase() : props.text.split(" ").map((word) => word.charAt(0).toUpperCase()).join("").slice(0, 2) : "";
187
- return /* @__PURE__ */ React3.createElement(
187
+ return /* @__PURE__ */ React2.createElement(
188
188
  "div",
189
189
  {
190
190
  ref,
@@ -200,7 +200,7 @@ var Avatar = forwardRef((props, ref) => {
200
200
  borderRadius: radius
201
201
  }
202
202
  },
203
- type === "image" && /* @__PURE__ */ React3.createElement(
203
+ type === "image" && /* @__PURE__ */ React2.createElement(
204
204
  "div",
205
205
  {
206
206
  className: cn(
@@ -210,7 +210,7 @@ var Avatar = forwardRef((props, ref) => {
210
210
  ),
211
211
  onClick
212
212
  },
213
- /* @__PURE__ */ React3.createElement(
213
+ /* @__PURE__ */ React2.createElement(
214
214
  Image,
215
215
  {
216
216
  fill: true,
@@ -220,7 +220,7 @@ var Avatar = forwardRef((props, ref) => {
220
220
  }
221
221
  )
222
222
  ),
223
- type === "icon" && /* @__PURE__ */ React3.createElement(
223
+ type === "icon" && /* @__PURE__ */ React2.createElement(
224
224
  "div",
225
225
  {
226
226
  className: cn(
@@ -233,7 +233,7 @@ var Avatar = forwardRef((props, ref) => {
233
233
  },
234
234
  props.icon
235
235
  ),
236
- type === "text" && /* @__PURE__ */ React3.createElement(
236
+ type === "text" && /* @__PURE__ */ React2.createElement(
237
237
  "p",
238
238
  {
239
239
  onClick,
@@ -249,7 +249,7 @@ var Avatar = forwardRef((props, ref) => {
249
249
  },
250
250
  displayText
251
251
  ),
252
- statusIcon && /* @__PURE__ */ React3.createElement(
252
+ statusIcon && /* @__PURE__ */ React2.createElement(
253
253
  "span",
254
254
  {
255
255
  className: cn(
@@ -294,26 +294,26 @@ Avatar.displayName = "Avatar";
294
294
  var Avatar_default = Avatar;
295
295
 
296
296
  // app/components/AvatarGroup.tsx
297
- import React4, { forwardRef as forwardRef2 } from "react";
297
+ import React3, { forwardRef as forwardRef2 } from "react";
298
298
  var AvatarGroup = forwardRef2(
299
299
  ({ avatars, size = "md", max, className }, ref) => {
300
300
  const displayAvatars = max ? avatars.slice(0, max) : avatars;
301
301
  const remainingCount = max ? avatars.length - max : 0;
302
- return /* @__PURE__ */ React4.createElement(
302
+ return /* @__PURE__ */ React3.createElement(
303
303
  "div",
304
304
  {
305
305
  ref,
306
306
  className: cn("flex -space-x-6 rtl:space-x-reverse", className)
307
307
  },
308
- displayAvatars.map((avatar, index) => /* @__PURE__ */ React4.createElement(
308
+ displayAvatars.map((avatar, index) => /* @__PURE__ */ React3.createElement(
309
309
  "div",
310
310
  {
311
311
  className: "hover:-translate-x-3 transition-all duration-200",
312
312
  key: index
313
313
  },
314
- /* @__PURE__ */ React4.createElement(Avatar_default, { ...avatar, size })
314
+ /* @__PURE__ */ React3.createElement(Avatar_default, { ...avatar, size })
315
315
  )),
316
- remainingCount > 0 && /* @__PURE__ */ React4.createElement("div", null, /* @__PURE__ */ React4.createElement(
316
+ remainingCount > 0 && /* @__PURE__ */ React3.createElement("div", null, /* @__PURE__ */ React3.createElement(
317
317
  Avatar_default,
318
318
  {
319
319
  type: "text",
@@ -330,23 +330,23 @@ AvatarGroup.displayName = "AvatarGroup";
330
330
  var AvatarGroup_default = AvatarGroup;
331
331
 
332
332
  // app/components/Breadcrumb.tsx
333
- import React5 from "react";
333
+ import React4 from "react";
334
334
  var Breadcrumbs = ({
335
335
  children,
336
336
  separator = "/",
337
337
  "aria-label": ariaLabel,
338
338
  containerClasses
339
339
  }) => {
340
- const items = React5.Children.toArray(children).map((child, index) => {
341
- const isLast = index === React5.Children.count(children) - 1;
342
- return /* @__PURE__ */ React5.createElement("span", { key: index, className: "flex items-center text-text-xs text-gray-700 font-semibold" }, child, !isLast && /* @__PURE__ */ React5.createElement("span", { className: "mx-[6px]" }, separator));
340
+ const items = React4.Children.toArray(children).map((child, index) => {
341
+ const isLast = index === React4.Children.count(children) - 1;
342
+ return /* @__PURE__ */ React4.createElement("span", { key: index, className: "flex items-center text-text-xs text-gray-700 font-semibold" }, child, !isLast && /* @__PURE__ */ React4.createElement("span", { className: "mx-[6px]" }, separator));
343
343
  });
344
- return /* @__PURE__ */ React5.createElement("nav", { "aria-label": ariaLabel, className: `flex items-center text-text-xs text-gray-700 font-semibold ${containerClasses}` }, items);
344
+ return /* @__PURE__ */ React4.createElement("nav", { "aria-label": ariaLabel, className: `flex items-center text-text-xs text-gray-700 font-semibold ${containerClasses}` }, items);
345
345
  };
346
346
  var Breadcrumb_default = Breadcrumbs;
347
347
 
348
348
  // app/components/Button.tsx
349
- import React6 from "react";
349
+ import React5 from "react";
350
350
  import { cva } from "class-variance-authority";
351
351
  var buttonVariants = cva(
352
352
  "rounded-lg disabled:select-none font-semibold cursor-pointer transition-colors duration-300 ease-in-out focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary-500 focus-visible:ring-offset-2",
@@ -427,7 +427,7 @@ var Button = ({
427
427
  // {children}
428
428
  // {endIcon}
429
429
  // </button>
430
- /* @__PURE__ */ React6.createElement(
430
+ /* @__PURE__ */ React5.createElement(
431
431
  "button",
432
432
  {
433
433
  ...props,
@@ -440,9 +440,9 @@ var Button = ({
440
440
  "flex items-center text-center justify-center gap-2"
441
441
  )
442
442
  },
443
- startIcon && /* @__PURE__ */ React6.createElement("span", { "aria-hidden": "true" }, startIcon),
443
+ startIcon && /* @__PURE__ */ React5.createElement("span", { "aria-hidden": "true" }, startIcon),
444
444
  children,
445
- endIcon && /* @__PURE__ */ React6.createElement("span", { "aria-hidden": "true" }, endIcon)
445
+ endIcon && /* @__PURE__ */ React5.createElement("span", { "aria-hidden": "true" }, endIcon)
446
446
  )
447
447
  );
448
448
  };
@@ -450,7 +450,7 @@ var Button_default = Button;
450
450
 
451
451
  // app/components/Callout.tsx
452
452
  import { cva as cva2 } from "class-variance-authority";
453
- import React7 from "react";
453
+ import React6 from "react";
454
454
  var calloutVariants = cva2("py-3 px-4 font-medium rounded-md", {
455
455
  variants: {
456
456
  variant: {
@@ -538,7 +538,7 @@ var Callout = ({
538
538
  endIcon,
539
539
  className
540
540
  }) => {
541
- return /* @__PURE__ */ React7.createElement(
541
+ return /* @__PURE__ */ React6.createElement(
542
542
  "div",
543
543
  {
544
544
  role: "alert",
@@ -548,38 +548,38 @@ var Callout = ({
548
548
  className
549
549
  )
550
550
  },
551
- /* @__PURE__ */ React7.createElement("div", { className: "flex items-center gap-2" }, startIcon && /* @__PURE__ */ React7.createElement("span", null, startIcon), children),
552
- endIcon && /* @__PURE__ */ React7.createElement("span", null, endIcon)
551
+ /* @__PURE__ */ React6.createElement("div", { className: "flex items-center gap-2" }, startIcon && /* @__PURE__ */ React6.createElement("span", null, startIcon), children),
552
+ endIcon && /* @__PURE__ */ React6.createElement("span", null, endIcon)
553
553
  );
554
554
  };
555
555
  var Callout_default = Callout;
556
556
 
557
557
  // app/components/Card.tsx
558
- import React8 from "react";
558
+ import React7 from "react";
559
559
  function Card_default({ children, className }) {
560
- return /* @__PURE__ */ React8.createElement("div", { className: cn("bg-white rounded-lg border border-gray-200 shadow-sm", className) }, children);
560
+ return /* @__PURE__ */ React7.createElement("div", { className: cn("bg-white rounded-lg border border-gray-200 shadow-sm", className) }, children);
561
561
  }
562
562
  var CardHeader = ({ children, className }) => {
563
- return /* @__PURE__ */ React8.createElement("div", { className: cn("p-4 pb-4", className) }, children);
563
+ return /* @__PURE__ */ React7.createElement("div", { className: cn("p-4 pb-4", className) }, children);
564
564
  };
565
565
  var CardTitle = ({ children, className }) => {
566
- return /* @__PURE__ */ React8.createElement("h3", { className: cn("text-lg font-semibold text-gray-900 mb-2", className) }, children);
566
+ return /* @__PURE__ */ React7.createElement("h3", { className: cn("text-lg font-semibold text-gray-900 mb-2", className) }, children);
567
567
  };
568
568
  var CardDescription = ({ children, className }) => {
569
- return /* @__PURE__ */ React8.createElement("p", { className: cn("text-sm text-gray-600 mb-4", className) }, children);
569
+ return /* @__PURE__ */ React7.createElement("p", { className: cn("text-sm text-gray-600 mb-4", className) }, children);
570
570
  };
571
571
  var CardAction = ({ children, className }) => {
572
- return /* @__PURE__ */ React8.createElement("div", { className: cn("mt-4", className) }, children);
572
+ return /* @__PURE__ */ React7.createElement("div", { className: cn("mt-4", className) }, children);
573
573
  };
574
574
  var CardContent = ({ children, className }) => {
575
- return /* @__PURE__ */ React8.createElement("div", { className: cn("p-6 pt-0", className) }, children);
575
+ return /* @__PURE__ */ React7.createElement("div", { className: cn("p-6 pt-0", className) }, children);
576
576
  };
577
577
  var CardFooter = ({ children, className }) => {
578
- return /* @__PURE__ */ React8.createElement("div", { className: cn("p-6 pt-0", className) }, children);
578
+ return /* @__PURE__ */ React7.createElement("div", { className: cn("p-6 pt-0", className) }, children);
579
579
  };
580
580
 
581
581
  // app/components/Checkbox.tsx
582
- import React9, { forwardRef as forwardRef3 } from "react";
582
+ import React8, { forwardRef as forwardRef3 } from "react";
583
583
  import { cva as cva3 } from "class-variance-authority";
584
584
  var checkboxVariant = cva3(
585
585
  "peer relative cursor-pointer appearance-none rounded-[4px] border border-gray-300 transition-all checked:border-primary-600 checked:bg-primary-50 hover:bg-primary-50 disabled:opacity-30 disabled:pointer-events-none",
@@ -598,7 +598,7 @@ var checkboxVariant = cva3(
598
598
  );
599
599
  var Checkbox = forwardRef3(
600
600
  ({ disabled, checked, size, className, children, id, ...props }, ref) => {
601
- return /* @__PURE__ */ React9.createElement("div", { className: "inline-flex relative items-center" }, /* @__PURE__ */ React9.createElement(
601
+ return /* @__PURE__ */ React8.createElement("div", { className: "inline-flex relative items-center" }, /* @__PURE__ */ React8.createElement(
602
602
  "input",
603
603
  {
604
604
  type: "checkbox",
@@ -613,13 +613,13 @@ var Checkbox = forwardRef3(
613
613
  "focus-visible:ring-2 focus-visible:ring-primary-600 focus-visible:ring-offset-2"
614
614
  )
615
615
  }
616
- ), /* @__PURE__ */ React9.createElement(
616
+ ), /* @__PURE__ */ React8.createElement(
617
617
  "span",
618
618
  {
619
619
  "aria-hidden": "true",
620
620
  className: "absolute text-primary-600 transition-opacity opacity-0 pointer-events-none top-2/4 left-2/4 -translate-y-2/4 -translate-x-2/4 peer-checked:opacity-100"
621
621
  },
622
- /* @__PURE__ */ React9.createElement(
622
+ /* @__PURE__ */ React8.createElement(
623
623
  "svg",
624
624
  {
625
625
  xmlns: "http://www.w3.org/2000/svg",
@@ -629,7 +629,7 @@ var Checkbox = forwardRef3(
629
629
  stroke: "currentColor",
630
630
  strokeWidth: "1"
631
631
  },
632
- /* @__PURE__ */ React9.createElement(
632
+ /* @__PURE__ */ React8.createElement(
633
633
  "path",
634
634
  {
635
635
  fillRule: "evenodd",
@@ -645,7 +645,7 @@ Checkbox.displayName = "Checkbox";
645
645
  var Checkbox_default = Checkbox;
646
646
 
647
647
  // app/components/Chip.tsx
648
- import React10 from "react";
648
+ import React9 from "react";
649
649
  import { cva as cva4 } from "class-variance-authority";
650
650
  var chipVariants = cva4(
651
651
  "inline-flex items-center w-fit gap-2 rounded-full capitalize",
@@ -707,14 +707,14 @@ var Chip = ({
707
707
  ...rest
708
708
  }) => {
709
709
  const resolvedIntent = intent ?? "default";
710
- return /* @__PURE__ */ React10.createElement(
710
+ return /* @__PURE__ */ React9.createElement(
711
711
  "span",
712
712
  {
713
713
  className: cn(chipVariants({ intent: resolvedIntent, size }), className),
714
714
  ...rest
715
715
  },
716
- startIcon && /* @__PURE__ */ React10.createElement("span", { "aria-hidden": "true" }, startIcon),
717
- !startIcon && dot && /* @__PURE__ */ React10.createElement(
716
+ startIcon && /* @__PURE__ */ React9.createElement("span", { "aria-hidden": "true" }, startIcon),
717
+ !startIcon && dot && /* @__PURE__ */ React9.createElement(
718
718
  "span",
719
719
  {
720
720
  "aria-hidden": "true",
@@ -725,13 +725,13 @@ var Chip = ({
725
725
  }
726
726
  ),
727
727
  children,
728
- endIcon && /* @__PURE__ */ React10.createElement("span", { "aria-hidden": "true" }, endIcon)
728
+ endIcon && /* @__PURE__ */ React9.createElement("span", { "aria-hidden": "true" }, endIcon)
729
729
  );
730
730
  };
731
731
  var Chip_default = Chip;
732
732
 
733
733
  // app/components/CircularProgress.tsx
734
- import React11 from "react";
734
+ import React10 from "react";
735
735
  var CircularProgressBar = ({
736
736
  percentage,
737
737
  size = 160,
@@ -743,7 +743,7 @@ var CircularProgressBar = ({
743
743
  const viewBox = `0 0 ${size} ${size}`;
744
744
  const dashArray = radius * Math.PI * 2;
745
745
  const dashOffset = dashArray - dashArray * (percentage || 0) / 100;
746
- return /* @__PURE__ */ React11.createElement("svg", { width: size, height: size, viewBox }, /* @__PURE__ */ React11.createElement(
746
+ return /* @__PURE__ */ React10.createElement("svg", { width: size, height: size, viewBox }, /* @__PURE__ */ React10.createElement(
747
747
  "circle",
748
748
  {
749
749
  className: "fill-none stroke-gray-200",
@@ -752,7 +752,7 @@ var CircularProgressBar = ({
752
752
  r: radius,
753
753
  strokeWidth: `${strokeWidth}px`
754
754
  }
755
- ), /* @__PURE__ */ React11.createElement(
755
+ ), /* @__PURE__ */ React10.createElement(
756
756
  "circle",
757
757
  {
758
758
  className: "fill-none stroke-primary-600 transition-all delay-200 ease-in",
@@ -767,7 +767,7 @@ var CircularProgressBar = ({
767
767
  strokeDashoffset: dashOffset
768
768
  }
769
769
  }
770
- ), /* @__PURE__ */ React11.createElement(
770
+ ), /* @__PURE__ */ React10.createElement(
771
771
  "text",
772
772
  {
773
773
  x: "50%",
@@ -783,14 +783,14 @@ var CircularProgressBar = ({
783
783
  var CircularProgress_default = CircularProgressBar;
784
784
 
785
785
  // app/components/Divider.tsx
786
- import React12 from "react";
786
+ import React11 from "react";
787
787
  var Divider = ({
788
788
  width,
789
789
  height,
790
790
  position = "horizontal",
791
791
  className
792
792
  }) => {
793
- return /* @__PURE__ */ React12.createElement(
793
+ return /* @__PURE__ */ React11.createElement(
794
794
  "div",
795
795
  {
796
796
  style: {
@@ -808,7 +808,7 @@ var Divider = ({
808
808
  var Divider_default = Divider;
809
809
 
810
810
  // app/components/Drawer.tsx
811
- import {
811
+ import React12, {
812
812
  useCallback,
813
813
  useEffect as useEffect2
814
814
  } from "react";
@@ -839,7 +839,7 @@ var Drawer = ({
839
839
  window.addEventListener("keydown", handleKeyDown);
840
840
  return () => window.removeEventListener("keydown", handleKeyDown);
841
841
  }, [isOpen, handleClose]);
842
- return /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement(
842
+ return /* @__PURE__ */ React12.createElement("div", null, /* @__PURE__ */ React12.createElement(
843
843
  "div",
844
844
  {
845
845
  className: cn(
@@ -848,7 +848,7 @@ var Drawer = ({
848
848
  ),
849
849
  onClick: () => closeOnOutsideClick && handleClose()
850
850
  }
851
- ), /* @__PURE__ */ React.createElement(
851
+ ), /* @__PURE__ */ React12.createElement(
852
852
  "div",
853
853
  {
854
854
  className: cn(
@@ -863,19 +863,19 @@ var Drawer = ({
863
863
  ),
864
864
  onClick: (e) => e.stopPropagation()
865
865
  },
866
- showCloseButton && /* @__PURE__ */ React.createElement(
866
+ showCloseButton && /* @__PURE__ */ React12.createElement(
867
867
  Button_default,
868
868
  {
869
869
  size: "sm",
870
870
  variant: "outlined",
871
871
  intent: "default-outlined",
872
872
  onClick: handleClose,
873
- startIcon: /* @__PURE__ */ React.createElement(RiCloseLine, { size: 20 }),
873
+ startIcon: /* @__PURE__ */ React12.createElement(RiCloseLine, { size: 20 }),
874
874
  "aria-label": "Close drawer",
875
875
  className: "absolute border-none p-1 transition-colors top-3 right-4"
876
876
  }
877
877
  ),
878
- /* @__PURE__ */ React.createElement("div", { className: "overflow-y-auto h-full" }, children)
878
+ /* @__PURE__ */ React12.createElement("div", { className: "overflow-y-auto h-full" }, children)
879
879
  ));
880
880
  };
881
881
  var Drawer_default = Drawer;
@@ -2179,50 +2179,8 @@ var HelperText = ({ children, className, size, error }) => {
2179
2179
  };
2180
2180
  var HelperText_default = HelperText;
2181
2181
 
2182
- // app/components/ListItem.tsx
2183
- import Link from "next/link";
2184
- import React23 from "react";
2185
- var ListItem = React23.forwardRef(({ className, title, href, onClick, as = "link", icon }, ref) => {
2186
- const commonClasses = cn(
2187
- "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",
2188
- className
2189
- );
2190
- if (as === "button") {
2191
- return /* @__PURE__ */ React23.createElement(
2192
- "button",
2193
- {
2194
- className: commonClasses,
2195
- onClick,
2196
- ref,
2197
- type: "button",
2198
- role: "menuitem"
2199
- },
2200
- /* @__PURE__ */ React23.createElement("span", { className: "text-base font-normal" }, title),
2201
- icon && /* @__PURE__ */ React23.createElement("span", { className: "flex-shrink-0", "aria-hidden": "true" }, icon)
2202
- );
2203
- }
2204
- return /* @__PURE__ */ React23.createElement(
2205
- Link,
2206
- {
2207
- href: href ?? "",
2208
- className: commonClasses,
2209
- ref,
2210
- role: "menuitem",
2211
- onClick: (e) => {
2212
- if (!href) {
2213
- e.preventDefault();
2214
- }
2215
- }
2216
- },
2217
- /* @__PURE__ */ React23.createElement("span", { className: "text-base font-normal" }, title),
2218
- icon && /* @__PURE__ */ React23.createElement("span", { className: "flex-shrink-0", "aria-hidden": "true" }, icon)
2219
- );
2220
- });
2221
- ListItem.displayName = "ListItem";
2222
- var ListItem_default = ListItem;
2223
-
2224
2182
  // app/components/ListPagination.tsx
2225
- import React24, { useState as useState6 } from "react";
2183
+ import React23, { useState as useState6 } from "react";
2226
2184
  import { RiArrowLeftSLine, RiArrowRightSLine } from "@remixicon/react";
2227
2185
  var ListPagination = ({
2228
2186
  count,
@@ -2235,7 +2193,7 @@ var ListPagination = ({
2235
2193
  const [expanded, setExpanded] = useState6(false);
2236
2194
  const renderPages = () => {
2237
2195
  if (totalPages <= 6 || expanded) {
2238
- return [...Array(totalPages)].map((_, i) => /* @__PURE__ */ React24.createElement(PageBtn, { key: i, i, page, onPageChange }));
2196
+ return [...Array(totalPages)].map((_, i) => /* @__PURE__ */ React23.createElement(PageBtn, { key: i, i, page, onPageChange }));
2239
2197
  }
2240
2198
  const start = [0, 1];
2241
2199
  const mid = [page - 1, page, page + 1].filter(
@@ -2244,7 +2202,7 @@ var ListPagination = ({
2244
2202
  const end = [totalPages - 2, totalPages - 1];
2245
2203
  const range = Array.from(/* @__PURE__ */ new Set([...start, ...mid, ...end]));
2246
2204
  return range.map(
2247
- (i, idx) => typeof range[idx - 1] === "number" && i - range[idx - 1] > 1 ? /* @__PURE__ */ React24.createElement(
2205
+ (i, idx) => typeof range[idx - 1] === "number" && i - range[idx - 1] > 1 ? /* @__PURE__ */ React23.createElement(
2248
2206
  Button_default,
2249
2207
  {
2250
2208
  key: `dots-${i}`,
@@ -2253,20 +2211,20 @@ var ListPagination = ({
2253
2211
  onClick: () => setExpanded(true)
2254
2212
  },
2255
2213
  "..."
2256
- ) : /* @__PURE__ */ React24.createElement(PageBtn, { key: i, i, page, onPageChange })
2214
+ ) : /* @__PURE__ */ React23.createElement(PageBtn, { key: i, i, page, onPageChange })
2257
2215
  );
2258
2216
  };
2259
- return /* @__PURE__ */ React24.createElement("section", { className: cn("flex items-center gap-1", className) }, /* @__PURE__ */ React24.createElement(
2217
+ return /* @__PURE__ */ React23.createElement("section", { className: cn("flex items-center gap-1", className) }, /* @__PURE__ */ React23.createElement(
2260
2218
  NavBtn,
2261
2219
  {
2262
- icon: /* @__PURE__ */ React24.createElement(RiArrowLeftSLine, { size: 22 }),
2220
+ icon: /* @__PURE__ */ React23.createElement(RiArrowLeftSLine, { size: 22 }),
2263
2221
  onClick: () => onPageChange(page - 1),
2264
2222
  disabled: page === 0
2265
2223
  }
2266
- ), /* @__PURE__ */ React24.createElement("div", { className: "max-w-[90vw] w-max overflow-auto flex items-center gap-2 p-2" }, renderPages()), /* @__PURE__ */ React24.createElement(
2224
+ ), /* @__PURE__ */ React23.createElement("div", { className: "max-w-[90vw] w-max overflow-auto flex items-center gap-2 p-2" }, renderPages()), /* @__PURE__ */ React23.createElement(
2267
2225
  NavBtn,
2268
2226
  {
2269
- icon: /* @__PURE__ */ React24.createElement(RiArrowRightSLine, { size: 22 }),
2227
+ icon: /* @__PURE__ */ React23.createElement(RiArrowRightSLine, { size: 22 }),
2270
2228
  onClick: () => onPageChange(page + 1),
2271
2229
  disabled: page === totalPages - 1
2272
2230
  }
@@ -2276,7 +2234,7 @@ var PageBtn = ({
2276
2234
  i,
2277
2235
  page,
2278
2236
  onPageChange
2279
- }) => /* @__PURE__ */ React24.createElement(
2237
+ }) => /* @__PURE__ */ React23.createElement(
2280
2238
  Button_default,
2281
2239
  {
2282
2240
  size: "sm",
@@ -2292,7 +2250,7 @@ var NavBtn = ({
2292
2250
  icon,
2293
2251
  onClick,
2294
2252
  disabled
2295
- }) => /* @__PURE__ */ React24.createElement(
2253
+ }) => /* @__PURE__ */ React23.createElement(
2296
2254
  Button_default,
2297
2255
  {
2298
2256
  size: "sm",
@@ -2306,9 +2264,9 @@ var NavBtn = ({
2306
2264
  var ListPagination_default = ListPagination;
2307
2265
 
2308
2266
  // app/components/Loading.tsx
2309
- import React25 from "react";
2267
+ import React24 from "react";
2310
2268
  var Loading = ({ width, height, loaderColor, variant }) => {
2311
- return /* @__PURE__ */ React25.createElement(
2269
+ return /* @__PURE__ */ React24.createElement(
2312
2270
  "div",
2313
2271
  {
2314
2272
  className: cn(
@@ -2327,7 +2285,7 @@ var Loading = ({ width, height, loaderColor, variant }) => {
2327
2285
  var Loading_default = Loading;
2328
2286
 
2329
2287
  // app/components/Modal.tsx
2330
- import React26, { useEffect as useEffect7 } from "react";
2288
+ import React25, { useEffect as useEffect7 } from "react";
2331
2289
  import { RiCloseLine as RiCloseLine2 } from "@remixicon/react";
2332
2290
  function Modal({
2333
2291
  children,
@@ -2353,13 +2311,13 @@ function Modal({
2353
2311
  setShowModal(false);
2354
2312
  }
2355
2313
  };
2356
- return /* @__PURE__ */ React26.createElement(React26.Fragment, null, showModal && /* @__PURE__ */ React26.createElement(
2314
+ return /* @__PURE__ */ React25.createElement(React25.Fragment, null, showModal && /* @__PURE__ */ React25.createElement(
2357
2315
  "div",
2358
2316
  {
2359
2317
  onClick: handleClickOutside,
2360
2318
  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"
2361
2319
  },
2362
- /* @__PURE__ */ React26.createElement(
2320
+ /* @__PURE__ */ React25.createElement(
2363
2321
  "div",
2364
2322
  {
2365
2323
  style: { width },
@@ -2368,14 +2326,14 @@ function Modal({
2368
2326
  className
2369
2327
  )
2370
2328
  },
2371
- /* @__PURE__ */ React26.createElement("div", null, children),
2372
- closeModal && /* @__PURE__ */ React26.createElement(
2329
+ /* @__PURE__ */ React25.createElement("div", null, children),
2330
+ closeModal && /* @__PURE__ */ React25.createElement(
2373
2331
  "div",
2374
2332
  {
2375
2333
  className: "absolute top-4 ml-5 right-5 z-10 shadow-backdrop rounded-md cursor-pointer hover:bg-gray-100",
2376
2334
  onClick: () => setShowModal(false)
2377
2335
  },
2378
- /* @__PURE__ */ React26.createElement(RiCloseLine2, { size: 24 })
2336
+ /* @__PURE__ */ React25.createElement(RiCloseLine2, { size: 24 })
2379
2337
  )
2380
2338
  )
2381
2339
  ));
@@ -2383,11 +2341,11 @@ function Modal({
2383
2341
 
2384
2342
  // app/components/Notice.tsx
2385
2343
  import { cva as cva6 } from "class-variance-authority";
2386
- import React27 from "react";
2344
+ import React26 from "react";
2387
2345
  import {
2388
2346
  RiAlertFill,
2389
2347
  RiCloseLine as RiCloseLine3,
2390
- RiErrorWarningLine as RiErrorWarningLine2,
2348
+ RiErrorWarningLine,
2391
2349
  RiQuestionLine,
2392
2350
  RiThumbUpLine,
2393
2351
  RiShieldCheckLine
@@ -2395,15 +2353,15 @@ import {
2395
2353
  var VariantIcon = ({ variant }) => {
2396
2354
  switch (variant) {
2397
2355
  case "success":
2398
- return /* @__PURE__ */ React27.createElement("span", null, /* @__PURE__ */ React27.createElement(RiThumbUpLine, { size: 20, color: "#039855" }));
2356
+ return /* @__PURE__ */ React26.createElement("span", null, /* @__PURE__ */ React26.createElement(RiThumbUpLine, { size: 20, color: "#039855" }));
2399
2357
  case "warning":
2400
- return /* @__PURE__ */ React27.createElement("span", null, /* @__PURE__ */ React27.createElement(RiQuestionLine, { color: "#F79009", size: 20 }));
2358
+ return /* @__PURE__ */ React26.createElement("span", null, /* @__PURE__ */ React26.createElement(RiQuestionLine, { color: "#F79009", size: 20 }));
2401
2359
  case "info":
2402
- return /* @__PURE__ */ React27.createElement("span", null, /* @__PURE__ */ React27.createElement(RiErrorWarningLine2, { color: "#1570EF", size: 20 }));
2360
+ return /* @__PURE__ */ React26.createElement("span", null, /* @__PURE__ */ React26.createElement(RiErrorWarningLine, { color: "#1570EF", size: 20 }));
2403
2361
  case "error":
2404
- return /* @__PURE__ */ React27.createElement("span", null, /* @__PURE__ */ React27.createElement(RiAlertFill, { color: "#F04438", size: 20 }));
2362
+ return /* @__PURE__ */ React26.createElement("span", null, /* @__PURE__ */ React26.createElement(RiAlertFill, { color: "#F04438", size: 20 }));
2405
2363
  default:
2406
- return /* @__PURE__ */ React27.createElement("span", null, /* @__PURE__ */ React27.createElement(RiShieldCheckLine, { color: "#475467", size: 20 }));
2364
+ return /* @__PURE__ */ React26.createElement("span", null, /* @__PURE__ */ React26.createElement(RiShieldCheckLine, { color: "#475467", size: 20 }));
2407
2365
  }
2408
2366
  };
2409
2367
  var noticeVariants = cva6("p-4 w-fit rounded-[6px]", {
@@ -2432,7 +2390,7 @@ var Notice = ({
2432
2390
  showIcon = true
2433
2391
  }) => {
2434
2392
  const handleClose = () => setOpen(false);
2435
- return /* @__PURE__ */ React27.createElement(React27.Fragment, null, open && /* @__PURE__ */ React27.createElement(
2393
+ return /* @__PURE__ */ React26.createElement(React26.Fragment, null, open && /* @__PURE__ */ React26.createElement(
2436
2394
  "div",
2437
2395
  {
2438
2396
  className: cn(
@@ -2443,27 +2401,27 @@ var Notice = ({
2443
2401
  position === "center" && open && `animate-fade-in`
2444
2402
  )
2445
2403
  },
2446
- /* @__PURE__ */ React27.createElement("div", { className: "relative" }, showIcon ? noticeTitle == "" ? /* @__PURE__ */ React27.createElement("div", { className: "flex items-start" }, /* @__PURE__ */ React27.createElement(VariantIcon, { variant }), /* @__PURE__ */ React27.createElement("span", { className: "ml-2 mr-8 text-text-sm" }, children), /* @__PURE__ */ React27.createElement("span", { onClick: handleClose }, /* @__PURE__ */ React27.createElement(RiCloseLine3, { size: 20 }))) : /* @__PURE__ */ React27.createElement("div", { className: "" }, /* @__PURE__ */ React27.createElement("section", { className: "flex items-start" }, /* @__PURE__ */ React27.createElement(VariantIcon, { variant }), /* @__PURE__ */ React27.createElement("div", { className: "ml-2 mr-8 -mt-[3px]" }, /* @__PURE__ */ React27.createElement("span", { className: "font-bold text-gray-800 mb-1" }, noticeTitle), /* @__PURE__ */ React27.createElement("p", { className: "text-text-sm text-gray-700" }, children))), /* @__PURE__ */ React27.createElement(
2404
+ /* @__PURE__ */ React26.createElement("div", { className: "relative" }, showIcon ? noticeTitle == "" ? /* @__PURE__ */ React26.createElement("div", { className: "flex items-start" }, /* @__PURE__ */ React26.createElement(VariantIcon, { variant }), /* @__PURE__ */ React26.createElement("span", { className: "ml-2 mr-8 text-text-sm" }, children), /* @__PURE__ */ React26.createElement("span", { onClick: handleClose }, /* @__PURE__ */ React26.createElement(RiCloseLine3, { size: 20 }))) : /* @__PURE__ */ React26.createElement("div", { className: "" }, /* @__PURE__ */ React26.createElement("section", { className: "flex items-start" }, /* @__PURE__ */ React26.createElement(VariantIcon, { variant }), /* @__PURE__ */ React26.createElement("div", { className: "ml-2 mr-8 -mt-[3px]" }, /* @__PURE__ */ React26.createElement("span", { className: "font-bold text-gray-800 mb-1" }, noticeTitle), /* @__PURE__ */ React26.createElement("p", { className: "text-text-sm text-gray-700" }, children))), /* @__PURE__ */ React26.createElement(
2447
2405
  "span",
2448
2406
  {
2449
2407
  className: cn("absolute top-0 right-0 cursor-pointer"),
2450
2408
  onClick: handleClose
2451
2409
  },
2452
- /* @__PURE__ */ React27.createElement(RiCloseLine3, { size: 20 })
2453
- )) : /* @__PURE__ */ React27.createElement("div", { className: "mr-8" }, /* @__PURE__ */ React27.createElement("section", { className: "flex items-center" }, /* @__PURE__ */ React27.createElement("p", { className: "font-bold text-gray-800 mb-1" }, noticeTitle)), /* @__PURE__ */ React27.createElement(
2410
+ /* @__PURE__ */ React26.createElement(RiCloseLine3, { size: 20 })
2411
+ )) : /* @__PURE__ */ React26.createElement("div", { className: "mr-8" }, /* @__PURE__ */ React26.createElement("section", { className: "flex items-center" }, /* @__PURE__ */ React26.createElement("p", { className: "font-bold text-gray-800 mb-1" }, noticeTitle)), /* @__PURE__ */ React26.createElement(
2454
2412
  "span",
2455
2413
  {
2456
2414
  className: cn("absolute top-0 right-0 cursor-pointer"),
2457
2415
  onClick: handleClose
2458
2416
  },
2459
- /* @__PURE__ */ React27.createElement(RiCloseLine3, { size: 20 })
2460
- ), /* @__PURE__ */ React27.createElement("p", { className: "text-text-sm" }, children)))
2417
+ /* @__PURE__ */ React26.createElement(RiCloseLine3, { size: 20 })
2418
+ ), /* @__PURE__ */ React26.createElement("p", { className: "text-text-sm" }, children)))
2461
2419
  ));
2462
2420
  };
2463
2421
  var Notice_default = Notice;
2464
2422
 
2465
2423
  // app/components/OTPInput.tsx
2466
- import React28, { useRef as useRef6, useState as useState7 } from "react";
2424
+ import React27, { useRef as useRef6, useState as useState7 } from "react";
2467
2425
  var OTPInput = ({
2468
2426
  length,
2469
2427
  onChange,
@@ -2509,7 +2467,7 @@ var OTPInput = ({
2509
2467
  onChange(newOtp.join(""));
2510
2468
  (_a = inputsRef.current[Math.min(pasteData.length, length - 1)]) == null ? void 0 : _a.focus();
2511
2469
  };
2512
- return /* @__PURE__ */ React28.createElement("div", { className: "flex items-center gap-2" }, Array.from({ length }).map((_, idx) => /* @__PURE__ */ React28.createElement(
2470
+ return /* @__PURE__ */ React27.createElement("div", { className: "flex items-center gap-2" }, Array.from({ length }).map((_, idx) => /* @__PURE__ */ React27.createElement(
2513
2471
  Input_default,
2514
2472
  {
2515
2473
  key: idx,
@@ -2530,7 +2488,7 @@ var OTPInput = ({
2530
2488
  var OTPInput_default = OTPInput;
2531
2489
 
2532
2490
  // app/components/Pagination.tsx
2533
- import React29, { useState as useState8 } from "react";
2491
+ import React28, { useState as useState8 } from "react";
2534
2492
  import {
2535
2493
  RiArrowLeftLine,
2536
2494
  RiArrowRightLine,
@@ -2567,7 +2525,7 @@ var Pagination = ({
2567
2525
  }
2568
2526
  setShowOptions(false);
2569
2527
  };
2570
- return /* @__PURE__ */ React29.createElement(
2528
+ return /* @__PURE__ */ React28.createElement(
2571
2529
  "div",
2572
2530
  {
2573
2531
  className: cn(
@@ -2576,7 +2534,7 @@ var Pagination = ({
2576
2534
  className
2577
2535
  )
2578
2536
  },
2579
- /* @__PURE__ */ React29.createElement("section", { className: "flex gap-1.5 items-center" }, countVariable && /* @__PURE__ */ React29.createElement("p", { className: "text-text-sm text-gray-800 font-medium" }, count, " ", countVariable ?? "Items"), itemsPerPage && /* @__PURE__ */ React29.createElement("div", { className: "flex gap-1.5 items-center" }, /* @__PURE__ */ React29.createElement("span", { className: "text-gray-800 text-text-sm font-medium" }, "Items per page"), /* @__PURE__ */ React29.createElement("div", { className: "relative z-[100]" }, /* @__PURE__ */ React29.createElement(
2537
+ /* @__PURE__ */ React28.createElement("section", { className: "flex gap-1.5 items-center" }, countVariable && /* @__PURE__ */ React28.createElement("p", { className: "text-text-sm text-gray-800 font-medium" }, count, " ", countVariable ?? "Items"), itemsPerPage && /* @__PURE__ */ React28.createElement("div", { className: "flex gap-1.5 items-center" }, /* @__PURE__ */ React28.createElement("span", { className: "text-gray-800 text-text-sm font-medium" }, "Items per page"), /* @__PURE__ */ React28.createElement("div", { className: "relative z-[100]" }, /* @__PURE__ */ React28.createElement(
2580
2538
  "div",
2581
2539
  {
2582
2540
  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",
@@ -2584,8 +2542,8 @@ var Pagination = ({
2584
2542
  },
2585
2543
  rowsPerPage,
2586
2544
  " ",
2587
- !showOptions ? /* @__PURE__ */ React29.createElement(RiArrowDownSLine4, { size: 14 }) : /* @__PURE__ */ React29.createElement(RiArrowUpSLine, { size: 14 })
2588
- ), showOptions && /* @__PURE__ */ React29.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__ */ React29.createElement(
2545
+ !showOptions ? /* @__PURE__ */ React28.createElement(RiArrowDownSLine4, { size: 14 }) : /* @__PURE__ */ React28.createElement(RiArrowUpSLine, { size: 14 })
2546
+ ), showOptions && /* @__PURE__ */ React28.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__ */ React28.createElement(
2589
2547
  "div",
2590
2548
  {
2591
2549
  key: index,
@@ -2594,35 +2552,35 @@ var Pagination = ({
2594
2552
  },
2595
2553
  typeof option === "number" ? option : option.label
2596
2554
  )))))),
2597
- /* @__PURE__ */ React29.createElement("section", { className: "flex items-center gap-2 font-medium" }, variant === "primary" ? /* @__PURE__ */ React29.createElement("div", { className: "flex items-center gap-2 text-gray-800 text-text-sm" }, /* @__PURE__ */ React29.createElement("span", null, "page"), /* @__PURE__ */ React29.createElement(
2555
+ /* @__PURE__ */ React28.createElement("section", { className: "flex items-center gap-2 font-medium" }, variant === "primary" ? /* @__PURE__ */ React28.createElement("div", { className: "flex items-center gap-2 text-gray-800 text-text-sm" }, /* @__PURE__ */ React28.createElement("span", null, "page"), /* @__PURE__ */ React28.createElement(
2598
2556
  "select",
2599
2557
  {
2600
2558
  value: page + 1,
2601
2559
  onChange: (e) => onPageChange(parseInt(e.target.value, 10) - 1),
2602
2560
  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"
2603
2561
  },
2604
- totalPages > 0 && [...Array(totalPages)].map((_, index) => /* @__PURE__ */ React29.createElement("option", { key: index + 1, value: index + 1 }, index + 1))
2605
- ), /* @__PURE__ */ React29.createElement("span", null, "of ", totalPages > 0 ? totalPages : 0)) : /* @__PURE__ */ React29.createElement("div", { className: "flex items-center gap-2 text-gray-800 text-text-sm mx-3" }, /* @__PURE__ */ React29.createElement("span", null, page + 1, " of ", totalPages > 0 ? totalPages : 0)), variant === "primary" ? /* @__PURE__ */ React29.createElement("div", { className: "flex items-center" }, /* @__PURE__ */ React29.createElement(
2562
+ totalPages > 0 && [...Array(totalPages)].map((_, index) => /* @__PURE__ */ React28.createElement("option", { key: index + 1, value: index + 1 }, index + 1))
2563
+ ), /* @__PURE__ */ React28.createElement("span", null, "of ", totalPages > 0 ? totalPages : 0)) : /* @__PURE__ */ React28.createElement("div", { className: "flex items-center gap-2 text-gray-800 text-text-sm mx-3" }, /* @__PURE__ */ React28.createElement("span", null, page + 1, " of ", totalPages > 0 ? totalPages : 0)), variant === "primary" ? /* @__PURE__ */ React28.createElement("div", { className: "flex items-center" }, /* @__PURE__ */ React28.createElement(
2606
2564
  Button_default,
2607
2565
  {
2608
2566
  variant: "outlined",
2609
2567
  intent: "default-outlined",
2610
- startIcon: /* @__PURE__ */ React29.createElement(RiArrowLeftLine, { size: 20 }),
2568
+ startIcon: /* @__PURE__ */ React28.createElement(RiArrowLeftLine, { size: 20 }),
2611
2569
  onClick: handlePrevPageClick,
2612
2570
  disabled: page === 0,
2613
2571
  className: "rounded-none h-8 rounded-l-lg"
2614
2572
  }
2615
- ), /* @__PURE__ */ React29.createElement(
2573
+ ), /* @__PURE__ */ React28.createElement(
2616
2574
  Button_default,
2617
2575
  {
2618
2576
  variant: "outlined",
2619
2577
  intent: "default-outlined",
2620
- startIcon: /* @__PURE__ */ React29.createElement(RiArrowRightLine, { size: 20 }),
2578
+ startIcon: /* @__PURE__ */ React28.createElement(RiArrowRightLine, { size: 20 }),
2621
2579
  onClick: handleNextPageClick,
2622
2580
  disabled: page === totalPages - 1,
2623
2581
  className: "rounded-none h-8 rounded-r-lg"
2624
2582
  }
2625
- )) : /* @__PURE__ */ React29.createElement("div", { className: "flex items-center gap-1" }, /* @__PURE__ */ React29.createElement(
2583
+ )) : /* @__PURE__ */ React28.createElement("div", { className: "flex items-center gap-1" }, /* @__PURE__ */ React28.createElement(
2626
2584
  RiArrowLeftSLine2,
2627
2585
  {
2628
2586
  size: 22,
@@ -2632,7 +2590,7 @@ var Pagination = ({
2632
2590
  page === 0 && "pointer-events-none select-none opacity-30"
2633
2591
  )
2634
2592
  }
2635
- ), /* @__PURE__ */ React29.createElement(
2593
+ ), /* @__PURE__ */ React28.createElement(
2636
2594
  RiArrowRightSLine2,
2637
2595
  {
2638
2596
  size: 22,
@@ -2648,7 +2606,7 @@ var Pagination = ({
2648
2606
  var Pagination_default = Pagination;
2649
2607
 
2650
2608
  // app/components/Progress.tsx
2651
- import React30 from "react";
2609
+ import React29 from "react";
2652
2610
  var ProgressBar = ({
2653
2611
  progress,
2654
2612
  progressText = "",
@@ -2656,7 +2614,7 @@ var ProgressBar = ({
2656
2614
  progressTextPosition
2657
2615
  }) => {
2658
2616
  const _progress = Math == null ? void 0 : Math.min(Math == null ? void 0 : Math.max(0, progress), 100);
2659
- return /* @__PURE__ */ React30.createElement(
2617
+ return /* @__PURE__ */ React29.createElement(
2660
2618
  "div",
2661
2619
  {
2662
2620
  className: cn(
@@ -2664,7 +2622,7 @@ var ProgressBar = ({
2664
2622
  progressTextPosition === "right" ? "flex items-center gap-1" : progressTextPosition === "left" ? "flex items-center gap-1" : ""
2665
2623
  )
2666
2624
  },
2667
- /* @__PURE__ */ React30.createElement(
2625
+ /* @__PURE__ */ React29.createElement(
2668
2626
  "span",
2669
2627
  {
2670
2628
  className: cn(
@@ -2674,7 +2632,7 @@ var ProgressBar = ({
2674
2632
  },
2675
2633
  progressText
2676
2634
  ),
2677
- /* @__PURE__ */ React30.createElement(
2635
+ /* @__PURE__ */ React29.createElement(
2678
2636
  "div",
2679
2637
  {
2680
2638
  className: "w-full h-2 rounded bg-gray-200",
@@ -2683,7 +2641,7 @@ var ProgressBar = ({
2683
2641
  "aria-valuemin": 0,
2684
2642
  "aria-valuemax": 100
2685
2643
  },
2686
- /* @__PURE__ */ React30.createElement(
2644
+ /* @__PURE__ */ React29.createElement(
2687
2645
  "div",
2688
2646
  {
2689
2647
  className: `${progressColor} h-full transition-all delay-100 duration-300 rounded ease-in`,
@@ -2691,7 +2649,7 @@ var ProgressBar = ({
2691
2649
  }
2692
2650
  )
2693
2651
  ),
2694
- /* @__PURE__ */ React30.createElement(
2652
+ /* @__PURE__ */ React29.createElement(
2695
2653
  "span",
2696
2654
  {
2697
2655
  className: cn(
@@ -2706,7 +2664,7 @@ var ProgressBar = ({
2706
2664
  var Progress_default = ProgressBar;
2707
2665
 
2708
2666
  // app/components/Radio.tsx
2709
- import React31, { forwardRef as forwardRef10 } from "react";
2667
+ import React30, { forwardRef as forwardRef10 } from "react";
2710
2668
  import { cva as cva7 } from "class-variance-authority";
2711
2669
  var radioVariants = cva7("", {
2712
2670
  variants: {
@@ -2721,7 +2679,7 @@ var radioVariants = cva7("", {
2721
2679
  });
2722
2680
  var Radio = forwardRef10(
2723
2681
  ({ size, disabled, checked, className, children, id, name, ...props }, ref) => {
2724
- return /* @__PURE__ */ React31.createElement("div", { className: "relative inline-flex items-center cursor-pointer" }, /* @__PURE__ */ React31.createElement(
2682
+ return /* @__PURE__ */ React30.createElement("div", { className: "relative inline-flex items-center cursor-pointer" }, /* @__PURE__ */ React30.createElement(
2725
2683
  "input",
2726
2684
  {
2727
2685
  ...props,
@@ -2738,7 +2696,7 @@ var Radio = forwardRef10(
2738
2696
  radioVariants({ size, className })
2739
2697
  )
2740
2698
  }
2741
- ), /* @__PURE__ */ React31.createElement(
2699
+ ), /* @__PURE__ */ React30.createElement(
2742
2700
  "span",
2743
2701
  {
2744
2702
  "aria-hidden": "true",
@@ -2754,7 +2712,7 @@ Radio.displayName = "Radio";
2754
2712
  var Radio_default = Radio;
2755
2713
 
2756
2714
  // app/components/RazorPayFileUpload.tsx
2757
- import React33, { useRef as useRef7, useState as useState9 } from "react";
2715
+ import React32, { useRef as useRef7, useState as useState9 } from "react";
2758
2716
  import {
2759
2717
  RiDeleteBin6Line,
2760
2718
  RiRefreshLine,
@@ -2773,7 +2731,7 @@ import {
2773
2731
  } from "@remixicon/react";
2774
2732
 
2775
2733
  // app/components/Spinner.tsx
2776
- import React32 from "react";
2734
+ import React31 from "react";
2777
2735
  var colorVars = {
2778
2736
  primary: {
2779
2737
  c1: "var(--primary-500)",
@@ -2808,7 +2766,7 @@ var Spinner = ({ size = "md", color = "primary" }) => {
2808
2766
  return colorVars.primary;
2809
2767
  };
2810
2768
  const colorValues = getColorValues(color);
2811
- return /* @__PURE__ */ React32.createElement("div", { className: cn("relative", sizeClass) }, /* @__PURE__ */ React32.createElement(
2769
+ return /* @__PURE__ */ React31.createElement("div", { className: cn("relative", sizeClass) }, /* @__PURE__ */ React31.createElement(
2812
2770
  "div",
2813
2771
  {
2814
2772
  className: "spinner",
@@ -2822,35 +2780,34 @@ var Spinner = ({ size = "md", color = "primary" }) => {
2822
2780
  var Spinner_default = Spinner;
2823
2781
 
2824
2782
  // app/components/RazorPayFileUpload.tsx
2825
- import Image2 from "next/image";
2826
2783
  var defaultGetFileIcon = (fileName, fileType) => {
2827
2784
  var _a;
2828
2785
  const extension = ((_a = fileName.split(".").pop()) == null ? void 0 : _a.toLowerCase()) || "";
2829
2786
  if (fileType.startsWith("image/") || ["jpg", "jpeg", "png", "gif", "svg", "webp", "bmp"].includes(extension)) {
2830
- return /* @__PURE__ */ React33.createElement(RiImageLine2, { className: "w-6 h-6 text-white" });
2787
+ return /* @__PURE__ */ React32.createElement(RiImageLine2, { className: "w-6 h-6 text-white" });
2831
2788
  }
2832
2789
  if (fileType.startsWith("audio/") || ["mp3", "wav", "ogg", "m4a"].includes(extension)) {
2833
- return /* @__PURE__ */ React33.createElement(RiMusic2Line2, { className: "w-6 h-6 text-white" });
2790
+ return /* @__PURE__ */ React32.createElement(RiMusic2Line2, { className: "w-6 h-6 text-white" });
2834
2791
  }
2835
2792
  if (fileType.startsWith("video/") || ["mp4", "avi", "mkv", "mov", "wmv"].includes(extension)) {
2836
- return /* @__PURE__ */ React33.createElement(RiVideoLine2, { className: "w-6 h-6 text-white" });
2793
+ return /* @__PURE__ */ React32.createElement(RiVideoLine2, { className: "w-6 h-6 text-white" });
2837
2794
  }
2838
2795
  if (fileType.includes("excel") || ["xls", "xlsx", "csv", "txt", "ods"].includes(extension)) {
2839
- return /* @__PURE__ */ React33.createElement(RiFileExcel2Line2, { className: "w-6 h-6 text-white" });
2796
+ return /* @__PURE__ */ React32.createElement(RiFileExcel2Line2, { className: "w-6 h-6 text-white" });
2840
2797
  }
2841
2798
  if (fileType.includes("word") || ["doc", "docx", "odt", "xml"].includes(extension)) {
2842
- return /* @__PURE__ */ React33.createElement(RiFileWord2Line2, { className: "w-6 h-6 text-white" });
2799
+ return /* @__PURE__ */ React32.createElement(RiFileWord2Line2, { className: "w-6 h-6 text-white" });
2843
2800
  }
2844
2801
  if (["pptx", "pptm", "xps", "ppsx"].includes(extension)) {
2845
- return /* @__PURE__ */ React33.createElement(RiFilePpt2Line2, { className: "w-6 h-6 text-white" });
2802
+ return /* @__PURE__ */ React32.createElement(RiFilePpt2Line2, { className: "w-6 h-6 text-white" });
2846
2803
  }
2847
2804
  if (fileType.includes("zip") || ["zip", "rar", "7z", "tar", "gz"].includes(extension)) {
2848
- return /* @__PURE__ */ React33.createElement(RiFileZipLine2, { className: "w-6 h-6 text-white" });
2805
+ return /* @__PURE__ */ React32.createElement(RiFileZipLine2, { className: "w-6 h-6 text-white" });
2849
2806
  }
2850
2807
  if (fileType === "application/pdf" || extension === "pdf") {
2851
- return /* @__PURE__ */ React33.createElement(RiFilePdf2Line2, { className: "w-6 h-6 text-white" });
2808
+ return /* @__PURE__ */ React32.createElement(RiFilePdf2Line2, { className: "w-6 h-6 text-white" });
2852
2809
  }
2853
- return /* @__PURE__ */ React33.createElement(RiFileLine2, { className: "w-6 h-6 text-white" });
2810
+ return /* @__PURE__ */ React32.createElement(RiFileLine2, { className: "w-6 h-6 text-white" });
2854
2811
  };
2855
2812
  function ImageUploadControlled({
2856
2813
  items,
@@ -2896,7 +2853,7 @@ function ImageUploadControlled({
2896
2853
  text: "Uploading",
2897
2854
  color: "text-blue-600",
2898
2855
  showSpinner: true,
2899
- icon: /* @__PURE__ */ React33.createElement(Spinner_default, { size: "xs", color: "gray" }),
2856
+ icon: /* @__PURE__ */ React32.createElement(Spinner_default, { size: "xs", color: "gray" }),
2900
2857
  canPreview: false
2901
2858
  };
2902
2859
  case "success":
@@ -2904,7 +2861,7 @@ function ImageUploadControlled({
2904
2861
  text: "Completed",
2905
2862
  color: "text-green-600",
2906
2863
  showSpinner: false,
2907
- icon: /* @__PURE__ */ React33.createElement(RiCheckLine, { className: "w-3 h-3 text-white" }),
2864
+ icon: /* @__PURE__ */ React32.createElement(RiCheckLine, { className: "w-3 h-3 text-white" }),
2908
2865
  canPreview: true
2909
2866
  };
2910
2867
  case "error":
@@ -2912,7 +2869,7 @@ function ImageUploadControlled({
2912
2869
  text: "Failed",
2913
2870
  color: "text-red-600",
2914
2871
  showSpinner: false,
2915
- icon: /* @__PURE__ */ React33.createElement(RiCloseLine4, { className: "w-3 h-3 text-white" }),
2872
+ icon: /* @__PURE__ */ React32.createElement(RiCloseLine4, { className: "w-3 h-3 text-white" }),
2916
2873
  canPreview: false
2917
2874
  };
2918
2875
  default:
@@ -2943,18 +2900,24 @@ function ImageUploadControlled({
2943
2900
  const fileType = ((_b = item.file) == null ? void 0 : _b.type) || "";
2944
2901
  return getFileIcon(fileName, fileType);
2945
2902
  };
2946
- const handleUpload = React33.useCallback(
2903
+ const handleUpload = React32.useCallback(
2947
2904
  async (item) => {
2948
- if (!item.file || !onUpload)
2905
+ if (!item.file || !onUpload || item.status === "success" || item.status === "uploading") {
2949
2906
  return;
2907
+ }
2950
2908
  try {
2951
2909
  if (onUpdateItem) {
2952
2910
  onUpdateItem(item.id, { status: "uploading", progress: 0 });
2953
2911
  }
2912
+ uploadProgress.current.delete(item.id);
2954
2913
  const previewUrl = await onUpload(item.file, (progress) => {
2955
- uploadProgress.current.set(item.id, progress);
2914
+ const clampedProgress = Math.min(100, Math.max(0, progress));
2915
+ uploadProgress.current.set(item.id, clampedProgress);
2956
2916
  if (onUpdateItem) {
2957
- onUpdateItem(item.id, { progress, status: "uploading" });
2917
+ onUpdateItem(item.id, {
2918
+ progress: clampedProgress,
2919
+ status: "uploading"
2920
+ });
2958
2921
  }
2959
2922
  });
2960
2923
  if (onUpdateItem) {
@@ -2964,15 +2927,25 @@ function ImageUploadControlled({
2964
2927
  previewUrl
2965
2928
  });
2966
2929
  }
2930
+ uploadProgress.current.delete(item.id);
2967
2931
  } catch (error) {
2932
+ console.error("Upload error:", error);
2968
2933
  if (onUpdateItem) {
2969
- onUpdateItem(item.id, { progress: 0, status: "error" });
2934
+ onUpdateItem(item.id, {
2935
+ progress: 0,
2936
+ status: "error"
2937
+ });
2970
2938
  }
2939
+ uploadProgress.current.delete(item.id);
2971
2940
  }
2972
2941
  },
2973
2942
  [onUpload, onUpdateItem]
2974
2943
  );
2975
2944
  const getCurrentProgress = (item) => {
2945
+ if (item.status === "success")
2946
+ return 100;
2947
+ if (item.status === "error")
2948
+ return 0;
2976
2949
  return uploadProgress.current.get(item.id) ?? item.progress ?? 0;
2977
2950
  };
2978
2951
  const handleRetry = (id) => {
@@ -3040,7 +3013,7 @@ function ImageUploadControlled({
3040
3013
  triggerInput();
3041
3014
  }
3042
3015
  };
3043
- React33.useEffect(() => {
3016
+ React32.useEffect(() => {
3044
3017
  if (autoUpload && onUpload) {
3045
3018
  items.forEach((item) => {
3046
3019
  if (item.status === "idle" && item.file) {
@@ -3049,13 +3022,13 @@ function ImageUploadControlled({
3049
3022
  });
3050
3023
  }
3051
3024
  }, [items, autoUpload, onUpload, handleUpload]);
3052
- React33.useEffect(() => {
3025
+ React32.useEffect(() => {
3053
3026
  const previews = localPreviews == null ? void 0 : localPreviews.current;
3054
3027
  return () => {
3055
3028
  previews == null ? void 0 : previews.forEach((url) => URL == null ? void 0 : URL.revokeObjectURL(url));
3056
3029
  };
3057
3030
  }, []);
3058
- return /* @__PURE__ */ React33.createElement("div", { className: `w-full ${className}` }, /* @__PURE__ */ React33.createElement(
3031
+ return /* @__PURE__ */ React32.createElement("div", { className: `w-full ${className}` }, /* @__PURE__ */ React32.createElement(
3059
3032
  "input",
3060
3033
  {
3061
3034
  ref: inputRef,
@@ -3066,7 +3039,7 @@ function ImageUploadControlled({
3066
3039
  onChange: handleInputChange,
3067
3040
  disabled
3068
3041
  }
3069
- ), /* @__PURE__ */ React33.createElement(
3042
+ ), /* @__PURE__ */ React32.createElement(
3070
3043
  Label_default,
3071
3044
  {
3072
3045
  htmlFor: (_a = inputRef == null ? void 0 : inputRef.current) == null ? void 0 : _a.id,
@@ -3085,42 +3058,34 @@ function ImageUploadControlled({
3085
3058
  disabled && "pointer-events-none cursor-not-allowed"
3086
3059
  )
3087
3060
  },
3088
- /* @__PURE__ */ React33.createElement("div", { className: "flex items-center gap-3 text-center" }, /* @__PURE__ */ React33.createElement("div", null, /* @__PURE__ */ React33.createElement("p", { className: "text-sm text-gray-600" }, "Drag files here or", /* @__PURE__ */ React33.createElement("span", { className: "text-primary-600 font-semibold ml-1" }, "Upload"), " ", /* @__PURE__ */ React33.createElement("br", null))))
3089
- ), /* @__PURE__ */ React33.createElement("span", { className: "text-xs" }, hintText ?? `Only PNG, JPG, GIF. Max file size ${maxSizeMB}MB`), /* @__PURE__ */ React33.createElement("div", { className: "flex flex-col gap-4 mt-4" }, items == null ? void 0 : items.map((item) => {
3061
+ /* @__PURE__ */ React32.createElement("div", { className: "flex items-center gap-3 text-center" }, /* @__PURE__ */ React32.createElement("div", null, /* @__PURE__ */ React32.createElement("p", { className: "text-sm text-gray-600" }, "Drag files here or", /* @__PURE__ */ React32.createElement("span", { className: "text-primary-600 font-semibold ml-1" }, "Upload"), " ", /* @__PURE__ */ React32.createElement("br", null))))
3062
+ ), /* @__PURE__ */ React32.createElement("span", { className: "text-xs" }, hintText ?? `Only PNG, JPG, GIF. Max file size ${maxSizeMB}MB`), /* @__PURE__ */ React32.createElement("div", { className: "flex flex-col gap-4 mt-4" }, items == null ? void 0 : items.map((item) => {
3090
3063
  var _a2, _b;
3091
- const previewUrl = getPreviewUrl(item);
3092
3064
  const progress = getCurrentProgress(item);
3093
3065
  const statusInfo = getStatusDisplay(item.status);
3094
3066
  const progressColor = getProgressColor(item == null ? void 0 : item.status);
3095
3067
  const fileIcon = getItemFileIcon(item);
3096
- return /* @__PURE__ */ React33.createElement(
3068
+ return /* @__PURE__ */ React32.createElement(
3097
3069
  "div",
3098
3070
  {
3099
3071
  key: item == null ? void 0 : item.id,
3100
3072
  className: "flex items-center gap-4 bg-white max-w-[564px] w-full p-4 rounded-lg border border-gray-200"
3101
3073
  },
3102
- /* @__PURE__ */ React33.createElement("div", { className: "w-14 h-14 flex-shrink-0 rounded-md overflow-hidden relative" }, /* @__PURE__ */ React33.createElement(
3103
- Image2,
3074
+ /* @__PURE__ */ React32.createElement("div", { className: "w-14 h-14 flex-shrink-0 rounded-md overflow-hidden relative" }, /* @__PURE__ */ React32.createElement(
3075
+ "img",
3104
3076
  {
3105
3077
  src: "/fileImg.svg",
3106
3078
  className: "absolute inset-0 w-full h-full object-contain",
3107
- fill: true,
3108
3079
  alt: "file"
3109
3080
  }
3110
- ), /* @__PURE__ */ React33.createElement("div", { className: "relative z-10 mt-2 -ml-[2px] flex items-center justify-center w-full h-full text-white" }, fileIcon)),
3111
- /* @__PURE__ */ React33.createElement("div", { className: "flex-1 min-w-0" }, /* @__PURE__ */ React33.createElement("div", { className: "flex items-start justify-between gap-2 mb-3" }, /* @__PURE__ */ React33.createElement("div", { className: "min-w-0" }, /* @__PURE__ */ React33.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__ */ React33.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__ */ React33.createElement("div", { className: "ml-2 font-medium flex items-center gap-1" }, (statusInfo == null ? void 0 : statusInfo.showSpinner) ? (
3112
- // For uploading - just show spinner without circle
3113
- /* @__PURE__ */ React33.createElement(React33.Fragment, null, statusInfo.icon, /* @__PURE__ */ React33.createElement("span", { className: statusInfo.color }, statusInfo.text))
3114
- ) : (
3115
- // For completed/failed - show circle with icon
3116
- /* @__PURE__ */ React33.createElement(React33.Fragment, null, /* @__PURE__ */ React33.createElement(
3117
- "div",
3118
- {
3119
- 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"}`
3120
- },
3121
- statusInfo == null ? void 0 : statusInfo.icon
3122
- ), /* @__PURE__ */ React33.createElement("span", { className: statusInfo.color }, statusInfo == null ? void 0 : statusInfo.text))
3123
- )))), /* @__PURE__ */ React33.createElement("div", { className: "flex items-center gap-2" }, /* @__PURE__ */ React33.createElement("div", { className: "flex items-center gap-2" }, onPreview && (item == null ? void 0 : item.status) === "success" && /* @__PURE__ */ React33.createElement(
3081
+ ), /* @__PURE__ */ React32.createElement("div", { className: "relative z-10 mt-2 -ml-[2px] flex items-center justify-center w-full h-full text-white" }, fileIcon)),
3082
+ /* @__PURE__ */ React32.createElement("div", { className: "flex-1 min-w-0" }, /* @__PURE__ */ React32.createElement("div", { className: "flex items-start justify-between gap-2 mb-3" }, /* @__PURE__ */ React32.createElement("div", { className: "min-w-0" }, /* @__PURE__ */ React32.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__ */ React32.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__ */ React32.createElement("div", { className: "ml-2 font-medium flex items-center gap-1" }, (statusInfo == null ? void 0 : statusInfo.showSpinner) ? /* @__PURE__ */ React32.createElement(React32.Fragment, null, statusInfo.icon, /* @__PURE__ */ React32.createElement("span", { className: statusInfo.color }, statusInfo.text)) : /* @__PURE__ */ React32.createElement(React32.Fragment, null, /* @__PURE__ */ React32.createElement(
3083
+ "div",
3084
+ {
3085
+ 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"}`
3086
+ },
3087
+ statusInfo == null ? void 0 : statusInfo.icon
3088
+ ), /* @__PURE__ */ React32.createElement("span", { className: statusInfo.color }, statusInfo == null ? void 0 : statusInfo.text))))), /* @__PURE__ */ React32.createElement("div", { className: "flex items-center gap-2" }, /* @__PURE__ */ React32.createElement("div", { className: "flex items-center gap-2" }, onPreview && (item == null ? void 0 : item.status) === "success" && /* @__PURE__ */ React32.createElement(
3124
3089
  "button",
3125
3090
  {
3126
3091
  type: "button",
@@ -3128,8 +3093,8 @@ function ImageUploadControlled({
3128
3093
  className: "p-2 rounded-md hover:bg-gray-100 transition-colors text-gray-600",
3129
3094
  title: "Preview"
3130
3095
  },
3131
- /* @__PURE__ */ React33.createElement(RiEyeLine, { size: 16 })
3132
- ), (item == null ? void 0 : item.status) === "error" && /* @__PURE__ */ React33.createElement(React33.Fragment, null, /* @__PURE__ */ React33.createElement("span", { className: "hidden sm:inline-block" }, /* @__PURE__ */ React33.createElement(
3096
+ /* @__PURE__ */ React32.createElement(RiEyeLine, { size: 16 })
3097
+ ), (item == null ? void 0 : item.status) === "error" && /* @__PURE__ */ React32.createElement(React32.Fragment, null, /* @__PURE__ */ React32.createElement("span", { className: "hidden sm:inline-block" }, /* @__PURE__ */ React32.createElement(
3133
3098
  Button_default,
3134
3099
  {
3135
3100
  variant: "outlined",
@@ -3139,9 +3104,9 @@ function ImageUploadControlled({
3139
3104
  onClick: () => handleRetry(item == null ? void 0 : item.id),
3140
3105
  className: "whitespace-nowrap h-[30px]"
3141
3106
  },
3142
- /* @__PURE__ */ React33.createElement(RiRefreshLine, { size: 16 }),
3107
+ /* @__PURE__ */ React32.createElement(RiRefreshLine, { size: 16 }),
3143
3108
  "Try Again"
3144
- )), /* @__PURE__ */ React33.createElement("span", { className: "sm:hidden" }, /* @__PURE__ */ React33.createElement(
3109
+ )), /* @__PURE__ */ React32.createElement("span", { className: "sm:hidden" }, /* @__PURE__ */ React32.createElement(
3145
3110
  Button_default,
3146
3111
  {
3147
3112
  variant: "outlined",
@@ -3151,8 +3116,8 @@ function ImageUploadControlled({
3151
3116
  onClick: () => handleRetry(item == null ? void 0 : item.id),
3152
3117
  className: "h-[30px] px-1 py-1"
3153
3118
  },
3154
- /* @__PURE__ */ React33.createElement(RiRefreshLine, { size: 16 })
3155
- ))), /* @__PURE__ */ React33.createElement(
3119
+ /* @__PURE__ */ React32.createElement(RiRefreshLine, { size: 16 })
3120
+ ))), /* @__PURE__ */ React32.createElement(
3156
3121
  "button",
3157
3122
  {
3158
3123
  type: "button",
@@ -3160,28 +3125,28 @@ function ImageUploadControlled({
3160
3125
  className: "p-2 rounded-md hover:bg-gray-100 transition-colors text-gray-600",
3161
3126
  title: "Delete"
3162
3127
  },
3163
- /* @__PURE__ */ React33.createElement(RiDeleteBin6Line, { size: 16 })
3164
- )))), /* @__PURE__ */ React33.createElement("div", { className: "flex items-center gap-4" }, /* @__PURE__ */ React33.createElement("div", { className: "flex-1" }, /* @__PURE__ */ React33.createElement(
3165
- Progress_default,
3128
+ /* @__PURE__ */ React32.createElement(RiDeleteBin6Line, { size: 16 })
3129
+ )))), /* @__PURE__ */ React32.createElement("div", { className: "flex items-center gap-4" }, /* @__PURE__ */ React32.createElement("div", { className: "flex-1" }, /* @__PURE__ */ React32.createElement("div", { className: "w-full h-2 bg-gray-200 rounded-full overflow-hidden" }, /* @__PURE__ */ React32.createElement(
3130
+ "div",
3166
3131
  {
3167
- progressColor,
3168
- progress
3132
+ className: `h-full rounded-full transition-all duration-300 ease-out ${progressColor}`,
3133
+ style: { width: `${progress}%` }
3169
3134
  }
3170
- )), /* @__PURE__ */ React33.createElement("div", { className: "text-xs text-gray-500 w-12 text-right" }, item.status === "error" ? "--%" : `${Math.round(progress)}%`)))
3135
+ ))), /* @__PURE__ */ React32.createElement("div", { className: "text-xs text-gray-500 w-12 text-right" }, item.status === "error" ? "--%" : item.status === "success" ? "100%" : `${Math.round(progress)}%`)))
3171
3136
  );
3172
3137
  })));
3173
3138
  }
3174
3139
 
3175
3140
  // app/components/Sidebar.tsx
3176
- import React34, { useState as useState10 } from "react";
3177
- import Link2 from "next/link";
3141
+ import React33, { useState as useState10 } from "react";
3142
+ import Link from "next/link";
3178
3143
  import {
3179
3144
  RiArrowDownSLine as RiArrowDownSLine5,
3180
3145
  RiArrowRightSLine as RiArrowRightSLine3
3181
3146
  } from "@remixicon/react";
3182
3147
  import { usePathname } from "next/navigation";
3183
3148
  var Sidebar = ({ children, collapsed, setCollapsed, dense = false }) => {
3184
- return /* @__PURE__ */ React34.createElement(
3149
+ return /* @__PURE__ */ React33.createElement(
3185
3150
  "div",
3186
3151
  {
3187
3152
  onMouseEnter: () => setCollapsed(true),
@@ -3191,14 +3156,14 @@ var Sidebar = ({ children, collapsed, setCollapsed, dense = false }) => {
3191
3156
  !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"
3192
3157
  )
3193
3158
  },
3194
- /* @__PURE__ */ React34.createElement("div", null, children)
3159
+ /* @__PURE__ */ React33.createElement("div", null, children)
3195
3160
  );
3196
3161
  };
3197
3162
  var SidebarHeader = ({
3198
3163
  children,
3199
3164
  dense = false
3200
3165
  }) => {
3201
- return /* @__PURE__ */ React34.createElement("div", { className: cn("z-20", dense ? "mb-3" : "mb-4") }, /* @__PURE__ */ React34.createElement("div", { className: "flex justify-between items-center" }, /* @__PURE__ */ React34.createElement("span", { className: "whitespace-nowrap" }, children)));
3166
+ return /* @__PURE__ */ React33.createElement("div", { className: cn("z-20", dense ? "mb-3" : "mb-4") }, /* @__PURE__ */ React33.createElement("div", { className: "flex justify-between items-center" }, /* @__PURE__ */ React33.createElement("span", { className: "whitespace-nowrap" }, children)));
3202
3167
  };
3203
3168
  var SidebarMenu = ({
3204
3169
  collapsed,
@@ -3211,7 +3176,7 @@ var SidebarMenu = ({
3211
3176
  const toggleMenu = (label) => {
3212
3177
  setOpenMenus((prev) => ({ ...prev, [label]: !prev[label] }));
3213
3178
  };
3214
- React34.useEffect(() => {
3179
+ React33.useEffect(() => {
3215
3180
  if (!collapsed) {
3216
3181
  setOpenMenus({});
3217
3182
  }
@@ -3227,13 +3192,13 @@ var SidebarMenu = ({
3227
3192
  }
3228
3193
  };
3229
3194
  const renderMenuItems = (items, level = 0) => {
3230
- return /* @__PURE__ */ React34.createElement("ul", { className: level > 0 ? "ml-5 border-l border-gray-200" : "" }, items == null ? void 0 : items.map((item, index) => {
3195
+ return /* @__PURE__ */ React33.createElement("ul", { className: level > 0 ? "ml-5 border-l border-gray-200" : "" }, items == null ? void 0 : items.map((item, index) => {
3231
3196
  const hasSubItems = item.subItems && item.subItems.length > 0;
3232
3197
  const isActive = item.href === currentPath;
3233
3198
  const isOpen = openMenus[item.label];
3234
3199
  const paddingLeft = level === 0 ? dense ? "10px" : "12px" : `${level * 5 + (dense ? 10 : 12)}px`;
3235
- return /* @__PURE__ */ React34.createElement("li", { key: index }, hasSubItems ? /* @__PURE__ */ React34.createElement(
3236
- Link2,
3200
+ return /* @__PURE__ */ React33.createElement("li", { key: index }, hasSubItems ? /* @__PURE__ */ React33.createElement(
3201
+ Link,
3237
3202
  {
3238
3203
  href: item.href || "#",
3239
3204
  className: cn(
@@ -3253,22 +3218,22 @@ var SidebarMenu = ({
3253
3218
  e.preventDefault();
3254
3219
  }
3255
3220
  },
3256
- /* @__PURE__ */ React34.createElement("div", { className: "flex items-center gap-2" }, item.icon && level === 0 && /* @__PURE__ */ React34.createElement("span", { className: dense ? "text-xs" : "text-text-sm" }, item.icon), /* @__PURE__ */ React34.createElement("span", { className: cn(!collapsed ? "opacity-0" : "") }, item.label)),
3257
- collapsed && hasSubItems && /* @__PURE__ */ React34.createElement("span", null, isOpen ? /* @__PURE__ */ React34.createElement(
3221
+ /* @__PURE__ */ React33.createElement("div", { className: "flex items-center gap-2" }, item.icon && level === 0 && /* @__PURE__ */ React33.createElement("span", { className: dense ? "text-xs" : "text-text-sm" }, item.icon), /* @__PURE__ */ React33.createElement("span", { className: cn(!collapsed ? "opacity-0" : "") }, item.label)),
3222
+ collapsed && hasSubItems && /* @__PURE__ */ React33.createElement("span", null, isOpen ? /* @__PURE__ */ React33.createElement(
3258
3223
  RiArrowDownSLine5,
3259
3224
  {
3260
3225
  size: dense ? 16 : 18,
3261
3226
  color: "#475467"
3262
3227
  }
3263
- ) : /* @__PURE__ */ React34.createElement(
3228
+ ) : /* @__PURE__ */ React33.createElement(
3264
3229
  RiArrowRightSLine3,
3265
3230
  {
3266
3231
  size: dense ? 16 : 18,
3267
3232
  color: "#475467"
3268
3233
  }
3269
3234
  ))
3270
- ) : /* @__PURE__ */ React34.createElement(
3271
- Link2,
3235
+ ) : /* @__PURE__ */ React33.createElement(
3236
+ Link,
3272
3237
  {
3273
3238
  href: item.href || "#",
3274
3239
  className: cn(
@@ -3279,12 +3244,12 @@ var SidebarMenu = ({
3279
3244
  level > 0 ? "text-sm font-medium" : "font-semibold"
3280
3245
  )
3281
3246
  },
3282
- item.icon && level === 0 && /* @__PURE__ */ React34.createElement("span", { className: dense ? "text-xs" : "text-text-sm" }, item.icon),
3283
- /* @__PURE__ */ React34.createElement("span", { className: cn(!collapsed ? "opacity-0" : "") }, item.label)
3284
- ), hasSubItems && isOpen && /* @__PURE__ */ React34.createElement("div", { className: dense ? "mt-0.5" : "mt-1" }, renderMenuItems(item.subItems, level + 1)));
3247
+ item.icon && level === 0 && /* @__PURE__ */ React33.createElement("span", { className: dense ? "text-xs" : "text-text-sm" }, item.icon),
3248
+ /* @__PURE__ */ React33.createElement("span", { className: cn(!collapsed ? "opacity-0" : "") }, item.label)
3249
+ ), hasSubItems && isOpen && /* @__PURE__ */ React33.createElement("div", { className: dense ? "mt-0.5" : "mt-1" }, renderMenuItems(item.subItems, level + 1)));
3285
3250
  }));
3286
3251
  };
3287
- return /* @__PURE__ */ React34.createElement(
3252
+ return /* @__PURE__ */ React33.createElement(
3288
3253
  "nav",
3289
3254
  {
3290
3255
  className: cn(
@@ -3293,7 +3258,7 @@ var SidebarMenu = ({
3293
3258
  scroll && collapsed ? "overflow-y-auto customScroll" : "overflow-hidden"
3294
3259
  )
3295
3260
  },
3296
- /* @__PURE__ */ React34.createElement(
3261
+ /* @__PURE__ */ React33.createElement(
3297
3262
  "ul",
3298
3263
  {
3299
3264
  className: cn(
@@ -3301,13 +3266,13 @@ var SidebarMenu = ({
3301
3266
  dense ? "my-1.5" : "my-2"
3302
3267
  )
3303
3268
  },
3304
- navItems == null ? void 0 : navItems.map((parentItem, parentIndex) => /* @__PURE__ */ React34.createElement(
3269
+ navItems == null ? void 0 : navItems.map((parentItem, parentIndex) => /* @__PURE__ */ React33.createElement(
3305
3270
  "li",
3306
3271
  {
3307
3272
  key: parentIndex,
3308
3273
  className: "flex flex-col gap-3 mb-1 whitespace-nowrap overflow-hidden"
3309
3274
  },
3310
- /* @__PURE__ */ React34.createElement(
3275
+ /* @__PURE__ */ React33.createElement(
3311
3276
  "p",
3312
3277
  {
3313
3278
  className: cn(
@@ -3331,7 +3296,7 @@ var SidebarFooter = ({
3331
3296
  dense = false
3332
3297
  }) => {
3333
3298
  const currentPath = usePathname();
3334
- return /* @__PURE__ */ React34.createElement(
3299
+ return /* @__PURE__ */ React33.createElement(
3335
3300
  "div",
3336
3301
  {
3337
3302
  className: cn({
@@ -3343,8 +3308,8 @@ var SidebarFooter = ({
3343
3308
  }),
3344
3309
  onClick: () => setCollapsed(true)
3345
3310
  },
3346
- collapsed && /* @__PURE__ */ React34.createElement("div", { className: "shadow-md" }, /* @__PURE__ */ React34.createElement(Divider_default, null)),
3347
- navItems && navItems.length > 0 && /* @__PURE__ */ React34.createElement("nav", { className: "flex-grow w-full" }, /* @__PURE__ */ React34.createElement(
3311
+ collapsed && /* @__PURE__ */ React33.createElement("div", { className: "shadow-md" }, /* @__PURE__ */ React33.createElement(Divider_default, null)),
3312
+ navItems && navItems.length > 0 && /* @__PURE__ */ React33.createElement("nav", { className: "flex-grow w-full" }, /* @__PURE__ */ React33.createElement(
3348
3313
  "ul",
3349
3314
  {
3350
3315
  className: cn(
@@ -3354,13 +3319,13 @@ var SidebarFooter = ({
3354
3319
  },
3355
3320
  navItems == null ? void 0 : navItems.map((parentItem, parentIndex) => {
3356
3321
  var _a;
3357
- return /* @__PURE__ */ React34.createElement(
3322
+ return /* @__PURE__ */ React33.createElement(
3358
3323
  "li",
3359
3324
  {
3360
3325
  key: parentIndex,
3361
3326
  className: "flex flex-col gap-3 mb-1 whitespace-nowrap overflow-hidden"
3362
3327
  },
3363
- /* @__PURE__ */ React34.createElement(
3328
+ /* @__PURE__ */ React33.createElement(
3364
3329
  "p",
3365
3330
  {
3366
3331
  className: cn({
@@ -3373,8 +3338,8 @@ var SidebarFooter = ({
3373
3338
  },
3374
3339
  parentItem.label
3375
3340
  ),
3376
- /* @__PURE__ */ React34.createElement("ul", null, (_a = parentItem == null ? void 0 : parentItem.items) == null ? void 0 : _a.map((item, index) => /* @__PURE__ */ React34.createElement("li", { key: index }, /* @__PURE__ */ React34.createElement(
3377
- Link2,
3341
+ /* @__PURE__ */ React33.createElement("ul", null, (_a = parentItem == null ? void 0 : parentItem.items) == null ? void 0 : _a.map((item, index) => /* @__PURE__ */ React33.createElement("li", { key: index }, /* @__PURE__ */ React33.createElement(
3342
+ Link,
3378
3343
  {
3379
3344
  className: cn({
3380
3345
  "hover:bg-gray-100 flex items-center cursor-pointer rounded-md transition-colors duration-300 font-semibold whitespace-nowrap overflow-hidden": true,
@@ -3387,12 +3352,12 @@ var SidebarFooter = ({
3387
3352
  href: (item == null ? void 0 : item.href) || "#",
3388
3353
  passHref: true
3389
3354
  },
3390
- /* @__PURE__ */ React34.createElement(
3355
+ /* @__PURE__ */ React33.createElement(
3391
3356
  "div",
3392
3357
  {
3393
3358
  className: `flex items-center gap-2 whitespace-nowrap`
3394
3359
  },
3395
- /* @__PURE__ */ React34.createElement(
3360
+ /* @__PURE__ */ React33.createElement(
3396
3361
  "span",
3397
3362
  {
3398
3363
  className: dense ? "text-xs" : "text-text-sm"
@@ -3400,7 +3365,7 @@ var SidebarFooter = ({
3400
3365
  " ",
3401
3366
  item.icon
3402
3367
  ),
3403
- /* @__PURE__ */ React34.createElement("span", { className: cn(!collapsed ? "opacity-0" : "") }, item.label)
3368
+ /* @__PURE__ */ React33.createElement("span", { className: cn(!collapsed ? "opacity-0" : "") }, item.label)
3404
3369
  )
3405
3370
  ))))
3406
3371
  );
@@ -3415,7 +3380,7 @@ Sidebar.Footer = SidebarFooter;
3415
3380
  var Sidebar_default = Sidebar;
3416
3381
 
3417
3382
  // app/components/Skeleton.tsx
3418
- import React35 from "react";
3383
+ import React34 from "react";
3419
3384
  var Skeleton = ({
3420
3385
  width = "100%",
3421
3386
  height = "100%",
@@ -3428,7 +3393,7 @@ var Skeleton = ({
3428
3393
  borderRadius: circle ? "50%" : void 0,
3429
3394
  display: "block"
3430
3395
  };
3431
- return /* @__PURE__ */ React35.createElement(
3396
+ return /* @__PURE__ */ React34.createElement(
3432
3397
  "span",
3433
3398
  {
3434
3399
  className: cn(
@@ -3445,11 +3410,11 @@ var Skeleton = ({
3445
3410
  var Skeleton_default = Skeleton;
3446
3411
 
3447
3412
  // app/components/Slider.tsx
3448
- import React36, { forwardRef as forwardRef11 } from "react";
3413
+ import React35, { forwardRef as forwardRef11 } from "react";
3449
3414
  var Slider = forwardRef11(
3450
3415
  ({ value, min = 0, max = 100, size = "sm", ...props }, ref) => {
3451
3416
  const progress = (value - min) / (max - min) * 100;
3452
- return /* @__PURE__ */ React36.createElement(React36.Fragment, null, /* @__PURE__ */ React36.createElement(
3417
+ return /* @__PURE__ */ React35.createElement(React35.Fragment, null, /* @__PURE__ */ React35.createElement(
3453
3418
  "input",
3454
3419
  {
3455
3420
  ref,
@@ -3473,10 +3438,10 @@ Slider.displayName = "Slider";
3473
3438
  var Slider_default = Slider;
3474
3439
 
3475
3440
  // app/components/SplitButton.tsx
3476
- import React37, { forwardRef as forwardRef12 } from "react";
3441
+ import React36, { forwardRef as forwardRef12 } from "react";
3477
3442
  var SplitButton = forwardRef12(
3478
3443
  ({ children, className = "", size = "md", appearance = "primary", compact = false, ...props }, ref) => {
3479
- return /* @__PURE__ */ React37.createElement(
3444
+ return /* @__PURE__ */ React36.createElement(
3480
3445
  "div",
3481
3446
  {
3482
3447
  ref,
@@ -3491,7 +3456,7 @@ SplitButton.displayName = "SplitButton";
3491
3456
  var SplitButton_default = SplitButton;
3492
3457
 
3493
3458
  // app/components/Stepper.tsx
3494
- import React38, { useRef as useRef8 } from "react";
3459
+ import React37, { useRef as useRef8 } from "react";
3495
3460
  import { RiCheckLine as RiCheckLine2 } from "@remixicon/react";
3496
3461
  var Stepper = ({
3497
3462
  stepsConfig,
@@ -3507,14 +3472,14 @@ var Stepper = ({
3507
3472
  return null;
3508
3473
  }
3509
3474
  const ActiveComponent = (_a = stepsConfig[currentStep - 1]) == null ? void 0 : _a.Component;
3510
- return /* @__PURE__ */ React38.createElement(
3475
+ return /* @__PURE__ */ React37.createElement(
3511
3476
  "div",
3512
3477
  {
3513
3478
  role: "region",
3514
3479
  "aria-label": "Step Progress",
3515
3480
  className: cn(position !== "horizontal" && "flex")
3516
3481
  },
3517
- /* @__PURE__ */ React38.createElement(
3482
+ /* @__PURE__ */ React37.createElement(
3518
3483
  "div",
3519
3484
  {
3520
3485
  className: cn(
@@ -3524,7 +3489,7 @@ var Stepper = ({
3524
3489
  role: "list",
3525
3490
  "aria-label": `Progress: ${currentStep} of ${stepsConfig.length} steps`
3526
3491
  },
3527
- stepsConfig == null ? void 0 : stepsConfig.map((step, index) => /* @__PURE__ */ React38.createElement(
3492
+ stepsConfig == null ? void 0 : stepsConfig.map((step, index) => /* @__PURE__ */ React37.createElement(
3528
3493
  "div",
3529
3494
  {
3530
3495
  key: index,
@@ -3539,7 +3504,7 @@ var Stepper = ({
3539
3504
  "aria-current": currentStep === index + 1 ? "step" : void 0,
3540
3505
  "aria-label": `${step.name}${step.helperName ? `, ${step.helperName}` : ""}, ${currentStep > index + 1 || isComplete ? "completed" : currentStep === index + 1 ? "current step" : "pending"}`
3541
3506
  },
3542
- /* @__PURE__ */ React38.createElement(
3507
+ /* @__PURE__ */ React37.createElement(
3543
3508
  "div",
3544
3509
  {
3545
3510
  className: cn(
@@ -3547,23 +3512,23 @@ var Stepper = ({
3547
3512
  position === "horizontal" ? "flex items-center" : "flex flex-col"
3548
3513
  )
3549
3514
  },
3550
- /* @__PURE__ */ React38.createElement(
3515
+ /* @__PURE__ */ React37.createElement(
3551
3516
  "div",
3552
3517
  {
3553
3518
  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" : ""}`,
3554
3519
  role: "status",
3555
3520
  "aria-label": `Step ${index + 1} ${currentStep > index + 1 || isComplete ? "completed" : currentStep === index + 1 ? "current" : "pending"}`
3556
3521
  },
3557
- currentStep === index + 1 && !isComplete && /* @__PURE__ */ React38.createElement(
3522
+ currentStep === index + 1 && !isComplete && /* @__PURE__ */ React37.createElement(
3558
3523
  "span",
3559
3524
  {
3560
3525
  "aria-hidden": "true",
3561
3526
  className: "w-[10px] h-[10px] rounded-full bg-primary-600"
3562
3527
  }
3563
3528
  ),
3564
- (currentStep > index + 1 || isComplete) && /* @__PURE__ */ React38.createElement("span", { "aria-hidden": "true" }, /* @__PURE__ */ React38.createElement(RiCheckLine2, { size: 12, color: "#fff" }))
3529
+ (currentStep > index + 1 || isComplete) && /* @__PURE__ */ React37.createElement("span", { "aria-hidden": "true" }, /* @__PURE__ */ React37.createElement(RiCheckLine2, { size: 12, color: "#fff" }))
3565
3530
  ),
3566
- index !== stepsConfig.length - 1 && /* @__PURE__ */ React38.createElement(
3531
+ index !== stepsConfig.length - 1 && /* @__PURE__ */ React37.createElement(
3567
3532
  "div",
3568
3533
  {
3569
3534
  className: cn(
@@ -3572,7 +3537,7 @@ var Stepper = ({
3572
3537
  ),
3573
3538
  "aria-hidden": "true"
3574
3539
  },
3575
- /* @__PURE__ */ React38.createElement(
3540
+ /* @__PURE__ */ React37.createElement(
3576
3541
  "p",
3577
3542
  {
3578
3543
  className: cn(
@@ -3583,7 +3548,7 @@ var Stepper = ({
3583
3548
  )
3584
3549
  )
3585
3550
  ),
3586
- /* @__PURE__ */ React38.createElement(
3551
+ /* @__PURE__ */ React37.createElement(
3587
3552
  "div",
3588
3553
  {
3589
3554
  "aria-hidden": currentStep !== index + 1,
@@ -3592,7 +3557,7 @@ var Stepper = ({
3592
3557
  position === "vertical" || (step == null ? void 0 : step.helperName) ? "-mt-1" : ""
3593
3558
  )
3594
3559
  },
3595
- /* @__PURE__ */ React38.createElement(
3560
+ /* @__PURE__ */ React37.createElement(
3596
3561
  "span",
3597
3562
  {
3598
3563
  "aria-label": "Helper text",
@@ -3600,27 +3565,27 @@ var Stepper = ({
3600
3565
  },
3601
3566
  step == null ? void 0 : step.helperName
3602
3567
  ),
3603
- /* @__PURE__ */ React38.createElement("p", null, step == null ? void 0 : step.name)
3568
+ /* @__PURE__ */ React37.createElement("p", null, step == null ? void 0 : step.name)
3604
3569
  )
3605
3570
  ))
3606
3571
  ),
3607
- ActiveComponent && /* @__PURE__ */ React38.createElement(
3572
+ ActiveComponent && /* @__PURE__ */ React37.createElement(
3608
3573
  "div",
3609
3574
  {
3610
3575
  role: "tabpanel",
3611
3576
  "aria-label": `Current step: ${(_b = stepsConfig[currentStep - 1]) == null ? void 0 : _b.name}`,
3612
3577
  tabIndex: 0
3613
3578
  },
3614
- /* @__PURE__ */ React38.createElement(ActiveComponent, null)
3579
+ /* @__PURE__ */ React37.createElement(ActiveComponent, null)
3615
3580
  )
3616
3581
  );
3617
3582
  };
3618
3583
  var Stepper_default = Stepper;
3619
3584
 
3620
3585
  // app/components/TableComponents.tsx
3621
- import React39 from "react";
3586
+ import React38 from "react";
3622
3587
  var Table = ({ children, className, dense, ...props }) => {
3623
- return /* @__PURE__ */ React39.createElement(
3588
+ return /* @__PURE__ */ React38.createElement(
3624
3589
  "table",
3625
3590
  {
3626
3591
  ...props,
@@ -3638,7 +3603,7 @@ var TableHead = ({
3638
3603
  className,
3639
3604
  ...props
3640
3605
  }) => {
3641
- return /* @__PURE__ */ React39.createElement(
3606
+ return /* @__PURE__ */ React38.createElement(
3642
3607
  "thead",
3643
3608
  {
3644
3609
  ...props,
@@ -3652,7 +3617,7 @@ var TableBody = ({
3652
3617
  className,
3653
3618
  ...props
3654
3619
  }) => {
3655
- return /* @__PURE__ */ React39.createElement("tbody", { ...props, className: cn(className) }, children);
3620
+ return /* @__PURE__ */ React38.createElement("tbody", { ...props, className: cn(className) }, children);
3656
3621
  };
3657
3622
  var TableRow = ({
3658
3623
  children,
@@ -3660,7 +3625,7 @@ var TableRow = ({
3660
3625
  indent,
3661
3626
  ...props
3662
3627
  }) => {
3663
- return /* @__PURE__ */ React39.createElement(
3628
+ return /* @__PURE__ */ React38.createElement(
3664
3629
  "tr",
3665
3630
  {
3666
3631
  ...props,
@@ -3684,7 +3649,7 @@ var TableHeadCell = ({
3684
3649
  right,
3685
3650
  ...props
3686
3651
  }) => {
3687
- return /* @__PURE__ */ React39.createElement(
3652
+ return /* @__PURE__ */ React38.createElement(
3688
3653
  "th",
3689
3654
  {
3690
3655
  ...props,
@@ -3702,7 +3667,7 @@ var TableHeadCell = ({
3702
3667
  right
3703
3668
  }
3704
3669
  },
3705
- /* @__PURE__ */ React39.createElement("div", { className: "flex items-center gap-1" }, /* @__PURE__ */ React39.createElement("span", { className: "font-medium text-xs" }, children), icon && /* @__PURE__ */ React39.createElement(
3670
+ /* @__PURE__ */ React38.createElement("div", { className: "flex items-center gap-1" }, /* @__PURE__ */ React38.createElement("span", { className: "font-medium text-xs" }, children), icon && /* @__PURE__ */ React38.createElement(
3706
3671
  "span",
3707
3672
  {
3708
3673
  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"
@@ -3722,7 +3687,7 @@ var TableDataCell = ({
3722
3687
  right,
3723
3688
  ...props
3724
3689
  }) => {
3725
- return /* @__PURE__ */ React39.createElement(
3690
+ return /* @__PURE__ */ React38.createElement(
3726
3691
  "td",
3727
3692
  {
3728
3693
  ...props,
@@ -3740,8 +3705,8 @@ var TableDataCell = ({
3740
3705
  right
3741
3706
  }
3742
3707
  },
3743
- /* @__PURE__ */ React39.createElement("span", { className: "font-medium text-sm" }, children),
3744
- icon && /* @__PURE__ */ React39.createElement(
3708
+ /* @__PURE__ */ React38.createElement("span", { className: "font-medium text-sm" }, children),
3709
+ icon && /* @__PURE__ */ React38.createElement(
3745
3710
  "span",
3746
3711
  {
3747
3712
  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"
@@ -3753,13 +3718,13 @@ var TableDataCell = ({
3753
3718
  var TableComponents_default = Table;
3754
3719
 
3755
3720
  // app/components/Tabs.tsx
3756
- import React40 from "react";
3721
+ import React39 from "react";
3757
3722
  var TabsContainer = ({
3758
3723
  children,
3759
3724
  className,
3760
3725
  position = "horizontal"
3761
3726
  }) => {
3762
- return /* @__PURE__ */ React40.createElement("div", { className: cn(position === "vertical" ? "flex" : "block", className) }, children);
3727
+ return /* @__PURE__ */ React39.createElement("div", { className: cn(position === "vertical" ? "flex" : "block", className) }, children);
3763
3728
  };
3764
3729
  var TabList = ({
3765
3730
  onChange,
@@ -3770,11 +3735,11 @@ var TabList = ({
3770
3735
  className,
3771
3736
  position = "horizontal"
3772
3737
  }) => {
3773
- const [focusIndex, setFocusIndex] = React40.useState(0);
3774
- const tabRefs = React40.useRef([]);
3738
+ const [focusIndex, setFocusIndex] = React39.useState(0);
3739
+ const tabRefs = React39.useRef([]);
3775
3740
  const handleKeyDown = (e, index) => {
3776
3741
  var _a, _b, _c, _d, _e, _f;
3777
- const tabCount = React40.Children.count(children);
3742
+ const tabCount = React39.Children.count(children);
3778
3743
  switch (e.key) {
3779
3744
  case "ArrowRight":
3780
3745
  if (position === "horizontal") {
@@ -3821,7 +3786,7 @@ var TabList = ({
3821
3786
  break;
3822
3787
  }
3823
3788
  };
3824
- return /* @__PURE__ */ React40.createElement(
3789
+ return /* @__PURE__ */ React39.createElement(
3825
3790
  "div",
3826
3791
  {
3827
3792
  className: cn(
@@ -3833,8 +3798,8 @@ var TabList = ({
3833
3798
  "aria-label": ariaLabel,
3834
3799
  "aria-orientation": position
3835
3800
  },
3836
- React40.Children.map(children, (child, index) => {
3837
- if (React40.isValidElement(child)) {
3801
+ React39.Children.map(children, (child, index) => {
3802
+ if (React39.isValidElement(child)) {
3838
3803
  const childProps = {
3839
3804
  onChange,
3840
3805
  box,
@@ -3844,7 +3809,7 @@ var TabList = ({
3844
3809
  onKeyDown: (e) => handleKeyDown(e, index),
3845
3810
  tabIndex: index === focusIndex ? 0 : -1
3846
3811
  };
3847
- return React40.cloneElement(child, {
3812
+ return React39.cloneElement(child, {
3848
3813
  ...childProps,
3849
3814
  ref: (el) => {
3850
3815
  tabRefs.current[index] = el;
@@ -3863,7 +3828,7 @@ var TabList = ({
3863
3828
  })
3864
3829
  );
3865
3830
  };
3866
- var Tab = React40.forwardRef(
3831
+ var Tab = React39.forwardRef(
3867
3832
  ({
3868
3833
  label,
3869
3834
  value,
@@ -3879,7 +3844,7 @@ var Tab = React40.forwardRef(
3879
3844
  position = "horizontal"
3880
3845
  }, ref) => {
3881
3846
  const isSelected = value === selectedTabValue;
3882
- return /* @__PURE__ */ React40.createElement(
3847
+ return /* @__PURE__ */ React39.createElement(
3883
3848
  "button",
3884
3849
  {
3885
3850
  ref,
@@ -3920,9 +3885,9 @@ var Tab = React40.forwardRef(
3920
3885
  ),
3921
3886
  onClick: () => onChange(value)
3922
3887
  },
3923
- icon && /* @__PURE__ */ React40.createElement("span", { "aria-hidden": "true" }, icon),
3888
+ icon && /* @__PURE__ */ React39.createElement("span", { "aria-hidden": "true" }, icon),
3924
3889
  label,
3925
- content && /* @__PURE__ */ React40.createElement("span", { "aria-hidden": "true" }, content)
3890
+ content && /* @__PURE__ */ React39.createElement("span", { "aria-hidden": "true" }, content)
3926
3891
  );
3927
3892
  }
3928
3893
  );
@@ -3932,7 +3897,7 @@ var TabPanel = ({
3932
3897
  children,
3933
3898
  className
3934
3899
  }) => {
3935
- return value === currentValue ? /* @__PURE__ */ React40.createElement(
3900
+ return value === currentValue ? /* @__PURE__ */ React39.createElement(
3936
3901
  "div",
3937
3902
  {
3938
3903
  role: "tabpanel",
@@ -3948,7 +3913,7 @@ var Tabs_default = TabsContainer;
3948
3913
  Tab.displayName = "Tab";
3949
3914
 
3950
3915
  // app/components/Textarea.tsx
3951
- import React41, {
3916
+ import React40, {
3952
3917
  forwardRef as forwardRef13
3953
3918
  } from "react";
3954
3919
  var Textarea = forwardRef13(
@@ -3963,7 +3928,7 @@ var Textarea = forwardRef13(
3963
3928
  id,
3964
3929
  ...props
3965
3930
  }, ref) => {
3966
- return /* @__PURE__ */ React41.createElement(
3931
+ return /* @__PURE__ */ React40.createElement(
3967
3932
  "textarea",
3968
3933
  {
3969
3934
  ...props,
@@ -3988,7 +3953,7 @@ var Textarea_default = Textarea;
3988
3953
 
3989
3954
  // app/components/TextInputWithLabel.tsx
3990
3955
  import { RiCloseCircleLine } from "@remixicon/react";
3991
- import React42 from "react";
3956
+ import React41 from "react";
3992
3957
  var TextInputWithLabel = ({
3993
3958
  intent = "primary",
3994
3959
  placeholder = "Enter tags",
@@ -4020,7 +3985,7 @@ var TextInputWithLabel = ({
4020
3985
  const pasteData = e.clipboardData.getData("text");
4021
3986
  handleAddTags(pasteData);
4022
3987
  };
4023
- return /* @__PURE__ */ React42.createElement("div", null, /* @__PURE__ */ React42.createElement(
3988
+ return /* @__PURE__ */ React41.createElement("div", null, /* @__PURE__ */ React41.createElement(
4024
3989
  Input_default,
4025
3990
  {
4026
3991
  type,
@@ -4031,13 +3996,13 @@ var TextInputWithLabel = ({
4031
3996
  className: "w-full",
4032
3997
  ...props
4033
3998
  }
4034
- ), /* @__PURE__ */ React42.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__ */ React42.createElement(
3999
+ ), /* @__PURE__ */ React41.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__ */ React41.createElement(
4035
4000
  Chip_default,
4036
4001
  {
4037
4002
  size: "md",
4038
4003
  intent,
4039
4004
  key: `${tag}-${idx}`,
4040
- endIcon: /* @__PURE__ */ React42.createElement(
4005
+ endIcon: /* @__PURE__ */ React41.createElement(
4041
4006
  RiCloseCircleLine,
4042
4007
  {
4043
4008
  size: 14,
@@ -4053,7 +4018,7 @@ var TextInputWithLabel_default = TextInputWithLabel;
4053
4018
 
4054
4019
  // app/components/Toggle.tsx
4055
4020
  import { cva as cva8 } from "class-variance-authority";
4056
- import React43, { forwardRef as forwardRef14 } from "react";
4021
+ import React42, { forwardRef as forwardRef14 } from "react";
4057
4022
  var toggleVariants = cva8("", {
4058
4023
  variants: {
4059
4024
  size: {
@@ -4073,7 +4038,7 @@ var toggleVariants = cva8("", {
4073
4038
  });
4074
4039
  var Toggle = forwardRef14(
4075
4040
  ({ size, className, intent, disabled, children, id, ...props }, ref) => {
4076
- return /* @__PURE__ */ React43.createElement(
4041
+ return /* @__PURE__ */ React42.createElement(
4077
4042
  "label",
4078
4043
  {
4079
4044
  className: cn(
@@ -4082,7 +4047,7 @@ var Toggle = forwardRef14(
4082
4047
  ),
4083
4048
  htmlFor: id
4084
4049
  },
4085
- /* @__PURE__ */ React43.createElement(
4050
+ /* @__PURE__ */ React42.createElement(
4086
4051
  "input",
4087
4052
  {
4088
4053
  type: "checkbox",
@@ -4095,7 +4060,7 @@ var Toggle = forwardRef14(
4095
4060
  className: "sr-only peer"
4096
4061
  }
4097
4062
  ),
4098
- /* @__PURE__ */ React43.createElement(
4063
+ /* @__PURE__ */ React42.createElement(
4099
4064
  "span",
4100
4065
  {
4101
4066
  className: cn(
@@ -4118,7 +4083,7 @@ var Toggle_default = Toggle;
4118
4083
 
4119
4084
  // app/components/Tooltip.tsx
4120
4085
  import { cva as cva9 } from "class-variance-authority";
4121
- import React44 from "react";
4086
+ import React43 from "react";
4122
4087
  var tooltipVariants = cva9(
4123
4088
  "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]",
4124
4089
  {
@@ -4152,12 +4117,12 @@ var Tooltip = ({
4152
4117
  className,
4153
4118
  ...props
4154
4119
  }) => {
4155
- return /* @__PURE__ */ React44.createElement("div", { ...props, className: "relative cursor-pointer text-sm group w-fit" }, /* @__PURE__ */ React44.createElement("div", null, children), /* @__PURE__ */ React44.createElement("div", { className: cn(tooltipVariants({ position }), className) }, content, /* @__PURE__ */ React44.createElement("div", { className: cn(arrowVariants({ position })) })));
4120
+ return /* @__PURE__ */ React43.createElement("div", { ...props, className: "relative cursor-pointer text-sm group w-fit" }, /* @__PURE__ */ React43.createElement("div", null, children), /* @__PURE__ */ React43.createElement("div", { className: cn(tooltipVariants({ position }), className) }, content, /* @__PURE__ */ React43.createElement("div", { className: cn(arrowVariants({ position })) })));
4156
4121
  };
4157
4122
  var Tooltip_default = Tooltip;
4158
4123
 
4159
4124
  // app/components/TreeView.tsx
4160
- import React45, { useState as useState11 } from "react";
4125
+ import React44, { useState as useState11 } from "react";
4161
4126
  import { RiArrowDownSFill, RiArrowRightSFill } from "@remixicon/react";
4162
4127
  var TreeView = ({
4163
4128
  children,
@@ -4170,8 +4135,8 @@ var TreeView = ({
4170
4135
  allowMultiple = true,
4171
4136
  expandTopLevelByDefault = false
4172
4137
  }) => {
4173
- const topLevelIds = React45.Children.toArray(children).map(
4174
- (child) => React45.isValidElement(child) ? child.props.id : null
4138
+ const topLevelIds = React44.Children.toArray(children).map(
4139
+ (child) => React44.isValidElement(child) ? child.props.id : null
4175
4140
  ).filter(Boolean);
4176
4141
  const [internalExpanded, setInternalExpanded] = useState11(
4177
4142
  () => new Set(
@@ -4199,9 +4164,9 @@ var TreeView = ({
4199
4164
  }
4200
4165
  };
4201
4166
  const handleSelect = (id) => setSelectedId(id);
4202
- const enhanceChildren = (nodes, level = 0) => React45.Children.map(nodes, (child) => {
4203
- if (React45.isValidElement(child)) {
4204
- return React45.cloneElement(child, {
4167
+ const enhanceChildren = (nodes, level = 0) => React44.Children.map(nodes, (child) => {
4168
+ if (React44.isValidElement(child)) {
4169
+ return React44.cloneElement(child, {
4205
4170
  level,
4206
4171
  expanded: expandedNodes.has(child.props.id),
4207
4172
  onToggle: toggleNode,
@@ -4213,7 +4178,7 @@ var TreeView = ({
4213
4178
  }
4214
4179
  return child;
4215
4180
  });
4216
- return /* @__PURE__ */ React45.createElement(
4181
+ return /* @__PURE__ */ React44.createElement(
4217
4182
  "ul",
4218
4183
  {
4219
4184
  role: "tree",
@@ -4223,7 +4188,7 @@ var TreeView = ({
4223
4188
  enhanceChildren(children)
4224
4189
  );
4225
4190
  };
4226
- var DefaultExpandIcon = ({ expanded }) => /* @__PURE__ */ React45.createElement("span", { className: "transition-transform duration-200" }, expanded ? /* @__PURE__ */ React45.createElement(RiArrowDownSFill, { size: 18 }) : /* @__PURE__ */ React45.createElement(RiArrowRightSFill, { size: 18 }));
4191
+ var DefaultExpandIcon = ({ expanded }) => /* @__PURE__ */ React44.createElement("span", { className: "transition-transform duration-200" }, expanded ? /* @__PURE__ */ React44.createElement(RiArrowDownSFill, { size: 18 }) : /* @__PURE__ */ React44.createElement(RiArrowRightSFill, { size: 18 }));
4227
4192
  var TreeViewItem = ({
4228
4193
  id,
4229
4194
  children,
@@ -4240,8 +4205,8 @@ var TreeViewItem = ({
4240
4205
  const trailing = [];
4241
4206
  const content = [];
4242
4207
  let subTree = null;
4243
- React45.Children.forEach(children, (child) => {
4244
- if (React45.isValidElement(child)) {
4208
+ React44.Children.forEach(children, (child) => {
4209
+ if (React44.isValidElement(child)) {
4245
4210
  if (child.type === TreeViewLeadingVisual)
4246
4211
  leading.push(child);
4247
4212
  else if (child.type === TreeViewTrailingVisual)
@@ -4282,8 +4247,8 @@ var TreeViewItem = ({
4282
4247
  break;
4283
4248
  }
4284
4249
  };
4285
- const processedSubTree = subTree && React45.isValidElement(subTree) ? React45.cloneElement(subTree, { expanded, flat }) : null;
4286
- return /* @__PURE__ */ React45.createElement(React45.Fragment, null, /* @__PURE__ */ React45.createElement(
4250
+ const processedSubTree = subTree && React44.isValidElement(subTree) ? React44.cloneElement(subTree, { expanded, flat }) : null;
4251
+ return /* @__PURE__ */ React44.createElement(React44.Fragment, null, /* @__PURE__ */ React44.createElement(
4287
4252
  "li",
4288
4253
  {
4289
4254
  role: "treeitem",
@@ -4301,8 +4266,8 @@ var TreeViewItem = ({
4301
4266
  onKeyDown: handleKeyDown,
4302
4267
  tabIndex: 0
4303
4268
  },
4304
- /* @__PURE__ */ React45.createElement("span", { className: "flex items-center gap-1" }, !leading.length && hasSubTree && !flat && /* @__PURE__ */ React45.createElement(DefaultExpandIcon, { expanded }), leading),
4305
- /* @__PURE__ */ React45.createElement("span", { className: "flex-1" }, content),
4269
+ /* @__PURE__ */ React44.createElement("span", { className: "flex items-center gap-1" }, !leading.length && hasSubTree && !flat && /* @__PURE__ */ React44.createElement(DefaultExpandIcon, { expanded }), leading),
4270
+ /* @__PURE__ */ React44.createElement("span", { className: "flex-1" }, content),
4306
4271
  trailing
4307
4272
  ), processedSubTree);
4308
4273
  };
@@ -4317,9 +4282,9 @@ var TreeViewSubTree = ({
4317
4282
  if (flat)
4318
4283
  return null;
4319
4284
  if (state === "loading") {
4320
- return /* @__PURE__ */ React45.createElement("ul", { role: "group", className: cn("list-none m-0", className) }, /* @__PURE__ */ React45.createElement("li", { className: "text-gray-500 italic p-1 pl-6" }, "Loading", count ? ` ${count} items...` : "..."));
4285
+ return /* @__PURE__ */ React44.createElement("ul", { role: "group", className: cn("list-none m-0", className) }, /* @__PURE__ */ React44.createElement("li", { className: "text-gray-500 italic p-1 pl-6" }, "Loading", count ? ` ${count} items...` : "..."));
4321
4286
  }
4322
- return /* @__PURE__ */ React45.createElement(
4287
+ return /* @__PURE__ */ React44.createElement(
4323
4288
  "ul",
4324
4289
  {
4325
4290
  role: "group",
@@ -4332,8 +4297,8 @@ var TreeViewSubTree = ({
4332
4297
  children
4333
4298
  );
4334
4299
  };
4335
- var TreeViewLeadingVisual = ({ children, className }) => /* @__PURE__ */ React45.createElement("span", { className: cn("flex items-center flex-shrink-0", className) }, children);
4336
- var TreeViewTrailingVisual = ({ children, label, className }) => /* @__PURE__ */ React45.createElement(
4300
+ var TreeViewLeadingVisual = ({ children, className }) => /* @__PURE__ */ React44.createElement("span", { className: cn("flex items-center flex-shrink-0", className) }, children);
4301
+ var TreeViewTrailingVisual = ({ children, label, className }) => /* @__PURE__ */ React44.createElement(
4337
4302
  "span",
4338
4303
  {
4339
4304
  className: cn("flex items-center ml-auto flex-shrink-0", className),
@@ -4349,7 +4314,7 @@ var TreeView_default = TreeView;
4349
4314
 
4350
4315
  // app/components/Typography.tsx
4351
4316
  import { cva as cva10 } from "class-variance-authority";
4352
- import React46 from "react";
4317
+ import React45 from "react";
4353
4318
  var typographyVariant = cva10("text-dark", {
4354
4319
  variants: {
4355
4320
  variant: {
@@ -4387,7 +4352,7 @@ var Typography = ({
4387
4352
  ...props
4388
4353
  }) => {
4389
4354
  const Component = as || ((variant == null ? void 0 : variant.startsWith("b")) ? "p" : variant);
4390
- return /* @__PURE__ */ React46.createElement(
4355
+ return /* @__PURE__ */ React45.createElement(
4391
4356
  Component,
4392
4357
  {
4393
4358
  className: cn(typographyVariant({ variant, intent, className })),
@@ -4435,9 +4400,9 @@ export {
4435
4400
  FileUploadPreview_default as FileUploadPreview,
4436
4401
  GlobalNavigation_default as GlobalNavigation,
4437
4402
  HelperText_default as HelperText,
4403
+ ImageUploadControlled,
4438
4404
  Input_default as Input,
4439
4405
  Label_default as Label,
4440
- ListItem_default as ListItem,
4441
4406
  ListPagination_default as ListPagination,
4442
4407
  Loading_default as Loading,
4443
4408
  Modal,
@@ -4446,7 +4411,6 @@ export {
4446
4411
  Pagination_default as Pagination,
4447
4412
  Progress_default as ProgressBar,
4448
4413
  Radio_default as Radio,
4449
- ImageUploadControlled as RazorPayFileUpload,
4450
4414
  Sidebar_default as Sidebar,
4451
4415
  Skeleton_default as Skeleton,
4452
4416
  Slider_default as Slider,