ctt-puro 0.70.7 → 0.70.9

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.
@@ -5,7 +5,7 @@ import { PuroDynamicHeadingComponent } from '../../shared/puro-dynamic-heading';
5
5
  import * as i0 from "@angular/core";
6
6
  export class PuroGrid3colSliderComponent {
7
7
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroGrid3colSliderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
8
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroGrid3colSliderComponent, isStandalone: true, selector: "lib-puro-grid3col-slider", inputs: { title: "title", button: "button", items: "items", tags: "tags", textColors: "textColors" }, ngImport: i0, template: "<section\n class=\"discover discover--noRadius js-active-slider generalMargin\"\n [puroSlider]=\"items\"\n data-slides_infinite=\"true\"\n data-slider_name=\"js-discover-slider\"\n data-slider_showbtns=\"true\"\n data-slider_showdots=\"false\"\n data-slider_fade=\"false\"\n data-slider_autoplay=\"true\"\n data-slides_pc=\"3\"\n data-slides_laptop=\"3\"\n data-slides_tablet=\"1\"\n data-slides_mobile=\"1\"\n data-slides_mobile_small=\"1\"\n data-slides_mobile_xsmall=\"1\"\n>\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"discover__title\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n <div class=\"discover__inner relative\">\n <div class=\"discover__container\">\n <div\n class=\"js-discover-slider discover__slider js-slider_fix-arrows\"\n >\n @for (item of items || []; track $index) {\n @if (item) {\n <div class=\"discover__box\">\n <a\n [href]=\"item.button?.url\"\n [linkType]=\"item.button?.linkType\"\n class=\"discover__graphic js-slider_fix-arrows-zone\"\n [attr.aria-label]=\"\n item.button?.label ?? 'Item link'\n \"\n >\n @if (item.img) {\n <img\n [src]=\"item.img.src\"\n width=\"391\"\n height=\"533\"\n class=\"discover__graphic--img\"\n [alt]=\"item.img.alt\"\n loading=\"lazy\"\n />\n }\n\n <div class=\"discover__content\">\n @if (item.pretitle) {\n <p class=\"discover__subHeading photo\">\n {{ item.pretitle }}\n </p>\n }\n @if (item.title) {\n <h3\n class=\"discover__heading photo\"\n [innerHTML]=\"item.title\"\n ></h3>\n }\n </div>\n </a>\n\n @if (item.button) {\n <div class=\"btn__group\">\n <a\n class=\"btn__link\"\n [linkType]=\"item.button?.linkType\"\n [href]=\"item.button?.url\"\n [attr.aria-label]=\"\n item.button.label ?? 'Item button'\n \"\n >\n <span>{{ item.button.label }}</span>\n </a>\n </div>\n }\n </div>\n }\n }\n </div>\n <div class=\"js-slider-arrows\"></div>\n @if (button) {\n <div class=\"btn__group\">\n <a\n [linkType]=\"button.linkType\"\n [href]=\"button.url\"\n class=\"btn btn__primary--outline\"\n [attr.aria-label]=\"button.label\"\n ><span>{{ button.label }}</span></a\n >\n </div>\n }\n </div>\n </div>\n</section>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: PuroSliderDirective, selector: "[puroSlider]", inputs: ["puroSlider"] }, { kind: "directive", type: PuroLinkTypeDirective, selector: "[linkType]", inputs: ["linkType", "href", "modalClick"], outputs: ["bookClick", "anchorClicked"] }, { kind: "directive", type: AutoImageZoomWrapperDirective, selector: "img[src]" }, { kind: "component", type: PuroDynamicHeadingComponent, selector: "lib-puro-dynamic-heading", inputs: ["tag", "wrapper", "cssClass", "content", "color"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
8
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroGrid3colSliderComponent, isStandalone: true, selector: "lib-puro-grid3col-slider", inputs: { title: "title", button: "button", items: "items", tags: "tags", textColors: "textColors" }, ngImport: i0, template: "<section\n class=\"discover discover--noRadius js-active-slider generalMargin\"\n [puroSlider]=\"items\"\n data-slides_infinite=\"true\"\n data-slider_name=\"js-discover-slider\"\n data-slider_showbtns=\"true\"\n data-slider_showdots=\"false\"\n data-slider_fade=\"false\"\n data-slider_autoplay=\"true\"\n data-slides_pc=\"3\"\n data-slides_laptop=\"3\"\n data-slides_tablet=\"1\"\n data-slides_mobile=\"1\"\n data-slides_mobile_small=\"1\"\n data-slides_mobile_xsmall=\"1\"\n>\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"discover__title\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n <div class=\"discover__inner relative\">\n <div class=\"discover__container\">\n <div\n class=\"js-discover-slider discover__slider js-slider_fix-arrows\"\n >\n @for (item of items || []; track $index) {\n @if (item) {\n <div class=\"discover__box\">\n <a\n [href]=\"item.button?.url\"\n [linkType]=\"item.button?.linkType\"\n class=\"discover__graphic js-slider_fix-arrows-zone\"\n [attr.aria-label]=\"\n item.button?.label ?? 'Item link'\n \"\n >\n @if (item.img) {\n <img\n [src]=\"item.img.src\"\n width=\"391\"\n height=\"533\"\n class=\"discover__graphic--img\"\n [alt]=\"item.img.alt\"\n loading=\"lazy\"\n />\n }\n\n <div class=\"discover__content\"> \n @if (item.title) {\n <h3\n class=\"discover__heading photo\"\n [innerHTML]=\"item.title\"\n \n ></h3>\n }\n @if (item.pretitle) {\n <p class=\"discover__subHeading photo\">\n {{ item.pretitle }}\n </p>\n }\n \n </div>\n </a>\n\n @if (item.button) {\n <div class=\"btn__group\">\n <a\n class=\"btn__link\"\n [linkType]=\"item.button?.linkType\"\n [href]=\"item.button?.url\"\n [attr.aria-label]=\"\n item.button.label ?? 'Item button'\n \"\n >\n <span>{{ item.button.label }}</span>\n </a>\n </div>\n }\n </div>\n }\n }\n </div>\n <div class=\"js-slider-arrows\"></div>\n @if (button) {\n <div class=\"btn__group\">\n <a\n [linkType]=\"button.linkType\"\n [href]=\"button.url\"\n class=\"btn btn__primary--outline\"\n [attr.aria-label]=\"button.label\"\n ><span>{{ button.label }}</span></a\n >\n </div>\n }\n </div>\n </div>\n</section>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: PuroSliderDirective, selector: "[puroSlider]", inputs: ["puroSlider"] }, { kind: "directive", type: PuroLinkTypeDirective, selector: "[linkType]", inputs: ["linkType", "href", "modalClick"], outputs: ["bookClick", "anchorClicked"] }, { kind: "directive", type: AutoImageZoomWrapperDirective, selector: "img[src]" }, { kind: "component", type: PuroDynamicHeadingComponent, selector: "lib-puro-dynamic-heading", inputs: ["tag", "wrapper", "cssClass", "content", "color"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
9
9
  }
10
10
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroGrid3colSliderComponent, decorators: [{
11
11
  type: Component,
@@ -15,7 +15,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
15
15
  PuroLinkTypeDirective,
16
16
  AutoImageZoomWrapperDirective,
17
17
  PuroDynamicHeadingComponent,
18
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<section\n class=\"discover discover--noRadius js-active-slider generalMargin\"\n [puroSlider]=\"items\"\n data-slides_infinite=\"true\"\n data-slider_name=\"js-discover-slider\"\n data-slider_showbtns=\"true\"\n data-slider_showdots=\"false\"\n data-slider_fade=\"false\"\n data-slider_autoplay=\"true\"\n data-slides_pc=\"3\"\n data-slides_laptop=\"3\"\n data-slides_tablet=\"1\"\n data-slides_mobile=\"1\"\n data-slides_mobile_small=\"1\"\n data-slides_mobile_xsmall=\"1\"\n>\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"discover__title\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n <div class=\"discover__inner relative\">\n <div class=\"discover__container\">\n <div\n class=\"js-discover-slider discover__slider js-slider_fix-arrows\"\n >\n @for (item of items || []; track $index) {\n @if (item) {\n <div class=\"discover__box\">\n <a\n [href]=\"item.button?.url\"\n [linkType]=\"item.button?.linkType\"\n class=\"discover__graphic js-slider_fix-arrows-zone\"\n [attr.aria-label]=\"\n item.button?.label ?? 'Item link'\n \"\n >\n @if (item.img) {\n <img\n [src]=\"item.img.src\"\n width=\"391\"\n height=\"533\"\n class=\"discover__graphic--img\"\n [alt]=\"item.img.alt\"\n loading=\"lazy\"\n />\n }\n\n <div class=\"discover__content\">\n @if (item.pretitle) {\n <p class=\"discover__subHeading photo\">\n {{ item.pretitle }}\n </p>\n }\n @if (item.title) {\n <h3\n class=\"discover__heading photo\"\n [innerHTML]=\"item.title\"\n ></h3>\n }\n </div>\n </a>\n\n @if (item.button) {\n <div class=\"btn__group\">\n <a\n class=\"btn__link\"\n [linkType]=\"item.button?.linkType\"\n [href]=\"item.button?.url\"\n [attr.aria-label]=\"\n item.button.label ?? 'Item button'\n \"\n >\n <span>{{ item.button.label }}</span>\n </a>\n </div>\n }\n </div>\n }\n }\n </div>\n <div class=\"js-slider-arrows\"></div>\n @if (button) {\n <div class=\"btn__group\">\n <a\n [linkType]=\"button.linkType\"\n [href]=\"button.url\"\n class=\"btn btn__primary--outline\"\n [attr.aria-label]=\"button.label\"\n ><span>{{ button.label }}</span></a\n >\n </div>\n }\n </div>\n </div>\n</section>\n" }]
18
+ ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<section\n class=\"discover discover--noRadius js-active-slider generalMargin\"\n [puroSlider]=\"items\"\n data-slides_infinite=\"true\"\n data-slider_name=\"js-discover-slider\"\n data-slider_showbtns=\"true\"\n data-slider_showdots=\"false\"\n data-slider_fade=\"false\"\n data-slider_autoplay=\"true\"\n data-slides_pc=\"3\"\n data-slides_laptop=\"3\"\n data-slides_tablet=\"1\"\n data-slides_mobile=\"1\"\n data-slides_mobile_small=\"1\"\n data-slides_mobile_xsmall=\"1\"\n>\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"discover__title\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n <div class=\"discover__inner relative\">\n <div class=\"discover__container\">\n <div\n class=\"js-discover-slider discover__slider js-slider_fix-arrows\"\n >\n @for (item of items || []; track $index) {\n @if (item) {\n <div class=\"discover__box\">\n <a\n [href]=\"item.button?.url\"\n [linkType]=\"item.button?.linkType\"\n class=\"discover__graphic js-slider_fix-arrows-zone\"\n [attr.aria-label]=\"\n item.button?.label ?? 'Item link'\n \"\n >\n @if (item.img) {\n <img\n [src]=\"item.img.src\"\n width=\"391\"\n height=\"533\"\n class=\"discover__graphic--img\"\n [alt]=\"item.img.alt\"\n loading=\"lazy\"\n />\n }\n\n <div class=\"discover__content\"> \n @if (item.title) {\n <h3\n class=\"discover__heading photo\"\n [innerHTML]=\"item.title\"\n \n ></h3>\n }\n @if (item.pretitle) {\n <p class=\"discover__subHeading photo\">\n {{ item.pretitle }}\n </p>\n }\n \n </div>\n </a>\n\n @if (item.button) {\n <div class=\"btn__group\">\n <a\n class=\"btn__link\"\n [linkType]=\"item.button?.linkType\"\n [href]=\"item.button?.url\"\n [attr.aria-label]=\"\n item.button.label ?? 'Item button'\n \"\n >\n <span>{{ item.button.label }}</span>\n </a>\n </div>\n }\n </div>\n }\n }\n </div>\n <div class=\"js-slider-arrows\"></div>\n @if (button) {\n <div class=\"btn__group\">\n <a\n [linkType]=\"button.linkType\"\n [href]=\"button.url\"\n class=\"btn btn__primary--outline\"\n [attr.aria-label]=\"button.label\"\n ><span>{{ button.label }}</span></a\n >\n </div>\n }\n </div>\n </div>\n</section>\n" }]
19
19
  }], propDecorators: { title: [{
20
20
  type: Input
21
21
  }], button: [{
@@ -27,4 +27,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
27
27
  }], textColors: [{
28
28
  type: Input
29
29
  }] } });
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVyby1ncmlkM2NvbC1zbGlkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHVyby9zcmMvbGliL2NvbXBvbmVudHMvcHVyby1ncmlkM2NvbC1zbGlkZXIvcHVyby1ncmlkM2NvbC1zbGlkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHVyby9zcmMvbGliL2NvbXBvbmVudHMvcHVyby1ncmlkM2NvbC1zbGlkZXIvcHVyby1ncmlkM2NvbC1zbGlkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFFLE9BQU8sRUFDSCw2QkFBNkIsRUFDN0IscUJBQXFCLEVBQ3JCLG1CQUFtQixHQUN0QixNQUFNLGtCQUFrQixDQUFDO0FBTzFCLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOztBQWlCaEYsTUFBTSxPQUFPLDJCQUEyQjsrR0FBM0IsMkJBQTJCO21HQUEzQiwyQkFBMkIsMExDOUJ4Qyw0c0lBbUdBLHlERGhGUSxZQUFZLCtCQUNaLG1CQUFtQixpRkFDbkIscUJBQXFCLDRJQUVyQiw2QkFBNkIscURBQzdCLDJCQUEyQjs7NEZBTXRCLDJCQUEyQjtrQkFmdkMsU0FBUzsrQkFDSSwwQkFBMEIsY0FDeEIsSUFBSSxXQUNQO3dCQUNMLFlBQVk7d0JBQ1osbUJBQW1CO3dCQUNuQixxQkFBcUI7d0JBRXJCLDZCQUE2Qjt3QkFDN0IsMkJBQTJCO3FCQUM5QixtQkFHZ0IsdUJBQXVCLENBQUMsTUFBTTs4QkFHdEMsS0FBSztzQkFBYixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgQXV0b0ltYWdlWm9vbVdyYXBwZXJEaXJlY3RpdmUsXG4gICAgUHVyb0xpbmtUeXBlRGlyZWN0aXZlLFxuICAgIFB1cm9TbGlkZXJEaXJlY3RpdmUsXG59IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMnO1xuaW1wb3J0IHtcbiAgICBQdXJvQnV0dG9uSSxcbiAgICBQdXJvSW1hZ2VJLFxuICAgIFB1cm9UYWdzSSxcbiAgICBQdXJvVGV4dHNDb2xvcnNJLFxufSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IFB1cm9EeW5hbWljSGVhZGluZ0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL3NoYXJlZC9wdXJvLWR5bmFtaWMtaGVhZGluZyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbGliLXB1cm8tZ3JpZDNjb2wtc2xpZGVyJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBQdXJvU2xpZGVyRGlyZWN0aXZlLFxuICAgICAgICBQdXJvTGlua1R5cGVEaXJlY3RpdmUsXG5cbiAgICAgICAgQXV0b0ltYWdlWm9vbVdyYXBwZXJEaXJlY3RpdmUsXG4gICAgICAgIFB1cm9EeW5hbWljSGVhZGluZ0NvbXBvbmVudCxcbiAgICBdLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9wdXJvLWdyaWQzY29sLXNsaWRlci5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmw6ICcuL3B1cm8tZ3JpZDNjb2wtc2xpZGVyLmNvbXBvbmVudC5zY3NzJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgUHVyb0dyaWQzY29sU2xpZGVyQ29tcG9uZW50IHtcbiAgICBASW5wdXQoKSB0aXRsZT86IHN0cmluZztcbiAgICBASW5wdXQoKSBidXR0b24/OiBQdXJvQnV0dG9uSTtcbiAgICBASW5wdXQoKSBpdGVtcz86IFB1cm9HcmlkM2NvbFNsaWRlckl0ZW1bXTtcbiAgICBASW5wdXQoKSB0YWdzPzogUHVyb1RhZ3NJO1xuICAgIEBJbnB1dCgpIHRleHRDb2xvcnM/OiBQdXJvVGV4dHNDb2xvcnNJO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFB1cm9HcmlkM2NvbFNsaWRlckl0ZW0ge1xuICAgIGltZz86IFB1cm9JbWFnZUk7XG4gICAgcHJldGl0bGU/OiBzdHJpbmc7XG4gICAgdGl0bGU/OiBzdHJpbmc7XG4gICAgYnV0dG9uPzogUHVyb0J1dHRvbkk7XG59XG4iLCI8c2VjdGlvblxuICAgIGNsYXNzPVwiZGlzY292ZXIgZGlzY292ZXItLW5vUmFkaXVzIGpzLWFjdGl2ZS1zbGlkZXIgZ2VuZXJhbE1hcmdpblwiXG4gICAgW3B1cm9TbGlkZXJdPVwiaXRlbXNcIlxuICAgIGRhdGEtc2xpZGVzX2luZmluaXRlPVwidHJ1ZVwiXG4gICAgZGF0YS1zbGlkZXJfbmFtZT1cImpzLWRpc2NvdmVyLXNsaWRlclwiXG4gICAgZGF0YS1zbGlkZXJfc2hvd2J0bnM9XCJ0cnVlXCJcbiAgICBkYXRhLXNsaWRlcl9zaG93ZG90cz1cImZhbHNlXCJcbiAgICBkYXRhLXNsaWRlcl9mYWRlPVwiZmFsc2VcIlxuICAgIGRhdGEtc2xpZGVyX2F1dG9wbGF5PVwidHJ1ZVwiXG4gICAgZGF0YS1zbGlkZXNfcGM9XCIzXCJcbiAgICBkYXRhLXNsaWRlc19sYXB0b3A9XCIzXCJcbiAgICBkYXRhLXNsaWRlc190YWJsZXQ9XCIxXCJcbiAgICBkYXRhLXNsaWRlc19tb2JpbGU9XCIxXCJcbiAgICBkYXRhLXNsaWRlc19tb2JpbGVfc21hbGw9XCIxXCJcbiAgICBkYXRhLXNsaWRlc19tb2JpbGVfeHNtYWxsPVwiMVwiXG4+XG4gICAgQGlmICh0aXRsZSkge1xuICAgICAgICA8bGliLXB1cm8tZHluYW1pYy1oZWFkaW5nXG4gICAgICAgICAgICBbdGFnXT1cInRhZ3M/LnRpdGxlIHx8ICdzcGFuJ1wiXG4gICAgICAgICAgICBjc3NDbGFzcz1cImRpc2NvdmVyX190aXRsZVwiXG4gICAgICAgICAgICBbY29sb3JdPVwidGV4dENvbG9ycz8udGl0bGVcIlxuICAgICAgICAgICAgW2NvbnRlbnRdPVwidGl0bGVcIlxuICAgICAgICA+PC9saWItcHVyby1keW5hbWljLWhlYWRpbmc+XG4gICAgfVxuICAgIDxkaXYgY2xhc3M9XCJkaXNjb3Zlcl9faW5uZXIgcmVsYXRpdmVcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImRpc2NvdmVyX19jb250YWluZXJcIj5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICBjbGFzcz1cImpzLWRpc2NvdmVyLXNsaWRlciBkaXNjb3Zlcl9fc2xpZGVyIGpzLXNsaWRlcl9maXgtYXJyb3dzXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICBAZm9yIChpdGVtIG9mIGl0ZW1zIHx8IFtdOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgICAgICAgICAgICAgICAgQGlmIChpdGVtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGlzY292ZXJfX2JveFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtocmVmXT1cIml0ZW0uYnV0dG9uPy51cmxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbGlua1R5cGVdPVwiaXRlbS5idXR0b24/LmxpbmtUeXBlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJkaXNjb3Zlcl9fZ3JhcGhpYyBqcy1zbGlkZXJfZml4LWFycm93cy16b25lXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0uYnV0dG9uPy5sYWJlbCA/PyAnSXRlbSBsaW5rJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChpdGVtLmltZykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzcmNdPVwiaXRlbS5pbWcuc3JjXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjM5MVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0PVwiNTMzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImRpc2NvdmVyX19ncmFwaGljLS1pbWdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthbHRdPVwiaXRlbS5pbWcuYWx0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb2FkaW5nPVwibGF6eVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRpc2NvdmVyX19jb250ZW50XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGl0ZW0ucHJldGl0bGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImRpc2NvdmVyX19zdWJIZWFkaW5nIHBob3RvXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGl0ZW0ucHJldGl0bGUgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGl0ZW0udGl0bGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJkaXNjb3Zlcl9faGVhZGluZyBwaG90b1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpbm5lckhUTUxdPVwiaXRlbS50aXRsZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvaDM+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoaXRlbS5idXR0b24pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJ0bl9fZ3JvdXBcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJidG5fX2xpbmtcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtsaW5rVHlwZV09XCJpdGVtLmJ1dHRvbj8ubGlua1R5cGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtocmVmXT1cIml0ZW0uYnV0dG9uPy51cmxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0uYnV0dG9uLmxhYmVsID8/ICdJdGVtIGJ1dHRvbidcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPnt7IGl0ZW0uYnV0dG9uLmxhYmVsIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImpzLXNsaWRlci1hcnJvd3NcIj48L2Rpdj5cbiAgICAgICAgICAgIEBpZiAoYnV0dG9uKSB7XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJ0bl9fZ3JvdXBcIj5cbiAgICAgICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgICAgIFtsaW5rVHlwZV09XCJidXR0b24ubGlua1R5cGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2hyZWZdPVwiYnV0dG9uLnVybFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG5fX3ByaW1hcnktLW91dGxpbmVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJidXR0b24ubGFiZWxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPjxzcGFuPnt7IGJ1dHRvbi5sYWJlbCB9fTwvc3Bhbj48L2FcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfVxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvc2VjdGlvbj5cbiJdfQ==
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVyby1ncmlkM2NvbC1zbGlkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHVyby9zcmMvbGliL2NvbXBvbmVudHMvcHVyby1ncmlkM2NvbC1zbGlkZXIvcHVyby1ncmlkM2NvbC1zbGlkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHVyby9zcmMvbGliL2NvbXBvbmVudHMvcHVyby1ncmlkM2NvbC1zbGlkZXIvcHVyby1ncmlkM2NvbC1zbGlkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFFLE9BQU8sRUFDSCw2QkFBNkIsRUFDN0IscUJBQXFCLEVBQ3JCLG1CQUFtQixHQUN0QixNQUFNLGtCQUFrQixDQUFDO0FBTzFCLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOztBQWlCaEYsTUFBTSxPQUFPLDJCQUEyQjsrR0FBM0IsMkJBQTJCO21HQUEzQiwyQkFBMkIsMExDOUJ4QyxpeUlBcUdBLHlERGxGUSxZQUFZLCtCQUNaLG1CQUFtQixpRkFDbkIscUJBQXFCLDRJQUVyQiw2QkFBNkIscURBQzdCLDJCQUEyQjs7NEZBTXRCLDJCQUEyQjtrQkFmdkMsU0FBUzsrQkFDSSwwQkFBMEIsY0FDeEIsSUFBSSxXQUNQO3dCQUNMLFlBQVk7d0JBQ1osbUJBQW1CO3dCQUNuQixxQkFBcUI7d0JBRXJCLDZCQUE2Qjt3QkFDN0IsMkJBQTJCO3FCQUM5QixtQkFHZ0IsdUJBQXVCLENBQUMsTUFBTTs4QkFHdEMsS0FBSztzQkFBYixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgQXV0b0ltYWdlWm9vbVdyYXBwZXJEaXJlY3RpdmUsXG4gICAgUHVyb0xpbmtUeXBlRGlyZWN0aXZlLFxuICAgIFB1cm9TbGlkZXJEaXJlY3RpdmUsXG59IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMnO1xuaW1wb3J0IHtcbiAgICBQdXJvQnV0dG9uSSxcbiAgICBQdXJvSW1hZ2VJLFxuICAgIFB1cm9UYWdzSSxcbiAgICBQdXJvVGV4dHNDb2xvcnNJLFxufSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IFB1cm9EeW5hbWljSGVhZGluZ0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL3NoYXJlZC9wdXJvLWR5bmFtaWMtaGVhZGluZyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbGliLXB1cm8tZ3JpZDNjb2wtc2xpZGVyJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBQdXJvU2xpZGVyRGlyZWN0aXZlLFxuICAgICAgICBQdXJvTGlua1R5cGVEaXJlY3RpdmUsXG5cbiAgICAgICAgQXV0b0ltYWdlWm9vbVdyYXBwZXJEaXJlY3RpdmUsXG4gICAgICAgIFB1cm9EeW5hbWljSGVhZGluZ0NvbXBvbmVudCxcbiAgICBdLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9wdXJvLWdyaWQzY29sLXNsaWRlci5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmw6ICcuL3B1cm8tZ3JpZDNjb2wtc2xpZGVyLmNvbXBvbmVudC5zY3NzJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgUHVyb0dyaWQzY29sU2xpZGVyQ29tcG9uZW50IHtcbiAgICBASW5wdXQoKSB0aXRsZT86IHN0cmluZztcbiAgICBASW5wdXQoKSBidXR0b24/OiBQdXJvQnV0dG9uSTtcbiAgICBASW5wdXQoKSBpdGVtcz86IFB1cm9HcmlkM2NvbFNsaWRlckl0ZW1bXTtcbiAgICBASW5wdXQoKSB0YWdzPzogUHVyb1RhZ3NJO1xuICAgIEBJbnB1dCgpIHRleHRDb2xvcnM/OiBQdXJvVGV4dHNDb2xvcnNJO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFB1cm9HcmlkM2NvbFNsaWRlckl0ZW0ge1xuICAgIGltZz86IFB1cm9JbWFnZUk7XG4gICAgcHJldGl0bGU/OiBzdHJpbmc7XG4gICAgdGl0bGU/OiBzdHJpbmc7XG4gICAgYnV0dG9uPzogUHVyb0J1dHRvbkk7XG59XG4iLCI8c2VjdGlvblxuICAgIGNsYXNzPVwiZGlzY292ZXIgZGlzY292ZXItLW5vUmFkaXVzIGpzLWFjdGl2ZS1zbGlkZXIgZ2VuZXJhbE1hcmdpblwiXG4gICAgW3B1cm9TbGlkZXJdPVwiaXRlbXNcIlxuICAgIGRhdGEtc2xpZGVzX2luZmluaXRlPVwidHJ1ZVwiXG4gICAgZGF0YS1zbGlkZXJfbmFtZT1cImpzLWRpc2NvdmVyLXNsaWRlclwiXG4gICAgZGF0YS1zbGlkZXJfc2hvd2J0bnM9XCJ0cnVlXCJcbiAgICBkYXRhLXNsaWRlcl9zaG93ZG90cz1cImZhbHNlXCJcbiAgICBkYXRhLXNsaWRlcl9mYWRlPVwiZmFsc2VcIlxuICAgIGRhdGEtc2xpZGVyX2F1dG9wbGF5PVwidHJ1ZVwiXG4gICAgZGF0YS1zbGlkZXNfcGM9XCIzXCJcbiAgICBkYXRhLXNsaWRlc19sYXB0b3A9XCIzXCJcbiAgICBkYXRhLXNsaWRlc190YWJsZXQ9XCIxXCJcbiAgICBkYXRhLXNsaWRlc19tb2JpbGU9XCIxXCJcbiAgICBkYXRhLXNsaWRlc19tb2JpbGVfc21hbGw9XCIxXCJcbiAgICBkYXRhLXNsaWRlc19tb2JpbGVfeHNtYWxsPVwiMVwiXG4+XG4gICAgQGlmICh0aXRsZSkge1xuICAgICAgICA8bGliLXB1cm8tZHluYW1pYy1oZWFkaW5nXG4gICAgICAgICAgICBbdGFnXT1cInRhZ3M/LnRpdGxlIHx8ICdzcGFuJ1wiXG4gICAgICAgICAgICBjc3NDbGFzcz1cImRpc2NvdmVyX190aXRsZVwiXG4gICAgICAgICAgICBbY29sb3JdPVwidGV4dENvbG9ycz8udGl0bGVcIlxuICAgICAgICAgICAgW2NvbnRlbnRdPVwidGl0bGVcIlxuICAgICAgICA+PC9saWItcHVyby1keW5hbWljLWhlYWRpbmc+XG4gICAgfVxuICAgIDxkaXYgY2xhc3M9XCJkaXNjb3Zlcl9faW5uZXIgcmVsYXRpdmVcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImRpc2NvdmVyX19jb250YWluZXJcIj5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICBjbGFzcz1cImpzLWRpc2NvdmVyLXNsaWRlciBkaXNjb3Zlcl9fc2xpZGVyIGpzLXNsaWRlcl9maXgtYXJyb3dzXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICBAZm9yIChpdGVtIG9mIGl0ZW1zIHx8IFtdOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgICAgICAgICAgICAgICAgQGlmIChpdGVtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGlzY292ZXJfX2JveFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtocmVmXT1cIml0ZW0uYnV0dG9uPy51cmxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbGlua1R5cGVdPVwiaXRlbS5idXR0b24/LmxpbmtUeXBlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJkaXNjb3Zlcl9fZ3JhcGhpYyBqcy1zbGlkZXJfZml4LWFycm93cy16b25lXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0uYnV0dG9uPy5sYWJlbCA/PyAnSXRlbSBsaW5rJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChpdGVtLmltZykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzcmNdPVwiaXRlbS5pbWcuc3JjXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjM5MVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0PVwiNTMzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImRpc2NvdmVyX19ncmFwaGljLS1pbWdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthbHRdPVwiaXRlbS5pbWcuYWx0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb2FkaW5nPVwibGF6eVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRpc2NvdmVyX19jb250ZW50XCI+IFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoaXRlbS50aXRsZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoM1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImRpc2NvdmVyX19oZWFkaW5nIHBob3RvXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2lubmVySFRNTF09XCJpdGVtLnRpdGxlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvaDM+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGl0ZW0ucHJldGl0bGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImRpc2NvdmVyX19zdWJIZWFkaW5nIHBob3RvXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGl0ZW0ucHJldGl0bGUgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGl0ZW0uYnV0dG9uKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJidG5fX2dyb3VwXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuX19saW5rXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbGlua1R5cGVdPVwiaXRlbS5idXR0b24/LmxpbmtUeXBlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaHJlZl09XCJpdGVtLmJ1dHRvbj8udXJsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtLmJ1dHRvbi5sYWJlbCA/PyAnSXRlbSBidXR0b24nXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj57eyBpdGVtLmJ1dHRvbi5sYWJlbCB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJqcy1zbGlkZXItYXJyb3dzXCI+PC9kaXY+XG4gICAgICAgICAgICBAaWYgKGJ1dHRvbikge1xuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJidG5fX2dyb3VwXCI+XG4gICAgICAgICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgICAgICAgICBbbGlua1R5cGVdPVwiYnV0dG9uLmxpbmtUeXBlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtocmVmXT1cImJ1dHRvbi51cmxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuX19wcmltYXJ5LS1vdXRsaW5lXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiYnV0dG9uLmxhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgID48c3Bhbj57eyBidXR0b24ubGFiZWwgfX08L3NwYW4+PC9hXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L3NlY3Rpb24+XG4iXX0=
@@ -3,11 +3,11 @@ import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
3
3
  import * as i0 from "@angular/core";
