footprintjs 4.16.0 → 4.17.2

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 (188) hide show
  1. package/AGENTS.md +567 -82
  2. package/CLAUDE.md +57 -0
  3. package/README.md +2 -0
  4. package/dist/advanced.js +4 -2
  5. package/dist/detach.js +78 -0
  6. package/dist/esm/advanced.js +2 -1
  7. package/dist/esm/detach.js +57 -0
  8. package/dist/esm/lib/builder/FlowChartBuilder.js +171 -61
  9. package/dist/esm/lib/contract/openapi.js +4 -5
  10. package/dist/esm/lib/contract/schema.js +115 -4
  11. package/dist/esm/lib/decide/decide.js +4 -5
  12. package/dist/esm/lib/decide/evidence.js +3 -2
  13. package/dist/esm/lib/detach/drivers/immediate.js +66 -0
  14. package/dist/esm/lib/detach/drivers/microtaskBatch.js +113 -0
  15. package/dist/esm/lib/detach/drivers/sendBeacon.js +78 -0
  16. package/dist/esm/lib/detach/drivers/setImmediate.js +81 -0
  17. package/dist/esm/lib/detach/drivers/setTimeout.js +69 -0
  18. package/dist/esm/lib/detach/drivers/workerThread.js +117 -0
  19. package/dist/esm/lib/detach/flush.js +91 -0
  20. package/dist/esm/lib/detach/handle.js +134 -0
  21. package/dist/esm/lib/detach/registry.js +97 -0
  22. package/dist/esm/lib/detach/runChild.js +40 -0
  23. package/dist/esm/lib/detach/spawn.js +86 -0
  24. package/dist/esm/lib/detach/types.js +37 -0
  25. package/dist/esm/lib/engine/errors/errorInfo.js +4 -4
  26. package/dist/esm/lib/engine/graph/StageNode.js +2 -2
  27. package/dist/esm/lib/engine/handlers/ChildrenExecutor.js +9 -8
  28. package/dist/esm/lib/engine/handlers/ContinuationResolver.js +12 -9
  29. package/dist/esm/lib/engine/handlers/DeciderHandler.js +7 -8
  30. package/dist/esm/lib/engine/handlers/ExtractorRunner.js +14 -8
  31. package/dist/esm/lib/engine/handlers/NodeResolver.js +5 -3
  32. package/dist/esm/lib/engine/handlers/RuntimeStructureManager.js +11 -14
  33. package/dist/esm/lib/engine/handlers/SelectorHandler.js +9 -9
  34. package/dist/esm/lib/engine/handlers/StageRunner.js +9 -11
  35. package/dist/esm/lib/engine/handlers/SubflowExecutor.js +13 -12
  36. package/dist/esm/lib/engine/handlers/SubflowInputMapper.js +4 -4
  37. package/dist/esm/lib/engine/narrative/CombinedNarrativeRecorder.js +85 -96
  38. package/dist/esm/lib/engine/narrative/FlowRecorderDispatcher.js +18 -36
  39. package/dist/esm/lib/engine/narrative/NarrativeFlowRecorder.js +6 -5
  40. package/dist/esm/lib/engine/narrative/recorders/AdaptiveNarrativeFlowRecorder.js +7 -6
  41. package/dist/esm/lib/engine/narrative/recorders/ManifestFlowRecorder.js +10 -10
  42. package/dist/esm/lib/engine/narrative/recorders/MilestoneNarrativeFlowRecorder.js +5 -3
  43. package/dist/esm/lib/engine/narrative/recorders/ProgressiveNarrativeFlowRecorder.js +4 -3
  44. package/dist/esm/lib/engine/narrative/recorders/RLENarrativeFlowRecorder.js +4 -4
  45. package/dist/esm/lib/engine/narrative/recorders/SeparateNarrativeFlowRecorder.js +5 -6
  46. package/dist/esm/lib/engine/narrative/recorders/SilentNarrativeFlowRecorder.js +5 -6
  47. package/dist/esm/lib/engine/narrative/recorders/WindowedNarrativeFlowRecorder.js +5 -3
  48. package/dist/esm/lib/engine/traversal/FlowchartTraverser.js +97 -71
  49. package/dist/esm/lib/memory/DiagnosticCollector.js +6 -8
  50. package/dist/esm/lib/memory/EventLog.js +5 -3
  51. package/dist/esm/lib/memory/SharedMemory.js +3 -2
  52. package/dist/esm/lib/memory/StageContext.js +44 -14
  53. package/dist/esm/lib/memory/TransactionBuffer.js +9 -8
  54. package/dist/esm/lib/memory/backtrack.js +3 -4
  55. package/dist/esm/lib/memory/commitLogUtils.js +2 -2
  56. package/dist/esm/lib/memory/utils.js +2 -3
  57. package/dist/esm/lib/pause/types.js +33 -14
  58. package/dist/esm/lib/reactive/createTypedScope.js +10 -8
  59. package/dist/esm/lib/reactive/types.js +3 -1
  60. package/dist/esm/lib/recorder/BoundaryStateTracker.js +263 -0
  61. package/dist/esm/lib/recorder/CompositeRecorder.js +3 -1
  62. package/dist/esm/lib/recorder/InOutRecorder.js +5 -6
  63. package/dist/esm/lib/recorder/KeyedRecorder.js +2 -4
  64. package/dist/esm/lib/recorder/QualityRecorder.js +15 -14
  65. package/dist/esm/lib/recorder/SequenceRecorder.js +11 -12
  66. package/dist/esm/lib/recorder/TopologyRecorder.js +36 -40
  67. package/dist/esm/lib/recorder/index.js +2 -1
  68. package/dist/esm/lib/recorder/qualityTrace.js +4 -5
  69. package/dist/esm/lib/runner/ExecutionRuntime.js +20 -4
  70. package/dist/esm/lib/runner/FlowChartExecutor.js +99 -55
  71. package/dist/esm/lib/runner/RunContext.js +5 -3
  72. package/dist/esm/lib/runner/RunnableChart.js +7 -9
  73. package/dist/esm/lib/runner/getSubtreeSnapshot.js +4 -5
  74. package/dist/esm/lib/schema/errors.js +4 -3
  75. package/dist/esm/lib/schema/validate.js +4 -5
  76. package/dist/esm/lib/scope/ScopeFacade.js +52 -35
  77. package/dist/esm/lib/scope/providers/baseStateCompatible.js +9 -9
  78. package/dist/esm/lib/scope/providers/guards.js +2 -2
  79. package/dist/esm/lib/scope/recorders/DebugRecorder.js +9 -7
  80. package/dist/esm/lib/scope/recorders/MetricRecorder.js +10 -8
  81. package/dist/esm/lib/scope/state/zod/defineScopeFromZod.js +2 -3
  82. package/dist/esm/lib/scope/state/zod/resolver.js +2 -3
  83. package/dist/esm/lib/scope/state/zod/scopeFactory.js +16 -20
  84. package/dist/esm/lib/scope/state/zod/utils/validateHelper.js +57 -14
  85. package/dist/esm/trace.js +4 -1
  86. package/dist/lib/builder/FlowChartBuilder.js +171 -61
  87. package/dist/lib/contract/openapi.js +4 -5
  88. package/dist/lib/contract/schema.js +115 -4
  89. package/dist/lib/decide/decide.js +4 -5
  90. package/dist/lib/decide/evidence.js +3 -2
  91. package/dist/lib/detach/drivers/immediate.js +70 -0
  92. package/dist/lib/detach/drivers/microtaskBatch.js +117 -0
  93. package/dist/lib/detach/drivers/sendBeacon.js +82 -0
  94. package/dist/lib/detach/drivers/setImmediate.js +85 -0
  95. package/dist/lib/detach/drivers/setTimeout.js +73 -0
  96. package/dist/lib/detach/drivers/workerThread.js +121 -0
  97. package/dist/lib/detach/flush.js +95 -0
  98. package/dist/lib/detach/handle.js +140 -0
  99. package/dist/lib/detach/registry.js +106 -0
  100. package/dist/lib/detach/runChild.js +67 -0
  101. package/dist/lib/detach/spawn.js +92 -0
  102. package/dist/lib/detach/types.js +38 -0
  103. package/dist/lib/engine/errors/errorInfo.js +4 -4
  104. package/dist/lib/engine/graph/StageNode.js +2 -2
  105. package/dist/lib/engine/handlers/ChildrenExecutor.js +9 -8
  106. package/dist/lib/engine/handlers/ContinuationResolver.js +12 -9
  107. package/dist/lib/engine/handlers/DeciderHandler.js +7 -8
  108. package/dist/lib/engine/handlers/ExtractorRunner.js +14 -8
  109. package/dist/lib/engine/handlers/NodeResolver.js +5 -3
  110. package/dist/lib/engine/handlers/RuntimeStructureManager.js +11 -14
  111. package/dist/lib/engine/handlers/SelectorHandler.js +9 -9
  112. package/dist/lib/engine/handlers/StageRunner.js +9 -11
  113. package/dist/lib/engine/handlers/SubflowExecutor.js +13 -12
  114. package/dist/lib/engine/handlers/SubflowInputMapper.js +4 -4
  115. package/dist/lib/engine/narrative/CombinedNarrativeRecorder.js +85 -96
  116. package/dist/lib/engine/narrative/FlowRecorderDispatcher.js +18 -36
  117. package/dist/lib/engine/narrative/NarrativeFlowRecorder.js +6 -5
  118. package/dist/lib/engine/narrative/recorders/AdaptiveNarrativeFlowRecorder.js +7 -6
  119. package/dist/lib/engine/narrative/recorders/ManifestFlowRecorder.js +10 -10
  120. package/dist/lib/engine/narrative/recorders/MilestoneNarrativeFlowRecorder.js +5 -3
  121. package/dist/lib/engine/narrative/recorders/ProgressiveNarrativeFlowRecorder.js +4 -3
  122. package/dist/lib/engine/narrative/recorders/RLENarrativeFlowRecorder.js +4 -4
  123. package/dist/lib/engine/narrative/recorders/SeparateNarrativeFlowRecorder.js +5 -6
  124. package/dist/lib/engine/narrative/recorders/SilentNarrativeFlowRecorder.js +5 -6
  125. package/dist/lib/engine/narrative/recorders/WindowedNarrativeFlowRecorder.js +5 -3
  126. package/dist/lib/engine/traversal/FlowchartTraverser.js +97 -71
  127. package/dist/lib/memory/DiagnosticCollector.js +6 -8
  128. package/dist/lib/memory/EventLog.js +5 -3
  129. package/dist/lib/memory/SharedMemory.js +3 -2
  130. package/dist/lib/memory/StageContext.js +44 -14
  131. package/dist/lib/memory/TransactionBuffer.js +9 -8
  132. package/dist/lib/memory/backtrack.js +3 -4
  133. package/dist/lib/memory/commitLogUtils.js +2 -2
  134. package/dist/lib/memory/utils.js +2 -3
  135. package/dist/lib/pause/types.js +33 -14
  136. package/dist/lib/reactive/createTypedScope.js +10 -8
  137. package/dist/lib/reactive/types.js +3 -1
  138. package/dist/lib/recorder/BoundaryStateTracker.js +267 -0
  139. package/dist/lib/recorder/CompositeRecorder.js +3 -1
  140. package/dist/lib/recorder/InOutRecorder.js +5 -6
  141. package/dist/lib/recorder/KeyedRecorder.js +2 -4
  142. package/dist/lib/recorder/QualityRecorder.js +15 -14
  143. package/dist/lib/recorder/SequenceRecorder.js +11 -12
  144. package/dist/lib/recorder/TopologyRecorder.js +36 -40
  145. package/dist/lib/recorder/index.js +4 -2
  146. package/dist/lib/recorder/qualityTrace.js +4 -5
  147. package/dist/lib/runner/ExecutionRuntime.js +20 -4
  148. package/dist/lib/runner/FlowChartExecutor.js +99 -55
  149. package/dist/lib/runner/RunContext.js +5 -3
  150. package/dist/lib/runner/RunnableChart.js +7 -9
  151. package/dist/lib/runner/getSubtreeSnapshot.js +4 -5
  152. package/dist/lib/schema/errors.js +4 -3
  153. package/dist/lib/schema/validate.js +4 -5
  154. package/dist/lib/scope/ScopeFacade.js +52 -35
  155. package/dist/lib/scope/providers/baseStateCompatible.js +9 -9
  156. package/dist/lib/scope/providers/guards.js +2 -2
  157. package/dist/lib/scope/recorders/DebugRecorder.js +9 -7
  158. package/dist/lib/scope/recorders/MetricRecorder.js +10 -8
  159. package/dist/lib/scope/state/zod/defineScopeFromZod.js +2 -3
  160. package/dist/lib/scope/state/zod/resolver.js +2 -3
  161. package/dist/lib/scope/state/zod/scopeFactory.js +16 -20
  162. package/dist/lib/scope/state/zod/utils/validateHelper.js +57 -14
  163. package/dist/trace.js +6 -2
  164. package/dist/types/advanced.d.ts +1 -0
  165. package/dist/types/detach.d.ts +59 -0
  166. package/dist/types/lib/builder/FlowChartBuilder.d.ts +81 -0
  167. package/dist/types/lib/detach/drivers/immediate.d.ts +39 -0
  168. package/dist/types/lib/detach/drivers/microtaskBatch.d.ts +57 -0
  169. package/dist/types/lib/detach/drivers/sendBeacon.d.ts +38 -0
  170. package/dist/types/lib/detach/drivers/setImmediate.d.ts +32 -0
  171. package/dist/types/lib/detach/drivers/setTimeout.d.ts +34 -0
  172. package/dist/types/lib/detach/drivers/workerThread.d.ts +50 -0
  173. package/dist/types/lib/detach/flush.d.ts +62 -0
  174. package/dist/types/lib/detach/handle.d.ts +83 -0
  175. package/dist/types/lib/detach/registry.d.ts +82 -0
  176. package/dist/types/lib/detach/runChild.d.ts +41 -0
  177. package/dist/types/lib/detach/spawn.d.ts +64 -0
  178. package/dist/types/lib/detach/types.d.ts +200 -0
  179. package/dist/types/lib/engine/traversal/FlowchartTraverser.d.ts +0 -1
  180. package/dist/types/lib/engine/types.d.ts +0 -1
  181. package/dist/types/lib/reactive/types.d.ts +4 -0
  182. package/dist/types/lib/recorder/BoundaryStateTracker.d.ts +215 -0
  183. package/dist/types/lib/recorder/index.d.ts +1 -0
  184. package/dist/types/lib/runner/FlowChartExecutor.d.ts +28 -0
  185. package/dist/types/lib/scope/ScopeFacade.d.ts +4 -0
  186. package/dist/types/lib/scope/state/zod/utils/validateHelper.d.ts +13 -1
  187. package/dist/types/trace.d.ts +1 -0
  188. package/package.json +6 -1
