@yuuvis/client-shell-core 2.0.0-beta.5 → 2.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.
@@ -80,10 +80,10 @@ export class CommandPaletteComponent {
80
80
  ngAfterViewInit() {
81
81
  this.onInputBlur();
82
82
  }
83
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: CommandPaletteComponent, deps: [{ token: i1.CommandPaletteService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
84
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.1", type: CommandPaletteComponent, isStandalone: true, selector: "yuv-command-palette", outputs: { searchTermChange: "searchTermChange" }, host: { listeners: { "keydown.arrowDown": "onArrowDown($event)", "keydown.arrowUp": "onArrowUp($event)", "keydown.Enter": "onEnter($event)" } }, ngImport: i0, template: "@if (!disabledCauses.length) {\n <div class=\"search\">\n <input type=\"text\" autofocus [placeholder]=\"placeholder\" [(ngModel)]=\"searchTerm\" (blur)=\"onInputBlur()\" (ngModelChange)=\"onTermChange($event)\" />\n @if (message) {\n <div class=\"message\">{{ message }}</div>\n }\n </div>\n\n <div class=\"commands\">\n @for (c of commands; track c.id; let i = $index) {\n <div class=\"command\" [ngStyle]=\"{ '--i': i }\" [ngClass]=\"{ current: i === currentCommandIndex }\" (click)=\"triggerCommand(c)\">\n <div class=\"label\" [innerHTML]=\"highlight(c.label)\"></div>\n <div class=\"desc\" [innerHTML]=\"highlight(c?.description)\"></div>\n </div>\n }\n </div>\n} @else {\n <div class=\"disabled\">\n @for (c of disabledCauses; track c.id) {\n <div class=\"disabled-cause\">{{ c.message }}</div>\n }\n </div>\n}\n", styles: [":host{display:grid;grid-template-rows:auto 2fr;grid-template-columns:1fr;grid-template-areas:\"search\" \"commands\";overflow:hidden}:host .search{display:flex;flex-flow:column;align-items:center;justify-content:flex-end;grid-area:search}:host .search input{background-color:transparent;border:0;outline:0;font-size:2em;padding:var(--ymt-spacing-m);color:var(--ymt-text-color);border-bottom:1px solid var(--ymt-outline-variant)}:host .search input::placeholder{font-size:.6em;opacity:.4}:host .search .message{background:var(--ymt-primary);margin:2px;padding:.2em .5em;border-radius:2px;box-sizing:border-box}:host .commands{box-sizing:border-box;grid-area:commands;overflow-y:auto;display:flex;flex-flow:column;-ms-overflow-style:none;scrollbar-width:none}:host .commands::-webkit-scrollbar{display:none}:host .commands .command{opacity:0;animation:commandEnter .15s ease-in-out .2s forwards;animation-delay:calc(var(--i) * 50ms);width:var(--cmp-width);min-width:var(--cmp-min-width);box-sizing:border-box;padding:var(--ymt-spacing-m);transition:background-color .2s ease-in-out;cursor:pointer;border-radius:2px}:host .commands .command.current{background-color:var(--ymt-focus-background)}:host .commands .command:not(.current):hover{background-color:var(--ymt-hover-background)}:host .commands .command ::ng-deep mark{position:relative;display:inline-block;background-color:transparent;color:var(--ymt-text-color)}:host .commands .command ::ng-deep mark:after{content:\"\";position:absolute;bottom:-3px;height:2px;border-radius:1px;background-color:var(--ymt-text-color-subtle);left:0;right:0}:host .commands .command .desc{font:var(--ymt-font-body-subtle);color:var(--ymt-text-color-subtle);margin-top:.5em}:host .disabled{grid-row:1/span 2;display:flex;flex-flow:column;align-items:center;justify-content:center}@keyframes commandEnter{0%{opacity:0}to{opacity:1}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
83
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.12", ngImport: i0, type: CommandPaletteComponent, deps: [{ token: i1.CommandPaletteService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
84
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.12", type: CommandPaletteComponent, isStandalone: true, selector: "yuv-command-palette", outputs: { searchTermChange: "searchTermChange" }, host: { listeners: { "keydown.arrowDown": "onArrowDown($event)", "keydown.arrowUp": "onArrowUp($event)", "keydown.Enter": "onEnter($event)" } }, ngImport: i0, template: "@if (!disabledCauses.length) {\n <div class=\"search\">\n <input type=\"text\" autofocus [placeholder]=\"placeholder\" [(ngModel)]=\"searchTerm\" (blur)=\"onInputBlur()\" (ngModelChange)=\"onTermChange($event)\" />\n @if (message) {\n <div class=\"message\">{{ message }}</div>\n }\n </div>\n\n <div class=\"commands\">\n @for (c of commands; track c.id; let i = $index) {\n <div class=\"command\" [ngStyle]=\"{ '--i': i }\" [ngClass]=\"{ current: i === currentCommandIndex }\" (click)=\"triggerCommand(c)\">\n <div class=\"label\" [innerHTML]=\"highlight(c.label)\"></div>\n <div class=\"desc\" [innerHTML]=\"highlight(c?.description)\"></div>\n </div>\n }\n </div>\n} @else {\n <div class=\"disabled\">\n @for (c of disabledCauses; track c.id) {\n <div class=\"disabled-cause\">{{ c.message }}</div>\n }\n </div>\n}\n", styles: [":host{display:grid;grid-template-rows:auto 2fr;grid-template-columns:1fr;grid-template-areas:\"search\" \"commands\";overflow:hidden}:host .search{display:flex;flex-flow:column;align-items:center;justify-content:flex-end;grid-area:search}:host .search input{background-color:transparent;border:0;outline:0;font-size:2em;padding:var(--ymt-spacing-m);color:var(--ymt-text-color);border-bottom:1px solid var(--ymt-outline-variant)}:host .search input::placeholder{font-size:.6em;opacity:.4}:host .search .message{background:var(--ymt-primary);margin:2px;padding:.2em .5em;border-radius:2px;box-sizing:border-box}:host .commands{box-sizing:border-box;grid-area:commands;overflow-y:auto;display:flex;flex-flow:column;-ms-overflow-style:none;scrollbar-width:none}:host .commands::-webkit-scrollbar{display:none}:host .commands .command{opacity:0;animation:commandEnter .15s ease-in-out .2s forwards;animation-delay:calc(var(--i) * 50ms);width:var(--cmp-width);min-width:var(--cmp-min-width);box-sizing:border-box;padding:var(--ymt-spacing-m);transition:background-color .2s ease-in-out;cursor:pointer;border-radius:2px}:host .commands .command.current{background-color:var(--ymt-focus-background)}:host .commands .command:not(.current):hover{background-color:var(--ymt-hover-background)}:host .commands .command ::ng-deep mark{position:relative;display:inline-block;background-color:transparent;color:var(--ymt-text-color)}:host .commands .command ::ng-deep mark:after{content:\"\";position:absolute;bottom:-3px;height:2px;border-radius:1px;background-color:var(--ymt-text-color-subtle);left:0;right:0}:host .commands .command .desc{font:var(--ymt-font-body-subtle);color:var(--ymt-text-color-subtle);margin-top:.5em}:host .disabled{grid-row:1/span 2;display:flex;flex-flow:column;align-items:center;justify-content:center}@keyframes commandEnter{0%{opacity:0}to{opacity:1}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
85
85
  }
86
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: CommandPaletteComponent, decorators: [{
86
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.12", ngImport: i0, type: CommandPaletteComponent, decorators: [{
87
87
  type: Component,
88
88
  args: [{ selector: 'yuv-command-palette', standalone: true, imports: [CommonModule, FormsModule], template: "@if (!disabledCauses.length) {\n <div class=\"search\">\n <input type=\"text\" autofocus [placeholder]=\"placeholder\" [(ngModel)]=\"searchTerm\" (blur)=\"onInputBlur()\" (ngModelChange)=\"onTermChange($event)\" />\n @if (message) {\n <div class=\"message\">{{ message }}</div>\n }\n </div>\n\n <div class=\"commands\">\n @for (c of commands; track c.id; let i = $index) {\n <div class=\"command\" [ngStyle]=\"{ '--i': i }\" [ngClass]=\"{ current: i === currentCommandIndex }\" (click)=\"triggerCommand(c)\">\n <div class=\"label\" [innerHTML]=\"highlight(c.label)\"></div>\n <div class=\"desc\" [innerHTML]=\"highlight(c?.description)\"></div>\n </div>\n }\n </div>\n} @else {\n <div class=\"disabled\">\n @for (c of disabledCauses; track c.id) {\n <div class=\"disabled-cause\">{{ c.message }}</div>\n }\n </div>\n}\n", styles: [":host{display:grid;grid-template-rows:auto 2fr;grid-template-columns:1fr;grid-template-areas:\"search\" \"commands\";overflow:hidden}:host .search{display:flex;flex-flow:column;align-items:center;justify-content:flex-end;grid-area:search}:host .search input{background-color:transparent;border:0;outline:0;font-size:2em;padding:var(--ymt-spacing-m);color:var(--ymt-text-color);border-bottom:1px solid var(--ymt-outline-variant)}:host .search input::placeholder{font-size:.6em;opacity:.4}:host .search .message{background:var(--ymt-primary);margin:2px;padding:.2em .5em;border-radius:2px;box-sizing:border-box}:host .commands{box-sizing:border-box;grid-area:commands;overflow-y:auto;display:flex;flex-flow:column;-ms-overflow-style:none;scrollbar-width:none}:host .commands::-webkit-scrollbar{display:none}:host .commands .command{opacity:0;animation:commandEnter .15s ease-in-out .2s forwards;animation-delay:calc(var(--i) * 50ms);width:var(--cmp-width);min-width:var(--cmp-min-width);box-sizing:border-box;padding:var(--ymt-spacing-m);transition:background-color .2s ease-in-out;cursor:pointer;border-radius:2px}:host .commands .command.current{background-color:var(--ymt-focus-background)}:host .commands .command:not(.current):hover{background-color:var(--ymt-hover-background)}:host .commands .command ::ng-deep mark{position:relative;display:inline-block;background-color:transparent;color:var(--ymt-text-color)}:host .commands .command ::ng-deep mark:after{content:\"\";position:absolute;bottom:-3px;height:2px;border-radius:1px;background-color:var(--ymt-text-color-subtle);left:0;right:0}:host .commands .command .desc{font:var(--ymt-font-body-subtle);color:var(--ymt-text-color-subtle);margin-top:.5em}:host .disabled{grid-row:1/span 2;display:flex;flex-flow:column;align-items:center;justify-content:center}@keyframes commandEnter{0%{opacity:0}to{opacity:1}}\n"] }]
89
89
  }], ctorParameters: () => [{ type: i1.CommandPaletteService }, { type: i0.ElementRef }], propDecorators: { searchTermChange: [{
@@ -98,4 +98,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.1", ngImpor
98
98
  type: HostListener,
99
99
  args: ['keydown.Enter', ['$event']]
100
100
  }] } });
101
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWFuZC1wYWxldHRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMveXV1dmlzL2NsaWVudC1zaGVsbC1jb3JlL3NyYy9saWIvc2VydmljZXMvY29tbWFuZC1wYWxldHRlL2NvbW1hbmQtcGFsZXR0ZS9jb21tYW5kLXBhbGV0dGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy95dXV2aXMvY2xpZW50LXNoZWxsLWNvcmUvc3JjL2xpYi9zZXJ2aWNlcy9jb21tYW5kLXBhbGV0dGUvY29tbWFuZC1wYWxldHRlL2NvbW1hbmQtcGFsZXR0ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFpQixTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pILE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU3QyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7Ozs7QUFTbkUsTUFBTSxPQUFPLHVCQUF1QjtJQUdsQyxJQUFJLG1CQUFtQixDQUFDLENBQVM7UUFDL0IsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDakMsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNSLENBQUM7YUFBTSxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUNqQixDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1FBQy9CLENBQUM7UUFDRCxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQztRQUVkLFVBQVUsQ0FBQyxH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QyxPQUFPLENBQUMsRUFBRSxFQUFFLGlCQUFpQixDQUFDLENBQUM7UUFDNUMsQ0FBQzthQUFNLENBQUM7WUFDTixPQUFPLEdBQUcsQ0FBQztRQUNiLENBQUM7SUFDSCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUMvQyxJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQzs4R0FuRlUsdUJBQXVCO2tHQUF2Qix1QkFBdUIsbVJDYnBDLGszQkF1QkEsdTRERGRZLFlBQVksaU5BQUUsV0FBVzs7MkZBSXhCLHVCQUF1QjtrQkFQbkMsU0FBUzsrQkFDRSxxQkFBcUIsY0FDbkIsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLFdBQVcsQ0FBQzttSEE4QjFCLGdCQUFnQjtzQkFBekIsTUFBTTtnQkFFd0MsV0FBVztzQkFBekQsWUFBWTt1QkFBQyxtQkFBbUIsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFLQSxTQUFTO3NCQUFyRCxZQUFZO3VCQUFDLGlCQUFpQixFQUFFLENBQUMsUUFBUSxDQUFDO2dCQUtBLE9BQU87c0JBQWpELFlBQVk7dUJBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IENvbW1hbmRQYWxldHRlQ29tbWFuZCwgRGlzYWJsZWRDYXVzZSB9IGZyb20gJy4uL2NvbW1hbmQtcGFsZXR0ZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQ29tbWFuZFBhbGV0dGVTZXJ2aWNlIH0gZnJvbSAnLi4vY29tbWFuZC1wYWxldHRlLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd5dXYtY29tbWFuZC1wYWxldHRlJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgRm9ybXNNb2R1bGVdLFxuICB0ZW1wbGF0ZVVybDogJy4vY29tbWFuZC1wYWxldHRlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2NvbW1hbmQtcGFsZXR0ZS5jb21wb25lbnQuc2Nzcydcbn0pXG5leHBvcnQgY2xhc3MgQ29tbWFuZFBhbGV0dGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQge1xuICBwcml2YXRlIF9jb21tYW5kczogQ29tbWFuZFBhbGV0dGVDb21tYW5kW10gPSBbXTtcbiAgcHJpdmF0ZSBfY2NpID0gLTE7XG4gIHNldCBjdXJyZW50Q29tbWFuZEluZGV4KGk6IG51bWJlcikge1xuICAgIGlmIChpID4gdGhpcy5jb21tYW5kcy5sZW5ndGggLSAxKSB7XG4gICAgICBpID0gMDtcbiAgICB9IGVsc2UgaWYgKGkgPCAwKSB7XG4gICAgICBpID0gdGhpcy5jb21tYW5kcy5sZW5ndGggLSAxO1xuICAgIH1cbiAgICB0aGlzLl9jY2kgPSBpO1xuXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBjb25zdCBlbCA9IHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCcuY3VycmVudCcpO1xuICAgICAgaWYgKGVsKSBlbC5zY3JvbGxJbnRvVmlldyhmYWxzZSk7XG4gICAgfSwgMCk7XG4gIH1cbiAgZ2V0IGN1cnJlbnRDb21tYW5kSW5kZXgoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2NjaTtcbiAgfVxuICBjb21tYW5kczogQ29tbWFuZFBhbGV0dGVDb21tYW5kW10gPSBbXTtcbiAgc2VhcmNoVGVybSA9ICcnO1xuICBrZWVwRm9jdXMgPSB0cnVlO1xuICBtZXNzYWdlOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIGRpc2FibGVkQ2F1c2VzOiBEaXNhYmxlZENhdXNlW10gPSB0aGlzLmNtZFNlcnZpY2UuZGlzYWJsZWRDYXVzZXM7XG4gIHBsYWNlaG9sZGVyOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgQE91dHB1dCgpIHNlYXJjaFRlcm1DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICBASG9zdExpc3RlbmVyKCdrZXlkb3duLmFycm93RG93bicsIFsnJGV2ZW50J10pIG9uQXJyb3dEb3duKGU6IEtleWJvYXJkRXZlbnQpIHtcbiAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB0aGlzLmN1cnJlbnRDb21tYW5kSW5kZXgrKztcbiAgfVxuICBASG9zdExpc3RlbmVyKCdrZXlkb3duLmFycm93VXAnLCBbJyRldmVudCddKSBvbkFycm93VXAoZTogS2V5Ym9hcmRFdmVudCkge1xuICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIHRoaXMuY3VycmVudENvbW1hbmRJbmRleC0tO1xuICB9XG4gIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24uRW50ZXInLCBbJyRldmVudCddKSBvbkVudGVyKCkge1xuICAgIHRoaXMudHJpZ2dlckNvbW1hbmQoKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgY21kU2VydmljZTogQ29tbWFuZFBhbGV0dGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgZWxSZWY6IEVsZW1lbnRSZWZcbiAgKSB7XG4gICAgdGhpcy5wbGFjZWhvbGRlciA9IHRoaXMuY21kU2VydmljZS5wbGFjZWhvbGRlcjtcbiAgfVxuXG4gIG9uVGVybUNoYW5nZSh0ZXJtOiBzdHJpbmcpIHtcbiAgICBjb25zdCByZWdFeHAgPSBuZXcgUmVnRXhwKHRlcm0ucmVwbGFjZSgvWy4qKz9eJHt9KCl8W1xcXVxcXFxdL2csICdcXFxcJCYnKSwgJ2dpJyk7XG4gICAgdGhpcy5jb21tYW5kcyA9IFsuLi50aGlzLl9jb21tYW5kcy5maWx0ZXIoKGMpID0+IGMubGFiZWwubWF0Y2gocmVnRXhwKSldO1xuICAgIHRoaXMuY3VycmVudENvbW1hbmRJbmRleCA9IDA7XG4gIH1cblxuICBvbklucHV0Qmx1cigpIHtcbiAgICBpZiAodGhpcy5rZWVwRm9jdXMgJiYgIXRoaXMuZGlzYWJsZWRDYXVzZXMubGVuZ3RoKSB7XG4gICAgICB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignaW5wdXQnKS5mb2N1cygpO1xuICAgIH1cbiAgfVxuXG4gIHRyaWdnZXJDb21tYW5kKGNvbW1hbmQ/OiBDb21tYW5kUGFsZXR0ZUNvbW1hbmQpIHtcbiAgICBpZiAoY29tbWFuZCB8fCB0aGlzLmNvbW1hbmRzW3RoaXMuY3VycmVudENvbW1hbmRJbmRleF0pIHtcbiAgICAgIHRoaXMuY21kU2VydmljZS50cmlnZ2VyQ29tbWFuZChjb21tYW5kIHx8IHRoaXMuY29tbWFuZHNbdGhpcy5jdXJyZW50Q29tbWFuZEluZGV4XSk7XG4gICAgfVxuICB9XG5cbiAgaGlnaGxpZ2h0KHR4dDogc3RyaW5nIHwgdW5kZWZpbmVkKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICBpZiAodHh0KSB7XG4gICAgICBjb25zdCByZSA9IG5ldyBSZWdFeHAodGhpcy5zZWFyY2hUZXJtLnJlcGxhY2UoL1suKis/XiR7fSgpfFtcXF1cXFxcXS9nLCAnXFxcXCQmJyksICdnaScpO1xuICAgICAgcmV0dXJuIHR4dC5yZXBsYWNlKHJlLCAnPG1hcms+JCY8L21hcms+Jyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0eHQ7XG4gICAgfVxuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fY29tbWFuZHMgPSB0aGlzLmNtZFNlcnZpY2UuZ2V0Q29tbWFuZHMoKTtcbiAgICB0aGlzLmNvbW1hbmRzID0gWy4uLnRoaXMuX2NvbW1hbmRzXTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLm9uSW5wdXRCbHVyKCk7XG4gIH1cbn1cbiIsIkBpZiAoIWRpc2FibGVkQ2F1c2VzLmxlbmd0aCkge1xuICA8ZGl2IGNsYXNzPVwic2VhcmNoXCI+XG4gICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgYXV0b2ZvY3VzIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiIFsobmdNb2RlbCldPVwic2VhcmNoVGVybVwiIChibHVyKT1cIm9uSW5wdXRCbHVyKClcIiAobmdNb2RlbENoYW5nZSk9XCJvblRlcm1DaGFuZ2UoJGV2ZW50KVwiIC8+XG4gICAgQGlmIChtZXNzYWdlKSB7XG4gICAgICA8ZGl2IGNsYXNzPVwibWVzc2FnZVwiPnt7IG1lc3NhZ2UgfX08L2Rpdj5cbiAgICB9XG4gIDwvZGl2PlxuXG4gIDxkaXYgY2xhc3M9XCJjb21tYW5kc1wiPlxuICAgIEBmb3IgKGMgb2YgY29tbWFuZHM7IHRyYWNrIGMuaWQ7IGxldCBpID0gJGluZGV4KSB7XG4gICAgICA8ZGl2IGNsYXNzPVwiY29tbWFuZFwiIFtuZ1N0eWxlXT1cInsgJy0taSc6IGkgfVwiIFtuZ0NsYXNzXT1cInsgY3VycmVudDogaSA9PT0gY3VycmVudENvbW1hbmRJbmRleCB9XCIgKGNsaWNrKT1cInRyaWdnZXJDb21tYW5kKGMpXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJsYWJlbFwiIFtpbm5lckhUTUxdPVwiaGlnaGxpZ2h0KGMubGFiZWwpXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkZXNjXCIgW2lubmVySFRNTF09XCJoaWdobGlnaHQoYz8uZGVzY3JpcHRpb24pXCI+PC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICB9XG4gIDwvZGl2PlxufSBAZWxzZSB7XG4gIDxkaXYgY2xhc3M9XCJkaXNhYmxlZFwiPlxuICAgIEBmb3IgKGMgb2YgZGlzYWJsZWRDYXVzZXM7IHRyYWNrIGMuaWQpIHtcbiAgICAgIDxkaXYgY2xhc3M9XCJkaXNhYmxlZC1jYXVzZVwiPnt7IGMubWVzc2FnZSB9fTwvZGl2PlxuICAgIH1cbiAgPC9kaXY+XG59XG4iXX0=
101
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWFuZC1wYWxldHRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMveXV1dmlzL2NsaWVudC1zaGVsbC1jb3JlL3NyYy9saWIvc2VydmljZXMvY29tbWFuZC1wYWxldHRlL2NvbW1hbmQtcGFsZXR0ZS9jb21tYW5kLXBhbGV0dGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy95dXV2aXMvY2xpZW50LXNoZWxsLWNvcmUvc3JjL2xpYi9zZXJ2aWNlcy9jb21tYW5kLXBhbGV0dGUvY29tbWFuZC1wYWxldHRlL2NvbW1hbmQtcGFsZXR0ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFpQixTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pILE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU3QyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7Ozs7QUFTbkUsTUFBTSxPQUFPLHVCQUF1QjtJQUdsQyxJQUFJLG1CQUFtQixDQUFDLENBQVM7UUFDL0IsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDakMsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNSLENBQUM7YUFBTSxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUNqQixDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1FBQy9CLENBQUM7UUFDRCxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQztRQUVkLFVBQVUsQ0FBQyxH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QyxPQUFPLENBQUMsRUFBRSxFQUFFLGlCQUFpQixDQUFDLENBQUM7UUFDNUMsQ0FBQzthQUFNLENBQUM7WUFDTixPQUFPLEdBQUcsQ0FBQztRQUNiLENBQUM7SUFDSCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUMvQyxJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQzsrR0FuRlUsdUJBQXVCO21HQUF2Qix1QkFBdUIsbVJDYnBDLGszQkF1QkEsdTRERGRZLFlBQVksaU5BQUUsV0FBVzs7NEZBSXhCLHVCQUF1QjtrQkFQbkMsU0FBUzsrQkFDRSxxQkFBcUIsY0FDbkIsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLFdBQVcsQ0FBQzttSEE4QjFCLGdCQUFnQjtzQkFBekIsTUFBTTtnQkFFd0MsV0FBVztzQkFBekQsWUFBWTt1QkFBQyxtQkFBbUIsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFLQSxTQUFTO3NCQUFyRCxZQUFZO3VCQUFDLGlCQUFpQixFQUFFLENBQUMsUUFBUSxDQUFDO2dCQUtBLE9BQU87c0JBQWpELFlBQVk7dUJBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IENvbW1hbmRQYWxldHRlQ29tbWFuZCwgRGlzYWJsZWRDYXVzZSB9IGZyb20gJy4uL2NvbW1hbmQtcGFsZXR0ZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQ29tbWFuZFBhbGV0dGVTZXJ2aWNlIH0gZnJvbSAnLi4vY29tbWFuZC1wYWxldHRlLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd5dXYtY29tbWFuZC1wYWxldHRlJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgRm9ybXNNb2R1bGVdLFxuICB0ZW1wbGF0ZVVybDogJy4vY29tbWFuZC1wYWxldHRlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2NvbW1hbmQtcGFsZXR0ZS5jb21wb25lbnQuc2Nzcydcbn0pXG5leHBvcnQgY2xhc3MgQ29tbWFuZFBhbGV0dGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQge1xuICBwcml2YXRlIF9jb21tYW5kczogQ29tbWFuZFBhbGV0dGVDb21tYW5kW10gPSBbXTtcbiAgcHJpdmF0ZSBfY2NpID0gLTE7XG4gIHNldCBjdXJyZW50Q29tbWFuZEluZGV4KGk6IG51bWJlcikge1xuICAgIGlmIChpID4gdGhpcy5jb21tYW5kcy5sZW5ndGggLSAxKSB7XG4gICAgICBpID0gMDtcbiAgICB9IGVsc2UgaWYgKGkgPCAwKSB7XG4gICAgICBpID0gdGhpcy5jb21tYW5kcy5sZW5ndGggLSAxO1xuICAgIH1cbiAgICB0aGlzLl9jY2kgPSBpO1xuXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBjb25zdCBlbCA9IHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCcuY3VycmVudCcpO1xuICAgICAgaWYgKGVsKSBlbC5zY3JvbGxJbnRvVmlldyhmYWxzZSk7XG4gICAgfSwgMCk7XG4gIH1cbiAgZ2V0IGN1cnJlbnRDb21tYW5kSW5kZXgoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2NjaTtcbiAgfVxuICBjb21tYW5kczogQ29tbWFuZFBhbGV0dGVDb21tYW5kW10gPSBbXTtcbiAgc2VhcmNoVGVybSA9ICcnO1xuICBrZWVwRm9jdXMgPSB0cnVlO1xuICBtZXNzYWdlOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIGRpc2FibGVkQ2F1c2VzOiBEaXNhYmxlZENhdXNlW10gPSB0aGlzLmNtZFNlcnZpY2UuZGlzYWJsZWRDYXVzZXM7XG4gIHBsYWNlaG9sZGVyOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgQE91dHB1dCgpIHNlYXJjaFRlcm1DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICBASG9zdExpc3RlbmVyKCdrZXlkb3duLmFycm93RG93bicsIFsnJGV2ZW50J10pIG9uQXJyb3dEb3duKGU6IEtleWJvYXJkRXZlbnQpIHtcbiAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB0aGlzLmN1cnJlbnRDb21tYW5kSW5kZXgrKztcbiAgfVxuICBASG9zdExpc3RlbmVyKCdrZXlkb3duLmFycm93VXAnLCBbJyRldmVudCddKSBvbkFycm93VXAoZTogS2V5Ym9hcmRFdmVudCkge1xuICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIHRoaXMuY3VycmVudENvbW1hbmRJbmRleC0tO1xuICB9XG4gIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24uRW50ZXInLCBbJyRldmVudCddKSBvbkVudGVyKCkge1xuICAgIHRoaXMudHJpZ2dlckNvbW1hbmQoKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgY21kU2VydmljZTogQ29tbWFuZFBhbGV0dGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgZWxSZWY6IEVsZW1lbnRSZWZcbiAgKSB7XG4gICAgdGhpcy5wbGFjZWhvbGRlciA9IHRoaXMuY21kU2VydmljZS5wbGFjZWhvbGRlcjtcbiAgfVxuXG4gIG9uVGVybUNoYW5nZSh0ZXJtOiBzdHJpbmcpIHtcbiAgICBjb25zdCByZWdFeHAgPSBuZXcgUmVnRXhwKHRlcm0ucmVwbGFjZSgvWy4qKz9eJHt9KCl8W1xcXVxcXFxdL2csICdcXFxcJCYnKSwgJ2dpJyk7XG4gICAgdGhpcy5jb21tYW5kcyA9IFsuLi50aGlzLl9jb21tYW5kcy5maWx0ZXIoKGMpID0+IGMubGFiZWwubWF0Y2gocmVnRXhwKSldO1xuICAgIHRoaXMuY3VycmVudENvbW1hbmRJbmRleCA9IDA7XG4gIH1cblxuICBvbklucHV0Qmx1cigpIHtcbiAgICBpZiAodGhpcy5rZWVwRm9jdXMgJiYgIXRoaXMuZGlzYWJsZWRDYXVzZXMubGVuZ3RoKSB7XG4gICAgICB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignaW5wdXQnKS5mb2N1cygpO1xuICAgIH1cbiAgfVxuXG4gIHRyaWdnZXJDb21tYW5kKGNvbW1hbmQ/OiBDb21tYW5kUGFsZXR0ZUNvbW1hbmQpIHtcbiAgICBpZiAoY29tbWFuZCB8fCB0aGlzLmNvbW1hbmRzW3RoaXMuY3VycmVudENvbW1hbmRJbmRleF0pIHtcbiAgICAgIHRoaXMuY21kU2VydmljZS50cmlnZ2VyQ29tbWFuZChjb21tYW5kIHx8IHRoaXMuY29tbWFuZHNbdGhpcy5jdXJyZW50Q29tbWFuZEluZGV4XSk7XG4gICAgfVxuICB9XG5cbiAgaGlnaGxpZ2h0KHR4dDogc3RyaW5nIHwgdW5kZWZpbmVkKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICBpZiAodHh0KSB7XG4gICAgICBjb25zdCByZSA9IG5ldyBSZWdFeHAodGhpcy5zZWFyY2hUZXJtLnJlcGxhY2UoL1suKis/XiR7fSgpfFtcXF1cXFxcXS9nLCAnXFxcXCQmJyksICdnaScpO1xuICAgICAgcmV0dXJuIHR4dC5yZXBsYWNlKHJlLCAnPG1hcms+JCY8L21hcms+Jyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0eHQ7XG4gICAgfVxuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fY29tbWFuZHMgPSB0aGlzLmNtZFNlcnZpY2UuZ2V0Q29tbWFuZHMoKTtcbiAgICB0aGlzLmNvbW1hbmRzID0gWy4uLnRoaXMuX2NvbW1hbmRzXTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLm9uSW5wdXRCbHVyKCk7XG4gIH1cbn1cbiIsIkBpZiAoIWRpc2FibGVkQ2F1c2VzLmxlbmd0aCkge1xuICA8ZGl2IGNsYXNzPVwic2VhcmNoXCI+XG4gICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgYXV0b2ZvY3VzIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiIFsobmdNb2RlbCldPVwic2VhcmNoVGVybVwiIChibHVyKT1cIm9uSW5wdXRCbHVyKClcIiAobmdNb2RlbENoYW5nZSk9XCJvblRlcm1DaGFuZ2UoJGV2ZW50KVwiIC8+XG4gICAgQGlmIChtZXNzYWdlKSB7XG4gICAgICA8ZGl2IGNsYXNzPVwibWVzc2FnZVwiPnt7IG1lc3NhZ2UgfX08L2Rpdj5cbiAgICB9XG4gIDwvZGl2PlxuXG4gIDxkaXYgY2xhc3M9XCJjb21tYW5kc1wiPlxuICAgIEBmb3IgKGMgb2YgY29tbWFuZHM7IHRyYWNrIGMuaWQ7IGxldCBpID0gJGluZGV4KSB7XG4gICAgICA8ZGl2IGNsYXNzPVwiY29tbWFuZFwiIFtuZ1N0eWxlXT1cInsgJy0taSc6IGkgfVwiIFtuZ0NsYXNzXT1cInsgY3VycmVudDogaSA9PT0gY3VycmVudENvbW1hbmRJbmRleCB9XCIgKGNsaWNrKT1cInRyaWdnZXJDb21tYW5kKGMpXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJsYWJlbFwiIFtpbm5lckhUTUxdPVwiaGlnaGxpZ2h0KGMubGFiZWwpXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkZXNjXCIgW2lubmVySFRNTF09XCJoaWdobGlnaHQoYz8uZGVzY3JpcHRpb24pXCI+PC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICB9XG4gIDwvZGl2PlxufSBAZWxzZSB7XG4gIDxkaXYgY2xhc3M9XCJkaXNhYmxlZFwiPlxuICAgIEBmb3IgKGMgb2YgZGlzYWJsZWRDYXVzZXM7IHRyYWNrIGMuaWQpIHtcbiAgICAgIDxkaXYgY2xhc3M9XCJkaXNhYmxlZC1jYXVzZVwiPnt7IGMubWVzc2FnZSB9fTwvZGl2PlxuICAgIH1cbiAgPC9kaXY+XG59XG4iXX0=
@@ -118,13 +118,13 @@ export class CommandPaletteService {
118
118
  this.overlayVisibleSource.next(this.overlayVisible);
119
119
  }
120
120
  }
121
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: CommandPaletteService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
122
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: CommandPaletteService, providedIn: 'root' }); }
121
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.12", ngImport: i0, type: CommandPaletteService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
122
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.12", ngImport: i0, type: CommandPaletteService, providedIn: 'root' }); }
123
123
  }
