@workflow/core 5.0.0-beta.42 → 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.
Files changed (220) hide show
  1. package/dist/capabilities.d.ts +4 -4
  2. package/dist/capabilities.js +5 -5
  3. package/dist/capture-stack.d.ts +1 -1
  4. package/dist/capture-stack.js +2 -2
  5. package/dist/class-serialization.d.ts +8 -8
  6. package/dist/class-serialization.js +9 -9
  7. package/dist/classify-error.js +5 -5
  8. package/dist/context-violation-error.d.ts +5 -5
  9. package/dist/context-violation-error.d.ts.map +1 -1
  10. package/dist/context-violation-error.js +5 -5
  11. package/dist/create-hook.d.ts +10 -6
  12. package/dist/create-hook.d.ts.map +1 -1
  13. package/dist/create-hook.js +1 -1
  14. package/dist/define-hook.js +2 -2
  15. package/dist/describe-error.d.ts +7 -7
  16. package/dist/describe-error.js +8 -8
  17. package/dist/encryption.d.ts +5 -5
  18. package/dist/encryption.js +7 -7
  19. package/dist/events-consumer.d.ts +19 -7
  20. package/dist/events-consumer.d.ts.map +1 -1
  21. package/dist/events-consumer.js +33 -12
  22. package/dist/flushable-stream.d.ts +4 -4
  23. package/dist/flushable-stream.js +12 -12
  24. package/dist/global.d.ts +1 -1
  25. package/dist/global.js +1 -1
  26. package/dist/index.d.ts +1 -1
  27. package/dist/index.js +2 -2
  28. package/dist/log-format.d.ts +2 -2
  29. package/dist/log-format.js +5 -5
  30. package/dist/logger.js +4 -4
  31. package/dist/private.d.ts +39 -64
  32. package/dist/private.d.ts.map +1 -1
  33. package/dist/private.js +294 -48
  34. package/dist/replay-payload-cache.d.ts +1 -1
  35. package/dist/replay-payload-cache.js +4 -4
  36. package/dist/runtime/compute-instance.d.ts +4 -3
  37. package/dist/runtime/compute-instance.d.ts.map +1 -1
  38. package/dist/runtime/compute-instance.js +5 -4
  39. package/dist/runtime/constants.d.ts +46 -19
  40. package/dist/runtime/constants.d.ts.map +1 -1
  41. package/dist/runtime/constants.js +76 -38
  42. package/dist/runtime/count-step-started-events.d.ts +7 -7
  43. package/dist/runtime/count-step-started-events.js +4 -4
  44. package/dist/runtime/deployment-guard.d.ts +7 -7
  45. package/dist/runtime/deployment-guard.js +8 -8
  46. package/dist/runtime/get-port-lazy.d.ts +2 -2
  47. package/dist/runtime/get-port-lazy.d.ts.map +1 -1
  48. package/dist/runtime/get-port-lazy.js +37 -30
  49. package/dist/runtime/get-world-lazy.d.ts +2 -2
  50. package/dist/runtime/get-world-lazy.js +3 -3
  51. package/dist/runtime/helpers.d.ts +18 -18
  52. package/dist/runtime/helpers.js +27 -27
  53. package/dist/runtime/quickjs-entrypoint.d.ts +23 -10
  54. package/dist/runtime/quickjs-entrypoint.d.ts.map +1 -1
  55. package/dist/runtime/quickjs-entrypoint.js +200 -81
  56. package/dist/runtime/quickjs-runtime.d.ts +31 -15
  57. package/dist/runtime/quickjs-runtime.d.ts.map +1 -1
  58. package/dist/runtime/quickjs-runtime.js +126 -77
  59. package/dist/runtime/quickjs-serde.d.ts +10 -10
  60. package/dist/runtime/quickjs-serde.js +20 -20
  61. package/dist/runtime/replay-budget.d.ts +4 -4
  62. package/dist/runtime/replay-budget.js +5 -5
  63. package/dist/runtime/replay-recovery-reporter.d.ts +1 -1
  64. package/dist/runtime/replay-recovery-reporter.js +2 -2
  65. package/dist/runtime/resume-hook.d.ts +2 -2
  66. package/dist/runtime/resume-hook.js +27 -27
  67. package/dist/runtime/resume-latency.d.ts +25 -25
  68. package/dist/runtime/resume-latency.d.ts.map +1 -1
  69. package/dist/runtime/resume-latency.js +4 -4
  70. package/dist/runtime/run-id-time.d.ts +2 -2
  71. package/dist/runtime/run-id-time.js +5 -5
  72. package/dist/runtime/run.d.ts +21 -4
  73. package/dist/runtime/run.d.ts.map +1 -1
  74. package/dist/runtime/run.js +154 -35
  75. package/dist/runtime/runs.d.ts +4 -4
  76. package/dist/runtime/runs.js +2 -2
  77. package/dist/runtime/start.d.ts +3 -3
  78. package/dist/runtime/start.d.ts.map +1 -1
  79. package/dist/runtime/start.js +27 -23
  80. package/dist/runtime/step-executor.d.ts +59 -11
  81. package/dist/runtime/step-executor.d.ts.map +1 -1
  82. package/dist/runtime/step-executor.js +116 -42
  83. package/dist/runtime/step-latency.d.ts +20 -14
  84. package/dist/runtime/step-latency.d.ts.map +1 -1
  85. package/dist/runtime/step-latency.js +13 -11
  86. package/dist/runtime/step-ownership.d.ts +6 -6
  87. package/dist/runtime/step-ownership.js +8 -8
  88. package/dist/runtime/step-single-flight.d.ts +1 -1
  89. package/dist/runtime/step-single-flight.d.ts.map +1 -1
  90. package/dist/runtime/step-single-flight.js +17 -11
  91. package/dist/runtime/suspension-handler.d.ts +99 -7
  92. package/dist/runtime/suspension-handler.d.ts.map +1 -1
  93. package/dist/runtime/suspension-handler.js +678 -57
  94. package/dist/runtime/unserializable-step.d.ts +34 -0
  95. package/dist/runtime/unserializable-step.d.ts.map +1 -0
  96. package/dist/runtime/unserializable-step.js +52 -0
  97. package/dist/runtime/vm-mode.d.ts +1 -1
  98. package/dist/runtime/vm-mode.js +2 -2
  99. package/dist/runtime/wait-continuation.d.ts +31 -9
  100. package/dist/runtime/wait-continuation.d.ts.map +1 -1
  101. package/dist/runtime/wait-continuation.js +44 -13
  102. package/dist/runtime/wait-until.d.ts +1 -1
  103. package/dist/runtime/wait-until.js +2 -2
  104. package/dist/runtime/world-compatibility.d.ts +20 -9
  105. package/dist/runtime/world-compatibility.d.ts.map +1 -1
  106. package/dist/runtime/world-compatibility.js +24 -13
  107. package/dist/runtime/world-init.d.ts +5 -5
  108. package/dist/runtime/world-init.js +6 -6
  109. package/dist/runtime/world.d.ts.map +1 -1
  110. package/dist/runtime/world.js +13 -3
  111. package/dist/runtime.d.ts.map +1 -1
  112. package/dist/runtime.js +417 -213
  113. package/dist/sealed-box.d.ts +7 -7
  114. package/dist/sealed-box.js +15 -15
  115. package/dist/serialization/client.js +2 -2
  116. package/dist/serialization/codec-devalue-vm.d.ts +1 -1
  117. package/dist/serialization/codec-devalue-vm.js +4 -4
  118. package/dist/serialization/codec-devalue.d.ts +1 -1
  119. package/dist/serialization/codec-devalue.js +2 -2
  120. package/dist/serialization/codec.d.ts +4 -4
  121. package/dist/serialization/codec.js +2 -2
  122. package/dist/serialization/compression.d.ts +12 -11
  123. package/dist/serialization/compression.d.ts.map +1 -1
  124. package/dist/serialization/compression.js +16 -15
  125. package/dist/serialization/encryption.d.ts +7 -7
  126. package/dist/serialization/encryption.d.ts.map +1 -1
  127. package/dist/serialization/encryption.js +8 -8
  128. package/dist/serialization/errors.js +2 -2
  129. package/dist/serialization/format.d.ts +6 -6
  130. package/dist/serialization/format.js +7 -7
  131. package/dist/serialization/hardened.d.ts +18 -18
  132. package/dist/serialization/hardened.d.ts.map +1 -1
  133. package/dist/serialization/hardened.js +41 -32
  134. package/dist/serialization/index.d.ts +1 -1
  135. package/dist/serialization/index.js +2 -2
  136. package/dist/serialization/reducers/class-vm.d.ts +1 -1
  137. package/dist/serialization/reducers/class-vm.js +2 -2
  138. package/dist/serialization/reducers/class.js +2 -2
  139. package/dist/serialization/reducers/common-vm.js +12 -12
  140. package/dist/serialization/reducers/common.js +12 -12
  141. package/dist/serialization/reducers/step-function-vm.d.ts +1 -1
  142. package/dist/serialization/reducers/step-function-vm.js +2 -2
  143. package/dist/serialization/reducers/step-function.js +2 -2
  144. package/dist/serialization/step.js +2 -2
  145. package/dist/serialization/types.d.ts +5 -5
  146. package/dist/serialization/types.js +2 -2
  147. package/dist/serialization/workflow-vm.d.ts +1 -1
  148. package/dist/serialization/workflow-vm.d.ts.map +1 -1
  149. package/dist/serialization/workflow-vm.js +13 -10
  150. package/dist/serialization-format.d.ts +11 -11
  151. package/dist/serialization-format.d.ts.map +1 -1
  152. package/dist/serialization-format.js +29 -23
  153. package/dist/serialization.d.ts +20 -12
  154. package/dist/serialization.d.ts.map +1 -1
  155. package/dist/serialization.js +141 -99
  156. package/dist/set-attributes.js +2 -2
  157. package/dist/source-map.d.ts +1 -1
  158. package/dist/source-map.d.ts.map +1 -1
  159. package/dist/source-map.js +18 -12
  160. package/dist/step/context-storage.d.ts +5 -5
  161. package/dist/step/context-storage.js +1 -1
  162. package/dist/step/writable-stream.d.ts +3 -3
  163. package/dist/step/writable-stream.js +7 -7
  164. package/dist/step.js +12 -12
  165. package/dist/symbols.d.ts +2 -2
  166. package/dist/symbols.js +3 -3
  167. package/dist/telemetry/semantic-conventions.d.ts +21 -13
  168. package/dist/telemetry/semantic-conventions.d.ts.map +1 -1
  169. package/dist/telemetry/semantic-conventions.js +21 -15
  170. package/dist/telemetry.d.ts +9 -3
  171. package/dist/telemetry.d.ts.map +1 -1
  172. package/dist/telemetry.js +40 -10
  173. package/dist/test-support/orchestrator-context.d.ts.map +1 -1
  174. package/dist/test-support/orchestrator-context.js +12 -2
  175. package/dist/version.d.ts +1 -1
  176. package/dist/version.js +2 -2
  177. package/dist/vm/index.js +4 -4
  178. package/dist/vm/script-cache.d.ts.map +1 -1
  179. package/dist/vm/script-cache.js +23 -17
  180. package/dist/vm/uint8array-base64.js +1 -1
  181. package/dist/workflow/abort-controller.d.ts +1 -1
  182. package/dist/workflow/abort-controller.js +12 -12
  183. package/dist/workflow/create-hook.js +3 -3
  184. package/dist/workflow/get-workflow-metadata.js +2 -2
  185. package/dist/workflow/hook.js +18 -18
  186. package/dist/workflow/set-attributes.d.ts +1 -1
  187. package/dist/workflow/set-attributes.js +2 -2
  188. package/dist/workflow/sleep.js +2 -2
  189. package/dist/workflow/world-init-stub.d.ts +1 -1
  190. package/dist/workflow/world-init-stub.js +2 -2
  191. package/dist/workflow.d.ts +2 -2
  192. package/dist/workflow.js +36 -14
  193. package/docs/api-reference/create-hook.mdx +15 -15
  194. package/docs/api-reference/create-webhook.mdx +15 -15
  195. package/docs/api-reference/define-hook.mdx +10 -10
  196. package/docs/api-reference/fatal-error.mdx +2 -2
  197. package/docs/api-reference/fetch.mdx +7 -7
  198. package/docs/api-reference/get-step-metadata.mdx +2 -2
  199. package/docs/api-reference/get-workflow-metadata.mdx +3 -3
  200. package/docs/api-reference/get-writable.mdx +7 -7
  201. package/docs/api-reference/index.mdx +1 -1
  202. package/docs/api-reference/retryable-error.mdx +1 -1
  203. package/docs/api-reference/set-attributes.mdx +2 -2
  204. package/docs/api-reference/sleep.mdx +3 -3
  205. package/docs/foundations/cancellation.mdx +31 -31
  206. package/docs/foundations/errors-and-retries.mdx +42 -11
  207. package/docs/foundations/hooks.mdx +37 -37
  208. package/docs/foundations/idempotency.mdx +9 -9
  209. package/docs/foundations/serialization.mdx +21 -22
  210. package/docs/foundations/starting-workflows.mdx +36 -37
  211. package/docs/foundations/streaming.mdx +68 -39
  212. package/docs/foundations/versioning.mdx +3 -3
  213. package/docs/foundations/workflows-and-steps.mdx +9 -9
  214. package/docs/how-it-works/cancellation.mdx +62 -62
  215. package/docs/how-it-works/code-transform.mdx +66 -54
  216. package/docs/how-it-works/encryption.mdx +25 -21
  217. package/docs/how-it-works/event-sourcing.mdx +84 -28
  218. package/docs/how-it-works/framework-integrations.mdx +12 -12
  219. package/docs/how-it-works/understanding-directives.mdx +21 -21
  220. package/package.json +7 -7