@@ -18,10 +18,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.RLENarrativeFlowRecorder = void 0;
19
19
  const NarrativeFlowRecorder_js_1 = require("../NarrativeFlowRecorder.js");
20
20
  class RLENarrativeFlowRecorder extends NarrativeFlowRecorder_js_1.NarrativeFlowRecorder {
21
+ currentRun = null;
22
+ completedRuns = [];
21
23
  constructor(id) {
22
- super(id !== null && id !== void 0 ? id : 'narrative-rle');
23
- this.currentRun = null;
24
- this.completedRuns = [];
24
+ super(id ?? 'narrative-rle');
25
25
  }
26
26
  onLoop(event) {
27
27
  // Don't call super — we handle sentence generation ourselves
@@ -75,4 +75,4 @@ class RLENarrativeFlowRecorder extends NarrativeFlowRecorder_js_1.NarrativeFlowR
75
75
  }
76
76
  }
77
77
  exports.RLENarrativeFlowRecorder = RLENarrativeFlowRecorder;
78
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUkxFTmFycmF0aXZlRmxvd1JlY29yZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9lbmdpbmUvbmFycmF0aXZlL3JlY29yZGVycy9STEVOYXJyYXRpdmVGbG93UmVjb3JkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHOzs7QUFFSCwwRUFBb0U7QUFVcEUsTUFBYSx3QkFBeUIsU0FBUSxnREFBcUI7SUFJakUsWUFBWSxFQUFXO1FBQ3JCLEtBQUssQ0FBQyxFQUFFLGFBQUYsRUFBRSxjQUFGLEVBQUUsR0FBSSxlQUFlLENBQUMsQ0FBQztRQUp2QixlQUFVLEdBQW9CLElBQUksQ0FBQztRQUNuQyxrQkFBYSxHQUFlLEVBQUUsQ0FBQztJQUl2QyxDQUFDO0lBRVEsTUFBTSxDQUFDLEtBQW9CO1FBQ2xDLDZEQUE2RDtRQUU3RCxJQUFJLElBQUksQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEtBQUssS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQy9ELHlCQUF5QjtZQUN6QixJQUFJLENBQUMsVUFBVSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDO1FBQ2pELENBQUM7YUFBTSxDQUFDO1lBQ04sdUNBQXVDO1lBQ3ZDLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO2dCQUNwQixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDM0MsQ0FBQztZQUNELElBQUksQ0FBQyxVQUFVLEdBQUc7Z0JBQ2hCLE1BQU0sRUFBRSxLQUFLLENBQUMsTUFBTTtnQkFDcEIsY0FBYyxFQUFFLEtBQUssQ0FBQyxTQUFTO2dCQUMvQixZQUFZLEVBQUUsS0FBSyxDQUFDLFNBQVM7Z0JBQzdCLFdBQVcsRUFBRSxLQUFLLENBQUMsV0FBVzthQUMvQixDQUFDO1FBQ0osQ0FBQztJQUNILENBQUM7SUFFUSxZQUFZO1FBQ25CLHdCQUF3QjtRQUN4QixNQUFNLElBQUksR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3JDLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3BCLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzdCLENBQUM7UUFFRCxNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUM7UUFFbEMsdUJBQXVCO1FBQ3ZCLE1BQU0sU0FBUyxHQUFhLEVBQUUsQ0FBQztRQUMvQixLQUFLLE1BQU0sR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1lBQ3ZCLE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxZQUFZLEdBQUcsR0FBRyxDQUFDLGNBQWMsR0FBRyxDQUFDLENBQUM7WUFDeEQsSUFBSSxLQUFLLEtBQUssQ0FBQyxFQUFFLENBQUM7Z0JBQ2hCLDBDQUEwQztnQkFDMUMsSUFBSSxHQUFHLENBQUMsV0FBVyxFQUFFLENBQUM7b0JBQ3BCLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxHQUFHLENBQUMsY0FBYyxLQUFLLEdBQUcsQ0FBQyxXQUFXLFNBQVMsQ0FBQyxDQUFDO2dCQUM3RSxDQUFDO3FCQUFNLENBQUM7b0JBQ04sU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLEdBQUcsQ0FBQyxjQUFjLFlBQVksR0FBRyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7Z0JBQ3pFLENBQUM7WUFDSCxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sU0FBUyxDQUFDLElBQUksQ0FDWixrQkFBa0IsR0FBRyxDQUFDLE1BQU0sSUFBSSxLQUFLLGtCQUFrQixHQUFHLENBQUMsY0FBYyxJQUFJLEdBQUcsQ0FBQyxZQUFZLElBQUksQ0FDbEcsQ0FBQztZQUNKLENBQUM7UUFDSCxDQUFDO1FBRUQsT0FBTyxDQUFDLEdBQUcsSUFBSSxFQUFFLEdBQUcsU0FBUyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVRLEtBQUs7UUFDWixLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDZCxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztRQUN2QixJQUFJLENBQUMsYUFBYSxHQUFHLEVBQUUsQ0FBQztJQUMxQixDQUFDO0NBQ0Y7QUEvREQsNERBK0RDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBSTEVOYXJyYXRpdmVGbG93UmVjb3JkZXIg4oCUIFJ1bi1MZW5ndGggRW5jb2RpbmcgZm9yIGNvbnNlY3V0aXZlIGlkZW50aWNhbCBsb29wIHRhcmdldHMuXG4gKlxuICogSW5zdGVhZCBvZiBlbWl0dGluZyBvbmUgc2VudGVuY2UgcGVyIGl0ZXJhdGlvbiwgY29sbGFwc2VzIGNvbnNlY3V0aXZlIGxvb3BzXG4gKiB0aHJvdWdoIHRoZSBzYW1lIHRhcmdldCBpbnRvIGEgc2luZ2xlIFwiTG9vcGVkIE4gdGltZXMgdGhyb3VnaCBYXCIgc2VudGVuY2UuXG4gKlxuICogQmVzdCBmb3I6IFNpbXBsZSByZXRyeSBsb29wcyB3aGVyZSBldmVyeSBpdGVyYXRpb24gbG9va3MgdGhlIHNhbWUuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGV4ZWN1dG9yLmF0dGFjaEZsb3dSZWNvcmRlcihuZXcgUkxFTmFycmF0aXZlRmxvd1JlY29yZGVyKCkpO1xuICogLy8gSW5zdGVhZCBvZiA1MCBcIk9uIHBhc3MgTi4uLlwiIGxpbmVzOlxuICogLy8gXCJMb29wZWQgdGhyb3VnaCBBc2tMTE0gNTAgdGltZXMgKHBhc3NlcyAx4oCTNTApLlwiXG4gKiBgYGBcbiAqL1xuXG5pbXBvcnQgeyBOYXJyYXRpdmVGbG93UmVjb3JkZXIgfSBmcm9tICcuLi9OYXJyYXRpdmVGbG93UmVjb3JkZXIuanMnO1xuaW1wb3J0IHR5cGUgeyBGbG93TG9vcEV2ZW50IH0gZnJvbSAnLi4vdHlwZXMuanMnO1xuXG5pbnRlcmZhY2UgUnVuR3JvdXAge1xuICB0YXJnZXQ6IHN0cmluZztcbiAgc3RhcnRJdGVyYXRpb246IG51bWJlcjtcbiAgZW5kSXRlcmF0aW9uOiBudW1iZXI7XG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgUkxFTmFycmF0aXZlRmxvd1JlY29yZGVyIGV4dGVuZHMgTmFycmF0aXZlRmxvd1JlY29yZGVyIHtcbiAgcHJpdmF0ZSBjdXJyZW50UnVuOiBSdW5Hcm91cCB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIGNvbXBsZXRlZFJ1bnM6IFJ1bkdyb3VwW10gPSBbXTtcblxuICBjb25zdHJ1Y3RvcihpZD86IHN0cmluZykge1xuICAgIHN1cGVyKGlkID8/ICduYXJyYXRpdmUtcmxlJyk7XG4gIH1cblxuICBvdmVycmlkZSBvbkxvb3AoZXZlbnQ6IEZsb3dMb29wRXZlbnQpOiB2b2lkIHtcbiAgICAvLyBEb24ndCBjYWxsIHN1cGVyIOKAlCB3ZSBoYW5kbGUgc2VudGVuY2UgZ2VuZXJhdGlvbiBvdXJzZWx2ZXNcblxuICAgIGlmICh0aGlzLmN1cnJlbnRSdW4gJiYgdGhpcy5jdXJyZW50UnVuLnRhcmdldCA9PT0gZXZlbnQudGFyZ2V0KSB7XG4gICAgICAvLyBFeHRlbmQgdGhlIGN1cnJlbnQgcnVuXG4gICAgICB0aGlzLmN1cnJlbnRSdW4uZW5kSXRlcmF0aW9uID0gZXZlbnQuaXRlcmF0aW9uO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBGbHVzaCBwcmV2aW91cyBydW4gYW5kIHN0YXJ0IG5ldyBvbmVcbiAgICAgIGlmICh0aGlzLmN1cnJlbnRSdW4pIHtcbiAgICAgICAgdGhpcy5jb21wbGV0ZWRSdW5zLnB1c2godGhpcy5jdXJyZW50UnVuKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuY3VycmVudFJ1biA9IHtcbiAgICAgICAgdGFyZ2V0OiBldmVudC50YXJnZXQsXG4gICAgICAgIHN0YXJ0SXRlcmF0aW9uOiBldmVudC5pdGVyYXRpb24sXG4gICAgICAgIGVuZEl0ZXJhdGlvbjogZXZlbnQuaXRlcmF0aW9uLFxuICAgICAgICBkZXNjcmlwdGlvbjogZXZlbnQuZGVzY3JpcHRpb24sXG4gICAgICB9O1xuICAgIH1cbiAgfVxuXG4gIG92ZXJyaWRlIGdldFNlbnRlbmNlcygpOiBzdHJpbmdbXSB7XG4gICAgLy8gRmx1c2ggYW55IHBlbmRpbmcgcnVuXG4gICAgY29uc3QgcnVucyA9IFsuLi50aGlzLmNvbXBsZXRlZFJ1bnNdO1xuICAgIGlmICh0aGlzLmN1cnJlbnRSdW4pIHtcbiAgICAgIHJ1bnMucHVzaCh0aGlzLmN1cnJlbnRSdW4pO1xuICAgIH1cblxuICAgIGNvbnN0IGJhc2UgPSBzdXBlci5nZXRTZW50ZW5jZXMoKTtcblxuICAgIC8vIEluamVjdCBSTEUgc3VtbWFyaWVzXG4gICAgY29uc3Qgc3VtbWFyaWVzOiBzdHJpbmdbXSA9IFtdO1xuICAgIGZvciAoY29uc3QgcnVuIG9mIHJ1bnMpIHtcbiAgICAgIGNvbnN0IGNvdW50ID0gcnVuLmVuZEl0ZXJhdGlvbiAtIHJ1bi5zdGFydEl0ZXJhdGlvbiArIDE7XG4gICAgICBpZiAoY291bnQgPT09IDEpIHtcbiAgICAgICAgLy8gU2luZ2xlIGl0ZXJhdGlvbiDigJQgZW1pdCBub3JtYWwgc2VudGVuY2VcbiAgICAgICAgaWYgKHJ1bi5kZXNjcmlwdGlvbikge1xuICAgICAgICAgIHN1bW1hcmllcy5wdXNoKGBPbiBwYXNzICR7cnVuLnN0YXJ0SXRlcmF0aW9ufTogJHtydW4uZGVzY3JpcHRpb259IGFnYWluLmApO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHN1bW1hcmllcy5wdXNoKGBPbiBwYXNzICR7cnVuLnN0YXJ0SXRlcmF0aW9ufSB0aHJvdWdoICR7cnVuLnRhcmdldH0uYCk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHN1bW1hcmllcy5wdXNoKFxuICAgICAgICAgIGBMb29wZWQgdGhyb3VnaCAke3J1bi50YXJnZXR9ICR7Y291bnR9IHRpbWVzIChwYXNzZXMgJHtydW4uc3RhcnRJdGVyYXRpb2594oCTJHtydW4uZW5kSXRlcmF0aW9ufSkuYCxcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gWy4uLmJhc2UsIC4uLnN1bW1hcmllc107XG4gIH1cblxuICBvdmVycmlkZSBjbGVhcigpOiB2b2lkIHtcbiAgICBzdXBlci5jbGVhcigpO1xuICAgIHRoaXMuY3VycmVudFJ1biA9IG51bGw7XG4gICAgdGhpcy5jb21wbGV0ZWRSdW5zID0gW107XG4gIH1cbn1cbiJdfQ==
78
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUkxFTmFycmF0aXZlRmxvd1JlY29yZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9lbmdpbmUvbmFycmF0aXZlL3JlY29yZGVycy9STEVOYXJyYXRpdmVGbG93UmVjb3JkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHOzs7QUFFSCwwRUFBb0U7QUFVcEUsTUFBYSx3QkFBeUIsU0FBUSxnREFBcUI7SUFDekQsVUFBVSxHQUFvQixJQUFJLENBQUM7SUFDbkMsYUFBYSxHQUFlLEVBQUUsQ0FBQztJQUV2QyxZQUFZLEVBQVc7UUFDckIsS0FBSyxDQUFDLEVBQUUsSUFBSSxlQUFlLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRVEsTUFBTSxDQUFDLEtBQW9CO1FBQ2xDLDZEQUE2RDtRQUU3RCxJQUFJLElBQUksQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEtBQUssS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQy9ELHlCQUF5QjtZQUN6QixJQUFJLENBQUMsVUFBVSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDO1FBQ2pELENBQUM7YUFBTSxDQUFDO1lBQ04sdUNBQXVDO1lBQ3ZDLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO2dCQUNwQixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDM0MsQ0FBQztZQUNELElBQUksQ0FBQyxVQUFVLEdBQUc7Z0JBQ2hCLE1BQU0sRUFBRSxLQUFLLENBQUMsTUFBTTtnQkFDcEIsY0FBYyxFQUFFLEtBQUssQ0FBQyxTQUFTO2dCQUMvQixZQUFZLEVBQUUsS0FBSyxDQUFDLFNBQVM7Z0JBQzdCLFdBQVcsRUFBRSxLQUFLLENBQUMsV0FBVzthQUMvQixDQUFDO1FBQ0osQ0FBQztJQUNILENBQUM7SUFFUSxZQUFZO1FBQ25CLHdCQUF3QjtRQUN4QixNQUFNLElBQUksR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3JDLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3BCLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzdCLENBQUM7UUFFRCxNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUM7UUFFbEMsdUJBQXVCO1FBQ3ZCLE1BQU0sU0FBUyxHQUFhLEVBQUUsQ0FBQztRQUMvQixLQUFLLE1BQU0sR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1lBQ3ZCLE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxZQUFZLEdBQUcsR0FBRyxDQUFDLGNBQWMsR0FBRyxDQUFDLENBQUM7WUFDeEQsSUFBSSxLQUFLLEtBQUssQ0FBQyxFQUFFLENBQUM7Z0JBQ2hCLDBDQUEwQztnQkFDMUMsSUFBSSxHQUFHLENBQUMsV0FBVyxFQUFFLENBQUM7b0JBQ3BCLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxHQUFHLENBQUMsY0FBYyxLQUFLLEdBQUcsQ0FBQyxXQUFXLFNBQVMsQ0FBQyxDQUFDO2dCQUM3RSxDQUFDO3FCQUFNLENBQUM7b0JBQ04sU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLEdBQUcsQ0FBQyxjQUFjLFlBQVksR0FBRyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7Z0JBQ3pFLENBQUM7WUFDSCxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sU0FBUyxDQUFDLElBQUksQ0FDWixrQkFBa0IsR0FBRyxDQUFDLE1BQU0sSUFBSSxLQUFLLGtCQUFrQixHQUFHLENBQUMsY0FBYyxJQUFJLEdBQUcsQ0FBQyxZQUFZLElBQUksQ0FDbEcsQ0FBQztZQUNKLENBQUM7UUFDSCxDQUFDO1FBRUQsT0FBTyxDQUFDLEdBQUcsSUFBSSxFQUFFLEdBQUcsU0FBUyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVRLEtBQUs7UUFDWixLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDZCxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztRQUN2QixJQUFJLENBQUMsYUFBYSxHQUFHLEVBQUUsQ0FBQztJQUMxQixDQUFDO0NBQ0Y7QUEvREQsNERBK0RDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBSTEVOYXJyYXRpdmVGbG93UmVjb3JkZXIg4oCUIFJ1bi1MZW5ndGggRW5jb2RpbmcgZm9yIGNvbnNlY3V0aXZlIGlkZW50aWNhbCBsb29wIHRhcmdldHMuXG4gKlxuICogSW5zdGVhZCBvZiBlbWl0dGluZyBvbmUgc2VudGVuY2UgcGVyIGl0ZXJhdGlvbiwgY29sbGFwc2VzIGNvbnNlY3V0aXZlIGxvb3BzXG4gKiB0aHJvdWdoIHRoZSBzYW1lIHRhcmdldCBpbnRvIGEgc2luZ2xlIFwiTG9vcGVkIE4gdGltZXMgdGhyb3VnaCBYXCIgc2VudGVuY2UuXG4gKlxuICogQmVzdCBmb3I6IFNpbXBsZSByZXRyeSBsb29wcyB3aGVyZSBldmVyeSBpdGVyYXRpb24gbG9va3MgdGhlIHNhbWUuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGV4ZWN1dG9yLmF0dGFjaEZsb3dSZWNvcmRlcihuZXcgUkxFTmFycmF0aXZlRmxvd1JlY29yZGVyKCkpO1xuICogLy8gSW5zdGVhZCBvZiA1MCBcIk9uIHBhc3MgTi4uLlwiIGxpbmVzOlxuICogLy8gXCJMb29wZWQgdGhyb3VnaCBBc2tMTE0gNTAgdGltZXMgKHBhc3NlcyAx4oCTNTApLlwiXG4gKiBgYGBcbiAqL1xuXG5pbXBvcnQgeyBOYXJyYXRpdmVGbG93UmVjb3JkZXIgfSBmcm9tICcuLi9OYXJyYXRpdmVGbG93UmVjb3JkZXIuanMnO1xuaW1wb3J0IHR5cGUgeyBGbG93TG9vcEV2ZW50IH0gZnJvbSAnLi4vdHlwZXMuanMnO1xuXG5pbnRlcmZhY2UgUnVuR3JvdXAge1xuICB0YXJnZXQ6IHN0cmluZztcbiAgc3RhcnRJdGVyYXRpb246IG51bWJlcjtcbiAgZW5kSXRlcmF0aW9uOiBudW1iZXI7XG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgUkxFTmFycmF0aXZlRmxvd1JlY29yZGVyIGV4dGVuZHMgTmFycmF0aXZlRmxvd1JlY29yZGVyIHtcbiAgcHJpdmF0ZSBjdXJyZW50UnVuOiBSdW5Hcm91cCB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIGNvbXBsZXRlZFJ1bnM6IFJ1bkdyb3VwW10gPSBbXTtcblxuICBjb25zdHJ1Y3RvcihpZD86IHN0cmluZykge1xuICAgIHN1cGVyKGlkID8/ICduYXJyYXRpdmUtcmxlJyk7XG4gIH1cblxuICBvdmVycmlkZSBvbkxvb3AoZXZlbnQ6IEZsb3dMb29wRXZlbnQpOiB2b2lkIHtcbiAgICAvLyBEb24ndCBjYWxsIHN1cGVyIOKAlCB3ZSBoYW5kbGUgc2VudGVuY2UgZ2VuZXJhdGlvbiBvdXJzZWx2ZXNcblxuICAgIGlmICh0aGlzLmN1cnJlbnRSdW4gJiYgdGhpcy5jdXJyZW50UnVuLnRhcmdldCA9PT0gZXZlbnQudGFyZ2V0KSB7XG4gICAgICAvLyBFeHRlbmQgdGhlIGN1cnJlbnQgcnVuXG4gICAgICB0aGlzLmN1cnJlbnRSdW4uZW5kSXRlcmF0aW9uID0gZXZlbnQuaXRlcmF0aW9uO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBGbHVzaCBwcmV2aW91cyBydW4gYW5kIHN0YXJ0IG5ldyBvbmVcbiAgICAgIGlmICh0aGlzLmN1cnJlbnRSdW4pIHtcbiAgICAgICAgdGhpcy5jb21wbGV0ZWRSdW5zLnB1c2godGhpcy5jdXJyZW50UnVuKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuY3VycmVudFJ1biA9IHtcbiAgICAgICAgdGFyZ2V0OiBldmVudC50YXJnZXQsXG4gICAgICAgIHN0YXJ0SXRlcmF0aW9uOiBldmVudC5pdGVyYXRpb24sXG4gICAgICAgIGVuZEl0ZXJhdGlvbjogZXZlbnQuaXRlcmF0aW9uLFxuICAgICAgICBkZXNjcmlwdGlvbjogZXZlbnQuZGVzY3JpcHRpb24sXG4gICAgICB9O1xuICAgIH1cbiAgfVxuXG4gIG92ZXJyaWRlIGdldFNlbnRlbmNlcygpOiBzdHJpbmdbXSB7XG4gICAgLy8gRmx1c2ggYW55IHBlbmRpbmcgcnVuXG4gICAgY29uc3QgcnVucyA9IFsuLi50aGlzLmNvbXBsZXRlZFJ1bnNdO1xuICAgIGlmICh0aGlzLmN1cnJlbnRSdW4pIHtcbiAgICAgIHJ1bnMucHVzaCh0aGlzLmN1cnJlbnRSdW4pO1xuICAgIH1cblxuICAgIGNvbnN0IGJhc2UgPSBzdXBlci5nZXRTZW50ZW5jZXMoKTtcblxuICAgIC8vIEluamVjdCBSTEUgc3VtbWFyaWVzXG4gICAgY29uc3Qgc3VtbWFyaWVzOiBzdHJpbmdbXSA9IFtdO1xuICAgIGZvciAoY29uc3QgcnVuIG9mIHJ1bnMpIHtcbiAgICAgIGNvbnN0IGNvdW50ID0gcnVuLmVuZEl0ZXJhdGlvbiAtIHJ1bi5zdGFydEl0ZXJhdGlvbiArIDE7XG4gICAgICBpZiAoY291bnQgPT09IDEpIHtcbiAgICAgICAgLy8gU2luZ2xlIGl0ZXJhdGlvbiDigJQgZW1pdCBub3JtYWwgc2VudGVuY2VcbiAgICAgICAgaWYgKHJ1bi5kZXNjcmlwdGlvbikge1xuICAgICAgICAgIHN1bW1hcmllcy5wdXNoKGBPbiBwYXNzICR7cnVuLnN0YXJ0SXRlcmF0aW9ufTogJHtydW4uZGVzY3JpcHRpb259IGFnYWluLmApO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHN1bW1hcmllcy5wdXNoKGBPbiBwYXNzICR7cnVuLnN0YXJ0SXRlcmF0aW9ufSB0aHJvdWdoICR7cnVuLnRhcmdldH0uYCk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHN1bW1hcmllcy5wdXNoKFxuICAgICAgICAgIGBMb29wZWQgdGhyb3VnaCAke3J1bi50YXJnZXR9ICR7Y291bnR9IHRpbWVzIChwYXNzZXMgJHtydW4uc3RhcnRJdGVyYXRpb2594oCTJHtydW4uZW5kSXRlcmF0aW9ufSkuYCxcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gWy4uLmJhc2UsIC4uLnN1bW1hcmllc107XG4gIH1cblxuICBvdmVycmlkZSBjbGVhcigpOiB2b2lkIHtcbiAgICBzdXBlci5jbGVhcigpO1xuICAgIHRoaXMuY3VycmVudFJ1biA9IG51bGw7XG4gICAgdGhpcy5jb21wbGV0ZWRSdW5zID0gW107XG4gIH1cbn1cbiJdfQ==
@@ -22,16 +22,15 @@ Object.defineProperty(exports, "__esModule", { value: true });
22
22
  exports.SeparateNarrativeFlowRecorder = void 0;
