@resonatehq/sdk 0.6.3 → 0.7.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 (202) hide show
  1. package/README.md +24 -45
  2. package/dist/dev/network.d.ts +16 -0
  3. package/dist/dev/network.d.ts.map +1 -0
  4. package/dist/dev/network.js +89 -0
  5. package/dist/dev/network.js.map +1 -0
  6. package/dist/dev/server.d.ts +87 -0
  7. package/dist/dev/server.d.ts.map +1 -0
  8. package/dist/dev/server.js +891 -0
  9. package/dist/dev/server.js.map +1 -0
  10. package/dist/sim/example-1.d.ts +2 -0
  11. package/dist/sim/example-1.d.ts.map +1 -0
  12. package/dist/sim/example-1.js +94 -0
  13. package/dist/sim/example-1.js.map +1 -0
  14. package/dist/sim/example-2.d.ts +2 -0
  15. package/dist/sim/example-2.d.ts.map +1 -0
  16. package/dist/sim/example-2.js +95 -0
  17. package/dist/sim/example-2.js.map +1 -0
  18. package/dist/sim/example-3.d.ts +2 -0
  19. package/dist/sim/example-3.d.ts.map +1 -0
  20. package/dist/sim/example-3.js +95 -0
  21. package/dist/sim/example-3.js.map +1 -0
  22. package/dist/sim/main.d.ts +14 -0
  23. package/dist/sim/main.d.ts.map +1 -0
  24. package/dist/sim/main.js +206 -0
  25. package/dist/sim/main.js.map +1 -0
  26. package/dist/sim/src/server.d.ts +15 -0
  27. package/dist/sim/src/server.d.ts.map +1 -0
  28. package/dist/sim/src/server.js +85 -0
  29. package/dist/sim/src/server.js.map +1 -0
  30. package/dist/sim/src/simulator.d.ts +65 -0
  31. package/dist/sim/src/simulator.d.ts.map +1 -0
  32. package/dist/sim/src/simulator.js +235 -0
  33. package/dist/sim/src/simulator.js.map +1 -0
  34. package/dist/sim/src/worker.d.ts +22 -0
  35. package/dist/sim/src/worker.d.ts.map +1 -0
  36. package/dist/sim/src/worker.js +175 -0
  37. package/dist/sim/src/worker.js.map +1 -0
  38. package/dist/src/clock.d.ts +11 -0
  39. package/dist/src/clock.d.ts.map +1 -0
  40. package/dist/src/clock.js +17 -0
  41. package/dist/src/clock.js.map +1 -0
  42. package/dist/src/computation.d.ts +40 -0
  43. package/dist/src/computation.d.ts.map +1 -0
  44. package/dist/src/computation.js +225 -0
  45. package/dist/src/computation.js.map +1 -0
  46. package/dist/src/context.d.ts +120 -0
  47. package/dist/src/context.d.ts.map +1 -0
  48. package/dist/src/context.js +288 -0
  49. package/dist/src/context.js.map +1 -0
  50. package/dist/src/coroutine.d.ts +35 -0
  51. package/dist/src/coroutine.d.ts.map +1 -0
  52. package/dist/src/coroutine.js +251 -0
  53. package/dist/src/coroutine.js.map +1 -0
  54. package/dist/src/decorator.d.ts +14 -0
  55. package/dist/src/decorator.d.ts.map +1 -0
  56. package/dist/src/decorator.js +208 -0
  57. package/dist/src/decorator.js.map +1 -0
  58. package/dist/src/handler.d.ts +40 -0
  59. package/dist/src/handler.d.ts.map +1 -0
  60. package/dist/src/handler.js +198 -0
  61. package/dist/src/handler.js.map +1 -0
  62. package/dist/src/heartbeat.d.ts +22 -0
  63. package/dist/src/heartbeat.d.ts.map +1 -0
  64. package/dist/src/heartbeat.js +87 -0
  65. package/dist/src/heartbeat.js.map +1 -0
  66. package/dist/src/index.d.ts +8 -0
  67. package/dist/src/index.d.ts.map +1 -0
  68. package/dist/src/index.js +25 -0
  69. package/dist/src/index.js.map +1 -0
  70. package/dist/src/network/network.d.ts +216 -0
  71. package/dist/src/network/network.d.ts.map +1 -0
  72. package/dist/{core/logger.js → src/network/network.js} +2 -1
  73. package/dist/src/network/network.js.map +1 -0
  74. package/dist/src/network/remote.d.ts +67 -0
  75. package/dist/src/network/remote.d.ts.map +1 -0
  76. package/dist/src/network/remote.js +514 -0
  77. package/dist/src/network/remote.js.map +1 -0
  78. package/dist/src/nursery.d.ts +19 -0
  79. package/dist/src/nursery.d.ts.map +1 -0
  80. package/dist/src/nursery.js +102 -0
  81. package/dist/src/nursery.js.map +1 -0
  82. package/dist/src/processor/processor.d.ts +11 -0
  83. package/dist/src/processor/processor.d.ts.map +1 -0
  84. package/dist/src/processor/processor.js +24 -0
  85. package/dist/src/processor/processor.js.map +1 -0
  86. package/dist/src/promises.d.ts +23 -0
  87. package/dist/src/promises.d.ts.map +1 -0
  88. package/dist/src/promises.js +157 -0
  89. package/dist/src/promises.js.map +1 -0
  90. package/dist/src/registry.d.ts +15 -0
  91. package/dist/src/registry.d.ts.map +1 -0
  92. package/dist/src/registry.js +26 -0
  93. package/dist/src/registry.js.map +1 -0
  94. package/dist/src/resonate-inner.d.ts +45 -0
  95. package/dist/src/resonate-inner.d.ts.map +1 -0
  96. package/dist/src/resonate-inner.js +157 -0
  97. package/dist/src/resonate-inner.js.map +1 -0
  98. package/dist/src/resonate.d.ts +92 -0
  99. package/dist/src/resonate.d.ts.map +1 -0
  100. package/dist/src/resonate.js +240 -0
  101. package/dist/src/resonate.js.map +1 -0
  102. package/dist/src/schedules.d.ts +9 -0
  103. package/dist/src/schedules.d.ts.map +1 -0
  104. package/dist/src/schedules.js +65 -0
  105. package/dist/src/schedules.js.map +1 -0
  106. package/dist/src/tasks.d.ts +9 -0
  107. package/dist/src/tasks.d.ts.map +1 -0
  108. package/dist/src/tasks.js +61 -0
  109. package/dist/src/tasks.js.map +1 -0
  110. package/dist/src/types.d.ts +86 -0
  111. package/dist/src/types.d.ts.map +1 -0
  112. package/dist/src/types.js +14 -0
  113. package/dist/src/types.js.map +1 -0
  114. package/dist/src/util.d.ts +14 -0
  115. package/dist/src/util.d.ts.map +1 -0
  116. package/dist/src/util.js +69 -0
  117. package/dist/src/util.js.map +1 -0
  118. package/dist/tsconfig.build.tsbuildinfo +1 -0
  119. package/package.json +51 -52
  120. package/dist/core/encoder.d.ts +0 -5
  121. package/dist/core/encoder.d.ts.map +0 -1
  122. package/dist/core/encoder.js +0 -3
  123. package/dist/core/encoder.js.map +0 -1
  124. package/dist/core/encoders/base64.d.ts +0 -6
  125. package/dist/core/encoders/base64.d.ts.map +0 -1
  126. package/dist/core/encoders/base64.js +0 -13
  127. package/dist/core/encoders/base64.js.map +0 -1
  128. package/dist/core/encoders/json.d.ts +0 -6
  129. package/dist/core/encoders/json.d.ts.map +0 -1
  130. package/dist/core/encoders/json.js +0 -77
  131. package/dist/core/encoders/json.js.map +0 -1
  132. package/dist/core/errors.d.ts +0 -24
  133. package/dist/core/errors.d.ts.map +0 -1
  134. package/dist/core/errors.js +0 -42
  135. package/dist/core/errors.js.map +0 -1
  136. package/dist/core/logger.d.ts +0 -10
  137. package/dist/core/logger.d.ts.map +0 -1
  138. package/dist/core/logger.js.map +0 -1
  139. package/dist/core/loggers/logger.d.ts +0 -13
  140. package/dist/core/loggers/logger.d.ts.map +0 -1
  141. package/dist/core/loggers/logger.js +0 -48
  142. package/dist/core/loggers/logger.js.map +0 -1
  143. package/dist/core/options.d.ts +0 -160
  144. package/dist/core/options.d.ts.map +0 -1
  145. package/dist/core/options.js +0 -18
  146. package/dist/core/options.js.map +0 -1
  147. package/dist/core/promises/promises.d.ts +0 -210
  148. package/dist/core/promises/promises.d.ts.map +0 -1
  149. package/dist/core/promises/promises.js +0 -300
  150. package/dist/core/promises/promises.js.map +0 -1
  151. package/dist/core/promises/types.d.ts +0 -42
  152. package/dist/core/promises/types.d.ts.map +0 -1
  153. package/dist/core/promises/types.js +0 -70
  154. package/dist/core/promises/types.js.map +0 -1
  155. package/dist/core/retry.d.ts +0 -37
  156. package/dist/core/retry.d.ts.map +0 -1
  157. package/dist/core/retry.js +0 -141
  158. package/dist/core/retry.js.map +0 -1
  159. package/dist/core/schedules/schedules.d.ts +0 -22
  160. package/dist/core/schedules/schedules.d.ts.map +0 -1
  161. package/dist/core/schedules/schedules.js +0 -29
  162. package/dist/core/schedules/schedules.js.map +0 -1
  163. package/dist/core/schedules/types.d.ts +0 -19
  164. package/dist/core/schedules/types.d.ts.map +0 -1
  165. package/dist/core/schedules/types.js +0 -8
  166. package/dist/core/schedules/types.js.map +0 -1
  167. package/dist/core/storage.d.ts +0 -6
  168. package/dist/core/storage.d.ts.map +0 -1
  169. package/dist/core/storage.js +0 -3
  170. package/dist/core/storage.js.map +0 -1
  171. package/dist/core/storages/memory.d.ts +0 -8
  172. package/dist/core/storages/memory.d.ts.map +0 -1
  173. package/dist/core/storages/memory.js +0 -29
  174. package/dist/core/storages/memory.js.map +0 -1
  175. package/dist/core/storages/withTimeout.d.ts +0 -10
  176. package/dist/core/storages/withTimeout.d.ts.map +0 -1
  177. package/dist/core/storages/withTimeout.js +0 -44
  178. package/dist/core/storages/withTimeout.js.map +0 -1
  179. package/dist/core/store.d.ts +0 -142
  180. package/dist/core/store.d.ts.map +0 -1
  181. package/dist/core/store.js +0 -3
  182. package/dist/core/store.js.map +0 -1
  183. package/dist/core/stores/local.d.ts +0 -57
  184. package/dist/core/stores/local.d.ts.map +0 -1
  185. package/dist/core/stores/local.js +0 -405
  186. package/dist/core/stores/local.js.map +0 -1
  187. package/dist/core/stores/remote.d.ts +0 -51
  188. package/dist/core/stores/remote.d.ts.map +0 -1
  189. package/dist/core/stores/remote.js +0 -431
  190. package/dist/core/stores/remote.js.map +0 -1
  191. package/dist/core/utils.d.ts +0 -85
  192. package/dist/core/utils.d.ts.map +0 -1
  193. package/dist/core/utils.js +0 -121
  194. package/dist/core/utils.js.map +0 -1
  195. package/dist/index.d.ts +0 -19
  196. package/dist/index.d.ts.map +0 -1
  197. package/dist/index.js +0 -57
  198. package/dist/index.js.map +0 -1
  199. package/dist/resonate.d.ts +0 -337
  200. package/dist/resonate.d.ts.map +0 -1
  201. package/dist/resonate.js +0 -730
  202. package/dist/resonate.js.map +0 -1