124
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: CommandPaletteService, decorators: [{
124
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.12", ngImport: i0, type: CommandPaletteService, decorators: [{
125
125
  type: Injectable,
126
126
  args: [{
127
127
  providedIn: 'root'
128
128
  }]
129
129
  }], ctorParameters: () => [] });
130
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWFuZC1wYWxldHRlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3l1dXZpcy9jbGllbnQtc2hlbGwtY29yZS9zcmMvbGliL3NlcnZpY2VzL2NvbW1hbmQtcGFsZXR0ZS9jb21tYW5kLXBhbGV0dGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsU0FBUyxFQUFnQixNQUFNLDBCQUEwQixDQUFDO0FBQ25FLE9BQU8sRUFBYyxhQUFhLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbkYsT0FBTyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbEQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sNkNBQTZDLENBQUM7O0FBS3RGLE1BQU0sT0FBTyxxQkFBcUI7SUFDaEMsT0FBTyxDQUFxQjtJQUk1QixVQUFVLENBQW9EO0lBYTlEO1FBakJBLFlBQU8sR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFFbkIsY0FBUyxHQUFXLFNBQVMsQ0FBQztRQUMvQixRQUFHLEdBQUcsQ0FBQyxDQUFDO1FBR1IsbUJBQWMsR0FBRyxLQUFLLENBQUM7UUFDL0IsbUJBQWMsR0FBb0IsRUFBRSxDQUFDO1FBQ3JDLGdCQUFXLEdBQUcsRUFBRSxDQUFDO1FBQ1QseUJBQW9CLEdBQUcsSUFBSSxhQUFhLEVBQVcsQ0FBQztRQUNyRCxvQkFBZSxHQUF3QixJQUFJLENBQUMsb0JBQW9CLENBQUMsWUFBWSxFQUFFLENBQUM7UUFFL0UsYUFBUSxHQUE0QixFQUFFLENBQUM7UUFDdkMsa0JBQWEsR0FBRyxJQUFJLE9BQU8sRUFBeUIsQ0FBQztRQUN0RCxhQUFRLEdBQXND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LENBQUM7UUFDdEQsQ0FBQztJQUNILENBQUM7OEdBbElVLHFCQUFxQjtrSEFBckIscUJBQXFCLGNBRnBCLE1BQU07OzJGQUVQLHFCQUFxQjtrQkFIakMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdERpYWxvZywgTWF0RGlhbG9nUmVmIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFJlcGxheVN1YmplY3QsIFN1YmplY3QsIGRlYm91bmNlVGltZSwgZnJvbUV2ZW50IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXIsIG1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQ29tbWFuZFBhbGV0dGVDb21tYW5kLCBEaXNhYmxlZENhdXNlIH0gZnJvbSAnLi9jb21tYW5kLXBhbGV0dGUuaW50ZXJmYWNlJztcbmltcG9ydCB7IENvbW1hbmRQYWxldHRlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21tYW5kLXBhbGV0dGUvY29tbWFuZC1wYWxldHRlLmNvbXBvbmVudCc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIENvbW1hbmRQYWxldHRlU2VydmljZSB7XG4gICNkaWFsb2cgPSBpbmplY3QoTWF0RGlhbG9nKTtcblxuICByZWFkb25seSBhY3Rpb25LZXk6IHN0cmluZyA9ICdDb250cm9sJztcbiAgcHJpdmF0ZSBfYWMgPSAwO1xuICAjZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8Q29tbWFuZFBhbGV0dGVDb21wb25lbnQ+IHwgdW5kZWZpbmVkO1xuXG4gIHByaXZhdGUgb3ZlcmxheVZpc2libGUgPSBmYWxzZTtcbiAgZGlzYWJsZWRDYXVzZXM6IERpc2FibGVkQ2F1c2VbXSA9IFtdO1xuICBwbGFjZWhvbGRlciA9ICcnO1xuICBwcml2YXRlIG92ZXJsYXlWaXNpYmxlU291cmNlID0gbmV3IFJlcGxheVN1YmplY3Q8Ym9vbGVhbj4oKTtcbiAgcHVibGljIG92ZXJsYXlWaXNpYmxlJDogT2JzZXJ2YWJsZTxib29sZWFuPiA9IHRoaXMub3ZlcmxheVZpc2libGVTb3VyY2UuYXNPYnNlcnZhYmxlKCk7XG5cbiAgcHJpdmF0ZSBjb21tYW5kczogQ29tbWFuZFBhbGV0dGVDb21tYW5kW10gPSBbXTtcbiAgcHJpdmF0ZSBjb21tYW5kU291cmNlID0gbmV3IFN1YmplY3Q8Q29tbWFuZFBhbGV0dGVDb21tYW5kPigpO1xuICBwdWJsaWMgY29tbWFuZCQ6IE9ic2VydmFibGU8Q29tbWFuZFBhbGV0dGVDb21tYW5kPiA9IHRoaXMuY29tbWFuZFNvdXJjZS5hc09ic2VydmFibGUoKTtcblxuICBvblNlYXJjaFRlcm0hOiAodGVybTogc3RyaW5nLCBjYjogKHJlczogQ29tbWFuZFBhbGV0dGVDb21tYW5kW10pID0+IHZvaWQpID0+IHZvaWQ7XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIGZyb21FdmVudChkb2N1bWVudCwgJ2tleXVwJylcbiAgICAgIC5waXBlKFxuICAgICAgICBkZWJvdW5jZVRpbWUoMTAwKSxcbiAgICAgICAgbWFwKChlOiBFdmVudCkgPT4gZSBhcyBLZXlib2FyZEV2ZW50KSxcbiAgICAgICAgdGFwKChlKSA9PiB7XG4gICAgICAgICAgaWYgKGUua2V5ID09PSB0aGlzLmFjdGlvbktleSkgdGhpcy5fYWN0aW9uS2V5Q2xpY2soKTtcbiAgICAgICAgICBpZiAoZS5rZXkgPT09ICdFc2NhcGUnKSB0aGlzLnJlbW92ZUNvbXBvbmVudEZyb21Cb2R5KCk7XG4gICAgICAgIH0pXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBnZXRDb21tYW5kcygpOiBDb21tYW5kUGFsZXR0ZUNvbW1hbmRbXSB7XG4gICAgY29uc3QgY29tbWFuZHM6IENvbW1hbmRQYWxldHRlQ29tbWFuZFtdID0gT2JqZWN0LnZhbHVlcyh0aGlzLmNvbW1hbmRzKTtcbiAgICByZXR1cm4gY29tbWFuZHM7XG4gIH1cblxuICByZWdpc3RlckNvbW1hbmQoY29tbWFuZDogQ29tbWFuZFBhbGV0dGVDb21tYW5kKTogT2JzZXJ2YWJsZTxDb21tYW5kUGFsZXR0ZUNvbW1hbmQ+IHtcbiAgICB0aGlzLmNvbW1hbmRzLnB1c2goY29tbWFuZCk7XG4gICAgdGhpcy5fcHJvY2Vzc0NvbW1hbmRzKCk7XG4gICAgcmV0dXJuIHRoaXMuY29tbWFuZCQucGlwZShmaWx0ZXIoKGMpID0+IGMuaWQgPT09IGNvbW1hbmQuaWQpKTtcbiAgfVxuXG4gIHJlZ2lzdGVyQ29tbWFuZHMoY29tbWFuZHM6IENvbW1hbmRQYWxldHRlQ29tbWFuZFtdKTogT2JzZXJ2YWJsZTxDb21tYW5kUGFsZXR0ZUNvbW1hbmQ+IHtcbiAgICB0aGlzLmNvbW1hbmRzID0gWy4uLnRoaXMuY29tbWFuZHMsIC4uLmNvbW1hbmRzXTtcbiAgICB0aGlzLl9wcm9jZXNzQ29tbWFuZHMoKTtcbiAgICByZXR1cm4gdGhpcy5jb21tYW5kJC5waXBlKGZpbHRlcigoY21kKSA9PiBjb21tYW5kcy5tYXAoKGMpID0+IGMuaWQpLmluY2x1ZGVzKGNtZC5pZCkpKTtcbiAgfVxuXG4gIHVucmVnaXN0ZXJDb21tYW5kKGlkOiBzdHJpbmcpIHtcbiAgICB0aGlzLnVucmVnaXN0ZXJDb21tYW5kcyhbaWRdKTtcbiAgfVxuXG4gIHVucmVnaXN0ZXJDb21tYW5kcyhpZHM6IHN0cmluZ1tdKSB7XG4gICAgdGhpcy5jb21tYW5kcyA9IHRoaXMuY29tbWFuZHMuZmlsdGVyKChjKSA9PiAhaWRzLmluY2x1ZGVzKGMuaWQpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGVzIHRoZSBwcm9wZXJ0aWVzIG9mIHRoZSByZWdpc3RlcmVkIGNvbW1hbmRzLiBUaGlzIGlzIHVzZWZ1bGwgd2hlblxuICAgKiB0aGUgbGFuZ3VhZ2Ugb2YgdGhlIGFwcCBjaGFuZ2VzIGFuZCB5b3Ugd2FudCB0byB1cGRhdGUgdGhlIGNvbW1hbmRzIGxhYmVscy5cbiAgICogQmFzZWQgb24gdGhlIElEcyBwcm9wZXRpZXMgb2YgdGhlIHJlZ2lzdGVyZWQgY29tbWFuZHMgd2lsbCBiZSB1cGRhdGVkLlxuICAgKiBAcGFyYW0gY21kcyBDb21tYW5kcyBjb250YWluaW5nIHRoZSB1cGRhdGVkIHByb3BlcnRpZXNcbiAgICovXG4gIHVwZGF0ZUNvbW1hbmRzKGNtZHM6IENvbW1hbmRQYWxldHRlQ29tbWFuZFtdKSB7XG4gICAgY29uc3QgZXhDbWRRQTogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9O1xuICAgIGNtZHMuZm9yRWFjaCgoYykgPT4gKGV4Q21kUUFbYy5pZF0gPSBjKSk7XG5cbiAgICBjb25zdCB1cGRhdGVkQ29tbWFuZHMgPSB0aGlzLmNvbW1hbmRzLm1hcCgoYykgPT4gKGV4Q21kUUFbYy5pZF0gPyBleENtZFFBW2MuaWRdIDogYykpO1xuICAgIHRoaXMuY29tbWFuZHMgPSB1cGRhdGVkQ29tbWFuZHM7XG4gIH1cblxuICB0cmlnZ2VyQ29tbWFuZChjbWQ6IENvbW1hbmRQYWxldHRlQ29tbWFuZCkge1xuICAgIHRoaXMuY29tbWFuZFNvdXJjZS5uZXh0KGNtZCk7XG4gICAgaWYgKGNtZC5jYWxsYmFjaykgY21kLmNhbGxiYWNrKCk7XG4gICAgdGhpcy5yZW1vdmVDb21wb25lbnRGcm9tQm9keSgpO1xuICB9XG5cbiAgYWRkRGlzYWJsZWRDYXVzZShjYXVzZTogRGlzYWJsZWRDYXVzZSkge1xuICAgIGNvbnN0IGV4aXN0aW5nQ2F1c2VJbmRleCA9IHRoaXMuZGlzYWJsZWRDYXVzZXMuZmluZEluZGV4KChjKSA9PiBjLmlkID09PSBjYXVzZS5pZCk7XG4gICAgaWYgKGV4aXN0aW5nQ2F1c2VJbmRleCA9PT0gLTEpIHtcbiAgICAgIHRoaXMuZGlzYWJsZWRDYXVzZXMucHVzaChjYXVzZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZGlzYWJsZWRDYXVzZXNbZXhpc3RpbmdDYXVzZUluZGV4XS5tZXNzYWdlID0gY2F1c2UubWVzc2FnZTtcbiAgICB9XG4gIH1cblxuICByZW1vdmVEaXNhYmxlZENhdXNlKGlkOiBzdHJpbmcpIHtcbiAgICB0aGlzLmRpc2FibGVkQ2F1c2VzID0gdGhpcy5kaXNhYmxlZENhdXNlcy5maWx0ZXIoKGMpID0+IGMuaWQgIT09IGlkKTtcbiAgfVxuXG4gIHJlbW92ZUFsbERpc2FibGVkQ2F1c2VzKCkge1xuICAgIHRoaXMuZGlzYWJsZWRDYXVzZXMgPSBbXTtcbiAgfVxuXG4gIHByaXZhdGUgX3Byb2Nlc3NDb21tYW5kcygpIHtcbiAgICAvLyBzb3J0IHRoZSBjb21tYW5kc1xuICAgIHRoaXMuY29tbWFuZHMuc29ydCgoYSwgYikgPT4gKGEubGFiZWwgPiBiLmxhYmVsID8gMSA6IGEubGFiZWwgPT09IGIubGFiZWwgPyAwIDogLTEpKTtcbiAgfVxuICBwcml2YXRlIF9hY3Rpb25LZXlDbGljaygpIHtcbiAgICB0aGlzLl9hYysrO1xuICAgIGlmICh0aGlzLl9hYyA9PT0gMikge1xuICAgICAgdGhpcy5hcHBlbmRDb21wb25lbnRUb0JvZHkoKTtcbiAgICAgIHRoaXMuX2FjID0gMDtcbiAgICB9IGVsc2UgaWYgKHRoaXMuX2FjID09PSAxKSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5fYWMgPSAwO1xuICAgICAgfSwgMzAwKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFwcGVuZENvbXBvbmVudFRvQm9keSgpIHtcbiAgICBpZiAoIXRoaXMub3ZlcmxheVZpc2libGUpIHtcbiAgICAgIC8vIHRoaXMuY29tcG9uZW50UmVmID0gdGhpcy5jb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkoQ29tbWFuZFBhbGV0dGVDb21wb25lbnQpLmNyZWF0ZSh0aGlzLmluamVjdG9yKTtcbiAgICAgIC8vIHRoaXMuYXBwUmVmLmF0dGFjaFZpZXcodGhpcy5jb21wb25lbnRSZWYuaG9zdFZpZXcpO1xuICAgICAgLy8gY29uc3QgZG9tRWxlbSA9ICh0aGlzLmNvbXBvbmVudFJlZi5ob3N0VmlldyBhcyBFbWJlZGRlZFZpZXdSZWY8YW55Pikucm9vdE5vZGVzWzBdIGFzIEhUTUxFbGVtZW50O1xuICAgICAgLy8gZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChkb21FbGVtKTtcbiAgICAgIHRoaXMuI2RpYWxvZ1JlZiA9IHRoaXMuI2RpYWxvZy5vcGVuKENvbW1hbmRQYWxldHRlQ29tcG9uZW50KTtcbiAgICAgIHRoaXMub3ZlcmxheVZpc2libGUgPSB0cnVlO1xuICAgICAgdGhpcy5vdmVybGF5VmlzaWJsZVNvdXJjZS5uZXh0KHRoaXMub3ZlcmxheVZpc2libGUpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgcmVtb3ZlQ29tcG9uZW50RnJvbUJvZHkoKSB7XG4gICAgaWYgKHRoaXMuI2RpYWxvZ1JlZikge1xuICAgICAgdGhpcy4jZGlhbG9nUmVmLmNsb3NlKCk7XG4gICAgICAvLyB0aGlzLmNvbXBvbmVudFJlZi5pbnN0YW5jZS5rZWVwRm9jdXMgPSBmYWxzZTtcbiAgICAgIC8vIHRoaXMuYXBwUmVmLmRldGFjaFZpZXcodGhpcy5jb21wb25lbnRSZWYuaG9zdFZpZXcpO1xuICAgICAgLy8gdGhpcy5jb21wb25lbnRSZWYuZGVzdHJveSgpO1xuICAgICAgdGhpcy5vdmVybGF5VmlzaWJsZSA9IGZhbHNlO1xuICAgICAgdGhpcy5vdmVybGF5VmlzaWJsZVNvdXJjZS5uZXh0KHRoaXMub3ZlcmxheVZpc2libGUpO1xuICAgIH1cbiAgfVxufVxuIl19
130
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWFuZC1wYWxldHRlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3l1dXZpcy9jbGllbnQtc2hlbGwtY29yZS9zcmMvbGliL3NlcnZpY2VzL2NvbW1hbmQtcGFsZXR0ZS9jb21tYW5kLXBhbGV0dGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsU0FBUyxFQUFnQixNQUFNLDBCQUEwQixDQUFDO0FBQ25FLE9BQU8sRUFBYyxhQUFhLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbkYsT0FBTyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbEQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sNkNBQTZDLENBQUM7O0FBS3RGLE1BQU0sT0FBTyxxQkFBcUI7SUFDaEMsT0FBTyxDQUFxQjtJQUk1QixVQUFVLENBQW9EO0lBYTlEO1FBakJBLFlBQU8sR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFFbkIsY0FBUyxHQUFXLFNBQVMsQ0FBQztRQUMvQixRQUFHLEdBQUcsQ0FBQyxDQUFDO1FBR1IsbUJBQWMsR0FBRyxLQUFLLENBQUM7UUFDL0IsbUJBQWMsR0FBb0IsRUFBRSxDQUFDO1FBQ3JDLGdCQUFXLEdBQUcsRUFBRSxDQUFDO1FBQ1QseUJBQW9CLEdBQUcsSUFBSSxhQUFhLEVBQVcsQ0FBQztRQUNyRCxvQkFBZSxHQUF3QixJQUFJLENBQUMsb0JBQW9CLENBQUMsWUFBWSxFQUFFLENBQUM7UUFFL0UsYUFBUSxHQUE0QixFQUFFLENBQUM7UUFDdkMsa0JBQWEsR0FBRyxJQUFJLE9BQU8sRUFBeUIsQ0FBQztRQUN0RCxhQUFRLEdBQXND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LENBQUM7UUFDdEQsQ0FBQztJQUNILENBQUM7K0dBbElVLHFCQUFxQjttSEFBckIscUJBQXFCLGNBRnBCLE1BQU07OzRGQUVQLHFCQUFxQjtrQkFIakMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdERpYWxvZywgTWF0RGlhbG9nUmVmIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFJlcGxheVN1YmplY3QsIFN1YmplY3QsIGRlYm91bmNlVGltZSwgZnJvbUV2ZW50IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXIsIG1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQ29tbWFuZFBhbGV0dGVDb21tYW5kLCBEaXNhYmxlZENhdXNlIH0gZnJvbSAnLi9jb21tYW5kLXBhbGV0dGUuaW50ZXJmYWNlJztcbmltcG9ydCB7IENvbW1hbmRQYWxldHRlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21tYW5kLXBhbGV0dGUvY29tbWFuZC1wYWxldHRlLmNvbXBvbmVudCc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIENvbW1hbmRQYWxldHRlU2VydmljZSB7XG4gICNkaWFsb2cgPSBpbmplY3QoTWF0RGlhbG9nKTtcblxuICByZWFkb25seSBhY3Rpb25LZXk6IHN0cmluZyA9ICdDb250cm9sJztcbiAgcHJpdmF0ZSBfYWMgPSAwO1xuICAjZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8Q29tbWFuZFBhbGV0dGVDb21wb25lbnQ+IHwgdW5kZWZpbmVkO1xuXG4gIHByaXZhdGUgb3ZlcmxheVZpc2libGUgPSBmYWxzZTtcbiAgZGlzYWJsZWRDYXVzZXM6IERpc2FibGVkQ2F1c2VbXSA9IFtdO1xuICBwbGFjZWhvbGRlciA9ICcnO1xuICBwcml2YXRlIG92ZXJsYXlWaXNpYmxlU291cmNlID0gbmV3IFJlcGxheVN1YmplY3Q8Ym9vbGVhbj4oKTtcbiAgcHVibGljIG92ZXJsYXlWaXNpYmxlJDogT2JzZXJ2YWJsZTxib29sZWFuPiA9IHRoaXMub3ZlcmxheVZpc2libGVTb3VyY2UuYXNPYnNlcnZhYmxlKCk7XG5cbiAgcHJpdmF0ZSBjb21tYW5kczogQ29tbWFuZFBhbGV0dGVDb21tYW5kW10gPSBbXTtcbiAgcHJpdmF0ZSBjb21tYW5kU291cmNlID0gbmV3IFN1YmplY3Q8Q29tbWFuZFBhbGV0dGVDb21tYW5kPigpO1xuICBwdWJsaWMgY29tbWFuZCQ6IE9ic2VydmFibGU8Q29tbWFuZFBhbGV0dGVDb21tYW5kPiA9IHRoaXMuY29tbWFuZFNvdXJjZS5hc09ic2VydmFibGUoKTtcblxuICBvblNlYXJjaFRlcm0hOiAodGVybTogc3RyaW5nLCBjYjogKHJlczogQ29tbWFuZFBhbGV0dGVDb21tYW5kW10pID0+IHZvaWQpID0+IHZvaWQ7XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIGZyb21FdmVudChkb2N1bWVudCwgJ2tleXVwJylcbiAgICAgIC5waXBlKFxuICAgICAgICBkZWJvdW5jZVRpbWUoMTAwKSxcbiAgICAgICAgbWFwKChlOiBFdmVudCkgPT4gZSBhcyBLZXlib2FyZEV2ZW50KSxcbiAgICAgICAgdGFwKChlKSA9PiB7XG4gICAgICAgICAgaWYgKGUua2V5ID09PSB0aGlzLmFjdGlvbktleSkgdGhpcy5fYWN0aW9uS2V5Q2xpY2soKTtcbiAgICAgICAgICBpZiAoZS5rZXkgPT09ICdFc2NhcGUnKSB0aGlzLnJlbW92ZUNvbXBvbmVudEZyb21Cb2R5KCk7XG4gICAgICAgIH0pXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBnZXRDb21tYW5kcygpOiBDb21tYW5kUGFsZXR0ZUNvbW1hbmRbXSB7XG4gICAgY29uc3QgY29tbWFuZHM6IENvbW1hbmRQYWxldHRlQ29tbWFuZFtdID0gT2JqZWN0LnZhbHVlcyh0aGlzLmNvbW1hbmRzKTtcbiAgICByZXR1cm4gY29tbWFuZHM7XG4gIH1cblxuICByZWdpc3RlckNvbW1hbmQoY29tbWFuZDogQ29tbWFuZFBhbGV0dGVDb21tYW5kKTogT2JzZXJ2YWJsZTxDb21tYW5kUGFsZXR0ZUNvbW1hbmQ+IHtcbiAgICB0aGlzLmNvbW1hbmRzLnB1c2goY29tbWFuZCk7XG4gICAgdGhpcy5fcHJvY2Vzc0NvbW1hbmRzKCk7XG4gICAgcmV0dXJuIHRoaXMuY29tbWFuZCQucGlwZShmaWx0ZXIoKGMpID0+IGMuaWQgPT09IGNvbW1hbmQuaWQpKTtcbiAgfVxuXG4gIHJlZ2lzdGVyQ29tbWFuZHMoY29tbWFuZHM6IENvbW1hbmRQYWxldHRlQ29tbWFuZFtdKTogT2JzZXJ2YWJsZTxDb21tYW5kUGFsZXR0ZUNvbW1hbmQ+IHtcbiAgICB0aGlzLmNvbW1hbmRzID0gWy4uLnRoaXMuY29tbWFuZHMsIC4uLmNvbW1hbmRzXTtcbiAgICB0aGlzLl9wcm9jZXNzQ29tbWFuZHMoKTtcbiAgICByZXR1cm4gdGhpcy5jb21tYW5kJC5waXBlKGZpbHRlcigoY21kKSA9PiBjb21tYW5kcy5tYXAoKGMpID0+IGMuaWQpLmluY2x1ZGVzKGNtZC5pZCkpKTtcbiAgfVxuXG4gIHVucmVnaXN0ZXJDb21tYW5kKGlkOiBzdHJpbmcpIHtcbiAgICB0aGlzLnVucmVnaXN0ZXJDb21tYW5kcyhbaWRdKTtcbiAgfVxuXG4gIHVucmVnaXN0ZXJDb21tYW5kcyhpZHM6IHN0cmluZ1tdKSB7XG4gICAgdGhpcy5jb21tYW5kcyA9IHRoaXMuY29tbWFuZHMuZmlsdGVyKChjKSA9PiAhaWRzLmluY2x1ZGVzKGMuaWQpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGVzIHRoZSBwcm9wZXJ0aWVzIG9mIHRoZSByZWdpc3RlcmVkIGNvbW1hbmRzLiBUaGlzIGlzIHVzZWZ1bGwgd2hlblxuICAgKiB0aGUgbGFuZ3VhZ2Ugb2YgdGhlIGFwcCBjaGFuZ2VzIGFuZCB5b3Ugd2FudCB0byB1cGRhdGUgdGhlIGNvbW1hbmRzIGxhYmVscy5cbiAgICogQmFzZWQgb24gdGhlIElEcyBwcm9wZXRpZXMgb2YgdGhlIHJlZ2lzdGVyZWQgY29tbWFuZHMgd2lsbCBiZSB1cGRhdGVkLlxuICAgKiBAcGFyYW0gY21kcyBDb21tYW5kcyBjb250YWluaW5nIHRoZSB1cGRhdGVkIHByb3BlcnRpZXNcbiAgICovXG4gIHVwZGF0ZUNvbW1hbmRzKGNtZHM6IENvbW1hbmRQYWxldHRlQ29tbWFuZFtdKSB7XG4gICAgY29uc3QgZXhDbWRRQTogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9O1xuICAgIGNtZHMuZm9yRWFjaCgoYykgPT4gKGV4Q21kUUFbYy5pZF0gPSBjKSk7XG5cbiAgICBjb25zdCB1cGRhdGVkQ29tbWFuZHMgPSB0aGlzLmNvbW1hbmRzLm1hcCgoYykgPT4gKGV4Q21kUUFbYy5pZF0gPyBleENtZFFBW2MuaWRdIDogYykpO1xuICAgIHRoaXMuY29tbWFuZHMgPSB1cGRhdGVkQ29tbWFuZHM7XG4gIH1cblxuICB0cmlnZ2VyQ29tbWFuZChjbWQ6IENvbW1hbmRQYWxldHRlQ29tbWFuZCkge1xuICAgIHRoaXMuY29tbWFuZFNvdXJjZS5uZXh0KGNtZCk7XG4gICAgaWYgKGNtZC5jYWxsYmFjaykgY21kLmNhbGxiYWNrKCk7XG4gICAgdGhpcy5yZW1vdmVDb21wb25lbnRGcm9tQm9keSgpO1xuICB9XG5cbiAgYWRkRGlzYWJsZWRDYXVzZShjYXVzZTogRGlzYWJsZWRDYXVzZSkge1xuICAgIGNvbnN0IGV4aXN0aW5nQ2F1c2VJbmRleCA9IHRoaXMuZGlzYWJsZWRDYXVzZXMuZmluZEluZGV4KChjKSA9PiBjLmlkID09PSBjYXVzZS5pZCk7XG4gICAgaWYgKGV4aXN0aW5nQ2F1c2VJbmRleCA9PT0gLTEpIHtcbiAgICAgIHRoaXMuZGlzYWJsZWRDYXVzZXMucHVzaChjYXVzZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZGlzYWJsZWRDYXVzZXNbZXhpc3RpbmdDYXVzZUluZGV4XS5tZXNzYWdlID0gY2F1c2UubWVzc2FnZTtcbiAgICB9XG4gIH1cblxuICByZW1vdmVEaXNhYmxlZENhdXNlKGlkOiBzdHJpbmcpIHtcbiAgICB0aGlzLmRpc2FibGVkQ2F1c2VzID0gdGhpcy5kaXNhYmxlZENhdXNlcy5maWx0ZXIoKGMpID0+IGMuaWQgIT09IGlkKTtcbiAgfVxuXG4gIHJlbW92ZUFsbERpc2FibGVkQ2F1c2VzKCkge1xuICAgIHRoaXMuZGlzYWJsZWRDYXVzZXMgPSBbXTtcbiAgfVxuXG4gIHByaXZhdGUgX3Byb2Nlc3NDb21tYW5kcygpIHtcbiAgICAvLyBzb3J0IHRoZSBjb21tYW5kc1xuICAgIHRoaXMuY29tbWFuZHMuc29ydCgoYSwgYikgPT4gKGEubGFiZWwgPiBiLmxhYmVsID8gMSA6IGEubGFiZWwgPT09IGIubGFiZWwgPyAwIDogLTEpKTtcbiAgfVxuICBwcml2YXRlIF9hY3Rpb25LZXlDbGljaygpIHtcbiAgICB0aGlzLl9hYysrO1xuICAgIGlmICh0aGlzLl9hYyA9PT0gMikge1xuICAgICAgdGhpcy5hcHBlbmRDb21wb25lbnRUb0JvZHkoKTtcbiAgICAgIHRoaXMuX2FjID0gMDtcbiAgICB9IGVsc2UgaWYgKHRoaXMuX2FjID09PSAxKSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5fYWMgPSAwO1xuICAgICAgfSwgMzAwKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFwcGVuZENvbXBvbmVudFRvQm9keSgpIHtcbiAgICBpZiAoIXRoaXMub3ZlcmxheVZpc2libGUpIHtcbiAgICAgIC8vIHRoaXMuY29tcG9uZW50UmVmID0gdGhpcy5jb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkoQ29tbWFuZFBhbGV0dGVDb21wb25lbnQpLmNyZWF0ZSh0aGlzLmluamVjdG9yKTtcbiAgICAgIC8vIHRoaXMuYXBwUmVmLmF0dGFjaFZpZXcodGhpcy5jb21wb25lbnRSZWYuaG9zdFZpZXcpO1xuICAgICAgLy8gY29uc3QgZG9tRWxlbSA9ICh0aGlzLmNvbXBvbmVudFJlZi5ob3N0VmlldyBhcyBFbWJlZGRlZFZpZXdSZWY8YW55Pikucm9vdE5vZGVzWzBdIGFzIEhUTUxFbGVtZW50O1xuICAgICAgLy8gZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChkb21FbGVtKTtcbiAgICAgIHRoaXMuI2RpYWxvZ1JlZiA9IHRoaXMuI2RpYWxvZy5vcGVuKENvbW1hbmRQYWxldHRlQ29tcG9uZW50KTtcbiAgICAgIHRoaXMub3ZlcmxheVZpc2libGUgPSB0cnVlO1xuICAgICAgdGhpcy5vdmVybGF5VmlzaWJsZVNvdXJjZS5uZXh0KHRoaXMub3ZlcmxheVZpc2libGUpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgcmVtb3ZlQ29tcG9uZW50RnJvbUJvZHkoKSB7XG4gICAgaWYgKHRoaXMuI2RpYWxvZ1JlZikge1xuICAgICAgdGhpcy4jZGlhbG9nUmVmLmNsb3NlKCk7XG4gICAgICAvLyB0aGlzLmNvbXBvbmVudFJlZi5pbnN0YW5jZS5rZWVwRm9jdXMgPSBmYWxzZTtcbiAgICAgIC8vIHRoaXMuYXBwUmVmLmRldGFjaFZpZXcodGhpcy5jb21wb25lbnRSZWYuaG9zdFZpZXcpO1xuICAgICAgLy8gdGhpcy5jb21wb25lbnRSZWYuZGVzdHJveSgpO1xuICAgICAgdGhpcy5vdmVybGF5VmlzaWJsZSA9IGZhbHNlO1xuICAgICAgdGhpcy5vdmVybGF5VmlzaWJsZVNvdXJjZS5uZXh0KHRoaXMub3ZlcmxheVZpc2libGUpO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -81,13 +81,13 @@ export class FeatureService {
81
81
  : of(null)))