4
4
  export class PuroInfoDetails2ColComponent {
5
5
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroInfoDetails2ColComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroInfoDetails2ColComponent, isStandalone: true, selector: "lib-puro-info-details-2col", inputs: { title: "title", subtitle: "subtitle", description: "description", items: "items" }, ngImport: i0, template: "<section\n class=\"textContent textContent__ODM--spacing3 textContent--textStart textContent--2ColumnLayout\"\n>\n <div class=\"textContent__titleSection\">\n <div class=\"textContent__title\">\n @if (title) {\n <h2 class=\"textContent__title--heading\" [innerHTML]=\"title\"></h2>\n }\n @if (subtitle) {\n <div class=\"textContent__title--subHeading\" [innerHTML]=\"subtitle\"></div>\n }\n </div>\n @if (description) {\n <div class=\"textContent__paragraph\">\n <p [innerHTML]=\"description\"></p>\n </div>\n }\n </div>\n @if (items?.length) {\n <div class=\"textContent__list\">\n @for (item of items; track $index) {\n <div class=\"textContent__item\">\n <h3 class=\"textContent__item--heading\" [innerHTML]=\"item.title\"></h3>\n <div class=\"textContent__item--text\">\n <div [innerHTML]=\"item.description\"></div>\n </div>\n </div>\n }\n </div>\n }\n</section>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
6
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroInfoDetails2ColComponent, isStandalone: true, selector: "lib-puro-info-details-2col", inputs: { title: "title", subtitle: "subtitle", description: "description", items: "items" }, ngImport: i0, template: "<section\n class=\"textContent textContent__ODM--spacing3 textContent--textStart textContent--2ColumnLayout\"\n>\n <div class=\"textContent__titleSection\">\n <div class=\"textContent__title\">\n @if (title) {\n <h2 class=\"textContent__title__heading\" [innerHTML]=\"title\"></h2>\n }\n @if (subtitle) {\n <div class=\"textContent__title__subHeading\" [innerHTML]=\"subtitle\"></div>\n }\n </div>\n @if (description) {\n <div class=\"textContent__paragraph\">\n <p [innerHTML]=\"description\"></p>\n </div>\n }\n </div>\n @if (items?.length) {\n <div class=\"textContent__list\">\n @for (item of items; track $index) {\n <div class=\"textContent__item\">\n <div\n class=\"textContent__item__subHeading \"\n [innerHTML]=\"item.title\"\n ></div>\n <div class=\"textContent__item__paragraph\">\n <div [innerHTML]=\"item.description\"></div>\n </div>\n </div>\n }\n </div>\n }\n</section>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
7
7
  }
8
8
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroInfoDetails2ColComponent, decorators: [{
9
9
  type: Component,
10
- args: [{ selector: 'lib-puro-info-details-2col', standalone: true, imports: [CommonModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<section\n class=\"textContent textContent__ODM--spacing3 textContent--textStart textContent--2ColumnLayout\"\n>\n <div class=\"textContent__titleSection\">\n <div class=\"textContent__title\">\n @if (title) {\n <h2 class=\"textContent__title--heading\" [innerHTML]=\"title\"></h2>\n }\n @if (subtitle) {\n <div class=\"textContent__title--subHeading\" [innerHTML]=\"subtitle\"></div>\n }\n </div>\n @if (description) {\n <div class=\"textContent__paragraph\">\n <p [innerHTML]=\"description\"></p>\n </div>\n }\n </div>\n @if (items?.length) {\n <div class=\"textContent__list\">\n @for (item of items; track $index) {\n <div class=\"textContent__item\">\n <h3 class=\"textContent__item--heading\" [innerHTML]=\"item.title\"></h3>\n <div class=\"textContent__item--text\">\n <div [innerHTML]=\"item.description\"></div>\n </div>\n </div>\n }\n </div>\n }\n</section>\n" }]
10
+ args: [{ selector: 'lib-puro-info-details-2col', standalone: true, imports: [CommonModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<section\n class=\"textContent textContent__ODM--spacing3 textContent--textStart textContent--2ColumnLayout\"\n>\n <div class=\"textContent__titleSection\">\n <div class=\"textContent__title\">\n @if (title) {\n <h2 class=\"textContent__title__heading\" [innerHTML]=\"title\"></h2>\n }\n @if (subtitle) {\n <div class=\"textContent__title__subHeading\" [innerHTML]=\"subtitle\"></div>\n }\n </div>\n @if (description) {\n <div class=\"textContent__paragraph\">\n <p [innerHTML]=\"description\"></p>\n </div>\n }\n </div>\n @if (items?.length) {\n <div class=\"textContent__list\">\n @for (item of items; track $index) {\n <div class=\"textContent__item\">\n <div\n class=\"textContent__item__subHeading \"\n [innerHTML]=\"item.title\"\n ></div>\n <div class=\"textContent__item__paragraph\">\n <div [innerHTML]=\"item.description\"></div>\n </div>\n </div>\n }\n </div>\n }\n</section>\n" }]
11
11
  }], propDecorators: { title: [{
12
12
  type: Input
13
13
  }], subtitle: [{
@@ -17,4 +17,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
17
17
  }], items: [{
18
18
  type: Input
19
19
  }] } });
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVyby1pbmZvLWRldGFpbHMtMmNvbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wdXJvL3NyYy9saWIvY29tcG9uZW50cy9wdXJvLWluZm8tZGV0YWlscy0yY29sL3B1cm8taW5mby1kZXRhaWxzLTJjb2wuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHVyby9zcmMvbGliL2NvbXBvbmVudHMvcHVyby1pbmZvLWRldGFpbHMtMmNvbC9wdXJvLWluZm8tZGV0YWlscy0yY29sLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFXMUUsTUFBTSxPQUFPLDRCQUE0QjsrR0FBNUIsNEJBQTRCO21HQUE1Qiw0QkFBNEIsb0xDWnpDLG1wQ0ErQkEseUREeEJjLFlBQVk7OzRGQUtiLDRCQUE0QjtrQkFSeEMsU0FBUzsrQkFDSSw0QkFBNEIsY0FDMUIsSUFBSSxXQUNQLENBQUMsWUFBWSxDQUFDLG1CQUdOLHVCQUF1QixDQUFDLE1BQU07OEJBR3RDLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBQdXJvSW5mb0RldGFpbEl0ZW1JIH0gZnJvbSAnLi4vcHVyby1pbmZvLWRldGFpbHMtM2NvbCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbGliLXB1cm8taW5mby1kZXRhaWxzLTJjb2wnLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL3B1cm8taW5mby1kZXRhaWxzLTJjb2wuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsOiAnLi9wdXJvLWluZm8tZGV0YWlscy0yY29sLmNvbXBvbmVudC5zY3NzJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgUHVyb0luZm9EZXRhaWxzMkNvbENvbXBvbmVudCB7XG4gICAgQElucHV0KCkgdGl0bGU/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgc3VidGl0bGU/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgaXRlbXM/OiBQdXJvSW5mb0RldGFpbEl0ZW1JW107XG59XG4iLCI8c2VjdGlvblxuICAgIGNsYXNzPVwidGV4dENvbnRlbnQgdGV4dENvbnRlbnRfX09ETS0tc3BhY2luZzMgdGV4dENvbnRlbnQtLXRleHRTdGFydCB0ZXh0Q29udGVudC0tMkNvbHVtbkxheW91dFwiXG4+XG4gICAgPGRpdiBjbGFzcz1cInRleHRDb250ZW50X190aXRsZVNlY3Rpb25cIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInRleHRDb250ZW50X190aXRsZVwiPlxuICAgICAgICAgICAgQGlmICh0aXRsZSkge1xuICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cInRleHRDb250ZW50X190aXRsZS0taGVhZGluZ1wiIFtpbm5lckhUTUxdPVwidGl0bGVcIj48L2gyPlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGlmIChzdWJ0aXRsZSkge1xuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0Q29udGVudF9fdGl0bGUtLXN1YkhlYWRpbmdcIiBbaW5uZXJIVE1MXT1cInN1YnRpdGxlXCI+PC9kaXY+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgICAgICBAaWYgKGRlc2NyaXB0aW9uKSB7XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dENvbnRlbnRfX3BhcmFncmFwaFwiPlxuICAgICAgICAgICAgICAgIDxwIFtpbm5lckhUTUxdPVwiZGVzY3JpcHRpb25cIj48L3A+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuICAgIDwvZGl2PlxuICAgIEBpZiAoaXRlbXM/Lmxlbmd0aCkge1xuICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dENvbnRlbnRfX2xpc3RcIj5cbiAgICAgICAgICAgIEBmb3IgKGl0ZW0gb2YgaXRlbXM7IHRyYWNrICRpbmRleCkge1xuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0Q29udGVudF9faXRlbVwiPlxuICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJ0ZXh0Q29udGVudF9faXRlbS0taGVhZGluZ1wiIFtpbm5lckhUTUxdPVwiaXRlbS50aXRsZVwiPjwvaDM+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0Q29udGVudF9faXRlbS0tdGV4dFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBbaW5uZXJIVE1MXT1cIml0ZW0uZGVzY3JpcHRpb25cIj48L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgIH1cbjwvc2VjdGlvbj5cbiJdfQ==
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVyby1pbmZvLWRldGFpbHMtMmNvbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wdXJvL3NyYy9saWIvY29tcG9uZW50cy9wdXJvLWluZm8tZGV0YWlscy0yY29sL3B1cm8taW5mby1kZXRhaWxzLTJjb2wuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHVyby9zcmMvbGliL2NvbXBvbmVudHMvcHVyby1pbmZvLWRldGFpbHMtMmNvbC9wdXJvLWluZm8tZGV0YWlscy0yY29sLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFXMUUsTUFBTSxPQUFPLDRCQUE0QjsrR0FBNUIsNEJBQTRCO21HQUE1Qiw0QkFBNEIsb0xDWnpDLHN1Q0FrQ0EseUREM0JjLFlBQVk7OzRGQUtiLDRCQUE0QjtrQkFSeEMsU0FBUzsrQkFDSSw0QkFBNEIsY0FDMUIsSUFBSSxXQUNQLENBQUMsWUFBWSxDQUFDLG1CQUdOLHVCQUF1QixDQUFDLE1BQU07OEJBR3RDLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBQdXJvSW5mb0RldGFpbEl0ZW1JIH0gZnJvbSAnLi4vcHVyby1pbmZvLWRldGFpbHMtM2NvbCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbGliLXB1cm8taW5mby1kZXRhaWxzLTJjb2wnLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL3B1cm8taW5mby1kZXRhaWxzLTJjb2wuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsOiAnLi9wdXJvLWluZm8tZGV0YWlscy0yY29sLmNvbXBvbmVudC5zY3NzJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgUHVyb0luZm9EZXRhaWxzMkNvbENvbXBvbmVudCB7XG4gICAgQElucHV0KCkgdGl0bGU/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgc3VidGl0bGU/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgaXRlbXM/OiBQdXJvSW5mb0RldGFpbEl0ZW1JW107XG59XG4iLCI8c2VjdGlvblxuICAgIGNsYXNzPVwidGV4dENvbnRlbnQgdGV4dENvbnRlbnRfX09ETS0tc3BhY2luZzMgdGV4dENvbnRlbnQtLXRleHRTdGFydCB0ZXh0Q29udGVudC0tMkNvbHVtbkxheW91dFwiXG4+XG4gICAgPGRpdiBjbGFzcz1cInRleHRDb250ZW50X190aXRsZVNlY3Rpb25cIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInRleHRDb250ZW50X190aXRsZVwiPlxuICAgICAgICAgICAgQGlmICh0aXRsZSkge1xuICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cInRleHRDb250ZW50X190aXRsZV9faGVhZGluZ1wiIFtpbm5lckhUTUxdPVwidGl0bGVcIj48L2gyPlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGlmIChzdWJ0aXRsZSkge1xuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0Q29udGVudF9fdGl0bGVfX3N1YkhlYWRpbmdcIiBbaW5uZXJIVE1MXT1cInN1YnRpdGxlXCI+PC9kaXY+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgICAgICBAaWYgKGRlc2NyaXB0aW9uKSB7XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dENvbnRlbnRfX3BhcmFncmFwaFwiPlxuICAgICAgICAgICAgICAgIDxwIFtpbm5lckhUTUxdPVwiZGVzY3JpcHRpb25cIj48L3A+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuICAgIDwvZGl2PlxuICAgIEBpZiAoaXRlbXM/Lmxlbmd0aCkge1xuICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dENvbnRlbnRfX2xpc3RcIj5cbiAgICAgICAgICAgIEBmb3IgKGl0ZW0gb2YgaXRlbXM7IHRyYWNrICRpbmRleCkge1xuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0Q29udGVudF9faXRlbVwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInRleHRDb250ZW50X19pdGVtX19zdWJIZWFkaW5nIFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbaW5uZXJIVE1MXT1cIml0ZW0udGl0bGVcIlxuICAgICAgICAgICAgICAgICAgICA+PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0Q29udGVudF9faXRlbV9fcGFyYWdyYXBoXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IFtpbm5lckhUTUxdPVwiaXRlbS5kZXNjcmlwdGlvblwiPjwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgfVxuPC9zZWN0aW9uPlxuIl19
@@ -6,6 +6,9 @@ import * as i0 from "@angular/core";
6
6
  import * as i1 from "@angular/platform-browser";
