@lifi/sdk 4.0.0-alpha.21 → 4.0.0-alpha.23

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 (647) hide show
  1. package/dist/cjs/actions/getChains.d.ts +17 -4
  2. package/dist/cjs/actions/getChains.js +22 -19
  3. package/dist/cjs/actions/getChains.js.map +1 -1
  4. package/dist/cjs/actions/getConnections.d.ts +15 -3
  5. package/dist/cjs/actions/getConnections.js +30 -35
  6. package/dist/cjs/actions/getConnections.js.map +1 -1
  7. package/dist/cjs/actions/getContractCallsQuote.d.ts +16 -3
  8. package/dist/cjs/actions/getContractCallsQuote.js +41 -42
  9. package/dist/cjs/actions/getContractCallsQuote.js.map +1 -1
  10. package/dist/cjs/actions/getGasRecommendation.d.ts +16 -3
  11. package/dist/cjs/actions/getGasRecommendation.js +20 -19
  12. package/dist/cjs/actions/getGasRecommendation.js.map +1 -1
  13. package/dist/cjs/actions/getNameServiceAddress.d.ts +15 -3
  14. package/dist/cjs/actions/getNameServiceAddress.js +25 -27
  15. package/dist/cjs/actions/getNameServiceAddress.js.map +1 -1
  16. package/dist/cjs/actions/getQuote.d.ts +18 -5
  17. package/dist/cjs/actions/getQuote.js +32 -45
  18. package/dist/cjs/actions/getQuote.js.map +1 -1
  19. package/dist/cjs/actions/getRelayedTransactionStatus.d.ts +16 -3
  20. package/dist/cjs/actions/getRelayedTransactionStatus.js +26 -26
  21. package/dist/cjs/actions/getRelayedTransactionStatus.js.map +1 -1
  22. package/dist/cjs/actions/getRelayerQuote.d.ts +17 -4
  23. package/dist/cjs/actions/getRelayerQuote.js +40 -44
  24. package/dist/cjs/actions/getRelayerQuote.js.map +1 -1
  25. package/dist/cjs/actions/getRoutes.d.ts +16 -3
  26. package/dist/cjs/actions/getRoutes.js +28 -23
  27. package/dist/cjs/actions/getRoutes.js.map +1 -1
  28. package/dist/cjs/actions/getStatus.d.ts +17 -4
  29. package/dist/cjs/actions/getStatus.js +18 -14
  30. package/dist/cjs/actions/getStatus.js.map +1 -1
  31. package/dist/cjs/actions/getStepTransaction.d.ts +16 -3
  32. package/dist/cjs/actions/getStepTransaction.js +32 -24
  33. package/dist/cjs/actions/getStepTransaction.js.map +1 -1
  34. package/dist/cjs/actions/getToken.d.ts +17 -3
  35. package/dist/cjs/actions/getToken.js +22 -18
  36. package/dist/cjs/actions/getToken.js.map +1 -1
  37. package/dist/cjs/actions/getTokenBalance.d.ts +17 -3
  38. package/dist/cjs/actions/getTokenBalance.js +16 -6
  39. package/dist/cjs/actions/getTokenBalance.js.map +1 -1
  40. package/dist/cjs/actions/getTokenBalances.d.ts +17 -3
  41. package/dist/cjs/actions/getTokenBalances.js +12 -13
  42. package/dist/cjs/actions/getTokenBalances.js.map +1 -1
  43. package/dist/cjs/actions/getTokenBalancesByChain.d.ts +19 -5
  44. package/dist/cjs/actions/getTokenBalancesByChain.js +22 -37
  45. package/dist/cjs/actions/getTokenBalancesByChain.js.map +1 -1
  46. package/dist/cjs/actions/getTokens.d.ts +18 -6
  47. package/dist/cjs/actions/getTokens.js +14 -18
  48. package/dist/cjs/actions/getTokens.js.map +1 -1
  49. package/dist/cjs/actions/getTools.d.ts +15 -3
  50. package/dist/cjs/actions/getTools.js +17 -14
  51. package/dist/cjs/actions/getTools.js.map +1 -1
  52. package/dist/cjs/actions/getTransactionHistory.d.ts +26 -3
  53. package/dist/cjs/actions/getTransactionHistory.js +27 -21
  54. package/dist/cjs/actions/getTransactionHistory.js.map +1 -1
  55. package/dist/cjs/actions/getWalletBalances.d.ts +16 -3
  56. package/dist/cjs/actions/getWalletBalances.js +16 -12
  57. package/dist/cjs/actions/getWalletBalances.js.map +1 -1
  58. package/dist/cjs/actions/index.d.ts +171 -39
  59. package/dist/cjs/actions/index.js +49 -47
  60. package/dist/cjs/actions/index.js.map +1 -1
  61. package/dist/cjs/actions/patchContractCalls.d.ts +14 -9
  62. package/dist/cjs/actions/patchContractCalls.js +11 -12
  63. package/dist/cjs/actions/patchContractCalls.js.map +1 -1
  64. package/dist/cjs/actions/relayTransaction.d.ts +16 -3
  65. package/dist/cjs/actions/relayTransaction.js +30 -34
  66. package/dist/cjs/actions/relayTransaction.js.map +1 -1
  67. package/dist/cjs/client/createClient.d.ts +7 -2
  68. package/dist/cjs/client/createClient.js +67 -75
  69. package/dist/cjs/client/createClient.js.map +1 -1
  70. package/dist/cjs/client/getClientStorage.d.ts +14 -8
  71. package/dist/cjs/client/getClientStorage.js +44 -48
  72. package/dist/cjs/client/getClientStorage.js.map +1 -1
  73. package/dist/cjs/core/BaseStepExecutionTask.d.ts +9 -4
  74. package/dist/cjs/core/BaseStepExecutionTask.js +9 -8
  75. package/dist/cjs/core/BaseStepExecutionTask.js.map +1 -1
  76. package/dist/cjs/core/BaseStepExecutor.d.ts +23 -18
  77. package/dist/cjs/core/BaseStepExecutor.js +67 -79
  78. package/dist/cjs/core/BaseStepExecutor.js.map +1 -1
  79. package/dist/cjs/core/StatusManager.d.ts +80 -21
  80. package/dist/cjs/core/StatusManager.js +158 -139
  81. package/dist/cjs/core/StatusManager.js.map +1 -1
  82. package/dist/cjs/core/TaskPipeline.d.ts +11 -6
  83. package/dist/cjs/core/TaskPipeline.js +19 -25
  84. package/dist/cjs/core/TaskPipeline.js.map +1 -1
  85. package/dist/cjs/core/actionMessages.d.ts +9 -4
  86. package/dist/cjs/core/actionMessages.js +72 -74
  87. package/dist/cjs/core/actionMessages.js.map +1 -1
  88. package/dist/cjs/core/execution.d.ts +48 -8
  89. package/dist/cjs/core/execution.js +131 -133
  90. package/dist/cjs/core/execution.js.map +1 -1
  91. package/dist/cjs/core/executionState.d.ts +17 -13
  92. package/dist/cjs/core/executionState.js +27 -27
  93. package/dist/cjs/core/executionState.js.map +1 -1
  94. package/dist/cjs/core/prepareRestart.d.ts +7 -2
  95. package/dist/cjs/core/prepareRestart.js +17 -19
  96. package/dist/cjs/core/prepareRestart.js.map +1 -1
  97. package/dist/cjs/core/storage.d.ts +18 -14
  98. package/dist/cjs/core/storage.js +32 -33
  99. package/dist/cjs/core/storage.js.map +1 -1
  100. package/dist/cjs/core/tasks/CheckBalanceTask.d.ts +9 -4
  101. package/dist/cjs/core/tasks/CheckBalanceTask.js +23 -24
  102. package/dist/cjs/core/tasks/CheckBalanceTask.js.map +1 -1
  103. package/dist/cjs/core/tasks/PrepareTransactionTask.d.ts +9 -4
  104. package/dist/cjs/core/tasks/PrepareTransactionTask.js +28 -34
  105. package/dist/cjs/core/tasks/PrepareTransactionTask.js.map +1 -1
  106. package/dist/cjs/core/tasks/WaitForTransactionStatusTask.d.ts +12 -7
  107. package/dist/cjs/core/tasks/WaitForTransactionStatusTask.js +61 -71
  108. package/dist/cjs/core/tasks/WaitForTransactionStatusTask.js.map +1 -1
  109. package/dist/cjs/core/tasks/helpers/checkBalance.d.ts +8 -3
  110. package/dist/cjs/core/tasks/helpers/checkBalance.js +24 -33
  111. package/dist/cjs/core/tasks/helpers/checkBalance.js.map +1 -1
  112. package/dist/cjs/core/tasks/helpers/getTransactionRequestData.d.ts +7 -2
  113. package/dist/cjs/core/tasks/helpers/getTransactionRequestData.js +21 -26
  114. package/dist/cjs/core/tasks/helpers/getTransactionRequestData.js.map +1 -1
  115. package/dist/cjs/core/tasks/helpers/stepComparison.d.ts +21 -4
  116. package/dist/cjs/core/tasks/helpers/stepComparison.js +28 -21
  117. package/dist/cjs/core/tasks/helpers/stepComparison.js.map +1 -1
  118. package/dist/cjs/core/tasks/helpers/waitForTransactionStatus.d.ts +9 -4
  119. package/dist/cjs/core/tasks/helpers/waitForTransactionStatus.js +45 -53
  120. package/dist/cjs/core/tasks/helpers/waitForTransactionStatus.js.map +1 -1
  121. package/dist/cjs/core/utils.d.ts +17 -91
  122. package/dist/cjs/core/utils.js +37 -38
  123. package/dist/cjs/core/utils.js.map +1 -1
  124. package/dist/cjs/errors/SDKError.d.ts +16 -11
  125. package/dist/cjs/errors/SDKError.js +22 -21
  126. package/dist/cjs/errors/SDKError.js.map +1 -1
  127. package/dist/cjs/errors/baseError.d.ts +10 -5
  128. package/dist/cjs/errors/baseError.js +17 -18
  129. package/dist/cjs/errors/baseError.js.map +1 -1
  130. package/dist/cjs/errors/constants.d.ts +52 -48
  131. package/dist/cjs/errors/constants.js +60 -56
  132. package/dist/cjs/errors/constants.js.map +1 -1
  133. package/dist/cjs/errors/errors.d.ts +38 -28
  134. package/dist/cjs/errors/errors.js +57 -51
  135. package/dist/cjs/errors/errors.js.map +1 -1
  136. package/dist/cjs/errors/httpError.d.ts +21 -17
  137. package/dist/cjs/errors/httpError.js +62 -65
  138. package/dist/cjs/errors/httpError.js.map +1 -1
  139. package/dist/cjs/errors/utils/baseErrorRootCause.d.ts +8 -3
  140. package/dist/cjs/errors/utils/baseErrorRootCause.js +12 -15
  141. package/dist/cjs/errors/utils/baseErrorRootCause.js.map +1 -1
  142. package/dist/cjs/errors/utils/rootCause.d.ts +5 -1
  143. package/dist/cjs/errors/utils/rootCause.js +7 -8
  144. package/dist/cjs/errors/utils/rootCause.js.map +1 -1
  145. package/dist/cjs/index.d.ts +54 -55
  146. package/dist/cjs/index.js +128 -138
  147. package/dist/cjs/types/actions.d.ts +12 -7
  148. package/dist/cjs/types/actions.js +0 -3
  149. package/dist/cjs/types/core.d.ts +185 -173
  150. package/dist/cjs/types/core.js +0 -3
  151. package/dist/cjs/types/execution.d.ts +25 -19
  152. package/dist/cjs/types/execution.js +0 -3
  153. package/dist/cjs/types/request.d.ts +6 -2
  154. package/dist/cjs/types/request.js +0 -3
  155. package/dist/cjs/utils/checkPackageUpdates.d.ts +5 -1
  156. package/dist/cjs/utils/checkPackageUpdates.js +11 -16
  157. package/dist/cjs/utils/checkPackageUpdates.js.map +1 -1
  158. package/dist/cjs/utils/convertQuoteToRoute.d.ts +20 -5
  159. package/dist/cjs/utils/convertQuoteToRoute.js +72 -85
  160. package/dist/cjs/utils/convertQuoteToRoute.js.map +1 -1
  161. package/dist/cjs/utils/decode.d.ts +5 -1
  162. package/dist/cjs/utils/decode.js +5 -10
  163. package/dist/cjs/utils/decode.js.map +1 -1
  164. package/dist/cjs/utils/fetchTxErrorDetails.d.ts +5 -1
  165. package/dist/cjs/utils/fetchTxErrorDetails.js +9 -9
  166. package/dist/cjs/utils/fetchTxErrorDetails.js.map +1 -1
  167. package/dist/cjs/utils/formatUnits.d.ts +8 -1
  168. package/dist/cjs/utils/formatUnits.js +15 -15
  169. package/dist/cjs/utils/formatUnits.js.map +1 -1
  170. package/dist/cjs/utils/getTransactionMessage.d.ts +8 -3
  171. package/dist/cjs/utils/getTransactionMessage.js +8 -10
  172. package/dist/cjs/utils/getTransactionMessage.js.map +1 -1
  173. package/dist/cjs/utils/isHex.d.ts +9 -3
  174. package/dist/cjs/utils/isHex.js +8 -10
  175. package/dist/cjs/utils/isHex.js.map +1 -1
  176. package/dist/cjs/utils/isRoutesRequest.d.ts +7 -2
  177. package/dist/cjs/utils/isRoutesRequest.js +7 -14
  178. package/dist/cjs/utils/isRoutesRequest.js.map +1 -1
  179. package/dist/cjs/utils/isStep.d.ts +7 -2
  180. package/dist/cjs/utils/isStep.js +15 -25
  181. package/dist/cjs/utils/isStep.js.map +1 -1
  182. package/dist/cjs/utils/isToken.d.ts +7 -2
  183. package/dist/cjs/utils/isToken.js +6 -7
  184. package/dist/cjs/utils/isToken.js.map +1 -1
  185. package/dist/cjs/utils/parseUnits.d.ts +8 -1
  186. package/dist/cjs/utils/parseUnits.js +32 -41
  187. package/dist/cjs/utils/parseUnits.js.map +1 -1
  188. package/dist/cjs/utils/request.d.ts +10 -5
  189. package/dist/cjs/utils/request.js +53 -69
  190. package/dist/cjs/utils/request.js.map +1 -1
  191. package/dist/cjs/utils/sleep.d.ts +5 -1
  192. package/dist/cjs/utils/sleep.js +8 -6
  193. package/dist/cjs/utils/sleep.js.map +1 -1
  194. package/dist/cjs/utils/waitForResult.d.ts +14 -1
  195. package/dist/cjs/utils/waitForResult.js +33 -30
  196. package/dist/cjs/utils/waitForResult.js.map +1 -1
  197. package/dist/cjs/utils/withDedupe.d.ts +20 -8
  198. package/dist/cjs/utils/withDedupe.js +31 -29
  199. package/dist/cjs/utils/withDedupe.js.map +1 -1
  200. package/dist/cjs/version.d.ts +6 -2
  201. package/dist/cjs/version.js +8 -5
  202. package/dist/cjs/version.js.map +1 -1
  203. package/dist/esm/actions/getChains.d.ts +16 -11
  204. package/dist/esm/actions/getChains.d.ts.map +1 -0
  205. package/dist/esm/actions/getChains.js +22 -24
  206. package/dist/esm/actions/getChains.js.map +1 -1
  207. package/dist/esm/actions/getConnections.d.ts +14 -9
  208. package/dist/esm/actions/getConnections.d.ts.map +1 -0
  209. package/dist/esm/actions/getConnections.js +30 -39
  210. package/dist/esm/actions/getConnections.js.map +1 -1
  211. package/dist/esm/actions/getContractCallsQuote.d.ts +15 -10
  212. package/dist/esm/actions/getContractCallsQuote.d.ts.map +1 -0
  213. package/dist/esm/actions/getContractCallsQuote.js +41 -51
  214. package/dist/esm/actions/getContractCallsQuote.js.map +1 -1
  215. package/dist/esm/actions/getGasRecommendation.d.ts +15 -10
  216. package/dist/esm/actions/getGasRecommendation.d.ts.map +1 -0
  217. package/dist/esm/actions/getGasRecommendation.js +20 -24
  218. package/dist/esm/actions/getGasRecommendation.js.map +1 -1
  219. package/dist/esm/actions/getNameServiceAddress.d.ts +14 -9
  220. package/dist/esm/actions/getNameServiceAddress.d.ts.map +1 -0
  221. package/dist/esm/actions/getNameServiceAddress.js +25 -31
  222. package/dist/esm/actions/getNameServiceAddress.js.map +1 -1
  223. package/dist/esm/actions/getQuote.d.ts +17 -12
  224. package/dist/esm/actions/getQuote.d.ts.map +1 -0
  225. package/dist/esm/actions/getQuote.js +32 -44
  226. package/dist/esm/actions/getQuote.js.map +1 -1
  227. package/dist/esm/actions/getRelayedTransactionStatus.d.ts +15 -10
  228. package/dist/esm/actions/getRelayedTransactionStatus.d.ts.map +1 -0
  229. package/dist/esm/actions/getRelayedTransactionStatus.js +26 -32
  230. package/dist/esm/actions/getRelayedTransactionStatus.js.map +1 -1
  231. package/dist/esm/actions/getRelayerQuote.d.ts +16 -11
  232. package/dist/esm/actions/getRelayerQuote.d.ts.map +1 -0
  233. package/dist/esm/actions/getRelayerQuote.js +40 -50
  234. package/dist/esm/actions/getRelayerQuote.js.map +1 -1
  235. package/dist/esm/actions/getRoutes.d.ts +15 -10
  236. package/dist/esm/actions/getRoutes.d.ts.map +1 -0
  237. package/dist/esm/actions/getRoutes.js +28 -29
  238. package/dist/esm/actions/getRoutes.js.map +1 -1
  239. package/dist/esm/actions/getStatus.d.ts +16 -11
  240. package/dist/esm/actions/getStatus.d.ts.map +1 -0
  241. package/dist/esm/actions/getStatus.js +18 -19
  242. package/dist/esm/actions/getStatus.js.map +1 -1
  243. package/dist/esm/actions/getStepTransaction.d.ts +15 -10
  244. package/dist/esm/actions/getStepTransaction.d.ts.map +1 -0
  245. package/dist/esm/actions/getStepTransaction.js +32 -31
  246. package/dist/esm/actions/getStepTransaction.js.map +1 -1
  247. package/dist/esm/actions/getToken.d.ts +16 -11
  248. package/dist/esm/actions/getToken.d.ts.map +1 -0
  249. package/dist/esm/actions/getToken.js +22 -24
  250. package/dist/esm/actions/getToken.js.map +1 -1
  251. package/dist/esm/actions/getTokenBalance.d.ts +16 -11
  252. package/dist/esm/actions/getTokenBalance.d.ts.map +1 -0
  253. package/dist/esm/actions/getTokenBalance.js +16 -12
  254. package/dist/esm/actions/getTokenBalance.js.map +1 -1
  255. package/dist/esm/actions/getTokenBalances.d.ts +16 -11
  256. package/dist/esm/actions/getTokenBalances.d.ts.map +1 -0
  257. package/dist/esm/actions/getTokenBalances.js +12 -12
  258. package/dist/esm/actions/getTokenBalances.js.map +1 -1
  259. package/dist/esm/actions/getTokenBalancesByChain.d.ts +18 -13
  260. package/dist/esm/actions/getTokenBalancesByChain.d.ts.map +1 -0
  261. package/dist/esm/actions/getTokenBalancesByChain.js +22 -37
  262. package/dist/esm/actions/getTokenBalancesByChain.js.map +1 -1
  263. package/dist/esm/actions/getTokens.d.ts +17 -12
  264. package/dist/esm/actions/getTokens.d.ts.map +1 -0
  265. package/dist/esm/actions/getTokens.js +14 -16
  266. package/dist/esm/actions/getTokens.js.map +1 -1
  267. package/dist/esm/actions/getTools.d.ts +14 -9
  268. package/dist/esm/actions/getTools.d.ts.map +1 -0
  269. package/dist/esm/actions/getTools.js +17 -18
  270. package/dist/esm/actions/getTools.js.map +1 -1
  271. package/dist/esm/actions/getTransactionHistory.d.ts +25 -15
  272. package/dist/esm/actions/getTransactionHistory.d.ts.map +1 -0
  273. package/dist/esm/actions/getTransactionHistory.js +27 -31
  274. package/dist/esm/actions/getTransactionHistory.js.map +1 -1
  275. package/dist/esm/actions/getWalletBalances.d.ts +15 -10
  276. package/dist/esm/actions/getWalletBalances.d.ts.map +1 -0
  277. package/dist/esm/actions/getWalletBalances.js +16 -17
  278. package/dist/esm/actions/getWalletBalances.js.map +1 -1
  279. package/dist/esm/actions/index.d.ts +171 -166
  280. package/dist/esm/actions/index.d.ts.map +1 -0
  281. package/dist/esm/actions/index.js +49 -45
  282. package/dist/esm/actions/index.js.map +1 -1
  283. package/dist/esm/actions/patchContractCalls.d.ts +14 -9
  284. package/dist/esm/actions/patchContractCalls.d.ts.map +1 -0
  285. package/dist/esm/actions/patchContractCalls.js +12 -10
  286. package/dist/esm/actions/patchContractCalls.js.map +1 -1
  287. package/dist/esm/actions/relayTransaction.d.ts +15 -10
  288. package/dist/esm/actions/relayTransaction.d.ts.map +1 -0
  289. package/dist/esm/actions/relayTransaction.js +30 -41
  290. package/dist/esm/actions/relayTransaction.js.map +1 -1
  291. package/dist/esm/client/createClient.d.ts +7 -2
  292. package/dist/esm/client/createClient.d.ts.map +1 -0
  293. package/dist/esm/client/createClient.js +67 -74
  294. package/dist/esm/client/createClient.js.map +1 -1
  295. package/dist/esm/client/getClientStorage.d.ts +14 -8
  296. package/dist/esm/client/getClientStorage.d.ts.map +1 -0
  297. package/dist/esm/client/getClientStorage.js +45 -49
  298. package/dist/esm/client/getClientStorage.js.map +1 -1
  299. package/dist/esm/core/BaseStepExecutionTask.d.ts +9 -4
  300. package/dist/esm/core/BaseStepExecutionTask.d.ts.map +1 -0
  301. package/dist/esm/core/BaseStepExecutionTask.js +9 -5
  302. package/dist/esm/core/BaseStepExecutionTask.js.map +1 -1
  303. package/dist/esm/core/BaseStepExecutor.d.ts +23 -18
  304. package/dist/esm/core/BaseStepExecutor.d.ts.map +1 -0
  305. package/dist/esm/core/BaseStepExecutor.js +67 -77
  306. package/dist/esm/core/BaseStepExecutor.js.map +1 -1
  307. package/dist/esm/core/StatusManager.d.ts +79 -65
  308. package/dist/esm/core/StatusManager.d.ts.map +1 -0
  309. package/dist/esm/core/StatusManager.js +157 -183
  310. package/dist/esm/core/StatusManager.js.map +1 -1
  311. package/dist/esm/core/TaskPipeline.d.ts +11 -6
  312. package/dist/esm/core/TaskPipeline.d.ts.map +1 -0
  313. package/dist/esm/core/TaskPipeline.js +19 -22
  314. package/dist/esm/core/TaskPipeline.js.map +1 -1
  315. package/dist/esm/core/actionMessages.d.ts +9 -4
  316. package/dist/esm/core/actionMessages.d.ts.map +1 -0
  317. package/dist/esm/core/actionMessages.js +72 -72
  318. package/dist/esm/core/actionMessages.js.map +1 -1
  319. package/dist/esm/core/execution.d.ts +42 -37
  320. package/dist/esm/core/execution.d.ts.map +1 -0
  321. package/dist/esm/core/execution.js +126 -173
  322. package/dist/esm/core/execution.js.map +1 -1
  323. package/dist/esm/core/executionState.d.ts +17 -13
  324. package/dist/esm/core/executionState.d.ts.map +1 -0
  325. package/dist/esm/core/executionState.js +26 -24
  326. package/dist/esm/core/executionState.js.map +1 -1
  327. package/dist/esm/core/prepareRestart.d.ts +7 -2
  328. package/dist/esm/core/prepareRestart.d.ts.map +1 -0
  329. package/dist/esm/core/prepareRestart.js +18 -21
  330. package/dist/esm/core/prepareRestart.js.map +1 -1
  331. package/dist/esm/core/storage.d.ts +18 -14
  332. package/dist/esm/core/storage.d.ts.map +1 -0
  333. package/dist/esm/core/storage.js +30 -28
  334. package/dist/esm/core/storage.js.map +1 -1
  335. package/dist/esm/core/tasks/CheckBalanceTask.d.ts +9 -4
  336. package/dist/esm/core/tasks/CheckBalanceTask.d.ts.map +1 -0
  337. package/dist/esm/core/tasks/CheckBalanceTask.js +23 -21
  338. package/dist/esm/core/tasks/CheckBalanceTask.js.map +1 -1
  339. package/dist/esm/core/tasks/PrepareTransactionTask.d.ts +9 -4
  340. package/dist/esm/core/tasks/PrepareTransactionTask.d.ts.map +1 -0
  341. package/dist/esm/core/tasks/PrepareTransactionTask.js +28 -31
  342. package/dist/esm/core/tasks/PrepareTransactionTask.js.map +1 -1
  343. package/dist/esm/core/tasks/WaitForTransactionStatusTask.d.ts +12 -7
  344. package/dist/esm/core/tasks/WaitForTransactionStatusTask.d.ts.map +1 -0
  345. package/dist/esm/core/tasks/WaitForTransactionStatusTask.js +61 -73
  346. package/dist/esm/core/tasks/WaitForTransactionStatusTask.js.map +1 -1
  347. package/dist/esm/core/tasks/helpers/checkBalance.d.ts +8 -3
  348. package/dist/esm/core/tasks/helpers/checkBalance.d.ts.map +1 -0
  349. package/dist/esm/core/tasks/helpers/checkBalance.js +25 -32
  350. package/dist/esm/core/tasks/helpers/checkBalance.js.map +1 -1
  351. package/dist/esm/core/tasks/helpers/getTransactionRequestData.d.ts +7 -2
  352. package/dist/esm/core/tasks/helpers/getTransactionRequestData.d.ts.map +1 -0
  353. package/dist/esm/core/tasks/helpers/getTransactionRequestData.js +22 -24
  354. package/dist/esm/core/tasks/helpers/getTransactionRequestData.js.map +1 -1
  355. package/dist/esm/core/tasks/helpers/stepComparison.d.ts +20 -15
  356. package/dist/esm/core/tasks/helpers/stepComparison.d.ts.map +1 -0
  357. package/dist/esm/core/tasks/helpers/stepComparison.js +28 -32
  358. package/dist/esm/core/tasks/helpers/stepComparison.js.map +1 -1
  359. package/dist/esm/core/tasks/helpers/waitForTransactionStatus.d.ts +9 -4
  360. package/dist/esm/core/tasks/helpers/waitForTransactionStatus.d.ts.map +1 -0
  361. package/dist/esm/core/tasks/helpers/waitForTransactionStatus.js +44 -50
  362. package/dist/esm/core/tasks/helpers/waitForTransactionStatus.js.map +1 -1
  363. package/dist/esm/core/utils.d.ts +16 -98
  364. package/dist/esm/core/utils.d.ts.map +1 -0
  365. package/dist/esm/core/utils.js +36 -45
  366. package/dist/esm/core/utils.js.map +1 -1
  367. package/dist/esm/errors/SDKError.d.ts +16 -11
  368. package/dist/esm/errors/SDKError.d.ts.map +1 -0
  369. package/dist/esm/errors/SDKError.js +22 -20
  370. package/dist/esm/errors/SDKError.js.map +1 -1
  371. package/dist/esm/errors/baseError.d.ts +10 -5
  372. package/dist/esm/errors/baseError.d.ts.map +1 -0
  373. package/dist/esm/errors/baseError.js +17 -17
  374. package/dist/esm/errors/baseError.js.map +1 -1
  375. package/dist/esm/errors/constants.d.ts +52 -48
  376. package/dist/esm/errors/constants.d.ts.map +1 -0
  377. package/dist/esm/errors/constants.js +57 -53
  378. package/dist/esm/errors/constants.js.map +1 -1
  379. package/dist/esm/errors/errors.d.ts +30 -25
  380. package/dist/esm/errors/errors.d.ts.map +1 -0
  381. package/dist/esm/errors/errors.js +52 -48
  382. package/dist/esm/errors/errors.js.map +1 -1
  383. package/dist/esm/errors/httpError.d.ts +21 -17
  384. package/dist/esm/errors/httpError.d.ts.map +1 -0
  385. package/dist/esm/errors/httpError.js +62 -62
  386. package/dist/esm/errors/httpError.js.map +1 -1
  387. package/dist/esm/errors/utils/baseErrorRootCause.d.ts +8 -3
  388. package/dist/esm/errors/utils/baseErrorRootCause.d.ts.map +1 -0
  389. package/dist/esm/errors/utils/baseErrorRootCause.js +13 -13
  390. package/dist/esm/errors/utils/baseErrorRootCause.js.map +1 -1
  391. package/dist/esm/errors/utils/rootCause.d.ts +5 -1
  392. package/dist/esm/errors/utils/rootCause.d.ts.map +1 -0
  393. package/dist/esm/errors/utils/rootCause.js +8 -6
  394. package/dist/esm/errors/utils/rootCause.js.map +1 -1
  395. package/dist/esm/index.d.ts +54 -55
  396. package/dist/esm/index.js +52 -54
  397. package/dist/esm/package.json +1 -1
  398. package/dist/esm/types/actions.d.ts +12 -7
  399. package/dist/esm/types/actions.d.ts.map +1 -0
  400. package/dist/esm/types/actions.js +0 -1
  401. package/dist/esm/types/core.d.ts +183 -178
  402. package/dist/esm/types/core.d.ts.map +1 -0
  403. package/dist/esm/types/core.js +0 -1
  404. package/dist/esm/types/execution.d.ts +25 -20
  405. package/dist/esm/types/execution.d.ts.map +1 -0
  406. package/dist/esm/types/execution.js +0 -1
  407. package/dist/esm/types/request.d.ts +6 -2
  408. package/dist/esm/types/request.d.ts.map +1 -0
  409. package/dist/esm/types/request.js +0 -1
  410. package/dist/esm/utils/checkPackageUpdates.d.ts +5 -1
  411. package/dist/esm/utils/checkPackageUpdates.d.ts.map +1 -0
  412. package/dist/esm/utils/checkPackageUpdates.js +12 -15
  413. package/dist/esm/utils/checkPackageUpdates.js.map +1 -1
  414. package/dist/esm/utils/convertQuoteToRoute.d.ts +19 -15
  415. package/dist/esm/utils/convertQuoteToRoute.d.ts.map +1 -0
  416. package/dist/esm/utils/convertQuoteToRoute.js +72 -92
  417. package/dist/esm/utils/convertQuoteToRoute.js.map +1 -1
  418. package/dist/esm/utils/decode.d.ts +5 -1
  419. package/dist/esm/utils/decode.d.ts.map +1 -0
  420. package/dist/esm/utils/decode.js +6 -8
  421. package/dist/esm/utils/decode.js.map +1 -1
  422. package/dist/esm/utils/fetchTxErrorDetails.d.ts +5 -1
  423. package/dist/esm/utils/fetchTxErrorDetails.d.ts.map +1 -0
  424. package/dist/esm/utils/fetchTxErrorDetails.js +10 -7
  425. package/dist/esm/utils/fetchTxErrorDetails.js.map +1 -1
  426. package/dist/esm/utils/formatUnits.d.ts +7 -3
  427. package/dist/esm/utils/formatUnits.d.ts.map +1 -0
  428. package/dist/esm/utils/formatUnits.js +14 -15
  429. package/dist/esm/utils/formatUnits.js.map +1 -1
  430. package/dist/esm/utils/getTransactionMessage.d.ts +8 -3
  431. package/dist/esm/utils/getTransactionMessage.d.ts.map +1 -0
  432. package/dist/esm/utils/getTransactionMessage.js +9 -8
  433. package/dist/esm/utils/getTransactionMessage.js.map +1 -1
  434. package/dist/esm/utils/isHex.d.ts +9 -3
  435. package/dist/esm/utils/isHex.d.ts.map +1 -0
  436. package/dist/esm/utils/isHex.js +8 -8
  437. package/dist/esm/utils/isHex.js.map +1 -1
  438. package/dist/esm/utils/isRoutesRequest.d.ts +7 -2
  439. package/dist/esm/utils/isRoutesRequest.d.ts.map +1 -0
  440. package/dist/esm/utils/isRoutesRequest.js +8 -12
  441. package/dist/esm/utils/isRoutesRequest.js.map +1 -1
  442. package/dist/esm/utils/isStep.d.ts +7 -2
  443. package/dist/esm/utils/isStep.d.ts.map +1 -0
  444. package/dist/esm/utils/isStep.js +16 -23
  445. package/dist/esm/utils/isStep.js.map +1 -1
  446. package/dist/esm/utils/isToken.d.ts +7 -2
  447. package/dist/esm/utils/isToken.d.ts.map +1 -0
  448. package/dist/esm/utils/isToken.js +7 -5
  449. package/dist/esm/utils/isToken.js.map +1 -1
  450. package/dist/esm/utils/parseUnits.d.ts +7 -3
  451. package/dist/esm/utils/parseUnits.d.ts.map +1 -0
  452. package/dist/esm/utils/parseUnits.js +31 -43
  453. package/dist/esm/utils/parseUnits.js.map +1 -1
  454. package/dist/esm/utils/request.d.ts +10 -5
  455. package/dist/esm/utils/request.d.ts.map +1 -0
  456. package/dist/esm/utils/request.js +52 -67
  457. package/dist/esm/utils/request.js.map +1 -1
  458. package/dist/esm/utils/sleep.d.ts +5 -1
  459. package/dist/esm/utils/sleep.d.ts.map +1 -0
  460. package/dist/esm/utils/sleep.js +8 -4
  461. package/dist/esm/utils/sleep.js.map +1 -1
  462. package/dist/esm/utils/waitForResult.d.ts +13 -9
  463. package/dist/esm/utils/waitForResult.d.ts.map +1 -0
  464. package/dist/esm/utils/waitForResult.js +32 -35
  465. package/dist/esm/utils/waitForResult.js.map +1 -1
  466. package/dist/esm/utils/withDedupe.d.ts +18 -12
  467. package/dist/esm/utils/withDedupe.d.ts.map +1 -0
  468. package/dist/esm/utils/withDedupe.js +27 -29
  469. package/dist/esm/utils/withDedupe.js.map +1 -1
  470. package/dist/esm/version.d.ts +6 -2
  471. package/dist/esm/version.d.ts.map +1 -0
  472. package/dist/esm/version.js +6 -2
  473. package/dist/esm/version.js.map +1 -1
  474. package/package.json +5 -5
  475. package/src/actions/getChains.ts +2 -1
  476. package/src/actions/getQuote.ts +4 -1
  477. package/src/actions/getRelayerQuote.ts +4 -1
  478. package/src/actions/getStepTransaction.ts +13 -5
  479. package/src/actions/getTokens.ts +6 -3
  480. package/src/actions/getTools.ts +2 -1
  481. package/src/client/createClient.ts +9 -7
  482. package/src/client/getClientStorage.ts +8 -1
  483. package/src/core/BaseStepExecutor.ts +2 -3
  484. package/src/core/StatusManager.ts +0 -4
  485. package/src/core/prepareRestart.ts +1 -3
  486. package/src/core/tasks/helpers/waitForTransactionStatus.ts +1 -0
  487. package/src/core/utils.ts +1 -1
  488. package/src/errors/httpError.ts +4 -6
  489. package/src/errors/utils/baseErrorRootCause.ts +2 -2
  490. package/src/errors/utils/rootCause.ts +1 -1
  491. package/src/types/core.ts +1 -1
  492. package/src/utils/checkPackageUpdates.ts +1 -1
  493. package/src/utils/convertQuoteToRoute.ts +1 -1
  494. package/src/utils/decode.ts +1 -1
  495. package/src/utils/fetchTxErrorDetails.ts +7 -2
  496. package/src/utils/formatUnits.ts +1 -1
  497. package/src/utils/parseUnits.ts +1 -1
  498. package/src/utils/withDedupe.ts +1 -1
  499. package/src/version.ts +1 -1
  500. package/dist/cjs/index.js.map +0 -1
  501. package/dist/cjs/types/actions.js.map +0 -1
  502. package/dist/cjs/types/core.js.map +0 -1
  503. package/dist/cjs/types/execution.js.map +0 -1
  504. package/dist/cjs/types/request.js.map +0 -1
  505. package/dist/esm/index.js.map +0 -1
  506. package/dist/esm/types/actions.js.map +0 -1
  507. package/dist/esm/types/core.js.map +0 -1
  508. package/dist/esm/types/execution.js.map +0 -1
  509. package/dist/esm/types/request.js.map +0 -1
  510. package/dist/types/actions/getChains.d.ts +0 -13
  511. package/dist/types/actions/getChains.d.ts.map +0 -1
  512. package/dist/types/actions/getConnections.d.ts +0 -11
  513. package/dist/types/actions/getConnections.d.ts.map +0 -1
  514. package/dist/types/actions/getContractCallsQuote.d.ts +0 -12
  515. package/dist/types/actions/getContractCallsQuote.d.ts.map +0 -1
  516. package/dist/types/actions/getGasRecommendation.d.ts +0 -12
  517. package/dist/types/actions/getGasRecommendation.d.ts.map +0 -1
  518. package/dist/types/actions/getNameServiceAddress.d.ts +0 -11
  519. package/dist/types/actions/getNameServiceAddress.d.ts.map +0 -1
  520. package/dist/types/actions/getQuote.d.ts +0 -14
  521. package/dist/types/actions/getQuote.d.ts.map +0 -1
  522. package/dist/types/actions/getRelayedTransactionStatus.d.ts +0 -12
  523. package/dist/types/actions/getRelayedTransactionStatus.d.ts.map +0 -1
  524. package/dist/types/actions/getRelayerQuote.d.ts +0 -13
  525. package/dist/types/actions/getRelayerQuote.d.ts.map +0 -1
  526. package/dist/types/actions/getRoutes.d.ts +0 -12
  527. package/dist/types/actions/getRoutes.d.ts.map +0 -1
  528. package/dist/types/actions/getStatus.d.ts +0 -13
  529. package/dist/types/actions/getStatus.d.ts.map +0 -1
  530. package/dist/types/actions/getStepTransaction.d.ts +0 -12
  531. package/dist/types/actions/getStepTransaction.d.ts.map +0 -1
  532. package/dist/types/actions/getToken.d.ts +0 -13
  533. package/dist/types/actions/getToken.d.ts.map +0 -1
  534. package/dist/types/actions/getTokenBalance.d.ts +0 -13
  535. package/dist/types/actions/getTokenBalance.d.ts.map +0 -1
  536. package/dist/types/actions/getTokenBalances.d.ts +0 -13
  537. package/dist/types/actions/getTokenBalances.d.ts.map +0 -1
  538. package/dist/types/actions/getTokenBalancesByChain.d.ts +0 -17
  539. package/dist/types/actions/getTokenBalancesByChain.d.ts.map +0 -1
  540. package/dist/types/actions/getTokens.d.ts +0 -16
  541. package/dist/types/actions/getTokens.d.ts.map +0 -1
  542. package/dist/types/actions/getTools.d.ts +0 -11
  543. package/dist/types/actions/getTools.d.ts.map +0 -1
  544. package/dist/types/actions/getTransactionHistory.d.ts +0 -17
  545. package/dist/types/actions/getTransactionHistory.d.ts.map +0 -1
  546. package/dist/types/actions/getWalletBalances.d.ts +0 -12
  547. package/dist/types/actions/getWalletBalances.d.ts.map +0 -1
  548. package/dist/types/actions/index.d.ts +0 -168
  549. package/dist/types/actions/index.d.ts.map +0 -1
  550. package/dist/types/actions/patchContractCalls.d.ts +0 -11
  551. package/dist/types/actions/patchContractCalls.d.ts.map +0 -1
  552. package/dist/types/actions/relayTransaction.d.ts +0 -12
  553. package/dist/types/actions/relayTransaction.d.ts.map +0 -1
  554. package/dist/types/client/createClient.d.ts +0 -3
  555. package/dist/types/client/createClient.d.ts.map +0 -1
  556. package/dist/types/client/getClientStorage.d.ts +0 -9
  557. package/dist/types/client/getClientStorage.d.ts.map +0 -1
  558. package/dist/types/core/BaseStepExecutionTask.d.ts +0 -6
  559. package/dist/types/core/BaseStepExecutionTask.d.ts.map +0 -1
  560. package/dist/types/core/BaseStepExecutor.d.ts +0 -20
  561. package/dist/types/core/BaseStepExecutor.d.ts.map +0 -1
  562. package/dist/types/core/StatusManager.d.ts +0 -70
  563. package/dist/types/core/StatusManager.d.ts.map +0 -1
  564. package/dist/types/core/TaskPipeline.d.ts +0 -8
  565. package/dist/types/core/TaskPipeline.d.ts.map +0 -1
  566. package/dist/types/core/actionMessages.d.ts +0 -5
  567. package/dist/types/core/actionMessages.d.ts.map +0 -1
  568. package/dist/types/core/execution.d.ts +0 -44
  569. package/dist/types/core/execution.d.ts.map +0 -1
  570. package/dist/types/core/executionState.d.ts +0 -18
  571. package/dist/types/core/executionState.d.ts.map +0 -1
  572. package/dist/types/core/prepareRestart.d.ts +0 -3
  573. package/dist/types/core/prepareRestart.d.ts.map +0 -1
  574. package/dist/types/core/storage.d.ts +0 -18
  575. package/dist/types/core/storage.d.ts.map +0 -1
  576. package/dist/types/core/tasks/CheckBalanceTask.d.ts +0 -6
  577. package/dist/types/core/tasks/CheckBalanceTask.d.ts.map +0 -1
  578. package/dist/types/core/tasks/PrepareTransactionTask.d.ts +0 -6
  579. package/dist/types/core/tasks/PrepareTransactionTask.d.ts.map +0 -1
  580. package/dist/types/core/tasks/WaitForTransactionStatusTask.d.ts +0 -9
  581. package/dist/types/core/tasks/WaitForTransactionStatusTask.d.ts.map +0 -1
  582. package/dist/types/core/tasks/helpers/checkBalance.d.ts +0 -4
  583. package/dist/types/core/tasks/helpers/checkBalance.d.ts.map +0 -1
  584. package/dist/types/core/tasks/helpers/getTransactionRequestData.d.ts +0 -3
  585. package/dist/types/core/tasks/helpers/getTransactionRequestData.d.ts.map +0 -1
  586. package/dist/types/core/tasks/helpers/stepComparison.d.ts +0 -17
  587. package/dist/types/core/tasks/helpers/stepComparison.d.ts.map +0 -1
  588. package/dist/types/core/tasks/helpers/waitForTransactionStatus.d.ts +0 -5
  589. package/dist/types/core/tasks/helpers/waitForTransactionStatus.d.ts.map +0 -1
  590. package/dist/types/core/utils.d.ts +0 -100
  591. package/dist/types/core/utils.d.ts.map +0 -1
  592. package/dist/types/errors/SDKError.d.ts +0 -13
  593. package/dist/types/errors/SDKError.d.ts.map +0 -1
  594. package/dist/types/errors/baseError.d.ts +0 -7
  595. package/dist/types/errors/baseError.d.ts.map +0 -1
  596. package/dist/types/errors/constants.d.ts +0 -52
  597. package/dist/types/errors/constants.d.ts.map +0 -1
  598. package/dist/types/errors/errors.d.ts +0 -34
  599. package/dist/types/errors/errors.d.ts.map +0 -1
  600. package/dist/types/errors/httpError.d.ts +0 -21
  601. package/dist/types/errors/httpError.d.ts.map +0 -1
  602. package/dist/types/errors/utils/baseErrorRootCause.d.ts +0 -4
  603. package/dist/types/errors/utils/baseErrorRootCause.d.ts.map +0 -1
  604. package/dist/types/errors/utils/rootCause.d.ts +0 -2
  605. package/dist/types/errors/utils/rootCause.d.ts.map +0 -1
  606. package/dist/types/index.d.ts +0 -56
  607. package/dist/types/index.d.ts.map +0 -1
  608. package/dist/types/types/actions.d.ts +0 -10
  609. package/dist/types/types/actions.d.ts.map +0 -1
  610. package/dist/types/types/core.d.ts +0 -184
  611. package/dist/types/types/core.d.ts.map +0 -1
  612. package/dist/types/types/execution.d.ts +0 -24
  613. package/dist/types/types/execution.d.ts.map +0 -1
  614. package/dist/types/types/request.d.ts +0 -4
  615. package/dist/types/types/request.d.ts.map +0 -1
  616. package/dist/types/utils/checkPackageUpdates.d.ts +0 -2
  617. package/dist/types/utils/checkPackageUpdates.d.ts.map +0 -1
  618. package/dist/types/utils/convertQuoteToRoute.d.ts +0 -19
  619. package/dist/types/utils/convertQuoteToRoute.d.ts.map +0 -1
  620. package/dist/types/utils/decode.d.ts +0 -2
  621. package/dist/types/utils/decode.d.ts.map +0 -1
  622. package/dist/types/utils/fetchTxErrorDetails.d.ts +0 -2
  623. package/dist/types/utils/fetchTxErrorDetails.d.ts.map +0 -1
  624. package/dist/types/utils/formatUnits.d.ts +0 -5
  625. package/dist/types/utils/formatUnits.d.ts.map +0 -1
  626. package/dist/types/utils/getTransactionMessage.d.ts +0 -4
  627. package/dist/types/utils/getTransactionMessage.d.ts.map +0 -1
  628. package/dist/types/utils/isHex.d.ts +0 -5
  629. package/dist/types/utils/isHex.d.ts.map +0 -1
  630. package/dist/types/utils/isRoutesRequest.d.ts +0 -3
  631. package/dist/types/utils/isRoutesRequest.d.ts.map +0 -1
  632. package/dist/types/utils/isStep.d.ts +0 -3
  633. package/dist/types/utils/isStep.d.ts.map +0 -1
  634. package/dist/types/utils/isToken.d.ts +0 -3
  635. package/dist/types/utils/isToken.d.ts.map +0 -1
  636. package/dist/types/utils/parseUnits.d.ts +0 -5
  637. package/dist/types/utils/parseUnits.d.ts.map +0 -1
  638. package/dist/types/utils/request.d.ts +0 -7
  639. package/dist/types/utils/request.d.ts.map +0 -1
  640. package/dist/types/utils/sleep.d.ts +0 -2
  641. package/dist/types/utils/sleep.d.ts.map +0 -1
  642. package/dist/types/utils/waitForResult.d.ts +0 -11
  643. package/dist/types/utils/waitForResult.d.ts.map +0 -1
  644. package/dist/types/utils/withDedupe.d.ts +0 -18
  645. package/dist/types/utils/withDedupe.d.ts.map +0 -1
  646. package/dist/types/version.d.ts +0 -3
  647. package/dist/types/version.d.ts.map +0 -1