82
82
  : of(null);
83
83
  }
84
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: FeatureService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
85
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: FeatureService, providedIn: 'root' }); }
84
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.12", ngImport: i0, type: FeatureService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
85
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.12", ngImport: i0, type: FeatureService, providedIn: 'root' }); }
86
86
  }
87
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: FeatureService, decorators: [{
87
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.12", ngImport: i0, type: FeatureService, decorators: [{
88
88
  type: Injectable,
89
89
  args: [{
90
90
  providedIn: 'root'
91
91
  }]
92
92
  }] });
93
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy95dXV2aXMvY2xpZW50LXNoZWxsLWNvcmUvc3JjL2xpYi9zZXJ2aWNlcy9mZWF0dXJlL2ZlYXR1cmUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsY0FBYyxFQUFXLE1BQU0scUJBQXFCLENBQUM7QUFFOUQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQy9DLE9BQU8sRUFBYyxFQUFFLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUV0RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUUxRSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7O0FBS3RELE1BQU0sT0FBTyxjQUFjO0lBQ3pCLGNBQWMsR0FBRyxNQUFNLENBQTJCLDJCQUEyQixDQUFDLENBQUM7SUFDL0UsVUFBVSxHQUFHLE1BQU0sQ0FBVSxRQUFRLENBQUMsQ0FBQztJQUN2QyxNQUFNLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzlCLFlBQVksR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUMxQyxnQkFBZ0IsR0FBSSxJQUFJLENBQUMsY0FBYyxFQUFFLFFBQVEsQ0FBQztJQUNsRCxTQUFTLEdBQUcsSUFBSSxDQUFDLGNBQWMsRUFBRSxRQUFRLElBQUksRUFBRSxDQUFDO0lBQ2hELFFBQVEsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENB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QyxFQUFFLGdCQUFnQixDQUFDLENBQUMsSUFBSSxDQUNuRSxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTt3QkFDWCxrQkFBa0I7d0JBQ2xCLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO3dCQUUxQixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztvQkFDeEIsQ0FBQyxDQUFDLENBQ0gsQ0FBQztnQkFDSixDQUFDLENBQUMsQ0FDSDtnQkFDSCxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUNiLENBQ0Y7WUFDSCxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2YsQ0FBQzs4R0FwR1UsY0FBYztrSEFBZCxjQUFjLGNBRmIsTUFBTTs7MkZBRVAsY0FBYztrQkFIMUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJhY2tlbmRTZXJ2aWNlLCBZdXZVc2VyIH0gZnJvbSAnQHl1dXZpcy9jbGllbnQtY29yZSc7XG5cbmltcG9ydCB7IFlVVl9VU0VSIH0gZnJvbSAnQHl1dXZpcy9jbGllbnQtY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiwgc3dpdGNoTWFwLCB0YXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFwcCB9IGZyb20gJy4uLy4uL2NsaWVudC1zaGVsbC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgU0hFTExfQ09ORklHX0ZFQVRVUkVTIH0gZnJvbSAnLi4vc2hlbGwtY29uZmlnL3NoZWxsLWNvbmZpZy5jb25zdCc7XG5pbXBvcnQgeyBTaGVsbENvbmZpZ1NlcnZpY2UgfSBmcm9tICcuLi9zaGVsbC1jb25maWcvc2hlbGwtY29uZmlnLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ2xpZW50U2hlbGxGZWF0dXJlLCBDbGllbnRTaGVsbEZlYXR1cmVDb25maWcgfSBmcm9tICcuL2ZlYXR1cmUuaW50ZXJmYWNlJztcbmltcG9ydCB7IENMSUVOVF9TSEVMTF9GRUFUVVJFX0NPTkZJRyB9IGZyb20gJy4vZmVhdHVyZS5wcm92aWRlcnMnO1xuaW1wb3J0IHsgU2hlbGxTZXJ2aWNlIH0gZnJvbSAnLi4vc2hlbGwvc2hlbGwuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEZlYXR1cmVTZXJ2aWNlIHtcbiAgI2ZlYXR1cmVDb25maWcgPSBpbmplY3Q8Q2xpZW50U2hlbGxGZWF0dXJlQ29uZmlnPihDTElFTlRfU0hFTExfRkVBVFVSRV9DT05GSUcpO1xuICAjdXNlclRva2VuID0gaW5qZWN0PFl1dlVzZXI+KFlVVl9VU0VSKTtcbiAgI3NoZWxsID0gaW5qZWN0KFNoZWxsU2VydmljZSk7XG4gICNzaGVsbENvbmZpZyA9IGluamVjdChTaGVsbENvbmZpZ1NlcnZpY2UpO1xuICAjZmVhdHVyZU9iamVjdElkPyA9IHRoaXMuI2ZlYXR1cmVDb25maWc/Lm9iamVjdElEO1xuICAjZmVhdHVyZXMgPSB0aGlzLiNmZWF0dXJlQ29uZmlnPy5mZWF0dXJlcyB8fCBbXTtcbiAgI2JhY2tlbmQgPSBpbmplY3QoQmFja2VuZFNlcnZpY2UpO1xuXG4gIGhhc0ZlYXR1cmVDb25maWcoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy4jZmVhdHVyZU9iamVjdElkO1xuICB9XG5cbiAgZ2V0RmVhdHVyZXMoKTogQ2xpZW50U2hlbGxGZWF0dXJlW10ge1xuICAgIHJldHVybiB0aGlzLiNmZWF0dXJlcztcbiAgfVxuXG4gIGdldEF2YWlsYWJsZUFwcHMoYWxsQXBwczogQXBwW10pOiBBcHBbXSB7XG4gICAgcmV0dXJuIGFsbEFwcHMuZmlsdGVyKChhcHApID0+IHRoaXMuY2FuVXNlQXBwKGFwcCkgJiYgdGhpcy5jYW5Vc2VGZWF0dXJlQnlJZChhcHAuaWQpKTtcbiAgfVxuXG4gIGNhblVzZUFwcChhcHA6IEFwcCkge1xuICAgIGNvbnN0IGF1dGhvcml0aWVzID0gdGhpcy4jdXNlclRva2VuPy5hdXRob3JpdGllcyB8fCBbXTtcbiAgICBjb25zdCBhbGxvd2VkID0gYXBwLnBlcm1pc3Npb25zPy5hbGxvdyB8fCBbXTtcbiAgICBjb25zdCBkZW5pZWQgPSBhcHAucGVybWlzc2lvbnM/LmRlbnkgfHwgW107XG5cbiAgICBjb25zdCBpc0FsbG93ZWQgPSBhbGxvd2VkLmxlbmd0aCA9PT0gMCB8fCBhdXRob3JpdGllcy5zb21lKChhdXRob3JpdHkpID0+IGFsbG93ZWQuaW5jbHVkZXMoYXV0aG9yaXR5KSk7XG4gICAgY29uc3QgaXNEZW5pZWQgPSBkZW5pZWQuc29tZSgoZGVuaWVkQXV0aG9yaXR5KSA9PiBhdXRob3JpdGllcy5pbmNsdWRlcyhkZW5pZWRBdXRob3JpdHkpKTtcblxuICAgIHJldHVybiBpc0FsbG93ZWQgJiYgIWlzRGVuaWVkO1xuICB9XG5cbiAgY2FuVXNlRmVhdHVyZUJ5SWQoZmVhdHVyZUlkOiBzdHJpbmcsIGF1dGhvcml0aWVzPzogc3RyaW5nW10pOiBib29sZWFuIHtcbiAgICBjb25zdCBmZWF0dXJlID0gdGhpcy4jZmVhdHVyZXMuZmluZCgoZikgPT4gZi5pZCA9PT0gZmVhdHVyZUlkKTtcbiAgICByZXR1cm4gIWZlYXR1cmUgfHwgdGhpcy5jYW5Vc2VGZWF0dXJlKGZlYXR1cmUsIGF1dGhvcml0aWVzKTtcbiAgfVxuXG4gIGNhblVzZUZlYXR1cmUoZmVhdHVyZTogQ2xpZW50U2hlbGxGZWF0dXJlLCBhdXRob3JpdGllcz86IHN0cmluZ1tdKTogYm9vbGVhbiB7XG4gICAgY29uc3QgYXV0aG9yaXRpZXNUb0NoZWNrID0gYXV0aG9yaXRpZXMgfHwgdGhpcy4jdXNlclRva2VuPy5hdXRob3JpdGllcyB8fCBbXTtcbiAgICBjb25zdCBhbGxvd2VkID0gZmVhdHVyZS5hbGxvd2VkIHx8IFtdO1xuICAgIGNvbnN0IGRlbmllZCA9IGZlYXR1cmUuZGVuaWVkIHx8IFtdO1xuXG4gICAgY29uc3QgaXNBbGxvd2VkID0gYWxsb3dlZC5sZW5ndGggPT09IDAgfHwgYXV0aG9yaXRpZXNUb0NoZWNrLnNvbWUoKGF1dGhvcml0eSkgPT4gYWxsb3dlZC5pbmNsdWRlcyhhdXRob3JpdHkpKTtcbiAgICBjb25zdCBpc0RlbmllZCA9IGRlbmllZC5zb21lKChkZW5pZWRBdXRob3JpdHkpID0+IGF1dGhvcml0aWVzVG9DaGVjay5pbmNsdWRlcyhkZW5pZWRBdXRob3JpdHkpKTtcblxuICAgIHJldHVybiBpc0FsbG93ZWQgJiYgIWlzRGVuaWVkO1xuICB9XG5cbiAgc2F2ZUZlYXR1cmVTZXR0aW5ncyhmZWF0dXJlczogQ2xpZW50U2hlbGxGZWF0dXJlW10pOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGlmICghdGhpcy4jZmVhdHVyZU9iamVjdElkKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIGZlYXR1cmUgY29uZmlndXJhdGlvbiBvYmplY3QgSUQgcHJvdmlkZWQnKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuI3NoZWxsQ29uZmlnLnVwZGF0ZSh0aGlzLiNmZWF0dXJlT2JqZWN0SWQsIGZlYXR1cmVzKS5waXBlKHRhcCgoKSA9PiAodGhpcy4jZmVhdHVyZXMgPSBmZWF0dXJlcykpKTtcbiAgfVxuXG4gIGRlbGV0ZUZlYXR1cmVTZXR0aW5ncygpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGlmICghdGhpcy4jZmVhdHVyZU9iamVjdElkKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIGZlYXR1cmUgY29uZmlndXJhdGlvbiBvYmplY3QgSUQgcHJvdmlkZWQnKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuI3NoZWxsQ29uZmlnLmRlbGV0ZSh0aGlzLiNmZWF0dXJlT2JqZWN0SWQpO1xuICB9XG5cbiAgY3JlYXRlU2V0dGluZ3NPYmplY3QoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy4jc2hlbGxDb25maWcuY3JlYXRlKFNIRUxMX0NPTkZJR19GRUFUVVJFUywgW10pLnBpcGUoXG4gICAgICB0YXAoKHJlcykgPT4ge1xuICAgICAgICB0aGlzLiNmZWF0dXJlT2JqZWN0SWQgPSByZXMuaWQ7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBleHBvcnQoKSB7XG4gICAgaWYgKHRoaXMuI2ZlYXR1cmVPYmplY3RJZCkge1xuICAgICAgdGhpcy4jc2hlbGxDb25maWcuZG93bmxvYWQodGhpcy4jZmVhdHVyZU9iamVjdElkLCBgJHtTSEVMTF9DT05GSUdfRkVBVFVSRVN9Lmpzb25gKTtcbiAgICB9XG4gIH1cblxuICBpbXBvcnQoKSB7XG4gICAgLy8gcmVhZCBmaWxlcyBjb250ZW50c1xuXG4gICAgcmV0dXJuIHRoaXMuI2ZlYXR1cmVPYmplY3RJZFxuICAgICAgPyB0aGlzLiNzaGVsbC5waWNrRmlsZSgpLnBpcGUoXG4gICAgICAgICAgc3dpdGNoTWFwKChmaWxlKSA9PlxuICAgICAgICAgICAgZmlsZVxuICAgICAgICAgICAgICA/IHRoaXMuI3NoZWxsQ29uZmlnLnVwbG9hZCh0aGlzLiNmZWF0dXJlT2JqZWN0SWQhLCBmaWxlKS5waXBlKFxuICAgICAgICAgICAgICAgICAgc3dpdGNoTWFwKChyZXMpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgLy8gcmVhZCB1cGxvYWRlZCBmaWxlXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLiNiYWNrZW5kLmdldChgL2Rtcy9vYmplY3RzLyR7cmVzLmlkfS9jb250ZW50cy9maWxlYCkucGlwZShcbiAgICAgICAgICAgICAgICAgICAgICB0YXAoKGRhdGEpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIHVwZGF0ZSBmZWF0dXJlc1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coJ2RhdGEnLCBkYXRhKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy4jZmVhdHVyZXMgPSBkYXRhO1xuICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgOiBvZihudWxsKVxuICAgICAgICAgIClcbiAgICAgICAgKVxuICAgICAgOiBvZihudWxsKTtcbiAgfVxufVxuIl19
93
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy95dXV2aXMvY2xpZW50LXNoZWxsLWNvcmUvc3JjL2xpYi9zZXJ2aWNlcy9mZWF0dXJlL2ZlYXR1cmUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsY0FBYyxFQUFXLE1BQU0scUJBQXFCLENBQUM7QUFFOUQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQy9DLE9BQU8sRUFBYyxFQUFFLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUV0RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUUxRSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7O0FBS3RELE1BQU0sT0FBTyxjQUFjO0lBQ3pCLGNBQWMsR0FBRyxNQUFNLENBQTJCLDJCQUEyQixDQUFDLENBQUM7SUFDL0UsVUFBVSxHQUFHLE1BQU0sQ0FBVSxRQUFRLENBQUMsQ0FBQztJQUN2QyxNQUFNLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzlCLFlBQVksR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUMxQyxnQkFBZ0IsR0FBSSxJQUFJLENBQUMsY0FBYyxFQUFFLFFBQVEsQ0FBQztJQUNsRCxTQUFTLEdBQUcsSUFBSSxDQUFDLGNBQWMsRUFBRSxRQUFRLElBQUksRUFBRSxDQUFDO0lBQ2hELFFBQVEsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENB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QyxFQUFFLGdCQUFnQixDQUFDLENBQUMsSUFBSSxDQUNuRSxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTt3QkFDWCxrQkFBa0I7d0JBQ2xCLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO3dCQUUxQixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztvQkFDeEIsQ0FBQyxDQUFDLENBQ0gsQ0FBQztnQkFDSixDQUFDLENBQUMsQ0FDSDtnQkFDSCxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUNiLENBQ0Y7WUFDSCxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2YsQ0FBQzsrR0FwR1UsY0FBYzttSEFBZCxjQUFjLGNBRmIsTUFBTTs7NEZBRVAsY0FBYztrQkFIMUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJhY2tlbmRTZXJ2aWNlLCBZdXZVc2VyIH0gZnJvbSAnQHl1dXZpcy9jbGllbnQtY29yZSc7XG5cbmltcG9ydCB7IFlVVl9VU0VSIH0gZnJvbSAnQHl1dXZpcy9jbGllbnQtY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiwgc3dpdGNoTWFwLCB0YXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFwcCB9IGZyb20gJy4uLy4uL2NsaWVudC1zaGVsbC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgU0hFTExfQ09ORklHX0ZFQVRVUkVTIH0gZnJvbSAnLi4vc2hlbGwtY29uZmlnL3NoZWxsLWNvbmZpZy5jb25zdCc7XG5pbXBvcnQgeyBTaGVsbENvbmZpZ1NlcnZpY2UgfSBmcm9tICcuLi9zaGVsbC1jb25maWcvc2hlbGwtY29uZmlnLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ2xpZW50U2hlbGxGZWF0dXJlLCBDbGllbnRTaGVsbEZlYXR1cmVDb25maWcgfSBmcm9tICcuL2ZlYXR1cmUuaW50ZXJmYWNlJztcbmltcG9ydCB7IENMSUVOVF9TSEVMTF9GRUFUVVJFX0NPTkZJRyB9IGZyb20gJy4vZmVhdHVyZS5wcm92aWRlcnMnO1xuaW1wb3J0IHsgU2hlbGxTZXJ2aWNlIH0gZnJvbSAnLi4vc2hlbGwvc2hlbGwuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEZlYXR1cmVTZXJ2aWNlIHtcbiAgI2ZlYXR1cmVDb25maWcgPSBpbmplY3Q8Q2xpZW50U2hlbGxGZWF0dXJlQ29uZmlnPihDTElFTlRfU0hFTExfRkVBVFVSRV9DT05GSUcpO1xuICAjdXNlclRva2VuID0gaW5qZWN0PFl1dlVzZXI+KFlVVl9VU0VSKTtcbiAgI3NoZWxsID0gaW5qZWN0KFNoZWxsU2VydmljZSk7XG4gICNzaGVsbENvbmZpZyA9IGluamVjdChTaGVsbENvbmZpZ1NlcnZpY2UpO1xuICAjZmVhdHVyZU9iamVjdElkPyA9IHRoaXMuI2ZlYXR1cmVDb25maWc/Lm9iamVjdElEO1xuICAjZmVhdHVyZXMgPSB0aGlzLiNmZWF0dXJlQ29uZmlnPy5mZWF0dXJlcyB8fCBbXTtcbiAgI2JhY2tlbmQgPSBpbmplY3QoQmFja2VuZFNlcnZpY2UpO1xuXG4gIGhhc0ZlYXR1cmVDb25maWcoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy4jZmVhdHVyZU9iamVjdElkO1xuICB9XG5cbiAgZ2V0RmVhdHVyZXMoKTogQ2xpZW50U2hlbGxGZWF0dXJlW10ge1xuICAgIHJldHVybiB0aGlzLiNmZWF0dXJlcztcbiAgfVxuXG4gIGdldEF2YWlsYWJsZUFwcHMoYWxsQXBwczogQXBwW10pOiBBcHBbXSB7XG4gICAgcmV0dXJuIGFsbEFwcHMuZmlsdGVyKChhcHApID0+IHRoaXMuY2FuVXNlQXBwKGFwcCkgJiYgdGhpcy5jYW5Vc2VGZWF0dXJlQnlJZChhcHAuaWQpKTtcbiAgfVxuXG4gIGNhblVzZUFwcChhcHA6IEFwcCkge1xuICAgIGNvbnN0IGF1dGhvcml0aWVzID0gdGhpcy4jdXNlclRva2VuPy5hdXRob3JpdGllcyB8fCBbXTtcbiAgICBjb25zdCBhbGxvd2VkID0gYXBwLnBlcm1pc3Npb25zPy5hbGxvdyB8fCBbXTtcbiAgICBjb25zdCBkZW5pZWQgPSBhcHAucGVybWlzc2lvbnM/LmRlbnkgfHwgW107XG5cbiAgICBjb25zdCBpc0FsbG93ZWQgPSBhbGxvd2VkLmxlbmd0aCA9PT0gMCB8fCBhdXRob3JpdGllcy5zb21lKChhdXRob3JpdHkpID0+IGFsbG93ZWQuaW5jbHVkZXMoYXV0aG9yaXR5KSk7XG4gICAgY29uc3QgaXNEZW5pZWQgPSBkZW5pZWQuc29tZSgoZGVuaWVkQXV0aG9yaXR5KSA9PiBhdXRob3JpdGllcy5pbmNsdWRlcyhkZW5pZWRBdXRob3JpdHkpKTtcblxuICAgIHJldHVybiBpc0FsbG93ZWQgJiYgIWlzRGVuaWVkO1xuICB9XG5cbiAgY2FuVXNlRmVhdHVyZUJ5SWQoZmVhdHVyZUlkOiBzdHJpbmcsIGF1dGhvcml0aWVzPzogc3RyaW5nW10pOiBib29sZWFuIHtcbiAgICBjb25zdCBmZWF0dXJlID0gdGhpcy4jZmVhdHVyZXMuZmluZCgoZikgPT4gZi5pZCA9PT0gZmVhdHVyZUlkKTtcbiAgICByZXR1cm4gIWZlYXR1cmUgfHwgdGhpcy5jYW5Vc2VGZWF0dXJlKGZlYXR1cmUsIGF1dGhvcml0aWVzKTtcbiAgfVxuXG4gIGNhblVzZUZlYXR1cmUoZmVhdHVyZTogQ2xpZW50U2hlbGxGZWF0dXJlLCBhdXRob3JpdGllcz86IHN0cmluZ1tdKTogYm9vbGVhbiB7XG4gICAgY29uc3QgYXV0aG9yaXRpZXNUb0NoZWNrID0gYXV0aG9yaXRpZXMgfHwgdGhpcy4jdXNlclRva2VuPy5hdXRob3JpdGllcyB8fCBbXTtcbiAgICBjb25zdCBhbGxvd2VkID0gZmVhdHVyZS5hbGxvd2VkIHx8IFtdO1xuICAgIGNvbnN0IGRlbmllZCA9IGZlYXR1cmUuZGVuaWVkIHx8IFtdO1xuXG4gICAgY29uc3QgaXNBbGxvd2VkID0gYWxsb3dlZC5sZW5ndGggPT09IDAgfHwgYXV0aG9yaXRpZXNUb0NoZWNrLnNvbWUoKGF1dGhvcml0eSkgPT4gYWxsb3dlZC5pbmNsdWRlcyhhdXRob3JpdHkpKTtcbiAgICBjb25zdCBpc0RlbmllZCA9IGRlbmllZC5zb21lKChkZW5pZWRBdXRob3JpdHkpID0+IGF1dGhvcml0aWVzVG9DaGVjay5pbmNsdWRlcyhkZW5pZWRBdXRob3JpdHkpKTtcblxuICAgIHJldHVybiBpc0FsbG93ZWQgJiYgIWlzRGVuaWVkO1xuICB9XG5cbiAgc2F2ZUZlYXR1cmVTZXR0aW5ncyhmZWF0dXJlczogQ2xpZW50U2hlbGxGZWF0dXJlW10pOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGlmICghdGhpcy4jZmVhdHVyZU9iamVjdElkKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIGZlYXR1cmUgY29uZmlndXJhdGlvbiBvYmplY3QgSUQgcHJvdmlkZWQnKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuI3NoZWxsQ29uZmlnLnVwZGF0ZSh0aGlzLiNmZWF0dXJlT2JqZWN0SWQsIGZlYXR1cmVzKS5waXBlKHRhcCgoKSA9PiAodGhpcy4jZmVhdHVyZXMgPSBmZWF0dXJlcykpKTtcbiAgfVxuXG4gIGRlbGV0ZUZlYXR1cmVTZXR0aW5ncygpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGlmICghdGhpcy4jZmVhdHVyZU9iamVjdElkKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIGZlYXR1cmUgY29uZmlndXJhdGlvbiBvYmplY3QgSUQgcHJvdmlkZWQnKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuI3NoZWxsQ29uZmlnLmRlbGV0ZSh0aGlzLiNmZWF0dXJlT2JqZWN0SWQpO1xuICB9XG5cbiAgY3JlYXRlU2V0dGluZ3NPYmplY3QoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy4jc2hlbGxDb25maWcuY3JlYXRlKFNIRUxMX0NPTkZJR19GRUFUVVJFUywgW10pLnBpcGUoXG4gICAgICB0YXAoKHJlcykgPT4ge1xuICAgICAgICB0aGlzLiNmZWF0dXJlT2JqZWN0SWQgPSByZXMuaWQ7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBleHBvcnQoKSB7XG4gICAgaWYgKHRoaXMuI2ZlYXR1cmVPYmplY3RJZCkge1xuICAgICAgdGhpcy4jc2hlbGxDb25maWcuZG93bmxvYWQodGhpcy4jZmVhdHVyZU9iamVjdElkLCBgJHtTSEVMTF9DT05GSUdfRkVBVFVSRVN9Lmpzb25gKTtcbiAgICB9XG4gIH1cblxuICBpbXBvcnQoKSB7XG4gICAgLy8gcmVhZCBmaWxlcyBjb250ZW50c1xuXG4gICAgcmV0dXJuIHRoaXMuI2ZlYXR1cmVPYmplY3RJZFxuICAgICAgPyB0aGlzLiNzaGVsbC5waWNrRmlsZSgpLnBpcGUoXG4gICAgICAgICAgc3dpdGNoTWFwKChmaWxlKSA9PlxuICAgICAgICAgICAgZmlsZVxuICAgICAgICAgICAgICA/IHRoaXMuI3NoZWxsQ29uZmlnLnVwbG9hZCh0aGlzLiNmZWF0dXJlT2JqZWN0SWQhLCBmaWxlKS5waXBlKFxuICAgICAgICAgICAgICAgICAgc3dpdGNoTWFwKChyZXMpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgLy8gcmVhZCB1cGxvYWRlZCBmaWxlXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLiNiYWNrZW5kLmdldChgL2Rtcy9vYmplY3RzLyR7cmVzLmlkfS9jb250ZW50cy9maWxlYCkucGlwZShcbiAgICAgICAgICAgICAgICAgICAgICB0YXAoKGRhdGEpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIHVwZGF0ZSBmZWF0dXJlc1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coJ2RhdGEnLCBkYXRhKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy4jZmVhdHVyZXMgPSBkYXRhO1xuICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgOiBvZihudWxsKVxuICAgICAgICAgIClcbiAgICAgICAgKVxuICAgICAgOiBvZihudWxsKTtcbiAgfVxufVxuIl19
@@ -4,10 +4,10 @@ export class NoopExtension {
4
4
  init() {
5
5
  return Promise.resolve();
6
6
  }
7
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: NoopExtension, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
8
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: NoopExtension }); }
7
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.12", ngImport: i0, type: NoopExtension, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
8
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.12", ngImport: i0, type: NoopExtension }); }
9
9
  }
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: NoopExtension, decorators: [{
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.12", ngImport: i0, type: NoopExtension, decorators: [{
11
11
  type: Injectable
12
12
  }] });
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9vcC5leHRlbnNpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3l1dXZpcy9jbGllbnQtc2hlbGwtY29yZS9zcmMvbGliL3NlcnZpY2VzL3NoZWxsL25vb3AuZXh0ZW5zaW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSTNDLE1BQU0sT0FBTyxhQUFhO0lBQ3hCLElBQUk7UUFDRixPQUFPLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUMzQixDQUFDOzhHQUhVLGFBQWE7a0hBQWIsYUFBYTs7MkZBQWIsYUFBYTtrQkFEekIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENsaWVudFNoZWxsRXh0ZW5zaW9uIH0gZnJvbSAnLi4vLi4vY2xpZW50LXNoZWxsLmludGVyZmFjZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBOb29wRXh0ZW5zaW9uIGltcGxlbWVudHMgQ2xpZW50U2hlbGxFeHRlbnNpb24ge1xuICBpbml0KCk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuICB9XG59XG4iXX0=
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9vcC5leHRlbnNpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3l1dXZpcy9jbGllbnQtc2hlbGwtY29yZS9zcmMvbGliL3NlcnZpY2VzL3NoZWxsL25vb3AuZXh0ZW5zaW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSTNDLE1BQU0sT0FBTyxhQUFhO0lBQ3hCLElBQUk7UUFDRixPQUFPLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUMzQixDQUFDOytHQUhVLGFBQWE7bUhBQWIsYUFBYTs7NEZBQWIsYUFBYTtrQkFEekIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENsaWVudFNoZWxsRXh0ZW5zaW9uIH0gZnJvbSAnLi4vLi4vY2xpZW50LXNoZWxsLmludGVyZmFjZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBOb29wRXh0ZW5zaW9uIGltcGxlbWVudHMgQ2xpZW50U2hlbGxFeHRlbnNpb24ge1xuICBpbml0KCk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuICB9XG59XG4iXX0=
@@ -351,13 +351,13 @@ export class ShellService {
351
351
  });
352
352
  }
353
353
  _init() { }
354
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: ShellService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
355
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: ShellService, providedIn: 'root' }); }
354
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.12", ngImport: i0, type: ShellService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
355
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.12", ngImport: i0, type: ShellService, providedIn: 'root' }); }
356
356
  }
357
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: ShellService, decorators: [{
357
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.12", ngImport: i0, type: ShellService, decorators: [{
358
358
  type: Injectable,
359
359
  args: [{
360
360
  providedIn: 'root'
361
361
  }]
362
362
  }] });
