@0xsquid/react-hooks 2.1.10 → 3.0.0-beta.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/core/constants.js +97 -143
- package/dist/core/constants.js.map +1 -1
- package/dist/core/types/error.d.ts +1 -2
- package/dist/core/types/error.js.map +1 -1
- package/dist/core/types/wallet.d.ts +1 -1
- package/dist/core/wagmiConfig.d.ts +7 -0
- package/dist/core/wagmiConfig.js +52 -0
- package/dist/core/wagmiConfig.js.map +1 -0
- package/dist/hooks/tokens/useBalance.d.ts +4 -14
- package/dist/hooks/tokens/useBalance.js +32 -54
- package/dist/hooks/tokens/useBalance.js.map +1 -1
- package/dist/hooks/tokens/useMultiChainBalance.d.ts +1 -1
- package/dist/hooks/tokens/useMultiChainBalance.js +1 -2
- package/dist/hooks/tokens/useMultiChainBalance.js.map +1 -1
- package/dist/hooks/transaction/useApproval.js +57 -39
- package/dist/hooks/transaction/useApproval.js.map +1 -1
- package/dist/hooks/transaction/useEstimate.d.ts +13 -15
- package/dist/hooks/transaction/useEstimate.js +21 -144
- package/dist/hooks/transaction/useEstimate.js.map +1 -1
- package/dist/hooks/transaction/useExecuteTransaction.d.ts +2 -2
- package/dist/hooks/transaction/useExecuteTransaction.js +13 -9
- package/dist/hooks/transaction/useExecuteTransaction.js.map +1 -1
- package/dist/hooks/transaction/useGetRoute.js +4 -5
- package/dist/hooks/transaction/useGetRoute.js.map +1 -1
- package/dist/hooks/wallet/useAddToken.js +9 -7
- package/dist/hooks/wallet/useAddToken.js.map +1 -1
- package/dist/hooks/wallet/useGnosisContext.js +1 -2
- package/dist/hooks/wallet/useGnosisContext.js.map +1 -1
- package/dist/hooks/wallet/useMultiChainWallet.js +11 -11
- package/dist/hooks/wallet/useMultiChainWallet.js.map +1 -1
- package/dist/hooks/wallet/useSigner.d.ts +8 -0
- package/dist/hooks/wallet/useSigner.js +21 -0
- package/dist/hooks/wallet/useSigner.js.map +1 -0
- package/dist/hooks/wallet/useWallet.d.ts +1 -1
- package/dist/hooks/wallet/useWallet.js +1 -1
- package/dist/hooks/wallet/useWallet.js.map +1 -1
- package/dist/provider/index.js +18 -61
- package/dist/provider/index.js.map +1 -1
- package/dist/services/external/ens.js +2 -2
- package/dist/services/external/ens.js.map +1 -1
- package/dist/services/external/rpcService.d.ts +0 -6
- package/dist/services/external/rpcService.js +10 -61
- package/dist/services/external/rpcService.js.map +1 -1
- package/dist/services/external/secretService.js +3 -3
- package/dist/services/external/secretService.js.map +1 -1
- package/dist/services/internal/assetsService.d.ts +2 -0
- package/dist/services/internal/assetsService.js +2 -0
- package/dist/services/internal/assetsService.js.map +1 -1
- package/dist/services/internal/estimateService.d.ts +125 -0
- package/dist/services/internal/estimateService.js +201 -0
- package/dist/services/internal/estimateService.js.map +1 -0
- package/dist/services/internal/numberService.d.ts +17 -2
- package/dist/services/internal/numberService.js +52 -5
- package/dist/services/internal/numberService.js.map +1 -1
- package/dist/services/internal/walletService.d.ts +2 -2
- package/dist/services/internal/walletService.js +21 -14
- package/dist/services/internal/walletService.js.map +1 -1
- package/dist/tests/estimateService.test.d.ts +1 -0
- package/dist/tests/estimateService.test.js +92 -0
- package/dist/tests/estimateService.test.js.map +1 -0
- package/dist/tests/walletService.test.js +18 -0
- package/dist/tests/walletService.test.js.map +1 -1
- package/package.json +14 -14
- package/dist/connectors/ExodusConnector.d.ts +0 -4
- package/dist/connectors/ExodusConnector.js +0 -6
- package/dist/connectors/ExodusConnector.js.map +0 -1
- package/dist/connectors/LedgerLiveConnector.d.ts +0 -40
- package/dist/connectors/LedgerLiveConnector.js +0 -177
- package/dist/connectors/LedgerLiveConnector.js.map +0 -1
- package/dist/contracts/typechain/factories/ERC20__factory.d.ts +0 -56
- package/dist/contracts/typechain/factories/ERC20__factory.js +0 -324
- package/dist/contracts/typechain/factories/ERC20__factory.js.map +0 -1
|
@@ -2,9 +2,9 @@ import { ChainType } from "@0xsquid/squid-types";
|
|
|
2
2
|
import { SigningCosmWasmClient } from "@cosmjs/cosmwasm-stargate";
|
|
3
3
|
import { useMutation, useQueryClient } from "@tanstack/react-query";
|
|
4
4
|
import { TxRaw } from "cosmjs-types/cosmos/tx/v1beta1/tx";
|
|
5
|
-
import {
|
|
5
|
+
import { isError } from "ethers";
|
|
6
6
|
import { useCallback, useMemo } from "react";
|
|
7
|
-
import { useAccount
|
|
7
|
+
import { useAccount } from "wagmi";
|
|
8
8
|
import { useCosmosContext } from "../../core/providers/CosmosProvider";
|
|
9
9
|
import { getPrefixKey, QueryKeys } from "../../core/queries/queries-keys";
|
|
10
10
|
import { TransactionErrorType } from "../../core/types/error";
|
|
@@ -20,6 +20,7 @@ import { useGnosisContext } from "../../hooks/wallet/useGnosisContext";
|
|
|
20
20
|
import { useMultiChainWallet } from "../../hooks/wallet/useMultiChainWallet";
|
|
21
21
|
import { WidgetEvents } from "../../services/internal/eventService";
|
|
22
22
|
import { useHistory } from "../user/useHistory";
|
|
23
|
+
import { useSigner } from "../wallet/useSigner";
|
|
23
24
|
var ExecutionState;
|
|
24
25
|
(function (ExecutionState) {
|
|
25
26
|
ExecutionState["NOT_ENOUGH_BALANCE"] = "NOT_ENOUGH_BALANCE";
|
|
@@ -27,7 +28,7 @@ var ExecutionState;
|
|
|
27
28
|
ExecutionState["READY"] = "READY";
|
|
28
29
|
})(ExecutionState || (ExecutionState = {}));
|
|
29
30
|
export const useExecuteTransaction = (squidRoute) => {
|
|
30
|
-
const
|
|
31
|
+
const { evmSigner, isEvmSignerReady } = useSigner();
|
|
31
32
|
const { cosmosSigner } = useCosmosContext();
|
|
32
33
|
const { chains } = useSquidChains();
|
|
33
34
|
const queryClient = useQueryClient();
|
|
@@ -42,12 +43,12 @@ export const useExecuteTransaction = (squidRoute) => {
|
|
|
42
43
|
const { connectedAddress: { address: sourceUserAddress }, } = useMultiChainWallet(fromChain);
|
|
43
44
|
const signerReady = useMemo(() => {
|
|
44
45
|
if (fromChain?.chainType === ChainType.EVM) {
|
|
45
|
-
return
|
|
46
|
+
return isEvmSignerReady;
|
|
46
47
|
}
|
|
47
48
|
if (fromChain?.chainType === ChainType.COSMOS) {
|
|
48
49
|
return cosmosSigner !== undefined;
|
|
49
50
|
}
|
|
50
|
-
}, [
|
|
51
|
+
}, [isEvmSignerReady, cosmosSigner, fromChain]);
|
|
51
52
|
/**
|
|
52
53
|
* States to see if the swap execution is possible or not based on swap & user params
|
|
53
54
|
* And if not possible, gives the reason
|
|
@@ -145,7 +146,7 @@ export const useExecuteTransaction = (squidRoute) => {
|
|
|
145
146
|
// Transaction replaced can mean that the user has speed up the transaction for example
|
|
146
147
|
// Could also be cancelled
|
|
147
148
|
const handleTransactionReplacementError = useCallback(async ({ error, route, status, sourceStatus, userAddress, axelarUrl, }) => {
|
|
148
|
-
if (route && error
|
|
149
|
+
if (route && isError(error, "TRANSACTION_REPLACED")) {
|
|
149
150
|
const txReplacementError = error;
|
|
150
151
|
const { hash: newHash, nonce: newNonce } = txReplacementError.replacement;
|
|
151
152
|
if (route.transactionRequest) {
|
|
@@ -168,6 +169,9 @@ export const useExecuteTransaction = (squidRoute) => {
|
|
|
168
169
|
}
|
|
169
170
|
try {
|
|
170
171
|
const response = await txReplacementError.replacement.wait();
|
|
172
|
+
if (!response) {
|
|
173
|
+
throw new Error("Transaction receipt is null");
|
|
174
|
+
}
|
|
171
175
|
return response;
|
|
172
176
|
}
|
|
173
177
|
catch (replacementError) {
|
|
@@ -186,11 +190,11 @@ export const useExecuteTransaction = (squidRoute) => {
|
|
|
186
190
|
else {
|
|
187
191
|
throw error;
|
|
188
192
|
}
|
|
189
|
-
}, [setTransactionState, sourceUserAddress
|
|
193
|
+
}, [replaceNonceTx, setTransactionState, sourceUserAddress]);
|
|
190
194
|
const swapQueryEvm = useMutation(async (route) => {
|
|
191
|
-
if (route && !!squid &&
|
|
195
|
+
if (route && !!squid && evmSigner) {
|
|
192
196
|
const txResponse = (await squid.executeRoute({
|
|
193
|
-
signer:
|
|
197
|
+
signer: evmSigner,
|
|
194
198
|
route,
|
|
195
199
|
}));
|
|
196
200
|
let hash = txResponse.hash;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useExecuteTransaction.js","sourceRoot":"","sources":["../../../src/hooks/transaction/useExecuteTransaction.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"useExecuteTransaction.js","sourceRoot":"","sources":["../../../src/hooks/transaction/useExecuteTransaction.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { useMutation, useQuery, useQueryClient } from "@tanstack/react-query";
|
|
2
|
-
import { constants, utils } from "ethers";
|
|
3
2
|
import { useCallback, useMemo } from "react";
|
|
4
3
|
import { osmosisChainId } from "../../core/constants";
|
|
5
4
|
import { useCosmosContext } from "../../core/providers/CosmosProvider";
|
|
5
|
+
import { zeroAddress } from "viem";
|
|
6
6
|
import { keys } from "../../core/queries/queries-keys";
|
|
7
7
|
import { useConfigStore, useSquidStore, useSwapRoutePersistStore, useTransactionStore, } from "../../hooks/store/useSquidStore";
|
|
8
8
|
import { useUserParams } from "../../hooks/user/useUserParams";
|
|
9
|
+
import { parseToBigInt } from "../../services/internal/numberService";
|
|
9
10
|
import { useSwap } from "../swap/useSwap";
|
|
10
11
|
import { useMultiChainWallet } from "../wallet/useMultiChainWallet";
|
|
11
12
|
export const useGetRoute = () => {
|
|
@@ -65,10 +66,8 @@ export const useGetRoute = () => {
|
|
|
65
66
|
const params = {
|
|
66
67
|
fromChain,
|
|
67
68
|
fromToken: fromToken.address,
|
|
68
|
-
fromAddress: sourceUserAddress ??
|
|
69
|
-
fromAmount:
|
|
70
|
-
.parseUnits(fromPrice?.toString() ?? "0", fromToken?.decimals)
|
|
71
|
-
.toString(),
|
|
69
|
+
fromAddress: sourceUserAddress ?? zeroAddress,
|
|
70
|
+
fromAmount: parseToBigInt(fromPrice?.toString() ?? "0", fromToken?.decimals).toString(),
|
|
72
71
|
toChain,
|
|
73
72
|
toToken: toToken.address,
|
|
74
73
|
toAddress: destinationAddress ?? "",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useGetRoute.js","sourceRoot":"","sources":["../../../src/hooks/transaction/useGetRoute.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC9E,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"useGetRoute.js","sourceRoot":"","sources":["../../../src/hooks/transaction/useGetRoute.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,11 @@
|
|
|
1
1
|
import { ChainType } from "@0xsquid/squid-types";
|
|
2
2
|
import { useMutation } from "@tanstack/react-query";
|
|
3
|
-
import { useAccount,
|
|
3
|
+
import { useAccount, useSwitchChain } from "wagmi";
|
|
4
4
|
import { addEthereumChain, addTokenToWallet, isEvmChainNotSupportedError, } from "../../services";
|
|
5
5
|
export const useAddToken = (chainToCompare, tokenToCompare) => {
|
|
6
|
-
const { chain: currentEvmChain } =
|
|
6
|
+
const { chain: currentEvmChain } = useAccount();
|
|
7
7
|
const { connector } = useAccount();
|
|
8
|
-
const {
|
|
9
|
-
throwForSwitchChainNotSupported: true,
|
|
10
|
-
});
|
|
8
|
+
const { switchChainAsync } = useSwitchChain();
|
|
11
9
|
/**
|
|
12
10
|
* Add token to wallet
|
|
13
11
|
*/
|
|
@@ -19,7 +17,9 @@ export const useAddToken = (chainToCompare, tokenToCompare) => {
|
|
|
19
17
|
// Switch network if needed
|
|
20
18
|
if (currentEvmChain?.id.toString() !== token?.chainId) {
|
|
21
19
|
try {
|
|
22
|
-
await
|
|
20
|
+
await switchChainAsync({
|
|
21
|
+
chainId: +token.chainId,
|
|
22
|
+
});
|
|
23
23
|
}
|
|
24
24
|
catch (error) {
|
|
25
25
|
console.debug("Error switching network:", error);
|
|
@@ -28,7 +28,9 @@ export const useAddToken = (chainToCompare, tokenToCompare) => {
|
|
|
28
28
|
chain,
|
|
29
29
|
provider,
|
|
30
30
|
});
|
|
31
|
-
await
|
|
31
|
+
await switchChainAsync({
|
|
32
|
+
chainId: +token.chainId,
|
|
33
|
+
});
|
|
32
34
|
}
|
|
33
35
|
}
|
|
34
36
|
// Metamask is not popping the second modal if we don't wait a bit
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useAddToken.js","sourceRoot":"","sources":["../../../src/hooks/wallet/useAddToken.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,
|
|
1
|
+
{"version":3,"file":"useAddToken.js","sourceRoot":"","sources":["../../../src/hooks/wallet/useAddToken.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAChB,2BAA2B,GAC5B,MAAM,gBAAgB,CAAC;AAExB,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,cAAqC,EACrC,cAAiC,EACjC,EAAE;IACF,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE,GAAG,UAAU,EAAE,CAAC;IAChD,MAAM,EAAE,SAAS,EAAE,GAAG,UAAU,EAAE,CAAC;IACnC,MAAM,EAAE,gBAAgB,EAAE,GAAG,cAAc,EAAE,CAAC;IAE9C;;OAEG;IACH,MAAM,QAAQ,GAAG,WAAW,CAC1B,KAAK,EAAE,EACL,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,GAId,EAAE,EAAE;QACH,MAAM,KAAK,GAAG,MAAM,IAAI,cAAc,CAAC;QACvC,MAAM,KAAK,GAAG,MAAM,IAAI,cAAc,CAAC;QAEvC,IAAI,KAAK,IAAI,KAAK,EAAE,SAAS,KAAK,SAAS,CAAC,GAAG,EAAE;YAC/C,MAAM,QAAQ,GAAG,MAAM,SAAS,EAAE,WAAW,EAAE,CAAC;YAEhD,2BAA2B;YAC3B,IAAI,eAAe,EAAE,EAAE,CAAC,QAAQ,EAAE,KAAK,KAAK,EAAE,OAAO,EAAE;gBACrD,IAAI;oBACF,MAAM,gBAAgB,CAAC;wBACrB,OAAO,EAAE,CAAC,KAAK,CAAC,OAAO;qBACxB,CAAC,CAAC;iBACJ;gBAAC,OAAO,KAAK,EAAE;oBACd,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAC;oBAEjD,IAAI,2BAA2B,CAAC,KAAK,CAAC,EAAE;wBACtC,MAAM,gBAAgB,CAAC;4BACrB,KAAK;4BACL,QAAQ;yBACT,CAAC,CAAC;wBAEH,MAAM,gBAAgB,CAAC;4BACrB,OAAO,EAAE,CAAC,KAAK,CAAC,OAAO;yBACxB,CAAC,CAAC;qBACJ;iBACF;gBACD,kEAAkE;gBAClE,sDAAsD;gBACtD,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;aAC1D;YAED,MAAM,gBAAgB,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;SAC7C;QACD,kCAAkC;QAClC,OAAO,KAAK,CAAC;IACf,CAAC,CACF,CAAC;IAEF,OAAO;QACL,QAAQ;KACT,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import SafeAppsSDK from "@safe-global/safe-apps-sdk";
|
|
2
|
-
import { TransactionStatus as GnosisTransactionStatus } from "@safe-global/safe-apps-sdk/dist/src/types";
|
|
1
|
+
import SafeAppsSDK, { TransactionStatus as GnosisTransactionStatus, } from "@safe-global/safe-apps-sdk";
|
|
3
2
|
import { useCallback, useEffect, useMemo, useState } from "react";
|
|
4
3
|
import { useAccount } from "wagmi";
|
|
5
4
|
import { useSwapRoutePersistStore } from "../../hooks/store/useSquidStore";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useGnosisContext.js","sourceRoot":"","sources":["../../../src/hooks/wallet/useGnosisContext.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,
|
|
1
|
+
{"version":3,"file":"useGnosisContext.js","sourceRoot":"","sources":["../../../src/hooks/wallet/useGnosisContext.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,22 +1,20 @@
|
|
|
1
1
|
import { ChainType } from "@0xsquid/squid-types";
|
|
2
2
|
import { useMutation } from "@tanstack/react-query";
|
|
3
|
-
import { UserRejectedRequestError } from "@wagmi/core";
|
|
4
3
|
import { useMemo } from "react";
|
|
5
|
-
import {
|
|
4
|
+
import { UserRejectedRequestError } from "viem";
|
|
5
|
+
import { useAccount, useSwitchChain } from "wagmi";
|
|
6
6
|
import { useCosmosContext } from "../../core/providers/CosmosProvider";
|
|
7
7
|
import { useCosmosForChain } from "../../hooks/cosmos/useCosmosForChain";
|
|
8
8
|
import { addEthereumChain, formatHash, isEvmChainNotSupportedError, } from "../../services/internal/walletService";
|
|
9
9
|
import { useSquidChains } from "../chains/useSquidChains";
|
|
10
10
|
import { useEnsDataForAddress } from "./useEns";
|
|
11
11
|
export const useMultiChainWallet = (chainToCompare) => {
|
|
12
|
-
const { chain: currentEvmChain } =
|
|
12
|
+
const { chain: currentEvmChain } = useAccount();
|
|
13
13
|
const { chains } = useSquidChains();
|
|
14
14
|
const { isConnected: isEvmConnected, connector, address: evmAddress, } = useAccount();
|
|
15
15
|
const { isConnected: cosmosIsConnected } = useCosmosContext();
|
|
16
16
|
const { cosmosAddress } = useCosmosForChain(chainToCompare);
|
|
17
|
-
const {
|
|
18
|
-
throwForSwitchChainNotSupported: true,
|
|
19
|
-
});
|
|
17
|
+
const { switchChainAsync } = useSwitchChain();
|
|
20
18
|
const evmEnsData = useEnsDataForAddress({
|
|
21
19
|
address: evmAddress,
|
|
22
20
|
options: {
|
|
@@ -51,17 +49,19 @@ export const useMultiChainWallet = (chainToCompare) => {
|
|
|
51
49
|
default:
|
|
52
50
|
return {};
|
|
53
51
|
}
|
|
54
|
-
}, [
|
|
52
|
+
}, [chainToCompare, cosmosAddress, evmAddress, evmEnsData.data]);
|
|
55
53
|
/**
|
|
56
54
|
* Change current network for desired chain
|
|
57
55
|
*/
|
|
58
56
|
const changeNetwork = useMutation(async () => {
|
|
59
57
|
// throw for tenderly fork chain addition
|
|
60
58
|
if (chainToCompare?.rpc.includes("tenderly")) {
|
|
61
|
-
throw new
|
|
59
|
+
throw new Error("Add tenderly chain");
|
|
62
60
|
}
|
|
63
61
|
if (chainToCompare?.chainType === ChainType.EVM) {
|
|
64
|
-
await
|
|
62
|
+
await switchChainAsync({
|
|
63
|
+
chainId: Number(chainToCompare.chainId),
|
|
64
|
+
});
|
|
65
65
|
}
|
|
66
66
|
// Implement keplr change network
|
|
67
67
|
// Looks like there are no method to do that at the moment
|
|
@@ -71,8 +71,8 @@ export const useMultiChainWallet = (chainToCompare) => {
|
|
|
71
71
|
if (error instanceof UserRejectedRequestError) {
|
|
72
72
|
return;
|
|
73
73
|
}
|
|
74
|
-
|
|
75
|
-
|
|
74
|
+
if (isEvmChainNotSupportedError(error) && chainToCompare && connector) {
|
|
75
|
+
const provider = await connector.getProvider();
|
|
76
76
|
addEthereumChain({
|
|
77
77
|
chain: chainToCompare,
|
|
78
78
|
provider,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useMultiChainWallet.js","sourceRoot":"","sources":["../../../src/hooks/wallet/useMultiChainWallet.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"useMultiChainWallet.js","sourceRoot":"","sources":["../../../src/hooks/wallet/useMultiChainWallet.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare function useEthersSigner({ chainId }?: {
|
|
2
|
+
chainId?: number;
|
|
3
|
+
}): import("ethers").JsonRpcSigner | undefined;
|
|
4
|
+
export declare const useSigner: () => {
|
|
5
|
+
isEvmSignerReady: boolean;
|
|
6
|
+
evmSigner: import("ethers").JsonRpcSigner | undefined;
|
|
7
|
+
cosmosSigner: import("@cosmjs/proto-signing").OfflineSigner | undefined;
|
|
8
|
+
};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { useMemo } from "react";
|
|
2
|
+
import { useConnectorClient } from "wagmi";
|
|
3
|
+
import { useCosmosContext } from "../../core/providers/CosmosProvider";
|
|
4
|
+
import { clientToSigner } from "../../core/wagmiConfig";
|
|
5
|
+
import { useSwap } from "../swap/useSwap";
|
|
6
|
+
export function useEthersSigner({ chainId } = {}) {
|
|
7
|
+
const { data: client } = useConnectorClient({ chainId });
|
|
8
|
+
return useMemo(() => (client ? clientToSigner(client) : undefined), [client]);
|
|
9
|
+
}
|
|
10
|
+
export const useSigner = () => {
|
|
11
|
+
const { fromChain } = useSwap();
|
|
12
|
+
const evmSigner = useEthersSigner({ chainId: Number(fromChain?.chainId) });
|
|
13
|
+
const { cosmosSigner } = useCosmosContext();
|
|
14
|
+
const isEvmSignerReady = !!evmSigner;
|
|
15
|
+
return {
|
|
16
|
+
isEvmSignerReady,
|
|
17
|
+
evmSigner,
|
|
18
|
+
cosmosSigner,
|
|
19
|
+
};
|
|
20
|
+
};
|
|
21
|
+
//# sourceMappingURL=useSigner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useSigner.js","sourceRoot":"","sources":["../../../src/hooks/wallet/useSigner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EAAU,kBAAkB,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAE1C,MAAM,UAAU,eAAe,CAAC,EAAE,OAAO,KAA2B,EAAE;IACpE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,kBAAkB,CAAS,EAAE,OAAO,EAAE,CAAC,CAAC;IACjE,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;AAChF,CAAC;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,GAAG,EAAE;IAC5B,MAAM,EAAE,SAAS,EAAE,GAAG,OAAO,EAAE,CAAC;IAEhC,MAAM,SAAS,GAAG,eAAe,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;IAE3E,MAAM,EAAE,YAAY,EAAE,GAAG,gBAAgB,EAAE,CAAC;IAE5C,MAAM,gBAAgB,GAAG,CAAC,CAAC,SAAS,CAAC;IAErC,OAAO;QACL,gBAAgB;QAChB,SAAS;QACT,YAAY;KACb,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -2,7 +2,7 @@ import type { ChainData } from "@0xsquid/squid-types";
|
|
|
2
2
|
import type { Wallet } from "../../core/types/wallet";
|
|
3
3
|
export declare const useWallet: (chain: ChainData | undefined) => {
|
|
4
4
|
wallets: Wallet[];
|
|
5
|
-
disconnectEvm: import("
|
|
5
|
+
disconnectEvm: import("wagmi/query").DisconnectMutateAsync<unknown>;
|
|
6
6
|
currentWallet: Wallet | undefined;
|
|
7
7
|
connectWallet: (wallet: Wallet, direction?: "from" | "to") => Promise<boolean>;
|
|
8
8
|
};
|
|
@@ -16,9 +16,9 @@ export const useWallet = (chain) => {
|
|
|
16
16
|
redirectExtensionStoreIfNotInstalled(wallet);
|
|
17
17
|
try {
|
|
18
18
|
if (wallet && wallet.connector && wallet.type === ChainType.EVM) {
|
|
19
|
-
await disconnectEvm();
|
|
20
19
|
await connectAsync({
|
|
21
20
|
connector: wallet.connector(formatChainsForWagmi(chains)),
|
|
21
|
+
chainId: Number(chain?.chainId),
|
|
22
22
|
});
|
|
23
23
|
}
|
|
24
24
|
else if (wallet.type === ChainType.COSMOS && chain) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useWallet.js","sourceRoot":"","sources":["../../../src/hooks/wallet/useWallet.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AAEvE,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EACL,oBAAoB,EACpB,oCAAoC,GACrC,MAAM,uCAAuC,CAAC;AAE/C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,KAA4B,EAAE,EAAE;IACxD,MAAM,EAAE,OAAO,EAAE,GAAG,UAAU,EAAE,CAAC;IAEjC,MAAM,EAAE,SAAS,EAAE,eAAe,EAAE,WAAW,EAAE,cAAc,EAAE,GAC/D,UAAU,EAAE,CAAC;IAEf,MAAM,EAAE,eAAe,EAAE,aAAa,EAAE,GAAG,aAAa,EAAE,CAAC;IAC3D,MAAM,EACJ,WAAW,EAAE,iBAAiB,EAC9B,aAAa,EACb,qBAAqB,GACtB,GAAG,gBAAgB,EAAE,CAAC;IACvB,MAAM,EAAE,YAAY,EAAE,GAAG,UAAU,EAAE,CAAC;IACtC,MAAM,EAAE,MAAM,EAAE,GAAG,cAAc,EAAE,CAAC;IAEpC,MAAM,aAAa,GAAG,KAAK,EAAE,MAAc,EAAE,SAAyB,EAAE,EAAE;QACxE,oCAAoC,CAAC,MAAM,CAAC,CAAC;QAE7C,IAAI;YACF,IAAI,MAAM,IAAI,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,CAAC,GAAG,EAAE;gBAC/D,MAAM,
|
|
1
|
+
{"version":3,"file":"useWallet.js","sourceRoot":"","sources":["../../../src/hooks/wallet/useWallet.ts"],"names":[],"mappings":"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"}
|
package/dist/provider/index.js
CHANGED
|
@@ -1,16 +1,15 @@
|
|
|
1
1
|
import { Squid } from "@0xsquid/sdk";
|
|
2
|
-
import { ChainType } from "@0xsquid/squid-types";
|
|
3
2
|
import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
|
|
3
|
+
import { createConfig, http } from "@wagmi/core";
|
|
4
|
+
import { mainnet } from "@wagmi/core/chains";
|
|
4
5
|
import React, { createContext, useEffect, useState } from "react";
|
|
5
|
-
import {
|
|
6
|
-
import { jsonRpcProvider } from "wagmi/providers/jsonRpc";
|
|
7
|
-
import { formattedWallets } from "../core/constants";
|
|
6
|
+
import { WagmiProvider } from "wagmi";
|
|
8
7
|
import { squidApiBaseUrl } from "../core/externalLinks";
|
|
9
8
|
import { CosmosProvider } from "../core/providers/CosmosProvider";
|
|
10
9
|
import { defaultOptions } from "../core/queries/react-query-config";
|
|
10
|
+
import { createWagmiConfig } from "../core/wagmiConfig";
|
|
11
11
|
import { useConfigStore, useSquidStore, useSwapRoutePersistStore, } from "../hooks/store/useSquidStore";
|
|
12
12
|
import { getConfigWithDefaults } from "../services/internal/configService";
|
|
13
|
-
import { formatChainsForWagmi } from "../services/internal/walletService";
|
|
14
13
|
const SquidContext = createContext(undefined);
|
|
15
14
|
const queryClient = new QueryClient({ defaultOptions });
|
|
16
15
|
const verifyIntegratorIdValidity = (integratorId) => {
|
|
@@ -20,61 +19,19 @@ const verifyIntegratorIdValidity = (integratorId) => {
|
|
|
20
19
|
};
|
|
21
20
|
export const SquidProvider = ({ children, config, }) => {
|
|
22
21
|
verifyIntegratorIdValidity(config.integratorId);
|
|
23
|
-
const [
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
nativeCurrency: {
|
|
30
|
-
name: "Ethereum",
|
|
31
|
-
symbol: "ETH",
|
|
32
|
-
decimals: 18,
|
|
33
|
-
},
|
|
34
|
-
rpcUrls: {
|
|
35
|
-
public: {
|
|
36
|
-
http: [" "],
|
|
37
|
-
},
|
|
38
|
-
default: {
|
|
39
|
-
http: [" "],
|
|
40
|
-
},
|
|
41
|
-
},
|
|
42
|
-
},
|
|
43
|
-
], [
|
|
44
|
-
jsonRpcProvider({
|
|
45
|
-
rpc: () => ({
|
|
46
|
-
http: " ",
|
|
47
|
-
}),
|
|
48
|
-
}),
|
|
49
|
-
]);
|
|
50
|
-
return createClient({
|
|
51
|
-
persister: null,
|
|
52
|
-
provider,
|
|
53
|
-
});
|
|
54
|
-
});
|
|
22
|
+
const [wagmiConfig, setWagmiConfig] = useState(() => createConfig({
|
|
23
|
+
chains: [mainnet],
|
|
24
|
+
transports: {
|
|
25
|
+
[mainnet.id]: http(),
|
|
26
|
+
},
|
|
27
|
+
}));
|
|
55
28
|
/**
|
|
56
|
-
* Initialize Wagmi
|
|
29
|
+
* Initialize Wagmi config
|
|
57
30
|
* @param chains
|
|
58
31
|
*/
|
|
59
|
-
const
|
|
60
|
-
const
|
|
61
|
-
|
|
62
|
-
rpc: (chain) => ({
|
|
63
|
-
http: chain.rpcUrls.default.http[0] ?? "",
|
|
64
|
-
webSocket: undefined,
|
|
65
|
-
}),
|
|
66
|
-
}),
|
|
67
|
-
]);
|
|
68
|
-
// Get formatted connectors from Squid supported wallets
|
|
69
|
-
const evmWalletConnectors = formattedWallets
|
|
70
|
-
.filter((w) => w.type === ChainType.EVM)
|
|
71
|
-
.map((w) => w.connector?.(wagmiChains));
|
|
72
|
-
const wClient = createClient({
|
|
73
|
-
persister: null,
|
|
74
|
-
provider,
|
|
75
|
-
connectors: [...evmWalletConnectors],
|
|
76
|
-
});
|
|
77
|
-
setWagmiClient(wClient);
|
|
32
|
+
const initWagmiConfig = (chains) => {
|
|
33
|
+
const newConfig = createWagmiConfig(chains);
|
|
34
|
+
setWagmiConfig(newConfig);
|
|
78
35
|
useConfigStore.setState({ isInitialized: true, config: config });
|
|
79
36
|
};
|
|
80
37
|
// Initialize Squid SDK & wagmi client
|
|
@@ -103,14 +60,14 @@ export const SquidProvider = ({ children, config, }) => {
|
|
|
103
60
|
}),
|
|
104
61
|
squid,
|
|
105
62
|
}));
|
|
106
|
-
|
|
63
|
+
initWagmiConfig(squid.chains);
|
|
107
64
|
};
|
|
108
65
|
initializeSdk();
|
|
109
66
|
// In your hooks library
|
|
110
67
|
}, []);
|
|
111
|
-
return (React.createElement(
|
|
112
|
-
React.createElement(
|
|
113
|
-
React.createElement(
|
|
68
|
+
return (React.createElement(WagmiProvider, { config: wagmiConfig },
|
|
69
|
+
React.createElement(QueryClientProvider, { client: queryClient },
|
|
70
|
+
React.createElement(SquidContext.Provider, { value: undefined },
|
|
114
71
|
React.createElement(CosmosProvider, null, children)))));
|
|
115
72
|
};
|
|
116
73
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/provider/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/provider/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { CloudflareProvider } from "ethers";
|
|
2
2
|
import { internalSquidApiBaseUrl } from "../../core/constants";
|
|
3
|
-
const provider = new
|
|
3
|
+
const provider = new CloudflareProvider();
|
|
4
4
|
const API_BASE_URL = `${internalSquidApiBaseUrl}/ens`;
|
|
5
5
|
const getAvatarFromEns = async (ensName) => {
|
|
6
6
|
if (!ensName)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ens.js","sourceRoot":"","sources":["../../../src/services/external/ens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"ens.js","sourceRoot":"","sources":["../../../src/services/external/ens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AAE5C,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAE/D,MAAM,QAAQ,GAAG,IAAI,kBAAkB,EAAE,CAAC;AAC1C,MAAM,YAAY,GAAG,GAAG,uBAAuB,MAAM,CAAC;AAEtD,MAAM,gBAAgB,GAAG,KAAK,EAAE,OAAgB,EAAE,EAAE;IAClD,IAAI,CAAC,OAAO;QAAE,OAAO;IACrB,IAAI;QACF,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACrD,OAAO,MAAM,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;KAC1C;IAAC,OAAO,KAAK,EAAE,GAAE;AACpB,CAAC,CAAC;AAEF,MAAM,qBAAqB,GAAG,KAAK,EAAE,OAAgB,EAAE,EAAE;IACvD,IAAI,CAAC,OAAO;QAAE,OAAO,EAAE,CAAC;IACxB,IAAI;QACF,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QACtD,IAAI,CAAC,OAAO;YAAE,OAAO,EAAE,CAAC;QACxB,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAC/C,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;KAClC;IAAC,OAAO,KAAK,EAAE;QACd,OAAO,EAAE,CAAC;KACX;AACH,CAAC,CAAC;AAEF,MAAM,OAAO,UAAU;IACrB,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,OAAgB;QACjD,IAAI,CAAC,OAAO;YAAE,OAAO,EAAE,CAAC;QAExB,IAAI;YACF,MAAM,OAAO,GAAG,MAAM,qBAAqB,CAAC,OAAO,CAAC,CAAC;YACrD,OAAO,OAAkB,CAAC;SAC3B;QAAC,OAAO,KAAK,EAAE;YACd,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAC;YACjD,OAAO,EAAE,CAAC;SACX;IACH,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,cAAc,CACzB,WAAoB;QAEpB,IAAI,CAAC,WAAW;YAAE,OAAO,EAAE,CAAC;QAE5B,IAAI;YACF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAC1B,GAAG,YAAY,gCAAgC,kBAAkB,CAAC,WAAW,CAAC,EAAE,CACjF,CAAC;YACF,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;SAC9B;QAAC,OAAO,KAAK,EAAE;YACd,OAAO,CAAC,KAAK,CAAC,4BAA4B,EAAE,KAAK,CAAC,CAAC;YACnD,OAAO,EAAE,CAAC;SACX;IACH,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,QAAiB;QACxC,IAAI,CAAC,QAAQ;YAAE,OAAO,EAAE,CAAC;QAEzB,IAAI;YACF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAC1B,GAAG,YAAY,6BAA6B,kBAAkB,CAAC,QAAQ,CAAC,EAAE,CAC3E,CAAC;YACF,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;SAC9B;QAAC,OAAO,KAAK,EAAE;YACd,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,KAAK,CAAC,CAAC;YAClD,OAAO,EAAE,CAAC;SACX;IACH,CAAC;CACF"}
|
|
@@ -2,12 +2,6 @@ import type { ChainData, CosmosChain, Token } from "@0xsquid/squid-types";
|
|
|
2
2
|
import type { TokenWithBalance } from "../../core/types/tokens";
|
|
3
3
|
declare const getTokensSupportingMultiCall: (tokens: Token[], userAddress: string, chains: ChainData[]) => Promise<TokenWithBalance[]>;
|
|
4
4
|
export { getTokensSupportingMultiCall };
|
|
5
|
-
/**
|
|
6
|
-
* Some chains don't support multicall, so we need to fetch them with Promise.all & fetchBalance
|
|
7
|
-
* @param tokens
|
|
8
|
-
* @param userAddress
|
|
9
|
-
* @returns
|
|
10
|
-
*/
|
|
11
5
|
export declare const getAllEvmTokensBalance: (evmTokens: Token[], userAddress: string, chains: ChainData[]) => Promise<TokenWithBalance[]>;
|
|
12
6
|
export declare const getWorkingCosmosRpcUrl: (chainData: ChainData) => Promise<string>;
|
|
13
7
|
/**
|