@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.
- package/README.md +24 -123
- package/dist/async.d.ts +95 -49
- package/dist/async.d.ts.map +1 -1
- package/dist/async.js +167 -100
- package/dist/async.js.map +1 -1
- package/dist/core/execution.d.ts +12 -10
- package/dist/core/execution.d.ts.map +1 -1
- package/dist/core/execution.js +124 -65
- package/dist/core/execution.js.map +1 -1
- package/dist/core/future.d.ts +3 -1
- package/dist/core/future.d.ts.map +1 -1
- package/dist/core/future.js +6 -0
- package/dist/core/future.js.map +1 -1
- package/dist/core/invocation.d.ts +5 -4
- package/dist/core/invocation.d.ts.map +1 -1
- package/dist/core/invocation.js +39 -13
- package/dist/core/invocation.js.map +1 -1
- package/dist/core/options.d.ts +32 -11
- package/dist/core/options.d.ts.map +1 -1
- package/dist/core/options.js +3 -3
- package/dist/core/options.js.map +1 -1
- package/dist/core/promises/promises.d.ts +3 -2
- package/dist/core/promises/promises.d.ts.map +1 -1
- package/dist/core/promises/promises.js +4 -1
- package/dist/core/promises/promises.js.map +1 -1
- package/dist/core/promises/types.d.ts.map +1 -1
- package/dist/core/promises/types.js +2 -5
- package/dist/core/promises/types.js.map +1 -1
- package/dist/core/schedules/schedules.d.ts +22 -0
- package/dist/core/schedules/schedules.d.ts.map +1 -0
- package/dist/core/schedules/schedules.js +29 -0
- package/dist/core/schedules/schedules.js.map +1 -0
- package/dist/core/store.d.ts +5 -2
- package/dist/core/store.d.ts.map +1 -1
- package/dist/core/stores/local.d.ts +1 -1
- package/dist/core/stores/local.d.ts.map +1 -1
- package/dist/core/stores/local.js +7 -5
- package/dist/core/stores/local.js.map +1 -1
- package/dist/core/stores/remote.d.ts +7 -7
- package/dist/core/stores/remote.d.ts.map +1 -1
- package/dist/core/stores/remote.js +30 -23
- package/dist/core/stores/remote.js.map +1 -1
- package/dist/generator.d.ts +36 -18
- package/dist/generator.d.ts.map +1 -1
- package/dist/generator.js +66 -73
- package/dist/generator.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -26
- package/dist/index.js.map +1 -1
- package/dist/resonate.d.ts +108 -31
- package/dist/resonate.d.ts.map +1 -1
- package/dist/resonate.js +144 -60
- package/dist/resonate.js.map +1 -1
- package/package.json +1 -1
package/dist/core/execution.js
CHANGED
|
@@ -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
|
-
|
|
41
|
-
|
|
42
|
-
return
|
|
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
|
-
|
|
51
|
-
constructor(invocation, func,
|
|
52
|
-
super(invocation);
|
|
66
|
+
durablePromise;
|
|
67
|
+
constructor(resonate, invocation, func, durablePromise) {
|
|
68
|
+
super(resonate, invocation);
|
|
53
69
|
this.func = func;
|
|
54
|
-
this.
|
|
70
|
+
this.durablePromise = durablePromise;
|
|
55
71
|
}
|
|
56
72
|
async fork() {
|
|
57
73
|
try {
|
|
58
|
-
//
|
|
59
|
-
|
|
60
|
-
|
|
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
|
-
|
|
70
|
-
|
|
71
|
-
this.
|
|
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
|
|
74
|
-
|
|
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.
|
|
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
|
-
|
|
136
|
-
|
|
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
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
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(
|
|
211
|
+
async resolve(value) {
|
|
163
212
|
try {
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
this.
|
|
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
|
|
171
|
-
|
|
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(
|
|
234
|
+
async reject(error) {
|
|
181
235
|
try {
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
this.
|
|
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
|
|
189
|
-
|
|
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":";;;
|
|
1
|
+
{"version":3,"file":"execution.js","sourceRoot":"","sources":["../../lib/core/execution.ts"],"names":[],"mappings":"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"}
|
package/dist/core/future.d.ts
CHANGED
|
@@ -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
|
|
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,
|
|
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"}
|
package/dist/core/future.js
CHANGED
|
@@ -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 };
|
package/dist/core/future.js.map
CHANGED
|
@@ -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,
|
|
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,
|
|
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"}
|
package/dist/core/invocation.js
CHANGED
|
@@ -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,
|
|
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
|
-
|
|
54
|
-
|
|
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
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
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,
|
|
1
|
+
{"version":3,"file":"invocation.js","sourceRoot":"","sources":["../../lib/core/invocation.ts"],"names":[],"mappings":"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"}
|
package/dist/core/options.d.ts
CHANGED
|
@@ -5,7 +5,7 @@ import { IStore } from "./store";
|
|
|
5
5
|
/**
|
|
6
6
|
* Resonate configuration options.
|
|
7
7
|
*/
|
|
8
|
-
export
|
|
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
|
|
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
|
-
*
|
|
60
|
-
|
|
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
|
|
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,
|
|
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"}
|
package/dist/core/options.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
function
|
|
3
|
+
exports.isOptions = void 0;
|
|
4
|
+
function isOptions(o) {
|
|
5
5
|
return typeof o === "object" && o !== null && o.__resonate === true;
|
|
6
6
|
}
|
|
7
|
-
exports.
|
|
7
|
+
exports.isOptions = isOptions;
|
|
8
8
|
//# sourceMappingURL=options.js.map
|
package/dist/core/options.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.js","sourceRoot":"","sources":["../../lib/core/options.ts"],"names":[],"mappings":";;;
|
|
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"}
|