@lifi/sdk 4.0.0-alpha.8 → 4.0.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (260) hide show
  1. package/dist/cjs/actions/getQuote.js +2 -1
  2. package/dist/cjs/actions/getQuote.js.map +1 -1
  3. package/dist/cjs/actions/getRelayedTransactionStatus.js +1 -1
  4. package/dist/cjs/actions/getRelayedTransactionStatus.js.map +1 -1
  5. package/dist/cjs/actions/getRelayerQuote.js +2 -1
  6. package/dist/cjs/actions/getRelayerQuote.js.map +1 -1
  7. package/dist/cjs/actions/getStepTransaction.js +18 -1
  8. package/dist/cjs/actions/getStepTransaction.js.map +1 -1
  9. package/dist/cjs/core/BaseStepExecutionTask.d.ts +5 -0
  10. package/dist/cjs/core/BaseStepExecutionTask.js +10 -0
  11. package/dist/cjs/core/BaseStepExecutionTask.js.map +1 -0
  12. package/dist/cjs/core/BaseStepExecutor.d.ts +10 -3
  13. package/dist/cjs/core/BaseStepExecutor.js +53 -0
  14. package/dist/cjs/core/BaseStepExecutor.js.map +1 -1
  15. package/dist/cjs/core/StatusManager.d.ts +13 -12
  16. package/dist/cjs/core/StatusManager.js +55 -61
  17. package/dist/cjs/core/StatusManager.js.map +1 -1
  18. package/dist/cjs/core/TaskPipeline.d.ts +7 -0
  19. package/dist/cjs/core/TaskPipeline.js +27 -0
  20. package/dist/cjs/core/TaskPipeline.js.map +1 -0
  21. package/dist/cjs/core/actionMessages.d.ts +4 -0
  22. package/dist/cjs/core/{processMessages.js → actionMessages.js} +25 -9
  23. package/dist/cjs/core/actionMessages.js.map +1 -0
  24. package/dist/cjs/core/execution.js +13 -1
  25. package/dist/cjs/core/execution.js.map +1 -1
  26. package/dist/cjs/core/prepareRestart.js +6 -6
  27. package/dist/cjs/core/prepareRestart.js.map +1 -1
  28. package/dist/cjs/core/storage.d.ts +17 -0
  29. package/dist/cjs/core/storage.js +36 -0
  30. package/dist/cjs/core/storage.js.map +1 -0
  31. package/dist/cjs/core/tasks/CheckBalanceTask.d.ts +5 -0
  32. package/dist/cjs/core/tasks/CheckBalanceTask.js +26 -0
  33. package/dist/cjs/core/tasks/CheckBalanceTask.js.map +1 -0
  34. package/dist/cjs/core/tasks/PrepareTransactionTask.d.ts +5 -0
  35. package/dist/cjs/core/tasks/PrepareTransactionTask.js +36 -0
  36. package/dist/cjs/core/tasks/PrepareTransactionTask.js.map +1 -0
  37. package/dist/cjs/core/tasks/WaitForTransactionStatusTask.d.ts +8 -0
  38. package/dist/cjs/core/tasks/WaitForTransactionStatusTask.js +73 -0
  39. package/dist/cjs/core/tasks/WaitForTransactionStatusTask.js.map +1 -0
  40. package/dist/cjs/core/{checkBalance.d.ts → tasks/helpers/checkBalance.d.ts} +1 -1
  41. package/dist/cjs/core/{checkBalance.js → tasks/helpers/checkBalance.js} +4 -4
  42. package/dist/cjs/core/tasks/helpers/checkBalance.js.map +1 -0
  43. package/dist/cjs/core/tasks/helpers/getTransactionRequestData.d.ts +2 -0
  44. package/dist/cjs/core/tasks/helpers/getTransactionRequestData.js +30 -0
  45. package/dist/cjs/core/tasks/helpers/getTransactionRequestData.js.map +1 -0
  46. package/dist/cjs/core/{stepComparison.d.ts → tasks/helpers/stepComparison.d.ts} +2 -2
  47. package/dist/cjs/core/{stepComparison.js → tasks/helpers/stepComparison.js} +3 -3
  48. package/dist/cjs/core/tasks/helpers/stepComparison.js.map +1 -0
  49. package/dist/cjs/core/tasks/helpers/waitForTransactionStatus.d.ts +4 -0
  50. package/dist/cjs/core/{waitForTransactionStatus.js → tasks/helpers/waitForTransactionStatus.js} +10 -8
  51. package/dist/cjs/core/tasks/helpers/waitForTransactionStatus.js.map +1 -0
  52. package/dist/cjs/core/utils.d.ts +6 -1
  53. package/dist/cjs/errors/SDKError.d.ts +3 -3
  54. package/dist/cjs/errors/SDKError.js +3 -3
  55. package/dist/cjs/errors/SDKError.js.map +1 -1
  56. package/dist/cjs/errors/constants.d.ts +2 -1
  57. package/dist/cjs/errors/constants.js +1 -0
  58. package/dist/cjs/errors/constants.js.map +1 -1
  59. package/dist/cjs/errors/errors.d.ts +5 -0
  60. package/dist/cjs/errors/errors.js +9 -1
  61. package/dist/cjs/errors/errors.js.map +1 -1
  62. package/dist/cjs/index.d.ts +15 -6
  63. package/dist/cjs/index.js +26 -7
  64. package/dist/cjs/index.js.map +1 -1
  65. package/dist/cjs/types/core.d.ts +21 -17
  66. package/dist/cjs/types/execution.d.ts +22 -0
  67. package/dist/cjs/types/execution.js +3 -0
  68. package/dist/cjs/types/execution.js.map +1 -0
  69. package/dist/cjs/utils/waitForResult.d.ts +1 -1
  70. package/dist/cjs/utils/waitForResult.js +6 -2
  71. package/dist/cjs/utils/waitForResult.js.map +1 -1
  72. package/dist/cjs/utils/withDedupe.d.ts +5 -0
  73. package/dist/cjs/utils/withDedupe.js +2 -0
  74. package/dist/cjs/utils/withDedupe.js.map +1 -1
  75. package/dist/cjs/version.d.ts +1 -1
  76. package/dist/cjs/version.js +1 -1
  77. package/dist/cjs/version.js.map +1 -1
  78. package/dist/esm/actions/getQuote.js +2 -1
  79. package/dist/esm/actions/getQuote.js.map +1 -1
  80. package/dist/esm/actions/getRelayedTransactionStatus.js +1 -1
  81. package/dist/esm/actions/getRelayedTransactionStatus.js.map +1 -1
  82. package/dist/esm/actions/getRelayerQuote.js +2 -1
  83. package/dist/esm/actions/getRelayerQuote.js.map +1 -1
  84. package/dist/esm/actions/getStepTransaction.js +18 -1
  85. package/dist/esm/actions/getStepTransaction.js.map +1 -1
  86. package/dist/esm/core/BaseStepExecutionTask.d.ts +5 -0
  87. package/dist/esm/core/BaseStepExecutionTask.js +6 -0
  88. package/dist/esm/core/BaseStepExecutionTask.js.map +1 -0
  89. package/dist/esm/core/BaseStepExecutor.d.ts +10 -3
  90. package/dist/esm/core/BaseStepExecutor.js +53 -0
  91. package/dist/esm/core/BaseStepExecutor.js.map +1 -1
  92. package/dist/esm/core/StatusManager.d.ts +40 -39
  93. package/dist/esm/core/StatusManager.js +86 -92
  94. package/dist/esm/core/StatusManager.js.map +1 -1
  95. package/dist/esm/core/TaskPipeline.d.ts +7 -0
  96. package/dist/esm/core/TaskPipeline.js +23 -0
  97. package/dist/esm/core/TaskPipeline.js.map +1 -0
  98. package/dist/esm/core/actionMessages.d.ts +4 -0
  99. package/dist/esm/core/{processMessages.js → actionMessages.js} +24 -8
  100. package/dist/esm/core/actionMessages.js.map +1 -0
  101. package/dist/esm/core/execution.js +14 -3
  102. package/dist/esm/core/execution.js.map +1 -1
  103. package/dist/esm/core/prepareRestart.js +10 -9
  104. package/dist/esm/core/prepareRestart.js.map +1 -1
  105. package/dist/esm/core/storage.d.ts +17 -0
  106. package/dist/esm/core/storage.js +30 -0
  107. package/dist/esm/core/storage.js.map +1 -0
  108. package/dist/esm/core/tasks/CheckBalanceTask.d.ts +5 -0
  109. package/dist/esm/core/tasks/CheckBalanceTask.js +22 -0
  110. package/dist/esm/core/tasks/CheckBalanceTask.js.map +1 -0
  111. package/dist/esm/core/tasks/PrepareTransactionTask.d.ts +5 -0
  112. package/dist/esm/core/tasks/PrepareTransactionTask.js +32 -0
  113. package/dist/esm/core/tasks/PrepareTransactionTask.js.map +1 -0
  114. package/dist/esm/core/tasks/WaitForTransactionStatusTask.d.ts +8 -0
  115. package/dist/esm/core/tasks/WaitForTransactionStatusTask.js +74 -0
  116. package/dist/esm/core/tasks/WaitForTransactionStatusTask.js.map +1 -0
  117. package/dist/esm/core/{checkBalance.d.ts → tasks/helpers/checkBalance.d.ts} +1 -1
  118. package/dist/esm/core/{checkBalance.js → tasks/helpers/checkBalance.js} +4 -4
  119. package/dist/esm/core/tasks/helpers/checkBalance.js.map +1 -0
  120. package/dist/esm/core/tasks/helpers/getTransactionRequestData.d.ts +2 -0
  121. package/dist/esm/core/tasks/helpers/getTransactionRequestData.js +26 -0
  122. package/dist/esm/core/tasks/helpers/getTransactionRequestData.js.map +1 -0
  123. package/dist/esm/core/{stepComparison.d.ts → tasks/helpers/stepComparison.d.ts} +2 -2
  124. package/dist/esm/core/{stepComparison.js → tasks/helpers/stepComparison.js} +3 -3
  125. package/dist/esm/core/tasks/helpers/stepComparison.js.map +1 -0
  126. package/dist/esm/core/tasks/helpers/waitForTransactionStatus.d.ts +4 -0
  127. package/dist/esm/core/{waitForTransactionStatus.js → tasks/helpers/waitForTransactionStatus.js} +9 -7
  128. package/dist/esm/core/tasks/helpers/waitForTransactionStatus.js.map +1 -0
  129. package/dist/esm/core/utils.d.ts +6 -1
  130. package/dist/esm/errors/SDKError.d.ts +3 -3
  131. package/dist/esm/errors/SDKError.js +4 -4
  132. package/dist/esm/errors/SDKError.js.map +1 -1
  133. package/dist/esm/errors/constants.d.ts +2 -1
  134. package/dist/esm/errors/constants.js +1 -0
  135. package/dist/esm/errors/constants.js.map +1 -1
  136. package/dist/esm/errors/errors.d.ts +10 -0
  137. package/dist/esm/errors/errors.js +12 -0
  138. package/dist/esm/errors/errors.js.map +1 -1
  139. package/dist/esm/index.d.ts +15 -6
  140. package/dist/esm/index.js +12 -5
  141. package/dist/esm/index.js.map +1 -1
  142. package/dist/esm/types/core.d.ts +25 -17
  143. package/dist/esm/types/execution.d.ts +23 -0
  144. package/dist/esm/types/execution.js +2 -0
  145. package/dist/esm/types/execution.js.map +1 -0
  146. package/dist/esm/utils/waitForResult.d.ts +2 -2
  147. package/dist/esm/utils/waitForResult.js +7 -3
  148. package/dist/esm/utils/waitForResult.js.map +1 -1
  149. package/dist/esm/utils/withDedupe.d.ts +10 -0
  150. package/dist/esm/utils/withDedupe.js +1 -1
  151. package/dist/esm/utils/withDedupe.js.map +1 -1
  152. package/dist/esm/version.d.ts +1 -1
  153. package/dist/esm/version.js +1 -1
  154. package/dist/esm/version.js.map +1 -1
  155. package/dist/types/actions/getRelayerQuote.d.ts.map +1 -1
  156. package/dist/types/actions/getStepTransaction.d.ts.map +1 -1
  157. package/dist/types/core/BaseStepExecutionTask.d.ts +6 -0
  158. package/dist/types/core/BaseStepExecutionTask.d.ts.map +1 -0
  159. package/dist/types/core/BaseStepExecutor.d.ts +10 -3
  160. package/dist/types/core/BaseStepExecutor.d.ts.map +1 -1
  161. package/dist/types/core/StatusManager.d.ts +40 -39
  162. package/dist/types/core/StatusManager.d.ts.map +1 -1
  163. package/dist/types/core/TaskPipeline.d.ts +8 -0
  164. package/dist/types/core/TaskPipeline.d.ts.map +1 -0
  165. package/dist/types/core/actionMessages.d.ts +5 -0
  166. package/dist/types/core/actionMessages.d.ts.map +1 -0
  167. package/dist/types/core/execution.d.ts.map +1 -1
  168. package/dist/types/core/prepareRestart.d.ts.map +1 -1
  169. package/dist/types/core/storage.d.ts +18 -0
  170. package/dist/types/core/storage.d.ts.map +1 -0
  171. package/dist/types/core/tasks/CheckBalanceTask.d.ts +6 -0
  172. package/dist/types/core/tasks/CheckBalanceTask.d.ts.map +1 -0
  173. package/dist/types/core/tasks/PrepareTransactionTask.d.ts +6 -0
  174. package/dist/types/core/tasks/PrepareTransactionTask.d.ts.map +1 -0
  175. package/dist/types/core/tasks/WaitForTransactionStatusTask.d.ts +9 -0
  176. package/dist/types/core/tasks/WaitForTransactionStatusTask.d.ts.map +1 -0
  177. package/dist/types/core/{checkBalance.d.ts → tasks/helpers/checkBalance.d.ts} +1 -1
  178. package/dist/types/core/tasks/helpers/checkBalance.d.ts.map +1 -0
  179. package/dist/types/core/tasks/helpers/getTransactionRequestData.d.ts +3 -0
  180. package/dist/types/core/tasks/helpers/getTransactionRequestData.d.ts.map +1 -0
  181. package/dist/types/core/{stepComparison.d.ts → tasks/helpers/stepComparison.d.ts} +2 -2
  182. package/dist/types/core/tasks/helpers/stepComparison.d.ts.map +1 -0
  183. package/dist/types/core/tasks/helpers/waitForTransactionStatus.d.ts +5 -0
  184. package/dist/types/core/tasks/helpers/waitForTransactionStatus.d.ts.map +1 -0
  185. package/dist/types/core/utils.d.ts +6 -1
  186. package/dist/types/core/utils.d.ts.map +1 -1
  187. package/dist/types/errors/SDKError.d.ts +3 -3
  188. package/dist/types/errors/SDKError.d.ts.map +1 -1
  189. package/dist/types/errors/constants.d.ts +2 -1
  190. package/dist/types/errors/constants.d.ts.map +1 -1
  191. package/dist/types/errors/errors.d.ts +10 -0
  192. package/dist/types/errors/errors.d.ts.map +1 -1
  193. package/dist/types/index.d.ts +15 -6
  194. package/dist/types/index.d.ts.map +1 -1
  195. package/dist/types/types/core.d.ts +25 -17
  196. package/dist/types/types/core.d.ts.map +1 -1
  197. package/dist/types/types/execution.d.ts +24 -0
  198. package/dist/types/types/execution.d.ts.map +1 -0
  199. package/dist/types/utils/waitForResult.d.ts +2 -2
  200. package/dist/types/utils/waitForResult.d.ts.map +1 -1
  201. package/dist/types/utils/withDedupe.d.ts +10 -0
  202. package/dist/types/utils/withDedupe.d.ts.map +1 -1
  203. package/dist/types/version.d.ts +1 -1
  204. package/dist/types/version.d.ts.map +1 -1
  205. package/package.json +2 -2
  206. package/src/actions/getQuote.ts +4 -1
  207. package/src/actions/getRelayedTransactionStatus.ts +1 -1
  208. package/src/actions/getRelayerQuote.ts +4 -1
  209. package/src/actions/getStepTransaction.ts +27 -11
  210. package/src/core/BaseStepExecutionTask.ts +9 -0
  211. package/src/core/BaseStepExecutor.ts +91 -2
  212. package/src/core/StatusManager.ts +108 -113
  213. package/src/core/TaskPipeline.ts +28 -0
  214. package/src/core/{processMessages.ts → actionMessages.ts} +32 -12
  215. package/src/core/execution.ts +17 -3
  216. package/src/core/prepareRestart.ts +12 -11
  217. package/src/core/storage.ts +42 -0
  218. package/src/core/tasks/CheckBalanceTask.ts +29 -0
  219. package/src/core/tasks/PrepareTransactionTask.ts +62 -0
  220. package/src/core/tasks/WaitForTransactionStatusTask.ts +114 -0
  221. package/src/core/{checkBalance.ts → tasks/helpers/checkBalance.ts} +5 -5
  222. package/src/core/tasks/helpers/getTransactionRequestData.ts +47 -0
  223. package/src/core/{stepComparison.ts → tasks/helpers/stepComparison.ts} +5 -5
  224. package/src/core/{waitForTransactionStatus.ts → tasks/helpers/waitForTransactionStatus.ts} +11 -9
  225. package/src/errors/SDKError.ts +5 -5
  226. package/src/errors/constants.ts +1 -0
  227. package/src/errors/errors.ts +24 -0
  228. package/src/index.ts +27 -7
  229. package/src/types/core.ts +30 -25
  230. package/src/types/execution.ts +32 -0
  231. package/src/utils/waitForResult.ts +9 -4
  232. package/src/utils/withDedupe.ts +1 -1
  233. package/src/version.ts +1 -1
  234. package/dist/cjs/core/checkBalance.js.map +0 -1
  235. package/dist/cjs/core/processMessages.d.ts +0 -4
  236. package/dist/cjs/core/processMessages.js.map +0 -1
  237. package/dist/cjs/core/stepComparison.js.map +0 -1
  238. package/dist/cjs/core/waitForDestinationChainTransaction.d.ts +0 -4
  239. package/dist/cjs/core/waitForDestinationChainTransaction.js +0 -69
  240. package/dist/cjs/core/waitForDestinationChainTransaction.js.map +0 -1
  241. package/dist/cjs/core/waitForTransactionStatus.d.ts +0 -4
  242. package/dist/cjs/core/waitForTransactionStatus.js.map +0 -1
  243. package/dist/esm/core/checkBalance.js.map +0 -1
  244. package/dist/esm/core/processMessages.d.ts +0 -4
  245. package/dist/esm/core/processMessages.js.map +0 -1
  246. package/dist/esm/core/stepComparison.js.map +0 -1
  247. package/dist/esm/core/waitForDestinationChainTransaction.d.ts +0 -4
  248. package/dist/esm/core/waitForDestinationChainTransaction.js +0 -71
  249. package/dist/esm/core/waitForDestinationChainTransaction.js.map +0 -1
  250. package/dist/esm/core/waitForTransactionStatus.d.ts +0 -4
  251. package/dist/esm/core/waitForTransactionStatus.js.map +0 -1
  252. package/dist/types/core/checkBalance.d.ts.map +0 -1
  253. package/dist/types/core/processMessages.d.ts +0 -5
  254. package/dist/types/core/processMessages.d.ts.map +0 -1
  255. package/dist/types/core/stepComparison.d.ts.map +0 -1
  256. package/dist/types/core/waitForDestinationChainTransaction.d.ts +0 -5
  257. package/dist/types/core/waitForDestinationChainTransaction.d.ts.map +0 -1
  258. package/dist/types/core/waitForTransactionStatus.d.ts +0 -5
  259. package/dist/types/core/waitForTransactionStatus.d.ts.map +0 -1
  260. package/src/core/waitForDestinationChainTransaction.ts +0 -106