@@ -1,74 +1,62 @@
1
- import { LiFiErrorCode } from '../../errors/constants.js';
2
- import { TransactionError } from '../../errors/errors.js';
3
- import { getTransactionFailedMessage } from '../../utils/getTransactionMessage.js';
4
- import { BaseStepExecutionTask } from '../BaseStepExecutionTask.js';
5
- import { waitForTransactionStatus } from './helpers/waitForTransactionStatus.js';
6
- export class WaitForTransactionStatusTask extends BaseStepExecutionTask {
7
- actionType;
8
- constructor(actionType) {
9
- super();
10
- this.actionType = actionType;
11
- }
12
- async run(context) {
13
- const { client, step, statusManager, pollingIntervalMs, toChain, isBridgeExecution, } = context;
14
- // At this point, we should have a txHash or taskId
15
- // taskId is used for custom integrations that don't use the standard transaction hash
16
- let transactionHash;
17
- try {
18
- const swapOrBridgeAction = statusManager.findAction(step, isBridgeExecution ? 'CROSS_CHAIN' : 'SWAP');
19
- transactionHash = swapOrBridgeAction?.txHash || swapOrBridgeAction?.taskId;
20
- // Wait for the transaction status on the destination chain
21
- if (!transactionHash) {
22
- throw new Error('Transaction hash is undefined.');
23
- }
24
- const action = statusManager.initializeAction({
25
- step,
26
- type: this.actionType,
27
- chainId: this.actionType === 'RECEIVING_CHAIN'
28
- ? step.action.toChainId
29
- : step.action.fromChainId,
30
- status: 'PENDING',
31
- });
32
- const statusResponse = (await waitForTransactionStatus(client, statusManager, transactionHash, step, action.type, pollingIntervalMs));
33
- const statusReceiving = statusResponse.receiving;
34
- // Update action status
35
- statusManager.updateAction(step, action.type, 'DONE', {
36
- chainId: statusReceiving?.chainId || toChain.id,
37
- substatus: statusResponse.substatus,
38
- substatusMessage: statusResponse.substatusMessage,
39
- txHash: statusReceiving?.txHash,
40
- txLink: statusReceiving?.txLink ||
41
- `${toChain.metamask.blockExplorerUrls[0]}tx/${statusReceiving?.txHash}`,
42
- });
43
- // Update execution status
44
- statusManager.updateExecution(step, {
45
- status: 'DONE',
46
- ...(statusResponse.sending.amount && {
47
- fromAmount: statusResponse.sending.amount,
48
- }),
49
- ...(statusReceiving?.amount && { toAmount: statusReceiving.amount }),
50
- ...(statusReceiving?.token && { toToken: statusReceiving.token }),
51
- internalTxLink: statusResponse?.lifiExplorerLink,
52
- externalTxLink: statusResponse?.bridgeExplorerLink,
53
- gasCosts: [
54
- {
55
- amount: statusResponse.sending.gasAmount,
56
- amountUSD: statusResponse.sending.gasAmountUSD,
57
- token: statusResponse.sending.gasToken,
58
- estimate: statusResponse.sending.gasUsed,
59
- limit: statusResponse.sending.gasUsed,
60
- price: statusResponse.sending.gasPrice,
61
- type: 'SEND',
62
- },
63
- ],
64
- });
65
- return { status: 'COMPLETED' };
66
- }
67
- catch (e) {
68
- const htmlMessage = await getTransactionFailedMessage(client, step, `${toChain.metamask.blockExplorerUrls[0]}tx/${transactionHash}`);
69
- throw new TransactionError(LiFiErrorCode.TransactionFailed, htmlMessage ??
70
- 'Failed while waiting for status of destination chain transaction.', e);
71
- }
72
- }
73
- }
1
+ import { LiFiErrorCode } from "../../errors/constants.js";
2
+ import { TransactionError } from "../../errors/errors.js";
3
+ import { BaseStepExecutionTask } from "../BaseStepExecutionTask.js";
4
+ import { getTransactionFailedMessage } from "../../utils/getTransactionMessage.js";
5
+ import { waitForTransactionStatus } from "./helpers/waitForTransactionStatus.js";
6
+ //#region src/core/tasks/WaitForTransactionStatusTask.ts
7
+ var WaitForTransactionStatusTask = class extends BaseStepExecutionTask {
8
+ actionType;
9
+ constructor(actionType) {
10
+ super();
11
+ this.actionType = actionType;
12
+ }
13
+ async run(context) {
14
+ const { client, step, statusManager, pollingIntervalMs, toChain, isBridgeExecution } = context;
15
+ let transactionHash;
16
+ try {
17
+ const swapOrBridgeAction = statusManager.findAction(step, isBridgeExecution ? "CROSS_CHAIN" : "SWAP");
18
+ transactionHash = swapOrBridgeAction?.txHash || swapOrBridgeAction?.taskId;
19
+ if (!transactionHash) throw new Error("Transaction hash is undefined.");
20
+ const action = statusManager.initializeAction({
21
+ step,
22
+ type: this.actionType,
23
+ chainId: this.actionType === "RECEIVING_CHAIN" ? step.action.toChainId : step.action.fromChainId,
24
+ status: "PENDING"
25
+ });
26
+ const statusResponse = await waitForTransactionStatus(client, statusManager, transactionHash, step, action.type, pollingIntervalMs);
27
+ const statusReceiving = statusResponse.receiving;
28
+ statusManager.updateAction(step, action.type, "DONE", {
29
+ chainId: statusReceiving?.chainId || toChain.id,
30
+ substatus: statusResponse.substatus,
31
+ substatusMessage: statusResponse.substatusMessage,
32
+ txHash: statusReceiving?.txHash,
33
+ txLink: statusReceiving?.txLink || `${toChain.metamask.blockExplorerUrls[0]}tx/${statusReceiving?.txHash}`
34
+ });
35
+ statusManager.updateExecution(step, {
36
+ status: "DONE",
37
+ ...statusResponse.sending.amount && { fromAmount: statusResponse.sending.amount },
38
+ ...statusReceiving?.amount && { toAmount: statusReceiving.amount },
39
+ ...statusReceiving?.token && { toToken: statusReceiving.token },
40
+ internalTxLink: statusResponse?.lifiExplorerLink,
41
+ externalTxLink: statusResponse?.bridgeExplorerLink,
42
+ gasCosts: [{
43
+ amount: statusResponse.sending.gasAmount,
44
+ amountUSD: statusResponse.sending.gasAmountUSD,
45
+ token: statusResponse.sending.gasToken,
46
+ estimate: statusResponse.sending.gasUsed,
47
+ limit: statusResponse.sending.gasUsed,
48
+ price: statusResponse.sending.gasPrice,
49
+ type: "SEND"
50
+ }]
51
+ });
52
+ return { status: "COMPLETED" };
53
+ } catch (e) {
54
+ const htmlMessage = await getTransactionFailedMessage(client, step, `${toChain.metamask.blockExplorerUrls[0]}tx/${transactionHash}`);
55
+ throw new TransactionError(LiFiErrorCode.TransactionFailed, htmlMessage ?? "Failed while waiting for status of destination chain transaction.", e);
56
+ }
57
+ }
58
+ };
59
+ //#endregion
60
+ export { WaitForTransactionStatusTask };
61
+
74
62
  //# sourceMappingURL=WaitForTransactionStatusTask.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"WaitForTransactionStatusTask.js","sourceRoot":"","sources":["../../../../src/core/tasks/WaitForTransactionStatusTask.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AAGzD,OAAO,EAAE,2BAA2B,EAAE,MAAM,sCAAsC,CAAA;AAClF,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAA;AACnE,OAAO,EAAE,wBAAwB,EAAE,MAAM,uCAAuC,CAAA;AAEhF,MAAM,OAAO,4BAA6B,SAAQ,qBAAqB;IAC5D,UAAU,CAAqB;IAExC,YAAY,UAA+B;QACzC,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;IAC9B,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,OAA4B;QACpC,MAAM,EACJ,MAAM,EACN,IAAI,EACJ,aAAa,EACb,iBAAiB,EACjB,OAAO,EACP,iBAAiB,GAClB,GAAG,OAAO,CAAA;QAEX,mDAAmD;QACnD,sFAAsF;QACtF,IAAI,eAAmC,CAAA;QACvC,IAAI,CAAC;YACH,MAAM,kBAAkB,GAAG,aAAa,CAAC,UAAU,CACjD,IAAI,EACJ,iBAAiB,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAC3C,CAAA;YACD,eAAe,GAAG,kBAAkB,EAAE,MAAM,IAAI,kBAAkB,EAAE,MAAM,CAAA;YAE1E,2DAA2D;YAC3D,IAAI,CAAC,eAAe,EAAE,CAAC;gBACrB,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;YACnD,CAAC;YAED,MAAM,MAAM,GAAG,aAAa,CAAC,gBAAgB,CAAC;gBAC5C,IAAI;gBACJ,IAAI,EAAE,IAAI,CAAC,UAAU;gBACrB,OAAO,EACL,IAAI,CAAC,UAAU,KAAK,iBAAiB;oBACnC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS;oBACvB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW;gBAC7B,MAAM,EAAE,SAAS;aAClB,CAAC,CAAA;YAEF,MAAM,cAAc,GAAG,CAAC,MAAM,wBAAwB,CACpD,MAAM,EACN,aAAa,EACb,eAAe,EACf,IAAI,EACJ,MAAM,CAAC,IAAI,EACX,iBAAiB,CAClB,CAAmB,CAAA;YAEpB,MAAM,eAAe,GACnB,cAAc,CAAC,SAAoC,CAAA;YAErD,uBAAuB;YACvB,aAAa,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE;gBACpD,OAAO,EAAE,eAAe,EAAE,OAAO,IAAI,OAAO,CAAC,EAAE;gBAC/C,SAAS,EAAE,cAAc,CAAC,SAAS;gBACnC,gBAAgB,EAAE,cAAc,CAAC,gBAAgB;gBACjD,MAAM,EAAE,eAAe,EAAE,MAAM;gBAC/B,MAAM,EACJ,eAAe,EAAE,MAAM;oBACvB,GAAG,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC,CAAC,MAAM,eAAe,EAAE,MAAM,EAAE;aAC1E,CAAC,CAAA;YAEF,0BAA0B;YAC1B,aAAa,CAAC,eAAe,CAAC,IAAI,EAAE;gBAClC,MAAM,EAAE,MAAM;gBACd,GAAG,CAAC,cAAc,CAAC,OAAO,CAAC,MAAM,IAAI;oBACnC,UAAU,EAAE,cAAc,CAAC,OAAO,CAAC,MAAM;iBAC1C,CAAC;gBACF,GAAG,CAAC,eAAe,EAAE,MAAM,IAAI,EAAE,QAAQ,EAAE,eAAe,CAAC,MAAM,EAAE,CAAC;gBACpE,GAAG,CAAC,eAAe,EAAE,KAAK,IAAI,EAAE,OAAO,EAAE,eAAe,CAAC,KAAK,EAAE,CAAC;gBACjE,cAAc,EAAE,cAAc,EAAE,gBAAgB;gBAChD,cAAc,EAAE,cAAc,EAAE,kBAAkB;gBAClD,QAAQ,EAAE;oBACR;wBACE,MAAM,EAAE,cAAc,CAAC,OAAO,CAAC,SAAS;wBACxC,SAAS,EAAE,cAAc,CAAC,OAAO,CAAC,YAAY;wBAC9C,KAAK,EAAE,cAAc,CAAC,OAAO,CAAC,QAAQ;wBACtC,QAAQ,EAAE,cAAc,CAAC,OAAO,CAAC,OAAO;wBACxC,KAAK,EAAE,cAAc,CAAC,OAAO,CAAC,OAAO;wBACrC,KAAK,EAAE,cAAc,CAAC,OAAO,CAAC,QAAQ;wBACtC,IAAI,EAAE,MAAM;qBACb;iBACF;aACF,CAAC,CAAA;YAEF,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,CAAA;QAChC,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,MAAM,WAAW,GAAG,MAAM,2BAA2B,CACnD,MAAM,EACN,IAAI,EACJ,GAAG,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC,CAAC,MAAM,eAAe,EAAE,CAChE,CAAA;YACD,MAAM,IAAI,gBAAgB,CACxB,aAAa,CAAC,iBAAiB,EAC/B,WAAW;gBACT,mEAAmE,EACrE,CAAC,CACF,CAAA;QACH,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"WaitForTransactionStatusTask.js","names":[],"sources":["../../../../src/core/tasks/WaitForTransactionStatusTask.ts"],"sourcesContent":["import type { ExtendedTransactionInfo, FullStatusData } from '@lifi/types'\nimport { LiFiErrorCode } from '../../errors/constants.js'\nimport { TransactionError } from '../../errors/errors.js'\nimport type { ExecutionActionType } from '../../types/core.js'\nimport type { StepExecutorContext, TaskResult } from '../../types/execution.js'\nimport { getTransactionFailedMessage } from '../../utils/getTransactionMessage.js'\nimport { BaseStepExecutionTask } from '../BaseStepExecutionTask.js'\nimport { waitForTransactionStatus } from './helpers/waitForTransactionStatus.js'\n\nexport class WaitForTransactionStatusTask extends BaseStepExecutionTask {\n readonly actionType: ExecutionActionType\n\n constructor(actionType: ExecutionActionType) {\n super()\n this.actionType = actionType\n }\n\n async run(context: StepExecutorContext): Promise<TaskResult> {\n const {\n client,\n step,\n statusManager,\n pollingIntervalMs,\n toChain,\n isBridgeExecution,\n } = context\n\n // At this point, we should have a txHash or taskId\n // taskId is used for custom integrations that don't use the standard transaction hash\n let transactionHash: string | undefined\n try {\n const swapOrBridgeAction = statusManager.findAction(\n step,\n isBridgeExecution ? 'CROSS_CHAIN' : 'SWAP'\n )\n transactionHash = swapOrBridgeAction?.txHash || swapOrBridgeAction?.taskId\n\n // Wait for the transaction status on the destination chain\n if (!transactionHash) {\n throw new Error('Transaction hash is undefined.')\n }\n\n const action = statusManager.initializeAction({\n step,\n type: this.actionType,\n chainId:\n this.actionType === 'RECEIVING_CHAIN'\n ? step.action.toChainId\n : step.action.fromChainId,\n status: 'PENDING',\n })\n\n const statusResponse = (await waitForTransactionStatus(\n client,\n statusManager,\n transactionHash,\n step,\n action.type,\n pollingIntervalMs\n )) as FullStatusData\n\n const statusReceiving =\n statusResponse.receiving as ExtendedTransactionInfo\n\n // Update action status\n statusManager.updateAction(step, action.type, 'DONE', {\n chainId: statusReceiving?.chainId || toChain.id,\n substatus: statusResponse.substatus,\n substatusMessage: statusResponse.substatusMessage,\n txHash: statusReceiving?.txHash,\n txLink:\n statusReceiving?.txLink ||\n `${toChain.metamask.blockExplorerUrls[0]}tx/${statusReceiving?.txHash}`,\n })\n\n // Update execution status\n statusManager.updateExecution(step, {\n status: 'DONE',\n ...(statusResponse.sending.amount && {\n fromAmount: statusResponse.sending.amount,\n }),\n ...(statusReceiving?.amount && { toAmount: statusReceiving.amount }),\n ...(statusReceiving?.token && { toToken: statusReceiving.token }),\n internalTxLink: statusResponse?.lifiExplorerLink,\n externalTxLink: statusResponse?.bridgeExplorerLink,\n gasCosts: [\n {\n amount: statusResponse.sending.gasAmount,\n amountUSD: statusResponse.sending.gasAmountUSD,\n token: statusResponse.sending.gasToken,\n estimate: statusResponse.sending.gasUsed,\n limit: statusResponse.sending.gasUsed,\n price: statusResponse.sending.gasPrice,\n type: 'SEND',\n },\n ],\n })\n\n return { status: 'COMPLETED' }\n } catch (e: any) {\n const htmlMessage = await getTransactionFailedMessage(\n client,\n step,\n `${toChain.metamask.blockExplorerUrls[0]}tx/${transactionHash}`\n )\n throw new TransactionError(\n LiFiErrorCode.TransactionFailed,\n htmlMessage ??\n 'Failed while waiting for status of destination chain transaction.',\n e\n )\n }\n }\n}\n"],"mappings":";;;;;;AASA,IAAa,+BAAb,cAAkD,sBAAsB;CACtE;CAEA,YAAY,YAAiC;AAC3C,SAAO;AACP,OAAK,aAAa;;CAGpB,MAAM,IAAI,SAAmD;EAC3D,MAAM,EACJ,QACA,MACA,eACA,mBACA,SACA,sBACE;EAIJ,IAAI;AACJ,MAAI;GACF,MAAM,qBAAqB,cAAc,WACvC,MACA,oBAAoB,gBAAgB,OACrC;AACD,qBAAkB,oBAAoB,UAAU,oBAAoB;AAGpE,OAAI,CAAC,gBACH,OAAM,IAAI,MAAM,iCAAiC;GAGnD,MAAM,SAAS,cAAc,iBAAiB;IAC5C;IACA,MAAM,KAAK;IACX,SACE,KAAK,eAAe,oBAChB,KAAK,OAAO,YACZ,KAAK,OAAO;IAClB,QAAQ;IACT,CAAC;GAEF,MAAM,iBAAkB,MAAM,yBAC5B,QACA,eACA,iBACA,MACA,OAAO,MACP,kBACD;GAED,MAAM,kBACJ,eAAe;AAGjB,iBAAc,aAAa,MAAM,OAAO,MAAM,QAAQ;IACpD,SAAS,iBAAiB,WAAW,QAAQ;IAC7C,WAAW,eAAe;IAC1B,kBAAkB,eAAe;IACjC,QAAQ,iBAAiB;IACzB,QACE,iBAAiB,UACjB,GAAG,QAAQ,SAAS,kBAAkB,GAAG,KAAK,iBAAiB;IAClE,CAAC;AAGF,iBAAc,gBAAgB,MAAM;IAClC,QAAQ;IACR,GAAI,eAAe,QAAQ,UAAU,EACnC,YAAY,eAAe,QAAQ,QACpC;IACD,GAAI,iBAAiB,UAAU,EAAE,UAAU,gBAAgB,QAAQ;IACnE,GAAI,iBAAiB,SAAS,EAAE,SAAS,gBAAgB,OAAO;IAChE,gBAAgB,gBAAgB;IAChC,gBAAgB,gBAAgB;IAChC,UAAU,CACR;KACE,QAAQ,eAAe,QAAQ;KAC/B,WAAW,eAAe,QAAQ;KAClC,OAAO,eAAe,QAAQ;KAC9B,UAAU,eAAe,QAAQ;KACjC,OAAO,eAAe,QAAQ;KAC9B,OAAO,eAAe,QAAQ;KAC9B,MAAM;KACP,CACF;IACF,CAAC;AAEF,UAAO,EAAE,QAAQ,aAAa;WACvB,GAAQ;GACf,MAAM,cAAc,MAAM,4BACxB,QACA,MACA,GAAG,QAAQ,SAAS,kBAAkB,GAAG,KAAK,kBAC/C;AACD,SAAM,IAAI,iBACR,cAAc,mBACd,eACE,qEACF,EACD"}