@@ -18,7 +18,7 @@ export const SerializationFormat = {
18
18
  /** Encrypted payload (inner payload has its own format prefix) */
19
19
  ENCRYPTED: 'encr',
20
20
  /**
21
- * Sealed payload asymmetrically encrypted to a run's X25519 public key
21
+ * Sealed payload: asymmetrically encrypted to a run's X25519 public key
22
22
  * (inner payload has its own format prefix).
23
23
  *
24
24
  * Used for *cross-run* writes (hook payloads, forwarded stream frames),
@@ -32,4 +32,4 @@ export const SerializationFormat = {
32
32
  /** Zstandard-compressed payload (inner payload has its own format prefix) */
33
33
  ZSTD: 'zstd',
34
34
  };
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2VyaWFsaXphdGlvbi90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQWVIOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsY0FBYyxDQUFDLEtBQWE7SUFDMUMsT0FBTyxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsSUFBSSxlQUFlLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQzNELENBQUM7QUFFRDs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHO0lBQ2pDLDJEQUEyRDtJQUMzRCxVQUFVLEVBQUUsTUFBc0I7SUFDbEMsa0VBQWtFO0lBQ2xFLFNBQVMsRUFBRSxNQUFzQjtJQUNqQzs7Ozs7Ozs7T0FRRztJQUNILE1BQU0sRUFBRSxNQUFzQjtJQUM5Qix3RUFBd0U7SUFDeEUsSUFBSSxFQUFFLE1BQXNCO0lBQzVCLDZFQUE2RTtJQUM3RSxJQUFJLEVBQUUsTUFBc0I7Q0FDcEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogU2hhcmVkIHR5cGVzIGZvciB0aGUgc2VyaWFsaXphdGlvbiBzeXN0ZW0uXG4gKi9cblxuaW1wb3J0IHR5cGUgeyBSdW50aW1lRGVjcnlwdGlvbkVycm9yQ29udGV4dCB9IGZyb20gJ0B3b3JrZmxvdy9lcnJvcnMnO1xuXG4vLyAtLS0tIEZvcm1hdCBQcmVmaXggLS0tLVxuXG4vKipcbiAqIEEgZm9ybWF0IHByZWZpeCBpcyBleGFjdGx5IDQgbG93ZXJjYXNlIGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzIFthLXowLTldLlxuICpcbiAqIFRoaXMgaXMgYSBicmFuZGVkIHN0cmluZyB0eXBlIOKAlCB1c2UgYGlzRm9ybWF0UHJlZml4KClgIHRvIHZhbGlkYXRlXG4gKiBhdCBydW50aW1lLiBUaGUgYFNlcmlhbGl6YXRpb25Gb3JtYXRgIG9iamVjdCBwcm92aWRlcyB3ZWxsLWtub3duXG4gKiBjb25zdGFudHMsIGJ1dCBjb2RlY3MgbWF5IGRlZmluZSBhZGRpdGlvbmFsIHByZWZpeGVzLlxuICovXG5leHBvcnQgdHlwZSBGb3JtYXRQcmVmaXggPSBzdHJpbmcgJiB7IHJlYWRvbmx5IF9fYnJhbmQ6ICdGb3JtYXRQcmVmaXgnIH07XG5cbi8qKlxuICogUnVudGltZSB0eXBlIGd1YXJkIGZvciBmb3JtYXQgcHJlZml4IHN0cmluZ3MuXG4gKlxuICogVmFsaWRhdGVzIHRoYXQgYSBzdHJpbmcgaXMgZXhhY3RseSA0IGNoYXJhY3RlcnMgb2YgW2EtejAtOV0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0Zvcm1hdFByZWZpeCh2YWx1ZTogc3RyaW5nKTogdmFsdWUgaXMgRm9ybWF0UHJlZml4IHtcbiAgcmV0dXJuIHZhbHVlLmxlbmd0aCA9PT0gNCAmJiAvXlthLXowLTldezR9JC8udGVzdCh2YWx1ZSk7XG59XG5cbi8qKlxuICogV2VsbC1rbm93biBmb3JtYXQgcHJlZml4IGNvbnN0YW50cy4gQ29kZWNzIG1heSBkZWZpbmUgYWRkaXRpb25hbCBvbmVzLlxuICovXG5leHBvcnQgY29uc3QgU2VyaWFsaXphdGlvbkZvcm1hdCA9IHtcbiAgLyoqIGRldmFsdWUgc3RyaW5naWZ5L3BhcnNlIHdpdGggVGV4dEVuY29kZXIvVGV4dERlY29kZXIgKi9cbiAgREVWQUxVRV9WMTogJ2RldmwnIGFzIEZvcm1hdFByZWZpeCxcbiAgLyoqIEVuY3J5cHRlZCBwYXlsb2FkIChpbm5lciBwYXlsb2FkIGhhcyBpdHMgb3duIGZvcm1hdCBwcmVmaXgpICovXG4gIEVOQ1JZUFRFRDogJ2VuY3InIGFzIEZvcm1hdFByZWZpeCxcbiAgLyoqXG4gICAqIFNlYWxlZCBwYXlsb2FkIOKAlCBhc3ltbWV0cmljYWxseSBlbmNyeXB0ZWQgdG8gYSBydW4ncyBYMjU1MTkgcHVibGljIGtleVxuICAgKiAoaW5uZXIgcGF5bG9hZCBoYXMgaXRzIG93biBmb3JtYXQgcHJlZml4KS5cbiAgICpcbiAgICogVXNlZCBmb3IgKmNyb3NzLXJ1biogd3JpdGVzIChob29rIHBheWxvYWRzLCBmb3J3YXJkZWQgc3RyZWFtIGZyYW1lcyksXG4gICAqIHdoZXJlIHRoZSB3cml0ZXIgaG9sZHMgb25seSB0aGUgcmVjaXBpZW50IHJ1bidzIHB1YmxpYyBrZXkgYW5kIHRoZXJlZm9yZVxuICAgKiBjYW5ub3QgZGVjcnlwdC4gQSBydW4ncyBvd24gcGF5bG9hZHMgY29udGludWUgdG8gdXNlIHtAbGluayBFTkNSWVBURUR9LlxuICAgKiBTZWUgYHNlYWxlZC1ib3gudHNgIGZvciB0aGUgY29uc3RydWN0aW9uLlxuICAgKi9cbiAgU0VBTEVEOiAnZW5jcCcgYXMgRm9ybWF0UHJlZml4LFxuICAvKiogR3ppcC1jb21wcmVzc2VkIHBheWxvYWQgKGlubmVyIHBheWxvYWQgaGFzIGl0cyBvd24gZm9ybWF0IHByZWZpeCkgKi9cbiAgR1pJUDogJ2d6aXAnIGFzIEZvcm1hdFByZWZpeCxcbiAgLyoqIFpzdGFuZGFyZC1jb21wcmVzc2VkIHBheWxvYWQgKGlubmVyIHBheWxvYWQgaGFzIGl0cyBvd24gZm9ybWF0IHByZWZpeCkgKi9cbiAgWlNURDogJ3pzdGQnIGFzIEZvcm1hdFByZWZpeCxcbn0gYXMgY29uc3Q7XG5cbi8vIC0tLS0gU2VyaWFsaXphYmxlIFR5cGVzIC0tLS1cblxuLyoqXG4gKiBXaXJlLWZyYW1pbmcgZm9ybWF0IGlkZW50aWZpZXIgY2FycmllZCBpbiB0aGUgc2VyaWFsaXplZFxuICogYFJlYWRhYmxlU3RyZWFtYCByZWYncyBgZnJhbWluZ2AgZmllbGQuXG4gKlxuICogLSBhYnNlbnQgLyBgJ3JhdydgOiBjaHVua3MgYXJlIHdyaXR0ZW4gdG8gdGhlIHRyYW5zcG9ydCB2ZXJiYXRpbVxuICogICAobGVnYWN5IGZvcm1hdCDigJQgbm8gYXV0by1yZWNvbm5lY3Qgc3VwcG9ydCkuXG4gKiAtIGAnZnJhbWVkLXYxJ2A6IGVhY2ggY2h1bmsgaXMgd3JhcHBlZCBpbiBhIDQtYnl0ZSBiaWctZW5kaWFuIGxlbmd0aFxuICogICBwcmVmaXgsIGFsbG93aW5nIHRoZSByZWFkZXIgdG8gaWRlbnRpZnkgY2h1bmsgYm91bmRhcmllcyBhbmRcbiAqICAgdHJhbnNwYXJlbnRseSByZWNvbm5lY3Qgb24gdHJhbnNpZW50IHN0cmVhbSBlcnJvcnMuXG4gKi9cbmV4cG9ydCB0eXBlIEJ5dGVTdHJlYW1GcmFtaW5nID0gJ3JhdycgfCAnZnJhbWVkLXYxJztcblxuLyoqXG4gKiBUeXBlcyB0aGF0IG5lZWQgc3BlY2lhbGl6ZWQgaGFuZGxpbmcgd2hlbiBzZXJpYWxpemVkL2Rlc2VyaWFsaXplZC5cbiAqIElmIGEgdHlwZSBpcyBhZGRlZCBoZXJlLCBpdCBNVVNUIGFsc28gYmUgYWRkZWQgdG8gdGhlIGBTZXJpYWxpemFibGVgXG4gKiB0eXBlIGluIGBzY2hlbWFzLnRzYC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXJpYWxpemFibGVTcGVjaWFsIHtcbiAgQXJyYXlCdWZmZXI6IHN0cmluZzsgLy8gYmFzZTY0IHN0cmluZ1xuICBCaWdJbnQ6IHN0cmluZzsgLy8gc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIGJpZ2ludFxuICBCaWdJbnQ2NEFycmF5OiBzdHJpbmc7IC8vIGJhc2U2NCBzdHJpbmdcbiAgQmlnVWludDY0QXJyYXk6IHN0cmluZzsgLy8gYmFzZTY0IHN0cmluZ1xuICBEYXRlOiBzdHJpbmc7IC8vIElTTyBzdHJpbmdcbiAgRE9NRXhjZXB0aW9uOiB7XG4gICAgbWVzc2FnZTogc3RyaW5nO1xuICAgIG5hbWU6IHN0cmluZztcbiAgICBzdGFjaz86IHN0cmluZztcbiAgICBjYXVzZT86IHVua25vd247XG4gIH07XG4gIEZhdGFsRXJyb3I6IHsgbWVzc2FnZTogc3RyaW5nOyBzdGFjaz86IHN0cmluZzsgY2F1c2U/OiB1bmtub3duIH07XG4gIEZsb2F0MzJBcnJheTogc3RyaW5nOyAvLyBiYXNlNjQgc3RyaW5nXG4gIEZsb2F0NjRBcnJheTogc3RyaW5nOyAvLyBiYXNlNjQgc3RyaW5nXG4gIEVycm9yOiB7IG5hbWU6IHN0cmluZzsgbWVzc2FnZTogc3RyaW5nOyBzdGFjaz86IHN0cmluZzsgY2F1c2U/OiB1bmtub3duIH07XG4gIEV2YWxFcnJvcjogeyBtZXNzYWdlOiBzdHJpbmc7IHN0YWNrPzogc3RyaW5nOyBjYXVzZT86IHVua25vd24gfTtcbiAgSGVhZGVyczogW3N0cmluZywgc3RyaW5nXVtdO1xuICBIb29rQ29uZmxpY3RFcnJvcjoge1xuICAgIG1lc3NhZ2U6IHN0cmluZztcbiAgICBzdGFjaz86IHN0cmluZztcbiAgICBjYXVzZT86IHVua25vd247XG4gICAgdG9rZW46IHN0cmluZztcbiAgICAvLyBUT0RPOiBNYWtlIHRoaXMgcmVxdWlyZWQgd2hlbiBIb29rQ29uZmxpY3RFcnJvci5jb25mbGljdGluZ1J1bklkIGlzIHJlcXVpcmVkLlxuICAgIGNvbmZsaWN0aW5nUnVuSWQ/OiBzdHJpbmc7XG4gIH07XG4gIEludDhBcnJheTogc3RyaW5nOyAvLyBiYXNlNjQgc3RyaW5nXG4gIEludDE2QXJyYXk6IHN0cmluZzsgLy8gYmFzZTY0IHN0cmluZ1xuICBJbnQzMkFycmF5OiBzdHJpbmc7IC8vIGJhc2U2NCBzdHJpbmdcbiAgTWFwOiBbYW55LCBhbnldW107XG4gIFJhbmdlRXJyb3I6IHsgbWVzc2FnZTogc3RyaW5nOyBzdGFjaz86IHN0cmluZzsgY2F1c2U/OiB1bmtub3duIH07XG4gIFJlYWRhYmxlU3RyZWFtOlxuICAgIHwge1xuICAgICAgICBuYW1lOiBzdHJpbmc7XG4gICAgICAgIHR5cGU/OiAnYnl0ZXMnO1xuICAgICAgICBzdGFydEluZGV4PzogbnVtYmVyO1xuICAgICAgICAvKipcbiAgICAgICAgICogV2lyZS1mcmFtaW5nIGZvcm1hdCBmb3IgYnl0ZSBzdHJlYW1zLiBTZWUge0BsaW5rIEJ5dGVTdHJlYW1GcmFtaW5nfVxuICAgICAgICAgKiBhbmQgYGdldEJ5dGVGcmFtaW5nU3RyZWFtYCAvIGBnZXRCeXRlVW5mcmFtaW5nU3RyZWFtYC5cbiAgICAgICAgICpcbiAgICAgICAgICogT25seSBtZWFuaW5nZnVsIHdoZW4gYHR5cGUgPT09ICdieXRlcydgLiBBYnNlbnQgb24gb2JqZWN0IHN0cmVhbXNcbiAgICAgICAgICogKHdoaWNoIGFsd2F5cyB1c2UgbGVuZ3RoLXByZWZpeGVkIGRldmFsdWUgZnJhbWluZykgYW5kIG9uIGxlZ2FjeVxuICAgICAgICAgKiBieXRlIHN0cmVhbXMgd3JpdHRlbiBieSBTREtzIHRoYXQgcHJlZGF0ZSBmcmFtaW5nIHN1cHBvcnQg4oCUIHRob3NlXG4gICAgICAgICAqIGFyZSBpbnRlcnByZXRlZCBhcyBgJ3JhdydgIGJ5IHRoZSBjb25zdW1lci5cbiAgICAgICAgICovXG4gICAgICAgIGZyYW1pbmc/OiBCeXRlU3RyZWFtRnJhbWluZztcbiAgICAgIH1cbiAgICB8IHsgYm9keUluaXQ6IGFueSB9O1xuICBSZWZlcmVuY2VFcnJvcjogeyBtZXNzYWdlOiBzdHJpbmc7IHN0YWNrPzogc3RyaW5nOyBjYXVzZT86IHVua25vd24gfTtcbiAgUmVnRXhwOiB7IHNvdXJjZTogc3RyaW5nOyBmbGFnczogc3RyaW5nIH07XG4gIC8qKlxuICAgKiBgcmV0cnlBZnRlcmAgaXMgc2VyaWFsaXplZCBhcyBhIG51bWVyaWMgZXBvY2ggdGltZXN0YW1wIHJhdGhlciB0aGFuIGFcbiAgICogYERhdGVgIHRvIGJlIHJlYWxtLXNhZmUuIFRoZSBEYXRlIHJlZHVjZXIgdXNlcyBgaW5zdGFuY2VvZiBnbG9iYWwuRGF0ZWAsXG4gICAqIHdoaWNoIGZhaWxzIGZvciBEYXRlcyBmcm9tIGEgZGlmZmVyZW50IFZNIHJlYWxtLlxuICAgKi9cbiAgUmV0cnlhYmxlRXJyb3I6IHtcbiAgICBtZXNzYWdlOiBzdHJpbmc7XG4gICAgc3RhY2s/OiBzdHJpbmc7XG4gICAgY2F1c2U/OiB1bmtub3duO1xuICAgIHJldHJ5QWZ0ZXI6IG51bWJlcjtcbiAgfTtcbiAgUnVudGltZURlY3J5cHRpb25FcnJvcjoge1xuICAgIG1lc3NhZ2U6IHN0cmluZztcbiAgICBzdGFjaz86IHN0cmluZztcbiAgICBjYXVzZT86IHVua25vd247XG4gICAgY29udGV4dD86IFJ1bnRpbWVEZWNyeXB0aW9uRXJyb3JDb250ZXh0O1xuICB9O1xuICBSZXF1ZXN0OiB7XG4gICAgbWV0aG9kOiBzdHJpbmc7XG4gICAgdXJsOiBzdHJpbmc7XG4gICAgaGVhZGVyczogSGVhZGVycztcbiAgICBib2R5OiBSZXF1ZXN0Wydib2R5J107XG4gICAgZHVwbGV4OiBSZXF1ZXN0WydkdXBsZXgnXTtcbiAgICByZXNwb25zZVdyaXRhYmxlPzogV3JpdGFibGVTdHJlYW08UmVzcG9uc2U+O1xuICAgIHNpZ25hbD86IEFib3J0U2lnbmFsO1xuICB9O1xuICBSZXNwb25zZToge1xuICAgIHR5cGU6IFJlc3BvbnNlWyd0eXBlJ107XG4gICAgdXJsOiBzdHJpbmc7XG4gICAgc3RhdHVzOiBudW1iZXI7XG4gICAgc3RhdHVzVGV4dDogc3RyaW5nO1xuICAgIGhlYWRlcnM6IEhlYWRlcnM7XG4gICAgYm9keTogUmVzcG9uc2VbJ2JvZHknXTtcbiAgICByZWRpcmVjdGVkOiBib29sZWFuO1xuICB9O1xuICBDbGFzczoge1xuICAgIGNsYXNzSWQ6IHN0cmluZztcbiAgfTtcbiAgSW5zdGFuY2U6IHtcbiAgICBjbGFzc0lkOiBzdHJpbmc7XG4gICAgZGF0YTogdW5rbm93bjtcbiAgfTtcbiAgU2V0OiBhbnlbXTtcbiAgU3ludGF4RXJyb3I6IHsgbWVzc2FnZTogc3RyaW5nOyBzdGFjaz86IHN0cmluZzsgY2F1c2U/OiB1bmtub3duIH07XG4gIFN0ZXBGdW5jdGlvbjoge1xuICAgIHN0ZXBJZDogc3RyaW5nO1xuICAgIGNsb3N1cmVWYXJzPzogUmVjb3JkPHN0cmluZywgYW55PjtcbiAgICAvKipcbiAgICAgKiBDYXB0dXJlZCBsZXhpY2FsIGB0aGlzYCBmb3Igc3RlcCBwcm94aWVzIHRoYXQgd2VyZSBjcmVhdGVkIHZpYVxuICAgICAqIGB1c2VTdGVwKC4uLikuYmluZCh0aGlzQXJnKWAgKHRoZSBTV0MgcGx1Z2luIGVtaXRzIHRoaXMgZm9yIG5lc3RlZFxuICAgICAqIGFycm93IHN0ZXBzIHRoYXQgY2xvc2Ugb3ZlciB0aGVpciBlbmNsb3NpbmcgZnVuY3Rpb24ncyBgdGhpc2ApLlxuICAgICAqIFRoZSByZXZpdmVyIHJlLWJpbmRzIHRoZSBmcmVzaGx5LWNyZWF0ZWQgcHJveHkgdG8gdGhpcyB2YWx1ZSBzbyB0aGVcbiAgICAgKiBiaW5kaW5nIHN1cnZpdmVzIHNlcmlhbGl6YXRpb24gcm91bmQtdHJpcHMuXG4gICAgICovXG4gICAgYm91bmRUaGlzPzogdW5rbm93bjtcbiAgICAvKipcbiAgICAgKiBQcmVmaWxsZWQgYXJndW1lbnRzIGNhcHR1cmVkIHdoZW4gdGhlIHVzZXIgKHJhdGhlciB0aGFuIHRoZSBTV0NcbiAgICAgKiBwbHVnaW4pIGNhbGxlZCBgdXNlU3RlcCguLi4pLmJpbmQodGhpc0FyZywgeCwgeSlgLiBUaGUgcmV2aXZlclxuICAgICAqIHJlLWFwcGxpZXMgdGhlc2UgYWxvbmdzaWRlIGBib3VuZFRoaXNgIHNvIHBhcnRpYWwgYXBwbGljYXRpb25cbiAgICAgKiBzdXJ2aXZlcyBzZXJpYWxpemF0aW9uLiBUaGUgU1dDIHBsdWdpbiBvbmx5IGV2ZXIgZW1pdHNcbiAgICAgKiBgLmJpbmQodGhpcylgIHdpdGggbm8gZXh0cmEgYXJncyB0b2RheTsgdGhpcyBzbG90IGV4aXN0cyBzbyBhXG4gICAgICogaGFuZC13cml0dGVuIGAuYmluZCh0aGlzQXJnLCB4KWAgZG9lc24ndCBzaWxlbnRseSBsb3NlIGB4YCBhZnRlclxuICAgICAqIHJvdW5kLXRyaXBwaW5nIHRocm91Z2ggdGhlIHJlZHVjZXIvcmV2aXZlci5cbiAgICAgKi9cbiAgICBib3VuZEFyZ3M/OiB1bmtub3duW107XG4gIH07XG4gIFR5cGVFcnJvcjogeyBtZXNzYWdlOiBzdHJpbmc7IHN0YWNrPzogc3RyaW5nOyBjYXVzZT86IHVua25vd24gfTtcbiAgVVJJRXJyb3I6IHsgbWVzc2FnZTogc3RyaW5nOyBzdGFjaz86IHN0cmluZzsgY2F1c2U/OiB1bmtub3duIH07XG4gIFVSTDogc3RyaW5nO1xuICBXb3JrZmxvd0Z1bmN0aW9uOiB7XG4gICAgd29ya2Zsb3dJZDogc3RyaW5nO1xuICB9O1xuICBVUkxTZWFyY2hQYXJhbXM6IHN0cmluZztcbiAgVWludDhBcnJheTogc3RyaW5nOyAvLyBiYXNlNjQgc3RyaW5nXG4gIFVpbnQ4Q2xhbXBlZEFycmF5OiBzdHJpbmc7IC8vIGJhc2U2NCBzdHJpbmdcbiAgVWludDE2QXJyYXk6IHN0cmluZzsgLy8gYmFzZTY0IHN0cmluZ1xuICBVaW50MzJBcnJheTogc3RyaW5nOyAvLyBiYXNlNjQgc3RyaW5nXG4gIEFnZ3JlZ2F0ZUVycm9yOiB7XG4gICAgbWVzc2FnZTogc3RyaW5nO1xuICAgIHN0YWNrPzogc3RyaW5nO1xuICAgIGNhdXNlPzogdW5rbm93bjtcbiAgICBlcnJvcnM6IHVua25vd25bXTtcbiAgfTtcbiAgV3JpdGFibGVTdHJlYW06IHtcbiAgICBuYW1lOiBzdHJpbmc7XG4gICAgLyoqXG4gICAgICogVGhlIHJ1bklkIG9mIHRoZSB3b3JrZmxvdyBydW4gdGhhdCBvd25zIHRoZSB1bmRlcmx5aW5nIHNlcnZlclxuICAgICAqIHN0cmVhbS4gUHJlc2VudCBvbmx5IHdoZW4gdGhlIHdyaXRhYmxlIHdhcyBmb3J3YXJkZWQgYWNyb3NzIGFcbiAgICAgKiBgc3RhcnQoKWAgYm91bmRhcnkgKHBhcmVudCDihpIgY2hpbGQpLiBXaGVuIG9taXR0ZWQsIHRoZSB3cml0YWJsZVxuICAgICAqIGJlbG9uZ3MgdG8gdGhlIHJlY2VpdmluZyBydW4gKHRoZSBub3JtYWwgaW4tcnVuIGNhc2UpLlxuICAgICAqL1xuICAgIHJ1bklkPzogc3RyaW5nO1xuICAgIC8qKlxuICAgICAqIFRoZSBkZXBsb3ltZW50IHRoYXQgb3ducyB0aGUgc2VydmVyIHN0cmVhbS4gQ2FycmllZCB3aXRoIGBydW5JZGBcbiAgICAgKiBzbyBhIGNoaWxkIHJ1bm5pbmcgb24gYSBuZXdlciBkZXBsb3ltZW50IGNhbiBlbmNyeXB0IGNodW5rcyB3aXRoXG4gICAgICogdGhlIHBhcmVudCdzIGtleSB3aXRob3V0IGZldGNoaW5nIHRoZSBwYXJlbnQgcnVuIGZpcnN0LlxuICAgICAqL1xuICAgIGRlcGxveW1lbnRJZD86IHN0cmluZztcbiAgICAvKipcbiAgICAgKiBUaGUgb3duaW5nIHJ1bidzIFgyNTUxOSBwdWJsaWMga2V5IChiYXNlNjQpLCB3aGVuIGl0IGhhcyBvbmUuXG4gICAgICpcbiAgICAgKiBMZXRzIHRoZSByZWNlaXZpbmcgcnVuIHNlYWwgZnJhbWVzIHRvIHRoZSBzdHJlYW0ncyBvd25lciB3aXRoIG5vXG4gICAgICogbG9va3VwIGF0IGFsbCDigJQgbmVpdGhlciBhIHJ1biBmZXRjaCBub3IgYSBrZXktQVBJIHJvdW5kIHRyaXAuIFRoZVxuICAgICAqIG93bmVyIGRlcml2ZXMgdGhpcyBsb2NhbGx5IHdoZW4gaXQgY3JlYXRlcyB0aGUgc3RyZWFtLCBzbyBpbmNsdWRpbmdcbiAgICAgKiBpdCBoZXJlIGlzIGZyZWUuIEFic2VudCBmb3IgcnVucyBjcmVhdGVkIGJ5IG9sZGVyIFNES3MsIGluIHdoaWNoXG4gICAgICogY2FzZSB0aGUgcmVjZWl2ZXIgZmFsbHMgYmFjayB0byByZXNvbHZpbmcgdGhlIG93bmVyJ3Mgc3ltbWV0cmljIGtleS5cbiAgICAgKi9cbiAgICBlbmNyeXB0aW9uUHVibGljS2V5Pzogc3RyaW5nO1xuICB9O1xuICBBYm9ydENvbnRyb2xsZXI6IHtcbiAgICBzdHJlYW1OYW1lOiBzdHJpbmc7XG4gICAgaG9va1Rva2VuOiBzdHJpbmc7XG4gICAgYWJvcnRlZDogYm9vbGVhbjtcbiAgICByZWFzb24/OiB1bmtub3duO1xuICB9O1xuICBBYm9ydFNpZ25hbDoge1xuICAgIHN0cmVhbU5hbWU6IHN0cmluZztcbiAgICBob29rVG9rZW46IHN0cmluZztcbiAgICBhYm9ydGVkOiBib29sZWFuO1xuICAgIHJlYXNvbj86IHVua25vd247XG4gIH07XG59XG5cbmV4cG9ydCB0eXBlIFJlZHVjZXJzID0ge1xuICBbSyBpbiBrZXlvZiBTZXJpYWxpemFibGVTcGVjaWFsXTogKFxuICAgIHZhbHVlOiBhbnlcbiAgKSA9PiBTZXJpYWxpemFibGVTcGVjaWFsW0tdIHwgZmFsc2U7XG59O1xuXG5leHBvcnQgdHlwZSBSZXZpdmVycyA9IHtcbiAgW0sgaW4ga2V5b2YgU2VyaWFsaXphYmxlU3BlY2lhbF06ICh2YWx1ZTogU2VyaWFsaXphYmxlU3BlY2lhbFtLXSkgPT4gYW55O1xufTtcbiJdfQ==
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2VyaWFsaXphdGlvbi90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQWVIOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsY0FBYyxDQUFDLEtBQWE7SUFDMUMsT0FBTyxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsSUFBSSxlQUFlLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQzNELENBQUM7QUFFRDs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHO0lBQ2pDLDJEQUEyRDtJQUMzRCxVQUFVLEVBQUUsTUFBc0I7SUFDbEMsa0VBQWtFO0lBQ2xFLFNBQVMsRUFBRSxNQUFzQjtJQUNqQzs7Ozs7Ozs7T0FRRztJQUNILE1BQU0sRUFBRSxNQUFzQjtJQUM5Qix3RUFBd0U7SUFDeEUsSUFBSSxFQUFFLE1BQXNCO0lBQzVCLDZFQUE2RTtJQUM3RSxJQUFJLEVBQUUsTUFBc0I7Q0FDcEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogU2hhcmVkIHR5cGVzIGZvciB0aGUgc2VyaWFsaXphdGlvbiBzeXN0ZW0uXG4gKi9cblxuaW1wb3J0IHR5cGUgeyBSdW50aW1lRGVjcnlwdGlvbkVycm9yQ29udGV4dCB9IGZyb20gJ0B3b3JrZmxvdy9lcnJvcnMnO1xuXG4vLyAtLS0tIEZvcm1hdCBQcmVmaXggLS0tLVxuXG4vKipcbiAqIEEgZm9ybWF0IHByZWZpeCBpcyBleGFjdGx5IDQgbG93ZXJjYXNlIGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzIFthLXowLTldLlxuICpcbiAqIFRoaXMgaXMgYSBicmFuZGVkIHN0cmluZyB0eXBlOiB1c2UgYGlzRm9ybWF0UHJlZml4KClgIHRvIHZhbGlkYXRlXG4gKiBhdCBydW50aW1lLiBUaGUgYFNlcmlhbGl6YXRpb25Gb3JtYXRgIG9iamVjdCBwcm92aWRlcyB3ZWxsLWtub3duXG4gKiBjb25zdGFudHMsIGJ1dCBjb2RlY3MgbWF5IGRlZmluZSBhZGRpdGlvbmFsIHByZWZpeGVzLlxuICovXG5leHBvcnQgdHlwZSBGb3JtYXRQcmVmaXggPSBzdHJpbmcgJiB7IHJlYWRvbmx5IF9fYnJhbmQ6ICdGb3JtYXRQcmVmaXgnIH07XG5cbi8qKlxuICogUnVudGltZSB0eXBlIGd1YXJkIGZvciBmb3JtYXQgcHJlZml4IHN0cmluZ3MuXG4gKlxuICogVmFsaWRhdGVzIHRoYXQgYSBzdHJpbmcgaXMgZXhhY3RseSA0IGNoYXJhY3RlcnMgb2YgW2EtejAtOV0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0Zvcm1hdFByZWZpeCh2YWx1ZTogc3RyaW5nKTogdmFsdWUgaXMgRm9ybWF0UHJlZml4IHtcbiAgcmV0dXJuIHZhbHVlLmxlbmd0aCA9PT0gNCAmJiAvXlthLXowLTldezR9JC8udGVzdCh2YWx1ZSk7XG59XG5cbi8qKlxuICogV2VsbC1rbm93biBmb3JtYXQgcHJlZml4IGNvbnN0YW50cy4gQ29kZWNzIG1heSBkZWZpbmUgYWRkaXRpb25hbCBvbmVzLlxuICovXG5leHBvcnQgY29uc3QgU2VyaWFsaXphdGlvbkZvcm1hdCA9IHtcbiAgLyoqIGRldmFsdWUgc3RyaW5naWZ5L3BhcnNlIHdpdGggVGV4dEVuY29kZXIvVGV4dERlY29kZXIgKi9cbiAgREVWQUxVRV9WMTogJ2RldmwnIGFzIEZvcm1hdFByZWZpeCxcbiAgLyoqIEVuY3J5cHRlZCBwYXlsb2FkIChpbm5lciBwYXlsb2FkIGhhcyBpdHMgb3duIGZvcm1hdCBwcmVmaXgpICovXG4gIEVOQ1JZUFRFRDogJ2VuY3InIGFzIEZvcm1hdFByZWZpeCxcbiAgLyoqXG4gICAqIFNlYWxlZCBwYXlsb2FkOiBhc3ltbWV0cmljYWxseSBlbmNyeXB0ZWQgdG8gYSBydW4ncyBYMjU1MTkgcHVibGljIGtleVxuICAgKiAoaW5uZXIgcGF5bG9hZCBoYXMgaXRzIG93biBmb3JtYXQgcHJlZml4KS5cbiAgICpcbiAgICogVXNlZCBmb3IgKmNyb3NzLXJ1biogd3JpdGVzIChob29rIHBheWxvYWRzLCBmb3J3YXJkZWQgc3RyZWFtIGZyYW1lcyksXG4gICAqIHdoZXJlIHRoZSB3cml0ZXIgaG9sZHMgb25seSB0aGUgcmVjaXBpZW50IHJ1bidzIHB1YmxpYyBrZXkgYW5kIHRoZXJlZm9yZVxuICAgKiBjYW5ub3QgZGVjcnlwdC4gQSBydW4ncyBvd24gcGF5bG9hZHMgY29udGludWUgdG8gdXNlIHtAbGluayBFTkNSWVBURUR9LlxuICAgKiBTZWUgYHNlYWxlZC1ib3gudHNgIGZvciB0aGUgY29uc3RydWN0aW9uLlxuICAgKi9cbiAgU0VBTEVEOiAnZW5jcCcgYXMgRm9ybWF0UHJlZml4LFxuICAvKiogR3ppcC1jb21wcmVzc2VkIHBheWxvYWQgKGlubmVyIHBheWxvYWQgaGFzIGl0cyBvd24gZm9ybWF0IHByZWZpeCkgKi9cbiAgR1pJUDogJ2d6aXAnIGFzIEZvcm1hdFByZWZpeCxcbiAgLyoqIFpzdGFuZGFyZC1jb21wcmVzc2VkIHBheWxvYWQgKGlubmVyIHBheWxvYWQgaGFzIGl0cyBvd24gZm9ybWF0IHByZWZpeCkgKi9cbiAgWlNURDogJ3pzdGQnIGFzIEZvcm1hdFByZWZpeCxcbn0gYXMgY29uc3Q7XG5cbi8vIC0tLS0gU2VyaWFsaXphYmxlIFR5cGVzIC0tLS1cblxuLyoqXG4gKiBXaXJlLWZyYW1pbmcgZm9ybWF0IGlkZW50aWZpZXIgY2FycmllZCBpbiB0aGUgc2VyaWFsaXplZFxuICogYFJlYWRhYmxlU3RyZWFtYCByZWYncyBgZnJhbWluZ2AgZmllbGQuXG4gKlxuICogLSBhYnNlbnQgLyBgJ3JhdydgOiBjaHVua3MgYXJlIHdyaXR0ZW4gdG8gdGhlIHRyYW5zcG9ydCB2ZXJiYXRpbVxuICogICAobGVnYWN5IGZvcm1hdCwgbm8gYXV0by1yZWNvbm5lY3Qgc3VwcG9ydCkuXG4gKiAtIGAnZnJhbWVkLXYxJ2A6IGVhY2ggY2h1bmsgaXMgd3JhcHBlZCBpbiBhIDQtYnl0ZSBiaWctZW5kaWFuIGxlbmd0aFxuICogICBwcmVmaXgsIGFsbG93aW5nIHRoZSByZWFkZXIgdG8gaWRlbnRpZnkgY2h1bmsgYm91bmRhcmllcyBhbmRcbiAqICAgdHJhbnNwYXJlbnRseSByZWNvbm5lY3Qgb24gdHJhbnNpZW50IHN0cmVhbSBlcnJvcnMuXG4gKi9cbmV4cG9ydCB0eXBlIEJ5dGVTdHJlYW1GcmFtaW5nID0gJ3JhdycgfCAnZnJhbWVkLXYxJztcblxuLyoqXG4gKiBUeXBlcyB0aGF0IG5lZWQgc3BlY2lhbGl6ZWQgaGFuZGxpbmcgd2hlbiBzZXJpYWxpemVkL2Rlc2VyaWFsaXplZC5cbiAqIElmIGEgdHlwZSBpcyBhZGRlZCBoZXJlLCBpdCBNVVNUIGFsc28gYmUgYWRkZWQgdG8gdGhlIGBTZXJpYWxpemFibGVgXG4gKiB0eXBlIGluIGBzY2hlbWFzLnRzYC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXJpYWxpemFibGVTcGVjaWFsIHtcbiAgQXJyYXlCdWZmZXI6IHN0cmluZzsgLy8gYmFzZTY0IHN0cmluZ1xuICBCaWdJbnQ6IHN0cmluZzsgLy8gc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIGJpZ2ludFxuICBCaWdJbnQ2NEFycmF5OiBzdHJpbmc7IC8vIGJhc2U2NCBzdHJpbmdcbiAgQmlnVWludDY0QXJyYXk6IHN0cmluZzsgLy8gYmFzZTY0IHN0cmluZ1xuICBEYXRlOiBzdHJpbmc7IC8vIElTTyBzdHJpbmdcbiAgRE9NRXhjZXB0aW9uOiB7XG4gICAgbWVzc2FnZTogc3RyaW5nO1xuICAgIG5hbWU6IHN0cmluZztcbiAgICBzdGFjaz86IHN0cmluZztcbiAgICBjYXVzZT86IHVua25vd247XG4gIH07XG4gIEZhdGFsRXJyb3I6IHsgbWVzc2FnZTogc3RyaW5nOyBzdGFjaz86IHN0cmluZzsgY2F1c2U/OiB1bmtub3duIH07XG4gIEZsb2F0MzJBcnJheTogc3RyaW5nOyAvLyBiYXNlNjQgc3RyaW5nXG4gIEZsb2F0NjRBcnJheTogc3RyaW5nOyAvLyBiYXNlNjQgc3RyaW5nXG4gIEVycm9yOiB7IG5hbWU6IHN0cmluZzsgbWVzc2FnZTogc3RyaW5nOyBzdGFjaz86IHN0cmluZzsgY2F1c2U/OiB1bmtub3duIH07XG4gIEV2YWxFcnJvcjogeyBtZXNzYWdlOiBzdHJpbmc7IHN0YWNrPzogc3RyaW5nOyBjYXVzZT86IHVua25vd24gfTtcbiAgSGVhZGVyczogW3N0cmluZywgc3RyaW5nXVtdO1xuICBIb29rQ29uZmxpY3RFcnJvcjoge1xuICAgIG1lc3NhZ2U6IHN0cmluZztcbiAgICBzdGFjaz86IHN0cmluZztcbiAgICBjYXVzZT86IHVua25vd247XG4gICAgdG9rZW46IHN0cmluZztcbiAgICAvLyBUT0RPOiBNYWtlIHRoaXMgcmVxdWlyZWQgd2hlbiBIb29rQ29uZmxpY3RFcnJvci5jb25mbGljdGluZ1J1bklkIGlzIHJlcXVpcmVkLlxuICAgIGNvbmZsaWN0aW5nUnVuSWQ/OiBzdHJpbmc7XG4gIH07XG4gIEludDhBcnJheTogc3RyaW5nOyAvLyBiYXNlNjQgc3RyaW5nXG4gIEludDE2QXJyYXk6IHN0cmluZzsgLy8gYmFzZTY0IHN0cmluZ1xuICBJbnQzMkFycmF5OiBzdHJpbmc7IC8vIGJhc2U2NCBzdHJpbmdcbiAgTWFwOiBbYW55LCBhbnldW107XG4gIFJhbmdlRXJyb3I6IHsgbWVzc2FnZTogc3RyaW5nOyBzdGFjaz86IHN0cmluZzsgY2F1c2U/OiB1bmtub3duIH07XG4gIFJlYWRhYmxlU3RyZWFtOlxuICAgIHwge1xuICAgICAgICBuYW1lOiBzdHJpbmc7XG4gICAgICAgIHR5cGU/OiAnYnl0ZXMnO1xuICAgICAgICBzdGFydEluZGV4PzogbnVtYmVyO1xuICAgICAgICAvKipcbiAgICAgICAgICogV2lyZS1mcmFtaW5nIGZvcm1hdCBmb3IgYnl0ZSBzdHJlYW1zLiBTZWUge0BsaW5rIEJ5dGVTdHJlYW1GcmFtaW5nfVxuICAgICAgICAgKiBhbmQgYGdldEJ5dGVGcmFtaW5nU3RyZWFtYCAvIGBnZXRCeXRlVW5mcmFtaW5nU3RyZWFtYC5cbiAgICAgICAgICpcbiAgICAgICAgICogT25seSBtZWFuaW5nZnVsIHdoZW4gYHR5cGUgPT09ICdieXRlcydgLiBBYnNlbnQgb24gb2JqZWN0IHN0cmVhbXNcbiAgICAgICAgICogKHdoaWNoIGFsd2F5cyB1c2UgbGVuZ3RoLXByZWZpeGVkIGRldmFsdWUgZnJhbWluZykgYW5kIG9uIGxlZ2FjeVxuICAgICAgICAgKiBieXRlIHN0cmVhbXMgd3JpdHRlbiBieSBTREtzIHRoYXQgcHJlZGF0ZSBmcmFtaW5nIHN1cHBvcnQ7IHRob3NlXG4gICAgICAgICAqIGFyZSBpbnRlcnByZXRlZCBhcyBgJ3JhdydgIGJ5IHRoZSBjb25zdW1lci5cbiAgICAgICAgICovXG4gICAgICAgIGZyYW1pbmc/OiBCeXRlU3RyZWFtRnJhbWluZztcbiAgICAgIH1cbiAgICB8IHsgYm9keUluaXQ6IGFueSB9O1xuICBSZWZlcmVuY2VFcnJvcjogeyBtZXNzYWdlOiBzdHJpbmc7IHN0YWNrPzogc3RyaW5nOyBjYXVzZT86IHVua25vd24gfTtcbiAgUmVnRXhwOiB7IHNvdXJjZTogc3RyaW5nOyBmbGFnczogc3RyaW5nIH07XG4gIC8qKlxuICAgKiBgcmV0cnlBZnRlcmAgaXMgc2VyaWFsaXplZCBhcyBhIG51bWVyaWMgZXBvY2ggdGltZXN0YW1wIHJhdGhlciB0aGFuIGFcbiAgICogYERhdGVgIHRvIGJlIHJlYWxtLXNhZmUuIFRoZSBEYXRlIHJlZHVjZXIgdXNlcyBgaW5zdGFuY2VvZiBnbG9iYWwuRGF0ZWAsXG4gICAqIHdoaWNoIGZhaWxzIGZvciBEYXRlcyBmcm9tIGEgZGlmZmVyZW50IFZNIHJlYWxtLlxuICAgKi9cbiAgUmV0cnlhYmxlRXJyb3I6IHtcbiAgICBtZXNzYWdlOiBzdHJpbmc7XG4gICAgc3RhY2s/OiBzdHJpbmc7XG4gICAgY2F1c2U/OiB1bmtub3duO1xuICAgIHJldHJ5QWZ0ZXI6IG51bWJlcjtcbiAgfTtcbiAgUnVudGltZURlY3J5cHRpb25FcnJvcjoge1xuICAgIG1lc3NhZ2U6IHN0cmluZztcbiAgICBzdGFjaz86IHN0cmluZztcbiAgICBjYXVzZT86IHVua25vd247XG4gICAgY29udGV4dD86IFJ1bnRpbWVEZWNyeXB0aW9uRXJyb3JDb250ZXh0O1xuICB9O1xuICBSZXF1ZXN0OiB7XG4gICAgbWV0aG9kOiBzdHJpbmc7XG4gICAgdXJsOiBzdHJpbmc7XG4gICAgaGVhZGVyczogSGVhZGVycztcbiAgICBib2R5OiBSZXF1ZXN0Wydib2R5J107XG4gICAgZHVwbGV4OiBSZXF1ZXN0WydkdXBsZXgnXTtcbiAgICByZXNwb25zZVdyaXRhYmxlPzogV3JpdGFibGVTdHJlYW08UmVzcG9uc2U+O1xuICAgIHNpZ25hbD86IEFib3J0U2lnbmFsO1xuICB9O1xuICBSZXNwb25zZToge1xuICAgIHR5cGU6IFJlc3BvbnNlWyd0eXBlJ107XG4gICAgdXJsOiBzdHJpbmc7XG4gICAgc3RhdHVzOiBudW1iZXI7XG4gICAgc3RhdHVzVGV4dDogc3RyaW5nO1xuICAgIGhlYWRlcnM6IEhlYWRlcnM7XG4gICAgYm9keTogUmVzcG9uc2VbJ2JvZHknXTtcbiAgICByZWRpcmVjdGVkOiBib29sZWFuO1xuICB9O1xuICBDbGFzczoge1xuICAgIGNsYXNzSWQ6IHN0cmluZztcbiAgfTtcbiAgSW5zdGFuY2U6IHtcbiAgICBjbGFzc0lkOiBzdHJpbmc7XG4gICAgZGF0YTogdW5rbm93bjtcbiAgfTtcbiAgU2V0OiBhbnlbXTtcbiAgU3ludGF4RXJyb3I6IHsgbWVzc2FnZTogc3RyaW5nOyBzdGFjaz86IHN0cmluZzsgY2F1c2U/OiB1bmtub3duIH07XG4gIFN0ZXBGdW5jdGlvbjoge1xuICAgIHN0ZXBJZDogc3RyaW5nO1xuICAgIGNsb3N1cmVWYXJzPzogUmVjb3JkPHN0cmluZywgYW55PjtcbiAgICAvKipcbiAgICAgKiBDYXB0dXJlZCBsZXhpY2FsIGB0aGlzYCBmb3Igc3RlcCBwcm94aWVzIHRoYXQgd2VyZSBjcmVhdGVkIHZpYVxuICAgICAqIGB1c2VTdGVwKC4uLikuYmluZCh0aGlzQXJnKWAgKHRoZSBTV0MgcGx1Z2luIGVtaXRzIHRoaXMgZm9yIG5lc3RlZFxuICAgICAqIGFycm93IHN0ZXBzIHRoYXQgY2xvc2Ugb3ZlciB0aGVpciBlbmNsb3NpbmcgZnVuY3Rpb24ncyBgdGhpc2ApLlxuICAgICAqIFRoZSByZXZpdmVyIHJlLWJpbmRzIHRoZSBmcmVzaGx5LWNyZWF0ZWQgcHJveHkgdG8gdGhpcyB2YWx1ZSBzbyB0aGVcbiAgICAgKiBiaW5kaW5nIHN1cnZpdmVzIHNlcmlhbGl6YXRpb24gcm91bmQtdHJpcHMuXG4gICAgICovXG4gICAgYm91bmRUaGlzPzogdW5rbm93bjtcbiAgICAvKipcbiAgICAgKiBQcmVmaWxsZWQgYXJndW1lbnRzIGNhcHR1cmVkIHdoZW4gdGhlIHVzZXIgKHJhdGhlciB0aGFuIHRoZSBTV0NcbiAgICAgKiBwbHVnaW4pIGNhbGxlZCBgdXNlU3RlcCguLi4pLmJpbmQodGhpc0FyZywgeCwgeSlgLiBUaGUgcmV2aXZlclxuICAgICAqIHJlLWFwcGxpZXMgdGhlc2UgYWxvbmdzaWRlIGBib3VuZFRoaXNgIHNvIHBhcnRpYWwgYXBwbGljYXRpb25cbiAgICAgKiBzdXJ2aXZlcyBzZXJpYWxpemF0aW9uLiBUaGUgU1dDIHBsdWdpbiBvbmx5IGV2ZXIgZW1pdHNcbiAgICAgKiBgLmJpbmQodGhpcylgIHdpdGggbm8gZXh0cmEgYXJncyB0b2RheTsgdGhpcyBzbG90IGV4aXN0cyBzbyBhXG4gICAgICogaGFuZC13cml0dGVuIGAuYmluZCh0aGlzQXJnLCB4KWAgZG9lc24ndCBzaWxlbnRseSBsb3NlIGB4YCBhZnRlclxuICAgICAqIHJvdW5kLXRyaXBwaW5nIHRocm91Z2ggdGhlIHJlZHVjZXIvcmV2aXZlci5cbiAgICAgKi9cbiAgICBib3VuZEFyZ3M/OiB1bmtub3duW107XG4gIH07XG4gIFR5cGVFcnJvcjogeyBtZXNzYWdlOiBzdHJpbmc7IHN0YWNrPzogc3RyaW5nOyBjYXVzZT86IHVua25vd24gfTtcbiAgVVJJRXJyb3I6IHsgbWVzc2FnZTogc3RyaW5nOyBzdGFjaz86IHN0cmluZzsgY2F1c2U/OiB1bmtub3duIH07XG4gIFVSTDogc3RyaW5nO1xuICBXb3JrZmxvd0Z1bmN0aW9uOiB7XG4gICAgd29ya2Zsb3dJZDogc3RyaW5nO1xuICB9O1xuICBVUkxTZWFyY2hQYXJhbXM6IHN0cmluZztcbiAgVWludDhBcnJheTogc3RyaW5nOyAvLyBiYXNlNjQgc3RyaW5nXG4gIFVpbnQ4Q2xhbXBlZEFycmF5OiBzdHJpbmc7IC8vIGJhc2U2NCBzdHJpbmdcbiAgVWludDE2QXJyYXk6IHN0cmluZzsgLy8gYmFzZTY0IHN0cmluZ1xuICBVaW50MzJBcnJheTogc3RyaW5nOyAvLyBiYXNlNjQgc3RyaW5nXG4gIEFnZ3JlZ2F0ZUVycm9yOiB7XG4gICAgbWVzc2FnZTogc3RyaW5nO1xuICAgIHN0YWNrPzogc3RyaW5nO1xuICAgIGNhdXNlPzogdW5rbm93bjtcbiAgICBlcnJvcnM6IHVua25vd25bXTtcbiAgfTtcbiAgV3JpdGFibGVTdHJlYW06IHtcbiAgICBuYW1lOiBzdHJpbmc7XG4gICAgLyoqXG4gICAgICogVGhlIHJ1bklkIG9mIHRoZSB3b3JrZmxvdyBydW4gdGhhdCBvd25zIHRoZSB1bmRlcmx5aW5nIHNlcnZlclxuICAgICAqIHN0cmVhbS4gUHJlc2VudCBvbmx5IHdoZW4gdGhlIHdyaXRhYmxlIHdhcyBmb3J3YXJkZWQgYWNyb3NzIGFcbiAgICAgKiBgc3RhcnQoKWAgYm91bmRhcnkgKHBhcmVudCDihpIgY2hpbGQpLiBXaGVuIG9taXR0ZWQsIHRoZSB3cml0YWJsZVxuICAgICAqIGJlbG9uZ3MgdG8gdGhlIHJlY2VpdmluZyBydW4gKHRoZSBub3JtYWwgaW4tcnVuIGNhc2UpLlxuICAgICAqL1xuICAgIHJ1bklkPzogc3RyaW5nO1xuICAgIC8qKlxuICAgICAqIFRoZSBkZXBsb3ltZW50IHRoYXQgb3ducyB0aGUgc2VydmVyIHN0cmVhbS4gQ2FycmllZCB3aXRoIGBydW5JZGBcbiAgICAgKiBzbyBhIGNoaWxkIHJ1bm5pbmcgb24gYSBuZXdlciBkZXBsb3ltZW50IGNhbiBlbmNyeXB0IGNodW5rcyB3aXRoXG4gICAgICogdGhlIHBhcmVudCdzIGtleSB3aXRob3V0IGZldGNoaW5nIHRoZSBwYXJlbnQgcnVuIGZpcnN0LlxuICAgICAqL1xuICAgIGRlcGxveW1lbnRJZD86IHN0cmluZztcbiAgICAvKipcbiAgICAgKiBUaGUgb3duaW5nIHJ1bidzIFgyNTUxOSBwdWJsaWMga2V5IChiYXNlNjQpLCB3aGVuIGl0IGhhcyBvbmUuXG4gICAgICpcbiAgICAgKiBMZXRzIHRoZSByZWNlaXZpbmcgcnVuIHNlYWwgZnJhbWVzIHRvIHRoZSBzdHJlYW0ncyBvd25lciB3aXRoIG5vXG4gICAgICogbG9va3VwIGF0IGFsbDogbmVpdGhlciBhIHJ1biBmZXRjaCBub3IgYSBrZXktQVBJIHJvdW5kIHRyaXAuIFRoZVxuICAgICAqIG93bmVyIGRlcml2ZXMgdGhpcyBsb2NhbGx5IHdoZW4gaXQgY3JlYXRlcyB0aGUgc3RyZWFtLCBzbyBpbmNsdWRpbmdcbiAgICAgKiBpdCBoZXJlIGlzIGZyZWUuIEFic2VudCBmb3IgcnVucyBjcmVhdGVkIGJ5IG9sZGVyIFNES3MsIGluIHdoaWNoXG4gICAgICogY2FzZSB0aGUgcmVjZWl2ZXIgZmFsbHMgYmFjayB0byByZXNvbHZpbmcgdGhlIG93bmVyJ3Mgc3ltbWV0cmljIGtleS5cbiAgICAgKi9cbiAgICBlbmNyeXB0aW9uUHVibGljS2V5Pzogc3RyaW5nO1xuICB9O1xuICBBYm9ydENvbnRyb2xsZXI6IHtcbiAgICBzdHJlYW1OYW1lOiBzdHJpbmc7XG4gICAgaG9va1Rva2VuOiBzdHJpbmc7XG4gICAgYWJvcnRlZDogYm9vbGVhbjtcbiAgICByZWFzb24/OiB1bmtub3duO1xuICB9O1xuICBBYm9ydFNpZ25hbDoge1xuICAgIHN0cmVhbU5hbWU6IHN0cmluZztcbiAgICBob29rVG9rZW46IHN0cmluZztcbiAgICBhYm9ydGVkOiBib29sZWFuO1xuICAgIHJlYXNvbj86IHVua25vd247XG4gIH07XG59XG5cbmV4cG9ydCB0eXBlIFJlZHVjZXJzID0ge1xuICBbSyBpbiBrZXlvZiBTZXJpYWxpemFibGVTcGVjaWFsXTogKFxuICAgIHZhbHVlOiBhbnlcbiAgKSA9PiBTZXJpYWxpemFibGVTcGVjaWFsW0tdIHwgZmFsc2U7XG59O1xuXG5leHBvcnQgdHlwZSBSZXZpdmVycyA9IHtcbiAgW0sgaW4ga2V5b2YgU2VyaWFsaXphYmxlU3BlY2lhbF06ICh2YWx1ZTogU2VyaWFsaXphYmxlU3BlY2lhbFtLXSkgPT4gYW55O1xufTtcbiJdfQ==
@@ -9,7 +9,7 @@
9
9
  * node:util), which is also what made it bundleable into the VM before the
