@resonatehq/sdk 0.3.7 → 0.5.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.
Files changed (55) hide show
  1. package/README.md +24 -123
  2. package/dist/async.d.ts +95 -49
  3. package/dist/async.d.ts.map +1 -1
  4. package/dist/async.js +167 -100
  5. package/dist/async.js.map +1 -1
  6. package/dist/core/execution.d.ts +12 -10
  7. package/dist/core/execution.d.ts.map +1 -1
  8. package/dist/core/execution.js +124 -65
  9. package/dist/core/execution.js.map +1 -1
  10. package/dist/core/future.d.ts +3 -1
  11. package/dist/core/future.d.ts.map +1 -1
  12. package/dist/core/future.js +6 -0
  13. package/dist/core/future.js.map +1 -1
  14. package/dist/core/invocation.d.ts +5 -4
  15. package/dist/core/invocation.d.ts.map +1 -1
  16. package/dist/core/invocation.js +39 -13
  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 +3 -2
  23. package/dist/core/promises/promises.d.ts.map +1 -1
  24. package/dist/core/promises/promises.js +4 -1
  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 +36 -18
  44. package/dist/generator.d.ts.map +1 -1
  45. package/dist/generator.js +66 -73
  46. package/dist/generator.js.map +1 -1
  47. package/dist/index.d.ts +2 -2
  48. package/dist/index.d.ts.map +1 -1
  49. package/dist/index.js +5 -26
  50. package/dist/index.js.map +1 -1
  51. package/dist/resonate.d.ts +108 -31
  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
@@ -8,6 +8,7 @@ const promises_1 = require("./promises/promises");
8
8
  // Execution
9
9
  /////////////////////////////////////////////////////////////////////
