@resonatehq/sdk 0.5.3 → 0.5.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/async.d.ts +23 -5
- package/dist/async.d.ts.map +1 -1
- package/dist/async.js +94 -22
- package/dist/async.js.map +1 -1
- package/dist/core/calls.d.ts +23 -0
- package/dist/core/calls.d.ts.map +1 -0
- package/dist/core/calls.js +13 -0
- package/dist/core/calls.js.map +1 -0
- package/dist/core/encoders/json.d.ts.map +1 -1
- package/dist/core/encoders/json.js +12 -0
- package/dist/core/encoders/json.js.map +1 -1
- package/dist/core/execution.d.ts +0 -10
- package/dist/core/execution.d.ts.map +1 -1
- package/dist/core/execution.js +10 -105
- package/dist/core/execution.js.map +1 -1
- package/dist/core/invocation.d.ts +4 -7
- package/dist/core/invocation.d.ts.map +1 -1
- package/dist/core/invocation.js +6 -28
- package/dist/core/invocation.js.map +1 -1
- package/dist/core/options.d.ts +10 -8
- package/dist/core/options.d.ts.map +1 -1
- package/dist/core/options.js.map +1 -1
- package/dist/core/promises/promises.d.ts +2 -2
- package/dist/core/promises/promises.d.ts.map +1 -1
- package/dist/core/promises/promises.js +2 -1
- package/dist/core/promises/promises.js.map +1 -1
- package/dist/core/promises/types.d.ts +10 -83
- package/dist/core/promises/types.d.ts.map +1 -1
- package/dist/core/promises/types.js +10 -10
- package/dist/core/promises/types.js.map +1 -1
- package/dist/core/retry.d.ts +35 -26
- package/dist/core/retry.d.ts.map +1 -1
- package/dist/core/retry.js +111 -14
- package/dist/core/retry.js.map +1 -1
- package/dist/core/storages/memory.d.ts.map +1 -1
- package/dist/core/storages/memory.js +2 -0
- package/dist/core/storages/memory.js.map +1 -1
- package/dist/core/storages/withTimeout.d.ts +6 -6
- package/dist/core/storages/withTimeout.d.ts.map +1 -1
- package/dist/core/storages/withTimeout.js +2 -13
- package/dist/core/storages/withTimeout.js.map +1 -1
- package/dist/core/store.d.ts +7 -7
- package/dist/core/store.d.ts.map +1 -1
- package/dist/core/stores/local.d.ts +9 -9
- package/dist/core/stores/local.d.ts.map +1 -1
- 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 +15 -6
- package/dist/core/stores/remote.js.map +1 -1
- package/dist/core/utils.d.ts +27 -0
- package/dist/core/utils.d.ts.map +1 -1
- package/dist/core/utils.js +37 -1
- package/dist/core/utils.js.map +1 -1
- package/dist/index.d.ts +1 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -7
- package/dist/index.js.map +1 -1
- package/dist/resonate.d.ts +10 -15
- package/dist/resonate.d.ts.map +1 -1
- package/dist/resonate.js +71 -44
- package/dist/resonate.js.map +1 -1
- package/package.json +1 -1
- package/dist/core/retries/retry.d.ts +0 -20
- package/dist/core/retries/retry.d.ts.map +0 -1
- package/dist/core/retries/retry.js +0 -41
- package/dist/core/retries/retry.js.map +0 -1
- package/dist/generator.d.ts +0 -208
- package/dist/generator.d.ts.map +0 -1
- package/dist/generator.js +0 -427
- package/dist/generator.js.map +0 -1
package/dist/async.d.ts
CHANGED
|
@@ -1,12 +1,10 @@
|
|
|
1
|
+
import { Func, LFC, Params, Return, RFC } from "./core/calls";
|
|
1
2
|
import { ResonatePromise } from "./core/future";
|
|
2
3
|
import { Invocation } from "./core/invocation";
|
|
3
4
|
import { ResonateOptions, Options, PartialOptions } from "./core/options";
|
|
4
5
|
import { DurablePromise } from "./core/promises/promises";
|
|
5
6
|
import * as schedules from "./core/schedules/schedules";
|
|
6
7
|
import { ResonateBase } from "./resonate";
|
|
7
|
-
export type Func = (ctx: Context, ...args: any[]) => any;
|
|
8
|
-
export type Params<F> = F extends (ctx: any, ...args: infer P) => any ? P : never;
|
|
9
|
-
export type Return<F> = F extends (...args: any[]) => infer T ? Awaited<T> : never;
|
|
10
8
|
export declare class Resonate extends ResonateBase {
|
|
11
9
|
private scheduler;
|
|
12
10
|
/**
|
|
@@ -16,7 +14,7 @@ export declare class Resonate extends ResonateBase {
|
|
|
16
14
|
* @param opts - A partial {@link ResonateOptions} object.
|
|
17
15
|
*/
|
|
18
16
|
constructor(opts?: Partial<ResonateOptions>);
|
|
19
|
-
protected execute<F extends Func>(name: string, id: string, func: F, args: Params<F>, opts: Options,
|
|
17
|
+
protected execute<F extends Func>(name: string, id: string, func: F, args: Params<F>, opts: Options, durablePromise?: DurablePromise<any>): ResonatePromise<Return<F>>;
|
|
20
18
|
/**
|
|
21
19
|
* Register a function with Resonate. Registered functions can be invoked by calling {@link run}, or by the returned function.
|
|
22
20
|
*
|
|
@@ -102,6 +100,14 @@ export declare class Context {
|
|
|
102
100
|
* @returns A promise that resolves to the return value of the function.
|
|
103
101
|
*/
|
|
104
102
|
run<F extends Func>(func: F, ...args: [...Params<F>, PartialOptions?]): ResonatePromise<Return<F>>;
|
|
103
|
+
/**
|
|
104
|
+
* Invoke a Local Function Call (LFC).
|
|
105
|
+
*
|
|
106
|
+
* @template F - A type extending Function
|
|
107
|
+
* @param {LFC} lfc - The Local Function Call configuration
|
|
108
|
+
* @returns {ReturnType<F>} The result of the function execution
|
|
109
|
+
*/
|
|
110
|
+
run<F extends Func>(lfc: LFC<F>): ResonatePromise<Return<F>>;
|
|
105
111
|
/**
|
|
106
112
|
* Invoke a remote function.
|
|
107
113
|
*
|
|
@@ -113,7 +119,18 @@ export declare class Context {
|
|
|
113
119
|
*/
|
|
114
120
|
run<T>(func: string, args: any, opts?: PartialOptions): ResonatePromise<T>;
|
|
115
121
|
/**
|
|
116
|
-
* Invoke a
|
|
122
|
+
* Invoke a Remote Function Call (RFC).
|
|
123
|
+
*
|
|
124
|
+
* @param {RFC} rfc - The Remote Function Call configuration
|
|
125
|
+
* @returns {ResonatePromise<T>} A promise that resolves with the result of the remote execution
|
|
126
|
+
*
|
|
127
|
+
* @description
|
|
128
|
+
* This function takes a Remote Function Call (RFC) configuration and executes the specified function
|
|
129
|
+
* remotely with the provided options.
|
|
130
|
+
*/
|
|
131
|
+
run<T>(rfc: RFC): ResonatePromise<T>;
|
|
132
|
+
/**
|
|
133
|
+
* Invoke a remote function without arguments.
|
|
117
134
|
*
|
|
118
135
|
* @template T The return type of the remote function.
|
|
119
136
|
* @param func The id of the remote function.
|
|
@@ -121,6 +138,7 @@ export declare class Context {
|
|
|
121
138
|
* @returns A promise that resolves to the resolved value of the remote function.
|
|
122
139
|
*/
|
|
123
140
|
run<T>(func: string, opts?: PartialOptions): ResonatePromise<T>;
|
|
141
|
+
private _run;
|
|
124
142
|
/**
|
|
125
143
|
* Creates a Promise that is resolved with an array of results when all of the provided Promises
|
|
126
144
|
* resolve, or rejected when any Promise is rejected.
|
package/dist/async.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"async.d.ts","sourceRoot":"","sources":["../lib/async.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"async.d.ts","sourceRoot":"","sources":["../lib/async.ts"],"names":[],"mappings":"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"}
|
package/dist/async.js
CHANGED
|
@@ -1,11 +1,39 @@
|
|
|
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
|
+
};
|
|
2
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
26
|
exports.Context = exports.Resonate = void 0;
|
|
27
|
+
const calls_1 = require("./core/calls");
|
|
4
28
|
const execution_1 = require("./core/execution");
|
|
5
29
|
const invocation_1 = require("./core/invocation");
|
|
6
|
-
const
|
|
30
|
+
const retryPolicy = __importStar(require("./core/retry"));
|
|
31
|
+
const utils = __importStar(require("./core/utils"));
|
|
7
32
|
const resonate_1 = require("./resonate");
|
|
8
33
|
/////////////////////////////////////////////////////////////////////
|
|
34
|
+
// Types
|
|
35
|
+
/////////////////////////////////////////////////////////////////////
|
|
36
|
+
/////////////////////////////////////////////////////////////////////
|
|
9
37
|
// Resonate
|
|
10
38
|
/////////////////////////////////////////////////////////////////////
|
|
11
39
|
class Resonate extends resonate_1.ResonateBase {
|
|
@@ -20,8 +48,8 @@ class Resonate extends resonate_1.ResonateBase {
|
|
|
20
48
|
super(opts);
|
|
21
49
|
this.scheduler = new Scheduler(this);
|
|
22
50
|
}
|
|
23
|
-
execute(name, id, func, args, opts,
|
|
24
|
-
return this.scheduler.add(name, id, func, args, opts,
|
|
51
|
+
execute(name, id, func, args, opts, durablePromise) {
|
|
52
|
+
return this.scheduler.add(name, id, func, args, opts, durablePromise);
|
|
25
53
|
}
|
|
26
54
|
/**
|
|
27
55
|
* Register a function with Resonate. Registered functions can be invoked by calling {@link run}, or by the returned function.
|
|
@@ -109,25 +137,68 @@ class Context {
|
|
|
109
137
|
get version() {
|
|
110
138
|
return this.invocation.root.opts.version;
|
|
111
139
|
}
|
|
112
|
-
run(
|
|
140
|
+
run(funcOrFc, ...argsWithOpts) {
|
|
141
|
+
// Function with args and possibly options
|
|
142
|
+
if (typeof funcOrFc === "function") {
|
|
143
|
+
const { args, opts } = utils.split(argsWithOpts);
|
|
144
|
+
const lfc = {
|
|
145
|
+
func: funcOrFc,
|
|
146
|
+
args,
|
|
147
|
+
opts: opts,
|
|
148
|
+
};
|
|
149
|
+
return this._run(lfc);
|
|
150
|
+
}
|
|
151
|
+
// String (function name) with args and possibly options
|
|
152
|
+
if (typeof funcOrFc === "string") {
|
|
153
|
+
const funcName = funcOrFc;
|
|
154
|
+
const { args, opts } = utils.split(argsWithOpts);
|
|
155
|
+
const rfc = {
|
|
156
|
+
funcName,
|
|
157
|
+
args,
|
|
158
|
+
opts,
|
|
159
|
+
};
|
|
160
|
+
return this._run(rfc);
|
|
161
|
+
}
|
|
162
|
+
// We are sure it is an FC
|
|
163
|
+
return this._run(funcOrFc);
|
|
164
|
+
}
|
|
165
|
+
_run(fc) {
|
|
113
166
|
// the parent is the current invocation
|
|
114
167
|
const parent = this.invocation;
|
|
168
|
+
// human readable name of the function
|
|
169
|
+
let name;
|
|
115
170
|
// the id is either:
|
|
116
171
|
// 1. a provided string in the case of a deferred execution
|
|
117
172
|
// 2. a generated string in the case of an ordinary execution
|
|
118
|
-
|
|
119
|
-
//
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
173
|
+
let id;
|
|
174
|
+
// Params to store with the durable promise. For RemoteExecutions we just encode the
|
|
175
|
+
// given arg(s). Otherwise we store nothing since it is unncesary.
|
|
176
|
+
let param;
|
|
177
|
+
if ((0, calls_1.isRFC)(fc)) {
|
|
178
|
+
name = fc.funcName;
|
|
179
|
+
id = name;
|
|
180
|
+
param = fc.args;
|
|
181
|
+
}
|
|
182
|
+
else {
|
|
183
|
+
name = fc.func.name;
|
|
184
|
+
id = `${parent.id}.${parent.counter}.${name}`;
|
|
185
|
+
param = undefined;
|
|
186
|
+
}
|
|
187
|
+
const registeredOptions = this.resonate.registeredOptions(this.invocation.root.name, this.invocation.root.opts.version);
|
|
188
|
+
const resonateOptions = this.resonate.defaults();
|
|
189
|
+
const opts = {
|
|
190
|
+
...resonateOptions,
|
|
191
|
+
...registeredOptions,
|
|
192
|
+
...fc.opts,
|
|
193
|
+
};
|
|
194
|
+
// Merge the tags
|
|
195
|
+
opts.tags = { ...resonateOptions.tags, ...registeredOptions.tags, ...fc.opts?.tags };
|
|
196
|
+
// Default lock is false for children execution
|
|
197
|
+
opts.lock = opts.lock ?? false;
|
|
127
198
|
// create a new invocation
|
|
128
|
-
const invocation = new invocation_1.Invocation(name, id, undefined, param, opts,
|
|
199
|
+
const invocation = new invocation_1.Invocation(name, id, undefined, param, opts, parent);
|
|
129
200
|
let execution;
|
|
130
|
-
if (
|
|
201
|
+
if ((0, calls_1.isRFC)(fc)) {
|
|
131
202
|
// create a deferred execution
|
|
132
203
|
// this execution will be fulfilled out-of-process
|
|
133
204
|
execution = new execution_1.DeferredExecution(this.resonate, invocation);
|
|
@@ -136,7 +207,7 @@ class Context {
|
|
|
136
207
|
// create an ordinary execution
|
|
137
208
|
// this execution wraps a user-provided function
|
|
138
209
|
const ctx = new Context(this.resonate, invocation);
|
|
139
|
-
execution = new execution_1.OrdinaryExecution(this.resonate, invocation, () => func(ctx, ...args));
|
|
210
|
+
execution = new execution_1.OrdinaryExecution(this.resonate, invocation, () => fc.func(ctx, ...(fc.args ?? [])));
|
|
140
211
|
}
|
|
141
212
|
// bump the counter
|
|
142
213
|
parent.counter++;
|
|
@@ -162,7 +233,7 @@ class Context {
|
|
|
162
233
|
}
|
|
163
234
|
// prettier-ignore
|
|
164
235
|
return this.run(() => Promise.all(values), this.options({
|
|
165
|
-
retry:
|
|
236
|
+
retry: retryPolicy.never(),
|
|
166
237
|
...opts,
|
|
167
238
|
}));
|
|
168
239
|
}
|
|
@@ -185,7 +256,7 @@ class Context {
|
|
|
185
256
|
}
|
|
186
257
|
// prettier-ignore
|
|
187
258
|
return this.run(() => Promise.any(values), this.options({
|
|
188
|
-
retry:
|
|
259
|
+
retry: retryPolicy.never(),
|
|
189
260
|
...opts,
|
|
190
261
|
}));
|
|
191
262
|
}
|
|
@@ -208,7 +279,7 @@ class Context {
|
|
|
208
279
|
}
|
|
209
280
|
// prettier-ignore
|
|
210
281
|
return this.run(() => Promise.race(values), this.options({
|
|
211
|
-
retry:
|
|
282
|
+
retry: retryPolicy.never(),
|
|
212
283
|
...opts,
|
|
213
284
|
}));
|
|
214
285
|
}
|
|
@@ -231,7 +302,7 @@ class Context {
|
|
|
231
302
|
}
|
|
232
303
|
// prettier-ignore
|
|
233
304
|
return this.run(() => Promise.allSettled(values), this.options({
|
|
234
|
-
retry:
|
|
305
|
+
retry: retryPolicy.never(),
|
|
235
306
|
...opts,
|
|
236
307
|
}));
|
|
237
308
|
}
|
|
@@ -304,7 +375,7 @@ class Scheduler {
|
|
|
304
375
|
constructor(resonate) {
|
|
305
376
|
this.resonate = resonate;
|
|
306
377
|
}
|
|
307
|
-
add(name, id, func, args, opts,
|
|
378
|
+
add(name, id, func, args, opts, durablePromise) {
|
|
308
379
|
// if the execution is already running, and not killed,
|
|
309
380
|
// return the promise
|
|
310
381
|
if (opts.durable && this.cache[id] && !this.cache[id].killed) {
|
|
@@ -315,10 +386,11 @@ class Scheduler {
|
|
|
315
386
|
const param = {
|
|
316
387
|
func: name,
|
|
317
388
|
version: opts.version,
|
|
389
|
+
retryPolicy: opts.retry,
|
|
318
390
|
args,
|
|
319
391
|
};
|
|
320
392
|
// create a new invocation
|
|
321
|
-
const invocation = new invocation_1.Invocation(name, id, undefined, param, opts
|
|
393
|
+
const invocation = new invocation_1.Invocation(name, id, undefined, param, opts);
|
|
322
394
|
// create a new execution
|
|
323
395
|
const ctx = new Context(this.resonate, invocation);
|
|
324
396
|
const execution = new execution_1.OrdinaryExecution(this.resonate, invocation, () => func(ctx, ...args), durablePromise);
|
package/dist/async.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"async.js","sourceRoot":"","sources":["../lib/async.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"async.js","sourceRoot":"","sources":["../lib/async.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Context } from "..";
|
|
2
|
+
import { Options } from "./options";
|
|
3
|
+
export type Func = (ctx: Context, ...args: any[]) => any;
|
|
4
|
+
export type Params<F> = F extends (ctx: any, ...args: infer P) => any ? P : never;
|
|
5
|
+
export type Return<F> = F extends (...args: any[]) => infer T ? Awaited<T> : never;
|
|
6
|
+
export type TFC = {
|
|
7
|
+
funcName: string;
|
|
8
|
+
id: string;
|
|
9
|
+
args?: any[];
|
|
10
|
+
optsOverrides?: Partial<Pick<Options, "durable" | "eidFn" | "idempotencyKeyFn" | "retry" | "tags" | "timeout" | "version">>;
|
|
11
|
+
};
|
|
12
|
+
export type RFC = {
|
|
13
|
+
funcName: string;
|
|
14
|
+
args?: any;
|
|
15
|
+
opts?: Partial<Options>;
|
|
16
|
+
};
|
|
17
|
+
export type LFC<F extends Func> = {
|
|
18
|
+
func: F;
|
|
19
|
+
args?: any[];
|
|
20
|
+
opts?: Partial<Options>;
|
|
21
|
+
};
|
|
22
|
+
export declare function isRFC(obj: any): obj is RFC;
|
|
23
|
+
//# sourceMappingURL=calls.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"calls.d.ts","sourceRoot":"","sources":["../../lib/core/calls.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAC7B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,MAAM,MAAM,IAAI,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;AAGzD,MAAM,MAAM,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC;AAGlF,MAAM,MAAM,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;AAGnF,MAAM,MAAM,GAAG,GAAG;IAEhB,QAAQ,EAAE,MAAM,CAAC;IAEjB,EAAE,EAAE,MAAM,CAAC;IAEX,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;IAIb,aAAa,CAAC,EAAE,OAAO,CACrB,IAAI,CAAC,OAAO,EAAE,SAAS,GAAG,OAAO,GAAG,kBAAkB,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,CAAC,CACnG,CAAC;CACH,CAAC;AAGF,MAAM,MAAM,GAAG,GAAG;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,IAAI,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;CACzB,CAAC;AAGF,MAAM,MAAM,GAAG,CAAC,CAAC,SAAS,IAAI,IAAI;IAChC,IAAI,EAAE,CAAC,CAAC;IACR,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;IACb,IAAI,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;CACzB,CAAC;AAGF,wBAAgB,KAAK,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,GAAG,CAQ1C"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isRFC = void 0;
|
|
4
|
+
// Type guard for RFC
|
|
5
|
+
function isRFC(obj) {
|
|
6
|
+
return (typeof obj === "object" &&
|
|
7
|
+
obj !== null &&
|
|
8
|
+
typeof obj.funcName === "string" &&
|
|
9
|
+
(obj.args === undefined || typeof obj.args === "object") &&
|
|
10
|
+
(obj.opts === undefined || (typeof obj.opts === "object" && obj.opts !== null)));
|
|
11
|
+
}
|
|
12
|
+
exports.isRFC = isRFC;
|
|
13
|
+
//# sourceMappingURL=calls.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"calls.js","sourceRoot":"","sources":["../../lib/core/calls.ts"],"names":[],"mappings":";;;AA0CA,qBAAqB;AACrB,SAAgB,KAAK,CAAC,GAAQ;IAC5B,OAAO,CACL,OAAO,GAAG,KAAK,QAAQ;QACvB,GAAG,KAAK,IAAI;QACZ,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ;QAChC,CAAC,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC;QACxD,CAAC,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAChF,CAAC;AACJ,CAAC;AARD,sBAQC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json.d.ts","sourceRoot":"","sources":["../../../lib/core/encoders/json.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGtC,qBAAa,WAAY,YAAW,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IACvE,MAAM,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS;
|
|
1
|
+
{"version":3,"file":"json.d.ts","sourceRoot":"","sources":["../../../lib/core/encoders/json.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGtC,qBAAa,WAAY,YAAW,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IACvE,MAAM,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS;IAmDzC,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO;CA+B1C"}
|
|
@@ -10,6 +10,12 @@ class JSONEncoder {
|
|
|
10
10
|
return undefined;
|
|
11
11
|
}
|
|
12
12
|
return JSON.stringify(data, (_, value) => {
|
|
13
|
+
if (value === Infinity) {
|
|
14
|
+
return "Infinity";
|
|
15
|
+
}
|
|
16
|
+
if (value === -Infinity) {
|
|
17
|
+
return "-Infinity";
|
|
18
|
+
}
|
|
13
19
|
if (value instanceof AggregateError) {
|
|
14
20
|
return {
|
|
15
21
|
__type: "aggregate_error",
|
|
@@ -48,6 +54,12 @@ class JSONEncoder {
|
|
|
48
54
|
return undefined;
|
|
49
55
|
}
|
|
50
56
|
return JSON.parse(data, (_, value) => {
|
|
57
|
+
if (value === "Infinity") {
|
|
58
|
+
return Infinity;
|
|
59
|
+
}
|
|
60
|
+
if (value === "-Infinity") {
|
|
61
|
+
return Infinity;
|
|
62
|
+
}
|
|
51
63
|
if (value?.__type === "aggregate_error") {
|
|
52
64
|
return Object.assign(new AggregateError(value.errors, value.message), value);
|
|
53
65
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json.js","sourceRoot":"","sources":["../../../lib/core/encoders/json.ts"],"names":[],"mappings":";;;AACA,sCAA0C;AAE1C,MAAa,WAAW;IACtB,MAAM,CAAC,IAAa;QAClB,wBAAwB;QACxB,sEAAsE;QACtE,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE;YACvC,IAAI,KAAK,YAAY,cAAc,EAAE,CAAC;gBACpC,OAAO;oBACL,MAAM,EAAE,iBAAiB;oBACzB,OAAO,EAAE,KAAK,CAAC,OAAO;oBACtB,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,MAAM,EAAE,KAAK,CAAC,MAAM;iBACrB,CAAC;YACJ,CAAC;YAED,IAAI,KAAK,YAAY,sBAAa,EAAE,CAAC;gBACnC,OAAO;oBACL,MAAM,EAAE,gBAAgB;oBACxB,OAAO,EAAE,KAAK,CAAC,OAAO;oBACtB,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,SAAS,EAAE,KAAK,CAAC,SAAS;iBAC3B,CAAC;YACJ,CAAC;YAED,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;gBAC3B,OAAO;oBACL,MAAM,EAAE,OAAO;oBACf,OAAO,EAAE,KAAK,CAAC,OAAO;oBACtB,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,IAAI,EAAE,KAAK,CAAC,IAAI;iBACjB,CAAC;YACJ,CAAC;YAED,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CAAC,IAAwB;QAC7B,wBAAwB;QACxB,wEAAwE;QACxE,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE;YACnC,IAAI,KAAK,EAAE,MAAM,KAAK,iBAAiB,EAAE,CAAC;gBACxC,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,cAAc,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,CAAC;YAC/E,CAAC;YAED,IAAI,KAAK,EAAE,MAAM,KAAK,gBAAgB,EAAE,CAAC;gBACvC,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,sBAAa,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC,CAAC;YAC1G,CAAC;YAED,IAAI,KAAK,EAAE,MAAM,KAAK,OAAO,EAAE,CAAC;gBAC9B,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,CAAC;YACxD,CAAC;YAED,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CAAC;IACL,CAAC;CACF;
|
|
1
|
+
{"version":3,"file":"json.js","sourceRoot":"","sources":["../../../lib/core/encoders/json.ts"],"names":[],"mappings":"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"}
|
package/dist/core/execution.d.ts
CHANGED
|
@@ -34,14 +34,4 @@ export declare class DeferredExecution<T> extends Execution<T> {
|
|
|
34
34
|
protected fork(): Promise<Future<T>>;
|
|
35
35
|
protected join(future: Future<T>): Promise<T>;
|
|
36
36
|
}
|
|
37
|
-
export declare class GeneratorExecution<T> extends Execution<T> {
|
|
38
|
-
generator: Generator<any, 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>;
|
|
44
|
-
protected fork(): Promise<Future<T>>;
|
|
45
|
-
protected join(future: Future<T>): Promise<T>;
|
|
46
|
-
}
|
|
47
37
|
//# sourceMappingURL=execution.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
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;
|
|
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;AAOrD,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;cAiCJ,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;cA6BJ,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CAcvC"}
|
package/dist/core/execution.js
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.DeferredExecution = exports.OrdinaryExecution = exports.Execution = void 0;
|
|
4
4
|
const errors_1 = require("./errors");
|
|
5
5
|
const future_1 = require("./future");
|
|
6
6
|
const promises_1 = require("./promises/promises");
|
|
7
|
+
const retry_1 = require("./retry");
|
|
7
8
|
/////////////////////////////////////////////////////////////////////
|
|
8
9
|
// Execution
|
|
9
10
|
/////////////////////////////////////////////////////////////////////
|
|
@@ -76,17 +77,15 @@ class OrdinaryExecution extends Execution {
|
|
|
76
77
|
this.durablePromise = durablePromise;
|
|
77
78
|
}
|
|
78
79
|
async fork() {
|
|
79
|
-
if (this.invocation.opts.durable) {
|
|
80
|
+
if (this.invocation.opts.durable && !this.durablePromise) {
|
|
80
81
|
// if durable, create a durable promise
|
|
81
82
|
try {
|
|
82
|
-
this.durablePromise =
|
|
83
|
-
this.
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
tags: this.invocation.opts.tags,
|
|
89
|
-
}));
|
|
83
|
+
this.durablePromise = await promises_1.DurablePromise.create(this.resonate.store.promises, this.invocation.opts.encoder, this.invocation.id, this.invocation.timeout, {
|
|
84
|
+
idempotencyKey: this.invocation.idempotencyKey,
|
|
85
|
+
headers: this.invocation.headers,
|
|
86
|
+
param: this.invocation.param,
|
|
87
|
+
tags: this.invocation.opts.tags,
|
|
88
|
+
});
|
|
90
89
|
}
|
|
91
90
|
catch (e) {
|
|
92
91
|
// if an error occurs, kill the execution
|
|
@@ -160,7 +159,7 @@ class OrdinaryExecution extends Execution {
|
|
|
160
159
|
async run() {
|
|
161
160
|
let error;
|
|
162
161
|
// invoke the function according to the retry policy
|
|
163
|
-
for (const delay of
|
|
162
|
+
for (const delay of (0, retry_1.retryIterator)(this.invocation)) {
|
|
164
163
|
await new Promise((resolve) => setTimeout(resolve, delay));
|
|
165
164
|
try {
|
|
166
165
|
return await this.func();
|
|
@@ -213,98 +212,4 @@ class DeferredExecution extends Execution {
|
|
|
213
212
|
}
|
|
214
213
|
}
|
|
215
214
|
exports.DeferredExecution = DeferredExecution;
|
|
216
|
-
class GeneratorExecution extends Execution {
|
|
217
|
-
generator;
|
|
218
|
-
durablePromise;
|
|
219
|
-
constructor(resonate, invocation, generator, durablePromise) {
|
|
220
|
-
super(resonate, invocation);
|
|
221
|
-
this.generator = generator;
|
|
222
|
-
this.durablePromise = durablePromise;
|
|
223
|
-
}
|
|
224
|
-
async create() {
|
|
225
|
-
try {
|
|
226
|
-
if (this.invocation.opts.durable) {
|
|
227
|
-
// create a durable promise
|
|
228
|
-
this.durablePromise =
|
|
229
|
-
this.durablePromise ??
|
|
230
|
-
(await promises_1.DurablePromise.create(this.resonate.store.promises, this.invocation.opts.encoder, this.invocation.id, this.invocation.timeout, {
|
|
231
|
-
idempotencyKey: this.invocation.idempotencyKey,
|
|
232
|
-
headers: this.invocation.headers,
|
|
233
|
-
param: this.invocation.param,
|
|
234
|
-
tags: this.invocation.opts.tags,
|
|
235
|
-
}));
|
|
236
|
-
// resolve/reject the invocation if already completed
|
|
237
|
-
if (this.durablePromise.resolved) {
|
|
238
|
-
this.invocation.resolve(this.durablePromise.value());
|
|
239
|
-
}
|
|
240
|
-
else if (this.durablePromise.rejected || this.durablePromise.canceled || this.durablePromise.timedout) {
|
|
241
|
-
this.invocation.reject(this.durablePromise.error());
|
|
242
|
-
}
|
|
243
|
-
}
|
|
244
|
-
if (this.durablePromise) {
|
|
245
|
-
// override the invocation creation time
|
|
246
|
-
this.invocation.createdOn = this.durablePromise.createdOn;
|
|
247
|
-
// override the invocation timeout
|
|
248
|
-
this.invocation.timeout = this.durablePromise.timeout;
|
|
249
|
-
}
|
|
250
|
-
}
|
|
251
|
-
catch (e) {
|
|
252
|
-
// if an error occurs, kill the execution
|
|
253
|
-
this.kill(e);
|
|
254
|
-
}
|
|
255
|
-
}
|
|
256
|
-
async resolve(value) {
|
|
257
|
-
try {
|
|
258
|
-
if (this.durablePromise) {
|
|
259
|
-
// resolve the durable promise if the invocation is durable
|
|
260
|
-
await this.durablePromise.resolve(value, { idempotencyKey: this.invocation.idempotencyKey });
|
|
261
|
-
// resolve/reject the invocation
|
|
262
|
-
if (this.durablePromise.resolved) {
|
|
263
|
-
this.invocation.resolve(this.durablePromise.value());
|
|
264
|
-
}
|
|
265
|
-
else if (this.durablePromise.rejected || this.durablePromise.canceled || this.durablePromise.timedout) {
|
|
266
|
-
this.invocation.reject(this.durablePromise.error());
|
|
267
|
-
}
|
|
268
|
-
}
|
|
269
|
-
else {
|
|
270
|
-
// if not durable, just resolve the invocation
|
|
271
|
-
this.invocation.resolve(value);
|
|
272
|
-
}
|
|
273
|
-
}
|
|
274
|
-
catch (e) {
|
|
275
|
-
// if an error occurs, kill the execution
|
|
276
|
-
this.kill(e);
|
|
277
|
-
}
|
|
278
|
-
}
|
|
279
|
-
async reject(error) {
|
|
280
|
-
try {
|
|
281
|
-
if (this.durablePromise) {
|
|
282
|
-
// reject the durable promise if the invocation is durable
|
|
283
|
-
await this.durablePromise.reject(error, { idempotencyKey: this.invocation.idempotencyKey });
|
|
284
|
-
// resolve/reject the invocation
|
|
285
|
-
if (this.durablePromise.resolved) {
|
|
286
|
-
this.invocation.resolve(this.durablePromise.value());
|
|
287
|
-
}
|
|
288
|
-
else if (this.durablePromise.rejected || this.durablePromise.canceled || this.durablePromise.timedout) {
|
|
289
|
-
this.invocation.reject(this.durablePromise.error());
|
|
290
|
-
}
|
|
291
|
-
}
|
|
292
|
-
else {
|
|
293
|
-
// if not durable, just reject the invocation
|
|
294
|
-
this.invocation.reject(error);
|
|
295
|
-
}
|
|
296
|
-
}
|
|
297
|
-
catch (e) {
|
|
298
|
-
// if an error occurs, kill the execution
|
|
299
|
-
this.kill(e);
|
|
300
|
-
}
|
|
301
|
-
}
|
|
302
|
-
async fork() {
|
|
303
|
-
return this.invocation.future;
|
|
304
|
-
}
|
|
305
|
-
async join(future) {
|
|
306
|
-
return await future.promise;
|
|
307
|
-
}
|
|
308
|
-
}
|
|
309
|
-
exports.GeneratorExecution = GeneratorExecution;
|
|
310
215
|
//# sourceMappingURL=execution.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execution.js","sourceRoot":"","sources":["../../lib/core/execution.ts"],"names":[],"mappings":";;;AACA,qCAAqD;AACrD,qCAAmD;AAEnD,kDAAqD;
|
|
1
|
+
{"version":3,"file":"execution.js","sourceRoot":"","sources":["../../lib/core/execution.ts"],"names":[],"mappings":"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"}
|