363
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hlbGwuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMveXV1dmlzL2NsaWVudC1zaGVsbC1jb3JlL3NyYy9saWIvc2VydmljZXMvc2hlbGwvc2hlbGwuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQVEsTUFBTSxlQUFlLENBQUM7QUFDakUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDekQsT0FBTyxFQUNMLE9BQU8sRUFDUCxtQkFBbUIsRUFDbkIsYUFBYSxFQUViLFVBQVUsRUFFVixhQUFhLEVBQ2IsVUFBVSxFQUNWLGdCQUFnQixFQUNoQixXQUFXLEVBQ1gsS0FBSyxFQUVOLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLGNBQWMsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFjLEVBQUUsRUFBRSxhQUFhLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pJLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBR2hFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBRXhFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFLM0MsTUFBTSxPQUFPLFlBQVk7SUFIekI7UUFJRSxnQkFBVyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNqQyxZQUFPLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzVCLFlBQU8sR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDaEMsaUJBQVksR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDbkMsMkhBQTJIO1FBQzNILDhDQUE4QztRQUM5QyxrQkFBYSxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUN4QyxpQkFBWSxHQUFHLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQzFDLG1CQUFjLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3ZDLGVBQVUsR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDbEMsY0FBUyxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNyQixjQUFTLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFFckMsZUFBVSxHQUFHLENBQUMsQ0FBQztRQUNmLGtCQUFhLEdBQUcsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7UUFDNUQsWUFBTyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWSxFQUFFLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBRXBFLGlCQUFZLEdBQXFDLEVBQUUsQ0FBQztRQUNwRCx3QkFBbUIsR0FBRyxJQUFJLGFBQWEsRUFBc0IsQ0FBQztRQUM5RCxpQkFBWSxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFFL0UsaUJBQVksR0FBZ0IsRUFBRSxDQUFDO1FBQy9CLGtCQUFhLEdBQTJCLEVBQUUsQ0FBQztRQUUzQyx3QkFBbUIsR0FBc0I7WUFDdkMsT0FBTyxFQUFFLG1CQUFtQixDQUFDLE9BQU87WUFDcEMsa0JBQWtCLEVBQUUsbUJBQW1CLENBQUMsa0JBQWtCO1NBQzNELENBQUM7UUFDRixnQkFBVyxHQUFHLE1BQU0sQ0FBb0IsSUFBSSxDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFFbEU7Ozs7O1dBS0c7UUFDSCxxQkFBZ0IsR0FBK0IsU0FBUyxDQUFnQixRQUFRLEVBQUUsU0FBUyxDQUFDLENBQUMsSUFBSSxDQUMvRixHQUFHLENBQUMsQ0FBQyxDQUFnQixFQUFFLEVBQUU7WUFDdkIsNkJBQTZCO1lBQzdCLHdDQUF3QztZQUN4Qyx3QkFBd0I7WUFDeEIsa0NBQWtDO1lBQ2xDLElBQUk7WUFDSixPQUFPLFNBQVMsQ0FBQztRQUNuQixDQUFDLENBQUMsRUFDRixNQUFNLENBQUMsQ0FBQyxDQUE2QixFQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssU0FBUyxDQUFDLEVBQzFELEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBbUIsQ0FBQyxDQUNoQyxDQUFDO1FBRU0sZ0JBQVcsR0FBa0MsRUFBRSxDQUFDO1FBQ2hELG1CQUFjLEdBQW1CLEVBQUUsQ0FBQztRQUNwQyx5QkFBb0IsR0FBeUIsRUFBRSxDQUFDO0tBcVV6RDtJQXhYQyxXQUFXLENBQXNCO0lBQ2pDLE9BQU8sQ0FBcUI7SUFDNUIsT0FBTyxDQUF5QjtJQUNoQyxZQUFZLENBQXVCO0lBQ25DLDJIQUEySDtJQUMzSCw4Q0FBOEM7SUFDOUMsYUFBYSxDQUEyQjtJQUN4QyxZQUFZLENBQThCO0lBQzFDLGNBQWMsQ0FBeUI7SUFDdkMsVUFBVSxDQUF3QjtJQUNsQyxTQUFTLENBQW9CO0lBTzdCLFlBQVksQ0FBd0M7SUFDcEQsbUJBQW1CLENBQTJDO0lBRzlELFlBQVksQ0FBbUI7SUFHL0IsbUJBQW1CLENBR2pCO0lBMEJGLFFBQVE7UUFDTixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNwRCxLQUFLLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQztRQUNwQixLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDZCxPQUFPLFNBQVMsQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLENBQUMsSUFBSSxDQUNwQyxHQUFHLENBQUMsQ0FBQyxDQUFRLEVBQUUsRUFBRSxDQUFFLENBQUMsQ0FBQyxNQUEyQixDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxFQUNwRSxHQUFHLENBQUMsR0FBRyxFQUFFO1lBQ1AsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2pCLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRUQsY0FBYyxDQUFDLEdBQXNCO1FBQ25DLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQy9CLE9BQU8sRUFBRSxHQUFHLENBQUMsT0FBTyxJQUFJLEVBQUUsQ0FBQyxPQUFPO1lBQ2xDLGtCQUFrQixFQUFFLEdBQUcsQ0FBQyxrQkFBa0IsSUFBSSxFQUFFLENBQUMsa0JBQWtCO1NBQ3BFLENBQUMsQ0FBQyxDQUFDO0lBQ04sQ0FBQztJQUVELGdCQUFnQixDQUFDLElBQVc7UUFDMUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDakUsQ0FBQztJQUVELFdBQVcsQ0FBQyxNQUFpQjtRQUMzQixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsRUFBVTtRQUN6QixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILG1CQUFtQixDQUFDLEtBQWEsRUFBRSxHQUFxQjtRQUN0RCxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxHQUFHLEdBQUcsQ0FBQztRQUMvQixJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFFRDs7O09BR0c7SUFDSCxpQkFBaUIsQ0FBQyxLQUFhO1FBQzdCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUNqQyxHQUFHLENBQUMsQ0FBQyxDQUFzQixFQUFFLEVBQUU7WUFDN0IsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLFlBQVksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO1FBQ3JHLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRUQsb0JBQW9CLENBQUMsS0FBYSxFQUFFLFFBQTBCO1FBQzVELE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLGlCQUFpQixFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxRQUFRLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDMUYsQ0FBQztJQUVELGVBQWU7UUFDYixPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQzthQUNsQyxHQUFHLENBQUMsQ0FBQyxHQUFXLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDckIsS0FBSyxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSztZQUNuQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLO1lBQ25DLFVBQVUsRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFVBQVU7U0FDOUMsQ0FBQyxDQUFDO2FBQ0YsSUFBSSxFQUFFLENBQUM7SUFDWixDQUFDO0lBRUQsT0FBTztRQUNMLElBQUksSUFBSSxDQUFDLFVBQVUsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUMxQixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNoQyxDQUFDO1FBQ0QsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3BCLENBQUM7SUFDRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ2xCLElBQUksSUFBSSxDQUFDLFVBQVUsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUMxQixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNqQyxDQUFDO0lBQ0gsQ0FBQztJQUVELHlCQUF5QixDQUFDLE9BQTZCO1FBQ3JELE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUEwQixFQUFFLEVBQUU7WUFDN0MsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDM0UsSUFBSSxHQUFHLEtBQUssQ0FBQyxDQUFDO2dCQUFFLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDekQsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsMEJBQTBCLENBQUMsT0FBNkI7UUFDdEQsTUFBTSxHQUFHLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxJQUFJLENBQUMsb0JBQW9CLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDM0YsQ0FBQztJQUVELHNCQUFzQjtRQUNwQixPQUFPLElBQUksQ0FBQyxvQkFBb0IsQ0FBQztJQUNuQyxDQUFDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNILG1CQUFtQixDQUFDLE9BQTBCLEVBQUUsR0FBRyxHQUFHLFFBQVEsRUFBRSxTQUEyQixLQUFLO1FBQzlGLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVEOzs7T0FHRztJQUNILG9CQUFvQixDQUFDLE9BQTBCLEVBQUUsR0FBRyxHQUFHLFFBQVE7UUFDN0QsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFRDs7Ozs7Ozs7OztPQVVHO0lBQ0gsa0JBQWtCLENBQUMsTUFBdUIsRUFBRSxHQUFHLEdBQUcsUUFBUSxFQUFFLFNBQTJCLEtBQUs7UUFDMUYsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssTUFBTSxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsR0FBRyxLQUFLLEdBQUcsQ0FBQyxDQUFDO1FBQ3RGLElBQUksR0FBRyxLQUFLLENBQUMsQ0FBQztZQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxNQUFNLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxtQkFBbUIsQ0FBQyxNQUF1QixFQUFFLEdBQUcsR0FBRyxRQUFRO1FBQ3pELElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssTUFBTSxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsR0FBRyxLQUFLLEdBQUcsQ0FBQyxDQUFDO0lBQy9GLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILGdCQUFnQixDQUFDLEdBQVk7UUFDM0IsT0FBTyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDO0lBQ3hGLENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNILHdCQUF3QixDQUFDLFNBQW9CLEVBQUUsTUFBb0IsRUFBRSxJQUFVLEVBQUUsY0FBMEI7UUFDekcsSUFBSSxTQUFTLEVBQUUsQ0FBQztZQUNkLE1BQU0sRUFBRSxHQUFHLGNBQWMsSUFBSSxNQUFNLENBQUMsY0FBYyxDQUFDO1lBQ25ELElBQUksRUFBRSxFQUFFLENBQUM7Z0JBQ1AsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFO29CQUNwQixRQUFRLEVBQUUsTUFBTTtvQkFDaEIsU0FBUyxFQUFFLE1BQU07b0JBQ2pCLFFBQVEsRUFBRSxNQUFNO29CQUNoQixJQUFJLEVBQUU7d0JBQ0osU0FBUzt3QkFDVCxNQUFNO3dCQUNOLElBQUk7cUJBQ0w7aUJBQ0YsQ0FBQyxDQUFDO2dCQUNILE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2xCLENBQUM7aUJBQU0sQ0FBQztnQkFDTixNQUFNLElBQUksR0FBYyxTQUFTLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLHlCQUF5QixDQUFjLElBQUksRUFBRSxDQUFDO2dCQUN6RyxNQUFNLElBQUksR0FBUSxFQUFFLENBQUM7Z0JBQ3JCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyx5QkFBeUIsQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLEVBQUUsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUM1RSxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsZUFBZSxDQUFDLFNBQVMsRUFBRSxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1lBQ3JGLENBQUM7UUFDSCxDQUFDOztZQUFNLE9BQU8sRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxTQUFvQixFQUFFLE1BQW9CO1FBQzNELE1BQU0sSUFBSSxHQUE0QjtZQUNwQyxDQUFDLG1CQUFtQixDQUFDLHlCQUF5QixDQUFDLEVBQUcsU0FBUyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyx5QkFBeUIsQ0FBYyxDQUFDLE1BQU0sQ0FDakksQ0FBQyxHQUFXLEVBQUUsRUFBRSxDQUFDLEdBQUcsS0FBSyxNQUFNLENBQUMsR0FBRyxDQUNwQztTQUNGLENBQUM7UUFDRixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3BGLENBQUM7SUFFRDs7Ozs7Ozs7O09BU0c7SUFDSCw0QkFBNEIsQ0FBQyxRQUFnQixFQUFFLEdBQVksRUFBRSxhQUE4QjtRQUN6RixPQUFPLENBQUMsR0FBRyxDQUFDLGFBQWEsSUFBSSxFQUFFLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxNQUFNLENBQzlELENBQUMsRUFBZ0IsRUFBRSxFQUFFLENBQ25CLENBQUMsQ0FBQyxFQUFFLENBQUMsWUFBWSxFQUFFLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxZQUFZLEVBQUUsT0FBTyxJQUFJLEVBQUUsQ0FBQyxZQUFZLEVBQUUsU0FBUyxDQUFDLENBQUM7WUFDdkYsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxZQUFZO2dCQUNmLENBQUMsRUFBRSxDQUFDLFlBQVksRUFBRSxTQUFTO2dCQUMzQixDQUFDLEVBQUUsQ0FBQyxZQUFZLEVBQUUsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLEVBQUUsQ0FBQyxHQUFHLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUN4SCxDQUFDO0lBQ0osQ0FBQztJQUVELDBCQUEwQixDQUFDLEdBQVksRUFBRSxhQUE4QjtRQUNyRSxPQUFPLENBQUMsR0FBRyxDQUFDLGFBQWEsSUFBSSxFQUFFLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFnQixFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsWUFBWSxFQUFFLE9BQU8sSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLEVBQUUsQ0FBQyxHQUFHLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQztJQUMvSSxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILHVCQUF1QixDQUFDLFNBQW9CO1FBSTFDLE1BQU0sT0FBTyxHQUFtQixFQUFFLENBQUM7UUFDbkMsTUFBTSxVQUFVLEdBQW1CLEVBQUUsQ0FBQztRQUN0QyxJQUFJLFNBQVMsRUFBRSxDQUFDO1lBQ2QsTUFBTSxJQUFJLEdBQWMsU0FBUyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyx5QkFBeUIsQ0FBYyxJQUFJLEVBQUUsQ0FBQztZQUN6RyxJQUFJLFNBQVMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztnQkFDdEIsSUFBSSxDQUFDLDRCQUE0QixDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBb0IsRUFBRSxFQUFFO29CQUM3RixJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7d0JBQzlCLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7b0JBQ3ZCLENBQUM7eUJBQU0sQ0FBQzt3QkFDTixVQUFVLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO29CQUMxQixDQUFDO2dCQUNILENBQUMsQ0FBQyxDQUFDO1lBQ0wsQ0FBQztZQUVELElBQUksU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUN2QixJQUFJLENBQUMsMEJBQTBCLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFvQixFQUFFLEVBQUU7b0JBQ2pFLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQzt3QkFDOUIsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztvQkFDdkIsQ0FBQzt5QkFBTSxDQUFDO3dCQUNOLFVBQVUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7b0JBQzFCLENBQUM7Z0JBQ0gsQ0FBQyxDQUFDLENBQUM7WUFDTCxDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLENBQUM7SUFDakMsQ0FBQztJQUVELGNBQWMsQ0FBQyxFQUFVO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUMxRSxDQUFDO0lBRUQsaUJBQWlCLENBQUMsU0FBb0IsRUFBRSxNQUFvQixFQUFFLE9BQWdDLEVBQUU7UUFDOUYsTUFBTSxJQUFJLEdBQWMsU0FBUyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyx5QkFBeUIsQ0FBYyxJQUFJLEVBQUUsQ0FBQztRQUN6RyxJQUFJLENBQUMsbUJBQW1CLENBQUMseUJBQXlCLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxFQUFFLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM1RSxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUVELHFCQUFxQixDQUFDLEdBQWtCO1FBQ3RDLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLEdBQUcsQ0FBQztJQUNyQyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILDJCQUEyQjtRQUN6QixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDMUIsQ0FBQztJQUVELHFCQUFxQjtRQUNuQiwyQkFBMkI7UUFDM0IsT0FBTyxDQUFDLEtBQUssQ0FBQywrQkFBK0IsQ0FBQyxDQUFDO1FBQy9DLE9BQU8sY0FBYyxDQUNuQixJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLElBQUksQ0FDNUMsR0FBRyxDQUFDLENBQUMsR0FBNEIsRUFBRSxFQUFFO1lBQ25DLElBQUksR0FBRyxFQUFFLENBQUM7Z0JBQ1IsSUFBSSxDQUFDLHdCQUF3QixDQUFFLEdBQUcsQ0FBQyxJQUEwQixDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBRWhGLE1BQU0sR0FBRyxHQUF1QixHQUFHLENBQUMsSUFBMEIsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7b0JBQ3pFLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRTtvQkFDUixHQUFHLEVBQUUsQ0FBQyxDQUFDLEVBQUU7b0JBQ1QsSUFBSSxFQUFFLENBQUMsQ0FBQyxFQUFFO29CQUNWLE9BQU8sRUFBRSxJQUFJO29CQUNiLFlBQVksRUFBRSxDQUFDLENBQUMsUUFBUTtvQkFDeEIsWUFBWSxFQUFFO3dCQUNaLE9BQU8sRUFBRSxDQUFDLENBQUMsUUFBUSxLQUFLLFVBQVUsQ0FBQyxNQUFNLElBQUksQ0FBQyxDQUFDLFFBQVEsS0FBSyxVQUFVLENBQUMsTUFBTTt3QkFDN0UsU0FBUyxFQUFFLENBQUMsQ0FBQyxRQUFRLEtBQUssVUFBVSxDQUFDLFFBQVEsSUFBSSxDQUFDLENBQUMsUUFBUSxLQUFLLFVBQVUsQ0FBQyxNQUFNO3dCQUNqRixTQUFTLEVBQUUsQ0FBQyxDQUFDLHFCQUFxQixJQUFJLFNBQVM7cUJBQ2hEO29CQUNELHdCQUF3QixFQUFFLENBQUMsQ0FBQyxDQUFDLFlBQVk7aUJBQzFDLENBQUMsQ0FBQyxDQUFDO2dCQUNKLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLEVBQUUsUUFBUSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1lBQ3BELENBQUM7UUFDSCxDQUFDLENBQUMsQ0FDSCxDQUNGLENBQUM7SUFDSixDQUFDO0lBRUQsd0JBQXdCLENBQUMsR0FBYTtRQUNwQyxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQzlDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRTtnQkFDakIsa0ZBQWtGO2dCQUNsRixNQUFNLFFBQVEsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUMvQixJQUFJLFFBQVEsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7b0JBQzFCLE1BQU0sR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLG9CQUFvQixDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUM7b0JBQzVHLElBQUksQ0FBQyxhQUFhLENBQUMscUJBQXFCLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLDhCQUE4QixDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQzFILENBQUM7WUFDSCxDQUFDLENBQUMsQ0FBQztZQUNILEdBQUcsQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNsQiw4REFBOEQ7WUFDOUQsMkJBQTJCO1FBQzdCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELEtBQUssS0FBSSxDQUFDOzhHQXhYQyxZQUFZO2tIQUFaLFlBQVksY0FGWCxNQUFNOzsyRkFFUCxZQUFZO2tCQUh4QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSwgc2lnbmFsLCBUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgTWF0SWNvblJlZ2lzdHJ5IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7XG4gIEFwaUJhc2UsXG4gIEJhc2VPYmplY3RUeXBlRmllbGQsXG4gIENvbmZpZ1NlcnZpY2UsXG4gIERtc09iamVjdCxcbiAgRG1zU2VydmljZSxcbiAgT2JqZWN0Q3JlYXRlRmxhdm9yLFxuICBTeXN0ZW1TZXJ2aWNlLFxuICBTeXN0ZW1UeXBlLFxuICBUcmFuc2xhdGVTZXJ2aWNlLFxuICBVc2VyU2VydmljZSxcbiAgVXRpbHMsXG4gIFl1dlVzZXJcbn0gZnJvbSAnQHl1dXZpcy9jbGllbnQtY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGRlYm91bmNlVGltZSwgZmlsdGVyLCBmaXJzdFZhbHVlRnJvbSwgZnJvbUV2ZW50LCBtYXAsIE9ic2VydmFibGUsIG9mLCBSZXBsYXlTdWJqZWN0LCB0YXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENMSUVOVF9TSEVMTF9BU1NFVFMgfSBmcm9tICcuLi8uLi9jbGllbnQtc2hlbGwuYXNzZXRzJztcbmltcG9ydCB7IEFwcCwgQXBwU2NoZW1hLCBBcHBTY2hlbWFGbGF2b3IsIENsaWVudFNoZWxsQ29uZmlnLCBHbG9iYWxTaG9ydGN1dCwgT2JqZWN0Rmxhdm9yLCBTaGVsbEFwcFNldHRpbmdzIH0gZnJvbSAnLi4vLi4vY2xpZW50LXNoZWxsLmludGVyZmFjZSc7XG5pbXBvcnQgeyBUaWxlRXh0ZW5zaW9uIH0gZnJvbSAnLi4vLi4vdGlsZS1leHRlbnNpb24uaW50ZXJmYWNlJztcbmltcG9ydCB7IFNIRUxMX0NPTkZJR19UWVBFUyB9IGZyb20gJy4uL3NoZWxsLWNvbmZpZy9zaGVsbC1jb25maWcuY29uc3QnO1xuaW1wb3J0IHsgQ2xpZW50U2hlbGxUeXBlLCBTaGVsbENvbmZpZyB9IGZyb20gJy4uL3NoZWxsLWNvbmZpZy9zaGVsbC1jb25maWcuaW50ZXJmYWNlJztcbmltcG9ydCB7IFNoZWxsQ29uZmlnU2VydmljZSB9IGZyb20gJy4uL3NoZWxsLWNvbmZpZy9zaGVsbC1jb25maWcuc2VydmljZSc7XG5pbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFNoZWxsU2VydmljZSB7XG4gICNkbXNTZXJ2aWNlID0gaW5qZWN0KERtc1NlcnZpY2UpO1xuICAjZGlhbG9nID0gaW5qZWN0KE1hdERpYWxvZyk7XG4gICNzeXN0ZW0gPSBpbmplY3QoU3lzdGVtU2VydmljZSk7XG4gICN1c2VyU2VydmljZSA9IGluamVjdChVc2VyU2VydmljZSk7XG4gIC8vIFRPRE86IE5lZWQgb3JpZ25hbCBNYXRJY29uUmVnaXN0cnkgdG8gI3JlZ2lzdGVyT2JqZWN0VHlwZUljb25zLCBvdGhlcndpc2UgaWNvbnMgY291bGQgbm90IGJlIHJlZ2lzdGVyZWQgaW4gdGhlIG5hbWVzcGFjZVxuICAvLyAjaWNvblJlZ2lzdHJ5ID0gaW5qZWN0KFl1dk1hdEljb25SZWdpc3RyeSk7XG4gICNpY29uUmVnaXN0cnkgPSBpbmplY3QoTWF0SWNvblJlZ2lzdHJ5KTtcbiAgI3NoZWxsQ29uZmlnID0gaW5qZWN0KFNoZWxsQ29uZmlnU2VydmljZSk7XG4gICNjb25maWdTZXJ2aWNlID0gaW5qZWN0KENvbmZpZ1NlcnZpY2UpO1xuICAjc2FuaXRpemVyID0gaW5qZWN0KERvbVNhbml0aXplcik7XG4gICNET0NVTUVOVCA9IGluamVjdChET0NVTUVOVCk7XG4gIHByaXZhdGUgdHJhbnNsYXRlID0gaW5qZWN0KFRyYW5zbGF0ZVNlcnZpY2UpO1xuXG4gIHByaXZhdGUgX2J1c3lDb3VudCA9IDA7XG4gIHByaXZhdGUgaXNCdXN5U3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICBpc0J1c3kkID0gdGhpcy5pc0J1c3lTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpLnBpcGUoZGVib3VuY2VUaW1lKDUwMCkpO1xuXG4gICNhcHBTZXR0aW5nczogUmVjb3JkPHN0cmluZywgU2hlbGxBcHBTZXR0aW5ncz4gPSB7fTtcbiAgI2FwcFNldHRpbmdzU3ViamVjdCA9IG5ldyBSZXBsYXlTdWJqZWN0PFNoZWxsQXBwU2V0dGluZ3NbXT4oKTtcbiAgYXBwU2V0dGluZ3MkID0gdGhpcy4jYXBwU2V0dGluZ3NTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpLnBpcGUoZGVib3VuY2VUaW1lKDUwMCkpO1xuXG4gICNhcHBTY2hlbWF0YTogQXBwU2NoZW1hW10gPSBbXTtcbiAgYXBwQmFzZVJvdXRlczogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHt9O1xuXG4gICNkZWZhdWx0U2hlbGxDb25maWc6IENsaWVudFNoZWxsQ29uZmlnID0ge1xuICAgIGFwcEljb246IENMSUVOVF9TSEVMTF9BU1NFVFMuYXBwSWNvbixcbiAgICBzaGVsbEljb25OYW1lc3BhY2U6IENMSUVOVF9TSEVMTF9BU1NFVFMuc2hlbGxJY29uTmFtZXNwYWNlXG4gIH07XG4gIHNoZWxsQ29uZmlnID0gc2lnbmFsPENsaWVudFNoZWxsQ29uZmlnPih0aGlzLiNkZWZhdWx0U2hlbGxDb25maWcpO1xuXG4gIC8qKiBUT0RPOiBpbXBsZW1lbnQgdGhpcyBmZWF0dXJlID8/Pz9cbiAgICogR2xvYmFsIHNob3J0Y3V0cyBhcmUgY2FwdHVyZWQgYnkgdGhlIHNoZWxsIHRvIHByb3ZpZGUgYSBjb25zaXN0ZW50IGV4cGVyaWVuY2VcbiAgICogYWNjcm9zcyBhbGwgYXBwcy4gU2VhcmNoIGlzIG9uZSBleGFtcGxlLiBBcHBzIHNob3VsZCBub3QgZGVmaW5lIHRoZWlyIG93biBzaG91cnRjdXRzXG4gICAqIGZvciBzZWFyY2guIEluc3RlYWQgdGhleSBzaG91bGQgc3Vic2NyaWJlIHRvIHRoZSBnbG9iYWwgc2hvcnRjdXRzIGFuZCBpbml0aWFsaXplIHRoZWlyXG4gICAqIHNlYXJjaCBiYXNlZCBvbiB0aGUgZ2xvYmFsIHNlYXJjaCBzaG9ydGN1dC5cbiAgICovXG4gIGdsb2JhbFNob3J0Y3V0cyQ6IE9ic2VydmFibGU8R2xvYmFsU2hvcnRjdXQ+ID0gZnJvbUV2ZW50PEtleWJvYXJkRXZlbnQ+KGRvY3VtZW50LCAna2V5ZG93bicpLnBpcGUoXG4gICAgbWFwKChlOiBLZXlib2FyZEV2ZW50KSA9PiB7XG4gICAgICAvLyBnbG9iYWwgc2hvcnRjdXQgZm9yIHNlYXJjaFxuICAgICAgLy8gaWYgKGUuY3RybEtleSAmJiBlLmNvZGUgPT09ICdLZXlGJykge1xuICAgICAgLy8gICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAvLyAgIHJldHVybiBHbG9iYWxTaG9ydGN1dC5zZWFyY2g7XG4gICAgICAvLyB9XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH0pLFxuICAgIGZpbHRlcigoczogR2xvYmFsU2hvcnRjdXQgfCB1bmRlZmluZWQpID0+IHMgIT09IHVuZGVmaW5lZCksXG4gICAgbWFwKChzKSA9PiBzIGFzIEdsb2JhbFNob3J0Y3V0KVxuICApO1xuXG4gIHByaXZhdGUgX2V4dGVuc2lvbnM6IFJlY29yZDxzdHJpbmcsIFRpbGVFeHRlbnNpb24+ID0ge307XG4gIHByaXZhdGUgX29iamVjdEZsYXZvcnM6IE9iamVjdEZsYXZvcltdID0gW107XG4gIHByaXZhdGUgX29iamVjdENyZWF0ZUZsYXZvcnM6IE9iamVjdENyZWF0ZUZsYXZvcltdID0gW107XG5cbiAgcGlja0ZpbGUoKTogT2JzZXJ2YWJsZTxGaWxlIHwgbnVsbD4ge1xuICAgIGNvbnN0IGlucHV0ID0gdGhpcy4jRE9DVU1FTlQuY3JlYXRlRWxlbWVudCgnaW5wdXQnKTtcbiAgICBpbnB1dC50eXBlID0gJ2ZpbGUnO1xuICAgIGlucHV0LmNsaWNrKCk7XG4gICAgcmV0dXJuIGZyb21FdmVudChpbnB1dCwgJ2NoYW5nZScpLnBpcGUoXG4gICAgICBtYXAoKGU6IEV2ZW50KSA9PiAoZS50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCkuZmlsZXM/LlswXSB8fCBudWxsKSxcbiAgICAgIHRhcCgoKSA9PiB7XG4gICAgICAgIGlucHV0LnJlbW92ZSgpO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgc2V0U2hlbGxDb25maWcoY3NjOiBDbGllbnRTaGVsbENvbmZpZykge1xuICAgIHRoaXMuc2hlbGxDb25maWcudXBkYXRlKChzYykgPT4gKHtcbiAgICAgIGFwcEljb246IGNzYy5hcHBJY29uID8/IHNjLmFwcEljb24sXG4gICAgICBzaGVsbEljb25OYW1lc3BhY2U6IGNzYy5zaGVsbEljb25OYW1lc3BhY2UgPz8gc2Muc2hlbGxJY29uTmFtZXNwYWNlXG4gICAgfSkpO1xuICB9XG5cbiAgc2V0QXBwQmFzZVJvdXRlcyhhcHBzOiBBcHBbXSkge1xuICAgIGFwcHMuZm9yRWFjaCgoYSkgPT4gKHRoaXMuYXBwQmFzZVJvdXRlc1thLmlkXSA9IGEucGF0aCB8fCAnJykpO1xuICB9XG5cbiAgcmVnaXN0ZXJBcHAoc2NoZW1hOiBBcHBTY2hlbWEpIHtcbiAgICB0aGlzLiNhcHBTY2hlbWF0YS5wdXNoKHNjaGVtYSk7XG4gIH1cblxuICBnZXRSZWdpc3RlcmVkQXBwKGlkOiBzdHJpbmcpOiBBcHBTY2hlbWEgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLiNhcHBTY2hlbWF0YS5maW5kKChhKSA9PiBhLmlkID09PSBpZCk7XG4gIH1cblxuICAvKipcbiAgICogUmVnaXN0ZXIgc2V0dGluZ3MgZm9yIGFwcHMgdG8gaG9vayBpbnRvIHNoZWxsIHNldHRpbmdzIHBhZ2UuXG4gICAqIFRoZXNlIGV4cG9zZWQgc2V0dGluZ3Mgd2lsbCBiZSBzYXZlZCBpbiB0aGUgdXNlcnMgc2V0dGluZ3Mgb24gdGhlIGJhY2tlbmQuXG4gICAqIEBwYXJhbSBhcHBJRCBJRCBvZiB0aGUgYXBwIHRoYXQgZXhwb3NlcyB0aGUgc2V0dGluZ3NcbiAgICogQHBhcmFtIGNmZyBTaGVsbEFwcFNldHRpbmdzIG9iamVjdCBjb250YWluaW5nIHRoZSBzZXR0aW5nc1xuICAgKi9cbiAgcmVnaXN0ZXJBcHBTZXR0aW5ncyhhcHBJRDogc3RyaW5nLCBjZmc6IFNoZWxsQXBwU2V0dGluZ3MpIHtcbiAgICB0aGlzLiNhcHBTZXR0aW5nc1thcHBJRF0gPSBjZmc7XG4gICAgdGhpcy4jYXBwU2V0dGluZ3NTdWJqZWN0Lm5leHQodGhpcy4jZ2V0QXBwU2V0dGluZ3MoKSk7XG4gIH1cblxuICAvKipcbiAgICogTG9hZCBwZXJzaXN0ZWQgc2V0dGluZ3MgZm9yIGEgc3BlY2lmaWMgYXBwXG4gICAqIEBwYXJhbSBhcHBJRCBJRCBvZiB0aGUgYXBwIHRvIGxvYWQgdGhlIHNldHRpbmdzIGZvclxuICAgKi9cbiAgdXNlcnNBcHBTZXR0aW5ncyQoYXBwSUQ6IHN0cmluZyk6IE9ic2VydmFibGU8U2hlbGxBcHBTZXR0aW5ncyB8IHVuZGVmaW5lZD4ge1xuICAgIHJldHVybiB0aGlzLiN1c2VyU2VydmljZS51c2VyJC5waXBlKFxuICAgICAgbWFwKCh1OiBZdXZVc2VyIHwgdW5kZWZpbmVkKSA9PiB7XG4gICAgICAgIHJldHVybiB1ICYmIHUudXNlclNldHRpbmdzLmNsaWVudEFwcFNldHRpbmdzID8gdS51c2VyU2V0dGluZ3MuY2xpZW50QXBwU2V0dGluZ3NbYXBwSURdIDogdW5kZWZpbmVkO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgc2F2ZVVzZXJzQXBwU2V0dGluZ3MoYXBwSUQ6IHN0cmluZywgc2V0dGluZ3M6IFNoZWxsQXBwU2V0dGluZ3MpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLiN1c2VyU2VydmljZS5zYXZlVXNlclNldHRpbmdzKHsgY2xpZW50QXBwU2V0dGluZ3M6IHsgW2FwcElEXTogc2V0dGluZ3MgfSB9KTtcbiAgfVxuXG4gICNnZXRBcHBTZXR0aW5ncygpOiBTaGVsbEFwcFNldHRpbmdzW10ge1xuICAgIHJldHVybiBPYmplY3Qua2V5cyh0aGlzLiNhcHBTZXR0aW5ncylcbiAgICAgIC5tYXAoKGtleTogc3RyaW5nKSA9PiAoe1xuICAgICAgICBhcHBJRDogdGhpcy4jYXBwU2V0dGluZ3Nba2V5XS5hcHBJRCxcbiAgICAgICAgbGFiZWw6IHRoaXMuI2FwcFNldHRpbmdzW2tleV0ubGFiZWwsXG4gICAgICAgIHByb3BlcnRpZXM6IHRoaXMuI2FwcFNldHRpbmdzW2tleV0ucHJvcGVydGllc1xuICAgICAgfSkpXG4gICAgICAuc29ydCgpO1xuICB9XG5cbiAgYWRkQnVzeSgpIHtcbiAgICBpZiAodGhpcy5fYnVzeUNvdW50ID09PSAwKSB7XG4gICAgICB0aGlzLmlzQnVzeVN1YmplY3QubmV4dCh0cnVlKTtcbiAgICB9XG4gICAgdGhpcy5fYnVzeUNvdW50Kys7XG4gIH1cbiAgcmVtb3ZlQnVzeSgpIHtcbiAgICB0aGlzLl9idXN5Q291bnQtLTtcbiAgICBpZiAodGhpcy5fYnVzeUNvdW50ID09PSAwKSB7XG4gICAgICB0aGlzLmlzQnVzeVN1YmplY3QubmV4dChmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgZXhwb3NlT2JqZWN0Q3JlYXRlRmxhdm9ycyhmbGF2b3JzOiBPYmplY3RDcmVhdGVGbGF2b3JbXSkge1xuICAgIGZsYXZvcnMuZm9yRWFjaCgoZmxhdm9yOiBPYmplY3RDcmVhdGVGbGF2b3IpID0+IHtcbiAgICAgIGNvbnN0IGlkeCA9IHRoaXMuX29iamVjdENyZWF0ZUZsYXZvcnMuZmluZEluZGV4KChmKSA9PiBmLmlkID09PSBmbGF2b3IuaWQpO1xuICAgICAgaWYgKGlkeCA9PT0gLTEpIHRoaXMuX29iamVjdENyZWF0ZUZsYXZvcnMucHVzaChmbGF2b3IpO1xuICAgIH0pO1xuICB9XG5cbiAgY29uY2VhbE9iamVjdENyZWF0ZUZsYXZvcnMoZmxhdm9yczogT2JqZWN0Q3JlYXRlRmxhdm9yW10pIHtcbiAgICBjb25zdCBmaWQgPSBmbGF2b3JzLm1hcCgoZikgPT4gZi5pZCk7XG4gICAgdGhpcy5fb2JqZWN0Q3JlYXRlRmxhdm9ycyA9IHRoaXMuX29iamVjdENyZWF0ZUZsYXZvcnMuZmlsdGVyKChmKSA9PiAhZmlkLmluY2x1ZGVzKGYuaWQpKTtcbiAgfVxuXG4gIGdldE9iamVjdENyZWF0ZUZsYXZvcnMoKTogT2JqZWN0Q3JlYXRlRmxhdm9yW10ge1xuICAgIHJldHVybiB0aGlzLl9vYmplY3RDcmVhdGVGbGF2b3JzO1xuICB9XG5cbiAgLyoqXG4gICAqIEV4cG9zZXMgYSBsaXN0IG9mIG9iamVjdCBmbGF2b3JzIHRvIHRoZSBzaGVsbC5cbiAgICogRmxhdm9ycyBhcmUgYWJsZSB0byBiZSBhcHBsaWVkIHRvIG9iamVjdHMgYW5kIGFkZCBuZXcgbWV0YWRhdGEgcHJvcGVydGllcyB0byB0aGVtLlxuICAgKiBAcGFyYW0gZmxhdm9ycyBBcnJheSBvZiBmbGF2b3JzIHRvIGJlIGV4cG9zZWRcbiAgICogQHBhcmFtIGFwcCBPcHRpb25hbCBJRCBvZiB0aGUgYXBwIHRoYXQgZXhwb3NlcyB0aGUgZmxhdm9ycyAoZGVmYXVsdHMgdG8gJ2dsb2JhbCcgaWYgbm90IHByb3ZpZGVkKVxuICAgKiBAcGFyYW0gb3JpZ2luIE9wdGlvbmFsIG9yaWdpbiBvZiB0aGUgZmxhdm9ycy4gRmxhdm9ycyBjb3VsZCBiZSBhZGRlZCBieSBhcHBzIG9yIGRlcml2ZWRcbiAgICogZnJvbSBhIGNvbmZpZ3VyYXRpb24gKGRlZmF1bHRzIHRvICdhcHAnIGlmIG5vdCBwcm92aWRlZClcbiAgICovXG4gIGV4cG9zZU9iamVjdEZsYXZvcnMoZmxhdm9yczogQXBwU2NoZW1hRmxhdm9yW10sIGFwcCA9ICdnbG9iYWwnLCBvcmlnaW46ICdhcHAnIHwgJ2NvbmZpZycgPSAnYXBwJykge1xuICAgIGZsYXZvcnMuZm9yRWFjaCgoZikgPT4gdGhpcy5leHBvc2VPYmplY3RGbGF2b3IoZiwgYXBwLCBvcmlnaW4pKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZW1vdmVzIGV4cG9zZWQgb2JqZWN0IGZsYXZvcnMgZnJvbSB0aGUgc2hlbGwuXG4gICAqIEBwYXJhbSBmbGF2b3JzIEFycmF5IG9mIGZsYXZvcnMgdG8gYmUgY29uY2VhbGVkXG4gICAqL1xuICBjb25jZWFsT2JqZWN0Rmxhdm9ycyhmbGF2b3JzOiBBcHBTY2hlbWFGbGF2b3JbXSwgYXBwID0gJ2dsb2JhbCcpIHtcbiAgICBmbGF2b3JzLmZvckVhY2goKGYpID0+IHRoaXMuY29uY2VhbE9iamVjdEZsYXZvcihmLCBhcHApKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFeHBvc2VzIGFuIG9iamVjdCBmbGF2b3IgdG8gdGhlIHNoZWxsLiBGbGF2b3JzIGFyZSBhYmxlIHRvIGJlIGFwcGxpZWQgdG8gb2JqZWN0c1xuICAgKiBpbiBvcmRlciB0byBhZGQgYSBuZXcgYXNwZWN0IHRvIHRoZW0uIEFuIG9iamVjdCBjb250YWluaW5nIGFuIGltYWdlIGZvciBleGFtcGxlIGNvdWxkXG4gICAqIGJlIGFkZGVkIGEgZmxhdm9yIG9mICdFWElGIERhdGEnIHRoYXQgd2lsbCBhZGQgdGhlIGNvcnJlc3BvbmRpbmcgU09UIHRvIGl0LiBUaGlzIHdheSB0aGVcbiAgICogb2JqZWN0IGdldHMgbmV3IG1ldGFkYXRhIHByb3BlcnRpZXMuIElmIHN1cHBvcnRlZCwgdGhlc2UgbWV0YWRhdGEgY291bGQgZXZlbiBiZSBleHRyYWN0ZWRcbiAgICogZnJvbSB0aGUgZmlsZSBhbmQgZmlsbGVkIG91dCBhdXRvbWF0aWNhbGx5LlxuICAgKiBAcGFyYW0gZmxhdm9yIFRoZSBmbGF2b3Igb2JqZWN0IHRvIGJlIGV4cG9zZWRcbiAgICogQHBhcmFtIGFwcCBPcHRpb25hbCBJRCBvZiB0aGUgYXBwIHRoYXQgZXhwb3NlcyB0aGUgZmxhdm9yIChkZWZhdWx0cyB0byAnZ2xvYmFsJyBpZiBub3QgcHJvdmlkZWQpXG4gICAqIEBwYXJhbSBvcmlnaW4gT3B0aW9uYWwgb3JpZ2luIG9mIHRoZSBmbGF2b3JzLiBGbGF2b3JzIGNvdWxkIGJlIGFkZGVkIGJ5IGFwcHMgb3IgZGVyaXZlZFxuICAgKiBmcm9tIGEgY29uZmlndXJhdGlvbiAoZGVmYXVsdHMgdG8gJ2FwcCcgaWYgbm90IHByb3ZpZGVkKVxuICAgKi9cbiAgZXhwb3NlT2JqZWN0Rmxhdm9yKGZsYXZvcjogQXBwU2NoZW1hRmxhdm9yLCBhcHAgPSAnZ2xvYmFsJywgb3JpZ2luOiAnYXBwJyB8ICdjb25maWcnID0gJ2FwcCcpIHtcbiAgICBjb25zdCBpZHggPSB0aGlzLl9vYmplY3RGbGF2b3JzLmZpbmRJbmRleCgoZikgPT4gZi5pZCA9PT0gZmxhdm9yLmlkICYmIGYuYXBwID09PSBhcHApO1xuICAgIGlmIChpZHggPT09IC0xKSB0aGlzLl9vYmplY3RGbGF2b3JzLnB1c2goeyAuLi5mbGF2b3IsIGFwcCwgb3JpZ2luIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZXMgYW4gZXhwb3NlZCBvYmplY3QgZmxhdm9yIGZyb20gdGhlIHNoZWxsLlxuICAgKiBAcGFyYW0gZmxhdm9yIEZsYXZvciB0byBiZSBjb25jZWFsZWRcbiAgICogQHBhcmFtIGFwcCBPcHRpb25hbCBJRCBvZiB0aGUgYXBwIHRoYXQgZXhwb3NlcyB0aGUgZmxhdm9yIChkZWZhdWx0cyB0byAnZ2xvYmFsJyBpZiBub3QgcHJvdmlkZWQpXG4gICAqL1xuICBjb25jZWFsT2JqZWN0Rmxhdm9yKGZsYXZvcjogQXBwU2NoZW1hRmxhdm9yLCBhcHAgPSAnZ2xvYmFsJykge1xuICAgIHRoaXMuX29iamVjdEZsYXZvcnMgPSB0aGlzLl9vYmplY3RGbGF2b3JzLmZpbHRlcigoZikgPT4gZi5pZCAhPT0gZmxhdm9yLmlkICYmIGYuYXBwICE9PSBhcHApO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCByZWdpc3RlcmVkIG9iamVjdCBmbGF2b3JzXG4gICAqIEBwYXJhbSBhcHAgT3B0aW9uYWwgYXBwIElEIHRoYXQgcmVzdHJpY3RzIHRoZSByZXR1cm5lZCBmbGF2b3JzIHRvIHRoZSBvbmVzXG4gICAqIHByb3ZpZGVkIGJ5IGEgcGFydGljdWxhciBhcHAuIElmIG5vdCBwcm92aWRlZCBhbGwgZmxhdm9ycyBhcmUgcmV0dXJuZWRcbiAgICogQHJldHVybnMgQXJyYXkgb2YgbWF0Y2hpbmcgb2JqZWN0IGZsYXZvcnNcbiAgICovXG4gIGdldE9iamVjdEZsYXZvcnMoYXBwPzogc3RyaW5nKTogT2JqZWN0Rmxhdm9yW10ge1xuICAgIHJldHVybiBhcHAgPyB0aGlzLl9vYmplY3RGbGF2b3JzLmZpbHRlcigob2YpID0+IG9mLmFwcCA9PT0gYXBwKSA6IHRoaXMuX29iamVjdEZsYXZvcnM7XG4gIH1cblxuICAvKipcbiAgICogVHJpZ2dlcnMgdGhlIGFwcGxpY2F0aW9uIG9mIGFuIG9iamVjdCBmbGF2b3IuIElmIHRoZSBmbGF2b3IgaGFzIGFuIGFwcGx5Q29tcG9uZW50XG4gICAqIGRlZmluZWQsIHRoZSBvdmVybGF5IHdpbGwgYmUgb3BlbmVkIHdpdGggdGhlIGNvbXBvbmVudC4gT3RoZXJ3aXNlIHRoZSBmbGF2b3Igd2lsbFxuICAgKiBiZSBhcHBsaWVkIGRpcmVjdGx5IHRvIHRoZSBvYmplY3QuXG4gICAqIEBwYXJhbSBkbXNPYmplY3QgVGhlIG9iamVjdCB0byBhcHBseSB0aGUgZmxhdm9yIHRvXG4gICAqIEBwYXJhbSBmbGF2b3IgVGhlIGZsYXZvciB0byBhcHBseVxuICAgKiBAcGFyYW0gZGF0YSBPcHRpb25hbCBkYXRhIHRvIGJlIHBhc3NlZCB0byB0aGUgZmxhdm9yIGNvbXBvbmVudFxuICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlIHRoYXQgZW1pdHMgdHJ1ZSBpZiB0aGUgZmxhdm9yIHdhcyBhcHBsaWVkIHN1Y2Nlc3NmdWxseVxuICAgKi9cbiAgdHJpZ2dlckFwcGx5T2JqZWN0Rmxhdm9yKGRtc09iamVjdDogRG1zT2JqZWN0LCBmbGF2b3I6IE9iamVjdEZsYXZvciwgZGF0YT86IGFueSwgYXBwbHlDb21wb25lbnQ/OiBUeXBlPGFueT4pOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICBpZiAoZG1zT2JqZWN0KSB7XG4gICAgICBjb25zdCBhYyA9IGFwcGx5Q29tcG9uZW50IHx8IGZsYXZvci5hcHBseUNvbXBvbmVudDtcbiAgICAgIGlmIChhYykge1xuICAgICAgICB0aGlzLiNkaWFsb2cub3BlbihhYywge1xuICAgICAgICAgIG1heFdpZHRoOiAnOTB2dycsXG4gICAgICAgICAgbWF4SGVpZ2h0OiAnOTB2aCcsXG4gICAgICAgICAgbWluV2lkdGg6ICc1MHZ3JyxcbiAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICBkbXNPYmplY3QsXG4gICAgICAgICAgICBmbGF2b3IsXG4gICAgICAgICAgICBkYXRhXG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIG9mKHRydWUpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3Qgc290czogc3RyaW5nW10gPSAoZG1zT2JqZWN0LmRhdGFbQmFzZU9iamVjdFR5cGVGaWVsZC5TRUNPTkRBUllfT0JKRUNUX1RZUEVfSURTXSBhcyBzdHJpbmdbXSkgfHwgW107XG4gICAgICAgIGNvbnN0IGRhdGE6IGFueSA9IHt9O1xuICAgICAgICBkYXRhW0Jhc2VPYmplY3RUeXBlRmllbGQuU0VDT05EQVJZX09CSkVDVF9UWVBFX0lEU10gPSBbLi4uc290cywgZmxhdm9yLnNvdF07XG4gICAgICAgIHJldHVybiB0aGlzLiNkbXNTZXJ2aWNlLnVwZGF0ZURtc09iamVjdChkbXNPYmplY3Q/LmlkLCBkYXRhKS5waXBlKG1hcCgoKSA9PiB0cnVlKSk7XG4gICAgICB9XG4gICAgfSBlbHNlIHJldHVybiBvZihmYWxzZSk7XG4gIH1cblxuICByZW1vdmVPYmplY3RGbGF2b3IoZG1zT2JqZWN0OiBEbXNPYmplY3QsIGZsYXZvcjogT2JqZWN0Rmxhdm9yKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBkYXRhOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiA9IHtcbiAgICAgIFtCYXNlT2JqZWN0VHlwZUZpZWxkLlNFQ09OREFSWV9PQkpFQ1RfVFlQRV9JRFNdOiAoZG1zT2JqZWN0LmRhdGFbQmFzZU9iamVjdFR5cGVGaWVsZC5TRUNPTkRBUllfT0JKRUNUX1RZUEVfSURTXSBhcyBzdHJpbmdbXSkuZmlsdGVyKFxuICAgICAgICAoc290OiBzdHJpbmcpID0+IHNvdCAhPT0gZmxhdm9yLnNvdFxuICAgICAgKVxuICAgIH07XG4gICAgcmV0dXJuIHRoaXMuI2Rtc1NlcnZpY2UudXBkYXRlRG1zT2JqZWN0KGRtc09iamVjdC5pZCwgZGF0YSkucGlwZShtYXAoKCkgPT4gdHJ1ZSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBvYmplY3QgZmxhdm9ycyBhcHBsaWNhYmxlIGZvciBhIGNlcnRhaW4gbWltZXR5cGVcbiAgICogQHBhcmFtIG1pbWVUeXBlIE1pbWUgdHlwZSBvciBtaW1lIHR5cGUgcGF0dGVybiBsaWtlICdpbWFnZS8qJ1xuICAgKiBAcGFyYW0gYXBwIE9wdGlvbmFsIGFwcCBJRCB0aGF0IHJlc3RyaWN0cyB0aGUgcmV0dXJuZWQgZmxhdm9ycyB0byB0aGUgb25lc1xuICAgKiBwcm92aWRlZCBieSBhIHBhcnRpY3VsYXIgYXBwXG4gICAqIEBwYXJhbSBjdXN0b21GbGF2b3JzIE9wdGlvbmFsIGFycmF5IG9mIGN1c3RvbSBmbGF2b3JzIHRvIGFsc28gdGFrZSBpbnRvIGFjY291bnQuXG4gICAqIFRoaXMgY291bGQgYmUgZmxhdm9ycyBtYW5hZ2VkIGJ5IGFuIGFwcCBpdHNlbGYgdGhhdCBhcmUgbm90IHN1cHBvc2VkIHRvIGJlXG4gICAqIGV4cG9zZWQgdG8gb3RoZXIgYXBwc1xuICAgKiBAcmV0dXJucyBBcnJheSBvZiBtYXRjaGluZyBvYmplY3QgZmxhdm9yc1xuICAgKi9cbiAgZ2V0QXBwbGljYWJsZURvY3VtZW50Rmxhdm9ycyhtaW1lVHlwZTogc3RyaW5nLCBhcHA/OiBzdHJpbmcsIGN1c3RvbUZsYXZvcnM/OiBPYmplY3RGbGF2b3JbXSk6IE9iamVjdEZsYXZvcltdIHtcbiAgICByZXR1cm4gWy4uLihjdXN0b21GbGF2b3JzIHx8IFtdKSwgLi4udGhpcy5fb2JqZWN0Rmxhdm9yc10uZmlsdGVyKFxuICAgICAgKG9mOiBPYmplY3RGbGF2b3IpID0+XG4gICAgICAgICghb2YuYXBwbGljYWJsZVRvPy5mb2xkZXJzIHx8IChvZi5hcHBsaWNhYmxlVG8/LmZvbGRlcnMgJiYgb2YuYXBwbGljYWJsZVRvPy5kb2N1bWVudHMpKSAmJlxuICAgICAgICAoIW9mLmFwcGxpY2FibGVUbyB8fFxuICAgICAgICAgICFvZi5hcHBsaWNhYmxlVG8/Lm1pbWVUeXBlcyB8fFxuICAgICAgICAgIChvZi5hcHBsaWNhYmxlVG8/Lm1pbWVUeXBlcz8uc29tZSgobXRwKSA9PiBVdGlscy5wYXR0ZXJuVG9SZWdFeHAobXRwKS50ZXN0KG1pbWVUeXBlKSkgJiYgKCFhcHAgfHwgb2YuYXBwID09PSBhcHApKSlcbiAgICApO1xuICB9XG5cbiAgZ2V0QXBwbGljYWJsZUZvbGRlckZsYXZvcnMoYXBwPzogc3RyaW5nLCBjdXN0b21GbGF2b3JzPzogT2JqZWN0Rmxhdm9yW10pOiBPYmplY3RGbGF2b3JbXSB7XG4gICAgcmV0dXJuIFsuLi4oY3VzdG9tRmxhdm9ycyB8fCBbXSksIC4uLnRoaXMuX29iamVjdEZsYXZvcnNdLmZpbHRlcigob2Y6IE9iamVjdEZsYXZvcikgPT4gb2YuYXBwbGljYWJsZVRvPy5mb2xkZXJzICYmICghYXBwIHx8IG9mLmFwcCA9PT0gYXBwKSk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGFwcGxpZWQgYW5kIGFwcGxpY2FibGUgb2JqZWN0IGZsYXZvcnMgZm9yIGEgY2VydGFpbiBvYmplY3RcbiAgICogQHBhcmFtIGRtc09iamVjdCBEbXNPYmplY3QgdG8gZ2V0IGZsYXZvcnMgZm9yXG4gICAqIEByZXR1cm5zIE9iamVjdCBjb250YWluaW5nIHR3byBhcnJheXM6IGFwcGxpZWQgYW5kIGFwcGxpY2FibGUgZmxhdm9yc1xuICAgKi9cbiAgZ2V0QXBwbGllZE9iamVjdEZsYXZvcnMoZG1zT2JqZWN0OiBEbXNPYmplY3QpOiB7XG4gICAgYXBwbGllZDogT2JqZWN0Rmxhdm9yW107XG4gICAgYXBwbGljYWJsZTogT2JqZWN0Rmxhdm9yW107XG4gIH0ge1xuICAgIGNvbnN0IGFwcGxpZWQ6IE9iamVjdEZsYXZvcltdID0gW107XG4gICAgY29uc3QgYXBwbGljYWJsZTogT2JqZWN0Rmxhdm9yW10gPSBbXTtcbiAgICBpZiAoZG1zT2JqZWN0KSB7XG4gICAgICBjb25zdCBzb3RzOiBzdHJpbmdbXSA9IChkbXNPYmplY3QuZGF0YVtCYXNlT2JqZWN0VHlwZUZpZWxkLlNFQ09OREFSWV9PQkpFQ1RfVFlQRV9JRFNdIGFzIHN0cmluZ1tdKSB8fCBbXTtcbiAgICAgIGlmIChkbXNPYmplY3QuY29udGVudCkge1xuICAgICAgICB0aGlzLmdldEFwcGxpY2FibGVEb2N1bWVudEZsYXZvcnMoZG1zT2JqZWN0LmNvbnRlbnQubWltZVR5cGUpLmZvckVhY2goKGZsYXZvcjogT2JqZWN0Rmxhdm9yKSA9PiB7XG4gICAgICAgICAgaWYgKHNvdHMuaW5jbHVkZXMoZmxhdm9yLnNvdCkpIHtcbiAgICAgICAgICAgIGFwcGxpZWQucHVzaChmbGF2b3IpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBhcHBsaWNhYmxlLnB1c2goZmxhdm9yKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfVxuXG4gICAgICBpZiAoZG1zT2JqZWN0LmlzRm9sZGVyKSB7XG4gICAgICAgIHRoaXMuZ2V0QXBwbGljYWJsZUZvbGRlckZsYXZvcnMoKS5mb3JFYWNoKChmbGF2b3I6IE9iamVjdEZsYXZvcikgPT4ge1xuICAgICAgICAgIGlmIChzb3RzLmluY2x1ZGVzKGZsYXZvci5zb3QpKSB7XG4gICAgICAgICAgICBhcHBsaWVkLnB1c2goZmxhdm9yKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgYXBwbGljYWJsZS5wdXNoKGZsYXZvcik7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHsgYXBwbGllZCwgYXBwbGljYWJsZSB9O1xuICB9XG5cbiAgZ2V0Rmxhdm9yTGFiZWwoaWQ6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLiNzeXN0ZW0uZ2V0TG9jYWxpemVkTGFiZWwoaWQpIHx8IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoaWQpO1xuICB9XG5cbiAgYXBwbHlPYmplY3RGbGF2b3IoZG1zT2JqZWN0OiBEbXNPYmplY3QsIGZsYXZvcjogT2JqZWN0Rmxhdm9yLCBkYXRhOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiA9IHt9KTogT2JzZXJ2YWJsZTxEbXNPYmplY3Q+IHtcbiAgICBjb25zdCBzb3RzOiBzdHJpbmdbXSA9IChkbXNPYmplY3QuZGF0YVtCYXNlT2JqZWN0VHlwZUZpZWxkLlNFQ09OREFSWV9PQkpFQ1RfVFlQRV9JRFNdIGFzIHN0cmluZ1tdKSB8fCBbXTtcbiAgICBkYXRhW0Jhc2VPYmplY3RUeXBlRmllbGQuU0VDT05EQVJZX09CSkVDVF9UWVBFX0lEU10gPSBbLi4uc290cywgZmxhdm9yLnNvdF07XG4gICAgcmV0dXJuIHRoaXMuI2Rtc1NlcnZpY2UudXBkYXRlRG1zT2JqZWN0KGRtc09iamVjdC5pZCwgZGF0YSk7XG4gIH1cblxuICByZWdpc3RlclRpbGVFeHRlbnNpb24oZXh0OiBUaWxlRXh0ZW5zaW9uKSB7XG4gICAgdGhpcy5fZXh0ZW5zaW9uc1tleHQudHlwZUlkXSA9IGV4dDtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdGlsZSBleHRlbnNpb25zIGZvciBhIGNlcnRhaW4gdHlwZVxuICAgKiBAcGFyYW0gdHlwZUlkIElEIG9mIHRoZSB0eXBlIHRvIGZldGNoIGV4dGVzaW9uIGZvciAob2JqZWN0VHlwZUlEIG9yIHNlY29uZGFyeU9iamVjdFR5cGVJRClcbiAgICogQHJldHVybnNcbiAgICovXG4gIGdldFJlZ2lzdGVyZWRUaWxlRXh0ZW5zaW9ucygpOiBSZWNvcmQ8c3RyaW5nLCBUaWxlRXh0ZW5zaW9uPiB7XG4gICAgcmV0dXJuIHRoaXMuX2V4dGVuc2lvbnM7XG4gIH1cblxuICBfaW5pdE9iamVjdFR5cGVDb25maWcoKTogUHJvbWlzZTx1bmtub3duPiB7XG4gICAgLy8gbG9hZCBmbGF2b3JzIGZyb20gY29uZmlnXG4gICAgY29uc29sZS5kZWJ1ZygnTG9hZGluZyBvYmplY3QgdHlwZSBjb25maWcuLi4nKTtcbiAgICByZXR1cm4gZmlyc3RWYWx1ZUZyb20oXG4gICAgICB0aGlzLiNzaGVsbENvbmZpZy5nZXQoU0hFTExfQ09ORklHX1RZUEVTKS5waXBlKFxuICAgICAgICB0YXAoKHJlczogU2hlbGxDb25maWcgfCB1bmRlZmluZWQpID0+IHtcbiAgICAgICAgICBpZiAocmVzKSB7XG4gICAgICAgICAgICB0aGlzLiNyZWdpc3Rlck9iamVjdFR5cGVJY29ucygocmVzLmRhdGEgYXMgQ2xpZW50U2hlbGxUeXBlW10pLm1hcCgodCkgPT4gdC5pZCkpO1xuXG4gICAgICAgICAgICBjb25zdCBmbHY6IEFwcFNjaGVtYUZsYXZvcltdID0gKHJlcy5kYXRhIGFzIENsaWVudFNoZWxsVHlwZVtdKS5tYXAoKHQpID0+ICh7XG4gICAgICAgICAgICAgIGlkOiB0LmlkLFxuICAgICAgICAgICAgICBzb3Q6IHQuaWQsXG4gICAgICAgICAgICAgIGljb246IHQuaWQsXG4gICAgICAgICAgICAgIHN2Z0ljb246IHRydWUsXG4gICAgICAgICAgICAgIG9iamVjdFR5cGVJRDogdC5iYXNlVHlwZSxcbiAgICAgICAgICAgICAgYXBwbGljYWJsZVRvOiB7XG4gICAgICAgICAgICAgICAgZm9sZGVyczogdC5iYXNlVHlwZSA9PT0gU3lzdGVtVHlwZS5GT0xERVIgfHwgdC5iYXNlVHlwZSA9PT0gU3lzdGVtVHlwZS5PQkpFQ1QsXG4gICAgICAgICAgICAgICAgZG9jdW1lbnRzOiB0LmJhc2VUeXBlID09PSBTeXN0ZW1UeXBlLkRPQ1VNRU5UIHx8IHQuYmFzZVR5cGUgPT09IFN5c3RlbVR5cGUuT0JKRUNULFxuICAgICAgICAgICAgICAgIG1pbWVUeXBlczogdC5hcHBsaWNhYmxlVG9NaW1lVHlwZXMgfHwgdW5kZWZpbmVkXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIHVzZURlZmF1bHRBcHBseUNvbXBvbmVudDogIXQuaW5zdGFudEFwcGx5XG4gICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICB0aGlzLmV4cG9zZU9iamVjdEZsYXZvcnMoZmx2LCAnZ2xvYmFsJywgJ2NvbmZpZycpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgIClcbiAgICApO1xuICB9XG5cbiAgI3JlZ2lzdGVyT2JqZWN0VHlwZUljb25zKGlkczogc3RyaW5nW10pIHtcbiAgICBjb25zdCBzdWIgPSB0aGlzLiNzeXN0ZW0uc3lzdGVtJC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgaWRzLmZvckVhY2goKGlkKSA9PiB7XG4gICAgICAgIC8vIHNwbGl0IHRlY2huaWNhbCBuYW1lIGUuZy4gJ3N5c3RlbTpkb2N1bWVudCcgYW5kIHVzZSB0aGUgZmlyc3QgcGFydCBhcyBuYW1lc3BhY2VcbiAgICAgICAgY29uc3QgaWRUb2tlbnMgPSBpZC5zcGxpdCgnOicpO1xuICAgICAgICBpZiAoaWRUb2tlbnMubGVuZ3RoID09PSAyKSB7XG4gICAgICAgICAgY29uc3QgdXJpID0gYCR7dGhpcy4jY29uZmlnU2VydmljZS5nZXRBcGlCYXNlKEFwaUJhc2Uubm9uZSwgdHJ1ZSl9JHt0aGlzLiNzeXN0ZW0uZ2V0T2JqZWN0VHlwZUljb25VcmkoaWQpfWA7XG4gICAgICAgICAgdGhpcy4jaWNvblJlZ2lzdHJ5LmFkZFN2Z0ljb25Jbk5hbWVzcGFjZShpZFRva2Vuc1swXSwgaWRUb2tlbnNbMV0sIHRoaXMuI3Nhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0UmVzb3VyY2VVcmwodXJpKSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgc3ViLnVuc3Vic2NyaWJlKCk7XG4gICAgICAvLyBjb25zdCBjb25maWcgPSAodGhpcy4jaWNvblJlZ2lzdHJ5IGFzIGFueSkuX3N2Z0ljb25Db25maWdzO1xuICAgICAgLy8gY29uc29sZS5sb2coeyBjb25maWcgfSk7XG4gICAgfSk7XG4gIH1cblxuICBfaW5pdCgpIHt9XG59XG4iXX0=
363
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hlbGwuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMveXV1dmlzL2NsaWVudC1zaGVsbC1jb3JlL3NyYy9saWIvc2VydmljZXMvc2hlbGwvc2hlbGwuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQVEsTUFBTSxlQUFlLENBQUM7QUFDakUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDekQsT0FBTyxFQUNMLE9BQU8sRUFDUCxtQkFBbUIsRUFDbkIsYUFBYSxFQUViLFVBQVUsRUFFVixhQUFhLEVBQ2IsVUFBVSxFQUNWLGdCQUFnQixFQUNoQixXQUFXLEVBQ1gsS0FBSyxFQUVOLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLGNBQWMsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFjLEVBQUUsRUFBRSxhQUFhLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pJLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBR2hFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBRXhFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFLM0MsTUFBTSxPQUFPLFlBQVk7SUFIekI7UUFJRSxnQkFBVyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNqQyxZQUFPLEdBQUcsTUFBTSxDQUFDLFNB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QUFDOytHQXhYQyxZQUFZO21IQUFaLFlBQVksY0FGWCxNQUFNOzs0RkFFUCxZQUFZO2tCQUh4QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSwgc2lnbmFsLCBUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgTWF0SWNvblJlZ2lzdHJ5IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7XG4gIEFwaUJhc2UsXG4gIEJhc2VPYmplY3RUeXBlRmllbGQsXG4gIENvbmZpZ1NlcnZpY2UsXG4gIERtc09iamVjdCxcbiAgRG1zU2VydmljZSxcbiAgT2JqZWN0Q3JlYXRlRmxhdm9yLFxuICBTeXN0ZW1TZXJ2aWNlLFxuICBTeXN0ZW1UeXBlLFxuICBUcmFuc2xhdGVTZXJ2aWNlLFxuICBVc2VyU2VydmljZSxcbiAgVXRpbHMsXG4gIFl1dlVzZXJcbn0gZnJvbSAnQHl1dXZpcy9jbGllbnQtY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGRlYm91bmNlVGltZSwgZmlsdGVyLCBmaXJzdFZhbHVlRnJvbSwgZnJvbUV2ZW50LCBtYXAsIE9ic2VydmFibGUsIG9mLCBSZXBsYXlTdWJqZWN0LCB0YXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENMSUVOVF9TSEVMTF9BU1NFVFMgfSBmcm9tICcuLi8uLi9jbGllbnQtc2hlbGwuYXNzZXRzJztcbmltcG9ydCB7IEFwcCwgQXBwU2NoZW1hLCBBcHBTY2hlbWFGbGF2b3IsIENsaWVudFNoZWxsQ29uZmlnLCBHbG9iYWxTaG9ydGN1dCwgT2JqZWN0Rmxhdm9yLCBTaGVsbEFwcFNldHRpbmdzIH0gZnJvbSAnLi4vLi4vY2xpZW50LXNoZWxsLmludGVyZmFjZSc7XG5pbXBvcnQgeyBUaWxlRXh0ZW5zaW9uIH0gZnJvbSAnLi4vLi4vdGlsZS1leHRlbnNpb24uaW50ZXJmYWNlJztcbmltcG9ydCB7IFNIRUxMX0NPTkZJR19UWVBFUyB9IGZyb20gJy4uL3NoZWxsLWNvbmZpZy9zaGVsbC1jb25maWcuY29uc3QnO1xuaW1wb3J0IHsgQ2xpZW50U2hlbGxUeXBlLCBTaGVsbENvbmZpZyB9IGZyb20gJy4uL3NoZWxsLWNvbmZpZy9zaGVsbC1jb25maWcuaW50ZXJmYWNlJztcbmltcG9ydCB7IFNoZWxsQ29uZmlnU2VydmljZSB9IGZyb20gJy4uL3NoZWxsLWNvbmZpZy9zaGVsbC1jb25maWcuc2VydmljZSc7XG5pbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFNoZWxsU2VydmljZSB7XG4gICNkbXNTZXJ2aWNlID0gaW5qZWN0KERtc1NlcnZpY2UpO1xuICAjZGlhbG9nID0gaW5qZWN0KE1hdERpYWxvZyk7XG4gICNzeXN0ZW0gPSBpbmplY3QoU3lzdGVtU2VydmljZSk7XG4gICN1c2VyU2VydmljZSA9IGluamVjdChVc2VyU2VydmljZSk7XG4gIC8vIFRPRE86IE5lZWQgb3JpZ25hbCBNYXRJY29uUmVnaXN0cnkgdG8gI3JlZ2lzdGVyT2JqZWN0VHlwZUljb25zLCBvdGhlcndpc2UgaWNvbnMgY291bGQgbm90IGJlIHJlZ2lzdGVyZWQgaW4gdGhlIG5hbWVzcGFjZVxuICAvLyAjaWNvblJlZ2lzdHJ5ID0gaW5qZWN0KFl1dk1hdEljb25SZWdpc3RyeSk7XG4gICNpY29uUmVnaXN0cnkgPSBpbmplY3QoTWF0SWNvblJlZ2lzdHJ5KTtcbiAgI3NoZWxsQ29uZmlnID0gaW5qZWN0KFNoZWxsQ29uZmlnU2VydmljZSk7XG4gICNjb25maWdTZXJ2aWNlID0gaW5qZWN0KENvbmZpZ1NlcnZpY2UpO1xuICAjc2FuaXRpemVyID0gaW5qZWN0KERvbVNhbml0aXplcik7XG4gICNET0NVTUVOVCA9IGluamVjdChET0NVTUVOVCk7XG4gIHByaXZhdGUgdHJhbnNsYXRlID0gaW5qZWN0KFRyYW5zbGF0ZVNlcnZpY2UpO1xuXG4gIHByaXZhdGUgX2J1c3lDb3VudCA9IDA7XG4gIHByaXZhdGUgaXNCdXN5U3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICBpc0J1c3kkID0gdGhpcy5pc0J1c3lTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpLnBpcGUoZGVib3VuY2VUaW1lKDUwMCkpO1xuXG4gICNhcHBTZXR0aW5nczogUmVjb3JkPHN0cmluZywgU2hlbGxBcHBTZXR0aW5ncz4gPSB7fTtcbiAgI2FwcFNldHRpbmdzU3ViamVjdCA9IG5ldyBSZXBsYXlTdWJqZWN0PFNoZWxsQXBwU2V0dGluZ3NbXT4oKTtcbiAgYXBwU2V0dGluZ3MkID0gdGhpcy4jYXBwU2V0dGluZ3NTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpLnBpcGUoZGVib3VuY2VUaW1lKDUwMCkpO1xuXG4gICNhcHBTY2hlbWF0YTogQXBwU2NoZW1hW10gPSBbXTtcbiAgYXBwQmFzZVJvdXRlczogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHt9O1xuXG4gICNkZWZhdWx0U2hlbGxDb25maWc6IENsaWVudFNoZWxsQ29uZmlnID0ge1xuICAgIGFwcEljb246IENMSUVOVF9TSEVMTF9BU1NFVFMuYXBwSWNvbixcbiAgICBzaGVsbEljb25OYW1lc3BhY2U6IENMSUVOVF9TSEVMTF9BU1NFVFMuc2hlbGxJY29uTmFtZXNwYWNlXG4gIH07XG4gIHNoZWxsQ29uZmlnID0gc2lnbmFsPENsaWVudFNoZWxsQ29uZmlnPih0aGlzLiNkZWZhdWx0U2hlbGxDb25maWcpO1xuXG4gIC8qKiBUT0RPOiBpbXBsZW1lbnQgdGhpcyBmZWF0dXJlID8/Pz9cbiAgICogR2xvYmFsIHNob3J0Y3V0cyBhcmUgY2FwdHVyZWQgYnkgdGhlIHNoZWxsIHRvIHByb3ZpZGUgYSBjb25zaXN0ZW50IGV4cGVyaWVuY2VcbiAgICogYWNjcm9zcyBhbGwgYXBwcy4gU2VhcmNoIGlzIG9uZSBleGFtcGxlLiBBcHBzIHNob3VsZCBub3QgZGVmaW5lIHRoZWlyIG93biBzaG91cnRjdXRzXG4gICAqIGZvciBzZWFyY2guIEluc3RlYWQgdGhleSBzaG91bGQgc3Vic2NyaWJlIHRvIHRoZSBnbG9iYWwgc2hvcnRjdXRzIGFuZCBpbml0aWFsaXplIHRoZWlyXG4gICAqIHNlYXJjaCBiYXNlZCBvbiB0aGUgZ2xvYmFsIHNlYXJjaCBzaG9ydGN1dC5cbiAgICovXG4gIGdsb2JhbFNob3J0Y3V0cyQ6IE9ic2VydmFibGU8R2xvYmFsU2hvcnRjdXQ+ID0gZnJvbUV2ZW50PEtleWJvYXJkRXZlbnQ+KGRvY3VtZW50LCAna2V5ZG93bicpLnBpcGUoXG4gICAgbWFwKChlOiBLZXlib2FyZEV2ZW50KSA9PiB7XG4gICAgICAvLyBnbG9iYWwgc2hvcnRjdXQgZm9yIHNlYXJjaFxuICAgICAgLy8gaWYgKGUuY3RybEtleSAmJiBlLmNvZGUgPT09ICdLZXlGJykge1xuICAgICAgLy8gICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAvLyAgIHJldHVybiBHbG9iYWxTaG9ydGN1dC5zZWFyY2g7XG4gICAgICAvLyB9XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH0pLFxuICAgIGZpbHRlcigoczogR2xvYmFsU2hvcnRjdXQgfCB1bmRlZmluZWQpID0+IHMgIT09IHVuZGVmaW5lZCksXG4gICAgbWFwKChzKSA9PiBzIGFzIEdsb2JhbFNob3J0Y3V0KVxuICApO1xuXG4gIHByaXZhdGUgX2V4dGVuc2lvbnM6IFJlY29yZDxzdHJpbmcsIFRpbGVFeHRlbnNpb24+ID0ge307XG4gIHByaXZhdGUgX29iamVjdEZsYXZvcnM6IE9iamVjdEZsYXZvcltdID0gW107XG4gIHByaXZhdGUgX29iamVjdENyZWF0ZUZsYXZvcnM6IE9iamVjdENyZWF0ZUZsYXZvcltdID0gW107XG5cbiAgcGlja0ZpbGUoKTogT2JzZXJ2YWJsZTxGaWxlIHwgbnVsbD4ge1xuICAgIGNvbnN0IGlucHV0ID0gdGhpcy4jRE9DVU1FTlQuY3JlYXRlRWxlbWVudCgnaW5wdXQnKTtcbiAgICBpbnB1dC50eXBlID0gJ2ZpbGUnO1xuICAgIGlucHV0LmNsaWNrKCk7XG4gICAgcmV0dXJuIGZyb21FdmVudChpbnB1dCwgJ2NoYW5nZScpLnBpcGUoXG4gICAgICBtYXAoKGU6IEV2ZW50KSA9PiAoZS50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCkuZmlsZXM/LlswXSB8fCBudWxsKSxcbiAgICAgIHRhcCgoKSA9PiB7XG4gICAgICAgIGlucHV0LnJlbW92ZSgpO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgc2V0U2hlbGxDb25maWcoY3NjOiBDbGllbnRTaGVsbENvbmZpZykge1xuICAgIHRoaXMuc2hlbGxDb25maWcudXBkYXRlKChzYykgPT4gKHtcbiAgICAgIGFwcEljb246IGNzYy5hcHBJY29uID8/IHNjLmFwcEljb24sXG4gICAgICBzaGVsbEljb25OYW1lc3BhY2U6IGNzYy5zaGVsbEljb25OYW1lc3BhY2UgPz8gc2Muc2hlbGxJY29uTmFtZXNwYWNlXG4gICAgfSkpO1xuICB9XG5cbiAgc2V0QXBwQmFzZVJvdXRlcyhhcHBzOiBBcHBbXSkge1xuICAgIGFwcHMuZm9yRWFjaCgoYSkgPT4gKHRoaXMuYXBwQmFzZVJvdXRlc1thLmlkXSA9IGEucGF0aCB8fCAnJykpO1xuICB9XG5cbiAgcmVnaXN0ZXJBcHAoc2NoZW1hOiBBcHBTY2hlbWEpIHtcbiAgICB0aGlzLiNhcHBTY2hlbWF0YS5wdXNoKHNjaGVtYSk7XG4gIH1cblxuICBnZXRSZWdpc3RlcmVkQXBwKGlkOiBzdHJpbmcpOiBBcHBTY2hlbWEgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLiNhcHBTY2hlbWF0YS5maW5kKChhKSA9PiBhLmlkID09PSBpZCk7XG4gIH1cblxuICAvKipcbiAgICogUmVnaXN0ZXIgc2V0dGluZ3MgZm9yIGFwcHMgdG8gaG9vayBpbnRvIHNoZWxsIHNldHRpbmdzIHBhZ2UuXG4gICAqIFRoZXNlIGV4cG9zZWQgc2V0dGluZ3Mgd2lsbCBiZSBzYXZlZCBpbiB0aGUgdXNlcnMgc2V0dGluZ3Mgb24gdGhlIGJhY2tlbmQuXG4gICAqIEBwYXJhbSBhcHBJRCBJRCBvZiB0aGUgYXBwIHRoYXQgZXhwb3NlcyB0aGUgc2V0dGluZ3NcbiAgICogQHBhcmFtIGNmZyBTaGVsbEFwcFNldHRpbmdzIG9iamVjdCBjb250YWluaW5nIHRoZSBzZXR0aW5nc1xuICAgKi9cbiAgcmVnaXN0ZXJBcHBTZXR0aW5ncyhhcHBJRDogc3RyaW5nLCBjZmc6IFNoZWxsQXBwU2V0dGluZ3MpIHtcbiAgICB0aGlzLiNhcHBTZXR0aW5nc1thcHBJRF0gPSBjZmc7XG4gICAgdGhpcy4jYXBwU2V0dGluZ3NTdWJqZWN0Lm5leHQodGhpcy4jZ2V0QXBwU2V0dGluZ3MoKSk7XG4gIH1cblxuICAvKipcbiAgICogTG9hZCBwZXJzaXN0ZWQgc2V0dGluZ3MgZm9yIGEgc3BlY2lmaWMgYXBwXG4gICAqIEBwYXJhbSBhcHBJRCBJRCBvZiB0aGUgYXBwIHRvIGxvYWQgdGhlIHNldHRpbmdzIGZvclxuICAgKi9cbiAgdXNlcnNBcHBTZXR0aW5ncyQoYXBwSUQ6IHN0cmluZyk6IE9ic2VydmFibGU8U2hlbGxBcHBTZXR0aW5ncyB8IHVuZGVmaW5lZD4ge1xuICAgIHJldHVybiB0aGlzLiN1c2VyU2VydmljZS51c2VyJC5waXBlKFxuICAgICAgbWFwKCh1OiBZdXZVc2VyIHwgdW5kZWZpbmVkKSA9PiB7XG4gICAgICAgIHJldHVybiB1ICYmIHUudXNlclNldHRpbmdzLmNsaWVudEFwcFNldHRpbmdzID8gdS51c2VyU2V0dGluZ3MuY2xpZW50QXBwU2V0dGluZ3NbYXBwSURdIDogdW5kZWZpbmVkO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgc2F2ZVVzZXJzQXBwU2V0dGluZ3MoYXBwSUQ6IHN0cmluZywgc2V0dGluZ3M6IFNoZWxsQXBwU2V0dGluZ3MpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLiN1c2VyU2VydmljZS5zYXZlVXNlclNldHRpbmdzKHsgY2xpZW50QXBwU2V0dGluZ3M6IHsgW2FwcElEXTogc2V0dGluZ3MgfSB9KTtcbiAgfVxuXG4gICNnZXRBcHBTZXR0aW5ncygpOiBTaGVsbEFwcFNldHRpbmdzW10ge1xuICAgIHJldHVybiBPYmplY3Qua2V5cyh0aGlzLiNhcHBTZXR0aW5ncylcbiAgICAgIC5tYXAoKGtleTogc3RyaW5nKSA9PiAoe1xuICAgICAgICBhcHBJRDogdGhpcy4jYXBwU2V0dGluZ3Nba2V5XS5hcHBJRCxcbiAgICAgICAgbGFiZWw6IHRoaXMuI2FwcFNldHRpbmdzW2tleV0ubGFiZWwsXG4gICAgICAgIHByb3BlcnRpZXM6IHRoaXMuI2FwcFNldHRpbmdzW2tleV0ucHJvcGVydGllc1xuICAgICAgfSkpXG4gICAgICAuc29ydCgpO1xuICB9XG5cbiAgYWRkQnVzeSgpIHtcbiAgICBpZiAodGhpcy5fYnVzeUNvdW50ID09PSAwKSB7XG4gICAgICB0aGlzLmlzQnVzeVN1YmplY3QubmV4dCh0cnVlKTtcbiAgICB9XG4gICAgdGhpcy5fYnVzeUNvdW50Kys7XG4gIH1cbiAgcmVtb3ZlQnVzeSgpIHtcbiAgICB0aGlzLl9idXN5Q291bnQtLTtcbiAgICBpZiAodGhpcy5fYnVzeUNvdW50ID09PSAwKSB7XG4gICAgICB0aGlzLmlzQnVzeVN1YmplY3QubmV4dChmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgZXhwb3NlT2JqZWN0Q3JlYXRlRmxhdm9ycyhmbGF2b3JzOiBPYmplY3RDcmVhdGVGbGF2b3JbXSkge1xuICAgIGZsYXZvcnMuZm9yRWFjaCgoZmxhdm9yOiBPYmplY3RDcmVhdGVGbGF2b3IpID0+IHtcbiAgICAgIGNvbnN0IGlkeCA9IHRoaXMuX29iamVjdENyZWF0ZUZsYXZvcnMuZmluZEluZGV4KChmKSA9PiBmLmlkID09PSBmbGF2b3IuaWQpO1xuICAgICAgaWYgKGlkeCA9PT0gLTEpIHRoaXMuX29iamVjdENyZWF0ZUZsYXZvcnMucHVzaChmbGF2b3IpO1xuICAgIH0pO1xuICB9XG5cbiAgY29uY2VhbE9iamVjdENyZWF0ZUZsYXZvcnMoZmxhdm9yczogT2JqZWN0Q3JlYXRlRmxhdm9yW10pIHtcbiAgICBjb25zdCBmaWQgPSBmbGF2b3JzLm1hcCgoZikgPT4gZi5pZCk7XG4gICAgdGhpcy5fb2JqZWN0Q3JlYXRlRmxhdm9ycyA9IHRoaXMuX29iamVjdENyZWF0ZUZsYXZvcnMuZmlsdGVyKChmKSA9PiAhZmlkLmluY2x1ZGVzKGYuaWQpKTtcbiAgfVxuXG4gIGdldE9iamVjdENyZWF0ZUZsYXZvcnMoKTogT2JqZWN0Q3JlYXRlRmxhdm9yW10ge1xuICAgIHJldHVybiB0aGlzLl9vYmplY3RDcmVhdGVGbGF2b3JzO1xuICB9XG5cbiAgLyoqXG4gICAqIEV4cG9zZXMgYSBsaXN0IG9mIG9iamVjdCBmbGF2b3JzIHRvIHRoZSBzaGVsbC5cbiAgICogRmxhdm9ycyBhcmUgYWJsZSB0byBiZSBhcHBsaWVkIHRvIG9iamVjdHMgYW5kIGFkZCBuZXcgbWV0YWRhdGEgcHJvcGVydGllcyB0byB0aGVtLlxuICAgKiBAcGFyYW0gZmxhdm9ycyBBcnJheSBvZiBmbGF2b3JzIHRvIGJlIGV4cG9zZWRcbiAgICogQHBhcmFtIGFwcCBPcHRpb25hbCBJRCBvZiB0aGUgYXBwIHRoYXQgZXhwb3NlcyB0aGUgZmxhdm9ycyAoZGVmYXVsdHMgdG8gJ2dsb2JhbCcgaWYgbm90IHByb3ZpZGVkKVxuICAgKiBAcGFyYW0gb3JpZ2luIE9wdGlvbmFsIG9yaWdpbiBvZiB0aGUgZmxhdm9ycy4gRmxhdm9ycyBjb3VsZCBiZSBhZGRlZCBieSBhcHBzIG9yIGRlcml2ZWRcbiAgICogZnJvbSBhIGNvbmZpZ3VyYXRpb24gKGRlZmF1bHRzIHRvICdhcHAnIGlmIG5vdCBwcm92aWRlZClcbiAgICovXG4gIGV4cG9zZU9iamVjdEZsYXZvcnMoZmxhdm9yczogQXBwU2NoZW1hRmxhdm9yW10sIGFwcCA9ICdnbG9iYWwnLCBvcmlnaW46ICdhcHAnIHwgJ2NvbmZpZycgPSAnYXBwJykge1xuICAgIGZsYXZvcnMuZm9yRWFjaCgoZikgPT4gdGhpcy5leHBvc2VPYmplY3RGbGF2b3IoZiwgYXBwLCBvcmlnaW4pKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZW1vdmVzIGV4cG9zZWQgb2JqZWN0IGZsYXZvcnMgZnJvbSB0aGUgc2hlbGwuXG4gICAqIEBwYXJhbSBmbGF2b3JzIEFycmF5IG9mIGZsYXZvcnMgdG8gYmUgY29uY2VhbGVkXG4gICAqL1xuICBjb25jZWFsT2JqZWN0Rmxhdm9ycyhmbGF2b3JzOiBBcHBTY2hlbWFGbGF2b3JbXSwgYXBwID0gJ2dsb2JhbCcpIHtcbiAgICBmbGF2b3JzLmZvckVhY2goKGYpID0+IHRoaXMuY29uY2VhbE9iamVjdEZsYXZvcihmLCBhcHApKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFeHBvc2VzIGFuIG9iamVjdCBmbGF2b3IgdG8gdGhlIHNoZWxsLiBGbGF2b3JzIGFyZSBhYmxlIHRvIGJlIGFwcGxpZWQgdG8gb2JqZWN0c1xuICAgKiBpbiBvcmRlciB0byBhZGQgYSBuZXcgYXNwZWN0IHRvIHRoZW0uIEFuIG9iamVjdCBjb250YWluaW5nIGFuIGltYWdlIGZvciBleGFtcGxlIGNvdWxkXG4gICAqIGJlIGFkZGVkIGEgZmxhdm9yIG9mICdFWElGIERhdGEnIHRoYXQgd2lsbCBhZGQgdGhlIGNvcnJlc3BvbmRpbmcgU09UIHRvIGl0LiBUaGlzIHdheSB0aGVcbiAgICogb2JqZWN0IGdldHMgbmV3IG1ldGFkYXRhIHByb3BlcnRpZXMuIElmIHN1cHBvcnRlZCwgdGhlc2UgbWV0YWRhdGEgY291bGQgZXZlbiBiZSBleHRyYWN0ZWRcbiAgICogZnJvbSB0aGUgZmlsZSBhbmQgZmlsbGVkIG91dCBhdXRvbWF0aWNhbGx5LlxuICAgKiBAcGFyYW0gZmxhdm9yIFRoZSBmbGF2b3Igb2JqZWN0IHRvIGJlIGV4cG9zZWRcbiAgICogQHBhcmFtIGFwcCBPcHRpb25hbCBJRCBvZiB0aGUgYXBwIHRoYXQgZXhwb3NlcyB0aGUgZmxhdm9yIChkZWZhdWx0cyB0byAnZ2xvYmFsJyBpZiBub3QgcHJvdmlkZWQpXG4gICAqIEBwYXJhbSBvcmlnaW4gT3B0aW9uYWwgb3JpZ2luIG9mIHRoZSBmbGF2b3JzLiBGbGF2b3JzIGNvdWxkIGJlIGFkZGVkIGJ5IGFwcHMgb3IgZGVyaXZlZFxuICAgKiBmcm9tIGEgY29uZmlndXJhdGlvbiAoZGVmYXVsdHMgdG8gJ2FwcCcgaWYgbm90IHByb3ZpZGVkKVxuICAgKi9cbiAgZXhwb3NlT2JqZWN0Rmxhdm9yKGZsYXZvcjogQXBwU2NoZW1hRmxhdm9yLCBhcHAgPSAnZ2xvYmFsJywgb3JpZ2luOiAnYXBwJyB8ICdjb25maWcnID0gJ2FwcCcpIHtcbiAgICBjb25zdCBpZHggPSB0aGlzLl9vYmplY3RGbGF2b3JzLmZpbmRJbmRleCgoZikgPT4gZi5pZCA9PT0gZmxhdm9yLmlkICYmIGYuYXBwID09PSBhcHApO1xuICAgIGlmIChpZHggPT09IC0xKSB0aGlzLl9vYmplY3RGbGF2b3JzLnB1c2goeyAuLi5mbGF2b3IsIGFwcCwgb3JpZ2luIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZXMgYW4gZXhwb3NlZCBvYmplY3QgZmxhdm9yIGZyb20gdGhlIHNoZWxsLlxuICAgKiBAcGFyYW0gZmxhdm9yIEZsYXZvciB0byBiZSBjb25jZWFsZWRcbiAgICogQHBhcmFtIGFwcCBPcHRpb25hbCBJRCBvZiB0aGUgYXBwIHRoYXQgZXhwb3NlcyB0aGUgZmxhdm9yIChkZWZhdWx0cyB0byAnZ2xvYmFsJyBpZiBub3QgcHJvdmlkZWQpXG4gICAqL1xuICBjb25jZWFsT2JqZWN0Rmxhdm9yKGZsYXZvcjogQXBwU2NoZW1hRmxhdm9yLCBhcHAgPSAnZ2xvYmFsJykge1xuICAgIHRoaXMuX29iamVjdEZsYXZvcnMgPSB0aGlzLl9vYmplY3RGbGF2b3JzLmZpbHRlcigoZikgPT4gZi5pZCAhPT0gZmxhdm9yLmlkICYmIGYuYXBwICE9PSBhcHApO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCByZWdpc3RlcmVkIG9iamVjdCBmbGF2b3JzXG4gICAqIEBwYXJhbSBhcHAgT3B0aW9uYWwgYXBwIElEIHRoYXQgcmVzdHJpY3RzIHRoZSByZXR1cm5lZCBmbGF2b3JzIHRvIHRoZSBvbmVzXG4gICAqIHByb3ZpZGVkIGJ5IGEgcGFydGljdWxhciBhcHAuIElmIG5vdCBwcm92aWRlZCBhbGwgZmxhdm9ycyBhcmUgcmV0dXJuZWRcbiAgICogQHJldHVybnMgQXJyYXkgb2YgbWF0Y2hpbmcgb2JqZWN0IGZsYXZvcnNcbiAgICovXG4gIGdldE9iamVjdEZsYXZvcnMoYXBwPzogc3RyaW5nKTogT2JqZWN0Rmxhdm9yW10ge1xuICAgIHJldHVybiBhcHAgPyB0aGlzLl9vYmplY3RGbGF2b3JzLmZpbHRlcigob2YpID0+IG9mLmFwcCA9PT0gYXBwKSA6IHRoaXMuX29iamVjdEZsYXZvcnM7XG4gIH1cblxuICAvKipcbiAgICogVHJpZ2dlcnMgdGhlIGFwcGxpY2F0aW9uIG9mIGFuIG9iamVjdCBmbGF2b3IuIElmIHRoZSBmbGF2b3IgaGFzIGFuIGFwcGx5Q29tcG9uZW50XG4gICAqIGRlZmluZWQsIHRoZSBvdmVybGF5IHdpbGwgYmUgb3BlbmVkIHdpdGggdGhlIGNvbXBvbmVudC4gT3RoZXJ3aXNlIHRoZSBmbGF2b3Igd2lsbFxuICAgKiBiZSBhcHBsaWVkIGRpcmVjdGx5IHRvIHRoZSBvYmplY3QuXG4gICAqIEBwYXJhbSBkbXNPYmplY3QgVGhlIG9iamVjdCB0byBhcHBseSB0aGUgZmxhdm9yIHRvXG4gICAqIEBwYXJhbSBmbGF2b3IgVGhlIGZsYXZvciB0byBhcHBseVxuICAgKiBAcGFyYW0gZGF0YSBPcHRpb25hbCBkYXRhIHRvIGJlIHBhc3NlZCB0byB0aGUgZmxhdm9yIGNvbXBvbmVudFxuICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlIHRoYXQgZW1pdHMgdHJ1ZSBpZiB0aGUgZmxhdm9yIHdhcyBhcHBsaWVkIHN1Y2Nlc3NmdWxseVxuICAgKi9cbiAgdHJpZ2dlckFwcGx5T2JqZWN0Rmxhdm9yKGRtc09iamVjdDogRG1zT2JqZWN0LCBmbGF2b3I6IE9iamVjdEZsYXZvciwgZGF0YT86IGFueSwgYXBwbHlDb21wb25lbnQ/OiBUeXBlPGFueT4pOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICBpZiAoZG1zT2JqZWN0KSB7XG4gICAgICBjb25zdCBhYyA9IGFwcGx5Q29tcG9uZW50IHx8IGZsYXZvci5hcHBseUNvbXBvbmVudDtcbiAgICAgIGlmIChhYykge1xuICAgICAgICB0aGlzLiNkaWFsb2cub3BlbihhYywge1xuICAgICAgICAgIG1heFdpZHRoOiAnOTB2dycsXG4gICAgICAgICAgbWF4SGVpZ2h0OiAnOTB2aCcsXG4gICAgICAgICAgbWluV2lkdGg6ICc1MHZ3JyxcbiAgICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICBkbXNPYmplY3QsXG4gICAgICAgICAgICBmbGF2b3IsXG4gICAgICAgICAgICBkYXRhXG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIG9mKHRydWUpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3Qgc290czogc3RyaW5nW10gPSAoZG1zT2JqZWN0LmRhdGFbQmFzZU9iamVjdFR5cGVGaWVsZC5TRUNPTkRBUllfT0JKRUNUX1RZUEVfSURTXSBhcyBzdHJpbmdbXSkgfHwgW107XG4gICAgICAgIGNvbnN0IGRhdGE6IGFueSA9IHt9O1xuICAgICAgICBkYXRhW0Jhc2VPYmplY3RUeXBlRmllbGQuU0VDT05EQVJZX09CSkVDVF9UWVBFX0lEU10gPSBbLi4uc290cywgZmxhdm9yLnNvdF07XG4gICAgICAgIHJldHVybiB0aGlzLiNkbXNTZXJ2aWNlLnVwZGF0ZURtc09iamVjdChkbXNPYmplY3Q/LmlkLCBkYXRhKS5waXBlKG1hcCgoKSA9PiB0cnVlKSk7XG4gICAgICB9XG4gICAgfSBlbHNlIHJldHVybiBvZihmYWxzZSk7XG4gIH1cblxuICByZW1vdmVPYmplY3RGbGF2b3IoZG1zT2JqZWN0OiBEbXNPYmplY3QsIGZsYXZvcjogT2JqZWN0Rmxhdm9yKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBkYXRhOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiA9IHtcbiAgICAgIFtCYXNlT2JqZWN0VHlwZUZpZWxkLlNFQ09OREFSWV9PQkpFQ1RfVFlQRV9JRFNdOiAoZG1zT2JqZWN0LmRhdGFbQmFzZU9iamVjdFR5cGVGaWVsZC5TRUNPTkRBUllfT0JKRUNUX1RZUEVfSURTXSBhcyBzdHJpbmdbXSkuZmlsdGVyKFxuICAgICAgICAoc290OiBzdHJpbmcpID0+IHNvdCAhPT0gZmxhdm9yLnNvdFxuICAgICAgKVxuICAgIH07XG4gICAgcmV0dXJuIHRoaXMuI2Rtc1NlcnZpY2UudXBkYXRlRG1zT2JqZWN0KGRtc09iamVjdC5pZCwgZGF0YSkucGlwZShtYXAoKCkgPT4gdHJ1ZSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBvYmplY3QgZmxhdm9ycyBhcHBsaWNhYmxlIGZvciBhIGNlcnRhaW4gbWltZXR5cGVcbiAgICogQHBhcmFtIG1pbWVUeXBlIE1pbWUgdHlwZSBvciBtaW1lIHR5cGUgcGF0dGVybiBsaWtlICdpbWFnZS8qJ1xuICAgKiBAcGFyYW0gYXBwIE9wdGlvbmFsIGFwcCBJRCB0aGF0IHJlc3RyaWN0cyB0aGUgcmV0dXJuZWQgZmxhdm9ycyB0byB0aGUgb25lc1xuICAgKiBwcm92aWRlZCBieSBhIHBhcnRpY3VsYXIgYXBwXG4gICAqIEBwYXJhbSBjdXN0b21GbGF2b3JzIE9wdGlvbmFsIGFycmF5IG9mIGN1c3RvbSBmbGF2b3JzIHRvIGFsc28gdGFrZSBpbnRvIGFjY291bnQuXG4gICAqIFRoaXMgY291bGQgYmUgZmxhdm9ycyBtYW5hZ2VkIGJ5IGFuIGFwcCBpdHNlbGYgdGhhdCBhcmUgbm90IHN1cHBvc2VkIHRvIGJlXG4gICAqIGV4cG9zZWQgdG8gb3RoZXIgYXBwc1xuICAgKiBAcmV0dXJucyBBcnJheSBvZiBtYXRjaGluZyBvYmplY3QgZmxhdm9yc1xuICAgKi9cbiAgZ2V0QXBwbGljYWJsZURvY3VtZW50Rmxhdm9ycyhtaW1lVHlwZTogc3RyaW5nLCBhcHA/OiBzdHJpbmcsIGN1c3RvbUZsYXZvcnM/OiBPYmplY3RGbGF2b3JbXSk6IE9iamVjdEZsYXZvcltdIHtcbiAgICByZXR1cm4gWy4uLihjdXN0b21GbGF2b3JzIHx8IFtdKSwgLi4udGhpcy5fb2JqZWN0Rmxhdm9yc10uZmlsdGVyKFxuICAgICAgKG9mOiBPYmplY3RGbGF2b3IpID0+XG4gICAgICAgICghb2YuYXBwbGljYWJsZVRvPy5mb2xkZXJzIHx8IChvZi5hcHBsaWNhYmxlVG8/LmZvbGRlcnMgJiYgb2YuYXBwbGljYWJsZVRvPy5kb2N1bWVudHMpKSAmJlxuICAgICAgICAoIW9mLmFwcGxpY2FibGVUbyB8fFxuICAgICAgICAgICFvZi5hcHBsaWNhYmxlVG8/Lm1pbWVUeXBlcyB8fFxuICAgICAgICAgIChvZi5hcHBsaWNhYmxlVG8/Lm1pbWVUeXBlcz8uc29tZSgobXRwKSA9PiBVdGlscy5wYXR0ZXJuVG9SZWdFeHAobXRwKS50ZXN0KG1pbWVUeXBlKSkgJiYgKCFhcHAgfHwgb2YuYXBwID09PSBhcHApKSlcbiAgICApO1xuICB9XG5cbiAgZ2V0QXBwbGljYWJsZUZvbGRlckZsYXZvcnMoYXBwPzogc3RyaW5nLCBjdXN0b21GbGF2b3JzPzogT2JqZWN0Rmxhdm9yW10pOiBPYmplY3RGbGF2b3JbXSB7XG4gICAgcmV0dXJuIFsuLi4oY3VzdG9tRmxhdm9ycyB8fCBbXSksIC4uLnRoaXMuX29iamVjdEZsYXZvcnNdLmZpbHRlcigob2Y6IE9iamVjdEZsYXZvcikgPT4gb2YuYXBwbGljYWJsZVRvPy5mb2xkZXJzICYmICghYXBwIHx8IG9mLmFwcCA9PT0gYXBwKSk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGFwcGxpZWQgYW5kIGFwcGxpY2FibGUgb2JqZWN0IGZsYXZvcnMgZm9yIGEgY2VydGFpbiBvYmplY3RcbiAgICogQHBhcmFtIGRtc09iamVjdCBEbXNPYmplY3QgdG8gZ2V0IGZsYXZvcnMgZm9yXG4gICAqIEByZXR1cm5zIE9iamVjdCBjb250YWluaW5nIHR3byBhcnJheXM6IGFwcGxpZWQgYW5kIGFwcGxpY2FibGUgZmxhdm9yc1xuICAgKi9cbiAgZ2V0QXBwbGllZE9iamVjdEZsYXZvcnMoZG1zT2JqZWN0OiBEbXNPYmplY3QpOiB7XG4gICAgYXBwbGllZDogT2JqZWN0Rmxhdm9yW107XG4gICAgYXBwbGljYWJsZTogT2JqZWN0Rmxhdm9yW107XG4gIH0ge1xuICAgIGNvbnN0IGFwcGxpZWQ6IE9iamVjdEZsYXZvcltdID0gW107XG4gICAgY29uc3QgYXBwbGljYWJsZTogT2JqZWN0Rmxhdm9yW10gPSBbXTtcbiAgICBpZiAoZG1zT2JqZWN0KSB7XG4gICAgICBjb25zdCBzb3RzOiBzdHJpbmdbXSA9IChkbXNPYmplY3QuZGF0YVtCYXNlT2JqZWN0VHlwZUZpZWxkLlNFQ09OREFSWV9PQkpFQ1RfVFlQRV9JRFNdIGFzIHN0cmluZ1tdKSB8fCBbXTtcbiAgICAgIGlmIChkbXNPYmplY3QuY29udGVudCkge1xuICAgICAgICB0aGlzLmdldEFwcGxpY2FibGVEb2N1bWVudEZsYXZvcnMoZG1zT2JqZWN0LmNvbnRlbnQubWltZVR5cGUpLmZvckVhY2goKGZsYXZvcjogT2JqZWN0Rmxhdm9yKSA9PiB7XG4gICAgICAgICAgaWYgKHNvdHMuaW5jbHVkZXMoZmxhdm9yLnNvdCkpIHtcbiAgICAgICAgICAgIGFwcGxpZWQucHVzaChmbGF2b3IpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBhcHBsaWNhYmxlLnB1c2goZmxhdm9yKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfVxuXG4gICAgICBpZiAoZG1zT2JqZWN0LmlzRm9sZGVyKSB7XG4gICAgICAgIHRoaXMuZ2V0QXBwbGljYWJsZUZvbGRlckZsYXZvcnMoKS5mb3JFYWNoKChmbGF2b3I6IE9iamVjdEZsYXZvcikgPT4ge1xuICAgICAgICAgIGlmIChzb3RzLmluY2x1ZGVzKGZsYXZvci5zb3QpKSB7XG4gICAgICAgICAgICBhcHBsaWVkLnB1c2goZmxhdm9yKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgYXBwbGljYWJsZS5wdXNoKGZsYXZvcik7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHsgYXBwbGllZCwgYXBwbGljYWJsZSB9O1xuICB9XG5cbiAgZ2V0Rmxhdm9yTGFiZWwoaWQ6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLiNzeXN0ZW0uZ2V0TG9jYWxpemVkTGFiZWwoaWQpIHx8IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoaWQpO1xuICB9XG5cbiAgYXBwbHlPYmplY3RGbGF2b3IoZG1zT2JqZWN0OiBEbXNPYmplY3QsIGZsYXZvcjogT2JqZWN0Rmxhdm9yLCBkYXRhOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiA9IHt9KTogT2JzZXJ2YWJsZTxEbXNPYmplY3Q+IHtcbiAgICBjb25zdCBzb3RzOiBzdHJpbmdbXSA9IChkbXNPYmplY3QuZGF0YVtCYXNlT2JqZWN0VHlwZUZpZWxkLlNFQ09OREFSWV9PQkpFQ1RfVFlQRV9JRFNdIGFzIHN0cmluZ1tdKSB8fCBbXTtcbiAgICBkYXRhW0Jhc2VPYmplY3RUeXBlRmllbGQuU0VDT05EQVJZX09CSkVDVF9UWVBFX0lEU10gPSBbLi4uc290cywgZmxhdm9yLnNvdF07XG4gICAgcmV0dXJuIHRoaXMuI2Rtc1NlcnZpY2UudXBkYXRlRG1zT2JqZWN0KGRtc09iamVjdC5pZCwgZGF0YSk7XG4gIH1cblxuICByZWdpc3RlclRpbGVFeHRlbnNpb24oZXh0OiBUaWxlRXh0ZW5zaW9uKSB7XG4gICAgdGhpcy5fZXh0ZW5zaW9uc1tleHQudHlwZUlkXSA9IGV4dDtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdGlsZSBleHRlbnNpb25zIGZvciBhIGNlcnRhaW4gdHlwZVxuICAgKiBAcGFyYW0gdHlwZUlkIElEIG9mIHRoZSB0eXBlIHRvIGZldGNoIGV4dGVzaW9uIGZvciAob2JqZWN0VHlwZUlEIG9yIHNlY29uZGFyeU9iamVjdFR5cGVJRClcbiAgICogQHJldHVybnNcbiAgICovXG4gIGdldFJlZ2lzdGVyZWRUaWxlRXh0ZW5zaW9ucygpOiBSZWNvcmQ8c3RyaW5nLCBUaWxlRXh0ZW5zaW9uPiB7XG4gICAgcmV0dXJuIHRoaXMuX2V4dGVuc2lvbnM7XG4gIH1cblxuICBfaW5pdE9iamVjdFR5cGVDb25maWcoKTogUHJvbWlzZTx1bmtub3duPiB7XG4gICAgLy8gbG9hZCBmbGF2b3JzIGZyb20gY29uZmlnXG4gICAgY29uc29sZS5kZWJ1ZygnTG9hZGluZyBvYmplY3QgdHlwZSBjb25maWcuLi4nKTtcbiAgICByZXR1cm4gZmlyc3RWYWx1ZUZyb20oXG4gICAgICB0aGlzLiNzaGVsbENvbmZpZy5nZXQoU0hFTExfQ09ORklHX1RZUEVTKS5waXBlKFxuICAgICAgICB0YXAoKHJlczogU2hlbGxDb25maWcgfCB1bmRlZmluZWQpID0+IHtcbiAgICAgICAgICBpZiAocmVzKSB7XG4gICAgICAgICAgICB0aGlzLiNyZWdpc3Rlck9iamVjdFR5cGVJY29ucygocmVzLmRhdGEgYXMgQ2xpZW50U2hlbGxUeXBlW10pLm1hcCgodCkgPT4gdC5pZCkpO1xuXG4gICAgICAgICAgICBjb25zdCBmbHY6IEFwcFNjaGVtYUZsYXZvcltdID0gKHJlcy5kYXRhIGFzIENsaWVudFNoZWxsVHlwZVtdKS5tYXAoKHQpID0+ICh7XG4gICAgICAgICAgICAgIGlkOiB0LmlkLFxuICAgICAgICAgICAgICBzb3Q6IHQuaWQsXG4gICAgICAgICAgICAgIGljb246IHQuaWQsXG4gICAgICAgICAgICAgIHN2Z0ljb246IHRydWUsXG4gICAgICAgICAgICAgIG9iamVjdFR5cGVJRDogdC5iYXNlVHlwZSxcbiAgICAgICAgICAgICAgYXBwbGljYWJsZVRvOiB7XG4gICAgICAgICAgICAgICAgZm9sZGVyczogdC5iYXNlVHlwZSA9PT0gU3lzdGVtVHlwZS5GT0xERVIgfHwgdC5iYXNlVHlwZSA9PT0gU3lzdGVtVHlwZS5PQkpFQ1QsXG4gICAgICAgICAgICAgICAgZG9jdW1lbnRzOiB0LmJhc2VUeXBlID09PSBTeXN0ZW1UeXBlLkRPQ1VNRU5UIHx8IHQuYmFzZVR5cGUgPT09IFN5c3RlbVR5cGUuT0JKRUNULFxuICAgICAgICAgICAgICAgIG1pbWVUeXBlczogdC5hcHBsaWNhYmxlVG9NaW1lVHlwZXMgfHwgdW5kZWZpbmVkXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIHVzZURlZmF1bHRBcHBseUNvbXBvbmVudDogIXQuaW5zdGFudEFwcGx5XG4gICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICB0aGlzLmV4cG9zZU9iamVjdEZsYXZvcnMoZmx2LCAnZ2xvYmFsJywgJ2NvbmZpZycpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgIClcbiAgICApO1xuICB9XG5cbiAgI3JlZ2lzdGVyT2JqZWN0VHlwZUljb25zKGlkczogc3RyaW5nW10pIHtcbiAgICBjb25zdCBzdWIgPSB0aGlzLiNzeXN0ZW0uc3lzdGVtJC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgaWRzLmZvckVhY2goKGlkKSA9PiB7XG4gICAgICAgIC8vIHNwbGl0IHRlY2huaWNhbCBuYW1lIGUuZy4gJ3N5c3RlbTpkb2N1bWVudCcgYW5kIHVzZSB0aGUgZmlyc3QgcGFydCBhcyBuYW1lc3BhY2VcbiAgICAgICAgY29uc3QgaWRUb2tlbnMgPSBpZC5zcGxpdCgnOicpO1xuICAgICAgICBpZiAoaWRUb2tlbnMubGVuZ3RoID09PSAyKSB7XG4gICAgICAgICAgY29uc3QgdXJpID0gYCR7dGhpcy4jY29uZmlnU2VydmljZS5nZXRBcGlCYXNlKEFwaUJhc2Uubm9uZSwgdHJ1ZSl9JHt0aGlzLiNzeXN0ZW0uZ2V0T2JqZWN0VHlwZUljb25VcmkoaWQpfWA7XG4gICAgICAgICAgdGhpcy4jaWNvblJlZ2lzdHJ5LmFkZFN2Z0ljb25Jbk5hbWVzcGFjZShpZFRva2Vuc1swXSwgaWRUb2tlbnNbMV0sIHRoaXMuI3Nhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0UmVzb3VyY2VVcmwodXJpKSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgc3ViLnVuc3Vic2NyaWJlKCk7XG4gICAgICAvLyBjb25zdCBjb25maWcgPSAodGhpcy4jaWNvblJlZ2lzdHJ5IGFzIGFueSkuX3N2Z0ljb25Db25maWdzO1xuICAgICAgLy8gY29uc29sZS5sb2coeyBjb25maWcgfSk7XG4gICAgfSk7XG4gIH1cblxuICBfaW5pdCgpIHt9XG59XG4iXX0=
@@ -88,13 +88,13 @@ export class ShellConfigService {
88
88
  #dataToFile(data) {
89
89
  return new File([JSON.stringify(data)], 'config.json', { type: 'application/json' });
90
90
  }