@@ -0,0 +1,30 @@
1
+ export class LocalStorageAdapter {
2
+ get(key) {
3
+ return window.localStorage.getItem(key);
4
+ }
5
+ set(key, value) {
6
+ window.localStorage.setItem(key, value);
7
+ }
8
+ remove(key) {
9
+ window.localStorage.removeItem(key);
10
+ }
11
+ }
12
+ export class InMemoryStorage {
13
+ store = new Map();
14
+ get(key) {
15
+ return this.store.get(key) ?? null;
16
+ }
17
+ set(key, value) {
18
+ this.store.set(key, value);
19
+ }
20
+ remove(key) {
21
+ this.store.delete(key);
22
+ }
23
+ }
24
+ export function createDefaultStorage() {
25
+ if (typeof window !== 'undefined' && window.localStorage) {
26
+ return new LocalStorageAdapter();
27
+ }
28
+ return new InMemoryStorage();
29
+ }
30
+ //# sourceMappingURL=storage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storage.js","sourceRoot":"","sources":["../../../src/core/storage.ts"],"names":[],"mappings":"AAMA,MAAM,OAAO,mBAAmB;IAC9B,GAAG,CAAC,GAAW;QACb,OAAO,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;IACzC,CAAC;IAED,GAAG,CAAC,GAAW,EAAE,KAAa;QAC5B,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;IACzC,CAAC;IAED,MAAM,CAAC,GAAW;QAChB,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;IACrC,CAAC;CACF;AAED,MAAM,OAAO,eAAe;IAClB,KAAK,GAAG,IAAI,GAAG,EAAkB,CAAA;IAEzC,GAAG,CAAC,GAAW;QACb,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,CAAA;IACpC,CAAC;IAED,GAAG,CAAC,GAAW,EAAE,KAAa;QAC5B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;IAC5B,CAAC;IAED,MAAM,CAAC,GAAW;QAChB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;IACxB,CAAC;CACF;AAED,MAAM,UAAU,oBAAoB;IAClC,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;QACzD,OAAO,IAAI,mBAAmB,EAAE,CAAA;IAClC,CAAC;IACD,OAAO,IAAI,eAAe,EAAE,CAAA;AAC9B,CAAC"}
@@ -0,0 +1,5 @@
1
+ import type { StepExecutorContext, TaskResult } from '../../types/execution.js';
2
+ import { BaseStepExecutionTask } from '../BaseStepExecutionTask.js';
3
+ export declare class CheckBalanceTask extends BaseStepExecutionTask {
4
+ run(context: StepExecutorContext): Promise<TaskResult>;
5
+ }
@@ -0,0 +1,22 @@
1
+ import { LiFiErrorCode } from '../../errors/constants.js';
2
+ import { TransactionError } from '../../errors/errors.js';
3
+ import { BaseStepExecutionTask } from '../BaseStepExecutionTask.js';
4
+ import { checkBalance } from './helpers/checkBalance.js';
5
+ export class CheckBalanceTask extends BaseStepExecutionTask {
6
+ async run(context) {
7
+ const { client, step, statusManager, isBridgeExecution } = context;
8
+ statusManager.initializeAction({
9
+ step,
10
+ type: isBridgeExecution ? 'CROSS_CHAIN' : 'SWAP',
11
+ chainId: step.action.fromChainId,
12
+ status: 'STARTED',
13
+ });
14
+ const walletAddress = step.action.fromAddress;
15
+ if (!walletAddress) {
16
+ throw new TransactionError(LiFiErrorCode.InternalError, 'The wallet address is undefined.');
17
+ }
18
+ await checkBalance(client, walletAddress, step);
19
+ return { status: 'COMPLETED' };
20
+ }
21
+ }
22
+ //# sourceMappingURL=CheckBalanceTask.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CheckBalanceTask.js","sourceRoot":"","sources":["../../../../src/core/tasks/CheckBalanceTask.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AAEzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAA;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAExD,MAAM,OAAO,gBAAiB,SAAQ,qBAAqB;IACzD,KAAK,CAAC,GAAG,CAAC,OAA4B;QACpC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,iBAAiB,EAAE,GAAG,OAAO,CAAA;QAElE,aAAa,CAAC,gBAAgB,CAAC;YAC7B,IAAI;YACJ,IAAI,EAAE,iBAAiB,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM;YAChD,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;YAChC,MAAM,EAAE,SAAS;SAClB,CAAC,CAAA;QAEF,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAA;QAC7C,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,MAAM,IAAI,gBAAgB,CACxB,aAAa,CAAC,aAAa,EAC3B,kCAAkC,CACnC,CAAA;QACH,CAAC;QAED,MAAM,YAAY,CAAC,MAAM,EAAE,aAAa,EAAE,IAAI,CAAC,CAAA;QAC/C,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,CAAA;IAChC,CAAC;CACF"}
@@ -0,0 +1,5 @@
1
+ import type { StepExecutorContext, TaskResult } from '../../types/execution.js';
2
+ import { BaseStepExecutionTask } from '../BaseStepExecutionTask.js';
3
+ export declare class PrepareTransactionTask extends BaseStepExecutionTask {
4
+ run(context: StepExecutorContext): Promise<TaskResult>;
5
+ }
@@ -0,0 +1,32 @@
1
+ import { getStepTransaction } from '../../actions/getStepTransaction.js';
2
+ import { LiFiErrorCode } from '../../errors/constants.js';
3
+ import { TransactionError } from '../../errors/errors.js';
4
+ import { BaseStepExecutionTask } from '../BaseStepExecutionTask.js';
5
+ import { stepComparison } from './helpers/stepComparison.js';
6
+ export class PrepareTransactionTask extends BaseStepExecutionTask {
7
+ async run(context) {
8
+ const { client, step, statusManager, allowUserInteraction, executionOptions, isBridgeExecution, } = context;
9
+ const action = statusManager.findAction(step, isBridgeExecution ? 'CROSS_CHAIN' : 'SWAP');
10
+ if (!action) {
11
+ throw new TransactionError(LiFiErrorCode.TransactionUnprepared, 'Unable to prepare transaction. Action not found.');
12
+ }
13
+ if (!step.transactionRequest) {
14
+ const { execution, ...stepBase } = step;
15
+ const updatedStep = await getStepTransaction(client, stepBase);
16
+ const comparedStep = await stepComparison(statusManager, step, updatedStep, allowUserInteraction, executionOptions);
17
+ Object.assign(step, {
18
+ ...comparedStep,
19
+ execution: step.execution,
20
+ });
21
+ }
22
+ if (!step.transactionRequest?.data) {
23
+ throw new TransactionError(LiFiErrorCode.TransactionUnprepared, 'Unable to prepare transaction. Transaction request data is not found.');
24
+ }
25
+ statusManager.updateAction(step, action.type, 'ACTION_REQUIRED');
26
+ if (!allowUserInteraction) {
27
+ return { status: 'PAUSED' };
28
+ }
29
+ return { status: 'COMPLETED' };
30
+ }
31
+ }
32
+ //# sourceMappingURL=PrepareTransactionTask.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PrepareTransactionTask.js","sourceRoot":"","sources":["../../../../src/core/tasks/PrepareTransactionTask.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAA;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AAEzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAA;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAA;AAE5D,MAAM,OAAO,sBAAuB,SAAQ,qBAAqB;IAC/D,KAAK,CAAC,GAAG,CAAC,OAA4B;QACpC,MAAM,EACJ,MAAM,EACN,IAAI,EACJ,aAAa,EACb,oBAAoB,EACpB,gBAAgB,EAChB,iBAAiB,GAClB,GAAG,OAAO,CAAA;QAEX,MAAM,MAAM,GAAG,aAAa,CAAC,UAAU,CACrC,IAAI,EACJ,iBAAiB,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAC3C,CAAA;QAED,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,gBAAgB,CACxB,aAAa,CAAC,qBAAqB,EACnC,kDAAkD,CACnD,CAAA;QACH,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC7B,MAAM,EAAE,SAAS,EAAE,GAAG,QAAQ,EAAE,GAAG,IAAI,CAAA;YACvC,MAAM,WAAW,GAAG,MAAM,kBAAkB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;YAC9D,MAAM,YAAY,GAAG,MAAM,cAAc,CACvC,aAAa,EACb,IAAI,EACJ,WAAW,EACX,oBAAoB,EACpB,gBAAgB,CACjB,CAAA;YACD,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE;gBAClB,GAAG,YAAY;gBACf,SAAS,EAAE,IAAI,CAAC,SAAS;aAC1B,CAAC,CAAA;QACJ,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,IAAI,EAAE,CAAC;YACnC,MAAM,IAAI,gBAAgB,CACxB,aAAa,CAAC,qBAAqB,EACnC,uEAAuE,CACxE,CAAA;QACH,CAAC;QAED,aAAa,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAA;QAEhE,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC1B,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAA;QAC7B,CAAC;QAED,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,CAAA;IAChC,CAAC;CACF"}
@@ -0,0 +1,8 @@
1
+ import type { ExecutionActionType } from '../../types/core.js';
2
+ import type { StepExecutorContext, TaskResult } from '../../types/execution.js';
3
+ import { BaseStepExecutionTask } from '../BaseStepExecutionTask.js';
4
+ export declare class WaitForTransactionStatusTask extends BaseStepExecutionTask {
5
+ readonly actionType: ExecutionActionType;
6
+ constructor(actionType: ExecutionActionType);
7
+ run(context: StepExecutorContext): Promise<TaskResult>;
8
+ }
@@ -0,0 +1,74 @@
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
+ }
74
+ //# sourceMappingURL=WaitForTransactionStatusTask.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WaitForTransactionStatusTask.js","sourceRoot":"","sources":["../../../../src/core/tasks/WaitForTransactionStatusTask.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
1
  import type { LiFiStep } from '@lifi/types';