7
7
  import * as i2 from "@angular/common";
8
8
  export class PuroInfoVideoComponent {
9
+ get showVideo() {
10
+ return isPlatformBrowser(this.platformId) && !!this.video?.source;
11
+ }
9
12
  constructor(sanitizer, platformId) {
10
13
  this.sanitizer = sanitizer;
11
14
  this.platformId = platformId;
@@ -43,7 +46,7 @@ export class PuroInfoVideoComponent {
43
46
  return this.sanitizer.bypassSecurityTrustResourceUrl(embed);
44
47
  }
45
48
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroInfoVideoComponent, deps: [{ token: i1.DomSanitizer }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Component }); }
46
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroInfoVideoComponent, isStandalone: true, selector: "lib-puro-info-video", inputs: { title: "title", subtitle: "subtitle", description: "description", button: "button", video: "video", reverse: "reverse", tags: "tags", textColors: "textColors" }, host: { listeners: { "window:resize": "onResize()" } }, ngImport: i0, template: "<section\n class=\"eventVideo eventVideo--right generalMargin\"\n [ngClass]=\"{ 'eventVideo--right': reverse }\"\n resizeZoom\n>\n <div class=\"eventVideo__player\">\n <div class=\"eventVideo__playerInner\">\n @if (video?.source; as src) {\n @if (isYouTube(src)) {\n <iframe\n class=\"eventVideo__media\"\n [src]=\"getYouTubeEmbed(src)\"\n frameborder=\"0\"\n allow=\"autoplay; encrypted-media; picture-in-picture\"\n allowfullscreen\n tabindex=\"-1\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\"\n ></iframe>\n } @else {\n <video\n autoplay\n muted\n loop\n playsinline\n width=\"100%\"\n height=\"100%\"\n >\n <source\n [src]=\"src\"\n [type]=\"video?.type || 'video/mp4'\"\n />\n </video>\n }\n }\n </div>\n </div>\n <div class=\"eventVideo__content eventVideo__content--alignCenter\">\n <div>\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'h2'\"\n cssClass=\"eventVideo__heading\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n @if (subtitle) {\n <div class=\"eventVideo__subHeading\" [innerHTML]=\"subtitle\"></div>\n }\n @if (description) {\n <div class=\"eventVideo__paragraph\">\n <div [innerHTML]=\"description\"></div>\n </div>\n }\n <div class=\"btn__group\">\n @if (button) {\n <a\n [linkType]=\"button.linkType\"\n [href]=\"button.url\"\n class=\"btn btn__primary--outline\"\n [attr.aria-label]=\"button.label\"\n ><span>{{ button.label }}</span></a\n >\n }\n </div>\n </div>\n </div>\n</section>\n", styles: [".eventVideo__playerInner{overflow:hidden}.eventVideo__playerInner>video{width:105%;height:105%;object-fit:cover;object-position:center}.eventVideo__playerInner>iframe{width:105%;height:105%;display:block;transform-origin:center center;transform:scale(var(--yt-cover-scale, 1.23))}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: PuroLinkTypeDirective, selector: "[linkType]", inputs: ["linkType", "href", "modalClick"], outputs: ["bookClick", "anchorClicked"] }, { kind: "directive", type: PuroResizeZoomDirective, selector: "[resizeZoom]" }, { kind: "component", type: PuroDynamicHeadingComponent, selector: "lib-puro-dynamic-heading", inputs: ["tag", "wrapper", "cssClass", "content", "color"] }] }); }
49
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroInfoVideoComponent, isStandalone: true, selector: "lib-puro-info-video", inputs: { title: "title", subtitle: "subtitle", description: "description", button: "button", video: "video", reverse: "reverse", tags: "tags", textColors: "textColors" }, host: { listeners: { "window:resize": "onResize()" } }, ngImport: i0, template: "<section\n class=\"eventVideo eventVideo--right generalMargin\"\n [ngClass]=\"{ 'eventVideo--right': reverse }\"\n resizeZoom\n>\n <div class=\"eventVideo__player\">\n <div class=\"eventVideo__playerInner\">\n @if (showVideo) {\n @if (isYouTube(video!.source!)) {\n <iframe\n class=\"eventVideo__media\"\n [src]=\"getYouTubeEmbed(video!.source!)\"\n frameborder=\"0\"\n allow=\"autoplay; encrypted-media; picture-in-picture\"\n allowfullscreen\n tabindex=\"-1\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\"\n ></iframe>\n } @else {\n <video\n autoplay\n muted\n loop\n playsinline\n width=\"100%\"\n height=\"100%\"\n >\n <source\n [src]=\"video!.source!\"\n [type]=\"video?.type || 'video/mp4'\"\n />\n </video>\n }\n }\n </div>\n </div>\n <div class=\"eventVideo__content eventVideo__content--alignCenter\">\n <div>\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'h2'\"\n cssClass=\"eventVideo__heading\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n @if (subtitle) {\n <div class=\"eventVideo__subHeading\" [innerHTML]=\"subtitle\"></div>\n }\n @if (description) {\n <div class=\"eventVideo__paragraph\">\n <div [innerHTML]=\"description\"></div>\n </div>\n }\n <div class=\"btn__group\">\n @if (button) {\n <a\n [linkType]=\"button.linkType\"\n [href]=\"button.url\"\n class=\"btn btn__primary--outline\"\n [attr.aria-label]=\"button.label\"\n ><span>{{ button.label }}</span></a\n >\n }\n </div>\n </div>\n </div>\n</section>\n", styles: [".eventVideo__playerInner{overflow:hidden}.eventVideo__playerInner>video{width:105%;height:105%;object-fit:cover;object-position:center}.eventVideo__playerInner>iframe{width:105%;height:105%;display:block;transform-origin:center center;transform:scale(var(--yt-cover-scale, 1.23))}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: PuroLinkTypeDirective, selector: "[linkType]", inputs: ["linkType", "href", "modalClick"], outputs: ["bookClick", "anchorClicked"] }, { kind: "directive", type: PuroResizeZoomDirective, selector: "[resizeZoom]" }, { kind: "component", type: PuroDynamicHeadingComponent, selector: "lib-puro-dynamic-heading", inputs: ["tag", "wrapper", "cssClass", "content", "color"] }] }); }
47
50
  }
48
51
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroInfoVideoComponent, decorators: [{
49
52
  type: Component,
@@ -53,7 +56,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
53
56
  PuroResizeZoomDirective,
54
57
  PuroResizeZoomDirective,
55
58
  PuroDynamicHeadingComponent,
56
- ], template: "<section\n class=\"eventVideo eventVideo--right generalMargin\"\n [ngClass]=\"{ 'eventVideo--right': reverse }\"\n resizeZoom\n>\n <div class=\"eventVideo__player\">\n <div class=\"eventVideo__playerInner\">\n @if (video?.source; as src) {\n @if (isYouTube(src)) {\n <iframe\n class=\"eventVideo__media\"\n [src]=\"getYouTubeEmbed(src)\"\n frameborder=\"0\"\n allow=\"autoplay; encrypted-media; picture-in-picture\"\n allowfullscreen\n tabindex=\"-1\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\"\n ></iframe>\n } @else {\n <video\n autoplay\n muted\n loop\n playsinline\n width=\"100%\"\n height=\"100%\"\n >\n <source\n [src]=\"src\"\n [type]=\"video?.type || 'video/mp4'\"\n />\n </video>\n }\n }\n </div>\n </div>\n <div class=\"eventVideo__content eventVideo__content--alignCenter\">\n <div>\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'h2'\"\n cssClass=\"eventVideo__heading\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n @if (subtitle) {\n <div class=\"eventVideo__subHeading\" [innerHTML]=\"subtitle\"></div>\n }\n @if (description) {\n <div class=\"eventVideo__paragraph\">\n <div [innerHTML]=\"description\"></div>\n </div>\n }\n <div class=\"btn__group\">\n @if (button) {\n <a\n [linkType]=\"button.linkType\"\n [href]=\"button.url\"\n class=\"btn btn__primary--outline\"\n [attr.aria-label]=\"button.label\"\n ><span>{{ button.label }}</span></a\n >\n }\n </div>\n </div>\n </div>\n</section>\n", styles: [".eventVideo__playerInner{overflow:hidden}.eventVideo__playerInner>video{width:105%;height:105%;object-fit:cover;object-position:center}.eventVideo__playerInner>iframe{width:105%;height:105%;display:block;transform-origin:center center;transform:scale(var(--yt-cover-scale, 1.23))}\n"] }]
59
+ ], template: "<section\n class=\"eventVideo eventVideo--right generalMargin\"\n [ngClass]=\"{ 'eventVideo--right': reverse }\"\n resizeZoom\n>\n <div class=\"eventVideo__player\">\n <div class=\"eventVideo__playerInner\">\n @if (showVideo) {\n @if (isYouTube(video!.source!)) {\n <iframe\n class=\"eventVideo__media\"\n [src]=\"getYouTubeEmbed(video!.source!)\"\n frameborder=\"0\"\n allow=\"autoplay; encrypted-media; picture-in-picture\"\n allowfullscreen\n tabindex=\"-1\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\"\n ></iframe>\n } @else {\n <video\n autoplay\n muted\n loop\n playsinline\n width=\"100%\"\n height=\"100%\"\n >\n <source\n [src]=\"video!.source!\"\n [type]=\"video?.type || 'video/mp4'\"\n />\n </video>\n }\n }\n </div>\n </div>\n <div class=\"eventVideo__content eventVideo__content--alignCenter\">\n <div>\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'h2'\"\n cssClass=\"eventVideo__heading\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n @if (subtitle) {\n <div class=\"eventVideo__subHeading\" [innerHTML]=\"subtitle\"></div>\n }\n @if (description) {\n <div class=\"eventVideo__paragraph\">\n <div [innerHTML]=\"description\"></div>\n </div>\n }\n <div class=\"btn__group\">\n @if (button) {\n <a\n [linkType]=\"button.linkType\"\n [href]=\"button.url\"\n class=\"btn btn__primary--outline\"\n [attr.aria-label]=\"button.label\"\n ><span>{{ button.label }}</span></a\n >\n }\n </div>\n </div>\n </div>\n</section>\n", styles: [".eventVideo__playerInner{overflow:hidden}.eventVideo__playerInner>video{width:105%;height:105%;object-fit:cover;object-position:center}.eventVideo__playerInner>iframe{width:105%;height:105%;display:block;transform-origin:center center;transform:scale(var(--yt-cover-scale, 1.23))}\n"] }]
57
60
  }], ctorParameters: () => [{ type: i1.DomSanitizer }, { type: Object, decorators: [{
58
61
  type: Inject,
59
62
  args: [PLATFORM_ID]
@@ -77,4 +80,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
77
80
  type: HostListener,
78
81
  args: ['window:resize']
79
82
  }] } });
