@lifi/sdk 4.0.0-alpha.17 → 4.0.0-alpha.19
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.
- package/dist/cjs/core/BaseStepExecutor.d.ts +4 -1
- package/dist/cjs/core/BaseStepExecutor.js +35 -6
- package/dist/cjs/core/BaseStepExecutor.js.map +1 -1
- package/dist/cjs/core/StatusManager.js +8 -1
- package/dist/cjs/core/StatusManager.js.map +1 -1
- package/dist/cjs/core/TaskPipeline.js +9 -28
- package/dist/cjs/core/TaskPipeline.js.map +1 -1
- package/dist/cjs/core/utils.d.ts +5 -1
- package/dist/cjs/index.d.ts +1 -1
- package/dist/cjs/index.js +2 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/types/core.d.ts +10 -6
- package/dist/cjs/types/execution.d.ts +1 -4
- package/dist/cjs/utils/waitForResult.d.ts +1 -1
- package/dist/cjs/utils/waitForResult.js +6 -2
- package/dist/cjs/utils/waitForResult.js.map +1 -1
- package/dist/cjs/utils/withDedupe.d.ts +5 -0
- package/dist/cjs/utils/withDedupe.js +2 -0
- package/dist/cjs/utils/withDedupe.js.map +1 -1
- package/dist/cjs/version.d.ts +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/esm/core/BaseStepExecutor.d.ts +4 -1
- package/dist/esm/core/BaseStepExecutor.js +35 -6
- package/dist/esm/core/BaseStepExecutor.js.map +1 -1
- package/dist/esm/core/StatusManager.js +8 -1
- package/dist/esm/core/StatusManager.js.map +1 -1
- package/dist/esm/core/TaskPipeline.js +9 -28
- package/dist/esm/core/TaskPipeline.js.map +1 -1
- package/dist/esm/core/utils.d.ts +5 -1
- package/dist/esm/index.d.ts +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/types/core.d.ts +10 -6
- package/dist/esm/types/execution.d.ts +1 -4
- package/dist/esm/utils/waitForResult.d.ts +2 -2
- package/dist/esm/utils/waitForResult.js +7 -3
- package/dist/esm/utils/waitForResult.js.map +1 -1
- package/dist/esm/utils/withDedupe.d.ts +10 -0
- package/dist/esm/utils/withDedupe.js +1 -1
- package/dist/esm/utils/withDedupe.js.map +1 -1
- package/dist/esm/version.d.ts +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/types/core/BaseStepExecutor.d.ts +4 -1
- package/dist/types/core/BaseStepExecutor.d.ts.map +1 -1
- package/dist/types/core/StatusManager.d.ts.map +1 -1
- package/dist/types/core/TaskPipeline.d.ts.map +1 -1
- package/dist/types/core/utils.d.ts +5 -1
- package/dist/types/core/utils.d.ts.map +1 -1
- package/dist/types/index.d.ts +1 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/types/core.d.ts +10 -6
- package/dist/types/types/core.d.ts.map +1 -1
- package/dist/types/types/execution.d.ts +1 -4
- package/dist/types/types/execution.d.ts.map +1 -1
- package/dist/types/utils/waitForResult.d.ts +2 -2
- package/dist/types/utils/waitForResult.d.ts.map +1 -1
- package/dist/types/utils/withDedupe.d.ts +10 -0
- package/dist/types/utils/withDedupe.d.ts.map +1 -1
- package/dist/types/version.d.ts +1 -1
- package/package.json +2 -2
- package/src/core/BaseStepExecutor.ts +46 -7
- package/src/core/StatusManager.ts +8 -1
- package/src/core/TaskPipeline.ts +10 -29
- package/src/index.ts +1 -1
- package/src/types/core.ts +4 -2
- package/src/types/execution.ts +0 -8
- package/src/utils/waitForResult.ts +9 -4
- package/src/utils/withDedupe.ts +1 -1
- package/src/version.ts +1 -1
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { ExecuteStepRetryError } from '../errors/errors.js';
|
|
2
|
+
import type { SDKError } from '../errors/SDKError.js';
|
|
3
|
+
import type { ExecuteStepRetryParams, ExecutionAction, ExecutionOptions, InteractionSettings, LiFiStepExtended, SDKClient, StepExecutor, StepExecutorOptions } from '../types/core.js';
|
|
2
4
|
import type { StepExecutorBaseContext, StepExecutorContext } from '../types/execution.js';
|
|
3
5
|
import { StatusManager } from './StatusManager.js';
|
|
4
6
|
import type { TaskPipeline } from './TaskPipeline.js';
|
|
@@ -12,5 +14,6 @@ export declare abstract class BaseStepExecutor implements StepExecutor {
|
|
|
12
14
|
private createBaseContext;
|
|
13
15
|
abstract createContext(baseContext: StepExecutorBaseContext): Promise<StepExecutorContext>;
|
|
14
16
|
abstract createPipeline(context: StepExecutorContext): TaskPipeline;
|
|
17
|
+
abstract parseErrors(error: Error, step?: LiFiStepExtended, action?: ExecutionAction, retryParams?: ExecuteStepRetryParams): Promise<SDKError | ExecuteStepRetryError>;
|
|
15
18
|
executeStep: (client: SDKClient, step: LiFiStepExtended, retryParams?: ExecuteStepRetryParams) => Promise<LiFiStepExtended>;
|
|
16
19
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.BaseStepExecutor = void 0;
|
|
4
|
+
const errors_js_1 = require("../errors/errors.js");
|
|
4
5
|
const StatusManager_js_1 = require("./StatusManager.js");
|
|
5
6
|
const defaultInteractionSettings = {
|
|
6
7
|
allowInteraction: true,
|
|
@@ -42,12 +43,40 @@ class BaseStepExecutor {
|
|
|
42
43
|
};
|
|
43
44
|
};
|
|
44
45
|
executeStep = async (client, step, retryParams) => {
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
46
|
+
try {
|
|
47
|
+
step.execution = this.statusManager.initializeExecution(step);
|
|
48
|
+
const baseContext = await this.createBaseContext(client, step, retryParams);
|
|
49
|
+
const context = await this.createContext(baseContext);
|
|
50
|
+
const pipeline = this.createPipeline(context);
|
|
51
|
+
await pipeline.run(context);
|
|
52
|
+
return step;
|
|
53
|
+
}
|
|
54
|
+
catch (error) {
|
|
55
|
+
const action = step.execution?.lastActionType
|
|
56
|
+
? this.statusManager.findAction(step, step.execution.lastActionType)
|
|
57
|
+
: undefined;
|
|
58
|
+
const parsed = await this.parseErrors(error, step, action, retryParams);
|
|
59
|
+
if (!(parsed instanceof errors_js_1.ExecuteStepRetryError)) {
|
|
60
|
+
if (action) {
|
|
61
|
+
this.statusManager.updateAction(step, action.type, 'FAILED', {
|
|
62
|
+
error: {
|
|
63
|
+
message: parsed.cause?.message,
|
|
64
|
+
code: parsed.code,
|
|
65
|
+
},
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
else {
|
|
69
|
+
this.statusManager.updateExecution(step, {
|
|
70
|
+
status: 'FAILED',
|
|
71
|
+
error: {
|
|
72
|
+
message: parsed.cause?.message,
|
|
73
|
+
code: parsed.code,
|
|
74
|
+
},
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
throw parsed;
|
|
79
|
+
}
|
|
51
80
|
};
|
|
52
81
|
}
|
|
53
82
|
exports.BaseStepExecutor = BaseStepExecutor;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseStepExecutor.js","sourceRoot":"","sources":["../../../src/core/BaseStepExecutor.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"BaseStepExecutor.js","sourceRoot":"","sources":["../../../src/core/BaseStepExecutor.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,6 +22,8 @@ class StatusManager {
|
|
|
22
22
|
step.execution.startedAt = Date.now();
|
|
23
23
|
step.execution.status = 'PENDING';
|
|
24
24
|
step.execution.signedAt = undefined;
|
|
25
|
+
step.execution.lastActionType = undefined;
|
|
26
|
+
step.execution.error = undefined;
|
|
25
27
|
this.updateStepInRoute(step);
|
|
26
28
|
}
|
|
27
29
|
return step.execution;
|
|
@@ -62,7 +64,9 @@ class StatusManager {
|
|
|
62
64
|
initializeAction = ({ step, type, chainId, status, }) => {
|
|
63
65
|
const action = this.findAction(step, type);
|
|
64
66
|
if (action) {
|
|
65
|
-
return this.updateAction(step, type, status
|
|
67
|
+
return this.updateAction(step, type, status, {
|
|
68
|
+
error: undefined,
|
|
69
|
+
});
|
|
66
70
|
}
|
|
67
71
|
return this.createAction({ step, type, chainId, status });
|
|
68
72
|
};
|
|
@@ -79,6 +83,9 @@ class StatusManager {
|
|
|
79
83
|
break;
|
|
80
84
|
case 'FAILED':
|
|
81
85
|
step.execution.status = 'FAILED';
|
|
86
|
+
if (params?.error) {
|
|
87
|
+
step.execution.error = params.error;
|
|
88
|
+
}
|
|
82
89
|
break;
|
|
83
90
|
case 'DONE':
|
|
84
91
|
break;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StatusManager.js","sourceRoot":"","sources":["../../../src/core/StatusManager.ts"],"names":[],"mappings":";;;AAQA,2DAAsD;AACtD,2DAAoD;AAYpD,MAAa,aAAa;IACP,OAAO,CAAQ;IACxB,YAAY,GAAG,IAAI,CAAA;IAE3B,YAAY,OAAe;QACzB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IACxB,CAAC;IAOD,mBAAmB,GAAG,CAAC,IAAsB,EAAa,EAAE;QAC1D,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,IAAI,CAAC,SAAS,GAAG;gBACf,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;gBACrB,MAAM,EAAE,SAAS;gBACjB,OAAO,EAAE,EAAE;aACZ,CAAA;YACD,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAA;QAC9B,CAAC;QAGD,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YACvC,IAAI,CAAC,SAAS,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;YACrC,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,SAAS,CAAA;YACjC,IAAI,CAAC,SAAS,CAAC,QAAQ,GAAG,SAAS,CAAA;YACnC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAA;QAC9B,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CAAA;IACvB,CAAC,CAAA;IAQD,eAAe,CACb,IAAsB,EACtB,SAA6B;QAE7B,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,MAAM,KAAK,CAAC,+BAA+B,CAAC,CAAA;QAC9C,CAAC;QACD,IAAI,CAAC,SAAS,GAAG;YACf,GAAG,IAAI,CAAC,SAAS;YACjB,GAAG,SAAS;SACb,CAAA;QACD,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAA;QAC5B,OAAO,IAAI,CAAA;IACb,CAAC;IAQD,UAAU,CACR,IAAsB,EACtB,IAAyB;QAEzB,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;QACvD,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAA;QAElE,OAAO,MAAM,CAAA;IACf,CAAC;IAWD,YAAY,GAAG,CAAC,EACd,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,MAAM,GACM,EAAmB,EAAE;QACjC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;QACvD,CAAC;QAED,MAAM,SAAS,GAAoB;YACjC,IAAI;YACJ,OAAO,EAAE,IAAA,oCAAgB,EAAC,IAAI,EAAE,MAAM,CAAC;YACvC,MAAM;YACN,OAAO;SACR,CAAA;QAED,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QACtC,IAAI,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAA;QACpC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAA;QAC5B,OAAO,SAAS,CAAA;IAClB,CAAC,CAAA;IAUD,gBAAgB,GAAG,CAAC,EAClB,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,MAAM,GACM,EAAmB,EAAE;QACjC,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;QAE1C,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"StatusManager.js","sourceRoot":"","sources":["../../../src/core/StatusManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,42 +1,23 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.TaskPipeline = void 0;
|
|
4
|
-
const errors_js_1 = require("../errors/errors.js");
|
|
5
4
|
class TaskPipeline {
|
|
6
5
|
tasks;
|
|
7
6
|
constructor(tasks) {
|
|
8
7
|
this.tasks = tasks;
|
|
9
8
|
}
|
|
10
9
|
async run(context) {
|
|
11
|
-
const { statusManager, step, parseErrors } = context;
|
|
12
10
|
for (const task of this.tasks) {
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
continue;
|
|
17
|
-
}
|
|
18
|
-
const result = await task.run(context);
|
|
19
|
-
if (result.status === 'PAUSED') {
|
|
20
|
-
return { status: 'PAUSED' };
|
|
21
|
-
}
|
|
22
|
-
if (result.context && typeof result.context === 'object') {
|
|
23
|
-
Object.assign(context, result.context);
|
|
24
|
-
}
|
|
11
|
+
const shouldRun = await task.shouldRun(context);
|
|
12
|
+
if (!shouldRun) {
|
|
13
|
+
continue;
|
|
25
14
|
}
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
statusManager.updateAction(step, action.type, 'FAILED', {
|
|
33
|
-
error: {
|
|
34
|
-
message: parsed.cause?.message,
|
|
35
|
-
code: parsed.code,
|
|
36
|
-
},
|
|
37
|
-
});
|
|
38
|
-
}
|
|
39
|
-
throw parsed;
|
|
15
|
+
const result = await task.run(context);
|
|
16
|
+
if (result.status === 'PAUSED') {
|
|
17
|
+
return { status: 'PAUSED' };
|
|
18
|
+
}
|
|
19
|
+
if (result.context && typeof result.context === 'object') {
|
|
20
|
+
Object.assign(context, result.context);
|
|
40
21
|
}
|
|
41
22
|
}
|
|
42
23
|
return { status: 'COMPLETED' };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TaskPipeline.js","sourceRoot":"","sources":["../../../src/core/TaskPipeline.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"TaskPipeline.js","sourceRoot":"","sources":["../../../src/core/TaskPipeline.ts"],"names":[],"mappings":";;;AAGA,MAAa,YAAY;IACN,KAAK,CAAyB;IAE/C,YAAY,KAA8B;QACxC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IACpB,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,OAA4B;QACpC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAC9B,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAA;YAC/C,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,SAAQ;YACV,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;YACtC,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAC/B,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAA;YAC7B,CAAC;YACD,IAAI,MAAM,CAAC,OAAO,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;gBACzD,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAA;YACxC,CAAC;QACH,CAAC;QAED,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,CAAA;IAChC,CAAC;CACF;AAxBD,oCAwBC"}
|
package/dist/cjs/core/utils.d.ts
CHANGED
|
@@ -75,13 +75,17 @@ export declare function getRpcUrlsFromChains(existingRpcUrls: RPCUrls, chains: E
|
|
|
75
75
|
4326?: string[] | undefined;
|
|
76
76
|
3637?: string[] | undefined;
|
|
77
77
|
5734951?: string[] | undefined;
|
|
78
|
-
|
|
78
|
+
2818?: string[] | undefined;
|
|
79
|
+
4217?: string[] | undefined;
|
|
79
80
|
1161011141099710?: string[] | undefined;
|
|
80
81
|
111971151099710?: string[] | undefined;
|
|
82
|
+
1151111081099710?: string[] | undefined;
|
|
83
|
+
1021111031099710?: string[] | undefined;
|
|
81
84
|
9270000000000000?: string[] | undefined;
|
|
82
85
|
20000000000001?: string[] | undefined;
|
|
83
86
|
20000000000002?: string[] | undefined;
|
|
84
87
|
20000000000003?: string[] | undefined;
|
|
85
88
|
20000000000004?: string[] | undefined;
|
|
89
|
+
20000000000005?: string[] | undefined;
|
|
86
90
|
728126428?: string[] | undefined;
|
|
87
91
|
};
|
package/dist/cjs/index.d.ts
CHANGED
|
@@ -50,4 +50,4 @@ export { isHex } from './utils/isHex.js';
|
|
|
50
50
|
export { parseUnits } from './utils/parseUnits.js';
|
|
51
51
|
export { sleep } from './utils/sleep.js';
|
|
52
52
|
export { waitForResult } from './utils/waitForResult.js';
|
|
53
|
-
export { withDedupe } from './utils/withDedupe.js';
|
|
53
|
+
export { LruMap, withDedupe } from './utils/withDedupe.js';
|
package/dist/cjs/index.js
CHANGED
|
@@ -15,7 +15,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
exports.ServerError = exports.RPCError = exports.ProviderError = exports.ExecuteStepRetryError = exports.BalanceError = exports.LiFiErrorCode = exports.ErrorName = exports.ErrorMessage = exports.BaseError = exports.WaitForTransactionStatusTask = exports.PrepareTransactionTask = exports.stepComparison = exports.getTransactionRequestData = exports.checkBalance = exports.CheckBalanceTask = exports.TaskPipeline = exports.StatusManager = exports.updateRouteExecution = exports.stopRouteExecution = exports.resumeRoute = exports.getActiveRoutes = exports.getActiveRoute = exports.executeRoute = exports.BaseStepExecutor = exports.BaseStepExecutionTask = exports.getSubstatusMessage = exports.getActionMessage = exports.createClient = exports.relayTransaction = exports.patchContractCalls = exports.actions = exports.getWalletBalances = exports.getTransactionHistory = exports.getTools = exports.getTokens = exports.getTokenBalancesByChain = exports.getTokenBalances = exports.getTokenBalance = exports.getToken = exports.getStepTransaction = exports.getStatus = exports.getRoutes = exports.getRelayerQuote = exports.getRelayedTransactionStatus = exports.getQuote = exports.getNameServiceAddress = exports.getGasRecommendation = exports.getContractCallsQuote = exports.getConnections = exports.getChains = void 0;
|
|
18
|
-
exports.withDedupe = exports.waitForResult = exports.sleep = exports.parseUnits = exports.isHex = exports.formatUnits = exports.fetchTxErrorDetails = exports.convertQuoteToRoute = exports.checkPackageUpdates = exports.SDKError = exports.HTTPError = exports.ValidationError = exports.UnknownError = exports.TransactionError = void 0;
|
|
18
|
+
exports.withDedupe = exports.LruMap = exports.waitForResult = exports.sleep = exports.parseUnits = exports.isHex = exports.formatUnits = exports.fetchTxErrorDetails = exports.convertQuoteToRoute = exports.checkPackageUpdates = exports.SDKError = exports.HTTPError = exports.ValidationError = exports.UnknownError = exports.TransactionError = void 0;
|
|
19
19
|
__exportStar(require("@lifi/types"), exports);
|
|
20
20
|
var getChains_js_1 = require("./actions/getChains.js");
|
|
21
21
|
Object.defineProperty(exports, "getChains", { enumerable: true, get: function () { return getChains_js_1.getChains; } });
|
|
@@ -129,5 +129,6 @@ Object.defineProperty(exports, "sleep", { enumerable: true, get: function () { r
|
|
|
129
129
|
var waitForResult_js_1 = require("./utils/waitForResult.js");
|
|
130
130
|
Object.defineProperty(exports, "waitForResult", { enumerable: true, get: function () { return waitForResult_js_1.waitForResult; } });
|
|
131
131
|
var withDedupe_js_1 = require("./utils/withDedupe.js");
|
|
132
|
+
Object.defineProperty(exports, "LruMap", { enumerable: true, get: function () { return withDedupe_js_1.LruMap; } });
|
|
132
133
|
Object.defineProperty(exports, "withDedupe", { enumerable: true, get: function () { return withDedupe_js_1.withDedupe; } });
|
|
133
134
|
//# sourceMappingURL=index.js.map
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -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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"}
|
package/dist/cjs/types/core.d.ts
CHANGED
|
@@ -129,7 +129,6 @@ export interface ExecutionOptions {
|
|
|
129
129
|
getContractCalls?: GetContractCallsHook;
|
|
130
130
|
adjustZeroOutputFromPreviousStep?: boolean;
|
|
131
131
|
executeInBackground?: boolean;
|
|
132
|
-
disableMessageSigning?: boolean;
|
|
133
132
|
infiniteApproval?: boolean;
|
|
134
133
|
}
|
|
135
134
|
export type ExecutionStatus = 'ACTION_REQUIRED' | 'PENDING' | 'FAILED' | 'DONE';
|
|
@@ -142,16 +141,16 @@ export type ExecutionAction = {
|
|
|
142
141
|
substatus?: Substatus;
|
|
143
142
|
substatusMessage?: string;
|
|
144
143
|
chainId?: number;
|
|
145
|
-
error?: {
|
|
146
|
-
code: string | number;
|
|
147
|
-
message: string;
|
|
148
|
-
htmlMessage?: string;
|
|
149
|
-
};
|
|
150
144
|
txHash?: string;
|
|
151
145
|
txLink?: string;
|
|
152
146
|
taskId?: string;
|
|
153
147
|
txType?: TransactionMethodType;
|
|
154
148
|
txHex?: string;
|
|
149
|
+
error?: {
|
|
150
|
+
code: string | number;
|
|
151
|
+
message: string;
|
|
152
|
+
htmlMessage?: string;
|
|
153
|
+
};
|
|
155
154
|
};
|
|
156
155
|
export interface Execution {
|
|
157
156
|
startedAt: number;
|
|
@@ -166,5 +165,10 @@ export interface Execution {
|
|
|
166
165
|
gasCosts?: GasCost[];
|
|
167
166
|
internalTxLink?: string;
|
|
168
167
|
externalTxLink?: string;
|
|
168
|
+
error?: {
|
|
169
|
+
code: string | number;
|
|
170
|
+
message: string;
|
|
171
|
+
htmlMessage?: string;
|
|
172
|
+
};
|
|
169
173
|
}
|
|
170
174
|
export type TransactionMethodType = 'standard' | 'relayed' | 'batched';
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import type { ExtendedChain } from '@lifi/types';
|
|
2
2
|
import type { StatusManager } from '../core/StatusManager.js';
|
|
3
|
-
import type {
|
|
4
|
-
import type { SDKError } from '../errors/SDKError.js';
|
|
5
|
-
import type { ExecuteStepRetryParams, ExecutionAction, ExecutionOptions, LiFiStepExtended, SDKClient } from './core.js';
|
|
3
|
+
import type { ExecuteStepRetryParams, ExecutionOptions, LiFiStepExtended, SDKClient } from './core.js';
|
|
6
4
|
export interface StepExecutorBaseContext {
|
|
7
5
|
statusManager: StatusManager;
|
|
8
6
|
executionOptions?: ExecutionOptions;
|
|
@@ -16,7 +14,6 @@ export interface StepExecutorBaseContext {
|
|
|
16
14
|
}
|
|
17
15
|
export interface StepExecutorContext extends StepExecutorBaseContext {
|
|
18
16
|
pollingIntervalMs?: number;
|
|
19
|
-
parseErrors: (error: Error, step?: LiFiStepExtended, action?: ExecutionAction) => Promise<SDKError | ExecuteStepRetryError>;
|
|
20
17
|
}
|
|
21
18
|
export interface TaskResult<TContext = Record<string, unknown>> {
|
|
22
19
|
status: TaskStatus;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const waitForResult: <T>(fn: () => Promise<T | undefined>, interval?: number, maxRetries?: number, shouldRetry?: (count: number, error: unknown) => boolean) => Promise<T>;
|
|
1
|
+
export declare const waitForResult: <T>(fn: () => Promise<T | undefined>, interval?: number | ((poll: number) => number), maxRetries?: number, shouldRetry?: (count: number, error: unknown) => boolean) => Promise<T>;
|
|
@@ -5,11 +5,14 @@ const sleep_js_1 = require("./sleep.js");
|
|
|
5
5
|
const waitForResult = async (fn, interval = 5000, maxRetries = 3, shouldRetry = () => true) => {
|
|
6
6
|
let result;
|
|
7
7
|
let attempts = 0;
|
|
8
|
+
let polls = 0;
|
|
9
|
+
const getInterval = typeof interval === 'function' ? interval : () => interval;
|
|
8
10
|
while (!result) {
|
|
9
11
|
try {
|
|
10
12
|
result = await fn();
|
|
11
13
|
if (!result) {
|
|
12
|
-
await (0, sleep_js_1.sleep)(
|
|
14
|
+
await (0, sleep_js_1.sleep)(getInterval(polls));
|
|
15
|
+
polls++;
|
|
13
16
|
}
|
|
14
17
|
}
|
|
15
18
|
catch (error) {
|
|
@@ -20,7 +23,8 @@ const waitForResult = async (fn, interval = 5000, maxRetries = 3, shouldRetry =
|
|
|
20
23
|
if (attempts === maxRetries) {
|
|
21
24
|
throw error;
|
|
22
25
|
}
|
|
23
|
-
await (0, sleep_js_1.sleep)(
|
|
26
|
+
await (0, sleep_js_1.sleep)(getInterval(polls));
|
|
27
|
+
polls++;
|
|
24
28
|
}
|
|
25
29
|
}
|
|
26
30
|
return result;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"waitForResult.js","sourceRoot":"","sources":["../../../src/utils/waitForResult.ts"],"names":[],"mappings":";;;AAAA,yCAAkC;AAW3B,MAAM,aAAa,GAAG,KAAK,EAChC,EAAgC,EAChC,
|
|
1
|
+
{"version":3,"file":"waitForResult.js","sourceRoot":"","sources":["../../../src/utils/waitForResult.ts"],"names":[],"mappings":";;;AAAA,yCAAkC;AAW3B,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,IAAA,gBAAK,EAAC,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,IAAA,gBAAK,EAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAA;YAC/B,KAAK,EAAE,CAAA;QACT,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AAjCY,QAAA,aAAa,iBAiCzB"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LruMap = void 0;
|
|
3
4
|
exports.withDedupe = withDedupe;
|
|
4
5
|
class LruMap extends Map {
|
|
5
6
|
maxSize;
|
|
@@ -15,6 +16,7 @@ class LruMap extends Map {
|
|
|
15
16
|
return this;
|
|
16
17
|
}
|
|
17
18
|
}
|
|
19
|
+
exports.LruMap = LruMap;
|
|
18
20
|
const promiseCache = new LruMap(8192);
|
|
19
21
|
function withDedupe(fn, { enabled = true, id }) {
|
|
20
22
|
if (!enabled || !id) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withDedupe.js","sourceRoot":"","sources":["../../../src/utils/withDedupe.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"withDedupe.js","sourceRoot":"","sources":["../../../src/utils/withDedupe.ts"],"names":[],"mappings":";;;AA+BA,gCAaC;AAvCD,MAAa,MAAwB,SAAQ,GAAkB;IAC7D,OAAO,CAAQ;IAEf,YAAY,IAAY;QACtB,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;IACrB,CAAC;IAEQ,GAAG,CAAC,GAAW,EAAE,KAAY;QACpC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;QACrB,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;YAC7C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAM,CAAC,CAAA;QACxC,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;CACF;AAfD,wBAeC;AAGD,MAAM,YAAY,GAAiB,IAAI,MAAM,CAAe,IAAI,CAAC,CAAA;AAQjE,SAAgB,UAAU,CACxB,EAAoB,EACpB,EAAE,OAAO,GAAG,IAAI,EAAE,EAAE,EAAqB;IAEzC,IAAI,CAAC,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC;QACpB,OAAO,EAAE,EAAE,CAAA;IACb,CAAC;IACD,IAAI,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;QACzB,OAAO,YAAY,CAAC,GAAG,CAAC,EAAE,CAAE,CAAA;IAC9B,CAAC;IACD,MAAM,OAAO,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAA;IAC3D,YAAY,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC,CAAA;IAC7B,OAAO,OAAO,CAAA;AAChB,CAAC"}
|
package/dist/cjs/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export declare const name = "@lifi/sdk";
|
|
2
|
-
export declare const version = "4.0.0-alpha.
|
|
2
|
+
export declare const version = "4.0.0-alpha.19";
|
package/dist/cjs/version.js
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { ExecuteStepRetryError } from '../errors/errors.js';
|
|
2
|
+
import type { SDKError } from '../errors/SDKError.js';
|
|
3
|
+
import type { ExecuteStepRetryParams, ExecutionAction, ExecutionOptions, InteractionSettings, LiFiStepExtended, SDKClient, StepExecutor, StepExecutorOptions } from '../types/core.js';
|
|
2
4
|
import type { StepExecutorBaseContext, StepExecutorContext } from '../types/execution.js';
|
|
3
5
|
import { StatusManager } from './StatusManager.js';
|
|
4
6
|
import type { TaskPipeline } from './TaskPipeline.js';
|
|
@@ -12,5 +14,6 @@ export declare abstract class BaseStepExecutor implements StepExecutor {
|
|
|
12
14
|
private createBaseContext;
|
|
13
15
|
abstract createContext(baseContext: StepExecutorBaseContext): Promise<StepExecutorContext>;
|
|
14
16
|
abstract createPipeline(context: StepExecutorContext): TaskPipeline;
|
|
17
|
+
abstract parseErrors(error: Error, step?: LiFiStepExtended, action?: ExecutionAction, retryParams?: ExecuteStepRetryParams): Promise<SDKError | ExecuteStepRetryError>;
|
|
15
18
|
executeStep: (client: SDKClient, step: LiFiStepExtended, retryParams?: ExecuteStepRetryParams) => Promise<LiFiStepExtended>;
|
|
16
19
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { ExecuteStepRetryError } from '../errors/errors.js';
|
|
1
2
|
import { StatusManager } from './StatusManager.js';
|
|
2
3
|
// Please be careful when changing the defaults as it may break the behavior (e.g., background execution)
|
|
3
4
|
const defaultInteractionSettings = {
|
|
@@ -40,12 +41,40 @@ export class BaseStepExecutor {
|
|
|
40
41
|
};
|
|
41
42
|
};
|
|
42
43
|
executeStep = async (client, step, retryParams) => {
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
44
|
+
try {
|
|
45
|
+
step.execution = this.statusManager.initializeExecution(step);
|
|
46
|
+
const baseContext = await this.createBaseContext(client, step, retryParams);
|
|
47
|
+
const context = await this.createContext(baseContext);
|
|
48
|
+
const pipeline = this.createPipeline(context);
|
|
49
|
+
await pipeline.run(context);
|
|
50
|
+
return step;
|
|
51
|
+
}
|
|
52
|
+
catch (error) {
|
|
53
|
+
const action = step.execution?.lastActionType
|
|
54
|
+
? this.statusManager.findAction(step, step.execution.lastActionType)
|
|
55
|
+
: undefined;
|
|
56
|
+
const parsed = await this.parseErrors(error, step, action, retryParams);
|
|
57
|
+
if (!(parsed instanceof ExecuteStepRetryError)) {
|
|
58
|
+
if (action) {
|
|
59
|
+
this.statusManager.updateAction(step, action.type, 'FAILED', {
|
|
60
|
+
error: {
|
|
61
|
+
message: parsed.cause?.message,
|
|
62
|
+
code: parsed.code,
|
|
63
|
+
},
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
else {
|
|
67
|
+
this.statusManager.updateExecution(step, {
|
|
68
|
+
status: 'FAILED',
|
|
69
|
+
error: {
|
|
70
|
+
message: parsed.cause?.message,
|
|
71
|
+
code: parsed.code,
|
|
72
|
+
},
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
throw parsed;
|
|
77
|
+
}
|
|
49
78
|
};
|
|
50
79
|
}
|
|
51
80
|
//# sourceMappingURL=BaseStepExecutor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseStepExecutor.js","sourceRoot":"","sources":["../../../src/core/BaseStepExecutor.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"BaseStepExecutor.js","sourceRoot":"","sources":["../../../src/core/BaseStepExecutor.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,6 +28,8 @@ export class StatusManager {
|
|
|
28
28
|
step.execution.startedAt = Date.now();
|
|
29
29
|
step.execution.status = 'PENDING';
|
|
30
30
|
step.execution.signedAt = undefined;
|
|
31
|
+
step.execution.lastActionType = undefined;
|
|
32
|
+
step.execution.error = undefined;
|
|
31
33
|
this.updateStepInRoute(step);
|
|
32
34
|
}
|
|
33
35
|
return step.execution;
|
|
@@ -97,7 +99,9 @@ export class StatusManager {
|
|
|
97
99
|
initializeAction = ({ step, type, chainId, status, }) => {
|
|
98
100
|
const action = this.findAction(step, type);
|
|
99
101
|
if (action) {
|
|
100
|
-
return this.updateAction(step, type, status
|
|
102
|
+
return this.updateAction(step, type, status, {
|
|
103
|
+
error: undefined,
|
|
104
|
+
});
|
|
101
105
|
}
|
|
102
106
|
return this.createAction({ step, type, chainId, status });
|
|
103
107
|
};
|
|
@@ -122,6 +126,9 @@ export class StatusManager {
|
|
|
122
126
|
break;
|
|
123
127
|
case 'FAILED':
|
|
124
128
|
step.execution.status = 'FAILED';
|
|
129
|
+
if (params?.error) {
|
|
130
|
+
step.execution.error = params.error;
|
|
131
|
+
}
|
|
125
132
|
break;
|
|
126
133
|
case 'DONE':
|
|
127
134
|
break;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StatusManager.js","sourceRoot":"","sources":["../../../src/core/StatusManager.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"StatusManager.js","sourceRoot":"","sources":["../../../src/core/StatusManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,39 +1,20 @@
|
|
|
1
|
-
import { ExecuteStepRetryError } from '../errors/errors.js';
|
|
2
1
|
export class TaskPipeline {
|
|
3
2
|
tasks;
|
|
4
3
|
constructor(tasks) {
|
|
5
4
|
this.tasks = tasks;
|
|
6
5
|
}
|
|
7
6
|
async run(context) {
|
|
8
|
-
const { statusManager, step, parseErrors } = context;
|
|
9
7
|
for (const task of this.tasks) {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
continue;
|
|
14
|
-
}
|
|
15
|
-
const result = await task.run(context);
|
|
16
|
-
if (result.status === 'PAUSED') {
|
|
17
|
-
return { status: 'PAUSED' };
|
|
18
|
-
}
|
|
19
|
-
if (result.context && typeof result.context === 'object') {
|
|
20
|
-
Object.assign(context, result.context);
|
|
21
|
-
}
|
|
8
|
+
const shouldRun = await task.shouldRun(context);
|
|
9
|
+
if (!shouldRun) {
|
|
10
|
+
continue;
|
|
22
11
|
}
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
statusManager.updateAction(step, action.type, 'FAILED', {
|
|
30
|
-
error: {
|
|
31
|
-
message: parsed.cause?.message,
|
|
32
|
-
code: parsed.code,
|
|
33
|
-
},
|
|
34
|
-
});
|
|
35
|
-
}
|
|
36
|
-
throw parsed;
|
|
12
|
+
const result = await task.run(context);
|
|
13
|
+
if (result.status === 'PAUSED') {
|
|
14
|
+
return { status: 'PAUSED' };
|
|
15
|
+
}
|
|
16
|
+
if (result.context && typeof result.context === 'object') {
|
|
17
|
+
Object.assign(context, result.context);
|
|
37
18
|
}
|
|
38
19
|
}
|
|
39
20
|
return { status: 'COMPLETED' };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TaskPipeline.js","sourceRoot":"","sources":["../../../src/core/TaskPipeline.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"TaskPipeline.js","sourceRoot":"","sources":["../../../src/core/TaskPipeline.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,YAAY;IACN,KAAK,CAAyB;IAE/C,YAAY,KAA8B;QACxC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IACpB,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,OAA4B;QACpC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAC9B,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAA;YAC/C,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,SAAQ;YACV,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;YACtC,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAC/B,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAA;YAC7B,CAAC;YACD,IAAI,MAAM,CAAC,OAAO,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;gBACzD,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAA;YACxC,CAAC;QACH,CAAC;QAED,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,CAAA;IAChC,CAAC;CACF"}
|