2
- import type { SDKClient } from '../types/core.js';
2
+ import type { SDKClient } from '../../../types/core.js';
3
3
  export declare const checkBalance: (client: SDKClient, walletAddress: string, step: LiFiStep, depth?: number) => Promise<void>;
@@ -1,7 +1,7 @@
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';
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
5
  export const checkBalance = async (client, walletAddress, step, depth = 0) => {
6
6
  const token = await getTokenBalance(client, walletAddress, step.action.fromToken);
7
7
  if (token) {
@@ -0,0 +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"}
@@ -0,0 +1,2 @@
1
+ import type { ExecutionOptions, LiFiStepExtended } from '../../../types/core.js';
2
+ export declare const getTransactionRequestData: (step: LiFiStepExtended, executionOptions?: ExecutionOptions) => Promise<string>;
@@ -0,0 +1,26 @@
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;
25
+ };
26
+ //# sourceMappingURL=getTransactionRequestData.js.map
@@ -0,0 +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,6 +1,6 @@
1
1
  import type { LiFiStep } from '@lifi/types';
2
- import type { ExecutionOptions } from '../types/core.js';
3
- import type { StatusManager } from './StatusManager.js';
2
+ import type { StatusManager } from '../../../core/StatusManager.js';
3
+ import type { ExecutionOptions } from '../../../types/core.js';
4
4
  /**
5
5
  * This method checks whether the new and updated Step meets the required exchange rate conditions.
6
6
  * If yes it returns the updated Step.
@@ -1,6 +1,6 @@
1
- import { LiFiErrorCode } from '../errors/constants.js';
2
- import { TransactionError } from '../errors/errors.js';
3
- import { checkStepSlippageThreshold } from './utils.js';
1
+ import { checkStepSlippageThreshold } from '../../../core/utils.js';
2
+ import { LiFiErrorCode } from '../../../errors/constants.js';
3
+ import { TransactionError } from '../../../errors/errors.js';
4
4
  /**
5
5
  * This method checks whether the new and updated Step meets the required exchange rate conditions.
6
6
  * If yes it returns the updated Step.
@@ -0,0 +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"}
@@ -0,0 +1,4 @@
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,9 +1,9 @@
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 './processMessages.js';
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';
5
5
  const TRANSACTION_HASH_OBSERVERS = {};
6
- export async function waitForTransactionStatus(client, statusManager, txHash, step, processType, interval = 5_000) {
6
+ export async function waitForTransactionStatus(client, statusManager, txHash, step, actionType, interval = 5_000) {
7
7
  const _getStatus = () => {
8
8
  return getStatus(client, {
9
9
  fromChain: step.action.fromChainId,
@@ -17,7 +17,7 @@ export async function waitForTransactionStatus(client, statusManager, txHash, st
17
17
  case 'DONE':
18
18
  return statusResponse;
19
19
  case 'PENDING':
20
- statusManager?.updateProcess(step, processType, 'PENDING', {
20
+ statusManager?.updateAction(step, actionType, 'PENDING', {
21
21
  substatus: statusResponse.substatus,
22
22
  substatusMessage: statusResponse.substatusMessage ||
23
23
  getSubstatusMessage(statusResponse.status, statusResponse.substatus),
@@ -39,7 +39,9 @@ export async function waitForTransactionStatus(client, statusManager, txHash, st
39
39
  };
40
40
  let status = TRANSACTION_HASH_OBSERVERS[txHash];
41
41
  if (!status) {
42
- status = waitForResult(_getStatus, interval);
42
+ status = waitForResult(_getStatus, interval).finally(() => {
43
+ delete TRANSACTION_HASH_OBSERVERS[txHash];
44
+ });
43
45
  TRANSACTION_HASH_OBSERVERS[txHash] = status;
44
46
  }
45
47
  const resolvedStatus = await status;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"waitForTransactionStatus.js","sourceRoot":"","sources":["../../../../../src/core/tasks/helpers/waitForTransactionStatus.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAA;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AAEvD,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAA;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AAG7D,MAAM,0BAA0B,GAA4C,EAAE,CAAA;AAE9E,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,MAAiB,EACjB,aAA4B,EAC5B,MAAc,EACd,IAAc,EACd,UAA+B,EAC/B,QAAQ,GAAG,KAAK;IAEhB,MAAM,UAAU,GAAG,GAAwC,EAAE;QAC3D,OAAO,SAAS,CAAC,MAAM,EAAE;YACvB,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;YAClC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;YACpC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;YAC9B,MAAM;YACN,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;SACrD,CAAC;aACC,IAAI,CAAC,CAAC,cAAc,EAAE,EAAE;YACvB,QAAQ,cAAc,CAAC,MAAM,EAAE,CAAC;gBAC9B,KAAK,MAAM;oBACT,OAAO,cAAc,CAAA;gBACvB,KAAK,SAAS;oBACZ,aAAa,EAAE,YAAY,CAAC,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE;wBACvD,SAAS,EAAE,cAAc,CAAC,SAAS;wBACnC,gBAAgB,EACd,cAAc,CAAC,gBAAgB;4BAC/B,mBAAmB,CACjB,cAAc,CAAC,MAAM,EACrB,cAAc,CAAC,SAAS,CACzB;wBACH,MAAM,EAAG,cAAiC,CAAC,kBAAkB;qBAC9D,CAAC,CAAA;oBACF,OAAO,SAAS,CAAA;gBAClB,KAAK,WAAW;oBACd,OAAO,SAAS,CAAA;gBAClB;oBACE,OAAO,OAAO,CAAC,MAAM,EAAE,CAAA;YAC3B,CAAC;QACH,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;YACX,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa,EAAE,CAAC;gBAC3C,OAAO,CAAC,KAAK,CAAC,sCAAsC,EAAE,CAAC,CAAC,CAAA;YAC1D,CAAC;YACD,OAAO,SAAS,CAAA;QAClB,CAAC,CAAC,CAAA;IACN,CAAC,CAAA;IAED,IAAI,MAAM,GAAG,0BAA0B,CAAC,MAAM,CAAC,CAAA;IAE/C,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,GAAG,aAAa,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE;YACxD,OAAO,0BAA0B,CAAC,MAAM,CAAC,CAAA;QAC3C,CAAC,CAAC,CAAA;QACF,0BAA0B,CAAC,MAAM,CAAC,GAAG,MAAM,CAAA;IAC7C,CAAC;IAED,MAAM,cAAc,GAAG,MAAM,MAAM,CAAA;IAEnC,IAAI,CAAC,CAAC,WAAW,IAAI,cAAc,CAAC,EAAE,CAAC;QACrC,MAAM,IAAI,WAAW,CACnB,uDAAuD,CACxD,CAAA;IACH,CAAC;IAED,OAAO,cAAc,CAAA;AACvB,CAAC"}
@@ -82,13 +82,18 @@ export declare function getRpcUrlsFromChains(existingRpcUrls: RPCUrls, chains: E
82
82
  988?: string[] | undefined;
83
83
  4326?: string[] | undefined;
84
84
  3637?: string[] | undefined;
85
- 1151111081099710?: string[] | undefined;
85
+ 5734951?: string[] | undefined;
86
+ 2818?: string[] | undefined;
87
+ 4217?: string[] | undefined;
86
88
  1161011141099710?: string[] | undefined;
87
89
  111971151099710?: string[] | undefined;
90
+ 1151111081099710?: string[] | undefined;
91
+ 1021111031099710?: string[] | undefined;
88
92
  9270000000000000?: string[] | undefined;
89
93
  20000000000001?: string[] | undefined;
90
94
  20000000000002?: string[] | undefined;
91
95
  20000000000003?: string[] | undefined;
92
96
  20000000000004?: string[] | undefined;
97
+ 20000000000005?: string[] | undefined;
93
98
  728126428?: string[] | undefined;
94
99
  };
@@ -1,12 +1,12 @@
1
1
  import type { LiFiStep } from '@lifi/types';
2
- import type { Process } from '../types/core.js';
2
+ import type { ExecutionAction } from '../types/core.js';
3
3
  import type { BaseError } from './baseError.js';
4
4
  import type { ErrorCode } from './constants.js';
5
5
  export declare class SDKError extends Error {
6
6
  step?: LiFiStep;
7
- process?: Process;
7
+ action?: ExecutionAction;
8
8
  code: ErrorCode;
9
9
  name: string;
10
10
  cause: BaseError;
11
- constructor(cause: BaseError, step?: LiFiStep, process?: Process);
11
+ constructor(cause: BaseError, step?: LiFiStep, action?: ExecutionAction);
12
12
  }
@@ -1,18 +1,18 @@
1
1
  import { version } from '../version.js';
2
2
  // Note: SDKError is used to wrapper and present errors at the top level
3
- // Where opportunity allows we also add the step and the process related to the error
3
+ // Where opportunity allows we also add the step and the action related to the error
4
4
  export class SDKError extends Error {
5
5
  step;
6
- process;
6
+ action;
7
7
  code;
8
8
  name = 'SDKError';
9
9
  cause;
10
- constructor(cause, step, process) {
10
+ constructor(cause, step, action) {
11
11
  const errorMessage = `${cause.message ? `[${cause.name}] ${cause.message}` : 'Unknown error occurred'}\nLI.FI SDK version: ${version}`;
12
12
  super(errorMessage);
13
13
  this.name = 'SDKError';
14
14
  this.step = step;
15
- this.process = process;
15
+ this.action = action;
16
16
  this.cause = cause;
17
17
  this.stack = this.cause.stack;
18
18
  this.code = cause.code;
@@ -1 +1 @@
1
- {"version":3,"file":"SDKError.js","sourceRoot":"","sources":["../../../src/errors/SDKError.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAIvC,wEAAwE;AACxE,qFAAqF;AACrF,MAAM,OAAO,QAAS,SAAQ,KAAK;IACjC,IAAI,CAAW;IACf,OAAO,CAAU;IACjB,IAAI,CAAW;IACN,IAAI,GAAG,UAAU,CAAA;IACjB,KAAK,CAAW;IAEzB,YAAY,KAAgB,EAAE,IAAe,EAAE,OAAiB;QAC9D,MAAM,YAAY,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,wBAAwB,wBAAwB,OAAO,EAAE,CAAA;QACtI,KAAK,CAAC,YAAY,CAAC,CAAA;QACnB,IAAI,CAAC,IAAI,GAAG,UAAU,CAAA;QACtB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAClB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAA;QAC7B,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAA;IACxB,CAAC;CACF"}
1
+ {"version":3,"file":"SDKError.js","sourceRoot":"","sources":["../../../src/errors/SDKError.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAIvC,wEAAwE;AACxE,oFAAoF;AACpF,MAAM,OAAO,QAAS,SAAQ,KAAK;IACjC,IAAI,CAAW;IACf,MAAM,CAAkB;IACxB,IAAI,CAAW;IACN,IAAI,GAAG,UAAU,CAAA;IACjB,KAAK,CAAW;IAEzB,YAAY,KAAgB,EAAE,IAAe,EAAE,MAAwB;QACrE,MAAM,YAAY,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,wBAAwB,wBAAwB,OAAO,EAAE,CAAA;QACtI,KAAK,CAAC,YAAY,CAAC,CAAA;QACnB,IAAI,CAAC,IAAI,GAAG,UAAU,CAAA;QACtB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAClB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAA;QAC7B,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAA;IACxB,CAAC;CACF"}
@@ -9,7 +9,8 @@ export declare enum ErrorName {
9
9
  UnknownError = "UnknownError",
10
10
  SlippageError = "SlippageError",
11
11
  HTTPError = "HTTPError",
12
- ConfigError = "ConfigError"
12
+ ConfigError = "ConfigError",
13
+ ExecuteStepRetryError = "ExecuteStepRetryError"
13
14
  }
14
15
  export type ErrorCode = LiFiErrorCode;
15
16
  export declare enum LiFiErrorCode {
@@ -11,6 +11,7 @@ export var ErrorName;
11
11
  ErrorName["SlippageError"] = "SlippageError";
12
12
  ErrorName["HTTPError"] = "HTTPError";
13
13
  ErrorName["ConfigError"] = "ConfigError";
14
+ ErrorName["ExecuteStepRetryError"] = "ExecuteStepRetryError";
14
15
  })(ErrorName || (ErrorName = {}));
15
16
  export var LiFiErrorCode;
16
17
  (function (LiFiErrorCode) {
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/errors/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,SAYX;AAZD,WAAY,SAAS;IACnB,kCAAqB,CAAA;IACrB,4CAA+B,CAAA;IAC/B,wCAA2B,CAAA;IAC3B,kDAAqC,CAAA;IACrC,gDAAmC,CAAA;IACnC,0CAA6B,CAAA;IAC7B,4CAA+B,CAAA;IAC/B,0CAA6B,CAAA;IAC7B,4CAA+B,CAAA;IAC/B,oCAAuB,CAAA;IACvB,wCAA2B,CAAA;AAC7B,CAAC,EAZW,SAAS,KAAT,SAAS,QAYpB;AAID,MAAM,CAAN,IAAY,aA4BX;AA5BD,WAAY,aAAa;IACvB,sEAAoB,CAAA;IACpB,0EAAsB,CAAA;IACtB,wFAA6B,CAAA;IAC7B,8EAAwB,CAAA;IACxB,0DAAc,CAAA;IACd,kFAA0B,CAAA;IAC1B,4DAAe,CAAA;IACf,4EAAuB,CAAA;IACvB,sFAA4B,CAAA;IAC5B,sEAAoB,CAAA;IACpB,kFAA0B,CAAA;IAC1B,sEAAoB,CAAA;IACpB,8EAAwB,CAAA;IACxB,oEAAmB,CAAA;IACnB,8EAAwB,CAAA;IACxB,8EAAwB,CAAA;IACxB,gGAAiC,CAAA;IACjC,oGAAmC,CAAA;IACnC,gFAAyB,CAAA;IACzB,kGAAkC,CAAA;IAClC,kFAA0B,CAAA;IAC1B,kFAA0B,CAAA;IAC1B,kFAA0B,CAAA;IAC1B,8EAAwB,CAAA;IACxB,0EAAsB,CAAA;IACtB,0EAAsB,CAAA;IACtB,kEAAkB,CAAA;AACpB,CAAC,EA5BW,aAAa,KAAb,aAAa,QA4BxB;AAED,MAAM,CAAN,IAAY,YAMX;AAND,WAAY,YAAY;IACtB,wDAAwC,CAAA;IACxC,qIAAqH,CAAA;IACrH,qDAAqC,CAAA;IACrC,sEAAsD,CAAA;IACtD,iEAAiD,CAAA;AACnD,CAAC,EANW,YAAY,KAAZ,YAAY,QAMvB"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/errors/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,SAaX;AAbD,WAAY,SAAS;IACnB,kCAAqB,CAAA;IACrB,4CAA+B,CAAA;IAC/B,wCAA2B,CAAA;IAC3B,kDAAqC,CAAA;IACrC,gDAAmC,CAAA;IACnC,0CAA6B,CAAA;IAC7B,4CAA+B,CAAA;IAC/B,0CAA6B,CAAA;IAC7B,4CAA+B,CAAA;IAC/B,oCAAuB,CAAA;IACvB,wCAA2B,CAAA;IAC3B,4DAA+C,CAAA;AACjD,CAAC,EAbW,SAAS,KAAT,SAAS,QAapB;AAID,MAAM,CAAN,IAAY,aA4BX;AA5BD,WAAY,aAAa;IACvB,sEAAoB,CAAA;IACpB,0EAAsB,CAAA;IACtB,wFAA6B,CAAA;IAC7B,8EAAwB,CAAA;IACxB,0DAAc,CAAA;IACd,kFAA0B,CAAA;IAC1B,4DAAe,CAAA;IACf,4EAAuB,CAAA;IACvB,sFAA4B,CAAA;IAC5B,sEAAoB,CAAA;IACpB,kFAA0B,CAAA;IAC1B,sEAAoB,CAAA;IACpB,8EAAwB,CAAA;IACxB,oEAAmB,CAAA;IACnB,8EAAwB,CAAA;IACxB,8EAAwB,CAAA;IACxB,gGAAiC,CAAA;IACjC,oGAAmC,CAAA;IACnC,gFAAyB,CAAA;IACzB,kGAAkC,CAAA;IAClC,kFAA0B,CAAA;IAC1B,kFAA0B,CAAA;IAC1B,kFAA0B,CAAA;IAC1B,8EAAwB,CAAA;IACxB,0EAAsB,CAAA;IACtB,0EAAsB,CAAA;IACtB,kEAAkB,CAAA;AACpB,CAAC,EA5BW,aAAa,KAAb,aAAa,QA4BxB;AAED,MAAM,CAAN,IAAY,YAMX;AAND,WAAY,YAAY;IACtB,wDAAwC,CAAA;IACxC,qIAAqH,CAAA;IACrH,qDAAqC,CAAA;IACrC,sEAAsD,CAAA;IACtD,iEAAiD,CAAA;AACnD,CAAC,EANW,YAAY,KAAZ,YAAY,QAMvB"}
@@ -1,3 +1,4 @@
1
+ import type { ExecuteStepRetryParams } from '../types/core.js';
1
2
  import { BaseError } from './baseError.js';
2
3
  import { LiFiErrorCode } from './constants.js';
3
4
  export declare class RPCError extends BaseError {
@@ -21,3 +22,12 @@ export declare class ServerError extends BaseError {
21
22
  export declare class ValidationError extends BaseError {
22
23
  constructor(message: string);
23
24
  }
25
+ /**
26
+ * Thrown by a step executor when executeStep should be retried with the given params
27
+ * (e.g. wallet rejected 7702 upgrade → retry with atomicityNotReady).
28
+ * The execution layer catches this and retries executeStep(client, step, retryParams).
29
+ */
30
+ export declare class ExecuteStepRetryError extends BaseError {
31
+ readonly retryParams: ExecuteStepRetryParams;
32
+ constructor(message: string, retryParams: ExecuteStepRetryParams, cause?: Error);
33
+ }
@@ -35,4 +35,16 @@ export class ValidationError extends BaseError {
35
35
  super(ErrorName.ValidationError, LiFiErrorCode.ValidationError, message);
36
36
  }
37
37
  }
