@lifi/sdk 4.0.0-alpha.2 → 4.0.0-alpha.20

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 (338) hide show
  1. package/dist/cjs/actions/getChains.d.ts +1 -1
  2. package/dist/cjs/actions/getChains.js +4 -4
  3. package/dist/cjs/actions/getChains.js.map +1 -1
  4. package/dist/cjs/actions/getRelayedTransactionStatus.js +1 -1
  5. package/dist/cjs/actions/getRelayedTransactionStatus.js.map +1 -1
  6. package/dist/cjs/actions/getStepTransaction.js +9 -1
  7. package/dist/cjs/actions/getStepTransaction.js.map +1 -1
  8. package/dist/cjs/actions/index.d.ts +3 -1
  9. package/dist/cjs/actions/index.js +2 -0
  10. package/dist/cjs/actions/index.js.map +1 -1
  11. package/dist/cjs/actions/patchContractCalls.d.ts +10 -0
  12. package/dist/cjs/actions/patchContractCalls.js +16 -0
  13. package/dist/cjs/actions/patchContractCalls.js.map +1 -0
  14. package/dist/cjs/client/createClient.js +4 -0
  15. package/dist/cjs/client/createClient.js.map +1 -1
  16. package/dist/cjs/client/getClientStorage.d.ts +1 -0
  17. package/dist/cjs/client/getClientStorage.js +17 -6
  18. package/dist/cjs/client/getClientStorage.js.map +1 -1
  19. package/dist/cjs/core/BaseStepExecutionTask.d.ts +5 -0
  20. package/dist/cjs/core/BaseStepExecutionTask.js +10 -0
  21. package/dist/cjs/core/BaseStepExecutionTask.js.map +1 -0
  22. package/dist/cjs/core/BaseStepExecutor.d.ts +10 -3
  23. package/dist/cjs/core/BaseStepExecutor.js +53 -0
  24. package/dist/cjs/core/BaseStepExecutor.js.map +1 -1
  25. package/dist/cjs/core/StatusManager.d.ts +13 -12
  26. package/dist/cjs/core/StatusManager.js +55 -61
  27. package/dist/cjs/core/StatusManager.js.map +1 -1
  28. package/dist/cjs/core/TaskPipeline.d.ts +7 -0
  29. package/dist/cjs/core/TaskPipeline.js +27 -0
  30. package/dist/cjs/core/TaskPipeline.js.map +1 -0
  31. package/dist/cjs/core/actionMessages.d.ts +4 -0
  32. package/dist/cjs/core/{processMessages.js → actionMessages.js} +25 -9
  33. package/dist/cjs/core/actionMessages.js.map +1 -0
  34. package/dist/cjs/core/execution.js +13 -1
  35. package/dist/cjs/core/execution.js.map +1 -1
  36. package/dist/cjs/core/prepareRestart.js +6 -6
  37. package/dist/cjs/core/prepareRestart.js.map +1 -1
  38. package/dist/cjs/core/storage.d.ts +17 -0
  39. package/dist/cjs/core/storage.js +36 -0
  40. package/dist/cjs/core/storage.js.map +1 -0
  41. package/dist/cjs/core/tasks/CheckBalanceTask.d.ts +5 -0
  42. package/dist/cjs/core/tasks/CheckBalanceTask.js +26 -0
  43. package/dist/cjs/core/tasks/CheckBalanceTask.js.map +1 -0
  44. package/dist/cjs/core/tasks/PrepareTransactionTask.d.ts +5 -0
  45. package/dist/cjs/core/tasks/PrepareTransactionTask.js +36 -0
  46. package/dist/cjs/core/tasks/PrepareTransactionTask.js.map +1 -0
  47. package/dist/cjs/core/tasks/WaitForTransactionStatusTask.d.ts +8 -0
  48. package/dist/cjs/core/tasks/WaitForTransactionStatusTask.js +73 -0
  49. package/dist/cjs/core/tasks/WaitForTransactionStatusTask.js.map +1 -0
  50. package/dist/cjs/core/{checkBalance.d.ts → tasks/helpers/checkBalance.d.ts} +1 -1
  51. package/dist/cjs/core/{checkBalance.js → tasks/helpers/checkBalance.js} +6 -6
  52. package/dist/cjs/core/tasks/helpers/checkBalance.js.map +1 -0
  53. package/dist/cjs/core/tasks/helpers/getTransactionRequestData.d.ts +2 -0
  54. package/dist/cjs/core/tasks/helpers/getTransactionRequestData.js +30 -0
  55. package/dist/cjs/core/tasks/helpers/getTransactionRequestData.js.map +1 -0
  56. package/dist/cjs/core/{stepComparison.d.ts → tasks/helpers/stepComparison.d.ts} +2 -2
  57. package/dist/cjs/core/{stepComparison.js → tasks/helpers/stepComparison.js} +3 -3
  58. package/dist/cjs/core/tasks/helpers/stepComparison.js.map +1 -0
  59. package/dist/cjs/core/tasks/helpers/waitForTransactionStatus.d.ts +4 -0
  60. package/dist/cjs/core/{waitForTransactionStatus.js → tasks/helpers/waitForTransactionStatus.js} +10 -8
  61. package/dist/cjs/core/tasks/helpers/waitForTransactionStatus.js.map +1 -0
  62. package/dist/cjs/core/utils.d.ts +9 -3
  63. package/dist/cjs/core/utils.js +0 -5
  64. package/dist/cjs/core/utils.js.map +1 -1
  65. package/dist/cjs/errors/SDKError.d.ts +3 -3
  66. package/dist/cjs/errors/SDKError.js +3 -3
  67. package/dist/cjs/errors/SDKError.js.map +1 -1
  68. package/dist/cjs/errors/constants.d.ts +5 -2
  69. package/dist/cjs/errors/constants.js +3 -0
  70. package/dist/cjs/errors/constants.js.map +1 -1
  71. package/dist/cjs/errors/errors.d.ts +5 -0
  72. package/dist/cjs/errors/errors.js +9 -1
  73. package/dist/cjs/errors/errors.js.map +1 -1
  74. package/dist/cjs/index.d.ts +20 -10
  75. package/dist/cjs/index.js +34 -14
  76. package/dist/cjs/index.js.map +1 -1
  77. package/dist/cjs/types/core.d.ts +51 -21
  78. package/dist/cjs/types/execution.d.ts +22 -0
  79. package/dist/cjs/types/execution.js +3 -0
  80. package/dist/cjs/types/execution.js.map +1 -0
  81. package/dist/cjs/utils/convertQuoteToRoute.d.ts +6 -1
  82. package/dist/cjs/utils/convertQuoteToRoute.js +73 -5
  83. package/dist/cjs/utils/convertQuoteToRoute.js.map +1 -1
  84. package/dist/cjs/utils/formatUnits.d.ts +1 -0
  85. package/dist/cjs/utils/formatUnits.js +18 -0
  86. package/dist/cjs/utils/formatUnits.js.map +1 -0
  87. package/dist/cjs/utils/isHex.d.ts +4 -0
  88. package/dist/cjs/utils/isHex.js +13 -0
  89. package/dist/cjs/utils/isHex.js.map +1 -0
  90. package/dist/cjs/utils/parseUnits.d.ts +1 -0
  91. package/dist/cjs/utils/parseUnits.js +44 -0
  92. package/dist/cjs/utils/parseUnits.js.map +1 -0
  93. package/dist/cjs/utils/request.js +7 -6
  94. package/dist/cjs/utils/request.js.map +1 -1
  95. package/dist/cjs/utils/waitForResult.d.ts +1 -1
  96. package/dist/cjs/utils/waitForResult.js +6 -2
  97. package/dist/cjs/utils/waitForResult.js.map +1 -1
  98. package/dist/cjs/utils/withDedupe.d.ts +5 -0
  99. package/dist/cjs/utils/withDedupe.js +2 -0
  100. package/dist/cjs/utils/withDedupe.js.map +1 -1
  101. package/dist/cjs/version.d.ts +1 -1
  102. package/dist/cjs/version.js +1 -1
  103. package/dist/cjs/version.js.map +1 -1
  104. package/dist/esm/actions/getChains.d.ts +1 -1
  105. package/dist/esm/actions/getChains.js +2 -2
  106. package/dist/esm/actions/getChains.js.map +1 -1
  107. package/dist/esm/actions/getRelayedTransactionStatus.js +1 -1
  108. package/dist/esm/actions/getRelayedTransactionStatus.js.map +1 -1
  109. package/dist/esm/actions/getStepTransaction.js +10 -1
  110. package/dist/esm/actions/getStepTransaction.js.map +1 -1
  111. package/dist/esm/actions/index.d.ts +9 -1
  112. package/dist/esm/actions/index.js +2 -0
  113. package/dist/esm/actions/index.js.map +1 -1
  114. package/dist/esm/actions/patchContractCalls.d.ts +10 -0
  115. package/dist/esm/actions/patchContractCalls.js +12 -0
  116. package/dist/esm/actions/patchContractCalls.js.map +1 -0
  117. package/dist/esm/client/createClient.js +4 -0
  118. package/dist/esm/client/createClient.js.map +1 -1
  119. package/dist/esm/client/getClientStorage.d.ts +1 -0
  120. package/dist/esm/client/getClientStorage.js +21 -7
  121. package/dist/esm/client/getClientStorage.js.map +1 -1
  122. package/dist/esm/core/BaseStepExecutionTask.d.ts +5 -0
  123. package/dist/esm/core/BaseStepExecutionTask.js +6 -0
  124. package/dist/esm/core/BaseStepExecutionTask.js.map +1 -0
  125. package/dist/esm/core/BaseStepExecutor.d.ts +10 -3
  126. package/dist/esm/core/BaseStepExecutor.js +53 -0
  127. package/dist/esm/core/BaseStepExecutor.js.map +1 -1
  128. package/dist/esm/core/StatusManager.d.ts +40 -39
  129. package/dist/esm/core/StatusManager.js +86 -92
  130. package/dist/esm/core/StatusManager.js.map +1 -1
  131. package/dist/esm/core/TaskPipeline.d.ts +7 -0
  132. package/dist/esm/core/TaskPipeline.js +23 -0
  133. package/dist/esm/core/TaskPipeline.js.map +1 -0
  134. package/dist/esm/core/actionMessages.d.ts +4 -0
  135. package/dist/esm/core/{processMessages.js → actionMessages.js} +24 -8
  136. package/dist/esm/core/actionMessages.js.map +1 -0
  137. package/dist/esm/core/execution.js +14 -3
  138. package/dist/esm/core/execution.js.map +1 -1
  139. package/dist/esm/core/prepareRestart.js +10 -9
  140. package/dist/esm/core/prepareRestart.js.map +1 -1
  141. package/dist/esm/core/storage.d.ts +17 -0
  142. package/dist/esm/core/storage.js +30 -0
  143. package/dist/esm/core/storage.js.map +1 -0
  144. package/dist/esm/core/tasks/CheckBalanceTask.d.ts +5 -0
  145. package/dist/esm/core/tasks/CheckBalanceTask.js +22 -0
  146. package/dist/esm/core/tasks/CheckBalanceTask.js.map +1 -0
  147. package/dist/esm/core/tasks/PrepareTransactionTask.d.ts +5 -0
  148. package/dist/esm/core/tasks/PrepareTransactionTask.js +32 -0
  149. package/dist/esm/core/tasks/PrepareTransactionTask.js.map +1 -0
  150. package/dist/esm/core/tasks/WaitForTransactionStatusTask.d.ts +8 -0
  151. package/dist/esm/core/tasks/WaitForTransactionStatusTask.js +74 -0
  152. package/dist/esm/core/tasks/WaitForTransactionStatusTask.js.map +1 -0
  153. package/dist/esm/core/{checkBalance.d.ts → tasks/helpers/checkBalance.d.ts} +1 -1
  154. package/dist/esm/core/{checkBalance.js → tasks/helpers/checkBalance.js} +4 -4
  155. package/dist/esm/core/tasks/helpers/checkBalance.js.map +1 -0
  156. package/dist/esm/core/tasks/helpers/getTransactionRequestData.d.ts +2 -0
  157. package/dist/esm/core/tasks/helpers/getTransactionRequestData.js +26 -0
  158. package/dist/esm/core/tasks/helpers/getTransactionRequestData.js.map +1 -0
  159. package/dist/esm/core/{stepComparison.d.ts → tasks/helpers/stepComparison.d.ts} +2 -2
  160. package/dist/esm/core/{stepComparison.js → tasks/helpers/stepComparison.js} +3 -3
  161. package/dist/esm/core/tasks/helpers/stepComparison.js.map +1 -0
  162. package/dist/esm/core/tasks/helpers/waitForTransactionStatus.d.ts +4 -0
  163. package/dist/esm/core/{waitForTransactionStatus.js → tasks/helpers/waitForTransactionStatus.js} +9 -7
  164. package/dist/esm/core/tasks/helpers/waitForTransactionStatus.js.map +1 -0
  165. package/dist/esm/core/utils.d.ts +9 -11
  166. package/dist/esm/core/utils.js +0 -11
  167. package/dist/esm/core/utils.js.map +1 -1
  168. package/dist/esm/errors/SDKError.d.ts +3 -3
  169. package/dist/esm/errors/SDKError.js +4 -4
  170. package/dist/esm/errors/SDKError.js.map +1 -1
  171. package/dist/esm/errors/constants.d.ts +5 -2
  172. package/dist/esm/errors/constants.js +3 -0
  173. package/dist/esm/errors/constants.js.map +1 -1
  174. package/dist/esm/errors/errors.d.ts +10 -0
  175. package/dist/esm/errors/errors.js +12 -0
  176. package/dist/esm/errors/errors.js.map +1 -1
  177. package/dist/esm/index.d.ts +20 -10
  178. package/dist/esm/index.js +17 -8
  179. package/dist/esm/index.js.map +1 -1
  180. package/dist/esm/types/core.d.ts +55 -21
  181. package/dist/esm/types/execution.d.ts +23 -0
  182. package/dist/esm/types/execution.js +2 -0
  183. package/dist/esm/types/execution.js.map +1 -0
  184. package/dist/esm/utils/convertQuoteToRoute.d.ts +11 -3
  185. package/dist/esm/utils/convertQuoteToRoute.js +76 -7
  186. package/dist/esm/utils/convertQuoteToRoute.js.map +1 -1
  187. package/dist/esm/utils/formatUnits.d.ts +4 -0
  188. package/dist/esm/utils/formatUnits.js +18 -0
  189. package/dist/esm/utils/formatUnits.js.map +1 -0
  190. package/dist/esm/utils/isHex.d.ts +4 -0
  191. package/dist/esm/utils/isHex.js +10 -0
  192. package/dist/esm/utils/isHex.js.map +1 -0
  193. package/dist/esm/utils/parseUnits.d.ts +4 -0
  194. package/dist/esm/utils/parseUnits.js +46 -0
  195. package/dist/esm/utils/parseUnits.js.map +1 -0
  196. package/dist/esm/utils/request.js +7 -6
  197. package/dist/esm/utils/request.js.map +1 -1
  198. package/dist/esm/utils/waitForResult.d.ts +2 -2
  199. package/dist/esm/utils/waitForResult.js +7 -3
  200. package/dist/esm/utils/waitForResult.js.map +1 -1
  201. package/dist/esm/utils/withDedupe.d.ts +10 -0
  202. package/dist/esm/utils/withDedupe.js +1 -1
  203. package/dist/esm/utils/withDedupe.js.map +1 -1
  204. package/dist/esm/version.d.ts +1 -1
  205. package/dist/esm/version.js +1 -1
  206. package/dist/esm/version.js.map +1 -1
  207. package/dist/types/actions/getChains.d.ts +1 -1
  208. package/dist/types/actions/getChains.d.ts.map +1 -1
  209. package/dist/types/actions/getStepTransaction.d.ts.map +1 -1
  210. package/dist/types/actions/index.d.ts +9 -1
  211. package/dist/types/actions/index.d.ts.map +1 -1
  212. package/dist/types/actions/patchContractCalls.d.ts +11 -0
  213. package/dist/types/actions/patchContractCalls.d.ts.map +1 -0
  214. package/dist/types/client/createClient.d.ts.map +1 -1
  215. package/dist/types/client/getClientStorage.d.ts +1 -0
  216. package/dist/types/client/getClientStorage.d.ts.map +1 -1
  217. package/dist/types/core/BaseStepExecutionTask.d.ts +6 -0
  218. package/dist/types/core/BaseStepExecutionTask.d.ts.map +1 -0
  219. package/dist/types/core/BaseStepExecutor.d.ts +10 -3
  220. package/dist/types/core/BaseStepExecutor.d.ts.map +1 -1
  221. package/dist/types/core/StatusManager.d.ts +40 -39
  222. package/dist/types/core/StatusManager.d.ts.map +1 -1
  223. package/dist/types/core/TaskPipeline.d.ts +8 -0
  224. package/dist/types/core/TaskPipeline.d.ts.map +1 -0
  225. package/dist/types/core/actionMessages.d.ts +5 -0
  226. package/dist/types/core/actionMessages.d.ts.map +1 -0
  227. package/dist/types/core/execution.d.ts.map +1 -1
  228. package/dist/types/core/prepareRestart.d.ts.map +1 -1
  229. package/dist/types/core/storage.d.ts +18 -0
  230. package/dist/types/core/storage.d.ts.map +1 -0
  231. package/dist/types/core/tasks/CheckBalanceTask.d.ts +6 -0
  232. package/dist/types/core/tasks/CheckBalanceTask.d.ts.map +1 -0
  233. package/dist/types/core/tasks/PrepareTransactionTask.d.ts +6 -0
  234. package/dist/types/core/tasks/PrepareTransactionTask.d.ts.map +1 -0
  235. package/dist/types/core/tasks/WaitForTransactionStatusTask.d.ts +9 -0
  236. package/dist/types/core/tasks/WaitForTransactionStatusTask.d.ts.map +1 -0
  237. package/dist/types/core/{checkBalance.d.ts → tasks/helpers/checkBalance.d.ts} +1 -1
  238. package/dist/types/core/tasks/helpers/checkBalance.d.ts.map +1 -0
  239. package/dist/types/core/tasks/helpers/getTransactionRequestData.d.ts +3 -0
  240. package/dist/types/core/tasks/helpers/getTransactionRequestData.d.ts.map +1 -0
  241. package/dist/types/core/{stepComparison.d.ts → tasks/helpers/stepComparison.d.ts} +2 -2
  242. package/dist/types/core/tasks/helpers/stepComparison.d.ts.map +1 -0
  243. package/dist/types/core/tasks/helpers/waitForTransactionStatus.d.ts +5 -0
  244. package/dist/types/core/tasks/helpers/waitForTransactionStatus.d.ts.map +1 -0
  245. package/dist/types/core/utils.d.ts +9 -11
  246. package/dist/types/core/utils.d.ts.map +1 -1
  247. package/dist/types/errors/SDKError.d.ts +3 -3
  248. package/dist/types/errors/SDKError.d.ts.map +1 -1
  249. package/dist/types/errors/constants.d.ts +5 -2
  250. package/dist/types/errors/constants.d.ts.map +1 -1
  251. package/dist/types/errors/errors.d.ts +10 -0
  252. package/dist/types/errors/errors.d.ts.map +1 -1
  253. package/dist/types/index.d.ts +20 -10
  254. package/dist/types/index.d.ts.map +1 -1
  255. package/dist/types/types/core.d.ts +55 -21
  256. package/dist/types/types/core.d.ts.map +1 -1
  257. package/dist/types/types/execution.d.ts +24 -0
  258. package/dist/types/types/execution.d.ts.map +1 -0
  259. package/dist/types/utils/convertQuoteToRoute.d.ts +11 -3
  260. package/dist/types/utils/convertQuoteToRoute.d.ts.map +1 -1
  261. package/dist/types/utils/formatUnits.d.ts +5 -0
  262. package/dist/types/utils/formatUnits.d.ts.map +1 -0
  263. package/dist/types/utils/isHex.d.ts +5 -0
  264. package/dist/types/utils/isHex.d.ts.map +1 -0
  265. package/dist/types/utils/parseUnits.d.ts +5 -0
  266. package/dist/types/utils/parseUnits.d.ts.map +1 -0
  267. package/dist/types/utils/request.d.ts.map +1 -1
  268. package/dist/types/utils/waitForResult.d.ts +2 -2
  269. package/dist/types/utils/waitForResult.d.ts.map +1 -1
  270. package/dist/types/utils/withDedupe.d.ts +10 -0
  271. package/dist/types/utils/withDedupe.d.ts.map +1 -1
  272. package/dist/types/version.d.ts +1 -1
  273. package/dist/types/version.d.ts.map +1 -1
  274. package/package.json +2 -3
  275. package/src/actions/getChains.ts +2 -2
  276. package/src/actions/getRelayedTransactionStatus.ts +1 -1
  277. package/src/actions/getStepTransaction.ts +20 -12
  278. package/src/actions/index.ts +18 -0
  279. package/src/actions/patchContractCalls.ts +30 -0
  280. package/src/client/createClient.ts +5 -1
  281. package/src/client/getClientStorage.ts +24 -7
  282. package/src/core/BaseStepExecutionTask.ts +9 -0
  283. package/src/core/BaseStepExecutor.ts +91 -2
  284. package/src/core/StatusManager.ts +108 -113
  285. package/src/core/TaskPipeline.ts +28 -0
  286. package/src/core/{processMessages.ts → actionMessages.ts} +32 -12
  287. package/src/core/execution.ts +17 -3
  288. package/src/core/prepareRestart.ts +12 -11
  289. package/src/core/storage.ts +42 -0
  290. package/src/core/tasks/CheckBalanceTask.ts +29 -0
  291. package/src/core/tasks/PrepareTransactionTask.ts +62 -0
  292. package/src/core/tasks/WaitForTransactionStatusTask.ts +114 -0
  293. package/src/core/{checkBalance.ts → tasks/helpers/checkBalance.ts} +5 -5
  294. package/src/core/tasks/helpers/getTransactionRequestData.ts +47 -0
  295. package/src/core/{stepComparison.ts → tasks/helpers/stepComparison.ts} +5 -5
  296. package/src/core/{waitForTransactionStatus.ts → tasks/helpers/waitForTransactionStatus.ts} +11 -9
  297. package/src/core/utils.ts +1 -13
  298. package/src/errors/SDKError.ts +5 -5
  299. package/src/errors/constants.ts +3 -0
  300. package/src/errors/errors.ts +24 -0
  301. package/src/index.ts +37 -12
  302. package/src/types/core.ts +69 -29
  303. package/src/types/execution.ts +32 -0
  304. package/src/utils/convertQuoteToRoute.ts +117 -8
  305. package/src/utils/formatUnits.ts +22 -0
  306. package/src/utils/isHex.ts +14 -0
  307. package/src/utils/parseUnits.ts +50 -0
  308. package/src/utils/request.ts +9 -6
  309. package/src/utils/waitForResult.ts +9 -4
  310. package/src/utils/withDedupe.ts +1 -1
  311. package/src/version.ts +1 -1
  312. package/dist/cjs/core/checkBalance.js.map +0 -1
  313. package/dist/cjs/core/processMessages.d.ts +0 -4
  314. package/dist/cjs/core/processMessages.js.map +0 -1
  315. package/dist/cjs/core/stepComparison.js.map +0 -1
  316. package/dist/cjs/core/waitForDestinationChainTransaction.d.ts +0 -4
  317. package/dist/cjs/core/waitForDestinationChainTransaction.js +0 -69
  318. package/dist/cjs/core/waitForDestinationChainTransaction.js.map +0 -1
  319. package/dist/cjs/core/waitForTransactionStatus.d.ts +0 -4
  320. package/dist/cjs/core/waitForTransactionStatus.js.map +0 -1
  321. package/dist/esm/core/checkBalance.js.map +0 -1
  322. package/dist/esm/core/processMessages.d.ts +0 -4
  323. package/dist/esm/core/processMessages.js.map +0 -1
  324. package/dist/esm/core/stepComparison.js.map +0 -1
  325. package/dist/esm/core/waitForDestinationChainTransaction.d.ts +0 -4
  326. package/dist/esm/core/waitForDestinationChainTransaction.js +0 -71
  327. package/dist/esm/core/waitForDestinationChainTransaction.js.map +0 -1
  328. package/dist/esm/core/waitForTransactionStatus.d.ts +0 -4
  329. package/dist/esm/core/waitForTransactionStatus.js.map +0 -1
  330. package/dist/types/core/checkBalance.d.ts.map +0 -1
  331. package/dist/types/core/processMessages.d.ts +0 -5
  332. package/dist/types/core/processMessages.d.ts.map +0 -1
  333. package/dist/types/core/stepComparison.d.ts.map +0 -1
  334. package/dist/types/core/waitForDestinationChainTransaction.d.ts +0 -5
  335. package/dist/types/core/waitForDestinationChainTransaction.d.ts.map +0 -1
  336. package/dist/types/core/waitForTransactionStatus.d.ts +0 -5
  337. package/dist/types/core/waitForTransactionStatus.d.ts.map +0 -1
  338. package/src/core/waitForDestinationChainTransaction.ts +0 -106
