@aurora-is-near/intents-swap-widget 3.22.0 → 3.23.0
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/{config-Opy5ppbU.js → config-0TjbjBo5.js} +183 -183
- package/dist/config-0TjbjBo5.js.map +1 -0
- package/dist/config.d.ts +1 -10
- package/dist/config.js +1 -1
- package/dist/errors.js +1 -1
- package/dist/ext/alchemy/index.js +1 -1
- package/dist/ext/index.js +1 -1
- package/dist/features/BalanceRpcLoader/TokenBalanceLoader.js +1 -1
- package/dist/features/BalanceRpcLoader/index.js +1 -1
- package/dist/features/BalanceRpcLoader/useTokenBalanceRpc.js +1 -1
- package/dist/features/ChainsDropdown/index.js +1 -1
- package/dist/features/ChainsSelector/index.js +1 -1
- package/dist/features/DepositMethodSwitcher.js +1 -1
- package/dist/features/ErrorBoundary.js +1 -1
- package/dist/features/ExternalDeposit.js +1 -1
- package/dist/features/SendAddress/index.js +1 -1
- package/dist/features/SendAddress/useNotification.js +1 -1
- package/dist/features/SubmitButton/index.js +1 -1
- package/dist/features/SuccessScreen/index.js +1 -1
- package/dist/features/SuccessScreen/useSummaryItemsCount.js +1 -1
- package/dist/features/SwapDirectionSwitcher.js +1 -1
- package/dist/features/SwapQuote/SwapQuote.js +1 -1
- package/dist/features/SwapQuote/index.js +1 -1
- package/dist/features/TokenInput/TokenInput.js +1 -1
- package/dist/features/TokenInput/TokenInputEmpty.js +1 -1
- package/dist/features/TokenInput/TokenInputSource.js +1 -1
- package/dist/features/TokenInput/TokenInputTarget.js +1 -1
- package/dist/features/TokenInput/WalletBalance.js +1 -1
- package/dist/features/TokenInput/hooks/index.js +1 -1
- package/dist/features/TokenInput/hooks/useTokenInputBalance.js +1 -1
- package/dist/features/TokenInput/index.js +1 -1
- package/dist/features/TokensList/TokenItem.js +1 -1
- package/dist/features/TokensList/TokensList.js +1 -1
- package/dist/features/TokensList/index.js +1 -1
- package/dist/features/TokensModal.js +1 -1
- package/dist/features/WalletCompatibilityCheck/WalletCompatibilityModal.js +1 -1
- package/dist/features/WalletCompatibilityCheck/index.js +1 -1
- package/dist/features/index.js +1 -1
- package/dist/hooks/index.js +1 -1
- package/dist/hooks/useAllTokens.js +1 -1
- package/dist/hooks/useChains.js +1 -1
- package/dist/hooks/useCompatibilityCheck.js +1 -1
- package/dist/hooks/useDefaultToken.js +1 -1
- package/dist/hooks/useExternalDepositStatus/index.js +1 -1
- package/dist/hooks/useExternalDepositStatus/usePoaExternalDepositStatus.js +1 -1
- package/dist/hooks/useIntentsBalance.js +1 -1
- package/dist/hooks/useIsCompatibilityCheckRequired.js +1 -1
- package/dist/hooks/useMakeDepositAddress.js +1 -1
- package/dist/hooks/useMakeIntentsTransfer.js +1 -1
- package/dist/hooks/useMakeNEARFtTransferCall.js +1 -1
- package/dist/hooks/useMakeQuote.js +1 -1
- package/dist/hooks/useMakeQuoteTransfer.js +1 -1
- package/dist/hooks/useMakeTransfer.js +1 -1
- package/dist/hooks/useMergedBalance.js +1 -1
- package/dist/hooks/useSwitchChain.js +1 -1
- package/dist/hooks/useTheme.js +1 -1
- package/dist/hooks/useTokenInputPair.js +1 -1
- package/dist/hooks/useTokens.js +1 -1
- package/dist/hooks/useTokensFiltered.js +1 -1
- package/dist/hooks/useTokensIntentsUnique.js +1 -1
- package/dist/index.js +1 -1
- package/dist/machine/effects/index.js +1 -1
- package/dist/machine/effects/useAlchemyBalanceEffect.js +1 -1
- package/dist/machine/effects/useBalancesUpdateEffect.js +1 -1
- package/dist/machine/effects/useMakeQuoteEffect.js +1 -1
- package/dist/machine/effects/useSelectedTokensEffect.js +1 -1
- package/dist/machine/effects/useSetTokenBalanceEffect.js +1 -1
- package/dist/machine/effects/useSetTokenIntentsTargetEffect.js +1 -1
- package/dist/machine/effects/useWalletConnEffect.js +1 -1
- package/dist/machine/events/index.js +1 -1
- package/dist/machine/events/tokenSelect.js +1 -1
- package/dist/machine/events/validateInputAndMoveTo.js +1 -1
- package/dist/machine/events/validateInputs.js +1 -1
- package/dist/machine/index.js +1 -1
- package/dist/machine/snap.js +1 -1
- package/dist/machine/subscriptions/checkers/isSendAddressAsConnected.js +1 -1
- package/dist/machine/subscriptions/index.js +1 -1
- package/dist/theme/ThemeProvider.js +1 -1
- package/dist/types/chain.d.ts +4 -0
- package/dist/types/config.d.ts +2 -5
- package/dist/utils/intents/signers/near.js +1 -1
- package/dist/utils/intents/signers/privy.js +1 -1
- package/dist/utils/near/getNearNep141StorageBalance.js +1 -1
- package/dist/widgets/Widget/WidgetContent.js +24 -21
- package/dist/widgets/Widget/WidgetContent.js.map +1 -1
- package/dist/widgets/WidgetDeposit/WidgetDepositContent.js +65 -63
- package/dist/widgets/WidgetDeposit/WidgetDepositContent.js.map +1 -1
- package/dist/widgets/WidgetDeposit/WidgetDepositSkeleton.js +1 -1
- package/dist/widgets/WidgetSwap/WidgetSwapContent.js +59 -53
- package/dist/widgets/WidgetSwap/WidgetSwapContent.js.map +1 -1
- package/dist/widgets/WidgetSwap/WidgetSwapSkeleton.js +1 -1
- package/dist/widgets/WidgetWithdraw/WidgetWithdrawContent.js +79 -77
- package/dist/widgets/WidgetWithdraw/WidgetWithdrawContent.js.map +1 -1
- package/dist/widgets/WidgetWithdraw/WidgetWithdrawSkeleton.js +1 -1
- package/package.json +1 -1
- package/src/config.tsx +0 -5
- package/src/machine/effects/useSelectedTokensEffect.ts +7 -4
- package/src/types/chain.ts +5 -0
- package/src/types/config.ts +3 -4
- package/src/widgets/Widget/WidgetContent.tsx +10 -2
- package/src/widgets/WidgetDeposit/WidgetDeposit.test.tsx +0 -4
- package/src/widgets/WidgetDeposit/WidgetDepositContent.tsx +7 -3
- package/src/widgets/WidgetSwap/WidgetSwapContent.tsx +19 -4
- package/src/widgets/WidgetWithdraw/WidgetWithdrawContent.tsx +5 -3
- package/dist/config-Opy5ppbU.js.map +0 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import "react";
|
|
2
2
|
import "../../hooks/useWalletAddressForToken.js";
|
|
3
|
-
import { I as f } from "../../config-
|
|
3
|
+
import { I as f } from "../../config-0TjbjBo5.js";
|
|
4
4
|
import "../guards/index.js";
|
|
5
5
|
import "../machine.js";
|
|
6
6
|
import "../events/utils/fireEvent.js";
|
|
@@ -3,7 +3,7 @@ import "./tokenSelectRotate.js";
|
|
|
3
3
|
import "./errorSet.js";
|
|
4
4
|
import "./quoteSet.js";
|
|
5
5
|
import "./addressSet.js";
|
|
6
|
-
import { _ as b } from "../../config-
|
|
6
|
+
import { _ as b } from "../../config-0TjbjBo5.js";
|
|
7
7
|
import "./tokenSetAmount.js";
|
|
8
8
|
import "./quoteSetStatus.js";
|
|
9
9
|
import "./depositTypeSet.js";
|
|
@@ -3,7 +3,7 @@ import "../../utils/near/checkNearAccountExists.js";
|
|
|
3
3
|
import "../../utils/checkers/isNotEmptyAmount.js";
|
|
4
4
|
import "../../utils/checkers/isValidBigint.js";
|
|
5
5
|
import "../../utils/near/isNearAddress.js";
|
|
6
|
-
import { K as I, L as d, N as u } from "../../config-
|
|
6
|
+
import { K as I, L as d, N as u } from "../../config-0TjbjBo5.js";
|
|
7
7
|
import "../guards/index.js";
|
|
8
8
|
import "../machine.js";
|
|
9
9
|
import "../guards/checks/isBalanceSufficient.js";
|
package/dist/machine/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { r as o, u as t, a as r, c as a, b as f } from "../config-
|
|
1
|
+
import { r as o, u as t, a as r, c as a, b as f } from "../config-0TjbjBo5.js";
|
|
2
2
|
import { guardStates as S } from "./guards/index.js";
|
|
3
3
|
import { machine as n, moveTo as u } from "./machine.js";
|
|
4
4
|
import { fireEvent as i } from "./events/utils/fireEvent.js";
|
package/dist/machine/snap.js
CHANGED
|
@@ -2,7 +2,7 @@ import "valtio";
|
|
|
2
2
|
import "derive-valtio";
|
|
3
3
|
import "./computed/getIsNativeNearDeposit.js";
|
|
4
4
|
import "./computed/getIsDirectTokenOnNearDeposit.js";
|
|
5
|
-
import { u as h, a as b, b as d } from "../config-
|
|
5
|
+
import { u as h, a as b, b as d } from "../config-0TjbjBo5.js";
|
|
6
6
|
import "./machine.js";
|
|
7
7
|
import "./guards/index.js";
|
|
8
8
|
import "./computed/getUsdTradeDelta.js";
|
|
@@ -5,7 +5,7 @@ import "./checkers/isOnlyErrorChanged.js";
|
|
|
5
5
|
import "./checkers/isValidInitialState.js";
|
|
6
6
|
import "./checkers/isWalletDisconnected.js";
|
|
7
7
|
import "./checkers/isSendAddressForbidden.js";
|
|
8
|
-
import { X as g, Y as u } from "../../config-
|
|
8
|
+
import { X as g, Y as u } from "../../config-0TjbjBo5.js";
|
|
9
9
|
import "./checkers/isAmountChangedFromQuote.js";
|
|
10
10
|
import "ethers";
|
|
11
11
|
import "../machine.js";
|
package/dist/types/chain.d.ts
CHANGED
|
@@ -9,4 +9,8 @@ export type ChainsFilter = {
|
|
|
9
9
|
intents: 'none' | 'all' | 'with-balance';
|
|
10
10
|
external: 'none' | 'all' | 'wallet-supported';
|
|
11
11
|
};
|
|
12
|
+
export type ChainsFilters = {
|
|
13
|
+
target: ChainsFilter;
|
|
14
|
+
source: ChainsFilter;
|
|
15
|
+
};
|
|
12
16
|
export type ChainRpcUrls = Partial<Record<Chains, string[]>>;
|
package/dist/types/config.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Quote, QuoteRequest } from '@defuse-protocol/one-click-sdk-typescript';
|
|
2
|
-
import { Chains
|
|
2
|
+
import { Chains } from './chain';
|
|
3
3
|
import { SimpleToken, Token } from './token';
|
|
4
4
|
import { FetchQuoteOptions } from './quote';
|
|
5
5
|
export type WalletAddresses = Partial<Record<Chains | 'default', string | null>>;
|
|
@@ -8,6 +8,7 @@ export type PriorityAssets = ReadonlyArray<string> | ReadonlyArray<readonly [Cha
|
|
|
8
8
|
export type WidgetConfig = {
|
|
9
9
|
appName: string;
|
|
10
10
|
appIcon?: string;
|
|
11
|
+
enableAccountAbstraction?: boolean;
|
|
11
12
|
intentsAccountType?: IntentsAccountType;
|
|
12
13
|
walletSupportedChains: ReadonlyArray<Chains>;
|
|
13
14
|
connectedWallets: WalletAddresses;
|
|
@@ -32,10 +33,6 @@ export type WidgetConfig = {
|
|
|
32
33
|
allowedSourceChainsList?: Chains[];
|
|
33
34
|
allowedTargetChainsList?: Chains[];
|
|
34
35
|
topChainShortcuts?: (intentsAccountType?: IntentsAccountType) => [Chains, Chains, Chains, Chains];
|
|
35
|
-
chainsFilter: {
|
|
36
|
-
source: ChainsFilter;
|
|
37
|
-
target: ChainsFilter;
|
|
38
|
-
};
|
|
39
36
|
fetchQuote?: (data: QuoteRequest, options: FetchQuoteOptions) => Promise<Quote>;
|
|
40
37
|
fetchSourceTokens?: () => Promise<SimpleToken[]>;
|
|
41
38
|
fetchTargetTokens?: () => Promise<SimpleToken[]>;
|
|
@@ -1,46 +1,49 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import { useState as
|
|
3
|
-
import { WidgetTabs as
|
|
4
|
-
import { WidgetSwapContent as
|
|
5
|
-
import { WidgetDepositContent as
|
|
6
|
-
import { WidgetWithdrawContent as
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
1
|
+
import { jsxs as u, Fragment as l, jsx as e } from "react/jsx-runtime";
|
|
2
|
+
import { useState as c, useEffect as w } from "react";
|
|
3
|
+
import { WidgetTabs as b } from "../../components/WidgetTabs.js";
|
|
4
|
+
import { WidgetSwapContent as g } from "../WidgetSwap/WidgetSwapContent.js";
|
|
5
|
+
import { WidgetDepositContent as h } from "../WidgetDeposit/WidgetDepositContent.js";
|
|
6
|
+
import { WidgetWithdrawContent as T } from "../WidgetWithdraw/WidgetWithdrawContent.js";
|
|
7
|
+
import { y as W } from "../../config-0TjbjBo5.js";
|
|
8
|
+
const j = ({ onMsg: p, ...o }) => {
|
|
9
|
+
const [d, i] = c(!0), [r, a] = c("swap"), { enableAccountAbstraction: n } = W(), f = (t) => {
|
|
10
|
+
a(t);
|
|
11
|
+
}, s = (t, m) => {
|
|
12
|
+
t.type === "on_tokens_modal_toggled" && i(!t.isOpen), t.type === "on_select_token" && i(!0), p?.(t, m);
|
|
12
13
|
};
|
|
13
|
-
return
|
|
14
|
-
|
|
14
|
+
return w(() => {
|
|
15
|
+
n || a("swap");
|
|
16
|
+
}, [n]), /* @__PURE__ */ u(l, { children: [
|
|
17
|
+
n && d && /* @__PURE__ */ e(b, { activeTab: r, onSelect: f }),
|
|
15
18
|
(() => {
|
|
16
|
-
switch (
|
|
19
|
+
switch (r) {
|
|
17
20
|
case "swap":
|
|
18
21
|
return /* @__PURE__ */ e(
|
|
19
|
-
|
|
22
|
+
g,
|
|
20
23
|
{
|
|
21
24
|
...o,
|
|
22
25
|
onMsg: (t) => {
|
|
23
|
-
|
|
26
|
+
s(t, "swap");
|
|
24
27
|
}
|
|
25
28
|
}
|
|
26
29
|
);
|
|
27
30
|
case "deposit":
|
|
28
31
|
return /* @__PURE__ */ e(
|
|
29
|
-
|
|
32
|
+
h,
|
|
30
33
|
{
|
|
31
34
|
...o,
|
|
32
35
|
onMsg: (t) => {
|
|
33
|
-
|
|
36
|
+
s(t, "deposit");
|
|
34
37
|
}
|
|
35
38
|
}
|
|
36
39
|
);
|
|
37
40
|
case "withdraw":
|
|
38
41
|
return /* @__PURE__ */ e(
|
|
39
|
-
|
|
42
|
+
T,
|
|
40
43
|
{
|
|
41
44
|
...o,
|
|
42
45
|
onMsg: (t) => {
|
|
43
|
-
|
|
46
|
+
s(t, "withdraw");
|
|
44
47
|
}
|
|
45
48
|
}
|
|
46
49
|
);
|
|
@@ -51,6 +54,6 @@ const x = ({ onMsg: a, ...o }) => {
|
|
|
51
54
|
] });
|
|
52
55
|
};
|
|
53
56
|
export {
|
|
54
|
-
|
|
57
|
+
j as WidgetContent
|
|
55
58
|
};
|
|
56
59
|
//# sourceMappingURL=WidgetContent.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WidgetContent.js","sources":["../../../src/widgets/Widget/WidgetContent.tsx"],"sourcesContent":["'use client';\n\nimport { useState } from 'react';\nimport { WidgetTab, WidgetTabs } from '../../components/WidgetTabs';\nimport {\n Msg as SwapMsg,\n WidgetSwapContent,\n Props as WidgetSwapProps,\n} from '../WidgetSwap/WidgetSwapContent';\nimport {\n Msg as DepositMsg,\n WidgetDepositContent,\n Props as WidgetDepositProps,\n} from '../WidgetDeposit/WidgetDepositContent';\nimport {\n WidgetWithdrawContent,\n Props as WidgetWithdrawProps,\n Msg as WithdrawMsg,\n} from '../WidgetWithdraw/WidgetWithdrawContent';\n\ntype WidgetType = 'swap' | 'deposit' | 'withdraw';\n\nexport type Props = Omit<\n WidgetSwapProps | WidgetDepositProps | WidgetWithdrawProps,\n 'onMsg'\n> & {\n onMsg?: (msg: Msg, widget: WidgetType) => void;\n};\n\ntype Msg = SwapMsg | DepositMsg | WithdrawMsg;\n\nexport const WidgetContent = ({ onMsg, ...restProps }: Props) => {\n const [isTabsVisible, setIsTabsVisible] = useState(true);\n const [activeTab, setActiveTab] = useState<WidgetTab>('swap');\n\n const switchTab = (tab: WidgetTab) => {\n setActiveTab(tab);\n };\n\n const handleMsg = <T extends Msg>(msg: T, widgetType: WidgetType) => {\n if (msg.type === 'on_tokens_modal_toggled') {\n setIsTabsVisible(!msg.isOpen);\n }\n\n if (msg.type === 'on_select_token') {\n setIsTabsVisible(true);\n }\n\n onMsg?.(msg, widgetType);\n };\n\n return (\n <>\n {isTabsVisible && (\n <WidgetTabs activeTab={activeTab} onSelect={switchTab} />\n )}\n\n {(() => {\n switch (activeTab) {\n case 'swap': {\n return (\n <WidgetSwapContent\n {...restProps}\n onMsg={(msg) => {\n handleMsg(msg, 'swap');\n }}\n />\n );\n }\n\n case 'deposit': {\n return (\n <WidgetDepositContent\n {...restProps}\n onMsg={(msg) => {\n handleMsg(msg, 'deposit');\n }}\n />\n );\n }\n\n case 'withdraw': {\n return (\n <WidgetWithdrawContent\n {...restProps}\n onMsg={(msg) => {\n handleMsg(msg, 'withdraw');\n }}\n />\n );\n }\n\n default:\n return null;\n }\n })()}\n </>\n );\n};\n"],"names":["WidgetContent","onMsg","restProps","isTabsVisible","setIsTabsVisible","useState","activeTab","setActiveTab","switchTab","tab","handleMsg","msg","widgetType","jsxs","Fragment","jsx","WidgetTabs","WidgetSwapContent","WidgetDepositContent","WidgetWithdrawContent"],"mappings":"
|
|
1
|
+
{"version":3,"file":"WidgetContent.js","sources":["../../../src/widgets/Widget/WidgetContent.tsx"],"sourcesContent":["'use client';\n\nimport { useEffect, useState } from 'react';\nimport { WidgetTab, WidgetTabs } from '../../components/WidgetTabs';\nimport {\n Msg as SwapMsg,\n WidgetSwapContent,\n Props as WidgetSwapProps,\n} from '../WidgetSwap/WidgetSwapContent';\nimport {\n Msg as DepositMsg,\n WidgetDepositContent,\n Props as WidgetDepositProps,\n} from '../WidgetDeposit/WidgetDepositContent';\nimport {\n WidgetWithdrawContent,\n Props as WidgetWithdrawProps,\n Msg as WithdrawMsg,\n} from '../WidgetWithdraw/WidgetWithdrawContent';\nimport { useConfig } from '../../config';\n\ntype WidgetType = 'swap' | 'deposit' | 'withdraw';\n\nexport type Props = Omit<\n WidgetSwapProps | WidgetDepositProps | WidgetWithdrawProps,\n 'onMsg'\n> & {\n onMsg?: (msg: Msg, widget: WidgetType) => void;\n};\n\ntype Msg = SwapMsg | DepositMsg | WithdrawMsg;\n\nexport const WidgetContent = ({ onMsg, ...restProps }: Props) => {\n const [isTabsVisible, setIsTabsVisible] = useState(true);\n const [activeTab, setActiveTab] = useState<WidgetTab>('swap');\n const { enableAccountAbstraction } = useConfig();\n\n const switchTab = (tab: WidgetTab) => {\n setActiveTab(tab);\n };\n\n const handleMsg = <T extends Msg>(msg: T, widgetType: WidgetType) => {\n if (msg.type === 'on_tokens_modal_toggled') {\n setIsTabsVisible(!msg.isOpen);\n }\n\n if (msg.type === 'on_select_token') {\n setIsTabsVisible(true);\n }\n\n onMsg?.(msg, widgetType);\n };\n\n useEffect(() => {\n if (!enableAccountAbstraction) {\n setActiveTab('swap');\n }\n }, [enableAccountAbstraction]);\n\n return (\n <>\n {enableAccountAbstraction && isTabsVisible && (\n <WidgetTabs activeTab={activeTab} onSelect={switchTab} />\n )}\n\n {(() => {\n switch (activeTab) {\n case 'swap': {\n return (\n <WidgetSwapContent\n {...restProps}\n onMsg={(msg) => {\n handleMsg(msg, 'swap');\n }}\n />\n );\n }\n\n case 'deposit': {\n return (\n <WidgetDepositContent\n {...restProps}\n onMsg={(msg) => {\n handleMsg(msg, 'deposit');\n }}\n />\n );\n }\n\n case 'withdraw': {\n return (\n <WidgetWithdrawContent\n {...restProps}\n onMsg={(msg) => {\n handleMsg(msg, 'withdraw');\n }}\n />\n );\n }\n\n default:\n return null;\n }\n })()}\n </>\n );\n};\n"],"names":["WidgetContent","onMsg","restProps","isTabsVisible","setIsTabsVisible","useState","activeTab","setActiveTab","enableAccountAbstraction","useConfig","switchTab","tab","handleMsg","msg","widgetType","useEffect","jsxs","Fragment","jsx","WidgetTabs","WidgetSwapContent","WidgetDepositContent","WidgetWithdrawContent"],"mappings":";;;;;;;AAgCO,MAAMA,IAAgB,CAAC,EAAE,OAAAC,GAAO,GAAGC,QAAuB;AAC/D,QAAM,CAACC,GAAeC,CAAgB,IAAIC,EAAS,EAAI,GACjD,CAACC,GAAWC,CAAY,IAAIF,EAAoB,MAAM,GACtD,EAAE,0BAAAG,EAAA,IAA6BC,EAAA,GAE/BC,IAAY,CAACC,MAAmB;AACpC,IAAAJ,EAAaI,CAAG;AAAA,EAClB,GAEMC,IAAY,CAAgBC,GAAQC,MAA2B;AACnE,IAAID,EAAI,SAAS,6BACfT,EAAiB,CAACS,EAAI,MAAM,GAG1BA,EAAI,SAAS,qBACfT,EAAiB,EAAI,GAGvBH,IAAQY,GAAKC,CAAU;AAAA,EACzB;AAEA,SAAAC,EAAU,MAAM;AACd,IAAKP,KACHD,EAAa,MAAM;AAAA,EAEvB,GAAG,CAACC,CAAwB,CAAC,GAG3B,gBAAAQ,EAAAC,GAAA,EACG,UAAA;AAAA,IAAAT,KAA4BL,KAC3B,gBAAAe,EAACC,GAAA,EAAW,WAAAb,GAAsB,UAAUI,GAAW;AAAA,KAGvD,MAAM;AACN,cAAQJ,GAAA;AAAA,QACN,KAAK;AACH,iBACE,gBAAAY;AAAA,YAACE;AAAA,YAAA;AAAA,cACE,GAAGlB;AAAA,cACJ,OAAO,CAACW,MAAQ;AACd,gBAAAD,EAAUC,GAAK,MAAM;AAAA,cACvB;AAAA,YAAA;AAAA,UAAA;AAAA,QAKN,KAAK;AACH,iBACE,gBAAAK;AAAA,YAACG;AAAA,YAAA;AAAA,cACE,GAAGnB;AAAA,cACJ,OAAO,CAACW,MAAQ;AACd,gBAAAD,EAAUC,GAAK,SAAS;AAAA,cAC1B;AAAA,YAAA;AAAA,UAAA;AAAA,QAKN,KAAK;AACH,iBACE,gBAAAK;AAAA,YAACI;AAAA,YAAA;AAAA,cACE,GAAGpB;AAAA,cACJ,OAAO,CAACW,MAAQ;AACd,gBAAAD,EAAUC,GAAK,UAAU;AAAA,cAC3B;AAAA,YAAA;AAAA,UAAA;AAAA,QAKN;AACE,iBAAO;AAAA,MAAA;AAAA,IAEb,GAAA;AAAA,EAAG,GACL;AAEJ;"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { jsx as t, jsxs as
|
|
2
|
-
import { useState as
|
|
3
|
-
import { useTokenModal as
|
|
4
|
-
import { useTypedTranslation as
|
|
5
|
-
import { WidgetDepositSkeleton as
|
|
6
|
-
import { b as
|
|
1
|
+
import { jsx as t, jsxs as _ } from "react/jsx-runtime";
|
|
2
|
+
import { useState as y, useEffect as p, useCallback as B } from "react";
|
|
3
|
+
import { useTokenModal as R } from "../../hooks/useTokenModal.js";
|
|
4
|
+
import { useTypedTranslation as A } from "../../localisation.js";
|
|
5
|
+
import { WidgetDepositSkeleton as b } from "./WidgetDepositSkeleton.js";
|
|
6
|
+
import { b as F, u as q, y as j, n as N, c as O, p as Q, o as U, S as K } from "../../config-0TjbjBo5.js";
|
|
7
7
|
import "@tanstack/react-query";
|
|
8
8
|
import "@headlessui/react";
|
|
9
9
|
import "@material-symbols-svg/react-rounded/icons/chevron-left";
|
|
@@ -15,20 +15,20 @@ import { notReachable as r } from "../../utils/notReachable.js";
|
|
|
15
15
|
import "use-debounce";
|
|
16
16
|
import "@material-symbols-svg/react-rounded/icons/wand-shine";
|
|
17
17
|
import "../../components/Input.js";
|
|
18
|
-
import { Banner as
|
|
19
|
-
import { isDebug as
|
|
18
|
+
import { Banner as P } from "../../components/Banner.js";
|
|
19
|
+
import { isDebug as z } from "../../utils/checkers/isDebug.js";
|
|
20
20
|
import "viem";
|
|
21
21
|
import "ethers";
|
|
22
22
|
import "../../machine/machine.js";
|
|
23
23
|
import { fireEvent as u } from "../../machine/events/utils/fireEvent.js";
|
|
24
|
-
import { SuccessScreen as
|
|
25
|
-
import { TokensModal as
|
|
24
|
+
import { SuccessScreen as G } from "../../features/SuccessScreen/index.js";
|
|
25
|
+
import { TokensModal as H } from "../../features/TokensModal.js";
|
|
26
26
|
import "@material-symbols-svg/react-rounded/icons/arrow-downward";
|
|
27
27
|
import "@material-symbols-svg/react-rounded/icons/progress-activity";
|
|
28
|
-
import { ExternalDeposit as
|
|
29
|
-
import { DepositMethodSwitcher as
|
|
30
|
-
import { WalletCompatibilityCheck as
|
|
31
|
-
import { BlockingError as
|
|
28
|
+
import { ExternalDeposit as J } from "../../features/ExternalDeposit.js";
|
|
29
|
+
import { DepositMethodSwitcher as L } from "../../features/DepositMethodSwitcher.js";
|
|
30
|
+
import { WalletCompatibilityCheck as V } from "../../features/WalletCompatibilityCheck/index.js";
|
|
31
|
+
import { BlockingError as X } from "../../components/BlockingError.js";
|
|
32
32
|
import "copy-text-to-clipboard";
|
|
33
33
|
import "@material-symbols-svg/react-rounded/icons/content-copy";
|
|
34
34
|
import "../../components/InputAmount.js";
|
|
@@ -48,30 +48,29 @@ import "@defuse-protocol/one-click-sdk-typescript";
|
|
|
48
48
|
import "axios";
|
|
49
49
|
import "../../network.js";
|
|
50
50
|
import "viem/chains";
|
|
51
|
-
import { useTokenInputPair as
|
|
52
|
-
import { useIsCompatibilityCheckRequired as
|
|
51
|
+
import { useTokenInputPair as Y } from "../../hooks/useTokenInputPair.js";
|
|
52
|
+
import { useIsCompatibilityCheckRequired as Z } from "../../hooks/useIsCompatibilityCheckRequired.js";
|
|
53
53
|
import "browser-or-node";
|
|
54
|
-
const
|
|
54
|
+
const Ze = ({
|
|
55
55
|
providers: m,
|
|
56
56
|
onMsg: n,
|
|
57
|
-
makeTransfer:
|
|
58
|
-
isLoading:
|
|
57
|
+
makeTransfer: S,
|
|
58
|
+
isLoading: T
|
|
59
59
|
}) => {
|
|
60
|
-
const { ctx: o } =
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
} = N(), { onChangeAmount: E, onChangeToken: d } = Z(), { status: k, refetch: W } = O(), { tokenModalOpen: s, updateTokenModalState: a } = A({ onMsg: n }), h = $(), [I, c] = b(!1);
|
|
60
|
+
const { ctx: o } = F(), { t: i } = A(), { isDirectNearTokenWithdrawal: w } = q(), {
|
|
61
|
+
alchemyApiKey: x,
|
|
62
|
+
refetchQuoteInterval: C,
|
|
63
|
+
intentsAccountType: g,
|
|
64
|
+
onWalletSignout: D
|
|
65
|
+
} = j(), { onChangeAmount: E, onChangeToken: f } = Y(), { status: d, refetch: v } = N(), { tokenModalOpen: s, updateTokenModalState: a } = R({ onMsg: n }), k = Z(), [W, l] = y(!1);
|
|
67
66
|
p(() => {
|
|
68
|
-
|
|
69
|
-
}, [
|
|
70
|
-
const [
|
|
67
|
+
k && l(!0);
|
|
68
|
+
}, [k]);
|
|
69
|
+
const [h, c] = y(), I = B(
|
|
71
70
|
(e) => {
|
|
72
71
|
switch (e.type) {
|
|
73
72
|
case "on_successful_transfer":
|
|
74
|
-
|
|
73
|
+
c(e.transferResult);
|
|
75
74
|
break;
|
|
76
75
|
case "on_transaction_received":
|
|
77
76
|
break;
|
|
@@ -83,15 +82,15 @@ const $e = ({
|
|
|
83
82
|
);
|
|
84
83
|
p(() => (u("reset", { clearWalletAddress: !0 }), () => {
|
|
85
84
|
u("depositTypeSet", { isExternal: !1 });
|
|
86
|
-
}), []),
|
|
87
|
-
debug:
|
|
85
|
+
}), []), O({
|
|
86
|
+
debug: z(),
|
|
88
87
|
listenTo: [
|
|
89
88
|
"checkWalletConnection",
|
|
90
89
|
"setSourceTokenBalance",
|
|
91
90
|
"setSourceTokenIntentsTarget",
|
|
92
91
|
["setDefaultSelectedTokens", { skipIntents: !0 }],
|
|
93
|
-
["makeQuote", { message: void 0, refetchQuoteInterval:
|
|
94
|
-
["setBalancesUsingAlchemyExt", { alchemyApiKey:
|
|
92
|
+
["makeQuote", { message: void 0, refetchQuoteInterval: C }],
|
|
93
|
+
["setBalancesUsingAlchemyExt", { alchemyApiKey: x }]
|
|
95
94
|
]
|
|
96
95
|
}), p(() => {
|
|
97
96
|
n?.({
|
|
@@ -99,23 +98,23 @@ const $e = ({
|
|
|
99
98
|
isExternal: o.isDepositFromExternalWallet
|
|
100
99
|
});
|
|
101
100
|
}, [o.isDepositFromExternalWallet]);
|
|
102
|
-
const
|
|
101
|
+
const M = () => {
|
|
103
102
|
u("reset", { clearWalletAddress: !1, keepSelectedTokens: !0 });
|
|
104
103
|
};
|
|
105
|
-
if (
|
|
106
|
-
return /* @__PURE__ */ t(
|
|
107
|
-
if (
|
|
104
|
+
if (T || d !== "error" && !o.sourceToken)
|
|
105
|
+
return /* @__PURE__ */ t(b, {});
|
|
106
|
+
if (W)
|
|
108
107
|
return /* @__PURE__ */ t(
|
|
109
|
-
|
|
108
|
+
V,
|
|
110
109
|
{
|
|
111
110
|
providers: m,
|
|
112
111
|
onMsg: (e) => {
|
|
113
112
|
switch (e.type) {
|
|
114
113
|
case "on_sign_out":
|
|
115
|
-
|
|
114
|
+
D?.(g), l(!1);
|
|
116
115
|
break;
|
|
117
116
|
case "on_close":
|
|
118
|
-
|
|
117
|
+
l(!1);
|
|
119
118
|
break;
|
|
120
119
|
default:
|
|
121
120
|
r(e.type);
|
|
@@ -123,16 +122,16 @@ const $e = ({
|
|
|
123
122
|
}
|
|
124
123
|
}
|
|
125
124
|
);
|
|
126
|
-
if (o.state === "transfer_success" &&
|
|
125
|
+
if (o.state === "transfer_success" && h)
|
|
127
126
|
return /* @__PURE__ */ t(
|
|
128
|
-
|
|
127
|
+
G,
|
|
129
128
|
{
|
|
130
|
-
...
|
|
129
|
+
...h,
|
|
131
130
|
title: i("transfer.success.deposit.title", "Deposit successful"),
|
|
132
131
|
onMsg: (e) => {
|
|
133
132
|
switch (e.type) {
|
|
134
133
|
case "on_dismiss_success":
|
|
135
|
-
|
|
134
|
+
c(void 0), M();
|
|
136
135
|
break;
|
|
137
136
|
default:
|
|
138
137
|
r(e.type);
|
|
@@ -140,28 +139,31 @@ const $e = ({
|
|
|
140
139
|
}
|
|
141
140
|
}
|
|
142
141
|
);
|
|
143
|
-
switch (
|
|
142
|
+
switch (d) {
|
|
144
143
|
case "error":
|
|
145
144
|
return /* @__PURE__ */ t(
|
|
146
|
-
|
|
145
|
+
X,
|
|
147
146
|
{
|
|
148
147
|
message: "Couldn't load tokens list.",
|
|
149
|
-
onClickRetry:
|
|
148
|
+
onClickRetry: v
|
|
150
149
|
}
|
|
151
150
|
);
|
|
152
151
|
case "success":
|
|
153
152
|
return s !== "none" ? /* @__PURE__ */ t(
|
|
154
|
-
|
|
153
|
+
H,
|
|
155
154
|
{
|
|
156
155
|
showBalances: !0,
|
|
157
156
|
showChainsSelector: !0,
|
|
158
157
|
variant: s,
|
|
159
158
|
groupTokens: s === "source",
|
|
160
|
-
chainsFilter: s === "source" ?
|
|
159
|
+
chainsFilter: s === "source" ? {
|
|
160
|
+
intents: "none",
|
|
161
|
+
external: o.isDepositFromExternalWallet ? "all" : "wallet-supported"
|
|
162
|
+
} : { intents: "all", external: "none" },
|
|
161
163
|
onMsg: (e) => {
|
|
162
164
|
switch (e.type) {
|
|
163
165
|
case "on_select_token":
|
|
164
|
-
|
|
166
|
+
f(s, e.token), a("none"), n?.({
|
|
165
167
|
type: e.type,
|
|
166
168
|
token: e.token,
|
|
167
169
|
variant: s
|
|
@@ -175,16 +177,16 @@ const $e = ({
|
|
|
175
177
|
}
|
|
176
178
|
}
|
|
177
179
|
}
|
|
178
|
-
) : /* @__PURE__ */
|
|
180
|
+
) : /* @__PURE__ */ _("div", { className: "gap-sw-2xl flex flex-col", children: [
|
|
179
181
|
/* @__PURE__ */ t(
|
|
180
|
-
|
|
182
|
+
Q.Source,
|
|
181
183
|
{
|
|
182
184
|
showBalance: !o.isDepositFromExternalWallet,
|
|
183
185
|
heading: i("tokenInput.heading.source.deposit", "Sell"),
|
|
184
186
|
onMsg: (e) => {
|
|
185
187
|
switch (e.type) {
|
|
186
188
|
case "on_select_token":
|
|
187
|
-
|
|
189
|
+
f("source", e.token);
|
|
188
190
|
break;
|
|
189
191
|
case "on_change_amount":
|
|
190
192
|
E("source", e.amount);
|
|
@@ -198,10 +200,10 @@ const $e = ({
|
|
|
198
200
|
}
|
|
199
201
|
}
|
|
200
202
|
),
|
|
201
|
-
/* @__PURE__ */ t(
|
|
202
|
-
/* @__PURE__ */ t(
|
|
203
|
+
/* @__PURE__ */ t(L, { children: ({ isExternal: e }) => e ? /* @__PURE__ */ _("div", { className: "gap-sw-2xl flex flex-col justify-between", children: [
|
|
204
|
+
/* @__PURE__ */ t(J, { onMsg: I }),
|
|
203
205
|
(o.state === "quote_success_internal" || o.state === "quote_success_external") && /* @__PURE__ */ t(
|
|
204
|
-
|
|
206
|
+
P,
|
|
205
207
|
{
|
|
206
208
|
multiline: !0,
|
|
207
209
|
variant: "warn",
|
|
@@ -209,25 +211,25 @@ const $e = ({
|
|
|
209
211
|
}
|
|
210
212
|
)
|
|
211
213
|
] }) : null }),
|
|
212
|
-
!
|
|
214
|
+
!w && /* @__PURE__ */ t(U, {}),
|
|
213
215
|
/* @__PURE__ */ t(
|
|
214
|
-
|
|
216
|
+
K,
|
|
215
217
|
{
|
|
216
218
|
providers: m,
|
|
217
|
-
makeTransfer:
|
|
219
|
+
makeTransfer: S,
|
|
218
220
|
label: i("submit.active.deposit", "Deposit now"),
|
|
219
221
|
onSuccess: (e) => {
|
|
220
|
-
|
|
222
|
+
c(e), n?.({ type: "on_transfer_success" });
|
|
221
223
|
}
|
|
222
224
|
}
|
|
223
225
|
)
|
|
224
226
|
] });
|
|
225
227
|
case "pending":
|
|
226
228
|
default:
|
|
227
|
-
return /* @__PURE__ */ t(
|
|
229
|
+
return /* @__PURE__ */ t(b, {});
|
|
228
230
|
}
|
|
229
231
|
};
|
|
230
232
|
export {
|
|
231
|
-
|
|
233
|
+
Ze as WidgetDepositContent
|
|
232
234
|
};
|
|
233
235
|
//# sourceMappingURL=WidgetDepositContent.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WidgetDepositContent.js","sources":["../../../src/widgets/WidgetDeposit/WidgetDepositContent.tsx"],"sourcesContent":["import { useCallback, useEffect, useState } from 'react';\n\nimport type { CommonWidgetProps, TokenInputType } from '../types';\nimport { useTokenModal } from '../../hooks/useTokenModal';\nimport { useTypedTranslation } from '../../localisation';\nimport { WidgetDepositSkeleton } from './WidgetDepositSkeleton';\nimport {\n DepositMethodSwitcher,\n ExternalDeposit,\n SubmitButton,\n SuccessScreen,\n SwapQuote,\n TokenInput,\n TokensModal,\n} from '@/features';\n\nimport { Banner, BlockingError } from '@/components';\nimport { WalletCompatibilityCheck } from '@/features/WalletCompatibilityCheck';\n\nimport { useStoreSideEffects } from '@/machine/effects';\nimport { useComputedSnapshot, useUnsafeSnapshot } from '@/machine/snap';\nimport { fireEvent } from '@/machine/events/utils/fireEvent';\n\nimport {\n useIsCompatibilityCheckRequired,\n useTokenInputPair,\n useTokens,\n} from '@/hooks';\nimport { useConfig } from '@/config';\n\nimport { isDebug, notReachable } from '@/utils';\n\nimport type { Token, TransferResult } from '@/types';\n\nexport type Msg =\n | { type: 'on_select_token'; token: Token; variant: TokenInputType }\n | { type: 'on_change_deposit_type'; isExternal: boolean }\n | { type: 'on_transfer_success' }\n | { type: 'on_tokens_modal_toggled'; isOpen: boolean };\n\nexport type Props = CommonWidgetProps<Msg>;\n\nexport const WidgetDepositContent = ({\n providers,\n onMsg,\n makeTransfer,\n isLoading,\n}: Props) => {\n const { ctx } = useUnsafeSnapshot();\n const { t } = useTypedTranslation();\n const { isDirectNearTokenWithdrawal } = useComputedSnapshot();\n const {\n chainsFilter,\n alchemyApiKey,\n refetchQuoteInterval,\n intentsAccountType,\n onWalletSignout,\n } = useConfig();\n\n const { onChangeAmount, onChangeToken } = useTokenInputPair();\n const { status: tokensStatus, refetch: refetchTokens } = useTokens();\n const { tokenModalOpen, updateTokenModalState } = useTokenModal({ onMsg });\n\n const isCompatibilityCheckRequired = useIsCompatibilityCheckRequired();\n const [isCompatibilityOpen, setIsCompatibilityOpen] = useState(false);\n\n useEffect(() => {\n if (isCompatibilityCheckRequired) {\n setIsCompatibilityOpen(true);\n }\n }, [isCompatibilityCheckRequired]);\n\n const [transferResult, setTransferResult] = useState<\n TransferResult | undefined\n >();\n\n const handleExternalDepositMsg = useCallback(\n (\n msg:\n | { type: 'on_transaction_received' }\n | { type: 'on_successful_transfer'; transferResult: TransferResult },\n ) => {\n switch (msg.type) {\n case 'on_successful_transfer':\n setTransferResult(msg.transferResult);\n break;\n case 'on_transaction_received':\n // Transaction received, no action needed\n break;\n default:\n notReachable(msg);\n }\n },\n [],\n );\n\n useEffect(() => {\n fireEvent('reset', { clearWalletAddress: true });\n\n return () => {\n fireEvent('depositTypeSet', { isExternal: false });\n };\n }, []);\n\n useStoreSideEffects({\n debug: isDebug(),\n listenTo: [\n 'checkWalletConnection',\n 'setSourceTokenBalance',\n 'setSourceTokenIntentsTarget',\n ['setDefaultSelectedTokens', { skipIntents: true }],\n ['makeQuote', { message: undefined, refetchQuoteInterval }],\n ['setBalancesUsingAlchemyExt', { alchemyApiKey }],\n ],\n });\n\n useEffect(() => {\n onMsg?.({\n type: 'on_change_deposit_type',\n isExternal: ctx.isDepositFromExternalWallet,\n });\n }, [ctx.isDepositFromExternalWallet]);\n\n const onBackToSwap = () => {\n fireEvent('reset', { clearWalletAddress: false, keepSelectedTokens: true });\n };\n\n if (!!isLoading || (tokensStatus !== 'error' && !ctx.sourceToken)) {\n return <WidgetDepositSkeleton />;\n }\n\n if (isCompatibilityOpen) {\n return (\n <WalletCompatibilityCheck\n providers={providers}\n onMsg={(msg) => {\n switch (msg.type) {\n case 'on_sign_out':\n onWalletSignout?.(intentsAccountType);\n setIsCompatibilityOpen(false);\n break;\n case 'on_close':\n setIsCompatibilityOpen(false);\n break;\n default:\n notReachable(msg.type);\n }\n }}\n />\n );\n }\n\n if (ctx.state === 'transfer_success' && !!transferResult) {\n return (\n <SuccessScreen\n {...transferResult}\n title={t('transfer.success.deposit.title', 'Deposit successful')}\n onMsg={(msg) => {\n switch (msg.type) {\n case 'on_dismiss_success':\n setTransferResult(undefined);\n onBackToSwap();\n break;\n default:\n notReachable(msg.type);\n }\n }}\n />\n );\n }\n\n switch (tokensStatus) {\n case 'error':\n return (\n <BlockingError\n message=\"Couldn't load tokens list.\"\n onClickRetry={refetchTokens}\n />\n );\n\n case 'success': {\n if (tokenModalOpen !== 'none') {\n return (\n <TokensModal\n showBalances\n showChainsSelector\n variant={tokenModalOpen}\n groupTokens={tokenModalOpen === 'source'}\n chainsFilter={\n tokenModalOpen === 'source'\n ? chainsFilter.source\n : chainsFilter.target\n }\n onMsg={(msg) => {\n switch (msg.type) {\n case 'on_select_token':\n onChangeToken(tokenModalOpen, msg.token);\n updateTokenModalState('none');\n onMsg?.({\n type: msg.type,\n token: msg.token,\n variant: tokenModalOpen,\n });\n break;\n case 'on_dismiss_tokens_modal':\n updateTokenModalState('none');\n break;\n default:\n notReachable(msg);\n }\n }}\n />\n );\n }\n\n return (\n <div className=\"gap-sw-2xl flex flex-col\">\n <TokenInput.Source\n showBalance={!ctx.isDepositFromExternalWallet}\n heading={t('tokenInput.heading.source.deposit', 'Sell')}\n onMsg={(msg) => {\n switch (msg.type) {\n case 'on_select_token':\n onChangeToken('source', msg.token);\n break;\n case 'on_change_amount':\n onChangeAmount('source', msg.amount);\n break;\n case 'on_click_select_token':\n updateTokenModalState('source');\n break;\n default:\n notReachable(msg);\n }\n }}\n />\n\n <DepositMethodSwitcher>\n {({ isExternal }) =>\n isExternal ? (\n <div className=\"gap-sw-2xl flex flex-col justify-between\">\n <ExternalDeposit onMsg={handleExternalDepositMsg} />\n {(ctx.state === 'quote_success_internal' ||\n ctx.state === 'quote_success_external') && (\n <Banner\n multiline\n variant=\"warn\"\n message=\"Match the token, amount and network entered above in your wallet. Incorrect values will cause the deposit to fail and be refunded.\"\n />\n )}\n </div>\n ) : null\n }\n </DepositMethodSwitcher>\n\n {!isDirectNearTokenWithdrawal && <SwapQuote />}\n\n <SubmitButton\n providers={providers}\n makeTransfer={makeTransfer}\n label={t('submit.active.deposit', 'Deposit now')}\n onSuccess={(transfer) => {\n setTransferResult(transfer);\n onMsg?.({ type: 'on_transfer_success' });\n }}\n />\n </div>\n );\n }\n\n case 'pending':\n default:\n return <WidgetDepositSkeleton />;\n }\n};\n"],"names":["WidgetDepositContent","providers","onMsg","makeTransfer","isLoading","ctx","useUnsafeSnapshot","t","useTypedTranslation","isDirectNearTokenWithdrawal","useComputedSnapshot","chainsFilter","alchemyApiKey","refetchQuoteInterval","intentsAccountType","onWalletSignout","useConfig","onChangeAmount","onChangeToken","useTokenInputPair","tokensStatus","refetchTokens","useTokens","tokenModalOpen","updateTokenModalState","useTokenModal","isCompatibilityCheckRequired","useIsCompatibilityCheckRequired","isCompatibilityOpen","setIsCompatibilityOpen","useState","useEffect","transferResult","setTransferResult","handleExternalDepositMsg","useCallback","msg","notReachable","fireEvent","useStoreSideEffects","isDebug","onBackToSwap","WidgetDepositSkeleton","jsx","WalletCompatibilityCheck","SuccessScreen","BlockingError","TokensModal","jsxs","TokenInput","DepositMethodSwitcher","isExternal","ExternalDeposit","Banner","SwapQuote","SubmitButton","transfer"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"WidgetDepositContent.js","sources":["../../../src/widgets/WidgetDeposit/WidgetDepositContent.tsx"],"sourcesContent":["import { useCallback, useEffect, useState } from 'react';\n\nimport type { CommonWidgetProps, TokenInputType } from '../types';\nimport { useTokenModal } from '../../hooks/useTokenModal';\nimport { useTypedTranslation } from '../../localisation';\nimport { WidgetDepositSkeleton } from './WidgetDepositSkeleton';\nimport {\n DepositMethodSwitcher,\n ExternalDeposit,\n SubmitButton,\n SuccessScreen,\n SwapQuote,\n TokenInput,\n TokensModal,\n} from '@/features';\n\nimport { Banner, BlockingError } from '@/components';\nimport { WalletCompatibilityCheck } from '@/features/WalletCompatibilityCheck';\n\nimport { useStoreSideEffects } from '@/machine/effects';\nimport { useComputedSnapshot, useUnsafeSnapshot } from '@/machine/snap';\nimport { fireEvent } from '@/machine/events/utils/fireEvent';\n\nimport {\n useIsCompatibilityCheckRequired,\n useTokenInputPair,\n useTokens,\n} from '@/hooks';\nimport { useConfig } from '@/config';\n\nimport { isDebug, notReachable } from '@/utils';\n\nimport type { Token, TransferResult } from '@/types';\n\nexport type Msg =\n | { type: 'on_select_token'; token: Token; variant: TokenInputType }\n | { type: 'on_change_deposit_type'; isExternal: boolean }\n | { type: 'on_transfer_success' }\n | { type: 'on_tokens_modal_toggled'; isOpen: boolean };\n\nexport type Props = CommonWidgetProps<Msg>;\n\nexport const WidgetDepositContent = ({\n providers,\n onMsg,\n makeTransfer,\n isLoading,\n}: Props) => {\n const { ctx } = useUnsafeSnapshot();\n const { t } = useTypedTranslation();\n const { isDirectNearTokenWithdrawal } = useComputedSnapshot();\n const {\n alchemyApiKey,\n refetchQuoteInterval,\n intentsAccountType,\n onWalletSignout,\n } = useConfig();\n\n const { onChangeAmount, onChangeToken } = useTokenInputPair();\n const { status: tokensStatus, refetch: refetchTokens } = useTokens();\n const { tokenModalOpen, updateTokenModalState } = useTokenModal({ onMsg });\n\n const isCompatibilityCheckRequired = useIsCompatibilityCheckRequired();\n const [isCompatibilityOpen, setIsCompatibilityOpen] = useState(false);\n\n useEffect(() => {\n if (isCompatibilityCheckRequired) {\n setIsCompatibilityOpen(true);\n }\n }, [isCompatibilityCheckRequired]);\n\n const [transferResult, setTransferResult] = useState<\n TransferResult | undefined\n >();\n\n const handleExternalDepositMsg = useCallback(\n (\n msg:\n | { type: 'on_transaction_received' }\n | { type: 'on_successful_transfer'; transferResult: TransferResult },\n ) => {\n switch (msg.type) {\n case 'on_successful_transfer':\n setTransferResult(msg.transferResult);\n break;\n case 'on_transaction_received':\n // Transaction received, no action needed\n break;\n default:\n notReachable(msg);\n }\n },\n [],\n );\n\n useEffect(() => {\n fireEvent('reset', { clearWalletAddress: true });\n\n return () => {\n fireEvent('depositTypeSet', { isExternal: false });\n };\n }, []);\n\n useStoreSideEffects({\n debug: isDebug(),\n listenTo: [\n 'checkWalletConnection',\n 'setSourceTokenBalance',\n 'setSourceTokenIntentsTarget',\n ['setDefaultSelectedTokens', { skipIntents: true }],\n ['makeQuote', { message: undefined, refetchQuoteInterval }],\n ['setBalancesUsingAlchemyExt', { alchemyApiKey }],\n ],\n });\n\n useEffect(() => {\n onMsg?.({\n type: 'on_change_deposit_type',\n isExternal: ctx.isDepositFromExternalWallet,\n });\n }, [ctx.isDepositFromExternalWallet]);\n\n const onBackToSwap = () => {\n fireEvent('reset', { clearWalletAddress: false, keepSelectedTokens: true });\n };\n\n if (!!isLoading || (tokensStatus !== 'error' && !ctx.sourceToken)) {\n return <WidgetDepositSkeleton />;\n }\n\n if (isCompatibilityOpen) {\n return (\n <WalletCompatibilityCheck\n providers={providers}\n onMsg={(msg) => {\n switch (msg.type) {\n case 'on_sign_out':\n onWalletSignout?.(intentsAccountType);\n setIsCompatibilityOpen(false);\n break;\n case 'on_close':\n setIsCompatibilityOpen(false);\n break;\n default:\n notReachable(msg.type);\n }\n }}\n />\n );\n }\n\n if (ctx.state === 'transfer_success' && !!transferResult) {\n return (\n <SuccessScreen\n {...transferResult}\n title={t('transfer.success.deposit.title', 'Deposit successful')}\n onMsg={(msg) => {\n switch (msg.type) {\n case 'on_dismiss_success':\n setTransferResult(undefined);\n onBackToSwap();\n break;\n default:\n notReachable(msg.type);\n }\n }}\n />\n );\n }\n\n switch (tokensStatus) {\n case 'error':\n return (\n <BlockingError\n message=\"Couldn't load tokens list.\"\n onClickRetry={refetchTokens}\n />\n );\n\n case 'success': {\n if (tokenModalOpen !== 'none') {\n return (\n <TokensModal\n showBalances\n showChainsSelector\n variant={tokenModalOpen}\n groupTokens={tokenModalOpen === 'source'}\n chainsFilter={\n tokenModalOpen === 'source'\n ? {\n intents: 'none',\n external: ctx.isDepositFromExternalWallet\n ? 'all'\n : 'wallet-supported',\n }\n : { intents: 'all', external: 'none' }\n }\n onMsg={(msg) => {\n switch (msg.type) {\n case 'on_select_token':\n onChangeToken(tokenModalOpen, msg.token);\n updateTokenModalState('none');\n onMsg?.({\n type: msg.type,\n token: msg.token,\n variant: tokenModalOpen,\n });\n break;\n case 'on_dismiss_tokens_modal':\n updateTokenModalState('none');\n break;\n default:\n notReachable(msg);\n }\n }}\n />\n );\n }\n\n return (\n <div className=\"gap-sw-2xl flex flex-col\">\n <TokenInput.Source\n showBalance={!ctx.isDepositFromExternalWallet}\n heading={t('tokenInput.heading.source.deposit', 'Sell')}\n onMsg={(msg) => {\n switch (msg.type) {\n case 'on_select_token':\n onChangeToken('source', msg.token);\n break;\n case 'on_change_amount':\n onChangeAmount('source', msg.amount);\n break;\n case 'on_click_select_token':\n updateTokenModalState('source');\n break;\n default:\n notReachable(msg);\n }\n }}\n />\n\n <DepositMethodSwitcher>\n {({ isExternal }) =>\n isExternal ? (\n <div className=\"gap-sw-2xl flex flex-col justify-between\">\n <ExternalDeposit onMsg={handleExternalDepositMsg} />\n {(ctx.state === 'quote_success_internal' ||\n ctx.state === 'quote_success_external') && (\n <Banner\n multiline\n variant=\"warn\"\n message=\"Match the token, amount and network entered above in your wallet. Incorrect values will cause the deposit to fail and be refunded.\"\n />\n )}\n </div>\n ) : null\n }\n </DepositMethodSwitcher>\n\n {!isDirectNearTokenWithdrawal && <SwapQuote />}\n\n <SubmitButton\n providers={providers}\n makeTransfer={makeTransfer}\n label={t('submit.active.deposit', 'Deposit now')}\n onSuccess={(transfer) => {\n setTransferResult(transfer);\n onMsg?.({ type: 'on_transfer_success' });\n }}\n />\n </div>\n );\n }\n\n case 'pending':\n default:\n return <WidgetDepositSkeleton />;\n }\n};\n"],"names":["WidgetDepositContent","providers","onMsg","makeTransfer","isLoading","ctx","useUnsafeSnapshot","t","useTypedTranslation","isDirectNearTokenWithdrawal","useComputedSnapshot","alchemyApiKey","refetchQuoteInterval","intentsAccountType","onWalletSignout","useConfig","onChangeAmount","onChangeToken","useTokenInputPair","tokensStatus","refetchTokens","useTokens","tokenModalOpen","updateTokenModalState","useTokenModal","isCompatibilityCheckRequired","useIsCompatibilityCheckRequired","isCompatibilityOpen","setIsCompatibilityOpen","useState","useEffect","transferResult","setTransferResult","handleExternalDepositMsg","useCallback","msg","notReachable","fireEvent","useStoreSideEffects","isDebug","onBackToSwap","WidgetDepositSkeleton","jsx","WalletCompatibilityCheck","SuccessScreen","BlockingError","TokensModal","jsxs","TokenInput","DepositMethodSwitcher","isExternal","ExternalDeposit","Banner","SwapQuote","SubmitButton","transfer"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsxs as o, jsx as e } from "react/jsx-runtime";
|
|
2
2
|
import a from "clsx";
|
|
3
3
|
import { SkeletonBox as s } from "../../components/SkeletonBox.js";
|
|
4
|
-
import { y as i } from "../../config-
|
|
4
|
+
import { y as i } from "../../config-0TjbjBo5.js";
|
|
5
5
|
const p = () => {
|
|
6
6
|
const { hideTokenInputHeadings: l } = i();
|
|
7
7
|
return /* @__PURE__ */ o("div", { className: "w-full gap-sw-xl relative flex flex-col", children: [
|