38
+ /**
39
+ * Thrown by a step executor when executeStep should be retried with the given params
40
+ * (e.g. wallet rejected 7702 upgrade → retry with atomicityNotReady).
41
+ * The execution layer catches this and retries executeStep(client, step, retryParams).
42
+ */
43
+ export class ExecuteStepRetryError extends BaseError {
44
+ retryParams;
45
+ constructor(message, retryParams, cause) {
46
+ super(ErrorName.ExecuteStepRetryError, LiFiErrorCode.InternalError, message, cause);
47
+ this.retryParams = retryParams;
48
+ }
49
+ }
38
50
  //# sourceMappingURL=errors.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/errors/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC1C,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAEzD,MAAM,OAAO,QAAS,SAAQ,SAAS;IACrC,YAAY,IAAmB,EAAE,OAAe,EAAE,KAAa;QAC7D,KAAK,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;IACjD,CAAC;CACF;AAED,MAAM,OAAO,aAAc,SAAQ,SAAS;IAC1C,YAAY,IAAmB,EAAE,OAAe,EAAE,KAAa;QAC7D,KAAK,CAAC,SAAS,CAAC,aAAa,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;IACtD,CAAC;CACF;AAED,MAAM,OAAO,gBAAiB,SAAQ,SAAS;IAC7C,YAAY,IAAmB,EAAE,OAAe,EAAE,KAAa;QAC7D,KAAK,CAAC,SAAS,CAAC,gBAAgB,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;IACzD,CAAC;CACF;AAED,MAAM,OAAO,YAAa,SAAQ,SAAS;IACzC,YAAY,OAAe,EAAE,KAAa;QACxC,KAAK,CAAC,SAAS,CAAC,YAAY,EAAE,aAAa,CAAC,aAAa,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;IAC5E,CAAC;CACF;AAED,MAAM,OAAO,YAAa,SAAQ,SAAS;IACzC,YAAY,OAAe,EAAE,KAAa;QACxC,KAAK,CAAC,SAAS,CAAC,YAAY,EAAE,aAAa,CAAC,YAAY,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;IAC3E,CAAC;CACF;AAED,MAAM,OAAO,WAAY,SAAQ,SAAS;IACxC,YAAY,OAAe;QACzB,KAAK,CAAC,SAAS,CAAC,WAAW,EAAE,aAAa,CAAC,aAAa,EAAE,OAAO,CAAC,CAAA;IACpE,CAAC;CACF;AAED,MAAM,OAAO,eAAgB,SAAQ,SAAS;IAC5C,YAAY,OAAe;QACzB,KAAK,CAAC,SAAS,CAAC,eAAe,EAAE,aAAa,CAAC,eAAe,EAAE,OAAO,CAAC,CAAA;IAC1E,CAAC;CACF"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/errors/errors.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC1C,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAEzD,MAAM,OAAO,QAAS,SAAQ,SAAS;IACrC,YAAY,IAAmB,EAAE,OAAe,EAAE,KAAa;QAC7D,KAAK,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;IACjD,CAAC;CACF;AAED,MAAM,OAAO,aAAc,SAAQ,SAAS;IAC1C,YAAY,IAAmB,EAAE,OAAe,EAAE,KAAa;QAC7D,KAAK,CAAC,SAAS,CAAC,aAAa,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;IACtD,CAAC;CACF;AAED,MAAM,OAAO,gBAAiB,SAAQ,SAAS;IAC7C,YAAY,IAAmB,EAAE,OAAe,EAAE,KAAa;QAC7D,KAAK,CAAC,SAAS,CAAC,gBAAgB,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;IACzD,CAAC;CACF;AAED,MAAM,OAAO,YAAa,SAAQ,SAAS;IACzC,YAAY,OAAe,EAAE,KAAa;QACxC,KAAK,CAAC,SAAS,CAAC,YAAY,EAAE,aAAa,CAAC,aAAa,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;IAC5E,CAAC;CACF;AAED,MAAM,OAAO,YAAa,SAAQ,SAAS;IACzC,YAAY,OAAe,EAAE,KAAa;QACxC,KAAK,CAAC,SAAS,CAAC,YAAY,EAAE,aAAa,CAAC,YAAY,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;IAC3E,CAAC;CACF;AAED,MAAM,OAAO,WAAY,SAAQ,SAAS;IACxC,YAAY,OAAe;QACzB,KAAK,CAAC,SAAS,CAAC,WAAW,EAAE,aAAa,CAAC,aAAa,EAAE,OAAO,CAAC,CAAA;IACpE,CAAC;CACF;AAED,MAAM,OAAO,eAAgB,SAAQ,SAAS;IAC5C,YAAY,OAAe;QACzB,KAAK,CAAC,SAAS,CAAC,eAAe,EAAE,aAAa,CAAC,eAAe,EAAE,OAAO,CAAC,CAAA;IAC1E,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,OAAO,qBAAsB,SAAQ,SAAS;IACzC,WAAW,CAAwB;IAE5C,YACE,OAAe,EACf,WAAmC,EACnC,KAAa;QAEb,KAAK,CACH,SAAS,CAAC,qBAAqB,EAC/B,aAAa,CAAC,aAAa,EAC3B,OAAO,EACP,KAAK,CACN,CAAA;QACD,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;IAChC,CAAC;CACF"}