10
10
  * serde moved host-side.
11
11
  *
12
- * Produces and consumes the same wire format as the Node.js workflow.ts
12
+ * Produces and consumes the same wire format as the Node.js workflow.ts:
13
13
  * format-prefixed devalue data ("devl" + devalue.stringify output).
14
14
  */
15
15
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-vm.d.ts","sourceRoot":"","sources":["../../src/serialization/workflow-vm.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAiBH;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,UAAU,CAOpD;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,GAAG,OAAO,CA0B/D"}
1
+ {"version":3,"file":"workflow-vm.d.ts","sourceRoot":"","sources":["../../src/serialization/workflow-vm.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAsBH;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,UAAU,CAOpD;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,GAAG,OAAO,CA0B/D"}
@@ -9,23 +9,26 @@
9
9
  * node:util), which is also what made it bundleable into the VM before the
10
10
  * serde moved host-side.
11
11
  *
12
- * Produces and consumes the same wire format as the Node.js workflow.ts
12
+ * Produces and consumes the same wire format as the Node.js workflow.ts:
13
13
  * format-prefixed devalue data ("devl" + devalue.stringify output).
14
14
  */
15
+ import { globalSingleton } from '@workflow/utils';
15
16
  import { devalueVmCodec } from './codec-devalue-vm.js';
