@lifi/sdk 4.0.0-alpha.14 → 4.0.0-alpha.16

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 (192) hide show
  1. package/dist/cjs/core/BaseStepExecutionTask.d.ts +5 -0
  2. package/dist/cjs/core/BaseStepExecutionTask.js +10 -0
  3. package/dist/cjs/core/BaseStepExecutionTask.js.map +1 -0
  4. package/dist/cjs/core/BaseStepExecutor.d.ts +7 -3
  5. package/dist/cjs/core/BaseStepExecutor.js +24 -0
  6. package/dist/cjs/core/BaseStepExecutor.js.map +1 -1
  7. package/dist/cjs/core/StatusManager.d.ts +6 -3
  8. package/dist/cjs/core/StatusManager.js +21 -17
  9. package/dist/cjs/core/StatusManager.js.map +1 -1
  10. package/dist/cjs/core/TaskPipeline.d.ts +7 -0
  11. package/dist/cjs/core/TaskPipeline.js +46 -0
  12. package/dist/cjs/core/TaskPipeline.js.map +1 -0
  13. package/dist/cjs/core/actionMessages.js +19 -3
  14. package/dist/cjs/core/actionMessages.js.map +1 -1
  15. package/dist/cjs/core/execution.js +13 -1
  16. package/dist/cjs/core/execution.js.map +1 -1
  17. package/dist/cjs/core/prepareRestart.js +3 -3
  18. package/dist/cjs/core/prepareRestart.js.map +1 -1
  19. package/dist/cjs/core/tasks/CheckBalanceTask.d.ts +5 -0
  20. package/dist/cjs/core/tasks/CheckBalanceTask.js +25 -0
  21. package/dist/cjs/core/tasks/CheckBalanceTask.js.map +1 -0
  22. package/dist/cjs/core/tasks/PrepareTransactionTask.d.ts +5 -0
  23. package/dist/cjs/core/tasks/PrepareTransactionTask.js +36 -0
  24. package/dist/cjs/core/tasks/PrepareTransactionTask.js.map +1 -0
  25. package/dist/cjs/core/tasks/WaitForTransactionStatusTask.d.ts +8 -0
  26. package/dist/cjs/core/tasks/WaitForTransactionStatusTask.js +73 -0
  27. package/dist/cjs/core/tasks/WaitForTransactionStatusTask.js.map +1 -0
  28. package/dist/cjs/core/{checkBalance.d.ts → tasks/helpers/checkBalance.d.ts} +1 -1
  29. package/dist/cjs/core/{checkBalance.js → tasks/helpers/checkBalance.js} +4 -4
  30. package/dist/cjs/core/tasks/helpers/checkBalance.js.map +1 -0
  31. package/dist/cjs/core/tasks/helpers/getTransactionRequestData.d.ts +2 -0
  32. package/dist/cjs/core/tasks/helpers/getTransactionRequestData.js +30 -0
  33. package/dist/cjs/core/tasks/helpers/getTransactionRequestData.js.map +1 -0
  34. package/dist/cjs/core/{stepComparison.d.ts → tasks/helpers/stepComparison.d.ts} +2 -2
  35. package/dist/cjs/core/{stepComparison.js → tasks/helpers/stepComparison.js} +3 -3
  36. package/dist/cjs/core/tasks/helpers/stepComparison.js.map +1 -0
  37. package/dist/cjs/core/{waitForTransactionStatus.d.ts → tasks/helpers/waitForTransactionStatus.d.ts} +2 -2
  38. package/dist/cjs/core/{waitForTransactionStatus.js → tasks/helpers/waitForTransactionStatus.js} +8 -6
  39. package/dist/cjs/core/tasks/helpers/waitForTransactionStatus.js.map +1 -0
  40. package/dist/cjs/errors/constants.d.ts +2 -1
  41. package/dist/cjs/errors/constants.js +1 -0
  42. package/dist/cjs/errors/constants.js.map +1 -1
  43. package/dist/cjs/errors/errors.d.ts +5 -0
  44. package/dist/cjs/errors/errors.js +9 -1
  45. package/dist/cjs/errors/errors.js.map +1 -1
  46. package/dist/cjs/index.d.ts +12 -5
  47. package/dist/cjs/index.js +21 -7
  48. package/dist/cjs/index.js.map +1 -1
  49. package/dist/cjs/types/core.d.ts +12 -10
  50. package/dist/cjs/types/execution.d.ts +25 -0
  51. package/dist/cjs/types/execution.js +3 -0
  52. package/dist/cjs/types/execution.js.map +1 -0
  53. package/dist/cjs/utils/waitForResult.d.ts +1 -1
  54. package/dist/cjs/utils/waitForResult.js +2 -6
  55. package/dist/cjs/utils/waitForResult.js.map +1 -1
  56. package/dist/cjs/version.d.ts +1 -1
  57. package/dist/cjs/version.js +1 -1
  58. package/dist/esm/core/BaseStepExecutionTask.d.ts +5 -0
  59. package/dist/esm/core/BaseStepExecutionTask.js +6 -0
  60. package/dist/esm/core/BaseStepExecutionTask.js.map +1 -0
  61. package/dist/esm/core/BaseStepExecutor.d.ts +7 -3
  62. package/dist/esm/core/BaseStepExecutor.js +24 -0
  63. package/dist/esm/core/BaseStepExecutor.js.map +1 -1
  64. package/dist/esm/core/StatusManager.d.ts +17 -6
  65. package/dist/esm/core/StatusManager.js +32 -20
  66. package/dist/esm/core/StatusManager.js.map +1 -1
  67. package/dist/esm/core/TaskPipeline.d.ts +7 -0
  68. package/dist/esm/core/TaskPipeline.js +42 -0
  69. package/dist/esm/core/TaskPipeline.js.map +1 -0
  70. package/dist/esm/core/actionMessages.js +19 -3
  71. package/dist/esm/core/actionMessages.js.map +1 -1
  72. package/dist/esm/core/execution.js +14 -3
  73. package/dist/esm/core/execution.js.map +1 -1
  74. package/dist/esm/core/prepareRestart.js +4 -3
  75. package/dist/esm/core/prepareRestart.js.map +1 -1
  76. package/dist/esm/core/tasks/CheckBalanceTask.d.ts +5 -0
  77. package/dist/esm/core/tasks/CheckBalanceTask.js +21 -0
  78. package/dist/esm/core/tasks/CheckBalanceTask.js.map +1 -0
  79. package/dist/esm/core/tasks/PrepareTransactionTask.d.ts +5 -0
  80. package/dist/esm/core/tasks/PrepareTransactionTask.js +32 -0
  81. package/dist/esm/core/tasks/PrepareTransactionTask.js.map +1 -0
  82. package/dist/esm/core/tasks/WaitForTransactionStatusTask.d.ts +8 -0
  83. package/dist/esm/core/tasks/WaitForTransactionStatusTask.js +74 -0
  84. package/dist/esm/core/tasks/WaitForTransactionStatusTask.js.map +1 -0
  85. package/dist/esm/core/{checkBalance.d.ts → tasks/helpers/checkBalance.d.ts} +1 -1
  86. package/dist/esm/core/{checkBalance.js → tasks/helpers/checkBalance.js} +4 -4
  87. package/dist/esm/core/tasks/helpers/checkBalance.js.map +1 -0
  88. package/dist/esm/core/tasks/helpers/getTransactionRequestData.d.ts +2 -0
  89. package/dist/esm/core/tasks/helpers/getTransactionRequestData.js +26 -0
  90. package/dist/esm/core/tasks/helpers/getTransactionRequestData.js.map +1 -0
  91. package/dist/esm/core/{stepComparison.d.ts → tasks/helpers/stepComparison.d.ts} +2 -2
  92. package/dist/esm/core/{stepComparison.js → tasks/helpers/stepComparison.js} +3 -3
  93. package/dist/esm/core/tasks/helpers/stepComparison.js.map +1 -0
  94. package/dist/esm/core/{waitForTransactionStatus.d.ts → tasks/helpers/waitForTransactionStatus.d.ts} +2 -2
  95. package/dist/esm/core/{waitForTransactionStatus.js → tasks/helpers/waitForTransactionStatus.js} +8 -6
  96. package/dist/esm/core/tasks/helpers/waitForTransactionStatus.js.map +1 -0
  97. package/dist/esm/errors/constants.d.ts +2 -1
  98. package/dist/esm/errors/constants.js +1 -0
  99. package/dist/esm/errors/constants.js.map +1 -1
  100. package/dist/esm/errors/errors.d.ts +10 -0
  101. package/dist/esm/errors/errors.js +12 -0
  102. package/dist/esm/errors/errors.js.map +1 -1
  103. package/dist/esm/index.d.ts +12 -5
  104. package/dist/esm/index.js +10 -4
  105. package/dist/esm/index.js.map +1 -1
  106. package/dist/esm/types/core.d.ts +16 -10
  107. package/dist/esm/types/execution.d.ts +26 -0
  108. package/dist/esm/types/execution.js +2 -0
  109. package/dist/esm/types/execution.js.map +1 -0
  110. package/dist/esm/utils/waitForResult.d.ts +2 -2
  111. package/dist/esm/utils/waitForResult.js +3 -7
  112. package/dist/esm/utils/waitForResult.js.map +1 -1
  113. package/dist/esm/version.d.ts +1 -1
  114. package/dist/esm/version.js +1 -1
  115. package/dist/types/core/BaseStepExecutionTask.d.ts +6 -0
  116. package/dist/types/core/BaseStepExecutionTask.d.ts.map +1 -0
  117. package/dist/types/core/BaseStepExecutor.d.ts +7 -3
  118. package/dist/types/core/BaseStepExecutor.d.ts.map +1 -1
  119. package/dist/types/core/StatusManager.d.ts +17 -6
  120. package/dist/types/core/StatusManager.d.ts.map +1 -1
  121. package/dist/types/core/TaskPipeline.d.ts +8 -0
  122. package/dist/types/core/TaskPipeline.d.ts.map +1 -0
  123. package/dist/types/core/actionMessages.d.ts.map +1 -1
  124. package/dist/types/core/execution.d.ts.map +1 -1
  125. package/dist/types/core/prepareRestart.d.ts.map +1 -1
  126. package/dist/types/core/tasks/CheckBalanceTask.d.ts +6 -0
  127. package/dist/types/core/tasks/CheckBalanceTask.d.ts.map +1 -0
  128. package/dist/types/core/tasks/PrepareTransactionTask.d.ts +6 -0
  129. package/dist/types/core/tasks/PrepareTransactionTask.d.ts.map +1 -0
  130. package/dist/types/core/tasks/WaitForTransactionStatusTask.d.ts +9 -0
  131. package/dist/types/core/tasks/WaitForTransactionStatusTask.d.ts.map +1 -0
  132. package/dist/types/core/{checkBalance.d.ts → tasks/helpers/checkBalance.d.ts} +1 -1
  133. package/dist/types/core/tasks/helpers/checkBalance.d.ts.map +1 -0
  134. package/dist/types/core/tasks/helpers/getTransactionRequestData.d.ts +3 -0
  135. package/dist/types/core/tasks/helpers/getTransactionRequestData.d.ts.map +1 -0
  136. package/dist/types/core/{stepComparison.d.ts → tasks/helpers/stepComparison.d.ts} +2 -2
  137. package/dist/types/core/tasks/helpers/stepComparison.d.ts.map +1 -0
  138. package/dist/types/core/{waitForTransactionStatus.d.ts → tasks/helpers/waitForTransactionStatus.d.ts} +2 -2
  139. package/dist/types/core/tasks/helpers/waitForTransactionStatus.d.ts.map +1 -0
  140. package/dist/types/errors/constants.d.ts +2 -1
  141. package/dist/types/errors/constants.d.ts.map +1 -1
  142. package/dist/types/errors/errors.d.ts +10 -0
  143. package/dist/types/errors/errors.d.ts.map +1 -1
  144. package/dist/types/index.d.ts +12 -5
  145. package/dist/types/index.d.ts.map +1 -1
  146. package/dist/types/types/core.d.ts +16 -10
  147. package/dist/types/types/core.d.ts.map +1 -1
  148. package/dist/types/types/execution.d.ts +27 -0
  149. package/dist/types/types/execution.d.ts.map +1 -0
  150. package/dist/types/utils/waitForResult.d.ts +2 -2
  151. package/dist/types/utils/waitForResult.d.ts.map +1 -1
  152. package/dist/types/version.d.ts +1 -1
  153. package/package.json +1 -1
  154. package/src/core/BaseStepExecutionTask.ts +9 -0
  155. package/src/core/BaseStepExecutor.ts +52 -2
  156. package/src/core/StatusManager.ts +40 -24
  157. package/src/core/TaskPipeline.ts +47 -0
  158. package/src/core/actionMessages.ts +20 -3
  159. package/src/core/execution.ts +17 -3
  160. package/src/core/prepareRestart.ts +4 -3
  161. package/src/core/tasks/CheckBalanceTask.ts +28 -0
  162. package/src/core/tasks/PrepareTransactionTask.ts +62 -0
  163. package/src/core/tasks/WaitForTransactionStatusTask.ts +114 -0
  164. package/src/core/{checkBalance.ts → tasks/helpers/checkBalance.ts} +5 -5
  165. package/src/core/tasks/helpers/getTransactionRequestData.ts +47 -0
  166. package/src/core/{stepComparison.ts → tasks/helpers/stepComparison.ts} +5 -5
  167. package/src/core/{waitForTransactionStatus.ts → tasks/helpers/waitForTransactionStatus.ts} +10 -8
  168. package/src/errors/constants.ts +1 -0
  169. package/src/errors/errors.ts +24 -0
  170. package/src/index.ts +17 -3
  171. package/src/types/core.ts +19 -18
  172. package/src/types/execution.ts +40 -0
  173. package/src/utils/waitForResult.ts +4 -9
  174. package/src/version.ts +1 -1
  175. package/dist/cjs/core/checkBalance.js.map +0 -1
  176. package/dist/cjs/core/stepComparison.js.map +0 -1
  177. package/dist/cjs/core/waitForDestinationChainTransaction.d.ts +0 -4
  178. package/dist/cjs/core/waitForDestinationChainTransaction.js +0 -68
  179. package/dist/cjs/core/waitForDestinationChainTransaction.js.map +0 -1
  180. package/dist/cjs/core/waitForTransactionStatus.js.map +0 -1
  181. package/dist/esm/core/checkBalance.js.map +0 -1
  182. package/dist/esm/core/stepComparison.js.map +0 -1
  183. package/dist/esm/core/waitForDestinationChainTransaction.d.ts +0 -4
  184. package/dist/esm/core/waitForDestinationChainTransaction.js +0 -70
  185. package/dist/esm/core/waitForDestinationChainTransaction.js.map +0 -1
  186. package/dist/esm/core/waitForTransactionStatus.js.map +0 -1
  187. package/dist/types/core/checkBalance.d.ts.map +0 -1
  188. package/dist/types/core/stepComparison.d.ts.map +0 -1
  189. package/dist/types/core/waitForDestinationChainTransaction.d.ts +0 -5
  190. package/dist/types/core/waitForDestinationChainTransaction.d.ts.map +0 -1
  191. package/dist/types/core/waitForTransactionStatus.d.ts.map +0 -1
  192. package/src/core/waitForDestinationChainTransaction.ts +0 -108
