footprintjs 5.0.0 → 6.0.0
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/CLAUDE.md +32 -8
- package/dist/advanced.js +2 -3
- package/dist/esm/advanced.js +2 -2
- package/dist/esm/index.js +1 -1
- package/dist/esm/lib/builder/FlowChartBuilder.js +364 -100
- package/dist/esm/lib/builder/index.js +1 -1
- package/dist/esm/lib/builder/structure/StructureRecorder.js +158 -0
- package/dist/esm/lib/builder/structure/StructureRecorderDispatcher.js +171 -0
- package/dist/esm/lib/builder/types.js +1 -1
- package/dist/esm/lib/engine/errors/errorInfo.js +4 -3
- package/dist/esm/lib/engine/handlers/ChildrenExecutor.js +11 -2
- package/dist/esm/lib/engine/handlers/DeciderHandler.js +5 -7
- package/dist/esm/lib/engine/handlers/RuntimeStructureManager.js +2 -2
- package/dist/esm/lib/engine/handlers/SelectorHandler.js +9 -7
- package/dist/esm/lib/engine/handlers/SubflowExecutor.js +7 -1
- package/dist/esm/lib/engine/handlers/index.js +1 -3
- package/dist/esm/lib/engine/handlers/types.js +2 -2
- package/dist/esm/lib/engine/narrative/CombinedNarrativeRecorder.js +12 -2
- package/dist/esm/lib/engine/narrative/FlowRecorderDispatcher.js +3 -3
- package/dist/esm/lib/engine/narrative/NarrativeFlowRecorder.js +8 -1
- package/dist/esm/lib/engine/narrative/types.js +1 -1
- package/dist/esm/lib/engine/runtimeStageId.js +64 -2
- package/dist/esm/lib/engine/traversal/FlowchartTraverser.js +11 -54
- package/dist/esm/lib/engine/types.js +1 -1
- package/dist/esm/lib/engine/walkSubflowSpec.js +144 -0
- package/dist/esm/lib/runner/FlowChartExecutor.js +4 -17
- package/dist/esm/lib/runner/getSubtreeSnapshot.js +3 -2
- package/dist/esm/trace.js +3 -2
- package/dist/index.js +1 -1
- package/dist/lib/builder/FlowChartBuilder.js +364 -100
- package/dist/lib/builder/index.js +1 -1
- package/dist/lib/builder/structure/StructureRecorder.js +159 -0
- package/dist/lib/builder/structure/StructureRecorderDispatcher.js +175 -0
- package/dist/lib/builder/types.js +1 -1
- package/dist/lib/engine/errors/errorInfo.js +4 -3
- package/dist/lib/engine/handlers/ChildrenExecutor.js +11 -2
- package/dist/lib/engine/handlers/DeciderHandler.js +5 -7
- package/dist/lib/engine/handlers/RuntimeStructureManager.js +2 -2
- package/dist/lib/engine/handlers/SelectorHandler.js +9 -7
- package/dist/lib/engine/handlers/SubflowExecutor.js +7 -1
- package/dist/lib/engine/handlers/index.js +2 -5
- package/dist/lib/engine/handlers/types.js +2 -2
- package/dist/lib/engine/narrative/CombinedNarrativeRecorder.js +12 -2
- package/dist/lib/engine/narrative/FlowRecorderDispatcher.js +3 -3
- package/dist/lib/engine/narrative/NarrativeFlowRecorder.js +8 -1
- package/dist/lib/engine/narrative/types.js +1 -1
- package/dist/lib/engine/runtimeStageId.js +66 -3
- package/dist/lib/engine/traversal/FlowchartTraverser.js +11 -54
- package/dist/lib/engine/types.js +1 -1
- package/dist/lib/engine/walkSubflowSpec.js +148 -0
- package/dist/lib/runner/FlowChartExecutor.js +4 -17
- package/dist/lib/runner/getSubtreeSnapshot.js +3 -2
- package/dist/trace.js +5 -2
- package/dist/types/advanced.d.ts +4 -4
- package/dist/types/index.d.ts +2 -0
- package/dist/types/lib/builder/FlowChartBuilder.d.ts +110 -14
- package/dist/types/lib/builder/index.d.ts +2 -1
- package/dist/types/lib/builder/structure/StructureRecorder.d.ts +349 -0
- package/dist/types/lib/builder/structure/StructureRecorderDispatcher.d.ts +77 -0
- package/dist/types/lib/builder/types.d.ts +20 -6
- package/dist/types/lib/engine/errors/errorInfo.d.ts +3 -2
- package/dist/types/lib/engine/handlers/DeciderHandler.d.ts +3 -3
- package/dist/types/lib/engine/handlers/RuntimeStructureManager.d.ts +1 -1
- package/dist/types/lib/engine/handlers/SelectorHandler.d.ts +2 -2
- package/dist/types/lib/engine/handlers/index.d.ts +1 -2
- package/dist/types/lib/engine/handlers/types.d.ts +2 -9
- package/dist/types/lib/engine/narrative/FlowRecorderDispatcher.d.ts +2 -2
- package/dist/types/lib/engine/narrative/types.d.ts +24 -2
- package/dist/types/lib/engine/runtimeStageId.d.ts +57 -1
- package/dist/types/lib/engine/traversal/FlowchartTraverser.d.ts +1 -6
- package/dist/types/lib/engine/types.d.ts +0 -26
- package/dist/types/lib/engine/walkSubflowSpec.d.ts +95 -0
- package/dist/types/lib/runner/FlowChartExecutor.d.ts +4 -16
- package/dist/types/trace.d.ts +3 -1
- package/package.json +1 -1
- package/dist/esm/lib/engine/handlers/ExtractorRunner.js +0 -122
- package/dist/lib/engine/handlers/ExtractorRunner.js +0 -126
- package/dist/types/lib/engine/handlers/ExtractorRunner.d.ts +0 -41
|
@@ -7,4 +7,4 @@
|
|
|
7
7
|
* @module
|
|
8
8
|
*/
|
|
9
9
|
export {};
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2VuZ2luZS9uYXJyYXRpdmUvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7R0FPRyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogSUNvbnRyb2xGbG93TmFycmF0aXZlIOKAlCBJbnRlcmZhY2UgZm9yIGNvbnRyb2wgZmxvdyBuYXJyYXRpdmUgZ2VuZXJhdGlvbi5cbiAqXG4gKiBDYXB0dXJlcyBGTE9XIGV2ZW50cyBkdXJpbmcgdHJhdmVyc2FsOiBkZWNpc2lvbnMsIGZvcmtzLCBsb29wcywgc3ViZmxvd3MuXG4gKiBDb21wbGVtZW50YXJ5IHRvIHNjb3BlL3JlY29yZGVycy9OYXJyYXRpdmVSZWNvcmRlciB3aGljaCBjYXB0dXJlcyBEQVRBIGV2ZW50cy5cbiAqXG4gKiBAbW9kdWxlXG4gKi9cblxuaW1wb3J0IHR5cGUgeyBEZWNpc2lvbkV2aWRlbmNlLCBTZWxlY3Rpb25FdmlkZW5jZSB9IGZyb20gJy4uLy4uL2RlY2lkZS90eXBlcy5qcyc7XG5pbXBvcnQgdHlwZSB7IFN0cnVjdHVyZWRFcnJvckluZm8gfSBmcm9tICcuLi9lcnJvcnMvZXJyb3JJbmZvLmpzJztcblxuLyoqXG4gKlxuICogVXNlcyBOdWxsIE9iamVjdCBwYXR0ZXJuOiBOdWxsQ29udHJvbEZsb3dOYXJyYXRpdmVHZW5lcmF0b3Igc2F0aXNmaWVzIHRoaXNcbiAqIGludGVyZmFjZSB3aXRoIGVtcHR5IG1ldGhvZHMgZm9yIHplcm8tY29zdCBkaXNhYmxlZCBwYXRoLlxuICovXG5cbmV4cG9ydCBpbnRlcmZhY2UgSUNvbnRyb2xGbG93TmFycmF0aXZlIHtcbiAgLyoqIENhbGxlZCB3aGVuIGEgc3RhZ2UgZXhlY3V0ZXMuIEZpcnN0IHN0YWdlIHVzZXMgZGlzdGluY3Qgb3BlbmluZyBwYXR0ZXJuLiAqL1xuICBvblN0YWdlRXhlY3V0ZWQoc3RhZ2VOYW1lOiBzdHJpbmcsIGRlc2NyaXB0aW9uPzogc3RyaW5nLCB0cmF2ZXJzYWxDb250ZXh0PzogVHJhdmVyc2FsQ29udGV4dCk6IHZvaWQ7XG5cbiAgLyoqIENhbGxlZCBvbiBsaW5lYXIgY29udGludWF0aW9uIGZyb20gb25lIHN0YWdlIHRvIHRoZSBuZXh0LiAqL1xuICBvbk5leHQoZnJvbVN0YWdlOiBzdHJpbmcsIHRvU3RhZ2U6IHN0cmluZywgZGVzY3JpcHRpb24/OiBzdHJpbmcsIHRyYXZlcnNhbENvbnRleHQ/OiBUcmF2ZXJzYWxDb250ZXh0KTogdm9pZDtcblxuICAvKiogQ2FsbGVkIHdoZW4gYSBkZWNpZGVyIHNlbGVjdHMgYSBicmFuY2guIE1vc3QgdmFsdWFibGUgZm9yIExMTSBjb250ZXh0LiAqL1xuICBvbkRlY2lzaW9uKFxuICAgIGRlY2lkZXJOYW1lOiBzdHJpbmcsXG4gICAgY2hvc2VuQnJhbmNoOiBzdHJpbmcsXG4gICAgcmF0aW9uYWxlPzogc3RyaW5nLFxuICAgIGRlY2lkZXJEZXNjcmlwdGlvbj86IHN0cmluZyxcbiAgICB0cmF2ZXJzYWxDb250ZXh0PzogVHJhdmVyc2FsQ29udGV4dCxcbiAgICBldmlkZW5jZT86IERlY2lzaW9uRXZpZGVuY2UsXG4gICk6IHZvaWQ7XG5cbiAgLyoqIENhbGxlZCB3aGVuIGEgZm9yayBleGVjdXRlcyBhbGwgY2hpbGRyZW4gaW4gcGFyYWxsZWwuICovXG4gIG9uRm9yayhwYXJlbnRTdGFnZTogc3RyaW5nLCBjaGlsZE5hbWVzOiBzdHJpbmdbXSwgdHJhdmVyc2FsQ29udGV4dD86IFRyYXZlcnNhbENvbnRleHQpOiB2b2lkO1xuXG4gIC8qKiBDYWxsZWQgd2hlbiBhIHNlbGVjdG9yIHBpY2tzIGEgc3Vic2V0IG9mIGNoaWxkcmVuLiAqL1xuICBvblNlbGVjdGVkKFxuICAgIHBhcmVudFN0YWdlOiBzdHJpbmcsXG4gICAgc2VsZWN0ZWROYW1lczogc3RyaW5nW10sXG4gICAgdG90YWxDb3VudDogbnVtYmVyLFxuICAgIHRyYXZlcnNhbENvbnRleHQ/OiBUcmF2ZXJzYWxDb250ZXh0LFxuICAgIGV2aWRlbmNlPzogU2VsZWN0aW9uRXZpZGVuY2UsXG4gICk6IHZvaWQ7XG5cbiAgLyoqIENhbGxlZCB3aGVuIGVudGVyaW5nIGEgc3ViZmxvdyAobmVzdGVkIGNvbnRleHQgYm91bmRhcnkpLiAqL1xuICBvblN1YmZsb3dFbnRyeShcbiAgICBzdWJmbG93TmFtZTogc3RyaW5nLFxuICAgIHN1YmZsb3dJZD86IHN0cmluZyxcbiAgICBkZXNjcmlwdGlvbj86IHN0cmluZyxcbiAgICB0cmF2ZXJzYWxDb250ZXh0PzogVHJhdmVyc2FsQ29udGV4dCxcbiAgICBtYXBwZWRJbnB1dD86IFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuICApOiB2b2lkO1xuXG4gIC8qKiBDYWxsZWQgd2hlbiBleGl0aW5nIGEgc3ViZmxvdy4gKi9cbiAgb25TdWJmbG93RXhpdChcbiAgICBzdWJmbG93TmFtZTogc3RyaW5nLFxuICAgIHN1YmZsb3dJZD86IHN0cmluZyxcbiAgICB0cmF2ZXJzYWxDb250ZXh0PzogVHJhdmVyc2FsQ29udGV4dCxcbiAgICBvdXRwdXRTdGF0ZT86IFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuICApOiB2b2lkO1xuXG4gIC8qKiBDYWxsZWQgd2hlbiBhIGR5bmFtaWMgc3ViZmxvdyBpcyByZWdpc3RlcmVkIGR1cmluZyB0cmF2ZXJzYWwuICovXG4gIG9uU3ViZmxvd1JlZ2lzdGVyZWQoc3ViZmxvd0lkOiBzdHJpbmcsIG5hbWU6IHN0cmluZywgZGVzY3JpcHRpb24/OiBzdHJpbmcsIHNwZWNTdHJ1Y3R1cmU/OiB1bmtub3duKTogdm9pZDtcblxuICAvKiogQ2FsbGVkIG9uIGxvb3AgaXRlcmF0aW9uIChiYWNrLWVkZ2UgdHJhdmVyc2FsKS4gKi9cbiAgb25Mb29wKHRhcmdldFN0YWdlOiBzdHJpbmcsIGl0ZXJhdGlvbjogbnVtYmVyLCBkZXNjcmlwdGlvbj86IHN0cmluZywgdHJhdmVyc2FsQ29udGV4dD86IFRyYXZlcnNhbENvbnRleHQpOiB2b2lkO1xuXG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiBhIHN0YWdlIHRyaWdnZXJzIGJyZWFrIChlYXJseSB0ZXJtaW5hdGlvbikuXG4gICAqXG4gICAqIEBwYXJhbSByZWFzb24gLSBPcHRpb25hbCBzdHJpbmcgcGFzc2VkIHRvIGBzY29wZS4kYnJlYWsocmVhc29uKWAuXG4gICAqIEBwYXJhbSBwcm9wYWdhdGVkRnJvbVN1YmZsb3cgLSBXaGVuIHNldCwgdGhpcyBicmVhayB3YXMgcmFpc2VkIG9uIHRoZVxuICAgKiAgIHBhcmVudCBiZWNhdXNlIGFuIGlubmVyIHN1YmZsb3cgKHRoaXMgaWQpIGJyb2tlIHdpdGggYHByb3BhZ2F0ZUJyZWFrYFxuICAgKiAgIGVuYWJsZWQuIFVzZWQgYnkgcmVjb3JkZXJzIHRvIGRpc3Rpbmd1aXNoIG9yaWdpbmF0aW5nIHZzIHByb3BhZ2F0ZWRcbiAgICogICBicmVha3MgYW5kIHJlbmRlciB0aGVtIGFjY29yZGluZ2x5LlxuICAgKi9cbiAgb25CcmVhayhcbiAgICBzdGFnZU5hbWU6IHN0cmluZyxcbiAgICB0cmF2ZXJzYWxDb250ZXh0PzogVHJhdmVyc2FsQ29udGV4dCxcbiAgICByZWFzb24/OiBzdHJpbmcsXG4gICAgcHJvcGFnYXRlZEZyb21TdWJmbG93Pzogc3RyaW5nLFxuICApOiB2b2lkO1xuXG4gIC8qKiBDYWxsZWQgd2hlbiBhIHN0YWdlIHRocm93cyBhbiBlcnJvci4gUmF3IGVycm9yIGlzIGV4dHJhY3RlZCBpbnRvIHN0cnVjdHVyZWQgZGV0YWlscy4gKi9cbiAgb25FcnJvcihzdGFnZU5hbWU6IHN0cmluZywgZXJyb3JNZXNzYWdlOiBzdHJpbmcsIGVycm9yOiB1bmtub3duLCB0cmF2ZXJzYWxDb250ZXh0PzogVHJhdmVyc2FsQ29udGV4dCk6IHZvaWQ7XG5cbiAgLyoqIENhbGxlZCB3aGVuIGEgcGF1c2FibGUgc3RhZ2UgcGF1c2VzIGV4ZWN1dGlvbi4gKi9cbiAgb25QYXVzZShcbiAgICBzdGFnZU5hbWU6IHN0cmluZyxcbiAgICBzdGFnZUlkOiBzdHJpbmcsXG4gICAgcGF1c2VEYXRhOiB1bmtub3duLFxuICAgIHN1YmZsb3dQYXRoOiByZWFkb25seSBzdHJpbmdbXSxcbiAgICB0cmF2ZXJzYWxDb250ZXh0PzogVHJhdmVyc2FsQ29udGV4dCxcbiAgKTogdm9pZDtcblxuICAvKiogQ2FsbGVkIHdoZW4gYSBwYXVzZWQgc3RhZ2UgaXMgcmVzdW1lZC4gKi9cbiAgb25SZXN1bWUoc3RhZ2VOYW1lOiBzdHJpbmcsIHN0YWdlSWQ6IHN0cmluZywgaGFzSW5wdXQ6IGJvb2xlYW4sIHRyYXZlcnNhbENvbnRleHQ/OiBUcmF2ZXJzYWxDb250ZXh0KTogdm9pZDtcblxuICAvKipcbiAgICogQ2FsbGVkIG9uY2UgcGVyIHRvcC1sZXZlbCBgZXhlY3V0b3IucnVuKClgLCBCRUZPUkUgdGhlIGZpcnN0IHN0YWdlIGV4ZWN1dGVzLlxuICAgKiBgaW5wdXRgIGlzIHRoZSB2YWx1ZSBwYXNzZWQgdmlhIGBydW4oe2lucHV0fSlgIChhZnRlciBzY2hlbWEgdmFsaWRhdGlvbikuXG4gICAqIFN1YmZsb3ctdHJhdmVyc2VycyBkbyBOT1QgZmlyZSB0aGlzIGV2ZW50IOKAlCB0aGV5IGZpcmUgYG9uU3ViZmxvd0VudHJ5YC5cbiAgICovXG4gIG9uUnVuU3RhcnQoaW5wdXQ6IHVua25vd24sIHRyYXZlcnNhbENvbnRleHQ/OiBUcmF2ZXJzYWxDb250ZXh0KTogdm9pZDtcblxuICAvKipcbiAgICogQ2FsbGVkIG9uY2UgcGVyIHRvcC1sZXZlbCBgZXhlY3V0b3IucnVuKClgLCBBRlRFUiB0aGUgbGFzdCBzdGFnZSBjb21taXRzLlxuICAgKiBgb3V0cHV0YCBpcyB0aGUgdmFsdWUgdGhlIGNoYXJ0IHJldHVybmVkLiBOT1QgZmlyZWQgb24gcGF1c2UgKHRoZSBydW5cbiAgICogZGlkbid0IGVuZDsgaXQgc3VzcGVuZGVkKSBvciBvbiB1bmNhdWdodCBlcnJvci4gU3ViZmxvdy10cmF2ZXJzZXJzIGRvXG4gICAqIE5PVCBmaXJlIHRoaXMgZXZlbnQg4oCUIHRoZXkgZmlyZSBgb25TdWJmbG93RXhpdGAuXG4gICAqL1xuICBvblJ1bkVuZChvdXRwdXQ6IHVua25vd24sIHRyYXZlcnNhbENvbnRleHQ/OiBUcmF2ZXJzYWxDb250ZXh0KTogdm9pZDtcblxuICAvKiogUmV0dXJucyBhY2N1bXVsYXRlZCBuYXJyYXRpdmUgc2VudGVuY2VzIGluIGV4ZWN1dGlvbiBvcmRlci4gKi9cbiAgZ2V0U2VudGVuY2VzKCk6IHN0cmluZ1tdO1xufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBUcmF2ZXJzYWxDb250ZXh0IOKAlCByZWFkLW9ubHkgZXhlY3V0aW9uIGNvbnRleHQgZnJvbSB0aGUgdHJhdmVyc2VyLlxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKipcbiAqIFRyYXZlcnNhbCBjb250ZXh0IGF0dGFjaGVkIHRvIGV2ZXJ5IEZsb3dSZWNvcmRlciBldmVudC5cbiAqIENyZWF0ZWQgYnkgdGhlIHRyYXZlcnNlciBkdXJpbmcgREZTLCBwYXNzZWQgdG8gcmVjb3JkZXJzIGFzIHJlYWQtb25seSBkYXRhLlxuICogRW5hYmxlcyByZWNvcmRlcnMgdG8gYnVpbGQgdHJlZXMsIGdyb3VwIGJ5IHN1YmZsb3csIGFuZCBjb3JyZWxhdGUgZXZlbnRzXG4gKiB3aXRob3V0IG1haW50YWluaW5nIHRoZWlyIG93biBzdGFja3Mgb3IgcG9zdC1wcm9jZXNzaW5nLlxuICpcbiAqIExpa2UgT3BlblRlbGVtZXRyeSdzIHNwYW4gY29udGV4dDogc3RhZ2VJZCArIHBhcmVudFN0YWdlSWQgZm9ybSBhIHRyZWUuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVHJhdmVyc2FsQ29udGV4dCB7XG4gIC8qKlxuICAgKiBQZXItYGV4ZWN1dG9yLnJ1bigpYCBpZGVudGlmaWVyLiBHZW5lcmF0ZWQgb25jZSBhdCB0aGUgc3RhcnQgb2YgZXZlcnlcbiAgICogYHJ1bigpYCAoYW5kIGFnYWluIG9uIGByZXN1bWUoKWApOyBzaGFyZWQgYnkgZXZlcnkgZXZlbnQgb2YgdGhhdCBydW47XG4gICAqIGRpZmZlcnMgYWNyb3NzIGNvbnNlY3V0aXZlIHJ1bnMgb2YgdGhlIHNhbWUgZXhlY3V0b3IuXG4gICAqXG4gICAqIEZvcm1hdDogYCR7RGF0ZS5ub3coKX0tJHtjb3VudGVyfWAg4oCUIHNvcnRhYmxlIGxleGljb2dyYXBoaWNhbGx5ICg9PVxuICAgKiBjaHJvbm9sb2dpY2FsbHkgZm9yIHJ1bnMgPiAxbXMgYXBhcnQpLiBQcm9jZXNzLWxvY2FsIOKAlCBmb3IgY3Jvc3MtXG4gICAqIHByb2Nlc3MgY29ycmVsYXRpb24gdXNlIGBnZXRFbnYoKS50cmFjZUlkYCAoY29uc3VtZXItc3VwcGxpZWQpLlxuICAgKlxuICAgKiBSZWNvcmRlcnMgdGhhdCBhY2N1bXVsYXRlIHN0YXRlIGFjcm9zcyBydW5zIChmb3JrIGJvb2trZWVwaW5nLFxuICAgKiBzaWJsaW5nLWhhbmRvZmYgc3RhdGUsIGV0Yy4pIGRldGVjdCBcIm5ldyBydW5cIiB2aWFcbiAgICogYGV2ZW50LnRyYXZlcnNhbENvbnRleHQucnVuSWQgIT09IHRoaXMubGFzdFJ1bklkYCBhbmQgcmVzZXRcbiAgICogdHJhbnNpZW50IGJvb2trZWVwaW5nLiBSZWNvcmRlcnMgdGhhdCBkb24ndCBjYXJlIGFib3V0IHNjb3BpbmdcbiAgICogaWdub3JlIHRoZSBmaWVsZC5cbiAgICovXG4gIHJlYWRvbmx5IHJ1bklkOiBzdHJpbmc7XG4gIC8qKiBTdGFibGUgc3RhZ2UgaWRlbnRpZmllciBmcm9tIHRoZSBidWlsZGVyIChtYXRjaGVzIHNwZWMgbm9kZSBpZCkuICovXG4gIHJlYWRvbmx5IHN0YWdlSWQ6IHN0cmluZztcbiAgLyoqIFVuaXF1ZSBwZXItZXhlY3V0aW9uLXN0ZXAgaWRlbnRpZmllci4gRm9ybWF0OiBbc3ViZmxvd1BhdGgvXXN0YWdlSWQjZXhlY3V0aW9uSW5kZXguXG4gICAqICBDb3VudGVyIHJlc2V0cyBwZXIgZXhlY3V0b3Ig4oCUIGNvbWJpbmUgd2l0aCBgcnVuSWRgIGZvciBnbG9iYWxseSB1bmlxdWUgc3RlcCBrZXlzLiAqL1xuICByZWFkb25seSBydW50aW1lU3RhZ2VJZDogc3RyaW5nO1xuICAvKiogSHVtYW4tcmVhZGFibGUgc3RhZ2UgbmFtZS4gKi9cbiAgcmVhZG9ubHkgc3RhZ2VOYW1lOiBzdHJpbmc7XG4gIC8qKiBQYXJlbnQgc3RhZ2UgSUQg4oCUIHdhbGsgdXAgdG8gcmVjb25zdHJ1Y3QgdGhlIHRyZWUuIFVuZGVmaW5lZCBhdCByb290LiAqL1xuICByZWFkb25seSBwYXJlbnRTdGFnZUlkPzogc3RyaW5nO1xuICAvKiogU3ViZmxvdyBJRCB3aGVuIGluc2lkZSBhIHN1YmZsb3cuIFVuZGVmaW5lZCBhdCByb290IGxldmVsLiAqL1xuICByZWFkb25seSBzdWJmbG93SWQ/OiBzdHJpbmc7XG4gIC8qKiBGdWxsIHN1YmZsb3cgcGF0aCBmb3IgbmVzdGVkIHN1YmZsb3dzIChlLmcuLCBcInNmLW91dGVyL3NmLWlubmVyXCIpLiAqL1xuICByZWFkb25seSBzdWJmbG93UGF0aD86IHN0cmluZztcbiAgLyoqIE5lc3RpbmcgZGVwdGggKDAgPSByb290LCAxID0gaW5zaWRlIGZpcnN0IHN1YmZsb3csIGV0Yy4pLiAqL1xuICByZWFkb25seSBkZXB0aDogbnVtYmVyO1xuICAvKiogTG9vcCBpdGVyYXRpb24gbnVtYmVyIHdoZW4gcmV2aXNpdGluZyBhIG5vZGUgdmlhIGxvb3BUby4gKi9cbiAgcmVhZG9ubHkgbG9vcEl0ZXJhdGlvbj86IG51bWJlcjtcbiAgLyoqIEZvcmsgYnJhbmNoIElEIHdoZW4gaW5zaWRlIGEgcGFyYWxsZWwgb3IgZGVjaWRlciBicmFuY2guICovXG4gIHJlYWRvbmx5IGZvcmtCcmFuY2g/OiBzdHJpbmc7XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEZsb3dSZWNvcmRlciDigJQgUGx1Z2dhYmxlIG9ic2VydmVyIGZvciBjb250cm9sIGZsb3cgZXZlbnRzLlxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKiogRXZlbnQgcGFzc2VkIHRvIEZsb3dSZWNvcmRlci5vblN0YWdlRXhlY3V0ZWQuICovXG5leHBvcnQgaW50ZXJmYWNlIEZsb3dTdGFnZUV2ZW50IHtcbiAgc3RhZ2VOYW1lOiBzdHJpbmc7XG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICAvKiogVHJhdmVyc2FsIGNvbnRleHQgZnJvbSB0aGUgZW5naW5lIOKAlCByZWFkLW9ubHksIHNldCBieSB0cmF2ZXJzZXIuICovXG4gIHRyYXZlcnNhbENvbnRleHQ/OiBUcmF2ZXJzYWxDb250ZXh0O1xufVxuXG4vKiogRXZlbnQgcGFzc2VkIHRvIEZsb3dSZWNvcmRlci5vbk5leHQuICovXG5leHBvcnQgaW50ZXJmYWNlIEZsb3dOZXh0RXZlbnQge1xuICBmcm9tOiBzdHJpbmc7XG4gIHRvOiBzdHJpbmc7XG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICB0cmF2ZXJzYWxDb250ZXh0PzogVHJhdmVyc2FsQ29udGV4dDtcbn1cblxuLyoqIEV2ZW50IHBhc3NlZCB0byBGbG93UmVjb3JkZXIub25EZWNpc2lvbi4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRmxvd0RlY2lzaW9uRXZlbnQge1xuICBkZWNpZGVyOiBzdHJpbmc7XG4gIGNob3Nlbjogc3RyaW5nO1xuICByYXRpb25hbGU/OiBzdHJpbmc7XG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICB0cmF2ZXJzYWxDb250ZXh0PzogVHJhdmVyc2FsQ29udGV4dDtcbiAgLyoqIFN0cnVjdHVyZWQgZGVjaXNpb24gZXZpZGVuY2UgZnJvbSBkZWNpZGUoKSBoZWxwZXIuICovXG4gIGV2aWRlbmNlPzogRGVjaXNpb25FdmlkZW5jZTtcbn1cblxuLyoqIEV2ZW50IHBhc3NlZCB0byBGbG93UmVjb3JkZXIub25Gb3JrLiAqL1xuZXhwb3J0IGludGVyZmFjZSBGbG93Rm9ya0V2ZW50IHtcbiAgcGFyZW50OiBzdHJpbmc7XG4gIGNoaWxkcmVuOiBzdHJpbmdbXTtcbiAgdHJhdmVyc2FsQ29udGV4dD86IFRyYXZlcnNhbENvbnRleHQ7XG59XG5cbi8qKiBFdmVudCBwYXNzZWQgdG8gRmxvd1JlY29yZGVyLm9uU2VsZWN0ZWQuICovXG5leHBvcnQgaW50ZXJmYWNlIEZsb3dTZWxlY3RlZEV2ZW50IHtcbiAgcGFyZW50OiBzdHJpbmc7XG4gIHNlbGVjdGVkOiBzdHJpbmdbXTtcbiAgdG90YWw6IG51bWJlcjtcbiAgdHJhdmVyc2FsQ29udGV4dD86IFRyYXZlcnNhbENvbnRleHQ7XG4gIC8qKiBTdHJ1Y3R1cmVkIHNlbGVjdGlvbiBldmlkZW5jZSBmcm9tIHNlbGVjdCgpIGhlbHBlci4gKi9cbiAgZXZpZGVuY2U/OiBTZWxlY3Rpb25FdmlkZW5jZTtcbn1cblxuLyoqIEV2ZW50IHBhc3NlZCB0byBGbG93UmVjb3JkZXIub25TdWJmbG93LiAqL1xuZXhwb3J0IGludGVyZmFjZSBGbG93U3ViZmxvd0V2ZW50IHtcbiAgbmFtZTogc3RyaW5nO1xuICAvKiogU3ViZmxvdyBpZGVudGlmaWVyIOKAlCB1c2UgdGhpcyB0byBsb29rIHVwIHRoZSBmdWxsIHNwZWMgdmlhIHRoZSBtYW5pZmVzdC4gKi9cbiAgc3ViZmxvd0lkPzogc3RyaW5nO1xuICAvKiogQnVpbGQtdGltZSBkZXNjcmlwdGlvbiBvZiB3aGF0IHRoaXMgc3ViZmxvdyBkb2VzLiAqL1xuICBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgdHJhdmVyc2FsQ29udGV4dD86IFRyYXZlcnNhbENvbnRleHQ7XG4gIC8qKiBNYXBwZWQgaW5wdXQgdmFsdWVzIHNlbnQgSU5UTyB0aGUgc3ViZmxvdyAoZnJvbSBpbnB1dE1hcHBlci9pbnB1dEtleXMpLiBQcmVzZW50IG9uIGVudHJ5IGV2ZW50cy4gKi9cbiAgbWFwcGVkSW5wdXQ/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbiAgLyoqIFN1YmZsb3cgc2hhcmVkIHN0YXRlIGF0IGV4aXQuIFByZXNlbnQgb24gZXhpdCBldmVudHMuICovXG4gIG91dHB1dFN0YXRlPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG59XG5cbi8qKiBFdmVudCBwYXNzZWQgdG8gRmxvd1JlY29yZGVyLm9uU3ViZmxvd1JlZ2lzdGVyZWQgKGR5bmFtaWMgc3ViZmxvdyBhdHRhY2htZW50KS4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRmxvd1N1YmZsb3dSZWdpc3RlcmVkRXZlbnQge1xuICAvKiogU3ViZmxvdyBpZGVudGlmaWVyLiAqL1xuICBzdWJmbG93SWQ6IHN0cmluZztcbiAgLyoqIEh1bWFuLXJlYWRhYmxlIG5hbWUuICovXG4gIG5hbWU6IHN0cmluZztcbiAgLyoqIEJ1aWxkLXRpbWUgZGVzY3JpcHRpb24uICovXG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICAvKiogRnVsbCBzcGVjIHN0cnVjdHVyZSAod2hlbiBhdmFpbGFibGUgZnJvbSBidWlsZFRpbWVTdHJ1Y3R1cmUpLiAqL1xuICBzcGVjU3RydWN0dXJlPzogdW5rbm93bjtcbiAgdHJhdmVyc2FsQ29udGV4dD86IFRyYXZlcnNhbENvbnRleHQ7XG59XG5cbi8qKiBFdmVudCBwYXNzZWQgdG8gRmxvd1JlY29yZGVyLm9uTG9vcC4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRmxvd0xvb3BFdmVudCB7XG4gIHRhcmdldDogc3RyaW5nO1xuICBpdGVyYXRpb246IG51bWJlcjtcbiAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIHRyYXZlcnNhbENvbnRleHQ/OiBUcmF2ZXJzYWxDb250ZXh0O1xufVxuXG4vKiogRXZlbnQgcGFzc2VkIHRvIEZsb3dSZWNvcmRlci5vbkJyZWFrLiAqL1xuZXhwb3J0IGludGVyZmFjZSBGbG93QnJlYWtFdmVudCB7XG4gIHN0YWdlTmFtZTogc3RyaW5nO1xuICB0cmF2ZXJzYWxDb250ZXh0PzogVHJhdmVyc2FsQ29udGV4dDtcbiAgLyoqXG4gICAqIE9wdGlvbmFsIGZyZWUtZm9ybSByZWFzb24gc3VwcGxpZWQgYnkgYHNjb3BlLiRicmVhayhyZWFzb24pYC4gQWJzZW50XG4gICAqIHdoZW4gdGhlIHN0YWdlIGludm9rZWQgYCRicmVhaygpYCB3aXRob3V0IGFuIGFyZ3VtZW50LiBQcm9wYWdhdGVzIHdoZW5cbiAgICogYSBzdWJmbG93IGlzIG1vdW50ZWQgd2l0aCBgcHJvcGFnYXRlQnJlYWs6IHRydWVgIOKAlCB0aGUgb3V0ZXIgYnJlYWtcbiAgICogZXZlbnQgY2FycmllcyB0aGUgaW5uZXIgYnJlYWsncyByZWFzb24gdG9vLlxuICAgKi9cbiAgcmVhc29uPzogc3RyaW5nO1xuICAvKipcbiAgICogV2hlbiB0cnVlLCB0aGlzIGJyZWFrIGV2ZW50IHdhcyByYWlzZWQgb24gdGhlIFBBUkVOVCBiZWNhdXNlIGFuIGlubmVyXG4gICAqIHN1YmZsb3cncyBicmVhayBwcm9wYWdhdGVkIHVwICh2aWEgYFN1YmZsb3dNb3VudE9wdGlvbnMucHJvcGFnYXRlQnJlYWtgKS5cbiAgICogVGhlIG9yaWdpbmF0aW5nIGlubmVyIGJyZWFrIGZpcmVzIGl0cyBvd24gYG9uQnJlYWtgIGV2ZW50IHNlcGFyYXRlbHlcbiAgICog4oCUIHRoaXMgZmxhZyBsZXRzIHJlY29yZGVycyBkaXN0aW5ndWlzaCB0aGUgdHdvLlxuICAgKi9cbiAgcHJvcGFnYXRlZEZyb21TdWJmbG93Pzogc3RyaW5nO1xufVxuXG4vKiogRXZlbnQgcGFzc2VkIHRvIEZsb3dSZWNvcmRlci5vbkVycm9yLiAqL1xuZXhwb3J0IGludGVyZmFjZSBGbG93RXJyb3JFdmVudCB7XG4gIHN0YWdlTmFtZTogc3RyaW5nO1xuICBtZXNzYWdlOiBzdHJpbmc7XG4gIC8qKiBTdHJ1Y3R1cmVkIGVycm9yIGRldGFpbHMg4oCUIHByZXNlcnZlcyBmaWVsZC1sZXZlbCBpc3N1ZXMsIGVycm9yIGNvZGVzLCBldGMuICovXG4gIHN0cnVjdHVyZWRFcnJvcjogU3RydWN0dXJlZEVycm9ySW5mbztcbiAgdHJhdmVyc2FsQ29udGV4dD86IFRyYXZlcnNhbENvbnRleHQ7XG59XG5cbi8qKiBFdmVudCBwYXNzZWQgdG8gRmxvd1JlY29yZGVyLm9uUGF1c2UuICovXG5leHBvcnQgaW50ZXJmYWNlIEZsb3dQYXVzZUV2ZW50IHtcbiAgc3RhZ2VOYW1lOiBzdHJpbmc7XG4gIHN0YWdlSWQ6IHN0cmluZztcbiAgLyoqIERhdGEgZnJvbSB0aGUgcGF1c2Ugc2lnbmFsIChxdWVzdGlvbiwgcmVhc29uLCBtZXRhZGF0YSkuICovXG4gIHBhdXNlRGF0YT86IHVua25vd247XG4gIC8qKiBQYXRoIHRocm91Z2ggc3ViZmxvd3MgdG8gdGhlIHBhdXNlZCBzdGFnZS4gRW1wdHkgYXQgcm9vdCBsZXZlbC4gKi9cbiAgc3ViZmxvd1BhdGg6IHJlYWRvbmx5IHN0cmluZ1tdO1xuICB0cmF2ZXJzYWxDb250ZXh0PzogVHJhdmVyc2FsQ29udGV4dDtcbn1cblxuLyoqIEV2ZW50IHBhc3NlZCB0byBGbG93UmVjb3JkZXIub25SZXN1bWUuICovXG5leHBvcnQgaW50ZXJmYWNlIEZsb3dSZXN1bWVFdmVudCB7XG4gIHN0YWdlTmFtZTogc3RyaW5nO1xuICBzdGFnZUlkOiBzdHJpbmc7XG4gIC8qKiBXaGV0aGVyIHJlc3VtZSBpbnB1dCB3YXMgcHJvdmlkZWQuICovXG4gIGhhc0lucHV0OiBib29sZWFuO1xuICB0cmF2ZXJzYWxDb250ZXh0PzogVHJhdmVyc2FsQ29udGV4dDtcbn1cblxuLyoqXG4gKiBFdmVudCBwYXNzZWQgdG8gRmxvd1JlY29yZGVyLm9uUnVuU3RhcnQgLyBvblJ1bkVuZC5cbiAqXG4gKiBCcmFja2V0cyB0aGUgdG9wLWxldmVsIGBleGVjdXRvci5ydW4oKWAgY2FsbC4gU3ViZmxvd3MgaGF2ZSB0aGVpciBvd25cbiAqIHBhaXIgKGBvblN1YmZsb3dFbnRyeWAgLyBgb25TdWJmbG93RXhpdGApOyB0aGUgcnVuIHBhaXIgaXMgdGhlIE9VVEVSTU9TVFxuICogYm91bmRhcnksIHNvIGNvbnN1bWVycyBidWlsZGluZyBcImV2ZXJ5IHN0ZXAgaGFzIGFuIGluL291dFwiIHZpZXdzIGNhblxuICogY2xvc2UgdGhlIGNoYWluIGF0IHRoZSB0b3AgbGV2ZWwuXG4gKlxuICogICAtIGBvblJ1blN0YXJ0YCBwYXlsb2FkIOKGkiB0aGUgaW5wdXQgcGFzc2VkIHRvIGBydW4oe2lucHV0fSlgXG4gKiAgIC0gYG9uUnVuRW5kYCAgIHBheWxvYWQg4oaSIHRoZSBjaGFydCdzIHJldHVybiB2YWx1ZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIEZsb3dSdW5FdmVudCB7XG4gIC8qKiBPbiBgb25SdW5TdGFydGA6IHRoZSBpbnB1dCBmcm9tIGBydW4oe2lucHV0fSlgIGFmdGVyIHNjaGVtYSB2YWxpZGF0aW9uLlxuICAgKiAgT24gYG9uUnVuRW5kYDogdGhlIHZhbHVlIHJldHVybmVkIGJ5IHRoZSBjaGFydC4gVW5kZWZpbmVkIGlmIG5laXRoZXIuICovXG4gIHBheWxvYWQ/OiB1bmtub3duO1xuICB0cmF2ZXJzYWxDb250ZXh0PzogVHJhdmVyc2FsQ29udGV4dDtcbn1cblxuLyoqXG4gKiBGbG93UmVjb3JkZXIg4oCUIFBsdWdnYWJsZSBvYnNlcnZlciBmb3IgY29udHJvbCBmbG93IGV2ZW50cy5cbiAqXG4gKiBNaXJyb3JzIHRoZSBzY29wZS1sZXZlbCBTY29wZVJlY29yZGVyIHBhdHRlcm4gZm9yIHRoZSBlbmdpbmUgbGF5ZXIuXG4gKiBBbGwgbWV0aG9kcyBhcmUgb3B0aW9uYWwg4oCUIGltcGxlbWVudCBvbmx5IHRoZSBob29rcyB5b3UgbmVlZC5cbiAqIFJlY29yZGVycyBhcmUgaW52b2tlZCBzeW5jaHJvbm91c2x5IGluIGF0dGFjaG1lbnQgb3JkZXIuXG4gKiBJZiBhIHJlY29yZGVyIHRocm93cywgdGhlIGVycm9yIGlzIGNhdWdodCBhbmQgc3dhbGxvd2VkOyBleGVjdXRpb24gY29udGludWVzLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjb25zdCBtZXRyaWNzUmVjb3JkZXI6IEZsb3dSZWNvcmRlciA9IHtcbiAqICAgaWQ6ICdtZXRyaWNzJyxcbiAqICAgb25Mb29wOiAoZXZlbnQpID0+IHJlY29yZE1ldHJpYygnbG9vcC5pdGVyYXRpb24nLCBldmVudC5pdGVyYXRpb24pLFxuICogICBvbkRlY2lzaW9uOiAoZXZlbnQpID0+IHJlY29yZE1ldHJpYygnZGVjaXNpb24nLCBldmVudC5jaG9zZW4pLFxuICogfTtcbiAqIGV4ZWN1dG9yLmF0dGFjaEZsb3dSZWNvcmRlcihtZXRyaWNzUmVjb3JkZXIpO1xuICogYGBgXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRmxvd1JlY29yZGVyIHtcbiAgcmVhZG9ubHkgaWQ6IHN0cmluZztcbiAgb25TdGFnZUV4ZWN1dGVkPyhldmVudDogRmxvd1N0YWdlRXZlbnQpOiB2b2lkO1xuICBvbk5leHQ/KGV2ZW50OiBGbG93TmV4dEV2ZW50KTogdm9pZDtcbiAgb25EZWNpc2lvbj8oZXZlbnQ6IEZsb3dEZWNpc2lvbkV2ZW50KTogdm9pZDtcbiAgb25Gb3JrPyhldmVudDogRmxvd0ZvcmtFdmVudCk6IHZvaWQ7XG4gIG9uU2VsZWN0ZWQ/KGV2ZW50OiBGbG93U2VsZWN0ZWRFdmVudCk6IHZvaWQ7XG4gIG9uU3ViZmxvd0VudHJ5PyhldmVudDogRmxvd1N1YmZsb3dFdmVudCk6IHZvaWQ7XG4gIG9uU3ViZmxvd0V4aXQ/KGV2ZW50OiBGbG93U3ViZmxvd0V2ZW50KTogdm9pZDtcbiAgLyoqIENhbGxlZCB3aGVuIGEgZHluYW1pYyBzdWJmbG93IGlzIHJlZ2lzdGVyZWQgZHVyaW5nIHRyYXZlcnNhbC4gKi9cbiAgb25TdWJmbG93UmVnaXN0ZXJlZD8oZXZlbnQ6IEZsb3dTdWJmbG93UmVnaXN0ZXJlZEV2ZW50KTogdm9pZDtcbiAgb25Mb29wPyhldmVudDogRmxvd0xvb3BFdmVudCk6IHZvaWQ7XG4gIG9uQnJlYWs/KGV2ZW50OiBGbG93QnJlYWtFdmVudCk6IHZvaWQ7XG4gIG9uRXJyb3I/KGV2ZW50OiBGbG93RXJyb3JFdmVudCk6IHZvaWQ7XG4gIG9uUGF1c2U/KGV2ZW50OiBGbG93UGF1c2VFdmVudCk6IHZvaWQ7XG4gIG9uUmVzdW1lPyhldmVudDogRmxvd1Jlc3VtZUV2ZW50KTogdm9pZDtcbiAgLyoqXG4gICAqIENhbGxlZCBvbmNlIHBlciB0b3AtbGV2ZWwgYGV4ZWN1dG9yLnJ1bigpYCBCRUZPUkUgdHJhdmVyc2FsIGJlZ2lucy5cbiAgICogQ2FycmllcyBgZXZlbnQucGF5bG9hZCA9IHJ1bih7aW5wdXR9KWAuIFN1YmZsb3ctdHJhdmVyc2VycyBkb24ndCBmaXJlIGl0LlxuICAgKi9cbiAgb25SdW5TdGFydD8oZXZlbnQ6IEZsb3dSdW5FdmVudCk6IHZvaWQ7XG4gIC8qKlxuICAgKiBDYWxsZWQgb25jZSBwZXIgdG9wLWxldmVsIGBleGVjdXRvci5ydW4oKWAgQUZURVIgdHJhdmVyc2FsIGNvbXBsZXRlc1xuICAgKiBjbGVhbmx5LiBDYXJyaWVzIGBldmVudC5wYXlsb2FkID0gY2hhcnQncyByZXR1cm4gdmFsdWVgLiBOT1QgZmlyZWQgb25cbiAgICogcGF1c2UgKHRoZSBydW4gZGlkbid0IGVuZCkgb3IgdW5jYXVnaHQgZXJyb3IuXG4gICAqL1xuICBvblJ1bkVuZD8oZXZlbnQ6IEZsb3dSdW5FdmVudCk6IHZvaWQ7XG4gIC8qKiBDYWxsZWQgYmVmb3JlIGVhY2ggcnVuIHRvIHJlc2V0IHBlci1ydW4gc3RhdGUuIEltcGxlbWVudCBmb3Igc3RhdGVmdWwgcmVjb3JkZXJzLiAqL1xuICBjbGVhcj8oKTogdm9pZDtcbiAgLyoqIE9wdGlvbmFsOiBleHBvc2UgY29sbGVjdGVkIGRhdGEgZm9yIGluY2x1c2lvbiBpbiBzbmFwc2hvdHMuICovXG4gIHRvU25hcHNob3Q/KCk6IHtcbiAgICBuYW1lOiBzdHJpbmc7XG4gICAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gICAgcHJlZmVycmVkT3BlcmF0aW9uPzogJ3RyYW5zbGF0ZScgfCAnYWNjdW11bGF0ZScgfCAnYWdncmVnYXRlJztcbiAgICBkYXRhOiB1bmtub3duO1xuICB9O1xufVxuIl19
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2VuZ2luZS9uYXJyYXRpdmUvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7R0FPRyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogSUNvbnRyb2xGbG93TmFycmF0aXZlIOKAlCBJbnRlcmZhY2UgZm9yIGNvbnRyb2wgZmxvdyBuYXJyYXRpdmUgZ2VuZXJhdGlvbi5cbiAqXG4gKiBDYXB0dXJlcyBGTE9XIGV2ZW50cyBkdXJpbmcgdHJhdmVyc2FsOiBkZWNpc2lvbnMsIGZvcmtzLCBsb29wcywgc3ViZmxvd3MuXG4gKiBDb21wbGVtZW50YXJ5IHRvIHNjb3BlL3JlY29yZGVycy9OYXJyYXRpdmVSZWNvcmRlciB3aGljaCBjYXB0dXJlcyBEQVRBIGV2ZW50cy5cbiAqXG4gKiBAbW9kdWxlXG4gKi9cblxuaW1wb3J0IHR5cGUgeyBEZWNpc2lvbkV2aWRlbmNlLCBTZWxlY3Rpb25FdmlkZW5jZSB9IGZyb20gJy4uLy4uL2RlY2lkZS90eXBlcy5qcyc7XG5pbXBvcnQgdHlwZSB7IFN0cnVjdHVyZWRFcnJvckluZm8gfSBmcm9tICcuLi9lcnJvcnMvZXJyb3JJbmZvLmpzJztcblxuLyoqXG4gKlxuICogVXNlcyBOdWxsIE9iamVjdCBwYXR0ZXJuOiBOdWxsQ29udHJvbEZsb3dOYXJyYXRpdmVHZW5lcmF0b3Igc2F0aXNmaWVzIHRoaXNcbiAqIGludGVyZmFjZSB3aXRoIGVtcHR5IG1ldGhvZHMgZm9yIHplcm8tY29zdCBkaXNhYmxlZCBwYXRoLlxuICovXG5cbi8qKlxuICogVGhlIGtpbmQgb2Ygc3RhZ2UgdGhhdCBjb21wbGV0ZWQuIExldHMgY29uc3VtZXJzIHJvdXRlIHVuaWZvcm1cbiAqIFwiZGlkIHRoaXMgc3RhZ2UgZXhlY3V0ZVwiIGhhbmRsaW5nIHdpdGhvdXQgYSBzaWRlLXRhYmxlIGxvb2t1cCBpbnRvXG4gKiB0aGUgY2hhcnQgc3BlYy4gUmVxdWlyZWQgb24gZXZlcnkgYG9uU3RhZ2VFeGVjdXRlZGAgZXZlbnQgc2luY2VcbiAqIHByb3Bvc2FsICMwMDMgdW5pZmllZCB0aGUgZXZlbnQgdG8gZmlyZSBmb3IgQUxMIHN0YWdlIGtpbmRzLlxuICovXG5leHBvcnQgdHlwZSBTdGFnZVR5cGUgPSAnbGluZWFyJyB8ICdkZWNpZGVyJyB8ICdmb3JrJyB8ICdzZWxlY3RvcicgfCAnc3ViZmxvdy1tb3VudCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUNvbnRyb2xGbG93TmFycmF0aXZlIHtcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGEgc3RhZ2UgY29tcGxldGVzIGl0cyBtYWluIHdvcmsuIEZpcmVzIGZvciBBTEwgc3RhZ2VcbiAgICoga2luZHMgKGAnbGluZWFyJ2AsIGAnZGVjaWRlcidgLCBgJ2ZvcmsnYCwgYCdzZWxlY3RvcidgLCBgJ3N1YmZsb3ctbW91bnQnYClcbiAgICogQUZURVIgdGhlIGNvcnJlc3BvbmRpbmcgc3BlY2lhbGl6ZWQgZXZlbnQgKGBvbkRlY2lzaW9uYCwgYG9uRm9ya2AsXG4gICAqIGBvblNlbGVjdGVkYCwgYG9uU3ViZmxvd0VudHJ5YCkuIEZvciBsaW5lYXIgc3RhZ2VzLCBmaXJlcyBhZnRlclxuICAgKiB0aGUgc3RhZ2UgZnVuY3Rpb24gcmV0dXJucy5cbiAgICpcbiAgICogQ29uc3VtZXJzIHRyYWNraW5nIFwiZGlkIHRoaXMgc3RhZ2UgcnVuP1wiIHVzZSB0aGlzIGV2ZW50IHVuaWZvcm1seVxuICAgKiBhbmQgc3dpdGNoIG9uIGBzdGFnZVR5cGVgIGZvciBraW5kLXNwZWNpZmljIHdvcmsuXG4gICAqL1xuICBvblN0YWdlRXhlY3V0ZWQoXG4gICAgc3RhZ2VOYW1lOiBzdHJpbmcsXG4gICAgZGVzY3JpcHRpb246IHN0cmluZyB8IHVuZGVmaW5lZCxcbiAgICB0cmF2ZXJzYWxDb250ZXh0OiBUcmF2ZXJzYWxDb250ZXh0IHwgdW5kZWZpbmVkLFxuICAgIHN0YWdlVHlwZTogU3RhZ2VUeXBlLFxuICApOiB2b2lkO1xuXG4gIC8qKiBDYWxsZWQgb24gbGluZWFyIGNvbnRpbnVhdGlvbiBmcm9tIG9uZSBzdGFnZSB0byB0aGUgbmV4dC4gKi9cbiAgb25OZXh0KGZyb21TdGFnZTogc3RyaW5nLCB0b1N0YWdlOiBzdHJpbmcsIGRlc2NyaXB0aW9uPzogc3RyaW5nLCB0cmF2ZXJzYWxDb250ZXh0PzogVHJhdmVyc2FsQ29udGV4dCk6IHZvaWQ7XG5cbiAgLyoqIENhbGxlZCB3aGVuIGEgZGVjaWRlciBzZWxlY3RzIGEgYnJhbmNoLiBNb3N0IHZhbHVhYmxlIGZvciBMTE0gY29udGV4dC4gKi9cbiAgb25EZWNpc2lvbihcbiAgICBkZWNpZGVyTmFtZTogc3RyaW5nLFxuICAgIGNob3NlbkJyYW5jaDogc3RyaW5nLFxuICAgIHJhdGlvbmFsZT86IHN0cmluZyxcbiAgICBkZWNpZGVyRGVzY3JpcHRpb24/OiBzdHJpbmcsXG4gICAgdHJhdmVyc2FsQ29udGV4dD86IFRyYXZlcnNhbENvbnRleHQsXG4gICAgZXZpZGVuY2U/OiBEZWNpc2lvbkV2aWRlbmNlLFxuICApOiB2b2lkO1xuXG4gIC8qKiBDYWxsZWQgd2hlbiBhIGZvcmsgZXhlY3V0ZXMgYWxsIGNoaWxkcmVuIGluIHBhcmFsbGVsLiAqL1xuICBvbkZvcmsocGFyZW50U3RhZ2U6IHN0cmluZywgY2hpbGROYW1lczogc3RyaW5nW10sIHRyYXZlcnNhbENvbnRleHQ/OiBUcmF2ZXJzYWxDb250ZXh0KTogdm9pZDtcblxuICAvKiogQ2FsbGVkIHdoZW4gYSBzZWxlY3RvciBwaWNrcyBhIHN1YnNldCBvZiBjaGlsZHJlbi4gKi9cbiAgb25TZWxlY3RlZChcbiAgICBwYXJlbnRTdGFnZTogc3RyaW5nLFxuICAgIHNlbGVjdGVkTmFtZXM6IHN0cmluZ1tdLFxuICAgIHRvdGFsQ291bnQ6IG51bWJlcixcbiAgICB0cmF2ZXJzYWxDb250ZXh0PzogVHJhdmVyc2FsQ29udGV4dCxcbiAgICBldmlkZW5jZT86IFNlbGVjdGlvbkV2aWRlbmNlLFxuICApOiB2b2lkO1xuXG4gIC8qKiBDYWxsZWQgd2hlbiBlbnRlcmluZyBhIHN1YmZsb3cgKG5lc3RlZCBjb250ZXh0IGJvdW5kYXJ5KS4gKi9cbiAgb25TdWJmbG93RW50cnkoXG4gICAgc3ViZmxvd05hbWU6IHN0cmluZyxcbiAgICBzdWJmbG93SWQ/OiBzdHJpbmcsXG4gICAgZGVzY3JpcHRpb24/OiBzdHJpbmcsXG4gICAgdHJhdmVyc2FsQ29udGV4dD86IFRyYXZlcnNhbENvbnRleHQsXG4gICAgbWFwcGVkSW5wdXQ/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPixcbiAgKTogdm9pZDtcblxuICAvKiogQ2FsbGVkIHdoZW4gZXhpdGluZyBhIHN1YmZsb3cuICovXG4gIG9uU3ViZmxvd0V4aXQoXG4gICAgc3ViZmxvd05hbWU6IHN0cmluZyxcbiAgICBzdWJmbG93SWQ/OiBzdHJpbmcsXG4gICAgdHJhdmVyc2FsQ29udGV4dD86IFRyYXZlcnNhbENvbnRleHQsXG4gICAgb3V0cHV0U3RhdGU/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPixcbiAgKTogdm9pZDtcblxuICAvKiogQ2FsbGVkIHdoZW4gYSBkeW5hbWljIHN1YmZsb3cgaXMgcmVnaXN0ZXJlZCBkdXJpbmcgdHJhdmVyc2FsLiAqL1xuICBvblN1YmZsb3dSZWdpc3RlcmVkKHN1YmZsb3dJZDogc3RyaW5nLCBuYW1lOiBzdHJpbmcsIGRlc2NyaXB0aW9uPzogc3RyaW5nLCBzcGVjU3RydWN0dXJlPzogdW5rbm93bik6IHZvaWQ7XG5cbiAgLyoqIENhbGxlZCBvbiBsb29wIGl0ZXJhdGlvbiAoYmFjay1lZGdlIHRyYXZlcnNhbCkuICovXG4gIG9uTG9vcCh0YXJnZXRTdGFnZTogc3RyaW5nLCBpdGVyYXRpb246IG51bWJlciwgZGVzY3JpcHRpb24/OiBzdHJpbmcsIHRyYXZlcnNhbENvbnRleHQ/OiBUcmF2ZXJzYWxDb250ZXh0KTogdm9pZDtcblxuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gYSBzdGFnZSB0cmlnZ2VycyBicmVhayAoZWFybHkgdGVybWluYXRpb24pLlxuICAgKlxuICAgKiBAcGFyYW0gcmVhc29uIC0gT3B0aW9uYWwgc3RyaW5nIHBhc3NlZCB0byBgc2NvcGUuJGJyZWFrKHJlYXNvbilgLlxuICAgKiBAcGFyYW0gcHJvcGFnYXRlZEZyb21TdWJmbG93IC0gV2hlbiBzZXQsIHRoaXMgYnJlYWsgd2FzIHJhaXNlZCBvbiB0aGVcbiAgICogICBwYXJlbnQgYmVjYXVzZSBhbiBpbm5lciBzdWJmbG93ICh0aGlzIGlkKSBicm9rZSB3aXRoIGBwcm9wYWdhdGVCcmVha2BcbiAgICogICBlbmFibGVkLiBVc2VkIGJ5IHJlY29yZGVycyB0byBkaXN0aW5ndWlzaCBvcmlnaW5hdGluZyB2cyBwcm9wYWdhdGVkXG4gICAqICAgYnJlYWtzIGFuZCByZW5kZXIgdGhlbSBhY2NvcmRpbmdseS5cbiAgICovXG4gIG9uQnJlYWsoXG4gICAgc3RhZ2VOYW1lOiBzdHJpbmcsXG4gICAgdHJhdmVyc2FsQ29udGV4dD86IFRyYXZlcnNhbENvbnRleHQsXG4gICAgcmVhc29uPzogc3RyaW5nLFxuICAgIHByb3BhZ2F0ZWRGcm9tU3ViZmxvdz86IHN0cmluZyxcbiAgKTogdm9pZDtcblxuICAvKiogQ2FsbGVkIHdoZW4gYSBzdGFnZSB0aHJvd3MgYW4gZXJyb3IuIFJhdyBlcnJvciBpcyBleHRyYWN0ZWQgaW50byBzdHJ1Y3R1cmVkIGRldGFpbHMuICovXG4gIG9uRXJyb3Ioc3RhZ2VOYW1lOiBzdHJpbmcsIGVycm9yTWVzc2FnZTogc3RyaW5nLCBlcnJvcjogdW5rbm93biwgdHJhdmVyc2FsQ29udGV4dD86IFRyYXZlcnNhbENvbnRleHQpOiB2b2lkO1xuXG4gIC8qKiBDYWxsZWQgd2hlbiBhIHBhdXNhYmxlIHN0YWdlIHBhdXNlcyBleGVjdXRpb24uICovXG4gIG9uUGF1c2UoXG4gICAgc3RhZ2VOYW1lOiBzdHJpbmcsXG4gICAgc3RhZ2VJZDogc3RyaW5nLFxuICAgIHBhdXNlRGF0YTogdW5rbm93bixcbiAgICBzdWJmbG93UGF0aDogcmVhZG9ubHkgc3RyaW5nW10sXG4gICAgdHJhdmVyc2FsQ29udGV4dD86IFRyYXZlcnNhbENvbnRleHQsXG4gICk6IHZvaWQ7XG5cbiAgLyoqIENhbGxlZCB3aGVuIGEgcGF1c2VkIHN0YWdlIGlzIHJlc3VtZWQuICovXG4gIG9uUmVzdW1lKHN0YWdlTmFtZTogc3RyaW5nLCBzdGFnZUlkOiBzdHJpbmcsIGhhc0lucHV0OiBib29sZWFuLCB0cmF2ZXJzYWxDb250ZXh0PzogVHJhdmVyc2FsQ29udGV4dCk6IHZvaWQ7XG5cbiAgLyoqXG4gICAqIENhbGxlZCBvbmNlIHBlciB0b3AtbGV2ZWwgYGV4ZWN1dG9yLnJ1bigpYCwgQkVGT1JFIHRoZSBmaXJzdCBzdGFnZSBleGVjdXRlcy5cbiAgICogYGlucHV0YCBpcyB0aGUgdmFsdWUgcGFzc2VkIHZpYSBgcnVuKHtpbnB1dH0pYCAoYWZ0ZXIgc2NoZW1hIHZhbGlkYXRpb24pLlxuICAgKiBTdWJmbG93LXRyYXZlcnNlcnMgZG8gTk9UIGZpcmUgdGhpcyBldmVudCDigJQgdGhleSBmaXJlIGBvblN1YmZsb3dFbnRyeWAuXG4gICAqL1xuICBvblJ1blN0YXJ0KGlucHV0OiB1bmtub3duLCB0cmF2ZXJzYWxDb250ZXh0PzogVHJhdmVyc2FsQ29udGV4dCk6IHZvaWQ7XG5cbiAgLyoqXG4gICAqIENhbGxlZCBvbmNlIHBlciB0b3AtbGV2ZWwgYGV4ZWN1dG9yLnJ1bigpYCwgQUZURVIgdGhlIGxhc3Qgc3RhZ2UgY29tbWl0cy5cbiAgICogYG91dHB1dGAgaXMgdGhlIHZhbHVlIHRoZSBjaGFydCByZXR1cm5lZC4gTk9UIGZpcmVkIG9uIHBhdXNlICh0aGUgcnVuXG4gICAqIGRpZG4ndCBlbmQ7IGl0IHN1c3BlbmRlZCkgb3Igb24gdW5jYXVnaHQgZXJyb3IuIFN1YmZsb3ctdHJhdmVyc2VycyBkb1xuICAgKiBOT1QgZmlyZSB0aGlzIGV2ZW50IOKAlCB0aGV5IGZpcmUgYG9uU3ViZmxvd0V4aXRgLlxuICAgKi9cbiAgb25SdW5FbmQob3V0cHV0OiB1bmtub3duLCB0cmF2ZXJzYWxDb250ZXh0PzogVHJhdmVyc2FsQ29udGV4dCk6IHZvaWQ7XG5cbiAgLyoqIFJldHVybnMgYWNjdW11bGF0ZWQgbmFycmF0aXZlIHNlbnRlbmNlcyBpbiBleGVjdXRpb24gb3JkZXIuICovXG4gIGdldFNlbnRlbmNlcygpOiBzdHJpbmdbXTtcbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gVHJhdmVyc2FsQ29udGV4dCDigJQgcmVhZC1vbmx5IGV4ZWN1dGlvbiBjb250ZXh0IGZyb20gdGhlIHRyYXZlcnNlci5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqXG4gKiBUcmF2ZXJzYWwgY29udGV4dCBhdHRhY2hlZCB0byBldmVyeSBGbG93UmVjb3JkZXIgZXZlbnQuXG4gKiBDcmVhdGVkIGJ5IHRoZSB0cmF2ZXJzZXIgZHVyaW5nIERGUywgcGFzc2VkIHRvIHJlY29yZGVycyBhcyByZWFkLW9ubHkgZGF0YS5cbiAqIEVuYWJsZXMgcmVjb3JkZXJzIHRvIGJ1aWxkIHRyZWVzLCBncm91cCBieSBzdWJmbG93LCBhbmQgY29ycmVsYXRlIGV2ZW50c1xuICogd2l0aG91dCBtYWludGFpbmluZyB0aGVpciBvd24gc3RhY2tzIG9yIHBvc3QtcHJvY2Vzc2luZy5cbiAqXG4gKiBMaWtlIE9wZW5UZWxlbWV0cnkncyBzcGFuIGNvbnRleHQ6IHN0YWdlSWQgKyBwYXJlbnRTdGFnZUlkIGZvcm0gYSB0cmVlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFRyYXZlcnNhbENvbnRleHQge1xuICAvKipcbiAgICogUGVyLWBleGVjdXRvci5ydW4oKWAgaWRlbnRpZmllci4gR2VuZXJhdGVkIG9uY2UgYXQgdGhlIHN0YXJ0IG9mIGV2ZXJ5XG4gICAqIGBydW4oKWAgKGFuZCBhZ2FpbiBvbiBgcmVzdW1lKClgKTsgc2hhcmVkIGJ5IGV2ZXJ5IGV2ZW50IG9mIHRoYXQgcnVuO1xuICAgKiBkaWZmZXJzIGFjcm9zcyBjb25zZWN1dGl2ZSBydW5zIG9mIHRoZSBzYW1lIGV4ZWN1dG9yLlxuICAgKlxuICAgKiBGb3JtYXQ6IGAke0RhdGUubm93KCl9LSR7Y291bnRlcn1gIOKAlCBzb3J0YWJsZSBsZXhpY29ncmFwaGljYWxseSAoPT1cbiAgICogY2hyb25vbG9naWNhbGx5IGZvciBydW5zID4gMW1zIGFwYXJ0KS4gUHJvY2Vzcy1sb2NhbCDigJQgZm9yIGNyb3NzLVxuICAgKiBwcm9jZXNzIGNvcnJlbGF0aW9uIHVzZSBgZ2V0RW52KCkudHJhY2VJZGAgKGNvbnN1bWVyLXN1cHBsaWVkKS5cbiAgICpcbiAgICogUmVjb3JkZXJzIHRoYXQgYWNjdW11bGF0ZSBzdGF0ZSBhY3Jvc3MgcnVucyAoZm9yayBib29ra2VlcGluZyxcbiAgICogc2libGluZy1oYW5kb2ZmIHN0YXRlLCBldGMuKSBkZXRlY3QgXCJuZXcgcnVuXCIgdmlhXG4gICAqIGBldmVudC50cmF2ZXJzYWxDb250ZXh0LnJ1bklkICE9PSB0aGlzLmxhc3RSdW5JZGAgYW5kIHJlc2V0XG4gICAqIHRyYW5zaWVudCBib29ra2VlcGluZy4gUmVjb3JkZXJzIHRoYXQgZG9uJ3QgY2FyZSBhYm91dCBzY29waW5nXG4gICAqIGlnbm9yZSB0aGUgZmllbGQuXG4gICAqL1xuICByZWFkb25seSBydW5JZDogc3RyaW5nO1xuICAvKiogU3RhYmxlIHN0YWdlIGlkZW50aWZpZXIgZnJvbSB0aGUgYnVpbGRlciAobWF0Y2hlcyBzcGVjIG5vZGUgaWQpLiAqL1xuICByZWFkb25seSBzdGFnZUlkOiBzdHJpbmc7XG4gIC8qKiBVbmlxdWUgcGVyLWV4ZWN1dGlvbi1zdGVwIGlkZW50aWZpZXIuIEZvcm1hdDogW3N1YmZsb3dQYXRoL11zdGFnZUlkI2V4ZWN1dGlvbkluZGV4LlxuICAgKiAgQ291bnRlciByZXNldHMgcGVyIGV4ZWN1dG9yIOKAlCBjb21iaW5lIHdpdGggYHJ1bklkYCBmb3IgZ2xvYmFsbHkgdW5pcXVlIHN0ZXAga2V5cy4gKi9cbiAgcmVhZG9ubHkgcnVudGltZVN0YWdlSWQ6IHN0cmluZztcbiAgLyoqIEh1bWFuLXJlYWRhYmxlIHN0YWdlIG5hbWUuICovXG4gIHJlYWRvbmx5IHN0YWdlTmFtZTogc3RyaW5nO1xuICAvKiogUGFyZW50IHN0YWdlIElEIOKAlCB3YWxrIHVwIHRvIHJlY29uc3RydWN0IHRoZSB0cmVlLiBVbmRlZmluZWQgYXQgcm9vdC4gKi9cbiAgcmVhZG9ubHkgcGFyZW50U3RhZ2VJZD86IHN0cmluZztcbiAgLyoqIFN1YmZsb3cgSUQgd2hlbiBpbnNpZGUgYSBzdWJmbG93LiBVbmRlZmluZWQgYXQgcm9vdCBsZXZlbC4gKi9cbiAgcmVhZG9ubHkgc3ViZmxvd0lkPzogc3RyaW5nO1xuICAvKiogRnVsbCBzdWJmbG93IHBhdGggZm9yIG5lc3RlZCBzdWJmbG93cyAoZS5nLiwgXCJzZi1vdXRlci9zZi1pbm5lclwiKS4gKi9cbiAgcmVhZG9ubHkgc3ViZmxvd1BhdGg/OiBzdHJpbmc7XG4gIC8qKiBOZXN0aW5nIGRlcHRoICgwID0gcm9vdCwgMSA9IGluc2lkZSBmaXJzdCBzdWJmbG93LCBldGMuKS4gKi9cbiAgcmVhZG9ubHkgZGVwdGg6IG51bWJlcjtcbiAgLyoqIExvb3AgaXRlcmF0aW9uIG51bWJlciB3aGVuIHJldmlzaXRpbmcgYSBub2RlIHZpYSBsb29wVG8uICovXG4gIHJlYWRvbmx5IGxvb3BJdGVyYXRpb24/OiBudW1iZXI7XG4gIC8qKiBGb3JrIGJyYW5jaCBJRCB3aGVuIGluc2lkZSBhIHBhcmFsbGVsIG9yIGRlY2lkZXIgYnJhbmNoLiAqL1xuICByZWFkb25seSBmb3JrQnJhbmNoPzogc3RyaW5nO1xufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBGbG93UmVjb3JkZXIg4oCUIFBsdWdnYWJsZSBvYnNlcnZlciBmb3IgY29udHJvbCBmbG93IGV2ZW50cy5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqIEV2ZW50IHBhc3NlZCB0byBGbG93UmVjb3JkZXIub25TdGFnZUV4ZWN1dGVkLiAqL1xuZXhwb3J0IGludGVyZmFjZSBGbG93U3RhZ2VFdmVudCB7XG4gIHN0YWdlTmFtZTogc3RyaW5nO1xuICBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgLyoqIFRyYXZlcnNhbCBjb250ZXh0IGZyb20gdGhlIGVuZ2luZSDigJQgcmVhZC1vbmx5LCBzZXQgYnkgdHJhdmVyc2VyLiAqL1xuICB0cmF2ZXJzYWxDb250ZXh0PzogVHJhdmVyc2FsQ29udGV4dDtcbiAgLyoqXG4gICAqIFdoaWNoIGtpbmQgb2Ygc3RhZ2UgY29tcGxldGVkLiBUaGUgZW5naW5lIGZpcmVzIGBvblN0YWdlRXhlY3V0ZWRgXG4gICAqIHVuaWZvcm1seSBmb3IgZXZlcnkgc3RhZ2Uga2luZCAocHJvcG9zYWwgIzAwMyk7IGNvbnN1bWVycyByb3V0ZSBieVxuICAgKiBgc3RhZ2VUeXBlYCB3aXRob3V0IGEgY2hhcnQtc3BlYyBsb29rdXAuXG4gICAqL1xuICBzdGFnZVR5cGU6IFN0YWdlVHlwZTtcbn1cblxuLyoqIEV2ZW50IHBhc3NlZCB0byBGbG93UmVjb3JkZXIub25OZXh0LiAqL1xuZXhwb3J0IGludGVyZmFjZSBGbG93TmV4dEV2ZW50IHtcbiAgZnJvbTogc3RyaW5nO1xuICB0bzogc3RyaW5nO1xuICBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgdHJhdmVyc2FsQ29udGV4dD86IFRyYXZlcnNhbENvbnRleHQ7XG59XG5cbi8qKiBFdmVudCBwYXNzZWQgdG8gRmxvd1JlY29yZGVyLm9uRGVjaXNpb24uICovXG5leHBvcnQgaW50ZXJmYWNlIEZsb3dEZWNpc2lvbkV2ZW50IHtcbiAgZGVjaWRlcjogc3RyaW5nO1xuICBjaG9zZW46IHN0cmluZztcbiAgcmF0aW9uYWxlPzogc3RyaW5nO1xuICBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgdHJhdmVyc2FsQ29udGV4dD86IFRyYXZlcnNhbENvbnRleHQ7XG4gIC8qKiBTdHJ1Y3R1cmVkIGRlY2lzaW9uIGV2aWRlbmNlIGZyb20gZGVjaWRlKCkgaGVscGVyLiAqL1xuICBldmlkZW5jZT86IERlY2lzaW9uRXZpZGVuY2U7XG59XG5cbi8qKiBFdmVudCBwYXNzZWQgdG8gRmxvd1JlY29yZGVyLm9uRm9yay4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRmxvd0ZvcmtFdmVudCB7XG4gIHBhcmVudDogc3RyaW5nO1xuICBjaGlsZHJlbjogc3RyaW5nW107XG4gIHRyYXZlcnNhbENvbnRleHQ/OiBUcmF2ZXJzYWxDb250ZXh0O1xufVxuXG4vKiogRXZlbnQgcGFzc2VkIHRvIEZsb3dSZWNvcmRlci5vblNlbGVjdGVkLiAqL1xuZXhwb3J0IGludGVyZmFjZSBGbG93U2VsZWN0ZWRFdmVudCB7XG4gIHBhcmVudDogc3RyaW5nO1xuICBzZWxlY3RlZDogc3RyaW5nW107XG4gIHRvdGFsOiBudW1iZXI7XG4gIHRyYXZlcnNhbENvbnRleHQ/OiBUcmF2ZXJzYWxDb250ZXh0O1xuICAvKiogU3RydWN0dXJlZCBzZWxlY3Rpb24gZXZpZGVuY2UgZnJvbSBzZWxlY3QoKSBoZWxwZXIuICovXG4gIGV2aWRlbmNlPzogU2VsZWN0aW9uRXZpZGVuY2U7XG59XG5cbi8qKiBFdmVudCBwYXNzZWQgdG8gRmxvd1JlY29yZGVyLm9uU3ViZmxvdy4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRmxvd1N1YmZsb3dFdmVudCB7XG4gIG5hbWU6IHN0cmluZztcbiAgLyoqIFN1YmZsb3cgaWRlbnRpZmllciDigJQgdXNlIHRoaXMgdG8gbG9vayB1cCB0aGUgZnVsbCBzcGVjIHZpYSB0aGUgbWFuaWZlc3QuICovXG4gIHN1YmZsb3dJZD86IHN0cmluZztcbiAgLyoqIEJ1aWxkLXRpbWUgZGVzY3JpcHRpb24gb2Ygd2hhdCB0aGlzIHN1YmZsb3cgZG9lcy4gKi9cbiAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIHRyYXZlcnNhbENvbnRleHQ/OiBUcmF2ZXJzYWxDb250ZXh0O1xuICAvKiogTWFwcGVkIGlucHV0IHZhbHVlcyBzZW50IElOVE8gdGhlIHN1YmZsb3cgKGZyb20gaW5wdXRNYXBwZXIvaW5wdXRLZXlzKS4gUHJlc2VudCBvbiBlbnRyeSBldmVudHMuICovXG4gIG1hcHBlZElucHV0PzogUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG4gIC8qKiBTdWJmbG93IHNoYXJlZCBzdGF0ZSBhdCBleGl0LiBQcmVzZW50IG9uIGV4aXQgZXZlbnRzLiAqL1xuICBvdXRwdXRTdGF0ZT86IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xufVxuXG4vKiogRXZlbnQgcGFzc2VkIHRvIEZsb3dSZWNvcmRlci5vblN1YmZsb3dSZWdpc3RlcmVkIChkeW5hbWljIHN1YmZsb3cgYXR0YWNobWVudCkuICovXG5leHBvcnQgaW50ZXJmYWNlIEZsb3dTdWJmbG93UmVnaXN0ZXJlZEV2ZW50IHtcbiAgLyoqIFN1YmZsb3cgaWRlbnRpZmllci4gKi9cbiAgc3ViZmxvd0lkOiBzdHJpbmc7XG4gIC8qKiBIdW1hbi1yZWFkYWJsZSBuYW1lLiAqL1xuICBuYW1lOiBzdHJpbmc7XG4gIC8qKiBCdWlsZC10aW1lIGRlc2NyaXB0aW9uLiAqL1xuICBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgLyoqIEZ1bGwgc3BlYyBzdHJ1Y3R1cmUgKHdoZW4gYXZhaWxhYmxlIGZyb20gYnVpbGRUaW1lU3RydWN0dXJlKS4gKi9cbiAgc3BlY1N0cnVjdHVyZT86IHVua25vd247XG4gIHRyYXZlcnNhbENvbnRleHQ/OiBUcmF2ZXJzYWxDb250ZXh0O1xufVxuXG4vKiogRXZlbnQgcGFzc2VkIHRvIEZsb3dSZWNvcmRlci5vbkxvb3AuICovXG5leHBvcnQgaW50ZXJmYWNlIEZsb3dMb29wRXZlbnQge1xuICB0YXJnZXQ6IHN0cmluZztcbiAgaXRlcmF0aW9uOiBudW1iZXI7XG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICB0cmF2ZXJzYWxDb250ZXh0PzogVHJhdmVyc2FsQ29udGV4dDtcbn1cblxuLyoqIEV2ZW50IHBhc3NlZCB0byBGbG93UmVjb3JkZXIub25CcmVhay4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRmxvd0JyZWFrRXZlbnQge1xuICBzdGFnZU5hbWU6IHN0cmluZztcbiAgdHJhdmVyc2FsQ29udGV4dD86IFRyYXZlcnNhbENvbnRleHQ7XG4gIC8qKlxuICAgKiBPcHRpb25hbCBmcmVlLWZvcm0gcmVhc29uIHN1cHBsaWVkIGJ5IGBzY29wZS4kYnJlYWsocmVhc29uKWAuIEFic2VudFxuICAgKiB3aGVuIHRoZSBzdGFnZSBpbnZva2VkIGAkYnJlYWsoKWAgd2l0aG91dCBhbiBhcmd1bWVudC4gUHJvcGFnYXRlcyB3aGVuXG4gICAqIGEgc3ViZmxvdyBpcyBtb3VudGVkIHdpdGggYHByb3BhZ2F0ZUJyZWFrOiB0cnVlYCDigJQgdGhlIG91dGVyIGJyZWFrXG4gICAqIGV2ZW50IGNhcnJpZXMgdGhlIGlubmVyIGJyZWFrJ3MgcmVhc29uIHRvby5cbiAgICovXG4gIHJlYXNvbj86IHN0cmluZztcbiAgLyoqXG4gICAqIFdoZW4gdHJ1ZSwgdGhpcyBicmVhayBldmVudCB3YXMgcmFpc2VkIG9uIHRoZSBQQVJFTlQgYmVjYXVzZSBhbiBpbm5lclxuICAgKiBzdWJmbG93J3MgYnJlYWsgcHJvcGFnYXRlZCB1cCAodmlhIGBTdWJmbG93TW91bnRPcHRpb25zLnByb3BhZ2F0ZUJyZWFrYCkuXG4gICAqIFRoZSBvcmlnaW5hdGluZyBpbm5lciBicmVhayBmaXJlcyBpdHMgb3duIGBvbkJyZWFrYCBldmVudCBzZXBhcmF0ZWx5XG4gICAqIOKAlCB0aGlzIGZsYWcgbGV0cyByZWNvcmRlcnMgZGlzdGluZ3Vpc2ggdGhlIHR3by5cbiAgICovXG4gIHByb3BhZ2F0ZWRGcm9tU3ViZmxvdz86IHN0cmluZztcbn1cblxuLyoqIEV2ZW50IHBhc3NlZCB0byBGbG93UmVjb3JkZXIub25FcnJvci4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRmxvd0Vycm9yRXZlbnQge1xuICBzdGFnZU5hbWU6IHN0cmluZztcbiAgbWVzc2FnZTogc3RyaW5nO1xuICAvKiogU3RydWN0dXJlZCBlcnJvciBkZXRhaWxzIOKAlCBwcmVzZXJ2ZXMgZmllbGQtbGV2ZWwgaXNzdWVzLCBlcnJvciBjb2RlcywgZXRjLiAqL1xuICBzdHJ1Y3R1cmVkRXJyb3I6IFN0cnVjdHVyZWRFcnJvckluZm87XG4gIHRyYXZlcnNhbENvbnRleHQ/OiBUcmF2ZXJzYWxDb250ZXh0O1xufVxuXG4vKiogRXZlbnQgcGFzc2VkIHRvIEZsb3dSZWNvcmRlci5vblBhdXNlLiAqL1xuZXhwb3J0IGludGVyZmFjZSBGbG93UGF1c2VFdmVudCB7XG4gIHN0YWdlTmFtZTogc3RyaW5nO1xuICBzdGFnZUlkOiBzdHJpbmc7XG4gIC8qKiBEYXRhIGZyb20gdGhlIHBhdXNlIHNpZ25hbCAocXVlc3Rpb24sIHJlYXNvbiwgbWV0YWRhdGEpLiAqL1xuICBwYXVzZURhdGE/OiB1bmtub3duO1xuICAvKiogUGF0aCB0aHJvdWdoIHN1YmZsb3dzIHRvIHRoZSBwYXVzZWQgc3RhZ2UuIEVtcHR5IGF0IHJvb3QgbGV2ZWwuICovXG4gIHN1YmZsb3dQYXRoOiByZWFkb25seSBzdHJpbmdbXTtcbiAgdHJhdmVyc2FsQ29udGV4dD86IFRyYXZlcnNhbENvbnRleHQ7XG59XG5cbi8qKiBFdmVudCBwYXNzZWQgdG8gRmxvd1JlY29yZGVyLm9uUmVzdW1lLiAqL1xuZXhwb3J0IGludGVyZmFjZSBGbG93UmVzdW1lRXZlbnQge1xuICBzdGFnZU5hbWU6IHN0cmluZztcbiAgc3RhZ2VJZDogc3RyaW5nO1xuICAvKiogV2hldGhlciByZXN1bWUgaW5wdXQgd2FzIHByb3ZpZGVkLiAqL1xuICBoYXNJbnB1dDogYm9vbGVhbjtcbiAgdHJhdmVyc2FsQ29udGV4dD86IFRyYXZlcnNhbENvbnRleHQ7XG59XG5cbi8qKlxuICogRXZlbnQgcGFzc2VkIHRvIEZsb3dSZWNvcmRlci5vblJ1blN0YXJ0IC8gb25SdW5FbmQuXG4gKlxuICogQnJhY2tldHMgdGhlIHRvcC1sZXZlbCBgZXhlY3V0b3IucnVuKClgIGNhbGwuIFN1YmZsb3dzIGhhdmUgdGhlaXIgb3duXG4gKiBwYWlyIChgb25TdWJmbG93RW50cnlgIC8gYG9uU3ViZmxvd0V4aXRgKTsgdGhlIHJ1biBwYWlyIGlzIHRoZSBPVVRFUk1PU1RcbiAqIGJvdW5kYXJ5LCBzbyBjb25zdW1lcnMgYnVpbGRpbmcgXCJldmVyeSBzdGVwIGhhcyBhbiBpbi9vdXRcIiB2aWV3cyBjYW5cbiAqIGNsb3NlIHRoZSBjaGFpbiBhdCB0aGUgdG9wIGxldmVsLlxuICpcbiAqICAgLSBgb25SdW5TdGFydGAgcGF5bG9hZCDihpIgdGhlIGlucHV0IHBhc3NlZCB0byBgcnVuKHtpbnB1dH0pYFxuICogICAtIGBvblJ1bkVuZGAgICBwYXlsb2FkIOKGkiB0aGUgY2hhcnQncyByZXR1cm4gdmFsdWVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBGbG93UnVuRXZlbnQge1xuICAvKiogT24gYG9uUnVuU3RhcnRgOiB0aGUgaW5wdXQgZnJvbSBgcnVuKHtpbnB1dH0pYCBhZnRlciBzY2hlbWEgdmFsaWRhdGlvbi5cbiAgICogIE9uIGBvblJ1bkVuZGA6IHRoZSB2YWx1ZSByZXR1cm5lZCBieSB0aGUgY2hhcnQuIFVuZGVmaW5lZCBpZiBuZWl0aGVyLiAqL1xuICBwYXlsb2FkPzogdW5rbm93bjtcbiAgdHJhdmVyc2FsQ29udGV4dD86IFRyYXZlcnNhbENvbnRleHQ7XG59XG5cbi8qKlxuICogRmxvd1JlY29yZGVyIOKAlCBQbHVnZ2FibGUgb2JzZXJ2ZXIgZm9yIGNvbnRyb2wgZmxvdyBldmVudHMuXG4gKlxuICogTWlycm9ycyB0aGUgc2NvcGUtbGV2ZWwgU2NvcGVSZWNvcmRlciBwYXR0ZXJuIGZvciB0aGUgZW5naW5lIGxheWVyLlxuICogQWxsIG1ldGhvZHMgYXJlIG9wdGlvbmFsIOKAlCBpbXBsZW1lbnQgb25seSB0aGUgaG9va3MgeW91IG5lZWQuXG4gKiBSZWNvcmRlcnMgYXJlIGludm9rZWQgc3luY2hyb25vdXNseSBpbiBhdHRhY2htZW50IG9yZGVyLlxuICogSWYgYSByZWNvcmRlciB0aHJvd3MsIHRoZSBlcnJvciBpcyBjYXVnaHQgYW5kIHN3YWxsb3dlZDsgZXhlY3V0aW9uIGNvbnRpbnVlcy5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogY29uc3QgbWV0cmljc1JlY29yZGVyOiBGbG93UmVjb3JkZXIgPSB7XG4gKiAgIGlkOiAnbWV0cmljcycsXG4gKiAgIG9uTG9vcDogKGV2ZW50KSA9PiByZWNvcmRNZXRyaWMoJ2xvb3AuaXRlcmF0aW9uJywgZXZlbnQuaXRlcmF0aW9uKSxcbiAqICAgb25EZWNpc2lvbjogKGV2ZW50KSA9PiByZWNvcmRNZXRyaWMoJ2RlY2lzaW9uJywgZXZlbnQuY2hvc2VuKSxcbiAqIH07XG4gKiBleGVjdXRvci5hdHRhY2hGbG93UmVjb3JkZXIobWV0cmljc1JlY29yZGVyKTtcbiAqIGBgYFxuICovXG5leHBvcnQgaW50ZXJmYWNlIEZsb3dSZWNvcmRlciB7XG4gIHJlYWRvbmx5IGlkOiBzdHJpbmc7XG4gIG9uU3RhZ2VFeGVjdXRlZD8oZXZlbnQ6IEZsb3dTdGFnZUV2ZW50KTogdm9pZDtcbiAgb25OZXh0PyhldmVudDogRmxvd05leHRFdmVudCk6IHZvaWQ7XG4gIG9uRGVjaXNpb24/KGV2ZW50OiBGbG93RGVjaXNpb25FdmVudCk6IHZvaWQ7XG4gIG9uRm9yaz8oZXZlbnQ6IEZsb3dGb3JrRXZlbnQpOiB2b2lkO1xuICBvblNlbGVjdGVkPyhldmVudDogRmxvd1NlbGVjdGVkRXZlbnQpOiB2b2lkO1xuICBvblN1YmZsb3dFbnRyeT8oZXZlbnQ6IEZsb3dTdWJmbG93RXZlbnQpOiB2b2lkO1xuICBvblN1YmZsb3dFeGl0PyhldmVudDogRmxvd1N1YmZsb3dFdmVudCk6IHZvaWQ7XG4gIC8qKiBDYWxsZWQgd2hlbiBhIGR5bmFtaWMgc3ViZmxvdyBpcyByZWdpc3RlcmVkIGR1cmluZyB0cmF2ZXJzYWwuICovXG4gIG9uU3ViZmxvd1JlZ2lzdGVyZWQ/KGV2ZW50OiBGbG93U3ViZmxvd1JlZ2lzdGVyZWRFdmVudCk6IHZvaWQ7XG4gIG9uTG9vcD8oZXZlbnQ6IEZsb3dMb29wRXZlbnQpOiB2b2lkO1xuICBvbkJyZWFrPyhldmVudDogRmxvd0JyZWFrRXZlbnQpOiB2b2lkO1xuICBvbkVycm9yPyhldmVudDogRmxvd0Vycm9yRXZlbnQpOiB2b2lkO1xuICBvblBhdXNlPyhldmVudDogRmxvd1BhdXNlRXZlbnQpOiB2b2lkO1xuICBvblJlc3VtZT8oZXZlbnQ6IEZsb3dSZXN1bWVFdmVudCk6IHZvaWQ7XG4gIC8qKlxuICAgKiBDYWxsZWQgb25jZSBwZXIgdG9wLWxldmVsIGBleGVjdXRvci5ydW4oKWAgQkVGT1JFIHRyYXZlcnNhbCBiZWdpbnMuXG4gICAqIENhcnJpZXMgYGV2ZW50LnBheWxvYWQgPSBydW4oe2lucHV0fSlgLiBTdWJmbG93LXRyYXZlcnNlcnMgZG9uJ3QgZmlyZSBpdC5cbiAgICovXG4gIG9uUnVuU3RhcnQ/KGV2ZW50OiBGbG93UnVuRXZlbnQpOiB2b2lkO1xuICAvKipcbiAgICogQ2FsbGVkIG9uY2UgcGVyIHRvcC1sZXZlbCBgZXhlY3V0b3IucnVuKClgIEFGVEVSIHRyYXZlcnNhbCBjb21wbGV0ZXNcbiAgICogY2xlYW5seS4gQ2FycmllcyBgZXZlbnQucGF5bG9hZCA9IGNoYXJ0J3MgcmV0dXJuIHZhbHVlYC4gTk9UIGZpcmVkIG9uXG4gICAqIHBhdXNlICh0aGUgcnVuIGRpZG4ndCBlbmQpIG9yIHVuY2F1Z2h0IGVycm9yLlxuICAgKi9cbiAgb25SdW5FbmQ/KGV2ZW50OiBGbG93UnVuRXZlbnQpOiB2b2lkO1xuICAvKiogQ2FsbGVkIGJlZm9yZSBlYWNoIHJ1biB0byByZXNldCBwZXItcnVuIHN0YXRlLiBJbXBsZW1lbnQgZm9yIHN0YXRlZnVsIHJlY29yZGVycy4gKi9cbiAgY2xlYXI/KCk6IHZvaWQ7XG4gIC8qKiBPcHRpb25hbDogZXhwb3NlIGNvbGxlY3RlZCBkYXRhIGZvciBpbmNsdXNpb24gaW4gc25hcHNob3RzLiAqL1xuICB0b1NuYXBzaG90PygpOiB7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICAgIHByZWZlcnJlZE9wZXJhdGlvbj86ICd0cmFuc2xhdGUnIHwgJ2FjY3VtdWxhdGUnIHwgJ2FnZ3JlZ2F0ZSc7XG4gICAgZGF0YTogdW5rbm93bjtcbiAgfTtcbn1cbiJdfQ==
|
|
@@ -14,6 +14,15 @@
|
|
|
14
14
|
* - Human-readable ('sf-tools/execute-tool-calls#8')
|
|
15
15
|
* - Parseable (split on '#' for stageId and index, split stageId on '/' for subflow path)
|
|
16
16
|
*
|
|
17
|
+
* Naming-collision warning
|
|
18
|
+
* ────────────────────────
|
|
19
|
+
* The parsed-output `.stageId` field below is the LOCAL form (segment
|
|
20
|
+
* after the last '/'). This is NOT the same as `spec.id` / `node.id`
|
|
21
|
+
* for subflow-nested stages, which carry the FULL prefixed form
|
|
22
|
+
* (`'sf-tools/execute-tool-calls'`). To compare safely, use
|
|
23
|
+
* `splitStageId(spec.id)` to decompose the prefixed form the same
|
|
24
|
+
* way `parseRuntimeStageId` decomposes a runtimeStageId.
|
|
25
|
+
*
|
|
17
26
|
* @example
|
|
18
27
|
* ```
|
|
19
28
|
* buildRuntimeStageId('call-llm', 5) // 'call-llm#5'
|
|
@@ -32,7 +41,24 @@ export function buildRuntimeStageId(stageId, executionIndex, subflowPath) {
|
|
|
32
41
|
const prefix = subflowPath ? `${subflowPath}/` : '';
|
|
33
42
|
return `${prefix}${stageId}#${executionIndex}`;
|
|
34
43
|
}
|
|
35
|
-
/**
|
|
44
|
+
/**
|
|
45
|
+
* Parse a runtimeStageId into its components.
|
|
46
|
+
*
|
|
47
|
+
* IMPORTANT — naming collision: the returned `stageId` is the LOCAL
|
|
48
|
+
* form (the segment between the last '/' and the '#'). This is NOT
|
|
49
|
+
* the same as `spec.id` or `node.id` for subflow-nested stages,
|
|
50
|
+
* which contain the FULL prefixed form.
|
|
51
|
+
*
|
|
52
|
+
* parseRuntimeStageId('sf-tools/execute-tool-calls#8').stageId
|
|
53
|
+
* // → 'execute-tool-calls' (LOCAL)
|
|
54
|
+
*
|
|
55
|
+
* node.id // (post-mount, in a spec that contains subflows)
|
|
56
|
+
* // → 'sf-tools/execute-tool-calls' (FULL prefixed)
|
|
57
|
+
*
|
|
58
|
+
* To compare these two safely, use `splitStageId(node.id)` to get
|
|
59
|
+
* the local form, OR reconstruct the full form via
|
|
60
|
+
* `(subflowPath ? subflowPath + '/' : '') + stageId`.
|
|
61
|
+
*/
|
|
36
62
|
export function parseRuntimeStageId(runtimeStageId) {
|
|
37
63
|
const hashIdx = runtimeStageId.lastIndexOf('#');
|
|
38
64
|
if (hashIdx === -1) {
|
|
@@ -50,8 +76,44 @@ export function parseRuntimeStageId(runtimeStageId) {
|
|
|
50
76
|
subflowPath: beforeHash.slice(0, lastSlash),
|
|
51
77
|
};
|
|
52
78
|
}
|
|
79
|
+
/**
|
|
80
|
+
* Decompose a (possibly prefixed) stage id into its components.
|
|
81
|
+
*
|
|
82
|
+
* Use this when you have an id WITHOUT the `#N` execution suffix and
|
|
83
|
+
* need the local stage name and/or the subflow path. Common sources
|
|
84
|
+
* of such ids:
|
|
85
|
+
* - `spec.id` (post-mount the id includes any subflow prefix)
|
|
86
|
+
* - `CommitBundle.stageId` (post-mount id)
|
|
87
|
+
* - `node.id` from xyflow nodes built off the spec
|
|
88
|
+
* - the segment of `runtimeStageId` BEFORE the `#` (use
|
|
89
|
+
* `parseRuntimeStageId` directly for full runtimeStageId strings)
|
|
90
|
+
*
|
|
91
|
+
* Mirrors the decomposition `parseRuntimeStageId` performs on the
|
|
92
|
+
* stageId portion of a runtimeStageId, so the two helpers stay in
|
|
93
|
+
* lockstep on naming and behavior.
|
|
94
|
+
*
|
|
95
|
+
* @example
|
|
96
|
+
* splitStageId('sf-tools/execute-tool-calls')
|
|
97
|
+
* // → { localStageId: 'execute-tool-calls', subflowPath: 'sf-tools' }
|
|
98
|
+
*
|
|
99
|
+
* splitStageId('execute-tool-calls')
|
|
100
|
+
* // → { localStageId: 'execute-tool-calls', subflowPath: undefined }
|
|
101
|
+
*
|
|
102
|
+
* splitStageId('sf-outer/sf-inner/validate')
|
|
103
|
+
* // → { localStageId: 'validate', subflowPath: 'sf-outer/sf-inner' }
|
|
104
|
+
*/
|
|
105
|
+
export function splitStageId(prefixedStageId) {
|
|
106
|
+
const lastSlash = prefixedStageId.lastIndexOf('/');
|
|
107
|
+
if (lastSlash === -1) {
|
|
108
|
+
return { localStageId: prefixedStageId, subflowPath: undefined };
|
|
109
|
+
}
|
|
110
|
+
return {
|
|
111
|
+
localStageId: prefixedStageId.slice(lastSlash + 1),
|
|
112
|
+
subflowPath: prefixedStageId.slice(0, lastSlash),
|
|
113
|
+
};
|
|
114
|
+
}
|
|
53
115
|
/** Create a new execution counter starting at 0. */
|
|
54
116
|
export function createExecutionCounter() {
|
|
55
117
|
return { value: 0 };
|
|
56
118
|
}
|
|
57
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
119
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVudGltZVN0YWdlSWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL2VuZ2luZS9ydW50aW1lU3RhZ2VJZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQStCRztBQUVIOzs7Ozs7R0FNRztBQUNILE1BQU0sVUFBVSxtQkFBbUIsQ0FBQyxPQUFlLEVBQUUsY0FBc0IsRUFBRSxXQUFvQjtJQUMvRixNQUFNLE1BQU0sR0FBRyxXQUFXLENBQUMsQ0FBQyxDQUFDLEdBQUcsV0FBVyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUNwRCxPQUFPLEdBQUcsTUFBTSxHQUFHLE9BQU8sSUFBSSxjQUFjLEVBQUUsQ0FBQztBQUNqRCxDQUFDO0FBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBaUJHO0FBQ0gsTUFBTSxVQUFVLG1CQUFtQixDQUFDLGNBQXNCO0lBS3hELE1BQU0sT0FBTyxHQUFHLGNBQWMsQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDaEQsSUFBSSxPQUFPLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUNuQixPQUFPLEVBQUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxjQUFjLEVBQUUsQ0FBQyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsQ0FBQztJQUNoRixDQUFDO0lBRUQsTUFBTSxVQUFVLEdBQUcsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDcEQsTUFBTSxjQUFjLEdBQUcsUUFBUSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsT0FBTyxHQUFHLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBRXZFLE1BQU0sU0FBUyxHQUFHLFVBQVUsQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDOUMsSUFBSSxTQUFTLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUNyQixPQUFPLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxDQUFDO0lBQ3pFLENBQUM7SUFFRCxPQUFPO1FBQ0wsT0FBTyxFQUFFLFVBQVUsQ0FBQyxLQUFLLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQztRQUN4QyxjQUFjO1FBQ2QsV0FBVyxFQUFFLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLFNBQVMsQ0FBQztLQUM1QyxDQUFDO0FBQ0osQ0FBQztBQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBeUJHO0FBQ0gsTUFBTSxVQUFVLFlBQVksQ0FBQyxlQUF1QjtJQUlsRCxNQUFNLFNBQVMsR0FBRyxlQUFlLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ25ELElBQUksU0FBUyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDckIsT0FBTyxFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxDQUFDO0lBQ25FLENBQUM7SUFDRCxPQUFPO1FBQ0wsWUFBWSxFQUFFLGVBQWUsQ0FBQyxLQUFLLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQztRQUNsRCxXQUFXLEVBQUUsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsU0FBUyxDQUFDO0tBQ2pELENBQUM7QUFDSixDQUFDO0FBV0Qsb0RBQW9EO0FBQ3BELE1BQU0sVUFBVSxzQkFBc0I7SUFDcEMsT0FBTyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsQ0FBQztBQUN0QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBydW50aW1lU3RhZ2VJZCDigJQgdW5pcXVlIGlkZW50aWZpZXIgZm9yIGVhY2ggZXhlY3V0aW9uIHN0ZXAgZHVyaW5nIHRyYXZlcnNhbC5cbiAqXG4gKiBGb3JtYXQ6IFtzdWJmbG93UGF0aC9dc3RhZ2VJZCNleGVjdXRpb25JbmRleFxuICpcbiAqIENvbXBvbmVudHM6XG4gKiAgIHN0YWdlSWQgICAgICAgIOKAlCBzdGFibGUgbm9kZSBJRCBmcm9tIHRoZSBidWlsZGVyICgnY2FsbC1sbG0nLCAnc2VlZCcpXG4gKiAgIGV4ZWN1dGlvbkluZGV4IOKAlCBtb25vdG9uaWMgY291bnRlciBpbmNyZW1lbnRlZCBwZXIgc3RhZ2UgZXhlY3V0aW9uICgwLCAxLCAyLi4uKVxuICogICBzdWJmbG93UGF0aCAgICDigJQgb3B0aW9uYWwgcGF0aCBmb3Igc3ViZmxvdyBzdGFnZXMgKCdzZi10b29scycsICdzZi1vdXRlci9zZi1pbm5lcicpXG4gKlxuICogUHJvcGVydGllczpcbiAqICAgLSBVbmlxdWUgd2l0aGluIGEgcnVuIChleGVjdXRpb25JbmRleCBuZXZlciByZXBlYXRzKVxuICogICAtIEV4ZWN1dGlvbi1vcmRlcmVkIChzb3J0IGJ5IGV4ZWN1dGlvbkluZGV4ID0gZXhlY3V0aW9uIG9yZGVyKVxuICogICAtIEh1bWFuLXJlYWRhYmxlICgnc2YtdG9vbHMvZXhlY3V0ZS10b29sLWNhbGxzIzgnKVxuICogICAtIFBhcnNlYWJsZSAoc3BsaXQgb24gJyMnIGZvciBzdGFnZUlkIGFuZCBpbmRleCwgc3BsaXQgc3RhZ2VJZCBvbiAnLycgZm9yIHN1YmZsb3cgcGF0aClcbiAqXG4gKiBOYW1pbmctY29sbGlzaW9uIHdhcm5pbmdcbiAqIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICogICBUaGUgcGFyc2VkLW91dHB1dCBgLnN0YWdlSWRgIGZpZWxkIGJlbG93IGlzIHRoZSBMT0NBTCBmb3JtIChzZWdtZW50XG4gKiAgIGFmdGVyIHRoZSBsYXN0ICcvJykuIFRoaXMgaXMgTk9UIHRoZSBzYW1lIGFzIGBzcGVjLmlkYCAvIGBub2RlLmlkYFxuICogICBmb3Igc3ViZmxvdy1uZXN0ZWQgc3RhZ2VzLCB3aGljaCBjYXJyeSB0aGUgRlVMTCBwcmVmaXhlZCBmb3JtXG4gKiAgIChgJ3NmLXRvb2xzL2V4ZWN1dGUtdG9vbC1jYWxscydgKS4gVG8gY29tcGFyZSBzYWZlbHksIHVzZVxuICogICBgc3BsaXRTdGFnZUlkKHNwZWMuaWQpYCB0byBkZWNvbXBvc2UgdGhlIHByZWZpeGVkIGZvcm0gdGhlIHNhbWVcbiAqICAgd2F5IGBwYXJzZVJ1bnRpbWVTdGFnZUlkYCBkZWNvbXBvc2VzIGEgcnVudGltZVN0YWdlSWQuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYFxuICogYnVpbGRSdW50aW1lU3RhZ2VJZCgnY2FsbC1sbG0nLCA1KSAgICAgICAgICAgICAgICAgICAgLy8gJ2NhbGwtbGxtIzUnXG4gKiBidWlsZFJ1bnRpbWVTdGFnZUlkKCdleGVjdXRlLXRvb2wtY2FsbHMnLCA4LCAnc2YtdG9vbHMnKSAvLyAnc2YtdG9vbHMvZXhlY3V0ZS10b29sLWNhbGxzIzgnXG4gKiBidWlsZFJ1bnRpbWVTdGFnZUlkKCd2YWxpZGF0ZScsIDMsICdzZi1vdXRlci9zZi1pbm5lcicpICAvLyAnc2Ytb3V0ZXIvc2YtaW5uZXIvdmFsaWRhdGUjMydcbiAqIGBgYFxuICovXG5cbi8qKlxuICogQnVpbGQgYSBydW50aW1lU3RhZ2VJZCBmcm9tIGl0cyBjb21wb25lbnRzLlxuICpcbiAqIE5vdGU6IFRoZSB0cmF2ZXJzZXIgZG9lcyBOT1QgdXNlIHRoZSBzdWJmbG93UGF0aCBwYXJhbWV0ZXIg4oCUIG5vZGUuaWQgYWxyZWFkeVxuICogaW5jbHVkZXMgdGhlIHN1YmZsb3cgcHJlZml4IGZyb20gdGhlIGJ1aWxkZXIuIFRoaXMgcGFyYW1ldGVyIGV4aXN0cyBmb3IgZXh0ZXJuYWxcbiAqIGNvbnN1bWVycyBjb25zdHJ1Y3RpbmcgSURzIGZyb20gcGFyc2VkIGNvbXBvbmVudHMgKHJvdW5kLXRyaXAgdmlhIHBhcnNlUnVudGltZVN0YWdlSWQpLlxuICovXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRSdW50aW1lU3RhZ2VJZChzdGFnZUlkOiBzdHJpbmcsIGV4ZWN1dGlvbkluZGV4OiBudW1iZXIsIHN1YmZsb3dQYXRoPzogc3RyaW5nKTogc3RyaW5nIHtcbiAgY29uc3QgcHJlZml4ID0gc3ViZmxvd1BhdGggPyBgJHtzdWJmbG93UGF0aH0vYCA6ICcnO1xuICByZXR1cm4gYCR7cHJlZml4fSR7c3RhZ2VJZH0jJHtleGVjdXRpb25JbmRleH1gO1xufVxuXG4vKipcbiAqIFBhcnNlIGEgcnVudGltZVN0YWdlSWQgaW50byBpdHMgY29tcG9uZW50cy5cbiAqXG4gKiBJTVBPUlRBTlQg4oCUIG5hbWluZyBjb2xsaXNpb246IHRoZSByZXR1cm5lZCBgc3RhZ2VJZGAgaXMgdGhlIExPQ0FMXG4gKiBmb3JtICh0aGUgc2VnbWVudCBiZXR3ZWVuIHRoZSBsYXN0ICcvJyBhbmQgdGhlICcjJykuIFRoaXMgaXMgTk9UXG4gKiB0aGUgc2FtZSBhcyBgc3BlYy5pZGAgb3IgYG5vZGUuaWRgIGZvciBzdWJmbG93LW5lc3RlZCBzdGFnZXMsXG4gKiB3aGljaCBjb250YWluIHRoZSBGVUxMIHByZWZpeGVkIGZvcm0uXG4gKlxuICogICBwYXJzZVJ1bnRpbWVTdGFnZUlkKCdzZi10b29scy9leGVjdXRlLXRvb2wtY2FsbHMjOCcpLnN0YWdlSWRcbiAqICAgLy8g4oaSICdleGVjdXRlLXRvb2wtY2FsbHMnICAgKExPQ0FMKVxuICpcbiAqICAgbm9kZS5pZCAgLy8gKHBvc3QtbW91bnQsIGluIGEgc3BlYyB0aGF0IGNvbnRhaW5zIHN1YmZsb3dzKVxuICogICAvLyDihpIgJ3NmLXRvb2xzL2V4ZWN1dGUtdG9vbC1jYWxscycgICAoRlVMTCBwcmVmaXhlZClcbiAqXG4gKiBUbyBjb21wYXJlIHRoZXNlIHR3byBzYWZlbHksIHVzZSBgc3BsaXRTdGFnZUlkKG5vZGUuaWQpYCB0byBnZXRcbiAqIHRoZSBsb2NhbCBmb3JtLCBPUiByZWNvbnN0cnVjdCB0aGUgZnVsbCBmb3JtIHZpYVxuICogYChzdWJmbG93UGF0aCA/IHN1YmZsb3dQYXRoICsgJy8nIDogJycpICsgc3RhZ2VJZGAuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZVJ1bnRpbWVTdGFnZUlkKHJ1bnRpbWVTdGFnZUlkOiBzdHJpbmcpOiB7XG4gIHN0YWdlSWQ6IHN0cmluZztcbiAgZXhlY3V0aW9uSW5kZXg6IG51bWJlcjtcbiAgc3ViZmxvd1BhdGg6IHN0cmluZyB8IHVuZGVmaW5lZDtcbn0ge1xuICBjb25zdCBoYXNoSWR4ID0gcnVudGltZVN0YWdlSWQubGFzdEluZGV4T2YoJyMnKTtcbiAgaWYgKGhhc2hJZHggPT09IC0xKSB7XG4gICAgcmV0dXJuIHsgc3RhZ2VJZDogcnVudGltZVN0YWdlSWQsIGV4ZWN1dGlvbkluZGV4OiAwLCBzdWJmbG93UGF0aDogdW5kZWZpbmVkIH07XG4gIH1cblxuICBjb25zdCBiZWZvcmVIYXNoID0gcnVudGltZVN0YWdlSWQuc2xpY2UoMCwgaGFzaElkeCk7XG4gIGNvbnN0IGV4ZWN1dGlvbkluZGV4ID0gcGFyc2VJbnQocnVudGltZVN0YWdlSWQuc2xpY2UoaGFzaElkeCArIDEpLCAxMCk7XG5cbiAgY29uc3QgbGFzdFNsYXNoID0gYmVmb3JlSGFzaC5sYXN0SW5kZXhPZignLycpO1xuICBpZiAobGFzdFNsYXNoID09PSAtMSkge1xuICAgIHJldHVybiB7IHN0YWdlSWQ6IGJlZm9yZUhhc2gsIGV4ZWN1dGlvbkluZGV4LCBzdWJmbG93UGF0aDogdW5kZWZpbmVkIH07XG4gIH1cblxuICByZXR1cm4ge1xuICAgIHN0YWdlSWQ6IGJlZm9yZUhhc2guc2xpY2UobGFzdFNsYXNoICsgMSksXG4gICAgZXhlY3V0aW9uSW5kZXgsXG4gICAgc3ViZmxvd1BhdGg6IGJlZm9yZUhhc2guc2xpY2UoMCwgbGFzdFNsYXNoKSxcbiAgfTtcbn1cblxuLyoqXG4gKiBEZWNvbXBvc2UgYSAocG9zc2libHkgcHJlZml4ZWQpIHN0YWdlIGlkIGludG8gaXRzIGNvbXBvbmVudHMuXG4gKlxuICogVXNlIHRoaXMgd2hlbiB5b3UgaGF2ZSBhbiBpZCBXSVRIT1VUIHRoZSBgI05gIGV4ZWN1dGlvbiBzdWZmaXggYW5kXG4gKiBuZWVkIHRoZSBsb2NhbCBzdGFnZSBuYW1lIGFuZC9vciB0aGUgc3ViZmxvdyBwYXRoLiBDb21tb24gc291cmNlc1xuICogb2Ygc3VjaCBpZHM6XG4gKiAgIC0gYHNwZWMuaWRgIChwb3N0LW1vdW50IHRoZSBpZCBpbmNsdWRlcyBhbnkgc3ViZmxvdyBwcmVmaXgpXG4gKiAgIC0gYENvbW1pdEJ1bmRsZS5zdGFnZUlkYCAocG9zdC1tb3VudCBpZClcbiAqICAgLSBgbm9kZS5pZGAgZnJvbSB4eWZsb3cgbm9kZXMgYnVpbHQgb2ZmIHRoZSBzcGVjXG4gKiAgIC0gdGhlIHNlZ21lbnQgb2YgYHJ1bnRpbWVTdGFnZUlkYCBCRUZPUkUgdGhlIGAjYCAodXNlXG4gKiAgICAgYHBhcnNlUnVudGltZVN0YWdlSWRgIGRpcmVjdGx5IGZvciBmdWxsIHJ1bnRpbWVTdGFnZUlkIHN0cmluZ3MpXG4gKlxuICogTWlycm9ycyB0aGUgZGVjb21wb3NpdGlvbiBgcGFyc2VSdW50aW1lU3RhZ2VJZGAgcGVyZm9ybXMgb24gdGhlXG4gKiBzdGFnZUlkIHBvcnRpb24gb2YgYSBydW50aW1lU3RhZ2VJZCwgc28gdGhlIHR3byBoZWxwZXJzIHN0YXkgaW5cbiAqIGxvY2tzdGVwIG9uIG5hbWluZyBhbmQgYmVoYXZpb3IuXG4gKlxuICogQGV4YW1wbGVcbiAqIHNwbGl0U3RhZ2VJZCgnc2YtdG9vbHMvZXhlY3V0ZS10b29sLWNhbGxzJylcbiAqIC8vIOKGkiB7IGxvY2FsU3RhZ2VJZDogJ2V4ZWN1dGUtdG9vbC1jYWxscycsIHN1YmZsb3dQYXRoOiAnc2YtdG9vbHMnIH1cbiAqXG4gKiBzcGxpdFN0YWdlSWQoJ2V4ZWN1dGUtdG9vbC1jYWxscycpXG4gKiAvLyDihpIgeyBsb2NhbFN0YWdlSWQ6ICdleGVjdXRlLXRvb2wtY2FsbHMnLCBzdWJmbG93UGF0aDogdW5kZWZpbmVkIH1cbiAqXG4gKiBzcGxpdFN0YWdlSWQoJ3NmLW91dGVyL3NmLWlubmVyL3ZhbGlkYXRlJylcbiAqIC8vIOKGkiB7IGxvY2FsU3RhZ2VJZDogJ3ZhbGlkYXRlJywgc3ViZmxvd1BhdGg6ICdzZi1vdXRlci9zZi1pbm5lcicgfVxuICovXG5leHBvcnQgZnVuY3Rpb24gc3BsaXRTdGFnZUlkKHByZWZpeGVkU3RhZ2VJZDogc3RyaW5nKToge1xuICBsb2NhbFN0YWdlSWQ6IHN0cmluZztcbiAgc3ViZmxvd1BhdGg6IHN0cmluZyB8IHVuZGVmaW5lZDtcbn0ge1xuICBjb25zdCBsYXN0U2xhc2ggPSBwcmVmaXhlZFN0YWdlSWQubGFzdEluZGV4T2YoJy8nKTtcbiAgaWYgKGxhc3RTbGFzaCA9PT0gLTEpIHtcbiAgICByZXR1cm4geyBsb2NhbFN0YWdlSWQ6IHByZWZpeGVkU3RhZ2VJZCwgc3ViZmxvd1BhdGg6IHVuZGVmaW5lZCB9O1xuICB9XG4gIHJldHVybiB7XG4gICAgbG9jYWxTdGFnZUlkOiBwcmVmaXhlZFN0YWdlSWQuc2xpY2UobGFzdFNsYXNoICsgMSksXG4gICAgc3ViZmxvd1BhdGg6IHByZWZpeGVkU3RhZ2VJZC5zbGljZSgwLCBsYXN0U2xhc2gpLFxuICB9O1xufVxuXG4vKipcbiAqIFNoYXJlZCBtdXRhYmxlIGNvdW50ZXIgZm9yIGV4ZWN1dGlvbiBpbmRleC5cbiAqIFBhc3NlZCBieSByZWZlcmVuY2UgdG8gY2hpbGQgdHJhdmVyc2VycyAoc3ViZmxvd3MpIHNvIHRoZXlcbiAqIGNvbnRpbnVlIHRoZSBnbG9iYWwgbnVtYmVyaW5nIGluc3RlYWQgb2YgcmVzdGFydGluZyBhdCAwLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEV4ZWN1dGlvbkNvdW50ZXIge1xuICB2YWx1ZTogbnVtYmVyO1xufVxuXG4vKiogQ3JlYXRlIGEgbmV3IGV4ZWN1dGlvbiBjb3VudGVyIHN0YXJ0aW5nIGF0IDAuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlRXhlY3V0aW9uQ291bnRlcigpOiBFeGVjdXRpb25Db3VudGVyIHtcbiAgcmV0dXJuIHsgdmFsdWU6IDAgfTtcbn1cbiJdfQ==
|