16
17
  import { isFormatPrefix, SerializationFormat } from './types.js';
17
18
  const FORMAT_PREFIX_LENGTH = 4;
18
- let _encoder;
19
- let _decoder;
19
+ // On `globalThis` (see `globalSingleton`) so one process builds one pair,
20
+ // rather than one per bundler layer this module is compiled into.
21
+ const codecs = globalSingleton('@workflow/core//vmTextCodecs', 1, () => ({
22
+ encoder: undefined,
23
+ decoder: undefined,
24
+ }));
20
25
  function getEncoder() {
21
- if (!_encoder)
22
- _encoder = new globalThis.TextEncoder();
23
- return _encoder;
26
+ codecs.encoder ??= new globalThis.TextEncoder();
27
+ return codecs.encoder;
24
28
  }
25
29
  function getDecoder() {
26
- if (!_decoder)
27
- _decoder = new globalThis.TextDecoder();
28
- return _decoder;
30
+ codecs.decoder ??= new globalThis.TextDecoder();
31
+ return codecs.decoder;
29
32
  }
30
33
  /**
31
34
  * Serialize a value to format-prefixed bytes.
@@ -68,4 +71,4 @@ export function deserialize(data) {
68
71
  }
69
72
  throw new Error(`Unsupported serialization format: ${prefixStr}`);
70
73
  }
71
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2Zsb3ctdm0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2VyaWFsaXphdGlvbi93b3JrZmxvdy12bS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7OztHQWFHO0FBRUgsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxjQUFjLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFakUsTUFBTSxvQkFBb0IsR0FBRyxDQUFDLENBQUM7QUFDL0IsSUFBSSxRQUEyQyxDQUFDO0FBQ2hELElBQUksUUFBMkMsQ0FBQztBQUNoRCxTQUFTLFVBQVU7SUFDakIsSUFBSSxDQUFDLFFBQVE7UUFBRSxRQUFRLEdBQUcsSUFBSyxVQUFrQixDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ2hFLE9BQU8sUUFBUSxDQUFDO0FBQ2xCLENBQUM7QUFDRCxTQUFTLFVBQVU7SUFDakIsSUFBSSxDQUFDLFFBQVE7UUFBRSxRQUFRLEdBQUcsSUFBSyxVQUFrQixDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ2hFLE9BQU8sUUFBUSxDQUFDO0FBQ2xCLENBQUM7QUFFRDs7Ozs7R0FLRztBQUNILE1BQU0sVUFBVSxTQUFTLENBQUMsS0FBYztJQUN0QyxNQUFNLE9BQU8sR0FBRyxjQUFjLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxVQUFVLENBQUMsQ0FBQztJQUM1RCxNQUFNLE1BQU0sR0FBRyxVQUFVLEVBQUUsQ0FBQyxNQUFNLENBQUMsbUJBQW1CLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDbkUsTUFBTSxNQUFNLEdBQUcsSUFBSSxVQUFVLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDOUQsTUFBTSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDdEIsTUFBTSxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ25DLE9BQU8sTUFBTSxDQUFDO0FBQ2hCLENBQUM7QUFFRDs7Ozs7R0FLRztBQUNILE1BQU0sVUFBVSxXQUFXLENBQUMsSUFBMEI7SUFDcEQsMEJBQTBCO0lBQzFCLElBQUksQ0FBQyxDQUFDLElBQUksWUFBWSxVQUFVLENBQUMsRUFBRSxDQUFDO1FBQ2xDLElBQUksY0FBYyxDQUFDLGlCQUFpQixFQUFFLENBQUM7WUFDckMsT0FBTyxjQUFjLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBQzVELENBQUM7UUFDRCxNQUFNLElBQUksS0FBSyxDQUNiLDJEQUEyRCxDQUM1RCxDQUFDO0lBQ0osQ0FBQztJQUVELElBQUksSUFBSSxDQUFDLE1BQU0sR0FBRyxvQkFBb0IsRUFBRSxDQUFDO1FBQ3ZDLE1BQU0sSUFBSSxLQUFLLENBQUMseUNBQXlDLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRUQsTUFBTSxTQUFTLEdBQUcsVUFBVSxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLG9CQUFvQixDQUFDLENBQUMsQ0FBQztJQUM5RSxJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7UUFDL0IsTUFBTSxJQUFJLEtBQUssQ0FBQywyQkFBMkIsU0FBUyxHQUFHLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQsSUFBSSxTQUFTLEtBQUssbUJBQW1CLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDakQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1FBQ3BELE9BQU8sY0FBYyxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUUsVUFBVSxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVELE1BQU0sSUFBSSxLQUFLLENBQUMscUNBQXFDLFNBQVMsRUFBRSxDQUFDLENBQUM7QUFDcEUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogSG9zdC1zaWRlIHJlZmVyZW5jZSBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgUXVpY2tKUyBlbmdpbmUncyB3b3JrZmxvdy1tb2RlXG4gKiB3aXJlIGNvZGVjLlxuICpcbiAqIFRoZSBRdWlja0pTIGVuZ2luZSBzZXJpYWxpemVzIHRocm91Z2ggaGFuZGxlcyBvbiB0aGUgaG9zdFxuICogKHJ1bnRpbWUvcXVpY2tqcy1zZXJkZS50cyk7IHRoaXMgbW9kdWxlIGlzIHRoZSB2YWx1ZS1zcGFjZSBlcXVpdmFsZW50IG9mXG4gKiB0aGF0IGNvZGVjIGFuZCBpcyB1c2VkIGJ5IHRlc3RzIHRvIGJ1aWxkIHdpcmUgZml4dHVyZXMgYW5kIGFzc2VydFxuICogYnl0ZS1sZXZlbCBwYXJpdHkuIEl0IGhhcyBOTyBOb2RlLmpzIGRlcGVuZGVuY2llcyAobm8gQnVmZmVyLCBub1xuICogbm9kZTp1dGlsKSwgd2hpY2ggaXMgYWxzbyB3aGF0IG1hZGUgaXQgYnVuZGxlYWJsZSBpbnRvIHRoZSBWTSBiZWZvcmUgdGhlXG4gKiBzZXJkZSBtb3ZlZCBob3N0LXNpZGUuXG4gKlxuICogUHJvZHVjZXMgYW5kIGNvbnN1bWVzIHRoZSBzYW1lIHdpcmUgZm9ybWF0IGFzIHRoZSBOb2RlLmpzIHdvcmtmbG93LnRzIOKAlFxuICogZm9ybWF0LXByZWZpeGVkIGRldmFsdWUgZGF0YSAoXCJkZXZsXCIgKyBkZXZhbHVlLnN0cmluZ2lmeSBvdXRwdXQpLlxuICovXG5cbmltcG9ydCB7IGRldmFsdWVWbUNvZGVjIH0gZnJvbSAnLi9jb2RlYy1kZXZhbHVlLXZtLmpzJztcbmltcG9ydCB7IGlzRm9ybWF0UHJlZml4LCBTZXJpYWxpemF0aW9uRm9ybWF0IH0gZnJvbSAnLi90eXBlcy5qcyc7XG5cbmNvbnN0IEZPUk1BVF9QUkVGSVhfTEVOR1RIID0gNDtcbmxldCBfZW5jb2RlcjogeyBlbmNvZGUoczogc3RyaW5nKTogVWludDhBcnJheSB9O1xubGV0IF9kZWNvZGVyOiB7IGRlY29kZShkOiBVaW50OEFycmF5KTogc3RyaW5nIH07XG5mdW5jdGlvbiBnZXRFbmNvZGVyKCkge1xuICBpZiAoIV9lbmNvZGVyKSBfZW5jb2RlciA9IG5ldyAoZ2xvYmFsVGhpcyBhcyBhbnkpLlRleHRFbmNvZGVyKCk7XG4gIHJldHVybiBfZW5jb2Rlcjtcbn1cbmZ1bmN0aW9uIGdldERlY29kZXIoKSB7XG4gIGlmICghX2RlY29kZXIpIF9kZWNvZGVyID0gbmV3IChnbG9iYWxUaGlzIGFzIGFueSkuVGV4dERlY29kZXIoKTtcbiAgcmV0dXJuIF9kZWNvZGVyO1xufVxuXG4vKipcbiAqIFNlcmlhbGl6ZSBhIHZhbHVlIHRvIGZvcm1hdC1wcmVmaXhlZCBieXRlcy5cbiAqXG4gKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgdG8gc2VyaWFsaXplXG4gKiBAcmV0dXJucyBVaW50OEFycmF5IHdpdGggXCJkZXZsXCIgcHJlZml4ICsgZGV2YWx1ZSBwYXlsb2FkXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzZXJpYWxpemUodmFsdWU6IHVua25vd24pOiBVaW50OEFycmF5IHtcbiAgY29uc3QgcGF5bG9hZCA9IGRldmFsdWVWbUNvZGVjLnNlcmlhbGl6ZSh2YWx1ZSwgJ3dvcmtmbG93Jyk7XG4gIGNvbnN0IHByZWZpeCA9IGdldEVuY29kZXIoKS5lbmNvZGUoU2VyaWFsaXphdGlvbkZvcm1hdC5ERVZBTFVFX1YxKTtcbiAgY29uc3QgcmVzdWx0ID0gbmV3IFVpbnQ4QXJyYXkocHJlZml4Lmxlbmd0aCArIHBheWxvYWQubGVuZ3RoKTtcbiAgcmVzdWx0LnNldChwcmVmaXgsIDApO1xuICByZXN1bHQuc2V0KHBheWxvYWQsIHByZWZpeC5sZW5ndGgpO1xuICByZXR1cm4gcmVzdWx0O1xufVxuXG4vKipcbiAqIERlc2VyaWFsaXplIGZvcm1hdC1wcmVmaXhlZCBieXRlcyBiYWNrIHRvIGEgdmFsdWUuXG4gKlxuICogQHBhcmFtIGRhdGEgLSBVaW50OEFycmF5IHdpdGggZm9ybWF0IHByZWZpeCwgb3IgbGVnYWN5IG5vbi1iaW5hcnkgZGF0YVxuICogQHJldHVybnMgVGhlIGRlc2VyaWFsaXplZCB2YWx1ZVxuICovXG5leHBvcnQgZnVuY3Rpb24gZGVzZXJpYWxpemUoZGF0YTogVWludDhBcnJheSB8IHVua25vd24pOiB1bmtub3duIHtcbiAgLy8gTGVnYWN5OiBub24tYmluYXJ5IGRhdGFcbiAgaWYgKCEoZGF0YSBpbnN0YW5jZW9mIFVpbnQ4QXJyYXkpKSB7XG4gICAgaWYgKGRldmFsdWVWbUNvZGVjLmRlc2VyaWFsaXplTGVnYWN5KSB7XG4gICAgICByZXR1cm4gZGV2YWx1ZVZtQ29kZWMuZGVzZXJpYWxpemVMZWdhY3koZGF0YSwgJ3dvcmtmbG93Jyk7XG4gICAgfVxuICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICdDYW5ub3QgZGVzZXJpYWxpemUgbm9uLWJpbmFyeSBkYXRhIHdpdGhvdXQgbGVnYWN5IHN1cHBvcnQnXG4gICAgKTtcbiAgfVxuXG4gIGlmIChkYXRhLmxlbmd0aCA8IEZPUk1BVF9QUkVGSVhfTEVOR1RIKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdEYXRhIHRvbyBzaG9ydCB0byBjb250YWluIGZvcm1hdCBwcmVmaXgnKTtcbiAgfVxuXG4gIGNvbnN0IHByZWZpeFN0ciA9IGdldERlY29kZXIoKS5kZWNvZGUoZGF0YS5zdWJhcnJheSgwLCBGT1JNQVRfUFJFRklYX0xFTkdUSCkpO1xuICBpZiAoIWlzRm9ybWF0UHJlZml4KHByZWZpeFN0cikpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgZm9ybWF0IHByZWZpeDogXCIke3ByZWZpeFN0cn1cImApO1xuICB9XG5cbiAgaWYgKHByZWZpeFN0ciA9PT0gU2VyaWFsaXphdGlvbkZvcm1hdC5ERVZBTFVFX1YxKSB7XG4gICAgY29uc3QgcGF5bG9hZCA9IGRhdGEuc3ViYXJyYXkoRk9STUFUX1BSRUZJWF9MRU5HVEgpO1xuICAgIHJldHVybiBkZXZhbHVlVm1Db2RlYy5kZXNlcmlhbGl6ZShwYXlsb2FkLCAnd29ya2Zsb3cnKTtcbiAgfVxuXG4gIHRocm93IG5ldyBFcnJvcihgVW5zdXBwb3J0ZWQgc2VyaWFsaXphdGlvbiBmb3JtYXQ6ICR7cHJlZml4U3RyfWApO1xufVxuIl19
74
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2Zsb3ctdm0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2VyaWFsaXphdGlvbi93b3JrZmxvdy12bS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7OztHQWFHO0FBRUgsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsY0FBYyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sWUFBWSxDQUFDO0FBRWpFLE1BQU0sb0JBQW9CLEdBQUcsQ0FBQyxDQUFDO0FBQy9CLDBFQUEwRTtBQUMxRSxrRUFBa0U7QUFDbEUsTUFBTSxNQUFNLEdBQUcsZUFBZSxDQUFDLDhCQUE4QixFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZFLE9BQU8sRUFBRSxTQUEwRDtJQUNuRSxPQUFPLEVBQUUsU0FBMEQ7Q0FDcEUsQ0FBQyxDQUFDLENBQUM7QUFDSixTQUFTLFVBQVU7SUFDakIsTUFBTSxDQUFDLE9BQU8sS0FBSyxJQUFLLFVBQWtCLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDekQsT0FBTyxNQUFNLENBQUMsT0FBNEMsQ0FBQztBQUM3RCxDQUFDO0FBQ0QsU0FBUyxVQUFVO0lBQ2pCLE1BQU0sQ0FBQyxPQUFPLEtBQUssSUFBSyxVQUFrQixDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3pELE9BQU8sTUFBTSxDQUFDLE9BQTRDLENBQUM7QUFDN0QsQ0FBQztBQUVEOzs7OztHQUtHO0FBQ0gsTUFBTSxVQUFVLFNBQVMsQ0FBQyxLQUFjO0lBQ3RDLE1BQU0sT0FBTyxHQUFHLGNBQWMsQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQzVELE1BQU0sTUFBTSxHQUFHLFVBQVUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNuRSxNQUFNLE1BQU0sR0FBRyxJQUFJLFVBQVUsQ0FBQyxNQUFNLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM5RCxNQUFNLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQztJQUN0QixNQUFNLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDbkMsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQztBQUVEOzs7OztHQUtHO0FBQ0gsTUFBTSxVQUFVLFdBQVcsQ0FBQyxJQUEwQjtJQUNwRCwwQkFBMEI7SUFDMUIsSUFBSSxDQUFDLENBQUMsSUFBSSxZQUFZLFVBQVUsQ0FBQyxFQUFFLENBQUM7UUFDbEMsSUFBSSxjQUFjLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztZQUNyQyxPQUFPLGNBQWMsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDNUQsQ0FBQztRQUNELE1BQU0sSUFBSSxLQUFLLENBQ2IsMkRBQTJELENBQzVELENBQUM7SUFDSixDQUFDO0lBRUQsSUFBSSxJQUFJLENBQUMsTUFBTSxHQUFHLG9CQUFvQixFQUFFLENBQUM7UUFDdkMsTUFBTSxJQUFJLEtBQUssQ0FBQyx5Q0FBeUMsQ0FBQyxDQUFDO0lBQzdELENBQUM7SUFFRCxNQUFNLFNBQVMsR0FBRyxVQUFVLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsb0JBQW9CLENBQUMsQ0FBQyxDQUFDO0lBQzlFLElBQUksQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQztRQUMvQixNQUFNLElBQUksS0FBSyxDQUFDLDJCQUEyQixTQUFTLEdBQUcsQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFRCxJQUFJLFNBQVMsS0FBSyxtQkFBbUIsQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNqRCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFDcEQsT0FBTyxjQUFjLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxVQUFVLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRUQsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQ0FBcUMsU0FBUyxFQUFFLENBQUMsQ0FBQztBQUNwRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBIb3N0LXNpZGUgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIG9mIHRoZSBRdWlja0pTIGVuZ2luZSdzIHdvcmtmbG93LW1vZGVcbiAqIHdpcmUgY29kZWMuXG4gKlxuICogVGhlIFF1aWNrSlMgZW5naW5lIHNlcmlhbGl6ZXMgdGhyb3VnaCBoYW5kbGVzIG9uIHRoZSBob3N0XG4gKiAocnVudGltZS9xdWlja2pzLXNlcmRlLnRzKTsgdGhpcyBtb2R1bGUgaXMgdGhlIHZhbHVlLXNwYWNlIGVxdWl2YWxlbnQgb2ZcbiAqIHRoYXQgY29kZWMgYW5kIGlzIHVzZWQgYnkgdGVzdHMgdG8gYnVpbGQgd2lyZSBmaXh0dXJlcyBhbmQgYXNzZXJ0XG4gKiBieXRlLWxldmVsIHBhcml0eS4gSXQgaGFzIE5PIE5vZGUuanMgZGVwZW5kZW5jaWVzIChubyBCdWZmZXIsIG5vXG4gKiBub2RlOnV0aWwpLCB3aGljaCBpcyBhbHNvIHdoYXQgbWFkZSBpdCBidW5kbGVhYmxlIGludG8gdGhlIFZNIGJlZm9yZSB0aGVcbiAqIHNlcmRlIG1vdmVkIGhvc3Qtc2lkZS5cbiAqXG4gKiBQcm9kdWNlcyBhbmQgY29uc3VtZXMgdGhlIHNhbWUgd2lyZSBmb3JtYXQgYXMgdGhlIE5vZGUuanMgd29ya2Zsb3cudHM6XG4gKiBmb3JtYXQtcHJlZml4ZWQgZGV2YWx1ZSBkYXRhIChcImRldmxcIiArIGRldmFsdWUuc3RyaW5naWZ5IG91dHB1dCkuXG4gKi9cblxuaW1wb3J0IHsgZ2xvYmFsU2luZ2xldG9uIH0gZnJvbSAnQHdvcmtmbG93L3V0aWxzJztcbmltcG9ydCB7IGRldmFsdWVWbUNvZGVjIH0gZnJvbSAnLi9jb2RlYy1kZXZhbHVlLXZtLmpzJztcbmltcG9ydCB7IGlzRm9ybWF0UHJlZml4LCBTZXJpYWxpemF0aW9uRm9ybWF0IH0gZnJvbSAnLi90eXBlcy5qcyc7XG5cbmNvbnN0IEZPUk1BVF9QUkVGSVhfTEVOR1RIID0gNDtcbi8vIE9uIGBnbG9iYWxUaGlzYCAoc2VlIGBnbG9iYWxTaW5nbGV0b25gKSBzbyBvbmUgcHJvY2VzcyBidWlsZHMgb25lIHBhaXIsXG4vLyByYXRoZXIgdGhhbiBvbmUgcGVyIGJ1bmRsZXIgbGF5ZXIgdGhpcyBtb2R1bGUgaXMgY29tcGlsZWQgaW50by5cbmNvbnN0IGNvZGVjcyA9IGdsb2JhbFNpbmdsZXRvbignQHdvcmtmbG93L2NvcmUvL3ZtVGV4dENvZGVjcycsIDEsICgpID0+ICh7XG4gIGVuY29kZXI6IHVuZGVmaW5lZCBhcyB7IGVuY29kZShzOiBzdHJpbmcpOiBVaW50OEFycmF5IH0gfCB1bmRlZmluZWQsXG4gIGRlY29kZXI6IHVuZGVmaW5lZCBhcyB7IGRlY29kZShkOiBVaW50OEFycmF5KTogc3RyaW5nIH0gfCB1bmRlZmluZWQsXG59KSk7XG5mdW5jdGlvbiBnZXRFbmNvZGVyKCk6IHsgZW5jb2RlKHM6IHN0cmluZyk6IFVpbnQ4QXJyYXkgfSB7XG4gIGNvZGVjcy5lbmNvZGVyID8/PSBuZXcgKGdsb2JhbFRoaXMgYXMgYW55KS5UZXh0RW5jb2RlcigpO1xuICByZXR1cm4gY29kZWNzLmVuY29kZXIgYXMgeyBlbmNvZGUoczogc3RyaW5nKTogVWludDhBcnJheSB9O1xufVxuZnVuY3Rpb24gZ2V0RGVjb2RlcigpOiB7IGRlY29kZShkOiBVaW50OEFycmF5KTogc3RyaW5nIH0ge1xuICBjb2RlY3MuZGVjb2RlciA/Pz0gbmV3IChnbG9iYWxUaGlzIGFzIGFueSkuVGV4dERlY29kZXIoKTtcbiAgcmV0dXJuIGNvZGVjcy5kZWNvZGVyIGFzIHsgZGVjb2RlKGQ6IFVpbnQ4QXJyYXkpOiBzdHJpbmcgfTtcbn1cblxuLyoqXG4gKiBTZXJpYWxpemUgYSB2YWx1ZSB0byBmb3JtYXQtcHJlZml4ZWQgYnl0ZXMuXG4gKlxuICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIHRvIHNlcmlhbGl6ZVxuICogQHJldHVybnMgVWludDhBcnJheSB3aXRoIFwiZGV2bFwiIHByZWZpeCArIGRldmFsdWUgcGF5bG9hZFxuICovXG5leHBvcnQgZnVuY3Rpb24gc2VyaWFsaXplKHZhbHVlOiB1bmtub3duKTogVWludDhBcnJheSB7XG4gIGNvbnN0IHBheWxvYWQgPSBkZXZhbHVlVm1Db2RlYy5zZXJpYWxpemUodmFsdWUsICd3b3JrZmxvdycpO1xuICBjb25zdCBwcmVmaXggPSBnZXRFbmNvZGVyKCkuZW5jb2RlKFNlcmlhbGl6YXRpb25Gb3JtYXQuREVWQUxVRV9WMSk7XG4gIGNvbnN0IHJlc3VsdCA9IG5ldyBVaW50OEFycmF5KHByZWZpeC5sZW5ndGggKyBwYXlsb2FkLmxlbmd0aCk7XG4gIHJlc3VsdC5zZXQocHJlZml4LCAwKTtcbiAgcmVzdWx0LnNldChwYXlsb2FkLCBwcmVmaXgubGVuZ3RoKTtcbiAgcmV0dXJuIHJlc3VsdDtcbn1cblxuLyoqXG4gKiBEZXNlcmlhbGl6ZSBmb3JtYXQtcHJlZml4ZWQgYnl0ZXMgYmFjayB0byBhIHZhbHVlLlxuICpcbiAqIEBwYXJhbSBkYXRhIC0gVWludDhBcnJheSB3aXRoIGZvcm1hdCBwcmVmaXgsIG9yIGxlZ2FjeSBub24tYmluYXJ5IGRhdGFcbiAqIEByZXR1cm5zIFRoZSBkZXNlcmlhbGl6ZWQgdmFsdWVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGRlc2VyaWFsaXplKGRhdGE6IFVpbnQ4QXJyYXkgfCB1bmtub3duKTogdW5rbm93biB7XG4gIC8vIExlZ2FjeTogbm9uLWJpbmFyeSBkYXRhXG4gIGlmICghKGRhdGEgaW5zdGFuY2VvZiBVaW50OEFycmF5KSkge1xuICAgIGlmIChkZXZhbHVlVm1Db2RlYy5kZXNlcmlhbGl6ZUxlZ2FjeSkge1xuICAgICAgcmV0dXJuIGRldmFsdWVWbUNvZGVjLmRlc2VyaWFsaXplTGVnYWN5KGRhdGEsICd3b3JrZmxvdycpO1xuICAgIH1cbiAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAnQ2Fubm90IGRlc2VyaWFsaXplIG5vbi1iaW5hcnkgZGF0YSB3aXRob3V0IGxlZ2FjeSBzdXBwb3J0J1xuICAgICk7XG4gIH1cblxuICBpZiAoZGF0YS5sZW5ndGggPCBGT1JNQVRfUFJFRklYX0xFTkdUSCkge1xuICAgIHRocm93IG5ldyBFcnJvcignRGF0YSB0b28gc2hvcnQgdG8gY29udGFpbiBmb3JtYXQgcHJlZml4Jyk7XG4gIH1cblxuICBjb25zdCBwcmVmaXhTdHIgPSBnZXREZWNvZGVyKCkuZGVjb2RlKGRhdGEuc3ViYXJyYXkoMCwgRk9STUFUX1BSRUZJWF9MRU5HVEgpKTtcbiAgaWYgKCFpc0Zvcm1hdFByZWZpeChwcmVmaXhTdHIpKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGZvcm1hdCBwcmVmaXg6IFwiJHtwcmVmaXhTdHJ9XCJgKTtcbiAgfVxuXG4gIGlmIChwcmVmaXhTdHIgPT09IFNlcmlhbGl6YXRpb25Gb3JtYXQuREVWQUxVRV9WMSkge1xuICAgIGNvbnN0IHBheWxvYWQgPSBkYXRhLnN1YmFycmF5KEZPUk1BVF9QUkVGSVhfTEVOR1RIKTtcbiAgICByZXR1cm4gZGV2YWx1ZVZtQ29kZWMuZGVzZXJpYWxpemUocGF5bG9hZCwgJ3dvcmtmbG93Jyk7XG4gIH1cblxuICB0aHJvdyBuZXcgRXJyb3IoYFVuc3VwcG9ydGVkIHNlcmlhbGl6YXRpb24gZm9ybWF0OiAke3ByZWZpeFN0cn1gKTtcbn1cbiJdfQ==
@@ -21,7 +21,7 @@ export declare const SerializationFormat: {
21
21
  /** Encrypted payload (inner payload has its own format prefix after decryption) */
