@0xsquid/react-hooks 6.7.0 → 7.0.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.
Files changed (160) hide show
  1. package/dist/core/client/index.d.ts +13 -0
  2. package/dist/core/client/index.js +32 -0
  3. package/dist/core/client/index.js.map +1 -0
  4. package/dist/core/connectors/bitcoin/helpers.d.ts +15 -0
  5. package/dist/core/connectors/bitcoin/helpers.js +6 -1
  6. package/dist/core/connectors/bitcoin/helpers.js.map +1 -1
  7. package/dist/core/constants.d.ts +2 -0
  8. package/dist/core/constants.js +2 -0
  9. package/dist/core/constants.js.map +1 -1
  10. package/dist/core/providers/SolanaProvider.d.ts +0 -2
  11. package/dist/core/providers/SolanaProvider.js.map +1 -1
  12. package/dist/core/queries/queries-keys.d.ts +18 -25
  13. package/dist/core/queries/queries-keys.js +52 -75
  14. package/dist/core/queries/queries-keys.js.map +1 -1
  15. package/dist/core/types/error.d.ts +4 -3
  16. package/dist/core/types/error.js.map +1 -1
  17. package/dist/core/types/event.d.ts +8 -0
  18. package/dist/core/types/history.d.ts +84 -0
  19. package/dist/core/types/history.js +7 -0
  20. package/dist/core/types/history.js.map +1 -0
  21. package/dist/core/types/index.d.ts +4 -1
  22. package/dist/core/types/index.js +2 -1
  23. package/dist/core/types/index.js.map +1 -1
  24. package/dist/core/types/onramps/index.d.ts +2 -0
  25. package/dist/core/types/onramps/index.js +3 -0
  26. package/dist/core/types/onramps/index.js.map +1 -0
  27. package/dist/core/types/onramps/onramp.d.ts +157 -0
  28. package/dist/core/types/onramps/onramp.js +2 -0
  29. package/dist/core/types/onramps/onramp.js.map +1 -0
  30. package/dist/core/types/onramps/revolut.d.ts +92 -0
  31. package/dist/core/types/onramps/revolut.js +2 -0
  32. package/dist/core/types/onramps/revolut.js.map +1 -0
  33. package/dist/core/types/transaction.d.ts +9 -31
  34. package/dist/core/types/transaction.js +6 -0
  35. package/dist/core/types/transaction.js.map +1 -1
  36. package/dist/hooks/client/useClient.d.ts +2 -0
  37. package/dist/hooks/client/useClient.js +58 -1
  38. package/dist/hooks/client/useClient.js.map +1 -1
  39. package/dist/hooks/cosmos/useCosmos.d.ts +9 -0
  40. package/dist/hooks/cosmos/useCosmos.js +36 -33
  41. package/dist/hooks/cosmos/useCosmos.js.map +1 -1
  42. package/dist/hooks/cosmos/useCosmosForChain.d.ts +1 -1
  43. package/dist/hooks/cosmos/useCosmosForChain.js +9 -13
  44. package/dist/hooks/cosmos/useCosmosForChain.js.map +1 -1
  45. package/dist/hooks/index.d.ts +8 -1
  46. package/dist/hooks/index.js +8 -1
  47. package/dist/hooks/index.js.map +1 -1
  48. package/dist/hooks/onramp/useFiatToCrypto.d.ts +84 -0
  49. package/dist/hooks/onramp/useFiatToCrypto.js +316 -0
  50. package/dist/hooks/onramp/useFiatToCrypto.js.map +1 -0
  51. package/dist/hooks/solana/useSolana.d.ts +2 -1
  52. package/dist/hooks/solana/useSolana.js +4 -2
  53. package/dist/hooks/solana/useSolana.js.map +1 -1
  54. package/dist/hooks/store/useHistoryStore.d.ts +33 -13
  55. package/dist/hooks/store/useHistoryStore.js +120 -32
  56. package/dist/hooks/store/useHistoryStore.js.map +1 -1
  57. package/dist/hooks/store/useSendTransactionStore.d.ts +20 -0
  58. package/dist/hooks/store/useSendTransactionStore.js +21 -0
  59. package/dist/hooks/store/useSendTransactionStore.js.map +1 -0
  60. package/dist/hooks/transaction/send/useEstimateSendTransactionGas.d.ts +28 -0
  61. package/dist/hooks/transaction/send/useEstimateSendTransactionGas.js +58 -0
  62. package/dist/hooks/transaction/send/useEstimateSendTransactionGas.js.map +1 -0
  63. package/dist/hooks/transaction/send/useSendTransaction.d.ts +13 -0
  64. package/dist/hooks/transaction/send/useSendTransaction.js +157 -0
  65. package/dist/hooks/transaction/send/useSendTransaction.js.map +1 -0
  66. package/dist/hooks/transaction/send/useSendTransactionGas.d.ts +6 -0
  67. package/dist/hooks/transaction/send/useSendTransactionGas.js +73 -0
  68. package/dist/hooks/transaction/send/useSendTransactionGas.js.map +1 -0
  69. package/dist/hooks/transaction/useAllTransactionsStatus.d.ts +34 -2
  70. package/dist/hooks/transaction/useAllTransactionsStatus.js +111 -59
  71. package/dist/hooks/transaction/useAllTransactionsStatus.js.map +1 -1
  72. package/dist/hooks/transaction/useApproval.js +2 -2
  73. package/dist/hooks/transaction/useApproval.js.map +1 -1
  74. package/dist/hooks/transaction/useEstimate.d.ts +1 -1
  75. package/dist/hooks/transaction/useExecuteTransaction.js +39 -22
  76. package/dist/hooks/transaction/useExecuteTransaction.js.map +1 -1
  77. package/dist/hooks/transaction/useSendTransactionStatus.d.ts +11 -0
  78. package/dist/hooks/transaction/useSendTransactionStatus.js +53 -0
  79. package/dist/hooks/transaction/useSendTransactionStatus.js.map +1 -0
  80. package/dist/hooks/transaction/useSwapTransactionStatus.d.ts +15 -0
  81. package/dist/hooks/transaction/{useSingleTransaction.js → useSwapTransactionStatus.js} +39 -16
  82. package/dist/hooks/transaction/useSwapTransactionStatus.js.map +1 -0
  83. package/dist/hooks/user/useHistory.d.ts +12 -10
  84. package/dist/hooks/user/useHistory.js +49 -52
  85. package/dist/hooks/user/useHistory.js.map +1 -1
  86. package/dist/hooks/utils/useUtils.d.ts +7 -0
  87. package/dist/hooks/utils/useUtils.js +20 -0
  88. package/dist/hooks/utils/useUtils.js.map +1 -0
  89. package/dist/hooks/wallet/useEns.d.ts +0 -1
  90. package/dist/hooks/wallet/useEns.js +1 -13
  91. package/dist/hooks/wallet/useEns.js.map +1 -1
  92. package/dist/hooks/wallet/useMultiChainWallet.d.ts +3 -0
  93. package/dist/hooks/wallet/useMultiChainWallet.js +19 -0
  94. package/dist/hooks/wallet/useMultiChainWallet.js.map +1 -1
  95. package/dist/hooks/wallet/useSigner.d.ts +6 -5
  96. package/dist/hooks/wallet/useSigner.js +16 -14
  97. package/dist/hooks/wallet/useSigner.js.map +1 -1
  98. package/dist/index.d.ts +1 -1
  99. package/dist/index.js +1 -1
  100. package/dist/index.js.map +1 -1
  101. package/dist/services/external/index.d.ts +1 -0
  102. package/dist/services/external/index.js +2 -0
  103. package/dist/services/external/index.js.map +1 -0
  104. package/dist/services/external/onrampAdapter.d.ts +12 -0
  105. package/dist/services/external/onrampAdapter.js +41 -0
  106. package/dist/services/external/onrampAdapter.js.map +1 -0
  107. package/dist/services/external/rpcService.d.ts +2 -2
  108. package/dist/services/external/rpcService.js +2 -5
  109. package/dist/services/external/rpcService.js.map +1 -1
  110. package/dist/services/index.d.ts +2 -1
  111. package/dist/services/index.js +2 -1
  112. package/dist/services/index.js.map +1 -1
  113. package/dist/services/internal/assetsService.d.ts +2 -0
  114. package/dist/services/internal/assetsService.js +6 -0
  115. package/dist/services/internal/assetsService.js.map +1 -1
  116. package/dist/services/internal/countryCurrencyMap.d.ts +13 -0
  117. package/dist/services/internal/countryCurrencyMap.js +1102 -0
  118. package/dist/services/internal/countryCurrencyMap.js.map +1 -0
  119. package/dist/services/internal/errorService.d.ts +3 -7
  120. package/dist/services/internal/errorService.js.map +1 -1
  121. package/dist/services/internal/estimateService.js +5 -5
  122. package/dist/services/internal/estimateService.js.map +1 -1
  123. package/dist/services/internal/eventService.d.ts +16 -0
  124. package/dist/services/internal/eventService.js +14 -0
  125. package/dist/services/internal/eventService.js.map +1 -1
  126. package/dist/services/internal/fiatToCryptoService.d.ts +29 -0
  127. package/dist/services/internal/fiatToCryptoService.js +84 -0
  128. package/dist/services/internal/fiatToCryptoService.js.map +1 -0
  129. package/dist/services/internal/fiatToCryptoService.test.d.ts +1 -0
  130. package/dist/services/internal/fiatToCryptoService.test.js +45 -0
  131. package/dist/services/internal/fiatToCryptoService.test.js.map +1 -0
  132. package/dist/services/internal/numberService.d.ts +1 -0
  133. package/dist/services/internal/numberService.js +15 -0
  134. package/dist/services/internal/numberService.js.map +1 -1
  135. package/dist/services/internal/searchService.d.ts +1 -1
  136. package/dist/services/internal/searchService.js +11 -11
  137. package/dist/services/internal/searchService.js.map +1 -1
  138. package/dist/services/internal/sendTransaction.d.ts +35 -0
  139. package/dist/services/internal/sendTransaction.js +66 -0
  140. package/dist/services/internal/sendTransaction.js.map +1 -0
  141. package/dist/services/internal/sendTransactionStatus.d.ts +6 -0
  142. package/dist/services/internal/sendTransactionStatus.js +98 -0
  143. package/dist/services/internal/sendTransactionStatus.js.map +1 -0
  144. package/dist/services/internal/transactionService.d.ts +8 -36
  145. package/dist/services/internal/transactionService.js +27 -26
  146. package/dist/services/internal/transactionService.js.map +1 -1
  147. package/dist/services/internal/transactionStatusService.d.ts +16 -5
  148. package/dist/services/internal/transactionStatusService.js +79 -5
  149. package/dist/services/internal/transactionStatusService.js.map +1 -1
  150. package/dist/tests/assetsService.test.js +13 -26
  151. package/dist/tests/assetsService.test.js.map +1 -1
  152. package/dist/tests/numberService.test.js +12 -1
  153. package/dist/tests/numberService.test.js.map +1 -1
  154. package/dist/tests/searchService.test.js +0 -6
  155. package/dist/tests/searchService.test.js.map +1 -1
  156. package/dist/tests/transactionService.test.js +18 -18
  157. package/dist/tests/transactionService.test.js.map +1 -1
  158. package/package.json +3 -1
  159. package/dist/hooks/transaction/useSingleTransaction.d.ts +0 -10
  160. package/dist/hooks/transaction/useSingleTransaction.js.map +0 -1