80
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVyby1pbmZvLXZpZGVvLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3B1cm8vc3JjL2xpYi9jb21wb25lbnRzL3B1cm8taW5mby12aWRlby9wdXJvLWluZm8tdmlkZW8uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHVyby9zcmMvbGliL2NvbXBvbmVudHMvcHVyby1pbmZvLXZpZGVvL3B1cm8taW5mby12aWRlby5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEYsT0FBTyxFQUNILHFCQUFxQixFQUNyQix1QkFBdUIsR0FDMUIsTUFBTSxrQkFBa0IsQ0FBQztBQVExQixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7OztBQWVoRixNQUFNLE9BQU8sc0JBQXNCO0lBWTlCLFlBQ1csU0FBdUIsRUFDRixVQUFrQjtRQUR2QyxjQUFTLEdBQVQsU0FBUyxDQUFjO1FBQ0YsZUFBVSxHQUFWLFVBQVUsQ0FBUTtRQUpuRCxjQUFTLEdBQUcsS0FBSyxDQUFDO0lBS2YsQ0FBQztJQUdKLFFBQVE7UUFDSixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUNELFNBQVM7UUFDTCxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQztZQUFFLE9BQU87UUFFaEQsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDO1FBQ3ZFLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxHQUFHLEdBQUcsQ0FBQztJQUNoQyxDQUFDO0lBRUQsUUFBUTtRQUNKLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO1lBQUUsT0FBTztRQUNoRCxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELFNBQVMsQ0FBQyxHQUFXO1FBQ2pCLE9BQU8sNkJBQTZCLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRU8sZ0JBQWdCLENBQUMsR0FBVztRQUNoQyxNQUFNLENBQUMsR0FDSCxHQUFHLENBQUMsS0FBSyxDQUFDLGdDQUFnQyxDQUFDO1lBQzNDLEdBQUcsQ0FBQyxLQUFLLENBQUMsMkJBQTJCLENBQUM7WUFDdEMsR0FBRyxDQUFDLEtBQUssQ0FBQywwQ0FBMEMsQ0FBQyxDQUFDO1FBQzFELE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUMzQixDQUFDO0lBRUQsZUFBZSxDQUFDLEdBQVc7UUFDdkIsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUM1QyxNQUFNLEtBQUssR0FDUCwwQ0FBMEMsRUFBRSxFQUFFO1lBQzlDLHNDQUFzQyxFQUFFLEVBQUU7WUFDMUMsa0RBQWtEO1lBQ2xELG1FQUFtRSxDQUFDO1FBQ3hFLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyw4QkFBOEIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNoRSxDQUFDOytHQXJEUSxzQkFBc0IsOENBY25CLFdBQVc7bUdBZGQsc0JBQXNCLG1UQzVCbkMsOGhGQXNFQSxtVkRuRFEsWUFBWSw2SEFDWixxQkFBcUIsNElBQ3JCLHVCQUF1Qix5REFFdkIsMkJBQTJCOzs0RkFLdEIsc0JBQXNCO2tCQWJsQyxTQUFTOytCQUNJLHFCQUFxQixjQUNuQixJQUFJLFdBQ1A7d0JBQ0wsWUFBWTt3QkFDWixxQkFBcUI7d0JBQ3JCLHVCQUF1Qjt3QkFDdkIsdUJBQXVCO3dCQUN2QiwyQkFBMkI7cUJBQzlCOzswQkFrQkksTUFBTTsyQkFBQyxXQUFXO3lDQWJkLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBVU4sUUFBUTtzQkFEUCxZQUFZO3VCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUsIGlzUGxhdGZvcm1Ccm93c2VyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgSG9zdExpc3RlbmVyLCBJbmplY3QsIElucHV0LCBQTEFURk9STV9JRCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBQdXJvTGlua1R5cGVEaXJlY3RpdmUsXG4gICAgUHVyb1Jlc2l6ZVpvb21EaXJlY3RpdmUsXG59IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMnO1xuaW1wb3J0IHtcbiAgICBQdXJvQnV0dG9uSSxcbiAgICBQdXJvVmlkZW9JLFxuICAgIFB1cm9UYWdzSSxcbiAgICBQdXJvVGV4dHNDb2xvcnNJLFxufSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IERvbVNhbml0aXplciwgU2FmZVJlc291cmNlVXJsIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQgeyBQdXJvRHluYW1pY0hlYWRpbmdDb21wb25lbnQgfSBmcm9tICcuLi8uLi9zaGFyZWQvcHVyby1keW5hbWljLWhlYWRpbmcnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2xpYi1wdXJvLWluZm8tdmlkZW8nLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIFB1cm9MaW5rVHlwZURpcmVjdGl2ZSxcbiAgICAgICAgUHVyb1Jlc2l6ZVpvb21EaXJlY3RpdmUsXG4gICAgICAgIFB1cm9SZXNpemVab29tRGlyZWN0aXZlLFxuICAgICAgICBQdXJvRHluYW1pY0hlYWRpbmdDb21wb25lbnQsXG4gICAgXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vcHVyby1pbmZvLXZpZGVvLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybDogJy4vcHVyby1pbmZvLXZpZGVvLmNvbXBvbmVudC5zY3NzJyxcbn0pXG5leHBvcnQgY2xhc3MgUHVyb0luZm9WaWRlb0NvbXBvbmVudCB7XG4gICAgQElucHV0KCkgdGl0bGU/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgc3VidGl0bGU/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgYnV0dG9uPzogUHVyb0J1dHRvbkk7XG4gICAgQElucHV0KCkgdmlkZW8/OiBQdXJvVmlkZW9JO1xuICAgIEBJbnB1dCgpIHJldmVyc2U/OiBib29sZWFuO1xuICAgIEBJbnB1dCgpIHRhZ3M/OiBQdXJvVGFnc0k7XG4gICAgQElucHV0KCkgdGV4dENvbG9ycz86IFB1cm9UZXh0c0NvbG9yc0k7XG5cbiAgICBpc1pvb21PdXQgPSBmYWxzZTsgXG5cbiAgICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgc2FuaXRpemVyOiBEb21TYW5pdGl6ZXIsXG4gICAgICAgIEBJbmplY3QoUExBVEZPUk1fSUQpIHByaXZhdGUgcGxhdGZvcm1JZDogT2JqZWN0XG4gICAgKSB7fVxuXG4gICAgQEhvc3RMaXN0ZW5lcignd2luZG93OnJlc2l6ZScpXG4gICAgb25SZXNpemUoKSB7XG4gICAgICAgIHRoaXMuY2hlY2tab29tKCk7XG4gICAgfVxuICAgIGNoZWNrWm9vbSgpIHtcbiAgICAgICAgaWYgKCFpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSWQpKSByZXR1cm47XG5cbiAgICAgICAgY29uc3Qgem9vbSA9IE1hdGgucm91bmQoKHdpbmRvdy5vdXRlcldpZHRoIC8gd2luZG93LmlubmVyV2lkdGgpICogMTAwKTtcbiAgICAgICAgdGhpcy5pc1pvb21PdXQgPSB6b29tIDwgMTAwO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICBpZiAoIWlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkpIHJldHVybjtcbiAgICAgICAgdGhpcy5jaGVja1pvb20oKTtcbiAgICB9XG5cbiAgICBpc1lvdVR1YmUodXJsOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIC8oPzp5b3V0dWJlXFwuY29tfHlvdXR1XFwuYmUpL2kudGVzdCh1cmwgPz8gJycpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZXh0cmFjdFlvdVR1YmVJZCh1cmw6IHN0cmluZyk6IHN0cmluZyB8IG51bGwge1xuICAgICAgICBjb25zdCBtID1cbiAgICAgICAgICAgIHVybC5tYXRjaCgveW91dHVcXC5iZVxcLyhbYS16QS1aMC05Xy1dezYsfSkvKSB8fFxuICAgICAgICAgICAgdXJsLm1hdGNoKC9bPyZddj0oW2EtekEtWjAtOV8tXXs2LH0pLykgfHxcbiAgICAgICAgICAgIHVybC5tYXRjaCgveW91dHViZVxcLmNvbVxcL2VtYmVkXFwvKFthLXpBLVowLTlfLV17Nix9KS8pO1xuICAgICAgICByZXR1cm4gbSA/IG1bMV0gOiBudWxsO1xuICAgIH1cblxuICAgIGdldFlvdVR1YmVFbWJlZCh1cmw6IHN0cmluZyk6IFNhZmVSZXNvdXJjZVVybCB7XG4gICAgICAgIGNvbnN0IGlkID0gdGhpcy5leHRyYWN0WW91VHViZUlkKHVybCkgPz8gJyc7XG4gICAgICAgIGNvbnN0IGVtYmVkID1cbiAgICAgICAgICAgIGBodHRwczovL3d3dy55b3V0dWJlLW5vY29va2llLmNvbS9lbWJlZC8ke2lkfWAgK1xuICAgICAgICAgICAgYD9hdXRvcGxheT0xJm11dGU9MSZsb29wPTEmcGxheWxpc3Q9JHtpZH1gICtcbiAgICAgICAgICAgIGAmY29udHJvbHM9MCZtb2Rlc3RicmFuZGluZz0xJnJlbD0wJnBsYXlzaW5saW5lPTFgICtcbiAgICAgICAgICAgIGAmaXZfbG9hZF9wb2xpY3k9MyZmcz0wJmRpc2FibGVrYj0xJmNjX2xvYWRfcG9saWN5PTAmZW5hYmxlanNhcGk9MGA7XG4gICAgICAgIHJldHVybiB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0UmVzb3VyY2VVcmwoZW1iZWQpO1xuICAgIH1cbn1cbiIsIjxzZWN0aW9uXG4gICAgY2xhc3M9XCJldmVudFZpZGVvIGV2ZW50VmlkZW8tLXJpZ2h0IGdlbmVyYWxNYXJnaW5cIlxuICAgIFtuZ0NsYXNzXT1cInsgJ2V2ZW50VmlkZW8tLXJpZ2h0JzogcmV2ZXJzZSB9XCJcbiAgICByZXNpemVab29tXG4+XG4gICAgPGRpdiBjbGFzcz1cImV2ZW50VmlkZW9fX3BsYXllclwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZXZlbnRWaWRlb19fcGxheWVySW5uZXJcIj5cbiAgICAgICAgICAgIEBpZiAodmlkZW8/LnNvdXJjZTsgYXMgc3JjKSB7XG4gICAgICAgICAgICAgICAgQGlmIChpc1lvdVR1YmUoc3JjKSkge1xuICAgICAgICAgICAgICAgICAgICA8aWZyYW1lXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImV2ZW50VmlkZW9fX21lZGlhXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtzcmNdPVwiZ2V0WW91VHViZUVtYmVkKHNyYylcIlxuICAgICAgICAgICAgICAgICAgICAgICAgZnJhbWVib3JkZXI9XCIwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGFsbG93PVwiYXV0b3BsYXk7IGVuY3J5cHRlZC1tZWRpYTsgcGljdHVyZS1pbi1waWN0dXJlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGFsbG93ZnVsbHNjcmVlblxuICAgICAgICAgICAgICAgICAgICAgICAgdGFiaW5kZXg9XCItMVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIxMDAlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD1cIjEwMCVcIlxuICAgICAgICAgICAgICAgICAgICA+PC9pZnJhbWU+XG4gICAgICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIDx2aWRlb1xuICAgICAgICAgICAgICAgICAgICAgICAgYXV0b3BsYXlcbiAgICAgICAgICAgICAgICAgICAgICAgIG11dGVkXG4gICAgICAgICAgICAgICAgICAgICAgICBsb29wXG4gICAgICAgICAgICAgICAgICAgICAgICBwbGF5c2lubGluZVxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIxMDAlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD1cIjEwMCVcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NyY109XCJzcmNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0eXBlXT1cInZpZGVvPy50eXBlIHx8ICd2aWRlby9tcDQnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvdmlkZW8+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZXZlbnRWaWRlb19fY29udGVudCBldmVudFZpZGVvX19jb250ZW50LS1hbGlnbkNlbnRlclwiPlxuICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgQGlmICh0aXRsZSkge1xuICAgICAgICAgICAgICAgIDxsaWItcHVyby1keW5hbWljLWhlYWRpbmdcbiAgICAgICAgICAgICAgICAgICAgW3RhZ109XCJ0YWdzPy50aXRsZSB8fCAnaDInXCJcbiAgICAgICAgICAgICAgICAgICAgY3NzQ2xhc3M9XCJldmVudFZpZGVvX19oZWFkaW5nXCJcbiAgICAgICAgICAgICAgICAgICAgW2NvbG9yXT1cInRleHRDb2xvcnM/LnRpdGxlXCJcbiAgICAgICAgICAgICAgICAgICAgW2NvbnRlbnRdPVwidGl0bGVcIlxuICAgICAgICAgICAgICAgID48L2xpYi1wdXJvLWR5bmFtaWMtaGVhZGluZz5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpZiAoc3VidGl0bGUpIHtcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXZlbnRWaWRlb19fc3ViSGVhZGluZ1wiIFtpbm5lckhUTUxdPVwic3VidGl0bGVcIj48L2Rpdj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpZiAoZGVzY3JpcHRpb24pIHtcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXZlbnRWaWRlb19fcGFyYWdyYXBoXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgW2lubmVySFRNTF09XCJkZXNjcmlwdGlvblwiPjwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJ0bl9fZ3JvdXBcIj5cbiAgICAgICAgICAgICAgICBAaWYgKGJ1dHRvbikge1xuICAgICAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICAgICAgW2xpbmtUeXBlXT1cImJ1dHRvbi5saW5rVHlwZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbaHJlZl09XCJidXR0b24udXJsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bl9fcHJpbWFyeS0tb3V0bGluZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImJ1dHRvbi5sYWJlbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICA+PHNwYW4+e3sgYnV0dG9uLmxhYmVsIH19PC9zcGFuPjwvYVxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9zZWN0aW9uPlxuIl19
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVyby1pbmZvLXZpZGVvLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3B1cm8vc3JjL2xpYi9jb21wb25lbnRzL3B1cm8taW5mby12aWRlby9wdXJvLWluZm8tdmlkZW8uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHVyby9zcmMvbGliL2NvbXBvbmVudHMvcHVyby1pbmZvLXZpZGVvL3B1cm8taW5mby12aWRlby5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEYsT0FBTyxFQUNILHFCQUFxQixFQUNyQix1QkFBdUIsR0FDMUIsTUFBTSxrQkFBa0IsQ0FBQztBQVExQixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7OztBQWVoRixNQUFNLE9BQU8sc0JBQXNCO0lBWS9CLElBQUksU0FBUztRQUNULE9BQU8saUJBQWlCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQztJQUN0RSxDQUFDO0lBRUEsWUFDVyxTQUF1QixFQUNGLFVBQWtCO1FBRHZDLGNBQVMsR0FBVCxTQUFTLENBQWM7UUFDRixlQUFVLEdBQVYsVUFBVSxDQUFRO1FBUm5ELGNBQVMsR0FBRyxLQUFLLENBQUM7SUFTZixDQUFDO0lBR0osUUFBUTtRQUNKLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBQ0QsU0FBUztRQUNMLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO1lBQUUsT0FBTztRQUVoRCxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxDQUFDLFVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUM7UUFDdkUsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLEdBQUcsR0FBRyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUM7WUFBRSxPQUFPO1FBQ2hELElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQsU0FBUyxDQUFDLEdBQVc7UUFDakIsT0FBTyw2QkFBNkIsQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxHQUFXO1FBQ2hDLE1BQU0sQ0FBQyxHQUNILEdBQUcsQ0FBQyxLQUFLLENBQUMsZ0NBQWdDLENBQUM7WUFDM0MsR0FBRyxDQUFDLEtBQUssQ0FBQywyQkFBMkIsQ0FBQztZQUN0QyxHQUFHLENBQUMsS0FBSyxDQUFDLDBDQUEwQyxDQUFDLENBQUM7UUFDMUQsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQzNCLENBQUM7SUFFRCxlQUFlLENBQUMsR0FBVztRQUN2QixNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQzVDLE1BQU0sS0FBSyxHQUNQLDBDQUEwQyxFQUFFLEVBQUU7WUFDOUMsc0NBQXNDLEVBQUUsRUFBRTtZQUMxQyxrREFBa0Q7WUFDbEQsbUVBQW1FLENBQUM7UUFDeEUsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLDhCQUE4QixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2hFLENBQUM7K0dBekRRLHNCQUFzQiw4Q0FrQm5CLFdBQVc7bUdBbEJkLHNCQUFzQixtVEM1Qm5DLG1qRkFzRUEsbVZEbkRRLFlBQVksNkhBQ1oscUJBQXFCLDRJQUNyQix1QkFBdUIseURBRXZCLDJCQUEyQjs7NEZBS3RCLHNCQUFzQjtrQkFibEMsU0FBUzsrQkFDSSxxQkFBcUIsY0FDbkIsSUFBSSxXQUNQO3dCQUNMLFlBQVk7d0JBQ1oscUJBQXFCO3dCQUNyQix1QkFBdUI7d0JBQ3ZCLHVCQUF1Qjt3QkFDdkIsMkJBQTJCO3FCQUM5Qjs7MEJBc0JJLE1BQU07MkJBQUMsV0FBVzt5Q0FqQmQsS0FBSztzQkFBYixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFjTixRQUFRO3NCQURQLFlBQVk7dUJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSwgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBIb3N0TGlzdGVuZXIsIEluamVjdCwgSW5wdXQsIFBMQVRGT1JNX0lEIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIFB1cm9MaW5rVHlwZURpcmVjdGl2ZSxcbiAgICBQdXJvUmVzaXplWm9vbURpcmVjdGl2ZSxcbn0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcyc7XG5pbXBvcnQge1xuICAgIFB1cm9CdXR0b25JLFxuICAgIFB1cm9WaWRlb0ksXG4gICAgUHVyb1RhZ3NJLFxuICAgIFB1cm9UZXh0c0NvbG9yc0ksXG59IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgRG9tU2FuaXRpemVyLCBTYWZlUmVzb3VyY2VVcmwgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7IFB1cm9EeW5hbWljSGVhZGluZ0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL3NoYXJlZC9wdXJvLWR5bmFtaWMtaGVhZGluZyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbGliLXB1cm8taW5mby12aWRlbycsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgUHVyb0xpbmtUeXBlRGlyZWN0aXZlLFxuICAgICAgICBQdXJvUmVzaXplWm9vbURpcmVjdGl2ZSxcbiAgICAgICAgUHVyb1Jlc2l6ZVpvb21EaXJlY3RpdmUsXG4gICAgICAgIFB1cm9EeW5hbWljSGVhZGluZ0NvbXBvbmVudCxcbiAgICBdLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9wdXJvLWluZm8tdmlkZW8uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsOiAnLi9wdXJvLWluZm8tdmlkZW8uY29tcG9uZW50LnNjc3MnLFxufSlcbmV4cG9ydCBjbGFzcyBQdXJvSW5mb1ZpZGVvQ29tcG9uZW50IHtcbiAgICBASW5wdXQoKSB0aXRsZT86IHN0cmluZztcbiAgICBASW5wdXQoKSBzdWJ0aXRsZT86IHN0cmluZztcbiAgICBASW5wdXQoKSBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgICBASW5wdXQoKSBidXR0b24/OiBQdXJvQnV0dG9uSTtcbiAgICBASW5wdXQoKSB2aWRlbz86IFB1cm9WaWRlb0k7XG4gICAgQElucHV0KCkgcmV2ZXJzZT86IGJvb2xlYW47XG4gICAgQElucHV0KCkgdGFncz86IFB1cm9UYWdzSTtcbiAgICBASW5wdXQoKSB0ZXh0Q29sb3JzPzogUHVyb1RleHRzQ29sb3JzSTtcblxuICAgIGlzWm9vbU91dCA9IGZhbHNlO1xuXG4gICAgZ2V0IHNob3dWaWRlbygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkgJiYgISF0aGlzLnZpZGVvPy5zb3VyY2U7XG4gICAgfVxuXG4gICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIHNhbml0aXplcjogRG9tU2FuaXRpemVyLFxuICAgICAgICBASW5qZWN0KFBMQVRGT1JNX0lEKSBwcml2YXRlIHBsYXRmb3JtSWQ6IE9iamVjdFxuICAgICkge31cblxuICAgIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnKVxuICAgIG9uUmVzaXplKCkge1xuICAgICAgICB0aGlzLmNoZWNrWm9vbSgpO1xuICAgIH1cbiAgICBjaGVja1pvb20oKSB7XG4gICAgICAgIGlmICghaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSkgcmV0dXJuO1xuXG4gICAgICAgIGNvbnN0IHpvb20gPSBNYXRoLnJvdW5kKCh3aW5kb3cub3V0ZXJXaWR0aCAvIHdpbmRvdy5pbm5lcldpZHRoKSAqIDEwMCk7XG4gICAgICAgIHRoaXMuaXNab29tT3V0ID0gem9vbSA8IDEwMDtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgaWYgKCFpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSWQpKSByZXR1cm47XG4gICAgICAgIHRoaXMuY2hlY2tab29tKCk7XG4gICAgfVxuXG4gICAgaXNZb3VUdWJlKHVybDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAvKD86eW91dHViZVxcLmNvbXx5b3V0dVxcLmJlKS9pLnRlc3QodXJsID8/ICcnKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGV4dHJhY3RZb3VUdWJlSWQodXJsOiBzdHJpbmcpOiBzdHJpbmcgfCBudWxsIHtcbiAgICAgICAgY29uc3QgbSA9XG4gICAgICAgICAgICB1cmwubWF0Y2goL3lvdXR1XFwuYmVcXC8oW2EtekEtWjAtOV8tXXs2LH0pLykgfHxcbiAgICAgICAgICAgIHVybC5tYXRjaCgvWz8mXXY9KFthLXpBLVowLTlfLV17Nix9KS8pIHx8XG4gICAgICAgICAgICB1cmwubWF0Y2goL3lvdXR1YmVcXC5jb21cXC9lbWJlZFxcLyhbYS16QS1aMC05Xy1dezYsfSkvKTtcbiAgICAgICAgcmV0dXJuIG0gPyBtWzFdIDogbnVsbDtcbiAgICB9XG5cbiAgICBnZXRZb3VUdWJlRW1iZWQodXJsOiBzdHJpbmcpOiBTYWZlUmVzb3VyY2VVcmwge1xuICAgICAgICBjb25zdCBpZCA9IHRoaXMuZXh0cmFjdFlvdVR1YmVJZCh1cmwpID8/ICcnO1xuICAgICAgICBjb25zdCBlbWJlZCA9XG4gICAgICAgICAgICBgaHR0cHM6Ly93d3cueW91dHViZS1ub2Nvb2tpZS5jb20vZW1iZWQvJHtpZH1gICtcbiAgICAgICAgICAgIGA/YXV0b3BsYXk9MSZtdXRlPTEmbG9vcD0xJnBsYXlsaXN0PSR7aWR9YCArXG4gICAgICAgICAgICBgJmNvbnRyb2xzPTAmbW9kZXN0YnJhbmRpbmc9MSZyZWw9MCZwbGF5c2lubGluZT0xYCArXG4gICAgICAgICAgICBgJml2X2xvYWRfcG9saWN5PTMmZnM9MCZkaXNhYmxla2I9MSZjY19sb2FkX3BvbGljeT0wJmVuYWJsZWpzYXBpPTBgO1xuICAgICAgICByZXR1cm4gdGhpcy5zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdFJlc291cmNlVXJsKGVtYmVkKTtcbiAgICB9XG59XG4iLCI8c2VjdGlvblxuICAgIGNsYXNzPVwiZXZlbnRWaWRlbyBldmVudFZpZGVvLS1yaWdodCBnZW5lcmFsTWFyZ2luXCJcbiAgICBbbmdDbGFzc109XCJ7ICdldmVudFZpZGVvLS1yaWdodCc6IHJldmVyc2UgfVwiXG4gICAgcmVzaXplWm9vbVxuPlxuICAgIDxkaXYgY2xhc3M9XCJldmVudFZpZGVvX19wbGF5ZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImV2ZW50VmlkZW9fX3BsYXllcklubmVyXCI+XG4gICAgICAgICAgICBAaWYgKHNob3dWaWRlbykge1xuICAgICAgICAgICAgICAgIEBpZiAoaXNZb3VUdWJlKHZpZGVvIS5zb3VyY2UhKSkge1xuICAgICAgICAgICAgICAgICAgICA8aWZyYW1lXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImV2ZW50VmlkZW9fX21lZGlhXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtzcmNdPVwiZ2V0WW91VHViZUVtYmVkKHZpZGVvIS5zb3VyY2UhKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBmcmFtZWJvcmRlcj1cIjBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgYWxsb3c9XCJhdXRvcGxheTsgZW5jcnlwdGVkLW1lZGlhOyBwaWN0dXJlLWluLXBpY3R1cmVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgYWxsb3dmdWxsc2NyZWVuXG4gICAgICAgICAgICAgICAgICAgICAgICB0YWJpbmRleD1cIi0xXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjEwMCVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0PVwiMTAwJVwiXG4gICAgICAgICAgICAgICAgICAgID48L2lmcmFtZT5cbiAgICAgICAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgPHZpZGVvXG4gICAgICAgICAgICAgICAgICAgICAgICBhdXRvcGxheVxuICAgICAgICAgICAgICAgICAgICAgICAgbXV0ZWRcbiAgICAgICAgICAgICAgICAgICAgICAgIGxvb3BcbiAgICAgICAgICAgICAgICAgICAgICAgIHBsYXlzaW5saW5lXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjEwMCVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0PVwiMTAwJVwiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzb3VyY2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc3JjXT1cInZpZGVvIS5zb3VyY2UhXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdHlwZV09XCJ2aWRlbz8udHlwZSB8fCAndmlkZW8vbXA0J1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICA8L3ZpZGVvPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImV2ZW50VmlkZW9fX2NvbnRlbnQgZXZlbnRWaWRlb19fY29udGVudC0tYWxpZ25DZW50ZXJcIj5cbiAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIEBpZiAodGl0bGUpIHtcbiAgICAgICAgICAgICAgICA8bGliLXB1cm8tZHluYW1pYy1oZWFkaW5nXG4gICAgICAgICAgICAgICAgICAgIFt0YWddPVwidGFncz8udGl0bGUgfHwgJ2gyJ1wiXG4gICAgICAgICAgICAgICAgICAgIGNzc0NsYXNzPVwiZXZlbnRWaWRlb19faGVhZGluZ1wiXG4gICAgICAgICAgICAgICAgICAgIFtjb2xvcl09XCJ0ZXh0Q29sb3JzPy50aXRsZVwiXG4gICAgICAgICAgICAgICAgICAgIFtjb250ZW50XT1cInRpdGxlXCJcbiAgICAgICAgICAgICAgICA+PC9saWItcHVyby1keW5hbWljLWhlYWRpbmc+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaWYgKHN1YnRpdGxlKSB7XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImV2ZW50VmlkZW9fX3N1YkhlYWRpbmdcIiBbaW5uZXJIVE1MXT1cInN1YnRpdGxlXCI+PC9kaXY+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaWYgKGRlc2NyaXB0aW9uKSB7XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImV2ZW50VmlkZW9fX3BhcmFncmFwaFwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IFtpbm5lckhUTUxdPVwiZGVzY3JpcHRpb25cIj48L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJidG5fX2dyb3VwXCI+XG4gICAgICAgICAgICAgICAgQGlmIChidXR0b24pIHtcbiAgICAgICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgICAgIFtsaW5rVHlwZV09XCJidXR0b24ubGlua1R5cGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2hyZWZdPVwiYnV0dG9uLnVybFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG5fX3ByaW1hcnktLW91dGxpbmVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJidXR0b24ubGFiZWxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPjxzcGFuPnt7IGJ1dHRvbi5sYWJlbCB9fTwvc3Bhbj48L2FcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvc2VjdGlvbj5cbiJdfQ==
@@ -1,5 +1,5 @@
1
- import { CommonModule } from '@angular/common';
2
- import { ChangeDetectionStrategy, Component, inject, Input, } from '@angular/core';
1
+ import { CommonModule, isPlatformBrowser } from '@angular/common';
2
+ import { ChangeDetectionStrategy, Component, inject, Input, PLATFORM_ID, } from '@angular/core';
3
3
  import { AutoImageZoomWrapperDirective, PuroActiveModalDirective, PuroLinkTypeDirective, PuroSliderDirective, } from '../../directives';