91
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: ShellConfigService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
92
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: ShellConfigService, providedIn: 'root' }); }
91
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.12", ngImport: i0, type: ShellConfigService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
92
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.12", ngImport: i0, type: ShellConfigService, providedIn: 'root' }); }
93
93
  }
94
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: ShellConfigService, decorators: [{
94
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.12", ngImport: i0, type: ShellConfigService, decorators: [{
95
95
  type: Injectable,
96
96
  args: [{
97
97
  providedIn: 'root'
98
98
  }]
99
99
  }] });
100
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hlbGwtY29uZmlnLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3l1dXZpcy9jbGllbnQtc2hlbGwtY29yZS9zcmMvbGliL3NlcnZpY2VzL3NoZWxsLWNvbmZpZy9zaGVsbC1jb25maWcuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxtQkFBbUIsRUFBRSxVQUFVLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUMvRixPQUFPLEVBQUUsR0FBRyxFQUFjLEVBQUUsRUFBRSxTQUFTLEVBQU8sTUFBTSxNQUFNLENBQUM7QUFDM0QsT0FBTyxFQUFFLHlCQUF5QixFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7O0FBR3BGOztHQUVHO0FBSUgsTUFBTSxPQUFPLGtCQUFrQjtJQUM3QixXQUFXLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ2pDLFFBQVEsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7SUFFbEMsR0FBRyxDQUFDLElBQVk7UUFDZCxJQUFJLE1BQVcsQ0FBQztRQUNoQixPQUFPLElBQUksQ0FBQyxRQUFRO2FBQ2pCLElBQUksQ0FDSCxxQkFBcUIsRUFDckI7WUFDRSxLQUFLLEVBQUU7Z0JBQ0wsU0FBUyxFQUFFLHlCQUF5QixDQUFDLElBQUksQ0FBQzthQUMzQztTQUNGLEVBQ0QsT0FBTyxDQUFDLElBQUksQ0FDYjthQUNBLElBQUksQ0FDSCxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUNWLElBQUksR0FBRyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQztnQkFDdkIsTUFBTSxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDMUIs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LENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxFQUFFLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILFdBQVcsQ0FBQyxJQUFhO1FBQ3ZCLE9BQU8sSUFBSSxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsYUFBYSxFQUFFLEVBQUUsSUFBSSxFQUFFLGtCQUFrQixFQUFFLENBQUMsQ0FBQztJQUN2RixDQUFDOzhHQXRHVSxrQkFBa0I7a0hBQWxCLGtCQUFrQixjQUZqQixNQUFNOzsyRkFFUCxrQkFBa0I7a0JBSDlCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBcGlCYXNlLCBCYWNrZW5kU2VydmljZSwgQmFzZU9iamVjdFR5cGVGaWVsZCwgRG1zU2VydmljZSB9IGZyb20gJ0B5dXV2aXMvY2xpZW50LWNvcmUnO1xuaW1wb3J0IHsgbWFwLCBPYnNlcnZhYmxlLCBvZiwgc3dpdGNoTWFwLCB0YXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGdldFNoZWxsQ29uZmlnUXVlcnlTdHJpbmcsIFNIRUxMX0NPTkZJR19CQVNFIH0gZnJvbSAnLi9zaGVsbC1jb25maWcuY29uc3QnO1xuaW1wb3J0IHsgU2hlbGxDb25maWcgfSBmcm9tICcuL3NoZWxsLWNvbmZpZy5pbnRlcmZhY2UnO1xuXG4vKipcbiAqIFNlcnZpY2UgdG8gbWFuYWdlIHNoZWxsIGNvbmZpZ3VyYXRpb24gb2JqZWN0cy4gQmFzZSBvbiB0aGUgJ3N5c3RlbTppdGVtJyB0eXBlLlxuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBTaGVsbENvbmZpZ1NlcnZpY2Uge1xuICAjZG1zU2VydmljZSA9IGluamVjdChEbXNTZXJ2aWNlKTtcbiAgI2JhY2tlbmQgPSBpbmplY3QoQmFja2VuZFNlcnZpY2UpO1xuXG4gIGdldChuYW1lOiBzdHJpbmcpOiBPYnNlcnZhYmxlPFNoZWxsQ29uZmlnIHwgdW5kZWZpbmVkPiB7XG4gICAgbGV0IG9iamVjdDogYW55O1xuICAgIHJldHVybiB0aGlzLiNiYWNrZW5kXG4gICAgICAucG9zdChcbiAgICAgICAgJy9kbXMvb2JqZWN0cy9zZWFyY2gnLFxuICAgICAgICB7XG4gICAgICAgICAgcXVlcnk6IHtcbiAgICAgICAgICAgIHN0YXRlbWVudDogZ2V0U2hlbGxDb25maWdRdWVyeVN0cmluZyhuYW1lKVxuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgQXBpQmFzZS5jb3JlXG4gICAgICApXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChyZXMpID0+IHtcbiAgICAgICAgICBpZiAocmVzLm9iamVjdHMubGVuZ3RoKSB7XG4gICAgICAgICAgICBvYmplY3QgPSByZXMub2JqZWN0c1swXTtcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIG9iamVjdCA/IG9iamVjdC5wcm9wZXJ0aWVzW0Jhc2VPYmplY3RUeXBlRmllbGQuT0JKRUNUX0lEXS52YWx1ZSA6IHVuZGVmaW5lZDtcbiAgICAgICAgfSksXG4gICAgICAgIHN3aXRjaE1hcCgoaWQpID0+IChpZCA/IHRoaXMuI2JhY2tlbmQuZ2V0KGAvYXBpL2Rtcy9vYmplY3RzLyR7aWR9L2NvbnRlbnRzL2ZpbGVgLCBBcGlCYXNlLmNvcmUpIDogb2YodW5kZWZpbmVkKSkpLFxuICAgICAgICBtYXAoKGRhdGEpID0+IHtcbiAgICAgICAgICByZXR1cm4gZGF0YVxuICAgICAgICAgICAgPyB7XG4gICAgICAgICAgICAgICAgaWQ6IG9iamVjdC5wcm9wZXJ0aWVzW0Jhc2VPYmplY3RUeXBlRmllbGQuT0JKRUNUX0lEXS52YWx1ZSxcbiAgICAgICAgICAgICAgICBuYW1lOiBvYmplY3QucHJvcGVydGllc1tTSEVMTF9DT05GSUdfQkFTRS5uYW1lUHJvcGVydHldLnZhbHVlLFxuICAgICAgICAgICAgICAgIGNvbnRleHQ6IG9iamVjdC5wcm9wZXJ0aWVzWydzeXN0ZW06Y29udGV4dCddPy52YWx1ZSxcbiAgICAgICAgICAgICAgICB1c2VyOiBvYmplY3QucHJvcGVydGllc1snc3lzdGVtOnVzZXInXT8udmFsdWUsXG4gICAgICAgICAgICAgICAgZGF0YVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA6IHVuZGVmaW5lZDtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGEgbmV3IGNvbmZpZ3VyYXRpb24gb2JqZWN0LlxuICAgKiBAcGFyYW0gY2ZnIHRoZSBjb25maWd1cmF0aW9uIG9iamVjdCB0byBiZSBjcmVhdGVkXG4gICAqL1xuICBjcmVhdGUobmFtZTogc3RyaW5nLCBkYXRhOiB1bmtub3duLCBjb250ZXh0Pzogc3RyaW5nLCB1c2VyPzogc3RyaW5nW10pOiBPYnNlcnZhYmxlPFNoZWxsQ29uZmlnPiB7XG4gICAgY29uc3QgcHJvcGVydGllczogUmVjb3JkPHN0cmluZywgdW5rbm93bj4gPSB7XG4gICAgICBbU0hFTExfQ09ORklHX0JBU0UubmFtZVByb3BlcnR5XTogbmFtZVxuICAgIH07XG4gICAgaWYgKHVzZXIpIHByb3BlcnRpZXNbJ3N5c3RlbTp1c2VyJ10gPSB1c2VyO1xuICAgIGlmIChjb250ZXh0KSBwcm9wZXJ0aWVzWydzeXN0ZW06Y29udGV4dCddID0gY29udGV4dDtcbiAgICByZXR1cm4gdGhpcy4jZG1zU2VydmljZVxuICAgICAgLmNyZWF0ZURtc09iamVjdChcbiAgICAgICAgU0hFTExfQ09ORklHX0JBU0Uub2JqZWN0VHlwZSxcbiAgICAgICAge1xuICAgICAgICAgIFtCYXNlT2JqZWN0VHlwZUZpZWxkLlNFQ09OREFSWV9PQkpFQ1RfVFlQRV9JRFNdOiBbU0hFTExfQ09ORklHX0JBU0Uuc2Vjb25kYXJ5T2JqZWN0VHlwZV0sXG4gICAgICAgICAgLi4ucHJvcGVydGllc1xuICAgICAgICB9LFxuICAgICAgICBbdGhpcy4jZGF0YVRvRmlsZShkYXRhKV0sXG4gICAgICAgIHVuZGVmaW5lZCxcbiAgICAgICAgdHJ1ZVxuICAgICAgKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgocmVzKSA9PiAoe1xuICAgICAgICAgIGlkOiByZXNbMF0sXG4gICAgICAgICAgbmFtZSxcbiAgICAgICAgICBjb250ZXh0LFxuICAgICAgICAgIHVzZXIsXG4gICAgICAgICAgZGF0YVxuICAgICAgICB9KSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlIGRhdGEgb2YgYW4gZXhpc3RpbmcgY29uZmlndXJhdGlvbiBvYmplY3QuXG4gICAqIEBwYXJhbSBpZCB0aGUgaWQgb2YgdGhlIGNvbmZpZ3VyYXRpb24gb2JqZWN0IHRvIHVwZGF0ZVxuICAgKiBAcGFyYW0gZGF0YSB0aGUgbmV3IGNvbmZpZ3VyYXRpb24gZGF0YSB0byBiZSBzZXRcbiAgICovXG4gIHVwZGF0ZShpZDogc3RyaW5nLCBkYXRhOiB1bmtub3duKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy4jZG1zU2VydmljZS51cGxvYWRDb250ZW50KGlkLCB0aGlzLiNkYXRhVG9GaWxlKGRhdGEpLCB1bmRlZmluZWQsIHRydWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIERlbGV0ZSBhIGNvbmZpZ3VyYXRpb24gb2JqZWN0LlxuICAgKiBAcGFyYW0gaWQgdGhlIGlkIG9mIHRoZSBjb25maWd1cmF0aW9uIG9iamVjdCB0byBkZWxldGVcbiAgICovXG4gIGRlbGV0ZShpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy4jZG1zU2VydmljZS5kZWxldGVEbXNPYmplY3QoaWQpO1xuICB9XG5cbiAgZG93bmxvYWQoaWQ6IHN0cmluZywgZmlsZW5hbWU/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLiNiYWNrZW5kLmRvd25sb2FkKHRoaXMuI2Rtc1NlcnZpY2UuZ2V0Q29udGVudFBhdGgoaWQpLCBmaWxlbmFtZSk7XG4gIH1cblxuICB1cGxvYWQoaWQ6IHN0cmluZywgZmlsZTogRmlsZSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuI2Rtc1NlcnZpY2UudXBsb2FkQ29udGVudChpZCwgZmlsZSwgdW5kZWZpbmVkLCB0cnVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUcmFuc2Zvcm0gdGhlIGNvbmZpZ3VyYXRpb24gdG8gYSBmaWxlLlxuICAgKiBAcGFyYW0gZGF0YSB0aGUgY29uZmlndXJhdGlvbiBkYXRhIHRvIGJlIHRyYW5zZm9ybWVkXG4gICAqIEByZXR1cm5zIGEgZmlsZSBvYmplY3QgY29udGFpbmluZyB0aGUgY29uZmlndXJhdGlvbiBkYXRhXG4gICAqL1xuICAjZGF0YVRvRmlsZShkYXRhOiB1bmtub3duKTogRmlsZSB7XG4gICAgcmV0dXJuIG5ldyBGaWxlKFtKU09OLnN0cmluZ2lmeShkYXRhKV0sICdjb25maWcuanNvbicsIHsgdHlwZTogJ2FwcGxpY2F0aW9uL2pzb24nIH0pO1xuICB9XG59XG4iXX0=
100
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hlbGwtY29uZmlnLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3l1dXZpcy9jbGllbnQtc2hlbGwtY29yZS9zcmMvbGliL3NlcnZpY2VzL3NoZWxsLWNvbmZpZy9zaGVsbC1jb25maWcuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxtQkFBbUIsRUFBRSxVQUFVLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUMvRixPQUFPLEVBQUUsR0FBRyxFQUFjLEVBQUUsRUFBRSxTQUFTLEVBQU8sTUFBTSxNQUFNLENBQUM7QUFDM0QsT0FBTyxFQUFFLHlCQUF5QixFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7O0FBR3BGOztHQUVHO0FBSUgsTUFBTSxPQUFPLGtCQUFrQjtJQUM3QixXQUFXLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ2pDLFFBQVEsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7SUFFbEMsR0FBRyxDQUFDLElBQVk7UUFDZCxJQUFJLE1BQVcsQ0FBQztRQUNoQixPQUFPLElBQUksQ0FBQyxRQUFRO2FBQ2pCLElBQUksQ0FDSCxxQkFBcUIsRUFDckI7WUFDRSxLQUFLLEVBQUU7Z0JBQ0wsU0FBUyxFQUFFLHlCQUF5QixDQUFDLElBQUksQ0FBQzthQUMzQztTQUNGLEVBQ0QsT0FBTyxDQUFDLElBQUksQ0FDYjthQUNBLElBQUksQ0FDSCxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUNWLElBQUksR0FBRyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQztnQkFDdkIsTUFBTSxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDMUIs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LENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxFQUFFLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILFdBQVcsQ0FBQyxJQUFhO1FBQ3ZCLE9BQU8sSUFBSSxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsYUFBYSxFQUFFLEVBQUUsSUFBSSxFQUFFLGtCQUFrQixFQUFFLENBQUMsQ0FBQztJQUN2RixDQUFDOytHQXRHVSxrQkFBa0I7bUhBQWxCLGtCQUFrQixjQUZqQixNQUFNOzs0RkFFUCxrQkFBa0I7a0JBSDlCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBcGlCYXNlLCBCYWNrZW5kU2VydmljZSwgQmFzZU9iamVjdFR5cGVGaWVsZCwgRG1zU2VydmljZSB9IGZyb20gJ0B5dXV2aXMvY2xpZW50LWNvcmUnO1xuaW1wb3J0IHsgbWFwLCBPYnNlcnZhYmxlLCBvZiwgc3dpdGNoTWFwLCB0YXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGdldFNoZWxsQ29uZmlnUXVlcnlTdHJpbmcsIFNIRUxMX0NPTkZJR19CQVNFIH0gZnJvbSAnLi9zaGVsbC1jb25maWcuY29uc3QnO1xuaW1wb3J0IHsgU2hlbGxDb25maWcgfSBmcm9tICcuL3NoZWxsLWNvbmZpZy5pbnRlcmZhY2UnO1xuXG4vKipcbiAqIFNlcnZpY2UgdG8gbWFuYWdlIHNoZWxsIGNvbmZpZ3VyYXRpb24gb2JqZWN0cy4gQmFzZSBvbiB0aGUgJ3N5c3RlbTppdGVtJyB0eXBlLlxuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBTaGVsbENvbmZpZ1NlcnZpY2Uge1xuICAjZG1zU2VydmljZSA9IGluamVjdChEbXNTZXJ2aWNlKTtcbiAgI2JhY2tlbmQgPSBpbmplY3QoQmFja2VuZFNlcnZpY2UpO1xuXG4gIGdldChuYW1lOiBzdHJpbmcpOiBPYnNlcnZhYmxlPFNoZWxsQ29uZmlnIHwgdW5kZWZpbmVkPiB7XG4gICAgbGV0IG9iamVjdDogYW55O1xuICAgIHJldHVybiB0aGlzLiNiYWNrZW5kXG4gICAgICAucG9zdChcbiAgICAgICAgJy9kbXMvb2JqZWN0cy9zZWFyY2gnLFxuICAgICAgICB7XG4gICAgICAgICAgcXVlcnk6IHtcbiAgICAgICAgICAgIHN0YXRlbWVudDogZ2V0U2hlbGxDb25maWdRdWVyeVN0cmluZyhuYW1lKVxuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgQXBpQmFzZS5jb3JlXG4gICAgICApXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChyZXMpID0+IHtcbiAgICAgICAgICBpZiAocmVzLm9iamVjdHMubGVuZ3RoKSB7XG4gICAgICAgICAgICBvYmplY3QgPSByZXMub2JqZWN0c1swXTtcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIG9iamVjdCA/IG9iamVjdC5wcm9wZXJ0aWVzW0Jhc2VPYmplY3RUeXBlRmllbGQuT0JKRUNUX0lEXS52YWx1ZSA6IHVuZGVmaW5lZDtcbiAgICAgICAgfSksXG4gICAgICAgIHN3aXRjaE1hcCgoaWQpID0+IChpZCA/IHRoaXMuI2JhY2tlbmQuZ2V0KGAvYXBpL2Rtcy9vYmplY3RzLyR7aWR9L2NvbnRlbnRzL2ZpbGVgLCBBcGlCYXNlLmNvcmUpIDogb2YodW5kZWZpbmVkKSkpLFxuICAgICAgICBtYXAoKGRhdGEpID0+IHtcbiAgICAgICAgICByZXR1cm4gZGF0YVxuICAgICAgICAgICAgPyB7XG4gICAgICAgICAgICAgICAgaWQ6IG9iamVjdC5wcm9wZXJ0aWVzW0Jhc2VPYmplY3RUeXBlRmllbGQuT0JKRUNUX0lEXS52YWx1ZSxcbiAgICAgICAgICAgICAgICBuYW1lOiBvYmplY3QucHJvcGVydGllc1tTSEVMTF9DT05GSUdfQkFTRS5uYW1lUHJvcGVydHldLnZhbHVlLFxuICAgICAgICAgICAgICAgIGNvbnRleHQ6IG9iamVjdC5wcm9wZXJ0aWVzWydzeXN0ZW06Y29udGV4dCddPy52YWx1ZSxcbiAgICAgICAgICAgICAgICB1c2VyOiBvYmplY3QucHJvcGVydGllc1snc3lzdGVtOnVzZXInXT8udmFsdWUsXG4gICAgICAgICAgICAgICAgZGF0YVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA6IHVuZGVmaW5lZDtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGEgbmV3IGNvbmZpZ3VyYXRpb24gb2JqZWN0LlxuICAgKiBAcGFyYW0gY2ZnIHRoZSBjb25maWd1cmF0aW9uIG9iamVjdCB0byBiZSBjcmVhdGVkXG4gICAqL1xuICBjcmVhdGUobmFtZTogc3RyaW5nLCBkYXRhOiB1bmtub3duLCBjb250ZXh0Pzogc3RyaW5nLCB1c2VyPzogc3RyaW5nW10pOiBPYnNlcnZhYmxlPFNoZWxsQ29uZmlnPiB7XG4gICAgY29uc3QgcHJvcGVydGllczogUmVjb3JkPHN0cmluZywgdW5rbm93bj4gPSB7XG4gICAgICBbU0hFTExfQ09ORklHX0JBU0UubmFtZVByb3BlcnR5XTogbmFtZVxuICAgIH07XG4gICAgaWYgKHVzZXIpIHByb3BlcnRpZXNbJ3N5c3RlbTp1c2VyJ10gPSB1c2VyO1xuICAgIGlmIChjb250ZXh0KSBwcm9wZXJ0aWVzWydzeXN0ZW06Y29udGV4dCddID0gY29udGV4dDtcbiAgICByZXR1cm4gdGhpcy4jZG1zU2VydmljZVxuICAgICAgLmNyZWF0ZURtc09iamVjdChcbiAgICAgICAgU0hFTExfQ09ORklHX0JBU0Uub2JqZWN0VHlwZSxcbiAgICAgICAge1xuICAgICAgICAgIFtCYXNlT2JqZWN0VHlwZUZpZWxkLlNFQ09OREFSWV9PQkpFQ1RfVFlQRV9JRFNdOiBbU0hFTExfQ09ORklHX0JBU0Uuc2Vjb25kYXJ5T2JqZWN0VHlwZV0sXG4gICAgICAgICAgLi4ucHJvcGVydGllc1xuICAgICAgICB9LFxuICAgICAgICBbdGhpcy4jZGF0YVRvRmlsZShkYXRhKV0sXG4gICAgICAgIHVuZGVmaW5lZCxcbiAgICAgICAgdHJ1ZVxuICAgICAgKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgocmVzKSA9PiAoe1xuICAgICAgICAgIGlkOiByZXNbMF0sXG4gICAgICAgICAgbmFtZSxcbiAgICAgICAgICBjb250ZXh0LFxuICAgICAgICAgIHVzZXIsXG4gICAgICAgICAgZGF0YVxuICAgICAgICB9KSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlIGRhdGEgb2YgYW4gZXhpc3RpbmcgY29uZmlndXJhdGlvbiBvYmplY3QuXG4gICAqIEBwYXJhbSBpZCB0aGUgaWQgb2YgdGhlIGNvbmZpZ3VyYXRpb24gb2JqZWN0IHRvIHVwZGF0ZVxuICAgKiBAcGFyYW0gZGF0YSB0aGUgbmV3IGNvbmZpZ3VyYXRpb24gZGF0YSB0byBiZSBzZXRcbiAgICovXG4gIHVwZGF0ZShpZDogc3RyaW5nLCBkYXRhOiB1bmtub3duKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy4jZG1zU2VydmljZS51cGxvYWRDb250ZW50KGlkLCB0aGlzLiNkYXRhVG9GaWxlKGRhdGEpLCB1bmRlZmluZWQsIHRydWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIERlbGV0ZSBhIGNvbmZpZ3VyYXRpb24gb2JqZWN0LlxuICAgKiBAcGFyYW0gaWQgdGhlIGlkIG9mIHRoZSBjb25maWd1cmF0aW9uIG9iamVjdCB0byBkZWxldGVcbiAgICovXG4gIGRlbGV0ZShpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy4jZG1zU2VydmljZS5kZWxldGVEbXNPYmplY3QoaWQpO1xuICB9XG5cbiAgZG93bmxvYWQoaWQ6IHN0cmluZywgZmlsZW5hbWU/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLiNiYWNrZW5kLmRvd25sb2FkKHRoaXMuI2Rtc1NlcnZpY2UuZ2V0Q29udGVudFBhdGgoaWQpLCBmaWxlbmFtZSk7XG4gIH1cblxuICB1cGxvYWQoaWQ6IHN0cmluZywgZmlsZTogRmlsZSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuI2Rtc1NlcnZpY2UudXBsb2FkQ29udGVudChpZCwgZmlsZSwgdW5kZWZpbmVkLCB0cnVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUcmFuc2Zvcm0gdGhlIGNvbmZpZ3VyYXRpb24gdG8gYSBmaWxlLlxuICAgKiBAcGFyYW0gZGF0YSB0aGUgY29uZmlndXJhdGlvbiBkYXRhIHRvIGJlIHRyYW5zZm9ybWVkXG4gICAqIEByZXR1cm5zIGEgZmlsZSBvYmplY3QgY29udGFpbmluZyB0aGUgY29uZmlndXJhdGlvbiBkYXRhXG4gICAqL1xuICAjZGF0YVRvRmlsZShkYXRhOiB1bmtub3duKTogRmlsZSB7XG4gICAgcmV0dXJuIG5ldyBGaWxlKFtKU09OLnN0cmluZ2lmeShkYXRhKV0sICdjb25maWcuanNvbicsIHsgdHlwZTogJ2FwcGxpY2F0aW9uL2pzb24nIH0pO1xuICB9XG59XG4iXX0=
@@ -77,13 +77,13 @@ export class ShellNotificationsService {
77
77
  this._notificationsSource.next(this._notifications);
78
78
  this.appCache.setItem(this.LOCAL_STORAGE_KEY, this._notifications).subscribe();
79
79
  }
