@algorithm-shift/design-system 1.2.40 → 1.2.42

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.mjs CHANGED
@@ -71,6 +71,16 @@ import { twMerge } from "tailwind-merge";
71
71
  function cn(...inputs) {
72
72
  return twMerge(clsx(inputs));
73
73
  }
74
+ function getInitials(name) {
75
+ const words = name.split(" ");
76
+ if (words.length === 0) {
77
+ return "";
78
+ }
79
+ if (words.length === 1) {
80
+ return words[0].charAt(0);
81
+ }
82
+ return words[0].charAt(0) + words[1].charAt(0);
83
+ }
74
84
 
75
85
  // src/components/ui/button.tsx
76
86
  import { jsx as jsx5 } from "react/jsx-runtime";
@@ -202,71 +212,6 @@ var Typography = ({
202
212
  };
203
213
  var Typography_default = Typography;
204
214
 
205
- // src/components/Inputs/TextInput/TextInput.tsx
206
- import * as React2 from "react";
207
-
208
- // src/components/ui/input.tsx
209
- import { jsx as jsx9 } from "react/jsx-runtime";
210
- function Input({ className, type, ...props }) {
211
- return /* @__PURE__ */ jsx9(
212
- "input",
213
- {
214
- type,
215
- "data-slot": "input",
216
- className: cn(
217
- "file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input flex h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",
218
- "focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]",
219
- "aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",
220
- className
221
- ),
222
- ...props
223
- }
224
- );
225
- }
226
-
227
- // src/components/Inputs/TextInput/TextInput.tsx
228
- import { Fragment, jsx as jsx10, jsxs as jsxs2 } from "react/jsx-runtime";
229
- var TextInput = ({ className, style, ...props }) => {
230
- const placeholder = props.placeholder || "Placeholder text";
231
- const isEditable = props.isEditable ?? true;
232
- const isDisabled = props.isDisabled ?? false;
233
- const isReadonly = props.isReadonly ?? false;
234
- const isAutocomplete = props.isAutocomplete ?? false;
235
- const [error, setError] = React2.useState(null);
236
- React2.useEffect(() => {
237
- if (!props.validateOnMount) return;
238
- setError(props.errorMessage || null);
239
- }, [props.errorMessage, props.validateOnMount]);
240
- const handleChange = (e) => {
241
- props.onChange?.(e);
242
- };
243
- return /* @__PURE__ */ jsxs2(Fragment, { children: [
244
- /* @__PURE__ */ jsx10(
245
- Input,
246
- {
247
- type: "text",
248
- name: props.name,
249
- className: cn(className, error ? "border-red-500" : ""),
250
- style: {
251
- ...style,
252
- borderColor: error ? "#f87171" : style?.borderColor
253
- },
254
- value: props.value,
255
- autoComplete: isAutocomplete ? "on" : "off",
256
- placeholder,
257
- onChange: handleChange,
258
- disabled: isDisabled || !isEditable,
259
- readOnly: isReadonly
260
- }
261
- ),
262
- error && /* @__PURE__ */ jsx10("p", { className: "mt-1 text-xs text-red-500", children: error })
263
- ] });
264
- };
265
- var TextInput_default = TextInput;
266
-
267
- // src/components/Inputs/NumberInput/NumberInput.tsx
268
- import * as React3 from "react";
269
-
270
215
  // node_modules/lucide-react/dist/esm/createLucideIcon.js
271
216
  import { forwardRef as forwardRef2, createElement as createElement2 } from "react";
272
217
 
@@ -464,9 +409,261 @@ var __iconNode14 = [
464
409
  ];
465
410
  var Search = createLucideIcon("search", __iconNode14);
466
411
 
412
+ // src/components/Basic/Breadcrumb/Breadcrumb.tsx
413
+ import { jsx as jsx9, jsxs as jsxs2 } from "react/jsx-runtime";
414
+ var Breadcrumb = ({ list = [], className, style, LinkComponent }) => {
415
+ return /* @__PURE__ */ jsx9(
416
+ "nav",
417
+ {
418
+ "aria-label": "breadcrumb",
419
+ className: cn("flex items-center text-sm text-muted-foreground", className),
420
+ style,
421
+ children: list.map((item, index) => {
422
+ const isLast = index === list.length - 1;
423
+ return /* @__PURE__ */ jsxs2("div", { className: "flex items-center", children: [
424
+ item.url && !isLast && LinkComponent ? /* @__PURE__ */ jsx9(
425
+ LinkComponent,
426
+ {
427
+ href: item.url,
428
+ className: "hover:text-foreground transition-colors",
429
+ children: item.header
430
+ }
431
+ ) : /* @__PURE__ */ jsx9("span", { className: "text-foreground font-medium", children: item.header }),
432
+ !isLast && /* @__PURE__ */ jsx9(ChevronRight, { className: "mx-2 h-4 w-4 text-muted-foreground" })
433
+ ] }, item.id);
434
+ })
435
+ }
436
+ );
437
+ };
438
+ var Breadcrumb_default = Breadcrumb;
439
+
440
+ // src/components/ui/dropdown-menu.tsx
441
+ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
442
+ import { jsx as jsx10, jsxs as jsxs3 } from "react/jsx-runtime";
443
+ function DropdownMenu({
444
+ ...props
445
+ }) {
446
+ return /* @__PURE__ */ jsx10(DropdownMenuPrimitive.Root, { "data-slot": "dropdown-menu", ...props });
447
+ }
448
+ function DropdownMenuTrigger({
449
+ ...props
450
+ }) {
451
+ return /* @__PURE__ */ jsx10(
452
+ DropdownMenuPrimitive.Trigger,
453
+ {
454
+ "data-slot": "dropdown-menu-trigger",
455
+ ...props
456
+ }
457
+ );
458
+ }
459
+ function DropdownMenuContent({
460
+ className,
461
+ sideOffset = 4,
462
+ ...props
463
+ }) {
464
+ return /* @__PURE__ */ jsx10(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx10(
465
+ DropdownMenuPrimitive.Content,
466
+ {
467
+ "data-slot": "dropdown-menu-content",
468
+ sideOffset,
469
+ className: cn(
470
+ "bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-h-(--radix-dropdown-menu-content-available-height) min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border p-1 shadow-md",
471
+ className
472
+ ),
473
+ ...props
474
+ }
475
+ ) });
476
+ }
477
+ function DropdownMenuItem({
478
+ className,
479
+ inset,
480
+ variant = "default",
481
+ ...props
482
+ }) {
483
+ return /* @__PURE__ */ jsx10(
484
+ DropdownMenuPrimitive.Item,
485
+ {
486
+ "data-slot": "dropdown-menu-item",
487
+ "data-inset": inset,
488
+ "data-variant": variant,
489
+ className: cn(
490
+ "focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
491
+ className
492
+ ),
493
+ ...props
494
+ }
495
+ );
496
+ }
497
+ function DropdownMenuLabel({
498
+ className,
499
+ inset,
500
+ ...props
501
+ }) {
502
+ return /* @__PURE__ */ jsx10(
503
+ DropdownMenuPrimitive.Label,
504
+ {
505
+ "data-slot": "dropdown-menu-label",
506
+ "data-inset": inset,
507
+ className: cn(
508
+ "px-2 py-1.5 text-sm font-medium data-[inset]:pl-8",
509
+ className
510
+ ),
511
+ ...props
512
+ }
513
+ );
514
+ }
515
+ function DropdownMenuSeparator({
516
+ className,
517
+ ...props
518
+ }) {
519
+ return /* @__PURE__ */ jsx10(
520
+ DropdownMenuPrimitive.Separator,
521
+ {
522
+ "data-slot": "dropdown-menu-separator",
523
+ className: cn("bg-border -mx-1 my-1 h-px", className),
524
+ ...props
525
+ }
526
+ );
527
+ }
528
+ function DropdownMenuSub({
529
+ ...props
530
+ }) {
531
+ return /* @__PURE__ */ jsx10(DropdownMenuPrimitive.Sub, { "data-slot": "dropdown-menu-sub", ...props });
532
+ }
533
+ function DropdownMenuSubTrigger({
534
+ className,
535
+ inset,
536
+ children,
537
+ ...props
538
+ }) {
539
+ return /* @__PURE__ */ jsxs3(
540
+ DropdownMenuPrimitive.SubTrigger,
541
+ {
542
+ "data-slot": "dropdown-menu-sub-trigger",
543
+ "data-inset": inset,
544
+ className: cn(
545
+ "focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[inset]:pl-8",
546
+ className
547
+ ),
548
+ ...props,
549
+ children: [
550
+ children,
551
+ /* @__PURE__ */ jsx10(ChevronRight, { className: "ml-auto size-4" })
552
+ ]
553
+ }
554
+ );
555
+ }
556
+ function DropdownMenuSubContent({
557
+ className,
558
+ ...props
559
+ }) {
560
+ return /* @__PURE__ */ jsx10(
561
+ DropdownMenuPrimitive.SubContent,
562
+ {
563
+ "data-slot": "dropdown-menu-sub-content",
564
+ className: cn(
565
+ "bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-hidden rounded-md border p-1 shadow-lg",
566
+ className
567
+ ),
568
+ ...props
569
+ }
570
+ );
571
+ }
572
+
573
+ // src/components/Basic/ButtonGroup/ButtonGroup.tsx
574
+ import { jsx as jsx11, jsxs as jsxs4 } from "react/jsx-runtime";
575
+ function SplitButton({ style, textContent, className, list = [], LinkComponent }) {
576
+ const bgColor = style?.backgroundColor || "";
577
+ return /* @__PURE__ */ jsxs4("div", { className: "inline-flex rounded-md overflow-hidden border border-teal-200 bg-teal-700 items-center focus:ring-0", style: { backgroundColor: bgColor }, children: [
578
+ /* @__PURE__ */ jsx11(
579
+ Button,
580
+ {
581
+ className: `rounded-none border-r px-4 py-2 text-whit focus:ring-0 ${className || ""}`,
582
+ style: { backgroundColor: bgColor },
583
+ children: textContent || "Button"
584
+ }
585
+ ),
586
+ /* @__PURE__ */ jsxs4(DropdownMenu, { children: [
587
+ /* @__PURE__ */ jsx11(DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ jsx11(
588
+ Button,
589
+ {
590
+ className: "rounded-none bg-teal-700 px-4 py-2 text-white ring-0 shadow-none hover:bg-teal-600 focus:ring-0",
591
+ "aria-label": "Open Dropdown",
592
+ style: { backgroundColor: bgColor },
593
+ children: /* @__PURE__ */ jsx11(ChevronDown, { className: "w-4 h-4" })
594
+ }
595
+ ) }),
596
+ /* @__PURE__ */ jsx11(DropdownMenuContent, { align: "end", className: "bg-white min-w-[120px]", children: list.map((item) => /* @__PURE__ */ jsx11(DropdownMenuItem, { className: "text-black", children: LinkComponent ? /* @__PURE__ */ jsx11(LinkComponent, { href: item.url || "#", children: item.header }) : item.header }, item.id)) })
597
+ ] })
598
+ ] });
599
+ }
600
+
601
+ // src/components/Inputs/TextInput/TextInput.tsx
602
+ import * as React2 from "react";
603
+
604
+ // src/components/ui/input.tsx
605
+ import { jsx as jsx12 } from "react/jsx-runtime";
606
+ function Input({ className, type, ...props }) {
607
+ return /* @__PURE__ */ jsx12(
608
+ "input",
609
+ {
610
+ type,
611
+ "data-slot": "input",
612
+ className: cn(
613
+ "file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input flex h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",
614
+ "focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]",
615
+ "aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",
616
+ className
617
+ ),
618
+ ...props
619
+ }
620
+ );
621
+ }
622
+
623
+ // src/components/Inputs/TextInput/TextInput.tsx
624
+ import { Fragment, jsx as jsx13, jsxs as jsxs5 } from "react/jsx-runtime";
625
+ var TextInput = ({ className, style, ...props }) => {
626
+ const placeholder = props.placeholder || "Placeholder text";
627
+ const isEditable = props.isEditable ?? true;
628
+ const isDisabled = props.isDisabled ?? false;
629
+ const isReadonly = props.isReadonly ?? false;
630
+ const isAutocomplete = props.isAutocomplete ?? false;
631
+ const [error, setError] = React2.useState(null);
632
+ React2.useEffect(() => {
633
+ if (!props.validateOnMount) return;
634
+ setError(props.errorMessage || null);
635
+ }, [props.errorMessage, props.validateOnMount]);
636
+ const handleChange = (e) => {
637
+ props.onChange?.(e);
638
+ };
639
+ return /* @__PURE__ */ jsxs5(Fragment, { children: [
640
+ /* @__PURE__ */ jsx13(
641
+ Input,
642
+ {
643
+ type: "text",
644
+ name: props.name,
645
+ className: cn(className, error ? "border-red-500" : ""),
646
+ style: {
647
+ ...style,
648
+ borderColor: error ? "#f87171" : style?.borderColor
649
+ },
650
+ value: props.value,
651
+ autoComplete: isAutocomplete ? "on" : "off",
652
+ placeholder,
653
+ onChange: handleChange,
654
+ disabled: isDisabled || !isEditable,
655
+ readOnly: isReadonly
656
+ }
657
+ ),
658
+ error && /* @__PURE__ */ jsx13("p", { className: "mt-1 text-xs text-red-500", children: error })
659
+ ] });
660
+ };
661
+ var TextInput_default = TextInput;
662
+
467
663
  // src/components/Inputs/NumberInput/NumberInput.tsx
664
+ import * as React3 from "react";
468
665
  import { useEffect as useEffect2 } from "react";
