@retinalabsllc/zairusjs 9.0.40 → 9.0.50

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -663,49 +663,201 @@ var Footer = ({
663
663
  };
664
664
 
665
665
  // src/components/MobileNav.tsx
666
- var import_react9 = __toESM(require("react"));
666
+ var import_react11 = __toESM(require("react"));
667
667
  var import_link4 = __toESM(require("next/link"));
668
668
  var import_navigation3 = require("next/navigation");
669
+ var import_react12 = require("@hugeicons/react");
670
+ var import_core_free_icons3 = require("@hugeicons/core-free-icons");
671
+
672
+ // src/components/ConfirmationDialog.tsx
673
+ var import_react9 = __toESM(require("react"));
669
674
  var import_react10 = require("@hugeicons/react");
670
- var MobileNav = ({ items }) => {
675
+ var import_core_free_icons2 = require("@hugeicons/core-free-icons");
676
+ var ConfirmationDialog = ({
677
+ isOpen,
678
+ title,
679
+ message,
680
+ confirmText = "Confirm",
681
+ cancelText = "Cancel",
682
+ isProcessing = false,
683
+ isDestructive = true,
684
+ onClose,
685
+ onConfirm
686
+ }) => {
687
+ if (!isOpen) return null;
688
+ return /* @__PURE__ */ import_react9.default.createElement("div", { className: "fixed inset-0 z-120 flex items-center justify-center p-4 pointer-events-auto" }, /* @__PURE__ */ import_react9.default.createElement(
689
+ "div",
690
+ {
691
+ className: "absolute inset-0 bg-black/40 ",
692
+ onClick: () => !isProcessing && onClose()
693
+ }
694
+ ), /* @__PURE__ */ import_react9.default.createElement("div", { className: "relative w-72 bg-white rounded-2xl flex flex-col items-center overflow-hidden shadow-2xl animate-in zoom-in-95 duration-200" }, /* @__PURE__ */ import_react9.default.createElement("div", { className: "p-6 pb-4 text-center w-full" }, /* @__PURE__ */ import_react9.default.createElement("h3", { className: "text-[17px] text-black tracking-tight mb-2" }, title), /* @__PURE__ */ import_react9.default.createElement("p", { className: "text-[12px] text-neutral-500 leading-relaxed px-2" }, message)), /* @__PURE__ */ import_react9.default.createElement("div", { className: "w-full flex" }, /* @__PURE__ */ import_react9.default.createElement(
695
+ "button",
696
+ {
697
+ onClick: onClose,
698
+ disabled: isProcessing,
699
+ className: "flex-1 py-4 text-[14px] text-neutral-500 hover:bg-neutral-50 transition-colors disabled:opacity-50 outline-none "
700
+ },
701
+ cancelText
702
+ ), /* @__PURE__ */ import_react9.default.createElement(
703
+ "button",
704
+ {
705
+ onClick: onConfirm,
706
+ disabled: isProcessing,
707
+ className: `flex-1 py-4 text-[13px] transition-colors disabled:opacity-50 flex justify-center items-center outline-none ${isDestructive ? "text-red-500 hover:bg-red-50" : "text-black hover:bg-neutral-50"}`
708
+ },
709
+ isProcessing ? /* @__PURE__ */ import_react9.default.createElement(import_react10.HugeiconsIcon, { icon: import_core_free_icons2.Loading03Icon, className: "animate-spin", size: 18 }) : confirmText
710
+ ))));
711
+ };
712
+
713
+ // src/components/MobileNav.tsx
714
+ var MobileNav = ({
715
+ items,
716
+ web3Address,
717
+ web3Avatar,
718
+ userInitials = "U",
719
+ unreadCount = 0,
720
+ onOpenNotifications,
721
+ onLogout
722
+ }) => {
671
723
  const pathname = (0, import_navigation3.usePathname)();
724
+ const router = (0, import_navigation3.useRouter)();
725
+ const [isCollapsed, setIsCollapsed] = (0, import_react11.useState)(false);
726
+ const [showLogoutDialog, setShowLogoutDialog] = (0, import_react11.useState)(false);
727
+ const [isLoggingOut, setIsLoggingOut] = (0, import_react11.useState)(false);
672
728
  if (!items || items.length === 0) return null;
673
- return /* @__PURE__ */ import_react9.default.createElement("div", { className: "fixed bottom-6 inset-x-0 z-100 flex justify-center pointer-events-none px-3 animate-in slide-in-from-bottom-8 fade-in duration-500" }, /* @__PURE__ */ import_react9.default.createElement("nav", { className: "pointer-events-auto w-full max-w-sm bg-white/50 backdrop-blur-xl shadow-[0_8px_30px_rgb(0,0,0,0.08)] rounded-full px-6 py-2.5 flex items-center justify-between" }, items.map((item) => {
674
- const isActive = item.href === "/" ? pathname === "/" : pathname?.startsWith(item.href);
675
- return /* @__PURE__ */ import_react9.default.createElement(
729
+ const isItemActive = (href) => {
730
+ if (href === "/" || href === "/app") {
731
+ return pathname === "/" || pathname === "/app";
732
+ }
733
+ return pathname?.startsWith(href);
734
+ };
735
+ const isChildRoute = pathname !== "/" && pathname !== "/app" && !items.some((item) => item.href === pathname);
736
+ const handleLogout = async () => {
737
+ setIsLoggingOut(true);
738
+ try {
739
+ if (onLogout) await onLogout();
740
+ } finally {
741
+ setIsLoggingOut(false);
742
+ setShowLogoutDialog(false);
743
+ }
744
+ };
745
+ const handleCopyWallet = () => {
746
+ if (web3Address) {
747
+ navigator.clipboard.writeText(web3Address);
748
+ }
749
+ };
750
+ return /* @__PURE__ */ import_react11.default.createElement(import_react11.default.Fragment, null, /* @__PURE__ */ import_react11.default.createElement(
751
+ "aside",
752
+ {
753
+ className: `hidden md:flex fixed top-0 left-0 h-screen bg-white border-r border-neutral-100 flex-col transition-all duration-300 z-40 ${isCollapsed ? "w-20" : "w-64"}`
754
+ },
755
+ /* @__PURE__ */ import_react11.default.createElement("div", { className: `p-5 flex items-center shrink-0 ${isCollapsed ? "justify-center" : "justify-start"}` }, /* @__PURE__ */ import_react11.default.createElement("div", { className: "flex items-center gap-3 w-full" }, /* @__PURE__ */ import_react11.default.createElement("div", { className: "w-10 h-10 rounded-full flex items-center justify-center shrink-0 border border-neutral-100 bg-neutral-50 overflow-hidden" }, web3Avatar ? /* @__PURE__ */ import_react11.default.createElement("img", { src: web3Avatar, alt: "Avatar", className: "w-full h-full object-cover" }) : /* @__PURE__ */ import_react11.default.createElement("span", { className: "text-[12px] font-medium text-black uppercase" }, userInitials)), !isCollapsed && /* @__PURE__ */ import_react11.default.createElement("div", { className: "flex flex-col min-w-0" }, /* @__PURE__ */ import_react11.default.createElement("span", { className: "text-[14px] font-medium text-black truncate" }, "Aeona Profile"), web3Address && /* @__PURE__ */ import_react11.default.createElement(
756
+ "span",
757
+ {
758
+ onClick: handleCopyWallet,
759
+ className: "text-[10px] text-neutral-500 truncate cursor-pointer hover:text-black transition-colors"
760
+ },
761
+ web3Address
762
+ )))),
763
+ /* @__PURE__ */ import_react11.default.createElement("nav", { className: "flex-1 py-4 flex flex-col gap-2 px-3 overflow-y-auto custom-scrollbar" }, items.map((item) => {
764
+ const active = isItemActive(item.href);
765
+ return /* @__PURE__ */ import_react11.default.createElement(
766
+ import_link4.default,
767
+ {
768
+ key: item.label,
769
+ href: item.href,
770
+ className: `flex items-center gap-3 px-3 py-2.5 rounded-xl transition-all outline-none group shrink-0 ${active ? "bg-neutral-100 text-black" : "text-neutral-500 hover:bg-neutral-50 hover:text-black"}`,
771
+ title: isCollapsed ? item.label : void 0
772
+ },
773
+ /* @__PURE__ */ import_react11.default.createElement(
774
+ import_react12.HugeiconsIcon,
775
+ {
776
+ icon: item.icon,
777
+ size: 20,
778
+ className: `shrink-0 transition-colors ${active ? "text-black" : "text-neutral-400 group-hover:text-black"}`
779
+ }
780
+ ),
781
+ !isCollapsed && /* @__PURE__ */ import_react11.default.createElement("span", { className: `text-[13px] font-medium tracking-wide truncate ${active ? "text-black" : ""}` }, item.label)
782
+ );
783
+ })),
784
+ /* @__PURE__ */ import_react11.default.createElement("div", { className: "p-4 shrink-0 flex flex-col gap-2 border-t border-neutral-50" }, /* @__PURE__ */ import_react11.default.createElement(
785
+ "button",
786
+ {
787
+ onClick: () => setShowLogoutDialog(true),
788
+ className: `flex items-center gap-3 px-3 py-2.5 rounded-xl transition-all outline-none group text-neutral-500 hover:bg-neutral-50 hover:text-red-500 ${isCollapsed ? "justify-center" : ""}`,
789
+ title: isCollapsed ? "Log Out" : void 0
790
+ },
791
+ /* @__PURE__ */ import_react11.default.createElement(import_react12.HugeiconsIcon, { icon: import_core_free_icons3.LogoutCircle02Icon, size: 20, className: "shrink-0 transition-colors" }),
792
+ !isCollapsed && /* @__PURE__ */ import_react11.default.createElement("span", { className: "text-[13px] font-medium tracking-wide" }, "Log Out")
793
+ ), /* @__PURE__ */ import_react11.default.createElement(
794
+ "button",
795
+ {
796
+ onClick: () => setIsCollapsed(!isCollapsed),
797
+ className: `flex items-center gap-3 px-3 py-2.5 rounded-xl transition-all outline-none group text-neutral-400 hover:bg-neutral-50 hover:text-black ${isCollapsed ? "justify-center" : ""}`
798
+ },
799
+ /* @__PURE__ */ import_react11.default.createElement(import_react12.HugeiconsIcon, { icon: import_core_free_icons3.SidebarLeft01Icon, size: 20, className: "shrink-0 transition-colors" }),
800
+ !isCollapsed && /* @__PURE__ */ import_react11.default.createElement("span", { className: "text-[13px] font-medium tracking-wide" }, "Collapse")
801
+ ))
802
+ ), /* @__PURE__ */ import_react11.default.createElement("div", { className: "md:hidden fixed top-3 inset-x-0 z-50 flex justify-center pointer-events-none px-2.5" }, /* @__PURE__ */ import_react11.default.createElement("header", { className: "pointer-events-auto w-full max-w-sm backdrop-blur-xl bg-white/65 rounded-full p-2 flex items-center justify-between" }, /* @__PURE__ */ import_react11.default.createElement("div", { className: "flex items-center gap-2" }, isChildRoute && /* @__PURE__ */ import_react11.default.createElement(
803
+ "button",
804
+ {
805
+ onClick: () => router.back(),
806
+ className: "w-8 h-8 rounded-full bg-white flex items-center justify-center text-neutral-600 hover:text-black transition-colors outline-none shrink-0 border border-neutral-100"
807
+ },
808
+ /* @__PURE__ */ import_react11.default.createElement(import_react12.HugeiconsIcon, { icon: import_core_free_icons3.ArrowLeft01Icon, size: 16 })
809
+ ), web3Address && /* @__PURE__ */ import_react11.default.createElement(
810
+ "div",
811
+ {
812
+ onClick: handleCopyWallet,
813
+ className: "flex items-center gap-2 bg-white rounded-full p-1 pr-3 cursor-pointer hover:bg-neutral-50 transition-colors border border-neutral-100"
814
+ },
815
+ web3Avatar ? /* @__PURE__ */ import_react11.default.createElement("img", { src: web3Avatar, alt: "Avatar", className: "w-6 h-6 rounded-full object-cover shrink-0" }) : /* @__PURE__ */ import_react11.default.createElement("div", { className: "w-6 h-6 rounded-full bg-neutral-100 flex items-center justify-center text-[10px] font-medium text-black shrink-0" }, userInitials),
816
+ /* @__PURE__ */ import_react11.default.createElement("span", { className: "text-[12px] font-medium text-black truncate max-w-24 sm:max-w-40" }, web3Address)
817
+ )), /* @__PURE__ */ import_react11.default.createElement(
818
+ "button",
819
+ {
820
+ onClick: onOpenNotifications,
821
+ className: "relative w-8 h-8 shrink-0 bg-white rounded-full flex items-center justify-center text-neutral-600 hover:text-black transition-colors outline-none mr-1 border border-neutral-100"
822
+ },
823
+ /* @__PURE__ */ import_react11.default.createElement(import_react12.HugeiconsIcon, { icon: import_core_free_icons3.Notification01Icon, size: 16 }),
824
+ unreadCount > 0 && /* @__PURE__ */ import_react11.default.createElement("span", { className: "absolute top-1 right-1.5 w-2 h-2 bg-blue-600 rounded-full border-2 border-white" })
825
+ ))), /* @__PURE__ */ import_react11.default.createElement("div", { className: "md:hidden fixed bottom-6 inset-x-0 z-100 flex justify-center pointer-events-none px-3 animate-in slide-in-from-bottom-8 fade-in duration-500" }, /* @__PURE__ */ import_react11.default.createElement("nav", { className: "pointer-events-auto w-full max-w-sm bg-white/65 backdrop-blur-xl shadow-[0_8px_30px_rgb(0,0,0,0.08)] rounded-full px-6 py-2.5 flex items-center justify-between border border-white/50" }, items.map((item) => {
826
+ const active = isItemActive(item.href);
827
+ return /* @__PURE__ */ import_react11.default.createElement(
676
828
  import_link4.default,
677
829
  {
678
830
  key: item.label,
679
831
  href: item.href,
680
832
  className: "flex flex-col items-center justify-center gap-1 min-w-14 transition-transform active:scale-95 outline-none"
681
833
  },
682
- /* @__PURE__ */ import_react9.default.createElement("div", { className: `transition-colors duration-300 ${isActive ? "text-black" : "text-neutral-400 hover:text-neutral-600"}` }, /* @__PURE__ */ import_react9.default.createElement(
683
- import_react10.HugeiconsIcon,
684
- {
685
- icon: item.icon,
686
- size: 20
687
- }
688
- )),
689
- /* @__PURE__ */ import_react9.default.createElement(
690
- "span",
691
- {
692
- className: `text-[9px] tracking-wide transition-colors duration-300 ${isActive ? "text-black" : "text-neutral-400"}`
693
- },
694
- item.label
695
- )
834
+ /* @__PURE__ */ import_react11.default.createElement("div", { className: `transition-colors duration-300 ${active ? "text-black" : "text-neutral-400 hover:text-neutral-600"}` }, /* @__PURE__ */ import_react11.default.createElement(import_react12.HugeiconsIcon, { icon: item.icon, size: 20 })),
835
+ /* @__PURE__ */ import_react11.default.createElement("span", { className: `text-[9px] tracking-wide font-medium transition-colors duration-300 ${active ? "text-black" : "text-neutral-400"}` }, item.label)
696
836
  );
697
- })));
837
+ }))), /* @__PURE__ */ import_react11.default.createElement(
838
+ ConfirmationDialog,
839
+ {
840
+ isOpen: showLogoutDialog,
841
+ title: "Secure Logout",
842
+ message: "Are you sure you want to log out? You will need to authenticate to return.",
843
+ confirmText: "Log Out",
844
+ isDestructive: true,
845
+ isProcessing: isLoggingOut,
846
+ onClose: () => setShowLogoutDialog(false),
847
+ onConfirm: handleLogout
848
+ }
849
+ ));
698
850
  };
699
851
 
700
852
  // src/components/UniversalOrganizationPage.tsx
701
- var import_react15 = __toESM(require("react"));
853
+ var import_react17 = __toESM(require("react"));
702
854
  var import_react_hot_toast3 = __toESM(require("react-hot-toast"));
703
855
 
704
856
  // src/components/ManagedToaster.tsx
705
- var import_react11 = __toESM(require("react"));
857
+ var import_react13 = __toESM(require("react"));
706
858
  var import_react_hot_toast2 = require("react-hot-toast");
707
859
  var ManagedToaster = () => {
708
- return /* @__PURE__ */ import_react11.default.createElement(
860
+ return /* @__PURE__ */ import_react13.default.createElement(
709
861
  import_react_hot_toast2.Toaster,
710
862
  {
711
863
  position: "top-right",
@@ -737,7 +889,7 @@ var ManagedToaster = () => {
737
889
  };
738
890
 
739
891
  // src/components/ReusableInputs.tsx
740
- var import_react12 = __toESM(require("react"));
892
+ var import_react14 = __toESM(require("react"));
741
893
  var TextInput = ({
742
894
  label,
743
895
  value,
@@ -748,7 +900,7 @@ var TextInput = ({
748
900
  readOnly,
749
901
  type = "text",
750
902
  onClick
751
- }) => /* @__PURE__ */ import_react12.default.createElement("div", { className: "space-y-2 flex-1 w-full", onClick }, label && /* @__PURE__ */ import_react12.default.createElement("label", { className: "text-[11px] text-neutral-400 tracking-[0.2em] block " }, label), /* @__PURE__ */ import_react12.default.createElement(
903
+ }) => /* @__PURE__ */ import_react14.default.createElement("div", { className: "space-y-2 flex-1 w-full", onClick }, label && /* @__PURE__ */ import_react14.default.createElement("label", { className: "text-[11px] text-neutral-400 tracking-[0.2em] block " }, label), /* @__PURE__ */ import_react14.default.createElement(
752
904
  "input",
753
905
  {
754
906
  type,
@@ -769,7 +921,7 @@ var NumberInput = ({
769
921
  placeholder,
770
922
  maxLength,
771
923
  disabled
772
- }) => /* @__PURE__ */ import_react12.default.createElement("div", { className: "space-y-2 flex-1 w-full" }, label && /* @__PURE__ */ import_react12.default.createElement("label", { className: "text-[11px] text-neutral-400 tracking-[0.2em] block " }, label), /* @__PURE__ */ import_react12.default.createElement(
924
+ }) => /* @__PURE__ */ import_react14.default.createElement("div", { className: "space-y-2 flex-1 w-full" }, label && /* @__PURE__ */ import_react14.default.createElement("label", { className: "text-[11px] text-neutral-400 tracking-[0.2em] block " }, label), /* @__PURE__ */ import_react14.default.createElement(
773
925
  "input",
774
926
  {
775
927
  type: "text",
@@ -787,9 +939,9 @@ var NumberInput = ({
787
939
  ));
788
940
 
789
941
  // src/components/Banner.tsx
790
- var import_react13 = __toESM(require("react"));
791
- var import_react14 = require("@hugeicons/react");
792
- var import_core_free_icons2 = require("@hugeicons/core-free-icons");
942
+ var import_react15 = __toESM(require("react"));
943
+ var import_react16 = require("@hugeicons/react");
944
+ var import_core_free_icons4 = require("@hugeicons/core-free-icons");
793
945
  var Banner = ({
794
946
  title,
795
947
  message,
@@ -799,7 +951,7 @@ var Banner = ({
799
951
  onDismiss,
800
952
  action
801
953
  }) => {
802
- const [isVisible, setIsVisible] = (0, import_react13.useState)(true);
954
+ const [isVisible, setIsVisible] = (0, import_react15.useState)(true);
803
955
  if (!isVisible) return null;
804
956
  const handleDismiss = () => {
805
957
  setIsVisible(false);
@@ -811,7 +963,7 @@ var Banner = ({
811
963
  iconColor: "text-emerald-600",
812
964
  titleColor: "text-emerald-900",
813
965
  msgColor: "text-emerald-700",
814
- defaultIcon: import_core_free_icons2.CheckmarkBadge01Icon,
966
+ defaultIcon: import_core_free_icons4.CheckmarkBadge01Icon,
815
967
  closeHover: "hover:bg-emerald-100 text-emerald-500"
816
968
  },
817
969
  warning: {
@@ -819,7 +971,7 @@ var Banner = ({
819
971
  iconColor: "text-amber-600",
820
972
  titleColor: "text-amber-900",
821
973
  msgColor: "text-amber-700",
822
- defaultIcon: import_core_free_icons2.InformationCircleIcon,
974
+ defaultIcon: import_core_free_icons4.InformationCircleIcon,
823
975
  closeHover: "hover:bg-amber-100 text-amber-500"
824
976
  },
825
977
  alert: {
@@ -827,27 +979,27 @@ var Banner = ({
827
979
  iconColor: "text-red-600",
828
980
  titleColor: "text-red-900",
829
981
  msgColor: "text-red-700",
830
- defaultIcon: import_core_free_icons2.Alert02Icon,
982
+ defaultIcon: import_core_free_icons4.Alert02Icon,
831
983
  closeHover: "hover:bg-red-100 text-red-500"
832
984
  }
833
985
  };
834
986
  const currentConfig = config[type];
835
987
  const IconToUse = icon || currentConfig.defaultIcon;
836
- return /* @__PURE__ */ import_react13.default.createElement("div", { className: `relative w-full rounded-2xl p-4 flex items-start gap-4 transition-all duration-300 animate-in fade-in slide-in-from-top-2 ${currentConfig.bg}` }, /* @__PURE__ */ import_react13.default.createElement("div", { className: "flex-1 flex flex-col min-w-0" }, /* @__PURE__ */ import_react13.default.createElement("h4", { className: `text-sm tracking-tight mb-1 ${currentConfig.titleColor}` }, title), /* @__PURE__ */ import_react13.default.createElement("p", { className: `text-xs leading-relaxed ${currentConfig.msgColor}` }, message), action && /* @__PURE__ */ import_react13.default.createElement("div", { className: "mt-3" }, action)), isDismissible && /* @__PURE__ */ import_react13.default.createElement(
988
+ return /* @__PURE__ */ import_react15.default.createElement("div", { className: `relative w-full rounded-2xl p-4 flex items-start gap-4 transition-all duration-300 animate-in fade-in slide-in-from-top-2 ${currentConfig.bg}` }, /* @__PURE__ */ import_react15.default.createElement("div", { className: "flex-1 flex flex-col min-w-0" }, /* @__PURE__ */ import_react15.default.createElement("h4", { className: `text-sm tracking-tight mb-1 ${currentConfig.titleColor}` }, title), /* @__PURE__ */ import_react15.default.createElement("p", { className: `text-xs leading-relaxed ${currentConfig.msgColor}` }, message), action && /* @__PURE__ */ import_react15.default.createElement("div", { className: "mt-3" }, action)), isDismissible && /* @__PURE__ */ import_react15.default.createElement(
837
989
  "button",
838
990
  {
839
991
  onClick: handleDismiss,
840
992
  className: `absolute top-3 right-3 p-1.5 rounded-full transition-colors outline-none shrink-0 ${currentConfig.closeHover}`,
841
993
  "aria-label": "Dismiss banner"
842
994
  },
843
- /* @__PURE__ */ import_react13.default.createElement(import_react14.HugeiconsIcon, { icon: import_core_free_icons2.Cancel01Icon, size: 16 })
995
+ /* @__PURE__ */ import_react15.default.createElement(import_react16.HugeiconsIcon, { icon: import_core_free_icons4.Cancel01Icon, size: 16 })
844
996
  ));
845
997
  };
846
998
 
847
999
  // src/components/UniversalOrganizationPage.tsx
848
- var import_react16 = require("@hugeicons/react");
849
- var import_core_free_icons3 = require("@hugeicons/core-free-icons");
850
- var InputSpinner2 = () => /* @__PURE__ */ import_react15.default.createElement("svg", { className: "animate-spin h-4 w-4 text-neutral-400", xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }, /* @__PURE__ */ import_react15.default.createElement("circle", { className: "opacity-25", cx: "12", cy: "12", r: "10", stroke: "currentColor", strokeWidth: "4" }), /* @__PURE__ */ import_react15.default.createElement("path", { className: "opacity-75", fill: "currentColor", d: "M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z" }));
1000
+ var import_react18 = require("@hugeicons/react");
1001
+ var import_core_free_icons5 = require("@hugeicons/core-free-icons");
1002
+ var InputSpinner2 = () => /* @__PURE__ */ import_react17.default.createElement("svg", { className: "animate-spin h-4 w-4 text-neutral-400", xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" }, /* @__PURE__ */ import_react17.default.createElement("circle", { className: "opacity-25", cx: "12", cy: "12", r: "10", stroke: "currentColor", strokeWidth: "4" }), /* @__PURE__ */ import_react17.default.createElement("path", { className: "opacity-75", fill: "currentColor", d: "M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z" }));
851
1003
  var UniversalOrganizationPage = ({
852
1004
  initialOrgName,
853
1005
  initialSlug,
@@ -860,13 +1012,13 @@ var UniversalOrganizationPage = ({
860
1012
  onCheckSlugAvailability
861
1013
  }) => {
862
1014
  const resolvedInitialUsername = initialUsername || initialSlug;
863
- const [web3Name, setWeb3Name] = (0, import_react15.useState)(initialOrgName);
864
- const [username, setUsername] = (0, import_react15.useState)(resolvedInitialUsername);
865
- const [slug, setSlug] = (0, import_react15.useState)(initialSlug);
866
- const [isCheckingSlug, setIsCheckingSlug] = (0, import_react15.useState)(false);
867
- const [slugAvailable, setSlugAvailable] = (0, import_react15.useState)(null);
868
- const [isSubmitting, setIsSubmitting] = (0, import_react15.useState)(false);
869
- (0, import_react15.useEffect)(() => {
1015
+ const [web3Name, setWeb3Name] = (0, import_react17.useState)(initialOrgName);
1016
+ const [username, setUsername] = (0, import_react17.useState)(resolvedInitialUsername);
1017
+ const [slug, setSlug] = (0, import_react17.useState)(initialSlug);
1018
+ const [isCheckingSlug, setIsCheckingSlug] = (0, import_react17.useState)(false);
1019
+ const [slugAvailable, setSlugAvailable] = (0, import_react17.useState)(null);
1020
+ const [isSubmitting, setIsSubmitting] = (0, import_react17.useState)(false);
1021
+ (0, import_react17.useEffect)(() => {
870
1022
  setWeb3Name(initialOrgName || "");
871
1023
  setSlug(initialSlug || "");
872
1024
  setUsername(initialUsername || initialSlug || "");
@@ -880,7 +1032,7 @@ var UniversalOrganizationPage = ({
880
1032
  const handleSlugChange = (val) => {
881
1033
  setSlug(val.toLowerCase().replace(/[^a-z0-9-]/g, "").replace(/-+/g, "-").substring(0, 50));
882
1034
  };
883
- (0, import_react15.useEffect)(() => {
1035
+ (0, import_react17.useEffect)(() => {
884
1036
  if (!slug || slug === initialSlug) {
885
1037
  setSlugAvailable(null);
886
1038
  setIsCheckingSlug(false);
@@ -935,7 +1087,7 @@ var UniversalOrganizationPage = ({
935
1087
  };
936
1088
  const hasChanges = web3Name !== initialOrgName || slug !== initialSlug || username !== resolvedInitialUsername;
937
1089
  const isSaveDisabled = isSubmitting || isReadOnly || isCheckingSlug || !hasChanges || web3Name.length < 3 || slug.length < 3 || username.length < 3 || slug !== initialSlug && slugAvailable === false;
938
- return /* @__PURE__ */ import_react15.default.createElement("div", { className: "flex flex-col gap-8 animate-in max-w-5xl rounded-2xl p-6 bg-white fade-in duration-300" }, /* @__PURE__ */ import_react15.default.createElement(ManagedToaster, null), /* @__PURE__ */ import_react15.default.createElement("div", { className: "flex items-start justify-between gap-4" }, /* @__PURE__ */ import_react15.default.createElement("div", null, /* @__PURE__ */ import_react15.default.createElement("h1", { className: "text-black text-xl mb-1 tracking-tight" }, "Public Profile"), /* @__PURE__ */ import_react15.default.createElement("p", { className: "text-xs text-neutral-500" }, "Manage your financial payment handle identifiers and global public cryptographic signature identity details.")), isReadOnly && /* @__PURE__ */ import_react15.default.createElement("span", { className: "p-2 w-9 h-9 bg-neutral-100 text-neutral-400 rounded-full shrink-0" }, /* @__PURE__ */ import_react15.default.createElement(import_react16.HugeiconsIcon, { icon: import_core_free_icons3.CircleLock02Icon, size: 18, className: "text-current" }))), bannerProps && /* @__PURE__ */ import_react15.default.createElement(Banner, { ...bannerProps }), /* @__PURE__ */ import_react15.default.createElement("div", { className: "w-full max-w-5xl" }, /* @__PURE__ */ import_react15.default.createElement("form", { className: "flex flex-col gap-8", onSubmit: handleSave, autoComplete: "off" }, /* @__PURE__ */ import_react15.default.createElement(
1090
+ return /* @__PURE__ */ import_react17.default.createElement("div", { className: "flex flex-col gap-8 animate-in max-w-5xl rounded-2xl p-6 bg-white fade-in duration-300" }, /* @__PURE__ */ import_react17.default.createElement(ManagedToaster, null), /* @__PURE__ */ import_react17.default.createElement("div", { className: "flex items-start justify-between gap-4" }, /* @__PURE__ */ import_react17.default.createElement("div", null, /* @__PURE__ */ import_react17.default.createElement("h1", { className: "text-black text-xl mb-1 tracking-tight" }, "Public Profile"), /* @__PURE__ */ import_react17.default.createElement("p", { className: "text-xs text-neutral-500" }, "Manage your financial payment handle identifiers and global public cryptographic signature identity details.")), isReadOnly && /* @__PURE__ */ import_react17.default.createElement("span", { className: "p-2 w-9 h-9 bg-neutral-100 text-neutral-400 rounded-full shrink-0" }, /* @__PURE__ */ import_react17.default.createElement(import_react18.HugeiconsIcon, { icon: import_core_free_icons5.CircleLock02Icon, size: 18, className: "text-current" }))), bannerProps && /* @__PURE__ */ import_react17.default.createElement(Banner, { ...bannerProps }), /* @__PURE__ */ import_react17.default.createElement("div", { className: "w-full max-w-5xl" }, /* @__PURE__ */ import_react17.default.createElement("form", { className: "flex flex-col gap-8", onSubmit: handleSave, autoComplete: "off" }, /* @__PURE__ */ import_react17.default.createElement(
939
1091
  TextInput,
940
1092
  {
941
1093
  label: "Display Name",
@@ -945,7 +1097,7 @@ var UniversalOrganizationPage = ({
945
1097
  placeholder: "Sovereign User",
946
1098
  maxLength: 50
947
1099
  }
948
- ), /* @__PURE__ */ import_react15.default.createElement(
1100
+ ), /* @__PURE__ */ import_react17.default.createElement(
949
1101
  TextInput,
950
1102
  {
951
1103
  label: "Digital Identity",
@@ -955,7 +1107,7 @@ var UniversalOrganizationPage = ({
955
1107
  placeholder: "sovereignuser",
956
1108
  maxLength: 30
957
1109
  }
958
- ), /* @__PURE__ */ import_react15.default.createElement("div", { className: "space-y-1.5 relative w-full" }, /* @__PURE__ */ import_react15.default.createElement("label", { className: "text-[11px] text-neutral-400 tracking-[0.2em] block" }, "Wallet Username"), /* @__PURE__ */ import_react15.default.createElement("div", { className: "flex items-center relative w-full border-b border-neutral-100 focus-within:border-black transition-all duration-300" }, /* @__PURE__ */ import_react15.default.createElement(
1110
+ ), /* @__PURE__ */ import_react17.default.createElement("div", { className: "space-y-1.5 relative w-full" }, /* @__PURE__ */ import_react17.default.createElement("label", { className: "text-[11px] text-neutral-400 tracking-[0.2em] block" }, "Wallet Username"), /* @__PURE__ */ import_react17.default.createElement("div", { className: "flex items-center relative w-full border-b border-neutral-100 focus-within:border-black transition-all duration-300" }, /* @__PURE__ */ import_react17.default.createElement(
959
1111
  "input",
960
1112
  {
961
1113
  type: "text",
@@ -967,7 +1119,7 @@ var UniversalOrganizationPage = ({
967
1119
  className: "w-full px-2 py-3 text-sm bg-transparent text-black outline-none disabled:opacity-50 disabled:cursor-not-allowed",
968
1120
  placeholder: "sovereign-user-handle"
969
1121
  }
970
- ), /* @__PURE__ */ import_react15.default.createElement("span", { className: "text-neutral-400 text-sm py-3 pr-8 shrink-0 whitespace-nowrap" }, slugPrefixUrl), /* @__PURE__ */ import_react15.default.createElement("div", { className: "absolute right-2 top-1/2 -translate-y-1/2" }, isCheckingSlug && /* @__PURE__ */ import_react15.default.createElement(InputSpinner2, null), !isCheckingSlug && !isReadOnly && slug !== initialSlug && slug.length >= 3 && slugAvailable === false && /* @__PURE__ */ import_react15.default.createElement("span", { className: "inline-flex items-center justify-center w-4 h-4 rounded-full bg-red-100" }, /* @__PURE__ */ import_react15.default.createElement("svg", { className: "w-2 h-2 text-red-600", viewBox: "0 0 20 20", fill: "currentColor" }, /* @__PURE__ */ import_react15.default.createElement("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" }))), !isCheckingSlug && !isReadOnly && slug !== initialSlug && slug.length >= 3 && slugAvailable === true && /* @__PURE__ */ import_react15.default.createElement("span", { className: "inline-flex items-center justify-center w-4 h-4 rounded-full bg-green-100" }, /* @__PURE__ */ import_react15.default.createElement("svg", { className: "w-2 h-2 text-green-600", viewBox: "0 0 20 20", fill: "currentColor" }, /* @__PURE__ */ import_react15.default.createElement("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M16.707 5.293a1 1 0 00-1.414 0L8 12.586 4.707 9.293a1 1 0 10-1.414 1.414l4 4a1 1 0 001.414 0l8-8a1 1 0 000-1.414z" })))))), /* @__PURE__ */ import_react15.default.createElement("div", { className: "pt-8 mt-2 flex items-center gap-4" }, /* @__PURE__ */ import_react15.default.createElement(
1122
+ ), /* @__PURE__ */ import_react17.default.createElement("span", { className: "text-neutral-400 text-sm py-3 pr-8 shrink-0 whitespace-nowrap" }, slugPrefixUrl), /* @__PURE__ */ import_react17.default.createElement("div", { className: "absolute right-2 top-1/2 -translate-y-1/2" }, isCheckingSlug && /* @__PURE__ */ import_react17.default.createElement(InputSpinner2, null), !isCheckingSlug && !isReadOnly && slug !== initialSlug && slug.length >= 3 && slugAvailable === false && /* @__PURE__ */ import_react17.default.createElement("span", { className: "inline-flex items-center justify-center w-4 h-4 rounded-full bg-red-100" }, /* @__PURE__ */ import_react17.default.createElement("svg", { className: "w-2 h-2 text-red-600", viewBox: "0 0 20 20", fill: "currentColor" }, /* @__PURE__ */ import_react17.default.createElement("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" }))), !isCheckingSlug && !isReadOnly && slug !== initialSlug && slug.length >= 3 && slugAvailable === true && /* @__PURE__ */ import_react17.default.createElement("span", { className: "inline-flex items-center justify-center w-4 h-4 rounded-full bg-green-100" }, /* @__PURE__ */ import_react17.default.createElement("svg", { className: "w-2 h-2 text-green-600", viewBox: "0 0 20 20", fill: "currentColor" }, /* @__PURE__ */ import_react17.default.createElement("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M16.707 5.293a1 1 0 00-1.414 0L8 12.586 4.707 9.293a1 1 0 10-1.414 1.414l4 4a1 1 0 001.414 0l8-8a1 1 0 000-1.414z" })))))), /* @__PURE__ */ import_react17.default.createElement("div", { className: "pt-8 mt-2 flex items-center gap-4" }, /* @__PURE__ */ import_react17.default.createElement(
971
1123
  ThreeDActionButton,
972
1124
  {
973
1125
  type: "submit",
@@ -976,7 +1128,7 @@ var UniversalOrganizationPage = ({
976
1128
  className: "min-w-32"
977
1129
  },
978
1130
  "Save Changes"
979
- ), hasChanges && !isSubmitting && !isReadOnly && /* @__PURE__ */ import_react15.default.createElement(
1131
+ ), hasChanges && !isSubmitting && !isReadOnly && /* @__PURE__ */ import_react17.default.createElement(
980
1132
  "button",
981
1133
  {
982
1134
  type: "button",
@@ -992,10 +1144,10 @@ var UniversalOrganizationPage = ({
992
1144
  };
993
1145
 
994
1146
  // src/components/UniversalProfileSettings.tsx
995
- var import_react17 = __toESM(require("react"));
1147
+ var import_react19 = __toESM(require("react"));
996
1148
  var import_react_hot_toast4 = __toESM(require("react-hot-toast"));
997
- var import_react18 = require("@hugeicons/react");
998
- var import_core_free_icons4 = require("@hugeicons/core-free-icons");
1149
+ var import_react20 = require("@hugeicons/react");
1150
+ var import_core_free_icons6 = require("@hugeicons/core-free-icons");
999
1151
  var UniversalProfileSettings = ({
1000
1152
  initialFirstName,
1001
1153
  initialLastName,
@@ -1009,15 +1161,15 @@ var UniversalProfileSettings = ({
1009
1161
  onSavePin,
1010
1162
  onSaveProfile
1011
1163
  }) => {
1012
- const [firstName, setFirstName] = (0, import_react17.useState)(initialFirstName);
1013
- const [lastName, setLastName] = (0, import_react17.useState)(initialLastName);
1014
- const [isSubmitting, setIsSubmitting] = (0, import_react17.useState)(false);
1015
- const [isPinModalOpen, setIsPinModalOpen] = (0, import_react17.useState)(false);
1016
- const [oldPin, setOldPin] = (0, import_react17.useState)("");
1017
- const [newPin, setNewPin] = (0, import_react17.useState)("");
1018
- const [confirmPin, setConfirmPin] = (0, import_react17.useState)("");
1019
- const [isPinSubmitting, setIsPinSubmitting] = (0, import_react17.useState)(false);
1020
- (0, import_react17.useEffect)(() => {
1164
+ const [firstName, setFirstName] = (0, import_react19.useState)(initialFirstName);
1165
+ const [lastName, setLastName] = (0, import_react19.useState)(initialLastName);
1166
+ const [isSubmitting, setIsSubmitting] = (0, import_react19.useState)(false);
1167
+ const [isPinModalOpen, setIsPinModalOpen] = (0, import_react19.useState)(false);
1168
+ const [oldPin, setOldPin] = (0, import_react19.useState)("");
1169
+ const [newPin, setNewPin] = (0, import_react19.useState)("");
1170
+ const [confirmPin, setConfirmPin] = (0, import_react19.useState)("");
1171
+ const [isPinSubmitting, setIsPinSubmitting] = (0, import_react19.useState)(false);
1172
+ (0, import_react19.useEffect)(() => {
1021
1173
  setFirstName(initialFirstName || "");
1022
1174
  setLastName(initialLastName || "");
1023
1175
  }, [initialFirstName, initialLastName]);
@@ -1083,7 +1235,7 @@ var UniversalProfileSettings = ({
1083
1235
  };
1084
1236
  const hasChanges = firstName !== initialFirstName || lastName !== initialLastName;
1085
1237
  const isSaveDisabled = isSubmitting || isReadOnly || !hasChanges || firstName.trim().length === 0 || lastName.trim().length === 0;
1086
- return /* @__PURE__ */ import_react17.default.createElement("div", { className: "flex flex-col max-w-5xl rounded-2xl p-6 bg-white gap-8 animate-in fade-in duration-300" }, /* @__PURE__ */ import_react17.default.createElement(ManagedToaster, null), /* @__PURE__ */ import_react17.default.createElement("div", { className: "flex flex-col sm:flex-row sm:items-start justify-between gap-3 sm:gap-4" }, /* @__PURE__ */ import_react17.default.createElement("div", { className: "min-w-0" }, /* @__PURE__ */ import_react17.default.createElement("h1", { className: "text-black text-xl mb-1 truncate tracking-tight" }, "Personal Settings"), /* @__PURE__ */ import_react17.default.createElement("p", { className: "text-xs text-neutral-500 truncate" }, "Manage your personal account profile.")), isReadOnly && /* @__PURE__ */ import_react17.default.createElement("span", { className: "p-2 w-9 h-9 bg-neutral-100 text-neutral-400 rounded-full shrink-0" }, /* @__PURE__ */ import_react17.default.createElement(import_react18.HugeiconsIcon, { icon: import_core_free_icons4.CircleLock02Icon, size: 18, className: "text-current" }))), bannerProps && /* @__PURE__ */ import_react17.default.createElement(Banner, { ...bannerProps }), /* @__PURE__ */ import_react17.default.createElement("div", { className: "w-full max-w-5xl" }, /* @__PURE__ */ import_react17.default.createElement("form", { className: "flex flex-col gap-8", onSubmit: handleSave, autoComplete: "off" }, /* @__PURE__ */ import_react17.default.createElement("div", { className: "flex flex-col sm:flex-row gap-6" }, /* @__PURE__ */ import_react17.default.createElement("div", { className: "flex-1 min-w-0" }, /* @__PURE__ */ import_react17.default.createElement(
1238
+ return /* @__PURE__ */ import_react19.default.createElement("div", { className: "flex flex-col max-w-5xl rounded-2xl p-6 bg-white gap-8 animate-in fade-in duration-300" }, /* @__PURE__ */ import_react19.default.createElement(ManagedToaster, null), /* @__PURE__ */ import_react19.default.createElement("div", { className: "flex flex-col sm:flex-row sm:items-start justify-between gap-3 sm:gap-4" }, /* @__PURE__ */ import_react19.default.createElement("div", { className: "min-w-0" }, /* @__PURE__ */ import_react19.default.createElement("h1", { className: "text-black text-xl mb-1 truncate tracking-tight" }, "Personal Settings"), /* @__PURE__ */ import_react19.default.createElement("p", { className: "text-xs text-neutral-500 truncate" }, "Manage your personal account profile.")), isReadOnly && /* @__PURE__ */ import_react19.default.createElement("span", { className: "p-2 w-9 h-9 bg-neutral-100 text-neutral-400 rounded-full shrink-0" }, /* @__PURE__ */ import_react19.default.createElement(import_react20.HugeiconsIcon, { icon: import_core_free_icons6.CircleLock02Icon, size: 18, className: "text-current" }))), bannerProps && /* @__PURE__ */ import_react19.default.createElement(Banner, { ...bannerProps }), /* @__PURE__ */ import_react19.default.createElement("div", { className: "w-full max-w-5xl" }, /* @__PURE__ */ import_react19.default.createElement("form", { className: "flex flex-col gap-8", onSubmit: handleSave, autoComplete: "off" }, /* @__PURE__ */ import_react19.default.createElement("div", { className: "flex flex-col sm:flex-row gap-6" }, /* @__PURE__ */ import_react19.default.createElement("div", { className: "flex-1 min-w-0" }, /* @__PURE__ */ import_react19.default.createElement(
1087
1239
  TextInput,
1088
1240
  {
1089
1241
  label: "First Name",
@@ -1092,7 +1244,7 @@ var UniversalProfileSettings = ({
1092
1244
  disabled: isReadOnly || isSubmitting,
1093
1245
  placeholder: "System"
1094
1246
  }
1095
- )), /* @__PURE__ */ import_react17.default.createElement("div", { className: "flex-1 min-w-0" }, /* @__PURE__ */ import_react17.default.createElement(
1247
+ )), /* @__PURE__ */ import_react19.default.createElement("div", { className: "flex-1 min-w-0" }, /* @__PURE__ */ import_react19.default.createElement(
1096
1248
  TextInput,
1097
1249
  {
1098
1250
  label: "Last Name",
@@ -1101,7 +1253,7 @@ var UniversalProfileSettings = ({
1101
1253
  disabled: isReadOnly || isSubmitting,
1102
1254
  placeholder: "Admin"
1103
1255
  }
1104
- ))), /* @__PURE__ */ import_react17.default.createElement("div", { className: "space-y-2 min-w-0" }, /* @__PURE__ */ import_react17.default.createElement(
1256
+ ))), /* @__PURE__ */ import_react19.default.createElement("div", { className: "space-y-2 min-w-0" }, /* @__PURE__ */ import_react19.default.createElement(
1105
1257
  TextInput,
1106
1258
  {
1107
1259
  label: "Email ID",
@@ -1110,7 +1262,7 @@ var UniversalProfileSettings = ({
1110
1262
  },
1111
1263
  disabled: true
1112
1264
  }
1113
- ), /* @__PURE__ */ import_react17.default.createElement("p", { className: "text-[11px] text-neutral-500 mt-1 truncate" }, "To change your email address, please contact support.")), /* @__PURE__ */ import_react17.default.createElement("div", { className: "flex flex-col sm:flex-row sm:items-center justify-between pt-8 mt-2 gap-6 sm:gap-4" }, /* @__PURE__ */ import_react17.default.createElement("div", { className: "flex items-center gap-6 min-w-0" }, /* @__PURE__ */ import_react17.default.createElement("div", { className: "min-w-0" }, /* @__PURE__ */ import_react17.default.createElement("span", { className: "text-[11px] text-neutral-400 tracking-[0.2em] block truncate" }, "Account Status"), /* @__PURE__ */ import_react17.default.createElement("span", { className: "text-xs text-black block truncate" }, accountStatus)), /* @__PURE__ */ import_react17.default.createElement("div", { className: "min-w-0" }, /* @__PURE__ */ import_react17.default.createElement("span", { className: "text-[11px] text-neutral-400 tracking-[0.2em] block truncate" }, "Member Since"), /* @__PURE__ */ import_react17.default.createElement("span", { className: "text-xs text-black block truncate" }, memberSince ? new Date(memberSince).toLocaleDateString("en-US", { month: "long", day: "numeric", year: "numeric" }) : "N/A")), /* @__PURE__ */ import_react17.default.createElement("div", { className: "min-w-0 pl-4" }, /* @__PURE__ */ import_react17.default.createElement(
1265
+ ), /* @__PURE__ */ import_react19.default.createElement("p", { className: "text-[11px] text-neutral-500 mt-1 truncate" }, "To change your email address, please contact support.")), /* @__PURE__ */ import_react19.default.createElement("div", { className: "flex flex-col sm:flex-row sm:items-center justify-between pt-8 mt-2 gap-6 sm:gap-4" }, /* @__PURE__ */ import_react19.default.createElement("div", { className: "flex items-center gap-6 min-w-0" }, /* @__PURE__ */ import_react19.default.createElement("div", { className: "min-w-0" }, /* @__PURE__ */ import_react19.default.createElement("span", { className: "text-[11px] text-neutral-400 tracking-[0.2em] block truncate" }, "Account Status"), /* @__PURE__ */ import_react19.default.createElement("span", { className: "text-xs text-black block truncate" }, accountStatus)), /* @__PURE__ */ import_react19.default.createElement("div", { className: "min-w-0" }, /* @__PURE__ */ import_react19.default.createElement("span", { className: "text-[11px] text-neutral-400 tracking-[0.2em] block truncate" }, "Member Since"), /* @__PURE__ */ import_react19.default.createElement("span", { className: "text-xs text-black block truncate" }, memberSince ? new Date(memberSince).toLocaleDateString("en-US", { month: "long", day: "numeric", year: "numeric" }) : "N/A")), /* @__PURE__ */ import_react19.default.createElement("div", { className: "min-w-0 pl-4" }, /* @__PURE__ */ import_react19.default.createElement(
1114
1266
  "button",
1115
1267
  {
1116
1268
  type: "button",
@@ -1118,8 +1270,8 @@ var UniversalProfileSettings = ({
1118
1270
  "aria-label": "PIN Settings",
1119
1271
  className: "w-9 h-9 flex items-center justify-center border border-neutral-200 rounded-full text-black hover:bg-neutral-50 transition-colors outline-none"
1120
1272
  },
1121
- /* @__PURE__ */ import_react17.default.createElement(import_react18.HugeiconsIcon, { icon: import_core_free_icons4.LockKeyIcon, size: 17, className: "text-black" })
1122
- ))), /* @__PURE__ */ import_react17.default.createElement("div", { className: "flex flex-col-reverse sm:flex-row items-center gap-3 sm:gap-4 w-full sm:w-auto shrink-0" }, hasChanges && !isSubmitting && !isReadOnly && /* @__PURE__ */ import_react17.default.createElement(
1273
+ /* @__PURE__ */ import_react19.default.createElement(import_react20.HugeiconsIcon, { icon: import_core_free_icons6.LockKeyIcon, size: 17, className: "text-black" })
1274
+ ))), /* @__PURE__ */ import_react19.default.createElement("div", { className: "flex flex-col-reverse sm:flex-row items-center gap-3 sm:gap-4 w-full sm:w-auto shrink-0" }, hasChanges && !isSubmitting && !isReadOnly && /* @__PURE__ */ import_react19.default.createElement(
1123
1275
  "button",
1124
1276
  {
1125
1277
  type: "button",
@@ -1130,7 +1282,7 @@ var UniversalProfileSettings = ({
1130
1282
  className: "text-[11px] tracking-widest text-neutral-400 hover:text-black transition-colors w-full sm:w-auto py-2 sm:py-0 outline-none"
1131
1283
  },
1132
1284
  "Cancel"
1133
- ), /* @__PURE__ */ import_react17.default.createElement(
1285
+ ), /* @__PURE__ */ import_react19.default.createElement(
1134
1286
  ThreeDActionButton,
1135
1287
  {
1136
1288
  type: "submit",
@@ -1139,7 +1291,7 @@ var UniversalProfileSettings = ({
1139
1291
  className: "min-w-32 w-full sm:w-auto"
1140
1292
  },
1141
1293
  "Save Changes"
1142
- ))))), isPinModalOpen && /* @__PURE__ */ import_react17.default.createElement("div", { className: "fixed inset-0 z-120 flex items-center justify-center p-4 pointer-events-auto" }, /* @__PURE__ */ import_react17.default.createElement("div", { className: "absolute inset-0 bg-black/40", onClick: closePinModal }), /* @__PURE__ */ import_react17.default.createElement("div", { className: "relative w-full max-w-sm bg-white rounded-2xl flex flex-col overflow-hidden shadow-2xl animate-in zoom-in-95 duration-200" }, /* @__PURE__ */ import_react17.default.createElement("div", { className: "flex items-center justify-between p-5 shrink-0 " }, /* @__PURE__ */ import_react17.default.createElement("h3", { className: "text-[15px] text-black tracking-tight" }, hasPin ? "Change PIN" : "Create PIN"), /* @__PURE__ */ import_react17.default.createElement("button", { onClick: closePinModal, disabled: isPinSubmitting, className: "text-neutral-400 hover:text-black transition-colors outline-none disabled:opacity-50" }, /* @__PURE__ */ import_react17.default.createElement(import_react18.HugeiconsIcon, { icon: import_core_free_icons4.CancelCircleIcon, size: 18 }))), /* @__PURE__ */ import_react17.default.createElement("div", { className: "p-6" }, isPinLoading ? /* @__PURE__ */ import_react17.default.createElement("div", { className: "flex flex-col items-center justify-center py-10" }, /* @__PURE__ */ import_react17.default.createElement(import_react18.HugeiconsIcon, { icon: import_core_free_icons4.Loading03Icon, size: 28, className: "animate-spin text-neutral-400 mb-4" })) : /* @__PURE__ */ import_react17.default.createElement("form", { onSubmit: handlePinSubmit, className: "flex flex-col gap-6" }, hasPin && /* @__PURE__ */ import_react17.default.createElement(
1294
+ ))))), isPinModalOpen && /* @__PURE__ */ import_react19.default.createElement("div", { className: "fixed inset-0 z-120 flex items-center justify-center p-4 pointer-events-auto" }, /* @__PURE__ */ import_react19.default.createElement("div", { className: "absolute inset-0 bg-black/40", onClick: closePinModal }), /* @__PURE__ */ import_react19.default.createElement("div", { className: "relative w-full max-w-sm bg-white rounded-2xl flex flex-col overflow-hidden shadow-2xl animate-in zoom-in-95 duration-200" }, /* @__PURE__ */ import_react19.default.createElement("div", { className: "flex items-center justify-between p-5 shrink-0 " }, /* @__PURE__ */ import_react19.default.createElement("h3", { className: "text-[15px] text-black tracking-tight" }, hasPin ? "Change PIN" : "Create PIN"), /* @__PURE__ */ import_react19.default.createElement("button", { onClick: closePinModal, disabled: isPinSubmitting, className: "text-neutral-400 hover:text-black transition-colors outline-none disabled:opacity-50" }, /* @__PURE__ */ import_react19.default.createElement(import_react20.HugeiconsIcon, { icon: import_core_free_icons6.CancelCircleIcon, size: 18 }))), /* @__PURE__ */ import_react19.default.createElement("div", { className: "p-6" }, isPinLoading ? /* @__PURE__ */ import_react19.default.createElement("div", { className: "flex flex-col items-center justify-center py-10" }, /* @__PURE__ */ import_react19.default.createElement(import_react20.HugeiconsIcon, { icon: import_core_free_icons6.Loading03Icon, size: 28, className: "animate-spin text-neutral-400 mb-4" })) : /* @__PURE__ */ import_react19.default.createElement("form", { onSubmit: handlePinSubmit, className: "flex flex-col gap-6" }, hasPin && /* @__PURE__ */ import_react19.default.createElement(
1143
1295
  TextInput,
1144
1296
  {
1145
1297
  type: "password",
@@ -1150,7 +1302,7 @@ var UniversalProfileSettings = ({
1150
1302
  onChange: (val) => handlePinInput(val, setOldPin),
1151
1303
  placeholder: "\u2022\u2022\u2022\u2022"
1152
1304
  }
1153
- ), /* @__PURE__ */ import_react17.default.createElement(
1305
+ ), /* @__PURE__ */ import_react19.default.createElement(
1154
1306
  TextInput,
1155
1307
  {
1156
1308
  type: "password",
@@ -1161,7 +1313,7 @@ var UniversalProfileSettings = ({
1161
1313
  onChange: (val) => handlePinInput(val, setNewPin),
1162
1314
  placeholder: "\u2022\u2022\u2022\u2022"
1163
1315
  }
1164
- ), /* @__PURE__ */ import_react17.default.createElement(
1316
+ ), /* @__PURE__ */ import_react19.default.createElement(
1165
1317
  TextInput,
1166
1318
  {
1167
1319
  type: "password",
@@ -1172,7 +1324,7 @@ var UniversalProfileSettings = ({
1172
1324
  onChange: (val) => handlePinInput(val, setConfirmPin),
1173
1325
  placeholder: "\u2022\u2022\u2022\u2022"
1174
1326
  }
1175
- ), /* @__PURE__ */ import_react17.default.createElement("div", { className: "pt-2" }, /* @__PURE__ */ import_react17.default.createElement(
1327
+ ), /* @__PURE__ */ import_react19.default.createElement("div", { className: "pt-2" }, /* @__PURE__ */ import_react19.default.createElement(
1176
1328
  ThreeDActionButton,
1177
1329
  {
1178
1330
  type: "submit",
@@ -1185,14 +1337,14 @@ var UniversalProfileSettings = ({
1185
1337
  };
1186
1338
 
1187
1339
  // src/components/UniversalErrorView.tsx
1188
- var import_react21 = __toESM(require("react"));
1189
- var import_react22 = require("@hugeicons/react");
1190
- var import_core_free_icons6 = require("@hugeicons/core-free-icons");
1340
+ var import_react23 = __toESM(require("react"));
1341
+ var import_react24 = require("@hugeicons/react");
1342
+ var import_core_free_icons8 = require("@hugeicons/core-free-icons");
1191
1343
 
1192
1344
  // src/components/PageSpinner.tsx
1193
- var import_react19 = __toESM(require("react"));
1194
- var import_react20 = require("@hugeicons/react");
1195
- var import_core_free_icons5 = require("@hugeicons/core-free-icons");
1345
+ var import_react21 = __toESM(require("react"));
1346
+ var import_react22 = require("@hugeicons/react");
1347
+ var import_core_free_icons7 = require("@hugeicons/core-free-icons");
1196
1348
  var PageSpinner = ({
1197
1349
  className = "",
1198
1350
  iconClassName = "text-black",
@@ -1200,10 +1352,10 @@ var PageSpinner = ({
1200
1352
  }) => {
1201
1353
  return (
1202
1354
  // z-[100] ensures it sits above absolute headers and modals
1203
- /* @__PURE__ */ import_react19.default.createElement("div", { className: `fixed inset-0 z-100 flex flex-col items-center justify-center w-full h-full pointer-events-none ${className}` }, /* @__PURE__ */ import_react19.default.createElement(
1204
- import_react20.HugeiconsIcon,
1355
+ /* @__PURE__ */ import_react21.default.createElement("div", { className: `fixed inset-0 z-100 flex flex-col items-center justify-center w-full h-full pointer-events-none ${className}` }, /* @__PURE__ */ import_react21.default.createElement(
1356
+ import_react22.HugeiconsIcon,
1205
1357
  {
1206
- icon: import_core_free_icons5.Loading03Icon,
1358
+ icon: import_core_free_icons7.Loading03Icon,
1207
1359
  size,
1208
1360
  className: `animate-spin mb-4 ${iconClassName}`
1209
1361
  }
@@ -1223,7 +1375,7 @@ var UniversalErrorView = ({
1223
1375
  returnLabel = "Return to Workspace"
1224
1376
  }) => {
1225
1377
  if (isBooting || isLoading && !activeData) {
1226
- return /* @__PURE__ */ import_react21.default.createElement("div", { className: "flex items-center justify-center h-screen w-full bg-white" }, /* @__PURE__ */ import_react21.default.createElement(PageSpinner, null));
1378
+ return /* @__PURE__ */ import_react23.default.createElement("div", { className: "flex items-center justify-center h-screen w-full bg-white" }, /* @__PURE__ */ import_react23.default.createElement(PageSpinner, null));
1227
1379
  }
1228
1380
  if (!isLoading && (!activeData || activeError)) {
1229
1381
  const errorString = typeof activeError === "string" ? activeError : JSON.stringify(activeError || "");
@@ -1234,7 +1386,7 @@ var UniversalErrorView = ({
1234
1386
  const apiMessage = typeof activeError === "string" && activeError.trim() !== "" ? activeError : null;
1235
1387
  let title = "Oops Connection Error";
1236
1388
  let description = apiMessage || `We could not load your request. Please check your connection and try again.`;
1237
- let IconComponent = import_core_free_icons6.ConfusedIcon;
1389
+ let IconComponent = import_core_free_icons8.ConfusedIcon;
1238
1390
  if (isNotFoundError) {
1239
1391
  title = "Oops its not your fault";
1240
1392
  description = apiMessage || `We could not reach the ${envName} you just loaded. Our team has been notified.`;
@@ -1242,7 +1394,7 @@ var UniversalErrorView = ({
1242
1394
  title = "Access Restricted";
1243
1395
  description = apiMessage || `You have insufficient permissions to view this ${envName}. Please contact your administrator.`;
1244
1396
  }
1245
- return /* @__PURE__ */ import_react21.default.createElement("div", { className: "flex flex-col items-center justify-center h-screen w-full px-4 animate-in fade-in duration-500" }, /* @__PURE__ */ import_react21.default.createElement("div", { className: "mb-4 flex justify-center" }, /* @__PURE__ */ import_react21.default.createElement(import_react22.HugeiconsIcon, { icon: IconComponent, size: 48, className: "text-neutral-300" })), /* @__PURE__ */ import_react21.default.createElement("h2", { className: "text-lg text-black tracking-tight " }, title), /* @__PURE__ */ import_react21.default.createElement("p", { className: "text-xs mt-2 mb-8 text-neutral-500 max-w-sm text-center leading-relaxed" }, description), /* @__PURE__ */ import_react21.default.createElement("div", { className: "flex flex-col sm:flex-row items-center gap-3 w-full justify-center sm:w-auto" }, isNotFoundError || isPermissionError ? /* @__PURE__ */ import_react21.default.createElement(
1397
+ return /* @__PURE__ */ import_react23.default.createElement("div", { className: "flex flex-col items-center justify-center h-screen w-full px-4 animate-in fade-in duration-500" }, /* @__PURE__ */ import_react23.default.createElement("div", { className: "mb-4 flex justify-center" }, /* @__PURE__ */ import_react23.default.createElement(import_react24.HugeiconsIcon, { icon: IconComponent, size: 48, className: "text-neutral-300" })), /* @__PURE__ */ import_react23.default.createElement("h2", { className: "text-lg text-black tracking-tight " }, title), /* @__PURE__ */ import_react23.default.createElement("p", { className: "text-xs mt-2 mb-8 text-neutral-500 max-w-sm text-center leading-relaxed" }, description), /* @__PURE__ */ import_react23.default.createElement("div", { className: "flex flex-col sm:flex-row items-center gap-3 w-full justify-center sm:w-auto" }, isNotFoundError || isPermissionError ? /* @__PURE__ */ import_react23.default.createElement(
1246
1398
  "button",
1247
1399
  {
1248
1400
  onClick: () => window.location.href = returnUrl,
@@ -1251,14 +1403,14 @@ var UniversalErrorView = ({
1251
1403
  returnLabel
1252
1404
  ) : (
1253
1405
  // Soft errors (Network timeouts) allow them to retry or optionally retreat
1254
- /* @__PURE__ */ import_react21.default.createElement(import_react21.default.Fragment, null, envName.toLowerCase().includes("application") && /* @__PURE__ */ import_react21.default.createElement(
1406
+ /* @__PURE__ */ import_react23.default.createElement(import_react23.default.Fragment, null, envName.toLowerCase().includes("application") && /* @__PURE__ */ import_react23.default.createElement(
1255
1407
  "button",
1256
1408
  {
1257
1409
  onClick: () => window.location.href = returnUrl,
1258
1410
  className: "px-6 py-2 bg-transparent border border-neutral-200 text-neutral-500 hover:text-black hover:bg-neutral-50 rounded-full text-[11px] tracking-widest transition-colors w-full sm:w-auto outline-none "
1259
1411
  },
1260
1412
  "Back Home"
1261
- ), /* @__PURE__ */ import_react21.default.createElement(
1413
+ ), /* @__PURE__ */ import_react23.default.createElement(
1262
1414
  "button",
1263
1415
  {
1264
1416
  onClick: onRetry,
@@ -1273,11 +1425,11 @@ var UniversalErrorView = ({
1273
1425
  };
1274
1426
 
1275
1427
  // src/components/UniversalTransactionPage.tsx
1276
- var import_react23 = __toESM(require("react"));
1277
- var import_react24 = require("@hugeicons/react");
1428
+ var import_react25 = __toESM(require("react"));
1429
+ var import_react26 = require("@hugeicons/react");
1278
1430
  var import_react_hot_toast5 = __toESM(require("react-hot-toast"));
1279
- var import_core_free_icons7 = require("@hugeicons/core-free-icons");
1280
- var PageSpinner2 = () => /* @__PURE__ */ import_react23.default.createElement("div", { className: "flex justify-center items-center py-12" }, /* @__PURE__ */ import_react23.default.createElement(import_react24.HugeiconsIcon, { icon: import_core_free_icons7.Loading03Icon, size: 32, className: "animate-spin mb-4 text-black" }));
1431
+ var import_core_free_icons9 = require("@hugeicons/core-free-icons");
1432
+ var PageSpinner2 = () => /* @__PURE__ */ import_react25.default.createElement("div", { className: "flex justify-center items-center py-12" }, /* @__PURE__ */ import_react25.default.createElement(import_react26.HugeiconsIcon, { icon: import_core_free_icons9.Loading03Icon, size: 32, className: "animate-spin mb-4 text-black" }));
1281
1433
  var formatDate = (dateInput) => {
1282
1434
  const d = new Date(dateInput);
1283
1435
  const day = d.getDate();
@@ -1312,15 +1464,15 @@ var UniversalTransactionPage = ({
1312
1464
  onReportTransaction,
1313
1465
  onGenerateReceipt
1314
1466
  }) => {
1315
- const [selectedTransaction, setSelectedTransaction] = (0, import_react23.useState)(null);
1316
- const [isGeneratingReceipt, setIsGeneratingReceipt] = (0, import_react23.useState)(false);
1317
- const [localSearchQuery, setLocalSearchQuery] = (0, import_react23.useState)(searchQuery);
1318
- const [isTyping, setIsTyping] = (0, import_react23.useState)(false);
1319
- const [isDirectionModalOpen, setIsDirectionModalOpen] = (0, import_react23.useState)(false);
1320
- const [isTypeModalOpen, setIsTypeModalOpen] = (0, import_react23.useState)(false);
1321
- const directionDropdownRef = (0, import_react23.useRef)(null);
1322
- const typeDropdownRef = (0, import_react23.useRef)(null);
1323
- (0, import_react23.useEffect)(() => {
1467
+ const [selectedTransaction, setSelectedTransaction] = (0, import_react25.useState)(null);
1468
+ const [isGeneratingReceipt, setIsGeneratingReceipt] = (0, import_react25.useState)(false);
1469
+ const [localSearchQuery, setLocalSearchQuery] = (0, import_react25.useState)(searchQuery);
1470
+ const [isTyping, setIsTyping] = (0, import_react25.useState)(false);
1471
+ const [isDirectionModalOpen, setIsDirectionModalOpen] = (0, import_react25.useState)(false);
1472
+ const [isTypeModalOpen, setIsTypeModalOpen] = (0, import_react25.useState)(false);
1473
+ const directionDropdownRef = (0, import_react25.useRef)(null);
1474
+ const typeDropdownRef = (0, import_react25.useRef)(null);
1475
+ (0, import_react25.useEffect)(() => {
1324
1476
  function handleClickOutside(event) {
1325
1477
  if (directionDropdownRef.current && !directionDropdownRef.current.contains(event.target)) {
1326
1478
  setIsDirectionModalOpen(false);
@@ -1332,7 +1484,7 @@ var UniversalTransactionPage = ({
1332
1484
  document.addEventListener("mousedown", handleClickOutside);
1333
1485
  return () => document.removeEventListener("mousedown", handleClickOutside);
1334
1486
  }, []);
1335
- (0, import_react23.useEffect)(() => {
1487
+ (0, import_react25.useEffect)(() => {
1336
1488
  setIsTyping(true);
1337
1489
  const handler = setTimeout(() => {
1338
1490
  onSearchChange(localSearchQuery);
@@ -1340,7 +1492,7 @@ var UniversalTransactionPage = ({
1340
1492
  }, 600);
1341
1493
  return () => clearTimeout(handler);
1342
1494
  }, [localSearchQuery, onSearchChange]);
1343
- (0, import_react23.useEffect)(() => {
1495
+ (0, import_react25.useEffect)(() => {
1344
1496
  if (searchQuery === "" && localSearchQuery !== "") {
1345
1497
  setLocalSearchQuery("");
1346
1498
  }
@@ -1363,7 +1515,7 @@ var UniversalTransactionPage = ({
1363
1515
  }
1364
1516
  };
1365
1517
  const isListLoading = isLoading || isTyping;
1366
- return /* @__PURE__ */ import_react23.default.createElement("div", { className: "flex flex-col gap-6 animate-in max-w-5xl fade-in duration-300" }, /* @__PURE__ */ import_react23.default.createElement(ManagedToaster, null), !hideControls && /* @__PURE__ */ import_react23.default.createElement("div", { className: "flex flex-col sm:flex-row items-center justify-between gap-4 w-full" }, /* @__PURE__ */ import_react23.default.createElement("div", { className: "relative w-full sm:w-96" }, /* @__PURE__ */ import_react23.default.createElement("div", { className: "absolute inset-y-0 left-0 pl-4 flex items-center pointer-events-none" }, /* @__PURE__ */ import_react23.default.createElement(import_react24.HugeiconsIcon, { icon: import_core_free_icons7.Search01Icon, size: 16, className: "text-neutral-400" })), /* @__PURE__ */ import_react23.default.createElement(
1518
+ return /* @__PURE__ */ import_react25.default.createElement("div", { className: "flex flex-col gap-6 animate-in max-w-5xl fade-in duration-300" }, /* @__PURE__ */ import_react25.default.createElement(ManagedToaster, null), !hideControls && /* @__PURE__ */ import_react25.default.createElement("div", { className: "flex flex-col sm:flex-row items-center justify-between gap-4 w-full" }, /* @__PURE__ */ import_react25.default.createElement("div", { className: "relative w-full sm:w-96" }, /* @__PURE__ */ import_react25.default.createElement("div", { className: "absolute inset-y-0 left-0 pl-4 flex items-center pointer-events-none" }, /* @__PURE__ */ import_react25.default.createElement(import_react26.HugeiconsIcon, { icon: import_core_free_icons9.Search01Icon, size: 16, className: "text-neutral-400" })), /* @__PURE__ */ import_react25.default.createElement(
1367
1519
  "input",
1368
1520
  {
1369
1521
  type: "text",
@@ -1372,53 +1524,53 @@ var UniversalTransactionPage = ({
1372
1524
  onChange: (e) => setLocalSearchQuery(e.target.value),
1373
1525
  className: "w-full pl-10 pr-4 py-2 bg-white rounded-full text-[13px] text-black placeholder-neutral-400 outline-none transition-colors focus:border-black"
1374
1526
  }
1375
- )), /* @__PURE__ */ import_react23.default.createElement("div", { className: "flex items-center gap-3 w-auto pb-0" }, /* @__PURE__ */ import_react23.default.createElement(
1527
+ )), /* @__PURE__ */ import_react25.default.createElement("div", { className: "flex items-center gap-3 w-auto pb-0" }, /* @__PURE__ */ import_react25.default.createElement(
1376
1528
  "button",
1377
1529
  {
1378
1530
  onClick: () => setIsDirectionModalOpen(true),
1379
1531
  "aria-label": "Filter by payment type",
1380
1532
  className: "flex items-center justify-center bg-white w-10 h-10 rounded-full text-neutral-500 hover:text-black transition-colors outline-none"
1381
1533
  },
1382
- /* @__PURE__ */ import_react23.default.createElement(import_react24.HugeiconsIcon, { icon: import_core_free_icons7.SearchList02Icon, size: 16 })
1383
- ), /* @__PURE__ */ import_react23.default.createElement(
1534
+ /* @__PURE__ */ import_react25.default.createElement(import_react26.HugeiconsIcon, { icon: import_core_free_icons9.SearchList02Icon, size: 16 })
1535
+ ), /* @__PURE__ */ import_react25.default.createElement(
1384
1536
  "button",
1385
1537
  {
1386
1538
  onClick: () => setIsTypeModalOpen(true),
1387
1539
  "aria-label": "Filter by transaction type",
1388
1540
  className: "flex items-center justify-center bg-white w-10 h-10 rounded-full text-neutral-500 hover:text-black transition-colors outline-none"
1389
1541
  },
1390
- /* @__PURE__ */ import_react23.default.createElement(import_react24.HugeiconsIcon, { icon: import_core_free_icons7.ListSettingIcon, size: 16 })
1391
- ))), /* @__PURE__ */ import_react23.default.createElement("div", { className: "flex flex-col gap-8 p-6 rounded-2xl bg-white w-full" }, /* @__PURE__ */ import_react23.default.createElement("div", { className: "flex flex-col sm:flex-row sm:items-start justify-between gap-4" }, /* @__PURE__ */ import_react23.default.createElement("div", null, /* @__PURE__ */ import_react23.default.createElement("h1", { className: "text-black text-xl mb-1 tracking-tight" }, headerTitle), headerDescription && /* @__PURE__ */ import_react23.default.createElement("p", { className: "text-xs text-neutral-500" }, headerDescription))), /* @__PURE__ */ import_react23.default.createElement("div", { className: "w-full overflow-hidden" }, isListLoading ? /* @__PURE__ */ import_react23.default.createElement(PageSpinner2, null) : /* @__PURE__ */ import_react23.default.createElement("div", { className: "flex flex-col min-w-0" }, /* @__PURE__ */ import_react23.default.createElement("div", null, transactions.length === 0 ? /* @__PURE__ */ import_react23.default.createElement("p", { className: "text-xs text-neutral-400 py-6 text-center" }, "No transactions found") : transactions.map((tx) => /* @__PURE__ */ import_react23.default.createElement(
1542
+ /* @__PURE__ */ import_react25.default.createElement(import_react26.HugeiconsIcon, { icon: import_core_free_icons9.ListSettingIcon, size: 16 })
1543
+ ))), /* @__PURE__ */ import_react25.default.createElement("div", { className: "flex flex-col gap-8 p-6 rounded-2xl bg-white w-full" }, /* @__PURE__ */ import_react25.default.createElement("div", { className: "flex flex-col sm:flex-row sm:items-start justify-between gap-4" }, /* @__PURE__ */ import_react25.default.createElement("div", null, /* @__PURE__ */ import_react25.default.createElement("h1", { className: "text-black text-xl mb-1 tracking-tight" }, headerTitle), headerDescription && /* @__PURE__ */ import_react25.default.createElement("p", { className: "text-xs text-neutral-500" }, headerDescription))), /* @__PURE__ */ import_react25.default.createElement("div", { className: "w-full overflow-hidden" }, isListLoading ? /* @__PURE__ */ import_react25.default.createElement(PageSpinner2, null) : /* @__PURE__ */ import_react25.default.createElement("div", { className: "flex flex-col min-w-0" }, /* @__PURE__ */ import_react25.default.createElement("div", null, transactions.length === 0 ? /* @__PURE__ */ import_react25.default.createElement("p", { className: "text-xs text-neutral-400 py-6 text-center" }, "No transactions found") : transactions.map((tx) => /* @__PURE__ */ import_react25.default.createElement(
1392
1544
  "div",
1393
1545
  {
1394
1546
  key: tx.id,
1395
1547
  onClick: () => setSelectedTransaction(tx),
1396
1548
  className: "flex items-center justify-between py-4 hover:bg-neutral-50 transition-colors cursor-pointer group min-w-0 px-3 -mx-3 rounded-xl"
1397
1549
  },
1398
- /* @__PURE__ */ import_react23.default.createElement("div", { className: "flex items-center gap-4 min-w-0 flex-1" }, /* @__PURE__ */ import_react23.default.createElement("div", { className: `w-10 h-10 shrink-0 rounded-full flex items-center justify-center bg-neutral-100 text-black` }, /* @__PURE__ */ import_react23.default.createElement(import_react24.HugeiconsIcon, { icon: tx.direction === "CREDIT" ? import_core_free_icons7.ArrowDownRight01Icon : import_core_free_icons7.ArrowUpRight01Icon, size: 18 })), /* @__PURE__ */ import_react23.default.createElement("div", { className: "min-w-0 flex-1 flex flex-col gap-1" }, /* @__PURE__ */ import_react23.default.createElement("p", { className: "text-[13px] text-black truncate" }, getDisplayName(tx)), /* @__PURE__ */ import_react23.default.createElement("p", { className: `text-[13px] text-neutral-500 truncate transition-all duration-300 ${hideBalanceAmounts ? "blur-sm opacity-40 select-none" : ""}` }, tx.direction === "CREDIT" ? "+" : "-", tx.amount, " ", tx.currency))),
1399
- /* @__PURE__ */ import_react23.default.createElement("div", { className: "shrink-0 flex flex-col items-end gap-1 text-right" }, /* @__PURE__ */ import_react23.default.createElement("span", { className: "text-[11px] text-neutral-400" }, formatDate(tx.createdAt)), /* @__PURE__ */ import_react23.default.createElement("span", { className: "text-[11px] text-neutral-400 capitalize" }, tx.direction.toLowerCase()))
1400
- ))), !hidePagination && /* @__PURE__ */ import_react23.default.createElement("div", { className: "flex items-center justify-between pt-6 mt-2 " }, /* @__PURE__ */ import_react23.default.createElement("span", { className: "text-[11px] text-neutral-400 tracking-[0.2em]" }, "Page ", currentPage, " of ", totalPages === 0 ? 1 : totalPages), /* @__PURE__ */ import_react23.default.createElement("div", { className: "flex items-center gap-2" }, /* @__PURE__ */ import_react23.default.createElement(
1550
+ /* @__PURE__ */ import_react25.default.createElement("div", { className: "flex items-center gap-4 min-w-0 flex-1" }, /* @__PURE__ */ import_react25.default.createElement("div", { className: `w-10 h-10 shrink-0 rounded-full flex items-center justify-center bg-neutral-100 text-black` }, /* @__PURE__ */ import_react25.default.createElement(import_react26.HugeiconsIcon, { icon: tx.direction === "CREDIT" ? import_core_free_icons9.ArrowDownRight01Icon : import_core_free_icons9.ArrowUpRight01Icon, size: 18 })), /* @__PURE__ */ import_react25.default.createElement("div", { className: "min-w-0 flex-1 flex flex-col gap-1" }, /* @__PURE__ */ import_react25.default.createElement("p", { className: "text-[13px] text-black truncate" }, getDisplayName(tx)), /* @__PURE__ */ import_react25.default.createElement("p", { className: `text-[13px] text-neutral-500 truncate transition-all duration-300 ${hideBalanceAmounts ? "blur-sm opacity-40 select-none" : ""}` }, tx.direction === "CREDIT" ? "+" : "-", tx.amount, " ", tx.currency))),
1551
+ /* @__PURE__ */ import_react25.default.createElement("div", { className: "shrink-0 flex flex-col items-end gap-1 text-right" }, /* @__PURE__ */ import_react25.default.createElement("span", { className: "text-[11px] text-neutral-400" }, formatDate(tx.createdAt)), /* @__PURE__ */ import_react25.default.createElement("span", { className: "text-[11px] text-neutral-400 capitalize" }, tx.direction.toLowerCase()))
1552
+ ))), !hidePagination && /* @__PURE__ */ import_react25.default.createElement("div", { className: "flex items-center justify-between pt-6 mt-2 " }, /* @__PURE__ */ import_react25.default.createElement("span", { className: "text-[11px] text-neutral-400 tracking-[0.2em]" }, "Page ", currentPage, " of ", totalPages === 0 ? 1 : totalPages), /* @__PURE__ */ import_react25.default.createElement("div", { className: "flex items-center gap-2" }, /* @__PURE__ */ import_react25.default.createElement(
1401
1553
  "button",
1402
1554
  {
1403
1555
  onClick: () => onPageChange(currentPage - 1),
1404
1556
  disabled: currentPage <= 1 || isListLoading,
1405
1557
  className: "p-2 bg-white border border-neutral-200 rounded-full text-black hover:bg-neutral-50 disabled:opacity-30 disabled:cursor-not-allowed transition-all outline-none"
1406
1558
  },
1407
- /* @__PURE__ */ import_react23.default.createElement(import_react24.HugeiconsIcon, { icon: import_core_free_icons7.ArrowLeft01Icon, size: 14 })
1408
- ), /* @__PURE__ */ import_react23.default.createElement(
1559
+ /* @__PURE__ */ import_react25.default.createElement(import_react26.HugeiconsIcon, { icon: import_core_free_icons9.ArrowLeft01Icon, size: 14 })
1560
+ ), /* @__PURE__ */ import_react25.default.createElement(
1409
1561
  "button",
1410
1562
  {
1411
1563
  onClick: () => onPageChange(currentPage + 1),
1412
1564
  disabled: currentPage >= totalPages || isListLoading || totalPages === 0,
1413
1565
  className: "p-2 bg-white border border-neutral-200 rounded-full text-black hover:bg-neutral-50 disabled:opacity-30 disabled:cursor-not-allowed transition-all outline-none"
1414
1566
  },
1415
- /* @__PURE__ */ import_react23.default.createElement(import_react24.HugeiconsIcon, { icon: import_core_free_icons7.ArrowRight01Icon, size: 14 })
1416
- )))))), selectedTransaction && /* @__PURE__ */ import_react23.default.createElement("div", { className: "fixed inset-0 z-120 flex items-center justify-center p-4 pointer-events-auto" }, /* @__PURE__ */ import_react23.default.createElement("div", { className: "absolute inset-0 bg-black/40 ", onClick: () => setSelectedTransaction(null) }), /* @__PURE__ */ import_react23.default.createElement("div", { className: "relative w-full max-w-sm bg-white rounded-2xl flex flex-col overflow-hidden shadow-2xl animate-in zoom-in-95 duration-200 max-h-[90vh]" }, /* @__PURE__ */ import_react23.default.createElement("div", { className: "flex items-center justify-between p-5 shrink-0 " }, /* @__PURE__ */ import_react23.default.createElement("h3", { className: "text-[15px] text-black tracking-tight" }, "Details"), /* @__PURE__ */ import_react23.default.createElement("button", { onClick: () => setSelectedTransaction(null), className: "text-neutral-400 hover:text-black transition-colors outline-none" }, /* @__PURE__ */ import_react23.default.createElement(import_react24.HugeiconsIcon, { icon: import_core_free_icons7.CancelCircleIcon, size: 18 }))), /* @__PURE__ */ import_react23.default.createElement("div", { className: "flex-1 overflow-y-auto custom-scrollbar p-6" }, /* @__PURE__ */ import_react23.default.createElement("div", { className: "flex flex-col items-center justify-center mb-4" }, /* @__PURE__ */ import_react23.default.createElement("div", { className: `w-12 h-12 rounded-full flex items-center justify-center mb-4 bg-neutral-100 text-black` }, /* @__PURE__ */ import_react23.default.createElement(import_react24.HugeiconsIcon, { icon: selectedTransaction.direction === "CREDIT" ? import_core_free_icons7.ArrowDownRight01Icon : import_core_free_icons7.ArrowUpRight01Icon, size: 20 })), /* @__PURE__ */ import_react23.default.createElement("h2", { className: `text-2xl text-black mb-2 transition-all duration-300 ${hideBalanceAmounts ? "blur-[6px] opacity-40 select-none" : ""}` }, selectedTransaction.direction === "CREDIT" ? "+" : "-", selectedTransaction.amount, " ", selectedTransaction.currency), /* @__PURE__ */ import_react23.default.createElement("span", { className: "text-[9px] tracking-widest text-neutral-500 px-4 py-1.5 rounded-full bg-neutral-50" }, selectedTransaction.status)), /* @__PURE__ */ import_react23.default.createElement("div", { className: "grid grid-cols-1 gap-y-8 gap-x-4 mb-10 mt-6" }, /* @__PURE__ */ import_react23.default.createElement("div", null, /* @__PURE__ */ import_react23.default.createElement("span", { className: "text-[11px] tracking-[0.2em] text-neutral-400 block mb-2" }, "Reference ID"), /* @__PURE__ */ import_react23.default.createElement("span", { className: "text-[13px] text-black break-all" }, selectedTransaction.reference)), /* @__PURE__ */ import_react23.default.createElement("div", null, /* @__PURE__ */ import_react23.default.createElement("span", { className: "text-[11px] tracking-[0.2em] text-neutral-400 block mb-2" }, "Date & Time"), /* @__PURE__ */ import_react23.default.createElement("span", { className: "text-[13px] text-black" }, formatDate(selectedTransaction.createdAt), " at ", formatTime(selectedTransaction.createdAt))), /* @__PURE__ */ import_react23.default.createElement("div", null, /* @__PURE__ */ import_react23.default.createElement("span", { className: "text-[11px] tracking-[0.2em] text-neutral-400 block mb-2" }, "Transaction Type"), /* @__PURE__ */ import_react23.default.createElement("span", { className: "text-[13px] text-black capitalize" }, selectedTransaction.type.replace("_", " ").toLowerCase())), /* @__PURE__ */ import_react23.default.createElement("div", null, /* @__PURE__ */ import_react23.default.createElement("span", { className: "text-[11px] tracking-[0.2em] text-neutral-400 block mb-2" }, "Flow Direction"), /* @__PURE__ */ import_react23.default.createElement("span", { className: "text-[13px] text-black capitalize" }, selectedTransaction.direction.toLowerCase())), selectedTransaction.metadata?.fromAddress && selectedTransaction.metadata?.toAddress && /* @__PURE__ */ import_react23.default.createElement("div", null, /* @__PURE__ */ import_react23.default.createElement("span", { className: "text-[11px] tracking-[0.2em] text-neutral-400 block mb-2" }, "Transfer Route"), /* @__PURE__ */ import_react23.default.createElement("div", { className: "flex items-center gap-2 text-[13px] text-black" }, /* @__PURE__ */ import_react23.default.createElement("span", { className: "truncate " }, truncateAddress(String(selectedTransaction.metadata.fromAddress))), /* @__PURE__ */ import_react23.default.createElement("span", { className: "text-neutral-400" }, "\u2192"), /* @__PURE__ */ import_react23.default.createElement("span", { className: "truncate " }, truncateAddress(String(selectedTransaction.metadata.toAddress))))), selectedTransaction.metadata && Object.entries(selectedTransaction.metadata).map(([key, value]) => {
1567
+ /* @__PURE__ */ import_react25.default.createElement(import_react26.HugeiconsIcon, { icon: import_core_free_icons9.ArrowRight01Icon, size: 14 })
1568
+ )))))), selectedTransaction && /* @__PURE__ */ import_react25.default.createElement("div", { className: "fixed inset-0 z-120 flex items-center justify-center p-4 pointer-events-auto" }, /* @__PURE__ */ import_react25.default.createElement("div", { className: "absolute inset-0 bg-black/40 ", onClick: () => setSelectedTransaction(null) }), /* @__PURE__ */ import_react25.default.createElement("div", { className: "relative w-full max-w-sm bg-white rounded-2xl flex flex-col overflow-hidden shadow-2xl animate-in zoom-in-95 duration-200 max-h-[90vh]" }, /* @__PURE__ */ import_react25.default.createElement("div", { className: "flex items-center justify-between p-5 shrink-0 " }, /* @__PURE__ */ import_react25.default.createElement("h3", { className: "text-[15px] text-black tracking-tight" }, "Details"), /* @__PURE__ */ import_react25.default.createElement("button", { onClick: () => setSelectedTransaction(null), className: "text-neutral-400 hover:text-black transition-colors outline-none" }, /* @__PURE__ */ import_react25.default.createElement(import_react26.HugeiconsIcon, { icon: import_core_free_icons9.CancelCircleIcon, size: 18 }))), /* @__PURE__ */ import_react25.default.createElement("div", { className: "flex-1 overflow-y-auto custom-scrollbar p-6" }, /* @__PURE__ */ import_react25.default.createElement("div", { className: "flex flex-col items-center justify-center mb-4" }, /* @__PURE__ */ import_react25.default.createElement("div", { className: `w-12 h-12 rounded-full flex items-center justify-center mb-4 bg-neutral-100 text-black` }, /* @__PURE__ */ import_react25.default.createElement(import_react26.HugeiconsIcon, { icon: selectedTransaction.direction === "CREDIT" ? import_core_free_icons9.ArrowDownRight01Icon : import_core_free_icons9.ArrowUpRight01Icon, size: 20 })), /* @__PURE__ */ import_react25.default.createElement("h2", { className: `text-2xl text-black mb-2 transition-all duration-300 ${hideBalanceAmounts ? "blur-[6px] opacity-40 select-none" : ""}` }, selectedTransaction.direction === "CREDIT" ? "+" : "-", selectedTransaction.amount, " ", selectedTransaction.currency), /* @__PURE__ */ import_react25.default.createElement("span", { className: "text-[9px] tracking-widest text-neutral-500 px-4 py-1.5 rounded-full bg-neutral-50" }, selectedTransaction.status)), /* @__PURE__ */ import_react25.default.createElement("div", { className: "grid grid-cols-1 gap-y-8 gap-x-4 mb-10 mt-6" }, /* @__PURE__ */ import_react25.default.createElement("div", null, /* @__PURE__ */ import_react25.default.createElement("span", { className: "text-[11px] tracking-[0.2em] text-neutral-400 block mb-2" }, "Reference ID"), /* @__PURE__ */ import_react25.default.createElement("span", { className: "text-[13px] text-black break-all" }, selectedTransaction.reference)), /* @__PURE__ */ import_react25.default.createElement("div", null, /* @__PURE__ */ import_react25.default.createElement("span", { className: "text-[11px] tracking-[0.2em] text-neutral-400 block mb-2" }, "Date & Time"), /* @__PURE__ */ import_react25.default.createElement("span", { className: "text-[13px] text-black" }, formatDate(selectedTransaction.createdAt), " at ", formatTime(selectedTransaction.createdAt))), /* @__PURE__ */ import_react25.default.createElement("div", null, /* @__PURE__ */ import_react25.default.createElement("span", { className: "text-[11px] tracking-[0.2em] text-neutral-400 block mb-2" }, "Transaction Type"), /* @__PURE__ */ import_react25.default.createElement("span", { className: "text-[13px] text-black capitalize" }, selectedTransaction.type.replace("_", " ").toLowerCase())), /* @__PURE__ */ import_react25.default.createElement("div", null, /* @__PURE__ */ import_react25.default.createElement("span", { className: "text-[11px] tracking-[0.2em] text-neutral-400 block mb-2" }, "Flow Direction"), /* @__PURE__ */ import_react25.default.createElement("span", { className: "text-[13px] text-black capitalize" }, selectedTransaction.direction.toLowerCase())), selectedTransaction.metadata?.fromAddress && selectedTransaction.metadata?.toAddress && /* @__PURE__ */ import_react25.default.createElement("div", null, /* @__PURE__ */ import_react25.default.createElement("span", { className: "text-[11px] tracking-[0.2em] text-neutral-400 block mb-2" }, "Transfer Route"), /* @__PURE__ */ import_react25.default.createElement("div", { className: "flex items-center gap-2 text-[13px] text-black" }, /* @__PURE__ */ import_react25.default.createElement("span", { className: "truncate " }, truncateAddress(String(selectedTransaction.metadata.fromAddress))), /* @__PURE__ */ import_react25.default.createElement("span", { className: "text-neutral-400" }, "\u2192"), /* @__PURE__ */ import_react25.default.createElement("span", { className: "truncate " }, truncateAddress(String(selectedTransaction.metadata.toAddress))))), selectedTransaction.metadata && Object.entries(selectedTransaction.metadata).map(([key, value]) => {
1417
1569
  if (key === "fromAddress" || key === "toAddress") return null;
1418
1570
  if (value === null || value === void 0 || typeof value === "object") return null;
1419
1571
  const formattedKey = key.replace(/([A-Z])/g, " $1").replace(/^./, (str) => str.toUpperCase());
1420
- return /* @__PURE__ */ import_react23.default.createElement("div", { key }, /* @__PURE__ */ import_react23.default.createElement("span", { className: "text-[11px] tracking-[0.2em] text-neutral-400 block mb-2" }, formattedKey), /* @__PURE__ */ import_react23.default.createElement("span", { className: "text-[13px] text-black break-all" }, String(value)));
1421
- })), /* @__PURE__ */ import_react23.default.createElement("div", { className: "flex flex-col gap-3" }, /* @__PURE__ */ import_react23.default.createElement(
1572
+ return /* @__PURE__ */ import_react25.default.createElement("div", { key }, /* @__PURE__ */ import_react25.default.createElement("span", { className: "text-[11px] tracking-[0.2em] text-neutral-400 block mb-2" }, formattedKey), /* @__PURE__ */ import_react25.default.createElement("span", { className: "text-[13px] text-black break-all" }, String(value)));
1573
+ })), /* @__PURE__ */ import_react25.default.createElement("div", { className: "flex flex-col gap-3" }, /* @__PURE__ */ import_react25.default.createElement(
1422
1574
  ThreeDActionButton,
1423
1575
  {
1424
1576
  onClick: handleGenerateReceipt,
@@ -1426,14 +1578,14 @@ var UniversalTransactionPage = ({
1426
1578
  className: "w-full py-3 text-[14px]"
1427
1579
  },
1428
1580
  "Generate Receipt"
1429
- ), /* @__PURE__ */ import_react23.default.createElement(
1581
+ ), /* @__PURE__ */ import_react25.default.createElement(
1430
1582
  "button",
1431
1583
  {
1432
1584
  onClick: () => onReportTransaction && onReportTransaction(selectedTransaction),
1433
1585
  className: "w-full flex items-center justify-center py-2.5 rounded-full border border-neutral-200 text-black hover:bg-neutral-50 transition-colors outline-none text-[13px] tracking-wide mt-2"
1434
1586
  },
1435
1587
  "Report Transaction"
1436
- ), selectedTransaction.type === "WALLET_TRANSACTION" && /* @__PURE__ */ import_react23.default.createElement(
1588
+ ), selectedTransaction.type === "WALLET_TRANSACTION" && /* @__PURE__ */ import_react25.default.createElement(
1437
1589
  "a",
1438
1590
  {
1439
1591
  href: `https://basescan.org/tx/${selectedTransaction.reference}`,
@@ -1442,7 +1594,7 @@ var UniversalTransactionPage = ({
1442
1594
  className: "w-full flex items-center justify-center py-2.5 rounded-full border border-neutral-200 text-black hover:bg-neutral-50 transition-colors outline-none text-[13px] tracking-wide mt-2"
1443
1595
  },
1444
1596
  "View in block explorer"
1445
- ))))), isDirectionModalOpen && /* @__PURE__ */ import_react23.default.createElement("div", { className: "fixed inset-0 z-110 flex items-center justify-center p-4" }, /* @__PURE__ */ import_react23.default.createElement("div", { className: "absolute inset-0 bg-black/40 ", onClick: () => setIsDirectionModalOpen(false) }), /* @__PURE__ */ import_react23.default.createElement("div", { ref: directionDropdownRef, className: "relative w-72 bg-white shadow-2xl rounded-2xl flex flex-col items-center overflow-hidden animate-in zoom-in-95 duration-200" }, /* @__PURE__ */ import_react23.default.createElement("div", { className: "p-6 text-center w-full mb-2" }, /* @__PURE__ */ import_react23.default.createElement("h3", { className: "text-[14px] text-black tracking-tight" }, "Payment Type")), /* @__PURE__ */ import_react23.default.createElement("div", { className: "w-full flex flex-col pl-2 pr-2 gap-1" }, ["ALL", "CREDIT", "DEBIT"].map((option) => /* @__PURE__ */ import_react23.default.createElement(
1597
+ ))))), isDirectionModalOpen && /* @__PURE__ */ import_react25.default.createElement("div", { className: "fixed inset-0 z-110 flex items-center justify-center p-4" }, /* @__PURE__ */ import_react25.default.createElement("div", { className: "absolute inset-0 bg-black/40 ", onClick: () => setIsDirectionModalOpen(false) }), /* @__PURE__ */ import_react25.default.createElement("div", { ref: directionDropdownRef, className: "relative w-72 bg-white shadow-2xl rounded-2xl flex flex-col items-center overflow-hidden animate-in zoom-in-95 duration-200" }, /* @__PURE__ */ import_react25.default.createElement("div", { className: "p-6 text-center w-full mb-2" }, /* @__PURE__ */ import_react25.default.createElement("h3", { className: "text-[14px] text-black tracking-tight" }, "Payment Type")), /* @__PURE__ */ import_react25.default.createElement("div", { className: "w-full flex flex-col pl-2 pr-2 gap-1" }, ["ALL", "CREDIT", "DEBIT"].map((option) => /* @__PURE__ */ import_react25.default.createElement(
1446
1598
  "button",
1447
1599
  {
1448
1600
  key: option,
@@ -1452,19 +1604,19 @@ var UniversalTransactionPage = ({
1452
1604
  },
1453
1605
  className: `text-left px-4 py-3 text-[11px] tracking-wide transition-colors rounded-full flex items-center justify-between outline-none ${activeDirectionFilter === option ? "bg-neutral-100 text-black " : "text-neutral-500 hover:bg-neutral-50 hover:text-black"}`
1454
1606
  },
1455
- /* @__PURE__ */ import_react23.default.createElement("span", { className: "truncate pr-2" }, option.charAt(0).toUpperCase() + option.slice(1).toLowerCase())
1456
- ))), /* @__PURE__ */ import_react23.default.createElement("div", { className: "w-full flex mt-2 " }, /* @__PURE__ */ import_react23.default.createElement(
1607
+ /* @__PURE__ */ import_react25.default.createElement("span", { className: "truncate pr-2" }, option.charAt(0).toUpperCase() + option.slice(1).toLowerCase())
1608
+ ))), /* @__PURE__ */ import_react25.default.createElement("div", { className: "w-full flex mt-2 " }, /* @__PURE__ */ import_react25.default.createElement(
1457
1609
  "button",
1458
1610
  {
1459
1611
  onClick: () => setIsDirectionModalOpen(false),
1460
1612
  className: "w-full py-4 text-[13px] text-neutral-500 hover:text-black transition-colors outline-none "
1461
1613
  },
1462
1614
  "Cancel"
1463
- )))), isTypeModalOpen && /* @__PURE__ */ import_react23.default.createElement("div", { className: "fixed inset-0 z-110 flex items-center justify-center p-4" }, /* @__PURE__ */ import_react23.default.createElement("div", { className: "absolute inset-0 bg-black/40 ", onClick: () => setIsTypeModalOpen(false) }), /* @__PURE__ */ import_react23.default.createElement("div", { ref: typeDropdownRef, className: "relative w-72 bg-white shadow-2xl rounded-2xl flex flex-col items-center overflow-hidden animate-in zoom-in-95 duration-200" }, /* @__PURE__ */ import_react23.default.createElement("div", { className: "p-6 text-center w-full mb-2" }, /* @__PURE__ */ import_react23.default.createElement("h3", { className: "text-[14px] text-black tracking-tight" }, "Transactions Type")), /* @__PURE__ */ import_react23.default.createElement("div", { className: "w-full flex flex-col pl-2 pr-2 gap-1" }, [
1615
+ )))), isTypeModalOpen && /* @__PURE__ */ import_react25.default.createElement("div", { className: "fixed inset-0 z-110 flex items-center justify-center p-4" }, /* @__PURE__ */ import_react25.default.createElement("div", { className: "absolute inset-0 bg-black/40 ", onClick: () => setIsTypeModalOpen(false) }), /* @__PURE__ */ import_react25.default.createElement("div", { ref: typeDropdownRef, className: "relative w-72 bg-white shadow-2xl rounded-2xl flex flex-col items-center overflow-hidden animate-in zoom-in-95 duration-200" }, /* @__PURE__ */ import_react25.default.createElement("div", { className: "p-6 text-center w-full mb-2" }, /* @__PURE__ */ import_react25.default.createElement("h3", { className: "text-[14px] text-black tracking-tight" }, "Transactions Type")), /* @__PURE__ */ import_react25.default.createElement("div", { className: "w-full flex flex-col pl-2 pr-2 gap-1" }, [
1464
1616
  { label: "All Transactions", value: "ALL" },
1465
1617
  { label: "Wallet Transactions", value: "WALLET_TRANSACTION" },
1466
1618
  { label: "Card Transactions", value: "CARD_TRANSACTION" }
1467
- ].map((option) => /* @__PURE__ */ import_react23.default.createElement(
1619
+ ].map((option) => /* @__PURE__ */ import_react25.default.createElement(
1468
1620
  "button",
1469
1621
  {
1470
1622
  key: option.value,
@@ -1474,8 +1626,8 @@ var UniversalTransactionPage = ({
1474
1626
  },
1475
1627
  className: `text-left px-4 py-3 text-[11px] tracking-wide transition-colors rounded-full flex items-center justify-between outline-none ${activeTypeFilter === option.value ? "bg-neutral-100 text-black " : "text-neutral-500 hover:bg-neutral-50 hover:text-black"}`
1476
1628
  },
1477
- /* @__PURE__ */ import_react23.default.createElement("span", { className: "truncate pr-2" }, option.label.charAt(0).toUpperCase() + option.label.slice(1).toLowerCase())
1478
- ))), /* @__PURE__ */ import_react23.default.createElement("div", { className: "w-full flex mt-2 " }, /* @__PURE__ */ import_react23.default.createElement(
1629
+ /* @__PURE__ */ import_react25.default.createElement("span", { className: "truncate pr-2" }, option.label.charAt(0).toUpperCase() + option.label.slice(1).toLowerCase())
1630
+ ))), /* @__PURE__ */ import_react25.default.createElement("div", { className: "w-full flex mt-2 " }, /* @__PURE__ */ import_react25.default.createElement(
1479
1631
  "button",
1480
1632
  {
1481
1633
  onClick: () => setIsTypeModalOpen(false),
@@ -1486,9 +1638,9 @@ var UniversalTransactionPage = ({
1486
1638
  };
1487
1639
 
1488
1640
  // src/components/UniversalHomeView.tsx
1489
- var import_react25 = __toESM(require("react"));
1490
- var import_react26 = require("@hugeicons/react");
1491
- var import_core_free_icons8 = require("@hugeicons/core-free-icons");
1641
+ var import_react27 = __toESM(require("react"));
1642
+ var import_react28 = require("@hugeicons/react");
1643
+ var import_core_free_icons10 = require("@hugeicons/core-free-icons");
1492
1644
  var UniversalHomeView = ({
1493
1645
  balanceLabel = "Your Balance",
1494
1646
  balanceAmount,
@@ -1497,9 +1649,9 @@ var UniversalHomeView = ({
1497
1649
  secondaryAction,
1498
1650
  transactionsProps
1499
1651
  }) => {
1500
- const [displayAmount, setDisplayAmount] = (0, import_react25.useState)("0.00");
1501
- const [isBalanceHidden, setIsBalanceHidden] = (0, import_react25.useState)(false);
1502
- (0, import_react25.useEffect)(() => {
1652
+ const [displayAmount, setDisplayAmount] = (0, import_react27.useState)("0.00");
1653
+ const [isBalanceHidden, setIsBalanceHidden] = (0, import_react27.useState)(false);
1654
+ (0, import_react27.useEffect)(() => {
1503
1655
  const target = parseFloat(balanceAmount.replace(/,/g, ""));
1504
1656
  if (isNaN(target)) {
1505
1657
  setDisplayAmount(balanceAmount);
@@ -1528,29 +1680,29 @@ var UniversalHomeView = ({
1528
1680
  requestAnimationFrame(step);
1529
1681
  }, [balanceAmount]);
1530
1682
  const [intPart, decPart] = displayAmount.includes(".") ? displayAmount.split(".") : [displayAmount, "00"];
1531
- return /* @__PURE__ */ import_react25.default.createElement("div", { className: "w-full max-w-5xl mx-auto flex flex-col animate-in fade-in duration-300" }, /* @__PURE__ */ import_react25.default.createElement("div", { className: "relative flex items-start justify-between w-full pt-4 pb-8" }, /* @__PURE__ */ import_react25.default.createElement("div", { className: "flex flex-col items-start text-left z-10 w-full" }, /* @__PURE__ */ import_react25.default.createElement("div", { className: "flex items-center gap-2 mb-1.5" }, /* @__PURE__ */ import_react25.default.createElement("span", { className: "text-[12px] sm:text-[13px] text-neutral-500" }, balanceLabel), /* @__PURE__ */ import_react25.default.createElement(
1683
+ return /* @__PURE__ */ import_react27.default.createElement("div", { className: "w-full max-w-5xl mx-auto flex flex-col animate-in fade-in duration-300" }, /* @__PURE__ */ import_react27.default.createElement("div", { className: "relative flex items-start justify-between w-full pt-4 pb-8" }, /* @__PURE__ */ import_react27.default.createElement("div", { className: "flex flex-col items-start text-left z-10 w-full" }, /* @__PURE__ */ import_react27.default.createElement("div", { className: "flex items-center gap-2 mb-1.5" }, /* @__PURE__ */ import_react27.default.createElement("span", { className: "text-[12px] sm:text-[13px] text-neutral-500" }, balanceLabel), /* @__PURE__ */ import_react27.default.createElement(
1532
1684
  "button",
1533
1685
  {
1534
1686
  onClick: () => setIsBalanceHidden(!isBalanceHidden),
1535
1687
  className: "text-neutral-400 hover:text-black transition-colors outline-none"
1536
1688
  },
1537
- /* @__PURE__ */ import_react25.default.createElement(import_react26.HugeiconsIcon, { icon: isBalanceHidden ? import_core_free_icons8.ViewIcon : import_core_free_icons8.ViewOffSlashIcon, size: 14 })
1538
- )), /* @__PURE__ */ import_react25.default.createElement("h1", { className: `text-3xl sm:text-4xl md:text-5xl text-black tracking-tight mb-5 tabular-nums flex items-baseline transition-all duration-300 ${isBalanceHidden ? "blur-sm opacity-40 select-none" : ""}` }, /* @__PURE__ */ import_react25.default.createElement("span", { className: "text-xl sm:text-2xl text-neutral-400 mr-1" }, balanceCurrency), intPart, /* @__PURE__ */ import_react25.default.createElement("span", { className: "text-xl sm:text-2xl text-neutral-400" }, ".", decPart)), /* @__PURE__ */ import_react25.default.createElement("div", { className: "flex items-center gap-3" }, primaryAction && /* @__PURE__ */ import_react25.default.createElement(
1689
+ /* @__PURE__ */ import_react27.default.createElement(import_react28.HugeiconsIcon, { icon: isBalanceHidden ? import_core_free_icons10.ViewIcon : import_core_free_icons10.ViewOffSlashIcon, size: 14 })
1690
+ )), /* @__PURE__ */ import_react27.default.createElement("h1", { className: `text-3xl sm:text-4xl md:text-5xl text-black tracking-tight mb-5 tabular-nums flex items-baseline transition-all duration-300 ${isBalanceHidden ? "blur-sm opacity-40 select-none" : ""}` }, /* @__PURE__ */ import_react27.default.createElement("span", { className: "text-xl sm:text-2xl text-neutral-400 mr-1" }, balanceCurrency), intPart, /* @__PURE__ */ import_react27.default.createElement("span", { className: "text-xl sm:text-2xl text-neutral-400" }, ".", decPart)), /* @__PURE__ */ import_react27.default.createElement("div", { className: "flex items-center gap-3" }, primaryAction && /* @__PURE__ */ import_react27.default.createElement(
1539
1691
  ThreeDActionButton,
1540
1692
  {
1541
1693
  onClick: primaryAction.onClick,
1542
1694
  className: "px-6 py-2.5 sm:px-8 sm:py-2.5"
1543
1695
  },
1544
- /* @__PURE__ */ import_react25.default.createElement("span", { className: "flex items-center gap-1.5 text-[13px] tracking-wide " }, primaryAction.label, primaryAction.icon && /* @__PURE__ */ import_react25.default.createElement(import_react26.HugeiconsIcon, { icon: primaryAction.icon, size: 16 }))
1545
- ), secondaryAction && /* @__PURE__ */ import_react25.default.createElement(
1696
+ /* @__PURE__ */ import_react27.default.createElement("span", { className: "flex items-center gap-1.5 text-[13px] tracking-wide " }, primaryAction.label, primaryAction.icon && /* @__PURE__ */ import_react27.default.createElement(import_react28.HugeiconsIcon, { icon: primaryAction.icon, size: 16 }))
1697
+ ), secondaryAction && /* @__PURE__ */ import_react27.default.createElement(
1546
1698
  "button",
1547
1699
  {
1548
1700
  onClick: secondaryAction.onClick,
1549
1701
  className: "flex items-center gap-1.5 px-6 py-2.5 sm:px-8 sm:py-2.5 rounded-full border border-neutral-200 text-black hover:bg-neutral-50 transition-colors outline-none"
1550
1702
  },
1551
- /* @__PURE__ */ import_react25.default.createElement("span", { className: "text-[13px] tracking-wide " }, secondaryAction.label),
1552
- secondaryAction.icon && /* @__PURE__ */ import_react25.default.createElement(import_react26.HugeiconsIcon, { icon: secondaryAction.icon, size: 16 })
1553
- )))), /* @__PURE__ */ import_react25.default.createElement("div", { className: "w-full mt-2" }, /* @__PURE__ */ import_react25.default.createElement(
1703
+ /* @__PURE__ */ import_react27.default.createElement("span", { className: "text-[13px] tracking-wide " }, secondaryAction.label),
1704
+ secondaryAction.icon && /* @__PURE__ */ import_react27.default.createElement(import_react28.HugeiconsIcon, { icon: secondaryAction.icon, size: 16 })
1705
+ )))), /* @__PURE__ */ import_react27.default.createElement("div", { className: "w-full mt-2" }, /* @__PURE__ */ import_react27.default.createElement(
1554
1706
  UniversalTransactionPage,
1555
1707
  {
1556
1708
  ...transactionsProps,
@@ -1562,14 +1714,14 @@ var UniversalHomeView = ({
1562
1714
  };
1563
1715
 
1564
1716
  // src/components/UniversalWalletPage.tsx
1565
- var import_react27 = __toESM(require("react"));
1717
+ var import_react29 = __toESM(require("react"));
1566
1718
  var import_react_hot_toast6 = __toESM(require("react-hot-toast"));
1567
- var import_react28 = require("@hugeicons/react");
1568
- var import_core_free_icons9 = require("@hugeicons/core-free-icons");
1569
- var PageSpinner3 = () => /* @__PURE__ */ import_react27.default.createElement("div", { className: "flex justify-center items-center py-12" }, /* @__PURE__ */ import_react27.default.createElement(import_react28.HugeiconsIcon, { icon: import_core_free_icons9.Loading03Icon, size: 32, className: "animate-spin mb-4 text-black" }));
1719
+ var import_react30 = require("@hugeicons/react");
1720
+ var import_core_free_icons11 = require("@hugeicons/core-free-icons");
1721
+ var PageSpinner3 = () => /* @__PURE__ */ import_react29.default.createElement("div", { className: "flex justify-center items-center py-12" }, /* @__PURE__ */ import_react29.default.createElement(import_react30.HugeiconsIcon, { icon: import_core_free_icons11.Loading03Icon, size: 32, className: "animate-spin mb-4 text-black" }));
1570
1722
  var WalletLogo = ({ src, alt, sizeClass = "w-10 h-10" }) => {
1571
- const [isLoaded, setIsLoaded] = (0, import_react27.useState)(false);
1572
- return /* @__PURE__ */ import_react27.default.createElement("div", { className: `relative shrink-0 rounded-full bg-neutral-100 flex items-center justify-center overflow-hidden ${sizeClass}` }, !isLoaded && /* @__PURE__ */ import_react27.default.createElement(import_react28.HugeiconsIcon, { icon: import_core_free_icons9.Loading03Icon, size: 16, className: "animate-spin text-neutral-400 absolute" }), /* @__PURE__ */ import_react27.default.createElement(
1723
+ const [isLoaded, setIsLoaded] = (0, import_react29.useState)(false);
1724
+ return /* @__PURE__ */ import_react29.default.createElement("div", { className: `relative shrink-0 rounded-full bg-neutral-100 flex items-center justify-center overflow-hidden ${sizeClass}` }, !isLoaded && /* @__PURE__ */ import_react29.default.createElement(import_react30.HugeiconsIcon, { icon: import_core_free_icons11.Loading03Icon, size: 16, className: "animate-spin text-neutral-400 absolute" }), /* @__PURE__ */ import_react29.default.createElement(
1573
1725
  "img",
1574
1726
  {
1575
1727
  src,
@@ -1591,8 +1743,8 @@ var UniversalWalletPage = ({
1591
1743
  onDownloadPayId,
1592
1744
  onCopyAddress
1593
1745
  }) => {
1594
- const [selectedWallet, setSelectedWallet] = (0, import_react27.useState)(null);
1595
- const [localSearchQuery, setLocalSearchQuery] = (0, import_react27.useState)("");
1746
+ const [selectedWallet, setSelectedWallet] = (0, import_react29.useState)(null);
1747
+ const [localSearchQuery, setLocalSearchQuery] = (0, import_react29.useState)("");
1596
1748
  const filteredWallets = wallets.filter((wallet) => {
1597
1749
  const q = localSearchQuery.toLowerCase();
1598
1750
  return wallet.name.toLowerCase().includes(q) || wallet.currency.toLowerCase().includes(q) || wallet.network.toLowerCase().includes(q);
@@ -1605,7 +1757,7 @@ var UniversalWalletPage = ({
1605
1757
  }
1606
1758
  import_react_hot_toast6.default.success("Address copied to clipboard");
1607
1759
  };
1608
- return /* @__PURE__ */ import_react27.default.createElement("div", { className: "flex flex-col gap-6 animate-in max-w-5xl fade-in duration-300" }, /* @__PURE__ */ import_react27.default.createElement(ManagedToaster, null), !hideControls && /* @__PURE__ */ import_react27.default.createElement("div", { className: "flex flex-col sm:flex-row items-center justify-between gap-4 w-full" }, /* @__PURE__ */ import_react27.default.createElement("div", { className: "relative w-full sm:w-96" }, /* @__PURE__ */ import_react27.default.createElement("div", { className: "absolute inset-y-0 left-0 pl-4 flex items-center pointer-events-none" }, /* @__PURE__ */ import_react27.default.createElement(import_react28.HugeiconsIcon, { icon: import_core_free_icons9.Search01Icon, size: 16, className: "text-neutral-400" })), /* @__PURE__ */ import_react27.default.createElement(
1760
+ return /* @__PURE__ */ import_react29.default.createElement("div", { className: "flex flex-col gap-6 animate-in max-w-5xl fade-in duration-300" }, /* @__PURE__ */ import_react29.default.createElement(ManagedToaster, null), !hideControls && /* @__PURE__ */ import_react29.default.createElement("div", { className: "flex flex-col sm:flex-row items-center justify-between gap-4 w-full" }, /* @__PURE__ */ import_react29.default.createElement("div", { className: "relative w-full sm:w-96" }, /* @__PURE__ */ import_react29.default.createElement("div", { className: "absolute inset-y-0 left-0 pl-4 flex items-center pointer-events-none" }, /* @__PURE__ */ import_react29.default.createElement(import_react30.HugeiconsIcon, { icon: import_core_free_icons11.Search01Icon, size: 16, className: "text-neutral-400" })), /* @__PURE__ */ import_react29.default.createElement(
1609
1761
  "input",
1610
1762
  {
1611
1763
  type: "text",
@@ -1614,16 +1766,16 @@ var UniversalWalletPage = ({
1614
1766
  onChange: (e) => setLocalSearchQuery(e.target.value),
1615
1767
  className: "w-full pl-10 pr-4 py-2 bg-white rounded-full text-[13px] text-black placeholder-neutral-400 outline-none transition-all duration-300 focus:border-black"
1616
1768
  }
1617
- ))), /* @__PURE__ */ import_react27.default.createElement("div", { className: "flex flex-col gap-8 p-6 rounded-2xl bg-white w-full" }, /* @__PURE__ */ import_react27.default.createElement("div", { className: "flex flex-col sm:flex-row sm:items-start justify-between gap-4" }, /* @__PURE__ */ import_react27.default.createElement("div", null, /* @__PURE__ */ import_react27.default.createElement("h1", { className: "text-black text-xl mb-1 tracking-tight" }, headerTitle), headerDescription && /* @__PURE__ */ import_react27.default.createElement("p", { className: "text-xs text-neutral-500" }, headerDescription))), /* @__PURE__ */ import_react27.default.createElement("div", { className: "w-full overflow-hidden" }, isLoading ? /* @__PURE__ */ import_react27.default.createElement(PageSpinner3, null) : /* @__PURE__ */ import_react27.default.createElement("div", { className: "flex flex-col min-w-0" }, /* @__PURE__ */ import_react27.default.createElement("div", null, filteredWallets.length === 0 ? /* @__PURE__ */ import_react27.default.createElement("p", { className: "text-xs text-neutral-400 py-6 text-center" }, "No wallets found") : filteredWallets.map((wallet) => /* @__PURE__ */ import_react27.default.createElement(
1769
+ ))), /* @__PURE__ */ import_react29.default.createElement("div", { className: "flex flex-col gap-8 p-6 rounded-2xl bg-white w-full" }, /* @__PURE__ */ import_react29.default.createElement("div", { className: "flex flex-col sm:flex-row sm:items-start justify-between gap-4" }, /* @__PURE__ */ import_react29.default.createElement("div", null, /* @__PURE__ */ import_react29.default.createElement("h1", { className: "text-black text-xl mb-1 tracking-tight" }, headerTitle), headerDescription && /* @__PURE__ */ import_react29.default.createElement("p", { className: "text-xs text-neutral-500" }, headerDescription))), /* @__PURE__ */ import_react29.default.createElement("div", { className: "w-full overflow-hidden" }, isLoading ? /* @__PURE__ */ import_react29.default.createElement(PageSpinner3, null) : /* @__PURE__ */ import_react29.default.createElement("div", { className: "flex flex-col min-w-0" }, /* @__PURE__ */ import_react29.default.createElement("div", null, filteredWallets.length === 0 ? /* @__PURE__ */ import_react29.default.createElement("p", { className: "text-xs text-neutral-400 py-6 text-center" }, "No wallets found") : filteredWallets.map((wallet) => /* @__PURE__ */ import_react29.default.createElement(
1618
1770
  "div",
1619
1771
  {
1620
1772
  key: wallet.id,
1621
1773
  onClick: () => setSelectedWallet(wallet),
1622
1774
  className: "flex items-center justify-between py-4 hover:bg-neutral-50 transition-colors cursor-pointer group min-w-0 px-3 -mx-3 rounded-xl"
1623
1775
  },
1624
- /* @__PURE__ */ import_react27.default.createElement("div", { className: "flex items-center gap-4 min-w-0 flex-1" }, /* @__PURE__ */ import_react27.default.createElement(WalletLogo, { src: wallet.logoSrc, alt: wallet.name }), /* @__PURE__ */ import_react27.default.createElement("div", { className: "min-w-0 flex-1 flex flex-col gap-1" }, /* @__PURE__ */ import_react27.default.createElement("p", { className: "text-[13px] text-black truncate " }, wallet.name), /* @__PURE__ */ import_react27.default.createElement("p", { className: `text-[13px] text-neutral-500 truncate transition-all duration-300 ${hideBalanceAmounts ? "blur-sm opacity-40 select-none" : ""}` }, wallet.balance, " ", wallet.currency))),
1625
- /* @__PURE__ */ import_react27.default.createElement("div", { className: "shrink-0 flex flex-col items-end gap-1 text-right" }, /* @__PURE__ */ import_react27.default.createElement("span", { className: "text-[10px] tracking-wide text-neutral-600 bg-neutral-100 px-2.5 py-1 rounded-full " }, wallet.network))
1626
- )))))), selectedWallet && /* @__PURE__ */ import_react27.default.createElement("div", { className: "fixed inset-0 z-120 flex items-center justify-center p-4 pointer-events-auto" }, /* @__PURE__ */ import_react27.default.createElement("div", { className: "absolute inset-0 bg-black/40 ", onClick: () => setSelectedWallet(null) }), /* @__PURE__ */ import_react27.default.createElement("div", { className: "relative w-full max-w-sm bg-white rounded-2xl flex flex-col overflow-hidden shadow-2xl animate-in zoom-in-95 duration-200 max-h-[90vh]" }, /* @__PURE__ */ import_react27.default.createElement("div", { className: "flex items-center justify-between p-5 shrink-0 " }, /* @__PURE__ */ import_react27.default.createElement("h3", { className: "text-[15px] text-black tracking-tight" }, "Wallet Details"), /* @__PURE__ */ import_react27.default.createElement("button", { onClick: () => setSelectedWallet(null), className: "text-neutral-400 hover:text-black transition-colors outline-none" }, /* @__PURE__ */ import_react27.default.createElement(import_react28.HugeiconsIcon, { icon: import_core_free_icons9.CancelCircleIcon, size: 18 }))), /* @__PURE__ */ import_react27.default.createElement("div", { className: "flex-1 overflow-y-auto custom-scrollbar p-6 pt-6" }, /* @__PURE__ */ import_react27.default.createElement("div", { className: "flex flex-col items-center justify-center mb-6" }, /* @__PURE__ */ import_react27.default.createElement(WalletLogo, { src: selectedWallet.logoSrc, alt: selectedWallet.name, sizeClass: "w-14 h-14 mb-4" }), /* @__PURE__ */ import_react27.default.createElement("h2", { className: `text-2xl text-black mb-2 transition-all duration-300 ${hideBalanceAmounts ? "blur-[6px] opacity-40 select-none" : ""}` }, selectedWallet.balance, " ", selectedWallet.currency), /* @__PURE__ */ import_react27.default.createElement("span", { className: "text-[9px] tracking-widest text-neutral-500 px-4 py-1.5 rounded-full border border-neutral-200 uppercase mt-1 " }, selectedWallet.network, " NETWORK")), renderQrCode && /* @__PURE__ */ import_react27.default.createElement("div", { className: "w-full flex justify-center mb-6 mix-blend-multiply" }, renderQrCode(selectedWallet)), /* @__PURE__ */ import_react27.default.createElement("div", { className: "grid grid-cols-1 gap-y-6 gap-x-4 mb-10" }, /* @__PURE__ */ import_react27.default.createElement("div", null, /* @__PURE__ */ import_react27.default.createElement("span", { className: "text-[11px] tracking-[0.2em] text-neutral-400 block mb-2" }, "Wallet Address"), /* @__PURE__ */ import_react27.default.createElement("span", { className: "text-[13px] text-black break-all " }, selectedWallet.address)), /* @__PURE__ */ import_react27.default.createElement("div", null, /* @__PURE__ */ import_react27.default.createElement("span", { className: "text-[11px] tracking-[0.2em] text-neutral-400 block mb-2" }, "Wallet Name"), /* @__PURE__ */ import_react27.default.createElement("span", { className: "text-[13px] text-black" }, selectedWallet.name))), /* @__PURE__ */ import_react27.default.createElement("div", { className: "flex flex-col gap-3" }, /* @__PURE__ */ import_react27.default.createElement(
1776
+ /* @__PURE__ */ import_react29.default.createElement("div", { className: "flex items-center gap-4 min-w-0 flex-1" }, /* @__PURE__ */ import_react29.default.createElement(WalletLogo, { src: wallet.logoSrc, alt: wallet.name }), /* @__PURE__ */ import_react29.default.createElement("div", { className: "min-w-0 flex-1 flex flex-col gap-1" }, /* @__PURE__ */ import_react29.default.createElement("p", { className: "text-[13px] text-black truncate " }, wallet.name), /* @__PURE__ */ import_react29.default.createElement("p", { className: `text-[13px] text-neutral-500 truncate transition-all duration-300 ${hideBalanceAmounts ? "blur-sm opacity-40 select-none" : ""}` }, wallet.balance, " ", wallet.currency))),
1777
+ /* @__PURE__ */ import_react29.default.createElement("div", { className: "shrink-0 flex flex-col items-end gap-1 text-right" }, /* @__PURE__ */ import_react29.default.createElement("span", { className: "text-[10px] tracking-wide text-neutral-600 bg-neutral-100 px-2.5 py-1 rounded-full " }, wallet.network))
1778
+ )))))), selectedWallet && /* @__PURE__ */ import_react29.default.createElement("div", { className: "fixed inset-0 z-120 flex items-center justify-center p-4 pointer-events-auto" }, /* @__PURE__ */ import_react29.default.createElement("div", { className: "absolute inset-0 bg-black/40 ", onClick: () => setSelectedWallet(null) }), /* @__PURE__ */ import_react29.default.createElement("div", { className: "relative w-full max-w-sm bg-white rounded-2xl flex flex-col overflow-hidden shadow-2xl animate-in zoom-in-95 duration-200 max-h-[90vh]" }, /* @__PURE__ */ import_react29.default.createElement("div", { className: "flex items-center justify-between p-5 shrink-0 " }, /* @__PURE__ */ import_react29.default.createElement("h3", { className: "text-[15px] text-black tracking-tight" }, "Wallet Details"), /* @__PURE__ */ import_react29.default.createElement("button", { onClick: () => setSelectedWallet(null), className: "text-neutral-400 hover:text-black transition-colors outline-none" }, /* @__PURE__ */ import_react29.default.createElement(import_react30.HugeiconsIcon, { icon: import_core_free_icons11.CancelCircleIcon, size: 18 }))), /* @__PURE__ */ import_react29.default.createElement("div", { className: "flex-1 overflow-y-auto custom-scrollbar p-6 pt-6" }, /* @__PURE__ */ import_react29.default.createElement("div", { className: "flex flex-col items-center justify-center mb-6" }, /* @__PURE__ */ import_react29.default.createElement(WalletLogo, { src: selectedWallet.logoSrc, alt: selectedWallet.name, sizeClass: "w-14 h-14 mb-4" }), /* @__PURE__ */ import_react29.default.createElement("h2", { className: `text-2xl text-black mb-2 transition-all duration-300 ${hideBalanceAmounts ? "blur-[6px] opacity-40 select-none" : ""}` }, selectedWallet.balance, " ", selectedWallet.currency), /* @__PURE__ */ import_react29.default.createElement("span", { className: "text-[9px] tracking-widest text-neutral-500 px-4 py-1.5 rounded-full border border-neutral-200 uppercase mt-1 " }, selectedWallet.network, " NETWORK")), renderQrCode && /* @__PURE__ */ import_react29.default.createElement("div", { className: "w-full flex justify-center mb-6 mix-blend-multiply" }, renderQrCode(selectedWallet)), /* @__PURE__ */ import_react29.default.createElement("div", { className: "grid grid-cols-1 gap-y-6 gap-x-4 mb-10" }, /* @__PURE__ */ import_react29.default.createElement("div", null, /* @__PURE__ */ import_react29.default.createElement("span", { className: "text-[11px] tracking-[0.2em] text-neutral-400 block mb-2" }, "Wallet Address"), /* @__PURE__ */ import_react29.default.createElement("span", { className: "text-[13px] text-black break-all " }, selectedWallet.address)), /* @__PURE__ */ import_react29.default.createElement("div", null, /* @__PURE__ */ import_react29.default.createElement("span", { className: "text-[11px] tracking-[0.2em] text-neutral-400 block mb-2" }, "Wallet Name"), /* @__PURE__ */ import_react29.default.createElement("span", { className: "text-[13px] text-black" }, selectedWallet.name))), /* @__PURE__ */ import_react29.default.createElement("div", { className: "flex flex-col gap-3" }, /* @__PURE__ */ import_react29.default.createElement(
1627
1779
  ThreeDActionButton,
1628
1780
  {
1629
1781
  onClick: () => onDownloadPayId && onDownloadPayId(selectedWallet),
@@ -1631,7 +1783,7 @@ var UniversalWalletPage = ({
1631
1783
  className: "w-full py-3 text-[13px]"
1632
1784
  },
1633
1785
  "Generate Statement"
1634
- ), /* @__PURE__ */ import_react27.default.createElement(
1786
+ ), /* @__PURE__ */ import_react29.default.createElement(
1635
1787
  "button",
1636
1788
  {
1637
1789
  onClick: () => handleCopy(selectedWallet),
@@ -1644,53 +1796,12 @@ var UniversalWalletPage = ({
1644
1796
  // src/components/UniversalCardPage.tsx
1645
1797
  var import_react35 = __toESM(require("react"));
1646
1798
  var import_react36 = require("@hugeicons/react");
1647
- var import_core_free_icons13 = require("@hugeicons/core-free-icons");
1648
-
1649
- // src/components/ConfirmationDialog.tsx
1650
- var import_react29 = __toESM(require("react"));
1651
- var import_react30 = require("@hugeicons/react");
1652
- var import_core_free_icons10 = require("@hugeicons/core-free-icons");
1653
- var ConfirmationDialog = ({
1654
- isOpen,
1655
- title,
1656
- message,
1657
- confirmText = "Confirm",
1658
- cancelText = "Cancel",
1659
- isProcessing = false,
1660
- isDestructive = true,
1661
- onClose,
1662
- onConfirm
1663
- }) => {
1664
- if (!isOpen) return null;
1665
- return /* @__PURE__ */ import_react29.default.createElement("div", { className: "fixed inset-0 z-120 flex items-center justify-center p-4 pointer-events-auto" }, /* @__PURE__ */ import_react29.default.createElement(
1666
- "div",
1667
- {
1668
- className: "absolute inset-0 bg-black/40 ",
1669
- onClick: () => !isProcessing && onClose()
1670
- }
1671
- ), /* @__PURE__ */ import_react29.default.createElement("div", { className: "relative w-72 bg-white rounded-2xl flex flex-col items-center overflow-hidden shadow-2xl animate-in zoom-in-95 duration-200" }, /* @__PURE__ */ import_react29.default.createElement("div", { className: "p-6 pb-4 text-center w-full" }, /* @__PURE__ */ import_react29.default.createElement("h3", { className: "text-[17px] text-black tracking-tight mb-2" }, title), /* @__PURE__ */ import_react29.default.createElement("p", { className: "text-[12px] text-neutral-500 leading-relaxed px-2" }, message)), /* @__PURE__ */ import_react29.default.createElement("div", { className: "w-full flex" }, /* @__PURE__ */ import_react29.default.createElement(
1672
- "button",
1673
- {
1674
- onClick: onClose,
1675
- disabled: isProcessing,
1676
- className: "flex-1 py-4 text-[14px] text-neutral-500 hover:bg-neutral-50 transition-colors disabled:opacity-50 outline-none "
1677
- },
1678
- cancelText
1679
- ), /* @__PURE__ */ import_react29.default.createElement(
1680
- "button",
1681
- {
1682
- onClick: onConfirm,
1683
- disabled: isProcessing,
1684
- className: `flex-1 py-4 text-[13px] transition-colors disabled:opacity-50 flex justify-center items-center outline-none ${isDestructive ? "text-red-500 hover:bg-red-50" : "text-black hover:bg-neutral-50"}`
1685
- },
1686
- isProcessing ? /* @__PURE__ */ import_react29.default.createElement(import_react30.HugeiconsIcon, { icon: import_core_free_icons10.Loading03Icon, className: "animate-spin", size: 18 }) : confirmText
1687
- ))));
1688
- };
1799
+ var import_core_free_icons14 = require("@hugeicons/core-free-icons");
1689
1800
 
1690
1801
  // src/components/PinDialerBottomSheet.tsx
1691
1802
  var import_react31 = __toESM(require("react"));
1692
1803
  var import_react32 = require("@hugeicons/react");
1693
- var import_core_free_icons11 = require("@hugeicons/core-free-icons");
1804
+ var import_core_free_icons12 = require("@hugeicons/core-free-icons");
1694
1805
  var PinDialerBottomSheet = ({
1695
1806
  isOpen,
1696
1807
  title = "Action Required",
@@ -1733,14 +1844,14 @@ var PinDialerBottomSheet = ({
1733
1844
  },
1734
1845
  className: "text-neutral-400 hover:text-black transition-colors outline-none"
1735
1846
  },
1736
- /* @__PURE__ */ import_react31.default.createElement(import_react32.HugeiconsIcon, { icon: import_core_free_icons11.CancelCircleIcon, size: 20 })
1847
+ /* @__PURE__ */ import_react31.default.createElement(import_react32.HugeiconsIcon, { icon: import_core_free_icons12.CancelCircleIcon, size: 20 })
1737
1848
  )), /* @__PURE__ */ import_react31.default.createElement("div", { className: "flex flex-col px-6 pb-8 pt-2 relative" }, /* @__PURE__ */ import_react31.default.createElement("div", { className: "flex justify-center gap-4 mb-8" }, [0, 1, 2, 3].map((i) => /* @__PURE__ */ import_react31.default.createElement(
1738
1849
  "div",
1739
1850
  {
1740
1851
  key: i,
1741
1852
  className: `w-2 h-2 rounded-full transition-colors duration-200 ${pin.length > i ? "bg-black" : "bg-neutral-200"}`
1742
1853
  }
1743
- ))), isVerifying && /* @__PURE__ */ import_react31.default.createElement("div", { className: "absolute inset-0 bg-white/80 backdrop-blur-sm z-10 flex items-center justify-center rounded-b-2xl" }, /* @__PURE__ */ import_react31.default.createElement(import_react32.HugeiconsIcon, { icon: import_core_free_icons11.Loading03Icon, size: 28, className: "animate-spin text-black" })), /* @__PURE__ */ import_react31.default.createElement("div", { className: "grid grid-cols-3 gap-y-4 gap-x-6 max-w-60 mx-auto" }, [1, 2, 3, 4, 5, 6, 7, 8, 9].map((num) => /* @__PURE__ */ import_react31.default.createElement(
1854
+ ))), isVerifying && /* @__PURE__ */ import_react31.default.createElement("div", { className: "absolute inset-0 bg-white/80 backdrop-blur-sm z-10 flex items-center justify-center rounded-b-2xl" }, /* @__PURE__ */ import_react31.default.createElement(import_react32.HugeiconsIcon, { icon: import_core_free_icons12.Loading03Icon, size: 28, className: "animate-spin text-black" })), /* @__PURE__ */ import_react31.default.createElement("div", { className: "grid grid-cols-3 gap-y-4 gap-x-6 max-w-60 mx-auto" }, [1, 2, 3, 4, 5, 6, 7, 8, 9].map((num) => /* @__PURE__ */ import_react31.default.createElement(
1744
1855
  "button",
1745
1856
  {
1746
1857
  key: num,
@@ -1761,14 +1872,14 @@ var PinDialerBottomSheet = ({
1761
1872
  onClick: () => handlePinPress("del"),
1762
1873
  className: "w-14 h-14 rounded-full flex items-center justify-center text-neutral-400 hover:text-black hover:bg-neutral-50 transition-colors mx-auto outline-none active:scale-95"
1763
1874
  },
1764
- /* @__PURE__ */ import_react31.default.createElement(import_react32.HugeiconsIcon, { icon: import_core_free_icons11.LessThanIcon, size: 20 })
1875
+ /* @__PURE__ */ import_react31.default.createElement(import_react32.HugeiconsIcon, { icon: import_core_free_icons12.LessThanIcon, size: 20 })
1765
1876
  )))));
1766
1877
  };
1767
1878
 
1768
1879
  // src/components/CardAction.tsx
1769
1880
  var import_react33 = __toESM(require("react"));
1770
1881
  var import_react34 = require("@hugeicons/react");
1771
- var import_core_free_icons12 = require("@hugeicons/core-free-icons");
1882
+ var import_core_free_icons13 = require("@hugeicons/core-free-icons");
1772
1883
  var CardActionDialog = ({
1773
1884
  isOpen,
1774
1885
  card,
@@ -1785,13 +1896,13 @@ var CardActionDialog = ({
1785
1896
  className: "absolute inset-0 bg-black/40 animate-in fade-in duration-200",
1786
1897
  onClick: onClose
1787
1898
  }
1788
- ), /* @__PURE__ */ import_react33.default.createElement("div", { className: "relative w-full max-w-sm bg-white rounded-2xl flex flex-col overflow-hidden shadow-2xl animate-in zoom-in-95 duration-200" }, /* @__PURE__ */ import_react33.default.createElement("div", { className: "flex items-center justify-between p-5 shrink-0" }, /* @__PURE__ */ import_react33.default.createElement("div", { className: "flex items-center gap-2" }, /* @__PURE__ */ import_react33.default.createElement(import_react34.HugeiconsIcon, { icon: import_core_free_icons12.CreditCardIcon, size: 20, className: "text-black" }), /* @__PURE__ */ import_react33.default.createElement("h3", { className: "text-[16px] text-black font-medium tracking-tight" }, title)), /* @__PURE__ */ import_react33.default.createElement(
1899
+ ), /* @__PURE__ */ import_react33.default.createElement("div", { className: "relative w-full max-w-sm bg-white rounded-2xl flex flex-col overflow-hidden shadow-2xl animate-in zoom-in-95 duration-200" }, /* @__PURE__ */ import_react33.default.createElement("div", { className: "flex items-center justify-between p-5 shrink-0" }, /* @__PURE__ */ import_react33.default.createElement("div", { className: "flex items-center gap-2" }, /* @__PURE__ */ import_react33.default.createElement(import_react34.HugeiconsIcon, { icon: import_core_free_icons13.CreditCardIcon, size: 20, className: "text-black" }), /* @__PURE__ */ import_react33.default.createElement("h3", { className: "text-[16px] text-black font-medium tracking-tight" }, title)), /* @__PURE__ */ import_react33.default.createElement(
1789
1900
  "button",
1790
1901
  {
1791
1902
  onClick: onClose,
1792
1903
  className: "text-neutral-400 hover:text-black transition-colors outline-none"
1793
1904
  },
1794
- /* @__PURE__ */ import_react33.default.createElement(import_react34.HugeiconsIcon, { icon: import_core_free_icons12.CancelCircleIcon, size: 20 })
1905
+ /* @__PURE__ */ import_react33.default.createElement(import_react34.HugeiconsIcon, { icon: import_core_free_icons13.CancelCircleIcon, size: 20 })
1795
1906
  )), /* @__PURE__ */ import_react33.default.createElement("div", { className: "p-6 text-center" }, /* @__PURE__ */ import_react33.default.createElement("p", { className: "text-[13px] text-neutral-500 leading-relaxed mb-6" }, description), /* @__PURE__ */ import_react33.default.createElement(
1796
1907
  "button",
1797
1908
  {
@@ -1927,15 +2038,15 @@ var UniversalCardPage = ({
1927
2038
  transform: isFlipped ? "rotateY(180deg)" : "rotateY(0deg)"
1928
2039
  }
1929
2040
  },
1930
- !isBgLoaded && /* @__PURE__ */ import_react35.default.createElement("div", { className: "absolute inset-0 w-full h-full bg-white rounded-2xl flex items-center justify-center z-50 " }, /* @__PURE__ */ import_react35.default.createElement(import_react36.HugeiconsIcon, { icon: import_core_free_icons13.Loading03Icon, size: 28, className: "animate-spin text-black" })),
1931
- !isActivated && isBgLoaded && /* @__PURE__ */ import_react35.default.createElement("div", { className: "absolute inset-0 z-40 w-full h-full rounded-2xl backdrop-blur-md bg-white/20 flex flex-col items-center justify-center border border-white/30", style: { transform: "translateZ(1px)" } }, isUnactivated && /* @__PURE__ */ import_react35.default.createElement(
2041
+ !isBgLoaded && /* @__PURE__ */ import_react35.default.createElement("div", { className: "absolute inset-0 w-full h-full bg-white rounded-2xl flex items-center justify-center z-50 " }, /* @__PURE__ */ import_react35.default.createElement(import_react36.HugeiconsIcon, { icon: import_core_free_icons14.Loading03Icon, size: 28, className: "animate-spin text-black" })),
2042
+ !isActivated && isBgLoaded && /* @__PURE__ */ import_react35.default.createElement("div", { className: "absolute inset-0 z-40 w-full h-full rounded-2xl backdrop-blur-sm bg-white/20 flex flex-col items-center justify-center border border-white/30", style: { transform: "translateZ(1px)" } }, isUnactivated && /* @__PURE__ */ import_react35.default.createElement(
1932
2043
  "button",
1933
2044
  {
1934
2045
  onClick: (e) => {
1935
2046
  e.stopPropagation();
1936
2047
  handleOverlayActionClick("ACTIVATE");
1937
2048
  },
1938
- className: "px-6 py-2.5 bg-black text-white text-[12px] font-medium rounded-full hover:bg-neutral-800 transition-all outline-none active:scale-95"
2049
+ className: "px-6 py-2.5 bg-white/35 text-black text-[12px] font-medium rounded-full transition-all outline-none active:scale-95"
1939
2050
  },
1940
2051
  "Activate Card"
1941
2052
  ), isDead && /* @__PURE__ */ import_react35.default.createElement(
@@ -1945,7 +2056,7 @@ var UniversalCardPage = ({
1945
2056
  e.stopPropagation();
1946
2057
  handleOverlayActionClick("CREATE");
1947
2058
  },
1948
- className: "px-6 py-2.5 bg-black text-white text-[12px] font-medium rounded-full hover:bg-neutral-800 transition-all outline-none active:scale-95"
2059
+ className: "px-6 py-2.5 bg-white/35 text-black text-[12px] font-medium rounded-full transition-all outline-none active:scale-95"
1949
2060
  },
1950
2061
  "Create Card"
1951
2062
  ), isFrozen && /* @__PURE__ */ import_react35.default.createElement(
@@ -1956,9 +2067,9 @@ var UniversalCardPage = ({
1956
2067
  handleOverlayUnfreeze();
1957
2068
  },
1958
2069
  disabled: isOverlayActionLoading,
1959
- className: "px-6 py-2.5 bg-white text-black text-[12px] font-medium rounded-full hover:bg-neutral-100 transition-all outline-none active:scale-95 flex items-center gap-2 disabled:opacity-80"
2070
+ className: "px-6 py-2.5 bg-white/35 text-black text-[12px] font-medium rounded-full transition-all outline-none active:scale-95 flex items-center gap-2 disabled:opacity-80"
1960
2071
  },
1961
- isOverlayActionLoading ? /* @__PURE__ */ import_react35.default.createElement(import_react36.HugeiconsIcon, { icon: import_core_free_icons13.Loading03Icon, size: 16, className: "animate-spin" }) : "Unfreeze Card"
2072
+ isOverlayActionLoading ? /* @__PURE__ */ import_react35.default.createElement(import_react36.HugeiconsIcon, { icon: import_core_free_icons14.Loading03Icon, size: 16, className: "animate-spin" }) : "Unfreeze Card"
1962
2073
  )),
1963
2074
  /* @__PURE__ */ import_react35.default.createElement(
1964
2075
  "div",
@@ -2011,7 +2122,7 @@ var UniversalCardPage = ({
2011
2122
  )), /* @__PURE__ */ import_react35.default.createElement("p", { className: "text-xs text-neutral-400 mb-6 mt-1" }, isActivated ? "Tap to flip card" : "Action Required"), /* @__PURE__ */ import_react35.default.createElement("div", { className: "w-full flex flex-col gap-4" }, /* @__PURE__ */ import_react35.default.createElement("div", { className: "w-full bg-white rounded-2xl overflow-hidden" }, /* @__PURE__ */ import_react35.default.createElement(
2012
2123
  MenuRow,
2013
2124
  {
2014
- icon: import_core_free_icons13.ViewOffSlashIcon,
2125
+ icon: import_core_free_icons14.ViewOffSlashIcon,
2015
2126
  title: "Reveal Information",
2016
2127
  subtitle: "Show card informations",
2017
2128
  onClick: handleToggleReveal,
@@ -2023,7 +2134,7 @@ var UniversalCardPage = ({
2023
2134
  ), /* @__PURE__ */ import_react35.default.createElement(
2024
2135
  MenuRow,
2025
2136
  {
2026
- icon: import_core_free_icons13.SnowIcon,
2137
+ icon: import_core_free_icons14.SnowIcon,
2027
2138
  title: "Freeze",
2028
2139
  subtitle: "Freeze & Unfreeze card",
2029
2140
  onClick: handleToggleFreeze,
@@ -2035,7 +2146,7 @@ var UniversalCardPage = ({
2035
2146
  ), /* @__PURE__ */ import_react35.default.createElement(
2036
2147
  MenuRow,
2037
2148
  {
2038
- icon: import_core_free_icons13.Dollar02Icon,
2149
+ icon: import_core_free_icons14.Dollar02Icon,
2039
2150
  title: "Set Limits",
2040
2151
  subtitle: "Set card limits",
2041
2152
  onClick: () => {
@@ -2047,7 +2158,7 @@ var UniversalCardPage = ({
2047
2158
  )), /* @__PURE__ */ import_react35.default.createElement("div", { className: "w-full bg-white rounded-2xl overflow-hidden" }, /* @__PURE__ */ import_react35.default.createElement(
2048
2159
  MenuRow,
2049
2160
  {
2050
- icon: import_core_free_icons13.Delete02Icon,
2161
+ icon: import_core_free_icons14.Delete02Icon,
2051
2162
  title: "Delete card",
2052
2163
  subtitle: "Permanently delete card",
2053
2164
  onClick: () => {
@@ -2111,13 +2222,13 @@ var MenuRow = ({
2111
2222
  },
2112
2223
  /* @__PURE__ */ import_react35.default.createElement("div", { className: "w-9 h-9 rounded-full border border-neutral-200 flex items-center justify-center shrink-0 mr-4" }, /* @__PURE__ */ import_react35.default.createElement(import_react36.HugeiconsIcon, { icon, size: 16, className: iconColor })),
2113
2224
  /* @__PURE__ */ import_react35.default.createElement("div", { className: "flex-1 min-w-0" }, /* @__PURE__ */ import_react35.default.createElement("p", { className: `text-[13px] truncate ${titleColor}` }, title), /* @__PURE__ */ import_react35.default.createElement("p", { className: "text-[11px] text-neutral-500 truncate" }, subtitle)),
2114
- isToggle ? /* @__PURE__ */ import_react35.default.createElement("div", { className: `relative w-11 h-6 rounded-full transition-colors duration-300 ml-2 shrink-0 ${toggleState ? "bg-black" : "bg-neutral-200"} ${disabled ? "opacity-50" : ""}` }, /* @__PURE__ */ import_react35.default.createElement("div", { className: `absolute top-1 left-1 w-4 h-4 rounded-full bg-white shadow-sm transition-transform duration-300 flex items-center justify-center ${toggleState ? "translate-x-5" : "translate-x-0"}` }, toggleLoading && /* @__PURE__ */ import_react35.default.createElement(import_react36.HugeiconsIcon, { icon: import_core_free_icons13.Loading03Icon, size: 10, className: "animate-spin text-black" }))) : /* @__PURE__ */ import_react35.default.createElement(import_react36.HugeiconsIcon, { icon: import_core_free_icons13.ArrowRight01Icon, size: 18, className: "text-neutral-400 shrink-0 ml-2" })
2225
+ isToggle ? /* @__PURE__ */ import_react35.default.createElement("div", { className: `relative w-11 h-6 rounded-full transition-colors duration-300 ml-2 shrink-0 ${toggleState ? "bg-black" : "bg-neutral-200"} ${disabled ? "opacity-50" : ""}` }, /* @__PURE__ */ import_react35.default.createElement("div", { className: `absolute top-1 left-1 w-4 h-4 rounded-full bg-white shadow-sm transition-transform duration-300 flex items-center justify-center ${toggleState ? "translate-x-5" : "translate-x-0"}` }, toggleLoading && /* @__PURE__ */ import_react35.default.createElement(import_react36.HugeiconsIcon, { icon: import_core_free_icons14.Loading03Icon, size: 10, className: "animate-spin text-black" }))) : /* @__PURE__ */ import_react35.default.createElement(import_react36.HugeiconsIcon, { icon: import_core_free_icons14.ArrowRight01Icon, size: 18, className: "text-neutral-400 shrink-0 ml-2" })
2115
2226
  );
2116
2227
 
2117
2228
  // src/components/UniversalProfilePage.tsx
2118
2229
  var import_react37 = __toESM(require("react"));
2119
2230
  var import_react38 = require("@hugeicons/react");
2120
- var import_core_free_icons14 = require("@hugeicons/core-free-icons");
2231
+ var import_core_free_icons15 = require("@hugeicons/core-free-icons");
2121
2232
  var UniversalProfilePage = ({
2122
2233
  avatarSrc,
2123
2234
  roleName,
@@ -2145,7 +2256,7 @@ var UniversalProfilePage = ({
2145
2256
  setShowLogoutDialog(false);
2146
2257
  }
2147
2258
  };
2148
- return /* @__PURE__ */ import_react37.default.createElement("div", { className: "w-full max-w-md mx-auto flex flex-col items-center animate-in fade-in duration-300 pb-12" }, /* @__PURE__ */ import_react37.default.createElement("div", { className: "pt-8 pb-4 flex flex-col items-center" }, /* @__PURE__ */ import_react37.default.createElement("div", { className: "w-22 h-22 rounded-full bg-white p-1 mb-4 flex items-center justify-center" }, /* @__PURE__ */ import_react37.default.createElement("div", { className: "relative w-full h-full rounded-full overflow-hidden bg-neutral-100 flex items-center justify-center" }, avatarSrc ? /* @__PURE__ */ import_react37.default.createElement(import_react37.default.Fragment, null, !isAvatarLoaded && /* @__PURE__ */ import_react37.default.createElement("div", { className: "absolute inset-0 flex items-center justify-center z-10 bg-neutral-100" }, /* @__PURE__ */ import_react37.default.createElement(import_react38.HugeiconsIcon, { icon: import_core_free_icons14.Loading03Icon, size: 24, className: "animate-spin text-black" })), /* @__PURE__ */ import_react37.default.createElement(
2259
+ return /* @__PURE__ */ import_react37.default.createElement("div", { className: "w-full max-w-md mx-auto flex flex-col items-center animate-in fade-in duration-300 pb-12" }, /* @__PURE__ */ import_react37.default.createElement("div", { className: "pt-8 pb-4 flex flex-col items-center" }, /* @__PURE__ */ import_react37.default.createElement("div", { className: "w-22 h-22 rounded-full bg-white p-1 mb-4 flex items-center justify-center" }, /* @__PURE__ */ import_react37.default.createElement("div", { className: "relative w-full h-full rounded-full overflow-hidden bg-neutral-100 flex items-center justify-center" }, avatarSrc ? /* @__PURE__ */ import_react37.default.createElement(import_react37.default.Fragment, null, !isAvatarLoaded && /* @__PURE__ */ import_react37.default.createElement("div", { className: "absolute inset-0 flex items-center justify-center z-10 bg-neutral-100" }, /* @__PURE__ */ import_react37.default.createElement(import_react38.HugeiconsIcon, { icon: import_core_free_icons15.Loading03Icon, size: 24, className: "animate-spin text-black" })), /* @__PURE__ */ import_react37.default.createElement(
2149
2260
  "img",
2150
2261
  {
2151
2262
  src: avatarSrc,
@@ -2153,10 +2264,10 @@ var UniversalProfilePage = ({
2153
2264
  onLoad: () => setIsAvatarLoaded(true),
2154
2265
  className: `w-full h-full object-cover transition-opacity duration-300 ${isAvatarLoaded ? "opacity-100" : "opacity-0"}`
2155
2266
  }
2156
- )) : /* @__PURE__ */ import_react37.default.createElement(import_react38.HugeiconsIcon, { icon: import_core_free_icons14.UserIcon, size: 40, className: "text-neutral-300" }))), /* @__PURE__ */ import_react37.default.createElement("div", { className: "bg-white rounded-full px-4 py-2 flex items-center justify-center gap-2 mb-3" }, /* @__PURE__ */ import_react37.default.createElement("span", { className: "text-[12px] text-black" }, roleName), /* @__PURE__ */ import_react37.default.createElement(import_react38.HugeiconsIcon, { icon: import_core_free_icons14.CrownIcon, size: 14, className: "text-neutral-400" })), /* @__PURE__ */ import_react37.default.createElement("span", { className: "text-[12px] text-neutral-500" }, memberSince)), /* @__PURE__ */ import_react37.default.createElement("div", { className: "w-full flex flex-col gap-4 mt-2" }, /* @__PURE__ */ import_react37.default.createElement("div", { className: "w-full bg-white rounded-2xl overflow-hidden" }, /* @__PURE__ */ import_react37.default.createElement(
2267
+ )) : /* @__PURE__ */ import_react37.default.createElement(import_react38.HugeiconsIcon, { icon: import_core_free_icons15.UserIcon, size: 40, className: "text-neutral-300" }))), /* @__PURE__ */ import_react37.default.createElement("div", { className: "bg-white rounded-full px-4 py-2 flex items-center justify-center gap-2 mb-3" }, /* @__PURE__ */ import_react37.default.createElement("span", { className: "text-[12px] text-black" }, roleName), /* @__PURE__ */ import_react37.default.createElement(import_react38.HugeiconsIcon, { icon: import_core_free_icons15.CrownIcon, size: 14, className: "text-neutral-400" })), /* @__PURE__ */ import_react37.default.createElement("span", { className: "text-[12px] text-neutral-500" }, memberSince)), /* @__PURE__ */ import_react37.default.createElement("div", { className: "w-full flex flex-col gap-4 mt-2" }, /* @__PURE__ */ import_react37.default.createElement("div", { className: "w-full bg-white rounded-2xl overflow-hidden" }, /* @__PURE__ */ import_react37.default.createElement(
2157
2268
  MenuRow2,
2158
2269
  {
2159
- icon: import_core_free_icons14.UserIcon,
2270
+ icon: import_core_free_icons15.UserIcon,
2160
2271
  title: "Account",
2161
2272
  subtitle: "Your account details",
2162
2273
  onClick: onAccountTap
@@ -2164,7 +2275,7 @@ var UniversalProfilePage = ({
2164
2275
  ), /* @__PURE__ */ import_react37.default.createElement(
2165
2276
  MenuRow2,
2166
2277
  {
2167
- icon: import_core_free_icons14.LockKeyIcon,
2278
+ icon: import_core_free_icons15.LockKeyIcon,
2168
2279
  title: "Security",
2169
2280
  subtitle: "2FA & authentication",
2170
2281
  onClick: onSecurityTap
@@ -2172,7 +2283,7 @@ var UniversalProfilePage = ({
2172
2283
  ), /* @__PURE__ */ import_react37.default.createElement(
2173
2284
  MenuRow2,
2174
2285
  {
2175
- icon: import_core_free_icons14.ShieldUserIcon,
2286
+ icon: import_core_free_icons15.ShieldUserIcon,
2176
2287
  title: "Web3 Profile",
2177
2288
  subtitle: "Manage web3 profile",
2178
2289
  onClick: onDefiTap
@@ -2180,7 +2291,7 @@ var UniversalProfilePage = ({
2180
2291
  ), /* @__PURE__ */ import_react37.default.createElement(
2181
2292
  MenuRow2,
2182
2293
  {
2183
- icon: import_core_free_icons14.MessageQuestionIcon,
2294
+ icon: import_core_free_icons15.MessageQuestionIcon,
2184
2295
  title: "Get Help",
2185
2296
  subtitle: "24/7 Support",
2186
2297
  onClick: onHelpTap,
@@ -2189,7 +2300,7 @@ var UniversalProfilePage = ({
2189
2300
  )), /* @__PURE__ */ import_react37.default.createElement("div", { className: "w-full bg-white rounded-2xl overflow-hidden" }, /* @__PURE__ */ import_react37.default.createElement(
2190
2301
  MenuRow2,
2191
2302
  {
2192
- icon: import_core_free_icons14.UserIdVerificationIcon,
2303
+ icon: import_core_free_icons15.UserIdVerificationIcon,
2193
2304
  title: "Verifications",
2194
2305
  subtitle: "Account Verifications",
2195
2306
  onClick: onVerificationsTap
@@ -2197,7 +2308,7 @@ var UniversalProfilePage = ({
2197
2308
  ), /* @__PURE__ */ import_react37.default.createElement(
2198
2309
  MenuRow2,
2199
2310
  {
2200
- icon: import_core_free_icons14.FileDownloadIcon,
2311
+ icon: import_core_free_icons15.FileDownloadIcon,
2201
2312
  title: "Export Account",
2202
2313
  subtitle: "Transfer your account",
2203
2314
  onClick: onExportTap
@@ -2205,7 +2316,7 @@ var UniversalProfilePage = ({
2205
2316
  ), /* @__PURE__ */ import_react37.default.createElement(
2206
2317
  MenuRow2,
2207
2318
  {
2208
- icon: import_core_free_icons14.LogoutCircle02Icon,
2319
+ icon: import_core_free_icons15.LogoutCircle02Icon,
2209
2320
  title: "LogOut",
2210
2321
  subtitle: "End your session",
2211
2322
  onClick: () => setShowLogoutDialog(true),
@@ -2214,7 +2325,7 @@ var UniversalProfilePage = ({
2214
2325
  )), /* @__PURE__ */ import_react37.default.createElement("div", { className: "w-full bg-white rounded-2xl overflow-hidden mb-4" }, /* @__PURE__ */ import_react37.default.createElement(
2215
2326
  MenuRow2,
2216
2327
  {
2217
- icon: import_core_free_icons14.UserRemove01Icon,
2328
+ icon: import_core_free_icons15.UserRemove01Icon,
2218
2329
  title: "Delete Account",
2219
2330
  subtitle: "Remove account",
2220
2331
  onClick: onDeleteTap,
@@ -2242,7 +2353,7 @@ var MenuRow2 = ({ icon, title, subtitle, onClick, iconColor = "text-black", titl
2242
2353
  },
2243
2354
  /* @__PURE__ */ import_react37.default.createElement("div", { className: "w-9 h-9 rounded-full border border-neutral-200 flex items-center justify-center shrink-0 mr-4" }, /* @__PURE__ */ import_react37.default.createElement(import_react38.HugeiconsIcon, { icon, size: 16, className: iconColor })),
2244
2355
  /* @__PURE__ */ import_react37.default.createElement("div", { className: "flex-1 min-w-0" }, /* @__PURE__ */ import_react37.default.createElement("p", { className: `text-[13px] truncate ${titleColor}` }, title), /* @__PURE__ */ import_react37.default.createElement("p", { className: "text-[11px] text-neutral-500 truncate" }, subtitle)),
2245
- /* @__PURE__ */ import_react37.default.createElement(import_react38.HugeiconsIcon, { icon: import_core_free_icons14.ArrowRight01Icon, size: 18, className: "text-neutral-400 shrink-0 ml-2" })
2356
+ /* @__PURE__ */ import_react37.default.createElement(import_react38.HugeiconsIcon, { icon: import_core_free_icons15.ArrowRight01Icon, size: 18, className: "text-neutral-400 shrink-0 ml-2" })
2246
2357
  );
2247
2358
 
2248
2359
  // src/components/HeroSection.tsx
@@ -2533,7 +2644,7 @@ var AppBento2 = ({ tagline, headline, features }) => {
2533
2644
  var import_react43 = __toESM(require("react"));
2534
2645
  var import_image3 = __toESM(require("next/image"));
2535
2646
  var import_react44 = require("@hugeicons/react");
2536
- var import_core_free_icons15 = require("@hugeicons/core-free-icons");
2647
+ var import_core_free_icons16 = require("@hugeicons/core-free-icons");
2537
2648
  var FeatureCard = ({ feature, bgImage }) => {
2538
2649
  const [isBgLoading, setIsBgLoading] = (0, import_react43.useState)(true);
2539
2650
  const [isFgLoading, setIsFgLoading] = (0, import_react43.useState)(!!feature.image);
@@ -2558,7 +2669,7 @@ var FeatureCard = ({ feature, bgImage }) => {
2558
2669
  backgroundImage: `url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E")`
2559
2670
  }
2560
2671
  }
2561
- ), isFgLoading && feature.image && /* @__PURE__ */ import_react43.default.createElement("div", { className: "absolute inset-0 flex items-center justify-center z-20 bg-neutral-50/50 backdrop-blur-sm transition-opacity duration-300" }, /* @__PURE__ */ import_react43.default.createElement(import_react44.HugeiconsIcon, { icon: import_core_free_icons15.Loading03Icon, size: 32, className: "animate-spin text-neutral-400" })), feature.image && /* @__PURE__ */ import_react43.default.createElement("div", { className: "absolute -bottom-6 -right-6 w-[85%] h-[85%] z-10 transition-transform duration-700 ease-out group-hover:-translate-x-2 group-hover:-translate-y-2" }, /* @__PURE__ */ import_react43.default.createElement(
2672
+ ), isFgLoading && feature.image && /* @__PURE__ */ import_react43.default.createElement("div", { className: "absolute inset-0 flex items-center justify-center z-20 bg-neutral-50/50 backdrop-blur-sm transition-opacity duration-300" }, /* @__PURE__ */ import_react43.default.createElement(import_react44.HugeiconsIcon, { icon: import_core_free_icons16.Loading03Icon, size: 32, className: "animate-spin text-neutral-400" })), feature.image && /* @__PURE__ */ import_react43.default.createElement("div", { className: "absolute -bottom-6 -right-6 w-[85%] h-[85%] z-10 transition-transform duration-700 ease-out group-hover:-translate-x-2 group-hover:-translate-y-2" }, /* @__PURE__ */ import_react43.default.createElement(
2562
2673
  import_image3.default,
2563
2674
  {
2564
2675
  src: feature.image,
@@ -2608,7 +2719,7 @@ var FeatureScroll = ({ tagline, headline, features }) => {
2608
2719
  className: "p-4 border border-neutral-200 rounded-full text-neutral-500 hover:text-black hover:border-black disabled:opacity-30 disabled:hover:border-neutral-200 disabled:hover:text-neutral-500 disabled:cursor-not-allowed transition-all outline-none",
2609
2720
  "aria-label": "Previous feature"
2610
2721
  },
2611
- /* @__PURE__ */ import_react43.default.createElement(import_react44.HugeiconsIcon, { icon: import_core_free_icons15.ArrowLeft01Icon, size: 20 })
2722
+ /* @__PURE__ */ import_react43.default.createElement(import_react44.HugeiconsIcon, { icon: import_core_free_icons16.ArrowLeft01Icon, size: 20 })
2612
2723
  ), /* @__PURE__ */ import_react43.default.createElement(
2613
2724
  "button",
2614
2725
  {
@@ -2617,7 +2728,7 @@ var FeatureScroll = ({ tagline, headline, features }) => {
2617
2728
  className: "p-4 border border-neutral-200 rounded-full text-neutral-500 hover:text-black hover:border-black disabled:opacity-30 disabled:hover:border-neutral-200 disabled:hover:text-neutral-500 disabled:cursor-not-allowed transition-all outline-none",
2618
2729
  "aria-label": "Next feature"
2619
2730
  },
2620
- /* @__PURE__ */ import_react43.default.createElement(import_react44.HugeiconsIcon, { icon: import_core_free_icons15.ArrowRight01Icon, size: 20 })
2731
+ /* @__PURE__ */ import_react43.default.createElement(import_react44.HugeiconsIcon, { icon: import_core_free_icons16.ArrowRight01Icon, size: 20 })
2621
2732
  ))), /* @__PURE__ */ import_react43.default.createElement(
2622
2733
  "div",
2623
2734
  {
@@ -2633,7 +2744,7 @@ var FeatureScroll = ({ tagline, headline, features }) => {
2633
2744
  disabled: !canScrollLeft,
2634
2745
  className: "p-4 border border-neutral-200 rounded-full text-neutral-500 hover:text-black hover:border-black disabled:opacity-30 transition-all outline-none"
2635
2746
  },
2636
- /* @__PURE__ */ import_react43.default.createElement(import_react44.HugeiconsIcon, { icon: import_core_free_icons15.ArrowLeft01Icon, size: 20 })
2747
+ /* @__PURE__ */ import_react43.default.createElement(import_react44.HugeiconsIcon, { icon: import_core_free_icons16.ArrowLeft01Icon, size: 20 })
2637
2748
  ), /* @__PURE__ */ import_react43.default.createElement(
2638
2749
  "button",
2639
2750
  {
@@ -2641,7 +2752,7 @@ var FeatureScroll = ({ tagline, headline, features }) => {
2641
2752
  disabled: !canScrollRight,
2642
2753
  className: "p-4 border border-neutral-200 rounded-full text-neutral-500 hover:text-black hover:border-black disabled:opacity-30 transition-all outline-none"
2643
2754
  },
2644
- /* @__PURE__ */ import_react43.default.createElement(import_react44.HugeiconsIcon, { icon: import_core_free_icons15.ArrowRight01Icon, size: 20 })
2755
+ /* @__PURE__ */ import_react43.default.createElement(import_react44.HugeiconsIcon, { icon: import_core_free_icons16.ArrowRight01Icon, size: 20 })
2645
2756
  ))));
2646
2757
  };
2647
2758
 
@@ -2872,7 +2983,7 @@ var ManagedPricingBlock = ({
2872
2983
  var import_react51 = __toESM(require("react"));
2873
2984
  var import_image5 = __toESM(require("next/image"));
2874
2985
  var import_react52 = require("@hugeicons/react");
2875
- var import_core_free_icons16 = require("@hugeicons/core-free-icons");
2986
+ var import_core_free_icons17 = require("@hugeicons/core-free-icons");
2876
2987
  var MemberSocialLink = ({ href, icon, label, name }) => /* @__PURE__ */ import_react51.default.createElement(
2877
2988
  "a",
2878
2989
  {
@@ -2913,7 +3024,7 @@ var ManagedBoardBlock = ({
2913
3024
  MemberSocialLink,
2914
3025
  {
2915
3026
  href: `https://x.com/${member.twitterHandle}`,
2916
- icon: import_core_free_icons16.TwitterIcon,
3027
+ icon: import_core_free_icons17.TwitterIcon,
2917
3028
  label: "X",
2918
3029
  name: member.name
2919
3030
  }
@@ -2921,7 +3032,7 @@ var ManagedBoardBlock = ({
2921
3032
  MemberSocialLink,
2922
3033
  {
2923
3034
  href: member.linkedinHandle,
2924
- icon: import_core_free_icons16.LinkedinIcon,
3035
+ icon: import_core_free_icons17.LinkedinIcon,
2925
3036
  label: "LinkedIn",
2926
3037
  name: member.name
2927
3038
  }
@@ -3010,7 +3121,7 @@ var import_react55 = __toESM(require("react"));
3010
3121
  var import_link7 = __toESM(require("next/link"));
3011
3122
  var import_image7 = __toESM(require("next/image"));
3012
3123
  var import_react56 = require("@hugeicons/react");
3013
- var import_core_free_icons17 = require("@hugeicons/core-free-icons");
3124
+ var import_core_free_icons18 = require("@hugeicons/core-free-icons");
3014
3125
  var useScrollAnimation = () => {
3015
3126
  const elementRef = (0, import_react55.useRef)(null);
3016
3127
  (0, import_react55.useEffect)(() => {
@@ -3091,7 +3202,7 @@ var PortfolioHero = ({
3091
3202
  className: "w-full sm:w-auto inline-flex items-center justify-center gap-3 text-[11px] tracking-[0.2em] rounded-full px-8 py-3.5 bg-neutral-200 transition-colors text-black hover:bg-neutral-200 outline-none"
3092
3203
  },
3093
3204
  secondaryCtaText,
3094
- /* @__PURE__ */ import_react55.default.createElement(import_react56.HugeiconsIcon, { icon: import_core_free_icons17.ArrowRight01Icon, size: 16 })
3205
+ /* @__PURE__ */ import_react55.default.createElement(import_react56.HugeiconsIcon, { icon: import_core_free_icons18.ArrowRight01Icon, size: 16 })
3095
3206
  ))
3096
3207
  ));
3097
3208
  };
@@ -3100,7 +3211,7 @@ var PortfolioHero = ({
3100
3211
  var import_react57 = __toESM(require("react"));
3101
3212
  var import_image8 = __toESM(require("next/image"));
3102
3213
  var import_react58 = require("@hugeicons/react");
3103
- var import_core_free_icons18 = require("@hugeicons/core-free-icons");
3214
+ var import_core_free_icons19 = require("@hugeicons/core-free-icons");
3104
3215
  var GifFeatureCard = ({
3105
3216
  gifSrc,
3106
3217
  title,
@@ -3112,7 +3223,7 @@ var GifFeatureCard = ({
3112
3223
  return /* @__PURE__ */ import_react57.default.createElement("div", { className: `relative w-full bg-black overflow-hidden shadow-2xl ${className}` }, isLoading && /* @__PURE__ */ import_react57.default.createElement("div", { className: "absolute inset-0 flex items-center justify-center z-20 bg-black" }, /* @__PURE__ */ import_react57.default.createElement(
3113
3224
  import_react58.HugeiconsIcon,
3114
3225
  {
3115
- icon: import_core_free_icons18.Loading03Icon,
3226
+ icon: import_core_free_icons19.Loading03Icon,
3116
3227
  size: 32,
3117
3228
  className: "animate-spin text-white"
3118
3229
  }
@@ -3194,10 +3305,10 @@ var MedicalFeatureStatsBlock = ({
3194
3305
  var import_react60 = __toESM(require("react"));
3195
3306
  var import_image10 = __toESM(require("next/image"));
3196
3307
  var import_react61 = require("@hugeicons/react");
3197
- var import_core_free_icons19 = require("@hugeicons/core-free-icons");
3308
+ var import_core_free_icons20 = require("@hugeicons/core-free-icons");
3198
3309
  var ImageWithLoader = ({ src, alt, className, sizes, priority = false }) => {
3199
3310
  const [isLoading, setIsLoading] = (0, import_react60.useState)(true);
3200
- return /* @__PURE__ */ import_react60.default.createElement("div", { className: `absolute inset-0 bg-neutral-800 ${className}` }, isLoading && /* @__PURE__ */ import_react60.default.createElement("div", { className: "absolute inset-0 flex items-center justify-center z-20 bg-neutral-800/50 backdrop-blur-md transition-opacity duration-300" }, /* @__PURE__ */ import_react60.default.createElement(import_react61.HugeiconsIcon, { icon: import_core_free_icons19.Loading03Icon, size: 24, className: "animate-spin text-white/50" })), /* @__PURE__ */ import_react60.default.createElement(
3311
+ return /* @__PURE__ */ import_react60.default.createElement("div", { className: `absolute inset-0 bg-neutral-800 ${className}` }, isLoading && /* @__PURE__ */ import_react60.default.createElement("div", { className: "absolute inset-0 flex items-center justify-center z-20 bg-neutral-800/50 backdrop-blur-md transition-opacity duration-300" }, /* @__PURE__ */ import_react60.default.createElement(import_react61.HugeiconsIcon, { icon: import_core_free_icons20.Loading03Icon, size: 24, className: "animate-spin text-white/50" })), /* @__PURE__ */ import_react60.default.createElement(
3201
3312
  import_image10.default,
3202
3313
  {
3203
3314
  src,
@@ -3290,10 +3401,10 @@ var ConsultantShowcase = ({
3290
3401
  var import_react62 = __toESM(require("react"));
3291
3402
  var import_image11 = __toESM(require("next/image"));
3292
3403
  var import_react63 = require("@hugeicons/react");
3293
- var import_core_free_icons20 = require("@hugeicons/core-free-icons");
3404
+ var import_core_free_icons21 = require("@hugeicons/core-free-icons");
3294
3405
  var ImageWithLoader2 = ({ src, alt, className, sizes }) => {
3295
3406
  const [isLoading, setIsLoading] = (0, import_react62.useState)(true);
3296
- return /* @__PURE__ */ import_react62.default.createElement("div", { className: `relative overflow-hidden bg-neutral-100 ${className}` }, isLoading && /* @__PURE__ */ import_react62.default.createElement("div", { className: "absolute inset-0 flex items-center justify-center z-20 bg-neutral-100/50 backdrop-blur-sm transition-opacity duration-300" }, /* @__PURE__ */ import_react62.default.createElement(import_react63.HugeiconsIcon, { icon: import_core_free_icons20.Loading03Icon, size: 24, className: "animate-spin text-neutral-400" })), /* @__PURE__ */ import_react62.default.createElement(
3407
+ return /* @__PURE__ */ import_react62.default.createElement("div", { className: `relative overflow-hidden bg-neutral-100 ${className}` }, isLoading && /* @__PURE__ */ import_react62.default.createElement("div", { className: "absolute inset-0 flex items-center justify-center z-20 bg-neutral-100/50 backdrop-blur-sm transition-opacity duration-300" }, /* @__PURE__ */ import_react62.default.createElement(import_react63.HugeiconsIcon, { icon: import_core_free_icons21.Loading03Icon, size: 24, className: "animate-spin text-neutral-400" })), /* @__PURE__ */ import_react62.default.createElement(
3297
3408
  import_image11.default,
3298
3409
  {
3299
3410
  src,