23
23
  const NarrativeFlowRecorder_js_1 = require("../NarrativeFlowRecorder.js");
24
24
  class SeparateNarrativeFlowRecorder extends NarrativeFlowRecorder_js_1.NarrativeFlowRecorder {
25
+ loopSentences = [];
26
+ loopCounts = new Map();
25
27
  constructor(id) {
26
- super(id !== null && id !== void 0 ? id : 'narrative-separate');
27
- this.loopSentences = [];
28
- this.loopCounts = new Map();
28
+ super(id ?? 'narrative-separate');
29
29
  }
30
30
  onLoop(event) {
31
31
  // Don't call super — keep loops out of main narrative
32
- var _a;
33
32
  // Track count for summary
34
- const count = ((_a = this.loopCounts.get(event.target)) !== null && _a !== void 0 ? _a : 0) + 1;
33
+ const count = (this.loopCounts.get(event.target) ?? 0) + 1;
35
34
  this.loopCounts.set(event.target, count);
36
35
  // Store in separate channel
37
36
  if (event.description) {
@@ -56,4 +55,4 @@ class SeparateNarrativeFlowRecorder extends NarrativeFlowRecorder_js_1.Narrative
56
55
  }
57
56
  }
58
57
  exports.SeparateNarrativeFlowRecorder = SeparateNarrativeFlowRecorder;
59
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2VwYXJhdGVOYXJyYXRpdmVGbG93UmVjb3JkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2VuZ2luZS9uYXJyYXRpdmUvcmVjb3JkZXJzL1NlcGFyYXRlTmFycmF0aXZlRmxvd1JlY29yZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBa0JHOzs7QUFFSCwwRUFBb0U7QUFHcEUsTUFBYSw2QkFBOEIsU0FBUSxnREFBcUI7SUFJdEUsWUFBWSxFQUFXO1FBQ3JCLEtBQUssQ0FBQyxFQUFFLGFBQUYsRUFBRSxjQUFGLEVBQUUsR0FBSSxvQkFBb0IsQ0FBQyxDQUFDO1FBSjVCLGtCQUFhLEdBQWEsRUFBRSxDQUFDO1FBQzdCLGVBQVUsR0FBd0IsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUlwRCxDQUFDO0lBRVEsTUFBTSxDQUFDLEtBQW9CO1FBQ2xDLHNEQUFzRDs7UUFFdEQsMEJBQTBCO1FBQzFCLE1BQU0sS0FBSyxHQUFHLENBQUMsTUFBQSxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLG1DQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUMzRCxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBRXpDLDRCQUE0QjtRQUM1QixJQUFJLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUN0QixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxXQUFXLEtBQUssQ0FBQyxTQUFTLEtBQUssS0FBSyxDQUFDLFdBQVcsU0FBUyxDQUFDLENBQUM7UUFDckYsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxXQUFXLEtBQUssQ0FBQyxTQUFTLFlBQVksS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7UUFDakYsQ0FBQztJQUNILENBQUM7SUFFRCxtRUFBbUU7SUFDbkUsZ0JBQWdCO1FBQ2QsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFRCwyQ0FBMkM7SUFDM0MsYUFBYTtRQUNYLE9BQU8sSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFUSxLQUFLO1FBQ1osS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2QsSUFBSSxDQUFDLGFBQWEsR0FBRyxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUMxQixDQUFDO0NBQ0Y7QUF0Q0Qsc0VBc0NDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBTZXBhcmF0ZU5hcnJhdGl2ZUZsb3dSZWNvcmRlciDigJQgQ29sbGVjdHMgbG9vcCBpdGVyYXRpb25zIGluIGEgc2VwYXJhdGUgY2hhbm5lbC5cbiAqXG4gKiBLZWVwcyB0aGUgbWFpbiBuYXJyYXRpdmUgY2xlYW4gKG5vIGxvb3Agc2VudGVuY2VzKSB3aGlsZSBwcmVzZXJ2aW5nIGZ1bGxcbiAqIGl0ZXJhdGlvbiBkZXRhaWwgaW4gYSBzZXBhcmF0ZSBhY2Nlc3NvciBmb3IgY29uc3VtZXJzIHdobyBuZWVkIGl0LlxuICpcbiAqIEJlc3QgZm9yOiBVSXMgb3IgcmVwb3J0cyB3aGVyZSBsb29wIGRldGFpbCBpcyBpbiBhIGNvbGxhcHNpYmxlIHNlY3Rpb24sXG4gKiBvciBMTE0gcGlwZWxpbmVzIHdoZXJlIGxvb3AgY29udGV4dCBzaG91bGQgYmUgYXZhaWxhYmxlIGJ1dCBub3QgaW4gdGhlIG1haW4gcHJvbXB0LlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjb25zdCByZWNvcmRlciA9IG5ldyBTZXBhcmF0ZU5hcnJhdGl2ZUZsb3dSZWNvcmRlcigpO1xuICogZXhlY3V0b3IuYXR0YWNoRmxvd1JlY29yZGVyKHJlY29yZGVyKTtcbiAqIGF3YWl0IGV4ZWN1dG9yLnJ1bigpO1xuICpcbiAqIGNvbnN0IG1haW5OYXJyYXRpdmUgPSBleGVjdXRvci5nZXROYXJyYXRpdmUoKTsgICAgIC8vIE5vIGxvb3Agc2VudGVuY2VzXG4gKiBjb25zdCBsb29wRGV0YWlsID0gcmVjb3JkZXIuZ2V0TG9vcFNlbnRlbmNlcygpOyAgICAvLyBBbGwgbG9vcCBkZXRhaWxcbiAqIGBgYFxuICovXG5cbmltcG9ydCB7IE5hcnJhdGl2ZUZsb3dSZWNvcmRlciB9IGZyb20gJy4uL05hcnJhdGl2ZUZsb3dSZWNvcmRlci5qcyc7XG5pbXBvcnQgdHlwZSB7IEZsb3dMb29wRXZlbnQgfSBmcm9tICcuLi90eXBlcy5qcyc7XG5cbmV4cG9ydCBjbGFzcyBTZXBhcmF0ZU5hcnJhdGl2ZUZsb3dSZWNvcmRlciBleHRlbmRzIE5hcnJhdGl2ZUZsb3dSZWNvcmRlciB7XG4gIHByaXZhdGUgbG9vcFNlbnRlbmNlczogc3RyaW5nW10gPSBbXTtcbiAgcHJpdmF0ZSBsb29wQ291bnRzOiBNYXA8c3RyaW5nLCBudW1iZXI+ID0gbmV3IE1hcCgpO1xuXG4gIGNvbnN0cnVjdG9yKGlkPzogc3RyaW5nKSB7XG4gICAgc3VwZXIoaWQgPz8gJ25hcnJhdGl2ZS1zZXBhcmF0ZScpO1xuICB9XG5cbiAgb3ZlcnJpZGUgb25Mb29wKGV2ZW50OiBGbG93TG9vcEV2ZW50KTogdm9pZCB7XG4gICAgLy8gRG9uJ3QgY2FsbCBzdXBlciDigJQga2VlcCBsb29wcyBvdXQgb2YgbWFpbiBuYXJyYXRpdmVcblxuICAgIC8vIFRyYWNrIGNvdW50IGZvciBzdW1tYXJ5XG4gICAgY29uc3QgY291bnQgPSAodGhpcy5sb29wQ291bnRzLmdldChldmVudC50YXJnZXQpID8/IDApICsgMTtcbiAgICB0aGlzLmxvb3BDb3VudHMuc2V0KGV2ZW50LnRhcmdldCwgY291bnQpO1xuXG4gICAgLy8gU3RvcmUgaW4gc2VwYXJhdGUgY2hhbm5lbFxuICAgIGlmIChldmVudC5kZXNjcmlwdGlvbikge1xuICAgICAgdGhpcy5sb29wU2VudGVuY2VzLnB1c2goYE9uIHBhc3MgJHtldmVudC5pdGVyYXRpb259OiAke2V2ZW50LmRlc2NyaXB0aW9ufSBhZ2Fpbi5gKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5sb29wU2VudGVuY2VzLnB1c2goYE9uIHBhc3MgJHtldmVudC5pdGVyYXRpb259IHRocm91Z2ggJHtldmVudC50YXJnZXR9LmApO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBSZXR1cm5zIGFsbCBsb29wIGl0ZXJhdGlvbiBzZW50ZW5jZXMgKHRoZSBzZXBhcmF0ZSBjaGFubmVsKS4gKi9cbiAgZ2V0TG9vcFNlbnRlbmNlcygpOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIFsuLi50aGlzLmxvb3BTZW50ZW5jZXNdO1xuICB9XG5cbiAgLyoqIFJldHVybnMgdG90YWwgbG9vcCBjb3VudCBwZXIgdGFyZ2V0LiAqL1xuICBnZXRMb29wQ291bnRzKCk6IE1hcDxzdHJpbmcsIG51bWJlcj4ge1xuICAgIHJldHVybiBuZXcgTWFwKHRoaXMubG9vcENvdW50cyk7XG4gIH1cblxuICBvdmVycmlkZSBjbGVhcigpOiB2b2lkIHtcbiAgICBzdXBlci5jbGVhcigpO1xuICAgIHRoaXMubG9vcFNlbnRlbmNlcyA9IFtdO1xuICAgIHRoaXMubG9vcENvdW50cy5jbGVhcigpO1xuICB9XG59XG4iXX0=
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2VwYXJhdGVOYXJyYXRpdmVGbG93UmVjb3JkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2VuZ2luZS9uYXJyYXRpdmUvcmVjb3JkZXJzL1NlcGFyYXRlTmFycmF0aXZlRmxvd1JlY29yZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBa0JHOzs7QUFFSCwwRUFBb0U7QUFHcEUsTUFBYSw2QkFBOEIsU0FBUSxnREFBcUI7SUFDOUQsYUFBYSxHQUFhLEVBQUUsQ0FBQztJQUM3QixVQUFVLEdBQXdCLElBQUksR0FBRyxFQUFFLENBQUM7SUFFcEQsWUFBWSxFQUFXO1FBQ3JCLEtBQUssQ0FBQyxFQUFFLElBQUksb0JBQW9CLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRVEsTUFBTSxDQUFDLEtBQW9CO1FBQ2xDLHNEQUFzRDtRQUV0RCwwQkFBMEI7UUFDMUIsTUFBTSxLQUFLLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzNELElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFekMsNEJBQTRCO1FBQzVCLElBQUksS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3RCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFdBQVcsS0FBSyxDQUFDLFNBQVMsS0FBSyxLQUFLLENBQUMsV0FBVyxTQUFTLENBQUMsQ0FBQztRQUNyRixDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFdBQVcsS0FBSyxDQUFDLFNBQVMsWUFBWSxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztRQUNqRixDQUFDO0lBQ0gsQ0FBQztJQUVELG1FQUFtRTtJQUNuRSxnQkFBZ0I7UUFDZCxPQUFPLENBQUMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVELDJDQUEyQztJQUMzQyxhQUFhO1FBQ1gsT0FBTyxJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVRLEtBQUs7UUFDWixLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDZCxJQUFJLENBQUMsYUFBYSxHQUFHLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzFCLENBQUM7Q0FDRjtBQXRDRCxzRUFzQ0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFNlcGFyYXRlTmFycmF0aXZlRmxvd1JlY29yZGVyIOKAlCBDb2xsZWN0cyBsb29wIGl0ZXJhdGlvbnMgaW4gYSBzZXBhcmF0ZSBjaGFubmVsLlxuICpcbiAqIEtlZXBzIHRoZSBtYWluIG5hcnJhdGl2ZSBjbGVhbiAobm8gbG9vcCBzZW50ZW5jZXMpIHdoaWxlIHByZXNlcnZpbmcgZnVsbFxuICogaXRlcmF0aW9uIGRldGFpbCBpbiBhIHNlcGFyYXRlIGFjY2Vzc29yIGZvciBjb25zdW1lcnMgd2hvIG5lZWQgaXQuXG4gKlxuICogQmVzdCBmb3I6IFVJcyBvciByZXBvcnRzIHdoZXJlIGxvb3AgZGV0YWlsIGlzIGluIGEgY29sbGFwc2libGUgc2VjdGlvbixcbiAqIG9yIExMTSBwaXBlbGluZXMgd2hlcmUgbG9vcCBjb250ZXh0IHNob3VsZCBiZSBhdmFpbGFibGUgYnV0IG5vdCBpbiB0aGUgbWFpbiBwcm9tcHQuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IHJlY29yZGVyID0gbmV3IFNlcGFyYXRlTmFycmF0aXZlRmxvd1JlY29yZGVyKCk7XG4gKiBleGVjdXRvci5hdHRhY2hGbG93UmVjb3JkZXIocmVjb3JkZXIpO1xuICogYXdhaXQgZXhlY3V0b3IucnVuKCk7XG4gKlxuICogY29uc3QgbWFpbk5hcnJhdGl2ZSA9IGV4ZWN1dG9yLmdldE5hcnJhdGl2ZSgpOyAgICAgLy8gTm8gbG9vcCBzZW50ZW5jZXNcbiAqIGNvbnN0IGxvb3BEZXRhaWwgPSByZWNvcmRlci5nZXRMb29wU2VudGVuY2VzKCk7ICAgIC8vIEFsbCBsb29wIGRldGFpbFxuICogYGBgXG4gKi9cblxuaW1wb3J0IHsgTmFycmF0aXZlRmxvd1JlY29yZGVyIH0gZnJvbSAnLi4vTmFycmF0aXZlRmxvd1JlY29yZGVyLmpzJztcbmltcG9ydCB0eXBlIHsgRmxvd0xvb3BFdmVudCB9IGZyb20gJy4uL3R5cGVzLmpzJztcblxuZXhwb3J0IGNsYXNzIFNlcGFyYXRlTmFycmF0aXZlRmxvd1JlY29yZGVyIGV4dGVuZHMgTmFycmF0aXZlRmxvd1JlY29yZGVyIHtcbiAgcHJpdmF0ZSBsb29wU2VudGVuY2VzOiBzdHJpbmdbXSA9IFtdO1xuICBwcml2YXRlIGxvb3BDb3VudHM6IE1hcDxzdHJpbmcsIG51bWJlcj4gPSBuZXcgTWFwKCk7XG5cbiAgY29uc3RydWN0b3IoaWQ/OiBzdHJpbmcpIHtcbiAgICBzdXBlcihpZCA/PyAnbmFycmF0aXZlLXNlcGFyYXRlJyk7XG4gIH1cblxuICBvdmVycmlkZSBvbkxvb3AoZXZlbnQ6IEZsb3dMb29wRXZlbnQpOiB2b2lkIHtcbiAgICAvLyBEb24ndCBjYWxsIHN1cGVyIOKAlCBrZWVwIGxvb3BzIG91dCBvZiBtYWluIG5hcnJhdGl2ZVxuXG4gICAgLy8gVHJhY2sgY291bnQgZm9yIHN1bW1hcnlcbiAgICBjb25zdCBjb3VudCA9ICh0aGlzLmxvb3BDb3VudHMuZ2V0KGV2ZW50LnRhcmdldCkgPz8gMCkgKyAxO1xuICAgIHRoaXMubG9vcENvdW50cy5zZXQoZXZlbnQudGFyZ2V0LCBjb3VudCk7XG5cbiAgICAvLyBTdG9yZSBpbiBzZXBhcmF0ZSBjaGFubmVsXG4gICAgaWYgKGV2ZW50LmRlc2NyaXB0aW9uKSB7XG4gICAgICB0aGlzLmxvb3BTZW50ZW5jZXMucHVzaChgT24gcGFzcyAke2V2ZW50Lml0ZXJhdGlvbn06ICR7ZXZlbnQuZGVzY3JpcHRpb259IGFnYWluLmApO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmxvb3BTZW50ZW5jZXMucHVzaChgT24gcGFzcyAke2V2ZW50Lml0ZXJhdGlvbn0gdGhyb3VnaCAke2V2ZW50LnRhcmdldH0uYCk7XG4gICAgfVxuICB9XG5cbiAgLyoqIFJldHVybnMgYWxsIGxvb3AgaXRlcmF0aW9uIHNlbnRlbmNlcyAodGhlIHNlcGFyYXRlIGNoYW5uZWwpLiAqL1xuICBnZXRMb29wU2VudGVuY2VzKCk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gWy4uLnRoaXMubG9vcFNlbnRlbmNlc107XG4gIH1cblxuICAvKiogUmV0dXJucyB0b3RhbCBsb29wIGNvdW50IHBlciB0YXJnZXQuICovXG4gIGdldExvb3BDb3VudHMoKTogTWFwPHN0cmluZywgbnVtYmVyPiB7XG4gICAgcmV0dXJuIG5ldyBNYXAodGhpcy5sb29wQ291bnRzKTtcbiAgfVxuXG4gIG92ZXJyaWRlIGNsZWFyKCk6IHZvaWQge1xuICAgIHN1cGVyLmNsZWFyKCk7XG4gICAgdGhpcy5sb29wU2VudGVuY2VzID0gW107XG4gICAgdGhpcy5sb29wQ291bnRzLmNsZWFyKCk7XG4gIH1cbn1cbiJdfQ==
@@ -16,15 +16,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
16
16
  exports.SilentNarrativeFlowRecorder = void 0;
17
17
  const NarrativeFlowRecorder_js_1 = require("../NarrativeFlowRecorder.js");
18
18
  class SilentNarrativeFlowRecorder extends NarrativeFlowRecorder_js_1.NarrativeFlowRecorder {
19
+ loopCounts = new Map();
20
+ loopOrder = [];
19
21
  constructor(id) {
20
- super(id !== null && id !== void 0 ? id : 'narrative-silent');
21
- this.loopCounts = new Map();
22
- this.loopOrder = [];
22
+ super(id ?? 'narrative-silent');
23
23
  }
24
24
  onLoop(event) {
25
- var _a;
26
25
  // Don't call super — suppress all per-iteration sentences
27
- const count = ((_a = this.loopCounts.get(event.target)) !== null && _a !== void 0 ? _a : 0) + 1;
26
+ const count = (this.loopCounts.get(event.target) ?? 0) + 1;
28
27
  if (!this.loopCounts.has(event.target)) {
29
28
  this.loopOrder.push(event.target);
30
29
  }
@@ -51,4 +50,4 @@ class SilentNarrativeFlowRecorder extends NarrativeFlowRecorder_js_1.NarrativeFl
51
50
  }
52
51
  }
53
52
  exports.SilentNarrativeFlowRecorder = SilentNarrativeFlowRecorder;
54
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2lsZW50TmFycmF0aXZlRmxvd1JlY29yZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9lbmdpbmUvbmFycmF0aXZlL3JlY29yZGVycy9TaWxlbnROYXJyYXRpdmVGbG93UmVjb3JkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7Ozs7Ozs7R0FZRzs7O0FBRUgsMEVBQW9FO0FBR3BFLE1BQWEsMkJBQTRCLFNBQVEsZ0RBQXFCO0lBSXBFLFlBQVksRUFBVztRQUNyQixLQUFLLENBQUMsRUFBRSxhQUFGLEVBQUUsY0FBRixFQUFFLEdBQUksa0JBQWtCLENBQUMsQ0FBQztRQUoxQixlQUFVLEdBQXdCLElBQUksR0FBRyxFQUFFLENBQUM7UUFDNUMsY0FBUyxHQUFhLEVBQUUsQ0FBQztJQUlqQyxDQUFDO0lBRVEsTUFBTSxDQUFDLEtBQW9COztRQUNsQywwREFBMEQ7UUFDMUQsTUFBTSxLQUFLLEdBQUcsQ0FBQyxNQUFBLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsbUNBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzNELElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztZQUN2QyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDcEMsQ0FBQztRQUNELElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVRLFlBQVk7UUFDbkIsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBRWxDLHVFQUF1RTtRQUN2RSxNQUFNLFNBQVMsR0FBYSxFQUFFLENBQUM7UUFDL0IsS0FBSyxNQUFNLE1BQU0sSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDcEMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFFLENBQUM7WUFDM0MsU0FBUyxDQUFDLElBQUksQ0FBQyxVQUFVLEtBQUssUUFBUSxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsWUFBWSxNQUFNLEdBQUcsQ0FBQyxDQUFDO1FBQ3JGLENBQUM7UUFFRCxPQUFPLENBQUMsR0FBRyxJQUFJLEVBQUUsR0FBRyxTQUFTLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRUQsK0NBQStDO0lBQy9DLGFBQWE7UUFDWCxPQUFPLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRVEsS0FBSztRQUNaLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNkLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7SUFDdEIsQ0FBQztDQUNGO0FBeENELGtFQXdDQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogU2lsZW50TmFycmF0aXZlRmxvd1JlY29yZGVyIOKAlCBTdXBwcmVzc2VzIGFsbCBwZXItaXRlcmF0aW9uIGxvb3Agc2VudGVuY2VzLFxuICogZW1pdHMgYSBzaW5nbGUgc3VtbWFyeSBzZW50ZW5jZSBhdCB0aGUgZW5kLlxuICpcbiAqIEJlc3QgZm9yOiBMb29wcyB3aGVyZSBpdGVyYXRpb24gZGV0YWlscyBhcmUgaXJyZWxldmFudCBhbmQgeW91IG9ubHkgY2FyZVxuICogYWJvdXQgdGhlIHRvdGFsIGNvdW50LlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBleGVjdXRvci5hdHRhY2hGbG93UmVjb3JkZXIobmV3IFNpbGVudE5hcnJhdGl2ZUZsb3dSZWNvcmRlcigpKTtcbiAqIC8vIFByb2R1Y2VzOiBcIkxvb3BlZCA1MCB0aW1lcyB0aHJvdWdoIEFza0xMTS5cIlxuICogYGBgXG4gKi9cblxuaW1wb3J0IHsgTmFycmF0aXZlRmxvd1JlY29yZGVyIH0gZnJvbSAnLi4vTmFycmF0aXZlRmxvd1JlY29yZGVyLmpzJztcbmltcG9ydCB0eXBlIHsgRmxvd0xvb3BFdmVudCB9IGZyb20gJy4uL3R5cGVzLmpzJztcblxuZXhwb3J0IGNsYXNzIFNpbGVudE5hcnJhdGl2ZUZsb3dSZWNvcmRlciBleHRlbmRzIE5hcnJhdGl2ZUZsb3dSZWNvcmRlciB7XG4gIHByaXZhdGUgbG9vcENvdW50czogTWFwPHN0cmluZywgbnVtYmVyPiA9IG5ldyBNYXAoKTtcbiAgcHJpdmF0ZSBsb29wT3JkZXI6IHN0cmluZ1tdID0gW107XG5cbiAgY29uc3RydWN0b3IoaWQ/OiBzdHJpbmcpIHtcbiAgICBzdXBlcihpZCA/PyAnbmFycmF0aXZlLXNpbGVudCcpO1xuICB9XG5cbiAgb3ZlcnJpZGUgb25Mb29wKGV2ZW50OiBGbG93TG9vcEV2ZW50KTogdm9pZCB7XG4gICAgLy8gRG9uJ3QgY2FsbCBzdXBlciDigJQgc3VwcHJlc3MgYWxsIHBlci1pdGVyYXRpb24gc2VudGVuY2VzXG4gICAgY29uc3QgY291bnQgPSAodGhpcy5sb29wQ291bnRzLmdldChldmVudC50YXJnZXQpID8/IDApICsgMTtcbiAgICBpZiAoIXRoaXMubG9vcENvdW50cy5oYXMoZXZlbnQudGFyZ2V0KSkge1xuICAgICAgdGhpcy5sb29wT3JkZXIucHVzaChldmVudC50YXJnZXQpO1xuICAgIH1cbiAgICB0aGlzLmxvb3BDb3VudHMuc2V0KGV2ZW50LnRhcmdldCwgY291bnQpO1xuICB9XG5cbiAgb3ZlcnJpZGUgZ2V0U2VudGVuY2VzKCk6IHN0cmluZ1tdIHtcbiAgICBjb25zdCBiYXNlID0gc3VwZXIuZ2V0U2VudGVuY2VzKCk7XG5cbiAgICAvLyBJbmplY3QgbG9vcCBzdW1tYXJpZXMgYXQgdGhlIGVuZCAob3IgeW91IGNvdWxkIGluc2VydCB0aGVtIGluLXBsYWNlKVxuICAgIGNvbnN0IHN1bW1hcmllczogc3RyaW5nW10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IHRhcmdldCBvZiB0aGlzLmxvb3BPcmRlcikge1xuICAgICAgY29uc3QgY291bnQgPSB0aGlzLmxvb3BDb3VudHMuZ2V0KHRhcmdldCkhO1xuICAgICAgc3VtbWFyaWVzLnB1c2goYExvb3BlZCAke2NvdW50fSB0aW1lJHtjb3VudCAhPT0gMSA/ICdzJyA6ICcnfSB0aHJvdWdoICR7dGFyZ2V0fS5gKTtcbiAgICB9XG5cbiAgICByZXR1cm4gWy4uLmJhc2UsIC4uLnN1bW1hcmllc107XG4gIH1cblxuICAvKiogUmV0dXJucyB0aGUgdG90YWwgbG9vcCBjb3VudCBwZXIgdGFyZ2V0LiAqL1xuICBnZXRMb29wQ291bnRzKCk6IE1hcDxzdHJpbmcsIG51bWJlcj4ge1xuICAgIHJldHVybiBuZXcgTWFwKHRoaXMubG9vcENvdW50cyk7XG4gIH1cblxuICBvdmVycmlkZSBjbGVhcigpOiB2b2lkIHtcbiAgICBzdXBlci5jbGVhcigpO1xuICAgIHRoaXMubG9vcENvdW50cy5jbGVhcigpO1xuICAgIHRoaXMubG9vcE9yZGVyID0gW107XG4gIH1cbn1cbiJdfQ==
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2lsZW50TmFycmF0aXZlRmxvd1JlY29yZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9lbmdpbmUvbmFycmF0aXZlL3JlY29yZGVycy9TaWxlbnROYXJyYXRpdmVGbG93UmVjb3JkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7Ozs7Ozs7R0FZRzs7O0FBRUgsMEVBQW9FO0FBR3BFLE1BQWEsMkJBQTRCLFNBQVEsZ0RBQXFCO0lBQzVELFVBQVUsR0FBd0IsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUM1QyxTQUFTLEdBQWEsRUFBRSxDQUFDO0lBRWpDLFlBQVksRUFBVztRQUNyQixLQUFLLENBQUMsRUFBRSxJQUFJLGtCQUFrQixDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVRLE1BQU0sQ0FBQyxLQUFvQjtRQUNsQywwREFBMEQ7UUFDMUQsTUFBTSxLQUFLLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzNELElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztZQUN2QyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDcEMsQ0FBQztRQUNELElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVRLFlBQVk7UUFDbkIsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBRWxDLHVFQUF1RTtRQUN2RSxNQUFNLFNBQVMsR0FBYSxFQUFFLENBQUM7UUFDL0IsS0FBSyxNQUFNLE1BQU0sSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDcEMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFFLENBQUM7WUFDM0MsU0FBUyxDQUFDLElBQUksQ0FBQyxVQUFVLEtBQUssUUFBUSxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsWUFBWSxNQUFNLEdBQUcsQ0FBQyxDQUFDO1FBQ3JGLENBQUM7UUFFRCxPQUFPLENBQUMsR0FBRyxJQUFJLEVBQUUsR0FBRyxTQUFTLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRUQsK0NBQStDO0lBQy9DLGFBQWE7UUFDWCxPQUFPLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRVEsS0FBSztRQUNaLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNkLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7SUFDdEIsQ0FBQztDQUNGO0FBeENELGtFQXdDQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogU2lsZW50TmFycmF0aXZlRmxvd1JlY29yZGVyIOKAlCBTdXBwcmVzc2VzIGFsbCBwZXItaXRlcmF0aW9uIGxvb3Agc2VudGVuY2VzLFxuICogZW1pdHMgYSBzaW5nbGUgc3VtbWFyeSBzZW50ZW5jZSBhdCB0aGUgZW5kLlxuICpcbiAqIEJlc3QgZm9yOiBMb29wcyB3aGVyZSBpdGVyYXRpb24gZGV0YWlscyBhcmUgaXJyZWxldmFudCBhbmQgeW91IG9ubHkgY2FyZVxuICogYWJvdXQgdGhlIHRvdGFsIGNvdW50LlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBleGVjdXRvci5hdHRhY2hGbG93UmVjb3JkZXIobmV3IFNpbGVudE5hcnJhdGl2ZUZsb3dSZWNvcmRlcigpKTtcbiAqIC8vIFByb2R1Y2VzOiBcIkxvb3BlZCA1MCB0aW1lcyB0aHJvdWdoIEFza0xMTS5cIlxuICogYGBgXG4gKi9cblxuaW1wb3J0IHsgTmFycmF0aXZlRmxvd1JlY29yZGVyIH0gZnJvbSAnLi4vTmFycmF0aXZlRmxvd1JlY29yZGVyLmpzJztcbmltcG9ydCB0eXBlIHsgRmxvd0xvb3BFdmVudCB9IGZyb20gJy4uL3R5cGVzLmpzJztcblxuZXhwb3J0IGNsYXNzIFNpbGVudE5hcnJhdGl2ZUZsb3dSZWNvcmRlciBleHRlbmRzIE5hcnJhdGl2ZUZsb3dSZWNvcmRlciB7XG4gIHByaXZhdGUgbG9vcENvdW50czogTWFwPHN0cmluZywgbnVtYmVyPiA9IG5ldyBNYXAoKTtcbiAgcHJpdmF0ZSBsb29wT3JkZXI6IHN0cmluZ1tdID0gW107XG5cbiAgY29uc3RydWN0b3IoaWQ/OiBzdHJpbmcpIHtcbiAgICBzdXBlcihpZCA/PyAnbmFycmF0aXZlLXNpbGVudCcpO1xuICB9XG5cbiAgb3ZlcnJpZGUgb25Mb29wKGV2ZW50OiBGbG93TG9vcEV2ZW50KTogdm9pZCB7XG4gICAgLy8gRG9uJ3QgY2FsbCBzdXBlciDigJQgc3VwcHJlc3MgYWxsIHBlci1pdGVyYXRpb24gc2VudGVuY2VzXG4gICAgY29uc3QgY291bnQgPSAodGhpcy5sb29wQ291bnRzLmdldChldmVudC50YXJnZXQpID8/IDApICsgMTtcbiAgICBpZiAoIXRoaXMubG9vcENvdW50cy5oYXMoZXZlbnQudGFyZ2V0KSkge1xuICAgICAgdGhpcy5sb29wT3JkZXIucHVzaChldmVudC50YXJnZXQpO1xuICAgIH1cbiAgICB0aGlzLmxvb3BDb3VudHMuc2V0KGV2ZW50LnRhcmdldCwgY291bnQpO1xuICB9XG5cbiAgb3ZlcnJpZGUgZ2V0U2VudGVuY2VzKCk6IHN0cmluZ1tdIHtcbiAgICBjb25zdCBiYXNlID0gc3VwZXIuZ2V0U2VudGVuY2VzKCk7XG5cbiAgICAvLyBJbmplY3QgbG9vcCBzdW1tYXJpZXMgYXQgdGhlIGVuZCAob3IgeW91IGNvdWxkIGluc2VydCB0aGVtIGluLXBsYWNlKVxuICAgIGNvbnN0IHN1bW1hcmllczogc3RyaW5nW10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IHRhcmdldCBvZiB0aGlzLmxvb3BPcmRlcikge1xuICAgICAgY29uc3QgY291bnQgPSB0aGlzLmxvb3BDb3VudHMuZ2V0KHRhcmdldCkhO1xuICAgICAgc3VtbWFyaWVzLnB1c2goYExvb3BlZCAke2NvdW50fSB0aW1lJHtjb3VudCAhPT0gMSA/ICdzJyA6ICcnfSB0aHJvdWdoICR7dGFyZ2V0fS5gKTtcbiAgICB9XG5cbiAgICByZXR1cm4gWy4uLmJhc2UsIC4uLnN1bW1hcmllc107XG4gIH1cblxuICAvKiogUmV0dXJucyB0aGUgdG90YWwgbG9vcCBjb3VudCBwZXIgdGFyZ2V0LiAqL1xuICBnZXRMb29wQ291bnRzKCk6IE1hcDxzdHJpbmcsIG51bWJlcj4ge1xuICAgIHJldHVybiBuZXcgTWFwKHRoaXMubG9vcENvdW50cyk7XG4gIH1cblxuICBvdmVycmlkZSBjbGVhcigpOiB2b2lkIHtcbiAgICBzdXBlci5jbGVhcigpO1xuICAgIHRoaXMubG9vcENvdW50cy5jbGVhcigpO1xuICAgIHRoaXMubG9vcE9yZGVyID0gW107XG4gIH1cbn1cbiJdfQ==
@@ -18,9 +18,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.WindowedNarrativeFlowRecorder = void 0;
19
19
  const NarrativeFlowRecorder_js_1 = require("../NarrativeFlowRecorder.js");
20
20
  class WindowedNarrativeFlowRecorder extends NarrativeFlowRecorder_js_1.NarrativeFlowRecorder {
21
+ head;
22
+ tail;
23
+ loopEvents = new Map();
21
24
  constructor(head = 3, tail = 2, id) {
22
- super(id !== null && id !== void 0 ? id : 'narrative-windowed');
23
- this.loopEvents = new Map();
25
+ super(id ?? 'narrative-windowed');
24
26
  this.head = head;
25
27
  this.tail = tail;
26
28
  }
@@ -83,4 +85,4 @@ class WindowedNarrativeFlowRecorder extends NarrativeFlowRecorder_js_1.Narrative
83
85
  }
84
86
  }
