0xtrails 0.13.2 → 0.15.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 (844) hide show
  1. package/dist/abis/requireUtils.d.ts +134 -0
  2. package/dist/abis/requireUtils.d.ts.map +1 -0
  3. package/dist/abis/trailsHydrate.d.ts +6 -42
  4. package/dist/abis/trailsHydrate.d.ts.map +1 -1
  5. package/dist/abis/trailsRouter.d.ts +1 -1
  6. package/dist/abis/trailsRouter.d.ts.map +1 -1
  7. package/dist/actions/actionBuilder.d.ts +414 -0
  8. package/dist/actions/actionBuilder.d.ts.map +1 -0
  9. package/dist/actions/constants.d.ts +1853 -0
  10. package/dist/actions/constants.d.ts.map +1 -0
  11. package/dist/actions/custom-integrations/sushiswapV3/addresses.d.ts +4 -0
  12. package/dist/actions/custom-integrations/sushiswapV3/addresses.d.ts.map +1 -0
  13. package/dist/actions/custom-integrations/sushiswapV3/calldata.d.ts +4 -0
  14. package/dist/actions/custom-integrations/sushiswapV3/calldata.d.ts.map +1 -0
  15. package/dist/actions/custom-integrations/sushiswapV3/calls.d.ts +28 -0
  16. package/dist/actions/custom-integrations/sushiswapV3/calls.d.ts.map +1 -0
  17. package/dist/actions/custom-integrations/sushiswapV3/helpers.d.ts +15 -0
  18. package/dist/actions/custom-integrations/sushiswapV3/helpers.d.ts.map +1 -0
  19. package/dist/actions/custom-integrations/sushiswapV3/sushiswapV3.d.ts +9 -0
  20. package/dist/actions/custom-integrations/sushiswapV3/sushiswapV3.d.ts.map +1 -0
  21. package/dist/actions/custom-integrations/sushiswapV3/types.d.ts +95 -0
  22. package/dist/actions/custom-integrations/sushiswapV3/types.d.ts.map +1 -0
  23. package/dist/actions/custom-integrations/uniswapV3/addresses.d.ts +4 -0
  24. package/dist/actions/custom-integrations/uniswapV3/addresses.d.ts.map +1 -0
  25. package/dist/actions/custom-integrations/uniswapV3/calldata.d.ts +4 -0
  26. package/dist/actions/custom-integrations/uniswapV3/calldata.d.ts.map +1 -0
  27. package/dist/actions/custom-integrations/uniswapV3/calls.d.ts +50 -0
  28. package/dist/actions/custom-integrations/uniswapV3/calls.d.ts.map +1 -0
  29. package/dist/actions/custom-integrations/uniswapV3/helpers.d.ts +23 -0
  30. package/dist/actions/custom-integrations/uniswapV3/helpers.d.ts.map +1 -0
  31. package/dist/actions/custom-integrations/uniswapV3/types.d.ts +90 -0
  32. package/dist/actions/custom-integrations/uniswapV3/types.d.ts.map +1 -0
  33. package/dist/actions/custom-integrations/uniswapV3/uniswapV3.d.ts +9 -0
  34. package/dist/actions/custom-integrations/uniswapV3/uniswapV3.d.ts.map +1 -0
  35. package/dist/actions/destinationCalls.d.ts +17 -0
  36. package/dist/actions/destinationCalls.d.ts.map +1 -0
  37. package/dist/actions/dynamic.d.ts +97 -0
  38. package/dist/actions/dynamic.d.ts.map +1 -0
  39. package/dist/actions/hooks/useEarnBalances.d.ts +53 -0
  40. package/dist/actions/hooks/useEarnBalances.d.ts.map +1 -0
  41. package/dist/actions/hooks/useEarnMarkets.d.ts +29 -0
  42. package/dist/actions/hooks/useEarnMarkets.d.ts.map +1 -0
  43. package/dist/actions/hooks/useEarnProviders.d.ts +18 -0
  44. package/dist/actions/hooks/useEarnProviders.d.ts.map +1 -0
  45. package/dist/actions/hooks/useResolveActions.d.ts +28 -0
  46. package/dist/actions/hooks/useResolveActions.d.ts.map +1 -0
  47. package/dist/actions/index.d.ts +8 -0
  48. package/dist/actions/index.d.ts.map +1 -0
  49. package/dist/actions/index.js +13 -0
  50. package/dist/actions/resolvers.d.ts +30 -0
  51. package/dist/actions/resolvers.d.ts.map +1 -0
  52. package/dist/actions/types/earn.d.ts +51 -0
  53. package/dist/actions/types/earn.d.ts.map +1 -0
  54. package/dist/actions/types.d.ts +303 -0
  55. package/dist/actions/types.d.ts.map +1 -0
  56. package/dist/actions/utils.d.ts +181 -0
  57. package/dist/actions/utils.d.ts.map +1 -0
  58. package/dist/{widget/analytics → analytics/hooks}/useWidgetAnalytics.d.ts +2 -4
  59. package/dist/analytics/hooks/useWidgetAnalytics.d.ts.map +1 -0
  60. package/dist/analytics.d.ts.map +1 -1
  61. package/dist/chainSwitch.d.ts.map +1 -1
  62. package/dist/chains-DttlfV-6.js +4 -0
  63. package/dist/chains-ccVR_-73.js +655 -0
  64. package/dist/chains.d.ts +0 -1
  65. package/dist/chains.d.ts.map +1 -1
  66. package/dist/committedIntentStore.d.ts +5 -0
  67. package/dist/committedIntentStore.d.ts.map +1 -0
  68. package/dist/config.d.ts +2 -0
  69. package/dist/config.d.ts.map +1 -1
  70. package/dist/constants.d.ts +2 -1
  71. package/dist/constants.d.ts.map +1 -1
  72. package/dist/error.d.ts +73 -4
  73. package/dist/error.d.ts.map +1 -1
  74. package/dist/hooks/persistedToken.d.ts +22 -0
  75. package/dist/hooks/persistedToken.d.ts.map +1 -0
  76. package/dist/hooks/prepareTrailsSendTransactionDestination.d.ts +26 -0
  77. package/dist/hooks/prepareTrailsSendTransactionDestination.d.ts.map +1 -0
  78. package/dist/hooks/useAddressWalletIcon.d.ts.map +1 -0
  79. package/dist/hooks/useAmountUsd.d.ts.map +1 -0
  80. package/dist/hooks/useBalanceVisible.d.ts.map +1 -0
  81. package/dist/hooks/useChainFilter.d.ts.map +1 -0
  82. package/dist/{widget/hooks → hooks}/useCheckout.d.ts +15 -15
  83. package/dist/hooks/useCheckout.d.ts.map +1 -0
  84. package/dist/hooks/useClickTracking.d.ts.map +1 -0
  85. package/dist/{widget/hooks → hooks}/useCombinedHistory.d.ts +3 -2
  86. package/dist/hooks/useCombinedHistory.d.ts.map +1 -0
  87. package/dist/hooks/useConnector.d.ts.map +1 -0
  88. package/dist/{widget/hooks → hooks}/useCustomTokenSearch.d.ts +3 -2
  89. package/dist/hooks/useCustomTokenSearch.d.ts.map +1 -0
  90. package/dist/hooks/useDebounce.d.ts.map +1 -0
  91. package/dist/{widget/hooks → hooks}/useDebugScreens.d.ts +2 -2
  92. package/dist/hooks/useDebugScreens.d.ts.map +1 -0
  93. package/dist/{widget/hooks → hooks}/useDefaultDestinationToken.d.ts +1 -1
  94. package/dist/hooks/useDefaultDestinationToken.d.ts.map +1 -0
  95. package/dist/{widget/hooks → hooks}/useDefaultOriginToken.d.ts +1 -1
  96. package/dist/hooks/useDefaultOriginToken.d.ts.map +1 -0
  97. package/dist/hooks/useDepositMonitor.d.ts.map +1 -0
  98. package/dist/{widget/hooks → hooks}/useDestinationSelectedToken.d.ts +10 -2
  99. package/dist/hooks/useDestinationSelectedToken.d.ts.map +1 -0
  100. package/dist/hooks/useDisplayCurrencyPreference.d.ts.map +1 -0
  101. package/dist/{widget/hooks → hooks}/useEarnPool.d.ts +1 -1
  102. package/dist/hooks/useEarnPool.d.ts.map +1 -0
  103. package/dist/hooks/useEffectiveFundBalance.d.ts +28 -0
  104. package/dist/hooks/useEffectiveFundBalance.d.ts.map +1 -0
  105. package/dist/hooks/useExecutingIntentsCount.d.ts.map +1 -0
  106. package/dist/{widget/hooks → hooks}/useExternalFundingReceiptSync.d.ts +1 -1
  107. package/dist/hooks/useExternalFundingReceiptSync.d.ts.map +1 -0
  108. package/dist/{widget/hooks → hooks}/useFiatOnRampCurrencies.d.ts +1 -1
  109. package/dist/hooks/useFiatOnRampCurrencies.d.ts.map +1 -0
  110. package/dist/hooks/useFiatSelectedCurrency.d.ts.map +1 -0
  111. package/dist/hooks/useGetIntent.d.ts.map +1 -0
  112. package/dist/{widget/hooks → hooks}/useIntentReceiptBalances.d.ts +1 -1
  113. package/dist/hooks/useIntentReceiptBalances.d.ts.map +1 -0
  114. package/dist/{widget/hooks → hooks}/useIntentTransactionHistory.d.ts +2 -1
  115. package/dist/hooks/useIntentTransactionHistory.d.ts.map +1 -0
  116. package/dist/hooks/useIsMobile.d.ts.map +1 -0
  117. package/dist/hooks/useIsSequenceWallet.d.ts.map +1 -0
  118. package/dist/hooks/useLocalePreference.d.ts.map +1 -0
  119. package/dist/hooks/useMeldTransactionHistory.d.ts.map +1 -0
  120. package/dist/hooks/useMeldTransactionStatus.d.ts.map +1 -0
  121. package/dist/hooks/useOnRampCountryDefaults.d.ts.map +1 -0
  122. package/dist/{widget/hooks → hooks}/useOnRampPaymentMethods.d.ts +2 -2
  123. package/dist/hooks/useOnRampPaymentMethods.d.ts.map +1 -0
  124. package/dist/{widget/hooks → hooks}/useOnRampProviderWidget.d.ts +1 -1
  125. package/dist/hooks/useOnRampProviderWidget.d.ts.map +1 -0
  126. package/dist/{widget/hooks → hooks}/useOnRampQuote.d.ts +3 -3
  127. package/dist/hooks/useOnRampQuote.d.ts.map +1 -0
  128. package/dist/{widget/hooks → hooks}/useOnRampTransactionStatus.d.ts +1 -1
  129. package/dist/hooks/useOnRampTransactionStatus.d.ts.map +1 -0
  130. package/dist/{widget/hooks → hooks}/useOriginSelectedToken.d.ts +1 -1
  131. package/dist/hooks/useOriginSelectedToken.d.ts.map +1 -0
  132. package/dist/hooks/usePayMessage.d.ts.map +1 -0
  133. package/dist/hooks/usePriceImpactWarning.d.ts.map +1 -0
  134. package/dist/hooks/useQuote.d.ts +619 -0
  135. package/dist/hooks/useQuote.d.ts.map +1 -0
  136. package/dist/{widget/hooks → hooks}/useRecentTokens.d.ts +1 -1
  137. package/dist/hooks/useRecentTokens.d.ts.map +1 -0
  138. package/dist/hooks/useRecipients.d.ts.map +1 -0
  139. package/dist/hooks/useSelectedFeeOption.d.ts.map +1 -0
  140. package/dist/{widget/hooks → hooks}/useSelectedFundMethod.d.ts +11 -1
  141. package/dist/hooks/useSelectedFundMethod.d.ts.map +1 -0
  142. package/dist/hooks/useSelectedRecipient.d.ts.map +1 -0
  143. package/dist/{widget/hooks → hooks}/useSendForm.d.ts +10 -12
  144. package/dist/hooks/useSendForm.d.ts.map +1 -0
  145. package/dist/hooks/useSwapAmount.d.ts.map +1 -0
  146. package/dist/{widget/hooks → hooks}/useSwapState.d.ts +1 -1
  147. package/dist/hooks/useSwapState.d.ts.map +1 -0
  148. package/dist/hooks/useTargetAmount.d.ts.map +1 -0
  149. package/dist/hooks/useTheme.d.ts.map +1 -0
  150. package/dist/{widget/hooks → hooks}/useTokenList.d.ts +4 -3
  151. package/dist/hooks/useTokenList.d.ts.map +1 -0
  152. package/dist/hooks/useTrailsSendTransaction.d.ts +171 -0
  153. package/dist/hooks/useTrailsSendTransaction.d.ts.map +1 -0
  154. package/dist/{widget/hooks → hooks}/useViewManager.d.ts +1 -1
  155. package/dist/hooks/useViewManager.d.ts.map +1 -0
  156. package/dist/hooks/useWalletConnectUri.d.ts +19 -0
  157. package/dist/hooks/useWalletConnectUri.d.ts.map +1 -0
  158. package/dist/hooks/useWalletConnectionContext.d.ts.map +1 -0
  159. package/dist/{widget/hooks → hooks}/useWidgetProps.d.ts +1 -1
  160. package/dist/hooks/useWidgetProps.d.ts.map +1 -0
  161. package/dist/hydrate/builder.d.ts +131 -0
  162. package/dist/hydrate/builder.d.ts.map +1 -0
  163. package/dist/hydrate/constants.d.ts +13 -0
  164. package/dist/hydrate/constants.d.ts.map +1 -0
  165. package/dist/hydrate/encodeExecute.d.ts +73 -0
  166. package/dist/hydrate/encodeExecute.d.ts.map +1 -0
  167. package/dist/hydrate/index.d.ts +8 -0
  168. package/dist/hydrate/index.d.ts.map +1 -0
  169. package/dist/hydrate/index.js +14 -0
  170. package/dist/hydrate/multicall.d.ts +69 -0
  171. package/dist/hydrate/multicall.d.ts.map +1 -0
  172. package/dist/hydrate/payload.d.ts +38 -0
  173. package/dist/hydrate/payload.d.ts.map +1 -0
  174. package/dist/hydrate/selectors.d.ts +28 -0
  175. package/dist/hydrate/selectors.d.ts.map +1 -0
  176. package/dist/hydrate/source.d.ts +11 -0
  177. package/dist/hydrate/source.d.ts.map +1 -0
  178. package/dist/hydrate/types.d.ts +21 -0
  179. package/dist/hydrate/types.d.ts.map +1 -0
  180. package/dist/hydrate/utils.d.ts +8 -0
  181. package/dist/hydrate/utils.d.ts.map +1 -0
  182. package/dist/hydrate-BsQ8nPlI.js +882 -0
  183. package/dist/index.d.ts +47 -14
  184. package/dist/index.d.ts.map +1 -1
  185. package/dist/index.js +189 -662
  186. package/dist/intentConfigStore.d.ts +8 -0
  187. package/dist/intentConfigStore.d.ts.map +1 -0
  188. package/dist/intentProtocolApi.d.ts +11 -0
  189. package/dist/intentProtocolApi.d.ts.map +1 -0
  190. package/dist/intentProtocolEncoding.d.ts +30 -0
  191. package/dist/intentProtocolEncoding.d.ts.map +1 -0
  192. package/dist/intentProtocolResolver.d.ts +28 -0
  193. package/dist/intentProtocolResolver.d.ts.map +1 -0
  194. package/dist/intentReceiptPoller.d.ts.map +1 -1
  195. package/dist/intentValidation.d.ts +5 -0
  196. package/dist/intentValidation.d.ts.map +1 -0
  197. package/dist/intents.d.ts.map +1 -1
  198. package/dist/keymachine/index.d.ts +20 -0
  199. package/dist/keymachine/index.d.ts.map +1 -1
  200. package/dist/mutations.d.ts.map +1 -1
  201. package/dist/offlineRecovery.d.ts +24 -0
  202. package/dist/offlineRecovery.d.ts.map +1 -0
  203. package/dist/onramp/MeshConnectFlow.d.ts +9 -0
  204. package/dist/onramp/MeshConnectFlow.d.ts.map +1 -1
  205. package/dist/onramp/MeshConnectIframe.d.ts +9 -0
  206. package/dist/onramp/MeshConnectIframe.d.ts.map +1 -1
  207. package/dist/onramp/TrailsOnRampProvider.d.ts.map +1 -1
  208. package/dist/onramp/mesh/components/MeshExchangeConfirmation.d.ts +10 -0
  209. package/dist/onramp/mesh/components/MeshExchangeConfirmation.d.ts.map +1 -0
  210. package/dist/onramp/mesh/components/MeshExchangeIcon.d.ts +13 -0
  211. package/dist/onramp/mesh/components/MeshExchangeIcon.d.ts.map +1 -0
  212. package/dist/{widget → onramp/mesh}/components/MeshExchangeSelection.d.ts +1 -0
  213. package/dist/onramp/mesh/components/MeshExchangeSelection.d.ts.map +1 -0
  214. package/dist/onramp/mesh/components/MeshSessionOptions.d.ts +15 -0
  215. package/dist/onramp/mesh/components/MeshSessionOptions.d.ts.map +1 -0
  216. package/dist/onramp/mesh/hooks/useMeshAccessTokens.d.ts +9 -0
  217. package/dist/onramp/mesh/hooks/useMeshAccessTokens.d.ts.map +1 -0
  218. package/dist/onramp/mesh/hooks/useMeshFundingSelection.d.ts +11 -0
  219. package/dist/onramp/mesh/hooks/useMeshFundingSelection.d.ts.map +1 -0
  220. package/dist/onramp/mesh/hooks/useMeshOnrampFlow.d.ts +71 -0
  221. package/dist/onramp/mesh/hooks/useMeshOnrampFlow.d.ts.map +1 -0
  222. package/dist/onramp/mesh/hooks/useMeshOnrampSessionState.d.ts +32 -0
  223. package/dist/onramp/mesh/hooks/useMeshOnrampSessionState.d.ts.map +1 -0
  224. package/dist/onramp/mesh/hooks/useMeshSelectedTokenBalance.d.ts +19 -0
  225. package/dist/onramp/mesh/hooks/useMeshSelectedTokenBalance.d.ts.map +1 -0
  226. package/dist/onramp/mesh/hooks/useMeshSessionAccountBalance.d.ts +15 -0
  227. package/dist/onramp/mesh/hooks/useMeshSessionAccountBalance.d.ts.map +1 -0
  228. package/dist/onramp/mesh/hooks/useMeshSessionStorage.d.ts +7 -0
  229. package/dist/onramp/mesh/hooks/useMeshSessionStorage.d.ts.map +1 -0
  230. package/dist/onramp/meshSessionStorage.d.ts +13 -0
  231. package/dist/onramp/meshSessionStorage.d.ts.map +1 -0
  232. package/dist/onramp/meshconnect.d.ts +6 -4
  233. package/dist/onramp/meshconnect.d.ts.map +1 -1
  234. package/dist/onramp/trailsOnramp.d.ts +8 -0
  235. package/dist/onramp/trailsOnramp.d.ts.map +1 -1
  236. package/dist/onrampClient.d.ts.map +1 -1
  237. package/dist/placeholder.d.ts +129 -5
  238. package/dist/placeholder.d.ts.map +1 -1
  239. package/dist/poolUtils.d.ts +0 -14
  240. package/dist/poolUtils.d.ts.map +1 -1
  241. package/dist/prepareSend.d.ts +3 -2
  242. package/dist/prepareSend.d.ts.map +1 -1
  243. package/dist/query/balance.fetchers.d.ts +7 -1
  244. package/dist/query/balance.fetchers.d.ts.map +1 -1
  245. package/dist/query/intentProtocol.queries.d.ts +32 -0
  246. package/dist/query/intentProtocol.queries.d.ts.map +1 -0
  247. package/dist/recover.d.ts +70 -24
  248. package/dist/recover.d.ts.map +1 -1
  249. package/dist/src-CQhZqidH.js +51593 -0
  250. package/dist/tokens.d.ts.map +1 -1
  251. package/dist/transactionIntent/deposits/depositOrchestrator.d.ts +2 -3
  252. package/dist/transactionIntent/deposits/depositOrchestrator.d.ts.map +1 -1
  253. package/dist/transactionIntent/deposits/gaslessDeposit.d.ts +2 -3
  254. package/dist/transactionIntent/deposits/gaslessDeposit.d.ts.map +1 -1
  255. package/dist/transactionIntent/deposits/standardDeposit.d.ts +2 -5
  256. package/dist/transactionIntent/deposits/standardDeposit.d.ts.map +1 -1
  257. package/dist/transactionIntent/handlers/intentHandler.d.ts +5 -4
  258. package/dist/transactionIntent/handlers/intentHandler.d.ts.map +1 -1
  259. package/dist/transactionIntent/quote/quoteHelpers.d.ts +2 -2
  260. package/dist/transactionIntent/quote/quoteHelpers.d.ts.map +1 -1
  261. package/dist/transactionIntent/types.d.ts +4 -3
  262. package/dist/transactionIntent/types.d.ts.map +1 -1
  263. package/dist/transactions.d.ts +1 -0
  264. package/dist/transactions.d.ts.map +1 -1
  265. package/dist/umd/trails.min.js +1371 -409
  266. package/dist/utils/localStorageGc.d.ts +22 -0
  267. package/dist/utils/localStorageGc.d.ts.map +1 -0
  268. package/dist/utils/validation.d.ts +14 -0
  269. package/dist/utils/validation.d.ts.map +1 -1
  270. package/dist/walletUtils.d.ts.map +1 -1
  271. package/dist/widget/components/AccountIntentTransactionHistory.d.ts.map +1 -1
  272. package/dist/widget/components/ChainList.d.ts +2 -0
  273. package/dist/widget/components/ChainList.d.ts.map +1 -1
  274. package/dist/widget/components/ClassicSwap.d.ts.map +1 -1
  275. package/dist/widget/components/ConnectedWallets.d.ts +1 -1
  276. package/dist/widget/components/ConnectedWallets.d.ts.map +1 -1
  277. package/dist/widget/components/Earn.d.ts +2 -6
  278. package/dist/widget/components/Earn.d.ts.map +1 -1
  279. package/dist/widget/components/EarnMarkets.d.ts +9 -0
  280. package/dist/widget/components/EarnMarkets.d.ts.map +1 -0
  281. package/dist/widget/components/EarnPoolsFilters.d.ts +7 -1
  282. package/dist/widget/components/EarnPoolsFilters.d.ts.map +1 -1
  283. package/dist/widget/components/{PoolWithdraw.d.ts → EarnWithdraw.d.ts} +5 -5
  284. package/dist/widget/components/{PoolWithdraw.d.ts.map → EarnWithdraw.d.ts.map} +1 -1
  285. package/dist/widget/components/FeeOption.d.ts +1 -1
  286. package/dist/widget/components/FeeOption.d.ts.map +1 -1
  287. package/dist/widget/components/FeeOptions.d.ts +1 -1
  288. package/dist/widget/components/FeeOptions.d.ts.map +1 -1
  289. package/dist/widget/components/FiatSelector.d.ts +1 -1
  290. package/dist/widget/components/FiatSelector.d.ts.map +1 -1
  291. package/dist/widget/components/FiatSelectorButton.d.ts +1 -1
  292. package/dist/widget/components/FiatSelectorButton.d.ts.map +1 -1
  293. package/dist/widget/components/Fund.d.ts +1 -1
  294. package/dist/widget/components/Fund.d.ts.map +1 -1
  295. package/dist/widget/components/FundMethods.d.ts.map +1 -1
  296. package/dist/widget/components/FundingMethodSelectorButton.d.ts +1 -1
  297. package/dist/widget/components/FundingMethodSelectorButton.d.ts.map +1 -1
  298. package/dist/widget/components/HookModalContent.d.ts.map +1 -1
  299. package/dist/widget/components/MeldHistory.d.ts +1 -1
  300. package/dist/widget/components/MeldHistory.d.ts.map +1 -1
  301. package/dist/widget/components/MeldTransactionStatus.d.ts +1 -1
  302. package/dist/widget/components/MeldTransactionStatus.d.ts.map +1 -1
  303. package/dist/widget/components/MeshExchangeAccountHeader.d.ts +9 -0
  304. package/dist/widget/components/MeshExchangeAccountHeader.d.ts.map +1 -0
  305. package/dist/widget/components/OnrampHistoryRow.d.ts +1 -1
  306. package/dist/widget/components/OnrampHistoryRow.d.ts.map +1 -1
  307. package/dist/widget/components/OnrampProviderConfirmation.d.ts +1 -1
  308. package/dist/widget/components/OnrampProviderConfirmation.d.ts.map +1 -1
  309. package/dist/widget/components/Pay.d.ts.map +1 -1
  310. package/dist/widget/components/PoolDeposit.d.ts +2 -6
  311. package/dist/widget/components/PoolDeposit.d.ts.map +1 -1
  312. package/dist/widget/components/PulsatingButton.d.ts +9 -0
  313. package/dist/widget/components/PulsatingButton.d.ts.map +1 -0
  314. package/dist/widget/components/Receipt.d.ts +1 -1
  315. package/dist/widget/components/Receipt.d.ts.map +1 -1
  316. package/dist/widget/components/RecipientSelectorButton.d.ts.map +1 -1
  317. package/dist/widget/components/Recipients.d.ts.map +1 -1
  318. package/dist/widget/components/Swap.d.ts +2 -6
  319. package/dist/widget/components/Swap.d.ts.map +1 -1
  320. package/dist/widget/components/TokenList.d.ts +1 -0
  321. package/dist/widget/components/TokenList.d.ts.map +1 -1
  322. package/dist/widget/components/TokenSelector.d.ts +2 -2
  323. package/dist/widget/components/TokenSelector.d.ts.map +1 -1
  324. package/dist/widget/components/TransactionDetails.d.ts +1 -0
  325. package/dist/widget/components/TransactionDetails.d.ts.map +1 -1
  326. package/dist/widget/components/TransactionHistoryItem.d.ts +1 -0
  327. package/dist/widget/components/TransactionHistoryItem.d.ts.map +1 -1
  328. package/dist/widget/components/TransferPendingVertical.d.ts +1 -1
  329. package/dist/widget/components/TransferPendingVertical.d.ts.map +1 -1
  330. package/dist/widget/components/WalletAccountHeader.d.ts +7 -0
  331. package/dist/widget/components/WalletAccountHeader.d.ts.map +1 -0
  332. package/dist/widget/components/WalletConfirmation.d.ts +2 -1
  333. package/dist/widget/components/WalletConfirmation.d.ts.map +1 -1
  334. package/dist/widget/components/WalletConnect.d.ts.map +1 -1
  335. package/dist/widget/components/WidgetProviders.d.ts.map +1 -1
  336. package/dist/widget/components/Withdraw.d.ts.map +1 -1
  337. package/dist/widget/components/earnMarketUtils.d.ts +11 -0
  338. package/dist/widget/components/earnMarketUtils.d.ts.map +1 -0
  339. package/dist/widget/components/earnNetworks.d.ts +6 -0
  340. package/dist/widget/components/earnNetworks.d.ts.map +1 -0
  341. package/dist/widget/index.d.ts +13 -0
  342. package/dist/widget/index.d.ts.map +1 -1
  343. package/dist/widget/index.js +17 -9
  344. package/dist/widget/modes/EarnWidget.d.ts +90 -0
  345. package/dist/widget/modes/EarnWidget.d.ts.map +1 -0
  346. package/dist/widget/modes/FundWidget.d.ts +97 -0
  347. package/dist/widget/modes/FundWidget.d.ts.map +1 -0
  348. package/dist/widget/modes/PayWidget.d.ts +80 -0
  349. package/dist/widget/modes/PayWidget.d.ts.map +1 -0
  350. package/dist/widget/modes/SwapWidget.d.ts +76 -0
  351. package/dist/widget/modes/SwapWidget.d.ts.map +1 -0
  352. package/dist/widget/modes/WithdrawWidget.d.ts +87 -0
  353. package/dist/widget/modes/WithdrawWidget.d.ts.map +1 -0
  354. package/dist/widget/providers/TrailsProvider.d.ts +3 -0
  355. package/dist/widget/providers/TrailsProvider.d.ts.map +1 -1
  356. package/dist/widget/providers/WidgetProviderTree.d.ts.map +1 -1
  357. package/dist/widget/shared/destinationDefaultToken.d.ts +15 -0
  358. package/dist/widget/shared/destinationDefaultToken.d.ts.map +1 -0
  359. package/dist/widget/shared/mapSharedProps.d.ts +9 -0
  360. package/dist/widget/shared/mapSharedProps.d.ts.map +1 -0
  361. package/dist/widget/shared/methodMap.d.ts +18 -0
  362. package/dist/widget/shared/methodMap.d.ts.map +1 -0
  363. package/dist/widget/shared/resolution.d.ts +23 -0
  364. package/dist/widget/shared/resolution.d.ts.map +1 -0
  365. package/dist/widget/shared/resolvePaymentSource.d.ts +36 -0
  366. package/dist/widget/shared/resolvePaymentSource.d.ts.map +1 -0
  367. package/dist/widget/shared/tokenAllowlist.d.ts +36 -0
  368. package/dist/widget/shared/tokenAllowlist.d.ts.map +1 -0
  369. package/dist/widget/shared/types.d.ts +150 -0
  370. package/dist/widget/shared/types.d.ts.map +1 -0
  371. package/dist/widget/styles.gen.d.ts +2 -0
  372. package/dist/widget/styles.gen.d.ts.map +1 -0
  373. package/dist/widget/types/commonProps.d.ts +3 -7
  374. package/dist/widget/types/commonProps.d.ts.map +1 -1
  375. package/dist/widget/utils/fundMethodSwitchState.d.ts +1 -0
  376. package/dist/widget/utils/fundMethodSwitchState.d.ts.map +1 -1
  377. package/dist/widget/utils/viewManagerGuards.d.ts +1 -1
  378. package/dist/widget/utils/viewManagerGuards.d.ts.map +1 -1
  379. package/dist/widget/widget.d.ts +23 -16
  380. package/dist/widget/widget.d.ts.map +1 -1
  381. package/package.json +22 -23
  382. package/dist/buffer.d.ts +0 -3
  383. package/dist/buffer.d.ts.map +0 -1
  384. package/dist/ccip-CT_An6eM.js +0 -230
  385. package/dist/index-RfqL5Foz.js +0 -114567
  386. package/dist/paymasterSend.d.ts +0 -90
  387. package/dist/paymasterSend.d.ts.map +0 -1
  388. package/dist/sendUserOp.d.ts +0 -122
  389. package/dist/sendUserOp.d.ts.map +0 -1
  390. package/dist/toSimpleSmartAccount.d.ts +0 -95
  391. package/dist/toSimpleSmartAccount.d.ts.map +0 -1
  392. package/dist/transactionIntent/utils/erc20Approval.d.ts +0 -34
  393. package/dist/transactionIntent/utils/erc20Approval.d.ts.map +0 -1
  394. package/dist/utils/allowance.d.ts +0 -19
  395. package/dist/utils/allowance.d.ts.map +0 -1
  396. package/dist/widget/analytics/useWidgetAnalytics.d.ts.map +0 -1
  397. package/dist/widget/components/FeeBreakdown.d.ts +0 -9
  398. package/dist/widget/components/FeeBreakdown.d.ts.map +0 -1
  399. package/dist/widget/components/HideBalances.d.ts +0 -4
  400. package/dist/widget/components/HideBalances.d.ts.map +0 -1
  401. package/dist/widget/components/MeshExchangeSelection.d.ts.map +0 -1
  402. package/dist/widget/components/OnrampDeposit.d.ts +0 -10
  403. package/dist/widget/components/OnrampDeposit.d.ts.map +0 -1
  404. package/dist/widget/components/SwapSettings.d.ts +0 -4
  405. package/dist/widget/components/SwapSettings.d.ts.map +0 -1
  406. package/dist/widget/components/TruncatedAddress.d.ts +0 -12
  407. package/dist/widget/components/TruncatedAddress.d.ts.map +0 -1
  408. package/dist/widget/components/WalletImage.d.ts +0 -8
  409. package/dist/widget/components/WalletImage.d.ts.map +0 -1
  410. package/dist/widget/css/compiled.css +0 -26
  411. package/dist/widget/css/index.css +0 -686
  412. package/dist/widget/hooks/useAddressWalletIcon.d.ts.map +0 -1
  413. package/dist/widget/hooks/useAmountUsd.d.ts.map +0 -1
  414. package/dist/widget/hooks/useBalanceVisible.d.ts.map +0 -1
  415. package/dist/widget/hooks/useChainFilter.d.ts.map +0 -1
  416. package/dist/widget/hooks/useCheckout.d.ts.map +0 -1
  417. package/dist/widget/hooks/useClickTracking.d.ts.map +0 -1
  418. package/dist/widget/hooks/useCombinedHistory.d.ts.map +0 -1
  419. package/dist/widget/hooks/useConnector.d.ts.map +0 -1
  420. package/dist/widget/hooks/useCustomTokenSearch.d.ts.map +0 -1
  421. package/dist/widget/hooks/useDebounce.d.ts.map +0 -1
  422. package/dist/widget/hooks/useDebugScreens.d.ts.map +0 -1
  423. package/dist/widget/hooks/useDefaultDestinationToken.d.ts.map +0 -1
  424. package/dist/widget/hooks/useDefaultOriginToken.d.ts.map +0 -1
  425. package/dist/widget/hooks/useDepositMonitor.d.ts.map +0 -1
  426. package/dist/widget/hooks/useDestinationSelectedToken.d.ts.map +0 -1
  427. package/dist/widget/hooks/useDisplayCurrencyPreference.d.ts.map +0 -1
  428. package/dist/widget/hooks/useEarnPool.d.ts.map +0 -1
  429. package/dist/widget/hooks/useExecutingIntentsCount.d.ts.map +0 -1
  430. package/dist/widget/hooks/useExternalFundingReceiptSync.d.ts.map +0 -1
  431. package/dist/widget/hooks/useFiatOnRampCurrencies.d.ts.map +0 -1
  432. package/dist/widget/hooks/useFiatSelectedCurrency.d.ts.map +0 -1
  433. package/dist/widget/hooks/useGetIntent.d.ts.map +0 -1
  434. package/dist/widget/hooks/useIntentReceiptBalances.d.ts.map +0 -1
  435. package/dist/widget/hooks/useIntentTransactionHistory.d.ts.map +0 -1
  436. package/dist/widget/hooks/useIsConnectedWalletSmartContract.d.ts +0 -7
  437. package/dist/widget/hooks/useIsConnectedWalletSmartContract.d.ts.map +0 -1
  438. package/dist/widget/hooks/useIsMobile.d.ts.map +0 -1
  439. package/dist/widget/hooks/useIsSequenceWallet.d.ts.map +0 -1
  440. package/dist/widget/hooks/useLocalePreference.d.ts.map +0 -1
  441. package/dist/widget/hooks/useMeldTransactionHistory.d.ts.map +0 -1
  442. package/dist/widget/hooks/useMeldTransactionStatus.d.ts.map +0 -1
  443. package/dist/widget/hooks/useOnRampCountryDefaults.d.ts.map +0 -1
  444. package/dist/widget/hooks/useOnRampPaymentMethods.d.ts.map +0 -1
  445. package/dist/widget/hooks/useOnRampProviderWidget.d.ts.map +0 -1
  446. package/dist/widget/hooks/useOnRampQuote.d.ts.map +0 -1
  447. package/dist/widget/hooks/useOnRampTransactionStatus.d.ts.map +0 -1
  448. package/dist/widget/hooks/useOriginSelectedToken.d.ts.map +0 -1
  449. package/dist/widget/hooks/usePayMessage.d.ts.map +0 -1
  450. package/dist/widget/hooks/usePriceImpactWarning.d.ts.map +0 -1
  451. package/dist/widget/hooks/useQuote.d.ts +0 -378
  452. package/dist/widget/hooks/useQuote.d.ts.map +0 -1
  453. package/dist/widget/hooks/useRecentTokens.d.ts.map +0 -1
  454. package/dist/widget/hooks/useRecipients.d.ts.map +0 -1
  455. package/dist/widget/hooks/useScreenTracking.d.ts +0 -2
  456. package/dist/widget/hooks/useScreenTracking.d.ts.map +0 -1
  457. package/dist/widget/hooks/useSelectedFeeOption.d.ts.map +0 -1
  458. package/dist/widget/hooks/useSelectedFundMethod.d.ts.map +0 -1
  459. package/dist/widget/hooks/useSelectedRecipient.d.ts.map +0 -1
  460. package/dist/widget/hooks/useSendForm.d.ts.map +0 -1
  461. package/dist/widget/hooks/useSwapAmount.d.ts.map +0 -1
  462. package/dist/widget/hooks/useSwapState.d.ts.map +0 -1
  463. package/dist/widget/hooks/useTargetAmount.d.ts.map +0 -1
  464. package/dist/widget/hooks/useTheme.d.ts.map +0 -1
  465. package/dist/widget/hooks/useTokenList.d.ts.map +0 -1
  466. package/dist/widget/hooks/useTrailsSendTransaction.d.ts +0 -83
  467. package/dist/widget/hooks/useTrailsSendTransaction.d.ts.map +0 -1
  468. package/dist/widget/hooks/useViewManager.d.ts.map +0 -1
  469. package/dist/widget/hooks/useWalletConnectUri.d.ts +0 -11
  470. package/dist/widget/hooks/useWalletConnectUri.d.ts.map +0 -1
  471. package/dist/widget/hooks/useWalletConnectionContext.d.ts.map +0 -1
  472. package/dist/widget/hooks/useWidgetProps.d.ts.map +0 -1
  473. package/dist/widget/styles.d.ts +0 -2
  474. package/dist/widget/styles.d.ts.map +0 -1
  475. package/dist/widget/types.d.ts +0 -44
  476. package/dist/widget/types.d.ts.map +0 -1
  477. package/dist/widget/utils/historyUtils.d.ts +0 -18
  478. package/dist/widget/utils/historyUtils.d.ts.map +0 -1
  479. package/src/abi.ts +0 -38
  480. package/src/abis/erc20.ts +0 -60
  481. package/src/abis/trailsHydrate.ts +0 -185
  482. package/src/abis/trailsRouter.ts +0 -121
  483. package/src/abis/trailsSweep.ts +0 -32
  484. package/src/abortController.ts +0 -35
  485. package/src/analytics.ts +0 -2029
  486. package/src/buffer.ts +0 -10
  487. package/src/chainSwitch.ts +0 -95
  488. package/src/chains.ts +0 -570
  489. package/src/config.ts +0 -118
  490. package/src/constants.ts +0 -239
  491. package/src/contractUtils.ts +0 -46
  492. package/src/cssUtils.ts +0 -5
  493. package/src/customChains.ts +0 -24
  494. package/src/customTokens.ts +0 -168
  495. package/src/decoders.ts +0 -365
  496. package/src/ens.ts +0 -74
  497. package/src/error.ts +0 -268
  498. package/src/estimate.ts +0 -480
  499. package/src/explorer.ts +0 -38
  500. package/src/fees.ts +0 -362
  501. package/src/gasless.ts +0 -638
  502. package/src/index.ts +0 -205
  503. package/src/indexerClient.ts +0 -118
  504. package/src/intentReceiptMonitor.ts +0 -99
  505. package/src/intentReceiptPoller.ts +0 -327
  506. package/src/intents.ts +0 -1133
  507. package/src/keyMachineClient.ts +0 -29
  508. package/src/keymachine/index.ts +0 -175
  509. package/src/keymachine/key-machine.gen.ts +0 -993
  510. package/src/localeUtils.ts +0 -244
  511. package/src/logger/index.ts +0 -95
  512. package/src/logger/useSyncLoggerDebug.ts +0 -11
  513. package/src/logger.ts +0 -1
  514. package/src/meld/components/MeldCountriesList.tsx +0 -237
  515. package/src/meld/components/MeldFundMethods.tsx +0 -265
  516. package/src/meld/components/MeldProvidersList.tsx +0 -187
  517. package/src/meld/components/MeldTokensList.tsx +0 -321
  518. package/src/meld/components/SimpleHeader.tsx +0 -35
  519. package/src/meld/utils/meld.ts +0 -77
  520. package/src/mutations.ts +0 -166
  521. package/src/onramp/MeshConnectFlow.tsx +0 -86
  522. package/src/onramp/MeshConnectIframe.tsx +0 -661
  523. package/src/onramp/SendFromExchangeButton.tsx +0 -81
  524. package/src/onramp/TrailsOnRampProvider.tsx +0 -59
  525. package/src/onramp/index.ts +0 -31
  526. package/src/onramp/meshconnect.ts +0 -277
  527. package/src/onramp/trailsOnramp.tsx +0 -130
  528. package/src/onramp-client/index.ts +0 -52
  529. package/src/onrampClient.ts +0 -46
  530. package/src/paymasterSend.ts +0 -521
  531. package/src/placeholder.ts +0 -92
  532. package/src/poolUtils.ts +0 -222
  533. package/src/pools.ts +0 -120
  534. package/src/prepareSend.ts +0 -553
  535. package/src/query/balance.fetchers.ts +0 -753
  536. package/src/query/balance.hooks.ts +0 -357
  537. package/src/query/balance.queries.ts +0 -307
  538. package/src/query/chains.hooks.ts +0 -45
  539. package/src/query/chains.queries.ts +0 -17
  540. package/src/query/client.ts +0 -20
  541. package/src/query/fiat.fetchers.ts +0 -33
  542. package/src/query/fiat.hooks.ts +0 -71
  543. package/src/query/fiat.queries.ts +0 -67
  544. package/src/query/geo.fetchers.ts +0 -100
  545. package/src/query/geo.hooks.ts +0 -16
  546. package/src/query/geo.queries.ts +0 -36
  547. package/src/query/helpers.ts +0 -81
  548. package/src/query/meld.fetchers.ts +0 -97
  549. package/src/query/meld.hooks.ts +0 -18
  550. package/src/query/meld.queries.ts +0 -184
  551. package/src/query/persister.ts +0 -11
  552. package/src/query/price.fetchers.ts +0 -53
  553. package/src/query/price.hooks.ts +0 -46
  554. package/src/query/price.queries.ts +0 -364
  555. package/src/query/tokenList.queries.ts +0 -118
  556. package/src/queryParams.ts +0 -100
  557. package/src/recover.ts +0 -1728
  558. package/src/sendUserOp.ts +0 -512
  559. package/src/theme.ts +0 -2
  560. package/src/toSimpleSmartAccount.ts +0 -567
  561. package/src/toast.ts +0 -110
  562. package/src/tokens.ts +0 -1862
  563. package/src/trailsClient.ts +0 -40
  564. package/src/transactionIntent/constants.ts +0 -15
  565. package/src/transactionIntent/deposits/depositOrchestrator.ts +0 -243
  566. package/src/transactionIntent/deposits/gaslessDeposit.ts +0 -705
  567. package/src/transactionIntent/deposits/index.ts +0 -3
  568. package/src/transactionIntent/deposits/standardDeposit.ts +0 -590
  569. package/src/transactionIntent/execution/index.ts +0 -1
  570. package/src/transactionIntent/execution/transactionState.ts +0 -38
  571. package/src/transactionIntent/handlers/index.ts +0 -1
  572. package/src/transactionIntent/handlers/intentHandler.ts +0 -1613
  573. package/src/transactionIntent/helpers/index.ts +0 -1
  574. package/src/transactionIntent/helpers/transactionStateHelpers.ts +0 -440
  575. package/src/transactionIntent/index.ts +0 -10
  576. package/src/transactionIntent/quote/feeExtractors.ts +0 -61
  577. package/src/transactionIntent/quote/index.ts +0 -3
  578. package/src/transactionIntent/quote/normalizeQuote.ts +0 -559
  579. package/src/transactionIntent/quote/quoteHelpers.ts +0 -117
  580. package/src/transactionIntent/types.ts +0 -241
  581. package/src/transactionIntent/utils/balanceChecker.ts +0 -103
  582. package/src/transactionIntent/utils/erc20Approval.ts +0 -171
  583. package/src/transactionIntent/utils/index.ts +0 -2
  584. package/src/transactionIntent/utils/resilientDepositTracker.ts +0 -171
  585. package/src/transactionIntent/utils/testnetHelpers.ts +0 -5
  586. package/src/transactionIntent/validators.ts +0 -27
  587. package/src/transactions.ts +0 -429
  588. package/src/types.d.ts +0 -16
  589. package/src/umd.tsx +0 -33
  590. package/src/utils/address.ts +0 -78
  591. package/src/utils/allowance.ts +0 -47
  592. package/src/utils/fiat.ts +0 -32
  593. package/src/utils/format.ts +0 -625
  594. package/src/utils/passthrough.ts +0 -93
  595. package/src/utils/time.ts +0 -118
  596. package/src/utils/validation.ts +0 -104
  597. package/src/utils.ts +0 -112
  598. package/src/version.ts +0 -8
  599. package/src/vite-env.d.ts +0 -4
  600. package/src/walletUtils.ts +0 -293
  601. package/src/wallets.ts +0 -544
  602. package/src/widget/analytics/useWidgetAnalytics.ts +0 -56
  603. package/src/widget/assets/Exchange-icon-black.svg +0 -5
  604. package/src/widget/assets/MetaMask-icon-fox-with-margins.svg +0 -31
  605. package/src/widget/assets/MetaMask-icon-fox.svg +0 -26
  606. package/src/widget/assets/MetaMask-logo-black.svg +0 -3
  607. package/src/widget/assets/MetaMask-logo-white.svg +0 -16
  608. package/src/widget/assets/Trails-logo-black.svg +0 -13
  609. package/src/widget/assets/Trails-logo-white.svg +0 -13
  610. package/src/widget/assets/WalletChange-black.svg +0 -5
  611. package/src/widget/assets/WalletConnect-logo-black.svg +0 -14
  612. package/src/widget/assets/WalletConnect-logo-blue.svg +0 -14
  613. package/src/widget/assets/WalletConnect-logo-white.svg +0 -14
  614. package/src/widget/assets/WalletConnect-logo.svg +0 -40
  615. package/src/widget/assets/aave.svg +0 -14
  616. package/src/widget/assets/morpho.svg +0 -14
  617. package/src/widget/compiled.css +0 -26
  618. package/src/widget/components/AccountActionsDropdown.tsx +0 -31
  619. package/src/widget/components/AccountIntentTransactionHistory.tsx +0 -756
  620. package/src/widget/components/AccountIntentTransactionHistoryButton.tsx +0 -34
  621. package/src/widget/components/AccountSettings.tsx +0 -168
  622. package/src/widget/components/AddressOrEnsName.tsx +0 -24
  623. package/src/widget/components/AddressWalletIcon.tsx +0 -49
  624. package/src/widget/components/AllChainsIcon.tsx +0 -54
  625. package/src/widget/components/ChainFilterDropdown.tsx +0 -220
  626. package/src/widget/components/ChainImage.tsx +0 -40
  627. package/src/widget/components/ChainList.tsx +0 -158
  628. package/src/widget/components/ClassicSwap.tsx +0 -1761
  629. package/src/widget/components/ConfigDisplay.tsx +0 -158
  630. package/src/widget/components/ConnectWallet.tsx +0 -566
  631. package/src/widget/components/ConnectedWallets.tsx +0 -414
  632. package/src/widget/components/CopyButton.tsx +0 -108
  633. package/src/widget/components/CountryFilterDropdown.tsx +0 -179
  634. package/src/widget/components/DebugMenu.tsx +0 -50
  635. package/src/widget/components/DebugScreensList.tsx +0 -70
  636. package/src/widget/components/DebugToast.tsx +0 -63
  637. package/src/widget/components/DepositTracker.tsx +0 -326
  638. package/src/widget/components/DirectTransfer.tsx +0 -305
  639. package/src/widget/components/Disconnect.tsx +0 -68
  640. package/src/widget/components/DynamicInputStyles.tsx +0 -121
  641. package/src/widget/components/DynamicSizeInputField.tsx +0 -245
  642. package/src/widget/components/ENSAvatar.tsx +0 -33
  643. package/src/widget/components/Earn.tsx +0 -160
  644. package/src/widget/components/EarnPools.tsx +0 -417
  645. package/src/widget/components/EarnPoolsFilters.tsx +0 -165
  646. package/src/widget/components/ErrorAnimationIcon.tsx +0 -130
  647. package/src/widget/components/ErrorDisplay.tsx +0 -152
  648. package/src/widget/components/ExecutingIntentsBadge.tsx +0 -24
  649. package/src/widget/components/ExecutionStatusBadge.tsx +0 -53
  650. package/src/widget/components/FeeBreakdown.tsx +0 -155
  651. package/src/widget/components/FeeOption.tsx +0 -170
  652. package/src/widget/components/FeeOptions.tsx +0 -247
  653. package/src/widget/components/FiatSelector.tsx +0 -308
  654. package/src/widget/components/FiatSelectorButton.tsx +0 -68
  655. package/src/widget/components/Footer.tsx +0 -67
  656. package/src/widget/components/Fund.tsx +0 -2463
  657. package/src/widget/components/FundMethods.tsx +0 -423
  658. package/src/widget/components/FundWalletSelection.tsx +0 -60
  659. package/src/widget/components/FundingMethodSelectorButton.tsx +0 -106
  660. package/src/widget/components/GreenCheckAnimation.tsx +0 -119
  661. package/src/widget/components/HideBalances.tsx +0 -24
  662. package/src/widget/components/HighPriceImpactBlock.tsx +0 -44
  663. package/src/widget/components/HookModalContent.tsx +0 -377
  664. package/src/widget/components/Identicon.tsx +0 -228
  665. package/src/widget/components/LoadingSpinner.tsx +0 -9
  666. package/src/widget/components/MeldForm.tsx +0 -780
  667. package/src/widget/components/MeldHistory.tsx +0 -433
  668. package/src/widget/components/MeldStepsFlow.tsx +0 -1651
  669. package/src/widget/components/MeldTransactionStatus.tsx +0 -255
  670. package/src/widget/components/MeshExchangeSelection.tsx +0 -218
  671. package/src/widget/components/Modal.tsx +0 -86
  672. package/src/widget/components/OFTProgressBar.tsx +0 -89
  673. package/src/widget/components/OnRampProviderSelector.tsx +0 -263
  674. package/src/widget/components/OnrampDeposit.tsx +0 -122
  675. package/src/widget/components/OnrampErrorScreen.tsx +0 -163
  676. package/src/widget/components/OnrampHistoryRow.tsx +0 -321
  677. package/src/widget/components/OnrampPaymentMethods.tsx +0 -81
  678. package/src/widget/components/OnrampProviderConfirmation.tsx +0 -1060
  679. package/src/widget/components/OriginSelectionAmount.tsx +0 -144
  680. package/src/widget/components/OriginTransferInformation.tsx +0 -59
  681. package/src/widget/components/Pay.tsx +0 -1165
  682. package/src/widget/components/PaymentMethods.tsx +0 -198
  683. package/src/widget/components/PercentageMaxButtons.tsx +0 -112
  684. package/src/widget/components/PoolDeposit.tsx +0 -642
  685. package/src/widget/components/PoolWithdraw.tsx +0 -761
  686. package/src/widget/components/PriceImpactWarning.tsx +0 -87
  687. package/src/widget/components/QRCodeOptions.tsx +0 -65
  688. package/src/widget/components/QRCodeWalletSelect.tsx +0 -80
  689. package/src/widget/components/QrCode.tsx +0 -216
  690. package/src/widget/components/QuoteDetails.tsx +0 -1275
  691. package/src/widget/components/Receipt.tsx +0 -673
  692. package/src/widget/components/ReceiptRecoverableFunds.tsx +0 -135
  693. package/src/widget/components/RecentTokens.tsx +0 -66
  694. package/src/widget/components/RecipientSelectorButton.tsx +0 -50
  695. package/src/widget/components/Recipients.tsx +0 -413
  696. package/src/widget/components/RefundWarning.tsx +0 -61
  697. package/src/widget/components/RequiredPropsError.tsx +0 -33
  698. package/src/widget/components/ScreenHeader.tsx +0 -123
  699. package/src/widget/components/SearchInputField.tsx +0 -99
  700. package/src/widget/components/SessionTimeoutScreen.tsx +0 -103
  701. package/src/widget/components/ShadowPortal.tsx +0 -99
  702. package/src/widget/components/ShadowRootContext.tsx +0 -17
  703. package/src/widget/components/SimpleRecipientInputScreen.tsx +0 -91
  704. package/src/widget/components/SlippageToleranceSettings.tsx +0 -279
  705. package/src/widget/components/Swap.tsx +0 -50
  706. package/src/widget/components/SwapDisplay.tsx +0 -68
  707. package/src/widget/components/SwapSettings.tsx +0 -52
  708. package/src/widget/components/ThemeProvider.tsx +0 -115
  709. package/src/widget/components/ThemeSyncer.tsx +0 -47
  710. package/src/widget/components/Toast.tsx +0 -336
  711. package/src/widget/components/TokenDisplayNonSelectable.tsx +0 -40
  712. package/src/widget/components/TokenImage.tsx +0 -156
  713. package/src/widget/components/TokenList.tsx +0 -107
  714. package/src/widget/components/TokenSelector.tsx +0 -807
  715. package/src/widget/components/TokenSelectorButton.tsx +0 -123
  716. package/src/widget/components/TokenSkeleton.tsx +0 -53
  717. package/src/widget/components/Tooltip.tsx +0 -64
  718. package/src/widget/components/TrailsHookModal.tsx +0 -107
  719. package/src/widget/components/TransactionDetails.tsx +0 -534
  720. package/src/widget/components/TransactionHistoryItem.tsx +0 -767
  721. package/src/widget/components/TransferPendingVertical.tsx +0 -591
  722. package/src/widget/components/TruncatedAddress.tsx +0 -68
  723. package/src/widget/components/TruncatedTransactionHash.tsx +0 -74
  724. package/src/widget/components/UserPreferences.tsx +0 -570
  725. package/src/widget/components/WaasFeeOptions.tsx +0 -588
  726. package/src/widget/components/WalletConfirmation.tsx +0 -220
  727. package/src/widget/components/WalletConnect.tsx +0 -348
  728. package/src/widget/components/WalletConnectionPending.tsx +0 -178
  729. package/src/widget/components/WalletImage.tsx +0 -52
  730. package/src/widget/components/WalletList.tsx +0 -125
  731. package/src/widget/components/WidgetProviders.tsx +0 -82
  732. package/src/widget/components/Withdraw.tsx +0 -1106
  733. package/src/widget/components/YellowWarningAnimation.tsx +0 -146
  734. package/src/widget/hooks/useAddressWalletIcon.ts +0 -55
  735. package/src/widget/hooks/useAmountUsd.ts +0 -44
  736. package/src/widget/hooks/useBalanceVisible.tsx +0 -95
  737. package/src/widget/hooks/useChainFilter.tsx +0 -56
  738. package/src/widget/hooks/useCheckout.ts +0 -361
  739. package/src/widget/hooks/useClickTracking.ts +0 -74
  740. package/src/widget/hooks/useCombinedHistory.ts +0 -420
  741. package/src/widget/hooks/useConnector.tsx +0 -24
  742. package/src/widget/hooks/useCustomTokenSearch.tsx +0 -369
  743. package/src/widget/hooks/useDebounce.ts +0 -25
  744. package/src/widget/hooks/useDebugScreens.ts +0 -600
  745. package/src/widget/hooks/useDefaultDestinationToken.tsx +0 -179
  746. package/src/widget/hooks/useDefaultOriginToken.tsx +0 -407
  747. package/src/widget/hooks/useDepositMonitor.ts +0 -118
  748. package/src/widget/hooks/useDestinationSelectedToken.tsx +0 -310
  749. package/src/widget/hooks/useDisplayCurrencyPreference.tsx +0 -145
  750. package/src/widget/hooks/useEarnPool.tsx +0 -36
  751. package/src/widget/hooks/useExecutingIntentsCount.ts +0 -78
  752. package/src/widget/hooks/useExternalFundingReceiptSync.ts +0 -79
  753. package/src/widget/hooks/useFiatOnRampCurrencies.ts +0 -46
  754. package/src/widget/hooks/useFiatSelectedCurrency.tsx +0 -123
  755. package/src/widget/hooks/useGetIntent.ts +0 -54
  756. package/src/widget/hooks/useIntentReceiptBalances.ts +0 -141
  757. package/src/widget/hooks/useIntentTransactionHistory.ts +0 -790
  758. package/src/widget/hooks/useIsConnectedWalletSmartContract.ts +0 -43
  759. package/src/widget/hooks/useIsMobile.tsx +0 -50
  760. package/src/widget/hooks/useIsSequenceWallet.ts +0 -17
  761. package/src/widget/hooks/useLocalePreference.tsx +0 -187
  762. package/src/widget/hooks/useMeldTransactionHistory.ts +0 -184
  763. package/src/widget/hooks/useMeldTransactionStatus.ts +0 -707
  764. package/src/widget/hooks/useOnRampCountryDefaults.ts +0 -57
  765. package/src/widget/hooks/useOnRampPaymentMethods.ts +0 -72
  766. package/src/widget/hooks/useOnRampProviderWidget.ts +0 -184
  767. package/src/widget/hooks/useOnRampQuote.ts +0 -340
  768. package/src/widget/hooks/useOnRampTransactionStatus.ts +0 -196
  769. package/src/widget/hooks/useOriginSelectedToken.tsx +0 -253
  770. package/src/widget/hooks/usePayMessage.tsx +0 -496
  771. package/src/widget/hooks/usePriceImpactWarning.ts +0 -17
  772. package/src/widget/hooks/useQuote.ts +0 -1239
  773. package/src/widget/hooks/useRecentTokens.ts +0 -159
  774. package/src/widget/hooks/useRecipients.ts +0 -167
  775. package/src/widget/hooks/useScreenTracking.ts +0 -14
  776. package/src/widget/hooks/useSelectedFeeOption.tsx +0 -323
  777. package/src/widget/hooks/useSelectedFundMethod.tsx +0 -93
  778. package/src/widget/hooks/useSelectedRecipient.tsx +0 -75
  779. package/src/widget/hooks/useSendForm.ts +0 -1389
  780. package/src/widget/hooks/useSwapAmount.tsx +0 -50
  781. package/src/widget/hooks/useSwapState.tsx +0 -121
  782. package/src/widget/hooks/useTargetAmount.ts +0 -26
  783. package/src/widget/hooks/useTheme.tsx +0 -80
  784. package/src/widget/hooks/useTokenList.ts +0 -1168
  785. package/src/widget/hooks/useTrailsSendTransaction.ts +0 -987
  786. package/src/widget/hooks/useViewManager.tsx +0 -506
  787. package/src/widget/hooks/useWalletConnectUri.tsx +0 -307
  788. package/src/widget/hooks/useWalletConnectionContext.tsx +0 -128
  789. package/src/widget/hooks/useWidgetProps.tsx +0 -33
  790. package/src/widget/index.css +0 -686
  791. package/src/widget/index.tsx +0 -28
  792. package/src/widget/providers/TrailsModalProvider.tsx +0 -238
  793. package/src/widget/providers/TrailsProvider.tsx +0 -155
  794. package/src/widget/providers/UserActivityProvider.tsx +0 -78
  795. package/src/widget/providers/WidgetProviderTree.tsx +0 -90
  796. package/src/widget/styles.ts +0 -26
  797. package/src/widget/types/analytics.ts +0 -22
  798. package/src/widget/types/commonProps.ts +0 -56
  799. package/src/widget/types/svg.d.ts +0 -8
  800. package/src/widget/types.ts +0 -51
  801. package/src/widget/utils/countryUtils.ts +0 -89
  802. package/src/widget/utils/createWagmiConfig.ts +0 -43
  803. package/src/widget/utils/forexRateStore.ts +0 -120
  804. package/src/widget/utils/fundMethodSwitchState.ts +0 -27
  805. package/src/widget/utils/historyFilters.ts +0 -157
  806. package/src/widget/utils/historyUtils.ts +0 -101
  807. package/src/widget/utils/localeStore.ts +0 -68
  808. package/src/widget/utils/meldProviderUtils.ts +0 -26
  809. package/src/widget/utils/meshSupportedTokens.ts +0 -28
  810. package/src/widget/utils/onrampConfig.ts +0 -15
  811. package/src/widget/utils/statusLabel.ts +0 -3
  812. package/src/widget/utils/tokens.ts +0 -138
  813. package/src/widget/utils/trailsOnrampConfig.ts +0 -39
  814. package/src/widget/utils/transactionFailure.ts +0 -52
  815. package/src/widget/utils/viewManagerGuards.ts +0 -49
  816. package/src/widget/utils/windowUtils.ts +0 -138
  817. package/src/widget/widget.tsx +0 -3400
  818. /package/dist/{widget/hooks → hooks}/useAddressWalletIcon.d.ts +0 -0
  819. /package/dist/{widget/hooks → hooks}/useAmountUsd.d.ts +0 -0
  820. /package/dist/{widget/hooks → hooks}/useBalanceVisible.d.ts +0 -0
  821. /package/dist/{widget/hooks → hooks}/useChainFilter.d.ts +0 -0
  822. /package/dist/{widget/hooks → hooks}/useClickTracking.d.ts +0 -0
  823. /package/dist/{widget/hooks → hooks}/useConnector.d.ts +0 -0
  824. /package/dist/{widget/hooks → hooks}/useDebounce.d.ts +0 -0
  825. /package/dist/{widget/hooks → hooks}/useDepositMonitor.d.ts +0 -0
  826. /package/dist/{widget/hooks → hooks}/useDisplayCurrencyPreference.d.ts +0 -0
  827. /package/dist/{widget/hooks → hooks}/useExecutingIntentsCount.d.ts +0 -0
  828. /package/dist/{widget/hooks → hooks}/useFiatSelectedCurrency.d.ts +0 -0
  829. /package/dist/{widget/hooks → hooks}/useGetIntent.d.ts +0 -0
  830. /package/dist/{widget/hooks → hooks}/useIsMobile.d.ts +0 -0
  831. /package/dist/{widget/hooks → hooks}/useIsSequenceWallet.d.ts +0 -0
  832. /package/dist/{widget/hooks → hooks}/useLocalePreference.d.ts +0 -0
  833. /package/dist/{widget/hooks → hooks}/useMeldTransactionHistory.d.ts +0 -0
  834. /package/dist/{widget/hooks → hooks}/useMeldTransactionStatus.d.ts +0 -0
  835. /package/dist/{widget/hooks → hooks}/useOnRampCountryDefaults.d.ts +0 -0
  836. /package/dist/{widget/hooks → hooks}/usePayMessage.d.ts +0 -0
  837. /package/dist/{widget/hooks → hooks}/usePriceImpactWarning.d.ts +0 -0
  838. /package/dist/{widget/hooks → hooks}/useRecipients.d.ts +0 -0
  839. /package/dist/{widget/hooks → hooks}/useSelectedFeeOption.d.ts +0 -0
  840. /package/dist/{widget/hooks → hooks}/useSelectedRecipient.d.ts +0 -0
  841. /package/dist/{widget/hooks → hooks}/useSwapAmount.d.ts +0 -0
  842. /package/dist/{widget/hooks → hooks}/useTargetAmount.d.ts +0 -0
  843. /package/dist/{widget/hooks → hooks}/useTheme.d.ts +0 -0
  844. /package/dist/{widget/hooks → hooks}/useWalletConnectionContext.d.ts +0 -0
