@workflow/core 5.0.0-beta.43 → 5.0.0-beta.44
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/capabilities.d.ts +4 -4
- package/dist/capabilities.js +5 -5
- package/dist/capture-stack.d.ts +1 -1
- package/dist/capture-stack.js +2 -2
- package/dist/class-serialization.d.ts +8 -8
- package/dist/class-serialization.js +9 -9
- package/dist/classify-error.js +5 -5
- package/dist/context-violation-error.d.ts +5 -5
- package/dist/context-violation-error.d.ts.map +1 -1
- package/dist/context-violation-error.js +5 -5
- package/dist/create-hook.d.ts +2 -2
- package/dist/create-hook.js +1 -1
- package/dist/define-hook.js +2 -2
- package/dist/describe-error.d.ts +7 -7
- package/dist/describe-error.js +8 -8
- package/dist/encryption.d.ts +5 -5
- package/dist/encryption.js +7 -7
- package/dist/events-consumer.d.ts +19 -7
- package/dist/events-consumer.d.ts.map +1 -1
- package/dist/events-consumer.js +33 -12
- package/dist/flushable-stream.d.ts +4 -4
- package/dist/flushable-stream.js +12 -12
- package/dist/global.d.ts +1 -1
- package/dist/global.js +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +2 -2
- package/dist/log-format.d.ts +2 -2
- package/dist/log-format.js +5 -5
- package/dist/logger.js +4 -4
- package/dist/private.d.ts +21 -65
- package/dist/private.d.ts.map +1 -1
- package/dist/private.js +160 -38
- package/dist/replay-payload-cache.d.ts +1 -1
- package/dist/replay-payload-cache.js +4 -4
- package/dist/runtime/compute-instance.d.ts +4 -3
- package/dist/runtime/compute-instance.d.ts.map +1 -1
- package/dist/runtime/compute-instance.js +5 -4
- package/dist/runtime/constants.d.ts +24 -24
- package/dist/runtime/constants.d.ts.map +1 -1
- package/dist/runtime/constants.js +49 -43
- package/dist/runtime/count-step-started-events.d.ts +7 -7
- package/dist/runtime/count-step-started-events.js +4 -4
- package/dist/runtime/deployment-guard.d.ts +7 -7
- package/dist/runtime/deployment-guard.js +8 -8
- package/dist/runtime/get-port-lazy.d.ts +2 -2
- package/dist/runtime/get-port-lazy.d.ts.map +1 -1
- package/dist/runtime/get-port-lazy.js +37 -30
- package/dist/runtime/get-world-lazy.d.ts +2 -2
- package/dist/runtime/get-world-lazy.js +3 -3
- package/dist/runtime/helpers.d.ts +18 -18
- package/dist/runtime/helpers.js +27 -27
- package/dist/runtime/quickjs-entrypoint.d.ts +21 -10
- package/dist/runtime/quickjs-entrypoint.d.ts.map +1 -1
- package/dist/runtime/quickjs-entrypoint.js +199 -81
- package/dist/runtime/quickjs-runtime.d.ts +31 -15
- package/dist/runtime/quickjs-runtime.d.ts.map +1 -1
- package/dist/runtime/quickjs-runtime.js +126 -77
- package/dist/runtime/quickjs-serde.d.ts +10 -10
- package/dist/runtime/quickjs-serde.js +20 -20
- package/dist/runtime/replay-budget.d.ts +4 -4
- package/dist/runtime/replay-budget.js +5 -5
- package/dist/runtime/replay-recovery-reporter.d.ts +1 -1
- package/dist/runtime/replay-recovery-reporter.js +2 -2
- package/dist/runtime/resume-hook.d.ts +2 -2
- package/dist/runtime/resume-hook.js +27 -27
- package/dist/runtime/resume-latency.d.ts +25 -25
- package/dist/runtime/resume-latency.d.ts.map +1 -1
- package/dist/runtime/resume-latency.js +4 -4
- package/dist/runtime/run-id-time.d.ts +2 -2
- package/dist/runtime/run-id-time.js +5 -5
- package/dist/runtime/run.d.ts +21 -4
- package/dist/runtime/run.d.ts.map +1 -1
- package/dist/runtime/run.js +104 -10
- package/dist/runtime/runs.d.ts +4 -4
- package/dist/runtime/runs.js +2 -2
- package/dist/runtime/start.d.ts +3 -3
- package/dist/runtime/start.d.ts.map +1 -1
- package/dist/runtime/start.js +27 -23
- package/dist/runtime/step-executor.d.ts +14 -14
- package/dist/runtime/step-executor.d.ts.map +1 -1
- package/dist/runtime/step-executor.js +54 -39
- package/dist/runtime/step-latency.d.ts +14 -14
- package/dist/runtime/step-latency.js +11 -11
- package/dist/runtime/step-ownership.d.ts +6 -6
- package/dist/runtime/step-ownership.js +8 -8
- package/dist/runtime/step-single-flight.d.ts +1 -1
- package/dist/runtime/step-single-flight.d.ts.map +1 -1
- package/dist/runtime/step-single-flight.js +17 -11
- package/dist/runtime/suspension-handler.d.ts +29 -17
- package/dist/runtime/suspension-handler.d.ts.map +1 -1
- package/dist/runtime/suspension-handler.js +206 -71
- package/dist/runtime/unserializable-step.d.ts +34 -0
- package/dist/runtime/unserializable-step.d.ts.map +1 -0
- package/dist/runtime/unserializable-step.js +52 -0
- package/dist/runtime/vm-mode.d.ts +1 -1
- package/dist/runtime/vm-mode.js +2 -2
- package/dist/runtime/wait-continuation.d.ts +31 -9
- package/dist/runtime/wait-continuation.d.ts.map +1 -1
- package/dist/runtime/wait-continuation.js +44 -13
- package/dist/runtime/wait-until.d.ts +1 -1
- package/dist/runtime/wait-until.js +2 -2
- package/dist/runtime/world-compatibility.d.ts +20 -9
- package/dist/runtime/world-compatibility.d.ts.map +1 -1
- package/dist/runtime/world-compatibility.js +24 -13
- package/dist/runtime/world-init.d.ts +5 -5
- package/dist/runtime/world-init.js +6 -6
- package/dist/runtime/world.d.ts.map +1 -1
- package/dist/runtime/world.js +13 -3
- package/dist/runtime.d.ts.map +1 -1
- package/dist/runtime.js +300 -206
- package/dist/sealed-box.d.ts +7 -7
- package/dist/sealed-box.js +15 -15
- package/dist/serialization/client.js +2 -2
- package/dist/serialization/codec-devalue-vm.d.ts +1 -1
- package/dist/serialization/codec-devalue-vm.js +4 -4
- package/dist/serialization/codec-devalue.d.ts +1 -1
- package/dist/serialization/codec-devalue.js +2 -2
- package/dist/serialization/codec.d.ts +4 -4
- package/dist/serialization/codec.js +2 -2
- package/dist/serialization/compression.d.ts +12 -11
- package/dist/serialization/compression.d.ts.map +1 -1
- package/dist/serialization/compression.js +16 -15
- package/dist/serialization/encryption.d.ts +7 -7
- package/dist/serialization/encryption.d.ts.map +1 -1
- package/dist/serialization/encryption.js +8 -8
- package/dist/serialization/errors.js +2 -2
- package/dist/serialization/format.d.ts +6 -6
- package/dist/serialization/format.js +7 -7
- package/dist/serialization/hardened.d.ts +18 -18
- package/dist/serialization/hardened.d.ts.map +1 -1
- package/dist/serialization/hardened.js +41 -32
- package/dist/serialization/index.d.ts +1 -1
- package/dist/serialization/index.js +2 -2
- package/dist/serialization/reducers/class-vm.d.ts +1 -1
- package/dist/serialization/reducers/class-vm.js +2 -2
- package/dist/serialization/reducers/class.js +2 -2
- package/dist/serialization/reducers/common-vm.js +12 -12
- package/dist/serialization/reducers/common.js +12 -12
- package/dist/serialization/reducers/step-function-vm.d.ts +1 -1
- package/dist/serialization/reducers/step-function-vm.js +2 -2
- package/dist/serialization/reducers/step-function.js +2 -2
- package/dist/serialization/step.js +2 -2
- package/dist/serialization/types.d.ts +5 -5
- package/dist/serialization/types.js +2 -2
- package/dist/serialization/workflow-vm.d.ts +1 -1
- package/dist/serialization/workflow-vm.d.ts.map +1 -1
- package/dist/serialization/workflow-vm.js +13 -10
- package/dist/serialization-format.d.ts +11 -11
- package/dist/serialization-format.d.ts.map +1 -1
- package/dist/serialization-format.js +29 -23
- package/dist/serialization.d.ts +10 -10
- package/dist/serialization.js +98 -98
- package/dist/set-attributes.js +2 -2
- package/dist/source-map.d.ts +1 -1
- package/dist/source-map.d.ts.map +1 -1
- package/dist/source-map.js +18 -12
- package/dist/step/context-storage.d.ts +5 -5
- package/dist/step/context-storage.js +1 -1
- package/dist/step/writable-stream.d.ts +3 -3
- package/dist/step/writable-stream.js +7 -7
- package/dist/step.js +12 -12
- package/dist/symbols.d.ts +2 -2
- package/dist/symbols.js +3 -3
- package/dist/telemetry/semantic-conventions.d.ts +21 -13
- package/dist/telemetry/semantic-conventions.d.ts.map +1 -1
- package/dist/telemetry/semantic-conventions.js +21 -15
- package/dist/telemetry.d.ts +3 -3
- package/dist/telemetry.d.ts.map +1 -1
- package/dist/telemetry.js +19 -10
- package/dist/test-support/orchestrator-context.d.ts.map +1 -1
- package/dist/test-support/orchestrator-context.js +12 -2
- package/dist/version.d.ts +1 -1
- package/dist/version.js +2 -2
- package/dist/vm/index.js +4 -4
- package/dist/vm/script-cache.d.ts.map +1 -1
- package/dist/vm/script-cache.js +23 -17
- package/dist/vm/uint8array-base64.js +1 -1
- package/dist/workflow/abort-controller.d.ts +1 -1
- package/dist/workflow/abort-controller.js +12 -12
- package/dist/workflow/create-hook.js +2 -2
- package/dist/workflow/get-workflow-metadata.js +2 -2
- package/dist/workflow/hook.js +16 -16
- package/dist/workflow/set-attributes.d.ts +1 -1
- package/dist/workflow/set-attributes.js +2 -2
- package/dist/workflow/sleep.js +2 -2
- package/dist/workflow/world-init-stub.d.ts +1 -1
- package/dist/workflow/world-init-stub.js +2 -2
- package/dist/workflow.d.ts +2 -2
- package/dist/workflow.js +21 -7
- package/docs/api-reference/create-hook.mdx +15 -15
- package/docs/api-reference/create-webhook.mdx +15 -15
- package/docs/api-reference/define-hook.mdx +10 -10
- package/docs/api-reference/fatal-error.mdx +2 -2
- package/docs/api-reference/fetch.mdx +7 -7
- package/docs/api-reference/get-step-metadata.mdx +2 -2
- package/docs/api-reference/get-workflow-metadata.mdx +3 -3
- package/docs/api-reference/get-writable.mdx +7 -7
- package/docs/api-reference/index.mdx +1 -1
- package/docs/api-reference/retryable-error.mdx +1 -1
- package/docs/api-reference/set-attributes.mdx +2 -2
- package/docs/api-reference/sleep.mdx +3 -3
- package/docs/foundations/cancellation.mdx +31 -31
- package/docs/foundations/errors-and-retries.mdx +42 -11
- package/docs/foundations/hooks.mdx +35 -35
- package/docs/foundations/idempotency.mdx +9 -9
- package/docs/foundations/serialization.mdx +21 -22
- package/docs/foundations/starting-workflows.mdx +36 -37
- package/docs/foundations/streaming.mdx +46 -41
- package/docs/foundations/versioning.mdx +3 -3
- package/docs/foundations/workflows-and-steps.mdx +9 -9
- package/docs/how-it-works/cancellation.mdx +62 -62
- package/docs/how-it-works/code-transform.mdx +66 -54
- package/docs/how-it-works/encryption.mdx +25 -21
- package/docs/how-it-works/event-sourcing.mdx +53 -35
- package/docs/how-it-works/framework-integrations.mdx +12 -12
- package/docs/how-it-works/understanding-directives.mdx +21 -21
- package/package.json +7 -7
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Server-only side-effect module that ensures `world.ts` is loaded so its
|
|
3
|
-
* module-load side effect
|
|
3
|
+
* module-load side effect (`globalThis[GetWorldFnKey] ??= getWorld`)
|
|
4
4
|
* fires in host bundles.
|
|
5
5
|
*
|
|
6
6
|
* # Why this exists
|
|
7
7
|
*
|
|
8
8
|
* `getWorldLazy()` in `./get-world-lazy.ts` checks the globalThis cache
|
|
9
9
|
* populated by `world.ts`'s module-load side effect. When a server route
|
|
10
|
-
* only consumes a helper that goes through `getWorldLazy`
|
|
11
|
-
* `start` from `workflow/api`, or `defineHook().resume()` from `workflow`
|
|
12
|
-
*
|
|
10
|
+
* only consumes a helper that goes through `getWorldLazy` (for example
|
|
11
|
+
* `start` from `workflow/api`, or `defineHook().resume()` from `workflow`),
|
|
12
|
+
* webpack/turbopack can tree-shake the named import `{ getWorld }` out
|
|
13
13
|
* of `runtime.ts`, taking `world.ts`'s module evaluation with it. The
|
|
14
14
|
* globalThis registration never fires.
|
|
15
15
|
*
|
|
@@ -41,10 +41,10 @@
|
|
|
41
41
|
*
|
|
42
42
|
* If you add another `getWorldLazy()` consumer that's reachable from a
|
|
43
43
|
* host route without going through `workflow` or `workflow/api`, make
|
|
44
|
-
* sure that entry also imports this module
|
|
44
|
+
* sure that entry also imports this module, or that it transitively
|
|
45
45
|
* reaches `world.ts` via a non-tree-shakeable path. Adding a regression
|
|
46
46
|
* test in `world-init.test.ts` is preferred to relying on careful manual
|
|
47
47
|
* tracing.
|
|
48
48
|
*/
|
|
49
49
|
import './world.js';
|
|
50
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ybGQtaW5pdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydW50aW1lL3dvcmxkLWluaXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBK0NHO0FBQ0gsT0FBTyxZQUFZLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFNlcnZlci1vbmx5IHNpZGUtZWZmZWN0IG1vZHVsZSB0aGF0IGVuc3VyZXMgYHdvcmxkLnRzYCBpcyBsb2FkZWQgc28gaXRzXG4gKiBtb2R1bGUtbG9hZCBzaWRlIGVmZmVjdCAoYGdsb2JhbFRoaXNbR2V0V29ybGRGbktleV0gPz89IGdldFdvcmxkYClcbiAqIGZpcmVzIGluIGhvc3QgYnVuZGxlcy5cbiAqXG4gKiAjIFdoeSB0aGlzIGV4aXN0c1xuICpcbiAqIGBnZXRXb3JsZExhenkoKWAgaW4gYC4vZ2V0LXdvcmxkLWxhenkudHNgIGNoZWNrcyB0aGUgZ2xvYmFsVGhpcyBjYWNoZVxuICogcG9wdWxhdGVkIGJ5IGB3b3JsZC50c2AncyBtb2R1bGUtbG9hZCBzaWRlIGVmZmVjdC4gV2hlbiBhIHNlcnZlciByb3V0ZVxuICogb25seSBjb25zdW1lcyBhIGhlbHBlciB0aGF0IGdvZXMgdGhyb3VnaCBgZ2V0V29ybGRMYXp5YCAoZm9yIGV4YW1wbGVcbiAqIGBzdGFydGAgZnJvbSBgd29ya2Zsb3cvYXBpYCwgb3IgYGRlZmluZUhvb2soKS5yZXN1bWUoKWAgZnJvbSBgd29ya2Zsb3dgKSxcbiAqIHdlYnBhY2svdHVyYm9wYWNrIGNhbiB0cmVlLXNoYWtlIHRoZSBuYW1lZCBpbXBvcnQgYHsgZ2V0V29ybGQgfWAgb3V0XG4gKiBvZiBgcnVudGltZS50c2AsIHRha2luZyBgd29ybGQudHNgJ3MgbW9kdWxlIGV2YWx1YXRpb24gd2l0aCBpdC4gVGhlXG4gKiBnbG9iYWxUaGlzIHJlZ2lzdHJhdGlvbiBuZXZlciBmaXJlcy5cbiAqXG4gKiBJbXBvcnRpbmcgdGhpcyBtb2R1bGUgZm9yIGl0cyBzaWRlIGVmZmVjdCBmcm9tIHRoZSBob3N0LXNpZGUgYHdvcmtmbG93YFxuICogYW5kIGB3b3JrZmxvdy9hcGlgIGVudHJpZXMgZ3VhcmFudGVlcyBgd29ybGQudHNgIGVudGVycyB0aGUgYnVuZGxlLCB0aGVcbiAqIGdsb2JhbCBpcyByZWdpc3RlcmVkIGF0IG1vZHVsZSBsb2FkLCBhbmQgYGdldFdvcmxkTGF6eSgpYCBzaG9ydC1jaXJjdWl0c1xuICogdG8gdGhlIHJlZ2lzdGVyZWQgZnVuY3Rpb24gb24gdGhlIGZpcnN0IGNhbGwuXG4gKlxuICogIyBXaHkgYSBzZXBhcmF0ZSBtb2R1bGUgaW5zdGVhZCBvZiBpbXBvcnRpbmcgYC4vd29ybGQuanNgIGRpcmVjdGx5XG4gKlxuICogYHdvcmxkLnRzYCBpcyBpbnRlcm5hbCB0byBgQHdvcmtmbG93L2NvcmVgIGFuZCBub3QgcGFydCBvZiB0aGUgcHVibGljXG4gKiBleHBvcnRzIHN1cmZhY2UuIEFkZGluZyBhIGRlZGljYXRlZCBwdWJsaWMgaW5pdCBlbnRyeSAodGhpcyBmaWxlKVxuICoga2VlcHMgdGhlIHNpZGUtZWZmZWN0IGludGVudCBvYnZpb3VzIHRvIGFueW9uZSByZWFkaW5nXG4gKiBgcGFja2FnZXMvd29ya2Zsb3cvc3JjL2FwaS50c2AsIGFuZCBsZXRzIHRoZSBgd29ya2Zsb3dgIGV4cG9ydFxuICogY29uZGl0aW9uIHJvdXRlIHRvIGEgc3R1YiBmb3IgVk0vc3RlcCBidW5kbGVzIChzZWUgYmVsb3cpLlxuICpcbiAqICMgV2h5IHRoaXMgZG9lc24ndCBicmVhayBWTS9zdGVwIGJ1bmRsZXNcbiAqXG4gKiBUaGUgYEB3b3JrZmxvdy9jb3JlL3J1bnRpbWUvd29ybGQtaW5pdGAgZXhwb3J0IHJlc29sdmVzIHZpYSB0aGVcbiAqIGB3b3JrZmxvd2AgY29uZGl0aW9uIHRvIGAuL2Rpc3Qvd29ya2Zsb3cvd29ybGQtaW5pdC1zdHViLmpzYCwgYW4gZW1wdHlcbiAqIG1vZHVsZS4gRXNidWlsZCBydW5zIHRoZSB3b3JrZmxvdyBWTSBhbmQgc3RlcCBidW5kbGVycyB3aXRoIHRoZVxuICogYHdvcmtmbG93YCBjb25kaXRpb24gYWN0aXZlLCBzbyB0aGV5IHBpY2sgdXAgdGhlIHN0dWIgYW5kIG5ldmVyIHJlYWNoXG4gKiBgd29ybGQudHNgLiBIb3N0IGJ1bmRsZXJzICh3ZWJwYWNrLCB0dXJib3BhY2ssIE5vZGUuanMpIHVzZSB0aGVcbiAqIGBkZWZhdWx0YCAob3IgYG5vZGVgKSBjb25kaXRpb24gYW5kIHBpY2sgdXAgdGhpcyBmaWxlLCBsb2FkaW5nXG4gKiBgd29ybGQudHNgIGFzIGludGVuZGVkLiBUaGUgc3BsaXQga2VlcHMgdGhlIGNvbmZpZ3VyZWQgd29ybGQgcGFja2FnZVxuICogYW5kIG90aGVyIHNlcnZlci1vbmx5IGRlcHMgb3V0IG9mIHRoZSB3b3JrZmxvdyBzYW5kYm94IGJ1bmRsZS5cbiAqXG4gKiAjIE1haW50ZW5hbmNlIG5vdGVzXG4gKlxuICogSWYgeW91IGFkZCBhbm90aGVyIGBnZXRXb3JsZExhenkoKWAgY29uc3VtZXIgdGhhdCdzIHJlYWNoYWJsZSBmcm9tIGFcbiAqIGhvc3Qgcm91dGUgd2l0aG91dCBnb2luZyB0aHJvdWdoIGB3b3JrZmxvd2Agb3IgYHdvcmtmbG93L2FwaWAsIG1ha2VcbiAqIHN1cmUgdGhhdCBlbnRyeSBhbHNvIGltcG9ydHMgdGhpcyBtb2R1bGUsIG9yIHRoYXQgaXQgdHJhbnNpdGl2ZWx5XG4gKiByZWFjaGVzIGB3b3JsZC50c2AgdmlhIGEgbm9uLXRyZWUtc2hha2VhYmxlIHBhdGguIEFkZGluZyBhIHJlZ3Jlc3Npb25cbiAqIHRlc3QgaW4gYHdvcmxkLWluaXQudGVzdC50c2AgaXMgcHJlZmVycmVkIHRvIHJlbHlpbmcgb24gY2FyZWZ1bCBtYW51YWxcbiAqIHRyYWNpbmcuXG4gKi9cbmltcG9ydCAnLi93b3JsZC5qcyc7XG4iXX0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"world.d.ts","sourceRoot":"","sources":["../../src/runtime/world.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"world.d.ts","sourceRoot":"","sources":["../../src/runtime/world.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAiD7C,MAAM,MAAM,kBAAkB,GAAG;IAC/B,WAAW,CAAC,EAAE,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IAC3C,OAAO,CAAC,EAAE,CAAC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC;CAClD,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,kBAAkB,GACtB,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAcxB;AA8CD;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,WAAW,QAAa,OAAO,CAAC,KAAK,CA6DjD,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,EAAE,oBAAoB,GAAG,aAAa,CAAC,CAAC;AAE9E;;;;;;;;GAQG;AACH,eAAO,MAAM,gBAAgB,QAAa,OAAO,CAAC,aAAa,CAoB9D,CAAC;AAEF,eAAO,MAAM,QAAQ,QAAa,OAAO,CAAC,KAAK,CAgB9C,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,QAAQ,GAAI,OAAO,KAAK,GAAG,SAAS,KAAG,IAKnD,CAAC"}
|
package/dist/runtime/world.js
CHANGED
|
@@ -1,6 +1,16 @@
|
|
|
1
1
|
import { createRequire } from 'node:module';
|
|
2
2
|
import { pathToFileURL } from 'node:url';
|
|
3
3
|
import { isVercelWorldTarget, resolveWorkflowTargetWorld, } from '@workflow/utils';
|
|
4
|
+
// Static imports, so these two are compiled into the host application's server
|
|
5
|
+
// build. A bundler keys module identity on (resource, layer) and Next.js alone
|
|
6
|
+
// builds `instrument`, app-route, `ssr` and `edge` layers, so one process holds
|
|
7
|
+
// one copy of each of their modules *per layer*. Custom worlds below load
|
|
8
|
+
// through `getRuntimeRequire()` and are deduped by Node's module cache instead.
|
|
9
|
+
//
|
|
10
|
+
// Neither package may therefore keep mutable state at module scope; both hold
|
|
11
|
+
// it on `globalThis` via `globalSingleton()` from `@workflow/utils`, enforced
|
|
12
|
+
// by `scripts/lint/module-scope-state.mjs`. See that helper's doc comment, and
|
|
13
|
+
// `docs/content/worlds/*/building-a-world.mdx` for the rule world authors get.
|
|
4
14
|
import { createWorld as createLocalWorld } from '@workflow/world-local';
|
|
5
15
|
import { createWorld as createVercelWorld } from '@workflow/world-vercel';
|
|
6
16
|
import { assertWorldSupportsRuntimeProtocol } from './world-compatibility.js';
|
|
@@ -101,7 +111,7 @@ export const createWorld = async () => {
|
|
|
101
111
|
const targetWorld = resolveWorkflowTargetWorld();
|
|
102
112
|
if (isVercelWorldTarget(targetWorld)) {
|
|
103
113
|
// Warn if WORKFLOW_VERCEL_* env vars are set inside a Vercel serverless
|
|
104
|
-
// function (VERCEL=1)
|
|
114
|
+
// function (VERCEL=1): they have no effect at runtime and likely indicate
|
|
105
115
|
// a misconfiguration (user manually added them as Vercel project env vars,
|
|
106
116
|
// which is not needed). We gate on VERCEL=1 so the warning does not fire
|
|
107
117
|
// when the CLI or web observability app sets these env vars intentionally.
|
|
@@ -123,7 +133,7 @@ export const createWorld = async () => {
|
|
|
123
133
|
dataDir: process.env.WORKFLOW_LOCAL_DATA_DIR,
|
|
124
134
|
});
|
|
125
135
|
}
|
|
126
|
-
// Try require() first for custom worlds
|
|
136
|
+
// Try require() first for custom worlds: this avoids Turbopack tracing
|
|
127
137
|
// a dynamic import() that it can't statically resolve. Fall back to
|
|
128
138
|
// dynamic import() for ESM-only packages.
|
|
129
139
|
let mod;
|
|
@@ -226,4 +236,4 @@ export const setWorld = (world) => {
|
|
|
226
236
|
const GetWorldFnKey = Symbol.for('@workflow/world//getWorldFn');
|
|
227
237
|
globalThis[GetWorldFnKey] ??=
|
|
228
238
|
getWorld;
|
|
229
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ybGQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcnVudGltZS93b3JsZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDekMsT0FBTyxFQUNMLG1CQUFtQixFQUNuQiwwQkFBMEIsR0FDM0IsTUFBTSxpQkFBaUIsQ0FBQztBQUV6QixPQUFPLEVBQUUsV0FBVyxJQUFJLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDeEUsT0FBTyxFQUFFLFdBQVcsSUFBSSxpQkFBaUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzFFLE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRTlFLFNBQVMsaUJBQWlCO0lBQ3hCLHFFQUFxRTtJQUNyRSxxRUFBcUU7SUFDckUsc0VBQXNFO0lBQ3RFLG9EQUFvRDtJQUNwRCxJQUFJLENBQUM7UUFDSCxPQUFPLGFBQWE7UUFDbEIseUJBQXlCO1FBQ3pCLDJCQUEyQjtRQUMzQixhQUFhLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxHQUFHLGVBQWUsQ0FBQyxDQUFDLElBQUksQ0FDcEQsQ0FBQztJQUNKLENBQUM7SUFBQyxNQUFNLENBQUM7UUFDUCxPQUFPLGFBQWE7UUFDbEIseUJBQXlCO1FBQ3pCLDJCQUEyQjtRQUMzQixNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FDaEIsQ0FBQztJQUNKLENBQUM7QUFDSCxDQUFDO0FBRUQsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO0FBQ3hELE1BQU0saUJBQWlCLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQywrQkFBK0IsQ0FBQyxDQUFDO0FBQ3RFLE1BQU0saUJBQWlCLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQywrQkFBK0Is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WUFDN0QsYUFBYSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsU0FBUyxDQUFDO1lBQzdDLE1BQU0sR0FBRyxDQUFDO1FBQ1osQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBQ0QsYUFBYSxDQUFDLFVBQVUsQ0FBQyxHQUFHLE1BQU0sYUFBYSxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDbkUsa0NBQWtDLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7SUFDOUQsT0FBTyxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUM7QUFDbkMsQ0FBQyxDQUFDO0FBRUY7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHLENBQUMsS0FBd0IsRUFBUSxFQUFFO0lBQ3pELGFBQWEsQ0FBQyxVQUFVLENBQUMsR0FBRyxLQUFLLENBQUM7SUFDbEMsYUFBYSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsS0FBSyxDQUFDO0lBQ3pDLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLFNBQVMsQ0FBQztJQUM3QyxhQUFhLENBQUMsd0JBQXdCLENBQUMsR0FBRyxTQUFTLENBQUM7QUFDdEQsQ0FBQyxDQUFDO0FBRUYsNEVBQTRFO0FBQzVFLHlFQUF5RTtBQUN6RSwwRUFBMEU7QUFDMUUsMEVBQTBFO0FBQzFFLDRDQUE0QztBQUM1QyxFQUFFO0FBQ0YsMkVBQTJFO0FBQzNFLDZFQUE2RTtBQUM3RSxzRUFBc0U7QUFDdEUsMEVBQTBFO0FBQzFFLG1FQUFtRTtBQUNuRSx3RUFBd0U7QUFDeEUsRUFBRTtBQUNGLHdFQUF3RTtBQUN4RSwwRUFBMEU7QUFDMUUsb0JBQW9CO0FBQ3BCLE1BQU0sYUFBYSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsNkJBQTZCLENBQUMsQ0FBQztBQUMvRCxVQUF5RCxDQUFDLGFBQWEsQ0FBQztJQUN2RSxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVSZXF1aXJlIH0gZnJvbSAnbm9kZTptb2R1bGUnO1xuaW1wb3J0IHsgcGF0aFRvRmlsZVVSTCB9IGZyb20gJ25vZGU6dXJsJztcbmltcG9ydCB7XG4gIGlzVmVyY2VsV29ybGRUYXJnZXQsXG4gIHJlc29sdmVXb3JrZmxvd1RhcmdldFdvcmxkLFxufSBmcm9tICdAd29ya2Zsb3cvdXRpbHMnO1xuaW1wb3J0IHR5cGUgeyBXb3JsZCB9IGZyb20gJ0B3b3JrZmxvdy93b3JsZCc7XG5pbXBvcnQgeyBjcmVhdGVXb3JsZCBhcyBjcmVhdGVMb2NhbFdvcmxkIH0gZnJvbSAnQHdvcmtmbG93L3dvcmxkLWxvY2FsJztcbmltcG9ydCB7IGNyZWF0ZVdvcmxkIGFzIGNyZWF0ZVZlcmNlbFdvcmxkIH0gZnJvbSAnQHdvcmtmbG93L3dvcmxkLXZlcmNlbCc7XG5pbXBvcnQgeyBhc3NlcnRXb3JsZFN1cHBvcnRzUnVudGltZVByb3RvY29sIH0gZnJvbSAnLi93b3JsZC1jb21wYXRpYmlsaXR5LmpzJztcblxuZnVuY3Rpb24gZ2V0UnVudGltZVJlcXVpcmUoKSB7XG4gIC8vIFJlc29sdmUgZnJvbSB0aGUgYXBwIHJvb3QgKHByb2Nlc3MuY3dkKCkpIHNvIGN1c3RvbSB3b3JsZCBwYWNrYWdlc1xuICAvLyBsaWtlIEB3b3JrZmxvdy93b3JsZC1wb3N0Z3JlcyBjYW4gYmUgZm91bmQgZXZlbiB0aG91Z2ggdGhleSdyZSBub3RcbiAgLy8gZGVwZW5kZW5jaWVzIG9mIEB3b3JrZmxvdy9jb3JlLiBVc2luZyBpbXBvcnQubWV0YS51cmwgd291bGQgcmVzb2x2ZVxuICAvLyBmcm9tIGNvcmUncyBsb2NhdGlvbiwgbWlzc2luZyBhcHAtbGV2ZWwgcGFja2FnZXMuXG4gIHRyeSB7XG4gICAgcmV0dXJuIGNyZWF0ZVJlcXVpcmUoXG4gICAgICAvKiB3ZWJwYWNrSWdub3JlOiB0cnVlICovXG4gICAgICAvKiB0dXJib3BhY2tJZ25vcmU6IHRydWUgKi9cbiAgICAgIHBhdGhUb0ZpbGVVUkwocHJvY2Vzcy5jd2QoKSArICcvcGFja2FnZS5qc29uJykuaHJlZlxuICAgICk7XG4gIH0gY2F0Y2gge1xuICAgIHJldHVybiBjcmVhdGVSZXF1aXJlKFxuICAgICAgLyogd2VicGFja0lnbm9yZTogdHJ1ZSAqL1xuICAgICAgLyogdHVyYm9wYWNrSWdub3JlOiB0cnVlICovXG4gICAgICBpbXBvcnQubWV0YS51cmxcbiAgICApO1xuICB9XG59XG5cbmNvbnN0IFdvcmxkQ2FjaGUgPSBTeW1ib2wuZm9yKCdAd29ya2Zsb3cvd29ybGQvL2NhY2hlJyk7XG5jb25zdCBTdHViYmVkV29ybGRDYWNoZSA9IFN5bWJvbC5mb3IoJ0B3b3JrZmxvdy93b3JsZC8vc3R1YmJlZENhY2hlJyk7XG5jb25zdCBXb3JsZENhY2hlUHJvbWlzZSA9IFN5bWJvbC5mb3IoJ0B3b3JrZmxvdy93b3JsZC8vY2FjaGVQcm9taXNlJyk7XG5jb25zdCBTdHViYmVkV29ybGRDYWNoZVByb21pc2UgPSBTeW1ib2wuZm9yKFxuICAnQHdvcmtmbG93L3dvcmxkLy9zdHViYmVkQ2FjaGVQcm9taXNlJ1xuKTtcblxuY29uc3QgZ2xvYmFsU3ltYm9sczogdHlwZW9mIGdsb2JhbFRoaXMgJiB7XG4gIFtXb3JsZENhY2hlXT86IFdvcmxkO1xuICBbU3R1YmJlZFdvcmxkQ2FjaGVdPzogV29ybGQ7XG4gIFtXb3JsZENhY2hlUHJvbWlzZV0/OiBQcm9taXNlPFdvcmxkPjtcbiAgW1N0dWJiZWRXb3JsZENhY2hlUHJvbWlzZV0/OiBQcm9taXNlPFdvcmxkPjtcbn0gPSBnbG9iYWxUaGlzO1xuXG5leHBvcnQgdHlwZSBXb3JsZEZhY3RvcnlNb2R1bGUgPSB7XG4gIGNyZWF0ZVdvcmxkPzogKCkgPT4gV29ybGQgfCBQcm9taXNlPFdvcmxkPjtcbiAgZGVmYXVsdD86ICgoKSA9PiBXb3JsZCB8IFByb21pc2U8V29ybGQ+KSB8IFdvcmxkO1xufTtcblxuLyoqXG4gKiBDcmVhdGUgYSBXb3JsZCBpbnN0YW5jZSBmcm9tIGEgd29ybGQgZmFjdG9yeSBtb2R1bGUuIFNoYXJlZCBieVxuICogYGNyZWF0ZVdvcmxkKClgIChmb3IgdGhlIHdvcmxkIHBhY2thZ2UgbmFtZWQgYnkgV09SS0ZMT1dfVEFSR0VUX1dPUkxEKSBhbmRcbiAqIHRvb2xpbmcgdGhhdCBsb2FkcyBhIHdvcmxkIG1vZHVsZSBkeW5hbWljYWxseSAoZS5nLiB0aGUgTml0cm8gZGV2XG4gKiBoYW5kbGVyIGFuZCBgQHdvcmtmbG93L3dvcmxkLXRlc3RpbmdgKS4gV29ybGQgcGFja2FnZXMgc2hvdWxkIGV4cG9ydFxuICogYGNyZWF0ZVdvcmxkKClgLlxuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlV29ybGRGcm9tTW9kdWxlKFxuICBtb2Q6IFdvcmxkRmFjdG9yeU1vZHVsZVxuKTogV29ybGQgfCBQcm9taXNlPFdvcmxkPiB7XG4gIGlmICh0eXBlb2YgbW9kLmNyZWF0ZVdvcmxkID09PSAnZnVuY3Rpb24nKSB7XG4gICAgcmV0dXJuIG1vZC5jcmVhdGVXb3JsZCgpO1xuICB9XG4gIGlmICh0eXBlb2YgbW9kLmRlZmF1bHQgPT09ICdmdW5jdGlvbicpIHtcbiAgICByZXR1cm4gbW9kLmRlZmF1bHQoKTtcbiAgfVxuICBpZiAobW9kLmRlZmF1bHQgJiYgdHlwZW9mIG1vZC5kZWZhdWx0ID09PSAnb2JqZWN0Jykge1xuICAgIHJldHVybiBtb2QuZGVmYXVsdCBhcyBXb3JsZDtcbiAgfVxuXG4gIHRocm93IG5ldyBFcnJvcihcbiAgICAnSW52YWxpZCB0YXJnZXQgd29ybGQgbW9kdWxlOiBtdXN0IGV4cG9ydCBjcmVhdGVXb3JsZCgpLCBhIGRlZmF1bHQgZmFjdG9yeSwgb3IgYSBkZWZhdWx0IFdvcmxkIGluc3RhbmNlLidcbiAgKTtcbn1cblxuLy8gRHluYW1pYyBpbXBvcnQgZm9yIGN1c3RvbSB3b3JsZCBtb2R1bGVzLiBVc2VzIGEgc3RhbmRhcmQgaW1wb3J0KClcbi8vIHdyYXBwZWQgaW4gYSB0cnkvY2F0Y2ggd2l0aCByZXF1aXJlKCkgZmFsbGJhY2sgZm9yIENKUyB0ZXN0IHJ1bm5lcnMuXG4vLyBOb3RlOiB0aGUgcHJldmlvdXMgYG5ldyBGdW5jdGlvbignc3BlY2lmaWVyJywgJ3JldHVybiBpbXBvcnQoc3BlY2lmaWVyKScpYFxuLy8gcGF0dGVybiB3YXMgcmVwbGFjZWQgYmVjYXVzZSBUdXJib3BhY2sgKE5leHQuanMpIHRyZWF0cyB1bnJlc29sdmFibGVcbi8vIGR5bmFtaWMgaW1wb3J0cyBmcm9tIGBuZXcgRnVuY3Rpb25gIGFzIGZhdGFsIGJ1aWxkIGVycm9ycyBpbiB0aGUgVjJcbi8vIGNvbWJpbmVkIGZsb3cgcm91dGUgY29udGV4dC5cblxuZnVuY3Rpb24gcmVzb2x2ZU1vZHVsZVBhdGgoc3BlY2lmaWVyOiBzdHJpbmcpOiBzdHJpbmcge1xuICAvLyBBbHJlYWR5IGEgZmlsZTovLyBVUkxcbiAgaWYgKHNwZWNpZmllci5zdGFydHNXaXRoKCdmaWxlOi8vJykpIHtcbiAgICByZXR1cm4gc3BlY2lmaWVyO1xuICB9XG4gIC8vIEFic29sdXRlIHBhdGggLSBjb252ZXJ0IHRvIGZpbGU6Ly8gVVJMXG4gIGlmIChzcGVjaWZpZXIuc3RhcnRzV2l0aCgnLycpKSB7XG4gICAgcmV0dXJuIHBhdGhUb0ZpbGVVUkwoXG4gICAgICAvKiB3ZWJwYWNrSWdub3JlOiB0cnVlICovXG4gICAgICAvKiB0dXJib3BhY2tJZ25vcmU6IHRydWUgKi9cbiAgICAgIHNwZWNpZmllclxuICAgICkuaHJlZjtcbiAgfVxuICAvLyBSZWxhdGl2ZSBwYXRoIC0gcmVzb2x2ZSByZWxhdGl2ZSB0byBjd2QgYW5kIGNvbnZlcnQgdG8gZmlsZTovLyBVUkxcbiAgaWYgKHNwZWNpZmllci5zdGFydHNXaXRoKCcuLycpIHx8IHNwZWNpZmllci5zdGFydHNXaXRoKCcuLi8nKSkge1xuICAgIHJldHVybiBwYXRoVG9GaWxlVVJMKFxuICAgICAgLyogd2VicGFja0lnbm9yZTogdHJ1ZSAqL1xuICAgICAgLyogdHVyYm9wYWNrSWdub3JlOiB0cnVlICovXG4gICAgICBwcm9jZXNzLmN3ZCgpICsgJy8nICsgc3BlY2lmaWVyXG4gICAgKS5ocmVmO1xuICB9XG4gIC8vIFBhY2thZ2Ugc3BlY2lmaWVyIC0gdXNlIHJlcXVpcmUucmVzb2x2ZSB0byBmaW5kIHRoZSBwYWNrYWdlXG4gIHRyeSB7XG4gICAgcmV0dXJuIHBhdGhUb0ZpbGVVUkwoXG4gICAgICAvKiB3ZWJwYWNrSWdub3JlOiB0cnVlICovXG4gICAgICAvKiB0dXJib3BhY2tJZ25vcmU6IHRydWUgKi9cbiAgICAgIGdldFJ1bnRpbWVSZXF1aXJlKCkucmVzb2x2ZShcbiAgICAgICAgLyogd2VicGFja0lnbm9yZTogdHJ1ZSAqL1xuICAgICAgICAvKiB0dXJib3BhY2tJZ25vcmU6IHRydWUgKi9cbiAgICAgICAgc3BlY2lmaWVyXG4gICAgICApXG4gICAgKS5ocmVmO1xuICB9IGNhdGNoIHtcbiAgICByZXR1cm4gc3BlY2lmaWVyO1xuICB9XG59XG5cbi8qKlxuICogQ3JlYXRlIGEgbmV3IHdvcmxkIGluc3RhbmNlIGJhc2VkIG9uIGVudmlyb25tZW50IHZhcmlhYmxlcy5cbiAqIFdPUktGTE9XX1RBUkdFVF9XT1JMRCBpcyB1c2VkIHRvIGRldGVybWluZSB0aGUgdGFyZ2V0IHdvcmxkLlxuICpcbiAqIE5vdGU6IFdPUktGTE9XX1ZFUkNFTF8qIGVudiB2YXJzIChQUk9KRUNULCBURUFNLCBBVVRIX1RPS0VOLCBldGMuKSBhcmVcbiAqIGludGVudGlvbmFsbHkgTk9UIHJlYWQgaGVyZS4gVGhvc2UgYXJlIGZvciBDTEkvb2JzZXJ2YWJpbGl0eSB0b29saW5nIG9ubHlcbiAqIGFuZCBzaG91bGQgbm90IGFmZmVjdCBydW50aW1lIGJlaGF2aW9yLiBUaGUgVmVyY2VsIHJ1bnRpbWUgcHJvdmlkZXNcbiAqIGF1dGhlbnRpY2F0aW9uIHZpYSBPSURDIHRva2VucyBhbmQgcHJvamVjdCBjb250ZXh0IHZpYSBzeXN0ZW0gZW52IHZhcnNcbiAqIChWRVJDRUxfREVQTE9ZTUVOVF9JRCwgVkVSQ0VMX1BST0pFQ1RfSUQpLiBUb29saW5nIHRoYXQgbmVlZHMgdGhlc2UgZW52XG4gKiB2YXJzIHNob3VsZCBjYWxsIHRoZSBWZXJjZWwgd29ybGQncyBjcmVhdGVXb3JsZCgpIGRpcmVjdGx5IHdpdGggYW4gZXhwbGljaXRcbiAqIGNvbmZpZyBhbmQgdXNlIHNldFdvcmxkKCkgdG8gaW5qZWN0IHRoZSBpbnN0YW5jZS5cbiAqL1xuZXhwb3J0IGNvbnN0IGNyZWF0ZVdvcmxkID0gYXN5bmMgKCk6IFByb21pc2U8V29ybGQ+ID0+IHtcbiAgY29uc3QgdGFyZ2V0V29ybGQgPSByZXNvbHZlV29ya2Zsb3dUYXJnZXRXb3JsZCgpO1xuXG4gIGlmIChpc1ZlcmNlbFdvcmxkVGFyZ2V0KHRhcmdldFdvcmxkKSkge1xuICAgIC8vIFdhcm4gaWYgV09SS0ZMT1dfVkVSQ0VMXyogZW52IHZhcnMgYXJlIHNldCBpbnNpZGUgYSBWZXJjZWwgc2VydmVybGVzc1xuICAgIC8vIGZ1bmN0aW9uIChWRVJDRUw9MSkg4oCUIHRoZXkgaGF2ZSBubyBlZmZlY3QgYXQgcnVudGltZSBhbmQgbGlrZWx5IGluZGljYXRlXG4gICAgLy8gYSBtaXNjb25maWd1cmF0aW9uICh1c2VyIG1hbnVhbGx5IGFkZGVkIHRoZW0gYXMgVmVyY2VsIHByb2plY3QgZW52IHZhcnMsXG4gICAgLy8gd2hpY2ggaXMgbm90IG5lZWRlZCkuIFdlIGdhdGUgb24gVkVSQ0VMPTEgc28gdGhlIHdhcm5pbmcgZG9lcyBub3QgZmlyZVxuICAgIC8vIHdoZW4gdGhlIENMSSBvciB3ZWIgb2JzZXJ2YWJpbGl0eSBhcHAgc2V0cyB0aGVzZSBlbnYgdmFycyBpbnRlbnRpb25hbGx5LlxuICAgIGNvbnN0IHN0YWxlRW52VmFycyA9IFtcbiAgICAgICdXT1JLRkxPV19WRVJDRUxfUFJPSkVDVCcsXG4gICAgICAnV09SS0ZMT1dfVkVSQ0VMX1RFQU0nLFxuICAgICAgJ1dPUktGTE9XX1ZFUkNFTF9BVVRIX1RPS0VOJyxcbiAgICAgICdXT1JLRkxPV19WRVJDRUxfRU5WJyxcbiAgICBdLmZpbHRlcigoa2V5KSA9PiBwcm9jZXNzLmVudltrZXldKTtcbiAgICBpZiAoc3RhbGVFbnZWYXJzLmxlbmd0aCA+IDAgJiYgcHJvY2Vzcy5lbnYuVkVSQ0VMID09PSAnMScpIHtcbiAgICAgIGNvbnNvbGUud2FybihcbiAgICAgICAgYFt3b3JrZmxvd10gV2FybmluZzogJHtzdGFsZUVudlZhcnMuam9pbignLCAnKX0gZW52IHZhcihzKSBgICtcbiAgICAgICAgICAnYXJlIHNldCBidXQgaGF2ZSBubyBlZmZlY3QgYXQgcnVudGltZS4gVGhlc2UgYXJlIG9ubHkgdXNlZCBieSB0aGUgV29ya2Zsb3cgQ0xJLiAnICtcbiAgICAgICAgICAnUmVtb3ZlIHRoZW0gZnJvbSB5b3VyIFZlcmNlbCBwcm9qZWN0IGVudmlyb25tZW50IHZhcmlhYmxlcy4nXG4gICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiBjcmVhdGVWZXJjZWxXb3JsZCgpO1xuICB9XG5cbiAgaWYgKHRhcmdldFdvcmxkID09PSAnbG9jYWwnKSB7XG4gICAgcmV0dXJuIGNyZWF0ZUxvY2FsV29ybGQoe1xuICAgICAgZGF0YURpcjogcHJvY2Vzcy5lbnYuV09SS0ZMT1dfTE9DQUxfREFUQV9ESVIsXG4gICAgfSk7XG4gIH1cblxuICAvLyBUcnkgcmVxdWlyZSgpIGZpcnN0IGZvciBjdXN0b20gd29ybGRzIOKAlCB0aGlzIGF2b2lkcyBUdXJib3BhY2sgdHJhY2luZ1xuICAvLyBhIGR5bmFtaWMgaW1wb3J0KCkgdGhhdCBpdCBjYW4ndCBzdGF0aWNhbGx5IHJlc29sdmUuIEZhbGwgYmFjayB0b1xuICAvLyBkeW5hbWljIGltcG9ydCgpIGZvciBFU00tb25seSBwYWNrYWdlcy5cbiAgbGV0IG1vZDogYW55O1xuICB0cnkge1xuICAgIG1vZCA9IGdldFJ1bnRpbWVSZXF1aXJlKCkoXG4gICAgICAvKiB3ZWJwYWNrSWdub3JlOiB0cnVlICovXG4gICAgICAvKiB0dXJib3BhY2tJZ25vcmU6IHRydWUgKi9cbiAgICAgIHRhcmdldFdvcmxkXG4gICAgKTtcbiAgfSBjYXRjaCB7XG4gICAgY29uc3QgcmVzb2x2ZWRQYXRoID0gcmVzb2x2ZU1vZHVsZVBhdGgodGFyZ2V0V29ybGQpO1xuICAgIG1vZCA9IGF3YWl0IGltcG9ydChcbiAgICAgIC8qIHdlYnBhY2tJZ25vcmU6IHRydWUgKi9cbiAgICAgIC8qIHR1cmJvcGFja0lnbm9yZTogdHJ1ZSAqL1xuICAgICAgcmVzb2x2ZWRQYXRoXG4gICAgKTtcbiAgfVxuICBpZiAodHlwZW9mIG1vZCA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIHJldHVybiBtb2QoKSBhcyBXb3JsZDtcbiAgfVxuXG4gIHRyeSB7XG4gICAgcmV0dXJuIGF3YWl0IGNyZWF0ZVdvcmxkRnJvbU1vZHVsZShtb2QgYXMgV29ybGRGYWN0b3J5TW9kdWxlKTtcbiAgfSBjYXRjaCB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgYEludmFsaWQgdGFyZ2V0IHdvcmxkIG1vZHVsZTogJHt0YXJnZXRXb3JsZH0sIG11c3QgZXhwb3J0IGEgY3JlYXRlV29ybGQgZnVuY3Rpb24gb3IgYSBkZWZhdWx0IGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBhIFdvcmxkIGluc3RhbmNlLmBcbiAgICApO1xuICB9XG59O1xuXG5leHBvcnQgdHlwZSBXb3JsZEhhbmRsZXJzID0gUGljazxXb3JsZCwgJ2NyZWF0ZVF1ZXVlSGFuZGxlcicgfCAnc3BlY1ZlcnNpb24nPjtcblxuLyoqXG4gKiBTb21lIGZ1bmN0aW9ucyBmcm9tIHRoZSB3b3JsZCBhcmUgbmVlZGVkIGF0IGJ1aWxkIHRpbWUsIGJ1dCB3ZSBkbyBOT1Qgd2FudFxuICogdG8gY2FjaGUgdGhlIHdvcmxkIGluIHRob3NlIGluc3RhbmNlcyBmb3IgZ2VuZXJhbCB1c2UsIHNpbmNlIHdlIGRvbid0IGhhdmVcbiAqIHRoZSBjb3JyZWN0IGVudmlyb25tZW50IHZhcmlhYmxlcyBzZXQgeWV0LiBUaGlzIGlzIGEgc2FmZSBmdW5jdGlvbiB0b1xuICogY2FsbCBhdCBidWlsZCB0aW1lLCB0aGF0IG9ubHkgZ2l2ZXMgYWNjZXNzIHRvIG5vbi1lbnZpcm9ubWVudC1ib3VuZCB3b3JsZFxuICogZnVuY3Rpb25zLiBUaGUgb25seSBiaW5kaW5nIHZhbHVlIHNob3VsZCBiZSB0aGUgdGFyZ2V0IHdvcmxkLlxuICogT25jZSB3ZSBtaWdyYXRlIHRvIGEgZmlsZS1iYXNlZCBjb25maWd1cmF0aW9uICh3b3JrZmxvdy5jb25maWcudHMpLCB3ZSBzaG91bGRcbiAqIGJlIGFibGUgdG8gcmUtY29tYmluZSBnZXRXb3JsZCBhbmQgZ2V0V29ybGRIYW5kbGVycyBpbnRvIG9uZSBzaW5nbGV0b24uXG4gKi9cbmV4cG9ydCBjb25zdCBnZXRXb3JsZEhhbmRsZXJzID0gYXN5bmMgKCk6IFByb21pc2U8V29ybGRIYW5kbGVycz4gPT4ge1xuICBpZiAoZ2xvYmFsU3ltYm9sc1tTdHViYmVkV29ybGRDYWNoZV0pIHtcbiAgICBhc3NlcnRXb3JsZFN1cHBvcnRzUnVudGltZVByb3RvY29sKGdsb2JhbFN5bWJvbHNbU3R1YmJlZFdvcmxkQ2FjaGVdKTtcbiAgICByZXR1cm4gZ2xvYmFsU3ltYm9sc1tTdHViYmVkV29ybGRDYWNoZV07XG4gIH1cbiAgLy8gU3RvcmUgdGhlIHByb21pc2UgaW1tZWRpYXRlbHkgdG8gcHJldmVudCByYWNlIGNvbmRpdGlvbnMgd2l0aCBjb25jdXJyZW50IGNhbGxzLlxuICAvLyBDbGVhciBvbiByZWplY3Rpb24gc28gc3Vic2VxdWVudCBjYWxscyBjYW4gcmV0cnkgaW5zdGVhZCBvZiBjYWNoaW5nIHRoZSBmYWlsdXJlLlxuICBpZiAoIWdsb2JhbFN5bWJvbHNbU3R1YmJlZFdvcmxkQ2FjaGVQcm9taXNlXSkge1xuICAgIGdsb2JhbFN5bWJvbHNbU3R1YmJlZFdvcmxkQ2FjaGVQcm9taXNlXSA9IGNyZWF0ZVdvcmxkKCkuY2F0Y2goKGVycikgPT4ge1xuICAgICAgZ2xvYmFsU3ltYm9sc1tTdHViYmVkV29ybGRDYWNoZVByb21pc2VdID0gdW5kZWZpbmVkO1xuICAgICAgdGhyb3cgZXJyO1xuICAgIH0pO1xuICB9XG4gIGNvbnN0IF93b3JsZCA9IGF3YWl0IGdsb2JhbFN5bWJvbHNbU3R1YmJlZFdvcmxkQ2FjaGVQcm9taXNlXTtcbiAgYXNzZXJ0V29ybGRTdXBwb3J0c1J1bnRpbWVQcm90b2NvbChfd29ybGQpO1xuICBnbG9iYWxTeW1ib2xzW1N0dWJiZWRXb3JsZENhY2hlXSA9IF93b3JsZDtcbiAgcmV0dXJuIHtcbiAgICBjcmVhdGVRdWV1ZUhhbmRsZXI6IF93b3JsZC5jcmVhdGVRdWV1ZUhhbmRsZXIsXG4gICAgc3BlY1ZlcnNpb246IF93b3JsZC5zcGVjVmVyc2lvbixcbiAgfTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRXb3JsZCA9IGFzeW5jICgpOiBQcm9taXNlPFdvcmxkPiA9PiB7XG4gIGlmIChnbG9iYWxTeW1ib2xzW1dvcmxkQ2FjaGVdKSB7XG4gICAgYXNzZXJ0V29ybGRTdXBwb3J0c1J1bnRpbWVQcm90b2NvbChnbG9iYWxTeW1ib2xzW1dvcmxkQ2FjaGVdKTtcbiAgICByZXR1cm4gZ2xvYmFsU3ltYm9sc1tXb3JsZENhY2hlXTtcbiAgfVxuICAvLyBTdG9yZSB0aGUgcHJvbWlzZSBpbW1lZGlhdGVseSB0byBwcmV2ZW50IHJhY2UgY29uZGl0aW9ucyB3aXRoIGNvbmN1cnJlbnQgY2FsbHMuXG4gIC8vIENsZWFyIG9uIHJlamVjdGlvbiBzbyBzdWJzZXF1ZW50IGNhbGxzIGNhbiByZXRyeSBpbnN0ZWFkIG9mIGNhY2hpbmcgdGhlIGZhaWx1cmUuXG4gIGlmICghZ2xvYmFsU3ltYm9sc1tXb3JsZENhY2hlUHJvbWlzZV0pIHtcbiAgICBnbG9iYWxTeW1ib2xzW1dvcmxkQ2FjaGVQcm9taXNlXSA9IGNyZWF0ZVdvcmxkKCkuY2F0Y2goKGVycikgPT4ge1xuICAgICAgZ2xvYmFsU3ltYm9sc1tXb3JsZENhY2hlUHJvbWlzZV0gPSB1bmRlZmluZWQ7XG4gICAgICB0aHJvdyBlcnI7XG4gICAgfSk7XG4gIH1cbiAgZ2xvYmFsU3ltYm9sc1tXb3JsZENhY2hlXSA9IGF3YWl0IGdsb2JhbFN5bWJvbHNbV29ybGRDYWNoZVByb21pc2VdO1xuICBhc3NlcnRXb3JsZFN1cHBvcnRzUnVudGltZVByb3RvY29sKGdsb2JhbFN5bWJvbHNbV29ybGRDYWNoZV0pO1xuICByZXR1cm4gZ2xvYmFsU3ltYm9sc1tXb3JsZENhY2hlXTtcbn07XG5cbi8qKlxuICogUmVzZXQgdGhlIGNhY2hlZCB3b3JsZCBpbnN0YW5jZS4gVGhpcyBzaG91bGQgYmUgY2FsbGVkIHdoZW4gZW52aXJvbm1lbnRcbiAqIHZhcmlhYmxlcyBjaGFuZ2UgYW5kIHlvdSBuZWVkIHRvIHJlaW5pdGlhbGl6ZSB0aGUgd29ybGQgd2l0aCBuZXcgY29uZmlnLlxuICovXG5leHBvcnQgY29uc3Qgc2V0V29ybGQgPSAod29ybGQ6IFdvcmxkIHwgdW5kZWZpbmVkKTogdm9pZCA9PiB7XG4gIGdsb2JhbFN5bWJvbHNbV29ybGRDYWNoZV0gPSB3b3JsZDtcbiAgZ2xvYmFsU3ltYm9sc1tTdHViYmVkV29ybGRDYWNoZV0gPSB3b3JsZDtcbiAgZ2xvYmFsU3ltYm9sc1tXb3JsZENhY2hlUHJvbWlzZV0gPSB1bmRlZmluZWQ7XG4gIGdsb2JhbFN5bWJvbHNbU3R1YmJlZFdvcmxkQ2FjaGVQcm9taXNlXSA9IHVuZGVmaW5lZDtcbn07XG5cbi8vIFJlZ2lzdGVyIGdldFdvcmxkIG9uIGdsb2JhbFRoaXMgc28gZ2V0V29ybGRMYXp5IGNhbiBjYWxsIGl0IGRpcmVjdGx5IHdoZW5cbi8vIHdvcmxkLnRzIGlzIHN0YXRpY2FsbHkgcHJlc2VudCBpbiB0aGUgYnVuZGxlLiBUaGlzIGF2b2lkcyB0aGUgcmVsYXRpdmVcbi8vIGR5bmFtaWMgaW1wb3J0KCcuL3dvcmxkLmpzJykgZmFsbGJhY2sgaW4gZ2V0LXdvcmxkLWxhenkudHMsIHdoaWNoIGZhaWxzXG4vLyBhZnRlciBOZXh0LmpzIGlubGluZXMgZ2V0LXdvcmxkLWxhenkuanMgaW50byBhIHJvdXRlIGJ1bmRsZSAobm8gc2libGluZ1xuLy8gd29ybGQuanMgZXhpc3RzIGF0IHRoZSBidW5kbGVkIGxvY2F0aW9uKS5cbi8vXG4vLyBGb3Igc2VydmVyIHJvdXRlcyB0aGF0IG9ubHkgY29uc3VtZSBgc3RhcnRgIChvciBhbm90aGVyIGhlbHBlciB0aGF0IGdvZXNcbi8vIHRocm91Z2ggZ2V0V29ybGRMYXp5IHdpdGhvdXQgc3RhdGljYWxseSB1c2luZyBnZXRXb3JsZCksIHdlYnBhY2svdHVyYm9wYWNrXG4vLyB3b3VsZCBvdGhlcndpc2UgdHJlZS1zaGFrZSB3b3JsZC50cyBvdXQgb2YgdGhlIGJ1bmRsZSBlbnRpcmVseS4gVGhlXG4vLyBob3N0LW9ubHkgYC4vd29ybGQtaW5pdC50c2AgbW9kdWxlIGltcG9ydHMgd29ybGQudHMgZm9yIGl0cyBzaWRlIGVmZmVjdFxuLy8gYW5kIGlzIGl0c2VsZiBpbXBvcnRlZCBieSBgcGFja2FnZXMvd29ya2Zsb3cvc3JjL2FwaS50c2Agc28gdGhpc1xuLy8gcmVnaXN0cmF0aW9uIHJ1bnMgaW4gZXZlcnkgc2VydmVyIGJ1bmRsZSB0aGF0IHRvdWNoZXMgYHdvcmtmbG93L2FwaWAuXG4vL1xuLy8gU3RlcC9WTSBidW5kbGVzIG5ldmVyIHJlYWNoIHRoaXMgYnJhbmNoOiB0aGV5IGRvbid0IHN0YXRpY2FsbHkgaW1wb3J0XG4vLyB3b3JsZC50cywgYW5kIGB3b3JsZC1pbml0YCByZXNvbHZlcyB0byBhbiBlbXB0eSBzdHViIHZpYSB0aGUgYHdvcmtmbG93YFxuLy8gZXhwb3J0IGNvbmRpdGlvbi5cbmNvbnN0IEdldFdvcmxkRm5LZXkgPSBTeW1ib2wuZm9yKCdAd29ya2Zsb3cvd29ybGQvL2dldFdvcmxkRm4nKTtcbihnbG9iYWxUaGlzIGFzIHsgW0dldFdvcmxkRm5LZXldPzogKCkgPT4gUHJvbWlzZTxXb3JsZD4gfSlbR2V0V29ybGRGbktleV0gPz89XG4gIGdldFdvcmxkO1xuIl19
|
|
239
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ybGQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcnVudGltZS93b3JsZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDekMsT0FBTyxFQUNMLG1CQUFtQixFQUNuQiwwQkFBMEIsR0FDM0IsTUFBTSxpQkFBaUIsQ0FBQztBQUV6QiwrRUFBK0U7QUFDL0UsK0VBQStFO0FBQy9FLGdGQUFnRjtBQUNoRiwwRUFBMEU7QUFDMUUsZ0ZBQWdGO0FBQ2hGLEVBQUU7QUFDRiw4RUFBOEU7QUFDOUUsOEVBQThFO0FBQzlFLCtFQUErRTtBQUMvRSwrRUFBK0U7QUFDL0UsT0FBTyxFQUFFLFdBQVcsSUFBSSxnQkFBZ0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxXQUFXLElBQUksaUJBQWlCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMxRSxPQUFPLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUU5RSxTQUFTLGlCQUFpQjtJQUN4QixxRUFBcUU7SUFDckUscUVBQXFFO0lBQ3JFLHNFQUFzRTtJQUN0RSxvREFBb0Q7SUFDcEQsSUFBSSxDQUFDO1FBQ0gsT0FBTyxhQUFhO1FBQ2xCLHlCQUF5QjtRQUN6QiwyQkFBMkI7UUFDM0IsYUFBYSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsR0FBRyxlQUFlLENBQUMsQ0FBQyxJQUFJLENBQ3BELENBQUM7SUFDSixDQUFDO0lBQUMsTUFBTSxDQUFDO1FBQ1AsT0FBTyxhQUFhO1FBQ2xCLHlCQUF5QjtRQUN6QiwyQkFBMkI7UUFDM0IsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQ2hCLENBQUM7SUFDSixDQUFDO0FBQ0gsQ0FBQztBQUVELE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMs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eUQsQ0FBQyxhQUFhLENBQUM7SUFDdkUsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlUmVxdWlyZSB9IGZyb20gJ25vZGU6bW9kdWxlJztcbmltcG9ydCB7IHBhdGhUb0ZpbGVVUkwgfSBmcm9tICdub2RlOnVybCc7XG5pbXBvcnQge1xuICBpc1ZlcmNlbFdvcmxkVGFyZ2V0LFxuICByZXNvbHZlV29ya2Zsb3dUYXJnZXRXb3JsZCxcbn0gZnJvbSAnQHdvcmtmbG93L3V0aWxzJztcbmltcG9ydCB0eXBlIHsgV29ybGQgfSBmcm9tICdAd29ya2Zsb3cvd29ybGQnO1xuLy8gU3RhdGljIGltcG9ydHMsIHNvIHRoZXNlIHR3byBhcmUgY29tcGlsZWQgaW50byB0aGUgaG9zdCBhcHBsaWNhdGlvbidzIHNlcnZlclxuLy8gYnVpbGQuIEEgYnVuZGxlciBrZXlzIG1vZHVsZSBpZGVudGl0eSBvbiAocmVzb3VyY2UsIGxheWVyKSBhbmQgTmV4dC5qcyBhbG9uZVxuLy8gYnVpbGRzIGBpbnN0cnVtZW50YCwgYXBwLXJvdXRlLCBgc3NyYCBhbmQgYGVkZ2VgIGxheWVycywgc28gb25lIHByb2Nlc3MgaG9sZHNcbi8vIG9uZSBjb3B5IG9mIGVhY2ggb2YgdGhlaXIgbW9kdWxlcyAqcGVyIGxheWVyKi4gQ3VzdG9tIHdvcmxkcyBiZWxvdyBsb2FkXG4vLyB0aHJvdWdoIGBnZXRSdW50aW1lUmVxdWlyZSgpYCBhbmQgYXJlIGRlZHVwZWQgYnkgTm9kZSdzIG1vZHVsZSBjYWNoZSBpbnN0ZWFkLlxuLy9cbi8vIE5laXRoZXIgcGFja2FnZSBtYXkgdGhlcmVmb3JlIGtlZXAgbXV0YWJsZSBzdGF0ZSBhdCBtb2R1bGUgc2NvcGU7IGJvdGggaG9sZFxuLy8gaXQgb24gYGdsb2JhbFRoaXNgIHZpYSBgZ2xvYmFsU2luZ2xldG9uKClgIGZyb20gYEB3b3JrZmxvdy91dGlsc2AsIGVuZm9yY2VkXG4vLyBieSBgc2NyaXB0cy9saW50L21vZHVsZS1zY29wZS1zdGF0ZS5tanNgLiBTZWUgdGhhdCBoZWxwZXIncyBkb2MgY29tbWVudCwgYW5kXG4vLyBgZG9jcy9jb250ZW50L3dvcmxkcy8qL2J1aWxkaW5nLWEtd29ybGQubWR4YCBmb3IgdGhlIHJ1bGUgd29ybGQgYXV0aG9ycyBnZXQuXG5pbXBvcnQgeyBjcmVhdGVXb3JsZCBhcyBjcmVhdGVMb2NhbFdvcmxkIH0gZnJvbSAnQHdvcmtmbG93L3dvcmxkLWxvY2FsJztcbmltcG9ydCB7IGNyZWF0ZVdvcmxkIGFzIGNyZWF0ZVZlcmNlbFdvcmxkIH0gZnJvbSAnQHdvcmtmbG93L3dvcmxkLXZlcmNlbCc7XG5pbXBvcnQgeyBhc3NlcnRXb3JsZFN1cHBvcnRzUnVudGltZVByb3RvY29sIH0gZnJvbSAnLi93b3JsZC1jb21wYXRpYmlsaXR5LmpzJztcblxuZnVuY3Rpb24gZ2V0UnVudGltZVJlcXVpcmUoKSB7XG4gIC8vIFJlc29sdmUgZnJvbSB0aGUgYXBwIHJvb3QgKHByb2Nlc3MuY3dkKCkpIHNvIGN1c3RvbSB3b3JsZCBwYWNrYWdlc1xuICAvLyBsaWtlIEB3b3JrZmxvdy93b3JsZC1wb3N0Z3JlcyBjYW4gYmUgZm91bmQgZXZlbiB0aG91Z2ggdGhleSdyZSBub3RcbiAgLy8gZGVwZW5kZW5jaWVzIG9mIEB3b3JrZmxvdy9jb3JlLiBVc2luZyBpbXBvcnQubWV0YS51cmwgd291bGQgcmVzb2x2ZVxuICAvLyBmcm9tIGNvcmUncyBsb2NhdGlvbiwgbWlzc2luZyBhcHAtbGV2ZWwgcGFja2FnZXMuXG4gIHRyeSB7XG4gICAgcmV0dXJuIGNyZWF0ZVJlcXVpcmUoXG4gICAgICAvKiB3ZWJwYWNrSWdub3JlOiB0cnVlICovXG4gICAgICAvKiB0dXJib3BhY2tJZ25vcmU6IHRydWUgKi9cbiAgICAgIHBhdGhUb0ZpbGVVUkwocHJvY2Vzcy5jd2QoKSArICcvcGFja2FnZS5qc29uJykuaHJlZlxuICAgICk7XG4gIH0gY2F0Y2gge1xuICAgIHJldHVybiBjcmVhdGVSZXF1aXJlKFxuICAgICAgLyogd2VicGFja0lnbm9yZTogdHJ1ZSAqL1xuICAgICAgLyogdHVyYm9wYWNrSWdub3JlOiB0cnVlICovXG4gICAgICBpbXBvcnQubWV0YS51cmxcbiAgICApO1xuICB9XG59XG5cbmNvbnN0IFdvcmxkQ2FjaGUgPSBTeW1ib2wuZm9yKCdAd29ya2Zsb3cvd29ybGQvL2NhY2hlJyk7XG5jb25zdCBTdHViYmVkV29ybGRDYWNoZSA9IFN5bWJvbC5mb3IoJ0B3b3JrZmxvdy93b3JsZC8vc3R1YmJlZENhY2hlJyk7XG5jb25zdCBXb3JsZENhY2hlUHJvbWlzZSA9IFN5bWJvbC5mb3IoJ0B3b3JrZmxvdy93b3JsZC8vY2FjaGVQcm9taXNlJyk7XG5jb25zdCBTdHViYmVkV29ybGRDYWNoZVByb21pc2UgPSBTeW1ib2wuZm9yKFxuICAnQHdvcmtmbG93L3dvcmxkLy9zdHViYmVkQ2FjaGVQcm9taXNlJ1xuKTtcblxuY29uc3QgZ2xvYmFsU3ltYm9sczogdHlwZW9mIGdsb2JhbFRoaXMgJiB7XG4gIFtXb3JsZENhY2hlXT86IFdvcmxkO1xuICBbU3R1YmJlZFdvcmxkQ2FjaGVdPzogV29ybGQ7XG4gIFtXb3JsZENhY2hlUHJvbWlzZV0/OiBQcm9taXNlPFdvcmxkPjtcbiAgW1N0dWJiZWRXb3JsZENhY2hlUHJvbWlzZV0/OiBQcm9taXNlPFdvcmxkPjtcbn0gPSBnbG9iYWxUaGlzO1xuXG5leHBvcnQgdHlwZSBXb3JsZEZhY3RvcnlNb2R1bGUgPSB7XG4gIGNyZWF0ZVdvcmxkPzogKCkgPT4gV29ybGQgfCBQcm9taXNlPFdvcmxkPjtcbiAgZGVmYXVsdD86ICgoKSA9PiBXb3JsZCB8IFByb21pc2U8V29ybGQ+KSB8IFdvcmxkO1xufTtcblxuLyoqXG4gKiBDcmVhdGUgYSBXb3JsZCBpbnN0YW5jZSBmcm9tIGEgd29ybGQgZmFjdG9yeSBtb2R1bGUuIFNoYXJlZCBieVxuICogYGNyZWF0ZVdvcmxkKClgIChmb3IgdGhlIHdvcmxkIHBhY2thZ2UgbmFtZWQgYnkgV09SS0ZMT1dfVEFSR0VUX1dPUkxEKSBhbmRcbiAqIHRvb2xpbmcgdGhhdCBsb2FkcyBhIHdvcmxkIG1vZHVsZSBkeW5hbWljYWxseSAoZS5nLiB0aGUgTml0cm8gZGV2XG4gKiBoYW5kbGVyIGFuZCBgQHdvcmtmbG93L3dvcmxkLXRlc3RpbmdgKS4gV29ybGQgcGFja2FnZXMgc2hvdWxkIGV4cG9ydFxuICogYGNyZWF0ZVdvcmxkKClgLlxuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlV29ybGRGcm9tTW9kdWxlKFxuICBtb2Q6IFdvcmxkRmFjdG9yeU1vZHVsZVxuKTogV29ybGQgfCBQcm9taXNlPFdvcmxkPiB7XG4gIGlmICh0eXBlb2YgbW9kLmNyZWF0ZVdvcmxkID09PSAnZnVuY3Rpb24nKSB7XG4gICAgcmV0dXJuIG1vZC5jcmVhdGVXb3JsZCgpO1xuICB9XG4gIGlmICh0eXBlb2YgbW9kLmRlZmF1bHQgPT09ICdmdW5jdGlvbicpIHtcbiAgICByZXR1cm4gbW9kLmRlZmF1bHQoKTtcbiAgfVxuICBpZiAobW9kLmRlZmF1bHQgJiYgdHlwZW9mIG1vZC5kZWZhdWx0ID09PSAnb2JqZWN0Jykge1xuICAgIHJldHVybiBtb2QuZGVmYXVsdCBhcyBXb3JsZDtcbiAgfVxuXG4gIHRocm93IG5ldyBFcnJvcihcbiAgICAnSW52YWxpZCB0YXJnZXQgd29ybGQgbW9kdWxlOiBtdXN0IGV4cG9ydCBjcmVhdGVXb3JsZCgpLCBhIGRlZmF1bHQgZmFjdG9yeSwgb3IgYSBkZWZhdWx0IFdvcmxkIGluc3RhbmNlLidcbiAgKTtcbn1cblxuLy8gRHluYW1pYyBpbXBvcnQgZm9yIGN1c3RvbSB3b3JsZCBtb2R1bGVzLiBVc2VzIGEgc3RhbmRhcmQgaW1wb3J0KClcbi8vIHdyYXBwZWQgaW4gYSB0cnkvY2F0Y2ggd2l0aCByZXF1aXJlKCkgZmFsbGJhY2sgZm9yIENKUyB0ZXN0IHJ1bm5lcnMuXG4vLyBOb3RlOiB0aGUgcHJldmlvdXMgYG5ldyBGdW5jdGlvbignc3BlY2lmaWVyJywgJ3JldHVybiBpbXBvcnQoc3BlY2lmaWVyKScpYFxuLy8gcGF0dGVybiB3YXMgcmVwbGFjZWQgYmVjYXVzZSBUdXJib3BhY2sgKE5leHQuanMpIHRyZWF0cyB1bnJlc29sdmFibGVcbi8vIGR5bmFtaWMgaW1wb3J0cyBmcm9tIGBuZXcgRnVuY3Rpb25gIGFzIGZhdGFsIGJ1aWxkIGVycm9ycyBpbiB0aGUgVjJcbi8vIGNvbWJpbmVkIGZsb3cgcm91dGUgY29udGV4dC5cblxuZnVuY3Rpb24gcmVzb2x2ZU1vZHVsZVBhdGgoc3BlY2lmaWVyOiBzdHJpbmcpOiBzdHJpbmcge1xuICAvLyBBbHJlYWR5IGEgZmlsZTovLyBVUkxcbiAgaWYgKHNwZWNpZmllci5zdGFydHNXaXRoKCdmaWxlOi8vJykpIHtcbiAgICByZXR1cm4gc3BlY2lmaWVyO1xuICB9XG4gIC8vIEFic29sdXRlIHBhdGggLSBjb252ZXJ0IHRvIGZpbGU6Ly8gVVJMXG4gIGlmIChzcGVjaWZpZXIuc3RhcnRzV2l0aCgnLycpKSB7XG4gICAgcmV0dXJuIHBhdGhUb0ZpbGVVUkwoXG4gICAgICAvKiB3ZWJwYWNrSWdub3JlOiB0cnVlICovXG4gICAgICAvKiB0dXJib3BhY2tJZ25vcmU6IHRydWUgKi9cbiAgICAgIHNwZWNpZmllclxuICAgICkuaHJlZjtcbiAgfVxuICAvLyBSZWxhdGl2ZSBwYXRoIC0gcmVzb2x2ZSByZWxhdGl2ZSB0byBjd2QgYW5kIGNvbnZlcnQgdG8gZmlsZTovLyBVUkxcbiAgaWYgKHNwZWNpZmllci5zdGFydHNXaXRoKCcuLycpIHx8IHNwZWNpZmllci5zdGFydHNXaXRoKCcuLi8nKSkge1xuICAgIHJldHVybiBwYXRoVG9GaWxlVVJMKFxuICAgICAgLyogd2VicGFja0lnbm9yZTogdHJ1ZSAqL1xuICAgICAgLyogdHVyYm9wYWNrSWdub3JlOiB0cnVlICovXG4gICAgICBwcm9jZXNzLmN3ZCgpICsgJy8nICsgc3BlY2lmaWVyXG4gICAgKS5ocmVmO1xuICB9XG4gIC8vIFBhY2thZ2Ugc3BlY2lmaWVyIC0gdXNlIHJlcXVpcmUucmVzb2x2ZSB0byBmaW5kIHRoZSBwYWNrYWdlXG4gIHRyeSB7XG4gICAgcmV0dXJuIHBhdGhUb0ZpbGVVUkwoXG4gICAgICAvKiB3ZWJwYWNrSWdub3JlOiB0cnVlICovXG4gICAgICAvKiB0dXJib3BhY2tJZ25vcmU6IHRydWUgKi9cbiAgICAgIGdldFJ1bnRpbWVSZXF1aXJlKCkucmVzb2x2ZShcbiAgICAgICAgLyogd2VicGFja0lnbm9yZTogdHJ1ZSAqL1xuICAgICAgICAvKiB0dXJib3BhY2tJZ25vcmU6IHRydWUgKi9cbiAgICAgICAgc3BlY2lmaWVyXG4gICAgICApXG4gICAgKS5ocmVmO1xuICB9IGNhdGNoIHtcbiAgICByZXR1cm4gc3BlY2lmaWVyO1xuICB9XG59XG5cbi8qKlxuICogQ3JlYXRlIGEgbmV3IHdvcmxkIGluc3RhbmNlIGJhc2VkIG9uIGVudmlyb25tZW50IHZhcmlhYmxlcy5cbiAqIFdPUktGTE9XX1RBUkdFVF9XT1JMRCBpcyB1c2VkIHRvIGRldGVybWluZSB0aGUgdGFyZ2V0IHdvcmxkLlxuICpcbiAqIE5vdGU6IFdPUktGTE9XX1ZFUkNFTF8qIGVudiB2YXJzIChQUk9KRUNULCBURUFNLCBBVVRIX1RPS0VOLCBldGMuKSBhcmVcbiAqIGludGVudGlvbmFsbHkgTk9UIHJlYWQgaGVyZS4gVGhvc2UgYXJlIGZvciBDTEkvb2JzZXJ2YWJpbGl0eSB0b29saW5nIG9ubHlcbiAqIGFuZCBzaG91bGQgbm90IGFmZmVjdCBydW50aW1lIGJlaGF2aW9yLiBUaGUgVmVyY2VsIHJ1bnRpbWUgcHJvdmlkZXNcbiAqIGF1dGhlbnRpY2F0aW9uIHZpYSBPSURDIHRva2VucyBhbmQgcHJvamVjdCBjb250ZXh0IHZpYSBzeXN0ZW0gZW52IHZhcnNcbiAqIChWRVJDRUxfREVQTE9ZTUVOVF9JRCwgVkVSQ0VMX1BST0pFQ1RfSUQpLiBUb29saW5nIHRoYXQgbmVlZHMgdGhlc2UgZW52XG4gKiB2YXJzIHNob3VsZCBjYWxsIHRoZSBWZXJjZWwgd29ybGQncyBjcmVhdGVXb3JsZCgpIGRpcmVjdGx5IHdpdGggYW4gZXhwbGljaXRcbiAqIGNvbmZpZyBhbmQgdXNlIHNldFdvcmxkKCkgdG8gaW5qZWN0IHRoZSBpbnN0YW5jZS5cbiAqL1xuZXhwb3J0IGNvbnN0IGNyZWF0ZVdvcmxkID0gYXN5bmMgKCk6IFByb21pc2U8V29ybGQ+ID0+IHtcbiAgY29uc3QgdGFyZ2V0V29ybGQgPSByZXNvbHZlV29ya2Zsb3dUYXJnZXRXb3JsZCgpO1xuXG4gIGlmIChpc1ZlcmNlbFdvcmxkVGFyZ2V0KHRhcmdldFdvcmxkKSkge1xuICAgIC8vIFdhcm4gaWYgV09SS0ZMT1dfVkVSQ0VMXyogZW52IHZhcnMgYXJlIHNldCBpbnNpZGUgYSBWZXJjZWwgc2VydmVybGVzc1xuICAgIC8vIGZ1bmN0aW9uIChWRVJDRUw9MSk6IHRoZXkgaGF2ZSBubyBlZmZlY3QgYXQgcnVudGltZSBhbmQgbGlrZWx5IGluZGljYXRlXG4gICAgLy8gYSBtaXNjb25maWd1cmF0aW9uICh1c2VyIG1hbnVhbGx5IGFkZGVkIHRoZW0gYXMgVmVyY2VsIHByb2plY3QgZW52IHZhcnMsXG4gICAgLy8gd2hpY2ggaXMgbm90IG5lZWRlZCkuIFdlIGdhdGUgb24gVkVSQ0VMPTEgc28gdGhlIHdhcm5pbmcgZG9lcyBub3QgZmlyZVxuICAgIC8vIHdoZW4gdGhlIENMSSBvciB3ZWIgb2JzZXJ2YWJpbGl0eSBhcHAgc2V0cyB0aGVzZSBlbnYgdmFycyBpbnRlbnRpb25hbGx5LlxuICAgIGNvbnN0IHN0YWxlRW52VmFycyA9IFtcbiAgICAgICdXT1JLRkxPV19WRVJDRUxfUFJPSkVDVCcsXG4gICAgICAnV09SS0ZMT1dfVkVSQ0VMX1RFQU0nLFxuICAgICAgJ1dPUktGTE9XX1ZFUkNFTF9BVVRIX1RPS0VOJyxcbiAgICAgICdXT1JLRkxPV19WRVJDRUxfRU5WJyxcbiAgICBdLmZpbHRlcigoa2V5KSA9PiBwcm9jZXNzLmVudltrZXldKTtcbiAgICBpZiAoc3RhbGVFbnZWYXJzLmxlbmd0aCA+IDAgJiYgcHJvY2Vzcy5lbnYuVkVSQ0VMID09PSAnMScpIHtcbiAgICAgIGNvbnNvbGUud2FybihcbiAgICAgICAgYFt3b3JrZmxvd10gV2FybmluZzogJHtzdGFsZUVudlZhcnMuam9pbignLCAnKX0gZW52IHZhcihzKSBgICtcbiAgICAgICAgICAnYXJlIHNldCBidXQgaGF2ZSBubyBlZmZlY3QgYXQgcnVudGltZS4gVGhlc2UgYXJlIG9ubHkgdXNlZCBieSB0aGUgV29ya2Zsb3cgQ0xJLiAnICtcbiAgICAgICAgICAnUmVtb3ZlIHRoZW0gZnJvbSB5b3VyIFZlcmNlbCBwcm9qZWN0IGVudmlyb25tZW50IHZhcmlhYmxlcy4nXG4gICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiBjcmVhdGVWZXJjZWxXb3JsZCgpO1xuICB9XG5cbiAgaWYgKHRhcmdldFdvcmxkID09PSAnbG9jYWwnKSB7XG4gICAgcmV0dXJuIGNyZWF0ZUxvY2FsV29ybGQoe1xuICAgICAgZGF0YURpcjogcHJvY2Vzcy5lbnYuV09SS0ZMT1dfTE9DQUxfREFUQV9ESVIsXG4gICAgfSk7XG4gIH1cblxuICAvLyBUcnkgcmVxdWlyZSgpIGZpcnN0IGZvciBjdXN0b20gd29ybGRzOiB0aGlzIGF2b2lkcyBUdXJib3BhY2sgdHJhY2luZ1xuICAvLyBhIGR5bmFtaWMgaW1wb3J0KCkgdGhhdCBpdCBjYW4ndCBzdGF0aWNhbGx5IHJlc29sdmUuIEZhbGwgYmFjayB0b1xuICAvLyBkeW5hbWljIGltcG9ydCgpIGZvciBFU00tb25seSBwYWNrYWdlcy5cbiAgbGV0IG1vZDogYW55O1xuICB0cnkge1xuICAgIG1vZCA9IGdldFJ1bnRpbWVSZXF1aXJlKCkoXG4gICAgICAvKiB3ZWJwYWNrSWdub3JlOiB0cnVlICovXG4gICAgICAvKiB0dXJib3BhY2tJZ25vcmU6IHRydWUgKi9cbiAgICAgIHRhcmdldFdvcmxkXG4gICAgKTtcbiAgfSBjYXRjaCB7XG4gICAgY29uc3QgcmVzb2x2ZWRQYXRoID0gcmVzb2x2ZU1vZHVsZVBhdGgodGFyZ2V0V29ybGQpO1xuICAgIG1vZCA9IGF3YWl0IGltcG9ydChcbiAgICAgIC8qIHdlYnBhY2tJZ25vcmU6IHRydWUgKi9cbiAgICAgIC8qIHR1cmJvcGFja0lnbm9yZTogdHJ1ZSAqL1xuICAgICAgcmVzb2x2ZWRQYXRoXG4gICAgKTtcbiAgfVxuICBpZiAodHlwZW9mIG1vZCA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIHJldHVybiBtb2QoKSBhcyBXb3JsZDtcbiAgfVxuXG4gIHRyeSB7XG4gICAgcmV0dXJuIGF3YWl0IGNyZWF0ZVdvcmxkRnJvbU1vZHVsZShtb2QgYXMgV29ybGRGYWN0b3J5TW9kdWxlKTtcbiAgfSBjYXRjaCB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgYEludmFsaWQgdGFyZ2V0IHdvcmxkIG1vZHVsZTogJHt0YXJnZXRXb3JsZH0sIG11c3QgZXhwb3J0IGEgY3JlYXRlV29ybGQgZnVuY3Rpb24gb3IgYSBkZWZhdWx0IGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBhIFdvcmxkIGluc3RhbmNlLmBcbiAgICApO1xuICB9XG59O1xuXG5leHBvcnQgdHlwZSBXb3JsZEhhbmRsZXJzID0gUGljazxXb3JsZCwgJ2NyZWF0ZVF1ZXVlSGFuZGxlcicgfCAnc3BlY1ZlcnNpb24nPjtcblxuLyoqXG4gKiBTb21lIGZ1bmN0aW9ucyBmcm9tIHRoZSB3b3JsZCBhcmUgbmVlZGVkIGF0IGJ1aWxkIHRpbWUsIGJ1dCB3ZSBkbyBOT1Qgd2FudFxuICogdG8gY2FjaGUgdGhlIHdvcmxkIGluIHRob3NlIGluc3RhbmNlcyBmb3IgZ2VuZXJhbCB1c2UsIHNpbmNlIHdlIGRvbid0IGhhdmVcbiAqIHRoZSBjb3JyZWN0IGVudmlyb25tZW50IHZhcmlhYmxlcyBzZXQgeWV0LiBUaGlzIGlzIGEgc2FmZSBmdW5jdGlvbiB0b1xuICogY2FsbCBhdCBidWlsZCB0aW1lLCB0aGF0IG9ubHkgZ2l2ZXMgYWNjZXNzIHRvIG5vbi1lbnZpcm9ubWVudC1ib3VuZCB3b3JsZFxuICogZnVuY3Rpb25zLiBUaGUgb25seSBiaW5kaW5nIHZhbHVlIHNob3VsZCBiZSB0aGUgdGFyZ2V0IHdvcmxkLlxuICogT25jZSB3ZSBtaWdyYXRlIHRvIGEgZmlsZS1iYXNlZCBjb25maWd1cmF0aW9uICh3b3JrZmxvdy5jb25maWcudHMpLCB3ZSBzaG91bGRcbiAqIGJlIGFibGUgdG8gcmUtY29tYmluZSBnZXRXb3JsZCBhbmQgZ2V0V29ybGRIYW5kbGVycyBpbnRvIG9uZSBzaW5nbGV0b24uXG4gKi9cbmV4cG9ydCBjb25zdCBnZXRXb3JsZEhhbmRsZXJzID0gYXN5bmMgKCk6IFByb21pc2U8V29ybGRIYW5kbGVycz4gPT4ge1xuICBpZiAoZ2xvYmFsU3ltYm9sc1tTdHViYmVkV29ybGRDYWNoZV0pIHtcbiAgICBhc3NlcnRXb3JsZFN1cHBvcnRzUnVudGltZVByb3RvY29sKGdsb2JhbFN5bWJvbHNbU3R1YmJlZFdvcmxkQ2FjaGVdKTtcbiAgICByZXR1cm4gZ2xvYmFsU3ltYm9sc1tTdHViYmVkV29ybGRDYWNoZV07XG4gIH1cbiAgLy8gU3RvcmUgdGhlIHByb21pc2UgaW1tZWRpYXRlbHkgdG8gcHJldmVudCByYWNlIGNvbmRpdGlvbnMgd2l0aCBjb25jdXJyZW50IGNhbGxzLlxuICAvLyBDbGVhciBvbiByZWplY3Rpb24gc28gc3Vic2VxdWVudCBjYWxscyBjYW4gcmV0cnkgaW5zdGVhZCBvZiBjYWNoaW5nIHRoZSBmYWlsdXJlLlxuICBpZiAoIWdsb2JhbFN5bWJvbHNbU3R1YmJlZFdvcmxkQ2FjaGVQcm9taXNlXSkge1xuICAgIGdsb2JhbFN5bWJvbHNbU3R1YmJlZFdvcmxkQ2FjaGVQcm9taXNlXSA9IGNyZWF0ZVdvcmxkKCkuY2F0Y2goKGVycikgPT4ge1xuICAgICAgZ2xvYmFsU3ltYm9sc1tTdHViYmVkV29ybGRDYWNoZVByb21pc2VdID0gdW5kZWZpbmVkO1xuICAgICAgdGhyb3cgZXJyO1xuICAgIH0pO1xuICB9XG4gIGNvbnN0IF93b3JsZCA9IGF3YWl0IGdsb2JhbFN5bWJvbHNbU3R1YmJlZFdvcmxkQ2FjaGVQcm9taXNlXTtcbiAgYXNzZXJ0V29ybGRTdXBwb3J0c1J1bnRpbWVQcm90b2NvbChfd29ybGQpO1xuICBnbG9iYWxTeW1ib2xzW1N0dWJiZWRXb3JsZENhY2hlXSA9IF93b3JsZDtcbiAgcmV0dXJuIHtcbiAgICBjcmVhdGVRdWV1ZUhhbmRsZXI6IF93b3JsZC5jcmVhdGVRdWV1ZUhhbmRsZXIsXG4gICAgc3BlY1ZlcnNpb246IF93b3JsZC5zcGVjVmVyc2lvbixcbiAgfTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRXb3JsZCA9IGFzeW5jICgpOiBQcm9taXNlPFdvcmxkPiA9PiB7XG4gIGlmIChnbG9iYWxTeW1ib2xzW1dvcmxkQ2FjaGVdKSB7XG4gICAgYXNzZXJ0V29ybGRTdXBwb3J0c1J1bnRpbWVQcm90b2NvbChnbG9iYWxTeW1ib2xzW1dvcmxkQ2FjaGVdKTtcbiAgICByZXR1cm4gZ2xvYmFsU3ltYm9sc1tXb3JsZENhY2hlXTtcbiAgfVxuICAvLyBTdG9yZSB0aGUgcHJvbWlzZSBpbW1lZGlhdGVseSB0byBwcmV2ZW50IHJhY2UgY29uZGl0aW9ucyB3aXRoIGNvbmN1cnJlbnQgY2FsbHMuXG4gIC8vIENsZWFyIG9uIHJlamVjdGlvbiBzbyBzdWJzZXF1ZW50IGNhbGxzIGNhbiByZXRyeSBpbnN0ZWFkIG9mIGNhY2hpbmcgdGhlIGZhaWx1cmUuXG4gIGlmICghZ2xvYmFsU3ltYm9sc1tXb3JsZENhY2hlUHJvbWlzZV0pIHtcbiAgICBnbG9iYWxTeW1ib2xzW1dvcmxkQ2FjaGVQcm9taXNlXSA9IGNyZWF0ZVdvcmxkKCkuY2F0Y2goKGVycikgPT4ge1xuICAgICAgZ2xvYmFsU3ltYm9sc1tXb3JsZENhY2hlUHJvbWlzZV0gPSB1bmRlZmluZWQ7XG4gICAgICB0aHJvdyBlcnI7XG4gICAgfSk7XG4gIH1cbiAgZ2xvYmFsU3ltYm9sc1tXb3JsZENhY2hlXSA9IGF3YWl0IGdsb2JhbFN5bWJvbHNbV29ybGRDYWNoZVByb21pc2VdO1xuICBhc3NlcnRXb3JsZFN1cHBvcnRzUnVudGltZVByb3RvY29sKGdsb2JhbFN5bWJvbHNbV29ybGRDYWNoZV0pO1xuICByZXR1cm4gZ2xvYmFsU3ltYm9sc1tXb3JsZENhY2hlXTtcbn07XG5cbi8qKlxuICogUmVzZXQgdGhlIGNhY2hlZCB3b3JsZCBpbnN0YW5jZS4gVGhpcyBzaG91bGQgYmUgY2FsbGVkIHdoZW4gZW52aXJvbm1lbnRcbiAqIHZhcmlhYmxlcyBjaGFuZ2UgYW5kIHlvdSBuZWVkIHRvIHJlaW5pdGlhbGl6ZSB0aGUgd29ybGQgd2l0aCBuZXcgY29uZmlnLlxuICovXG5leHBvcnQgY29uc3Qgc2V0V29ybGQgPSAod29ybGQ6IFdvcmxkIHwgdW5kZWZpbmVkKTogdm9pZCA9PiB7XG4gIGdsb2JhbFN5bWJvbHNbV29ybGRDYWNoZV0gPSB3b3JsZDtcbiAgZ2xvYmFsU3ltYm9sc1tTdHViYmVkV29ybGRDYWNoZV0gPSB3b3JsZDtcbiAgZ2xvYmFsU3ltYm9sc1tXb3JsZENhY2hlUHJvbWlzZV0gPSB1bmRlZmluZWQ7XG4gIGdsb2JhbFN5bWJvbHNbU3R1YmJlZFdvcmxkQ2FjaGVQcm9taXNlXSA9IHVuZGVmaW5lZDtcbn07XG5cbi8vIFJlZ2lzdGVyIGdldFdvcmxkIG9uIGdsb2JhbFRoaXMgc28gZ2V0V29ybGRMYXp5IGNhbiBjYWxsIGl0IGRpcmVjdGx5IHdoZW5cbi8vIHdvcmxkLnRzIGlzIHN0YXRpY2FsbHkgcHJlc2VudCBpbiB0aGUgYnVuZGxlLiBUaGlzIGF2b2lkcyB0aGUgcmVsYXRpdmVcbi8vIGR5bmFtaWMgaW1wb3J0KCcuL3dvcmxkLmpzJykgZmFsbGJhY2sgaW4gZ2V0LXdvcmxkLWxhenkudHMsIHdoaWNoIGZhaWxzXG4vLyBhZnRlciBOZXh0LmpzIGlubGluZXMgZ2V0LXdvcmxkLWxhenkuanMgaW50byBhIHJvdXRlIGJ1bmRsZSAobm8gc2libGluZ1xuLy8gd29ybGQuanMgZXhpc3RzIGF0IHRoZSBidW5kbGVkIGxvY2F0aW9uKS5cbi8vXG4vLyBGb3Igc2VydmVyIHJvdXRlcyB0aGF0IG9ubHkgY29uc3VtZSBgc3RhcnRgIChvciBhbm90aGVyIGhlbHBlciB0aGF0IGdvZXNcbi8vIHRocm91Z2ggZ2V0V29ybGRMYXp5IHdpdGhvdXQgc3RhdGljYWxseSB1c2luZyBnZXRXb3JsZCksIHdlYnBhY2svdHVyYm9wYWNrXG4vLyB3b3VsZCBvdGhlcndpc2UgdHJlZS1zaGFrZSB3b3JsZC50cyBvdXQgb2YgdGhlIGJ1bmRsZSBlbnRpcmVseS4gVGhlXG4vLyBob3N0LW9ubHkgYC4vd29ybGQtaW5pdC50c2AgbW9kdWxlIGltcG9ydHMgd29ybGQudHMgZm9yIGl0cyBzaWRlIGVmZmVjdFxuLy8gYW5kIGlzIGl0c2VsZiBpbXBvcnRlZCBieSBgcGFja2FnZXMvd29ya2Zsb3cvc3JjL2FwaS50c2Agc28gdGhpc1xuLy8gcmVnaXN0cmF0aW9uIHJ1bnMgaW4gZXZlcnkgc2VydmVyIGJ1bmRsZSB0aGF0IHRvdWNoZXMgYHdvcmtmbG93L2FwaWAuXG4vL1xuLy8gU3RlcC9WTSBidW5kbGVzIG5ldmVyIHJlYWNoIHRoaXMgYnJhbmNoOiB0aGV5IGRvbid0IHN0YXRpY2FsbHkgaW1wb3J0XG4vLyB3b3JsZC50cywgYW5kIGB3b3JsZC1pbml0YCByZXNvbHZlcyB0byBhbiBlbXB0eSBzdHViIHZpYSB0aGUgYHdvcmtmbG93YFxuLy8gZXhwb3J0IGNvbmRpdGlvbi5cbmNvbnN0IEdldFdvcmxkRm5LZXkgPSBTeW1ib2wuZm9yKCdAd29ya2Zsb3cvd29ybGQvL2dldFdvcmxkRm4nKTtcbihnbG9iYWxUaGlzIGFzIHsgW0dldFdvcmxkRm5LZXldPzogKCkgPT4gUHJvbWlzZTxXb3JsZD4gfSlbR2V0V29ybGRGbktleV0gPz89XG4gIGdldFdvcmxkO1xuIl19
|
package/dist/runtime.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAqBA,OAAO,EAGL,KAAK,KAAK,
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAqBA,OAAO,EAGL,KAAK,KAAK,EAaV,KAAK,WAAW,EAEjB,MAAM,iBAAiB,CAAC;AAoGzB,YAAY,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;AACnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,WAAW,GACZ,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,cAAc,EACd,KAAK,WAAW,EAChB,UAAU,EACV,aAAa,GACd,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,MAAM,EACN,GAAG,EACH,KAAK,sBAAsB,EAC3B,KAAK,6BAA6B,GACnC,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,KAAK,gBAAgB,EACrB,SAAS,EACT,UAAU,EACV,WAAW,EACX,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,UAAU,EACV,uBAAuB,EACvB,YAAY,EACZ,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,SAAS,GACV,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,4BAA4B,EACjC,KAAK,+BAA+B,EACpC,KAAK,GACN,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,WAAW,EACX,qBAAqB,EACrB,QAAQ,EACR,gBAAgB,EAChB,QAAQ,EACR,KAAK,kBAAkB,GACxB,MAAM,oBAAoB,CAAC;AAgb5B;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAChC,YAAY,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE;IACR,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,GACA,CAAC,GAAG,EAAE,OAAO,KAAK,OAAO,CAAC,QAAQ,CAAC,CAigIrC"}
|