@@ -22,19 +22,28 @@ export { actions } from './actions/index.js';
22
22
  export { patchContractCalls } from './actions/patchContractCalls.js';
23
23
  export { relayTransaction } from './actions/relayTransaction.js';
24
24
  export { createClient } from './client/createClient.js';
25
+ export { getActionMessage, getSubstatusMessage } from './core/actionMessages.js';
26
+ export { BaseStepExecutionTask } from './core/BaseStepExecutionTask.js';
25
27
  export { BaseStepExecutor } from './core/BaseStepExecutor.js';
26
- export { checkBalance } from './core/checkBalance.js';
27
28
  export { executeRoute, getActiveRoute, getActiveRoutes, resumeRoute, stopRouteExecution, updateRouteExecution, } from './core/execution.js';
28
29
  export { StatusManager } from './core/StatusManager.js';
29
- export { stepComparison } from './core/stepComparison.js';
30
- export { waitForDestinationChainTransaction } from './core/waitForDestinationChainTransaction.js';
30
+ export type { SDKStorage } from './core/storage.js';
31
+ export { createDefaultStorage, InMemoryStorage, LocalStorageAdapter, } from './core/storage.js';
32
+ export { TaskPipeline } from './core/TaskPipeline.js';
33
+ export { CheckBalanceTask } from './core/tasks/CheckBalanceTask.js';
34
+ export { checkBalance } from './core/tasks/helpers/checkBalance.js';
35
+ export { getTransactionRequestData } from './core/tasks/helpers/getTransactionRequestData.js';
36
+ export { stepComparison } from './core/tasks/helpers/stepComparison.js';
37
+ export { PrepareTransactionTask } from './core/tasks/PrepareTransactionTask.js';
38
+ export { WaitForTransactionStatusTask } from './core/tasks/WaitForTransactionStatusTask.js';
31
39
  export { BaseError } from './errors/baseError.js';