22
22
  readonly ENCRYPTED: "encr";
23
23
  /**
24
- * Sealed payload asymmetrically encrypted to a run's X25519 public key
24
+ * Sealed payload: asymmetrically encrypted to a run's X25519 public key
25
25
  * (inner payload has its own format prefix after opening).
26
26
  *
27
27
  * Written by cross-run writers that hold only the recipient run's public
@@ -63,28 +63,28 @@ export declare const ENCRYPTED_PLACEHOLDER = "\uD83D\uDD12 Encrypted";
63
63
  */
64
64
  export declare function isExpiredStub(data: unknown): boolean;
65
65
  /**
66
- * Check if a binary value is ciphertext either a symmetrically encrypted
66
+ * Check if a binary value is ciphertext: either a symmetrically encrypted
67
67
  * payload ('encr') or a sealed cross-run payload ('encp').
68
68
  *
69
69
  * This is the predicate display layers want: both schemes are opaque bytes
70
70
  * that must not be fed to the devalue parser, and both render as the same
71
71
  * "Encrypted" affordance in the CLI and web UI. Use {@link isSealedData} when
72
- * the *scheme* matters notably when choosing a decryption path, since a
72
+ * the *scheme* matters, notably when choosing a decryption path, since a
73
73
  * sealed payload needs the run's private scalar rather than its symmetric key.
74
74
  *
75
- * Browser-safe does not depend on the full serialization module.
75
+ * Browser-safe: does not depend on the full serialization module.
76
76
  */
