@resonatehq/sdk 0.3.7 → 0.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/README.md +24 -130
  2. package/dist/async.d.ts +99 -49
  3. package/dist/async.d.ts.map +1 -1
  4. package/dist/async.js +173 -100
  5. package/dist/async.js.map +1 -1
  6. package/dist/core/execution.d.ts +13 -10
  7. package/dist/core/execution.d.ts.map +1 -1
  8. package/dist/core/execution.js +174 -69
  9. package/dist/core/execution.js.map +1 -1
  10. package/dist/core/future.d.ts +6 -4
  11. package/dist/core/future.d.ts.map +1 -1
  12. package/dist/core/future.js +7 -1
  13. package/dist/core/future.js.map +1 -1
  14. package/dist/core/invocation.d.ts +6 -5
  15. package/dist/core/invocation.d.ts.map +1 -1
  16. package/dist/core/invocation.js +40 -14
  17. package/dist/core/invocation.js.map +1 -1
  18. package/dist/core/options.d.ts +32 -11
  19. package/dist/core/options.d.ts.map +1 -1
  20. package/dist/core/options.js +3 -3
  21. package/dist/core/options.js.map +1 -1
  22. package/dist/core/promises/promises.d.ts +4 -3
  23. package/dist/core/promises/promises.d.ts.map +1 -1
  24. package/dist/core/promises/promises.js +7 -3
  25. package/dist/core/promises/promises.js.map +1 -1
  26. package/dist/core/promises/types.d.ts.map +1 -1
  27. package/dist/core/promises/types.js +2 -5
  28. package/dist/core/promises/types.js.map +1 -1
  29. package/dist/core/schedules/schedules.d.ts +22 -0
  30. package/dist/core/schedules/schedules.d.ts.map +1 -0
  31. package/dist/core/schedules/schedules.js +29 -0
  32. package/dist/core/schedules/schedules.js.map +1 -0
  33. package/dist/core/store.d.ts +5 -2
  34. package/dist/core/store.d.ts.map +1 -1
  35. package/dist/core/stores/local.d.ts +1 -1
  36. package/dist/core/stores/local.d.ts.map +1 -1
  37. package/dist/core/stores/local.js +7 -5
  38. package/dist/core/stores/local.js.map +1 -1
  39. package/dist/core/stores/remote.d.ts +7 -7
  40. package/dist/core/stores/remote.d.ts.map +1 -1
  41. package/dist/core/stores/remote.js +30 -23
  42. package/dist/core/stores/remote.js.map +1 -1
  43. package/dist/generator.d.ts +39 -18
  44. package/dist/generator.d.ts.map +1 -1
  45. package/dist/generator.js +72 -73
  46. package/dist/generator.js.map +1 -1
  47. package/dist/index.d.ts +23 -3
  48. package/dist/index.d.ts.map +1 -1
  49. package/dist/index.js +38 -6
  50. package/dist/index.js.map +1 -1
  51. package/dist/resonate.d.ts +109 -32
  52. package/dist/resonate.d.ts.map +1 -1
  53. package/dist/resonate.js +144 -60
  54. package/dist/resonate.js.map +1 -1
  55. package/package.json +1 -1
package/dist/async.js CHANGED
@@ -1,33 +1,9 @@
1
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
2
  Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.Context = exports.Info = exports.Resonate = void 0;
3
+ exports.Context = exports.Resonate = void 0;
27
4
  const execution_1 = require("./core/execution");
28
5
  const invocation_1 = require("./core/invocation");
29
6
  const retry_1 = require("./core/retries/retry");
30
- const utils = __importStar(require("./core/utils"));
31
7
  const resonate_1 = require("./resonate");
32
8
  /////////////////////////////////////////////////////////////////////
33
9
  // Resonate