4
4
  import { ScreenSizerService } from '../../services';
5
5
  import * as i0 from "@angular/core";
@@ -9,6 +9,7 @@ export class PuroTopSliderComponent {
9
9
  constructor(sanitizer) {
10
10
  this.sanitizer = sanitizer;
11
11
  this.screenSizer = inject(ScreenSizerService);
12
+ this.platformId = inject(PLATFORM_ID);
12
13
  }
13
14
  isYouTube(url) {
14
15
  return /(?:youtube\.com|youtu\.be)/i.test(url ?? '');
@@ -42,6 +43,8 @@ export class PuroTopSliderComponent {
42
43
  return this.images;
43
44
  }
44
45
  get showVideo() {
46
+ if (!isPlatformBrowser(this.platformId))
47
+ return false;
45
48
  return !!this.video && !this.isMobile;
46
49
  }
47
50
  get shouldUseSlider() {
@@ -94,4 +97,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
94
97
  }], currentHotelId: [{
95
98
  type: Input
96
99
  }] } });
97
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVyby10b3Atc2xpZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3B1cm8vc3JjL2xpYi9jb21wb25lbnRzL3B1cm8tdG9wLXNsaWRlci9wdXJvLXRvcC1zbGlkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHVyby9zcmMvbGliL2NvbXBvbmVudHMvcHVyby10b3Atc2xpZGVyL3B1cm8tdG9wLXNsaWRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsTUFBTSxFQUNOLEtBQUssR0FFUixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQ0gsNkJBQTZCLEVBQzdCLHdCQUF3QixFQUN4QixxQkFBcUIsRUFDckIsbUJBQW1CLEdBQ3RCLE1BQU0sa0JBQWtCLENBQUM7QUFFMUIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFpQnBELE1BQU0sT0FBTyxzQkFBc0I7SUFtQi9CLFlBQW9CLFNBQXVCO1FBQXZCLGNBQVMsR0FBVCxTQUFTLENBQWM7UUFGeEIsZ0JBQVcsR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUVkLENBQUM7SUFFL0MsU0FBUyxDQUFDLEdBQVc7UUFDakIsT0FBTyw2QkFBNkIsQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxHQUFXO1FBQ2hDLE1BQU0sQ0FBQyxHQUNILEdBQUcsQ0FBQyxLQUFLLENBQUMsZ0NBQWdDLENBQUM7WUFDM0MsR0FBRyxDQUFDLEtBQUssQ0FBQywyQkFBMkIsQ0FBQztZQUN0QyxHQUFHLENBQUMsS0FBSyxDQUFDLDBDQUEwQyxDQUFDLENBQUM7UUFDMUQsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQzNCLENBQUM7SUFFRCxlQUFlLENBQUMsR0FBVztRQUN2QixNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQzVDLE1BQU0sS0FBSyxHQUNQLDBDQUEwQyxFQUFFLEVBQUU7WUFDOUMsc0NBQXNDLEVBQUUsRUFBRTtZQUMxQyxrREFBa0Q7WUFDbEQsbUVBQW1FLENBQUM7UUFDeEUsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLDhCQUE4QixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFFRCxJQUFJLFFBQVE7UUFDUixNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQztRQUV6QyxpREFBaUQ7UUFDakQsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ2QsT0FBTyxLQUFLLENBQUM7U0FDaEI7UUFFRCxPQUFPLENBQUMsSUFBSSxHQUFHLENBQUM7SUFDcEIsQ0FBQztJQUVELElBQUksY0FBYztRQUNkLElBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLE1BQU0sRUFBRTtZQUM1QyxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7U0FDNUI7UUFDRCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDdkIsQ0FBQztJQUVELElBQUksU0FBUztRQUNULE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQzFDLENBQUM7SUFFRCxJQUFJLGVBQWU7UUFDZixPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsTUFBTSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNyRSxDQUFDO0lBRUQsSUFBSSxhQUFhO1FBQ2Isa0NBQWtDO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLGNBQWMsSUFBSSxTQUFTLENBQUM7SUFDNUMsQ0FBQzsrR0F4RVEsc0JBQXNCO21HQUF0QixzQkFBc0IsdWJDakNuQyxrc05Bb0xBLDhIRDlKUSxZQUFZLHNNQUNaLG1CQUFtQixpRkFDbkIscUJBQXFCLDRJQUNyQix3QkFBd0IsMERBRXhCLDZCQUE2Qjs7NEZBTXhCLHNCQUFzQjtrQkFmbEMsU0FBUzsrQkFDSSxxQkFBcUIsY0FDbkIsSUFBSSxXQUNQO3dCQUNMLFlBQVk7d0JBQ1osbUJBQW1CO3dCQUNuQixxQkFBcUI7d0JBQ3JCLHdCQUF3Qjt3QkFFeEIsNkJBQTZCO3FCQUNoQyxtQkFHZ0IsdUJBQXVCLENBQUMsTUFBTTtpRkFHdEMsTUFBTTtzQkFBZCxLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBpbmplY3QsXG4gICAgSW5wdXQsXG4gICAgVGVtcGxhdGVSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRG9tU2FuaXRpemVyLCBTYWZlUmVzb3VyY2VVcmwgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7XG4gICAgQXV0b0ltYWdlWm9vbVdyYXBwZXJEaXJlY3RpdmUsXG4gICAgUHVyb0FjdGl2ZU1vZGFsRGlyZWN0aXZlLFxuICAgIFB1cm9MaW5rVHlwZURpcmVjdGl2ZSxcbiAgICBQdXJvU2xpZGVyRGlyZWN0aXZlLFxufSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzJztcbmltcG9ydCB7IFB1cm9CdXR0b25JLCBQdXJvVmlkZW9JIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBTY3JlZW5TaXplclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbGliLXB1cm8tdG9wLXNsaWRlcicsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgUHVyb1NsaWRlckRpcmVjdGl2ZSxcbiAgICAgICAgUHVyb0xpbmtUeXBlRGlyZWN0aXZlLFxuICAgICAgICBQdXJvQWN0aXZlTW9kYWxEaXJlY3RpdmUsXG5cbiAgICAgICAgQXV0b0ltYWdlWm9vbVdyYXBwZXJEaXJlY3RpdmUsXG4gICAgXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vcHVyby10b3Atc2xpZGVyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybDogJy4vcHVyby10b3Atc2xpZGVyLmNvbXBvbmVudC5zY3NzJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgUHVyb1RvcFNsaWRlckNvbXBvbmVudCB7XG4gICAgQElucHV0KCkgZW5naW5lITogVGVtcGxhdGVSZWY8YW55PjtcbiAgICBASW5wdXQoKSB0aXRsZT86IHN0cmluZztcbiAgICBASW5wdXQoKSBtYWluVGl0bGU/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgcHJldGl0bGU/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgc3VidGl0bGU/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgc3BvdGlmeT86IFB1cm9CdXR0b25JO1xuICAgIEBJbnB1dCgpIG5ld3NsZXR0ZXI/OiBQdXJvQnV0dG9uSTtcbiAgICBASW5wdXQoKSBsYW5ndWFnZXM/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgZmlkZWxpdHk/OiBQdXJvQnV0dG9uSTtcbiAgICBASW5wdXQoKSBvZmZlcnM/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgc2VsZWN0ZWRMYW5ndWFnZT86IHN0cmluZztcbiAgICBASW5wdXQoKSBpbWFnZXM/OiBQdXJvSW1hZ2VUb3BTbGlkZXJJW107XG4gICAgQElucHV0KCkgaW1hZ2VzTW9iaWxlPzogUHVyb0ltYWdlVG9wU2xpZGVySVtdO1xuICAgIEBJbnB1dCgpIHZpZGVvPzogUHVyb1ZpZGVvSTtcbiAgICBASW5wdXQoKSBjdXJyZW50SG90ZWxJZD86IG51bWJlcjtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBzY3JlZW5TaXplciA9IGluamVjdChTY3JlZW5TaXplclNlcnZpY2UpO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBzYW5pdGl6ZXI6IERvbVNhbml0aXplcikge31cblxuICAgIGlzWW91VHViZSh1cmw6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gLyg/OnlvdXR1YmVcXC5jb218eW91dHVcXC5iZSkvaS50ZXN0KHVybCA/PyAnJyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBleHRyYWN0WW91VHViZUlkKHVybDogc3RyaW5nKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgICAgIGNvbnN0IG0gPVxuICAgICAgICAgICAgdXJsLm1hdGNoKC95b3V0dVxcLmJlXFwvKFthLXpBLVowLTlfLV17Nix9KS8pIHx8XG4gICAgICAgICAgICB1cmwubWF0Y2goL1s/Jl12PShbYS16QS1aMC05Xy1dezYsfSkvKSB8fFxuICAgICAgICAgICAgdXJsLm1hdGNoKC95b3V0dWJlXFwuY29tXFwvZW1iZWRcXC8oW2EtekEtWjAtOV8tXXs2LH0pLyk7XG4gICAgICAgIHJldHVybiBtID8gbVsxXSA6IG51bGw7XG4gICAgfVxuXG4gICAgZ2V0WW91VHViZUVtYmVkKHVybDogc3RyaW5nKTogU2FmZVJlc291cmNlVXJsIHtcbiAgICAgICAgY29uc3QgaWQgPSB0aGlzLmV4dHJhY3RZb3VUdWJlSWQodXJsKSA/PyAnJztcbiAgICAgICAgY29uc3QgZW1iZWQgPVxuICAgICAgICAgICAgYGh0dHBzOi8vd3d3LnlvdXR1YmUtbm9jb29raWUuY29tL2VtYmVkLyR7aWR9YCArXG4gICAgICAgICAgICBgP2F1dG9wbGF5PTEmbXV0ZT0xJmxvb3A9MSZwbGF5bGlzdD0ke2lkfWAgK1xuICAgICAgICAgICAgYCZjb250cm9scz0wJm1vZGVzdGJyYW5kaW5nPTEmcmVsPTAmcGxheXNpbmxpbmU9MWAgK1xuICAgICAgICAgICAgYCZpdl9sb2FkX3BvbGljeT0zJmZzPTAmZGlzYWJsZWtiPTEmY2NfbG9hZF9wb2xpY3k9MCZlbmFibGVqc2FwaT0wYDtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RSZXNvdXJjZVVybChlbWJlZCk7XG4gICAgfVxuXG4gICAgZ2V0IGlzTW9iaWxlKCk6IGJvb2xlYW4ge1xuICAgICAgICBjb25zdCB3ID0gdGhpcy5zY3JlZW5TaXplci52aWV3cG9ydFdpZHRoO1xuXG4gICAgICAgIC8vIOKblO+4jyBTaSBhw7puIG5vIHNhYmVtb3MgZWwgdmlld3BvcnQsIE5PIGVzIG1vYmlsZVxuICAgICAgICBpZiAoIXcgfHwgdyA8PSAwKSB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdyA8PSA3Njg7XG4gICAgfVxuXG4gICAgZ2V0IHJlc29sdmVkSW1hZ2VzKCk6IFB1cm9JbWFnZVRvcFNsaWRlcklbXSB8IHVuZGVmaW5lZCB7XG4gICAgICAgIGlmICh0aGlzLmlzTW9iaWxlICYmIHRoaXMuaW1hZ2VzTW9iaWxlPy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmltYWdlc01vYmlsZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcy5pbWFnZXM7XG4gICAgfVxuXG4gICAgZ2V0IHNob3dWaWRlbygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy52aWRlbyAmJiAhdGhpcy5pc01vYmlsZTtcbiAgICB9XG5cbiAgICBnZXQgc2hvdWxkVXNlU2xpZGVyKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gIXRoaXMuc2hvd1ZpZGVvICYmICh0aGlzLnJlc29sdmVkSW1hZ2VzPy5sZW5ndGggPz8gMCkgPiAxO1xuICAgIH1cblxuICAgIGdldCBpc0VuZ2luZVJlYWR5KCk6IGJvb2xlYW4ge1xuICAgICAgICAvLyBFbmdpbmUgc29sbyBjdWFuZG8gTk8gaGF5IGhvdGVsXG4gICAgICAgIHJldHVybiB0aGlzLmN1cnJlbnRIb3RlbElkID09IHVuZGVmaW5lZDtcbiAgICB9XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHVyb0ltYWdlVG9wU2xpZGVySSB7XG4gICAgc3JjOiBzdHJpbmc7XG4gICAgYWx0Pzogc3RyaW5nO1xuICAgIHdpZHRoPzogbnVtYmVyO1xuICAgIGhlaWdodD86IG51bWJlcjtcbn1cbiIsIjxzZWN0aW9uXG4gICAgY2xhc3M9XCJiYW5uZXJcIlxuICAgIHN0eWxlPVwiYmFja2dyb3VuZDogI2Y5ZjVlZFwiXG4gICAgW2NsYXNzLmpzLWFjdGl2ZS1zbGlkZXJdPVwic2hvdWxkVXNlU2xpZGVyXCJcbiAgICBbcHVyb1NsaWRlcl09XCJzaG91bGRVc2VTbGlkZXIgPyByZXNvbHZlZEltYWdlcyA6IHVuZGVmaW5lZFwiXG4gICAgZGF0YS1zbGlkZXNfaW5maW5pdGU9XCJ0cnVlXCJcbiAgICBkYXRhLXNsaWRlcl9uYW1lPVwianMtYmFubmVyLXNsaWRlclwiXG4gICAgZGF0YS1zbGlkZXJfc2hvd2J0bnM9XCJmYWxzZVwiXG4gICAgZGF0YS1zbGlkZXJfc2hvd2RvdHM9XCJmYWxzZVwiXG4gICAgZGF0YS1zbGlkZXJfZmFkZT1cInRydWVcIlxuICAgIGRhdGEtc2xpZGVyX2F1dG9wbGF5PVwidHJ1ZVwiXG4gICAgZGF0YS1zbGlkZXNfcGM9XCIxXCJcbj5cbiAgICBAaWYgKHNob3dWaWRlbykge1xuICAgICAgICA8ZGl2IGNsYXNzPVwiYmFubmVyX192aWRlb1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJhbm5lcl9fdmlkZW8tLWlubmVyXCI+XG4gICAgICAgICAgICAgICAgQGlmICh2aWRlbz8uc291cmNlOyBhcyBzcmMpIHtcbiAgICAgICAgICAgICAgICAgICAgQGlmIChpc1lvdVR1YmUoc3JjKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgPGlmcmFtZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwiWW91VHViZVZpZGVvUGxheWVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjE5MjBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD1cIjEwODBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsbG93PVwiYWNjZWxlcm9tZXRlcjsgYXV0b3BsYXk7IGNsaXBib2FyZC13cml0ZTsgZW5jcnlwdGVkLW1lZGlhOyBneXJvc2NvcGU7IHBpY3R1cmUtaW4tcGljdHVyZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NyY109XCJnZXRZb3VUdWJlRW1iZWQoc3JjKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZnJhbWVib3JkZXI9XCIwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbGxvd2Z1bGxzY3JlZW5cbiAgICAgICAgICAgICAgICAgICAgICAgID48L2lmcmFtZT5cbiAgICAgICAgICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8dmlkZW9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdXRvcGxheVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG11dGVkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9vcFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYXlzaW5saW5lXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIxMDAlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9XCIxMDAlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzcmNdPVwic3JjXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3R5cGVdPVwidmlkZW8/LnR5cGUgfHwgJ3ZpZGVvL21wNCdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3ZpZGVvPlxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIH0gQGVsc2Uge1xuICAgICAgICBAaWYgKHJlc29sdmVkSW1hZ2VzPy5sZW5ndGgpIHtcbiAgICAgICAgICAgIDxpbWdcbiAgICAgICAgICAgICAgICBjbGFzcz1cImJhbm5lcl9faW1hZ2UgYmFubmVyX19pbWFnZS0tbGNwXCJcbiAgICAgICAgICAgICAgICBbc3JjXT1cInJlc29sdmVkSW1hZ2VzPy5bMF0/LnNyY1wiXG4gICAgICAgICAgICAgICAgW2FsdF09XCJyZXNvbHZlZEltYWdlcz8uWzBdPy5hbHQgfHwgbWFpblRpdGxlXCJcbiAgICAgICAgICAgICAgICB3aWR0aD1cIjE5MjBcIlxuICAgICAgICAgICAgICAgIGhlaWdodD1cIjk4MFwiXG4gICAgICAgICAgICAgICAgZmV0Y2hwcmlvcml0eT1cImhpZ2hcIlxuICAgICAgICAgICAgICAgIGxvYWRpbmc9XCJlYWdlclwiXG4gICAgICAgICAgICAgICAgZGVjb2Rpbmc9XCJhc3luY1wiXG4gICAgICAgICAgICAvPlxuICAgICAgICB9XG5cbiAgICAgICAgPCEtLSBTTElERVIgU09MTyBTSSBIQVkgTcOBUyBERSAxIC0tPlxuICAgICAgICBAaWYgKHJlc29sdmVkSW1hZ2VzICYmIHJlc29sdmVkSW1hZ2VzLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJqcy1iYW5uZXItc2xpZGVyXCI+XG4gICAgICAgICAgICAgICAgQGZvciAoaW1hZ2Ugb2YgcmVzb2x2ZWRJbWFnZXMuc2xpY2UoMSk7IHRyYWNrICRpbmRleCkge1xuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYmFubmVyX19pdGVtXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NyY109XCJpbWFnZS5zcmNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthbHRdPVwiaW1hZ2UuYWx0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJhbm5lcl9faW1hZ2VcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt3aWR0aF09XCJpbWFnZS53aWR0aFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2hlaWdodF09XCJpbWFnZS5oZWlnaHRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvYWRpbmc9XCJsYXp5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWNvZGluZz1cImFzeW5jXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgfVxuICAgIEBpZiAobWFpblRpdGxlKSB7XG4gICAgICAgIDxoMSBjbGFzcz1cImJhbm5lcl9fdGl0bGVcIj5cbiAgICAgICAgICAgIDxzcGFuPnt7IG1haW5UaXRsZSB9fTwvc3Bhbj5cbiAgICAgICAgPC9oMT5cbiAgICB9XG4gICAgPGRpdiBjbGFzcz1cImJhbm5lcl9fY29udGVudFwiPlxuICAgICAgICBAaWYgKHByZXRpdGxlKSB7XG4gICAgICAgICAgICA8cCBjbGFzcz1cImJhbm5lcl9fdGV4dFwiPnt7IHByZXRpdGxlIH19PC9wPlxuICAgICAgICB9XG4gICAgICAgIEBpZiAodGl0bGUpIHtcbiAgICAgICAgICAgIDxoMiBjbGFzcz1cImJhbm5lcl9faGVhZGluZ1wiPnt7IHRpdGxlIH19PC9oMj5cbiAgICAgICAgfVxuICAgICAgICBAaWYgKHN1YnRpdGxlKSB7XG4gICAgICAgICAgICA8cCBjbGFzcz1cImJhbm5lcl9fdGV4dFwiPnt7IHN1YnRpdGxlIH19PC9wPlxuICAgICAgICB9XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImJhbm5lcl9fYWN0aW9uc1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYmFubmVyX19ncm91cCBiYW5uZXJfX2dyb3VwLS1sZWZ0XCI+XG4gICAgICAgICAgICBAaWYgKG5ld3NsZXR0ZXIgJiYgbmV3c2xldHRlci5sYWJlbCkge1xuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJiYW5uZXJfX25ld3NsZXR0ZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgICAgIFtocmVmXT1cIm5ld3NsZXR0ZXIudXJsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtsaW5rVHlwZV09XCJuZXdzbGV0dGVyLmxpbmtUeXBlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYmFubmVyX19uZXdzbGV0dGVyLS1pbm5lclwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIm5ld3NsZXR0ZXIubGFiZWxcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImljb24tNjNcIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3Ryb25nPnt7IG5ld3NsZXR0ZXIubGFiZWwgfX08L3N0cm9uZz5cbiAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgPCEtLSBoaWRlIGJ1dHRvbnMgd2hlbiBQdXJvIE9hc2lzIFVyYmFubyAtLT5cbiAgICAgICAgICAgIEBpZiAoc3BvdGlmeSAmJiBzcG90aWZ5LmxhYmVsICYmIGN1cnJlbnRIb3RlbElkICE9PSA1KSB7XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJhbm5lcl9fc3BvdGlmeVwiPlxuICAgICAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICAgICAgW2hyZWZdPVwic3BvdGlmeS51cmxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2xpbmtUeXBlXT1cInNwb3RpZnkubGlua1R5cGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJzcG90aWZ5LmxhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYmFubmVyX19zcG90aWZ5LS1pbm5lclwiXG4gICAgICAgICAgICAgICAgICAgICAgICByb2xlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwic3BvdGlmeSA/PyAnc3BvdGlmeSBpY29uJ1wiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaWNvbi04MlwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzdHJvbmc+e3sgc3BvdGlmeS5sYWJlbCB9fTwvc3Ryb25nPlxuICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJiYW5uZXJfX2dyb3VwIGJhbm5lcl9fZ3JvdXAtLXJpZ2h0XCI+XG4gICAgICAgICAgICBAaWYgKGxhbmd1YWdlcyAmJiBzZWxlY3RlZExhbmd1YWdlKSB7XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJhbm5lcl9fbGFuZ3VhZ2VcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJiYW5uZXJfX2xhbmd1YWdlLS1pbm5lciBqcy1hY3RpdmUtbW9kYWxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgYWN0aXZlTW9kYWxcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtbW9kYWxfbmFtZT1cImxhbmd1YWdlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJvbGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJzZWxlY3RlZExhbmd1YWdlXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJiYW5uZXJfX2xhbmd1YWdlLS1pY29uXCI+e3tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3RlZExhbmd1YWdlXG4gICAgICAgICAgICAgICAgICAgICAgICB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzdHJvbmc+e3sgbGFuZ3VhZ2VzIH19PC9zdHJvbmc+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgPCEtLSBoaWRlIGJ1dHRvbnMgd2hlbiBQdXJvIE9hc2lzIFVyYmFubyAtLT5cbiAgICAgICAgICAgIEBpZiAoZmlkZWxpdHkgJiYgZmlkZWxpdHkubGFiZWwgJiYgY3VycmVudEhvdGVsSWQgIT09IDUpIHtcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYmFubmVyX19maWRlbGl0eUNsdWJcIj5cbiAgICAgICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgICAgIFtocmVmXT1cImZpZGVsaXR5Py51cmxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2xpbmtUeXBlXT1cImZpZGVsaXR5Py5saW5rVHlwZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJhbm5lcl9fZmlkZWxpdHlDbHViLS1pbm5lclwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImZpZGVsaXR5Py5sYWJlbFwiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaWNvbi02MFwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzdHJvbmc+e3sgZmlkZWxpdHk/LmxhYmVsIH19PC9zdHJvbmc+XG4gICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG5cbiAgICA8IS0tIGhpZGUgYnV0dG9ucyB3aGVuIFB1cm8gT2FzaXMgVXJiYW5vIC0tPlxuICAgIEBpZiAoIWlzRW5naW5lUmVhZHkpe1xuICAgICAgICBAaWYgKGVuZ2luZSAmJiBjdXJyZW50SG90ZWxJZCAhPT0gNSkge1xuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJlbmdpbmVcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAob2ZmZXJzKSB7XG4gICAgICAgIDxzcGFuXG4gICAgICAgICAgICBhY3RpdmVNb2RhbFxuICAgICAgICAgICAgY2xhc3M9XCJiYW5uZXJfX29mZmVycy0tdGlnZ2VyIGpzLWFjdGl2ZS1tb2RhbFwiXG4gICAgICAgICAgICBkYXRhLW1vZGFsX25hbWU9XCJ0LW9mZmVyc1wiXG4gICAgICAgICAgICByb2xlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwib2ZmZXJzID8/ICdPZmZlcnMnXCJcbiAgICAgICAgPlxuICAgICAgICAgICAge3sgb2ZmZXJzIH19XG4gICAgICAgIDwvc3Bhbj5cbiAgICB9XG48L3NlY3Rpb24+XG4iXX0=
100
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVyby10b3Atc2xpZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3B1cm8vc3JjL2xpYi9jb21wb25lbnRzL3B1cm8tdG9wLXNsaWRlci9wdXJvLXRvcC1zbGlkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHVyby9zcmMvbGliL2NvbXBvbmVudHMvcHVyby10b3Atc2xpZGVyL3B1cm8tdG9wLXNsaWRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbEUsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsTUFBTSxFQUNOLEtBQUssRUFDTCxXQUFXLEdBRWQsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUNILDZCQUE2QixFQUM3Qix3QkFBd0IsRUFDeEIscUJBQXFCLEVBQ3JCLG1CQUFtQixHQUN0QixNQUFNLGtCQUFrQixDQUFDO0FBRTFCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7O0FBaUJwRCxNQUFNLE9BQU8sc0JBQXNCO0lBb0IvQixZQUFvQixTQUF1QjtRQUF2QixjQUFTLEdBQVQsU0FBUyxDQUFjO1FBSHhCLGdCQUFXLEdBQUcsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDM0MsZUFBVSxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUVKLENBQUM7SUFFL0MsU0FBUyxDQUFDLEdBQVc7UUFDakIsT0FBTyw2QkFBNkIsQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxHQUFXO1FBQ2hDLE1BQU0sQ0FBQyxHQUNILEdBQUcsQ0FBQyxLQUFLLENBQUMsZ0NBQWdDLENBQUM7WUFDM0MsR0FBRyxDQUFDLEtBQUssQ0FBQywyQkFBMkIsQ0FBQztZQUN0QyxHQUFHLENBQUMsS0FBSyxDQUFDLDBDQUEwQyxDQUFDLENBQUM7UUFDMUQsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQzNCLENBQUM7SUFFRCxlQUFlLENBQUMsR0FBVztRQUN2QixNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQzVDLE1BQU0sS0FBSyxHQUNQLDBDQUEwQyxFQUFFLEVBQUU7WUFDOUMsc0NBQXNDLEVBQUUsRUFBRTtZQUMxQyxrREFBa0Q7WUFDbEQsbUVBQW1FLENBQUM7UUFDeEUsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLDhCQUE4QixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFFRCxJQUFJLFFBQVE7UUFDUixNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQztRQUV6QyxpREFBaUQ7UUFDakQsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ2QsT0FBTyxLQUFLLENBQUM7U0FDaEI7UUFFRCxPQUFPLENBQUMsSUFBSSxHQUFHLENBQUM7SUFDcEIsQ0FBQztJQUVELElBQUksY0FBYztRQUNkLElBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLE1BQU0sRUFBRTtZQUM1QyxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7U0FDNUI7UUFDRCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDdkIsQ0FBQztJQUVELElBQUksU0FBUztRQUNULElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDdEQsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDMUMsQ0FBQztJQUVELElBQUksZUFBZTtRQUNmLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxNQUFNLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFRCxJQUFJLGFBQWE7UUFDYixrQ0FBa0M7UUFDbEMsT0FBTyxJQUFJLENBQUMsY0FBYyxJQUFJLFNBQVMsQ0FBQztJQUM1QyxDQUFDOytHQTFFUSxzQkFBc0I7bUdBQXRCLHNCQUFzQix1YkNsQ25DLGtzTkFvTEEsOEhEN0pRLFlBQVksc01BQ1osbUJBQW1CLGlGQUNuQixxQkFBcUIsNElBQ3JCLHdCQUF3QiwwREFFeEIsNkJBQTZCOzs0RkFNeEIsc0JBQXNCO2tCQWZsQyxTQUFTOytCQUNJLHFCQUFxQixjQUNuQixJQUFJLFdBQ1A7d0JBQ0wsWUFBWTt3QkFDWixtQkFBbUI7d0JBQ25CLHFCQUFxQjt3QkFDckIsd0JBQXdCO3dCQUV4Qiw2QkFBNkI7cUJBQ2hDLG1CQUdnQix1QkFBdUIsQ0FBQyxNQUFNO2lGQUd0QyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlLCBpc1BsYXRmb3JtQnJvd3NlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBpbmplY3QsXG4gICAgSW5wdXQsXG4gICAgUExBVEZPUk1fSUQsXG4gICAgVGVtcGxhdGVSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRG9tU2FuaXRpemVyLCBTYWZlUmVzb3VyY2VVcmwgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7XG4gICAgQXV0b0ltYWdlWm9vbVdyYXBwZXJEaXJlY3RpdmUsXG4gICAgUHVyb0FjdGl2ZU1vZGFsRGlyZWN0aXZlLFxuICAgIFB1cm9MaW5rVHlwZURpcmVjdGl2ZSxcbiAgICBQdXJvU2xpZGVyRGlyZWN0aXZlLFxufSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzJztcbmltcG9ydCB7IFB1cm9CdXR0b25JLCBQdXJvVmlkZW9JIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBTY3JlZW5TaXplclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbGliLXB1cm8tdG9wLXNsaWRlcicsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgUHVyb1NsaWRlckRpcmVjdGl2ZSxcbiAgICAgICAgUHVyb0xpbmtUeXBlRGlyZWN0aXZlLFxuICAgICAgICBQdXJvQWN0aXZlTW9kYWxEaXJlY3RpdmUsXG5cbiAgICAgICAgQXV0b0ltYWdlWm9vbVdyYXBwZXJEaXJlY3RpdmUsXG4gICAgXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vcHVyby10b3Atc2xpZGVyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybDogJy4vcHVyby10b3Atc2xpZGVyLmNvbXBvbmVudC5zY3NzJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgUHVyb1RvcFNsaWRlckNvbXBvbmVudCB7XG4gICAgQElucHV0KCkgZW5naW5lITogVGVtcGxhdGVSZWY8YW55PjtcbiAgICBASW5wdXQoKSB0aXRsZT86IHN0cmluZztcbiAgICBASW5wdXQoKSBtYWluVGl0bGU/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgcHJldGl0bGU/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgc3VidGl0bGU/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgc3BvdGlmeT86IFB1cm9CdXR0b25JO1xuICAgIEBJbnB1dCgpIG5ld3NsZXR0ZXI/OiBQdXJvQnV0dG9uSTtcbiAgICBASW5wdXQoKSBsYW5ndWFnZXM/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgZmlkZWxpdHk/OiBQdXJvQnV0dG9uSTtcbiAgICBASW5wdXQoKSBvZmZlcnM/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgc2VsZWN0ZWRMYW5ndWFnZT86IHN0cmluZztcbiAgICBASW5wdXQoKSBpbWFnZXM/OiBQdXJvSW1hZ2VUb3BTbGlkZXJJW107XG4gICAgQElucHV0KCkgaW1hZ2VzTW9iaWxlPzogUHVyb0ltYWdlVG9wU2xpZGVySVtdO1xuICAgIEBJbnB1dCgpIHZpZGVvPzogUHVyb1ZpZGVvSTtcbiAgICBASW5wdXQoKSBjdXJyZW50SG90ZWxJZD86IG51bWJlcjtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBzY3JlZW5TaXplciA9IGluamVjdChTY3JlZW5TaXplclNlcnZpY2UpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgcGxhdGZvcm1JZCA9IGluamVjdChQTEFURk9STV9JRCk7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHNhbml0aXplcjogRG9tU2FuaXRpemVyKSB7fVxuXG4gICAgaXNZb3VUdWJlKHVybDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAvKD86eW91dHViZVxcLmNvbXx5b3V0dVxcLmJlKS9pLnRlc3QodXJsID8/ICcnKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGV4dHJhY3RZb3VUdWJlSWQodXJsOiBzdHJpbmcpOiBzdHJpbmcgfCBudWxsIHtcbiAgICAgICAgY29uc3QgbSA9XG4gICAgICAgICAgICB1cmwubWF0Y2goL3lvdXR1XFwuYmVcXC8oW2EtekEtWjAtOV8tXXs2LH0pLykgfHxcbiAgICAgICAgICAgIHVybC5tYXRjaCgvWz8mXXY9KFthLXpBLVowLTlfLV17Nix9KS8pIHx8XG4gICAgICAgICAgICB1cmwubWF0Y2goL3lvdXR1YmVcXC5jb21cXC9lbWJlZFxcLyhbYS16QS1aMC05Xy1dezYsfSkvKTtcbiAgICAgICAgcmV0dXJuIG0gPyBtWzFdIDogbnVsbDtcbiAgICB9XG5cbiAgICBnZXRZb3VUdWJlRW1iZWQodXJsOiBzdHJpbmcpOiBTYWZlUmVzb3VyY2VVcmwge1xuICAgICAgICBjb25zdCBpZCA9IHRoaXMuZXh0cmFjdFlvdVR1YmVJZCh1cmwpID8/ICcnO1xuICAgICAgICBjb25zdCBlbWJlZCA9XG4gICAgICAgICAgICBgaHR0cHM6Ly93d3cueW91dHViZS1ub2Nvb2tpZS5jb20vZW1iZWQvJHtpZH1gICtcbiAgICAgICAgICAgIGA/YXV0b3BsYXk9MSZtdXRlPTEmbG9vcD0xJnBsYXlsaXN0PSR7aWR9YCArXG4gICAgICAgICAgICBgJmNvbnRyb2xzPTAmbW9kZXN0YnJhbmRpbmc9MSZyZWw9MCZwbGF5c2lubGluZT0xYCArXG4gICAgICAgICAgICBgJml2X2xvYWRfcG9saWN5PTMmZnM9MCZkaXNhYmxla2I9MSZjY19sb2FkX3BvbGljeT0wJmVuYWJsZWpzYXBpPTBgO1xuICAgICAgICByZXR1cm4gdGhpcy5zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdFJlc291cmNlVXJsKGVtYmVkKTtcbiAgICB9XG5cbiAgICBnZXQgaXNNb2JpbGUoKTogYm9vbGVhbiB7XG4gICAgICAgIGNvbnN0IHcgPSB0aGlzLnNjcmVlblNpemVyLnZpZXdwb3J0V2lkdGg7XG5cbiAgICAgICAgLy8g4puU77iPIFNpIGHDum4gbm8gc2FiZW1vcyBlbCB2aWV3cG9ydCwgTk8gZXMgbW9iaWxlXG4gICAgICAgIGlmICghdyB8fCB3IDw9IDApIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB3IDw9IDc2ODtcbiAgICB9XG5cbiAgICBnZXQgcmVzb2x2ZWRJbWFnZXMoKTogUHVyb0ltYWdlVG9wU2xpZGVySVtdIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgaWYgKHRoaXMuaXNNb2JpbGUgJiYgdGhpcy5pbWFnZXNNb2JpbGU/Lmxlbmd0aCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuaW1hZ2VzTW9iaWxlO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLmltYWdlcztcbiAgICB9XG5cbiAgICBnZXQgc2hvd1ZpZGVvKCk6IGJvb2xlYW4ge1xuICAgICAgICBpZiAoIWlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkpIHJldHVybiBmYWxzZTtcbiAgICAgICAgcmV0dXJuICEhdGhpcy52aWRlbyAmJiAhdGhpcy5pc01vYmlsZTtcbiAgICB9XG5cbiAgICBnZXQgc2hvdWxkVXNlU2xpZGVyKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gIXRoaXMuc2hvd1ZpZGVvICYmICh0aGlzLnJlc29sdmVkSW1hZ2VzPy5sZW5ndGggPz8gMCkgPiAxO1xuICAgIH1cblxuICAgIGdldCBpc0VuZ2luZVJlYWR5KCk6IGJvb2xlYW4ge1xuICAgICAgICAvLyBFbmdpbmUgc29sbyBjdWFuZG8gTk8gaGF5IGhvdGVsXG4gICAgICAgIHJldHVybiB0aGlzLmN1cnJlbnRIb3RlbElkID09IHVuZGVmaW5lZDtcbiAgICB9XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHVyb0ltYWdlVG9wU2xpZGVySSB7XG4gICAgc3JjOiBzdHJpbmc7XG4gICAgYWx0Pzogc3RyaW5nO1xuICAgIHdpZHRoPzogbnVtYmVyO1xuICAgIGhlaWdodD86IG51bWJlcjtcbn1cbiIsIjxzZWN0aW9uXG4gICAgY2xhc3M9XCJiYW5uZXJcIlxuICAgIHN0eWxlPVwiYmFja2dyb3VuZDogI2Y5ZjVlZFwiXG4gICAgW2NsYXNzLmpzLWFjdGl2ZS1zbGlkZXJdPVwic2hvdWxkVXNlU2xpZGVyXCJcbiAgICBbcHVyb1NsaWRlcl09XCJzaG91bGRVc2VTbGlkZXIgPyByZXNvbHZlZEltYWdlcyA6IHVuZGVmaW5lZFwiXG4gICAgZGF0YS1zbGlkZXNfaW5maW5pdGU9XCJ0cnVlXCJcbiAgICBkYXRhLXNsaWRlcl9uYW1lPVwianMtYmFubmVyLXNsaWRlclwiXG4gICAgZGF0YS1zbGlkZXJfc2hvd2J0bnM9XCJmYWxzZVwiXG4gICAgZGF0YS1zbGlkZXJfc2hvd2RvdHM9XCJmYWxzZVwiXG4gICAgZGF0YS1zbGlkZXJfZmFkZT1cInRydWVcIlxuICAgIGRhdGEtc2xpZGVyX2F1dG9wbGF5PVwidHJ1ZVwiXG4gICAgZGF0YS1zbGlkZXNfcGM9XCIxXCJcbj5cbiAgICBAaWYgKHNob3dWaWRlbykge1xuICAgICAgICA8ZGl2IGNsYXNzPVwiYmFubmVyX192aWRlb1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJhbm5lcl9fdmlkZW8tLWlubmVyXCI+XG4gICAgICAgICAgICAgICAgQGlmICh2aWRlbz8uc291cmNlOyBhcyBzcmMpIHtcbiAgICAgICAgICAgICAgICAgICAgQGlmIChpc1lvdVR1YmUoc3JjKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgPGlmcmFtZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwiWW91VHViZVZpZGVvUGxheWVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjE5MjBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD1cIjEwODBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsbG93PVwiYWNjZWxlcm9tZXRlcjsgYXV0b3BsYXk7IGNsaXBib2FyZC13cml0ZTsgZW5jcnlwdGVkLW1lZGlhOyBneXJvc2NvcGU7IHBpY3R1cmUtaW4tcGljdHVyZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NyY109XCJnZXRZb3VUdWJlRW1iZWQoc3JjKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZnJhbWVib3JkZXI9XCIwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbGxvd2Z1bGxzY3JlZW5cbiAgICAgICAgICAgICAgICAgICAgICAgID48L2lmcmFtZT5cbiAgICAgICAgICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8dmlkZW9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdXRvcGxheVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG11dGVkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9vcFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYXlzaW5saW5lXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIxMDAlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9XCIxMDAlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c291cmNlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzcmNdPVwic3JjXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3R5cGVdPVwidmlkZW8/LnR5cGUgfHwgJ3ZpZGVvL21wNCdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3ZpZGVvPlxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIH0gQGVsc2Uge1xuICAgICAgICBAaWYgKHJlc29sdmVkSW1hZ2VzPy5sZW5ndGgpIHtcbiAgICAgICAgICAgIDxpbWdcbiAgICAgICAgICAgICAgICBjbGFzcz1cImJhbm5lcl9faW1hZ2UgYmFubmVyX19pbWFnZS0tbGNwXCJcbiAgICAgICAgICAgICAgICBbc3JjXT1cInJlc29sdmVkSW1hZ2VzPy5bMF0/LnNyY1wiXG4gICAgICAgICAgICAgICAgW2FsdF09XCJyZXNvbHZlZEltYWdlcz8uWzBdPy5hbHQgfHwgbWFpblRpdGxlXCJcbiAgICAgICAgICAgICAgICB3aWR0aD1cIjE5MjBcIlxuICAgICAgICAgICAgICAgIGhlaWdodD1cIjk4MFwiXG4gICAgICAgICAgICAgICAgZmV0Y2hwcmlvcml0eT1cImhpZ2hcIlxuICAgICAgICAgICAgICAgIGxvYWRpbmc9XCJlYWdlclwiXG4gICAgICAgICAgICAgICAgZGVjb2Rpbmc9XCJhc3luY1wiXG4gICAgICAgICAgICAvPlxuICAgICAgICB9XG5cbiAgICAgICAgPCEtLSBTTElERVIgU09MTyBTSSBIQVkgTcOBUyBERSAxIC0tPlxuICAgICAgICBAaWYgKHJlc29sdmVkSW1hZ2VzICYmIHJlc29sdmVkSW1hZ2VzLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJqcy1iYW5uZXItc2xpZGVyXCI+XG4gICAgICAgICAgICAgICAgQGZvciAoaW1hZ2Ugb2YgcmVzb2x2ZWRJbWFnZXMuc2xpY2UoMSk7IHRyYWNrICRpbmRleCkge1xuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYmFubmVyX19pdGVtXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NyY109XCJpbWFnZS5zcmNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthbHRdPVwiaW1hZ2UuYWx0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJhbm5lcl9faW1hZ2VcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt3aWR0aF09XCJpbWFnZS53aWR0aFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2hlaWdodF09XCJpbWFnZS5oZWlnaHRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvYWRpbmc9XCJsYXp5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWNvZGluZz1cImFzeW5jXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgfVxuICAgIEBpZiAobWFpblRpdGxlKSB7XG4gICAgICAgIDxoMSBjbGFzcz1cImJhbm5lcl9fdGl0bGVcIj5cbiAgICAgICAgICAgIDxzcGFuPnt7IG1haW5UaXRsZSB9fTwvc3Bhbj5cbiAgICAgICAgPC9oMT5cbiAgICB9XG4gICAgPGRpdiBjbGFzcz1cImJhbm5lcl9fY29udGVudFwiPlxuICAgICAgICBAaWYgKHByZXRpdGxlKSB7XG4gICAgICAgICAgICA8cCBjbGFzcz1cImJhbm5lcl9fdGV4dFwiPnt7IHByZXRpdGxlIH19PC9wPlxuICAgICAgICB9XG4gICAgICAgIEBpZiAodGl0bGUpIHtcbiAgICAgICAgICAgIDxoMiBjbGFzcz1cImJhbm5lcl9faGVhZGluZ1wiPnt7IHRpdGxlIH19PC9oMj5cbiAgICAgICAgfVxuICAgICAgICBAaWYgKHN1YnRpdGxlKSB7XG4gICAgICAgICAgICA8cCBjbGFzcz1cImJhbm5lcl9fdGV4dFwiPnt7IHN1YnRpdGxlIH19PC9wPlxuICAgICAgICB9XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImJhbm5lcl9fYWN0aW9uc1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYmFubmVyX19ncm91cCBiYW5uZXJfX2dyb3VwLS1sZWZ0XCI+XG4gICAgICAgICAgICBAaWYgKG5ld3NsZXR0ZXIgJiYgbmV3c2xldHRlci5sYWJlbCkge1xuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJiYW5uZXJfX25ld3NsZXR0ZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgICAgIFtocmVmXT1cIm5ld3NsZXR0ZXIudXJsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtsaW5rVHlwZV09XCJuZXdzbGV0dGVyLmxpbmtUeXBlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYmFubmVyX19uZXdzbGV0dGVyLS1pbm5lclwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIm5ld3NsZXR0ZXIubGFiZWxcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImljb24tNjNcIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3Ryb25nPnt7IG5ld3NsZXR0ZXIubGFiZWwgfX08L3N0cm9uZz5cbiAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgPCEtLSBoaWRlIGJ1dHRvbnMgd2hlbiBQdXJvIE9hc2lzIFVyYmFubyAtLT5cbiAgICAgICAgICAgIEBpZiAoc3BvdGlmeSAmJiBzcG90aWZ5LmxhYmVsICYmIGN1cnJlbnRIb3RlbElkICE9PSA1KSB7XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJhbm5lcl9fc3BvdGlmeVwiPlxuICAgICAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICAgICAgW2hyZWZdPVwic3BvdGlmeS51cmxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2xpbmtUeXBlXT1cInNwb3RpZnkubGlua1R5cGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJzcG90aWZ5LmxhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYmFubmVyX19zcG90aWZ5LS1pbm5lclwiXG4gICAgICAgICAgICAgICAgICAgICAgICByb2xlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwic3BvdGlmeSA/PyAnc3BvdGlmeSBpY29uJ1wiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaWNvbi04MlwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzdHJvbmc+e3sgc3BvdGlmeS5sYWJlbCB9fTwvc3Ryb25nPlxuICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJiYW5uZXJfX2dyb3VwIGJhbm5lcl9fZ3JvdXAtLXJpZ2h0XCI+XG4gICAgICAgICAgICBAaWYgKGxhbmd1YWdlcyAmJiBzZWxlY3RlZExhbmd1YWdlKSB7XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJhbm5lcl9fbGFuZ3VhZ2VcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJiYW5uZXJfX2xhbmd1YWdlLS1pbm5lciBqcy1hY3RpdmUtbW9kYWxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgYWN0aXZlTW9kYWxcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtbW9kYWxfbmFtZT1cImxhbmd1YWdlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJvbGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJzZWxlY3RlZExhbmd1YWdlXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJiYW5uZXJfX2xhbmd1YWdlLS1pY29uXCI+e3tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3RlZExhbmd1YWdlXG4gICAgICAgICAgICAgICAgICAgICAgICB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzdHJvbmc+e3sgbGFuZ3VhZ2VzIH19PC9zdHJvbmc+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgPCEtLSBoaWRlIGJ1dHRvbnMgd2hlbiBQdXJvIE9hc2lzIFVyYmFubyAtLT5cbiAgICAgICAgICAgIEBpZiAoZmlkZWxpdHkgJiYgZmlkZWxpdHkubGFiZWwgJiYgY3VycmVudEhvdGVsSWQgIT09IDUpIHtcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYmFubmVyX19maWRlbGl0eUNsdWJcIj5cbiAgICAgICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgICAgIFtocmVmXT1cImZpZGVsaXR5Py51cmxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2xpbmtUeXBlXT1cImZpZGVsaXR5Py5saW5rVHlwZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJhbm5lcl9fZmlkZWxpdHlDbHViLS1pbm5lclwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImZpZGVsaXR5Py5sYWJlbFwiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaWNvbi02MFwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzdHJvbmc+e3sgZmlkZWxpdHk/LmxhYmVsIH19PC9zdHJvbmc+XG4gICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG5cbiAgICA8IS0tIGhpZGUgYnV0dG9ucyB3aGVuIFB1cm8gT2FzaXMgVXJiYW5vIC0tPlxuICAgIEBpZiAoIWlzRW5naW5lUmVhZHkpe1xuICAgICAgICBAaWYgKGVuZ2luZSAmJiBjdXJyZW50SG90ZWxJZCAhPT0gNSkge1xuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJlbmdpbmVcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAob2ZmZXJzKSB7XG4gICAgICAgIDxzcGFuXG4gICAgICAgICAgICBhY3RpdmVNb2RhbFxuICAgICAgICAgICAgY2xhc3M9XCJiYW5uZXJfX29mZmVycy0tdGlnZ2VyIGpzLWFjdGl2ZS1tb2RhbFwiXG4gICAgICAgICAgICBkYXRhLW1vZGFsX25hbWU9XCJ0LW9mZmVyc1wiXG4gICAgICAgICAgICByb2xlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwib2ZmZXJzID8/ICdPZmZlcnMnXCJcbiAgICAgICAgPlxuICAgICAgICAgICAge3sgb2ZmZXJzIH19XG4gICAgICAgIDwvc3Bhbj5cbiAgICB9XG48L3NlY3Rpb24+XG4iXX0=
@@ -7749,7 +7749,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
7749
7749
 
