barsa-tiles 0.0.1 → 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. package/esm2020/lib/actions-link/actions-link.component.mjs +3 -3
  2. package/esm2020/lib/app-finder/app-finder.component.mjs +3 -3
  3. package/esm2020/lib/app-finder-group/app-finder-group.component.mjs +3 -3
  4. package/esm2020/lib/app-finder.service.mjs +1 -1
  5. package/esm2020/lib/directives/emptylist.directive.mjs +1 -1
  6. package/esm2020/lib/feed-tile/feed-tile.component.mjs +3 -3
  7. package/esm2020/lib/footer-edit-tile/footer-edit-tile.component.mjs +1 -1
  8. package/esm2020/lib/footer-tile/footer-tile.component.mjs +1 -1
  9. package/esm2020/lib/form-app-finder/form-app-finder.component.mjs +3 -3
  10. package/esm2020/lib/form-tile/form-tile.component.mjs +1 -1
  11. package/esm2020/lib/models/base-bt-tile-component.mjs +1 -1
  12. package/esm2020/lib/models/base-tile-component.mjs +1 -1
  13. package/esm2020/lib/news-tile/news-tile.component.mjs +3 -3
  14. package/esm2020/lib/pin-tile/pin-tile.component.mjs +1 -1
  15. package/esm2020/lib/shellbar/shellbar.component.mjs +8 -4
  16. package/esm2020/lib/tile/tile.component.mjs +3 -3
  17. package/esm2020/lib/tile-renderer.directive.mjs +1 -1
  18. package/esm2020/lib/tiles-viewer/tiles-viewer.component.mjs +14 -9
  19. package/esm2020/lib/tiles-viewer-container/tiles-viewer-container.component.mjs +4 -6
  20. package/esm2020/lib/tiles-viewer-group/tiles-viewer-group.component.mjs +5 -3
  21. package/fesm2015/barsa-tiles.mjs +41 -32
  22. package/fesm2015/barsa-tiles.mjs.map +1 -1
  23. package/fesm2020/barsa-tiles.mjs +41 -32
  24. package/fesm2020/barsa-tiles.mjs.map +1 -1
  25. package/lib/shellbar/shellbar.component.d.ts +2 -0
  26. package/lib/tiles-viewer/tiles-viewer.component.d.ts +3 -1
  27. package/lib/tiles-viewer-container/tiles-viewer-container.component.d.ts +2 -1
  28. package/lib/tiles-viewer-group/tiles-viewer-group.component.d.ts +3 -2
  29. package/package.json +1 -1
@@ -48,12 +48,12 @@ export class NewsTileComponent extends BaseBtTileComponent {
48
48
  }
49
49
  }
50
50
  NewsTileComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: NewsTileComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
