@agg-build/ui 1.0.0 → 1.0.2
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/{chunk-75IGOQ4N.mjs → chunk-3IY2GA2D.mjs} +69 -45
- package/dist/{chunk-I2WBGEWK.mjs → chunk-4ILR2YH3.mjs} +319 -344
- package/dist/{chunk-C7T56TJR.mjs → chunk-PEVG67XU.mjs} +369 -19
- package/dist/{chunk-6NS7D73S.mjs → chunk-TLGQ4LID.mjs} +1556 -1204
- package/dist/{chunk-DMKKNK76.mjs → chunk-WFS772A3.mjs} +800 -592
- package/dist/{chunk-CGNDMLQL.mjs → chunk-XDZLCWUZ.mjs} +511 -899
- package/dist/{chunk-2QJXRRYP.mjs → chunk-YSCHNVBZ.mjs} +3 -2
- package/dist/events.js +2081 -1673
- package/dist/events.mjs +3 -3
- package/dist/index.js +4890 -4318
- package/dist/index.mjs +195 -118
- package/dist/modals.js +1568 -1242
- package/dist/modals.mjs +3 -3
- package/dist/pages.js +3007 -2904
- package/dist/pages.mjs +6 -6
- package/dist/primitives.js +1507 -1207
- package/dist/primitives.mjs +13 -1
- package/dist/styles.css +1 -1
- package/dist/tailwind.css +1 -1
- package/dist/trading.js +3920 -3734
- package/dist/trading.mjs +10 -12
- package/dist/types/deposit/steps/card-payment-pending.d.mts +3 -1
- package/dist/types/deposit/steps/card-payment-pending.d.ts +3 -1
- package/dist/types/deposit/steps/crypto-transfer.d.mts +1 -1
- package/dist/types/deposit/steps/crypto-transfer.d.ts +1 -1
- package/dist/types/events/item/event-list-item.utils.d.mts +57 -0
- package/dist/types/events/item/event-list-item.utils.d.ts +57 -0
- package/dist/types/events/item-details/event-list-item-details.types.d.mts +16 -1
- package/dist/types/events/item-details/event-list-item-details.types.d.ts +16 -1
- package/dist/types/events/item-details/settlement-summary.d.mts +6 -2
- package/dist/types/events/item-details/settlement-summary.d.ts +6 -2
- package/dist/types/events/list/event-list.types.d.mts +1 -1
- package/dist/types/events/list/event-list.types.d.ts +1 -1
- package/dist/types/events/list/event-list.utils.d.mts +1 -1
- package/dist/types/events/list/event-list.utils.d.ts +1 -1
- package/dist/types/events/market-details/market-details.types.d.mts +8 -0
- package/dist/types/events/market-details/market-details.types.d.ts +8 -0
- package/dist/types/pages/event-market/event-market.types.d.mts +1 -3
- package/dist/types/pages/event-market/event-market.types.d.ts +1 -3
- package/dist/types/primitives/copy-button/index.d.mts +25 -0
- package/dist/types/primitives/copy-button/index.d.ts +25 -0
- package/dist/types/primitives/icon/index.d.mts +3 -1
- package/dist/types/primitives/icon/index.d.ts +3 -1
- package/dist/types/primitives/icon/registry.d.mts +8 -0
- package/dist/types/primitives/icon/registry.d.ts +8 -0
- package/dist/types/primitives/icon/svg/apps.d.mts +5 -0
- package/dist/types/primitives/icon/svg/apps.d.ts +5 -0
- package/dist/types/primitives/icon/svg/circle-overlap.d.mts +5 -0
- package/dist/types/primitives/icon/svg/circle-overlap.d.ts +5 -0
- package/dist/types/primitives/index.d.mts +2 -0
- package/dist/types/primitives/index.d.ts +2 -0
- package/dist/types/primitives/select/index.d.mts +1 -1
- package/dist/types/primitives/select/index.d.ts +1 -1
- package/dist/types/primitives/select/select.types.d.mts +1 -1
- package/dist/types/primitives/select/select.types.d.ts +1 -1
- package/dist/types/primitives/select/select.utils.d.mts +0 -1
- package/dist/types/primitives/select/select.utils.d.ts +0 -1
- package/dist/types/primitives/skeleton/index.d.mts +2 -1
- package/dist/types/primitives/skeleton/index.d.ts +2 -1
- package/dist/types/primitives/skeleton/views/place-order-skeleton-view.d.mts +4 -0
- package/dist/types/primitives/skeleton/views/place-order-skeleton-view.d.ts +4 -0
- package/dist/types/primitives/toast/index.d.mts +4 -0
- package/dist/types/primitives/toast/index.d.ts +4 -0
- package/dist/types/primitives/toast/toast.types.d.mts +31 -0
- package/dist/types/primitives/toast/toast.types.d.ts +31 -0
- package/dist/types/primitives/typography/index.d.mts +1 -1
- package/dist/types/primitives/typography/index.d.ts +1 -1
- package/dist/types/primitives/typography/typography.types.d.mts +3 -1
- package/dist/types/primitives/typography/typography.types.d.ts +3 -1
- package/dist/types/shared/utils.d.mts +3 -1
- package/dist/types/shared/utils.d.ts +3 -1
- package/dist/types/trading/index.d.mts +0 -1
- package/dist/types/trading/index.d.ts +0 -1
- package/dist/types/trading/place-order/index.place-order.constants.d.mts +8 -0
- package/dist/types/trading/place-order/index.place-order.constants.d.ts +8 -0
- package/dist/types/trading/place-order/index.place-order.types.d.mts +6 -1
- package/dist/types/trading/place-order/index.place-order.types.d.ts +6 -1
- package/dist/types/trading/place-order/index.place-order.utils.d.mts +4 -11
- package/dist/types/trading/place-order/index.place-order.utils.d.ts +4 -11
- package/dist/types/trading/settlement/index.d.mts +9 -6
- package/dist/types/trading/settlement/index.d.ts +9 -6
- package/dist/types/trading/settlement/settlement-text-renderer.d.mts +8 -0
- package/dist/types/trading/settlement/settlement-text-renderer.d.ts +8 -0
- package/dist/types/trading/settlement/settlement-text.utils.d.mts +36 -0
- package/dist/types/trading/settlement/settlement-text.utils.d.ts +36 -0
- package/dist/types/trading/types.d.mts +0 -19
- package/dist/types/trading/types.d.ts +0 -19
- package/dist/types/trading/utils.d.mts +0 -1
- package/dist/types/trading/utils.d.ts +0 -1
- package/dist/types/withdraw/index.d.mts +2 -2
- package/dist/types/withdraw/index.d.ts +2 -2
- package/dist/types/withdraw/steps/withdraw-amount.d.mts +6 -3
- package/dist/types/withdraw/steps/withdraw-amount.d.ts +6 -3
- package/dist/types/withdraw/steps/withdraw-success.d.mts +8 -1
- package/dist/types/withdraw/steps/withdraw-success.d.ts +8 -1
- package/dist/types/withdraw/steps/withdraw-success.utils.d.mts +36 -0
- package/dist/types/withdraw/steps/withdraw-success.utils.d.ts +36 -0
- package/dist/types/withdraw/withdraw-modal.types.d.mts +25 -15
- package/dist/types/withdraw/withdraw-modal.types.d.ts +25 -15
- package/package.json +6 -5
- package/dist/types/primitives/card/card.constants.d.mts +0 -4
- package/dist/types/primitives/card/card.constants.d.ts +0 -4
- package/dist/types/trading/settlement/settlement-details.utils.d.mts +0 -7
- package/dist/types/trading/settlement/settlement-details.utils.d.ts +0 -7
|
@@ -10,7 +10,7 @@ import {
|
|
|
10
10
|
ChevronLeftIcon,
|
|
11
11
|
ChevronRightIcon,
|
|
12
12
|
CloseIcon,
|
|
13
|
-
|
|
13
|
+
CopyButton,
|
|
14
14
|
CreateAccountIcon,
|
|
15
15
|
CreditCardIcon,
|
|
16
16
|
DocumentIcon,
|
|
@@ -37,11 +37,13 @@ import {
|
|
|
37
37
|
__spreadValues,
|
|
38
38
|
cn,
|
|
39
39
|
formatCompactUsd,
|
|
40
|
+
getMotionClassName,
|
|
41
|
+
shortenAddress,
|
|
40
42
|
venueLogoLabels
|
|
41
|
-
} from "./chunk-
|
|
43
|
+
} from "./chunk-TLGQ4LID.mjs";
|
|
42
44
|
|
|
43
45
|
// src/deposit/index.tsx
|
|
44
|
-
import { useEffect as useEffect3, useMemo, useRef, useState as
|
|
46
|
+
import { useEffect as useEffect3, useMemo, useRef, useState as useState2 } from "react";
|
|
45
47
|
import { useAggAuthState, useAggUiConfig, useDepositAddresses, useLabels as useLabels10 } from "@agg-build/hooks";
|
|
46
48
|
import { SVM_CHAIN_IDS, useDepositFlow } from "@agg-build/hooks/deposit";
|
|
47
49
|
|
|
@@ -462,7 +464,6 @@ var CardDepositStep = ({
|
|
|
462
464
|
};
|
|
463
465
|
|
|
464
466
|
// src/deposit/steps/crypto-transfer.tsx
|
|
465
|
-
import { useState as useState2, useCallback } from "react";
|
|
466
467
|
import { useLabels as useLabels3 } from "@agg-build/hooks";
|
|
467
468
|
|
|
468
469
|
// src/deposit/components/DepositQRCode.tsx
|
|
@@ -556,12 +557,6 @@ var CryptoTransferStep = ({
|
|
|
556
557
|
}) => {
|
|
557
558
|
var _a;
|
|
558
559
|
const labels = useLabels3();
|
|
559
|
-
const [isCopied, setIsCopied] = useState2(false);
|
|
560
|
-
const handleCopy = useCallback(() => {
|
|
561
|
-
onCopyAddress();
|
|
562
|
-
setIsCopied(true);
|
|
563
|
-
window.setTimeout(() => setIsCopied(false), 2e3);
|
|
564
|
-
}, [onCopyAddress]);
|
|
565
560
|
const selectedNetworkOption = networkOptions.find((n) => n.value === selectedNetwork);
|
|
566
561
|
const networkLogoUrl = (_a = selectedNetworkOption == null ? void 0 : selectedNetworkOption.iconUrl) != null ? _a : "";
|
|
567
562
|
const networkLogo = selectedNetworkOption == null ? void 0 : selectedNetworkOption.icon;
|
|
@@ -622,17 +617,15 @@ var CryptoTransferStep = ({
|
|
|
622
617
|
/* @__PURE__ */ jsx4("p", { className: "agg-type-label-strong text-agg-foreground", children: labels.deposit.sendCrypto.depositAddressLabel }),
|
|
623
618
|
/* @__PURE__ */ jsxs4("div", { className: "flex items-center gap-2 rounded border border-agg-separator bg-agg-secondary h-10 px-3", children: [
|
|
624
619
|
isLoadingAddress ? /* @__PURE__ */ jsx4("div", { className: "h-4 flex-1 animate-pulse rounded bg-agg-muted-foreground/20" }) : /* @__PURE__ */ jsx4("p", { className: "agg-type-body flex-1 min-w-0 truncate text-agg-foreground", children: depositAddress }),
|
|
625
|
-
/* @__PURE__ */
|
|
626
|
-
|
|
620
|
+
/* @__PURE__ */ jsx4(
|
|
621
|
+
CopyButton,
|
|
627
622
|
{
|
|
628
|
-
|
|
623
|
+
value: depositAddress,
|
|
624
|
+
label: labels.deposit.sendCrypto.copy,
|
|
625
|
+
copiedLabel: labels.deposit.sendCrypto.copied,
|
|
629
626
|
disabled: isLoadingAddress || !!addressError || !depositAddress,
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
children: [
|
|
633
|
-
isCopied ? /* @__PURE__ */ jsx4(CheckCircleIcon, { className: "h-4 w-4" }) : /* @__PURE__ */ jsx4(CopyIcon, { className: "h-4 w-4" }),
|
|
634
|
-
/* @__PURE__ */ jsx4("span", { className: "agg-type-label-strong", children: isCopied ? labels.deposit.sendCrypto.copied : labels.deposit.sendCrypto.copy })
|
|
635
|
-
]
|
|
627
|
+
onCopy: onCopyAddress,
|
|
628
|
+
className: "text-agg-primary hover:text-agg-primary/80"
|
|
636
629
|
}
|
|
637
630
|
)
|
|
638
631
|
] }),
|
|
@@ -924,6 +917,7 @@ import { useLabels as useLabels6 } from "@agg-build/hooks";
|
|
|
924
917
|
import { jsx as jsx7, jsxs as jsxs7 } from "react/jsx-runtime";
|
|
925
918
|
var CardPaymentPendingStep = ({
|
|
926
919
|
providerName,
|
|
920
|
+
walletAddress,
|
|
927
921
|
onClose,
|
|
928
922
|
onViewActivity,
|
|
929
923
|
onChooseAnotherProvider
|
|
@@ -946,6 +940,20 @@ var CardPaymentPendingStep = ({
|
|
|
946
940
|
/* @__PURE__ */ jsx7("h3", { className: "text-agg-2xl leading-agg-8 font-agg-bold text-agg-foreground", children: labels.deposit.cardFlow.pendingTitle(providerName) }),
|
|
947
941
|
/* @__PURE__ */ jsx7("p", { className: "agg-type-body text-agg-foreground", children: labels.deposit.cardFlow.pendingDescription })
|
|
948
942
|
] }),
|
|
943
|
+
walletAddress ? /* @__PURE__ */ jsxs7("div", { className: "flex w-full flex-col items-center gap-3 rounded-agg-md bg-agg-secondary-hover p-5", children: [
|
|
944
|
+
/* @__PURE__ */ jsx7("p", { className: "agg-type-label text-agg-foreground w-full", children: labels.deposit.cardFlow.pendingWalletAddressHelp }),
|
|
945
|
+
/* @__PURE__ */ jsxs7("div", { className: "flex w-full h-10 items-center gap-2 rounded border border-agg-separator bg-agg-secondary px-3 py-[10px]", children: [
|
|
946
|
+
/* @__PURE__ */ jsx7("p", { className: "agg-type-body flex-1 min-w-0 truncate text-agg-foreground", children: walletAddress }),
|
|
947
|
+
/* @__PURE__ */ jsx7(
|
|
948
|
+
CopyButton,
|
|
949
|
+
{
|
|
950
|
+
value: walletAddress,
|
|
951
|
+
"aria-label": labels.deposit.cardFlow.pendingCopyAddress,
|
|
952
|
+
className: "text-agg-muted-foreground hover:text-agg-foreground"
|
|
953
|
+
}
|
|
954
|
+
)
|
|
955
|
+
] })
|
|
956
|
+
] }) : null,
|
|
949
957
|
/* @__PURE__ */ jsxs7("div", { className: "flex items-start justify-center gap-3", children: [
|
|
950
958
|
/* @__PURE__ */ jsx7(Button, { variant: "secondary", size: "large", className: "w-[120px]", onClick: onClose, children: labels.common.close }),
|
|
951
959
|
/* @__PURE__ */ jsx7(Button, { variant: "primary", size: "large", onClick: onViewActivity, children: labels.deposit.cardFlow.viewActivity })
|
|
@@ -1189,27 +1197,28 @@ function DepositModalControlled({
|
|
|
1189
1197
|
const { walletActions } = useAggUiConfig();
|
|
1190
1198
|
const labels = useLabels10();
|
|
1191
1199
|
const defaultMethod = isWeb3User ? "wallet" : "crypto";
|
|
1192
|
-
const [step, setStep] =
|
|
1200
|
+
const [step, setStep] = useState2(
|
|
1193
1201
|
() => pendingCardPurchaseSummary ? "card-success" : "method"
|
|
1194
1202
|
);
|
|
1195
|
-
const [highlightedMethod, setHighlightedMethod] =
|
|
1203
|
+
const [highlightedMethod, setHighlightedMethod] = useState2(defaultMethod);
|
|
1196
1204
|
const walletSubmitInFlightRef = useRef(false);
|
|
1197
|
-
const [isWalletSubmitting, setIsWalletSubmitting] =
|
|
1198
|
-
const [cardProviders, setCardProviders] =
|
|
1199
|
-
const [quotesLoading, setQuotesLoading] =
|
|
1200
|
-
const [quotesError, setQuotesError] =
|
|
1201
|
-
const [sessionError, setSessionError] =
|
|
1202
|
-
const [pendingProviderName, setPendingProviderName] =
|
|
1205
|
+
const [isWalletSubmitting, setIsWalletSubmitting] = useState2(false);
|
|
1206
|
+
const [cardProviders, setCardProviders] = useState2([]);
|
|
1207
|
+
const [quotesLoading, setQuotesLoading] = useState2(false);
|
|
1208
|
+
const [quotesError, setQuotesError] = useState2(null);
|
|
1209
|
+
const [sessionError, setSessionError] = useState2(null);
|
|
1210
|
+
const [pendingProviderName, setPendingProviderName] = useState2("");
|
|
1211
|
+
const [pendingProviderWalletAddress, setPendingProviderWalletAddress] = useState2("");
|
|
1203
1212
|
useEffect3(() => {
|
|
1204
1213
|
if (pendingCardPurchaseSummary) {
|
|
1205
1214
|
clearPendingCardSession();
|
|
1206
1215
|
setStep("card-success");
|
|
1207
1216
|
}
|
|
1208
1217
|
}, [pendingCardPurchaseSummary]);
|
|
1209
|
-
const [walletChainId, setWalletChainId] =
|
|
1210
|
-
const [walletToken, setWalletToken] =
|
|
1211
|
-
const [sendChainId, setSendChainId] =
|
|
1212
|
-
const [sendToken, setSendToken] =
|
|
1218
|
+
const [walletChainId, setWalletChainId] = useState2("");
|
|
1219
|
+
const [walletToken, setWalletToken] = useState2("");
|
|
1220
|
+
const [sendChainId, setSendChainId] = useState2("");
|
|
1221
|
+
const [sendToken, setSendToken] = useState2("");
|
|
1213
1222
|
const {
|
|
1214
1223
|
isReady,
|
|
1215
1224
|
isTimedOut,
|
|
@@ -1373,6 +1382,7 @@ function DepositModalControlled({
|
|
|
1373
1382
|
});
|
|
1374
1383
|
window.open(session.widgetUrl, "_blank", "noopener,noreferrer");
|
|
1375
1384
|
setPendingProviderName((_m = selectedProvider == null ? void 0 : selectedProvider.name) != null ? _m : providerId);
|
|
1385
|
+
setPendingProviderWalletAddress(depositAddr);
|
|
1376
1386
|
setStep("card-payment-pending");
|
|
1377
1387
|
} catch (err) {
|
|
1378
1388
|
setSessionError(err instanceof Error ? err.message : "Failed to create session");
|
|
@@ -1390,6 +1400,7 @@ function DepositModalControlled({
|
|
|
1390
1400
|
setQuotesError(null);
|
|
1391
1401
|
setSessionError(null);
|
|
1392
1402
|
setPendingProviderName("");
|
|
1403
|
+
setPendingProviderWalletAddress("");
|
|
1393
1404
|
setStep("card-deposit");
|
|
1394
1405
|
};
|
|
1395
1406
|
const handleDoneCryptoTransfer = () => {
|
|
@@ -1419,6 +1430,7 @@ function DepositModalControlled({
|
|
|
1419
1430
|
setQuotesError(null);
|
|
1420
1431
|
setSessionError(null);
|
|
1421
1432
|
setPendingProviderName("");
|
|
1433
|
+
setPendingProviderWalletAddress("");
|
|
1422
1434
|
clearPendingCardSession();
|
|
1423
1435
|
}
|
|
1424
1436
|
onOpenChange(isOpen);
|
|
@@ -1559,6 +1571,7 @@ function DepositModalControlled({
|
|
|
1559
1571
|
CardPaymentPendingStep,
|
|
1560
1572
|
{
|
|
1561
1573
|
providerName: pendingProviderName,
|
|
1574
|
+
walletAddress: pendingProviderWalletAddress || void 0,
|
|
1562
1575
|
onClose: () => handleOpenChange(false),
|
|
1563
1576
|
onViewActivity: handleViewActivity,
|
|
1564
1577
|
onChooseAnotherProvider: handleChooseAnotherProvider
|
|
@@ -1595,11 +1608,6 @@ function DepositModalControlled({
|
|
|
1595
1608
|
setSendChainId(id);
|
|
1596
1609
|
setSendToken("");
|
|
1597
1610
|
},
|
|
1598
|
-
onCopyAddress: () => {
|
|
1599
|
-
var _a2;
|
|
1600
|
-
if (depositAddress) (_a2 = navigator.clipboard) == null ? void 0 : _a2.writeText(depositAddress).catch(() => {
|
|
1601
|
-
});
|
|
1602
|
-
},
|
|
1603
1611
|
onDone: handleDoneCryptoTransfer
|
|
1604
1612
|
}
|
|
1605
1613
|
) : null
|
|
@@ -1614,42 +1622,12 @@ var DepositModal = (props) => {
|
|
|
1614
1622
|
DepositModal.displayName = "DepositModal";
|
|
1615
1623
|
|
|
1616
1624
|
// src/withdraw/index.tsx
|
|
1617
|
-
import {
|
|
1625
|
+
import { useEffect as useEffect5, useState as useState4 } from "react";
|
|
1626
|
+
import { useWithdrawFlow } from "@agg-build/hooks/withdraw";
|
|
1618
1627
|
|
|
1619
1628
|
// src/withdraw/steps/withdraw-method.tsx
|
|
1620
1629
|
import { useLabels as useLabels11 } from "@agg-build/hooks";
|
|
1621
1630
|
import { Fragment as Fragment7, jsx as jsx12, jsxs as jsxs12 } from "react/jsx-runtime";
|
|
1622
|
-
var WithdrawMethodCard = ({
|
|
1623
|
-
icon,
|
|
1624
|
-
title,
|
|
1625
|
-
description,
|
|
1626
|
-
onContinue
|
|
1627
|
-
}) => /* @__PURE__ */ jsxs12(
|
|
1628
|
-
"div",
|
|
1629
|
-
{
|
|
1630
|
-
className: cn(
|
|
1631
|
-
"flex items-center gap-3 sm:gap-4 rounded-xl border border-agg-separator bg-agg-secondary p-3 sm:p-4",
|
|
1632
|
-
"hover:bg-agg-secondary-hover transition-colors cursor-pointer"
|
|
1633
|
-
),
|
|
1634
|
-
role: "button",
|
|
1635
|
-
tabIndex: 0,
|
|
1636
|
-
onClick: onContinue,
|
|
1637
|
-
onKeyDown: (e) => {
|
|
1638
|
-
if (e.key === "Enter" || e.key === " ") {
|
|
1639
|
-
e.preventDefault();
|
|
1640
|
-
onContinue();
|
|
1641
|
-
}
|
|
1642
|
-
},
|
|
1643
|
-
children: [
|
|
1644
|
-
/* @__PURE__ */ jsx12("div", { className: "shrink-0 flex items-center justify-center h-10 w-10 rounded-lg bg-agg-secondary-hover", children: icon }),
|
|
1645
|
-
/* @__PURE__ */ jsxs12("div", { className: "flex-1 min-w-0", children: [
|
|
1646
|
-
/* @__PURE__ */ jsx12("p", { className: "agg-type-body-strong text-agg-foreground", children: title }),
|
|
1647
|
-
/* @__PURE__ */ jsx12("p", { className: "agg-type-label text-agg-muted-foreground", children: description })
|
|
1648
|
-
] }),
|
|
1649
|
-
/* @__PURE__ */ jsx12("div", { className: "shrink-0 text-agg-muted-foreground", children: /* @__PURE__ */ jsx12(ChevronRightIcon, { className: "h-5 w-5" }) })
|
|
1650
|
-
]
|
|
1651
|
-
}
|
|
1652
|
-
);
|
|
1653
1631
|
var WithdrawMethodStep = ({
|
|
1654
1632
|
balance,
|
|
1655
1633
|
onSelectMethod
|
|
@@ -1663,13 +1641,30 @@ var WithdrawMethodStep = ({
|
|
|
1663
1641
|
" ",
|
|
1664
1642
|
formatCompactUsd(balance)
|
|
1665
1643
|
] }),
|
|
1666
|
-
/* @__PURE__ */
|
|
1667
|
-
|
|
1644
|
+
/* @__PURE__ */ jsxs12(
|
|
1645
|
+
"div",
|
|
1668
1646
|
{
|
|
1669
|
-
|
|
1670
|
-
|
|
1671
|
-
|
|
1672
|
-
|
|
1647
|
+
className: cn(
|
|
1648
|
+
"flex items-center gap-3 sm:gap-4 rounded-xl border border-agg-separator bg-agg-secondary p-3 sm:p-4",
|
|
1649
|
+
"hover:bg-agg-secondary-hover transition-colors cursor-pointer"
|
|
1650
|
+
),
|
|
1651
|
+
role: "button",
|
|
1652
|
+
tabIndex: 0,
|
|
1653
|
+
onClick: () => onSelectMethod("wallet"),
|
|
1654
|
+
onKeyDown: (e) => {
|
|
1655
|
+
if (e.key === "Enter" || e.key === " ") {
|
|
1656
|
+
e.preventDefault();
|
|
1657
|
+
onSelectMethod("wallet");
|
|
1658
|
+
}
|
|
1659
|
+
},
|
|
1660
|
+
children: [
|
|
1661
|
+
/* @__PURE__ */ jsx12("div", { className: "shrink-0 flex items-center justify-center h-10 w-10 rounded-lg bg-agg-secondary-hover", children: /* @__PURE__ */ jsx12(WalletIcon, { className: "h-6 w-6 text-agg-muted-foreground" }) }),
|
|
1662
|
+
/* @__PURE__ */ jsxs12("div", { className: "flex-1 min-w-0", children: [
|
|
1663
|
+
/* @__PURE__ */ jsx12("p", { className: "agg-type-body-strong text-agg-foreground", children: labels.withdraw.methods.walletTitle }),
|
|
1664
|
+
/* @__PURE__ */ jsx12("p", { className: "agg-type-label text-agg-muted-foreground", children: labels.withdraw.methods.walletDescription })
|
|
1665
|
+
] }),
|
|
1666
|
+
/* @__PURE__ */ jsx12("div", { className: "shrink-0 text-agg-muted-foreground", children: /* @__PURE__ */ jsx12(ChevronRightIcon, { className: "h-5 w-5" }) })
|
|
1667
|
+
]
|
|
1673
1668
|
}
|
|
1674
1669
|
)
|
|
1675
1670
|
] }) })
|
|
@@ -1681,26 +1676,34 @@ import { useLabels as useLabels12 } from "@agg-build/hooks";
|
|
|
1681
1676
|
import { Fragment as Fragment8, jsx as jsx13, jsxs as jsxs13 } from "react/jsx-runtime";
|
|
1682
1677
|
var WithdrawAmountStep = ({
|
|
1683
1678
|
amount,
|
|
1684
|
-
currency,
|
|
1685
1679
|
destinationWallet,
|
|
1680
|
+
balanceDisplay,
|
|
1686
1681
|
tokenOptions,
|
|
1687
1682
|
networkOptions,
|
|
1688
1683
|
selectedToken,
|
|
1689
1684
|
selectedNetwork,
|
|
1685
|
+
isConfirming = false,
|
|
1686
|
+
error,
|
|
1690
1687
|
onBack,
|
|
1691
1688
|
onAmountChange,
|
|
1692
|
-
|
|
1689
|
+
onDestinationChange,
|
|
1693
1690
|
onTokenChange,
|
|
1694
1691
|
onNetworkChange,
|
|
1692
|
+
onMaxClick,
|
|
1695
1693
|
onContinue
|
|
1696
1694
|
}) => {
|
|
1697
1695
|
const labels = useLabels12();
|
|
1698
|
-
const
|
|
1696
|
+
const SOLANA_CHAIN_ID = "792703809";
|
|
1697
|
+
const isSolanaDest = selectedNetwork === SOLANA_CHAIN_ID;
|
|
1698
|
+
const trimmedDestination = destinationWallet.trim();
|
|
1699
|
+
const isValidAddress = isSolanaDest ? /^[1-9A-HJ-NP-Za-km-z]{32,44}$/.test(trimmedDestination) : /^0x[a-fA-F0-9]{40}$/.test(trimmedDestination);
|
|
1700
|
+
const isValid = Number(amount) > 0 && isValidAddress;
|
|
1701
|
+
const isDisabled = !isValid || isConfirming;
|
|
1699
1702
|
return /* @__PURE__ */ jsxs13(Fragment8, { children: [
|
|
1700
1703
|
/* @__PURE__ */ jsx13(
|
|
1701
1704
|
Modal.Header,
|
|
1702
1705
|
{
|
|
1703
|
-
title: labels.withdraw.
|
|
1706
|
+
title: labels.withdraw.walletFlow.title,
|
|
1704
1707
|
hideBorder: true,
|
|
1705
1708
|
leftElement: /* @__PURE__ */ jsx13(
|
|
1706
1709
|
"button",
|
|
@@ -1708,323 +1711,529 @@ var WithdrawAmountStep = ({
|
|
|
1708
1711
|
type: "button",
|
|
1709
1712
|
className: "mr-2 flex items-center justify-center text-agg-foreground transition-colors hover:cursor-pointer hover:text-agg-foreground/80",
|
|
1710
1713
|
onClick: onBack,
|
|
1711
|
-
"aria-label":
|
|
1714
|
+
"aria-label": labels.withdraw.back,
|
|
1712
1715
|
children: /* @__PURE__ */ jsx13(ChevronLeftIcon, { className: "h-6 w-6" })
|
|
1713
1716
|
}
|
|
1714
1717
|
)
|
|
1715
1718
|
}
|
|
1716
1719
|
),
|
|
1717
1720
|
/* @__PURE__ */ jsx13(Modal.Body, { classNames: { root: "px-5 pt-0 pb-6 sm:px-8 sm:pt-0 sm:pb-8" }, children: /* @__PURE__ */ jsxs13("div", { className: "flex flex-col gap-5", children: [
|
|
1718
|
-
/* @__PURE__ */ jsxs13("div", { className: "flex
|
|
1719
|
-
/* @__PURE__ */
|
|
1720
|
-
|
|
1721
|
-
|
|
1722
|
-
/* @__PURE__ */ jsx13(
|
|
1723
|
-
"input",
|
|
1724
|
-
{
|
|
1725
|
-
type: "text",
|
|
1726
|
-
inputMode: "decimal",
|
|
1727
|
-
"aria-label": labels.withdraw.cardFlow.amountLabel,
|
|
1728
|
-
className: cn(
|
|
1729
|
-
"agg-type-body w-full bg-transparent outline-none",
|
|
1730
|
-
isValid ? "text-agg-foreground" : "text-agg-muted-foreground"
|
|
1731
|
-
),
|
|
1732
|
-
placeholder: "0.00",
|
|
1733
|
-
value: amount,
|
|
1734
|
-
onChange: (event) => onAmountChange(event.target.value)
|
|
1735
|
-
}
|
|
1736
|
-
),
|
|
1737
|
-
/* @__PURE__ */ jsx13("span", { className: "agg-type-body text-agg-muted-foreground", children: "$" })
|
|
1738
|
-
] })
|
|
1739
|
-
] }),
|
|
1740
|
-
/* @__PURE__ */ jsx13("div", { className: "w-[100px]", children: /* @__PURE__ */ jsx13(
|
|
1741
|
-
Select,
|
|
1721
|
+
/* @__PURE__ */ jsxs13("div", { className: "flex flex-col gap-2", children: [
|
|
1722
|
+
/* @__PURE__ */ jsx13("p", { className: "agg-type-label-strong text-agg-foreground", children: labels.withdraw.walletFlow.recipientAddressLabel }),
|
|
1723
|
+
/* @__PURE__ */ jsx13(
|
|
1724
|
+
"input",
|
|
1742
1725
|
{
|
|
1743
|
-
|
|
1744
|
-
|
|
1745
|
-
|
|
1746
|
-
|
|
1726
|
+
type: "text",
|
|
1727
|
+
"aria-label": labels.withdraw.walletFlow.recipientAddressLabel,
|
|
1728
|
+
className: cn(
|
|
1729
|
+
"agg-type-body w-full h-10 rounded border border-agg-separator bg-agg-secondary px-3 outline-none",
|
|
1730
|
+
"text-agg-foreground placeholder:text-agg-muted-foreground",
|
|
1731
|
+
"focus:border-agg-primary transition-colors"
|
|
1732
|
+
),
|
|
1733
|
+
placeholder: isSolanaDest ? "FwR3..." : "0x971d...",
|
|
1734
|
+
value: destinationWallet,
|
|
1735
|
+
onChange: (e) => onDestinationChange(e.target.value)
|
|
1747
1736
|
}
|
|
1748
|
-
)
|
|
1737
|
+
)
|
|
1749
1738
|
] }),
|
|
1750
|
-
/* @__PURE__ */ jsxs13("div", { className: "flex gap-
|
|
1739
|
+
/* @__PURE__ */ jsxs13("div", { className: "flex flex-col gap-2", children: [
|
|
1740
|
+
/* @__PURE__ */ jsxs13("div", { className: "flex items-center justify-between", children: [
|
|
1741
|
+
/* @__PURE__ */ jsx13("p", { className: "agg-type-label-strong text-agg-foreground", children: labels.withdraw.walletFlow.amountLabel }),
|
|
1742
|
+
/* @__PURE__ */ jsx13("p", { className: "agg-type-label text-agg-muted-foreground", children: balanceDisplay })
|
|
1743
|
+
] }),
|
|
1744
|
+
/* @__PURE__ */ jsxs13("div", { className: "flex h-10 items-center gap-2 rounded border border-agg-separator bg-agg-secondary px-3 focus-within:border-agg-primary transition-colors", children: [
|
|
1745
|
+
/* @__PURE__ */ jsx13(
|
|
1746
|
+
"input",
|
|
1747
|
+
{
|
|
1748
|
+
type: "text",
|
|
1749
|
+
inputMode: "decimal",
|
|
1750
|
+
"aria-label": labels.withdraw.walletFlow.amountLabel,
|
|
1751
|
+
className: cn(
|
|
1752
|
+
"agg-type-body flex-1 min-w-0 bg-transparent outline-none",
|
|
1753
|
+
Number(amount) > 0 ? "text-agg-foreground" : "text-agg-muted-foreground"
|
|
1754
|
+
),
|
|
1755
|
+
placeholder: "0.00",
|
|
1756
|
+
value: amount,
|
|
1757
|
+
onChange: (e) => onAmountChange(e.target.value)
|
|
1758
|
+
}
|
|
1759
|
+
),
|
|
1760
|
+
/* @__PURE__ */ jsx13("span", { className: "agg-type-body text-agg-muted-foreground shrink-0", children: selectedToken }),
|
|
1761
|
+
onMaxClick ? /* @__PURE__ */ jsx13(
|
|
1762
|
+
"button",
|
|
1763
|
+
{
|
|
1764
|
+
type: "button",
|
|
1765
|
+
className: "agg-type-label-strong text-agg-primary hover:opacity-80 transition-opacity cursor-pointer shrink-0",
|
|
1766
|
+
onClick: onMaxClick,
|
|
1767
|
+
children: labels.withdraw.walletFlow.max
|
|
1768
|
+
}
|
|
1769
|
+
) : null
|
|
1770
|
+
] })
|
|
1771
|
+
] }),
|
|
1772
|
+
/* @__PURE__ */ jsxs13("div", { className: "flex flex-col gap-3 sm:flex-row sm:gap-5", children: [
|
|
1751
1773
|
/* @__PURE__ */ jsxs13("div", { className: "flex-1 flex flex-col gap-2 min-w-0", children: [
|
|
1752
|
-
/* @__PURE__ */ jsx13("p", { className: "agg-type-label-strong text-agg-foreground", children: labels.withdraw.
|
|
1774
|
+
/* @__PURE__ */ jsx13("p", { className: "agg-type-label-strong text-agg-foreground", children: labels.withdraw.walletFlow.tokenLabel }),
|
|
1753
1775
|
/* @__PURE__ */ jsx13(
|
|
1754
1776
|
Select,
|
|
1755
1777
|
{
|
|
1756
1778
|
items: tokenOptions,
|
|
1757
1779
|
value: selectedToken,
|
|
1758
1780
|
onChange: onTokenChange,
|
|
1759
|
-
ariaLabel: labels.withdraw.
|
|
1781
|
+
ariaLabel: labels.withdraw.walletFlow.tokenLabel
|
|
1760
1782
|
}
|
|
1761
1783
|
)
|
|
1762
1784
|
] }),
|
|
1763
1785
|
/* @__PURE__ */ jsxs13("div", { className: "flex-1 flex flex-col gap-2 min-w-0", children: [
|
|
1764
|
-
/* @__PURE__ */ jsx13("p", { className: "agg-type-label-strong text-agg-foreground", children: labels.withdraw.
|
|
1786
|
+
/* @__PURE__ */ jsx13("p", { className: "agg-type-label-strong text-agg-foreground", children: labels.withdraw.walletFlow.networkLabel }),
|
|
1765
1787
|
/* @__PURE__ */ jsx13(
|
|
1766
1788
|
Select,
|
|
1767
1789
|
{
|
|
1768
1790
|
items: networkOptions,
|
|
1769
1791
|
value: selectedNetwork,
|
|
1770
1792
|
onChange: onNetworkChange,
|
|
1771
|
-
ariaLabel: labels.withdraw.
|
|
1793
|
+
ariaLabel: labels.withdraw.walletFlow.networkLabel
|
|
1772
1794
|
}
|
|
1773
1795
|
)
|
|
1774
1796
|
] })
|
|
1775
1797
|
] }),
|
|
1776
|
-
/* @__PURE__ */ jsxs13("div", { className: "flex flex-col gap-2", children: [
|
|
1777
|
-
/* @__PURE__ */ jsx13("p", { className: "agg-type-label-strong text-agg-foreground", children: labels.withdraw.cardFlow.destinationWalletLabel }),
|
|
1778
|
-
/* @__PURE__ */ jsx13("div", { className: "flex h-10 items-center rounded border border-agg-separator bg-agg-secondary px-3", children: /* @__PURE__ */ jsx13("p", { className: "agg-type-body truncate text-agg-foreground", children: destinationWallet }) })
|
|
1779
|
-
] }),
|
|
1780
1798
|
/* @__PURE__ */ jsx13(
|
|
1781
1799
|
Button,
|
|
1782
1800
|
{
|
|
1783
|
-
variant: isValid ? "primary" : "secondary",
|
|
1801
|
+
variant: isValid && !isConfirming ? "primary" : "secondary",
|
|
1784
1802
|
size: "large",
|
|
1785
1803
|
className: "w-full",
|
|
1786
|
-
disabled:
|
|
1804
|
+
disabled: isDisabled,
|
|
1787
1805
|
onClick: onContinue,
|
|
1788
|
-
children: labels.withdraw.
|
|
1806
|
+
children: isConfirming ? labels.common.loading : labels.withdraw.walletFlow.confirm
|
|
1789
1807
|
}
|
|
1790
|
-
)
|
|
1808
|
+
),
|
|
1809
|
+
error ? /* @__PURE__ */ jsx13("p", { className: "agg-type-label text-agg-error text-center", role: "alert", children: error }) : null
|
|
1791
1810
|
] }) })
|
|
1792
1811
|
] });
|
|
1793
1812
|
};
|
|
1794
1813
|
|
|
1795
|
-
// src/withdraw/steps/withdraw-
|
|
1796
|
-
import {
|
|
1797
|
-
import {
|
|
1798
|
-
|
|
1799
|
-
|
|
1800
|
-
|
|
1801
|
-
|
|
1802
|
-
|
|
1803
|
-
|
|
1804
|
-
|
|
1805
|
-
|
|
1806
|
-
|
|
1807
|
-
|
|
1808
|
-
|
|
1809
|
-
|
|
1810
|
-
|
|
1811
|
-
"span",
|
|
1812
|
-
{
|
|
1813
|
-
className: `rounded border px-2 py-[2px] text-[10px] leading-[14px] font-agg-bold uppercase ${provider.badge === "best" ? "border-agg-primary/50 text-agg-primary bg-agg-secondary" : "border-agg-separator text-agg-foreground bg-agg-secondary"}`,
|
|
1814
|
-
children: badgeText
|
|
1815
|
-
}
|
|
1816
|
-
) : null
|
|
1817
|
-
] }),
|
|
1818
|
-
/* @__PURE__ */ jsxs14("div", { className: "flex items-center gap-4", children: [
|
|
1819
|
-
/* @__PURE__ */ jsxs14("div", { className: "text-right", children: [
|
|
1820
|
-
/* @__PURE__ */ jsx14("p", { className: "agg-type-body text-agg-foreground", children: provider.quote }),
|
|
1821
|
-
/* @__PURE__ */ jsxs14("p", { className: "agg-type-label text-agg-muted-foreground", children: [
|
|
1822
|
-
labels.withdraw.cardFlow.feeLabel,
|
|
1823
|
-
" ",
|
|
1824
|
-
provider.fee
|
|
1825
|
-
] })
|
|
1826
|
-
] }),
|
|
1827
|
-
/* @__PURE__ */ jsx14(ChevronRightIcon, { className: "h-5 w-5 text-agg-muted-foreground" })
|
|
1828
|
-
] })
|
|
1829
|
-
] })
|
|
1830
|
-
}
|
|
1831
|
-
);
|
|
1814
|
+
// src/withdraw/steps/withdraw-success.tsx
|
|
1815
|
+
import { useEffect as useEffect4, useState as useState3 } from "react";
|
|
1816
|
+
import { useLabels as useLabels13, useSdkUiConfig } from "@agg-build/hooks";
|
|
1817
|
+
import { useWithdrawalLifecycle } from "@agg-build/hooks/withdraw";
|
|
1818
|
+
|
|
1819
|
+
// src/withdraw/steps/withdraw-success.utils.ts
|
|
1820
|
+
var CHAIN_LABELS = {
|
|
1821
|
+
1: "Ethereum",
|
|
1822
|
+
10: "Optimism",
|
|
1823
|
+
56: "BNB Chain",
|
|
1824
|
+
137: "Polygon",
|
|
1825
|
+
8453: "Base",
|
|
1826
|
+
42161: "Arbitrum",
|
|
1827
|
+
43114: "Avalanche",
|
|
1828
|
+
11155111: "Sepolia",
|
|
1829
|
+
792703809: "Solana"
|
|
1832
1830
|
};
|
|
1833
|
-
var
|
|
1834
|
-
|
|
1835
|
-
|
|
1836
|
-
|
|
1837
|
-
|
|
1838
|
-
|
|
1839
|
-
|
|
1831
|
+
var resolveChainLabel = (chainId) => {
|
|
1832
|
+
var _a;
|
|
1833
|
+
return (_a = CHAIN_LABELS[chainId]) != null ? _a : `Chain ${chainId}`;
|
|
1834
|
+
};
|
|
1835
|
+
var legStepStatusFor = (legStatus) => {
|
|
1836
|
+
switch (legStatus) {
|
|
1837
|
+
case "confirmed":
|
|
1838
|
+
return "complete";
|
|
1839
|
+
case "failed":
|
|
1840
|
+
return "error";
|
|
1841
|
+
case "submitted":
|
|
1842
|
+
case "planned":
|
|
1843
|
+
default:
|
|
1844
|
+
return "pending";
|
|
1845
|
+
}
|
|
1846
|
+
};
|
|
1847
|
+
var legStepLabel = (leg, labels) => {
|
|
1848
|
+
if (leg.type === "bridge") {
|
|
1849
|
+
return labels.bridge(resolveChainLabel(leg.sourceChainId), resolveChainLabel(leg.destChainId));
|
|
1850
|
+
}
|
|
1851
|
+
return labels.transfer(resolveChainLabel(leg.destChainId));
|
|
1852
|
+
};
|
|
1853
|
+
var finalStepStatusFor = (status) => {
|
|
1854
|
+
switch (status) {
|
|
1855
|
+
case "completed":
|
|
1856
|
+
return "complete";
|
|
1857
|
+
case "partial":
|
|
1858
|
+
return "warning";
|
|
1859
|
+
case "failed":
|
|
1860
|
+
return "error";
|
|
1861
|
+
case "pending":
|
|
1862
|
+
case "bridging":
|
|
1863
|
+
case "transferring":
|
|
1864
|
+
default:
|
|
1865
|
+
return "pending";
|
|
1866
|
+
}
|
|
1867
|
+
};
|
|
1868
|
+
var finalStepLabelFor = (status, pending, walletFlowLabels) => {
|
|
1869
|
+
var _a;
|
|
1870
|
+
if (pending || status === null) {
|
|
1871
|
+
return walletFlowLabels.lifecycle.pending;
|
|
1872
|
+
}
|
|
1873
|
+
return (_a = walletFlowLabels.lifecycle[status]) != null ? _a : walletFlowLabels.lifecycle.pending;
|
|
1874
|
+
};
|
|
1875
|
+
var buildWithdrawalLifecycleSteps = ({
|
|
1876
|
+
pending,
|
|
1877
|
+
status,
|
|
1878
|
+
legs,
|
|
1879
|
+
walletFlowLabels
|
|
1840
1880
|
}) => {
|
|
1841
|
-
const
|
|
1842
|
-
|
|
1843
|
-
|
|
1844
|
-
|
|
1845
|
-
|
|
1846
|
-
|
|
1847
|
-
|
|
1848
|
-
|
|
1849
|
-
|
|
1850
|
-
|
|
1851
|
-
|
|
1852
|
-
|
|
1853
|
-
|
|
1854
|
-
|
|
1855
|
-
|
|
1856
|
-
|
|
1857
|
-
|
|
1858
|
-
}
|
|
1859
|
-
),
|
|
1860
|
-
/* @__PURE__ */ jsx14(Modal.Body, { classNames: { root: "px-5 pt-0 pb-6 sm:px-8 sm:pt-0 sm:pb-8" }, children: /* @__PURE__ */ jsxs14("div", { className: "flex flex-col gap-4", children: [
|
|
1861
|
-
/* @__PURE__ */ jsxs14("p", { className: "agg-type-body text-agg-foreground", children: [
|
|
1862
|
-
/* @__PURE__ */ jsx14("span", { className: "font-agg-bold", children: token }),
|
|
1863
|
-
" $",
|
|
1864
|
-
amount,
|
|
1865
|
-
" ",
|
|
1866
|
-
currency
|
|
1867
|
-
] }),
|
|
1868
|
-
/* @__PURE__ */ jsx14("div", { className: "flex flex-col gap-4", children: providers.map((provider) => /* @__PURE__ */ jsx14(
|
|
1869
|
-
WithdrawProviderItem,
|
|
1870
|
-
{
|
|
1871
|
-
provider,
|
|
1872
|
-
onSelect: onSelectProvider
|
|
1873
|
-
},
|
|
1874
|
-
provider.id
|
|
1875
|
-
)) })
|
|
1876
|
-
] }) })
|
|
1877
|
-
] });
|
|
1881
|
+
const stepLabels = walletFlowLabels.lifecycle.steps;
|
|
1882
|
+
const legSteps = legs.map((leg, index) => ({
|
|
1883
|
+
id: `leg-${index}-${leg.type}-${leg.sourceChainId}-${leg.destChainId}`,
|
|
1884
|
+
label: legStepLabel(leg, stepLabels),
|
|
1885
|
+
status: legStepStatusFor(leg.status)
|
|
1886
|
+
}));
|
|
1887
|
+
const groups = legSteps.length > 0 ? [legSteps] : [];
|
|
1888
|
+
const finalStep = {
|
|
1889
|
+
id: `final-${status != null ? status : "pending"}`,
|
|
1890
|
+
label: finalStepLabelFor(status, pending, walletFlowLabels),
|
|
1891
|
+
status: finalStepStatusFor(status != null ? status : "pending")
|
|
1892
|
+
};
|
|
1893
|
+
return {
|
|
1894
|
+
groups,
|
|
1895
|
+
finalStep,
|
|
1896
|
+
hasDetails: legSteps.length > 0
|
|
1897
|
+
};
|
|
1878
1898
|
};
|
|
1879
1899
|
|
|
1880
1900
|
// src/withdraw/steps/withdraw-success.tsx
|
|
1881
|
-
import {
|
|
1882
|
-
|
|
1883
|
-
|
|
1884
|
-
/* @__PURE__ */
|
|
1885
|
-
/* @__PURE__ */ jsx15("p", { className: "agg-type-label text-agg-foreground", children: value })
|
|
1901
|
+
import { jsx as jsx14, jsxs as jsxs14 } from "react/jsx-runtime";
|
|
1902
|
+
var SummaryRow3 = ({ label, value }) => /* @__PURE__ */ jsxs14("div", { className: "flex items-center justify-between border-b border-agg-separator py-2 last:border-b-0", children: [
|
|
1903
|
+
/* @__PURE__ */ jsx14("p", { className: "text-[12px] leading-4 font-agg-bold uppercase text-agg-muted-foreground", children: label }),
|
|
1904
|
+
/* @__PURE__ */ jsx14("p", { className: "agg-type-label text-agg-foreground", children: value })
|
|
1886
1905
|
] });
|
|
1906
|
+
var LoadingGlyph = ({
|
|
1907
|
+
className,
|
|
1908
|
+
enableAnimations
|
|
1909
|
+
}) => /* @__PURE__ */ jsx14(
|
|
1910
|
+
"span",
|
|
1911
|
+
{
|
|
1912
|
+
"aria-hidden": "true",
|
|
1913
|
+
className: cn(
|
|
1914
|
+
"inline-block rounded-full border-2 border-current border-r-transparent",
|
|
1915
|
+
getMotionClassName(enableAnimations, "animate-spin"),
|
|
1916
|
+
className
|
|
1917
|
+
)
|
|
1918
|
+
}
|
|
1919
|
+
);
|
|
1920
|
+
var stepIconClassNameFor = (status) => {
|
|
1921
|
+
switch (status) {
|
|
1922
|
+
case "complete":
|
|
1923
|
+
return "text-agg-primary";
|
|
1924
|
+
case "warning":
|
|
1925
|
+
return "text-agg-warning";
|
|
1926
|
+
case "error":
|
|
1927
|
+
return "text-agg-error";
|
|
1928
|
+
case "pending":
|
|
1929
|
+
default:
|
|
1930
|
+
return "text-agg-primary";
|
|
1931
|
+
}
|
|
1932
|
+
};
|
|
1933
|
+
var stepIconNameFor = (status) => {
|
|
1934
|
+
return status === "warning" || status === "error" ? "warning-filled" : "check-circle";
|
|
1935
|
+
};
|
|
1887
1936
|
var WithdrawSuccessStep = ({
|
|
1888
1937
|
summary,
|
|
1938
|
+
tokenSymbol,
|
|
1939
|
+
withdrawalId,
|
|
1889
1940
|
onDone,
|
|
1890
1941
|
onClose
|
|
1891
1942
|
}) => {
|
|
1892
|
-
|
|
1893
|
-
|
|
1894
|
-
|
|
1943
|
+
var _a;
|
|
1944
|
+
const labels = useLabels13();
|
|
1945
|
+
const {
|
|
1946
|
+
features: { enableAnimations }
|
|
1947
|
+
} = useSdkUiConfig();
|
|
1948
|
+
const { state } = useWithdrawalLifecycle(withdrawalId);
|
|
1949
|
+
const [isTimelineExpanded, setIsTimelineExpanded] = useState3(true);
|
|
1950
|
+
const walletFlowLabels = labels.withdraw.walletFlow;
|
|
1951
|
+
const { groups, finalStep, hasDetails } = buildWithdrawalLifecycleSteps({
|
|
1952
|
+
pending: state.pending,
|
|
1953
|
+
status: state.status,
|
|
1954
|
+
legs: state.legs,
|
|
1955
|
+
walletFlowLabels
|
|
1956
|
+
});
|
|
1957
|
+
useEffect4(() => {
|
|
1958
|
+
if (!state.terminal) return;
|
|
1959
|
+
if (state.status !== "completed") return;
|
|
1960
|
+
const timer = window.setTimeout(() => onClose(), 1500);
|
|
1961
|
+
return () => window.clearTimeout(timer);
|
|
1962
|
+
}, [onClose, state.status, state.terminal]);
|
|
1963
|
+
const { titleCopy, descriptionCopy } = (() => {
|
|
1964
|
+
if (state.terminal && state.status === "completed") {
|
|
1965
|
+
return {
|
|
1966
|
+
titleCopy: walletFlowLabels.successTitleCompleted,
|
|
1967
|
+
descriptionCopy: walletFlowLabels.successDescriptionCompleted(tokenSymbol)
|
|
1968
|
+
};
|
|
1969
|
+
}
|
|
1970
|
+
if (state.terminal && state.status === "partial") {
|
|
1971
|
+
return {
|
|
1972
|
+
titleCopy: walletFlowLabels.successTitlePartial,
|
|
1973
|
+
descriptionCopy: walletFlowLabels.successDescriptionPartial(tokenSymbol)
|
|
1974
|
+
};
|
|
1975
|
+
}
|
|
1976
|
+
if (state.terminal && state.status === "failed") {
|
|
1977
|
+
return {
|
|
1978
|
+
titleCopy: walletFlowLabels.successTitleFailed,
|
|
1979
|
+
descriptionCopy: walletFlowLabels.successDescriptionFailed(tokenSymbol)
|
|
1980
|
+
};
|
|
1981
|
+
}
|
|
1982
|
+
return {
|
|
1983
|
+
titleCopy: walletFlowLabels.successTitle,
|
|
1984
|
+
descriptionCopy: walletFlowLabels.successDescription(tokenSymbol)
|
|
1985
|
+
};
|
|
1986
|
+
})();
|
|
1987
|
+
return /* @__PURE__ */ jsx14("div", { className: "relative", children: /* @__PURE__ */ jsxs14(Modal.Body, { classNames: { root: "px-5 py-8 sm:px-8 sm:py-10" }, children: [
|
|
1988
|
+
/* @__PURE__ */ jsx14(
|
|
1895
1989
|
"button",
|
|
1896
1990
|
{
|
|
1897
1991
|
type: "button",
|
|
1898
|
-
className: "absolute right-8 top-7 flex items-center justify-center text-agg-foreground transition-colors hover:text-agg-foreground/80",
|
|
1992
|
+
className: "absolute right-8 top-7 flex items-center justify-center text-agg-foreground transition-colors hover:text-agg-foreground/80 cursor-pointer",
|
|
1899
1993
|
onClick: onClose,
|
|
1900
1994
|
"aria-label": labels.common.close,
|
|
1901
|
-
children: /* @__PURE__ */
|
|
1995
|
+
children: /* @__PURE__ */ jsx14(CloseIcon, { className: "h-6 w-6" })
|
|
1902
1996
|
}
|
|
1903
1997
|
),
|
|
1904
|
-
/* @__PURE__ */
|
|
1905
|
-
/* @__PURE__ */
|
|
1906
|
-
|
|
1907
|
-
/* @__PURE__ */
|
|
1908
|
-
|
|
1909
|
-
] }),
|
|
1910
|
-
/* @__PURE__ */ jsxs15("div", { className: "w-full rounded-lg border border-agg-separator bg-agg-secondary px-3 py-1", children: [
|
|
1911
|
-
/* @__PURE__ */ jsx15(
|
|
1912
|
-
SummaryRow3,
|
|
1998
|
+
/* @__PURE__ */ jsxs14("div", { className: "flex flex-col items-center gap-8", children: [
|
|
1999
|
+
/* @__PURE__ */ jsxs14("div", { className: "flex flex-col items-center gap-3 text-center", children: [
|
|
2000
|
+
/* @__PURE__ */ jsx14("h3", { className: "text-agg-2xl leading-agg-8 font-agg-bold text-agg-foreground", children: titleCopy }),
|
|
2001
|
+
/* @__PURE__ */ jsx14(
|
|
2002
|
+
"p",
|
|
1913
2003
|
{
|
|
1914
|
-
|
|
1915
|
-
|
|
2004
|
+
className: "agg-type-body text-agg-muted-foreground",
|
|
2005
|
+
"data-lifecycle-status": (_a = state.status) != null ? _a : "submitted",
|
|
2006
|
+
"data-lifecycle-terminal": state.terminal ? "true" : "false",
|
|
2007
|
+
children: descriptionCopy
|
|
1916
2008
|
}
|
|
1917
2009
|
),
|
|
1918
|
-
/* @__PURE__ */
|
|
1919
|
-
|
|
1920
|
-
|
|
2010
|
+
state.errorMessage ? /* @__PURE__ */ jsx14("p", { className: "agg-type-body text-agg-destructive", children: state.errorMessage }) : null
|
|
2011
|
+
] }),
|
|
2012
|
+
hasDetails || !state.pending ? /* @__PURE__ */ jsxs14("div", { className: "agg-withdraw-success-timeline flex w-full flex-col gap-2", children: [
|
|
2013
|
+
hasDetails ? /* @__PURE__ */ jsx14(
|
|
2014
|
+
"div",
|
|
1921
2015
|
{
|
|
1922
|
-
|
|
1923
|
-
|
|
2016
|
+
"aria-hidden": !isTimelineExpanded,
|
|
2017
|
+
className: cn(
|
|
2018
|
+
"grid overflow-hidden",
|
|
2019
|
+
isTimelineExpanded ? "grid-rows-[1fr] opacity-100" : "grid-rows-[0fr] opacity-0",
|
|
2020
|
+
!isTimelineExpanded && "pointer-events-none",
|
|
2021
|
+
getMotionClassName(
|
|
2022
|
+
enableAnimations,
|
|
2023
|
+
"transition-[grid-template-rows,opacity] duration-200 ease-[cubic-bezier(0.22,1,0.36,1)]"
|
|
2024
|
+
)
|
|
2025
|
+
),
|
|
2026
|
+
children: /* @__PURE__ */ jsx14("div", { className: "min-h-0", children: /* @__PURE__ */ jsx14("div", { className: "flex flex-col gap-4 pb-2", children: groups.map((group, groupIndex) => /* @__PURE__ */ jsx14(
|
|
2027
|
+
"div",
|
|
2028
|
+
{
|
|
2029
|
+
className: "flex flex-col gap-2",
|
|
2030
|
+
children: group.map((step) => /* @__PURE__ */ jsxs14(
|
|
2031
|
+
"div",
|
|
2032
|
+
{
|
|
2033
|
+
className: "flex items-center gap-2 text-agg-sm leading-agg-5 text-agg-foreground",
|
|
2034
|
+
"data-step-status": step.status,
|
|
2035
|
+
children: [
|
|
2036
|
+
step.status === "pending" ? /* @__PURE__ */ jsx14(
|
|
2037
|
+
LoadingGlyph,
|
|
2038
|
+
{
|
|
2039
|
+
enableAnimations,
|
|
2040
|
+
className: cn(
|
|
2041
|
+
"h-3 w-3 shrink-0",
|
|
2042
|
+
stepIconClassNameFor(step.status)
|
|
2043
|
+
)
|
|
2044
|
+
}
|
|
2045
|
+
) : /* @__PURE__ */ jsx14(
|
|
2046
|
+
Icon,
|
|
2047
|
+
{
|
|
2048
|
+
name: stepIconNameFor(step.status),
|
|
2049
|
+
size: "small",
|
|
2050
|
+
className: cn(
|
|
2051
|
+
"h-3 w-3 shrink-0",
|
|
2052
|
+
stepIconClassNameFor(step.status)
|
|
2053
|
+
),
|
|
2054
|
+
"aria-hidden": "true"
|
|
2055
|
+
}
|
|
2056
|
+
),
|
|
2057
|
+
/* @__PURE__ */ jsx14("p", { className: "min-w-0 flex-1", children: step.label })
|
|
2058
|
+
]
|
|
2059
|
+
},
|
|
2060
|
+
step.id
|
|
2061
|
+
))
|
|
2062
|
+
},
|
|
2063
|
+
`withdraw-step-group-${groupIndex}`
|
|
2064
|
+
)) }) })
|
|
1924
2065
|
}
|
|
1925
|
-
),
|
|
1926
|
-
/* @__PURE__ */
|
|
2066
|
+
) : null,
|
|
2067
|
+
hasDetails ? /* @__PURE__ */ jsxs14(
|
|
2068
|
+
"button",
|
|
2069
|
+
{
|
|
2070
|
+
type: "button",
|
|
2071
|
+
"aria-expanded": isTimelineExpanded,
|
|
2072
|
+
className: cn(
|
|
2073
|
+
"flex w-full items-center gap-2 text-left text-agg-sm leading-agg-5 text-agg-foreground",
|
|
2074
|
+
"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-agg-primary focus-visible:ring-offset-0 focus-visible:ring-offset-agg-secondary",
|
|
2075
|
+
"cursor-pointer"
|
|
2076
|
+
),
|
|
2077
|
+
onClick: () => setIsTimelineExpanded((current) => !current),
|
|
2078
|
+
children: [
|
|
2079
|
+
finalStep.status === "pending" ? /* @__PURE__ */ jsx14(
|
|
2080
|
+
LoadingGlyph,
|
|
2081
|
+
{
|
|
2082
|
+
enableAnimations,
|
|
2083
|
+
className: cn("h-3 w-3 shrink-0", stepIconClassNameFor(finalStep.status))
|
|
2084
|
+
}
|
|
2085
|
+
) : /* @__PURE__ */ jsx14(
|
|
2086
|
+
Icon,
|
|
2087
|
+
{
|
|
2088
|
+
name: stepIconNameFor(finalStep.status),
|
|
2089
|
+
size: "small",
|
|
2090
|
+
className: cn("h-3 w-3 shrink-0", stepIconClassNameFor(finalStep.status)),
|
|
2091
|
+
"aria-hidden": "true"
|
|
2092
|
+
}
|
|
2093
|
+
),
|
|
2094
|
+
/* @__PURE__ */ jsx14("p", { className: "min-w-0 flex-1", children: finalStep.label }),
|
|
2095
|
+
/* @__PURE__ */ jsx14(
|
|
2096
|
+
Icon,
|
|
2097
|
+
{
|
|
2098
|
+
name: isTimelineExpanded ? "chevron-up" : "chevron-down",
|
|
2099
|
+
size: "small",
|
|
2100
|
+
className: "h-4 w-4 shrink-0 text-agg-muted-foreground",
|
|
2101
|
+
"aria-hidden": "true"
|
|
2102
|
+
}
|
|
2103
|
+
)
|
|
2104
|
+
]
|
|
2105
|
+
}
|
|
2106
|
+
) : null
|
|
2107
|
+
] }) : null,
|
|
2108
|
+
/* @__PURE__ */ jsxs14("div", { className: "w-full rounded-lg border border-agg-separator bg-agg-secondary px-3 py-1", children: [
|
|
2109
|
+
/* @__PURE__ */ jsx14(
|
|
1927
2110
|
SummaryRow3,
|
|
1928
2111
|
{
|
|
1929
|
-
label:
|
|
1930
|
-
value: summary.
|
|
2112
|
+
label: walletFlowLabels.summary.amountReceived,
|
|
2113
|
+
value: summary.amountReceived
|
|
1931
2114
|
}
|
|
1932
2115
|
),
|
|
1933
|
-
/* @__PURE__ */
|
|
2116
|
+
/* @__PURE__ */ jsx14(SummaryRow3, { label: walletFlowLabels.summary.network, value: summary.network }),
|
|
2117
|
+
/* @__PURE__ */ jsx14(SummaryRow3, { label: walletFlowLabels.summary.toWallet, value: summary.toWallet }),
|
|
2118
|
+
/* @__PURE__ */ jsx14(SummaryRow3, { label: walletFlowLabels.summary.fees, value: summary.fees })
|
|
1934
2119
|
] }),
|
|
1935
|
-
/* @__PURE__ */
|
|
2120
|
+
/* @__PURE__ */ jsx14(Button, { variant: "secondary", size: "large", className: "w-[160px]", onClick: onDone, children: labels.withdraw.done })
|
|
1936
2121
|
] })
|
|
1937
2122
|
] }) });
|
|
1938
2123
|
};
|
|
1939
2124
|
|
|
1940
2125
|
// src/withdraw/index.tsx
|
|
1941
|
-
import { jsx as
|
|
1942
|
-
|
|
2126
|
+
import { jsx as jsx15, jsxs as jsxs15 } from "react/jsx-runtime";
|
|
2127
|
+
function isControlledWithdrawModalProps(props) {
|
|
2128
|
+
return "withdrawFlow" in props;
|
|
2129
|
+
}
|
|
2130
|
+
function WithdrawModalSelfDriven({
|
|
2131
|
+
open,
|
|
2132
|
+
onOpenChange
|
|
2133
|
+
}) {
|
|
2134
|
+
const withdrawProps = useWithdrawFlow({ open, onOpenChange });
|
|
2135
|
+
return /* @__PURE__ */ jsx15(WithdrawModalControlled, __spreadValues({}, withdrawProps));
|
|
2136
|
+
}
|
|
2137
|
+
function WithdrawModalControlled({
|
|
1943
2138
|
open,
|
|
1944
2139
|
onOpenChange,
|
|
1945
2140
|
withdrawFlow,
|
|
1946
|
-
|
|
2141
|
+
onWithdrawDestinationChange,
|
|
1947
2142
|
onWithdrawAmountChange,
|
|
1948
|
-
onWithdrawCurrencyChange,
|
|
1949
2143
|
onWithdrawTokenChange,
|
|
1950
2144
|
onWithdrawNetworkChange,
|
|
1951
|
-
|
|
2145
|
+
onMaxClick,
|
|
1952
2146
|
onSelectWithdrawProvider,
|
|
1953
2147
|
onDoneWithdraw
|
|
1954
|
-
})
|
|
2148
|
+
}) {
|
|
1955
2149
|
const [step, setStep] = useState4("method");
|
|
1956
|
-
const
|
|
1957
|
-
|
|
1958
|
-
|
|
1959
|
-
|
|
1960
|
-
|
|
1961
|
-
|
|
1962
|
-
|
|
2150
|
+
const [isConfirming, setIsConfirming] = useState4(false);
|
|
2151
|
+
const [confirmError, setConfirmError] = useState4(null);
|
|
2152
|
+
useEffect5(() => {
|
|
2153
|
+
if (!open) {
|
|
2154
|
+
setStep("method");
|
|
2155
|
+
setIsConfirming(false);
|
|
2156
|
+
setConfirmError(null);
|
|
2157
|
+
}
|
|
2158
|
+
}, [open]);
|
|
1963
2159
|
const handleOpenChange = (isOpen) => {
|
|
1964
2160
|
if (!isOpen) {
|
|
1965
2161
|
setStep("method");
|
|
2162
|
+
setIsConfirming(false);
|
|
2163
|
+
setConfirmError(null);
|
|
1966
2164
|
}
|
|
1967
2165
|
onOpenChange(isOpen);
|
|
1968
2166
|
};
|
|
1969
|
-
const
|
|
1970
|
-
|
|
1971
|
-
|
|
1972
|
-
|
|
1973
|
-
const
|
|
1974
|
-
|
|
1975
|
-
|
|
1976
|
-
|
|
1977
|
-
|
|
1978
|
-
|
|
2167
|
+
const handleBack = () => {
|
|
2168
|
+
setConfirmError(null);
|
|
2169
|
+
setStep("method");
|
|
2170
|
+
};
|
|
2171
|
+
const handleConfirm = () => __async(null, null, function* () {
|
|
2172
|
+
setIsConfirming(true);
|
|
2173
|
+
setConfirmError(null);
|
|
2174
|
+
try {
|
|
2175
|
+
yield onSelectWithdrawProvider("wallet");
|
|
2176
|
+
setStep("success");
|
|
2177
|
+
} catch (err) {
|
|
2178
|
+
setConfirmError(err instanceof Error ? err.message : "Withdrawal failed. Please try again.");
|
|
2179
|
+
} finally {
|
|
2180
|
+
setIsConfirming(false);
|
|
2181
|
+
}
|
|
2182
|
+
});
|
|
2183
|
+
const withdrawTokenOptions = withTokenIcons(withdrawFlow.tokenOptions);
|
|
2184
|
+
const withdrawNetworkOptions = withNetworkIcons(withdrawFlow.networkOptions);
|
|
2185
|
+
return /* @__PURE__ */ jsx15(Modal, { open, onOpenChange: handleOpenChange, children: /* @__PURE__ */ jsxs15(Modal.Container, { maxWidth: "600px", "aria-label": "Withdraw", children: [
|
|
2186
|
+
step === "method" ? /* @__PURE__ */ jsx15(
|
|
2187
|
+
WithdrawMethodStep,
|
|
2188
|
+
{
|
|
2189
|
+
balance: withdrawFlow.balance,
|
|
2190
|
+
onSelectMethod: () => setStep("withdraw-amount")
|
|
2191
|
+
}
|
|
2192
|
+
) : null,
|
|
2193
|
+
step === "withdraw-amount" ? /* @__PURE__ */ jsx15(
|
|
1979
2194
|
WithdrawAmountStep,
|
|
1980
2195
|
{
|
|
1981
2196
|
amount: withdrawFlow.amount,
|
|
1982
|
-
currency: withdrawFlow.currency,
|
|
1983
2197
|
destinationWallet: withdrawFlow.destinationWallet,
|
|
2198
|
+
balanceDisplay: withdrawFlow.balanceDisplay,
|
|
1984
2199
|
tokenOptions: withdrawTokenOptions,
|
|
1985
2200
|
networkOptions: withdrawNetworkOptions,
|
|
1986
2201
|
selectedToken: withdrawFlow.selectedToken,
|
|
1987
2202
|
selectedNetwork: withdrawFlow.selectedNetwork,
|
|
1988
|
-
|
|
2203
|
+
isConfirming,
|
|
2204
|
+
error: confirmError,
|
|
2205
|
+
onBack: handleBack,
|
|
1989
2206
|
onAmountChange: onWithdrawAmountChange,
|
|
1990
|
-
|
|
2207
|
+
onDestinationChange: onWithdrawDestinationChange,
|
|
1991
2208
|
onTokenChange: onWithdrawTokenChange,
|
|
1992
2209
|
onNetworkChange: onWithdrawNetworkChange,
|
|
1993
|
-
|
|
1994
|
-
|
|
1995
|
-
setStep("provider");
|
|
1996
|
-
}
|
|
2210
|
+
onMaxClick,
|
|
2211
|
+
onContinue: handleConfirm
|
|
1997
2212
|
}
|
|
1998
2213
|
) : null,
|
|
1999
|
-
step === "
|
|
2000
|
-
WithdrawProviderStep,
|
|
2001
|
-
{
|
|
2002
|
-
token: withdrawFlow.selectedToken,
|
|
2003
|
-
amount: withdrawFlow.amount,
|
|
2004
|
-
currency: withdrawFlow.currency,
|
|
2005
|
-
providers: withdrawFlow.providers,
|
|
2006
|
-
onBack: () => setStep("withdraw-amount"),
|
|
2007
|
-
onSelectProvider: (providerId) => {
|
|
2008
|
-
onSelectWithdrawProvider(providerId);
|
|
2009
|
-
setStep("success");
|
|
2010
|
-
}
|
|
2011
|
-
}
|
|
2012
|
-
) : null,
|
|
2013
|
-
step === "success" ? /* @__PURE__ */ jsx16(
|
|
2214
|
+
step === "success" ? /* @__PURE__ */ jsx15(
|
|
2014
2215
|
WithdrawSuccessStep,
|
|
2015
2216
|
{
|
|
2016
2217
|
summary: withdrawFlow.purchaseSummary,
|
|
2218
|
+
tokenSymbol: withdrawFlow.selectedToken,
|
|
2219
|
+
withdrawalId: withdrawFlow.withdrawalId,
|
|
2017
2220
|
onDone: onDoneWithdraw,
|
|
2018
|
-
onClose: () =>
|
|
2221
|
+
onClose: () => handleOpenChange(false)
|
|
2019
2222
|
}
|
|
2020
2223
|
) : null
|
|
2021
2224
|
] }) });
|
|
2225
|
+
}
|
|
2226
|
+
var WithdrawModal = (props) => {
|
|
2227
|
+
if (isControlledWithdrawModalProps(props)) {
|
|
2228
|
+
return /* @__PURE__ */ jsx15(WithdrawModalControlled, __spreadValues({}, props));
|
|
2229
|
+
}
|
|
2230
|
+
return /* @__PURE__ */ jsx15(WithdrawModalSelfDriven, __spreadValues({}, props));
|
|
2022
2231
|
};
|
|
2023
2232
|
WithdrawModal.displayName = "WithdrawModal";
|
|
2024
2233
|
|
|
2025
2234
|
// src/onboarding/index.tsx
|
|
2026
|
-
import { useCallback as
|
|
2027
|
-
import { useLabels as
|
|
2235
|
+
import { useCallback as useCallback5, useEffect as useEffect6, useState as useState9 } from "react";
|
|
2236
|
+
import { useLabels as useLabels19 } from "@agg-build/hooks";
|
|
2028
2237
|
import * as Dialog3 from "@radix-ui/react-dialog";
|
|
2029
2238
|
|
|
2030
2239
|
// src/onboarding/onboarding-modal.constants.ts
|
|
@@ -2043,30 +2252,30 @@ var ONBOARDING_STEPS = {
|
|
|
2043
2252
|
var ONCHAIN_VENUES = [Venue.polymarket, Venue.opinion, Venue.predict];
|
|
2044
2253
|
|
|
2045
2254
|
// src/onboarding/steps/how-it-works.tsx
|
|
2046
|
-
import { useCallback
|
|
2047
|
-
import { useLabels as
|
|
2048
|
-
import { jsx as
|
|
2255
|
+
import { useCallback, useRef as useRef2, useState as useState5 } from "react";
|
|
2256
|
+
import { useLabels as useLabels14 } from "@agg-build/hooks";
|
|
2257
|
+
import { jsx as jsx16, jsxs as jsxs16 } from "react/jsx-runtime";
|
|
2049
2258
|
var defaultIcons = {
|
|
2050
|
-
createAccount: /* @__PURE__ */
|
|
2051
|
-
linkAccounts: /* @__PURE__ */
|
|
2052
|
-
bestPrices: /* @__PURE__ */
|
|
2053
|
-
stayInControl: /* @__PURE__ */
|
|
2259
|
+
createAccount: /* @__PURE__ */ jsx16(CreateAccountIcon, { className: "h-[28px] w-[28px] text-agg-muted-foreground" }),
|
|
2260
|
+
linkAccounts: /* @__PURE__ */ jsx16(LinkAccountsIcon, { className: "h-[28px] w-[28px] text-agg-muted-foreground" }),
|
|
2261
|
+
bestPrices: /* @__PURE__ */ jsx16(BestPricesIcon, { className: "h-[28px] w-[28px] text-agg-muted-foreground" }),
|
|
2262
|
+
stayInControl: /* @__PURE__ */ jsx16(StayInControlIcon, { className: "h-[28px] w-[28px] text-agg-muted-foreground" })
|
|
2054
2263
|
};
|
|
2055
2264
|
var HowItWorksStep = ({ onContinue, icons }) => {
|
|
2056
|
-
const labels =
|
|
2265
|
+
const labels = useLabels14();
|
|
2057
2266
|
const scrollRef = useRef2(null);
|
|
2058
2267
|
const [showTopGradient, setShowTopGradient] = useState5(false);
|
|
2059
2268
|
const [showBottomGradient, setShowBottomGradient] = useState5(true);
|
|
2060
|
-
const handleScroll =
|
|
2269
|
+
const handleScroll = useCallback(() => {
|
|
2061
2270
|
const el = scrollRef.current;
|
|
2062
2271
|
if (!el) return;
|
|
2063
2272
|
setShowTopGradient(el.scrollTop > 0);
|
|
2064
2273
|
setShowBottomGradient(el.scrollTop + el.clientHeight < el.scrollHeight - 1);
|
|
2065
2274
|
}, []);
|
|
2066
|
-
return /* @__PURE__ */
|
|
2067
|
-
/* @__PURE__ */
|
|
2068
|
-
/* @__PURE__ */
|
|
2069
|
-
/* @__PURE__ */
|
|
2275
|
+
return /* @__PURE__ */ jsxs16("div", { className: "flex flex-col gap-6 h-[600px] sm:h-auto", children: [
|
|
2276
|
+
/* @__PURE__ */ jsx16("h2", { className: "text-center text-agg-2xl font-agg-bold text-agg-foreground", children: labels.onboarding.howItWorks.title }),
|
|
2277
|
+
/* @__PURE__ */ jsxs16("div", { className: "relative flex-1 min-h-0 sm:flex-initial", children: [
|
|
2278
|
+
/* @__PURE__ */ jsx16(
|
|
2070
2279
|
"div",
|
|
2071
2280
|
{
|
|
2072
2281
|
ref: scrollRef,
|
|
@@ -2076,7 +2285,7 @@ var HowItWorksStep = ({ onContinue, icons }) => {
|
|
|
2076
2285
|
var _a;
|
|
2077
2286
|
const icon = (_a = icons == null ? void 0 : icons[featureKey]) != null ? _a : defaultIcons[featureKey];
|
|
2078
2287
|
const feature = labels.onboarding.howItWorks.features[featureKey];
|
|
2079
|
-
return /* @__PURE__ */
|
|
2288
|
+
return /* @__PURE__ */ jsxs16(
|
|
2080
2289
|
"div",
|
|
2081
2290
|
{
|
|
2082
2291
|
className: cn(
|
|
@@ -2085,11 +2294,11 @@ var HowItWorksStep = ({ onContinue, icons }) => {
|
|
|
2085
2294
|
"bg-agg-secondary-hover"
|
|
2086
2295
|
),
|
|
2087
2296
|
children: [
|
|
2088
|
-
/* @__PURE__ */
|
|
2089
|
-
/* @__PURE__ */
|
|
2090
|
-
/* @__PURE__ */
|
|
2297
|
+
/* @__PURE__ */ jsxs16("div", { className: "flex flex-col flex-1 min-w-0 gap-[6px]", children: [
|
|
2298
|
+
/* @__PURE__ */ jsx16("p", { className: "text-agg-base font-agg-bold leading-agg-6 text-agg-foreground", children: feature.title }),
|
|
2299
|
+
/* @__PURE__ */ jsx16("p", { className: "text-agg-sm leading-agg-5 text-agg-foreground", children: feature.description })
|
|
2091
2300
|
] }),
|
|
2092
|
-
icon ? /* @__PURE__ */
|
|
2301
|
+
icon ? /* @__PURE__ */ jsx16("div", { className: "hidden shrink-0 items-center justify-center text-agg-muted-foreground sm:flex", children: icon }) : null
|
|
2093
2302
|
]
|
|
2094
2303
|
},
|
|
2095
2304
|
featureKey
|
|
@@ -2097,7 +2306,7 @@ var HowItWorksStep = ({ onContinue, icons }) => {
|
|
|
2097
2306
|
})
|
|
2098
2307
|
}
|
|
2099
2308
|
),
|
|
2100
|
-
/* @__PURE__ */
|
|
2309
|
+
/* @__PURE__ */ jsx16(
|
|
2101
2310
|
"div",
|
|
2102
2311
|
{
|
|
2103
2312
|
className: cn(
|
|
@@ -2108,7 +2317,7 @@ var HowItWorksStep = ({ onContinue, icons }) => {
|
|
|
2108
2317
|
)
|
|
2109
2318
|
}
|
|
2110
2319
|
),
|
|
2111
|
-
/* @__PURE__ */
|
|
2320
|
+
/* @__PURE__ */ jsx16(
|
|
2112
2321
|
"div",
|
|
2113
2322
|
{
|
|
2114
2323
|
className: cn(
|
|
@@ -2120,26 +2329,26 @@ var HowItWorksStep = ({ onContinue, icons }) => {
|
|
|
2120
2329
|
}
|
|
2121
2330
|
)
|
|
2122
2331
|
] }),
|
|
2123
|
-
/* @__PURE__ */
|
|
2332
|
+
/* @__PURE__ */ jsx16(Button, { variant: "primary", size: "large", className: "w-full", onClick: onContinue, children: labels.onboarding.howItWorks.continue })
|
|
2124
2333
|
] });
|
|
2125
2334
|
};
|
|
2126
2335
|
HowItWorksStep.displayName = "HowItWorksStep";
|
|
2127
2336
|
|
|
2128
2337
|
// src/onboarding/steps/profile-setup.tsx
|
|
2129
|
-
import { useCallback as
|
|
2130
|
-
import { useLabels as
|
|
2131
|
-
import { jsx as
|
|
2338
|
+
import { useCallback as useCallback2, useRef as useRef3, useState as useState6 } from "react";
|
|
2339
|
+
import { useLabels as useLabels15 } from "@agg-build/hooks";
|
|
2340
|
+
import { jsx as jsx17, jsxs as jsxs17 } from "react/jsx-runtime";
|
|
2132
2341
|
var ProfileSetupStep = ({ onContinue }) => {
|
|
2133
|
-
const labels =
|
|
2342
|
+
const labels = useLabels15();
|
|
2134
2343
|
const [username, setUsername] = useState6("");
|
|
2135
2344
|
const [avatarFile, setAvatarFile] = useState6();
|
|
2136
2345
|
const [avatarPreview, setAvatarPreview] = useState6();
|
|
2137
2346
|
const fileInputRef = useRef3(null);
|
|
2138
|
-
const handleAvatarClick =
|
|
2347
|
+
const handleAvatarClick = useCallback2(() => {
|
|
2139
2348
|
var _a;
|
|
2140
2349
|
(_a = fileInputRef.current) == null ? void 0 : _a.click();
|
|
2141
2350
|
}, []);
|
|
2142
|
-
const handleFileChange =
|
|
2351
|
+
const handleFileChange = useCallback2((e) => {
|
|
2143
2352
|
var _a;
|
|
2144
2353
|
const file = (_a = e.target.files) == null ? void 0 : _a[0];
|
|
2145
2354
|
if (!file) return;
|
|
@@ -2151,18 +2360,18 @@ var ProfileSetupStep = ({ onContinue }) => {
|
|
|
2151
2360
|
};
|
|
2152
2361
|
reader.readAsDataURL(file);
|
|
2153
2362
|
}, []);
|
|
2154
|
-
const handleContinue =
|
|
2363
|
+
const handleContinue = useCallback2(() => {
|
|
2155
2364
|
onContinue({
|
|
2156
2365
|
username,
|
|
2157
2366
|
avatarFile,
|
|
2158
2367
|
avatarPreview
|
|
2159
2368
|
});
|
|
2160
2369
|
}, [username, avatarFile, avatarPreview, onContinue]);
|
|
2161
|
-
return /* @__PURE__ */
|
|
2162
|
-
/* @__PURE__ */
|
|
2163
|
-
/* @__PURE__ */
|
|
2164
|
-
/* @__PURE__ */
|
|
2165
|
-
/* @__PURE__ */
|
|
2370
|
+
return /* @__PURE__ */ jsxs17("div", { className: "flex flex-col gap-7", children: [
|
|
2371
|
+
/* @__PURE__ */ jsx17("h2", { className: "text-center text-agg-2xl font-agg-bold text-agg-foreground", children: labels.onboarding.profileSetup.title }),
|
|
2372
|
+
/* @__PURE__ */ jsxs17("div", { className: "flex flex-col gap-5 items-center w-full", children: [
|
|
2373
|
+
/* @__PURE__ */ jsxs17("div", { className: "flex justify-center", children: [
|
|
2374
|
+
/* @__PURE__ */ jsxs17(
|
|
2166
2375
|
"button",
|
|
2167
2376
|
{
|
|
2168
2377
|
type: "button",
|
|
@@ -2178,13 +2387,13 @@ var ProfileSetupStep = ({ onContinue }) => {
|
|
|
2178
2387
|
),
|
|
2179
2388
|
"aria-label": labels.onboarding.profileSetup.uploadProfilePictureAria,
|
|
2180
2389
|
children: [
|
|
2181
|
-
!avatarPreview ? /* @__PURE__ */
|
|
2390
|
+
!avatarPreview ? /* @__PURE__ */ jsx17(
|
|
2182
2391
|
"svg",
|
|
2183
2392
|
{
|
|
2184
2393
|
"aria-hidden": true,
|
|
2185
2394
|
viewBox: "0 0 80 80",
|
|
2186
2395
|
className: "pointer-events-none absolute inset-0 h-full w-full text-agg-separator group-hover:text-agg-muted-foreground",
|
|
2187
|
-
children: /* @__PURE__ */
|
|
2396
|
+
children: /* @__PURE__ */ jsx17(
|
|
2188
2397
|
"circle",
|
|
2189
2398
|
{
|
|
2190
2399
|
cx: "40",
|
|
@@ -2198,18 +2407,18 @@ var ProfileSetupStep = ({ onContinue }) => {
|
|
|
2198
2407
|
)
|
|
2199
2408
|
}
|
|
2200
2409
|
) : null,
|
|
2201
|
-
avatarPreview ? /* @__PURE__ */
|
|
2410
|
+
avatarPreview ? /* @__PURE__ */ jsx17(
|
|
2202
2411
|
RemoteImage,
|
|
2203
2412
|
{
|
|
2204
2413
|
src: avatarPreview,
|
|
2205
2414
|
alt: labels.onboarding.profileSetup.profilePreviewAlt,
|
|
2206
2415
|
className: "h-full w-full object-cover"
|
|
2207
2416
|
}
|
|
2208
|
-
) : /* @__PURE__ */
|
|
2417
|
+
) : /* @__PURE__ */ jsx17(ProfileIcon, { className: "h-7 w-7 text-agg-muted-foreground" })
|
|
2209
2418
|
]
|
|
2210
2419
|
}
|
|
2211
2420
|
),
|
|
2212
|
-
/* @__PURE__ */
|
|
2421
|
+
/* @__PURE__ */ jsx17(
|
|
2213
2422
|
"input",
|
|
2214
2423
|
{
|
|
2215
2424
|
ref: fileInputRef,
|
|
@@ -2221,8 +2430,8 @@ var ProfileSetupStep = ({ onContinue }) => {
|
|
|
2221
2430
|
}
|
|
2222
2431
|
)
|
|
2223
2432
|
] }),
|
|
2224
|
-
/* @__PURE__ */
|
|
2225
|
-
/* @__PURE__ */
|
|
2433
|
+
/* @__PURE__ */ jsxs17("div", { className: "flex flex-col gap-2 w-full", children: [
|
|
2434
|
+
/* @__PURE__ */ jsx17(
|
|
2226
2435
|
"label",
|
|
2227
2436
|
{
|
|
2228
2437
|
htmlFor: "onboarding-username",
|
|
@@ -2230,7 +2439,7 @@ var ProfileSetupStep = ({ onContinue }) => {
|
|
|
2230
2439
|
children: labels.onboarding.profileSetup.usernameLabel
|
|
2231
2440
|
}
|
|
2232
2441
|
),
|
|
2233
|
-
/* @__PURE__ */
|
|
2442
|
+
/* @__PURE__ */ jsx17(
|
|
2234
2443
|
"input",
|
|
2235
2444
|
{
|
|
2236
2445
|
id: "onboarding-username",
|
|
@@ -2254,17 +2463,17 @@ var ProfileSetupStep = ({ onContinue }) => {
|
|
|
2254
2463
|
)
|
|
2255
2464
|
] })
|
|
2256
2465
|
] }),
|
|
2257
|
-
/* @__PURE__ */
|
|
2466
|
+
/* @__PURE__ */ jsx17(Button, { variant: "primary", size: "large", className: "w-full", onClick: handleContinue, children: labels.onboarding.profileSetup.continue })
|
|
2258
2467
|
] });
|
|
2259
2468
|
};
|
|
2260
2469
|
ProfileSetupStep.displayName = "ProfileSetupStep";
|
|
2261
2470
|
|
|
2262
2471
|
// src/onboarding/steps/connect-accounts.tsx
|
|
2263
2472
|
import { Venue as Venue2 } from "@agg-build/sdk";
|
|
2264
|
-
import { useLabels as
|
|
2265
|
-
import { jsx as
|
|
2473
|
+
import { useLabels as useLabels16 } from "@agg-build/hooks";
|
|
2474
|
+
import { jsx as jsx18, jsxs as jsxs18 } from "react/jsx-runtime";
|
|
2266
2475
|
var OnchainVenueLogos = () => {
|
|
2267
|
-
return /* @__PURE__ */
|
|
2476
|
+
return /* @__PURE__ */ jsx18("div", { className: "flex gap-1 sm:gap-0 sm:-space-x-5", children: ONCHAIN_VENUES.map((venue, index) => /* @__PURE__ */ jsx18("div", { style: { zIndex: ONCHAIN_VENUES.length - index }, children: /* @__PURE__ */ jsx18(VenueLogo, { venue, variant: "logo", size: "medium", className: "sm:h-8 sm:w-8" }) }, venue)) });
|
|
2268
2477
|
};
|
|
2269
2478
|
var VenueCard = ({
|
|
2270
2479
|
logos,
|
|
@@ -2275,8 +2484,8 @@ var VenueCard = ({
|
|
|
2275
2484
|
onConnect,
|
|
2276
2485
|
connected = false
|
|
2277
2486
|
}) => {
|
|
2278
|
-
const labels =
|
|
2279
|
-
const action = connected ? /* @__PURE__ */
|
|
2487
|
+
const labels = useLabels16();
|
|
2488
|
+
const action = connected ? /* @__PURE__ */ jsx18(CheckCircleIcon, { className: "h-6 w-6 text-agg-success" }) : /* @__PURE__ */ jsx18(
|
|
2280
2489
|
Button,
|
|
2281
2490
|
{
|
|
2282
2491
|
variant: "tertiary",
|
|
@@ -2286,18 +2495,18 @@ var VenueCard = ({
|
|
|
2286
2495
|
children: labels.onboarding.connectAccounts.connect
|
|
2287
2496
|
}
|
|
2288
2497
|
);
|
|
2289
|
-
const mobileAction = connected ? /* @__PURE__ */
|
|
2498
|
+
const mobileAction = connected ? /* @__PURE__ */ jsx18(CheckCircleIcon, { className: "h-6 w-6 text-agg-success" }) : /* @__PURE__ */ jsx18(
|
|
2290
2499
|
Button,
|
|
2291
2500
|
{
|
|
2292
2501
|
variant: "tertiary",
|
|
2293
2502
|
size: "medium",
|
|
2294
2503
|
className: "!h-auto !px-0 !py-0 text-agg-primary hover:bg-transparent hover:text-agg-primary-hover",
|
|
2295
2504
|
onClick: onConnect,
|
|
2296
|
-
suffix: /* @__PURE__ */
|
|
2505
|
+
suffix: /* @__PURE__ */ jsx18(ChevronRightIcon, { className: "h-4 w-4" }),
|
|
2297
2506
|
children: labels.onboarding.connectAccounts.connectAccount
|
|
2298
2507
|
}
|
|
2299
2508
|
);
|
|
2300
|
-
return /* @__PURE__ */
|
|
2509
|
+
return /* @__PURE__ */ jsxs18(
|
|
2301
2510
|
"div",
|
|
2302
2511
|
{
|
|
2303
2512
|
className: cn(
|
|
@@ -2305,23 +2514,23 @@ var VenueCard = ({
|
|
|
2305
2514
|
connected ? "bg-agg-success/5" : "bg-agg-secondary-hover hover:bg-agg-tertiary"
|
|
2306
2515
|
),
|
|
2307
2516
|
children: [
|
|
2308
|
-
/* @__PURE__ */
|
|
2309
|
-
/* @__PURE__ */
|
|
2310
|
-
/* @__PURE__ */
|
|
2311
|
-
/* @__PURE__ */
|
|
2312
|
-
/* @__PURE__ */
|
|
2313
|
-
/* @__PURE__ */
|
|
2517
|
+
/* @__PURE__ */ jsxs18("div", { className: "hidden sm:flex items-center justify-between", children: [
|
|
2518
|
+
/* @__PURE__ */ jsxs18("div", { className: "flex items-center gap-5", children: [
|
|
2519
|
+
/* @__PURE__ */ jsx18("div", { className: "shrink-0", children: logos }),
|
|
2520
|
+
/* @__PURE__ */ jsxs18("div", { className: "flex flex-col gap-[2px]", children: [
|
|
2521
|
+
/* @__PURE__ */ jsx18("p", { className: "text-agg-base font-agg-bold text-agg-foreground", children: title }),
|
|
2522
|
+
/* @__PURE__ */ jsx18("p", { className: "text-agg-sm text-agg-foreground", children: description })
|
|
2314
2523
|
] })
|
|
2315
2524
|
] }),
|
|
2316
|
-
/* @__PURE__ */
|
|
2525
|
+
/* @__PURE__ */ jsx18("div", { className: "shrink-0", children: action })
|
|
2317
2526
|
] }),
|
|
2318
|
-
/* @__PURE__ */
|
|
2319
|
-
/* @__PURE__ */
|
|
2320
|
-
/* @__PURE__ */
|
|
2321
|
-
/* @__PURE__ */
|
|
2527
|
+
/* @__PURE__ */ jsxs18("div", { className: "flex flex-col gap-3 sm:hidden", children: [
|
|
2528
|
+
/* @__PURE__ */ jsxs18("div", { className: "flex flex-col gap-3", children: [
|
|
2529
|
+
/* @__PURE__ */ jsx18("div", { className: "shrink-0", children: logos }),
|
|
2530
|
+
/* @__PURE__ */ jsx18("p", { className: "text-agg-lg font-agg-bold text-agg-foreground", children: mobileTitle != null ? mobileTitle : title })
|
|
2322
2531
|
] }),
|
|
2323
|
-
/* @__PURE__ */
|
|
2324
|
-
/* @__PURE__ */
|
|
2532
|
+
/* @__PURE__ */ jsxs18("div", { className: "flex flex-col items-start gap-2", children: [
|
|
2533
|
+
/* @__PURE__ */ jsx18("p", { className: "text-agg-base text-agg-foreground", children: mobileDescription != null ? mobileDescription : description }),
|
|
2325
2534
|
mobileAction
|
|
2326
2535
|
] })
|
|
2327
2536
|
] })
|
|
@@ -2336,15 +2545,15 @@ var ConnectAccountsStep = ({
|
|
|
2336
2545
|
connectedOnchain = false,
|
|
2337
2546
|
connectedKalshi = false
|
|
2338
2547
|
}) => {
|
|
2339
|
-
const labels =
|
|
2548
|
+
const labels = useLabels16();
|
|
2340
2549
|
const canContinue = connectedOnchain || connectedKalshi;
|
|
2341
|
-
return /* @__PURE__ */
|
|
2342
|
-
/* @__PURE__ */
|
|
2343
|
-
/* @__PURE__ */
|
|
2344
|
-
/* @__PURE__ */
|
|
2550
|
+
return /* @__PURE__ */ jsxs18("div", { className: "flex flex-col gap-6", children: [
|
|
2551
|
+
/* @__PURE__ */ jsx18("h2", { className: "text-center text-agg-2xl font-agg-bold text-agg-foreground", children: labels.onboarding.connectAccounts.title }),
|
|
2552
|
+
/* @__PURE__ */ jsxs18("div", { className: "flex flex-col gap-4", children: [
|
|
2553
|
+
/* @__PURE__ */ jsx18(
|
|
2345
2554
|
VenueCard,
|
|
2346
2555
|
{
|
|
2347
|
-
logos: /* @__PURE__ */
|
|
2556
|
+
logos: /* @__PURE__ */ jsx18(OnchainVenueLogos, {}),
|
|
2348
2557
|
title: labels.onboarding.connectAccounts.onchainTitle,
|
|
2349
2558
|
mobileTitle: labels.onboarding.connectAccounts.onchainMobileTitle(
|
|
2350
2559
|
ONCHAIN_VENUES.length - 1
|
|
@@ -2355,10 +2564,10 @@ var ConnectAccountsStep = ({
|
|
|
2355
2564
|
connected: connectedOnchain
|
|
2356
2565
|
}
|
|
2357
2566
|
),
|
|
2358
|
-
/* @__PURE__ */
|
|
2567
|
+
/* @__PURE__ */ jsx18(
|
|
2359
2568
|
VenueCard,
|
|
2360
2569
|
{
|
|
2361
|
-
logos: /* @__PURE__ */
|
|
2570
|
+
logos: /* @__PURE__ */ jsx18("div", { className: "sm:flex sm:w-14 sm:items-center sm:justify-center", children: /* @__PURE__ */ jsx18(
|
|
2362
2571
|
VenueLogo,
|
|
2363
2572
|
{
|
|
2364
2573
|
venue: Venue2.kalshi,
|
|
@@ -2376,7 +2585,7 @@ var ConnectAccountsStep = ({
|
|
|
2376
2585
|
}
|
|
2377
2586
|
)
|
|
2378
2587
|
] }),
|
|
2379
|
-
/* @__PURE__ */
|
|
2588
|
+
/* @__PURE__ */ jsx18(
|
|
2380
2589
|
Button,
|
|
2381
2590
|
{
|
|
2382
2591
|
variant: "primary",
|
|
@@ -2393,25 +2602,25 @@ ConnectAccountsStep.displayName = "ConnectAccountsStep";
|
|
|
2393
2602
|
|
|
2394
2603
|
// src/onboarding/steps/connect-kalshi-modal.tsx
|
|
2395
2604
|
import { Venue as Venue3 } from "@agg-build/sdk";
|
|
2396
|
-
import { useCallback as
|
|
2397
|
-
import { useLabels as
|
|
2605
|
+
import { useCallback as useCallback3, useState as useState7 } from "react";
|
|
2606
|
+
import { useLabels as useLabels17 } from "@agg-build/hooks";
|
|
2398
2607
|
import * as Dialog from "@radix-ui/react-dialog";
|
|
2399
|
-
import { jsx as
|
|
2608
|
+
import { jsx as jsx19, jsxs as jsxs19 } from "react/jsx-runtime";
|
|
2400
2609
|
var ConnectKalshiModal = ({
|
|
2401
2610
|
open,
|
|
2402
2611
|
onOpenChange,
|
|
2403
2612
|
onVerify
|
|
2404
2613
|
}) => {
|
|
2405
|
-
const labels =
|
|
2614
|
+
const labels = useLabels17();
|
|
2406
2615
|
const [apiKeyId, setApiKeyId] = useState7("");
|
|
2407
2616
|
const [privateKey, setPrivateKey] = useState7("");
|
|
2408
2617
|
const [verifying, setVerifying] = useState7(false);
|
|
2409
2618
|
const [error, setError] = useState7();
|
|
2410
2619
|
const canVerify = apiKeyId.trim().length > 0 && privateKey.trim().length > 0;
|
|
2411
|
-
const handleCancel =
|
|
2620
|
+
const handleCancel = useCallback3(() => {
|
|
2412
2621
|
onOpenChange(false);
|
|
2413
2622
|
}, [onOpenChange]);
|
|
2414
|
-
const handleVerify =
|
|
2623
|
+
const handleVerify = useCallback3(() => __async(null, null, function* () {
|
|
2415
2624
|
if (!canVerify || verifying) return;
|
|
2416
2625
|
setVerifying(true);
|
|
2417
2626
|
setError(void 0);
|
|
@@ -2440,7 +2649,7 @@ var ConnectKalshiModal = ({
|
|
|
2440
2649
|
privateKey,
|
|
2441
2650
|
verifying
|
|
2442
2651
|
]);
|
|
2443
|
-
const handleOpenChange =
|
|
2652
|
+
const handleOpenChange = useCallback3(
|
|
2444
2653
|
(value) => {
|
|
2445
2654
|
if (value) {
|
|
2446
2655
|
setApiKeyId("");
|
|
@@ -2452,15 +2661,15 @@ var ConnectKalshiModal = ({
|
|
|
2452
2661
|
},
|
|
2453
2662
|
[onOpenChange]
|
|
2454
2663
|
);
|
|
2455
|
-
return /* @__PURE__ */
|
|
2664
|
+
return /* @__PURE__ */ jsx19(Modal, { open, onOpenChange: handleOpenChange, children: /* @__PURE__ */ jsxs19(
|
|
2456
2665
|
Modal.Container,
|
|
2457
2666
|
{
|
|
2458
2667
|
maxWidth: "600px",
|
|
2459
2668
|
"aria-label": labels.onboarding.connectKalshiModal.ariaLabel,
|
|
2460
2669
|
classNames: { container: "!rounded-agg-lg" },
|
|
2461
2670
|
children: [
|
|
2462
|
-
/* @__PURE__ */
|
|
2463
|
-
/* @__PURE__ */
|
|
2671
|
+
/* @__PURE__ */ jsx19(Dialog.Title, { className: "sr-only", children: labels.onboarding.connectKalshiModal.title }),
|
|
2672
|
+
/* @__PURE__ */ jsx19(
|
|
2464
2673
|
Modal.Header,
|
|
2465
2674
|
{
|
|
2466
2675
|
hideClose: false,
|
|
@@ -2471,8 +2680,8 @@ var ConnectKalshiModal = ({
|
|
|
2471
2680
|
}
|
|
2472
2681
|
}
|
|
2473
2682
|
),
|
|
2474
|
-
/* @__PURE__ */
|
|
2475
|
-
/* @__PURE__ */
|
|
2683
|
+
/* @__PURE__ */ jsx19(Modal.Body, { classNames: { root: "!px-5 !pt-0 !pb-[60px] sm:!px-8" }, children: /* @__PURE__ */ jsxs19("div", { className: "flex flex-col gap-8 items-center", children: [
|
|
2684
|
+
/* @__PURE__ */ jsx19(
|
|
2476
2685
|
VenueLogo,
|
|
2477
2686
|
{
|
|
2478
2687
|
venue: Venue3.kalshi,
|
|
@@ -2481,54 +2690,54 @@ var ConnectKalshiModal = ({
|
|
|
2481
2690
|
className: "h-[60px] w-[60px]"
|
|
2482
2691
|
}
|
|
2483
2692
|
),
|
|
2484
|
-
/* @__PURE__ */
|
|
2485
|
-
/* @__PURE__ */
|
|
2486
|
-
/* @__PURE__ */
|
|
2693
|
+
/* @__PURE__ */ jsxs19("div", { className: "flex flex-col gap-4 items-center text-center", children: [
|
|
2694
|
+
/* @__PURE__ */ jsx19("h2", { className: "text-agg-2xl font-agg-bold text-agg-foreground", children: labels.onboarding.connectKalshiModal.title }),
|
|
2695
|
+
/* @__PURE__ */ jsx19("p", { className: "text-agg-base leading-agg-6 text-agg-foreground", children: labels.onboarding.connectKalshiModal.description })
|
|
2487
2696
|
] }),
|
|
2488
|
-
/* @__PURE__ */
|
|
2489
|
-
/* @__PURE__ */
|
|
2490
|
-
/* @__PURE__ */
|
|
2491
|
-
/* @__PURE__ */
|
|
2492
|
-
/* @__PURE__ */
|
|
2697
|
+
/* @__PURE__ */ jsxs19("div", { className: "flex flex-col gap-4 w-full", children: [
|
|
2698
|
+
/* @__PURE__ */ jsxs19("div", { className: "flex flex-col gap-3 rounded-agg-lg bg-agg-secondary-hover p-4", children: [
|
|
2699
|
+
/* @__PURE__ */ jsxs19("div", { className: "flex flex-col gap-1", children: [
|
|
2700
|
+
/* @__PURE__ */ jsx19("p", { className: "text-agg-xs font-agg-bold uppercase leading-agg-4 text-agg-muted-foreground", children: labels.onboarding.connectKalshiModal.stepOne.label }),
|
|
2701
|
+
/* @__PURE__ */ jsx19("p", { className: "text-agg-sm font-agg-bold leading-agg-5 text-agg-foreground", children: labels.onboarding.connectKalshiModal.stepOne.title })
|
|
2493
2702
|
] }),
|
|
2494
|
-
/* @__PURE__ */
|
|
2495
|
-
/* @__PURE__ */
|
|
2496
|
-
/* @__PURE__ */
|
|
2703
|
+
/* @__PURE__ */ jsxs19("div", { className: "space-y-0 text-agg-sm leading-agg-5 text-agg-foreground", children: [
|
|
2704
|
+
/* @__PURE__ */ jsx19("p", { children: labels.onboarding.connectKalshiModal.stepOne.instructions.signIn }),
|
|
2705
|
+
/* @__PURE__ */ jsxs19("p", { children: [
|
|
2497
2706
|
labels.onboarding.connectKalshiModal.stepOne.instructions.goToProfilePrefix,
|
|
2498
2707
|
" ",
|
|
2499
|
-
/* @__PURE__ */
|
|
2708
|
+
/* @__PURE__ */ jsx19("span", { className: "font-agg-bold", children: labels.onboarding.connectKalshiModal.stepOne.instructions.profileText }),
|
|
2500
2709
|
labels.onboarding.connectKalshiModal.stepOne.instructions.goToProfileSeparator,
|
|
2501
2710
|
" ",
|
|
2502
|
-
/* @__PURE__ */
|
|
2711
|
+
/* @__PURE__ */ jsx19("span", { className: "text-agg-foreground underline", children: labels.onboarding.connectKalshiModal.stepOne.instructions.profileUrl })
|
|
2503
2712
|
] }),
|
|
2504
|
-
/* @__PURE__ */
|
|
2713
|
+
/* @__PURE__ */ jsxs19("p", { children: [
|
|
2505
2714
|
labels.onboarding.connectKalshiModal.stepOne.instructions.clickCreateKeyPrefix,
|
|
2506
2715
|
" ",
|
|
2507
|
-
/* @__PURE__ */
|
|
2716
|
+
/* @__PURE__ */ jsx19("span", { className: "font-agg-bold", children: labels.onboarding.connectKalshiModal.stepOne.instructions.createKeyText }),
|
|
2508
2717
|
labels.onboarding.connectKalshiModal.stepOne.instructions.clickCreateKeySuffix
|
|
2509
2718
|
] }),
|
|
2510
|
-
/* @__PURE__ */
|
|
2719
|
+
/* @__PURE__ */ jsxs19("p", { children: [
|
|
2511
2720
|
labels.onboarding.connectKalshiModal.stepOne.instructions.selectPermissionsPrefix,
|
|
2512
2721
|
" ",
|
|
2513
|
-
/* @__PURE__ */
|
|
2722
|
+
/* @__PURE__ */ jsx19("span", { className: "font-agg-bold", children: labels.onboarding.connectKalshiModal.stepOne.instructions.readWriteText }),
|
|
2514
2723
|
labels.onboarding.connectKalshiModal.stepOne.instructions.selectPermissionsSuffix
|
|
2515
2724
|
] }),
|
|
2516
|
-
/* @__PURE__ */
|
|
2725
|
+
/* @__PURE__ */ jsx19("p", { children: labels.onboarding.connectKalshiModal.stepOne.instructions.createKey })
|
|
2517
2726
|
] }),
|
|
2518
|
-
/* @__PURE__ */
|
|
2727
|
+
/* @__PURE__ */ jsxs19("p", { className: "text-agg-sm leading-agg-5 text-agg-foreground", children: [
|
|
2519
2728
|
labels.onboarding.connectKalshiModal.stepOne.footerLineOne,
|
|
2520
|
-
/* @__PURE__ */
|
|
2729
|
+
/* @__PURE__ */ jsx19("br", {}),
|
|
2521
2730
|
labels.onboarding.connectKalshiModal.stepOne.footerLineTwo
|
|
2522
2731
|
] })
|
|
2523
2732
|
] }),
|
|
2524
|
-
/* @__PURE__ */
|
|
2525
|
-
/* @__PURE__ */
|
|
2526
|
-
/* @__PURE__ */
|
|
2527
|
-
/* @__PURE__ */
|
|
2733
|
+
/* @__PURE__ */ jsxs19("div", { className: "flex flex-col gap-3 rounded-agg-lg bg-agg-secondary-hover p-4", children: [
|
|
2734
|
+
/* @__PURE__ */ jsxs19("div", { className: "flex flex-col gap-1", children: [
|
|
2735
|
+
/* @__PURE__ */ jsx19("p", { className: "text-agg-xs font-agg-bold uppercase leading-agg-4 text-agg-muted-foreground", children: labels.onboarding.connectKalshiModal.stepTwo.label }),
|
|
2736
|
+
/* @__PURE__ */ jsx19("p", { className: "text-agg-sm font-agg-bold leading-agg-5 text-agg-foreground", children: labels.onboarding.connectKalshiModal.stepTwo.title })
|
|
2528
2737
|
] }),
|
|
2529
|
-
/* @__PURE__ */
|
|
2530
|
-
/* @__PURE__ */
|
|
2531
|
-
/* @__PURE__ */
|
|
2738
|
+
/* @__PURE__ */ jsx19("p", { className: "text-agg-sm leading-agg-5 text-agg-foreground", children: labels.onboarding.connectKalshiModal.stepTwo.description }),
|
|
2739
|
+
/* @__PURE__ */ jsxs19("div", { className: "flex flex-col gap-2", children: [
|
|
2740
|
+
/* @__PURE__ */ jsx19(
|
|
2532
2741
|
"label",
|
|
2533
2742
|
{
|
|
2534
2743
|
htmlFor: "kalshi-api-key-id",
|
|
@@ -2536,7 +2745,7 @@ var ConnectKalshiModal = ({
|
|
|
2536
2745
|
children: labels.onboarding.connectKalshiModal.stepTwo.apiKeyIdLabel
|
|
2537
2746
|
}
|
|
2538
2747
|
),
|
|
2539
|
-
/* @__PURE__ */
|
|
2748
|
+
/* @__PURE__ */ jsx19(
|
|
2540
2749
|
"input",
|
|
2541
2750
|
{
|
|
2542
2751
|
id: "kalshi-api-key-id",
|
|
@@ -2556,8 +2765,8 @@ var ConnectKalshiModal = ({
|
|
|
2556
2765
|
}
|
|
2557
2766
|
)
|
|
2558
2767
|
] }),
|
|
2559
|
-
/* @__PURE__ */
|
|
2560
|
-
/* @__PURE__ */
|
|
2768
|
+
/* @__PURE__ */ jsxs19("div", { className: "flex flex-col gap-2", children: [
|
|
2769
|
+
/* @__PURE__ */ jsx19(
|
|
2561
2770
|
"label",
|
|
2562
2771
|
{
|
|
2563
2772
|
htmlFor: "kalshi-private-key",
|
|
@@ -2565,7 +2774,7 @@ var ConnectKalshiModal = ({
|
|
|
2565
2774
|
children: labels.onboarding.connectKalshiModal.stepTwo.privateKeyLabel
|
|
2566
2775
|
}
|
|
2567
2776
|
),
|
|
2568
|
-
/* @__PURE__ */
|
|
2777
|
+
/* @__PURE__ */ jsx19(
|
|
2569
2778
|
"textarea",
|
|
2570
2779
|
{
|
|
2571
2780
|
id: "kalshi-private-key",
|
|
@@ -2587,42 +2796,42 @@ var ConnectKalshiModal = ({
|
|
|
2587
2796
|
] })
|
|
2588
2797
|
] })
|
|
2589
2798
|
] }),
|
|
2590
|
-
/* @__PURE__ */
|
|
2591
|
-
/* @__PURE__ */
|
|
2592
|
-
/* @__PURE__ */
|
|
2593
|
-
/* @__PURE__ */
|
|
2799
|
+
/* @__PURE__ */ jsxs19("div", { className: "flex items-center justify-between w-full", children: [
|
|
2800
|
+
/* @__PURE__ */ jsx19("p", { className: "text-agg-base text-agg-foreground", children: labels.onboarding.connectKalshiModal.help.label }),
|
|
2801
|
+
/* @__PURE__ */ jsxs19("div", { className: "flex items-center gap-3", children: [
|
|
2802
|
+
/* @__PURE__ */ jsxs19(
|
|
2594
2803
|
"a",
|
|
2595
2804
|
{
|
|
2596
2805
|
href: "#",
|
|
2597
2806
|
className: "flex items-center gap-2 text-agg-base font-agg-bold text-agg-primary hover:text-agg-primary-hover",
|
|
2598
2807
|
children: [
|
|
2599
|
-
/* @__PURE__ */
|
|
2808
|
+
/* @__PURE__ */ jsx19(DocumentIcon, { className: "h-4 w-4" }),
|
|
2600
2809
|
labels.onboarding.connectKalshiModal.help.docsLinkLabel
|
|
2601
2810
|
]
|
|
2602
2811
|
}
|
|
2603
2812
|
),
|
|
2604
|
-
/* @__PURE__ */
|
|
2605
|
-
/* @__PURE__ */
|
|
2813
|
+
/* @__PURE__ */ jsx19("span", { className: "h-3 w-px bg-agg-separator" }),
|
|
2814
|
+
/* @__PURE__ */ jsxs19(
|
|
2606
2815
|
"a",
|
|
2607
2816
|
{
|
|
2608
2817
|
href: "#",
|
|
2609
2818
|
className: "flex items-center gap-2 text-agg-base font-agg-bold text-agg-primary hover:text-agg-primary-hover",
|
|
2610
2819
|
children: [
|
|
2611
|
-
/* @__PURE__ */
|
|
2820
|
+
/* @__PURE__ */ jsx19(PlaySquareIcon, { className: "h-4 w-4" }),
|
|
2612
2821
|
labels.onboarding.connectKalshiModal.help.tutorialLinkLabel
|
|
2613
2822
|
]
|
|
2614
2823
|
}
|
|
2615
2824
|
)
|
|
2616
2825
|
] })
|
|
2617
2826
|
] }),
|
|
2618
|
-
/* @__PURE__ */
|
|
2619
|
-
error ? /* @__PURE__ */
|
|
2620
|
-
/* @__PURE__ */
|
|
2621
|
-
/* @__PURE__ */
|
|
2827
|
+
/* @__PURE__ */ jsxs19("div", { className: "flex flex-col gap-5 items-center", children: [
|
|
2828
|
+
error ? /* @__PURE__ */ jsxs19("div", { className: "flex items-center gap-2", children: [
|
|
2829
|
+
/* @__PURE__ */ jsx19(WarningIcon, { className: "h-3.5 w-3.5 shrink-0 text-agg-error" }),
|
|
2830
|
+
/* @__PURE__ */ jsx19("p", { className: "text-agg-sm leading-agg-5 text-agg-error", children: error })
|
|
2622
2831
|
] }) : null,
|
|
2623
|
-
/* @__PURE__ */
|
|
2624
|
-
/* @__PURE__ */
|
|
2625
|
-
/* @__PURE__ */
|
|
2832
|
+
/* @__PURE__ */ jsxs19("div", { className: "flex items-center gap-3 justify-center", children: [
|
|
2833
|
+
/* @__PURE__ */ jsx19(Button, { variant: "secondary", size: "large", onClick: handleCancel, children: labels.onboarding.connectKalshiModal.actions.cancel }),
|
|
2834
|
+
/* @__PURE__ */ jsx19(
|
|
2626
2835
|
Button,
|
|
2627
2836
|
{
|
|
2628
2837
|
variant: "primary",
|
|
@@ -2643,22 +2852,22 @@ var ConnectKalshiModal = ({
|
|
|
2643
2852
|
ConnectKalshiModal.displayName = "ConnectKalshiModal";
|
|
2644
2853
|
|
|
2645
2854
|
// src/onboarding/steps/connect-onchain-modal.tsx
|
|
2646
|
-
import { useCallback as
|
|
2647
|
-
import { useLabels as
|
|
2855
|
+
import { useCallback as useCallback4, useState as useState8 } from "react";
|
|
2856
|
+
import { useLabels as useLabels18 } from "@agg-build/hooks";
|
|
2648
2857
|
import * as Dialog2 from "@radix-ui/react-dialog";
|
|
2649
|
-
import { jsx as
|
|
2858
|
+
import { jsx as jsx20, jsxs as jsxs20 } from "react/jsx-runtime";
|
|
2650
2859
|
var ConnectOnchainModal = ({
|
|
2651
2860
|
open,
|
|
2652
2861
|
onOpenChange,
|
|
2653
2862
|
onConnect
|
|
2654
2863
|
}) => {
|
|
2655
|
-
const labels =
|
|
2864
|
+
const labels = useLabels18();
|
|
2656
2865
|
const [connecting, setConnecting] = useState8(false);
|
|
2657
2866
|
const [error, setError] = useState8();
|
|
2658
|
-
const handleCancel =
|
|
2867
|
+
const handleCancel = useCallback4(() => {
|
|
2659
2868
|
onOpenChange(false);
|
|
2660
2869
|
}, [onOpenChange]);
|
|
2661
|
-
const handleConnect =
|
|
2870
|
+
const handleConnect = useCallback4(() => __async(null, null, function* () {
|
|
2662
2871
|
if (connecting) return;
|
|
2663
2872
|
setConnecting(true);
|
|
2664
2873
|
setError(void 0);
|
|
@@ -2673,7 +2882,7 @@ var ConnectOnchainModal = ({
|
|
|
2673
2882
|
setConnecting(false);
|
|
2674
2883
|
}
|
|
2675
2884
|
}), [connecting, labels.onboarding.connectOnchainModal.fallbackError, onConnect, onOpenChange]);
|
|
2676
|
-
const handleOpenChange =
|
|
2885
|
+
const handleOpenChange = useCallback4(
|
|
2677
2886
|
(value) => {
|
|
2678
2887
|
if (value) {
|
|
2679
2888
|
setError(void 0);
|
|
@@ -2683,15 +2892,15 @@ var ConnectOnchainModal = ({
|
|
|
2683
2892
|
},
|
|
2684
2893
|
[onOpenChange]
|
|
2685
2894
|
);
|
|
2686
|
-
return /* @__PURE__ */
|
|
2895
|
+
return /* @__PURE__ */ jsx20(Modal, { open, onOpenChange: handleOpenChange, children: /* @__PURE__ */ jsxs20(
|
|
2687
2896
|
Modal.Container,
|
|
2688
2897
|
{
|
|
2689
2898
|
maxWidth: "600px",
|
|
2690
2899
|
"aria-label": labels.onboarding.connectOnchainModal.ariaLabel,
|
|
2691
2900
|
classNames: { container: "!rounded-agg-lg" },
|
|
2692
2901
|
children: [
|
|
2693
|
-
/* @__PURE__ */
|
|
2694
|
-
/* @__PURE__ */
|
|
2902
|
+
/* @__PURE__ */ jsx20(Dialog2.Title, { className: "sr-only", children: labels.onboarding.connectOnchainModal.title }),
|
|
2903
|
+
/* @__PURE__ */ jsx20(
|
|
2695
2904
|
Modal.Header,
|
|
2696
2905
|
{
|
|
2697
2906
|
hideClose: false,
|
|
@@ -2702,26 +2911,26 @@ var ConnectOnchainModal = ({
|
|
|
2702
2911
|
}
|
|
2703
2912
|
}
|
|
2704
2913
|
),
|
|
2705
|
-
/* @__PURE__ */
|
|
2706
|
-
/* @__PURE__ */
|
|
2707
|
-
/* @__PURE__ */
|
|
2708
|
-
/* @__PURE__ */
|
|
2914
|
+
/* @__PURE__ */ jsx20(Modal.Body, { classNames: { root: "!px-5 !pt-0 !pb-[60px] sm:!px-8" }, children: /* @__PURE__ */ jsxs20("div", { className: "flex flex-col gap-8 items-center", children: [
|
|
2915
|
+
/* @__PURE__ */ jsxs20("div", { className: "flex flex-col gap-4 items-center text-center", children: [
|
|
2916
|
+
/* @__PURE__ */ jsx20("h2", { className: "text-agg-2xl font-agg-bold text-agg-foreground", children: labels.onboarding.connectOnchainModal.title }),
|
|
2917
|
+
/* @__PURE__ */ jsx20("p", { className: "text-agg-base text-center leading-agg-6 text-agg-foreground whitespace-pre-line", children: labels.onboarding.connectOnchainModal.description })
|
|
2709
2918
|
] }),
|
|
2710
|
-
/* @__PURE__ */
|
|
2711
|
-
/* @__PURE__ */
|
|
2712
|
-
/* @__PURE__ */
|
|
2713
|
-
index > 0 && /* @__PURE__ */
|
|
2714
|
-
/* @__PURE__ */
|
|
2715
|
-
/* @__PURE__ */
|
|
2919
|
+
/* @__PURE__ */ jsxs20("div", { className: "flex w-full flex-col items-center gap-4 rounded-agg-xl bg-agg-secondary-hover p-6", children: [
|
|
2920
|
+
/* @__PURE__ */ jsx20("p", { className: "text-agg-sm font-agg-bold uppercase leading-agg-5 text-agg-muted-foreground", children: labels.onboarding.connectOnchainModal.supportedVenuesLabel }),
|
|
2921
|
+
/* @__PURE__ */ jsx20("div", { className: "flex flex-wrap items-center justify-center gap-x-4 gap-y-3", children: ONCHAIN_VENUES.map((venue, index) => /* @__PURE__ */ jsxs20("div", { className: "flex items-center gap-[6px]", children: [
|
|
2922
|
+
index > 0 && /* @__PURE__ */ jsx20("span", { className: "mr-2.5 h-3 w-px bg-agg-separator" }),
|
|
2923
|
+
/* @__PURE__ */ jsx20(VenueLogo, { venue, size: "medium" }),
|
|
2924
|
+
/* @__PURE__ */ jsx20("span", { className: "text-agg-base text-agg-foreground", children: labels.venues[venue] })
|
|
2716
2925
|
] }, venue)) })
|
|
2717
2926
|
] }),
|
|
2718
|
-
/* @__PURE__ */
|
|
2719
|
-
/* @__PURE__ */
|
|
2720
|
-
error ? /* @__PURE__ */
|
|
2721
|
-
/* @__PURE__ */
|
|
2722
|
-
/* @__PURE__ */
|
|
2927
|
+
/* @__PURE__ */ jsxs20("div", { className: "flex flex-col gap-6 items-center", children: [
|
|
2928
|
+
/* @__PURE__ */ jsxs20("div", { className: "flex flex-col gap-3 items-center", children: [
|
|
2929
|
+
error ? /* @__PURE__ */ jsxs20("div", { className: "flex items-center gap-2", children: [
|
|
2930
|
+
/* @__PURE__ */ jsx20(WarningIcon, { className: "h-3.5 w-3.5 shrink-0 text-agg-error" }),
|
|
2931
|
+
/* @__PURE__ */ jsx20("p", { className: "text-agg-sm leading-agg-5 text-agg-error", children: error })
|
|
2723
2932
|
] }) : null,
|
|
2724
|
-
/* @__PURE__ */
|
|
2933
|
+
/* @__PURE__ */ jsx20(
|
|
2725
2934
|
Button,
|
|
2726
2935
|
{
|
|
2727
2936
|
variant: "primary",
|
|
@@ -2732,7 +2941,7 @@ var ConnectOnchainModal = ({
|
|
|
2732
2941
|
}
|
|
2733
2942
|
)
|
|
2734
2943
|
] }),
|
|
2735
|
-
/* @__PURE__ */
|
|
2944
|
+
/* @__PURE__ */ jsx20(
|
|
2736
2945
|
Button,
|
|
2737
2946
|
{
|
|
2738
2947
|
variant: "tertiary",
|
|
@@ -2751,7 +2960,7 @@ var ConnectOnchainModal = ({
|
|
|
2751
2960
|
ConnectOnchainModal.displayName = "ConnectOnchainModal";
|
|
2752
2961
|
|
|
2753
2962
|
// src/onboarding/index.tsx
|
|
2754
|
-
import { Fragment as
|
|
2963
|
+
import { Fragment as Fragment9, jsx as jsx21, jsxs as jsxs21 } from "react/jsx-runtime";
|
|
2755
2964
|
var OnboardingModal = ({
|
|
2756
2965
|
open,
|
|
2757
2966
|
onOpenChange,
|
|
@@ -2764,7 +2973,7 @@ var OnboardingModal = ({
|
|
|
2764
2973
|
connectedKalshi = false
|
|
2765
2974
|
}) => {
|
|
2766
2975
|
var _a;
|
|
2767
|
-
const labels =
|
|
2976
|
+
const labels = useLabels19();
|
|
2768
2977
|
const [step, setStep] = useState9(ONBOARDING_STEPS.HOW_IT_WORKS);
|
|
2769
2978
|
const stepLabels = {
|
|
2770
2979
|
[ONBOARDING_STEPS.HOW_IT_WORKS]: labels.onboarding.modal.stepHowItWorks,
|
|
@@ -2776,56 +2985,56 @@ var OnboardingModal = ({
|
|
|
2776
2985
|
const [kalshiConnected, setKalshiConnected] = useState9(false);
|
|
2777
2986
|
const [onchainModalOpen, setOnchainModalOpen] = useState9(false);
|
|
2778
2987
|
const [onchainConnected, setOnchainConnected] = useState9(false);
|
|
2779
|
-
|
|
2988
|
+
useEffect6(() => {
|
|
2780
2989
|
if (open) {
|
|
2781
2990
|
setStep(ONBOARDING_STEPS.HOW_IT_WORKS);
|
|
2782
2991
|
setKalshiConnected(false);
|
|
2783
2992
|
setOnchainConnected(false);
|
|
2784
2993
|
}
|
|
2785
2994
|
}, [open]);
|
|
2786
|
-
const handleHowItWorksContinue =
|
|
2995
|
+
const handleHowItWorksContinue = useCallback5(() => {
|
|
2787
2996
|
setStep(ONBOARDING_STEPS.PROFILE_SETUP);
|
|
2788
2997
|
}, []);
|
|
2789
|
-
const handleProfileContinue =
|
|
2998
|
+
const handleProfileContinue = useCallback5(
|
|
2790
2999
|
(data) => {
|
|
2791
3000
|
onProfileSubmit == null ? void 0 : onProfileSubmit(data);
|
|
2792
3001
|
setStep(ONBOARDING_STEPS.CONNECT_ACCOUNTS);
|
|
2793
3002
|
},
|
|
2794
3003
|
[onProfileSubmit]
|
|
2795
3004
|
);
|
|
2796
|
-
const handleConnectContinue =
|
|
3005
|
+
const handleConnectContinue = useCallback5(() => {
|
|
2797
3006
|
onComplete == null ? void 0 : onComplete();
|
|
2798
3007
|
}, [onComplete]);
|
|
2799
|
-
const handleOpenOnchainModal =
|
|
3008
|
+
const handleOpenOnchainModal = useCallback5(() => {
|
|
2800
3009
|
setOnchainModalOpen(true);
|
|
2801
3010
|
}, []);
|
|
2802
|
-
const handleOnchainConnect =
|
|
3011
|
+
const handleOnchainConnect = useCallback5(() => __async(null, null, function* () {
|
|
2803
3012
|
yield onConnectOnchain == null ? void 0 : onConnectOnchain();
|
|
2804
3013
|
setOnchainConnected(true);
|
|
2805
3014
|
}), [onConnectOnchain]);
|
|
2806
|
-
const handleOpenKalshiModal =
|
|
3015
|
+
const handleOpenKalshiModal = useCallback5(() => {
|
|
2807
3016
|
setKalshiModalOpen(true);
|
|
2808
3017
|
}, []);
|
|
2809
|
-
const handleKalshiVerify =
|
|
3018
|
+
const handleKalshiVerify = useCallback5(
|
|
2810
3019
|
(credentials) => __async(null, null, function* () {
|
|
2811
3020
|
yield onConnectKalshi == null ? void 0 : onConnectKalshi(credentials);
|
|
2812
3021
|
setKalshiConnected(true);
|
|
2813
3022
|
}),
|
|
2814
3023
|
[onConnectKalshi]
|
|
2815
3024
|
);
|
|
2816
|
-
return /* @__PURE__ */
|
|
2817
|
-
/* @__PURE__ */
|
|
3025
|
+
return /* @__PURE__ */ jsxs21(Fragment9, { children: [
|
|
3026
|
+
/* @__PURE__ */ jsx21(Modal, { open, onOpenChange, children: /* @__PURE__ */ jsxs21(
|
|
2818
3027
|
Modal.Container,
|
|
2819
3028
|
{
|
|
2820
3029
|
maxWidth: "600px",
|
|
2821
3030
|
"aria-label": resolvedTitle,
|
|
2822
3031
|
classNames: { container: "!rounded-agg-lg" },
|
|
2823
3032
|
children: [
|
|
2824
|
-
/* @__PURE__ */
|
|
2825
|
-
/* @__PURE__ */
|
|
2826
|
-
step === ONBOARDING_STEPS.HOW_IT_WORKS && /* @__PURE__ */
|
|
2827
|
-
step === ONBOARDING_STEPS.PROFILE_SETUP && /* @__PURE__ */
|
|
2828
|
-
step === ONBOARDING_STEPS.CONNECT_ACCOUNTS && /* @__PURE__ */
|
|
3033
|
+
/* @__PURE__ */ jsx21(Dialog3.Title, { className: "sr-only", children: resolvedTitle }),
|
|
3034
|
+
/* @__PURE__ */ jsxs21(Modal.Body, { classNames: { root: "px-5 py-6 sm:px-10 sm:py-8" }, children: [
|
|
3035
|
+
step === ONBOARDING_STEPS.HOW_IT_WORKS && /* @__PURE__ */ jsx21(HowItWorksStep, { onContinue: handleHowItWorksContinue, icons: howItWorksIcons }),
|
|
3036
|
+
step === ONBOARDING_STEPS.PROFILE_SETUP && /* @__PURE__ */ jsx21(ProfileSetupStep, { onContinue: handleProfileContinue }),
|
|
3037
|
+
step === ONBOARDING_STEPS.CONNECT_ACCOUNTS && /* @__PURE__ */ jsx21(
|
|
2829
3038
|
ConnectAccountsStep,
|
|
2830
3039
|
{
|
|
2831
3040
|
onConnectOnchain: handleOpenOnchainModal,
|
|
@@ -2839,7 +3048,7 @@ var OnboardingModal = ({
|
|
|
2839
3048
|
]
|
|
2840
3049
|
}
|
|
2841
3050
|
) }),
|
|
2842
|
-
/* @__PURE__ */
|
|
3051
|
+
/* @__PURE__ */ jsx21(
|
|
2843
3052
|
ConnectOnchainModal,
|
|
2844
3053
|
{
|
|
2845
3054
|
open: onchainModalOpen,
|
|
@@ -2847,7 +3056,7 @@ var OnboardingModal = ({
|
|
|
2847
3056
|
onConnect: handleOnchainConnect
|
|
2848
3057
|
}
|
|
2849
3058
|
),
|
|
2850
|
-
/* @__PURE__ */
|
|
3059
|
+
/* @__PURE__ */ jsx21(
|
|
2851
3060
|
ConnectKalshiModal,
|
|
2852
3061
|
{
|
|
2853
3062
|
open: kalshiModalOpen,
|
|
@@ -2861,7 +3070,7 @@ OnboardingModal.displayName = "OnboardingModal";
|
|
|
2861
3070
|
|
|
2862
3071
|
// src/profile/index.tsx
|
|
2863
3072
|
import { Venue as Venue4 } from "@agg-build/sdk";
|
|
2864
|
-
import { useState as useState11, useEffect as
|
|
3073
|
+
import { useState as useState11, useEffect as useEffect8, useCallback as useCallback8, useMemo as useMemo2 } from "react";
|
|
2865
3074
|
import { useAggClient as useAggClient2, useAggAuthState as useAggAuthState2 } from "@agg-build/hooks";
|
|
2866
3075
|
|
|
2867
3076
|
// src/profile/profile-modal.constants.ts
|
|
@@ -2879,9 +3088,9 @@ var PROFILE_TAB_ITEMS = [
|
|
|
2879
3088
|
];
|
|
2880
3089
|
|
|
2881
3090
|
// src/profile/tabs/about-tab.tsx
|
|
2882
|
-
import { useCallback as
|
|
2883
|
-
import { useLabels as
|
|
2884
|
-
import { jsx as
|
|
3091
|
+
import { useCallback as useCallback6, useRef as useRef4 } from "react";
|
|
3092
|
+
import { useLabels as useLabels20 } from "@agg-build/hooks";
|
|
3093
|
+
import { jsx as jsx22, jsxs as jsxs22 } from "react/jsx-runtime";
|
|
2885
3094
|
var AboutTab = ({
|
|
2886
3095
|
avatarPreview,
|
|
2887
3096
|
onDeleteProfile: _onDeleteProfile,
|
|
@@ -2891,13 +3100,13 @@ var AboutTab = ({
|
|
|
2891
3100
|
draftAvatarPreview,
|
|
2892
3101
|
avatarError: _avatarError
|
|
2893
3102
|
}) => {
|
|
2894
|
-
const labels =
|
|
3103
|
+
const labels = useLabels20();
|
|
2895
3104
|
const fileInputRef = useRef4(null);
|
|
2896
|
-
const handleAvatarClick =
|
|
3105
|
+
const handleAvatarClick = useCallback6(() => {
|
|
2897
3106
|
var _a;
|
|
2898
3107
|
(_a = fileInputRef.current) == null ? void 0 : _a.click();
|
|
2899
3108
|
}, []);
|
|
2900
|
-
const handleFileChange =
|
|
3109
|
+
const handleFileChange = useCallback6(
|
|
2901
3110
|
(e) => {
|
|
2902
3111
|
var _a;
|
|
2903
3112
|
const file = (_a = e.target.files) == null ? void 0 : _a[0];
|
|
@@ -2913,9 +3122,9 @@ var AboutTab = ({
|
|
|
2913
3122
|
);
|
|
2914
3123
|
const resolvedPreview = draftAvatarPreview != null ? draftAvatarPreview : avatarPreview;
|
|
2915
3124
|
const hasAvatarPreview = Boolean(resolvedPreview);
|
|
2916
|
-
return /* @__PURE__ */
|
|
2917
|
-
/* @__PURE__ */
|
|
2918
|
-
/* @__PURE__ */
|
|
3125
|
+
return /* @__PURE__ */ jsxs22("div", { className: "agg-profile-about flex flex-col gap-8", children: [
|
|
3126
|
+
/* @__PURE__ */ jsxs22("div", { className: "agg-profile-avatar-section flex w-full flex-col items-stretch sm:items-start", children: [
|
|
3127
|
+
/* @__PURE__ */ jsxs22(
|
|
2919
3128
|
"button",
|
|
2920
3129
|
{
|
|
2921
3130
|
type: "button",
|
|
@@ -2932,13 +3141,13 @@ var AboutTab = ({
|
|
|
2932
3141
|
),
|
|
2933
3142
|
"aria-label": labels.onboarding.profileSetup.uploadProfilePictureAria,
|
|
2934
3143
|
children: [
|
|
2935
|
-
!hasAvatarPreview ? /* @__PURE__ */
|
|
3144
|
+
!hasAvatarPreview ? /* @__PURE__ */ jsx22(
|
|
2936
3145
|
"svg",
|
|
2937
3146
|
{
|
|
2938
3147
|
"aria-hidden": true,
|
|
2939
3148
|
viewBox: "0 0 80 80",
|
|
2940
3149
|
className: "pointer-events-none absolute inset-0 h-full w-full text-agg-separator group-hover:text-agg-muted-foreground",
|
|
2941
|
-
children: /* @__PURE__ */
|
|
3150
|
+
children: /* @__PURE__ */ jsx22(
|
|
2942
3151
|
"circle",
|
|
2943
3152
|
{
|
|
2944
3153
|
cx: "40",
|
|
@@ -2952,18 +3161,18 @@ var AboutTab = ({
|
|
|
2952
3161
|
)
|
|
2953
3162
|
}
|
|
2954
3163
|
) : null,
|
|
2955
|
-
resolvedPreview ? /* @__PURE__ */
|
|
3164
|
+
resolvedPreview ? /* @__PURE__ */ jsx22(
|
|
2956
3165
|
RemoteImage,
|
|
2957
3166
|
{
|
|
2958
3167
|
src: resolvedPreview,
|
|
2959
3168
|
alt: labels.onboarding.profileSetup.profilePreviewAlt,
|
|
2960
3169
|
className: "h-full w-full object-cover"
|
|
2961
3170
|
}
|
|
2962
|
-
) : /* @__PURE__ */
|
|
3171
|
+
) : /* @__PURE__ */ jsx22(Icon, { name: "profile", className: "h-7 w-7 text-agg-muted-foreground" })
|
|
2963
3172
|
]
|
|
2964
3173
|
}
|
|
2965
3174
|
),
|
|
2966
|
-
/* @__PURE__ */
|
|
3175
|
+
/* @__PURE__ */ jsx22(
|
|
2967
3176
|
"input",
|
|
2968
3177
|
{
|
|
2969
3178
|
ref: fileInputRef,
|
|
@@ -2975,8 +3184,8 @@ var AboutTab = ({
|
|
|
2975
3184
|
}
|
|
2976
3185
|
)
|
|
2977
3186
|
] }),
|
|
2978
|
-
/* @__PURE__ */
|
|
2979
|
-
/* @__PURE__ */
|
|
3187
|
+
/* @__PURE__ */ jsxs22("div", { className: "agg-form-section flex flex-col gap-2", children: [
|
|
3188
|
+
/* @__PURE__ */ jsx22(
|
|
2980
3189
|
"label",
|
|
2981
3190
|
{
|
|
2982
3191
|
htmlFor: "profile-username",
|
|
@@ -2984,7 +3193,7 @@ var AboutTab = ({
|
|
|
2984
3193
|
children: "Username"
|
|
2985
3194
|
}
|
|
2986
3195
|
),
|
|
2987
|
-
/* @__PURE__ */
|
|
3196
|
+
/* @__PURE__ */ jsx22(
|
|
2988
3197
|
"input",
|
|
2989
3198
|
{
|
|
2990
3199
|
id: "profile-username",
|
|
@@ -3011,11 +3220,11 @@ var AboutTab = ({
|
|
|
3011
3220
|
AboutTab.displayName = "AboutTab";
|
|
3012
3221
|
|
|
3013
3222
|
// src/profile/tabs/accounts-wallets-tab.tsx
|
|
3014
|
-
import { useCallback as
|
|
3223
|
+
import { useCallback as useCallback7, useEffect as useEffect7, useState as useState10 } from "react";
|
|
3015
3224
|
import { useAggClient, useDepositAddresses as useDepositAddresses2 } from "@agg-build/hooks";
|
|
3016
|
-
import { jsx as
|
|
3017
|
-
var SectionTitle = ({ children }) => /* @__PURE__ */
|
|
3018
|
-
var AccountRow = ({ children, className }) => /* @__PURE__ */
|
|
3225
|
+
import { jsx as jsx23, jsxs as jsxs23 } from "react/jsx-runtime";
|
|
3226
|
+
var SectionTitle = ({ children }) => /* @__PURE__ */ jsx23("h3", { className: "text-agg-sm font-agg-bold leading-agg-5 text-agg-foreground", children });
|
|
3227
|
+
var AccountRow = ({ children, className }) => /* @__PURE__ */ jsx23(
|
|
3019
3228
|
"div",
|
|
3020
3229
|
{
|
|
3021
3230
|
className: cn(
|
|
@@ -3027,7 +3236,7 @@ var AccountRow = ({ children, className }) => /* @__PURE__ */ jsx24(
|
|
|
3027
3236
|
children
|
|
3028
3237
|
}
|
|
3029
3238
|
);
|
|
3030
|
-
var ConnectTextButton = ({ onClick }) => /* @__PURE__ */
|
|
3239
|
+
var ConnectTextButton = ({ onClick }) => /* @__PURE__ */ jsx23(
|
|
3031
3240
|
"button",
|
|
3032
3241
|
{
|
|
3033
3242
|
type: "button",
|
|
@@ -3036,7 +3245,7 @@ var ConnectTextButton = ({ onClick }) => /* @__PURE__ */ jsx24(
|
|
|
3036
3245
|
children: "Connect"
|
|
3037
3246
|
}
|
|
3038
3247
|
);
|
|
3039
|
-
var DisconnectTextButton = ({ onClick }) => /* @__PURE__ */
|
|
3248
|
+
var DisconnectTextButton = ({ onClick }) => /* @__PURE__ */ jsx23(
|
|
3040
3249
|
"button",
|
|
3041
3250
|
{
|
|
3042
3251
|
type: "button",
|
|
@@ -3054,7 +3263,7 @@ var VerifyIdentityButton = ({ onError }) => {
|
|
|
3054
3263
|
enabled: needsDepositAddress,
|
|
3055
3264
|
poll: true
|
|
3056
3265
|
});
|
|
3057
|
-
|
|
3266
|
+
useEffect7(() => {
|
|
3058
3267
|
if (!isInitiating || !isReady) return;
|
|
3059
3268
|
const redirectUri = window.location.href;
|
|
3060
3269
|
client.initiateKyc("kalshi", redirectUri).then((res) => {
|
|
@@ -3068,25 +3277,25 @@ var VerifyIdentityButton = ({ onError }) => {
|
|
|
3068
3277
|
setNeedsDepositAddress(false);
|
|
3069
3278
|
});
|
|
3070
3279
|
}, [isReady, isInitiating, client, onError]);
|
|
3071
|
-
|
|
3280
|
+
useEffect7(() => {
|
|
3072
3281
|
if (isTimedOut && isInitiating) {
|
|
3073
3282
|
setIsInitiating(false);
|
|
3074
3283
|
setNeedsDepositAddress(false);
|
|
3075
3284
|
onError == null ? void 0 : onError(new Error("Deposit address provisioning timed out"));
|
|
3076
3285
|
}
|
|
3077
3286
|
}, [isTimedOut, isInitiating, onError]);
|
|
3078
|
-
const handleClick =
|
|
3287
|
+
const handleClick = useCallback7(() => {
|
|
3079
3288
|
setIsInitiating(true);
|
|
3080
3289
|
setNeedsDepositAddress(true);
|
|
3081
3290
|
}, []);
|
|
3082
|
-
return /* @__PURE__ */
|
|
3291
|
+
return /* @__PURE__ */ jsx23(
|
|
3083
3292
|
"button",
|
|
3084
3293
|
{
|
|
3085
3294
|
type: "button",
|
|
3086
3295
|
disabled: isInitiating,
|
|
3087
3296
|
onClick: handleClick,
|
|
3088
3297
|
className: "shrink-0 cursor-pointer text-agg-sm font-agg-bold leading-agg-5 text-agg-primary whitespace-nowrap disabled:cursor-not-allowed disabled:opacity-60",
|
|
3089
|
-
children: isInitiating ? /* @__PURE__ */
|
|
3298
|
+
children: isInitiating ? /* @__PURE__ */ jsx23("span", { className: "inline-block h-4 w-4 animate-spin rounded-full border-2 border-current border-t-transparent" }) : "Verify Identity"
|
|
3090
3299
|
}
|
|
3091
3300
|
);
|
|
3092
3301
|
};
|
|
@@ -3094,26 +3303,26 @@ var TradingAccessSection = ({
|
|
|
3094
3303
|
venueAccounts,
|
|
3095
3304
|
onKycError
|
|
3096
3305
|
}) => {
|
|
3097
|
-
return /* @__PURE__ */
|
|
3098
|
-
/* @__PURE__ */
|
|
3099
|
-
/* @__PURE__ */
|
|
3306
|
+
return /* @__PURE__ */ jsxs23("div", { className: "agg-trading-access-section flex flex-col gap-3", children: [
|
|
3307
|
+
/* @__PURE__ */ jsx23(SectionTitle, { children: "Trading access" }),
|
|
3308
|
+
/* @__PURE__ */ jsx23("div", { className: "flex flex-col gap-2", children: TRADING_ACCESS_VENUES.map((venue) => {
|
|
3100
3309
|
var _a;
|
|
3101
3310
|
const venueAccount = venueAccounts == null ? void 0 : venueAccounts.find((va) => va.venue === venue);
|
|
3102
3311
|
const isKalshi = venue === "kalshi";
|
|
3103
3312
|
const isVerified = (venueAccount == null ? void 0 : venueAccount.kycStatus) === "verified";
|
|
3104
3313
|
const displayName = (_a = venueLogoLabels[venue]) != null ? _a : venue;
|
|
3105
|
-
return /* @__PURE__ */
|
|
3106
|
-
/* @__PURE__ */
|
|
3107
|
-
/* @__PURE__ */
|
|
3108
|
-
/* @__PURE__ */
|
|
3314
|
+
return /* @__PURE__ */ jsxs23(AccountRow, { children: [
|
|
3315
|
+
/* @__PURE__ */ jsxs23("div", { className: "flex items-center gap-3", children: [
|
|
3316
|
+
/* @__PURE__ */ jsx23(VenueLogo, { venue, size: "small" }),
|
|
3317
|
+
/* @__PURE__ */ jsx23("span", { className: "text-agg-base font-agg-normal leading-6 text-agg-foreground whitespace-nowrap", children: displayName })
|
|
3109
3318
|
] }),
|
|
3110
|
-
isKalshi && !isVerified ? /* @__PURE__ */
|
|
3111
|
-
/* @__PURE__ */
|
|
3112
|
-
/* @__PURE__ */
|
|
3113
|
-
] }) : isKalshi && isVerified ? /* @__PURE__ */
|
|
3114
|
-
/* @__PURE__ */
|
|
3115
|
-
/* @__PURE__ */
|
|
3116
|
-
/* @__PURE__ */
|
|
3319
|
+
isKalshi && !isVerified ? /* @__PURE__ */ jsxs23("div", { className: "flex items-center gap-4", children: [
|
|
3320
|
+
/* @__PURE__ */ jsx23("span", { className: "text-agg-sm font-agg-normal leading-agg-5 text-agg-muted-foreground whitespace-nowrap", children: "KYC required" }),
|
|
3321
|
+
/* @__PURE__ */ jsx23(VerifyIdentityButton, { onError: onKycError })
|
|
3322
|
+
] }) : isKalshi && isVerified ? /* @__PURE__ */ jsxs23("div", { className: "flex items-center gap-4", children: [
|
|
3323
|
+
/* @__PURE__ */ jsx23("span", { className: "text-agg-sm font-agg-normal leading-agg-5 text-agg-muted-foreground whitespace-nowrap", children: "Verified" }),
|
|
3324
|
+
/* @__PURE__ */ jsxs23("div", { className: "flex items-center gap-2", children: [
|
|
3325
|
+
/* @__PURE__ */ jsx23(
|
|
3117
3326
|
Icon,
|
|
3118
3327
|
{
|
|
3119
3328
|
name: "check-badge",
|
|
@@ -3121,11 +3330,11 @@ var TradingAccessSection = ({
|
|
|
3121
3330
|
color: "var(--agg-color-primary, #536dfe)"
|
|
3122
3331
|
}
|
|
3123
3332
|
),
|
|
3124
|
-
/* @__PURE__ */
|
|
3333
|
+
/* @__PURE__ */ jsx23("span", { className: "text-agg-sm font-agg-normal leading-agg-5 text-agg-foreground whitespace-nowrap", children: "Available" })
|
|
3125
3334
|
] })
|
|
3126
|
-
] }) : /* @__PURE__ */
|
|
3127
|
-
/* @__PURE__ */
|
|
3128
|
-
/* @__PURE__ */
|
|
3335
|
+
] }) : /* @__PURE__ */ jsxs23("div", { className: "flex items-center gap-2", children: [
|
|
3336
|
+
/* @__PURE__ */ jsx23(Icon, { name: "check-badge", size: "small", color: "var(--agg-color-primary, #536dfe)" }),
|
|
3337
|
+
/* @__PURE__ */ jsx23("span", { className: "text-agg-sm font-agg-normal leading-agg-5 text-agg-foreground whitespace-nowrap", children: "Available" })
|
|
3129
3338
|
] })
|
|
3130
3339
|
] }, venue);
|
|
3131
3340
|
}) })
|
|
@@ -3153,37 +3362,37 @@ var AccountsWalletsTab = ({
|
|
|
3153
3362
|
const twitter = socialAccounts == null ? void 0 : socialAccounts.twitter;
|
|
3154
3363
|
const google = socialAccounts == null ? void 0 : socialAccounts.google;
|
|
3155
3364
|
const apple = socialAccounts == null ? void 0 : socialAccounts.apple;
|
|
3156
|
-
return /* @__PURE__ */
|
|
3157
|
-
/* @__PURE__ */
|
|
3158
|
-
/* @__PURE__ */
|
|
3159
|
-
/* @__PURE__ */
|
|
3160
|
-
/* @__PURE__ */
|
|
3161
|
-
/* @__PURE__ */
|
|
3162
|
-
/* @__PURE__ */
|
|
3163
|
-
/* @__PURE__ */
|
|
3164
|
-
/* @__PURE__ */
|
|
3365
|
+
return /* @__PURE__ */ jsxs23("div", { className: "agg-accounts-wallets-tab flex flex-col gap-8", children: [
|
|
3366
|
+
/* @__PURE__ */ jsx23(TradingAccessSection, { venueAccounts, onKycError }),
|
|
3367
|
+
/* @__PURE__ */ jsxs23("div", { className: "agg-social-accounts-section flex flex-col gap-3", children: [
|
|
3368
|
+
/* @__PURE__ */ jsx23(SectionTitle, { children: "Social Accounts" }),
|
|
3369
|
+
/* @__PURE__ */ jsxs23("div", { className: "agg-social-accounts-list flex flex-col gap-2", children: [
|
|
3370
|
+
/* @__PURE__ */ jsxs23(AccountRow, { className: "agg-social-account-row", children: [
|
|
3371
|
+
/* @__PURE__ */ jsxs23("div", { className: "flex items-center gap-3", children: [
|
|
3372
|
+
/* @__PURE__ */ jsx23("span", { className: "flex h-5 w-5 shrink-0 items-center justify-center text-agg-foreground", children: /* @__PURE__ */ jsx23(Icon, { name: "google", size: "small", color: "currentColor" }) }),
|
|
3373
|
+
/* @__PURE__ */ jsx23("span", { className: "text-agg-base font-agg-normal leading-6 text-agg-foreground whitespace-nowrap", children: "Google" })
|
|
3165
3374
|
] }),
|
|
3166
|
-
(google == null ? void 0 : google.connected) ? /* @__PURE__ */
|
|
3375
|
+
(google == null ? void 0 : google.connected) ? /* @__PURE__ */ jsx23(DisconnectTextButton, { onClick: onDisconnectGoogle }) : /* @__PURE__ */ jsx23(ConnectTextButton, { onClick: onConnectGoogle })
|
|
3167
3376
|
] }),
|
|
3168
|
-
/* @__PURE__ */
|
|
3169
|
-
/* @__PURE__ */
|
|
3170
|
-
/* @__PURE__ */
|
|
3171
|
-
/* @__PURE__ */
|
|
3377
|
+
/* @__PURE__ */ jsxs23(AccountRow, { className: "agg-social-account-row", children: [
|
|
3378
|
+
/* @__PURE__ */ jsxs23("div", { className: "flex items-center gap-3", children: [
|
|
3379
|
+
/* @__PURE__ */ jsx23("span", { className: "flex h-5 w-5 shrink-0 items-center justify-center text-agg-foreground", children: /* @__PURE__ */ jsx23(Icon, { name: "apple", size: "small", color: "currentColor" }) }),
|
|
3380
|
+
/* @__PURE__ */ jsx23("span", { className: "text-agg-base font-agg-normal leading-6 text-agg-foreground whitespace-nowrap", children: "Apple" })
|
|
3172
3381
|
] }),
|
|
3173
|
-
(apple == null ? void 0 : apple.connected) ? /* @__PURE__ */
|
|
3382
|
+
(apple == null ? void 0 : apple.connected) ? /* @__PURE__ */ jsx23(DisconnectTextButton, { onClick: onDisconnectApple }) : /* @__PURE__ */ jsx23(ConnectTextButton, { onClick: onConnectApple })
|
|
3174
3383
|
] }),
|
|
3175
|
-
/* @__PURE__ */
|
|
3176
|
-
/* @__PURE__ */
|
|
3177
|
-
/* @__PURE__ */
|
|
3178
|
-
/* @__PURE__ */
|
|
3384
|
+
/* @__PURE__ */ jsxs23(AccountRow, { className: "agg-social-account-row", children: [
|
|
3385
|
+
/* @__PURE__ */ jsxs23("div", { className: "flex items-center gap-3", children: [
|
|
3386
|
+
/* @__PURE__ */ jsx23("span", { className: "flex h-5 w-5 shrink-0 items-center justify-center text-agg-foreground", children: /* @__PURE__ */ jsx23(Icon, { name: "twitter", size: "small", color: "currentColor" }) }),
|
|
3387
|
+
/* @__PURE__ */ jsx23("span", { className: "text-agg-base font-agg-normal leading-6 text-agg-foreground whitespace-nowrap", children: "X (Twitter)" })
|
|
3179
3388
|
] }),
|
|
3180
|
-
(twitter == null ? void 0 : twitter.connected) ? /* @__PURE__ */
|
|
3389
|
+
(twitter == null ? void 0 : twitter.connected) ? /* @__PURE__ */ jsx23(DisconnectTextButton, { onClick: onDisconnectTwitter }) : /* @__PURE__ */ jsx23(ConnectTextButton, { onClick: onConnectTwitter })
|
|
3181
3390
|
] })
|
|
3182
3391
|
] })
|
|
3183
3392
|
] }),
|
|
3184
|
-
/* @__PURE__ */
|
|
3185
|
-
/* @__PURE__ */
|
|
3186
|
-
/* @__PURE__ */
|
|
3393
|
+
/* @__PURE__ */ jsxs23("div", { className: "flex flex-col gap-3", children: [
|
|
3394
|
+
/* @__PURE__ */ jsx23(SectionTitle, { children: "Email Address" }),
|
|
3395
|
+
/* @__PURE__ */ jsxs23(
|
|
3187
3396
|
"button",
|
|
3188
3397
|
{
|
|
3189
3398
|
type: "button",
|
|
@@ -3195,11 +3404,11 @@ var AccountsWalletsTab = ({
|
|
|
3195
3404
|
"cursor-pointer hover:bg-agg-secondary-hover"
|
|
3196
3405
|
),
|
|
3197
3406
|
children: [
|
|
3198
|
-
/* @__PURE__ */
|
|
3199
|
-
/* @__PURE__ */
|
|
3200
|
-
/* @__PURE__ */
|
|
3407
|
+
/* @__PURE__ */ jsxs23("div", { className: "flex items-center gap-3", children: [
|
|
3408
|
+
/* @__PURE__ */ jsx23("span", { className: "flex h-5 w-5 shrink-0 items-center justify-center text-agg-foreground", children: /* @__PURE__ */ jsx23(Icon, { name: "email", size: "small", color: "currentColor" }) }),
|
|
3409
|
+
/* @__PURE__ */ jsx23("span", { className: "text-agg-base font-agg-normal leading-6 text-agg-foreground whitespace-nowrap", children: email != null ? email : "Connect email" })
|
|
3201
3410
|
] }),
|
|
3202
|
-
/* @__PURE__ */
|
|
3411
|
+
/* @__PURE__ */ jsx23(Icon, { name: "chevron-right", size: "small", color: "currentColor" })
|
|
3203
3412
|
]
|
|
3204
3413
|
}
|
|
3205
3414
|
)
|
|
@@ -3209,7 +3418,7 @@ var AccountsWalletsTab = ({
|
|
|
3209
3418
|
AccountsWalletsTab.displayName = "AccountsWalletsTab";
|
|
3210
3419
|
|
|
3211
3420
|
// src/profile/index.tsx
|
|
3212
|
-
import { jsx as
|
|
3421
|
+
import { jsx as jsx24, jsxs as jsxs24 } from "react/jsx-runtime";
|
|
3213
3422
|
var EVM_WALLET_VENUES = [Venue4.polymarket, Venue4.predict, Venue4.opinion];
|
|
3214
3423
|
var ProfileModal = ({
|
|
3215
3424
|
open,
|
|
@@ -3247,11 +3456,11 @@ var ProfileModal = ({
|
|
|
3247
3456
|
const [draftAvatarPreview, setDraftAvatarPreview] = useState11();
|
|
3248
3457
|
const [isSaving, setIsSaving] = useState11(false);
|
|
3249
3458
|
const [avatarTypeError, setAvatarTypeError] = useState11(null);
|
|
3250
|
-
|
|
3459
|
+
useEffect8(() => {
|
|
3251
3460
|
var _a2;
|
|
3252
3461
|
setDraftUsername((_a2 = username != null ? username : user == null ? void 0 : user.username) != null ? _a2 : "");
|
|
3253
3462
|
}, [username, user == null ? void 0 : user.username]);
|
|
3254
|
-
const handleOpenChange =
|
|
3463
|
+
const handleOpenChange = useCallback8(
|
|
3255
3464
|
(isOpen) => {
|
|
3256
3465
|
var _a2;
|
|
3257
3466
|
if (!isOpen) {
|
|
@@ -3275,7 +3484,7 @@ var ProfileModal = ({
|
|
|
3275
3484
|
setDraftAvatarPreview
|
|
3276
3485
|
]
|
|
3277
3486
|
);
|
|
3278
|
-
const handleDraftAvatarChange =
|
|
3487
|
+
const handleDraftAvatarChange = useCallback8(
|
|
3279
3488
|
(file, preview) => {
|
|
3280
3489
|
const ACCEPTED_AVATAR_TYPES = ["image/jpeg", "image/png", "image/gif", "image/webp"];
|
|
3281
3490
|
if (file && !ACCEPTED_AVATAR_TYPES.includes(file.type)) {
|
|
@@ -3290,7 +3499,7 @@ var ProfileModal = ({
|
|
|
3290
3499
|
);
|
|
3291
3500
|
const originalUsername = (_b = username != null ? username : user == null ? void 0 : user.username) != null ? _b : "";
|
|
3292
3501
|
const hasChanges = draftUsername !== originalUsername || draftAvatarFile !== void 0;
|
|
3293
|
-
const handleSave =
|
|
3502
|
+
const handleSave = useCallback8(() => __async(null, null, function* () {
|
|
3294
3503
|
var _a2, _b2;
|
|
3295
3504
|
setIsSaving(true);
|
|
3296
3505
|
try {
|
|
@@ -3335,7 +3544,7 @@ var ProfileModal = ({
|
|
|
3335
3544
|
onSave,
|
|
3336
3545
|
originalUsername
|
|
3337
3546
|
]);
|
|
3338
|
-
const handleCancel =
|
|
3547
|
+
const handleCancel = useCallback8(() => {
|
|
3339
3548
|
handleOpenChange(false);
|
|
3340
3549
|
}, [handleOpenChange]);
|
|
3341
3550
|
const isAccountConnected = (providers) => {
|
|
@@ -3379,7 +3588,7 @@ var ProfileModal = ({
|
|
|
3379
3588
|
if (typeof window === "undefined") return;
|
|
3380
3589
|
((_a2 = window.top) != null ? _a2 : window).location.assign(url);
|
|
3381
3590
|
};
|
|
3382
|
-
const handleConnectTwitter =
|
|
3591
|
+
const handleConnectTwitter = useCallback8(() => __async(null, null, function* () {
|
|
3383
3592
|
const result = yield startAuth({
|
|
3384
3593
|
provider: "twitter",
|
|
3385
3594
|
redirectUrl: resolveRedirectUrl()
|
|
@@ -3389,7 +3598,7 @@ var ProfileModal = ({
|
|
|
3389
3598
|
navigateTopWindow(result.url);
|
|
3390
3599
|
}
|
|
3391
3600
|
}), [onConnectTwitter, startAuth]);
|
|
3392
|
-
const handleConnectGoogle =
|
|
3601
|
+
const handleConnectGoogle = useCallback8(() => __async(null, null, function* () {
|
|
3393
3602
|
const result = yield startAuth({
|
|
3394
3603
|
provider: "google",
|
|
3395
3604
|
redirectUrl: resolveRedirectUrl()
|
|
@@ -3399,7 +3608,7 @@ var ProfileModal = ({
|
|
|
3399
3608
|
navigateTopWindow(result.url);
|
|
3400
3609
|
}
|
|
3401
3610
|
}), [onConnectGoogle, startAuth]);
|
|
3402
|
-
const handleConnectApple =
|
|
3611
|
+
const handleConnectApple = useCallback8(() => __async(null, null, function* () {
|
|
3403
3612
|
const result = yield startAuth({
|
|
3404
3613
|
provider: "apple",
|
|
3405
3614
|
redirectUrl: resolveRedirectUrl()
|
|
@@ -3409,22 +3618,22 @@ var ProfileModal = ({
|
|
|
3409
3618
|
navigateTopWindow(result.url);
|
|
3410
3619
|
}
|
|
3411
3620
|
}), [onConnectApple, startAuth]);
|
|
3412
|
-
const handleDisconnectTwitter =
|
|
3621
|
+
const handleDisconnectTwitter = useCallback8(() => __async(null, null, function* () {
|
|
3413
3622
|
yield client.disconnectAccount("twitter");
|
|
3414
3623
|
yield client.getCurrentUser();
|
|
3415
3624
|
onDisconnectTwitter == null ? void 0 : onDisconnectTwitter();
|
|
3416
3625
|
}), [client, onDisconnectTwitter]);
|
|
3417
|
-
const handleDisconnectGoogle =
|
|
3626
|
+
const handleDisconnectGoogle = useCallback8(() => __async(null, null, function* () {
|
|
3418
3627
|
yield client.disconnectAccount("google");
|
|
3419
3628
|
yield client.getCurrentUser();
|
|
3420
3629
|
onDisconnectGoogle == null ? void 0 : onDisconnectGoogle();
|
|
3421
3630
|
}), [client, onDisconnectGoogle]);
|
|
3422
|
-
const handleDisconnectApple =
|
|
3631
|
+
const handleDisconnectApple = useCallback8(() => __async(null, null, function* () {
|
|
3423
3632
|
yield client.disconnectAccount("apple");
|
|
3424
3633
|
yield client.getCurrentUser();
|
|
3425
3634
|
onDisconnectApple == null ? void 0 : onDisconnectApple();
|
|
3426
3635
|
}), [client, onDisconnectApple]);
|
|
3427
|
-
const handleConnectEmail =
|
|
3636
|
+
const handleConnectEmail = useCallback8(() => __async(null, null, function* () {
|
|
3428
3637
|
var _a2;
|
|
3429
3638
|
const typedEmail = typeof window !== "undefined" ? (_a2 = window.prompt("Enter your email to receive a magic link")) == null ? void 0 : _a2.trim() : void 0;
|
|
3430
3639
|
if (!typedEmail) return;
|
|
@@ -3435,7 +3644,7 @@ var ProfileModal = ({
|
|
|
3435
3644
|
});
|
|
3436
3645
|
onConnectEmail == null ? void 0 : onConnectEmail();
|
|
3437
3646
|
}), [onConnectEmail, startAuth]);
|
|
3438
|
-
const handleDisconnectWallet =
|
|
3647
|
+
const handleDisconnectWallet = useCallback8(
|
|
3439
3648
|
(wallet) => __async(null, null, function* () {
|
|
3440
3649
|
const normalizedChain = wallet.chain.toLowerCase();
|
|
3441
3650
|
const provider = normalizedChain === "solana" || normalizedChain === "svm" ? "solana_wallet" : "wallet";
|
|
@@ -3445,7 +3654,7 @@ var ProfileModal = ({
|
|
|
3445
3654
|
}),
|
|
3446
3655
|
[client, onDisconnectWallet]
|
|
3447
3656
|
);
|
|
3448
|
-
const providerActionMap =
|
|
3657
|
+
const providerActionMap = useMemo2(
|
|
3449
3658
|
() => ({
|
|
3450
3659
|
twitter: {
|
|
3451
3660
|
connect: () => {
|
|
@@ -3487,20 +3696,19 @@ var ProfileModal = ({
|
|
|
3487
3696
|
handleDisconnectTwitter
|
|
3488
3697
|
]
|
|
3489
3698
|
);
|
|
3490
|
-
const
|
|
3491
|
-
if (address.length <= 12) return address;
|
|
3492
|
-
return `${address.slice(0, 6)}...${address.slice(-4)}`;
|
|
3493
|
-
};
|
|
3494
|
-
const resolvedWallets = useMemo3(() => {
|
|
3699
|
+
const resolvedWallets = useMemo2(() => {
|
|
3495
3700
|
var _a2, _b2;
|
|
3496
3701
|
if (wallets) return wallets;
|
|
3497
|
-
return (_b2 = (_a2 = user == null ? void 0 : user.wallets) == null ? void 0 : _a2.map((wallet) =>
|
|
3498
|
-
|
|
3499
|
-
|
|
3500
|
-
|
|
3501
|
-
|
|
3702
|
+
return (_b2 = (_a2 = user == null ? void 0 : user.wallets) == null ? void 0 : _a2.map((wallet) => {
|
|
3703
|
+
var _a3;
|
|
3704
|
+
return {
|
|
3705
|
+
chain: wallet.chain,
|
|
3706
|
+
address: wallet.address,
|
|
3707
|
+
displayAddress: (_a3 = shortenAddress(wallet.address, { chain: wallet.chain })) != null ? _a3 : wallet.address
|
|
3708
|
+
};
|
|
3709
|
+
})) != null ? _b2 : [];
|
|
3502
3710
|
}, [user == null ? void 0 : user.wallets, wallets]);
|
|
3503
|
-
const resolvedExchanges =
|
|
3711
|
+
const resolvedExchanges = useMemo2(() => {
|
|
3504
3712
|
var _a2, _b2;
|
|
3505
3713
|
if (exchanges !== void 0) return exchanges;
|
|
3506
3714
|
const walletAccount = (_a2 = user == null ? void 0 : user.accounts) == null ? void 0 : _a2.find(
|
|
@@ -3511,7 +3719,7 @@ var ProfileModal = ({
|
|
|
3511
3719
|
const displayAddress = (_b2 = shortenAddress(addr)) != null ? _b2 : addr;
|
|
3512
3720
|
return EVM_WALLET_VENUES.map((venue) => ({ venue, displayAddress, verified: false }));
|
|
3513
3721
|
}, [exchanges, user == null ? void 0 : user.accounts]);
|
|
3514
|
-
const handleDisconnectExchange =
|
|
3722
|
+
const handleDisconnectExchange = useCallback8(
|
|
3515
3723
|
(venue) => __async(null, null, function* () {
|
|
3516
3724
|
if (exchanges !== void 0) {
|
|
3517
3725
|
onDisconnectExchangeProp == null ? void 0 : onDisconnectExchangeProp(venue);
|
|
@@ -3523,7 +3731,7 @@ var ProfileModal = ({
|
|
|
3523
3731
|
}),
|
|
3524
3732
|
[client, exchanges, onDisconnectExchangeProp]
|
|
3525
3733
|
);
|
|
3526
|
-
return /* @__PURE__ */
|
|
3734
|
+
return /* @__PURE__ */ jsx24(Modal, { open, onOpenChange: handleOpenChange, children: /* @__PURE__ */ jsxs24(
|
|
3527
3735
|
Modal.Container,
|
|
3528
3736
|
{
|
|
3529
3737
|
maxWidth: "800px",
|
|
@@ -3532,12 +3740,12 @@ var ProfileModal = ({
|
|
|
3532
3740
|
container: cn("agg-profile-modal", "min-h-[37.5rem]")
|
|
3533
3741
|
},
|
|
3534
3742
|
children: [
|
|
3535
|
-
/* @__PURE__ */
|
|
3536
|
-
/* @__PURE__ */
|
|
3537
|
-
/* @__PURE__ */
|
|
3538
|
-
/* @__PURE__ */
|
|
3743
|
+
/* @__PURE__ */ jsx24(Modal.Header, { title: "Edit Profile", classNames: { root: "agg-profile-modal-header" } }),
|
|
3744
|
+
/* @__PURE__ */ jsx24(Modal.Body, { classNames: { root: cn("agg-profile-modal-body", "overflow-x-visible") }, children: /* @__PURE__ */ jsxs24("div", { className: "agg-profile-layout flex flex-col sm:flex-row sm:gap-10", children: [
|
|
3745
|
+
/* @__PURE__ */ jsxs24("div", { className: "shrink-0", children: [
|
|
3746
|
+
/* @__PURE__ */ jsx24("div", { className: "agg-profile-tabs mb-6 flex gap-2 sm:hidden", children: PROFILE_TAB_ITEMS.map((tab) => {
|
|
3539
3747
|
const isActive = activeTab === tab.value;
|
|
3540
|
-
return /* @__PURE__ */
|
|
3748
|
+
return /* @__PURE__ */ jsxs24(
|
|
3541
3749
|
"button",
|
|
3542
3750
|
{
|
|
3543
3751
|
type: "button",
|
|
@@ -3551,14 +3759,14 @@ var ProfileModal = ({
|
|
|
3551
3759
|
isActive ? "font-agg-normal text-agg-foreground bg-agg-secondary-hover border-agg-primary" : "font-agg-normal text-agg-foreground border-transparent"
|
|
3552
3760
|
),
|
|
3553
3761
|
children: [
|
|
3554
|
-
/* @__PURE__ */
|
|
3555
|
-
/* @__PURE__ */
|
|
3762
|
+
/* @__PURE__ */ jsx24(Icon, { name: tab.icon, size: "small", color: "currentColor" }),
|
|
3763
|
+
/* @__PURE__ */ jsx24("span", { className: "whitespace-nowrap", children: tab.label })
|
|
3556
3764
|
]
|
|
3557
3765
|
},
|
|
3558
3766
|
tab.value
|
|
3559
3767
|
);
|
|
3560
3768
|
}) }),
|
|
3561
|
-
/* @__PURE__ */
|
|
3769
|
+
/* @__PURE__ */ jsx24(
|
|
3562
3770
|
"nav",
|
|
3563
3771
|
{
|
|
3564
3772
|
className: cn(
|
|
@@ -3574,7 +3782,7 @@ var ProfileModal = ({
|
|
|
3574
3782
|
"aria-label": "Profile sections",
|
|
3575
3783
|
children: PROFILE_TAB_ITEMS.map((tab) => {
|
|
3576
3784
|
const isActive = activeTab === tab.value;
|
|
3577
|
-
return /* @__PURE__ */
|
|
3785
|
+
return /* @__PURE__ */ jsxs24(
|
|
3578
3786
|
"button",
|
|
3579
3787
|
{
|
|
3580
3788
|
type: "button",
|
|
@@ -3590,9 +3798,9 @@ var ProfileModal = ({
|
|
|
3590
3798
|
isActive ? "font-agg-normal text-agg-foreground bg-agg-secondary-hover" : "font-agg-normal text-agg-foreground"
|
|
3591
3799
|
),
|
|
3592
3800
|
children: [
|
|
3593
|
-
isActive ? /* @__PURE__ */
|
|
3594
|
-
/* @__PURE__ */
|
|
3595
|
-
/* @__PURE__ */
|
|
3801
|
+
isActive ? /* @__PURE__ */ jsx24("div", { className: "absolute left-0 top-0 bottom-0 w-1 bg-agg-primary" }) : null,
|
|
3802
|
+
/* @__PURE__ */ jsx24(Icon, { name: tab.icon, size: "small", color: "currentColor" }),
|
|
3803
|
+
/* @__PURE__ */ jsx24("span", { className: "shrink-0 whitespace-nowrap", children: tab.label })
|
|
3596
3804
|
]
|
|
3597
3805
|
},
|
|
3598
3806
|
tab.value
|
|
@@ -3601,8 +3809,8 @@ var ProfileModal = ({
|
|
|
3601
3809
|
}
|
|
3602
3810
|
)
|
|
3603
3811
|
] }),
|
|
3604
|
-
/* @__PURE__ */
|
|
3605
|
-
activeTab === PROFILE_TAB_KEYS.ABOUT ? /* @__PURE__ */
|
|
3812
|
+
/* @__PURE__ */ jsxs24("div", { className: "agg-profile-content min-w-0 flex-1", children: [
|
|
3813
|
+
activeTab === PROFILE_TAB_KEYS.ABOUT ? /* @__PURE__ */ jsx24(
|
|
3606
3814
|
AboutTab,
|
|
3607
3815
|
{
|
|
3608
3816
|
username: username != null ? username : user == null ? void 0 : user.username,
|
|
@@ -3616,7 +3824,7 @@ var ProfileModal = ({
|
|
|
3616
3824
|
avatarError: avatarTypeError
|
|
3617
3825
|
}
|
|
3618
3826
|
) : null,
|
|
3619
|
-
activeTab === PROFILE_TAB_KEYS.ACCOUNTS_WALLETS ? /* @__PURE__ */
|
|
3827
|
+
activeTab === PROFILE_TAB_KEYS.ACCOUNTS_WALLETS ? /* @__PURE__ */ jsx24(
|
|
3620
3828
|
AccountsWalletsTab,
|
|
3621
3829
|
{
|
|
3622
3830
|
exchanges: resolvedExchanges,
|
|
@@ -3646,9 +3854,9 @@ var ProfileModal = ({
|
|
|
3646
3854
|
) : null
|
|
3647
3855
|
] })
|
|
3648
3856
|
] }) }),
|
|
3649
|
-
/* @__PURE__ */
|
|
3650
|
-
/* @__PURE__ */
|
|
3651
|
-
/* @__PURE__ */
|
|
3857
|
+
/* @__PURE__ */ jsxs24(Modal.Footer, { classNames: { root: "agg-profile-modal-footer" }, children: [
|
|
3858
|
+
/* @__PURE__ */ jsx24(Button, { variant: "secondary", size: "large", onClick: handleCancel, className: "min-w-[120px]", children: "Cancel" }),
|
|
3859
|
+
/* @__PURE__ */ jsx24(
|
|
3652
3860
|
Button,
|
|
3653
3861
|
{
|
|
3654
3862
|
variant: "primary",
|
|
@@ -3667,46 +3875,46 @@ var ProfileModal = ({
|
|
|
3667
3875
|
ProfileModal.displayName = "ProfileModal";
|
|
3668
3876
|
|
|
3669
3877
|
// src/geo-block-modal/index.tsx
|
|
3670
|
-
import { useLabels as
|
|
3671
|
-
import { useCallback as
|
|
3672
|
-
import { jsx as
|
|
3878
|
+
import { useLabels as useLabels21 } from "@agg-build/hooks";
|
|
3879
|
+
import { useCallback as useCallback9 } from "react";
|
|
3880
|
+
import { jsx as jsx25, jsxs as jsxs25 } from "react/jsx-runtime";
|
|
3673
3881
|
var GeoBlockModal = ({
|
|
3674
3882
|
open,
|
|
3675
3883
|
onOpenChange,
|
|
3676
3884
|
onConfirm,
|
|
3677
3885
|
classNames
|
|
3678
3886
|
}) => {
|
|
3679
|
-
const labels =
|
|
3680
|
-
const handleConfirm =
|
|
3887
|
+
const labels = useLabels21();
|
|
3888
|
+
const handleConfirm = useCallback9(() => {
|
|
3681
3889
|
onConfirm == null ? void 0 : onConfirm();
|
|
3682
3890
|
onOpenChange(false);
|
|
3683
3891
|
}, [onConfirm, onOpenChange]);
|
|
3684
|
-
return /* @__PURE__ */
|
|
3892
|
+
return /* @__PURE__ */ jsx25(
|
|
3685
3893
|
Modal,
|
|
3686
3894
|
{
|
|
3687
3895
|
open,
|
|
3688
3896
|
onOpenChange,
|
|
3689
3897
|
"aria-label": labels.trading.geoBlockModalAriaLabel,
|
|
3690
|
-
children: /* @__PURE__ */
|
|
3898
|
+
children: /* @__PURE__ */ jsxs25(
|
|
3691
3899
|
Modal.Container,
|
|
3692
3900
|
{
|
|
3693
3901
|
maxWidth: "480px",
|
|
3694
3902
|
classNames: { container: cn("!rounded-agg-2xl", classNames == null ? void 0 : classNames.container) },
|
|
3695
3903
|
children: [
|
|
3696
|
-
/* @__PURE__ */
|
|
3697
|
-
/* @__PURE__ */
|
|
3698
|
-
/* @__PURE__ */
|
|
3904
|
+
/* @__PURE__ */ jsx25(Modal.Header, { title: "", hideBorder: true, classNames: { container: "px-8 pt-8 pb-0" } }),
|
|
3905
|
+
/* @__PURE__ */ jsx25(Modal.Body, { classNames: { root: cn("!px-10 !pb-12 !pt-0", classNames == null ? void 0 : classNames.body) }, children: /* @__PURE__ */ jsxs25("div", { className: "flex flex-col items-center gap-8", children: [
|
|
3906
|
+
/* @__PURE__ */ jsx25(
|
|
3699
3907
|
Icon,
|
|
3700
3908
|
{
|
|
3701
3909
|
name: "internet-security",
|
|
3702
3910
|
className: "h-[60px] w-[60px] text-agg-muted-foreground"
|
|
3703
3911
|
}
|
|
3704
3912
|
),
|
|
3705
|
-
/* @__PURE__ */
|
|
3706
|
-
/* @__PURE__ */
|
|
3707
|
-
/* @__PURE__ */
|
|
3913
|
+
/* @__PURE__ */ jsxs25("div", { className: "flex flex-col items-center gap-3 text-center", children: [
|
|
3914
|
+
/* @__PURE__ */ jsx25("h2", { className: "text-agg-2xl font-agg-bold leading-agg-8 text-agg-foreground", children: labels.trading.geoBlockModalTitle }),
|
|
3915
|
+
/* @__PURE__ */ jsx25("p", { className: "text-agg-base font-agg-normal leading-agg-6 text-agg-foreground", children: labels.trading.geoBlockModalDescription })
|
|
3708
3916
|
] }),
|
|
3709
|
-
/* @__PURE__ */
|
|
3917
|
+
/* @__PURE__ */ jsx25(
|
|
3710
3918
|
Button,
|
|
3711
3919
|
{
|
|
3712
3920
|
variant: "secondary",
|