32
40
  export type { ErrorCode } from './errors/constants.js';
33
41
  export { ErrorMessage, ErrorName, LiFiErrorCode } from './errors/constants.js';
34
- export { BalanceError, ProviderError, RPCError, ServerError, TransactionError, UnknownError, ValidationError, } from './errors/errors.js';
42
+ export { BalanceError, ExecuteStepRetryError, ProviderError, RPCError, ServerError, TransactionError, UnknownError, ValidationError, } from './errors/errors.js';
35
43
  export { HTTPError } from './errors/httpError.js';
36
44
  export { SDKError } from './errors/SDKError.js';
37
- export type { AcceptExchangeRateUpdateHook, AcceptSlippageUpdateHook, AcceptSlippageUpdateHookParams, ContractCallParams, ContractTool, ExchangeRateUpdateParams, Execution, ExecutionOptions, ExecutionStatus, GetContractCallsHook, GetContractCallsResult, InteractionSettings, LiFiStepExtended, Process, ProcessStatus, ProcessType, RequestInterceptor, RouteExecutionData, RouteExecutionDataDictionary, RouteExecutionDictionary, RouteExtended, RPCUrls, SDKBaseConfig, SDKClient, SDKConfig, SDKProvider, StepExecutor, StepExecutorOptions, StepExtended, TransactionMethodType, TransactionParameters, TransactionRequestParameters, TransactionRequestUpdateHook, UpdateRouteHook, } from './types/core.js';
45
+ export type { AcceptExchangeRateUpdateHook, AcceptSlippageUpdateHook, AcceptSlippageUpdateHookParams, ContractCallParams, ContractTool, ExchangeRateUpdateParams, ExecuteStepRetryParams, Execution, ExecutionAction, ExecutionActionStatus, ExecutionActionType, ExecutionOptions, ExecutionStatus, GetContractCallsHook, GetContractCallsResult, InteractionSettings, LiFiStepExtended, RequestInterceptor, RouteExecutionData, RouteExecutionDataDictionary, RouteExecutionDictionary, RouteExtended, RPCUrls, SDKBaseConfig, SDKClient, SDKConfig, SDKProvider, StepExecutor, StepExecutorOptions, StepExtended, TransactionMethodType, TransactionParameters, TransactionRequestParameters, TransactionRequestUpdateHook, UpdateRouteHook, } from './types/core.js';
46
+ export type { StepExecutorBaseContext, StepExecutorContext, TaskResult, TaskStatus, } from './types/execution.js';
38
47
  export { checkPackageUpdates } from './utils/checkPackageUpdates.js';
