footprintjs 4.17.1 → 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.
- package/AGENTS.md +567 -82
- package/README.md +1 -0
- package/dist/advanced.js +4 -2
- package/dist/esm/advanced.js +2 -1
- package/dist/esm/lib/recorder/BoundaryStateTracker.js +263 -0
- package/dist/esm/lib/recorder/index.js +2 -1
- package/dist/esm/trace.js +4 -1
- package/dist/lib/recorder/BoundaryStateTracker.js +267 -0
- package/dist/lib/recorder/index.js +4 -2
- package/dist/trace.js +6 -2
- package/dist/types/advanced.d.ts +1 -0
- package/dist/types/lib/recorder/BoundaryStateTracker.d.ts +215 -0
- package/dist/types/lib/recorder/index.d.ts +1 -0
- package/dist/types/trace.d.ts +1 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -165,6 +165,7 @@ The LLM calls the tool, gets back the decision and causal trace, and explains th
|
|
|
165
165
|
| **Subflow break propagation** | Mount a subflow with `propagateBreak: true` — inner `$break` terminates the parent loop, with drill-down preserved |
|
|
166
166
|
| **Emit channel** | `scope.$emit(name, payload)` — user-authored structured events to `EmitRecorder`, pass-through, zero-allocation when no recorder attached, redactable via `emitPatterns` |
|
|
167
167
|
| **Detach** *(new in 4.17)* | `scope.$detachAndForget(driver, child, input)` and `scope.$detachAndJoinLater(driver, child, input)` — fire-and-forget child flowcharts via the `footprintjs/detach` subpath. Six built-in drivers (microtask / immediate / setImmediate / setTimeout / sendBeacon / workerThread) + custom-driver protocol. Builder-native composition (`addDetachAndForget` / `addDetachAndJoinLater`) makes detach a labeled chart stage. `flushAllDetached()` for graceful shutdown. [Guide →](https://footprintjs.github.io/footPrint/guides/patterns/detach/) |
|
|
168
|
+
| **Boundary state tracking** *(new in 4.17.2)* | `BoundaryStateTracker<TState>` — third storage primitive on the recorder shelf alongside `SequenceRecorder<T>` (durable ordered) and `KeyedRecorder<T>` (durable 1:1). Tracks live transient state DURING a `[start, stop]` event interval (LLM stream partial, tool args streaming, agent turn state) and clears on stop. O(1) reads via `getActive` / `hasActive` / `activeCount`. Mental model: existing recorder *interfaces* are observers; storage primitives are *bookkeeping shelves*. A real recorder picks ONE observer interface AND ONE storage shelf via `extends + implements`. [Guide →](https://footprintjs.github.io/footPrint/guides/features/recorder-storage-primitives/) |
|
|
168
169
|
|
|
169
170
|
---
|
|
170
171
|
|
package/dist/advanced.js
CHANGED
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
*/
|
|
23
23
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
24
24
|
exports.createSubflowHandlerDeps = exports.ContinuationResolver = exports.computeNodeType = exports.ChildrenExecutor = exports.applyOutputMapping = exports.NullControlFlowNarrativeGenerator = exports.isStageNodeReturn = exports.FlowchartTraverser = exports.shouldWrapWithProxy = exports.SCOPE_METHOD_NAMES = exports.joinPath = exports.createArrayProxy = exports.buildNestedPatch = exports.BREAK_SETTER = exports.ExecutionRuntime = exports.ZodScopeResolver = exports.isScopeSchema = exports.defineScopeSchema = exports.createScopeProxyFromZod = exports.toScopeFactory = exports.resolveScopeProvider = exports.registerScopeResolver = exports.makeFactoryProvider = exports.makeClassProvider = exports.looksLikeFactory = exports.looksLikeClassCtor = exports.isSubclassOfScopeFacade = exports.attachScopeMethods = exports.ScopeFacade = exports.createProtectedScope = exports.createErrorMessage = exports.createTypedScopeFactory = exports.specToStageNode = exports.SelectorFnList = exports.DeciderList = exports.ArrayMergeMode = exports.updateValue = exports.updateNestedValue = exports.setNestedValue = exports.redactPatch = exports.normalisePath = exports.getRunAndGlobalPaths = exports.getNestedValue = exports.deepSmartMerge = exports.applySmartMerge = exports.DiagnosticCollector = exports.TransactionBuffer = exports.EventLog = exports.StageContext = exports.SharedMemory = void 0;
|
|
25
|
-
exports.KeyedRecorder = exports.findLastWriter = exports.findCommits = exports.findCommit = exports.parseRuntimeStageId = exports.createExecutionCounter = exports.buildRuntimeStageId = exports.SubflowExecutor = exports.StageRunner = exports.SelectorHandler = exports.seedSubflowGlobalStore = exports.RuntimeStructureManager = exports.NodeResolver = exports.getInitialScopeValues = exports.extractParentScopeValues = exports.ExtractorRunner = exports.DEFAULT_MAX_ITERATIONS = exports.DeciderHandler = void 0;
|
|
25
|
+
exports.KeyedRecorder = exports.BoundaryStateTracker = exports.findLastWriter = exports.findCommits = exports.findCommit = exports.parseRuntimeStageId = exports.createExecutionCounter = exports.buildRuntimeStageId = exports.SubflowExecutor = exports.StageRunner = exports.SelectorHandler = exports.seedSubflowGlobalStore = exports.RuntimeStructureManager = exports.NodeResolver = exports.getInitialScopeValues = exports.extractParentScopeValues = exports.ExtractorRunner = exports.DEFAULT_MAX_ITERATIONS = exports.DeciderHandler = void 0;
|
|
26
26
|
var index_js_1 = require("./lib/memory/index.js");
|
|
27
27
|
Object.defineProperty(exports, "SharedMemory", { enumerable: true, get: function () { return index_js_1.SharedMemory; } });
|
|
28
28
|
var index_js_2 = require("./lib/memory/index.js");
|
|
@@ -110,6 +110,8 @@ var commitLogUtils_js_1 = require("./lib/memory/commitLogUtils.js");
|
|
|
110
110
|
Object.defineProperty(exports, "findCommit", { enumerable: true, get: function () { return commitLogUtils_js_1.findCommit; } });
|
|
111
111
|
Object.defineProperty(exports, "findCommits", { enumerable: true, get: function () { return commitLogUtils_js_1.findCommits; } });
|
|
112
112
|
Object.defineProperty(exports, "findLastWriter", { enumerable: true, get: function () { return commitLogUtils_js_1.findLastWriter; } });
|
|
113
|
+
var BoundaryStateTracker_js_1 = require("./lib/recorder/BoundaryStateTracker.js");
|
|
114
|
+
Object.defineProperty(exports, "BoundaryStateTracker", { enumerable: true, get: function () { return BoundaryStateTracker_js_1.BoundaryStateTracker; } });
|
|
113
115
|
var KeyedRecorder_js_1 = require("./lib/recorder/KeyedRecorder.js");
|
|
114
116
|
Object.defineProperty(exports, "KeyedRecorder", { enumerable: true, get: function () { return KeyedRecorder_js_1.KeyedRecorder; } });
|
|
115
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWR2YW5jZWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvYWR2YW5jZWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7Ozs7Ozs7R0FZRztBQUNIOzs7Ozs7O0dBT0c7Ozs7QUFjSCxrREFBcUQ7QUFBNUMsd0dBQUEsWUFBWSxPQUFBO0FBQ3JCLGtEQUFxRDtBQUE1Qyx3R0FBQSxZQUFZLE9BQUE7QUFDckIsa0RBQWlEO0FBQXhDLG9HQUFBLFFBQVEsT0FBQTtBQUNqQixrREFBMEQ7QUFBakQsNkdBQUEsaUJBQWlCLE9BQUE7QUFDMUIsa0RBQTREO0FBQW5ELCtHQUFBLG1CQUFtQixPQUFBO0FBQzVCLGtEQVUrQjtBQVQ3QiwyR0FBQSxlQUFlLE9BQUE7QUFDZiwwR0FBQSxjQUFjLE9BQUE7QUFDZCwwR0FBQSxjQUFjLE9BQUE7QUFDZCxnSEFBQSxvQkFBb0IsT0FBQTtBQUNwQix5R0FBQSxhQUFhLE9BQUE7QUFDYix1R0FBQSxXQUFXLE9BQUE7QUFDWCwwR0FBQSxjQUFjLE9BQUE7QUFDZCw2R0FBQSxpQkFBaUIsT0FBQTtBQUNqQix1R0FBQSxXQUFXLE9BQUE7QUF3QmIsbURBQXNHO0FBQTdGLDBHQUFBLGNBQWMsT0FBQTtBQUFFLHVHQUFBLFdBQVcsT0FBQTtBQUFFLDBHQUFBLGNBQWMsT0FBQTtBQUFFLDJHQUFBLGVBQWUsT0FBQTtBQUNyRSxxRUFBMEU7QUFBakUsNEhBQUEsdUJBQXVCLE9BQUE7QUFhaEMsaURBQTZGO0FBQXBGLDhHQUFBLGtCQUFrQixPQUFBO0FBQUUsZ0hBQUEsb0JBQW9CLE9BQUE7QUFBRSx1R0FBQSxXQUFXLE9BQUE7QUFDOUQsaURBVThCO0FBVDVCLDhHQUFBLGtCQUFrQixPQUFBO0FBQ2xCLG1IQUFBLHVCQUF1QixPQUFBO0FBQ3ZCLDhHQUFBLGtCQUFrQixPQUFBO0FBQ2xCLDRHQUFBLGdCQUFnQixPQUFBO0FBQ2hCLDZHQUFBLGlCQUFpQixPQUFBO0FBQ2pCLCtHQUFBLG1CQUFtQixPQUFBO0FBQ25CLGlIQUFBLHFCQUFxQixPQUFBO0FBQ3JCLGdIQUFBLG9CQUFvQixPQUFBO0FBQ3BCLDBHQUFBLGNBQWMsT0FBQTtBQWVoQixnQkFBZ0I7QUFDaEIsa0RBQW1IO0FBQTFHLG9IQUFBLHVCQUF1QixPQUFBO0FBQUUsOEdBQUEsaUJBQWlCLE9BQUE7QUFBRSwwR0FBQSxhQUFhLE9BQUE7QUFBRSw2R0FBQSxnQkFBZ0IsT0FBQTtBQU9wRixtREFBeUQ7QUFBaEQsNkdBQUEsZ0JBQWdCLE9BQUE7QUFPekIscURBT2lDO0FBTi9CLHlHQUFBLFlBQVksT0FBQTtBQUNaLDZHQUFBLGdCQUFnQixPQUFBO0FBQ2hCLDZHQUFBLGdCQUFnQixPQUFBO0FBQ2hCLHFHQUFBLFFBQVEsT0FBQTtBQUNSLCtHQUFBLGtCQUFrQixPQUFBO0FBQ2xCLGdIQUFBLG1CQUFtQixPQUFBO0FBU3JCLG1EQUEyRDtBQUFsRCwrR0FBQSxrQkFBa0IsT0FBQTtBQUMzQixtREFBMEQ7QUFBakQsOEdBQUEsaUJBQWlCLE9BQUE7QUFzQjFCLG1EQUEwRTtBQUFqRSw4SEFBQSxpQ0FBaUMsT0FBQTtBQUkxQyxtREFpQitCO0FBaEI3QiwrR0FBQSxrQkFBa0IsT0FBQTtBQUNsQiw2R0FBQSxnQkFBZ0IsT0FBQTtBQUNoQiw0R0FBQSxlQUFlLE9BQUE7QUFDZixpSEFBQSxvQkFBb0IsT0FBQTtBQUNwQixxSEFBQSx3QkFBd0IsT0FBQTtBQUN4QiwyR0FBQSxjQUFjLE9BQUE7QUFDZCxtSEFBQSxzQkFBc0IsT0FBQTtBQUN0Qiw0R0FBQSxlQUFlLE9BQUE7QUFDZixxSEFBQSx3QkFBd0IsT0FBQTtBQUN4QixrSEFBQSxxQkFBcUIsT0FBQTtBQUNyQix5R0FBQSxZQUFZLE9BQUE7QUFDWixvSEFBQSx1QkFBdUIsT0FBQTtBQUN2QixtSEFBQSxzQkFBc0IsT0FBQTtBQUN0Qiw0R0FBQSxlQUFlLE9BQUE7QUFDZix3R0FBQSxXQUFXLE9BQUE7QUFDWCw0R0FBQSxlQUFlLE9BQUE7QUFLakIsb0VBQWtIO0FBQXpHLHdIQUFBLG1CQUFtQixPQUFBO0FBQUUsMkhBQUEsc0JBQXNCLE9BQUE7QUFBRSx3SEFBQSxtQkFBbUIsT0FBQTtBQUN6RSxvRUFBeUY7QUFBaEYsK0dBQUEsVUFBVSxPQUFBO0FBQUUsZ0hBQUEsV0FBVyxPQUFBO0FBQUUsbUhBQUEsY0FBYyxPQUFBO0FBQ2hELG9FQUFnRTtBQUF2RCxpSEFBQSxhQUFhLE9BQUEiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIGZvb3RwcmludGpzL2FkdmFuY2VkIOKAlCBMb3ctbGV2ZWwgaW50ZXJuYWxzIGZvciBjdXN0b20gZXhlY3V0aW9uIGVuZ2luZXMgYW5kIHRlc3RpbmcuXG4gKlxuICogTW9zdCB1c2VycyBuZXZlciBuZWVkIHRoaXMuIFVzZSBgZm9vdHByaW50anNgIChtYWluKSBpbnN0ZWFkLlxuICogVGhpcyBlbnRyeSBwb2ludCBleHBvc2VzIGBTaGFyZWRNZW1vcnlgLCBgU3RhZ2VDb250ZXh0YCwgYEZsb3djaGFydFRyYXZlcnNlcmAsXG4gKiBhbmQgb3RoZXIgcHJpbWl0aXZlcyB0aGF0IHBvd2VyIHRoZSBlbmdpbmUuXG4gKlxuICogYGBgdHNcbiAqIGltcG9ydCB7IFNoYXJlZE1lbW9yeSwgU3RhZ2VDb250ZXh0IH0gZnJvbSAnZm9vdHByaW50anMvYWR2YW5jZWQnO1xuICogYGBgXG4gKlxuICogQG1vZHVsZSBhZHZhbmNlZFxuICovXG4vKipcbiAqIEZvb3RQcmludCDigJQgQWR2YW5jZWQgLyBJbnRlcm5hbCBBUElcbiAqXG4gKiBUaGVzZSBleHBvcnRzIGFyZSBmb3IgYWR2YW5jZWQgdXNlIGNhc2VzLCB0ZXN0aW5nLCBhbmQgYnVpbGRpbmdcbiAqIGN1c3RvbSBleGVjdXRpb24gZW5naW5lcy4gTW9zdCB1c2VycyBzaG91bGQgdXNlIHRoZSBtYWluICdmb290cHJpbnQnIGVudHJ5IHBvaW50LlxuICpcbiAqIEltcG9ydCB2aWE6IGltcG9ydCB7IC4uLiB9IGZyb20gJ2Zvb3RwcmludC9hZHZhbmNlZCdcbiAqL1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBNZW1vcnkg4oCUIExvdy1sZXZlbCB0cmFuc2FjdGlvbmFsIHN0YXRlIHByaW1pdGl2ZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuZXhwb3J0IHR5cGUge1xuICBDb21taXRCdW5kbGUsXG4gIEZsb3dDb250cm9sVHlwZSxcbiAgRmxvd01lc3NhZ2UsXG4gIE1lbW9yeVBhdGNoLFxuICBTdGFnZVNuYXBzaG90LFxuICBUcmFjZUVudHJ5LFxufSBmcm9tICcuL2xpYi9tZW1vcnkvaW5kZXguanMnO1xuZXhwb3J0IHsgU2hhcmVkTWVtb3J5IH0gZnJvbSAnLi9saWIvbWVtb3J5L2luZGV4LmpzJztcbmV4cG9ydCB7IFN0YWdlQ29udGV4dCB9IGZyb20gJy4vbGliL21lbW9yeS9pbmRleC5qcyc7XG5leHBvcnQgeyBFdmVudExvZyB9IGZyb20gJy4vbGliL21lbW9yeS9pbmRleC5qcyc7XG5leHBvcnQgeyBUcmFuc2FjdGlvbkJ1ZmZlciB9IGZyb20gJy4vbGliL21lbW9yeS9pbmRleC5qcyc7XG5leHBvcnQgeyBEaWFnbm9zdGljQ29sbGVjdG9yIH0gZnJvbSAnLi9saWIvbWVtb3J5L2luZGV4LmpzJztcbmV4cG9ydCB7XG4gIGFwcGx5U21hcnRNZXJnZSxcbiAgZGVlcFNtYXJ0TWVyZ2UsXG4gIGdldE5lc3RlZFZhbHVlLFxuICBnZXRSdW5BbmRHbG9iYWxQYXRocyxcbiAgbm9ybWFsaXNlUGF0aCxcbiAgcmVkYWN0UGF0Y2gsXG4gIHNldE5lc3RlZFZhbHVlLFxuICB1cGRhdGVOZXN0ZWRWYWx1ZSxcbiAgdXBkYXRlVmFsdWUsXG59IGZyb20gJy4vbGliL21lbW9yeS9pbmRleC5qcyc7XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEJ1aWxkZXIg4oCUIFR5cGVzIGFuZCBpbnRlcm5hbHNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuZXhwb3J0IHR5cGUge1xuICBCdWlsZFRpbWVFeHRyYWN0b3IsXG4gIEJ1aWxkVGltZU5vZGVNZXRhZGF0YSxcbiAgRXhlY09wdGlvbnMsXG4gIEZsb3dDaGFydFNwZWMsXG4gIElMb2dnZXIsXG4gIFNjb3BlUHJvdGVjdGlvbk1vZGUsXG4gIFNlcmlhbGl6ZWRQaXBlbGluZVN0cnVjdHVyZSxcbiAgU2ltcGxpZmllZFBhcmFsbGVsU3BlYyxcbiAgU3RhZ2VGbixcbiAgU3RhZ2VOb2RlLFxuICBTdHJlYW1DYWxsYmFjayxcbiAgU3RyZWFtTGlmZWN5Y2xlSGFuZGxlcixcbiAgU3RyZWFtVG9rZW5IYW5kbGVyLFxuICBTdWJmbG93TW91bnRPcHRpb25zLFxuICBTdWJmbG93UmVmLFxufSBmcm9tICcuL2xpYi9idWlsZGVyL2luZGV4LmpzJztcbmV4cG9ydCB7IEFycmF5TWVyZ2VNb2RlLCBEZWNpZGVyTGlzdCwgU2VsZWN0b3JGbkxpc3QsIHNwZWNUb1N0YWdlTm9kZSB9IGZyb20gJy4vbGliL2J1aWxkZXIvaW5kZXguanMnO1xuZXhwb3J0IHsgY3JlYXRlVHlwZWRTY29wZUZhY3RvcnkgfSBmcm9tICcuL2xpYi9idWlsZGVyL3R5cGVkRmxvd0NoYXJ0LmpzJztcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gU2NvcGUg4oCUIFByb3ZpZGVycywgcHJvdGVjdGlvbiwgcmVjb3JkZXIgb3B0aW9ucywgYW5kIGV2ZW50IHR5cGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCB0eXBlIHtcbiAgUHJvdmlkZXJSZXNvbHZlcixcbiAgUmVzb2x2ZU9wdGlvbnMsXG4gIFNjb3BlUHJvdmlkZXIsXG4gIFN0YWdlQ29udGV4dExpa2UsXG4gIFN0cmljdE1vZGUsXG59IGZyb20gJy4vbGliL3Njb3BlL2luZGV4LmpzJztcbmV4cG9ydCB7IGNyZWF0ZUVycm9yTWVzc2FnZSwgY3JlYXRlUHJvdGVjdGVkU2NvcGUsIFNjb3BlRmFjYWRlIH0gZnJvbSAnLi9saWIvc2NvcGUvaW5kZXguanMnO1xuZXhwb3J0IHtcbiAgYXR0YWNoU2NvcGVNZXRob2RzLFxuICBpc1N1YmNsYXNzT2ZTY29wZUZhY2FkZSxcbiAgbG9va3NMaWtlQ2xhc3NDdG9yLFxuICBsb29rc0xpa2VGYWN0b3J5LFxuICBtYWtlQ2xhc3NQcm92aWRlcixcbiAgbWFrZUZhY3RvcnlQcm92aWRlcixcbiAgcmVnaXN0ZXJTY29wZVJlc29sdmVyLFxuICByZXNvbHZlU2NvcGVQcm92aWRlcixcbiAgdG9TY29wZUZhY3RvcnksXG59IGZyb20gJy4vbGliL3Njb3BlL2luZGV4LmpzJztcblxuLy8gUmVjb3JkZXIgY29uZmlnL29wdGlvbiB0eXBlc1xuZXhwb3J0IHR5cGUge1xuICBBZ2dyZWdhdGVkTWV0cmljcyxcbiAgRGVidWdFbnRyeSxcbiAgRGVidWdSZWNvcmRlck9wdGlvbnMsXG4gIERlYnVnVmVyYm9zaXR5LFxuICBEZWZpbmVTY29wZU9wdGlvbnMsXG4gIFJlY29yZGVyQ29udGV4dCxcbiAgU3RhZ2VFdmVudCxcbiAgU3RhZ2VNZXRyaWNzLFxufSBmcm9tICcuL2xpYi9zY29wZS9pbmRleC5qcyc7XG5cbi8vIFpvZCBpbnRlcm5hbHNcbmV4cG9ydCB7IGNyZWF0ZVNjb3BlUHJveHlGcm9tWm9kLCBkZWZpbmVTY29wZVNjaGVtYSwgaXNTY29wZVNjaGVtYSwgWm9kU2NvcGVSZXNvbHZlciB9IGZyb20gJy4vbGliL3Njb3BlL2luZGV4LmpzJztcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gUnVubmVyIOKAlCBJbnRlcm5hbHNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuZXhwb3J0IHR5cGUgeyBSdW50aW1lU25hcHNob3QgfSBmcm9tICcuL2xpYi9ydW5uZXIvaW5kZXguanMnO1xuZXhwb3J0IHsgRXhlY3V0aW9uUnVudGltZSB9IGZyb20gJy4vbGliL3J1bm5lci9pbmRleC5qcyc7XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFJlYWN0aXZlIOKAlCBUeXBlZFNjb3BlIGludGVybmFscyAoZm9yIGN1c3RvbSBwcm94eSBpbXBsZW1lbnRhdGlvbnMpXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCB0eXBlIHsgUmVhY3RpdmVPcHRpb25zLCBSZWFjdGl2ZVRhcmdldCB9IGZyb20gJy4vbGliL3JlYWN0aXZlL2luZGV4LmpzJztcbmV4cG9ydCB7XG4gIEJSRUFLX1NFVFRFUixcbiAgYnVpbGROZXN0ZWRQYXRjaCxcbiAgY3JlYXRlQXJyYXlQcm94eSxcbiAgam9pblBhdGgsXG4gIFNDT1BFX01FVEhPRF9OQU1FUyxcbiAgc2hvdWxkV3JhcFdpdGhQcm94eSxcbn0gZnJvbSAnLi9saWIvcmVhY3RpdmUvaW5kZXguanMnO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBFbmdpbmUg4oCUIERGUyBncmFwaCB0cmF2ZXJzYWwgaW50ZXJuYWxzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCB0eXBlIHsgVHJhdmVyc2VyT3B0aW9ucyB9IGZyb20gJy4vbGliL2VuZ2luZS9pbmRleC5qcyc7XG5leHBvcnQgdHlwZSB7IERlY2lkZXIgfSBmcm9tICcuL2xpYi9lbmdpbmUvaW5kZXguanMnO1xuZXhwb3J0IHsgRmxvd2NoYXJ0VHJhdmVyc2VyIH0gZnJvbSAnLi9saWIvZW5naW5lL2luZGV4LmpzJztcbmV4cG9ydCB7IGlzU3RhZ2VOb2RlUmV0dXJuIH0gZnJvbSAnLi9saWIvZW5naW5lL2luZGV4LmpzJztcblxuLy8gTmFycmF0aXZlIGludGVybmFsc1xuZXhwb3J0IHR5cGUgeyBJQ29udHJvbEZsb3dOYXJyYXRpdmUgfSBmcm9tICcuL2xpYi9lbmdpbmUvaW5kZXguanMnO1xuZXhwb3J0IHR5cGUgeyBDb21iaW5lZE5hcnJhdGl2ZUVudHJ5LCBDb21iaW5lZE5hcnJhdGl2ZU9wdGlvbnMgfSBmcm9tICcuL2xpYi9lbmdpbmUvaW5kZXguanMnO1xuZXhwb3J0IHR5cGUge1xuICBCcmFuY2hSZXN1bHQsXG4gIEJyYW5jaFJlc3VsdHMsXG4gIFNlcmlhbGl6ZWRQaXBlbGluZVN0cnVjdHVyZSBhcyBFbmdpbmVTZXJpYWxpemVkUGlwZWxpbmVTdHJ1Y3R1cmUsXG4gIFN0YWdlU25hcHNob3QgYXMgRW5naW5lU3RhZ2VTbmFwc2hvdCxcbiAgRXh0cmFjdG9yRXJyb3IsXG4gIEhhbmRsZXJEZXBzLFxuICBJRXhlY3V0aW9uUnVudGltZSxcbiAgTm9kZVJlc3VsdFR5cGUsXG4gIFJ1bnRpbWVTdHJ1Y3R1cmVNZXRhZGF0YSxcbiAgU2NvcGVGYWN0b3J5LFxuICBTZXJpYWxpemVkUGlwZWxpbmVOb2RlLFxuICBTdGFnZUZ1bmN0aW9uLFxuICBTdWJmbG93UmVzdWx0LFxuICBUcmF2ZXJzYWxFeHRyYWN0b3IsXG4gIFRyYXZlcnNhbFJlc3VsdCxcbn0gZnJvbSAnLi9saWIvZW5naW5lL2luZGV4LmpzJztcbmV4cG9ydCB7IE51bGxDb250cm9sRmxvd05hcnJhdGl2ZUdlbmVyYXRvciB9IGZyb20gJy4vbGliL2VuZ2luZS9pbmRleC5qcyc7XG5cbi8vIEhhbmRsZXJzICh0ZXN0aW5nIC8gY3VzdG9tIGVuZ2luZXMpXG5leHBvcnQgdHlwZSB7IENhbGxFeHRyYWN0b3JGbiwgRXhlY3V0ZU5vZGVGbiwgR2V0U3RhZ2VQYXRoRm4sIFJ1blN0YWdlRm4gfSBmcm9tICcuL2xpYi9lbmdpbmUvaW5kZXguanMnO1xuZXhwb3J0IHtcbiAgYXBwbHlPdXRwdXRNYXBwaW5nLFxuICBDaGlsZHJlbkV4ZWN1dG9yLFxuICBjb21wdXRlTm9kZVR5cGUsXG4gIENvbnRpbnVhdGlvblJlc29sdmVyLFxuICBjcmVhdGVTdWJmbG93SGFuZGxlckRlcHMsXG4gIERlY2lkZXJIYW5kbGVyLFxuICBERUZBVUxUX01BWF9JVEVSQVRJT05TLFxuICBFeHRyYWN0b3JSdW5uZXIsXG4gIGV4dHJhY3RQYXJlbnRTY29wZVZhbHVlcyxcbiAgZ2V0SW5pdGlhbFNjb3BlVmFsdWVzLFxuICBOb2RlUmVzb2x2ZXIsXG4gIFJ1bnRpbWVTdHJ1Y3R1cmVNYW5hZ2VyLFxuICBzZWVkU3ViZmxvd0dsb2JhbFN0b3JlLFxuICBTZWxlY3RvckhhbmRsZXIsXG4gIFN0YWdlUnVubmVyLFxuICBTdWJmbG93RXhlY3V0b3IsXG59IGZyb20gJy4vbGliL2VuZ2luZS9pbmRleC5qcyc7XG5cbi8vIFRyYWNlIHV0aWxpdGllcyDigJQgcmUtZXhwb3J0ZWQgaGVyZSBmb3IgY29udmVuaWVuY2UuIENhbm9uaWNhbCBwYXRoOiAnZm9vdHByaW50anMvdHJhY2UnXG5leHBvcnQgdHlwZSB7IEV4ZWN1dGlvbkNvdW50ZXIgfSBmcm9tICcuL2xpYi9lbmdpbmUvcnVudGltZVN0YWdlSWQuanMnO1xuZXhwb3J0IHsgYnVpbGRSdW50aW1lU3RhZ2VJZCwgY3JlYXRlRXhlY3V0aW9uQ291bnRlciwgcGFyc2VSdW50aW1lU3RhZ2VJZCB9IGZyb20gJy4vbGliL2VuZ2luZS9ydW50aW1lU3RhZ2VJZC5qcyc7XG5leHBvcnQgeyBmaW5kQ29tbWl0LCBmaW5kQ29tbWl0cywgZmluZExhc3RXcml0ZXIgfSBmcm9tICcuL2xpYi9tZW1vcnkvY29tbWl0TG9nVXRpbHMuanMnO1xuZXhwb3J0IHsgS2V5ZWRSZWNvcmRlciB9IGZyb20gJy4vbGliL3JlY29yZGVyL0tleWVkUmVjb3JkZXIuanMnO1xuIl19
|
|
117
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWR2YW5jZWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvYWR2YW5jZWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7Ozs7Ozs7R0FZRztBQUNIOzs7Ozs7O0dBT0c7Ozs7QUFjSCxrREFBcUQ7QUFBNUMsd0dBQUEsWUFBWSxPQUFBO0FBQ3JCLGtEQUFxRDtBQUE1Qyx3R0FBQSxZQUFZLE9BQUE7QUFDckIsa0RBQWlEO0FBQXhDLG9HQUFBLFFBQVEsT0FBQTtBQUNqQixrREFBMEQ7QUFBakQsNkdBQUEsaUJBQWlCLE9BQUE7QUFDMUIsa0RBQTREO0FBQW5ELCtHQUFBLG1CQUFtQixPQUFBO0FBQzVCLGtEQVUrQjtBQVQ3QiwyR0FBQSxlQUFlLE9BQUE7QUFDZiwwR0FBQSxjQUFjLE9BQUE7QUFDZCwwR0FBQSxjQUFjLE9BQUE7QUFDZCxnSEFBQSxvQkFBb0IsT0FBQTtBQUNwQix5R0FBQSxhQUFhLE9BQUE7QUFDYix1R0FBQSxXQUFXLE9BQUE7QUFDWCwwR0FBQSxjQUFjLE9BQUE7QUFDZCw2R0FBQSxpQkFBaUIsT0FBQTtBQUNqQix1R0FBQSxXQUFXLE9BQUE7QUF3QmIsbURBQXNHO0FBQTdGLDBHQUFBLGNBQWMsT0FBQTtBQUFFLHVHQUFBLFdBQVcsT0FBQTtBQUFFLDBHQUFBLGNBQWMsT0FBQTtBQUFFLDJHQUFBLGVBQWUsT0FBQTtBQUNyRSxxRUFBMEU7QUFBakUsNEhBQUEsdUJBQXVCLE9BQUE7QUFhaEMsaURBQTZGO0FBQXBGLDhHQUFBLGtCQUFrQixPQUFBO0FBQUUsZ0hBQUEsb0JBQW9CLE9BQUE7QUFBRSx1R0FBQSxXQUFXLE9BQUE7QUFDOUQsaURBVThCO0FBVDVCLDhHQUFBLGtCQUFrQixPQUFBO0FBQ2xCLG1IQUFBLHVCQUF1QixPQUFBO0FBQ3ZCLDhHQUFBLGtCQUFrQixPQUFBO0FBQ2xCLDRHQUFBLGdCQUFnQixPQUFBO0FBQ2hCLDZHQUFBLGlCQUFpQixPQUFBO0FBQ2pCLCtHQUFBLG1CQUFtQixPQUFBO0FBQ25CLGlIQUFBLHFCQUFxQixPQUFBO0FBQ3JCLGdIQUFBLG9CQUFvQixPQUFBO0FBQ3BCLDBHQUFBLGNBQWMsT0FBQTtBQWVoQixnQkFBZ0I7QUFDaEIsa0RBQW1IO0FBQTFHLG9IQUFBLHVCQUF1QixPQUFBO0FBQUUsOEdBQUEsaUJBQWlCLE9BQUE7QUFBRSwwR0FBQSxhQUFhLE9BQUE7QUFBRSw2R0FBQSxnQkFBZ0IsT0FBQTtBQU9wRixtREFBeUQ7QUFBaEQsNkdBQUEsZ0JBQWdCLE9BQUE7QUFPekIscURBT2lDO0FBTi9CLHlHQUFBLFlBQVksT0FBQTtBQUNaLDZHQUFBLGdCQUFnQixPQUFBO0FBQ2hCLDZHQUFBLGdCQUFnQixPQUFBO0FBQ2hCLHFHQUFBLFFBQVEsT0FBQTtBQUNSLCtHQUFBLGtCQUFrQixPQUFBO0FBQ2xCLGdIQUFBLG1CQUFtQixPQUFBO0FBU3JCLG1EQUEyRDtBQUFsRCwrR0FBQSxrQkFBa0IsT0FBQTtBQUMzQixtREFBMEQ7QUFBakQsOEdBQUEsaUJBQWlCLE9BQUE7QUFzQjFCLG1EQUEwRTtBQUFqRSw4SEFBQSxpQ0FBaUMsT0FBQTtBQUkxQyxtREFpQitCO0FBaEI3QiwrR0FBQSxrQkFBa0IsT0FBQTtBQUNsQiw2R0FBQSxnQkFBZ0IsT0FBQTtBQUNoQiw0R0FBQSxlQUFlLE9BQUE7QUFDZixpSEFBQSxvQkFBb0IsT0FBQTtBQUNwQixxSEFBQSx3QkFBd0IsT0FBQTtBQUN4QiwyR0FBQSxjQUFjLE9BQUE7QUFDZCxtSEFBQSxzQkFBc0IsT0FBQTtBQUN0Qiw0R0FBQSxlQUFlLE9BQUE7QUFDZixxSEFBQSx3QkFBd0IsT0FBQTtBQUN4QixrSEFBQSxxQkFBcUIsT0FBQTtBQUNyQix5R0FBQSxZQUFZLE9BQUE7QUFDWixvSEFBQSx1QkFBdUIsT0FBQTtBQUN2QixtSEFBQSxzQkFBc0IsT0FBQTtBQUN0Qiw0R0FBQSxlQUFlLE9BQUE7QUFDZix3R0FBQSxXQUFXLE9BQUE7QUFDWCw0R0FBQSxlQUFlLE9BQUE7QUFLakIsb0VBQWtIO0FBQXpHLHdIQUFBLG1CQUFtQixPQUFBO0FBQUUsMkhBQUEsc0JBQXNCLE9BQUE7QUFBRSx3SEFBQSxtQkFBbUIsT0FBQTtBQUN6RSxvRUFBeUY7QUFBaEYsK0dBQUEsVUFBVSxPQUFBO0FBQUUsZ0hBQUEsV0FBVyxPQUFBO0FBQUUsbUhBQUEsY0FBYyxPQUFBO0FBQ2hELGtGQUE4RTtBQUFyRSwrSEFBQSxvQkFBb0IsT0FBQTtBQUM3QixvRUFBZ0U7QUFBdkQsaUhBQUEsYUFBYSxPQUFBIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBmb290cHJpbnRqcy9hZHZhbmNlZCDigJQgTG93LWxldmVsIGludGVybmFscyBmb3IgY3VzdG9tIGV4ZWN1dGlvbiBlbmdpbmVzIGFuZCB0ZXN0aW5nLlxuICpcbiAqIE1vc3QgdXNlcnMgbmV2ZXIgbmVlZCB0aGlzLiBVc2UgYGZvb3RwcmludGpzYCAobWFpbikgaW5zdGVhZC5cbiAqIFRoaXMgZW50cnkgcG9pbnQgZXhwb3NlcyBgU2hhcmVkTWVtb3J5YCwgYFN0YWdlQ29udGV4dGAsIGBGbG93Y2hhcnRUcmF2ZXJzZXJgLFxuICogYW5kIG90aGVyIHByaW1pdGl2ZXMgdGhhdCBwb3dlciB0aGUgZW5naW5lLlxuICpcbiAqIGBgYHRzXG4gKiBpbXBvcnQgeyBTaGFyZWRNZW1vcnksIFN0YWdlQ29udGV4dCB9IGZyb20gJ2Zvb3RwcmludGpzL2FkdmFuY2VkJztcbiAqIGBgYFxuICpcbiAqIEBtb2R1bGUgYWR2YW5jZWRcbiAqL1xuLyoqXG4gKiBGb290UHJpbnQg4oCUIEFkdmFuY2VkIC8gSW50ZXJuYWwgQVBJXG4gKlxuICogVGhlc2UgZXhwb3J0cyBhcmUgZm9yIGFkdmFuY2VkIHVzZSBjYXNlcywgdGVzdGluZywgYW5kIGJ1aWxkaW5nXG4gKiBjdXN0b20gZXhlY3V0aW9uIGVuZ2luZXMuIE1vc3QgdXNlcnMgc2hvdWxkIHVzZSB0aGUgbWFpbiAnZm9vdHByaW50JyBlbnRyeSBwb2ludC5cbiAqXG4gKiBJbXBvcnQgdmlhOiBpbXBvcnQgeyAuLi4gfSBmcm9tICdmb290cHJpbnQvYWR2YW5jZWQnXG4gKi9cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTWVtb3J5IOKAlCBMb3ctbGV2ZWwgdHJhbnNhY3Rpb25hbCBzdGF0ZSBwcmltaXRpdmVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCB0eXBlIHtcbiAgQ29tbWl0QnVuZGxlLFxuICBGbG93Q29udHJvbFR5cGUsXG4gIEZsb3dNZXNzYWdlLFxuICBNZW1vcnlQYXRjaCxcbiAgU3RhZ2VTbmFwc2hvdCxcbiAgVHJhY2VFbnRyeSxcbn0gZnJvbSAnLi9saWIvbWVtb3J5L2luZGV4LmpzJztcbmV4cG9ydCB7IFNoYXJlZE1lbW9yeSB9IGZyb20gJy4vbGliL21lbW9yeS9pbmRleC5qcyc7XG5leHBvcnQgeyBTdGFnZUNvbnRleHQgfSBmcm9tICcuL2xpYi9tZW1vcnkvaW5kZXguanMnO1xuZXhwb3J0IHsgRXZlbnRMb2cgfSBmcm9tICcuL2xpYi9tZW1vcnkvaW5kZXguanMnO1xuZXhwb3J0IHsgVHJhbnNhY3Rpb25CdWZmZXIgfSBmcm9tICcuL2xpYi9tZW1vcnkvaW5kZXguanMnO1xuZXhwb3J0IHsgRGlhZ25vc3RpY0NvbGxlY3RvciB9IGZyb20gJy4vbGliL21lbW9yeS9pbmRleC5qcyc7XG5leHBvcnQge1xuICBhcHBseVNtYXJ0TWVyZ2UsXG4gIGRlZXBTbWFydE1lcmdlLFxuICBnZXROZXN0ZWRWYWx1ZSxcbiAgZ2V0UnVuQW5kR2xvYmFsUGF0aHMsXG4gIG5vcm1hbGlzZVBhdGgsXG4gIHJlZGFjdFBhdGNoLFxuICBzZXROZXN0ZWRWYWx1ZSxcbiAgdXBkYXRlTmVzdGVkVmFsdWUsXG4gIHVwZGF0ZVZhbHVlLFxufSBmcm9tICcuL2xpYi9tZW1vcnkvaW5kZXguanMnO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBCdWlsZGVyIOKAlCBUeXBlcyBhbmQgaW50ZXJuYWxzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCB0eXBlIHtcbiAgQnVpbGRUaW1lRXh0cmFjdG9yLFxuICBCdWlsZFRpbWVOb2RlTWV0YWRhdGEsXG4gIEV4ZWNPcHRpb25zLFxuICBGbG93Q2hhcnRTcGVjLFxuICBJTG9nZ2VyLFxuICBTY29wZVByb3RlY3Rpb25Nb2RlLFxuICBTZXJpYWxpemVkUGlwZWxpbmVTdHJ1Y3R1cmUsXG4gIFNpbXBsaWZpZWRQYXJhbGxlbFNwZWMsXG4gIFN0YWdlRm4sXG4gIFN0YWdlTm9kZSxcbiAgU3RyZWFtQ2FsbGJhY2ssXG4gIFN0cmVhbUxpZmVjeWNsZUhhbmRsZXIsXG4gIFN0cmVhbVRva2VuSGFuZGxlcixcbiAgU3ViZmxvd01vdW50T3B0aW9ucyxcbiAgU3ViZmxvd1JlZixcbn0gZnJvbSAnLi9saWIvYnVpbGRlci9pbmRleC5qcyc7XG5leHBvcnQgeyBBcnJheU1lcmdlTW9kZSwgRGVjaWRlckxpc3QsIFNlbGVjdG9yRm5MaXN0LCBzcGVjVG9TdGFnZU5vZGUgfSBmcm9tICcuL2xpYi9idWlsZGVyL2luZGV4LmpzJztcbmV4cG9ydCB7IGNyZWF0ZVR5cGVkU2NvcGVGYWN0b3J5IH0gZnJvbSAnLi9saWIvYnVpbGRlci90eXBlZEZsb3dDaGFydC5qcyc7XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFNjb3BlIOKAlCBQcm92aWRlcnMsIHByb3RlY3Rpb24sIHJlY29yZGVyIG9wdGlvbnMsIGFuZCBldmVudCB0eXBlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgdHlwZSB7XG4gIFByb3ZpZGVyUmVzb2x2ZXIsXG4gIFJlc29sdmVPcHRpb25zLFxuICBTY29wZVByb3ZpZGVyLFxuICBTdGFnZUNvbnRleHRMaWtlLFxuICBTdHJpY3RNb2RlLFxufSBmcm9tICcuL2xpYi9zY29wZS9pbmRleC5qcyc7XG5leHBvcnQgeyBjcmVhdGVFcnJvck1lc3NhZ2UsIGNyZWF0ZVByb3RlY3RlZFNjb3BlLCBTY29wZUZhY2FkZSB9IGZyb20gJy4vbGliL3Njb3BlL2luZGV4LmpzJztcbmV4cG9ydCB7XG4gIGF0dGFjaFNjb3BlTWV0aG9kcyxcbiAgaXNTdWJjbGFzc09mU2NvcGVGYWNhZGUsXG4gIGxvb2tzTGlrZUNsYXNzQ3RvcixcbiAgbG9va3NMaWtlRmFjdG9yeSxcbiAgbWFrZUNsYXNzUHJvdmlkZXIsXG4gIG1ha2VGYWN0b3J5UHJvdmlkZXIsXG4gIHJlZ2lzdGVyU2NvcGVSZXNvbHZlcixcbiAgcmVzb2x2ZVNjb3BlUHJvdmlkZXIsXG4gIHRvU2NvcGVGYWN0b3J5LFxufSBmcm9tICcuL2xpYi9zY29wZS9pbmRleC5qcyc7XG5cbi8vIFJlY29yZGVyIGNvbmZpZy9vcHRpb24gdHlwZXNcbmV4cG9ydCB0eXBlIHtcbiAgQWdncmVnYXRlZE1ldHJpY3MsXG4gIERlYnVnRW50cnksXG4gIERlYnVnUmVjb3JkZXJPcHRpb25zLFxuICBEZWJ1Z1ZlcmJvc2l0eSxcbiAgRGVmaW5lU2NvcGVPcHRpb25zLFxuICBSZWNvcmRlckNvbnRleHQsXG4gIFN0YWdlRXZlbnQsXG4gIFN0YWdlTWV0cmljcyxcbn0gZnJvbSAnLi9saWIvc2NvcGUvaW5kZXguanMnO1xuXG4vLyBab2QgaW50ZXJuYWxzXG5leHBvcnQgeyBjcmVhdGVTY29wZVByb3h5RnJvbVpvZCwgZGVmaW5lU2NvcGVTY2hlbWEsIGlzU2NvcGVTY2hlbWEsIFpvZFNjb3BlUmVzb2x2ZXIgfSBmcm9tICcuL2xpYi9zY29wZS9pbmRleC5qcyc7XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFJ1bm5lciDigJQgSW50ZXJuYWxzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCB0eXBlIHsgUnVudGltZVNuYXBzaG90IH0gZnJvbSAnLi9saWIvcnVubmVyL2luZGV4LmpzJztcbmV4cG9ydCB7IEV4ZWN1dGlvblJ1bnRpbWUgfSBmcm9tICcuL2xpYi9ydW5uZXIvaW5kZXguanMnO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBSZWFjdGl2ZSDigJQgVHlwZWRTY29wZSBpbnRlcm5hbHMgKGZvciBjdXN0b20gcHJveHkgaW1wbGVtZW50YXRpb25zKVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgdHlwZSB7IFJlYWN0aXZlT3B0aW9ucywgUmVhY3RpdmVUYXJnZXQgfSBmcm9tICcuL2xpYi9yZWFjdGl2ZS9pbmRleC5qcyc7XG5leHBvcnQge1xuICBCUkVBS19TRVRURVIsXG4gIGJ1aWxkTmVzdGVkUGF0Y2gsXG4gIGNyZWF0ZUFycmF5UHJveHksXG4gIGpvaW5QYXRoLFxuICBTQ09QRV9NRVRIT0RfTkFNRVMsXG4gIHNob3VsZFdyYXBXaXRoUHJveHksXG59IGZyb20gJy4vbGliL3JlYWN0aXZlL2luZGV4LmpzJztcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gRW5naW5lIOKAlCBERlMgZ3JhcGggdHJhdmVyc2FsIGludGVybmFsc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgdHlwZSB7IFRyYXZlcnNlck9wdGlvbnMgfSBmcm9tICcuL2xpYi9lbmdpbmUvaW5kZXguanMnO1xuZXhwb3J0IHR5cGUgeyBEZWNpZGVyIH0gZnJvbSAnLi9saWIvZW5naW5lL2luZGV4LmpzJztcbmV4cG9ydCB7IEZsb3djaGFydFRyYXZlcnNlciB9IGZyb20gJy4vbGliL2VuZ2luZS9pbmRleC5qcyc7XG5leHBvcnQgeyBpc1N0YWdlTm9kZVJldHVybiB9IGZyb20gJy4vbGliL2VuZ2luZS9pbmRleC5qcyc7XG5cbi8vIE5hcnJhdGl2ZSBpbnRlcm5hbHNcbmV4cG9ydCB0eXBlIHsgSUNvbnRyb2xGbG93TmFycmF0aXZlIH0gZnJvbSAnLi9saWIvZW5naW5lL2luZGV4LmpzJztcbmV4cG9ydCB0eXBlIHsgQ29tYmluZWROYXJyYXRpdmVFbnRyeSwgQ29tYmluZWROYXJyYXRpdmVPcHRpb25zIH0gZnJvbSAnLi9saWIvZW5naW5lL2luZGV4LmpzJztcbmV4cG9ydCB0eXBlIHtcbiAgQnJhbmNoUmVzdWx0LFxuICBCcmFuY2hSZXN1bHRzLFxuICBTZXJpYWxpemVkUGlwZWxpbmVTdHJ1Y3R1cmUgYXMgRW5naW5lU2VyaWFsaXplZFBpcGVsaW5lU3RydWN0dXJlLFxuICBTdGFnZVNuYXBzaG90IGFzIEVuZ2luZVN0YWdlU25hcHNob3QsXG4gIEV4dHJhY3RvckVycm9yLFxuICBIYW5kbGVyRGVwcyxcbiAgSUV4ZWN1dGlvblJ1bnRpbWUsXG4gIE5vZGVSZXN1bHRUeXBlLFxuICBSdW50aW1lU3RydWN0dXJlTWV0YWRhdGEsXG4gIFNjb3BlRmFjdG9yeSxcbiAgU2VyaWFsaXplZFBpcGVsaW5lTm9kZSxcbiAgU3RhZ2VGdW5jdGlvbixcbiAgU3ViZmxvd1Jlc3VsdCxcbiAgVHJhdmVyc2FsRXh0cmFjdG9yLFxuICBUcmF2ZXJzYWxSZXN1bHQsXG59IGZyb20gJy4vbGliL2VuZ2luZS9pbmRleC5qcyc7XG5leHBvcnQgeyBOdWxsQ29udHJvbEZsb3dOYXJyYXRpdmVHZW5lcmF0b3IgfSBmcm9tICcuL2xpYi9lbmdpbmUvaW5kZXguanMnO1xuXG4vLyBIYW5kbGVycyAodGVzdGluZyAvIGN1c3RvbSBlbmdpbmVzKVxuZXhwb3J0IHR5cGUgeyBDYWxsRXh0cmFjdG9yRm4sIEV4ZWN1dGVOb2RlRm4sIEdldFN0YWdlUGF0aEZuLCBSdW5TdGFnZUZuIH0gZnJvbSAnLi9saWIvZW5naW5lL2luZGV4LmpzJztcbmV4cG9ydCB7XG4gIGFwcGx5T3V0cHV0TWFwcGluZyxcbiAgQ2hpbGRyZW5FeGVjdXRvcixcbiAgY29tcHV0ZU5vZGVUeXBlLFxuICBDb250aW51YXRpb25SZXNvbHZlcixcbiAgY3JlYXRlU3ViZmxvd0hhbmRsZXJEZXBzLFxuICBEZWNpZGVySGFuZGxlcixcbiAgREVGQVVMVF9NQVhfSVRFUkFUSU9OUyxcbiAgRXh0cmFjdG9yUnVubmVyLFxuICBleHRyYWN0UGFyZW50U2NvcGVWYWx1ZXMsXG4gIGdldEluaXRpYWxTY29wZVZhbHVlcyxcbiAgTm9kZVJlc29sdmVyLFxuICBSdW50aW1lU3RydWN0dXJlTWFuYWdlcixcbiAgc2VlZFN1YmZsb3dHbG9iYWxTdG9yZSxcbiAgU2VsZWN0b3JIYW5kbGVyLFxuICBTdGFnZVJ1bm5lcixcbiAgU3ViZmxvd0V4ZWN1dG9yLFxufSBmcm9tICcuL2xpYi9lbmdpbmUvaW5kZXguanMnO1xuXG4vLyBUcmFjZSB1dGlsaXRpZXMg4oCUIHJlLWV4cG9ydGVkIGhlcmUgZm9yIGNvbnZlbmllbmNlLiBDYW5vbmljYWwgcGF0aDogJ2Zvb3RwcmludGpzL3RyYWNlJ1xuZXhwb3J0IHR5cGUgeyBFeGVjdXRpb25Db3VudGVyIH0gZnJvbSAnLi9saWIvZW5naW5lL3J1bnRpbWVTdGFnZUlkLmpzJztcbmV4cG9ydCB7IGJ1aWxkUnVudGltZVN0YWdlSWQsIGNyZWF0ZUV4ZWN1dGlvbkNvdW50ZXIsIHBhcnNlUnVudGltZVN0YWdlSWQgfSBmcm9tICcuL2xpYi9lbmdpbmUvcnVudGltZVN0YWdlSWQuanMnO1xuZXhwb3J0IHsgZmluZENvbW1pdCwgZmluZENvbW1pdHMsIGZpbmRMYXN0V3JpdGVyIH0gZnJvbSAnLi9saWIvbWVtb3J5L2NvbW1pdExvZ1V0aWxzLmpzJztcbmV4cG9ydCB7IEJvdW5kYXJ5U3RhdGVUcmFja2VyIH0gZnJvbSAnLi9saWIvcmVjb3JkZXIvQm91bmRhcnlTdGF0ZVRyYWNrZXIuanMnO1xuZXhwb3J0IHsgS2V5ZWRSZWNvcmRlciB9IGZyb20gJy4vbGliL3JlY29yZGVyL0tleWVkUmVjb3JkZXIuanMnO1xuIl19
|
package/dist/esm/advanced.js
CHANGED
|
@@ -39,5 +39,6 @@ export { NullControlFlowNarrativeGenerator } from './lib/engine/index.js';
|
|
|
39
39
|
export { applyOutputMapping, ChildrenExecutor, computeNodeType, ContinuationResolver, createSubflowHandlerDeps, DeciderHandler, DEFAULT_MAX_ITERATIONS, ExtractorRunner, extractParentScopeValues, getInitialScopeValues, NodeResolver, RuntimeStructureManager, seedSubflowGlobalStore, SelectorHandler, StageRunner, SubflowExecutor, } from './lib/engine/index.js';
|
|
40
40
|
export { buildRuntimeStageId, createExecutionCounter, parseRuntimeStageId } from './lib/engine/runtimeStageId.js';
|
|
41
41
|
export { findCommit, findCommits, findLastWriter } from './lib/memory/commitLogUtils.js';
|
|
42
|
+
export { BoundaryStateTracker } from './lib/recorder/BoundaryStateTracker.js';
|
|
42
43
|
export { KeyedRecorder } from './lib/recorder/KeyedRecorder.js';
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWR2YW5jZWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYWR2YW5jZWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7OztHQVlHO0FBQ0g7Ozs7Ozs7R0FPRztBQWNILE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ2pELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzFELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzVELE9BQU8sRUFDTCxlQUFlLEVBQ2YsY0FBYyxFQUNkLGNBQWMsRUFDZCxvQkFBb0IsRUFDcEIsYUFBYSxFQUNiLFdBQVcsRUFDWCxjQUFjLEVBQ2QsaUJBQWlCLEVBQ2pCLFdBQVcsR0FDWixNQUFNLHVCQUF1QixDQUFDO0FBdUIvQixPQUFPLEVBQUUsY0FBYyxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdEcsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFhMUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLG9CQUFvQixFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzdGLE9BQU8sRUFDTCxrQkFBa0IsRUFDbEIsdUJBQXVCLEVBQ3ZCLGtCQUFrQixFQUNsQixnQkFBZ0IsRUFDaEIsaUJBQWlCLEVBQ2pCLG1CQUFtQixFQUNuQixxQkFBcUIsRUFDckIsb0JBQW9CLEVBQ3BCLGNBQWMsR0FDZixNQUFNLHNCQUFzQixDQUFDO0FBYzlCLGdCQUFnQjtBQUNoQixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsaUJBQWlCLEVBQUUsYUFBYSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFPbkgsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFPekQsT0FBTyxFQUNMLFlBQVksRUFDWixnQkFBZ0IsRUFDaEIsZ0JBQWdCLEVBQ2hCLFFBQVEsRUFDUixrQkFBa0IsRUFDbEIsbUJBQW1CLEdBQ3BCLE1BQU0seUJBQXlCLENBQUM7QUFRakMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFzQjFELE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBSTFFLE9BQU8sRUFDTCxrQkFBa0IsRUFDbEIsZ0JBQWdCLEVBQ2hCLGVBQWUsRUFDZixvQkFBb0IsRUFDcEIsd0JBQXdCLEVBQ3hCLGNBQWMsRUFDZCxzQkFBc0IsRUFDdEIsZUFBZSxFQUNmLHdCQUF3QixFQUN4QixxQkFBcUIsRUFDckIsWUFBWSxFQUNaLHVCQUF1QixFQUN2QixzQkFBc0IsRUFDdEIsZUFBZSxFQUNmLFdBQVcsRUFDWCxlQUFlLEdBQ2hCLE1BQU0sdUJBQXVCLENBQUM7QUFJL0IsT0FBTyxFQUFFLG1CQUFtQixFQUFFLHNCQUFzQixFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbEgsT0FBTyxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDekYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlDQUFpQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBmb290cHJpbnRqcy9hZHZhbmNlZCDigJQgTG93LWxldmVsIGludGVybmFscyBmb3IgY3VzdG9tIGV4ZWN1dGlvbiBlbmdpbmVzIGFuZCB0ZXN0aW5nLlxuICpcbiAqIE1vc3QgdXNlcnMgbmV2ZXIgbmVlZCB0aGlzLiBVc2UgYGZvb3RwcmludGpzYCAobWFpbikgaW5zdGVhZC5cbiAqIFRoaXMgZW50cnkgcG9pbnQgZXhwb3NlcyBgU2hhcmVkTWVtb3J5YCwgYFN0YWdlQ29udGV4dGAsIGBGbG93Y2hhcnRUcmF2ZXJzZXJgLFxuICogYW5kIG90aGVyIHByaW1pdGl2ZXMgdGhhdCBwb3dlciB0aGUgZW5naW5lLlxuICpcbiAqIGBgYHRzXG4gKiBpbXBvcnQgeyBTaGFyZWRNZW1vcnksIFN0YWdlQ29udGV4dCB9IGZyb20gJ2Zvb3RwcmludGpzL2FkdmFuY2VkJztcbiAqIGBgYFxuICpcbiAqIEBtb2R1bGUgYWR2YW5jZWRcbiAqL1xuLyoqXG4gKiBGb290UHJpbnQg4oCUIEFkdmFuY2VkIC8gSW50ZXJuYWwgQVBJXG4gKlxuICogVGhlc2UgZXhwb3J0cyBhcmUgZm9yIGFkdmFuY2VkIHVzZSBjYXNlcywgdGVzdGluZywgYW5kIGJ1aWxkaW5nXG4gKiBjdXN0b20gZXhlY3V0aW9uIGVuZ2luZXMuIE1vc3QgdXNlcnMgc2hvdWxkIHVzZSB0aGUgbWFpbiAnZm9vdHByaW50JyBlbnRyeSBwb2ludC5cbiAqXG4gKiBJbXBvcnQgdmlhOiBpbXBvcnQgeyAuLi4gfSBmcm9tICdmb290cHJpbnQvYWR2YW5jZWQnXG4gKi9cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTWVtb3J5IOKAlCBMb3ctbGV2ZWwgdHJhbnNhY3Rpb25hbCBzdGF0ZSBwcmltaXRpdmVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCB0eXBlIHtcbiAgQ29tbWl0QnVuZGxlLFxuICBGbG93Q29udHJvbFR5cGUsXG4gIEZsb3dNZXNzYWdlLFxuICBNZW1vcnlQYXRjaCxcbiAgU3RhZ2VTbmFwc2hvdCxcbiAgVHJhY2VFbnRyeSxcbn0gZnJvbSAnLi9saWIvbWVtb3J5L2luZGV4LmpzJztcbmV4cG9ydCB7IFNoYXJlZE1lbW9yeSB9IGZyb20gJy4vbGliL21lbW9yeS9pbmRleC5qcyc7XG5leHBvcnQgeyBTdGFnZUNvbnRleHQgfSBmcm9tICcuL2xpYi9tZW1vcnkvaW5kZXguanMnO1xuZXhwb3J0IHsgRXZlbnRMb2cgfSBmcm9tICcuL2xpYi9tZW1vcnkvaW5kZXguanMnO1xuZXhwb3J0IHsgVHJhbnNhY3Rpb25CdWZmZXIgfSBmcm9tICcuL2xpYi9tZW1vcnkvaW5kZXguanMnO1xuZXhwb3J0IHsgRGlhZ25vc3RpY0NvbGxlY3RvciB9IGZyb20gJy4vbGliL21lbW9yeS9pbmRleC5qcyc7XG5leHBvcnQge1xuICBhcHBseVNtYXJ0TWVyZ2UsXG4gIGRlZXBTbWFydE1lcmdlLFxuICBnZXROZXN0ZWRWYWx1ZSxcbiAgZ2V0UnVuQW5kR2xvYmFsUGF0aHMsXG4gIG5vcm1hbGlzZVBhdGgsXG4gIHJlZGFjdFBhdGNoLFxuICBzZXROZXN0ZWRWYWx1ZSxcbiAgdXBkYXRlTmVzdGVkVmFsdWUsXG4gIHVwZGF0ZVZhbHVlLFxufSBmcm9tICcuL2xpYi9tZW1vcnkvaW5kZXguanMnO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBCdWlsZGVyIOKAlCBUeXBlcyBhbmQgaW50ZXJuYWxzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCB0eXBlIHtcbiAgQnVpbGRUaW1lRXh0cmFjdG9yLFxuICBCdWlsZFRpbWVOb2RlTWV0YWRhdGEsXG4gIEV4ZWNPcHRpb25zLFxuICBGbG93Q2hhcnRTcGVjLFxuICBJTG9nZ2VyLFxuICBTY29wZVByb3RlY3Rpb25Nb2RlLFxuICBTZXJpYWxpemVkUGlwZWxpbmVTdHJ1Y3R1cmUsXG4gIFNpbXBsaWZpZWRQYXJhbGxlbFNwZWMsXG4gIFN0YWdlRm4sXG4gIFN0YWdlTm9kZSxcbiAgU3RyZWFtQ2FsbGJhY2ssXG4gIFN0cmVhbUxpZmVjeWNsZUhhbmRsZXIsXG4gIFN0cmVhbVRva2VuSGFuZGxlcixcbiAgU3ViZmxvd01vdW50T3B0aW9ucyxcbiAgU3ViZmxvd1JlZixcbn0gZnJvbSAnLi9saWIvYnVpbGRlci9pbmRleC5qcyc7XG5leHBvcnQgeyBBcnJheU1lcmdlTW9kZSwgRGVjaWRlckxpc3QsIFNlbGVjdG9yRm5MaXN0LCBzcGVjVG9TdGFnZU5vZGUgfSBmcm9tICcuL2xpYi9idWlsZGVyL2luZGV4LmpzJztcbmV4cG9ydCB7IGNyZWF0ZVR5cGVkU2NvcGVGYWN0b3J5IH0gZnJvbSAnLi9saWIvYnVpbGRlci90eXBlZEZsb3dDaGFydC5qcyc7XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFNjb3BlIOKAlCBQcm92aWRlcnMsIHByb3RlY3Rpb24sIHJlY29yZGVyIG9wdGlvbnMsIGFuZCBldmVudCB0eXBlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgdHlwZSB7XG4gIFByb3ZpZGVyUmVzb2x2ZXIsXG4gIFJlc29sdmVPcHRpb25zLFxuICBTY29wZVByb3ZpZGVyLFxuICBTdGFnZUNvbnRleHRMaWtlLFxuICBTdHJpY3RNb2RlLFxufSBmcm9tICcuL2xpYi9zY29wZS9pbmRleC5qcyc7XG5leHBvcnQgeyBjcmVhdGVFcnJvck1lc3NhZ2UsIGNyZWF0ZVByb3RlY3RlZFNjb3BlLCBTY29wZUZhY2FkZSB9IGZyb20gJy4vbGliL3Njb3BlL2luZGV4LmpzJztcbmV4cG9ydCB7XG4gIGF0dGFjaFNjb3BlTWV0aG9kcyxcbiAgaXNTdWJjbGFzc09mU2NvcGVGYWNhZGUsXG4gIGxvb2tzTGlrZUNsYXNzQ3RvcixcbiAgbG9va3NMaWtlRmFjdG9yeSxcbiAgbWFrZUNsYXNzUHJvdmlkZXIsXG4gIG1ha2VGYWN0b3J5UHJvdmlkZXIsXG4gIHJlZ2lzdGVyU2NvcGVSZXNvbHZlcixcbiAgcmVzb2x2ZVNjb3BlUHJvdmlkZXIsXG4gIHRvU2NvcGVGYWN0b3J5LFxufSBmcm9tICcuL2xpYi9zY29wZS9pbmRleC5qcyc7XG5cbi8vIFJlY29yZGVyIGNvbmZpZy9vcHRpb24gdHlwZXNcbmV4cG9ydCB0eXBlIHtcbiAgQWdncmVnYXRlZE1ldHJpY3MsXG4gIERlYnVnRW50cnksXG4gIERlYnVnUmVjb3JkZXJPcHRpb25zLFxuICBEZWJ1Z1ZlcmJvc2l0eSxcbiAgRGVmaW5lU2NvcGVPcHRpb25zLFxuICBSZWNvcmRlckNvbnRleHQsXG4gIFN0YWdlRXZlbnQsXG4gIFN0YWdlTWV0cmljcyxcbn0gZnJvbSAnLi9saWIvc2NvcGUvaW5kZXguanMnO1xuXG4vLyBab2QgaW50ZXJuYWxzXG5leHBvcnQgeyBjcmVhdGVTY29wZVByb3h5RnJvbVpvZCwgZGVmaW5lU2NvcGVTY2hlbWEsIGlzU2NvcGVTY2hlbWEsIFpvZFNjb3BlUmVzb2x2ZXIgfSBmcm9tICcuL2xpYi9zY29wZS9pbmRleC5qcyc7XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFJ1bm5lciDigJQgSW50ZXJuYWxzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCB0eXBlIHsgUnVudGltZVNuYXBzaG90IH0gZnJvbSAnLi9saWIvcnVubmVyL2luZGV4LmpzJztcbmV4cG9ydCB7IEV4ZWN1dGlvblJ1bnRpbWUgfSBmcm9tICcuL2xpYi9ydW5uZXIvaW5kZXguanMnO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBSZWFjdGl2ZSDigJQgVHlwZWRTY29wZSBpbnRlcm5hbHMgKGZvciBjdXN0b20gcHJveHkgaW1wbGVtZW50YXRpb25zKVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgdHlwZSB7IFJlYWN0aXZlT3B0aW9ucywgUmVhY3RpdmVUYXJnZXQgfSBmcm9tICcuL2xpYi9yZWFjdGl2ZS9pbmRleC5qcyc7XG5leHBvcnQge1xuICBCUkVBS19TRVRURVIsXG4gIGJ1aWxkTmVzdGVkUGF0Y2gsXG4gIGNyZWF0ZUFycmF5UHJveHksXG4gIGpvaW5QYXRoLFxuICBTQ09QRV9NRVRIT0RfTkFNRVMsXG4gIHNob3VsZFdyYXBXaXRoUHJveHksXG59IGZyb20gJy4vbGliL3JlYWN0aXZlL2luZGV4LmpzJztcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gRW5naW5lIOKAlCBERlMgZ3JhcGggdHJhdmVyc2FsIGludGVybmFsc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgdHlwZSB7IFRyYXZlcnNlck9wdGlvbnMgfSBmcm9tICcuL2xpYi9lbmdpbmUvaW5kZXguanMnO1xuZXhwb3J0IHR5cGUgeyBEZWNpZGVyIH0gZnJvbSAnLi9saWIvZW5naW5lL2luZGV4LmpzJztcbmV4cG9ydCB7IEZsb3djaGFydFRyYXZlcnNlciB9IGZyb20gJy4vbGliL2VuZ2luZS9pbmRleC5qcyc7XG5leHBvcnQgeyBpc1N0YWdlTm9kZVJldHVybiB9IGZyb20gJy4vbGliL2VuZ2luZS9pbmRleC5qcyc7XG5cbi8vIE5hcnJhdGl2ZSBpbnRlcm5hbHNcbmV4cG9ydCB0eXBlIHsgSUNvbnRyb2xGbG93TmFycmF0aXZlIH0gZnJvbSAnLi9saWIvZW5naW5lL2luZGV4LmpzJztcbmV4cG9ydCB0eXBlIHsgQ29tYmluZWROYXJyYXRpdmVFbnRyeSwgQ29tYmluZWROYXJyYXRpdmVPcHRpb25zIH0gZnJvbSAnLi9saWIvZW5naW5lL2luZGV4LmpzJztcbmV4cG9ydCB0eXBlIHtcbiAgQnJhbmNoUmVzdWx0LFxuICBCcmFuY2hSZXN1bHRzLFxuICBTZXJpYWxpemVkUGlwZWxpbmVTdHJ1Y3R1cmUgYXMgRW5naW5lU2VyaWFsaXplZFBpcGVsaW5lU3RydWN0dXJlLFxuICBTdGFnZVNuYXBzaG90IGFzIEVuZ2luZVN0YWdlU25hcHNob3QsXG4gIEV4dHJhY3RvckVycm9yLFxuICBIYW5kbGVyRGVwcyxcbiAgSUV4ZWN1dGlvblJ1bnRpbWUsXG4gIE5vZGVSZXN1bHRUeXBlLFxuICBSdW50aW1lU3RydWN0dXJlTWV0YWRhdGEsXG4gIFNjb3BlRmFjdG9yeSxcbiAgU2VyaWFsaXplZFBpcGVsaW5lTm9kZSxcbiAgU3RhZ2VGdW5jdGlvbixcbiAgU3ViZmxvd1Jlc3VsdCxcbiAgVHJhdmVyc2FsRXh0cmFjdG9yLFxuICBUcmF2ZXJzYWxSZXN1bHQsXG59IGZyb20gJy4vbGliL2VuZ2luZS9pbmRleC5qcyc7XG5leHBvcnQgeyBOdWxsQ29udHJvbEZsb3dOYXJyYXRpdmVHZW5lcmF0b3IgfSBmcm9tICcuL2xpYi9lbmdpbmUvaW5kZXguanMnO1xuXG4vLyBIYW5kbGVycyAodGVzdGluZyAvIGN1c3RvbSBlbmdpbmVzKVxuZXhwb3J0IHR5cGUgeyBDYWxsRXh0cmFjdG9yRm4sIEV4ZWN1dGVOb2RlRm4sIEdldFN0YWdlUGF0aEZuLCBSdW5TdGFnZUZuIH0gZnJvbSAnLi9saWIvZW5naW5lL2luZGV4LmpzJztcbmV4cG9ydCB7XG4gIGFwcGx5T3V0cHV0TWFwcGluZyxcbiAgQ2hpbGRyZW5FeGVjdXRvcixcbiAgY29tcHV0ZU5vZGVUeXBlLFxuICBDb250aW51YXRpb25SZXNvbHZlcixcbiAgY3JlYXRlU3ViZmxvd0hhbmRsZXJEZXBzLFxuICBEZWNpZGVySGFuZGxlcixcbiAgREVGQVVMVF9NQVhfSVRFUkFUSU9OUyxcbiAgRXh0cmFjdG9yUnVubmVyLFxuICBleHRyYWN0UGFyZW50U2NvcGVWYWx1ZXMsXG4gIGdldEluaXRpYWxTY29wZVZhbHVlcyxcbiAgTm9kZVJlc29sdmVyLFxuICBSdW50aW1lU3RydWN0dXJlTWFuYWdlcixcbiAgc2VlZFN1YmZsb3dHbG9iYWxTdG9yZSxcbiAgU2VsZWN0b3JIYW5kbGVyLFxuICBTdGFnZVJ1bm5lcixcbiAgU3ViZmxvd0V4ZWN1dG9yLFxufSBmcm9tICcuL2xpYi9lbmdpbmUvaW5kZXguanMnO1xuXG4vLyBUcmFjZSB1dGlsaXRpZXMg4oCUIHJlLWV4cG9ydGVkIGhlcmUgZm9yIGNvbnZlbmllbmNlLiBDYW5vbmljYWwgcGF0aDogJ2Zvb3RwcmludGpzL3RyYWNlJ1xuZXhwb3J0IHR5cGUgeyBFeGVjdXRpb25Db3VudGVyIH0gZnJvbSAnLi9saWIvZW5naW5lL3J1bnRpbWVTdGFnZUlkLmpzJztcbmV4cG9ydCB7IGJ1aWxkUnVudGltZVN0YWdlSWQsIGNyZWF0ZUV4ZWN1dGlvbkNvdW50ZXIsIHBhcnNlUnVudGltZVN0YWdlSWQgfSBmcm9tICcuL2xpYi9lbmdpbmUvcnVudGltZVN0YWdlSWQuanMnO1xuZXhwb3J0IHsgZmluZENvbW1pdCwgZmluZENvbW1pdHMsIGZpbmRMYXN0V3JpdGVyIH0gZnJvbSAnLi9saWIvbWVtb3J5L2NvbW1pdExvZ1V0aWxzLmpzJztcbmV4cG9ydCB7IEtleWVkUmVjb3JkZXIgfSBmcm9tICcuL2xpYi9yZWNvcmRlci9LZXllZFJlY29yZGVyLmpzJztcbiJdfQ==
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWR2YW5jZWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYWR2YW5jZWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7OztHQVlHO0FBQ0g7Ozs7Ozs7R0FPRztBQWNILE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ2pELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzFELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzVELE9BQU8sRUFDTCxlQUFlLEVBQ2YsY0FBYyxFQUNkLGNBQWMsRUFDZCxvQkFBb0IsRUFDcEIsYUFBYSxFQUNiLFdBQVcsRUFDWCxjQUFjLEVBQ2QsaUJBQWlCLEVBQ2pCLFdBQVcsR0FDWixNQUFNLHVCQUF1QixDQUFDO0FBdUIvQixPQUFPLEVBQUUsY0FBYyxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdEcsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFhMUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLG9CQUFvQixFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzdGLE9BQU8sRUFDTCxrQkFBa0IsRUFDbEIsdUJBQXVCLEVBQ3ZCLGtCQUFrQixFQUNsQixnQkFBZ0IsRUFDaEIsaUJBQWlCLEVBQ2pCLG1CQUFtQixFQUNuQixxQkFBcUIsRUFDckIsb0JBQW9CLEVBQ3BCLGNBQWMsR0FDZixNQUFNLHNCQUFzQixDQUFDO0FBYzlCLGdCQUFnQjtBQUNoQixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsaUJBQWlCLEVBQUUsYUFBYSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFPbkgsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFPekQsT0FBTyxFQUNMLFlBQVksRUFDWixnQkFBZ0IsRUFDaEIsZ0JBQWdCLEVBQ2hCLFFBQVEsRUFDUixrQkFBa0IsRUFDbEIsbUJBQW1CLEdBQ3BCLE1BQU0seUJBQXlCLENBQUM7QUFRakMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFzQjFELE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBSTFFLE9BQU8sRUFDTCxrQkFBa0IsRUFDbEIsZ0JBQWdCLEVBQ2hCLGVBQWUsRUFDZixvQkFBb0IsRUFDcEIsd0JBQXdCLEVBQ3hCLGNBQWMsRUFDZCxzQkFBc0IsRUFDdEIsZUFBZSxFQUNmLHdCQUF3QixFQUN4QixxQkFBcUIsRUFDckIsWUFBWSxFQUNaLHVCQUF1QixFQUN2QixzQkFBc0IsRUFDdEIsZUFBZSxFQUNmLFdBQVcsRUFDWCxlQUFlLEdBQ2hCLE1BQU0sdUJBQXVCLENBQUM7QUFJL0IsT0FBTyxFQUFFLG1CQUFtQixFQUFFLHNCQUFzQixFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbEgsT0FBTyxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDekYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDOUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlDQUFpQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBmb290cHJpbnRqcy9hZHZhbmNlZCDigJQgTG93LWxldmVsIGludGVybmFscyBmb3IgY3VzdG9tIGV4ZWN1dGlvbiBlbmdpbmVzIGFuZCB0ZXN0aW5nLlxuICpcbiAqIE1vc3QgdXNlcnMgbmV2ZXIgbmVlZCB0aGlzLiBVc2UgYGZvb3RwcmludGpzYCAobWFpbikgaW5zdGVhZC5cbiAqIFRoaXMgZW50cnkgcG9pbnQgZXhwb3NlcyBgU2hhcmVkTWVtb3J5YCwgYFN0YWdlQ29udGV4dGAsIGBGbG93Y2hhcnRUcmF2ZXJzZXJgLFxuICogYW5kIG90aGVyIHByaW1pdGl2ZXMgdGhhdCBwb3dlciB0aGUgZW5naW5lLlxuICpcbiAqIGBgYHRzXG4gKiBpbXBvcnQgeyBTaGFyZWRNZW1vcnksIFN0YWdlQ29udGV4dCB9IGZyb20gJ2Zvb3RwcmludGpzL2FkdmFuY2VkJztcbiAqIGBgYFxuICpcbiAqIEBtb2R1bGUgYWR2YW5jZWRcbiAqL1xuLyoqXG4gKiBGb290UHJpbnQg4oCUIEFkdmFuY2VkIC8gSW50ZXJuYWwgQVBJXG4gKlxuICogVGhlc2UgZXhwb3J0cyBhcmUgZm9yIGFkdmFuY2VkIHVzZSBjYXNlcywgdGVzdGluZywgYW5kIGJ1aWxkaW5nXG4gKiBjdXN0b20gZXhlY3V0aW9uIGVuZ2luZXMuIE1vc3QgdXNlcnMgc2hvdWxkIHVzZSB0aGUgbWFpbiAnZm9vdHByaW50JyBlbnRyeSBwb2ludC5cbiAqXG4gKiBJbXBvcnQgdmlhOiBpbXBvcnQgeyAuLi4gfSBmcm9tICdmb290cHJpbnQvYWR2YW5jZWQnXG4gKi9cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTWVtb3J5IOKAlCBMb3ctbGV2ZWwgdHJhbnNhY3Rpb25hbCBzdGF0ZSBwcmltaXRpdmVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCB0eXBlIHtcbiAgQ29tbWl0QnVuZGxlLFxuICBGbG93Q29udHJvbFR5cGUsXG4gIEZsb3dNZXNzYWdlLFxuICBNZW1vcnlQYXRjaCxcbiAgU3RhZ2VTbmFwc2hvdCxcbiAgVHJhY2VFbnRyeSxcbn0gZnJvbSAnLi9saWIvbWVtb3J5L2luZGV4LmpzJztcbmV4cG9ydCB7IFNoYXJlZE1lbW9yeSB9IGZyb20gJy4vbGliL21lbW9yeS9pbmRleC5qcyc7XG5leHBvcnQgeyBTdGFnZUNvbnRleHQgfSBmcm9tICcuL2xpYi9tZW1vcnkvaW5kZXguanMnO1xuZXhwb3J0IHsgRXZlbnRMb2cgfSBmcm9tICcuL2xpYi9tZW1vcnkvaW5kZXguanMnO1xuZXhwb3J0IHsgVHJhbnNhY3Rpb25CdWZmZXIgfSBmcm9tICcuL2xpYi9tZW1vcnkvaW5kZXguanMnO1xuZXhwb3J0IHsgRGlhZ25vc3RpY0NvbGxlY3RvciB9IGZyb20gJy4vbGliL21lbW9yeS9pbmRleC5qcyc7XG5leHBvcnQge1xuICBhcHBseVNtYXJ0TWVyZ2UsXG4gIGRlZXBTbWFydE1lcmdlLFxuICBnZXROZXN0ZWRWYWx1ZSxcbiAgZ2V0UnVuQW5kR2xvYmFsUGF0aHMsXG4gIG5vcm1hbGlzZVBhdGgsXG4gIHJlZGFjdFBhdGNoLFxuICBzZXROZXN0ZWRWYWx1ZSxcbiAgdXBkYXRlTmVzdGVkVmFsdWUsXG4gIHVwZGF0ZVZhbHVlLFxufSBmcm9tICcuL2xpYi9tZW1vcnkvaW5kZXguanMnO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBCdWlsZGVyIOKAlCBUeXBlcyBhbmQgaW50ZXJuYWxzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCB0eXBlIHtcbiAgQnVpbGRUaW1lRXh0cmFjdG9yLFxuICBCdWlsZFRpbWVOb2RlTWV0YWRhdGEsXG4gIEV4ZWNPcHRpb25zLFxuICBGbG93Q2hhcnRTcGVjLFxuICBJTG9nZ2VyLFxuICBTY29wZVByb3RlY3Rpb25Nb2RlLFxuICBTZXJpYWxpemVkUGlwZWxpbmVTdHJ1Y3R1cmUsXG4gIFNpbXBsaWZpZWRQYXJhbGxlbFNwZWMsXG4gIFN0YWdlRm4sXG4gIFN0YWdlTm9kZSxcbiAgU3RyZWFtQ2FsbGJhY2ssXG4gIFN0cmVhbUxpZmVjeWNsZUhhbmRsZXIsXG4gIFN0cmVhbVRva2VuSGFuZGxlcixcbiAgU3ViZmxvd01vdW50T3B0aW9ucyxcbiAgU3ViZmxvd1JlZixcbn0gZnJvbSAnLi9saWIvYnVpbGRlci9pbmRleC5qcyc7XG5leHBvcnQgeyBBcnJheU1lcmdlTW9kZSwgRGVjaWRlckxpc3QsIFNlbGVjdG9yRm5MaXN0LCBzcGVjVG9TdGFnZU5vZGUgfSBmcm9tICcuL2xpYi9idWlsZGVyL2luZGV4LmpzJztcbmV4cG9ydCB7IGNyZWF0ZVR5cGVkU2NvcGVGYWN0b3J5IH0gZnJvbSAnLi9saWIvYnVpbGRlci90eXBlZEZsb3dDaGFydC5qcyc7XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFNjb3BlIOKAlCBQcm92aWRlcnMsIHByb3RlY3Rpb24sIHJlY29yZGVyIG9wdGlvbnMsIGFuZCBldmVudCB0eXBlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgdHlwZSB7XG4gIFByb3ZpZGVyUmVzb2x2ZXIsXG4gIFJlc29sdmVPcHRpb25zLFxuICBTY29wZVByb3ZpZGVyLFxuICBTdGFnZUNvbnRleHRMaWtlLFxuICBTdHJpY3RNb2RlLFxufSBmcm9tICcuL2xpYi9zY29wZS9pbmRleC5qcyc7XG5leHBvcnQgeyBjcmVhdGVFcnJvck1lc3NhZ2UsIGNyZWF0ZVByb3RlY3RlZFNjb3BlLCBTY29wZUZhY2FkZSB9IGZyb20gJy4vbGliL3Njb3BlL2luZGV4LmpzJztcbmV4cG9ydCB7XG4gIGF0dGFjaFNjb3BlTWV0aG9kcyxcbiAgaXNTdWJjbGFzc09mU2NvcGVGYWNhZGUsXG4gIGxvb2tzTGlrZUNsYXNzQ3RvcixcbiAgbG9va3NMaWtlRmFjdG9yeSxcbiAgbWFrZUNsYXNzUHJvdmlkZXIsXG4gIG1ha2VGYWN0b3J5UHJvdmlkZXIsXG4gIHJlZ2lzdGVyU2NvcGVSZXNvbHZlcixcbiAgcmVzb2x2ZVNjb3BlUHJvdmlkZXIsXG4gIHRvU2NvcGVGYWN0b3J5LFxufSBmcm9tICcuL2xpYi9zY29wZS9pbmRleC5qcyc7XG5cbi8vIFJlY29yZGVyIGNvbmZpZy9vcHRpb24gdHlwZXNcbmV4cG9ydCB0eXBlIHtcbiAgQWdncmVnYXRlZE1ldHJpY3MsXG4gIERlYnVnRW50cnksXG4gIERlYnVnUmVjb3JkZXJPcHRpb25zLFxuICBEZWJ1Z1ZlcmJvc2l0eSxcbiAgRGVmaW5lU2NvcGVPcHRpb25zLFxuICBSZWNvcmRlckNvbnRleHQsXG4gIFN0YWdlRXZlbnQsXG4gIFN0YWdlTWV0cmljcyxcbn0gZnJvbSAnLi9saWIvc2NvcGUvaW5kZXguanMnO1xuXG4vLyBab2QgaW50ZXJuYWxzXG5leHBvcnQgeyBjcmVhdGVTY29wZVByb3h5RnJvbVpvZCwgZGVmaW5lU2NvcGVTY2hlbWEsIGlzU2NvcGVTY2hlbWEsIFpvZFNjb3BlUmVzb2x2ZXIgfSBmcm9tICcuL2xpYi9zY29wZS9pbmRleC5qcyc7XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFJ1bm5lciDigJQgSW50ZXJuYWxzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCB0eXBlIHsgUnVudGltZVNuYXBzaG90IH0gZnJvbSAnLi9saWIvcnVubmVyL2luZGV4LmpzJztcbmV4cG9ydCB7IEV4ZWN1dGlvblJ1bnRpbWUgfSBmcm9tICcuL2xpYi9ydW5uZXIvaW5kZXguanMnO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBSZWFjdGl2ZSDigJQgVHlwZWRTY29wZSBpbnRlcm5hbHMgKGZvciBjdXN0b20gcHJveHkgaW1wbGVtZW50YXRpb25zKVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgdHlwZSB7IFJlYWN0aXZlT3B0aW9ucywgUmVhY3RpdmVUYXJnZXQgfSBmcm9tICcuL2xpYi9yZWFjdGl2ZS9pbmRleC5qcyc7XG5leHBvcnQge1xuICBCUkVBS19TRVRURVIsXG4gIGJ1aWxkTmVzdGVkUGF0Y2gsXG4gIGNyZWF0ZUFycmF5UHJveHksXG4gIGpvaW5QYXRoLFxuICBTQ09QRV9NRVRIT0RfTkFNRVMsXG4gIHNob3VsZFdyYXBXaXRoUHJveHksXG59IGZyb20gJy4vbGliL3JlYWN0aXZlL2luZGV4LmpzJztcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gRW5naW5lIOKAlCBERlMgZ3JhcGggdHJhdmVyc2FsIGludGVybmFsc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgdHlwZSB7IFRyYXZlcnNlck9wdGlvbnMgfSBmcm9tICcuL2xpYi9lbmdpbmUvaW5kZXguanMnO1xuZXhwb3J0IHR5cGUgeyBEZWNpZGVyIH0gZnJvbSAnLi9saWIvZW5naW5lL2luZGV4LmpzJztcbmV4cG9ydCB7IEZsb3djaGFydFRyYXZlcnNlciB9IGZyb20gJy4vbGliL2VuZ2luZS9pbmRleC5qcyc7XG5leHBvcnQgeyBpc1N0YWdlTm9kZVJldHVybiB9IGZyb20gJy4vbGliL2VuZ2luZS9pbmRleC5qcyc7XG5cbi8vIE5hcnJhdGl2ZSBpbnRlcm5hbHNcbmV4cG9ydCB0eXBlIHsgSUNvbnRyb2xGbG93TmFycmF0aXZlIH0gZnJvbSAnLi9saWIvZW5naW5lL2luZGV4LmpzJztcbmV4cG9ydCB0eXBlIHsgQ29tYmluZWROYXJyYXRpdmVFbnRyeSwgQ29tYmluZWROYXJyYXRpdmVPcHRpb25zIH0gZnJvbSAnLi9saWIvZW5naW5lL2luZGV4LmpzJztcbmV4cG9ydCB0eXBlIHtcbiAgQnJhbmNoUmVzdWx0LFxuICBCcmFuY2hSZXN1bHRzLFxuICBTZXJpYWxpemVkUGlwZWxpbmVTdHJ1Y3R1cmUgYXMgRW5naW5lU2VyaWFsaXplZFBpcGVsaW5lU3RydWN0dXJlLFxuICBTdGFnZVNuYXBzaG90IGFzIEVuZ2luZVN0YWdlU25hcHNob3QsXG4gIEV4dHJhY3RvckVycm9yLFxuICBIYW5kbGVyRGVwcyxcbiAgSUV4ZWN1dGlvblJ1bnRpbWUsXG4gIE5vZGVSZXN1bHRUeXBlLFxuICBSdW50aW1lU3RydWN0dXJlTWV0YWRhdGEsXG4gIFNjb3BlRmFjdG9yeSxcbiAgU2VyaWFsaXplZFBpcGVsaW5lTm9kZSxcbiAgU3RhZ2VGdW5jdGlvbixcbiAgU3ViZmxvd1Jlc3VsdCxcbiAgVHJhdmVyc2FsRXh0cmFjdG9yLFxuICBUcmF2ZXJzYWxSZXN1bHQsXG59IGZyb20gJy4vbGliL2VuZ2luZS9pbmRleC5qcyc7XG5leHBvcnQgeyBOdWxsQ29udHJvbEZsb3dOYXJyYXRpdmVHZW5lcmF0b3IgfSBmcm9tICcuL2xpYi9lbmdpbmUvaW5kZXguanMnO1xuXG4vLyBIYW5kbGVycyAodGVzdGluZyAvIGN1c3RvbSBlbmdpbmVzKVxuZXhwb3J0IHR5cGUgeyBDYWxsRXh0cmFjdG9yRm4sIEV4ZWN1dGVOb2RlRm4sIEdldFN0YWdlUGF0aEZuLCBSdW5TdGFnZUZuIH0gZnJvbSAnLi9saWIvZW5naW5lL2luZGV4LmpzJztcbmV4cG9ydCB7XG4gIGFwcGx5T3V0cHV0TWFwcGluZyxcbiAgQ2hpbGRyZW5FeGVjdXRvcixcbiAgY29tcHV0ZU5vZGVUeXBlLFxuICBDb250aW51YXRpb25SZXNvbHZlcixcbiAgY3JlYXRlU3ViZmxvd0hhbmRsZXJEZXBzLFxuICBEZWNpZGVySGFuZGxlcixcbiAgREVGQVVMVF9NQVhfSVRFUkFUSU9OUyxcbiAgRXh0cmFjdG9yUnVubmVyLFxuICBleHRyYWN0UGFyZW50U2NvcGVWYWx1ZXMsXG4gIGdldEluaXRpYWxTY29wZVZhbHVlcyxcbiAgTm9kZVJlc29sdmVyLFxuICBSdW50aW1lU3RydWN0dXJlTWFuYWdlcixcbiAgc2VlZFN1YmZsb3dHbG9iYWxTdG9yZSxcbiAgU2VsZWN0b3JIYW5kbGVyLFxuICBTdGFnZVJ1bm5lcixcbiAgU3ViZmxvd0V4ZWN1dG9yLFxufSBmcm9tICcuL2xpYi9lbmdpbmUvaW5kZXguanMnO1xuXG4vLyBUcmFjZSB1dGlsaXRpZXMg4oCUIHJlLWV4cG9ydGVkIGhlcmUgZm9yIGNvbnZlbmllbmNlLiBDYW5vbmljYWwgcGF0aDogJ2Zvb3RwcmludGpzL3RyYWNlJ1xuZXhwb3J0IHR5cGUgeyBFeGVjdXRpb25Db3VudGVyIH0gZnJvbSAnLi9saWIvZW5naW5lL3J1bnRpbWVTdGFnZUlkLmpzJztcbmV4cG9ydCB7IGJ1aWxkUnVudGltZVN0YWdlSWQsIGNyZWF0ZUV4ZWN1dGlvbkNvdW50ZXIsIHBhcnNlUnVudGltZVN0YWdlSWQgfSBmcm9tICcuL2xpYi9lbmdpbmUvcnVudGltZVN0YWdlSWQuanMnO1xuZXhwb3J0IHsgZmluZENvbW1pdCwgZmluZENvbW1pdHMsIGZpbmRMYXN0V3JpdGVyIH0gZnJvbSAnLi9saWIvbWVtb3J5L2NvbW1pdExvZ1V0aWxzLmpzJztcbmV4cG9ydCB7IEJvdW5kYXJ5U3RhdGVUcmFja2VyIH0gZnJvbSAnLi9saWIvcmVjb3JkZXIvQm91bmRhcnlTdGF0ZVRyYWNrZXIuanMnO1xuZXhwb3J0IHsgS2V5ZWRSZWNvcmRlciB9IGZyb20gJy4vbGliL3JlY29yZGVyL0tleWVkUmVjb3JkZXIuanMnO1xuIl19
|
|
@@ -0,0 +1,263 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* BoundaryStateTracker<TState> — third storage primitive on the recorder
|
|
3
|
+
* shelf, alongside `SequenceRecorder<T>` and `KeyedRecorder<T>`.
|
|
4
|
+
*
|
|
5
|
+
* **Mental model — observers vs. bookkeepers:**
|
|
6
|
+
*
|
|
7
|
+
* `Recorder` / `FlowRecorder` / `EmitRecorder` / `CombinedRecorder`
|
|
8
|
+
* are OBSERVER interfaces — they describe how a recorder hears
|
|
9
|
+
* events from the executor.
|
|
10
|
+
*
|
|
11
|
+
* `SequenceRecorder<T>` / `KeyedRecorder<T>` / `BoundaryStateTracker<TState>`
|
|
12
|
+
* are STORAGE primitives — three different bookkeeping shelves with
|
|
13
|
+
* different durability and indexing properties. A real recorder
|
|
14
|
+
* class typically picks ONE observer interface AND ONE storage
|
|
15
|
+
* shelf, combining them via `extends + implements`.
|
|
16
|
+
*
|
|
17
|
+
* **What this primitive answers:** "At any moment during the run, what
|
|
18
|
+
* is the LIVE transient state of every currently-active boundary?"
|
|
19
|
+
*
|
|
20
|
+
* A "boundary" is a matched event pair `[start, stop]` bracketing an
|
|
21
|
+
* interval — for example, `(llm_start, llm_end)` for an LLM call,
|
|
22
|
+
* `(tool_start, tool_end)` for tool execution, `(turn_start, turn_end)`
|
|
23
|
+
* for an agent turn. Between the brackets, intermediate events evolve
|
|
24
|
+
* the boundary's state (token chunks accumulating into a partial
|
|
25
|
+
* answer, args streaming in, etc.). On `stop`, the state clears.
|
|
26
|
+
*
|
|
27
|
+
* Algorithmically this is the **DFS bracket-sequence pattern** —
|
|
28
|
+
* stack-frame state during a graph-traversal interval. Same shape used
|
|
29
|
+
* by Tarjan's SCC algorithm, tree decomposition, and push-down
|
|
30
|
+
* automata. The `active` map is the open-brackets stack at any moment.
|
|
31
|
+
*
|
|
32
|
+
* **Comparison with the other storage primitives:**
|
|
33
|
+
*
|
|
34
|
+
* | Primitive | Stores | Time scope | Memory |
|
|
35
|
+
* |---------------------------------|--------------------------------------|---------------------|-------------|
|
|
36
|
+
* | `SequenceRecorder<T>` | append-only ordered + keyed entries | durable across run | O(N events) |
|
|
37
|
+
* | `KeyedRecorder<T>` | 1:1 entry per `runtimeStageId` | durable across run | O(N steps) |
|
|
38
|
+
* | `BoundaryStateTracker<TState>` | transient bracket-scoped state | live; clears on stop | O(K active) |
|
|
39
|
+
*
|
|
40
|
+
* **When to pick which:**
|
|
41
|
+
*
|
|
42
|
+
* - "I need to keep a permanent log of every event for time-travel"
|
|
43
|
+
* → `SequenceRecorder<T>`
|
|
44
|
+
* - "I want one durable record per stage execution (e.g., metrics)"
|
|
45
|
+
* → `KeyedRecorder<T>`
|
|
46
|
+
* - "I need to know what's happening RIGHT NOW inside an in-flight
|
|
47
|
+
* boundary (e.g., partial LLM stream, partial tool args)"
|
|
48
|
+
* → `BoundaryStateTracker<TState>` (this class)
|
|
49
|
+
*
|
|
50
|
+
* **What this is NOT for:**
|
|
51
|
+
*
|
|
52
|
+
* - Time-travel queries ("what was the state at past slider step N?")
|
|
53
|
+
* — transient state clears on stop. For time-travel, snapshot the
|
|
54
|
+
* state at each emit into a separate `SequenceRecorder<TState>`,
|
|
55
|
+
* or wait for a future `BoundarySnapshotRecorder<TState>` primitive.
|
|
56
|
+
*
|
|
57
|
+
* - Aggregations across the whole run (totals, counts) — those are
|
|
58
|
+
* `SequenceRecorder.aggregate()` / `KeyedRecorder.aggregate()`.
|
|
59
|
+
*
|
|
60
|
+
* - Stage-level concerns — those use `Recorder.onStageStart` /
|
|
61
|
+
* `Recorder.onStageEnd`. This primitive operates at finer
|
|
62
|
+
* granularity (events emitted DURING a stage execution).
|
|
63
|
+
*
|
|
64
|
+
* **Lifecycle contract — STRICT:**
|
|
65
|
+
*
|
|
66
|
+
* Every `startBoundary(key, ...)` call MUST be paired with a
|
|
67
|
+
* `stopBoundary(key)` call. Failure to wire the stop side produces a
|
|
68
|
+
* memory leak: the active map grows without bound, and `getAllActive()`
|
|
69
|
+
* returns stale entries that look in-flight but aren't. Common cause:
|
|
70
|
+
* subclass wires `start` to one event handler and forgets to wire
|
|
71
|
+
* `stop`. **Always wire both at the same time.**
|
|
72
|
+
*
|
|
73
|
+
* Dev mode (`enableDevMode()`) detects leaks at `clear()` time —
|
|
74
|
+
* warning includes the leaked keys so you can find the missing wiring.
|
|
75
|
+
*
|
|
76
|
+
* **Concurrency / nesting:**
|
|
77
|
+
*
|
|
78
|
+
* - Concurrent boundaries (parallel branches with two LLM calls
|
|
79
|
+
* active at once) work correctly: each is keyed independently in
|
|
80
|
+
* the active map.
|
|
81
|
+
* - Nested boundaries of DIFFERENT KINDS (Agent boundary contains
|
|
82
|
+
* LLM boundary) require SEPARATE tracker instances — one per kind.
|
|
83
|
+
* The base class tracks one boundary kind per instance.
|
|
84
|
+
*
|
|
85
|
+
* **Key convention:**
|
|
86
|
+
*
|
|
87
|
+
* The `key: string` is whatever your subclass picks. Convention:
|
|
88
|
+
* use `runtimeStageId` when the boundary maps 1:1 to a stage
|
|
89
|
+
* execution — this gives free interop with `SequenceRecorder
|
|
90
|
+
* .getEntriesForStep`, `KeyedRecorder.getByKey`, `findCommit` /
|
|
91
|
+
* `findLastWriter`, and the rest of the trace ecosystem. Use a more
|
|
92
|
+
* granular key (e.g., `toolCallId`) only when there are multiple
|
|
93
|
+
* concurrent boundaries WITHIN one stage execution.
|
|
94
|
+
*
|
|
95
|
+
* @example Build a live LLM tracker (combining storage + observer):
|
|
96
|
+
*
|
|
97
|
+
* ```typescript
|
|
98
|
+
* import {
|
|
99
|
+
* BoundaryStateTracker,
|
|
100
|
+
* type CombinedRecorder,
|
|
101
|
+
* type EmitEvent,
|
|
102
|
+
* } from 'footprintjs';
|
|
103
|
+
*
|
|
104
|
+
* interface LLMLiveState {
|
|
105
|
+
* readonly partial: string;
|
|
106
|
+
* readonly tokens: number;
|
|
107
|
+
* }
|
|
108
|
+
*
|
|
109
|
+
* class LiveLLMTracker
|
|
110
|
+
* extends BoundaryStateTracker<LLMLiveState> // STORAGE shelf
|
|
111
|
+
* implements CombinedRecorder // OBSERVER interface
|
|
112
|
+
* {
|
|
113
|
+
* readonly id = 'live-llm';
|
|
114
|
+
*
|
|
115
|
+
* // Observer half — translate events into bracket mutations.
|
|
116
|
+
* onEmit(event: EmitEvent): void {
|
|
117
|
+
* if (event.name === 'agentfootprint.stream.llm_start') {
|
|
118
|
+
* this.startBoundary(event.runtimeStageId, { partial: '', tokens: 0 });
|
|
119
|
+
* } else if (event.name === 'agentfootprint.stream.llm_end') {
|
|
120
|
+
* this.stopBoundary(event.runtimeStageId);
|
|
121
|
+
* } else if (event.name === 'agentfootprint.stream.token') {
|
|
122
|
+
* this.updateBoundary(event.runtimeStageId, (s) => ({
|
|
123
|
+
* partial: s.partial + (event.payload as { content: string }).content,
|
|
124
|
+
* tokens: s.tokens + 1,
|
|
125
|
+
* }));
|
|
126
|
+
* }
|
|
127
|
+
* }
|
|
128
|
+
*
|
|
129
|
+
* // Public read API — O(1) at any moment.
|
|
130
|
+
* isInFlight(): boolean { return this.hasActive; }
|
|
131
|
+
* getPartial(stageId: string): string {
|
|
132
|
+
* return this.getActive(stageId)?.partial ?? '';
|
|
133
|
+
* }
|
|
134
|
+
* }
|
|
135
|
+
*
|
|
136
|
+
* // Attached the same way as any other CombinedRecorder.
|
|
137
|
+
* const tracker = new LiveLLMTracker();
|
|
138
|
+
* executor.attachCombinedRecorder(tracker);
|
|
139
|
+
* await executor.run({ input });
|
|
140
|
+
*
|
|
141
|
+
* // Read live state at any time during or after the run.
|
|
142
|
+
* tracker.isInFlight();
|
|
143
|
+
* tracker.getPartial(rid);
|
|
144
|
+
* ```
|
|
145
|
+
*/
|
|
146
|
+
import { isDevMode } from '../scope/detectCircular.js';
|
|
147
|
+
export class BoundaryStateTracker {
|
|
148
|
+
/** Open-brackets stack: key → current transient state. */
|
|
149
|
+
active = new Map();
|
|
150
|
+
/** Per-key count of `updateBoundary` calls that landed without a
|
|
151
|
+
* matching active boundary. Drives rate-limited dev-mode warnings
|
|
152
|
+
* so a stuck loop doesn't spam the console. */
|
|
153
|
+
missedUpdates = new Map();
|
|
154
|
+
// ── Mutator API (subclass calls these from observer hooks) ──────────
|
|
155
|
+
/**
|
|
156
|
+
* Open a new boundary with initial transient state.
|
|
157
|
+
*
|
|
158
|
+
* If a boundary with the same `key` is already active, the prior
|
|
159
|
+
* state is overwritten (last-writer-wins). In dev mode, a warning
|
|
160
|
+
* is logged because re-starting an active key usually indicates a
|
|
161
|
+
* missed `stopBoundary` call upstream.
|
|
162
|
+
*
|
|
163
|
+
* @param key Boundary identifier — by convention, `runtimeStageId`
|
|
164
|
+
* for 1:1-with-stage boundaries, or a more granular id
|
|
165
|
+
* (e.g., `toolCallId`) when multiple concurrent boundaries
|
|
166
|
+
* run within one stage execution.
|
|
167
|
+
* @param initial Initial state — typed by `TState`.
|
|
168
|
+
*/
|
|
169
|
+
startBoundary(key, initial) {
|
|
170
|
+
if (this.active.has(key) && isDevMode()) {
|
|
171
|
+
console.warn(`[${this.id}] startBoundary('${key}') called while an active boundary already exists. ` +
|
|
172
|
+
'Overwriting prior state — likely a missed stopBoundary upstream.');
|
|
173
|
+
}
|
|
174
|
+
this.active.set(key, initial);
|
|
175
|
+
}
|
|
176
|
+
/**
|
|
177
|
+
* Evolve the transient state of an active boundary using an updater
|
|
178
|
+
* function. Silent no-op if no boundary is active for `key`
|
|
179
|
+
* (defensive against out-of-order events). In dev mode, a rate-limited
|
|
180
|
+
* warning is logged on the 1st, 10th, and 100th missed update per key.
|
|
181
|
+
*
|
|
182
|
+
* @param key Boundary identifier (must match a prior `startBoundary`).
|
|
183
|
+
* @param updater Pure function: previous state → next state.
|
|
184
|
+
*/
|
|
185
|
+
updateBoundary(key, updater) {
|
|
186
|
+
const cur = this.active.get(key);
|
|
187
|
+
if (cur === undefined) {
|
|
188
|
+
if (isDevMode()) {
|
|
189
|
+
const n = (this.missedUpdates.get(key) ?? 0) + 1;
|
|
190
|
+
this.missedUpdates.set(key, n);
|
|
191
|
+
if (n === 1) {
|
|
192
|
+
console.warn(`[${this.id}] updateBoundary('${key}') — no active boundary. Update dropped.`);
|
|
193
|
+
}
|
|
194
|
+
else if (n === 10 || n === 100) {
|
|
195
|
+
console.warn(`[${this.id}] updateBoundary('${key}') — ${n} dropped updates. Wiring bug?`);
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
return;
|
|
199
|
+
}
|
|
200
|
+
this.active.set(key, updater(cur));
|
|
201
|
+
}
|
|
202
|
+
/**
|
|
203
|
+
* Close the boundary identified by `key` and return its FINAL
|
|
204
|
+
* transient state (for any cleanup the subclass wants — e.g., emit a
|
|
205
|
+
* snapshot to a SequenceRecorder for durable storage).
|
|
206
|
+
*
|
|
207
|
+
* @param key Boundary identifier.
|
|
208
|
+
* @returns The final state, or `undefined` if no boundary was active.
|
|
209
|
+
*/
|
|
210
|
+
stopBoundary(key) {
|
|
211
|
+
const final = this.active.get(key);
|
|
212
|
+
this.active.delete(key);
|
|
213
|
+
return final;
|
|
214
|
+
}
|
|
215
|
+
// ── Read API (consumers call these — O(1)) ─────────────────────────
|
|
216
|
+
/** Current transient state of ONE active boundary. `undefined` if no
|
|
217
|
+
* boundary is active for `key`. */
|
|
218
|
+
getActive(key) {
|
|
219
|
+
return this.active.get(key);
|
|
220
|
+
}
|
|
221
|
+
/**
|
|
222
|
+
* All currently-active boundaries.
|
|
223
|
+
*
|
|
224
|
+
* **Type-only readonly:** the returned reference IS the internal Map.
|
|
225
|
+
* TypeScript prevents mutation through the `ReadonlyMap` type, but a
|
|
226
|
+
* runtime cast or non-TS consumer can mutate it and corrupt internal
|
|
227
|
+
* state. **Do not mutate.**
|
|
228
|
+
*/
|
|
229
|
+
getAllActive() {
|
|
230
|
+
return this.active;
|
|
231
|
+
}
|
|
232
|
+
/** True if any boundary is currently active. O(1). */
|
|
233
|
+
get hasActive() {
|
|
234
|
+
return this.active.size > 0;
|
|
235
|
+
}
|
|
236
|
+
/** Number of currently-active boundaries. O(1). */
|
|
237
|
+
get activeCount() {
|
|
238
|
+
return this.active.size;
|
|
239
|
+
}
|
|
240
|
+
// ── Lifecycle ───────────────────────────────────────────────────────
|
|
241
|
+
/**
|
|
242
|
+
* Reset all transient state. Called by executors before each `run()`
|
|
243
|
+
* so consumers get a clean slate per run — same lifecycle contract
|
|
244
|
+
* as `SequenceRecorder.clear()`.
|
|
245
|
+
*
|
|
246
|
+
* In dev mode, warns if any boundaries are still active when called
|
|
247
|
+
* — likely indicates a missed `stopBoundary` upstream. The leaked
|
|
248
|
+
* keys are listed (truncated to 10) so the wiring bug is findable.
|
|
249
|
+
*/
|
|
250
|
+
clear() {
|
|
251
|
+
if (this.active.size > 0 && isDevMode()) {
|
|
252
|
+
const keys = [...this.active.keys()];
|
|
253
|
+
const head = keys.slice(0, 10).join(', ');
|
|
254
|
+
const more = keys.length > 10 ? ` ...(+${keys.length - 10} more)` : '';
|
|
255
|
+
console.warn(`[${this.id}] clear() called with ${this.active.size} ` +
|
|
256
|
+
'still-active boundaries. Missed stopBoundary? ' +
|
|
257
|
+
`Leaked keys: ${head}${more}`);
|
|
258
|
+
}
|
|
259
|
+
this.active.clear();
|
|
260
|
+
this.missedUpdates.clear();
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQm91bmRhcnlTdGF0ZVRyYWNrZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL3JlY29yZGVyL0JvdW5kYXJ5U3RhdGVUcmFja2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FnSkc7QUFFSCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFdkQsTUFBTSxPQUFnQixvQkFBb0I7SUFJeEMsMERBQTBEO0lBQ3pDLE1BQU0sR0FBRyxJQUFJLEdBQUcsRUFBa0IsQ0FBQztJQUVwRDs7b0RBRWdEO0lBQy9CLGFBQWEsR0FBRyxJQUFJLEdBQUcsRUFBa0IsQ0FBQztJQUUzRCx1RUFBdUU7SUFFdkU7Ozs7Ozs7Ozs7Ozs7T0FhRztJQUNPLGFBQWEsQ0FBQyxHQUFXLEVBQUUsT0FBZTtRQUNsRCxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLFNBQVMsRUFBRSxFQUFFLENBQUM7WUFDeEMsT0FBTyxDQUFDLElBQUksQ0FDVixJQUFJLElBQUksQ0FBQyxFQUFFLG9CQUFvQixHQUFHLHFEQUFxRDtnQkFDckYsa0VBQWtFLENBQ3JFLENBQUM7UUFDSixDQUFDO1FBQ0QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNPLGNBQWMsQ0FBQyxHQUFXLEVBQUUsT0FBaUM7UUFDckUsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDakMsSUFBSSxHQUFHLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDdEIsSUFBSSxTQUFTLEVBQUUsRUFBRSxDQUFDO2dCQUNoQixNQUFNLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFDakQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUMvQixJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztvQkFDWixPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLEVBQUUscUJBQXFCLEdBQUcsMENBQTBDLENBQUMsQ0FBQztnQkFDOUYsQ0FBQztxQkFBTSxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO29CQUNqQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLEVBQUUscUJBQXFCLEdBQUcsUUFBUSxDQUFDLCtCQUErQixDQUFDLENBQUM7Z0JBQzVGLENBQUM7WUFDSCxDQUFDO1lBQ0QsT0FBTztRQUNULENBQUM7UUFDRCxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDTyxZQUFZLENBQUMsR0FBVztRQUNoQyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNuQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN4QixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRCxzRUFBc0U7SUFFdEU7d0NBQ29DO0lBQ3BDLFNBQVMsQ0FBQyxHQUFXO1FBQ25CLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDSCxZQUFZO1FBQ1YsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7SUFFRCxzREFBc0Q7SUFDdEQsSUFBSSxTQUFTO1FBQ1gsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksR0FBRyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELG1EQUFtRDtJQUNuRCxJQUFJLFdBQVc7UUFDYixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO0lBQzFCLENBQUM7SUFFRCx1RUFBdUU7SUFFdkU7Ozs7Ozs7O09BUUc7SUFDSCxLQUFLO1FBQ0gsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksR0FBRyxDQUFDLElBQUksU0FBUyxFQUFFLEVBQUUsQ0FBQztZQUN4QyxNQUFNLElBQUksR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQ3JDLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUMxQyxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxJQUFJLENBQUMsTUFBTSxHQUFHLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDdkUsT0FBTyxDQUFDLElBQUksQ0FDVixJQUFJLElBQUksQ0FBQyxFQUFFLHlCQUF5QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksR0FBRztnQkFDckQsZ0RBQWdEO2dCQUNoRCxnQkFBZ0IsSUFBSSxHQUFHLElBQUksRUFBRSxDQUNoQyxDQUFDO1FBQ0osQ0FBQztRQUNELElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUM3QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEJvdW5kYXJ5U3RhdGVUcmFja2VyPFRTdGF0ZT4g4oCUIHRoaXJkIHN0b3JhZ2UgcHJpbWl0aXZlIG9uIHRoZSByZWNvcmRlclxuICogc2hlbGYsIGFsb25nc2lkZSBgU2VxdWVuY2VSZWNvcmRlcjxUPmAgYW5kIGBLZXllZFJlY29yZGVyPFQ+YC5cbiAqXG4gKiAqKk1lbnRhbCBtb2RlbCDigJQgb2JzZXJ2ZXJzIHZzLiBib29ra2VlcGVyczoqKlxuICpcbiAqICAgYFJlY29yZGVyYCAvIGBGbG93UmVjb3JkZXJgIC8gYEVtaXRSZWNvcmRlcmAgLyBgQ29tYmluZWRSZWNvcmRlcmBcbiAqICAgICBhcmUgT0JTRVJWRVIgaW50ZXJmYWNlcyDigJQgdGhleSBkZXNjcmliZSBob3cgYSByZWNvcmRlciBoZWFyc1xuICogICAgIGV2ZW50cyBmcm9tIHRoZSBleGVjdXRvci5cbiAqXG4gKiAgIGBTZXF1ZW5jZVJlY29yZGVyPFQ+YCAvIGBLZXllZFJlY29yZGVyPFQ+YCAvIGBCb3VuZGFyeVN0YXRlVHJhY2tlcjxUU3RhdGU+YFxuICogICAgIGFyZSBTVE9SQUdFIHByaW1pdGl2ZXMg4oCUIHRocmVlIGRpZmZlcmVudCBib29ra2VlcGluZyBzaGVsdmVzIHdpdGhcbiAqICAgICBkaWZmZXJlbnQgZHVyYWJpbGl0eSBhbmQgaW5kZXhpbmcgcHJvcGVydGllcy4gQSByZWFsIHJlY29yZGVyXG4gKiAgICAgY2xhc3MgdHlwaWNhbGx5IHBpY2tzIE9ORSBvYnNlcnZlciBpbnRlcmZhY2UgQU5EIE9ORSBzdG9yYWdlXG4gKiAgICAgc2hlbGYsIGNvbWJpbmluZyB0aGVtIHZpYSBgZXh0ZW5kcyArIGltcGxlbWVudHNgLlxuICpcbiAqICoqV2hhdCB0aGlzIHByaW1pdGl2ZSBhbnN3ZXJzOioqIFwiQXQgYW55IG1vbWVudCBkdXJpbmcgdGhlIHJ1biwgd2hhdFxuICogaXMgdGhlIExJVkUgdHJhbnNpZW50IHN0YXRlIG9mIGV2ZXJ5IGN1cnJlbnRseS1hY3RpdmUgYm91bmRhcnk/XCJcbiAqXG4gKiBBIFwiYm91bmRhcnlcIiBpcyBhIG1hdGNoZWQgZXZlbnQgcGFpciBgW3N0YXJ0LCBzdG9wXWAgYnJhY2tldGluZyBhblxuICogaW50ZXJ2YWwg4oCUIGZvciBleGFtcGxlLCBgKGxsbV9zdGFydCwgbGxtX2VuZClgIGZvciBhbiBMTE0gY2FsbCxcbiAqIGAodG9vbF9zdGFydCwgdG9vbF9lbmQpYCBmb3IgdG9vbCBleGVjdXRpb24sIGAodHVybl9zdGFydCwgdHVybl9lbmQpYFxuICogZm9yIGFuIGFnZW50IHR1cm4uIEJldHdlZW4gdGhlIGJyYWNrZXRzLCBpbnRlcm1lZGlhdGUgZXZlbnRzIGV2b2x2ZVxuICogdGhlIGJvdW5kYXJ5J3Mgc3RhdGUgKHRva2VuIGNodW5rcyBhY2N1bXVsYXRpbmcgaW50byBhIHBhcnRpYWxcbiAqIGFuc3dlciwgYXJncyBzdHJlYW1pbmcgaW4sIGV0Yy4pLiBPbiBgc3RvcGAsIHRoZSBzdGF0ZSBjbGVhcnMuXG4gKlxuICogQWxnb3JpdGhtaWNhbGx5IHRoaXMgaXMgdGhlICoqREZTIGJyYWNrZXQtc2VxdWVuY2UgcGF0dGVybioqIOKAlFxuICogc3RhY2stZnJhbWUgc3RhdGUgZHVyaW5nIGEgZ3JhcGgtdHJhdmVyc2FsIGludGVydmFsLiBTYW1lIHNoYXBlIHVzZWRcbiAqIGJ5IFRhcmphbidzIFNDQyBhbGdvcml0aG0sIHRyZWUgZGVjb21wb3NpdGlvbiwgYW5kIHB1c2gtZG93blxuICogYXV0b21hdGEuIFRoZSBgYWN0aXZlYCBtYXAgaXMgdGhlIG9wZW4tYnJhY2tldHMgc3RhY2sgYXQgYW55IG1vbWVudC5cbiAqXG4gKiAqKkNvbXBhcmlzb24gd2l0aCB0aGUgb3RoZXIgc3RvcmFnZSBwcmltaXRpdmVzOioqXG4gKlxuICogfCBQcmltaXRpdmUgICAgICAgICAgICAgICAgICAgICAgIHwgU3RvcmVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgVGltZSBzY29wZSAgICAgICAgICB8IE1lbW9yeSAgICAgIHxcbiAqIHwtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS18LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS18LS0tLS0tLS0tLS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLS18XG4gKiB8IGBTZXF1ZW5jZVJlY29yZGVyPFQ+YCAgICAgICAgICAgfCBhcHBlbmQtb25seSBvcmRlcmVkICsga2V5ZWQgZW50cmllcyAgfCBkdXJhYmxlIGFjcm9zcyBydW4gIHwgTyhOIGV2ZW50cykgfFxuICogfCBgS2V5ZWRSZWNvcmRlcjxUPmAgICAgICAgICAgICAgIHwgMToxIGVudHJ5IHBlciBgcnVudGltZVN0YWdlSWRgICAgICAgIHwgZHVyYWJsZSBhY3Jvc3MgcnVuICB8IE8oTiBzdGVwcykgIHxcbiAqIHwgYEJvdW5kYXJ5U3RhdGVUcmFja2VyPFRTdGF0ZT5gICB8IHRyYW5zaWVudCBicmFja2V0LXNjb3BlZCBzdGF0ZSAgICAgICB8IGxpdmU7IGNsZWFycyBvbiBzdG9wIHwgTyhLIGFjdGl2ZSkgfFxuICpcbiAqICoqV2hlbiB0byBwaWNrIHdoaWNoOioqXG4gKlxuICogICAtIFwiSSBuZWVkIHRvIGtlZXAgYSBwZXJtYW5lbnQgbG9nIG9mIGV2ZXJ5IGV2ZW50IGZvciB0aW1lLXRyYXZlbFwiXG4gKiAgICAgIOKGkiBgU2VxdWVuY2VSZWNvcmRlcjxUPmBcbiAqICAgLSBcIkkgd2FudCBvbmUgZHVyYWJsZSByZWNvcmQgcGVyIHN0YWdlIGV4ZWN1dGlvbiAoZS5nLiwgbWV0cmljcylcIlxuICogICAgICDihpIgYEtleWVkUmVjb3JkZXI8VD5gXG4gKiAgIC0gXCJJIG5lZWQgdG8ga25vdyB3aGF0J3MgaGFwcGVuaW5nIFJJR0hUIE5PVyBpbnNpZGUgYW4gaW4tZmxpZ2h0XG4gKiAgICAgYm91bmRhcnkgKGUuZy4sIHBhcnRpYWwgTExNIHN0cmVhbSwgcGFydGlhbCB0b29sIGFyZ3MpXCJcbiAqICAgICAg4oaSIGBCb3VuZGFyeVN0YXRlVHJhY2tlcjxUU3RhdGU+YCAodGhpcyBjbGFzcylcbiAqXG4gKiAqKldoYXQgdGhpcyBpcyBOT1QgZm9yOioqXG4gKlxuICogICAtIFRpbWUtdHJhdmVsIHF1ZXJpZXMgKFwid2hhdCB3YXMgdGhlIHN0YXRlIGF0IHBhc3Qgc2xpZGVyIHN0ZXAgTj9cIilcbiAqICAgICDigJQgdHJhbnNpZW50IHN0YXRlIGNsZWFycyBvbiBzdG9wLiBGb3IgdGltZS10cmF2ZWwsIHNuYXBzaG90IHRoZVxuICogICAgIHN0YXRlIGF0IGVhY2ggZW1pdCBpbnRvIGEgc2VwYXJhdGUgYFNlcXVlbmNlUmVjb3JkZXI8VFN0YXRlPmAsXG4gKiAgICAgb3Igd2FpdCBmb3IgYSBmdXR1cmUgYEJvdW5kYXJ5U25hcHNob3RSZWNvcmRlcjxUU3RhdGU+YCBwcmltaXRpdmUuXG4gKlxuICogICAtIEFnZ3JlZ2F0aW9ucyBhY3Jvc3MgdGhlIHdob2xlIHJ1biAodG90YWxzLCBjb3VudHMpIOKAlCB0aG9zZSBhcmVcbiAqICAgICBgU2VxdWVuY2VSZWNvcmRlci5hZ2dyZWdhdGUoKWAgLyBgS2V5ZWRSZWNvcmRlci5hZ2dyZWdhdGUoKWAuXG4gKlxuICogICAtIFN0YWdlLWxldmVsIGNvbmNlcm5zIOKAlCB0aG9zZSB1c2UgYFJlY29yZGVyLm9uU3RhZ2VTdGFydGAgL1xuICogICAgIGBSZWNvcmRlci5vblN0YWdlRW5kYC4gVGhpcyBwcmltaXRpdmUgb3BlcmF0ZXMgYXQgZmluZXJcbiAqICAgICBncmFudWxhcml0eSAoZXZlbnRzIGVtaXR0ZWQgRFVSSU5HIGEgc3RhZ2UgZXhlY3V0aW9uKS5cbiAqXG4gKiAqKkxpZmVjeWNsZSBjb250cmFjdCDigJQgU1RSSUNUOioqXG4gKlxuICogICBFdmVyeSBgc3RhcnRCb3VuZGFyeShrZXksIC4uLilgIGNhbGwgTVVTVCBiZSBwYWlyZWQgd2l0aCBhXG4gKiAgIGBzdG9wQm91bmRhcnkoa2V5KWAgY2FsbC4gRmFpbHVyZSB0byB3aXJlIHRoZSBzdG9wIHNpZGUgcHJvZHVjZXMgYVxuICogICBtZW1vcnkgbGVhazogdGhlIGFjdGl2ZSBtYXAgZ3Jvd3Mgd2l0aG91dCBib3VuZCwgYW5kIGBnZXRBbGxBY3RpdmUoKWBcbiAqICAgcmV0dXJucyBzdGFsZSBlbnRyaWVzIHRoYXQgbG9vayBpbi1mbGlnaHQgYnV0IGFyZW4ndC4gQ29tbW9uIGNhdXNlOlxuICogICBzdWJjbGFzcyB3aXJlcyBgc3RhcnRgIHRvIG9uZSBldmVudCBoYW5kbGVyIGFuZCBmb3JnZXRzIHRvIHdpcmVcbiAqICAgYHN0b3BgLiAqKkFsd2F5cyB3aXJlIGJvdGggYXQgdGhlIHNhbWUgdGltZS4qKlxuICpcbiAqICAgRGV2IG1vZGUgKGBlbmFibGVEZXZNb2RlKClgKSBkZXRlY3RzIGxlYWtzIGF0IGBjbGVhcigpYCB0aW1lIOKAlFxuICogICB3YXJuaW5nIGluY2x1ZGVzIHRoZSBsZWFrZWQga2V5cyBzbyB5b3UgY2FuIGZpbmQgdGhlIG1pc3Npbmcgd2lyaW5nLlxuICpcbiAqICoqQ29uY3VycmVuY3kgLyBuZXN0aW5nOioqXG4gKlxuICogICAtIENvbmN1cnJlbnQgYm91bmRhcmllcyAocGFyYWxsZWwgYnJhbmNoZXMgd2l0aCB0d28gTExNIGNhbGxzXG4gKiAgICAgYWN0aXZlIGF0IG9uY2UpIHdvcmsgY29ycmVjdGx5OiBlYWNoIGlzIGtleWVkIGluZGVwZW5kZW50bHkgaW5cbiAqICAgICB0aGUgYWN0aXZlIG1hcC5cbiAqICAgLSBOZXN0ZWQgYm91bmRhcmllcyBvZiBESUZGRVJFTlQgS0lORFMgKEFnZW50IGJvdW5kYXJ5IGNvbnRhaW5zXG4gKiAgICAgTExNIGJvdW5kYXJ5KSByZXF1aXJlIFNFUEFSQVRFIHRyYWNrZXIgaW5zdGFuY2VzIOKAlCBvbmUgcGVyIGtpbmQuXG4gKiAgICAgVGhlIGJhc2UgY2xhc3MgdHJhY2tzIG9uZSBib3VuZGFyeSBraW5kIHBlciBpbnN0YW5jZS5cbiAqXG4gKiAqKktleSBjb252ZW50aW9uOioqXG4gKlxuICogICBUaGUgYGtleTogc3RyaW5nYCBpcyB3aGF0ZXZlciB5b3VyIHN1YmNsYXNzIHBpY2tzLiBDb252ZW50aW9uOlxuICogICB1c2UgYHJ1bnRpbWVTdGFnZUlkYCB3aGVuIHRoZSBib3VuZGFyeSBtYXBzIDE6MSB0byBhIHN0YWdlXG4gKiAgIGV4ZWN1dGlvbiDigJQgdGhpcyBnaXZlcyBmcmVlIGludGVyb3Agd2l0aCBgU2VxdWVuY2VSZWNvcmRlclxuICogICAuZ2V0RW50cmllc0ZvclN0ZXBgLCBgS2V5ZWRSZWNvcmRlci5nZXRCeUtleWAsIGBmaW5kQ29tbWl0YCAvXG4gKiAgIGBmaW5kTGFzdFdyaXRlcmAsIGFuZCB0aGUgcmVzdCBvZiB0aGUgdHJhY2UgZWNvc3lzdGVtLiBVc2UgYSBtb3JlXG4gKiAgIGdyYW51bGFyIGtleSAoZS5nLiwgYHRvb2xDYWxsSWRgKSBvbmx5IHdoZW4gdGhlcmUgYXJlIG11bHRpcGxlXG4gKiAgIGNvbmN1cnJlbnQgYm91bmRhcmllcyBXSVRISU4gb25lIHN0YWdlIGV4ZWN1dGlvbi5cbiAqXG4gKiBAZXhhbXBsZSBCdWlsZCBhIGxpdmUgTExNIHRyYWNrZXIgKGNvbWJpbmluZyBzdG9yYWdlICsgb2JzZXJ2ZXIpOlxuICpcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGltcG9ydCB7XG4gKiAgIEJvdW5kYXJ5U3RhdGVUcmFja2VyLFxuICogICB0eXBlIENvbWJpbmVkUmVjb3JkZXIsXG4gKiAgIHR5cGUgRW1pdEV2ZW50LFxuICogfSBmcm9tICdmb290cHJpbnRqcyc7XG4gKlxuICogaW50ZXJmYWNlIExMTUxpdmVTdGF0ZSB7XG4gKiAgIHJlYWRvbmx5IHBhcnRpYWw6IHN0cmluZztcbiAqICAgcmVhZG9ubHkgdG9rZW5zOiBudW1iZXI7XG4gKiB9XG4gKlxuICogY2xhc3MgTGl2ZUxMTVRyYWNrZXJcbiAqICAgZXh0ZW5kcyBCb3VuZGFyeVN0YXRlVHJhY2tlcjxMTE1MaXZlU3RhdGU+ICAgLy8gU1RPUkFHRSBzaGVsZlxuICogICBpbXBsZW1lbnRzIENvbWJpbmVkUmVjb3JkZXIgICAgICAgICAgICAgICAgICAgLy8gT0JTRVJWRVIgaW50ZXJmYWNlXG4gKiB7XG4gKiAgIHJlYWRvbmx5IGlkID0gJ2xpdmUtbGxtJztcbiAqXG4gKiAgIC8vIE9ic2VydmVyIGhhbGYg4oCUIHRyYW5zbGF0ZSBldmVudHMgaW50byBicmFja2V0IG11dGF0aW9ucy5cbiAqICAgb25FbWl0KGV2ZW50OiBFbWl0RXZlbnQpOiB2b2lkIHtcbiAqICAgICBpZiAoZXZlbnQubmFtZSA9PT0gJ2FnZW50Zm9vdHByaW50LnN0cmVhbS5sbG1fc3RhcnQnKSB7XG4gKiAgICAgICB0aGlzLnN0YXJ0Qm91bmRhcnkoZXZlbnQucnVudGltZVN0YWdlSWQsIHsgcGFydGlhbDogJycsIHRva2VuczogMCB9KTtcbiAqICAgICB9IGVsc2UgaWYgKGV2ZW50Lm5hbWUgPT09ICdhZ2VudGZvb3RwcmludC5zdHJlYW0ubGxtX2VuZCcpIHtcbiAqICAgICAgIHRoaXMuc3RvcEJvdW5kYXJ5KGV2ZW50LnJ1bnRpbWVTdGFnZUlkKTtcbiAqICAgICB9IGVsc2UgaWYgKGV2ZW50Lm5hbWUgPT09ICdhZ2VudGZvb3RwcmludC5zdHJlYW0udG9rZW4nKSB7XG4gKiAgICAgICB0aGlzLnVwZGF0ZUJvdW5kYXJ5KGV2ZW50LnJ1bnRpbWVTdGFnZUlkLCAocykgPT4gKHtcbiAqICAgICAgICAgcGFydGlhbDogcy5wYXJ0aWFsICsgKGV2ZW50LnBheWxvYWQgYXMgeyBjb250ZW50OiBzdHJpbmcgfSkuY29udGVudCxcbiAqICAgICAgICAgdG9rZW5zOiBzLnRva2VucyArIDEsXG4gKiAgICAgICB9KSk7XG4gKiAgICAgfVxuICogICB9XG4gKlxuICogICAvLyBQdWJsaWMgcmVhZCBBUEkg4oCUIE8oMSkgYXQgYW55IG1vbWVudC5cbiAqICAgaXNJbkZsaWdodCgpOiBib29sZWFuIHsgcmV0dXJuIHRoaXMuaGFzQWN0aXZlOyB9XG4gKiAgIGdldFBhcnRpYWwoc3RhZ2VJZDogc3RyaW5nKTogc3RyaW5nIHtcbiAqICAgICByZXR1cm4gdGhpcy5nZXRBY3RpdmUoc3RhZ2VJZCk/LnBhcnRpYWwgPz8gJyc7XG4gKiAgIH1cbiAqIH1cbiAqXG4gKiAvLyBBdHRhY2hlZCB0aGUgc2FtZSB3YXkgYXMgYW55IG90aGVyIENvbWJpbmVkUmVjb3JkZXIuXG4gKiBjb25zdCB0cmFja2VyID0gbmV3IExpdmVMTE1UcmFja2VyKCk7XG4gKiBleGVjdXRvci5hdHRhY2hDb21iaW5lZFJlY29yZGVyKHRyYWNrZXIpO1xuICogYXdhaXQgZXhlY3V0b3IucnVuKHsgaW5wdXQgfSk7XG4gKlxuICogLy8gUmVhZCBsaXZlIHN0YXRlIGF0IGFueSB0aW1lIGR1cmluZyBvciBhZnRlciB0aGUgcnVuLlxuICogdHJhY2tlci5pc0luRmxpZ2h0KCk7XG4gKiB0cmFja2VyLmdldFBhcnRpYWwocmlkKTtcbiAqIGBgYFxuICovXG5cbmltcG9ydCB7IGlzRGV2TW9kZSB9IGZyb20gJy4uL3Njb3BlL2RldGVjdENpcmN1bGFyLmpzJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJvdW5kYXJ5U3RhdGVUcmFja2VyPFRTdGF0ZT4ge1xuICAvKiogU3RhYmxlIGlkIOKAlCBzYW1lIGlkZW1wb3RlbmN5IGNvbnRyYWN0IGFzIG90aGVyIHJlY29yZGVycy4gKi9cbiAgYWJzdHJhY3QgcmVhZG9ubHkgaWQ6IHN0cmluZztcblxuICAvKiogT3Blbi1icmFja2V0cyBzdGFjazoga2V5IOKGkiBjdXJyZW50IHRyYW5zaWVudCBzdGF0ZS4gKi9cbiAgcHJpdmF0ZSByZWFkb25seSBhY3RpdmUgPSBuZXcgTWFwPHN0cmluZywgVFN0YXRlPigpO1xuXG4gIC8qKiBQZXIta2V5IGNvdW50IG9mIGB1cGRhdGVCb3VuZGFyeWAgY2FsbHMgdGhhdCBsYW5kZWQgd2l0aG91dCBhXG4gICAqICBtYXRjaGluZyBhY3RpdmUgYm91bmRhcnkuIERyaXZlcyByYXRlLWxpbWl0ZWQgZGV2LW1vZGUgd2FybmluZ3NcbiAgICogIHNvIGEgc3R1Y2sgbG9vcCBkb2Vzbid0IHNwYW0gdGhlIGNvbnNvbGUuICovXG4gIHByaXZhdGUgcmVhZG9ubHkgbWlzc2VkVXBkYXRlcyA9IG5ldyBNYXA8c3RyaW5nLCBudW1iZXI+KCk7XG5cbiAgLy8g4pSA4pSAIE11dGF0b3IgQVBJIChzdWJjbGFzcyBjYWxscyB0aGVzZSBmcm9tIG9ic2VydmVyIGhvb2tzKSDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuICAvKipcbiAgICogT3BlbiBhIG5ldyBib3VuZGFyeSB3aXRoIGluaXRpYWwgdHJhbnNpZW50IHN0YXRlLlxuICAgKlxuICAgKiBJZiBhIGJvdW5kYXJ5IHdpdGggdGhlIHNhbWUgYGtleWAgaXMgYWxyZWFkeSBhY3RpdmUsIHRoZSBwcmlvclxuICAgKiBzdGF0ZSBpcyBvdmVyd3JpdHRlbiAobGFzdC13cml0ZXItd2lucykuIEluIGRldiBtb2RlLCBhIHdhcm5pbmdcbiAgICogaXMgbG9nZ2VkIGJlY2F1c2UgcmUtc3RhcnRpbmcgYW4gYWN0aXZlIGtleSB1c3VhbGx5IGluZGljYXRlcyBhXG4gICAqIG1pc3NlZCBgc3RvcEJvdW5kYXJ5YCBjYWxsIHVwc3RyZWFtLlxuICAgKlxuICAgKiBAcGFyYW0ga2V5IEJvdW5kYXJ5IGlkZW50aWZpZXIg4oCUIGJ5IGNvbnZlbnRpb24sIGBydW50aW1lU3RhZ2VJZGBcbiAgICogICAgICAgICAgICBmb3IgMToxLXdpdGgtc3RhZ2UgYm91bmRhcmllcywgb3IgYSBtb3JlIGdyYW51bGFyIGlkXG4gICAqICAgICAgICAgICAgKGUuZy4sIGB0b29sQ2FsbElkYCkgd2hlbiBtdWx0aXBsZSBjb25jdXJyZW50IGJvdW5kYXJpZXNcbiAgICogICAgICAgICAgICBydW4gd2l0aGluIG9uZSBzdGFnZSBleGVjdXRpb24uXG4gICAqIEBwYXJhbSBpbml0aWFsIEluaXRpYWwgc3RhdGUg4oCUIHR5cGVkIGJ5IGBUU3RhdGVgLlxuICAgKi9cbiAgcHJvdGVjdGVkIHN0YXJ0Qm91bmRhcnkoa2V5OiBzdHJpbmcsIGluaXRpYWw6IFRTdGF0ZSk6IHZvaWQge1xuICAgIGlmICh0aGlzLmFjdGl2ZS5oYXMoa2V5KSAmJiBpc0Rldk1vZGUoKSkge1xuICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICBgWyR7dGhpcy5pZH1dIHN0YXJ0Qm91bmRhcnkoJyR7a2V5fScpIGNhbGxlZCB3aGlsZSBhbiBhY3RpdmUgYm91bmRhcnkgYWxyZWFkeSBleGlzdHMuIGAgK1xuICAgICAgICAgICdPdmVyd3JpdGluZyBwcmlvciBzdGF0ZSDigJQgbGlrZWx5IGEgbWlzc2VkIHN0b3BCb3VuZGFyeSB1cHN0cmVhbS4nLFxuICAgICAgKTtcbiAgICB9XG4gICAgdGhpcy5hY3RpdmUuc2V0KGtleSwgaW5pdGlhbCk7XG4gIH1cblxuICAvKipcbiAgICogRXZvbHZlIHRoZSB0cmFuc2llbnQgc3RhdGUgb2YgYW4gYWN0aXZlIGJvdW5kYXJ5IHVzaW5nIGFuIHVwZGF0ZXJcbiAgICogZnVuY3Rpb24uIFNpbGVudCBuby1vcCBpZiBubyBib3VuZGFyeSBpcyBhY3RpdmUgZm9yIGBrZXlgXG4gICAqIChkZWZlbnNpdmUgYWdhaW5zdCBvdXQtb2Ytb3JkZXIgZXZlbnRzKS4gSW4gZGV2IG1vZGUsIGEgcmF0ZS1saW1pdGVkXG4gICAqIHdhcm5pbmcgaXMgbG9nZ2VkIG9uIHRoZSAxc3QsIDEwdGgsIGFuZCAxMDB0aCBtaXNzZWQgdXBkYXRlIHBlciBrZXkuXG4gICAqXG4gICAqIEBwYXJhbSBrZXkgICAgICBCb3VuZGFyeSBpZGVudGlmaWVyIChtdXN0IG1hdGNoIGEgcHJpb3IgYHN0YXJ0Qm91bmRhcnlgKS5cbiAgICogQHBhcmFtIHVwZGF0ZXIgIFB1cmUgZnVuY3Rpb246IHByZXZpb3VzIHN0YXRlIOKGkiBuZXh0IHN0YXRlLlxuICAgKi9cbiAgcHJvdGVjdGVkIHVwZGF0ZUJvdW5kYXJ5KGtleTogc3RyaW5nLCB1cGRhdGVyOiAocHJldjogVFN0YXRlKSA9PiBUU3RhdGUpOiB2b2lkIHtcbiAgICBjb25zdCBjdXIgPSB0aGlzLmFjdGl2ZS5nZXQoa2V5KTtcbiAgICBpZiAoY3VyID09PSB1bmRlZmluZWQpIHtcbiAgICAgIGlmIChpc0Rldk1vZGUoKSkge1xuICAgICAgICBjb25zdCBuID0gKHRoaXMubWlzc2VkVXBkYXRlcy5nZXQoa2V5KSA/PyAwKSArIDE7XG4gICAgICAgIHRoaXMubWlzc2VkVXBkYXRlcy5zZXQoa2V5LCBuKTtcbiAgICAgICAgaWYgKG4gPT09IDEpIHtcbiAgICAgICAgICBjb25zb2xlLndhcm4oYFske3RoaXMuaWR9XSB1cGRhdGVCb3VuZGFyeSgnJHtrZXl9Jykg4oCUIG5vIGFjdGl2ZSBib3VuZGFyeS4gVXBkYXRlIGRyb3BwZWQuYCk7XG4gICAgICAgIH0gZWxzZSBpZiAobiA9PT0gMTAgfHwgbiA9PT0gMTAwKSB7XG4gICAgICAgICAgY29uc29sZS53YXJuKGBbJHt0aGlzLmlkfV0gdXBkYXRlQm91bmRhcnkoJyR7a2V5fScpIOKAlCAke259IGRyb3BwZWQgdXBkYXRlcy4gV2lyaW5nIGJ1Zz9gKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmFjdGl2ZS5zZXQoa2V5LCB1cGRhdGVyKGN1cikpO1xuICB9XG5cbiAgLyoqXG4gICAqIENsb3NlIHRoZSBib3VuZGFyeSBpZGVudGlmaWVkIGJ5IGBrZXlgIGFuZCByZXR1cm4gaXRzIEZJTkFMXG4gICAqIHRyYW5zaWVudCBzdGF0ZSAoZm9yIGFueSBjbGVhbnVwIHRoZSBzdWJjbGFzcyB3YW50cyDigJQgZS5nLiwgZW1pdCBhXG4gICAqIHNuYXBzaG90IHRvIGEgU2VxdWVuY2VSZWNvcmRlciBmb3IgZHVyYWJsZSBzdG9yYWdlKS5cbiAgICpcbiAgICogQHBhcmFtIGtleSBCb3VuZGFyeSBpZGVudGlmaWVyLlxuICAgKiBAcmV0dXJucyBUaGUgZmluYWwgc3RhdGUsIG9yIGB1bmRlZmluZWRgIGlmIG5vIGJvdW5kYXJ5IHdhcyBhY3RpdmUuXG4gICAqL1xuICBwcm90ZWN0ZWQgc3RvcEJvdW5kYXJ5KGtleTogc3RyaW5nKTogVFN0YXRlIHwgdW5kZWZpbmVkIHtcbiAgICBjb25zdCBmaW5hbCA9IHRoaXMuYWN0aXZlLmdldChrZXkpO1xuICAgIHRoaXMuYWN0aXZlLmRlbGV0ZShrZXkpO1xuICAgIHJldHVybiBmaW5hbDtcbiAgfVxuXG4gIC8vIOKUgOKUgCBSZWFkIEFQSSAoY29uc3VtZXJzIGNhbGwgdGhlc2Ug4oCUIE8oMSkpIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG4gIC8qKiBDdXJyZW50IHRyYW5zaWVudCBzdGF0ZSBvZiBPTkUgYWN0aXZlIGJvdW5kYXJ5LiBgdW5kZWZpbmVkYCBpZiBub1xuICAgKiAgYm91bmRhcnkgaXMgYWN0aXZlIGZvciBga2V5YC4gKi9cbiAgZ2V0QWN0aXZlKGtleTogc3RyaW5nKTogVFN0YXRlIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5hY3RpdmUuZ2V0KGtleSk7XG4gIH1cblxuICAvKipcbiAgICogQWxsIGN1cnJlbnRseS1hY3RpdmUgYm91bmRhcmllcy5cbiAgICpcbiAgICogKipUeXBlLW9ubHkgcmVhZG9ubHk6KiogdGhlIHJldHVybmVkIHJlZmVyZW5jZSBJUyB0aGUgaW50ZXJuYWwgTWFwLlxuICAgKiBUeXBlU2NyaXB0IHByZXZlbnRzIG11dGF0aW9uIHRocm91Z2ggdGhlIGBSZWFkb25seU1hcGAgdHlwZSwgYnV0IGFcbiAgICogcnVudGltZSBjYXN0IG9yIG5vbi1UUyBjb25zdW1lciBjYW4gbXV0YXRlIGl0IGFuZCBjb3JydXB0IGludGVybmFsXG4gICAqIHN0YXRlLiAqKkRvIG5vdCBtdXRhdGUuKipcbiAgICovXG4gIGdldEFsbEFjdGl2ZSgpOiBSZWFkb25seU1hcDxzdHJpbmcsIFRTdGF0ZT4ge1xuICAgIHJldHVybiB0aGlzLmFjdGl2ZTtcbiAgfVxuXG4gIC8qKiBUcnVlIGlmIGFueSBib3VuZGFyeSBpcyBjdXJyZW50bHkgYWN0aXZlLiBPKDEpLiAqL1xuICBnZXQgaGFzQWN0aXZlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmFjdGl2ZS5zaXplID4gMDtcbiAgfVxuXG4gIC8qKiBOdW1iZXIgb2YgY3VycmVudGx5LWFjdGl2ZSBib3VuZGFyaWVzLiBPKDEpLiAqL1xuICBnZXQgYWN0aXZlQ291bnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5hY3RpdmUuc2l6ZTtcbiAgfVxuXG4gIC8vIOKUgOKUgCBMaWZlY3ljbGUg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cbiAgLyoqXG4gICAqIFJlc2V0IGFsbCB0cmFuc2llbnQgc3RhdGUuIENhbGxlZCBieSBleGVjdXRvcnMgYmVmb3JlIGVhY2ggYHJ1bigpYFxuICAgKiBzbyBjb25zdW1lcnMgZ2V0IGEgY2xlYW4gc2xhdGUgcGVyIHJ1biDigJQgc2FtZSBsaWZlY3ljbGUgY29udHJhY3RcbiAgICogYXMgYFNlcXVlbmNlUmVjb3JkZXIuY2xlYXIoKWAuXG4gICAqXG4gICAqIEluIGRldiBtb2RlLCB3YXJucyBpZiBhbnkgYm91bmRhcmllcyBhcmUgc3RpbGwgYWN0aXZlIHdoZW4gY2FsbGVkXG4gICAqIOKAlCBsaWtlbHkgaW5kaWNhdGVzIGEgbWlzc2VkIGBzdG9wQm91bmRhcnlgIHVwc3RyZWFtLiBUaGUgbGVha2VkXG4gICAqIGtleXMgYXJlIGxpc3RlZCAodHJ1bmNhdGVkIHRvIDEwKSBzbyB0aGUgd2lyaW5nIGJ1ZyBpcyBmaW5kYWJsZS5cbiAgICovXG4gIGNsZWFyKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmFjdGl2ZS5zaXplID4gMCAmJiBpc0Rldk1vZGUoKSkge1xuICAgICAgY29uc3Qga2V5cyA9IFsuLi50aGlzLmFjdGl2ZS5rZXlzKCldO1xuICAgICAgY29uc3QgaGVhZCA9IGtleXMuc2xpY2UoMCwgMTApLmpvaW4oJywgJyk7XG4gICAgICBjb25zdCBtb3JlID0ga2V5cy5sZW5ndGggPiAxMCA/IGAgLi4uKCske2tleXMubGVuZ3RoIC0gMTB9IG1vcmUpYCA6ICcnO1xuICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICBgWyR7dGhpcy5pZH1dIGNsZWFyKCkgY2FsbGVkIHdpdGggJHt0aGlzLmFjdGl2ZS5zaXplfSBgICtcbiAgICAgICAgICAnc3RpbGwtYWN0aXZlIGJvdW5kYXJpZXMuIE1pc3NlZCBzdG9wQm91bmRhcnk/ICcgK1xuICAgICAgICAgIGBMZWFrZWQga2V5czogJHtoZWFkfSR7bW9yZX1gLFxuICAgICAgKTtcbiAgICB9XG4gICAgdGhpcy5hY3RpdmUuY2xlYXIoKTtcbiAgICB0aGlzLm1pc3NlZFVwZGF0ZXMuY2xlYXIoKTtcbiAgfVxufVxuIl19
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
+
export { BoundaryStateTracker } from './BoundaryStateTracker.js';
|
|
1
2
|
export { hasEmitRecorderMethods, hasFlowRecorderMethods, hasRecorderMethods, isFlowEvent } from './CombinedRecorder.js';
|
|
2
3
|
export { CompositeRecorder } from './CompositeRecorder.js';
|
|
3
4
|
export { KeyedRecorder } from './KeyedRecorder.js';
|
|
4
5
|
export { RecorderOperation } from './RecorderOperation.js';
|
|
5
6
|
export { SequenceRecorder } from './SequenceRecorder.js';
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL3JlY29yZGVyL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRWpFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxzQkFBc0IsRUFBRSxrQkFBa0IsRUFBRSxXQUFXLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUV4SCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUUzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbkQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBCb3VuZGFyeVN0YXRlVHJhY2tlciB9IGZyb20gJy4vQm91bmRhcnlTdGF0ZVRyYWNrZXIuanMnO1xuZXhwb3J0IHR5cGUgeyBDb21iaW5lZFJlY29yZGVyIH0gZnJvbSAnLi9Db21iaW5lZFJlY29yZGVyLmpzJztcbmV4cG9ydCB7IGhhc0VtaXRSZWNvcmRlck1ldGhvZHMsIGhhc0Zsb3dSZWNvcmRlck1ldGhvZHMsIGhhc1JlY29yZGVyTWV0aG9kcywgaXNGbG93RXZlbnQgfSBmcm9tICcuL0NvbWJpbmVkUmVjb3JkZXIuanMnO1xuZXhwb3J0IHR5cGUgeyBDb21wb3NpdGVTbmFwc2hvdCB9IGZyb20gJy4vQ29tcG9zaXRlUmVjb3JkZXIuanMnO1xuZXhwb3J0IHsgQ29tcG9zaXRlUmVjb3JkZXIgfSBmcm9tICcuL0NvbXBvc2l0ZVJlY29yZGVyLmpzJztcbmV4cG9ydCB0eXBlIHsgRW1pdEV2ZW50LCBFbWl0UmVjb3JkZXIgfSBmcm9tICcuL0VtaXRSZWNvcmRlci5qcyc7XG5leHBvcnQgeyBLZXllZFJlY29yZGVyIH0gZnJvbSAnLi9LZXllZFJlY29yZGVyLmpzJztcbmV4cG9ydCB7IFJlY29yZGVyT3BlcmF0aW9uIH0gZnJvbSAnLi9SZWNvcmRlck9wZXJhdGlvbi5qcyc7XG5leHBvcnQgeyBTZXF1ZW5jZVJlY29yZGVyIH0gZnJvbSAnLi9TZXF1ZW5jZVJlY29yZGVyLmpzJztcbiJdfQ==
|
package/dist/esm/trace.js
CHANGED
|
@@ -28,8 +28,11 @@ export { causalChain, flattenCausalDAG, formatCausalChain } from './lib/memory/b
|
|
|
28
28
|
export { KeyedRecorder } from './lib/recorder/KeyedRecorder.js';
|
|
29
29
|
// SequenceRecorder — base class for 1:N ordered sequence recorders with keyed index
|
|
30
30
|
export { SequenceRecorder } from './lib/recorder/SequenceRecorder.js';
|
|
31
|
+
// BoundaryStateTracker — base class for transient bracket-scoped state
|
|
32
|
+
// (live state DURING a matched [start, stop] event interval; clears on stop)
|
|
33
|
+
export { BoundaryStateTracker } from './lib/recorder/BoundaryStateTracker.js';
|
|
31
34
|
export { TopologyRecorder, topologyRecorder } from './lib/recorder/TopologyRecorder.js';
|
|
32
35
|
export { InOutRecorder, inOutRecorder, ROOT_RUNTIME_STAGE_ID, ROOT_SUBFLOW_ID } from './lib/recorder/InOutRecorder.js';
|
|
33
36
|
export { QualityRecorder } from './lib/recorder/QualityRecorder.js';
|
|
34
37
|
export { formatQualityTrace, qualityTrace } from './lib/recorder/qualityTrace.js';
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHJhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXFCRztBQUlILE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxzQkFBc0IsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRWxILHdEQUF3RDtBQUN4RCxPQUFPLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUl6RixPQUFPLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFN0YseURBQXlEO0FBQ3pELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUVoRSxvRkFBb0Y7QUFDcEYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFFdEUsdUVBQXVFO0FBQ3ZFLDZFQUE2RTtBQUM3RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQVU5RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUt4RixPQUFPLEVBQUUsYUFBYSxFQUFFLGFBQWEsRUFBRSxxQkFBcUIsRUFBRSxlQUFlLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUl2SCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFJcEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFlBQVksRUFBRSxNQUFNLGdDQUFnQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBmb290cHJpbnRqcy90cmFjZSDigJQgRXhlY3V0aW9uIHRyYWNpbmcsIGRlYnVnZ2luZywgYW5kIGJhY2t0cmFja2luZyB1dGlsaXRpZXMuXG4gKlxuICogUnVudGltZSBzdGFnZSBJRHMsIGNvbW1pdCBsb2cgcXVlcmllcywgYW5kIHJlY29yZGVyIGJhc2UgY2xhc3Nlcy5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogaW1wb3J0IHsgcGFyc2VSdW50aW1lU3RhZ2VJZCwgZmluZExhc3RXcml0ZXIsIEtleWVkUmVjb3JkZXIsIFNlcXVlbmNlUmVjb3JkZXIgfSBmcm9tICdmb290cHJpbnRqcy90cmFjZSc7XG4gKlxuICogLy8gUGFyc2UgYSBydW50aW1lU3RhZ2VJZFxuICogY29uc3QgeyBzdGFnZUlkLCBleGVjdXRpb25JbmRleCB9ID0gcGFyc2VSdW50aW1lU3RhZ2VJZCgnY2FsbC1sbG0jNScpO1xuICpcbiAqIC8vIEJhY2t0cmFjazogd2hvIHdyb3RlICdzeXN0ZW1Qcm9tcHQnIGJlZm9yZSBzdGFnZSBhdCBpZHggOD9cbiAqIGNvbnN0IHdyaXRlciA9IGZpbmRMYXN0V3JpdGVyKGNvbW1pdExvZywgJ3N5c3RlbVByb21wdCcsIDgpO1xuICpcbiAqIC8vIEJ1aWxkIGEga2V5ZWQgcmVjb3JkZXIgKDE6MSDigJQgb25lIGVudHJ5IHBlciBzdGVwKVxuICogY2xhc3MgTXlSZWNvcmRlciBleHRlbmRzIEtleWVkUmVjb3JkZXI8TXlFbnRyeT4geyAuLi4gfVxuICpcbiAqIC8vIEJ1aWxkIGEgc2VxdWVuY2UgcmVjb3JkZXIgKDE6TiDigJQgbXVsdGlwbGUgZW50cmllcyBwZXIgc3RlcCwgb3JkZXJpbmcgbWF0dGVycylcbiAqIGNsYXNzIEF1ZGl0UmVjb3JkZXIgZXh0ZW5kcyBTZXF1ZW5jZVJlY29yZGVyPEF1ZGl0RW50cnk+IHsgLi4uIH1cbiAqIGBgYFxuICovXG5cbi8vIFJ1bnRpbWUgc3RhZ2UgSUQg4oCUIHVuaXF1ZSBleGVjdXRpb24gc3RlcCBpZGVudGlmaWVyc1xuZXhwb3J0IHR5cGUgeyBFeGVjdXRpb25Db3VudGVyIH0gZnJvbSAnLi9saWIvZW5naW5lL3J1bnRpbWVTdGFnZUlkLmpzJztcbmV4cG9ydCB7IGJ1aWxkUnVudGltZVN0YWdlSWQsIGNyZWF0ZUV4ZWN1dGlvbkNvdW50ZXIsIHBhcnNlUnVudGltZVN0YWdlSWQgfSBmcm9tICcuL2xpYi9lbmdpbmUvcnVudGltZVN0YWdlSWQuanMnO1xuXG4vLyBDb21taXQgbG9nIHF1ZXJpZXMg4oCUIHR5cGVkIHV0aWxpdGllcyBmb3IgYmFja3RyYWNraW5nXG5leHBvcnQgeyBmaW5kQ29tbWl0LCBmaW5kQ29tbWl0cywgZmluZExhc3RXcml0ZXIgfSBmcm9tICcuL2xpYi9tZW1vcnkvY29tbWl0TG9nVXRpbHMuanMnO1xuXG4vLyBDYXVzYWwgY2hhaW4g4oCUIGJhY2t3YXJkIHByb2dyYW0gc2xpY2luZyBvbiBjb21taXQgbG9nIChEQUcpXG5leHBvcnQgdHlwZSB7IENhdXNhbENoYWluT3B0aW9ucywgQ2F1c2FsTm9kZSwgS2V5c1JlYWRMb29rdXAgfSBmcm9tICcuL2xpYi9tZW1vcnkvYmFja3RyYWNrLmpzJztcbmV4cG9ydCB7IGNhdXNhbENoYWluLCBmbGF0dGVuQ2F1c2FsREFHLCBmb3JtYXRDYXVzYWxDaGFpbiB9IGZyb20gJy4vbGliL21lbW9yeS9iYWNrdHJhY2suanMnO1xuXG4vLyBLZXllZFJlY29yZGVyIOKAlCBiYXNlIGNsYXNzIGZvciAxOjEgTWFwLWJhc2VkIHJlY29yZGVyc1xuZXhwb3J0IHsgS2V5ZWRSZWNvcmRlciB9IGZyb20gJy4vbGliL3JlY29yZGVyL0tleWVkUmVjb3JkZXIuanMnO1xuXG4vLyBTZXF1ZW5jZVJlY29yZGVyIOKAlCBiYXNlIGNsYXNzIGZvciAxOk4gb3JkZXJlZCBzZXF1ZW5jZSByZWNvcmRlcnMgd2l0aCBrZXllZCBpbmRleFxuZXhwb3J0IHsgU2VxdWVuY2VSZWNvcmRlciB9IGZyb20gJy4vbGliL3JlY29yZGVyL1NlcXVlbmNlUmVjb3JkZXIuanMnO1xuXG4vLyBCb3VuZGFyeVN0YXRlVHJhY2tlciDigJQgYmFzZSBjbGFzcyBmb3IgdHJhbnNpZW50IGJyYWNrZXQtc2NvcGVkIHN0YXRlXG4vLyAobGl2ZSBzdGF0ZSBEVVJJTkcgYSBtYXRjaGVkIFtzdGFydCwgc3RvcF0gZXZlbnQgaW50ZXJ2YWw7IGNsZWFycyBvbiBzdG9wKVxuZXhwb3J0IHsgQm91bmRhcnlTdGF0ZVRyYWNrZXIgfSBmcm9tICcuL2xpYi9yZWNvcmRlci9Cb3VuZGFyeVN0YXRlVHJhY2tlci5qcyc7XG5cbi8vIFRvcG9sb2d5UmVjb3JkZXIg4oCUIGNvbXBvc2l0aW9uIGdyYXBoIGFjY3VtdWxhdG9yIChzdWJmbG93cyArIGNvbnRyb2wtZmxvdyBlZGdlcylcbmV4cG9ydCB0eXBlIHtcbiAgVG9wb2xvZ3ksXG4gIFRvcG9sb2d5RWRnZSxcbiAgVG9wb2xvZ3lJbmNvbWluZ0tpbmQsXG4gIFRvcG9sb2d5Tm9kZSxcbiAgVG9wb2xvZ3lSZWNvcmRlck9wdGlvbnMsXG59IGZyb20gJy4vbGliL3JlY29yZGVyL1RvcG9sb2d5UmVjb3JkZXIuanMnO1xuZXhwb3J0IHsgVG9wb2xvZ3lSZWNvcmRlciwgdG9wb2xvZ3lSZWNvcmRlciB9IGZyb20gJy4vbGliL3JlY29yZGVyL1RvcG9sb2d5UmVjb3JkZXIuanMnO1xuXG4vLyBJbk91dFJlY29yZGVyIOKAlCBjaGFydCBpbi9vdXQgc3RyZWFtIChlbnRyeS9leGl0IHBhaXJzIGF0IGV2ZXJ5IGNoYXJ0IGJvdW5kYXJ5LFxuLy8gaW5jbHVkaW5nIHRoZSB0b3AtbGV2ZWwgcnVuIGFuZCBldmVyeSBzdWJmbG93KVxuZXhwb3J0IHR5cGUgeyBJbk91dEVudHJ5LCBJbk91dFBoYXNlLCBJbk91dFJlY29yZGVyT3B0aW9ucyB9IGZyb20gJy4vbGliL3JlY29yZGVyL0luT3V0UmVjb3JkZXIuanMnO1xuZXhwb3J0IHsgSW5PdXRSZWNvcmRlciwgaW5PdXRSZWNvcmRlciwgUk9PVF9SVU5USU1FX1NUQUdFX0lELCBST09UX1NVQkZMT1dfSUQgfSBmcm9tICcuL2xpYi9yZWNvcmRlci9Jbk91dFJlY29yZGVyLmpzJztcblxuLy8gUXVhbGl0eVJlY29yZGVyIOKAlCBwZXItc3RlcCBxdWFsaXR5IHNjb3Jpbmcgd2l0aCBiYWNrdHJhY2tpbmdcbmV4cG9ydCB0eXBlIHsgUXVhbGl0eUVudHJ5LCBRdWFsaXR5UmVjb3JkZXJPcHRpb25zLCBRdWFsaXR5U2NvcmluZ0ZuIH0gZnJvbSAnLi9saWIvcmVjb3JkZXIvUXVhbGl0eVJlY29yZGVyLmpzJztcbmV4cG9ydCB7IFF1YWxpdHlSZWNvcmRlciB9IGZyb20gJy4vbGliL3JlY29yZGVyL1F1YWxpdHlSZWNvcmRlci5qcyc7XG5cbi8vIHF1YWxpdHlUcmFjZSDigJQgUXVhbGl0eSBTdGFjayBUcmFjZSAoYmFja3RyYWNrIGZyb20gbG93LXNjb3Jpbmcgc3RlcHMpXG5leHBvcnQgdHlwZSB7IFF1YWxpdHlGcmFtZSwgUXVhbGl0eVN0YWNrVHJhY2UgfSBmcm9tICcuL2xpYi9yZWNvcmRlci9xdWFsaXR5VHJhY2UuanMnO1xuZXhwb3J0IHsgZm9ybWF0UXVhbGl0eVRyYWNlLCBxdWFsaXR5VHJhY2UgfSBmcm9tICcuL2xpYi9yZWNvcmRlci9xdWFsaXR5VHJhY2UuanMnO1xuIl19
|