@@ -1,3 +1,8 @@
1
- import type { LiFiStep } from '@lifi/types';
2
- import type { SDKClient } from '../../../types/core.js';
3
- export declare const checkBalance: (client: SDKClient, walletAddress: string, step: LiFiStep, depth?: number) => Promise<void>;
1
+ import { SDKClient } from "../../../types/core.js";
2
+ import { LiFiStep } from "@lifi/types";
3
+
4
+ //#region src/core/tasks/helpers/checkBalance.d.ts
5
+ declare const checkBalance: (client: SDKClient, walletAddress: string, step: LiFiStep, depth?: number) => Promise<void>;
6
+ //#endregion
7
+ export { checkBalance };
8
+ //# sourceMappingURL=checkBalance.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkBalance.d.ts","names":[],"sources":["../../../../../src/core/tasks/helpers/checkBalance.ts"],"mappings":";;;;cAOa,YAAA,GACX,MAAA,EAAQ,SAAA,EACR,aAAA,UACA,IAAA,EAAM,QAAA,EACN,KAAA,cACC,OAAA"}
@@ -1,34 +1,27 @@
1
- import { getTokenBalance } from '../../../actions/getTokenBalance.js';
2
- import { BalanceError } from '../../../errors/errors.js';
3
- import { formatUnits } from '../../../utils/formatUnits.js';
4
- import { sleep } from '../../../utils/sleep.js';
5
- export const checkBalance = async (client, walletAddress, step, depth = 0) => {
6
- const token = await getTokenBalance(client, walletAddress, step.action.fromToken);
7
- if (token) {
8
- const currentBalance = token.amount ?? 0n;
9
- const neededBalance = BigInt(step.action.fromAmount);
10
- if (currentBalance < neededBalance) {
11
- if (depth <= 3) {
12
- await sleep(200);
13
- await checkBalance(client, walletAddress, step, depth + 1);
14
- }
15
- else if ((neededBalance *
16
- BigInt((1 - (step.action.slippage ?? 0)) * 1_000_000_000)) /
17
- 1000000000n <=
18
- currentBalance) {
19
- // adjust amount in slippage limits
20
- step.action.fromAmount = currentBalance.toString();
21
- }
22
- else {
23
- const needed = formatUnits(neededBalance, token.decimals);
24
- const current = formatUnits(currentBalance, token.decimals);
25
- let errorMessage = `Your ${token.symbol} balance is too low, you try to transfer ${needed} ${token.symbol}, but your wallet only holds ${current} ${token.symbol}. No funds have been sent.`;
26
- if (currentBalance !== 0n) {
27
- errorMessage += `If the problem consists, please delete this transfer and start a new one with a maximum of ${current} ${token.symbol}.`;
28
- }
29
- throw new BalanceError('The balance is too low.', new Error(errorMessage));
30
- }
31
- }
32
- }
1
+ import { BalanceError } from "../../../errors/errors.js";
2
+ import { sleep } from "../../../utils/sleep.js";
3
+ import { getTokenBalance } from "../../../actions/getTokenBalance.js";
4
+ import { formatUnits } from "../../../utils/formatUnits.js";
5
+ //#region src/core/tasks/helpers/checkBalance.ts
6
+ const checkBalance = async (client, walletAddress, step, depth = 0) => {
7
+ const token = await getTokenBalance(client, walletAddress, step.action.fromToken);
8
+ if (token) {
9
+ const currentBalance = token.amount ?? 0n;
10
+ const neededBalance = BigInt(step.action.fromAmount);
11
+ if (currentBalance < neededBalance) if (depth <= 3) {
12
+ await sleep(200);
13
+ await checkBalance(client, walletAddress, step, depth + 1);
14
+ } else if (neededBalance * BigInt((1 - (step.action.slippage ?? 0)) * 1e9) / 1000000000n <= currentBalance) step.action.fromAmount = currentBalance.toString();
15
+ else {
16
+ const needed = formatUnits(neededBalance, token.decimals);
17
+ const current = formatUnits(currentBalance, token.decimals);
18
+ let errorMessage = `Your ${token.symbol} balance is too low, you try to transfer ${needed} ${token.symbol}, but your wallet only holds ${current} ${token.symbol}. No funds have been sent.`;
19
+ if (currentBalance !== 0n) errorMessage += `If the problem consists, please delete this transfer and start a new one with a maximum of ${current} ${token.symbol}.`;
20
+ throw new BalanceError("The balance is too low.", new Error(errorMessage));
21
+ }
22
+ }
33
23
  };
24
+ //#endregion
25
+ export { checkBalance };
26
+
34
27
  //# sourceMappingURL=checkBalance.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"checkBalance.js","sourceRoot":"","sources":["../../../../../src/core/tasks/helpers/checkBalance.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAA;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAExD,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAA;AAC3D,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAA;AAE/C,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAC/B,MAAiB,EACjB,aAAqB,EACrB,IAAc,EACd,KAAK,GAAG,CAAC,EACM,EAAE;IACjB,MAAM,KAAK,GAAG,MAAM,eAAe,CACjC,MAAM,EACN,aAAa,EACb,IAAI,CAAC,MAAM,CAAC,SAAS,CACtB,CAAA;IACD,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,cAAc,GAAG,KAAK,CAAC,MAAM,IAAI,EAAE,CAAA;QACzC,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;QAEpD,IAAI,cAAc,GAAG,aAAa,EAAE,CAAC;YACnC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;gBACf,MAAM,KAAK,CAAC,GAAG,CAAC,CAAA;gBAChB,MAAM,YAAY,CAAC,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,KAAK,GAAG,CAAC,CAAC,CAAA;YAC5D,CAAC;iBAAM,IACL,CAAC,aAAa;gBACZ,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC;gBAC1D,WAAc;gBAChB,cAAc,EACd,CAAC;gBACD,mCAAmC;gBACnC,IAAI,CAAC,MAAM,CAAC,UAAU,GAAG,cAAc,CAAC,QAAQ,EAAE,CAAA;YACpD,CAAC;iBAAM,CAAC;gBACN,MAAM,MAAM,GAAG,WAAW,CAAC,aAAa,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAA;gBACzD,MAAM,OAAO,GAAG,WAAW,CAAC,cAAc,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAA;gBAC3D,IAAI,YAAY,GAAG,QAAQ,KAAK,CAAC,MAAM,4CAA4C,MAAM,IAAI,KAAK,CAAC,MAAM,gCAAgC,OAAO,IAAI,KAAK,CAAC,MAAM,4BAA4B,CAAA;gBAE5L,IAAI,cAAc,KAAK,EAAE,EAAE,CAAC;oBAC1B,YAAY,IAAI,8FAA8F,OAAO,IAAI,KAAK,CAAC,MAAM,GAAG,CAAA;gBAC1I,CAAC;gBAED,MAAM,IAAI,YAAY,CACpB,yBAAyB,EACzB,IAAI,KAAK,CAAC,YAAY,CAAC,CACxB,CAAA;YACH,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"checkBalance.js","names":[],"sources":["../../../../../src/core/tasks/helpers/checkBalance.ts"],"sourcesContent":["import type { LiFiStep } from '@lifi/types'\nimport { getTokenBalance } from '../../../actions/getTokenBalance.js'\nimport { BalanceError } from '../../../errors/errors.js'\nimport type { SDKClient } from '../../../types/core.js'\nimport { formatUnits } from '../../../utils/formatUnits.js'\nimport { sleep } from '../../../utils/sleep.js'\n\nexport const checkBalance = async (\n client: SDKClient,\n walletAddress: string,\n step: LiFiStep,\n depth = 0\n): Promise<void> => {\n const token = await getTokenBalance(\n client,\n walletAddress,\n step.action.fromToken\n )\n if (token) {\n const currentBalance = token.amount ?? 0n\n const neededBalance = BigInt(step.action.fromAmount)\n\n if (currentBalance < neededBalance) {\n if (depth <= 3) {\n await sleep(200)\n await checkBalance(client, walletAddress, step, depth + 1)\n } else if (\n (neededBalance *\n BigInt((1 - (step.action.slippage ?? 0)) * 1_000_000_000)) /\n 1_000_000_000n <=\n currentBalance\n ) {\n // adjust amount in slippage limits\n step.action.fromAmount = currentBalance.toString()\n } else {\n const needed = formatUnits(neededBalance, token.decimals)\n const current = formatUnits(currentBalance, token.decimals)\n let errorMessage = `Your ${token.symbol} balance is too low, you try to transfer ${needed} ${token.symbol}, but your wallet only holds ${current} ${token.symbol}. No funds have been sent.`\n\n if (currentBalance !== 0n) {\n errorMessage += `If the problem consists, please delete this transfer and start a new one with a maximum of ${current} ${token.symbol}.`\n }\n\n throw new BalanceError(\n 'The balance is too low.',\n new Error(errorMessage)\n )\n }\n }\n }\n}\n"],"mappings":";;;;;AAOA,MAAa,eAAe,OAC1B,QACA,eACA,MACA,QAAQ,MACU;CAClB,MAAM,QAAQ,MAAM,gBAClB,QACA,eACA,KAAK,OAAO,UACb;AACD,KAAI,OAAO;EACT,MAAM,iBAAiB,MAAM,UAAU;EACvC,MAAM,gBAAgB,OAAO,KAAK,OAAO,WAAW;AAEpD,MAAI,iBAAiB,cACnB,KAAI,SAAS,GAAG;AACd,SAAM,MAAM,IAAI;AAChB,SAAM,aAAa,QAAQ,eAAe,MAAM,QAAQ,EAAE;aAEzD,gBACC,QAAQ,KAAK,KAAK,OAAO,YAAY,MAAM,IAAc,GACzD,eACF,eAGA,MAAK,OAAO,aAAa,eAAe,UAAU;OAC7C;GACL,MAAM,SAAS,YAAY,eAAe,MAAM,SAAS;GACzD,MAAM,UAAU,YAAY,gBAAgB,MAAM,SAAS;GAC3D,IAAI,eAAe,QAAQ,MAAM,OAAO,2CAA2C,OAAO,GAAG,MAAM,OAAO,+BAA+B,QAAQ,GAAG,MAAM,OAAO;AAEjK,OAAI,mBAAmB,GACrB,iBAAgB,8FAA8F,QAAQ,GAAG,MAAM,OAAO;AAGxI,SAAM,IAAI,aACR,2BACA,IAAI,MAAM,aAAa,CACxB"}
@@ -1,2 +1,7 @@
1
- import type { ExecutionOptions, LiFiStepExtended } from '../../../types/core.js';
2
- export declare const getTransactionRequestData: (step: LiFiStepExtended, executionOptions?: ExecutionOptions) => Promise<string>;
1
+ import { ExecutionOptions, LiFiStepExtended } from "../../../types/core.js";
2
+
3
+ //#region src/core/tasks/helpers/getTransactionRequestData.d.ts
4
+ declare const getTransactionRequestData: (step: LiFiStepExtended, executionOptions?: ExecutionOptions) => Promise<string>;
5
+ //#endregion
6
+ export { getTransactionRequestData };
7
+ //# sourceMappingURL=getTransactionRequestData.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getTransactionRequestData.d.ts","names":[],"sources":["../../../../../src/core/tasks/helpers/getTransactionRequestData.ts"],"mappings":";;;cAQa,yBAAA,GACX,IAAA,EAAM,gBAAA,EACN,gBAAA,GAAmB,gBAAA,KAClB,OAAA"}
@@ -1,26 +1,24 @@
1
- import { LiFiErrorCode } from '../../../errors/constants.js';
2
- import { TransactionError } from '../../../errors/errors.js';
3
- export const getTransactionRequestData = async (step, executionOptions) => {
4
- if (!step.transactionRequest?.data) {
5
- throw new TransactionError(LiFiErrorCode.TransactionUnprepared, 'Unable to prepare transaction. Transaction request data is not found.');
6
- }
7
- let transactionRequest = {
8
- data: step.transactionRequest.data,
9
- };
10
- if (executionOptions?.updateTransactionRequestHook) {
11
- const customizedTransactionRequest = await executionOptions.updateTransactionRequestHook({
12
- requestType: 'transaction',
13
- ...transactionRequest,
14
- });
15
- transactionRequest = {
16
- ...transactionRequest,
17
- ...customizedTransactionRequest,
18
- };
19
- }
20
- const transactionRequestData = transactionRequest.data;
21
- if (!transactionRequestData) {
22
- throw new TransactionError(LiFiErrorCode.TransactionUnprepared, 'Unable to prepare transaction. Transaction request data is not found.');
23
- }
24
- return transactionRequestData;
1
+ import { LiFiErrorCode } from "../../../errors/constants.js";
2
+ import { TransactionError } from "../../../errors/errors.js";
3
+ //#region src/core/tasks/helpers/getTransactionRequestData.ts
4
+ const getTransactionRequestData = async (step, executionOptions) => {
5
+ if (!step.transactionRequest?.data) throw new TransactionError(LiFiErrorCode.TransactionUnprepared, "Unable to prepare transaction. Transaction request data is not found.");
6
+ let transactionRequest = { data: step.transactionRequest.data };
7
+ if (executionOptions?.updateTransactionRequestHook) {
8
+ const customizedTransactionRequest = await executionOptions.updateTransactionRequestHook({
9
+ requestType: "transaction",
10
+ ...transactionRequest
11
+ });
12
+ transactionRequest = {
13
+ ...transactionRequest,
14
+ ...customizedTransactionRequest
15
+ };
16
+ }
17
+ const transactionRequestData = transactionRequest.data;
18
+ if (!transactionRequestData) throw new TransactionError(LiFiErrorCode.TransactionUnprepared, "Unable to prepare transaction. Transaction request data is not found.");
19
+ return transactionRequestData;
25
20
  };
21
+ //#endregion
22
+ export { getTransactionRequestData };
23
+
26
24
  //# sourceMappingURL=getTransactionRequestData.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getTransactionRequestData.js","sourceRoot":"","sources":["../../../../../src/core/tasks/helpers/getTransactionRequestData.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AAO5D,MAAM,CAAC,MAAM,yBAAyB,GAAG,KAAK,EAC5C,IAAsB,EACtB,gBAAmC,EAClB,EAAE;IACnB,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,IAAI,EAAE,CAAC;QACnC,MAAM,IAAI,gBAAgB,CACxB,aAAa,CAAC,qBAAqB,EACnC,uEAAuE,CACxE,CAAA;IACH,CAAC;IAED,IAAI,kBAAkB,GAA0B;QAC9C,IAAI,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI;KACnC,CAAA;IAED,IAAI,gBAAgB,EAAE,4BAA4B,EAAE,CAAC;QACnD,MAAM,4BAA4B,GAChC,MAAM,gBAAgB,CAAC,4BAA4B,CAAC;YAClD,WAAW,EAAE,aAAa;YAC1B,GAAG,kBAAkB;SACtB,CAAC,CAAA;QAEJ,kBAAkB,GAAG;YACnB,GAAG,kBAAkB;YACrB,GAAG,4BAA4B;SAChC,CAAA;IACH,CAAC;IAED,MAAM,sBAAsB,GAAG,kBAAkB,CAAC,IAAI,CAAA;IAEtD,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAC5B,MAAM,IAAI,gBAAgB,CACxB,aAAa,CAAC,qBAAqB,EACnC,uEAAuE,CACxE,CAAA;IACH,CAAC;IAED,OAAO,sBAAsB,CAAA;AAC/B,CAAC,CAAA"}
1
+ {"version":3,"file":"getTransactionRequestData.js","names":[],"sources":["../../../../../src/core/tasks/helpers/getTransactionRequestData.ts"],"sourcesContent":["import { LiFiErrorCode } from '../../../errors/constants.js'\nimport { TransactionError } from '../../../errors/errors.js'\nimport type {\n ExecutionOptions,\n LiFiStepExtended,\n TransactionParameters,\n} from '../../../types/core.js'\n\nexport const getTransactionRequestData = async (\n step: LiFiStepExtended,\n executionOptions?: ExecutionOptions\n): Promise<string> => {\n if (!step.transactionRequest?.data) {\n throw new TransactionError(\n LiFiErrorCode.TransactionUnprepared,\n 'Unable to prepare transaction. Transaction request data is not found.'\n )\n }\n\n let transactionRequest: TransactionParameters = {\n data: step.transactionRequest.data,\n }\n\n if (executionOptions?.updateTransactionRequestHook) {\n const customizedTransactionRequest: TransactionParameters =\n await executionOptions.updateTransactionRequestHook({\n requestType: 'transaction',\n ...transactionRequest,\n })\n\n transactionRequest = {\n ...transactionRequest,\n ...customizedTransactionRequest,\n }\n }\n\n const transactionRequestData = transactionRequest.data\n\n if (!transactionRequestData) {\n throw new TransactionError(\n LiFiErrorCode.TransactionUnprepared,\n 'Unable to prepare transaction. Transaction request data is not found.'\n )\n }\n\n return transactionRequestData\n}\n"],"mappings":";;;AAQA,MAAa,4BAA4B,OACvC,MACA,qBACoB;AACpB,KAAI,CAAC,KAAK,oBAAoB,KAC5B,OAAM,IAAI,iBACR,cAAc,uBACd,wEACD;CAGH,IAAI,qBAA4C,EAC9C,MAAM,KAAK,mBAAmB,MAC/B;AAED,KAAI,kBAAkB,8BAA8B;EAClD,MAAM,+BACJ,MAAM,iBAAiB,6BAA6B;GAClD,aAAa;GACb,GAAG;GACJ,CAAC;AAEJ,uBAAqB;GACnB,GAAG;GACH,GAAG;GACJ;;CAGH,MAAM,yBAAyB,mBAAmB;AAElD,KAAI,CAAC,uBACH,OAAM,IAAI,iBACR,cAAc,uBACd,wEACD;AAGH,QAAO"}
@@ -1,16 +1,21 @@
1
- import type { LiFiStep } from '@lifi/types';
2
- import type { StatusManager } from '../../../core/StatusManager.js';
3
- import type { ExecutionOptions } from '../../../types/core.js';
1
+ import { ExecutionOptions } from "../../../types/core.js";
2
+ import { StatusManager } from "../../StatusManager.js";
3
+ import { LiFiStep } from "@lifi/types";
4
+
5
+ //#region src/core/tasks/helpers/stepComparison.d.ts
4
6
  /**
5
- * This method checks whether the new and updated Step meets the required exchange rate conditions.
6
- * If yes it returns the updated Step.
7
- * If no and if user interaction is allowed it triggers the acceptExchangeRateUpdateHook. If no user interaction is allowed it aborts.
8
- * @param statusManager
9
- * @param oldStep
10
- * @param newStep
11
- * @param settings
12
- * @param allowUserInteraction
13
- * @param executionOptions
14
- * @returns Return LiFiStep
15
- */
16
- export declare const stepComparison: (statusManager: StatusManager, oldStep: LiFiStep, newStep: LiFiStep, allowUserInteraction: boolean, executionOptions?: ExecutionOptions) => Promise<LiFiStep>;
7
+ * This method checks whether the new and updated Step meets the required exchange rate conditions.
8
+ * If yes it returns the updated Step.
9
+ * If no and if user interaction is allowed it triggers the acceptExchangeRateUpdateHook. If no user interaction is allowed it aborts.
10
+ * @param statusManager
11
+ * @param oldStep
12
+ * @param newStep
13
+ * @param settings
14
+ * @param allowUserInteraction
15
+ * @param executionOptions
16
+ * @returns Return LiFiStep
17
+ */
18
+ declare const stepComparison: (statusManager: StatusManager, oldStep: LiFiStep, newStep: LiFiStep, allowUserInteraction: boolean, executionOptions?: ExecutionOptions) => Promise<LiFiStep>;
19
+ //#endregion
20
+ export { stepComparison };
21
+ //# sourceMappingURL=stepComparison.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stepComparison.d.ts","names":[],"sources":["../../../../../src/core/tasks/helpers/stepComparison.ts"],"mappings":";;;;;;;AAmBA;;;;;;;;;;cAAa,cAAA,GACX,aAAA,EAAe,aAAA,EACf,OAAA,EAAS,QAAA,EACT,OAAA,EAAS,QAAA,EACT,oBAAA,WACA,gBAAA,GAAmB,gBAAA,KAClB,OAAA,CAAQ,QAAA"}
@@ -1,35 +1,31 @@
1
- import { checkStepSlippageThreshold } from '../../../core/utils.js';
2
- import { LiFiErrorCode } from '../../../errors/constants.js';
3
- import { TransactionError } from '../../../errors/errors.js';
1
+ import { LiFiErrorCode } from "../../../errors/constants.js";
2
+ import { TransactionError } from "../../../errors/errors.js";
3
+ import { checkStepSlippageThreshold } from "../../utils.js";
4
+ //#region src/core/tasks/helpers/stepComparison.ts
4
5
  /**
5
- * This method checks whether the new and updated Step meets the required exchange rate conditions.
6
- * If yes it returns the updated Step.
7
- * If no and if user interaction is allowed it triggers the acceptExchangeRateUpdateHook. If no user interaction is allowed it aborts.
8
- * @param statusManager
9
- * @param oldStep
10
- * @param newStep
11
- * @param settings
12
- * @param allowUserInteraction
13
- * @param executionOptions
14
- * @returns Return LiFiStep
15
- */
16
- export const stepComparison = async (statusManager, oldStep, newStep, allowUserInteraction, executionOptions) => {
17
- // Check if changed exchange rate is in the range of slippage threshold
18
- if (checkStepSlippageThreshold(oldStep, newStep)) {
19
- return statusManager.updateStepInRoute(newStep);
20
- }
21
- let allowStepUpdate;
22
- if (allowUserInteraction) {
23
- allowStepUpdate = await executionOptions?.acceptExchangeRateUpdateHook?.({
24
- oldToAmount: oldStep.estimate.toAmount,
25
- newToAmount: newStep.estimate.toAmount,
26
- toToken: newStep.action.toToken,
27
- });
28
- }
29
- if (!allowStepUpdate) {
30
- // The user declined the new exchange rate, so we are not going to proceed
31
- throw new TransactionError(LiFiErrorCode.ExchangeRateUpdateCanceled, 'Exchange rate has changed!\nTransaction was not sent, your funds are still in your wallet.\nThe exchange rate has changed and the previous estimation can not be fulfilled due to value loss.');
32
- }
33
- return statusManager.updateStepInRoute(newStep);
6
+ * This method checks whether the new and updated Step meets the required exchange rate conditions.
7
+ * If yes it returns the updated Step.
8
+ * If no and if user interaction is allowed it triggers the acceptExchangeRateUpdateHook. If no user interaction is allowed it aborts.
9
+ * @param statusManager
10
+ * @param oldStep
11
+ * @param newStep
12
+ * @param settings
13
+ * @param allowUserInteraction
14
+ * @param executionOptions
15
+ * @returns Return LiFiStep
16
+ */
17
+ const stepComparison = async (statusManager, oldStep, newStep, allowUserInteraction, executionOptions) => {
18
+ if (checkStepSlippageThreshold(oldStep, newStep)) return statusManager.updateStepInRoute(newStep);
19
+ let allowStepUpdate;
20
+ if (allowUserInteraction) allowStepUpdate = await executionOptions?.acceptExchangeRateUpdateHook?.({
21
+ oldToAmount: oldStep.estimate.toAmount,
22
+ newToAmount: newStep.estimate.toAmount,
23
+ toToken: newStep.action.toToken
24
+ });
25
+ if (!allowStepUpdate) throw new TransactionError(LiFiErrorCode.ExchangeRateUpdateCanceled, "Exchange rate has changed!\nTransaction was not sent, your funds are still in your wallet.\nThe exchange rate has changed and the previous estimation can not be fulfilled due to value loss.");
26
+ return statusManager.updateStepInRoute(newStep);
34
27
  };
28
+ //#endregion
29
+ export { stepComparison };
30
+
35
31
  //# sourceMappingURL=stepComparison.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"stepComparison.js","sourceRoot":"","sources":["../../../../../src/core/tasks/helpers/stepComparison.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAA;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AAG5D;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EACjC,aAA4B,EAC5B,OAAiB,EACjB,OAAiB,EACjB,oBAA6B,EAC7B,gBAAmC,EAChB,EAAE;IACrB,uEAAuE;IACvE,IAAI,0BAA0B,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC;QACjD,OAAO,aAAa,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAA;IACjD,CAAC;IAED,IAAI,eAAoC,CAAA;IACxC,IAAI,oBAAoB,EAAE,CAAC;QACzB,eAAe,GAAG,MAAM,gBAAgB,EAAE,4BAA4B,EAAE,CAAC;YACvE,WAAW,EAAE,OAAO,CAAC,QAAQ,CAAC,QAAQ;YACtC,WAAW,EAAE,OAAO,CAAC,QAAQ,CAAC,QAAQ;YACtC,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO;SAChC,CAAC,CAAA;IACJ,CAAC;IAED,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,0EAA0E;QAC1E,MAAM,IAAI,gBAAgB,CACxB,aAAa,CAAC,0BAA0B,EACxC,+LAA+L,CAChM,CAAA;IACH,CAAC;IAED,OAAO,aAAa,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAA;AACjD,CAAC,CAAA"}
1
+ {"version":3,"file":"stepComparison.js","names":[],"sources":["../../../../../src/core/tasks/helpers/stepComparison.ts"],"sourcesContent":["import type { LiFiStep } from '@lifi/types'\nimport type { StatusManager } from '../../../core/StatusManager.js'\nimport { checkStepSlippageThreshold } from '../../../core/utils.js'\nimport { LiFiErrorCode } from '../../../errors/constants.js'\nimport { TransactionError } from '../../../errors/errors.js'\nimport type { ExecutionOptions } from '../../../types/core.js'\n\n/**\n * This method checks whether the new and updated Step meets the required exchange rate conditions.\n * If yes it returns the updated Step.\n * If no and if user interaction is allowed it triggers the acceptExchangeRateUpdateHook. If no user interaction is allowed it aborts.\n * @param statusManager\n * @param oldStep\n * @param newStep\n * @param settings\n * @param allowUserInteraction\n * @param executionOptions\n * @returns Return LiFiStep\n */\nexport const stepComparison = async (\n statusManager: StatusManager,\n oldStep: LiFiStep,\n newStep: LiFiStep,\n allowUserInteraction: boolean,\n executionOptions?: ExecutionOptions\n): Promise<LiFiStep> => {\n // Check if changed exchange rate is in the range of slippage threshold\n if (checkStepSlippageThreshold(oldStep, newStep)) {\n return statusManager.updateStepInRoute(newStep)\n }\n\n let allowStepUpdate: boolean | undefined\n if (allowUserInteraction) {\n allowStepUpdate = await executionOptions?.acceptExchangeRateUpdateHook?.({\n oldToAmount: oldStep.estimate.toAmount,\n newToAmount: newStep.estimate.toAmount,\n toToken: newStep.action.toToken,\n })\n }\n\n if (!allowStepUpdate) {\n // The user declined the new exchange rate, so we are not going to proceed\n throw new TransactionError(\n LiFiErrorCode.ExchangeRateUpdateCanceled,\n 'Exchange rate has changed!\\nTransaction was not sent, your funds are still in your wallet.\\nThe exchange rate has changed and the previous estimation can not be fulfilled due to value loss.'\n )\n }\n\n return statusManager.updateStepInRoute(newStep)\n}\n"],"mappings":";;;;;;;;;;;;;;;;AAmBA,MAAa,iBAAiB,OAC5B,eACA,SACA,SACA,sBACA,qBACsB;AAEtB,KAAI,2BAA2B,SAAS,QAAQ,CAC9C,QAAO,cAAc,kBAAkB,QAAQ;CAGjD,IAAI;AACJ,KAAI,qBACF,mBAAkB,MAAM,kBAAkB,+BAA+B;EACvE,aAAa,QAAQ,SAAS;EAC9B,aAAa,QAAQ,SAAS;EAC9B,SAAS,QAAQ,OAAO;EACzB,CAAC;AAGJ,KAAI,CAAC,gBAEH,OAAM,IAAI,iBACR,cAAc,4BACd,gMACD;AAGH,QAAO,cAAc,kBAAkB,QAAQ"}
@@ -1,4 +1,9 @@
1
- import type { LiFiStep, StatusResponse } from '@lifi/types';
2
- import type { ExecutionActionType, SDKClient } from '../../../types/core.js';
3
- import type { StatusManager } from '../../StatusManager.js';
4
- export declare function waitForTransactionStatus(client: SDKClient, statusManager: StatusManager, txHash: string, step: LiFiStep, actionType: ExecutionActionType, interval?: number): Promise<StatusResponse>;
1
+ import { ExecutionActionType, SDKClient } from "../../../types/core.js";
2
+ import { StatusManager } from "../../StatusManager.js";
3
+ import { LiFiStep, StatusResponse } from "@lifi/types";
4
+
5
+ //#region src/core/tasks/helpers/waitForTransactionStatus.d.ts
6
+ declare function waitForTransactionStatus(client: SDKClient, statusManager: StatusManager, txHash: string, step: LiFiStep, actionType: ExecutionActionType, interval?: number): Promise<StatusResponse>;
7
+ //#endregion
8
+ export { waitForTransactionStatus };
9
+ //# sourceMappingURL=waitForTransactionStatus.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"waitForTransactionStatus.d.ts","names":[],"sources":["../../../../../src/core/tasks/helpers/waitForTransactionStatus.ts"],"mappings":";;;;;iBAUsB,wBAAA,CACpB,MAAA,EAAQ,SAAA,EACR,aAAA,EAAe,aAAA,EACf,MAAA,UACA,IAAA,EAAM,QAAA,EACN,UAAA,EAAY,mBAAA,EACZ,QAAA,YACC,OAAA,CAAQ,cAAA"}
@@ -1,53 +1,47 @@
1
- import { getStatus } from '../../../actions/getStatus.js';
2
- import { ServerError } from '../../../errors/errors.js';
3
- import { waitForResult } from '../../../utils/waitForResult.js';
4
- import { getSubstatusMessage } from '../../actionMessages.js';
1
+ import { ServerError } from "../../../errors/errors.js";
2
+ import { getStatus } from "../../../actions/getStatus.js";
3
+ import { getSubstatusMessage } from "../../actionMessages.js";
4
+ import { waitForResult } from "../../../utils/waitForResult.js";
5
+ //#region src/core/tasks/helpers/waitForTransactionStatus.ts
5
6
  const TRANSACTION_HASH_OBSERVERS = {};
6
- export async function waitForTransactionStatus(client, statusManager, txHash, step, actionType, interval = 5_000) {
7
- const _getStatus = () => {
8
- return getStatus(client, {
9
- fromChain: step.action.fromChainId,
10
- fromAddress: step.action.fromAddress,
11
- toChain: step.action.toChainId,
12
- txHash,
13
- ...(step.tool !== 'custom' && { bridge: step.tool }),
14
- })
15
- .then((statusResponse) => {
16
- switch (statusResponse.status) {
17
- case 'DONE':
18
- return statusResponse;
19
- case 'PENDING':
20
- statusManager?.updateAction(step, actionType, 'PENDING', {
21
- substatus: statusResponse.substatus,
22
- substatusMessage: statusResponse.substatusMessage ||
23
- getSubstatusMessage(statusResponse.status, statusResponse.substatus),
24
- txLink: statusResponse.bridgeExplorerLink,
25
- });
26
- return undefined;
27
- case 'NOT_FOUND':
28
- return undefined;
29
- default:
30
- return Promise.reject();
31
- }
32
- })
33
- .catch((e) => {
34
- if (process.env.NODE_ENV === 'development') {
35
- console.debug('Fetching status from backend failed.', e);
36
- }
37
- return undefined;
38
- });
39
- };
40
- let status = TRANSACTION_HASH_OBSERVERS[txHash];
41
- if (!status) {
42
- status = waitForResult(_getStatus, interval).finally(() => {
43
- delete TRANSACTION_HASH_OBSERVERS[txHash];
44
- });
45
- TRANSACTION_HASH_OBSERVERS[txHash] = status;
46
- }
47
- const resolvedStatus = await status;
48
- if (!('receiving' in resolvedStatus)) {
49
- throw new ServerError("Status doesn't contain destination chain information.");
50
- }
51
- return resolvedStatus;
7
+ async function waitForTransactionStatus(client, statusManager, txHash, step, actionType, interval = 5e3) {
8
+ const _getStatus = () => {
9
+ return getStatus(client, {
10
+ fromChain: step.action.fromChainId,
11
+ fromAddress: step.action.fromAddress,
12
+ toChain: step.action.toChainId,
13
+ txHash,
14
+ ...step.tool !== "custom" && { bridge: step.tool },
15
+ ...step.transactionId && { transactionId: step.transactionId }
16
+ }).then((statusResponse) => {
17
+ switch (statusResponse.status) {
18
+ case "DONE": return statusResponse;
19
+ case "PENDING":
20
+ statusManager?.updateAction(step, actionType, "PENDING", {
21
+ substatus: statusResponse.substatus,
22
+ substatusMessage: statusResponse.substatusMessage || getSubstatusMessage(statusResponse.status, statusResponse.substatus),
23
+ txLink: statusResponse.bridgeExplorerLink
24
+ });
25
+ return;
26
+ case "NOT_FOUND": return;
27
+ default: return Promise.reject();
28
+ }
29
+ }).catch((e) => {
30
+ if (process.env.NODE_ENV === "development") console.debug("Fetching status from backend failed.", e);
31
+ });
32
+ };
33
+ let status = TRANSACTION_HASH_OBSERVERS[txHash];
34
+ if (!status) {
35
+ status = waitForResult(_getStatus, interval).finally(() => {
36
+ delete TRANSACTION_HASH_OBSERVERS[txHash];
37
+ });
38
+ TRANSACTION_HASH_OBSERVERS[txHash] = status;
39
+ }
40
+ const resolvedStatus = await status;
41
+ if (!("receiving" in resolvedStatus)) throw new ServerError("Status doesn't contain destination chain information.");
42
+ return resolvedStatus;
52
43
  }
44
+ //#endregion
45
+ export { waitForTransactionStatus };
46
+
53
47
  //# sourceMappingURL=waitForTransactionStatus.js.map