469
- import { Fragment as Fragment2, jsx as jsx11, jsxs as jsxs3 } from "react/jsx-runtime";
666
+ import { Fragment as Fragment2, jsx as jsx14, jsxs as jsxs6 } from "react/jsx-runtime";
470
667
  var NumberInput = ({ className, style, ...props }) => {
471
668
  const placeholder = props.placeholder ?? "Placeholder text";
472
669
  const isEditable = props.isEditable ?? true;
@@ -481,10 +678,10 @@ var NumberInput = ({ className, style, ...props }) => {
481
678
  const handleChange = (e) => {
482
679
  props.onChange?.(e);
483
680
  };
484
- return /* @__PURE__ */ jsxs3(Fragment2, { children: [
485
- /* @__PURE__ */ jsxs3("div", { className: "flex justify-start items-center relative", children: [
486
- /* @__PURE__ */ jsx11(Calculator, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-[#BDBDBD]" }),
487
- /* @__PURE__ */ jsx11(
681
+ return /* @__PURE__ */ jsxs6(Fragment2, { children: [
682
+ /* @__PURE__ */ jsxs6("div", { className: "flex justify-start items-center relative", children: [
683
+ /* @__PURE__ */ jsx14(Calculator, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-[#BDBDBD]" }),
684
+ /* @__PURE__ */ jsx14(
488
685
  Input,
489
686
  {
490
687
  type: "number",
@@ -504,14 +701,14 @@ var NumberInput = ({ className, style, ...props }) => {
504
701
  }
505
702
  )
506
703
  ] }),
507
- error && /* @__PURE__ */ jsx11("p", { className: "mt-1 text-xs text-red-500", children: error })
704
+ error && /* @__PURE__ */ jsx14("p", { className: "mt-1 text-xs text-red-500", children: error })
508
705
  ] });
509
706
  };
510
707
  var NumberInput_default = NumberInput;
511
708
 
512
709
  // src/components/Inputs/EmailInput/EmailInput.tsx
513
710
  import * as React4 from "react";
514
- import { Fragment as Fragment3, jsx as jsx12, jsxs as jsxs4 } from "react/jsx-runtime";
711
+ import { Fragment as Fragment3, jsx as jsx15, jsxs as jsxs7 } from "react/jsx-runtime";
515
712
  var EmailInput = ({ className, style, ...props }) => {
516
713
  const placeholder = props.placeholder ?? "Placeholder text";
517
714
  const isEditable = props.isEditable ?? true;
@@ -526,10 +723,10 @@ var EmailInput = ({ className, style, ...props }) => {
526
723
  const handleChange = (e) => {
527
724
  props.onChange?.(e);
528
725
  };
529
- return /* @__PURE__ */ jsxs4(Fragment3, { children: [
530
- /* @__PURE__ */ jsxs4("div", { className: "flex justify-start items-center relative", children: [
531
- /* @__PURE__ */ jsx12(Mail, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-[#BDBDBD]" }),
532
- /* @__PURE__ */ jsx12(
726
+ return /* @__PURE__ */ jsxs7(Fragment3, { children: [
727
+ /* @__PURE__ */ jsxs7("div", { className: "flex justify-start items-center relative", children: [
728
+ /* @__PURE__ */ jsx15(Mail, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-[#BDBDBD]" }),
729
+ /* @__PURE__ */ jsx15(
533
730
  Input,
534
731
  {
535
732
  type: "email",
@@ -548,14 +745,14 @@ var EmailInput = ({ className, style, ...props }) => {
548
745
  }
549
746
  )
550
747
  ] }),
551
- error && /* @__PURE__ */ jsx12("p", { className: "mt-1 text-xs text-red-500", children: error })
748
+ error && /* @__PURE__ */ jsx15("p", { className: "mt-1 text-xs text-red-500", children: error })
552
749
  ] });
553
750
  };
554
751
  var EmailInput_default = EmailInput;
555
752
 
556
753
  // src/components/Inputs/PasswordInput/PasswordInput.tsx
557
754
  import * as React5 from "react";
558
- import { Fragment as Fragment4, jsx as jsx13, jsxs as jsxs5 } from "react/jsx-runtime";
755
+ import { Fragment as Fragment4, jsx as jsx16, jsxs as jsxs8 } from "react/jsx-runtime";
559
756
  var PasswordInput = ({ className, style, ...props }) => {
560
757
  const placeholder = props.placeholder ?? "Placeholder text";
561
758
  const isEditable = props.isEditable ?? true;
@@ -570,10 +767,10 @@ var PasswordInput = ({ className, style, ...props }) => {
570
767
  const handleChange = (e) => {
571
768
  props.onChange?.(e);
572
769
  };
573
- return /* @__PURE__ */ jsxs5(Fragment4, { children: [
574
- /* @__PURE__ */ jsxs5("div", { className: "flex justify-start items-center relative", children: [
575
- /* @__PURE__ */ jsx13(ScanEye, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-[#BDBDBD]" }),
576
- /* @__PURE__ */ jsx13(
770
+ return /* @__PURE__ */ jsxs8(Fragment4, { children: [
771
+ /* @__PURE__ */ jsxs8("div", { className: "flex justify-start items-center relative", children: [
772
+ /* @__PURE__ */ jsx16(ScanEye, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-[#BDBDBD]" }),
773
+ /* @__PURE__ */ jsx16(
577
774
  Input,
578
775
  {
579
776
  type: "password",
@@ -593,7 +790,7 @@ var PasswordInput = ({ className, style, ...props }) => {
593
790
  }
594
791
  )
595
792
  ] }),
596
- error && /* @__PURE__ */ jsx13("p", { className: "mt-1 text-xs text-red-500", children: error })
793
+ error && /* @__PURE__ */ jsx16("p", { className: "mt-1 text-xs text-red-500", children: error })
597
794
  ] });
598
795
  };
599
796
  var PasswordInput_default = PasswordInput;
@@ -602,9 +799,9 @@ var PasswordInput_default = PasswordInput;
602
799
  import * as React6 from "react";
603
800
 
604
801
  // src/components/ui/textarea.tsx
605
- import { jsx as jsx14 } from "react/jsx-runtime";
802
+ import { jsx as jsx17 } from "react/jsx-runtime";
606
803
  function Textarea({ className, ...props }) {
607
- return /* @__PURE__ */ jsx14(
804
+ return /* @__PURE__ */ jsx17(
608
805
  "textarea",
609
806
  {
610
807
  "data-slot": "textarea",
@@ -618,7 +815,7 @@ function Textarea({ className, ...props }) {
618
815
  }
619
816
 
620
817
  // src/components/Inputs/Textarea/Textarea.tsx
621
- import { Fragment as Fragment5, jsx as jsx15, jsxs as jsxs6 } from "react/jsx-runtime";
818
+ import { Fragment as Fragment5, jsx as jsx18, jsxs as jsxs9 } from "react/jsx-runtime";
622
819
  var Textarea2 = ({ className, style, ...props }) => {
623
820
  const placeholder = props.placeholder ?? "Placeholder text";
624
821
  const isEditable = props.isEditable ?? true;
@@ -633,8 +830,8 @@ var Textarea2 = ({ className, style, ...props }) => {
633
830
  const handleChange = (e) => {
634
831
  props.onChange?.(e);
635
832
  };
636
- return /* @__PURE__ */ jsxs6(Fragment5, { children: [
637
- /* @__PURE__ */ jsx15(
833
+ return /* @__PURE__ */ jsxs9(Fragment5, { children: [
834
+ /* @__PURE__ */ jsx18(
638
835
  Textarea,
639
836
  {
640
837
  id: "textarea-field",
@@ -652,14 +849,14 @@ var Textarea2 = ({ className, style, ...props }) => {
652
849
  readOnly: isReadonly
653
850
  }
654
851
  ),
655
- error && /* @__PURE__ */ jsx15("p", { className: "mt-1 text-xs text-red-500", children: error })
852
+ error && /* @__PURE__ */ jsx18("p", { className: "mt-1 text-xs text-red-500", children: error })
656
853
  ] });
657
854
  };
658
855
  var Textarea_default = Textarea2;
659
856
 
660
857
  // src/components/Inputs/UrlInput/UrlInput.tsx
661
858
  import * as React7 from "react";
662
- import { Fragment as Fragment6, jsx as jsx16, jsxs as jsxs7 } from "react/jsx-runtime";
859
+ import { Fragment as Fragment6, jsx as jsx19, jsxs as jsxs10 } from "react/jsx-runtime";
663
860
  var UrlInput = ({ className, style, ...props }) => {
664
861
  const placeholder = props.placeholder ?? "Placeholder text";
665
862
  const isEditable = props.isEditable ?? true;
@@ -674,10 +871,10 @@ var UrlInput = ({ className, style, ...props }) => {
674
871
  const handleChange = (e) => {
675
872
  props.onChange?.(e);
676
873
  };
677
- return /* @__PURE__ */ jsxs7(Fragment6, { children: [
678
- /* @__PURE__ */ jsxs7("div", { className: "flex justify-start items-center relative", children: [
679
- /* @__PURE__ */ jsx16("div", { className: "bg-[#E9E9E9] absolute px-10 text-center top-1/2 h-full justify-center items-center flex w-10 -translate-y-1/2 text-[#383838] font-[500] text-[12px]", children: "https://" }),
680
- /* @__PURE__ */ jsx16(
874
+ return /* @__PURE__ */ jsxs10(Fragment6, { children: [
875
+ /* @__PURE__ */ jsxs10("div", { className: "flex justify-start items-center relative", children: [
876
+ /* @__PURE__ */ jsx19("div", { className: "bg-[#E9E9E9] absolute px-10 text-center top-1/2 h-full justify-center items-center flex w-10 -translate-y-1/2 text-[#383838] font-[500] text-[12px]", children: "https://" }),
877
+ /* @__PURE__ */ jsx19(
681
878
  Input,
682
879
  {
683
880
  id: "url-field",
@@ -697,7 +894,7 @@ var UrlInput = ({ className, style, ...props }) => {
697
894
  }
698
895
  )
699
896
  ] }),
700
- error && /* @__PURE__ */ jsx16("p", { className: "mt-1 text-xs text-red-500", children: error })
897
+ error && /* @__PURE__ */ jsx19("p", { className: "mt-1 text-xs text-red-500", children: error })
701
898
  ] });
702
899
  };
703
900
  var UrlInput_default = UrlInput;
@@ -707,12 +904,12 @@ import { useEffect as useEffect7, useState as useState7 } from "react";
707
904
 
708
905
  // src/components/ui/checkbox.tsx
709
906
  import * as CheckboxPrimitive from "@radix-ui/react-checkbox";
710
- import { jsx as jsx17 } from "react/jsx-runtime";
907
+ import { jsx as jsx20 } from "react/jsx-runtime";
711
908
  function Checkbox({
712
909
  className,
713
910
  ...props
714
911
  }) {
715
- return /* @__PURE__ */ jsx17(
912
+ return /* @__PURE__ */ jsx20(
716
913
  CheckboxPrimitive.Root,
717
914
  {
718
915
  "data-slot": "checkbox",
@@ -721,12 +918,12 @@ function Checkbox({
721
918
  className
722
919
  ),
723
920
  ...props,
724
- children: /* @__PURE__ */ jsx17(
921
+ children: /* @__PURE__ */ jsx20(
725
922
  CheckboxPrimitive.Indicator,
726
923
  {
727
924
  "data-slot": "checkbox-indicator",
728
925
  className: "flex items-center justify-center text-current transition-none",
729
- children: /* @__PURE__ */ jsx17(Check, { className: "size-3.5" })
926
+ children: /* @__PURE__ */ jsx20(Check, { className: "size-3.5" })
730
927
  }
731
928
  )
732
929
  }
@@ -735,12 +932,12 @@ function Checkbox({
735
932
 
736
933
  // src/components/ui/label.tsx
737
934
  import * as LabelPrimitive from "@radix-ui/react-label";
738
- import { jsx as jsx18 } from "react/jsx-runtime";
739
- function Label({
935
+ import { jsx as jsx21 } from "react/jsx-runtime";
936
+ function Label2({
740
937
  className,
741
938
  ...props
742
939
  }) {
743
- return /* @__PURE__ */ jsx18(
940
+ return /* @__PURE__ */ jsx21(
744
941
  LabelPrimitive.Root,
745
942
  {
746
943
  "data-slot": "label",
@@ -754,7 +951,7 @@ function Label({
754
951
  }
755
952
 
756
953
  // src/components/Inputs/Checkbox/Checkbox.tsx
757
- import { Fragment as Fragment7, jsx as jsx19, jsxs as jsxs8 } from "react/jsx-runtime";
954
+ import { Fragment as Fragment7, jsx as jsx22, jsxs as jsxs11 } from "react/jsx-runtime";
758
955
  var CheckboxInput = ({ className, style, ...props }) => {
759
956
  const isEditable = props.isEditable ?? true;
760
957
  const isDisabled = props.isDisabled ?? false;
@@ -767,9 +964,9 @@ var CheckboxInput = ({ className, style, ...props }) => {
767
964
  const handleChange = (value) => {
768
965
  props.onChange?.(value);
769
966
  };
770
- return /* @__PURE__ */ jsxs8(Fragment7, { children: [
771
- /* @__PURE__ */ jsx19("div", { className, style, children: /* @__PURE__ */ jsxs8("div", { className: "flex items-center space-x-2", children: [
772
- /* @__PURE__ */ jsx19(
967
+ return /* @__PURE__ */ jsxs11(Fragment7, { children: [
968
+ /* @__PURE__ */ jsx22("div", { className, style, children: /* @__PURE__ */ jsxs11("div", { className: "flex items-center space-x-2", children: [
969
+ /* @__PURE__ */ jsx22(
773
970
  Checkbox,
774
971
  {
775
972
  id: props.name || "checkbox",
@@ -778,9 +975,9 @@ var CheckboxInput = ({ className, style, ...props }) => {
778
975
  disabled: !isEditable || isDisabled
779
976
  }
780
977
  ),
781
- /* @__PURE__ */ jsx19(Label, { htmlFor: props.name || "checkbox", children: text })
978
+ /* @__PURE__ */ jsx22(Label2, { htmlFor: props.name || "checkbox", children: text })
782
979
  ] }) }),
783
- error && /* @__PURE__ */ jsx19("p", { className: "mt-1 text-xs text-red-500", children: error })
980
+ error && /* @__PURE__ */ jsx22("p", { className: "mt-1 text-xs text-red-500", children: error })
784
981
  ] });
785
982
  };
786
983
  var Checkbox_default = CheckboxInput;
@@ -790,12 +987,12 @@ import { useEffect as useEffect8, useState as useState8 } from "react";
790
987
 
791
988
  // src/components/ui/radio-group.tsx
792
989
  import * as RadioGroupPrimitive from "@radix-ui/react-radio-group";
793
- import { jsx as jsx20 } from "react/jsx-runtime";
794
- function RadioGroup({
990
+ import { jsx as jsx23 } from "react/jsx-runtime";
991
+ function RadioGroup2({
795
992
  className,
796
993
  ...props
797
994
  }) {
798
- return /* @__PURE__ */ jsx20(
995
+ return /* @__PURE__ */ jsx23(
799
996
  RadioGroupPrimitive.Root,
800
997
  {
801
998
  "data-slot": "radio-group",
@@ -808,7 +1005,7 @@ function RadioGroupItem({
808
1005
  className,
809
1006
  ...props
810
1007
  }) {
811
- return /* @__PURE__ */ jsx20(
1008
+ return /* @__PURE__ */ jsx23(
812
1009
  RadioGroupPrimitive.Item,
813
1010
  {
814
1011
  "data-slot": "radio-group-item",
@@ -817,12 +1014,12 @@ function RadioGroupItem({
817
1014
  className
818
1015
  ),
819
1016
  ...props,
820
- children: /* @__PURE__ */ jsx20(
1017
+ children: /* @__PURE__ */ jsx23(
821
1018
  RadioGroupPrimitive.Indicator,
822
1019
  {
823
1020
  "data-slot": "radio-group-indicator",
824
1021
  className: "relative flex items-center justify-center",
825
- children: /* @__PURE__ */ jsx20(Circle, { className: "fill-primary absolute top-1/2 left-1/2 size-2 -translate-x-1/2 -translate-y-1/2" })
1022
+ children: /* @__PURE__ */ jsx23(Circle, { className: "fill-primary absolute top-1/2 left-1/2 size-2 -translate-x-1/2 -translate-y-1/2" })
826
1023
  }
827
1024
  )
828
1025
  }
@@ -830,7 +1027,7 @@ function RadioGroupItem({
830
1027
  }
831
1028
 
832
1029
  // src/components/Inputs/RadioInput/RadioInput.tsx
833
- import { Fragment as Fragment8, jsx as jsx21, jsxs as jsxs9 } from "react/jsx-runtime";
1030
+ import { Fragment as Fragment8, jsx as jsx24, jsxs as jsxs12 } from "react/jsx-runtime";
834
1031
  var RadioInput = ({
835
1032
  className,
836
1033
  style,
@@ -854,29 +1051,29 @@ var RadioInput = ({
854
1051
  onChange?.(value);
855
1052
  };
856
1053
  const resolvedDefaultValue = (typeof defaultValue === "string" ? defaultValue : void 0) ?? options[0]?.value;
857
- return /* @__PURE__ */ jsxs9(Fragment8, { children: [
858
- /* @__PURE__ */ jsx21("div", { className, style, children: /* @__PURE__ */ jsxs9(
859
- RadioGroup,
1054
+ return /* @__PURE__ */ jsxs12(Fragment8, { children: [
1055
+ /* @__PURE__ */ jsx24("div", { className, style, children: /* @__PURE__ */ jsxs12(
1056
+ RadioGroup2,
860
1057
  {
861
1058
  defaultValue: resolvedDefaultValue,
862
1059
  onValueChange: handleChange,
863
1060
  children: [
864
- options.length === 0 && /* @__PURE__ */ jsx21("div", { className: "text-sm text-gray-500", children: "No options available" }),
865
- options.map((item) => /* @__PURE__ */ jsxs9("div", { className: "flex items-center space-x-2", children: [
866
- /* @__PURE__ */ jsx21(RadioGroupItem, { value: item.value, id: `radio-${item.value}` }),
867
- /* @__PURE__ */ jsx21(Label, { htmlFor: `radio-${item.value}`, children: item.label })
1061
+ options.length === 0 && /* @__PURE__ */ jsx24("div", { className: "text-sm text-gray-500", children: "No options available" }),
1062
+ options.map((item) => /* @__PURE__ */ jsxs12("div", { className: "flex items-center space-x-2", children: [
1063
+ /* @__PURE__ */ jsx24(RadioGroupItem, { value: item.value, id: `radio-${item.value}` }),
1064
+ /* @__PURE__ */ jsx24(Label2, { htmlFor: `radio-${item.value}`, children: item.label })
868
1065
  ] }, item.value))
869
1066
  ]
870
1067
  }
871
1068
  ) }),
872
- error && /* @__PURE__ */ jsx21("p", { className: "mt-1 text-xs text-red-500", children: error })
1069
+ error && /* @__PURE__ */ jsx24("p", { className: "mt-1 text-xs text-red-500", children: error })
873
1070
  ] });
874
1071
  };
875
1072
  var RadioInput_default = RadioInput;
876
1073
 
877
1074
  // src/components/Inputs/MultiCheckbox/MultiCheckbox.tsx
878
1075
  import { useCallback, useState as useState9 } from "react";
879
- import { jsx as jsx22, jsxs as jsxs10 } from "react/jsx-runtime";
1076
+ import { jsx as jsx25, jsxs as jsxs13 } from "react/jsx-runtime";
880
1077
  var MultiCheckbox = ({
881
1078
  className,
882
1079
  style,
@@ -903,15 +1100,15 @@ var MultiCheckbox = ({
903
1100
  },
904
1101
  [onChange]
905
1102
  );
906
- return /* @__PURE__ */ jsxs10(
1103
+ return /* @__PURE__ */ jsxs13(
907
1104
  "div",
908
1105
  {
909
1106
  className: cn("flex flex-col gap-3", className),
910
1107
  style,
911
1108
  children: [
912
- options.length === 0 && /* @__PURE__ */ jsx22("p", { className: "text-sm text-gray-500", children: "No options available." }),
913
- options.map((opt) => /* @__PURE__ */ jsxs10("div", { className: "flex items-center space-x-2", children: [
914
- /* @__PURE__ */ jsx22(
1109
+ options.length === 0 && /* @__PURE__ */ jsx25("p", { className: "text-sm text-gray-500", children: "No options available." }),
1110
+ options.map((opt) => /* @__PURE__ */ jsxs13("div", { className: "flex items-center space-x-2", children: [
1111
+ /* @__PURE__ */ jsx25(
915
1112
  Checkbox,
916
1113
  {
917
1114
  id: opt.value,
@@ -920,7 +1117,7 @@ var MultiCheckbox = ({
920
1117
  disabled: !isEditable || isDisabled
921
1118
  }
922
1119
  ),
923
- /* @__PURE__ */ jsx22(Label, { htmlFor: opt.value, children: opt.label })
1120
+ /* @__PURE__ */ jsx25(Label2, { htmlFor: opt.value, children: opt.label })
924
1121
  ] }, opt.value))
925
1122
  ]
926
1123
  }
@@ -934,7 +1131,7 @@ import { useEffect as useEffect9, useState as useState10 } from "react";
934
1131
  // src/components/Global/TinyMceEditor.tsx
935
1132
  import { useMemo, useRef } from "react";
936
1133
  import { Editor } from "@tinymce/tinymce-react";
937
- import { jsx as jsx23 } from "react/jsx-runtime";
1134
+ import { jsx as jsx26 } from "react/jsx-runtime";
938
1135
  function MyEditor({
939
1136
  value,
940
1137
  onChange,
@@ -959,7 +1156,7 @@ function MyEditor({
959
1156
  }
960
1157
  return toolbar;
961
1158
  }, [isDefault]);
962
- return /* @__PURE__ */ jsx23(
1159
+ return /* @__PURE__ */ jsx26(
963
1160
  Editor,
964
1161
  {
965
1162
  apiKey: process.env.NEXT_PUBLIC_TINYMCE_API_KEY,
@@ -1003,14 +1200,14 @@ function MyEditor({
1003
1200
  }
1004
1201
 
1005
1202
  // src/components/Inputs/RichText/RichText.tsx
1006
- import { jsx as jsx24, jsxs as jsxs11 } from "react/jsx-runtime";
1203
+ import { jsx as jsx27, jsxs as jsxs14 } from "react/jsx-runtime";
1007
1204
  function RichText({ className, style, ...props }) {
1008
1205
  const [error, setError] = useState10(null);
1009
1206
  useEffect9(() => {
1010
1207
  if (!props.validateOnMount) return;
1011
1208
  setError(props.errorMessage || null);
1012
1209
  }, [props.errorMessage, props.validateOnMount]);
1013
- return /* @__PURE__ */ jsxs11(
1210
+ return /* @__PURE__ */ jsxs14(
1014
1211
  "div",
1015
1212
  {
1016
1213
  className: cn(className, error ? "border-red-500" : ""),
@@ -1019,8 +1216,8 @@ function RichText({ className, style, ...props }) {
1019
1216
  borderColor: error ? "#f87171" : style?.borderColor
1020
1217
  },
1021
1218
  children: [
1022
- /* @__PURE__ */ jsx24(MyEditor, { onChange: (content) => props.onChange?.(content), value: props.value, isDefault: true }),
1023
- error && /* @__PURE__ */ jsx24("p", { className: "mt-1 text-xs text-red-500", children: error })
1219
+ /* @__PURE__ */ jsx27(MyEditor, { onChange: (content) => props.onChange?.(content), value: props.value, isDefault: true }),
1220
+ error && /* @__PURE__ */ jsx27("p", { className: "mt-1 text-xs text-red-500", children: error })
1024
1221
  ]
1025
1222
  }
1026
1223
  );
@@ -1031,16 +1228,16 @@ import * as React8 from "react";
1031
1228
 
1032
1229
  // src/components/ui/select.tsx
1033
1230
  import * as SelectPrimitive from "@radix-ui/react-select";
1034
- import { jsx as jsx25, jsxs as jsxs12 } from "react/jsx-runtime";
1231
+ import { jsx as jsx28, jsxs as jsxs15 } from "react/jsx-runtime";
1035
1232
  function Select({
1036
1233
  ...props
1037
1234
  }) {
1038
- return /* @__PURE__ */ jsx25(SelectPrimitive.Root, { "data-slot": "select", ...props });
1235
+ return /* @__PURE__ */ jsx28(SelectPrimitive.Root, { "data-slot": "select", ...props });
1039
1236
  }
1040
1237
  function SelectValue({
1041
1238
  ...props
1042
1239
  }) {
1043
- return /* @__PURE__ */ jsx25(SelectPrimitive.Value, { "data-slot": "select-value", ...props });
1240
+ return /* @__PURE__ */ jsx28(SelectPrimitive.Value, { "data-slot": "select-value", ...props });
1044
1241
  }
1045
1242
  function SelectTrigger({
1046
1243
  className,
@@ -1048,7 +1245,7 @@ function SelectTrigger({
1048
1245
  children,
1049
1246
  ...props
1050
1247
  }) {
1051
- return /* @__PURE__ */ jsxs12(
1248
+ return /* @__PURE__ */ jsxs15(
1052
1249
  SelectPrimitive.Trigger,
1053
1250
  {
1054
1251
  "data-slot": "select-trigger",
@@ -1060,7 +1257,7 @@ function SelectTrigger({
1060
1257
  ...props,
1061
1258
  children: [
1062
1259
  children,
1063
- /* @__PURE__ */ jsx25(SelectPrimitive.Icon, { asChild: true, children: /* @__PURE__ */ jsx25(ChevronDown, { className: "size-4 opacity-50" }) })
1260
+ /* @__PURE__ */ jsx28(SelectPrimitive.Icon, { asChild: true, children: /* @__PURE__ */ jsx28(ChevronDown, { className: "size-4 opacity-50" }) })
1064
1261
  ]
1065
1262
  }
1066
1263
  );
@@ -1071,7 +1268,7 @@ function SelectContent({
1071
1268
  position = "popper",
1072
1269
  ...props
1073
1270
  }) {
1074
- return /* @__PURE__ */ jsx25(SelectPrimitive.Portal, { children: /* @__PURE__ */ jsxs12(
1271
+ return /* @__PURE__ */ jsx28(SelectPrimitive.Portal, { children: /* @__PURE__ */ jsxs15(
1075
1272
  SelectPrimitive.Content,
1076
1273
  {
1077
1274
  "data-slot": "select-content",
@@ -1083,8 +1280,8 @@ function SelectContent({
1083
1280
  position,
1084
1281
  ...props,
1085
1282
  children: [
1086
- /* @__PURE__ */ jsx25(SelectScrollUpButton, {}),
1087
- /* @__PURE__ */ jsx25(
1283
+ /* @__PURE__ */ jsx28(SelectScrollUpButton, {}),
1284
+ /* @__PURE__ */ jsx28(
1088
1285
  SelectPrimitive.Viewport,
1089
1286
  {
1090
1287
  className: cn(
@@ -1094,7 +1291,7 @@ function SelectContent({
1094
1291
  children
1095
1292
  }
1096
1293
  ),
1097
- /* @__PURE__ */ jsx25(SelectScrollDownButton, {})
1294
+ /* @__PURE__ */ jsx28(SelectScrollDownButton, {})
1098
1295
  ]
1099
1296
  }
1100
1297
  ) });
@@ -1104,7 +1301,7 @@ function SelectItem({
1104
1301
  children,
1105
1302
  ...props
1106
1303
  }) {
1107
- return /* @__PURE__ */ jsxs12(
1304
+ return /* @__PURE__ */ jsxs15(
1108
1305
  SelectPrimitive.Item,
1109
1306
  {
1110
1307
  "data-slot": "select-item",
@@ -1114,8 +1311,8 @@ function SelectItem({
1114
1311
  ),
1115
1312
  ...props,
1116
1313
  children: [
1117
- /* @__PURE__ */ jsx25("span", { className: "absolute right-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ jsx25(SelectPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx25(Check, { className: "size-4" }) }) }),
1118
- /* @__PURE__ */ jsx25(SelectPrimitive.ItemText, { children })
1314
+ /* @__PURE__ */ jsx28("span", { className: "absolute right-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ jsx28(SelectPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx28(Check, { className: "size-4" }) }) }),
1315
+ /* @__PURE__ */ jsx28(SelectPrimitive.ItemText, { children })
1119
1316
  ]
1120
1317
  }
1121
1318
  );
@@ -1124,7 +1321,7 @@ function SelectScrollUpButton({
1124
1321
  className,
1125
1322
  ...props
1126
1323
  }) {
1127
- return /* @__PURE__ */ jsx25(
1324
+ return /* @__PURE__ */ jsx28(
1128
1325
  SelectPrimitive.ScrollUpButton,
1129
1326
  {
1130
1327
  "data-slot": "select-scroll-up-button",
@@ -1133,7 +1330,7 @@ function SelectScrollUpButton({
1133
1330
  className
1134
1331
  ),
1135
1332
  ...props,
1136
- children: /* @__PURE__ */ jsx25(ChevronUp, { className: "size-4" })
1333
+ children: /* @__PURE__ */ jsx28(ChevronUp, { className: "size-4" })
1137
1334
  }
1138
1335
  );
1139
1336
  }
@@ -1141,7 +1338,7 @@ function SelectScrollDownButton({
1141
1338
  className,
1142
1339
  ...props
1143
1340
  }) {
1144
- return /* @__PURE__ */ jsx25(
1341
+ return /* @__PURE__ */ jsx28(
1145
1342
  SelectPrimitive.ScrollDownButton,
1146
1343
  {
1147
1344
  "data-slot": "select-scroll-down-button",
@@ -1150,13 +1347,13 @@ function SelectScrollDownButton({
1150
1347
  className
1151
1348
  ),
1152
1349
  ...props,
1153
- children: /* @__PURE__ */ jsx25(ChevronDown, { className: "size-4" })
1350
+ children: /* @__PURE__ */ jsx28(ChevronDown, { className: "size-4" })
1154
1351
  }
1155
1352
  );
1156
1353
  }
1157
1354
 
1158
1355
  // src/components/Inputs/Dropdown/Dropdown.tsx
1159
- import { Fragment as Fragment9, jsx as jsx26, jsxs as jsxs13 } from "react/jsx-runtime";
1356
+ import { Fragment as Fragment9, jsx as jsx29, jsxs as jsxs16 } from "react/jsx-runtime";
1160
1357
  var Dropdown = ({ className, style, ...props }) => {
1161
1358
  const list = props.data || [];
1162
1359
  const placeholder = props.placeholder ? props.placeholder : "Placeholder text";
@@ -1177,9 +1374,9 @@ var Dropdown = ({ className, style, ...props }) => {
1177
1374
  value: item[dataKey],
1178
1375
  label: item[dataLabel]
1179
1376
  }));
1180
- return /* @__PURE__ */ jsxs13(Fragment9, { children: [
1181
- /* @__PURE__ */ jsxs13(Select, { name: props.name, value: props.value, onValueChange: handleChange, disabled: isDisabled || !isEditable, children: [
1182
- /* @__PURE__ */ jsx26(
1377
+ return /* @__PURE__ */ jsxs16(Fragment9, { children: [
1378
+ /* @__PURE__ */ jsxs16(Select, { name: props.name, value: props.value, onValueChange: handleChange, disabled: isDisabled || !isEditable, children: [
1379
+ /* @__PURE__ */ jsx29(
1183
1380
  SelectTrigger,
1184
1381
  {
1185
1382
  id: props.name || "select-field",
@@ -1189,12 +1386,12 @@ var Dropdown = ({ className, style, ...props }) => {
1189
1386
  borderColor: error ? "#f87171" : style?.borderColor
1190
1387
  },
1191
1388
  "aria-readonly": isReadonly,
1192
- children: /* @__PURE__ */ jsx26(SelectValue, { placeholder })
1389
+ children: /* @__PURE__ */ jsx29(SelectValue, { placeholder })
1193
1390
  }
1194
1391
  ),
1195
- /* @__PURE__ */ jsx26(SelectContent, { children: options.map((opt) => /* @__PURE__ */ jsx26(SelectItem, { value: opt.value, children: opt.label }, opt.value)) })
1392
+ /* @__PURE__ */ jsx29(SelectContent, { children: options.map((opt) => /* @__PURE__ */ jsx29(SelectItem, { value: opt.value, children: opt.label }, opt.value)) })
1196
1393
  ] }),
1197
- error && /* @__PURE__ */ jsx26("p", { className: "mt-1 text-xs text-red-500", children: error })
1394
+ error && /* @__PURE__ */ jsx29("p", { className: "mt-1 text-xs text-red-500", children: error })
1198
1395
  ] });
1199
1396
  };
1200
1397
  var Dropdown_default = Dropdown;
@@ -1204,12 +1401,12 @@ import { useEffect as useEffect11, useState as useState12 } from "react";
1204
1401
 
1205
1402
  // src/components/ui/switch.tsx
1206
1403
  import * as SwitchPrimitive from "@radix-ui/react-switch";
1207
- import { jsx as jsx27 } from "react/jsx-runtime";
1404
+ import { jsx as jsx30 } from "react/jsx-runtime";
1208
1405
  function Switch({
1209
1406
  className,
1210
1407
  ...props
1211
1408
  }) {
1212
- return /* @__PURE__ */ jsx27(
1409
+ return /* @__PURE__ */ jsx30(
1213
1410
  SwitchPrimitive.Root,
1214
1411
  {
1215
1412
  "data-slot": "switch",
@@ -1218,7 +1415,7 @@ function Switch({
1218
1415
  className
1219
1416
  ),
1220
1417
  ...props,
1221
- children: /* @__PURE__ */ jsx27(
1418
+ children: /* @__PURE__ */ jsx30(
1222
1419
  SwitchPrimitive.Thumb,
1223
1420
  {
1224
1421
  "data-slot": "switch-thumb",
@@ -1232,7 +1429,7 @@ function Switch({
1232
1429
  }
1233
1430
 
1234
1431
  // src/components/Inputs/SwitchToggle/SwitchToggle.tsx
1235
- import { Fragment as Fragment10, jsx as jsx28, jsxs as jsxs14 } from "react/jsx-runtime";
1432
+ import { Fragment as Fragment10, jsx as jsx31, jsxs as jsxs17 } from "react/jsx-runtime";
1236
1433
  var SwitchToggle = ({ className, style, ...props }) => {
1237
1434
  const isEditable = props.isEditable ?? true;
1238
1435
  const isDisabled = props.isDisabled ?? false;
@@ -1244,9 +1441,9 @@ var SwitchToggle = ({ className, style, ...props }) => {
1244
1441
  const handleChange = (value) => {
1245
1442
  props.onChange?.(value);
1246
1443
  };
1247
- return /* @__PURE__ */ jsxs14(Fragment10, { children: [
1248
- /* @__PURE__ */ jsx28("div", { className, style, children: /* @__PURE__ */ jsxs14("div", { className: "flex items-center space-x-2 mb-2", children: [
1249
- /* @__PURE__ */ jsx28(
1444
+ return /* @__PURE__ */ jsxs17(Fragment10, { children: [
1445
+ /* @__PURE__ */ jsx31("div", { className, style, children: /* @__PURE__ */ jsxs17("div", { className: "flex items-center space-x-2 mb-2", children: [
1446
+ /* @__PURE__ */ jsx31(
1250
1447
  Switch,
1251
1448
  {
1252
1449
  id: props.name || "switch",
@@ -1255,9 +1452,9 @@ var SwitchToggle = ({ className, style, ...props }) => {
1255
1452
  disabled: isDisabled || !isEditable
1256
1453
  }
1257
1454
  ),
1258
- /* @__PURE__ */ jsx28(Label, { htmlFor: props.name || "switch", children: props.text })
1455
+ /* @__PURE__ */ jsx31(Label2, { htmlFor: props.name || "switch", children: props.text })
1259
1456
  ] }) }),
1260
- error && /* @__PURE__ */ jsx28("p", { className: "mt-1 text-xs text-red-500", children: error })
1457
+ error && /* @__PURE__ */ jsx31("p", { className: "mt-1 text-xs text-red-500", children: error })
1261
1458
  ] });
1262
1459
  };
1263
1460
  var SwitchToggle_default = SwitchToggle;
@@ -1266,7 +1463,7 @@ var SwitchToggle_default = SwitchToggle;
1266
1463
  import * as React9 from "react";
1267
1464
  import { PhoneInput as PhoneInputField } from "react-international-phone";
1268
1465
  import "react-international-phone/style.css";
1269
- import { Fragment as Fragment11, jsx as jsx29, jsxs as jsxs15 } from "react/jsx-runtime";
1466
+ import { Fragment as Fragment11, jsx as jsx32, jsxs as jsxs18 } from "react/jsx-runtime";
1270
1467
  var PhoneInput = ({ className, style, ...props }) => {
1271
1468
  const placeholder = props.placeholder ?? "Enter phone number";
1272
1469
  const isEditable = props.isEditable ?? true;
@@ -1279,8 +1476,8 @@ var PhoneInput = ({ className, style, ...props }) => {
1279
1476
  const handleChange = (val) => {
1280
1477
  props.onChange?.(val);
1281
1478
  };
1282
- return /* @__PURE__ */ jsxs15(Fragment11, { children: [
1283
- /* @__PURE__ */ jsx29(
1479
+ return /* @__PURE__ */ jsxs18(Fragment11, { children: [
1480
+ /* @__PURE__ */ jsx32(
1284
1481
  PhoneInputField,
1285
1482
  {
1286
1483
  defaultCountry: "in",
@@ -1299,14 +1496,14 @@ var PhoneInput = ({ className, style, ...props }) => {
1299
1496
  disabled: isDisabled || !isEditable
1300
1497
  }
1301
1498
  ),
1302
- error && /* @__PURE__ */ jsx29("p", { className: "mt-1 text-xs text-red-500", children: error })
1499
+ error && /* @__PURE__ */ jsx32("p", { className: "mt-1 text-xs text-red-500", children: error })
1303
1500
  ] });
1304
1501
  };
1305
1502
  var PhoneInput_default = PhoneInput;
1306
1503
 
1307
1504
  // src/components/Inputs/SearchInput/SearchInput.tsx
1308
1505
  import * as React10 from "react";
1309
- import { Fragment as Fragment12, jsx as jsx30, jsxs as jsxs16 } from "react/jsx-runtime";
1506
+ import { Fragment as Fragment12, jsx as jsx33, jsxs as jsxs19 } from "react/jsx-runtime";
1310
1507
  var SearchInput = ({ className, style, ...props }) => {
1311
1508
  const placeholder = props.placeholder ?? "Placeholder text";
1312
1509
  const isEditable = props.isEditable ?? true;
@@ -1321,10 +1518,10 @@ var SearchInput = ({ className, style, ...props }) => {
1321
1518
  const handleChange = (e) => {
1322
1519
  props.onChange?.(e);
1323
1520
  };
1324
- return /* @__PURE__ */ jsxs16(Fragment12, { children: [
1325
- /* @__PURE__ */ jsxs16("div", { className: "flex justify-start items-center relative", children: [
1326
- /* @__PURE__ */ jsx30(Search, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-[#BDBDBD]" }),
1327
- /* @__PURE__ */ jsx30(
1521
+ return /* @__PURE__ */ jsxs19(Fragment12, { children: [
1522
+ /* @__PURE__ */ jsxs19("div", { className: "flex justify-start items-center relative", children: [
1523
+ /* @__PURE__ */ jsx33(Search, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-[#BDBDBD]" }),
1524
+ /* @__PURE__ */ jsx33(
1328
1525
  Input,
1329
1526
  {
1330
1527
  type: "text",
@@ -1344,14 +1541,14 @@ var SearchInput = ({ className, style, ...props }) => {
1344
1541
  }
1345
1542
  )
1346
1543
  ] }),
1347
- error && /* @__PURE__ */ jsx30("p", { className: "mt-1 text-xs text-red-500", children: error })
1544
+ error && /* @__PURE__ */ jsx33("p", { className: "mt-1 text-xs text-red-500", children: error })
1348
1545
  ] });
1349
1546
  };
1350
1547
  var SearchInput_default = SearchInput;
1351
1548
 
1352
1549
  // src/components/Inputs/FileInput/FileInput.tsx
1353
1550
  import { useEffect as useEffect14, useState as useState15 } from "react";
1354
- import { jsx as jsx31, jsxs as jsxs17 } from "react/jsx-runtime";
1551
+ import { jsx as jsx34, jsxs as jsxs20 } from "react/jsx-runtime";
1355
1552
  var FileInput = ({ className, style, ...props }) => {
1356
1553
  const placeholder = props.placeholder ?? "Placeholder text";
1357
1554
  const [error, setError] = useState15(null);
@@ -1359,8 +1556,8 @@ var FileInput = ({ className, style, ...props }) => {
1359
1556
  if (!props.validateOnMount) return;
1360
1557
  setError(props.errorMessage || null);
1361
1558
  }, [props.errorMessage, props.validateOnMount]);
1362
- return /* @__PURE__ */ jsxs17("div", { className: "d-flex items-center relative align-middle", children: [
1363
- /* @__PURE__ */ jsx31(
1559
+ return /* @__PURE__ */ jsxs20("div", { className: "d-flex items-center relative align-middle", children: [
1560
+ /* @__PURE__ */ jsx34(
1364
1561
  Input,
1365
1562
  {
1366
1563
  type: "file",
@@ -1379,14 +1576,14 @@ var FileInput = ({ className, style, ...props }) => {
1379
1576
  }
1380
1577
  }
1381
1578
  ),
1382
- error && /* @__PURE__ */ jsx31("p", { className: "mt-1 text-xs text-red-500", children: error })
1579
+ error && /* @__PURE__ */ jsx34("p", { className: "mt-1 text-xs text-red-500", children: error })
1383
1580
  ] });
1384
1581
  };
1385
1582
  var FileInput_default = FileInput;
1386
1583
 
1387
1584
  // src/components/Inputs/DatePicker/DatePicker.tsx
1388
1585
  import React11, { useEffect as useEffect15 } from "react";
1389
- import { Fragment as Fragment13, jsx as jsx32, jsxs as jsxs18 } from "react/jsx-runtime";
1586
+ import { Fragment as Fragment13, jsx as jsx35, jsxs as jsxs21 } from "react/jsx-runtime";
1390
1587
  function DatePicker({ className, style, ...props }) {
1391
1588
  const placeholder = props.placeholder ?? "Placeholder text";
1392
1589
  const minimumDate = props.minimumDate ?? "none";
@@ -1419,10 +1616,10 @@ function DatePicker({ className, style, ...props }) {
1419
1616
  const handleChange = (e) => {
1420
1617
  props.onChange?.(e);
1421
1618
  };
1422
- return /* @__PURE__ */ jsxs18(Fragment13, { children: [
1423
- /* @__PURE__ */ jsxs18("div", { className: "flex justify-start items-center relative", children: [
1424
- /* @__PURE__ */ jsx32(Calendar, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-[#BDBDBD]" }),
1425
- /* @__PURE__ */ jsx32(
1619
+ return /* @__PURE__ */ jsxs21(Fragment13, { children: [
1620
+ /* @__PURE__ */ jsxs21("div", { className: "flex justify-start items-center relative", children: [
1621
+ /* @__PURE__ */ jsx35(Calendar, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-[#BDBDBD]" }),
1622
+ /* @__PURE__ */ jsx35(
1426
1623
  Input,
1427
1624
  {
1428
1625
  type: "date",
@@ -1448,7 +1645,7 @@ function DatePicker({ className, style, ...props }) {
1448
1645
  }
1449
1646
  )
1450
1647
  ] }),
1451
- error && /* @__PURE__ */ jsx32("p", { className: "mt-1 text-xs text-red-500", children: error })
1648
+ error && /* @__PURE__ */ jsx35("p", { className: "mt-1 text-xs text-red-500", children: error })
1452
1649
  ] });
1453
1650
  }
1454
1651
 
@@ -1459,7 +1656,7 @@ import { addDays, format } from "date-fns";
1459
1656
  // src/components/ui/calendar.tsx
1460
1657
  import * as React12 from "react";
1461
1658
  import { DayPicker, getDefaultClassNames } from "react-day-picker";
1462
- import { jsx as jsx33 } from "react/jsx-runtime";
1659
+ import { jsx as jsx36 } from "react/jsx-runtime";
1463
1660
  function Calendar2({
1464
1661
  className,
1465
1662
  classNames,
@@ -1471,7 +1668,7 @@ function Calendar2({
1471
1668
  ...props
1472
1669
  }) {
1473
1670
  const defaultClassNames = getDefaultClassNames();
1474
- return /* @__PURE__ */ jsx33(
1671
+ return /* @__PURE__ */ jsx36(
1475
1672
  DayPicker,
1476
1673
  {
1477
1674
  showOutsideDays,
@@ -1570,7 +1767,7 @@ function Calendar2({
1570
1767
  },
1571
1768
  components: {
1572
1769
  Root: ({ className: className2, rootRef, ...props2 }) => {
1573
- return /* @__PURE__ */ jsx33(
1770
+ return /* @__PURE__ */ jsx36(
1574
1771
  "div",
1575
1772
  {
1576
1773
  "data-slot": "calendar",
@@ -1582,10 +1779,10 @@ function Calendar2({
1582
1779
  },
1583
1780
  Chevron: ({ className: className2, orientation, ...props2 }) => {
1584
1781
  if (orientation === "left") {
1585
- return /* @__PURE__ */ jsx33(ChevronLeft, { className: cn("size-4", className2), ...props2 });
1782
+ return /* @__PURE__ */ jsx36(ChevronLeft, { className: cn("size-4", className2), ...props2 });
1586
1783
  }
1587
1784
  if (orientation === "right") {
1588
- return /* @__PURE__ */ jsx33(
1785
+ return /* @__PURE__ */ jsx36(
1589
1786
  ChevronRight,
1590
1787
  {
1591
1788
  className: cn("size-4", className2),
@@ -1593,11 +1790,11 @@ function Calendar2({
1593
1790
  }
1594
1791
  );
1595
1792
  }
1596
- return /* @__PURE__ */ jsx33(ChevronDown, { className: cn("size-4", className2), ...props2 });
1793
+ return /* @__PURE__ */ jsx36(ChevronDown, { className: cn("size-4", className2), ...props2 });
1597
1794
  },
1598
1795
  DayButton: CalendarDayButton,
1599
1796
  WeekNumber: ({ children, ...props2 }) => {
1600
- return /* @__PURE__ */ jsx33("td", { ...props2, children: /* @__PURE__ */ jsx33("div", { className: "flex size-(--cell-size) items-center justify-center text-center", children }) });
1797
+ return /* @__PURE__ */ jsx36("td", { ...props2, children: /* @__PURE__ */ jsx36("div", { className: "flex size-(--cell-size) items-center justify-center text-center", children }) });
1601
1798
  },
1602
1799
  ...components
1603
1800
  },
@@ -1616,7 +1813,7 @@ function CalendarDayButton({
1616
1813
  React12.useEffect(() => {
1617
1814
  if (modifiers.focused) ref.current?.focus();
1618
1815
  }, [modifiers.focused]);
1619
- return /* @__PURE__ */ jsx33(
1816
+ return /* @__PURE__ */ jsx36(
1620
1817
  Button,
1621
1818
  {
1622
1819
  ref,
@@ -1639,16 +1836,16 @@ function CalendarDayButton({
1639
1836
 
1640
1837
  // src/components/ui/popover.tsx
1641
1838
  import * as PopoverPrimitive from "@radix-ui/react-popover";
1642
- import { jsx as jsx34 } from "react/jsx-runtime";
1839
+ import { jsx as jsx37 } from "react/jsx-runtime";
1643
1840
  function Popover({
1644
1841
  ...props
1645
1842
  }) {
1646
- return /* @__PURE__ */ jsx34(PopoverPrimitive.Root, { "data-slot": "popover", ...props });
1843
+ return /* @__PURE__ */ jsx37(PopoverPrimitive.Root, { "data-slot": "popover", ...props });
1647
1844
  }
1648
1845
  function PopoverTrigger({
1649
1846
  ...props
1650
1847
  }) {
1651
- return /* @__PURE__ */ jsx34(PopoverPrimitive.Trigger, { "data-slot": "popover-trigger", ...props });
1848
+ return /* @__PURE__ */ jsx37(PopoverPrimitive.Trigger, { "data-slot": "popover-trigger", ...props });
1652
1849
  }
1653
1850
  function PopoverContent({
1654
1851
  className,
@@ -1656,7 +1853,7 @@ function PopoverContent({
1656
1853
  sideOffset = 4,
1657
1854
  ...props
1658
1855
  }) {
1659
- return /* @__PURE__ */ jsx34(PopoverPrimitive.Portal, { children: /* @__PURE__ */ jsx34(
1856
+ return /* @__PURE__ */ jsx37(PopoverPrimitive.Portal, { children: /* @__PURE__ */ jsx37(
1660
1857
  PopoverPrimitive.Content,
1661
1858
  {
1662
1859
  "data-slot": "popover-content",
@@ -1672,7 +1869,7 @@ function PopoverContent({
1672
1869
  }
1673
1870
 
1674
1871
  // src/components/Inputs/DateRange/DateRange.tsx
1675
- import { Fragment as Fragment14, jsx as jsx35, jsxs as jsxs19 } from "react/jsx-runtime";
1872
+ import { Fragment as Fragment14, jsx as jsx38, jsxs as jsxs22 } from "react/jsx-runtime";
1676
1873
  var DateRange = ({ className, style, ...props }) => {
1677
1874
  const [error, setError] = React13.useState(null);
1678
1875
  const isDateRange = (val) => !!val && val.from instanceof Date;
@@ -1692,9 +1889,9 @@ var DateRange = ({ className, style, ...props }) => {
1692
1889
  props.onChange?.(value);
1693
1890
  }
1694
1891
  };
1695
- return /* @__PURE__ */ jsxs19(Fragment14, { children: [
1696
- /* @__PURE__ */ jsx35("div", { className, style, children: /* @__PURE__ */ jsxs19(Popover, { children: [
1697
- /* @__PURE__ */ jsx35(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsx35(
1892
+ return /* @__PURE__ */ jsxs22(Fragment14, { children: [
1893
+ /* @__PURE__ */ jsx38("div", { className, style, children: /* @__PURE__ */ jsxs22(Popover, { children: [
1894
+ /* @__PURE__ */ jsx38(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsx38(
1698
1895
  Button,
1699
1896
  {
1700
1897
  id: "date",
@@ -1703,15 +1900,15 @@ var DateRange = ({ className, style, ...props }) => {
1703
1900
  "w-[300px] justify-start text-left font-normal text-[11px]",
1704
1901
  !date && "text-muted-foreground"
1705
1902
  ),
1706
- children: date?.from ? date.to ? /* @__PURE__ */ jsxs19(Fragment14, { children: [
1903
+ children: date?.from ? date.to ? /* @__PURE__ */ jsxs22(Fragment14, { children: [
1707
1904
  format(date.from, "LLL dd, y"),
1708
1905
  " -",
1709
1906
  " ",
1710
1907
  format(date.to, "LLL dd, y")
1711
- ] }) : format(date.from, "LLL dd, y") : /* @__PURE__ */ jsx35("span", { children: "Pick a date range" })
1908
+ ] }) : format(date.from, "LLL dd, y") : /* @__PURE__ */ jsx38("span", { children: "Pick a date range" })
1712
1909
  }
1713
1910
  ) }),
1714
- /* @__PURE__ */ jsx35(PopoverContent, { className: "w-auto p-0", align: "start", children: /* @__PURE__ */ jsx35(
1911
+ /* @__PURE__ */ jsx38(PopoverContent, { className: "w-auto p-0", align: "start", children: /* @__PURE__ */ jsx38(
1715
1912
  Calendar2,
1716
1913
  {
1717
1914
  mode: "range",
@@ -1722,14 +1919,14 @@ var DateRange = ({ className, style, ...props }) => {
1722
1919
  }
1723
1920
  ) })
1724
1921
  ] }) }),
1725
- error && /* @__PURE__ */ jsx35("p", { className: "mt-1 text-xs text-red-500", children: error })
1922
+ error && /* @__PURE__ */ jsx38("p", { className: "mt-1 text-xs text-red-500", children: error })
1726
1923
  ] });
1727
1924
  };
1728
1925
  var DateRange_default = DateRange;
1729
1926
 
1730
1927
  // src/components/Inputs/TextInputGroup/TextInputGroup.tsx
1731
1928
  import * as React14 from "react";
1732
- import { Fragment as Fragment15, jsx as jsx36, jsxs as jsxs20 } from "react/jsx-runtime";
1929
+ import { Fragment as Fragment15, jsx as jsx39, jsxs as jsxs23 } from "react/jsx-runtime";
1733
1930
  var TextInputGroup = ({ className, style, prepend, append, ...props }) => {
1734
1931
  const placeholder = props.placeholder ?? "Placeholder text";
1735
1932
  const isEditable = props.isEditable ?? true;
@@ -1744,8 +1941,8 @@ var TextInputGroup = ({ className, style, prepend, append, ...props }) => {
1744
1941
  const handleChange = (e) => {
1745
1942
  props.onChange?.(e);
1746
1943
  };
1747
- return /* @__PURE__ */ jsxs20(Fragment15, { children: [
1748
- /* @__PURE__ */ jsxs20(
1944
+ return /* @__PURE__ */ jsxs23(Fragment15, { children: [
1945
+ /* @__PURE__ */ jsxs23(
1749
1946
  "div",
1750
1947
  {
1751
1948
  className: cn(
@@ -1755,8 +1952,8 @@ var TextInputGroup = ({ className, style, prepend, append, ...props }) => {
1755
1952
  error ? "border-red-500" : ""
1756
1953
  ),
1757
1954
  children: [
1758
- prepend && /* @__PURE__ */ jsx36("div", { className: "px-3 flex items-center bg-gray-500 text-white h-10 rounded-l-md", children: prepend }),
1759
- /* @__PURE__ */ jsx36(
1955
+ prepend && /* @__PURE__ */ jsx39("div", { className: "px-3 flex items-center bg-gray-500 text-white h-10 rounded-l-md", children: prepend }),
1956
+ /* @__PURE__ */ jsx39(
1760
1957
  Input,
1761
1958
  {
1762
1959
  id: props.name || "prepend-input",
@@ -1778,11 +1975,11 @@ var TextInputGroup = ({ className, style, prepend, append, ...props }) => {
1778
1975
  readOnly: isReadonly
1779
1976
  }
1780
1977
  ),
1781
- append && /* @__PURE__ */ jsx36("div", { className: "px-3 flex items-center bg-gray-500 text-white h-10 rounded-r-md", children: append })
1978
+ append && /* @__PURE__ */ jsx39("div", { className: "px-3 flex items-center bg-gray-500 text-white h-10 rounded-r-md", children: append })
1782
1979
  ]
1783
1980
  }
1784
1981
  ),
1785
- error && /* @__PURE__ */ jsx36("p", { className: "mt-1 text-xs text-red-500", children: error })
1982
+ error && /* @__PURE__ */ jsx39("p", { className: "mt-1 text-xs text-red-500", children: error })
1786
1983
  ] });
1787
1984
  };
1788
1985
  var TextInputGroup_default = TextInputGroup;
@@ -1795,14 +1992,14 @@ import {
1795
1992
  } from "@tanstack/react-table";
1796
1993
 
1797
1994
  // src/components/ui/table.tsx
1798
- import { jsx as jsx37 } from "react/jsx-runtime";
1995
+ import { jsx as jsx40 } from "react/jsx-runtime";
1799
1996
  function Table({ className, ...props }) {
1800
- return /* @__PURE__ */ jsx37(
1997
+ return /* @__PURE__ */ jsx40(
1801
1998
  "div",
1802
1999
  {
1803
2000
  "data-slot": "table-container",
1804
2001
  className: "relative w-full overflow-x-auto rounded-md border border-gray-200 bg-white",
1805
- children: /* @__PURE__ */ jsx37(
2002
+ children: /* @__PURE__ */ jsx40(
1806
2003
  "table",
1807
2004
  {
1808
2005
  "data-slot": "table",
@@ -1814,7 +2011,7 @@ function Table({ className, ...props }) {
1814
2011
  );
1815
2012
  }
1816
2013
  function TableHeader({ className, ...props }) {
1817
- return /* @__PURE__ */ jsx37(
2014
+ return /* @__PURE__ */ jsx40(
1818
2015
  "thead",
1819
2016
  {
1820
2017
  "data-slot": "table-header",
@@ -1827,7 +2024,7 @@ function TableHeader({ className, ...props }) {
1827
2024
  );
1828
2025
  }
1829
2026
  function TableBody({ className, ...props }) {
1830
- return /* @__PURE__ */ jsx37(
2027
+ return /* @__PURE__ */ jsx40(
1831
2028
  "tbody",
1832
2029
  {
1833
2030
  "data-slot": "table-body",
@@ -1840,7 +2037,7 @@ function TableBody({ className, ...props }) {
1840
2037
  );
1841
2038
  }
1842
2039
  function TableRow({ className, ...props }) {
1843
- return /* @__PURE__ */ jsx37(
2040
+ return /* @__PURE__ */ jsx40(
1844
2041
  "tr",
1845
2042
  {
1846
2043
  "data-slot": "table-row",
@@ -1853,7 +2050,7 @@ function TableRow({ className, ...props }) {
1853
2050
  );
1854
2051
  }
1855
2052
  function TableHead({ className, ...props }) {
1856
- return /* @__PURE__ */ jsx37(
2053
+ return /* @__PURE__ */ jsx40(
1857
2054
  "th",
1858
2055
  {
1859
2056
  "data-slot": "table-head",
@@ -1866,7 +2063,7 @@ function TableHead({ className, ...props }) {
1866
2063
  );
1867
2064
  }
1868
2065
  function TableCell({ className, ...props }) {
1869
- return /* @__PURE__ */ jsx37(
2066
+ return /* @__PURE__ */ jsx40(
1870
2067
  "td",
1871
2068
  {
1872
2069
  "data-slot": "table-cell",
@@ -1880,7 +2077,7 @@ function TableCell({ className, ...props }) {
1880
2077
  }
1881
2078
 
1882
2079
  // src/components/ui/data-table.tsx
1883
- import { Fragment as Fragment16, jsx as jsx38, jsxs as jsxs21 } from "react/jsx-runtime";
2080
+ import { Fragment as Fragment16, jsx as jsx41, jsxs as jsxs24 } from "react/jsx-runtime";
1884
2081
  function DataTable({
1885
2082
  columns,
1886
2083
  rowActions,
@@ -1905,14 +2102,14 @@ function DataTable({
1905
2102
  onCellClick(rowData, columnId);
1906
2103
  }
1907
2104
  };
1908
- return /* @__PURE__ */ jsx38("div", { className: "overflow-hidden rounded-md border w-full", children: /* @__PURE__ */ jsxs21(Table, { children: [
1909
- /* @__PURE__ */ jsx38(TableHeader, { children: table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ jsx38(TableRow, { children: headerGroup.headers.map((header) => {
1910
- return /* @__PURE__ */ jsx38(TableHead, { children: header.isPlaceholder ? null : flexRender(
2105
+ return /* @__PURE__ */ jsx41("div", { className: "overflow-hidden rounded-md border w-full", children: /* @__PURE__ */ jsxs24(Table, { children: [
2106
+ /* @__PURE__ */ jsx41(TableHeader, { children: table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ jsx41(TableRow, { children: headerGroup.headers.map((header) => {
2107
+ return /* @__PURE__ */ jsx41(TableHead, { children: header.isPlaceholder ? null : flexRender(
1911
2108
  header.column.columnDef.header,
1912
2109
  header.getContext()
1913
2110
  ) }, header.id);
1914
2111
  }) }, headerGroup.id)) }),
1915
- /* @__PURE__ */ jsx38(TableBody, { children: loading ? /* @__PURE__ */ jsx38(TableRow, { children: /* @__PURE__ */ jsx38(TableCell, { colSpan: columns.length, className: "h-24 text-center", children: "Loading..." }) }) : /* @__PURE__ */ jsx38(Fragment16, { children: table.getRowModel().rows?.length ? table.getRowModel().rows.map((row) => /* @__PURE__ */ jsxs21(
2112
+ /* @__PURE__ */ jsx41(TableBody, { children: loading ? /* @__PURE__ */ jsx41(TableRow, { children: /* @__PURE__ */ jsx41(TableCell, { colSpan: columns.length, className: "h-24 text-center", children: "Loading..." }) }) : /* @__PURE__ */ jsx41(Fragment16, { children: table.getRowModel().rows?.length ? table.getRowModel().rows.map((row) => /* @__PURE__ */ jsxs24(
1916
2113
  TableRow,
1917
2114
  {
1918
2115
  "data-state": row.getIsSelected() && "selected",
@@ -1922,7 +2119,7 @@ function DataTable({
1922
2119
  const isCellClickable = cellClickEnabled(row.original, cell.column.id);
1923
2120
  const dynamicClass = cell.column.columnDef.meta?.cellClass || "";
1924
2121
  const dynamicStyle = cell.column.columnDef.meta?.cellStyle || {};
1925
- return /* @__PURE__ */ jsx38(
2122
+ return /* @__PURE__ */ jsx41(
1926
2123
  TableCell,
1927
2124
  {
1928
2125
  className: `${dynamicClass} ${isCellClickable ? "underline cursor-pointer" : ""}`,
@@ -1937,18 +2134,18 @@ function DataTable({
1937
2134
  cell.id
1938
2135
  );
1939
2136
  }),
1940
- rowActions.length > 0 && /* @__PURE__ */ jsx38("div", { className: "absolute top-0 right-0 bg-white py-3 min-w-[100px] z-50 shadow-md flex items-center justify-center gap-3 p-2 opacity-0 group-hover:opacity-100 duration-300 h-full", children: rowActions.map((action, index) => /* @__PURE__ */ jsx38("p", { className: "text-[#383838] text-[12px] cursor-pointer font-[400]", children: action.header }, index)) })
2137
+ rowActions.length > 0 && /* @__PURE__ */ jsx41("div", { className: "absolute top-0 right-0 bg-white py-3 min-w-[100px] z-50 shadow-md flex items-center justify-center gap-3 p-2 opacity-0 group-hover:opacity-100 duration-300 h-full", children: rowActions.map((action, index) => /* @__PURE__ */ jsx41("p", { className: "text-[#383838] text-[12px] cursor-pointer font-[400]", children: action.header }, index)) })
1941
2138
  ]
1942
2139
  },
1943
2140
  row.id
1944
- )) : /* @__PURE__ */ jsx38(TableRow, { children: /* @__PURE__ */ jsx38(TableCell, { colSpan: columns.length, className: "h-24 text-center", children: "No results." }) }) }) })
2141
+ )) : /* @__PURE__ */ jsx41(TableRow, { children: /* @__PURE__ */ jsx41(TableCell, { colSpan: columns.length, className: "h-24 text-center", children: "No results." }) }) }) })
1945
2142
  ] }) });
1946
2143
  }
1947
2144
 
1948
2145
  // src/components/ui/pagination.tsx
1949
- import { jsx as jsx39, jsxs as jsxs22 } from "react/jsx-runtime";
2146
+ import { jsx as jsx42, jsxs as jsxs25 } from "react/jsx-runtime";
1950
2147
  function Pagination({ className, ...props }) {
1951
- return /* @__PURE__ */ jsx39(
2148
+ return /* @__PURE__ */ jsx42(
1952
2149
  "nav",
1953
2150
  {
1954
2151
  role: "navigation",
@@ -1963,7 +2160,7 @@ function PaginationContent({
1963
2160
  className,
1964
2161
  ...props
1965
2162
  }) {
1966
- return /* @__PURE__ */ jsx39(
2163
+ return /* @__PURE__ */ jsx42(
1967
2164
  "ul",
1968
2165
  {
1969
2166
  "data-slot": "pagination-content",
@@ -1973,7 +2170,7 @@ function PaginationContent({
1973
2170
  );
1974
2171
  }
1975
2172
  function PaginationItem({ ...props }) {
1976
- return /* @__PURE__ */ jsx39("li", { "data-slot": "pagination-item", ...props });
2173
+ return /* @__PURE__ */ jsx42("li", { "data-slot": "pagination-item", ...props });
1977
2174
  }
1978
2175
  function PaginationLink({
1979
2176
  className,
@@ -1981,7 +2178,7 @@ function PaginationLink({
1981
2178
  size = "icon",
1982
2179
  ...props
1983
2180
  }) {
1984
- return /* @__PURE__ */ jsx39(
2181
+ return /* @__PURE__ */ jsx42(
1985
2182
  "a",
1986
2183
  {
1987
2184
  "aria-current": isActive ? "page" : void 0,
@@ -2002,7 +2199,7 @@ function PaginationPrevious({
2002
2199
  className,
2003
2200
  ...props
2004
2201
  }) {
2005
- return /* @__PURE__ */ jsxs22(
2202
+ return /* @__PURE__ */ jsxs25(
2006
2203
  PaginationLink,
2007
2204
  {
2008
2205
  "aria-label": "Go to previous page",
@@ -2010,8 +2207,8 @@ function PaginationPrevious({
2010
2207
  className: cn("gap-1 px-2.5 sm:pl-2.5", className),
2011
2208
  ...props,
2012
2209
  children: [
2013
- /* @__PURE__ */ jsx39(ChevronLeft, {}),
2014
- /* @__PURE__ */ jsx39("span", { className: "hidden sm:block", children: "Previous" })
2210
+ /* @__PURE__ */ jsx42(ChevronLeft, {}),
2211
+ /* @__PURE__ */ jsx42("span", { className: "hidden sm:block", children: "Previous" })
2015
2212
  ]
2016
2213
  }
2017
2214
  );
@@ -2020,7 +2217,7 @@ function PaginationNext({
2020
2217
  className,
2021
2218
  ...props
2022
2219
  }) {
2023
- return /* @__PURE__ */ jsxs22(
2220
+ return /* @__PURE__ */ jsxs25(
2024
2221
  PaginationLink,
2025
2222
  {
2026
2223
  "aria-label": "Go to next page",
@@ -2028,8 +2225,8 @@ function PaginationNext({
2028
2225
  className: cn("gap-1 px-2.5 sm:pr-2.5", className),
2029
2226
  ...props,
2030
2227
  children: [
2031
- /* @__PURE__ */ jsx39("span", { className: "hidden sm:block", children: "Next" }),
2032
- /* @__PURE__ */ jsx39(ChevronRight, {})
2228
+ /* @__PURE__ */ jsx42("span", { className: "hidden sm:block", children: "Next" }),
2229
+ /* @__PURE__ */ jsx42(ChevronRight, {})
2033
2230
  ]
2034
2231
  }
2035
2232
  );
@@ -2038,7 +2235,7 @@ function PaginationEllipsis({
2038
2235
  className,
2039
2236
  ...props
2040
2237
  }) {
2041
- return /* @__PURE__ */ jsxs22(
2238
+ return /* @__PURE__ */ jsxs25(
2042
2239
  "span",
2043
2240
  {
2044
2241
  "aria-hidden": true,
@@ -2046,15 +2243,15 @@ function PaginationEllipsis({
2046
2243
  className: cn("flex size-9 items-center justify-center", className),
2047
2244
  ...props,
2048
2245
  children: [
2049
- /* @__PURE__ */ jsx39(Ellipsis, { className: "size-4" }),
2050
- /* @__PURE__ */ jsx39("span", { className: "sr-only", children: "More pages" })
2246
+ /* @__PURE__ */ jsx42(Ellipsis, { className: "size-4" }),
2247
+ /* @__PURE__ */ jsx42("span", { className: "sr-only", children: "More pages" })
2051
2248
  ]
2052
2249
  }
2053
2250
  );
2054
2251
  }
2055
2252
 
2056
2253
  // src/components/DataDisplay/Pagination/Pagination.tsx
2057
- import { jsx as jsx40, jsxs as jsxs23 } from "react/jsx-runtime";
2254
+ import { jsx as jsx43, jsxs as jsxs26 } from "react/jsx-runtime";
2058
2255
  var CustomPagination = ({
2059
2256
  totalPages,
2060
2257
  currentPage,
@@ -2096,15 +2293,15 @@ var CustomPagination = ({
2096
2293
  }
2097
2294
  };
2098
2295
  const pageNumbers = getPageNumbers();
2099
- return /* @__PURE__ */ jsx40(Pagination, { children: /* @__PURE__ */ jsxs23(PaginationContent, { children: [
2100
- /* @__PURE__ */ jsx40(PaginationItem, { children: /* @__PURE__ */ jsx40(
2296
+ return /* @__PURE__ */ jsx43(Pagination, { children: /* @__PURE__ */ jsxs26(PaginationContent, { children: [
2297
+ /* @__PURE__ */ jsx43(PaginationItem, { children: /* @__PURE__ */ jsx43(
2101
2298
  PaginationPrevious,
2102
2299
  {
2103
2300
  onClick: () => handlePageChange(currentPage - 1),
2104
2301
  className: currentPage === 1 ? "pointer-events-none opacity-50" : "cursor-pointer"
2105
2302
  }
2106
2303
  ) }),
2107
- pageNumbers.map((pageNumber, index) => /* @__PURE__ */ jsx40(PaginationItem, { children: pageNumber === "..." ? /* @__PURE__ */ jsx40(PaginationEllipsis, {}) : /* @__PURE__ */ jsx40(
2304
+ pageNumbers.map((pageNumber, index) => /* @__PURE__ */ jsx43(PaginationItem, { children: pageNumber === "..." ? /* @__PURE__ */ jsx43(PaginationEllipsis, {}) : /* @__PURE__ */ jsx43(
2108
2305
  PaginationLink,
2109
2306
  {
2110
2307
  onClick: () => handlePageChange(pageNumber),
@@ -2113,7 +2310,7 @@ var CustomPagination = ({
2113
2310
  children: pageNumber
2114
2311
  }
2115
2312
  ) }, index)),
2116
- /* @__PURE__ */ jsx40(PaginationItem, { children: /* @__PURE__ */ jsx40(
2313
+ /* @__PURE__ */ jsx43(PaginationItem, { children: /* @__PURE__ */ jsx43(
2117
2314
  PaginationNext,
2118
2315
  {
2119
2316
  onClick: () => handlePageChange(currentPage + 1),
@@ -2126,7 +2323,7 @@ var Pagination_default = CustomPagination;
2126
2323
 
2127
2324
  // src/components/DataDisplay/Table/Table.tsx
2128
2325
  import { useState as useState18 } from "react";
2129
- import { jsx as jsx41, jsxs as jsxs24 } from "react/jsx-runtime";
2326
+ import { jsx as jsx44, jsxs as jsxs27 } from "react/jsx-runtime";
2130
2327
  var Table2 = ({
2131
2328
  columns,
2132
2329
  data,
@@ -2149,8 +2346,8 @@ var Table2 = ({
2149
2346
  onPageChange?.(page);
2150
2347
  };
2151
2348
  const paginatedData = enablePagination ? rawData.slice((currentPage - 1) * itemsPerPage, currentPage * itemsPerPage) : rawData;
2152
- return /* @__PURE__ */ jsxs24("div", { className: `${className} space-y-3`, style, children: [
2153
- /* @__PURE__ */ jsx41(
2349
+ return /* @__PURE__ */ jsxs27("div", { className: `${className} space-y-3`, style, children: [
2350
+ /* @__PURE__ */ jsx44(
2154
2351
  DataTable,
2155
2352
  {
2156
2353
  ...props,
@@ -2160,7 +2357,7 @@ var Table2 = ({
2160
2357
  loading
2161
2358
  }
2162
2359
  ),
2163
- enablePagination && /* @__PURE__ */ jsx41(
2360
+ enablePagination && /* @__PURE__ */ jsx44(
2164
2361
  Pagination_default,
2165
2362
  {
2166
2363
  totalPages: Math.ceil(rawData.length / itemsPerPage),
@@ -2172,137 +2369,37 @@ var Table2 = ({
2172
2369
  };
2173
2370
  var Table_default = Table2;
2174
2371
 
2175
- // src/components/ui/dropdown-menu.tsx
2176
- import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
2177
- import { jsx as jsx42, jsxs as jsxs25 } from "react/jsx-runtime";
2178
- function DropdownMenu({
2179
- ...props
2180
- }) {
2181
- return /* @__PURE__ */ jsx42(DropdownMenuPrimitive.Root, { "data-slot": "dropdown-menu", ...props });
2182
- }
2183
- function DropdownMenuTrigger({
2184
- ...props
2185
- }) {
2186
- return /* @__PURE__ */ jsx42(
2187
- DropdownMenuPrimitive.Trigger,
2188
- {
2189
- "data-slot": "dropdown-menu-trigger",
2190
- ...props
2191
- }
2192
- );
2193
- }
2194
- function DropdownMenuContent({
2195
- className,
2196
- sideOffset = 4,
2197
- ...props
2198
- }) {
2199
- return /* @__PURE__ */ jsx42(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx42(
2200
- DropdownMenuPrimitive.Content,
2201
- {
2202
- "data-slot": "dropdown-menu-content",
2203
- sideOffset,
2204
- className: cn(
2205
- "bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-h-(--radix-dropdown-menu-content-available-height) min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border p-1 shadow-md",
2206
- className
2207
- ),
2208
- ...props
2209
- }
2210
- ) });
2211
- }
2212
- function DropdownMenuItem({
2213
- className,
2214
- inset,
2215
- variant = "default",
2216
- ...props
2217
- }) {
2218
- return /* @__PURE__ */ jsx42(
2219
- DropdownMenuPrimitive.Item,
2220
- {
2221
- "data-slot": "dropdown-menu-item",
2222
- "data-inset": inset,
2223
- "data-variant": variant,
2224
- className: cn(
2225
- "focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
2226
- className
2227
- ),
2228
- ...props
2229
- }
2230
- );
2231
- }
2232
- function DropdownMenuLabel({
2233
- className,
2234
- inset,
2235
- ...props
2236
- }) {
2237
- return /* @__PURE__ */ jsx42(
2238
- DropdownMenuPrimitive.Label,
2239
- {
2240
- "data-slot": "dropdown-menu-label",
2241
- "data-inset": inset,
2242
- className: cn(
2243
- "px-2 py-1.5 text-sm font-medium data-[inset]:pl-8",
2244
- className
2245
- ),
2246
- ...props
2247
- }
2248
- );
2249
- }
2250
- function DropdownMenuSeparator({
2251
- className,
2252
- ...props
2253
- }) {
2254
- return /* @__PURE__ */ jsx42(
2255
- DropdownMenuPrimitive.Separator,
2256
- {
2257
- "data-slot": "dropdown-menu-separator",
2258
- className: cn("bg-border -mx-1 my-1 h-px", className),
2259
- ...props
2260
- }
2261
- );
2262
- }
2263
-
2264
2372
  // src/components/Navigation/Tabs/Tabs.tsx
2265
- import { jsx as jsx43, jsxs as jsxs26 } from "react/jsx-runtime";
2266
- var Tabs = ({ tabs, className, style, pathname, LinkComponent }) => {
2373
+ import { jsx as jsx45, jsxs as jsxs28 } from "react/jsx-runtime";
2374
+ var Tabs = ({ className, style, tabs, verticalMenu, LinkComponent, pathname, canvasMode }) => {
2267
2375
  const rawTabs = Array.isArray(tabs) ? tabs : [];
2268
- const baseClasses = "text-[12px] text-[#E9E9E9] p-2 text-center rounded-md transition-colors border-none outline-none focus:outline-none focus:ring-0 focus:ring-offset-0 cursor-pointer select-none ";
2376
+ const baseClasses = "text-[12px] text-foreground p-2 text-center rounded-md transition-colors";
2269
2377
  const activeClasses = "bg-white/10 text-white";
2270
2378
  const hoverClasses = "hover:bg-white/5";
2271
2379
  const isActive = (path) => {
2272
2380
  if (!path) return false;
2273
2381
  return pathname === path || path !== "/" && pathname?.startsWith(path);
2274
2382
  };
2275
- return /* @__PURE__ */ jsx43("div", { className, style, children: rawTabs.map((tab, index) => {
2276
- const finalClasses = [
2277
- baseClasses,
2278
- isActive(tab.href) ? activeClasses : hoverClasses,
2279
- tab.className || ""
2280
- ].join(" ");
2281
- const hasDropdown = Array.isArray(tab.children) && tab.children.length > 0 && tab.isDropDown;
2282
- if (hasDropdown) {
2283
- return /* @__PURE__ */ jsxs26(DropdownMenu, { children: [
2284
- /* @__PURE__ */ jsxs26(
2285
- DropdownMenuTrigger,
2286
- {
2287
- className: `${finalClasses} inline-flex items-center gap-1`,
2288
- children: [
2289
- tab.header,
2290
- /* @__PURE__ */ jsx43(ChevronDown, { className: "h-4 w-4 opacity-80" })
2291
- ]
2292
- }
2293
- ),
2294
- /* @__PURE__ */ jsx43(
2383
+ const renderDesktopTab = (tab, index) => {
2384
+ const finalClasses = [baseClasses, isActive(tab.url) ? activeClasses : hoverClasses, tab.className || ""].join(" ");
2385
+ if (Array.isArray(tab.children) && tab.children.length > 0 && tab.isDropDown) {
2386
+ return /* @__PURE__ */ jsxs28(DropdownMenu, { children: [
2387
+ /* @__PURE__ */ jsxs28(DropdownMenuTrigger, { className: `${finalClasses} inline-flex items-center gap-1`, children: [
2388
+ tab.header,
2389
+ /* @__PURE__ */ jsx45(ChevronDown, { className: "h-4 w-4 opacity-80" })
2390
+ ] }),
2391
+ /* @__PURE__ */ jsx45(
2295
2392
  DropdownMenuContent,
2296
2393
  {
2297
2394
  align: "start",
2298
2395
  sideOffset: 6,
2299
2396
  className: "z-50 min-w-[160px] rounded-md border border-gray-200 bg-white p-1 shadow-lg",
2300
- children: tab.children.map((item) => /* @__PURE__ */ jsx43(
2397
+ children: tab.children.map((item) => /* @__PURE__ */ jsx45(
2301
2398
  DropdownMenuItem,
2302
2399
  {
2303
2400
  asChild: true,
2304
2401
  className: "cursor-pointer rounded-sm px-3 py-2 text-[12px] text-gray-800 hover:bg-gray-100 focus:bg-gray-100",
2305
- children: LinkComponent ? /* @__PURE__ */ jsx43(LinkComponent, { href: item.href || "#", children: item.header }) : item.header
2402
+ children: LinkComponent ? /* @__PURE__ */ jsx45(LinkComponent, { href: item.url || "#", children: item.header }) : item.header
2306
2403
  },
2307
2404
  item.id
2308
2405
  ))
@@ -2310,19 +2407,66 @@ var Tabs = ({ tabs, className, style, pathname, LinkComponent }) => {
2310
2407
  )
2311
2408
  ] }, index);
2312
2409
  }
2313
- return tab.url && LinkComponent ? /* @__PURE__ */ jsx43(LinkComponent, { href: tab.url, className: finalClasses, style: tab.style, children: tab.header }, index) : /* @__PURE__ */ jsx43("div", { className: finalClasses, style: tab.style, role: "button", tabIndex: 0, children: tab.header }, index);
2314
- }) });
2410
+ return tab.url && LinkComponent ? /* @__PURE__ */ jsx45(LinkComponent, { href: tab.url, className: finalClasses, style: tab.style, children: tab.header }, index) : /* @__PURE__ */ jsx45("div", { className: finalClasses, style: tab.style, role: "button", tabIndex: 0, children: tab.header }, index);
2411
+ };
2412
+ const renderMobileMenu = () => /* @__PURE__ */ jsxs28(DropdownMenu, { children: [
2413
+ /* @__PURE__ */ jsxs28(DropdownMenuTrigger, { className: "flex items-center gap-2 px-3 py-2 rounded-md bg-white/10 text-white text-sm", children: [
2414
+ /* @__PURE__ */ jsx45(Menu, { className: "h-4 w-4" }),
2415
+ "Menu"
2416
+ ] }),
2417
+ /* @__PURE__ */ jsx45(
2418
+ DropdownMenuContent,
2419
+ {
2420
+ align: "start",
2421
+ sideOffset: 6,
2422
+ className: "z-50 w-56 rounded-md border border-gray-200 bg-white p-1 shadow-lg",
2423
+ children: rawTabs.map((tab, i) => {
2424
+ const hasChildren = Array.isArray(tab.children) && tab.children.length > 0 && tab.isDropDown;
2425
+ if (hasChildren) {
2426
+ return /* @__PURE__ */ jsxs28(DropdownMenuSub, { children: [
2427
+ /* @__PURE__ */ jsx45(DropdownMenuSubTrigger, { className: "flex items-center justify-between cursor-pointer rounded-sm px-3 py-2 text-[13px] text-foreground hover:text-foreground", children: tab.header }),
2428
+ /* @__PURE__ */ jsx45(DropdownMenuSubContent, { className: "bg-white border shadow-lg rounded-md p-1", children: tab.children.map((item) => /* @__PURE__ */ jsx45(
2429
+ DropdownMenuItem,
2430
+ {
2431
+ asChild: true,
2432
+ className: "cursor-pointer rounded-sm px-3 py-2 text-[12px] text-gray-800 hover:bg-gray-100",
2433
+ children: LinkComponent && item.url ? /* @__PURE__ */ jsx45(LinkComponent, { href: item.url || "#", children: item.header }) : item.header
2434
+ },
2435
+ item.id
2436
+ )) })
2437
+ ] }, i);
2438
+ }
2439
+ return /* @__PURE__ */ jsx45(
2440
+ DropdownMenuItem,
2441
+ {
2442
+ asChild: true,
2443
+ className: "cursor-pointer rounded-sm px-3 py-2 text-[13px] text-gray-800 hover:bg-gray-100",
2444
+ children: LinkComponent && tab.url ? /* @__PURE__ */ jsx45(LinkComponent, { href: tab.url || "#", children: tab.header }) : tab.header
2445
+ },
2446
+ i
2447
+ );
2448
+ })
2449
+ }
2450
+ )
2451
+ ] });
2452
+ const forceMobile = canvasMode === "mobile" || canvasMode === "tablet";
2453
+ const forceDesktop = canvasMode === "desktop";
2454
+ return /* @__PURE__ */ jsxs28("div", { className, style, children: [
2455
+ forceDesktop && /* @__PURE__ */ jsx45("div", { className: "hidden md:flex", children: /* @__PURE__ */ jsx45("div", { className: `flex gap-2 ${verticalMenu ? "flex-col items-start" : "flex-row"}`, children: rawTabs.map(renderDesktopTab) }) }),
2456
+ forceMobile && /* @__PURE__ */ jsx45("div", { children: renderMobileMenu() }),
2457
+ /* @__PURE__ */ jsx45("div", { className: "md:hidden", children: renderMobileMenu() })
2458
+ ] });
2315
2459
  };
2316
2460
  var Tabs_default = Tabs;
2317
2461
 
2318
2462
  // src/components/Navigation/Stages/Stages.tsx
2319
2463
  import React15 from "react";
2320
- import { jsx as jsx44, jsxs as jsxs27 } from "react/jsx-runtime";
2464
+ import { jsx as jsx46, jsxs as jsxs29 } from "react/jsx-runtime";
2321
2465
  var StagesComponent = ({ stages, isShowBtn, buttonText, className, style }) => {
2322
- return /* @__PURE__ */ jsx44("div", { className, style, children: /* @__PURE__ */ jsxs27("div", { className: "flex items-center justify-between bg-gray-50 p-2 rounded-lg border border-gray-200 w-full", children: [
2323
- /* @__PURE__ */ jsx44("div", { className: "flex items-center", children: /* @__PURE__ */ jsx44("button", { className: "p-2 hover:bg-gray-100 rounded", children: /* @__PURE__ */ jsx44("svg", { className: "w-4 h-4 text-gray-600", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx44("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M19 9l-7 7-7-7" }) }) }) }),
2324
- /* @__PURE__ */ jsx44("div", { className: "flex items-center flex-1 px-2", children: stages?.length > 0 && stages?.map((stage, index) => /* @__PURE__ */ jsxs27(React15.Fragment, { children: [
2325
- /* @__PURE__ */ jsx44(
2466
+ return /* @__PURE__ */ jsx46("div", { className, style, children: /* @__PURE__ */ jsxs29("div", { className: "flex items-center justify-between bg-gray-50 p-2 rounded-lg border border-gray-200 w-full", children: [
2467
+ /* @__PURE__ */ jsx46("div", { className: "flex items-center", children: /* @__PURE__ */ jsx46("button", { className: "p-2 hover:bg-gray-100 rounded", children: /* @__PURE__ */ jsx46("svg", { className: "w-4 h-4 text-gray-600", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx46("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M19 9l-7 7-7-7" }) }) }) }),
2468
+ /* @__PURE__ */ jsx46("div", { className: "flex items-center flex-1 px-2", children: stages?.length > 0 && stages?.map((stage, index) => /* @__PURE__ */ jsxs29(React15.Fragment, { children: [
2469
+ /* @__PURE__ */ jsx46(
2326
2470
  "button",
2327
2471
  {
2328
2472
  className: `
@@ -2330,89 +2474,34 @@ var StagesComponent = ({ stages, isShowBtn, buttonText, className, style }) => {
2330
2474
  children: stage.header
2331
2475
  }
2332
2476
  ),
2333
- index < stages.length - 1 && /* @__PURE__ */ jsx44("div", { className: "flex-shrink-0 w-3 h-px bg-gray-300" })
2477
+ index < stages.length - 1 && /* @__PURE__ */ jsx46("div", { className: "flex-shrink-0 w-3 h-px bg-gray-300" })
2334
2478
  ] }, stage.id)) }),
2335
- isShowBtn && /* @__PURE__ */ jsx44("div", { className: "flex items-center", children: /* @__PURE__ */ jsx44("button", { className: "bg-[#034486] text-white px-6 py-2 rounded-lg text-sm font-medium transition-colors duration-200 shadow-sm", children: buttonText }) })
2479
+ isShowBtn && /* @__PURE__ */ jsx46("div", { className: "flex items-center", children: /* @__PURE__ */ jsx46("button", { className: "bg-[#034486] text-white px-6 py-2 rounded-lg text-sm font-medium transition-colors duration-200 shadow-sm", children: buttonText }) })
2336
2480
  ] }) });
2337
2481
  };
2338
2482
  var Stages_default = StagesComponent;
2339
2483
 
2340
2484
  // src/components/Navigation/Spacer/Spacer.tsx
2341
- import { jsx as jsx45 } from "react/jsx-runtime";
2485
+ import { jsx as jsx47 } from "react/jsx-runtime";
2342
2486
  var Spacer = ({ className, style }) => {
2343
- return /* @__PURE__ */ jsx45("div", { className: `${className}`, style });
2487
+ return /* @__PURE__ */ jsx47("div", { className: `${className}`, style });
2344
2488
  };
2345
2489
  var Spacer_default = Spacer;
2346
2490
 
2347
2491
  // src/components/Navigation/Profile/Profile.tsx
2348
- import { jsx as jsx46, jsxs as jsxs28 } from "react/jsx-runtime";
2349
- var Profile = ({ profileType, showName, userName, className, style }) => {
2350
- return /* @__PURE__ */ jsx46("div", { className, style, children: /* @__PURE__ */ jsxs28("div", { className: "flex gap-2 items-center justify-between w-30 cursor-pointer", children: [
2351
- showName && /* @__PURE__ */ jsx46("h4", { className: "text-[#000000] dark:text-[#fff] text-[13px] font-[500] mb-0", children: userName }),
2352
- profileType === "avatar" ? /* @__PURE__ */ jsx46(
2353
- "img",
2354
- {
2355
- src: "https://builder.development.algorithmshift.ai/images/toolset/profile.svg",
2356
- alt: "auto",
2357
- width: 24,
2358
- height: 24
2359
- }
2360
- ) : /* @__PURE__ */ jsx46("div", { className: "w-6 h-6 bg-[#12715b] rounded-full text-[#fff] text-center text-[11px] flex items-center justify-center", children: "A" })
2361
- ] }) });
2362
- };
2363
- var Profile_default = Profile;
2492
+ import { jsx as jsx48, jsxs as jsxs30 } from "react/jsx-runtime";
2364
2493
 
2365
2494
  // src/components/Navigation/Notification/Notification.tsx
2366
- import { jsx as jsx47, jsxs as jsxs29 } from "react/jsx-runtime";
2367
- var Notification = ({ className, style, badgeType, badgeCount = 0, hideBadgeWhenZero }) => {
2368
- return /* @__PURE__ */ jsx47("div", { className, style, children: /* @__PURE__ */ jsxs29("div", { className: "w-[34px] h-[34px] bg-[#E9E9E9] rounded-md text-center flex items-center justify-center relative", children: [
2369
- /* @__PURE__ */ jsx47(
2370
- "img",
2371
- {
2372
- src: "https://builder.development.algorithmshift.ai/images/toolset/notification.svg",
2373
- alt: "auto",
2374
- width: 18,
2375
- height: 18
2376
- }
2377
- ),
2378
- badgeType === "number" && !(hideBadgeWhenZero && badgeCount === 0) && badgeCount > 0 ? /* @__PURE__ */ jsx47("span", { className: "text-[10px] text-[#fff] bg-[#FF4A4A] w-[20px] h-[20px] rounded-full absolute top-0 right-0 transform translate-x-1/2 -translate-y-1/2 leading-[20px]", children: badgeCount }) : /* @__PURE__ */ jsx47("span", { className: "bg-[#FF4A4A] w-[10px] h-[10px] rounded-full absolute top-0 right-0 transform translate-x-1/2 -translate-y-1/2 leading-[20px]" })
2379
- ] }) });
2380
- };
2381
- var Notification_default = Notification;
2382
-
2383
- // src/assets/logo_placeholder.png
2384
- var logo_placeholder_default = "data:image/png;base64,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dBvJqqioiFtuuSUmT55c6FaOq7q6Ou6666546KGHYs+ePYVu55jKy8vj+9///pe3ki408wpw1OCInIHT3syZM+P2229P4gD0qy644IK47bbbBuRD7JIlSwZNuPGF0tLSuPHGGwfdt4FfZW1BbkaMGBH33HPPoD4I/sLIkSPjRz/60aDbtPML119/fYwcObLQbUSEeQX4KgEHkHdz5syJG2+8MW93Acm3adOmxR133JHX/hcuXBgzZ87MW/3+KC8vj+uvv77QbRyTtQW5qaqqinvvvXdQh5XfNGrUqPje9743YHdAytWkSZPivPPOK3QbEWFeAb5JwAHk1bnnnhvf+c53kv8g09jYGDfffHNeXkdjY2NcdtllmdfN0mDc08LagtxUVFTEnXfeOWjOOOiLxsbGuOKKKwrdxpdKSkriuuuuK3QbEWFeAY5FwAHkTV1dXSxevHjQbMDWX9/61rfiqquuyrRmZWVlLFmyxMFtH1lbkJvi4uK49dZbo6amptCtnLJvf/vbUVdXV+g2IuLo2Qdjx44tdBvmFeA4To9PhsCgU15eHt/73veirKys0K1kav78+XHuuedmVu/qq6+OqqqqzOqdCawtyN1VV10VkyZNKnQb/VJcXBzf/e53BcFfYV4Bjs3OZkBeXHvttVFdXV3oNvLihhtuiM8++yza29v7VaehoWHQXMedEmsLcjNp0qS46KKLMq3Z29sbGzZsiE8//TS2bdsWu3btis7OzoiIGD58eIwfPz6amppi2rRpmYaQdXV1MWfOnHj33Xczq5kq8wpwfAIOIHONjY0xe/bsQreRN5WVlXHdddfFk08+2a8611xzjW+u+sjagtyUlJRk/u346tWr49VXX43W1tZj/ry9vT0+//zzWLFiRVRWVsaCBQti3rx5mV1K9k//9E/x3nvvndG3VjavACfmEhUgU0VFRXHDDTcUuo28a25ujqamplN+fmNjYzQ0NGTY0enP2oLcXXrppZntz7B///546KGH4sknnzzuQfA3tbe3x/PPPx+//e1v4/Dhw5n0MWrUqJg1a1YmtVJlXgFOzBkcQKbmzJmT103PDh06FOvXr4/NmzfHjh07Ys+ePdHR0RERR6/nraqqipqammhoaIjJkyfHmDFj8tbL5ZdfHp9++ukpPXcg7pqyd+/eWLduXWzYsCF27twZbW1tERFRVlYWtbW1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";
2495
+ import { jsx as jsx49, jsxs as jsxs31 } from "react/jsx-runtime";
2385
2496
 
2386
2497
  // src/components/Navigation/Logo/Logo.tsx
2387
- import { jsx as jsx48 } from "react/jsx-runtime";
2388
- var Logo = ({
2389
- className,
2390
- style,
2391
- imageUrl,
2392
- altText = "Preview"
2393
- }) => {
2394
- if (!imageUrl) {
2395
- return /* @__PURE__ */ jsx48(
2396
- "div",
2397
- {
2398
- className: cn(
2399
- className,
2400
- "p-0"
2401
- ),
2402
- style,
2403
- children: /* @__PURE__ */ jsx48("img", { src: logo_placeholder_default, alt: altText, className: "opacity-50", width: 150, height: 80 })
2404
- }
2405
- );
2406
- }
2407
- return /* @__PURE__ */ jsx48("img", { src: imageUrl, alt: altText, className, style });
2408
- };
2409
- var Logo_default = Logo;
2498
+ import { jsx as jsx50 } from "react/jsx-runtime";
2410
2499
 
2411
2500
  // src/components/ui/avatar.tsx
2412
2501
  import * as React16 from "react";
2413
2502
  import * as AvatarPrimitive from "@radix-ui/react-avatar";
2414
- import { jsx as jsx49 } from "react/jsx-runtime";
2415
- var Avatar = React16.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx49(
2503
+ import { jsx as jsx51 } from "react/jsx-runtime";
2504
+ var Avatar = React16.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx51(
2416
2505
  AvatarPrimitive.Root,
2417
2506
  {
2418
2507
  ref,
@@ -2424,7 +2513,7 @@ var Avatar = React16.forwardRef(({ className, ...props }, ref) => /* @__PURE__ *
2424
2513
  }
2425
2514
  ));
2426
2515
  Avatar.displayName = AvatarPrimitive.Root.displayName;
2427
- var AvatarImage = React16.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx49(
2516
+ var AvatarImage = React16.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx51(
2428
2517
  AvatarPrimitive.Image,
2429
2518
  {
2430
2519
  ref,
@@ -2433,7 +2522,7 @@ var AvatarImage = React16.forwardRef(({ className, ...props }, ref) => /* @__PUR
2433
2522
  }
2434
2523
  ));
2435
2524
  AvatarImage.displayName = AvatarPrimitive.Image.displayName;
2436
- var AvatarFallback = React16.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx49(
2525
+ var AvatarFallback = React16.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx51(
2437
2526
  AvatarPrimitive.Fallback,
2438
2527
  {
2439
2528
  ref,
@@ -2447,7 +2536,7 @@ var AvatarFallback = React16.forwardRef(({ className, ...props }, ref) => /* @__
2447
2536
  AvatarFallback.displayName = AvatarPrimitive.Fallback.displayName;
2448
2537
 
2449
2538
  // src/components/Navigation/Navbar/Navbar.tsx
2450
- import { Fragment as Fragment17, jsx as jsx50, jsxs as jsxs30 } from "react/jsx-runtime";
2539
+ import { Fragment as Fragment17, jsx as jsx52, jsxs as jsxs32 } from "react/jsx-runtime";
2451
2540
  function Navbar({
2452
2541
  style,
2453
2542
  badgeType,
@@ -2459,64 +2548,82 @@ function Navbar({
2459
2548
  altText = "Logo",
2460
2549
  canvasMode = "desktop",
2461
2550
  LinkComponent,
2462
- ImageComponent
2551
+ ImageComponent,
2552
+ list = [],
2553
+ userName = "Guest User"
2463
2554
  }) {
2464
2555
  const isMobileView = canvasMode === "mobile" || canvasMode === "tablet";
2465
- return /* @__PURE__ */ jsx50("nav", { className: "w-full border-b bg-white shadow-sm", style, children: /* @__PURE__ */ jsxs30("div", { className: "mx-auto flex max-w-7xl items-center justify-between px-4 py-2", children: [
2466
- LinkComponent && ImageComponent ? /* @__PURE__ */ jsx50(LinkComponent, { href: "/", className: "flex items-center space-x-2", children: imageUrl ? /* @__PURE__ */ jsx50(ImageComponent, { src: imageUrl, alt: altText, width: 200, height: 200 }) : /* @__PURE__ */ jsx50("span", { className: "font-semibold text-blue-700", children: "Logo" }) }) : /* @__PURE__ */ jsx50("span", { className: "font-semibold text-blue-700", children: "Logo" }),
2467
- /* @__PURE__ */ jsxs30("div", { className: "flex items-center space-x-3", children: [
2468
- !isMobileView ? /* @__PURE__ */ jsx50("div", { className: "flex-1 px-6", children: /* @__PURE__ */ jsxs30("div", { className: "relative w-full max-w-md border border-gray-300 rounded-md", children: [
2469
- /* @__PURE__ */ jsx50(Search, { className: "absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-gray-400" }),
2470
- /* @__PURE__ */ jsx50(Input, { placeholder: "Search", className: "pl-9 text-gray-400" })
2471
- ] }) }) : /* @__PURE__ */ jsx50(
2556
+ return /* @__PURE__ */ jsx52("nav", { className: "w-full border-b bg-white shadow-sm", style, children: /* @__PURE__ */ jsxs32("div", { className: "mx-auto flex max-w-7xl items-center justify-between px-4 py-2", children: [
2557
+ LinkComponent && ImageComponent ? /* @__PURE__ */ jsx52(LinkComponent, { href: "/", className: "flex items-center space-x-2", children: imageUrl ? /* @__PURE__ */ jsx52(ImageComponent, { src: imageUrl, alt: altText, width: 200, height: 200 }) : /* @__PURE__ */ jsx52("span", { className: "font-semibold text-blue-700", children: "Logo" }) }) : /* @__PURE__ */ jsx52("span", { className: "font-semibold text-blue-700", children: "Logo" }),
2558
+ !isMobileView && LinkComponent && /* @__PURE__ */ jsx52("div", { className: "flex items-center space-x-6 sm:hidden md:flex", children: list.map((item) => /* @__PURE__ */ jsx52(
2559
+ LinkComponent,
2560
+ {
2561
+ href: item.url || "#",
2562
+ className: "text-sm font-medium text-gray-600 hover:text-gray-900 transition-colors",
2563
+ children: item.header
2564
+ },
2565
+ item.id
2566
+ )) }),
2567
+ /* @__PURE__ */ jsxs32("div", { className: "flex items-center space-x-3", children: [
2568
+ !isMobileView ? /* @__PURE__ */ jsx52("div", { className: "flex-1 px-6", children: /* @__PURE__ */ jsxs32("div", { className: "relative w-full max-w-md border border-gray-300 rounded-md", children: [
2569
+ /* @__PURE__ */ jsx52(Search, { className: "absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-gray-400" }),
2570
+ /* @__PURE__ */ jsx52(Input, { placeholder: "Search", className: "pl-9 text-gray-400" })
2571
+ ] }) }) : /* @__PURE__ */ jsx52(
2472
2572
  Button,
2473
2573
  {
2474
2574
  variant: "ghost",
2475
2575
  size: "icon",
2476
2576
  className: "border border-gray-400",
2477
- children: /* @__PURE__ */ jsx50(Search, { className: "h-5 w-5 text-gray-400" })
2577
+ children: /* @__PURE__ */ jsx52(Search, { className: "h-5 w-5 text-gray-400" })
2478
2578
  }
2479
2579
  ),
2480
- /* @__PURE__ */ jsxs30("div", { className: "relative bg-[#E9E9E9] rounded-md", children: [
2481
- /* @__PURE__ */ jsx50(Button, { variant: "ghost", size: "icon", children: /* @__PURE__ */ jsx50(Bell, { className: "h-5 w-5 text-[#1C1B1F]" }) }),
2482
- badgeType === "number" && !(hideBadgeWhenZero && badgeCount === 0) && badgeCount > 0 ? /* @__PURE__ */ jsx50("span", { className: "absolute -top-1 -right-1 flex h-4 w-4 items-center justify-center rounded-full bg-red-500 text-[10px] text-white leading-8", children: badgeCount }) : /* @__PURE__ */ jsx50("span", { className: "absolute -top-1 -right-1 flex h-2 w-2 items-center justify-center rounded-full bg-red-500" })
2580
+ /* @__PURE__ */ jsxs32("div", { className: "relative bg-[#E9E9E9] rounded-md", children: [
2581
+ /* @__PURE__ */ jsx52(Button, { variant: "ghost", size: "icon", children: /* @__PURE__ */ jsx52(Bell, { className: "h-5 w-5 text-[#1C1B1F]" }) }),
2582
+ badgeType === "number" && !(hideBadgeWhenZero && badgeCount === 0) && badgeCount > 0 ? /* @__PURE__ */ jsx52("span", { className: "absolute -top-1 -right-1 flex h-4 w-4 items-center justify-center rounded-full bg-red-500 text-[10px] text-white leading-8", children: badgeCount }) : /* @__PURE__ */ jsx52("span", { className: "absolute -top-1 -right-1 flex h-2 w-2 items-center justify-center rounded-full bg-red-500" })
2483
2583
  ] }),
2484
- /* @__PURE__ */ jsxs30(DropdownMenu, { children: [
2485
- /* @__PURE__ */ jsx50(DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ jsxs30("div", { className: "flex items-center space-x-2", children: [
2486
- !isMobileView && showName && /* @__PURE__ */ jsx50("h4", { className: "text-[#000000] text-[13px] font-[500] mb-0", children: "Akbar Sheriff" }),
2487
- !isMobileView ? /* @__PURE__ */ jsxs30(Fragment17, { children: [
2488
- /* @__PURE__ */ jsx50(Avatar, { className: "cursor-pointer h-8 w-8 text-gray-900", children: profileType === "avatar" ? /* @__PURE__ */ jsx50(
2584
+ /* @__PURE__ */ jsxs32(DropdownMenu, { children: [
2585
+ /* @__PURE__ */ jsx52(DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ jsxs32("div", { className: "flex items-center space-x-2", children: [
2586
+ !isMobileView && showName && /* @__PURE__ */ jsx52("h4", { className: "text-[#000000] text-[13px] font-[500] mb-0", children: userName }),
2587
+ !isMobileView ? /* @__PURE__ */ jsxs32(Fragment17, { children: [
2588
+ /* @__PURE__ */ jsx52(Avatar, { className: "cursor-pointer h-8 w-8 text-gray-900", children: profileType === "avatar" ? /* @__PURE__ */ jsx52(
2489
2589
  AvatarImage,
2490
2590
  {
2491
2591
  src: "/images/appbuilder/toolset/profile.svg",
2492
- alt: "Akbar Sheriff"
2592
+ alt: "Profile"
2493
2593
  }
2494
- ) : /* @__PURE__ */ jsx50("div", { className: "w-8 h-8 bg-[#12715b] rounded-full text-[#fff] text-center text-[11px] flex items-center justify-center", children: "AS" }) }),
2495
- /* @__PURE__ */ jsx50(
2594
+ ) : /* @__PURE__ */ jsx52("div", { className: "w-8 h-8 bg-[#12715b] rounded-full text-[#fff] text-center text-[11px] flex items-center justify-center", children: userName && getInitials(userName) }) }),
2595
+ /* @__PURE__ */ jsx52(
2496
2596
  Button,
2497
2597
  {
2498
2598
  variant: "ghost",
2499
2599
  size: "icon",
2500
2600
  className: "text-gray-900 md:hidden",
2501
- children: /* @__PURE__ */ jsx50(Menu, { className: "h-6 w-6" })
2601
+ children: /* @__PURE__ */ jsx52(Menu, { className: "h-6 w-6" })
2502
2602
  }
2503
2603
  )
2504
- ] }) : /* @__PURE__ */ jsx50(
2604
+ ] }) : /* @__PURE__ */ jsx52(
2505
2605
  Button,
2506
2606
  {
2507
2607
  variant: "ghost",
2508
2608
  size: "icon",
2509
2609
  className: "text-gray-900",
2510
- children: /* @__PURE__ */ jsx50(Menu, { className: "h-6 w-6" })
2610
+ children: /* @__PURE__ */ jsx52(Menu, { className: "h-6 w-6" })
2511
2611
  }
2512
2612
  )
2513
2613
  ] }) }),
2514
- /* @__PURE__ */ jsxs30(DropdownMenuContent, { align: "end", className: "bg-white", children: [
2515
- /* @__PURE__ */ jsx50(DropdownMenuLabel, { className: "text-black", children: "My Account" }),
2516
- /* @__PURE__ */ jsx50(DropdownMenuSeparator, {}),
2517
- /* @__PURE__ */ jsx50(DropdownMenuItem, { className: "text-black", children: "Profile" }),
2518
- /* @__PURE__ */ jsx50(DropdownMenuItem, { className: "text-black", children: "Settings" }),
2519
- /* @__PURE__ */ jsx50(DropdownMenuItem, { className: "text-black", children: "Logout" })
2614
+ /* @__PURE__ */ jsxs32(DropdownMenuContent, { align: "end", className: "bg-white", children: [
2615
+ /* @__PURE__ */ jsx52(DropdownMenuLabel, { className: "text-black", children: "My Account" }),
2616
+ /* @__PURE__ */ jsx52(DropdownMenuSeparator, {}),
2617
+ LinkComponent && /* @__PURE__ */ jsxs32(Fragment17, { children: [
2618
+ /* @__PURE__ */ jsx52(DropdownMenuItem, { className: "text-black", children: /* @__PURE__ */ jsx52(LinkComponent, { href: "/profile", children: "Profile" }) }),
2619
+ /* @__PURE__ */ jsx52(DropdownMenuItem, { className: "text-black", children: /* @__PURE__ */ jsx52(LinkComponent, { href: "/settings", children: "Settings" }) }),
2620
+ /* @__PURE__ */ jsx52(DropdownMenuItem, { className: "text-black", children: /* @__PURE__ */ jsx52(LinkComponent, { href: "/logout", children: "Logout" }) }),
2621
+ list && list.length > 0 && /* @__PURE__ */ jsxs32(Fragment17, { children: [
2622
+ /* @__PURE__ */ jsx52("div", { className: "w-full bg-[#656565] opacity-30 h-[1px] my-2" }),
2623
+ /* @__PURE__ */ jsx52(DropdownMenuLabel, { className: "text-black", children: "Main Menu" }),
2624
+ list.map((item) => /* @__PURE__ */ jsx52(DropdownMenuItem, { className: "text-black", children: /* @__PURE__ */ jsx52(LinkComponent, { href: item.url || "#", children: item.header }) }, item.id))
2625
+ ] })
2626
+ ] })
2520
2627
  ] })
2521
2628
  ] })
2522
2629
  ] })
@@ -2525,28 +2632,28 @@ function Navbar({
2525
2632
 
2526
2633
  // src/components/Chart/BarChart.tsx
2527
2634
  import { BarChart, Bar, Area, AreaChart, XAxis, YAxis, CartesianGrid, Tooltip, ResponsiveContainer, Legend } from "recharts";
2528
- import { jsx as jsx51, jsxs as jsxs31 } from "react/jsx-runtime";
2635
+ import { jsx as jsx53, jsxs as jsxs33 } from "react/jsx-runtime";
2529
2636
  var ChartComponent = ({ className, style, ...props }) => {
2530
2637
  const data = Array.isArray(props?.data) ? props.data : [];
2531
2638
  const chartType = props.chartType || "bar";
2532
2639
  const legendsPosition = props.legendsPosition === "middle" || props.legendsPosition === "bottom" ? props.legendsPosition : "top";
2533
- return /* @__PURE__ */ jsx51("div", { className: `${className} h-[400px]`, style, children: data.length > 0 && /* @__PURE__ */ jsx51(ResponsiveContainer, { width: "100%", height: "100%", children: chartType === "bar" ? /* @__PURE__ */ jsxs31(BarChart, { data, children: [
2534
- /* @__PURE__ */ jsx51(CartesianGrid, { strokeDasharray: "3 3" }),
2535
- /* @__PURE__ */ jsx51(XAxis, { dataKey: "name" }),
2536
- /* @__PURE__ */ jsx51(YAxis, {}),
2537
- /* @__PURE__ */ jsx51(Tooltip, {}),
2538
- /* @__PURE__ */ jsx51(Legend, { verticalAlign: legendsPosition, align: "center" }),
2539
- /* @__PURE__ */ jsx51(Bar, { dataKey: "value", fill: "#00695C" })
2540
- ] }) : /* @__PURE__ */ jsxs31(AreaChart, { data, children: [
2541
- /* @__PURE__ */ jsx51("defs", { children: /* @__PURE__ */ jsxs31("linearGradient", { id: "colorCount", x1: "0", y1: "0", x2: "0", y2: "1", children: [
2542
- /* @__PURE__ */ jsx51("stop", { offset: "5%", stopColor: "#00695C", stopOpacity: 0.8 }),
2543
- /* @__PURE__ */ jsx51("stop", { offset: "95%", stopColor: "#00695C", stopOpacity: 0 })
2640
+ return /* @__PURE__ */ jsx53("div", { className: `${className} h-[400px]`, style, children: data.length > 0 && /* @__PURE__ */ jsx53(ResponsiveContainer, { width: "100%", height: "100%", children: chartType === "bar" ? /* @__PURE__ */ jsxs33(BarChart, { data, children: [
2641
+ /* @__PURE__ */ jsx53(CartesianGrid, { strokeDasharray: "3 3" }),
2642
+ /* @__PURE__ */ jsx53(XAxis, { dataKey: "name" }),
2643
+ /* @__PURE__ */ jsx53(YAxis, {}),
2644
+ /* @__PURE__ */ jsx53(Tooltip, {}),
2645
+ /* @__PURE__ */ jsx53(Legend, { verticalAlign: legendsPosition, align: "center" }),
2646
+ /* @__PURE__ */ jsx53(Bar, { dataKey: "value", fill: "#00695C" })
2647
+ ] }) : /* @__PURE__ */ jsxs33(AreaChart, { data, children: [
2648
+ /* @__PURE__ */ jsx53("defs", { children: /* @__PURE__ */ jsxs33("linearGradient", { id: "colorCount", x1: "0", y1: "0", x2: "0", y2: "1", children: [
2649
+ /* @__PURE__ */ jsx53("stop", { offset: "5%", stopColor: "#00695C", stopOpacity: 0.8 }),
2650
+ /* @__PURE__ */ jsx53("stop", { offset: "95%", stopColor: "#00695C", stopOpacity: 0 })
2544
2651
  ] }) }),
2545
- /* @__PURE__ */ jsx51(CartesianGrid, { strokeDasharray: "3 3" }),
2546
- /* @__PURE__ */ jsx51(XAxis, { dataKey: "name" }),
2547
- /* @__PURE__ */ jsx51(YAxis, {}),
2548
- /* @__PURE__ */ jsx51(Tooltip, {}),
2549
- /* @__PURE__ */ jsx51(
2652
+ /* @__PURE__ */ jsx53(CartesianGrid, { strokeDasharray: "3 3" }),
2653
+ /* @__PURE__ */ jsx53(XAxis, { dataKey: "name" }),
2654
+ /* @__PURE__ */ jsx53(YAxis, {}),
2655
+ /* @__PURE__ */ jsx53(Tooltip, {}),
2656
+ /* @__PURE__ */ jsx53(
2550
2657
  Area,
2551
2658
  {
2552
2659
  type: "monotone",
@@ -2562,7 +2669,7 @@ var BarChart_default = ChartComponent;
2562
2669
 
2563
2670
  // src/components/Chart/PieChart.tsx
2564
2671
  import { PieChart, Pie, Cell, ResponsiveContainer as ResponsiveContainer2, Tooltip as Tooltip2, LabelList } from "recharts";
2565
- import { Fragment as Fragment18, jsx as jsx52, jsxs as jsxs32 } from "react/jsx-runtime";
2672
+ import { Fragment as Fragment18, jsx as jsx54, jsxs as jsxs34 } from "react/jsx-runtime";
2566
2673
  var DonutChart = ({ className, style, ...props }) => {
2567
2674
  const data = Array.isArray(props?.data) ? props.data : [];
2568
2675
  const total = data.reduce((sum, d) => sum + d.value, 0);
@@ -2573,7 +2680,7 @@ var DonutChart = ({ className, style, ...props }) => {
2573
2680
  const renderLabel = ({ value, x, y }) => {
2574
2681
  if (value == null) return null;
2575
2682
  const percentage = (Number(value) / total * 100).toFixed(0);
2576
- return /* @__PURE__ */ jsxs32(
2683
+ return /* @__PURE__ */ jsxs34(
2577
2684
  "text",
2578
2685
  {
2579
2686
  x,
@@ -2595,33 +2702,33 @@ var DonutChart = ({ className, style, ...props }) => {
2595
2702
  const wrapperClass = canvasMode ? forceDesktop ? "flex-row" : "flex-col" : "flex-col md:flex-row";
2596
2703
  const renderLegends = () => {
2597
2704
  if (!showLegends) return null;
2598
- return /* @__PURE__ */ jsx52(Fragment18, { children: data.map((d) => /* @__PURE__ */ jsxs32(
2705
+ return /* @__PURE__ */ jsx54(Fragment18, { children: data.map((d) => /* @__PURE__ */ jsxs34(
2599
2706
  "div",
2600
2707
  {
2601
2708
  className: "flex items-center space-x-2 rounded-md border border-gray-200 px-3 py-2 w-[48%] md:w-auto",
2602
2709
  children: [
2603
- /* @__PURE__ */ jsx52(
2710
+ /* @__PURE__ */ jsx54(
2604
2711
  "span",
2605
2712
  {
2606
2713
  className: "inline-block w-[16px] h-[16px] rounded",
2607
2714
  style: { backgroundColor: d.color }
2608
2715
  }
2609
2716
  ),
2610
- /* @__PURE__ */ jsx52("span", { className: "text-[#000000] text-[12px] md:text-[13px] font-[500]", children: d.name })
2717
+ /* @__PURE__ */ jsx54("span", { className: "text-[#000000] text-[12px] md:text-[13px] font-[500]", children: d.name })
2611
2718
  ]
2612
2719
  },
2613
2720
  d.name
2614
2721
  )) });
2615
2722
  };
2616
- return /* @__PURE__ */ jsxs32(
2723
+ return /* @__PURE__ */ jsxs34(
2617
2724
  "div",
2618
2725
  {
2619
2726
  className: `relative flex items-center ${wrapperClass} ${className}`,
2620
2727
  style,
2621
2728
  children: [
2622
- /* @__PURE__ */ jsxs32("div", { className: "relative w-full md:w-[70%] h-[300px] md:h-[400px] flex items-center justify-center", children: [
2623
- data.length > 0 && /* @__PURE__ */ jsx52(ResponsiveContainer2, { width: "100%", height: "100%", children: /* @__PURE__ */ jsxs32(PieChart, { children: [
2624
- /* @__PURE__ */ jsxs32(
2729
+ /* @__PURE__ */ jsxs34("div", { className: "relative w-full md:w-[70%] h-[300px] md:h-[400px] flex items-center justify-center", children: [
2730
+ data.length > 0 && /* @__PURE__ */ jsx54(ResponsiveContainer2, { width: "100%", height: "100%", children: /* @__PURE__ */ jsxs34(PieChart, { children: [
2731
+ /* @__PURE__ */ jsxs34(
2625
2732
  Pie,
2626
2733
  {
2627
2734
  data,
@@ -2633,8 +2740,8 @@ var DonutChart = ({ className, style, ...props }) => {
2633
2740
  labelLine: false,
2634
2741
  isAnimationActive: false,
2635
2742
  children: [
2636
- data.map((entry, index) => /* @__PURE__ */ jsx52(Cell, { fill: entry.color }, `cell-${index}`)),
2637
- /* @__PURE__ */ jsx52(
2743
+ data.map((entry, index) => /* @__PURE__ */ jsx54(Cell, { fill: entry.color }, `cell-${index}`)),
2744
+ /* @__PURE__ */ jsx54(
2638
2745
  LabelList,
2639
2746
  {
2640
2747
  dataKey: "value",
@@ -2645,14 +2752,14 @@ var DonutChart = ({ className, style, ...props }) => {
2645
2752
  ]
2646
2753
  }
2647
2754
  ),
2648
- /* @__PURE__ */ jsx52(Tooltip2, { formatter: (value, name) => [`${value}k`, name] })
2755
+ /* @__PURE__ */ jsx54(Tooltip2, { formatter: (value, name) => [`${value}k`, name] })
2649
2756
  ] }) }),
2650
- /* @__PURE__ */ jsxs32("div", { className: "absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 text-2xl md:text-4xl font-bold text-[#000]", children: [
2757
+ /* @__PURE__ */ jsxs34("div", { className: "absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 text-2xl md:text-4xl font-bold text-[#000]", children: [
2651
2758
  total,
2652
2759
  "k"
2653
2760
  ] })
2654
2761
  ] }),
2655
- /* @__PURE__ */ jsx52("div", { className: `flex ${forceDesktop ? "flex-col ml-auto space-y-3" : "flex-wrap justify-center gap-2 mt-4"}
2762
+ /* @__PURE__ */ jsx54("div", { className: `flex ${forceDesktop ? "flex-col ml-auto space-y-3" : "flex-wrap justify-center gap-2 mt-4"}
2656
2763
  w-full md:w-auto`, children: renderLegends() })
2657
2764
  ]
2658
2765
  }
@@ -2661,10 +2768,10 @@ var DonutChart = ({ className, style, ...props }) => {
2661
2768
  var PieChart_default = DonutChart;
2662
2769
 
2663
2770
  // src/components/Blocks/EmailComposer.tsx
2664
- import { jsx as jsx53, jsxs as jsxs33 } from "react/jsx-runtime";
2771
+ import { jsx as jsx55, jsxs as jsxs35 } from "react/jsx-runtime";
2665
2772
  function EmailComposer({ className, style, to, setTo, showCc, setShowCc, showBcc, setShowBcc, cc, setCc, bcc, setBcc, subject, setSubject, body, setBody }) {
2666
- return /* @__PURE__ */ jsx53("div", { className, style, children: /* @__PURE__ */ jsxs33("div", { className: "border rounded-md shadow bg-[#fff] p-4 mx-auto z-[50] relative", children: [
2667
- /* @__PURE__ */ jsx53("div", { className: "mb-3", children: /* @__PURE__ */ jsx53(
2773
+ return /* @__PURE__ */ jsx55("div", { className, style, children: /* @__PURE__ */ jsxs35("div", { className: "border rounded-md shadow bg-[#fff] p-4 mx-auto z-[50] relative", children: [
2774
+ /* @__PURE__ */ jsx55("div", { className: "mb-3", children: /* @__PURE__ */ jsx55(
2668
2775
  "input",
2669
2776
  {
2670
2777
  type: "email",
@@ -2673,8 +2780,8 @@ function EmailComposer({ className, style, to, setTo, showCc, setShowCc, showBcc
2673
2780
  required: true
2674
2781
  }
2675
2782
  ) }),
2676
- /* @__PURE__ */ jsx53("div", { className: "mb-3", children: /* @__PURE__ */ jsxs33("div", { className: "flex items-center gap-2", children: [
2677
- /* @__PURE__ */ jsx53(
2783
+ /* @__PURE__ */ jsx55("div", { className: "mb-3", children: /* @__PURE__ */ jsxs35("div", { className: "flex items-center gap-2", children: [
2784
+ /* @__PURE__ */ jsx55(
2678
2785
  "input",
2679
2786
  {
2680
2787
  type: "email",
@@ -2685,7 +2792,7 @@ function EmailComposer({ className, style, to, setTo, showCc, setShowCc, showBcc
2685
2792
  required: true
2686
2793
  }
2687
2794
  ),
2688
- !showCc && /* @__PURE__ */ jsx53(
2795
+ !showCc && /* @__PURE__ */ jsx55(
2689
2796
  "button",
2690
2797
  {
2691
2798
  onClick: () => setShowCc?.(true),
@@ -2693,7 +2800,7 @@ function EmailComposer({ className, style, to, setTo, showCc, setShowCc, showBcc
2693
2800
  children: "Cc"
2694
2801
  }
2695
2802
  ),
2696
- !showBcc && /* @__PURE__ */ jsx53(
2803
+ !showBcc && /* @__PURE__ */ jsx55(
2697
2804
  "button",
2698
2805
  {
2699
2806
  onClick: () => setShowBcc?.(true),
@@ -2702,7 +2809,7 @@ function EmailComposer({ className, style, to, setTo, showCc, setShowCc, showBcc
2702
2809
  }
2703
2810
  )
2704
2811
  ] }) }),
2705
- showCc && /* @__PURE__ */ jsx53("div", { className: "mb-3", children: /* @__PURE__ */ jsx53(
2812
+ showCc && /* @__PURE__ */ jsx55("div", { className: "mb-3", children: /* @__PURE__ */ jsx55(
2706
2813
  "input",
2707
2814
  {
2708
2815
  type: "text",
@@ -2712,7 +2819,7 @@ function EmailComposer({ className, style, to, setTo, showCc, setShowCc, showBcc
2712
2819
  className: "w-full flex-1 border-2 rounded-md h-[40px] px-3 focus:outline-none border-[#E9E9E9] text-[#383838]"
2713
2820
  }
2714
2821
  ) }),
2715
- showBcc && /* @__PURE__ */ jsx53("div", { className: "mb-3", children: /* @__PURE__ */ jsx53(
2822
+ showBcc && /* @__PURE__ */ jsx55("div", { className: "mb-3", children: /* @__PURE__ */ jsx55(
2716
2823
  "input",
2717
2824
  {
2718
2825
  type: "text",
@@ -2722,7 +2829,7 @@ function EmailComposer({ className, style, to, setTo, showCc, setShowCc, showBcc
2722
2829
  className: "w-full flex-1 border-2 rounded-md h-[40px] px-3 focus:outline-none border-[#E9E9E9] text-[#383838]"
2723
2830
  }
2724
2831
  ) }),
2725
- /* @__PURE__ */ jsx53("div", { className: "mb-3", children: /* @__PURE__ */ jsx53(
2832
+ /* @__PURE__ */ jsx55("div", { className: "mb-3", children: /* @__PURE__ */ jsx55(
2726
2833
  "input",
2727
2834
  {
2728
2835
  type: "text",
@@ -2732,11 +2839,11 @@ function EmailComposer({ className, style, to, setTo, showCc, setShowCc, showBcc
2732
2839
  className: "w-full flex-1 border-2 rounded-md h-[40px] px-3 focus:outline-none border-[#E9E9E9] text-[#383838]"
2733
2840
  }
2734
2841
  ) }),
2735
- /* @__PURE__ */ jsx53("div", { className: "mb-4", children: /* @__PURE__ */ jsx53(MyEditor, { value: body, onChange: setBody }) }),
2736
- /* @__PURE__ */ jsxs33("div", { className: "flex justify-end gap-2", children: [
2737
- /* @__PURE__ */ jsx53("button", { className: "px-4 py-2 rounded-md text-gray-600 hover:bg-gray-100", children: "Discard" }),
2738
- /* @__PURE__ */ jsx53("button", { className: "px-4 py-2 rounded-md border text-[#12715B] border-[#12715B]", children: "Reset" }),
2739
- /* @__PURE__ */ jsx53("button", { className: "px-4 py-2 rounded-md bg-[#12715B] text-white", children: "Send" })
2842
+ /* @__PURE__ */ jsx55("div", { className: "mb-4", children: /* @__PURE__ */ jsx55(MyEditor, { value: body, onChange: setBody }) }),
2843
+ /* @__PURE__ */ jsxs35("div", { className: "flex justify-end gap-2", children: [
2844
+ /* @__PURE__ */ jsx55("button", { className: "px-4 py-2 rounded-md text-gray-600 hover:bg-gray-100", children: "Discard" }),
2845
+ /* @__PURE__ */ jsx55("button", { className: "px-4 py-2 rounded-md border text-[#12715B] border-[#12715B]", children: "Reset" }),
2846
+ /* @__PURE__ */ jsx55("button", { className: "px-4 py-2 rounded-md bg-[#12715B] text-white", children: "Send" })
2740
2847
  ] })
2741
2848
  ] }) });
2742
2849
  }
@@ -2792,22 +2899,22 @@ function stateReducer(state, action) {
2792
2899
  }
2793
2900
 
2794
2901
  // src/components/StateManagment/StateContext.tsx
2795
- import { jsx as jsx54 } from "react/jsx-runtime";
2902
+ import { jsx as jsx56 } from "react/jsx-runtime";
2796
2903
  var StateContext = createContext(null);
2797
2904
  function StateProvider({ children }) {
2798
2905
  const [state, dispatch] = useReducer(stateReducer, {});
2799
- return /* @__PURE__ */ jsx54(StateContext.Provider, { value: { state, dispatch }, children });
2906
+ return /* @__PURE__ */ jsx56(StateContext.Provider, { value: { state, dispatch }, children });
2800
2907
  }
2801
2908
  function useAppState() {
2802
2909
  return useContext(StateContext);
2803
2910
  }
2804
2911
 
2805
- // src/components/Form/Wrapper.tsx
2912
+ // src/components/Form/Form.tsx
2806
2913
  import React18, { useMemo as useMemo2 } from "react";
2807
2914
  import { zodResolver } from "@hookform/resolvers/zod";
2808
2915
  import { useForm, Controller } from "react-hook-form";
2809
2916
  import { z } from "zod";
2810
- import { jsx as jsx55 } from "react/jsx-runtime";
2917
+ import { jsx as jsx57 } from "react/jsx-runtime";
2811
2918
  function generateZodSchema(data) {
2812
2919
  const fields = data.reduce((acc, f) => {
2813
2920
  const name = f.name || "unnamed";
@@ -2876,7 +2983,7 @@ function generateZodSchema(data) {
2876
2983
  }, {});
2877
2984
  return z.object(fields);
2878
2985
  }
2879
- var FormWrapper = ({
2986
+ var Form = ({
2880
2987
  validation,
2881
2988
  defaultValues,
2882
2989
  children,
@@ -2903,7 +3010,7 @@ var FormWrapper = ({
2903
3010
  reset();
2904
3011
  if (onReset) onReset();
2905
3012
  };
2906
- return /* @__PURE__ */ jsx55(
3013
+ return /* @__PURE__ */ jsx57(
2907
3014
  "form",
2908
3015
  {
2909
3016
  onSubmit: handleSubmit(formSubmit),
@@ -2911,13 +3018,13 @@ var FormWrapper = ({
2911
3018
  className: cn(
2912
3019
  "space-y-4 min-h-[100px] h-auto flex justify-between flex-col"
2913
3020
  ),
2914
- children: /* @__PURE__ */ jsx55("div", { className: "min-h-[50px]", children: React18.Children.map(children, (child) => {
3021
+ children: /* @__PURE__ */ jsx57("div", { className: "min-h-[50px]", children: React18.Children.map(children, (child) => {
2915
3022
  const processChild = (child2) => {
2916
3023
  if (React18.isValidElement(child2)) {
2917
3024
  const node = child2.props?.node;
2918
3025
  if (node?.category === "Form Controls") {
2919
3026
  const name = node.properties?.name || "unnamed";
2920
- return /* @__PURE__ */ jsx55("div", { className: "flex flex-col", children: /* @__PURE__ */ jsx55(
3027
+ return /* @__PURE__ */ jsx57("div", { className: "flex flex-col", children: /* @__PURE__ */ jsx57(
2921
3028
  Controller,
2922
3029
  {
2923
3030
  name,
@@ -2953,10 +3060,122 @@ var FormWrapper = ({
2953
3060
  }
2954
3061
  );
2955
3062
  };
3063
+ var Form_default = Form;
3064
+
3065
+ // src/components/Form/Wrapper.tsx
3066
+ import { useMemo as useMemo3 } from "react";
3067
+ import { zodResolver as zodResolver2 } from "@hookform/resolvers/zod";
3068
+ import { useForm as useForm2 } from "react-hook-form";
3069
+ import { z as z2 } from "zod";
3070
+ import { jsx as jsx58 } from "react/jsx-runtime";
3071
+ function generateZodSchema2(data) {
3072
+ const fields = data.reduce((acc, f) => {
3073
+ const name = f.name || "unnamed";
3074
+ const message = f.message || `${name} is invalid`;
3075
+ const passwordLen = f.passwordLength;
3076
+ let fieldSchema = z2.string({ message });
3077
+ switch (f.type) {
3078
+ case "Text":
3079
+ case "Search":
3080
+ fieldSchema = z2.string({ message });
3081
+ if (f?.min && f?.min !== "") fieldSchema = fieldSchema.min(f.min);
3082
+ else if (f.isRequired) fieldSchema = fieldSchema.min(1, { message: `${message}. Cannot be empty` });
3083
+ if (f?.max && f?.max !== "") fieldSchema = fieldSchema.max(f.max);
3084
+ if (f?.email) fieldSchema = fieldSchema.email();
3085
+ if (f?.url) fieldSchema = fieldSchema.url();
3086
+ if (f?.regex) fieldSchema = fieldSchema.regex(new RegExp(f.regex));
3087
+ break;
3088
+ case "Email":
3089
+ fieldSchema = z2.email({ message });
3090
+ break;
3091
+ case "Password":
3092
+ fieldSchema = z2.string({ message }).min(passwordLen, { message: `Password must be at least ${passwordLen} characters long` });
3093
+ break;
3094
+ case "Phone":
3095
+ fieldSchema = z2.string().transform((val) => val.replace(/\D/g, "")).transform((val) => val.slice(-10)).refine((val) => {
3096
+ return val.length === 10;
3097
+ }, {
3098
+ message: "Phone number must be 10 digits long"
3099
+ });
3100
+ break;
3101
+ case "DatePicker":
3102
+ fieldSchema = z2.iso.date({ message });
3103
+ break;
3104
+ case "FileInput":
3105
+ fieldSchema = z2.instanceof(File, { message: "Please select a file" });
3106
+ if (f?.maxSize) {
3107
+ fieldSchema = fieldSchema.refine(
3108
+ (file) => file.size <= f.maxSize,
3109
+ { message: `File size must be less than ${f.maxSize / 1024 / 1024}MB` }
3110
+ );
3111
+ }
3112
+ if (f?.acceptedTypes) {
3113
+ fieldSchema = fieldSchema.refine(
3114
+ (file) => f.acceptedTypes.includes(file.type),
3115
+ { message: `File type must be one of: ${f.acceptedTypes.join(", ")}` }
3116
+ );
3117
+ }
3118
+ break;
3119
+ case "Checkbox":
3120
+ fieldSchema = z2.boolean({ message });
3121
+ break;
3122
+ case "Dropdown":
3123
+ fieldSchema = z2.string({ message });
3124
+ break;
3125
+ case "NumberInput":
3126
+ fieldSchema = z2.number({ message });
3127
+ if (f?.min !== void 0) fieldSchema = fieldSchema.min(f.min);
3128
+ if (f?.max !== void 0) fieldSchema = fieldSchema.max(f.max);
3129
+ break;
3130
+ default:
3131
+ fieldSchema = z2.any();
3132
+ }
3133
+ if (!f.isRequired) fieldSchema = fieldSchema.optional();
3134
+ acc[name] = fieldSchema;
3135
+ return acc;
3136
+ }, {});
3137
+ return z2.object(fields);
3138
+ }
3139
+ var FormWrapper = ({
3140
+ validation,
3141
+ defaultValues,
3142
+ children,
3143
+ onSubmit,
3144
+ onReset
3145
+ }) => {
3146
+ const schema = useMemo3(() => {
3147
+ if (!validation || validation.length === 0) return null;
3148
+ return generateZodSchema2(validation);
3149
+ }, [validation]);
3150
+ const form = useForm2({
3151
+ resolver: schema ? zodResolver2(schema) : void 0,
3152
+ defaultValues
3153
+ });
3154
+ const formSubmit = (data) => {
3155
+ if (onSubmit) onSubmit(data);
3156
+ };
3157
+ const handleReset = () => {
3158
+ form.reset();
3159
+ if (onReset) onReset();
3160
+ };
3161
+ return /* @__PURE__ */ jsx58(
3162
+ "form",
3163
+ {
3164
+ onSubmit: form.handleSubmit(formSubmit),
3165
+ onReset: handleReset,
3166
+ className: cn(
3167
+ "space-y-4 min-h-[100px] h-auto flex justify-between flex-col"
3168
+ ),
3169
+ children: /* @__PURE__ */ jsx58("div", { className: "min-h-[50px]", children: typeof children === "function" ? children(form) : children })
3170
+ }
3171
+ );
3172
+ };
2956
3173
  var Wrapper_default = FormWrapper;
2957
3174
  export {
2958
3175
  BarChart_default as BarChart,
3176
+ Breadcrumb_default as Breadcrumb,
2959
3177
  Button_default as Button,
3178
+ SplitButton as ButtonGroup,
2960
3179
  Checkbox_default as Checkbox,
2961
3180
  Container_default as Container,
2962
3181
  DatePicker,
@@ -2966,20 +3185,18 @@ export {
2966
3185
  EmailComposer,
2967
3186
  FileInput_default as FileInput,
2968
3187
  Flex_default as FlexLayout,
2969
- Wrapper_default as Form,
3188
+ Form_default as Form,
3189
+ Wrapper_default as FormWrapper,
2970
3190
  Grid_default as GridLayout,
2971
3191
  Image_default as Image,
2972
- Logo_default as Logo,
2973
3192
  Modal_default as Modal,
2974
3193
  MultiCheckbox_default as MultiCheckbox,
2975
3194
  Navbar,
2976
- Notification_default as Notification,
2977
3195
  NumberInput_default as NumberInput,
2978
3196
  Pagination_default as Pagination,
2979
3197
  PasswordInput_default as Password,
2980
3198
  PhoneInput_default as Phone,
2981
3199
  PieChart_default as PieChart,
2982
- Profile_default as Profile,
2983
3200
  RadioInput_default as RadioGroup,
2984
3201
  RichText,
2985
3202
  SearchInput_default as Search,
@@ -2996,6 +3213,7 @@ export {
2996
3213
  Typography_default as Typography,
2997
3214
  UrlInput_default as URL,
2998
3215
  cn,
3216
+ getInitials,
2999
3217
  showSonnerToast,
3000
3218
  stateReducer,
3001
3219
  useAppState