@0xsquid/react-hooks 6.4.4-beta.4 → 6.4.4-stellar-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (367) hide show
  1. package/dist/core/client/index.d.ts +17 -0
  2. package/dist/core/client/index.js +40 -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/connectors/bitcoin/wallets/index.d.ts +1 -0
  8. package/dist/core/connectors/bitcoin/wallets/index.js +1 -0
  9. package/dist/core/connectors/bitcoin/wallets/index.js.map +1 -1
  10. package/dist/core/connectors/bitcoin/wallets/keplr.d.ts +11 -0
  11. package/dist/core/connectors/bitcoin/wallets/keplr.js +28 -0
  12. package/dist/core/connectors/bitcoin/wallets/keplr.js.map +1 -0
  13. package/dist/core/connectors/xrpl/CrossMark.d.ts +13 -0
  14. package/dist/core/connectors/{xrp → xrpl}/CrossMark.js +11 -11
  15. package/dist/core/connectors/xrpl/CrossMark.js.map +1 -0
  16. package/dist/core/connectors/xrpl/Xaman.d.ts +16 -0
  17. package/dist/core/connectors/xrpl/Xaman.js +80 -0
  18. package/dist/core/connectors/xrpl/Xaman.js.map +1 -0
  19. package/dist/core/connectors/xrpl/XamanQr.d.ts +15 -0
  20. package/dist/core/connectors/xrpl/XamanQr.js +78 -0
  21. package/dist/core/connectors/xrpl/XamanQr.js.map +1 -0
  22. package/dist/core/connectors/{xrp/XrpMetamaskSnap.d.ts → xrpl/XrplMetamaskSnap.d.ts} +7 -16
  23. package/dist/core/connectors/{xrp/XrpMetamaskSnap.js → xrpl/XrplMetamaskSnap.js} +22 -57
  24. package/dist/core/connectors/xrpl/XrplMetamaskSnap.js.map +1 -0
  25. package/dist/core/constants.d.ts +14 -22
  26. package/dist/core/constants.js +43 -41
  27. package/dist/core/constants.js.map +1 -1
  28. package/dist/core/externalLinks.d.ts +1 -1
  29. package/dist/core/externalLinks.js +1 -1
  30. package/dist/core/index.d.ts +1 -1
  31. package/dist/core/index.js +1 -1
  32. package/dist/core/index.js.map +1 -1
  33. package/dist/core/multicall3.d.ts +5 -1
  34. package/dist/core/multicall3.js +21 -1
  35. package/dist/core/multicall3.js.map +1 -1
  36. package/dist/core/providers/SolanaProvider.d.ts +0 -2
  37. package/dist/core/providers/SolanaProvider.js.map +1 -1
  38. package/dist/core/providers/StellarProvider.d.ts +19 -0
  39. package/dist/core/providers/StellarProvider.js +15 -0
  40. package/dist/core/providers/StellarProvider.js.map +1 -0
  41. package/dist/core/providers/SuiProvider.d.ts +19 -0
  42. package/dist/core/providers/SuiProvider.js +15 -0
  43. package/dist/core/providers/SuiProvider.js.map +1 -0
  44. package/dist/core/providers/XrplProvider.d.ts +17 -0
  45. package/dist/core/providers/XrplProvider.js +15 -0
  46. package/dist/core/providers/XrplProvider.js.map +1 -0
  47. package/dist/core/queries/queries-keys.d.ts +25 -30
  48. package/dist/core/queries/queries-keys.js +76 -86
  49. package/dist/core/queries/queries-keys.js.map +1 -1
  50. package/dist/core/stellar-test.d.ts +1 -0
  51. package/dist/core/stellar-test.js +11 -0
  52. package/dist/core/stellar-test.js.map +1 -0
  53. package/dist/core/types/config.d.ts +2 -0
  54. package/dist/core/types/error.d.ts +4 -3
  55. package/dist/core/types/error.js.map +1 -1
  56. package/dist/core/types/event.d.ts +31 -1
  57. package/dist/core/types/history.d.ts +84 -0
  58. package/dist/core/types/history.js +7 -0
  59. package/dist/core/types/history.js.map +1 -0
  60. package/dist/core/types/index.d.ts +5 -2
  61. package/dist/core/types/index.js +2 -1
  62. package/dist/core/types/index.js.map +1 -1
  63. package/dist/core/types/onramps/index.d.ts +2 -0
  64. package/dist/core/types/onramps/index.js +3 -0
  65. package/dist/core/types/onramps/index.js.map +1 -0
  66. package/dist/core/types/onramps/onramp.d.ts +157 -0
  67. package/dist/core/types/onramps/onramp.js +2 -0
  68. package/dist/core/types/onramps/onramp.js.map +1 -0
  69. package/dist/core/types/onramps/revolut.d.ts +92 -0
  70. package/dist/core/types/onramps/revolut.js +2 -0
  71. package/dist/core/types/onramps/revolut.js.map +1 -0
  72. package/dist/core/types/rpc.d.ts +10 -0
  73. package/dist/core/types/rpc.js +2 -0
  74. package/dist/core/types/rpc.js.map +1 -0
  75. package/dist/core/types/stellar.d.ts +3 -0
  76. package/dist/core/types/stellar.js +2 -0
  77. package/dist/core/types/stellar.js.map +1 -0
  78. package/dist/core/types/sui.d.ts +14 -0
  79. package/dist/core/types/sui.js +2 -0
  80. package/dist/core/types/sui.js.map +1 -0
  81. package/dist/core/types/transaction.d.ts +10 -30
  82. package/dist/core/types/transaction.js +6 -0
  83. package/dist/core/types/transaction.js.map +1 -1
  84. package/dist/core/types/wallet.d.ts +34 -20
  85. package/dist/core/types/wallet.js +3 -1
  86. package/dist/core/types/wallet.js.map +1 -1
  87. package/dist/core/types/xrpl.d.ts +70 -0
  88. package/dist/core/types/xrpl.js +20 -0
  89. package/dist/core/types/xrpl.js.map +1 -0
  90. package/dist/core/wagmiConfig.js +2 -8
  91. package/dist/core/wagmiConfig.js.map +1 -1
  92. package/dist/core/wallets.d.ts +2 -1
  93. package/dist/core/wallets.js +61 -45
  94. package/dist/core/wallets.js.map +1 -1
  95. package/dist/hooks/analytics/useTrackSearchEmpty.d.ts +12 -0
  96. package/dist/hooks/analytics/useTrackSearchEmpty.js +22 -0
  97. package/dist/hooks/analytics/useTrackSearchEmpty.js.map +1 -0
  98. package/dist/hooks/chains/useSquidChains.d.ts +1 -0
  99. package/dist/hooks/chains/useSquidChains.js +22 -3
  100. package/dist/hooks/chains/useSquidChains.js.map +1 -1
  101. package/dist/hooks/client/useClient.d.ts +2 -0
  102. package/dist/hooks/client/useClient.js +58 -1
  103. package/dist/hooks/client/useClient.js.map +1 -1
  104. package/dist/hooks/cosmos/useCosmos.d.ts +9 -0
  105. package/dist/hooks/cosmos/useCosmos.js +49 -39
  106. package/dist/hooks/cosmos/useCosmos.js.map +1 -1
  107. package/dist/hooks/cosmos/useCosmosForChain.d.ts +1 -1
  108. package/dist/hooks/cosmos/useCosmosForChain.js +20 -13
  109. package/dist/hooks/cosmos/useCosmosForChain.js.map +1 -1
  110. package/dist/hooks/index.d.ts +10 -3
  111. package/dist/hooks/index.js +10 -4
  112. package/dist/hooks/index.js.map +1 -1
  113. package/dist/hooks/onramp/useFiatToCrypto.d.ts +84 -0
  114. package/dist/hooks/onramp/useFiatToCrypto.js +316 -0
  115. package/dist/hooks/onramp/useFiatToCrypto.js.map +1 -0
  116. package/dist/hooks/solana/useSolana.d.ts +2 -1
  117. package/dist/hooks/solana/useSolana.js +12 -4
  118. package/dist/hooks/solana/useSolana.js.map +1 -1
  119. package/dist/hooks/squid/useSquid.js +1 -1
  120. package/dist/hooks/squid/useSquid.js.map +1 -1
  121. package/dist/hooks/stellar/useStellar.d.ts +2 -0
  122. package/dist/hooks/stellar/useStellar.js +27 -0
  123. package/dist/hooks/stellar/useStellar.js.map +1 -0
  124. package/dist/hooks/stellar/useStellarWallets.d.ts +4 -0
  125. package/dist/hooks/stellar/useStellarWallets.js +12 -0
  126. package/dist/hooks/stellar/useStellarWallets.js.map +1 -0
  127. package/dist/hooks/store/useAddressBookStore.d.ts +1 -1
  128. package/dist/hooks/store/useAddressBookStore.js +6 -2
  129. package/dist/hooks/store/useAddressBookStore.js.map +1 -1
  130. package/dist/hooks/store/useHistoryStore.d.ts +33 -13
  131. package/dist/hooks/store/useHistoryStore.js +120 -32
  132. package/dist/hooks/store/useHistoryStore.js.map +1 -1
  133. package/dist/hooks/store/useSendTransactionStore.d.ts +20 -0
  134. package/dist/hooks/store/useSendTransactionStore.js +21 -0
  135. package/dist/hooks/store/useSendTransactionStore.js.map +1 -0
  136. package/dist/hooks/store/useSquidStore.d.ts +0 -5
  137. package/dist/hooks/store/useSquidStore.js +0 -2
  138. package/dist/hooks/store/useSquidStore.js.map +1 -1
  139. package/dist/hooks/store/useWalletStore.d.ts +8 -5
  140. package/dist/hooks/store/useWalletStore.js +9 -15
  141. package/dist/hooks/store/useWalletStore.js.map +1 -1
  142. package/dist/hooks/sui/useSui.d.ts +2 -0
  143. package/dist/hooks/sui/useSui.js +28 -0
  144. package/dist/hooks/sui/useSui.js.map +1 -0
  145. package/dist/hooks/sui/useSuiWallets.d.ts +7 -0
  146. package/dist/hooks/sui/useSuiWallets.js +42 -0
  147. package/dist/hooks/sui/useSuiWallets.js.map +1 -0
  148. package/dist/hooks/swap/useSwap.d.ts +1 -0
  149. package/dist/hooks/swap/useSwap.js +4 -16
  150. package/dist/hooks/swap/useSwap.js.map +1 -1
  151. package/dist/hooks/tokens/useAllConnectedWalletBalances.d.ts +1 -1
  152. package/dist/hooks/tokens/useAllConnectedWalletBalances.js +28 -6
  153. package/dist/hooks/tokens/useAllConnectedWalletBalances.js.map +1 -1
  154. package/dist/hooks/tokens/useAllTokensWithBalanceForChainType.d.ts +1 -1
  155. package/dist/hooks/tokens/useAllTokensWithBalanceForChainType.js +34 -17
  156. package/dist/hooks/tokens/useAllTokensWithBalanceForChainType.js.map +1 -1
  157. package/dist/hooks/tokens/useBalance.d.ts +3 -1
  158. package/dist/hooks/tokens/useBalance.js +49 -8
  159. package/dist/hooks/tokens/useBalance.js.map +1 -1
  160. package/dist/hooks/tokens/useMultiChainBalance.js +24 -6
  161. package/dist/hooks/tokens/useMultiChainBalance.js.map +1 -1
  162. package/dist/hooks/tokens/useNativeBalance.d.ts +3 -1
  163. package/dist/hooks/tokens/useNativeBalance.js +72 -10
  164. package/dist/hooks/tokens/useNativeBalance.js.map +1 -1
  165. package/dist/hooks/tokens/useNativeTokenForChain.js +7 -3
  166. package/dist/hooks/tokens/useNativeTokenForChain.js.map +1 -1
  167. package/dist/hooks/tokens/useSquidTokens.d.ts +3 -1
  168. package/dist/hooks/tokens/useSquidTokens.js +15 -5
  169. package/dist/hooks/tokens/useSquidTokens.js.map +1 -1
  170. package/dist/hooks/transaction/send/useEstimateSendTransactionGas.d.ts +28 -0
  171. package/dist/hooks/transaction/send/useEstimateSendTransactionGas.js +58 -0
  172. package/dist/hooks/transaction/send/useEstimateSendTransactionGas.js.map +1 -0
  173. package/dist/hooks/transaction/send/useSendTransaction.d.ts +13 -0
  174. package/dist/hooks/transaction/send/useSendTransaction.js +256 -0
  175. package/dist/hooks/transaction/send/useSendTransaction.js.map +1 -0
  176. package/dist/hooks/transaction/send/useSendTransactionGas.d.ts +6 -0
  177. package/dist/hooks/transaction/send/useSendTransactionGas.js +73 -0
  178. package/dist/hooks/transaction/send/useSendTransactionGas.js.map +1 -0
  179. package/dist/hooks/transaction/useAllTransactionsStatus.d.ts +34 -2
  180. package/dist/hooks/transaction/useAllTransactionsStatus.js +119 -62
  181. package/dist/hooks/transaction/useAllTransactionsStatus.js.map +1 -1
  182. package/dist/hooks/transaction/useApproval.js +3 -3
  183. package/dist/hooks/transaction/useApproval.js.map +1 -1
  184. package/dist/hooks/transaction/useEstimate.d.ts +1 -1
  185. package/dist/hooks/transaction/useExecuteTransaction.d.ts +1 -0
  186. package/dist/hooks/transaction/useExecuteTransaction.js +175 -99
  187. package/dist/hooks/transaction/useExecuteTransaction.js.map +1 -1
  188. package/dist/hooks/transaction/useGetRoute.d.ts +13 -7
  189. package/dist/hooks/transaction/useGetRoute.js +17 -151
  190. package/dist/hooks/transaction/useGetRoute.js.map +1 -1
  191. package/dist/hooks/transaction/useSendTransactionStatus.d.ts +11 -0
  192. package/dist/hooks/transaction/useSendTransactionStatus.js +63 -0
  193. package/dist/hooks/transaction/useSendTransactionStatus.js.map +1 -0
  194. package/dist/hooks/transaction/useSwapTransactionStatus.d.ts +15 -0
  195. package/dist/hooks/transaction/{useSingleTransaction.js → useSwapTransactionStatus.js} +40 -18
  196. package/dist/hooks/transaction/useSwapTransactionStatus.js.map +1 -0
  197. package/dist/hooks/user/useAvatar.js +13 -7
  198. package/dist/hooks/user/useAvatar.js.map +1 -1
  199. package/dist/hooks/user/useHistory.d.ts +12 -10
  200. package/dist/hooks/user/useHistory.js +49 -51
  201. package/dist/hooks/user/useHistory.js.map +1 -1
  202. package/dist/hooks/utils/useUtils.d.ts +7 -0
  203. package/dist/hooks/utils/useUtils.js +20 -0
  204. package/dist/hooks/utils/useUtils.js.map +1 -0
  205. package/dist/hooks/wallet/useEns.d.ts +0 -1
  206. package/dist/hooks/wallet/useEns.js +1 -13
  207. package/dist/hooks/wallet/useEns.js.map +1 -1
  208. package/dist/hooks/wallet/useGnosisContext.js +7 -11
  209. package/dist/hooks/wallet/useGnosisContext.js.map +1 -1
  210. package/dist/hooks/wallet/useMultiChainWallet.d.ts +4 -0
  211. package/dist/hooks/wallet/useMultiChainWallet.js +53 -6
  212. package/dist/hooks/wallet/useMultiChainWallet.js.map +1 -1
  213. package/dist/hooks/wallet/useSigner.d.ts +9 -6
  214. package/dist/hooks/wallet/useSigner.js +41 -22
  215. package/dist/hooks/wallet/useSigner.js.map +1 -1
  216. package/dist/hooks/wallet/useWallet.d.ts +64 -7
  217. package/dist/hooks/wallet/useWallet.js +58 -10
  218. package/dist/hooks/wallet/useWallet.js.map +1 -1
  219. package/dist/hooks/wallet/useWallets.d.ts +31 -1
  220. package/dist/hooks/wallet/useWallets.js +35 -1
  221. package/dist/hooks/wallet/useWallets.js.map +1 -1
  222. package/dist/hooks/xrpl/useXrpl.d.ts +2 -0
  223. package/dist/hooks/xrpl/useXrpl.js +21 -0
  224. package/dist/hooks/xrpl/useXrpl.js.map +1 -0
  225. package/dist/hooks/xrpl/useXrplTrustLine.d.ts +17 -0
  226. package/dist/hooks/xrpl/useXrplTrustLine.js +136 -0
  227. package/dist/hooks/xrpl/useXrplTrustLine.js.map +1 -0
  228. package/dist/hooks/xrpl/useXrplWallets.d.ts +4 -0
  229. package/dist/hooks/xrpl/useXrplWallets.js +46 -0
  230. package/dist/hooks/xrpl/useXrplWallets.js.map +1 -0
  231. package/dist/index.d.ts +1 -1
  232. package/dist/index.js +1 -1
  233. package/dist/index.js.map +1 -1
  234. package/dist/provider/index.js +9 -4
  235. package/dist/provider/index.js.map +1 -1
  236. package/dist/services/external/cosmosRestClient.d.ts +18 -0
  237. package/dist/services/external/cosmosRestClient.js +45 -0
  238. package/dist/services/external/cosmosRestClient.js.map +1 -0
  239. package/dist/services/external/index.d.ts +1 -0
  240. package/dist/services/external/index.js +2 -0
  241. package/dist/services/external/index.js.map +1 -0
  242. package/dist/services/external/onrampAdapter.d.ts +12 -0
  243. package/dist/services/external/onrampAdapter.js +41 -0
  244. package/dist/services/external/onrampAdapter.js.map +1 -0
  245. package/dist/services/external/rpcService.d.ts +13 -8
  246. package/dist/services/external/rpcService.js +58 -69
  247. package/dist/services/external/rpcService.js.map +1 -1
  248. package/dist/services/external/suiRpcClient.d.ts +32 -0
  249. package/dist/services/external/suiRpcClient.js +80 -0
  250. package/dist/services/external/suiRpcClient.js.map +1 -0
  251. package/dist/services/external/websocket.d.ts +6 -0
  252. package/dist/services/external/websocket.js +34 -0
  253. package/dist/services/external/websocket.js.map +1 -0
  254. package/dist/services/external/xaman.d.ts +30 -0
  255. package/dist/services/external/xaman.js +46 -0
  256. package/dist/services/external/xaman.js.map +1 -0
  257. package/dist/services/external/xrplRpcClient.d.ts +11 -11
  258. package/dist/services/external/xrplRpcClient.js +46 -55
  259. package/dist/services/external/xrplRpcClient.js.map +1 -1
  260. package/dist/services/index.d.ts +4 -3
  261. package/dist/services/index.js +4 -4
  262. package/dist/services/index.js.map +1 -1
  263. package/dist/services/internal/assetsService.d.ts +5 -3
  264. package/dist/services/internal/assetsService.js +22 -377
  265. package/dist/services/internal/assetsService.js.map +1 -1
  266. package/dist/services/internal/bitcoinService.d.ts +3 -5
  267. package/dist/services/internal/bitcoinService.js +9 -1
  268. package/dist/services/internal/bitcoinService.js.map +1 -1
  269. package/dist/services/internal/configService.js +10 -2
  270. package/dist/services/internal/configService.js.map +1 -1
  271. package/dist/services/internal/cosmosService.d.ts +14 -2
  272. package/dist/services/internal/cosmosService.js +18 -1
  273. package/dist/services/internal/cosmosService.js.map +1 -1
  274. package/dist/services/internal/countryCurrencyMap.d.ts +13 -0
  275. package/dist/services/internal/countryCurrencyMap.js +1102 -0
  276. package/dist/services/internal/countryCurrencyMap.js.map +1 -0
  277. package/dist/services/internal/errorService.d.ts +3 -7
  278. package/dist/services/internal/errorService.js +26 -2
  279. package/dist/services/internal/errorService.js.map +1 -1
  280. package/dist/services/internal/estimateService.js +3 -3
  281. package/dist/services/internal/estimateService.js.map +1 -1
  282. package/dist/services/internal/eventService.d.ts +46 -0
  283. package/dist/services/internal/eventService.js +61 -5
  284. package/dist/services/internal/eventService.js.map +1 -1
  285. package/dist/services/internal/evmService.d.ts +2 -2
  286. package/dist/services/internal/evmService.js.map +1 -1
  287. package/dist/services/internal/fiatToCryptoService.d.ts +29 -0
  288. package/dist/services/internal/fiatToCryptoService.js +84 -0
  289. package/dist/services/internal/fiatToCryptoService.js.map +1 -0
  290. package/dist/services/internal/fiatToCryptoService.test.d.ts +1 -0
  291. package/dist/services/internal/fiatToCryptoService.test.js +45 -0
  292. package/dist/services/internal/fiatToCryptoService.test.js.map +1 -0
  293. package/dist/services/internal/numberService.d.ts +1 -1
  294. package/dist/services/internal/numberService.js.map +1 -1
  295. package/dist/services/internal/searchService.d.ts +1 -1
  296. package/dist/services/internal/searchService.js +18 -15
  297. package/dist/services/internal/searchService.js.map +1 -1
  298. package/dist/services/internal/sendTransaction.d.ts +53 -0
  299. package/dist/services/internal/sendTransaction.js +194 -0
  300. package/dist/services/internal/sendTransaction.js.map +1 -0
  301. package/dist/services/internal/sendTransactionStatus.d.ts +6 -0
  302. package/dist/services/internal/sendTransactionStatus.js +142 -0
  303. package/dist/services/internal/sendTransactionStatus.js.map +1 -0
  304. package/dist/services/internal/solanaService.d.ts +2 -2
  305. package/dist/services/internal/solanaService.js.map +1 -1
  306. package/dist/services/internal/stellarService.d.ts +4 -0
  307. package/dist/services/internal/stellarService.js +20 -0
  308. package/dist/services/internal/stellarService.js.map +1 -0
  309. package/dist/services/internal/suiService.d.ts +20 -0
  310. package/dist/services/internal/suiService.js +119 -0
  311. package/dist/services/internal/suiService.js.map +1 -0
  312. package/dist/services/internal/transactionService.d.ts +8 -36
  313. package/dist/services/internal/transactionService.js +32 -35
  314. package/dist/services/internal/transactionService.js.map +1 -1
  315. package/dist/services/internal/transactionStatusService.d.ts +16 -5
  316. package/dist/services/internal/transactionStatusService.js +82 -5
  317. package/dist/services/internal/transactionStatusService.js.map +1 -1
  318. package/dist/services/internal/walletService.d.ts +17 -11
  319. package/dist/services/internal/walletService.js +70 -21
  320. package/dist/services/internal/walletService.js.map +1 -1
  321. package/dist/services/internal/xionService.d.ts +1 -0
  322. package/dist/services/internal/xionService.js +6 -0
  323. package/dist/services/internal/xionService.js.map +1 -0
  324. package/dist/services/internal/xrplService.d.ts +17 -0
  325. package/dist/services/internal/xrplService.js +50 -0
  326. package/dist/services/internal/xrplService.js.map +1 -0
  327. package/dist/tests/assetsService.test.js +13 -26
  328. package/dist/tests/assetsService.test.js.map +1 -1
  329. package/dist/tests/searchService.test.js +0 -6
  330. package/dist/tests/searchService.test.js.map +1 -1
  331. package/dist/tests/swapConfig.test.js +72 -7
  332. package/dist/tests/swapConfig.test.js.map +1 -1
  333. package/dist/tests/transactionService.test.js +18 -18
  334. package/dist/tests/transactionService.test.js.map +1 -1
  335. package/package.json +13 -5
  336. package/dist/core/connectors/xrp/CrossMark.d.ts +0 -26
  337. package/dist/core/connectors/xrp/CrossMark.js.map +0 -1
  338. package/dist/core/connectors/xrp/XrpMetamaskSnap.js.map +0 -1
  339. package/dist/core/its/config.d.ts +0 -200
  340. package/dist/core/its/config.js +0 -193
  341. package/dist/core/its/config.js.map +0 -1
  342. package/dist/core/types/route.d.ts +0 -9
  343. package/dist/core/types/route.js +0 -4
  344. package/dist/core/types/route.js.map +0 -1
  345. package/dist/core/types/xrp.d.ts +0 -51
  346. package/dist/core/types/xrp.js +0 -2
  347. package/dist/core/types/xrp.js.map +0 -1
  348. package/dist/core/xrp/config.d.ts +0 -24
  349. package/dist/core/xrp/config.js +0 -74
  350. package/dist/core/xrp/config.js.map +0 -1
  351. package/dist/hooks/transaction/useSingleTransaction.d.ts +0 -10
  352. package/dist/hooks/transaction/useSingleTransaction.js.map +0 -1
  353. package/dist/hooks/xrp/useXrp.d.ts +0 -7
  354. package/dist/hooks/xrp/useXrp.js +0 -22
  355. package/dist/hooks/xrp/useXrp.js.map +0 -1
  356. package/dist/hooks/xrp/useXrpPrice.d.ts +0 -1
  357. package/dist/hooks/xrp/useXrpPrice.js +0 -12
  358. package/dist/hooks/xrp/useXrpPrice.js.map +0 -1
  359. package/dist/hooks/xrp/useXrplTrustLine.d.ts +0 -7
  360. package/dist/hooks/xrp/useXrplTrustLine.js +0 -127
  361. package/dist/hooks/xrp/useXrplTrustLine.js.map +0 -1
  362. package/dist/services/internal/xrpService.d.ts +0 -37
  363. package/dist/services/internal/xrpService.js +0 -179
  364. package/dist/services/internal/xrpService.js.map +0 -1
  365. package/dist/services/internal/xrpStatusService.d.ts +0 -4
  366. package/dist/services/internal/xrpStatusService.js +0 -102
  367. package/dist/services/internal/xrpStatusService.js.map +0 -1
