@8medusa/orchestration 2.7.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.
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +20 -0
- package/dist/index.js.map +1 -0
- package/dist/joiner/helpers.d.ts +3 -0
- package/dist/joiner/helpers.d.ts.map +1 -0
- package/dist/joiner/helpers.js +69 -0
- package/dist/joiner/helpers.js.map +1 -0
- package/dist/joiner/index.d.ts +3 -0
- package/dist/joiner/index.d.ts.map +1 -0
- package/dist/joiner/index.js +19 -0
- package/dist/joiner/index.js.map +1 -0
- package/dist/joiner/remote-joiner.d.ts +42 -0
- package/dist/joiner/remote-joiner.d.ts.map +1 -0
- package/dist/joiner/remote-joiner.js +1108 -0
- package/dist/joiner/remote-joiner.js.map +1 -0
- package/dist/transaction/datastore/abstract-storage.d.ts +42 -0
- package/dist/transaction/datastore/abstract-storage.d.ts.map +1 -0
- package/dist/transaction/datastore/abstract-storage.js +52 -0
- package/dist/transaction/datastore/abstract-storage.js.map +1 -0
- package/dist/transaction/datastore/base-in-memory-storage.d.ts +11 -0
- package/dist/transaction/datastore/base-in-memory-storage.d.ts.map +1 -0
- package/dist/transaction/datastore/base-in-memory-storage.js +33 -0
- package/dist/transaction/datastore/base-in-memory-storage.js.map +1 -0
- package/dist/transaction/distributed-transaction.d.ts +99 -0
- package/dist/transaction/distributed-transaction.d.ts.map +1 -0
- package/dist/transaction/distributed-transaction.js +258 -0
- package/dist/transaction/distributed-transaction.js.map +1 -0
- package/dist/transaction/errors.d.ts +31 -0
- package/dist/transaction/errors.d.ts.map +1 -0
- package/dist/transaction/errors.js +89 -0
- package/dist/transaction/errors.js.map +1 -0
- package/dist/transaction/index.d.ts +8 -0
- package/dist/transaction/index.d.ts.map +1 -0
- package/dist/transaction/index.js +24 -0
- package/dist/transaction/index.js.map +1 -0
- package/dist/transaction/orchestrator-builder.d.ts +36 -0
- package/dist/transaction/orchestrator-builder.d.ts.map +1 -0
- package/dist/transaction/orchestrator-builder.js +300 -0
- package/dist/transaction/orchestrator-builder.js.map +1 -0
- package/dist/transaction/transaction-orchestrator.d.ts +181 -0
- package/dist/transaction/transaction-orchestrator.d.ts.map +1 -0
- package/dist/transaction/transaction-orchestrator.js +1061 -0
- package/dist/transaction/transaction-orchestrator.js.map +1 -0
- package/dist/transaction/transaction-step.d.ts +67 -0
- package/dist/transaction/transaction-step.d.ts.map +1 -0
- package/dist/transaction/transaction-step.js +146 -0
- package/dist/transaction/transaction-step.js.map +1 -0
- package/dist/transaction/types.d.ts +236 -0
- package/dist/transaction/types.d.ts.map +1 -0
- package/dist/transaction/types.js +23 -0
- package/dist/transaction/types.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/dist/workflow/global-workflow.d.ts +14 -0
- package/dist/workflow/global-workflow.d.ts.map +1 -0
- package/dist/workflow/global-workflow.js +105 -0
- package/dist/workflow/global-workflow.js.map +1 -0
- package/dist/workflow/index.d.ts +5 -0
- package/dist/workflow/index.d.ts.map +1 -0
- package/dist/workflow/index.js +21 -0
- package/dist/workflow/index.js.map +1 -0
- package/dist/workflow/local-workflow.d.ts +46 -0
- package/dist/workflow/local-workflow.d.ts.map +1 -0
- package/dist/workflow/local-workflow.js +360 -0
- package/dist/workflow/local-workflow.js.map +1 -0
- package/dist/workflow/scheduler.d.ts +12 -0
- package/dist/workflow/scheduler.d.ts.map +1 -0
- package/dist/workflow/scheduler.js +35 -0
- package/dist/workflow/scheduler.js.map +1 -0
- package/dist/workflow/workflow-manager.d.ts +38 -0
- package/dist/workflow/workflow-manager.d.ts.map +1 -0
- package/dist/workflow/workflow-manager.js +124 -0
- package/dist/workflow/workflow-manager.js.map +1 -0
- package/package.json +59 -0
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
declare class BaseStepErrror extends Error {
|
|
2
|
+
#private;
|
|
3
|
+
constructor(name: any, message?: string, stepResponse?: unknown);
|
|
4
|
+
getStepResponse(): unknown;
|
|
5
|
+
}
|
|
6
|
+
export declare class PermanentStepFailureError extends BaseStepErrror {
|
|
7
|
+
static isPermanentStepFailureError(error: Error): error is PermanentStepFailureError;
|
|
8
|
+
constructor(message?: string, stepResponse?: unknown);
|
|
9
|
+
}
|
|
10
|
+
export declare class SkipStepResponse extends BaseStepErrror {
|
|
11
|
+
static isSkipStepResponse(error: Error): error is SkipStepResponse;
|
|
12
|
+
constructor(message?: string, stepResponse?: unknown);
|
|
13
|
+
}
|
|
14
|
+
export declare class TransactionStepTimeoutError extends BaseStepErrror {
|
|
15
|
+
static isTransactionStepTimeoutError(error: Error): error is TransactionStepTimeoutError;
|
|
16
|
+
constructor(message?: string, stepResponse?: unknown);
|
|
17
|
+
}
|
|
18
|
+
export declare class TransactionTimeoutError extends BaseStepErrror {
|
|
19
|
+
static isTransactionTimeoutError(error: Error): error is TransactionTimeoutError;
|
|
20
|
+
constructor(message?: string, stepResponse?: unknown);
|
|
21
|
+
}
|
|
22
|
+
export declare class NonSerializableCheckPointError extends Error {
|
|
23
|
+
static isNonSerializableCheckPointError(error: Error): error is NonSerializableCheckPointError;
|
|
24
|
+
constructor(message?: string);
|
|
25
|
+
}
|
|
26
|
+
export declare class SkipExecutionError extends Error {
|
|
27
|
+
static isSkipExecutionError(error: Error): error is SkipExecutionError;
|
|
28
|
+
constructor(message?: string);
|
|
29
|
+
}
|
|
30
|
+
export {};
|
|
31
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/transaction/errors.ts"],"names":[],"mappings":"AAAA,cAAM,cAAe,SAAQ,KAAK;;gBAGpB,IAAI,KAAA,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,OAAO;IAM1D,eAAe,IAAI,OAAO;CAG3B;AAED,qBAAa,yBAA0B,SAAQ,cAAc;IAC3D,MAAM,CAAC,2BAA2B,CAChC,KAAK,EAAE,KAAK,GACX,KAAK,IAAI,yBAAyB;gBAOzB,OAAO,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,OAAO;CAGrD;AAED,qBAAa,gBAAiB,SAAQ,cAAc;IAClD,MAAM,CAAC,kBAAkB,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,IAAI,gBAAgB;gBAMtD,OAAO,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,OAAO;CAGrD;AAED,qBAAa,2BAA4B,SAAQ,cAAc;IAC7D,MAAM,CAAC,6BAA6B,CAClC,KAAK,EAAE,KAAK,GACX,KAAK,IAAI,2BAA2B;gBAO3B,OAAO,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,OAAO;CAGrD;AAED,qBAAa,uBAAwB,SAAQ,cAAc;IACzD,MAAM,CAAC,yBAAyB,CAC9B,KAAK,EAAE,KAAK,GACX,KAAK,IAAI,uBAAuB;gBAOvB,OAAO,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,OAAO;CAGrD;AAED,qBAAa,8BAA+B,SAAQ,KAAK;IACvD,MAAM,CAAC,gCAAgC,CACrC,KAAK,EAAE,KAAK,GACX,KAAK,IAAI,8BAA8B;gBAO9B,OAAO,CAAC,EAAE,MAAM;CAI7B;AAED,qBAAa,kBAAmB,SAAQ,KAAK;IAC3C,MAAM,CAAC,oBAAoB,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,IAAI,kBAAkB;gBAO1D,OAAO,CAAC,EAAE,MAAM;CAI7B"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
3
|
+
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
4
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
5
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
6
|
+
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
7
|
+
};
|
|
8
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
9
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
10
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
11
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
12
|
+
};
|
|
13
|
+
var _BaseStepErrror_stepResponse;
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.SkipExecutionError = exports.NonSerializableCheckPointError = exports.TransactionTimeoutError = exports.TransactionStepTimeoutError = exports.SkipStepResponse = exports.PermanentStepFailureError = void 0;
|
|
16
|
+
class BaseStepErrror extends Error {
|
|
17
|
+
constructor(name, message, stepResponse) {
|
|
18
|
+
super(message);
|
|
19
|
+
_BaseStepErrror_stepResponse.set(this, void 0);
|
|
20
|
+
this.name = name;
|
|
21
|
+
__classPrivateFieldSet(this, _BaseStepErrror_stepResponse, stepResponse, "f");
|
|
22
|
+
}
|
|
23
|
+
getStepResponse() {
|
|
24
|
+
return __classPrivateFieldGet(this, _BaseStepErrror_stepResponse, "f");
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
_BaseStepErrror_stepResponse = new WeakMap();
|
|
28
|
+
class PermanentStepFailureError extends BaseStepErrror {
|
|
29
|
+
static isPermanentStepFailureError(error) {
|
|
30
|
+
return (error instanceof PermanentStepFailureError ||
|
|
31
|
+
error?.name === "PermanentStepFailure");
|
|
32
|
+
}
|
|
33
|
+
constructor(message, stepResponse) {
|
|
34
|
+
super("PermanentStepFailure", message, stepResponse);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
exports.PermanentStepFailureError = PermanentStepFailureError;
|
|
38
|
+
class SkipStepResponse extends BaseStepErrror {
|
|
39
|
+
static isSkipStepResponse(error) {
|
|
40
|
+
return (error instanceof SkipStepResponse || error?.name === "SkipStepResponse");
|
|
41
|
+
}
|
|
42
|
+
constructor(message, stepResponse) {
|
|
43
|
+
super("SkipStepResponse", message, stepResponse);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
exports.SkipStepResponse = SkipStepResponse;
|
|
47
|
+
class TransactionStepTimeoutError extends BaseStepErrror {
|
|
48
|
+
static isTransactionStepTimeoutError(error) {
|
|
49
|
+
return (error instanceof TransactionStepTimeoutError ||
|
|
50
|
+
error?.name === "TransactionStepTimeoutError");
|
|
51
|
+
}
|
|
52
|
+
constructor(message, stepResponse) {
|
|
53
|
+
super("TransactionStepTimeoutError", message, stepResponse);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
exports.TransactionStepTimeoutError = TransactionStepTimeoutError;
|
|
57
|
+
class TransactionTimeoutError extends BaseStepErrror {
|
|
58
|
+
static isTransactionTimeoutError(error) {
|
|
59
|
+
return (error instanceof TransactionTimeoutError ||
|
|
60
|
+
error?.name === "TransactionTimeoutError");
|
|
61
|
+
}
|
|
62
|
+
constructor(message, stepResponse) {
|
|
63
|
+
super("TransactionTimeoutError", message, stepResponse);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
exports.TransactionTimeoutError = TransactionTimeoutError;
|
|
67
|
+
class NonSerializableCheckPointError extends Error {
|
|
68
|
+
static isNonSerializableCheckPointError(error) {
|
|
69
|
+
return (error instanceof NonSerializableCheckPointError ||
|
|
70
|
+
error?.name === "NonSerializableCheckPointError");
|
|
71
|
+
}
|
|
72
|
+
constructor(message) {
|
|
73
|
+
super(message);
|
|
74
|
+
this.name = "NonSerializableCheckPointError";
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
exports.NonSerializableCheckPointError = NonSerializableCheckPointError;
|
|
78
|
+
class SkipExecutionError extends Error {
|
|
79
|
+
static isSkipExecutionError(error) {
|
|
80
|
+
return (error instanceof SkipExecutionError ||
|
|
81
|
+
error?.name === "SkipExecutionError");
|
|
82
|
+
}
|
|
83
|
+
constructor(message) {
|
|
84
|
+
super(message);
|
|
85
|
+
this.name = "SkipExecutionError";
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
exports.SkipExecutionError = SkipExecutionError;
|
|
89
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/transaction/errors.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,MAAM,cAAe,SAAQ,KAAK;IAGhC,YAAY,IAAI,EAAE,OAAgB,EAAE,YAAsB;QACxD,KAAK,CAAC,OAAO,CAAC,CAAA;QAHhB,+CAAsB;QAIpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,uBAAA,IAAI,gCAAiB,YAAY,MAAA,CAAA;IACnC,CAAC;IAED,eAAe;QACb,OAAO,uBAAA,IAAI,oCAAc,CAAA;IAC3B,CAAC;CACF;;AAED,MAAa,yBAA0B,SAAQ,cAAc;IAC3D,MAAM,CAAC,2BAA2B,CAChC,KAAY;QAEZ,OAAO,CACL,KAAK,YAAY,yBAAyB;YAC1C,KAAK,EAAE,IAAI,KAAK,sBAAsB,CACvC,CAAA;IACH,CAAC;IAED,YAAY,OAAgB,EAAE,YAAsB;QAClD,KAAK,CAAC,sBAAsB,EAAE,OAAO,EAAE,YAAY,CAAC,CAAA;IACtD,CAAC;CACF;AAbD,8DAaC;AAED,MAAa,gBAAiB,SAAQ,cAAc;IAClD,MAAM,CAAC,kBAAkB,CAAC,KAAY;QACpC,OAAO,CACL,KAAK,YAAY,gBAAgB,IAAI,KAAK,EAAE,IAAI,KAAK,kBAAkB,CACxE,CAAA;IACH,CAAC;IAED,YAAY,OAAgB,EAAE,YAAsB;QAClD,KAAK,CAAC,kBAAkB,EAAE,OAAO,EAAE,YAAY,CAAC,CAAA;IAClD,CAAC;CACF;AAVD,4CAUC;AAED,MAAa,2BAA4B,SAAQ,cAAc;IAC7D,MAAM,CAAC,6BAA6B,CAClC,KAAY;QAEZ,OAAO,CACL,KAAK,YAAY,2BAA2B;YAC5C,KAAK,EAAE,IAAI,KAAK,6BAA6B,CAC9C,CAAA;IACH,CAAC;IAED,YAAY,OAAgB,EAAE,YAAsB;QAClD,KAAK,CAAC,6BAA6B,EAAE,OAAO,EAAE,YAAY,CAAC,CAAA;IAC7D,CAAC;CACF;AAbD,kEAaC;AAED,MAAa,uBAAwB,SAAQ,cAAc;IACzD,MAAM,CAAC,yBAAyB,CAC9B,KAAY;QAEZ,OAAO,CACL,KAAK,YAAY,uBAAuB;YACxC,KAAK,EAAE,IAAI,KAAK,yBAAyB,CAC1C,CAAA;IACH,CAAC;IAED,YAAY,OAAgB,EAAE,YAAsB;QAClD,KAAK,CAAC,yBAAyB,EAAE,OAAO,EAAE,YAAY,CAAC,CAAA;IACzD,CAAC;CACF;AAbD,0DAaC;AAED,MAAa,8BAA+B,SAAQ,KAAK;IACvD,MAAM,CAAC,gCAAgC,CACrC,KAAY;QAEZ,OAAO,CACL,KAAK,YAAY,8BAA8B;YAC/C,KAAK,EAAE,IAAI,KAAK,gCAAgC,CACjD,CAAA;IACH,CAAC;IAED,YAAY,OAAgB;QAC1B,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,gCAAgC,CAAA;IAC9C,CAAC;CACF;AAdD,wEAcC;AAED,MAAa,kBAAmB,SAAQ,KAAK;IAC3C,MAAM,CAAC,oBAAoB,CAAC,KAAY;QACtC,OAAO,CACL,KAAK,YAAY,kBAAkB;YACnC,KAAK,EAAE,IAAI,KAAK,oBAAoB,CACrC,CAAA;IACH,CAAC;IAED,YAAY,OAAgB;QAC1B,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAA;IAClC,CAAC;CACF;AAZD,gDAYC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export * from "./datastore/abstract-storage";
|
|
2
|
+
export * from "./distributed-transaction";
|
|
3
|
+
export * from "./errors";
|
|
4
|
+
export * from "./orchestrator-builder";
|
|
5
|
+
export * from "./transaction-orchestrator";
|
|
6
|
+
export * from "./transaction-step";
|
|
7
|
+
export * from "./types";
|
|
8
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/transaction/index.ts"],"names":[],"mappings":"AAAA,cAAc,8BAA8B,CAAA;AAC5C,cAAc,2BAA2B,CAAA;AACzC,cAAc,UAAU,CAAA;AACxB,cAAc,wBAAwB,CAAA;AACtC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,oBAAoB,CAAA;AAClC,cAAc,SAAS,CAAA"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./datastore/abstract-storage"), exports);
|
|
18
|
+
__exportStar(require("./distributed-transaction"), exports);
|
|
19
|
+
__exportStar(require("./errors"), exports);
|
|
20
|
+
__exportStar(require("./orchestrator-builder"), exports);
|
|
21
|
+
__exportStar(require("./transaction-orchestrator"), exports);
|
|
22
|
+
__exportStar(require("./transaction-step"), exports);
|
|
23
|
+
__exportStar(require("./types"), exports);
|
|
24
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/transaction/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+DAA4C;AAC5C,4DAAyC;AACzC,2CAAwB;AACxB,yDAAsC;AACtC,6DAA0C;AAC1C,qDAAkC;AAClC,0CAAuB"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { TransactionStepsDefinition } from "./types";
|
|
2
|
+
interface InternalStep extends TransactionStepsDefinition {
|
|
3
|
+
next?: InternalStep | InternalStep[];
|
|
4
|
+
depth: number;
|
|
5
|
+
parent?: InternalStep | null;
|
|
6
|
+
}
|
|
7
|
+
export declare class OrchestratorBuilder {
|
|
8
|
+
protected steps: InternalStep;
|
|
9
|
+
protected hasChanges_: boolean;
|
|
10
|
+
get hasChanges(): boolean;
|
|
11
|
+
constructor(steps?: TransactionStepsDefinition);
|
|
12
|
+
load(steps?: TransactionStepsDefinition): this;
|
|
13
|
+
addAction(action: string, options?: Partial<TransactionStepsDefinition>): this;
|
|
14
|
+
replaceAction(existingAction: string, action: string, options?: Partial<TransactionStepsDefinition>): this;
|
|
15
|
+
insertActionBefore(existingAction: string, action: string, options?: Partial<TransactionStepsDefinition>): this;
|
|
16
|
+
insertActionAfter(existingAction: string, action: string, options?: Partial<TransactionStepsDefinition>): this;
|
|
17
|
+
protected appendTo(step: InternalStep | string, newStep: InternalStep): this;
|
|
18
|
+
appendAction(action: string, to: string, options?: Partial<TransactionStepsDefinition>): this;
|
|
19
|
+
protected move(actionToMove: string, targetAction: string, { runInParallel, mergeNext, }?: {
|
|
20
|
+
runInParallel?: boolean;
|
|
21
|
+
mergeNext?: boolean;
|
|
22
|
+
}): OrchestratorBuilder;
|
|
23
|
+
moveAction(actionToMove: string, targetAction: string): OrchestratorBuilder;
|
|
24
|
+
moveAndMergeNextAction(actionToMove: string, targetAction: string): OrchestratorBuilder;
|
|
25
|
+
mergeActions(where: string, ...actions: string[]): this;
|
|
26
|
+
deleteAction(action: string, steps?: InternalStep): this;
|
|
27
|
+
pruneAction(action: string): this;
|
|
28
|
+
protected findStepByAction(action: string, step?: InternalStep): InternalStep | undefined;
|
|
29
|
+
protected findOrThrowStepByAction(action: string, steps?: InternalStep): InternalStep;
|
|
30
|
+
protected findParentStepByAction(action: string, step?: InternalStep): InternalStep | undefined;
|
|
31
|
+
protected findLastStep(steps?: InternalStep): InternalStep;
|
|
32
|
+
protected updateDepths(startingStep: InternalStep, parent: any, incr?: number, beginFrom?: number): void;
|
|
33
|
+
build(): TransactionStepsDefinition;
|
|
34
|
+
}
|
|
35
|
+
export {};
|
|
36
|
+
//# sourceMappingURL=orchestrator-builder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"orchestrator-builder.d.ts","sourceRoot":"","sources":["../../src/transaction/orchestrator-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,SAAS,CAAA;AAEpD,UAAU,YAAa,SAAQ,0BAA0B;IACvD,IAAI,CAAC,EAAE,YAAY,GAAG,YAAY,EAAE,CAAA;IACpC,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,YAAY,GAAG,IAAI,CAAA;CAC7B;AAED,qBAAa,mBAAmB;IAC9B,SAAS,CAAC,KAAK,EAAE,YAAY,CAAA;IAC7B,SAAS,CAAC,WAAW,UAAQ;IAE7B,IAAI,UAAU,YAEb;gBAEW,KAAK,CAAC,EAAE,0BAA0B;IAI9C,IAAI,CAAC,KAAK,CAAC,EAAE,0BAA0B;IAiBvC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,OAAO,CAAC,0BAA0B,CAAM;IAe3E,aAAa,CACX,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,MAAM,EACd,OAAO,GAAE,OAAO,CAAC,0BAA0B,CAAM;IAWnD,kBAAkB,CAChB,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,MAAM,EACd,OAAO,GAAE,OAAO,CAAC,0BAA0B,CAAM;IAkCnD,iBAAiB,CACf,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,MAAM,EACd,OAAO,GAAE,OAAO,CAAC,0BAA0B,CAAM;IAmBnD,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,EAAE,OAAO,EAAE,YAAY;IAerE,YAAY,CACV,MAAM,EAAE,MAAM,EACd,EAAE,EAAE,MAAM,EACV,OAAO,GAAE,OAAO,CAAC,0BAA0B,CAAM;IAanD,SAAS,CAAC,IAAI,CACZ,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,EACpB,EACE,aAAa,EACb,SAAS,GACV,GAAE;QACD,aAAa,CAAC,EAAE,OAAO,CAAA;QACvB,SAAS,CAAC,EAAE,OAAO,CAAA;KAIpB,GACA,mBAAmB;IAwEtB,UAAU,CAAC,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,mBAAmB;IAI3E,sBAAsB,CACpB,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,GACnB,mBAAmB;IAItB,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE;IAgBhD,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,GAAE,YAAyB;IA6B7D,WAAW,CAAC,MAAM,EAAE,MAAM;IAgB1B,SAAS,CAAC,gBAAgB,CACxB,MAAM,EAAE,MAAM,EACd,IAAI,GAAE,YAAyB,GAC9B,YAAY,GAAG,SAAS;IAmB3B,SAAS,CAAC,uBAAuB,CAC/B,MAAM,EAAE,MAAM,EACd,KAAK,GAAE,YAAyB,GAC/B,YAAY;IASf,SAAS,CAAC,sBAAsB,CAC9B,MAAM,EAAE,MAAM,EACd,IAAI,GAAE,YAAyB,GAC9B,YAAY,GAAG,SAAS;IAyB3B,SAAS,CAAC,YAAY,CAAC,KAAK,GAAE,YAAyB,GAAG,YAAY;IAWtE,SAAS,CAAC,YAAY,CACpB,YAAY,EAAE,YAAY,EAC1B,MAAM,KAAA,EACN,IAAI,SAAI,EACR,SAAS,CAAC,EAAE,MAAM,GACjB,IAAI;IAiBP,KAAK,IAAI,0BAA0B;CAuBpC"}
|
|
@@ -0,0 +1,300 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.OrchestratorBuilder = void 0;
|
|
4
|
+
class OrchestratorBuilder {
|
|
5
|
+
get hasChanges() {
|
|
6
|
+
return this.hasChanges_;
|
|
7
|
+
}
|
|
8
|
+
constructor(steps) {
|
|
9
|
+
this.hasChanges_ = false;
|
|
10
|
+
this.load(steps);
|
|
11
|
+
}
|
|
12
|
+
load(steps) {
|
|
13
|
+
this.steps = {
|
|
14
|
+
depth: -1,
|
|
15
|
+
parent: null,
|
|
16
|
+
next: Object.keys(steps ?? {}).length
|
|
17
|
+
? JSON.parse(JSON.stringify((steps.action ? steps : steps.next)))
|
|
18
|
+
: undefined,
|
|
19
|
+
};
|
|
20
|
+
this.updateDepths(this.steps, {}, 1, -1);
|
|
21
|
+
return this;
|
|
22
|
+
}
|
|
23
|
+
addAction(action, options = {}) {
|
|
24
|
+
const step = this.findLastStep();
|
|
25
|
+
const newAction = {
|
|
26
|
+
action,
|
|
27
|
+
depth: step.depth + 1,
|
|
28
|
+
parent: step.action,
|
|
29
|
+
...options,
|
|
30
|
+
};
|
|
31
|
+
step.next = newAction;
|
|
32
|
+
this.hasChanges_ = true;
|
|
33
|
+
return this;
|
|
34
|
+
}
|
|
35
|
+
replaceAction(existingAction, action, options = {}) {
|
|
36
|
+
const step = this.findOrThrowStepByAction(existingAction);
|
|
37
|
+
step.action = action;
|
|
38
|
+
Object.assign(step, options);
|
|
39
|
+
this.hasChanges_ = true;
|
|
40
|
+
return this;
|
|
41
|
+
}
|
|
42
|
+
insertActionBefore(existingAction, action, options = {}) {
|
|
43
|
+
const parentStep = this.findParentStepByAction(existingAction);
|
|
44
|
+
if (parentStep) {
|
|
45
|
+
const oldNext = parentStep.next;
|
|
46
|
+
const newDepth = parentStep.depth + 1;
|
|
47
|
+
if (Array.isArray(parentStep.next)) {
|
|
48
|
+
const index = parentStep.next.findIndex((step) => step.action === existingAction);
|
|
49
|
+
if (index > -1) {
|
|
50
|
+
parentStep.next[index] = {
|
|
51
|
+
action,
|
|
52
|
+
...options,
|
|
53
|
+
next: oldNext[index],
|
|
54
|
+
depth: newDepth,
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
else {
|
|
59
|
+
parentStep.next = {
|
|
60
|
+
action,
|
|
61
|
+
...options,
|
|
62
|
+
next: oldNext,
|
|
63
|
+
depth: newDepth,
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
this.updateDepths(oldNext, parentStep);
|
|
67
|
+
}
|
|
68
|
+
this.hasChanges_ = true;
|
|
69
|
+
return this;
|
|
70
|
+
}
|
|
71
|
+
insertActionAfter(existingAction, action, options = {}) {
|
|
72
|
+
const step = this.findOrThrowStepByAction(existingAction);
|
|
73
|
+
const oldNext = step.next;
|
|
74
|
+
const newDepth = step.depth + 1;
|
|
75
|
+
step.next = {
|
|
76
|
+
action,
|
|
77
|
+
...options,
|
|
78
|
+
next: oldNext,
|
|
79
|
+
depth: newDepth,
|
|
80
|
+
parent: step.action,
|
|
81
|
+
};
|
|
82
|
+
this.updateDepths(oldNext, step.next);
|
|
83
|
+
this.hasChanges_ = true;
|
|
84
|
+
return this;
|
|
85
|
+
}
|
|
86
|
+
appendTo(step, newStep) {
|
|
87
|
+
if (typeof step === "string") {
|
|
88
|
+
step = this.findOrThrowStepByAction(step);
|
|
89
|
+
}
|
|
90
|
+
step.next = {
|
|
91
|
+
...newStep,
|
|
92
|
+
depth: step.depth + 1,
|
|
93
|
+
parent: step.action,
|
|
94
|
+
};
|
|
95
|
+
this.hasChanges_ = true;
|
|
96
|
+
return this;
|
|
97
|
+
}
|
|
98
|
+
appendAction(action, to, options = {}) {
|
|
99
|
+
const newAction = {
|
|
100
|
+
action,
|
|
101
|
+
...options,
|
|
102
|
+
};
|
|
103
|
+
const branch = this.findLastStep(this.findStepByAction(to));
|
|
104
|
+
this.appendTo(branch, newAction);
|
|
105
|
+
return this;
|
|
106
|
+
}
|
|
107
|
+
move(actionToMove, targetAction, { runInParallel, mergeNext, } = {
|
|
108
|
+
runInParallel: false,
|
|
109
|
+
mergeNext: false,
|
|
110
|
+
}) {
|
|
111
|
+
const parentActionToMoveStep = this.findParentStepByAction(actionToMove);
|
|
112
|
+
const parentTargetActionStep = this.findParentStepByAction(targetAction);
|
|
113
|
+
const actionToMoveStep = this.findStepByAction(actionToMove, parentTargetActionStep);
|
|
114
|
+
if (!actionToMoveStep) {
|
|
115
|
+
throw new Error(`Action "${actionToMove}" could not be found in the following steps of "${targetAction}"`);
|
|
116
|
+
}
|
|
117
|
+
if (Array.isArray(parentActionToMoveStep.next)) {
|
|
118
|
+
const index = parentActionToMoveStep.next.findIndex((step) => step.action === actionToMove);
|
|
119
|
+
if (index > -1) {
|
|
120
|
+
parentActionToMoveStep.next.splice(index, 1);
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
else {
|
|
124
|
+
delete parentActionToMoveStep.next;
|
|
125
|
+
}
|
|
126
|
+
if (runInParallel) {
|
|
127
|
+
if (Array.isArray(parentTargetActionStep.next)) {
|
|
128
|
+
parentTargetActionStep.next.push(actionToMoveStep);
|
|
129
|
+
}
|
|
130
|
+
else if (parentTargetActionStep.next) {
|
|
131
|
+
parentTargetActionStep.next = [
|
|
132
|
+
parentTargetActionStep.next,
|
|
133
|
+
actionToMoveStep,
|
|
134
|
+
];
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
else {
|
|
138
|
+
if (actionToMoveStep.next) {
|
|
139
|
+
if (mergeNext) {
|
|
140
|
+
if (Array.isArray(actionToMoveStep.next)) {
|
|
141
|
+
actionToMoveStep.next.push(parentTargetActionStep.next);
|
|
142
|
+
}
|
|
143
|
+
else {
|
|
144
|
+
actionToMoveStep.next = [
|
|
145
|
+
actionToMoveStep.next,
|
|
146
|
+
parentTargetActionStep.next,
|
|
147
|
+
];
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
else {
|
|
151
|
+
this.appendTo(this.findLastStep(actionToMoveStep), parentTargetActionStep.next);
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
else {
|
|
155
|
+
actionToMoveStep.next = parentTargetActionStep.next;
|
|
156
|
+
}
|
|
157
|
+
parentTargetActionStep.next = actionToMoveStep;
|
|
158
|
+
}
|
|
159
|
+
this.updateDepths(actionToMoveStep, parentTargetActionStep, 1, parentTargetActionStep.depth);
|
|
160
|
+
this.hasChanges_ = true;
|
|
161
|
+
return this;
|
|
162
|
+
}
|
|
163
|
+
moveAction(actionToMove, targetAction) {
|
|
164
|
+
return this.move(actionToMove, targetAction);
|
|
165
|
+
}
|
|
166
|
+
moveAndMergeNextAction(actionToMove, targetAction) {
|
|
167
|
+
return this.move(actionToMove, targetAction, { mergeNext: true });
|
|
168
|
+
}
|
|
169
|
+
mergeActions(where, ...actions) {
|
|
170
|
+
actions.unshift(where);
|
|
171
|
+
if (actions.length < 2) {
|
|
172
|
+
throw new Error("Cannot merge less than two actions");
|
|
173
|
+
}
|
|
174
|
+
for (const action of actions) {
|
|
175
|
+
if (action !== where) {
|
|
176
|
+
this.move(action, where, { runInParallel: true });
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
return this;
|
|
180
|
+
}
|
|
181
|
+
deleteAction(action, steps = this.steps) {
|
|
182
|
+
const actionStep = this.findOrThrowStepByAction(action);
|
|
183
|
+
const parentStep = this.findParentStepByAction(action, steps);
|
|
184
|
+
if (Array.isArray(parentStep.next)) {
|
|
185
|
+
const index = parentStep.next.findIndex((step) => step.action === action);
|
|
186
|
+
if (index > -1 && actionStep.next) {
|
|
187
|
+
if (actionStep.next) {
|
|
188
|
+
parentStep.next[index] = actionStep.next;
|
|
189
|
+
}
|
|
190
|
+
else {
|
|
191
|
+
parentStep.next.splice(index, 1);
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
else {
|
|
196
|
+
parentStep.next = actionStep.next;
|
|
197
|
+
}
|
|
198
|
+
this.updateDepths(actionStep.next, parentStep, 1, parentStep.depth);
|
|
199
|
+
this.hasChanges_ = true;
|
|
200
|
+
return this;
|
|
201
|
+
}
|
|
202
|
+
pruneAction(action) {
|
|
203
|
+
const parentStep = this.findParentStepByAction(action, this.steps);
|
|
204
|
+
if (Array.isArray(parentStep.next)) {
|
|
205
|
+
const index = parentStep.next.findIndex((step) => step.action === action);
|
|
206
|
+
if (index > -1) {
|
|
207
|
+
parentStep.next.splice(index, 1);
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
else {
|
|
211
|
+
delete parentStep.next;
|
|
212
|
+
}
|
|
213
|
+
this.hasChanges_ = true;
|
|
214
|
+
return this;
|
|
215
|
+
}
|
|
216
|
+
findStepByAction(action, step = this.steps) {
|
|
217
|
+
if (step.uuid === action || step.action === action) {
|
|
218
|
+
return step;
|
|
219
|
+
}
|
|
220
|
+
if (Array.isArray(step.next)) {
|
|
221
|
+
for (const subStep of step.next) {
|
|
222
|
+
const found = this.findStepByAction(action, subStep);
|
|
223
|
+
if (found) {
|
|
224
|
+
return found;
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
else if (step.next && typeof step.next === "object") {
|
|
229
|
+
return this.findStepByAction(action, step.next);
|
|
230
|
+
}
|
|
231
|
+
return;
|
|
232
|
+
}
|
|
233
|
+
findOrThrowStepByAction(action, steps = this.steps) {
|
|
234
|
+
const step = this.findStepByAction(action, steps);
|
|
235
|
+
if (!step) {
|
|
236
|
+
throw new Error(`Action "${action}" could not be found`);
|
|
237
|
+
}
|
|
238
|
+
return step;
|
|
239
|
+
}
|
|
240
|
+
findParentStepByAction(action, step = this.steps) {
|
|
241
|
+
if (!step.next) {
|
|
242
|
+
return;
|
|
243
|
+
}
|
|
244
|
+
const nextSteps = Array.isArray(step.next) ? step.next : [step.next];
|
|
245
|
+
for (const nextStep of nextSteps) {
|
|
246
|
+
if (!nextStep) {
|
|
247
|
+
continue;
|
|
248
|
+
}
|
|
249
|
+
if (nextStep.uuid === action || nextStep.action === action) {
|
|
250
|
+
return step;
|
|
251
|
+
}
|
|
252
|
+
const foundStep = this.findParentStepByAction(action, nextStep);
|
|
253
|
+
if (foundStep) {
|
|
254
|
+
return foundStep;
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
return;
|
|
258
|
+
}
|
|
259
|
+
findLastStep(steps = this.steps) {
|
|
260
|
+
let step = steps;
|
|
261
|
+
while (step.next) {
|
|
262
|
+
step = Array.isArray(step.next)
|
|
263
|
+
? step.next[step.next.length - 1]
|
|
264
|
+
: step.next;
|
|
265
|
+
}
|
|
266
|
+
return step;
|
|
267
|
+
}
|
|
268
|
+
updateDepths(startingStep, parent, incr = 1, beginFrom) {
|
|
269
|
+
if (!startingStep) {
|
|
270
|
+
return;
|
|
271
|
+
}
|
|
272
|
+
const update = (step, parent, beginFrom) => {
|
|
273
|
+
step.depth = beginFrom + incr;
|
|
274
|
+
step.parent = parent.action;
|
|
275
|
+
if (Array.isArray(step.next)) {
|
|
276
|
+
step.next.forEach((nextAction) => update(nextAction, step, step.depth));
|
|
277
|
+
}
|
|
278
|
+
else if (step.next) {
|
|
279
|
+
update(step.next, step, step.depth);
|
|
280
|
+
}
|
|
281
|
+
};
|
|
282
|
+
update(startingStep, parent, beginFrom ?? startingStep.depth);
|
|
283
|
+
}
|
|
284
|
+
build() {
|
|
285
|
+
if (!this.steps.next) {
|
|
286
|
+
return {};
|
|
287
|
+
}
|
|
288
|
+
const ignore = ["depth", "parent"];
|
|
289
|
+
const result = JSON.parse(JSON.stringify(Array.isArray(this.steps.next) ? this.steps : this.steps.next, null), (key, value) => {
|
|
290
|
+
if (ignore.includes(key)) {
|
|
291
|
+
return;
|
|
292
|
+
}
|
|
293
|
+
return value;
|
|
294
|
+
});
|
|
295
|
+
this.hasChanges_ = false;
|
|
296
|
+
return result;
|
|
297
|
+
}
|
|
298
|
+
}
|
|
299
|
+
exports.OrchestratorBuilder = OrchestratorBuilder;
|
|
300
|
+
//# sourceMappingURL=orchestrator-builder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"orchestrator-builder.js","sourceRoot":"","sources":["../../src/transaction/orchestrator-builder.ts"],"names":[],"mappings":"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"}
|