@resonatehq/sdk 0.8.6 → 0.9.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 (62) hide show
  1. package/dist/dev/network.d.ts +12 -2
  2. package/dist/dev/network.d.ts.map +1 -1
  3. package/dist/dev/network.js +14 -3
  4. package/dist/dev/network.js.map +1 -1
  5. package/dist/dev/server.d.ts.map +1 -1
  6. package/dist/dev/server.js +5 -4
  7. package/dist/dev/server.js.map +1 -1
  8. package/dist/sim/src/worker.d.ts.map +1 -1
  9. package/dist/sim/src/worker.js +22 -7
  10. package/dist/sim/src/worker.js.map +1 -1
  11. package/dist/src/computation.d.ts +9 -3
  12. package/dist/src/computation.d.ts.map +1 -1
  13. package/dist/src/computation.js +72 -32
  14. package/dist/src/computation.js.map +1 -1
  15. package/dist/src/context.d.ts +25 -13
  16. package/dist/src/context.d.ts.map +1 -1
  17. package/dist/src/context.js +70 -34
  18. package/dist/src/context.js.map +1 -1
  19. package/dist/src/coroutine.d.ts +8 -3
  20. package/dist/src/coroutine.d.ts.map +1 -1
  21. package/dist/src/coroutine.js +69 -10
  22. package/dist/src/coroutine.js.map +1 -1
  23. package/dist/src/decorator.d.ts +3 -1
  24. package/dist/src/decorator.d.ts.map +1 -1
  25. package/dist/src/decorator.js +2 -0
  26. package/dist/src/decorator.js.map +1 -1
  27. package/dist/src/handler.d.ts +7 -4
  28. package/dist/src/handler.d.ts.map +1 -1
  29. package/dist/src/handler.js +8 -8
  30. package/dist/src/handler.js.map +1 -1
  31. package/dist/src/network/network.d.ts +8 -1
  32. package/dist/src/network/network.d.ts.map +1 -1
  33. package/dist/src/network/remote.d.ts +7 -4
  34. package/dist/src/network/remote.d.ts.map +1 -1
  35. package/dist/src/network/remote.js +24 -18
  36. package/dist/src/network/remote.js.map +1 -1
  37. package/dist/src/options.d.ts +17 -4
  38. package/dist/src/options.d.ts.map +1 -1
  39. package/dist/src/options.js +13 -7
  40. package/dist/src/options.js.map +1 -1
  41. package/dist/src/processor/processor.d.ts +3 -3
  42. package/dist/src/processor/processor.d.ts.map +1 -1
  43. package/dist/src/processor/processor.js +16 -9
  44. package/dist/src/processor/processor.js.map +1 -1
  45. package/dist/src/resonate-inner.d.ts +12 -6
  46. package/dist/src/resonate-inner.d.ts.map +1 -1
  47. package/dist/src/resonate-inner.js +19 -8
  48. package/dist/src/resonate-inner.js.map +1 -1
  49. package/dist/src/resonate.d.ts +18 -9
  50. package/dist/src/resonate.d.ts.map +1 -1
  51. package/dist/src/resonate.js +138 -77
  52. package/dist/src/resonate.js.map +1 -1
  53. package/dist/src/retries.d.ts +47 -8
  54. package/dist/src/retries.d.ts.map +1 -1
  55. package/dist/src/retries.js +29 -1
  56. package/dist/src/retries.js.map +1 -1
  57. package/dist/src/tracer.d.ts +23 -0
  58. package/dist/src/tracer.d.ts.map +1 -0
  59. package/dist/src/tracer.js +25 -0
  60. package/dist/src/tracer.js.map +1 -0
  61. package/dist/tsconfig.build.tsbuildinfo +1 -1
  62. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"options.js","sourceRoot":"","sources":["../../src/options.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,6CAA+B;AAElB,QAAA,gBAAgB,GAAkB,MAAM,CAAC,iBAAiB,CAAC,CAAC;AAEzE,MAAa,OAAO;IACF,EAAE,CAAS;IACX,IAAI,CAAyB;IAC7B,MAAM,CAAS;IACf,OAAO,CAAS;IAChB,OAAO,CAAS;IAChB,WAAW,CAA0B;IAErD,CAAC,wBAAgB,CAAC,GAAG,IAAI,CAAC;IAE1B,YAAY,EACV,EAAE,GAAG,EAAE,EACP,IAAI,GAAG,EAAE,EACT,MAAM,GAAG,SAAS,EAClB,OAAO,GAAG,EAAE,GAAG,IAAI,CAAC,IAAI,EACxB,OAAO,GAAG,CAAC,EACX,WAAW,GAAG,SAAS,GAQxB;QACC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACjC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;IAEO,KAAK,CAAC,MAAc;QAC1B,uCAAuC;QACvC,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,MAAM,EAAE,CAAC;IAC9D,CAAC;CACF;AArCD,0BAqCC"}
