@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
package/dist/core/types/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/types/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/types/index.ts"],"names":[],"mappings":"AACA,OAAO,EACL,oBAAoB,GAIrB,MAAM,SAAS,CAAC;AASjB,OAAO,EACL,wBAAwB,EACxB,qBAAqB,EACrB,iBAAiB,GAElB,MAAM,eAAe,CAAC"}
|
|
@@ -84,18 +84,3 @@ export type FiatToCryptoConfig = {
|
|
|
84
84
|
supportedCountries: CountryWithCode[];
|
|
85
85
|
};
|
|
86
86
|
export type FiatToCryptoProvider = BaseFiatToCryptoAdapter;
|
|
87
|
-
export type FiatTransactionHistory = {
|
|
88
|
-
fromCountryCode: string;
|
|
89
|
-
orderId: string;
|
|
90
|
-
fromFiatCurrency: string;
|
|
91
|
-
fromAmount: string;
|
|
92
|
-
toCryptoCurrencyID: string;
|
|
93
|
-
toTokenAddress: string;
|
|
94
|
-
toCryptoAmount: string;
|
|
95
|
-
toChainId: string;
|
|
96
|
-
toAddress: string;
|
|
97
|
-
status: OnRampTransactionStatusType;
|
|
98
|
-
timestamp: number;
|
|
99
|
-
transactionHash?: string;
|
|
100
|
-
errorMessage?: string;
|
|
101
|
-
};
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import type { ChainData, RouteActionResponse, RouteResponse
|
|
2
|
-
import
|
|
1
|
+
import type { ChainData, RouteActionResponse, RouteResponse } from "@0xsquid/squid-types";
|
|
2
|
+
import { UseQueryResult } from "@tanstack/react-query";
|
|
3
3
|
import type { TransactionErrorWithMessage } from "./error";
|
|
4
|
+
import { SwapTransactionHistory } from "./history";
|
|
4
5
|
export declare enum TransactionType {
|
|
5
6
|
BRIDGE = "BRIDGE",
|
|
6
7
|
BRIDGE_CALL = "BRIDGE_CALL",
|
|
@@ -35,6 +36,11 @@ export declare enum TransactionStatus {
|
|
|
35
36
|
REJECTED = "rejected",
|
|
36
37
|
REFUNDED = "refunded"
|
|
37
38
|
}
|
|
39
|
+
export declare enum SendTransactionStatus {
|
|
40
|
+
ONGOING = 0,
|
|
41
|
+
SUCCESS = 1,
|
|
42
|
+
ERROR = 2
|
|
43
|
+
}
|
|
38
44
|
export interface TransactionParams {
|
|
39
45
|
routeType: string;
|
|
40
46
|
fromChain?: ChainData;
|
|
@@ -52,7 +58,7 @@ export interface TransactionParams {
|
|
|
52
58
|
sourceTxExplorerUrl?: string;
|
|
53
59
|
sourceExplorerImgUrl?: string;
|
|
54
60
|
}
|
|
55
|
-
export type
|
|
61
|
+
export type SwapTransactionForHistoryStore = TransactionParams & Pick<RouteResponse["route"], "params" | "estimate">;
|
|
56
62
|
export interface StepStatusGetterProps {
|
|
57
63
|
transaction?: TransactionParams;
|
|
58
64
|
statusResponse?: UseQueryResult<any, unknown>;
|
|
@@ -61,35 +67,7 @@ export interface StepStatusGetterProps {
|
|
|
61
67
|
export interface PatchedRouteActionResponse extends Omit<RouteActionResponse, "data"> {
|
|
62
68
|
data?: RouteActionResponse["data"];
|
|
63
69
|
}
|
|
64
|
-
export type
|
|
70
|
+
export type SwapTransactionForStatus = Pick<SwapTransactionHistory, "fromChain" | "transactionId" | "toChain" | "status" | "fromAddress" | "bridgeType" | "transactionIdForStatus" | "actions">;
|
|
65
71
|
export type SimplifiedRouteAction = Pick<PatchedRouteActionResponse, "type" | "provider"> & {
|
|
66
72
|
data?: any;
|
|
67
73
|
};
|
|
68
|
-
export type SimplifiedTransactionHistory = {
|
|
69
|
-
fromChain: string;
|
|
70
|
-
fromToken: string;
|
|
71
|
-
fromAddress: string;
|
|
72
|
-
fromAmount: string;
|
|
73
|
-
toChain: string;
|
|
74
|
-
toToken: string;
|
|
75
|
-
transactionId: string;
|
|
76
|
-
transactionIdForStatus?: string;
|
|
77
|
-
toAddress: string;
|
|
78
|
-
toAmount: string;
|
|
79
|
-
toAmountMin: string;
|
|
80
|
-
exchangeRate: string;
|
|
81
|
-
status: TransactionStatus;
|
|
82
|
-
aggregatePriceImpact?: string;
|
|
83
|
-
toAmountMinUSD?: string;
|
|
84
|
-
fromAmountUSD?: string;
|
|
85
|
-
toAmountUSD?: string;
|
|
86
|
-
timestamp: number;
|
|
87
|
-
slippage?: number;
|
|
88
|
-
enableBoost?: boolean;
|
|
89
|
-
nonce?: number;
|
|
90
|
-
routeType: string | undefined;
|
|
91
|
-
statusResponse?: StatusResponse;
|
|
92
|
-
sourceTxExplorerUrl?: string;
|
|
93
|
-
bridgeType?: string;
|
|
94
|
-
actions?: SimplifiedRouteAction[];
|
|
95
|
-
};
|
|
@@ -38,4 +38,10 @@ export var TransactionStatus;
|
|
|
38
38
|
// Coral refund
|
|
39
39
|
TransactionStatus["REFUNDED"] = "refunded";
|
|
40
40
|
})(TransactionStatus || (TransactionStatus = {}));
|
|
41
|
+
export var SendTransactionStatus;
|
|
42
|
+
(function (SendTransactionStatus) {
|
|
43
|
+
SendTransactionStatus[SendTransactionStatus["ONGOING"] = 0] = "ONGOING";
|
|
44
|
+
SendTransactionStatus[SendTransactionStatus["SUCCESS"] = 1] = "SUCCESS";
|
|
45
|
+
SendTransactionStatus[SendTransactionStatus["ERROR"] = 2] = "ERROR";
|
|
46
|
+
})(SendTransactionStatus || (SendTransactionStatus = {}));
|
|
41
47
|
//# sourceMappingURL=transaction.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transaction.js","sourceRoot":"","sources":["../../../src/core/types/transaction.ts"],"names":[],"mappings":"AASA,MAAM,CAAN,IAAY,eAKX;AALD,WAAY,eAAe;IACzB,oCAAiB,CAAA;IACjB,8CAA2B,CAAA;IAC3B,8CAA2B,CAAA;IAC3B,wDAAqC,CAAA;AACvC,CAAC,EALW,eAAe,KAAf,eAAe,QAK1B;AAED,MAAM,CAAN,IAAY,wBAaX;AAbD,WAAY,wBAAwB;IAClC,+EAAmD,CAAA;IACnD,yEAA6C,CAAA;IAC7C,iEAAqC,CAAA;IACrC,+EAAmD,CAAA;IACnD,2EAA+C,CAAA;IAC/C,wEAA4C,CAAA;IAC5C,kFAAsD,CAAA;IACtD,mFAAuD,CAAA;IACvD,+DAAmC,CAAA;IACnC,2DAA+B,CAAA;IAC/B,uEAA2C,CAAA;IAC3C,2CAAe,CAAA;AACjB,CAAC,EAbW,wBAAwB,KAAxB,wBAAwB,QAanC;AAED,MAAM,CAAN,IAAY,iBAgBX;AAhBD,WAAY,iBAAiB;IAC3B,kDAAkD;IAClD,wCAAmB,CAAA;IACnB,4CAAuB,CAAA;IACvB,wCAAmB,CAAA;IACnB,wDAAmC,CAAA;IACnC,4CAAuB,CAAA;IACvB,qDAAqD;IACrD,uDAAkC,CAAA;IAClC,8DAAyC,CAAA;IACzC,oCAAe,CAAA;IACf,wCAAmB,CAAA;IACnB,wCAAmB,CAAA;IACnB,0CAAqB,CAAA;IACrB,eAAe;IACf,0CAAqB,CAAA;AACvB,CAAC,EAhBW,iBAAiB,KAAjB,iBAAiB,QAgB5B"}
|
|
1
|
+
{"version":3,"file":"transaction.js","sourceRoot":"","sources":["../../../src/core/types/transaction.ts"],"names":[],"mappings":"AASA,MAAM,CAAN,IAAY,eAKX;AALD,WAAY,eAAe;IACzB,oCAAiB,CAAA;IACjB,8CAA2B,CAAA;IAC3B,8CAA2B,CAAA;IAC3B,wDAAqC,CAAA;AACvC,CAAC,EALW,eAAe,KAAf,eAAe,QAK1B;AAED,MAAM,CAAN,IAAY,wBAaX;AAbD,WAAY,wBAAwB;IAClC,+EAAmD,CAAA;IACnD,yEAA6C,CAAA;IAC7C,iEAAqC,CAAA;IACrC,+EAAmD,CAAA;IACnD,2EAA+C,CAAA;IAC/C,wEAA4C,CAAA;IAC5C,kFAAsD,CAAA;IACtD,mFAAuD,CAAA;IACvD,+DAAmC,CAAA;IACnC,2DAA+B,CAAA;IAC/B,uEAA2C,CAAA;IAC3C,2CAAe,CAAA;AACjB,CAAC,EAbW,wBAAwB,KAAxB,wBAAwB,QAanC;AAED,MAAM,CAAN,IAAY,iBAgBX;AAhBD,WAAY,iBAAiB;IAC3B,kDAAkD;IAClD,wCAAmB,CAAA;IACnB,4CAAuB,CAAA;IACvB,wCAAmB,CAAA;IACnB,wDAAmC,CAAA;IACnC,4CAAuB,CAAA;IACvB,qDAAqD;IACrD,uDAAkC,CAAA;IAClC,8DAAyC,CAAA;IACzC,oCAAe,CAAA;IACf,wCAAmB,CAAA;IACnB,wCAAmB,CAAA;IACnB,0CAAqB,CAAA;IACrB,eAAe;IACf,0CAAqB,CAAA;AACvB,CAAC,EAhBW,iBAAiB,KAAjB,iBAAiB,QAgB5B;AAED,MAAM,CAAN,IAAY,qBAIX;AAJD,WAAY,qBAAqB;IAC/B,uEAAO,CAAA;IACP,uEAAO,CAAA;IACP,mEAAK,CAAA;AACP,CAAC,EAJW,qBAAqB,KAArB,qBAAqB,QAIhC"}
|
package/dist/core/wagmiConfig.js
CHANGED
|
@@ -3,18 +3,12 @@ import { BrowserProvider, JsonRpcSigner } from "ethers";
|
|
|
3
3
|
import { defineChain, } from "viem";
|
|
4
4
|
import { createConfig, http } from "wagmi";
|
|
5
5
|
import { injected, safe } from "wagmi/connectors";
|
|
6
|
-
import { CHAIN_RPC_MAPPING } from "./constants";
|
|
7
6
|
export const createWagmiConfig = (squidChains) => {
|
|
8
7
|
const filteredEvmChains = squidChains.filter((chain) => chain.chainType === ChainType.EVM);
|
|
9
8
|
if (filteredEvmChains.length === 0) {
|
|
10
9
|
throw new Error("At least one chain is required");
|
|
11
10
|
}
|
|
12
11
|
const wagmiChains = filteredEvmChains.map((chain) => {
|
|
13
|
-
let rpc = chain.rpc;
|
|
14
|
-
const chainId = chain.chainId;
|
|
15
|
-
if (CHAIN_RPC_MAPPING.hasOwnProperty(chainId)) {
|
|
16
|
-
rpc = CHAIN_RPC_MAPPING[chainId];
|
|
17
|
-
}
|
|
18
12
|
return defineChain({
|
|
19
13
|
id: Number(chain.chainId),
|
|
20
14
|
name: chain.networkName,
|
|
@@ -25,10 +19,10 @@ export const createWagmiConfig = (squidChains) => {
|
|
|
25
19
|
},
|
|
26
20
|
rpcUrls: {
|
|
27
21
|
public: {
|
|
28
|
-
http: [rpc],
|
|
22
|
+
http: [chain.rpc],
|
|
29
23
|
},
|
|
30
24
|
default: {
|
|
31
|
-
http: [rpc],
|
|
25
|
+
http: [chain.rpc],
|
|
32
26
|
},
|
|
33
27
|
},
|
|
34
28
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wagmiConfig.js","sourceRoot":"","sources":["../../src/core/wagmiConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACxD,OAAO,EACL,WAAW,GAKZ,MAAM,MAAM,CAAC;AACd,OAAO,EAAU,YAAY,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"wagmiConfig.js","sourceRoot":"","sources":["../../src/core/wagmiConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACxD,OAAO,EACL,WAAW,GAKZ,MAAM,MAAM,CAAC;AACd,OAAO,EAAU,YAAY,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAElD,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,WAAwB,EAAU,EAAE;IACpE,MAAM,iBAAiB,GAAG,WAAW,CAAC,MAAM,CAC1C,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,GAAG,CAC7C,CAAC;IAEF,IAAI,iBAAiB,CAAC,MAAM,KAAK,CAAC,EAAE;QAClC,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;KACnD;IAED,MAAM,WAAW,GAAY,iBAAiB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QAC3D,OAAO,WAAW,CAAC;YACjB,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC;YACzB,IAAI,EAAE,KAAK,CAAC,WAAW;YACvB,cAAc,EAAE;gBACd,IAAI,EAAE,KAAK,CAAC,cAAc,CAAC,IAAI;gBAC/B,MAAM,EAAE,KAAK,CAAC,cAAc,CAAC,MAAM;gBACnC,QAAQ,EAAE,KAAK,CAAC,cAAc,CAAC,QAAQ;aACxC;YACD,OAAO,EAAE;gBACP,MAAM,EAAE;oBACN,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC;iBAClB;gBACD,OAAO,EAAE;oBACP,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC;iBAClB;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,YAAY,CAAC;QAClB,MAAM,EAAE,WAAkC;QAC1C,UAAU,EAAE,MAAM,CAAC,WAAW,CAC5B,WAAW,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC;YACzB,KAAK,CAAC,EAAE;YACR,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;SACzC,CAAC,CACH;QAED,UAAU,EAAE;YACV,QAAQ,EAAE;YACV,IAAI,CAAC;gBACH,cAAc,EAAE,CAAC,kBAAkB,CAAC;aACrC,CAAC;SACH;KACF,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,wBAAwB;AACxB,uCAAuC;AACvC,MAAM,UAAU,cAAc,CAAC,MAAyC;IACtE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC;IAC7C,IAAI,CAAC,OAAO,IAAI,CAAC,KAAK,IAAI,CAAC,SAAS,EAAE;QACpC,OAAO,SAAS,CAAC;KAClB;IACD,MAAM,OAAO,GAAG;QACd,OAAO,EAAE,KAAK,CAAC,EAAE;QACjB,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,UAAU,EAAE,KAAK,CAAC,SAAS,EAAE,WAAW,EAAE,OAAO;KAClD,CAAC;IACF,MAAM,QAAQ,GAAG,IAAI,eAAe,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACzD,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAC5D,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -2,8 +2,8 @@ import { useQuery } from "@tanstack/react-query";
|
|
|
2
2
|
import { DEFAULT_COUNTRY_CODE } from "../../core/constants";
|
|
3
3
|
import { keys } from "../../core/queries/queries-keys";
|
|
4
4
|
import { getUserCountry } from "../../services/internal/fiatToCryptoService";
|
|
5
|
-
const CACHE_TIME = 1000 * 60 * 60 * 24 *
|
|
6
|
-
const STALE_TIME = 1000 * 60 * 60 *
|
|
5
|
+
const CACHE_TIME = 1000 * 60 * 60 * 24 * 2; // 2 days
|
|
6
|
+
const STALE_TIME = 1000 * 60 * 60 * 12; // 12 hours
|
|
7
7
|
export const useClient = () => {
|
|
8
8
|
const isClient = typeof window !== "undefined";
|
|
9
9
|
const clientWindow = isClient ? window : undefined;
|
|
@@ -1,2 +1,11 @@
|
|
|
1
|
+
import type { ChainData } from "@0xsquid/squid-types";
|
|
2
|
+
import { OfflineSigner } from "@cosmjs/proto-signing";
|
|
3
|
+
import type { Keplr } from "@keplr-wallet/types";
|
|
1
4
|
import { ICosmosContextData } from "../../core/providers/CosmosProvider";
|
|
2
5
|
export declare const useCosmos: () => ICosmosContextData;
|
|
6
|
+
export declare function useCosmosSigner({ chain }: {
|
|
7
|
+
chain: ChainData | undefined;
|
|
8
|
+
}): {
|
|
9
|
+
signer: OfflineSigner | undefined;
|
|
10
|
+
keplrTypeWallet: Keplr | undefined;
|
|
11
|
+
};
|
|
@@ -14,28 +14,15 @@ export const useCosmos = () => {
|
|
|
14
14
|
const cosmosAddress = cosmosWalletState.address;
|
|
15
15
|
const isConnected = !!cosmosAddress;
|
|
16
16
|
const cosmosConnectedWallet = cosmosWalletState.wallet;
|
|
17
|
-
const [cosmosSigner, setCosmosSigner] = useState(undefined);
|
|
18
17
|
const [cosmosChainId, setCosmosChainId] = useState();
|
|
19
18
|
const { swapRoute } = useSwapRoutePersistStore();
|
|
20
19
|
const { fromChain } = useSwap();
|
|
21
20
|
const { cosmosChains } = useSquidChains();
|
|
22
|
-
const { clientWindow
|
|
21
|
+
const { clientWindow } = useClient();
|
|
23
22
|
const { setConnectedWallet, disconnectWallet } = useWalletStore();
|
|
24
|
-
const keplrTypeWallet =
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
}
|
|
28
|
-
const connector = getConnectorForChainType(cosmosWalletState.wallet, ChainType.COSMOS);
|
|
29
|
-
return connector?.()?.provider;
|
|
30
|
-
}, [cosmosWalletState?.wallet, isClient]);
|
|
31
|
-
// As soon as from chain changes, need to fetch the new signer
|
|
32
|
-
useEffect(() => {
|
|
33
|
-
if (fromChain?.chainType === ChainType.COSMOS && keplrTypeWallet) {
|
|
34
|
-
// use Amino signer for Ledger compatibility
|
|
35
|
-
const newCosmosSigner = keplrTypeWallet.getOfflineSignerOnlyAmino(fromChain?.chainId.toString());
|
|
36
|
-
setCosmosSigner(newCosmosSigner);
|
|
37
|
-
}
|
|
38
|
-
}, [fromChain?.chainId, fromChain?.chainType, keplrTypeWallet]);
|
|
23
|
+
const { keplrTypeWallet, signer: cosmosSigner } = useCosmosSigner({
|
|
24
|
+
chain: fromChain,
|
|
25
|
+
});
|
|
39
26
|
const getCosmosAddressForChain = useCallback(async (chainId) => {
|
|
40
27
|
return getCosmosKey(chainId, keplrTypeWallet);
|
|
41
28
|
}, [keplrTypeWallet]);
|
|
@@ -158,10 +145,30 @@ export const useCosmos = () => {
|
|
|
158
145
|
isConnected,
|
|
159
146
|
onCosmosChainChange,
|
|
160
147
|
cosmosConnectedWallet,
|
|
161
|
-
keplrTypeWallet,
|
|
162
148
|
cosmosSigner,
|
|
149
|
+
keplrTypeWallet,
|
|
163
150
|
getCosmosAddressForChain,
|
|
164
151
|
cosmosAddress,
|
|
165
152
|
};
|
|
166
153
|
};
|
|
154
|
+
export function useCosmosSigner({ chain }) {
|
|
155
|
+
const cosmosWalletState = useWalletStore((state) => state.connectedWalletsByChainType[ChainType.COSMOS]);
|
|
156
|
+
const connector = useMemo(() => {
|
|
157
|
+
if (!cosmosWalletState?.wallet) {
|
|
158
|
+
return undefined;
|
|
159
|
+
}
|
|
160
|
+
const cosmosConnector = getConnectorForChainType(cosmosWalletState.wallet, ChainType.COSMOS);
|
|
161
|
+
if (!cosmosConnector)
|
|
162
|
+
return undefined;
|
|
163
|
+
return cosmosConnector()?.provider;
|
|
164
|
+
}, [cosmosWalletState?.wallet]);
|
|
165
|
+
const signer = useMemo(() => {
|
|
166
|
+
if (!connector || chain?.chainType !== ChainType.COSMOS)
|
|
167
|
+
return;
|
|
168
|
+
// use Amino signer for Ledger compatibility
|
|
169
|
+
const newCosmosSigner = connector.getOfflineSignerOnlyAmino(chain.chainId);
|
|
170
|
+
return newCosmosSigner;
|
|
171
|
+
}, [chain?.chainId, chain?.chainType, connector]);
|
|
172
|
+
return { signer, keplrTypeWallet: connector };
|
|
173
|
+
}
|
|
167
174
|
//# sourceMappingURL=useCosmos.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useCosmos.js","sourceRoot":"","sources":["../../../src/hooks/cosmos/useCosmos.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAGjD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAGjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EACL,yBAAyB,EACzB,YAAY,GACb,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,wBAAwB,EAAE,MAAM,uCAAuC,CAAC;AACjF,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,MAAM,CAAC,MAAM,SAAS,GAAG,GAAuB,EAAE;IAChD,MAAM,iBAAiB,GAAG,cAAc,CACtC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,2BAA2B,CAAC,SAAS,CAAC,MAAM,CAAC,CAChB,CAAC;IAEjD,MAAM,aAAa,GAAG,iBAAiB,CAAC,OAAO,CAAC;IAChD,MAAM,WAAW,GAAG,CAAC,CAAC,aAAa,CAAC;IACpC,MAAM,qBAAqB,GAAG,iBAAiB,CAAC,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"useCosmos.js","sourceRoot":"","sources":["../../../src/hooks/cosmos/useCosmos.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import type { ChainData } from "@0xsquid/squid-types";
|
|
2
2
|
import { UseQueryResult } from "@tanstack/react-query";
|
|
3
|
-
export declare const useCosmosForChain: (
|
|
3
|
+
export declare const useCosmosForChain: (chain: ChainData | undefined) => UseQueryResult<string, unknown>;
|
|
@@ -1,21 +1,17 @@
|
|
|
1
1
|
import { ChainType } from "@0xsquid/squid-types";
|
|
2
2
|
import { useQuery } from "@tanstack/react-query";
|
|
3
|
-
import { useCosmosContext } from "../../core/providers/CosmosProvider";
|
|
4
3
|
import { keys } from "../../core/queries/queries-keys";
|
|
5
4
|
import { getCosmosKey } from "../../services";
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
const
|
|
9
|
-
|
|
5
|
+
import { useCosmosSigner } from "./useCosmos";
|
|
6
|
+
export const useCosmosForChain = (chain) => {
|
|
7
|
+
const { keplrTypeWallet } = useCosmosSigner({ chain });
|
|
8
|
+
const cosmosAddressQuery = useQuery(keys().cosmosAddress(chain?.chainId), async () => {
|
|
9
|
+
if (!chain || !keplrTypeWallet)
|
|
10
10
|
return "";
|
|
11
|
-
const address = await getCosmosKey(
|
|
11
|
+
const address = await getCosmosKey(chain.chainId, keplrTypeWallet);
|
|
12
12
|
return address ?? "";
|
|
13
13
|
}, {
|
|
14
|
-
enabled:
|
|
15
|
-
!!keplrTypeWallet &&
|
|
16
|
-
!!chainId &&
|
|
17
|
-
!!cosmosAddress &&
|
|
18
|
-
chainData?.chainType === ChainType.COSMOS,
|
|
14
|
+
enabled: !!keplrTypeWallet && chain?.chainType === ChainType.COSMOS,
|
|
19
15
|
});
|
|
20
16
|
return cosmosAddressQuery;
|
|
21
17
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useCosmosForChain.js","sourceRoot":"","sources":["../../../src/hooks/cosmos/useCosmosForChain.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAkB,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"useCosmosForChain.js","sourceRoot":"","sources":["../../../src/hooks/cosmos/useCosmosForChain.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAkB,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAE,IAAI,EAAE,MAAM,iCAAiC,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,KAA4B,EACK,EAAE;IACnC,MAAM,EAAE,eAAe,EAAE,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAEvD,MAAM,kBAAkB,GAAG,QAAQ,CACjC,IAAI,EAAE,CAAC,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC,EACpC,KAAK,IAAI,EAAE;QACT,IAAI,CAAC,KAAK,IAAI,CAAC,eAAe;YAAE,OAAO,EAAE,CAAC;QAE1C,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,KAAK,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;QAEnE,OAAO,OAAO,IAAI,EAAE,CAAC;IACvB,CAAC,EACD;QACE,OAAO,EAAE,CAAC,CAAC,eAAe,IAAI,KAAK,EAAE,SAAS,KAAK,SAAS,CAAC,MAAM;KACpE,CACF,CAAC;IAEF,OAAO,kBAAkB,CAAC;AAC5B,CAAC,CAAC"}
|
package/dist/hooks/index.d.ts
CHANGED
|
@@ -8,8 +8,8 @@ export { useSquid } from "./squid/useSquid";
|
|
|
8
8
|
export { useAddressBookStore } from "./store/useAddressBookStore";
|
|
9
9
|
export { useAssetsColorsStore } from "./store/useAssetsColorsStore";
|
|
10
10
|
export { useFavoriteTokensStore, type FavoriteToken, } from "./store/useFavoriteTokensStore";
|
|
11
|
-
export { useFiatTransactionStore } from "./store/useFiatTransactionStore";
|
|
12
11
|
export { useHistoryStore } from "./store/useHistoryStore";
|
|
12
|
+
export { useSendTransactionStore } from "./store/useSendTransactionStore";
|
|
13
13
|
export { useConfigStore, useSquidStore, useSwapRoutePersistStore, useTransactionStore, } from "./store/useSquidStore";
|
|
14
14
|
export { useDepositAddress } from "./swap/useDepositAddress";
|
|
15
15
|
export { useSwap } from "./swap/useSwap";
|
|
@@ -23,6 +23,9 @@ export { useNativeTokenForChain } from "./tokens/useNativeTokenForChain";
|
|
|
23
23
|
export { useSingleTokenPrice } from "./tokens/useSingleTokenPrice";
|
|
24
24
|
export { useSquidTokens } from "./tokens/useSquidTokens";
|
|
25
25
|
export { useHistoricalData, useTokensData, } from "./tokens/useTokenHistoricalData";
|
|
26
|
+
export { useEstimateSendTransaction } from "./transaction/send/useEstimateSendTransactionGas";
|
|
27
|
+
export { useSendTransaction } from "./transaction/send/useSendTransaction";
|
|
28
|
+
export { useSendTransactionGas } from "./transaction/send/useSendTransactionGas";
|
|
26
29
|
export { useAllTransactionsStatus } from "./transaction/useAllTransactionsStatus";
|
|
27
30
|
export { useApproval } from "./transaction/useApproval";
|
|
28
31
|
export { useEstimate } from "./transaction/useEstimate";
|
|
@@ -30,7 +33,8 @@ export { useEstimatePriceImpact } from "./transaction/useEstimatePriceImpact";
|
|
|
30
33
|
export { useExecuteTransaction } from "./transaction/useExecuteTransaction";
|
|
31
34
|
export { useGetRoute, useGetRouteWrapper } from "./transaction/useGetRoute";
|
|
32
35
|
export { useRouteWarnings } from "./transaction/useRouteWarnings";
|
|
33
|
-
export {
|
|
36
|
+
export { useSendTransactionStatus } from "./transaction/useSendTransactionStatus";
|
|
37
|
+
export { useSwapTransactionStatus } from "./transaction/useSwapTransactionStatus";
|
|
34
38
|
export { useAvatar } from "./user/useAvatar";
|
|
35
39
|
export { useHistory } from "./user/useHistory";
|
|
36
40
|
export { useUserParams } from "./user/useUserParams";
|
|
@@ -41,5 +45,6 @@ export { useEnsDataForAddress, useEnsSearch } from "./wallet/useEns";
|
|
|
41
45
|
export { useGnosisContext, useIsSameAddressAndGnosisContext, } from "./wallet/useGnosisContext";
|
|
42
46
|
export { useIntegratorContext } from "./wallet/useIntegratorContext";
|
|
43
47
|
export { useMultiChainWallet } from "./wallet/useMultiChainWallet";
|
|
48
|
+
export { useSigner } from "./wallet/useSigner";
|
|
44
49
|
export { useWallet } from "./wallet/useWallet";
|
|
45
50
|
export { useWallets } from "./wallet/useWallets";
|
package/dist/hooks/index.js
CHANGED
|
@@ -8,8 +8,8 @@ export { useSquid } from "./squid/useSquid";
|
|
|
8
8
|
export { useAddressBookStore } from "./store/useAddressBookStore";
|
|
9
9
|
export { useAssetsColorsStore } from "./store/useAssetsColorsStore";
|
|
10
10
|
export { useFavoriteTokensStore, } from "./store/useFavoriteTokensStore";
|
|
11
|
-
export { useFiatTransactionStore } from "./store/useFiatTransactionStore";
|
|
12
11
|
export { useHistoryStore } from "./store/useHistoryStore";
|
|
12
|
+
export { useSendTransactionStore } from "./store/useSendTransactionStore";
|
|
13
13
|
export { useConfigStore, useSquidStore, useSwapRoutePersistStore, useTransactionStore, } from "./store/useSquidStore";
|
|
14
14
|
export { useDepositAddress } from "./swap/useDepositAddress";
|
|
15
15
|
export { useSwap } from "./swap/useSwap";
|
|
@@ -23,6 +23,9 @@ export { useNativeTokenForChain } from "./tokens/useNativeTokenForChain";
|
|
|
23
23
|
export { useSingleTokenPrice } from "./tokens/useSingleTokenPrice";
|
|
24
24
|
export { useSquidTokens } from "./tokens/useSquidTokens";
|
|
25
25
|
export { useHistoricalData, useTokensData, } from "./tokens/useTokenHistoricalData";
|
|
26
|
+
export { useEstimateSendTransaction } from "./transaction/send/useEstimateSendTransactionGas";
|
|
27
|
+
export { useSendTransaction } from "./transaction/send/useSendTransaction";
|
|
28
|
+
export { useSendTransactionGas } from "./transaction/send/useSendTransactionGas";
|
|
26
29
|
export { useAllTransactionsStatus } from "./transaction/useAllTransactionsStatus";
|
|
27
30
|
export { useApproval } from "./transaction/useApproval";
|
|
28
31
|
export { useEstimate } from "./transaction/useEstimate";
|
|
@@ -30,7 +33,8 @@ export { useEstimatePriceImpact } from "./transaction/useEstimatePriceImpact";
|
|
|
30
33
|
export { useExecuteTransaction } from "./transaction/useExecuteTransaction";
|
|
31
34
|
export { useGetRoute, useGetRouteWrapper } from "./transaction/useGetRoute";
|
|
32
35
|
export { useRouteWarnings } from "./transaction/useRouteWarnings";
|
|
33
|
-
export {
|
|
36
|
+
export { useSendTransactionStatus } from "./transaction/useSendTransactionStatus";
|
|
37
|
+
export { useSwapTransactionStatus } from "./transaction/useSwapTransactionStatus";
|
|
34
38
|
export { useAvatar } from "./user/useAvatar";
|
|
35
39
|
export { useHistory } from "./user/useHistory";
|
|
36
40
|
export { useUserParams } from "./user/useUserParams";
|
|
@@ -41,6 +45,7 @@ export { useEnsDataForAddress, useEnsSearch } from "./wallet/useEns";
|
|
|
41
45
|
export { useGnosisContext, useIsSameAddressAndGnosisContext, } from "./wallet/useGnosisContext";
|
|
42
46
|
export { useIntegratorContext } from "./wallet/useIntegratorContext";
|
|
43
47
|
export { useMultiChainWallet } from "./wallet/useMultiChainWallet";
|
|
48
|
+
export { useSigner } from "./wallet/useSigner";
|
|
44
49
|
export { useWallet } from "./wallet/useWallet";
|
|
45
50
|
export { useWallets } from "./wallet/useWallets";
|
|
46
51
|
//# sourceMappingURL=index.js.map
|
package/dist/hooks/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,cAAc,0BAA0B,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EACL,sBAAsB,GAEvB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CountryWithCode, ExecuteFiatQuoteResultClient, ExecuteQuoteClient, FiatCurrencyEnhanced, FiatToCryptoConfig, FiatToCryptoProvider, OnRampQuoteResponse, OnRampTransactionStatus } from "../../core/types/onramps/onramp";
|
|
1
|
+
import { CountryWithCode, ExecuteFiatQuoteResultClient, ExecuteQuoteClient, FiatCurrencyEnhanced, FiatToCryptoConfig, FiatToCryptoProvider, OnRampQuoteResponse, OnRampTransactionStatus, OnRampTransactionStatusType } from "../../core/types/onramps/onramp";
|
|
2
2
|
interface GetFiatQuoteParams {
|
|
3
3
|
provider: FiatToCryptoProvider;
|
|
4
4
|
fiatCurrency: string;
|
|
@@ -7,6 +7,15 @@ interface GetFiatQuoteParams {
|
|
|
7
7
|
region?: string;
|
|
8
8
|
enabled?: boolean;
|
|
9
9
|
}
|
|
10
|
+
export declare const TX_STATUS_CONSTANTS: {
|
|
11
|
+
readonly RETRY_COUNT: 10;
|
|
12
|
+
readonly RETRY_DELAY: 60000;
|
|
13
|
+
readonly REFETCH_INTERVAL: 30000;
|
|
14
|
+
};
|
|
15
|
+
/**
|
|
16
|
+
* Final transaction statuses that indicate the transaction has reached a terminal state
|
|
17
|
+
*/
|
|
18
|
+
export declare const FINAL_TRANSACTION_STATUSES: OnRampTransactionStatusType[];
|
|
10
19
|
/**
|
|
11
20
|
* Hook to fetch quote for fiat to crypto conversion
|
|
12
21
|
* @param provider - The fiat-to-crypto provider (e.g., Revolut, Onramper)
|
|
@@ -36,15 +45,6 @@ export declare const useExecuteFiatQuote: (provider: FiatToCryptoProvider) => im
|
|
|
36
45
|
* @returns Query result containing the transaction status
|
|
37
46
|
*/
|
|
38
47
|
export declare const useFiatOnRampTxStatus: (provider: FiatToCryptoProvider, transactionId: string, walletAddress: string) => import("@tanstack/react-query").UseQueryResult<OnRampTransactionStatus | undefined, unknown>;
|
|
39
|
-
/**
|
|
40
|
-
* Hook to track all fiat transactions and their status
|
|
41
|
-
* @returns Array of transactions with their latest status
|
|
42
|
-
*/
|
|
43
|
-
export declare const useFiatTransactions: (provider?: FiatToCryptoProvider) => {
|
|
44
|
-
transactions: import("../../core/types/onramps/onramp").FiatTransactionHistory[];
|
|
45
|
-
isLoading: boolean;
|
|
46
|
-
isError: boolean;
|
|
47
|
-
};
|
|
48
48
|
/**
|
|
49
49
|
* Hook to get currency details based on denomination
|
|
50
50
|
* @param currencyCode - The currency code (e.g., "USD", "EUR")
|
|
@@ -1,12 +1,13 @@
|
|
|
1
|
-
import { useMutation,
|
|
1
|
+
import { useMutation, useQuery } from "@tanstack/react-query";
|
|
2
2
|
import { useMemo } from "react";
|
|
3
3
|
import { keys } from "../../core/queries/queries-keys";
|
|
4
|
+
import { HistoryTxType } from "../../core/types/history";
|
|
4
5
|
import { FiatToCryptoService, getCountryData, getCurrencyData, } from "../../services/internal/fiatToCryptoService";
|
|
5
6
|
import { isWalletAddressValid } from "../../services/internal/walletService";
|
|
6
7
|
import { useSquidChains } from "../chains/useSquidChains";
|
|
7
|
-
import {
|
|
8
|
+
import { useHistoryStore } from "../store/useHistoryStore";
|
|
8
9
|
import { useSquidTokens } from "../tokens/useSquidTokens";
|
|
9
|
-
const TX_STATUS_CONSTANTS = {
|
|
10
|
+
export const TX_STATUS_CONSTANTS = {
|
|
10
11
|
RETRY_COUNT: 10,
|
|
11
12
|
RETRY_DELAY: 60_000,
|
|
12
13
|
REFETCH_INTERVAL: 30_000, // Check every 30 seconds
|
|
@@ -14,7 +15,7 @@ const TX_STATUS_CONSTANTS = {
|
|
|
14
15
|
/**
|
|
15
16
|
* Final transaction statuses that indicate the transaction has reached a terminal state
|
|
16
17
|
*/
|
|
17
|
-
const FINAL_TRANSACTION_STATUSES = [
|
|
18
|
+
export const FINAL_TRANSACTION_STATUSES = [
|
|
18
19
|
"completed",
|
|
19
20
|
"failed",
|
|
20
21
|
];
|
|
@@ -64,7 +65,7 @@ export const useGetOnRampConfig = (provider) => {
|
|
|
64
65
|
*/
|
|
65
66
|
export const useExecuteFiatQuote = (provider) => {
|
|
66
67
|
const service = useMemo(() => new FiatToCryptoService(provider), [provider]);
|
|
67
|
-
const
|
|
68
|
+
const persistTransaction = useHistoryStore((state) => state.persistTransaction);
|
|
68
69
|
const { findChain } = useSquidChains();
|
|
69
70
|
return useMutation({
|
|
70
71
|
mutationFn: async (executeQuoteRequest) => {
|
|
@@ -83,7 +84,23 @@ export const useExecuteFiatQuote = (provider) => {
|
|
|
83
84
|
};
|
|
84
85
|
},
|
|
85
86
|
onSuccess: (result) => {
|
|
86
|
-
|
|
87
|
+
const { executeQuoteRequest, toChain, orderId } = result;
|
|
88
|
+
persistTransaction({
|
|
89
|
+
data: {
|
|
90
|
+
orderId,
|
|
91
|
+
fromFiatCurrency: executeQuoteRequest.fiatCurrency,
|
|
92
|
+
fromAmount: executeQuoteRequest.amount.toString(),
|
|
93
|
+
toCryptoCurrencyID: executeQuoteRequest.cryptoCurrencyID,
|
|
94
|
+
fromCountryCode: executeQuoteRequest.region ?? "",
|
|
95
|
+
toTokenAddress: executeQuoteRequest.squidToken?.address ?? "",
|
|
96
|
+
toCryptoAmount: executeQuoteRequest.cryptoAmount.toString(),
|
|
97
|
+
toChainId: toChain?.chainId ?? "",
|
|
98
|
+
toAddress: executeQuoteRequest.walletAddress,
|
|
99
|
+
status: "awaiting_payment",
|
|
100
|
+
timestamp: Date.now(),
|
|
101
|
+
},
|
|
102
|
+
txType: HistoryTxType.BUY,
|
|
103
|
+
});
|
|
87
104
|
},
|
|
88
105
|
});
|
|
89
106
|
};
|
|
@@ -95,7 +112,7 @@ export const useExecuteFiatQuote = (provider) => {
|
|
|
95
112
|
*/
|
|
96
113
|
export const useFiatOnRampTxStatus = (provider, transactionId, walletAddress) => {
|
|
97
114
|
const service = useMemo(() => new FiatToCryptoService(provider), [provider]);
|
|
98
|
-
const
|
|
115
|
+
const replaceTransactionStatus = useHistoryStore((state) => state.replaceTransactionStatus);
|
|
99
116
|
return useQuery({
|
|
100
117
|
queryKey: keys().fiatToCryptoStatus(transactionId),
|
|
101
118
|
queryFn: () => service.getTransactionStatus(transactionId, walletAddress),
|
|
@@ -109,49 +126,15 @@ export const useFiatOnRampTxStatus = (provider, transactionId, walletAddress) =>
|
|
|
109
126
|
return TX_STATUS_CONSTANTS.REFETCH_INTERVAL;
|
|
110
127
|
},
|
|
111
128
|
onError: () => {
|
|
112
|
-
|
|
129
|
+
replaceTransactionStatus({
|
|
130
|
+
txType: HistoryTxType.BUY,
|
|
131
|
+
orderId: transactionId,
|
|
132
|
+
status: "failed",
|
|
133
|
+
transactionHash: undefined,
|
|
134
|
+
});
|
|
113
135
|
},
|
|
114
136
|
});
|
|
115
137
|
};
|
|
116
|
-
/**
|
|
117
|
-
* Hook to track all fiat transactions and their status
|
|
118
|
-
* @returns Array of transactions with their latest status
|
|
119
|
-
*/
|
|
120
|
-
export const useFiatTransactions = (provider) => {
|
|
121
|
-
const transactions = useFiatTransactionStore((state) => state.transactions);
|
|
122
|
-
const updateTransactionStatus = useFiatTransactionStore((state) => state.updateTransactionStatus);
|
|
123
|
-
const queries = useQueries({
|
|
124
|
-
queries: provider
|
|
125
|
-
? transactions
|
|
126
|
-
.filter((tx) => !FINAL_TRANSACTION_STATUSES.includes(tx.status))
|
|
127
|
-
.map((tx) => ({
|
|
128
|
-
queryKey: keys().fiatToCryptoStatus(tx.orderId),
|
|
129
|
-
queryFn: () => provider.getTransactionStatus(tx.orderId, tx.toAddress),
|
|
130
|
-
retry: TX_STATUS_CONSTANTS.RETRY_COUNT,
|
|
131
|
-
retryDelay: TX_STATUS_CONSTANTS.RETRY_DELAY,
|
|
132
|
-
refetchInterval: (data) => {
|
|
133
|
-
if (data?.status &&
|
|
134
|
-
FINAL_TRANSACTION_STATUSES.includes(data.status)) {
|
|
135
|
-
return false;
|
|
136
|
-
}
|
|
137
|
-
return TX_STATUS_CONSTANTS.REFETCH_INTERVAL;
|
|
138
|
-
},
|
|
139
|
-
onSuccess: (data) => {
|
|
140
|
-
updateTransactionStatus(tx.orderId, data.status, data.transactionHash);
|
|
141
|
-
},
|
|
142
|
-
onError: () => {
|
|
143
|
-
updateTransactionStatus(tx.orderId, "failed", undefined);
|
|
144
|
-
},
|
|
145
|
-
enabled: true,
|
|
146
|
-
}))
|
|
147
|
-
: [],
|
|
148
|
-
});
|
|
149
|
-
return {
|
|
150
|
-
transactions,
|
|
151
|
-
isLoading: queries.some((q) => q.isLoading),
|
|
152
|
-
isError: queries.some((q) => q.isError),
|
|
153
|
-
};
|
|
154
|
-
};
|
|
155
138
|
/**
|
|
156
139
|
* Hook to get currency details based on denomination
|
|
157
140
|
* @param currencyCode - The currency code (e.g., "USD", "EUR")
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useFiatToCrypto.js","sourceRoot":"","sources":["../../../src/hooks/onramp/useFiatToCrypto.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"useFiatToCrypto.js","sourceRoot":"","sources":["../../../src/hooks/onramp/useFiatToCrypto.ts"],"names":[],"mappings":"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"}
|