85
87
  exports.WindowedNarrativeFlowRecorder = WindowedNarrativeFlowRecorder;
86
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiV2luZG93ZWROYXJyYXRpdmVGbG93UmVjb3JkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2VuZ2luZS9uYXJyYXRpdmUvcmVjb3JkZXJzL1dpbmRvd2VkTmFycmF0aXZlRmxvd1JlY29yZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRzs7O0FBRUgsMEVBQW9FO0FBR3BFLE1BQWEsNkJBQThCLFNBQVEsZ0RBQXFCO0lBS3RFLFlBQVksSUFBSSxHQUFHLENBQUMsRUFBRSxJQUFJLEdBQUcsQ0FBQyxFQUFFLEVBQVc7UUFDekMsS0FBSyxDQUFDLEVBQUUsYUFBRixFQUFFLGNBQUYsRUFBRSxHQUFJLG9CQUFvQixDQUFDLENBQUM7UUFINUIsZUFBVSxHQUFpQyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBSTNELElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO0lBQ25CLENBQUM7SUFFUSxNQUFNLENBQUMsS0FBb0I7UUFDbEMsaUVBQWlFO1FBQ2pFLE1BQU0sR0FBRyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUM7UUFDekIsSUFBSSxNQUFNLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDdEMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ1osTUFBTSxHQUFHLEVBQUUsQ0FBQztZQUNaLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNuQyxDQUFDO1FBQ0QsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVuQiw0RUFBNEU7SUFDOUUsQ0FBQztJQUVRLFlBQVk7UUFDbkIsTUFBTSxhQUFhLEdBQUcsS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBRTNDLGlEQUFpRDtRQUNqRCxNQUFNLE1BQU0sR0FBRyxDQUFDLEdBQUcsYUFBYSxDQUFDLENBQUM7UUFDbEMsS0FBSyxNQUFNLENBQUMsRUFBRSxNQUFNLENBQUMsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDekMsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQztZQUU1QixJQUFJLEtBQUssSUFBSSxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDbkMsbUNBQW1DO2dCQUNuQyxLQUFLLE1BQU0sRUFBRSxJQUFJLE1BQU0sRUFBRSxDQUFDO29CQUN4QixNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUMzQyxDQUFDO1lBQ0gsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLDBDQUEwQztnQkFDMUMsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztvQkFDbkMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDbEQsQ0FBQztnQkFDRCxNQUFNLE9BQU8sR0FBRyxLQUFLLEdBQUcsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO2dCQUM5QyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsT0FBTyxzQkFBc0IsQ0FBQyxDQUFDO2dCQUNuRCxLQUFLLElBQUksQ0FBQyxHQUFHLEtBQUssR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztvQkFDL0MsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDbEQsQ0FBQztZQUNILENBQUM7UUFDSCxDQUFDO1FBRUQsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVELHVEQUF1RDtJQUN2RCxrQkFBa0I7UUFDaEIsSUFBSSxLQUFLLEdBQUcsQ0FBQyxDQUFDO1FBQ2QsS0FBSyxNQUFNLENBQUMsRUFBRSxNQUFNLENBQUMsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDekMsSUFBSSxNQUFNLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO2dCQUMxQyxLQUFLLElBQUksTUFBTSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7WUFDakQsQ0FBQztRQUNILENBQUM7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFUSxLQUFLO1FBQ1osS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRU8sa0JBQWtCLENBQUMsS0FBb0I7UUFDN0MsSUFBSSxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDdEIsT0FBTyxXQUFXLEtBQUssQ0FBQyxTQUFTLEtBQUssS0FBSyxDQUFDLFdBQVcsU0FBUyxDQUFDO1FBQ25FLENBQUM7UUFDRCxPQUFPLFdBQVcsS0FBSyxDQUFDLFNBQVMsWUFBWSxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUM7SUFDL0QsQ0FBQztDQUNGO0FBM0VELHNFQTJFQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogV2luZG93ZWROYXJyYXRpdmVGbG93UmVjb3JkZXIg4oCUIFNob3dzIGZpcnN0IE4gYW5kIGxhc3QgTSBsb29wIGl0ZXJhdGlvbnMsIHNraXBzIHRoZSBtaWRkbGUuXG4gKlxuICogQmVzdCBmb3I6IE1vZGVyYXRlIGxvb3BzICgxMOKAkzIwMCBpdGVyYXRpb25zKSB3aGVyZSB5b3Ugd2FudCB0byBzZWUgaG93IGl0IHN0YXJ0ZWRcbiAqIGFuZCBob3cgaXQgZW5kZWQsIHdpdGhvdXQgdGhlIG5vaXNlIGluIGJldHdlZW4uXG4gKlxuICogV2hlbiB0b3RhbCBpdGVyYXRpb25zIDw9IGhlYWQgKyB0YWlsLCBhbGwgaXRlcmF0aW9ucyBhcmUgZW1pdHRlZCAobm8gY29tcHJlc3Npb24pLlxuICogV2hlbiB0b3RhbCA+IGhlYWQgKyB0YWlsLCB0aGUgbWlkZGxlIGlzIHJlcGxhY2VkIHdpdGggYSBzdW1tYXJ5IGxpbmUuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIC8vIFNob3cgZmlyc3QgMyBhbmQgbGFzdCAyIGl0ZXJhdGlvbnNcbiAqIGV4ZWN1dG9yLmF0dGFjaEZsb3dSZWNvcmRlcihuZXcgV2luZG93ZWROYXJyYXRpdmVGbG93UmVjb3JkZXIoMywgMikpO1xuICogYGBgXG4gKi9cblxuaW1wb3J0IHsgTmFycmF0aXZlRmxvd1JlY29yZGVyIH0gZnJvbSAnLi4vTmFycmF0aXZlRmxvd1JlY29yZGVyLmpzJztcbmltcG9ydCB0eXBlIHsgRmxvd0xvb3BFdmVudCB9IGZyb20gJy4uL3R5cGVzLmpzJztcblxuZXhwb3J0IGNsYXNzIFdpbmRvd2VkTmFycmF0aXZlRmxvd1JlY29yZGVyIGV4dGVuZHMgTmFycmF0aXZlRmxvd1JlY29yZGVyIHtcbiAgcHJpdmF0ZSByZWFkb25seSBoZWFkOiBudW1iZXI7XG4gIHByaXZhdGUgcmVhZG9ubHkgdGFpbDogbnVtYmVyO1xuICBwcml2YXRlIGxvb3BFdmVudHM6IE1hcDxzdHJpbmcsIEZsb3dMb29wRXZlbnRbXT4gPSBuZXcgTWFwKCk7XG5cbiAgY29uc3RydWN0b3IoaGVhZCA9IDMsIHRhaWwgPSAyLCBpZD86IHN0cmluZykge1xuICAgIHN1cGVyKGlkID8/ICduYXJyYXRpdmUtd2luZG93ZWQnKTtcbiAgICB0aGlzLmhlYWQgPSBoZWFkO1xuICAgIHRoaXMudGFpbCA9IHRhaWw7XG4gIH1cblxuICBvdmVycmlkZSBvbkxvb3AoZXZlbnQ6IEZsb3dMb29wRXZlbnQpOiB2b2lkIHtcbiAgICAvLyBBY2N1bXVsYXRlIGFsbCBsb29wIGV2ZW50cyDigJQgd2UnbGwgcmVuZGVyIHRoZW0gaW4gZ2V0U2VudGVuY2VzXG4gICAgY29uc3Qga2V5ID0gZXZlbnQudGFyZ2V0O1xuICAgIGxldCBldmVudHMgPSB0aGlzLmxvb3BFdmVudHMuZ2V0KGtleSk7XG4gICAgaWYgKCFldmVudHMpIHtcbiAgICAgIGV2ZW50cyA9IFtdO1xuICAgICAgdGhpcy5sb29wRXZlbnRzLnNldChrZXksIGV2ZW50cyk7XG4gICAgfVxuICAgIGV2ZW50cy5wdXNoKGV2ZW50KTtcblxuICAgIC8vIERvbid0IGNhbGwgc3VwZXIg4oCUIHdlIGhhbmRsZSBhbGwgbG9vcCBzZW50ZW5jZSBnZW5lcmF0aW9uIGluIGdldFNlbnRlbmNlc1xuICB9XG5cbiAgb3ZlcnJpZGUgZ2V0U2VudGVuY2VzKCk6IHN0cmluZ1tdIHtcbiAgICBjb25zdCBiYXNlU2VudGVuY2VzID0gc3VwZXIuZ2V0U2VudGVuY2VzKCk7XG5cbiAgICAvLyBBcHBlbmQgd2luZG93ZWQgbG9vcCBzZW50ZW5jZXMgZm9yIGVhY2ggdGFyZ2V0XG4gICAgY29uc3QgcmVzdWx0ID0gWy4uLmJhc2VTZW50ZW5jZXNdO1xuICAgIGZvciAoY29uc3QgWywgZXZlbnRzXSBvZiB0aGlzLmxvb3BFdmVudHMpIHtcbiAgICAgIGNvbnN0IHRvdGFsID0gZXZlbnRzLmxlbmd0aDtcblxuICAgICAgaWYgKHRvdGFsIDw9IHRoaXMuaGVhZCArIHRoaXMudGFpbCkge1xuICAgICAgICAvLyBTbWFsbCBsb29wIOKAlCBlbWl0IGFsbCBpdGVyYXRpb25zXG4gICAgICAgIGZvciAoY29uc3QgZXYgb2YgZXZlbnRzKSB7XG4gICAgICAgICAgcmVzdWx0LnB1c2godGhpcy5mb3JtYXRMb29wU2VudGVuY2UoZXYpKTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gTGFyZ2UgbG9vcCDigJQgaGVhZCArIHNraXAgc3VtbWFyeSArIHRhaWxcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLmhlYWQ7IGkrKykge1xuICAgICAgICAgIHJlc3VsdC5wdXNoKHRoaXMuZm9ybWF0TG9vcFNlbnRlbmNlKGV2ZW50c1tpXSkpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHNraXBwZWQgPSB0b3RhbCAtIHRoaXMuaGVhZCAtIHRoaXMudGFpbDtcbiAgICAgICAgcmVzdWx0LnB1c2goYC4uLiAoJHtza2lwcGVkfSBpdGVyYXRpb25zIG9taXR0ZWQpYCk7XG4gICAgICAgIGZvciAobGV0IGkgPSB0b3RhbCAtIHRoaXMudGFpbDsgaSA8IHRvdGFsOyBpKyspIHtcbiAgICAgICAgICByZXN1bHQucHVzaCh0aGlzLmZvcm1hdExvb3BTZW50ZW5jZShldmVudHNbaV0pKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICAvKiogUmV0dXJucyB0aGUgbnVtYmVyIG9mIHN1cHByZXNzZWQgbG9vcCBzZW50ZW5jZXMuICovXG4gIGdldFN1cHByZXNzZWRDb3VudCgpOiBudW1iZXIge1xuICAgIGxldCB0b3RhbCA9IDA7XG4gICAgZm9yIChjb25zdCBbLCBldmVudHNdIG9mIHRoaXMubG9vcEV2ZW50cykge1xuICAgICAgaWYgKGV2ZW50cy5sZW5ndGggPiB0aGlzLmhlYWQgKyB0aGlzLnRhaWwpIHtcbiAgICAgICAgdG90YWwgKz0gZXZlbnRzLmxlbmd0aCAtIHRoaXMuaGVhZCAtIHRoaXMudGFpbDtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRvdGFsO1xuICB9XG5cbiAgb3ZlcnJpZGUgY2xlYXIoKTogdm9pZCB7XG4gICAgc3VwZXIuY2xlYXIoKTtcbiAgICB0aGlzLmxvb3BFdmVudHMuY2xlYXIoKTtcbiAgfVxuXG4gIHByaXZhdGUgZm9ybWF0TG9vcFNlbnRlbmNlKGV2ZW50OiBGbG93TG9vcEV2ZW50KTogc3RyaW5nIHtcbiAgICBpZiAoZXZlbnQuZGVzY3JpcHRpb24pIHtcbiAgICAgIHJldHVybiBgT24gcGFzcyAke2V2ZW50Lml0ZXJhdGlvbn06ICR7ZXZlbnQuZGVzY3JpcHRpb259IGFnYWluLmA7XG4gICAgfVxuICAgIHJldHVybiBgT24gcGFzcyAke2V2ZW50Lml0ZXJhdGlvbn0gdGhyb3VnaCAke2V2ZW50LnRhcmdldH0uYDtcbiAgfVxufVxuIl19
88
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiV2luZG93ZWROYXJyYXRpdmVGbG93UmVjb3JkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2VuZ2luZS9uYXJyYXRpdmUvcmVjb3JkZXJzL1dpbmRvd2VkTmFycmF0aXZlRmxvd1JlY29yZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRzs7O0FBRUgsMEVBQW9FO0FBR3BFLE1BQWEsNkJBQThCLFNBQVEsZ0RBQXFCO0lBQ3JELElBQUksQ0FBUztJQUNiLElBQUksQ0FBUztJQUN0QixVQUFVLEdBQWlDLElBQUksR0FBRyxFQUFFLENBQUM7SUFFN0QsWUFBWSxJQUFJLEdBQUcsQ0FBQyxFQUFFLElBQUksR0FBRyxDQUFDLEVBQUUsRUFBVztRQUN6QyxLQUFLLENBQUMsRUFBRSxJQUFJLG9CQUFvQixDQUFDLENBQUM7UUFDbEMsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDakIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7SUFDbkIsQ0FBQztJQUVRLE1BQU0sQ0FBQyxLQUFvQjtRQUNsQyxpRUFBaUU7UUFDakUsTUFBTSxHQUFHLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQztRQUN6QixJQUFJLE1BQU0sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN0QyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDWixNQUFNLEdBQUcsRUFBRSxDQUFDO1lBQ1osSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ25DLENBQUM7UUFDRCxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRW5CLDRFQUE0RTtJQUM5RSxDQUFDO0lBRVEsWUFBWTtRQUNuQixNQUFNLGFBQWEsR0FBRyxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUM7UUFFM0MsaURBQWlEO1FBQ2pELE1BQU0sTUFBTSxHQUFHLENBQUMsR0FBRyxhQUFhLENBQUMsQ0FBQztRQUNsQyxLQUFLLE1BQU0sQ0FBQyxFQUFFLE1BQU0sQ0FBQyxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUN6QyxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDO1lBRTVCLElBQUksS0FBSyxJQUFJLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO2dCQUNuQyxtQ0FBbUM7Z0JBQ25DLEtBQUssTUFBTSxFQUFFLElBQUksTUFBTSxFQUFFLENBQUM7b0JBQ3hCLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQzNDLENBQUM7WUFDSCxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sMENBQTBDO2dCQUMxQyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO29CQUNuQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNsRCxDQUFDO2dCQUNELE1BQU0sT0FBTyxHQUFHLEtBQUssR0FBRyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7Z0JBQzlDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxPQUFPLHNCQUFzQixDQUFDLENBQUM7Z0JBQ25ELEtBQUssSUFBSSxDQUFDLEdBQUcsS0FBSyxHQUFHLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxHQUFHLEtBQUssRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO29CQUMvQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNsRCxDQUFDO1lBQ0gsQ0FBQztRQUNILENBQUM7UUFFRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRUQsdURBQXVEO0lBQ3ZELGtCQUFrQjtRQUNoQixJQUFJLEtBQUssR0FBRyxDQUFDLENBQUM7UUFDZCxLQUFLLE1BQU0sQ0FBQyxFQUFFLE1BQU0sQ0FBQyxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUN6QyxJQUFJLE1BQU0sQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQzFDLEtBQUssSUFBSSxNQUFNLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztZQUNqRCxDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVRLEtBQUs7UUFDWixLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDZCxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFTyxrQkFBa0IsQ0FBQyxLQUFvQjtRQUM3QyxJQUFJLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUN0QixPQUFPLFdBQVcsS0FBSyxDQUFDLFNBQVMsS0FBSyxLQUFLLENBQUMsV0FBVyxTQUFTLENBQUM7UUFDbkUsQ0FBQztRQUNELE9BQU8sV0FBVyxLQUFLLENBQUMsU0FBUyxZQUFZLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQztJQUMvRCxDQUFDO0NBQ0Y7QUEzRUQsc0VBMkVDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBXaW5kb3dlZE5hcnJhdGl2ZUZsb3dSZWNvcmRlciDigJQgU2hvd3MgZmlyc3QgTiBhbmQgbGFzdCBNIGxvb3AgaXRlcmF0aW9ucywgc2tpcHMgdGhlIG1pZGRsZS5cbiAqXG4gKiBCZXN0IGZvcjogTW9kZXJhdGUgbG9vcHMgKDEw4oCTMjAwIGl0ZXJhdGlvbnMpIHdoZXJlIHlvdSB3YW50IHRvIHNlZSBob3cgaXQgc3RhcnRlZFxuICogYW5kIGhvdyBpdCBlbmRlZCwgd2l0aG91dCB0aGUgbm9pc2UgaW4gYmV0d2Vlbi5cbiAqXG4gKiBXaGVuIHRvdGFsIGl0ZXJhdGlvbnMgPD0gaGVhZCArIHRhaWwsIGFsbCBpdGVyYXRpb25zIGFyZSBlbWl0dGVkIChubyBjb21wcmVzc2lvbikuXG4gKiBXaGVuIHRvdGFsID4gaGVhZCArIHRhaWwsIHRoZSBtaWRkbGUgaXMgcmVwbGFjZWQgd2l0aCBhIHN1bW1hcnkgbGluZS5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogLy8gU2hvdyBmaXJzdCAzIGFuZCBsYXN0IDIgaXRlcmF0aW9uc1xuICogZXhlY3V0b3IuYXR0YWNoRmxvd1JlY29yZGVyKG5ldyBXaW5kb3dlZE5hcnJhdGl2ZUZsb3dSZWNvcmRlcigzLCAyKSk7XG4gKiBgYGBcbiAqL1xuXG5pbXBvcnQgeyBOYXJyYXRpdmVGbG93UmVjb3JkZXIgfSBmcm9tICcuLi9OYXJyYXRpdmVGbG93UmVjb3JkZXIuanMnO1xuaW1wb3J0IHR5cGUgeyBGbG93TG9vcEV2ZW50IH0gZnJvbSAnLi4vdHlwZXMuanMnO1xuXG5leHBvcnQgY2xhc3MgV2luZG93ZWROYXJyYXRpdmVGbG93UmVjb3JkZXIgZXh0ZW5kcyBOYXJyYXRpdmVGbG93UmVjb3JkZXIge1xuICBwcml2YXRlIHJlYWRvbmx5IGhlYWQ6IG51bWJlcjtcbiAgcHJpdmF0ZSByZWFkb25seSB0YWlsOiBudW1iZXI7XG4gIHByaXZhdGUgbG9vcEV2ZW50czogTWFwPHN0cmluZywgRmxvd0xvb3BFdmVudFtdPiA9IG5ldyBNYXAoKTtcblxuICBjb25zdHJ1Y3RvcihoZWFkID0gMywgdGFpbCA9IDIsIGlkPzogc3RyaW5nKSB7XG4gICAgc3VwZXIoaWQgPz8gJ25hcnJhdGl2ZS13aW5kb3dlZCcpO1xuICAgIHRoaXMuaGVhZCA9IGhlYWQ7XG4gICAgdGhpcy50YWlsID0gdGFpbDtcbiAgfVxuXG4gIG92ZXJyaWRlIG9uTG9vcChldmVudDogRmxvd0xvb3BFdmVudCk6IHZvaWQge1xuICAgIC8vIEFjY3VtdWxhdGUgYWxsIGxvb3AgZXZlbnRzIOKAlCB3ZSdsbCByZW5kZXIgdGhlbSBpbiBnZXRTZW50ZW5jZXNcbiAgICBjb25zdCBrZXkgPSBldmVudC50YXJnZXQ7XG4gICAgbGV0IGV2ZW50cyA9IHRoaXMubG9vcEV2ZW50cy5nZXQoa2V5KTtcbiAgICBpZiAoIWV2ZW50cykge1xuICAgICAgZXZlbnRzID0gW107XG4gICAgICB0aGlzLmxvb3BFdmVudHMuc2V0KGtleSwgZXZlbnRzKTtcbiAgICB9XG4gICAgZXZlbnRzLnB1c2goZXZlbnQpO1xuXG4gICAgLy8gRG9uJ3QgY2FsbCBzdXBlciDigJQgd2UgaGFuZGxlIGFsbCBsb29wIHNlbnRlbmNlIGdlbmVyYXRpb24gaW4gZ2V0U2VudGVuY2VzXG4gIH1cblxuICBvdmVycmlkZSBnZXRTZW50ZW5jZXMoKTogc3RyaW5nW10ge1xuICAgIGNvbnN0IGJhc2VTZW50ZW5jZXMgPSBzdXBlci5nZXRTZW50ZW5jZXMoKTtcblxuICAgIC8vIEFwcGVuZCB3aW5kb3dlZCBsb29wIHNlbnRlbmNlcyBmb3IgZWFjaCB0YXJnZXRcbiAgICBjb25zdCByZXN1bHQgPSBbLi4uYmFzZVNlbnRlbmNlc107XG4gICAgZm9yIChjb25zdCBbLCBldmVudHNdIG9mIHRoaXMubG9vcEV2ZW50cykge1xuICAgICAgY29uc3QgdG90YWwgPSBldmVudHMubGVuZ3RoO1xuXG4gICAgICBpZiAodG90YWwgPD0gdGhpcy5oZWFkICsgdGhpcy50YWlsKSB7XG4gICAgICAgIC8vIFNtYWxsIGxvb3Ag4oCUIGVtaXQgYWxsIGl0ZXJhdGlvbnNcbiAgICAgICAgZm9yIChjb25zdCBldiBvZiBldmVudHMpIHtcbiAgICAgICAgICByZXN1bHQucHVzaCh0aGlzLmZvcm1hdExvb3BTZW50ZW5jZShldikpO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBMYXJnZSBsb29wIOKAlCBoZWFkICsgc2tpcCBzdW1tYXJ5ICsgdGFpbFxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuaGVhZDsgaSsrKSB7XG4gICAgICAgICAgcmVzdWx0LnB1c2godGhpcy5mb3JtYXRMb29wU2VudGVuY2UoZXZlbnRzW2ldKSk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3Qgc2tpcHBlZCA9IHRvdGFsIC0gdGhpcy5oZWFkIC0gdGhpcy50YWlsO1xuICAgICAgICByZXN1bHQucHVzaChgLi4uICgke3NraXBwZWR9IGl0ZXJhdGlvbnMgb21pdHRlZClgKTtcbiAgICAgICAgZm9yIChsZXQgaSA9IHRvdGFsIC0gdGhpcy50YWlsOyBpIDwgdG90YWw7IGkrKykge1xuICAgICAgICAgIHJlc3VsdC5wdXNoKHRoaXMuZm9ybWF0TG9vcFNlbnRlbmNlKGV2ZW50c1tpXSkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIC8qKiBSZXR1cm5zIHRoZSBudW1iZXIgb2Ygc3VwcHJlc3NlZCBsb29wIHNlbnRlbmNlcy4gKi9cbiAgZ2V0U3VwcHJlc3NlZENvdW50KCk6IG51bWJlciB7XG4gICAgbGV0IHRvdGFsID0gMDtcbiAgICBmb3IgKGNvbnN0IFssIGV2ZW50c10gb2YgdGhpcy5sb29wRXZlbnRzKSB7XG4gICAgICBpZiAoZXZlbnRzLmxlbmd0aCA+IHRoaXMuaGVhZCArIHRoaXMudGFpbCkge1xuICAgICAgICB0b3RhbCArPSBldmVudHMubGVuZ3RoIC0gdGhpcy5oZWFkIC0gdGhpcy50YWlsO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdG90YWw7XG4gIH1cblxuICBvdmVycmlkZSBjbGVhcigpOiB2b2lkIHtcbiAgICBzdXBlci5jbGVhcigpO1xuICAgIHRoaXMubG9vcEV2ZW50cy5jbGVhcigpO1xuICB9XG5cbiAgcHJpdmF0ZSBmb3JtYXRMb29wU2VudGVuY2UoZXZlbnQ6IEZsb3dMb29wRXZlbnQpOiBzdHJpbmcge1xuICAgIGlmIChldmVudC5kZXNjcmlwdGlvbikge1xuICAgICAgcmV0dXJuIGBPbiBwYXNzICR7ZXZlbnQuaXRlcmF0aW9ufTogJHtldmVudC5kZXNjcmlwdGlvbn0gYWdhaW4uYDtcbiAgICB9XG4gICAgcmV0dXJuIGBPbiBwYXNzICR7ZXZlbnQuaXRlcmF0aW9ufSB0aHJvdWdoICR7ZXZlbnQudGFyZ2V0fS5gO1xuICB9XG59XG4iXX0=