7750
7750
  class PuroGrid3colSliderComponent {
7751
7751
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroGrid3colSliderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7752
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroGrid3colSliderComponent, isStandalone: true, selector: "lib-puro-grid3col-slider", inputs: { title: "title", button: "button", items: "items", tags: "tags", textColors: "textColors" }, ngImport: i0, template: "<section\n class=\"discover discover--noRadius js-active-slider generalMargin\"\n [puroSlider]=\"items\"\n data-slides_infinite=\"true\"\n data-slider_name=\"js-discover-slider\"\n data-slider_showbtns=\"true\"\n data-slider_showdots=\"false\"\n data-slider_fade=\"false\"\n data-slider_autoplay=\"true\"\n data-slides_pc=\"3\"\n data-slides_laptop=\"3\"\n data-slides_tablet=\"1\"\n data-slides_mobile=\"1\"\n data-slides_mobile_small=\"1\"\n data-slides_mobile_xsmall=\"1\"\n>\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"discover__title\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n <div class=\"discover__inner relative\">\n <div class=\"discover__container\">\n <div\n class=\"js-discover-slider discover__slider js-slider_fix-arrows\"\n >\n @for (item of items || []; track $index) {\n @if (item) {\n <div class=\"discover__box\">\n <a\n [href]=\"item.button?.url\"\n [linkType]=\"item.button?.linkType\"\n class=\"discover__graphic js-slider_fix-arrows-zone\"\n [attr.aria-label]=\"\n item.button?.label ?? 'Item link'\n \"\n >\n @if (item.img) {\n <img\n [src]=\"item.img.src\"\n width=\"391\"\n height=\"533\"\n class=\"discover__graphic--img\"\n [alt]=\"item.img.alt\"\n loading=\"lazy\"\n />\n }\n\n <div class=\"discover__content\">\n @if (item.pretitle) {\n <p class=\"discover__subHeading photo\">\n {{ item.pretitle }}\n </p>\n }\n @if (item.title) {\n <h3\n class=\"discover__heading photo\"\n [innerHTML]=\"item.title\"\n ></h3>\n }\n </div>\n </a>\n\n @if (item.button) {\n <div class=\"btn__group\">\n <a\n class=\"btn__link\"\n [linkType]=\"item.button?.linkType\"\n [href]=\"item.button?.url\"\n [attr.aria-label]=\"\n item.button.label ?? 'Item button'\n \"\n >\n <span>{{ item.button.label }}</span>\n </a>\n </div>\n }\n </div>\n }\n }\n </div>\n <div class=\"js-slider-arrows\"></div>\n @if (button) {\n <div class=\"btn__group\">\n <a\n [linkType]=\"button.linkType\"\n [href]=\"button.url\"\n class=\"btn btn__primary--outline\"\n [attr.aria-label]=\"button.label\"\n ><span>{{ button.label }}</span></a\n >\n </div>\n }\n </div>\n </div>\n</section>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: PuroSliderDirective, selector: "[puroSlider]", inputs: ["puroSlider"] }, { kind: "directive", type: PuroLinkTypeDirective, selector: "[linkType]", inputs: ["linkType", "href", "modalClick"], outputs: ["bookClick", "anchorClicked"] }, { kind: "directive", type: AutoImageZoomWrapperDirective, selector: "img[src]" }, { kind: "component", type: PuroDynamicHeadingComponent, selector: "lib-puro-dynamic-heading", inputs: ["tag", "wrapper", "cssClass", "content", "color"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
7752
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroGrid3colSliderComponent, isStandalone: true, selector: "lib-puro-grid3col-slider", inputs: { title: "title", button: "button", items: "items", tags: "tags", textColors: "textColors" }, ngImport: i0, template: "<section\n class=\"discover discover--noRadius js-active-slider generalMargin\"\n [puroSlider]=\"items\"\n data-slides_infinite=\"true\"\n data-slider_name=\"js-discover-slider\"\n data-slider_showbtns=\"true\"\n data-slider_showdots=\"false\"\n data-slider_fade=\"false\"\n data-slider_autoplay=\"true\"\n data-slides_pc=\"3\"\n data-slides_laptop=\"3\"\n data-slides_tablet=\"1\"\n data-slides_mobile=\"1\"\n data-slides_mobile_small=\"1\"\n data-slides_mobile_xsmall=\"1\"\n>\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"discover__title\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n <div class=\"discover__inner relative\">\n <div class=\"discover__container\">\n <div\n class=\"js-discover-slider discover__slider js-slider_fix-arrows\"\n >\n @for (item of items || []; track $index) {\n @if (item) {\n <div class=\"discover__box\">\n <a\n [href]=\"item.button?.url\"\n [linkType]=\"item.button?.linkType\"\n class=\"discover__graphic js-slider_fix-arrows-zone\"\n [attr.aria-label]=\"\n item.button?.label ?? 'Item link'\n \"\n >\n @if (item.img) {\n <img\n [src]=\"item.img.src\"\n width=\"391\"\n height=\"533\"\n class=\"discover__graphic--img\"\n [alt]=\"item.img.alt\"\n loading=\"lazy\"\n />\n }\n\n <div class=\"discover__content\"> \n @if (item.title) {\n <h3\n class=\"discover__heading photo\"\n [innerHTML]=\"item.title\"\n \n ></h3>\n }\n @if (item.pretitle) {\n <p class=\"discover__subHeading photo\">\n {{ item.pretitle }}\n </p>\n }\n \n </div>\n </a>\n\n @if (item.button) {\n <div class=\"btn__group\">\n <a\n class=\"btn__link\"\n [linkType]=\"item.button?.linkType\"\n [href]=\"item.button?.url\"\n [attr.aria-label]=\"\n item.button.label ?? 'Item button'\n \"\n >\n <span>{{ item.button.label }}</span>\n </a>\n </div>\n }\n </div>\n }\n }\n </div>\n <div class=\"js-slider-arrows\"></div>\n @if (button) {\n <div class=\"btn__group\">\n <a\n [linkType]=\"button.linkType\"\n [href]=\"button.url\"\n class=\"btn btn__primary--outline\"\n [attr.aria-label]=\"button.label\"\n ><span>{{ button.label }}</span></a\n >\n </div>\n }\n </div>\n </div>\n</section>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: PuroSliderDirective, selector: "[puroSlider]", inputs: ["puroSlider"] }, { kind: "directive", type: PuroLinkTypeDirective, selector: "[linkType]", inputs: ["linkType", "href", "modalClick"], outputs: ["bookClick", "anchorClicked"] }, { kind: "directive", type: AutoImageZoomWrapperDirective, selector: "img[src]" }, { kind: "component", type: PuroDynamicHeadingComponent, selector: "lib-puro-dynamic-heading", inputs: ["tag", "wrapper", "cssClass", "content", "color"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
7753
7753
  }