77
77
  export declare function isEncryptedData(data: unknown): boolean;
78
78
  /**
79
79
  * Check if a binary value has the 'encp' format prefix, indicating a sealed
80
80
  * (asymmetrically encrypted) cross-run payload.
81
81
  *
82
- * Browser-safe does not depend on the full serialization module.
82
+ * Browser-safe: does not depend on the full serialization module.
83
83
  */
84
84
  export declare function isSealedData(data: unknown): boolean;
85
85
  /**
86
86
  * Check if a binary value has a compression format prefix ('gzip' or 'zstd').
87
- * Browser-safe does not depend on the full serialization module.
87
+ * Browser-safe: does not depend on the full serialization module.
88
88
  */
89
89
  export declare function isCompressedData(data: unknown): boolean;
90
90
  /**
@@ -109,7 +109,7 @@ export type Revivers = Record<string, (value: any) => any>;
109
109
  *
110
110
  * Encrypted data is intentionally left as a `Uint8Array` so that consumers
111
111
  * (CLI, web UI) can detect it with `isEncryptedData()` and decide how to
112
- * handle it the CLI replaces it with a styled placeholder, the web UI
112
+ * handle it: the CLI replaces it with a styled placeholder, the web UI
113
113
  * renders an "Encrypted" card with a Decrypt button that triggers
114
114
  * client-side decryption on demand.
115
115
  */