@@ -1,7 +1,7 @@
1
- import { getStatus } from '../actions/getStatus.js';
2
- import { ServerError } from '../errors/errors.js';
3
- import { waitForResult } from '../utils/waitForResult.js';
4
- import { getSubstatusMessage } from './actionMessages.js';
1
+ import { 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
6
  export async function waitForTransactionStatus(client, statusManager, txHash, step, actionType, interval = 5_000) {
7
7
  const _getStatus = () => {
@@ -37,10 +37,12 @@ export async function waitForTransactionStatus(client, statusManager, txHash, st
37
37
  return undefined;
38
38
  });
39
39
  };
40
- let status = TRANSACTION_HASH_OBSERVERS[txHash];
40
+ let status = TRANSACTION_HASH_OBSERVERS?.[txHash];
41
41
  if (!status) {
42
42
  status = waitForResult(_getStatus, interval);
43
- TRANSACTION_HASH_OBSERVERS[txHash] = status;
43
+ if (TRANSACTION_HASH_OBSERVERS) {
44
+ TRANSACTION_HASH_OBSERVERS[txHash] = status;
45
+ }
44
46
  }
45
47
  const resolvedStatus = await status;
46
48
  if (!('receiving' in resolvedStatus)) {
@@ -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,EAAE,CAAC,MAAM,CAAC,CAAA;IAEjD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,GAAG,aAAa,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;QAC5C,IAAI,0BAA0B,EAAE,CAAC;YAC/B,0BAA0B,CAAC,MAAM,CAAC,GAAG,MAAM,CAAA;QAC7C,CAAC;IACH,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"}
@@ -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,26 @@ 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 { TaskPipeline } from './core/TaskPipeline.js';
31
+ export { CheckBalanceTask } from './core/tasks/CheckBalanceTask.js';
32
+ export { checkBalance } from './core/tasks/helpers/checkBalance.js';
33
+ export { getTransactionRequestData } from './core/tasks/helpers/getTransactionRequestData.js';
34
+ export { stepComparison } from './core/tasks/helpers/stepComparison.js';
35
+ export { PrepareTransactionTask } from './core/tasks/PrepareTransactionTask.js';
36
+ export { WaitForTransactionStatusTask } from './core/tasks/WaitForTransactionStatusTask.js';
31
37
  export { BaseError } from './errors/baseError.js';
32
38
  export type { ErrorCode } from './errors/constants.js';
33
39
  export { ErrorMessage, ErrorName, LiFiErrorCode } from './errors/constants.js';
34
- export { BalanceError, ProviderError, RPCError, ServerError, TransactionError, UnknownError, ValidationError, } from './errors/errors.js';
40
+ export { BalanceError, ExecuteStepRetryError, ProviderError, RPCError, ServerError, TransactionError, UnknownError, ValidationError, } from './errors/errors.js';
35
41
  export { HTTPError } from './errors/httpError.js';
36
42
  export { SDKError } from './errors/SDKError.js';
37
- export type { AcceptExchangeRateUpdateHook, AcceptSlippageUpdateHook, AcceptSlippageUpdateHookParams, ContractCallParams, ContractTool, ExchangeRateUpdateParams, 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';
43
+ 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';
44
+ export type { StepExecutorBaseContext, StepExecutorContext, TaskResult, TaskStatus, } from './types/execution.js';
38
45
  export { checkPackageUpdates } from './utils/checkPackageUpdates.js';
39
46
  export { convertQuoteToRoute } from './utils/convertQuoteToRoute.js';
40
47
  export { fetchTxErrorDetails } from './utils/fetchTxErrorDetails.js';
package/dist/esm/index.js CHANGED
@@ -24,15 +24,21 @@ 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 { 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';
33
39
  export { BaseError } from './errors/baseError.js';
34
40
  export { ErrorMessage, ErrorName, LiFiErrorCode } from './errors/constants.js';
35
- export { BalanceError, ProviderError, RPCError, ServerError, TransactionError, UnknownError, ValidationError, } from './errors/errors.js';
41
+ export { BalanceError, ExecuteStepRetryError, ProviderError, RPCError, ServerError, TransactionError, UnknownError, ValidationError, } from './errors/errors.js';
36
42
  export { HTTPError } from './errors/httpError.js';
37
43
  export { SDKError } from './errors/SDKError.js';
38
44
  export { checkPackageUpdates } from './utils/checkPackageUpdates.js';
@@ -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":"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"}
@@ -15,7 +15,6 @@ export interface SDKBaseConfig {
15
15
  preloadChains?: boolean;
16
16
  chainsRefetchInterval?: number;
17
17
  requestInterceptor?: RequestInterceptor;
18
- safeApiKey?: string;
19
18
  }
20
19
  export interface SDKConfig extends Partial<Omit<SDKBaseConfig, 'integrator'>> {
21
20
  integrator: string;
@@ -48,11 +47,16 @@ export interface InteractionSettings {
48
47
  allowUpdates?: boolean;
49
48
  allowExecution?: boolean;
50
49
  }
50
+ /**
51
+ * Params passed when retrying executeStep after an ExecuteStepRetryError.
52
+ * Providers can use this to pass strategy-specific retry options (e.g. atomicityNotReady for Ethereum 7702).
53
+ */
54
+ export type ExecuteStepRetryParams = Record<string, unknown>;
51
55
  export interface StepExecutor {
52
56
  allowUserInteraction: boolean;
53
57
  allowExecution: boolean;
54
58
  setInteraction(settings?: InteractionSettings): void;
55
- executeStep(client: SDKClient, step: LiFiStepExtended): Promise<LiFiStepExtended>;
59
+ executeStep(client: SDKClient, step: LiFiStepExtended, retryParams?: ExecuteStepRetryParams): Promise<LiFiStepExtended>;
56
60
  }
57
61
  export interface RouteExecutionData {
58
62
  route: Route;
@@ -137,29 +141,31 @@ export interface ExecutionOptions {
137
141
  }
138
142
  export type ExecutionStatus = 'ACTION_REQUIRED' | 'PENDING' | 'FAILED' | 'DONE';
139
143
  export type ExecutionActionStatus = 'STARTED' | 'ACTION_REQUIRED' | 'MESSAGE_REQUIRED' | 'RESET_REQUIRED' | 'PENDING' | 'FAILED' | 'DONE' | 'CANCELLED';
140
- export type ExecutionActionType = 'TOKEN_ALLOWANCE' | 'PERMIT' | 'SWAP' | 'CROSS_CHAIN' | 'RECEIVING_CHAIN';
144
+ export type ExecutionActionType = 'PERMIT' | 'CHECK_ALLOWANCE' | 'NATIVE_PERMIT' | 'RESET_ALLOWANCE' | 'SET_ALLOWANCE' | 'SWAP' | 'CROSS_CHAIN' | 'RECEIVING_CHAIN';
141
145
  export type ExecutionAction = {
142
146
  type: ExecutionActionType;
143
147
  status: ExecutionActionStatus;
148
+ message?: string;
144
149
  substatus?: Substatus;
150
+ substatusMessage?: string;
145
151
  chainId?: number;
146
- txHash?: string;
147
- taskId?: string;
148
- txLink?: string;
149
- txType?: TransactionMethodType;
150
- message?: string;
151
152
  error?: {
152
153
  code: string | number;
153
154
  message: string;
154
155
  htmlMessage?: string;
155
156
  };
156
- [key: string]: any;
157
+ txHash?: string;
158
+ txLink?: string;
159
+ taskId?: string;
160
+ txType?: TransactionMethodType;
161
+ txHex?: string;
157
162
  };
158
163
  export interface Execution {
159
164
  startedAt: number;
160
165
  signedAt?: number;
161
166
  status: ExecutionStatus;
162
167
  actions: Array<ExecutionAction>;
168
+ lastActionType?: ExecutionActionType;
163
169
  fromAmount?: string;
164
170
  toAmount?: string;
165
171
  toToken?: Token;
@@ -168,4 +174,4 @@ export interface Execution {
168
174
  internalTxLink?: string;
169
175
  externalTxLink?: string;
170
176
  }
171
- export type TransactionMethodType = 'standard' | 'relayed' | 'batched' | 'safe-queued';
177
+ export type TransactionMethodType = 'standard' | 'relayed' | 'batched';
@@ -0,0 +1,26 @@
1
+ import type { ExtendedChain } from '@lifi/types';
2
+ import type { StatusManager } from '../core/StatusManager.js';
3
+ import type { ExecuteStepRetryError } from '../errors/errors.js';
4
+ import type { SDKError } from '../errors/SDKError.js';
5
+ import type { ExecuteStepRetryParams, ExecutionAction, ExecutionOptions, LiFiStepExtended, SDKClient } from './core.js';
6
+ export interface StepExecutorBaseContext {
7
+ statusManager: StatusManager;
8
+ executionOptions?: ExecutionOptions;
9
+ fromChain: ExtendedChain;
10
+ toChain: ExtendedChain;
11
+ isBridgeExecution: boolean;
12
+ client: SDKClient;
13
+ step: LiFiStepExtended;
14
+ allowUserInteraction: boolean;
15
+ retryParams?: ExecuteStepRetryParams;
16
+ }
17
+ export interface StepExecutorContext extends StepExecutorBaseContext {
18
+ pollingIntervalMs?: number;
19
+ parseErrors: (error: Error, step?: LiFiStepExtended, action?: ExecutionAction) => Promise<SDKError | ExecuteStepRetryError>;
20
+ }
21
+ export interface TaskResult<TContext = Record<string, unknown>> {
22
+ status: TaskStatus;
23
+ /** Optional: data produced for downstream tasks. Pipeline merges into the executor context. */
24
+ context?: TContext;
25
+ }
26
+ export type TaskStatus = 'COMPLETED' | 'PAUSED';
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=execution.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execution.js","sourceRoot":"","sources":["../../../src/types/execution.ts"],"names":[],"mappings":""}
@@ -1,10 +1,10 @@
1
1
  /**
2
2
  * Repeatedly calls a given asynchronous function until it resolves with a value
3
3
  * @param fn The function that should be repeated
4
- * @param interval The timeout in milliseconds between retries, or a function that receives the current poll count and returns the interval. Defaults to 5000
4
+ * @param interval The timeout in milliseconds between retries, defaults to 5000
5
5
  * @param maxRetries Maximum number of retries before throwing an error, defaults to 3
6
6
  * @param shouldRetry Optional predicate to determine if an error should trigger a retry
7
7
  * @returns The result of the fn function
8
8
  * @throws Error if maximum retries is reached, if function keeps returning undefined, or if shouldRetry returns false
9
9
  */
10
- export declare const waitForResult: <T>(fn: () => Promise<T | undefined>, interval?: number | ((poll: number) => number), maxRetries?: number, shouldRetry?: (count: number, error: unknown) => boolean) => Promise<T>;
10
+ export declare const waitForResult: <T>(fn: () => Promise<T | undefined>, interval?: number, maxRetries?: number, shouldRetry?: (count: number, error: unknown) => boolean) => Promise<T>;
@@ -2,7 +2,7 @@ import { sleep } from './sleep.js';
2
2
  /**
3
3
  * Repeatedly calls a given asynchronous function until it resolves with a value
4
4
  * @param fn The function that should be repeated
5
- * @param interval The timeout in milliseconds between retries, or a function that receives the current poll count and returns the interval. Defaults to 5000
5
+ * @param interval The timeout in milliseconds between retries, defaults to 5000
6
6
  * @param maxRetries Maximum number of retries before throwing an error, defaults to 3
7
7
  * @param shouldRetry Optional predicate to determine if an error should trigger a retry
8
8
  * @returns The result of the fn function
@@ -11,14 +11,11 @@ import { sleep } from './sleep.js';
11
11
  export const waitForResult = async (fn, interval = 5000, maxRetries = 3, shouldRetry = () => true) => {
12
12
  let result;
13
13
  let attempts = 0;
14
- let polls = 0;
15
- const getInterval = typeof interval === 'function' ? interval : () => interval;
16
14
  while (!result) {
17
15
  try {
18
16
  result = await fn();
19
17
  if (!result) {
20
- await sleep(getInterval(polls));
21
- polls++;
18
+ await sleep(interval);
22
19
  }
23
20
  }
24
21
  catch (error) {
@@ -29,8 +26,7 @@ export const waitForResult = async (fn, interval = 5000, maxRetries = 3, shouldR
29
26
  if (attempts === maxRetries) {
30
27
  throw error;
31
28
  }
32
- await sleep(getInterval(polls));
33
- polls++;
29
+ await sleep(interval);
34
30
  }
35
31
  }
36
32
  return result;
@@ -1 +1 @@
1
- {"version":3,"file":"waitForResult.js","sourceRoot":"","sources":["../../../src/utils/waitForResult.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAElC;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,EAChC,EAAgC,EAChC,WAAgD,IAAI,EACpD,UAAU,GAAG,CAAC,EACd,cAA0D,GAAG,EAAE,CAAC,IAAI,EACxD,EAAE;IACd,IAAI,MAAqB,CAAA;IACzB,IAAI,QAAQ,GAAG,CAAC,CAAA;IAChB,IAAI,KAAK,GAAG,CAAC,CAAA;IAEb,MAAM,WAAW,GAAG,OAAO,QAAQ,KAAK,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAA;IAE9E,OAAO,CAAC,MAAM,EAAE,CAAC;QACf,IAAI,CAAC;YACH,MAAM,GAAG,MAAM,EAAE,EAAE,CAAA;YACnB,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAA;gBAC/B,KAAK,EAAE,CAAA;YACT,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;gBAClC,MAAM,KAAK,CAAA;YACb,CAAC;YACD,QAAQ,EAAE,CAAA;YACV,IAAI,QAAQ,KAAK,UAAU,EAAE,CAAC;gBAC5B,MAAM,KAAK,CAAA;YACb,CAAC;YACD,MAAM,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAA;YAC/B,KAAK,EAAE,CAAA;QACT,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC,CAAA"}
1
+ {"version":3,"file":"waitForResult.js","sourceRoot":"","sources":["../../../src/utils/waitForResult.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAElC;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,EAChC,EAAgC,EAChC,QAAQ,GAAG,IAAI,EACf,UAAU,GAAG,CAAC,EACd,cAA0D,GAAG,EAAE,CAAC,IAAI,EACxD,EAAE;IACd,IAAI,MAAqB,CAAA;IACzB,IAAI,QAAQ,GAAG,CAAC,CAAA;IAEhB,OAAO,CAAC,MAAM,EAAE,CAAC;QACf,IAAI,CAAC;YACH,MAAM,GAAG,MAAM,EAAE,EAAE,CAAA;YACnB,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,KAAK,CAAC,QAAQ,CAAC,CAAA;YACvB,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;gBAClC,MAAM,KAAK,CAAA;YACb,CAAC;YACD,QAAQ,EAAE,CAAA;YACV,IAAI,QAAQ,KAAK,UAAU,EAAE,CAAC;gBAC5B,MAAM,KAAK,CAAA;YACb,CAAC;YACD,MAAM,KAAK,CAAC,QAAQ,CAAC,CAAA;QACvB,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC,CAAA"}
@@ -1,2 +1,2 @@
1
1
  export declare const name = "@lifi/sdk";
2
- export declare const version = "4.0.0-alpha.14";
2
+ export declare const version = "4.0.0-alpha.16";
@@ -1,3 +1,3 @@
1
1
  export const name = '@lifi/sdk';
2
- export const version = '4.0.0-alpha.14';
2
+ export const version = '4.0.0-alpha.16';
3
3
  //# sourceMappingURL=version.js.map
@@ -0,0 +1,6 @@
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
+ }
6
+ //# sourceMappingURL=BaseStepExecutionTask.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BaseStepExecutionTask.d.ts","sourceRoot":"","sources":["../../../src/core/BaseStepExecutionTask.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAE5E,8BAAsB,qBAAqB;IACzC,SAAS,CAAC,QAAQ,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC;IAI1D,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,UAAU,CAAC;CAChE"}
@@ -1,6 +1,7 @@
1
- import type { LiFiStep } from '@lifi/types';
2
- import type { ExecutionOptions, InteractionSettings, SDKClient, StepExecutor, StepExecutorOptions } from '../types/core.js';
1
+ import type { ExecuteStepRetryParams, ExecutionOptions, InteractionSettings, LiFiStepExtended, SDKClient, StepExecutor, StepExecutorOptions } from '../types/core.js';
2
+ import type { StepExecutorBaseContext, StepExecutorContext } from '../types/execution.js';
3
3
  import { StatusManager } from './StatusManager.js';
4
+ import type { TaskPipeline } from './TaskPipeline.js';
4
5
  export declare abstract class BaseStepExecutor implements StepExecutor {
5
6
  protected executionOptions?: ExecutionOptions;
6
7
  protected statusManager: StatusManager;
@@ -8,6 +9,9 @@ export declare abstract class BaseStepExecutor implements StepExecutor {
8
9
  allowExecution: boolean;
9
10
  constructor(options: StepExecutorOptions);
10
11
  setInteraction: (settings?: InteractionSettings) => void;
11
- abstract executeStep(client: SDKClient, step: LiFiStep): Promise<LiFiStep>;
12
+ private createBaseContext;
13
+ abstract createContext(baseContext: StepExecutorBaseContext): Promise<StepExecutorContext>;
14
+ abstract createPipeline(context: StepExecutorContext): TaskPipeline;
15
+ executeStep: (client: SDKClient, step: LiFiStepExtended, retryParams?: ExecuteStepRetryParams) => Promise<LiFiStepExtended>;
12
16
  }
13
17
  //# sourceMappingURL=BaseStepExecutor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"BaseStepExecutor.d.ts","sourceRoot":"","sources":["../../../src/core/BaseStepExecutor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,KAAK,EACV,gBAAgB,EAChB,mBAAmB,EACnB,SAAS,EACT,YAAY,EACZ,mBAAmB,EACpB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AASlD,8BAAsB,gBAAiB,YAAW,YAAY;IAC5D,SAAS,CAAC,gBAAgB,CAAC,EAAE,gBAAgB,CAAA;IAC7C,SAAS,CAAC,aAAa,EAAE,aAAa,CAAA;IAE/B,oBAAoB,UAAO;IAC3B,cAAc,UAAO;gBAEhB,OAAO,EAAE,mBAAmB;IAKxC,cAAc,GAAI,WAAW,mBAAmB,KAAG,IAAI,CAQtD;IAED,QAAQ,CAAC,WAAW,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;CAC3E"}
1
+ {"version":3,"file":"BaseStepExecutor.d.ts","sourceRoot":"","sources":["../../../src/core/BaseStepExecutor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACtB,gBAAgB,EAChB,mBAAmB,EACnB,gBAAgB,EAChB,SAAS,EACT,YAAY,EACZ,mBAAmB,EACpB,MAAM,kBAAkB,CAAA;AACzB,OAAO,KAAK,EACV,uBAAuB,EACvB,mBAAmB,EACpB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AASrD,8BAAsB,gBAAiB,YAAW,YAAY;IAC5D,SAAS,CAAC,gBAAgB,CAAC,EAAE,gBAAgB,CAAA;IAC7C,SAAS,CAAC,aAAa,EAAE,aAAa,CAAA;IAE/B,oBAAoB,UAAO;IAC3B,cAAc,UAAO;gBAEhB,OAAO,EAAE,mBAAmB;IAKxC,cAAc,GAAI,WAAW,mBAAmB,KAAG,IAAI,CAQtD;IAED,OAAO,CAAC,iBAAiB,CAqBxB;IAED,QAAQ,CAAC,aAAa,CACpB,WAAW,EAAE,uBAAuB,GACnC,OAAO,CAAC,mBAAmB,CAAC;IAE/B,QAAQ,CAAC,cAAc,CAAC,OAAO,EAAE,mBAAmB,GAAG,YAAY;IAEnE,WAAW,GACT,QAAQ,SAAS,EACjB,MAAM,gBAAgB,EACtB,cAAc,sBAAsB,KACnC,OAAO,CAAC,gBAAgB,CAAC,CAW3B;CACF"}
@@ -1,5 +1,5 @@
1
1
  import type { ChainId, LiFiStep } from '@lifi/types';
2
- import type { Execution, ExecutionAction, ExecutionActionStatus, ExecutionActionType, ExecutionStatus, LiFiStepExtended } from '../types/core.js';
2
+ import type { Execution, ExecutionAction, ExecutionActionStatus, ExecutionActionType, LiFiStepExtended } from '../types/core.js';
3
3
  type FindOrCreateActionProps = {
4
4
  step: LiFiStepExtended;
5
5
  type: ExecutionActionType;
@@ -24,11 +24,10 @@ export declare class StatusManager {
24
24
  /**
25
25
  * Updates the execution object of a Step.
26
26
  * @param step The current step in execution
27
- * @param status The status for the execution
28
27
  * @param execution Optional. Information about received tokens
29
28
  * @returns The step with the updated execution object
30
29
  */
31
- updateExecution(step: LiFiStepExtended, status: ExecutionStatus, execution?: Partial<Execution>): LiFiStep;
30
+ updateExecution(step: LiFiStepExtended, execution: Partial<Execution>): LiFiStep;
32
31
  /**
33
32
  * Finds an action of the specified type in the step's execution
34
33
  * @param step The step to search in
@@ -39,11 +38,21 @@ export declare class StatusManager {
39
38
  findAction(step: LiFiStepExtended, type: ExecutionActionType, status?: ExecutionActionStatus): ExecutionAction | undefined;
40
39
  /**
41
40
  * Create and push a new action into the execution.
41
+ * Caller is responsible for ensuring an action of this type does not already exist (e.g. after findAction returned undefined).
42
42
  * @param step The step that should contain the new action.
43
- * @param type Type of the action. Used to identify already existing actions.
43
+ * @param type Type of the action.
44
44
  * @param chainId Chain Id of the action.
45
45
  * @param status By default created action is set to the STARTED status. We can override new action with the needed status.
46
- * @returns Returns action.
46
+ * @returns The created action.
47
+ */
48
+ createAction: ({ step, type, chainId, status, }: FindOrCreateActionProps) => ExecutionAction;
49
+ /**
50
+ * Find an existing action by type, or create and push a new one if none exists.
51
+ * @param step The step that should contain the action.
52
+ * @param type Type of the action. Used to identify already existing actions.
53
+ * @param chainId Chain Id of the action (used when creating).
54
+ * @param status By default created action is set to the STARTED status. We can override new action with the needed status.
55
+ * @returns The found or newly created action.
47
56
  */
48
57
  findOrCreateAction: ({ step, type, chainId, status, }: FindOrCreateActionProps) => ExecutionAction;
49
58
  /**
@@ -54,7 +63,9 @@ export declare class StatusManager {
54
63
  * @param [params] Additional parameters to append to the action.
55
64
  * @returns The updated action
56
65
  */
57
- updateAction: (step: LiFiStepExtended, type: ExecutionActionType, status: ExecutionActionStatus, params?: Partial<ExecutionAction>) => ExecutionAction;
66
+ updateAction: (step: LiFiStepExtended, type: ExecutionActionType, status: ExecutionActionStatus, params?: Partial<ExecutionAction & {
67
+ signedAt?: number;
68
+ }>) => ExecutionAction;
58
69
  /**
59
70
  * Remove an action from the execution
60
71
  * @param step The step where the action should be removed from
@@ -1 +1 @@
1
- {"version":3,"file":"StatusManager.d.ts","sourceRoot":"","sources":["../../../src/core/StatusManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACpD,OAAO,KAAK,EACV,SAAS,EACT,eAAe,EACf,qBAAqB,EACrB,mBAAmB,EACnB,eAAe,EACf,gBAAgB,EACjB,MAAM,kBAAkB,CAAA;AAIzB,KAAK,uBAAuB,GAAG;IAC7B,IAAI,EAAE,gBAAgB,CAAA;IACtB,IAAI,EAAE,mBAAmB,CAAA;IACzB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,MAAM,CAAC,EAAE,qBAAqB,CAAA;CAC/B,CAAA;AAED;;;;GAIG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAQ;IAChC,OAAO,CAAC,YAAY,CAAO;gBAEf,OAAO,EAAE,MAAM;IAI3B;;;;OAIG;IACH,mBAAmB,GAAI,MAAM,gBAAgB,KAAG,SAAS,CAmBxD;IAED;;;;;;OAMG;IACH,eAAe,CACb,IAAI,EAAE,gBAAgB,EACtB,MAAM,EAAE,eAAe,EACvB,SAAS,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAC7B,QAAQ;IAeX;;;;;;OAMG;IACH,UAAU,CACR,IAAI,EAAE,gBAAgB,EACtB,IAAI,EAAE,mBAAmB,EACzB,MAAM,CAAC,EAAE,qBAAqB,GAC7B,eAAe,GAAG,SAAS;IAe9B;;;;;;;OAOG;IACH,kBAAkB,GAAI,kCAKnB,uBAAuB,KAAG,eAAe,CAiB3C;IAED;;;;;;;OAOG;IACH,YAAY,GACV,MAAM,gBAAgB,EACtB,MAAM,mBAAmB,EACzB,QAAQ,qBAAqB,EAC7B,SAAS,OAAO,CAAC,eAAe,CAAC,KAChC,eAAe,CAgDjB;IAED;;;;OAIG;IACH,YAAY,GAAI,MAAM,gBAAgB,EAAE,MAAM,mBAAmB,KAAG,IAAI,CAOvE;IAED,iBAAiB,GAAI,MAAM,QAAQ,KAAG,QAAQ,CAsB7C;IAED,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;CAGnC"}
1
+ {"version":3,"file":"StatusManager.d.ts","sourceRoot":"","sources":["../../../src/core/StatusManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACpD,OAAO,KAAK,EACV,SAAS,EACT,eAAe,EACf,qBAAqB,EACrB,mBAAmB,EACnB,gBAAgB,EACjB,MAAM,kBAAkB,CAAA;AAIzB,KAAK,uBAAuB,GAAG;IAC7B,IAAI,EAAE,gBAAgB,CAAA;IACtB,IAAI,EAAE,mBAAmB,CAAA;IACzB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,MAAM,CAAC,EAAE,qBAAqB,CAAA;CAC/B,CAAA;AAED;;;;GAIG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAQ;IAChC,OAAO,CAAC,YAAY,CAAO;gBAEf,OAAO,EAAE,MAAM;IAI3B;;;;OAIG;IACH,mBAAmB,GAAI,MAAM,gBAAgB,KAAG,SAAS,CAmBxD;IAED;;;;;OAKG;IACH,eAAe,CACb,IAAI,EAAE,gBAAgB,EACtB,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,GAC5B,QAAQ;IAYX;;;;;;OAMG;IACH,UAAU,CACR,IAAI,EAAE,gBAAgB,EACtB,IAAI,EAAE,mBAAmB,EACzB,MAAM,CAAC,EAAE,qBAAqB,GAC7B,eAAe,GAAG,SAAS;IAe9B;;;;;;;;OAQG;IACH,YAAY,GAAI,kCAKb,uBAAuB,KAAG,eAAe,CAgB3C;IAED;;;;;;;OAOG;IACH,kBAAkB,GAAI,kCAKnB,uBAAuB,KAAG,eAAe,CAM3C;IAED;;;;;;;OAOG;IACH,YAAY,GACV,MAAM,gBAAgB,EACtB,MAAM,mBAAmB,EACzB,QAAQ,qBAAqB,EAC7B,SAAS,OAAO,CAAC,eAAe,GAAG;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,KACxD,eAAe,CAiDjB;IAED;;;;OAIG;IACH,YAAY,GAAI,MAAM,gBAAgB,EAAE,MAAM,mBAAmB,KAAG,IAAI,CAOvE;IAED,iBAAiB,GAAI,MAAM,QAAQ,KAAG,QAAQ,CAsB7C;IAED,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;CAGnC"}
@@ -0,0 +1,8 @@
1
+ import type { StepExecutorContext, TaskResult } from '../types/execution.js';
2
+ import type { BaseStepExecutionTask } from './BaseStepExecutionTask.js';
3
+ export declare class TaskPipeline {
4
+ private readonly tasks;
5
+ constructor(tasks: BaseStepExecutionTask[]);
6
+ run(context: StepExecutorContext): Promise<TaskResult>;
7
+ }
8
+ //# sourceMappingURL=TaskPipeline.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TaskPipeline.d.ts","sourceRoot":"","sources":["../../../src/core/TaskPipeline.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAC5E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAEvE,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAyB;gBAEnC,KAAK,EAAE,qBAAqB,EAAE;IAIpC,GAAG,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,UAAU,CAAC;CAmC7D"}
@@ -1 +1 @@
1
- {"version":3,"file":"actionMessages.d.ts","sourceRoot":"","sources":["../../../src/core/actionMessages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAC3D,OAAO,KAAK,EACV,qBAAqB,EACrB,mBAAmB,EACpB,MAAM,kBAAkB,CAAA;AAgEzB,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,mBAAmB,EACzB,MAAM,EAAE,qBAAqB,GAC5B,MAAM,GAAG,SAAS,CAGpB;AAED,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,aAAa,EACrB,SAAS,CAAC,EAAE,SAAS,GACpB,MAAM,GAAG,SAAS,CAMpB"}
1
+ {"version":3,"file":"actionMessages.d.ts","sourceRoot":"","sources":["../../../src/core/actionMessages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAC3D,OAAO,KAAK,EACV,qBAAqB,EACrB,mBAAmB,EACpB,MAAM,kBAAkB,CAAA;AAiFzB,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,mBAAmB,EACzB,MAAM,EAAE,qBAAqB,GAC5B,MAAM,GAAG,SAAS,CAGpB;AAED,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,aAAa,EACrB,SAAS,CAAC,EAAE,SAAS,GACpB,MAAM,GAAG,SAAS,CAMpB"}
@@ -1 +1 @@
1
- {"version":3,"file":"execution.d.ts","sourceRoot":"","sources":["../../../src/core/execution.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAGxC,OAAO,KAAK,EACV,gBAAgB,EAChB,aAAa,EACb,SAAS,EAEV,MAAM,kBAAkB,CAAA;AAIzB;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY,GACvB,QAAQ,SAAS,EACjB,OAAO,KAAK,EACZ,mBAAmB,gBAAgB,KAClC,OAAO,CAAC,aAAa,CAkBvB,CAAA;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,WAAW,GACtB,QAAQ,SAAS,EACjB,OAAO,KAAK,EACZ,mBAAmB,gBAAgB,KAClC,OAAO,CAAC,aAAa,CAuBvB,CAAA;AAiFD;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,GAC/B,OAAO,KAAK,EACZ,SAAS,gBAAgB,KACxB,IAmBF,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,GAAI,OAAO,KAAK,KAAG,KAejD,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,eAAe,QAAO,aAAa,EAI/C,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,cAAc,GAAI,SAAS,MAAM,KAAG,aAAa,GAAG,SAEhE,CAAA"}
1
+ {"version":3,"file":"execution.d.ts","sourceRoot":"","sources":["../../../src/core/execution.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAGxC,OAAO,KAAK,EACV,gBAAgB,EAEhB,aAAa,EACb,SAAS,EAEV,MAAM,kBAAkB,CAAA;AAIzB;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY,GACvB,QAAQ,SAAS,EACjB,OAAO,KAAK,EACZ,mBAAmB,gBAAgB,KAClC,OAAO,CAAC,aAAa,CAkBvB,CAAA;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,WAAW,GACtB,QAAQ,SAAS,EACjB,OAAO,KAAK,EACZ,mBAAmB,gBAAgB,KAClC,OAAO,CAAC,aAAa,CAuBvB,CAAA;AA8FD;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,GAC/B,OAAO,KAAK,EACZ,SAAS,gBAAgB,KACxB,IAmBF,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,GAAI,OAAO,KAAK,KAAG,KAejD,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,eAAe,QAAO,aAAa,EAI/C,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,cAAc,GAAI,SAAS,MAAM,KAAG,aAAa,GAAG,SAEhE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"prepareRestart.d.ts","sourceRoot":"","sources":["../../../src/core/prepareRestart.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAErD,eAAO,MAAM,cAAc,GAAI,OAAO,aAAa,SA0BlD,CAAA"}
1
+ {"version":3,"file":"prepareRestart.d.ts","sourceRoot":"","sources":["../../../src/core/prepareRestart.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAErD,eAAO,MAAM,cAAc,GAAI,OAAO,aAAa,SA2BlD,CAAA"}
@@ -0,0 +1,6 @@
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
+ }
6
+ //# sourceMappingURL=CheckBalanceTask.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CheckBalanceTask.d.ts","sourceRoot":"","sources":["../../../../src/core/tasks/CheckBalanceTask.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC/E,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAA;AAGnE,qBAAa,gBAAiB,SAAQ,qBAAqB;IACnD,GAAG,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,UAAU,CAAC;CAoB7D"}
@@ -0,0 +1,6 @@
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
+ }
6
+ //# sourceMappingURL=PrepareTransactionTask.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PrepareTransactionTask.d.ts","sourceRoot":"","sources":["../../../../src/core/tasks/PrepareTransactionTask.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC/E,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAA;AAGnE,qBAAa,sBAAuB,SAAQ,qBAAqB;IACzD,GAAG,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,UAAU,CAAC;CAqD7D"}
@@ -0,0 +1,9 @@
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
+ }
9
+ //# sourceMappingURL=WaitForTransactionStatusTask.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WaitForTransactionStatusTask.d.ts","sourceRoot":"","sources":["../../../../src/core/tasks/WaitForTransactionStatusTask.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAC9D,OAAO,KAAK,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAE/E,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAA;AAGnE,qBAAa,4BAA6B,SAAQ,qBAAqB;IACrE,QAAQ,CAAC,UAAU,EAAE,mBAAmB,CAAA;gBAE5B,UAAU,EAAE,mBAAmB;IAKrC,GAAG,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,UAAU,CAAC;CAgG7D"}
@@ -1,4 +1,4 @@
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>;
4
4
  //# sourceMappingURL=checkBalance.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkBalance.d.ts","sourceRoot":"","sources":["../../../../../src/core/tasks/helpers/checkBalance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAG3C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAIvD,eAAO,MAAM,YAAY,GACvB,QAAQ,SAAS,EACjB,eAAe,MAAM,EACrB,MAAM,QAAQ,EACd,cAAS,KACR,OAAO,CAAC,IAAI,CAsCd,CAAA"}
@@ -0,0 +1,3 @@
1
+ import type { ExecutionOptions, LiFiStepExtended } from '../../../types/core.js';
2
+ export declare const getTransactionRequestData: (step: LiFiStepExtended, executionOptions?: ExecutionOptions) => Promise<string>;
3
+ //# sourceMappingURL=getTransactionRequestData.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getTransactionRequestData.d.ts","sourceRoot":"","sources":["../../../../../src/core/tasks/helpers/getTransactionRequestData.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,gBAAgB,EAChB,gBAAgB,EAEjB,MAAM,wBAAwB,CAAA;AAE/B,eAAO,MAAM,yBAAyB,GACpC,MAAM,gBAAgB,EACtB,mBAAmB,gBAAgB,KAClC,OAAO,CAAC,MAAM,CAmChB,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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stepComparison.d.ts","sourceRoot":"","sources":["../../../../../src/core/tasks/helpers/stepComparison.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAA;AAInE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AAE9D;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,cAAc,GACzB,eAAe,aAAa,EAC5B,SAAS,QAAQ,EACjB,SAAS,QAAQ,EACjB,sBAAsB,OAAO,EAC7B,mBAAmB,gBAAgB,KAClC,OAAO,CAAC,QAAQ,CAwBlB,CAAA"}
@@ -1,5 +1,5 @@
1
1
  import type { LiFiStep, StatusResponse } from '@lifi/types';
2
- import type { ExecutionActionType, SDKClient } from '../types/core.js';
3
- import type { StatusManager } from './StatusManager.js';
2
+ import type { ExecutionActionType, SDKClient } from '../../../types/core.js';
3
+ import type { StatusManager } from '../../StatusManager.js';
4
4
  export declare function waitForTransactionStatus(client: SDKClient, statusManager: StatusManager, txHash: string, step: LiFiStep, actionType: ExecutionActionType, interval?: number): Promise<StatusResponse>;
5
5
  //# sourceMappingURL=waitForTransactionStatus.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"waitForTransactionStatus.d.ts","sourceRoot":"","sources":["../../../../../src/core/tasks/helpers/waitForTransactionStatus.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAkB,QAAQ,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAG3E,OAAO,KAAK,EAAE,mBAAmB,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAG5E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAI3D,wBAAsB,wBAAwB,CAC5C,MAAM,EAAE,SAAS,EACjB,aAAa,EAAE,aAAa,EAC5B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,QAAQ,EACd,UAAU,EAAE,mBAAmB,EAC/B,QAAQ,SAAQ,GACf,OAAO,CAAC,cAAc,CAAC,CAyDzB"}
@@ -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 {