@temporalio/workflow 1.0.0-rc.0 → 1.0.0-rc.1

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/lib/workflow.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.stackTraceQuery = exports.taskInfo = exports.upsertSearchAttributes = exports.setHandler = exports.defineQuery = exports.defineSignal = exports.condition = exports.deprecatePatch = exports.patched = exports.uuid4 = exports.continueAsNew = exports.makeContinueAsNewFunc = exports.proxySinks = exports.inWorkflowContext = exports.workflowInfo = exports.executeChild = exports.startChild = exports.getExternalWorkflowHandle = exports.proxyLocalActivities = exports.proxyActivities = exports.scheduleLocalActivity = exports.scheduleActivity = exports.sleep = exports.addDefaultWorkflowOptions = void 0;
3
+ exports.stackTraceQuery = exports.taskInfo = exports.upsertSearchAttributes = exports.setHandler = exports.defineQuery = exports.defineSignal = exports.condition = exports.deprecatePatch = exports.patched = exports.uuid4 = exports.continueAsNew = exports.makeContinueAsNewFunc = exports.proxySinks = exports.inWorkflowContext = exports.workflowInfo = exports.executeChild = exports.startChild = exports.getExternalWorkflowHandle = exports.proxyLocalActivities = exports.proxyActivities = exports.NotAnActivityMethod = exports.scheduleLocalActivity = exports.scheduleActivity = exports.sleep = exports.addDefaultWorkflowOptions = void 0;
4
4
  const common_1 = require("@temporalio/common");
5
5
  const internal_workflow_common_1 = require("@temporalio/internal-workflow-common");
6
6
  const cancellation_scope_1 = require("./cancellation-scope");
@@ -354,19 +354,25 @@ function signalWorkflowNextHandler({ seq, signalName, args, target, headers }) {
354
354
  internals_1.state.completions.signalWorkflow.set(seq, { resolve, reject });
355
355
  });
356
356
  }
357
+ /**
358
+ * Symbol used in the return type of proxy methods to mark that an attribute on the source type is not a method.
359
+ *
360
+ * @see {@link ActivityInterfaceFor}
361
+ * @see {@link proxyActivities}
362
+ * @see {@link proxyLocalActivities}
363
+ */
364
+ exports.NotAnActivityMethod = Symbol.for('__TEMPORAL_NOT_AN_ACTIVITY_METHOD');
357
365
  /**
358
366
  * Configure Activity functions with given {@link ActivityOptions}.
359
367
  *
360
368
  * This method may be called multiple times to setup Activities with different options.
361
369
  *
362
- * @return a [Proxy](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy)
363
- * for which each attribute is a callable Activity function
364
- *
365
- * @typeparam A An {@link ActivityInterface} - mapping of name to function
370
+ * @return a {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy | Proxy} for
371
+ * which each attribute is a callable Activity function
366
372
  *
367
373
  * @example
368
374
  * ```ts
369
- * import { proxyActivities, ActivityInterface } from '@temporalio/workflow';
375
+ * import { proxyActivities } from '@temporalio/workflow';
370
376
  * import * as activities from '../activities';
371
377
  *
372
378
  * // Setup Activities from module exports
@@ -375,7 +381,7 @@ function signalWorkflowNextHandler({ seq, signalName, args, target, headers }) {
375
381
  * });
376
382
  *
377
383
  * // Setup Activities from an explicit interface (e.g. when defined by another SDK)
378
- * interface JavaActivities extends ActivityInterface {
384
+ * interface JavaActivities {
379
385
  * httpGetFromJava(url: string): Promise<string>
380
386
  * someOtherJavaActivity(arg1: number, arg2: string): Promise<string>;
381
387
  * }
@@ -417,14 +423,12 @@ exports.proxyActivities = proxyActivities;
417
423
  *
418
424
  * This method may be called multiple times to setup Activities with different options.
419
425
  *
420
- * @return a [Proxy](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy)
426
+ * @return a {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy | Proxy}
421
427
  * for which each attribute is a callable Activity function
422
428
  *
423
- * @typeparam A An {@link ActivityInterface} - mapping of name to function
424
- *
425
429
  * @experimental
426
430
  *
427
- * See {@link proxyActivities} for examples
431
+ * @see {@link proxyActivities} for examples
428
432
  */