@@ -126,8 +126,8 @@ export declare function hydrateData(value: unknown, revivers: Revivers): unknown
126
126
  * @param key - The run's key material. Pass `RunPayloadKeys` (from
127
127
  * `deriveRunPayloadKeys`) to open both symmetric (`encr`) and sealed
128
128
  * (`encp`) payloads; a bare `CryptoKey` opens only the symmetric ones.
129
- * Typed as a read capability so a write-only seal target which could open
130
- * neither scheme is rejected at compile time rather than failing here.
129
+ * Typed as a read capability so a write-only seal target (which could open
130
+ * neither scheme) is rejected at compile time rather than failing here.
131
131
  */
132
132
  export declare function hydrateDataWithKey(value: unknown, revivers: Revivers, key: import('./serialization/encryption.js').DecryptionKey | undefined): Promise<unknown>;
133
133
  /** Marker for stream reference objects rendered as links in the UI */
@@ -155,7 +155,7 @@ export declare const CLASS_INSTANCE_REF_TYPE = "__workflow_class_instance_ref__"
155
155
  /**
156
156
  * A class instance reference for o11y display.
157
157
  *
158
- * Browser-safe base class no `util.inspect.custom`. Environment-specific
158
+ * Browser-safe base class: no `util.inspect.custom`. Environment-specific
159
159
  * rendering (CLI inspect, web component) is handled by each consumer.
160
160
  */
161
161
  export declare class ClassInstanceRef {
@@ -206,7 +206,7 @@ export declare const observabilityRevivers: Revivers;
206
206
  * Dispatches by resource type (step, hook, event, workflow) and calls
207
207
  * `hydrateData` with the provided revivers for each data field.
208
208
  *
209
- * Each environment (web, CLI) provides its own revivers this function
209
+ * Each environment (web, CLI) provides its own revivers; this function
210
210
  * only handles the dispatch logic and field mapping.
211
211
  */
212
212
  export declare function hydrateResourceIO<T extends {
@@ -1 +1 @@
1
- {"version":3,"file":"serialization-format.d.ts","sourceRoot":"","sources":["../src/serialization-format.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"serialization-format.d.ts","sourceRoot":"","sources":["../src/serialization-format.ts"],"names":[],"mappings":"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"}