@aurora-is-near/intents-swap-widget 3.17.0 → 3.17.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/components/Input.d.ts +8 -2
- package/dist/components/Input.js +88 -84
- package/dist/components/Input.js.map +1 -1
- package/dist/{config-BMe2x51b.js → config-BVaLnxO9.js} +804 -788
- package/dist/config-BVaLnxO9.js.map +1 -0
- package/dist/config.js +6 -5
- package/dist/config.js.map +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/DepositMethodSwitcher.js +1 -1
- package/dist/features/ErrorBoundary.js +1 -1
- package/dist/features/ExternalDeposit.js +5 -4
- package/dist/features/ExternalDeposit.js.map +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/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 +64 -55
- package/dist/features/TokensModal.js.map +1 -1
- package/dist/features/WalletCompatibilityCheck/WalletCompatibilityModal.js +3 -3
- 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/useHandleKeyDown.d.ts +1 -1
- package/dist/hooks/useHandleKeyDown.js +12 -8
- package/dist/hooks/useHandleKeyDown.js.map +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 +4 -3
- package/dist/hooks/useMakeIntentsTransfer.js.map +1 -1
- package/dist/hooks/useMakeNEARFtTransferCall.js +4 -2
- package/dist/hooks/useMakeNEARFtTransferCall.js.map +1 -1
- package/dist/hooks/useMakeQuote.js +1 -1
- package/dist/hooks/useMakeQuoteTransfer.js +3 -2
- package/dist/hooks/useMakeQuoteTransfer.js.map +1 -1
- package/dist/hooks/useMakeSolanaTransfer.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-Ce9bzNHX.js → index-JGjxyZXI.js} +70 -70
- package/dist/index-JGjxyZXI.js.map +1 -0
- package/dist/index.browser.esm-COWShN0a.js.map +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/utils/checkers/isUserDeniedSigning.d.ts +2 -1
- package/dist/utils/checkers/isUserDeniedSigning.js +6 -4
- package/dist/utils/checkers/isUserDeniedSigning.js.map +1 -1
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.js +26 -24
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/intents/signers/near.d.ts +1 -1
- package/dist/utils/intents/signers/near.js +2 -2
- package/dist/utils/intents/signers/privy.d.ts +1 -1
- package/dist/utils/intents/signers/privy.js +1 -1
- package/dist/utils/intents/signers/solana.d.ts +1 -1
- package/dist/utils/intents/signers/solana.js.map +1 -1
- package/dist/utils/isErrorLikeObject.d.ts +4 -0
- package/dist/utils/isErrorLikeObject.js +5 -0
- package/dist/utils/isErrorLikeObject.js.map +1 -0
- package/dist/utils/near/getNearNep141StorageBalance.js +1 -1
- package/dist/widgets/WidgetDeposit/WidgetDepositContent.js +5 -4
- package/dist/widgets/WidgetDeposit/WidgetDepositContent.js.map +1 -1
- package/dist/widgets/WidgetDeposit/WidgetDepositSkeleton.js +1 -1
- package/dist/widgets/WidgetSwap/WidgetSwapContent.js +5 -4
- package/dist/widgets/WidgetSwap/WidgetSwapContent.js.map +1 -1
- package/dist/widgets/WidgetSwap/WidgetSwapSkeleton.js +1 -1
- package/dist/widgets/WidgetWithdraw/WidgetWithdrawContent.js +5 -4
- package/dist/widgets/WidgetWithdraw/WidgetWithdrawContent.js.map +1 -1
- package/dist/widgets/WidgetWithdraw/WidgetWithdrawSkeleton.js +1 -1
- package/package.json +2 -2
- package/src/components/Input.tsx +111 -96
- package/src/features/TokensModal.tsx +19 -2
- package/src/hooks/useHandleKeyDown.ts +25 -3
- package/src/hooks/useMakeIntentsTransfer.ts +40 -29
- package/src/hooks/useMakeNEARFtTransferCall.ts +10 -0
- package/src/hooks/useMakeQuoteTransfer.ts +2 -1
- package/src/utils/checkers/isUserDeniedSigning.ts +11 -3
- package/src/utils/index.ts +1 -0
- package/src/utils/intents/signers/near.ts +1 -1
- package/src/utils/intents/signers/privy.ts +1 -1
- package/src/utils/intents/signers/solana.ts +1 -1
- package/src/utils/isErrorLikeObject.ts +11 -0
- package/dist/config-BMe2x51b.js.map +0 -1
- package/dist/index-Ce9bzNHX.js.map +0 -1
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { B as o, M as t, Q as s, S as a, o as n, p, T as f, q as m, w as i, W as u, v as x, x as d, r as c, t as l, e as S, d as k, u as T, f as g, g as h, h as B, j as C, i as E, k as M, a as I, c as W, l as w, n as D, m as A, b as v } from "./config-
|
|
1
|
+
import { B as o, M as t, Q as s, S as a, o as n, p, T as f, q as m, w as i, W as u, v as x, x as d, r as c, t as l, e as S, d as k, u as T, f as g, g as h, h as B, j as C, i as E, k as M, a as I, c as W, l as w, n as D, m as A, b as v } from "./config-BVaLnxO9.js";
|
|
2
2
|
import { DEFAULT_RPCS as b } from "./rpcs.js";
|
|
3
3
|
import { Accordion as L } from "./components/Accordion.js";
|
|
4
4
|
import { Badge as R } from "./components/Badge.js";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import "react";
|
|
2
2
|
import "../../logger.js";
|
|
3
3
|
import "../guards/checks/isDryQuote.js";
|
|
4
|
-
import { P as a } from "../../config-
|
|
4
|
+
import { P as a } from "../../config-BVaLnxO9.js";
|
|
5
5
|
import "../guards/index.js";
|
|
6
6
|
import "../machine.js";
|
|
7
7
|
import "../events/utils/fireEvent.js";
|
|
@@ -2,7 +2,7 @@ import "react";
|
|
|
2
2
|
import "../../utils/solana/isSolanaAddress.js";
|
|
3
3
|
import "../../utils/evm/isEvmAddress.js";
|
|
4
4
|
import "../../utils/near/isNearAddress.js";
|
|
5
|
-
import { R as l } from "../../config-
|
|
5
|
+
import { R as l } from "../../config-BVaLnxO9.js";
|
|
6
6
|
import "../../utils/tokens/getMainTokenByChain.js";
|
|
7
7
|
import "../../utils/tokens/getDefaultIntentsToken.js";
|
|
8
8
|
import "../../utils/tokens/getTokenWithHighBalance.js";
|
|
@@ -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-BVaLnxO9.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-BVaLnxO9.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-BVaLnxO9.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-BVaLnxO9.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-BVaLnxO9.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-BVaLnxO9.js";
|
|
9
9
|
import "./checkers/isAmountChangedFromQuote.js";
|
|
10
10
|
import "ethers";
|
|
11
11
|
import "../machine.js";
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
|
|
1
|
+
import { ErrorLikeObject } from '../isErrorLikeObject';
|
|
2
|
+
export declare const isUserDeniedSigning: (error: ErrorLikeObject) => boolean;
|
|
@@ -1,13 +1,15 @@
|
|
|
1
|
-
const
|
|
1
|
+
const n = [
|
|
2
2
|
"user denied",
|
|
3
3
|
"user closed",
|
|
4
4
|
"user rejected",
|
|
5
5
|
"user cancelled",
|
|
6
6
|
"user declined"
|
|
7
|
-
],
|
|
8
|
-
(
|
|
7
|
+
], c = (e) => n.some(
|
|
8
|
+
(s) => e.message.toLowerCase().includes(s)
|
|
9
|
+
) || "cause" in e && n.some(
|
|
10
|
+
(s) => `${e.cause}`.toLowerCase().includes(s)
|
|
9
11
|
);
|
|
10
12
|
export {
|
|
11
|
-
|
|
13
|
+
c as isUserDeniedSigning
|
|
12
14
|
};
|
|
13
15
|
//# sourceMappingURL=isUserDeniedSigning.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isUserDeniedSigning.js","sources":["../../../src/utils/checkers/isUserDeniedSigning.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"file":"isUserDeniedSigning.js","sources":["../../../src/utils/checkers/isUserDeniedSigning.ts"],"sourcesContent":["import type { ErrorLikeObject } from '../isErrorLikeObject';\n\nconst errorVariations = [\n 'user denied',\n 'user closed',\n 'user rejected',\n 'user cancelled',\n 'user declined',\n];\n\nexport const isUserDeniedSigning = (error: ErrorLikeObject) => {\n return (\n errorVariations.some((variation) =>\n error.message.toLowerCase().includes(variation),\n ) ||\n ('cause' in error &&\n errorVariations.some((variation) =>\n `${error.cause}`.toLowerCase().includes(variation),\n ))\n );\n};\n"],"names":["errorVariations","isUserDeniedSigning","error","variation"],"mappings":"AAEA,MAAMA,IAAkB;AAAA,EACtB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAEaC,IAAsB,CAACC,MAEhCF,EAAgB;AAAA,EAAK,CAACG,MACpBD,EAAM,QAAQ,YAAA,EAAc,SAASC,CAAS;AAAA,KAE/C,WAAWD,KACVF,EAAgB;AAAA,EAAK,CAACG,MACpB,GAAGD,EAAM,KAAK,GAAG,YAAA,EAAc,SAASC,CAAS;AAAA;"}
|
package/dist/utils/index.d.ts
CHANGED
package/dist/utils/index.js
CHANGED
|
@@ -1,43 +1,45 @@
|
|
|
1
1
|
import { isDebug as e } from "./checkers/isDebug.js";
|
|
2
2
|
import { isNotEmptyAmount as m } from "./checkers/isNotEmptyAmount.js";
|
|
3
|
-
import { isValidChain as
|
|
3
|
+
import { isValidChain as p } from "./checkers/isValidChain.js";
|
|
4
4
|
import { isEth as x } from "./evm/isEth.js";
|
|
5
5
|
import { isEvmChain as i } from "./evm/isEvmChain.js";
|
|
6
6
|
import { isEvmToken as T } from "./evm/isEvmToken.js";
|
|
7
|
-
import { isEvmBaseToken as
|
|
8
|
-
import { getEvmTokenBalance as
|
|
9
|
-
import { getEvmMainTokenBalance as
|
|
7
|
+
import { isEvmBaseToken as c } from "./evm/isEvmBaseToken.js";
|
|
8
|
+
import { getEvmTokenBalance as u } from "./evm/getEvmTokenBalance.js";
|
|
9
|
+
import { getEvmMainTokenBalance as l } from "./evm/getEvmMainTokenBalance.js";
|
|
10
10
|
import { formatBigToHuman as v } from "./formatters/formatBigToHuman.js";
|
|
11
|
-
import { formatHumanToBig as
|
|
11
|
+
import { formatHumanToBig as b } from "./formatters/formatHumanToBig.js";
|
|
12
12
|
import { formatTinyNumber as A } from "./formatters/formatTinyNumber.js";
|
|
13
13
|
import { formatTxHash as y } from "./formatters/formatTxHash.js";
|
|
14
|
-
import { formatUsdAmount as
|
|
15
|
-
import { getExplorerUrl as
|
|
16
|
-
import { getTransactionLink as
|
|
17
|
-
import { formatAddressTruncate as
|
|
18
|
-
import { cn as
|
|
19
|
-
import { noop as
|
|
20
|
-
import { notReachable as
|
|
14
|
+
import { formatUsdAmount as L } from "./formatters/formatUsdAmount.js";
|
|
15
|
+
import { getExplorerUrl as U } from "./formatters/getExplorerUrl.js";
|
|
16
|
+
import { getTransactionLink as D } from "./formatters/getTransactionLink.js";
|
|
17
|
+
import { formatAddressTruncate as O } from "./formatters/formatAddressTruncate.js";
|
|
18
|
+
import { cn as V } from "./cn.js";
|
|
19
|
+
import { noop as w } from "./noop.js";
|
|
20
|
+
import { notReachable as F } from "./notReachable.js";
|
|
21
|
+
import { isErrorLikeObject as I } from "./isErrorLikeObject.js";
|
|
21
22
|
export {
|
|
22
|
-
|
|
23
|
-
|
|
23
|
+
V as cn,
|
|
24
|
+
O as formatAddressTruncate,
|
|
24
25
|
v as formatBigToHuman,
|
|
25
|
-
|
|
26
|
+
b as formatHumanToBig,
|
|
26
27
|
A as formatTinyNumber,
|
|
27
28
|
y as formatTxHash,
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
29
|
+
L as formatUsdAmount,
|
|
30
|
+
l as getEvmMainTokenBalance,
|
|
31
|
+
u as getEvmTokenBalance,
|
|
32
|
+
U as getExplorerUrl,
|
|
33
|
+
D as getTransactionLink,
|
|
33
34
|
e as isDebug,
|
|
35
|
+
I as isErrorLikeObject,
|
|
34
36
|
x as isEth,
|
|
35
|
-
|
|
37
|
+
c as isEvmBaseToken,
|
|
36
38
|
i as isEvmChain,
|
|
37
39
|
T as isEvmToken,
|
|
38
40
|
m as isNotEmptyAmount,
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
41
|
+
p as isValidChain,
|
|
42
|
+
w as noop,
|
|
43
|
+
F as notReachable
|
|
42
44
|
};
|
|
43
45
|
//# sourceMappingURL=index.js.map
|
package/dist/utils/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { createIntentSignerNEP413 } from '@defuse-protocol/
|
|
1
|
+
import { createIntentSignerNEP413 } from '@defuse-protocol/intents-sdk';
|
|
2
2
|
import { NearWalletBase as NearWallet } from '@hot-labs/near-connect/build/types/wallet';
|
|
3
3
|
type Args = {
|
|
4
4
|
getProvider: () => NearWallet;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import "../../../index-DEq3oXQF.js";
|
|
2
|
-
import "@defuse-protocol/
|
|
3
|
-
import { a2 as o } from "../../../config-
|
|
2
|
+
import "@defuse-protocol/intents-sdk";
|
|
3
|
+
import { a2 as o } from "../../../config-BVaLnxO9.js";
|
|
4
4
|
export {
|
|
5
5
|
o as createNearWalletSigner
|
|
6
6
|
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { createIntentSignerViem } from '@defuse-protocol/
|
|
1
|
+
import { createIntentSignerViem } from '@defuse-protocol/intents-sdk';
|
|
2
2
|
import { EvmProvider } from '../../../types';
|
|
3
3
|
type SignIntentResult = ReturnType<ReturnType<typeof createIntentSignerViem>['signIntent']>;
|
|
4
4
|
type SignIntentPayload = Parameters<ReturnType<typeof createIntentSignerViem>['signIntent']>[0];
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { createIntentSignerViem } from '@defuse-protocol/
|
|
1
|
+
import { createIntentSignerViem } from '@defuse-protocol/intents-sdk';
|
|
2
2
|
import { SolanaProvider } from '../../../types/providers';
|
|
3
3
|
type SignIntentResult = ReturnType<ReturnType<typeof createIntentSignerViem>['signIntent']>;
|
|
4
4
|
type SignIntentPayload = Parameters<ReturnType<typeof createIntentSignerViem>['signIntent']>[0];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"solana.js","sources":["../../../../src/utils/intents/signers/solana.ts"],"sourcesContent":["import { utils } from '@defuse-protocol/internal-utils';\nimport { createIntentSignerViem } from '@defuse-protocol/
|
|
1
|
+
{"version":3,"file":"solana.js","sources":["../../../../src/utils/intents/signers/solana.ts"],"sourcesContent":["import { utils } from '@defuse-protocol/internal-utils';\nimport { createIntentSignerViem } from '@defuse-protocol/intents-sdk';\nimport bs58 from 'bs58';\nimport { SolanaProvider } from '../../../types/providers';\n\ntype SignIntentResult = ReturnType<\n ReturnType<typeof createIntentSignerViem>['signIntent']\n>;\ntype SignIntentPayload = Parameters<\n ReturnType<typeof createIntentSignerViem>['signIntent']\n>[0];\n\nexport class IntentSignerSolana\n implements ReturnType<typeof createIntentSignerViem>\n{\n constructor(\n private account: { walletAddress: string },\n private solanaWallet: SolanaProvider,\n ) {}\n\n async signIntent(intent: SignIntentPayload): SignIntentResult {\n const message = JSON.stringify({\n verifying_contract: intent.verifying_contract,\n deadline: intent.deadline,\n nonce: intent.nonce,\n intents: intent.intents,\n signer_id:\n intent.signer_id ??\n utils.authHandleToIntentsUserId({\n identifier: this.account.walletAddress,\n method: 'solana',\n }),\n });\n\n const signature = await this.solanaWallet.signMessage({\n message: new TextEncoder().encode(message),\n });\n\n return {\n payload: message,\n public_key: this.account.walletAddress,\n standard: 'raw_ed25519',\n signature: bs58.encode(signature),\n };\n }\n}\n"],"names":["IntentSignerSolana","account","solanaWallet","intent","message","utils","signature","bs58"],"mappings":";;AAYO,MAAMA,EAEb;AAAA,EACE,YACUC,GACAC,GACR;AAFQ,SAAA,UAAAD,GACA,KAAA,eAAAC;AAAA,EACP;AAAA,EAEH,MAAM,WAAWC,GAA6C;AAC5D,UAAMC,IAAU,KAAK,UAAU;AAAA,MAC7B,oBAAoBD,EAAO;AAAA,MAC3B,UAAUA,EAAO;AAAA,MACjB,OAAOA,EAAO;AAAA,MACd,SAASA,EAAO;AAAA,MAChB,WACEA,EAAO,aACPE,EAAM,0BAA0B;AAAA,QAC9B,YAAY,KAAK,QAAQ;AAAA,QACzB,QAAQ;AAAA,MAAA,CACT;AAAA,IAAA,CACJ,GAEKC,IAAY,MAAM,KAAK,aAAa,YAAY;AAAA,MACpD,SAAS,IAAI,cAAc,OAAOF,CAAO;AAAA,IAAA,CAC1C;AAED,WAAO;AAAA,MACL,SAASA;AAAA,MACT,YAAY,KAAK,QAAQ;AAAA,MACzB,UAAU;AAAA,MACV,WAAWG,EAAK,OAAOD,CAAS;AAAA,IAAA;AAAA,EAEpC;AACF;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isErrorLikeObject.js","sources":["../../src/utils/isErrorLikeObject.ts"],"sourcesContent":["export type ErrorLikeObject = Error | { message: string };\n\nexport const isErrorLikeObject = (error: unknown): error is ErrorLikeObject => {\n return (\n error instanceof Error ||\n (typeof error === 'object' &&\n error !== null &&\n 'message' in error &&\n typeof error.message === 'string')\n );\n};\n"],"names":["isErrorLikeObject","error"],"mappings":"AAEO,MAAMA,IAAoB,CAACC,MAE9BA,aAAiB,SAChB,OAAOA,KAAU,YAChBA,MAAU,QACV,aAAaA,KACb,OAAOA,EAAM,WAAY;"}
|
|
@@ -3,7 +3,7 @@ import { useState as y, useEffect as l, useCallback as B } from "react";
|
|
|
3
3
|
import { useTokenModal as R } from "../../hooks/useTokenModal.js";
|
|
4
4
|
import { useTypedTranslation as A } from "../../localisation.js";
|
|
5
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-
|
|
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-BVaLnxO9.js";
|
|
7
7
|
import "@tanstack/react-query";
|
|
8
8
|
import "@headlessui/react";
|
|
9
9
|
import "framer-motion";
|
|
@@ -13,6 +13,7 @@ import "../../utils/cn.js";
|
|
|
13
13
|
import "../../constants/chains.js";
|
|
14
14
|
import { notReachable as r } from "../../utils/notReachable.js";
|
|
15
15
|
import "use-debounce";
|
|
16
|
+
import "../../components/Input.js";
|
|
16
17
|
import { Banner as P } from "../../components/Banner.js";
|
|
17
18
|
import { isDebug as Y } from "../../utils/checkers/isDebug.js";
|
|
18
19
|
import "viem";
|
|
@@ -31,7 +32,7 @@ import "../../components/Notes.js";
|
|
|
31
32
|
import "zod";
|
|
32
33
|
import "../../utils/near/rpc.js";
|
|
33
34
|
import "../../index-DEq3oXQF.js";
|
|
34
|
-
import "@defuse-protocol/
|
|
35
|
+
import "@defuse-protocol/intents-sdk";
|
|
35
36
|
import "change-case";
|
|
36
37
|
import "@defuse-protocol/internal-utils";
|
|
37
38
|
import "bs58";
|
|
@@ -43,7 +44,7 @@ import "viem/chains";
|
|
|
43
44
|
import { useTokenInputPair as X } from "../../hooks/useTokenInputPair.js";
|
|
44
45
|
import { useIsCompatibilityCheckRequired as Z } from "../../hooks/useIsCompatibilityCheckRequired.js";
|
|
45
46
|
import "browser-or-node";
|
|
46
|
-
const
|
|
47
|
+
const ze = ({
|
|
47
48
|
providers: p,
|
|
48
49
|
onMsg: n,
|
|
49
50
|
makeTransfer: w,
|
|
@@ -219,6 +220,6 @@ const Ye = ({
|
|
|
219
220
|
}
|
|
220
221
|
};
|
|
221
222
|
export {
|
|
222
|
-
|
|
223
|
+
ze as WidgetDepositContent
|
|
223
224
|
};
|
|
224
225
|
//# 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\ntype 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 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 message={[\n 'Your deposit has been successfully completed,',\n 'and the funds are now available in your account.',\n ]}\n onMsg={(msg) => {\n switch (msg.type) {\n case 'on_dismiss_success':\n setTransferResult(undefined);\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","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\ntype 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 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 message={[\n 'Your deposit has been successfully completed,',\n 'and the funds are now available in your account.',\n ]}\n onMsg={(msg) => {\n switch (msg.type) {\n case 'on_dismiss_success':\n setTransferResult(undefined);\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","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-BVaLnxO9.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: [
|
|
@@ -3,7 +3,7 @@ import { useState as b, useEffect as y } from "react";
|
|
|
3
3
|
import { useTokenModal as R } from "../../hooks/useTokenModal.js";
|
|
4
4
|
import { WidgetSwapSkeleton as S } from "./WidgetSwapSkeleton.js";
|
|
5
5
|
import { useTypedTranslation as D } from "../../localisation.js";
|
|
6
|
-
import { b as N, u as O, y as Q, n as j, c as q, p as w, o as F, S as U } from "../../config-
|
|
6
|
+
import { b as N, u as O, y as Q, n as j, c as q, p as w, o as F, S as U } from "../../config-BVaLnxO9.js";
|
|
7
7
|
import "@tanstack/react-query";
|
|
8
8
|
import "@headlessui/react";
|
|
9
9
|
import "framer-motion";
|
|
@@ -26,7 +26,7 @@ import { fireEvent as H } from "../../machine/events/utils/fireEvent.js";
|
|
|
26
26
|
import "zod";
|
|
27
27
|
import "../../utils/near/rpc.js";
|
|
28
28
|
import "../../index-DEq3oXQF.js";
|
|
29
|
-
import "@defuse-protocol/
|
|
29
|
+
import "@defuse-protocol/intents-sdk";
|
|
30
30
|
import "change-case";
|
|
31
31
|
import "@defuse-protocol/internal-utils";
|
|
32
32
|
import "bs58";
|
|
@@ -39,10 +39,11 @@ import { useIsCompatibilityCheckRequired as L } from "../../hooks/useIsCompatibi
|
|
|
39
39
|
import "browser-or-node";
|
|
40
40
|
import { BlockingError as V } from "../../components/BlockingError.js";
|
|
41
41
|
import "copy-text-to-clipboard";
|
|
42
|
+
import "../../components/Input.js";
|
|
42
43
|
import "../../components/InputAmount.js";
|
|
43
44
|
import "../../components/Notes.js";
|
|
44
45
|
import { WalletCompatibilityCheck as X } from "../../features/WalletCompatibilityCheck/index.js";
|
|
45
|
-
const
|
|
46
|
+
const Pe = ({
|
|
46
47
|
providers: m,
|
|
47
48
|
makeTransfer: T,
|
|
48
49
|
onMsg: c,
|
|
@@ -236,6 +237,6 @@ const Ke = ({
|
|
|
236
237
|
}
|
|
237
238
|
};
|
|
238
239
|
export {
|
|
239
|
-
|
|
240
|
+
Pe as WidgetSwapContent
|
|
240
241
|
};
|
|
241
242
|
//# sourceMappingURL=WidgetSwapContent.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WidgetSwapContent.js","sources":["../../../src/widgets/WidgetSwap/WidgetSwapContent.tsx"],"sourcesContent":["import { useEffect, useState } from 'react';\n\nimport type { CommonWidgetProps, TokenInputType } from '../types';\nimport { useTokenModal } from '../../hooks/useTokenModal';\nimport { WidgetSwapSkeleton } from './WidgetSwapSkeleton';\nimport { useTypedTranslation } from '../../localisation';\nimport {\n SendAddress,\n SubmitButton,\n SuccessScreen,\n SwapDirectionSwitcher,\n SwapQuote,\n TokenInput,\n TokensModal,\n} from '@/features';\n\nimport { 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\ntype Msg =\n | { type: 'on_tokens_modal_toggled'; isOpen: boolean }\n | { type: 'on_select_token'; token: Token; variant: TokenInputType }\n | { type: 'on_transfer_success' };\n\nexport type Props = CommonWidgetProps<Msg> & {\n isOneWay?: boolean;\n};\n\nexport const WidgetSwapContent = ({\n providers,\n makeTransfer,\n onMsg,\n isLoading,\n isOneWay,\n}: Props) => {\n const { ctx } = useUnsafeSnapshot();\n const { isDirectNearTokenWithdrawal } = useComputedSnapshot();\n const {\n chainsFilter,\n alchemyApiKey,\n refetchQuoteInterval,\n intentsAccountType,\n onWalletSignout,\n } = useConfig();\n\n const { t } = useTypedTranslation();\n const { status: tokensStatus, refetch: refetchTokens } = useTokens();\n const { tokenModalOpen, updateTokenModalState } = useTokenModal({ onMsg });\n const { onChangeAmount, onChangeToken, lastChangedInput } =\n useTokenInputPair();\n\n const isCompatibilityCheckRequired = useIsCompatibilityCheckRequired();\n const [isCompatibilityOpen, setIsCompatibilityOpen] = useState(\n isCompatibilityCheckRequired,\n );\n\n useEffect(() => {\n if (isCompatibilityCheckRequired) {\n setIsCompatibilityOpen(isCompatibilityCheckRequired);\n }\n }, [isCompatibilityCheckRequired]);\n\n const [transferResult, setTransferResult] = useState<\n TransferResult | undefined\n >();\n\n useEffect(() => {\n fireEvent('reset', { clearWalletAddress: true });\n }, []);\n\n useStoreSideEffects({\n debug: isDebug(),\n listenTo: [\n 'checkWalletConnection',\n 'setSourceTokenBalance',\n ['setDefaultSelectedTokens', { skipIntents: false }],\n [\n 'makeQuote',\n {\n message: undefined,\n type: lastChangedInput === 'target' ? 'exact_out' : 'exact_in',\n refetchQuoteInterval,\n },\n ],\n ['setBalancesUsingAlchemyExt', { alchemyApiKey }],\n ],\n });\n\n if (!!isLoading || (tokensStatus !== 'error' && !ctx.sourceToken)) {\n return <WidgetSwapSkeleton />;\n }\n\n if (isCompatibilityCheckRequired && 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 message={[\n 'Your swap has been successfully completed,',\n 'and the funds are now available in your account.',\n ]}\n onMsg={(msg) => {\n switch (msg.type) {\n case 'on_dismiss_success':\n setTransferResult(undefined);\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 <div className=\"gap-[10px] relative flex flex-col\">\n <TokenInput.Source\n heading={t('tokenInput.heading.source.swap', 'Sell')}\n isChanging={lastChangedInput === 'source'}\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 <SwapDirectionSwitcher disabled={isOneWay} />\n\n <TokenInput.Target\n heading={t('tokenInput.heading.target.swap', 'Buy')}\n isChanging={lastChangedInput === 'target'}\n onMsg={(msg) => {\n switch (msg.type) {\n case 'on_select_token':\n onChangeToken('target', msg.token);\n break;\n case 'on_change_amount':\n onChangeAmount('target', msg.amount);\n break;\n case 'on_click_select_token':\n updateTokenModalState('target');\n break;\n default:\n notReachable(msg);\n }\n }}\n />\n </div>\n\n {!!ctx.walletAddress &&\n ctx.targetToken &&\n !ctx.targetToken.isIntent && (\n <SendAddress\n onMsg={(msg) => {\n switch (msg.type) {\n case 'on_change_send_address':\n break;\n default:\n notReachable(msg.type, { throwError: false });\n }\n }}\n />\n )}\n\n {!isDirectNearTokenWithdrawal && <SwapQuote />}\n\n <SubmitButton\n providers={providers}\n makeTransfer={makeTransfer}\n label={\n ctx.sourceToken?.isIntent && ctx.targetToken?.isIntent\n ? t('submit.active.swap', 'Swap')\n : t('submit.active.intentsSwap', 'Swap & send')\n }\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 <WidgetSwapSkeleton />;\n }\n};\n"],"names":["WidgetSwapContent","providers","makeTransfer","onMsg","isLoading","isOneWay","ctx","useUnsafeSnapshot","isDirectNearTokenWithdrawal","useComputedSnapshot","chainsFilter","alchemyApiKey","refetchQuoteInterval","intentsAccountType","onWalletSignout","useConfig","t","useTypedTranslation","tokensStatus","refetchTokens","useTokens","tokenModalOpen","updateTokenModalState","useTokenModal","onChangeAmount","onChangeToken","lastChangedInput","useTokenInputPair","isCompatibilityCheckRequired","useIsCompatibilityCheckRequired","isCompatibilityOpen","setIsCompatibilityOpen","useState","useEffect","transferResult","setTransferResult","fireEvent","useStoreSideEffects","isDebug","WidgetSwapSkeleton","jsx","WalletCompatibilityCheck","msg","notReachable","SuccessScreen","BlockingError","TokensModal","jsxs","TokenInput","SwapDirectionSwitcher","SendAddress","SwapQuote","SubmitButton","transfer"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"WidgetSwapContent.js","sources":["../../../src/widgets/WidgetSwap/WidgetSwapContent.tsx"],"sourcesContent":["import { useEffect, useState } from 'react';\n\nimport type { CommonWidgetProps, TokenInputType } from '../types';\nimport { useTokenModal } from '../../hooks/useTokenModal';\nimport { WidgetSwapSkeleton } from './WidgetSwapSkeleton';\nimport { useTypedTranslation } from '../../localisation';\nimport {\n SendAddress,\n SubmitButton,\n SuccessScreen,\n SwapDirectionSwitcher,\n SwapQuote,\n TokenInput,\n TokensModal,\n} from '@/features';\n\nimport { 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\ntype Msg =\n | { type: 'on_tokens_modal_toggled'; isOpen: boolean }\n | { type: 'on_select_token'; token: Token; variant: TokenInputType }\n | { type: 'on_transfer_success' };\n\nexport type Props = CommonWidgetProps<Msg> & {\n isOneWay?: boolean;\n};\n\nexport const WidgetSwapContent = ({\n providers,\n makeTransfer,\n onMsg,\n isLoading,\n isOneWay,\n}: Props) => {\n const { ctx } = useUnsafeSnapshot();\n const { isDirectNearTokenWithdrawal } = useComputedSnapshot();\n const {\n chainsFilter,\n alchemyApiKey,\n refetchQuoteInterval,\n intentsAccountType,\n onWalletSignout,\n } = useConfig();\n\n const { t } = useTypedTranslation();\n const { status: tokensStatus, refetch: refetchTokens } = useTokens();\n const { tokenModalOpen, updateTokenModalState } = useTokenModal({ onMsg });\n const { onChangeAmount, onChangeToken, lastChangedInput } =\n useTokenInputPair();\n\n const isCompatibilityCheckRequired = useIsCompatibilityCheckRequired();\n const [isCompatibilityOpen, setIsCompatibilityOpen] = useState(\n isCompatibilityCheckRequired,\n );\n\n useEffect(() => {\n if (isCompatibilityCheckRequired) {\n setIsCompatibilityOpen(isCompatibilityCheckRequired);\n }\n }, [isCompatibilityCheckRequired]);\n\n const [transferResult, setTransferResult] = useState<\n TransferResult | undefined\n >();\n\n useEffect(() => {\n fireEvent('reset', { clearWalletAddress: true });\n }, []);\n\n useStoreSideEffects({\n debug: isDebug(),\n listenTo: [\n 'checkWalletConnection',\n 'setSourceTokenBalance',\n ['setDefaultSelectedTokens', { skipIntents: false }],\n [\n 'makeQuote',\n {\n message: undefined,\n type: lastChangedInput === 'target' ? 'exact_out' : 'exact_in',\n refetchQuoteInterval,\n },\n ],\n ['setBalancesUsingAlchemyExt', { alchemyApiKey }],\n ],\n });\n\n if (!!isLoading || (tokensStatus !== 'error' && !ctx.sourceToken)) {\n return <WidgetSwapSkeleton />;\n }\n\n if (isCompatibilityCheckRequired && 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 message={[\n 'Your swap has been successfully completed,',\n 'and the funds are now available in your account.',\n ]}\n onMsg={(msg) => {\n switch (msg.type) {\n case 'on_dismiss_success':\n setTransferResult(undefined);\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 <div className=\"gap-[10px] relative flex flex-col\">\n <TokenInput.Source\n heading={t('tokenInput.heading.source.swap', 'Sell')}\n isChanging={lastChangedInput === 'source'}\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 <SwapDirectionSwitcher disabled={isOneWay} />\n\n <TokenInput.Target\n heading={t('tokenInput.heading.target.swap', 'Buy')}\n isChanging={lastChangedInput === 'target'}\n onMsg={(msg) => {\n switch (msg.type) {\n case 'on_select_token':\n onChangeToken('target', msg.token);\n break;\n case 'on_change_amount':\n onChangeAmount('target', msg.amount);\n break;\n case 'on_click_select_token':\n updateTokenModalState('target');\n break;\n default:\n notReachable(msg);\n }\n }}\n />\n </div>\n\n {!!ctx.walletAddress &&\n ctx.targetToken &&\n !ctx.targetToken.isIntent && (\n <SendAddress\n onMsg={(msg) => {\n switch (msg.type) {\n case 'on_change_send_address':\n break;\n default:\n notReachable(msg.type, { throwError: false });\n }\n }}\n />\n )}\n\n {!isDirectNearTokenWithdrawal && <SwapQuote />}\n\n <SubmitButton\n providers={providers}\n makeTransfer={makeTransfer}\n label={\n ctx.sourceToken?.isIntent && ctx.targetToken?.isIntent\n ? t('submit.active.swap', 'Swap')\n : t('submit.active.intentsSwap', 'Swap & send')\n }\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 <WidgetSwapSkeleton />;\n }\n};\n"],"names":["WidgetSwapContent","providers","makeTransfer","onMsg","isLoading","isOneWay","ctx","useUnsafeSnapshot","isDirectNearTokenWithdrawal","useComputedSnapshot","chainsFilter","alchemyApiKey","refetchQuoteInterval","intentsAccountType","onWalletSignout","useConfig","t","useTypedTranslation","tokensStatus","refetchTokens","useTokens","tokenModalOpen","updateTokenModalState","useTokenModal","onChangeAmount","onChangeToken","lastChangedInput","useTokenInputPair","isCompatibilityCheckRequired","useIsCompatibilityCheckRequired","isCompatibilityOpen","setIsCompatibilityOpen","useState","useEffect","transferResult","setTransferResult","fireEvent","useStoreSideEffects","isDebug","WidgetSwapSkeleton","jsx","WalletCompatibilityCheck","msg","notReachable","SuccessScreen","BlockingError","TokensModal","jsxs","TokenInput","SwapDirectionSwitcher","SendAddress","SwapQuote","SubmitButton","transfer"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsxs as a, jsx as l } from "react/jsx-runtime";
|
|
2
2
|
import o 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-BVaLnxO9.js";
|
|
5
5
|
const m = () => {
|
|
6
6
|
const { hideTokenInputHeadings: e } = i();
|
|
7
7
|
return /* @__PURE__ */ a("div", { className: "w-full gap-sw-lg relative flex flex-col", children: [
|