39
48
  export { convertQuoteToRoute } from './utils/convertQuoteToRoute.js';
40
49
  export { fetchTxErrorDetails } from './utils/fetchTxErrorDetails.js';
@@ -43,4 +52,4 @@ export { isHex } from './utils/isHex.js';
43
52
  export { parseUnits } from './utils/parseUnits.js';
44
53
  export { sleep } from './utils/sleep.js';
45
54
  export { waitForResult } from './utils/waitForResult.js';
46
- export { withDedupe } from './utils/withDedupe.js';
55
+ export { LruMap, withDedupe } from './utils/withDedupe.js';
package/dist/esm/index.js CHANGED
@@ -24,15 +24,22 @@ export { actions } from './actions/index.js';
24
24
  export { patchContractCalls } from './actions/patchContractCalls.js';
25
25
  export { relayTransaction } from './actions/relayTransaction.js';
26
26
  export { createClient } from './client/createClient.js';
27
+ export { getActionMessage, getSubstatusMessage } from './core/actionMessages.js';
28
+ export { BaseStepExecutionTask } from './core/BaseStepExecutionTask.js';
27
29
  export { BaseStepExecutor } from './core/BaseStepExecutor.js';
28
- export { checkBalance } from './core/checkBalance.js';
29
30
  export { executeRoute, getActiveRoute, getActiveRoutes, resumeRoute, stopRouteExecution, updateRouteExecution, } from './core/execution.js';
