@retinalabsllc/zairusjs 14.0.1 → 14.0.15
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.d.mts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +374 -413
- package/dist/index.mjs +271 -310
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -1244,6 +1244,20 @@ var truncateReference = (ref) => {
|
|
|
1244
1244
|
if (!ref || ref.length <= 14) return ref;
|
|
1245
1245
|
return `${ref.substring(0, 11)}.....${ref.substring(ref.length - 11)}`;
|
|
1246
1246
|
};
|
|
1247
|
+
var getStatusClasses = (status) => {
|
|
1248
|
+
switch (status) {
|
|
1249
|
+
case "PENDING":
|
|
1250
|
+
return "text-amber-700 bg-amber-100";
|
|
1251
|
+
case "COMPLETED":
|
|
1252
|
+
return "text-emerald-700 bg-emerald-100";
|
|
1253
|
+
case "FAILED":
|
|
1254
|
+
return "text-rose-700 bg-rose-100";
|
|
1255
|
+
case "REVERSED":
|
|
1256
|
+
return "text-sky-700 bg-sky-100";
|
|
1257
|
+
default:
|
|
1258
|
+
return "text-neutral-500 bg-neutral-50";
|
|
1259
|
+
}
|
|
1260
|
+
};
|
|
1247
1261
|
var UniversalTransactionPage = ({
|
|
1248
1262
|
headerTitle,
|
|
1249
1263
|
headerDescription,
|
|
@@ -1371,7 +1385,7 @@ var UniversalTransactionPage = ({
|
|
|
1371
1385
|
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"
|
|
1372
1386
|
},
|
|
1373
1387
|
/* @__PURE__ */ React15.createElement(HugeiconsIcon9, { icon: ArrowRight01Icon, size: 14 })
|
|
1374
|
-
)))))), selectedTransaction && /* @__PURE__ */ React15.createElement("div", { className: "fixed inset-0 z-120 flex items-center justify-center p-4 pointer-events-auto" }, /* @__PURE__ */ React15.createElement("div", { className: "absolute inset-0 bg-black/40 ", onClick: () => setSelectedTransaction(null) }), /* @__PURE__ */ React15.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__ */ React15.createElement("div", { className: "flex items-center justify-between p-5 shrink-0 " }, /* @__PURE__ */ React15.createElement("h3", { className: "text-[15px] text-black tracking-tight" }, "Details"), /* @__PURE__ */ React15.createElement("button", { onClick: () => setSelectedTransaction(null), className: "text-neutral-400 hover:text-black transition-colors outline-none" }, /* @__PURE__ */ React15.createElement(HugeiconsIcon9, { icon: CancelCircleIcon2, size: 18 }))), /* @__PURE__ */ React15.createElement("div", { className: "flex-1 overflow-y-auto custom-scrollbar p-6" }, /* @__PURE__ */ React15.createElement("div", { className: "flex flex-col items-center justify-center mb-4" }, /* @__PURE__ */ React15.createElement("div", { className: `w-12 h-12 rounded-full flex items-center justify-center mb-4 bg-neutral-100 text-black` }, /* @__PURE__ */ React15.createElement(HugeiconsIcon9, { icon: selectedTransaction.direction === "CREDIT" ? ArrowDownRight01Icon : ArrowUpRight01Icon, size: 20 })), /* @__PURE__ */ React15.createElement("p", { className: `text-2xl text-black mb-2 transition-all duration-300 ${hideBalanceAmounts ? "blur-[6px] opacity-40 select-none" : ""}` }, selectedTransaction.amount), /* @__PURE__ */ React15.createElement("span", { className:
|
|
1388
|
+
)))))), selectedTransaction && /* @__PURE__ */ React15.createElement("div", { className: "fixed inset-0 z-120 flex items-center justify-center p-4 pointer-events-auto" }, /* @__PURE__ */ React15.createElement("div", { className: "absolute inset-0 bg-black/40 ", onClick: () => setSelectedTransaction(null) }), /* @__PURE__ */ React15.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__ */ React15.createElement("div", { className: "flex items-center justify-between p-5 shrink-0 " }, /* @__PURE__ */ React15.createElement("h3", { className: "text-[15px] text-black tracking-tight" }, "Details"), /* @__PURE__ */ React15.createElement("button", { onClick: () => setSelectedTransaction(null), className: "text-neutral-400 hover:text-black transition-colors outline-none" }, /* @__PURE__ */ React15.createElement(HugeiconsIcon9, { icon: CancelCircleIcon2, size: 18 }))), /* @__PURE__ */ React15.createElement("div", { className: "flex-1 overflow-y-auto custom-scrollbar p-6" }, /* @__PURE__ */ React15.createElement("div", { className: "flex flex-col items-center justify-center mb-4" }, /* @__PURE__ */ React15.createElement("div", { className: `w-12 h-12 rounded-full flex items-center justify-center mb-4 bg-neutral-100 text-black` }, /* @__PURE__ */ React15.createElement(HugeiconsIcon9, { icon: selectedTransaction.direction === "CREDIT" ? ArrowDownRight01Icon : ArrowUpRight01Icon, size: 20 })), /* @__PURE__ */ React15.createElement("p", { className: `text-2xl text-black mb-2 transition-all duration-300 ${hideBalanceAmounts ? "blur-[6px] opacity-40 select-none" : ""}` }, selectedTransaction.amount), /* @__PURE__ */ React15.createElement("span", { className: `text-[9px] tracking-widest px-4 py-1.5 rounded-full ${getStatusClasses(selectedTransaction.status)}` }, selectedTransaction.status)), /* @__PURE__ */ React15.createElement("div", { className: "grid grid-cols-1 gap-y-8 gap-x-4 mb-10 mt-6" }, /* @__PURE__ */ React15.createElement("div", null, /* @__PURE__ */ React15.createElement("span", { className: "text-[11px] tracking-[0.2em] text-neutral-400 block mb-2" }, "Reference ID"), /* @__PURE__ */ React15.createElement("div", { className: "flex items-center gap-2 min-w-0" }, /* @__PURE__ */ React15.createElement("span", { className: "text-[13px] text-black truncate min-w-0 block" }, truncateReference(selectedTransaction.reference)), /* @__PURE__ */ React15.createElement(
|
|
1375
1389
|
"button",
|
|
1376
1390
|
{
|
|
1377
1391
|
onClick: () => handleCopyReference(selectedTransaction.reference),
|
|
@@ -1844,8 +1858,9 @@ var UniversalWalletPage = ({
|
|
|
1844
1858
|
};
|
|
1845
1859
|
|
|
1846
1860
|
// src/components/UniversalCardPage.tsx
|
|
1847
|
-
import
|
|
1848
|
-
import {
|
|
1861
|
+
import React20, { useState as useState12, useEffect as useEffect9 } from "react";
|
|
1862
|
+
import { useRouter } from "next/navigation";
|
|
1863
|
+
import { HugeiconsIcon as HugeiconsIcon14 } from "@hugeicons/react";
|
|
1849
1864
|
import {
|
|
1850
1865
|
SnowIcon,
|
|
1851
1866
|
Delete02Icon,
|
|
@@ -1974,52 +1989,16 @@ var PinDialerBottomSheet = ({
|
|
|
1974
1989
|
)))));
|
|
1975
1990
|
};
|
|
1976
1991
|
|
|
1977
|
-
// src/components/CardAction.tsx
|
|
1978
|
-
import React20 from "react";
|
|
1979
|
-
import { HugeiconsIcon as HugeiconsIcon14 } from "@hugeicons/react";
|
|
1980
|
-
import { CancelCircleIcon as CancelCircleIcon6, CreditCardIcon } from "@hugeicons/core-free-icons";
|
|
1981
|
-
var CardActionDialog = ({
|
|
1982
|
-
isOpen,
|
|
1983
|
-
card,
|
|
1984
|
-
actionType,
|
|
1985
|
-
onClose,
|
|
1986
|
-
onProceed
|
|
1987
|
-
}) => {
|
|
1988
|
-
if (!isOpen || !card) return null;
|
|
1989
|
-
const title = actionType === "ACTIVATE" ? "Activate Card" : "Create New Card";
|
|
1990
|
-
const description = actionType === "ACTIVATE" ? `You are about to activate your ${card.type.toLowerCase()} card. Once activated, you can view details and set limits.` : `Your current ${card.type.toLowerCase()} card is ${card.status.toLowerCase()}. You need to provision a new one to continue.`;
|
|
1991
|
-
return /* @__PURE__ */ React20.createElement("div", { className: "fixed inset-0 z-150 flex items-center justify-center p-4 pointer-events-auto" }, /* @__PURE__ */ React20.createElement(
|
|
1992
|
-
"div",
|
|
1993
|
-
{
|
|
1994
|
-
className: "absolute inset-0 bg-black/40 animate-in fade-in duration-200",
|
|
1995
|
-
onClick: onClose
|
|
1996
|
-
}
|
|
1997
|
-
), /* @__PURE__ */ React20.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__ */ React20.createElement("div", { className: "flex items-center justify-between p-5 shrink-0" }, /* @__PURE__ */ React20.createElement("div", { className: "flex items-center gap-2" }, /* @__PURE__ */ React20.createElement(HugeiconsIcon14, { icon: CreditCardIcon, size: 20, className: "text-black" }), /* @__PURE__ */ React20.createElement("h3", { className: "text-[16px] text-black tracking-tight" }, title)), /* @__PURE__ */ React20.createElement(
|
|
1998
|
-
"button",
|
|
1999
|
-
{
|
|
2000
|
-
onClick: onClose,
|
|
2001
|
-
className: "text-neutral-400 hover:text-black transition-colors outline-none"
|
|
2002
|
-
},
|
|
2003
|
-
/* @__PURE__ */ React20.createElement(HugeiconsIcon14, { icon: CancelCircleIcon6, size: 20 })
|
|
2004
|
-
)), /* @__PURE__ */ React20.createElement("div", { className: "p-6 text-center" }, /* @__PURE__ */ React20.createElement("p", { className: "text-[13px] text-neutral-500 leading-relaxed mb-6" }, description), /* @__PURE__ */ React20.createElement(
|
|
2005
|
-
"button",
|
|
2006
|
-
{
|
|
2007
|
-
onClick: onProceed,
|
|
2008
|
-
className: "w-full py-3.5 bg-black text-white text-[13px] rounded-xl hover:bg-neutral-800 transition-colors outline-none active:scale-95"
|
|
2009
|
-
},
|
|
2010
|
-
actionType === "ACTIVATE" ? "Activate Now" : "Create Card"
|
|
2011
|
-
))));
|
|
2012
|
-
};
|
|
2013
|
-
|
|
2014
1992
|
// src/components/UniversalCardPage.tsx
|
|
2015
1993
|
var UniversalCardPage = ({
|
|
2016
1994
|
cards = [],
|
|
1995
|
+
actionPath = "/app/cards/action/",
|
|
2017
1996
|
onReveal,
|
|
2018
1997
|
onFreeze,
|
|
2019
1998
|
onSetLimits,
|
|
2020
|
-
onDelete
|
|
2021
|
-
onCardAction
|
|
1999
|
+
onDelete
|
|
2022
2000
|
}) => {
|
|
2001
|
+
const router = useRouter();
|
|
2023
2002
|
const [activeTabIndex, setActiveTabIndex] = useState12(0);
|
|
2024
2003
|
const activeCard = cards[activeTabIndex];
|
|
2025
2004
|
useEffect9(() => {
|
|
@@ -2035,8 +2014,6 @@ var UniversalCardPage = ({
|
|
|
2035
2014
|
const [showDeleteDialog, setShowDeleteDialog] = useState12(false);
|
|
2036
2015
|
const [isDeleting, setIsDeleting] = useState12(false);
|
|
2037
2016
|
const [showPinDialer, setShowPinDialer] = useState12(false);
|
|
2038
|
-
const [showCardActionDialog, setShowCardActionDialog] = useState12(false);
|
|
2039
|
-
const [cardActionType, setCardActionType] = useState12("ACTIVATE");
|
|
2040
2017
|
useEffect9(() => {
|
|
2041
2018
|
setIsBgLoaded(false);
|
|
2042
2019
|
if (!activeCard?.cardBgSrc) return;
|
|
@@ -2046,7 +2023,7 @@ var UniversalCardPage = ({
|
|
|
2046
2023
|
setTimeout(() => setIsBgLoaded(true), 300);
|
|
2047
2024
|
};
|
|
2048
2025
|
}, [activeCard?.cardBgSrc]);
|
|
2049
|
-
if (!activeCard) return /* @__PURE__ */
|
|
2026
|
+
if (!activeCard) return /* @__PURE__ */ React20.createElement("div", { className: "text-center p-8 text-neutral-500" }, "No cards available");
|
|
2050
2027
|
const isActivated = activeCard.status === "ACTIVATED";
|
|
2051
2028
|
const isFrozen = activeCard.status === "FROZEN";
|
|
2052
2029
|
const isUnactivated = activeCard.status === "UNACTIVATED";
|
|
@@ -2093,10 +2070,6 @@ var UniversalCardPage = ({
|
|
|
2093
2070
|
setIsOverlayActionLoading(false);
|
|
2094
2071
|
}, 800);
|
|
2095
2072
|
};
|
|
2096
|
-
const handleOverlayActionClick = (type) => {
|
|
2097
|
-
setCardActionType(type);
|
|
2098
|
-
setShowCardActionDialog(true);
|
|
2099
|
-
};
|
|
2100
2073
|
const confirmDelete = async () => {
|
|
2101
2074
|
setIsDeleting(true);
|
|
2102
2075
|
setTimeout(() => {
|
|
@@ -2112,9 +2085,9 @@ var UniversalCardPage = ({
|
|
|
2112
2085
|
const displayCardNumber = isRevealed ? activeCard.cardNumber : `XXXX XXXX XXXX ${activeCard.cardNumber.slice(-4)}`;
|
|
2113
2086
|
const displayExpiry = isRevealed ? activeCard.expiry : "XX/XX";
|
|
2114
2087
|
const displayCvv = isRevealed ? activeCard.cvv : "XXX";
|
|
2115
|
-
return /* @__PURE__ */
|
|
2088
|
+
return /* @__PURE__ */ React20.createElement("div", { className: "w-full max-w-3xl mx-auto flex flex-col animate-in fade-in duration-300" }, cards.length > 1 && /* @__PURE__ */ React20.createElement("div", { className: "flex items-center justify-center mb-6 w-full px-2" }, /* @__PURE__ */ React20.createElement("div", { className: "flex items-center bg-white rounded-full p-1 sm:p-1.5 max-w-full overflow-x-auto custom-scrollbar " }, cards.map((tab, idx) => {
|
|
2116
2089
|
const isActive = activeTabIndex === idx;
|
|
2117
|
-
return /* @__PURE__ */
|
|
2090
|
+
return /* @__PURE__ */ React20.createElement(
|
|
2118
2091
|
"button",
|
|
2119
2092
|
{
|
|
2120
2093
|
key: tab.id,
|
|
@@ -2123,7 +2096,7 @@ var UniversalCardPage = ({
|
|
|
2123
2096
|
},
|
|
2124
2097
|
formatTabLabel(tab.type)
|
|
2125
2098
|
);
|
|
2126
|
-
}))), /* @__PURE__ */
|
|
2099
|
+
}))), /* @__PURE__ */ React20.createElement("div", { className: "w-full pt-2 pb-2 flex justify-center", style: { perspective: "1000px" } }, /* @__PURE__ */ React20.createElement(
|
|
2127
2100
|
"div",
|
|
2128
2101
|
{
|
|
2129
2102
|
onClick: () => {
|
|
@@ -2136,28 +2109,28 @@ var UniversalCardPage = ({
|
|
|
2136
2109
|
transform: isFlipped ? "rotateY(180deg)" : "rotateY(0deg)"
|
|
2137
2110
|
}
|
|
2138
2111
|
},
|
|
2139
|
-
!isBgLoaded && /* @__PURE__ */
|
|
2140
|
-
!isActivated && isBgLoaded && /* @__PURE__ */
|
|
2112
|
+
!isBgLoaded && /* @__PURE__ */ React20.createElement("div", { className: "absolute inset-0 w-full h-full bg-white rounded-2xl flex items-center justify-center z-50 " }, /* @__PURE__ */ React20.createElement(HugeiconsIcon14, { icon: Loading03Icon9, size: 28, className: "animate-spin text-black" })),
|
|
2113
|
+
!isActivated && isBgLoaded && /* @__PURE__ */ React20.createElement("div", { className: "absolute inset-0 z-40 w-full h-full rounded-2xl backdrop-blur-[2px] flex flex-col items-center justify-center ", style: { transform: "translateZ(1px)" } }, isUnactivated && /* @__PURE__ */ React20.createElement(
|
|
2141
2114
|
"button",
|
|
2142
2115
|
{
|
|
2143
2116
|
onClick: (e) => {
|
|
2144
2117
|
e.stopPropagation();
|
|
2145
|
-
|
|
2118
|
+
router.push(`${actionPath}${activeCard.id}`);
|
|
2146
2119
|
},
|
|
2147
2120
|
className: "px-6 py-2 bg-white/25 text-white text-[11px] rounded-full transition-all outline-none active:scale-95"
|
|
2148
2121
|
},
|
|
2149
2122
|
"Activate Card"
|
|
2150
|
-
), isDead && /* @__PURE__ */
|
|
2123
|
+
), isDead && /* @__PURE__ */ React20.createElement(
|
|
2151
2124
|
"button",
|
|
2152
2125
|
{
|
|
2153
2126
|
onClick: (e) => {
|
|
2154
2127
|
e.stopPropagation();
|
|
2155
|
-
|
|
2128
|
+
router.push(`${actionPath}${activeCard.id}`);
|
|
2156
2129
|
},
|
|
2157
2130
|
className: "px-6 py-2 bg-white/25 text-white text-[11px] rounded-full transition-all outline-none active:scale-95"
|
|
2158
2131
|
},
|
|
2159
2132
|
"Create Card"
|
|
2160
|
-
), isFrozen && /* @__PURE__ */
|
|
2133
|
+
), isFrozen && /* @__PURE__ */ React20.createElement(
|
|
2161
2134
|
"button",
|
|
2162
2135
|
{
|
|
2163
2136
|
onClick: (e) => {
|
|
@@ -2167,24 +2140,24 @@ var UniversalCardPage = ({
|
|
|
2167
2140
|
disabled: isOverlayActionLoading,
|
|
2168
2141
|
className: "px-6 py-2.5 bg-white/35 text-white text-[12px] rounded-full transition-all outline-none active:scale-95 flex items-center gap-2 disabled:opacity-80"
|
|
2169
2142
|
},
|
|
2170
|
-
isOverlayActionLoading ? /* @__PURE__ */
|
|
2143
|
+
isOverlayActionLoading ? /* @__PURE__ */ React20.createElement(HugeiconsIcon14, { icon: Loading03Icon9, size: 16, className: "animate-spin" }) : "Unfreeze Card"
|
|
2171
2144
|
)),
|
|
2172
|
-
/* @__PURE__ */
|
|
2145
|
+
/* @__PURE__ */ React20.createElement(
|
|
2173
2146
|
"div",
|
|
2174
2147
|
{
|
|
2175
2148
|
className: `absolute inset-0 w-full h-full rounded-2xl overflow-hidden transition-all duration-700 ${isBgLoaded ? "opacity-100 scale-100" : "opacity-0 scale-105"}`,
|
|
2176
2149
|
style: { backfaceVisibility: "hidden" }
|
|
2177
2150
|
},
|
|
2178
|
-
/* @__PURE__ */
|
|
2151
|
+
/* @__PURE__ */ React20.createElement(
|
|
2179
2152
|
"div",
|
|
2180
2153
|
{
|
|
2181
2154
|
className: "absolute inset-0 bg-cover bg-center",
|
|
2182
2155
|
style: { backgroundImage: `url(${activeCard.cardBgSrc}), linear-gradient(to bottom right, #111, #333)` }
|
|
2183
2156
|
}
|
|
2184
2157
|
),
|
|
2185
|
-
/* @__PURE__ */
|
|
2158
|
+
/* @__PURE__ */ React20.createElement("div", { className: "relative z-10 w-full h-full p-5 flex flex-col justify-between" }, /* @__PURE__ */ React20.createElement("div", { className: "flex items-start w-full gap-4" }, activeCard.companyLogoSrc && /* @__PURE__ */ React20.createElement("img", { src: activeCard.companyLogoSrc, alt: "Company Logo", className: "h-10 w-auto max-w-30 object-contain opacity-90" })), /* @__PURE__ */ React20.createElement("div", { className: "flex justify-between items-end w-full" }, /* @__PURE__ */ React20.createElement("div", { className: "flex flex-col gap-1" }, /* @__PURE__ */ React20.createElement("span", { className: "text-[9px] text-white/60 tracking-widest " }, "Card Number"), /* @__PURE__ */ React20.createElement("span", { className: "text-[12px] text-white tracking-widest font-light" }, displayCardNumber)), activeCard.networkLogoSrc && /* @__PURE__ */ React20.createElement("img", { src: activeCard.networkLogoSrc, alt: "Network Logo", className: "h-10 w-auto max-w-20 object-contain opacity-90" })))
|
|
2186
2159
|
),
|
|
2187
|
-
/* @__PURE__ */
|
|
2160
|
+
/* @__PURE__ */ React20.createElement(
|
|
2188
2161
|
"div",
|
|
2189
2162
|
{
|
|
2190
2163
|
className: `absolute inset-0 w-full h-full rounded-2xl overflow-hidden transition-all duration-700 ${isBgLoaded ? "opacity-100 scale-100" : "opacity-0 scale-105"}`,
|
|
@@ -2193,17 +2166,17 @@ var UniversalCardPage = ({
|
|
|
2193
2166
|
transform: "rotateY(180deg)"
|
|
2194
2167
|
}
|
|
2195
2168
|
},
|
|
2196
|
-
/* @__PURE__ */
|
|
2169
|
+
/* @__PURE__ */ React20.createElement(
|
|
2197
2170
|
"div",
|
|
2198
2171
|
{
|
|
2199
2172
|
className: "absolute inset-0 bg-cover bg-center",
|
|
2200
2173
|
style: { backgroundImage: `url(${activeCard.cardBgSrc}), linear-gradient(to bottom right, #111, #333)` }
|
|
2201
2174
|
}
|
|
2202
2175
|
),
|
|
2203
|
-
/* @__PURE__ */
|
|
2204
|
-
/* @__PURE__ */
|
|
2176
|
+
/* @__PURE__ */ React20.createElement("div", { className: "absolute top-6 left-0 right-0 h-10 bg-black/80 w-full" }),
|
|
2177
|
+
/* @__PURE__ */ React20.createElement("div", { className: "relative z-10 w-full h-full p-5 flex flex-col justify-end" }, /* @__PURE__ */ React20.createElement("div", { className: "w-full text-center mb-6" }, /* @__PURE__ */ React20.createElement("span", { className: "text-white text-3xl italic tracking-wide opacity-90", style: { fontFamily: "'Whisper', cursive" } }, activeCard.cardHolderName)), /* @__PURE__ */ React20.createElement("div", { className: "flex justify-between w-full max-w-[80%]" }, /* @__PURE__ */ React20.createElement("div", { className: "flex flex-col" }, /* @__PURE__ */ React20.createElement("span", { className: "text-[9px] text-white/60 tracking-widest " }, "Expiry"), /* @__PURE__ */ React20.createElement("span", { className: "text-[12px] text-white font-light" }, displayExpiry)), /* @__PURE__ */ React20.createElement("div", { className: "flex flex-col" }, /* @__PURE__ */ React20.createElement("span", { className: "text-[9px] text-white/60 tracking-widest " }, "CVV"), /* @__PURE__ */ React20.createElement("span", { className: "text-[12px] text-white font-light" }, displayCvv))))
|
|
2205
2178
|
)
|
|
2206
|
-
)), /* @__PURE__ */
|
|
2179
|
+
)), /* @__PURE__ */ React20.createElement("p", { className: "w-full text-center text-xs text-neutral-400 mb-6 mt-1" }, isActivated ? "Tap to flip card" : "Action Required"), /* @__PURE__ */ React20.createElement("div", { className: "w-full flex flex-col gap-4" }, /* @__PURE__ */ React20.createElement("div", { className: "w-full bg-white rounded-2xl overflow-hidden" }, /* @__PURE__ */ React20.createElement(
|
|
2207
2180
|
MenuRow,
|
|
2208
2181
|
{
|
|
2209
2182
|
icon: ViewOffSlashIcon2,
|
|
@@ -2215,7 +2188,7 @@ var UniversalCardPage = ({
|
|
|
2215
2188
|
toggleLoading: isRevealing,
|
|
2216
2189
|
disabled: revealDisabled
|
|
2217
2190
|
}
|
|
2218
|
-
), /* @__PURE__ */
|
|
2191
|
+
), /* @__PURE__ */ React20.createElement(
|
|
2219
2192
|
MenuRow,
|
|
2220
2193
|
{
|
|
2221
2194
|
icon: SnowIcon,
|
|
@@ -2227,7 +2200,7 @@ var UniversalCardPage = ({
|
|
|
2227
2200
|
toggleLoading: isFreezing,
|
|
2228
2201
|
disabled: freezeDisabled
|
|
2229
2202
|
}
|
|
2230
|
-
), /* @__PURE__ */
|
|
2203
|
+
), /* @__PURE__ */ React20.createElement(
|
|
2231
2204
|
MenuRow,
|
|
2232
2205
|
{
|
|
2233
2206
|
icon: SlidersHorizontalIcon,
|
|
@@ -2239,7 +2212,7 @@ var UniversalCardPage = ({
|
|
|
2239
2212
|
disabled: actionsDisabled,
|
|
2240
2213
|
isLast: true
|
|
2241
2214
|
}
|
|
2242
|
-
)), /* @__PURE__ */
|
|
2215
|
+
)), /* @__PURE__ */ React20.createElement("div", { className: "w-full bg-white rounded-2xl overflow-hidden" }, /* @__PURE__ */ React20.createElement(
|
|
2243
2216
|
MenuRow,
|
|
2244
2217
|
{
|
|
2245
2218
|
icon: Delete02Icon,
|
|
@@ -2251,7 +2224,7 @@ var UniversalCardPage = ({
|
|
|
2251
2224
|
disabled: actionsDisabled,
|
|
2252
2225
|
isLast: true
|
|
2253
2226
|
}
|
|
2254
|
-
))), /* @__PURE__ */
|
|
2227
|
+
))), /* @__PURE__ */ React20.createElement(
|
|
2255
2228
|
ConfirmationDialog,
|
|
2256
2229
|
{
|
|
2257
2230
|
isOpen: showDeleteDialog,
|
|
@@ -2263,7 +2236,7 @@ var UniversalCardPage = ({
|
|
|
2263
2236
|
onClose: () => setShowDeleteDialog(false),
|
|
2264
2237
|
onConfirm: confirmDelete
|
|
2265
2238
|
}
|
|
2266
|
-
), /* @__PURE__ */
|
|
2239
|
+
), /* @__PURE__ */ React20.createElement(
|
|
2267
2240
|
PinDialerBottomSheet,
|
|
2268
2241
|
{
|
|
2269
2242
|
isOpen: showPinDialer,
|
|
@@ -2272,18 +2245,6 @@ var UniversalCardPage = ({
|
|
|
2272
2245
|
onClose: () => setShowPinDialer(false),
|
|
2273
2246
|
onComplete: handlePinComplete
|
|
2274
2247
|
}
|
|
2275
|
-
), /* @__PURE__ */ React21.createElement(
|
|
2276
|
-
CardActionDialog,
|
|
2277
|
-
{
|
|
2278
|
-
isOpen: showCardActionDialog,
|
|
2279
|
-
card: activeCard,
|
|
2280
|
-
actionType: cardActionType,
|
|
2281
|
-
onClose: () => setShowCardActionDialog(false),
|
|
2282
|
-
onProceed: () => {
|
|
2283
|
-
if (onCardAction) onCardAction(activeCard.id, cardActionType);
|
|
2284
|
-
setShowCardActionDialog(false);
|
|
2285
|
-
}
|
|
2286
|
-
}
|
|
2287
2248
|
));
|
|
2288
2249
|
};
|
|
2289
2250
|
var MenuRow = ({
|
|
@@ -2298,20 +2259,20 @@ var MenuRow = ({
|
|
|
2298
2259
|
toggleState = false,
|
|
2299
2260
|
toggleLoading = false,
|
|
2300
2261
|
disabled = false
|
|
2301
|
-
}) => /* @__PURE__ */
|
|
2262
|
+
}) => /* @__PURE__ */ React20.createElement(
|
|
2302
2263
|
"div",
|
|
2303
2264
|
{
|
|
2304
2265
|
onClick: disabled ? void 0 : onClick,
|
|
2305
2266
|
className: `flex items-center p-3 transition-colors ${!isLast ? "" : ""} ${disabled ? "opacity-40 cursor-not-allowed" : "cursor-pointer hover:bg-neutral-50"}`
|
|
2306
2267
|
},
|
|
2307
|
-
/* @__PURE__ */
|
|
2308
|
-
/* @__PURE__ */
|
|
2309
|
-
isToggle ? /* @__PURE__ */
|
|
2268
|
+
/* @__PURE__ */ React20.createElement("div", { className: "w-9 h-9 rounded-full border border-neutral-200 flex items-center justify-center shrink-0 mr-4" }, /* @__PURE__ */ React20.createElement(HugeiconsIcon14, { icon, size: 16, className: iconColor })),
|
|
2269
|
+
/* @__PURE__ */ React20.createElement("div", { className: "flex-1 min-w-0" }, /* @__PURE__ */ React20.createElement("p", { className: `text-[13px] truncate ${titleColor}` }, title), /* @__PURE__ */ React20.createElement("p", { className: "text-[11px] text-neutral-500 truncate" }, subtitle)),
|
|
2270
|
+
isToggle ? /* @__PURE__ */ React20.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__ */ React20.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__ */ React20.createElement(HugeiconsIcon14, { icon: Loading03Icon9, size: 10, className: "animate-spin text-black" }))) : /* @__PURE__ */ React20.createElement(HugeiconsIcon14, { icon: ArrowRight01Icon3, size: 18, className: "text-neutral-400 shrink-0 ml-2" })
|
|
2310
2271
|
);
|
|
2311
2272
|
|
|
2312
2273
|
// src/components/UniversalProfilePage.tsx
|
|
2313
|
-
import
|
|
2314
|
-
import { HugeiconsIcon as
|
|
2274
|
+
import React21, { useState as useState13 } from "react";
|
|
2275
|
+
import { HugeiconsIcon as HugeiconsIcon15 } from "@hugeicons/react";
|
|
2315
2276
|
import {
|
|
2316
2277
|
UserIcon as UserIcon2,
|
|
2317
2278
|
LockKeyIcon as LockKeyIcon2,
|
|
@@ -2359,7 +2320,7 @@ var UniversalProfilePage = ({
|
|
|
2359
2320
|
if (r.includes("platinum")) return "text-yellow-400";
|
|
2360
2321
|
return "text-neutral-400";
|
|
2361
2322
|
};
|
|
2362
|
-
return /* @__PURE__ */
|
|
2323
|
+
return /* @__PURE__ */ React21.createElement("div", { className: "w-full max-w-3xl mx-auto flex flex-col animate-in fade-in duration-300" }, /* @__PURE__ */ React21.createElement("div", { className: "pt-8 pb-4 flex flex-col items-center" }, /* @__PURE__ */ React21.createElement("div", { className: "w-22 h-22 rounded-full bg-white p-1 mb-4 flex items-center justify-center" }, /* @__PURE__ */ React21.createElement("div", { className: "relative w-full h-full rounded-full overflow-hidden bg-neutral-100 flex items-center justify-center" }, avatarSrc ? /* @__PURE__ */ React21.createElement(React21.Fragment, null, !isAvatarLoaded && /* @__PURE__ */ React21.createElement("div", { className: "absolute inset-0 flex items-center justify-center z-10 bg-neutral-100" }, /* @__PURE__ */ React21.createElement(HugeiconsIcon15, { icon: Loading03Icon10, size: 24, className: "animate-spin text-black" })), /* @__PURE__ */ React21.createElement(
|
|
2363
2324
|
"img",
|
|
2364
2325
|
{
|
|
2365
2326
|
src: avatarSrc,
|
|
@@ -2367,7 +2328,7 @@ var UniversalProfilePage = ({
|
|
|
2367
2328
|
onLoad: () => setIsAvatarLoaded(true),
|
|
2368
2329
|
className: `w-full h-full object-cover transition-opacity duration-300 ${isAvatarLoaded ? "opacity-100" : "opacity-0"}`
|
|
2369
2330
|
}
|
|
2370
|
-
)) : /* @__PURE__ */
|
|
2331
|
+
)) : /* @__PURE__ */ React21.createElement(HugeiconsIcon15, { icon: UserIcon2, size: 40, className: "text-neutral-300" }))), /* @__PURE__ */ React21.createElement("div", { className: "bg-white rounded-full px-4 py-2 flex items-center justify-center gap-2 mb-3" }, /* @__PURE__ */ React21.createElement("span", { className: "text-[12px] text-black" }, roleName), /* @__PURE__ */ React21.createElement("span", { className: getBadgeColorClass(roleName), "aria-hidden": true }, /* @__PURE__ */ React21.createElement("svg", { width: "15", height: "15", viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, /* @__PURE__ */ React21.createElement("g", { id: "SVGRepo_bgCarrier", strokeWidth: "0" }), /* @__PURE__ */ React21.createElement("g", { id: "SVGRepo_tracerCarrier", strokeLinecap: "round", strokeLinejoin: "round" }), /* @__PURE__ */ React21.createElement("g", { id: "SVGRepo_iconCarrier" }, " ", /* @__PURE__ */ React21.createElement("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M9.5924 3.20027C9.34888 3.4078 9.22711 3.51158 9.09706 3.59874C8.79896 3.79854 8.46417 3.93721 8.1121 4.00672C7.95851 4.03705 7.79903 4.04977 7.48008 4.07522C6.6787 4.13918 6.278 4.17115 5.94371 4.28923C5.17051 4.56233 4.56233 5.17051 4.28923 5.94371C4.17115 6.278 4.13918 6.6787 4.07522 7.48008C4.04977 7.79903 4.03705 7.95851 4.00672 8.1121C3.93721 8.46417 3.79854 8.79896 3.59874 9.09706C3.51158 9.22711 3.40781 9.34887 3.20027 9.5924C2.67883 10.2043 2.4181 10.5102 2.26522 10.8301C1.91159 11.57 1.91159 12.43 2.26522 13.1699C2.41811 13.4898 2.67883 13.7957 3.20027 14.4076C3.40778 14.6511 3.51158 14.7729 3.59874 14.9029C3.79854 15.201 3.93721 15.5358 4.00672 15.8879C4.03705 16.0415 4.04977 16.201 4.07522 16.5199C4.13918 17.3213 4.17115 17.722 4.28923 18.0563C4.56233 18.8295 5.17051 19.4377 5.94371 19.7108C6.278 19.8288 6.6787 19.8608 7.48008 19.9248C7.79903 19.9502 7.95851 19.963 8.1121 19.9933C8.46417 20.0628 8.79896 20.2015 9.09706 20.4013C9.22711 20.4884 9.34887 20.5922 9.5924 20.7997C10.2043 21.3212 10.5102 21.5819 10.8301 21.7348C11.57 22.0884 12.43 22.0884 13.1699 21.7348C13.4898 21.5819 13.7957 21.3212 14.4076 20.7997C14.6511 20.5922 14.7729 20.4884 14.9029 20.4013C15.201 20.2015 15.5358 20.0628 15.8879 19.9933C16.0415 19.963 16.201 19.9502 16.5199 19.9248C17.3213 19.8608 17.722 19.8288 18.0563 19.7108C18.8295 19.4377 19.4377 18.8295 19.7108 18.0563C19.8288 17.722 19.8608 17.3213 19.9248 16.5199C19.9502 16.201 19.963 16.0415 19.9933 15.8879C20.0628 15.5358 20.2015 15.201 20.4013 14.9029C20.4884 14.7729 20.5922 14.6511 20.7997 14.4076C21.3212 13.7957 21.5819 13.4898 21.7348 13.1699C22.0884 12.43 22.0884 11.57 21.7348 10.8301C21.5819 10.5102 21.3212 10.2043 20.7997 9.5924C20.5922 9.34887 20.4884 9.22711 20.4013 9.09706C20.2015 8.79896 20.0628 8.46417 19.9933 8.1121C19.963 7.95851 19.9502 7.79903 19.9248 7.48008C19.8608 6.6787 19.8288 6.278 19.7108 5.94371C19.4377 5.17051 18.8295 4.56233 18.0563 4.28923C17.722 4.17115 17.3213 4.13918 16.5199 4.07522C16.201 4.04977 16.0415 4.03705 15.8879 4.00672C15.5358 3.93721 15.201 3.79854 14.9029 3.59874C14.7729 3.51158 14.6511 3.40781 14.4076 3.20027C13.7957 2.67883 13.4898 2.41811 13.1699 2.26522C12.43 1.91159 11.57 1.91159 10.8301 2.26522C10.5102 2.4181 10.2043 2.67883 9.5924 3.20027ZM16.3735 9.86314C16.6913 9.5453 16.6913 9.03 16.3735 8.71216C16.0557 8.39433 15.5403 8.39433 15.2225 8.71216L10.3723 13.5624L8.77746 11.9676C8.45963 11.6498 7.94432 11.6498 7.62649 11.9676C7.30866 12.2854 7.30866 12.8007 7.62649 13.1186L9.79678 15.2889C10.1146 15.6067 10.6299 15.6067 10.9478 15.2889L16.3735 9.86314Z", fill: "currentColor" }), " ")))), /* @__PURE__ */ React21.createElement("span", { className: "text-[12px] text-neutral-500" }, memberSince)), /* @__PURE__ */ React21.createElement("div", { className: "w-full flex flex-col gap-4 mt-2" }, /* @__PURE__ */ React21.createElement("div", { className: "w-full bg-white rounded-2xl overflow-hidden" }, /* @__PURE__ */ React21.createElement(
|
|
2371
2332
|
MenuRow2,
|
|
2372
2333
|
{
|
|
2373
2334
|
icon: UserIcon2,
|
|
@@ -2375,7 +2336,7 @@ var UniversalProfilePage = ({
|
|
|
2375
2336
|
subtitle: "Your account details",
|
|
2376
2337
|
onClick: onAccountTap
|
|
2377
2338
|
}
|
|
2378
|
-
), /* @__PURE__ */
|
|
2339
|
+
), /* @__PURE__ */ React21.createElement(
|
|
2379
2340
|
MenuRow2,
|
|
2380
2341
|
{
|
|
2381
2342
|
icon: LockKeyIcon2,
|
|
@@ -2383,7 +2344,7 @@ var UniversalProfilePage = ({
|
|
|
2383
2344
|
subtitle: "2FA & authentication",
|
|
2384
2345
|
onClick: onSecurityTap
|
|
2385
2346
|
}
|
|
2386
|
-
), /* @__PURE__ */
|
|
2347
|
+
), /* @__PURE__ */ React21.createElement(
|
|
2387
2348
|
MenuRow2,
|
|
2388
2349
|
{
|
|
2389
2350
|
icon: ShieldUserIcon,
|
|
@@ -2391,7 +2352,7 @@ var UniversalProfilePage = ({
|
|
|
2391
2352
|
subtitle: "Manage web3 profile",
|
|
2392
2353
|
onClick: onDefiTap
|
|
2393
2354
|
}
|
|
2394
|
-
), /* @__PURE__ */
|
|
2355
|
+
), /* @__PURE__ */ React21.createElement(
|
|
2395
2356
|
MenuRow2,
|
|
2396
2357
|
{
|
|
2397
2358
|
icon: MessageQuestionIcon,
|
|
@@ -2400,7 +2361,7 @@ var UniversalProfilePage = ({
|
|
|
2400
2361
|
onClick: onHelpTap,
|
|
2401
2362
|
isLast: true
|
|
2402
2363
|
}
|
|
2403
|
-
)), /* @__PURE__ */
|
|
2364
|
+
)), /* @__PURE__ */ React21.createElement("div", { className: "w-full bg-white rounded-2xl overflow-hidden" }, /* @__PURE__ */ React21.createElement(
|
|
2404
2365
|
MenuRow2,
|
|
2405
2366
|
{
|
|
2406
2367
|
icon: UserIdVerificationIcon,
|
|
@@ -2408,7 +2369,7 @@ var UniversalProfilePage = ({
|
|
|
2408
2369
|
subtitle: "Account Verifications",
|
|
2409
2370
|
onClick: onVerificationsTap
|
|
2410
2371
|
}
|
|
2411
|
-
), /* @__PURE__ */
|
|
2372
|
+
), /* @__PURE__ */ React21.createElement(
|
|
2412
2373
|
MenuRow2,
|
|
2413
2374
|
{
|
|
2414
2375
|
icon: CrownIcon,
|
|
@@ -2416,7 +2377,7 @@ var UniversalProfilePage = ({
|
|
|
2416
2377
|
subtitle: "Referral & Rewards",
|
|
2417
2378
|
onClick: onExportTap
|
|
2418
2379
|
}
|
|
2419
|
-
), /* @__PURE__ */
|
|
2380
|
+
), /* @__PURE__ */ React21.createElement(
|
|
2420
2381
|
MenuRow2,
|
|
2421
2382
|
{
|
|
2422
2383
|
icon: LogoutCircle02Icon,
|
|
@@ -2425,7 +2386,7 @@ var UniversalProfilePage = ({
|
|
|
2425
2386
|
onClick: () => setShowLogoutDialog(true),
|
|
2426
2387
|
isLast: true
|
|
2427
2388
|
}
|
|
2428
|
-
)), /* @__PURE__ */
|
|
2389
|
+
)), /* @__PURE__ */ React21.createElement("div", { className: "w-full bg-white rounded-2xl overflow-hidden mb-4" }, /* @__PURE__ */ React21.createElement(
|
|
2429
2390
|
MenuRow2,
|
|
2430
2391
|
{
|
|
2431
2392
|
icon: UserRemove01Icon,
|
|
@@ -2434,7 +2395,7 @@ var UniversalProfilePage = ({
|
|
|
2434
2395
|
onClick: onDeleteTap,
|
|
2435
2396
|
isLast: true
|
|
2436
2397
|
}
|
|
2437
|
-
))), /* @__PURE__ */
|
|
2398
|
+
))), /* @__PURE__ */ React21.createElement(
|
|
2438
2399
|
ConfirmationDialog,
|
|
2439
2400
|
{
|
|
2440
2401
|
isOpen: showLogoutDialog,
|
|
@@ -2448,21 +2409,21 @@ var UniversalProfilePage = ({
|
|
|
2448
2409
|
}
|
|
2449
2410
|
));
|
|
2450
2411
|
};
|
|
2451
|
-
var MenuRow2 = ({ icon, title, subtitle, onClick, iconColor = "text-black", titleColor = "text-black", isLast = false }) => /* @__PURE__ */
|
|
2412
|
+
var MenuRow2 = ({ icon, title, subtitle, onClick, iconColor = "text-black", titleColor = "text-black", isLast = false }) => /* @__PURE__ */ React21.createElement(
|
|
2452
2413
|
"div",
|
|
2453
2414
|
{
|
|
2454
2415
|
onClick,
|
|
2455
2416
|
className: `flex items-center p-4 cursor-pointer hover:bg-neutral-50 transition-colors ${!isLast ? "" : ""}`
|
|
2456
2417
|
},
|
|
2457
|
-
/* @__PURE__ */
|
|
2458
|
-
/* @__PURE__ */
|
|
2459
|
-
/* @__PURE__ */
|
|
2418
|
+
/* @__PURE__ */ React21.createElement("div", { className: "w-9 h-9 rounded-full border border-neutral-200 flex items-center justify-center shrink-0 mr-4" }, /* @__PURE__ */ React21.createElement(HugeiconsIcon15, { icon, size: 16, className: iconColor })),
|
|
2419
|
+
/* @__PURE__ */ React21.createElement("div", { className: "flex-1 min-w-0" }, /* @__PURE__ */ React21.createElement("p", { className: `text-[13px] truncate ${titleColor}` }, title), /* @__PURE__ */ React21.createElement("p", { className: "text-[11px] text-neutral-500 truncate" }, subtitle)),
|
|
2420
|
+
/* @__PURE__ */ React21.createElement(HugeiconsIcon15, { icon: ArrowRight01Icon4, size: 18, className: "text-neutral-400 shrink-0 ml-2" })
|
|
2460
2421
|
);
|
|
2461
2422
|
|
|
2462
2423
|
// src/components/UniversalSidebar.tsx
|
|
2463
|
-
import
|
|
2424
|
+
import React22, { useState as useState14 } from "react";
|
|
2464
2425
|
import Link5 from "next/link";
|
|
2465
|
-
import { HugeiconsIcon as
|
|
2426
|
+
import { HugeiconsIcon as HugeiconsIcon16 } from "@hugeicons/react";
|
|
2466
2427
|
import {
|
|
2467
2428
|
LogoutCircle02Icon as LogoutCircle02Icon2
|
|
2468
2429
|
} from "@hugeicons/core-free-icons";
|
|
@@ -2488,10 +2449,10 @@ var UniversalSidebar = ({
|
|
|
2488
2449
|
setShowLogoutDialog(false);
|
|
2489
2450
|
}
|
|
2490
2451
|
};
|
|
2491
|
-
return /* @__PURE__ */
|
|
2452
|
+
return /* @__PURE__ */ React22.createElement(React22.Fragment, null, /* @__PURE__ */ React22.createElement("aside", { className: "hidden md:flex fixed top-0 left-0 h-screen w-20 flex-col z-40 overflow-y-auto custom-scrollbar" }, /* @__PURE__ */ React22.createElement("div", { className: "h-24 shrink-0" }), /* @__PURE__ */ React22.createElement("nav", { className: "flex-1 flex flex-col gap-3 px-2" }, navItems.map((item, index) => {
|
|
2492
2453
|
const isExactOrSubMatch = item.path === "/" || item.path === "/app" ? currentPath === "/" || currentPath === "/app" : currentPath === item.path || currentPath?.startsWith(`${item.path}/`);
|
|
2493
2454
|
const isCurrentRoute = isExactOrSubMatch || !hasActiveMatch && index === 0;
|
|
2494
|
-
return /* @__PURE__ */
|
|
2455
|
+
return /* @__PURE__ */ React22.createElement(
|
|
2495
2456
|
Link5,
|
|
2496
2457
|
{
|
|
2497
2458
|
key: item.name,
|
|
@@ -2500,8 +2461,8 @@ var UniversalSidebar = ({
|
|
|
2500
2461
|
className: `flex items-center justify-center w-12 h-12 mx-auto rounded-full transition-all outline-none group shrink-0 ${isCurrentRoute ? "bg-white text-black" : "text-neutral-500 hover:text-black hover:bg-white/50"}`,
|
|
2501
2462
|
title: item.name
|
|
2502
2463
|
},
|
|
2503
|
-
/* @__PURE__ */
|
|
2504
|
-
|
|
2464
|
+
/* @__PURE__ */ React22.createElement(
|
|
2465
|
+
HugeiconsIcon16,
|
|
2505
2466
|
{
|
|
2506
2467
|
icon: item.icon,
|
|
2507
2468
|
size: 20,
|
|
@@ -2509,14 +2470,14 @@ var UniversalSidebar = ({
|
|
|
2509
2470
|
}
|
|
2510
2471
|
)
|
|
2511
2472
|
);
|
|
2512
|
-
})), /* @__PURE__ */
|
|
2473
|
+
})), /* @__PURE__ */ React22.createElement("div", { className: "p-4 shrink-0 flex flex-col items-center gap-2 mb-4" }, showLogoutAction && /* @__PURE__ */ React22.createElement(
|
|
2513
2474
|
"button",
|
|
2514
2475
|
{
|
|
2515
2476
|
onClick: () => setShowLogoutDialog(true),
|
|
2516
2477
|
className: "w-12 h-12 rounded-full flex items-center justify-center text-neutral-500 hover:bg-white/50 transition-all outline-none"
|
|
2517
2478
|
},
|
|
2518
|
-
/* @__PURE__ */
|
|
2519
|
-
))), showLogoutAction && /* @__PURE__ */
|
|
2479
|
+
/* @__PURE__ */ React22.createElement(HugeiconsIcon16, { icon: LogoutCircle02Icon2, size: 20 })
|
|
2480
|
+
))), showLogoutAction && /* @__PURE__ */ React22.createElement(
|
|
2520
2481
|
ConfirmationDialog,
|
|
2521
2482
|
{
|
|
2522
2483
|
isOpen: showLogoutDialog,
|
|
@@ -2532,12 +2493,12 @@ var UniversalSidebar = ({
|
|
|
2532
2493
|
};
|
|
2533
2494
|
|
|
2534
2495
|
// src/components/HeroSection.tsx
|
|
2535
|
-
import
|
|
2496
|
+
import React24, { useState as useState16, useEffect as useEffect10, useRef as useRef4 } from "react";
|
|
2536
2497
|
import Link6 from "next/link";
|
|
2537
2498
|
import Image3 from "next/image";
|
|
2538
2499
|
|
|
2539
2500
|
// src/components/WaitlistDialog.tsx
|
|
2540
|
-
import
|
|
2501
|
+
import React23, { useState as useState15 } from "react";
|
|
2541
2502
|
import { toast as toast6 } from "react-hot-toast";
|
|
2542
2503
|
var WaitlistDialog = ({ isOpen, onClose }) => {
|
|
2543
2504
|
const [email, setEmail] = useState15("");
|
|
@@ -2572,19 +2533,19 @@ var WaitlistDialog = ({ isOpen, onClose }) => {
|
|
|
2572
2533
|
setIsLoading(false);
|
|
2573
2534
|
}
|
|
2574
2535
|
};
|
|
2575
|
-
return /* @__PURE__ */
|
|
2536
|
+
return /* @__PURE__ */ React23.createElement("div", { className: "fixed inset-0 z-100 flex items-center justify-center p-4 bg-black/40" }, /* @__PURE__ */ React23.createElement("div", { className: "absolute inset-0", onClick: !isLoading ? onClose : void 0 }), /* @__PURE__ */ React23.createElement(
|
|
2576
2537
|
"div",
|
|
2577
2538
|
{
|
|
2578
2539
|
className: "w-full max-w-md bg-white rounded-2xl shadow-2xl overflow-hidden relative z-10 animate-in fade-in zoom-in-95 duration-200"
|
|
2579
2540
|
},
|
|
2580
|
-
/* @__PURE__ */
|
|
2541
|
+
/* @__PURE__ */ React23.createElement(
|
|
2581
2542
|
"button",
|
|
2582
2543
|
{
|
|
2583
2544
|
onClick: onClose,
|
|
2584
2545
|
disabled: isLoading,
|
|
2585
2546
|
className: "absolute top-4 right-4 p-2 text-neutral-700 hover:text-neutral-400 transition-colors disabled:opacity-50 outline-none"
|
|
2586
2547
|
},
|
|
2587
|
-
/* @__PURE__ */
|
|
2548
|
+
/* @__PURE__ */ React23.createElement(
|
|
2588
2549
|
"svg",
|
|
2589
2550
|
{
|
|
2590
2551
|
xmlns: "http://www.w3.org/2000/svg",
|
|
@@ -2597,11 +2558,11 @@ var WaitlistDialog = ({ isOpen, onClose }) => {
|
|
|
2597
2558
|
strokeLinecap: "round",
|
|
2598
2559
|
strokeLinejoin: "round"
|
|
2599
2560
|
},
|
|
2600
|
-
/* @__PURE__ */
|
|
2601
|
-
/* @__PURE__ */
|
|
2561
|
+
/* @__PURE__ */ React23.createElement("path", { d: "M18 6 6 18" }),
|
|
2562
|
+
/* @__PURE__ */ React23.createElement("path", { d: "m6 6 12 12" })
|
|
2602
2563
|
)
|
|
2603
2564
|
),
|
|
2604
|
-
/* @__PURE__ */
|
|
2565
|
+
/* @__PURE__ */ React23.createElement("div", { className: "p-6 sm:p-8" }, /* @__PURE__ */ React23.createElement("div", { className: "mb-8 mt-2" }, /* @__PURE__ */ React23.createElement("h2", { className: "text-2xl text-black tracking-tight mb-2" }, "Join the Waitlist"), /* @__PURE__ */ React23.createElement("p", { className: "text-[13px] text-neutral-500 leading-relaxed" }, "Be the first to experience the future of Web3 freedom. Secure your early access spot today.")), /* @__PURE__ */ React23.createElement("form", { onSubmit: handleSubmit, className: "flex flex-col gap-8" }, /* @__PURE__ */ React23.createElement(
|
|
2605
2566
|
TextInput,
|
|
2606
2567
|
{
|
|
2607
2568
|
label: "Email ID",
|
|
@@ -2611,7 +2572,7 @@ var WaitlistDialog = ({ isOpen, onClose }) => {
|
|
|
2611
2572
|
placeholder: "name@example.com",
|
|
2612
2573
|
disabled: isLoading
|
|
2613
2574
|
}
|
|
2614
|
-
), /* @__PURE__ */
|
|
2575
|
+
), /* @__PURE__ */ React23.createElement(
|
|
2615
2576
|
ThreeDActionButton,
|
|
2616
2577
|
{
|
|
2617
2578
|
type: "submit",
|
|
@@ -2669,7 +2630,7 @@ var HeroSection = ({
|
|
|
2669
2630
|
setIsWaitlistOpen(true);
|
|
2670
2631
|
}
|
|
2671
2632
|
};
|
|
2672
|
-
return /* @__PURE__ */
|
|
2633
|
+
return /* @__PURE__ */ React24.createElement("div", { className: "w-screen min-h-screen flex justify-center items-center p-4" }, /* @__PURE__ */ React24.createElement("section", { className: "relative h-[95vh] w-full overflow-hidden rounded-2xl " }, bgVideoSrc ? /* @__PURE__ */ React24.createElement(
|
|
2673
2634
|
"video",
|
|
2674
2635
|
{
|
|
2675
2636
|
src: bgVideoSrc,
|
|
@@ -2680,7 +2641,7 @@ var HeroSection = ({
|
|
|
2680
2641
|
playsInline: true,
|
|
2681
2642
|
className: "absolute inset-0 h-full w-full object-cover z-0"
|
|
2682
2643
|
}
|
|
2683
|
-
) : bgImageSrc ? /* @__PURE__ */
|
|
2644
|
+
) : bgImageSrc ? /* @__PURE__ */ React24.createElement(
|
|
2684
2645
|
Image3,
|
|
2685
2646
|
{
|
|
2686
2647
|
src: bgImageSrc,
|
|
@@ -2689,7 +2650,7 @@ var HeroSection = ({
|
|
|
2689
2650
|
priority: true,
|
|
2690
2651
|
className: "absolute inset-0 h-full w-full object-cover z-0"
|
|
2691
2652
|
}
|
|
2692
|
-
) : null, /* @__PURE__ */
|
|
2653
|
+
) : null, /* @__PURE__ */ React24.createElement(
|
|
2693
2654
|
"div",
|
|
2694
2655
|
{
|
|
2695
2656
|
className: "pointer-events-none absolute inset-0 z-10 opacity-[0.7] mix-blend-overlay",
|
|
@@ -2697,15 +2658,15 @@ var HeroSection = ({
|
|
|
2697
2658
|
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")`
|
|
2698
2659
|
}
|
|
2699
2660
|
}
|
|
2700
|
-
), /* @__PURE__ */
|
|
2661
|
+
), /* @__PURE__ */ React24.createElement("div", { className: "pointer-events-none absolute inset-0 bg-linear-to-b from-black/30 via-transparent to-black/80 z-10" }), /* @__PURE__ */ React24.createElement("div", { className: "absolute bottom-0 left-0 right-0 px-4 pb-4 sm:px-6 md:px-10 z-20" }, /* @__PURE__ */ React24.createElement("div", { className: "grid grid-cols-12 items-end gap-4" }, /* @__PURE__ */ React24.createElement("div", { className: "col-span-12 lg:col-span-8" }, /* @__PURE__ */ React24.createElement(
|
|
2701
2662
|
"h1",
|
|
2702
2663
|
{
|
|
2703
2664
|
ref: titleRef,
|
|
2704
2665
|
className: "leading-[0.85] tracking-[-0.07em] text-[18.2vw] sm:text-[16.8vw] md:text-[15.4vw] lg:text-[14vw] xl:text-[13.3vw] 2xl:text-[14vw] text-[#ffffff]"
|
|
2705
2666
|
},
|
|
2706
|
-
/* @__PURE__ */
|
|
2707
|
-
)), /* @__PURE__ */
|
|
2708
|
-
/* @__PURE__ */
|
|
2667
|
+
/* @__PURE__ */ React24.createElement("div", { className: "inline-flex flex-wrap" }, /* @__PURE__ */ React24.createElement("span", { className: `inline-block relative transition-all duration-1000 ${isAnimating ? "opacity-100 translate-y-0" : "opacity-0 translate-y-10"}` }, titlePrefix, titlePrefix && /* @__PURE__ */ React24.createElement("br", null), highlightText, /* @__PURE__ */ React24.createElement("span", { className: "absolute top-[0.65em] right-[-0.3em] text-[0.31em] text-[#ffffff]/70" }, "*")))
|
|
2668
|
+
)), /* @__PURE__ */ React24.createElement("div", { className: "col-span-12 flex flex-col gap-5 pb-6 lg:col-span-4 lg:pb-10" }, subtitle && /* @__PURE__ */ React24.createElement("p", { className: "text-xs text-[#ffffff]/70 sm:text-sm md:text-base leading-[1.2] max-w-md transition-opacity duration-1000 delay-300" }, subtitle), /* @__PURE__ */ React24.createElement("div", { className: "flex flex-col sm:flex-row items-start sm:items-center gap-4" }, ctaText && // Changed from <button> to <Link> so it actually navigates!
|
|
2669
|
+
/* @__PURE__ */ React24.createElement(
|
|
2709
2670
|
Link6,
|
|
2710
2671
|
{
|
|
2711
2672
|
href: isWaitlist ? "#" : ctaHref || "#",
|
|
@@ -2713,15 +2674,15 @@ var HeroSection = ({
|
|
|
2713
2674
|
className: "group inline-flex h-10 items-center gap-2 self-start rounded-full bg-[#ffffff] pl-5 pr-1 text-xs text-black transition-all hover:gap-3"
|
|
2714
2675
|
},
|
|
2715
2676
|
ctaText,
|
|
2716
|
-
/* @__PURE__ */
|
|
2717
|
-
), secondaryCtaText && secondaryCtaHref && /* @__PURE__ */
|
|
2677
|
+
/* @__PURE__ */ React24.createElement("span", { className: "flex h-8 w-8 items-center justify-center rounded-full bg-black transition-transform group-hover:scale-110" }, /* @__PURE__ */ React24.createElement("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", className: "lucide lucide-arrow-right h-4 w-4 text-[#ffffff]" }, /* @__PURE__ */ React24.createElement("path", { d: "M5 12h14" }), /* @__PURE__ */ React24.createElement("path", { d: "m12 5 7 7-7 7" })))
|
|
2678
|
+
), secondaryCtaText && secondaryCtaHref && /* @__PURE__ */ React24.createElement(
|
|
2718
2679
|
Link6,
|
|
2719
2680
|
{
|
|
2720
2681
|
href: secondaryCtaHref,
|
|
2721
2682
|
className: "inline-flex h-10 items-center self-start justify-center text-xs tracking-wide rounded-full px-6 border border-[#ffffff]/30 text-[#ffffff] hover:bg-[#ffffff]/10 transition-colors"
|
|
2722
2683
|
},
|
|
2723
2684
|
secondaryCtaText
|
|
2724
|
-
)), showApps && appLogos && appLogos.length > 0 && /* @__PURE__ */
|
|
2685
|
+
)), showApps && appLogos && appLogos.length > 0 && /* @__PURE__ */ React24.createElement("div", { className: "flex flex-col gap-3 mt-4" }, appsText && /* @__PURE__ */ React24.createElement("span", { className: "text-[10px] tracking-widest text-[#ffffff]/50 " }, appsText), /* @__PURE__ */ React24.createElement("div", { className: "flex items-center gap-4" }, appLogos.map((logo, idx) => /* @__PURE__ */ React24.createElement("div", { key: idx, className: "relative h-6 w-6 sm:h-7 sm:w-7 opacity-70 hover:opacity-100 transition-opacity invert" }, /* @__PURE__ */ React24.createElement(
|
|
2725
2686
|
Image3,
|
|
2726
2687
|
{
|
|
2727
2688
|
src: logo.src,
|
|
@@ -2730,7 +2691,7 @@ var HeroSection = ({
|
|
|
2730
2691
|
height: 28,
|
|
2731
2692
|
className: "object-contain"
|
|
2732
2693
|
}
|
|
2733
|
-
))))))))), /* @__PURE__ */
|
|
2694
|
+
))))))))), /* @__PURE__ */ React24.createElement(
|
|
2734
2695
|
WaitlistDialog,
|
|
2735
2696
|
{
|
|
2736
2697
|
isOpen: isWaitlistOpen,
|
|
@@ -2740,8 +2701,8 @@ var HeroSection = ({
|
|
|
2740
2701
|
};
|
|
2741
2702
|
|
|
2742
2703
|
// src/components/AppBento2.tsx
|
|
2743
|
-
import
|
|
2744
|
-
import { HugeiconsIcon as
|
|
2704
|
+
import React25, { useState as useState17, useEffect as useEffect11, useRef as useRef5 } from "react";
|
|
2705
|
+
import { HugeiconsIcon as HugeiconsIcon17 } from "@hugeicons/react";
|
|
2745
2706
|
var AppBento2 = ({ tagline, headline, features }) => {
|
|
2746
2707
|
const [isAnimating, setIsAnimating] = useState17(false);
|
|
2747
2708
|
const titleRef = useRef5(null);
|
|
@@ -2763,7 +2724,7 @@ var AppBento2 = ({ tagline, headline, features }) => {
|
|
|
2763
2724
|
}
|
|
2764
2725
|
return () => observer.disconnect();
|
|
2765
2726
|
}, []);
|
|
2766
|
-
return /* @__PURE__ */
|
|
2727
|
+
return /* @__PURE__ */ React25.createElement("div", { className: "w-full py-16" }, /* @__PURE__ */ React25.createElement("div", { className: "w-full flex justify-center px-4" }, /* @__PURE__ */ React25.createElement("div", { className: "max-w-6xl w-full" }, /* @__PURE__ */ React25.createElement("div", { className: "relative overflow-hidden mb-12 text-left" }, /* @__PURE__ */ React25.createElement("div", { className: "relative z-10" }, /* @__PURE__ */ React25.createElement("span", { className: "text-[11px] tracking-[0.4em] text-neutral-500 block mb-4 " }, tagline), /* @__PURE__ */ React25.createElement(
|
|
2767
2728
|
"h2",
|
|
2768
2729
|
{
|
|
2769
2730
|
ref: titleRef,
|
|
@@ -2771,7 +2732,7 @@ var AppBento2 = ({ tagline, headline, features }) => {
|
|
|
2771
2732
|
style: isAnimating ? { animationIterationCount: 1 } : {}
|
|
2772
2733
|
},
|
|
2773
2734
|
headline
|
|
2774
|
-
))), /* @__PURE__ */
|
|
2735
|
+
))), /* @__PURE__ */ React25.createElement("div", { className: "grid grid-cols-1 lg:grid-cols-6 gap-6" }, features.map((f, i) => {
|
|
2775
2736
|
const isWhite = i === 0;
|
|
2776
2737
|
const isBlack = i === 1;
|
|
2777
2738
|
const isNeutral = i === 2;
|
|
@@ -2793,33 +2754,33 @@ var AppBento2 = ({ tagline, headline, features }) => {
|
|
|
2793
2754
|
const textColor = isBlack ? "text-white" : "text-black";
|
|
2794
2755
|
const subTextColor = isBlack ? "text-neutral-300" : "text-neutral-600";
|
|
2795
2756
|
const labelColor = isBlack ? "text-neutral-400" : "text-neutral-500";
|
|
2796
|
-
return /* @__PURE__ */
|
|
2757
|
+
return /* @__PURE__ */ React25.createElement(
|
|
2797
2758
|
"div",
|
|
2798
2759
|
{
|
|
2799
2760
|
key: i,
|
|
2800
2761
|
className: `relative rounded-2xl overflow-hidden p-8 flex flex-col min-h-75 transition-all duration-500 group text-left ${getBgStyle()} ${f.size}`,
|
|
2801
2762
|
style: { boxShadow: getShadowStyle() }
|
|
2802
2763
|
},
|
|
2803
|
-
/* @__PURE__ */
|
|
2764
|
+
/* @__PURE__ */ React25.createElement(
|
|
2804
2765
|
"div",
|
|
2805
2766
|
{
|
|
2806
2767
|
className: "absolute inset-0 pointer-events-none opacity-[0.03] z-0",
|
|
2807
2768
|
style: { 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.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E")` }
|
|
2808
2769
|
}
|
|
2809
2770
|
),
|
|
2810
|
-
isBlack && /* @__PURE__ */
|
|
2811
|
-
/* @__PURE__ */
|
|
2812
|
-
/* @__PURE__ */
|
|
2771
|
+
isBlack && /* @__PURE__ */ React25.createElement("span", { className: "absolute inset-0 rounded-2xl bg-linear-to-b from-white/10 via-white/5 to-transparent pointer-events-none z-10" }),
|
|
2772
|
+
/* @__PURE__ */ React25.createElement("div", { className: "absolute inset-0 overflow-hidden pointer-events-none z-0" }, /* @__PURE__ */ React25.createElement("div", { className: `absolute -bottom-8 -right-8 transform group-hover:scale-110 transition-transform duration-700 ease-out ${isBlack ? "text-white/5" : "text-black/5"}` }, /* @__PURE__ */ React25.createElement(HugeiconsIcon17, { icon: f.icon, size: 180 }))),
|
|
2773
|
+
/* @__PURE__ */ React25.createElement("div", { className: "relative z-10 w-full h-full flex flex-col pointer-events-auto" }, /* @__PURE__ */ React25.createElement("div", { className: "flex items-center justify-between mb-8" }, /* @__PURE__ */ React25.createElement("span", { className: `text-[9px] tracking-widest ${labelColor}` }, f.label), /* @__PURE__ */ React25.createElement("div", { className: `p-2 rounded-full transition-colors ${isBlack ? "bg-white/10" : "bg-white/50 backdrop-blur-sm"}` }, /* @__PURE__ */ React25.createElement(HugeiconsIcon17, { icon: f.icon, size: 20, className: textColor }))), /* @__PURE__ */ React25.createElement("div", { className: "mt-auto" }, /* @__PURE__ */ React25.createElement("h3", { className: `text-xl mb-2 tracking-tight ${textColor}` }, f.title), /* @__PURE__ */ React25.createElement("p", { className: `text-[13px] leading-relaxed max-w-sm ${subTextColor}` }, f.desc)))
|
|
2813
2774
|
);
|
|
2814
2775
|
})))));
|
|
2815
2776
|
};
|
|
2816
2777
|
|
|
2817
2778
|
// src/components/UniversalSecurityPage.tsx
|
|
2818
|
-
import
|
|
2779
|
+
import React26, { useState as useState18, useRef as useRef6 } from "react";
|
|
2819
2780
|
import toast7 from "react-hot-toast";
|
|
2820
|
-
import { HugeiconsIcon as
|
|
2781
|
+
import { HugeiconsIcon as HugeiconsIcon18 } from "@hugeicons/react";
|
|
2821
2782
|
import {
|
|
2822
|
-
CancelCircleIcon as
|
|
2783
|
+
CancelCircleIcon as CancelCircleIcon6,
|
|
2823
2784
|
Loading03Icon as Loading03Icon11,
|
|
2824
2785
|
Copy01Icon as Copy01Icon3,
|
|
2825
2786
|
ArrowLeft01Icon as ArrowLeft01Icon6,
|
|
@@ -2992,15 +2953,15 @@ var UniversalSecurityPage = ({
|
|
|
2992
2953
|
setIsSubmitting(false);
|
|
2993
2954
|
}
|
|
2994
2955
|
};
|
|
2995
|
-
return /* @__PURE__ */
|
|
2956
|
+
return /* @__PURE__ */ React26.createElement("div", { className: "w-full max-w-3xl mx-auto flex flex-col animate-in fade-in duration-300 pb-12" }, /* @__PURE__ */ React26.createElement(ManagedToaster, null), /* @__PURE__ */ React26.createElement("div", { className: "mb-6 flex items-center px-1" }, /* @__PURE__ */ React26.createElement(
|
|
2996
2957
|
"button",
|
|
2997
2958
|
{
|
|
2998
2959
|
onClick: onBack,
|
|
2999
2960
|
className: "flex items-center gap-2 text-neutral-500 hover:text-black transition-colors text-[13px] outline-none"
|
|
3000
2961
|
},
|
|
3001
|
-
/* @__PURE__ */
|
|
2962
|
+
/* @__PURE__ */ React26.createElement(HugeiconsIcon18, { icon: ArrowLeft01Icon6, size: 16 }),
|
|
3002
2963
|
" Back"
|
|
3003
|
-
)), /* @__PURE__ */
|
|
2964
|
+
)), /* @__PURE__ */ React26.createElement("div", { className: "w-full flex flex-col gap-4" }, /* @__PURE__ */ React26.createElement("div", { className: "w-full bg-white rounded-2xl overflow-hidden" }, /* @__PURE__ */ React26.createElement(
|
|
3004
2965
|
MenuRow3,
|
|
3005
2966
|
{
|
|
3006
2967
|
icon: CircleLockCheck02Icon,
|
|
@@ -3011,7 +2972,7 @@ var UniversalSecurityPage = ({
|
|
|
3011
2972
|
toggleState: has2FA,
|
|
3012
2973
|
toggleLoading: is2FALoading || isFetchingSetup
|
|
3013
2974
|
}
|
|
3014
|
-
), /* @__PURE__ */
|
|
2975
|
+
), /* @__PURE__ */ React26.createElement(
|
|
3015
2976
|
MenuRow3,
|
|
3016
2977
|
{
|
|
3017
2978
|
icon: Key01Icon,
|
|
@@ -3023,18 +2984,18 @@ var UniversalSecurityPage = ({
|
|
|
3023
2984
|
toggleLoading: isPasskeyLoading,
|
|
3024
2985
|
isLast: true
|
|
3025
2986
|
}
|
|
3026
|
-
))), show2FASetupModal && /* @__PURE__ */
|
|
2987
|
+
))), show2FASetupModal && /* @__PURE__ */ React26.createElement("div", { className: "fixed inset-0 z-120 flex items-center justify-center p-4 pointer-events-auto" }, /* @__PURE__ */ React26.createElement("div", { className: "absolute inset-0 bg-black/40 ", onClick: () => !isSubmitting && setShow2FASetupModal(false) }), /* @__PURE__ */ React26.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__ */ React26.createElement("div", { className: "flex items-center justify-between p-5 shrink-0 " }, /* @__PURE__ */ React26.createElement("h3", { className: "text-[15px] text-black tracking-tight" }, "Enable 2FA"), /* @__PURE__ */ React26.createElement("button", { onClick: () => !isSubmitting && setShow2FASetupModal(false), className: "text-neutral-400 hover:text-black transition-colors outline-none" }, /* @__PURE__ */ React26.createElement(HugeiconsIcon18, { icon: CancelCircleIcon6, size: 18 }))), /* @__PURE__ */ React26.createElement("div", { className: "flex-1 overflow-y-auto custom-scrollbar p-6 pt-2" }, /* @__PURE__ */ React26.createElement("div", { className: "w-full flex justify-center mb-6 mix-blend-multiply" }, twoFaQr ? /* @__PURE__ */ React26.createElement("img", { src: twoFaQr, alt: "2FA QR Code", className: "w-40 h-40 object-contain rounded-xl border border-neutral-200 p-2" }) : /* @__PURE__ */ React26.createElement("div", { className: "w-40 h-40 bg-neutral-100 rounded-xl flex items-center justify-center animate-pulse" })), /* @__PURE__ */ React26.createElement("div", { className: "grid grid-cols-1 gap-y-6 gap-x-4 mb-8" }, /* @__PURE__ */ React26.createElement("div", null, /* @__PURE__ */ React26.createElement("span", { className: "text-[11px] tracking-[0.2em] text-neutral-400 block mb-2 uppercase" }, "Setup Key"), /* @__PURE__ */ React26.createElement("div", { className: "flex items-center gap-2 min-w-0 bg-neutral-50 px-3 py-2.5 rounded-xl " }, /* @__PURE__ */ React26.createElement("span", { className: "text-[13px] font-mono tracking-widest text-black truncate min-w-0 block flex-1" }, twoFaSecret), /* @__PURE__ */ React26.createElement(
|
|
3027
2988
|
"button",
|
|
3028
2989
|
{
|
|
3029
2990
|
type: "button",
|
|
3030
2991
|
onClick: () => handleCopySecret(twoFaSecret),
|
|
3031
2992
|
className: "text-neutral-400 hover:text-black transition-colors outline-none shrink-0 ml-2"
|
|
3032
2993
|
},
|
|
3033
|
-
/* @__PURE__ */
|
|
3034
|
-
)))), /* @__PURE__ */
|
|
2994
|
+
/* @__PURE__ */ React26.createElement(HugeiconsIcon18, { icon: Copy01Icon3, size: 16 })
|
|
2995
|
+
)))), /* @__PURE__ */ React26.createElement("div", { className: "text-center mb-8 mt-2" }, /* @__PURE__ */ React26.createElement("h2", { className: "text-xl text-black mb-2 tracking-tight" }, "Security Check"), /* @__PURE__ */ React26.createElement("p", { className: "text-[13px] text-neutral-500" }, "Enter the 6-digit code from your app")), /* @__PURE__ */ React26.createElement("form", { className: "space-y-4", autoComplete: "off", onSubmit: (e) => {
|
|
3035
2996
|
e.preventDefault();
|
|
3036
2997
|
submitEnable2FA(otp.join(""));
|
|
3037
|
-
} }, /* @__PURE__ */
|
|
2998
|
+
} }, /* @__PURE__ */ React26.createElement("div", { className: "flex justify-between gap-2 pb-6", onPaste: handlePaste }, otp.map((digit, index) => /* @__PURE__ */ React26.createElement(
|
|
3038
2999
|
"input",
|
|
3039
3000
|
{
|
|
3040
3001
|
key: index,
|
|
@@ -3053,7 +3014,7 @@ var UniversalSecurityPage = ({
|
|
|
3053
3014
|
},
|
|
3054
3015
|
className: "w-8 h-12 text-center text-lg bg-transparent border-b-2 border-neutral-200 text-black outline-none focus:border-black transition-all duration-300"
|
|
3055
3016
|
}
|
|
3056
|
-
))), /* @__PURE__ */
|
|
3017
|
+
))), /* @__PURE__ */ React26.createElement(
|
|
3057
3018
|
ThreeDActionButton,
|
|
3058
3019
|
{
|
|
3059
3020
|
type: "submit",
|
|
@@ -3062,19 +3023,19 @@ var UniversalSecurityPage = ({
|
|
|
3062
3023
|
className: "w-full py-3.5"
|
|
3063
3024
|
},
|
|
3064
3025
|
"Verify & Enable"
|
|
3065
|
-
), /* @__PURE__ */
|
|
3026
|
+
), /* @__PURE__ */ React26.createElement(
|
|
3066
3027
|
"button",
|
|
3067
3028
|
{
|
|
3068
3029
|
type: "button",
|
|
3069
3030
|
onClick: () => handleCopySecret(twoFaSecret),
|
|
3070
3031
|
className: "w-full flex items-center justify-center py-2.5 rounded-full border border-neutral-200 text-black hover:bg-neutral-50 outline-none text-xs tracking-wide transition-colors mt-2"
|
|
3071
3032
|
},
|
|
3072
|
-
/* @__PURE__ */
|
|
3033
|
+
/* @__PURE__ */ React26.createElement(HugeiconsIcon18, { icon: Copy01Icon3, size: 16, className: "mr-2" }),
|
|
3073
3034
|
"Copy Secret Key"
|
|
3074
|
-
))))), show2FADisableModal && /* @__PURE__ */
|
|
3035
|
+
))))), show2FADisableModal && /* @__PURE__ */ React26.createElement("div", { className: "fixed inset-0 z-120 flex items-center justify-center p-4 pointer-events-auto" }, /* @__PURE__ */ React26.createElement("div", { className: "absolute inset-0 bg-black/40 ", onClick: () => !isSubmitting && setShow2FADisableModal(false) }), /* @__PURE__ */ React26.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__ */ React26.createElement("div", { className: "flex items-center justify-between p-5 shrink-0 " }, /* @__PURE__ */ React26.createElement("h3", { className: "text-[15px] text-black tracking-tight" }, "Disable 2FA"), /* @__PURE__ */ React26.createElement("button", { onClick: () => !isSubmitting && setShow2FADisableModal(false), className: "text-neutral-400 hover:text-black transition-colors outline-none" }, /* @__PURE__ */ React26.createElement(HugeiconsIcon18, { icon: CancelCircleIcon6, size: 18 }))), /* @__PURE__ */ React26.createElement("div", { className: "p-6" }, /* @__PURE__ */ React26.createElement("div", { className: "text-center mb-8 mt-2" }, /* @__PURE__ */ React26.createElement("h2", { className: "text-xl text-black mb-2 tracking-tight" }, "Security Check"), /* @__PURE__ */ React26.createElement("p", { className: "text-[13px] text-neutral-500" }, "Enter the code from your authenticator app to disable 2FA.")), /* @__PURE__ */ React26.createElement("form", { className: "space-y-8", autoComplete: "off", onSubmit: (e) => {
|
|
3075
3036
|
e.preventDefault();
|
|
3076
3037
|
submitDisable2FA(otp.join(""));
|
|
3077
|
-
} }, /* @__PURE__ */
|
|
3038
|
+
} }, /* @__PURE__ */ React26.createElement("div", { className: "flex justify-between gap-2", onPaste: handlePaste }, otp.map((digit, index) => /* @__PURE__ */ React26.createElement(
|
|
3078
3039
|
"input",
|
|
3079
3040
|
{
|
|
3080
3041
|
key: index,
|
|
@@ -3093,7 +3054,7 @@ var UniversalSecurityPage = ({
|
|
|
3093
3054
|
},
|
|
3094
3055
|
className: "w-10 h-12 text-center text-lg bg-transparent border-b-2 border-neutral-200 text-black outline-none focus:border-black transition-all duration-300"
|
|
3095
3056
|
}
|
|
3096
|
-
))), /* @__PURE__ */
|
|
3057
|
+
))), /* @__PURE__ */ React26.createElement(
|
|
3097
3058
|
ThreeDActionButton,
|
|
3098
3059
|
{
|
|
3099
3060
|
type: "submit",
|
|
@@ -3102,7 +3063,7 @@ var UniversalSecurityPage = ({
|
|
|
3102
3063
|
className: "w-full py-3.5"
|
|
3103
3064
|
},
|
|
3104
3065
|
"Verify & Disable"
|
|
3105
|
-
))))), showPasskeyModal && /* @__PURE__ */
|
|
3066
|
+
))))), showPasskeyModal && /* @__PURE__ */ React26.createElement("div", { className: "fixed inset-0 z-120 flex items-center justify-center p-4 pointer-events-auto" }, /* @__PURE__ */ React26.createElement("div", { className: "absolute inset-0 bg-black/40 ", onClick: () => !isSubmitting && setShowPasskeyModal(false) }), /* @__PURE__ */ React26.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__ */ React26.createElement("div", { className: "flex items-center justify-between p-5 shrink-0" }, /* @__PURE__ */ React26.createElement("h3", { className: "text-[15px] text-black tracking-tight" }, "Enable Passkey"), /* @__PURE__ */ React26.createElement("button", { onClick: () => !isSubmitting && setShowPasskeyModal(false), className: "text-neutral-400 hover:text-black transition-colors outline-none" }, /* @__PURE__ */ React26.createElement(HugeiconsIcon18, { icon: CancelCircleIcon6, size: 18 }))), /* @__PURE__ */ React26.createElement("div", { className: "p-6 text-center" }, /* @__PURE__ */ React26.createElement("h2", { className: "text-lg text-black mb-2 tracking-tight" }, "Simplify your Sign In"), /* @__PURE__ */ React26.createElement("p", { className: "text-[13px] text-neutral-500 mb-8 leading-relaxed" }, "Use your device's biometrics (Face ID, Touch ID, or PIN) to securely sign into your account without needing a password."), /* @__PURE__ */ React26.createElement(
|
|
3106
3067
|
ThreeDActionButton,
|
|
3107
3068
|
{
|
|
3108
3069
|
onClick: submitEnablePasskey,
|
|
@@ -3124,26 +3085,26 @@ var MenuRow3 = ({
|
|
|
3124
3085
|
toggleState = false,
|
|
3125
3086
|
toggleLoading = false,
|
|
3126
3087
|
disabled = false
|
|
3127
|
-
}) => /* @__PURE__ */
|
|
3088
|
+
}) => /* @__PURE__ */ React26.createElement(
|
|
3128
3089
|
"div",
|
|
3129
3090
|
{
|
|
3130
3091
|
onClick: disabled ? void 0 : onClick,
|
|
3131
3092
|
className: `flex items-center p-4 transition-colors ${!isLast ? "" : ""} ${disabled ? "opacity-40 cursor-not-allowed" : "cursor-pointer hover:bg-neutral-50"}`
|
|
3132
3093
|
},
|
|
3133
|
-
/* @__PURE__ */
|
|
3134
|
-
/* @__PURE__ */
|
|
3135
|
-
isToggle ? /* @__PURE__ */
|
|
3094
|
+
/* @__PURE__ */ React26.createElement("div", { className: "w-9 h-9 rounded-full border border-neutral-200 flex items-center justify-center shrink-0 mr-4" }, /* @__PURE__ */ React26.createElement(HugeiconsIcon18, { icon, size: 16, className: iconColor })),
|
|
3095
|
+
/* @__PURE__ */ React26.createElement("div", { className: "flex-1 min-w-0" }, /* @__PURE__ */ React26.createElement("p", { className: `text-[14px] truncate ${titleColor}` }, title), /* @__PURE__ */ React26.createElement("p", { className: "text-[12px] text-neutral-500 truncate" }, subtitle)),
|
|
3096
|
+
isToggle ? /* @__PURE__ */ React26.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__ */ React26.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__ */ React26.createElement(HugeiconsIcon18, { icon: Loading03Icon11, size: 10, className: "animate-spin text-black" }))) : /* @__PURE__ */ React26.createElement(HugeiconsIcon18, { icon: ArrowRight01Icon5, size: 18, className: "text-neutral-400 shrink-0 ml-2" })
|
|
3136
3097
|
);
|
|
3137
3098
|
|
|
3138
3099
|
// src/components/FeatureScroll.tsx
|
|
3139
|
-
import
|
|
3100
|
+
import React27, { useRef as useRef7, useState as useState19, useEffect as useEffect12 } from "react";
|
|
3140
3101
|
import Image4 from "next/image";
|
|
3141
|
-
import { HugeiconsIcon as
|
|
3102
|
+
import { HugeiconsIcon as HugeiconsIcon19 } from "@hugeicons/react";
|
|
3142
3103
|
import { ArrowLeft01Icon as ArrowLeft01Icon7, ArrowRight01Icon as ArrowRight01Icon6, Loading03Icon as Loading03Icon12 } from "@hugeicons/core-free-icons";
|
|
3143
3104
|
var FeatureCard = ({ feature, bgImage }) => {
|
|
3144
3105
|
const [isBgLoading, setIsBgLoading] = useState19(true);
|
|
3145
3106
|
const [isFgLoading, setIsFgLoading] = useState19(!!feature.image);
|
|
3146
|
-
return /* @__PURE__ */
|
|
3107
|
+
return /* @__PURE__ */ React27.createElement("div", { className: "flex flex-col shrink-0 w-[90vw] sm:w-150 snap-center md:snap-start group cursor-grab active:cursor-grabbing" }, /* @__PURE__ */ React27.createElement("div", { className: "relative w-full aspect-16/10 bg-neutral-100 rounded-2xl overflow-hidden mb-6 flex items-center justify-center" }, /* @__PURE__ */ React27.createElement(
|
|
3147
3108
|
Image4,
|
|
3148
3109
|
{
|
|
3149
3110
|
src: bgImage,
|
|
@@ -3156,7 +3117,7 @@ var FeatureCard = ({ feature, bgImage }) => {
|
|
|
3156
3117
|
${isBgLoading ? "blur-xl scale-110" : "blur-0 scale-100"}
|
|
3157
3118
|
`
|
|
3158
3119
|
}
|
|
3159
|
-
), /* @__PURE__ */
|
|
3120
|
+
), /* @__PURE__ */ React27.createElement(
|
|
3160
3121
|
"div",
|
|
3161
3122
|
{
|
|
3162
3123
|
className: "absolute inset-0 w-full h-full pointer-events-none z-0 opacity-[0.25] mix-blend-overlay",
|
|
@@ -3164,7 +3125,7 @@ var FeatureCard = ({ feature, bgImage }) => {
|
|
|
3164
3125
|
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")`
|
|
3165
3126
|
}
|
|
3166
3127
|
}
|
|
3167
|
-
), isFgLoading && feature.image && /* @__PURE__ */
|
|
3128
|
+
), isFgLoading && feature.image && /* @__PURE__ */ React27.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__ */ React27.createElement(HugeiconsIcon19, { icon: Loading03Icon12, size: 32, className: "animate-spin text-neutral-400" })), feature.image && /* @__PURE__ */ React27.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__ */ React27.createElement(
|
|
3168
3129
|
Image4,
|
|
3169
3130
|
{
|
|
3170
3131
|
src: feature.image,
|
|
@@ -3177,7 +3138,7 @@ var FeatureCard = ({ feature, bgImage }) => {
|
|
|
3177
3138
|
${isFgLoading ? "opacity-0 blur-xl" : "opacity-100 blur-0"}
|
|
3178
3139
|
`
|
|
3179
3140
|
}
|
|
3180
|
-
))), /* @__PURE__ */
|
|
3141
|
+
))), /* @__PURE__ */ React27.createElement("div", { className: "flex flex-col text-left pr-4" }, /* @__PURE__ */ React27.createElement("h3", { className: " text-xl tracking-tight text-black mb-2" }, feature.title), /* @__PURE__ */ React27.createElement("p", { className: "text-[13px] leading-relaxed text-neutral-600 max-w-[90%]" }, feature.desc)));
|
|
3181
3142
|
};
|
|
3182
3143
|
var FeatureScroll = ({ tagline, headline, features }) => {
|
|
3183
3144
|
const scrollRef = useRef7(null);
|
|
@@ -3206,72 +3167,72 @@ var FeatureScroll = ({ tagline, headline, features }) => {
|
|
|
3206
3167
|
"https://retinalabs.company/assets/images/bg_6.avif",
|
|
3207
3168
|
"https://retinalabs.company/assets/images/bg_1.avif"
|
|
3208
3169
|
];
|
|
3209
|
-
return /* @__PURE__ */
|
|
3170
|
+
return /* @__PURE__ */ React27.createElement("section", { className: "py-24 w-full flex justify-center relative z-10 overflow-hidden" }, /* @__PURE__ */ React27.createElement("div", { className: "max-w-6xl w-full flex flex-col px-4 md:px-8" }, /* @__PURE__ */ React27.createElement("div", { className: "flex flex-col md:flex-row md:items-end justify-between gap-6 mb-12" }, /* @__PURE__ */ React27.createElement("div", { className: "relative z-10 text-left" }, /* @__PURE__ */ React27.createElement("span", { className: "text-[11px] tracking-[0.4em] text-neutral-500 block mb-4" }, tagline), /* @__PURE__ */ React27.createElement("h2", { className: " text-3xl tracking-tight text-black leading-[1.05]" }, headline)), /* @__PURE__ */ React27.createElement("div", { className: "hidden md:flex items-center gap-3" }, /* @__PURE__ */ React27.createElement(
|
|
3210
3171
|
"button",
|
|
3211
3172
|
{
|
|
3212
3173
|
onClick: () => scroll("left"),
|
|
3213
3174
|
disabled: !canScrollLeft,
|
|
3214
3175
|
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"
|
|
3215
3176
|
},
|
|
3216
|
-
/* @__PURE__ */
|
|
3217
|
-
), /* @__PURE__ */
|
|
3177
|
+
/* @__PURE__ */ React27.createElement(HugeiconsIcon19, { icon: ArrowLeft01Icon7, size: 20 })
|
|
3178
|
+
), /* @__PURE__ */ React27.createElement(
|
|
3218
3179
|
"button",
|
|
3219
3180
|
{
|
|
3220
3181
|
onClick: () => scroll("right"),
|
|
3221
3182
|
disabled: !canScrollRight,
|
|
3222
3183
|
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"
|
|
3223
3184
|
},
|
|
3224
|
-
/* @__PURE__ */
|
|
3225
|
-
))), /* @__PURE__ */
|
|
3185
|
+
/* @__PURE__ */ React27.createElement(HugeiconsIcon19, { icon: ArrowRight01Icon6, size: 20 })
|
|
3186
|
+
))), /* @__PURE__ */ React27.createElement(
|
|
3226
3187
|
"div",
|
|
3227
3188
|
{
|
|
3228
3189
|
ref: scrollRef,
|
|
3229
3190
|
onScroll: checkScroll,
|
|
3230
3191
|
className: "flex gap-6 overflow-x-auto snap-x snap-mandatory [&::-webkit-scrollbar]:hidden [-ms-overflow-style:none] scrollbar-none pb-8 -mx-4 px-4 md:mx-0 md:px-0"
|
|
3231
3192
|
},
|
|
3232
|
-
features.slice(0, 3).map((feature, idx) => /* @__PURE__ */
|
|
3233
|
-
), /* @__PURE__ */
|
|
3193
|
+
features.slice(0, 3).map((feature, idx) => /* @__PURE__ */ React27.createElement(FeatureCard, { key: idx, feature, bgImage: bgImages[idx] }))
|
|
3194
|
+
), /* @__PURE__ */ React27.createElement("div", { className: "flex md:hidden items-center justify-center gap-4 mt-2" }, /* @__PURE__ */ React27.createElement(
|
|
3234
3195
|
"button",
|
|
3235
3196
|
{
|
|
3236
3197
|
onClick: () => scroll("left"),
|
|
3237
3198
|
disabled: !canScrollLeft,
|
|
3238
3199
|
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"
|
|
3239
3200
|
},
|
|
3240
|
-
/* @__PURE__ */
|
|
3241
|
-
), /* @__PURE__ */
|
|
3201
|
+
/* @__PURE__ */ React27.createElement(HugeiconsIcon19, { icon: ArrowLeft01Icon7, size: 20 })
|
|
3202
|
+
), /* @__PURE__ */ React27.createElement(
|
|
3242
3203
|
"button",
|
|
3243
3204
|
{
|
|
3244
3205
|
onClick: () => scroll("right"),
|
|
3245
3206
|
disabled: !canScrollRight,
|
|
3246
3207
|
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"
|
|
3247
3208
|
},
|
|
3248
|
-
/* @__PURE__ */
|
|
3209
|
+
/* @__PURE__ */ React27.createElement(HugeiconsIcon19, { icon: ArrowRight01Icon6, size: 20 })
|
|
3249
3210
|
))));
|
|
3250
3211
|
};
|
|
3251
3212
|
|
|
3252
3213
|
// src/components/PlatformFeatures.tsx
|
|
3253
|
-
import
|
|
3254
|
-
import { HugeiconsIcon as
|
|
3214
|
+
import React28 from "react";
|
|
3215
|
+
import { HugeiconsIcon as HugeiconsIcon20 } from "@hugeicons/react";
|
|
3255
3216
|
var PlatformFeatures = ({
|
|
3256
3217
|
tagline,
|
|
3257
3218
|
headline,
|
|
3258
3219
|
description,
|
|
3259
3220
|
features
|
|
3260
3221
|
}) => {
|
|
3261
|
-
return /* @__PURE__ */
|
|
3222
|
+
return /* @__PURE__ */ React28.createElement("section", { className: "w-full flex justify-center mb-15 relative z-10" }, /* @__PURE__ */ React28.createElement("div", { className: "max-w-6xl w-full flex flex-col px-4 md:px-8" }, /* @__PURE__ */ React28.createElement("div", { className: "flex flex-col items-start mb-16 relative z-10" }, /* @__PURE__ */ React28.createElement("span", { className: "text-[11px] tracking-[0.4em] text-neutral-500 block mb-4" }, tagline), /* @__PURE__ */ React28.createElement("h2", { className: "text-3xl tracking-tight text-black leading-[1.05] mb-6" }, headline), /* @__PURE__ */ React28.createElement("p", { className: "text-[15px] leading-[1.8] text-neutral-600 max-w-2xl" }, description)), /* @__PURE__ */ React28.createElement("div", { className: "w-full h-px bg-neutral-100 mb-16", "aria-hidden": "true" }), /* @__PURE__ */ React28.createElement("div", { className: "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-x-8 gap-y-12" }, features.map((feature, idx) => /* @__PURE__ */ React28.createElement(
|
|
3262
3223
|
"div",
|
|
3263
3224
|
{
|
|
3264
3225
|
key: idx,
|
|
3265
3226
|
className: "flex flex-col group animate-in fade-in slide-in-from-bottom-4 duration-700 fill-mode-both",
|
|
3266
3227
|
style: { animationDelay: feature.delay || "0ms" }
|
|
3267
3228
|
},
|
|
3268
|
-
/* @__PURE__ */
|
|
3269
|
-
/* @__PURE__ */
|
|
3229
|
+
/* @__PURE__ */ React28.createElement("div", { className: "flex flex-row items-center gap-4 mb-4" }, /* @__PURE__ */ React28.createElement("div", { className: "w-14 h-14 shrink-0 rounded-xl border border-neutral-200 flex items-center justify-center text-neutral-600 transition-colors duration-300" }, /* @__PURE__ */ React28.createElement(HugeiconsIcon20, { icon: feature.icon, size: 24 })), /* @__PURE__ */ React28.createElement("div", { className: "flex flex-col justify-center" }, /* @__PURE__ */ React28.createElement("span", { className: "text-[11px] tracking-widest text-neutral-400 mb-0.5" }, feature.label || "CAPABILITY"), /* @__PURE__ */ React28.createElement("h3", { className: "text-xl tracking-tight text-black" }, feature.title))),
|
|
3230
|
+
/* @__PURE__ */ React28.createElement("div", null, /* @__PURE__ */ React28.createElement("p", { className: "text-[13px] leading-relaxed text-neutral-600 pr-4" }, feature.desc))
|
|
3270
3231
|
)))));
|
|
3271
3232
|
};
|
|
3272
3233
|
|
|
3273
3234
|
// src/components/ManagedDocument.tsx
|
|
3274
|
-
import
|
|
3235
|
+
import React29, { useState as useState20, useEffect as useEffect13, useRef as useRef8 } from "react";
|
|
3275
3236
|
var ManagedDocument = ({
|
|
3276
3237
|
tagline,
|
|
3277
3238
|
title,
|
|
@@ -3301,7 +3262,7 @@ var ManagedDocument = ({
|
|
|
3301
3262
|
}, []);
|
|
3302
3263
|
return (
|
|
3303
3264
|
// Outer layout wrapper (takes up available space, adds padding)
|
|
3304
|
-
/* @__PURE__ */
|
|
3265
|
+
/* @__PURE__ */ React29.createElement("div", { className: "grow pt-4 px-3 md:px-8 w-full flex justify-center z-10 relative" }, /* @__PURE__ */ React29.createElement("div", { className: "relative bg-white rounded-2xl w-full max-w-7xl mx-auto overflow-hidden" }, /* @__PURE__ */ React29.createElement("div", { className: "relative z-10" }, /* @__PURE__ */ React29.createElement("div", { className: "relative px-5 md:px-12 py-8 md:py-10" }, tagline && /* @__PURE__ */ React29.createElement("span", { className: "text-[11px] tracking-[0.4em] text-neutral-500 text-left block " }, tagline), /* @__PURE__ */ React29.createElement(
|
|
3305
3266
|
"h1",
|
|
3306
3267
|
{
|
|
3307
3268
|
ref: titleRef,
|
|
@@ -3309,7 +3270,7 @@ var ManagedDocument = ({
|
|
|
3309
3270
|
style: isAnimating ? { animationIterationCount: 1 } : {}
|
|
3310
3271
|
},
|
|
3311
3272
|
title
|
|
3312
|
-
)), sections.map((section, index) => /* @__PURE__ */
|
|
3273
|
+
)), sections.map((section, index) => /* @__PURE__ */ React29.createElement("div", { key: index, className: "relative px-5 md:px-12 py-8 md:py-10" }, section.heading && /* @__PURE__ */ React29.createElement("p", { className: " text-[11px] tracking-[0.2em] text-black mb-4 text-left " }, section.heading), section.paragraphs && section.paragraphs.length > 0 && /* @__PURE__ */ React29.createElement("div", { className: "text-[14px] leading-[1.8] text-neutral-700 space-y-4 text-left " }, section.paragraphs.map((text, pIndex) => /* @__PURE__ */ React29.createElement("p", { key: pIndex }, text))), section.quote && /* @__PURE__ */ React29.createElement("div", { className: `border-neutral-200 border rounded-xl p-6 ${section.paragraphs && section.paragraphs.length > 0 ? "mt-6" : ""}` }, /* @__PURE__ */ React29.createElement("p", { className: "text-neutral-900 text-[14px] md:text-[14px] leading-relaxed" }, '"', section.quote, '"')))), (contactText || contactEmail) && /* @__PURE__ */ React29.createElement("div", { className: "relative px-5 md:px-12 py-8 md:py-10 pb-12 md:pb-14" }, /* @__PURE__ */ React29.createElement("p", { className: "text-[11px] text-neutral-600 text-left" }, contactText, contactEmail && /* @__PURE__ */ React29.createElement(
|
|
3313
3274
|
"a",
|
|
3314
3275
|
{
|
|
3315
3276
|
href: `mailto:${contactEmail}`,
|
|
@@ -3321,18 +3282,18 @@ var ManagedDocument = ({
|
|
|
3321
3282
|
};
|
|
3322
3283
|
|
|
3323
3284
|
// src/components/ManagedContactBlock.tsx
|
|
3324
|
-
import
|
|
3325
|
-
import { HugeiconsIcon as
|
|
3285
|
+
import React30, { useState as useState21, useEffect as useEffect14 } from "react";
|
|
3286
|
+
import { HugeiconsIcon as HugeiconsIcon21 } from "@hugeicons/react";
|
|
3326
3287
|
var SecureEmail = ({ user, domain, className }) => {
|
|
3327
3288
|
const [isMounted, setIsMounted] = useState21(false);
|
|
3328
3289
|
useEffect14(() => {
|
|
3329
3290
|
setIsMounted(true);
|
|
3330
3291
|
}, []);
|
|
3331
3292
|
if (!isMounted) {
|
|
3332
|
-
return /* @__PURE__ */
|
|
3293
|
+
return /* @__PURE__ */ React30.createElement("span", { className, style: { opacity: 0 } }, "Loading");
|
|
3333
3294
|
}
|
|
3334
3295
|
const email = `${user}@${domain}`;
|
|
3335
|
-
return /* @__PURE__ */
|
|
3296
|
+
return /* @__PURE__ */ React30.createElement("a", { href: `mailto:${email}`, className }, email);
|
|
3336
3297
|
};
|
|
3337
3298
|
var ManagedContactBlock = ({
|
|
3338
3299
|
tagline,
|
|
@@ -3341,7 +3302,7 @@ var ManagedContactBlock = ({
|
|
|
3341
3302
|
emails,
|
|
3342
3303
|
socials
|
|
3343
3304
|
}) => {
|
|
3344
|
-
return /* @__PURE__ */
|
|
3305
|
+
return /* @__PURE__ */ React30.createElement("div", { className: "grow pt-4 pb-20 px-4 md:px-8 w-full flex justify-center z-10 relative" }, /* @__PURE__ */ React30.createElement("div", { className: "relative bg-white rounded-2xl w-full max-w-7xl mx-auto overflow-hidden" }, /* @__PURE__ */ React30.createElement(
|
|
3345
3306
|
"div",
|
|
3346
3307
|
{
|
|
3347
3308
|
className: "absolute inset-0 pointer-events-none opacity-[0.03] z-0",
|
|
@@ -3350,21 +3311,21 @@ var ManagedContactBlock = ({
|
|
|
3350
3311
|
backgroundRepeat: "repeat"
|
|
3351
3312
|
}
|
|
3352
3313
|
}
|
|
3353
|
-
), /* @__PURE__ */
|
|
3314
|
+
), /* @__PURE__ */ React30.createElement("div", { className: "relative z-10" }, /* @__PURE__ */ React30.createElement("div", { className: "relative px-8 md:px-12 py-10" }, tagline && /* @__PURE__ */ React30.createElement("span", { className: "text-[11px] tracking-[0.4em] text-neutral-500 text-left block " }, tagline), /* @__PURE__ */ React30.createElement("h1", { className: " text-3xl mt-4 text-black tracking-tight text-left" }, title)), /* @__PURE__ */ React30.createElement("div", { className: "relative px-8 md:px-12 py-8 pb-14" }, /* @__PURE__ */ React30.createElement("div", { className: "flex flex-wrap gap-12 lg:gap-16 w-full" }, company && /* @__PURE__ */ React30.createElement("div", { className: "flex-1 min-w-65 space-y-6" }, /* @__PURE__ */ React30.createElement("p", { className: "text-[11px] tracking-[0.2em] text-black mb-4 " }, "Contact Details"), /* @__PURE__ */ React30.createElement("div", { className: "space-y-3 text-[13px] text-neutral-600 leading-[1.8]" }, company.name && /* @__PURE__ */ React30.createElement("p", { className: "text-black" }, company.name), company.lines && company.lines.map((line, idx) => /* @__PURE__ */ React30.createElement("p", { key: idx }, line)), company.phone && /* @__PURE__ */ React30.createElement("p", { className: "pt-2" }, /* @__PURE__ */ React30.createElement(
|
|
3354
3315
|
"a",
|
|
3355
3316
|
{
|
|
3356
3317
|
href: `tel:${company.phone.replace(/\s+/g, "")}`,
|
|
3357
3318
|
className: "transition-colors hover:text-black"
|
|
3358
3319
|
},
|
|
3359
3320
|
company.phone
|
|
3360
|
-
)))), emails && emails.length > 0 && /* @__PURE__ */
|
|
3321
|
+
)))), emails && emails.length > 0 && /* @__PURE__ */ React30.createElement("div", { className: "flex-1 min-w-65 space-y-6" }, /* @__PURE__ */ React30.createElement("p", { className: "text-[11px] tracking-[0.2em] text-black mb-4 " }, "Email Directory"), /* @__PURE__ */ React30.createElement("div", { className: "space-y-6 text-[13px]" }, emails.map((email, idx) => /* @__PURE__ */ React30.createElement("div", { key: idx }, /* @__PURE__ */ React30.createElement("p", { className: "text-[11px] tracking-[0.2em] mb-1.5 text-neutral-500 " }, email.label), /* @__PURE__ */ React30.createElement(
|
|
3361
3322
|
SecureEmail,
|
|
3362
3323
|
{
|
|
3363
3324
|
user: email.user,
|
|
3364
3325
|
domain: email.domain,
|
|
3365
3326
|
className: "text-neutral-600 transition-colors hover:text-black"
|
|
3366
3327
|
}
|
|
3367
|
-
))))), socials && socials.length > 0 && /* @__PURE__ */
|
|
3328
|
+
))))), socials && socials.length > 0 && /* @__PURE__ */ React30.createElement("div", { className: "flex-1 min-w-65 space-y-6" }, /* @__PURE__ */ React30.createElement("p", { className: "text-[11px] tracking-[0.2em] text-black mb-4 " }, "Find Us Online"), /* @__PURE__ */ React30.createElement("div", { className: "flex flex-col space-y-5 pt-1" }, socials.map((social, idx) => /* @__PURE__ */ React30.createElement(
|
|
3368
3329
|
"a",
|
|
3369
3330
|
{
|
|
3370
3331
|
key: idx,
|
|
@@ -3373,17 +3334,17 @@ var ManagedContactBlock = ({
|
|
|
3373
3334
|
rel: "noopener noreferrer",
|
|
3374
3335
|
className: "flex items-center gap-3 transition-colors group text-neutral-600 hover:text-black"
|
|
3375
3336
|
},
|
|
3376
|
-
/* @__PURE__ */
|
|
3377
|
-
/* @__PURE__ */
|
|
3337
|
+
/* @__PURE__ */ React30.createElement(HugeiconsIcon21, { icon: social.icon, size: 18 }),
|
|
3338
|
+
/* @__PURE__ */ React30.createElement("span", { className: "text-[13px]" }, social.label)
|
|
3378
3339
|
)))))))));
|
|
3379
3340
|
};
|
|
3380
3341
|
|
|
3381
3342
|
// src/components/ManagedPricingBlock.tsx
|
|
3382
|
-
import
|
|
3343
|
+
import React31, { useState as useState22, useEffect as useEffect15, useRef as useRef9 } from "react";
|
|
3383
3344
|
import Link7 from "next/link";
|
|
3384
3345
|
import Image5 from "next/image";
|
|
3385
|
-
var CheckIcon = ({ className = "" }) => /* @__PURE__ */
|
|
3386
|
-
var CrossIcon = ({ className = "" }) => /* @__PURE__ */
|
|
3346
|
+
var CheckIcon = ({ className = "" }) => /* @__PURE__ */ React31.createElement("svg", { viewBox: "0 0 24 24", fill: "none", className: `w-4 h-4 shrink-0 ${className}`, xmlns: "http://www.w3.org/2000/svg" }, /* @__PURE__ */ React31.createElement("circle", { cx: "12", cy: "12", r: "10", fill: "black" }), /* @__PURE__ */ React31.createElement("path", { d: "M8 12L11 15L16 9", stroke: "white", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }));
|
|
3347
|
+
var CrossIcon = ({ className = "" }) => /* @__PURE__ */ React31.createElement("svg", { viewBox: "0 0 24 24", fill: "none", className: `w-4 h-4 shrink-0 ${className}`, xmlns: "http://www.w3.org/2000/svg" }, /* @__PURE__ */ React31.createElement("circle", { cx: "12", cy: "12", r: "10", fill: "#F5F5F5" }), /* @__PURE__ */ React31.createElement("path", { d: "M15 9L9 15M9 9l6 6", stroke: "#D4D4D4", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }));
|
|
3387
3348
|
var ManagedPricingBlock = ({
|
|
3388
3349
|
tagline,
|
|
3389
3350
|
title,
|
|
@@ -3413,7 +3374,7 @@ var ManagedPricingBlock = ({
|
|
|
3413
3374
|
}, []);
|
|
3414
3375
|
const hasTabs = tabs && tabs.length > 0;
|
|
3415
3376
|
const currentPlans = hasTabs ? tabs[activeTabIndex].plans : plans;
|
|
3416
|
-
return /* @__PURE__ */
|
|
3377
|
+
return /* @__PURE__ */ React31.createElement("div", { className: "grow pt-10 pb-20 px-4 md:px-8 w-full flex justify-center z-10 relative" }, /* @__PURE__ */ React31.createElement("div", { className: "w-full max-w-5xl mx-auto flex flex-col items-center" }, /* @__PURE__ */ React31.createElement("div", { className: "w-full flex flex-col items-center text-center mb-10 sm:mb-12" }, tagline && /* @__PURE__ */ React31.createElement("span", { className: "text-[9px] tracking-[0.4em] text-black block " }, tagline), /* @__PURE__ */ React31.createElement(
|
|
3417
3378
|
"h1",
|
|
3418
3379
|
{
|
|
3419
3380
|
ref: titleRef,
|
|
@@ -3421,9 +3382,9 @@ var ManagedPricingBlock = ({
|
|
|
3421
3382
|
style: isAnimating ? { animationIterationCount: 1 } : {}
|
|
3422
3383
|
},
|
|
3423
3384
|
title
|
|
3424
|
-
)), hasTabs && /* @__PURE__ */
|
|
3385
|
+
)), hasTabs && /* @__PURE__ */ React31.createElement("div", { className: "flex items-center justify-center mb-8 sm:mb-10 w-full animate-in fade-in duration-300 px-2" }, /* @__PURE__ */ React31.createElement("div", { className: "flex items-center bg-white rounded-full p-1 sm:p-1.5 max-w-full overflow-x-auto custom-scrollbar" }, tabs.map((tab, idx) => {
|
|
3425
3386
|
const isActive = activeTabIndex === idx;
|
|
3426
|
-
return /* @__PURE__ */
|
|
3387
|
+
return /* @__PURE__ */ React31.createElement(
|
|
3427
3388
|
"button",
|
|
3428
3389
|
{
|
|
3429
3390
|
key: idx,
|
|
@@ -3432,19 +3393,19 @@ var ManagedPricingBlock = ({
|
|
|
3432
3393
|
},
|
|
3433
3394
|
tab.label
|
|
3434
3395
|
);
|
|
3435
|
-
}))), /* @__PURE__ */
|
|
3396
|
+
}))), /* @__PURE__ */ React31.createElement("div", { className: "grid grid-cols-1 md:grid-cols-2 gap-5 w-full max-w-3xl animate-in slide-in-from-bottom-2 fade-in duration-500" }, currentPlans.map((plan, planIdx) => /* @__PURE__ */ React31.createElement(
|
|
3436
3397
|
"div",
|
|
3437
3398
|
{
|
|
3438
3399
|
key: `${activeTabIndex}-${planIdx}`,
|
|
3439
3400
|
className: `bg-white rounded-3xl p-6 flex flex-col relative overflow-hidden transition-all duration-300 ${plan.isPremium ? "" : ""}`
|
|
3440
3401
|
},
|
|
3441
|
-
/* @__PURE__ */
|
|
3402
|
+
/* @__PURE__ */ React31.createElement("div", { className: "mb-6" }, /* @__PURE__ */ React31.createElement("span", { className: "text-black text-base block mb-1" }, plan.name), /* @__PURE__ */ React31.createElement("div", { className: "flex items-baseline gap-1" }, /* @__PURE__ */ React31.createElement("h3", { className: "text-3xl font-light text-black" }, plan.price), plan.period && /* @__PURE__ */ React31.createElement("span", { className: "text-xs text-neutral-500" }, plan.period)), /* @__PURE__ */ React31.createElement("p", { className: "text-xs text-neutral-500 mt-2 min-h-8" }, plan.description), plan.showApps && plan.appLogos && plan.appLogos.length > 0 && /* @__PURE__ */ React31.createElement("div", { className: "flex items-center gap-2 mt-4" }, plan.appLogos.map((logo, logoIdx) => /* @__PURE__ */ React31.createElement(
|
|
3442
3403
|
"div",
|
|
3443
3404
|
{
|
|
3444
3405
|
key: logoIdx,
|
|
3445
3406
|
className: "relative w-5 h-5 overflow-hidden flex items-center justify-center shrink-0"
|
|
3446
3407
|
},
|
|
3447
|
-
/* @__PURE__ */
|
|
3408
|
+
/* @__PURE__ */ React31.createElement(
|
|
3448
3409
|
Image5,
|
|
3449
3410
|
{
|
|
3450
3411
|
src: logo.src,
|
|
@@ -3455,7 +3416,7 @@ var ManagedPricingBlock = ({
|
|
|
3455
3416
|
}
|
|
3456
3417
|
)
|
|
3457
3418
|
)))),
|
|
3458
|
-
plan.isPremium ? /* @__PURE__ */
|
|
3419
|
+
plan.isPremium ? /* @__PURE__ */ React31.createElement(ThreeDButton, { href: plan.ctaHref, className: "mb-6 w-full" }, plan.ctaText) : /* @__PURE__ */ React31.createElement(
|
|
3459
3420
|
Link7,
|
|
3460
3421
|
{
|
|
3461
3422
|
href: plan.ctaHref,
|
|
@@ -3463,20 +3424,20 @@ var ManagedPricingBlock = ({
|
|
|
3463
3424
|
},
|
|
3464
3425
|
plan.ctaText
|
|
3465
3426
|
),
|
|
3466
|
-
/* @__PURE__ */
|
|
3427
|
+
/* @__PURE__ */ React31.createElement("div", { className: "flex flex-col gap-3" }, plan.features.map((feature, featureIdx) => {
|
|
3467
3428
|
const isAvailable = feature.value !== false;
|
|
3468
3429
|
const valueText = typeof feature.value === "string" ? feature.value : "";
|
|
3469
|
-
return /* @__PURE__ */
|
|
3430
|
+
return /* @__PURE__ */ React31.createElement("div", { key: featureIdx, className: "flex items-center gap-2.5" }, isAvailable ? /* @__PURE__ */ React31.createElement(CheckIcon, null) : /* @__PURE__ */ React31.createElement(CrossIcon, null), /* @__PURE__ */ React31.createElement("span", { className: `text-xs truncate ${isAvailable ? "text-neutral-800" : "text-neutral-400"}` }, feature.name, valueText && /* @__PURE__ */ React31.createElement("span", { className: "text-neutral-500 ml-1" }, "(", valueText, ")")));
|
|
3470
3431
|
}))
|
|
3471
3432
|
)))));
|
|
3472
3433
|
};
|
|
3473
3434
|
|
|
3474
3435
|
// src/components/ManagedBoardBlock.tsx
|
|
3475
|
-
import
|
|
3436
|
+
import React32 from "react";
|
|
3476
3437
|
import Image6 from "next/image";
|
|
3477
|
-
import { HugeiconsIcon as
|
|
3438
|
+
import { HugeiconsIcon as HugeiconsIcon22 } from "@hugeicons/react";
|
|
3478
3439
|
import { TwitterIcon, LinkedinIcon } from "@hugeicons/core-free-icons";
|
|
3479
|
-
var MemberSocialLink = ({ href, icon, label, name }) => /* @__PURE__ */
|
|
3440
|
+
var MemberSocialLink = ({ href, icon, label, name }) => /* @__PURE__ */ React32.createElement(
|
|
3480
3441
|
"a",
|
|
3481
3442
|
{
|
|
3482
3443
|
href,
|
|
@@ -3484,7 +3445,7 @@ var MemberSocialLink = ({ href, icon, label, name }) => /* @__PURE__ */ React33.
|
|
|
3484
3445
|
rel: "noopener noreferrer",
|
|
3485
3446
|
className: "text-neutral-400 hover:text-black transition-colors"
|
|
3486
3447
|
},
|
|
3487
|
-
/* @__PURE__ */
|
|
3448
|
+
/* @__PURE__ */ React32.createElement(HugeiconsIcon22, { icon, size: 16 })
|
|
3488
3449
|
);
|
|
3489
3450
|
var ManagedBoardBlock = ({
|
|
3490
3451
|
tagline,
|
|
@@ -3493,7 +3454,7 @@ var ManagedBoardBlock = ({
|
|
|
3493
3454
|
contactText,
|
|
3494
3455
|
contactEmail
|
|
3495
3456
|
}) => {
|
|
3496
|
-
return /* @__PURE__ */
|
|
3457
|
+
return /* @__PURE__ */ React32.createElement("div", { className: "grow pt-4 pb-20 px-3 md:px-8 w-full flex justify-center z-10 relative" }, /* @__PURE__ */ React32.createElement("div", { className: "relative w-full mx-auto overflow-hidden max-w-7xl" }, /* @__PURE__ */ React32.createElement(
|
|
3497
3458
|
"div",
|
|
3498
3459
|
{
|
|
3499
3460
|
className: "absolute inset-0 pointer-events-none opacity-[0.03] z-0",
|
|
@@ -3502,7 +3463,7 @@ var ManagedBoardBlock = ({
|
|
|
3502
3463
|
backgroundRepeat: "repeat"
|
|
3503
3464
|
}
|
|
3504
3465
|
}
|
|
3505
|
-
), /* @__PURE__ */
|
|
3466
|
+
), /* @__PURE__ */ React32.createElement("div", { className: "relative z-10" }, /* @__PURE__ */ React32.createElement("div", { className: "relative px-5 md:px-12 py-8 md:py-10" }, tagline && /* @__PURE__ */ React32.createElement("span", { className: "text-[11px] tracking-[0.4em] text-neutral-500 text-left block " }, tagline), /* @__PURE__ */ React32.createElement("h1", { className: " text-3xl mt-4 text-black tracking-tight text-left" }, title)), /* @__PURE__ */ React32.createElement("div", { className: "relative px-5 md:px-12 py-4 md:py-8" }, /* @__PURE__ */ React32.createElement("div", { className: "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-5 md:gap-8" }, members.map((member, idx) => /* @__PURE__ */ React32.createElement("div", { key: idx, className: "relative p-6 md:p-8 rounded-2xl bg-white flex flex-col transition-all group" }, /* @__PURE__ */ React32.createElement("div", { className: "flex items-start space-x-4 md:space-x-5 mb-5 md:mb-6" }, /* @__PURE__ */ React32.createElement("div", { className: "relative w-14 h-14 md:w-16 md:h-16 shrink-0 bg-white overflow-hidden rounded-xl" }, /* @__PURE__ */ React32.createElement(
|
|
3506
3467
|
Image6,
|
|
3507
3468
|
{
|
|
3508
3469
|
src: member.imageSrc,
|
|
@@ -3511,7 +3472,7 @@ var ManagedBoardBlock = ({
|
|
|
3511
3472
|
sizes: "(max-width: 768px) 56px, 64px",
|
|
3512
3473
|
className: "object-cover grayscale opacity-100 transition-opacity"
|
|
3513
3474
|
}
|
|
3514
|
-
)), /* @__PURE__ */
|
|
3475
|
+
)), /* @__PURE__ */ React32.createElement("div", { className: "pt-1" }, /* @__PURE__ */ React32.createElement("h3", { className: " text-[14px] md:text-[15px] text-black tracking-tight" }, member.name), /* @__PURE__ */ React32.createElement("p", { className: "text-[11px] tracking-[0.2em] text-neutral-500 mt-1.5 " }, member.title))), /* @__PURE__ */ React32.createElement("p", { className: "text-[13px] leading-[1.8] text-neutral-600 text-left grow mb-8" }, member.bio), /* @__PURE__ */ React32.createElement("div", { className: "space-y-6 mt-auto" }, /* @__PURE__ */ React32.createElement("div", { className: "w-full *:w-full" }, /* @__PURE__ */ React32.createElement(ThreeDButton, { href: member.website }, "Visit Website")), /* @__PURE__ */ React32.createElement("div", { className: "flex space-x-4 pt-5" }, member.twitterHandle && member.twitterHandle.length > 0 && /* @__PURE__ */ React32.createElement(
|
|
3515
3476
|
MemberSocialLink,
|
|
3516
3477
|
{
|
|
3517
3478
|
href: `https://x.com/${member.twitterHandle}`,
|
|
@@ -3519,7 +3480,7 @@ var ManagedBoardBlock = ({
|
|
|
3519
3480
|
label: "X",
|
|
3520
3481
|
name: member.name
|
|
3521
3482
|
}
|
|
3522
|
-
), member.linkedinHandle && member.linkedinHandle.length > 0 && /* @__PURE__ */
|
|
3483
|
+
), member.linkedinHandle && member.linkedinHandle.length > 0 && /* @__PURE__ */ React32.createElement(
|
|
3523
3484
|
MemberSocialLink,
|
|
3524
3485
|
{
|
|
3525
3486
|
href: member.linkedinHandle,
|
|
@@ -3527,28 +3488,28 @@ var ManagedBoardBlock = ({
|
|
|
3527
3488
|
label: "LinkedIn",
|
|
3528
3489
|
name: member.name
|
|
3529
3490
|
}
|
|
3530
|
-
))))))), (contactText || contactEmail) && /* @__PURE__ */
|
|
3491
|
+
))))))), (contactText || contactEmail) && /* @__PURE__ */ React32.createElement("div", { className: "relative px-5 md:px-12 py-8 md:py-10 pb-12 md:pb-14" }, /* @__PURE__ */ React32.createElement("p", { className: "text-[11px] text-neutral-600 text-left" }, contactText, contactEmail && /* @__PURE__ */ React32.createElement("a", { href: `mailto:${contactEmail}`, className: "text-black decoration-black decoration-2 underline-offset-4 ml-1 transition-colors" }, contactEmail))))));
|
|
3531
3492
|
};
|
|
3532
3493
|
|
|
3533
3494
|
// src/components/ManagedNotFoundBlock.tsx
|
|
3534
|
-
import
|
|
3495
|
+
import React33 from "react";
|
|
3535
3496
|
var ManagedNotFoundBlock = ({
|
|
3536
3497
|
title = "404 - Page Not Found",
|
|
3537
3498
|
description = "The page you are looking for does not exist or has been moved."
|
|
3538
3499
|
}) => {
|
|
3539
|
-
return /* @__PURE__ */
|
|
3500
|
+
return /* @__PURE__ */ React33.createElement("main", { className: "min-h-screen flex items-center justify-center relative z-20 bg-transparent" }, /* @__PURE__ */ React33.createElement("div", { className: "p-6 w-full max-w-md mx-auto text-center" }, /* @__PURE__ */ React33.createElement("div", { className: "mb-8 flex justify-center" }, /* @__PURE__ */ React33.createElement(
|
|
3540
3501
|
"svg",
|
|
3541
3502
|
{
|
|
3542
3503
|
xmlns: "http://www.w3.org/2000/svg",
|
|
3543
3504
|
viewBox: "0 0 24 24",
|
|
3544
3505
|
className: "w-12 h-12 fill-neutral-100"
|
|
3545
3506
|
},
|
|
3546
|
-
/* @__PURE__ */
|
|
3547
|
-
)), /* @__PURE__ */
|
|
3507
|
+
/* @__PURE__ */ React33.createElement("path", { fillRule: "evenodd", d: "M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12zM12 8.25a.75.75 0 01.75.75v3.75a.75.75 0 01-1.5 0V9a.75.75 0 01.75-.75zm0 8.25a.75.75 0 100-1.5.75.75 0 000 1.5z", clipRule: "evenodd" })
|
|
3508
|
+
)), /* @__PURE__ */ React33.createElement("h1", { className: " text-xl md:text-3xl text-black tracking-tight mb-4" }, title), /* @__PURE__ */ React33.createElement("p", { className: "text-[13px] leading-[1.8] text-neutral-600 mb-12" }, description)));
|
|
3548
3509
|
};
|
|
3549
3510
|
|
|
3550
3511
|
// src/components/ManagedNewsletterSplitBlock.tsx
|
|
3551
|
-
import
|
|
3512
|
+
import React34 from "react";
|
|
3552
3513
|
import Image7 from "next/image";
|
|
3553
3514
|
var ManagedNewsletterSplitBlock = ({
|
|
3554
3515
|
tagline,
|
|
@@ -3562,7 +3523,7 @@ var ManagedNewsletterSplitBlock = ({
|
|
|
3562
3523
|
ctaHref = "/contact",
|
|
3563
3524
|
children
|
|
3564
3525
|
}) => {
|
|
3565
|
-
return /* @__PURE__ */
|
|
3526
|
+
return /* @__PURE__ */ React34.createElement("div", { className: "grow flex flex-col md:flex-row relative w-full pt-32 md:pt-0" }, /* @__PURE__ */ React34.createElement("div", { className: "hidden md:block md:w-1/2 relative min-h-screen overflow-hidden" }, /* @__PURE__ */ React34.createElement(
|
|
3566
3527
|
Image7,
|
|
3567
3528
|
{
|
|
3568
3529
|
src: imageSrc,
|
|
@@ -3572,7 +3533,7 @@ var ManagedNewsletterSplitBlock = ({
|
|
|
3572
3533
|
className: "object-cover object-top grayscale opacity-60",
|
|
3573
3534
|
quality: 100
|
|
3574
3535
|
}
|
|
3575
|
-
), /* @__PURE__ */
|
|
3536
|
+
), /* @__PURE__ */ React34.createElement(
|
|
3576
3537
|
"div",
|
|
3577
3538
|
{
|
|
3578
3539
|
className: "absolute inset-0 z-10 pointer-events-none",
|
|
@@ -3580,7 +3541,7 @@ var ManagedNewsletterSplitBlock = ({
|
|
|
3580
3541
|
background: "linear-gradient(to right, rgba(255,255,255,0) 30%, #ffffff 100%)"
|
|
3581
3542
|
}
|
|
3582
3543
|
}
|
|
3583
|
-
), /* @__PURE__ */
|
|
3544
|
+
), /* @__PURE__ */ React34.createElement(
|
|
3584
3545
|
"div",
|
|
3585
3546
|
{
|
|
3586
3547
|
className: "absolute inset-x-0 bottom-0 h-40 z-10 pointer-events-none",
|
|
@@ -3588,7 +3549,7 @@ var ManagedNewsletterSplitBlock = ({
|
|
|
3588
3549
|
background: "linear-gradient(to bottom, rgba(255,255,255,0) 0%, #ffffff 100%)"
|
|
3589
3550
|
}
|
|
3590
3551
|
}
|
|
3591
|
-
)), /* @__PURE__ */
|
|
3552
|
+
)), /* @__PURE__ */ React34.createElement("div", { className: "w-full md:w-1/2 flex flex-col items-center justify-center p-4 md:p-12 relative z-20" }, /* @__PURE__ */ React34.createElement("div", { className: "relative w-full max-w-lg p-8 md:p-12 text-center md:text-left transition-all duration-700 ease-out" }, /* @__PURE__ */ React34.createElement(
|
|
3592
3553
|
"div",
|
|
3593
3554
|
{
|
|
3594
3555
|
className: "absolute inset-0 pointer-events-none opacity-[0.03] z-0",
|
|
@@ -3597,7 +3558,7 @@ var ManagedNewsletterSplitBlock = ({
|
|
|
3597
3558
|
backgroundRepeat: "repeat"
|
|
3598
3559
|
}
|
|
3599
3560
|
}
|
|
3600
|
-
), /* @__PURE__ */
|
|
3561
|
+
), /* @__PURE__ */ React34.createElement("div", { className: "relative z-10" }, /* @__PURE__ */ React34.createElement("div", { className: "mb-10 border-b border-neutral-200 pb-8 text-center md:text-left" }, tagline && /* @__PURE__ */ React34.createElement("span", { className: "text-[11px] tracking-[0.4em] text-neutral-500 " }, tagline), /* @__PURE__ */ React34.createElement("h1", { className: " text-3xl mt-4 text-black tracking-tight mb-4" }, title), subtitle && /* @__PURE__ */ React34.createElement("p", { className: "text-[11px] tracking-[0.2em] text-neutral-500 " }, subtitle)), /* @__PURE__ */ React34.createElement("p", { className: "text-[13px] leading-[1.8] text-neutral-600 mb-10 text-center md:text-left" }, description), children && /* @__PURE__ */ React34.createElement("div", { className: "mb-8 text-left" }, children), /* @__PURE__ */ React34.createElement("div", { className: "text-center md:text-left mt-10 space-y-6" }, dividerText && /* @__PURE__ */ React34.createElement("div", { className: "flex items-center" }, /* @__PURE__ */ React34.createElement("div", { className: "grow h-px bg-neutral-100" }), /* @__PURE__ */ React34.createElement("span", { className: "shrink mx-4 text-[11px] tracking-[0.2em] text-neutral-400 " }, dividerText), /* @__PURE__ */ React34.createElement("div", { className: "grow h-px bg-neutral-100" })), ctaText && ctaHref && /* @__PURE__ */ React34.createElement("div", { className: "w-full *:w-full" }, /* @__PURE__ */ React34.createElement(
|
|
3601
3562
|
ThreeDButton,
|
|
3602
3563
|
{
|
|
3603
3564
|
href: ctaHref,
|
|
@@ -3608,10 +3569,10 @@ var ManagedNewsletterSplitBlock = ({
|
|
|
3608
3569
|
};
|
|
3609
3570
|
|
|
3610
3571
|
// src/components/PortfolioHero.tsx
|
|
3611
|
-
import
|
|
3572
|
+
import React35, { useEffect as useEffect16, useRef as useRef10 } from "react";
|
|
3612
3573
|
import Link8 from "next/link";
|
|
3613
3574
|
import Image8 from "next/image";
|
|
3614
|
-
import { HugeiconsIcon as
|
|
3575
|
+
import { HugeiconsIcon as HugeiconsIcon23 } from "@hugeicons/react";
|
|
3615
3576
|
import { ArrowRight01Icon as ArrowRight01Icon7 } from "@hugeicons/core-free-icons";
|
|
3616
3577
|
var useScrollAnimation = () => {
|
|
3617
3578
|
const elementRef = useRef10(null);
|
|
@@ -3651,13 +3612,13 @@ var PortfolioHero = ({
|
|
|
3651
3612
|
secondaryCtaHref
|
|
3652
3613
|
}) => {
|
|
3653
3614
|
const heroContentRef = useScrollAnimation();
|
|
3654
|
-
return /* @__PURE__ */
|
|
3615
|
+
return /* @__PURE__ */ React35.createElement("section", { className: "pt-8 pb-16 px-6 md:px-12 flex flex-col relative overflow-hidden z-10 w-full" }, /* @__PURE__ */ React35.createElement(
|
|
3655
3616
|
"div",
|
|
3656
3617
|
{
|
|
3657
3618
|
ref: heroContentRef,
|
|
3658
3619
|
className: "w-full opacity-0 translate-y-5 transition-all duration-1000 ease-out relative z-10"
|
|
3659
3620
|
},
|
|
3660
|
-
/* @__PURE__ */
|
|
3621
|
+
/* @__PURE__ */ React35.createElement("div", { className: "flex flex-col sm:flex-row sm:items-center gap-5 sm:gap-8 mb-10" }, /* @__PURE__ */ React35.createElement("div", { className: "relative w-20 h-20 sm:w-32 sm:h-32 rounded-full overflow-hidden border border-neutral-200 shrink-0 shadow-sm" }, /* @__PURE__ */ React35.createElement(
|
|
3661
3622
|
Image8,
|
|
3662
3623
|
{
|
|
3663
3624
|
src: imageSrc,
|
|
@@ -3668,7 +3629,7 @@ var PortfolioHero = ({
|
|
|
3668
3629
|
sizes: "(max-width: 640px) 80px, 128px",
|
|
3669
3630
|
quality: 100
|
|
3670
3631
|
}
|
|
3671
|
-
)), /* @__PURE__ */
|
|
3632
|
+
)), /* @__PURE__ */ React35.createElement("div", { className: "flex flex-col text-left" }, /* @__PURE__ */ React35.createElement("h1", { className: " text-3xl sm:text-5xl lg:text-6xl tracking-tight text-black leading-none mb-3" }, name), socialLabel && /* @__PURE__ */ React35.createElement("span", { className: "text-[11px] tracking-[0.2em] text-neutral-500 " }, socialLabel), socialLinkText && socialLinkHref && /* @__PURE__ */ React35.createElement(
|
|
3672
3633
|
"a",
|
|
3673
3634
|
{
|
|
3674
3635
|
href: socialLinkHref,
|
|
@@ -3678,30 +3639,30 @@ var PortfolioHero = ({
|
|
|
3678
3639
|
},
|
|
3679
3640
|
socialLinkText
|
|
3680
3641
|
))),
|
|
3681
|
-
/* @__PURE__ */
|
|
3682
|
-
/* @__PURE__ */
|
|
3642
|
+
/* @__PURE__ */ React35.createElement("p", { className: "text-[13px] leading-[1.8] max-w-4xl mb-12 text-neutral-600" }, bio),
|
|
3643
|
+
/* @__PURE__ */ React35.createElement("div", { className: "flex flex-col sm:flex-row gap-4 w-full sm:w-auto" }, primaryCtaText && primaryCtaHref && /* @__PURE__ */ React35.createElement("div", { className: "w-full sm:w-auto *:w-full" }, /* @__PURE__ */ React35.createElement(
|
|
3683
3644
|
ThreeDButton,
|
|
3684
3645
|
{
|
|
3685
3646
|
href: primaryCtaHref,
|
|
3686
3647
|
className: "py-3 tracking-widest text-[11px]"
|
|
3687
3648
|
},
|
|
3688
3649
|
primaryCtaText
|
|
3689
|
-
)), secondaryCtaText && secondaryCtaHref && /* @__PURE__ */
|
|
3650
|
+
)), secondaryCtaText && secondaryCtaHref && /* @__PURE__ */ React35.createElement(
|
|
3690
3651
|
Link8,
|
|
3691
3652
|
{
|
|
3692
3653
|
href: secondaryCtaHref,
|
|
3693
3654
|
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"
|
|
3694
3655
|
},
|
|
3695
3656
|
secondaryCtaText,
|
|
3696
|
-
/* @__PURE__ */
|
|
3657
|
+
/* @__PURE__ */ React35.createElement(HugeiconsIcon23, { icon: ArrowRight01Icon7, size: 16 })
|
|
3697
3658
|
))
|
|
3698
3659
|
));
|
|
3699
3660
|
};
|
|
3700
3661
|
|
|
3701
3662
|
// src/components/GifFeatureCard.tsx
|
|
3702
|
-
import
|
|
3663
|
+
import React36, { useState as useState23 } from "react";
|
|
3703
3664
|
import Image9 from "next/image";
|
|
3704
|
-
import { HugeiconsIcon as
|
|
3665
|
+
import { HugeiconsIcon as HugeiconsIcon24 } from "@hugeicons/react";
|
|
3705
3666
|
import { Loading03Icon as Loading03Icon13 } from "@hugeicons/core-free-icons";
|
|
3706
3667
|
var GifFeatureCard = ({
|
|
3707
3668
|
gifSrc,
|
|
@@ -3711,19 +3672,19 @@ var GifFeatureCard = ({
|
|
|
3711
3672
|
className = "aspect-video"
|
|
3712
3673
|
}) => {
|
|
3713
3674
|
const [isLoading, setIsLoading] = useState23(true);
|
|
3714
|
-
return /* @__PURE__ */
|
|
3715
|
-
|
|
3675
|
+
return /* @__PURE__ */ React36.createElement("div", { className: `relative w-full bg-black overflow-hidden shadow-2xl ${className}` }, isLoading && /* @__PURE__ */ React36.createElement("div", { className: "absolute inset-0 flex items-center justify-center z-20 bg-black" }, /* @__PURE__ */ React36.createElement(
|
|
3676
|
+
HugeiconsIcon24,
|
|
3716
3677
|
{
|
|
3717
3678
|
icon: Loading03Icon13,
|
|
3718
3679
|
size: 32,
|
|
3719
3680
|
className: "animate-spin text-white"
|
|
3720
3681
|
}
|
|
3721
|
-
)), /* @__PURE__ */
|
|
3682
|
+
)), /* @__PURE__ */ React36.createElement(
|
|
3722
3683
|
"div",
|
|
3723
3684
|
{
|
|
3724
3685
|
className: `absolute inset-0 z-0 transition-all duration-1000 ease-out ${isLoading ? "scale-105 blur-2xl opacity-0" : "scale-100 blur-0 opacity-100"}`
|
|
3725
3686
|
},
|
|
3726
|
-
/* @__PURE__ */
|
|
3687
|
+
/* @__PURE__ */ React36.createElement(
|
|
3727
3688
|
Image9,
|
|
3728
3689
|
{
|
|
3729
3690
|
src: gifSrc,
|
|
@@ -3734,16 +3695,16 @@ var GifFeatureCard = ({
|
|
|
3734
3695
|
className: "object-cover object-center pointer-events-none"
|
|
3735
3696
|
}
|
|
3736
3697
|
)
|
|
3737
|
-
), /* @__PURE__ */
|
|
3698
|
+
), /* @__PURE__ */ React36.createElement(
|
|
3738
3699
|
"div",
|
|
3739
3700
|
{
|
|
3740
3701
|
className: "absolute inset-x-0 bottom-0 h-1/2 sm:h-2/3 bg-linear-to-t from-black/95 via-black/40 to-transparent z-10 pointer-events-none transition-opacity duration-700"
|
|
3741
3702
|
}
|
|
3742
|
-
), /* @__PURE__ */
|
|
3703
|
+
), /* @__PURE__ */ React36.createElement("div", { className: "absolute inset-x-0 bottom-0 p-6 sm:p-8 z-30 flex flex-col justify-end text-left pointer-events-none" }, title && /* @__PURE__ */ React36.createElement("h3", { className: " text-xl sm:text-2xl md:text-3xl text-white tracking-tight mb-2 sm:mb-3 drop-shadow-md" }, title), subtitle && /* @__PURE__ */ React36.createElement("p", { className: "text-[13px] sm:text-[15px] leading-relaxed text-neutral-300 max-w-2xl drop-shadow-sm" }, subtitle)));
|
|
3743
3704
|
};
|
|
3744
3705
|
|
|
3745
3706
|
// src/components/MedicalFeatureStatsBlock.tsx
|
|
3746
|
-
import
|
|
3707
|
+
import React37, { useState as useState24, useEffect as useEffect17, useRef as useRef11 } from "react";
|
|
3747
3708
|
import Image10 from "next/image";
|
|
3748
3709
|
var MedicalFeatureStatsBlock = ({
|
|
3749
3710
|
bottomHeadline,
|
|
@@ -3772,7 +3733,7 @@ var MedicalFeatureStatsBlock = ({
|
|
|
3772
3733
|
}
|
|
3773
3734
|
return () => observer.disconnect();
|
|
3774
3735
|
}, []);
|
|
3775
|
-
return /* @__PURE__ */
|
|
3736
|
+
return /* @__PURE__ */ React37.createElement("section", { className: "py-24 w-full flex justify-center relative z-10" }, /* @__PURE__ */ React37.createElement("div", { className: "max-w-6xl w-full flex flex-col px-4 md:px-8" }, /* @__PURE__ */ React37.createElement("div", { className: "flex flex-col lg:flex-row justify-between items-start lg:items-end gap-10 mb-12" }, /* @__PURE__ */ React37.createElement("div", { className: "max-w-xl" }, /* @__PURE__ */ React37.createElement(
|
|
3776
3737
|
"h2",
|
|
3777
3738
|
{
|
|
3778
3739
|
ref: titleRef,
|
|
@@ -3780,7 +3741,7 @@ var MedicalFeatureStatsBlock = ({
|
|
|
3780
3741
|
style: isAnimating ? { animationIterationCount: 1 } : {}
|
|
3781
3742
|
},
|
|
3782
3743
|
bottomHeadline
|
|
3783
|
-
), /* @__PURE__ */
|
|
3744
|
+
), /* @__PURE__ */ React37.createElement("p", { className: "text-[14px] leading-relaxed text-neutral-500" }, bottomDescription)), /* @__PURE__ */ React37.createElement("div", { className: "flex items-center gap-4 shrink-0" }, /* @__PURE__ */ React37.createElement("div", { className: "flex -space-x-3" }, avatars.map((src, i) => /* @__PURE__ */ React37.createElement("div", { key: i, className: "relative w-12 h-12 rounded-full border-[3px] border-white overflow-hidden bg-neutral-100 z-1 hover:z-10 transition-all" }, /* @__PURE__ */ React37.createElement(
|
|
3784
3745
|
Image10,
|
|
3785
3746
|
{
|
|
3786
3747
|
src,
|
|
@@ -3789,17 +3750,17 @@ var MedicalFeatureStatsBlock = ({
|
|
|
3789
3750
|
sizes: "48px",
|
|
3790
3751
|
className: "object-cover"
|
|
3791
3752
|
}
|
|
3792
|
-
)))), /* @__PURE__ */
|
|
3753
|
+
)))), /* @__PURE__ */ React37.createElement("p", { className: "text-[11px] text-neutral-800 leading-[1.4] max-w-55" }, trustText))), /* @__PURE__ */ React37.createElement("div", { className: "grid grid-cols-1 md:grid-cols-2 gap-6" }, stats.map((stat, idx) => /* @__PURE__ */ React37.createElement("div", { key: idx, className: "bg-white rounded-4xl p-8 md:p-10 flex flex-col h-70" }, /* @__PURE__ */ React37.createElement("div", { className: "flex items-center p-0.5 mb-6" }, /* @__PURE__ */ React37.createElement("span", { className: "text-[14px] text-neutral-500 tracking-wide" }, stat.label)), /* @__PURE__ */ React37.createElement("h1", { className: "text-6xl gradient-text md:text-[80px] tracking-tighter text-black mt-auto leading-none" }, stat.value))))));
|
|
3793
3754
|
};
|
|
3794
3755
|
|
|
3795
3756
|
// src/components/ConsultantShowcase.tsx
|
|
3796
|
-
import
|
|
3757
|
+
import React38, { useState as useState25 } from "react";
|
|
3797
3758
|
import Image11 from "next/image";
|
|
3798
|
-
import { HugeiconsIcon as
|
|
3759
|
+
import { HugeiconsIcon as HugeiconsIcon25 } from "@hugeicons/react";
|
|
3799
3760
|
import { Loading03Icon as Loading03Icon14 } from "@hugeicons/core-free-icons";
|
|
3800
3761
|
var ImageWithLoader = ({ src, alt, className, sizes, priority = false }) => {
|
|
3801
3762
|
const [isLoading, setIsLoading] = useState25(true);
|
|
3802
|
-
return /* @__PURE__ */
|
|
3763
|
+
return /* @__PURE__ */ React38.createElement("div", { className: `absolute inset-0 bg-neutral-800 ${className}` }, isLoading && /* @__PURE__ */ React38.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__ */ React38.createElement(HugeiconsIcon25, { icon: Loading03Icon14, size: 24, className: "animate-spin text-white/50" })), /* @__PURE__ */ React38.createElement(
|
|
3803
3764
|
Image11,
|
|
3804
3765
|
{
|
|
3805
3766
|
src,
|
|
@@ -3845,7 +3806,7 @@ var ConsultantShowcase = ({
|
|
|
3845
3806
|
}
|
|
3846
3807
|
};
|
|
3847
3808
|
if (!profiles || profiles.length === 0) return null;
|
|
3848
|
-
return /* @__PURE__ */
|
|
3809
|
+
return /* @__PURE__ */ React38.createElement("section", { className: "py-24 w-full flex justify-center px-4 md:px-8 z-10 relative" }, /* @__PURE__ */ React38.createElement("div", { className: "max-w-6xl w-full" }, /* @__PURE__ */ React38.createElement(
|
|
3849
3810
|
"div",
|
|
3850
3811
|
{
|
|
3851
3812
|
className: "relative w-full h-100 md:h-112.5 rounded-4xl overflow-hidden bg-neutral-900 group select-none",
|
|
@@ -3855,13 +3816,13 @@ var ConsultantShowcase = ({
|
|
|
3855
3816
|
},
|
|
3856
3817
|
profiles.map((profile, idx) => {
|
|
3857
3818
|
const isActive = idx === currentIndex;
|
|
3858
|
-
return /* @__PURE__ */
|
|
3819
|
+
return /* @__PURE__ */ React38.createElement(
|
|
3859
3820
|
"div",
|
|
3860
3821
|
{
|
|
3861
3822
|
key: profile.id,
|
|
3862
3823
|
className: `absolute inset-0 transition-opacity duration-700 ease-in-out ${isActive ? "opacity-100 z-10" : "opacity-0 z-0 pointer-events-none"}`
|
|
3863
3824
|
},
|
|
3864
|
-
/* @__PURE__ */
|
|
3825
|
+
/* @__PURE__ */ React38.createElement(
|
|
3865
3826
|
ImageWithLoader,
|
|
3866
3827
|
{
|
|
3867
3828
|
src: profile.imageSrc,
|
|
@@ -3869,14 +3830,14 @@ var ConsultantShowcase = ({
|
|
|
3869
3830
|
priority: idx === 0
|
|
3870
3831
|
}
|
|
3871
3832
|
),
|
|
3872
|
-
/* @__PURE__ */
|
|
3873
|
-
/* @__PURE__ */
|
|
3874
|
-
/* @__PURE__ */
|
|
3833
|
+
/* @__PURE__ */ React38.createElement("div", { className: "absolute inset-0 bg-black/20 z-10 pointer-events-none" }),
|
|
3834
|
+
/* @__PURE__ */ React38.createElement("div", { className: "absolute top-0 left-0 w-full h-[60%] bg-linear-to-b from-black/80 via-black/30 to-transparent z-20 pointer-events-none" }),
|
|
3835
|
+
/* @__PURE__ */ React38.createElement("div", { className: `absolute top-8 left-8 md:top-12 md:left-12 z-30 text-white max-w-lg transition-transform duration-700 ease-out ${isActive ? "translate-y-0" : "-translate-y-4"}` }, /* @__PURE__ */ React38.createElement("h2", { className: "text-[29px] tracking-tight mb-2 leading-none" }, profile.name), /* @__PURE__ */ React38.createElement("div", { className: "flex flex-col gap-0.5" }, /* @__PURE__ */ React38.createElement("p", { className: "text-[15px] text-white/80 tracking-wide" }, profile.role), profile.description && /* @__PURE__ */ React38.createElement("p", { className: "text-[15px] text-white/80 tracking-wide mt-1" }, profile.description)))
|
|
3875
3836
|
);
|
|
3876
3837
|
}),
|
|
3877
|
-
/* @__PURE__ */
|
|
3878
|
-
/* @__PURE__ */
|
|
3879
|
-
/* @__PURE__ */
|
|
3838
|
+
/* @__PURE__ */ React38.createElement("div", { className: "absolute top-0 left-0 w-[20%] h-full z-40 cursor-w-resize hidden md:block", onClick: prevSlide }),
|
|
3839
|
+
/* @__PURE__ */ React38.createElement("div", { className: "absolute top-0 right-0 w-[20%] h-full z-40 cursor-e-resize hidden md:block", onClick: nextSlide }),
|
|
3840
|
+
/* @__PURE__ */ React38.createElement("div", { className: "absolute bottom-6 md:bottom-8 left-0 w-full px-4 z-30 flex justify-center items-center gap-2" }, profiles.map((_, idx) => /* @__PURE__ */ React38.createElement(
|
|
3880
3841
|
"button",
|
|
3881
3842
|
{
|
|
3882
3843
|
key: idx,
|
|
@@ -3888,13 +3849,13 @@ var ConsultantShowcase = ({
|
|
|
3888
3849
|
};
|
|
3889
3850
|
|
|
3890
3851
|
// src/components/ContentGridBlock.tsx
|
|
3891
|
-
import
|
|
3852
|
+
import React39, { useState as useState26 } from "react";
|
|
3892
3853
|
import Image12 from "next/image";
|
|
3893
|
-
import { HugeiconsIcon as
|
|
3854
|
+
import { HugeiconsIcon as HugeiconsIcon26 } from "@hugeicons/react";
|
|
3894
3855
|
import { Loading03Icon as Loading03Icon15 } from "@hugeicons/core-free-icons";
|
|
3895
3856
|
var ImageWithLoader2 = ({ src, alt, className, sizes }) => {
|
|
3896
3857
|
const [isLoading, setIsLoading] = useState26(true);
|
|
3897
|
-
return /* @__PURE__ */
|
|
3858
|
+
return /* @__PURE__ */ React39.createElement("div", { className: `relative overflow-hidden bg-neutral-100 ${className}` }, isLoading && /* @__PURE__ */ React39.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__ */ React39.createElement(HugeiconsIcon26, { icon: Loading03Icon15, size: 24, className: "animate-spin text-neutral-400" })), /* @__PURE__ */ React39.createElement(
|
|
3898
3859
|
Image12,
|
|
3899
3860
|
{
|
|
3900
3861
|
src,
|
|
@@ -3916,30 +3877,30 @@ var ContentGridBlock = ({
|
|
|
3916
3877
|
middleBottomCard,
|
|
3917
3878
|
rightCards
|
|
3918
3879
|
}) => {
|
|
3919
|
-
return /* @__PURE__ */
|
|
3880
|
+
return /* @__PURE__ */ React39.createElement("section", { className: " w-full flex justify-center z-10 relative" }, /* @__PURE__ */ React39.createElement("div", { className: "max-w-300 w-full px-4 md:px-8 flex flex-col gap-12" }, /* @__PURE__ */ React39.createElement("div", { className: "flex flex-col lg:flex-row justify-between items-start lg:items-end gap-6 w-full" }, /* @__PURE__ */ React39.createElement("h2", { className: "text-3xl tracking-tight text-black leading-[1.15] max-w-lg" }, header.titlePrefix, " ", /* @__PURE__ */ React39.createElement("span", { className: "gradient-text" }, header.highlightText))), /* @__PURE__ */ React39.createElement("div", { className: "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6" }, /* @__PURE__ */ React39.createElement("div", { className: "flex flex-col justify-end" }, /* @__PURE__ */ React39.createElement("div", { className: "bg-black rounded-3xl p-8 flex flex-col h-80" }, /* @__PURE__ */ React39.createElement("p", { className: "text-[17px] text-white leading-snug mb-4" }, leftCard.mainText), leftCard.tag && /* @__PURE__ */ React39.createElement("span", { className: "mb-auto text-[11px] text-neutral-200 tracking-widest" }, leftCard.tag), /* @__PURE__ */ React39.createElement("div", { className: "flex items-center justify-between mt-8" }, /* @__PURE__ */ React39.createElement("div", null, /* @__PURE__ */ React39.createElement("h4", { className: "text-[15px] text-white" }, leftCard.title), /* @__PURE__ */ React39.createElement("p", { className: "text-[13px] text-neutral-300" }, leftCard.subtitle)), /* @__PURE__ */ React39.createElement("div", { className: "w-10 h-10 rounded-full overflow-hidden relative" }, /* @__PURE__ */ React39.createElement(Image12, { src: leftCard.thumbnailSrc, alt: leftCard.title, fill: true, className: "object-cover" }))))), /* @__PURE__ */ React39.createElement("div", { className: "flex flex-col gap-6" }, /* @__PURE__ */ React39.createElement("div", { className: "bg-white rounded-3xl p-8 flex flex-col relative h-75" }, /* @__PURE__ */ React39.createElement("div", { className: "absolute top-6 right-6 flex flex-col items-end gap-1" }, /* @__PURE__ */ React39.createElement("span", { className: "text-[11px] text-neutral-400 tracking-wide" }, middleTopCard.topRightLabel), /* @__PURE__ */ React39.createElement("div", { className: "flex items-center gap-2" }, /* @__PURE__ */ React39.createElement("div", { className: "flex -space-x-2" }, middleTopCard.topRightAvatars.map((src, i) => /* @__PURE__ */ React39.createElement("div", { key: i, className: "w-7 h-7 rounded-full border-2 border-white overflow-hidden relative z-10" }, /* @__PURE__ */ React39.createElement(Image12, { src, alt: "Avatar", fill: true, className: "object-cover", sizes: "28px" })))), /* @__PURE__ */ React39.createElement("span", { className: "text-sm text-neutral-500" }, middleTopCard.topRightCount))), /* @__PURE__ */ React39.createElement("div", { className: "grow flex flex-col justify-center items-center py-6" }, /* @__PURE__ */ React39.createElement("div", { className: "px-5 py-2 rounded-full bg-neutral-50/50 border border-neutral-200 text-[13px] text-neutral-600" }, middleTopCard.badgePrefix, " ", /* @__PURE__ */ React39.createElement("span", { className: " text-black" }, middleTopCard.badgeHighlight), middleTopCard.badgeSuffix)), /* @__PURE__ */ React39.createElement("div", { className: "mt-auto" }, /* @__PURE__ */ React39.createElement("p", { className: "text-[11px] text-neutral-400 tracking-wide mb-1" }, middleTopCard.title), /* @__PURE__ */ React39.createElement("p", { className: "text-[14px] text-black leading-snug pr-4" }, middleTopCard.description))), /* @__PURE__ */ React39.createElement("div", { className: "bg-white rounded-3xl p-8 flex flex-col h-80" }, /* @__PURE__ */ React39.createElement("div", { className: "flex justify-between items-start mb-6" }, /* @__PURE__ */ React39.createElement("div", null, /* @__PURE__ */ React39.createElement("h4", { className: "text-[15px] text-black leading-tight" }, middleBottomCard.title), /* @__PURE__ */ React39.createElement("p", { className: "text-[13px] text-neutral-400" }, middleBottomCard.subtitle)), /* @__PURE__ */ React39.createElement("div", { className: "w-10 h-10 rounded-full overflow-hidden relative" }, /* @__PURE__ */ React39.createElement(Image12, { src: middleBottomCard.thumbnailSrc, alt: middleBottomCard.title, fill: true, className: "object-cover" }))), /* @__PURE__ */ React39.createElement("div", { className: "mt-auto" }, /* @__PURE__ */ React39.createElement("p", { className: "text-[16px] text-black leading-snug mb-4" }, middleBottomCard.mainText), middleBottomCard.tag && /* @__PURE__ */ React39.createElement("span", { className: "text-[11px] text-neutral-400 tracking-widest" }, middleBottomCard.tag)))), /* @__PURE__ */ React39.createElement("div", { className: "flex flex-col gap-6" }, rightCards.slice(0, 2).map((card, idx) => /* @__PURE__ */ React39.createElement("div", { key: idx, className: "relative w-full h-80 text-white rounded-3xl overflow-hidden group" }, /* @__PURE__ */ React39.createElement(
|
|
3920
3881
|
ImageWithLoader2,
|
|
3921
3882
|
{
|
|
3922
3883
|
src: card.bgImageSrc,
|
|
3923
3884
|
alt: card.title,
|
|
3924
3885
|
className: "absolute inset-0 w-full h-full"
|
|
3925
3886
|
}
|
|
3926
|
-
), /* @__PURE__ */
|
|
3887
|
+
), /* @__PURE__ */ React39.createElement("div", { className: "absolute inset-0 z-20 pointer-events-none" }), /* @__PURE__ */ React39.createElement("div", { className: "absolute inset-0 z-30 p-6 flex flex-col justify-end text-white" }, /* @__PURE__ */ React39.createElement("p", { className: "text-[14px] leading-snug mb-3 pr-2 text-white/90" }, card.mainText), card.tag && /* @__PURE__ */ React39.createElement("span", { className: "mb-4 text-[11px] text-white/50 tracking-widest" }, card.tag), /* @__PURE__ */ React39.createElement("div", { className: "pt-3" }, /* @__PURE__ */ React39.createElement("h4", { className: "text-[15px] text-white tracking-wide" }, card.title), /* @__PURE__ */ React39.createElement("p", { className: "text-[13px] text-white/60" }, card.subtitle)))))))));
|
|
3927
3888
|
};
|
|
3928
3889
|
|
|
3929
3890
|
// src/components/ManagedProjectsBlock.tsx
|
|
3930
|
-
import
|
|
3891
|
+
import React40 from "react";
|
|
3931
3892
|
import Link9 from "next/link";
|
|
3932
3893
|
var GridSection = ({
|
|
3933
3894
|
children,
|
|
3934
3895
|
isLast = false,
|
|
3935
3896
|
className = "py-8 md:py-10"
|
|
3936
|
-
}) => /* @__PURE__ */
|
|
3897
|
+
}) => /* @__PURE__ */ React40.createElement("div", { className: `relative px-5 md:px-12 ${className} ${!isLast ? "" : ""}` }, children);
|
|
3937
3898
|
var ManagedProjectsBlock = ({
|
|
3938
3899
|
tagline,
|
|
3939
3900
|
title,
|
|
3940
3901
|
projects
|
|
3941
3902
|
}) => {
|
|
3942
|
-
return /* @__PURE__ */
|
|
3903
|
+
return /* @__PURE__ */ React40.createElement("div", { className: "grow pt-4 pb-20 px-3 md:px-8 w-full flex justify-center z-10 relative" }, /* @__PURE__ */ React40.createElement("div", { className: "relative bg-white rounded-2xl w-full max-w-5xl mx-auto overflow-hidden" }, /* @__PURE__ */ React40.createElement(
|
|
3943
3904
|
"div",
|
|
3944
3905
|
{
|
|
3945
3906
|
className: "absolute inset-0 pointer-events-none opacity-[0.03] z-0",
|
|
@@ -3948,16 +3909,16 @@ var ManagedProjectsBlock = ({
|
|
|
3948
3909
|
backgroundRepeat: "repeat"
|
|
3949
3910
|
}
|
|
3950
3911
|
}
|
|
3951
|
-
), /* @__PURE__ */
|
|
3912
|
+
), /* @__PURE__ */ React40.createElement("div", { className: "relative z-10" }, /* @__PURE__ */ React40.createElement(GridSection, null, tagline && /* @__PURE__ */ React40.createElement("span", { className: "text-[11px] tracking-[0.4em] text-neutral-500 text-left block " }, tagline), /* @__PURE__ */ React40.createElement("h1", { className: " text-3xl mt-4 text-black tracking-tight text-left" }, title)), projects.map((project, index) => {
|
|
3952
3913
|
const isLast = index === projects.length - 1;
|
|
3953
|
-
const projectContent = /* @__PURE__ */
|
|
3954
|
-
return /* @__PURE__ */
|
|
3914
|
+
const projectContent = /* @__PURE__ */ React40.createElement("div", { className: "group block w-full" }, /* @__PURE__ */ React40.createElement("div", { className: "flex flex-col md:flex-row md:items-center justify-between gap-3 md:gap-4 mb-4 md:mb-5" }, /* @__PURE__ */ React40.createElement("div", { className: "flex items-center gap-3 md:gap-4" }, /* @__PURE__ */ React40.createElement("h2", { className: " text-[16px] text-black transition-all flex items-center gap-2" }, project.title, /* @__PURE__ */ React40.createElement("span", { className: "text-[11px] opacity-0 -translate-x-2 group-hover:opacity-100 group-hover:translate-x-0 transition-all duration-300" }, project.isExternal ? "\u2197" : "\u2192")), /* @__PURE__ */ React40.createElement("span", { className: `text-[9px] px-2.5 py-1 rounded-full tracking-[0.15em] transition-colors ${project.status.toLowerCase() === "production" ? "bg-black text-white" : "bg-neutral-100 text-neutral-500 group-hover:bg-neutral-100 group-hover:text-black"}` }, project.status)), /* @__PURE__ */ React40.createElement("span", { className: "text-[11px] tracking-[0.2em] text-neutral-500 shrink-0 " }, project.date)), /* @__PURE__ */ React40.createElement("p", { className: "text-[13px] leading-[1.8] text-neutral-600 max-w-4xl text-left transition-colors group-hover:text-black" }, project.description));
|
|
3915
|
+
return /* @__PURE__ */ React40.createElement(GridSection, { key: project.id || index, isLast, className: isLast ? "py-8 md:py-10 pb-12 md:pb-14" : "py-8 md:py-10" }, project.isExternal ? /* @__PURE__ */ React40.createElement("a", { href: project.link, target: "_blank", rel: "noopener noreferrer", className: "block outline-none" }, projectContent) : /* @__PURE__ */ React40.createElement(Link9, { href: project.link, className: "block outline-none" }, projectContent));
|
|
3955
3916
|
}))));
|
|
3956
3917
|
};
|
|
3957
3918
|
|
|
3958
3919
|
// src/components/UniversalVerificationPage.tsx
|
|
3959
|
-
import
|
|
3960
|
-
import { HugeiconsIcon as
|
|
3920
|
+
import React41 from "react";
|
|
3921
|
+
import { HugeiconsIcon as HugeiconsIcon27 } from "@hugeicons/react";
|
|
3961
3922
|
import {
|
|
3962
3923
|
ArrowLeft01Icon as ArrowLeft01Icon8,
|
|
3963
3924
|
Mail01Icon,
|
|
@@ -4013,15 +3974,15 @@ var VerificationRow = ({
|
|
|
4013
3974
|
break;
|
|
4014
3975
|
}
|
|
4015
3976
|
const isDisabled = status === "APPROVED" || isLoading;
|
|
4016
|
-
return /* @__PURE__ */
|
|
3977
|
+
return /* @__PURE__ */ React41.createElement(
|
|
4017
3978
|
"div",
|
|
4018
3979
|
{
|
|
4019
3980
|
onClick: isDisabled ? void 0 : onClick,
|
|
4020
3981
|
className: `flex items-center p-4 transition-colors ${!isLast ? "" : ""} ${isDisabled ? "opacity-70 cursor-default" : "cursor-pointer hover:bg-neutral-50"}`
|
|
4021
3982
|
},
|
|
4022
|
-
/* @__PURE__ */
|
|
4023
|
-
/* @__PURE__ */
|
|
4024
|
-
/* @__PURE__ */
|
|
3983
|
+
/* @__PURE__ */ React41.createElement("div", { className: "w-9 h-9 rounded-full border border-neutral-200 bg-white flex items-center justify-center shrink-0 mr-4" }, /* @__PURE__ */ React41.createElement(HugeiconsIcon27, { icon, size: 16, className: "text-black" })),
|
|
3984
|
+
/* @__PURE__ */ React41.createElement("div", { className: "flex-1 min-w-0" }, /* @__PURE__ */ React41.createElement("p", { className: "text-[14px] truncate text-black" }, title), /* @__PURE__ */ React41.createElement("p", { className: `text-[10px] inline-flex items-center ${bg} rounded-full px-2 py-1 ${statusColor} mt-0.5` }, statusText)),
|
|
3985
|
+
/* @__PURE__ */ React41.createElement("div", { className: "shrink-0 ml-2" }, isLoading ? /* @__PURE__ */ React41.createElement(HugeiconsIcon27, { icon: Loading03Icon16, size: 20, className: "animate-spin text-black" }) : /* @__PURE__ */ React41.createElement(HugeiconsIcon27, { icon: StatusIcon, size: 20, className: iconColor }))
|
|
4025
3986
|
);
|
|
4026
3987
|
};
|
|
4027
3988
|
var UniversalVerificationPage = ({
|
|
@@ -4034,15 +3995,15 @@ var UniversalVerificationPage = ({
|
|
|
4034
3995
|
onTriggerVerification,
|
|
4035
3996
|
activeLoadingType
|
|
4036
3997
|
}) => {
|
|
4037
|
-
return /* @__PURE__ */
|
|
3998
|
+
return /* @__PURE__ */ React41.createElement("div", { className: "w-full max-w-3xl mx-auto flex flex-col animate-in fade-in duration-300 pb-12" }, /* @__PURE__ */ React41.createElement("div", { className: "mb-6 flex items-center px-1" }, /* @__PURE__ */ React41.createElement(
|
|
4038
3999
|
"button",
|
|
4039
4000
|
{
|
|
4040
4001
|
onClick: onBack,
|
|
4041
4002
|
className: "flex items-center gap-2 text-neutral-500 hover:text-black transition-colors text-[13px] outline-none"
|
|
4042
4003
|
},
|
|
4043
|
-
/* @__PURE__ */
|
|
4004
|
+
/* @__PURE__ */ React41.createElement(HugeiconsIcon27, { icon: ArrowLeft01Icon8, size: 16 }),
|
|
4044
4005
|
" Back"
|
|
4045
|
-
)), /* @__PURE__ */
|
|
4006
|
+
)), /* @__PURE__ */ React41.createElement("div", { className: "w-full flex flex-col gap-4 mb-8" }, /* @__PURE__ */ React41.createElement("div", { className: "w-full bg-white rounded-2xl overflow-hidden" }, /* @__PURE__ */ React41.createElement(
|
|
4046
4007
|
VerificationRow,
|
|
4047
4008
|
{
|
|
4048
4009
|
icon: Mail01Icon,
|
|
@@ -4051,7 +4012,7 @@ var UniversalVerificationPage = ({
|
|
|
4051
4012
|
isLoading: activeLoadingType === "EMAIL",
|
|
4052
4013
|
onClick: () => onTriggerVerification("EMAIL")
|
|
4053
4014
|
}
|
|
4054
|
-
), /* @__PURE__ */
|
|
4015
|
+
), /* @__PURE__ */ React41.createElement(
|
|
4055
4016
|
VerificationRow,
|
|
4056
4017
|
{
|
|
4057
4018
|
icon: SmartPhone01Icon,
|
|
@@ -4060,7 +4021,7 @@ var UniversalVerificationPage = ({
|
|
|
4060
4021
|
isLoading: activeLoadingType === "PHONE",
|
|
4061
4022
|
onClick: () => onTriggerVerification("PHONE")
|
|
4062
4023
|
}
|
|
4063
|
-
), /* @__PURE__ */
|
|
4024
|
+
), /* @__PURE__ */ React41.createElement(
|
|
4064
4025
|
VerificationRow,
|
|
4065
4026
|
{
|
|
4066
4027
|
icon: UserIcon3,
|
|
@@ -4074,12 +4035,12 @@ var UniversalVerificationPage = ({
|
|
|
4074
4035
|
};
|
|
4075
4036
|
|
|
4076
4037
|
// src/components/UniversalRewardPage.tsx
|
|
4077
|
-
import
|
|
4038
|
+
import React42, { useState as useState27 } from "react";
|
|
4078
4039
|
import axios from "axios";
|
|
4079
4040
|
import toast8 from "react-hot-toast";
|
|
4080
4041
|
import Confetti from "react-confetti";
|
|
4081
4042
|
import { useWindowSize } from "react-use";
|
|
4082
|
-
import { HugeiconsIcon as
|
|
4043
|
+
import { HugeiconsIcon as HugeiconsIcon28 } from "@hugeicons/react";
|
|
4083
4044
|
import {
|
|
4084
4045
|
GiftIcon,
|
|
4085
4046
|
Loading03Icon as Loading03Icon17,
|
|
@@ -4089,12 +4050,12 @@ var formatWeb3Name = (name) => {
|
|
|
4089
4050
|
if (!name) return "";
|
|
4090
4051
|
return name.toLowerCase().replace(/\b\w/g, (c) => c.toUpperCase());
|
|
4091
4052
|
};
|
|
4092
|
-
var PageSpinner4 = () => /* @__PURE__ */
|
|
4053
|
+
var PageSpinner4 = () => /* @__PURE__ */ React42.createElement("div", { className: "flex justify-center items-center py-12 w-full" }, /* @__PURE__ */ React42.createElement(HugeiconsIcon28, { icon: Loading03Icon17, size: 32, className: "animate-spin mb-4 text-black" }));
|
|
4093
4054
|
var AvatarLogo = ({ src, alt, name, sizeClass = "w-12 h-12" }) => {
|
|
4094
4055
|
const [isLoaded, setIsLoaded] = useState27(false);
|
|
4095
4056
|
const fallbackUrl = `/api/avatar/?name=${encodeURIComponent(name || " ")}&background=ffffff&color=000000&size=200&font-size=0.33`;
|
|
4096
4057
|
const finalSrc = src || fallbackUrl;
|
|
4097
|
-
return /* @__PURE__ */
|
|
4058
|
+
return /* @__PURE__ */ React42.createElement("div", { className: `relative shrink-0 rounded-full bg-neutral-100 flex items-center justify-center overflow-hidden border-[3px] border-white ${sizeClass}` }, !isLoaded && /* @__PURE__ */ React42.createElement(HugeiconsIcon28, { icon: Loading03Icon17, size: 16, className: "animate-spin text-neutral-400 absolute" }), /* @__PURE__ */ React42.createElement("img", { src: finalSrc, alt, onLoad: () => setIsLoaded(true), className: `w-full h-full object-cover transition-opacity duration-300 ${isLoaded ? "opacity-100" : "opacity-0"}` }));
|
|
4098
4059
|
};
|
|
4099
4060
|
var UniversalRewardPage = ({
|
|
4100
4061
|
leaderboardToday,
|
|
@@ -4144,9 +4105,9 @@ var UniversalRewardPage = ({
|
|
|
4144
4105
|
setIsClaiming(false);
|
|
4145
4106
|
}
|
|
4146
4107
|
};
|
|
4147
|
-
return /* @__PURE__ */
|
|
4108
|
+
return /* @__PURE__ */ React42.createElement("div", null, /* @__PURE__ */ React42.createElement("div", { className: "mb-6 flex max-w-3xl w-full mx-auto items-center px-1" }, /* @__PURE__ */ React42.createElement("button", { onClick: onBackHandler, className: "flex items-center gap-2 text-neutral-500 hover:text-black transition-colors text-[13px] outline-none" }, /* @__PURE__ */ React42.createElement(HugeiconsIcon28, { icon: ArrowLeft01Icon9, size: 16 }), " Back")), /* @__PURE__ */ React42.createElement("div", { className: "w-full max-w-3xl mx-auto flex flex-col animate-in fade-in duration-300" }, /* @__PURE__ */ React42.createElement(ManagedToaster, null), showConfetti && /* @__PURE__ */ React42.createElement("div", { className: "fixed inset-0 z-200 pointer-events-none" }, /* @__PURE__ */ React42.createElement(Confetti, { width, height, recycle: false, numberOfPieces: 500, gravity: 0.15 })), isLoading ? /* @__PURE__ */ React42.createElement(PageSpinner4, null) : /* @__PURE__ */ React42.createElement(React42.Fragment, null, /* @__PURE__ */ React42.createElement("div", { className: "w-full p-4 pt-10 mb-6 flex items-end justify-center gap-2 sm:gap-6 h-64 relative overflow-hidden" }, /* @__PURE__ */ React42.createElement("div", { className: "flex flex-col items-center w-1/3 z-10" }, secondPlace ? /* @__PURE__ */ React42.createElement(React42.Fragment, null, /* @__PURE__ */ React42.createElement("span", { className: "text-black text-[10px] mb-2 truncate max-w-full px-1" }, formatWeb3Name(secondPlace.profile.web3Name)), /* @__PURE__ */ React42.createElement("div", { className: "relative shrink-0 mb-3" }, /* @__PURE__ */ React42.createElement(AvatarLogo, { src: secondPlace.profile.avatarUrl, alt: secondPlace.profile.username, name: formatWeb3Name(secondPlace.profile.web3Name), sizeClass: "w-14 h-14 ring-4 ring-orange-100" }), /* @__PURE__ */ React42.createElement("div", { className: "absolute -bottom-2 right-0 w-5 h-5 rounded-full bg-orange-400 text-white flex items-center justify-center text-[10px] border border-white " }, "2")), /* @__PURE__ */ React42.createElement("div", { className: "w-full bg-linear-to-t from-neutral-100 to-orange-200 rounded-t-xl h-24 flex items-center justify-center" }, /* @__PURE__ */ React42.createElement("span", { className: "text-orange-400/30 text-2xl " }, "2nd"))) : /* @__PURE__ */ React42.createElement("div", { className: "w-full bg-linear-to-t from-neutral-100 to-neutral-200 rounded-t-xl h-24 mt-auto" })), /* @__PURE__ */ React42.createElement("div", { className: "flex flex-col items-center w-1/3 z-20 -mt-8" }, firstPlace ? /* @__PURE__ */ React42.createElement(React42.Fragment, null, /* @__PURE__ */ React42.createElement("span", { className: "text-black text-[10px] mb-2 truncate max-w-full px-1" }, formatWeb3Name(firstPlace.profile.web3Name)), /* @__PURE__ */ React42.createElement("div", { className: "relative shrink-0 mb-3" }, /* @__PURE__ */ React42.createElement(AvatarLogo, { src: firstPlace.profile.avatarUrl, alt: firstPlace.profile.username, name: formatWeb3Name(firstPlace.profile.web3Name), sizeClass: "w-17 h-17 ring-4 ring-purple-200" }), /* @__PURE__ */ React42.createElement("div", { className: "absolute -bottom-2 right-2 w-5 h-5 rounded-full bg-purple-500 text-white flex items-center justify-center text-[10px] border border-white " }, "1")), /* @__PURE__ */ React42.createElement("div", { className: "w-full bg-linear-to-t from-neutral-100 to-purple-400 rounded-t-xl h-32 flex items-center justify-center " }, /* @__PURE__ */ React42.createElement("span", { className: "text-white/40 text-3xl tracking-widest" }, "1st"))) : /* @__PURE__ */ React42.createElement("div", { className: "w-full bg-linear-to-t from-neutral-100 to-neutral-200 rounded-t-xl h-32 mt-auto" })), /* @__PURE__ */ React42.createElement("div", { className: "flex flex-col items-center w-1/3 z-10" }, thirdPlace ? /* @__PURE__ */ React42.createElement(React42.Fragment, null, /* @__PURE__ */ React42.createElement("span", { className: "text-black text-[10px] mb-2 truncate max-w-full px-1" }, formatWeb3Name(thirdPlace.profile.web3Name)), /* @__PURE__ */ React42.createElement("div", { className: "relative shrink-0 mb-3" }, /* @__PURE__ */ React42.createElement(AvatarLogo, { src: thirdPlace.profile.avatarUrl, alt: thirdPlace.profile.username, name: formatWeb3Name(thirdPlace.profile.web3Name), sizeClass: "w-12 h-12 ring-4 ring-blue-100" }), /* @__PURE__ */ React42.createElement("div", { className: "absolute -bottom-2 right-0 w-5 h-5 rounded-full bg-blue-400 text-white flex items-center justify-center text-[10px] border border-white " }, "3")), /* @__PURE__ */ React42.createElement("div", { className: "w-full bg-linear-to-t from-neutral-100 to-blue-200 rounded-t-xl h-20 flex items-center justify-center" }, /* @__PURE__ */ React42.createElement("span", { className: "text-blue-400/30 text-xl " }, "3rd"))) : /* @__PURE__ */ React42.createElement("div", { className: "w-full bg-linear-to-t from-neutral-100 to-neutral-200 rounded-t-xl h-20 mt-auto" }))), /* @__PURE__ */ React42.createElement("div", { className: "flex items-center justify-center mb-6 sm:mb-8 w-full animate-in fade-in duration-300 px-2" }, /* @__PURE__ */ React42.createElement("div", { className: "flex items-center bg-white rounded-full p-1 sm:p-1.5 max-w-full overflow-x-auto custom-scrollbar " }, tabs.map((tab, idx) => {
|
|
4148
4109
|
const isActive = activeTabIndex === idx;
|
|
4149
|
-
return /* @__PURE__ */
|
|
4110
|
+
return /* @__PURE__ */ React42.createElement(
|
|
4150
4111
|
"button",
|
|
4151
4112
|
{
|
|
4152
4113
|
key: idx,
|
|
@@ -4155,19 +4116,19 @@ var UniversalRewardPage = ({
|
|
|
4155
4116
|
},
|
|
4156
4117
|
tab.label
|
|
4157
4118
|
);
|
|
4158
|
-
}))), /* @__PURE__ */
|
|
4119
|
+
}))), /* @__PURE__ */ React42.createElement("div", { className: "flex flex-col gap-6 w-full" }, /* @__PURE__ */ React42.createElement("div", { className: "bg-white rounded-2xl p-6 " }, /* @__PURE__ */ React42.createElement("h2", { className: "text-black text-lg mb-4 tracking-tight" }, "Available Tasks"), /* @__PURE__ */ React42.createElement("div", { className: "flex flex-col" }, rewards.length === 0 ? /* @__PURE__ */ React42.createElement("p", { className: "text-xs text-neutral-400 py-6 text-center" }, "No rewards available at the moment.") : rewards.map((reward) => {
|
|
4159
4120
|
const statusText = reward.status === "CLAIMED" ? "Claimed" : "Unclaimed";
|
|
4160
|
-
return /* @__PURE__ */
|
|
4121
|
+
return /* @__PURE__ */ React42.createElement(
|
|
4161
4122
|
"div",
|
|
4162
4123
|
{
|
|
4163
4124
|
key: reward.id,
|
|
4164
4125
|
onClick: () => setSelectedReward(reward),
|
|
4165
4126
|
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"
|
|
4166
4127
|
},
|
|
4167
|
-
/* @__PURE__ */
|
|
4168
|
-
/* @__PURE__ */
|
|
4128
|
+
/* @__PURE__ */ React42.createElement("div", { className: "flex items-center gap-4 min-w-0 flex-1" }, /* @__PURE__ */ React42.createElement("div", { className: "w-10 h-10 shrink-0 rounded-full flex items-center justify-center border border-neutral-200 text-black" }, /* @__PURE__ */ React42.createElement(HugeiconsIcon28, { icon: GiftIcon, size: 16 })), /* @__PURE__ */ React42.createElement("div", { className: "min-w-0 flex-1 flex flex-col items-start gap-0.5 pr-4" }, /* @__PURE__ */ React42.createElement("p", { className: "text-[13px] text-black truncate w-full" }, reward.title), /* @__PURE__ */ React42.createElement("p", { className: `text-[10px] inline-flex items-center bg-neutral-50 rounded-full px-2 py-1 text-neutral-500 mt-0.5` }, statusText))),
|
|
4129
|
+
/* @__PURE__ */ React42.createElement("div", { className: "shrink-0 flex flex-col items-end gap-1" }, /* @__PURE__ */ React42.createElement("span", { className: "text-[13px] text-black" }, reward.amount))
|
|
4169
4130
|
);
|
|
4170
|
-
}))), remainingLeaderboard.length > 0 && /* @__PURE__ */
|
|
4131
|
+
}))), remainingLeaderboard.length > 0 && /* @__PURE__ */ React42.createElement("div", { className: "bg-white rounded-2xl p-6 " }, /* @__PURE__ */ React42.createElement("h2", { className: "text-black text-lg mb-4 tracking-tight" }, "Leaderboard"), /* @__PURE__ */ React42.createElement("div", { className: "flex flex-col" }, remainingLeaderboard.map((lb) => /* @__PURE__ */ React42.createElement("div", { key: lb.profile.username, className: "flex items-center justify-between py-3 min-w-0" }, /* @__PURE__ */ React42.createElement("div", { className: "flex items-center gap-4 min-w-0 flex-1" }, /* @__PURE__ */ React42.createElement("div", { className: "text-[12px] text-neutral-400 w-4" }, lb.position), /* @__PURE__ */ React42.createElement(AvatarLogo, { src: lb.profile.avatarUrl, alt: lb.profile.username, name: formatWeb3Name(lb.profile.web3Name), sizeClass: "w-9 h-9" }), /* @__PURE__ */ React42.createElement("div", { className: "min-w-0 flex-1 flex flex-col" }, /* @__PURE__ */ React42.createElement("p", { className: "text-[13px] text-black truncate" }, formatWeb3Name(lb.profile.web3Name)), /* @__PURE__ */ React42.createElement("p", { className: "text-[11px] text-neutral-400 truncate" }, "@", lb.profile.username))), /* @__PURE__ */ React42.createElement("div", { className: "shrink-0 text-[13px] text-black" }, lb.amount))))))), selectedReward && /* @__PURE__ */ React42.createElement("div", { className: "fixed inset-0 z-120 flex items-center justify-center p-4 pointer-events-auto" }, /* @__PURE__ */ React42.createElement("div", { className: "absolute inset-0 bg-black/40", onClick: () => !isClaiming && setSelectedReward(null) }), /* @__PURE__ */ React42.createElement("div", { className: "relative w-full max-w-sm bg-white rounded-3xl flex flex-col overflow-hidden shadow-2xl animate-in zoom-in-95 duration-200" }, /* @__PURE__ */ React42.createElement("div", { className: "flex-1 p-6 flex flex-col items-center text-center mt-2" }, /* @__PURE__ */ React42.createElement("h2", { className: "text-xl text-black mb-2" }, selectedReward.title), /* @__PURE__ */ React42.createElement("p", { className: "text-[13px] text-neutral-500 mb-6 leading-relaxed" }, selectedReward.description), selectedReward.progressText && /* @__PURE__ */ React42.createElement("div", { className: "w-full mb-6" }, /* @__PURE__ */ React42.createElement("div", { className: `px-4 py-2 rounded-full text-[11px] tracking-wide ${selectedReward.status === "CLAIMED" ? "bg-green-50 text-green-600" : selectedReward.isEligible ? "bg-blue-50 text-blue-600" : "bg-neutral-100 text-neutral-600"}` }, selectedReward.progressText)), /* @__PURE__ */ React42.createElement("div", { className: " w-full rounded-xl p-4 mb-8 flex flex-col items-center" }, /* @__PURE__ */ React42.createElement("span", { className: "text-[11px] tracking-widest text-neutral-400 uppercase mb-1" }, "Reward Value"), /* @__PURE__ */ React42.createElement("span", { className: "text-3xl text-black " }, selectedReward.amount)), /* @__PURE__ */ React42.createElement("div", { className: "flex flex-col gap-3 w-full" }, /* @__PURE__ */ React42.createElement(
|
|
4171
4132
|
ThreeDActionButton,
|
|
4172
4133
|
{
|
|
4173
4134
|
onClick: handleClaimReward,
|
|
@@ -4176,7 +4137,7 @@ var UniversalRewardPage = ({
|
|
|
4176
4137
|
className: "w-full"
|
|
4177
4138
|
},
|
|
4178
4139
|
selectedReward.status === "CLAIMED" ? "Already Claimed" : selectedReward.isEligible ? "Claim Reward" : "Not Eligible Yet"
|
|
4179
|
-
), /* @__PURE__ */
|
|
4140
|
+
), /* @__PURE__ */ React42.createElement(
|
|
4180
4141
|
"button",
|
|
4181
4142
|
{
|
|
4182
4143
|
onClick: () => setSelectedReward(null),
|
|
@@ -4188,16 +4149,16 @@ var UniversalRewardPage = ({
|
|
|
4188
4149
|
};
|
|
4189
4150
|
|
|
4190
4151
|
// src/components/UniversalReferralPage.tsx
|
|
4191
|
-
import
|
|
4152
|
+
import React43, { useState as useState28 } from "react";
|
|
4192
4153
|
import toast9 from "react-hot-toast";
|
|
4193
|
-
import { HugeiconsIcon as
|
|
4154
|
+
import { HugeiconsIcon as HugeiconsIcon29 } from "@hugeicons/react";
|
|
4194
4155
|
import {
|
|
4195
4156
|
ArrowLeft01Icon as ArrowLeft01Icon10,
|
|
4196
4157
|
ArrowRight01Icon as ArrowRight01Icon8,
|
|
4197
4158
|
Loading03Icon as Loading03Icon18,
|
|
4198
4159
|
Copy01Icon as Copy01Icon4
|
|
4199
4160
|
} from "@hugeicons/core-free-icons";
|
|
4200
|
-
var PageSpinner5 = () => /* @__PURE__ */
|
|
4161
|
+
var PageSpinner5 = () => /* @__PURE__ */ React43.createElement("div", { className: "flex justify-center items-center py-12" }, /* @__PURE__ */ React43.createElement(HugeiconsIcon29, { icon: Loading03Icon18, size: 32, className: "animate-spin mb-4 text-black" }));
|
|
4201
4162
|
var formatWeb3Name2 = (name) => {
|
|
4202
4163
|
if (!name) return "";
|
|
4203
4164
|
return name.toLowerCase().replace(/\b\w/g, (c) => c.toUpperCase());
|
|
@@ -4231,47 +4192,47 @@ var UniversalReferralPage = ({
|
|
|
4231
4192
|
const [isLoaded, setIsLoaded] = useState28(false);
|
|
4232
4193
|
const fallbackUrl = `/api/avatar/?name=${encodeURIComponent(name || " ")}&background=ffffff&color=000000&size=200&font-size=0.33`;
|
|
4233
4194
|
const finalSrc = src || fallbackUrl;
|
|
4234
|
-
return /* @__PURE__ */
|
|
4195
|
+
return /* @__PURE__ */ React43.createElement("div", { className: `relative shrink-0 rounded-full bg-neutral-100 flex items-center justify-center overflow-hidden border-2 border-white ${sizeClass}` }, !isLoaded && /* @__PURE__ */ React43.createElement(HugeiconsIcon29, { icon: Loading03Icon18, size: 16, className: "animate-spin text-neutral-400 absolute" }), /* @__PURE__ */ React43.createElement("img", { src: finalSrc, alt, onLoad: () => setIsLoaded(true), className: `w-full h-full object-cover transition-opacity duration-300 ${isLoaded ? "opacity-100" : "opacity-0"}` }));
|
|
4235
4196
|
};
|
|
4236
|
-
return /* @__PURE__ */
|
|
4197
|
+
return /* @__PURE__ */ React43.createElement("div", { className: "w-full max-w-3xl mx-auto flex flex-col animate-in fade-in duration-300" }, /* @__PURE__ */ React43.createElement(ManagedToaster, null), /* @__PURE__ */ React43.createElement("div", { className: "mb-6 flex w-full items-center px-1" }, /* @__PURE__ */ React43.createElement("button", { onClick: onBackHandler, className: "flex items-center gap-2 text-neutral-500 hover:text-black transition-colors text-[13px] outline-none" }, /* @__PURE__ */ React43.createElement(HugeiconsIcon29, { icon: ArrowLeft01Icon10, size: 16 }), " Back")), /* @__PURE__ */ React43.createElement("div", { className: "flex flex-col gap-8 p-6 rounded-3xl bg-white w-full" }, /* @__PURE__ */ React43.createElement("div", { className: "flex flex-col gap-4 mb-2" }, /* @__PURE__ */ React43.createElement("div", null, /* @__PURE__ */ React43.createElement("h1", { className: "text-black text-xl mb-1 tracking-tight" }, "Your Referrals"), /* @__PURE__ */ React43.createElement("p", { className: "text-xs text-neutral-500" }, "Invite friends and earn rewards when they verify and activate cards.")), /* @__PURE__ */ React43.createElement("div", { className: "border border-neutral-200 rounded-xl p-4 flex items-center justify-between mt-2" }, /* @__PURE__ */ React43.createElement("div", { className: "flex flex-col gap-1" }, /* @__PURE__ */ React43.createElement("span", { className: "text-[11px] tracking-widest text-neutral-400 " }, "Invitation Code"), isLoading && !referralCode ? /* @__PURE__ */ React43.createElement("div", { className: "h-6 w-24 bg-neutral-50 animate-pulse rounded mt-1" }) : /* @__PURE__ */ React43.createElement("span", { className: "text-lg text-black tracking-widest" }, referralCode)), /* @__PURE__ */ React43.createElement(
|
|
4237
4198
|
"button",
|
|
4238
4199
|
{
|
|
4239
4200
|
onClick: handleCopyCode,
|
|
4240
4201
|
disabled: isLoading || !referralCode,
|
|
4241
4202
|
className: "w-10 h-10 rounded-full bg-white flex items-center justify-center text-neutral-500 hover:text-black transition-colors outline-none disabled:opacity-50"
|
|
4242
4203
|
},
|
|
4243
|
-
/* @__PURE__ */
|
|
4244
|
-
)), /* @__PURE__ */
|
|
4204
|
+
/* @__PURE__ */ React43.createElement(HugeiconsIcon29, { icon: Copy01Icon4, size: 18 })
|
|
4205
|
+
)), /* @__PURE__ */ React43.createElement("div", { className: "text-[13px] text-black px-1 mt-2" }, "Total Invited: ", isLoading && !totalCount ? "-" : totalCount)), /* @__PURE__ */ React43.createElement("div", { className: "w-full overflow-hidden" }, isLoading ? /* @__PURE__ */ React43.createElement(PageSpinner5, null) : /* @__PURE__ */ React43.createElement("div", { className: "flex flex-col min-w-0" }, /* @__PURE__ */ React43.createElement("div", null, referrals.length === 0 ? /* @__PURE__ */ React43.createElement("div", { className: "flex flex-col items-center justify-center py-12 opacity-50" }, /* @__PURE__ */ React43.createElement("p", { className: "text-xs text-neutral-500 text-center" }, "You haven't referred anyone yet.")) : referrals.map((ref, idx) => /* @__PURE__ */ React43.createElement(
|
|
4245
4206
|
"div",
|
|
4246
4207
|
{
|
|
4247
4208
|
key: `${ref.profile.username}-${idx}`,
|
|
4248
4209
|
className: "flex items-center justify-between py-4 hover:bg-neutral-50 transition-colors group min-w-0 px-3 -mx-3 rounded-xl"
|
|
4249
4210
|
},
|
|
4250
|
-
/* @__PURE__ */
|
|
4211
|
+
/* @__PURE__ */ React43.createElement("div", { className: "flex items-center gap-4 min-w-0 flex-1" }, /* @__PURE__ */ React43.createElement(
|
|
4251
4212
|
AvatarLogo2,
|
|
4252
4213
|
{
|
|
4253
4214
|
src: ref.profile.avatarUrl,
|
|
4254
4215
|
alt: ref.profile.username,
|
|
4255
4216
|
name: formatWeb3Name2(ref.profile.web3Name)
|
|
4256
4217
|
}
|
|
4257
|
-
), /* @__PURE__ */
|
|
4258
|
-
/* @__PURE__ */
|
|
4259
|
-
))), /* @__PURE__ */
|
|
4218
|
+
), /* @__PURE__ */ React43.createElement("div", { className: "min-w-0 flex-1 flex flex-col gap-0.5 pr-4" }, /* @__PURE__ */ React43.createElement("p", { className: "text-[14px] text-black truncate" }, formatWeb3Name2(ref.profile.web3Name)), /* @__PURE__ */ React43.createElement("p", { className: "text-[12px] text-neutral-500 truncate" }, "@", ref.profile.username))),
|
|
4219
|
+
/* @__PURE__ */ React43.createElement("div", { className: "shrink-0 flex flex-col items-end gap-1 text-right" }, /* @__PURE__ */ React43.createElement("span", { className: "text-[11px] text-neutral-400" }, "Joined"), /* @__PURE__ */ React43.createElement("span", { className: "text-[12px] text-black" }, formatDate(ref.joinedAt)))
|
|
4220
|
+
))), /* @__PURE__ */ React43.createElement("div", { className: "flex items-center justify-between pt-6 mt-2 " }, /* @__PURE__ */ React43.createElement("span", { className: "text-[11px] text-neutral-400 tracking-[0.2em]" }, "Page ", currentPage, " of ", totalPages === 0 ? 1 : totalPages), /* @__PURE__ */ React43.createElement("div", { className: "flex items-center gap-2" }, /* @__PURE__ */ React43.createElement(
|
|
4260
4221
|
"button",
|
|
4261
4222
|
{
|
|
4262
4223
|
onClick: () => onPageChange(currentPage - 1),
|
|
4263
4224
|
disabled: currentPage <= 1 || isLoading,
|
|
4264
4225
|
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"
|
|
4265
4226
|
},
|
|
4266
|
-
/* @__PURE__ */
|
|
4267
|
-
), /* @__PURE__ */
|
|
4227
|
+
/* @__PURE__ */ React43.createElement(HugeiconsIcon29, { icon: ArrowLeft01Icon10, size: 14 })
|
|
4228
|
+
), /* @__PURE__ */ React43.createElement(
|
|
4268
4229
|
"button",
|
|
4269
4230
|
{
|
|
4270
4231
|
onClick: () => onPageChange(currentPage + 1),
|
|
4271
4232
|
disabled: currentPage >= totalPages || isLoading || totalPages === 0,
|
|
4272
4233
|
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"
|
|
4273
4234
|
},
|
|
4274
|
-
/* @__PURE__ */
|
|
4235
|
+
/* @__PURE__ */ React43.createElement(HugeiconsIcon29, { icon: ArrowRight01Icon8, size: 14 })
|
|
4275
4236
|
)))))));
|
|
4276
4237
|
};
|
|
4277
4238
|
export {
|