7754
7754
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroGrid3colSliderComponent, decorators: [{
7755
7755
  type: Component,
@@ -7759,7 +7759,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
7759
7759
  PuroLinkTypeDirective,
7760
7760
  AutoImageZoomWrapperDirective,
7761
7761
  PuroDynamicHeadingComponent,
7762
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<section\n class=\"discover discover--noRadius js-active-slider generalMargin\"\n [puroSlider]=\"items\"\n data-slides_infinite=\"true\"\n data-slider_name=\"js-discover-slider\"\n data-slider_showbtns=\"true\"\n data-slider_showdots=\"false\"\n data-slider_fade=\"false\"\n data-slider_autoplay=\"true\"\n data-slides_pc=\"3\"\n data-slides_laptop=\"3\"\n data-slides_tablet=\"1\"\n data-slides_mobile=\"1\"\n data-slides_mobile_small=\"1\"\n data-slides_mobile_xsmall=\"1\"\n>\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"discover__title\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n <div class=\"discover__inner relative\">\n <div class=\"discover__container\">\n <div\n class=\"js-discover-slider discover__slider js-slider_fix-arrows\"\n >\n @for (item of items || []; track $index) {\n @if (item) {\n <div class=\"discover__box\">\n <a\n [href]=\"item.button?.url\"\n [linkType]=\"item.button?.linkType\"\n class=\"discover__graphic js-slider_fix-arrows-zone\"\n [attr.aria-label]=\"\n item.button?.label ?? 'Item link'\n \"\n >\n @if (item.img) {\n <img\n [src]=\"item.img.src\"\n width=\"391\"\n height=\"533\"\n class=\"discover__graphic--img\"\n [alt]=\"item.img.alt\"\n loading=\"lazy\"\n />\n }\n\n <div class=\"discover__content\">\n @if (item.pretitle) {\n <p class=\"discover__subHeading photo\">\n {{ item.pretitle }}\n </p>\n }\n @if (item.title) {\n <h3\n class=\"discover__heading photo\"\n [innerHTML]=\"item.title\"\n ></h3>\n }\n </div>\n </a>\n\n @if (item.button) {\n <div class=\"btn__group\">\n <a\n class=\"btn__link\"\n [linkType]=\"item.button?.linkType\"\n [href]=\"item.button?.url\"\n [attr.aria-label]=\"\n item.button.label ?? 'Item button'\n \"\n >\n <span>{{ item.button.label }}</span>\n </a>\n </div>\n }\n </div>\n }\n }\n </div>\n <div class=\"js-slider-arrows\"></div>\n @if (button) {\n <div class=\"btn__group\">\n <a\n [linkType]=\"button.linkType\"\n [href]=\"button.url\"\n class=\"btn btn__primary--outline\"\n [attr.aria-label]=\"button.label\"\n ><span>{{ button.label }}</span></a\n >\n </div>\n }\n </div>\n </div>\n</section>\n" }]
7762
+ ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<section\n class=\"discover discover--noRadius js-active-slider generalMargin\"\n [puroSlider]=\"items\"\n data-slides_infinite=\"true\"\n data-slider_name=\"js-discover-slider\"\n data-slider_showbtns=\"true\"\n data-slider_showdots=\"false\"\n data-slider_fade=\"false\"\n data-slider_autoplay=\"true\"\n data-slides_pc=\"3\"\n data-slides_laptop=\"3\"\n data-slides_tablet=\"1\"\n data-slides_mobile=\"1\"\n data-slides_mobile_small=\"1\"\n data-slides_mobile_xsmall=\"1\"\n>\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"discover__title\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n <div class=\"discover__inner relative\">\n <div class=\"discover__container\">\n <div\n class=\"js-discover-slider discover__slider js-slider_fix-arrows\"\n >\n @for (item of items || []; track $index) {\n @if (item) {\n <div class=\"discover__box\">\n <a\n [href]=\"item.button?.url\"\n [linkType]=\"item.button?.linkType\"\n class=\"discover__graphic js-slider_fix-arrows-zone\"\n [attr.aria-label]=\"\n item.button?.label ?? 'Item link'\n \"\n >\n @if (item.img) {\n <img\n [src]=\"item.img.src\"\n width=\"391\"\n height=\"533\"\n class=\"discover__graphic--img\"\n [alt]=\"item.img.alt\"\n loading=\"lazy\"\n />\n }\n\n <div class=\"discover__content\"> \n @if (item.title) {\n <h3\n class=\"discover__heading photo\"\n [innerHTML]=\"item.title\"\n \n ></h3>\n }\n @if (item.pretitle) {\n <p class=\"discover__subHeading photo\">\n {{ item.pretitle }}\n </p>\n }\n \n </div>\n </a>\n\n @if (item.button) {\n <div class=\"btn__group\">\n <a\n class=\"btn__link\"\n [linkType]=\"item.button?.linkType\"\n [href]=\"item.button?.url\"\n [attr.aria-label]=\"\n item.button.label ?? 'Item button'\n \"\n >\n <span>{{ item.button.label }}</span>\n </a>\n </div>\n }\n </div>\n }\n }\n </div>\n <div class=\"js-slider-arrows\"></div>\n @if (button) {\n <div class=\"btn__group\">\n <a\n [linkType]=\"button.linkType\"\n [href]=\"button.url\"\n class=\"btn btn__primary--outline\"\n [attr.aria-label]=\"button.label\"\n ><span>{{ button.label }}</span></a\n >\n </div>\n }\n </div>\n </div>\n</section>\n" }]
7763
7763
  }], propDecorators: { title: [{
7764
7764
  type: Input
7765
7765
  }], button: [{
@@ -8405,11 +8405,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
8405
8405
 
8406
8406
  class PuroInfoDetails2ColComponent {
8407
8407
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroInfoDetails2ColComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
8408
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroInfoDetails2ColComponent, isStandalone: true, selector: "lib-puro-info-details-2col", inputs: { title: "title", subtitle: "subtitle", description: "description", items: "items" }, ngImport: i0, template: "<section\n class=\"textContent textContent__ODM--spacing3 textContent--textStart textContent--2ColumnLayout\"\n>\n <div class=\"textContent__titleSection\">\n <div class=\"textContent__title\">\n @if (title) {\n <h2 class=\"textContent__title--heading\" [innerHTML]=\"title\"></h2>\n }\n @if (subtitle) {\n <div class=\"textContent__title--subHeading\" [innerHTML]=\"subtitle\"></div>\n }\n </div>\n @if (description) {\n <div class=\"textContent__paragraph\">\n <p [innerHTML]=\"description\"></p>\n </div>\n }\n </div>\n @if (items?.length) {\n <div class=\"textContent__list\">\n @for (item of items; track $index) {\n <div class=\"textContent__item\">\n <h3 class=\"textContent__item--heading\" [innerHTML]=\"item.title\"></h3>\n <div class=\"textContent__item--text\">\n <div [innerHTML]=\"item.description\"></div>\n </div>\n </div>\n }\n </div>\n }\n</section>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
8408
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroInfoDetails2ColComponent, isStandalone: true, selector: "lib-puro-info-details-2col", inputs: { title: "title", subtitle: "subtitle", description: "description", items: "items" }, ngImport: i0, template: "<section\n class=\"textContent textContent__ODM--spacing3 textContent--textStart textContent--2ColumnLayout\"\n>\n <div class=\"textContent__titleSection\">\n <div class=\"textContent__title\">\n @if (title) {\n <h2 class=\"textContent__title__heading\" [innerHTML]=\"title\"></h2>\n }\n @if (subtitle) {\n <div class=\"textContent__title__subHeading\" [innerHTML]=\"subtitle\"></div>\n }\n </div>\n @if (description) {\n <div class=\"textContent__paragraph\">\n <p [innerHTML]=\"description\"></p>\n </div>\n }\n </div>\n @if (items?.length) {\n <div class=\"textContent__list\">\n @for (item of items; track $index) {\n <div class=\"textContent__item\">\n <div\n class=\"textContent__item__subHeading \"\n [innerHTML]=\"item.title\"\n ></div>\n <div class=\"textContent__item__paragraph\">\n <div [innerHTML]=\"item.description\"></div>\n </div>\n </div>\n }\n </div>\n }\n</section>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
8409
8409
  }
8410
8410
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroInfoDetails2ColComponent, decorators: [{
8411
8411
  type: Component,
8412
- args: [{ selector: 'lib-puro-info-details-2col', standalone: true, imports: [CommonModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<section\n class=\"textContent textContent__ODM--spacing3 textContent--textStart textContent--2ColumnLayout\"\n>\n <div class=\"textContent__titleSection\">\n <div class=\"textContent__title\">\n @if (title) {\n <h2 class=\"textContent__title--heading\" [innerHTML]=\"title\"></h2>\n }\n @if (subtitle) {\n <div class=\"textContent__title--subHeading\" [innerHTML]=\"subtitle\"></div>\n }\n </div>\n @if (description) {\n <div class=\"textContent__paragraph\">\n <p [innerHTML]=\"description\"></p>\n </div>\n }\n </div>\n @if (items?.length) {\n <div class=\"textContent__list\">\n @for (item of items; track $index) {\n <div class=\"textContent__item\">\n <h3 class=\"textContent__item--heading\" [innerHTML]=\"item.title\"></h3>\n <div class=\"textContent__item--text\">\n <div [innerHTML]=\"item.description\"></div>\n </div>\n </div>\n }\n </div>\n }\n</section>\n" }]
8412
+ args: [{ selector: 'lib-puro-info-details-2col', standalone: true, imports: [CommonModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<section\n class=\"textContent textContent__ODM--spacing3 textContent--textStart textContent--2ColumnLayout\"\n>\n <div class=\"textContent__titleSection\">\n <div class=\"textContent__title\">\n @if (title) {\n <h2 class=\"textContent__title__heading\" [innerHTML]=\"title\"></h2>\n }\n @if (subtitle) {\n <div class=\"textContent__title__subHeading\" [innerHTML]=\"subtitle\"></div>\n }\n </div>\n @if (description) {\n <div class=\"textContent__paragraph\">\n <p [innerHTML]=\"description\"></p>\n </div>\n }\n </div>\n @if (items?.length) {\n <div class=\"textContent__list\">\n @for (item of items; track $index) {\n <div class=\"textContent__item\">\n <div\n class=\"textContent__item__subHeading \"\n [innerHTML]=\"item.title\"\n ></div>\n <div class=\"textContent__item__paragraph\">\n <div [innerHTML]=\"item.description\"></div>\n </div>\n </div>\n }\n </div>\n }\n</section>\n" }]
8413
8413
  }], propDecorators: { title: [{
8414
8414
  type: Input
8415
8415
  }], subtitle: [{
@@ -8627,6 +8627,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
8627
8627
  }] } });
8628
8628
 
8629
8629
  class PuroInfoVideoComponent {
8630
+ get showVideo() {
8631
+ return isPlatformBrowser(this.platformId) && !!this.video?.source;
8632
+ }
8630
8633
  constructor(sanitizer, platformId) {
8631
8634
  this.sanitizer = sanitizer;
8632
8635
  this.platformId = platformId;
@@ -8664,7 +8667,7 @@ class PuroInfoVideoComponent {
8664
8667
  return this.sanitizer.bypassSecurityTrustResourceUrl(embed);
8665
8668
  }
8666
8669
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroInfoVideoComponent, deps: [{ token: i1.DomSanitizer }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Component }); }
8667
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroInfoVideoComponent, isStandalone: true, selector: "lib-puro-info-video", inputs: { title: "title", subtitle: "subtitle", description: "description", button: "button", video: "video", reverse: "reverse", tags: "tags", textColors: "textColors" }, host: { listeners: { "window:resize": "onResize()" } }, ngImport: i0, template: "<section\n class=\"eventVideo eventVideo--right generalMargin\"\n [ngClass]=\"{ 'eventVideo--right': reverse }\"\n resizeZoom\n>\n <div class=\"eventVideo__player\">\n <div class=\"eventVideo__playerInner\">\n @if (video?.source; as src) {\n @if (isYouTube(src)) {\n <iframe\n class=\"eventVideo__media\"\n [src]=\"getYouTubeEmbed(src)\"\n frameborder=\"0\"\n allow=\"autoplay; encrypted-media; picture-in-picture\"\n allowfullscreen\n tabindex=\"-1\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\"\n ></iframe>\n } @else {\n <video\n autoplay\n muted\n loop\n playsinline\n width=\"100%\"\n height=\"100%\"\n >\n <source\n [src]=\"src\"\n [type]=\"video?.type || 'video/mp4'\"\n />\n </video>\n }\n }\n </div>\n </div>\n <div class=\"eventVideo__content eventVideo__content--alignCenter\">\n <div>\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'h2'\"\n cssClass=\"eventVideo__heading\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n @if (subtitle) {\n <div class=\"eventVideo__subHeading\" [innerHTML]=\"subtitle\"></div>\n }\n @if (description) {\n <div class=\"eventVideo__paragraph\">\n <div [innerHTML]=\"description\"></div>\n </div>\n }\n <div class=\"btn__group\">\n @if (button) {\n <a\n [linkType]=\"button.linkType\"\n [href]=\"button.url\"\n class=\"btn btn__primary--outline\"\n [attr.aria-label]=\"button.label\"\n ><span>{{ button.label }}</span></a\n >\n }\n </div>\n </div>\n </div>\n</section>\n", styles: [".eventVideo__playerInner{overflow:hidden}.eventVideo__playerInner>video{width:105%;height:105%;object-fit:cover;object-position:center}.eventVideo__playerInner>iframe{width:105%;height:105%;display:block;transform-origin:center center;transform:scale(var(--yt-cover-scale, 1.23))}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: PuroLinkTypeDirective, selector: "[linkType]", inputs: ["linkType", "href", "modalClick"], outputs: ["bookClick", "anchorClicked"] }, { kind: "directive", type: PuroResizeZoomDirective, selector: "[resizeZoom]" }, { kind: "component", type: PuroDynamicHeadingComponent, selector: "lib-puro-dynamic-heading", inputs: ["tag", "wrapper", "cssClass", "content", "color"] }] }); }
8670
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroInfoVideoComponent, isStandalone: true, selector: "lib-puro-info-video", inputs: { title: "title", subtitle: "subtitle", description: "description", button: "button", video: "video", reverse: "reverse", tags: "tags", textColors: "textColors" }, host: { listeners: { "window:resize": "onResize()" } }, ngImport: i0, template: "<section\n class=\"eventVideo eventVideo--right generalMargin\"\n [ngClass]=\"{ 'eventVideo--right': reverse }\"\n resizeZoom\n>\n <div class=\"eventVideo__player\">\n <div class=\"eventVideo__playerInner\">\n @if (showVideo) {\n @if (isYouTube(video!.source!)) {\n <iframe\n class=\"eventVideo__media\"\n [src]=\"getYouTubeEmbed(video!.source!)\"\n frameborder=\"0\"\n allow=\"autoplay; encrypted-media; picture-in-picture\"\n allowfullscreen\n tabindex=\"-1\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\"\n ></iframe>\n } @else {\n <video\n autoplay\n muted\n loop\n playsinline\n width=\"100%\"\n height=\"100%\"\n >\n <source\n [src]=\"video!.source!\"\n [type]=\"video?.type || 'video/mp4'\"\n />\n </video>\n }\n }\n </div>\n </div>\n <div class=\"eventVideo__content eventVideo__content--alignCenter\">\n <div>\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'h2'\"\n cssClass=\"eventVideo__heading\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n @if (subtitle) {\n <div class=\"eventVideo__subHeading\" [innerHTML]=\"subtitle\"></div>\n }\n @if (description) {\n <div class=\"eventVideo__paragraph\">\n <div [innerHTML]=\"description\"></div>\n </div>\n }\n <div class=\"btn__group\">\n @if (button) {\n <a\n [linkType]=\"button.linkType\"\n [href]=\"button.url\"\n class=\"btn btn__primary--outline\"\n [attr.aria-label]=\"button.label\"\n ><span>{{ button.label }}</span></a\n >\n }\n </div>\n </div>\n </div>\n</section>\n", styles: [".eventVideo__playerInner{overflow:hidden}.eventVideo__playerInner>video{width:105%;height:105%;object-fit:cover;object-position:center}.eventVideo__playerInner>iframe{width:105%;height:105%;display:block;transform-origin:center center;transform:scale(var(--yt-cover-scale, 1.23))}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: PuroLinkTypeDirective, selector: "[linkType]", inputs: ["linkType", "href", "modalClick"], outputs: ["bookClick", "anchorClicked"] }, { kind: "directive", type: PuroResizeZoomDirective, selector: "[resizeZoom]" }, { kind: "component", type: PuroDynamicHeadingComponent, selector: "lib-puro-dynamic-heading", inputs: ["tag", "wrapper", "cssClass", "content", "color"] }] }); }
8668
8671
  }
8669
8672
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroInfoVideoComponent, decorators: [{
8670
8673
  type: Component,
@@ -8674,7 +8677,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
8674
8677
  PuroResizeZoomDirective,
8675
8678
  PuroResizeZoomDirective,
8676
8679
  PuroDynamicHeadingComponent,
8677
- ], template: "<section\n class=\"eventVideo eventVideo--right generalMargin\"\n [ngClass]=\"{ 'eventVideo--right': reverse }\"\n resizeZoom\n>\n <div class=\"eventVideo__player\">\n <div class=\"eventVideo__playerInner\">\n @if (video?.source; as src) {\n @if (isYouTube(src)) {\n <iframe\n class=\"eventVideo__media\"\n [src]=\"getYouTubeEmbed(src)\"\n frameborder=\"0\"\n allow=\"autoplay; encrypted-media; picture-in-picture\"\n allowfullscreen\n tabindex=\"-1\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\"\n ></iframe>\n } @else {\n <video\n autoplay\n muted\n loop\n playsinline\n width=\"100%\"\n height=\"100%\"\n >\n <source\n [src]=\"src\"\n [type]=\"video?.type || 'video/mp4'\"\n />\n </video>\n }\n }\n </div>\n </div>\n <div class=\"eventVideo__content eventVideo__content--alignCenter\">\n <div>\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'h2'\"\n cssClass=\"eventVideo__heading\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n @if (subtitle) {\n <div class=\"eventVideo__subHeading\" [innerHTML]=\"subtitle\"></div>\n }\n @if (description) {\n <div class=\"eventVideo__paragraph\">\n <div [innerHTML]=\"description\"></div>\n </div>\n }\n <div class=\"btn__group\">\n @if (button) {\n <a\n [linkType]=\"button.linkType\"\n [href]=\"button.url\"\n class=\"btn btn__primary--outline\"\n [attr.aria-label]=\"button.label\"\n ><span>{{ button.label }}</span></a\n >\n }\n </div>\n </div>\n </div>\n</section>\n", styles: [".eventVideo__playerInner{overflow:hidden}.eventVideo__playerInner>video{width:105%;height:105%;object-fit:cover;object-position:center}.eventVideo__playerInner>iframe{width:105%;height:105%;display:block;transform-origin:center center;transform:scale(var(--yt-cover-scale, 1.23))}\n"] }]
8680
+ ], template: "<section\n class=\"eventVideo eventVideo--right generalMargin\"\n [ngClass]=\"{ 'eventVideo--right': reverse }\"\n resizeZoom\n>\n <div class=\"eventVideo__player\">\n <div class=\"eventVideo__playerInner\">\n @if (showVideo) {\n @if (isYouTube(video!.source!)) {\n <iframe\n class=\"eventVideo__media\"\n [src]=\"getYouTubeEmbed(video!.source!)\"\n frameborder=\"0\"\n allow=\"autoplay; encrypted-media; picture-in-picture\"\n allowfullscreen\n tabindex=\"-1\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\"\n ></iframe>\n } @else {\n <video\n autoplay\n muted\n loop\n playsinline\n width=\"100%\"\n height=\"100%\"\n >\n <source\n [src]=\"video!.source!\"\n [type]=\"video?.type || 'video/mp4'\"\n />\n </video>\n }\n }\n </div>\n </div>\n <div class=\"eventVideo__content eventVideo__content--alignCenter\">\n <div>\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'h2'\"\n cssClass=\"eventVideo__heading\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n @if (subtitle) {\n <div class=\"eventVideo__subHeading\" [innerHTML]=\"subtitle\"></div>\n }\n @if (description) {\n <div class=\"eventVideo__paragraph\">\n <div [innerHTML]=\"description\"></div>\n </div>\n }\n <div class=\"btn__group\">\n @if (button) {\n <a\n [linkType]=\"button.linkType\"\n [href]=\"button.url\"\n class=\"btn btn__primary--outline\"\n [attr.aria-label]=\"button.label\"\n ><span>{{ button.label }}</span></a\n >\n }\n </div>\n </div>\n </div>\n</section>\n", styles: [".eventVideo__playerInner{overflow:hidden}.eventVideo__playerInner>video{width:105%;height:105%;object-fit:cover;object-position:center}.eventVideo__playerInner>iframe{width:105%;height:105%;display:block;transform-origin:center center;transform:scale(var(--yt-cover-scale, 1.23))}\n"] }]
8678
8681
  }], ctorParameters: () => [{ type: i1.DomSanitizer }, { type: Object, decorators: [{
8679
8682
  type: Inject,
8680
8683
  args: [PLATFORM_ID]
@@ -9783,6 +9786,7 @@ class PuroTopSliderComponent {
9783
9786
  constructor(sanitizer) {
9784
9787
  this.sanitizer = sanitizer;
9785
9788
  this.screenSizer = inject(ScreenSizerService);
9789
+ this.platformId = inject(PLATFORM_ID);
9786
9790
  }
9787
9791
  isYouTube(url) {
9788
9792
  return /(?:youtube\.com|youtu\.be)/i.test(url ?? '');
@@ -9816,6 +9820,8 @@ class PuroTopSliderComponent {
9816
9820
  return this.images;
9817
9821
  }
9818
9822
  get showVideo() {
9823
+ if (!isPlatformBrowser(this.platformId))
9824
+ return false;
9819
9825
  return !!this.video && !this.isMobile;
9820
9826
  }
9821
9827
  get shouldUseSlider() {