1
+ {"version":3,"file":"options.js","sourceRoot":"","sources":["../../src/options.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,6CAA+B;AAElB,QAAA,gBAAgB,GAAkB,MAAM,CAAC,iBAAiB,CAAC,CAAC;AAEzE,MAAa,cAAc;IACjB,KAAK,CAA6B;IAC1C,YAAY,EAAE,KAAK,EAAyC;QAC1D,IAAI,CAAC,KAAK,GAAG,CAAC,MAAc,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IACjF,CAAC;IAED,KAAK,CAAC,EACJ,EAAE,GAAG,SAAS,EACd,WAAW,GAAG,SAAS,EACvB,IAAI,GAAG,EAAE,EACT,MAAM,GAAG,SAAS,EAClB,OAAO,GAAG,EAAE,GAAG,IAAI,CAAC,IAAI,EACxB,OAAO,GAAG,CAAC,MAQT,EAAE;QACJ,OAAO,IAAI,OAAO,CAAC,EAAE,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;IAC9F,CAAC;CACF;AAvBD,wCAuBC;AAED,MAAa,OAAO;IACF,EAAE,CAAqB;IACvB,IAAI,CAAyB;IAC7B,MAAM,CAAS;IACf,OAAO,CAAS;IAChB,OAAO,CAAS;IAChB,WAAW,CAA0B;IAErD,CAAC,wBAAgB,CAAC,GAAG,IAAI,CAAC;IAE1B,YAAY,EACV,EAAE,GAAG,SAAS,EACd,WAAW,GAAG,SAAS,EACvB,IAAI,GAAG,EAAE,EACT,MAAM,GAAG,SAAS,EAClB,OAAO,GAAG,EAAE,GAAG,IAAI,CAAC,IAAI,EACxB,OAAO,GAAG,CAAC,GAQZ;QACC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;CACF;AAhCD,0BAgCC"}
@@ -1,12 +1,12 @@
1
1
  import type { InnerContext } from "../context";
2
+ import type { Span } from "../tracer";
2
3
  import type { Result } from "../types";
3
4
  type F = () => Promise<unknown>;
4
5
  export interface Processor {
5
- process(id: string, ctx: InnerContext, name: string, func: F, done: (result: Result<unknown>) => void, verbose: boolean): void;
6
+ process(id: string, ctx: InnerContext, func: F, done: (result: Result<unknown>) => void, verbose: boolean, span: Span): void;
6
7
  }
7
8
  export declare class AsyncProcessor implements Processor {
8
- process<T>(id: string, ctx: InnerContext, name: string, func: () => Promise<T>, done: (result: Result<T>) => void, verbose: boolean): void;
9
- private run;
9
+ process<T>(id: string, ctx: InnerContext, func: () => Promise<T>, done: (result: Result<T>) => void, verbose: boolean, span: Span): Promise<void>;
10
10
  }
11
11
  export {};
12
12
  //# sourceMappingURL=processor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"processor.d.ts","sourceRoot":"","sources":["../../../src/processor/processor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAEvC,KAAK,CAAC,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;AAEhC,MAAM,WAAW,SAAS;IACxB,OAAO,CACL,EAAE,EAAE,MAAM,EACV,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,CAAC,EACP,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,IAAI,EACvC,OAAO,EAAE,OAAO,GACf,IAAI,CAAC;CACT;AAED,qBAAa,cAAe,YAAW,SAAS;IAC9C,OAAO,CAAC,CAAC,EACP,EAAE,EAAE,MAAM,EACV,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACtB,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI,EACjC,OAAO,EAAE,OAAO,GACf,IAAI;YAIO,GAAG;CAmClB"}
1
+ {"version":3,"file":"processor.d.ts","sourceRoot":"","sources":["../../../src/processor/processor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAEvC,KAAK,CAAC,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;AAEhC,MAAM,WAAW,SAAS;IACxB,OAAO,CACL,EAAE,EAAE,MAAM,EACV,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE,CAAC,EACP,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,IAAI,EACvC,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,IAAI,GACT,IAAI,CAAC;CACT;AAED,qBAAa,cAAe,YAAW,SAAS;IACxC,OAAO,CAAC,CAAC,EACb,EAAE,EAAE,MAAM,EACV,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACtB,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI,EACjC,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,IAAI;CA0Cb"}
@@ -2,33 +2,40 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.AsyncProcessor = void 0;
4
4
  class AsyncProcessor {
5
- process(id, ctx, name, func, done, verbose) {
6
- this.run(id, ctx, name, func, done, verbose);
7
- }
8
- async run(id, ctx, name, func, done, verbose) {
5
+ async process(id, ctx, func, done, verbose, span) {
9
6
  while (true) {
7
+ let retryIn = null;
8
+ const childSpan = span.startSpan(`${id}::${ctx.info.attempt}`, ctx.clock.now());
9
+ childSpan.setAttribute("attempt", ctx.info.attempt);
10
10
  try {
11
11
  const data = await func();
12
+ childSpan.setStatus(true);
12
13
  done({ success: true, value: data });
13
14
  return;
14
15
  }
15
16
  catch (error) {
16
- const retryIn = ctx.retryPolicy.next(ctx.info.attempt);
17
+ childSpan.setStatus(false, String(error));
18
+ retryIn = ctx.retryPolicy.next(ctx.info.attempt);
17
19
  if (retryIn === null) {
18
20
  done({ success: false, error });
19
21
  return;
20
22
  }
21
- if (Date.now() + retryIn >= ctx.info.timeout) {
23
+ // Use the same clock sourced from ctx for consistency
24
+ if (ctx.clock.now() + retryIn >= ctx.info.timeout) {
22
25
  done({ success: false, error });
23
26
  return;
24
27
  }
25
- console.warn(`Runtime. Function '${name}' failed with '${String(error)}' (retrying in ${retryIn / 1000} secs)`);
28
+ console.warn(`Runtime. Function '${ctx.func}' failed with '${String(error)}' (retrying in ${retryIn / 1000} secs)`);
26
29
  if (verbose) {
27
30
  console.warn(error);
28
31
  }
29
- await new Promise((resolve) => setTimeout(resolve, retryIn));
30
- ctx.info.attempt++;
31
32
  }
33
+ finally {
34
+ childSpan.end(ctx.clock.now());
35
+ }
36
+ // Ensure a numeric delay for setTimeout; guard against null just in case
37
+ await new Promise((resolve) => setTimeout(resolve, retryIn ?? 0));
38
+ ctx.info.attempt++;
32
39
  }
33
40
  }
34
41
  }
@@ -1 +1 @@
1
- {"version":3,"file":"processor.js","sourceRoot":"","sources":["../../../src/processor/processor.ts"],"names":[],"mappings":";;;AAgBA,MAAa,cAAc;IACzB,OAAO,CACL,EAAU,EACV,GAAiB,EACjB,IAAY,EACZ,IAAsB,EACtB,IAAiC,EACjC,OAAgB;QAEhB,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAC/C,CAAC;IAEO,KAAK,CAAC,GAAG,CACf,EAAU,EACV,GAAiB,EACjB,IAAY,EACZ,IAAsB,EACtB,IAAiC,EACjC,OAAgB;QAEhB,OAAO,IAAI,EAAE,CAAC;YACZ,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,MAAM,IAAI,EAAE,CAAC;gBAC1B,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;gBACrC,OAAO;YACT,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,OAAO,GAAG,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACvD,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;oBACrB,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;oBAChC,OAAO;gBACT,CAAC;gBAED,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,IAAI,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;oBAC7C,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;oBAChC,OAAO;gBACT,CAAC;gBAED,OAAO,CAAC,IAAI,CAAC,sBAAsB,IAAI,kBAAkB,MAAM,CAAC,KAAK,CAAC,kBAAkB,OAAO,GAAG,IAAI,QAAQ,CAAC,CAAC;gBAChH,IAAI,OAAO,EAAE,CAAC;oBACZ,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACtB,CAAC;gBAED,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;gBAC7D,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YACrB,CAAC;QACH,CAAC;IACH,CAAC;CACF;AA/CD,wCA+CC"}
1
+ {"version":3,"file":"processor.js","sourceRoot":"","sources":["../../../src/processor/processor.ts"],"names":[],"mappings":";;;AAiBA,MAAa,cAAc;IACzB,KAAK,CAAC,OAAO,CACX,EAAU,EACV,GAAiB,EACjB,IAAsB,EACtB,IAAiC,EACjC,OAAgB,EAChB,IAAU;QAEV,OAAO,IAAI,EAAE,CAAC;YACZ,IAAI,OAAO,GAAkB,IAAI,CAAC;YAClC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,KAAK,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;YAChF,SAAS,CAAC,YAAY,CAAC,SAAS,EAAE,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAEpD,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,MAAM,IAAI,EAAE,CAAC;gBAC1B,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;gBAC1B,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;gBACrC,OAAO;YACT,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,SAAS,CAAC,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;gBAE1C,OAAO,GAAG,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACjD,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;oBACrB,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;oBAChC,OAAO;gBACT,CAAC;gBAED,sDAAsD;gBACtD,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,OAAO,IAAI,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;oBAClD,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;oBAChC,OAAO;gBACT,CAAC;gBAED,OAAO,CAAC,IAAI,CACV,sBAAsB,GAAG,CAAC,IAAI,kBAAkB,MAAM,CAAC,KAAK,CAAC,kBAAkB,OAAO,GAAG,IAAI,QAAQ,CACtG,CAAC;gBACF,IAAI,OAAO,EAAE,CAAC;oBACZ,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACtB,CAAC;YACH,CAAC;oBAAS,CAAC;gBACT,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;YACjC,CAAC;YAED,yEAAyE;YACzE,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC;YAClE,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QACrB,CAAC;IACH,CAAC;CACF;AAjDD,wCAiDC"}
@@ -3,7 +3,9 @@ import { type Status } from "./computation";
3
3
  import type { Handler } from "./handler";
4
4
  import type { Heartbeat } from "./heartbeat";
5
5
  import type { DurablePromiseRecord, MessageSource, Network, TaskRecord } from "./network/network";
6
+ import type { OptionsBuilder } from "./options";
6
7
  import type { Registry } from "./registry";
8
+ import type { Span, Tracer } from "./tracer";
7
9
  import type { Callback } from "./types";
8
10
  export type PromiseHandler = {
9
11
  addEventListener: (event: "created" | "completed", callback: (p: DurablePromiseRecord) => void) => void;
@@ -14,6 +16,7 @@ export type ClaimedTask = {
14
16
  kind: "claimed";
15
17
  task: TaskRecord;
16
18
  rootPromise: DurablePromiseRecord<any>;
19
+ leafPromise?: DurablePromiseRecord<any>;
17
20
  };
18
21
  export type UnclaimedTask = {
19
22
  kind: "unclaimed";
@@ -21,34 +24,37 @@ export type UnclaimedTask = {
21
24
  };
22
25
  export declare class ResonateInner {
23
26
  private unicast;
24
- private anycastPreference;
25
- private anycastNoPreference;
27
+ private anycast;
26
28
  private pid;
27
29
  private ttl;
28
30
  private clock;
29
31
  private network;
30
32
  private handler;
33
+ private tracer;
34
+ private retries;
31
35
  private registry;
32
36
  private heartbeat;
33
37
  private dependencies;
38
+ private optsBuilder;
34
39
  private verbose;
35
40
  private computations;
36
- constructor({ unicast, anycastPreference, anycastNoPreference, pid, ttl, clock, network, handler, registry, heartbeat, dependencies, verbose, messageSource, }: {
41
+ constructor({ unicast, anycast, pid, ttl, clock, network, handler, tracer, registry, heartbeat, dependencies, optsBuilder, verbose, messageSource, }: {
37
42
  unicast: string;
38
- anycastPreference: string;
39
- anycastNoPreference: string;
43
+ anycast: string;
40
44
  pid: string;
41
45
  ttl: number;
42
46
  clock: Clock;
43
47
  network: Network;
44
48
  handler: Handler;
49
+ tracer: Tracer;
45
50
  registry: Registry;
46
51
  heartbeat: Heartbeat;
47
52
  dependencies: Map<string, any>;
53
+ optsBuilder: OptionsBuilder;
48
54
  verbose: boolean;
49
55
  messageSource?: MessageSource;
50
56
  });
51
- process(task: Task, done: Callback<Status>): void;
57
+ process(span: Span, task: Task, done: Callback<Status>): void;
52
58
  private onMessage;
53
59
  }
54
60
  //# sourceMappingURL=resonate-inner.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"resonate-inner.d.ts","sourceRoot":"","sources":["../../src/resonate-inner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAe,KAAK,MAAM,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EAAE,oBAAoB,EAAW,aAAa,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC3G,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAGxC,MAAM,MAAM,cAAc,GAAG;IAC3B,gBAAgB,EAAE,CAAC,KAAK,EAAE,SAAS,GAAG,WAAW,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,oBAAoB,KAAK,IAAI,KAAK,IAAI,CAAC;IACxG,SAAS,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,IAAI,GAAG,WAAW,GAAG,aAAa,CAAC;AAE/C,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,SAAS,CAAC;IAChB,IAAI,EAAE,UAAU,CAAC;IACjB,WAAW,EAAE,oBAAoB,CAAC,GAAG,CAAC,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,WAAW,CAAC;IAClB,IAAI,EAAE,UAAU,CAAC;CAClB,CAAC;AAEF,qBAAa,aAAa;IACxB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,mBAAmB,CAAS;IACpC,OAAO,CAAC,GAAG,CAAS;IACpB,OAAO,CAAC,GAAG,CAAS;IACpB,OAAO,CAAC,KAAK,CAAQ;IACrB,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,YAAY,CAAmB;IACvC,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,YAAY,CAAuC;gBAE/C,EACV,OAAO,EACP,iBAAiB,EACjB,mBAAmB,EACnB,GAAG,EACH,GAAG,EACH,KAAK,EACL,OAAO,EACP,OAAO,EACP,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,OAAO,EACP,aAAyB,GAC1B,EAAE;QACD,OAAO,EAAE,MAAM,CAAC;QAChB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,mBAAmB,EAAE,MAAM,CAAC;QAC5B,GAAG,EAAE,MAAM,CAAC;QACZ,GAAG,EAAE,MAAM,CAAC;QACZ,KAAK,EAAE,KAAK,CAAC;QACb,OAAO,EAAE,OAAO,CAAC;QACjB,OAAO,EAAE,OAAO,CAAC;QACjB,QAAQ,EAAE,QAAQ,CAAC;QACnB,SAAS,EAAE,SAAS,CAAC;QACrB,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC/B,OAAO,EAAE,OAAO,CAAC;QACjB,aAAa,CAAC,EAAE,aAAa,CAAC;KAC/B;IAmBM,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC;IAwBjD,OAAO,CAAC,SAAS;CAOlB"}
1
+ {"version":3,"file":"resonate-inner.d.ts","sourceRoot":"","sources":["../../src/resonate-inner.ts"],"names":[],"mappings":"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"}
@@ -35,42 +35,53 @@ var __importStar = (this && this.__importStar) || (function () {
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.ResonateInner = void 0;
37
37
  const computation_1 = require("./computation");
38
+ const retries_1 = require("./retries");
38
39
  const util = __importStar(require("./util"));
39
40
  class ResonateInner {
40
41
  unicast;
41
- anycastPreference;
42
- anycastNoPreference;
42
+ anycast;
43
43
  pid;
44
44
  ttl;
45
45
  clock;
46
46
  network;
47
47
  handler;
48
+ tracer;
49
+ retries;
48
50
  registry;
49
51
  heartbeat;
50
52
  dependencies;
53
+ optsBuilder;
51
54
  verbose;
52
55
  computations = new Map();
53
- constructor({ unicast, anycastPreference, anycastNoPreference, pid, ttl, clock, network, handler, registry, heartbeat, dependencies, verbose, messageSource = undefined, }) {
56
+ constructor({ unicast, anycast, pid, ttl, clock, network, handler, tracer, registry, heartbeat, dependencies, optsBuilder, verbose, messageSource = undefined, }) {
54
57
  this.unicast = unicast;
55
- this.anycastPreference = anycastPreference;
56
- this.anycastNoPreference = anycastNoPreference;
58
+ this.anycast = anycast;
57
59
  this.pid = pid;
58
60
  this.ttl = ttl;
59
61
  this.clock = clock;
60
62
  this.network = network;
61
63
  this.handler = handler;
64
+ this.tracer = tracer;
62
65
  this.registry = registry;
63
66
  this.heartbeat = heartbeat;
64
67
  this.dependencies = dependencies;
68
+ this.optsBuilder = optsBuilder;
65
69
  this.verbose = verbose;
70
+ // default retry policies
71
+ this.retries = new Map([
72
+ [retries_1.Constant.type, retries_1.Constant],
73
+ [retries_1.Exponential.type, retries_1.Exponential],
74
+ [retries_1.Linear.type, retries_1.Linear],
75
+ [retries_1.Never.type, retries_1.Never],
76
+ ]);
66
77
  // subscribe to invoke and resume
67
78
  messageSource?.subscribe("invoke", this.onMessage.bind(this));
68
79
  messageSource?.subscribe("resume", this.onMessage.bind(this));
69
80
  }
70
- process(task, done) {
81
+ process(span, task, done) {
71
82
  let computation = this.computations.get(task.task.rootPromiseId);
72
83
  if (!computation) {
73
- computation = new computation_1.Computation(task.task.rootPromiseId, this.unicast, this.anycastPreference, this.anycastNoPreference, this.pid, this.ttl, this.clock, this.network, this.handler, this.registry, this.heartbeat, this.dependencies, this.verbose);
84
+ computation = new computation_1.Computation(task.task.rootPromiseId, this.unicast, this.anycast, this.pid, this.ttl, this.clock, this.network, this.handler, this.retries, this.registry, this.heartbeat, this.dependencies, this.optsBuilder, this.verbose, this.tracer, span);
74
85
  this.computations.set(task.task.rootPromiseId, computation);
75
86
  }
76
87
  computation.process(task, done);
@@ -78,7 +89,7 @@ class ResonateInner {
78
89
  onMessage(msg) {
79
90
  util.assert(msg.type === "invoke" || msg.type === "resume");
80
91
  if (msg.type === "invoke" || msg.type === "resume") {
81
- this.process({ kind: "unclaimed", task: msg.task }, () => { });
92
+ this.process(this.tracer.decode(msg.headers), { kind: "unclaimed", task: msg.task }, () => { });
82
93
  }
83
94
  }
84
95
  }
@@ -1 +1 @@
1
- {"version":3,"file":"resonate-inner.js","sourceRoot":"","sources":["../../src/resonate-inner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resonate-inner.js","sourceRoot":"","sources":["../../src/resonate-inner.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,+CAAyD;AAMzD,uCAA8F;AAG9F,6CAA+B;AAqB/B,MAAa,aAAa;IAChB,OAAO,CAAS;IAChB,OAAO,CAAS;IAChB,GAAG,CAAS;IACZ,GAAG,CAAS;IACZ,KAAK,CAAQ;IACb,OAAO,CAAU;IACjB,OAAO,CAAU;IACjB,MAAM,CAAS;IACf,OAAO,CAAsC;IAC7C,QAAQ,CAAW;IACnB,SAAS,CAAY;IACrB,YAAY,CAAmB;IAC/B,WAAW,CAAiB;IAC5B,OAAO,CAAU;IACjB,YAAY,GAA6B,IAAI,GAAG,EAAE,CAAC;IAE3D,YAAY,EACV,OAAO,EACP,OAAO,EACP,GAAG,EACH,GAAG,EACH,KAAK,EACL,OAAO,EACP,OAAO,EACP,MAAM,EACN,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,WAAW,EACX,OAAO,EACP,aAAa,GAAG,SAAS,GAgB1B;QACC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QAEvB,yBAAyB;QACzB,IAAI,CAAC,OAAO,GAAG,IAAI,GAAG,CAAiC;YACrD,CAAC,kBAAQ,CAAC,IAAI,EAAE,kBAAQ,CAAC;YACzB,CAAC,qBAAW,CAAC,IAAI,EAAE,qBAAW,CAAC;YAC/B,CAAC,gBAAM,CAAC,IAAI,EAAE,gBAAM,CAAC;YACrB,CAAC,eAAK,CAAC,IAAI,EAAE,eAAK,CAAC;SACpB,CAAC,CAAC;QAEH,iCAAiC;QACjC,aAAa,EAAE,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9D,aAAa,EAAE,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAChE,CAAC;IAEM,OAAO,CAAC,IAAU,EAAE,IAAU,EAAE,IAAsB;QAC3D,IAAI,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACjE,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,WAAW,GAAG,IAAI,yBAAW,CAC3B,IAAI,CAAC,IAAI,CAAC,aAAa,EACvB,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,GAAG,EACR,IAAI,CAAC,GAAG,EACR,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,MAAM,EACX,IAAI,CACL,CAAC;YACF,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;QAC9D,CAAC;QAED,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAClC,CAAC;IAEO,SAAS,CAAC,GAAY;QAC5B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;QAE5D,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACnD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACjG,CAAC;IACH,CAAC;CACF;AA7GD,sCA6GC"}
@@ -1,7 +1,9 @@
1
- import { type Encryptor } from "../src/encryptor";
2
- import { Options } from "./options";
1
+ import { type Encryptor } from "./encryptor";
2
+ import type { MessageSource, Network } from "./network/network";
3
+ import { type Options } from "./options";
3
4
  import { Promises } from "./promises";
4
5
  import { Schedules } from "./schedules";
6
+ import { type Tracer } from "./tracer";
5
7
  import type { Func, ParamsWithOptions, Return } from "./types";
6
8
  export interface ResonateHandle<T> {
7
9
  id: string;
@@ -19,27 +21,30 @@ export interface ResonateSchedule {
19
21
  delete(): Promise<void>;
20
22
  }
21
23
  export declare class Resonate {
22
- private unicast;
23
- private anycastPreference;
24
- private anycastNoPreference;
24
+ private clock;
25
25
  private pid;
26
26
  private ttl;
27
+ private unicast;
28
+ private anycast;
29
+ private match;
27
30
  private inner;
28
31
  private network;
29
32
  private encoder;
30
33
  private encryptor;
31
34
  private verbose;
32
35
  private messageSource;
36
+ private tracer;
33
37
  private handler;
34
38
  private registry;
35
39
  private heartbeat;
36
40
  private dependencies;
41
+ private optsBuilder;
37
42
  private subscriptions;
38
43
  private subscribeEvery;
39
44
  private intervalId;
40
45
  readonly promises: Promises;
41
46
  readonly schedules: Schedules;
42
- constructor({ url, group, pid, ttl, auth, verbose, encryptor, }?: {
47
+ constructor({ url, group, pid, ttl, auth, verbose, encryptor, tracer, transport, }?: {
43
48
  url?: string;
44
49
  group?: string;
45
50
  pid?: string;
@@ -50,6 +55,8 @@ export declare class Resonate {
50
55
  };
51
56
  verbose?: boolean;
52
57
  encryptor?: Encryptor;
58
+ tracer?: Tracer;
59
+ transport?: Network & MessageSource;
53
60
  });
54
61
  /**
55
62
  * Initializes a Resonate client instance for local development.
@@ -72,9 +79,10 @@ export declare class Resonate {
72
79
  * console.log(result);
73
80
  * ```
74
81
  */
75
- static local({ verbose, encryptor, }?: {
82
+ static local({ verbose, encryptor, tracer, }?: {
76
83
  verbose?: boolean;
77
84
  encryptor?: Encryptor;
85
+ tracer?: Tracer;
78
86
  }): Resonate;
79
87
  /**
80
88
  * Initializes a Resonate client instance with remote configuration.
@@ -111,7 +119,7 @@ export declare class Resonate {
111
119
  * console.log(result);
112
120
  * ```
113
121
  */
114
- static remote({ url, group, pid, ttl, auth, verbose, encryptor, }?: {
122
+ static remote({ url, group, pid, ttl, auth, verbose, encryptor, tracer, }?: {
115
123
  url?: string;
116
124
  group?: string;
117
125
  pid?: string;
@@ -122,6 +130,7 @@ export declare class Resonate {
122
130
  };
123
131
  verbose?: boolean;
124
132
  encryptor?: Encryptor;
133
+ tracer?: Tracer;
125
134
  messageSourceAuth?: {
126
135
  username: string;
127
136
  password: string;
@@ -314,7 +323,7 @@ export declare class Resonate {
314
323
  * The handle can be awaited or queried to retrieve the final result.
315
324
  */
316
325
  get<T = any>(id: string): Promise<ResonateHandle<T>>;
317
- options(opts?: Partial<Options>): Options;
326
+ options(opts?: Partial<Pick<Options, "tags" | "target" | "timeout" | "version" | "retryPolicy">>): Options;
318
327
  private getArgsAndOpts;
319
328
  setDependency(name: string, obj: any): void;
320
329
  stop(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"resonate.d.ts","sourceRoot":"","sources":["../../src/resonate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resonate.d.ts","sourceRoot":"","sources":["../../src/resonate.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,SAAS,EAAiB,MAAM,aAAa,CAAC;AAI5D,OAAO,KAAK,EAMV,aAAa,EACb,OAAO,EAGR,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,KAAK,OAAO,EAAkB,MAAM,WAAW,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGtC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAc,KAAK,MAAM,EAAE,MAAM,UAAU,CAAC;AACnD,OAAO,KAAK,EAAE,IAAI,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAG/D,MAAM,WAAW,cAAc,CAAC,CAAC;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC;IACrB,IAAI,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;CAC1B;AAED,MAAM,WAAW,YAAY,CAAC,CAAC,SAAS,IAAI;IAC1C,GAAG,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,iBAAiB,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACvE,GAAG,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,iBAAiB,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACvE,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,iBAAiB,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5F,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,iBAAiB,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5F,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,OAAO,CAAC;CAC/C;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACzB;AASD,qBAAa,QAAQ;IACnB,OAAO,CAAC,KAAK,CAAY;IAEzB,OAAO,CAAC,GAAG,CAAS;IACpB,OAAO,CAAC,GAAG,CAAS;IAEpB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,KAAK,CAA6B;IAE1C,OAAO,CAAC,KAAK,CAAgB;IAC7B,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,aAAa,CAAgB;IAErC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,YAAY,CAAmB;IACvC,OAAO,CAAC,WAAW,CAAiB;IACpC,OAAO,CAAC,aAAa,CAA6C;IAClE,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,UAAU,CAAiC;IAEnD,SAAgB,QAAQ,EAAE,QAAQ,CAAC;IACnC,SAAgB,SAAS,EAAE,SAAS,CAAC;gBAEzB,EACV,GAAe,EACf,KAAiB,EACjB,GAAe,EACf,GAAkB,EAClB,IAAgB,EAChB,OAAe,EACf,SAAqB,EACrB,MAAkB,EAClB,SAAqB,GACtB,GAAE;QACD,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,IAAI,CAAC,EAAE;YAAE,QAAQ,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAA;SAAE,CAAC;QAC9C,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,SAAS,CAAC,EAAE,SAAS,CAAC;QACtB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,SAAS,CAAC,EAAE,OAAO,GAAG,aAAa,CAAC;KAChC;IAwHN;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,MAAM,CAAC,KAAK,CAAC,EACX,OAAe,EACf,SAAqB,EACrB,MAAkB,GACnB,GAAE;QACD,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,SAAS,CAAC,EAAE,SAAS,CAAC;QACtB,MAAM,CAAC,EAAE,MAAM,CAAC;KACZ,GAAG,QAAQ;IAWjB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkCG;IACH,MAAM,CAAC,MAAM,CAAC,EACZ,GAA6B,EAC7B,KAAiB,EACjB,GAA2C,EAC3C,GAAkB,EAClB,IAAgB,EAChB,OAAe,EACf,SAAqB,EACrB,MAAkB,GACnB,GAAE;QACD,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,IAAI,CAAC,EAAE;YAAE,QAAQ,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAA;SAAE,CAAC;QAC9C,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,SAAS,CAAC,EAAE,SAAS,CAAC;QACtB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,iBAAiB,CAAC,EAAE;YAAE,QAAQ,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAA;SAAE,CAAC;KACvD,GAAG,QAAQ;IAIjB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACI,QAAQ,CAAC,CAAC,SAAS,IAAI,EAC5B,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,CAAC,EACP,OAAO,CAAC,EAAE;QACR,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,GACA,YAAY,CAAC,CAAC,CAAC;IACX,QAAQ,CAAC,CAAC,SAAS,IAAI,EAC5B,IAAI,EAAE,CAAC,EACP,OAAO,CAAC,EAAE;QACR,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,GACA,YAAY,CAAC,CAAC,CAAC;IA+BlB;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACU,GAAG,CAAC,CAAC,SAAS,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAC3F,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC;IAC5D,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,GAAG,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC;IAKtF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8BG;IACU,QAAQ,CAAC,CAAC,SAAS,IAAI,EAClC,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,CAAC,EACP,GAAG,IAAI,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAC5B,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACxB,QAAQ,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;IACjF,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,GAAG,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;IAwE1G;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACU,GAAG,CAAC,CAAC,SAAS,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAC3F,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC;IAC5D,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,GAAG,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC;IAKtF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8BG;IACU,QAAQ,CAAC,CAAC,SAAS,IAAI,EAClC,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,CAAC,EACP,GAAG,IAAI,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAC5B,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACxB,QAAQ,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;IACjF,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,GAAG,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;IAyD7F,QAAQ,CAAC,CAAC,SAAS,IAAI,EAClC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,CAAC,EACP,GAAG,IAAI,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAC5B,OAAO,CAAC,gBAAgB,CAAC;IACf,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAoC1G;;;;;;;;;;;;;;;;;OAiBG;IACU,GAAG,CAAC,CAAC,GAAG,GAAG,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;IAS1D,OAAO,CACZ,IAAI,GAAE,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,aAAa,CAAC,CAAM,GAC3F,OAAO;IAIV,OAAO,CAAC,cAAc;IAIf,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG,IAAI;IAI3C,IAAI;IAOX,OAAO,CAAC,oBAAoB;IAqB5B,OAAO,CAAC,aAAa;IAqBrB,OAAO,CAAC,kBAAkB;IAgB1B,OAAO,CAAC,WAAW;IAYnB,OAAO,CAAC,YAAY;IAgBpB,OAAO,CAAC,SAAS;YA8BH,SAAS;IA4BvB,OAAO,CAAC,MAAM;CAcf"}