@@ -0,0 +1,240 @@
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 () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.Resonate = void 0;
37
+ const network_1 = require("../dev/network");
38
+ const handler_1 = require("../src/handler");
39
+ const registry_1 = require("../src/registry");
40
+ const clock_1 = require("./clock");
41
+ const heartbeat_1 = require("./heartbeat");
42
+ const remote_1 = require("./network/remote");
43
+ const promises_1 = require("./promises");
44
+ const resonate_inner_1 = require("./resonate-inner");
45
+ const schedules_1 = require("./schedules");
46
+ const types_1 = require("./types");
47
+ const util = __importStar(require("./util"));
48
+ class Resonate {
49
+ unicast;
50
+ anycast;
51
+ pid;
52
+ ttl;
53
+ inner;
54
+ network;
55
+ registry;
56
+ heartbeat;
57
+ dependencies;
58
+ promises;
59
+ schedules;
60
+ constructor({ group, pid, ttl }, network) {
61
+ this.unicast = `poll://uni@${group}/${pid}`;
62
+ this.anycast = `poll://any@${group}/${pid}`;
63
+ this.pid = pid;
64
+ this.ttl = ttl;
65
+ this.network = network;
66
+ this.registry = new registry_1.Registry();
67
+ this.heartbeat = network instanceof network_1.LocalNetwork ? new heartbeat_1.NoopHeartbeat() : new heartbeat_1.AsyncHeartbeat(pid, ttl / 2, network);
68
+ this.dependencies = new Map();
69
+ this.inner = new resonate_inner_1.ResonateInner({
70
+ unicast: this.unicast,
71
+ anycast: this.anycast,
72
+ pid: this.pid,
73
+ ttl: this.ttl,
74
+ clock: new clock_1.WallClock(),
75
+ network: this.network,
76
+ handler: new handler_1.Handler(this.network),
77
+ registry: this.registry,
78
+ heartbeat: this.heartbeat,
79
+ dependencies: this.dependencies,
80
+ });
81
+ this.promises = new promises_1.Promises(network);
82
+ this.schedules = new schedules_1.Schedules(network);
83
+ }
84
+ /**
85
+ * Create a local Resonate instance
86
+ */
87
+ static local() {
88
+ return new Resonate({
89
+ group: "default",
90
+ pid: "default",
91
+ ttl: Number.MAX_SAFE_INTEGER,
92
+ }, new network_1.LocalNetwork());
93
+ }
94
+ /**
95
+ * Create a remote Resonate instance
96
+ */
97
+ static remote({ host = "http://localhost", storePort = "8001", messageSourcePort = "8002", group = "default", pid = crypto.randomUUID().replace(/-/g, ""), ttl = 1 * util.MIN, } = {}) {
98
+ const network = new remote_1.HttpNetwork({
99
+ host,
100
+ storePort,
101
+ messageSourcePort,
102
+ pid,
103
+ group,
104
+ timeout: 1 * util.MIN,
105
+ headers: {},
106
+ });
107
+ return new Resonate({ pid, group, ttl }, network);
108
+ }
109
+ register(nameOrFunc, maybeFunc) {
110
+ const name = typeof nameOrFunc === "string" ? nameOrFunc : nameOrFunc.name;
111
+ const func = typeof nameOrFunc === "string" ? maybeFunc : nameOrFunc;
112
+ if (this.registry.has(name)) {
113
+ throw new Error(`'${name}' already registered`);
114
+ }
115
+ this.registry.set(name, func);
116
+ return {
117
+ run: (id, ...args) => this.run(id, func, ...args),
118
+ rpc: (id, ...args) => this.rpc(id, func, ...args),
119
+ beginRun: (id, ...args) => this.beginRun(id, func, ...args),
120
+ beginRpc: (id, ...args) => this.beginRpc(id, func, ...args),
121
+ options: this.options,
122
+ };
123
+ }
124
+ async run(id, funcOrName, ...args) {
125
+ return (await this.beginRun(id, funcOrName, ...args)).result();
126
+ }
127
+ async beginRun(id, funcOrName, ...argsWithOpts) {
128
+ const registered = this.registry.get(funcOrName);
129
+ if (!registered) {
130
+ throw new Error(`${funcOrName} does not exist`);
131
+ }
132
+ const [args, opts] = util.splitArgsAndOpts(argsWithOpts, this.options());
133
+ const promiseHandler = this.inner.run({
134
+ kind: "createPromiseAndTask",
135
+ promise: {
136
+ id: id,
137
+ timeout: Date.now() + opts.timeout,
138
+ param: { func: registered.name, args },
139
+ tags: {
140
+ ...opts.tags,
141
+ "resonate:invoke": this.anycast,
142
+ "resonate:scope": "global",
143
+ },
144
+ },
145
+ task: {
146
+ processId: this.pid,
147
+ ttl: this.ttl,
148
+ },
149
+ iKey: id,
150
+ strict: false,
151
+ });
152
+ return this.handle(promiseHandler);
153
+ }
154
+ async rpc(id, funcOrName, ...args) {
155
+ return (await this.beginRpc(id, funcOrName, ...args)).result();
156
+ }
157
+ async beginRpc(id, funcOrName, ...argsWithOpts) {
158
+ let name;
159
+ if (typeof funcOrName === "string") {
160
+ name = funcOrName;
161
+ }
162
+ else {
163
+ const registered = this.registry.get(funcOrName);
164
+ if (!registered) {
165
+ throw new Error(`${funcOrName} is not registered`);
166
+ }
167
+ name = registered.name;
168
+ }
169
+ const [args, opts] = util.splitArgsAndOpts(argsWithOpts, this.options());
170
+ const promiseHandler = this.inner.rpc({
171
+ kind: "createPromise",
172
+ id: id,
173
+ timeout: Date.now() + opts.timeout,
174
+ param: { func: name, args },
175
+ tags: { ...opts.tags, "resonate:invoke": opts.target, "resonate:scope": "global" },
176
+ iKey: id,
177
+ strict: false,
178
+ });
179
+ return this.handle(promiseHandler);
180
+ }
181
+ options(opts = {}) {
182
+ return {
183
+ id: "",
184
+ target: "poll://any@default",
185
+ timeout: 24 * util.HOUR,
186
+ tags: {},
187
+ ...opts,
188
+ [types_1.RESONATE_OPTIONS]: true,
189
+ };
190
+ }
191
+ /** Store a named dependency for use with `Context`.
192
+ * The dependency is made available to all functions via
193
+ * their execution `Context`.
194
+ * Setting a dependency for a name that already exists will
195
+ * overwrite the previously set dependency.
196
+ */
197
+ setDependency(name, obj) {
198
+ this.dependencies.set(name, obj);
199
+ }
200
+ stop() {
201
+ this.network.stop();
202
+ this.heartbeat.stop();
203
+ }
204
+ handle(promiseHandler) {
205
+ // resolves with a handle
206
+ const handle = Promise.withResolvers();
207
+ // resolves with the result
208
+ const result = Promise.withResolvers();
209
+ // listen for created and resolve p1 with a handle
210
+ promiseHandler.addEventListener("created", (promise) => {
211
+ handle.resolve({
212
+ id: promise.id,
213
+ result: async () => {
214
+ // subscribe lazily, no need to await
215
+ promiseHandler.subscribe();
216
+ return await result.promise;
217
+ },
218
+ });
219
+ });
220
+ // listen for completed and resolve p2 with the value
221
+ promiseHandler.addEventListener("completed", (promise) => {
222
+ util.assert(promise.state !== "pending", "promise must be completed");
223
+ if (promise.state === "resolved") {
224
+ result.resolve(promise.value);
225
+ }
226
+ else if (promise.state === "rejected") {
227
+ result.reject(promise.value);
228
+ }
229
+ else if (promise.state === "rejected_canceled") {
230
+ result.reject(new Error("Promise canceled"));
231
+ }
232
+ else if (promise.state === "rejected_timedout") {
233
+ result.reject(new Error("Promise timedout"));
234
+ }
235
+ });
236
+ return handle.promise;
237
+ }
238
+ }
239
+ exports.Resonate = Resonate;
240
+ //# sourceMappingURL=resonate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resonate.js","sourceRoot":"","sources":["../../src/resonate.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import type { Network, ScheduleRecord } from "./network/network";
2
+ export declare class Schedules {
3
+ private network;
4
+ constructor(network?: Network);
5
+ get(id: string): Promise<ScheduleRecord>;
6
+ create(id: string, cron: string, promiseId: string, promiseTimeout: number, iKey?: string | undefined, description?: string | undefined, tags?: Record<string, string> | undefined, promiseParam?: any | undefined, promiseTags?: Record<string, string> | undefined): Promise<ScheduleRecord>;
7
+ delete(id: string): Promise<void>;
8
+ }
9
+ //# sourceMappingURL=schedules.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schedules.d.ts","sourceRoot":"","sources":["../../src/schedules.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEjE,qBAAa,SAAS;IACpB,OAAO,CAAC,OAAO,CAAU;gBAEb,OAAO,GAAE,OAA4B;IAIjD,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAoBxC,MAAM,CACJ,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,MAAM,EACtB,IAAI,GAAE,MAAM,GAAG,SAAqB,EACpC,WAAW,GAAE,MAAM,GAAG,SAAqB,EAC3C,IAAI,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAqB,EACpD,YAAY,GAAE,GAAG,GAAG,SAAqB,EACzC,WAAW,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAqB,GAC1D,OAAO,CAAC,cAAc,CAAC;IA4B1B,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAmBlC"}
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Schedules = void 0;
4
+ const network_1 = require("../dev/network");
5
+ class Schedules {
6
+ network;
7
+ constructor(network = new network_1.LocalNetwork()) {
8
+ this.network = network;
9
+ }
10
+ get(id) {
11
+ return new Promise((resolve, reject) => {
12
+ this.network.send({
13
+ kind: "readSchedule",
14
+ id: id,
15
+ }, (err, res) => {
16
+ if (err) {
17
+ // TODO: reject with more information
18
+ reject(Error("not implemented"));
19
+ return;
20
+ }
21
+ resolve(res.schedule);
22
+ });
23
+ });
24
+ }
25
+ create(id, cron, promiseId, promiseTimeout, iKey = undefined, description = undefined, tags = undefined, promiseParam = undefined, promiseTags = undefined) {
26
+ return new Promise((resolve, reject) => {
27
+ this.network.send({
28
+ kind: "createSchedule",
29
+ id: id,
30
+ description: description,
31
+ cron: cron,
32
+ tags: tags,
33
+ promiseId: promiseId,
34
+ promiseTimeout: promiseTimeout,
35
+ promiseParam: promiseParam,
36
+ promiseTags: promiseTags,
37
+ iKey: iKey,
38
+ }, (err, res) => {
39
+ if (err) {
40
+ // TODO: reject with more information
41
+ reject(Error("not implemented"));
42
+ return;
43
+ }
44
+ resolve(res.schedule);
45
+ });
46
+ });
47
+ }
48
+ delete(id) {
49
+ return new Promise((resolve, reject) => {
50
+ this.network.send({
51
+ kind: "deleteSchedule",
52
+ id: id,
53
+ }, (err) => {
54
+ if (err) {
55
+ // TODO: reject with more information
56
+ reject(Error("not implemented"));
57
+ return;
58
+ }
59
+ resolve();
60
+ });
61
+ });
62
+ }
63
+ }
64
+ exports.Schedules = Schedules;
65
+ //# sourceMappingURL=schedules.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schedules.js","sourceRoot":"","sources":["../../src/schedules.ts"],"names":[],"mappings":";;;AAAA,4CAA8C;AAG9C,MAAa,SAAS;IACZ,OAAO,CAAU;IAEzB,YAAY,UAAmB,IAAI,sBAAY,EAAE;QAC/C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,GAAG,CAAC,EAAU;QACZ,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,IAAI,CAAC,OAAO,CAAC,IAAI,CACf;gBACE,IAAI,EAAE,cAAc;gBACpB,EAAE,EAAE,EAAE;aACP,EACD,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;gBACX,IAAI,GAAG,EAAE,CAAC;oBACR,qCAAqC;oBACrC,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC;oBACjC,OAAO;gBACT,CAAC;gBAED,OAAO,CAAC,GAAI,CAAC,QAAQ,CAAC,CAAC;YACzB,CAAC,CACF,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CACJ,EAAU,EACV,IAAY,EACZ,SAAiB,EACjB,cAAsB,EACtB,OAA2B,SAAS,EACpC,cAAkC,SAAS,EAC3C,OAA2C,SAAS,EACpD,eAAgC,SAAS,EACzC,cAAkD,SAAS;QAE3D,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,IAAI,CAAC,OAAO,CAAC,IAAI,CACf;gBACE,IAAI,EAAE,gBAAgB;gBACtB,EAAE,EAAE,EAAE;gBACN,WAAW,EAAE,WAAW;gBACxB,IAAI,EAAE,IAAI;gBACV,IAAI,EAAE,IAAI;gBACV,SAAS,EAAE,SAAS;gBACpB,cAAc,EAAE,cAAc;gBAC9B,YAAY,EAAE,YAAY;gBAC1B,WAAW,EAAE,WAAW;gBACxB,IAAI,EAAE,IAAI;aACX,EACD,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;gBACX,IAAI,GAAG,EAAE,CAAC;oBACR,qCAAqC;oBACrC,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC;oBACjC,OAAO;gBACT,CAAC;gBAED,OAAO,CAAC,GAAI,CAAC,QAAQ,CAAC,CAAC;YACzB,CAAC,CACF,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CAAC,EAAU;QACf,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,IAAI,CAAC,OAAO,CAAC,IAAI,CACf;gBACE,IAAI,EAAE,gBAAgB;gBACtB,EAAE,EAAE,EAAE;aACP,EACD,CAAC,GAAG,EAAE,EAAE;gBACN,IAAI,GAAG,EAAE,CAAC;oBACR,qCAAqC;oBACrC,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC;oBACjC,OAAO;gBACT,CAAC;gBAED,OAAO,EAAE,CAAC;YACZ,CAAC,CACF,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AApFD,8BAoFC"}
@@ -0,0 +1,9 @@
1
+ import type { ClaimTaskRes, Network, TaskRecord } from "./network/network";
2
+ export declare class Tasks {
3
+ private network;
4
+ constructor(network?: Network);
5
+ claim(id: string, counter: number, processId: string, ttl: number): Promise<ClaimTaskRes["message"]>;
6
+ complete(id: string, counter: number): Promise<TaskRecord>;
7
+ heartbeat(processId: string): Promise<number>;
8
+ }
9
+ //# sourceMappingURL=tasks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tasks.d.ts","sourceRoot":"","sources":["../../src/tasks.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE3E,qBAAa,KAAK;IAChB,OAAO,CAAC,OAAO,CAAU;gBAEb,OAAO,GAAE,OAA4B;IAIjD,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IAuBpG,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAqB1D,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAmB9C"}
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Tasks = void 0;
4
+ const network_1 = require("../dev/network");
5
+ class Tasks {
6
+ network;
7
+ constructor(network = new network_1.LocalNetwork()) {
8
+ this.network = network;
9
+ }
10
+ claim(id, counter, processId, ttl) {
11
+ return new Promise((resolve, reject) => {
12
+ this.network.send({
13
+ kind: "claimTask",
14
+ id: id,
15
+ counter: counter,
16
+ processId: processId,
17
+ ttl: ttl,
18
+ }, (err, res) => {
19
+ if (err) {
20
+ // TODO: reject with more information
21
+ reject(Error("not implemented"));
22
+ return;
23
+ }
24
+ resolve(res.message);
25
+ });
26
+ });
27
+ }
28
+ complete(id, counter) {
29
+ return new Promise((resolve, reject) => {
30
+ this.network.send({
31
+ kind: "completeTask",
32
+ id: id,
33
+ counter: counter,
34
+ }, (err, res) => {
35
+ if (err) {
36
+ // TODO: reject with more information
37
+ reject(Error("not implemented"));
38
+ return;
39
+ }
40
+ resolve(res.task);
41
+ });
42
+ });
43
+ }
44
+ heartbeat(processId) {
45
+ return new Promise((resolve, reject) => {
46
+ this.network.send({
47
+ kind: "heartbeatTasks",
48
+ processId: processId,
49
+ }, (err, res) => {
50
+ if (err) {
51
+ // TODO: reject with more information
52
+ reject(Error("not implemented"));
53
+ return;
54
+ }
55
+ resolve(res.tasksAffected);
56
+ });
57
+ });
58
+ }
59
+ }
60
+ exports.Tasks = Tasks;
61
+ //# sourceMappingURL=tasks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tasks.js","sourceRoot":"","sources":["../../src/tasks.ts"],"names":[],"mappings":";;;AAAA,4CAA8C;AAG9C,MAAa,KAAK;IACR,OAAO,CAAU;IAEzB,YAAY,UAAmB,IAAI,sBAAY,EAAE;QAC/C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,EAAU,EAAE,OAAe,EAAE,SAAiB,EAAE,GAAW;QAC/D,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,IAAI,CAAC,OAAO,CAAC,IAAI,CACf;gBACE,IAAI,EAAE,WAAW;gBACjB,EAAE,EAAE,EAAE;gBACN,OAAO,EAAE,OAAO;gBAChB,SAAS,EAAE,SAAS;gBACpB,GAAG,EAAE,GAAG;aACT,EACD,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;gBACX,IAAI,GAAG,EAAE,CAAC;oBACR,qCAAqC;oBACrC,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC;oBACjC,OAAO;gBACT,CAAC;gBAED,OAAO,CAAC,GAAI,CAAC,OAAO,CAAC,CAAC;YACxB,CAAC,CACF,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAED,QAAQ,CAAC,EAAU,EAAE,OAAe;QAClC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,IAAI,CAAC,OAAO,CAAC,IAAI,CACf;gBACE,IAAI,EAAE,cAAc;gBACpB,EAAE,EAAE,EAAE;gBACN,OAAO,EAAE,OAAO;aACjB,EACD,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;gBACX,IAAI,GAAG,EAAE,CAAC;oBACR,qCAAqC;oBACrC,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC;oBACjC,OAAO;gBACT,CAAC;gBAED,OAAO,CAAC,GAAI,CAAC,IAAI,CAAC,CAAC;YACrB,CAAC,CACF,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAED,SAAS,CAAC,SAAiB;QACzB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,IAAI,CAAC,OAAO,CAAC,IAAI,CACf;gBACE,IAAI,EAAE,gBAAgB;gBACtB,SAAS,EAAE,SAAS;aACrB,EACD,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;gBACX,IAAI,GAAG,EAAE,CAAC;oBACR,qCAAqC;oBACrC,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC;oBACjC,OAAO;gBACT,CAAC;gBAED,OAAO,CAAC,GAAI,CAAC,aAAa,CAAC,CAAC;YAC9B,CAAC,CACF,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAtED,sBAsEC"}
@@ -0,0 +1,86 @@
1
+ import type { Context } from "./context";
2
+ import type { CreatePromiseReq, DurablePromiseRecord, TaskRecord } from "./network/network";
3
+ export type Func = (ctx: Context, ...args: any[]) => any;
4
+ export declare const RESONATE_OPTIONS: unique symbol;
5
+ export type Params<F> = F extends (ctx: Context, ...args: infer P) => any ? P : never;
6
+ export type ParamsWithOptions<F> = [...Params<F>, (Partial<Options> & {
7
+ [RESONATE_OPTIONS]: true;
8
+ })?];
9
+ export type Options = {
10
+ id: string;
11
+ target: string;
12
+ tags: Record<string, string>;
13
+ timeout: number;
14
+ };
15
+ export type Callback<T> = {
16
+ (err: false, res: T): void;
17
+ (err: true, res?: undefined): void;
18
+ };
19
+ export type Task = ClaimedTask | UnclaimedTask;
20
+ export type ClaimedTask = {
21
+ kind: "claimed";
22
+ task: TaskRecord;
23
+ rootPromise: DurablePromiseRecord;
24
+ };
25
+ export type UnclaimedTask = {
26
+ kind: "unclaimed";
27
+ task: TaskRecord;
28
+ };
29
+ export type Return<T> = T extends (...args: any[]) => Generator<infer __, infer R, infer _> ? R : T extends (...args: any[]) => infer R ? Awaited<R> : never;
30
+ export type Result<T> = Ok<T> | Ko;
31
+ type Ok<T> = {
32
+ success: true;
33
+ value: T;
34
+ };
35
+ type Ko = {
36
+ success: false;
37
+ error: any;
38
+ };
39
+ export type InternalExpr<T> = InternalAsyncL | InternalAsyncR | InternalAwait<T> | InternalReturn<T>;
40
+ export type InternalAsyncR = {
41
+ type: "internal.async.r";
42
+ id: string;
43
+ mode: "attached" | "detached";
44
+ createReq: CreatePromiseReq;
45
+ };
46
+ export type InternalAsyncL = {
47
+ type: "internal.async.l";
48
+ id: string;
49
+ func: Func;
50
+ args: any[];
51
+ createReq: CreatePromiseReq;
52
+ };
53
+ export type InternalAwait<T> = {
54
+ type: "internal.await";
55
+ id: string;
56
+ promise: Promise<T>;
57
+ };
58
+ export type InternalReturn<T> = {
59
+ type: "internal.return";
60
+ value: Literal<T>;
61
+ };
62
+ export type Value<T> = Nothing | Literal<T> | Promise<T>;
63
+ export type Nothing = {
64
+ type: "internal.nothing";
65
+ };
66
+ export type Promise<T> = PromisePending | PromiseCompleted<T>;
67
+ export type PromisePending = {
68
+ type: "internal.promise";
69
+ state: "pending";
70
+ mode: "attached" | "detached";
71
+ id: string;
72
+ };
73
+ export type PromiseCompleted<T> = {
74
+ type: "internal.promise";
75
+ state: "completed";
76
+ id: string;
77
+ value: Literal<T>;
78
+ };
79
+ export type Literal<T> = {
80
+ type: "internal.literal";
81
+ value: Result<T>;
82
+ };
83
+ export declare function ok<T>(data: T): Result<T>;
84
+ export declare function ko(error: any): Result<any>;
85
+ export {};
86
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RESONATE_OPTIONS = void 0;
4
+ exports.ok = ok;
5
+ exports.ko = ko;
6
+ exports.RESONATE_OPTIONS = Symbol("ResonateOptions");
7
+ // Helper functions to create some of the types defined in this file
8
+ function ok(data) {
9
+ return { success: true, value: data };
10
+ }
11
+ function ko(error) {
12
+ return { success: false, error };
13
+ }
14
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":";;;AAkHA,gBAEC;AAED,gBAEC;AAnHY,QAAA,gBAAgB,GAAkB,MAAM,CAAC,iBAAiB,CAAC,CAAC;AA2GzE,oEAAoE;AAEpE,SAAgB,EAAE,CAAI,IAAO;IAC3B,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AACxC,CAAC;AAED,SAAgB,EAAE,CAAC,KAAU;IAC3B,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;AACnC,CAAC"}
@@ -0,0 +1,14 @@
1
+ import type { DurablePromiseRecord, TaskRecord } from "./network/network";
2
+ import { type Options } from "./types";
3
+ export declare const MS = 1;
4
+ export declare const SEC = 1000;
5
+ export declare const MIN: number;
6
+ export declare const HOUR: number;
7
+ export declare function assert(cond: boolean, msg?: string): void;
8
+ export declare function assertDefined<T>(val: T | undefined | null): asserts val is T;
9
+ export declare function isGeneratorFunction(func: Function): boolean;
10
+ export declare function isTaskRecord(obj: any): obj is TaskRecord;
11
+ export declare function isDurablePromiseRecord(obj: unknown): obj is DurablePromiseRecord;
12
+ export declare function isOptions(obj: unknown): obj is Options;
13
+ export declare function splitArgsAndOpts(args: any[], defaults: Options): [any[], Options];
14
+ //# sourceMappingURL=util.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../src/util.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,EAAE,KAAK,OAAO,EAAoB,MAAM,SAAS,CAAC;AAGzD,eAAO,MAAM,EAAE,IAAI,CAAC;AACpB,eAAO,MAAM,GAAG,OAAO,CAAC;AACxB,eAAO,MAAM,GAAG,QAAW,CAAC;AAC5B,eAAO,MAAM,IAAI,QAAW,CAAC;AAE7B,wBAAgB,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CASxD;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,SAAS,GAAG,IAAI,GAAG,OAAO,CAAC,GAAG,IAAI,CAAC,CAE5E;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAI3D;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,UAAU,CAYxD;AAED,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,oBAAoB,CAkBhF;AAED,wBAAgB,SAAS,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,OAAO,CAEtD;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,QAAQ,EAAE,OAAO,GAAG,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,CAGjF"}
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HOUR = exports.MIN = exports.SEC = exports.MS = void 0;
4
+ exports.assert = assert;
5
+ exports.assertDefined = assertDefined;
6
+ exports.isGeneratorFunction = isGeneratorFunction;
7
+ exports.isTaskRecord = isTaskRecord;
8
+ exports.isDurablePromiseRecord = isDurablePromiseRecord;
9
+ exports.isOptions = isOptions;
10
+ exports.splitArgsAndOpts = splitArgsAndOpts;
11
+ const types_1 = require("./types");
12
+ // Base unit: milliseconds
13
+ exports.MS = 1;
14
+ exports.SEC = 1000;
15
+ exports.MIN = 60 * exports.SEC;
16
+ exports.HOUR = 60 * exports.MIN;
17
+ function assert(cond, msg) {
18
+ if (cond)
19
+ return; // Early return if assertion passes
20
+ console.assert(cond, "Assertion Failed: %s", msg);
21
+ console.trace();
22
+ if (typeof process !== "undefined" && process.versions.node) {
23
+ process.exit(1);
24
+ }
25
+ }
26
+ function assertDefined(val) {
27
+ assert(val !== null && val !== undefined, "value must not be null");
28
+ }
29
+ function isGeneratorFunction(func) {
30
+ const GeneratorFunction = Object.getPrototypeOf(function* () { }).constructor;
31
+ const AsyncGeneratorFunction = Object.getPrototypeOf(async function* () { }).constructor;
32
+ return func instanceof GeneratorFunction || func instanceof AsyncGeneratorFunction;
33
+ }
34
+ function isTaskRecord(obj) {
35
+ return (typeof obj === "object" &&
36
+ obj !== null &&
37
+ typeof obj.id === "string" &&
38
+ typeof obj.rootPromiseId === "string" &&
39
+ typeof obj.counter === "number" &&
40
+ typeof obj.timeout === "number" &&
41
+ (obj.processId === undefined || typeof obj.processId === "string") &&
42
+ (obj.createdOn === undefined || typeof obj.createdOn === "number") &&
43
+ (obj.completedOn === undefined || typeof obj.completedOn === "number"));
44
+ }
45
+ function isDurablePromiseRecord(obj) {
46
+ return (typeof obj === "object" &&
47
+ obj !== null &&
48
+ typeof obj.id === "string" &&
49
+ typeof obj.timeout === "number" &&
50
+ typeof obj.param !== "undefined" && // allow any type
51
+ typeof obj.value !== "undefined" && // allow any type
52
+ typeof obj.tags === "object" &&
53
+ obj.tags !== null &&
54
+ !Array.isArray(obj.tags) &&
55
+ Object.values(obj.tags).every((v) => typeof v === "string") &&
56
+ ["PENDING", "RESOLVED", "REJECTED", "REJECTED_CANCELED", "REJECTED_TIMEDOUT"].includes(obj.state) &&
57
+ (typeof obj.iKeyForCreate === "undefined" || typeof obj.iKeyForCreate === "string") &&
58
+ (typeof obj.iKeyForComplete === "undefined" || typeof obj.iKeyForComplete === "string") &&
59
+ (typeof obj.createdOn === "undefined" || typeof obj.createdOn === "number") &&
60
+ (typeof obj.completedOn === "undefined" || typeof obj.completedOn === "number"));
61
+ }
62
+ function isOptions(obj) {
63
+ return typeof obj === "object" && obj !== null && types_1.RESONATE_OPTIONS in obj;
64
+ }
65
+ function splitArgsAndOpts(args, defaults) {
66
+ const opts = isOptions(args.at(-1)) ? args.pop() : {};
67
+ return [args, { ...defaults, ...opts }];
68
+ }
69
+ //# sourceMappingURL=util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/util.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"root":["../sim/example-1.ts","../sim/example-2.ts","../sim/example-3.ts","../sim/main.ts","../sim/src/server.ts","../sim/src/simulator.ts","../sim/src/worker.ts","../src/clock.ts","../src/computation.ts","../src/context.ts","../src/coroutine.ts","../src/decorator.ts","../src/handler.ts","../src/heartbeat.ts","../src/index.ts","../src/nursery.ts","../src/promises.ts","../src/registry.ts","../src/resonate-inner.ts","../src/resonate.ts","../src/schedules.ts","../src/tasks.ts","../src/types.ts","../src/util.ts","../src/network/network.ts","../src/network/remote.ts","../src/processor/processor.ts"],"version":"5.8.3"}