51
- NewsTileComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: NewsTileComponent, selector: "bt-news-tile", viewQueries: [{ propertyName: "carouselComponent", first: true, predicate: CarouselComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<bt-tile [data]=\"data\" [type]=\"'launch'\" [footerTemplate]=\"newsFooter\" [editHome]=\"editHome\">\n <div fd-tile-content style=\"align-items: center; padding-top: 1rem\">\n <span>\n {{ activeNews?.Text }}\n </span>\n\n <div class=\"wrapper-carousel\">\n <div class=\"cover\"></div>\n <button *ngIf=\"isStop; else stop\" fd-button fdType=\"transparent\" glyph=\"play\" (click)=\"trigger()\"></button>\n <ng-template #stop>\n <button fd-button fdType=\"transparent\" glyph=\"pause\" (click)=\"trigger()\"></button>\n </ng-template>\n <fd-carousel\n *ngIf=\"slides && slides.length\"\n carouselIndicatorsOrientation=\"top\"\n [slideTransitionDuration]=\"1000\"\n (slideChange)=\"slideChange($event)\"\n [loop]=\"true\"\n [navigation]=\"false\"\n width=\"100%\"\n >\n <fd-carousel-item *ngFor=\"let slide of slides\" [value]=\"slide\">\n <img\n [src]=\"slide.Img ? (slide.Img.FileId | picFieldSrc: 'ID':null:slide.Img.FileId:335:170) : ''\"\n />\n </fd-carousel-item>\n </fd-carousel>\n </div>\n </div>\n</bt-tile>\n\n<!-- tile footer-->\n<ng-template #newsFooter>\n <div fd-tile-footer [twoColumn]=\"twoColumn\" *untilInView=\"el\">\n <ng-container *ngIf=\"twoColumn; else oneColumn\">\n <div fd-tile-section>\n <span fd-tile-footer-text>{{ activeNews?.Footer1 }}</span>\n </div>\n <div fd-tile-section>\n <span fd-tile-footer-text>{{ activeNews?.Footer2 }}</span>\n </div>\n </ng-container>\n <ng-template #oneColumn>\n <span fd-tile-footer-text>{{ activeNews?.Footer1 }}</span>\n </ng-template>\n </div>\n</ng-template>\n", styles: [":host{position:relative;display:block}:host bt-tile{position:relative}:host bt-tile .wrapper-carousel{position:absolute;top:0;width:100%;height:100%;left:0;z-index:0}:host bt-tile .wrapper-carousel img{width:335px;height:165px;object-fit:cover}:host ::ng-deep span{z-index:3;color:#fff}:host ::ng-deep button{position:absolute;right:15px;top:15px;display:none}:host ::ng-deep button fd-icon{z-index:4;min-width:1.5rem!important;font-size:1.5rem!important;color:#fff!important}:host ::ng-deep .fd-carousel__content{z-index:3}:host ::ng-deep .fd-carousel__page-indicator-container{position:absolute;bottom:0;display:none;background-color:transparent}:host ::ng-deep .fd-carousel__page-indicator-container ol{z-index:5}:host ::ng-deep .fd-carousel__page-indicator-container ol li{background-color:#dad7d7}:host ::ng-deep .fd-carousel__page-indicator-container ol li.fd-carousel__page-indicator--active{background-color:#fff}:host .cover{background-color:#064079d9;position:absolute;bottom:0;left:0;right:0;height:50%;z-index:4;opacity:.6}:host:hover ::ng-deep .fd-carousel__page-indicator-container{display:inherit}:host:hover ::ng-deep button{display:inline-flex}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i3.CarouselComponent, selector: "fd-carousel", inputs: ["id", "ariaLabel", "ariaLabelledBy", "ariaDescribedBy", "pageIndicatorsOrientation", "height", "width", "loop", "leftNavigationBtnLabel", "rightNavigationBtnLabel", "navigation", "navigatorInPageIndicator", "numericIndicator", "pageIndicatorContainer", "pageIndicator", "resourceStrings", "slideTransitionDuration", "swipeEnabled", "vertical", "visibleSlidesCount"], outputs: ["slideChange"] }, { kind: "component", type: i3.CarouselItemComponent, selector: "fd-carousel-item", inputs: ["id", "ariaLabel", "ariaLabelledBy", "ariaDescribedBy", "loading", "title", "initialHeight", "initialWidth", "value"] }, { kind: "directive", type: i4.TileContentDirective, selector: "[fdTileContent], [fd-tile-content]", inputs: ["twoColumn"] }, { kind: "directive", type: i4.TileFooterDirective, selector: "[fdTileFooter], [fd-tile-footer]", inputs: ["twoColumn"] }, { kind: "directive", type: i4.TileSectionDirective, selector: "[fdTileSection], [fd-tile-section]" }, { kind: "directive", type: i4.TileFooterTextDirective, selector: "[fdTileFooterText], [fd-tile-footer-text]" }, { kind: "directive", type: i5.UntilInViewDirective, selector: "[untilInView]", inputs: ["untilInView", "intersectionDebounce"] }, { kind: "component", type: i6.TileComponent, selector: "bt-tile", inputs: ["type", "footerTemplate", "disableClick"] }, { kind: "pipe", type: i5.PictureFieldSourcePipe, name: "picFieldSrc" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
51
+ NewsTileComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: NewsTileComponent, selector: "bt-news-tile", viewQueries: [{ propertyName: "carouselComponent", first: true, predicate: CarouselComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<bt-tile [data]=\"data\" [type]=\"'launch'\" [footerTemplate]=\"newsFooter\" [editHome]=\"editHome\">\r\n <div fd-tile-content style=\"align-items: center; padding-top: 1rem\">\r\n <span>\r\n {{ activeNews?.Text }}\r\n </span>\r\n\r\n <div class=\"wrapper-carousel\">\r\n <div class=\"cover\"></div>\r\n <button *ngIf=\"isStop; else stop\" fd-button fdType=\"transparent\" glyph=\"play\" (click)=\"trigger()\"></button>\r\n <ng-template #stop>\r\n <button fd-button fdType=\"transparent\" glyph=\"pause\" (click)=\"trigger()\"></button>\r\n </ng-template>\r\n <fd-carousel\r\n *ngIf=\"slides && slides.length\"\r\n carouselIndicatorsOrientation=\"top\"\r\n [slideTransitionDuration]=\"1000\"\r\n (slideChange)=\"slideChange($event)\"\r\n [loop]=\"true\"\r\n [navigation]=\"false\"\r\n width=\"100%\"\r\n >\r\n <fd-carousel-item *ngFor=\"let slide of slides\" [value]=\"slide\">\r\n <img\r\n [src]=\"slide.Img ? (slide.Img.FileId | picFieldSrc: 'ID':null:slide.Img.FileId:335:170) : ''\"\r\n />\r\n </fd-carousel-item>\r\n </fd-carousel>\r\n </div>\r\n </div>\r\n</bt-tile>\r\n\r\n<!-- tile footer-->\r\n<ng-template #newsFooter>\r\n <div fd-tile-footer [twoColumn]=\"twoColumn\" *untilInView=\"el\">\r\n <ng-container *ngIf=\"twoColumn; else oneColumn\">\r\n <div fd-tile-section>\r\n <span fd-tile-footer-text>{{ activeNews?.Footer1 }}</span>\r\n </div>\r\n <div fd-tile-section>\r\n <span fd-tile-footer-text>{{ activeNews?.Footer2 }}</span>\r\n </div>\r\n </ng-container>\r\n <ng-template #oneColumn>\r\n <span fd-tile-footer-text>{{ activeNews?.Footer1 }}</span>\r\n </ng-template>\r\n </div>\r\n</ng-template>\r\n", styles: [":host{position:relative;display:block}:host bt-tile{position:relative}:host bt-tile .wrapper-carousel{position:absolute;top:0;width:100%;height:100%;left:0;z-index:0}:host bt-tile .wrapper-carousel img{width:335px;height:165px;object-fit:cover}:host ::ng-deep span{z-index:3;color:#fff}:host ::ng-deep button{position:absolute;right:15px;top:15px;display:none}:host ::ng-deep button fd-icon{z-index:4;min-width:1.5rem!important;font-size:1.5rem!important;color:#fff!important}:host ::ng-deep .fd-carousel__content{z-index:3}:host ::ng-deep .fd-carousel__page-indicator-container{position:absolute;bottom:0;display:none;background-color:transparent}:host ::ng-deep .fd-carousel__page-indicator-container ol{z-index:5}:host ::ng-deep .fd-carousel__page-indicator-container ol li{background-color:#dad7d7}:host ::ng-deep .fd-carousel__page-indicator-container ol li.fd-carousel__page-indicator--active{background-color:#fff}:host .cover{background-color:#064079d9;position:absolute;bottom:0;left:0;right:0;height:50%;z-index:4;opacity:.6}:host:hover ::ng-deep .fd-carousel__page-indicator-container{display:inherit}:host:hover ::ng-deep button{display:inline-flex}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i3.CarouselComponent, selector: "fd-carousel", inputs: ["id", "ariaLabel", "ariaLabelledBy", "ariaDescribedBy", "pageIndicatorsOrientation", "height", "width", "loop", "leftNavigationBtnLabel", "rightNavigationBtnLabel", "navigation", "navigatorInPageIndicator", "numericIndicator", "pageIndicatorContainer", "pageIndicator", "resourceStrings", "slideTransitionDuration", "swipeEnabled", "vertical", "visibleSlidesCount"], outputs: ["slideChange"] }, { kind: "component", type: i3.CarouselItemComponent, selector: "fd-carousel-item", inputs: ["id", "ariaLabel", "ariaLabelledBy", "ariaDescribedBy", "loading", "title", "initialHeight", "initialWidth", "value"] }, { kind: "directive", type: i4.TileContentDirective, selector: "[fdTileContent], [fd-tile-content]", inputs: ["twoColumn"] }, { kind: "directive", type: i4.TileFooterDirective, selector: "[fdTileFooter], [fd-tile-footer]", inputs: ["twoColumn"] }, { kind: "directive", type: i4.TileSectionDirective, selector: "[fdTileSection], [fd-tile-section]" }, { kind: "directive", type: i4.TileFooterTextDirective, selector: "[fdTileFooterText], [fd-tile-footer-text]" }, { kind: "directive", type: i5.UntilInViewDirective, selector: "[untilInView]", inputs: ["untilInView", "intersectionDebounce"] }, { kind: "component", type: i6.TileComponent, selector: "bt-tile", inputs: ["type", "footerTemplate", "disableClick"] }, { kind: "pipe", type: i5.PictureFieldSourcePipe, name: "picFieldSrc" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
52
52
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: NewsTileComponent, decorators: [{
53
53
  type: Component,
54
- args: [{ selector: 'bt-news-tile', changeDetection: ChangeDetectionStrategy.OnPush, template: "<bt-tile [data]=\"data\" [type]=\"'launch'\" [footerTemplate]=\"newsFooter\" [editHome]=\"editHome\">\n <div fd-tile-content style=\"align-items: center; padding-top: 1rem\">\n <span>\n {{ activeNews?.Text }}\n </span>\n\n <div class=\"wrapper-carousel\">\n <div class=\"cover\"></div>\n <button *ngIf=\"isStop; else stop\" fd-button fdType=\"transparent\" glyph=\"play\" (click)=\"trigger()\"></button>\n <ng-template #stop>\n <button fd-button fdType=\"transparent\" glyph=\"pause\" (click)=\"trigger()\"></button>\n </ng-template>\n <fd-carousel\n *ngIf=\"slides && slides.length\"\n carouselIndicatorsOrientation=\"top\"\n [slideTransitionDuration]=\"1000\"\n (slideChange)=\"slideChange($event)\"\n [loop]=\"true\"\n [navigation]=\"false\"\n width=\"100%\"\n >\n <fd-carousel-item *ngFor=\"let slide of slides\" [value]=\"slide\">\n <img\n [src]=\"slide.Img ? (slide.Img.FileId | picFieldSrc: 'ID':null:slide.Img.FileId:335:170) : ''\"\n />\n </fd-carousel-item>\n </fd-carousel>\n </div>\n </div>\n</bt-tile>\n\n<!-- tile footer-->\n<ng-template #newsFooter>\n <div fd-tile-footer [twoColumn]=\"twoColumn\" *untilInView=\"el\">\n <ng-container *ngIf=\"twoColumn; else oneColumn\">\n <div fd-tile-section>\n <span fd-tile-footer-text>{{ activeNews?.Footer1 }}</span>\n </div>\n <div fd-tile-section>\n <span fd-tile-footer-text>{{ activeNews?.Footer2 }}</span>\n </div>\n </ng-container>\n <ng-template #oneColumn>\n <span fd-tile-footer-text>{{ activeNews?.Footer1 }}</span>\n </ng-template>\n </div>\n</ng-template>\n", styles: [":host{position:relative;display:block}:host bt-tile{position:relative}:host bt-tile .wrapper-carousel{position:absolute;top:0;width:100%;height:100%;left:0;z-index:0}:host bt-tile .wrapper-carousel img{width:335px;height:165px;object-fit:cover}:host ::ng-deep span{z-index:3;color:#fff}:host ::ng-deep button{position:absolute;right:15px;top:15px;display:none}:host ::ng-deep button fd-icon{z-index:4;min-width:1.5rem!important;font-size:1.5rem!important;color:#fff!important}:host ::ng-deep .fd-carousel__content{z-index:3}:host ::ng-deep .fd-carousel__page-indicator-container{position:absolute;bottom:0;display:none;background-color:transparent}:host ::ng-deep .fd-carousel__page-indicator-container ol{z-index:5}:host ::ng-deep .fd-carousel__page-indicator-container ol li{background-color:#dad7d7}:host ::ng-deep .fd-carousel__page-indicator-container ol li.fd-carousel__page-indicator--active{background-color:#fff}:host .cover{background-color:#064079d9;position:absolute;bottom:0;left:0;right:0;height:50%;z-index:4;opacity:.6}:host:hover ::ng-deep .fd-carousel__page-indicator-container{display:inherit}:host:hover ::ng-deep button{display:inline-flex}\n"] }]
54
+ args: [{ selector: 'bt-news-tile', changeDetection: ChangeDetectionStrategy.OnPush, template: "<bt-tile [data]=\"data\" [type]=\"'launch'\" [footerTemplate]=\"newsFooter\" [editHome]=\"editHome\">\r\n <div fd-tile-content style=\"align-items: center; padding-top: 1rem\">\r\n <span>\r\n {{ activeNews?.Text }}\r\n </span>\r\n\r\n <div class=\"wrapper-carousel\">\r\n <div class=\"cover\"></div>\r\n <button *ngIf=\"isStop; else stop\" fd-button fdType=\"transparent\" glyph=\"play\" (click)=\"trigger()\"></button>\r\n <ng-template #stop>\r\n <button fd-button fdType=\"transparent\" glyph=\"pause\" (click)=\"trigger()\"></button>\r\n </ng-template>\r\n <fd-carousel\r\n *ngIf=\"slides && slides.length\"\r\n carouselIndicatorsOrientation=\"top\"\r\n [slideTransitionDuration]=\"1000\"\r\n (slideChange)=\"slideChange($event)\"\r\n [loop]=\"true\"\r\n [navigation]=\"false\"\r\n width=\"100%\"\r\n >\r\n <fd-carousel-item *ngFor=\"let slide of slides\" [value]=\"slide\">\r\n <img\r\n [src]=\"slide.Img ? (slide.Img.FileId | picFieldSrc: 'ID':null:slide.Img.FileId:335:170) : ''\"\r\n />\r\n </fd-carousel-item>\r\n </fd-carousel>\r\n </div>\r\n </div>\r\n</bt-tile>\r\n\r\n<!-- tile footer-->\r\n<ng-template #newsFooter>\r\n <div fd-tile-footer [twoColumn]=\"twoColumn\" *untilInView=\"el\">\r\n <ng-container *ngIf=\"twoColumn; else oneColumn\">\r\n <div fd-tile-section>\r\n <span fd-tile-footer-text>{{ activeNews?.Footer1 }}</span>\r\n </div>\r\n <div fd-tile-section>\r\n <span fd-tile-footer-text>{{ activeNews?.Footer2 }}</span>\r\n </div>\r\n </ng-container>\r\n <ng-template #oneColumn>\r\n <span fd-tile-footer-text>{{ activeNews?.Footer1 }}</span>\r\n </ng-template>\r\n </div>\r\n</ng-template>\r\n", styles: [":host{position:relative;display:block}:host bt-tile{position:relative}:host bt-tile .wrapper-carousel{position:absolute;top:0;width:100%;height:100%;left:0;z-index:0}:host bt-tile .wrapper-carousel img{width:335px;height:165px;object-fit:cover}:host ::ng-deep span{z-index:3;color:#fff}:host ::ng-deep button{position:absolute;right:15px;top:15px;display:none}:host ::ng-deep button fd-icon{z-index:4;min-width:1.5rem!important;font-size:1.5rem!important;color:#fff!important}:host ::ng-deep .fd-carousel__content{z-index:3}:host ::ng-deep .fd-carousel__page-indicator-container{position:absolute;bottom:0;display:none;background-color:transparent}:host ::ng-deep .fd-carousel__page-indicator-container ol{z-index:5}:host ::ng-deep .fd-carousel__page-indicator-container ol li{background-color:#dad7d7}:host ::ng-deep .fd-carousel__page-indicator-container ol li.fd-carousel__page-indicator--active{background-color:#fff}:host .cover{background-color:#064079d9;position:absolute;bottom:0;left:0;right:0;height:50%;z-index:4;opacity:.6}:host:hover ::ng-deep .fd-carousel__page-indicator-container{display:inherit}:host:hover ::ng-deep button{display:inline-flex}\n"] }]
55
55
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { carouselComponent: [{
56
56
  type: ViewChild,
57
57
  args: [CarouselComponent]
58
58
  }] } });
59
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV3cy10aWxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLXRpbGVzL3NyYy9saWIvbmV3cy10aWxlL25ld3MtdGlsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS10aWxlcy9zcmMvbGliL25ld3MtdGlsZS9uZXdzLXRpbGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFDVCx1QkFBdUIsRUFDdkIsU0FBUyxFQUtaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDaEMsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsaUJBQWlCLEVBQXlCLE1BQU0sdUJBQXVCLENBQUM7QUFHakYsT0FBTyxFQUFFLG1CQUFtQixFQUFtQixNQUFNLFdBQVcsQ0FBQzs7Ozs7Ozs7QUFRakUsTUFBTSxPQUFPLGlCQUFrQixTQUFRLG1CQUFvQztJQU12RSxZQUFtQixFQUFjLEVBQVksVUFBcUIsRUFBWSxJQUF1QjtRQUNqRyxLQUFLLENBQUMsRUFBRSxFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQztRQURiLE9BQUUsR0FBRixFQUFFLENBQVk7UUFBWSxlQUFVLEdBQVYsVUFBVSxDQUFXO1FBQVksU0FBSSxHQUFKLElBQUksQ0FBbUI7UUFGckcsV0FBTSxHQUFHLEtBQUssQ0FBQztJQUlmLENBQUM7SUFFRCxJQUFJLFNBQVM7UUFDVCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDO0lBQ2pDLENBQUM7SUFDRCxRQUFRO1FBQ0osS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2pCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQztRQUUvQyxJQUFJLE1BQU0sQ0FBQyxNQUFNLEVBQUU7WUFDZixJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzVCLFFBQVEsQ0FBQyxJQUFJLENBQUM7aUJBQ1QsSUFBSSxDQUNELFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEVBQzNCLEdBQUcsQ0FBQyxHQUFHLEVBQUU7Z0JBQ0wsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUU7b0JBQ2QsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSxDQUFDO2lCQUNqQztZQUNMLENBQUMsQ0FBQyxDQUNMO2lCQUNBLFNBQVMsRUFBRSxDQUFDO1NBQ3BCO1FBQ0QsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7SUFDekIsQ0FBQztJQUVELE9BQU87UUFDSCxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUMvQixDQUFDO0lBRUQsV0FBVyxDQUFDLFdBQXFEO1FBQzdELE1BQU0sWUFBWSxHQUFHLFdBQVcsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1FBQ3RELElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVPLFdBQVcsQ0FBQyxNQUEyQjtRQUMzQyxJQUFJLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQztJQUM3QixDQUFDOzs4R0E1Q1EsaUJBQWlCO2tHQUFqQixpQkFBaUIsdUdBQ2YsaUJBQWlCLHVFQ3ZCaEMsMjdEQStDQTsyRkR6QmEsaUJBQWlCO2tCQU43QixTQUFTOytCQUNJLGNBQWMsbUJBR1AsdUJBQXVCLENBQUMsTUFBTTt5SkFHakIsaUJBQWlCO3NCQUE5QyxTQUFTO3VCQUFDLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ29tcG9uZW50LFxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIFZpZXdDaGlsZCxcbiAgICBFbGVtZW50UmVmLFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIE9uSW5pdCxcbiAgICBSZW5kZXJlcjJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBpbnRlcnZhbCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFwLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBDYXJvdXNlbENvbXBvbmVudCwgQ2Fyb3VzZWxJdGVtQ29tcG9uZW50IH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlJztcblxuaW1wb3J0IHsgTWV0YW9iamVjdERhdGFNb2RlbCB9IGZyb20gJ2JhcnNhLW5vdmluLXJheS1jb3JlJztcbmltcG9ydCB7IEJhc2VCdFRpbGVDb21wb25lbnQsIE5ld3NUaWxlU2V0dGluZyB9IGZyb20gJy4uL21vZGVscyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYnQtbmV3cy10aWxlJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vbmV3cy10aWxlLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9uZXdzLXRpbGUuY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBOZXdzVGlsZUNvbXBvbmVudCBleHRlbmRzIEJhc2VCdFRpbGVDb21wb25lbnQ8TmV3c1RpbGVTZXR0aW5nPiBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgQFZpZXdDaGlsZChDYXJvdXNlbENvbXBvbmVudCkgY2Fyb3VzZWxDb21wb25lbnQ6IENhcm91c2VsQ29tcG9uZW50O1xuICAgIHNsaWRlczogTWV0YW9iamVjdERhdGFNb2RlbFtdO1xuICAgIGFjdGl2ZU5ld3M6IE1ldGFvYmplY3REYXRhTW9kZWw7XG4gICAgaXNTdG9wID0gZmFsc2U7XG5cbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgZWw6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCBfcmVuZGVyZXIyOiBSZW5kZXJlcjIsIHByb3RlY3RlZCBfY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikge1xuICAgICAgICBzdXBlcihlbCwgX3JlbmRlcmVyMiwgX2Nkcik7XG4gICAgfVxuXG4gICAgZ2V0IHR3b0NvbHVtbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZm9vdGVyLlR3b0NvbHVtbjtcbiAgICB9XG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgICAgIGNvbnN0IHNsaWRlcyA9IHRoaXMuc2V0dGluZ3MuUmVwb3J0Lk1vRGF0YUxpc3Q7XG5cbiAgICAgICAgaWYgKHNsaWRlcy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMuX3VwZGF0ZVRpbGUoc2xpZGVzWzBdKTtcbiAgICAgICAgICAgIGludGVydmFsKDUwMDApXG4gICAgICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSxcbiAgICAgICAgICAgICAgICAgICAgdGFwKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghdGhpcy5pc1N0b3ApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNhcm91c2VsQ29tcG9uZW50Lm5leHQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgLnN1YnNjcmliZSgpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuc2xpZGVzID0gc2xpZGVzO1xuICAgIH1cblxuICAgIHRyaWdnZXIoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaXNTdG9wID0gIXRoaXMuaXNTdG9wO1xuICAgIH1cblxuICAgIHNsaWRlQ2hhbmdlKGFjdGl2ZVNsaWRlOiB7IGFjdGl2ZUl0ZW1zOiBDYXJvdXNlbEl0ZW1Db21wb25lbnRbXSB9KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGN1cnJlbnRTbGlkZSA9IGFjdGl2ZVNsaWRlLmFjdGl2ZUl0ZW1zWzBdLnZhbHVlO1xuICAgICAgICB0aGlzLl91cGRhdGVUaWxlKGN1cnJlbnRTbGlkZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfdXBkYXRlVGlsZShuZXdzTW86IE1ldGFvYmplY3REYXRhTW9kZWwpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5hY3RpdmVOZXdzID0gbmV3c01vO1xuICAgIH1cbn1cbiIsIjxidC10aWxlIFtkYXRhXT1cImRhdGFcIiBbdHlwZV09XCInbGF1bmNoJ1wiIFtmb290ZXJUZW1wbGF0ZV09XCJuZXdzRm9vdGVyXCIgW2VkaXRIb21lXT1cImVkaXRIb21lXCI+XG4gICAgPGRpdiBmZC10aWxlLWNvbnRlbnQgc3R5bGU9XCJhbGlnbi1pdGVtczogY2VudGVyOyBwYWRkaW5nLXRvcDogMXJlbVwiPlxuICAgICAgICA8c3Bhbj5cbiAgICAgICAgICAgIHt7IGFjdGl2ZU5ld3M/LlRleHQgfX1cbiAgICAgICAgPC9zcGFuPlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyLWNhcm91c2VsXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY292ZXJcIj48L2Rpdj5cbiAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCJpc1N0b3A7IGVsc2Ugc3RvcFwiIGZkLWJ1dHRvbiBmZFR5cGU9XCJ0cmFuc3BhcmVudFwiIGdseXBoPVwicGxheVwiIChjbGljayk9XCJ0cmlnZ2VyKClcIj48L2J1dHRvbj5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjc3RvcD5cbiAgICAgICAgICAgICAgICA8YnV0dG9uIGZkLWJ1dHRvbiBmZFR5cGU9XCJ0cmFuc3BhcmVudFwiIGdseXBoPVwicGF1c2VcIiAoY2xpY2spPVwidHJpZ2dlcigpXCI+PC9idXR0b24+XG4gICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgPGZkLWNhcm91c2VsXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJzbGlkZXMgJiYgc2xpZGVzLmxlbmd0aFwiXG4gICAgICAgICAgICAgICAgY2Fyb3VzZWxJbmRpY2F0b3JzT3JpZW50YXRpb249XCJ0b3BcIlxuICAgICAgICAgICAgICAgIFtzbGlkZVRyYW5zaXRpb25EdXJhdGlvbl09XCIxMDAwXCJcbiAgICAgICAgICAgICAgICAoc2xpZGVDaGFuZ2UpPVwic2xpZGVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgW2xvb3BdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgW25hdmlnYXRpb25dPVwiZmFsc2VcIlxuICAgICAgICAgICAgICAgIHdpZHRoPVwiMTAwJVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGZkLWNhcm91c2VsLWl0ZW0gKm5nRm9yPVwibGV0IHNsaWRlIG9mIHNsaWRlc1wiIFt2YWx1ZV09XCJzbGlkZVwiPlxuICAgICAgICAgICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgICAgICAgICBbc3JjXT1cInNsaWRlLkltZyA/IChzbGlkZS5JbWcuRmlsZUlkIHwgcGljRmllbGRTcmM6ICdJRCc6bnVsbDpzbGlkZS5JbWcuRmlsZUlkOjMzNToxNzApIDogJydcIlxuICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDwvZmQtY2Fyb3VzZWwtaXRlbT5cbiAgICAgICAgICAgIDwvZmQtY2Fyb3VzZWw+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9idC10aWxlPlxuXG48IS0tICB0aWxlIGZvb3Rlci0tPlxuPG5nLXRlbXBsYXRlICNuZXdzRm9vdGVyPlxuICAgIDxkaXYgZmQtdGlsZS1mb290ZXIgW3R3b0NvbHVtbl09XCJ0d29Db2x1bW5cIiAqdW50aWxJblZpZXc9XCJlbFwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwidHdvQ29sdW1uOyBlbHNlIG9uZUNvbHVtblwiPlxuICAgICAgICAgICAgPGRpdiBmZC10aWxlLXNlY3Rpb24+XG4gICAgICAgICAgICAgICAgPHNwYW4gZmQtdGlsZS1mb290ZXItdGV4dD57eyBhY3RpdmVOZXdzPy5Gb290ZXIxIH19PC9zcGFuPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGZkLXRpbGUtc2VjdGlvbj5cbiAgICAgICAgICAgICAgICA8c3BhbiBmZC10aWxlLWZvb3Rlci10ZXh0Pnt7IGFjdGl2ZU5ld3M/LkZvb3RlcjIgfX08L3NwYW4+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSAjb25lQ29sdW1uPlxuICAgICAgICAgICAgPHNwYW4gZmQtdGlsZS1mb290ZXItdGV4dD57eyBhY3RpdmVOZXdzPy5Gb290ZXIxIH19PC9zcGFuPlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV3cy10aWxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLXRpbGVzL3NyYy9saWIvbmV3cy10aWxlL25ld3MtdGlsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS10aWxlcy9zcmMvbGliL25ld3MtdGlsZS9uZXdzLXRpbGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFDVCx1QkFBdUIsRUFDdkIsU0FBUyxFQUtaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDaEMsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsaUJBQWlCLEVBQXlCLE1BQU0sdUJBQXVCLENBQUM7QUFHakYsT0FBTyxFQUFFLG1CQUFtQixFQUFtQixNQUFNLFdBQVcsQ0FBQzs7Ozs7Ozs7QUFRakUsTUFBTSxPQUFPLGlCQUFrQixTQUFRLG1CQUFvQztJQU12RSxZQUFtQixFQUFjLEVBQVksVUFBcUIsRUFBWSxJQUF1QjtRQUNqRyxLQUFLLENBQUMsRUFBRSxFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQztRQURiLE9BQUUsR0FBRixFQUFFLENBQVk7UUFBWSxlQUFVLEdBQVYsVUFBVSxDQUFXO1FBQVksU0FBSSxHQUFKLElBQUksQ0FBbUI7UUFGckcsV0FBTSxHQUFHLEtBQUssQ0FBQztJQUlmLENBQUM7SUFFRCxJQUFJLFNBQVM7UUFDVCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDO0lBQ2pDLENBQUM7SUFDRCxRQUFRO1FBQ0osS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2pCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQztRQUUvQyxJQUFJLE1BQU0sQ0FBQyxNQUFNLEVBQUU7WUFDZixJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzVCLFFBQVEsQ0FBQyxJQUFJLENBQUM7aUJBQ1QsSUFBSSxDQUNELFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEVBQzNCLEdBQUcsQ0FBQyxHQUFHLEVBQUU7Z0JBQ0wsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUU7b0JBQ2QsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSxDQUFDO2lCQUNqQztZQUNMLENBQUMsQ0FBQyxDQUNMO2lCQUNBLFNBQVMsRUFBRSxDQUFDO1NBQ3BCO1FBQ0QsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7SUFDekIsQ0FBQztJQUVELE9BQU87UUFDSCxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUMvQixDQUFDO0lBRUQsV0FBVyxDQUFDLFdBQXFEO1FBQzdELE1BQU0sWUFBWSxHQUFHLFdBQVcsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1FBQ3RELElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVPLFdBQVcsQ0FBQyxNQUEyQjtRQUMzQyxJQUFJLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQztJQUM3QixDQUFDOzs4R0E1Q1EsaUJBQWlCO2tHQUFqQixpQkFBaUIsdUdBQ2YsaUJBQWlCLHVFQ3ZCaEMseWhFQStDQTsyRkR6QmEsaUJBQWlCO2tCQU43QixTQUFTOytCQUNJLGNBQWMsbUJBR1AsdUJBQXVCLENBQUMsTUFBTTt5SkFHakIsaUJBQWlCO3NCQUE5QyxTQUFTO3VCQUFDLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgICBDb21wb25lbnQsXHJcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICAgIFZpZXdDaGlsZCxcclxuICAgIEVsZW1lbnRSZWYsXHJcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIE9uSW5pdCxcclxuICAgIFJlbmRlcmVyMlxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBpbnRlcnZhbCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyB0YXAsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgQ2Fyb3VzZWxDb21wb25lbnQsIENhcm91c2VsSXRlbUNvbXBvbmVudCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBNZXRhb2JqZWN0RGF0YU1vZGVsIH0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xyXG5pbXBvcnQgeyBCYXNlQnRUaWxlQ29tcG9uZW50LCBOZXdzVGlsZVNldHRpbmcgfSBmcm9tICcuLi9tb2RlbHMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2J0LW5ld3MtdGlsZScsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vbmV3cy10aWxlLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL25ld3MtdGlsZS5jb21wb25lbnQuc2NzcyddLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIE5ld3NUaWxlQ29tcG9uZW50IGV4dGVuZHMgQmFzZUJ0VGlsZUNvbXBvbmVudDxOZXdzVGlsZVNldHRpbmc+IGltcGxlbWVudHMgT25Jbml0IHtcclxuICAgIEBWaWV3Q2hpbGQoQ2Fyb3VzZWxDb21wb25lbnQpIGNhcm91c2VsQ29tcG9uZW50OiBDYXJvdXNlbENvbXBvbmVudDtcclxuICAgIHNsaWRlczogTWV0YW9iamVjdERhdGFNb2RlbFtdO1xyXG4gICAgYWN0aXZlTmV3czogTWV0YW9iamVjdERhdGFNb2RlbDtcclxuICAgIGlzU3RvcCA9IGZhbHNlO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHB1YmxpYyBlbDogRWxlbWVudFJlZiwgcHJvdGVjdGVkIF9yZW5kZXJlcjI6IFJlbmRlcmVyMiwgcHJvdGVjdGVkIF9jZHI6IENoYW5nZURldGVjdG9yUmVmKSB7XHJcbiAgICAgICAgc3VwZXIoZWwsIF9yZW5kZXJlcjIsIF9jZHIpO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCB0d29Db2x1bW4oKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZm9vdGVyLlR3b0NvbHVtbjtcclxuICAgIH1cclxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XHJcbiAgICAgICAgY29uc3Qgc2xpZGVzID0gdGhpcy5zZXR0aW5ncy5SZXBvcnQuTW9EYXRhTGlzdDtcclxuXHJcbiAgICAgICAgaWYgKHNsaWRlcy5sZW5ndGgpIHtcclxuICAgICAgICAgICAgdGhpcy5fdXBkYXRlVGlsZShzbGlkZXNbMF0pO1xyXG4gICAgICAgICAgICBpbnRlcnZhbCg1MDAwKVxyXG4gICAgICAgICAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpLFxyXG4gICAgICAgICAgICAgICAgICAgIHRhcCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghdGhpcy5pc1N0b3ApIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY2Fyb3VzZWxDb21wb25lbnQubmV4dCgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgIClcclxuICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5zbGlkZXMgPSBzbGlkZXM7XHJcbiAgICB9XHJcblxyXG4gICAgdHJpZ2dlcigpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmlzU3RvcCA9ICF0aGlzLmlzU3RvcDtcclxuICAgIH1cclxuXHJcbiAgICBzbGlkZUNoYW5nZShhY3RpdmVTbGlkZTogeyBhY3RpdmVJdGVtczogQ2Fyb3VzZWxJdGVtQ29tcG9uZW50W10gfSk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IGN1cnJlbnRTbGlkZSA9IGFjdGl2ZVNsaWRlLmFjdGl2ZUl0ZW1zWzBdLnZhbHVlO1xyXG4gICAgICAgIHRoaXMuX3VwZGF0ZVRpbGUoY3VycmVudFNsaWRlKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF91cGRhdGVUaWxlKG5ld3NNbzogTWV0YW9iamVjdERhdGFNb2RlbCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuYWN0aXZlTmV3cyA9IG5ld3NNbztcclxuICAgIH1cclxufVxyXG4iLCI8YnQtdGlsZSBbZGF0YV09XCJkYXRhXCIgW3R5cGVdPVwiJ2xhdW5jaCdcIiBbZm9vdGVyVGVtcGxhdGVdPVwibmV3c0Zvb3RlclwiIFtlZGl0SG9tZV09XCJlZGl0SG9tZVwiPlxyXG4gICAgPGRpdiBmZC10aWxlLWNvbnRlbnQgc3R5bGU9XCJhbGlnbi1pdGVtczogY2VudGVyOyBwYWRkaW5nLXRvcDogMXJlbVwiPlxyXG4gICAgICAgIDxzcGFuPlxyXG4gICAgICAgICAgICB7eyBhY3RpdmVOZXdzPy5UZXh0IH19XHJcbiAgICAgICAgPC9zcGFuPlxyXG5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwid3JhcHBlci1jYXJvdXNlbFwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY292ZXJcIj48L2Rpdj5cclxuICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImlzU3RvcDsgZWxzZSBzdG9wXCIgZmQtYnV0dG9uIGZkVHlwZT1cInRyYW5zcGFyZW50XCIgZ2x5cGg9XCJwbGF5XCIgKGNsaWNrKT1cInRyaWdnZXIoKVwiPjwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgI3N0b3A+XHJcbiAgICAgICAgICAgICAgICA8YnV0dG9uIGZkLWJ1dHRvbiBmZFR5cGU9XCJ0cmFuc3BhcmVudFwiIGdseXBoPVwicGF1c2VcIiAoY2xpY2spPVwidHJpZ2dlcigpXCI+PC9idXR0b24+XHJcbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgIDxmZC1jYXJvdXNlbFxyXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJzbGlkZXMgJiYgc2xpZGVzLmxlbmd0aFwiXHJcbiAgICAgICAgICAgICAgICBjYXJvdXNlbEluZGljYXRvcnNPcmllbnRhdGlvbj1cInRvcFwiXHJcbiAgICAgICAgICAgICAgICBbc2xpZGVUcmFuc2l0aW9uRHVyYXRpb25dPVwiMTAwMFwiXHJcbiAgICAgICAgICAgICAgICAoc2xpZGVDaGFuZ2UpPVwic2xpZGVDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICBbbG9vcF09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgIFtuYXZpZ2F0aW9uXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgICAgIHdpZHRoPVwiMTAwJVwiXHJcbiAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDxmZC1jYXJvdXNlbC1pdGVtICpuZ0Zvcj1cImxldCBzbGlkZSBvZiBzbGlkZXNcIiBbdmFsdWVdPVwic2xpZGVcIj5cclxuICAgICAgICAgICAgICAgICAgICA8aW1nXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtzcmNdPVwic2xpZGUuSW1nID8gKHNsaWRlLkltZy5GaWxlSWQgfCBwaWNGaWVsZFNyYzogJ0lEJzpudWxsOnNsaWRlLkltZy5GaWxlSWQ6MzM1OjE3MCkgOiAnJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgICAgIDwvZmQtY2Fyb3VzZWwtaXRlbT5cclxuICAgICAgICAgICAgPC9mZC1jYXJvdXNlbD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG48L2J0LXRpbGU+XHJcblxyXG48IS0tICB0aWxlIGZvb3Rlci0tPlxyXG48bmctdGVtcGxhdGUgI25ld3NGb290ZXI+XHJcbiAgICA8ZGl2IGZkLXRpbGUtZm9vdGVyIFt0d29Db2x1bW5dPVwidHdvQ29sdW1uXCIgKnVudGlsSW5WaWV3PVwiZWxcIj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwidHdvQ29sdW1uOyBlbHNlIG9uZUNvbHVtblwiPlxyXG4gICAgICAgICAgICA8ZGl2IGZkLXRpbGUtc2VjdGlvbj5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGZkLXRpbGUtZm9vdGVyLXRleHQ+e3sgYWN0aXZlTmV3cz8uRm9vdGVyMSB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgZmQtdGlsZS1zZWN0aW9uPlxyXG4gICAgICAgICAgICAgICAgPHNwYW4gZmQtdGlsZS1mb290ZXItdGV4dD57eyBhY3RpdmVOZXdzPy5Gb290ZXIyIH19PC9zcGFuPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8bmctdGVtcGxhdGUgI29uZUNvbHVtbj5cclxuICAgICAgICAgICAgPHNwYW4gZmQtdGlsZS1mb290ZXItdGV4dD57eyBhY3RpdmVOZXdzPy5Gb290ZXIxIH19PC9zcGFuPlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICA8L2Rpdj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuIl19
@@ -108,4 +108,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImpor
108
108
  }], pin: [{
109
109
  type: Input
110
110
  }] } });
111
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGluLXRpbGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2EtdGlsZXMvc3JjL2xpYi9waW4tdGlsZS9waW4tdGlsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS10aWxlcy9zcmMvbGliL3Bpbi10aWxlL3Bpbi10aWxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBR2xGLE9BQU8sRUFBRSxhQUFhLEVBQUUsUUFBUSxFQUF5QyxNQUFNLHNCQUFzQixDQUFDO0FBRXRHLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDOzs7Ozs7Ozs7Ozs7O0FBU3pGLE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxhQUFhO0lBYS9DLFlBQW1CLGNBQTZCLEVBQVMsVUFBcUIsRUFBVSxPQUF5QjtRQUM3RyxLQUFLLEVBQUUsQ0FBQztRQURPLG1CQUFjLEdBQWQsY0FBYyxDQUFlO1FBQVMsZUFBVSxHQUFWLFVBQVUsQ0FBVztRQUFVLFlBQU8sR0FBUCxPQUFPLENBQWtCO1FBTmpILGlCQUFZLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxLQUFLO1lBQ3ZDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDO1lBQ3hFLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUM7UUFNekUsSUFBSSxDQUFDLEdBQUcsR0FBRyxVQUFVLENBQUMs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RSxZQUFZLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7U0FDMUQ7YUFBTSxJQUFJLFlBQVksQ0FBQyxRQUFRLEtBQUssS0FBSyxJQUFJLFlBQVksQ0FBQyxlQUFlLEVBQUU7WUFDeEUsU0FBUztZQUNULGdCQUFnQixDQUFDLElBQUksQ0FBQyxFQUFFLFlBQVksRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztTQUMzRDtRQUNELFlBQVksQ0FBQyxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDekMsSUFBSSxDQUFDLHdCQUF3QixDQUFDLFFBQVEsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1FBQzlELENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUNELE1BQU0sQ0FBQyxNQUFPO1FBQ1YsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDbEMsQ0FBQzs7NkdBdkZRLGdCQUFnQjtpR0FBaEIsZ0JBQWdCLGdLQ2Q3Qiw2Z0VBeUNBOzJGRDNCYSxnQkFBZ0I7a0JBTjVCLFNBQVM7K0JBQ0ksYUFBYSxtQkFHTix1QkFBdUIsQ0FBQyxNQUFNOzJKQUd0QyxHQUFHO3NCQUFYLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFFRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csR0FBRztzQkFBWCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGlhbG9nUmVmLCBEaWFsb2dTZXJ2aWNlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlJztcblxuaW1wb3J0IHsgQmFzZUNvbXBvbmVudCwgQmFyc2FBcGksIE1ldGFvYmplY3REYXRhTW9kZWwsIEJiYlRyYW5zbGF0ZVBpcGUgfSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XG5cbmltcG9ydCB7IENyZWF0ZUFwcEdyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi4vY3JlYXRlLWFwcC1ncm91cC9jcmVhdGUtYXBwLWdyb3VwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBcHBUaWxlR3JvdXBQaW4gfSBmcm9tICcuLi9tb2RlbHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2J0LXBpbi10aWxlJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vcGluLXRpbGUuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3Bpbi10aWxlLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgUGluVGlsZUNvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIEBJbnB1dCgpIGFwcDogTWV0YW9iamVjdERhdGFNb2RlbDtcbiAgICBASW5wdXQoKSBhcHBUaWxlR3JvdXBzOiBNZXRhb2JqZWN0RGF0YU1vZGVsW107XG5cbiAgICBASW5wdXQoKSBtb2JpbGU6IGJvb2xlYW47XG4gICAgQElucHV0KCkgcGluOiBib29sZWFuO1xuICAgIG5ld0dyb3VwRGlhbG9nUmVmOiBEaWFsb2dSZWY7XG4gICAgbmV3R3JvdXBUZXh0ID0gQmFyc2FBcGkuTG9naW5Gb3JtRGF0YS5Jc1J0bFxuICAgICAgICA/IHRoaXMuYmJiUGlwZS50cmFuc2Zvcm0oJ0dyb3VwcycpICsgJyAnICsgdGhpcy5iYmJQaXBlLnRyYW5zZm9ybSgnTmV3JylcbiAgICAgICAgOiB0aGlzLmJiYlBpcGUudHJhbnNmb3JtKCdOZXcnKSArICcgJyArIHRoaXMuYmJiUGlwZS50cmFuc2Zvcm0oJ0dyb3VwcycpO1xuICAgIHBpbm5lZEFwcEluVGlsZUdyb3Vwczoge1xuICAgICAgICBba2V5OiBzdHJpbmddOiBzdHJpbmdbXTtcbiAgICB9O1xuICAgIGNvbnN0cnVjdG9yKHB1YmxpYyBfZGlhbG9nU2VydmljZTogRGlhbG9nU2VydmljZSwgcHVibGljIF9kaWFsb2dSZWY6IERpYWxvZ1JlZiwgcHJpdmF0ZSBiYmJQaXBlOiBCYmJUcmFuc2xhdGVQaXBlKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgICAgIHRoaXMuYXBwID0gX2RpYWxvZ1JlZi5kYXRhLmFwcDtcbiAgICAgICAgdGhpcy5hcHBUaWxlR3JvdXBzID0gX2RpYWxvZ1JlZi5kYXRhLmFwcFRpbGVHcm91cHM7XG4gICAgICAgIHRoaXMucGlubmVkQXBwSW5UaWxlR3JvdXBzID0gX2RpYWxvZ1JlZi5kYXRhLnBpbm5lZEFwcEluVGlsZUdyb3VwcztcbiAgICB9XG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3NldExvYWRpbmcodHJ1ZSk7XG4gICAgICAgIGNvbnN0IHRpbGVHcm91cHNJZCA9IHRoaXMucGlubmVkQXBwSW5UaWxlR3JvdXBzW3RoaXMuYXBwLklkXTtcbiAgICAgICAgdGhpcy5hcHBUaWxlR3JvdXBzLmZvckVhY2goKGFwcEdyb3VwKSA9PiB7XG4gICAgICAgICAgICB0aGlzLl9zZXREZWZhdWx0UGluVGlsZShhcHBHcm91cCwgdGlsZUdyb3Vwc0lkKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuX3NldExvYWRpbmcoZmFsc2UpO1xuICAgIH1cbiAgICBvbkFjY2VwdCgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgYXBwVGlsZUdyb3Vwc1BpbjogQXBwVGlsZUdyb3VwUGluW10gPSBbXTtcbiAgICAgICAgdGhpcy5hcHBUaWxlR3JvdXBzLmZvckVhY2goKGdyb3VwKSA9PiB7XG4gICAgICAgICAgICB0aGlzLl9nZXRDaGFuZ2VkUGluVGlsZUdyb3Vwcyhncm91cCwgYXBwVGlsZUdyb3Vwc1Bpbik7XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLl9jbG9zZSh7IGFwcFRpbGVHcm91cHNQaW4sIGFwcDogdGhpcy5hcHAgfSk7XG4gICAgfVxuXG4gICAgb25DbG9zZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fY2xvc2UoKTtcbiAgICB9XG5cbiAgICBvbk5ld0dyb3VwKCk6IHZvaWQge1xuICAgICAgICB0aGlzLm5ld0dyb3VwRGlhbG9nUmVmID0gdGhpcy5fZGlhbG9nU2VydmljZS5vcGVuKENyZWF0ZUFwcEdyb3VwQ29tcG9uZW50LCB7XG4gICAgICAgICAgICBkYXRhOiB7IHRpdGxlOiB0aGlzLm5ld0dyb3VwVGV4dCB9LFxuICAgICAgICAgICAgdmVydGljYWxQYWRkaW5nOiB0cnVlLFxuICAgICAgICAgICAgbW9iaWxlOiB0aGlzLm1vYmlsZSxcbiAgICAgICAgICAgIHJlc3BvbnNpdmVQYWRkaW5nOiB0cnVlXG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMubmV3R3JvdXBEaWFsb2dSZWYuYWZ0ZXJDbG9zZWQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIC8vIGlmIChyZXN1bHQpIHtcbiAgICAgICAgICAgIC8vICAgdGhpcy5kaWFsb2dSZWYubG9hZGluZyh0cnVlKTtcbiAgICAgICAgICAgIC8vICAgdGhpcy50aWxlc1NlcnZpY2VcbiAgICAgICAgICAgIC8vICAgICAuY3JlYXRlQXBwR3JvdXAocmVzdWx0KVxuICAgICAgICAgICAgLy8gICAgIC5waXBlKFxuICAgICAgICAgICAgLy8gICAgICAgdGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpLFxuICAgICAgICAgICAgLy8gICAgICAgZmluYWxpemUoKCkgPT4ge1xuICAgICAgICAgICAgLy8gICAgICAgICB0aGlzLmRpYWxvZ1JlZi5sb2FkaW5nKGZhbHNlKTtcbiAgICAgICAgICAgIC8vICAgICAgIH0pXG4gICAgICAgICAgICAvLyAgICAgKVxuICAgICAgICAgICAgLy8gICAgIC5zdWJzY3JpYmUoKTtcbiAgICAgICAgICAgIC8vIH1cbiAgICAgICAgfSk7XG4gICAgfVxuICAgIF9zZXRMb2FkaW5nKGxvYWRpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZGlhbG9nUmVmLmxvYWRpbmcobG9hZGluZyk7XG4gICAgfVxuICAgIF9zZXREZWZhdWx0UGluVGlsZShhcHBUaWxlR3JvdXA6IE1ldGFvYmplY3REYXRhTW9kZWwsIHRpbGVHcm91cHNJZDogc3RyaW5nW10pOiB2b2lkIHtcbiAgICAgICAgYXBwVGlsZUdyb3VwLiRQaW5UaWxlID0gYXBwVGlsZUdyb3VwLiREZWZhdWx0UGluVGlsZSA9XG4gICAgICAgICAgICB0aWxlR3JvdXBzSWQuaW5jbHVkZXMoYXBwVGlsZUdyb3VwLklkKSB8fCB0aWxlR3JvdXBzSWQuaW5jbHVkZXMoYXBwVGlsZUdyb3VwLlVzZXJBcHBUaWxlR3JvdXBTZXR0aW5nPy5JZCk7XG4gICAgICAgIGFwcFRpbGVHcm91cC4kQ2hpbGRyZW4/LmZvckVhY2goKHN1Ykdyb3VwKSA9PiB7XG4gICAgICAgICAgICB0aGlzLl9zZXREZWZhdWx0UGluVGlsZShzdWJHcm91cCwgdGlsZUdyb3Vwc0lkKTtcbiAgICAgICAgfSk7XG4gICAgICAgIGFwcFRpbGVHcm91cC4kRGlzYWJsZWRwaW4gPSBmYWxzZTtcbiAgICB9XG4gICAgX2dldENoYW5nZWRQaW5UaWxlR3JvdXBzKGFwcFRpbGVHcm91cDogTWV0YW9iamVjdERhdGFNb2RlbCwgYXBwVGlsZUdyb3Vwc1BpbjogQXBwVGlsZUdyb3VwUGluW10pOiB2b2lkIHtcbiAgICAgICAgaWYgKGFwcFRpbGVHcm91cC4kUGluVGlsZSAmJiAhYXBwVGlsZUdyb3VwLiREZWZhdWx0UGluVGlsZSkge1xuICAgICAgICAgICAgLy8gQWRkXG4gICAgICAgICAgICBhcHBUaWxlR3JvdXBzUGluLnB1c2goeyBhcHBUaWxlR3JvdXAsIHZpc2libGU6IHRydWUgfSk7XG4gICAgICAgIH0gZWxzZSBpZiAoYXBwVGlsZUdyb3VwLiRQaW5UaWxlID09PSBmYWxzZSAmJiBhcHBUaWxlR3JvdXAuJERlZmF1bHRQaW5UaWxlKSB7XG4gICAgICAgICAgICAvLyBSZW1vdmVcbiAgICAgICAgICAgIGFwcFRpbGVHcm91cHNQaW4ucHVzaCh7IGFwcFRpbGVHcm91cCwgdmlzaWJsZTogZmFsc2UgfSk7XG4gICAgICAgIH1cbiAgICAgICAgYXBwVGlsZUdyb3VwLiRDaGlsZHJlbj8uZm9yRWFjaCgoc3ViR3JvdXApID0+IHtcbiAgICAgICAgICAgIHRoaXMuX2dldENoYW5nZWRQaW5UaWxlR3JvdXBzKHN1Ykdyb3VwLCBhcHBUaWxlR3JvdXBzUGluKTtcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIF9jbG9zZShyZXN1bHQ/KTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2RpYWxvZ1JlZi5jbG9zZShyZXN1bHQpO1xuICAgIH1cbn1cbiIsIjxmZC1kaWFsb2c+XHJcbiAgICA8ZmQtZGlhbG9nLWhlYWRlcj5cclxuICAgICAgICA8aDEgZmQtdGl0bGU+e3sgJ0FkZFRvTGlzdCcgfCBiYmJUcmFuc2xhdGUgfX08L2gxPlxyXG4gICAgPC9mZC1kaWFsb2ctaGVhZGVyPlxyXG4gICAgPGZkLWRpYWxvZy1ib2R5PlxyXG4gICAgICAgIDx1bCBmZC1saXN0IFtuYXZpZ2F0aW9uSW5kaWNhdG9yXT1cInRydWVcIiBzdHlsZT1cIm1hcmdpbi1ib3R0b206IDFyZW1cIj5cclxuICAgICAgICAgICAgPGxpIGZkLWxpc3QtaXRlbSBbbmF2aWdhdGlvbkluZGljYXRvcl09XCJ0cnVlXCIgKGNsaWNrKT1cIm9uTmV3R3JvdXAoKVwiPlxyXG4gICAgICAgICAgICAgICAgPGZkLWljb24gZ2x5cGg9XCJhZGRcIj48L2ZkLWljb24+PHNwYW4gZmQtbGlzdC10aXRsZT57eyBuZXdHcm91cFRleHQgfX08L3NwYW4+XHJcbiAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGFwcFRpbGVHcm91cCBvZiBhcHBUaWxlR3JvdXBzXCI+XHJcbiAgICAgICAgICAgICAgICA8bGkgKm5nSWY9XCIhYXBwVGlsZUdyb3VwLiREaXNhYmxlZHBpblwiIGZkLWxpc3QtaXRlbSBbc2VsZWN0ZWRdPVwiYXBwVGlsZUdyb3VwLiRQaW5UaWxlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGZkLWNoZWNrYm94IFsobmdNb2RlbCldPVwiYXBwVGlsZUdyb3VwLiRQaW5UaWxlXCI+PC9mZC1jaGVja2JveD5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBmZC1saXN0LXRpdGxlPnt7IGFwcFRpbGVHcm91cC5uYXZpZ2F0b3JUaXRsZSB8fCBhcHBUaWxlR3JvdXAuVGl0bGUgfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgc3ViR3JvdXAgb2YgYXBwVGlsZUdyb3VwLiRDaGlsZHJlblwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxsaSAqbmdJZj1cIiFzdWJHcm91cC4kRGlzYWJsZWRwaW5cIiBmZC1saXN0LWl0ZW0gW3NlbGVjdGVkXT1cInN1Ykdyb3VwLiRQaW5UaWxlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxmZC1jaGVja2JveCBbKG5nTW9kZWwpXT1cInN1Ykdyb3VwLiRQaW5UaWxlXCI+PC9mZC1jaGVja2JveD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZmQtbGlzdC10aXRsZT57eyBzdWJHcm91cC5uYXZpZ2F0b3JUaXRsZSB8fCBzdWJHcm91cC5UaXRsZSB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDwvdWw+XHJcbiAgICA8L2ZkLWRpYWxvZy1ib2R5PlxyXG5cclxuICAgIDxmZC1kaWFsb2ctZm9vdGVyPlxyXG4gICAgICAgIDxuZy10ZW1wbGF0ZSBmZFRlbXBsYXRlPVwiZm9vdGVyXCI+XHJcbiAgICAgICAgICAgIDxkaXYgZmQtYmFyLWxlZnQ+PC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgZmQtYmFyLXJpZ2h0PlxyXG4gICAgICAgICAgICAgICAgPGZkLWJ1dHRvbi1iYXIgZmQtaW5pdGlhbC1mb2N1cyBmZFR5cGU9XCJlbXBoYXNpemVkXCIgW2xhYmVsXT1cIidPSycgfCBiYmJUcmFuc2xhdGVcIiAoY2xpY2spPVwib25BY2NlcHQoKVwiPlxyXG4gICAgICAgICAgICAgICAgPC9mZC1idXR0b24tYmFyPlxyXG4gICAgICAgICAgICAgICAgPGZkLWJ1dHRvbi1iYXJcclxuICAgICAgICAgICAgICAgICAgICBmZC1pbml0aWFsLWZvY3VzXHJcbiAgICAgICAgICAgICAgICAgICAgZmRUeXBlPVwidHJhbnNwYXJlbnRcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInQ2FuY2VsJyB8IGJiYlRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uQ2xvc2UoKVwiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICA8L2ZkLWJ1dHRvbi1iYXI+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICA8L2ZkLWRpYWxvZy1mb290ZXI+XHJcbjwvZmQtZGlhbG9nPlxyXG4iXX0=
111
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGluLXRpbGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2EtdGlsZXMvc3JjL2xpYi9waW4tdGlsZS9waW4tdGlsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS10aWxlcy9zcmMvbGliL3Bpbi10aWxlL3Bpbi10aWxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBR2xGLE9BQU8sRUFBRSxhQUFhLEVBQUUsUUFBUSxFQUF5QyxNQUFNLHNCQUFzQixDQUFDO0FBRXRHLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDOzs7Ozs7Ozs7Ozs7O0FBU3pGLE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxhQUFhO0lBYS9DLFlBQW1CLGNBQTZCLEVBQVMsVUFBcUIsRUFBVSxPQUF5QjtRQUM3RyxLQUFLLEVBQUUsQ0FBQztRQURPLG1CQUFjLEdBQWQsY0FBYyxDQUFlO1FBQVMsZUFBVSxHQUFWLFVBQVUsQ0FBVztRQUFVLFlBQU8sR0FBUCxPQUFPLENBQWtCO1FBTmpILGlCQUFZLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxLQUFLO1lBQ3ZDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDO1lBQ3hFLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUM7UUFNekUsSUFBSSxDQUFDLEdBQUcsR0FBRyxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQztRQUMvQixJQUFJLENBQUMsYUFBYSxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDO1FBQ25ELElBQUksQ0FBQyxxQkFBcUIsR0FBRyxVQUFVLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDO0lBQ3ZFLENBQUM7SUFDRCxRQUFRO1FBQ0osSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN2QixNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUM3RCxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFO1lBQ3BDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLEVBQUUsWUFBWSxDQUFDLENBQUM7UUFDcEQsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFDRCxRQUFRO1FBQ0osTUFBTSxnQkFBZ0IsR0FBc0IsRUFBRSxDQUFDO1FBQy9DLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDakMsSUFBSSxDQUFDLHdCQUF3QixDQUFDLEtBQUssRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1FBQzNELENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLGdCQUFnQixFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRUQsT0FBTztRQUNILElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUNsQixDQUFDO0lBRUQsVUFBVTtRQUNOLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyx1QkFBdUIsRUFBRTtZQUN2RSxJQUFJLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNsQyxlQUFlLEVBQUUsSUFBSTtZQUNyQixNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07WUFDbkIsaUJBQWlCLEVBQUUsSUFBSTtTQUMxQixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsaUJBQWlCLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDOUMsZ0JBQWdCO1lBQ2hCLGtDQUFrQztZQUNsQyxzQkFBc0I7WUFDdEIsOEJBQThCO1lBQzlCLGFBQWE7WUFDYixxQ0FBcUM7WUFDckMseUJBQXlCO1lBQ3pCLHlDQUF5QztZQUN6QyxXQUFXO1lBQ1gsUUFBUTtZQUNSLG9CQUFvQjtZQUNwQixJQUFJO1FBQ1IsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBQ0QsV0FBVyxDQUFDLE9BQU87UUFDZixJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBQ0Qsa0JBQWtCLENBQUMsWUFBaUMsRUFBRSxZQUFzQjtRQUN4RSxZQUFZLENBQUMsUUFBUSxHQUFHLFlBQVksQ0FBQyxlQUFlO1lBQ2hELFlBQVksQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxJQUFJLFlBQVksQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLHVCQUF1QixFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQzlHLFlBQVksQ0FBQyxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDekMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFFBQVEsRUFBRSxZQUFZLENBQUMsQ0FBQztRQUNwRCxDQUFDLENBQUMsQ0FBQztRQUNILFlBQVksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO0lBQ3RDLENBQUM7SUFDRCx3QkFBd0IsQ0FBQyxZQUFpQyxFQUFFLGdCQUFtQztRQUMzRixJQUFJLFlBQVksQ0FBQyxRQUFRLElBQUksQ0FBQyxZQUFZLENBQUMsZUFBZSxFQUFFO1lBQ3hELE1BQU07WUFDTixnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxZQUFZLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7U0FDMUQ7YUFBTSxJQUFJLFlBQVksQ0FBQyxRQUFRLEtBQUssS0FBSyxJQUFJLFlBQVksQ0FBQyxlQUFlLEVBQUU7WUFDeEUsU0FBUztZQUNULGdCQUFnQixDQUFDLElBQUksQ0FBQyxFQUFFLFlBQVksRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztTQUMzRDtRQUNELFlBQVksQ0FBQyxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDekMsSUFBSSxDQUFDLHdCQUF3QixDQUFDLFFBQVEsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1FBQzlELENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUNELE1BQU0sQ0FBQyxNQUFPO1FBQ1YsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDbEMsQ0FBQzs7NkdBdkZRLGdCQUFnQjtpR0FBaEIsZ0JBQWdCLGdLQ2Q3Qiw2Z0VBeUNBOzJGRDNCYSxnQkFBZ0I7a0JBTjVCLFNBQVM7K0JBQ0ksYUFBYSxtQkFHTix1QkFBdUIsQ0FBQyxNQUFNOzJKQUd0QyxHQUFHO3NCQUFYLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFFRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csR0FBRztzQkFBWCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBEaWFsb2dSZWYsIERpYWxvZ1NlcnZpY2UgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgQmFzZUNvbXBvbmVudCwgQmFyc2FBcGksIE1ldGFvYmplY3REYXRhTW9kZWwsIEJiYlRyYW5zbGF0ZVBpcGUgfSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XHJcblxyXG5pbXBvcnQgeyBDcmVhdGVBcHBHcm91cENvbXBvbmVudCB9IGZyb20gJy4uL2NyZWF0ZS1hcHAtZ3JvdXAvY3JlYXRlLWFwcC1ncm91cC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBcHBUaWxlR3JvdXBQaW4gfSBmcm9tICcuLi9tb2RlbHMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2J0LXBpbi10aWxlJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9waW4tdGlsZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi9waW4tdGlsZS5jb21wb25lbnQuc2NzcyddLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIFBpblRpbGVDb21wb25lbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICAgIEBJbnB1dCgpIGFwcDogTWV0YW9iamVjdERhdGFNb2RlbDtcclxuICAgIEBJbnB1dCgpIGFwcFRpbGVHcm91cHM6IE1ldGFvYmplY3REYXRhTW9kZWxbXTtcclxuXHJcbiAgICBASW5wdXQoKSBtb2JpbGU6IGJvb2xlYW47XHJcbiAgICBASW5wdXQoKSBwaW46IGJvb2xlYW47XHJcbiAgICBuZXdHcm91cERpYWxvZ1JlZjogRGlhbG9nUmVmO1xyXG4gICAgbmV3R3JvdXBUZXh0ID0gQmFyc2FBcGkuTG9naW5Gb3JtRGF0YS5Jc1J0bFxyXG4gICAgICAgID8gdGhpcy5iYmJQaXBlLnRyYW5zZm9ybSgnR3JvdXBzJykgKyAnICcgKyB0aGlzLmJiYlBpcGUudHJhbnNmb3JtKCdOZXcnKVxyXG4gICAgICAgIDogdGhpcy5iYmJQaXBlLnRyYW5zZm9ybSgnTmV3JykgKyAnICcgKyB0aGlzLmJiYlBpcGUudHJhbnNmb3JtKCdHcm91cHMnKTtcclxuICAgIHBpbm5lZEFwcEluVGlsZUdyb3Vwczoge1xyXG4gICAgICAgIFtrZXk6IHN0cmluZ106IHN0cmluZ1tdO1xyXG4gICAgfTtcclxuICAgIGNvbnN0cnVjdG9yKHB1YmxpYyBfZGlhbG9nU2VydmljZTogRGlhbG9nU2VydmljZSwgcHVibGljIF9kaWFsb2dSZWY6IERpYWxvZ1JlZiwgcHJpdmF0ZSBiYmJQaXBlOiBCYmJUcmFuc2xhdGVQaXBlKSB7XHJcbiAgICAgICAgc3VwZXIoKTtcclxuICAgICAgICB0aGlzLmFwcCA9IF9kaWFsb2dSZWYuZGF0YS5hcHA7XHJcbiAgICAgICAgdGhpcy5hcHBUaWxlR3JvdXBzID0gX2RpYWxvZ1JlZi5kYXRhLmFwcFRpbGVHcm91cHM7XHJcbiAgICAgICAgdGhpcy5waW5uZWRBcHBJblRpbGVHcm91cHMgPSBfZGlhbG9nUmVmLmRhdGEucGlubmVkQXBwSW5UaWxlR3JvdXBzO1xyXG4gICAgfVxyXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fc2V0TG9hZGluZyh0cnVlKTtcclxuICAgICAgICBjb25zdCB0aWxlR3JvdXBzSWQgPSB0aGlzLnBpbm5lZEFwcEluVGlsZUdyb3Vwc1t0aGlzLmFwcC5JZF07XHJcbiAgICAgICAgdGhpcy5hcHBUaWxlR3JvdXBzLmZvckVhY2goKGFwcEdyb3VwKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuX3NldERlZmF1bHRQaW5UaWxlKGFwcEdyb3VwLCB0aWxlR3JvdXBzSWQpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHRoaXMuX3NldExvYWRpbmcoZmFsc2UpO1xyXG4gICAgfVxyXG4gICAgb25BY2NlcHQoKTogdm9pZCB7XHJcbiAgICAgICAgY29uc3QgYXBwVGlsZUdyb3Vwc1BpbjogQXBwVGlsZUdyb3VwUGluW10gPSBbXTtcclxuICAgICAgICB0aGlzLmFwcFRpbGVHcm91cHMuZm9yRWFjaCgoZ3JvdXApID0+IHtcclxuICAgICAgICAgICAgdGhpcy5fZ2V0Q2hhbmdlZFBpblRpbGVHcm91cHMoZ3JvdXAsIGFwcFRpbGVHcm91cHNQaW4pO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHRoaXMuX2Nsb3NlKHsgYXBwVGlsZUdyb3Vwc1BpbiwgYXBwOiB0aGlzLmFwcCB9KTtcclxuICAgIH1cclxuXHJcbiAgICBvbkNsb3NlKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX2Nsb3NlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgb25OZXdHcm91cCgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLm5ld0dyb3VwRGlhbG9nUmVmID0gdGhpcy5fZGlhbG9nU2VydmljZS5vcGVuKENyZWF0ZUFwcEdyb3VwQ29tcG9uZW50LCB7XHJcbiAgICAgICAgICAgIGRhdGE6IHsgdGl0bGU6IHRoaXMubmV3R3JvdXBUZXh0IH0sXHJcbiAgICAgICAgICAgIHZlcnRpY2FsUGFkZGluZzogdHJ1ZSxcclxuICAgICAgICAgICAgbW9iaWxlOiB0aGlzLm1vYmlsZSxcclxuICAgICAgICAgICAgcmVzcG9uc2l2ZVBhZGRpbmc6IHRydWVcclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgdGhpcy5uZXdHcm91cERpYWxvZ1JlZi5hZnRlckNsb3NlZC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgICAvLyBpZiAocmVzdWx0KSB7XHJcbiAgICAgICAgICAgIC8vICAgdGhpcy5kaWFsb2dSZWYubG9hZGluZyh0cnVlKTtcclxuICAgICAgICAgICAgLy8gICB0aGlzLnRpbGVzU2VydmljZVxyXG4gICAgICAgICAgICAvLyAgICAgLmNyZWF0ZUFwcEdyb3VwKHJlc3VsdClcclxuICAgICAgICAgICAgLy8gICAgIC5waXBlKFxyXG4gICAgICAgICAgICAvLyAgICAgICB0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCksXHJcbiAgICAgICAgICAgIC8vICAgICAgIGZpbmFsaXplKCgpID0+IHtcclxuICAgICAgICAgICAgLy8gICAgICAgICB0aGlzLmRpYWxvZ1JlZi5sb2FkaW5nKGZhbHNlKTtcclxuICAgICAgICAgICAgLy8gICAgICAgfSlcclxuICAgICAgICAgICAgLy8gICAgIClcclxuICAgICAgICAgICAgLy8gICAgIC5zdWJzY3JpYmUoKTtcclxuICAgICAgICAgICAgLy8gfVxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgX3NldExvYWRpbmcobG9hZGluZyk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX2RpYWxvZ1JlZi5sb2FkaW5nKGxvYWRpbmcpO1xyXG4gICAgfVxyXG4gICAgX3NldERlZmF1bHRQaW5UaWxlKGFwcFRpbGVHcm91cDogTWV0YW9iamVjdERhdGFNb2RlbCwgdGlsZUdyb3Vwc0lkOiBzdHJpbmdbXSk6IHZvaWQge1xyXG4gICAgICAgIGFwcFRpbGVHcm91cC4kUGluVGlsZSA9IGFwcFRpbGVHcm91cC4kRGVmYXVsdFBpblRpbGUgPVxyXG4gICAgICAgICAgICB0aWxlR3JvdXBzSWQuaW5jbHVkZXMoYXBwVGlsZUdyb3VwLklkKSB8fCB0aWxlR3JvdXBzSWQuaW5jbHVkZXMoYXBwVGlsZUdyb3VwLlVzZXJBcHBUaWxlR3JvdXBTZXR0aW5nPy5JZCk7XHJcbiAgICAgICAgYXBwVGlsZUdyb3VwLiRDaGlsZHJlbj8uZm9yRWFjaCgoc3ViR3JvdXApID0+IHtcclxuICAgICAgICAgICAgdGhpcy5fc2V0RGVmYXVsdFBpblRpbGUoc3ViR3JvdXAsIHRpbGVHcm91cHNJZCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgYXBwVGlsZUdyb3VwLiREaXNhYmxlZHBpbiA9IGZhbHNlO1xyXG4gICAgfVxyXG4gICAgX2dldENoYW5nZWRQaW5UaWxlR3JvdXBzKGFwcFRpbGVHcm91cDogTWV0YW9iamVjdERhdGFNb2RlbCwgYXBwVGlsZUdyb3Vwc1BpbjogQXBwVGlsZUdyb3VwUGluW10pOiB2b2lkIHtcclxuICAgICAgICBpZiAoYXBwVGlsZUdyb3VwLiRQaW5UaWxlICYmICFhcHBUaWxlR3JvdXAuJERlZmF1bHRQaW5UaWxlKSB7XHJcbiAgICAgICAgICAgIC8vIEFkZFxyXG4gICAgICAgICAgICBhcHBUaWxlR3JvdXBzUGluLnB1c2goeyBhcHBUaWxlR3JvdXAsIHZpc2libGU6IHRydWUgfSk7XHJcbiAgICAgICAgfSBlbHNlIGlmIChhcHBUaWxlR3JvdXAuJFBpblRpbGUgPT09IGZhbHNlICYmIGFwcFRpbGVHcm91cC4kRGVmYXVsdFBpblRpbGUpIHtcclxuICAgICAgICAgICAgLy8gUmVtb3ZlXHJcbiAgICAgICAgICAgIGFwcFRpbGVHcm91cHNQaW4ucHVzaCh7IGFwcFRpbGVHcm91cCwgdmlzaWJsZTogZmFsc2UgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGFwcFRpbGVHcm91cC4kQ2hpbGRyZW4/LmZvckVhY2goKHN1Ykdyb3VwKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuX2dldENoYW5nZWRQaW5UaWxlR3JvdXBzKHN1Ykdyb3VwLCBhcHBUaWxlR3JvdXBzUGluKTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuICAgIF9jbG9zZShyZXN1bHQ/KTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fZGlhbG9nUmVmLmNsb3NlKHJlc3VsdCk7XHJcbiAgICB9XHJcbn1cclxuIiwiPGZkLWRpYWxvZz5cclxuICAgIDxmZC1kaWFsb2ctaGVhZGVyPlxyXG4gICAgICAgIDxoMSBmZC10aXRsZT57eyAnQWRkVG9MaXN0JyB8IGJiYlRyYW5zbGF0ZSB9fTwvaDE+XHJcbiAgICA8L2ZkLWRpYWxvZy1oZWFkZXI+XHJcbiAgICA8ZmQtZGlhbG9nLWJvZHk+XHJcbiAgICAgICAgPHVsIGZkLWxpc3QgW25hdmlnYXRpb25JbmRpY2F0b3JdPVwidHJ1ZVwiIHN0eWxlPVwibWFyZ2luLWJvdHRvbTogMXJlbVwiPlxyXG4gICAgICAgICAgICA8bGkgZmQtbGlzdC1pdGVtIFtuYXZpZ2F0aW9uSW5kaWNhdG9yXT1cInRydWVcIiAoY2xpY2spPVwib25OZXdHcm91cCgpXCI+XHJcbiAgICAgICAgICAgICAgICA8ZmQtaWNvbiBnbHlwaD1cImFkZFwiPjwvZmQtaWNvbj48c3BhbiBmZC1saXN0LXRpdGxlPnt7IG5ld0dyb3VwVGV4dCB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgYXBwVGlsZUdyb3VwIG9mIGFwcFRpbGVHcm91cHNcIj5cclxuICAgICAgICAgICAgICAgIDxsaSAqbmdJZj1cIiFhcHBUaWxlR3JvdXAuJERpc2FibGVkcGluXCIgZmQtbGlzdC1pdGVtIFtzZWxlY3RlZF09XCJhcHBUaWxlR3JvdXAuJFBpblRpbGVcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZmQtY2hlY2tib3ggWyhuZ01vZGVsKV09XCJhcHBUaWxlR3JvdXAuJFBpblRpbGVcIj48L2ZkLWNoZWNrYm94PlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGZkLWxpc3QtdGl0bGU+e3sgYXBwVGlsZUdyb3VwLm5hdmlnYXRvclRpdGxlIHx8IGFwcFRpbGVHcm91cC5UaXRsZSB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBzdWJHcm91cCBvZiBhcHBUaWxlR3JvdXAuJENoaWxkcmVuXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxpICpuZ0lmPVwiIXN1Ykdyb3VwLiREaXNhYmxlZHBpblwiIGZkLWxpc3QtaXRlbSBbc2VsZWN0ZWRdPVwic3ViR3JvdXAuJFBpblRpbGVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGZkLWNoZWNrYm94IFsobmdNb2RlbCldPVwic3ViR3JvdXAuJFBpblRpbGVcIj48L2ZkLWNoZWNrYm94PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBmZC1saXN0LXRpdGxlPnt7IHN1Ykdyb3VwLm5hdmlnYXRvclRpdGxlIHx8IHN1Ykdyb3VwLlRpdGxlIH19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPC91bD5cclxuICAgIDwvZmQtZGlhbG9nLWJvZHk+XHJcblxyXG4gICAgPGZkLWRpYWxvZy1mb290ZXI+XHJcbiAgICAgICAgPG5nLXRlbXBsYXRlIGZkVGVtcGxhdGU9XCJmb290ZXJcIj5cclxuICAgICAgICAgICAgPGRpdiBmZC1iYXItbGVmdD48L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBmZC1iYXItcmlnaHQ+XHJcbiAgICAgICAgICAgICAgICA8ZmQtYnV0dG9uLWJhciBmZC1pbml0aWFsLWZvY3VzIGZkVHlwZT1cImVtcGhhc2l6ZWRcIiBbbGFiZWxdPVwiJ09LJyB8IGJiYlRyYW5zbGF0ZVwiIChjbGljayk9XCJvbkFjY2VwdCgpXCI+XHJcbiAgICAgICAgICAgICAgICA8L2ZkLWJ1dHRvbi1iYXI+XHJcbiAgICAgICAgICAgICAgICA8ZmQtYnV0dG9uLWJhclxyXG4gICAgICAgICAgICAgICAgICAgIGZkLWluaXRpYWwtZm9jdXNcclxuICAgICAgICAgICAgICAgICAgICBmZFR5cGU9XCJ0cmFuc3BhcmVudFwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIidDYW5jZWwnIHwgYmJiVHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25DbG9zZSgpXCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDwvZmQtYnV0dG9uLWJhcj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgIDwvZmQtZGlhbG9nLWZvb3Rlcj5cclxuPC9mZC1kaWFsb2c+XHJcbiJdfQ==
@@ -87,7 +87,8 @@ export class ShellbarComponent extends BaseComponent {
87
87
  this.cultures = BarsaApi.LoginFormData.Cultures;
88
88
  this.cssUrl$ = this._portalService.cssUrl$;
89
89
  this.cssCustomUrl$ = this._portalService.cssCustomUrl$;
90
- this.notificationsCount$ = this._portalService.notificationsCount$.pipe();
90
+ this.notificationsCount$ = this._portalService.notificationsCount$;
91
+ this.notificationLoading$ = this._portalService.notificationLoading$;
91
92
  this.notifications$ = this._portalService.notifications$;
92
93
  BarsaApi.Bw.SetUserPortalSettings = (userPortalSettings) => {
93
94
  this._portalService.setUserPortalSettings(userPortalSettings);
@@ -139,16 +140,19 @@ export class ShellbarComponent extends BaseComponent {
139
140
  }
140
141
  });
141
142
  }