@@ -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,98 @@
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
+ // TODO: Implement Sui status check
68
+ async function getTxStatusSui({ txHash, }) {
69
+ return SendTransactionStatus.ONGOING;
70
+ }
71
+ export async function getSendTransactionStatus({ chain, txHash, }) {
72
+ switch (chain.chainType) {
73
+ case ChainType.EVM:
74
+ return getTxStatusEvm({
75
+ txHash,
76
+ chain,
77
+ });
78
+ case ChainType.COSMOS:
79
+ return getTxStatusCosmos({
80
+ txHash,
81
+ chain,
82
+ });
83
+ case ChainType.SOLANA:
84
+ return getTxStatusSolana({
85
+ txHash,
86
+ chain,
87
+ });
88
+ case ChainType.BTC:
89
+ return getTxStatusBitcoin({
90
+ txHash,
91
+ });
92
+ case ChainType.SUI:
93
+ return getTxStatusSui({
94
+ txHash,
95
+ });
96
+ }
97
+ }
98
+ //# 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 type { SimplifiedRouteAction, TransactionForStatus, TransactionHistoryStore, TransactionParams } from "../../core/types/transaction";
3
- import { SimplifiedTransactionHistory } from "../../core/types/transaction";
4
- export declare const formatTransactionHistoryDate: (transaction: TransactionHistoryStore | undefined) => {
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 formatStatusResponseForStorage: (sr?: StatusResponse) => StatusResponse | undefined;
23
- export declare const formatTxForStorage: (tx: SimplifiedTransactionHistory) => {
24
- statusResponse: StatusResponse | undefined;
25
- fromChain: string;
26
- fromToken: string;
27
- fromAddress: string;
28
- fromAmount: string;
29
- toChain: string;
30
- toToken: string;
31
- transactionId: string;
32
- transactionIdForStatus?: string | undefined;
33
- requestId: string | undefined;
34
- toAddress: string;
35
- toAmount: string;
36
- toAmountMin: string;
37
- exchangeRate: string;
38
- status: import("../../core/types/transaction").TransactionStatus;
39
- aggregatePriceImpact?: string | undefined;
40
- toAmountMinUSD?: string | undefined;
41
- fromAmountUSD?: string | undefined;
42
- toAmountUSD?: string | undefined;
43
- timestamp: number;
44
- slippage?: number | 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, 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, apiUrl, }: {
23
+ transaction?: SwapTransactionForStatus | undefined;
53
24
  integratorId: string;
54
25
  apiUrl: string;
55
26
  }) => Promise<StatusResponse>;