80
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: ShellNotificationsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
81
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: ShellNotificationsService, providedIn: 'root' }); }
80
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.12", ngImport: i0, type: ShellNotificationsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
81
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.12", ngImport: i0, type: ShellNotificationsService, providedIn: 'root' }); }
82
82
  }
83
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.1", ngImport: i0, type: ShellNotificationsService, decorators: [{
83
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.12", ngImport: i0, type: ShellNotificationsService, decorators: [{
84
84
  type: Injectable,
85
85
  args: [{
86
86
  providedIn: 'root'
87
87
  }]
88
88
  }], ctorParameters: () => [] });
89
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hlbGwtbm90aWZpY2F0aW9ucy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy95dXV2aXMvY2xpZW50LXNoZWxsLWNvcmUvc3JjL2xpYi9zZXJ2aWNlcy9zaGVsbC1ub3RpZmljYXRpb25zL3NoZWxsLW5vdGlmaWNhdGlvbnMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQWMsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxlQUFlLEVBQUUseUJBQXlCLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDMUcsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFFekM7Ozs7OztHQU1HO0FBSUgsTUFBTSxPQUFPLHlCQUF5QjtJQUdwQyxNQUFNLENBQXdCO0lBQzlCLE9BQU8sQ0FBa0I7SUFFekIsMEJBQTBCLENBQXFDO0lBTS9EO1FBWFEsc0JBQWlCLEdBQUcseUJBQXlCLENBQUM7UUFDOUMsYUFBUSxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUMzQyxXQUFNLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQzlCLFlBQU8sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDakIsY0FBUyxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQzdDLCtCQUEwQixHQUFHLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1FBRXZELG1CQUFjLEdBQTRCLEVBQUUsQ0FBQztRQUM3Qyx5QkFBb0IsR0FBRyxJQUFJLGFBQWEsRUFBMkIsQ0FBQztRQUM1RSx3QkFBbUIs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QUFDLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDcEYsSUFBSSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDcEQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNqRixDQUFDOzhHQXhFVSx5QkFBeUI7a0hBQXpCLHlCQUF5QixjQUZ4QixNQUFNOzsyRkFFUCx5QkFBeUI7a0JBSHJDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTaGVsbE5vdGlmaWNhdGlvbiB9IGZyb20gJy4vc2hlbGwtbm90aWZpY2F0aW9ucy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgUmVwbGF5U3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQXBwQ2FjaGVTZXJ2aWNlLCBOYXRpdmVOb3RpZmljYXRpb25TZXJ2aWNlLCBUcmFuc2xhdGVTZXJ2aWNlLCBVdGlscyB9IGZyb20gJ0B5dXV2aXMvY2xpZW50LWNvcmUnO1xuaW1wb3J0IHsgU2hlbGxTZXJ2aWNlIH0gZnJvbSAnLi4vc2hlbGwvc2hlbGwuc2VydmljZSc7XG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG4vKipcbiAqIFNlcnZpY2UgbWFuYWdpbmcgc2hlbGwgbm90aWZpY2F0aW9ucy5cbiAqIEV2ZXJ5IGFwcCBjb3VsZCBwcm9wYWdhdGUgc2hlbGwgbm90aWZpY2F0aW9ucy4gVGhleSB3aWxsIGJlIHB1Ymxpc2hlZFxuICogaW4gdGhlIG5vdGlmaWNhdGlvbnMgc2VjdGlvbiBvZiB0aGUgc2hlbGwuIEluY29taW5nIG5ldyBtZXNzYWhlcyB3aWxsXG4gKiBhbHNvIGFkZCBhbiBpbmRpY2F0b3IgdG8gdGhlIGljb24gaW4gdGhlIHNoZWxsIGJhci5cbiAqXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFNoZWxsTm90aWZpY2F0aW9uc1NlcnZpY2Uge1xuICBwcml2YXRlIExPQ0FMX1NUT1JBR0VfS0VZID0gJ3l1di5zaGVsbC5ub3RpZmljYXRpb25zJztcbiAgcHJpdmF0ZSBhcHBDYWNoZSA9IGluamVjdChBcHBDYWNoZVNlcnZpY2UpO1xuICAjc2hlbGwgPSBpbmplY3QoU2hlbGxTZXJ2aWNlKTtcbiAgI3JvdXRlciA9IGluamVjdChSb3V0ZXIpO1xuICBwcml2YXRlIHRyYW5zbGF0ZSA9IGluamVjdChUcmFuc2xhdGVTZXJ2aWNlKTtcbiAgI25hdGl2ZU5vdGlmaWNhdGlvblNlcnZpY2UgPSBpbmplY3QoTmF0aXZlTm90aWZpY2F0aW9uU2VydmljZSk7XG5cbiAgcHJpdmF0ZSBfbm90aWZpY2F0aW9uczogU2hlbGxOb3RpZmljYXRpb25JdGVtW10gPSBbXTtcbiAgcHJpdmF0ZSBfbm90aWZpY2F0aW9uc1NvdXJjZSA9IG5ldyBSZXBsYXlTdWJqZWN0PFNoZWxsTm90aWZpY2F0aW9uSXRlbVtdPigpO1xuICBzaGVsbE5vdGlmaWNhdGlvbnMkOiBPYnNlcnZhYmxlPFNoZWxsTm90aWZpY2F0aW9uSXRlbVtdPiA9IHRoaXMuX25vdGlmaWNhdGlvbnNTb3VyY2UuYXNPYnNlcnZhYmxlKCk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5hcHBDYWNoZS5nZXRJdGVtKHRoaXMuTE9DQUxfU1RPUkFHRV9LRVkpLnN1YnNjcmliZSgocmVzKSA9PiB7XG4gICAgICB0aGlzLl9ub3RpZmljYXRpb25zID0gcmVzIHx8IFtdO1xuICAgICAgdGhpcy5fbm90aWZpY2F0aW9uc1NvdXJjZS5uZXh0KHRoaXMuX25vdGlmaWNhdGlvbnMpO1xuICAgIH0pO1xuICB9XG5cbiAgLy8gZ2V0Tm90aWZpY2F0aW9ucyhpZDogc3RyaW5nKSB7XG4gIC8vICAgY29uc3QgZmlsZSA9IFtcbiAgLy8gICAgIHsgaWQ6ICdpby55dXV2aXMuYXBwLmRyaXZlJywgY291bnQ6IDIsIG1heExldmVsOiAnaW5mbycgfSxcbiAgLy8gICAgIHsgaWQ6ICdpby55dXV2aXMuYXBwLnRhc2tzJywgY291bnQ6IDIyMiwgbWF4TGV2ZWw6ICd3YXJuaW5nJyB9XG4gIC8vICAgXTtcblxuICAvLyAgIHJldHVybiBmaWxlLmZpbmQoKGYpID0+IGYuaWQgPT09IGlkKTtcbiAgLy8gfVxuXG4gIGFkZChub3RpZmljYXRpb246IFNoZWxsTm90aWZpY2F0aW9uLCBuYXRpdmVOb3RpZmljYXRpb24gPSBmYWxzZSkge1xuICAgIHRoaXMuX25vdGlmaWNhdGlvbnMucHVzaCh7XG4gICAgICAuLi5ub3RpZmljYXRpb24sXG4gICAgICBpZDogVXRpbHMudXVpZCgpLFxuICAgICAgdGltZXN0YW1wOiBuZXcgRGF0ZSgpLmdldFRpbWUoKSxcbiAgICAgIHNlZW46IGZhbHNlXG4gICAgfSk7XG4gICAgLy8gY2hlY2sgZm9yIHVuc2VlbiBpdGVtc1xuICAgIGlmIChkb2N1bWVudC5oaWRkZW4gJiYgbmF0aXZlTm90aWZpY2F0aW9uICYmIHRoaXMuX25vdGlmaWNhdGlvbnMuc29tZSgobikgPT4gIW4uc2VlbikpIHtcbiAgICAgIHRoaXMuI25hdGl2ZU5vdGlmaWNhdGlvblNlcnZpY2Uuc2hvd05vdGlmaWNhdGlvbih0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCd5dXYuc2hlbGwubm90aWZpY2F0aW9uLm5hdGl2ZS50aXRsZScpLCB7XG4gICAgICAgIG9uQ2xpY2s6ICgpID0+IHRoaXMuI3JvdXRlci5uYXZpZ2F0ZShbeyBvdXRsZXRzOiB7IGFzaWRlOiAnbm90aWZpY2F0aW9ucycgfSB9XSksXG4gICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICBib2R5OiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCd5dXYuc2hlbGwubm90aWZpY2F0aW9uLm5hdGl2ZS5tZXNzYWdlJyksXG4gICAgICAgICAgLy8gYmFkZ2U6IHRoaXMuI3NoZWxsLnNoZWxsQ29uZmlnKCkuaWNvbnMhLmFwcEljb24sXG4gICAgICAgICAgaWNvbjogJ2h0dHBzOi8vYnVkZ2llLmVuYWlvY2kubmV0L2NsaWVudC9hc3NldHMvX3l1dXZpcy90aGVtZS9mYXZpY29uLnN2ZydcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICAgIHRoaXMuX3VwZGF0ZU5vdGlmaWNhdGlvbnMoKTtcbiAgfVxuXG4gIHJlbW92ZShpZDogc3RyaW5nKSB7XG4gICAgdGhpcy5fbm90aWZpY2F0aW9ucyA9IHRoaXMuX25vdGlmaWNhdGlvbnMuZmlsdGVyKChuKSA9PiBuLmlkICE9PSBpZCk7XG4gICAgdGhpcy5fdXBkYXRlTm90aWZpY2F0aW9ucygpO1xuICB9XG5cbiAgcmVtb3ZlQWxsKCkge1xuICAgIHRoaXMuX25vdGlmaWNhdGlvbnMgPSBbXTtcbiAgICB0aGlzLl91cGRhdGVOb3RpZmljYXRpb25zKCk7XG4gIH1cblxuICBtYXJrQWxsQXNTZWVuKCkge1xuICAgIHRoaXMuX25vdGlmaWNhdGlvbnMuZm9yRWFjaCgobikgPT4gKG4uc2VlbiA9IHRydWUpKTtcbiAgICB0aGlzLl91cGRhdGVOb3RpZmljYXRpb25zKCk7XG4gIH1cblxuICBnZXROb3RpZmljYXRpb25CeUlkKGlkOiBzdHJpbmcpOiBTaGVsbE5vdGlmaWNhdGlvbkl0ZW0gfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl9ub3RpZmljYXRpb25zLmZpbmQoKG4pID0+IG4uaWQgPT09IGlkKTtcbiAgfVxuXG4gIHByaXZhdGUgX3VwZGF0ZU5vdGlmaWNhdGlvbnMoKSB7XG4gICAgdGhpcy5fbm90aWZpY2F0aW9ucyA9IHRoaXMuX25vdGlmaWNhdGlvbnMuc29ydCgoYSwgYikgPT4gYi50aW1lc3RhbXAgLSBhLnRpbWVzdGFtcCk7XG4gICAgdGhpcy5fbm90aWZpY2F0aW9uc1NvdXJjZS5uZXh0KHRoaXMuX25vdGlmaWNhdGlvbnMpO1xuICAgIHRoaXMuYXBwQ2FjaGUuc2V0SXRlbSh0aGlzLkxPQ0FMX1NUT1JBR0VfS0VZLCB0aGlzLl9ub3RpZmljYXRpb25zKS5zdWJzY3JpYmUoKTtcbiAgfVxufVxuXG50eXBlIFNoZWxsTm90aWZpY2F0aW9uSXRlbSA9IFNoZWxsTm90aWZpY2F0aW9uICYge1xuICBpZDogc3RyaW5nO1xuICB0aW1lc3RhbXA6IG51bWJlcjtcbiAgc2VlbjogYm9vbGVhbjtcbn07XG4iXX0=
89
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hlbGwtbm90aWZpY2F0aW9ucy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy95dXV2aXMvY2xpZW50LXNoZWxsLWNvcmUvc3JjL2xpYi9zZXJ2aWNlcy9zaGVsbC1ub3RpZmljYXRpb25zL3NoZWxsLW5vdGlmaWNhdGlvbnMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQWMsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxlQUFlLEVBQUUseUJBQXlCLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDMUcsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFFekM7Ozs7OztHQU1HO0FBSUgsTUFBTSxPQUFPLHlCQUF5QjtJQUdwQyxNQUFNLENBQXdCO0lBQzlCLE9BQU8sQ0FBa0I7SUFFekIsMEJBQTBCLENBQXFDO0lBTS9EO1FBWFEsc0JBQWlCLEdBQUcseUJBQXlCLENBQUM7UUFDOUMsYUFBUSxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUMzQyxXQUFNLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQzlCLFlBQU8sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDakIsY0FBUyxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQzdDLCtCQUEwQixHQUFHLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1FBRXZELG1CQUFjLEdBQTRCLEVBQUUsQ0FBQztRQUM3Qyx5QkFBb0IsR0FBRyxJQUFJLGFBQWEsRUFBMkIsQ0FBQztRQUM1RSx3QkFBbUIs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QUFDLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDcEYsSUFBSSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDcEQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNqRixDQUFDOytHQXhFVSx5QkFBeUI7bUhBQXpCLHlCQUF5QixjQUZ4QixNQUFNOzs0RkFFUCx5QkFBeUI7a0JBSHJDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTaGVsbE5vdGlmaWNhdGlvbiB9IGZyb20gJy4vc2hlbGwtbm90aWZpY2F0aW9ucy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgUmVwbGF5U3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQXBwQ2FjaGVTZXJ2aWNlLCBOYXRpdmVOb3RpZmljYXRpb25TZXJ2aWNlLCBUcmFuc2xhdGVTZXJ2aWNlLCBVdGlscyB9IGZyb20gJ0B5dXV2aXMvY2xpZW50LWNvcmUnO1xuaW1wb3J0IHsgU2hlbGxTZXJ2aWNlIH0gZnJvbSAnLi4vc2hlbGwvc2hlbGwuc2VydmljZSc7XG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG4vKipcbiAqIFNlcnZpY2UgbWFuYWdpbmcgc2hlbGwgbm90aWZpY2F0aW9ucy5cbiAqIEV2ZXJ5IGFwcCBjb3VsZCBwcm9wYWdhdGUgc2hlbGwgbm90aWZpY2F0aW9ucy4gVGhleSB3aWxsIGJlIHB1Ymxpc2hlZFxuICogaW4gdGhlIG5vdGlmaWNhdGlvbnMgc2VjdGlvbiBvZiB0aGUgc2hlbGwuIEluY29taW5nIG5ldyBtZXNzYWhlcyB3aWxsXG4gKiBhbHNvIGFkZCBhbiBpbmRpY2F0b3IgdG8gdGhlIGljb24gaW4gdGhlIHNoZWxsIGJhci5cbiAqXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFNoZWxsTm90aWZpY2F0aW9uc1NlcnZpY2Uge1xuICBwcml2YXRlIExPQ0FMX1NUT1JBR0VfS0VZID0gJ3l1di5zaGVsbC5ub3RpZmljYXRpb25zJztcbiAgcHJpdmF0ZSBhcHBDYWNoZSA9IGluamVjdChBcHBDYWNoZVNlcnZpY2UpO1xuICAjc2hlbGwgPSBpbmplY3QoU2hlbGxTZXJ2aWNlKTtcbiAgI3JvdXRlciA9IGluamVjdChSb3V0ZXIpO1xuICBwcml2YXRlIHRyYW5zbGF0ZSA9IGluamVjdChUcmFuc2xhdGVTZXJ2aWNlKTtcbiAgI25hdGl2ZU5vdGlmaWNhdGlvblNlcnZpY2UgPSBpbmplY3QoTmF0aXZlTm90aWZpY2F0aW9uU2VydmljZSk7XG5cbiAgcHJpdmF0ZSBfbm90aWZpY2F0aW9uczogU2hlbGxOb3RpZmljYXRpb25JdGVtW10gPSBbXTtcbiAgcHJpdmF0ZSBfbm90aWZpY2F0aW9uc1NvdXJjZSA9IG5ldyBSZXBsYXlTdWJqZWN0PFNoZWxsTm90aWZpY2F0aW9uSXRlbVtdPigpO1xuICBzaGVsbE5vdGlmaWNhdGlvbnMkOiBPYnNlcnZhYmxlPFNoZWxsTm90aWZpY2F0aW9uSXRlbVtdPiA9IHRoaXMuX25vdGlmaWNhdGlvbnNTb3VyY2UuYXNPYnNlcnZhYmxlKCk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5hcHBDYWNoZS5nZXRJdGVtKHRoaXMuTE9DQUxfU1RPUkFHRV9LRVkpLnN1YnNjcmliZSgocmVzKSA9PiB7XG4gICAgICB0aGlzLl9ub3RpZmljYXRpb25zID0gcmVzIHx8IFtdO1xuICAgICAgdGhpcy5fbm90aWZpY2F0aW9uc1NvdXJjZS5uZXh0KHRoaXMuX25vdGlmaWNhdGlvbnMpO1xuICAgIH0pO1xuICB9XG5cbiAgLy8gZ2V0Tm90aWZpY2F0aW9ucyhpZDogc3RyaW5nKSB7XG4gIC8vICAgY29uc3QgZmlsZSA9IFtcbiAgLy8gICAgIHsgaWQ6ICdpby55dXV2aXMuYXBwLmRyaXZlJywgY291bnQ6IDIsIG1heExldmVsOiAnaW5mbycgfSxcbiAgLy8gICAgIHsgaWQ6ICdpby55dXV2aXMuYXBwLnRhc2tzJywgY291bnQ6IDIyMiwgbWF4TGV2ZWw6ICd3YXJuaW5nJyB9XG4gIC8vICAgXTtcblxuICAvLyAgIHJldHVybiBmaWxlLmZpbmQoKGYpID0+IGYuaWQgPT09IGlkKTtcbiAgLy8gfVxuXG4gIGFkZChub3RpZmljYXRpb246IFNoZWxsTm90aWZpY2F0aW9uLCBuYXRpdmVOb3RpZmljYXRpb24gPSBmYWxzZSkge1xuICAgIHRoaXMuX25vdGlmaWNhdGlvbnMucHVzaCh7XG4gICAgICAuLi5ub3RpZmljYXRpb24sXG4gICAgICBpZDogVXRpbHMudXVpZCgpLFxuICAgICAgdGltZXN0YW1wOiBuZXcgRGF0ZSgpLmdldFRpbWUoKSxcbiAgICAgIHNlZW46IGZhbHNlXG4gICAgfSk7XG4gICAgLy8gY2hlY2sgZm9yIHVuc2VlbiBpdGVtc1xuICAgIGlmIChkb2N1bWVudC5oaWRkZW4gJiYgbmF0aXZlTm90aWZpY2F0aW9uICYmIHRoaXMuX25vdGlmaWNhdGlvbnMuc29tZSgobikgPT4gIW4uc2VlbikpIHtcbiAgICAgIHRoaXMuI25hdGl2ZU5vdGlmaWNhdGlvblNlcnZpY2Uuc2hvd05vdGlmaWNhdGlvbih0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCd5dXYuc2hlbGwubm90aWZpY2F0aW9uLm5hdGl2ZS50aXRsZScpLCB7XG4gICAgICAgIG9uQ2xpY2s6ICgpID0+IHRoaXMuI3JvdXRlci5uYXZpZ2F0ZShbeyBvdXRsZXRzOiB7IGFzaWRlOiAnbm90aWZpY2F0aW9ucycgfSB9XSksXG4gICAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgICBib2R5OiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCd5dXYuc2hlbGwubm90aWZpY2F0aW9uLm5hdGl2ZS5tZXNzYWdlJyksXG4gICAgICAgICAgLy8gYmFkZ2U6IHRoaXMuI3NoZWxsLnNoZWxsQ29uZmlnKCkuaWNvbnMhLmFwcEljb24sXG4gICAgICAgICAgaWNvbjogJ2h0dHBzOi8vYnVkZ2llLmVuYWlvY2kubmV0L2NsaWVudC9hc3NldHMvX3l1dXZpcy90aGVtZS9mYXZpY29uLnN2ZydcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICAgIHRoaXMuX3VwZGF0ZU5vdGlmaWNhdGlvbnMoKTtcbiAgfVxuXG4gIHJlbW92ZShpZDogc3RyaW5nKSB7XG4gICAgdGhpcy5fbm90aWZpY2F0aW9ucyA9IHRoaXMuX25vdGlmaWNhdGlvbnMuZmlsdGVyKChuKSA9PiBuLmlkICE9PSBpZCk7XG4gICAgdGhpcy5fdXBkYXRlTm90aWZpY2F0aW9ucygpO1xuICB9XG5cbiAgcmVtb3ZlQWxsKCkge1xuICAgIHRoaXMuX25vdGlmaWNhdGlvbnMgPSBbXTtcbiAgICB0aGlzLl91cGRhdGVOb3RpZmljYXRpb25zKCk7XG4gIH1cblxuICBtYXJrQWxsQXNTZWVuKCkge1xuICAgIHRoaXMuX25vdGlmaWNhdGlvbnMuZm9yRWFjaCgobikgPT4gKG4uc2VlbiA9IHRydWUpKTtcbiAgICB0aGlzLl91cGRhdGVOb3RpZmljYXRpb25zKCk7XG4gIH1cblxuICBnZXROb3RpZmljYXRpb25CeUlkKGlkOiBzdHJpbmcpOiBTaGVsbE5vdGlmaWNhdGlvbkl0ZW0gfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl9ub3RpZmljYXRpb25zLmZpbmQoKG4pID0+IG4uaWQgPT09IGlkKTtcbiAgfVxuXG4gIHByaXZhdGUgX3VwZGF0ZU5vdGlmaWNhdGlvbnMoKSB7XG4gICAgdGhpcy5fbm90aWZpY2F0aW9ucyA9IHRoaXMuX25vdGlmaWNhdGlvbnMuc29ydCgoYSwgYikgPT4gYi50aW1lc3RhbXAgLSBhLnRpbWVzdGFtcCk7XG4gICAgdGhpcy5fbm90aWZpY2F0aW9uc1NvdXJjZS5uZXh0KHRoaXMuX25vdGlmaWNhdGlvbnMpO1xuICAgIHRoaXMuYXBwQ2FjaGUuc2V0SXRlbSh0aGlzLkxPQ0FMX1NUT1JBR0VfS0VZLCB0aGlzLl9ub3RpZmljYXRpb25zKS5zdWJzY3JpYmUoKTtcbiAgfVxufVxuXG50eXBlIFNoZWxsTm90aWZpY2F0aW9uSXRlbSA9IFNoZWxsTm90aWZpY2F0aW9uICYge1xuICBpZDogc3RyaW5nO1xuICB0aW1lc3RhbXA6IG51bWJlcjtcbiAgc2VlbjogYm9vbGVhbjtcbn07XG4iXX0=
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yuuvis/client-shell-core",
3
- "version": "2.0.0-beta.5",
3
+ "version": "2.0.0",
4
4
  "author": "OPTIMAL SYSTEMS GmbH <npm@optimal-systems.de>",
5
5
  "license": "MIT",
6
6
  "peerDependencies": {
@@ -11,7 +11,7 @@
11
11
  "@angular/platform-browser": "^19.2.1"
12
12
  },
13
13
  "dependencies": {
14
- "@yuuvis/client-core": "2.0.0-beta.5",
14
+ "@yuuvis/client-core": "2.0.0",
15
15
  "tslib": "^2.3.0"
16
16
  },
17
17
  "sideEffects": false,