429
433
  function proxyLocalActivities(options) {
430
434
  if (options === undefined) {
@@ -637,9 +641,9 @@ exports.proxySinks = proxySinks;
637
641
  /**
638
642
  * Returns a function `f` that will cause the current Workflow to ContinueAsNew when called.
639
643
  *
640
- * `f` takes the same arguments as the Workflow execute function supplied to typeparam `F`.
644
+ * `f` takes the same arguments as the Workflow function supplied to typeparam `F`.
641
645
  *
642
- * Once `f` is called, Workflow execution immediately completes.
646
+ * Once `f` is called, Workflow Execution immediately completes.
643
647
  */
644
648
  function makeContinueAsNewFunc(options) {
645
649
  const info = workflowInfo();
@@ -674,24 +678,21 @@ function makeContinueAsNewFunc(options) {
674
678
  }
675
679
  exports.makeContinueAsNewFunc = makeContinueAsNewFunc;
676
680
  /**
677
- * Continues current Workflow execution as new with default options.
681
+ * {@link https://docs.temporal.io/concepts/what-is-continue-as-new/ | Continues-As-New} the current Workflow Execution
682
+ * with default options.
678
683
  *
679
- * Shorthand for `makeContinueAsNewFunc<F>()(...args)`.
684
+ * Shorthand for `makeContinueAsNewFunc<F>()(...args)`. (See: {@link makeContinueAsNewFunc}.)
680
685
  *
681
686
  * @example
682
687
  *
683
- * ```ts
684
- * import { continueAsNew } from '@temporalio/workflow';
688
+ *```ts
689
+ *import { continueAsNew } from '@temporalio/workflow';
685
690
  *
686
- * export function myWorkflow(n: number) {
687
- * return {
688
- * async execute() {
689
- * // ... Workflow logic
690
- * await continueAsNew<typeof myWorkflow>(n + 1);
691
- * }
692
- * };
693
- * }
694
- * ```
691
+ *export async function myWorkflow(n: number): Promise<void> {
692
+ * // ... Workflow logic
693
+ * await continueAsNew<typeof myWorkflow>(n + 1);
694
+ *}
695
+ *```
695
696
  */
696
697
  function continueAsNew(...args) {
697
698
  return makeContinueAsNewFunc()(...args);
@@ -724,7 +725,7 @@ exports.uuid4 = uuid4;
724
725
  /**
725
726
  * Patch or upgrade workflow code by checking or stating that this workflow has a certain patch.
726
727
  *
727
- * See [docs page](https://docs.temporal.io/typescript/versioning) for info.
728
+ * See {@link https://docs.temporal.io/typescript/versioning | docs page} for info.
728
729
  *
729
730
  * If the workflow is replaying an existing history, then this function returns true if that
730
731
  * history was produced by a worker which also had a `patched` call with the same `patchId`.
@@ -745,7 +746,7 @@ exports.patched = patched;
745
746
  /**
746
747
  * Indicate that a patch is being phased out.
747
748
  *
748
- * See [docs page](https://docs.temporal.io/typescript/versioning) for info.
749
+ * See {@link https://docs.temporal.io/typescript/versioning | docs page} for info.
749
750
  *
750
751
  * Workflows with this call may be deployed alongside workflows with a {@link patched} call, but
751
752
  * they must *not* be deployed while any workers still exist running old code without a
@@ -1 +1 @@
1
- {"version":3,"file":"workflow.js","sourceRoot":"","sources":["../src/workflow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow.js","sourceRoot":"","sources":["../src/workflow.ts"],"names":[],"mappings":";;;AAAA,+CAAgG;AAChG,mFAmB8C;AAC9C,6DAAsF;AAQtF,6CAOsB;AACtB,2CAA4D;AAE5D,mDAAiD;AAGjD,8BAA8B;AAC9B,IAAA,gDAA2B,EAAC,KAAK,CAAC,CAAC;AAEnC;;GAEG;AACH,SAAgB,yBAAyB,CACvC,IAA+C;IAE/C,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC;IAC3C,OAAO;QACL,UAAU,EAAE,UAAU,IAAI,KAAK,EAAE;QACjC,IAAI,EAAE,IAAI,IAAI,EAAE;QAChB,gBAAgB,EAAE,0CAA6B,CAAC,2BAA2B;QAC3E,GAAG,IAAI;KACR,CAAC;AACJ,CAAC;AAVD,8DAUC;AAED;;GAEG;AACH,SAAS,gBAAgB,CAAC,KAAiB;IACzC,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC3C,MAAM,KAAK,GAAG,sCAAiB,CAAC,OAAO,EAAE,CAAC;QAC1C,IAAI,KAAK,CAAC,mBAAmB,EAAE;YAC7B,IAAA,8BAAc,EAAC,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;YACpD,OAAO;SACR;QACD,IAAI,KAAK,CAAC,WAAW,EAAE;YACrB,IAAA,8BAAc,EACZ,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBAClC,IAAI,CAAC,iBAAK,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;oBAC9C,OAAO,CAAC,sCAAsC;iBAC/C;gBACD,iBAAK,CAAC,WAAW,CAAC;oBAChB,WAAW,EAAE;wBACX,GAAG,EAAE,KAAK,CAAC,GAAG;qBACf;iBACF,CAAC,CAAC;gBACH,MAAM,CAAC,GAAG,CAAC,CAAC;YACd,CAAC,CAAC,CACH,CAAC;SACH;QACD,iBAAK,CAAC,WAAW,CAAC;YAChB,UAAU,EAAE;gBACV,GAAG,EAAE,KAAK,CAAC,GAAG;gBACd,kBAAkB,EAAE,IAAA,iCAAM,EAAC,KAAK,CAAC,UAAU,CAAC;aAC7C;SACF,CAAC,CAAC;QACH,iBAAK,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE;YACrC,OAAO;YACP,MAAM;SACP,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,KAAK,CAAC,EAAmB;IACvC,MAAM,GAAG,GAAG,iBAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;IAEnC,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAA,qCAAU,EAAC,EAAE,CAAC,CAAC,CAAC;IAE/C,MAAM,OAAO,GAAG,IAAA,8CAAmB,EAAC,iBAAK,CAAC,YAAY,CAAC,QAAQ,EAAE,YAAY,EAAE,gBAAgB,CAAC,CAAC;IAEjG,OAAO,OAAO,CAAC;QACb,UAAU;QACV,GAAG;KACJ,CAAC,CAAC;AACL,CAAC;AAXD,sBAWC;AAED,SAAS,uBAAuB,CAAC,OAAwB;IACvD,IAAI,OAAO,CAAC,sBAAsB,KAAK,SAAS,IAAI,OAAO,CAAC,mBAAmB,KAAK,SAAS,EAAE;QAC7F,MAAM,IAAI,SAAS,CAAC,+DAA+D,CAAC,CAAC;KACtF;AACH,CAAC;AAED,mDAAmD;AACnD,MAAM,4BAA4B,GAAG,uBAAuB,CAAC;AAE7D;;;;GAIG;AACH;;GAEG;AACH,SAAS,2BAA2B,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,YAAY,EAAiB;IAC/F,uBAAuB,CAAC,OAAO,CAAC,CAAC;IACjC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,KAAK,GAAG,sCAAiB,CAAC,OAAO,EAAE,CAAC;QAC1C,IAAI,KAAK,CAAC,mBAAmB,EAAE;YAC7B,IAAA,8BAAc,EAAC,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;YACpD,OAAO;SACR;QACD,IAAI,KAAK,CAAC,WAAW,EAAE;YACrB,IAAA,8BAAc,EACZ,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,GAAG,EAAE;gBAC/B,IAAI,CAAC,iBAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;oBACxC,OAAO,CAAC,sCAAsC;iBAC/C;gBACD,iBAAK,CAAC,WAAW,CAAC;oBAChB,qBAAqB,EAAE;wBACrB,GAAG;qBACJ;iBACF,CAAC,CAAC;YACL,CAAC,CAAC,CACH,CAAC;SACH;QACD,iBAAK,CAAC,WAAW,CAAC;YAChB,gBAAgB,EAAE;gBAChB,GAAG;gBACH,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,GAAG,GAAG,EAAE;gBAC1C,YAAY;gBACZ,SAAS,EAAE,IAAA,mBAAU,EAAC,iBAAK,CAAC,gBAAgB,EAAE,GAAG,IAAI,CAAC;gBACtD,WAAW,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,IAAA,6CAAkB,EAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;gBAC1E,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,iBAAK,CAAC,IAAI,EAAE,SAAS;gBACrD,gBAAgB,EAAE,IAAA,yCAAc,EAAC,OAAO,CAAC,gBAAgB,CAAC;gBAC1D,sBAAsB,EAAE,IAAA,yCAAc,EAAC,OAAO,CAAC,sBAAsB,CAAC;gBACtE,mBAAmB,EAAE,IAAA,yCAAc,EAAC,OAAO,CAAC,mBAAmB,CAAC;gBAChE,sBAAsB,EAAE,IAAA,yCAAc,EAAC,OAAO,CAAC,sBAAsB,CAAC;gBACtE,OAAO;gBACP,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;aAC3C;SACF,CAAC,CAAC;QACH,iBAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE;YAClC,OAAO;YACP,MAAM;SACP,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,gCAAgC,CAAC,EAC9C,OAAO,EACP,IAAI,EACJ,OAAO,EACP,GAAG,EACH,YAAY,EACZ,OAAO,EACP,oBAAoB,GACD;IACnB,4BAA4B,CAAC,OAAO,CAAC,CAAC;IAEtC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,KAAK,GAAG,sCAAiB,CAAC,OAAO,EAAE,CAAC;QAC1C,IAAI,KAAK,CAAC,mBAAmB,EAAE;YAC7B,IAAA,8BAAc,EAAC,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;YACpD,OAAO;SACR;QACD,IAAI,KAAK,CAAC,WAAW,EAAE;YACrB,IAAA,8BAAc,EACZ,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,GAAG,EAAE;gBAC/B,IAAI,CAAC,iBAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;oBACxC,OAAO,CAAC,sCAAsC;iBAC/C;gBACD,iBAAK,CAAC,WAAW,CAAC;oBAChB,0BAA0B,EAAE;wBAC1B,GAAG;qBACJ;iBACF,CAAC,CAAC;YACL,CAAC,CAAC,CACH,CAAC;SACH;QACD,iBAAK,CAAC,WAAW,CAAC;YAChB,qBAAqB,EAAE;gBACrB,GAAG;gBACH,OAAO;gBACP,oBAAoB;gBACpB,qDAAqD;gBACrD,UAAU,EAAE,GAAG,GAAG,EAAE;gBACpB,YAAY;gBACZ,SAAS,EAAE,IAAA,mBAAU,EAAC,iBAAK,CAAC,gBAAgB,EAAE,GAAG,IAAI,CAAC;gBACtD,WAAW,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,IAAA,6CAAkB,EAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;gBAC1E,sBAAsB,EAAE,IAAA,yCAAc,EAAC,OAAO,CAAC,sBAAsB,CAAC;gBACtE,mBAAmB,EAAE,IAAA,yCAAc,EAAC,OAAO,CAAC,mBAAmB,CAAC;gBAChE,sBAAsB,EAAE,IAAA,yCAAc,EAAC,OAAO,CAAC,sBAAsB,CAAC;gBACtE,mBAAmB,EAAE,IAAA,yCAAc,EAAC,OAAO,CAAC,mBAAmB,CAAC;gBAChE,OAAO;gBACP,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;aAC3C;SACF,CAAC,CAAC;QACH,iBAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE;YAClC,OAAO;YACP,MAAM;SACP,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,SAAgB,gBAAgB,CAAI,YAAoB,EAAE,IAAW,EAAE,OAAwB;IAC7F,IAAI,OAAO,KAAK,SAAS,EAAE;QACzB,MAAM,IAAI,SAAS,CAAC,4BAA4B,CAAC,CAAC;KACnD;IACD,MAAM,GAAG,GAAG,iBAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;IACtC,MAAM,OAAO,GAAG,IAAA,8CAAmB,EAAC,iBAAK,CAAC,YAAY,CAAC,QAAQ,EAAE,kBAAkB,EAAE,2BAA2B,CAAC,CAAC;IAElH,OAAO,OAAO,CAAC;QACb,YAAY;QACZ,OAAO,EAAE,EAAE;QACX,OAAO;QACP,IAAI;QACJ,GAAG;KACJ,CAAe,CAAC;AACnB,CAAC;AAdD,4CAcC;AAED;;;GAGG;AACI,KAAK,UAAU,qBAAqB,CACzC,YAAoB,EACpB,IAAW,EACX,OAA6B;IAE7B,IAAI,OAAO,KAAK,SAAS,EAAE;QACzB,MAAM,IAAI,SAAS,CAAC,4BAA4B,CAAC,CAAC;KACnD;IAED,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,IAAI,oBAAoB,GAAG,SAAS,CAAC;IAErC,SAAS;QACP,MAAM,GAAG,GAAG,iBAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;QACtC,MAAM,OAAO,GAAG,IAAA,8CAAmB,EACjC,iBAAK,CAAC,YAAY,CAAC,QAAQ,EAC3B,uBAAuB,EACvB,gCAAgC,CACjC,CAAC;QAEF,IAAI;YACF,OAAO,CAAC,MAAM,OAAO,CAAC;gBACpB,YAAY;gBACZ,OAAO,EAAE,EAAE;gBACX,OAAO;gBACP,IAAI;gBACJ,GAAG;gBACH,OAAO;gBACP,oBAAoB;aACrB,CAAC,CAAe,CAAC;SACnB;QAAC,OAAO,GAAG,EAAE;YACZ,IAAI,GAAG,YAAY,kCAAsB,EAAE;gBACzC,MAAM,KAAK,CAAC,IAAA,iCAAM,EAAC,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC;gBACjD,IAAI,OAAO,GAAG,CAAC,OAAO,CAAC,OAAO,KAAK,QAAQ,EAAE;oBAC3C,MAAM,IAAI,SAAS,CAAC,8BAA8B,CAAC,CAAC;iBACrD;gBACD,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC;gBAC9B,oBAAoB,GAAG,GAAG,CAAC,OAAO,CAAC,oBAAoB,IAAI,SAAS,CAAC;aACtE;iBAAM;gBACL,MAAM,GAAG,CAAC;aACX;SACF;KACF;AACH,CAAC;AA3CD,sDA2CC;AAED,SAAS,sCAAsC,CAAC,EAC9C,OAAO,EACP,OAAO,EACP,YAAY,EACZ,GAAG,GAC8B;IACjC,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,KAAK,EAAE,CAAC;IACjD,MAAM,YAAY,GAAG,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC3D,MAAM,KAAK,GAAG,sCAAiB,CAAC,OAAO,EAAE,CAAC;QAC1C,IAAI,KAAK,CAAC,mBAAmB,EAAE;YAC7B,IAAA,8BAAc,EAAC,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;YACpD,OAAO;SACR;QACD,IAAI,KAAK,CAAC,WAAW,EAAE;YACrB,IAAA,8BAAc,EACZ,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,GAAG,EAAE;gBAC/B,MAAM,QAAQ,GAAG,CAAC,iBAAK,CAAC,WAAW,CAAC,qBAAqB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACnE,MAAM,OAAO,GAAG,CAAC,iBAAK,CAAC,WAAW,CAAC,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBAE/D,IAAI,OAAO,IAAI,CAAC,QAAQ,EAAE;oBACxB,MAAM,SAAS,GAAG,iBAAK,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC;oBAClD,iBAAK,CAAC,WAAW,CAAC;wBAChB,sCAAsC,EAAE;4BACtC,GAAG,EAAE,SAAS;4BACd,eAAe,EAAE,UAAU;yBAC5B;qBACF,CAAC,CAAC;oBACH,oCAAoC;oBACpC,iBAAK,CAAC,WAAW,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC;iBACxG;qBAAM,IAAI,CAAC,OAAO,EAAE;oBACnB,iBAAK,CAAC,WAAW,CAAC;wBAChB,qCAAqC,EAAE,EAAE,gBAAgB,EAAE,GAAG,EAAE;qBACjE,CAAC,CAAC;iBACJ;gBACD,8BAA8B;YAChC,CAAC,CAAC,CACH,CAAC;SACH;QACD,iBAAK,CAAC,WAAW,CAAC;YAChB,2BAA2B,EAAE;gBAC3B,GAAG;gBACH,UAAU;gBACV,YAAY;gBACZ,KAAK,EAAE,IAAA,mBAAU,EAAC,iBAAK,CAAC,gBAAgB,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;gBAC1D,WAAW,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,IAAA,6CAAkB,EAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;gBAC1E,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,iBAAK,CAAC,IAAI,EAAE,SAAS;gBACrD,wBAAwB,EAAE,IAAA,yCAAc,EAAC,OAAO,CAAC,wBAAwB,CAAC;gBAC1E,kBAAkB,EAAE,IAAA,yCAAc,EAAC,OAAO,CAAC,kBAAkB,CAAC;gBAC9D,mBAAmB,EAAE,IAAA,yCAAc,EAAC,OAAO,CAAC,mBAAmB,CAAC;gBAChE,SAAS,EAAE,YAAY,EAAE,CAAC,SAAS;gBACnC,OAAO;gBACP,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;gBAC1C,qBAAqB,EAAE,OAAO,CAAC,qBAAqB;gBACpD,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;gBAC5C,YAAY,EAAE,OAAO,CAAC,YAAY;gBAClC,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;oBACxC,CAAC,CAAC,IAAA,sBAAa,EAAC,wCAA+B,EAAE,OAAO,CAAC,gBAAgB,CAAC;oBAC1E,CAAC,CAAC,SAAS;gBACb,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,IAAA,sBAAa,EAAC,iBAAK,CAAC,gBAAgB,EAAE,OAAO,CAAC,IAAI,CAAC;aAC1E;SACF,CAAC,CAAC;QACH,iBAAK,CAAC,WAAW,CAAC,kBAAkB,CAAC,GAAG,CAAC,GAAG,EAAE;YAC5C,OAAO;YACP,MAAM;SACP,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,iFAAiF;IACjF,4EAA4E;IAC5E,MAAM,eAAe,GAAG,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACtD,yDAAyD;QACzD,IAAA,8BAAc,EAAC,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;QAC3C,iBAAK,CAAC,WAAW,CAAC,qBAAqB,CAAC,GAAG,CAAC,GAAG,EAAE;YAC/C,OAAO;YACP,MAAM;SACP,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IACH,IAAA,8BAAc,EAAC,YAAY,CAAC,CAAC;IAC7B,IAAA,8BAAc,EAAC,eAAe,CAAC,CAAC;IAChC,0EAA0E;IAC1E,IAAA,8BAAc,EAAC,eAAe,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IACvD,MAAM,GAAG,GAAG,IAAI,OAAO,CAAsC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC;IACpH,IAAA,8BAAc,EAAC,GAAG,CAAC,CAAC;IACpB,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,yBAAyB,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAuB;IAChG,OAAO,IAAI,OAAO,CAAM,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC1C,IAAI,iBAAK,CAAC,IAAI,KAAK,SAAS,EAAE;YAC5B,MAAM,IAAI,4CAAiB,CAAC,wBAAwB,CAAC,CAAC;SACvD;QACD,MAAM,KAAK,GAAG,sCAAiB,CAAC,OAAO,EAAE,CAAC;QAC1C,IAAI,KAAK,CAAC,mBAAmB,EAAE;YAC7B,IAAA,8BAAc,EAAC,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;YACpD,OAAO;SACR;QAED,IAAI,KAAK,CAAC,WAAW,EAAE;YACrB,IAAA,8BAAc,EACZ,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,GAAG,EAAE;gBAC/B,IAAI,CAAC,iBAAK,CAAC,WAAW,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;oBAC9C,OAAO;iBACR;gBACD,iBAAK,CAAC,WAAW,CAAC,EAAE,oBAAoB,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;YACvD,CAAC,CAAC,CACH,CAAC;SACH;QACD,iBAAK,CAAC,WAAW,CAAC;YAChB,+BAA+B,EAAE;gBAC/B,GAAG;gBACH,IAAI,EAAE,IAAA,mBAAU,EAAC,iBAAK,CAAC,gBAAgB,EAAE,GAAG,IAAI,CAAC;gBACjD,OAAO;gBACP,UAAU;gBACV,GAAG,CAAC,MAAM,CAAC,IAAI,KAAK,UAAU;oBAC5B,CAAC,CAAC;wBACE,iBAAiB,EAAE;4BACjB,SAAS,EAAE,iBAAK,CAAC,IAAI,CAAC,SAAS;4BAC/B,GAAG,MAAM,CAAC,iBAAiB;yBAC5B;qBACF;oBACH,CAAC,CAAC;wBACE,eAAe,EAAE,MAAM,CAAC,eAAe;qBACxC,CAAC;aACP;SACF,CAAC,CAAC;QAEH,iBAAK,CAAC,WAAW,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;GAMG;AACU,QAAA,mBAAmB,GAAG,MAAM,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;AA8BnF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,SAAgB,eAAe,CAAwB,OAAwB;IAC7E,IAAI,OAAO,KAAK,SAAS,EAAE;QACzB,MAAM,IAAI,SAAS,CAAC,yBAAyB,CAAC,CAAC;KAChD;IACD,4DAA4D;IAC5D,uBAAuB,CAAC,OAAO,CAAC,CAAC;IACjC,OAAO,IAAI,KAAK,CACd,EAAE,EACF;QACE,GAAG,CAAC,CAAC,EAAE,YAAY;YACjB,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE;gBACpC,MAAM,IAAI,SAAS,CAAC,uDAAuD,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;aACpG;YACD,OAAO,SAAS,qBAAqB,CAAC,GAAG,IAAe;gBACtD,OAAO,gBAAgB,CAAC,YAAY,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;YACvD,CAAC,CAAC;QACJ,CAAC;KACF,CACK,CAAC;AACX,CAAC;AAnBD,0CAmBC;AAED;;;;;;;;;;;GAWG;AACH,SAAgB,oBAAoB,CAAwB,OAA6B;IACvF,IAAI,OAAO,KAAK,SAAS,EAAE;QACzB,MAAM,IAAI,SAAS,CAAC,yBAAyB,CAAC,CAAC;KAChD;IACD,4DAA4D;IAC5D,4BAA4B,CAAC,OAAO,CAAC,CAAC;IACtC,OAAO,IAAI,KAAK,CACd,EAAE,EACF;QACE,GAAG,CAAC,CAAC,EAAE,YAAY;YACjB,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE;gBACpC,MAAM,IAAI,SAAS,CAAC,uDAAuD,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;aACpG;YACD,OAAO,SAAS,0BAA0B,CAAC,GAAG,IAAe;gBAC3D,OAAO,qBAAqB,CAAC,YAAY,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;YAC5D,CAAC,CAAC;QACJ,CAAC;KACF,CACK,CAAC;AACX,CAAC;AAnBD,oDAmBC;AAED,4DAA4D;AAC5D,MAAM,wBAAwB,GAAG,6DAA6D,CAAC;AAE/F;;;GAGG;AACH,SAAgB,yBAAyB,CAAC,UAAkB,EAAE,KAAc;IAC1E,OAAO;QACL,UAAU;QACV,KAAK;QACL,MAAM;YACJ,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBAC3C,IAAI,iBAAK,CAAC,IAAI,KAAK,SAAS,EAAE;oBAC5B,MAAM,IAAI,4CAAiB,CAAC,wBAAwB,CAAC,CAAC;iBACvD;gBAED,mEAAmE;gBACnE,oEAAoE;gBACpE,wEAAwE;gBACxE,YAAY;gBACZ,EAAE;gBACF,kEAAkE;gBAClE,sCAAsC;gBACtC,MAAM,KAAK,GAAG,sCAAiB,CAAC,OAAO,EAAE,CAAC;gBAC1C,IAAI,KAAK,CAAC,WAAW,EAAE;oBACrB,IAAA,8BAAc,EACZ,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;wBAClC,IAAI,OAAO,CAAC,wBAAwB,CAAC,EAAE;4BACrC,MAAM,CAAC,GAAG,CAAC,CAAC;yBACb;oBACH,CAAC,CAAC,CACH,CAAC;iBACH;gBACD,IAAI,KAAK,CAAC,mBAAmB,EAAE;oBAC7B,IAAI,OAAO,CAAC,wBAAwB,CAAC,EAAE;wBACrC,OAAO;qBACR;iBACF;gBAED,MAAM,GAAG,GAAG,iBAAK,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC;gBAC5C,iBAAK,CAAC,WAAW,CAAC;oBAChB,sCAAsC,EAAE;wBACtC,GAAG;wBACH,iBAAiB,EAAE;4BACjB,SAAS,EAAE,iBAAK,CAAC,IAAI,CAAC,SAAS;4BAC/B,UAAU;4BACV,KAAK;yBACN;qBACF;iBACF,CAAC,CAAC;gBACH,iBAAK,CAAC,WAAW,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;YACjE,CAAC,CAAC,CAAC;QACL,CAAC;QACD,MAAM,CAAqB,GAAoC,EAAE,GAAG,IAAU;YAC5E,OAAO,IAAA,8CAAmB,EACxB,iBAAK,CAAC,YAAY,CAAC,QAAQ,EAC3B,gBAAgB,EAChB,yBAAyB,CAC1B,CAAC;gBACA,GAAG,EAAE,iBAAK,CAAC,QAAQ,CAAC,cAAc,EAAE;gBACpC,UAAU,EAAE,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI;gBACpD,IAAI;gBACJ,MAAM,EAAE;oBACN,IAAI,EAAE,UAAU;oBAChB,iBAAiB,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE;iBACzC;gBACD,OAAO,EAAE,EAAE;aACZ,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC;AAhED,8DAgEC;AA0DM,KAAK,UAAU,UAAU,CAC9B,kBAA8B,EAC9B,OAAmD;IAEnD,MAAM,mBAAmB,GAAG,yBAAyB,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;IACrE,MAAM,YAAY,GAAG,OAAO,kBAAkB,KAAK,QAAQ,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC;IAC3G,MAAM,OAAO,GAAG,IAAA,8CAAmB,EACjC,iBAAK,CAAC,YAAY,CAAC,QAAQ,EAC3B,6BAA6B,EAC7B,sCAAsC,CACvC,CAAC;IACF,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,GAAG,MAAM,OAAO,CAAC;QACzC,GAAG,EAAE,iBAAK,CAAC,QAAQ,CAAC,aAAa,EAAE;QACnC,OAAO,EAAE,mBAAmB;QAC5B,OAAO,EAAE,EAAE;QACX,YAAY;KACb,CAAC,CAAC;IACH,MAAM,mBAAmB,GAAG,MAAM,OAAO,CAAC;IAE1C,OAAO;QACL,UAAU,EAAE,mBAAmB,CAAC,UAAU;QAC1C,mBAAmB;QACnB,KAAK,CAAC,MAAM;YACV,OAAO,CAAC,MAAM,SAAS,CAAQ,CAAC;QAClC,CAAC;QACD,KAAK,CAAC,MAAM,CAAqB,GAAoC,EAAE,GAAG,IAAU;YAClF,OAAO,IAAA,8CAAmB,EACxB,iBAAK,CAAC,YAAY,CAAC,QAAQ,EAC3B,gBAAgB,EAChB,yBAAyB,CAC1B,CAAC;gBACA,GAAG,EAAE,iBAAK,CAAC,QAAQ,CAAC,cAAc,EAAE;gBACpC,UAAU,EAAE,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI;gBACpD,IAAI;gBACJ,MAAM,EAAE;oBACN,IAAI,EAAE,OAAO;oBACb,eAAe,EAAE,mBAAmB,CAAC,UAAU;iBAChD;gBACD,OAAO,EAAE,EAAE;aACZ,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC;AA1CD,gCA0CC;AAwDM,KAAK,UAAU,YAAY,CAChC,kBAA8B,EAC9B,OAAmD;IAEnD,MAAM,mBAAmB,GAAG,yBAAyB,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;IACrE,MAAM,YAAY,GAAG,OAAO,kBAAkB,KAAK,QAAQ,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC;IAC3G,MAAM,OAAO,GAAG,IAAA,8CAAmB,EACjC,iBAAK,CAAC,YAAY,CAAC,QAAQ,EAC3B,6BAA6B,EAC7B,sCAAsC,CACvC,CAAC;IACF,MAAM,WAAW,GAAG,OAAO,CAAC;QAC1B,GAAG,EAAE,iBAAK,CAAC,QAAQ,CAAC,aAAa,EAAE;QACnC,OAAO,EAAE,mBAAmB;QAC5B,OAAO,EAAE,EAAE;QACX,YAAY;KACb,CAAC,CAAC;IACH,IAAA,8BAAc,EAAC,WAAW,CAAC,CAAC;IAC5B,MAAM,gBAAgB,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,SAAS,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC;IAChF,IAAA,8BAAc,EAAC,gBAAgB,CAAC,CAAC;IACjC,OAAO,gBAAgC,CAAC;AAC1C,CAAC;AArBD,oCAqBC;AAED;;GAEG;AACH,SAAgB,YAAY;IAC1B,IAAI,iBAAK,CAAC,IAAI,KAAK,SAAS,EAAE;QAC5B,MAAM,IAAI,4CAAiB,CAAC,wBAAwB,CAAC,CAAC;KACvD;IACD,OAAO,iBAAK,CAAC,IAAI,CAAC;AACpB,CAAC;AALD,oCAKC;AAED;;GAEG;AACH,SAAgB,iBAAiB;IAC/B,IAAI;QACF,YAAY,EAAE,CAAC;QACf,OAAO,IAAI,CAAC;KACb;IAAC,OAAO,GAAQ,EAAE;QACjB,4EAA4E;QAC5E,0DAA0D;QAC1D,IAAI,GAAG,CAAC,IAAI,KAAK,mBAAmB,EAAE;YACpC,OAAO,KAAK,CAAC;SACd;aAAM;YACL,MAAM,GAAG,CAAC;SACX;KACF;AACH,CAAC;AAbD,8CAaC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,SAAgB,UAAU;IACxB,OAAO,IAAI,KAAK,CACd,EAAE,EACF;QACE,GAAG,CAAC,CAAC,EAAE,SAAS;YACd,OAAO,IAAI,KAAK,CACd,EAAE,EACF;gBACE,GAAG,CAAC,CAAC,EAAE,MAAM;oBACX,OAAO,CAAC,GAAG,IAAW,EAAE,EAAE;wBACxB,iBAAK,CAAC,SAAS,CAAC,IAAI,CAAC;4BACnB,SAAS,EAAE,SAAmB;4BAC9B,MAAM,EAAE,MAAgB;4BACxB,IAAI;yBACL,CAAC,CAAC;oBACL,CAAC,CAAC;gBACJ,CAAC;aACF,CACF,CAAC;QACJ,CAAC;KACF,CACK,CAAC;AACX,CAAC;AAtBD,gCAsBC;AAED;;;;;;GAMG;AACH,SAAgB,qBAAqB,CACnC,OAA8B;IAE9B,MAAM,IAAI,GAAG,YAAY,EAAE,CAAC;IAC5B,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,GAAG,OAAO,IAAI,EAAE,CAAC;IAC3D,MAAM,eAAe,GAAG;QACtB,YAAY,EAAE,YAAY,IAAI,IAAI,CAAC,YAAY;QAC/C,SAAS,EAAE,SAAS,IAAI,IAAI,CAAC,SAAS;QACtC,GAAG,IAAI;KACR,CAAC;IAEF,OAAO,CAAC,GAAG,IAAmB,EAAkB,EAAE;QAChD,MAAM,EAAE,GAAG,IAAA,8CAAmB,EAAC,iBAAK,CAAC,YAAY,CAAC,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;YAC3F,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;YACzC,MAAM,IAAI,0BAAa,CAAC;gBACtB,YAAY,EAAE,OAAO,CAAC,YAAY;gBAClC,SAAS,EAAE,IAAA,mBAAU,EAAC,iBAAK,CAAC,gBAAgB,EAAE,GAAG,IAAI,CAAC;gBACtD,OAAO;gBACP,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;oBACxC,CAAC,CAAC,IAAA,sBAAa,EAAC,wCAA+B,EAAE,OAAO,CAAC,gBAAgB,CAAC;oBAC1E,CAAC,CAAC,SAAS;gBACb,kBAAkB,EAAE,IAAA,yCAAc,EAAC,OAAO,CAAC,kBAAkB,CAAC;gBAC9D,mBAAmB,EAAE,IAAA,yCAAc,EAAC,OAAO,CAAC,mBAAmB,CAAC;aACjE,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QACH,OAAO,EAAE,CAAC;YACR,IAAI;YACJ,OAAO,EAAE,EAAE;YACX,OAAO,EAAE,eAAe;SACzB,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAjCD,sDAiCC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,SAAgB,aAAa,CAAqB,GAAG,IAAmB;IACtE,OAAO,qBAAqB,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;AAC1C,CAAC;AAFD,sCAEC;AAED;;;;;GAKG;AACH,SAAgB,KAAK;IACnB,mGAAmG;IACnG,MAAM,EAAE,GAAG,CAAC,CAAS,EAAE,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACrE,2CAA2C;IAC3C,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,IAAI,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/C,iCAAiC;IACjC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IACvD,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IACvD,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IACvD,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IACxD,iDAAiD;IACjD,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;IAClD,uEAAuE;IACvE,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;IACnD,yDAAyD;IACzD,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAC9F,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EACjB,CAAC,CACF,IAAI,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;AAC/D,CAAC;AAnBD,sBAmBC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,SAAgB,OAAO,CAAC,OAAe;IACrC,OAAO,aAAa,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;AACvC,CAAC;AAFD,0BAEC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,SAAgB,cAAc,CAAC,OAAe;IAC5C,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;AAC/B,CAAC;AAFD,wCAEC;AAED,SAAS,aAAa,CAAC,OAAe,EAAE,UAAmB;IACzD,0EAA0E;IAC1E,0DAA0D;IAE1D,IAAI,iBAAK,CAAC,QAAQ,KAAK,SAAS,EAAE;QAChC,MAAM,IAAI,4CAAiB,CAAC,+CAA+C,CAAC,CAAC;KAC9E;IACD,MAAM,QAAQ,GAAG,CAAC,iBAAK,CAAC,WAAW,IAAI,iBAAK,CAAC,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC9E,+DAA+D;IAC/D,qEAAqE;IACrE,IAAI,QAAQ,IAAI,CAAC,iBAAK,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;QAC/C,iBAAK,CAAC,WAAW,CAAC;YAChB,cAAc,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE;SACxC,CAAC,CAAC;QACH,iBAAK,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;KAChC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAgBM,KAAK,UAAU,SAAS,CAAC,EAAiB,EAAE,OAAyB;IAC1E,IAAI,OAAO,EAAE;QACX,OAAO,sCAAiB,CAAC,WAAW,CAAC,KAAK,IAAI,EAAE;YAC9C,IAAI;gBACF,OAAO,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE,cAAc,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aACpG;oBAAS;gBACR,sCAAiB,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,CAAC;aACtC;QACH,CAAC,CAAC,CAAC;KACJ;IACD,OAAO,cAAc,CAAC,EAAE,CAAC,CAAC;AAC5B,CAAC;AAXD,8BAWC;AAED,SAAS,cAAc,CAAC,EAAiB;IACvC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,KAAK,GAAG,sCAAiB,CAAC,OAAO,EAAE,CAAC;QAC1C,IAAI,KAAK,CAAC,mBAAmB,EAAE;YAC7B,IAAA,8BAAc,EAAC,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;YACpD,OAAO;SACR;QAED,MAAM,GAAG,GAAG,iBAAK,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;QACvC,IAAI,KAAK,CAAC,WAAW,EAAE;YACrB,IAAA,8BAAc,EACZ,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBAClC,iBAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACpC,MAAM,CAAC,GAAG,CAAC,CAAC;YACd,CAAC,CAAC,CACH,CAAC;SACH;QAED,mBAAmB;QACnB,IAAI,EAAE,EAAE,EAAE;YACR,OAAO,EAAE,CAAC;YACV,OAAO;SACR;QAED,iBAAK,CAAC,iBAAiB,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,SAAgB,YAAY,CAA0B,IAAY;IAChE,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,IAAI;KACL,CAAC;AACJ,CAAC;AALD,oCAKC;AAED;;;;;GAKG;AACH,SAAgB,WAAW,CAA+B,IAAY;IACpE,OAAO;QACL,IAAI,EAAE,OAAO;QACb,IAAI;KACL,CAAC;AACJ,CAAC;AALD,kCAKC;AAeD;;;;;;;GAOG;AACH,SAAgB,UAAU,CACxB,GAAM,EACN,OAA0C;IAE1C,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE;QACzB,iBAAK,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,OAAc,CAAC,CAAC;QACnD,MAAM,eAAe,GAAG,iBAAK,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC5D,IAAI,eAAe,KAAK,SAAS,IAAI,OAAO,KAAK,SAAS,EAAE;YAC1D,iBAAK,CAAC,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACvC,KAAK,MAAM,MAAM,IAAI,eAAe,EAAE;gBACpC,iBAAK,CAAC,SAAS,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;aACxC;SACF;KACF;SAAM,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,EAAE;QAC/B,iBAAK,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,OAAc,CAAC,CAAC;KACnD;SAAM;QACL,MAAM,IAAI,SAAS,CAAC,4BAA6B,GAAW,CAAC,IAAI,EAAE,CAAC,CAAC;KACtE;AACH,CAAC;AAlBD,gCAkBC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,SAAgB,sBAAsB,CAAC,gBAAkC;IACvE,IAAI,CAAC,iBAAK,CAAC,IAAI,EAAE;QACf,MAAM,IAAI,4CAAiB,CAAC,gCAAgC,CAAC,CAAC;KAC/D;IAED,MAAM,sBAAsB,GAAG,EAAE,GAAG,iBAAK,CAAC,IAAI,CAAC,gBAAgB,EAAE,GAAG,gBAAgB,EAAE,CAAC;IACvF,IAAI,CAAC,sBAAsB,EAAE;QAC3B,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;KACzE;IAED,iBAAK,CAAC,WAAW,CAAC;QAChB,8BAA8B,EAAE;YAC9B,gBAAgB,EAAE,IAAA,sBAAa,EAAC,wCAA+B,EAAE,gBAAgB,CAAC;SACnF;KACF,CAAC,CAAC;IAEH,iBAAK,CAAC,IAAI,CAAC,gBAAgB,GAAG,sBAAsB,CAAC;AACvD,CAAC;AAjBD,wDAiBC;AA0BD;;;;GAIG;AACH,SAAgB,QAAQ;IACtB,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,GAAG,iBAAK,CAAC;IAC7C,IAAI,WAAW,IAAI,IAAI,IAAI,aAAa,IAAI,IAAI,EAAE;QAChD,MAAM,IAAI,4CAAiB,CAAC,wBAAwB,CAAC,CAAC;KACvD;IAED,OAAO;QACL,aAAa;QACb,MAAM,EAAE;YACN,WAAW;SACZ;KACF,CAAC;AACJ,CAAC;AAZD,4BAYC;AAEY,QAAA,eAAe,GAAG,WAAW,CAAS,eAAe,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@temporalio/workflow",
3
- "version": "1.0.0-rc.0",
3
+ "version": "1.0.0-rc.1",
4
4
  "description": "Temporal.io SDK Workflow sub-package",
5
5
  "keywords": [
6
6
  "temporal",
@@ -15,17 +15,18 @@
15
15
  "author": "Roey Berman <roey@temporal.io>",
16
16
  "main": "lib/index.js",
17
17
  "types": "lib/index.d.ts",
18
- "files": [
19
- "lib"
20
- ],
21
18
  "scripts": {},
22
19
  "dependencies": {
23
- "@temporalio/common": "^1.0.0-rc.0",
24
- "@temporalio/internal-workflow-common": "^1.0.0-rc.0",
25
- "@temporalio/proto": "^1.0.0-rc.0"
20
+ "@temporalio/common": "^1.0.0-rc.1",
21
+ "@temporalio/internal-workflow-common": "^1.0.0-rc.1",
22
+ "@temporalio/proto": "^1.0.0-rc.1"
26
23
  },
27
24
  "publishConfig": {
28
25
  "access": "public"
29
26
  },
30
- "gitHead": "c25e91309b980f2118df4048d760306982019871"
27
+ "files": [
28
+ "src",
29
+ "lib"
30
+ ],
31
+ "gitHead": "723de0fbc7a04e68084ec99453578e7027eb3803"
31
32
  }
package/src/alea.ts ADDED
@@ -0,0 +1,88 @@
1
+ // A port of an algorithm by Johannes Baagøe <baagoe@baagoe.com>, 2010
2
+ // http://baagoe.com/en/RandomMusings/javascript/
3
+ // https://github.com/nquinlan/better-random-numbers-for-javascript-mirror
4
+ // Original work is under MIT license -
5
+
6
+ // Copyright (C) 2010 by Johannes Baagøe <baagoe@baagoe.org>
7
+ //
8
+ // Permission is hereby granted, free of charge, to any person obtaining a copy
9
+ // of this software and associated documentation files (the "Software"), to deal
10
+ // in the Software without restriction, including without limitation the rights
11
+ // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
12
+ // copies of the Software, and to permit persons to whom the Software is
13
+ // furnished to do so, subject to the following conditions:
14
+ //
15
+ // The above copyright notice and this permission notice shall be included in
16
+ // all copies or substantial portions of the Software.
17
+ //
18
+ // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
19
+ // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20
+ // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
21
+ // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
22
+ // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
23
+ // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
24
+ // THE SOFTWARE.
25
+
26
+ // Taken and modified from https://github.com/davidbau/seedrandom/blob/released/lib/alea.js
27
+
28
+ class Alea {
29
+ public c: number;
30
+ public s0: number;
31
+ public s1: number;
32
+ public s2: number;
33
+
34
+ constructor(seed: number[]) {
35
+ const mash = new Mash();
36
+ // Apply the seeding algorithm from Baagoe.
37
+ this.c = 1;
38
+ this.s0 = mash.mash([32]);
39
+ this.s1 = mash.mash([32]);
40
+ this.s2 = mash.mash([32]);
41
+ this.s0 -= mash.mash(seed);
42
+ if (this.s0 < 0) {
43
+ this.s0 += 1;
44
+ }
45
+ this.s1 -= mash.mash(seed);
46
+ if (this.s1 < 0) {
47
+ this.s1 += 1;
48
+ }
49
+ this.s2 -= mash.mash(seed);
50
+ if (this.s2 < 0) {
51
+ this.s2 += 1;
52
+ }
53
+ }
54
+
55
+ public next(): number {
56
+ const t = 2091639 * this.s0 + this.c * 2.3283064365386963e-10; // 2^-32
57
+ this.s0 = this.s1;
58
+ this.s1 = this.s2;
59
+ return (this.s2 = t - (this.c = t | 0));
60
+ }
61
+ }
62
+
63
+ export type RNG = () => number;
64
+
65
+ export function alea(seed: number[]): RNG {
66
+ const xg = new Alea(seed);
67
+ return xg.next.bind(xg);
68
+ }
69
+
70
+ export class Mash {
71
+ private n = 0xefc8249d;
72
+
73
+ public mash(data: number[]): number {
74
+ let { n } = this;
75
+ for (let i = 0; i < data.length; i++) {
76
+ n += data[i];
77
+ let h = 0.02519603282416938 * n;
78
+ n = h >>> 0;
79
+ h -= n;
80
+ h *= n;
81
+ n = h >>> 0;
82
+ h -= n;
83
+ n += h * 0x100000000; // 2^32
84
+ }
85
+ this.n = n;
86
+ return (n >>> 0) * 2.3283064365386963e-10; // 2^-32
87
+ }
88
+ }
@@ -0,0 +1,205 @@
1
+ import { CancelledFailure, IllegalStateError } from '@temporalio/common';
2
+ import type { AsyncLocalStorage as ALS } from 'async_hooks';
3
+ import { untrackPromise } from './stack-helpers';
4
+
5
+ // AsyncLocalStorage is injected via vm module into global scope.
6
+ // In case Workflow code is imported in Node.js context, replace with an empty class.
7
+ export const AsyncLocalStorage: new <T>() => ALS<T> = (globalThis as any).AsyncLocalStorage ?? class {};
8
+
9
+ /** Magic symbol used to create the root scope - intentionally not exported */
10
+ const NO_PARENT = Symbol('NO_PARENT');
11
+
12
+ /**
13
+ * Option for constructing a CancellationScope
14
+ */
15
+ export interface CancellationScopeOptions {
16
+ /**
17
+ * Time in milliseconds before the scope cancellation is automatically requested
18
+ */
19
+ timeout?: number;
20
+
21
+ /**
22
+ * If false, prevent outer cancellation from propagating to inner scopes, Activities, timers, and Triggers, defaults to true.
23
+ * (Scope still propagates CancelledFailure thrown from within).
24
+ */
25
+ cancellable: boolean;
26
+ /**
27
+ * An optional CancellationScope (useful for running background tasks).
28
+ * The `NO_PARENT` symbol is reserved for the root scope.
29
+ */
30
+ parent?: CancellationScope | typeof NO_PARENT;
31
+ }
32
+
33
+ /**
34
+ * In the SDK, Workflows are represented internally by a tree of scopes where the `execute` function runs in the root scope.
35
+ * Cancellation propagates from outer scopes to inner ones and is handled by catching {@link CancelledFailure}s
36
+ * thrown by cancellable operations (see below).
37
+ *
38
+ * Scopes are created using the `CancellationScope` constructor or the static helper methods
39
+ * {@link cancellable}, {@link nonCancellable} and {@link withTimeout}.
40
+ *
41
+ * When a `CancellationScope` is cancelled, it will propagate cancellation any child scopes and any cancellable
42
+ * operations created within it, such as:
43
+ *
44
+ * - Activities
45
+ * - Child Workflows
46
+ * - Timers (created with the {@link sleep} function)
47
+ * - {@link Trigger}s
48
+ *
49
+ * @example
50
+ *
51
+ * ```ts
52
+ * await CancellationScope.cancellable(async () => {
53
+ * const promise = someActivity();
54
+ * CancellationScope.current().cancel(); // Cancels the activity
55
+ * await promise; // Throws `ActivityFailure` with `cause` set to `CancelledFailure`
56
+ * });
57
+ * ```
58
+ *
59
+ * @example
60
+ *
61
+ * ```ts
62
+ * const scope = new CancellationScope();
63
+ * const promise = scope.run(someActivity);
64
+ * scope.cancel(); // Cancels the activity
65
+ * await promise; // Throws `ActivityFailure` with `cause` set to `CancelledFailure`
66
+ * ```
67
+ */
68
+ export class CancellationScope {
69
+ /**
70
+ * Time in milliseconds before the scope cancellation is automatically requested
71
+ */
72
+ protected readonly timeout?: number;
73
+
74
+ /**
75
+ * If false, prevent outer cancellation from propagating to inner scopes, Activities, timers, and Triggers, defaults to true.
76
+ * (Scope still propagates CancelledFailure thrown from within)
77
+ */
78
+ public readonly cancellable: boolean;
79
+ /**
80
+ * An optional CancellationScope (useful for running background tasks), defaults to {@link CancellationScope.current}()
81
+ */
82
+ public readonly parent?: CancellationScope;
83
+
84
+ /**
85
+ * Rejected when scope cancellation is requested
86
+ */
87
+ public readonly cancelRequested: Promise<never>;
88
+
89
+ #cancelRequested = false;
90
+
91
+ // Typescript does not understand that the Promise executor runs synchronously in the constructor
92
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
93
+ // @ts-ignore
94
+ protected readonly reject: (reason?: any) => void;
95
+
96
+ constructor(options?: CancellationScopeOptions) {
97
+ this.timeout = options?.timeout;
98
+ this.cancellable = options?.cancellable ?? true;
99
+ this.cancelRequested = new Promise((_, reject) => {
100
+ // Typescript does not understand that the Promise executor runs synchronously
101
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
102
+ // @ts-ignore
103
+ this.reject = (err) => {
104
+ this.#cancelRequested = true;
105
+ reject(err);
106
+ };
107
+ });
108
+ untrackPromise(this.cancelRequested);
109
+ // Avoid unhandled rejections
110
+ untrackPromise(this.cancelRequested.catch(() => undefined));
111
+ if (options?.parent !== NO_PARENT) {
112
+ this.parent = options?.parent || CancellationScope.current();
113
+ this.#cancelRequested = this.parent.#cancelRequested;
114
+ this.parent.cancelRequested.catch((err) => {
115
+ this.reject(err);
116
+ });
117
+ }
118
+ }
119
+
120
+ public get consideredCancelled(): boolean {
121
+ return this.#cancelRequested && this.cancellable;
122
+ }
123
+ /**
124
+ * Activate the scope as current and run `fn`
125
+ *
126
+ * Any timers, Activities, Triggers and CancellationScopes created in the body of `fn`
127
+ * automatically link their cancellation to this scope.
128
+ *
129
+ * @return the result of `fn`
130
+ */
131
+ run<T>(fn: () => Promise<T>): Promise<T> {
132
+ return storage.run(this, this.runInContext.bind(this, fn) as () => Promise<T>);
133
+ }
134
+
135
+ /**
136
+ * Method that runs a function in AsyncLocalStorage context.
137
+ *
138
+ * Could have been written as anonymous function, made into a method for improved stack traces.
139
+ */
140
+ protected async runInContext<T>(fn: () => Promise<T>): Promise<T> {
141
+ if (this.timeout) {
142
+ untrackPromise(
143
+ sleep(this.timeout).then(
144
+ () => this.cancel(),
145
+ () => {
146
+ // scope was already cancelled, ignore
147
+ }
148
+ )
149
+ );
150
+ }
151
+ return await fn();
152
+ }
153
+
154
+ /**
155
+ * Request to cancel the scope and linked children
156
+ */
157
+ cancel(): void {
158
+ this.reject(new CancelledFailure('Cancellation scope cancelled'));
159
+ }
160
+
161
+ /**
162
+ * Get the current "active" scope
163
+ */
164
+ static current(): CancellationScope {
165
+ return storage.getStore() ?? ROOT_SCOPE;
166
+ }
167
+
168
+ /** Alias to `new CancellationScope({ cancellable: true }).run(fn)` */
169
+ static cancellable<T>(fn: () => Promise<T>): Promise<T> {
170
+ return new this({ cancellable: true }).run(fn);
171
+ }
172
+
173
+ /** Alias to `new CancellationScope({ cancellable: false }).run(fn)` */
174
+ static nonCancellable<T>(fn: () => Promise<T>): Promise<T> {
175
+ return new this({ cancellable: false }).run(fn);
176
+ }
177
+
178
+ /** Alias to `new CancellationScope({ cancellable: true, timeout }).run(fn)` */
179
+ static withTimeout<T>(timeout: number, fn: () => Promise<T>): Promise<T> {
180
+ return new this({ cancellable: true, timeout }).run(fn);
181
+ }
182
+ }
183
+
184
+ /**
185
+ * This is exported so it can be disposed in the worker interface
186
+ */
187
+ export const storage = new AsyncLocalStorage<CancellationScope>();
188
+
189
+ export class RootCancellationScope extends CancellationScope {
190
+ cancel(): void {
191
+ this.reject(new CancelledFailure('Workflow cancelled'));
192
+ }
193
+ }
194
+
195
+ /** There can only be one of these */
196
+ export const ROOT_SCOPE = new RootCancellationScope({ cancellable: true, parent: NO_PARENT });
197
+
198
+ /** This function is here to avoid a circular dependency between this module and workflow.ts */
199
+ let sleep = (_: number | string): Promise<void> => {
200
+ throw new IllegalStateError('Workflow has not been properly initialized');
201
+ };
202
+
203
+ export function registerSleepImplementation(fn: typeof sleep): void {
204
+ sleep = fn;
205
+ }
package/src/errors.ts ADDED
@@ -0,0 +1,30 @@
1
+ export { WorkflowExecutionAlreadyStartedError } from '@temporalio/common';
2
+
3
+ /**
4
+ * Base class for all workflow errors
5
+ */
6
+ export class WorkflowError extends Error {
7
+ public readonly name: string = 'WorkflowError';
8
+ }
9
+
10
+ /**
11
+ * Thrown in workflow when it tries to do something that non-deterministic such as construct a WeakMap()
12
+ */
13
+ export class DeterminismViolationError extends WorkflowError {
14
+ public readonly name: string = 'DeterminismViolationError';
15
+ }
16
+
17
+ function looksLikeError(err: unknown): err is { name: string; cause?: unknown } {
18
+ return typeof err === 'object' && err != null && Object.prototype.hasOwnProperty.call(err, 'name');
19
+ }
20
+
21
+ /**
22
+ * Returns whether provided `err` is caused by cancellation
23
+ */
24
+ export function isCancellation(err: unknown): boolean {
25
+ if (!looksLikeError(err)) return false;
26
+ return (
27
+ err.name === 'CancelledFailure' ||
28
+ ((err.name === 'ActivityFailure' || err.name === 'ChildWorkflowFailure') && isCancellation(err.cause))
29
+ );
30
+ }