143
+ onRemoveNotifiation(mo) {
144
+ this._portalService.removeNotification(mo);
145
+ }
142
146
  _changeCulture(culture /* culture sample :English */) {
143
147
  BarsaApi.Bw.SetCultureByDisplayName(culture);
144
148
  BarsaApi.Bw.NavigateTo('/');
145
149
  }
146
150
  }
147
151
  ShellbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: ShellbarComponent, deps: [{ token: i1.PortalService }, { token: i1.BreadcrumbService }, { token: i2.TilesService }, { token: i0.ChangeDetectorRef }, { token: i1.BbbTranslatePipe }, { token: APP_VERSION }], target: i0.ɵɵFactoryTarget.Component });
148
- ShellbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: ShellbarComponent, selector: "bt-shellbar", viewQueries: [{ propertyName: "comboboxComponent", first: true, predicate: ComboboxComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<link *ngIf=\"cssUrl$ | async as cssUrl\" type=\"text/css\" rel=\"stylesheet\" [href]=\"cssUrl\" />\n<link *ngIf=\"cssCustomUrl$ | async as cssCustomUrl\" type=\"text/css\" rel=\"stylesheet\" [href]=\"cssCustomUrl\" />\n\n<fd-shellbar *ngIf=\"(userLoggedIn$ | async) || allowAnonymous\" [size]=\"deviceSize\">\n <fd-shellbar-logo *ngIf=\"logo\">\n <a\n [style.backgroundImage]=\"'url(' + (logo?.FileId | picFieldSrc: 'GetPictureFromFileInfo':null) + ')'\"\n href=\"/\"\n class=\"fd-shellbar__logo fd-shellbar__logo--image-replaced\"\n aria-label=\"Barsa Novin Ray\"\n ></a>\n </fd-shellbar-logo>\n\n <fd-product-menu\n *ngIf=\"!settings?.HideProductMenu && productMenuItems1 && productMenuItems1.length > 0\"\n [control]=\"productMenuControl\"\n [closePopoverOnSelect]=\"true\"\n [items]=\"productMenuItems1\"\n >\n </fd-product-menu>\n\n <fd-shellbar-subtitle> {{ subtitle | bbbTranslate }}{{ showVersion ? appVersion : '' }} </fd-shellbar-subtitle>\n <fd-shellbar-actions\n *ngIf=\"user && (userMenu?.length || !settings?.HideLanguage)\"\n [user]=\"user\"\n [userMenu]=\"userMenu\"\n #langRef\n >\n <fd-shellbar-action\n *ngFor=\"let action of actions\"\n [glyph]=\"action.Icon\"\n [callback]=\"action.Callback\"\n [label]=\"action.Label\"\n >\n </fd-shellbar-action>\n\n <fd-popover\n [(isOpen)]=\"isOpenNotificatoin\"\n [triggers]=\"[]\"\n [focusTrapped]=\"true\"\n [closeOnOutsideClick]=\"true\"\n [noArrow]=\"false\"\n placement=\"bottom\"\n title=\"Notification Popover\"\n [focusAutoCapture]=\"true\"\n >\n <fd-popover-control>\n <fd-shellbar-action\n [glyph]=\"'bell'\"\n [label]=\"'Notification'\"\n [notificationCount]=\"(notificationsCount$ | async)!!\"\n [notificationLabel]=\"'Notification Label'\"\n [callback]=\"onOpenNotification\"\n >\n </fd-shellbar-action>\n </fd-popover-control>\n <fd-popover-body>\n <fd-notification\n *ngFor=\"let mo of notifications$ | async; let first = first; let last = last\"\n style=\"margin-bottom: 1px\"\n [style.border-bottom-left-radius]=\"!last ? 0 : null\"\n [style.border-bottom-right-radius]=\"!last ? 0 : null\"\n [style.border-top-right-radius]=\"!first ? 0 : null\"\n [style.border-top-left-radius]=\"!first ? 0 : null\"\n >\n <fd-notification-body>\n <fd-avatar\n [circle]=\"true\"\n size=\"xs\"\n [glyph]=\"mo.Icon ? mo.Icon : 'bell'\"\n [image]=\"mo.Picture ? mo.Picture : null\"\n ></fd-avatar>\n <fd-notification-content style=\"min-width: 200px; overflow: hidden\">\n <fd-notification-header>\n <div fd-notification-indicator [type]=\"mo.Type\"></div>\n <h2 fd-notification-title [unread]=\"true\">{{ mo.Title }}</h2>\n </fd-notification-header>\n <p fd-notification-paragraph>\n {{ mo.Paragraph }}\n </p>\n <fd-notification-footer>\n <span fd-notification-footer-content>{{ mo.FirstFooterContent }}</span>\n <span fd-notification-separator></span>\n <span fd-notification-footer-content>{{ mo.SecondFooterContent }}</span>\n </fd-notification-footer>\n </fd-notification-content>\n <fd-notification-actions>\n <button\n *ngIf=\"mo.RelatedMo\"\n fd-button\n (click)=\"onNotificationRelatedClick(mo.RelatedMo, mo.NamaRelatedMo)\"\n [label]=\"'View' | bbbTranslate\"\n fdCompact\n ></button>\n <button\n fd-button\n fdType=\"transparent\"\n ariaLabel=\"Close\"\n glyph=\"decline\"\n title=\"close\"\n (click)=\"isOpenNotificatoin = false\"\n fdCompact\n ></button>\n </fd-notification-actions>\n </fd-notification-body>\n </fd-notification>\n </fd-popover-body>\n </fd-popover>\n\n <fd-shellbar-action\n *ngIf=\"!settings?.HideLanguage && deviceSize !== 's'\"\n [glyph]=\"'world'\"\n [label]=\"'language'\"\n [fdMenuTrigger]=\"menu\"\n (callback)=\"(onLanguage)\"\n >\n </fd-shellbar-action>\n <ng-container *ngIf=\"!settings?.HideLanguage && deviceSize === 's'\">\n <fd-shellbar-action\n *ngFor=\"let culture of cultures | keyvalue\"\n [label]=\"culture.value\"\n [callback]=\"onLanguage\"\n >\n </fd-shellbar-action>\n </ng-container>\n\n <fd-product-switch *ngIf=\"productSwitcher.length > 0\">\n <fd-product-switch-body [products]=\"productSwitcher\" [forceListMode]=\"deviceSize === 's'\">\n </fd-product-switch-body>\n </fd-product-switch>\n <!-- <fd-combobox\n [(ngModel)]=\"searchTerm\"\n [dropdownValues]=\"searchTerms\"\n [placeholder]=\"('EnterSearchCriteria' | bbbTranslate) + ' ...'\"\n [compact]=\"true\"\n >\n </fd-combobox> -->\n </fd-shellbar-actions>\n</fd-shellbar>\n<ng-template #loading>\n <bsu-mask></bsu-mask>\n</ng-template>\n\n<fd-menu #menu>\n <ul fd-list>\n <li fd-list-item *ngFor=\"let culture of cultures | keyvalue\">\n <a fd-list-link (click)=\"onCultureChange(culture.value)\">\n <span fd-list-title>{{ culture.value }} </span>\n </a>\n </li>\n </ul>\n</fd-menu>\n", styles: [":host{display:block}:host ::ng-deep fd-shellbar-actions fd-avatar{background-color:transparent!important;color:var(--sapShell_InteractiveTextColor, #d1e8ff)}:host ::ng-deep fd-combobox .fd-input-group input{min-width:2rem;height:1.625rem;margin-top:.1875rem;margin-bottom:.1875rem;padding:0 .5rem;box-sizing:border-box}:host ::ng-deep fd-combobox .fd-input-group span{min-width:2rem;min-height:1.625rem}:host ::ng-deep .fd-shellbar__subtitle{font-size:1rem}:host ::ng-deep .fd-shellbar--s .fd-shellbar__subtitle{display:block;font-size:.8rem}@media (max-width: 480px){.fd-shellbar__logo{min-height:1.5rem;height:1.5rem;width:1.5rem}}@media (min-width: 480px){.fd-shellbar__logo{min-height:3rem;height:3rem;width:3rem}}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.ContentDensityDirective, selector: "[fdContentDensity]:not([fdCompact]):not([fdCondensed]):not([fdCozy]), [fdCompact]:not([fdContentDensity]):not([fdCondensed]):not([fdCozy]), [fdCondensed]:not([fdContentDensity]):not([fdCompact]):not([fdCozy]), [fdCozy]:not([fdContentDensity]):not([fdCompact]):not([fdCondensed])", inputs: ["fdContentDensity", "fdCompact", "fdCondensed", "fdCozy"], exportAs: ["fdContentDensity"] }, { kind: "component", type: i5.AvatarComponent, selector: "fd-avatar", inputs: ["class", "id", "ariaLabel", "ariaLabelledby", "label", "size", "glyph", "zoomGlyph", "circle", "transparent", "contain", "placeholder", "tile", "border", "colorAccent", "random", "clickable", "backgroundImage", "image", "alterIcon", "backupImage"], outputs: ["avatarClicked", "zoomGlyphClicked"] }, { kind: "component", type: i6.ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i7.ListComponent, selector: "[fd-list], [fdList]", inputs: ["dropdownMode", "multiInputMode", "mobileMode", "hasMessage", "noBorder", "navigationIndicator", "selection", "keyboardSupport", "byline"], outputs: ["focusEscapeList"] }, { kind: "component", type: i7.ListItemComponent, selector: "[fdListItem] ,[fd-list-item]", inputs: ["selected", "ariaDescribedBy", "noData", "action", "interactive", "growing", "counter", "unread", "selectedListItemScreenReaderText", "navigatedListItemScreenReaderText", "navigatableListItemScreenReaderText"], outputs: ["keyDown"] }, { kind: "directive", type: i7.ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap"] }, { kind: "directive", type: i7.ListLinkDirective, selector: "[fd-list-link], [fdListLink]", inputs: ["navigationIndicator", "navigated"] }, { kind: "component", type: i8.MenuComponent, selector: "fd-menu", inputs: ["mobile", "disabled", "focusTrapped", "openOnHoverTime", "mobileConfig", "ariaLabel", "ariaLabelledby", "id"], outputs: ["activePath"] }, { kind: "directive", type: i8.MenuTriggerDirective, selector: "[fdMenuTrigger]", inputs: ["fdMenuTrigger"] }, { kind: "component", type: i9.NotificationComponent, selector: "fd-notification", inputs: ["width", "mobile"] }, { kind: "component", type: i9.NotificationHeaderComponent, selector: "fd-notification-header", inputs: ["uniqueId"] }, { kind: "component", type: i9.NotificationFooterComponent, selector: "fd-notification-footer" }, { kind: "component", type: i9.NotificationBodyComponent, selector: "fd-notification-body" }, { kind: "component", type: i9.NotificationActionsComponent, selector: "fd-notification-actions" }, { kind: "component", type: i9.NotificationContentComponent, selector: "fd-notification-content" }, { kind: "directive", type: i9.NotificationTitleDirective, selector: "[fdNotificationTitle], [fd-notification-title]", inputs: ["unread"] }, { kind: "directive", type: i9.NotificationIndicatorDirective, selector: "[fdNotificationIndicator], [fd-notification-indicator]", inputs: ["type", "class"] }, { kind: "directive", type: i9.NotificationParagraphDirective, selector: "[fdNotificationParagraph], [fd-notification-paragraph]" }, { kind: "directive", type: i9.NotificationFooterContentDirective, selector: "[fdNotificationFooterContent], [fd-notification-footer-content]" }, { kind: "directive", type: i9.NotificationSeparatorDirective, selector: "[fdNotificationSeparator], [fd-notification-separator]" }, { kind: "component", type: i10.ProductSwitchComponent, selector: "fd-product-switch", inputs: ["placement", "ariaLabel", "disabled"] }, { kind: "component", type: i10.ProductSwitchBodyComponent, selector: "fd-product-switch-body", inputs: ["dragAndDropEnabled", "products", "forceListMode"], outputs: ["productsChange", "itemClicked"] }, { kind: "component", type: i11.PopoverControlComponent, selector: "fd-popover-control" }, { kind: "component", type: i11.PopoverBodyComponent, selector: "fd-popover-body" }, { kind: "component", type: i11.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig"] }, { kind: "component", type: i12.ShellbarComponent, selector: "fd-shellbar", inputs: ["size", "sideNav"] }, { kind: "component", type: i12.ProductMenuComponent, selector: "fd-product-menu", inputs: ["closeOnEscapeKey", "closeOnOutsideClick", "triggers", "placement", "disabled", "fillControlMode", "control", "items", "closePopoverOnSelect"] }, { kind: "component", type: i12.ShellbarSubtitleComponent, selector: "fd-shellbar-subtitle" }, { kind: "component", type: i12.ShellbarActionsComponent, selector: "fd-shellbar-actions", inputs: ["user", "userMenu", "closePopoverOnSelect", "collapsedItemMenuLabel"] }, { kind: "component", type: i12.ShellbarActionComponent, selector: "fd-shellbar-action", inputs: ["glyph", "callback", "label", "notificationLabel", "notificationCount"] }, { kind: "component", type: i12.ShellbarLogoComponent, selector: "fd-shellbar-logo" }, { kind: "component", type: i13.MaskComponent, selector: "bsu-mask", inputs: ["size", "marginTop"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.KeyValuePipe, name: "keyvalue" }, { kind: "pipe", type: i1.PictureFieldSourcePipe, name: "picFieldSrc" }, { kind: "pipe", type: i1.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
152
+ ShellbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: ShellbarComponent, selector: "bt-shellbar", viewQueries: [{ propertyName: "comboboxComponent", first: true, predicate: ComboboxComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<link *ngIf=\"cssUrl$ | async as cssUrl\" type=\"text/css\" rel=\"stylesheet\" [href]=\"cssUrl\" />\n<link *ngIf=\"cssCustomUrl$ | async as cssCustomUrl\" type=\"text/css\" rel=\"stylesheet\" [href]=\"cssCustomUrl\" />\n\n<fd-shellbar *ngIf=\"(userLoggedIn$ | async) || allowAnonymous\" [size]=\"deviceSize\">\n <fd-shellbar-logo *ngIf=\"logo\">\n <a\n [style.backgroundImage]=\"'url(' + (logo?.FileId | picFieldSrc: 'GetPictureFromFileInfo':null) + ')'\"\n href=\"/\"\n class=\"fd-shellbar__logo fd-shellbar__logo--image-replaced\"\n aria-label=\"Barsa Novin Ray\"\n ></a>\n </fd-shellbar-logo>\n\n <fd-product-menu\n *ngIf=\"!settings?.HideProductMenu && productMenuItems1 && productMenuItems1.length > 0\"\n [control]=\"productMenuControl\"\n [closePopoverOnSelect]=\"true\"\n [items]=\"productMenuItems1\"\n >\n </fd-product-menu>\n\n <fd-shellbar-subtitle> {{ subtitle | bbbTranslate }}{{ showVersion ? appVersion : '' }} </fd-shellbar-subtitle>\n <fd-shellbar-actions\n *ngIf=\"user && (userMenu?.length || !settings?.HideLanguage)\"\n [user]=\"user\"\n [userMenu]=\"userMenu\"\n #langRef\n >\n <fd-shellbar-action\n *ngFor=\"let action of actions\"\n [glyph]=\"action.Icon\"\n [callback]=\"action.Callback\"\n [label]=\"action.Label\"\n >\n </fd-shellbar-action>\n\n <fd-popover\n [(isOpen)]=\"isOpenNotificatoin\"\n [triggers]=\"[]\"\n [focusTrapped]=\"true\"\n [closeOnOutsideClick]=\"true\"\n [noArrow]=\"false\"\n placement=\"bottom\"\n title=\"Notification Popover\"\n [focusAutoCapture]=\"true\"\n >\n <fd-popover-control>\n <fd-shellbar-action\n [glyph]=\"'bell'\"\n [label]=\"'Notification'\"\n [notificationCount]=\"(notificationsCount$ | async)!!\"\n [notificationLabel]=\"'Notification Label'\"\n [callback]=\"onOpenNotification\"\n >\n </fd-shellbar-action>\n </fd-popover-control>\n <fd-popover-body style=\"max-height: 400px; overflow-x: auto\">\n <div style=\"position: relative\">\n <bsu-mask *ngIf=\"notificationLoading$ | async\" size=\"s\"></bsu-mask>\n <fd-notification\n *ngFor=\"let mo of notifications$ | async; let first = first; let last = last\"\n style=\"margin-bottom: 1px\"\n [style.border-bottom-left-radius]=\"!last ? 0 : null\"\n [style.border-bottom-right-radius]=\"!last ? 0 : null\"\n [style.border-top-right-radius]=\"!first ? 0 : null\"\n [style.border-top-left-radius]=\"!first ? 0 : null\"\n >\n <fd-notification-body>\n <fd-avatar\n [circle]=\"true\"\n size=\"xs\"\n [glyph]=\"mo.Icon ? mo.Icon : 'bell'\"\n [image]=\"mo.Picture ? mo.Picture : null\"\n ></fd-avatar>\n <fd-notification-content style=\"min-width: 320px; overflow: hidden\">\n <fd-notification-header>\n <div fd-notification-indicator [type]=\"mo.Type\"></div>\n <h2 fd-notification-title [unread]=\"true\">{{ mo.Title }}</h2>\n </fd-notification-header>\n <p fd-notification-paragraph>\n {{ mo.Paragraph }}\n </p>\n <fd-notification-footer>\n <span fd-notification-footer-content>{{ mo.FirstFooterContent }}</span>\n <span fd-notification-separator></span>\n <span fd-notification-footer-content>{{ mo.SecondFooterContent }}</span>\n </fd-notification-footer>\n </fd-notification-content>\n <fd-notification-actions>\n <button\n *ngIf=\"mo.RelatedMo\"\n fd-button\n (click)=\"onNotificationRelatedClick(mo.RelatedMo, mo.NamaRelatedMo)\"\n [label]=\"'View' | bbbTranslate\"\n fdCompact\n ></button>\n <button\n fd-button\n fdType=\"transparent\"\n ariaLabel=\"Close\"\n glyph=\"decline\"\n title=\"close\"\n (click)=\"onRemoveNotifiation(mo)\"\n fdCompact\n ></button>\n </fd-notification-actions>\n </fd-notification-body>\n </fd-notification>\n </div>\n </fd-popover-body>\n </fd-popover>\n\n <fd-shellbar-action\n *ngIf=\"!settings?.HideLanguage && deviceSize !== 's'\"\n [glyph]=\"'world'\"\n [label]=\"'language'\"\n [fdMenuTrigger]=\"menu\"\n (callback)=\"(onLanguage)\"\n >\n </fd-shellbar-action>\n <ng-container *ngIf=\"!settings?.HideLanguage && deviceSize === 's'\">\n <fd-shellbar-action\n *ngFor=\"let culture of cultures | keyvalue\"\n [label]=\"culture.value\"\n [callback]=\"onLanguage\"\n >\n </fd-shellbar-action>\n </ng-container>\n\n <fd-product-switch *ngIf=\"productSwitcher.length > 0\">\n <fd-product-switch-body [products]=\"productSwitcher\" [forceListMode]=\"deviceSize === 's'\">\n </fd-product-switch-body>\n </fd-product-switch>\n <!-- <fd-combobox\n [(ngModel)]=\"searchTerm\"\n [dropdownValues]=\"searchTerms\"\n [placeholder]=\"('EnterSearchCriteria' | bbbTranslate) + ' ...'\"\n [compact]=\"true\"\n >\n </fd-combobox> -->\n </fd-shellbar-actions>\n</fd-shellbar>\n<ng-template #loading>\n <bsu-mask></bsu-mask>\n</ng-template>\n\n<fd-menu #menu>\n <ul fd-list>\n <li fd-list-item *ngFor=\"let culture of cultures | keyvalue\">\n <a fd-list-link (click)=\"onCultureChange(culture.value)\">\n <span fd-list-title>{{ culture.value }} </span>\n </a>\n </li>\n </ul>\n</fd-menu>\n", styles: [":host{display:block}:host ::ng-deep fd-shellbar-actions fd-avatar{background-color:transparent!important;color:var(--sapShell_InteractiveTextColor, #d1e8ff)}:host ::ng-deep fd-combobox .fd-input-group input{min-width:2rem;height:1.625rem;margin-top:.1875rem;margin-bottom:.1875rem;padding:0 .5rem;box-sizing:border-box}:host ::ng-deep fd-combobox .fd-input-group span{min-width:2rem;min-height:1.625rem}:host ::ng-deep .fd-shellbar__subtitle{font-size:1rem}:host ::ng-deep .fd-shellbar--s .fd-shellbar__subtitle{display:block}.fd-shellbar__logo{min-height:3rem;height:3rem;width:3rem}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.ContentDensityDirective, selector: "[fdContentDensity]:not([fdCompact]):not([fdCondensed]):not([fdCozy]), [fdCompact]:not([fdContentDensity]):not([fdCondensed]):not([fdCozy]), [fdCondensed]:not([fdContentDensity]):not([fdCompact]):not([fdCozy]), [fdCozy]:not([fdContentDensity]):not([fdCompact]):not([fdCondensed])", inputs: ["fdContentDensity", "fdCompact", "fdCondensed", "fdCozy"], exportAs: ["fdContentDensity"] }, { kind: "component", type: i5.AvatarComponent, selector: "fd-avatar", inputs: ["class", "id", "ariaLabel", "ariaLabelledby", "label", "size", "glyph", "zoomGlyph", "circle", "transparent", "contain", "placeholder", "tile", "border", "colorAccent", "random", "clickable", "backgroundImage", "image", "alterIcon", "backupImage"], outputs: ["avatarClicked", "zoomGlyphClicked"] }, { kind: "component", type: i6.ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i7.ListComponent, selector: "[fd-list], [fdList]", inputs: ["dropdownMode", "multiInputMode", "mobileMode", "hasMessage", "noBorder", "navigationIndicator", "selection", "keyboardSupport", "byline"], outputs: ["focusEscapeList"] }, { kind: "component", type: i7.ListItemComponent, selector: "[fdListItem] ,[fd-list-item]", inputs: ["selected", "ariaDescribedBy", "noData", "action", "interactive", "growing", "counter", "unread", "selectedListItemScreenReaderText", "navigatedListItemScreenReaderText", "navigatableListItemScreenReaderText"], outputs: ["keyDown"] }, { kind: "directive", type: i7.ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap"] }, { kind: "directive", type: i7.ListLinkDirective, selector: "[fd-list-link], [fdListLink]", inputs: ["navigationIndicator", "navigated"] }, { kind: "component", type: i8.MenuComponent, selector: "fd-menu", inputs: ["mobile", "disabled", "focusTrapped", "openOnHoverTime", "mobileConfig", "ariaLabel", "ariaLabelledby", "id"], outputs: ["activePath"] }, { kind: "directive", type: i8.MenuTriggerDirective, selector: "[fdMenuTrigger]", inputs: ["fdMenuTrigger"] }, { kind: "component", type: i9.NotificationComponent, selector: "fd-notification", inputs: ["width", "mobile"] }, { kind: "component", type: i9.NotificationHeaderComponent, selector: "fd-notification-header", inputs: ["uniqueId"] }, { kind: "component", type: i9.NotificationFooterComponent, selector: "fd-notification-footer" }, { kind: "component", type: i9.NotificationBodyComponent, selector: "fd-notification-body" }, { kind: "component", type: i9.NotificationActionsComponent, selector: "fd-notification-actions" }, { kind: "component", type: i9.NotificationContentComponent, selector: "fd-notification-content" }, { kind: "directive", type: i9.NotificationTitleDirective, selector: "[fdNotificationTitle], [fd-notification-title]", inputs: ["unread"] }, { kind: "directive", type: i9.NotificationIndicatorDirective, selector: "[fdNotificationIndicator], [fd-notification-indicator]", inputs: ["type", "class"] }, { kind: "directive", type: i9.NotificationParagraphDirective, selector: "[fdNotificationParagraph], [fd-notification-paragraph]" }, { kind: "directive", type: i9.NotificationFooterContentDirective, selector: "[fdNotificationFooterContent], [fd-notification-footer-content]" }, { kind: "directive", type: i9.NotificationSeparatorDirective, selector: "[fdNotificationSeparator], [fd-notification-separator]" }, { kind: "component", type: i10.ProductSwitchComponent, selector: "fd-product-switch", inputs: ["placement", "ariaLabel", "disabled"] }, { kind: "component", type: i10.ProductSwitchBodyComponent, selector: "fd-product-switch-body", inputs: ["dragAndDropEnabled", "products", "forceListMode"], outputs: ["productsChange", "itemClicked"] }, { kind: "component", type: i11.PopoverControlComponent, selector: "fd-popover-control" }, { kind: "component", type: i11.PopoverBodyComponent, selector: "fd-popover-body" }, { kind: "component", type: i11.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig"] }, { kind: "component", type: i12.ShellbarComponent, selector: "fd-shellbar", inputs: ["size", "sideNav"] }, { kind: "component", type: i12.ProductMenuComponent, selector: "fd-product-menu", inputs: ["closeOnEscapeKey", "closeOnOutsideClick", "triggers", "placement", "disabled", "fillControlMode", "control", "items", "closePopoverOnSelect"] }, { kind: "component", type: i12.ShellbarSubtitleComponent, selector: "fd-shellbar-subtitle" }, { kind: "component", type: i12.ShellbarActionsComponent, selector: "fd-shellbar-actions", inputs: ["user", "userMenu", "closePopoverOnSelect", "collapsedItemMenuLabel"] }, { kind: "component", type: i12.ShellbarActionComponent, selector: "fd-shellbar-action", inputs: ["glyph", "callback", "label", "notificationLabel", "notificationCount"] }, { kind: "component", type: i12.ShellbarLogoComponent, selector: "fd-shellbar-logo" }, { kind: "component", type: i13.MaskComponent, selector: "bsu-mask", inputs: ["size", "marginTop"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i3.KeyValuePipe, name: "keyvalue" }, { kind: "pipe", type: i1.PictureFieldSourcePipe, name: "picFieldSrc" }, { kind: "pipe", type: i1.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
149
153
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: ShellbarComponent, decorators: [{
150
154
  type: Component,
151
- args: [{ selector: 'bt-shellbar', changeDetection: ChangeDetectionStrategy.OnPush, template: "<link *ngIf=\"cssUrl$ | async as cssUrl\" type=\"text/css\" rel=\"stylesheet\" [href]=\"cssUrl\" />\n<link *ngIf=\"cssCustomUrl$ | async as cssCustomUrl\" type=\"text/css\" rel=\"stylesheet\" [href]=\"cssCustomUrl\" />\n\n<fd-shellbar *ngIf=\"(userLoggedIn$ | async) || allowAnonymous\" [size]=\"deviceSize\">\n <fd-shellbar-logo *ngIf=\"logo\">\n <a\n [style.backgroundImage]=\"'url(' + (logo?.FileId | picFieldSrc: 'GetPictureFromFileInfo':null) + ')'\"\n href=\"/\"\n class=\"fd-shellbar__logo fd-shellbar__logo--image-replaced\"\n aria-label=\"Barsa Novin Ray\"\n ></a>\n </fd-shellbar-logo>\n\n <fd-product-menu\n *ngIf=\"!settings?.HideProductMenu && productMenuItems1 && productMenuItems1.length > 0\"\n [control]=\"productMenuControl\"\n [closePopoverOnSelect]=\"true\"\n [items]=\"productMenuItems1\"\n >\n </fd-product-menu>\n\n <fd-shellbar-subtitle> {{ subtitle | bbbTranslate }}{{ showVersion ? appVersion : '' }} </fd-shellbar-subtitle>\n <fd-shellbar-actions\n *ngIf=\"user && (userMenu?.length || !settings?.HideLanguage)\"\n [user]=\"user\"\n [userMenu]=\"userMenu\"\n #langRef\n >\n <fd-shellbar-action\n *ngFor=\"let action of actions\"\n [glyph]=\"action.Icon\"\n [callback]=\"action.Callback\"\n [label]=\"action.Label\"\n >\n </fd-shellbar-action>\n\n <fd-popover\n [(isOpen)]=\"isOpenNotificatoin\"\n [triggers]=\"[]\"\n [focusTrapped]=\"true\"\n [closeOnOutsideClick]=\"true\"\n [noArrow]=\"false\"\n placement=\"bottom\"\n title=\"Notification Popover\"\n [focusAutoCapture]=\"true\"\n >\n <fd-popover-control>\n <fd-shellbar-action\n [glyph]=\"'bell'\"\n [label]=\"'Notification'\"\n [notificationCount]=\"(notificationsCount$ | async)!!\"\n [notificationLabel]=\"'Notification Label'\"\n [callback]=\"onOpenNotification\"\n >\n </fd-shellbar-action>\n </fd-popover-control>\n <fd-popover-body>\n <fd-notification\n *ngFor=\"let mo of notifications$ | async; let first = first; let last = last\"\n style=\"margin-bottom: 1px\"\n [style.border-bottom-left-radius]=\"!last ? 0 : null\"\n [style.border-bottom-right-radius]=\"!last ? 0 : null\"\n [style.border-top-right-radius]=\"!first ? 0 : null\"\n [style.border-top-left-radius]=\"!first ? 0 : null\"\n >\n <fd-notification-body>\n <fd-avatar\n [circle]=\"true\"\n size=\"xs\"\n [glyph]=\"mo.Icon ? mo.Icon : 'bell'\"\n [image]=\"mo.Picture ? mo.Picture : null\"\n ></fd-avatar>\n <fd-notification-content style=\"min-width: 200px; overflow: hidden\">\n <fd-notification-header>\n <div fd-notification-indicator [type]=\"mo.Type\"></div>\n <h2 fd-notification-title [unread]=\"true\">{{ mo.Title }}</h2>\n </fd-notification-header>\n <p fd-notification-paragraph>\n {{ mo.Paragraph }}\n </p>\n <fd-notification-footer>\n <span fd-notification-footer-content>{{ mo.FirstFooterContent }}</span>\n <span fd-notification-separator></span>\n <span fd-notification-footer-content>{{ mo.SecondFooterContent }}</span>\n </fd-notification-footer>\n </fd-notification-content>\n <fd-notification-actions>\n <button\n *ngIf=\"mo.RelatedMo\"\n fd-button\n (click)=\"onNotificationRelatedClick(mo.RelatedMo, mo.NamaRelatedMo)\"\n [label]=\"'View' | bbbTranslate\"\n fdCompact\n ></button>\n <button\n fd-button\n fdType=\"transparent\"\n ariaLabel=\"Close\"\n glyph=\"decline\"\n title=\"close\"\n (click)=\"isOpenNotificatoin = false\"\n fdCompact\n ></button>\n </fd-notification-actions>\n </fd-notification-body>\n </fd-notification>\n </fd-popover-body>\n </fd-popover>\n\n <fd-shellbar-action\n *ngIf=\"!settings?.HideLanguage && deviceSize !== 's'\"\n [glyph]=\"'world'\"\n [label]=\"'language'\"\n [fdMenuTrigger]=\"menu\"\n (callback)=\"(onLanguage)\"\n >\n </fd-shellbar-action>\n <ng-container *ngIf=\"!settings?.HideLanguage && deviceSize === 's'\">\n <fd-shellbar-action\n *ngFor=\"let culture of cultures | keyvalue\"\n [label]=\"culture.value\"\n [callback]=\"onLanguage\"\n >\n </fd-shellbar-action>\n </ng-container>\n\n <fd-product-switch *ngIf=\"productSwitcher.length > 0\">\n <fd-product-switch-body [products]=\"productSwitcher\" [forceListMode]=\"deviceSize === 's'\">\n </fd-product-switch-body>\n </fd-product-switch>\n <!-- <fd-combobox\n [(ngModel)]=\"searchTerm\"\n [dropdownValues]=\"searchTerms\"\n [placeholder]=\"('EnterSearchCriteria' | bbbTranslate) + ' ...'\"\n [compact]=\"true\"\n >\n </fd-combobox> -->\n </fd-shellbar-actions>\n</fd-shellbar>\n<ng-template #loading>\n <bsu-mask></bsu-mask>\n</ng-template>\n\n<fd-menu #menu>\n <ul fd-list>\n <li fd-list-item *ngFor=\"let culture of cultures | keyvalue\">\n <a fd-list-link (click)=\"onCultureChange(culture.value)\">\n <span fd-list-title>{{ culture.value }} </span>\n </a>\n </li>\n </ul>\n</fd-menu>\n", styles: [":host{display:block}:host ::ng-deep fd-shellbar-actions fd-avatar{background-color:transparent!important;color:var(--sapShell_InteractiveTextColor, #d1e8ff)}:host ::ng-deep fd-combobox .fd-input-group input{min-width:2rem;height:1.625rem;margin-top:.1875rem;margin-bottom:.1875rem;padding:0 .5rem;box-sizing:border-box}:host ::ng-deep fd-combobox .fd-input-group span{min-width:2rem;min-height:1.625rem}:host ::ng-deep .fd-shellbar__subtitle{font-size:1rem}:host ::ng-deep .fd-shellbar--s .fd-shellbar__subtitle{display:block;font-size:.8rem}@media (max-width: 480px){.fd-shellbar__logo{min-height:1.5rem;height:1.5rem;width:1.5rem}}@media (min-width: 480px){.fd-shellbar__logo{min-height:3rem;height:3rem;width:3rem}}\n"] }]
155
+ args: [{ selector: 'bt-shellbar', changeDetection: ChangeDetectionStrategy.OnPush, template: "<link *ngIf=\"cssUrl$ | async as cssUrl\" type=\"text/css\" rel=\"stylesheet\" [href]=\"cssUrl\" />\n<link *ngIf=\"cssCustomUrl$ | async as cssCustomUrl\" type=\"text/css\" rel=\"stylesheet\" [href]=\"cssCustomUrl\" />\n\n<fd-shellbar *ngIf=\"(userLoggedIn$ | async) || allowAnonymous\" [size]=\"deviceSize\">\n <fd-shellbar-logo *ngIf=\"logo\">\n <a\n [style.backgroundImage]=\"'url(' + (logo?.FileId | picFieldSrc: 'GetPictureFromFileInfo':null) + ')'\"\n href=\"/\"\n class=\"fd-shellbar__logo fd-shellbar__logo--image-replaced\"\n aria-label=\"Barsa Novin Ray\"\n ></a>\n </fd-shellbar-logo>\n\n <fd-product-menu\n *ngIf=\"!settings?.HideProductMenu && productMenuItems1 && productMenuItems1.length > 0\"\n [control]=\"productMenuControl\"\n [closePopoverOnSelect]=\"true\"\n [items]=\"productMenuItems1\"\n >\n </fd-product-menu>\n\n <fd-shellbar-subtitle> {{ subtitle | bbbTranslate }}{{ showVersion ? appVersion : '' }} </fd-shellbar-subtitle>\n <fd-shellbar-actions\n *ngIf=\"user && (userMenu?.length || !settings?.HideLanguage)\"\n [user]=\"user\"\n [userMenu]=\"userMenu\"\n #langRef\n >\n <fd-shellbar-action\n *ngFor=\"let action of actions\"\n [glyph]=\"action.Icon\"\n [callback]=\"action.Callback\"\n [label]=\"action.Label\"\n >\n </fd-shellbar-action>\n\n <fd-popover\n [(isOpen)]=\"isOpenNotificatoin\"\n [triggers]=\"[]\"\n [focusTrapped]=\"true\"\n [closeOnOutsideClick]=\"true\"\n [noArrow]=\"false\"\n placement=\"bottom\"\n title=\"Notification Popover\"\n [focusAutoCapture]=\"true\"\n >\n <fd-popover-control>\n <fd-shellbar-action\n [glyph]=\"'bell'\"\n [label]=\"'Notification'\"\n [notificationCount]=\"(notificationsCount$ | async)!!\"\n [notificationLabel]=\"'Notification Label'\"\n [callback]=\"onOpenNotification\"\n >\n </fd-shellbar-action>\n </fd-popover-control>\n <fd-popover-body style=\"max-height: 400px; overflow-x: auto\">\n <div style=\"position: relative\">\n <bsu-mask *ngIf=\"notificationLoading$ | async\" size=\"s\"></bsu-mask>\n <fd-notification\n *ngFor=\"let mo of notifications$ | async; let first = first; let last = last\"\n style=\"margin-bottom: 1px\"\n [style.border-bottom-left-radius]=\"!last ? 0 : null\"\n [style.border-bottom-right-radius]=\"!last ? 0 : null\"\n [style.border-top-right-radius]=\"!first ? 0 : null\"\n [style.border-top-left-radius]=\"!first ? 0 : null\"\n >\n <fd-notification-body>\n <fd-avatar\n [circle]=\"true\"\n size=\"xs\"\n [glyph]=\"mo.Icon ? mo.Icon : 'bell'\"\n [image]=\"mo.Picture ? mo.Picture : null\"\n ></fd-avatar>\n <fd-notification-content style=\"min-width: 320px; overflow: hidden\">\n <fd-notification-header>\n <div fd-notification-indicator [type]=\"mo.Type\"></div>\n <h2 fd-notification-title [unread]=\"true\">{{ mo.Title }}</h2>\n </fd-notification-header>\n <p fd-notification-paragraph>\n {{ mo.Paragraph }}\n </p>\n <fd-notification-footer>\n <span fd-notification-footer-content>{{ mo.FirstFooterContent }}</span>\n <span fd-notification-separator></span>\n <span fd-notification-footer-content>{{ mo.SecondFooterContent }}</span>\n </fd-notification-footer>\n </fd-notification-content>\n <fd-notification-actions>\n <button\n *ngIf=\"mo.RelatedMo\"\n fd-button\n (click)=\"onNotificationRelatedClick(mo.RelatedMo, mo.NamaRelatedMo)\"\n [label]=\"'View' | bbbTranslate\"\n fdCompact\n ></button>\n <button\n fd-button\n fdType=\"transparent\"\n ariaLabel=\"Close\"\n glyph=\"decline\"\n title=\"close\"\n (click)=\"onRemoveNotifiation(mo)\"\n fdCompact\n ></button>\n </fd-notification-actions>\n </fd-notification-body>\n </fd-notification>\n </div>\n </fd-popover-body>\n </fd-popover>\n\n <fd-shellbar-action\n *ngIf=\"!settings?.HideLanguage && deviceSize !== 's'\"\n [glyph]=\"'world'\"\n [label]=\"'language'\"\n [fdMenuTrigger]=\"menu\"\n (callback)=\"(onLanguage)\"\n >\n </fd-shellbar-action>\n <ng-container *ngIf=\"!settings?.HideLanguage && deviceSize === 's'\">\n <fd-shellbar-action\n *ngFor=\"let culture of cultures | keyvalue\"\n [label]=\"culture.value\"\n [callback]=\"onLanguage\"\n >\n </fd-shellbar-action>\n </ng-container>\n\n <fd-product-switch *ngIf=\"productSwitcher.length > 0\">\n <fd-product-switch-body [products]=\"productSwitcher\" [forceListMode]=\"deviceSize === 's'\">\n </fd-product-switch-body>\n </fd-product-switch>\n <!-- <fd-combobox\n [(ngModel)]=\"searchTerm\"\n [dropdownValues]=\"searchTerms\"\n [placeholder]=\"('EnterSearchCriteria' | bbbTranslate) + ' ...'\"\n [compact]=\"true\"\n >\n </fd-combobox> -->\n </fd-shellbar-actions>\n</fd-shellbar>\n<ng-template #loading>\n <bsu-mask></bsu-mask>\n</ng-template>\n\n<fd-menu #menu>\n <ul fd-list>\n <li fd-list-item *ngFor=\"let culture of cultures | keyvalue\">\n <a fd-list-link (click)=\"onCultureChange(culture.value)\">\n <span fd-list-title>{{ culture.value }} </span>\n </a>\n </li>\n </ul>\n</fd-menu>\n", styles: [":host{display:block}:host ::ng-deep fd-shellbar-actions fd-avatar{background-color:transparent!important;color:var(--sapShell_InteractiveTextColor, #d1e8ff)}:host ::ng-deep fd-combobox .fd-input-group input{min-width:2rem;height:1.625rem;margin-top:.1875rem;margin-bottom:.1875rem;padding:0 .5rem;box-sizing:border-box}:host ::ng-deep fd-combobox .fd-input-group span{min-width:2rem;min-height:1.625rem}:host ::ng-deep .fd-shellbar__subtitle{font-size:1rem}:host ::ng-deep .fd-shellbar--s .fd-shellbar__subtitle{display:block}.fd-shellbar__logo{min-height:3rem;height:3rem;width:3rem}\n"] }]
152
156
  }], ctorParameters: function () { return [{ type: i1.PortalService }, { type: i1.BreadcrumbService }, { type: i2.TilesService }, { type: i0.ChangeDetectorRef }, { type: i1.BbbTranslatePipe }, { type: undefined, decorators: [{
153
157
  type: Inject,
154
158
  args: [APP_VERSION]
@@ -156,4 +160,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImpor
156
160
  type: ViewChild,
157
161
  args: [ComboboxComponent]
158
162
  }] } });
159
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hlbGxiYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2EtdGlsZXMvc3JjL2xpYi9zaGVsbGJhci9zaGVsbGJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS10aWxlcy9zcmMvbGliL3NoZWxsYmFyL3NoZWxsYmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBcUIsU0FBUyxFQUFFLE1BQU0sRUFBVSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakgsT0FBTyxFQUFFLFFBQVEsRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDaEQsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsaUJBQWlCLEVBQXFELE1BQU0sdUJBQXVCLENBQUM7QUFFN0csT0FBTyxFQUNILGFBQWEsRUFDYixRQUFRLEVBTVIsV0FBVyxFQUVkLE1BQU0sc0JBQXNCLENBQUM7Ozs7Ozs7Ozs7Ozs7OztBQW9COUIsTUFBTSxPQUFPLGlCQUFrQixTQUFRLGFBQWE7SUF1QmhELFlBQ1ksY0FBNkIsRUFDN0Isa0JBQXFDLEVBQ3JDLGFBQTJCLEVBQzNCLElBQXVCLEVBQ3ZCLGlCQUFtQyxFQUNmLFVBQWtCO1FBRTlDLEtBQUssRUFBRSxDQUFDO1FBUEEsbUJBQWMsR0FBZCxjQUFjLENBQWU7UUFDN0IsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFtQjtRQUNyQyxrQkFBYSxHQUFiLGFBQWEsQ0FBYztRQUMzQixTQUFJLEdBQUosSUFBSSxDQUFtQjtRQUN2QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQWtCO1FBQ2YsZUFBVSxHQUFWLFVBQVUsQ0FBUTtRQXpCbEQsdUJBQWtCLEdBQUcsS0FBSyxDQUFDO1FBQzNCLGVBQVUsR0FBMkIs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QztZQUNsQixFQUFFLEVBQUUsRUFBRTtZQUNOLFNBQVMsRUFBRTtnQkFDUCxRQUFRLEVBQUUsSUFBSTthQUNqQjtTQUNKLENBQUMsQ0FBQztJQUNQLENBQUM7SUFTTyxjQUFjLENBQUMsT0FBZSxDQUFDLDZCQUE2QjtRQUNoRSxRQUFRLENBQUMsRUFBRSxDQUFDLHVCQUF1QixDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzdDLFFBQVEsQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2hDLENBQUM7OzhHQW5KUSxpQkFBaUIsNktBNkJkLFdBQVc7a0dBN0JkLGlCQUFpQixzR0FDZixpQkFBaUIsdUVDcENoQyx3bU5Bd0pBOzJGRHJIYSxpQkFBaUI7a0JBTjdCLFNBQVM7K0JBQ0ksYUFBYSxtQkFHTix1QkFBdUIsQ0FBQyxNQUFNOzswQkErQjFDLE1BQU07MkJBQUMsV0FBVzs0Q0E1Qk8saUJBQWlCO3NCQUE5QyxTQUFTO3VCQUFDLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBJbmplY3QsIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBmb3JrSm9pbiwgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQ29tYm9ib3hDb21wb25lbnQsIFByb2R1Y3RTd2l0Y2hJdGVtLCBTaGVsbGJhck1lbnVJdGVtLCBTaGVsbGJhclVzZXIgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUnO1xuXG5pbXBvcnQge1xuICAgIEJhc2VDb21wb25lbnQsXG4gICAgQmFyc2FBcGksXG4gICAgTWV0YW9iamVjdERhdGFNb2RlbCxcbiAgICBGaWxlUGljdHVyZUluZm9Nb2RlbCxcbiAgICBNb0ZvclJlcG9ydE1vZGVsLFxuICAgIFBvcnRhbFNlcnZpY2UsXG4gICAgQnJlYWRjcnVtYlNlcnZpY2UsXG4gICAgQVBQX1ZFUlNJT04sXG4gICAgQmJiVHJhbnNsYXRlUGlwZVxufSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XG5cbmltcG9ydCB7IFRpbGVzU2VydmljZSB9IGZyb20gJy4uL3RpbGVzLnNlcnZpY2UnO1xuXG5pbnRlcmZhY2UgU2hlbGxiYXJTZXR0aW5nIGV4dGVuZHMgTWV0YW9iamVjdERhdGFNb2RlbCB7XG4gICAgc3VidGl0bGU6IHN0cmluZztcbiAgICBjYWxjU3VidGl0bGU6IHN0cmluZztcbiAgICBsb2dvOiBGaWxlUGljdHVyZUluZm9Nb2RlbDtcbiAgICBQcm9kdWN0U3dpdGNoSXRlbXM6IE1vRm9yUmVwb3J0TW9kZWw7XG4gICAgUHJvZHVjdE1lbnVJdGVtczogTW9Gb3JSZXBvcnRNb2RlbDtcbiAgICBVc2VyTWVudUl0ZW1zOiBNb0ZvclJlcG9ydE1vZGVsO1xuICAgIEFjdGlvbkl0ZW1zOiBNb0ZvclJlcG9ydE1vZGVsO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2J0LXNoZWxsYmFyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vc2hlbGxiYXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3NoZWxsYmFyLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgU2hlbGxiYXJDb21wb25lbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBAVmlld0NoaWxkKENvbWJvYm94Q29tcG9uZW50KSBjb21ib2JveENvbXBvbmVudDogQ29tYm9ib3hDb21wb25lbnQ7XG4gICAgc2hlbGxiYXJEYXRhOiBTaGVsbGJhclNldHRpbmc7XG4gICAgc2V0dGluZ3M6IE1ldGFvYmplY3REYXRhTW9kZWw7XG4gICAgaXNPcGVuTm90aWZpY2F0b2luID0gZmFsc2U7XG4gICAgZGV2aWNlU2l6ZTogJ3MnIHwgJ20nIHwgJ2wnIHwgJ3hsJyA9ICd4bCc7XG4gICAgcHJvZHVjdE1lbnVDb250cm9sOiBzdHJpbmc7XG4gICAgdXNlcjogU2hlbGxiYXJVc2VyID0ge1xuICAgICAgICBpbml0aWFsczogJ1dXJyxcbiAgICAgICAgY29sb3JBY2NlbnQ6IDFcbiAgICB9O1xuICAgIHNlYXJjaFRlcm1zID0gWyfZhdix2K7YtduMJywgJ9mF2KfZhdmI2LHbjNiqJywgJ9iq24zaqdiqJywgJ9m+2LHZiNqY2YcnXTtcbiAgICBzZWFyY2hUZXJtOiBzdHJpbmc7XG4gICAgYWN0aW9ucyQ6IE9ic2VydmFibGU8U2hlbGxiYXJNZW51SXRlbVtdPjtcbiAgICBwcm9kdWN0TWVudUl0ZW1zMTogU2hlbGxiYXJNZW51SXRlbVtdO1xuICAgIHVzZXJMb2dnZWRJbiQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gICAgY3NzVXJsJDogYW55O1xuICAgIGNzc0N1c3RvbVVybCQ6IGFueTtcbiAgICBhbGxvd0Fub255bW91cyA9IHRydWU7XG4gICAgc2hvd1ZlcnNpb24gPSBmYWxzZTtcbiAgICBjdWx0dXJlczogUmVjb3JkPHN0cmluZywgYW55PjtcbiAgICBub3RpZmljYXRpb25zQ291bnQkOiBPYnNlcnZhYmxlPG51bWJlcj47XG4gICAgbm90aWZpY2F0aW9ucyQ6IE9ic2VydmFibGU8TWV0YW9iamVjdERhdGFNb2RlbFtdPjtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBfcG9ydGFsU2VydmljZTogUG9ydGFsU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBfYnJlYWRDcnVtYlNlcnZpY2U6IEJyZWFkY3J1bWJTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIF90aWxlc1NlcnZpY2U6IFRpbGVzU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBfY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgcHJpdmF0ZSBfYmJiVHJhbnNsYXRlUGlwZTogQmJiVHJhbnNsYXRlUGlwZSxcbiAgICAgICAgQEluamVjdChBUFBfVkVSU0lPTikgcHVibGljIGFwcFZlcnNpb246IHN0cmluZ1xuICAgICkge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICB0aGlzLnVzZXJMb2dnZWRJbiQgPSB0aGlzLl9wb3J0YWxTZXJ2aWNlLnVzZXJMb2dnZWRJbiQ7XG4gICAgICAgIHRoaXMuc2hvd1ZlcnNpb24gPSAhQmFyc2FBcGkuTG9naW5Gb3JtRGF0YS5Jc1NlcnZpY2VEZXNrO1xuICAgIH1cbiAgICBnZXQgc3VidGl0bGUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2hlbGxiYXJEYXRhPy5TdWJ0aXRsZVxuICAgICAgICAgICAgPyBgJHt0aGlzLnNoZWxsYmFyRGF0YT8uU3VidGl0bGV9ICR7XG4gICAgICAgICAgICAgICAgICB0eXBlb2YgdGhpcy5zaGVsbGJhckRhdGE/LkNhbGNTdWJ0aXRsZSA9PT0gJ3N0cmluZycgPyB0aGlzLnNoZWxsYmFyRGF0YS5DYWxjU3VidGl0bGUgOiAnJ1xuICAgICAgICAgICAgICB9YFxuICAgICAgICAgICAgOiAnJztcbiAgICB9XG4gICAgZ2V0IGxvZ28oKTogeyBGaWxlSWQ6IHN0cmluZyB9IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2hlbGxiYXJEYXRhPy5Mb2dvO1xuICAgIH1cbiAgICBnZXQgYWN0aW9ucygpOiBBcnJheTxNZXRhb2JqZWN0RGF0YU1vZGVsPiB7XG4gICAgICAgIHJldHVybiB0aGlzLnNldHRpbmdzPy5IaWRlVXNlck1lbnUgPyBbXSA6IHRoaXMuc2hlbGxiYXJEYXRhPy5BY3Rpb25JdGVtcz8uTW9EYXRhTGlzdCA/PyBbXTtcbiAgICB9XG4gICAgZ2V0IHVzZXJNZW51KCk6IHsgdGV4dDogc3RyaW5nOyBjYWxsYmFjazogKCkgPT4gdm9pZCB9W10ge1xuICAgICAgICBjb25zdCBtb0RhdGFMaXN0ID0gQmFyc2FBcGkuQ29tbW9uLlV0aWwuVHJ5R2V0VmFsdWUodGhpcy5zaGVsbGJhckRhdGEsICdVc2VyTWVudUl0ZW1zLk1vRGF0YUxpc3QnKTtcbiAgICAgICAgY29uc3QgaXRlbXMgPSBtb0RhdGFMaXN0ID8gWy4uLm1vRGF0YUxpc3RdIDogW107XG4gICAgICAgIGlmICghaXRlbXMubGVuZ3RoKSB7XG4gICAgICAgICAgICByZXR1cm4gW107XG4gICAgICAgIH1cbiAgICAgICAgaXRlbXMuZm9yRWFjaCgoYykgPT4ge1xuICAgICAgICAgICAgYy50ZXh0ID0gdGhpcy5fYmJiVHJhbnNsYXRlUGlwZS50cmFuc2Zvcm0oYy50ZXh0KTtcbiAgICAgICAgICAgIGMuY2FsbGJhY2sgPSBuZXcgRnVuY3Rpb24oYy5Db2RlICsgdGhpcy5ib2R5Q2xpY2spO1xuICAgICAgICB9KTtcbiAgICAgICAgaWYgKCFCYXJzYUFwaS5Mb2dpbkZvcm1EYXRhLklzQW5vbnltb3VzICYmIEJhcnNhQXBpLkxvZ2luRm9ybURhdGEuSXNVc2VyTG9nZ2VkSW4pIHtcbiAgICAgICAgICAgIGl0ZW1zLnNwbGljZSgwLCAwLCB7IElkOiAnLTEnLCAkQ2FwdGlvbjogJycsIHRleHQ6IEJhcnNhQXBpLkxvZ2luRm9ybURhdGEuVXNlckRpc3BsYXlOYW1lIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLnNldHRpbmdzPy5IaWRlVXNlck1lbnUgPyBbXSA6IChpdGVtcyBhcyBhbnkpO1xuICAgIH1cbiAgICBnZXQgcHJvZHVjdFN3aXRjaGVyKCk6IFByb2R1Y3RTd2l0Y2hJdGVtW10ge1xuICAgICAgICByZXR1cm4gdGhpcy5zaGVsbGJhckRhdGE/LlByb2R1Y3RTd2l0Y2hJdGVtPy5Nb0RhdGFMaXN0ID8/IChbXSBhcyB1bmtub3duIGFzIFByb2R1Y3RTd2l0Y2hJdGVtW10pO1xuICAgIH1cbiAgICBnZXQgcHJvZHVjdE1lbnVJdGVtcygpOiBTaGVsbGJhck1lbnVJdGVtW10ge1xuICAgICAgICBjb25zdCBpdGVtcyA9IHRoaXMuc2hlbGxiYXJEYXRhPy5Qcm9kdWN0TWVudUl0ZW1zPy5Nb0RhdGFMaXN0ID8/IFtdO1xuICAgICAgICBpdGVtcy5mb3JFYWNoKChjKSA9PiAoYy5jYWxsYmFjayA9IG5ldyBGdW5jdGlvbihjLkNvZGUgKyB0aGlzLmJvZHlDbGljaykpKTtcbiAgICAgICAgcmV0dXJuIGl0ZW1zIGFzIHVua25vd24gYXMgU2hlbGxiYXJNZW51SXRlbVtdO1xuICAgIH1cbiAgICBnZXQgYm9keUNsaWNrKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiAnOyQoXCJib2R5XCIpLmNsaWNrKCknO1xuICAgIH1cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICAgICAgdGhpcy5jdWx0dXJlcyA9IEJhcnNhQXBpLkxvZ2luRm9ybURhdGEuQ3VsdHVyZXM7XG4gICAgICAgIHRoaXMuY3NzVXJsJCA9IHRoaXMuX3BvcnRhbFNlcnZpY2UuY3NzVXJsJDtcbiAgICAgICAgdGhpcy5jc3NDdXN0b21VcmwkID0gdGhpcy5fcG9ydGFsU2VydmljZS5jc3NDdXN0b21VcmwkO1xuICAgICAgICB0aGlzLm5vdGlmaWNhdGlvbnNDb3VudCQgPSB0aGlzLl9wb3J0YWxTZXJ2aWNlLm5vdGlmaWNhdGlvbnNDb3VudCQucGlwZSgpO1xuICAgICAgICB0aGlzLm5vdGlmaWNhdGlvbnMkID0gdGhpcy5fcG9ydGFsU2VydmljZS5ub3RpZmljYXRpb25zJDtcbiAgICAgICAgQmFyc2FBcGkuQncuU2V0VXNlclBvcnRhbFNldHRpbmdzID0gKHVzZXJQb3J0YWxTZXR0aW5nczogTWV0YW9iamVjdERhdGFNb2RlbCk6IHZvaWQgPT4ge1xuICAgICAgICAgICAgdGhpcy5fcG9ydGFsU2VydmljZS5zZXRVc2VyUG9ydGFsU2V0dGluZ3ModXNlclBvcnRhbFNldHRpbmdzKTtcbiAgICAgICAgfTtcbiAgICAgICAgQmFyc2FBcGkuQncuU2V0U2hlbGxiYXJTdWJ0aXRsZSA9IChjYWxjU3VidGl0bGU6IHN0cmluZyk6IHZvaWQgPT4ge1xuICAgICAgICAgICAgdGhpcy5zaGVsbGJhckRhdGEuY2FsY1N1YnRpdGxlID0gY2FsY1N1YnRpdGxlO1xuICAgICAgICAgICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgfTtcbiAgICAgICAgdGhpcy5fcG9ydGFsU2VydmljZS5kZXZpY2VTaXplJC5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKChjKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmRldmljZVNpemUgPSBjO1xuICAgICAgICAgICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5fYnJlYWRDcnVtYlNlcnZpY2UuYnJlYWRjcnVtYnMkLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKGJyZWFkQ3J1bWJzKSA9PiB7XG4gICAgICAgICAgICBpZiAoYnJlYWRDcnVtYnMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgIHRoaXMucHJvZHVjdE1lbnVDb250cm9sID0gYnJlYWRDcnVtYnNbYnJlYWRDcnVtYnMubGVuZ3RoIC0gMV0ubGFiZWw7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLl9jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLl90aWxlc1NlcnZpY2Uuc2hlbGxiYXIkLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKG1vKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnNoZWxsYmFyRGF0YSA9IG1vIGFzIFNoZWxsYmFyU2V0dGluZztcbiAgICAgICAgICAgIC8vIHRoaXMuX2Nkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgICAgICBmb3JrSm9pbihbb2YodGhpcy5wcm9kdWN0TWVudUl0ZW1zKSwgb2YoW10pXSkgLy8gdG8gYXBwZW5kIHVzZXIgZGVmaW5lZFxuICAgICAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCksXG4gICAgICAgICAgICAgICAgICAgIG1hcCgoW3MxLCBzMl0pID0+IFsuLi5zMSwgLi4uczJdKVxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKChjKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucHJvZHVjdE1lbnVJdGVtczEgPSBjO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICAgICAgaWYgKHRoaXMuYWxsb3dBbm9ueW1vdXMpIHtcbiAgICAgICAgICAgIHRoaXMuX3RpbGVzU2VydmljZS5sb2FkU2hlbGxiYXIoKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl9wb3J0YWxTZXJ2aWNlLnVzZXJMb2dnZWRJbiQucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCkpLnN1YnNjcmliZSgobG9nZ2VkSW4pID0+IHtcbiAgICAgICAgICAgIGlmICghbG9nZ2VkSW4pIHtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLl90aWxlc1NlcnZpY2UubG9hZFNoZWxsYmFyKCk7XG4gICAgICAgICAgICB0aGlzLl9wb3J0YWxTZXJ2aWNlLmxvYWROb3RpZmljYXRpb25zKCk7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBvbkN1bHR1cmVDaGFuZ2UoY3VsdHVyZSk6IHZvaWQge1xuICAgICAgICB0aGlzLl9jaGFuZ2VDdWx0dXJlKGN1bHR1cmUpO1xuICAgIH1cbiAgICBvbk5vdGlmaWNhdGlvblJlbGF0ZWRDbGljayhtbzogTWV0YW9iamVjdERhdGFNb2RlbCwgbmFtYTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaXNPcGVuTm90aWZpY2F0b2luID0gZmFsc2U7XG4gICAgICAgIEJhcnNhQXBpLkJ3LkZvcm0uU2hvdyh7XG4gICAgICAgICAgICBNbzogbW8sXG4gICAgICAgICAgICBNb0NvbnRleHQ6IHtcbiAgICAgICAgICAgICAgICBWaWV3TmFtZTogbmFtYVxuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG4gICAgb25PcGVuTm90aWZpY2F0aW9uID0gKCk6IHZvaWQgPT4ge1xuICAgICAgICB0aGlzLmlzT3Blbk5vdGlmaWNhdG9pbiA9IHRydWU7XG4gICAgfTtcbiAgICBvbkxhbmd1YWdlID0gKGUpOiB2b2lkID0+IHtcbiAgICAgICAgY29uc3QgY3VsdHVyZSA9IGUuY3VycmVudFRhcmdldC50ZXh0Q29udGVudC50cmltKCk7XG4gICAgICAgIHRoaXMuX2NoYW5nZUN1bHR1cmUoY3VsdHVyZSk7XG4gICAgfTtcblxuICAgIHByaXZhdGUgX2NoYW5nZUN1bHR1cmUoY3VsdHVyZTogc3RyaW5nIC8qIGN1bHR1cmUgc2FtcGxlIDpFbmdsaXNoICovKTogdm9pZCB7XG4gICAgICAgIEJhcnNhQXBpLkJ3LlNldEN1bHR1cmVCeURpc3BsYXlOYW1lKGN1bHR1cmUpO1xuICAgICAgICBCYXJzYUFwaS5Cdy5OYXZpZ2F0ZVRvKCcvJyk7XG4gICAgfVxufVxuIiwiPGxpbmsgKm5nSWY9XCJjc3NVcmwkIHwgYXN5bmMgYXMgY3NzVXJsXCIgdHlwZT1cInRleHQvY3NzXCIgcmVsPVwic3R5bGVzaGVldFwiIFtocmVmXT1cImNzc1VybFwiIC8+XG48bGluayAqbmdJZj1cImNzc0N1c3RvbVVybCQgfCBhc3luYyBhcyBjc3NDdXN0b21VcmxcIiB0eXBlPVwidGV4dC9jc3NcIiByZWw9XCJzdHlsZXNoZWV0XCIgW2hyZWZdPVwiY3NzQ3VzdG9tVXJsXCIgLz5cblxuPGZkLXNoZWxsYmFyICpuZ0lmPVwiKHVzZXJMb2dnZWRJbiQgfCBhc3luYykgfHwgYWxsb3dBbm9ueW1vdXNcIiBbc2l6ZV09XCJkZXZpY2VTaXplXCI+XG4gICAgPGZkLXNoZWxsYmFyLWxvZ28gKm5nSWY9XCJsb2dvXCI+XG4gICAgICAgIDxhXG4gICAgICAgICAgICBbc3R5bGUuYmFja2dyb3VuZEltYWdlXT1cIid1cmwoJyArIChsb2dvPy5GaWxlSWQgfCBwaWNGaWVsZFNyYzogJ0dldFBpY3R1cmVGcm9tRmlsZUluZm8nOm51bGwpICsgJyknXCJcbiAgICAgICAgICAgIGhyZWY9XCIvXCJcbiAgICAgICAgICAgIGNsYXNzPVwiZmQtc2hlbGxiYXJfX2xvZ28gZmQtc2hlbGxiYXJfX2xvZ28tLWltYWdlLXJlcGxhY2VkXCJcbiAgICAgICAgICAgIGFyaWEtbGFiZWw9XCJCYXJzYSBOb3ZpbiBSYXlcIlxuICAgICAgICA+PC9hPlxuICAgIDwvZmQtc2hlbGxiYXItbG9nbz5cblxuICAgIDxmZC1wcm9kdWN0LW1lbnVcbiAgICAgICAgKm5nSWY9XCIhc2V0dGluZ3M/LkhpZGVQcm9kdWN0TWVudSAmJiBwcm9kdWN0TWVudUl0ZW1zMSAmJiBwcm9kdWN0TWVudUl0ZW1zMS5sZW5ndGggPiAwXCJcbiAgICAgICAgW2NvbnRyb2xdPVwicHJvZHVjdE1lbnVDb250cm9sXCJcbiAgICAgICAgW2Nsb3NlUG9wb3Zlck9uU2VsZWN0XT1cInRydWVcIlxuICAgICAgICBbaXRlbXNdPVwicHJvZHVjdE1lbnVJdGVtczFcIlxuICAgID5cbiAgICA8L2ZkLXByb2R1Y3QtbWVudT5cblxuICAgIDxmZC1zaGVsbGJhci1zdWJ0aXRsZT4ge3sgc3VidGl0bGUgfCBiYmJUcmFuc2xhdGUgfX17eyBzaG93VmVyc2lvbiA/IGFwcFZlcnNpb24gOiAnJyB9fSA8L2ZkLXNoZWxsYmFyLXN1YnRpdGxlPlxuICAgIDxmZC1zaGVsbGJhci1hY3Rpb25zXG4gICAgICAgICpuZ0lmPVwidXNlciAmJiAodXNlck1lbnU/Lmxlbmd0aCB8fCAhc2V0dGluZ3M/LkhpZGVMYW5ndWFnZSlcIlxuICAgICAgICBbdXNlcl09XCJ1c2VyXCJcbiAgICAgICAgW3VzZXJNZW51XT1cInVzZXJNZW51XCJcbiAgICAgICAgI2xhbmdSZWZcbiAgICA+XG4gICAgICAgIDxmZC1zaGVsbGJhci1hY3Rpb25cbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCBhY3Rpb24gb2YgYWN0aW9uc1wiXG4gICAgICAgICAgICBbZ2x5cGhdPVwiYWN0aW9uLkljb25cIlxuICAgICAgICAgICAgW2NhbGxiYWNrXT1cImFjdGlvbi5DYWxsYmFja1wiXG4gICAgICAgICAgICBbbGFiZWxdPVwiYWN0aW9uLkxhYmVsXCJcbiAgICAgICAgPlxuICAgICAgICA8L2ZkLXNoZWxsYmFyLWFjdGlvbj5cblxuICAgICAgICA8ZmQtcG9wb3ZlclxuICAgICAgICAgICAgWyhpc09wZW4pXT1cImlzT3Blbk5vdGlmaWNhdG9pblwiXG4gICAgICAgICAgICBbdHJpZ2dlcnNdPVwiW11cIlxuICAgICAgICAgICAgW2ZvY3VzVHJhcHBlZF09XCJ0cnVlXCJcbiAgICAgICAgICAgIFtjbG9zZU9uT3V0c2lkZUNsaWNrXT1cInRydWVcIlxuICAgICAgICAgICAgW25vQXJyb3ddPVwiZmFsc2VcIlxuICAgICAgICAgICAgcGxhY2VtZW50PVwiYm90dG9tXCJcbiAgICAgICAgICAgIHRpdGxlPVwiTm90aWZpY2F0aW9uIFBvcG92ZXJcIlxuICAgICAgICAgICAgW2ZvY3VzQXV0b0NhcHR1cmVdPVwidHJ1ZVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxmZC1wb3BvdmVyLWNvbnRyb2w+XG4gICAgICAgICAgICAgICAgPGZkLXNoZWxsYmFyLWFjdGlvblxuICAgICAgICAgICAgICAgICAgICBbZ2x5cGhdPVwiJ2JlbGwnXCJcbiAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIidOb3RpZmljYXRpb24nXCJcbiAgICAgICAgICAgICAgICAgICAgW25vdGlmaWNhdGlvbkNvdW50XT1cIihub3RpZmljYXRpb25zQ291bnQkIHwgYXN5bmMpISFcIlxuICAgICAgICAgICAgICAgICAgICBbbm90aWZpY2F0aW9uTGFiZWxdPVwiJ05vdGlmaWNhdGlvbiBMYWJlbCdcIlxuICAgICAgICAgICAgICAgICAgICBbY2FsbGJhY2tdPVwib25PcGVuTm90aWZpY2F0aW9uXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPC9mZC1zaGVsbGJhci1hY3Rpb24+XG4gICAgICAgICAgICA8L2ZkLXBvcG92ZXItY29udHJvbD5cbiAgICAgICAgICAgIDxmZC1wb3BvdmVyLWJvZHk+XG4gICAgICAgICAgICAgICAgPGZkLW5vdGlmaWNhdGlvblxuICAgICAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgbW8gb2Ygbm90aWZpY2F0aW9ucyQgfCBhc3luYzsgbGV0IGZpcnN0ID0gZmlyc3Q7IGxldCBsYXN0ID0gbGFzdFwiXG4gICAgICAgICAgICAgICAgICAgIHN0eWxlPVwibWFyZ2luLWJvdHRvbTogMXB4XCJcbiAgICAgICAgICAgICAgICAgICAgW3N0eWxlLmJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXNdPVwiIWxhc3QgPyAwIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgICAgIFtzdHlsZS5ib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1c109XCIhbGFzdCA/IDAgOiBudWxsXCJcbiAgICAgICAgICAgICAgICAgICAgW3N0eWxlLmJvcmRlci10b3AtcmlnaHQtcmFkaXVzXT1cIiFmaXJzdCA/IDAgOiBudWxsXCJcbiAgICAgICAgICAgICAgICAgICAgW3N0eWxlLmJvcmRlci10b3AtbGVmdC1yYWRpdXNdPVwiIWZpcnN0ID8gMCA6IG51bGxcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGZkLW5vdGlmaWNhdGlvbi1ib2R5PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGZkLWF2YXRhclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjaXJjbGVdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZT1cInhzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZ2x5cGhdPVwibW8uSWNvbiA/IG1vLkljb24gOiAnYmVsbCdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpbWFnZV09XCJtby5QaWN0dXJlID8gbW8uUGljdHVyZSA6IG51bGxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPjwvZmQtYXZhdGFyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGZkLW5vdGlmaWNhdGlvbi1jb250ZW50IHN0eWxlPVwibWluLXdpZHRoOiAyMDBweDsgb3ZlcmZsb3c6IGhpZGRlblwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZC1ub3RpZmljYXRpb24taGVhZGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGZkLW5vdGlmaWNhdGlvbi1pbmRpY2F0b3IgW3R5cGVdPVwibW8uVHlwZVwiPjwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDIgZmQtbm90aWZpY2F0aW9uLXRpdGxlIFt1bnJlYWRdPVwidHJ1ZVwiPnt7IG1vLlRpdGxlIH19PC9oMj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2ZkLW5vdGlmaWNhdGlvbi1oZWFkZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgZmQtbm90aWZpY2F0aW9uLXBhcmFncmFwaD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgbW8uUGFyYWdyYXBoIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZC1ub3RpZmljYXRpb24tZm9vdGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBmZC1ub3RpZmljYXRpb24tZm9vdGVyLWNvbnRlbnQ+e3sgbW8uRmlyc3RGb290ZXJDb250ZW50IH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBmZC1ub3RpZmljYXRpb24tc2VwYXJhdG9yPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZmQtbm90aWZpY2F0aW9uLWZvb3Rlci1jb250ZW50Pnt7IG1vLlNlY29uZEZvb3RlckNvbnRlbnQgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9mZC1ub3RpZmljYXRpb24tZm9vdGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9mZC1ub3RpZmljYXRpb24tY29udGVudD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxmZC1ub3RpZmljYXRpb24tYWN0aW9ucz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwibW8uUmVsYXRlZE1vXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmQtYnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvbk5vdGlmaWNhdGlvblJlbGF0ZWRDbGljayhtby5SZWxhdGVkTW8sIG1vLk5hbWFSZWxhdGVkTW8pXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIidWaWV3JyB8IGJiYlRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZkQ29tcGFjdFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZkLWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZFR5cGU9XCJ0cmFuc3BhcmVudFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyaWFMYWJlbD1cIkNsb3NlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2x5cGg9XCJkZWNsaW5lXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU9XCJjbG9zZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJpc09wZW5Ob3RpZmljYXRvaW4gPSBmYWxzZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZkQ29tcGFjdFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZmQtbm90aWZpY2F0aW9uLWFjdGlvbnM+XG4gICAgICAgICAgICAgICAgICAgIDwvZmQtbm90aWZpY2F0aW9uLWJvZHk+XG4gICAgICAgICAgICAgICAgPC9mZC1ub3RpZmljYXRpb24+XG4gICAgICAgICAgICA8L2ZkLXBvcG92ZXItYm9keT5cbiAgICAgICAgPC9mZC1wb3BvdmVyPlxuXG4gICAgICAgIDxmZC1zaGVsbGJhci1hY3Rpb25cbiAgICAgICAgICAgICpuZ0lmPVwiIXNldHRpbmdzPy5IaWRlTGFuZ3VhZ2UgJiYgZGV2aWNlU2l6ZSAhPT0gJ3MnXCJcbiAgICAgICAgICAgIFtnbHlwaF09XCInd29ybGQnXCJcbiAgICAgICAgICAgIFtsYWJlbF09XCInbGFuZ3VhZ2UnXCJcbiAgICAgICAgICAgIFtmZE1lbnVUcmlnZ2VyXT1cIm1lbnVcIlxuICAgICAgICAgICAgKGNhbGxiYWNrKT1cIihvbkxhbmd1YWdlKVwiXG4gICAgICAgID5cbiAgICAgICAgPC9mZC1zaGVsbGJhci1hY3Rpb24+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhc2V0dGluZ3M/LkhpZGVMYW5ndWFnZSAmJiBkZXZpY2VTaXplID09PSAncydcIj5cbiAgICAgICAgICAgIDxmZC1zaGVsbGJhci1hY3Rpb25cbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgY3VsdHVyZSBvZiBjdWx0dXJlcyB8IGtleXZhbHVlXCJcbiAgICAgICAgICAgICAgICBbbGFiZWxdPVwiY3VsdHVyZS52YWx1ZVwiXG4gICAgICAgICAgICAgICAgW2NhbGxiYWNrXT1cIm9uTGFuZ3VhZ2VcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgPC9mZC1zaGVsbGJhci1hY3Rpb24+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDxmZC1wcm9kdWN0LXN3aXRjaCAqbmdJZj1cInByb2R1Y3RTd2l0Y2hlci5sZW5ndGggPiAwXCI+XG4gICAgICAgICAgICA8ZmQtcHJvZHVjdC1zd2l0Y2gtYm9keSBbcHJvZHVjdHNdPVwicHJvZHVjdFN3aXRjaGVyXCIgW2ZvcmNlTGlzdE1vZGVdPVwiZGV2aWNlU2l6ZSA9PT0gJ3MnXCI+XG4gICAgICAgICAgICA8L2ZkLXByb2R1Y3Qtc3dpdGNoLWJvZHk+XG4gICAgICAgIDwvZmQtcHJvZHVjdC1zd2l0Y2g+XG4gICAgICAgIDwhLS0gPGZkLWNvbWJvYm94XG4gICAgICAgICAgICBbKG5nTW9kZWwpXT1cInNlYXJjaFRlcm1cIlxuICAgICAgICAgICAgW2Ryb3Bkb3duVmFsdWVzXT1cInNlYXJjaFRlcm1zXCJcbiAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCIoJ0VudGVyU2VhcmNoQ3JpdGVyaWEnIHwgYmJiVHJhbnNsYXRlKSArICcgLi4uJ1wiXG4gICAgICAgICAgICBbY29tcGFjdF09XCJ0cnVlXCJcbiAgICAgICAgPlxuICAgICAgICA8L2ZkLWNvbWJvYm94PiAtLT5cbiAgICA8L2ZkLXNoZWxsYmFyLWFjdGlvbnM+XG48L2ZkLXNoZWxsYmFyPlxuPG5nLXRlbXBsYXRlICNsb2FkaW5nPlxuICAgIDxic3UtbWFzaz48L2JzdS1tYXNrPlxuPC9uZy10ZW1wbGF0ZT5cblxuPGZkLW1lbnUgI21lbnU+XG4gICAgPHVsIGZkLWxpc3Q+XG4gICAgICAgIDxsaSBmZC1saXN0LWl0ZW0gKm5nRm9yPVwibGV0IGN1bHR1cmUgb2YgY3VsdHVyZXMgfCBrZXl2YWx1ZVwiPlxuICAgICAgICAgICAgPGEgZmQtbGlzdC1saW5rIChjbGljayk9XCJvbkN1bHR1cmVDaGFuZ2UoY3VsdHVyZS52YWx1ZSlcIj5cbiAgICAgICAgICAgICAgICA8c3BhbiBmZC1saXN0LXRpdGxlPnt7IGN1bHR1cmUudmFsdWUgfX0gPC9zcGFuPlxuICAgICAgICAgICAgPC9hPlxuICAgICAgICA8L2xpPlxuICAgIDwvdWw+XG48L2ZkLW1lbnU+XG4iXX0=
163
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hlbGxiYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2EtdGlsZXMvc3JjL2xpYi9zaGVsbGJhci9zaGVsbGJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS10aWxlcy9zcmMvbGliL3NoZWxsYmFyL3NoZWxsYmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBcUIsU0FBUyxFQUFFLE1BQU0sRUFBVSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakgsT0FBTyxFQUFFLFFBQVEsRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDaEQsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsaUJBQWlCLEVBQXFELE1BQU0sdUJBQXVCLENBQUM7QUFFN0csT0FBTyxFQUNILGFBQWEsRUFDYixRQUFRLEVBTVIsV0FBVyxFQUVkLE1BQU0sc0JBQXNCLENBQUM7Ozs7Ozs7Ozs7Ozs7OztBQW9COUIsTUFBTSxPQUFPLGlCQUFrQixTQUFRLGFBQWE7SUF3QmhELFlBQ1ksY0FBNkIsRUFDN0Isa0JBQXFDLEVBQ3JDLGFBQTJCLEVBQzNCLElBQXVCLEVBQ3ZCLGlCQUFtQyxFQUNmLFVBQWtCO1FBRTlDLEtBQUssRUFBRSxDQUFDO1FBUEEsbUJBQWMsR0FBZCxjQUFjLENBQWU7UUFDN0IsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFtQjtRQUNyQyxrQkFBYSxHQUFiLGFBQWEsQ0FBYztRQUMzQixTQUFJLEdBQUosSUFBSSxDQUFtQjtRQUN2QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQWtCO1FBQ2YsZUFBVSxHQUFWLFVBQVUsQ0FBUTtRQTFCbEQsdUJBQWtCLEdBQUcsS0FBSyxDQUFDO1FBQzNCLGVBQVUsR0FBMkIs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O1FBQ2hDLFFBQVEsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztZQUNsQixFQUFFLEVBQUUsRUFBRTtZQUNOLFNBQVMsRUFBRTtnQkFDUCxRQUFRLEVBQUUsSUFBSTthQUNqQjtTQUNKLENBQUMsQ0FBQztJQUNQLENBQUM7SUFDRCxtQkFBbUIsQ0FBQyxFQUF1QjtRQUN2QyxJQUFJLENBQUMsY0FBYyxDQUFDLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFTTyxjQUFjLENBQUMsT0FBZSxDQUFDLDZCQUE2QjtRQUNoRSxRQUFRLENBQUMsRUFBRSxDQUFDLHVCQUF1QixDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzdDLFFBQVEsQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2hDLENBQUM7OzhHQXhKUSxpQkFBaUIsNktBOEJkLFdBQVc7a0dBOUJkLGlCQUFpQixzR0FDZixpQkFBaUIsdUVDcENoQyxnZ09BMkpBOzJGRHhIYSxpQkFBaUI7a0JBTjdCLFNBQVM7K0JBQ0ksYUFBYSxtQkFHTix1QkFBdUIsQ0FBQyxNQUFNOzswQkFnQzFDLE1BQU07MkJBQUMsV0FBVzs0Q0E3Qk8saUJBQWlCO3NCQUE5QyxTQUFTO3VCQUFDLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBJbmplY3QsIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBmb3JrSm9pbiwgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQ29tYm9ib3hDb21wb25lbnQsIFByb2R1Y3RTd2l0Y2hJdGVtLCBTaGVsbGJhck1lbnVJdGVtLCBTaGVsbGJhclVzZXIgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUnO1xuXG5pbXBvcnQge1xuICAgIEJhc2VDb21wb25lbnQsXG4gICAgQmFyc2FBcGksXG4gICAgTWV0YW9iamVjdERhdGFNb2RlbCxcbiAgICBGaWxlUGljdHVyZUluZm9Nb2RlbCxcbiAgICBNb0ZvclJlcG9ydE1vZGVsLFxuICAgIFBvcnRhbFNlcnZpY2UsXG4gICAgQnJlYWRjcnVtYlNlcnZpY2UsXG4gICAgQVBQX1ZFUlNJT04sXG4gICAgQmJiVHJhbnNsYXRlUGlwZVxufSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XG5cbmltcG9ydCB7IFRpbGVzU2VydmljZSB9IGZyb20gJy4uL3RpbGVzLnNlcnZpY2UnO1xuXG5pbnRlcmZhY2UgU2hlbGxiYXJTZXR0aW5nIGV4dGVuZHMgTWV0YW9iamVjdERhdGFNb2RlbCB7XG4gICAgc3VidGl0bGU6IHN0cmluZztcbiAgICBjYWxjU3VidGl0bGU6IHN0cmluZztcbiAgICBsb2dvOiBGaWxlUGljdHVyZUluZm9Nb2RlbDtcbiAgICBQcm9kdWN0U3dpdGNoSXRlbXM6IE1vRm9yUmVwb3J0TW9kZWw7XG4gICAgUHJvZHVjdE1lbnVJdGVtczogTW9Gb3JSZXBvcnRNb2RlbDtcbiAgICBVc2VyTWVudUl0ZW1zOiBNb0ZvclJlcG9ydE1vZGVsO1xuICAgIEFjdGlvbkl0ZW1zOiBNb0ZvclJlcG9ydE1vZGVsO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2J0LXNoZWxsYmFyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vc2hlbGxiYXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3NoZWxsYmFyLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgU2hlbGxiYXJDb21wb25lbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBAVmlld0NoaWxkKENvbWJvYm94Q29tcG9uZW50KSBjb21ib2JveENvbXBvbmVudDogQ29tYm9ib3hDb21wb25lbnQ7XG4gICAgc2hlbGxiYXJEYXRhOiBTaGVsbGJhclNldHRpbmc7XG4gICAgc2V0dGluZ3M6IE1ldGFvYmplY3REYXRhTW9kZWw7XG4gICAgaXNPcGVuTm90aWZpY2F0b2luID0gZmFsc2U7XG4gICAgZGV2aWNlU2l6ZTogJ3MnIHwgJ20nIHwgJ2wnIHwgJ3hsJyA9ICd4bCc7XG4gICAgcHJvZHVjdE1lbnVDb250cm9sOiBzdHJpbmc7XG4gICAgdXNlcjogU2hlbGxiYXJVc2VyID0ge1xuICAgICAgICBpbml0aWFsczogJ1dXJyxcbiAgICAgICAgY29sb3JBY2NlbnQ6IDFcbiAgICB9O1xuICAgIHNlYXJjaFRlcm1zID0gWyfZhdix2K7YtduMJywgJ9mF2KfZhdmI2LHbjNiqJywgJ9iq24zaqdiqJywgJ9m+2LHZiNqY2YcnXTtcbiAgICBzZWFyY2hUZXJtOiBzdHJpbmc7XG4gICAgYWN0aW9ucyQ6IE9ic2VydmFibGU8U2hlbGxiYXJNZW51SXRlbVtdPjtcbiAgICBwcm9kdWN0TWVudUl0ZW1zMTogU2hlbGxiYXJNZW51SXRlbVtdO1xuICAgIHVzZXJMb2dnZWRJbiQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gICAgY3NzVXJsJDogYW55O1xuICAgIGNzc0N1c3RvbVVybCQ6IGFueTtcbiAgICBhbGxvd0Fub255bW91cyA9IHRydWU7XG4gICAgc2hvd1ZlcnNpb24gPSBmYWxzZTtcbiAgICBjdWx0dXJlczogUmVjb3JkPHN0cmluZywgYW55PjtcbiAgICBub3RpZmljYXRpb25zQ291bnQkOiBPYnNlcnZhYmxlPG51bWJlcj47XG4gICAgbm90aWZpY2F0aW9ucyQ6IE9ic2VydmFibGU8TWV0YW9iamVjdERhdGFNb2RlbFtdPjtcbiAgICBub3RpZmljYXRpb25Mb2FkaW5nJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBfcG9ydGFsU2VydmljZTogUG9ydGFsU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBfYnJlYWRDcnVtYlNlcnZpY2U6IEJyZWFkY3J1bWJTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIF90aWxlc1NlcnZpY2U6IFRpbGVzU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBfY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgcHJpdmF0ZSBfYmJiVHJhbnNsYXRlUGlwZTogQmJiVHJhbnNsYXRlUGlwZSxcbiAgICAgICAgQEluamVjdChBUFBfVkVSU0lPTikgcHVibGljIGFwcFZlcnNpb246IHN0cmluZ1xuICAgICkge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICB0aGlzLnVzZXJMb2dnZWRJbiQgPSB0aGlzLl9wb3J0YWxTZXJ2aWNlLnVzZXJMb2dnZWRJbiQ7XG4gICAgICAgIHRoaXMuc2hvd1ZlcnNpb24gPSAhQmFyc2FBcGkuTG9naW5Gb3JtRGF0YS5Jc1NlcnZpY2VEZXNrO1xuICAgIH1cbiAgICBnZXQgc3VidGl0bGUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2hlbGxiYXJEYXRhPy5TdWJ0aXRsZVxuICAgICAgICAgICAgPyBgJHt0aGlzLnNoZWxsYmFyRGF0YT8uU3VidGl0bGV9ICR7XG4gICAgICAgICAgICAgICAgICB0eXBlb2YgdGhpcy5zaGVsbGJhckRhdGE/LkNhbGNTdWJ0aXRsZSA9PT0gJ3N0cmluZycgPyB0aGlzLnNoZWxsYmFyRGF0YS5DYWxjU3VidGl0bGUgOiAnJ1xuICAgICAgICAgICAgICB9YFxuICAgICAgICAgICAgOiAnJztcbiAgICB9XG4gICAgZ2V0IGxvZ28oKTogeyBGaWxlSWQ6IHN0cmluZyB9IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2hlbGxiYXJEYXRhPy5Mb2dvO1xuICAgIH1cbiAgICBnZXQgYWN0aW9ucygpOiBBcnJheTxNZXRhb2JqZWN0RGF0YU1vZGVsPiB7XG4gICAgICAgIHJldHVybiB0aGlzLnNldHRpbmdzPy5IaWRlVXNlck1lbnUgPyBbXSA6IHRoaXMuc2hlbGxiYXJEYXRhPy5BY3Rpb25JdGVtcz8uTW9EYXRhTGlzdCA/PyBbXTtcbiAgICB9XG4gICAgZ2V0IHVzZXJNZW51KCk6IHsgdGV4dDogc3RyaW5nOyBjYWxsYmFjazogKCkgPT4gdm9pZCB9W10ge1xuICAgICAgICBjb25zdCBtb0RhdGFMaXN0ID0gQmFyc2FBcGkuQ29tbW9uLlV0aWwuVHJ5R2V0VmFsdWUodGhpcy5zaGVsbGJhckRhdGEsICdVc2VyTWVudUl0ZW1zLk1vRGF0YUxpc3QnKTtcbiAgICAgICAgY29uc3QgaXRlbXMgPSBtb0RhdGFMaXN0ID8gWy4uLm1vRGF0YUxpc3RdIDogW107XG4gICAgICAgIGlmICghaXRlbXMubGVuZ3RoKSB7XG4gICAgICAgICAgICByZXR1cm4gW107XG4gICAgICAgIH1cbiAgICAgICAgaXRlbXMuZm9yRWFjaCgoYykgPT4ge1xuICAgICAgICAgICAgYy50ZXh0ID0gdGhpcy5fYmJiVHJhbnNsYXRlUGlwZS50cmFuc2Zvcm0oYy50ZXh0KTtcbiAgICAgICAgICAgIGMuY2FsbGJhY2sgPSBuZXcgRnVuY3Rpb24oYy5Db2RlICsgdGhpcy5ib2R5Q2xpY2spO1xuICAgICAgICB9KTtcbiAgICAgICAgaWYgKCFCYXJzYUFwaS5Mb2dpbkZvcm1EYXRhLklzQW5vbnltb3VzICYmIEJhcnNhQXBpLkxvZ2luRm9ybURhdGEuSXNVc2VyTG9nZ2VkSW4pIHtcbiAgICAgICAgICAgIGl0ZW1zLnNwbGljZSgwLCAwLCB7IElkOiAnLTEnLCAkQ2FwdGlvbjogJycsIHRleHQ6IEJhcnNhQXBpLkxvZ2luRm9ybURhdGEuVXNlckRpc3BsYXlOYW1lIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLnNldHRpbmdzPy5IaWRlVXNlck1lbnUgPyBbXSA6IChpdGVtcyBhcyBhbnkpO1xuICAgIH1cbiAgICBnZXQgcHJvZHVjdFN3aXRjaGVyKCk6IFByb2R1Y3RTd2l0Y2hJdGVtW10ge1xuICAgICAgICByZXR1cm4gdGhpcy5zaGVsbGJhckRhdGE/LlByb2R1Y3RTd2l0Y2hJdGVtPy5Nb0RhdGFMaXN0ID8/IChbXSBhcyB1bmtub3duIGFzIFByb2R1Y3RTd2l0Y2hJdGVtW10pO1xuICAgIH1cbiAgICBnZXQgcHJvZHVjdE1lbnVJdGVtcygpOiBTaGVsbGJhck1lbnVJdGVtW10ge1xuICAgICAgICBjb25zdCBpdGVtcyA9IHRoaXMuc2hlbGxiYXJEYXRhPy5Qcm9kdWN0TWVudUl0ZW1zPy5Nb0RhdGFMaXN0ID8/IFtdO1xuICAgICAgICBpdGVtcy5mb3JFYWNoKChjKSA9PiAoYy5jYWxsYmFjayA9IG5ldyBGdW5jdGlvbihjLkNvZGUgKyB0aGlzLmJvZHlDbGljaykpKTtcbiAgICAgICAgcmV0dXJuIGl0ZW1zIGFzIHVua25vd24gYXMgU2hlbGxiYXJNZW51SXRlbVtdO1xuICAgIH1cbiAgICBnZXQgYm9keUNsaWNrKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiAnOyQoXCJib2R5XCIpLmNsaWNrKCknO1xuICAgIH1cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICAgICAgdGhpcy5jdWx0dXJlcyA9IEJhcnNhQXBpLkxvZ2luRm9ybURhdGEuQ3VsdHVyZXM7XG4gICAgICAgIHRoaXMuY3NzVXJsJCA9IHRoaXMuX3BvcnRhbFNlcnZpY2UuY3NzVXJsJDtcbiAgICAgICAgdGhpcy5jc3NDdXN0b21VcmwkID0gdGhpcy5fcG9ydGFsU2VydmljZS5jc3NDdXN0b21VcmwkO1xuICAgICAgICB0aGlzLm5vdGlmaWNhdGlvbnNDb3VudCQgPSB0aGlzLl9wb3J0YWxTZXJ2aWNlLm5vdGlmaWNhdGlvbnNDb3VudCQ7XG4gICAgICAgIHRoaXMubm90aWZpY2F0aW9uTG9hZGluZyQgPSB0aGlzLl9wb3J0YWxTZXJ2aWNlLm5vdGlmaWNhdGlvbkxvYWRpbmckO1xuICAgICAgICB0aGlzLm5vdGlmaWNhdGlvbnMkID0gdGhpcy5fcG9ydGFsU2VydmljZS5ub3RpZmljYXRpb25zJDtcbiAgICAgICAgQmFyc2FBcGkuQncuU2V0VXNlclBvcnRhbFNldHRpbmdzID0gKHVzZXJQb3J0YWxTZXR0aW5nczogTWV0YW9iamVjdERhdGFNb2RlbCk6IHZvaWQgPT4ge1xuICAgICAgICAgICAgdGhpcy5fcG9ydGFsU2VydmljZS5zZXRVc2VyUG9ydGFsU2V0dGluZ3ModXNlclBvcnRhbFNldHRpbmdzKTtcbiAgICAgICAgfTtcbiAgICAgICAgQmFyc2FBcGkuQncuU2V0U2hlbGxiYXJTdWJ0aXRsZSA9IChjYWxjU3VidGl0bGU6IHN0cmluZyk6IHZvaWQgPT4ge1xuICAgICAgICAgICAgdGhpcy5zaGVsbGJhckRhdGEuY2FsY1N1YnRpdGxlID0gY2FsY1N1YnRpdGxlO1xuICAgICAgICAgICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgfTtcbiAgICAgICAgdGhpcy5fcG9ydGFsU2VydmljZS5kZXZpY2VTaXplJC5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKChjKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmRldmljZVNpemUgPSBjO1xuICAgICAgICAgICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5fYnJlYWRDcnVtYlNlcnZpY2UuYnJlYWRjcnVtYnMkLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKGJyZWFkQ3J1bWJzKSA9PiB7XG4gICAgICAgICAgICBpZiAoYnJlYWRDcnVtYnMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgIHRoaXMucHJvZHVjdE1lbnVDb250cm9sID0gYnJlYWRDcnVtYnNbYnJlYWRDcnVtYnMubGVuZ3RoIC0gMV0ubGFiZWw7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLl9jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLl90aWxlc1NlcnZpY2Uuc2hlbGxiYXIkLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKG1vKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnNoZWxsYmFyRGF0YSA9IG1vIGFzIFNoZWxsYmFyU2V0dGluZztcbiAgICAgICAgICAgIC8vIHRoaXMuX2Nkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgICAgICBmb3JrSm9pbihbb2YodGhpcy5wcm9kdWN0TWVudUl0ZW1zKSwgb2YoW10pXSkgLy8gdG8gYXBwZW5kIHVzZXIgZGVmaW5lZFxuICAgICAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCksXG4gICAgICAgICAgICAgICAgICAgIG1hcCgoW3MxLCBzMl0pID0+IFsuLi5zMSwgLi4uczJdKVxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKChjKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucHJvZHVjdE1lbnVJdGVtczEgPSBjO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICAgICAgaWYgKHRoaXMuYWxsb3dBbm9ueW1vdXMpIHtcbiAgICAgICAgICAgIHRoaXMuX3RpbGVzU2VydmljZS5sb2FkU2hlbGxiYXIoKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl9wb3J0YWxTZXJ2aWNlLnVzZXJMb2dnZWRJbiQucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCkpLnN1YnNjcmliZSgobG9nZ2VkSW4pID0+IHtcbiAgICAgICAgICAgIGlmICghbG9nZ2VkSW4pIHtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLl90aWxlc1NlcnZpY2UubG9hZFNoZWxsYmFyKCk7XG4gICAgICAgICAgICB0aGlzLl9wb3J0YWxTZXJ2aWNlLmxvYWROb3RpZmljYXRpb25zKCk7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBvbkN1bHR1cmVDaGFuZ2UoY3VsdHVyZSk6IHZvaWQge1xuICAgICAgICB0aGlzLl9jaGFuZ2VDdWx0dXJlKGN1bHR1cmUpO1xuICAgIH1cbiAgICBvbk5vdGlmaWNhdGlvblJlbGF0ZWRDbGljayhtbzogTWV0YW9iamVjdERhdGFNb2RlbCwgbmFtYTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaXNPcGVuTm90aWZpY2F0b2luID0gZmFsc2U7XG4gICAgICAgIEJhcnNhQXBpLkJ3LkZvcm0uU2hvdyh7XG4gICAgICAgICAgICBNbzogbW8sXG4gICAgICAgICAgICBNb0NvbnRleHQ6IHtcbiAgICAgICAgICAgICAgICBWaWV3TmFtZTogbmFtYVxuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG4gICAgb25SZW1vdmVOb3RpZmlhdGlvbihtbzogTWV0YW9iamVjdERhdGFNb2RlbCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9wb3J0YWxTZXJ2aWNlLnJlbW92ZU5vdGlmaWNhdGlvbihtbyk7XG4gICAgfVxuICAgIG9uT3Blbk5vdGlmaWNhdGlvbiA9ICgpOiB2b2lkID0+IHtcbiAgICAgICAgdGhpcy5pc09wZW5Ob3RpZmljYXRvaW4gPSB0cnVlO1xuICAgIH07XG4gICAgb25MYW5ndWFnZSA9IChlKTogdm9pZCA9PiB7XG4gICAgICAgIGNvbnN0IGN1bHR1cmUgPSBlLmN1cnJlbnRUYXJnZXQudGV4dENvbnRlbnQudHJpbSgpO1xuICAgICAgICB0aGlzLl9jaGFuZ2VDdWx0dXJlKGN1bHR1cmUpO1xuICAgIH07XG5cbiAgICBwcml2YXRlIF9jaGFuZ2VDdWx0dXJlKGN1bHR1cmU6IHN0cmluZyAvKiBjdWx0dXJlIHNhbXBsZSA6RW5nbGlzaCAqLyk6IHZvaWQge1xuICAgICAgICBCYXJzYUFwaS5Cdy5TZXRDdWx0dXJlQnlEaXNwbGF5TmFtZShjdWx0dXJlKTtcbiAgICAgICAgQmFyc2FBcGkuQncuTmF2aWdhdGVUbygnLycpO1xuICAgIH1cbn1cbiIsIjxsaW5rICpuZ0lmPVwiY3NzVXJsJCB8IGFzeW5jIGFzIGNzc1VybFwiIHR5cGU9XCJ0ZXh0L2Nzc1wiIHJlbD1cInN0eWxlc2hlZXRcIiBbaHJlZl09XCJjc3NVcmxcIiAvPlxuPGxpbmsgKm5nSWY9XCJjc3NDdXN0b21VcmwkIHwgYXN5bmMgYXMgY3NzQ3VzdG9tVXJsXCIgdHlwZT1cInRleHQvY3NzXCIgcmVsPVwic3R5bGVzaGVldFwiIFtocmVmXT1cImNzc0N1c3RvbVVybFwiIC8+XG5cbjxmZC1zaGVsbGJhciAqbmdJZj1cIih1c2VyTG9nZ2VkSW4kIHwgYXN5bmMpIHx8IGFsbG93QW5vbnltb3VzXCIgW3NpemVdPVwiZGV2aWNlU2l6ZVwiPlxuICAgIDxmZC1zaGVsbGJhci1sb2dvICpuZ0lmPVwibG9nb1wiPlxuICAgICAgICA8YVxuICAgICAgICAgICAgW3N0eWxlLmJhY2tncm91bmRJbWFnZV09XCIndXJsKCcgKyAobG9nbz8uRmlsZUlkIHwgcGljRmllbGRTcmM6ICdHZXRQaWN0dXJlRnJvbUZpbGVJbmZvJzpudWxsKSArICcpJ1wiXG4gICAgICAgICAgICBocmVmPVwiL1wiXG4gICAgICAgICAgICBjbGFzcz1cImZkLXNoZWxsYmFyX19sb2dvIGZkLXNoZWxsYmFyX19sb2dvLS1pbWFnZS1yZXBsYWNlZFwiXG4gICAgICAgICAgICBhcmlhLWxhYmVsPVwiQmFyc2EgTm92aW4gUmF5XCJcbiAgICAgICAgPjwvYT5cbiAgICA8L2ZkLXNoZWxsYmFyLWxvZ28+XG5cbiAgICA8ZmQtcHJvZHVjdC1tZW51XG4gICAgICAgICpuZ0lmPVwiIXNldHRpbmdzPy5IaWRlUHJvZHVjdE1lbnUgJiYgcHJvZHVjdE1lbnVJdGVtczEgJiYgcHJvZHVjdE1lbnVJdGVtczEubGVuZ3RoID4gMFwiXG4gICAgICAgIFtjb250cm9sXT1cInByb2R1Y3RNZW51Q29udHJvbFwiXG4gICAgICAgIFtjbG9zZVBvcG92ZXJPblNlbGVjdF09XCJ0cnVlXCJcbiAgICAgICAgW2l0ZW1zXT1cInByb2R1Y3RNZW51SXRlbXMxXCJcbiAgICA+XG4gICAgPC9mZC1wcm9kdWN0LW1lbnU+XG5cbiAgICA8ZmQtc2hlbGxiYXItc3VidGl0bGU+IHt7IHN1YnRpdGxlIHwgYmJiVHJhbnNsYXRlIH19e3sgc2hvd1ZlcnNpb24gPyBhcHBWZXJzaW9uIDogJycgfX0gPC9mZC1zaGVsbGJhci1zdWJ0aXRsZT5cbiAgICA8ZmQtc2hlbGxiYXItYWN0aW9uc1xuICAgICAgICAqbmdJZj1cInVzZXIgJiYgKHVzZXJNZW51Py5sZW5ndGggfHwgIXNldHRpbmdzPy5IaWRlTGFuZ3VhZ2UpXCJcbiAgICAgICAgW3VzZXJdPVwidXNlclwiXG4gICAgICAgIFt1c2VyTWVudV09XCJ1c2VyTWVudVwiXG4gICAgICAgICNsYW5nUmVmXG4gICAgPlxuICAgICAgICA8ZmQtc2hlbGxiYXItYWN0aW9uXG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgYWN0aW9uIG9mIGFjdGlvbnNcIlxuICAgICAgICAgICAgW2dseXBoXT1cImFjdGlvbi5JY29uXCJcbiAgICAgICAgICAgIFtjYWxsYmFja109XCJhY3Rpb24uQ2FsbGJhY2tcIlxuICAgICAgICAgICAgW2xhYmVsXT1cImFjdGlvbi5MYWJlbFwiXG4gICAgICAgID5cbiAgICAgICAgPC9mZC1zaGVsbGJhci1hY3Rpb24+XG5cbiAgICAgICAgPGZkLXBvcG92ZXJcbiAgICAgICAgICAgIFsoaXNPcGVuKV09XCJpc09wZW5Ob3RpZmljYXRvaW5cIlxuICAgICAgICAgICAgW3RyaWdnZXJzXT1cIltdXCJcbiAgICAgICAgICAgIFtmb2N1c1RyYXBwZWRdPVwidHJ1ZVwiXG4gICAgICAgICAgICBbY2xvc2VPbk91dHNpZGVDbGlja109XCJ0cnVlXCJcbiAgICAgICAgICAgIFtub0Fycm93XT1cImZhbHNlXCJcbiAgICAgICAgICAgIHBsYWNlbWVudD1cImJvdHRvbVwiXG4gICAgICAgICAgICB0aXRsZT1cIk5vdGlmaWNhdGlvbiBQb3BvdmVyXCJcbiAgICAgICAgICAgIFtmb2N1c0F1dG9DYXB0dXJlXT1cInRydWVcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8ZmQtcG9wb3Zlci1jb250cm9sPlxuICAgICAgICAgICAgICAgIDxmZC1zaGVsbGJhci1hY3Rpb25cbiAgICAgICAgICAgICAgICAgICAgW2dseXBoXT1cIidiZWxsJ1wiXG4gICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInTm90aWZpY2F0aW9uJ1wiXG4gICAgICAgICAgICAgICAgICAgIFtub3RpZmljYXRpb25Db3VudF09XCIobm90aWZpY2F0aW9uc0NvdW50JCB8IGFzeW5jKSEhXCJcbiAgICAgICAgICAgICAgICAgICAgW25vdGlmaWNhdGlvbkxhYmVsXT1cIidOb3RpZmljYXRpb24gTGFiZWwnXCJcbiAgICAgICAgICAgICAgICAgICAgW2NhbGxiYWNrXT1cIm9uT3Blbk5vdGlmaWNhdGlvblwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDwvZmQtc2hlbGxiYXItYWN0aW9uPlxuICAgICAgICAgICAgPC9mZC1wb3BvdmVyLWNvbnRyb2w+XG4gICAgICAgICAgICA8ZmQtcG9wb3Zlci1ib2R5IHN0eWxlPVwibWF4LWhlaWdodDogNDAwcHg7IG92ZXJmbG93LXg6IGF1dG9cIj5cbiAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPVwicG9zaXRpb246IHJlbGF0aXZlXCI+XG4gICAgICAgICAgICAgICAgICAgIDxic3UtbWFzayAqbmdJZj1cIm5vdGlmaWNhdGlvbkxvYWRpbmckIHwgYXN5bmNcIiBzaXplPVwic1wiPjwvYnN1LW1hc2s+XG4gICAgICAgICAgICAgICAgICAgIDxmZC1ub3RpZmljYXRpb25cbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBtbyBvZiBub3RpZmljYXRpb25zJCB8IGFzeW5jOyBsZXQgZmlyc3QgPSBmaXJzdDsgbGV0IGxhc3QgPSBsYXN0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPVwibWFyZ2luLWJvdHRvbTogMXB4XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtzdHlsZS5ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzXT1cIiFsYXN0ID8gMCA6IG51bGxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW3N0eWxlLmJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzXT1cIiFsYXN0ID8gMCA6IG51bGxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW3N0eWxlLmJvcmRlci10b3AtcmlnaHQtcmFkaXVzXT1cIiFmaXJzdCA/IDAgOiBudWxsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtzdHlsZS5ib3JkZXItdG9wLWxlZnQtcmFkaXVzXT1cIiFmaXJzdCA/IDAgOiBudWxsXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGZkLW5vdGlmaWNhdGlvbi1ib2R5PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZC1hdmF0YXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NpcmNsZV09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZT1cInhzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2dseXBoXT1cIm1vLkljb24gPyBtby5JY29uIDogJ2JlbGwnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2ltYWdlXT1cIm1vLlBpY3R1cmUgPyBtby5QaWN0dXJlIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvZmQtYXZhdGFyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZC1ub3RpZmljYXRpb24tY29udGVudCBzdHlsZT1cIm1pbi13aWR0aDogMzIwcHg7IG92ZXJmbG93OiBoaWRkZW5cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZkLW5vdGlmaWNhdGlvbi1oZWFkZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGZkLW5vdGlmaWNhdGlvbi1pbmRpY2F0b3IgW3R5cGVdPVwibW8uVHlwZVwiPjwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgyIGZkLW5vdGlmaWNhdGlvbi10aXRsZSBbdW5yZWFkXT1cInRydWVcIj57eyBtby5UaXRsZSB9fTwvaDI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZmQtbm90aWZpY2F0aW9uLWhlYWRlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgZmQtbm90aWZpY2F0aW9uLXBhcmFncmFwaD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IG1vLlBhcmFncmFwaCB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZC1ub3RpZmljYXRpb24tZm9vdGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZmQtbm90aWZpY2F0aW9uLWZvb3Rlci1jb250ZW50Pnt7IG1vLkZpcnN0Rm9vdGVyQ29udGVudCB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGZkLW5vdGlmaWNhdGlvbi1zZXBhcmF0b3I+PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZmQtbm90aWZpY2F0aW9uLWZvb3Rlci1jb250ZW50Pnt7IG1vLlNlY29uZEZvb3RlckNvbnRlbnQgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZmQtbm90aWZpY2F0aW9uLWZvb3Rlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2ZkLW5vdGlmaWNhdGlvbi1jb250ZW50PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZC1ub3RpZmljYXRpb24tYWN0aW9ucz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJtby5SZWxhdGVkTW9cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmQtYnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25Ob3RpZmljYXRpb25SZWxhdGVkQ2xpY2sobW8uUmVsYXRlZE1vLCBtby5OYW1hUmVsYXRlZE1vKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ1ZpZXcnIHwgYmJiVHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZkQ29tcGFjdFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9idXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZkLWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmRUeXBlPVwidHJhbnNwYXJlbnRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJpYUxhYmVsPVwiQ2xvc2VcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2x5cGg9XCJkZWNsaW5lXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlPVwiY2xvc2VcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uUmVtb3ZlTm90aWZpYXRpb24obW8pXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZkQ29tcGFjdFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9idXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9mZC1ub3RpZmljYXRpb24tYWN0aW9ucz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZmQtbm90aWZpY2F0aW9uLWJvZHk+XG4gICAgICAgICAgICAgICAgICAgIDwvZmQtbm90aWZpY2F0aW9uPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9mZC1wb3BvdmVyLWJvZHk+XG4gICAgICAgIDwvZmQtcG9wb3Zlcj5cblxuICAgICAgICA8ZmQtc2hlbGxiYXItYWN0aW9uXG4gICAgICAgICAgICAqbmdJZj1cIiFzZXR0aW5ncz8uSGlkZUxhbmd1YWdlICYmIGRldmljZVNpemUgIT09ICdzJ1wiXG4gICAgICAgICAgICBbZ2x5cGhdPVwiJ3dvcmxkJ1wiXG4gICAgICAgICAgICBbbGFiZWxdPVwiJ2xhbmd1YWdlJ1wiXG4gICAgICAgICAgICBbZmRNZW51VHJpZ2dlcl09XCJtZW51XCJcbiAgICAgICAgICAgIChjYWxsYmFjayk9XCIob25MYW5ndWFnZSlcIlxuICAgICAgICA+XG4gICAgICAgIDwvZmQtc2hlbGxiYXItYWN0aW9uPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIXNldHRpbmdzPy5IaWRlTGFuZ3VhZ2UgJiYgZGV2aWNlU2l6ZSA9PT0gJ3MnXCI+XG4gICAgICAgICAgICA8ZmQtc2hlbGxiYXItYWN0aW9uXG4gICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGN1bHR1cmUgb2YgY3VsdHVyZXMgfCBrZXl2YWx1ZVwiXG4gICAgICAgICAgICAgICAgW2xhYmVsXT1cImN1bHR1cmUudmFsdWVcIlxuICAgICAgICAgICAgICAgIFtjYWxsYmFja109XCJvbkxhbmd1YWdlXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIDwvZmQtc2hlbGxiYXItYWN0aW9uPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8ZmQtcHJvZHVjdC1zd2l0Y2ggKm5nSWY9XCJwcm9kdWN0U3dpdGNoZXIubGVuZ3RoID4gMFwiPlxuICAgICAgICAgICAgPGZkLXByb2R1Y3Qtc3dpdGNoLWJvZHkgW3Byb2R1Y3RzXT1cInByb2R1Y3RTd2l0Y2hlclwiIFtmb3JjZUxpc3RNb2RlXT1cImRldmljZVNpemUgPT09ICdzJ1wiPlxuICAgICAgICAgICAgPC9mZC1wcm9kdWN0LXN3aXRjaC1ib2R5PlxuICAgICAgICA8L2ZkLXByb2R1Y3Qtc3dpdGNoPlxuICAgICAgICA8IS0tIDxmZC1jb21ib2JveFxuICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJzZWFyY2hUZXJtXCJcbiAgICAgICAgICAgIFtkcm9wZG93blZhbHVlc109XCJzZWFyY2hUZXJtc1wiXG4gICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiKCdFbnRlclNlYXJjaENyaXRlcmlhJyB8IGJiYlRyYW5zbGF0ZSkgKyAnIC4uLidcIlxuICAgICAgICAgICAgW2NvbXBhY3RdPVwidHJ1ZVwiXG4gICAgICAgID5cbiAgICAgICAgPC9mZC1jb21ib2JveD4gLS0+XG4gICAgPC9mZC1zaGVsbGJhci1hY3Rpb25zPlxuPC9mZC1zaGVsbGJhcj5cbjxuZy10ZW1wbGF0ZSAjbG9hZGluZz5cbiAgICA8YnN1LW1hc2s+PC9ic3UtbWFzaz5cbjwvbmctdGVtcGxhdGU+XG5cbjxmZC1tZW51ICNtZW51PlxuICAgIDx1bCBmZC1saXN0PlxuICAgICAgICA8bGkgZmQtbGlzdC1pdGVtICpuZ0Zvcj1cImxldCBjdWx0dXJlIG9mIGN1bHR1cmVzIHwga2V5dmFsdWVcIj5cbiAgICAgICAgICAgIDxhIGZkLWxpc3QtbGluayAoY2xpY2spPVwib25DdWx0dXJlQ2hhbmdlKGN1bHR1cmUudmFsdWUpXCI+XG4gICAgICAgICAgICAgICAgPHNwYW4gZmQtbGlzdC10aXRsZT57eyBjdWx0dXJlLnZhbHVlIH19IDwvc3Bhbj5cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgPC9saT5cbiAgICA8L3VsPlxuPC9mZC1tZW51PlxuIl19
@@ -30,10 +30,10 @@ export class TileComponent extends BaseTileComponent {
30
30
  }
31
31
  }
32
32
  TileComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: TileComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
33
- TileComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: TileComponent, selector: "bt-tile", inputs: { type: "type", footerTemplate: "footerTemplate", disableClick: "disableClick" }, host: { listeners: { "click": "onClick($event)" } }, usesInheritance: true, ngImport: i0, template: "<fd-tile [type]=\"type\" [double]=\"double\" [action]=\"editHome\">\n <ng-container *ngIf=\"editHome && !data.Locked\">\n <button fd-button fd-tile-action-close fdType=\"transparent\" (click)=\"hideClick.emit()\"></button>\n <button fd-button fd-tile-action-indicator fdType=\"transparent\" [fdMenuTrigger]=\"menu\"></button>\n </ng-container>\n <div fd-tile-header>\n <h1 fd-tile-title>\n {{ title | bbbTranslate }}\n </h1>\n <h2 fd-tile-subtitle>\n {{ subtitle | bbbTranslate }}\n </h2>\n </div>\n <ng-content></ng-content>\n <ng-container [ngTemplateOutlet]=\"footerTemplate\" *ngIf=\"footerTemplate; else defaultFooter\"></ng-container>\n</fd-tile>\n<ng-template #defaultFooter>\n <bt-footer-tile *ngIf=\"footer\" [settings]=\"footer\"></bt-footer-tile>\n</ng-template>\n<fd-menu #menu>\n <li fd-menu-item>\n <a (click)=\"menu.close(); renameClick.emit()\" fd-menu-interactive>\n <span fd-menu-title>{{ 'Rename' | bbbTranslate }}</span>\n </a>\n </li>\n</fd-menu>\n<bsu-mask *ngIf=\"runningCommand\"></bsu-mask>\n", styles: [":host,fd-tile{display:block}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i3.MenuComponent, selector: "fd-menu", inputs: ["mobile", "disabled", "focusTrapped", "openOnHoverTime", "mobileConfig", "ariaLabel", "ariaLabelledby", "id"], outputs: ["activePath"] }, { kind: "component", type: i3.MenuItemComponent, selector: "li[fd-menu-item]", inputs: ["disabled", "itemId", "submenu"], outputs: ["onSelect"], exportAs: ["fd-menu-item"] }, { kind: "directive", type: i3.MenuInteractiveDirective, selector: "[fd-menu-interactive]" }, { kind: "directive", type: i3.MenuTitleDirective, selector: "[fd-menu-title]" }, { kind: "directive", type: i3.MenuTriggerDirective, selector: "[fdMenuTrigger]", inputs: ["fdMenuTrigger"] }, { kind: "component", type: i4.TileComponent, selector: "fd-tile", inputs: ["class", "size", "double", "type", "action", "clickable"], outputs: ["tileClick"] }, { kind: "directive", type: i4.TileHeaderDirective, selector: "[fdTileHeader], [fd-tile-header]", inputs: ["twoColumn"] }, { kind: "directive", type: i4.TileTitleDirective, selector: "[fdTileTitle], [fd-tile-title]" }, { kind: "directive", type: i4.TileSubtitleDirective, selector: "[fdTileTitle], [fd-tile-subtitle]" }, { kind: "directive", type: i4.TileActionCloseDirective, selector: "[fdTileActionClose], [fd-tile-action-close]", inputs: ["class"] }, { kind: "directive", type: i4.TileActionIndicatorDirective, selector: "[fdTileActionIndicator], [fd-tile-action-indicator]", inputs: ["class"] }, { kind: "component", type: i5.MaskComponent, selector: "bsu-mask", inputs: ["size", "marginTop"] }, { kind: "component", type: i6.FooterTileComponent, selector: "bt-footer-tile", inputs: ["settings"] }, { kind: "pipe", type: i7.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
33
+ TileComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.7", type: TileComponent, selector: "bt-tile", inputs: { type: "type", footerTemplate: "footerTemplate", disableClick: "disableClick" }, host: { listeners: { "click": "onClick($event)" } }, usesInheritance: true, ngImport: i0, template: "<fd-tile [type]=\"type\" [double]=\"double\" [action]=\"editHome\">\r\n <ng-container *ngIf=\"editHome && !data.Locked\">\r\n <button fd-button fd-tile-action-close fdType=\"transparent\" (click)=\"hideClick.emit()\"></button>\r\n <button fd-button fd-tile-action-indicator fdType=\"transparent\" [fdMenuTrigger]=\"menu\"></button>\r\n </ng-container>\r\n <div fd-tile-header>\r\n <h1 fd-tile-title>\r\n {{ title | bbbTranslate }}\r\n </h1>\r\n <h2 fd-tile-subtitle>\r\n {{ subtitle | bbbTranslate }}\r\n </h2>\r\n </div>\r\n <ng-content></ng-content>\r\n <ng-container [ngTemplateOutlet]=\"footerTemplate\" *ngIf=\"footerTemplate; else defaultFooter\"></ng-container>\r\n</fd-tile>\r\n<ng-template #defaultFooter>\r\n <bt-footer-tile *ngIf=\"footer\" [settings]=\"footer\"></bt-footer-tile>\r\n</ng-template>\r\n<fd-menu #menu>\r\n <li fd-menu-item>\r\n <a (click)=\"menu.close(); renameClick.emit()\" fd-menu-interactive>\r\n <span fd-menu-title>{{ 'Rename' | bbbTranslate }}</span>\r\n </a>\r\n </li>\r\n</fd-menu>\r\n<bsu-mask *ngIf=\"runningCommand\"></bsu-mask>\r\n", styles: [":host,fd-tile{display:block}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i3.MenuComponent, selector: "fd-menu", inputs: ["mobile", "disabled", "focusTrapped", "openOnHoverTime", "mobileConfig", "ariaLabel", "ariaLabelledby", "id"], outputs: ["activePath"] }, { kind: "component", type: i3.MenuItemComponent, selector: "li[fd-menu-item]", inputs: ["disabled", "itemId", "submenu"], outputs: ["onSelect"], exportAs: ["fd-menu-item"] }, { kind: "directive", type: i3.MenuInteractiveDirective, selector: "[fd-menu-interactive]" }, { kind: "directive", type: i3.MenuTitleDirective, selector: "[fd-menu-title]" }, { kind: "directive", type: i3.MenuTriggerDirective, selector: "[fdMenuTrigger]", inputs: ["fdMenuTrigger"] }, { kind: "component", type: i4.TileComponent, selector: "fd-tile", inputs: ["class", "size", "double", "type", "action", "clickable"], outputs: ["tileClick"] }, { kind: "directive", type: i4.TileHeaderDirective, selector: "[fdTileHeader], [fd-tile-header]", inputs: ["twoColumn"] }, { kind: "directive", type: i4.TileTitleDirective, selector: "[fdTileTitle], [fd-tile-title]" }, { kind: "directive", type: i4.TileSubtitleDirective, selector: "[fdTileTitle], [fd-tile-subtitle]" }, { kind: "directive", type: i4.TileActionCloseDirective, selector: "[fdTileActionClose], [fd-tile-action-close]", inputs: ["class"] }, { kind: "directive", type: i4.TileActionIndicatorDirective, selector: "[fdTileActionIndicator], [fd-tile-action-indicator]", inputs: ["class"] }, { kind: "component", type: i5.MaskComponent, selector: "bsu-mask", inputs: ["size", "marginTop"] }, { kind: "component", type: i6.FooterTileComponent, selector: "bt-footer-tile", inputs: ["settings"] }, { kind: "pipe", type: i7.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
34
34
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: TileComponent, decorators: [{
35
35
  type: Component,
36
- args: [{ selector: 'bt-tile', changeDetection: ChangeDetectionStrategy.OnPush, template: "<fd-tile [type]=\"type\" [double]=\"double\" [action]=\"editHome\">\n <ng-container *ngIf=\"editHome && !data.Locked\">\n <button fd-button fd-tile-action-close fdType=\"transparent\" (click)=\"hideClick.emit()\"></button>\n <button fd-button fd-tile-action-indicator fdType=\"transparent\" [fdMenuTrigger]=\"menu\"></button>\n </ng-container>\n <div fd-tile-header>\n <h1 fd-tile-title>\n {{ title | bbbTranslate }}\n </h1>\n <h2 fd-tile-subtitle>\n {{ subtitle | bbbTranslate }}\n </h2>\n </div>\n <ng-content></ng-content>\n <ng-container [ngTemplateOutlet]=\"footerTemplate\" *ngIf=\"footerTemplate; else defaultFooter\"></ng-container>\n</fd-tile>\n<ng-template #defaultFooter>\n <bt-footer-tile *ngIf=\"footer\" [settings]=\"footer\"></bt-footer-tile>\n</ng-template>\n<fd-menu #menu>\n <li fd-menu-item>\n <a (click)=\"menu.close(); renameClick.emit()\" fd-menu-interactive>\n <span fd-menu-title>{{ 'Rename' | bbbTranslate }}</span>\n </a>\n </li>\n</fd-menu>\n<bsu-mask *ngIf=\"runningCommand\"></bsu-mask>\n", styles: [":host,fd-tile{display:block}\n"] }]
36
+ args: [{ selector: 'bt-tile', changeDetection: ChangeDetectionStrategy.OnPush, template: "<fd-tile [type]=\"type\" [double]=\"double\" [action]=\"editHome\">\r\n <ng-container *ngIf=\"editHome && !data.Locked\">\r\n <button fd-button fd-tile-action-close fdType=\"transparent\" (click)=\"hideClick.emit()\"></button>\r\n <button fd-button fd-tile-action-indicator fdType=\"transparent\" [fdMenuTrigger]=\"menu\"></button>\r\n </ng-container>\r\n <div fd-tile-header>\r\n <h1 fd-tile-title>\r\n {{ title | bbbTranslate }}\r\n </h1>\r\n <h2 fd-tile-subtitle>\r\n {{ subtitle | bbbTranslate }}\r\n </h2>\r\n </div>\r\n <ng-content></ng-content>\r\n <ng-container [ngTemplateOutlet]=\"footerTemplate\" *ngIf=\"footerTemplate; else defaultFooter\"></ng-container>\r\n</fd-tile>\r\n<ng-template #defaultFooter>\r\n <bt-footer-tile *ngIf=\"footer\" [settings]=\"footer\"></bt-footer-tile>\r\n</ng-template>\r\n<fd-menu #menu>\r\n <li fd-menu-item>\r\n <a (click)=\"menu.close(); renameClick.emit()\" fd-menu-interactive>\r\n <span fd-menu-title>{{ 'Rename' | bbbTranslate }}</span>\r\n </a>\r\n </li>\r\n</fd-menu>\r\n<bsu-mask *ngIf=\"runningCommand\"></bsu-mask>\r\n", styles: [":host,fd-tile{display:block}\n"] }]
37
37
  }], propDecorators: { type: [{
38
38
  type: Input
39
39
  }], footerTemplate: [{
@@ -44,4 +44,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImpor
44
44
  type: HostListener,
45
45
  args: ['click', ['$event']]
46
46
  }] } });
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS10aWxlcy9zcmMvbGliL3RpbGUvdGlsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS10aWxlcy9zcmMvbGliL3RpbGUvdGlsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQWUsTUFBTSxlQUFlLENBQUM7QUFDckcsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRWhELE9BQU8sRUFBRSxpQkFBaUIsRUFBbUIsTUFBTSxXQUFXLENBQUM7Ozs7Ozs7OztBQVEvRCxNQUFNLE9BQU8sYUFBYyxTQUFRLGlCQUFrQztJQU5yRTs7UUFVSSxtQkFBYyxHQUFHLEtBQUssQ0FBQztLQWdCMUI7SUFkRyxPQUFPO1FBQ0gsSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRTtZQUMzRCxPQUFPLEtBQUssQ0FBQztTQUNoQjtRQUNELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDO1FBQ3pDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxJQUFJLEVBQUUsQ0FBQztRQUM1QyxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQztRQUMzQixJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQzFCLFFBQVEsQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsaUJBQWlCLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRSxDQUFDLEVBQUUsR0FBRyxFQUFFO1lBQ3BFLElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDO1lBQzVCLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDOUIsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDOzswR0FuQlEsYUFBYTs4RkFBYixhQUFhLHFOQ1gxQiwrbUNBMkJBOzJGRGhCYSxhQUFhO2tCQU56QixTQUFTOytCQUNJLFNBQVMsbUJBR0YsdUJBQXVCLENBQUMsTUFBTTs4QkFHdEMsSUFBSTtzQkFBWixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFHTixPQUFPO3NCQUROLFlBQVk7dUJBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSG9zdExpc3RlbmVyLCBJbnB1dCwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJhcnNhQXBpIH0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xuXG5pbXBvcnQgeyBCYXNlVGlsZUNvbXBvbmVudCwgQmFzZVRpbGVTZXR0aW5nIH0gZnJvbSAnLi4vbW9kZWxzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdidC10aWxlJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdGlsZS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vdGlsZS5jb21wb25lbnQuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFRpbGVDb21wb25lbnQgZXh0ZW5kcyBCYXNlVGlsZUNvbXBvbmVudDxCYXNlVGlsZVNldHRpbmc+IHtcbiAgICBASW5wdXQoKSB0eXBlOiAnZmVlZCcgfCAnbGF1bmNoJyB8ICdrcGknO1xuICAgIEBJbnB1dCgpIGZvb3RlclRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICAgIEBJbnB1dCgpIGRpc2FibGVDbGljazogYm9vbGVhbjtcbiAgICBydW5uaW5nQ29tbWFuZCA9IGZhbHNlO1xuICAgIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJywgWyckZXZlbnQnXSlcbiAgICBvbkNsaWNrKCk6IGJvb2xlYW4ge1xuICAgICAgICBpZiAodGhpcy5lZGl0SG9tZSB8fCB0aGlzLmRpc2FibGVDbGljayB8fCB0aGlzLnJ1bm5pbmdDb21tYW5kKSB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgY29tbWFuZCA9IHRoaXMuZGF0YS5EeW5hbWljQ29tbWFuZDtcbiAgICAgICAgY29uc3QgZSA9IHsgY29tbWFuZCwgRHluYW1pY1NldHRpbmc6IG51bGwgfTtcbiAgICAgICAgdGhpcy5ydW5uaW5nQ29tbWFuZCA9IHRydWU7XG4gICAgICAgIHRoaXMuX2Nkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgIEJhcnNhQXBpLkNvbW1vbi5DdXN0b21Db2RlTWFuYWdlci5SdW5EeW5hbWljQ29tbWFuZChjb21tYW5kLklkLCBlLCAoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnJ1bm5pbmdDb21tYW5kID0gZmFsc2U7XG4gICAgICAgICAgICB0aGlzLl9jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbn1cbiIsIjxmZC10aWxlIFt0eXBlXT1cInR5cGVcIiBbZG91YmxlXT1cImRvdWJsZVwiIFthY3Rpb25dPVwiZWRpdEhvbWVcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZWRpdEhvbWUgJiYgIWRhdGEuTG9ja2VkXCI+XG4gICAgICAgIDxidXR0b24gZmQtYnV0dG9uIGZkLXRpbGUtYWN0aW9uLWNsb3NlIGZkVHlwZT1cInRyYW5zcGFyZW50XCIgKGNsaWNrKT1cImhpZGVDbGljay5lbWl0KClcIj48L2J1dHRvbj5cbiAgICAgICAgPGJ1dHRvbiBmZC1idXR0b24gZmQtdGlsZS1hY3Rpb24taW5kaWNhdG9yIGZkVHlwZT1cInRyYW5zcGFyZW50XCIgW2ZkTWVudVRyaWdnZXJdPVwibWVudVwiPjwvYnV0dG9uPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxkaXYgZmQtdGlsZS1oZWFkZXI+XG4gICAgICAgIDxoMSBmZC10aWxlLXRpdGxlPlxuICAgICAgICAgICAge3sgdGl0bGUgfCBiYmJUcmFuc2xhdGUgfX1cbiAgICAgICAgPC9oMT5cbiAgICAgICAgPGgyIGZkLXRpbGUtc3VidGl0bGU+XG4gICAgICAgICAgICB7eyBzdWJ0aXRsZSB8IGJiYlRyYW5zbGF0ZSB9fVxuICAgICAgICA8L2gyPlxuICAgIDwvZGl2PlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImZvb3RlclRlbXBsYXRlXCIgKm5nSWY9XCJmb290ZXJUZW1wbGF0ZTsgZWxzZSBkZWZhdWx0Rm9vdGVyXCI+PC9uZy1jb250YWluZXI+XG48L2ZkLXRpbGU+XG48bmctdGVtcGxhdGUgI2RlZmF1bHRGb290ZXI+XG4gICAgPGJ0LWZvb3Rlci10aWxlICpuZ0lmPVwiZm9vdGVyXCIgW3NldHRpbmdzXT1cImZvb3RlclwiPjwvYnQtZm9vdGVyLXRpbGU+XG48L25nLXRlbXBsYXRlPlxuPGZkLW1lbnUgI21lbnU+XG4gICAgPGxpIGZkLW1lbnUtaXRlbT5cbiAgICAgICAgPGEgKGNsaWNrKT1cIm1lbnUuY2xvc2UoKTsgcmVuYW1lQ2xpY2suZW1pdCgpXCIgZmQtbWVudS1pbnRlcmFjdGl2ZT5cbiAgICAgICAgICAgIDxzcGFuIGZkLW1lbnUtdGl0bGU+e3sgJ1JlbmFtZScgfCBiYmJUcmFuc2xhdGUgfX08L3NwYW4+XG4gICAgICAgIDwvYT5cbiAgICA8L2xpPlxuPC9mZC1tZW51PlxuPGJzdS1tYXNrICpuZ0lmPVwicnVubmluZ0NvbW1hbmRcIj48L2JzdS1tYXNrPlxuIl19
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS10aWxlcy9zcmMvbGliL3RpbGUvdGlsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS10aWxlcy9zcmMvbGliL3RpbGUvdGlsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQWUsTUFBTSxlQUFlLENBQUM7QUFDckcsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRWhELE9BQU8sRUFBRSxpQkFBaUIsRUFBbUIsTUFBTSxXQUFXLENBQUM7Ozs7Ozs7OztBQVEvRCxNQUFNLE9BQU8sYUFBYyxTQUFRLGlCQUFrQztJQU5yRTs7UUFVSSxtQkFBYyxHQUFHLEtBQUssQ0FBQztLQWdCMUI7SUFkRyxPQUFPO1FBQ0gsSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRTtZQUMzRCxPQUFPLEtBQUssQ0FBQztTQUNoQjtRQUNELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDO1FBQ3pDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxJQUFJLEVBQUUsQ0FBQztRQUM1QyxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQztRQUMzQixJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQzFCLFFBQVEsQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsaUJBQWlCLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRSxDQUFDLEVBQUUsR0FBRyxFQUFFO1lBQ3BFLElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDO1lBQzVCLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDOUIsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDOzswR0FuQlEsYUFBYTs4RkFBYixhQUFhLHFOQ1gxQixxcUNBMkJBOzJGRGhCYSxhQUFhO2tCQU56QixTQUFTOytCQUNJLFNBQVMsbUJBR0YsdUJBQXVCLENBQUMsTUFBTTs4QkFHdEMsSUFBSTtzQkFBWixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFHTixPQUFPO3NCQUROLFlBQVk7dUJBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSG9zdExpc3RlbmVyLCBJbnB1dCwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQmFyc2FBcGkgfSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XHJcblxyXG5pbXBvcnQgeyBCYXNlVGlsZUNvbXBvbmVudCwgQmFzZVRpbGVTZXR0aW5nIH0gZnJvbSAnLi4vbW9kZWxzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdidC10aWxlJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi90aWxlLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL3RpbGUuY29tcG9uZW50LnNjc3MnXSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUaWxlQ29tcG9uZW50IGV4dGVuZHMgQmFzZVRpbGVDb21wb25lbnQ8QmFzZVRpbGVTZXR0aW5nPiB7XHJcbiAgICBASW5wdXQoKSB0eXBlOiAnZmVlZCcgfCAnbGF1bmNoJyB8ICdrcGknO1xyXG4gICAgQElucHV0KCkgZm9vdGVyVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgICBASW5wdXQoKSBkaXNhYmxlQ2xpY2s6IGJvb2xlYW47XHJcbiAgICBydW5uaW5nQ29tbWFuZCA9IGZhbHNlO1xyXG4gICAgQEhvc3RMaXN0ZW5lcignY2xpY2snLCBbJyRldmVudCddKVxyXG4gICAgb25DbGljaygpOiBib29sZWFuIHtcclxuICAgICAgICBpZiAodGhpcy5lZGl0SG9tZSB8fCB0aGlzLmRpc2FibGVDbGljayB8fCB0aGlzLnJ1bm5pbmdDb21tYW5kKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29uc3QgY29tbWFuZCA9IHRoaXMuZGF0YS5EeW5hbWljQ29tbWFuZDtcclxuICAgICAgICBjb25zdCBlID0geyBjb21tYW5kLCBEeW5hbWljU2V0dGluZzogbnVsbCB9O1xyXG4gICAgICAgIHRoaXMucnVubmluZ0NvbW1hbmQgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMuX2Nkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgQmFyc2FBcGkuQ29tbW9uLkN1c3RvbUNvZGVNYW5hZ2VyLlJ1bkR5bmFtaWNDb21tYW5kKGNvbW1hbmQuSWQsIGUsICgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5ydW5uaW5nQ29tbWFuZCA9IGZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLl9jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxufVxyXG4iLCI8ZmQtdGlsZSBbdHlwZV09XCJ0eXBlXCIgW2RvdWJsZV09XCJkb3VibGVcIiBbYWN0aW9uXT1cImVkaXRIb21lXCI+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZWRpdEhvbWUgJiYgIWRhdGEuTG9ja2VkXCI+XHJcbiAgICAgICAgPGJ1dHRvbiBmZC1idXR0b24gZmQtdGlsZS1hY3Rpb24tY2xvc2UgZmRUeXBlPVwidHJhbnNwYXJlbnRcIiAoY2xpY2spPVwiaGlkZUNsaWNrLmVtaXQoKVwiPjwvYnV0dG9uPlxyXG4gICAgICAgIDxidXR0b24gZmQtYnV0dG9uIGZkLXRpbGUtYWN0aW9uLWluZGljYXRvciBmZFR5cGU9XCJ0cmFuc3BhcmVudFwiIFtmZE1lbnVUcmlnZ2VyXT1cIm1lbnVcIj48L2J1dHRvbj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPGRpdiBmZC10aWxlLWhlYWRlcj5cclxuICAgICAgICA8aDEgZmQtdGlsZS10aXRsZT5cclxuICAgICAgICAgICAge3sgdGl0bGUgfCBiYmJUcmFuc2xhdGUgfX1cclxuICAgICAgICA8L2gxPlxyXG4gICAgICAgIDxoMiBmZC10aWxlLXN1YnRpdGxlPlxyXG4gICAgICAgICAgICB7eyBzdWJ0aXRsZSB8IGJiYlRyYW5zbGF0ZSB9fVxyXG4gICAgICAgIDwvaDI+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiZm9vdGVyVGVtcGxhdGVcIiAqbmdJZj1cImZvb3RlclRlbXBsYXRlOyBlbHNlIGRlZmF1bHRGb290ZXJcIj48L25nLWNvbnRhaW5lcj5cclxuPC9mZC10aWxlPlxyXG48bmctdGVtcGxhdGUgI2RlZmF1bHRGb290ZXI+XHJcbiAgICA8YnQtZm9vdGVyLXRpbGUgKm5nSWY9XCJmb290ZXJcIiBbc2V0dGluZ3NdPVwiZm9vdGVyXCI+PC9idC1mb290ZXItdGlsZT5cclxuPC9uZy10ZW1wbGF0ZT5cclxuPGZkLW1lbnUgI21lbnU+XHJcbiAgICA8bGkgZmQtbWVudS1pdGVtPlxyXG4gICAgICAgIDxhIChjbGljayk9XCJtZW51LmNsb3NlKCk7IHJlbmFtZUNsaWNrLmVtaXQoKVwiIGZkLW1lbnUtaW50ZXJhY3RpdmU+XHJcbiAgICAgICAgICAgIDxzcGFuIGZkLW1lbnUtdGl0bGU+e3sgJ1JlbmFtZScgfCBiYmJUcmFuc2xhdGUgfX08L3NwYW4+XHJcbiAgICAgICAgPC9hPlxyXG4gICAgPC9saT5cclxuPC9mZC1tZW51PlxyXG48YnN1LW1hc2sgKm5nSWY9XCJydW5uaW5nQ29tbWFuZFwiPjwvYnN1LW1hc2s+XHJcbiJdfQ==
@@ -66,4 +66,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImpor
66
66
  }], renameClick: [{
67
67
  type: Output
68
68
  }] } });
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlsZS1yZW5kZXJlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS10aWxlcy9zcmMvbGliL3RpbGUtcmVuZGVyZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFHSCxTQUFTLEVBQ1QsWUFBWSxFQUVaLEtBQUssRUFJTCxNQUFNLEVBR1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGFBQWEsRUFBaUIsTUFBTSxzQkFBc0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQU0zQyxNQUFNLE9BQU8scUJBQXNCLFNBQVEsYUFBYTtJQVlwRCxZQUNZLElBQXVCLEVBQ3ZCLGNBQTZCLEVBQzdCLElBQXNCLEVBQ3RCLFNBQW1CO1FBRTNCLEtBQUssRUFBRSxDQUFDO1FBTEEsU0FBSSxHQUFKLElBQUksQ0FBbUI7UUFDdkIsbUJBQWMsR0FBZCxjQUFjLENBQWU7UUFDN0IsU0FBSSxHQUFKLElBQUksQ0FBa0I7UUFDdEIsY0FBUyxHQUFULFNBQVMsQ0FBVTtRQVByQixjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUMvQixnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7SUFTM0MsQ0FBQztJQUVELFFBQVE7UUFDSixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDakIsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDakIsT0FBTztTQUNWO1FBQ0QsTUFBTSxFQUFFLE1BQU0sRUFBRSxjQUFjLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDbEUsSUFBSSxDQUFDLGNBQWM7YUFDZCxZQUFZLENBQUMsTUFBTSxFQUFFLGNBQWMsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUM7YUFDcEUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7YUFDakMsU0FBUyxDQUFDLENBQUMsWUFBOEQsRUFBRSxFQUFFO1lBQzFFLE1BQU0sUUFBUSxHQUFHLFlBQVksQ0FBQyxRQUFRLENBQUM7WUFDdkMsUUFBUSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQzFCLFFBQVEsQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQztZQUNsQyxRQUFRLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtnQkFDaEUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUMxQixDQUFDLENBQUMsQ0FBQztZQUNILFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQ2hHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUN4QyxJQUFJLENBQUMsUUFBUSxHQUFHLFlBQVksQ0FBQztZQUM3QixJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQzlCLENBQUMsQ0FBQyxDQUFDO0lBQ1gsQ0FBQztJQUNELFdBQVcsQ0FBQyxPQUFzQjtRQUM5QixNQUFNLEVBQUUsUUFBUSxFQUFFLEdBQUcsT0FBTyxDQUFDO1FBQzdCLElBQUksUUFBUSxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBRTtZQUNuQyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxDQUFDO1NBQzdEO0lBQ0wsQ0FBQztJQUNELFdBQVc7UUFDUCxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDcEIsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsQ0FBQztTQUMzQjtJQUNMLENBQUM7O2tIQXREUSxxQkFBcUI7c0dBQXJCLHFCQUFxQjsyRkFBckIscUJBQXFCO2tCQUhqQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxnQkFBZ0I7aUJBQzdCOzBMQUVZLFNBQVM7c0JBQWpCLEtBQUs7Z0JBTUcsSUFBSTtzQkFBWixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0ksU0FBUztzQkFBbEIsTUFBTTtnQkFDRyxXQUFXO3NCQUFwQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnRSZWYsXG4gICAgRGlyZWN0aXZlLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBJbmplY3RvcixcbiAgICBJbnB1dCxcbiAgICBPbkNoYW5nZXMsXG4gICAgT25EZXN0cm95LFxuICAgIE9uSW5pdCxcbiAgICBPdXRwdXQsXG4gICAgU2ltcGxlQ2hhbmdlcyxcbiAgICBWaWV3Q29udGFpbmVyUmVmXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmFzZURpcmVjdGl2ZSwgUG9ydGFsU2VydmljZSB9IGZyb20gJ2JhcnNhLW5vdmluLXJheS1jb3JlJztcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEJhc2VUaWxlQ29tcG9uZW50LCBCYXNlVGlsZVNldHRpbmcgfSBmcm9tICcuL21vZGVscyc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW3RpbGVSZW5kZXJlcl0nXG59KVxuZXhwb3J0IGNsYXNzIFRpbGVSZW5kZXJlckRpcmVjdGl2ZSBleHRlbmRzIEJhc2VEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcbiAgICBASW5wdXQoKSBjb21wb25lbnQ6IHtcbiAgICAgICAgTW9kdWxlOiBzdHJpbmc7XG4gICAgICAgIE1vZHVsZUZpbGVOYW1lOiBzdHJpbmc7XG4gICAgICAgIE5hbWU6IHN0cmluZztcbiAgICAgICAgU2VsZWN0b3I6IHN0cmluZztcbiAgICB9O1xuICAgIEBJbnB1dCgpIGRhdGE6IEJhc2VUaWxlU2V0dGluZztcbiAgICBASW5wdXQoKSBlZGl0SG9tZTogYm9vbGVhbjtcbiAgICBAT3V0cHV0KCkgaGlkZUNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICAgIEBPdXRwdXQoKSByZW5hbWVDbGljayA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgICBwcml2YXRlIF90aWxlUmVmOiBDb21wb25lbnRSZWY8QmFzZVRpbGVDb21wb25lbnQ8QmFzZVRpbGVTZXR0aW5nPj47XG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgX2NkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIHByaXZhdGUgX3BvcnRhbFNlcnZpY2U6IFBvcnRhbFNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgX3ZjcjogVmlld0NvbnRhaW5lclJlZixcbiAgICAgICAgcHJpdmF0ZSBfaW5qZWN0b3I6IEluamVjdG9yXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgICAgIGlmICghdGhpcy5jb21wb25lbnQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCB7IE1vZHVsZSwgTW9kdWxlRmlsZU5hbWUsIE5hbWUsIFNlbGVjdG9yIH0gPSB0aGlzLmNvbXBvbmVudDtcbiAgICAgICAgdGhpcy5fcG9ydGFsU2VydmljZVxuICAgICAgICAgICAgLmdldENvbXBvbmVudChNb2R1bGUsIE1vZHVsZUZpbGVOYW1lLCBOYW1lLCBTZWxlY3RvciwgdGhpcy5faW5qZWN0b3IpXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChjb21wb25lbnRSZWY6IENvbXBvbmVudFJlZjxCYXNlVGlsZUNvbXBvbmVudDxCYXNlVGlsZVNldHRpbmc+PikgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGluc3RhbmNlID0gY29tcG9uZW50UmVmLmluc3RhbmNlO1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLmRhdGEgPSB0aGlzLmRhdGE7XG4gICAgICAgICAgICAgICAgaW5zdGFuY2UuZWRpdEhvbWUgPSB0aGlzLmVkaXRIb21lO1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLmhpZGVDbGljay5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5oaWRlQ2xpY2suZW1pdCgpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIGluc3RhbmNlLnJlbmFtZUNsaWNrLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5yZW5hbWVDbGljay5lbWl0KCkpO1xuICAgICAgICAgICAgICAgIHRoaXMuX3Zjci5pbnNlcnQoY29tcG9uZW50UmVmLmhvc3RWaWV3KTtcbiAgICAgICAgICAgICAgICB0aGlzLl90aWxlUmVmID0gY29tcG9uZW50UmVmO1xuICAgICAgICAgICAgICAgIHRoaXMuX2Nkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgICAgICBjb25zdCB7IGVkaXRIb21lIH0gPSBjaGFuZ2VzO1xuICAgICAgICBpZiAoZWRpdEhvbWUgJiYgIWVkaXRIb21lLmZpcnN0Q2hhbmdlKSB7XG4gICAgICAgICAgICB0aGlzLl90aWxlUmVmLmluc3RhbmNlLnNldEVkaXRIb21lKGVkaXRIb21lLmN1cnJlbnRWYWx1ZSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgICAgIGlmICh0aGlzLl90aWxlUmVmKSB7XG4gICAgICAgICAgICB0aGlzLl90aWxlUmVmLmRlc3Ryb3koKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlsZS1yZW5kZXJlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS10aWxlcy9zcmMvbGliL3RpbGUtcmVuZGVyZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFHSCxTQUFTLEVBQ1QsWUFBWSxFQUVaLEtBQUssRUFJTCxNQUFNLEVBR1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGFBQWEsRUFBaUIsTUFBTSxzQkFBc0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQU0zQyxNQUFNLE9BQU8scUJBQXNCLFNBQVEsYUFBYTtJQVlwRCxZQUNZLElBQXVCLEVBQ3ZCLGNBQTZCLEVBQzdCLElBQXNCLEVBQ3RCLFNBQW1CO1FBRTNCLEtBQUssRUFBRSxDQUFDO1FBTEEsU0FBSSxHQUFKLElBQUksQ0FBbUI7UUFDdkIsbUJBQWMsR0FBZCxjQUFjLENBQWU7UUFDN0IsU0FBSSxHQUFKLElBQUksQ0FBa0I7UUFDdEIsY0FBUyxHQUFULFNBQVMsQ0FBVTtRQVByQixjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUMvQixnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7SUFTM0MsQ0FBQztJQUVELFFBQVE7UUFDSixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDakIsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDakIsT0FBTztTQUNWO1FBQ0QsTUFBTSxFQUFFLE1BQU0sRUFBRSxjQUFjLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDbEUsSUFBSSxDQUFDLGNBQWM7YUFDZCxZQUFZLENBQUMsTUFBTSxFQUFFLGNBQWMsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUM7YUFDcEUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7YUFDakMsU0FBUyxDQUFDLENBQUMsWUFBOEQsRUFBRSxFQUFFO1lBQzFFLE1BQU0sUUFBUSxHQUFHLFlBQVksQ0FBQyxRQUFRLENBQUM7WUFDdkMsUUFBUSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQzFCLFFBQVEsQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQztZQUNsQyxRQUFRLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtnQkFDaEUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUMxQixDQUFDLENBQUMsQ0FBQztZQUNILFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQ2hHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUN4QyxJQUFJLENBQUMsUUFBUSxHQUFHLFlBQVksQ0FBQztZQUM3QixJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQzlCLENBQUMsQ0FBQyxDQUFDO0lBQ1gsQ0FBQztJQUNELFdBQVcsQ0FBQyxPQUFzQjtRQUM5QixNQUFNLEVBQUUsUUFBUSxFQUFFLEdBQUcsT0FBTyxDQUFDO1FBQzdCLElBQUksUUFBUSxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBRTtZQUNuQyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxDQUFDO1NBQzdEO0lBQ0wsQ0FBQztJQUNELFdBQVc7UUFDUCxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDcEIsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsQ0FBQztTQUMzQjtJQUNMLENBQUM7O2tIQXREUSxxQkFBcUI7c0dBQXJCLHFCQUFxQjsyRkFBckIscUJBQXFCO2tCQUhqQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxnQkFBZ0I7aUJBQzdCOzBMQUVZLFNBQVM7c0JBQWpCLEtBQUs7Z0JBTUcsSUFBSTtzQkFBWixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0ksU0FBUztzQkFBbEIsTUFBTTtnQkFDRyxXQUFXO3NCQUFwQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICAgIENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgQ29tcG9uZW50UmVmLFxyXG4gICAgRGlyZWN0aXZlLFxyXG4gICAgRXZlbnRFbWl0dGVyLFxyXG4gICAgSW5qZWN0b3IsXHJcbiAgICBJbnB1dCxcclxuICAgIE9uQ2hhbmdlcyxcclxuICAgIE9uRGVzdHJveSxcclxuICAgIE9uSW5pdCxcclxuICAgIE91dHB1dCxcclxuICAgIFNpbXBsZUNoYW5nZXMsXHJcbiAgICBWaWV3Q29udGFpbmVyUmVmXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEJhc2VEaXJlY3RpdmUsIFBvcnRhbFNlcnZpY2UgfSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XHJcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgQmFzZVRpbGVDb21wb25lbnQsIEJhc2VUaWxlU2V0dGluZyB9IGZyb20gJy4vbW9kZWxzJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gICAgc2VsZWN0b3I6ICdbdGlsZVJlbmRlcmVyXSdcclxufSlcclxuZXhwb3J0IGNsYXNzIFRpbGVSZW5kZXJlckRpcmVjdGl2ZSBleHRlbmRzIEJhc2VEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcclxuICAgIEBJbnB1dCgpIGNvbXBvbmVudDoge1xyXG4gICAgICAgIE1vZHVsZTogc3RyaW5nO1xyXG4gICAgICAgIE1vZHVsZUZpbGVOYW1lOiBzdHJpbmc7XHJcbiAgICAgICAgTmFtZTogc3RyaW5nO1xyXG4gICAgICAgIFNlbGVjdG9yOiBzdHJpbmc7XHJcbiAgICB9O1xyXG4gICAgQElucHV0KCkgZGF0YTogQmFzZVRpbGVTZXR0aW5nO1xyXG4gICAgQElucHV0KCkgZWRpdEhvbWU6IGJvb2xlYW47XHJcbiAgICBAT3V0cHV0KCkgaGlkZUNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gICAgQE91dHB1dCgpIHJlbmFtZUNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gICAgcHJpdmF0ZSBfdGlsZVJlZjogQ29tcG9uZW50UmVmPEJhc2VUaWxlQ29tcG9uZW50PEJhc2VUaWxlU2V0dGluZz4+O1xyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJpdmF0ZSBfY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgICAgICBwcml2YXRlIF9wb3J0YWxTZXJ2aWNlOiBQb3J0YWxTZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgX3ZjcjogVmlld0NvbnRhaW5lclJlZixcclxuICAgICAgICBwcml2YXRlIF9pbmplY3RvcjogSW5qZWN0b3JcclxuICAgICkge1xyXG4gICAgICAgIHN1cGVyKCk7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcclxuICAgICAgICBpZiAoIXRoaXMuY29tcG9uZW50KSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29uc3QgeyBNb2R1bGUsIE1vZHVsZUZpbGVOYW1lLCBOYW1lLCBTZWxlY3RvciB9ID0gdGhpcy5jb21wb25lbnQ7XHJcbiAgICAgICAgdGhpcy5fcG9ydGFsU2VydmljZVxyXG4gICAgICAgICAgICAuZ2V0Q29tcG9uZW50KE1vZHVsZSwgTW9kdWxlRmlsZU5hbWUsIE5hbWUsIFNlbGVjdG9yLCB0aGlzLl9pbmplY3RvcilcclxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKVxyXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChjb21wb25lbnRSZWY6IENvbXBvbmVudFJlZjxCYXNlVGlsZUNvbXBvbmVudDxCYXNlVGlsZVNldHRpbmc+PikgPT4ge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgaW5zdGFuY2UgPSBjb21wb25lbnRSZWYuaW5zdGFuY2U7XHJcbiAgICAgICAgICAgICAgICBpbnN0YW5jZS5kYXRhID0gdGhpcy5kYXRhO1xyXG4gICAgICAgICAgICAgICAgaW5zdGFuY2UuZWRpdEhvbWUgPSB0aGlzLmVkaXRIb21lO1xyXG4gICAgICAgICAgICAgICAgaW5zdGFuY2UuaGlkZUNsaWNrLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaGlkZUNsaWNrLmVtaXQoKTtcclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgaW5zdGFuY2UucmVuYW1lQ2xpY2sucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCkpLnN1YnNjcmliZSgoKSA9PiB0aGlzLnJlbmFtZUNsaWNrLmVtaXQoKSk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLl92Y3IuaW5zZXJ0KGNvbXBvbmVudFJlZi5ob3N0Vmlldyk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLl90aWxlUmVmID0gY29tcG9uZW50UmVmO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICAgICAgY29uc3QgeyBlZGl0SG9tZSB9ID0gY2hhbmdlcztcclxuICAgICAgICBpZiAoZWRpdEhvbWUgJiYgIWVkaXRIb21lLmZpcnN0Q2hhbmdlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX3RpbGVSZWYuaW5zdGFuY2Uuc2V0RWRpdEhvbWUoZWRpdEhvbWUuY3VycmVudFZhbHVlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgICAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xyXG4gICAgICAgIGlmICh0aGlzLl90aWxlUmVmKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX3RpbGVSZWYuZGVzdHJveSgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iXX0=