@retinalabsllc/zairusjs 9.0.4 → 9.0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +46 -50
- package/dist/index.mjs +46 -50
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -670,34 +670,31 @@ var import_react10 = require("@hugeicons/react");
|
|
|
670
670
|
var MobileNav = ({ items }) => {
|
|
671
671
|
const pathname = (0, import_navigation3.usePathname)();
|
|
672
672
|
if (!items || items.length === 0) return null;
|
|
673
|
-
return (
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
|
|
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/80 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(
|
|
676
|
+
import_link4.default,
|
|
677
|
+
{
|
|
678
|
+
key: item.label,
|
|
679
|
+
href: item.href,
|
|
680
|
+
className: "flex flex-col items-center justify-center gap-1 min-w-14 transition-transform active:scale-95 outline-none"
|
|
681
|
+
},
|
|
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,
|
|
679
684
|
{
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
|
|
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 font-medium ${isActive ? "text-black" : "text-neutral-400"}`
|
|
683
693
|
},
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
size: 24
|
|
689
|
-
}
|
|
690
|
-
)),
|
|
691
|
-
/* @__PURE__ */ import_react9.default.createElement(
|
|
692
|
-
"span",
|
|
693
|
-
{
|
|
694
|
-
className: `text-[10px] tracking-wide transition-colors duration-300 font-medium ${isActive ? "text-black" : "text-neutral-400"}`
|
|
695
|
-
},
|
|
696
|
-
item.label
|
|
697
|
-
)
|
|
698
|
-
);
|
|
699
|
-
})))
|
|
700
|
-
);
|
|
694
|
+
item.label
|
|
695
|
+
)
|
|
696
|
+
);
|
|
697
|
+
})));
|
|
701
698
|
};
|
|
702
699
|
|
|
703
700
|
// src/components/UniversalOrganizationPage.tsx
|
|
@@ -1375,22 +1372,22 @@ var UniversalTransactionPage = ({
|
|
|
1375
1372
|
onChange: (e) => setLocalSearchQuery(e.target.value),
|
|
1376
1373
|
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"
|
|
1377
1374
|
}
|
|
1378
|
-
)), /* @__PURE__ */ import_react23.default.createElement("div", { className: "flex items-center gap-3 w-
|
|
1375
|
+
)), /* @__PURE__ */ import_react23.default.createElement("div", { className: "flex items-center gap-3 w-auto pb-0" }, /* @__PURE__ */ import_react23.default.createElement(
|
|
1379
1376
|
"button",
|
|
1380
1377
|
{
|
|
1381
1378
|
onClick: () => setIsDirectionModalOpen(true),
|
|
1382
|
-
|
|
1379
|
+
"aria-label": "Filter by payment type",
|
|
1380
|
+
className: "flex items-center justify-center bg-white w-10 h-10 rounded-full text-neutral-500 hover:text-black transition-colors outline-none"
|
|
1383
1381
|
},
|
|
1384
|
-
/* @__PURE__ */ import_react23.default.createElement(import_react24.HugeiconsIcon, { icon: import_core_free_icons7.SearchList02Icon, size:
|
|
1385
|
-
activeDirectionFilter === "ALL" ? "Payment Type" : activeDirectionFilter
|
|
1382
|
+
/* @__PURE__ */ import_react23.default.createElement(import_react24.HugeiconsIcon, { icon: import_core_free_icons7.SearchList02Icon, size: 16 })
|
|
1386
1383
|
), /* @__PURE__ */ import_react23.default.createElement(
|
|
1387
1384
|
"button",
|
|
1388
1385
|
{
|
|
1389
1386
|
onClick: () => setIsTypeModalOpen(true),
|
|
1390
|
-
|
|
1387
|
+
"aria-label": "Filter by transaction type",
|
|
1388
|
+
className: "flex items-center justify-center bg-white w-10 h-10 rounded-full text-neutral-500 hover:text-black transition-colors outline-none"
|
|
1391
1389
|
},
|
|
1392
|
-
/* @__PURE__ */ import_react23.default.createElement(import_react24.HugeiconsIcon, { icon: import_core_free_icons7.ListSettingIcon, size:
|
|
1393
|
-
activeTypeFilter === "ALL" ? "All Transactions" : activeTypeFilter.replace("_", " ")
|
|
1390
|
+
/* @__PURE__ */ import_react23.default.createElement(import_react24.HugeiconsIcon, { icon: import_core_free_icons7.ListSettingIcon, size: 16 })
|
|
1394
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(
|
|
1395
1392
|
"div",
|
|
1396
1393
|
{
|
|
@@ -1549,7 +1546,7 @@ var UniversalHomeView = ({
|
|
|
1549
1546
|
"button",
|
|
1550
1547
|
{
|
|
1551
1548
|
onClick: secondaryAction.onClick,
|
|
1552
|
-
className: "flex items-center gap-1.5 px-6 py-2.5 sm:px-8 sm:py-2.5 rounded-full
|
|
1549
|
+
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"
|
|
1553
1550
|
},
|
|
1554
1551
|
/* @__PURE__ */ import_react25.default.createElement("span", { className: "text-[13px] tracking-wide font-medium" }, secondaryAction.label),
|
|
1555
1552
|
secondaryAction.icon && /* @__PURE__ */ import_react25.default.createElement(import_react26.HugeiconsIcon, { icon: secondaryAction.icon, size: 16 })
|
|
@@ -1615,7 +1612,7 @@ var UniversalWalletPage = ({
|
|
|
1615
1612
|
placeholder: "Search wallets by name or network...",
|
|
1616
1613
|
value: localSearchQuery,
|
|
1617
1614
|
onChange: (e) => setLocalSearchQuery(e.target.value),
|
|
1618
|
-
className: "w-full pl-10 pr-4 py-2 bg-white
|
|
1615
|
+
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"
|
|
1619
1616
|
}
|
|
1620
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(
|
|
1621
1618
|
"div",
|
|
@@ -1685,7 +1682,7 @@ var UniversalCardPage = ({
|
|
|
1685
1682
|
style: { backgroundImage: `url(${cardBgSrc}), linear-gradient(to bottom right, #111, #333)` }
|
|
1686
1683
|
}
|
|
1687
1684
|
),
|
|
1688
|
-
/* @__PURE__ */ import_react29.default.createElement("div", { className: "relative z-10 w-full h-full p-5 flex flex-col justify-between" }, /* @__PURE__ */ import_react29.default.createElement("div", { className: "flex justify-between items-start w-full" }, /* @__PURE__ */ import_react29.default.createElement("div", null, /* @__PURE__ */ import_react29.default.createElement("span", { className: "text-[
|
|
1685
|
+
/* @__PURE__ */ import_react29.default.createElement("div", { className: "relative z-10 w-full h-full p-5 flex flex-col justify-between" }, /* @__PURE__ */ import_react29.default.createElement("div", { className: "flex justify-between items-start w-full" }, /* @__PURE__ */ import_react29.default.createElement("div", null, /* @__PURE__ */ import_react29.default.createElement("span", { className: "text-[12px] text-white/70 font-medium" }, "Prepaid Card")), companyLogoSrc && /* @__PURE__ */ import_react29.default.createElement("img", { src: companyLogoSrc, alt: "Company Logo", className: "h-6 object-contain opacity-90" })), /* @__PURE__ */ import_react29.default.createElement("div", { className: "flex justify-between items-end w-full" }, /* @__PURE__ */ import_react29.default.createElement("div", { className: "flex flex-col gap-1" }, /* @__PURE__ */ import_react29.default.createElement("span", { className: "text-[9px] text-white/60 tracking-widest" }, "Card Number"), /* @__PURE__ */ import_react29.default.createElement("span", { className: "text-[12px] text-white tracking-widest font-light" }, cardNumber)), networkLogoSrc && /* @__PURE__ */ import_react29.default.createElement("img", { src: networkLogoSrc, alt: "Network Logo", className: "h-10 object-contain opacity-90" })))
|
|
1689
1686
|
),
|
|
1690
1687
|
/* @__PURE__ */ import_react29.default.createElement(
|
|
1691
1688
|
"div",
|
|
@@ -1703,8 +1700,7 @@ var UniversalCardPage = ({
|
|
|
1703
1700
|
style: { backgroundImage: `url(${cardBgSrc}), linear-gradient(to bottom right, #111, #333)` }
|
|
1704
1701
|
}
|
|
1705
1702
|
),
|
|
1706
|
-
/* @__PURE__ */ import_react29.default.createElement("div", { className: "
|
|
1707
|
-
/* @__PURE__ */ import_react29.default.createElement("div", { className: "relative z-10 w-full h-full p-5 flex flex-col justify-end" }, /* @__PURE__ */ import_react29.default.createElement("div", { className: "w-full text-center mb-6" }, /* @__PURE__ */ import_react29.default.createElement("span", { className: "text-white text-3xl font-serif italic tracking-wide opacity-90" }, cardHolderName)), /* @__PURE__ */ import_react29.default.createElement("div", { className: "flex justify-between w-full max-w-[80%]" }, /* @__PURE__ */ import_react29.default.createElement("div", { className: "flex flex-col" }, /* @__PURE__ */ import_react29.default.createElement("span", { className: "text-[11px] text-white/60 tracking-widest" }, "Expiry"), /* @__PURE__ */ import_react29.default.createElement("span", { className: "text-[16px] text-white font-light" }, expiry)), /* @__PURE__ */ import_react29.default.createElement("div", { className: "flex flex-col" }, /* @__PURE__ */ import_react29.default.createElement("span", { className: "text-[11px] text-white/60 tracking-widest" }, "CVV"), /* @__PURE__ */ import_react29.default.createElement("span", { className: "text-[16px] text-white font-light" }, cvv))))
|
|
1703
|
+
/* @__PURE__ */ import_react29.default.createElement("div", { className: "relative z-10 w-full h-full p-5 flex flex-col justify-end" }, /* @__PURE__ */ import_react29.default.createElement("div", { className: "w-full text-center mb-6" }, /* @__PURE__ */ import_react29.default.createElement("span", { className: "text-white text-3xl font-serif italic tracking-wide opacity-90" }, cardHolderName)), /* @__PURE__ */ import_react29.default.createElement("div", { className: "flex justify-between w-full max-w-[80%]" }, /* @__PURE__ */ import_react29.default.createElement("div", { className: "flex flex-col" }, /* @__PURE__ */ import_react29.default.createElement("span", { className: "text-[9px] text-white/60 tracking-widest" }, "Expiry"), /* @__PURE__ */ import_react29.default.createElement("span", { className: "text-[12px] text-white font-light" }, expiry)), /* @__PURE__ */ import_react29.default.createElement("div", { className: "flex flex-col" }, /* @__PURE__ */ import_react29.default.createElement("span", { className: "text-[9px] text-white/60 tracking-widest" }, "CVV"), /* @__PURE__ */ import_react29.default.createElement("span", { className: "text-[12px] text-white font-light" }, cvv))))
|
|
1708
1704
|
)
|
|
1709
1705
|
)), /* @__PURE__ */ import_react29.default.createElement("p", { className: "text-xs text-neutral-400 mb-6" }, "Tap to flip card"), /* @__PURE__ */ import_react29.default.createElement("div", { className: "w-full px-4 flex flex-col gap-4" }, /* @__PURE__ */ import_react29.default.createElement("div", { className: "w-full bg-white rounded-2xl overflow-hidden" }, /* @__PURE__ */ import_react29.default.createElement(
|
|
1710
1706
|
MenuRow,
|
|
@@ -1746,11 +1742,11 @@ var MenuRow = ({ icon, title, subtitle, onClick, iconColor = "text-black", title
|
|
|
1746
1742
|
"div",
|
|
1747
1743
|
{
|
|
1748
1744
|
onClick,
|
|
1749
|
-
className: `flex items-center p-
|
|
1745
|
+
className: `flex items-center p-3 cursor-pointer hover:bg-neutral-50 transition-colors ${!isLast ? "" : ""}`
|
|
1750
1746
|
},
|
|
1751
|
-
/* @__PURE__ */ import_react29.default.createElement("div", { className: "w-
|
|
1752
|
-
/* @__PURE__ */ import_react29.default.createElement("div", { className: "flex-1 min-w-0" }, /* @__PURE__ */ import_react29.default.createElement("p", { className: `text-[
|
|
1753
|
-
/* @__PURE__ */ import_react29.default.createElement(import_react30.HugeiconsIcon, { icon: import_core_free_icons10.ArrowRight01Icon, size:
|
|
1747
|
+
/* @__PURE__ */ import_react29.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_react29.default.createElement(import_react30.HugeiconsIcon, { icon, size: 16, className: iconColor })),
|
|
1748
|
+
/* @__PURE__ */ import_react29.default.createElement("div", { className: "flex-1 min-w-0" }, /* @__PURE__ */ import_react29.default.createElement("p", { className: `text-[13px] font-medium truncate ${titleColor}` }, title), /* @__PURE__ */ import_react29.default.createElement("p", { className: "text-[11px] text-neutral-500 truncate" }, subtitle)),
|
|
1749
|
+
/* @__PURE__ */ import_react29.default.createElement(import_react30.HugeiconsIcon, { icon: import_core_free_icons10.ArrowRight01Icon, size: 18, className: "text-neutral-400 shrink-0 ml-2" })
|
|
1754
1750
|
);
|
|
1755
1751
|
|
|
1756
1752
|
// src/components/UniversalProfilePage.tsx
|
|
@@ -1770,14 +1766,14 @@ var UniversalProfilePage = ({
|
|
|
1770
1766
|
onLogoutTap,
|
|
1771
1767
|
onDeleteTap
|
|
1772
1768
|
}) => {
|
|
1773
|
-
return /* @__PURE__ */ import_react31.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_react31.default.createElement("div", { className: "pt-8 pb-4 flex flex-col items-center" }, /* @__PURE__ */ import_react31.default.createElement("div", { className: "w-24 h-24 rounded-full bg-white p-1 mb-4
|
|
1769
|
+
return /* @__PURE__ */ import_react31.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_react31.default.createElement("div", { className: "pt-8 pb-4 flex flex-col items-center" }, /* @__PURE__ */ import_react31.default.createElement("div", { className: "w-24 h-24 rounded-full bg-white p-1 mb-4 flex items-center justify-center" }, /* @__PURE__ */ import_react31.default.createElement("div", { className: "w-full h-full rounded-full overflow-hidden bg-neutral-100 flex items-center justify-center" }, avatarSrc ? /* @__PURE__ */ import_react31.default.createElement(
|
|
1774
1770
|
"img",
|
|
1775
1771
|
{
|
|
1776
1772
|
src: avatarSrc,
|
|
1777
1773
|
alt: "User Avatar",
|
|
1778
1774
|
className: "w-full h-full object-cover"
|
|
1779
1775
|
}
|
|
1780
|
-
) : /* @__PURE__ */ import_react31.default.createElement(import_react32.HugeiconsIcon, { icon: import_core_free_icons11.UserIcon, size: 40, className: "text-neutral-300" }))), /* @__PURE__ */ import_react31.default.createElement("div", { className: "bg-white rounded-full px-
|
|
1776
|
+
) : /* @__PURE__ */ import_react31.default.createElement(import_react32.HugeiconsIcon, { icon: import_core_free_icons11.UserIcon, size: 40, className: "text-neutral-300" }))), /* @__PURE__ */ import_react31.default.createElement("div", { className: "bg-white rounded-full px-4 py-2 flex items-center justify-center gap-2 mb-3" }, /* @__PURE__ */ import_react31.default.createElement("span", { className: "text-[12px] font-medium text-black" }, roleName), /* @__PURE__ */ import_react31.default.createElement(import_react32.HugeiconsIcon, { icon: import_core_free_icons11.ArrowRight01Icon, size: 14, className: "text-neutral-400" })), /* @__PURE__ */ import_react31.default.createElement("span", { className: "text-[12px] text-neutral-500" }, memberSince)), /* @__PURE__ */ import_react31.default.createElement("div", { className: "w-full px-4 flex flex-col gap-4 mt-2" }, /* @__PURE__ */ import_react31.default.createElement("div", { className: "w-full bg-white rounded-2xl overflow-hidden " }, /* @__PURE__ */ import_react31.default.createElement(
|
|
1781
1777
|
MenuRow2,
|
|
1782
1778
|
{
|
|
1783
1779
|
icon: import_core_free_icons11.UserIcon,
|
|
@@ -1810,7 +1806,7 @@ var UniversalProfilePage = ({
|
|
|
1810
1806
|
onClick: onHelpTap,
|
|
1811
1807
|
isLast: true
|
|
1812
1808
|
}
|
|
1813
|
-
)), /* @__PURE__ */ import_react31.default.createElement("div", { className: "w-full bg-white rounded-2xl overflow-hidden
|
|
1809
|
+
)), /* @__PURE__ */ import_react31.default.createElement("div", { className: "w-full bg-white rounded-2xl overflow-hidden " }, /* @__PURE__ */ import_react31.default.createElement(
|
|
1814
1810
|
MenuRow2,
|
|
1815
1811
|
{
|
|
1816
1812
|
icon: import_core_free_icons11.Shield01Icon,
|
|
@@ -1835,7 +1831,7 @@ var UniversalProfilePage = ({
|
|
|
1835
1831
|
onClick: onLogoutTap,
|
|
1836
1832
|
isLast: true
|
|
1837
1833
|
}
|
|
1838
|
-
)), /* @__PURE__ */ import_react31.default.createElement("div", { className: "w-full bg-white rounded-2xl overflow-hidden
|
|
1834
|
+
)), /* @__PURE__ */ import_react31.default.createElement("div", { className: "w-full bg-white rounded-2xl overflow-hidden mb-4" }, /* @__PURE__ */ import_react31.default.createElement(
|
|
1839
1835
|
MenuRow2,
|
|
1840
1836
|
{
|
|
1841
1837
|
icon: import_core_free_icons11.Delete02Icon,
|
|
@@ -1850,11 +1846,11 @@ var MenuRow2 = ({ icon, title, subtitle, onClick, iconColor = "text-black", titl
|
|
|
1850
1846
|
"div",
|
|
1851
1847
|
{
|
|
1852
1848
|
onClick,
|
|
1853
|
-
className: `flex items-center p-4 cursor-pointer hover:bg-neutral-50 transition-colors ${!isLast ? "
|
|
1849
|
+
className: `flex items-center p-4 cursor-pointer hover:bg-neutral-50 transition-colors ${!isLast ? "" : ""}`
|
|
1854
1850
|
},
|
|
1855
|
-
/* @__PURE__ */ import_react31.default.createElement("div", { className: "w-
|
|
1856
|
-
/* @__PURE__ */ import_react31.default.createElement("div", { className: "flex-1 min-w-0" }, /* @__PURE__ */ import_react31.default.createElement("p", { className: `text-[
|
|
1857
|
-
/* @__PURE__ */ import_react31.default.createElement(import_react32.HugeiconsIcon, { icon: import_core_free_icons11.ArrowRight01Icon, size:
|
|
1851
|
+
/* @__PURE__ */ import_react31.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_react31.default.createElement(import_react32.HugeiconsIcon, { icon, size: 16, className: iconColor })),
|
|
1852
|
+
/* @__PURE__ */ import_react31.default.createElement("div", { className: "flex-1 min-w-0" }, /* @__PURE__ */ import_react31.default.createElement("p", { className: `text-[13px] font-medium truncate ${titleColor}` }, title), /* @__PURE__ */ import_react31.default.createElement("p", { className: "text-[11px] text-neutral-500 truncate" }, subtitle)),
|
|
1853
|
+
/* @__PURE__ */ import_react31.default.createElement(import_react32.HugeiconsIcon, { icon: import_core_free_icons11.ArrowRight01Icon, size: 18, className: "text-neutral-400 shrink-0 ml-2" })
|
|
1858
1854
|
);
|
|
1859
1855
|
|
|
1860
1856
|
// src/components/HeroSection.tsx
|
package/dist/index.mjs
CHANGED
|
@@ -600,34 +600,31 @@ import { HugeiconsIcon as HugeiconsIcon3 } from "@hugeicons/react";
|
|
|
600
600
|
var MobileNav = ({ items }) => {
|
|
601
601
|
const pathname = usePathname2();
|
|
602
602
|
if (!items || items.length === 0) return null;
|
|
603
|
-
return (
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
603
|
+
return /* @__PURE__ */ React7.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__ */ React7.createElement("nav", { className: "pointer-events-auto w-full max-w-sm bg-white/80 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) => {
|
|
604
|
+
const isActive = item.href === "/" ? pathname === "/" : pathname?.startsWith(item.href);
|
|
605
|
+
return /* @__PURE__ */ React7.createElement(
|
|
606
|
+
Link4,
|
|
607
|
+
{
|
|
608
|
+
key: item.label,
|
|
609
|
+
href: item.href,
|
|
610
|
+
className: "flex flex-col items-center justify-center gap-1 min-w-14 transition-transform active:scale-95 outline-none"
|
|
611
|
+
},
|
|
612
|
+
/* @__PURE__ */ React7.createElement("div", { className: `transition-colors duration-300 ${isActive ? "text-black" : "text-neutral-400 hover:text-neutral-600"}` }, /* @__PURE__ */ React7.createElement(
|
|
613
|
+
HugeiconsIcon3,
|
|
609
614
|
{
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
615
|
+
icon: item.icon,
|
|
616
|
+
size: 20
|
|
617
|
+
}
|
|
618
|
+
)),
|
|
619
|
+
/* @__PURE__ */ React7.createElement(
|
|
620
|
+
"span",
|
|
621
|
+
{
|
|
622
|
+
className: `text-[9px] tracking-wide transition-colors duration-300 font-medium ${isActive ? "text-black" : "text-neutral-400"}`
|
|
613
623
|
},
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
size: 24
|
|
619
|
-
}
|
|
620
|
-
)),
|
|
621
|
-
/* @__PURE__ */ React7.createElement(
|
|
622
|
-
"span",
|
|
623
|
-
{
|
|
624
|
-
className: `text-[10px] tracking-wide transition-colors duration-300 font-medium ${isActive ? "text-black" : "text-neutral-400"}`
|
|
625
|
-
},
|
|
626
|
-
item.label
|
|
627
|
-
)
|
|
628
|
-
);
|
|
629
|
-
})))
|
|
630
|
-
);
|
|
624
|
+
item.label
|
|
625
|
+
)
|
|
626
|
+
);
|
|
627
|
+
})));
|
|
631
628
|
};
|
|
632
629
|
|
|
633
630
|
// src/components/UniversalOrganizationPage.tsx
|
|
@@ -1327,22 +1324,22 @@ var UniversalTransactionPage = ({
|
|
|
1327
1324
|
onChange: (e) => setLocalSearchQuery(e.target.value),
|
|
1328
1325
|
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"
|
|
1329
1326
|
}
|
|
1330
|
-
)), /* @__PURE__ */ React15.createElement("div", { className: "flex items-center gap-3 w-
|
|
1327
|
+
)), /* @__PURE__ */ React15.createElement("div", { className: "flex items-center gap-3 w-auto pb-0" }, /* @__PURE__ */ React15.createElement(
|
|
1331
1328
|
"button",
|
|
1332
1329
|
{
|
|
1333
1330
|
onClick: () => setIsDirectionModalOpen(true),
|
|
1334
|
-
|
|
1331
|
+
"aria-label": "Filter by payment type",
|
|
1332
|
+
className: "flex items-center justify-center bg-white w-10 h-10 rounded-full text-neutral-500 hover:text-black transition-colors outline-none"
|
|
1335
1333
|
},
|
|
1336
|
-
/* @__PURE__ */ React15.createElement(HugeiconsIcon9, { icon: SearchList02Icon, size:
|
|
1337
|
-
activeDirectionFilter === "ALL" ? "Payment Type" : activeDirectionFilter
|
|
1334
|
+
/* @__PURE__ */ React15.createElement(HugeiconsIcon9, { icon: SearchList02Icon, size: 16 })
|
|
1338
1335
|
), /* @__PURE__ */ React15.createElement(
|
|
1339
1336
|
"button",
|
|
1340
1337
|
{
|
|
1341
1338
|
onClick: () => setIsTypeModalOpen(true),
|
|
1342
|
-
|
|
1339
|
+
"aria-label": "Filter by transaction type",
|
|
1340
|
+
className: "flex items-center justify-center bg-white w-10 h-10 rounded-full text-neutral-500 hover:text-black transition-colors outline-none"
|
|
1343
1341
|
},
|
|
1344
|
-
/* @__PURE__ */ React15.createElement(HugeiconsIcon9, { icon: ListSettingIcon, size:
|
|
1345
|
-
activeTypeFilter === "ALL" ? "All Transactions" : activeTypeFilter.replace("_", " ")
|
|
1342
|
+
/* @__PURE__ */ React15.createElement(HugeiconsIcon9, { icon: ListSettingIcon, size: 16 })
|
|
1346
1343
|
))), /* @__PURE__ */ React15.createElement("div", { className: "flex flex-col gap-8 p-6 rounded-2xl bg-white w-full" }, /* @__PURE__ */ React15.createElement("div", { className: "flex flex-col sm:flex-row sm:items-start justify-between gap-4" }, /* @__PURE__ */ React15.createElement("div", null, /* @__PURE__ */ React15.createElement("h1", { className: "text-black text-xl mb-1 tracking-tight" }, headerTitle), headerDescription && /* @__PURE__ */ React15.createElement("p", { className: "text-xs text-neutral-500" }, headerDescription))), /* @__PURE__ */ React15.createElement("div", { className: "w-full overflow-hidden" }, isListLoading ? /* @__PURE__ */ React15.createElement(PageSpinner2, null) : /* @__PURE__ */ React15.createElement("div", { className: "flex flex-col min-w-0" }, /* @__PURE__ */ React15.createElement("div", null, transactions.length === 0 ? /* @__PURE__ */ React15.createElement("p", { className: "text-xs text-neutral-400 py-6 text-center" }, "No transactions found") : transactions.map((tx) => /* @__PURE__ */ React15.createElement(
|
|
1347
1344
|
"div",
|
|
1348
1345
|
{
|
|
@@ -1501,7 +1498,7 @@ var UniversalHomeView = ({
|
|
|
1501
1498
|
"button",
|
|
1502
1499
|
{
|
|
1503
1500
|
onClick: secondaryAction.onClick,
|
|
1504
|
-
className: "flex items-center gap-1.5 px-6 py-2.5 sm:px-8 sm:py-2.5 rounded-full
|
|
1501
|
+
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"
|
|
1505
1502
|
},
|
|
1506
1503
|
/* @__PURE__ */ React16.createElement("span", { className: "text-[13px] tracking-wide font-medium" }, secondaryAction.label),
|
|
1507
1504
|
secondaryAction.icon && /* @__PURE__ */ React16.createElement(HugeiconsIcon10, { icon: secondaryAction.icon, size: 16 })
|
|
@@ -1571,7 +1568,7 @@ var UniversalWalletPage = ({
|
|
|
1571
1568
|
placeholder: "Search wallets by name or network...",
|
|
1572
1569
|
value: localSearchQuery,
|
|
1573
1570
|
onChange: (e) => setLocalSearchQuery(e.target.value),
|
|
1574
|
-
className: "w-full pl-10 pr-4 py-2 bg-white
|
|
1571
|
+
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"
|
|
1575
1572
|
}
|
|
1576
1573
|
))), /* @__PURE__ */ React17.createElement("div", { className: "flex flex-col gap-8 p-6 rounded-2xl bg-white w-full" }, /* @__PURE__ */ React17.createElement("div", { className: "flex flex-col sm:flex-row sm:items-start justify-between gap-4" }, /* @__PURE__ */ React17.createElement("div", null, /* @__PURE__ */ React17.createElement("h1", { className: "text-black text-xl mb-1 tracking-tight" }, headerTitle), headerDescription && /* @__PURE__ */ React17.createElement("p", { className: "text-xs text-neutral-500" }, headerDescription))), /* @__PURE__ */ React17.createElement("div", { className: "w-full overflow-hidden" }, isLoading ? /* @__PURE__ */ React17.createElement(PageSpinner3, null) : /* @__PURE__ */ React17.createElement("div", { className: "flex flex-col min-w-0" }, /* @__PURE__ */ React17.createElement("div", null, filteredWallets.length === 0 ? /* @__PURE__ */ React17.createElement("p", { className: "text-xs text-neutral-400 py-6 text-center" }, "No wallets found") : filteredWallets.map((wallet) => /* @__PURE__ */ React17.createElement(
|
|
1577
1574
|
"div",
|
|
@@ -1647,7 +1644,7 @@ var UniversalCardPage = ({
|
|
|
1647
1644
|
style: { backgroundImage: `url(${cardBgSrc}), linear-gradient(to bottom right, #111, #333)` }
|
|
1648
1645
|
}
|
|
1649
1646
|
),
|
|
1650
|
-
/* @__PURE__ */ React18.createElement("div", { className: "relative z-10 w-full h-full p-5 flex flex-col justify-between" }, /* @__PURE__ */ React18.createElement("div", { className: "flex justify-between items-start w-full" }, /* @__PURE__ */ React18.createElement("div", null, /* @__PURE__ */ React18.createElement("span", { className: "text-[
|
|
1647
|
+
/* @__PURE__ */ React18.createElement("div", { className: "relative z-10 w-full h-full p-5 flex flex-col justify-between" }, /* @__PURE__ */ React18.createElement("div", { className: "flex justify-between items-start w-full" }, /* @__PURE__ */ React18.createElement("div", null, /* @__PURE__ */ React18.createElement("span", { className: "text-[12px] text-white/70 font-medium" }, "Prepaid Card")), companyLogoSrc && /* @__PURE__ */ React18.createElement("img", { src: companyLogoSrc, alt: "Company Logo", className: "h-6 object-contain opacity-90" })), /* @__PURE__ */ React18.createElement("div", { className: "flex justify-between items-end w-full" }, /* @__PURE__ */ React18.createElement("div", { className: "flex flex-col gap-1" }, /* @__PURE__ */ React18.createElement("span", { className: "text-[9px] text-white/60 tracking-widest" }, "Card Number"), /* @__PURE__ */ React18.createElement("span", { className: "text-[12px] text-white tracking-widest font-light" }, cardNumber)), networkLogoSrc && /* @__PURE__ */ React18.createElement("img", { src: networkLogoSrc, alt: "Network Logo", className: "h-10 object-contain opacity-90" })))
|
|
1651
1648
|
),
|
|
1652
1649
|
/* @__PURE__ */ React18.createElement(
|
|
1653
1650
|
"div",
|
|
@@ -1665,8 +1662,7 @@ var UniversalCardPage = ({
|
|
|
1665
1662
|
style: { backgroundImage: `url(${cardBgSrc}), linear-gradient(to bottom right, #111, #333)` }
|
|
1666
1663
|
}
|
|
1667
1664
|
),
|
|
1668
|
-
/* @__PURE__ */ React18.createElement("div", { className: "
|
|
1669
|
-
/* @__PURE__ */ React18.createElement("div", { className: "relative z-10 w-full h-full p-5 flex flex-col justify-end" }, /* @__PURE__ */ React18.createElement("div", { className: "w-full text-center mb-6" }, /* @__PURE__ */ React18.createElement("span", { className: "text-white text-3xl font-serif italic tracking-wide opacity-90" }, cardHolderName)), /* @__PURE__ */ React18.createElement("div", { className: "flex justify-between w-full max-w-[80%]" }, /* @__PURE__ */ React18.createElement("div", { className: "flex flex-col" }, /* @__PURE__ */ React18.createElement("span", { className: "text-[11px] text-white/60 tracking-widest" }, "Expiry"), /* @__PURE__ */ React18.createElement("span", { className: "text-[16px] text-white font-light" }, expiry)), /* @__PURE__ */ React18.createElement("div", { className: "flex flex-col" }, /* @__PURE__ */ React18.createElement("span", { className: "text-[11px] text-white/60 tracking-widest" }, "CVV"), /* @__PURE__ */ React18.createElement("span", { className: "text-[16px] text-white font-light" }, cvv))))
|
|
1665
|
+
/* @__PURE__ */ React18.createElement("div", { className: "relative z-10 w-full h-full p-5 flex flex-col justify-end" }, /* @__PURE__ */ React18.createElement("div", { className: "w-full text-center mb-6" }, /* @__PURE__ */ React18.createElement("span", { className: "text-white text-3xl font-serif italic tracking-wide opacity-90" }, cardHolderName)), /* @__PURE__ */ React18.createElement("div", { className: "flex justify-between w-full max-w-[80%]" }, /* @__PURE__ */ React18.createElement("div", { className: "flex flex-col" }, /* @__PURE__ */ React18.createElement("span", { className: "text-[9px] text-white/60 tracking-widest" }, "Expiry"), /* @__PURE__ */ React18.createElement("span", { className: "text-[12px] text-white font-light" }, expiry)), /* @__PURE__ */ React18.createElement("div", { className: "flex flex-col" }, /* @__PURE__ */ React18.createElement("span", { className: "text-[9px] text-white/60 tracking-widest" }, "CVV"), /* @__PURE__ */ React18.createElement("span", { className: "text-[12px] text-white font-light" }, cvv))))
|
|
1670
1666
|
)
|
|
1671
1667
|
)), /* @__PURE__ */ React18.createElement("p", { className: "text-xs text-neutral-400 mb-6" }, "Tap to flip card"), /* @__PURE__ */ React18.createElement("div", { className: "w-full px-4 flex flex-col gap-4" }, /* @__PURE__ */ React18.createElement("div", { className: "w-full bg-white rounded-2xl overflow-hidden" }, /* @__PURE__ */ React18.createElement(
|
|
1672
1668
|
MenuRow,
|
|
@@ -1708,11 +1704,11 @@ var MenuRow = ({ icon, title, subtitle, onClick, iconColor = "text-black", title
|
|
|
1708
1704
|
"div",
|
|
1709
1705
|
{
|
|
1710
1706
|
onClick,
|
|
1711
|
-
className: `flex items-center p-
|
|
1707
|
+
className: `flex items-center p-3 cursor-pointer hover:bg-neutral-50 transition-colors ${!isLast ? "" : ""}`
|
|
1712
1708
|
},
|
|
1713
|
-
/* @__PURE__ */ React18.createElement("div", { className: "w-
|
|
1714
|
-
/* @__PURE__ */ React18.createElement("div", { className: "flex-1 min-w-0" }, /* @__PURE__ */ React18.createElement("p", { className: `text-[
|
|
1715
|
-
/* @__PURE__ */ React18.createElement(HugeiconsIcon12, { icon: ArrowRight01Icon2, size:
|
|
1709
|
+
/* @__PURE__ */ React18.createElement("div", { className: "w-9 h-9 rounded-full border border-neutral-200 flex items-center justify-center shrink-0 mr-4" }, /* @__PURE__ */ React18.createElement(HugeiconsIcon12, { icon, size: 16, className: iconColor })),
|
|
1710
|
+
/* @__PURE__ */ React18.createElement("div", { className: "flex-1 min-w-0" }, /* @__PURE__ */ React18.createElement("p", { className: `text-[13px] font-medium truncate ${titleColor}` }, title), /* @__PURE__ */ React18.createElement("p", { className: "text-[11px] text-neutral-500 truncate" }, subtitle)),
|
|
1711
|
+
/* @__PURE__ */ React18.createElement(HugeiconsIcon12, { icon: ArrowRight01Icon2, size: 18, className: "text-neutral-400 shrink-0 ml-2" })
|
|
1716
1712
|
);
|
|
1717
1713
|
|
|
1718
1714
|
// src/components/UniversalProfilePage.tsx
|
|
@@ -1742,14 +1738,14 @@ var UniversalProfilePage = ({
|
|
|
1742
1738
|
onLogoutTap,
|
|
1743
1739
|
onDeleteTap
|
|
1744
1740
|
}) => {
|
|
1745
|
-
return /* @__PURE__ */ React19.createElement("div", { className: "w-full max-w-md mx-auto flex flex-col items-center animate-in fade-in duration-300 pb-12" }, /* @__PURE__ */ React19.createElement("div", { className: "pt-8 pb-4 flex flex-col items-center" }, /* @__PURE__ */ React19.createElement("div", { className: "w-24 h-24 rounded-full bg-white p-1 mb-4
|
|
1741
|
+
return /* @__PURE__ */ React19.createElement("div", { className: "w-full max-w-md mx-auto flex flex-col items-center animate-in fade-in duration-300 pb-12" }, /* @__PURE__ */ React19.createElement("div", { className: "pt-8 pb-4 flex flex-col items-center" }, /* @__PURE__ */ React19.createElement("div", { className: "w-24 h-24 rounded-full bg-white p-1 mb-4 flex items-center justify-center" }, /* @__PURE__ */ React19.createElement("div", { className: "w-full h-full rounded-full overflow-hidden bg-neutral-100 flex items-center justify-center" }, avatarSrc ? /* @__PURE__ */ React19.createElement(
|
|
1746
1742
|
"img",
|
|
1747
1743
|
{
|
|
1748
1744
|
src: avatarSrc,
|
|
1749
1745
|
alt: "User Avatar",
|
|
1750
1746
|
className: "w-full h-full object-cover"
|
|
1751
1747
|
}
|
|
1752
|
-
) : /* @__PURE__ */ React19.createElement(HugeiconsIcon13, { icon: UserIcon, size: 40, className: "text-neutral-300" }))), /* @__PURE__ */ React19.createElement("div", { className: "bg-white rounded-full px-
|
|
1748
|
+
) : /* @__PURE__ */ React19.createElement(HugeiconsIcon13, { icon: UserIcon, size: 40, className: "text-neutral-300" }))), /* @__PURE__ */ React19.createElement("div", { className: "bg-white rounded-full px-4 py-2 flex items-center justify-center gap-2 mb-3" }, /* @__PURE__ */ React19.createElement("span", { className: "text-[12px] font-medium text-black" }, roleName), /* @__PURE__ */ React19.createElement(HugeiconsIcon13, { icon: ArrowRight01Icon3, size: 14, className: "text-neutral-400" })), /* @__PURE__ */ React19.createElement("span", { className: "text-[12px] text-neutral-500" }, memberSince)), /* @__PURE__ */ React19.createElement("div", { className: "w-full px-4 flex flex-col gap-4 mt-2" }, /* @__PURE__ */ React19.createElement("div", { className: "w-full bg-white rounded-2xl overflow-hidden " }, /* @__PURE__ */ React19.createElement(
|
|
1753
1749
|
MenuRow2,
|
|
1754
1750
|
{
|
|
1755
1751
|
icon: UserIcon,
|
|
@@ -1782,7 +1778,7 @@ var UniversalProfilePage = ({
|
|
|
1782
1778
|
onClick: onHelpTap,
|
|
1783
1779
|
isLast: true
|
|
1784
1780
|
}
|
|
1785
|
-
)), /* @__PURE__ */ React19.createElement("div", { className: "w-full bg-white rounded-2xl overflow-hidden
|
|
1781
|
+
)), /* @__PURE__ */ React19.createElement("div", { className: "w-full bg-white rounded-2xl overflow-hidden " }, /* @__PURE__ */ React19.createElement(
|
|
1786
1782
|
MenuRow2,
|
|
1787
1783
|
{
|
|
1788
1784
|
icon: Shield01Icon,
|
|
@@ -1807,7 +1803,7 @@ var UniversalProfilePage = ({
|
|
|
1807
1803
|
onClick: onLogoutTap,
|
|
1808
1804
|
isLast: true
|
|
1809
1805
|
}
|
|
1810
|
-
)), /* @__PURE__ */ React19.createElement("div", { className: "w-full bg-white rounded-2xl overflow-hidden
|
|
1806
|
+
)), /* @__PURE__ */ React19.createElement("div", { className: "w-full bg-white rounded-2xl overflow-hidden mb-4" }, /* @__PURE__ */ React19.createElement(
|
|
1811
1807
|
MenuRow2,
|
|
1812
1808
|
{
|
|
1813
1809
|
icon: Delete02Icon2,
|
|
@@ -1822,11 +1818,11 @@ var MenuRow2 = ({ icon, title, subtitle, onClick, iconColor = "text-black", titl
|
|
|
1822
1818
|
"div",
|
|
1823
1819
|
{
|
|
1824
1820
|
onClick,
|
|
1825
|
-
className: `flex items-center p-4 cursor-pointer hover:bg-neutral-50 transition-colors ${!isLast ? "
|
|
1821
|
+
className: `flex items-center p-4 cursor-pointer hover:bg-neutral-50 transition-colors ${!isLast ? "" : ""}`
|
|
1826
1822
|
},
|
|
1827
|
-
/* @__PURE__ */ React19.createElement("div", { className: "w-
|
|
1828
|
-
/* @__PURE__ */ React19.createElement("div", { className: "flex-1 min-w-0" }, /* @__PURE__ */ React19.createElement("p", { className: `text-[
|
|
1829
|
-
/* @__PURE__ */ React19.createElement(HugeiconsIcon13, { icon: ArrowRight01Icon3, size:
|
|
1823
|
+
/* @__PURE__ */ React19.createElement("div", { className: "w-9 h-9 rounded-full border border-neutral-200 flex items-center justify-center shrink-0 mr-4" }, /* @__PURE__ */ React19.createElement(HugeiconsIcon13, { icon, size: 16, className: iconColor })),
|
|
1824
|
+
/* @__PURE__ */ React19.createElement("div", { className: "flex-1 min-w-0" }, /* @__PURE__ */ React19.createElement("p", { className: `text-[13px] font-medium truncate ${titleColor}` }, title), /* @__PURE__ */ React19.createElement("p", { className: "text-[11px] text-neutral-500 truncate" }, subtitle)),
|
|
1825
|
+
/* @__PURE__ */ React19.createElement(HugeiconsIcon13, { icon: ArrowRight01Icon3, size: 18, className: "text-neutral-400 shrink-0 ml-2" })
|
|
1830
1826
|
);
|
|
1831
1827
|
|
|
1832
1828
|
// src/components/HeroSection.tsx
|