@@ -1,987 +0,0 @@
1
- import { useMutation, useQueryClient } from "@tanstack/react-query"
2
- import { useCallback, useRef } from "react"
3
- import { useWalletClient, useAccount, useChainId } from "wagmi"
4
- import { logger } from "../../logger.js"
5
- import { getFullErrorMessage, getIsUserRejectionError } from "../../error.js"
6
- import type { UseQuoteProps, SwapReturn } from "./useQuote.js"
7
- import { prepareSend, TradeType } from "../../prepareSend.js"
8
- import { useTrailsClient } from "../../trailsClient.js"
9
- import { useTrails } from "../../widget/providers/TrailsProvider.js"
10
- import {
11
- useTrailsModal,
12
- type HostTransactionDetails,
13
- type HostTransactionResultLinks,
14
- type HostTransactionStatus,
15
- } from "../../widget/providers/TrailsModalProvider.js"
16
- import { useIndexerGatewayClient } from "../../indexerClient.js"
17
- import { balanceQueries } from "../../query/balance.queries.js"
18
- import { checkSufficientToken } from "../../query/balance.fetchers.js"
19
- import { useSupportedTokens } from "../../tokens.js"
20
- import { getChainInfo } from "../../chains.js"
21
- import { getTokenPrice } from "../../query/price.queries.js"
22
- import { findSupportedToken } from "../utils/tokens.js"
23
- import { zeroAddress, erc20Abi, type Address, type Hex } from "viem"
24
- import { useCommitIntent, useExecuteIntent } from "../../mutations.js"
25
- import { getExplorerUrl } from "../../explorer.js"
26
- import type { TransactionState } from "../../transactions.js"
27
- import { addressEqual } from "../../utils/address.js"
28
-
29
- export type TrailsSendTransactionVariables = {
30
- to?: Address
31
- value?: bigint // Native token amount for ORIGIN (wagmi-compatible, sends ETH/native token)
32
- data?: Hex
33
- // Destination token requirements (e.g., AAVE deposit needs USDC on Base)
34
- // Note: Destination can be ERC20 token, so value is NOT needed for destination
35
- tokenAddress?: Address // Destination token address (ERC20 token required at destination)
36
- tokenAmount?: string // Destination token amount (in token units, e.g., 3000000 for 3 USDC)
37
- // Origin token parameters (if not provided, modal will open for selection)
38
- // Use value for native token origin, OR fromTokenAddress/fromChainId/fromAmount for ERC20 origin
39
- fromTokenAddress?: Address // Origin token address (ERC20 token to send from)
40
- fromChainId?: number // Origin chain ID (required if fromTokenAddress is provided)
41
- fromAmount?: string // Origin token amount (required if fromTokenAddress is provided)
42
- }
43
-
44
- export type UseTrailsSendTransactionParameters = Omit<
45
- UseQuoteProps,
46
- | "fromTokenAddress"
47
- | "fromChainId"
48
- | "toTokenAddress"
49
- | "toChainId"
50
- | "swapAmount"
51
- | "toRecipient"
52
- | "toCalldata"
53
- | "tradeType"
54
- | "selectedFeeOption"
55
- > & {
56
- /**
57
- * Callback fired when the mutation is successful
58
- */
59
- onSuccess?: (
60
- data: SwapReturn,
61
- variables: TrailsSendTransactionVariables,
62
- ) => void
63
- /**
64
- * Callback fired when the mutation encounters an error
65
- */
66
- onError?: (error: Error, variables: TrailsSendTransactionVariables) => void
67
- /**
68
- * Callback fired when the mutation is either successfully fetched or encounters an error
69
- */
70
- onSettled?: (
71
- data: SwapReturn | undefined,
72
- error: Error | null,
73
- variables: TrailsSendTransactionVariables,
74
- ) => void
75
- /**
76
- * Custom text for the receipt action button (default: "Transact Again")
77
- */
78
- receiptActionButtonText?: string
79
- /**
80
- * Custom callback when receipt action button is clicked
81
- */
82
- onReceiptAction?: () => void
83
- }
84
-
85
- export type UseTrailsSendTransactionReturnType = {
86
- sendTransaction: (
87
- variables: TrailsSendTransactionVariables,
88
- callbacks?: {
89
- onSuccess?: (data: SwapReturn) => void
90
- onError?: (error: Error) => void
91
- onSettled?: (data: SwapReturn | undefined, error: Error | null) => void
92
- },
93
- ) => void
94
- sendTransactionAsync: (
95
- variables: TrailsSendTransactionVariables,
96
- callbacks?: {
97
- onSuccess?: (data: SwapReturn) => void
98
- onError?: (error: Error) => void
99
- onSettled?: (data: SwapReturn | undefined, error: Error | null) => void
100
- },
101
- ) => Promise<SwapReturn>
102
- retry: () => void
103
- data: SwapReturn | undefined
104
- error: Error | null
105
- isPending: boolean
106
- isSuccess: boolean
107
- isError: boolean
108
- isIdle: boolean
109
- status: "idle" | "pending" | "error" | "success"
110
- reset: () => void
111
- variables: TrailsSendTransactionVariables | undefined
112
- }
113
-
114
- /**
115
- * Hook for creating, signing, and sending transactions to networks using Trails SDK.
116
- * Provides a one-line replacement for wagmi's `useSendTransaction`.
117
- *
118
- * @example
119
- * ```ts
120
- * // Simple usage - one line replacement (wagmi-compatible API)
121
- * const { sendTransaction } = useTrailsSendTransaction()
122
- *
123
- * // Send native token (same as wagmi)
124
- * sendTransaction({
125
- * to: '0xd2135CfB216b74109775236E36d4b433F1DF507B',
126
- * value: parseEther('0.01'),
127
- * })
128
- *
129
- * // Deposit 3 USDC to AAVE pool (Trails-specific)
130
- * // Modal will open for user to select origin token/chain/amount
131
- * sendTransaction({
132
- * to: '0xaavePoolAddress',
133
- * tokenAddress: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913', // USDC on Base
134
- * tokenAmount: '3000000', // 3 USDC (6 decimals)
135
- * data: '0x...', // AAVE deposit calldata
136
- * })
137
- * ```
138
- */
139
- export function useTrailsSendTransaction(
140
- params?: UseTrailsSendTransactionParameters,
141
- ): UseTrailsSendTransactionReturnType {
142
- const { data: walletClient } = useWalletClient()
143
- const { chainId: connectedChainId } = useAccount()
144
- const chainId = useChainId()
145
- const trailsClient = useTrailsClient()
146
- const { trailsApiKey, sequenceIndexerUrl, sequenceMetadataUrl } = useTrails()
147
- const queryClient = useQueryClient()
148
- const {
149
- openModal,
150
- setPendingSelection,
151
- setHostTransactionState,
152
- setHostTransactionQuote,
153
- setHostTransactionStates,
154
- setHostTransactionTimestamp,
155
- hostTransactionState,
156
- setReceiptActionButtonText,
157
- setOnReceiptAction,
158
- retryTransactionRef,
159
- repeatTransactionRef,
160
- setLastOriginSelection,
161
- } = useTrailsModal()
162
- const indexerGatewayClient = useIndexerGatewayClient()
163
- const { supportedTokens } = useSupportedTokens()
164
- const commitIntentMutation = useCommitIntent()
165
- const executeIntentMutation = useExecuteIntent()
166
-
167
- // Store last transaction variables for retry
168
- const lastTransactionVariablesRef =
169
- useRef<TrailsSendTransactionVariables | null>(null)
170
-
171
- const mergeHostTransactionState = useCallback(
172
- (update: {
173
- status?: HostTransactionStatus
174
- details?: HostTransactionDetails | null
175
- error?: string | null
176
- result?: HostTransactionResultLinks | null
177
- retryEnabled?: boolean
178
- }) => {
179
- setHostTransactionState((prev) => ({
180
- status: update.status ?? prev.status,
181
- details:
182
- update.details === null
183
- ? undefined
184
- : update.details
185
- ? { ...prev.details, ...update.details }
186
- : prev.details,
187
- error:
188
- update.error === null
189
- ? undefined
190
- : update.error !== undefined
191
- ? update.error
192
- : prev.error,
193
- result:
194
- update.result === null
195
- ? undefined
196
- : update.result
197
- ? { ...prev.result, ...update.result }
198
- : prev.result,
199
- retryEnabled:
200
- update.retryEnabled !== undefined
201
- ? update.retryEnabled
202
- : prev.retryEnabled,
203
- }))
204
- },
205
- [setHostTransactionState],
206
- )
207
-
208
- // Extract transaction execution logic into a reusable function
209
- const executeTransaction = async (
210
- variables: TrailsSendTransactionVariables,
211
- originSelection?: {
212
- fromTokenAddress: string
213
- fromChainId: number
214
- fromAmount?: string
215
- },
216
- options?: { trackInWidget?: boolean },
217
- ): Promise<SwapReturn> => {
218
- logger.console.log(
219
- "[trails-sdk] [useTrailsSendTransaction] Executing transaction",
220
- { variables, originSelection },
221
- )
222
-
223
- // Validate required parameters
224
- if (!walletClient || !walletClient.account) {
225
- throw new Error(
226
- "Wallet client not available. Please connect your wallet.",
227
- )
228
- }
229
-
230
- if (!variables.to) {
231
- throw new Error("Transaction 'to' address is required.")
232
- }
233
-
234
- // Determine origin parameters
235
- let fromTokenAddress: string
236
- let fromChainId: number
237
- let fromAmount: string | undefined
238
-
239
- if (originSelection) {
240
- // Use user-selected origin parameters (from modal)
241
- fromTokenAddress = originSelection.fromTokenAddress
242
- fromChainId = originSelection.fromChainId
243
- fromAmount = originSelection.fromAmount
244
- } else if (
245
- variables.fromTokenAddress &&
246
- variables.fromChainId &&
247
- variables.fromAmount
248
- ) {
249
- // Use explicitly provided ERC20 token origin parameters
250
- fromTokenAddress = variables.fromTokenAddress
251
- fromChainId = variables.fromChainId
252
- fromAmount = variables.fromAmount
253
- } else if (variables.to && variables.value !== undefined) {
254
- // Simple native token send - use current chain
255
- const currentChainId = connectedChainId || chainId
256
- if (!currentChainId) {
257
- throw new Error("Chain ID not available. Please connect your wallet.")
258
- }
259
- fromChainId = currentChainId
260
- fromTokenAddress = zeroAddress
261
- fromAmount = variables.value.toString()
262
- } else {
263
- throw new Error(
264
- "Origin token parameters are required. Please provide 'value' (native token), or 'fromTokenAddress'/'fromChainId'/'fromAmount' (ERC20 token), or select via modal.",
265
- )
266
- }
267
-
268
- // Determine destination parameters
269
- const currentChainId = connectedChainId || chainId
270
- if (!currentChainId) {
271
- throw new Error("Chain ID not available. Please connect your wallet.")
272
- }
273
-
274
- // Use tokenAddress and tokenAmount if provided, otherwise infer from to/value
275
- let toTokenAddress: string
276
- let toChainId: number
277
- let toAmount: string
278
- let recipient: string
279
-
280
- if (variables.tokenAddress && variables.tokenAmount) {
281
- // Destination token requirements specified (e.g., AAVE deposit)
282
- toTokenAddress = variables.tokenAddress
283
- // Try to find the token's chainId from supportedTokens, fallback to current chain
284
- const destToken = findSupportedToken(
285
- supportedTokens,
286
- variables.tokenAddress,
287
- )
288
- toChainId = destToken?.chainId ?? currentChainId
289
- toAmount = variables.tokenAmount
290
- recipient = variables.to
291
- } else if (variables.to && variables.value !== undefined) {
292
- // Simple native token send
293
- toTokenAddress = zeroAddress
294
- toChainId = currentChainId
295
- toAmount = variables.value.toString()
296
- recipient = variables.to
297
- } else {
298
- throw new Error(
299
- "Either 'value' or 'tokenAddress'/'tokenAmount' must be provided.",
300
- )
301
- }
302
-
303
- // Determine swap amount based on trade type
304
- // If tokenAmount is provided, use EXACT_OUTPUT (we need exact amount of destination token)
305
- // Otherwise, use EXACT_INPUT (we're sending exact amount from origin)
306
- const tradeType =
307
- variables.tokenAddress && variables.tokenAmount
308
- ? TradeType.EXACT_OUTPUT
309
- : TradeType.EXACT_INPUT
310
- if (tradeType === TradeType.EXACT_INPUT && !fromAmount) {
311
- throw new Error(
312
- "Origin amount is required for this transaction. Please provide 'value' or 'fromAmount'.",
313
- )
314
- }
315
-
316
- const swapAmount =
317
- tradeType === TradeType.EXACT_OUTPUT ? toAmount : fromAmount!
318
-
319
- // Get token balances
320
- let balances: any[] = []
321
- try {
322
- const result = await queryClient.ensureQueryData(
323
- balanceQueries.withPrices(
324
- walletClient.account.address,
325
- indexerGatewayClient,
326
- trailsClient,
327
- ),
328
- )
329
- balances = result.balances
330
- } catch (balanceError) {
331
- logger.console.warn(
332
- "[trails-sdk] [useTrailsSendTransaction] Error fetching balances, proceeding with zero balance",
333
- balanceError,
334
- )
335
- balances = []
336
- }
337
-
338
- const originTokenBalance = balances.find(
339
- (b) =>
340
- b.chainId === fromChainId &&
341
- (addressEqual(b.contractAddress, fromTokenAddress) ||
342
- (!b.contractAddress && fromTokenAddress === zeroAddress)),
343
- )
344
-
345
- const originTokenBalanceAmount = originTokenBalance?.balance ?? "0"
346
-
347
- // Get native token price for origin chain
348
- let originNativeTokenPriceUsd = 0
349
- try {
350
- const originChain = getChainInfo(fromChainId)
351
- const nativeTokenSymbol = originChain?.nativeCurrency?.symbol ?? ""
352
- if (nativeTokenSymbol) {
353
- const nativePrice = await getTokenPrice(trailsClient, {
354
- tokenSymbol: nativeTokenSymbol,
355
- tokenAddress: zeroAddress,
356
- chainId: fromChainId,
357
- })
358
- originNativeTokenPriceUsd = nativePrice?.priceUsd ?? 0
359
- }
360
- } catch (error) {
361
- logger.console.warn(
362
- "[trails-sdk] [useTrailsSendTransaction] Error getting native token price",
363
- error,
364
- )
365
- }
366
-
367
- // Get token info and decimals
368
- const originToken = findSupportedToken(
369
- supportedTokens,
370
- fromTokenAddress,
371
- fromChainId,
372
- )
373
- const destinationToken = findSupportedToken(
374
- supportedTokens,
375
- toTokenAddress,
376
- toChainId,
377
- )
378
-
379
- // Get RPC clients - we need to get them dynamically since we don't know chainIds until mutation
380
- const { getChainRpcClient } = await import("../../chains.js")
381
- const originPublicClient = getChainRpcClient(fromChainId)
382
- const destinationPublicClient = getChainRpcClient(toChainId)
383
-
384
- // Fetch decimals on-chain if not found
385
- const fetchDecimalsOnChain = async (
386
- tokenAddress: string,
387
- chainId: number,
388
- ): Promise<number | null> => {
389
- try {
390
- const publicClient =
391
- chainId === fromChainId
392
- ? originPublicClient
393
- : chainId === toChainId
394
- ? destinationPublicClient
395
- : getChainRpcClient(chainId)
396
-
397
- if (!publicClient) {
398
- return null
399
- }
400
-
401
- if (addressEqual(tokenAddress, zeroAddress)) {
402
- const chainInfo = getChainInfo(chainId)
403
- return chainInfo?.nativeCurrency.decimals ?? 18
404
- }
405
-
406
- const decimals = await publicClient.readContract({
407
- address: tokenAddress as `0x${string}`,
408
- abi: erc20Abi,
409
- functionName: "decimals",
410
- })
411
-
412
- return decimals
413
- } catch (error) {
414
- logger.console.error(
415
- `[trails-sdk] Error fetching decimals on-chain for token ${tokenAddress} on chain ${chainId}:`,
416
- error,
417
- )
418
- return null
419
- }
420
- }
421
-
422
- let sourceTokenDecimals = originToken?.decimals
423
- if (!sourceTokenDecimals && fromTokenAddress) {
424
- const onChainDecimals = await fetchDecimalsOnChain(
425
- fromTokenAddress,
426
- fromChainId,
427
- )
428
- if (onChainDecimals !== null) {
429
- sourceTokenDecimals = onChainDecimals
430
- }
431
- }
432
- if (!sourceTokenDecimals) {
433
- // Default to 18 for native/unknown
434
- sourceTokenDecimals = 18
435
- }
436
-
437
- let destinationTokenDecimals = destinationToken?.decimals
438
- if (!destinationTokenDecimals && toTokenAddress) {
439
- const onChainDecimals = await fetchDecimalsOnChain(
440
- toTokenAddress,
441
- toChainId,
442
- )
443
- if (onChainDecimals !== null) {
444
- destinationTokenDecimals = onChainDecimals
445
- }
446
- }
447
- if (!destinationTokenDecimals) {
448
- // Default to 18 for native/unknown
449
- destinationTokenDecimals = 18
450
- }
451
-
452
- const destinationTokenSymbol = destinationToken?.symbol ?? ""
453
- const originTokenSymbol = originToken?.symbol ?? ""
454
-
455
- const handleTransactionStateChange = (states: TransactionState[]) => {
456
- if (options?.trackInWidget) {
457
- setHostTransactionStates(states)
458
- }
459
- params?.onStatusUpdate?.(states)
460
- }
461
-
462
- // Call prepareSend
463
- const { send, quote } = await prepareSend({
464
- queryClient,
465
- account: walletClient.account,
466
- originTokenAddress: fromTokenAddress,
467
- originChainId: fromChainId,
468
- originTokenBalance: originTokenBalanceAmount,
469
- destinationChainId: toChainId,
470
- recipient: recipient,
471
- destinationTokenAddress: toTokenAddress,
472
- swapAmount: swapAmount,
473
- tradeType: tradeType,
474
- originTokenSymbol: originTokenSymbol,
475
- destinationTokenSymbol: destinationTokenSymbol,
476
- client: walletClient,
477
- trailsClient,
478
- destinationCalldata: variables.data
479
- ? variables.data.toString()
480
- : undefined,
481
- onTransactionStateChange: handleTransactionStateChange,
482
- sourceTokenDecimals,
483
- destinationTokenDecimals,
484
- paymasterUrl: params?.paymasterUrl,
485
- slippageTolerance: params?.slippageTolerance?.toString(),
486
- originNativeTokenPriceUsd,
487
- swapProvider: params?.swapProvider,
488
- bridgeProvider: params?.bridgeProvider,
489
- commitIntentFn: (intent) => commitIntentMutation.mutateAsync(intent),
490
- executeIntentFn: executeIntentMutation.mutateAsync,
491
- checkoutOnHandlers: params?.checkoutOnHandlers,
492
- sequenceIndexerUrl,
493
- sequenceMetadataUrl,
494
- sequenceProjectAccessKey: trailsApiKey,
495
- originPublicClient: originPublicClient ?? undefined,
496
- destinationPublicClient: destinationPublicClient ?? undefined,
497
- isSmartWallet: params?.isSmartWallet ?? undefined,
498
- mode: params?.mode ?? undefined,
499
- })
500
-
501
- if (options?.trackInWidget) {
502
- setHostTransactionQuote(quote ?? null)
503
- if (!hostTransactionState.details) {
504
- mergeHostTransactionState({
505
- details: {
506
- to: recipient,
507
- tokenAddress: toTokenAddress,
508
- tokenAmount:
509
- tradeType === TradeType.EXACT_OUTPUT ? toAmount : undefined,
510
- toChainId,
511
- data: variables.data,
512
- },
513
- })
514
- }
515
- if (
516
- !hostTransactionState.status ||
517
- hostTransactionState.status === "idle"
518
- ) {
519
- setHostTransactionTimestamp(Date.now())
520
- }
521
- }
522
-
523
- // Execute the swap
524
- try {
525
- // Reset retry flag when starting a new attempt
526
- if (options?.trackInWidget) {
527
- mergeHostTransactionState({ retryEnabled: false })
528
- }
529
- const {
530
- depositUserTxnReceipt,
531
- destinationIntentTransaction,
532
- totalCompletionSeconds,
533
- } = await send({
534
- selectedFeeOption: null,
535
- // Transition to "pending" when wallet signature is complete
536
- onOriginSend: () => {
537
- if (options?.trackInWidget) {
538
- mergeHostTransactionState({ status: "pending", error: null })
539
- }
540
- },
541
- })
542
-
543
- if (options?.trackInWidget) {
544
- mergeHostTransactionState({
545
- status: "success",
546
- result: {
547
- originTxHash: depositUserTxnReceipt?.transactionHash,
548
- originExplorerUrl: depositUserTxnReceipt?.transactionHash
549
- ? getExplorerUrl({
550
- txHash: depositUserTxnReceipt.transactionHash,
551
- chainId: fromChainId,
552
- })
553
- : undefined,
554
- destinationTxHash: destinationIntentTransaction?.txnHash,
555
- destinationExplorerUrl: destinationIntentTransaction?.txnHash
556
- ? getExplorerUrl({
557
- txHash: destinationIntentTransaction.txnHash,
558
- chainId: toChainId,
559
- })
560
- : undefined,
561
- },
562
- })
563
- }
564
-
565
- return {
566
- originTransaction: {
567
- transactionHash: depositUserTxnReceipt?.transactionHash,
568
- explorerUrl: getExplorerUrl({
569
- txHash: depositUserTxnReceipt?.transactionHash as string,
570
- chainId: fromChainId,
571
- }),
572
- receipt: depositUserTxnReceipt,
573
- },
574
- destinationTransaction: {
575
- transactionHash: destinationIntentTransaction?.txnHash,
576
- explorerUrl: getExplorerUrl({
577
- txHash: destinationIntentTransaction?.txnHash as string,
578
- chainId: toChainId,
579
- }),
580
- receipt: destinationIntentTransaction,
581
- },
582
- totalCompletionSeconds,
583
- }
584
- } catch (error) {
585
- if (options?.trackInWidget) {
586
- // For user rejection errors, stay on confirmation screen with retry enabled
587
- const isUserRejection = getIsUserRejectionError(error)
588
- if (isUserRejection) {
589
- mergeHostTransactionState({
590
- status: "confirmation",
591
- error: null,
592
- retryEnabled: true,
593
- })
594
- } else {
595
- mergeHostTransactionState({
596
- status: "error",
597
- error: getFullErrorMessage(error as Error),
598
- retryEnabled: false,
599
- })
600
- }
601
- }
602
- throw error
603
- }
604
- }
605
-
606
- const mutation = useMutation({
607
- mutationFn: async (
608
- variables: TrailsSendTransactionVariables,
609
- ): Promise<SwapReturn> => {
610
- logger.console.log(
611
- "[trails-sdk] [useTrailsSendTransaction] Starting transaction",
612
- variables,
613
- )
614
-
615
- // Store variables for retry/repeat functionality
616
- lastTransactionVariablesRef.current = variables
617
-
618
- // Set receipt customization from params
619
- setReceiptActionButtonText(
620
- params?.receiptActionButtonText ?? "Transact Again",
621
- )
622
- setOnReceiptAction(params?.onReceiptAction ?? null)
623
-
624
- // Check if we have origin parameters specified
625
- const hasNativeTokenOrigin = variables.value !== undefined
626
- const hasERC20TokenOrigin =
627
- variables.fromTokenAddress !== undefined &&
628
- variables.fromChainId !== undefined
629
- const hasOriginParams = hasNativeTokenOrigin || hasERC20TokenOrigin
630
-
631
- // Determine destination chain ID
632
- // Priority: token's chainId (from supportedTokens) > current chain
633
- let destinationChainId: number | undefined
634
- if (variables.tokenAddress && supportedTokens) {
635
- // Find the token's chainId from supportedTokens
636
- const destToken = findSupportedToken(
637
- supportedTokens,
638
- variables.tokenAddress,
639
- )
640
- if (destToken) {
641
- destinationChainId = destToken.chainId
642
- }
643
- }
644
- if (!destinationChainId) {
645
- destinationChainId = connectedChainId || chainId
646
- }
647
-
648
- // Check balances for origin and destination
649
- let hasSufficientOriginBalance = true
650
- let hasSufficientDestinationTokenBalance = true
651
-
652
- if (walletClient?.account) {
653
- try {
654
- // Step 1: Check origin balance FIRST
655
- // If origin is insufficient, user will need to select a different token via modal
656
- if (hasOriginParams) {
657
- let originTokenAddress: string | undefined
658
- let originChainId: number | undefined
659
- let originAmount: string | undefined
660
-
661
- if (variables.value !== undefined) {
662
- // Native token origin
663
- originTokenAddress = zeroAddress
664
- originChainId = connectedChainId || chainId || 1
665
- originAmount = variables.value.toString()
666
- } else if (variables.fromTokenAddress && variables.fromChainId) {
667
- // ERC20 token origin (amount optional for EXACT_OUTPUT)
668
- originTokenAddress = variables.fromTokenAddress
669
- originChainId = variables.fromChainId
670
- originAmount = variables.fromAmount
671
- }
672
-
673
- if (
674
- originTokenAddress &&
675
- originChainId &&
676
- originAmount &&
677
- originAmount !== "0"
678
- ) {
679
- const { balances: originBalances } =
680
- await queryClient.ensureQueryData(
681
- balanceQueries.withPrices(
682
- walletClient.account.address,
683
- indexerGatewayClient,
684
- trailsClient,
685
- ),
686
- )
687
- hasSufficientOriginBalance = checkSufficientToken(
688
- originBalances,
689
- originTokenAddress,
690
- originAmount,
691
- originChainId,
692
- )
693
- logger.console.log(
694
- "[trails-sdk] [useTrailsSendTransaction] Origin token balance check:",
695
- {
696
- tokenAddress: originTokenAddress,
697
- amount: originAmount,
698
- chainId: originChainId,
699
- hasSufficientBalance: hasSufficientOriginBalance,
700
- },
701
- )
702
- }
703
- }
704
-
705
- // Step 2: Only check destination token balance if origin is sufficient
706
- // (otherwise user will open modal to select a different origin token)
707
- if (
708
- hasSufficientOriginBalance &&
709
- variables.tokenAddress &&
710
- variables.tokenAmount
711
- ) {
712
- const destResult = await queryClient.ensureQueryData(
713
- balanceQueries.withPrices(
714
- walletClient.account.address,
715
- indexerGatewayClient,
716
- trailsClient,
717
- ),
718
- )
719
- hasSufficientDestinationTokenBalance = checkSufficientToken(
720
- destResult.balances,
721
- variables.tokenAddress,
722
- variables.tokenAmount,
723
- destinationChainId,
724
- )
725
- logger.console.log(
726
- "[trails-sdk] [useTrailsSendTransaction] Destination token balance check:",
727
- {
728
- tokenAddress: variables.tokenAddress,
729
- tokenAmount: variables.tokenAmount,
730
- chainId: destinationChainId,
731
- hasSufficientBalance: hasSufficientDestinationTokenBalance,
732
- },
733
- )
734
-
735
- // Step 3: Gas balance check will be done via QuoteIntent API in prepareSend
736
- // The API provides comprehensive gas fee information including:
737
- // - originGas: origin chain gas cost
738
- // - destinationGas: destination chain gas cost (if applicable)
739
- // - gasFeeOptions: fee options in different tokens
740
- // If gas is insufficient, the system will fallback to gasless (handled in prepareSend)
741
- }
742
- } catch (balanceError) {
743
- logger.console.warn(
744
- "[trails-sdk] [useTrailsSendTransaction] Error checking balances, defaulting to origin selection:",
745
- balanceError,
746
- )
747
- // If balance checks fail, default to opening modal (safe fallback)
748
- hasSufficientOriginBalance = false
749
- hasSufficientDestinationTokenBalance = false
750
- }
751
- }
752
-
753
- // Determine if origin selection is needed
754
- // Origin selection is needed when:
755
- // 1. Origin parameters are not provided, OR
756
- // 2. Origin balance is insufficient (user selected origin but doesn't have enough), OR
757
- // 3. Destination token balance is insufficient (even if gas balance is sufficient)
758
- // Note: Gas balance checks are done via QuoteIntent API after origin/destination are confirmed
759
- const needsOriginSelection =
760
- !hasOriginParams ||
761
- !hasSufficientOriginBalance ||
762
- !hasSufficientDestinationTokenBalance
763
-
764
- logger.console.log(
765
- "[trails-sdk] [useTrailsSendTransaction] Origin selection decision:",
766
- {
767
- hasOriginParams,
768
- hasSufficientOriginBalance,
769
- hasSufficientDestinationTokenBalance,
770
- needsOriginSelection,
771
- },
772
- )
773
-
774
- if (needsOriginSelection) {
775
- const requireAmountInput = !(
776
- variables.tokenAddress && variables.tokenAmount
777
- )
778
- const baseDetails: HostTransactionDetails = {
779
- to: variables.to,
780
- tokenAddress: variables.tokenAddress,
781
- tokenAmount: variables.tokenAmount,
782
- toChainId: destinationChainId,
783
- data: variables.data,
784
- }
785
- mergeHostTransactionState({
786
- status: "awaiting-origin",
787
- details: baseDetails,
788
- error: null,
789
- result: null,
790
- })
791
- setHostTransactionQuote(null)
792
- setHostTransactionStates([])
793
- setHostTransactionTimestamp(Date.now())
794
- // Open modal and wait for user selection
795
- return new Promise<SwapReturn>((resolve, reject) => {
796
- setPendingSelection({
797
- resolve: async (selection) => {
798
- try {
799
- // Update stored variables with the origin selection for "Swap Again" functionality
800
- lastTransactionVariablesRef.current = {
801
- ...variables,
802
- fromTokenAddress: selection.fromTokenAddress as Address,
803
- fromChainId: selection.fromChainId,
804
- fromAmount: selection.fromAmount,
805
- }
806
-
807
- // Store last origin selection for UI pre-population on "Swap Again"
808
- setLastOriginSelection({
809
- tokenAddress: selection.fromTokenAddress,
810
- chainId: selection.fromChainId,
811
- amount: selection.fromAmount,
812
- })
813
-
814
- mergeHostTransactionState({ status: "confirmation" })
815
- const result = await executeTransaction(variables, selection, {
816
- trackInWidget: true,
817
- })
818
- resolve(result)
819
- } catch (error) {
820
- // Don't override state for user rejections - they're handled in executeTransaction
821
- // and stay on confirmation screen with retry enabled
822
- const isUserRejection = getIsUserRejectionError(error)
823
- if (!isUserRejection) {
824
- mergeHostTransactionState({
825
- status: "error",
826
- error: getFullErrorMessage(error as Error),
827
- })
828
- }
829
- reject(error as Error)
830
- }
831
- },
832
- reject: (error) => {
833
- const rejection =
834
- error instanceof Error ? error : new Error(String(error))
835
- mergeHostTransactionState({
836
- status: "error",
837
- error: getFullErrorMessage(rejection),
838
- })
839
- reject(rejection)
840
- },
841
- requireAmountInput,
842
- })
843
-
844
- // Open the modal after setting pending selection
845
- // Use setTimeout to ensure state updates are processed
846
- setTimeout(() => {
847
- logger.console.log(
848
- "[trails-sdk] [useTrailsSendTransaction] Calling openModal()",
849
- )
850
- openModal()
851
- }, 0)
852
- })
853
- }
854
-
855
- // Set up modal for wallet-confirmation, pending, and receipt screens
856
- const baseDetails: HostTransactionDetails = {
857
- to: variables.to,
858
- tokenAddress: variables.tokenAddress,
859
- tokenAmount: variables.tokenAmount,
860
- toChainId: destinationChainId,
861
- data: variables.data,
862
- }
863
- mergeHostTransactionState({
864
- status: "confirmation",
865
- details: baseDetails,
866
- error: null,
867
- result: null,
868
- })
869
- setHostTransactionQuote(null)
870
- setHostTransactionStates([])
871
- setHostTransactionTimestamp(Date.now())
872
- openModal()
873
-
874
- // Execute transaction directly with modal tracking
875
- return executeTransaction(variables, undefined, { trackInWidget: true })
876
- },
877
- onSuccess: (data, variables) => {
878
- logger.console.log(
879
- "[trails-sdk] [useTrailsSendTransaction] Transaction successful",
880
- { data, variables },
881
- )
882
- // Invalidate quote cache to ensure fresh quotes on next transaction
883
- queryClient.invalidateQueries({ queryKey: ["prepareSend"] })
884
- params?.onSuccess?.(data, variables)
885
- },
886
- onError: (error, variables) => {
887
- logger.console.error(
888
- "[trails-sdk] [useTrailsSendTransaction] Transaction error",
889
- { error, variables },
890
- )
891
- const errorMessage = getFullErrorMessage(error)
892
- // Don't override state for user rejections - they're handled in executeTransaction
893
- // and stay on confirmation screen with retry enabled
894
- const isUserRejection = getIsUserRejectionError(error)
895
- if (hostTransactionState.status !== "idle" && !isUserRejection) {
896
- mergeHostTransactionState({
897
- status: "error",
898
- error: errorMessage,
899
- })
900
- }
901
- params?.onError?.(new Error(errorMessage), variables)
902
- },
903
- onSettled: (data, error, variables) => {
904
- logger.console.log(
905
- "[trails-sdk] [useTrailsSendTransaction] Transaction settled",
906
- { data, error, variables },
907
- )
908
- params?.onSettled?.(data, error as Error | null, variables)
909
- },
910
- })
911
-
912
- const sendTransaction = useCallback(
913
- (
914
- variables: TrailsSendTransactionVariables,
915
- callbacks?: {
916
- onSuccess?: (data: SwapReturn) => void
917
- onError?: (error: Error) => void
918
- onSettled?: (data: SwapReturn | undefined, error: Error | null) => void
919
- },
920
- ) => {
921
- mutation.mutate(variables, {
922
- onSuccess: (data) => {
923
- callbacks?.onSuccess?.(data)
924
- },
925
- onError: (error) => {
926
- callbacks?.onError?.(error as Error)
927
- },
928
- onSettled: (data, error) => {
929
- callbacks?.onSettled?.(data, error as Error | null)
930
- },
931
- })
932
- },
933
- [mutation],
934
- )
935
-
936
- const sendTransactionAsync = useCallback(
937
- async (
938
- variables: TrailsSendTransactionVariables,
939
- callbacks?: {
940
- onSuccess?: (data: SwapReturn) => void
941
- onError?: (error: Error) => void
942
- onSettled?: (data: SwapReturn | undefined, error: Error | null) => void
943
- },
944
- ): Promise<SwapReturn> => {
945
- return mutation.mutateAsync(variables, {
946
- onSuccess: (data) => {
947
- callbacks?.onSuccess?.(data)
948
- },
949
- onError: (error) => {
950
- callbacks?.onError?.(error as Error)
951
- },
952
- onSettled: (data, error) => {
953
- callbacks?.onSettled?.(data, error as Error | null)
954
- },
955
- })
956
- },
957
- [mutation],
958
- )
959
-
960
- // Retry function that re-executes with last variables
961
- const retry = useCallback(() => {
962
- if (lastTransactionVariablesRef.current) {
963
- sendTransaction(lastTransactionVariablesRef.current)
964
- }
965
- }, [sendTransaction])
966
-
967
- // Store retry function in ref so widget can call it (using ref to avoid re-renders)
968
- retryTransactionRef.current = retry
969
-
970
- // Store repeat transaction function for "Swap Again" functionality
971
- repeatTransactionRef.current = retry
972
-
973
- return {
974
- sendTransaction,
975
- sendTransactionAsync,
976
- retry,
977
- data: mutation.data,
978
- error: mutation.error as Error | null,
979
- isPending: mutation.isPending,
980
- isSuccess: mutation.isSuccess,
981
- isError: mutation.isError,
982
- isIdle: mutation.isIdle,
983
- status: mutation.status,
984
- reset: mutation.reset,
985
- variables: mutation.variables,
986
- }
987
- }