@t4h.framework/core 0.0.0-experimental-c0d4325
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/LICENSE +21 -0
- package/README.md +336 -0
- package/dist/activities/StartWorkflowActivity.d.ts +21 -0
- package/dist/activities/StartWorkflowActivity.d.ts.map +1 -0
- package/dist/activities/StartWorkflowActivity.js +24 -0
- package/dist/activities/StartWorkflowActivity.js.map +1 -0
- package/dist/core.d.ts +23 -0
- package/dist/core.d.ts.map +1 -0
- package/dist/core.js +23 -0
- package/dist/core.js.map +1 -0
- package/dist/exceptions/ActivityException.d.ts +7 -0
- package/dist/exceptions/ActivityException.d.ts.map +1 -0
- package/dist/exceptions/ActivityException.js +6 -0
- package/dist/exceptions/ActivityException.js.map +1 -0
- package/dist/exceptions/ClaimException.d.ts +20 -0
- package/dist/exceptions/ClaimException.d.ts.map +1 -0
- package/dist/exceptions/ClaimException.js +34 -0
- package/dist/exceptions/ClaimException.js.map +1 -0
- package/dist/models/Activity.d.ts +13 -0
- package/dist/models/Activity.d.ts.map +1 -0
- package/dist/models/Activity.js +2 -0
- package/dist/models/Activity.js.map +1 -0
- package/dist/models/ActivityClaim.d.ts +15 -0
- package/dist/models/ActivityClaim.d.ts.map +1 -0
- package/dist/models/ActivityClaim.js +33 -0
- package/dist/models/ActivityClaim.js.map +1 -0
- package/dist/models/ActivityHistory.d.ts +15 -0
- package/dist/models/ActivityHistory.d.ts.map +1 -0
- package/dist/models/ActivityHistory.js +36 -0
- package/dist/models/ActivityHistory.js.map +1 -0
- package/dist/models/ActivityHistoryReconciler.d.ts +14 -0
- package/dist/models/ActivityHistoryReconciler.d.ts.map +1 -0
- package/dist/models/ActivityHistoryReconciler.js +32 -0
- package/dist/models/ActivityHistoryReconciler.js.map +1 -0
- package/dist/models/App.d.ts +27 -0
- package/dist/models/App.d.ts.map +1 -0
- package/dist/models/App.js +35 -0
- package/dist/models/App.js.map +1 -0
- package/dist/models/AsyncActivity.d.ts +17 -0
- package/dist/models/AsyncActivity.d.ts.map +1 -0
- package/dist/models/AsyncActivity.js +17 -0
- package/dist/models/AsyncActivity.js.map +1 -0
- package/dist/models/AsyncActivityAdvanceQuery.d.ts +12 -0
- package/dist/models/AsyncActivityAdvanceQuery.d.ts.map +1 -0
- package/dist/models/AsyncActivityAdvanceQuery.js +15 -0
- package/dist/models/AsyncActivityAdvanceQuery.js.map +1 -0
- package/dist/models/AsyncActivityAdvanceResult.d.ts +23 -0
- package/dist/models/AsyncActivityAdvanceResult.d.ts.map +1 -0
- package/dist/models/AsyncActivityAdvanceResult.js +23 -0
- package/dist/models/AsyncActivityAdvanceResult.js.map +1 -0
- package/dist/models/AsyncActivityAwaitable.d.ts +11 -0
- package/dist/models/AsyncActivityAwaitable.d.ts.map +1 -0
- package/dist/models/AsyncActivityAwaitable.js +18 -0
- package/dist/models/AsyncActivityAwaitable.js.map +1 -0
- package/dist/models/Binary.d.ts +7 -0
- package/dist/models/Binary.d.ts.map +1 -0
- package/dist/models/Binary.js +4 -0
- package/dist/models/Binary.js.map +1 -0
- package/dist/models/Claim.d.ts +21 -0
- package/dist/models/Claim.d.ts.map +1 -0
- package/dist/models/Claim.js +37 -0
- package/dist/models/Claim.js.map +1 -0
- package/dist/models/Env.d.ts +12 -0
- package/dist/models/Env.d.ts.map +1 -0
- package/dist/models/Env.js +28 -0
- package/dist/models/Env.js.map +1 -0
- package/dist/models/EnvDesign.d.ts +16 -0
- package/dist/models/EnvDesign.d.ts.map +1 -0
- package/dist/models/EnvDesign.js +48 -0
- package/dist/models/EnvDesign.js.map +1 -0
- package/dist/models/History.d.ts +16 -0
- package/dist/models/History.d.ts.map +1 -0
- package/dist/models/History.js +34 -0
- package/dist/models/History.js.map +1 -0
- package/dist/models/Page.d.ts +13 -0
- package/dist/models/Page.d.ts.map +1 -0
- package/dist/models/Page.js +18 -0
- package/dist/models/Page.js.map +1 -0
- package/dist/models/PushActivity.d.ts +7 -0
- package/dist/models/PushActivity.d.ts.map +1 -0
- package/dist/models/PushActivity.js +9 -0
- package/dist/models/PushActivity.js.map +1 -0
- package/dist/models/PushWaitAsyncActivity.d.ts +6 -0
- package/dist/models/PushWaitAsyncActivity.d.ts.map +1 -0
- package/dist/models/PushWaitAsyncActivity.js +7 -0
- package/dist/models/PushWaitAsyncActivity.js.map +1 -0
- package/dist/models/SerializableHelper.d.ts +10 -0
- package/dist/models/SerializableHelper.d.ts.map +1 -0
- package/dist/models/SerializableHelper.js +8 -0
- package/dist/models/SerializableHelper.js.map +1 -0
- package/dist/models/SyncActivity.d.ts +7 -0
- package/dist/models/SyncActivity.d.ts.map +1 -0
- package/dist/models/SyncActivity.js +3 -0
- package/dist/models/SyncActivity.js.map +1 -0
- package/dist/models/Variable.d.ts +23 -0
- package/dist/models/Variable.d.ts.map +1 -0
- package/dist/models/Variable.js +47 -0
- package/dist/models/Variable.js.map +1 -0
- package/dist/models/Workflow.d.ts +24 -0
- package/dist/models/Workflow.d.ts.map +1 -0
- package/dist/models/Workflow.js +35 -0
- package/dist/models/Workflow.js.map +1 -0
- package/dist/models/WorkflowRef.d.ts +6 -0
- package/dist/models/WorkflowRef.d.ts.map +1 -0
- package/dist/models/WorkflowRef.js +7 -0
- package/dist/models/WorkflowRef.js.map +1 -0
- package/dist/models/env.d.ts +11 -0
- package/dist/models/env.d.ts.map +1 -0
- package/dist/models/env.js +25 -0
- package/dist/models/env.js.map +1 -0
- package/dist/tools/Internals.d.ts +20 -0
- package/dist/tools/Internals.d.ts.map +1 -0
- package/dist/tools/Internals.js +18 -0
- package/dist/tools/Internals.js.map +1 -0
- package/dist/tools/activity.d.ts +15 -0
- package/dist/tools/activity.d.ts.map +1 -0
- package/dist/tools/activity.js +21 -0
- package/dist/tools/activity.js.map +1 -0
- package/dist/tools/inMemoryEnvDesignToManifest.d.ts +3 -0
- package/dist/tools/inMemoryEnvDesignToManifest.d.ts.map +1 -0
- package/dist/tools/inMemoryEnvDesignToManifest.js +27 -0
- package/dist/tools/inMemoryEnvDesignToManifest.js.map +1 -0
- package/dist/tools/isActivity.d.ts +4 -0
- package/dist/tools/isActivity.d.ts.map +1 -0
- package/dist/tools/isActivity.js +13 -0
- package/dist/tools/isActivity.js.map +1 -0
- package/dist/typings/AppManifest.d.ts +17 -0
- package/dist/typings/AppManifest.d.ts.map +1 -0
- package/dist/typings/AppManifest.js +2 -0
- package/dist/typings/AppManifest.js.map +1 -0
- package/dist/typings/PromiseLikeType.d.ts +2 -0
- package/dist/typings/PromiseLikeType.d.ts.map +1 -0
- package/dist/typings/PromiseLikeType.js +2 -0
- package/dist/typings/PromiseLikeType.js.map +1 -0
- package/dist/typings/Serializable.d.ts +7 -0
- package/dist/typings/Serializable.d.ts.map +1 -0
- package/dist/typings/Serializable.js +2 -0
- package/dist/typings/Serializable.js.map +1 -0
- package/package.json +48 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ActivityHistory.d.ts","sourceRoot":"","sources":["../../src/models/ActivityHistory.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAE7C,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,GAAG,CAAA;CACZ;AAED,qBAAa,YAAY,CAAC,CAAC,SAAS,QAAQ;aAExB,QAAQ,EAAE,CAAC;aACX,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;gBADxB,QAAQ,EAAE,CAAC,EACX,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;CAE3C;AAED,yBAAiB,eAAe,CAAC;IAG/B,SAAgB,IAAI,CAAC,CAAC,SAAS,QAAQ,EAAE,QAAQ,EAAE,UAAU,CAAC,IACpD,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,iCAClC;IAED,SAAsB,UAAU,CAAC,CAAC,SAAS,QAAQ,EACjD,QAAQ,EAAE,UAAU,CAAC,EACrB,GAAG,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,+BAkB1B;IAED,SAAgB,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,SAAS,gBAAgB,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,KAEvE;CACF"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { AsyncLocalStorage } from 'node:async_hooks';
|
|
2
|
+
export class PushActivity {
|
|
3
|
+
activity;
|
|
4
|
+
input;
|
|
5
|
+
constructor(activity, input) {
|
|
6
|
+
this.activity = activity;
|
|
7
|
+
this.input = input;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
export var ActivityHistory;
|
|
11
|
+
(function (ActivityHistory) {
|
|
12
|
+
const activityHistoryStorage = new AsyncLocalStorage();
|
|
13
|
+
function bind(Activity) {
|
|
14
|
+
return (...args) => reconciler(Activity, ...args);
|
|
15
|
+
}
|
|
16
|
+
ActivityHistory.bind = bind;
|
|
17
|
+
async function reconciler(Activity, ...args) {
|
|
18
|
+
const history = activityHistoryStorage.getStore();
|
|
19
|
+
if (!history)
|
|
20
|
+
throw new Error('No activities in storage');
|
|
21
|
+
const value = history.shift();
|
|
22
|
+
const activity = new Activity();
|
|
23
|
+
if (!value) {
|
|
24
|
+
const input = await activity.toInput(...args);
|
|
25
|
+
throw new PushActivity(activity, input);
|
|
26
|
+
}
|
|
27
|
+
const output = value.output;
|
|
28
|
+
return activity.toOutput(output, ...args);
|
|
29
|
+
}
|
|
30
|
+
ActivityHistory.reconciler = reconciler;
|
|
31
|
+
function run(history, fn) {
|
|
32
|
+
return activityHistoryStorage.run(history.slice(), () => fn());
|
|
33
|
+
}
|
|
34
|
+
ActivityHistory.run = run;
|
|
35
|
+
})(ActivityHistory || (ActivityHistory = {}));
|
|
36
|
+
//# sourceMappingURL=ActivityHistory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ActivityHistory.js","sourceRoot":"","sources":["../../src/models/ActivityHistory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAQpD,MAAM,OAAO,YAAY;IAEL;IACA;IAFlB,YACkB,QAAW,EACX,KAAwB;QADxB,aAAQ,GAAR,QAAQ,CAAG;QACX,UAAK,GAAL,KAAK,CAAmB;IACvC,CAAC;CACL;AAED,MAAM,KAAW,eAAe,CAgC/B;AAhCD,WAAiB,eAAe;IAC9B,MAAM,sBAAsB,GAAG,IAAI,iBAAiB,EAAsB,CAAA;IAE1E,SAAgB,IAAI,CAAqB,QAAqB;QAC5D,OAAO,CAAC,GAAG,IAAsB,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,CAAA;IACrE,CAAC;IAFe,oBAAI,OAEnB,CAAA;IAEM,KAAK,UAAU,UAAU,CAC9B,QAAqB,EACrB,GAAG,IAAsB;QAEzB,MAAM,OAAO,GAAG,sBAAsB,CAAC,QAAQ,EAAE,CAAA;QAEjD,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAA;QAEzD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,EAAE,CAAA;QAC7B,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAA;QAE/B,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,CAAA;YAE7C,MAAM,IAAI,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;QACzC,CAAC;QAED,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAA;QAE3B,OAAO,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,GAAG,IAAI,CAAuB,CAAA;IACjE,CAAC;IApBqB,0BAAU,aAoB/B,CAAA;IAED,SAAgB,GAAG,CAAI,OAAoC,EAAE,EAAW;QACtE,OAAO,sBAAsB,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CAAA;IAChE,CAAC;IAFe,mBAAG,MAElB,CAAA;AACH,CAAC,EAhCgB,eAAe,KAAf,eAAe,QAgC/B"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { Activity } from './Activity.js';
|
|
2
|
+
export interface IActivityHistory {
|
|
3
|
+
output: any;
|
|
4
|
+
}
|
|
5
|
+
export declare class ActivityExecutionRequest<T extends Activity> {
|
|
6
|
+
readonly activity: T;
|
|
7
|
+
readonly input: Activity.ToInputReturn<T>;
|
|
8
|
+
constructor(activity: T, input: Activity.ToInputReturn<T>);
|
|
9
|
+
}
|
|
10
|
+
export declare namespace ActivityHistoryReconciler {
|
|
11
|
+
function reconciler<T extends Activity>(Activity: Activity.Constructor<T>, ...args: Activity.Args<T>): any;
|
|
12
|
+
function run<T>(history: IActivityHistory[], fn: () => T): T;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=ActivityHistoryReconciler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ActivityHistoryReconciler.d.ts","sourceRoot":"","sources":["../../src/models/ActivityHistoryReconciler.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAE7C,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,GAAG,CAAA;CACZ;AAED,qBAAa,wBAAwB,CAAC,CAAC,SAAS,QAAQ;aAEpC,QAAQ,EAAE,CAAC;aACX,KAAK,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC;gBADhC,QAAQ,EAAE,CAAC,EACX,KAAK,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC;CAEnD;AAED,yBAAiB,yBAAyB,CAAC;IAGzC,SAAgB,UAAU,CAAC,CAAC,SAAS,QAAQ,EAC3C,QAAQ,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,EACjC,GAAG,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,OAoB1B;IAED,SAAgB,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,KAE9D;CACF"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { AsyncLocalStorage } from 'node:async_hooks';
|
|
2
|
+
export class ActivityExecutionRequest {
|
|
3
|
+
activity;
|
|
4
|
+
input;
|
|
5
|
+
constructor(activity, input) {
|
|
6
|
+
this.activity = activity;
|
|
7
|
+
this.input = input;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
export var ActivityHistoryReconciler;
|
|
11
|
+
(function (ActivityHistoryReconciler) {
|
|
12
|
+
const activityHistoryStorage = new AsyncLocalStorage();
|
|
13
|
+
function reconciler(Activity, ...args) {
|
|
14
|
+
const history = activityHistoryStorage.getStore();
|
|
15
|
+
if (!history)
|
|
16
|
+
throw new Error('No activities in storage');
|
|
17
|
+
const value = history.shift();
|
|
18
|
+
if (!value)
|
|
19
|
+
return Activity.run(async (activity) => {
|
|
20
|
+
const input = (await activity.toInput(...args));
|
|
21
|
+
throw new ActivityExecutionRequest(activity, input);
|
|
22
|
+
});
|
|
23
|
+
const output = value.output;
|
|
24
|
+
return Activity.run(activity => activity.toOutput(output, ...args));
|
|
25
|
+
}
|
|
26
|
+
ActivityHistoryReconciler.reconciler = reconciler;
|
|
27
|
+
function run(history, fn) {
|
|
28
|
+
return activityHistoryStorage.run(history, () => fn());
|
|
29
|
+
}
|
|
30
|
+
ActivityHistoryReconciler.run = run;
|
|
31
|
+
})(ActivityHistoryReconciler || (ActivityHistoryReconciler = {}));
|
|
32
|
+
//# sourceMappingURL=ActivityHistoryReconciler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ActivityHistoryReconciler.js","sourceRoot":"","sources":["../../src/models/ActivityHistoryReconciler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAQpD,MAAM,OAAO,wBAAwB;IAEjB;IACA;IAFlB,YACkB,QAAW,EACX,KAAgC;QADhC,aAAQ,GAAR,QAAQ,CAAG;QACX,UAAK,GAAL,KAAK,CAA2B;IAC/C,CAAC;CACL;AAED,MAAM,KAAW,yBAAyB,CA8BzC;AA9BD,WAAiB,yBAAyB;IACxC,MAAM,sBAAsB,GAAG,IAAI,iBAAiB,EAAsB,CAAA;IAE1E,SAAgB,UAAU,CACxB,QAAiC,EACjC,GAAG,IAAsB;QAEzB,MAAM,OAAO,GAAG,sBAAsB,CAAC,QAAQ,EAAE,CAAA;QAEjD,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAA;QAEzD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,EAAE,CAAA;QAE7B,IAAI,CAAC,KAAK;YACR,OAAO,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAC,QAAQ,EAAC,EAAE;gBACnC,MAAM,KAAK,GAAG,CAAC,MAAM,QAAQ,CAAC,OAAO,CACnC,GAAG,IAAI,CACR,CAA8B,CAAA;gBAE/B,MAAM,IAAI,wBAAwB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;YACrD,CAAC,CAAC,CAAA;QAEJ,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAA;QAE3B,OAAO,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,CAAA;IACrE,CAAC;IAtBe,oCAAU,aAsBzB,CAAA;IAED,SAAgB,GAAG,CAAI,OAA2B,EAAE,EAAW;QAC7D,OAAO,sBAAsB,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CAAA;IACxD,CAAC;IAFe,6BAAG,MAElB,CAAA;AACH,CAAC,EA9BgB,yBAAyB,KAAzB,yBAAyB,QA8BzC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { Workflow } from './Workflow.js';
|
|
2
|
+
export interface AppOptions {
|
|
3
|
+
id: string;
|
|
4
|
+
slug?: string;
|
|
5
|
+
description?: string;
|
|
6
|
+
workflows?: readonly Workflow<any, any>[];
|
|
7
|
+
}
|
|
8
|
+
export declare class App {
|
|
9
|
+
readonly id: string;
|
|
10
|
+
readonly slug?: string;
|
|
11
|
+
readonly description?: string;
|
|
12
|
+
readonly workflows: Workflow<any, any>[];
|
|
13
|
+
constructor(options: AppOptions);
|
|
14
|
+
addWorkflow(workflow: Workflow<any, any>): this;
|
|
15
|
+
toManifest(): {
|
|
16
|
+
id: string;
|
|
17
|
+
description: string | null;
|
|
18
|
+
slug: string | null;
|
|
19
|
+
workflows: {
|
|
20
|
+
id: string | null;
|
|
21
|
+
description: string | null;
|
|
22
|
+
schema: import("typebox").TSchema | null;
|
|
23
|
+
}[];
|
|
24
|
+
env: import("typebox").TObject<Record<string, import("typebox").TSchema>>;
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=App.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../../src/models/App.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAG7C,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,SAAS,CAAC,EAAE,SAAS,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAA;CAC1C;AAED,qBAAa,GAAG;IACd,SAAgB,EAAE,EAAE,MAAM,CAAA;IAC1B,SAAgB,IAAI,CAAC,EAAE,MAAM,CAAA;IAC7B,SAAgB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpC,SAAgB,SAAS,EAAE,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAK;gBAExC,OAAO,EAAE,UAAU;IAQxB,WAAW,CAAC,QAAQ,EAAE,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC;IAiBxC,UAAU;;;;;;;;;;;CASlB"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { inMemoryEnvDesignToManifest } from '../tools/inMemoryEnvDesignToManifest.js';
|
|
2
|
+
export class App {
|
|
3
|
+
id;
|
|
4
|
+
slug;
|
|
5
|
+
description;
|
|
6
|
+
workflows = [];
|
|
7
|
+
constructor(options) {
|
|
8
|
+
this.id = options.id;
|
|
9
|
+
this.slug = options.slug;
|
|
10
|
+
this.description = options.description;
|
|
11
|
+
options.workflows?.forEach(workflow => this.addWorkflow(workflow));
|
|
12
|
+
}
|
|
13
|
+
addWorkflow(workflow) {
|
|
14
|
+
if (typeof workflow.id === 'undefined') {
|
|
15
|
+
this.workflows.push(workflow);
|
|
16
|
+
return this;
|
|
17
|
+
}
|
|
18
|
+
for (const testWorkflow of this.workflows) {
|
|
19
|
+
if (testWorkflow.id === workflow.id)
|
|
20
|
+
throw new Error(`Workflow with ${workflow.id} id already exists`);
|
|
21
|
+
}
|
|
22
|
+
this.workflows.push(workflow);
|
|
23
|
+
return this;
|
|
24
|
+
}
|
|
25
|
+
toManifest() {
|
|
26
|
+
return {
|
|
27
|
+
id: this.id,
|
|
28
|
+
description: this.description ?? null,
|
|
29
|
+
slug: this.slug ?? null,
|
|
30
|
+
workflows: this.workflows.map(workflow => workflow.toManifest()),
|
|
31
|
+
env: inMemoryEnvDesignToManifest(),
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=App.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"App.js","sourceRoot":"","sources":["../../src/models/App.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,2BAA2B,EAAE,MAAM,yCAAyC,CAAA;AASrF,MAAM,OAAO,GAAG;IACE,EAAE,CAAQ;IACV,IAAI,CAAS;IACb,WAAW,CAAS;IACpB,SAAS,GAAyB,EAAE,CAAA;IAEpD,YAAY,OAAmB;QAC7B,IAAI,CAAC,EAAE,GAAG,OAAO,CAAC,EAAE,CAAA;QACpB,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;QACxB,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAA;QAEtC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAA;IACpE,CAAC;IAEM,WAAW,CAAC,QAA4B;QAC7C,IAAI,OAAO,QAAQ,CAAC,EAAE,KAAK,WAAW,EAAE,CAAC;YACvC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YAE7B,OAAO,IAAI,CAAA;QACb,CAAC;QAED,KAAK,MAAM,YAAY,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YAC1C,IAAI,YAAY,CAAC,EAAE,KAAK,QAAQ,CAAC,EAAE;gBACjC,MAAM,IAAI,KAAK,CAAC,iBAAiB,QAAQ,CAAC,EAAE,oBAAoB,CAAC,CAAA;QACrE,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAE7B,OAAO,IAAI,CAAA;IACb,CAAC;IAEM,UAAU;QACf,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,IAAI;YACrC,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI;YACvB,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;YAChE,GAAG,EAAE,2BAA2B,EAAE;SACnC,CAAA;IACH,CAAC;CACF"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type Type from 'typebox';
|
|
2
|
+
import { AsyncActivityResultFulfilled, AsyncActivityResultPending, AsyncActivityResultRejected, type AsyncActivityResult, type AsyncActivityResultPendingOptions } from './AsyncActivityAdvanceResult.js';
|
|
3
|
+
import { AsyncActivityAwaitable } from './AsyncActivityAwaitable.js';
|
|
4
|
+
import type { IHistoryItemAsync } from './History.js';
|
|
5
|
+
import type { Serializable } from '../typings/Serializable.js';
|
|
6
|
+
export type AnyAsyncActivity = AsyncActivity<readonly any[], any, any, any, any, any>;
|
|
7
|
+
export declare abstract class AsyncActivity<TArgs extends readonly any[], TInput extends Serializable, TSerializableOutput extends Serializable | void, TOutput, TBootstrap extends Serializable, TSchema extends Type.TSchema> {
|
|
8
|
+
abstract toInput(...args: TArgs): TInput | Promise<TInput>;
|
|
9
|
+
abstract bootstrap(input: TInput): AsyncActivityResult<TBootstrap, TSchema, TSerializableOutput> | Promise<AsyncActivityResult<TBootstrap, TSchema, TSerializableOutput>>;
|
|
10
|
+
abstract advance(payload: Type.Static<TSchema>, bootstrap: AsyncActivityResultPending): AsyncActivityResult<Serializable, TSchema, TSerializableOutput> | Promise<AsyncActivityResult<Serializable, TSchema, TSerializableOutput>>;
|
|
11
|
+
abstract toOutput(output: TSerializableOutput, ...args: TArgs): TOutput;
|
|
12
|
+
protected pending(options?: AsyncActivityResultPendingOptions<TBootstrap, TSchema>): AsyncActivityResultPending<TBootstrap, TSchema>;
|
|
13
|
+
protected done(output?: TSerializableOutput): AsyncActivityResultFulfilled<TSerializableOutput | undefined>;
|
|
14
|
+
protected rejected(output?: Serializable | void): AsyncActivityResultRejected<void | Serializable>;
|
|
15
|
+
toAwaitable(item: IHistoryItemAsync, args: readonly any[]): AsyncActivityAwaitable<this>;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=AsyncActivity.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AsyncActivity.d.ts","sourceRoot":"","sources":["../../src/models/AsyncActivity.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,SAAS,CAAA;AAE/B,OAAO,EACL,4BAA4B,EAC5B,0BAA0B,EAC1B,2BAA2B,EAC3B,KAAK,mBAAmB,EACxB,KAAK,iCAAiC,EACvC,MAAM,iCAAiC,CAAA;AACxC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AACpE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AACrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAE9D,MAAM,MAAM,gBAAgB,GAAG,aAAa,CAC1C,SAAS,GAAG,EAAE,EACd,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,CACJ,CAAA;AAED,8BAAsB,aAAa,CACjC,KAAK,SAAS,SAAS,GAAG,EAAE,EAC5B,MAAM,SAAS,YAAY,EAC3B,mBAAmB,SAAS,YAAY,GAAG,IAAI,EAC/C,OAAO,EACP,UAAU,SAAS,YAAY,EAC/B,OAAO,SAAS,IAAI,CAAC,OAAO;aAEZ,OAAO,CAAC,GAAG,IAAI,EAAE,KAAK,GAAG,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;aAEjD,SAAS,CACvB,KAAK,EAAE,MAAM,GAEX,mBAAmB,CAAC,UAAU,EAAE,OAAO,EAAE,mBAAmB,CAAC,GAC7D,OAAO,CAAC,mBAAmB,CAAC,UAAU,EAAE,OAAO,EAAE,mBAAmB,CAAC,CAAC;aAE1D,OAAO,CACrB,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAC7B,SAAS,EAAE,0BAA0B,GAEnC,mBAAmB,CAAC,YAAY,EAAE,OAAO,EAAE,mBAAmB,CAAC,GAC/D,OAAO,CAAC,mBAAmB,CAAC,YAAY,EAAE,OAAO,EAAE,mBAAmB,CAAC,CAAC;aAE5D,QAAQ,CAAC,MAAM,EAAE,mBAAmB,EAAE,GAAG,IAAI,EAAE,KAAK,GAAG,OAAO;IAE9E,SAAS,CAAC,OAAO,CACf,OAAO,CAAC,EAAE,iCAAiC,CAAC,UAAU,EAAE,OAAO,CAAC;IAKlE,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,mBAAmB;IAI3C,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,YAAY,GAAG,IAAI;IAIxC,WAAW,CAAC,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,GAAG,EAAE;CAGjE"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { AsyncActivityResultFulfilled, AsyncActivityResultPending, AsyncActivityResultRejected, } from './AsyncActivityAdvanceResult.js';
|
|
2
|
+
import { AsyncActivityAwaitable } from './AsyncActivityAwaitable.js';
|
|
3
|
+
export class AsyncActivity {
|
|
4
|
+
pending(options) {
|
|
5
|
+
return new AsyncActivityResultPending(options);
|
|
6
|
+
}
|
|
7
|
+
done(output) {
|
|
8
|
+
return new AsyncActivityResultFulfilled(output);
|
|
9
|
+
}
|
|
10
|
+
rejected(output) {
|
|
11
|
+
return new AsyncActivityResultRejected(output);
|
|
12
|
+
}
|
|
13
|
+
toAwaitable(item, args) {
|
|
14
|
+
return new AsyncActivityAwaitable(this, item, args);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=AsyncActivity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AsyncActivity.js","sourceRoot":"","sources":["../../src/models/AsyncActivity.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,4BAA4B,EAC5B,0BAA0B,EAC1B,2BAA2B,GAG5B,MAAM,iCAAiC,CAAA;AACxC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AAapE,MAAM,OAAgB,aAAa;IAyBvB,OAAO,CACf,OAAgE;QAEhE,OAAO,IAAI,0BAA0B,CAAC,OAAO,CAAC,CAAA;IAChD,CAAC;IAES,IAAI,CAAC,MAA4B;QACzC,OAAO,IAAI,4BAA4B,CAAC,MAAM,CAAC,CAAA;IACjD,CAAC;IAES,QAAQ,CAAC,MAA4B;QAC7C,OAAO,IAAI,2BAA2B,CAAC,MAAM,CAAC,CAAA;IAChD,CAAC;IAEM,WAAW,CAAC,IAAuB,EAAE,IAAoB;QAC9D,OAAO,IAAI,sBAAsB,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;IACrD,CAAC;CACF"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { Serializable } from '../typings/Serializable.js';
|
|
2
|
+
export declare enum AsyncActivityAdvanceQueryStatus {
|
|
3
|
+
Pending = "pending",
|
|
4
|
+
Fullfilled = "fullfilled",
|
|
5
|
+
Rejected = "rejected"
|
|
6
|
+
}
|
|
7
|
+
export declare class AsyncActivityAdvanceQuery {
|
|
8
|
+
readonly status: AsyncActivityAdvanceQueryStatus;
|
|
9
|
+
readonly output: Serializable;
|
|
10
|
+
constructor(status: AsyncActivityAdvanceQueryStatus, output: Serializable);
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=AsyncActivityAdvanceQuery.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AsyncActivityAdvanceQuery.d.ts","sourceRoot":"","sources":["../../src/models/AsyncActivityAdvanceQuery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAE9D,oBAAY,+BAA+B;IACzC,OAAO,YAAY;IACnB,UAAU,eAAe;IACzB,QAAQ,aAAa;CACtB;AAED,qBAAa,yBAAyB;aAElB,MAAM,EAAE,+BAA+B;aACvC,MAAM,EAAE,YAAY;gBADpB,MAAM,EAAE,+BAA+B,EACvC,MAAM,EAAE,YAAY;CAEvC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export var AsyncActivityAdvanceQueryStatus;
|
|
2
|
+
(function (AsyncActivityAdvanceQueryStatus) {
|
|
3
|
+
AsyncActivityAdvanceQueryStatus["Pending"] = "pending";
|
|
4
|
+
AsyncActivityAdvanceQueryStatus["Fullfilled"] = "fullfilled";
|
|
5
|
+
AsyncActivityAdvanceQueryStatus["Rejected"] = "rejected";
|
|
6
|
+
})(AsyncActivityAdvanceQueryStatus || (AsyncActivityAdvanceQueryStatus = {}));
|
|
7
|
+
export class AsyncActivityAdvanceQuery {
|
|
8
|
+
status;
|
|
9
|
+
output;
|
|
10
|
+
constructor(status, output) {
|
|
11
|
+
this.status = status;
|
|
12
|
+
this.output = output;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=AsyncActivityAdvanceQuery.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AsyncActivityAdvanceQuery.js","sourceRoot":"","sources":["../../src/models/AsyncActivityAdvanceQuery.ts"],"names":[],"mappings":"AAEA,MAAM,CAAN,IAAY,+BAIX;AAJD,WAAY,+BAA+B;IACzC,sDAAmB,CAAA;IACnB,4DAAyB,CAAA;IACzB,wDAAqB,CAAA;AACvB,CAAC,EAJW,+BAA+B,KAA/B,+BAA+B,QAI1C;AAED,MAAM,OAAO,yBAAyB;IAElB;IACA;IAFlB,YACkB,MAAuC,EACvC,MAAoB;QADpB,WAAM,GAAN,MAAM,CAAiC;QACvC,WAAM,GAAN,MAAM,CAAc;IACnC,CAAC;CACL"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type Type from 'typebox';
|
|
2
|
+
import type { Serializable } from '../typings/Serializable.js';
|
|
3
|
+
export interface AsyncActivityResultPendingOptions<TOutput extends Serializable = Serializable, TSchema extends Type.TSchema = Type.TSchema> {
|
|
4
|
+
output?: TOutput;
|
|
5
|
+
schema?: TSchema;
|
|
6
|
+
timeoutAt?: Date | undefined;
|
|
7
|
+
}
|
|
8
|
+
export type AsyncActivityResult<P extends Serializable, S extends Type.TSchema, O extends Serializable | void> = AsyncActivityResultPending<P, S> | AsyncActivityResultFulfilled<O> | AsyncActivityResultRejected<Serializable>;
|
|
9
|
+
export declare class AsyncActivityResultPending<TOutput extends Serializable = Serializable, TSchema extends Type.TSchema = Type.TSchema> {
|
|
10
|
+
readonly output?: TOutput;
|
|
11
|
+
readonly schema?: TSchema;
|
|
12
|
+
readonly timeoutAt?: Date | undefined;
|
|
13
|
+
constructor({ output, schema, timeoutAt, }?: AsyncActivityResultPendingOptions<TOutput, TSchema>);
|
|
14
|
+
}
|
|
15
|
+
export declare class AsyncActivityResultFulfilled<T extends Serializable | void = void> {
|
|
16
|
+
output: T;
|
|
17
|
+
constructor(output: T);
|
|
18
|
+
}
|
|
19
|
+
export declare class AsyncActivityResultRejected<T extends Serializable | void = void> {
|
|
20
|
+
output: T;
|
|
21
|
+
constructor(output: T);
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=AsyncActivityAdvanceResult.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AsyncActivityAdvanceResult.d.ts","sourceRoot":"","sources":["../../src/models/AsyncActivityAdvanceResult.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,SAAS,CAAA;AAE/B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAE9D,MAAM,WAAW,iCAAiC,CAChD,OAAO,SAAS,YAAY,GAAG,YAAY,EAC3C,OAAO,SAAS,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO;IAE3C,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,SAAS,CAAC,EAAE,IAAI,GAAG,SAAS,CAAA;CAC7B;AAED,MAAM,MAAM,mBAAmB,CAC7B,CAAC,SAAS,YAAY,EACtB,CAAC,SAAS,IAAI,CAAC,OAAO,EACtB,CAAC,SAAS,YAAY,GAAG,IAAI,IAE3B,0BAA0B,CAAC,CAAC,EAAE,CAAC,CAAC,GAChC,4BAA4B,CAAC,CAAC,CAAC,GAC/B,2BAA2B,CAAC,YAAY,CAAC,CAAA;AAE7C,qBAAa,0BAA0B,CACrC,OAAO,SAAS,YAAY,GAAG,YAAY,EAC3C,OAAO,SAAS,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO;IAE3C,SAAgB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChC,SAAgB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChC,SAAgB,SAAS,CAAC,EAAE,IAAI,GAAG,SAAS,CAAA;gBAEhC,EACV,MAAM,EACN,MAAM,EACN,SAAS,GACV,GAAE,iCAAiC,CAAC,OAAO,EAAE,OAAO,CAAM;CAK5D;AAED,qBAAa,4BAA4B,CACvC,CAAC,SAAS,YAAY,GAAG,IAAI,GAAG,IAAI;IAEjB,MAAM,EAAE,CAAC;gBAAT,MAAM,EAAE,CAAC;CAC7B;AAED,qBAAa,2BAA2B,CAAC,CAAC,SAAS,YAAY,GAAG,IAAI,GAAG,IAAI;IACxD,MAAM,EAAE,CAAC;gBAAT,MAAM,EAAE,CAAC;CAC7B"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export class AsyncActivityResultPending {
|
|
2
|
+
output;
|
|
3
|
+
schema;
|
|
4
|
+
timeoutAt;
|
|
5
|
+
constructor({ output, schema, timeoutAt, } = {}) {
|
|
6
|
+
this.output = output;
|
|
7
|
+
this.schema = schema;
|
|
8
|
+
this.timeoutAt = timeoutAt;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
export class AsyncActivityResultFulfilled {
|
|
12
|
+
output;
|
|
13
|
+
constructor(output) {
|
|
14
|
+
this.output = output;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
export class AsyncActivityResultRejected {
|
|
18
|
+
output;
|
|
19
|
+
constructor(output) {
|
|
20
|
+
this.output = output;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=AsyncActivityAdvanceResult.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AsyncActivityAdvanceResult.js","sourceRoot":"","sources":["../../src/models/AsyncActivityAdvanceResult.ts"],"names":[],"mappings":"AAsBA,MAAM,OAAO,0BAA0B;IAIrB,MAAM,CAAU;IAChB,MAAM,CAAU;IAChB,SAAS,CAAmB;IAE5C,YAAY,EACV,MAAM,EACN,MAAM,EACN,SAAS,MAC8C,EAAE;QACzD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;IAC5B,CAAC;CACF;AAED,MAAM,OAAO,4BAA4B;IAGpB;IAAnB,YAAmB,MAAS;QAAT,WAAM,GAAN,MAAM,CAAG;IAAG,CAAC;CACjC;AAED,MAAM,OAAO,2BAA2B;IACnB;IAAnB,YAAmB,MAAS;QAAT,WAAM,GAAN,MAAM,CAAG;IAAG,CAAC;CACjC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { type Activity } from './Activity.js';
|
|
2
|
+
import type { AnyAsyncActivity } from './AsyncActivity.js';
|
|
3
|
+
import type { IHistoryItemAsync } from './History.js';
|
|
4
|
+
export declare class AsyncActivityAwaitable<T extends AnyAsyncActivity> {
|
|
5
|
+
private readonly activity;
|
|
6
|
+
private readonly item;
|
|
7
|
+
private readonly args;
|
|
8
|
+
constructor(activity: T, item: IHistoryItemAsync, args: readonly any[]);
|
|
9
|
+
wait(): Promise<Activity.Output<T>>;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=AsyncActivityAwaitable.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AsyncActivityAwaitable.d.ts","sourceRoot":"","sources":["../../src/models/AsyncActivityAwaitable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAA;AAC7C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAC1D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAGrD,qBAAa,sBAAsB,CAAC,CAAC,SAAS,gBAAgB;IAE1D,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAFJ,QAAQ,EAAE,CAAC,EACX,IAAI,EAAE,iBAAiB,EACvB,IAAI,EAAE,SAAS,GAAG,EAAE;IAG1B,IAAI,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;CAMjD"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import {} from './Activity.js';
|
|
2
|
+
import { PushWaitAsyncActivity } from './PushWaitAsyncActivity.js';
|
|
3
|
+
export class AsyncActivityAwaitable {
|
|
4
|
+
activity;
|
|
5
|
+
item;
|
|
6
|
+
args;
|
|
7
|
+
constructor(activity, item, args) {
|
|
8
|
+
this.activity = activity;
|
|
9
|
+
this.item = item;
|
|
10
|
+
this.args = args;
|
|
11
|
+
}
|
|
12
|
+
async wait() {
|
|
13
|
+
if (this.item.status === 'pending')
|
|
14
|
+
throw new PushWaitAsyncActivity(this.activity);
|
|
15
|
+
return this.activity.toOutput(this.item.output, ...this.args);
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=AsyncActivityAwaitable.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AsyncActivityAwaitable.js","sourceRoot":"","sources":["../../src/models/AsyncActivityAwaitable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,MAAM,eAAe,CAAA;AAG7C,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAElE,MAAM,OAAO,sBAAsB;IAEd;IACA;IACA;IAHnB,YACmB,QAAW,EACX,IAAuB,EACvB,IAAoB;QAFpB,aAAQ,GAAR,QAAQ,CAAG;QACX,SAAI,GAAJ,IAAI,CAAmB;QACvB,SAAI,GAAJ,IAAI,CAAgB;IACpC,CAAC;IAEG,KAAK,CAAC,IAAI;QACf,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS;YAChC,MAAM,IAAI,qBAAqB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAEhD,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,CAAA;IAC/D,CAAC;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Binary.d.ts","sourceRoot":"","sources":["../../src/models/Binary.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAEtC,8BAAsB,MAAM;IAC1B,kBAAyB,WAAW,EAAE,MAAM,CAAA;IAE5C,kBAAyB,aAAa,EAAE,MAAM,CAAA;aAE9B,MAAM,IAAI,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;CACvD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Binary.js","sourceRoot":"","sources":["../../src/models/Binary.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAEtC,MAAM,OAAgB,MAAM;CAM3B"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export type ClaimMap = Record<keyof any, abstract new (...args: readonly any[]) => any>;
|
|
2
|
+
export type ClaimProvider<T> = {
|
|
3
|
+
provide: abstract new (...args: readonly any[]) => any;
|
|
4
|
+
value: T;
|
|
5
|
+
};
|
|
6
|
+
export type Claim<TMap extends ClaimMap> = {
|
|
7
|
+
[K in keyof TMap]: InstanceType<TMap[K]>;
|
|
8
|
+
};
|
|
9
|
+
export interface ActivityClaimConstructor {
|
|
10
|
+
new <TMap extends ClaimMap>(map: TMap): Claim<TMap>;
|
|
11
|
+
run<T>(claims: readonly ClaimProvider<any>[], fn: () => T): T;
|
|
12
|
+
getClaims(): readonly ClaimProvider<any>[];
|
|
13
|
+
}
|
|
14
|
+
export declare const Claim: ActivityClaimConstructor;
|
|
15
|
+
export declare abstract class GetWorkflowUniqueIdentifierClaim {
|
|
16
|
+
abstract getWorkflowUniqueIdentifier(): string;
|
|
17
|
+
}
|
|
18
|
+
export declare abstract class GetActivityUniqueIdentifierClaim {
|
|
19
|
+
abstract getActivityUniqueIdentifier(): string;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=Claim.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Claim.d.ts","sourceRoot":"","sources":["../../src/models/Claim.ts"],"names":[],"mappings":"AASA,MAAM,MAAM,QAAQ,GAAG,MAAM,CAC3B,MAAM,GAAG,EACT,QAAQ,MAAM,GAAG,IAAI,EAAE,SAAS,GAAG,EAAE,KAAK,GAAG,CAC9C,CAAA;AAED,MAAM,MAAM,aAAa,CAAC,CAAC,IAAI;IAC7B,OAAO,EAAE,QAAQ,MAAM,GAAG,IAAI,EAAE,SAAS,GAAG,EAAE,KAAK,GAAG,CAAA;IACtD,KAAK,EAAE,CAAC,CAAA;CACT,CAAA;AAED,MAAM,MAAM,KAAK,CAAC,IAAI,SAAS,QAAQ,IAAI;KACxC,CAAC,IAAI,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;CACzC,CAAA;AAED,MAAM,WAAW,wBAAwB;IACvC,KAAK,IAAI,SAAS,QAAQ,EAAE,GAAG,EAAE,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAA;IACnD,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,aAAa,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAAA;IAC7D,SAAS,IAAI,SAAS,aAAa,CAAC,GAAG,CAAC,EAAE,CAAA;CAC3C;AAED,eAAO,MAAM,KAAK,EAqCF,wBAAwB,CAAA;AAExC,8BAAsB,gCAAgC;aACpC,2BAA2B,IAAI,MAAM;CACtD;AAED,8BAAsB,gCAAgC;aACpC,2BAA2B,IAAI,MAAM;CACtD"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { AsyncLocalStorage } from 'node:async_hooks';
|
|
2
|
+
import { ClaimConstructorNotFoundException, ClaimKeyNotFoundException, ClaimProviderNotFoundException, ClaimStorageNotActiveException, } from '../exceptions/ClaimException.js';
|
|
3
|
+
export const Claim = function (map) {
|
|
4
|
+
return new Proxy({}, {
|
|
5
|
+
get(target, propertyKey) {
|
|
6
|
+
if (!(propertyKey in map))
|
|
7
|
+
throw new ClaimKeyNotFoundException(propertyKey);
|
|
8
|
+
if (!map[propertyKey])
|
|
9
|
+
throw new ClaimConstructorNotFoundException(propertyKey);
|
|
10
|
+
const store = storage.getStore();
|
|
11
|
+
if (!store)
|
|
12
|
+
throw new ClaimStorageNotActiveException();
|
|
13
|
+
const { providers: claims, cache } = store;
|
|
14
|
+
if (cache.has(propertyKey))
|
|
15
|
+
return cache.get(propertyKey);
|
|
16
|
+
const constructor = map[propertyKey];
|
|
17
|
+
const claimProvider = claims.find(claim => claim.provide === constructor);
|
|
18
|
+
if (!claimProvider)
|
|
19
|
+
throw new ClaimProviderNotFoundException(constructor.name, propertyKey);
|
|
20
|
+
cache.set(propertyKey, claimProvider.value);
|
|
21
|
+
return claimProvider.value;
|
|
22
|
+
},
|
|
23
|
+
});
|
|
24
|
+
};
|
|
25
|
+
export class GetWorkflowUniqueIdentifierClaim {
|
|
26
|
+
}
|
|
27
|
+
export class GetActivityUniqueIdentifierClaim {
|
|
28
|
+
}
|
|
29
|
+
Claim.run = (claims, fn) => storage.run({ providers: claims, cache: new Map() }, fn);
|
|
30
|
+
Claim.getClaims = () => {
|
|
31
|
+
const store = storage.getStore();
|
|
32
|
+
if (!store)
|
|
33
|
+
throw new ClaimStorageNotActiveException();
|
|
34
|
+
return store.providers;
|
|
35
|
+
};
|
|
36
|
+
const storage = new AsyncLocalStorage();
|
|
37
|
+
//# sourceMappingURL=Claim.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Claim.js","sourceRoot":"","sources":["../../src/models/Claim.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAEpD,OAAO,EACL,iCAAiC,EACjC,yBAAyB,EACzB,8BAA8B,EAC9B,8BAA8B,GAC/B,MAAM,iCAAiC,CAAA;AAsBxC,MAAM,CAAC,MAAM,KAAK,GAAG,UAAU,GAAa;IAC1C,OAAO,IAAI,KAAK,CACd,EAAE,EACF;QACE,GAAG,CAAC,MAAM,EAAE,WAAW;YACrB,IAAI,CAAC,CAAC,WAAW,IAAI,GAAG,CAAC;gBACvB,MAAM,IAAI,yBAAyB,CAAC,WAAW,CAAC,CAAA;YAElD,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC;gBACnB,MAAM,IAAI,iCAAiC,CAAC,WAAW,CAAC,CAAA;YAE1D,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAA;YAEhC,IAAI,CAAC,KAAK;gBAAE,MAAM,IAAI,8BAA8B,EAAE,CAAA;YAEtD,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,CAAA;YAE1C,IAAI,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC;gBAAE,OAAO,KAAK,CAAC,GAAG,CAAC,WAAW,CAAE,CAAA;YAE1D,MAAM,WAAW,GAAG,GAAG,CAAC,WAAW,CAAC,CAAA;YAEpC,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAC/B,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,KAAK,WAAW,CACvC,CAAA;YAED,IAAI,CAAC,aAAa;gBAChB,MAAM,IAAI,8BAA8B,CACtC,WAAW,CAAC,IAAI,EAChB,WAAW,CACZ,CAAA;YAEH,KAAK,CAAC,GAAG,CAAC,WAAW,EAAE,aAAa,CAAC,KAAK,CAAC,CAAA;YAE3C,OAAO,aAAa,CAAC,KAAK,CAAA;QAC5B,CAAC;KACF,CACuB,CAAA;AAC5B,CAAwC,CAAA;AAExC,MAAM,OAAgB,gCAAgC;CAErD;AAED,MAAM,OAAgB,gCAAgC;CAErD;AAED,KAAK,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,CACzB,OAAO,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,CAAA;AAE1D,KAAK,CAAC,SAAS,GAAG,GAAG,EAAE;IACrB,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAA;IAEhC,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,8BAA8B,EAAE,CAAA;IAEtD,OAAO,KAAK,CAAC,SAAS,CAAA;AACxB,CAAC,CAAA;AAED,MAAM,OAAO,GAAG,IAAI,iBAAiB,EAGjC,CAAA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export declare const env: Env;
|
|
2
|
+
export declare namespace Env {
|
|
3
|
+
const designs: Set<unknown>;
|
|
4
|
+
type Entries = readonly (readonly [string, string | undefined])[] | Record<string, string | undefined> | Map<string, string | undefined>;
|
|
5
|
+
function run<T>(entries: Entries, callback: () => T): T;
|
|
6
|
+
}
|
|
7
|
+
declare global {
|
|
8
|
+
interface Env {
|
|
9
|
+
[key: string]: string | undefined;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=Env.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Env.d.ts","sourceRoot":"","sources":["../../src/models/Env.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,GAAG,KAcf,CAAA;AAED,yBAAiB,GAAG,CAAC;IACZ,MAAM,OAAO,cAAY,CAAA;IAEhC,KAAY,OAAO,GACf,SAAS,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,EAAE,GAClD,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GAClC,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAA;IAEnC,SAAgB,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,KAQzD;CACF;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,GAAG;QACX,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;KAClC;CACF"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { AsyncLocalStorage } from 'node:async_hooks';
|
|
2
|
+
const envStorage = new AsyncLocalStorage();
|
|
3
|
+
export const env = new Proxy({}, {
|
|
4
|
+
get(target, propertyKey) {
|
|
5
|
+
if (typeof propertyKey === 'symbol')
|
|
6
|
+
throw new Error('Symbols are not supported');
|
|
7
|
+
const store = envStorage.getStore();
|
|
8
|
+
if (!store)
|
|
9
|
+
throw new Error('No env storage');
|
|
10
|
+
return store.get(propertyKey);
|
|
11
|
+
},
|
|
12
|
+
});
|
|
13
|
+
export var Env;
|
|
14
|
+
(function (Env) {
|
|
15
|
+
Env.designs = new Set();
|
|
16
|
+
function run(entries, callback) {
|
|
17
|
+
let map;
|
|
18
|
+
if (Array.isArray(entries))
|
|
19
|
+
map = new Map(entries);
|
|
20
|
+
else if (entries instanceof Map)
|
|
21
|
+
map = entries;
|
|
22
|
+
else
|
|
23
|
+
map = new Map(Object.entries(entries));
|
|
24
|
+
return envStorage.run(map, callback);
|
|
25
|
+
}
|
|
26
|
+
Env.run = run;
|
|
27
|
+
})(Env || (Env = {}));
|
|
28
|
+
//# sourceMappingURL=Env.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Env.js","sourceRoot":"","sources":["../../src/models/Env.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAEpD,MAAM,UAAU,GAAG,IAAI,iBAAiB,EAAmC,CAAA;AAE3E,MAAM,CAAC,MAAM,GAAG,GAAG,IAAI,KAAK,CAC1B,EAAE,EACF;IACE,GAAG,CAAC,MAAM,EAAE,WAAW;QACrB,IAAI,OAAO,WAAW,KAAK,QAAQ;YACjC,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAA;QAE9C,MAAM,KAAK,GAAG,UAAU,CAAC,QAAQ,EAAE,CAAA;QAEnC,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAA;QAE7C,OAAO,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;IAC/B,CAAC;CACF,CACF,CAAA;AAED,MAAM,KAAW,GAAG,CAiBnB;AAjBD,WAAiB,GAAG;IACL,WAAO,GAAG,IAAI,GAAG,EAAE,CAAA;IAOhC,SAAgB,GAAG,CAAI,OAAgB,EAAE,QAAiB;QACxD,IAAI,GAAoC,CAAA;QAExC,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;YAAE,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAA;aAC7C,IAAI,OAAO,YAAY,GAAG;YAAE,GAAG,GAAG,OAAO,CAAA;;YACzC,GAAG,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAA;QAE3C,OAAO,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAA;IACtC,CAAC;IARe,OAAG,MAQlB,CAAA;AACH,CAAC,EAjBgB,GAAG,KAAH,GAAG,QAiBnB"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export declare const IN_MEMORY_ENV_DESIGNS: Set<EnvDesign<any>>;
|
|
2
|
+
export type EnvEntryDesign = {
|
|
3
|
+
type: typeof String | typeof Number | typeof Boolean | ((raw: string) => any);
|
|
4
|
+
isOptional?: boolean;
|
|
5
|
+
defaultValue?: string;
|
|
6
|
+
};
|
|
7
|
+
export type EnvEntryDesignScalarType<T extends EnvEntryDesign['type']> = T extends typeof String ? string : T extends typeof Number ? number : T extends typeof Boolean ? boolean : T extends (raw: string) => infer R ? R : never;
|
|
8
|
+
export type EnvEntryDesignType<T extends EnvEntryDesign> = EnvEntryDesignScalarType<T['type']> | (T['isOptional'] extends true | undefined ? undefined : never);
|
|
9
|
+
export declare const ENV_DESIGN_STORE: unique symbol;
|
|
10
|
+
export type EnvDesign<T extends Record<string, EnvEntryDesign>> = {
|
|
11
|
+
[K in keyof T]: T[K] extends EnvEntryDesign ? EnvEntryDesignType<T[K]> : never;
|
|
12
|
+
} & {
|
|
13
|
+
[ENV_DESIGN_STORE]: Map<string, EnvEntryDesign>;
|
|
14
|
+
};
|
|
15
|
+
export declare function EnvDesign<T extends Record<string, EnvEntryDesign>>(entries: T): EnvDesign<T>;
|
|
16
|
+
//# sourceMappingURL=EnvDesign.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EnvDesign.d.ts","sourceRoot":"","sources":["../../src/models/EnvDesign.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,qBAAqB,qBAA4B,CAAA;AAE9D,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,EAAE,OAAO,MAAM,GAAG,OAAO,MAAM,GAAG,OAAO,OAAO,GAAG,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,GAAG,CAAC,CAAA;IAC7E,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB,CAAA;AAED,MAAM,MAAM,wBAAwB,CAAC,CAAC,SAAS,cAAc,CAAC,MAAM,CAAC,IACnE,CAAC,SAAS,OAAO,MAAM,GACnB,MAAM,GACN,CAAC,SAAS,OAAO,MAAM,GACrB,MAAM,GACN,CAAC,SAAS,OAAO,OAAO,GACtB,OAAO,GACP,CAAC,SAAS,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC,GAChC,CAAC,GACD,KAAK,CAAA;AAEjB,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,cAAc,IACnD,wBAAwB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GACnC,CAAC,CAAC,CAAC,YAAY,CAAC,SAAS,IAAI,GAAG,SAAS,GAAG,SAAS,GAAG,KAAK,CAAC,CAAA;AAElE,eAAO,MAAM,gBAAgB,eAAyB,CAAA;AAEtD,MAAM,MAAM,SAAS,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,IAAI;KAC/D,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,cAAc,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK;CAC/E,GAAG;IACF,CAAC,gBAAgB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAA;CAChD,CAAA;AAED,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,EAChE,OAAO,EAAE,CAAC,gBA+DX"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { env } from './Env.js';
|
|
2
|
+
export const IN_MEMORY_ENV_DESIGNS = new Set();
|
|
3
|
+
export const ENV_DESIGN_STORE = Symbol('DESIGN_STORE');
|
|
4
|
+
export function EnvDesign(entries) {
|
|
5
|
+
const designStore = new Map(Object.entries(entries));
|
|
6
|
+
function parse(value, design) {
|
|
7
|
+
switch (design.type) {
|
|
8
|
+
case String:
|
|
9
|
+
return value;
|
|
10
|
+
case Number: {
|
|
11
|
+
const number = Number(value);
|
|
12
|
+
if (isNaN(number))
|
|
13
|
+
throw new Error(`Invalid number: ${value}`);
|
|
14
|
+
return number;
|
|
15
|
+
}
|
|
16
|
+
case Boolean:
|
|
17
|
+
if (value !== 'true' && value !== 'false')
|
|
18
|
+
throw new Error(`Invalid boolean: ${value}`);
|
|
19
|
+
return value === 'true';
|
|
20
|
+
default:
|
|
21
|
+
return design.type(value);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
const envDesign = new Proxy({}, {
|
|
25
|
+
get(target, propertyKey) {
|
|
26
|
+
if (typeof propertyKey === 'symbol') {
|
|
27
|
+
if (propertyKey === ENV_DESIGN_STORE)
|
|
28
|
+
return designStore;
|
|
29
|
+
throw new Error('Symbols are not supported');
|
|
30
|
+
}
|
|
31
|
+
if (!designStore.has(propertyKey))
|
|
32
|
+
throw new Error(`Environment variable ${String(propertyKey)} is not set`);
|
|
33
|
+
const design = designStore.get(propertyKey);
|
|
34
|
+
let value = env[propertyKey];
|
|
35
|
+
if (value === undefined && design.defaultValue)
|
|
36
|
+
value = design.defaultValue;
|
|
37
|
+
if (value === undefined) {
|
|
38
|
+
if (design.isOptional)
|
|
39
|
+
return undefined;
|
|
40
|
+
throw new Error(`Environment variable ${String(propertyKey)} is not set`);
|
|
41
|
+
}
|
|
42
|
+
return parse(value, design);
|
|
43
|
+
},
|
|
44
|
+
});
|
|
45
|
+
IN_MEMORY_ENV_DESIGNS.add(envDesign);
|
|
46
|
+
return envDesign;
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=EnvDesign.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EnvDesign.js","sourceRoot":"","sources":["../../src/models/EnvDesign.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAE9B,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,GAAG,EAAkB,CAAA;AAuB9D,MAAM,CAAC,MAAM,gBAAgB,GAAG,MAAM,CAAC,cAAc,CAAC,CAAA;AAQtD,MAAM,UAAU,SAAS,CACvB,OAAU;IAEV,MAAM,WAAW,GAAG,IAAI,GAAG,CAAyB,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAA;IAE5E,SAAS,KAAK,CAAC,KAAa,EAAE,MAAsB;QAClD,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;YACpB,KAAK,MAAM;gBACT,OAAO,KAAK,CAAA;YACd,KAAK,MAAM,CAAC,CAAC,CAAC;gBACZ,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;gBAE5B,IAAI,KAAK,CAAC,MAAM,CAAC;oBAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,KAAK,EAAE,CAAC,CAAA;gBAE9D,OAAO,MAAM,CAAA;YACf,CAAC;YACD,KAAK,OAAO;gBACV,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,OAAO;oBACvC,MAAM,IAAI,KAAK,CAAC,oBAAoB,KAAK,EAAE,CAAC,CAAA;gBAE9C,OAAO,KAAK,KAAK,MAAM,CAAA;YACzB;gBACE,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC7B,CAAC;IACH,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,KAAK,CACzB,EAAE,EACF;QACE,GAAG,CAAC,MAAM,EAAE,WAAW;YACrB,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;gBACpC,IAAI,WAAW,KAAK,gBAAgB;oBAAE,OAAO,WAAW,CAAA;gBAExD,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAA;YAC9C,CAAC;YAED,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC;gBAC/B,MAAM,IAAI,KAAK,CACb,wBAAwB,MAAM,CAAC,WAAW,CAAC,aAAa,CACzD,CAAA;YAEH,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC,WAAW,CAAE,CAAA;YAE5C,IAAI,KAAK,GAAG,GAAG,CAAC,WAAW,CAAC,CAAA;YAE5B,IAAI,KAAK,KAAK,SAAS,IAAI,MAAM,CAAC,YAAY;gBAC5C,KAAK,GAAG,MAAM,CAAC,YAAY,CAAA;YAE7B,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,IAAI,MAAM,CAAC,UAAU;oBAAE,OAAO,SAAS,CAAA;gBAEvC,MAAM,IAAI,KAAK,CACb,wBAAwB,MAAM,CAAC,WAAW,CAAC,aAAa,CACzD,CAAA;YACH,CAAC;YAED,OAAO,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;QAC7B,CAAC;KACF,CACc,CAAA;IAEjB,qBAAqB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;IAEpC,OAAO,SAAS,CAAA;AAClB,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { type Activity } from './Activity.js';
|
|
2
|
+
import { type AnyAsyncActivity } from './AsyncActivity.js';
|
|
3
|
+
import { AsyncActivityAwaitable } from './AsyncActivityAwaitable.js';
|
|
4
|
+
export interface IHistoryItem {
|
|
5
|
+
output: any;
|
|
6
|
+
}
|
|
7
|
+
export interface IHistoryItemAsync extends IHistoryItem {
|
|
8
|
+
status: 'pending' | 'fulfilled' | 'rejected';
|
|
9
|
+
}
|
|
10
|
+
export declare namespace History {
|
|
11
|
+
type ReconcilerOutput<T extends Activity> = T extends AnyAsyncActivity ? AsyncActivityAwaitable<T> : Activity.Output<T>;
|
|
12
|
+
function bind<T extends Activity>(Activity: new () => T): (...args: Activity.Args<T>) => Promise<ReconcilerOutput<T>>;
|
|
13
|
+
function reconciler<T extends Activity>(Activity: new () => T, ...args: Activity.Args<T>): Promise<ReconcilerOutput<T>>;
|
|
14
|
+
function run<T>(history: readonly IHistoryItem[], fn: () => T): T;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=History.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"History.d.ts","sourceRoot":"","sources":["../../src/models/History.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAA;AAC7C,OAAO,EAAiB,KAAK,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACzE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AAGpE,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,GAAG,CAAA;CACZ;AAED,MAAM,WAAW,iBAAkB,SAAQ,YAAY;IACrD,MAAM,EAAE,SAAS,GAAG,WAAW,GAAG,UAAU,CAAA;CAC7C;AAED,yBAAiB,OAAO,CAAC;IACvB,KAAY,gBAAgB,CAAC,CAAC,SAAS,QAAQ,IAAI,CAAC,SAAS,gBAAgB,GACzE,sBAAsB,CAAC,CAAC,CAAC,GACzB,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;IAItB,SAAgB,IAAI,CAAC,CAAC,SAAS,QAAQ,EAAE,QAAQ,EAAE,UAAU,CAAC,IACpD,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,kCAClC;IAED,SAAsB,UAAU,CAAC,CAAC,SAAS,QAAQ,EACjD,QAAQ,EAAE,UAAU,CAAC,EACrB,GAAG,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,GACxB,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAuB9B;IAED,SAAgB,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,SAAS,YAAY,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,KAEnE;CACF"}
|