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
package/src/intents.ts DELETED
@@ -1,1133 +0,0 @@
1
- import type {
2
- AbortIntentRequest,
3
- AbortIntentResponse,
4
- CommitIntentResponse,
5
- DepositSignature,
6
- ExecuteIntentRequest,
7
- ExecuteIntentResponse,
8
- GasFeeOptions,
9
- GetIntentRequest,
10
- GetIntentResponse,
11
- Intent,
12
- IntentStatus,
13
- IntentCalls,
14
- PassthroughInfo,
15
- QuoteIntentRequest,
16
- TrailsApi,
17
- TrailsContracts,
18
- TransactionStateInfo,
19
- } from "@0xtrails/api"
20
- import { logger } from "./logger.js"
21
- import { IntentProtocolVersion, JsonEncode } from "@0xtrails/api"
22
- import type { TrailsClient } from "./trailsClient.js"
23
- import type { KeyMachineClient } from "./keyMachineClient.js"
24
- import { getIntentStatusFromError } from "./error.js"
25
-
26
- import { Config, type Context, Payload } from "@0xsequence/wallet-primitives"
27
- import { Address, Bytes, ContractAddress, Hash, Hex } from "ox"
28
- import {
29
- type Account,
30
- type Chain,
31
- encodeFunctionData,
32
- erc20Abi,
33
- type WalletClient,
34
- } from "viem"
35
- import {
36
- trackIntentCommitCompleted,
37
- trackIntentCommitError,
38
- trackIntentCommitStarted,
39
- trackIntentQuoteError,
40
- trackIntentQuoteReceived,
41
- trackIntentQuoteRequested,
42
- trackTransactionError,
43
- trackTransactionStarted,
44
- trackTransactionSubmitted,
45
- } from "./analytics.js"
46
- import { getChainInfo, getChainRpcClient } from "./chains.js"
47
- import { attemptSwitchChain } from "./chainSwitch.js"
48
- import { SEQUENCE_V3_CONTRACT_ADDRESSES } from "./constants.js"
49
- import { getFullErrorMessage } from "./error.js"
50
- import { getFeeData } from "./estimate.js"
51
- import { zeroAddress } from "viem"
52
- import { addressEqual, isNativeToken } from "./utils/address.js"
53
- import { sendWalletTransaction } from "./walletUtils.js"
54
-
55
- export type IntentRequestParams = {
56
- userAddress: string
57
- originChainId: number
58
- originTokenAddress: string
59
- originTokenAmount: string
60
- destinationChainId: number
61
- destinationToAddress: string
62
- destinationTokenAddress: string
63
- destinationTokenAmount: string
64
- destinationCallData: string
65
- destinationCallValue: string
66
- }
67
-
68
- export interface MetaTxnFeeDetail {
69
- metaTxnID: string
70
- estimatedGasLimit: string
71
- feeNative: string
72
- }
73
-
74
- export interface ChainExecuteQuote {
75
- chainId: string
76
- totalGasLimit: string
77
- gasPrice: string
78
- totalFeeAmount: string
79
- nativeTokenSymbol: string
80
- nativeTokenPrice?: string
81
- metaTxnFeeDetails: Array<MetaTxnFeeDetail>
82
- totalFeeUSD?: string
83
- }
84
-
85
- export interface ExecuteQuote {
86
- chainQuotes: Array<ChainExecuteQuote>
87
- }
88
-
89
- export interface CrossChainFee {
90
- providerFee: string
91
- trailsSwapFee: string
92
- providerFeeUSD: number
93
- trailsSwapFeeUSD: number
94
- totalFeeAmount: string
95
- totalFeeUSD: number
96
- }
97
-
98
- export interface TrailsFee {
99
- executeQuote: ExecuteQuote
100
- crossChainFee?: CrossChainFee
101
- trailsFixedFeeUSD?: number
102
- feeToken?: string
103
- originTokenTotalAmount?: string
104
- totalFeeAmount?: string
105
- totalFeeUSD?: string
106
- }
107
-
108
- export type { Intent }
109
-
110
- export type OriginCallParams = {
111
- to: `0x${string}` | null
112
- data: Hex.Hex | null
113
- value: bigint | null
114
- chainId: number | null
115
- error?: string
116
- }
117
-
118
- export type SendOriginCallTxArgs = {
119
- to: string
120
- data: Hex.Hex
121
- value: bigint
122
- chain: Chain
123
- gasLimit?: bigint // Optional: if provided, skip gas estimation
124
- maxFeePerGas?: bigint // Optional: EIP-1559 max fee per gas
125
- maxPriorityFeePerGas?: bigint // Optional: EIP-1559 max priority fee per gas
126
- }
127
-
128
- export async function quoteIntent(
129
- trailsClient: TrailsApi,
130
- args: QuoteIntentRequest,
131
- additionalTrackingProps: Record<string, string> = {},
132
- abortSignal?: AbortSignal,
133
- ): Promise<{
134
- intent: Intent
135
- gasFeeOptions?: GasFeeOptions
136
- trailsContracts: TrailsContracts
137
- passthrough?: PassthroughInfo
138
- transactionStates?: TransactionStateInfo[]
139
- }> {
140
- // Track intent quote request
141
- trackIntentQuoteRequested({
142
- originChainId: args.originChainId || 0,
143
- destinationChainId: args.destinationChainId || 0,
144
- originTokenAddress: args.originTokenAddress,
145
- destinationTokenAddress: args.destinationTokenAddress,
146
- userAddress: args.ownerAddress,
147
- ...additionalTrackingProps,
148
- })
149
-
150
- try {
151
- logger.console.log("[trails-sdk] quote intent args:", args)
152
-
153
- type QuoteIntentResponse = Awaited<ReturnType<TrailsApi["quoteIntent"]>>
154
-
155
- // Create a promise that rejects when the abort signal fires
156
- let response: QuoteIntentResponse
157
- if (abortSignal) {
158
- const abortPromise = new Promise((_, reject) => {
159
- if (abortSignal.aborted) {
160
- reject(new Error("Request aborted"))
161
- }
162
- abortSignal.addEventListener("abort", () => {
163
- reject(new Error("Request aborted"))
164
- })
165
- })
166
-
167
- // Race between the API call and the abort signal
168
- response = (await Promise.race([
169
- trailsClient.quoteIntent(args, {}, abortSignal),
170
- abortPromise,
171
- ])) as QuoteIntentResponse
172
- } else {
173
- response = await trailsClient.quoteIntent(args)
174
- }
175
-
176
- if (!response || !(response as QuoteIntentResponse).intent) {
177
- logger.console.error("[trails-sdk] No result from quoteIntent")
178
- throw new Error("No result from quoteIntent")
179
- }
180
-
181
- const result = (response as QuoteIntentResponse).intent
182
-
183
- // Extract precondition amounts from origin and destination preconditions
184
- const originPrecondition = result.originPrecondition
185
- const destinationPrecondition = result.destinationPrecondition
186
-
187
- // Track successful intent quote received
188
- const providerFeeUSD =
189
- result.quote?.routeProvidersFeeUsd &&
190
- Array.isArray(result.quote.routeProvidersFeeUsd) &&
191
- result.quote.routeProvidersFeeUsd.length > 0
192
- ? result.quote.routeProvidersFeeUsd.reduce(
193
- (sum: number, fee: number) => sum + fee,
194
- 0,
195
- )
196
- : 0
197
-
198
- trackIntentQuoteReceived({
199
- quoteId: result.originIntentAddress || "unknown",
200
- totalFeeUSD: result.fees?.totalFeeUsd?.toString(),
201
- crossChainFeeTotalUSD: result.fees?.provider?.totalFeeUsd,
202
- providerFeeUSD,
203
- trailsSwapFeeUSD: result.fees?.provider?.trailsFeeUsd,
204
- gasFeesPerChainUSD: [
205
- typeof result.fees?.originGas?.totalFeeUsd === "string"
206
- ? parseFloat(result.fees.originGas.totalFeeUsd)
207
- : result.fees?.originGas?.totalFeeUsd || 0,
208
- typeof result.fees?.destinationGas?.totalFeeUsd === "string"
209
- ? parseFloat(result.fees.destinationGas.totalFeeUsd)
210
- : result.fees?.destinationGas?.totalFeeUsd || 0,
211
- ],
212
- originTokenTotalAmount: undefined, // This field no longer exists in IntentFees
213
- totalFeeAmount: result.fees?.totalFeeAmount?.toString(),
214
- provider: result.quote?.routeProviders
215
- ? result.quote.routeProviders.join(",")
216
- : undefined,
217
- swapProvider: result.quote?.routeProviders?.[0] || undefined,
218
- bridgeProvider: result.quote?.routeProviders?.[1] || undefined,
219
- feeToken: result.fees?.feeTokenAddress,
220
- userAddress: args.ownerAddress,
221
- intentAddress: result.originIntentAddress,
222
- originPreconditionAmount: originPrecondition?.minAmount?.toString(),
223
- destinationPreconditionAmount:
224
- destinationPrecondition?.minAmount?.toString(),
225
- fromAmount: result.quote?.fromAmount?.toString(),
226
- fromAmountMin: result.quote?.fromAmountMin?.toString(),
227
- toAmount: result.quote?.toAmount?.toString(),
228
- toAmountMin: result.quote?.toAmountMin?.toString(),
229
- ...additionalTrackingProps,
230
- })
231
-
232
- return {
233
- intent: result,
234
- gasFeeOptions: response.gasFeeOptions,
235
- trailsContracts: result.trailsContracts,
236
- passthrough: response.passthrough,
237
- transactionStates: response.transactionStates,
238
- }
239
- } catch (error) {
240
- logger.console.error("[trails-sdk] Error in getIntent", error)
241
- // Track intent quote error
242
- trackIntentQuoteError({
243
- error: getFullErrorMessage(error),
244
- userAddress: args.ownerAddress,
245
- originChainId: args.originChainId || 0,
246
- destinationChainId: args.destinationChainId || 0,
247
- originTokenAddress: args.originTokenAddress,
248
- destinationTokenAddress: args.destinationTokenAddress,
249
- ...additionalTrackingProps,
250
- })
251
- throw error
252
- }
253
- }
254
-
255
- export async function getIntentConfigurationFromAddress(
256
- keyMachineClient: KeyMachineClient,
257
- intentAddress: Address.Address,
258
- ): Promise<{
259
- address: Address.Address
260
- imageHash: Hex.Hex
261
- config: Config.Config
262
- }> {
263
- const deployConfig = await keyMachineClient.getDeploy(intentAddress)
264
- if (!deployConfig) {
265
- throw new Error("Deploy config not found")
266
- }
267
- const { imageHash, context } = deployConfig
268
- const config = await keyMachineClient.getConfiguration(imageHash)
269
- if (!config) {
270
- throw new Error("Configuration not found")
271
- }
272
- // Construct the address from the configuration as a double check
273
- const derivedImageHash = Config.hashConfiguration(config)
274
- const derivedAddress = calculateIntentAddressFromImageHash(
275
- context,
276
- derivedImageHash,
277
- )
278
- if (!Address.isEqual(derivedAddress, intentAddress)) {
279
- throw new Error("Derived address does not match intent address")
280
- }
281
- return {
282
- address: derivedAddress,
283
- imageHash: Bytes.toHex(derivedImageHash),
284
- config,
285
- }
286
- }
287
-
288
- export async function getIntentConfigurationFromCalls(
289
- _trailsClient: TrailsClient,
290
- _intentId: string,
291
- intentProtocol: IntentProtocolVersion,
292
- mainSigner: string,
293
- checkpoint: number,
294
- calls: IntentCalls,
295
- isOrigin: boolean,
296
- context?: Context.Context,
297
- ): Promise<{
298
- address: `0x${string}`
299
- imageHash: `0x${string}`
300
- config: Config.Config
301
- }> {
302
- logger.console.log(
303
- "[trails-sdk] [intent-protocol] === Intent Configuration Calculation ===",
304
- {
305
- intentProtocol,
306
- mainSigner,
307
- checkpoint,
308
- callsCount: calls?.calls?.length ?? 0,
309
- isOrigin,
310
- calculationMethod:
311
- intentProtocol === IntentProtocolVersion.v1
312
- ? "client-side (Merkle tree)"
313
- : "(NOT IMPLEMENTED)",
314
- },
315
- )
316
- if (intentProtocol === IntentProtocolVersion.v1) {
317
- logger.console.log(
318
- "[trails-sdk] [intent-protocol] v1: Calculating intent config client-side (deprecated)",
319
- {
320
- intentProtocol,
321
- method: "buildMerkleTreeFromMembers + counterfactual address",
322
- },
323
- )
324
- return getIntentConfigurationFromCallsV1(mainSigner, calls, context)
325
- }
326
-
327
- throw new Error(
328
- "Intent protocol v1.5 configuration derivation is not implemented",
329
- )
330
- }
331
-
332
- // @deprecated - v1 only
333
- function getIntentConfigurationFromCallsV1(
334
- mainSigner: string,
335
- calls: IntentCalls,
336
- context?: Context.Context,
337
- ): {
338
- address: `0x${string}`
339
- imageHash: `0x${string}`
340
- config: Config.Config
341
- } {
342
- logger.console.log(
343
- "[trails-sdk] [intent-protocol] v1: Building Merkle tree client-side",
344
- {
345
- mainSigner,
346
- callsCount: calls?.calls?.length ?? 0,
347
- },
348
- )
349
-
350
- const sequenceContext = context || SEQUENCE_V3_CONTRACT_ADDRESSES
351
-
352
- const config = createIntentConfigurationV1(Address.from(mainSigner), [calls])
353
- const imageHash = Config.hashConfiguration(config)
354
- const calculatedAddress = calculateIntentAddressFromImageHash(
355
- sequenceContext,
356
- imageHash,
357
- )
358
-
359
- logger.console.log("[trails-sdk] Final calculated configuration:", {
360
- address: calculatedAddress.toString() as `0x${string}`,
361
- imageHash: Bytes.toHex(imageHash) as `0x${string}`,
362
- })
363
-
364
- return {
365
- address: calculatedAddress.toString() as `0x${string}`,
366
- imageHash: Bytes.toHex(imageHash) as `0x${string}`,
367
- config,
368
- }
369
- }
370
-
371
- function calculateIntentAddressFromImageHash(
372
- context: Context.Context,
373
- imageHash: Bytes.Bytes,
374
- ): Address.Address {
375
- const hash = imageHash
376
-
377
- logger.console.log(
378
- "[trails-sdk] calculateIntentConfigurationAddress imageHash:",
379
- Bytes.toHex(hash),
380
- )
381
-
382
- // Log context for debugging
383
- logger.console.log("[trails-sdk] Context values:", {
384
- factory: context.factory,
385
- creationCode: context.creationCode,
386
- stage1: context.stage1,
387
- })
388
-
389
- // Calculate the counterfactual address using the image hash and context
390
- const address = ContractAddress.fromCreate2({
391
- from: context.factory,
392
- bytecodeHash: Hash.keccak256(
393
- Bytes.concat(
394
- Bytes.from(context.creationCode),
395
- Bytes.padLeft(Bytes.from(context.stage1), 32),
396
- ),
397
- { as: "Bytes" },
398
- ),
399
- salt: hash,
400
- })
401
-
402
- logger.console.log("[trails-sdk] Final calculated address:", address)
403
- return address
404
- }
405
-
406
- export async function calculateOriginAndDestinationIntentAddresses(
407
- trailsClient: TrailsClient,
408
- intentId: string,
409
- intentProtocol: IntentProtocolVersion,
410
- mainSigner: string,
411
- checkpoint: number,
412
- calls: Array<IntentCalls>,
413
- ): Promise<{
414
- originIntentAddress: Address.Address
415
- destinationIntentAddress: Address.Address
416
- }> {
417
- const originChainId = calls[0]?.chainId
418
- const destinationChainId = calls[1]?.chainId || originChainId
419
-
420
- logger.console.log("[trails-sdk] originChainId:", originChainId)
421
- logger.console.log("[trails-sdk] destinationChainId:", destinationChainId)
422
-
423
- // Different origin and destination chains: cross-chain execution.
424
- const originCalls = calls.filter((c) => c.chainId === originChainId)
425
- const destinationCalls = calls.filter((c) => c.chainId === destinationChainId)
426
-
427
- logger.console.log("[trails-sdk] originCalls:", originCalls)
428
- logger.console.log("[trails-sdk] destinationCalls:", destinationCalls)
429
-
430
- if (originCalls.length !== 1) {
431
- // This should never happen
432
- logger.console.log("[trails-sdk] calls length incorrect")
433
- throw new Error("origin calls length incorrect")
434
- }
435
-
436
- const { address: originIntentAddress } =
437
- await getIntentConfigurationFromCalls(
438
- trailsClient,
439
- intentId,
440
- intentProtocol,
441
- mainSigner,
442
- checkpoint,
443
- originCalls[0]!,
444
- true,
445
- )
446
- let destinationIntentAddress = originIntentAddress
447
-
448
- // Calculate separate destination intent address if:
449
- // 1. Cross-chain scenario (different chain IDs), OR
450
- // 2. Same-chain with multiple payloads (e.g., custom calldata creates separate origin/destination payloads)
451
- if (originChainId !== destinationChainId || calls.length > 1) {
452
- if (destinationCalls.length !== 1) {
453
- // This should never happen
454
- logger.console.log("[trails-sdk] destination calls length incorrect")
455
- throw new Error("destination calls length incorrect")
456
- }
457
- const { address } = await getIntentConfigurationFromCalls(
458
- trailsClient,
459
- intentId,
460
- intentProtocol,
461
- mainSigner,
462
- checkpoint,
463
- originCalls[0]!,
464
- false,
465
- )
466
- destinationIntentAddress = address
467
- }
468
-
469
- logger.console.log("[trails-sdk] originIntentAddress:", originIntentAddress)
470
- logger.console.log(
471
- "[trails-sdk] destinationIntentAddress:",
472
- destinationIntentAddress,
473
- )
474
-
475
- return { originIntentAddress, destinationIntentAddress }
476
- }
477
-
478
- export async function commitIntent(
479
- trailsClient: TrailsClient,
480
- intent: Intent,
481
- additionalTrackingProps: Record<string, string> = {},
482
- ): Promise<CommitIntentResponse> {
483
- // Build arrays for logging
484
- const originIntentCalls = intent.originCalls
485
- const destinationIntentCalls = intent.destinationCalls
486
- const calls = []
487
- if (originIntentCalls) calls.push(originIntentCalls)
488
- if (destinationIntentCalls) calls.push(destinationIntentCalls)
489
-
490
- const originPre = intent.originPrecondition
491
- const destinationPre = intent.destinationPrecondition
492
- const preconditions = []
493
- if (originPre) preconditions.push(originPre)
494
- if (destinationPre) preconditions.push(destinationPre)
495
-
496
- logger.console.log("[trails-sdk] commitIntent inputs:", {
497
- intentId: intent.intentId,
498
- ownerAddress: intent.ownerAddress,
499
- originIntentAddress: intent.originIntentAddress,
500
- destinationIntentAddress: intent.destinationIntentAddress,
501
- calls,
502
- preconditions,
503
- })
504
-
505
- // Additional detailed precondition logging
506
- logger.console.log("[trails-sdk] Detailed preconditions:", preconditions)
507
-
508
- // Log each precondition individually for easier reading
509
- preconditions.forEach((precondition, index) => {
510
- logger.console.log(`[trails-sdk] Precondition ${index}:`, {
511
- type: precondition.type,
512
- chainId: precondition.chainId,
513
- ownerAddress: precondition.ownerAddress,
514
- tokenAddress: precondition.tokenAddress,
515
- minAmount: precondition.minAmount?.toString(),
516
- })
517
- })
518
-
519
- logger.console.log(
520
- "[trails-sdk] originIntentAddress:",
521
- intent.originIntentAddress,
522
- )
523
- logger.console.log(
524
- "[trails-sdk] destinationIntentAddress:",
525
- intent.destinationIntentAddress,
526
- )
527
-
528
- const originChainIdStr = intent.quoteRequest.originChainId.toString()
529
- const destinationChainIdStr =
530
- intent.quoteRequest.destinationChainId.toString()
531
-
532
- // Get the origin precondition owner address directly
533
- const receivedAddress = originPre?.ownerAddress
534
-
535
- logger.console.log("[trails-sdk] Address comparison:", {
536
- receivedAddress,
537
- calculatedAddress: intent.originIntentAddress,
538
- match:
539
- receivedAddress &&
540
- addressEqual(receivedAddress, intent.originIntentAddress),
541
- })
542
-
543
- try {
544
- // Track intent commit start
545
- trackIntentCommitStarted({
546
- intentAddress: intent.originIntentAddress,
547
- userAddress: intent.ownerAddress,
548
- originChainId: originChainIdStr ? Number(originChainIdStr) : undefined,
549
- destinationChainId: destinationChainIdStr
550
- ? Number(destinationChainIdStr)
551
- : undefined,
552
- ...additionalTrackingProps,
553
- })
554
-
555
- // Commit the intent that was returned from quoteIntent
556
- const response = await trailsClient.commitIntent({
557
- intent,
558
- })
559
-
560
- logger.console.log("[trails-sdk] commitIntent response:", response)
561
-
562
- // Track successful intent commit
563
- trackIntentCommitCompleted({
564
- intentAddress: intent.originIntentAddress,
565
- userAddress: intent.ownerAddress,
566
- originChainId: originChainIdStr ? Number(originChainIdStr) : undefined,
567
- destinationChainId: destinationChainIdStr
568
- ? Number(destinationChainIdStr)
569
- : undefined,
570
- ...additionalTrackingProps,
571
- })
572
-
573
- return response
574
- } catch (error) {
575
- // Track intent commit error
576
- trackIntentCommitError({
577
- error: getFullErrorMessage(error),
578
- userAddress: intent.ownerAddress,
579
- intentAddress: intent.originIntentAddress,
580
- originChainId: originChainIdStr ? Number(originChainIdStr) : undefined,
581
- destinationChainId: destinationChainIdStr
582
- ? Number(destinationChainIdStr)
583
- : undefined,
584
- ...additionalTrackingProps,
585
- })
586
- throw error
587
- }
588
- }
589
-
590
- export async function executeIntent(
591
- trailsClient: TrailsClient,
592
- intentId: string,
593
- depositTransactionHash?: string,
594
- depositSignature?: DepositSignature,
595
- ): Promise<ExecuteIntentResponse> {
596
- logger.console.log("[trails-sdk] executeIntent inputs:", {
597
- intentId,
598
- providedDepositTransactionHash: depositTransactionHash,
599
- hasDepositSignature: !!depositSignature,
600
- })
601
-
602
- const request: ExecuteIntentRequest = {
603
- intentId,
604
- depositSignature,
605
- }
606
-
607
- logger.console.log("[trails-sdk] executeIntent request:", request)
608
-
609
- try {
610
- const response = await trailsClient.executeIntent(request)
611
- logger.console.log("[trails-sdk] executeIntent response:", response)
612
-
613
- return response
614
- } catch (error) {
615
- const intentStatus = getIntentStatusFromError(error)
616
-
617
- if (intentStatus) {
618
- logger.console.log(
619
- "[trails-sdk] executeIntent returned terminal/non-committed status, treating as current state",
620
- {
621
- intentId,
622
- intentStatus,
623
- },
624
- )
625
-
626
- return {
627
- intentId,
628
- intentStatus: intentStatus as IntentStatus,
629
- }
630
- }
631
-
632
- throw error
633
- }
634
- }
635
-
636
- export async function sendOriginTransaction(
637
- account: Account,
638
- walletClient: WalletClient,
639
- originParams: SendOriginCallTxArgs,
640
- additionalTrackingProps: Record<string, string> = {},
641
- ): Promise<`0x${string}`> {
642
- await attemptSwitchChain({
643
- walletClient,
644
- desiredChainId: originParams.chain.id,
645
- })
646
-
647
- // Track transaction start
648
- trackTransactionStarted({
649
- transactionType: "origin_call",
650
- chainId: originParams.chain.id,
651
- userAddress: account.address,
652
- ...additionalTrackingProps,
653
- })
654
-
655
- const chainInfo = getChainInfo(originParams.chain.id)
656
- if (!chainInfo) {
657
- throw new Error(`Chain ${originParams.chain.id} not found`)
658
- }
659
- const publicClient = getChainRpcClient(chainInfo.id)
660
-
661
- // Use provided gasLimit if available, otherwise let the wallet estimate
662
- let gasLimit: bigint | undefined
663
- if (originParams.gasLimit) {
664
- gasLimit = originParams.gasLimit
665
- logger.console.log(
666
- "[trails-sdk][gas-estimation] using provided gasLimit:",
667
- gasLimit,
668
- )
669
- } else {
670
- logger.console.log(
671
- "[trails-sdk][gas-estimation] no gasLimit provided, let wallet estimate",
672
- )
673
- }
674
-
675
- // Get fee parameters - try EIP-1559 first, then fall back to legacy
676
- // Use provided fees if available, otherwise fetch and boost them for faster processing
677
- let maxFeePerGas: bigint | undefined = originParams.maxFeePerGas
678
- let maxPriorityFeePerGas: bigint | undefined =
679
- originParams.maxPriorityFeePerGas
680
- let gasPrice: bigint | undefined
681
-
682
- if (!maxFeePerGas) {
683
- try {
684
- // Use getFeeData which applies the PRIORITY_FEE_MULTIPLIER
685
- const feeData = await getFeeData(publicClient)
686
-
687
- if (feeData.maxFeePerGas) {
688
- maxFeePerGas = feeData.maxFeePerGas
689
- maxPriorityFeePerGas = feeData.maxPriorityFeePerGas
690
- logger.console.log(
691
- "[trails-sdk][gas-estimation] Using boosted EIP-1559 fees in sendOriginTransaction:",
692
- { maxFeePerGas, maxPriorityFeePerGas },
693
- )
694
- } else if (feeData.gasPrice) {
695
- gasPrice = feeData.gasPrice
696
- logger.console.log(
697
- "[trails-sdk][gas-estimation] Using boosted legacy gas price in sendOriginTransaction:",
698
- { gasPrice },
699
- )
700
- }
701
- } catch (_error) {
702
- // Fee data fetch failed, will use wallet default
703
- logger.console.log(
704
- "[trails-sdk][gas-estimation] Fee data fetch failed in sendOriginTransaction, wallet will use default",
705
- )
706
- }
707
- }
708
-
709
- logger.console.log(
710
- "[trails-sdk] sending origin tx with sendWalletTransaction()",
711
- )
712
- const id = Date.now()
713
- logger.console.time(`[trails-sdk] sendWalletTransaction-${id}`)
714
-
715
- try {
716
- // Build transaction parameters - EIP-1559 and legacy are mutually exclusive
717
- const txParams: any = {
718
- account: account,
719
- to: originParams.to as `0x${string}`,
720
- data: originParams.data as `0x${string}`,
721
- value: BigInt(originParams.value),
722
- chain: originParams.chain,
723
- }
724
- if (gasLimit) {
725
- txParams.gas = gasLimit
726
- }
727
-
728
- // Add fee parameters based on transaction type
729
- if (maxFeePerGas && maxPriorityFeePerGas) {
730
- // EIP-1559 transaction
731
- txParams.maxFeePerGas = maxFeePerGas
732
- txParams.maxPriorityFeePerGas = maxPriorityFeePerGas
733
- } else if (gasPrice) {
734
- // Legacy transaction
735
- txParams.gasPrice = gasPrice
736
- }
737
-
738
- const hash = await sendWalletTransaction(walletClient, txParams)
739
- logger.console.timeEnd(`[trails-sdk] sendWalletTransaction-${id}`)
740
- logger.console.log("[trails-sdk] done sending, origin tx hash", hash)
741
-
742
- // Track successful transaction submission (pseudonymize() is called inside analytics)
743
- trackTransactionSubmitted({
744
- transactionHash: hash,
745
- chainId: originParams.chain.id,
746
- userAddress: account.address,
747
- ...additionalTrackingProps,
748
- })
749
-
750
- if (!hash) {
751
- throw new Error("No transaction hash returned from sendWalletTransaction")
752
- }
753
-
754
- return hash
755
- } catch (error) {
756
- logger.console.timeEnd(`[trails-sdk] sendWalletTransaction-${id}`)
757
-
758
- // Track failed transaction
759
- trackTransactionError({
760
- transactionHash: "",
761
- error: getFullErrorMessage(error),
762
- userAddress: account.address,
763
- ...additionalTrackingProps,
764
- })
765
-
766
- throw error
767
- }
768
- }
769
-
770
- // @deprecated - v1 only
771
- function createIntentConfigurationV1(
772
- mainSigner: Address.Address,
773
- calls: IntentCalls[],
774
- ): Config.Config {
775
- const mainSignerLeaf: Config.SignerLeaf = {
776
- type: "signer",
777
- address: mainSigner,
778
- weight: 1n,
779
- }
780
-
781
- logger.console.log("[trails-sdk] mainSignerLeaf:", mainSignerLeaf)
782
-
783
- // Log detailed call information for debugging configuration mismatch
784
- logger.console.log(
785
- "[trails-sdk] calls:",
786
- calls.map((call) => ({
787
- chainId: call.chainId,
788
- space: call.space,
789
- nonce: call.nonce,
790
- callsCount: call.calls.length,
791
- })),
792
- )
793
-
794
- const subdigestLeaves: Config.AnyAddressSubdigestLeaf[] = calls.map(
795
- (call) => {
796
- const spaceValue = BigInt(call.space || 0)
797
- const nonceValue = BigInt(call.nonce || 0)
798
-
799
- logger.console.log(
800
- `[trails-sdk] Processing call - chainId: ${call.chainId}, space: ${call.space} -> ${spaceValue}, nonce: ${call.nonce} -> ${nonceValue}`,
801
- )
802
-
803
- const payloadForHashing = {
804
- type: "call" as const,
805
- chainId: Number(call.chainId),
806
- space: spaceValue,
807
- nonce: nonceValue,
808
- calls: call.calls.map((call) => ({
809
- type: "call" as const,
810
- to: call.to as `0x${string}`,
811
- value: BigInt(call.value?.toString() || "0"),
812
- data: Bytes.toHex(Bytes.from((call.data as Hex.Hex) || "0x")),
813
- gasLimit: BigInt(call.gasLimit?.toString() || "0"),
814
- delegateCall: !!call.delegateCall,
815
- onlyFallback: !!call.onlyFallback,
816
- behaviorOnError: (call.behaviorOnError === 0
817
- ? "ignore"
818
- : call.behaviorOnError === 1
819
- ? "revert"
820
- : "abort") as "ignore" | "revert" | "abort",
821
- })),
822
- }
823
-
824
- logger.console.log(
825
- "[DEBUG CREATION] Payload being hashed:",
826
- payloadForHashing,
827
- )
828
- logger.console.log("[DEBUG CREATION] Chain ID:", Number(call.chainId))
829
- logger.console.log(
830
- "[DEBUG CREATION] Using zero address as verifying contract",
831
- )
832
-
833
- const digest = Payload.hash(
834
- Address.from(zeroAddress),
835
- Number(call.chainId),
836
- payloadForHashing,
837
- )
838
- logger.console.log("[trails-sdk] digest:", Bytes.toHex(digest))
839
- return {
840
- type: "any-address-subdigest",
841
- digest: Bytes.toHex(digest),
842
- } as Config.AnyAddressSubdigestLeaf
843
- },
844
- )
845
-
846
- logger.console.log("[trails-sdk] calls:", calls)
847
- logger.console.log("[trails-sdk] subdigestLeaves:", subdigestLeaves)
848
-
849
- const otherLeaves: Config.Topology[] = [...subdigestLeaves]
850
-
851
- if (otherLeaves.length === 0) {
852
- throw new Error(
853
- "Intent configuration must have at least one call or LiFi information.",
854
- )
855
- }
856
-
857
- let secondaryTopologyNode: Config.Topology
858
-
859
- if (otherLeaves.length === 1) {
860
- secondaryTopologyNode = otherLeaves[0]!
861
- } else {
862
- secondaryTopologyNode = buildMerkleTreeFromMembers(otherLeaves)
863
- }
864
-
865
- // Print the topology
866
- logger.console.log(
867
- "[trails-sdk] Topology:",
868
- JsonEncode([mainSignerLeaf, secondaryTopologyNode]),
869
- )
870
-
871
- return {
872
- threshold: 1n,
873
- checkpoint: 0n,
874
- topology: [mainSignerLeaf, secondaryTopologyNode] as Config.Node,
875
- }
876
- }
877
-
878
- // @deprecated - v1 only
879
- // Renamed and generalized from createSubdigestTree
880
- function buildMerkleTreeFromMembers(
881
- members: Config.Topology[],
882
- ): Config.Topology {
883
- if (members.length === 0) {
884
- throw new Error("Cannot create a tree from empty members")
885
- }
886
- if (members.length === 1) {
887
- return members[0]! // Returns a single Leaf or a Node
888
- }
889
-
890
- let currentLevel = [...members]
891
- while (currentLevel.length > 1) {
892
- const nextLevel: Config.Topology[] = []
893
- for (let i = 0; i < currentLevel.length; i += 2) {
894
- const left = currentLevel[i]!
895
- if (i + 1 < currentLevel.length) {
896
- const right = currentLevel[i + 1]!
897
- nextLevel.push([left, right] as Config.Node)
898
- } else {
899
- // Odd one out, carries over to the next level
900
- nextLevel.push(left)
901
- }
902
- }
903
- currentLevel = nextLevel
904
- }
905
- return currentLevel[0]!
906
- }
907
-
908
- function _fromServiceConfig(config: any): Config.Config {
909
- if (config.checkpointer !== undefined) {
910
- Address.assert(config.checkpointer)
911
- }
912
-
913
- return {
914
- threshold: BigInt(config.threshold),
915
- checkpoint: BigInt(config.checkpoint),
916
- checkpointer: config.checkpointer,
917
- topology: fromServiceConfigTree(config.tree),
918
- }
919
- }
920
-
921
- function fromServiceConfigTree(tree: any): Config.Topology {
922
- logger.console.log("fromServiceConfigTree", tree)
923
- switch (typeof tree) {
924
- case "string":
925
- Hex.assert(tree)
926
- return tree
927
-
928
- case "object":
929
- if (Array.isArray(tree)) {
930
- return [fromServiceConfigTree(tree[0]), fromServiceConfigTree(tree[1])]
931
- }
932
-
933
- if ("weight" in tree) {
934
- if ("address" in tree) {
935
- Address.assert(tree.address)
936
-
937
- if (tree.imageHash) {
938
- Hex.assert(tree.imageHash)
939
- return {
940
- type: "sapient-signer",
941
- address: tree.address,
942
- weight: BigInt(tree.weight),
943
- imageHash: tree.imageHash,
944
- }
945
- } else {
946
- return {
947
- type: "signer",
948
- address: tree.address,
949
- weight: BigInt(tree.weight),
950
- }
951
- }
952
- }
953
-
954
- if ("tree" in tree) {
955
- return {
956
- type: "nested",
957
- weight: BigInt(tree.weight),
958
- threshold: BigInt(tree.threshold),
959
- tree: fromServiceConfigTree(tree.tree),
960
- }
961
- }
962
- }
963
-
964
- if ("subdigest" in tree) {
965
- Hex.assert(tree.subdigest)
966
- return {
967
- type: tree.isAnyAddress ? "any-address-subdigest" : "subdigest",
968
- digest: tree.subdigest,
969
- }
970
- }
971
- }
972
-
973
- throw new Error(`unknown config tree ${JSON.stringify(tree)}`)
974
- }
975
-
976
- /**
977
- * Fetches intent data from the Trails API
978
- * @param trailsClient - TrailsClient instance
979
- * @param intentId - The intent ID to fetch
980
- * @returns Promise resolving to the intent data
981
- */
982
- export async function getIntent(
983
- trailsClient: TrailsClient,
984
- intentId: string,
985
- ): Promise<GetIntentResponse> {
986
- const request: GetIntentRequest = {
987
- intentId,
988
- }
989
-
990
- return await trailsClient.getIntent(request)
991
- }
992
-
993
- /**
994
- * Abort an intent after a successful recovery
995
- * This should be called after the recover function executes successfully
996
- *
997
- * @param trailsClient - The Trails API client
998
- * @param intentId - The ID of the intent to abort
999
- * @param chainId - The chain ID where the recovery transaction was executed
1000
- * @param abortTransactionHash - The transaction hash from the recovery
1001
- * @returns Promise resolving to the abort response with intent status
1002
- */
1003
- export async function abortIntent(
1004
- trailsClient: TrailsClient,
1005
- intentId: string,
1006
- chainId: number,
1007
- abortTransactionHash: string,
1008
- ): Promise<AbortIntentResponse> {
1009
- logger.console.log("[trails-sdk] Aborting intent after recovery:", {
1010
- intentId,
1011
- chainId,
1012
- abortTransactionHash,
1013
- })
1014
-
1015
- try {
1016
- const request: AbortIntentRequest = {
1017
- intentId,
1018
- chainId,
1019
- abortTransactionHash,
1020
- }
1021
-
1022
- const response = await trailsClient.abortIntent(request)
1023
-
1024
- logger.console.log("[trails-sdk] Intent aborted successfully:", {
1025
- intentId,
1026
- status: response.status,
1027
- })
1028
-
1029
- return response
1030
- } catch (error) {
1031
- logger.console.error("[trails-sdk] Failed to abort intent:", {
1032
- intentId,
1033
- chainId,
1034
- abortTransactionHash,
1035
- error: error instanceof Error ? error.message : String(error),
1036
- })
1037
- throw error
1038
- }
1039
- }
1040
-
1041
- export function buildSameChainSameTokenTransactionParams({
1042
- hasCustomCalldata,
1043
- recipient,
1044
- effectiveOriginTokenAddress,
1045
- destinationCalldata,
1046
- swapAmount,
1047
- effectiveOriginChainId,
1048
- effectiveOriginChain,
1049
- }: {
1050
- hasCustomCalldata: boolean
1051
- recipient: string
1052
- effectiveOriginTokenAddress: string
1053
- destinationCalldata?: string
1054
- swapAmount: string
1055
- effectiveOriginChainId: number
1056
- effectiveOriginChain: Chain
1057
- }) {
1058
- const isNative = isNativeToken(effectiveOriginTokenAddress)
1059
-
1060
- // Determine transaction data based on token type and calldata
1061
- let data: string
1062
- let to: string
1063
-
1064
- if (hasCustomCalldata) {
1065
- // Custom calldata provided - use it directly
1066
- to = recipient
1067
- data = destinationCalldata || "0x"
1068
- } else if (isNative) {
1069
- // Native token transfer - no data needed
1070
- to = recipient
1071
- data = "0x"
1072
- } else {
1073
- // ERC20 token transfer - encode transfer function call
1074
- to = effectiveOriginTokenAddress
1075
- data = encodeFunctionData({
1076
- abi: erc20Abi,
1077
- functionName: "transfer",
1078
- args: [recipient as `0x${string}`, BigInt(swapAmount)],
1079
- })
1080
- }
1081
-
1082
- return {
1083
- to,
1084
- data,
1085
- value: isNative ? BigInt(swapAmount) : "0",
1086
- chainId: effectiveOriginChainId,
1087
- chain: effectiveOriginChain,
1088
- }
1089
- }
1090
-
1091
- /**
1092
- * Build transaction parameters for cross-chain deposit transactions
1093
- * Uses backend-provided transaction fields directly
1094
- */
1095
- export function buildCrossChainDepositParams({
1096
- depositTransaction,
1097
- chain,
1098
- }: {
1099
- depositTransaction: {
1100
- to: string
1101
- data: string
1102
- value?: string | bigint
1103
- chainId: number
1104
- }
1105
- chain: Chain
1106
- }) {
1107
- // Validate required backend-provided transaction fields
1108
- if (
1109
- !depositTransaction?.to ||
1110
- !depositTransaction?.data ||
1111
- !depositTransaction?.chainId ||
1112
- depositTransaction?.value == null
1113
- ) {
1114
- throw new Error(
1115
- "Backend did not provide required transaction fields (to, data, value, chainId) in depositTransaction.",
1116
- )
1117
- }
1118
-
1119
- // Sanity check: compare local chain object chainId with API chainId
1120
- if (chain.id !== depositTransaction.chainId) {
1121
- throw new Error(
1122
- `Chain ID mismatch: local chain object has chainId ${chain.id} but depositTransaction has chainId ${depositTransaction.chainId}`,
1123
- )
1124
- }
1125
-
1126
- return {
1127
- to: depositTransaction.to,
1128
- data: depositTransaction.data as Hex.Hex,
1129
- value: BigInt(depositTransaction.value ?? 0),
1130
- chainId: depositTransaction.chainId,
1131
- chain,
1132
- }
1133
- }