30
31
  export { StatusManager } from './core/StatusManager.js';
31
- export { stepComparison } from './core/stepComparison.js';
32
- export { waitForDestinationChainTransaction } from './core/waitForDestinationChainTransaction.js';
32
+ export { createDefaultStorage, InMemoryStorage, LocalStorageAdapter, } from './core/storage.js';
33
+ export { TaskPipeline } from './core/TaskPipeline.js';
34
+ export { CheckBalanceTask } from './core/tasks/CheckBalanceTask.js';
35
+ export { checkBalance } from './core/tasks/helpers/checkBalance.js';
36
+ export { getTransactionRequestData } from './core/tasks/helpers/getTransactionRequestData.js';
37
+ export { stepComparison } from './core/tasks/helpers/stepComparison.js';
38
+ export { PrepareTransactionTask } from './core/tasks/PrepareTransactionTask.js';
39
+ export { WaitForTransactionStatusTask } from './core/tasks/WaitForTransactionStatusTask.js';
33
40
  export { BaseError } from './errors/baseError.js';
34
41
  export { ErrorMessage, ErrorName, LiFiErrorCode } from './errors/constants.js';
35
- export { BalanceError, ProviderError, RPCError, ServerError, TransactionError, UnknownError, ValidationError, } from './errors/errors.js';
42
+ export { BalanceError, ExecuteStepRetryError, ProviderError, RPCError, ServerError, TransactionError, UnknownError, ValidationError, } from './errors/errors.js';
36
43
  export { HTTPError } from './errors/httpError.js';
37
44
  export { SDKError } from './errors/SDKError.js';
38
45
  export { checkPackageUpdates } from './utils/checkPackageUpdates.js';
@@ -43,5 +50,5 @@ export { isHex } from './utils/isHex.js';
43
50
  export { parseUnits } from './utils/parseUnits.js';
44
51
  export { sleep } from './utils/sleep.js';
45
52
  export { waitForResult } from './utils/waitForResult.js';
46
- export { withDedupe } from './utils/withDedupe.js';
53
+ export { LruMap, withDedupe } from './utils/withDedupe.js';
47
54
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,qDAAqD;AACrD,cAAc,aAAa,CAAA;AAC3B,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAA;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAA;AAC1E,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAA;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAA;AAC1E,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AAChD,OAAO,EAAE,2BAA2B,EAAE,MAAM,0CAA0C,CAAA;AACtF,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAA;AACpE,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAA;AAChE,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAA;AAC9E,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAA;AAC1E,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAClE,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAA;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAA;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AACvD,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAChF,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAA;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAA;AAC7D,OAAO,EACL,YAAY,EACZ,cAAc,EACd,eAAe,EACf,WAAW,EACX,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAEvD,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,mBAAmB,GACpB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAA;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAA;AACnE,OAAO,EAAE,yBAAyB,EAAE,MAAM,mDAAmD,CAAA;AAC7F,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAA;AACvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAA;AAC/E,OAAO,EAAE,4BAA4B,EAAE,MAAM,8CAA8C,CAAA;AAC3F,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAEjD,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAC9E,OAAO,EACL,YAAY,EACZ,qBAAqB,EACrB,aAAa,EACb,QAAQ,EACR,WAAW,EACX,gBAAgB,EAChB,YAAY,EACZ,eAAe,GAChB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AA4C/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAA;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAA;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAA;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AACpD,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAClD,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AACxD,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA"}