@@ -67,4 +38,5 @@ export declare const isDepositRoute: (route?: RouteResponse["route"]) => boolean
67
38
  * Checks if the route contains a Chainflip bridge action
68
39
  */
69
40
  export declare function isChainflipBridgeTransaction(actions?: SimplifiedRouteAction[]): boolean;
41
+ export declare function getHistoryTransactionId(tx: HistoryTransaction): string;
70
42
  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 = " seconds", minutesTemplate = " minutes", hoursTemplate = " hours") => {
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 formatStatusResponseForStorage = (sr) => {
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
- ...sr,
145
- fromChain: formattedSrcChain,
146
- toChain: formattedDestChain,
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 formatTxForStorage = (tx) => {
137
+ export const simplifyRouteAction = (action) => {
150
138
  return {
151
- ...tx,
152
- statusResponse: formatStatusResponseForStorage(tx.statusResponse),
139
+ type: action.type,
140
+ provider: action.provider,
141
+ data: {
142
+ type: action.data?.type,
143
+ },
153
144
  };
154
145
  };
155
- export const fetchTransactionStatus = async ({ transaction, integratorId, apiUrl, }) => {
146
+ export const fetchSwapTransactionStatus = async ({ transaction, integratorId, apiUrl, }) => {
156
147
  const statusEndpoint = `${apiUrl}/v2/status`;
157
148
  try {
158
149
  const response = await axios.get(statusEndpoint, {
@@ -204,4 +195,14 @@ export function isChainflipBridgeTransaction(actions = []) {
204
195
  return actions.some((action) => action.type === ActionType.BRIDGE &&
205
196
  action.data?.type === BridgeType.CHAINFLIP);
206
197
  }
198
+ export function getHistoryTransactionId(tx) {
199
+ switch (tx.txType) {
200
+ case HistoryTxType.SWAP:
201
+ return tx.data.transactionId;
202
+ case HistoryTxType.BUY:
203
+ return tx.data.orderId;
204
+ case HistoryTxType.SEND:
205
+ return tx.data.hash;
206
+ }
207
+ }
207
208
  //# sourceMappingURL=transactionService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"transactionService.js","sourceRoot":"","sources":["../../../src/services/internal/transactionService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transactionService.js","sourceRoot":"","sources":["../../../src/services/internal/transactionService.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
- import { type ChainData, type StatusResponse, type Token } from "@0xsquid/squid-types";
2
- import type { UseQueryResult } from "@tanstack/react-query";
3
- import type { SimplifiedRouteAction, StepStatusGetterProps, TransactionForStatus, TransactionParams } from "../../core/types/transaction";
1
+ import { ChainType, type ChainData, type StatusResponse, type Token } from "@0xsquid/squid-types";
2
+ import { UseQueryResult } from "@tanstack/react-query";
3
+ import { HistoryTransaction } from "../../core/types/history";
4
+ import type { SimplifiedRouteAction, StepStatusGetterProps, SwapTransactionForStatus, TransactionParams } from "../../core/types/transaction";
4
5
  import { TransactionStatus, TransactionType } from "../../core/types/transaction";
5
6
  /**
6
7
  * Get the steps for a transaction
@@ -27,12 +28,18 @@ export declare const getStepsInfos: ({ fromChain, toChain, fromToken, toToken, a
27
28
  link?: string;
28
29
  }[];
29
30
  /**
30
- * Returns the status refetch interval of a transaction
31
+ * Returns the status refetch interval of a Swap transaction
31
32
  * Some routes have a faster refetch interval (i.e Coral RFQ routes)
32
33
  *
33
34
  * @returns Refetch interval in milliseconds
34
35
  */
35
- export declare const getTxStatusRefetchInterval: (transaction: Pick<TransactionForStatus, "actions"> | undefined) => number;
36
+ export declare const getSwapTxStatusRefetchInterval: (transaction: Pick<SwapTransactionForStatus, "actions"> | undefined) => number;
37
+ /**
38
+ * Returns the status refetch interval of a Send transaction
39
+ *
40
+ * @returns Refetch interval in milliseconds
41
+ */
42
+ export declare const getSendTxStatusRefetchInterval: (chainType: ChainType) => number;
36
43
  export declare const chainflipMultihopBridgeType = "chainflipMultihop";
37
44
  /**
38
45
  * Some routes have special bridges, like CCTP or Chainflip
@@ -52,3 +59,7 @@ export declare const getTransactionStatus: (statusResponse: Pick<StatusResponse,
52
59
  export declare const getTransactionEndStatus: ({ statusResponse, }: {
53
60
  statusResponse: StatusResponse;
54
61
  }) => TransactionStatus | undefined;
62
+ export declare function isHistoryTransactionPending({ txType, data, }: HistoryTransaction): boolean;
63
+ export declare function isHistoryTransactionFailed({ txType, data, }: HistoryTransaction): boolean;
64
+ export declare function isHistoryTransactionWarning({ txType, data, }: HistoryTransaction): boolean;
65
+ export declare function isHistoryTransactionEnded({ txType, data, }: HistoryTransaction): boolean;
@@ -1,7 +1,9 @@
1
- import { ActionType, BridgeType, } from "@0xsquid/squid-types";
2
- import { transactionErrorStatuses, transactionRefundedStatuses, transactionSuccessStatuses, } from "../../core/constants";
1
+ import { ActionType, BridgeType, ChainType, } from "@0xsquid/squid-types";
2
+ import { transactionEndStatuses, transactionErrorStatuses, transactionRefundedStatuses, transactionSuccessStatuses, } from "../../core/constants";
3
3
  import { SquidStatusErrorType } from "../../core/types/error";
4
- import { AxelarStatusResponseType, TransactionStatus, TransactionType, } from "../../core/types/transaction";
4
+ import { HistoryTxType, } from "../../core/types/history";
5
+ import { AxelarStatusResponseType, SendTransactionStatus, TransactionStatus, TransactionType, } from "../../core/types/transaction";
6
+ import { FINAL_TRANSACTION_STATUSES } from "../../hooks/onramp/useFiatToCrypto";
5
7
  import { isStatusError } from "./errorService";
6
8
  import { getMainExplorerUrl, isCoralBridgeAction } from "./transactionService";
7
9
  /**
@@ -229,12 +231,12 @@ const TX_STATUS_REFETCH_INTERVAL = {
229
231
  CORAL: 3_000,
230
232
  };
231
233
  /**
232
- * Returns the status refetch interval of a transaction
234
+ * Returns the status refetch interval of a Swap transaction
233
235
  * Some routes have a faster refetch interval (i.e Coral RFQ routes)
234
236
  *
235
237
  * @returns Refetch interval in milliseconds
236
238
  */
237
- export const getTxStatusRefetchInterval = (transaction) => {
239
+ export const getSwapTxStatusRefetchInterval = (transaction) => {
238
240
  if ((transaction?.actions?.length ?? 0) < 1) {
239
241
  return TX_STATUS_REFETCH_INTERVAL.DEFAULT;
240
242
  }
@@ -244,6 +246,22 @@ export const getTxStatusRefetchInterval = (transaction) => {
244
246
  }
245
247
  return TX_STATUS_REFETCH_INTERVAL.DEFAULT;
246
248
  };
249
+ const chainTypeToRefetchInterval = {
250
+ [ChainType.EVM]: 1_000,
251
+ [ChainType.COSMOS]: 1_000,
252
+ [ChainType.SOLANA]: 2_000,
253
+ [ChainType.SUI]: 1_000,
254
+ // BTC is slow, no need to refetch too often
255
+ [ChainType.BTC]: 30_000,
256
+ };
257
+ /**
258
+ * Returns the status refetch interval of a Send transaction
259
+ *
260
+ * @returns Refetch interval in milliseconds
261
+ */
262
+ export const getSendTxStatusRefetchInterval = (chainType) => {
263
+ return chainTypeToRefetchInterval[chainType];
264
+ };
247
265
  // TODO: update types and use BridgeType instead
248
266
  export const chainflipMultihopBridgeType = "chainflipMultihop";
249
267
  // List taken from Squid API repo
@@ -312,4 +330,60 @@ export const getTransactionEndStatus = ({ statusResponse, }) => {
312
330
  })();
313
331
  return isEndStatus && newStatus != null ? newStatus : undefined;
314
332
  };
333
+ export function isHistoryTransactionPending({ txType, data, }) {
334
+ switch (txType) {
335
+ case HistoryTxType.SWAP:
336
+ const swapTxPendingStatuses = [
337
+ TransactionStatus.INITIAL_LOADING,
338
+ TransactionStatus.ONGOING,
339
+ TransactionStatus.PENDING,
340
+ ];
341
+ return swapTxPendingStatuses.includes(data.status);
342
+ case HistoryTxType.BUY:
343
+ const fiatTxPendingStatuses = [
344
+ "awaiting_payment",
345
+ "processing",
346
+ ];
347
+ return fiatTxPendingStatuses.includes(data.status);
348
+ case HistoryTxType.SEND:
349
+ const sendTxPendingStatuses = [
350
+ SendTransactionStatus.ONGOING,
351
+ ];
352
+ return sendTxPendingStatuses.includes(data.status);
353
+ }
354
+ }
355
+ export function isHistoryTransactionFailed({ txType, data, }) {
356
+ switch (txType) {
357
+ case HistoryTxType.SWAP:
358
+ return data.status === TransactionStatus.ERROR;
359
+ case HistoryTxType.BUY:
360
+ return data.status === "failed";
361
+ case HistoryTxType.SEND:
362
+ return data.status === SendTransactionStatus.ERROR;
363
+ }
364
+ }
365
+ export function isHistoryTransactionWarning({ txType, data, }) {
366
+ switch (txType) {
367
+ case HistoryTxType.SWAP:
368
+ return data.status === TransactionStatus.WARNING;
369
+ case HistoryTxType.BUY:
370
+ case HistoryTxType.SEND:
371
+ // there's no warning status for buy or send transactions
372
+ return false;
373
+ }
374
+ }
375
+ export function isHistoryTransactionEnded({ txType, data, }) {
376
+ switch (txType) {
377
+ case HistoryTxType.SWAP:
378
+ return transactionEndStatuses.includes(data.status);
379
+ case HistoryTxType.BUY:
380
+ return FINAL_TRANSACTION_STATUSES.includes(data.status);
381
+ case HistoryTxType.SEND:
382
+ const sendTxEndedStatuses = [
383
+ SendTransactionStatus.SUCCESS,
384
+ SendTransactionStatus.ERROR,
385
+ ];
386
+ return sendTxEndedStatuses.includes(data.status);
387
+ }
388
+ }
315
389
  //# sourceMappingURL=transactionStatusService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"transactionStatusService.js","sourceRoot":"","sources":["../../../src/services/internal/transactionStatusService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transactionStatusService.js","sourceRoot":"","sources":["../../../src/services/internal/transactionStatusService.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { ChainType } from "@0xsquid/squid-types";
2
2
  import BigNumber from "bignumber.js";
3
3
  import { nativeEvmTokenAddress } from "../core/constants";
4
- import { areSameCosmosAddress, filterChains, getDisabledChainsIds, groupTokensByChainId, groupTokensBySymbol, shareSubgraphId, sortTokensBySharedSubgraphIds, } from "../services/internal/assetsService";
4
+ import { areSameCosmosAddress, filterChains, getDisabledChainsIds, groupTokensByChainId, groupTokensBySymbol, normalizeTokenSymbol, shareSubgraphId, sortTokensBySharedSubgraphIds, } from "../services/internal/assetsService";
5
5
  import { fetchSquidData } from "./fetchSquidData";
6
6
  let squid = undefined;
7
7
  let CHAINS = {};
@@ -471,30 +471,17 @@ describe("assetsService", () => {
471
471
  expect(baseGroup.totalBalanceUsd).toBe("121.9337");
472
472
  });
473
473
  });
474
- // TODO: Uncomment this to test images locally
475
- // describe("getTokenImage", () => {
476
- // test("fetch all token images and log non-working tokens", async () => {
477
- // const nonWorkingTokens: Set<string> = new Set();
478
- // const fetchImage = async (token: Token) => {
479
- // const imageUrl = getTokenImage(token);
480
- // if (imageUrl) {
481
- // try {
482
- // const response = await fetch(imageUrl);
483
- // if (response.status === 404) {
484
- // nonWorkingTokens.add(token.symbol.toLowerCase());
485
- // }
486
- // } catch (error) {
487
- // nonWorkingTokens.add(token.symbol.toLowerCase());
488
- // }
489
- // }
490
- // };
491
- // const allTokens = Object.values(TOKENS).flatMap((chainTokens) =>
492
- // Object.values(chainTokens)
493
- // );
494
- // await Promise.all(allTokens.map(fetchImage));
495
- // const uniqueNonWorkingTokens = Array.from(nonWorkingTokens);
496
- // console.log(JSON.stringify(uniqueNonWorkingTokens, null, 2));
497
- // });
498
- // });
474
+ describe("token symbol normalization", () => {
475
+ describe("normalizeTokenSymbol", () => {
476
+ test("should normalize basic token symbols", () => {
477
+ expect(normalizeTokenSymbol("ETH")).toBe("ETH");
478
+ expect(normalizeTokenSymbol("USDC")).toBe("USDC");
479
+ });
480
+ test("should handle case insensitivity", () => {
481
+ expect(normalizeTokenSymbol("usdc")).toBe("USDC");
482
+ expect(normalizeTokenSymbol("eth")).toBe("ETH");
483
+ });
484
+ });
485
+ });
499
486
  });
500
487
  //# sourceMappingURL=assetsService.test.js.map