@@ -0,0 +1,256 @@
1
+ import { ChainType } from "@0xsquid/squid-types";
2
+ import { useMutation, useQueryClient } from "@tanstack/react-query";
3
+ import { useCallback } from "react";
4
+ import { getPrefixKey, QueryKeys } from "../../../core/queries/queries-keys";
5
+ import { HistoryTxType } from "../../../core/types/history";
6
+ import { SendTransactionStatus } from "../../../core/types/transaction";
7
+ import { useHistoryStore } from "../../../hooks/store/useHistoryStore";
8
+ import { useSendTransactionStore, } from "../../../hooks/store/useSendTransactionStore";
9
+ import { useNativeTokenForChain } from "../../../hooks/tokens/useNativeTokenForChain";
10
+ import { useMultiChainWallet } from "../../../hooks/wallet/useMultiChainWallet";
11
+ import { useWallet } from "../../../hooks/wallet/useWallet";
12
+ import { isWalletAddressValid, parseToBigInt, WidgetEvents, } from "../../../services";
13
+ import { getWorkingCosmosRpcUrl } from "../../../services/external/rpcService";
14
+ import { getTransactionError } from "../../../services/internal/errorService";
15
+ import { sendTransactionBitcoin, sendTransactionCosmos, sendTransactionEvm, sendTransactionSolana, sendTransactionStellar, sendTransactionSui, sendTransactionXrpl, } from "../../../services/internal/sendTransaction";
16
+ import { useSolanaConnection } from "../../solana/useSolana";
17
+ import { useSigner } from "../../wallet/useSigner";
18
+ export function useSendTransaction({ to, amount, token, chain, }) {
19
+ const { connectedWalletsByChainType } = useWallet();
20
+ const { connectedAddress } = useMultiChainWallet(chain);
21
+ const { evmSigner, cosmosSigner, solanaSigner, bitcoinSigner, suiSigner, xrplSigner, stellarSigner, } = useSigner({
22
+ chain,
23
+ });
24
+ const solanaClient = useSolanaConnection();
25
+ const queryClient = useQueryClient();
26
+ const { nativeToken } = useNativeTokenForChain(chain);
27
+ const getTransaction = useSendTransactionStore((state) => state.getTransaction);
28
+ const setTransactionState = useSendTransactionStore((state) => state.setTransactionState);
29
+ const persistTransaction = useHistoryStore((state) => state.persistTransaction);
30
+ const allEventParamsDefined = !!connectedAddress.address && !!amount && !!token && !!to;
31
+ const dispatchPreSendEvent = useCallback(() => {
32
+ if (!allEventParamsDefined || !connectedAddress.address)
33
+ return;
34
+ WidgetEvents.getInstance().dispatchPreSend({
35
+ fromAddress: connectedAddress.address,
36
+ // amount is already formatted with the token decimals
37
+ amount,
38
+ toAddress: to,
39
+ token: {
40
+ address: token.address,
41
+ chainId: token.chainId,
42
+ symbol: token.symbol,
43
+ type: token.type,
44
+ },
45
+ });
46
+ }, [
47
+ allEventParamsDefined,
48
+ token?.type,
49
+ token?.chainId,
50
+ token?.symbol,
51
+ token?.address,
52
+ amount,
53
+ connectedAddress.address,
54
+ to,
55
+ ]);
56
+ const dispatchPostSendEvent = useCallback(({ txHash }) => {
57
+ if (!allEventParamsDefined || !connectedAddress.address)
58
+ return;
59
+ WidgetEvents.getInstance().dispatchPostSend({
60
+ fromAddress: connectedAddress.address,
61
+ // amount is already formatted with the token decimals
62
+ amount,
63
+ toAddress: to,
64
+ token: {
65
+ address: token.address,
66
+ chainId: token.chainId,
67
+ symbol: token.symbol,
68
+ type: token.type,
69
+ },
70
+ txHash,
71
+ });
72
+ }, [
73
+ allEventParamsDefined,
74
+ token?.type,
75
+ token?.chainId,
76
+ token?.symbol,
77
+ token?.address,
78
+ amount,
79
+ connectedAddress.address,
80
+ to,
81
+ ]);
82
+ const sendTransactionMutation = useMutation({
83
+ mutationFn: async () => {
84
+ const allParamsDefined = token && to && amount && chain;
85
+ if (!allParamsDefined)
86
+ throw new Error("Need all params");
87
+ if (token.type !== chain.chainType) {
88
+ throw new Error("Invalid token or chain");
89
+ }
90
+ const isValidDestinationAddress = isWalletAddressValid(chain, to);
91
+ if (!isValidDestinationAddress) {
92
+ throw new Error("Invalid destination address");
93
+ }
94
+ const rawAmount = parseToBigInt(amount, token.decimals).toString();
95
+ let tx;
96
+ switch (token.type) {
97
+ case ChainType.EVM:
98
+ if (!evmSigner) {
99
+ throw new Error("Need EVM signer");
100
+ }
101
+ tx = await sendTransactionEvm({
102
+ to,
103
+ amount: rawAmount,
104
+ token,
105
+ signer: evmSigner,
106
+ rpcUrl: chain.rpc,
107
+ });
108
+ break;
109
+ case ChainType.COSMOS:
110
+ if (!cosmosSigner) {
111
+ throw new Error("Need Cosmos signer");
112
+ }
113
+ if (!nativeToken) {
114
+ throw new Error("Need Cosmos native token");
115
+ }
116
+ const rpcUrl = await getWorkingCosmosRpcUrl(chain);
117
+ tx = await sendTransactionCosmos({
118
+ amount: rawAmount,
119
+ rpcUrl,
120
+ signer: cosmosSigner,
121
+ to,
122
+ token,
123
+ nativeToken,
124
+ });
125
+ break;
126
+ case ChainType.SOLANA:
127
+ if (!solanaSigner) {
128
+ throw new Error("Need Solana signer");
129
+ }
130
+ tx = await sendTransactionSolana({
131
+ amount: rawAmount,
132
+ to,
133
+ token,
134
+ connection: solanaClient,
135
+ signer: solanaSigner,
136
+ });
137
+ break;
138
+ case ChainType.BTC:
139
+ if (!bitcoinSigner) {
140
+ throw new Error("Need Bitcoin signer");
141
+ }
142
+ tx = await sendTransactionBitcoin({
143
+ amount: rawAmount,
144
+ to,
145
+ token,
146
+ signer: bitcoinSigner,
147
+ });
148
+ break;
149
+ case ChainType.SUI:
150
+ if (!suiSigner) {
151
+ throw new Error("Need Sui signer");
152
+ }
153
+ const suiAccount = connectedWalletsByChainType[ChainType.SUI];
154
+ if (!suiAccount.account) {
155
+ throw new Error("Need Sui account");
156
+ }
157
+ tx = await sendTransactionSui({
158
+ amount: rawAmount,
159
+ to,
160
+ token,
161
+ chain,
162
+ account: suiAccount.account,
163
+ signer: suiSigner,
164
+ });
165
+ break;
166
+ case ChainType.XRPL:
167
+ if (!xrplSigner) {
168
+ throw new Error("Need XRPL signer");
169
+ }
170
+ if (!connectedAddress.address) {
171
+ throw new Error("No connected address found");
172
+ }
173
+ tx = await sendTransactionXrpl({
174
+ amount: rawAmount,
175
+ to,
176
+ token,
177
+ signer: xrplSigner,
178
+ from: connectedAddress.address,
179
+ });
180
+ break;
181
+ case ChainType.STELLAR:
182
+ if (!stellarSigner) {
183
+ throw new Error("Need Stellar signer");
184
+ }
185
+ tx = await sendTransactionStellar({
186
+ amount: rawAmount,
187
+ to,
188
+ token,
189
+ signer: stellarSigner,
190
+ });
191
+ break;
192
+ }
193
+ return {
194
+ amount,
195
+ to,
196
+ token,
197
+ txHash: tx.txHash,
198
+ };
199
+ },
200
+ onMutate: (variables) => {
201
+ useSendTransactionStore.setState({
202
+ txLocalId: variables.id,
203
+ currentTransaction: undefined,
204
+ });
205
+ },
206
+ onError: (error, variables) => {
207
+ const currentTx = getTransaction(variables.id);
208
+ const errorObject = getTransactionError(error);
209
+ setTransactionState(variables.id, {
210
+ ...currentTx,
211
+ error: errorObject,
212
+ });
213
+ },
214
+ onSuccess: (tx, variables) => {
215
+ queryClient.invalidateQueries(getPrefixKey(QueryKeys.Balance));
216
+ setTransactionState(variables.id, tx);
217
+ persistTransaction({
218
+ txType: HistoryTxType.SEND,
219
+ data: {
220
+ amount: tx.amount,
221
+ token: {
222
+ address: tx.token.address,
223
+ chainId: tx.token.chainId,
224
+ decimals: tx.token.decimals,
225
+ symbol: tx.token.symbol,
226
+ type: tx.token.type,
227
+ },
228
+ hash: tx.txHash,
229
+ timestamp: Date.now(),
230
+ toAddress: tx.to,
231
+ status: SendTransactionStatus.ONGOING,
232
+ },
233
+ });
234
+ dispatchPostSendEvent({ txHash: tx.txHash });
235
+ },
236
+ });
237
+ const sendTransaction = useCallback(async () => {
238
+ const transactionId = Date.now().toString();
239
+ dispatchPreSendEvent();
240
+ return sendTransactionMutation.mutate({
241
+ id: transactionId,
242
+ });
243
+ }, [dispatchPreSendEvent, sendTransactionMutation.mutate]);
244
+ /**
245
+ * In QR-based wallets, cleans up listeners and network requests (e.g. websockets)
246
+ * Useful to save resources i.e when the user dismisses the QR code or aborts the connection process
247
+ */
248
+ const cancelSend = useCallback(() => {
249
+ switch (chain?.chainType) {
250
+ case ChainType.XRPL:
251
+ return xrplSigner?.cancelSignAndSubmit?.();
252
+ }
253
+ }, [chain?.chainType, xrplSigner]);
254
+ return { sendTransaction, cancelSend };
255
+ }
256
+ //# sourceMappingURL=useSendTransaction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSendTransaction.js","sourceRoot":"","sources":["../../../../src/hooks/transaction/send/useSendTransaction.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { ChainData, Token } from "@0xsquid/squid-types";
2
+ export declare function useSendTransactionGas({ chain, token, from, }: {
3
+ chain: ChainData | undefined;
4
+ token: Token | undefined;
5
+ from: string | undefined;
6
+ }): import("@tanstack/react-query").UseQueryResult<bigint, unknown>;
@@ -0,0 +1,73 @@
1
+ import { ChainType } from "@0xsquid/squid-types";
2
+ import { useQuery } from "@tanstack/react-query";
3
+ import { Interface } from "ethers";
4
+ import { erc20Abi } from "viem";
5
+ import { getClient } from "../../../core/client";
6
+ import { getFeeRate } from "../../../core/connectors/bitcoin/helpers";
7
+ import { nativeEvmTokenAddress } from "../../../core/constants";
8
+ import { keys } from "../../../core/queries/queries-keys";
9
+ export function useSendTransactionGas({ chain, token, from, }) {
10
+ return useQuery({
11
+ queryKey: keys().sendTransactionGas(chain?.chainId, token?.address, from),
12
+ queryFn: async () => {
13
+ if (!chain || !token)
14
+ throw new Error("Missing params");
15
+ switch (chain.chainType) {
16
+ case ChainType.EVM: {
17
+ const client = await getClient(chain);
18
+ const feeData = await client.getFeeData();
19
+ if (!feeData.maxFeePerGas)
20
+ return BigInt(0);
21
+ const dummyAddress = "0x1111111111111111111111111111111111111111";
22
+ // Some RPC providers require the sender to have enough balance, otherwise estimation reverts
23
+ // so we'll try to use the user provided address when possible
24
+ const sender = from || dummyAddress;
25
+ if (token.address.toLowerCase() === nativeEvmTokenAddress.toLowerCase()) {
26
+ const gas = await client.estimateGas({
27
+ from: sender,
28
+ to: dummyAddress,
29
+ value: 1,
30
+ chainId: chain.chainId,
31
+ });
32
+ return gas * feeData.maxFeePerGas;
33
+ }
34
+ const erc20Interface = new Interface(erc20Abi);
35
+ const data = erc20Interface.encodeFunctionData("transfer", [
36
+ dummyAddress,
37
+ 1,
38
+ ]);
39
+ const gas = await client.estimateGas({
40
+ from: sender,
41
+ to: token.address,
42
+ data,
43
+ chainId: chain.chainId,
44
+ });
45
+ return gas * feeData.maxFeePerGas;
46
+ }
47
+ case ChainType.COSMOS: {
48
+ // TODO: get gas estimation from backend
49
+ return BigInt(0);
50
+ }
51
+ case ChainType.SOLANA: {
52
+ // TODO: get gas estimation from backend
53
+ return BigInt(5000);
54
+ }
55
+ case ChainType.BTC: {
56
+ const feeRate = await getFeeRate();
57
+ // average vBytes for a segwit tx (2 inputs, 2 outputs)
58
+ const vBytes = 378;
59
+ const feeSats = feeRate * vBytes;
60
+ // TODO: get gas estimation from backend?
61
+ return BigInt(feeSats);
62
+ }
63
+ default:
64
+ throw new Error(`Gas estimation not implemented for chain type ${chain.chainType}`);
65
+ }
66
+ },
67
+ enabled: !!chain && !!token,
68
+ // 5 minutes
69
+ staleTime: 1_000 * 60 * 5,
70
+ refetchInterval: 1_000 * 60 * 5,
71
+ });
72
+ }
73
+ //# sourceMappingURL=useSendTransactionGas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSendTransactionGas.js","sourceRoot":"","sources":["../../../../src/hooks/transaction/send/useSendTransactionGas.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,36 @@
1
- import { StatusResponse } from "@0xsquid/squid-types";
1
+ import { OnRampTransactionStatus } from "../../core/types/onramps/onramp";
2
+ import { SendTransactionStatus } from "../../core/types/transaction";
2
3
  export declare const useAllTransactionsStatus: ({ enabled }: {
3
4
  enabled: boolean;
4
- }) => import("@tanstack/react-query").UseQueryResult<StatusResponse[], unknown>;
5
+ }) => {
6
+ isLoading: boolean;
7
+ isError: boolean;
8
+ data: ((import("@0xsquid/squid-types").ApiBasicResponse & {
9
+ id: string;
10
+ status: string;
11
+ gasStatus: string;
12
+ isGMPTransaction?: boolean | undefined;
13
+ axelarTransactionUrl: string;
14
+ fromChain?: {
15
+ transactionId: string;
16
+ blockNumber: string;
17
+ callEventStatus: string;
18
+ callEventLog: any[];
19
+ chainData?: any;
20
+ transactionUrl?: string | undefined;
21
+ destinationAddress?: string | undefined;
22
+ } | undefined;
23
+ toChain?: {
24
+ transactionId: string;
25
+ blockNumber: string;
26
+ callEventStatus: string;
27
+ callEventLog: any[];
28
+ chainData?: any;
29
+ transactionUrl?: string | undefined;
30
+ destinationAddress?: string | undefined;
31
+ } | undefined;
32
+ timeSpent?: {} | Record<string, number> | undefined;
33
+ squidTransactionStatus?: import("@0xsquid/squid-types").SquidTransactionStatus | undefined;
34
+ routeStatus?: any[] | undefined;
35
+ } & OnRampTransactionStatus & SendTransactionStatus) | undefined)[];
36
+ };
@@ -1,70 +1,127 @@
1
- import { useQuery } from "@tanstack/react-query";
1
+ import { useQueries } from "@tanstack/react-query";
2
2
  import { keys } from "../../core/queries/queries-keys";