@@ -1,4 +1,4 @@
1
1
  import type { ChainsRequest, ExtendedChain, RequestOptions } from '@lifi/types';
2
2
  import type { SDKBaseConfig, SDKClient } from '../types/core.js';
3
3
  export declare const getChains: (client: SDKClient, params?: ChainsRequest, options?: RequestOptions) => Promise<ExtendedChain[]>;
4
- export declare const getChainsFromConfig: (config: SDKBaseConfig, params?: ChainsRequest, options?: RequestOptions) => Promise<ExtendedChain[]>;
4
+ export declare const _getChains: (config: SDKBaseConfig, params?: ChainsRequest, options?: RequestOptions) => Promise<ExtendedChain[]>;
@@ -1,13 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getChainsFromConfig = exports.getChains = void 0;
3
+ exports._getChains = exports.getChains = void 0;
4
4
  const request_js_1 = require("../utils/request.js");
5
5
  const withDedupe_js_1 = require("../utils/withDedupe.js");
6
6
  const getChains = async (client, params, options) => {
7
- return await (0, exports.getChainsFromConfig)(client.config, params, options);
7
+ return await (0, exports._getChains)(client.config, params, options);
8
8
  };
9
9
  exports.getChains = getChains;
10
- const getChainsFromConfig = async (config, params, options) => {
10
+ const _getChains = async (config, params, options) => {
11
11
  if (params) {
12
12
  for (const key of Object.keys(params)) {
13
13
  if (!params[key]) {
@@ -21,5 +21,5 @@ const getChainsFromConfig = async (config, params, options) => {
21
21
  }), { id: `${exports.getChains.name}.${urlSearchParams}` });
22
22
  return response.chains;
23
23
  };
24
- exports.getChainsFromConfig = getChainsFromConfig;
24
+ exports._getChains = _getChains;
25
25
  //# sourceMappingURL=getChains.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getChains.js","sourceRoot":"","sources":["../../../src/actions/getChains.ts"],"names":[],"mappings":";;;AAOA,oDAA6C;AAC7C,0DAAmD;AAU5C,MAAM,SAAS,GAAG,KAAK,EAC5B,MAAiB,EACjB,MAAsB,EACtB,OAAwB,EACE,EAAE;IAC5B,OAAO,MAAM,IAAA,2BAAmB,EAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;AAClE,CAAC,CAAA;AANY,QAAA,SAAS,aAMrB;AAEM,MAAM,mBAAmB,GAAG,KAAK,EACtC,MAAqB,EACrB,MAAsB,EACtB,OAAwB,EACE,EAAE;IAC5B,IAAI,MAAM,EAAE,CAAC;QACX,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YACtC,IAAI,CAAC,MAAM,CAAC,GAA0B,CAAC,EAAE,CAAC;gBACxC,OAAO,MAAM,CAAC,GAA0B,CAAC,CAAA;YAC3C,CAAC;QACH,CAAC;IACH,CAAC;IACD,MAAM,eAAe,GAAG,IAAI,eAAe,CACzC,MAAgC,CACjC,CAAC,QAAQ,EAAE,CAAA;IACZ,MAAM,QAAQ,GAAG,MAAM,IAAA,0BAAU,EAC/B,GAAG,EAAE,CACH,IAAA,oBAAO,EACL,MAAM,EACN,GAAG,MAAM,CAAC,MAAM,WAAW,eAAe,EAAE,EAC5C;QACE,MAAM,EAAE,OAAO,EAAE,MAAM;KACxB,CACF,EACH,EAAE,EAAE,EAAE,GAAG,iBAAS,CAAC,IAAI,IAAI,eAAe,EAAE,EAAE,CAC/C,CAAA;IACD,OAAO,QAAQ,CAAC,MAAM,CAAA;AACxB,CAAC,CAAA;AA3BY,QAAA,mBAAmB,uBA2B/B"}
1
+ {"version":3,"file":"getChains.js","sourceRoot":"","sources":["../../../src/actions/getChains.ts"],"names":[],"mappings":";;;AAOA,oDAA6C;AAC7C,0DAAmD;AAU5C,MAAM,SAAS,GAAG,KAAK,EAC5B,MAAiB,EACjB,MAAsB,EACtB,OAAwB,EACE,EAAE;IAC5B,OAAO,MAAM,IAAA,kBAAU,EAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;AACzD,CAAC,CAAA;AANY,QAAA,SAAS,aAMrB;AAEM,MAAM,UAAU,GAAG,KAAK,EAC7B,MAAqB,EACrB,MAAsB,EACtB,OAAwB,EACE,EAAE;IAC5B,IAAI,MAAM,EAAE,CAAC;QACX,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YACtC,IAAI,CAAC,MAAM,CAAC,GAA0B,CAAC,EAAE,CAAC;gBACxC,OAAO,MAAM,CAAC,GAA0B,CAAC,CAAA;YAC3C,CAAC;QACH,CAAC;IACH,CAAC;IACD,MAAM,eAAe,GAAG,IAAI,eAAe,CACzC,MAAgC,CACjC,CAAC,QAAQ,EAAE,CAAA;IACZ,MAAM,QAAQ,GAAG,MAAM,IAAA,0BAAU,EAC/B,GAAG,EAAE,CACH,IAAA,oBAAO,EACL,MAAM,EACN,GAAG,MAAM,CAAC,MAAM,WAAW,eAAe,EAAE,EAC5C;QACE,MAAM,EAAE,OAAO,EAAE,MAAM;KACxB,CACF,EACH,EAAE,EAAE,EAAE,GAAG,iBAAS,CAAC,IAAI,IAAI,eAAe,EAAE,EAAE,CAC/C,CAAA;IACD,OAAO,QAAQ,CAAC,MAAM,CAAA;AACxB,CAAC,CAAA;AA3BY,QAAA,UAAU,cA2BtB"}
@@ -15,7 +15,7 @@ const getRelayedTransactionStatus = async (client, params, options) => {
15
15
  const { taskId, ...otherParams } = params;
16
16
  const queryParams = new URLSearchParams(otherParams);
17
17
  const decodedTaskId = (0, decode_js_1.decodeTaskId)(taskId);
18
- if (decodedTaskId.length === 3) {
18
+ if (decodedTaskId.length >= 3) {
19
19
  return (await (0, getStatus_js_1.getStatus)(client, params, options));
20
20
  }
21
21
  const result = await (0, request_js_1.request)(client.config, `${client.config.apiUrl}/relayer/status/${taskId}?${queryParams}`, {
@@ -1 +1 @@
1
- {"version":3,"file":"getRelayedTransactionStatus.js","sourceRoot":"","sources":["../../../src/actions/getRelayedTransactionStatus.ts"],"names":[],"mappings":";;;AAMA,yDAAkD;AAClD,yDAAkD;AAClD,mDAAqD;AACrD,uDAAgD;AAEhD,kDAAiD;AACjD,oDAA6C;AAC7C,iDAA0C;AAUnC,MAAM,2BAA2B,GAAG,KAAK,EAC9C,MAAiB,EACjB,MAA0B,EAC1B,OAAwB,EACU,EAAE;IACpC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,IAAI,sBAAQ,CAChB,IAAI,2BAAe,CAAC,yCAAyC,CAAC,CAC/D,CAAA;IACH,CAAC;IAED,MAAM,EAAE,MAAM,EAAE,GAAG,WAAW,EAAE,GAAG,MAAM,CAAA;IACzC,MAAM,WAAW,GAAG,IAAI,eAAe,CACrC,WAAgD,CACjD,CAAA;IAED,MAAM,aAAa,GAAG,IAAA,wBAAY,EAAC,MAAM,CAAC,CAAA;IAE1C,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/B,OAAO,CAAC,MAAM,IAAA,wBAAS,EACrB,MAAM,EACN,MAAM,EACN,OAAO,CACR,CAAuC,CAAA;IAC1C,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,IAAA,oBAAO,EAC1B,MAAM,CAAC,MAAM,EACb,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,mBAAmB,MAAM,IAAI,WAAW,EAAE,EACjE;QACE,MAAM,EAAE,OAAO,EAAE,MAAM;KACxB,CACF,CAAA;IAED,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;QAC9B,MAAM,IAAI,wBAAS,CACjB,wBAAS,CAAC,WAAW,EACrB,MAAM,CAAC,IAAI,CAAC,IAAI,EAChB,MAAM,CAAC,IAAI,CAAC,OAAO,CACpB,CAAA;IACH,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAA;AACpB,CAAC,CAAA;AA3CY,QAAA,2BAA2B,+BA2CvC"}
1
+ {"version":3,"file":"getRelayedTransactionStatus.js","sourceRoot":"","sources":["../../../src/actions/getRelayedTransactionStatus.ts"],"names":[],"mappings":";;;AAMA,yDAAkD;AAClD,yDAAkD;AAClD,mDAAqD;AACrD,uDAAgD;AAEhD,kDAAiD;AACjD,oDAA6C;AAC7C,iDAA0C;AAUnC,MAAM,2BAA2B,GAAG,KAAK,EAC9C,MAAiB,EACjB,MAA0B,EAC1B,OAAwB,EACU,EAAE;IACpC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,IAAI,sBAAQ,CAChB,IAAI,2BAAe,CAAC,yCAAyC,CAAC,CAC/D,CAAA;IACH,CAAC;IAED,MAAM,EAAE,MAAM,EAAE,GAAG,WAAW,EAAE,GAAG,MAAM,CAAA;IACzC,MAAM,WAAW,GAAG,IAAI,eAAe,CACrC,WAAgD,CACjD,CAAA;IAED,MAAM,aAAa,GAAG,IAAA,wBAAY,EAAC,MAAM,CAAC,CAAA;IAE1C,IAAI,aAAa,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;QAC9B,OAAO,CAAC,MAAM,IAAA,wBAAS,EACrB,MAAM,EACN,MAAM,EACN,OAAO,CACR,CAAuC,CAAA;IAC1C,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,IAAA,oBAAO,EAC1B,MAAM,CAAC,MAAM,EACb,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,mBAAmB,MAAM,IAAI,WAAW,EAAE,EACjE;QACE,MAAM,EAAE,OAAO,EAAE,MAAM;KACxB,CACF,CAAA;IAED,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;QAC9B,MAAM,IAAI,wBAAS,CACjB,wBAAS,CAAC,WAAW,EACrB,MAAM,CAAC,IAAI,CAAC,IAAI,EAChB,MAAM,CAAC,IAAI,CAAC,OAAO,CACpB,CAAA;IACH,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAA;AACpB,CAAC,CAAA;AA3CY,QAAA,2BAA2B,+BA2CvC"}
@@ -1,13 +1,21 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getStepTransaction = void 0;
4
+ const types_1 = require("@lifi/types");
4
5
  const isStep_js_1 = require("../utils/isStep.js");
5
6
  const request_js_1 = require("../utils/request.js");
6
7
  const getStepTransaction = async (client, step, options) => {
7
8
  if (!(0, isStep_js_1.isStep)(step)) {
8
9
  console.warn('SDK Validation: Invalid Step', step);
9
10
  }
10
- return await (0, request_js_1.request)(client.config, `${client.config.apiUrl}/advanced/stepTransaction`, {
11
+ const { config } = client;
12
+ let requestUrl = `${config.apiUrl}/advanced/stepTransaction`;
13
+ const isJitoBundleEnabled = Boolean(config.routeOptions?.jitoBundle);
14
+ if (isJitoBundleEnabled && step.action.fromChainId === types_1.ChainId.SOL) {
15
+ const queryParams = new URLSearchParams({ jitoBundle: 'true' });
16
+ requestUrl = `${requestUrl}?${queryParams}`;
17
+ }
18
+ return await (0, request_js_1.request)(config, requestUrl, {
11
19
  method: 'POST',
12
20
  headers: {
13
21
  'Content-Type': 'application/json',
@@ -1 +1 @@
1
- {"version":3,"file":"getStepTransaction.js","sourceRoot":"","sources":["../../../src/actions/getStepTransaction.ts"],"names":[],"mappings":";;;AAEA,kDAA2C;AAC3C,oDAA6C;AAUtC,MAAM,kBAAkB,GAAG,KAAK,EACrC,MAAiB,EACjB,IAA+B,EAC/B,OAAwB,EACL,EAAE;IACrB,IAAI,CAAC,IAAA,kBAAM,EAAC,IAAI,CAAC,EAAE,CAAC;QAElB,OAAO,CAAC,IAAI,CAAC,8BAA8B,EAAE,IAAI,CAAC,CAAA;IACpD,CAAC;IAED,OAAO,MAAM,IAAA,oBAAO,EAClB,MAAM,CAAC,MAAM,EACb,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,2BAA2B,EAClD;QACE,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;SACnC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;QAC1B,MAAM,EAAE,OAAO,EAAE,MAAM;KACxB,CACF,CAAA;AACH,CAAC,CAAA;AAtBY,QAAA,kBAAkB,sBAsB9B"}
1
+ {"version":3,"file":"getStepTransaction.js","sourceRoot":"","sources":["../../../src/actions/getStepTransaction.ts"],"names":[],"mappings":";;;AACA,uCAAqC;AAErC,kDAA2C;AAC3C,oDAA6C;AAUtC,MAAM,kBAAkB,GAAG,KAAK,EACrC,MAAiB,EACjB,IAA+B,EAC/B,OAAwB,EACL,EAAE;IACrB,IAAI,CAAC,IAAA,kBAAM,EAAC,IAAI,CAAC,EAAE,CAAC;QAElB,OAAO,CAAC,IAAI,CAAC,8BAA8B,EAAE,IAAI,CAAC,CAAA;IACpD,CAAC;IAED,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAAA;IAEzB,IAAI,UAAU,GAAG,GAAG,MAAM,CAAC,MAAM,2BAA2B,CAAA;IAC5D,MAAM,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,UAAU,CAAC,CAAA;IAEpE,IAAI,mBAAmB,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,KAAK,eAAO,CAAC,GAAG,EAAE,CAAC;QAEnE,MAAM,WAAW,GAAG,IAAI,eAAe,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAA;QAC/D,UAAU,GAAG,GAAG,UAAU,IAAI,WAAW,EAAE,CAAA;IAC7C,CAAC;IAED,OAAO,MAAM,IAAA,oBAAO,EAAW,MAAM,EAAE,UAAU,EAAE;QACjD,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;SACnC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;QAC1B,MAAM,EAAE,OAAO,EAAE,MAAM;KACxB,CAAC,CAAA;AACJ,CAAC,CAAA;AA7BY,QAAA,kBAAkB,sBA6B9B"}
@@ -1,7 +1,8 @@
1
- import type { ChainId, ChainKey, ChainsRequest, ChainType, ConnectionsRequest, ConnectionsResponse, ContractCallsQuoteRequest, ExtendedChain, GasRecommendationRequest, GasRecommendationResponse, LiFiStep, RelayRequest, RelayResponseData, RelayStatusRequest, RelayStatusResponseData, RequestOptions, RoutesRequest, RoutesResponse, SignedLiFiStep, StatusResponse, Token, TokenAmount, TokenExtended, TokensExtendedResponse, TokensRequest, TokensResponse, ToolsRequest, ToolsResponse, TransactionAnalyticsRequest, TransactionAnalyticsResponse, WalletTokenExtended } from '@lifi/types';
1
+ import type { ChainId, ChainKey, ChainsRequest, ChainType, ConnectionsRequest, ConnectionsResponse, ContractCallsQuoteRequest, ExtendedChain, GasRecommendationRequest, GasRecommendationResponse, LiFiStep, PatchCallDataRequest, RelayRequest, RelayResponseData, RelayStatusRequest, RelayStatusResponseData, RequestOptions, RoutesRequest, RoutesResponse, SignedLiFiStep, StatusResponse, Token, TokenAmount, TokenExtended, TokensExtendedResponse, TokensRequest, TokensResponse, ToolsRequest, ToolsResponse, TransactionAnalyticsRequest, TransactionAnalyticsResponse, WalletTokenExtended } from '@lifi/types';
2
2
  import type { GetStatusRequestExtended, QuoteRequestFromAmount } from '../types/actions.js';
3
3
  import type { SDKClient } from '../types/core.js';
4
4
  import { getQuote } from './getQuote.js';
5
+ import { type PatchContractCallsResponse } from './patchContractCalls.js';
5
6
  export type Actions = {
6
7
  getChains: (params?: ChainsRequest, options?: RequestOptions) => Promise<ExtendedChain[]>;
7
8
  getConnections: (params: ConnectionsRequest, options?: RequestOptions) => Promise<ConnectionsResponse>;
@@ -34,5 +35,6 @@ export type Actions = {
34
35
  getTransactionHistory: (params: TransactionAnalyticsRequest, options?: RequestOptions) => Promise<TransactionAnalyticsResponse>;
35
36
  getWalletBalances: (walletAddress: string, options?: RequestOptions) => Promise<Record<number, WalletTokenExtended[]>>;
36
37
  relayTransaction: (params: RelayRequest, options?: RequestOptions) => Promise<RelayResponseData>;
38
+ patchContractCalls: (params: PatchCallDataRequest, options?: RequestOptions) => Promise<PatchContractCallsResponse[]>;
37
39
  };
38
40
  export declare function actions(client: SDKClient): Actions;
@@ -20,6 +20,7 @@ const getTokens_js_1 = require("./getTokens.js");
20
20
  const getTools_js_1 = require("./getTools.js");
21
21
  const getTransactionHistory_js_1 = require("./getTransactionHistory.js");
22
22
  const getWalletBalances_js_1 = require("./getWalletBalances.js");
23
+ const patchContractCalls_js_1 = require("./patchContractCalls.js");
23
24
  const relayTransaction_js_1 = require("./relayTransaction.js");
24
25
  function actions(client) {
25
26
  return {
@@ -43,6 +44,7 @@ function actions(client) {
43
44
  getTransactionHistory: (params, options) => (0, getTransactionHistory_js_1.getTransactionHistory)(client, params, options),
44
45
  getWalletBalances: (walletAddress, options) => (0, getWalletBalances_js_1.getWalletBalances)(client, walletAddress, options),
45
46
  relayTransaction: (params, options) => (0, relayTransaction_js_1.relayTransaction)(client, params, options),
47
+ patchContractCalls: (params, options) => (0, patchContractCalls_js_1.patchContractCalls)(client, params, options),
46
48
  };
47
49
  }
48
50
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/actions/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/actions/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import type { PatchCallDataRequest, RequestOptions } from '@lifi/types';
2
+ import type { SDKClient } from '../types/core.js';
3
+ export interface PatchContractCallsResponse {
4
+ target: string;
5
+ value: bigint;
6
+ callData: string;
7
+ allowFailure: boolean;
8
+ isDelegateCall: boolean;
9
+ }
10
+ export declare const patchContractCalls: (client: SDKClient, params: PatchCallDataRequest, options?: RequestOptions) => Promise<PatchContractCallsResponse[]>;
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.patchContractCalls = void 0;
4
+ const request_js_1 = require("../utils/request.js");
5
+ const patchContractCalls = async (client, params, options) => {
6
+ return await (0, request_js_1.request)(client.config, `${client.config.apiUrl}/patcher`, {
7
+ method: 'POST',
8
+ headers: {
9
+ 'Content-Type': 'application/json',
10
+ },
11
+ body: JSON.stringify(params),
12
+ signal: options?.signal,
13
+ });
14
+ };
15
+ exports.patchContractCalls = patchContractCalls;
16
+ //# sourceMappingURL=patchContractCalls.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"patchContractCalls.js","sourceRoot":"","sources":["../../../src/actions/patchContractCalls.ts"],"names":[],"mappings":";;;AAEA,oDAA6C;AAUtC,MAAM,kBAAkB,GAAG,KAAK,EACrC,MAAiB,EACjB,MAA4B,EAC5B,OAAwB,EACe,EAAE;IACzC,OAAO,MAAM,IAAA,oBAAO,EAClB,MAAM,CAAC,MAAM,EACb,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,UAAU,EACjC;QACE,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;SACnC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;QAC5B,MAAM,EAAE,OAAO,EAAE,MAAM;KACxB,CACF,CAAA;AACH,CAAC,CAAA;AAjBY,QAAA,kBAAkB,sBAiB9B"}
@@ -16,6 +16,7 @@ function createClient(options) {
16
16
  apiUrl: options?.apiUrl ?? 'https://li.quest/v1',
17
17
  rpcUrls: options?.rpcUrls ?? {},
18
18
  debug: options?.debug ?? false,
19
+ preloadChains: options?.preloadChains ?? true,
19
20
  integrator: options?.integrator ?? 'lifi-sdk',
20
21
  };
21
22
  let _providers = [];
@@ -37,6 +38,9 @@ function createClient(options) {
37
38
  }
38
39
  _providers = Array.from(providerMap.values());
39
40
  },
41
+ setChains(chains) {
42
+ _storage.setChains(chains);
43
+ },
40
44
  async getChains() {
41
45
  return await _storage.getChains();
42
46
  },
@@ -1 +1 @@
1
- {"version":3,"file":"createClient.js","sourceRoot":"","sources":["../../../src/client/createClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createClient.js","sourceRoot":"","sources":["../../../src/client/createClient.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import { ChainId, type ExtendedChain } from '@lifi/types';
2
2
  import type { SDKBaseConfig } from '../types/core.js';
3
3
  export declare const getClientStorage: (config: SDKBaseConfig) => {
4
4
  readonly needReset: boolean;
5
+ setChains(chains: ExtendedChain[]): void;
5
6
  getChains(): Promise<ExtendedChain[]>;
6
7
  getRpcUrls(): Promise<Partial<Record<ChainId, string[]>>>;
7
8
  };
@@ -4,18 +4,31 @@ exports.getClientStorage = void 0;
4
4
  const types_1 = require("@lifi/types");
5
5
  const getChains_js_1 = require("../actions/getChains.js");
6
6
  const utils_js_1 = require("../core/utils.js");
7
+ const chainsRefreshInterval = 1000 * 60 * 60 * 6;
7
8
  const getClientStorage = (config) => {
8
9
  let _chains = [];
9
10
  let _rpcUrls = { ...config.rpcUrls };
10
11
  let _chainsUpdatedAt;
12
+ const updateRpcUrls = () => {
13
+ _rpcUrls = { ...config.rpcUrls };
14
+ _rpcUrls = (0, utils_js_1.getRpcUrlsFromChains)(_rpcUrls, _chains, [types_1.ChainId.SOL]);
15
+ };
11
16
  return {
12
17
  get needReset() {
13
18
  return (!_chainsUpdatedAt ||
14
- Date.now() - _chainsUpdatedAt >= 1000 * 60 * 60 * 24);
19
+ Date.now() - _chainsUpdatedAt >= chainsRefreshInterval);
20
+ },
21
+ setChains(chains) {
22
+ _chains = chains;
23
+ _chainsUpdatedAt = Date.now();
24
+ updateRpcUrls();
15
25
  },
16
26
  async getChains() {
27
+ if (!config.preloadChains) {
28
+ return _chains;
29
+ }
17
30
  if (this.needReset || !_chains.length) {
18
- _chains = await (0, getChains_js_1.getChainsFromConfig)(config, {
31
+ _chains = await (0, getChains_js_1._getChains)(config, {
19
32
  chainTypes: [
20
33
  types_1.ChainType.EVM,
21
34
  types_1.ChainType.SVM,
@@ -24,14 +37,12 @@ const getClientStorage = (config) => {
24
37
  ],
25
38
  });
26
39
  _chainsUpdatedAt = Date.now();
40
+ updateRpcUrls();
27
41
  }
28
42
  return _chains;
29
43
  },
30
44
  async getRpcUrls() {
31
- if (this.needReset || !Object.keys(_rpcUrls).length) {
32
- const chains = await this.getChains();
33
- _rpcUrls = (0, utils_js_1.getRpcUrlsFromChains)(_rpcUrls, chains, [types_1.ChainId.SOL]);
34
- }
45
+ await this.getChains();
35
46
  return _rpcUrls;
36
47
  },
37
48
  };
@@ -1 +1 @@
1
- {"version":3,"file":"getClientStorage.js","sourceRoot":"","sources":["../../../src/client/getClientStorage.ts"],"names":[],"mappings":";;;AAAA,uCAAoE;AACpE,0DAA6D;AAC7D,+CAAuD;AAGhD,MAAM,gBAAgB,GAAG,CAAC,MAAqB,EAAE,EAAE;IACxD,IAAI,OAAO,GAAG,EAAqB,CAAA;IACnC,IAAI,QAAQ,GAAG,EAAE,GAAG,MAAM,CAAC,OAAO,EAAa,CAAA;IAC/C,IAAI,gBAAoC,CAAA;IAExC,OAAO;QACL,IAAI,SAAS;YACX,OAAO,CACL,CAAC,gBAAgB;gBACjB,IAAI,CAAC,GAAG,EAAE,GAAG,gBAAgB,IAAI,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CACrD,CAAA;QACH,CAAC;QACD,KAAK,CAAC,SAAS;YACb,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;gBACtC,OAAO,GAAG,MAAM,IAAA,kCAAmB,EAAC,MAAM,EAAE;oBAC1C,UAAU,EAAE;wBACV,iBAAS,CAAC,GAAG;wBACb,iBAAS,CAAC,GAAG;wBACb,iBAAS,CAAC,IAAI;wBACd,iBAAS,CAAC,GAAG;qBACd;iBACF,CAAC,CAAA;gBACF,gBAAgB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;YAC/B,CAAC;YACD,OAAO,OAAO,CAAA;QAChB,CAAC;QACD,KAAK,CAAC,UAAU;YACd,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC;gBACpD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAA;gBACrC,QAAQ,GAAG,IAAA,+BAAoB,EAAC,QAAQ,EAAE,MAAM,EAAE,CAAC,eAAO,CAAC,GAAG,CAAC,CAAC,CAAA;YAClE,CAAC;YACD,OAAO,QAAQ,CAAA;QACjB,CAAC;KACF,CAAA;AACH,CAAC,CAAA;AAlCY,QAAA,gBAAgB,oBAkC5B"}
1
+ {"version":3,"file":"getClientStorage.js","sourceRoot":"","sources":["../../../src/client/getClientStorage.ts"],"names":[],"mappings":";;;AAAA,uCAAoE;AACpE,0DAAoD;AACpD,+CAAuD;AAIvD,MAAM,qBAAqB,GAAG,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;AAEzC,MAAM,gBAAgB,GAAG,CAAC,MAAqB,EAAE,EAAE;IACxD,IAAI,OAAO,GAAG,EAAqB,CAAA;IACnC,IAAI,QAAQ,GAAG,EAAE,GAAG,MAAM,CAAC,OAAO,EAAa,CAAA;IAC/C,IAAI,gBAAoC,CAAA;IAExC,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,QAAQ,GAAG,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE,CAAA;QAChC,QAAQ,GAAG,IAAA,+BAAoB,EAAC,QAAQ,EAAE,OAAO,EAAE,CAAC,eAAO,CAAC,GAAG,CAAC,CAAC,CAAA;IACnE,CAAC,CAAA;IAED,OAAO;QACL,IAAI,SAAS;YACX,OAAO,CACL,CAAC,gBAAgB;gBACjB,IAAI,CAAC,GAAG,EAAE,GAAG,gBAAgB,IAAI,qBAAqB,CACvD,CAAA;QACH,CAAC;QACD,SAAS,CAAC,MAAuB;YAC/B,OAAO,GAAG,MAAM,CAAA;YAChB,gBAAgB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;YAC7B,aAAa,EAAE,CAAA;QACjB,CAAC;QACD,KAAK,CAAC,SAAS;YAGb,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;gBAC1B,OAAO,OAAO,CAAA;YAChB,CAAC;YAED,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;gBACtC,OAAO,GAAG,MAAM,IAAA,yBAAU,EAAC,MAAM,EAAE;oBACjC,UAAU,EAAE;wBACV,iBAAS,CAAC,GAAG;wBACb,iBAAS,CAAC,GAAG;wBACb,iBAAS,CAAC,IAAI;wBACd,iBAAS,CAAC,GAAG;qBACd;iBACF,CAAC,CAAA;gBACF,gBAAgB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;gBAC7B,aAAa,EAAE,CAAA;YACjB,CAAC;YACD,OAAO,OAAO,CAAA;QAChB,CAAC;QACD,KAAK,CAAC,UAAU;YACd,MAAM,IAAI,CAAC,SAAS,EAAE,CAAA;YACtB,OAAO,QAAQ,CAAA;QACjB,CAAC;KACF,CAAA;AACH,CAAC,CAAA;AAhDY,QAAA,gBAAgB,oBAgD5B"}
@@ -0,0 +1,5 @@
1
+ import type { StepExecutorContext, TaskResult } from '../types/execution.js';
2
+ export declare abstract class BaseStepExecutionTask {
3
+ shouldRun(_context: StepExecutorContext): Promise<boolean>;
4
+ abstract run(context: StepExecutorContext): Promise<TaskResult>;
5
+ }
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BaseStepExecutionTask = void 0;
4
+ class BaseStepExecutionTask {
5
+ shouldRun(_context) {
6
+ return Promise.resolve(true);
7
+ }
8
+ }
9
+ exports.BaseStepExecutionTask = BaseStepExecutionTask;
10
+ //# sourceMappingURL=BaseStepExecutionTask.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BaseStepExecutionTask.js","sourceRoot":"","sources":["../../../src/core/BaseStepExecutionTask.ts"],"names":[],"mappings":";;;AAEA,MAAsB,qBAAqB;IACzC,SAAS,CAAC,QAA6B;QACrC,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IAC9B,CAAC;CAGF;AAND,sDAMC"}
@@ -1,6 +1,9 @@
1
- import type { LiFiStep } from '@lifi/types';
2
- import type { ExecutionOptions, InteractionSettings, SDKClient, StepExecutor, StepExecutorOptions } from '../types/core.js';
1
+ import { ExecuteStepRetryError } from '../errors/errors.js';
2
+ import type { SDKError } from '../errors/SDKError.js';
3
+ import type { ExecuteStepRetryParams, ExecutionAction, ExecutionOptions, InteractionSettings, LiFiStepExtended, SDKClient, StepExecutor, StepExecutorOptions } from '../types/core.js';
4
+ import type { StepExecutorBaseContext, StepExecutorContext } from '../types/execution.js';
3
5
  import { StatusManager } from './StatusManager.js';
6
+ import type { TaskPipeline } from './TaskPipeline.js';
4
7
  export declare abstract class BaseStepExecutor implements StepExecutor {
5
8
  protected executionOptions?: ExecutionOptions;
6
9
  protected statusManager: StatusManager;
@@ -8,5 +11,9 @@ export declare abstract class BaseStepExecutor implements StepExecutor {
8
11
  allowExecution: boolean;
9
12
  constructor(options: StepExecutorOptions);
10
13
  setInteraction: (settings?: InteractionSettings) => void;
11
- abstract executeStep(client: SDKClient, step: LiFiStep): Promise<LiFiStep>;
14
+ private createBaseContext;
15
+ abstract createContext(baseContext: StepExecutorBaseContext): Promise<StepExecutorContext>;
16
+ abstract createPipeline(context: StepExecutorContext): TaskPipeline;
17
+ abstract parseErrors(error: Error, step?: LiFiStepExtended, action?: ExecutionAction, retryParams?: ExecuteStepRetryParams): Promise<SDKError | ExecuteStepRetryError>;
18
+ executeStep: (client: SDKClient, step: LiFiStepExtended, retryParams?: ExecuteStepRetryParams) => Promise<LiFiStepExtended>;
12
19
  }
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.BaseStepExecutor = void 0;
4
+ const errors_js_1 = require("../errors/errors.js");
4
5
  const StatusManager_js_1 = require("./StatusManager.js");
5
6
  const defaultInteractionSettings = {
6
7
  allowInteraction: true,
@@ -25,6 +26,58 @@ class BaseStepExecutor {
25
26
  this.statusManager.allowUpdates(interactionSettings.allowUpdates);
26
27
  this.allowExecution = interactionSettings.allowExecution;
27
28
  };
29
+ createBaseContext = async (client, step, retryParams) => {
30
+ const fromChain = await client.getChainById(step.action.fromChainId);
31
+ const toChain = await client.getChainById(step.action.toChainId);
32
+ const isBridgeExecution = fromChain.id !== toChain.id;
33
+ return {
34
+ client,
35
+ step,
36
+ fromChain,
37
+ toChain,
38
+ isBridgeExecution,
39
+ retryParams,
40
+ statusManager: this.statusManager,
41
+ executionOptions: this.executionOptions,
42
+ allowUserInteraction: this.allowUserInteraction,
43
+ };
44
+ };
45
+ executeStep = async (client, step, retryParams) => {
46
+ try {
47
+ step.execution = this.statusManager.initializeExecution(step);
48
+ const baseContext = await this.createBaseContext(client, step, retryParams);
49
+ const context = await this.createContext(baseContext);
50
+ const pipeline = this.createPipeline(context);
51
+ await pipeline.run(context);
52
+ return step;
53
+ }
54
+ catch (error) {
55
+ const action = step.execution?.lastActionType
56
+ ? this.statusManager.findAction(step, step.execution.lastActionType)
57
+ : undefined;
58
+ const parsed = await this.parseErrors(error, step, action, retryParams);
59
+ if (!(parsed instanceof errors_js_1.ExecuteStepRetryError)) {
60
+ if (action) {
61
+ this.statusManager.updateAction(step, action.type, 'FAILED', {
62
+ error: {
63
+ message: parsed.cause?.message,
64
+ code: parsed.code,
65
+ },
66
+ });
67
+ }
68
+ else {
69
+ this.statusManager.updateExecution(step, {
70
+ status: 'FAILED',
71
+ error: {
72
+ message: parsed.cause?.message,
73
+ code: parsed.code,
74
+ },
75
+ });
76
+ }
77
+ }
78
+ throw parsed;
79
+ }
80
+ };
28
81
  }
29
82
  exports.BaseStepExecutor = BaseStepExecutor;
30
83
  //# sourceMappingURL=BaseStepExecutor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BaseStepExecutor.js","sourceRoot":"","sources":["../../../src/core/BaseStepExecutor.ts"],"names":[],"mappings":";;;AAQA,yDAAkD;AAGlD,MAAM,0BAA0B,GAAG;IACjC,gBAAgB,EAAE,IAAI;IACtB,YAAY,EAAE,IAAI;IAClB,cAAc,EAAE,IAAI;CACrB,CAAA;AAED,MAAsB,gBAAgB;IAC1B,gBAAgB,CAAmB;IACnC,aAAa,CAAe;IAE/B,oBAAoB,GAAG,IAAI,CAAA;IAC3B,cAAc,GAAG,IAAI,CAAA;IAE5B,YAAY,OAA4B;QACtC,IAAI,CAAC,aAAa,GAAG,IAAI,gCAAa,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QACvD,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAA;IAClD,CAAC;IAED,cAAc,GAAG,CAAC,QAA8B,EAAQ,EAAE;QACxD,MAAM,mBAAmB,GAAG;YAC1B,GAAG,0BAA0B;YAC7B,GAAG,QAAQ;SACZ,CAAA;QACD,IAAI,CAAC,oBAAoB,GAAG,mBAAmB,CAAC,gBAAgB,CAAA;QAChE,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAA;QACjE,IAAI,CAAC,cAAc,GAAG,mBAAmB,CAAC,cAAc,CAAA;IAC1D,CAAC,CAAA;CAGF;AAvBD,4CAuBC"}
1
+ {"version":3,"file":"BaseStepExecutor.js","sourceRoot":"","sources":["../../../src/core/BaseStepExecutor.ts"],"names":[],"mappings":"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"}
@@ -1,22 +1,23 @@
1
1
  import type { ChainId, LiFiStep } from '@lifi/types';
2
- import type { Execution, ExecutionStatus, LiFiStepExtended, Process, ProcessStatus, ProcessType } from '../types/core.js';
3
- type FindOrCreateProcessProps = {
2
+ import type { Execution, ExecutionAction, ExecutionActionStatus, ExecutionActionType, LiFiStepExtended } from '../types/core.js';
3
+ type ActionProps = {
4
4
  step: LiFiStepExtended;
5
- type: ProcessType;
6
- chainId?: ChainId;
7
- status?: ProcessStatus;
8
- startedAt?: number;
5
+ type: ExecutionActionType;
6
+ chainId: ChainId;
7
+ status: ExecutionActionStatus;
9
8
  };
10
9
  export declare class StatusManager {
11
10
  private readonly routeId;
12
11
  private shouldUpdate;
13
12
  constructor(routeId: string);
14
- initExecutionObject: (step: LiFiStepExtended) => Execution;
15
- updateExecution(step: LiFiStepExtended, status: ExecutionStatus, execution?: Partial<Execution>): LiFiStep;
16
- findProcess(step: LiFiStepExtended, type: ProcessType, status?: ProcessStatus): Process | undefined;
17
- findOrCreateProcess: ({ step, type, chainId, status, startedAt, }: FindOrCreateProcessProps) => Process;
18
- updateProcess: (step: LiFiStepExtended, type: ProcessType, status: ProcessStatus, params?: Partial<Process>) => Process;
19
- removeProcess: (step: LiFiStepExtended, type: ProcessType) => void;
13
+ initializeExecution: (step: LiFiStepExtended) => Execution;
14
+ updateExecution(step: LiFiStepExtended, execution: Partial<Execution>): LiFiStep;
15
+ findAction(step: LiFiStepExtended, type: ExecutionActionType): ExecutionAction | undefined;
16
+ createAction: ({ step, type, chainId, status, }: ActionProps) => ExecutionAction;
17
+ initializeAction: ({ step, type, chainId, status, }: ActionProps) => ExecutionAction;
18
+ updateAction: (step: LiFiStepExtended, type: ExecutionActionType, status: ExecutionActionStatus, params?: Partial<ExecutionAction & {
19
+ signedAt?: number;
20
+ }>) => ExecutionAction;
20
21
  updateStepInRoute: (step: LiFiStep) => LiFiStep;
21
22
  allowUpdates(value: boolean): void;
22
23
  }
@@ -1,127 +1,121 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.StatusManager = void 0;
4
+ const actionMessages_js_1 = require("./actionMessages.js");
4
5
  const executionState_js_1 = require("./executionState.js");
5
- const processMessages_js_1 = require("./processMessages.js");
6
6
  class StatusManager {
7
7
  routeId;
8
8
  shouldUpdate = true;
9
9
  constructor(routeId) {
10
10
  this.routeId = routeId;
11
11
  }
12
- initExecutionObject = (step) => {
12
+ initializeExecution = (step) => {
13
13
  if (!step.execution) {
14
14
  step.execution = {
15
- status: 'PENDING',
16
- process: [],
17
15
  startedAt: Date.now(),
16
+ status: 'PENDING',
17
+ actions: [],
18
18
  };
19
19
  this.updateStepInRoute(step);
20
20
  }
21
21
  if (step.execution.status === 'FAILED') {
22
22
  step.execution.startedAt = Date.now();
23
23
  step.execution.status = 'PENDING';
24
+ step.execution.signedAt = undefined;
25
+ step.execution.lastActionType = undefined;
26
+ step.execution.error = undefined;
24
27
  this.updateStepInRoute(step);
25
28
  }
26
29
  return step.execution;
27
30
  };
28
- updateExecution(step, status, execution) {
31
+ updateExecution(step, execution) {
29
32
  if (!step.execution) {
30
33
  throw Error("Can't update empty execution.");
31
34
  }
32
- step.execution.status = status;
33
- if (status === 'DONE') {
34
- step.execution.doneAt = Date.now();
35
- }
36
- if (execution) {
37
- step.execution = {
38
- ...step.execution,
39
- ...execution,
40
- };
41
- }
35
+ step.execution = {
36
+ ...step.execution,
37
+ ...execution,
38
+ };
42
39
  this.updateStepInRoute(step);
43
40
  return step;
44
41
  }
45
- findProcess(step, type, status) {
46
- if (!step.execution?.process) {
42
+ findAction(step, type) {
43
+ if (!step.execution?.actions) {
47
44
  throw new Error("Execution hasn't been initialized.");
48
45
  }
49
- const process = step.execution.process.find((p) => p.type === type);
50
- if (process && status && process.status !== status) {
51
- process.status = status;
52
- this.updateStepInRoute(step);
53
- }
54
- return process;
46
+ const action = step.execution.actions.find((p) => p.type === type);
47
+ return action;
55
48
  }
56
- findOrCreateProcess = ({ step, type, chainId, status, startedAt, }) => {
57
- const process = this.findProcess(step, type, status);
58
- if (process) {
59
- return process;
49
+ createAction = ({ step, type, chainId, status, }) => {
50
+ if (!step.execution) {
51
+ throw new Error("Execution hasn't been initialized.");
60
52
  }
61
- const newProcess = {
62
- type: type,
63
- startedAt: startedAt ?? Date.now(),
64
- message: (0, processMessages_js_1.getProcessMessage)(type, status ?? 'STARTED'),
65
- status: status ?? 'STARTED',
66
- chainId: chainId,
53
+ const newAction = {
54
+ type,
55
+ message: (0, actionMessages_js_1.getActionMessage)(type, status),
56
+ status,
57
+ chainId,
67
58
  };
68
- step.execution.process.push(newProcess);
59
+ step.execution.actions.push(newAction);
60
+ step.execution.lastActionType = type;
69
61
  this.updateStepInRoute(step);
70
- return newProcess;
62
+ return newAction;
71
63
  };
72
- updateProcess = (step, type, status, params) => {
64
+ initializeAction = ({ step, type, chainId, status, }) => {
65
+ const action = this.findAction(step, type);
66
+ if (action) {
67
+ return this.updateAction(step, type, status, {
68
+ error: undefined,
69
+ });
70
+ }
71
+ return this.createAction({ step, type, chainId, status });
72
+ };
73
+ updateAction = (step, type, status, params) => {
73
74
  if (!step.execution) {
74
75
  throw new Error("Can't update an empty step execution.");
75
76
  }
76
- const currentProcess = this.findProcess(step, type);
77
- if (!currentProcess) {
78
- throw new Error("Can't find a process for the given type.");
77
+ const currentAction = this.findAction(step, type);
78
+ if (!currentAction) {
79
+ throw new Error("Can't find an action for the given type.");
79
80
  }
80
81
  switch (status) {
81
82
  case 'CANCELLED':
82
- currentProcess.doneAt = Date.now();
83
83
  break;
84
84
  case 'FAILED':
85
- currentProcess.doneAt = Date.now();
86
85
  step.execution.status = 'FAILED';
86
+ if (params?.error) {
87
+ step.execution.error = params.error;
88
+ }
87
89
  break;
88
90
  case 'DONE':
89
- currentProcess.doneAt = Date.now();
90
91
  break;
91
92
  case 'PENDING':
92
93
  step.execution.status = 'PENDING';
93
- currentProcess.pendingAt = Date.now();
94
+ if (params?.signedAt) {
95
+ step.execution.signedAt = params.signedAt;
96
+ }
94
97
  break;
95
98
  case 'RESET_REQUIRED':
96
99
  case 'MESSAGE_REQUIRED':
97
100
  case 'ACTION_REQUIRED':
98
101
  step.execution.status = 'ACTION_REQUIRED';
99
- currentProcess.actionRequiredAt = Date.now();
100
102
  break;
101
103
  default:
102
104
  break;
103
105
  }
104
- currentProcess.status = status;
105
- currentProcess.message = (0, processMessages_js_1.getProcessMessage)(type, status);
106
+ step.execution.lastActionType = type;
107
+ currentAction.status = status;
108
+ currentAction.message = (0, actionMessages_js_1.getActionMessage)(type, status);
106
109
  if (params) {
107
- for (const [key, value] of Object.entries(params)) {
108
- currentProcess[key] = value;
109
- }
110
+ const { signedAt: _signedAt, ...rest } = params;
111
+ Object.assign(currentAction, rest);
110
112
  }
111
- step.execution.process = [
112
- ...step.execution.process.filter((process) => process.status === 'DONE'),
113
- ...step.execution.process.filter((process) => process.status !== 'DONE'),
113
+ step.execution.actions = [
114
+ ...step.execution.actions.filter((action) => action.status === 'DONE'),
115
+ ...step.execution.actions.filter((action) => action.status !== 'DONE'),
114
116
  ];
115
117
  this.updateStepInRoute(step);
116
- return currentProcess;
117
- };
118
- removeProcess = (step, type) => {
119
- if (!step.execution) {
120
- throw new Error("Execution hasn't been initialized.");
121
- }
122
- const index = step.execution.process.findIndex((p) => p.type === type);
123
- step.execution.process.splice(index, 1);
124
- this.updateStepInRoute(step);
118
+ return currentAction;
125
119
  };
126
120
  updateStepInRoute = (step) => {
127
121
  if (!this.shouldUpdate) {