10
10
  class Execution {
11
+ resonate;
11
12
  invocation;
12
13
  promise = null;
13
14
  /**
@@ -16,7 +17,8 @@ class Execution {
16
17
  * @constructor
17
18
  * @param invocation - An invocation correpsonding to the Resonate function.
18
19
  */
19
- constructor(invocation) {
20
+ constructor(resonate, invocation) {
21
+ this.resonate = resonate;
20
22
  this.invocation = invocation;
21
23
  }
22
24
  execute() {
@@ -37,41 +39,82 @@ class Execution {
37
39
  // reject only the root invocation
38
40
  this.invocation.root.reject(new errors_1.ResonateError("Resonate function killed", errors_1.ErrorCodes.KILLED, error, true));
39
41
  }
40
- tags() {
41
- if (this.invocation.parent === null) {
42
- return { ...this.invocation.opts.tags, "resonate:invocation": "true" };
42
+ async acquireLock() {
43
+ try {
44
+ return await this.resonate.store.locks.tryAcquire(this.invocation.id, this.invocation.eid);
45
+ }
46
+ catch (e) {
47
+ // if lock is already acquired, return false so we can poll
48
+ if (e instanceof errors_1.ResonateError && e.code === errors_1.ErrorCodes.STORE_FORBIDDEN) {
49
+ return false;
50
+ }
51
+ throw e;
52
+ }
53
+ }
54
+ async releaseLock() {
55
+ try {
56
+ await this.resonate.store.locks.release(this.invocation.id, this.invocation.eid);
57
+ }
58
+ catch (e) {
59
+ this.resonate.logger.warn("Failed to release lock", e);
43
60
  }
44
- return this.invocation.opts.tags;
45
61
  }
46
62
  }
47
63
  exports.Execution = Execution;
48
64
  class OrdinaryExecution extends Execution {
49
65
  func;
50
- retry;
51
- constructor(invocation, func, retry = invocation.opts.retry) {
52
- super(invocation);
66
+ durablePromise;
67
+ constructor(resonate, invocation, func, durablePromise) {
68
+ super(resonate, invocation);
53
69
  this.func = func;
54
- this.retry = retry;
70
+ this.durablePromise = durablePromise;
55
71
  }
56
72
  async fork() {
57
73
  try {
58
- // create a durable promise
59
- const promise = await promises_1.DurablePromise.create(this.invocation.opts.store.promises, this.invocation.opts.encoder, this.invocation.id, this.invocation.timeout, {
60
- idempotencyKey: this.invocation.idempotencyKey,
61
- headers: this.invocation.headers,
62
- param: this.invocation.param,
63
- tags: this.tags(),
64
- });
65
- if (promise.pending) {
66
- // if pending, invoke the function and resolve/reject the durable promise
67
- await this.run().then((v) => promise.resolve(v, { idempotencyKey: this.invocation.idempotencyKey }), (e) => promise.reject(e, { idempotencyKey: this.invocation.idempotencyKey }));
74
+ // acquire lock if necessary
75
+ while (this.invocation.opts.lock && !(await this.acquireLock())) {
76
+ await new Promise((resolve) => setTimeout(resolve, this.invocation.opts.poll));
68
77
  }
69
- // resolve/reject the invocation
70
- if (promise.resolved) {
71
- this.invocation.resolve(promise.value());
78
+ if (this.invocation.opts.durable) {
79
+ // if durable, create a durable promise
80
+ const promise = this.durablePromise ??
81
+ (await promises_1.DurablePromise.create(this.resonate.store.promises, this.invocation.opts.encoder, this.invocation.id, this.invocation.timeout, {
82
+ idempotencyKey: this.invocation.idempotencyKey,
83
+ headers: this.invocation.headers,
84
+ param: this.invocation.param,
85
+ tags: this.invocation.opts.tags,
86
+ }));
87
+ // override the invocation timeout
88
+ this.invocation.timeout = promise.timeout;
89
+ if (promise.pending) {
90
+ // if pending, invoke the function and resolve/reject the durable promise
91
+ try {
92
+ await promise.resolve(await this.run(), { idempotencyKey: this.invocation.idempotencyKey });
93
+ }
94
+ catch (e) {
95
+ await promise.reject(e, { idempotencyKey: this.invocation.idempotencyKey });
96
+ }
97
+ }
98
+ // resolve/reject the invocation
99
+ if (promise.resolved) {
100
+ this.invocation.resolve(promise.value());
101
+ }
102
+ else if (promise.rejected || promise.canceled || promise.timedout) {
103
+ this.invocation.reject(promise.error());
104
+ }
72
105
  }
73
- else if (promise.rejected || promise.canceled || promise.timedout) {
74
- this.invocation.reject(promise.error());
106
+ else {
107
+ // if not durable, invoke the function and resolve/reject the invocation
108
+ try {
109
+ this.invocation.resolve(await this.run());
110
+ }
111
+ catch (e) {
112
+ this.invocation.reject(e);
113
+ }
114
+ }
115
+ // release lock if necessary
116
+ if (this.invocation.opts.lock) {
117
+ await this.releaseLock();
75
118
  }
76
119
  }
77
120
  catch (e) {
@@ -86,9 +129,9 @@ class OrdinaryExecution extends Execution {
86
129
  async run() {
87
130
  let error;
88
131
  // invoke the function according to the retry policy
89
- for (const delay of this.retry.iterator(this.invocation)) {
132
+ for (const delay of this.invocation.opts.retry.iterator(this.invocation)) {
133
+ await new Promise((resolve) => setTimeout(resolve, delay));
90
134
  try {
91
- await new Promise((resolve) => setTimeout(resolve, delay));
92
135
  return await this.func();
93
136
  }
94
137
  catch (e) {
@@ -103,19 +146,18 @@ class OrdinaryExecution extends Execution {
103
146
  }
104
147
  exports.OrdinaryExecution = OrdinaryExecution;
105
148
  class DeferredExecution extends Execution {
106
- constructor(invocation) {
107
- super(invocation);
108
- }
109
149
  async fork() {
110
150
  try {
111
151
  // create a durable promise
112
- const promise = await promises_1.DurablePromise.create(this.invocation.opts.store.promises, this.invocation.opts.encoder, this.invocation.id, this.invocation.timeout, {
152
+ const promise = await promises_1.DurablePromise.create(this.resonate.store.promises, this.invocation.opts.encoder, this.invocation.id, this.invocation.timeout, {
113
153
  idempotencyKey: this.invocation.idempotencyKey,
114
154
  headers: this.invocation.headers,
115
155
  param: this.invocation.param,
116
- tags: this.tags(),
156
+ tags: this.invocation.opts.tags,
117
157
  poll: this.invocation.opts.poll,
118
158
  });
159
+ // override the invocation timeout
160
+ this.invocation.timeout = promise.timeout;
119
161
  // poll the completion of the durable promise
120
162
  promise.completed.then((p) => p.resolved ? this.invocation.resolve(p.value()) : this.invocation.reject(p.error()));
121
163
  }
@@ -132,68 +174,85 @@ class DeferredExecution extends Execution {
132
174
  exports.DeferredExecution = DeferredExecution;
133
175
  class GeneratorExecution extends Execution {
134
176
  generator;
135
- constructor(invocation, generator) {
136
- super(invocation);
177
+ durablePromise;
178
+ constructor(resonate, invocation, generator, durablePromise) {
179
+ super(resonate, invocation);
137
180
  this.generator = generator;
181
+ this.durablePromise = durablePromise;
138
182
  }
139
183
  async create() {
140
184
  try {
141
- // create a durable promise
142
- const promise = await promises_1.DurablePromise.create(this.invocation.opts.store.promises, this.invocation.opts.encoder, this.invocation.id, this.invocation.timeout, {
143
- idempotencyKey: this.invocation.idempotencyKey,
144
- headers: this.invocation.headers,
145
- param: this.invocation.param,
146
- tags: this.tags(),
147
- });
148
- // resolve/reject the invocation if already completed
149
- if (promise.resolved) {
150
- this.invocation.resolve(promise.value());
151
- }
152
- else if (promise.rejected || promise.canceled || promise.timedout) {
153
- this.invocation.reject(promise.error());
185
+ if (this.invocation.opts.durable) {
186
+ // create a durable promise
187
+ this.durablePromise =
188
+ this.durablePromise ??
189
+ (await promises_1.DurablePromise.create(this.resonate.store.promises, this.invocation.opts.encoder, this.invocation.id, this.invocation.timeout, {
190
+ idempotencyKey: this.invocation.idempotencyKey,
191
+ headers: this.invocation.headers,
192
+ param: this.invocation.param,
193
+ tags: this.invocation.opts.tags,
194
+ }));
195
+ // override the invocation timeout
196
+ this.invocation.timeout = this.durablePromise.timeout;
197
+ // resolve/reject the invocation if already completed
198
+ if (this.durablePromise.resolved) {
199
+ this.invocation.resolve(this.durablePromise.value());
200
+ }
201
+ else if (this.durablePromise.rejected || this.durablePromise.canceled || this.durablePromise.timedout) {
202
+ this.invocation.reject(this.durablePromise.error());
203
+ }
154
204
  }
155
- return promise;
156
205
  }
157
206
  catch (e) {
158
207
  // if an error occurs, kill the execution
159
208
  this.kill(e);
160
209
  }
161
210
  }
162
- async resolve(promise, value) {
211
+ async resolve(value) {
163
212
  try {
164
- // resolve the durable promise
165
- await promise.resolve(value, { idempotencyKey: this.invocation.idempotencyKey });
166
- // resolve/reject the invocation
167
- if (promise.resolved) {
168
- this.invocation.resolve(promise.value());
213
+ if (this.durablePromise) {
214
+ // resolve the durable promise if the invocation is durable
215
+ await this.durablePromise.resolve(value, { idempotencyKey: this.invocation.idempotencyKey });
216
+ // resolve/reject the invocation
217
+ if (this.durablePromise.resolved) {
218
+ this.invocation.resolve(this.durablePromise.value());
219
+ }
220
+ else if (this.durablePromise.rejected || this.durablePromise.canceled || this.durablePromise.timedout) {
221
+ this.invocation.reject(this.durablePromise.error());
222
+ }
169
223
  }
170
- else if (promise.rejected || promise.canceled || promise.timedout) {
171
- this.invocation.reject(promise.error());
224
+ else {
225
+ // if not durable, just resolve the invocation
226
+ this.invocation.resolve(value);
172
227
  }
173
228
  }
174
229
  catch (e) {
175
230
  // if an error occurs, kill the execution
176
231
  this.kill(e);
177
232
  }
178
- return promise;
179
233
  }
180
- async reject(promise, error) {
234
+ async reject(error) {
181
235
  try {
182
- // reject the durable promise
183
- await promise.reject(error, { idempotencyKey: this.invocation.idempotencyKey });
184
- // resolve/reject the invocation
185
- if (promise.resolved) {
186
- this.invocation.resolve(promise.value());
236
+ if (this.durablePromise) {
237
+ // reject the durable promise if the invocation is durable
238
+ await this.durablePromise.reject(error, { idempotencyKey: this.invocation.idempotencyKey });
239
+ // resolve/reject the invocation
240
+ if (this.durablePromise.resolved) {
241
+ this.invocation.resolve(this.durablePromise.value());
242
+ }
243
+ else if (this.durablePromise.rejected || this.durablePromise.canceled || this.durablePromise.timedout) {
244
+ this.invocation.reject(this.durablePromise.error());
245
+ }
187
246
  }
188
- else if (promise.rejected || promise.canceled || promise.timedout) {
189
- this.invocation.reject(promise.error());
247
+ else {
248
+ // if not durable, just reject the invocation
249
+ this.invocation.reject(error);
190
250
  }
191
251
  }
192
252
  catch (e) {
193
253
  // if an error occurs, kill the execution
194
254
  this.kill(e);
195
255
  }
196
- return promise;
197
256
  }
198
257
  async fork() {
199
258
  return this.invocation.future;
@@ -1 +1 @@
1
- {"version":3,"file":"execution.js","sourceRoot":"","sources":["../../lib/core/execution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"execution.js","sourceRoot":"","sources":["../../lib/core/execution.ts"],"names":[],"mappings":"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"}
@@ -43,11 +43,13 @@ export declare class Future<T> {
43
43
  reject: (error: unknown) => void;
44
44
  };
45
45
  get id(): string;
46
- get idempotencyKey(): string | undefined;
46
+ get idempotencyKey(): string;
47
47
  get root(): Future<any>;
48
48
  get parent(): Future<any> | null;
49
49
  get children(): Future<any>[];
50
50
  get value(): Value<T>;
51
+ get pending(): boolean;
52
+ get completed(): boolean;
51
53
  private resolve;
52
54
  private reject;
53
55
  }
@@ -1 +1 @@
1
- {"version":3,"file":"future.d.ts","sourceRoot":"","sources":["../../lib/core/future.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAM1C,qBAAa,eAAe,CAAC,CAAC,CAAE,SAAQ,OAAO,CAAC,CAAC,CAAC;IAkBvC,EAAE,EAAE,MAAM;IAfnB,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAIzB,MAAM,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,qBAAW;IAElC;;;;;;;OAOG;gBAEM,EAAE,EAAE,MAAM,EACjB,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,EACrB,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;CAUxB;AAMD,MAAM,MAAM,KAAK,CAAC,CAAC,IAAI;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,KAAK,EAAE,CAAC,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,CAAC;AAEnH,qBAAa,MAAM,CAAC,CAAC;IAejB,OAAO,CAAC,UAAU;IACX,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;IAC1B,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,OAAO;IAhBjB,QAAQ,CAAC,IAAI,YAAY;IAGzB,OAAO,CAAC,MAAM,CAAiC;IAE/C;;;;;;OAMG;gBAEO,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC,EAC1B,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,EAClB,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,IAAI,EACxB,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI;IAGxC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC;;;;;IAqB5C,IAAI,EAAE,WAEL;IAED,IAAI,cAAc,uBAEjB;IAED,IAAI,IAAI,gBAEP;IAED,IAAI,MAAM,uBAET;IAED,IAAI,QAAQ,kBAEX;IAED,IAAI,KAAK,aAER;IAED,OAAO,CAAC,OAAO;IAKf,OAAO,CAAC,MAAM;CAIf"}
1
+ {"version":3,"file":"future.d.ts","sourceRoot":"","sources":["../../lib/core/future.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAM1C,qBAAa,eAAe,CAAC,CAAC,CAAE,SAAQ,OAAO,CAAC,CAAC,CAAC;IAkBvC,EAAE,EAAE,MAAM;IAfnB,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAIzB,MAAM,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,qBAAW;IAElC;;;;;;;OAOG;gBAEM,EAAE,EAAE,MAAM,EACjB,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,EACrB,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;CAUxB;AAMD,MAAM,MAAM,KAAK,CAAC,CAAC,IAAI;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,KAAK,EAAE,CAAC,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,CAAC;AAEnH,qBAAa,MAAM,CAAC,CAAC;IAejB,OAAO,CAAC,UAAU;IACX,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;IAC1B,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,OAAO;IAhBjB,QAAQ,CAAC,IAAI,YAAY;IAGzB,OAAO,CAAC,MAAM,CAAiC;IAE/C;;;;;;OAMG;gBAEO,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC,EAC1B,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,EAClB,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,IAAI,EACxB,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI;IAGxC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC;;;;;IAqB5C,IAAI,EAAE,WAEL;IAED,IAAI,cAAc,WAEjB;IAED,IAAI,IAAI,gBAEP;IAED,IAAI,MAAM,uBAET;IAED,IAAI,QAAQ,kBAEX;IAED,IAAI,KAAK,aAER;IAED,IAAI,OAAO,YAEV;IAED,IAAI,SAAS,YAEZ;IAED,OAAO,CAAC,OAAO;IAKf,OAAO,CAAC,MAAM;CAIf"}
@@ -88,6 +88,12 @@ class Future {
88
88
  get value() {
89
89
  return this._value;
90
90
  }
91
+ get pending() {
92
+ return this._value.kind === "pending";
93
+ }
94
+ get completed() {
95
+ return !this.pending;
96
+ }
91
97
  resolve(value) {
92
98
  this._resolve(value);
93
99
  this._value = { kind: "resolved", value };
@@ -1 +1 @@
1
- {"version":3,"file":"future.js","sourceRoot":"","sources":["../../lib/core/future.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"future.js","sourceRoot":"","sources":["../../lib/core/future.ts"],"names":[],"mappings":"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"}
@@ -2,15 +2,17 @@ import { Future } from "./future";
2
2
  import { Options, PartialOptions } from "./options";
3
3
  export declare class Invocation<T> {
4
4
  readonly name: string;
5
- readonly version: number;
6
5
  readonly id: string;
7
- readonly idempotencyKey: string | undefined;
8
6
  readonly headers: Record<string, string> | undefined;
9
7
  readonly param: unknown;
10
8
  readonly opts: Options;
9
+ readonly defaults: Options;
11
10
  future: Future<T>;
12
11
  resolve: (v: T) => void;
13
12
  reject: (e: unknown) => void;
13
+ eid: string;
14
+ idempotencyKey: string;
15
+ timeout: number;
14
16
  killed: boolean;
15
17
  createdAt: number;
16
18
  counter: number;
@@ -29,8 +31,7 @@ export declare class Invocation<T> {
29
31
  * @param opts - The invocation options.
30
32
  * @param parent - The parent invocation.
31
33
  */
32
- constructor(name: string, version: number, id: string, idempotencyKey: string | undefined, headers: Record<string, string> | undefined, param: unknown, opts: Options, parent?: Invocation<any>);
33
- get timeout(): number;
34
+ constructor(name: string, id: string, headers: Record<string, string> | undefined, param: unknown, opts: Options, defaults: Options, parent?: Invocation<any>);
34
35
  addChild(child: Invocation<any>): void;
35
36
  await(future: Future<any>): void;
36
37
  block(future: Future<any>): void;
@@ -1 +1 @@
1
- {"version":3,"file":"invocation.d.ts","sourceRoot":"","sources":["../../lib/core/invocation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,cAAc,EAAoB,MAAM,WAAW,CAAC;AAMtE,qBAAa,UAAU,CAAC,CAAC;aA4BL,IAAI,EAAE,MAAM;aACZ,OAAO,EAAE,MAAM;aACf,EAAE,EAAE,MAAM;aACV,cAAc,EAAE,MAAM,GAAG,SAAS;aAClC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS;aAC3C,KAAK,EAAE,OAAO;aACd,IAAI,EAAE,OAAO;IAjC/B,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IAClB,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC;IACxB,MAAM,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAE7B,MAAM,EAAE,OAAO,CAAS;IAExB,SAAS,EAAE,MAAM,CAAc;IAC/B,OAAO,EAAE,MAAM,CAAK;IACpB,OAAO,EAAE,MAAM,CAAK;IAEpB,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAM;IAC5B,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAQ;IAEnC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC;IAC/B,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;IACxC,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC,GAAG,CAAC,EAAE,CAAM;IAE1C;;;;;;;;OAQG;gBAEe,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,EAAE,EAAE,MAAM,EACV,cAAc,EAAE,MAAM,GAAG,SAAS,EAClC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,EAC3C,KAAK,EAAE,OAAO,EACd,IAAI,EAAE,OAAO,EAC7B,MAAM,CAAC,EAAE,UAAU,CAAC,GAAG,CAAC;IAW1B,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC;IAI/B,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC;IAIzB,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC;IAIzB,OAAO;IAIP,KAAK,CAAC,IAAI,EAAE,CAAC,GAAG,GAAG,EAAE,cAAc,CAAC,CAAC,GAAG;QAAE,IAAI,EAAE,GAAG,EAAE,CAAC;QAAC,IAAI,EAAE,OAAO,CAAA;KAAE;CAQvE"}
1
+ {"version":3,"file":"invocation.d.ts","sourceRoot":"","sources":["../../lib/core/invocation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,cAAc,EAAa,MAAM,WAAW,CAAC;AAM/D,qBAAa,UAAU,CAAC,CAAC;aAgCL,IAAI,EAAE,MAAM;aACZ,EAAE,EAAE,MAAM;aACV,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS;aAC3C,KAAK,EAAE,OAAO;aACd,IAAI,EAAE,OAAO;aACb,QAAQ,EAAE,OAAO;IApCnC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IAClB,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC;IACxB,MAAM,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAE7B,GAAG,EAAE,MAAM,CAAC;IACZ,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAEhB,MAAM,EAAE,OAAO,CAAS;IAExB,SAAS,EAAE,MAAM,CAAc;IAC/B,OAAO,EAAE,MAAM,CAAK;IACpB,OAAO,EAAE,MAAM,CAAK;IAEpB,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAM;IAC5B,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAQ;IAEnC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC;IAC/B,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;IACxC,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC,GAAG,CAAC,EAAE,CAAM;IAE1C;;;;;;;;OAQG;gBAEe,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,EAC3C,KAAK,EAAE,OAAO,EACd,IAAI,EAAE,OAAO,EACb,QAAQ,EAAE,OAAO,EACjC,MAAM,CAAC,EAAE,UAAU,CAAC,GAAG,CAAC;IA4B1B,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC;IAI/B,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC;IAIzB,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC;IAIzB,OAAO;IAIP,KAAK,CAAC,IAAI,EAAE,CAAC,GAAG,GAAG,EAAE,cAAc,CAAC,CAAC,GAAG;QAAE,IAAI,EAAE,GAAG,EAAE,CAAC;QAAC,IAAI,EAAE,OAAO,CAAA;KAAE;CAwBvE"}
@@ -8,15 +8,17 @@ const options_1 = require("./options");
8
8
  /////////////////////////////////////////////////////////////////////
9
9
  class Invocation {
10
10
  name;
11
- version;
12
11
  id;
13
- idempotencyKey;
14
12
  headers;
15
13
  param;
16
14
  opts;
15
+ defaults;
17
16
  future;
18
17
  resolve;
19
18
  reject;
19
+ eid;
20
+ idempotencyKey;
21
+ timeout;
20
22
  killed = false;
21
23
  createdAt = Date.now();
22
24
  counter = 0;
@@ -35,23 +37,33 @@ class Invocation {
35
37
  * @param opts - The invocation options.
36
38
  * @param parent - The parent invocation.
37
39
  */
38
- constructor(name, version, id, idempotencyKey, headers, param, opts, parent) {
40
+ constructor(name, id, headers, param, opts, defaults, parent) {
39
41
  this.name = name;
40
- this.version = version;
41
42
  this.id = id;
42
- this.idempotencyKey = idempotencyKey;
43
43
  this.headers = headers;
44
44
  this.param = param;
45
45
  this.opts = opts;
46
+ this.defaults = defaults;
47
+ // create a future and hold on to its resolvers
46
48
  const { future, resolve, reject } = future_1.Future.deferred(this);
47
49
  this.future = future;
48
50
  this.resolve = resolve;
49
51
  this.reject = reject;
50
52
  this.root = parent?.root ?? this;
51
53
  this.parent = parent ?? null;
52
- }
53
- get timeout() {
54
- return Math.min(this.createdAt + this.opts.timeout, this.parent?.timeout ?? Infinity);
54
+ // get the execution id from either:
55
+ // - a hard coded string
56
+ // - a function that returns a string given the invocation id
57
+ this.eid = typeof this.opts.eid === "function" ? this.opts.eid(this.id) : this.opts.eid;
58
+ // get the idempotency key from either:
59
+ // - a hard coded string
60
+ // - a function that returns a string given the invocation id
61
+ this.idempotencyKey =
62
+ typeof this.opts.idempotencyKey === "function" ? this.opts.idempotencyKey(this.id) : this.opts.idempotencyKey;
63
+ // the timeout is the minimum of:
64
+ // - the current time plus the user provided relative time
65
+ // - the parent timeout
66
+ this.timeout = Math.min(this.createdAt + this.opts.timeout, this.parent?.timeout ?? Infinity);
55
67
  }
56
68
  addChild(child) {
57
69
  this.children.push(child);
@@ -66,11 +78,25 @@ class Invocation {
66
78
  this.blocked = null;
67
79
  }
68
80
  split(args) {
69
- const opts = args[args.length - 1];
70
- const parentOpts = this.parent?.opts ?? this.root.opts;
71
- return (0, options_1.isPartialOptions)(opts)
72
- ? { args: args.slice(0, -1), opts: { ...parentOpts, ...opts, tags: { ...parentOpts.tags, ...opts.tags } } }
73
- : { args, opts: parentOpts };
81
+ let opts = args[args.length - 1];
82
+ // merge opts
83
+ if ((0, options_1.isOptions)(opts)) {
84
+ args = args.slice(0, -1);
85
+ opts = {
86
+ ...this.defaults,
87
+ ...opts,
88
+ tags: { ...this.defaults.tags, ...opts.tags }, // tags are merged
89
+ };
90
+ }
91
+ else {
92
+ // copy defaults
93
+ opts = { ...this.defaults };
94
+ }
95
+ // lock is false by default
96
+ opts.lock = opts.lock ?? false;
97
+ // version cannot be overridden
98
+ opts.version = this.defaults.version;
99
+ return { args, opts };
74
100
  }
75
101
  }
76
102
  exports.Invocation = Invocation;
@@ -1 +1 @@
1
- {"version":3,"file":"invocation.js","sourceRoot":"","sources":["../../lib/core/invocation.ts"],"names":[],"mappings":";;;AAAA,qCAAkC;AAClC,uCAAsE;AAEtE,qEAAqE;AACrE,aAAa;AACb,qEAAqE;AAErE,MAAa,UAAU;IA4BH;IACA;IACA;IACA;IACA;IACA;IACA;IAjClB,MAAM,CAAY;IAClB,OAAO,CAAiB;IACxB,MAAM,CAAuB;IAE7B,MAAM,GAAY,KAAK,CAAC;IAExB,SAAS,GAAW,IAAI,CAAC,GAAG,EAAE,CAAC;IAC/B,OAAO,GAAW,CAAC,CAAC;IACpB,OAAO,GAAW,CAAC,CAAC;IAEpB,OAAO,GAAkB,EAAE,CAAC;IAC5B,OAAO,GAAuB,IAAI,CAAC;IAE1B,IAAI,CAAkB;IACtB,MAAM,CAAyB;IAC/B,QAAQ,GAAsB,EAAE,CAAC;IAE1C;;;;;;;;OAQG;IACH,YACkB,IAAY,EACZ,OAAe,EACf,EAAU,EACV,cAAkC,EAClC,OAA2C,EAC3C,KAAc,EACd,IAAa,EAC7B,MAAwB;QAPR,SAAI,GAAJ,IAAI,CAAQ;QACZ,YAAO,GAAP,OAAO,CAAQ;QACf,OAAE,GAAF,EAAE,CAAQ;QACV,mBAAc,GAAd,cAAc,CAAoB;QAClC,YAAO,GAAP,OAAO,CAAoC;QAC3C,UAAK,GAAL,KAAK,CAAS;QACd,SAAI,GAAJ,IAAI,CAAS;QAG7B,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,eAAM,CAAC,QAAQ,CAAI,IAAI,CAAC,CAAC;QAC7D,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QAErB,IAAI,CAAC,IAAI,GAAG,MAAM,EAAE,IAAI,IAAI,IAAI,CAAC;QACjC,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,IAAI,CAAC;IAC/B,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,IAAI,QAAQ,CAAC,CAAC;IACxF,CAAC;IAED,QAAQ,CAAC,KAAsB;QAC7B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,MAAmB;QACvB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,MAAmB;QACvB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACxB,CAAC;IAED,OAAO;QACL,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,IAA+B;QACnC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACnC,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,EAAE,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QAEvD,OAAO,IAAA,0BAAgB,EAAC,IAAI,CAAC;YAC3B,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,GAAG,UAAU,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,EAAE,GAAG,UAAU,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE;YAC3G,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;IACjC,CAAC;CACF;AA1ED,gCA0EC"}
1
+ {"version":3,"file":"invocation.js","sourceRoot":"","sources":["../../lib/core/invocation.ts"],"names":[],"mappings":";;;AAAA,qCAAkC;AAClC,uCAA+D;AAE/D,qEAAqE;AACrE,aAAa;AACb,qEAAqE;AAErE,MAAa,UAAU;IAgCH;IACA;IACA;IACA;IACA;IACA;IApClB,MAAM,CAAY;IAClB,OAAO,CAAiB;IACxB,MAAM,CAAuB;IAE7B,GAAG,CAAS;IACZ,cAAc,CAAS;IACvB,OAAO,CAAS;IAEhB,MAAM,GAAY,KAAK,CAAC;IAExB,SAAS,GAAW,IAAI,CAAC,GAAG,EAAE,CAAC;IAC/B,OAAO,GAAW,CAAC,CAAC;IACpB,OAAO,GAAW,CAAC,CAAC;IAEpB,OAAO,GAAkB,EAAE,CAAC;IAC5B,OAAO,GAAuB,IAAI,CAAC;IAE1B,IAAI,CAAkB;IACtB,MAAM,CAAyB;IAC/B,QAAQ,GAAsB,EAAE,CAAC;IAE1C;;;;;;;;OAQG;IACH,YACkB,IAAY,EACZ,EAAU,EACV,OAA2C,EAC3C,KAAc,EACd,IAAa,EACb,QAAiB,EACjC,MAAwB;QANR,SAAI,GAAJ,IAAI,CAAQ;QACZ,OAAE,GAAF,EAAE,CAAQ;QACV,YAAO,GAAP,OAAO,CAAoC;QAC3C,UAAK,GAAL,KAAK,CAAS;QACd,SAAI,GAAJ,IAAI,CAAS;QACb,aAAQ,GAAR,QAAQ,CAAS;QAGjC,+CAA+C;QAC/C,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,eAAM,CAAC,QAAQ,CAAI,IAAI,CAAC,CAAC;QAC7D,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QAErB,IAAI,CAAC,IAAI,GAAG,MAAM,EAAE,IAAI,IAAI,IAAI,CAAC;QACjC,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,IAAI,CAAC;QAE7B,oCAAoC;QACpC,wBAAwB;QACxB,6DAA6D;QAC7D,IAAI,CAAC,GAAG,GAAG,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;QAExF,uCAAuC;QACvC,wBAAwB;QACxB,6DAA6D;QAC7D,IAAI,CAAC,cAAc;YACjB,OAAO,IAAI,CAAC,IAAI,CAAC,cAAc,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC;QAEhH,iCAAiC;QACjC,0DAA0D;QAC1D,uBAAuB;QACvB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,IAAI,QAAQ,CAAC,CAAC;IAChG,CAAC;IAED,QAAQ,CAAC,KAAsB;QAC7B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,MAAmB;QACvB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,MAAmB;QACvB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACxB,CAAC;IAED,OAAO;QACL,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,IAA+B;QACnC,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAEjC,aAAa;QACb,IAAI,IAAA,mBAAS,EAAC,IAAI,CAAC,EAAE,CAAC;YACpB,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YACzB,IAAI,GAAG;gBACL,GAAG,IAAI,CAAC,QAAQ;gBAChB,GAAG,IAAI;gBACP,IAAI,EAAE,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,EAAE,kBAAkB;aAClE,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,gBAAgB;YAChB,IAAI,GAAG,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC9B,CAAC;QAED,2BAA2B;QAC3B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC;QAE/B,+BAA+B;QAC/B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;QAErC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACxB,CAAC;CACF;AA1GD,gCA0GC"}
@@ -5,7 +5,7 @@ import { IStore } from "./store";
5
5
  /**
6
6
  * Resonate configuration options.
7
7
  */
8
- export interface ResonateOptions {
8
+ export type ResonateOptions = {
9
9
  /**
10
10
  * An encoder instance used for encoding and decoding values
11
11
  * returned (or thrown) by registered functions. If not provided,
@@ -17,6 +17,11 @@ export interface ResonateOptions {
17
17
  * instance. If not provided a default value will be generated.
18
18
  */
19
19
  pid: string;
20
+ /**
21
+ * The frequency in ms to poll the promise store for remote
22
+ * promises.
23
+ */
24
+ poll: number;
20
25
  /**
21
26
  * A logger instance, if not provided a default logger will be
22
27
  * used.
@@ -45,29 +50,40 @@ export interface ResonateOptions {
45
50
  * promise store will be used.
46
51
  */
47
52
  url: string;
48
- }
53
+ };
49
54
  /**
50
55
  * Resonate function invocation options.
51
56
  */
52
- export interface Options {
57
+ export type Options = {
53
58
  __resonate: true;
59
+ /**
60
+ * Persist the result to durable storage.
61
+ */
62
+ durable: boolean;
63
+ /**
64
+ * A unique id for this execution, defaults to a random id.
65
+ */
66
+ eid: string | ((id: string) => string);
54
67
  /**
55
68
  * Overrides the default encoder.
56
69
  */
57
70
  encoder: IEncoder<unknown, string | undefined>;
58
71
  /**
59
- * The frequency in ms to poll the promise store for a completed
60
- * remote promise.
72
+ * Overrides the default idempotency key.
73
+ */
74
+ idempotencyKey: string | ((id: string) => string);
75
+ /**
76
+ * Acquire a lock for the execution.
77
+ */
78
+ lock: boolean | undefined;
79
+ /**
80
+ * Overrides the default polling frequency.
61
81
  */
62
82
  poll: number;
63
83
  /**
64
84
  * Overrides the default retry policy.
65
85
  */
66
86
  retry: IRetry;
67
- /**
68
- * Overrides the default store.
69
- */
70
- store: IStore;
71
87
  /**
72
88
  * Additional tags to add to the durable promise.
73
89
  */
@@ -76,9 +92,14 @@ export interface Options {
76
92
  * Overrides the default timeout.
77
93
  */
78
94
  timeout: number;
79
- }
95
+ /**
96
+ * The function version to execute. Only applicable on calls to
97
+ * resonate.run.
98
+ */
99
+ version: number;
100
+ };
80
101
  export type PartialOptions = Partial<Options> & {
81
102
  __resonate: true;
82
103
  };
83
- export declare function isPartialOptions(o: unknown): o is PartialOptions;
104
+ export declare function isOptions(o: unknown): o is PartialOptions;
84
105
  //# sourceMappingURL=options.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../lib/core/options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AACnC,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEjC;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;OAIG;IACH,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IAE/C;;;OAGG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;;OAGG;IACH,MAAM,EAAE,OAAO,CAAC;IAEhB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAE7B;;;OAGG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,UAAU,EAAE,IAAI,CAAC;IAEjB;;OAEG;IACH,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IAE/C;;;OAGG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAE7B;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,MAAM,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG;IAAE,UAAU,EAAE,IAAI,CAAA;CAAE,CAAC;AAErE,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,cAAc,CAEhE"}
1
+ {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../lib/core/options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AACnC,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEjC;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B;;;;OAIG;IACH,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IAE/C;;;OAGG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;;OAGG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;;OAGG;IACH,MAAM,EAAE,OAAO,CAAC;IAEhB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAE7B;;;OAGG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG;IACpB,UAAU,EAAE,IAAI,CAAC;IAEjB;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,GAAG,EAAE,MAAM,GAAG,CAAC,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC;IAEvC;;OAEG;IACH,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IAE/C;;OAEG;IACH,cAAc,EAAE,MAAM,GAAG,CAAC,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC;IAElD;;OAEG;IACH,IAAI,EAAE,OAAO,GAAG,SAAS,CAAC;IAE1B;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAE7B;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG;IAAE,UAAU,EAAE,IAAI,CAAA;CAAE,CAAC;AAErE,wBAAgB,SAAS,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,cAAc,CAEzD"}
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isPartialOptions = void 0;
4
- function isPartialOptions(o) {
3
+ exports.isOptions = void 0;
4
+ function isOptions(o) {
5
5
  return typeof o === "object" && o !== null && o.__resonate === true;
6
6
  }
7
- exports.isPartialOptions = isPartialOptions;
7
+ exports.isOptions = isOptions;
8
8
  //# sourceMappingURL=options.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"options.js","sourceRoot":"","sources":["../../lib/core/options.ts"],"names":[],"mappings":";;;AAiGA,SAAgB,gBAAgB,CAAC,CAAU;IACzC,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,IAAK,CAAoB,CAAC,UAAU,KAAK,IAAI,CAAC;AAC1F,CAAC;AAFD,4CAEC"}
1
+ {"version":3,"file":"options.js","sourceRoot":"","sources":["../../lib/core/options.ts"],"names":[],"mappings":";;;AA2HA,SAAgB,SAAS,CAAC,CAAU;IAClC,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,IAAK,CAAoB,CAAC,UAAU,KAAK,IAAI,CAAC;AAC1F,CAAC;AAFD,8BAEC"}