3
- import { TransactionStatus } from "../../core/types/transaction";
4
- import { fetchTransactionStatus, getTransactionEndStatus, } from "../../services";
5
- import { useConfigStore, useTransactionStore } from "../store/useSquidStore";
3
+ import { HistoryTxType } from "../../core/types/history";
4
+ import { fetchSwapTransactionStatus, getSendTxStatusRefetchInterval, getSwapTxStatusRefetchInterval, getTransactionEndStatus, } from "../../services";
5
+ import { OnrampService } from "../../services/external/onrampAdapter";
6
+ import { getSendTransactionStatus } from "../../services/internal/sendTransactionStatus";
7
+ import { useSquidChains } from "../chains/useSquidChains";
8
+ import { SendTransactionStatus } from "../../core/types/transaction";
9
+ import { FINAL_TRANSACTION_STATUSES, TX_STATUS_CONSTANTS, } from "../onramp/useFiatToCrypto";
10
+ import { useHistoryStore } from "../store/useHistoryStore";
11
+ import { useConfigStore } from "../store/useSquidStore";
6
12
  import { useHistory } from "../user/useHistory";
7
13
  export const useAllTransactionsStatus = ({ enabled }) => {
8
- const { replaceTransactionStatus, pendingTransactions } = useHistory();
14
+ const { pendingTransactions, replaceSwapTransactionStatus } = useHistory();
15
+ const replaceTransactionStatus = useHistoryStore((state) => state.replaceTransactionStatus);
9
16
  const config = useConfigStore((state) => state.config);
10
- const requestId = useTransactionStore((state) => state.currentRequestId);
11
- return useQuery({
12
- queryKey: keys().allTransactionsStatus(pendingTransactions),
13
- queryFn: async () => {
14
- try {
15
- if (config.apiUrl) {
16
- const apiUrl = config.apiUrl;
17
- const promiseResults = await Promise.allSettled(pendingTransactions.map((transaction) => fetchTransactionStatus({
18
- transaction: {
19
- ...transaction,
20
- transactionId: transaction.transactionIdForStatus ??
21
- transaction.transactionId,
22
- },
23
- integratorId: config.integratorId,
24
- currentRequestId: requestId,
25
- apiUrl,
26
- })));
27
- const results = promiseResults.map((result) => result.status === "fulfilled" ? result.value : undefined);
28
- return Array.isArray(results)
29
- ? results.filter((result) => result != null)
30
- : [];
31
- }
32
- return [];
17
+ const { findChain } = useSquidChains();
18
+ const onrampService = new OnrampService();
19
+ const statusQueries = pendingTransactions.map(({ txType, data }) => {
20
+ switch (txType) {
21
+ case HistoryTxType.SWAP: {
22
+ return {
23
+ queryKey: keys().swapTransactionStatus(data.transactionId),
24
+ queryFn: async () => {
25
+ return fetchSwapTransactionStatus({
26
+ transaction: {
27
+ ...data,
28
+ transactionId: data.transactionIdForStatus ?? data.transactionId,
29
+ },
30
+ apiUrl: config.apiUrl,
31
+ integratorId: config.integratorId,
32
+ });
33
+ },
34
+ enabled: true,
35
+ retry: 4,
36
+ retryDelay: getSwapTxStatusRefetchInterval(data),
37
+ refetchInterval: 5000,
38
+ onSuccess: (statusResponse) => {
39
+ if (!statusResponse)
40
+ return;
41
+ const endStatus = getTransactionEndStatus({
42
+ statusResponse,
43
+ });
44
+ if (!endStatus)
45
+ return;
46
+ replaceSwapTransactionStatus({
47
+ transactionId: data.transactionId,
48
+ statusResponse,
49
+ status: endStatus,
50
+ });
51
+ },
52
+ };
33
53
  }
34
- catch (error) {
35
- return [];
36
- }
37
- },
38
- onSuccess: (statusResponses) => {
39
- if (Array.isArray(statusResponses)) {
40
- statusResponses.forEach((statusResponse) => {
41
- const endStatus = getTransactionEndStatus({ statusResponse });
42
- if (endStatus) {
43
- const transaction = pendingTransactions.find((tx) => tx.transactionIdForStatus === statusResponse.id ||
44
- tx.transactionId === statusResponse.id ||
45
- tx.transactionId === statusResponse.fromChain?.transactionId);
46
- replaceTransactionStatus(
47
- // Use the original transactionId for storage, but looked up using transactionIdForStatus
48
- transaction?.transactionId ??
49
- statusResponse.fromChain?.transactionId ??
50
- statusResponse.id, statusResponse, endStatus);
51
- }
52
- });
53
- }
54
- },
55
- refetchInterval: (data) => {
56
- if (Array.isArray(data) && data.length > 0) {
57
- const someTxPending = data.some((tx) => tx.status === TransactionStatus.INITIAL_LOADING ||
58
- tx.status === TransactionStatus.PENDING ||
59
- tx.status === TransactionStatus.ONGOING);
60
- return someTxPending ? 5000 : false;
61
- }
62
- return false;
63
- },
64
- retryDelay: 5000,
65
- retry: 4,
66
- refetchOnWindowFocus: true,
67
- enabled: enabled && pendingTransactions.length > 0,
54
+ case HistoryTxType.BUY:
55
+ return {
56
+ queryFn: () => onrampService.getTransactionStatus(data.orderId, data.toAddress, data.providerId),
57
+ queryKey: keys().fiatToCryptoStatus(data.orderId),
58
+ retry: TX_STATUS_CONSTANTS.RETRY_COUNT,
59
+ retryDelay: TX_STATUS_CONSTANTS.RETRY_DELAY,
60
+ refetchInterval: (data) => {
61
+ if (data?.status &&
62
+ FINAL_TRANSACTION_STATUSES.includes(data.status)) {
63
+ return false;
64
+ }
65
+ return TX_STATUS_CONSTANTS.REFETCH_INTERVAL;
66
+ },
67
+ onSuccess: (statusData) => {
68
+ replaceTransactionStatus({
69
+ orderId: data.orderId,
70
+ status: statusData.status,
71
+ transactionHash: statusData.transactionHash,
72
+ txType: HistoryTxType.BUY,
73
+ });
74
+ },
75
+ onError: () => {
76
+ replaceTransactionStatus({
77
+ txType: HistoryTxType.BUY,
78
+ orderId: data.orderId,
79
+ status: "failed",
80
+ transactionHash: undefined,
81
+ });
82
+ },
83
+ enabled: true,
84
+ };
85
+ case HistoryTxType.SEND:
86
+ return {
87
+ queryKey: keys().sendTransactionStatus(data.hash, data.token.chainId),
88
+ queryFn: async () => {
89
+ const chain = findChain(data.token.chainId);
90
+ if (!chain) {
91
+ throw new Error(`Could not find chain ${data.token.chainId} for tx status`);
92
+ }
93
+ return getSendTransactionStatus({
94
+ chain,
95
+ txHash: data.hash,
96
+ });
97
+ },
98
+ refetchInterval: getSendTxStatusRefetchInterval(data.token.type),
99
+ onSuccess: (status) => {
100
+ if (status !== SendTransactionStatus.ONGOING) {
101
+ replaceTransactionStatus({
102
+ txType: HistoryTxType.SEND,
103
+ status,
104
+ hash: data.hash,
105
+ });
106
+ }
107
+ },
108
+ onError: () => {
109
+ replaceTransactionStatus({
110
+ txType: HistoryTxType.SEND,
111
+ status: SendTransactionStatus.ERROR,
112
+ hash: data.hash,
113
+ });
114
+ },
115
+ };
116
+ }
117
+ });
118
+ const queries = useQueries({
119
+ queries: enabled && config.apiUrl ? statusQueries : [],
68
120
  });
121
+ return {
122
+ isLoading: queries.some((q) => q.isLoading),
123
+ isError: queries.some((q) => q.isError),
124
+ data: queries.map((q) => q.data).filter(Boolean),
125
+ };
69
126
  };
70
127
  //# sourceMappingURL=useAllTransactionsStatus.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useAllTransactionsStatus.js","sourceRoot":"","sources":["../../../src/hooks/transaction/useAllTransactionsStatus.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useAllTransactionsStatus.js","sourceRoot":"","sources":["../../../src/hooks/transaction/useAllTransactionsStatus.ts"],"names":[],"mappings":"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"}
@@ -18,10 +18,10 @@ export const useApproval = ({ squidRoute, }) => {
18
18
  const publicClient = usePublicClient();
19
19
  const queryClient = useQueryClient();
20
20
  const squid = useSquidStore((state) => state.squid);
21
- const { evmSigner } = useSigner();
21
+ const { fromChain, fromToken, fromPrice } = useSwap();
22
+ const { evmSigner } = useSigner({ chain: fromChain });
22
23
  const { connector: activeConnector } = useAccount();
23
24
  const { getChainType } = useSquidChains();
24
- const { fromChain, fromToken, fromPrice } = useSwap();
25
25
  const { switchChainAsync } = useSwitchChain();
26
26
  const { connectedAddress: { address: sourceUserAddress }, } = useMultiChainWallet(fromChain);
27
27
  const isSrcChainEvmos = isEvmosChain(fromChain);
@@ -209,7 +209,7 @@ export const useApproval = ({ squidRoute, }) => {
209
209
  // This is to ensure we're using the latest expiry timestamp
210
210
  if (squidRoute) {
211
211
  queryClient.refetchQueries({
212
- queryKey: keys().transaction(squidRoute.params.fromChain, squidRoute.params.toChain, squidRoute.params.toToken, squidRoute.params.fromToken, fromPrice, squidRoute.params.slippage, squidRoute.params.receiveGasOnDestination, squidRoute.params.fromAddress, squidRoute.params.bypassGuardrails, squidRoute.params.toAddress, squidRoute.params.fallbackAddresses?.[0]?.address, squidRoute.params.quoteOnly, getChainType(squidRoute.params.fromChain)),
212
+ queryKey: keys().transaction(squidRoute.params.fromChain, squidRoute.params.toChain, squidRoute.params.toToken, squidRoute.params.fromToken, fromPrice, squidRoute.params.slippage, squidRoute.params.receiveGasOnDestination, squidRoute.params.fromAddress, squidRoute.params.bypassGuardrails, squidRoute.params.toAddress, squidRoute.params.fallbackAddresses?.[0]?.address, squidRoute.params.quoteOnly, getChainType(squidRoute.params.fromChain), squidRoute.params.preHook, squidRoute.params.postHook),
213
213
  });
214
214
  }
215
215
  },