@@ -42,10 +18,22 @@ class Resonate extends resonate_1.ResonateBase {
42
18
  */
43
19
  constructor(opts = {}) {
44
20
  super(opts);
45
- this.scheduler = new Scheduler();
21
+ this.scheduler = new Scheduler(this);
46
22
  }
47
- register(name, funcOrVersion, funcOrOpts) {
48
- return super.register(name, funcOrVersion, funcOrOpts);
23
+ execute(name, id, func, args, opts, defaults, durablePromise) {
24
+ return this.scheduler.add(name, id, func, args, opts, defaults, durablePromise);
25
+ }
26
+ /**
27
+ * Register a function with Resonate. Registered functions can be invoked by calling {@link run}, or by the returned function.
28
+ *
29
+ * @template F The type of the function.
30
+ * @param name A unique name to identify the function.
31
+ * @param func The function to register with Resonate.
32
+ * @param opts Resonate options, can be constructed by calling {@link options}.
33
+ * @returns Resonate function
34
+ */
35
+ register(name, func, opts) {
36
+ return super.register(name, func, opts);
49
37
  }
50
38
  /**
51
39
  * Register a module with Resonate. Registered functions can be invoked by calling {@link run}.
@@ -58,17 +46,19 @@ class Resonate extends resonate_1.ResonateBase {
58
46
  registerModule(module, opts = {}) {
59
47
  super.registerModule(module, opts);
60
48
  }
61
- execute(name, version, id, func, args, opts) {
62
- return this.scheduler.add(name, version, id, func, args, opts);
49
+ schedule(name, cron, func, ...args) {
50
+ return super.schedule(name, cron, func, ...args);
63
51
  }
64
52
  }
65
53
  exports.Resonate = Resonate;
66
54
  /////////////////////////////////////////////////////////////////////
67
55
  // Context
68
56
  /////////////////////////////////////////////////////////////////////
69
- class Info {
57
+ class Context {
58
+ resonate;
70
59
  invocation;
71
- constructor(invocation) {
60
+ constructor(resonate, invocation) {
61
+ this.resonate = resonate;
72
62
  this.invocation = invocation;
73
63
  }
74
64
  /**
@@ -77,43 +67,18 @@ class Info {
77
67
  get attempt() {
78
68
  return this.invocation.attempt;
79
69
  }
80
- /**
81
- * Uniquely identifies the function invocation.
82
- */
83
- get id() {
84
- return this.invocation.id;
85
- }
86
- /**
87
- * Deduplicates function invocations with the same id.
88
- */
89
- get idempotencyKey() {
90
- return this.invocation.idempotencyKey;
91
- }
92
- /**
93
- * The timestamp in ms, once this time elapses the function invocation will timeout.
94
- */
95
- get timeout() {
96
- return this.invocation.timeout;
97
- }
98
- /**
99
- * The resonate function version.
100
- */
101
- get version() {
102
- return this.invocation.version;
103
- }
104
- }
105
- exports.Info = Info;
106
- class Context {
107
- invocation;
108
- constructor(invocation) {
109
- this.invocation = invocation;
110
- }
111
70
  /**
112
71
  * The running count of child function invocations.
113
72
  */
114
73
  get counter() {
115
74
  return this.invocation.counter;
116
75
  }
76
+ /**
77
+ * The time the invocation was created. Will use the durable promise creation time if available.
78
+ */
79
+ get createdOn() {
80
+ return this.invocation.createdOn;
81
+ }
117
82
  /**
118
83
  * Uniquely identifies the function invocation.
119
84
  */
@@ -126,6 +91,12 @@ class Context {
126
91
  get idempotencyKey() {
127
92
  return this.invocation.idempotencyKey;
128
93
  }
94
+ /**
95
+ * All configured options for this context.
96
+ */
97
+ get opts() {
98
+ return this.invocation.opts;
99
+ }
129
100
  /**
130
101
  * The timestamp in ms, once this time elapses the function invocation will timeout.
131
102
  */
@@ -136,7 +107,7 @@ class Context {
136
107
  * The resonate function version.
137
108
  */
138
109
  get version() {
139
- return this.invocation.version;
110
+ return this.invocation.root.opts.version;
140
111
  }
141
112
  run(func, ...argsWithOpts) {
142
113
  // the parent is the current invocation
@@ -147,59 +118,159 @@ class Context {
147
118
  const id = typeof func === "string" ? func : `${parent.id}.${parent.counter}`;
148
119
  // human readable name of the function
149
120
  const name = typeof func === "string" ? func : func.name;
150
- // version is inherited from the parent
151
- const version = parent.version;
152
- // the idempotency key is a hash of the id
153
- const idempotencyKey = utils.hash(id);
154
121
  // opts are optional and can be provided as the last arg
155
122
  const { args, opts } = this.invocation.split(argsWithOpts);
123
+ // default opts never change
124
+ const defaults = this.invocation.defaults;
156
125
  // param is only required for deferred executions
157
126
  const param = typeof func === "string" ? args[0] : undefined;
158
127
  // create a new invocation
159
- const invocation = new invocation_1.Invocation(name, version, id, idempotencyKey, undefined, param, opts, parent);
128
+ const invocation = new invocation_1.Invocation(name, id, undefined, param, opts, defaults, parent);
160
129
  let execution;
161
130
  if (typeof func === "string") {
162
131
  // create a deferred execution
163
132
  // this execution will be fulfilled out-of-process
164
- execution = new execution_1.DeferredExecution(invocation);
133
+ execution = new execution_1.DeferredExecution(this.resonate, invocation);
165
134
  }
166
135
  else {
167
- // create an ordinary execution// human readable name of the function
136
+ // create an ordinary execution
168
137
  // this execution wraps a user-provided function
169
- const ctx = new Context(invocation);
170
- execution = new execution_1.OrdinaryExecution(invocation, () => func(ctx, ...args), retry_1.Retry.never());
138
+ const ctx = new Context(this.resonate, invocation);
139
+ execution = new execution_1.OrdinaryExecution(this.resonate, invocation, () => func(ctx, ...args));
171
140
  }
172
141
  // bump the counter
173
142
  parent.counter++;
174
143
  // return a resonate promise
175
144
  return execution.execute();
176
145
  }
177
- io(func, ...argsWithOpts) {
178
- const parent = this.invocation;
179
- const id = `${parent.id}.${parent.counter}`;
180
- const idempotencyKey = utils.hash(id);
181
- const { args, opts } = this.invocation.split(argsWithOpts);
182
- const name = func.name;
183
- const version = parent.version;
184
- const invocation = new invocation_1.Invocation(name, version, id, idempotencyKey, undefined, undefined, opts, parent);
185
- // create an ordinary execution
186
- // this execution wraps a user-provided io function
187
- // unlike run, an io function can not create child invocations
188
- const info = new Info(invocation);
189
- const execution = new execution_1.OrdinaryExecution(invocation, () => func(info, ...args));
190
- // bump the counter
191
- parent.counter++;
192
- // return a resonate promise
193
- return execution.execute();
146
+ /**
147
+ * Creates a Promise that is resolved with an array of results when all of the provided Promises
148
+ * resolve, or rejected when any Promise is rejected.
149
+ *
150
+ * @param values An array of Promises.
151
+ * @param opts Optional {@link options}.
152
+ * @returns A new ResonatePromise.
153
+ */
154
+ all(values, opts = {}) {
155
+ // catch all promises to prevent unhandled promise rejections,
156
+ // since Promise.all will not be called in the case where the
157
+ // durable promise already completed
158
+ for (const value of values) {
159
+ if (value instanceof Promise) {
160
+ value.catch(() => { });
161
+ }
162
+ }
163
+ // prettier-ignore
164
+ return this.run(() => Promise.all(values), this.options({
165
+ retry: retry_1.Retry.never(),
166
+ ...opts,
167
+ }));
168
+ }
169
+ /**
170
+ * Creates a Promise that is fulfilled by the first given promise to be fulfilled, or rejected
171
+ * with an AggregateError.
172
+ *
173
+ * @param values An array of Promises.
174
+ * @param opts Optional {@link options}.
175
+ * @returns A new ResonatePromise.
176
+ */
177
+ any(values, opts = {}) {
178
+ // catch all promises to prevent unhandled promise rejections,
179
+ // since Promise.any will not be called in the case where the
180
+ // durable promise already completed
181
+ for (const value of values) {
182
+ if (value instanceof Promise) {
183
+ value.catch(() => { });
184
+ }
185
+ }
186
+ // prettier-ignore
187
+ return this.run(() => Promise.any(values), this.options({
188
+ retry: retry_1.Retry.never(),
189
+ ...opts,
190
+ }));
191
+ }
192
+ /**
193
+ * Creates a Promise that is resolved or rejected when any of the provided Promises are resolved
194
+ * or rejected.
195
+ *
196
+ * @param values An array of Promises.
197
+ * @param opts Optional {@link options}.
198
+ * @returns A new ResonatePromise.
199
+ */
200
+ race(values, opts = {}) {
201
+ // catch all promises to prevent unhandled promise rejections,
202
+ // since Promise.race will not be called in the case where the
203
+ // durable promise already completed
204
+ for (const value of values) {
205
+ if (value instanceof Promise) {
206
+ value.catch(() => { });
207
+ }
208
+ }
209
+ // prettier-ignore
210
+ return this.run(() => Promise.race(values), this.options({
211
+ retry: retry_1.Retry.never(),
212
+ ...opts,
213
+ }));
214
+ }
215
+ /**
216
+ * Creates a Promise that is resolved with an array of results when all of the provided Promises
217
+ * resolve or reject.
218
+ *
219
+ * @param values An array of Promises.
220
+ * @param opts Optional {@link options}.
221
+ * @returns A new ResonatePromise.
222
+ */
223
+ allSettled(values, opts = {}) {
224
+ // catch all promises to prevent unhandled promise rejections,
225
+ // since Promise.allSettled will not be called in the case where the
226
+ // durable promise already completed
227
+ for (const value of values) {
228
+ if (value instanceof Promise) {
229
+ value.catch(() => { });
230
+ }
231
+ }
232
+ // prettier-ignore
233
+ return this.run(() => Promise.allSettled(values), this.options({
234
+ retry: retry_1.Retry.never(),
235
+ ...opts,
236
+ }));
237
+ }
238
+ /**
239
+ * Generate a deterministic random number.
240
+ *
241
+ * @returns A random number.
242
+ */
243
+ random() {
244
+ return this.run(Math.random);
245
+ }
246
+ /**
247
+ * Get a deterministic timestamp.
248
+ *
249
+ * @returns A timestamp in ms.
250
+ */
251
+ now() {
252
+ return this.run(Date.now);
253
+ }
254
+ /**
255
+ * Run a Resonate function in detached mode. Functions must first be registered with Resonate.
256
+ *
257
+ * @template T The return type of the function.
258
+ * @param id A unique id for the function invocation.
259
+ * @param name The function name.
260
+ * @param args The function arguments.
261
+ * @returns A ResonatePromise.
262
+ */
263
+ detached(name, id, ...args) {
264
+ return this.resonate.run(name, id, ...args);
194
265
  }
195
266
  /**
196
267
  * Construct options.
197
268
  *
198
269
  * @param opts A partial {@link Options} object.
199
- * @returns Options with the __resonate flag set.
270
+ * @returns PartialOptions.
200
271
  */
201
272
  options(opts = {}) {
202
- return { ...opts, __resonate: true };
273
+ return this.resonate.options(opts);
203
274
  }
204
275
  }
205
276
  exports.Context = Context;
@@ -207,27 +278,29 @@ exports.Context = Context;
207
278
  // Scheduler
208
279
  /////////////////////////////////////////////////////////////////////
209
280
  class Scheduler {
281
+ resonate;
210
282
  cache = {};
211
- add(name, version, id, func, args, opts) {
283
+ constructor(resonate) {
284
+ this.resonate = resonate;
285
+ }
286
+ add(name, id, func, args, opts, defaults, durablePromise) {
212
287
  // if the execution is already running, and not killed,
213
288
  // return the promise
214
- if (this.cache[id] && !this.cache[id].killed) {
289
+ if (opts.durable && this.cache[id] && !this.cache[id].killed) {
215
290
  // execute is idempotent
216
291
  return this.cache[id].execute();
217
292
  }
218
- // the idempotency key is a hash of the id
219
- const idempotencyKey = utils.hash(id);
220
293
  // params, used for recovery
221
294
  const param = {
222
295
  func: name,
223
- version,
296
+ version: opts.version,
224
297
  args,
225
298
  };
226
299
  // create a new invocation
227
- const invocation = new invocation_1.Invocation(name, version, id, idempotencyKey, undefined, param, opts);
300
+ const invocation = new invocation_1.Invocation(name, id, undefined, param, opts, defaults);
228
301
  // create a new execution
229
- const ctx = new Context(invocation);
230
- const execution = new execution_1.OrdinaryExecution(invocation, () => func(ctx, ...args));
302
+ const ctx = new Context(this.resonate, invocation);
303
+ const execution = new execution_1.OrdinaryExecution(this.resonate, invocation, () => func(ctx, ...args), durablePromise);
231
304
  // store the execution,
232
305
  // will be used if run is called again with the same id
233
306
  this.cache[id] = execution;
package/dist/async.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"async.js","sourceRoot":"","sources":["../lib/async.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"async.js","sourceRoot":"","sources":["../lib/async.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,9 @@
1
+ import { ResonateBase } from "../resonate";
1
2
  import { Future, ResonatePromise } from "./future";
2
3
  import { Invocation } from "./invocation";
3
4
  import { DurablePromise } from "./promises/promises";
4
- import { IRetry } from "./retry";
5
5
  export declare abstract class Execution<T> {
6
+ resonate: ResonateBase;
6
7
  invocation: Invocation<T>;
7
8
  private promise;
8
9
  /**
@@ -11,33 +12,35 @@ export declare abstract class Execution<T> {
11
12
  * @constructor
12
13
  * @param invocation - An invocation correpsonding to the Resonate function.
13
14
  */
14
- constructor(invocation: Invocation<T>);
15
+ constructor(resonate: ResonateBase, invocation: Invocation<T>);
15
16
  execute(): ResonatePromise<T>;
16
17
  protected abstract fork(): Promise<Future<T>>;
17
18
  protected abstract join(future: Future<T>): Promise<T>;
18
19
  get killed(): boolean;
19
20
  kill(error: unknown): void;
20
- protected tags(): Record<string, string>;
21
+ protected acquireLock(): Promise<boolean>;
22
+ protected releaseLock(): Promise<void>;
21
23
  }
22
24
  export declare class OrdinaryExecution<T> extends Execution<T> {
23
25
  private func;
24
- private retry;
25
- constructor(invocation: Invocation<T>, func: () => T, retry?: IRetry);
26
+ private durablePromise?;
27
+ constructor(resonate: ResonateBase, invocation: Invocation<T>, func: () => T, durablePromise?: DurablePromise<T> | undefined);
26
28
  protected fork(): Promise<Future<T>>;
27
29
  protected join(future: Future<T>): Promise<T>;
28
30
  private run;
29
31
  }
30
32
  export declare class DeferredExecution<T> extends Execution<T> {
31
- constructor(invocation: Invocation<T>);
33
+ private durablePromise;
32
34
  protected fork(): Promise<Future<T>>;
33
35
  protected join(future: Future<T>): Promise<T>;
34
36
  }
35
37
  export declare class GeneratorExecution<T> extends Execution<T> {
36
38
  generator: Generator<any, T>;
37
- constructor(invocation: Invocation<T>, generator: Generator<any, T>);
38
- create(): Promise<DurablePromise<T> | undefined>;
39
- resolve(promise: DurablePromise<T>, value: T): Promise<DurablePromise<T>>;
40
- reject(promise: DurablePromise<T>, error: any): Promise<DurablePromise<T>>;
39
+ private durablePromise?;
40
+ constructor(resonate: ResonateBase, invocation: Invocation<T>, generator: Generator<any, T>, durablePromise?: DurablePromise<T> | undefined);
41
+ create(): Promise<void>;
42
+ resolve(value: T): Promise<void>;
43
+ reject(error: any): Promise<void>;
41
44
  protected fork(): Promise<Future<T>>;
42
45
  protected join(future: Future<T>): Promise<T>;
43
46
  }
@@ -1 +1 @@
1
- {"version":3,"file":"execution.d.ts","sourceRoot":"","sources":["../../lib/core/execution.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAMjC,8BAAsB,SAAS,CAAC,CAAC;IASZ,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC;IAR5C,OAAO,CAAC,OAAO,CAAmC;IAElD;;;;;OAKG;gBACgB,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC;IAE5C,OAAO,IAAI,eAAe,CAAC,CAAC,CAAC;IAY7B,SAAS,CAAC,QAAQ,CAAC,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAC7C,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAEtD,IAAI,MAAM,YAET;IAED,IAAI,CAAC,KAAK,EAAE,OAAO;IAQnB,SAAS,CAAC,IAAI;CAOf;AAED,qBAAa,iBAAiB,CAAC,CAAC,CAAE,SAAQ,SAAS,CAAC,CAAC,CAAC;IAGlD,OAAO,CAAC,IAAI;IACZ,OAAO,CAAC,KAAK;gBAFb,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC,EACjB,IAAI,EAAE,MAAM,CAAC,EACb,KAAK,GAAE,MAA8B;cAK/B,IAAI;cAsCJ,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;YAIxB,GAAG;CAmBlB;AAED,qBAAa,iBAAiB,CAAC,CAAC,CAAE,SAAQ,SAAS,CAAC,CAAC,CAAC;gBACxC,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC;cAIrB,IAAI;cA6BJ,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CAGvC;AAED,qBAAa,kBAAkB,CAAC,CAAC,CAAE,SAAQ,SAAS,CAAC,CAAC,CAAC;IAG5C,SAAS,EAAE,SAAS,CAAC,GAAG,EAAE,CAAC,CAAC;gBADnC,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC,EAClB,SAAS,EAAE,SAAS,CAAC,GAAG,EAAE,CAAC,CAAC;IAK/B,MAAM;IA6BN,OAAO,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC;IAmB5C,MAAM,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG;cAmBnC,IAAI;cAIJ,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CAGvC"}
1
+ {"version":3,"file":"execution.d.ts","sourceRoot":"","sources":["../../lib/core/execution.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAMrD,8BAAsB,SAAS,CAAC,CAAC;IAUtB,QAAQ,EAAE,YAAY;IACtB,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC;IAVlC,OAAO,CAAC,OAAO,CAAmC;IAElD;;;;;OAKG;gBAEM,QAAQ,EAAE,YAAY,EACtB,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC;IAGlC,OAAO,IAAI,eAAe,CAAC,CAAC,CAAC;IAoB7B,SAAS,CAAC,QAAQ,CAAC,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAC7C,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAEtD,IAAI,MAAM,YAET;IAED,IAAI,CAAC,KAAK,EAAE,OAAO;cAQH,WAAW;cAaX,WAAW;CAO5B;AAED,qBAAa,iBAAiB,CAAC,CAAC,CAAE,SAAQ,SAAS,CAAC,CAAC,CAAC;IAIlD,OAAO,CAAC,IAAI;IACZ,OAAO,CAAC,cAAc,CAAC;gBAHvB,QAAQ,EAAE,YAAY,EACtB,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC,EACjB,IAAI,EAAE,MAAM,CAAC,EACb,cAAc,CAAC,+BAAmB;cAK5B,IAAI;cAmCJ,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;YA0DxB,GAAG;CAoBlB;AAED,qBAAa,iBAAiB,CAAC,CAAC,CAAE,SAAQ,SAAS,CAAC,CAAC,CAAC;IACpD,OAAO,CAAC,cAAc,CAAkC;cAExC,IAAI;cA8BJ,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CAcvC;AAED,qBAAa,kBAAkB,CAAC,CAAC,CAAE,SAAQ,SAAS,CAAC,CAAC,CAAC;IAI5C,SAAS,EAAE,SAAS,CAAC,GAAG,EAAE,CAAC,CAAC;IACnC,OAAO,CAAC,cAAc,CAAC;gBAHvB,QAAQ,EAAE,YAAY,EACtB,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC,EAClB,SAAS,EAAE,SAAS,CAAC,GAAG,EAAE,CAAC,CAAC,EAC3B,cAAc,CAAC,+BAA+B;IAKlD,MAAM;IAwCN,OAAO,CAAC,KAAK,EAAE,CAAC;IAsBhB,MAAM,CAAC,KAAK,EAAE,GAAG;cAsBP,IAAI;cAIJ,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CAGvC"}