@0xsquid/react-hooks 6.4.1-beta.3 → 6.4.1-beta.4
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/client/index.d.ts +12 -0
- package/dist/core/client/index.js +30 -0
- package/dist/core/client/index.js.map +1 -0
- package/dist/core/connectors/bitcoin/helpers.d.ts +15 -0
- package/dist/core/connectors/bitcoin/helpers.js +6 -1
- package/dist/core/connectors/bitcoin/helpers.js.map +1 -1
- package/dist/core/constants.d.ts +1 -3
- package/dist/core/constants.js +6 -3
- package/dist/core/constants.js.map +1 -1
- package/dist/core/index.d.ts +1 -1
- package/dist/core/index.js +1 -1
- package/dist/core/index.js.map +1 -1
- package/dist/core/providers/SolanaProvider.d.ts +0 -2
- package/dist/core/providers/SolanaProvider.js.map +1 -1
- package/dist/core/queries/queries-keys.d.ts +10 -25
- package/dist/core/queries/queries-keys.js +29 -80
- package/dist/core/queries/queries-keys.js.map +1 -1
- package/dist/core/types/error.d.ts +4 -4
- package/dist/core/types/error.js.map +1 -1
- package/dist/core/types/history.d.ts +82 -0
- package/dist/core/types/history.js +7 -0
- package/dist/core/types/history.js.map +1 -0
- package/dist/core/types/index.d.ts +4 -2
- package/dist/core/types/index.js +2 -1
- package/dist/core/types/index.js.map +1 -1
- package/dist/core/types/onramps/onramp.d.ts +0 -15
- package/dist/core/types/transaction.d.ts +10 -32
- package/dist/core/types/transaction.js +6 -0
- package/dist/core/types/transaction.js.map +1 -1
- package/dist/core/wagmiConfig.js +2 -8
- package/dist/core/wagmiConfig.js.map +1 -1
- package/dist/hooks/client/useClient.js +2 -2
- package/dist/hooks/cosmos/useCosmos.d.ts +9 -0
- package/dist/hooks/cosmos/useCosmos.js +25 -18
- package/dist/hooks/cosmos/useCosmos.js.map +1 -1
- package/dist/hooks/cosmos/useCosmosForChain.d.ts +1 -1
- package/dist/hooks/cosmos/useCosmosForChain.js +7 -11
- package/dist/hooks/cosmos/useCosmosForChain.js.map +1 -1
- package/dist/hooks/index.d.ts +7 -2
- package/dist/hooks/index.js +7 -2
- package/dist/hooks/index.js.map +1 -1
- package/dist/hooks/onramp/useFiatToCrypto.d.ts +10 -10
- package/dist/hooks/onramp/useFiatToCrypto.js +30 -47
- package/dist/hooks/onramp/useFiatToCrypto.js.map +1 -1
- package/dist/hooks/solana/useSolana.d.ts +2 -1
- package/dist/hooks/solana/useSolana.js +4 -2
- package/dist/hooks/solana/useSolana.js.map +1 -1
- package/dist/hooks/store/useHistoryStore.d.ts +33 -13
- package/dist/hooks/store/useHistoryStore.js +120 -32
- package/dist/hooks/store/useHistoryStore.js.map +1 -1
- package/dist/hooks/store/useSendTransactionStore.d.ts +20 -0
- package/dist/hooks/store/useSendTransactionStore.js +21 -0
- package/dist/hooks/store/useSendTransactionStore.js.map +1 -0
- package/dist/hooks/transaction/send/useEstimateSendTransactionGas.d.ts +27 -0
- package/dist/hooks/transaction/send/useEstimateSendTransactionGas.js +57 -0
- package/dist/hooks/transaction/send/useEstimateSendTransactionGas.js.map +1 -0
- package/dist/hooks/transaction/send/useSendTransaction.d.ts +13 -0
- package/dist/hooks/transaction/send/useSendTransaction.js +155 -0
- package/dist/hooks/transaction/send/useSendTransaction.js.map +1 -0
- package/dist/hooks/transaction/send/useSendTransactionGas.d.ts +5 -0
- package/dist/hooks/transaction/send/useSendTransactionGas.js +67 -0
- package/dist/hooks/transaction/send/useSendTransactionGas.js.map +1 -0
- package/dist/hooks/transaction/useAllTransactionsStatus.d.ts +34 -3
- package/dist/hooks/transaction/useAllTransactionsStatus.js +130 -61
- package/dist/hooks/transaction/useAllTransactionsStatus.js.map +1 -1
- package/dist/hooks/transaction/useApproval.js +2 -2
- package/dist/hooks/transaction/useApproval.js.map +1 -1
- package/dist/hooks/transaction/useEstimate.d.ts +1 -1
- package/dist/hooks/transaction/useExecuteTransaction.d.ts +1 -1
- package/dist/hooks/transaction/useExecuteTransaction.js +40 -43
- package/dist/hooks/transaction/useExecuteTransaction.js.map +1 -1
- package/dist/hooks/transaction/useSendTransactionStatus.d.ts +11 -0
- package/dist/hooks/transaction/useSendTransactionStatus.js +53 -0
- package/dist/hooks/transaction/useSendTransactionStatus.js.map +1 -0
- package/dist/hooks/transaction/useSwapTransactionStatus.d.ts +15 -0
- package/dist/hooks/transaction/{useSingleTransaction.js → useSwapTransactionStatus.js} +40 -17
- package/dist/hooks/transaction/useSwapTransactionStatus.js.map +1 -0
- package/dist/hooks/user/useHistory.d.ts +11 -9
- package/dist/hooks/user/useHistory.js +39 -47
- package/dist/hooks/user/useHistory.js.map +1 -1
- package/dist/hooks/wallet/useMultiChainWallet.d.ts +1 -0
- package/dist/hooks/wallet/useMultiChainWallet.js +18 -0
- package/dist/hooks/wallet/useMultiChainWallet.js.map +1 -1
- package/dist/hooks/wallet/useSigner.d.ts +7 -7
- package/dist/hooks/wallet/useSigner.js +37 -13
- package/dist/hooks/wallet/useSigner.js.map +1 -1
- package/dist/services/internal/errorService.d.ts +3 -7
- package/dist/services/internal/errorService.js.map +1 -1
- package/dist/services/internal/estimateService.js +3 -3
- package/dist/services/internal/estimateService.js.map +1 -1
- package/dist/services/internal/numberService.d.ts +1 -1
- package/dist/services/internal/numberService.js.map +1 -1
- package/dist/services/internal/sendTransaction.d.ts +35 -0
- package/dist/services/internal/sendTransaction.js +66 -0
- package/dist/services/internal/sendTransaction.js.map +1 -0
- package/dist/services/internal/sendTransactionStatus.d.ts +6 -0
- package/dist/services/internal/sendTransactionStatus.js +90 -0
- package/dist/services/internal/sendTransactionStatus.js.map +1 -0
- package/dist/services/internal/transactionService.d.ts +8 -36
- package/dist/services/internal/transactionService.js +27 -26
- package/dist/services/internal/transactionService.js.map +1 -1
- package/dist/services/internal/transactionStatusService.d.ts +16 -5
- package/dist/services/internal/transactionStatusService.js +78 -5
- package/dist/services/internal/transactionStatusService.js.map +1 -1
- package/dist/tests/transactionService.test.js +18 -18
- package/dist/tests/transactionService.test.js.map +1 -1
- package/package.json +1 -1
- package/dist/hooks/store/useFiatTransactionStore.d.ts +0 -20
- package/dist/hooks/store/useFiatTransactionStore.js +0 -38
- package/dist/hooks/store/useFiatTransactionStore.js.map +0 -1
- package/dist/hooks/transaction/useSingleTransaction.d.ts +0 -10
- package/dist/hooks/transaction/useSingleTransaction.js.map +0 -1
|
@@ -1,26 +1,27 @@
|
|
|
1
|
+
import { ChainType } from "@0xsquid/squid-types";
|
|
1
2
|
import { useMemo } from "react";
|
|
2
3
|
import { useAccount, useWalletClient } from "wagmi";
|
|
3
4
|
import { PhantomConnector, UnisatConnector, } from "../../core/connectors/bitcoin";
|
|
4
|
-
import { useCosmosContext } from "../../core/providers/CosmosProvider";
|
|
5
5
|
import { useSolanaContext } from "../../core/providers/SolanaProvider";
|
|
6
6
|
import { clientToSigner } from "../../core/wagmiConfig";
|
|
7
|
-
import {
|
|
7
|
+
import { useCosmosSigner } from "../cosmos/useCosmos";
|
|
8
8
|
import { useWallet } from "./useWallet";
|
|
9
|
-
|
|
9
|
+
function useEvmSigner({ chainId }) {
|
|
10
10
|
const { connector } = useAccount();
|
|
11
11
|
const { data: client } = useWalletClient({ chainId, connector });
|
|
12
|
-
|
|
12
|
+
const signer = useMemo(() => (client ? clientToSigner(client) : undefined), [client]);
|
|
13
|
+
return { signer };
|
|
13
14
|
}
|
|
14
|
-
export const useSigner = () => {
|
|
15
|
-
const
|
|
16
|
-
|
|
17
|
-
|
|
15
|
+
export const useSigner = ({ chain }) => {
|
|
16
|
+
const evmChainId = chain?.chainType === ChainType.EVM ? Number(chain.chainId) : undefined;
|
|
17
|
+
// EVM and Cosmos need a different signer for each chain
|
|
18
|
+
// This is not the case for Solana or Bitcoin as there's only one chain in those ecosystems
|
|
19
|
+
const { signer: evmSigner } = useEvmSigner({ chainId: evmChainId });
|
|
20
|
+
const { signer: cosmosSigner } = useCosmosSigner({ chain });
|
|
18
21
|
const { signer: solanaSigner } = useSolanaContext();
|
|
19
|
-
const isEvmSignerReady = !!evmSigner;
|
|
20
|
-
const isSolanaSignerReady = !!solanaSigner;
|
|
21
22
|
const { connectedWalletsByChainType } = useWallet();
|
|
22
|
-
const connectedSourceWallet =
|
|
23
|
-
? connectedWalletsByChainType[
|
|
23
|
+
const connectedSourceWallet = chain?.chainType
|
|
24
|
+
? connectedWalletsByChainType[chain.chainType]
|
|
24
25
|
: undefined;
|
|
25
26
|
const bitcoinSigner = useMemo(() => {
|
|
26
27
|
switch (connectedSourceWallet?.wallet?.connectorId) {
|
|
@@ -32,9 +33,32 @@ export const useSigner = () => {
|
|
|
32
33
|
}
|
|
33
34
|
}
|
|
34
35
|
}, [connectedSourceWallet?.wallet?.connectorId]);
|
|
35
|
-
|
|
36
|
+
const isEvmSignerReady = !!evmSigner;
|
|
37
|
+
const isSolanaSignerReady = !!solanaSigner;
|
|
38
|
+
const isCosmosSignerReady = !!cosmosSigner;
|
|
39
|
+
const isBitcoinSignerReady = !!bitcoinSigner;
|
|
40
|
+
const isSignerReady = useMemo(() => {
|
|
41
|
+
if (!chain?.chainType)
|
|
42
|
+
return false;
|
|
43
|
+
switch (chain.chainType) {
|
|
44
|
+
case ChainType.EVM:
|
|
45
|
+
return isEvmSignerReady;
|
|
46
|
+
case ChainType.COSMOS:
|
|
47
|
+
return isCosmosSignerReady;
|
|
48
|
+
case ChainType.BTC:
|
|
49
|
+
return isBitcoinSignerReady;
|
|
50
|
+
case ChainType.SOLANA:
|
|
51
|
+
return isSolanaSignerReady;
|
|
52
|
+
}
|
|
53
|
+
}, [
|
|
54
|
+
chain?.chainType,
|
|
36
55
|
isEvmSignerReady,
|
|
56
|
+
isCosmosSignerReady,
|
|
57
|
+
isBitcoinSignerReady,
|
|
37
58
|
isSolanaSignerReady,
|
|
59
|
+
]);
|
|
60
|
+
return {
|
|
61
|
+
isSignerReady,
|
|
38
62
|
evmSigner,
|
|
39
63
|
cosmosSigner,
|
|
40
64
|
bitcoinSigner,
|
|
@@ -1 +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,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,OAAO,CAAC;AACpD,OAAO,EAEL,gBAAgB,EAChB,eAAe,GAChB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AACvE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"useSigner.js","sourceRoot":"","sources":["../../../src/hooks/wallet/useSigner.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,13 +13,9 @@ export declare const getTransactionError: (error: any) => TransactionErrorWithMe
|
|
|
13
13
|
*/
|
|
14
14
|
export declare const handleTransactionErrorEvents: ({ error, transactionParams, walletProviderName, squidRoute, }: {
|
|
15
15
|
error: TransactionErrorWithMessage;
|
|
16
|
-
transactionParams
|
|
17
|
-
walletProviderName
|
|
18
|
-
squidRoute
|
|
19
|
-
estimate: import("@0xsquid/squid-types").Estimate;
|
|
20
|
-
transactionRequest?: import("@0xsquid/squid-types").SquidData | undefined;
|
|
21
|
-
params: import("@0xsquid/squid-types").RouteRequest;
|
|
22
|
-
} | undefined;
|
|
16
|
+
transactionParams: Pick<TransactionParams, "fromAddress" | "fromChain" | "transactionId"> | undefined;
|
|
17
|
+
walletProviderName: string | undefined;
|
|
18
|
+
squidRoute: RouteResponse["route"] | undefined;
|
|
23
19
|
}) => TransactionErrorWithMessage;
|
|
24
20
|
/**
|
|
25
21
|
* Check if the error is a Squid route error
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errorService.js","sourceRoot":"","sources":["../../../src/services/internal/errorService.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"errorService.js","sourceRoot":"","sources":["../../../src/services/internal/errorService.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ChainType } from "@0xsquid/squid-types";
|
|
2
|
-
import { convertTokenAmountToUSD, findNativeToken, findToken, formatSeconds, isCoralBridgeAction, } from "..";
|
|
2
|
+
import { convertTokenAmountToUSD, findNativeToken, findToken, formatSeconds, isCoralBridgeAction, simplifyRouteAction, } from "..";
|
|
3
3
|
import { gasRefundMultiplier } from "../../core/constants";
|
|
4
4
|
import { formatBNToReadable, formatUnitsRounded } from "./numberService";
|
|
5
5
|
export const formatAmount = (amountInWei, decimals) => (amountInWei ? formatBNToReadable(amountInWei, decimals) : "");
|
|
@@ -66,7 +66,7 @@ export const formatEstimatedRouteDuration = ({ estimatedRouteDuration, isSingleC
|
|
|
66
66
|
}
|
|
67
67
|
return {
|
|
68
68
|
seconds: durationInSeconds,
|
|
69
|
-
format: (sTemplate
|
|
69
|
+
format: (sTemplate, mTemplate, hTemplate) => formatSeconds(durationInSeconds, sTemplate, mTemplate, hTemplate),
|
|
70
70
|
};
|
|
71
71
|
};
|
|
72
72
|
/**
|
|
@@ -103,7 +103,7 @@ export const calculateEstimateResults = ({ squidRoute, tokens, fromChain, toChai
|
|
|
103
103
|
const integratorFeeCost = allFeeCosts.length > 0 && collectFees
|
|
104
104
|
? allFeeCosts.find((f) => f.name === "Integrator fee")
|
|
105
105
|
: undefined;
|
|
106
|
-
const expectedGasRefundCost = calculateExpectedGasRefundCost(firstFeeCost, fromChain?.chainType, estimate?.actions);
|
|
106
|
+
const expectedGasRefundCost = calculateExpectedGasRefundCost(firstFeeCost, fromChain?.chainType, estimate?.actions.map(simplifyRouteAction));
|
|
107
107
|
const expectedGasRefundCostUSD = convertTokenAmountToUSD(formatBNToReadable(expectedGasRefundCost, firstFeeCost?.token.decimals ?? 18), firstFeeCost?.token.usdPrice ?? "0");
|
|
108
108
|
const sameTokenBetweenFees = firstFeeCost?.token.address === firstGasCost?.token.address &&
|
|
109
109
|
firstFeeCost?.token.chainId === firstGasCost?.token.chainId;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"estimateService.js","sourceRoot":"","sources":["../../../src/services/internal/estimateService.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"estimateService.js","sourceRoot":"","sources":["../../../src/services/internal/estimateService.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,7 +15,7 @@ export declare const parseToBigInt: (value: string, decimals?: number) => bigint
|
|
|
15
15
|
*/
|
|
16
16
|
export declare const formatBNToReadable: (value: bigint | string, decimals?: number) => string;
|
|
17
17
|
export declare const roundNumericValue: (value?: string, precision?: number, useComaEvery3Digits?: boolean, significantFigures?: number) => string;
|
|
18
|
-
export declare function formatUnitsRounded(value: string, decimals
|
|
18
|
+
export declare function formatUnitsRounded(value: string, decimals: string | number | undefined, maxDecimalDigits?: number): string;
|
|
19
19
|
interface FormatTokenAmountOptions {
|
|
20
20
|
/**
|
|
21
21
|
* When set to true, formats `amount` to its exact value, without any rounding.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"numberService.js","sourceRoot":"","sources":["../../../src/services/internal/numberService.ts"],"names":[],"mappings":"AAAA,iCAAiC;AAEjC,OAAO,IAAI,MAAM,aAAa,CAAC;AAC/B,OAAO,SAAS,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,wDAAwD;AACxD,yCAAyC;AACzC,yDAAyD;AACzD,wDAAwD;AACxD,wDAAwD;AACxD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,KAAa,EAAE,WAAmB,EAAE,EAAU,EAAE;IAC5E,IAAI;QACF,OAAO,UAAU,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,QAAQ,CAAC,CAAC;KAC/C;IAAC,OAAO,KAAK,EAAE;QACd,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5E,MAAM,IAAI,KAAK,CAAC,oCAAoC,YAAY,EAAE,CAAC,CAAC;KACrE;AACH,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAChC,KAAsB,EACtB,WAAmB,EAAE,EACb,EAAE;IACV,IAAI;QACF,OAAO,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,CAAC;KAC7C;IAAC,OAAO,KAAK,EAAE;QACd,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5E,MAAM,IAAI,KAAK,CAAC,2BAA2B,YAAY,EAAE,CAAC,CAAC;KAC5D;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,QAAgB,GAAG,EACnB,YAAoB,CAAC,EACrB,mBAAmB,GAAG,IAAI,EAC1B,qBAA6B,CAAC,EACtB,EAAE;IACV,IAAI,QAAQ,GAAG,KAAK,CAAC;IAErB,MAAM,IAAI,GAAG,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IACxC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAE3C,qDAAqD;IACrD,8DAA8D;IAC9D,oBAAoB;IACpB,IAAI,mBAAmB,IAAI,QAAQ,KAAK,GAAG,EAAE;QAC3C,QAAQ,GAAG,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,QAAQ,EAAE,CAAC;KAC7E;IAED,IAAI,kBAAkB,IAAI,QAAQ,EAAE;QAClC,MAAM,KAAK,GAAG,SAAS,CAAC,QAAQ,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC;QACvE,OAAO,GAAG,QAAQ,IAAI,IAAI,CAAC,QAAQ,EAAE,KAAK,GAAG,kBAAkB,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;KAC7E;IAED,OAAO,QAAQ;QACb,CAAC,CAAC,GAAG,QAAQ,IAAI,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;QACrD,CAAC,CAAC,QAAQ,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,UAAU,kBAAkB,CAChC,KAAa,EACb,
|
|
1
|
+
{"version":3,"file":"numberService.js","sourceRoot":"","sources":["../../../src/services/internal/numberService.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { Token } from "@0xsquid/squid-types";
|
|
2
|
+
import { Adapter as SolanaAdapter } from "@solana/wallet-adapter-base";
|
|
3
|
+
import { JsonRpcSigner } from "ethers";
|
|
4
|
+
import { OfflineSigner } from "@cosmjs/proto-signing";
|
|
5
|
+
import { Connection as SolanaConnection } from "@solana/web3.js";
|
|
6
|
+
import { BitcoinConnector } from "../../core/connectors/bitcoin";
|
|
7
|
+
interface SendTransactionParams {
|
|
8
|
+
to: string;
|
|
9
|
+
amount: string;
|
|
10
|
+
token: Token;
|
|
11
|
+
}
|
|
12
|
+
export interface SendTransactionResponse {
|
|
13
|
+
txHash: string;
|
|
14
|
+
}
|
|
15
|
+
interface SendTransactionEvmParams extends SendTransactionParams {
|
|
16
|
+
signer: JsonRpcSigner;
|
|
17
|
+
rpcUrl: string;
|
|
18
|
+
}
|
|
19
|
+
export declare function sendTransactionEvm({ to, amount, token, signer, rpcUrl, }: SendTransactionEvmParams): Promise<SendTransactionResponse>;
|
|
20
|
+
interface SendTransactionCosmosParams extends SendTransactionParams {
|
|
21
|
+
signer: OfflineSigner;
|
|
22
|
+
rpcUrl: string;
|
|
23
|
+
nativeToken: Token;
|
|
24
|
+
}
|
|
25
|
+
export declare function sendTransactionCosmos({ amount, rpcUrl, signer, to, token, nativeToken, }: SendTransactionCosmosParams): Promise<SendTransactionResponse>;
|
|
26
|
+
interface SendTxSolanaParams extends SendTransactionParams {
|
|
27
|
+
signer: SolanaAdapter;
|
|
28
|
+
connection: SolanaConnection;
|
|
29
|
+
}
|
|
30
|
+
export declare function sendTransactionSolana({ signer, amount, to, token, connection, }: SendTxSolanaParams): Promise<SendTransactionResponse>;
|
|
31
|
+
interface SendTxBitcoinParams extends SendTransactionParams {
|
|
32
|
+
signer: BitcoinConnector;
|
|
33
|
+
}
|
|
34
|
+
export declare function sendTransactionBitcoin({ amount, signer, to, }: SendTxBitcoinParams): Promise<SendTransactionResponse>;
|
|
35
|
+
export {};
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { Contract, JsonRpcProvider } from "ethers";
|
|
2
|
+
import { nativeEvmTokenAddress } from "../../core/constants";
|
|
3
|
+
import { coin } from "@cosmjs/proto-signing";
|
|
4
|
+
import { SigningStargateClient, } from "@cosmjs/stargate";
|
|
5
|
+
import { erc20Abi } from "viem";
|
|
6
|
+
import { executeSolanaTransfer } from "./solanaService";
|
|
7
|
+
export async function sendTransactionEvm({ to, amount, token, signer, rpcUrl, }) {
|
|
8
|
+
const isNativeToken = token.address.toLowerCase() === nativeEvmTokenAddress.toLowerCase();
|
|
9
|
+
if (isNativeToken) {
|
|
10
|
+
const tx = await signer.sendTransaction({
|
|
11
|
+
to,
|
|
12
|
+
value: amount,
|
|
13
|
+
chainId: Number(token.chainId),
|
|
14
|
+
});
|
|
15
|
+
return {
|
|
16
|
+
txHash: tx.hash,
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
const provider = new JsonRpcProvider(rpcUrl);
|
|
20
|
+
const erc20Contract = new Contract(token.address, erc20Abi, provider);
|
|
21
|
+
const encodedTransferCall = erc20Contract.interface.encodeFunctionData("transfer", [to, amount]);
|
|
22
|
+
const tx = await signer.sendTransaction({
|
|
23
|
+
to: token.address,
|
|
24
|
+
data: encodedTransferCall,
|
|
25
|
+
chainId: Number(token.chainId),
|
|
26
|
+
});
|
|
27
|
+
return {
|
|
28
|
+
txHash: tx.hash,
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
export async function sendTransactionCosmos({ amount, rpcUrl, signer, to, token, nativeToken, }) {
|
|
32
|
+
const accounts = await signer.getAccounts();
|
|
33
|
+
const signingClient = await SigningStargateClient.connectWithSigner(rpcUrl, signer);
|
|
34
|
+
const senderAddress = accounts[0].address;
|
|
35
|
+
const coins = [coin(amount, token.address)];
|
|
36
|
+
const fee = {
|
|
37
|
+
amount: [coin("500", nativeToken.address)],
|
|
38
|
+
gas: "150000",
|
|
39
|
+
};
|
|
40
|
+
const sendMsg = {
|
|
41
|
+
typeUrl: "/cosmos.bank.v1beta1.MsgSend",
|
|
42
|
+
value: {
|
|
43
|
+
fromAddress: senderAddress,
|
|
44
|
+
toAddress: to,
|
|
45
|
+
amount: coins,
|
|
46
|
+
},
|
|
47
|
+
};
|
|
48
|
+
const txHash = await signingClient.signAndBroadcastSync(senderAddress, [sendMsg], fee);
|
|
49
|
+
return { txHash };
|
|
50
|
+
}
|
|
51
|
+
export async function sendTransactionSolana({ signer, amount, to, token, connection, }) {
|
|
52
|
+
const amountBn = BigInt(amount);
|
|
53
|
+
const txHash = await executeSolanaTransfer({
|
|
54
|
+
amount: amountBn,
|
|
55
|
+
connection,
|
|
56
|
+
signer,
|
|
57
|
+
target: to,
|
|
58
|
+
sourceToken: token,
|
|
59
|
+
});
|
|
60
|
+
return { txHash };
|
|
61
|
+
}
|
|
62
|
+
export async function sendTransactionBitcoin({ amount, signer, to, }) {
|
|
63
|
+
const { txHash } = await signer.sendBTC(to, Number(amount));
|
|
64
|
+
return { txHash };
|
|
65
|
+
}
|
|
66
|
+
//# sourceMappingURL=sendTransaction.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sendTransaction.js","sourceRoot":"","sources":["../../../src/services/internal/sendTransaction.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { ChainData } from "@0xsquid/squid-types";
|
|
2
|
+
import { SendTransactionStatus } from "../../core/types/transaction";
|
|
3
|
+
export declare function getSendTransactionStatus({ chain, txHash, }: {
|
|
4
|
+
chain: ChainData;
|
|
5
|
+
txHash: string;
|
|
6
|
+
}): Promise<SendTransactionStatus>;
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import { ChainType } from "@0xsquid/squid-types";
|
|
2
|
+
import { AxiosError } from "axios";
|
|
3
|
+
import { getClient } from "../../core/client";
|
|
4
|
+
import { getTransactionStatus as getBtcTxStatus } from "../../core/connectors/bitcoin/helpers";
|
|
5
|
+
import { SendTransactionStatus } from "../../core/types/transaction";
|
|
6
|
+
async function getTxStatusEvm({ chain, txHash, }) {
|
|
7
|
+
const client = await getClient(chain);
|
|
8
|
+
const receipt = await client.getTransactionReceipt(txHash);
|
|
9
|
+
if (!receipt)
|
|
10
|
+
return SendTransactionStatus.ONGOING;
|
|
11
|
+
switch (receipt.status) {
|
|
12
|
+
case 0:
|
|
13
|
+
return SendTransactionStatus.ERROR;
|
|
14
|
+
case 1:
|
|
15
|
+
return SendTransactionStatus.SUCCESS;
|
|
16
|
+
}
|
|
17
|
+
return SendTransactionStatus.ONGOING;
|
|
18
|
+
}
|
|
19
|
+
async function getTxStatusCosmos({ txHash, chain, }) {
|
|
20
|
+
const client = await getClient(chain);
|
|
21
|
+
const tx = await client.getTx(txHash);
|
|
22
|
+
if (!tx) {
|
|
23
|
+
return SendTransactionStatus.ONGOING;
|
|
24
|
+
}
|
|
25
|
+
if (tx.code === 0) {
|
|
26
|
+
return SendTransactionStatus.SUCCESS;
|
|
27
|
+
}
|
|
28
|
+
return SendTransactionStatus.ERROR;
|
|
29
|
+
}
|
|
30
|
+
async function getTxStatusSolana({ txHash, chain, }) {
|
|
31
|
+
const client = await getClient(chain);
|
|
32
|
+
const txStatus = await client.getSignatureStatus(txHash, {
|
|
33
|
+
searchTransactionHistory: true,
|
|
34
|
+
});
|
|
35
|
+
if (!txStatus.value) {
|
|
36
|
+
return SendTransactionStatus.ONGOING;
|
|
37
|
+
}
|
|
38
|
+
if (txStatus.value.err) {
|
|
39
|
+
return SendTransactionStatus.ERROR;
|
|
40
|
+
}
|
|
41
|
+
switch (txStatus.value.confirmationStatus) {
|
|
42
|
+
case "processed":
|
|
43
|
+
case "confirmed":
|
|
44
|
+
return SendTransactionStatus.ONGOING;
|
|
45
|
+
case "finalized":
|
|
46
|
+
return SendTransactionStatus.SUCCESS;
|
|
47
|
+
}
|
|
48
|
+
return SendTransactionStatus.ONGOING;
|
|
49
|
+
}
|
|
50
|
+
async function getTxStatusBitcoin({ txHash, }) {
|
|
51
|
+
try {
|
|
52
|
+
const response = await getBtcTxStatus(txHash);
|
|
53
|
+
if (response.status.confirmed) {
|
|
54
|
+
return SendTransactionStatus.SUCCESS;
|
|
55
|
+
}
|
|
56
|
+
return SendTransactionStatus.ONGOING;
|
|
57
|
+
}
|
|
58
|
+
catch (error) {
|
|
59
|
+
if (error instanceof AxiosError) {
|
|
60
|
+
if (/transaction not found/i.test(error.message)) {
|
|
61
|
+
return SendTransactionStatus.ONGOING;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
throw error;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
export async function getSendTransactionStatus({ chain, txHash, }) {
|
|
68
|
+
switch (chain.chainType) {
|
|
69
|
+
case ChainType.EVM:
|
|
70
|
+
return getTxStatusEvm({
|
|
71
|
+
txHash,
|
|
72
|
+
chain,
|
|
73
|
+
});
|
|
74
|
+
case ChainType.COSMOS:
|
|
75
|
+
return getTxStatusCosmos({
|
|
76
|
+
txHash,
|
|
77
|
+
chain,
|
|
78
|
+
});
|
|
79
|
+
case ChainType.SOLANA:
|
|
80
|
+
return getTxStatusSolana({
|
|
81
|
+
txHash,
|
|
82
|
+
chain,
|
|
83
|
+
});
|
|
84
|
+
case ChainType.BTC:
|
|
85
|
+
return getTxStatusBitcoin({
|
|
86
|
+
txHash,
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
//# sourceMappingURL=sendTransactionStatus.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sendTransactionStatus.js","sourceRoot":"","sources":["../../../src/services/internal/sendTransactionStatus.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { RouteResponse, type ChainData, type StatusResponse } from "@0xsquid/squid-types";
|
|
2
|
-
import
|
|
3
|
-
import {
|
|
4
|
-
export declare const formatTransactionHistoryDate: (transaction:
|
|
2
|
+
import { HistoryTransaction, SwapTransactionHistory } from "../../core/types/history";
|
|
3
|
+
import { PatchedRouteActionResponse, SimplifiedRouteAction, SwapTransactionForHistoryStore, SwapTransactionForStatus, TransactionParams } from "../../core/types/transaction";
|
|
4
|
+
export declare const formatTransactionHistoryDate: (transaction: SwapTransactionForHistoryStore | undefined) => {
|
|
5
5
|
month: string;
|
|
6
6
|
day: string;
|
|
7
7
|
} | undefined;
|
|
@@ -16,40 +16,11 @@ export declare const formatDistance: (date: number | Date, baseDate: number | Da
|
|
|
16
16
|
export declare const formatSeconds: (seconds: number, secondsTemplate?: string, minutesTemplate?: string, hoursTemplate?: string) => string;
|
|
17
17
|
/**
|
|
18
18
|
* Remove the chainData from statusResponse to gain some storage space
|
|
19
|
-
* @param sr
|
|
20
|
-
* @returns
|
|
21
19
|
*/
|
|
22
|
-
export declare const
|
|
23
|
-
export declare const
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
fromToken: string;
|
|
27
|
-
fromAddress: string;
|
|
28
|
-
fromAmount: string;
|
|
29
|
-
toChain: string;
|
|
30
|
-
toToken: string;
|
|
31
|
-
transactionId: string;
|
|
32
|
-
transactionIdForStatus?: string | undefined;
|
|
33
|
-
toAddress: string;
|
|
34
|
-
toAmount: string;
|
|
35
|
-
toAmountMin: string;
|
|
36
|
-
exchangeRate: string;
|
|
37
|
-
status: import("../../core/types/transaction").TransactionStatus;
|
|
38
|
-
aggregatePriceImpact?: string | undefined;
|
|
39
|
-
toAmountMinUSD?: string | undefined;
|
|
40
|
-
fromAmountUSD?: string | undefined;
|
|
41
|
-
toAmountUSD?: string | undefined;
|
|
42
|
-
timestamp: number;
|
|
43
|
-
slippage?: number | undefined;
|
|
44
|
-
enableBoost?: boolean | undefined;
|
|
45
|
-
nonce?: number | undefined;
|
|
46
|
-
routeType: string | undefined;
|
|
47
|
-
sourceTxExplorerUrl?: string | undefined;
|
|
48
|
-
bridgeType?: string | undefined;
|
|
49
|
-
actions?: SimplifiedRouteAction[] | undefined;
|
|
50
|
-
};
|
|
51
|
-
export declare const fetchTransactionStatus: ({ transaction, integratorId, currentRequestId, apiUrl, }: {
|
|
52
|
-
transaction?: TransactionForStatus | undefined;
|
|
20
|
+
export declare const formatSwapTxStatusResponseForStorage: (sr: StatusResponse | undefined) => SwapTransactionHistory["statusResponse"];
|
|
21
|
+
export declare const simplifyRouteAction: (action: PatchedRouteActionResponse) => SimplifiedRouteAction;
|
|
22
|
+
export declare const fetchSwapTransactionStatus: ({ transaction, integratorId, currentRequestId, apiUrl, }: {
|
|
23
|
+
transaction?: SwapTransactionForStatus | undefined;
|
|
53
24
|
integratorId: string;
|
|
54
25
|
currentRequestId?: string | undefined;
|
|
55
26
|
apiUrl: string;
|
|
@@ -68,4 +39,5 @@ export declare const isDepositRoute: (route?: RouteResponse["route"]) => boolean
|
|
|
68
39
|
* Checks if the route contains a Chainflip bridge action
|
|
69
40
|
*/
|
|
70
41
|
export declare function isChainflipBridgeTransaction(actions?: SimplifiedRouteAction[]): boolean;
|
|
42
|
+
export declare function getHistoryTransactionId(tx: HistoryTransaction): string;
|
|
71
43
|
export {};
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { ActionType, BridgeType, SquidDataType, } from "@0xsquid/squid-types";
|
|
2
2
|
import axios from "axios";
|
|
3
3
|
import { DEFAULT_LOCALE } from "../../core/constants";
|
|
4
|
+
import { HistoryTxType, } from "../../core/types/history";
|
|
4
5
|
import { TransactionType, } from "../../core/types/transaction";
|
|
5
6
|
import { getQueryHeaders } from "./apiService";
|
|
6
7
|
export const formatTransactionHistoryDate = (transaction) => {
|
|
@@ -34,7 +35,7 @@ export const getAxelarExplorerTxUrl = (urlPrefix, routeType, txID) => {
|
|
|
34
35
|
return `${urlPrefix}gmp/${txID}`;
|
|
35
36
|
};
|
|
36
37
|
export const getSourceExplorerTxUrl = (chain, txID) => {
|
|
37
|
-
if (!chain || !chain.blockExplorerUrls[0]) {
|
|
38
|
+
if (!chain || !chain.blockExplorerUrls[0] || !txID) {
|
|
38
39
|
return undefined;
|
|
39
40
|
}
|
|
40
41
|
let txSuffix;
|
|
@@ -100,7 +101,7 @@ export const formatDistance = (date, baseDate, options) => {
|
|
|
100
101
|
// after: "2 minutes"
|
|
101
102
|
return addSuffix ? formatted : formatted.replace(/\b(?:ago)\b/, "").trim();
|
|
102
103
|
};
|
|
103
|
-
export const formatSeconds = (seconds, secondsTemplate = "
|
|
104
|
+
export const formatSeconds = (seconds, secondsTemplate = "s", minutesTemplate = "m", hoursTemplate = "h") => {
|
|
104
105
|
let duration = "";
|
|
105
106
|
if (seconds < 60) {
|
|
106
107
|
duration = `${seconds.toString()}${secondsTemplate}`;
|
|
@@ -119,40 +120,30 @@ export const formatSeconds = (seconds, secondsTemplate = " seconds", minutesTemp
|
|
|
119
120
|
};
|
|
120
121
|
/**
|
|
121
122
|
* Remove the chainData from statusResponse to gain some storage space
|
|
122
|
-
* @param sr
|
|
123
|
-
* @returns
|
|
124
123
|
*/
|
|
125
|
-
export const
|
|
124
|
+
export const formatSwapTxStatusResponseForStorage = (sr) => {
|
|
126
125
|
if (!sr) {
|
|
127
126
|
return sr;
|
|
128
127
|
}
|
|
129
|
-
const formattedSrcChain = sr.fromChain
|
|
130
|
-
? {
|
|
131
|
-
...sr.fromChain,
|
|
132
|
-
chainData: undefined,
|
|
133
|
-
callEventLog: [],
|
|
134
|
-
}
|
|
135
|
-
: undefined;
|
|
136
|
-
const formattedDestChain = sr.toChain
|
|
137
|
-
? {
|
|
138
|
-
...sr.toChain,
|
|
139
|
-
chainData: undefined,
|
|
140
|
-
callEventLog: [],
|
|
141
|
-
}
|
|
142
|
-
: undefined;
|
|
143
128
|
return {
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
129
|
+
axelarTransactionUrl: sr.axelarTransactionUrl,
|
|
130
|
+
toChain: sr.toChain?.transactionUrl
|
|
131
|
+
? {
|
|
132
|
+
transactionUrl: sr.toChain?.transactionUrl,
|
|
133
|
+
}
|
|
134
|
+
: undefined,
|
|
147
135
|
};
|
|
148
136
|
};
|
|
149
|
-
export const
|
|
137
|
+
export const simplifyRouteAction = (action) => {
|
|
150
138
|
return {
|
|
151
|
-
|
|
152
|
-
|
|
139
|
+
type: action.type,
|
|
140
|
+
provider: action.provider,
|
|
141
|
+
data: {
|
|
142
|
+
type: action.data?.type,
|
|
143
|
+
},
|
|
153
144
|
};
|
|
154
145
|
};
|
|
155
|
-
export const
|
|
146
|
+
export const fetchSwapTransactionStatus = async ({ transaction, integratorId, currentRequestId, apiUrl, }) => {
|
|
156
147
|
const statusEndpoint = `${apiUrl}/v2/status`;
|
|
157
148
|
try {
|
|
158
149
|
const response = await axios.get(statusEndpoint, {
|
|
@@ -203,4 +194,14 @@ export function isChainflipBridgeTransaction(actions = []) {
|
|
|
203
194
|
return actions.some((action) => action.type === ActionType.BRIDGE &&
|
|
204
195
|
action.data?.type === BridgeType.CHAINFLIP);
|
|
205
196
|
}
|
|
197
|
+
export function getHistoryTransactionId(tx) {
|
|
198
|
+
switch (tx.txType) {
|
|
199
|
+
case HistoryTxType.SWAP:
|
|
200
|
+
return tx.data.transactionId;
|
|
201
|
+
case HistoryTxType.BUY:
|
|
202
|
+
return tx.data.orderId;
|
|
203
|
+
case HistoryTxType.SEND:
|
|
204
|
+
return tx.data.hash;
|
|
205
|
+
}
|
|
206
|
+
}
|
|
206
207
|
//# sourceMappingURL=transactionService.js.map
|