ctt-puro 0.49.3 → 0.49.4

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 PuroGrid4itemsComponent {
7
7
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroGrid4itemsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
8
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroGrid4itemsComponent, isStandalone: true, selector: "lib-puro-grid4items", inputs: { title: "title", items: "items", button: "button", tags: "tags", textColors: "textColors" }, ngImport: i0, template: "<section\n class=\"imageGrid js-active-slider generalMargin\"\n [puroSlider]=\"items\"\n data-slides_infinite=\"true\"\n data-slider_name=\"js-imageGrid-slider\"\n data-slider_showbtns=\"true\"\n data-slider_showdots=\"false\"\n data-slider_fade=\"true\"\n data-slider_autoplay=\"true\"\n data-slides_pc=\"1\"\n>\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"imageGrid__title\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n <!-- desktop view S -->\n <div class=\"imageGrid__desktop imageGrid__for-4\">\n @for (item of items || []; track $index) {\n <div class=\"imageGrid__item\">\n <a\n [href]=\"item.link ? item.link.url : ''\"\n class=\"imageGrid__box\"\n [attr.aria-label]=\"item?.link?.label\"\n >\n <div class=\"imageGrid__graphic\">\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n [alt]=\"item.img.alt\"\n width=\"360\"\n height=\"340\"\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading photo\">{{ item.title }}</h2>\n }\n @if (item.subtitle) {\n <p class=\"imageGrid__subHeading photo\">{{\n item.subtitle\n }}</p>\n }\n <div class=\"btn__group\">\n @if (item.link) {\n <button\n class=\"btn__link\"\n [attr.aria-label]=\"item?.link?.label\"\n >\n <span>{{ item?.link?.label }}</span>\n </button>\n }\n </div>\n </div>\n </a>\n </div>\n }\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 <!-- desktop view E -->\n <!-- mobile view S -->\n <div class=\"imageGrid__mobile relative\">\n <div class=\"js-imageGrid-slider js-slider_fix-arrows\">\n @for (item of items || []; track $index) {\n <div>\n <div class=\"imageGrid__box\">\n <div\n class=\"imageGrid__graphic js-slider_fix-arrows-zone\"\n >\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n width=\"499\"\n height=\"472\"\n [alt]=\"item.img.alt\"\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading\">\n {{ item.title }}\n </h2>\n }\n @if (item.subtitle) {\n <span class=\"imageGrid__subHeading\">{{\n item.subtitle\n }}</span>\n }\n </div>\n <div class=\"btn__group\">\n @if (item.link) {\n <a\n [linkType]=\"item.link.linkType\"\n [href]=\"item.link.url\"\n class=\"btn__link\"\n [attr.aria-label]=\"item.link.label\"\n ><span>{{ item.link.label }}</span></a\n >\n }\n </div>\n </div>\n </div>\n }\n </div>\n <div class=\"js-slider-arrows\"></div>\n </div>\n <!-- mobile view E -->\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: NgOptimizedImage, selector: "img[ngSrc]", inputs: ["ngSrc", "ngSrcset", "sizes", "width", "height", "loading", "priority", "loaderParams", "disableOptimizedSrcset", "fill", "placeholder", "placeholderConfig", "src", "srcset"] }, { kind: "directive", type: AutoImageZoomWrapperDirective, selector: "img[ngSrc], 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: PuroGrid4itemsComponent, isStandalone: true, selector: "lib-puro-grid4items", inputs: { title: "title", items: "items", button: "button", tags: "tags", textColors: "textColors" }, ngImport: i0, template: "<section\n class=\"imageGrid js-active-slider generalMargin\"\n [puroSlider]=\"items\"\n data-slides_infinite=\"true\"\n data-slider_name=\"js-imageGrid-slider\"\n data-slider_showbtns=\"true\"\n data-slider_showdots=\"false\"\n data-slider_fade=\"true\"\n data-slider_autoplay=\"true\"\n data-slides_pc=\"1\"\n>\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"imageGrid__title\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n <!-- desktop view S -->\n <div class=\"imageGrid__desktop imageGrid__for-4\">\n @for (item of items || []; track $index) {\n <div class=\"imageGrid__item\">\n @if (item?.link?.url) {\n <a\n [href]=\"item.link ? item.link.url : ''\"\n class=\"imageGrid__box\"\n [attr.aria-label]=\"item?.link?.label\"\n >\n <div class=\"imageGrid__graphic\">\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n [alt]=\"item.img.alt\"\n width=\"360\"\n height=\"340\"\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading photo\">\n {{ item.title }}\n </h2>\n }\n @if (item.subtitle) {\n <p class=\"imageGrid__subHeading photo\">\n {{ item.subtitle }}\n </p>\n }\n <div class=\"btn__group\">\n @if (item.link) {\n <button\n class=\"btn__link\"\n [attr.aria-label]=\"item?.link?.label\"\n >\n <span>{{ item?.link?.label }}</span>\n </button>\n }\n </div>\n </div>\n </a>\n }\n <div class=\"imageGrid__box\">\n <div class=\"imageGrid__graphic\">\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n [alt]=\"item.img.alt\"\n width=\"360\"\n height=\"340\"\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading photo\">\n {{ item.title }}\n </h2>\n }\n @if (item.subtitle) {\n <p class=\"imageGrid__subHeading photo\">\n {{ item.subtitle }}\n </p>\n }\n <div class=\"btn__group\">\n @if (item.link) {\n <button\n class=\"btn__link\"\n [attr.aria-label]=\"item?.link?.label\"\n >\n <span>{{ item?.link?.label }}</span>\n </button>\n }\n </div>\n </div>\n </div>\n </div>\n }\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 <!-- desktop view E -->\n <!-- mobile view S -->\n <div class=\"imageGrid__mobile relative\">\n <div class=\"js-imageGrid-slider js-slider_fix-arrows\">\n @for (item of items || []; track $index) {\n <div>\n <div class=\"imageGrid__box\">\n <div\n class=\"imageGrid__graphic js-slider_fix-arrows-zone\"\n >\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n width=\"499\"\n height=\"472\"\n [alt]=\"item.img.alt\"\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading\">\n {{ item.title }}\n </h2>\n }\n @if (item.subtitle) {\n <span class=\"imageGrid__subHeading\">{{\n item.subtitle\n }}</span>\n }\n </div>\n <div class=\"btn__group\">\n @if (item.link) {\n <a\n [linkType]=\"item.link.linkType\"\n [href]=\"item.link.url\"\n class=\"btn__link\"\n [attr.aria-label]=\"item.link.label\"\n ><span>{{ item.link.label }}</span></a\n >\n }\n </div>\n </div>\n </div>\n }\n </div>\n <div class=\"js-slider-arrows\"></div>\n </div>\n <!-- mobile view E -->\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: NgOptimizedImage, selector: "img[ngSrc]", inputs: ["ngSrc", "ngSrcset", "sizes", "width", "height", "loading", "priority", "loaderParams", "disableOptimizedSrcset", "fill", "placeholder", "placeholderConfig", "src", "srcset"] }, { kind: "directive", type: AutoImageZoomWrapperDirective, selector: "img[ngSrc], 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: PuroGrid4itemsComponent, decorators: [{
11
11
  type: Component,
@@ -16,7 +16,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
16
16
  NgOptimizedImage,
17
17
  AutoImageZoomWrapperDirective,
18
18
  PuroDynamicHeadingComponent,
19
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<section\n class=\"imageGrid js-active-slider generalMargin\"\n [puroSlider]=\"items\"\n data-slides_infinite=\"true\"\n data-slider_name=\"js-imageGrid-slider\"\n data-slider_showbtns=\"true\"\n data-slider_showdots=\"false\"\n data-slider_fade=\"true\"\n data-slider_autoplay=\"true\"\n data-slides_pc=\"1\"\n>\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"imageGrid__title\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n <!-- desktop view S -->\n <div class=\"imageGrid__desktop imageGrid__for-4\">\n @for (item of items || []; track $index) {\n <div class=\"imageGrid__item\">\n <a\n [href]=\"item.link ? item.link.url : ''\"\n class=\"imageGrid__box\"\n [attr.aria-label]=\"item?.link?.label\"\n >\n <div class=\"imageGrid__graphic\">\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n [alt]=\"item.img.alt\"\n width=\"360\"\n height=\"340\"\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading photo\">{{ item.title }}</h2>\n }\n @if (item.subtitle) {\n <p class=\"imageGrid__subHeading photo\">{{\n item.subtitle\n }}</p>\n }\n <div class=\"btn__group\">\n @if (item.link) {\n <button\n class=\"btn__link\"\n [attr.aria-label]=\"item?.link?.label\"\n >\n <span>{{ item?.link?.label }}</span>\n </button>\n }\n </div>\n </div>\n </a>\n </div>\n }\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 <!-- desktop view E -->\n <!-- mobile view S -->\n <div class=\"imageGrid__mobile relative\">\n <div class=\"js-imageGrid-slider js-slider_fix-arrows\">\n @for (item of items || []; track $index) {\n <div>\n <div class=\"imageGrid__box\">\n <div\n class=\"imageGrid__graphic js-slider_fix-arrows-zone\"\n >\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n width=\"499\"\n height=\"472\"\n [alt]=\"item.img.alt\"\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading\">\n {{ item.title }}\n </h2>\n }\n @if (item.subtitle) {\n <span class=\"imageGrid__subHeading\">{{\n item.subtitle\n }}</span>\n }\n </div>\n <div class=\"btn__group\">\n @if (item.link) {\n <a\n [linkType]=\"item.link.linkType\"\n [href]=\"item.link.url\"\n class=\"btn__link\"\n [attr.aria-label]=\"item.link.label\"\n ><span>{{ item.link.label }}</span></a\n >\n }\n </div>\n </div>\n </div>\n }\n </div>\n <div class=\"js-slider-arrows\"></div>\n </div>\n <!-- mobile view E -->\n</section>\n" }]
19
+ ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<section\n class=\"imageGrid js-active-slider generalMargin\"\n [puroSlider]=\"items\"\n data-slides_infinite=\"true\"\n data-slider_name=\"js-imageGrid-slider\"\n data-slider_showbtns=\"true\"\n data-slider_showdots=\"false\"\n data-slider_fade=\"true\"\n data-slider_autoplay=\"true\"\n data-slides_pc=\"1\"\n>\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"imageGrid__title\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n <!-- desktop view S -->\n <div class=\"imageGrid__desktop imageGrid__for-4\">\n @for (item of items || []; track $index) {\n <div class=\"imageGrid__item\">\n @if (item?.link?.url) {\n <a\n [href]=\"item.link ? item.link.url : ''\"\n class=\"imageGrid__box\"\n [attr.aria-label]=\"item?.link?.label\"\n >\n <div class=\"imageGrid__graphic\">\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n [alt]=\"item.img.alt\"\n width=\"360\"\n height=\"340\"\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading photo\">\n {{ item.title }}\n </h2>\n }\n @if (item.subtitle) {\n <p class=\"imageGrid__subHeading photo\">\n {{ item.subtitle }}\n </p>\n }\n <div class=\"btn__group\">\n @if (item.link) {\n <button\n class=\"btn__link\"\n [attr.aria-label]=\"item?.link?.label\"\n >\n <span>{{ item?.link?.label }}</span>\n </button>\n }\n </div>\n </div>\n </a>\n }\n <div class=\"imageGrid__box\">\n <div class=\"imageGrid__graphic\">\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n [alt]=\"item.img.alt\"\n width=\"360\"\n height=\"340\"\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading photo\">\n {{ item.title }}\n </h2>\n }\n @if (item.subtitle) {\n <p class=\"imageGrid__subHeading photo\">\n {{ item.subtitle }}\n </p>\n }\n <div class=\"btn__group\">\n @if (item.link) {\n <button\n class=\"btn__link\"\n [attr.aria-label]=\"item?.link?.label\"\n >\n <span>{{ item?.link?.label }}</span>\n </button>\n }\n </div>\n </div>\n </div>\n </div>\n }\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 <!-- desktop view E -->\n <!-- mobile view S -->\n <div class=\"imageGrid__mobile relative\">\n <div class=\"js-imageGrid-slider js-slider_fix-arrows\">\n @for (item of items || []; track $index) {\n <div>\n <div class=\"imageGrid__box\">\n <div\n class=\"imageGrid__graphic js-slider_fix-arrows-zone\"\n >\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n width=\"499\"\n height=\"472\"\n [alt]=\"item.img.alt\"\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading\">\n {{ item.title }}\n </h2>\n }\n @if (item.subtitle) {\n <span class=\"imageGrid__subHeading\">{{\n item.subtitle\n }}</span>\n }\n </div>\n <div class=\"btn__group\">\n @if (item.link) {\n <a\n [linkType]=\"item.link.linkType\"\n [href]=\"item.link.url\"\n class=\"btn__link\"\n [attr.aria-label]=\"item.link.label\"\n ><span>{{ item.link.label }}</span></a\n >\n }\n </div>\n </div>\n </div>\n }\n </div>\n <div class=\"js-slider-arrows\"></div>\n </div>\n <!-- mobile view E -->\n</section>\n" }]
20
20
  }], propDecorators: { title: [{
21
21
  type: Input
22
22
  }], items: [{
@@ -28,4 +28,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
28
28
  }], textColors: [{
29
29
  type: Input
30
30
  }] } });
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVyby1ncmlkNGl0ZW1zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3B1cm8vc3JjL2xpYi9jb21wb25lbnRzL3B1cm8tZ3JpZDRpdGVtcy9wdXJvLWdyaWQ0aXRlbXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHVyby9zcmMvbGliL2NvbXBvbmVudHMvcHVyby1ncmlkNGl0ZW1zL3B1cm8tZ3JpZDRpdGVtcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsWUFBWSxFQUNaLGdCQUFnQixHQUNuQixNQUFNLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFFLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxxQkFBcUIsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBTzdHLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOztBQWlCaEYsTUFBTSxPQUFPLHVCQUF1QjsrR0FBdkIsdUJBQXVCO21HQUF2Qix1QkFBdUIscUxDN0JwQywycUtBZ0lBLHlERDlHUSxZQUFZLCtCQUNaLG1CQUFtQixpRkFDbkIscUJBQXFCLDRJQUNyQixnQkFBZ0IsZ1BBQ2hCLDZCQUE2QixpRUFDN0IsMkJBQTJCOzs0RkFNdEIsdUJBQXVCO2tCQWZuQyxTQUFTOytCQUNJLHFCQUFxQixjQUNuQixJQUFJLFdBQ1A7d0JBQ0wsWUFBWTt3QkFDWixtQkFBbUI7d0JBQ25CLHFCQUFxQjt3QkFDckIsZ0JBQWdCO3dCQUNoQiw2QkFBNkI7d0JBQzdCLDJCQUEyQjtxQkFDOUIsbUJBR2dCLHVCQUF1QixDQUFDLE1BQU07OEJBR3RDLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgTmdPcHRpbWl6ZWRJbWFnZSxcbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBdXRvSW1hZ2Vab29tV3JhcHBlckRpcmVjdGl2ZSwgUHVyb0xpbmtUeXBlRGlyZWN0aXZlLCBQdXJvU2xpZGVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcyc7XG5pbXBvcnQge1xuICAgIFB1cm9CdXR0b25JLFxuICAgIFB1cm9JbWFnZUksXG4gICAgUHVyb1RhZ3NJLFxuICAgIFB1cm9UZXh0c0NvbG9yc0ksXG59IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgUHVyb0R5bmFtaWNIZWFkaW5nQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vc2hhcmVkL3B1cm8tZHluYW1pYy1oZWFkaW5nJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdsaWItcHVyby1ncmlkNGl0ZW1zJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBQdXJvU2xpZGVyRGlyZWN0aXZlLFxuICAgICAgICBQdXJvTGlua1R5cGVEaXJlY3RpdmUsXG4gICAgICAgIE5nT3B0aW1pemVkSW1hZ2UsXG4gICAgICAgIEF1dG9JbWFnZVpvb21XcmFwcGVyRGlyZWN0aXZlLFxuICAgICAgICBQdXJvRHluYW1pY0hlYWRpbmdDb21wb25lbnQsXG4gICAgXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vcHVyby1ncmlkNGl0ZW1zLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybDogJy4vcHVyby1ncmlkNGl0ZW1zLmNvbXBvbmVudC5zY3NzJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgUHVyb0dyaWQ0aXRlbXNDb21wb25lbnQge1xuICAgIEBJbnB1dCgpIHRpdGxlPzogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGl0ZW1zPzogUHVyb0dyaWQ0aXRlbXNJdGVtW107XG4gICAgQElucHV0KCkgYnV0dG9uPzogUHVyb0J1dHRvbkk7XG4gICAgQElucHV0KCkgdGFncz86IFB1cm9UYWdzSTtcbiAgICBASW5wdXQoKSB0ZXh0Q29sb3JzPzogUHVyb1RleHRzQ29sb3JzSTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQdXJvR3JpZDRpdGVtc0l0ZW0ge1xuICAgIGltZz86IFB1cm9JbWFnZUk7XG4gICAgdGl0bGU/OiBzdHJpbmc7XG4gICAgc3VidGl0bGU6IHN0cmluZztcbiAgICBsaW5rOiBQdXJvQnV0dG9uSTtcbn1cbiIsIjxzZWN0aW9uXG4gICAgY2xhc3M9XCJpbWFnZUdyaWQganMtYWN0aXZlLXNsaWRlciBnZW5lcmFsTWFyZ2luXCJcbiAgICBbcHVyb1NsaWRlcl09XCJpdGVtc1wiXG4gICAgZGF0YS1zbGlkZXNfaW5maW5pdGU9XCJ0cnVlXCJcbiAgICBkYXRhLXNsaWRlcl9uYW1lPVwianMtaW1hZ2VHcmlkLXNsaWRlclwiXG4gICAgZGF0YS1zbGlkZXJfc2hvd2J0bnM9XCJ0cnVlXCJcbiAgICBkYXRhLXNsaWRlcl9zaG93ZG90cz1cImZhbHNlXCJcbiAgICBkYXRhLXNsaWRlcl9mYWRlPVwidHJ1ZVwiXG4gICAgZGF0YS1zbGlkZXJfYXV0b3BsYXk9XCJ0cnVlXCJcbiAgICBkYXRhLXNsaWRlc19wYz1cIjFcIlxuPlxuICAgIEBpZiAodGl0bGUpIHtcbiAgICAgICAgPGxpYi1wdXJvLWR5bmFtaWMtaGVhZGluZ1xuICAgICAgICAgICAgW3RhZ109XCJ0YWdzPy50aXRsZSB8fCAnc3BhbidcIlxuICAgICAgICAgICAgY3NzQ2xhc3M9XCJpbWFnZUdyaWRfX3RpdGxlXCJcbiAgICAgICAgICAgIFtjb2xvcl09XCJ0ZXh0Q29sb3JzPy50aXRsZVwiXG4gICAgICAgICAgICBbY29udGVudF09XCJ0aXRsZVwiXG4gICAgICAgID48L2xpYi1wdXJvLWR5bmFtaWMtaGVhZGluZz5cbiAgICB9XG4gICAgPCEtLSBkZXNrdG9wIHZpZXcgUyAtLT5cbiAgICA8ZGl2IGNsYXNzPVwiaW1hZ2VHcmlkX19kZXNrdG9wIGltYWdlR3JpZF9fZm9yLTRcIj5cbiAgICAgICAgQGZvciAoaXRlbSBvZiBpdGVtcyB8fCBbXTsgdHJhY2sgJGluZGV4KSB7XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW1hZ2VHcmlkX19pdGVtXCI+XG4gICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgW2hyZWZdPVwiaXRlbS5saW5rID8gaXRlbS5saW5rLnVybCA6ICcnXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJpbWFnZUdyaWRfX2JveFwiXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiaXRlbT8ubGluaz8ubGFiZWxcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImltYWdlR3JpZF9fZ3JhcGhpY1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChpdGVtLmltZykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nU3JjXT1cIml0ZW0uaW1nLnNyY1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiaW1hZ2VHcmlkX19ncmFwaGljLS1pbWdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYWx0XT1cIml0ZW0uaW1nLmFsdFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPVwiMzYwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0PVwiMzQwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVjb2Rpbmc9XCJhc3luY1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbWFnZUdyaWRfX2NvbnRlbnRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoaXRlbS50aXRsZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cImltYWdlR3JpZF9faGVhZGluZyBwaG90b1wiPnt7IGl0ZW0udGl0bGUgfX08L2gyPlxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChpdGVtLnN1YnRpdGxlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJpbWFnZUdyaWRfX3N1YkhlYWRpbmcgcGhvdG9cIj57e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtLnN1YnRpdGxlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfX08L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYnRuX19ncm91cFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoaXRlbS5saW5rKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuX19saW5rXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiaXRlbT8ubGluaz8ubGFiZWxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj57eyBpdGVtPy5saW5rPy5sYWJlbCB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cImJ0bl9fZ3JvdXBcIj5cbiAgICAgICAgICAgIEBpZiAoYnV0dG9uKSB7XG4gICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgW2xpbmtUeXBlXT1cImJ1dHRvbi5saW5rVHlwZVwiXG4gICAgICAgICAgICAgICAgICAgIFtocmVmXT1cImJ1dHRvbi51cmxcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG5fX3ByaW1hcnktLW91dGxpbmVcIlxuICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImJ1dHRvbi5sYWJlbFwiXG4gICAgICAgICAgICAgICAgICAgID48c3Bhbj57eyBidXR0b24ubGFiZWwgfX08L3NwYW4+PC9hXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgfVxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8IS0tIGRlc2t0b3AgdmlldyBFIC0tPlxuICAgIDwhLS0gbW9iaWxlIHZpZXcgUyAtLT5cbiAgICA8ZGl2IGNsYXNzPVwiaW1hZ2VHcmlkX19tb2JpbGUgcmVsYXRpdmVcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImpzLWltYWdlR3JpZC1zbGlkZXIganMtc2xpZGVyX2ZpeC1hcnJvd3NcIj5cbiAgICAgICAgICAgIEBmb3IgKGl0ZW0gb2YgaXRlbXMgfHwgW107IHRyYWNrICRpbmRleCkge1xuICAgICAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbWFnZUdyaWRfX2JveFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiaW1hZ2VHcmlkX19ncmFwaGljIGpzLXNsaWRlcl9maXgtYXJyb3dzLXpvbmVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoaXRlbS5pbWcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nU3JjXT1cIml0ZW0uaW1nLnNyY1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImltYWdlR3JpZF9fZ3JhcGhpYy0taW1nXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPVwiNDk5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD1cIjQ3MlwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYWx0XT1cIml0ZW0uaW1nLmFsdFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWNvZGluZz1cImFzeW5jXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbWFnZUdyaWRfX2NvbnRlbnRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGl0ZW0udGl0bGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgyIGNsYXNzPVwiaW1hZ2VHcmlkX19oZWFkaW5nXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBpdGVtLnRpdGxlIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvaDI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoaXRlbS5zdWJ0aXRsZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImltYWdlR3JpZF9fc3ViSGVhZGluZ1wiPnt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtLnN1YnRpdGxlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJ0bl9fZ3JvdXBcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGl0ZW0ubGluaykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xpbmtUeXBlXT1cIml0ZW0ubGluay5saW5rVHlwZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaHJlZl09XCJpdGVtLmxpbmsudXJsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuX19saW5rXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiaXRlbS5saW5rLmxhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID48c3Bhbj57eyBpdGVtLmxpbmsubGFiZWwgfX08L3NwYW4+PC9hXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwianMtc2xpZGVyLWFycm93c1wiPjwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDwhLS0gbW9iaWxlIHZpZXcgRSAtLT5cbjwvc2VjdGlvbj5cbiJdfQ==
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVyby1ncmlkNGl0ZW1zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3B1cm8vc3JjL2xpYi9jb21wb25lbnRzL3B1cm8tZ3JpZDRpdGVtcy9wdXJvLWdyaWQ0aXRlbXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHVyby9zcmMvbGliL2NvbXBvbmVudHMvcHVyby1ncmlkNGl0ZW1zL3B1cm8tZ3JpZDRpdGVtcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsWUFBWSxFQUNaLGdCQUFnQixHQUNuQixNQUFNLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFFLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxxQkFBcUIsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBTzdHLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOztBQWlCaEYsTUFBTSxPQUFPLHVCQUF1QjsrR0FBdkIsdUJBQXVCO21HQUF2Qix1QkFBdUIscUxDN0JwQywwak9Bd0tBLHlERHRKUSxZQUFZLCtCQUNaLG1CQUFtQixpRkFDbkIscUJBQXFCLDRJQUNyQixnQkFBZ0IsZ1BBQ2hCLDZCQUE2QixpRUFDN0IsMkJBQTJCOzs0RkFNdEIsdUJBQXVCO2tCQWZuQyxTQUFTOytCQUNJLHFCQUFxQixjQUNuQixJQUFJLFdBQ1A7d0JBQ0wsWUFBWTt3QkFDWixtQkFBbUI7d0JBQ25CLHFCQUFxQjt3QkFDckIsZ0JBQWdCO3dCQUNoQiw2QkFBNkI7d0JBQzdCLDJCQUEyQjtxQkFDOUIsbUJBR2dCLHVCQUF1QixDQUFDLE1BQU07OEJBR3RDLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgTmdPcHRpbWl6ZWRJbWFnZSxcbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBdXRvSW1hZ2Vab29tV3JhcHBlckRpcmVjdGl2ZSwgUHVyb0xpbmtUeXBlRGlyZWN0aXZlLCBQdXJvU2xpZGVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcyc7XG5pbXBvcnQge1xuICAgIFB1cm9CdXR0b25JLFxuICAgIFB1cm9JbWFnZUksXG4gICAgUHVyb1RhZ3NJLFxuICAgIFB1cm9UZXh0c0NvbG9yc0ksXG59IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgUHVyb0R5bmFtaWNIZWFkaW5nQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vc2hhcmVkL3B1cm8tZHluYW1pYy1oZWFkaW5nJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdsaWItcHVyby1ncmlkNGl0ZW1zJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBQdXJvU2xpZGVyRGlyZWN0aXZlLFxuICAgICAgICBQdXJvTGlua1R5cGVEaXJlY3RpdmUsXG4gICAgICAgIE5nT3B0aW1pemVkSW1hZ2UsXG4gICAgICAgIEF1dG9JbWFnZVpvb21XcmFwcGVyRGlyZWN0aXZlLFxuICAgICAgICBQdXJvRHluYW1pY0hlYWRpbmdDb21wb25lbnQsXG4gICAgXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vcHVyby1ncmlkNGl0ZW1zLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybDogJy4vcHVyby1ncmlkNGl0ZW1zLmNvbXBvbmVudC5zY3NzJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgUHVyb0dyaWQ0aXRlbXNDb21wb25lbnQge1xuICAgIEBJbnB1dCgpIHRpdGxlPzogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGl0ZW1zPzogUHVyb0dyaWQ0aXRlbXNJdGVtW107XG4gICAgQElucHV0KCkgYnV0dG9uPzogUHVyb0J1dHRvbkk7XG4gICAgQElucHV0KCkgdGFncz86IFB1cm9UYWdzSTtcbiAgICBASW5wdXQoKSB0ZXh0Q29sb3JzPzogUHVyb1RleHRzQ29sb3JzSTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQdXJvR3JpZDRpdGVtc0l0ZW0ge1xuICAgIGltZz86IFB1cm9JbWFnZUk7XG4gICAgdGl0bGU/OiBzdHJpbmc7XG4gICAgc3VidGl0bGU6IHN0cmluZztcbiAgICBsaW5rOiBQdXJvQnV0dG9uSTtcbn1cbiIsIjxzZWN0aW9uXG4gICAgY2xhc3M9XCJpbWFnZUdyaWQganMtYWN0aXZlLXNsaWRlciBnZW5lcmFsTWFyZ2luXCJcbiAgICBbcHVyb1NsaWRlcl09XCJpdGVtc1wiXG4gICAgZGF0YS1zbGlkZXNfaW5maW5pdGU9XCJ0cnVlXCJcbiAgICBkYXRhLXNsaWRlcl9uYW1lPVwianMtaW1hZ2VHcmlkLXNsaWRlclwiXG4gICAgZGF0YS1zbGlkZXJfc2hvd2J0bnM9XCJ0cnVlXCJcbiAgICBkYXRhLXNsaWRlcl9zaG93ZG90cz1cImZhbHNlXCJcbiAgICBkYXRhLXNsaWRlcl9mYWRlPVwidHJ1ZVwiXG4gICAgZGF0YS1zbGlkZXJfYXV0b3BsYXk9XCJ0cnVlXCJcbiAgICBkYXRhLXNsaWRlc19wYz1cIjFcIlxuPlxuICAgIEBpZiAodGl0bGUpIHtcbiAgICAgICAgPGxpYi1wdXJvLWR5bmFtaWMtaGVhZGluZ1xuICAgICAgICAgICAgW3RhZ109XCJ0YWdzPy50aXRsZSB8fCAnc3BhbidcIlxuICAgICAgICAgICAgY3NzQ2xhc3M9XCJpbWFnZUdyaWRfX3RpdGxlXCJcbiAgICAgICAgICAgIFtjb2xvcl09XCJ0ZXh0Q29sb3JzPy50aXRsZVwiXG4gICAgICAgICAgICBbY29udGVudF09XCJ0aXRsZVwiXG4gICAgICAgID48L2xpYi1wdXJvLWR5bmFtaWMtaGVhZGluZz5cbiAgICB9XG4gICAgPCEtLSBkZXNrdG9wIHZpZXcgUyAtLT5cbiAgICA8ZGl2IGNsYXNzPVwiaW1hZ2VHcmlkX19kZXNrdG9wIGltYWdlR3JpZF9fZm9yLTRcIj5cbiAgICAgICAgQGZvciAoaXRlbSBvZiBpdGVtcyB8fCBbXTsgdHJhY2sgJGluZGV4KSB7XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW1hZ2VHcmlkX19pdGVtXCI+XG4gICAgICAgICAgICAgICAgQGlmIChpdGVtPy5saW5rPy51cmwpIHtcbiAgICAgICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgICAgIFtocmVmXT1cIml0ZW0ubGluayA/IGl0ZW0ubGluay51cmwgOiAnJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImltYWdlR3JpZF9fYm94XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiaXRlbT8ubGluaz8ubGFiZWxcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW1hZ2VHcmlkX19ncmFwaGljXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChpdGVtLmltZykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdTcmNdPVwiaXRlbS5pbWcuc3JjXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiaW1hZ2VHcmlkX19ncmFwaGljLS1pbWdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2FsdF09XCJpdGVtLmltZy5hbHRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIzNjBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0PVwiMzQwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlY29kaW5nPVwiYXN5bmNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImltYWdlR3JpZF9fY29udGVudFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoaXRlbS50aXRsZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDIgY2xhc3M9XCJpbWFnZUdyaWRfX2hlYWRpbmcgcGhvdG9cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGl0ZW0udGl0bGUgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9oMj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChpdGVtLnN1YnRpdGxlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiaW1hZ2VHcmlkX19zdWJIZWFkaW5nIHBob3RvXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBpdGVtLnN1YnRpdGxlIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJ0bl9fZ3JvdXBcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChpdGVtLmxpbmspIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0bl9fbGlua1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJpdGVtPy5saW5rPy5sYWJlbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+e3sgaXRlbT8ubGluaz8ubGFiZWwgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImltYWdlR3JpZF9fYm94XCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbWFnZUdyaWRfX2dyYXBoaWNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoaXRlbS5pbWcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1NyY109XCJpdGVtLmltZy5zcmNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImltYWdlR3JpZF9fZ3JhcGhpYy0taW1nXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2FsdF09XCJpdGVtLmltZy5hbHRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjM2MFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD1cIjM0MFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlY29kaW5nPVwiYXN5bmNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW1hZ2VHcmlkX19jb250ZW50XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGl0ZW0udGl0bGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDIgY2xhc3M9XCJpbWFnZUdyaWRfX2hlYWRpbmcgcGhvdG9cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgaXRlbS50aXRsZSB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvaDI+XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGl0ZW0uc3VidGl0bGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImltYWdlR3JpZF9fc3ViSGVhZGluZyBwaG90b1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBpdGVtLnN1YnRpdGxlIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJ0bl9fZ3JvdXBcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGl0ZW0ubGluaykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0bl9fbGlua1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIml0ZW0/Lmxpbms/LmxhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+e3sgaXRlbT8ubGluaz8ubGFiZWwgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cImJ0bl9fZ3JvdXBcIj5cbiAgICAgICAgICAgIEBpZiAoYnV0dG9uKSB7XG4gICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgW2xpbmtUeXBlXT1cImJ1dHRvbi5saW5rVHlwZVwiXG4gICAgICAgICAgICAgICAgICAgIFtocmVmXT1cImJ1dHRvbi51cmxcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG5fX3ByaW1hcnktLW91dGxpbmVcIlxuICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImJ1dHRvbi5sYWJlbFwiXG4gICAgICAgICAgICAgICAgICAgID48c3Bhbj57eyBidXR0b24ubGFiZWwgfX08L3NwYW4+PC9hXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgfVxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8IS0tIGRlc2t0b3AgdmlldyBFIC0tPlxuICAgIDwhLS0gbW9iaWxlIHZpZXcgUyAtLT5cbiAgICA8ZGl2IGNsYXNzPVwiaW1hZ2VHcmlkX19tb2JpbGUgcmVsYXRpdmVcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImpzLWltYWdlR3JpZC1zbGlkZXIganMtc2xpZGVyX2ZpeC1hcnJvd3NcIj5cbiAgICAgICAgICAgIEBmb3IgKGl0ZW0gb2YgaXRlbXMgfHwgW107IHRyYWNrICRpbmRleCkge1xuICAgICAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbWFnZUdyaWRfX2JveFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiaW1hZ2VHcmlkX19ncmFwaGljIGpzLXNsaWRlcl9maXgtYXJyb3dzLXpvbmVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoaXRlbS5pbWcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nU3JjXT1cIml0ZW0uaW1nLnNyY1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImltYWdlR3JpZF9fZ3JhcGhpYy0taW1nXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPVwiNDk5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD1cIjQ3MlwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYWx0XT1cIml0ZW0uaW1nLmFsdFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWNvZGluZz1cImFzeW5jXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbWFnZUdyaWRfX2NvbnRlbnRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGl0ZW0udGl0bGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgyIGNsYXNzPVwiaW1hZ2VHcmlkX19oZWFkaW5nXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBpdGVtLnRpdGxlIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvaDI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoaXRlbS5zdWJ0aXRsZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImltYWdlR3JpZF9fc3ViSGVhZGluZ1wiPnt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtLnN1YnRpdGxlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJ0bl9fZ3JvdXBcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGl0ZW0ubGluaykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xpbmtUeXBlXT1cIml0ZW0ubGluay5saW5rVHlwZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaHJlZl09XCJpdGVtLmxpbmsudXJsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuX19saW5rXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiaXRlbS5saW5rLmxhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID48c3Bhbj57eyBpdGVtLmxpbmsubGFiZWwgfX08L3NwYW4+PC9hXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwianMtc2xpZGVyLWFycm93c1wiPjwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDwhLS0gbW9iaWxlIHZpZXcgRSAtLT5cbjwvc2VjdGlvbj5cbiJdfQ==
@@ -8,7 +8,7 @@ export class PuroGrid5itemsComponent {
8
8
  this.items = input();
9
9
  }
10
10
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroGrid5itemsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
11
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroGrid5itemsComponent, isStandalone: true, selector: "lib-puro-grid5items", inputs: { title: { classPropertyName: "title", publicName: "title", isSignal: false, isRequired: false, transformFunction: null }, button: { classPropertyName: "button", publicName: "button", isSignal: false, isRequired: false, transformFunction: null }, items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<section\n class=\"imageGrid js-active-slider generalMargin\"\n [puroSlider]=\"items()\"\n data-slides_infinite=\"true\"\n data-slider_name=\"js-imageGrid-slider\"\n data-slider_showbtns=\"true\"\n data-slider_showdots=\"false\"\n data-slider_fade=\"true\"\n data-slider_autoplay=\"true\"\n data-slides_pc=\"1\"\n>\n @if (title) {\n <span class=\"imageGrid__title\">{{ title }}</span>\n }\n <!-- desktop view S -->\n <div class=\"imageGrid__desktop imageGrid__for-5\">\n @for (item of items(); track $index) {\n @if (item) {\n <div class=\"imageGrid__item\">\n <a\n [href]=\"item.link?.url\"\n [linkType]=\"item.link?.linkType\"\n class=\"imageGrid__box\"\n [ngClass]=\"{ 'imageGrid__box--right': $last }\"\n [attr.aria-label]=\"item.link?.label ?? 'Item link'\"\n >\n <div class=\"imageGrid__graphic\">\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n [alt]=\"item.img.alt\"\n priority\n width=\"360\"\n height=\"340\"\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading photo\">\n {{ item.title }}\n </h2>\n }\n @if (item.subtitle) {\n <p class=\"imageGrid__subHeading photo\">{{\n item.subtitle\n }}</p>\n }\n <div class=\"btn__group\">\n @if (item.link) {\n <button\n class=\"btn__link\"\n [attr.aria-label]=\"item.link.label\"\n >\n <span>{{ item.link.label }}</span>\n </button>\n }\n </div>\n </div>\n </a>\n </div>\n }\n }\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 <!-- desktop view E -->\n <!-- mobile view S -->\n <div class=\"imageGrid__mobile relative\">\n <div class=\"js-imageGrid-slider js-slider_fix-arrows\">\n @for (item of items(); track $index) {\n @if (item) {\n <div>\n <div class=\"imageGrid__box\">\n <div\n class=\"imageGrid__graphic js-slider_fix-arrows-zone\"\n >\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n width=\"499\"\n height=\"472\"\n [alt]=\"item.img.alt\"\n priority\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading\">\n {{ item.title }}\n </h2>\n }\n @if (item.subtitle) {\n <span class=\"imageGrid__subHeading\">{{\n item.subtitle\n }}</span>\n }\n </div>\n <div class=\"btn__group\">\n @if (item.link) {\n <a\n [linkType]=\"item.link.linkType\"\n [href]=\"item.link.url\"\n class=\"btn__link\"\n [attr.aria-label]=\"item.link.label\"\n ><span>{{ item.link.label }}</span></a\n >\n }\n </div>\n </div>\n </div>\n }\n }\n </div>\n <div class=\"js-slider-arrows\"></div>\n </div>\n <!-- mobile view E -->\n</section>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: PuroLinkTypeDirective, selector: "[linkType]", inputs: ["linkType", "href", "modalClick"], outputs: ["bookClick", "anchorClicked"] }, { kind: "directive", type: PuroSliderDirective, selector: "[puroSlider]", inputs: ["puroSlider"] }, { kind: "directive", type: NgOptimizedImage, selector: "img[ngSrc]", inputs: ["ngSrc", "ngSrcset", "sizes", "width", "height", "loading", "priority", "loaderParams", "disableOptimizedSrcset", "fill", "placeholder", "placeholderConfig", "src", "srcset"] }, { kind: "directive", type: AutoImageZoomWrapperDirective, selector: "img[ngSrc], img[src]" }] }); }
11
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroGrid5itemsComponent, isStandalone: true, selector: "lib-puro-grid5items", inputs: { title: { classPropertyName: "title", publicName: "title", isSignal: false, isRequired: false, transformFunction: null }, button: { classPropertyName: "button", publicName: "button", isSignal: false, isRequired: false, transformFunction: null }, items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<section\n class=\"imageGrid js-active-slider generalMargin\"\n [puroSlider]=\"items()\"\n data-slides_infinite=\"true\"\n data-slider_name=\"js-imageGrid-slider\"\n data-slider_showbtns=\"true\"\n data-slider_showdots=\"false\"\n data-slider_fade=\"true\"\n data-slider_autoplay=\"true\"\n data-slides_pc=\"1\"\n>\n @if (title) {\n <span class=\"imageGrid__title\">{{ title }}</span>\n }\n <!-- desktop view S -->\n <div class=\"imageGrid__desktop imageGrid__for-5\">\n @for (item of items(); track $index) {\n @if (item) {\n <div class=\"imageGrid__item\">\n @if (item.link?.url) {\n <a\n [href]=\"item.link?.url\"\n [linkType]=\"item.link?.linkType\"\n class=\"imageGrid__box\"\n [ngClass]=\"{ 'imageGrid__box--right': $last }\"\n [attr.aria-label]=\"item.link?.label ?? 'Item link'\"\n >\n <div class=\"imageGrid__graphic\">\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n [alt]=\"item.img.alt\"\n priority\n width=\"360\"\n height=\"340\"\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading photo\">\n {{ item.title }}\n </h2>\n }\n @if (item.subtitle) {\n <p class=\"imageGrid__subHeading photo\">{{\n item.subtitle\n }}</p>\n }\n <div class=\"btn__group\">\n @if (item.link) {\n <button\n class=\"btn__link\"\n [attr.aria-label]=\"item.link.label\"\n >\n <span>{{ item.link.label }}</span>\n </button>\n }\n </div>\n </div>\n </a>\n }\n <div\n class=\"imageGrid__box\"\n [ngClass]=\"{ 'imageGrid__box--right': $last }\"\n >\n <div class=\"imageGrid__graphic\">\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n [alt]=\"item.img.alt\"\n priority\n width=\"360\"\n height=\"340\"\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading photo\">\n {{ item.title }}\n </h2>\n }\n @if (item.subtitle) {\n <p class=\"imageGrid__subHeading photo\">{{\n item.subtitle\n }}</p>\n }\n <div class=\"btn__group\">\n @if (item.link) {\n <button\n class=\"btn__link\"\n [attr.aria-label]=\"item.link.label\"\n >\n <span>{{ item.link.label }}</span>\n </button>\n }\n </div>\n </div>\n </div>\n </div>\n }\n }\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 <!-- desktop view E -->\n <!-- mobile view S -->\n <div class=\"imageGrid__mobile relative\">\n <div class=\"js-imageGrid-slider js-slider_fix-arrows\">\n @for (item of items(); track $index) {\n @if (item) {\n <div>\n <div class=\"imageGrid__box\">\n <div\n class=\"imageGrid__graphic js-slider_fix-arrows-zone\"\n >\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n width=\"499\"\n height=\"472\"\n [alt]=\"item.img.alt\"\n priority\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading\">\n {{ item.title }}\n </h2>\n }\n @if (item.subtitle) {\n <span class=\"imageGrid__subHeading\">{{\n item.subtitle\n }}</span>\n }\n </div>\n <div class=\"btn__group\">\n @if (item.link) {\n <a\n [linkType]=\"item.link.linkType\"\n [href]=\"item.link.url\"\n class=\"btn__link\"\n [attr.aria-label]=\"item.link.label\"\n ><span>{{ item.link.label }}</span></a\n >\n }\n </div>\n </div>\n </div>\n }\n }\n </div>\n <div class=\"js-slider-arrows\"></div>\n </div>\n <!-- mobile view E -->\n</section>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: PuroLinkTypeDirective, selector: "[linkType]", inputs: ["linkType", "href", "modalClick"], outputs: ["bookClick", "anchorClicked"] }, { kind: "directive", type: PuroSliderDirective, selector: "[puroSlider]", inputs: ["puroSlider"] }, { kind: "directive", type: NgOptimizedImage, selector: "img[ngSrc]", inputs: ["ngSrc", "ngSrcset", "sizes", "width", "height", "loading", "priority", "loaderParams", "disableOptimizedSrcset", "fill", "placeholder", "placeholderConfig", "src", "srcset"] }, { kind: "directive", type: AutoImageZoomWrapperDirective, selector: "img[ngSrc], img[src]" }] }); }
12
12
  }
13
13
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroGrid5itemsComponent, decorators: [{
14
14
  type: Component,
@@ -18,10 +18,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
18
18
  PuroSliderDirective,
19
19
  NgOptimizedImage,
20
20
  AutoImageZoomWrapperDirective,
21
- ], template: "<section\n class=\"imageGrid js-active-slider generalMargin\"\n [puroSlider]=\"items()\"\n data-slides_infinite=\"true\"\n data-slider_name=\"js-imageGrid-slider\"\n data-slider_showbtns=\"true\"\n data-slider_showdots=\"false\"\n data-slider_fade=\"true\"\n data-slider_autoplay=\"true\"\n data-slides_pc=\"1\"\n>\n @if (title) {\n <span class=\"imageGrid__title\">{{ title }}</span>\n }\n <!-- desktop view S -->\n <div class=\"imageGrid__desktop imageGrid__for-5\">\n @for (item of items(); track $index) {\n @if (item) {\n <div class=\"imageGrid__item\">\n <a\n [href]=\"item.link?.url\"\n [linkType]=\"item.link?.linkType\"\n class=\"imageGrid__box\"\n [ngClass]=\"{ 'imageGrid__box--right': $last }\"\n [attr.aria-label]=\"item.link?.label ?? 'Item link'\"\n >\n <div class=\"imageGrid__graphic\">\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n [alt]=\"item.img.alt\"\n priority\n width=\"360\"\n height=\"340\"\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading photo\">\n {{ item.title }}\n </h2>\n }\n @if (item.subtitle) {\n <p class=\"imageGrid__subHeading photo\">{{\n item.subtitle\n }}</p>\n }\n <div class=\"btn__group\">\n @if (item.link) {\n <button\n class=\"btn__link\"\n [attr.aria-label]=\"item.link.label\"\n >\n <span>{{ item.link.label }}</span>\n </button>\n }\n </div>\n </div>\n </a>\n </div>\n }\n }\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 <!-- desktop view E -->\n <!-- mobile view S -->\n <div class=\"imageGrid__mobile relative\">\n <div class=\"js-imageGrid-slider js-slider_fix-arrows\">\n @for (item of items(); track $index) {\n @if (item) {\n <div>\n <div class=\"imageGrid__box\">\n <div\n class=\"imageGrid__graphic js-slider_fix-arrows-zone\"\n >\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n width=\"499\"\n height=\"472\"\n [alt]=\"item.img.alt\"\n priority\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading\">\n {{ item.title }}\n </h2>\n }\n @if (item.subtitle) {\n <span class=\"imageGrid__subHeading\">{{\n item.subtitle\n }}</span>\n }\n </div>\n <div class=\"btn__group\">\n @if (item.link) {\n <a\n [linkType]=\"item.link.linkType\"\n [href]=\"item.link.url\"\n class=\"btn__link\"\n [attr.aria-label]=\"item.link.label\"\n ><span>{{ item.link.label }}</span></a\n >\n }\n </div>\n </div>\n </div>\n }\n }\n </div>\n <div class=\"js-slider-arrows\"></div>\n </div>\n <!-- mobile view E -->\n</section>\n" }]
21
+ ], template: "<section\n class=\"imageGrid js-active-slider generalMargin\"\n [puroSlider]=\"items()\"\n data-slides_infinite=\"true\"\n data-slider_name=\"js-imageGrid-slider\"\n data-slider_showbtns=\"true\"\n data-slider_showdots=\"false\"\n data-slider_fade=\"true\"\n data-slider_autoplay=\"true\"\n data-slides_pc=\"1\"\n>\n @if (title) {\n <span class=\"imageGrid__title\">{{ title }}</span>\n }\n <!-- desktop view S -->\n <div class=\"imageGrid__desktop imageGrid__for-5\">\n @for (item of items(); track $index) {\n @if (item) {\n <div class=\"imageGrid__item\">\n @if (item.link?.url) {\n <a\n [href]=\"item.link?.url\"\n [linkType]=\"item.link?.linkType\"\n class=\"imageGrid__box\"\n [ngClass]=\"{ 'imageGrid__box--right': $last }\"\n [attr.aria-label]=\"item.link?.label ?? 'Item link'\"\n >\n <div class=\"imageGrid__graphic\">\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n [alt]=\"item.img.alt\"\n priority\n width=\"360\"\n height=\"340\"\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading photo\">\n {{ item.title }}\n </h2>\n }\n @if (item.subtitle) {\n <p class=\"imageGrid__subHeading photo\">{{\n item.subtitle\n }}</p>\n }\n <div class=\"btn__group\">\n @if (item.link) {\n <button\n class=\"btn__link\"\n [attr.aria-label]=\"item.link.label\"\n >\n <span>{{ item.link.label }}</span>\n </button>\n }\n </div>\n </div>\n </a>\n }\n <div\n class=\"imageGrid__box\"\n [ngClass]=\"{ 'imageGrid__box--right': $last }\"\n >\n <div class=\"imageGrid__graphic\">\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n [alt]=\"item.img.alt\"\n priority\n width=\"360\"\n height=\"340\"\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading photo\">\n {{ item.title }}\n </h2>\n }\n @if (item.subtitle) {\n <p class=\"imageGrid__subHeading photo\">{{\n item.subtitle\n }}</p>\n }\n <div class=\"btn__group\">\n @if (item.link) {\n <button\n class=\"btn__link\"\n [attr.aria-label]=\"item.link.label\"\n >\n <span>{{ item.link.label }}</span>\n </button>\n }\n </div>\n </div>\n </div>\n </div>\n }\n }\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 <!-- desktop view E -->\n <!-- mobile view S -->\n <div class=\"imageGrid__mobile relative\">\n <div class=\"js-imageGrid-slider js-slider_fix-arrows\">\n @for (item of items(); track $index) {\n @if (item) {\n <div>\n <div class=\"imageGrid__box\">\n <div\n class=\"imageGrid__graphic js-slider_fix-arrows-zone\"\n >\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n width=\"499\"\n height=\"472\"\n [alt]=\"item.img.alt\"\n priority\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading\">\n {{ item.title }}\n </h2>\n }\n @if (item.subtitle) {\n <span class=\"imageGrid__subHeading\">{{\n item.subtitle\n }}</span>\n }\n </div>\n <div class=\"btn__group\">\n @if (item.link) {\n <a\n [linkType]=\"item.link.linkType\"\n [href]=\"item.link.url\"\n class=\"btn__link\"\n [attr.aria-label]=\"item.link.label\"\n ><span>{{ item.link.label }}</span></a\n >\n }\n </div>\n </div>\n </div>\n }\n }\n </div>\n <div class=\"js-slider-arrows\"></div>\n </div>\n <!-- mobile view E -->\n</section>\n" }]
22
22
  }], propDecorators: { title: [{
23
23
  type: Input
24
24
  }], button: [{
25
25
  type: Input
26
26
  }] } });
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVyby1ncmlkNWl0ZW1zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3B1cm8vc3JjL2xpYi9jb21wb25lbnRzL3B1cm8tZ3JpZDVpdGVtcy9wdXJvLWdyaWQ1aXRlbXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHVyby9zcmMvbGliL2NvbXBvbmVudHMvcHVyby1ncmlkNWl0ZW1zL3B1cm8tZ3JpZDVpdGVtcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsWUFBWSxFQUNaLGdCQUFnQixHQUNuQixNQUFNLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RCxPQUFPLEVBQUUsNkJBQTZCLEVBQUUscUJBQXFCLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7O0FBZ0I3RyxNQUFNLE9BQU8sdUJBQXVCO0lBYnBDO1FBZ0JJLFVBQUssR0FBRyxLQUFLLEVBQXdCLENBQUM7S0FDekM7K0dBSlksdUJBQXVCO21HQUF2Qix1QkFBdUIsd2NDckJwQywyckxBcUlBLHlERHpIUSxZQUFZLDZIQUNaLHFCQUFxQiw0SUFDckIsbUJBQW1CLGlGQUNuQixnQkFBZ0IsZ1BBQ2hCLDZCQUE2Qjs7NEZBS3hCLHVCQUF1QjtrQkFibkMsU0FBUzsrQkFDSSxxQkFBcUIsY0FDbkIsSUFBSSxXQUNQO3dCQUNMLFlBQVk7d0JBQ1oscUJBQXFCO3dCQUNyQixtQkFBbUI7d0JBQ25CLGdCQUFnQjt3QkFDaEIsNkJBQTZCO3FCQUNoQzs4QkFLUSxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgTmdPcHRpbWl6ZWRJbWFnZSxcbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBdXRvSW1hZ2Vab29tV3JhcHBlckRpcmVjdGl2ZSwgUHVyb0xpbmtUeXBlRGlyZWN0aXZlLCBQdXJvU2xpZGVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcyc7XG5pbXBvcnQgeyBQdXJvQnV0dG9uSSwgUHVyb0ltYWdlSSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2xpYi1wdXJvLWdyaWQ1aXRlbXMnLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIFB1cm9MaW5rVHlwZURpcmVjdGl2ZSxcbiAgICAgICAgUHVyb1NsaWRlckRpcmVjdGl2ZSxcbiAgICAgICAgTmdPcHRpbWl6ZWRJbWFnZSxcbiAgICAgICAgQXV0b0ltYWdlWm9vbVdyYXBwZXJEaXJlY3RpdmUsXG4gICAgXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vcHVyby1ncmlkNWl0ZW1zLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybDogJy4vcHVyby1ncmlkNWl0ZW1zLmNvbXBvbmVudC5zY3NzJyxcbn0pXG5leHBvcnQgY2xhc3MgUHVyb0dyaWQ1aXRlbXNDb21wb25lbnQge1xuICAgIEBJbnB1dCgpIHRpdGxlPzogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGJ1dHRvbj86IFB1cm9CdXR0b25JO1xuICAgIGl0ZW1zID0gaW5wdXQ8UHVyb0dyaWQ1aXRlbXNJdGVtW10+KCk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHVyb0dyaWQ1aXRlbXNJdGVtIHtcbiAgICBpbWc/OiBQdXJvSW1hZ2VJO1xuICAgIHRpdGxlPzogc3RyaW5nO1xuICAgIHN1YnRpdGxlPzogc3RyaW5nO1xuICAgIGxpbms/OiBQdXJvQnV0dG9uSTtcbn1cbiIsIjxzZWN0aW9uXG4gICAgY2xhc3M9XCJpbWFnZUdyaWQganMtYWN0aXZlLXNsaWRlciBnZW5lcmFsTWFyZ2luXCJcbiAgICBbcHVyb1NsaWRlcl09XCJpdGVtcygpXCJcbiAgICBkYXRhLXNsaWRlc19pbmZpbml0ZT1cInRydWVcIlxuICAgIGRhdGEtc2xpZGVyX25hbWU9XCJqcy1pbWFnZUdyaWQtc2xpZGVyXCJcbiAgICBkYXRhLXNsaWRlcl9zaG93YnRucz1cInRydWVcIlxuICAgIGRhdGEtc2xpZGVyX3Nob3dkb3RzPVwiZmFsc2VcIlxuICAgIGRhdGEtc2xpZGVyX2ZhZGU9XCJ0cnVlXCJcbiAgICBkYXRhLXNsaWRlcl9hdXRvcGxheT1cInRydWVcIlxuICAgIGRhdGEtc2xpZGVzX3BjPVwiMVwiXG4+XG4gICAgQGlmICh0aXRsZSkge1xuICAgICAgICA8c3BhbiBjbGFzcz1cImltYWdlR3JpZF9fdGl0bGVcIj57eyB0aXRsZSB9fTwvc3Bhbj5cbiAgICB9XG4gICAgPCEtLSBkZXNrdG9wIHZpZXcgUyAtLT5cbiAgICA8ZGl2IGNsYXNzPVwiaW1hZ2VHcmlkX19kZXNrdG9wIGltYWdlR3JpZF9fZm9yLTVcIj5cbiAgICAgICAgQGZvciAoaXRlbSBvZiBpdGVtcygpOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgICAgICAgIEBpZiAoaXRlbSkge1xuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbWFnZUdyaWRfX2l0ZW1cIj5cbiAgICAgICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgICAgIFtocmVmXT1cIml0ZW0ubGluaz8udXJsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtsaW5rVHlwZV09XCJpdGVtLmxpbms/LmxpbmtUeXBlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiaW1hZ2VHcmlkX19ib3hcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieyAnaW1hZ2VHcmlkX19ib3gtLXJpZ2h0JzogJGxhc3QgfVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIml0ZW0ubGluaz8ubGFiZWwgPz8gJ0l0ZW0gbGluaydcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW1hZ2VHcmlkX19ncmFwaGljXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChpdGVtLmltZykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdTcmNdPVwiaXRlbS5pbWcuc3JjXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiaW1hZ2VHcmlkX19ncmFwaGljLS1pbWdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2FsdF09XCJpdGVtLmltZy5hbHRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJpb3JpdHlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoPVwiMzYwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD1cIjM0MFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWNvZGluZz1cImFzeW5jXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbWFnZUdyaWRfX2NvbnRlbnRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGl0ZW0udGl0bGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgyIGNsYXNzPVwiaW1hZ2VHcmlkX19oZWFkaW5nIHBob3RvXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBpdGVtLnRpdGxlIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvaDI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoaXRlbS5zdWJ0aXRsZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImltYWdlR3JpZF9fc3ViSGVhZGluZyBwaG90b1wiPnt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtLnN1YnRpdGxlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYnRuX19ncm91cFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGl0ZW0ubGluaykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuX19saW5rXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIml0ZW0ubGluay5sYWJlbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+e3sgaXRlbS5saW5rLmxhYmVsIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICA8ZGl2IGNsYXNzPVwiYnRuX19ncm91cFwiPlxuICAgICAgICAgICAgQGlmIChidXR0b24pIHtcbiAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICBbbGlua1R5cGVdPVwiYnV0dG9uLmxpbmtUeXBlXCJcbiAgICAgICAgICAgICAgICAgICAgW2hyZWZdPVwiYnV0dG9uLnVybFwiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bl9fcHJpbWFyeS0tb3V0bGluZVwiXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiYnV0dG9uLmxhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgPjxzcGFuPnt7IGJ1dHRvbi5sYWJlbCB9fTwvc3Bhbj48L2FcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDwhLS0gZGVza3RvcCB2aWV3IEUgLS0+XG4gICAgPCEtLSBtb2JpbGUgdmlldyBTIC0tPlxuICAgIDxkaXYgY2xhc3M9XCJpbWFnZUdyaWRfX21vYmlsZSByZWxhdGl2ZVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwianMtaW1hZ2VHcmlkLXNsaWRlciBqcy1zbGlkZXJfZml4LWFycm93c1wiPlxuICAgICAgICAgICAgQGZvciAoaXRlbSBvZiBpdGVtcygpOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgICAgICAgICAgICBAaWYgKGl0ZW0pIHtcbiAgICAgICAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbWFnZUdyaWRfX2JveFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJpbWFnZUdyaWRfX2dyYXBoaWMganMtc2xpZGVyX2ZpeC1hcnJvd3Mtem9uZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGl0ZW0uaW1nKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nU3JjXT1cIml0ZW0uaW1nLnNyY1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJpbWFnZUdyaWRfX2dyYXBoaWMtLWltZ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCI0OTlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD1cIjQ3MlwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2FsdF09XCJpdGVtLmltZy5hbHRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByaW9yaXR5XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVjb2Rpbmc9XCJhc3luY1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImltYWdlR3JpZF9fY29udGVudFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGl0ZW0udGl0bGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cImltYWdlR3JpZF9faGVhZGluZ1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGl0ZW0udGl0bGUgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvaDI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChpdGVtLnN1YnRpdGxlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImltYWdlR3JpZF9fc3ViSGVhZGluZ1wiPnt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5zdWJ0aXRsZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYnRuX19ncm91cFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGl0ZW0ubGluaykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbGlua1R5cGVdPVwiaXRlbS5saW5rLmxpbmtUeXBlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaHJlZl09XCJpdGVtLmxpbmsudXJsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0bl9fbGlua1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJpdGVtLmxpbmsubGFiZWxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID48c3Bhbj57eyBpdGVtLmxpbmsubGFiZWwgfX08L3NwYW4+PC9hXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwianMtc2xpZGVyLWFycm93c1wiPjwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDwhLS0gbW9iaWxlIHZpZXcgRSAtLT5cbjwvc2VjdGlvbj5cbiJdfQ==
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVyby1ncmlkNWl0ZW1zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3B1cm8vc3JjL2xpYi9jb21wb25lbnRzL3B1cm8tZ3JpZDVpdGVtcy9wdXJvLWdyaWQ1aXRlbXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHVyby9zcmMvbGliL2NvbXBvbmVudHMvcHVyby1ncmlkNWl0ZW1zL3B1cm8tZ3JpZDVpdGVtcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsWUFBWSxFQUNaLGdCQUFnQixHQUNuQixNQUFNLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RCxPQUFPLEVBQUUsNkJBQTZCLEVBQUUscUJBQXFCLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7O0FBZ0I3RyxNQUFNLE9BQU8sdUJBQXVCO0lBYnBDO1FBZ0JJLFVBQUssR0FBRyxLQUFLLEVBQXdCLENBQUM7S0FDekM7K0dBSlksdUJBQXVCO21HQUF2Qix1QkFBdUIsd2NDckJwQyw0MFBBK0tBLHlERG5LUSxZQUFZLDZIQUNaLHFCQUFxQiw0SUFDckIsbUJBQW1CLGlGQUNuQixnQkFBZ0IsZ1BBQ2hCLDZCQUE2Qjs7NEZBS3hCLHVCQUF1QjtrQkFibkMsU0FBUzsrQkFDSSxxQkFBcUIsY0FDbkIsSUFBSSxXQUNQO3dCQUNMLFlBQVk7d0JBQ1oscUJBQXFCO3dCQUNyQixtQkFBbUI7d0JBQ25CLGdCQUFnQjt3QkFDaEIsNkJBQTZCO3FCQUNoQzs4QkFLUSxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgTmdPcHRpbWl6ZWRJbWFnZSxcbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBdXRvSW1hZ2Vab29tV3JhcHBlckRpcmVjdGl2ZSwgUHVyb0xpbmtUeXBlRGlyZWN0aXZlLCBQdXJvU2xpZGVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcyc7XG5pbXBvcnQgeyBQdXJvQnV0dG9uSSwgUHVyb0ltYWdlSSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2xpYi1wdXJvLWdyaWQ1aXRlbXMnLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIFB1cm9MaW5rVHlwZURpcmVjdGl2ZSxcbiAgICAgICAgUHVyb1NsaWRlckRpcmVjdGl2ZSxcbiAgICAgICAgTmdPcHRpbWl6ZWRJbWFnZSxcbiAgICAgICAgQXV0b0ltYWdlWm9vbVdyYXBwZXJEaXJlY3RpdmUsXG4gICAgXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vcHVyby1ncmlkNWl0ZW1zLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybDogJy4vcHVyby1ncmlkNWl0ZW1zLmNvbXBvbmVudC5zY3NzJyxcbn0pXG5leHBvcnQgY2xhc3MgUHVyb0dyaWQ1aXRlbXNDb21wb25lbnQge1xuICAgIEBJbnB1dCgpIHRpdGxlPzogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGJ1dHRvbj86IFB1cm9CdXR0b25JO1xuICAgIGl0ZW1zID0gaW5wdXQ8UHVyb0dyaWQ1aXRlbXNJdGVtW10+KCk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHVyb0dyaWQ1aXRlbXNJdGVtIHtcbiAgICBpbWc/OiBQdXJvSW1hZ2VJO1xuICAgIHRpdGxlPzogc3RyaW5nO1xuICAgIHN1YnRpdGxlPzogc3RyaW5nO1xuICAgIGxpbms/OiBQdXJvQnV0dG9uSTtcbn1cbiIsIjxzZWN0aW9uXG4gICAgY2xhc3M9XCJpbWFnZUdyaWQganMtYWN0aXZlLXNsaWRlciBnZW5lcmFsTWFyZ2luXCJcbiAgICBbcHVyb1NsaWRlcl09XCJpdGVtcygpXCJcbiAgICBkYXRhLXNsaWRlc19pbmZpbml0ZT1cInRydWVcIlxuICAgIGRhdGEtc2xpZGVyX25hbWU9XCJqcy1pbWFnZUdyaWQtc2xpZGVyXCJcbiAgICBkYXRhLXNsaWRlcl9zaG93YnRucz1cInRydWVcIlxuICAgIGRhdGEtc2xpZGVyX3Nob3dkb3RzPVwiZmFsc2VcIlxuICAgIGRhdGEtc2xpZGVyX2ZhZGU9XCJ0cnVlXCJcbiAgICBkYXRhLXNsaWRlcl9hdXRvcGxheT1cInRydWVcIlxuICAgIGRhdGEtc2xpZGVzX3BjPVwiMVwiXG4+XG4gICAgQGlmICh0aXRsZSkge1xuICAgICAgICA8c3BhbiBjbGFzcz1cImltYWdlR3JpZF9fdGl0bGVcIj57eyB0aXRsZSB9fTwvc3Bhbj5cbiAgICB9XG4gICAgPCEtLSBkZXNrdG9wIHZpZXcgUyAtLT5cbiAgICA8ZGl2IGNsYXNzPVwiaW1hZ2VHcmlkX19kZXNrdG9wIGltYWdlR3JpZF9fZm9yLTVcIj5cbiAgICAgICAgQGZvciAoaXRlbSBvZiBpdGVtcygpOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgICAgICAgIEBpZiAoaXRlbSkge1xuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbWFnZUdyaWRfX2l0ZW1cIj5cbiAgICAgICAgICAgICAgICAgICAgQGlmIChpdGVtLmxpbms/LnVybCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaHJlZl09XCJpdGVtLmxpbms/LnVybFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xpbmtUeXBlXT1cIml0ZW0ubGluaz8ubGlua1R5cGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiaW1hZ2VHcmlkX19ib3hcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ2ltYWdlR3JpZF9fYm94LS1yaWdodCc6ICRsYXN0IH1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiaXRlbS5saW5rPy5sYWJlbCA/PyAnSXRlbSBsaW5rJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImltYWdlR3JpZF9fZ3JhcGhpY1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGl0ZW0uaW1nKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nU3JjXT1cIml0ZW0uaW1nLnNyY1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJpbWFnZUdyaWRfX2dyYXBoaWMtLWltZ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2FsdF09XCJpdGVtLmltZy5hbHRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByaW9yaXR5XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIzNjBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD1cIjM0MFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVjb2Rpbmc9XCJhc3luY1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImltYWdlR3JpZF9fY29udGVudFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGl0ZW0udGl0bGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cImltYWdlR3JpZF9faGVhZGluZyBwaG90b1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGl0ZW0udGl0bGUgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvaDI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChpdGVtLnN1YnRpdGxlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImltYWdlR3JpZF9fc3ViSGVhZGluZyBwaG90b1wiPnt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5zdWJ0aXRsZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX08L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJ0bl9fZ3JvdXBcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoaXRlbS5saW5rKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0bl9fbGlua1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiaXRlbS5saW5rLmxhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPnt7IGl0ZW0ubGluay5sYWJlbCB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJpbWFnZUdyaWRfX2JveFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdpbWFnZUdyaWRfX2JveC0tcmlnaHQnOiAkbGFzdCB9XCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImltYWdlR3JpZF9fZ3JhcGhpY1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAoaXRlbS5pbWcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nU3JjXT1cIml0ZW0uaW1nLnNyY1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImltYWdlR3JpZF9fZ3JhcGhpYy0taW1nXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthbHRdPVwiaXRlbS5pbWcuYWx0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByaW9yaXR5XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjM2MFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9XCIzNDBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVjb2Rpbmc9XCJhc3luY1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW1hZ2VHcmlkX19jb250ZW50XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChpdGVtLnRpdGxlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cImltYWdlR3JpZF9faGVhZGluZyBwaG90b1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgaXRlbS50aXRsZSB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2gyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGl0ZW0uc3VidGl0bGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJpbWFnZUdyaWRfX3N1YkhlYWRpbmcgcGhvdG9cIj57e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5zdWJ0aXRsZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fTwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJ0bl9fZ3JvdXBcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChpdGVtLmxpbmspIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0bl9fbGlua1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJpdGVtLmxpbmsubGFiZWxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPnt7IGl0ZW0ubGluay5sYWJlbCB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICA8ZGl2IGNsYXNzPVwiYnRuX19ncm91cFwiPlxuICAgICAgICAgICAgQGlmIChidXR0b24pIHtcbiAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICBbbGlua1R5cGVdPVwiYnV0dG9uLmxpbmtUeXBlXCJcbiAgICAgICAgICAgICAgICAgICAgW2hyZWZdPVwiYnV0dG9uLnVybFwiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bl9fcHJpbWFyeS0tb3V0bGluZVwiXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiYnV0dG9uLmxhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgPjxzcGFuPnt7IGJ1dHRvbi5sYWJlbCB9fTwvc3Bhbj48L2FcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDwhLS0gZGVza3RvcCB2aWV3IEUgLS0+XG4gICAgPCEtLSBtb2JpbGUgdmlldyBTIC0tPlxuICAgIDxkaXYgY2xhc3M9XCJpbWFnZUdyaWRfX21vYmlsZSByZWxhdGl2ZVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwianMtaW1hZ2VHcmlkLXNsaWRlciBqcy1zbGlkZXJfZml4LWFycm93c1wiPlxuICAgICAgICAgICAgQGZvciAoaXRlbSBvZiBpdGVtcygpOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgICAgICAgICAgICBAaWYgKGl0ZW0pIHtcbiAgICAgICAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbWFnZUdyaWRfX2JveFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJpbWFnZUdyaWRfX2dyYXBoaWMganMtc2xpZGVyX2ZpeC1hcnJvd3Mtem9uZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGl0ZW0uaW1nKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nU3JjXT1cIml0ZW0uaW1nLnNyY1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJpbWFnZUdyaWRfX2dyYXBoaWMtLWltZ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCI0OTlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD1cIjQ3MlwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2FsdF09XCJpdGVtLmltZy5hbHRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByaW9yaXR5XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVjb2Rpbmc9XCJhc3luY1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImltYWdlR3JpZF9fY29udGVudFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGl0ZW0udGl0bGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cImltYWdlR3JpZF9faGVhZGluZ1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGl0ZW0udGl0bGUgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvaDI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChpdGVtLnN1YnRpdGxlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImltYWdlR3JpZF9fc3ViSGVhZGluZ1wiPnt7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5zdWJ0aXRsZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYnRuX19ncm91cFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKGl0ZW0ubGluaykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbGlua1R5cGVdPVwiaXRlbS5saW5rLmxpbmtUeXBlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaHJlZl09XCJpdGVtLmxpbmsudXJsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0bl9fbGlua1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJpdGVtLmxpbmsubGFiZWxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID48c3Bhbj57eyBpdGVtLmxpbmsubGFiZWwgfX08L3NwYW4+PC9hXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwianMtc2xpZGVyLWFycm93c1wiPjwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDwhLS0gbW9iaWxlIHZpZXcgRSAtLT5cbjwvc2VjdGlvbj5cbiJdfQ==
@@ -6886,7 +6886,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
6886
6886
 
6887
6887
  class PuroGrid4itemsComponent {
6888
6888
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroGrid4itemsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6889
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroGrid4itemsComponent, isStandalone: true, selector: "lib-puro-grid4items", inputs: { title: "title", items: "items", button: "button", tags: "tags", textColors: "textColors" }, ngImport: i0, template: "<section\n class=\"imageGrid js-active-slider generalMargin\"\n [puroSlider]=\"items\"\n data-slides_infinite=\"true\"\n data-slider_name=\"js-imageGrid-slider\"\n data-slider_showbtns=\"true\"\n data-slider_showdots=\"false\"\n data-slider_fade=\"true\"\n data-slider_autoplay=\"true\"\n data-slides_pc=\"1\"\n>\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"imageGrid__title\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n <!-- desktop view S -->\n <div class=\"imageGrid__desktop imageGrid__for-4\">\n @for (item of items || []; track $index) {\n <div class=\"imageGrid__item\">\n <a\n [href]=\"item.link ? item.link.url : ''\"\n class=\"imageGrid__box\"\n [attr.aria-label]=\"item?.link?.label\"\n >\n <div class=\"imageGrid__graphic\">\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n [alt]=\"item.img.alt\"\n width=\"360\"\n height=\"340\"\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading photo\">{{ item.title }}</h2>\n }\n @if (item.subtitle) {\n <p class=\"imageGrid__subHeading photo\">{{\n item.subtitle\n }}</p>\n }\n <div class=\"btn__group\">\n @if (item.link) {\n <button\n class=\"btn__link\"\n [attr.aria-label]=\"item?.link?.label\"\n >\n <span>{{ item?.link?.label }}</span>\n </button>\n }\n </div>\n </div>\n </a>\n </div>\n }\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 <!-- desktop view E -->\n <!-- mobile view S -->\n <div class=\"imageGrid__mobile relative\">\n <div class=\"js-imageGrid-slider js-slider_fix-arrows\">\n @for (item of items || []; track $index) {\n <div>\n <div class=\"imageGrid__box\">\n <div\n class=\"imageGrid__graphic js-slider_fix-arrows-zone\"\n >\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n width=\"499\"\n height=\"472\"\n [alt]=\"item.img.alt\"\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading\">\n {{ item.title }}\n </h2>\n }\n @if (item.subtitle) {\n <span class=\"imageGrid__subHeading\">{{\n item.subtitle\n }}</span>\n }\n </div>\n <div class=\"btn__group\">\n @if (item.link) {\n <a\n [linkType]=\"item.link.linkType\"\n [href]=\"item.link.url\"\n class=\"btn__link\"\n [attr.aria-label]=\"item.link.label\"\n ><span>{{ item.link.label }}</span></a\n >\n }\n </div>\n </div>\n </div>\n }\n </div>\n <div class=\"js-slider-arrows\"></div>\n </div>\n <!-- mobile view E -->\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: NgOptimizedImage, selector: "img[ngSrc]", inputs: ["ngSrc", "ngSrcset", "sizes", "width", "height", "loading", "priority", "loaderParams", "disableOptimizedSrcset", "fill", "placeholder", "placeholderConfig", "src", "srcset"] }, { kind: "directive", type: AutoImageZoomWrapperDirective, selector: "img[ngSrc], img[src]" }, { kind: "component", type: PuroDynamicHeadingComponent, selector: "lib-puro-dynamic-heading", inputs: ["tag", "wrapper", "cssClass", "content", "color"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
6889
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroGrid4itemsComponent, isStandalone: true, selector: "lib-puro-grid4items", inputs: { title: "title", items: "items", button: "button", tags: "tags", textColors: "textColors" }, ngImport: i0, template: "<section\n class=\"imageGrid js-active-slider generalMargin\"\n [puroSlider]=\"items\"\n data-slides_infinite=\"true\"\n data-slider_name=\"js-imageGrid-slider\"\n data-slider_showbtns=\"true\"\n data-slider_showdots=\"false\"\n data-slider_fade=\"true\"\n data-slider_autoplay=\"true\"\n data-slides_pc=\"1\"\n>\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"imageGrid__title\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n <!-- desktop view S -->\n <div class=\"imageGrid__desktop imageGrid__for-4\">\n @for (item of items || []; track $index) {\n <div class=\"imageGrid__item\">\n @if (item?.link?.url) {\n <a\n [href]=\"item.link ? item.link.url : ''\"\n class=\"imageGrid__box\"\n [attr.aria-label]=\"item?.link?.label\"\n >\n <div class=\"imageGrid__graphic\">\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n [alt]=\"item.img.alt\"\n width=\"360\"\n height=\"340\"\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading photo\">\n {{ item.title }}\n </h2>\n }\n @if (item.subtitle) {\n <p class=\"imageGrid__subHeading photo\">\n {{ item.subtitle }}\n </p>\n }\n <div class=\"btn__group\">\n @if (item.link) {\n <button\n class=\"btn__link\"\n [attr.aria-label]=\"item?.link?.label\"\n >\n <span>{{ item?.link?.label }}</span>\n </button>\n }\n </div>\n </div>\n </a>\n }\n <div class=\"imageGrid__box\">\n <div class=\"imageGrid__graphic\">\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n [alt]=\"item.img.alt\"\n width=\"360\"\n height=\"340\"\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading photo\">\n {{ item.title }}\n </h2>\n }\n @if (item.subtitle) {\n <p class=\"imageGrid__subHeading photo\">\n {{ item.subtitle }}\n </p>\n }\n <div class=\"btn__group\">\n @if (item.link) {\n <button\n class=\"btn__link\"\n [attr.aria-label]=\"item?.link?.label\"\n >\n <span>{{ item?.link?.label }}</span>\n </button>\n }\n </div>\n </div>\n </div>\n </div>\n }\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 <!-- desktop view E -->\n <!-- mobile view S -->\n <div class=\"imageGrid__mobile relative\">\n <div class=\"js-imageGrid-slider js-slider_fix-arrows\">\n @for (item of items || []; track $index) {\n <div>\n <div class=\"imageGrid__box\">\n <div\n class=\"imageGrid__graphic js-slider_fix-arrows-zone\"\n >\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n width=\"499\"\n height=\"472\"\n [alt]=\"item.img.alt\"\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading\">\n {{ item.title }}\n </h2>\n }\n @if (item.subtitle) {\n <span class=\"imageGrid__subHeading\">{{\n item.subtitle\n }}</span>\n }\n </div>\n <div class=\"btn__group\">\n @if (item.link) {\n <a\n [linkType]=\"item.link.linkType\"\n [href]=\"item.link.url\"\n class=\"btn__link\"\n [attr.aria-label]=\"item.link.label\"\n ><span>{{ item.link.label }}</span></a\n >\n }\n </div>\n </div>\n </div>\n }\n </div>\n <div class=\"js-slider-arrows\"></div>\n </div>\n <!-- mobile view E -->\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: NgOptimizedImage, selector: "img[ngSrc]", inputs: ["ngSrc", "ngSrcset", "sizes", "width", "height", "loading", "priority", "loaderParams", "disableOptimizedSrcset", "fill", "placeholder", "placeholderConfig", "src", "srcset"] }, { kind: "directive", type: AutoImageZoomWrapperDirective, selector: "img[ngSrc], img[src]" }, { kind: "component", type: PuroDynamicHeadingComponent, selector: "lib-puro-dynamic-heading", inputs: ["tag", "wrapper", "cssClass", "content", "color"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
6890
6890
  }
6891
6891
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroGrid4itemsComponent, decorators: [{
6892
6892
  type: Component,
@@ -6897,7 +6897,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
6897
6897
  NgOptimizedImage,
6898
6898
  AutoImageZoomWrapperDirective,
6899
6899
  PuroDynamicHeadingComponent,
6900
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<section\n class=\"imageGrid js-active-slider generalMargin\"\n [puroSlider]=\"items\"\n data-slides_infinite=\"true\"\n data-slider_name=\"js-imageGrid-slider\"\n data-slider_showbtns=\"true\"\n data-slider_showdots=\"false\"\n data-slider_fade=\"true\"\n data-slider_autoplay=\"true\"\n data-slides_pc=\"1\"\n>\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"imageGrid__title\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n <!-- desktop view S -->\n <div class=\"imageGrid__desktop imageGrid__for-4\">\n @for (item of items || []; track $index) {\n <div class=\"imageGrid__item\">\n <a\n [href]=\"item.link ? item.link.url : ''\"\n class=\"imageGrid__box\"\n [attr.aria-label]=\"item?.link?.label\"\n >\n <div class=\"imageGrid__graphic\">\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n [alt]=\"item.img.alt\"\n width=\"360\"\n height=\"340\"\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading photo\">{{ item.title }}</h2>\n }\n @if (item.subtitle) {\n <p class=\"imageGrid__subHeading photo\">{{\n item.subtitle\n }}</p>\n }\n <div class=\"btn__group\">\n @if (item.link) {\n <button\n class=\"btn__link\"\n [attr.aria-label]=\"item?.link?.label\"\n >\n <span>{{ item?.link?.label }}</span>\n </button>\n }\n </div>\n </div>\n </a>\n </div>\n }\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 <!-- desktop view E -->\n <!-- mobile view S -->\n <div class=\"imageGrid__mobile relative\">\n <div class=\"js-imageGrid-slider js-slider_fix-arrows\">\n @for (item of items || []; track $index) {\n <div>\n <div class=\"imageGrid__box\">\n <div\n class=\"imageGrid__graphic js-slider_fix-arrows-zone\"\n >\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n width=\"499\"\n height=\"472\"\n [alt]=\"item.img.alt\"\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading\">\n {{ item.title }}\n </h2>\n }\n @if (item.subtitle) {\n <span class=\"imageGrid__subHeading\">{{\n item.subtitle\n }}</span>\n }\n </div>\n <div class=\"btn__group\">\n @if (item.link) {\n <a\n [linkType]=\"item.link.linkType\"\n [href]=\"item.link.url\"\n class=\"btn__link\"\n [attr.aria-label]=\"item.link.label\"\n ><span>{{ item.link.label }}</span></a\n >\n }\n </div>\n </div>\n </div>\n }\n </div>\n <div class=\"js-slider-arrows\"></div>\n </div>\n <!-- mobile view E -->\n</section>\n" }]
6900
+ ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<section\n class=\"imageGrid js-active-slider generalMargin\"\n [puroSlider]=\"items\"\n data-slides_infinite=\"true\"\n data-slider_name=\"js-imageGrid-slider\"\n data-slider_showbtns=\"true\"\n data-slider_showdots=\"false\"\n data-slider_fade=\"true\"\n data-slider_autoplay=\"true\"\n data-slides_pc=\"1\"\n>\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"imageGrid__title\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n <!-- desktop view S -->\n <div class=\"imageGrid__desktop imageGrid__for-4\">\n @for (item of items || []; track $index) {\n <div class=\"imageGrid__item\">\n @if (item?.link?.url) {\n <a\n [href]=\"item.link ? item.link.url : ''\"\n class=\"imageGrid__box\"\n [attr.aria-label]=\"item?.link?.label\"\n >\n <div class=\"imageGrid__graphic\">\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n [alt]=\"item.img.alt\"\n width=\"360\"\n height=\"340\"\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading photo\">\n {{ item.title }}\n </h2>\n }\n @if (item.subtitle) {\n <p class=\"imageGrid__subHeading photo\">\n {{ item.subtitle }}\n </p>\n }\n <div class=\"btn__group\">\n @if (item.link) {\n <button\n class=\"btn__link\"\n [attr.aria-label]=\"item?.link?.label\"\n >\n <span>{{ item?.link?.label }}</span>\n </button>\n }\n </div>\n </div>\n </a>\n }\n <div class=\"imageGrid__box\">\n <div class=\"imageGrid__graphic\">\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n [alt]=\"item.img.alt\"\n width=\"360\"\n height=\"340\"\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading photo\">\n {{ item.title }}\n </h2>\n }\n @if (item.subtitle) {\n <p class=\"imageGrid__subHeading photo\">\n {{ item.subtitle }}\n </p>\n }\n <div class=\"btn__group\">\n @if (item.link) {\n <button\n class=\"btn__link\"\n [attr.aria-label]=\"item?.link?.label\"\n >\n <span>{{ item?.link?.label }}</span>\n </button>\n }\n </div>\n </div>\n </div>\n </div>\n }\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 <!-- desktop view E -->\n <!-- mobile view S -->\n <div class=\"imageGrid__mobile relative\">\n <div class=\"js-imageGrid-slider js-slider_fix-arrows\">\n @for (item of items || []; track $index) {\n <div>\n <div class=\"imageGrid__box\">\n <div\n class=\"imageGrid__graphic js-slider_fix-arrows-zone\"\n >\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n width=\"499\"\n height=\"472\"\n [alt]=\"item.img.alt\"\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading\">\n {{ item.title }}\n </h2>\n }\n @if (item.subtitle) {\n <span class=\"imageGrid__subHeading\">{{\n item.subtitle\n }}</span>\n }\n </div>\n <div class=\"btn__group\">\n @if (item.link) {\n <a\n [linkType]=\"item.link.linkType\"\n [href]=\"item.link.url\"\n class=\"btn__link\"\n [attr.aria-label]=\"item.link.label\"\n ><span>{{ item.link.label }}</span></a\n >\n }\n </div>\n </div>\n </div>\n }\n </div>\n <div class=\"js-slider-arrows\"></div>\n </div>\n <!-- mobile view E -->\n</section>\n" }]
6901
6901
  }], propDecorators: { title: [{
6902
6902
  type: Input
6903
6903
  }], items: [{
@@ -6915,7 +6915,7 @@ class PuroGrid5itemsComponent {
6915
6915
  this.items = input();
6916
6916
  }
6917
6917
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroGrid5itemsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6918
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroGrid5itemsComponent, isStandalone: true, selector: "lib-puro-grid5items", inputs: { title: { classPropertyName: "title", publicName: "title", isSignal: false, isRequired: false, transformFunction: null }, button: { classPropertyName: "button", publicName: "button", isSignal: false, isRequired: false, transformFunction: null }, items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<section\n class=\"imageGrid js-active-slider generalMargin\"\n [puroSlider]=\"items()\"\n data-slides_infinite=\"true\"\n data-slider_name=\"js-imageGrid-slider\"\n data-slider_showbtns=\"true\"\n data-slider_showdots=\"false\"\n data-slider_fade=\"true\"\n data-slider_autoplay=\"true\"\n data-slides_pc=\"1\"\n>\n @if (title) {\n <span class=\"imageGrid__title\">{{ title }}</span>\n }\n <!-- desktop view S -->\n <div class=\"imageGrid__desktop imageGrid__for-5\">\n @for (item of items(); track $index) {\n @if (item) {\n <div class=\"imageGrid__item\">\n <a\n [href]=\"item.link?.url\"\n [linkType]=\"item.link?.linkType\"\n class=\"imageGrid__box\"\n [ngClass]=\"{ 'imageGrid__box--right': $last }\"\n [attr.aria-label]=\"item.link?.label ?? 'Item link'\"\n >\n <div class=\"imageGrid__graphic\">\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n [alt]=\"item.img.alt\"\n priority\n width=\"360\"\n height=\"340\"\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading photo\">\n {{ item.title }}\n </h2>\n }\n @if (item.subtitle) {\n <p class=\"imageGrid__subHeading photo\">{{\n item.subtitle\n }}</p>\n }\n <div class=\"btn__group\">\n @if (item.link) {\n <button\n class=\"btn__link\"\n [attr.aria-label]=\"item.link.label\"\n >\n <span>{{ item.link.label }}</span>\n </button>\n }\n </div>\n </div>\n </a>\n </div>\n }\n }\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 <!-- desktop view E -->\n <!-- mobile view S -->\n <div class=\"imageGrid__mobile relative\">\n <div class=\"js-imageGrid-slider js-slider_fix-arrows\">\n @for (item of items(); track $index) {\n @if (item) {\n <div>\n <div class=\"imageGrid__box\">\n <div\n class=\"imageGrid__graphic js-slider_fix-arrows-zone\"\n >\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n width=\"499\"\n height=\"472\"\n [alt]=\"item.img.alt\"\n priority\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading\">\n {{ item.title }}\n </h2>\n }\n @if (item.subtitle) {\n <span class=\"imageGrid__subHeading\">{{\n item.subtitle\n }}</span>\n }\n </div>\n <div class=\"btn__group\">\n @if (item.link) {\n <a\n [linkType]=\"item.link.linkType\"\n [href]=\"item.link.url\"\n class=\"btn__link\"\n [attr.aria-label]=\"item.link.label\"\n ><span>{{ item.link.label }}</span></a\n >\n }\n </div>\n </div>\n </div>\n }\n }\n </div>\n <div class=\"js-slider-arrows\"></div>\n </div>\n <!-- mobile view E -->\n</section>\n", styles: [""], 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: PuroSliderDirective, selector: "[puroSlider]", inputs: ["puroSlider"] }, { kind: "directive", type: NgOptimizedImage, selector: "img[ngSrc]", inputs: ["ngSrc", "ngSrcset", "sizes", "width", "height", "loading", "priority", "loaderParams", "disableOptimizedSrcset", "fill", "placeholder", "placeholderConfig", "src", "srcset"] }, { kind: "directive", type: AutoImageZoomWrapperDirective, selector: "img[ngSrc], img[src]" }] }); }
6918
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroGrid5itemsComponent, isStandalone: true, selector: "lib-puro-grid5items", inputs: { title: { classPropertyName: "title", publicName: "title", isSignal: false, isRequired: false, transformFunction: null }, button: { classPropertyName: "button", publicName: "button", isSignal: false, isRequired: false, transformFunction: null }, items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<section\n class=\"imageGrid js-active-slider generalMargin\"\n [puroSlider]=\"items()\"\n data-slides_infinite=\"true\"\n data-slider_name=\"js-imageGrid-slider\"\n data-slider_showbtns=\"true\"\n data-slider_showdots=\"false\"\n data-slider_fade=\"true\"\n data-slider_autoplay=\"true\"\n data-slides_pc=\"1\"\n>\n @if (title) {\n <span class=\"imageGrid__title\">{{ title }}</span>\n }\n <!-- desktop view S -->\n <div class=\"imageGrid__desktop imageGrid__for-5\">\n @for (item of items(); track $index) {\n @if (item) {\n <div class=\"imageGrid__item\">\n @if (item.link?.url) {\n <a\n [href]=\"item.link?.url\"\n [linkType]=\"item.link?.linkType\"\n class=\"imageGrid__box\"\n [ngClass]=\"{ 'imageGrid__box--right': $last }\"\n [attr.aria-label]=\"item.link?.label ?? 'Item link'\"\n >\n <div class=\"imageGrid__graphic\">\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n [alt]=\"item.img.alt\"\n priority\n width=\"360\"\n height=\"340\"\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading photo\">\n {{ item.title }}\n </h2>\n }\n @if (item.subtitle) {\n <p class=\"imageGrid__subHeading photo\">{{\n item.subtitle\n }}</p>\n }\n <div class=\"btn__group\">\n @if (item.link) {\n <button\n class=\"btn__link\"\n [attr.aria-label]=\"item.link.label\"\n >\n <span>{{ item.link.label }}</span>\n </button>\n }\n </div>\n </div>\n </a>\n }\n <div\n class=\"imageGrid__box\"\n [ngClass]=\"{ 'imageGrid__box--right': $last }\"\n >\n <div class=\"imageGrid__graphic\">\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n [alt]=\"item.img.alt\"\n priority\n width=\"360\"\n height=\"340\"\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading photo\">\n {{ item.title }}\n </h2>\n }\n @if (item.subtitle) {\n <p class=\"imageGrid__subHeading photo\">{{\n item.subtitle\n }}</p>\n }\n <div class=\"btn__group\">\n @if (item.link) {\n <button\n class=\"btn__link\"\n [attr.aria-label]=\"item.link.label\"\n >\n <span>{{ item.link.label }}</span>\n </button>\n }\n </div>\n </div>\n </div>\n </div>\n }\n }\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 <!-- desktop view E -->\n <!-- mobile view S -->\n <div class=\"imageGrid__mobile relative\">\n <div class=\"js-imageGrid-slider js-slider_fix-arrows\">\n @for (item of items(); track $index) {\n @if (item) {\n <div>\n <div class=\"imageGrid__box\">\n <div\n class=\"imageGrid__graphic js-slider_fix-arrows-zone\"\n >\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n width=\"499\"\n height=\"472\"\n [alt]=\"item.img.alt\"\n priority\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading\">\n {{ item.title }}\n </h2>\n }\n @if (item.subtitle) {\n <span class=\"imageGrid__subHeading\">{{\n item.subtitle\n }}</span>\n }\n </div>\n <div class=\"btn__group\">\n @if (item.link) {\n <a\n [linkType]=\"item.link.linkType\"\n [href]=\"item.link.url\"\n class=\"btn__link\"\n [attr.aria-label]=\"item.link.label\"\n ><span>{{ item.link.label }}</span></a\n >\n }\n </div>\n </div>\n </div>\n }\n }\n </div>\n <div class=\"js-slider-arrows\"></div>\n </div>\n <!-- mobile view E -->\n</section>\n", styles: [""], 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: PuroSliderDirective, selector: "[puroSlider]", inputs: ["puroSlider"] }, { kind: "directive", type: NgOptimizedImage, selector: "img[ngSrc]", inputs: ["ngSrc", "ngSrcset", "sizes", "width", "height", "loading", "priority", "loaderParams", "disableOptimizedSrcset", "fill", "placeholder", "placeholderConfig", "src", "srcset"] }, { kind: "directive", type: AutoImageZoomWrapperDirective, selector: "img[ngSrc], img[src]" }] }); }
6919
6919
  }
6920
6920
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroGrid5itemsComponent, decorators: [{
6921
6921
  type: Component,
@@ -6925,7 +6925,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
6925
6925
  PuroSliderDirective,
6926
6926
  NgOptimizedImage,
6927
6927
  AutoImageZoomWrapperDirective,
6928
- ], template: "<section\n class=\"imageGrid js-active-slider generalMargin\"\n [puroSlider]=\"items()\"\n data-slides_infinite=\"true\"\n data-slider_name=\"js-imageGrid-slider\"\n data-slider_showbtns=\"true\"\n data-slider_showdots=\"false\"\n data-slider_fade=\"true\"\n data-slider_autoplay=\"true\"\n data-slides_pc=\"1\"\n>\n @if (title) {\n <span class=\"imageGrid__title\">{{ title }}</span>\n }\n <!-- desktop view S -->\n <div class=\"imageGrid__desktop imageGrid__for-5\">\n @for (item of items(); track $index) {\n @if (item) {\n <div class=\"imageGrid__item\">\n <a\n [href]=\"item.link?.url\"\n [linkType]=\"item.link?.linkType\"\n class=\"imageGrid__box\"\n [ngClass]=\"{ 'imageGrid__box--right': $last }\"\n [attr.aria-label]=\"item.link?.label ?? 'Item link'\"\n >\n <div class=\"imageGrid__graphic\">\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n [alt]=\"item.img.alt\"\n priority\n width=\"360\"\n height=\"340\"\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading photo\">\n {{ item.title }}\n </h2>\n }\n @if (item.subtitle) {\n <p class=\"imageGrid__subHeading photo\">{{\n item.subtitle\n }}</p>\n }\n <div class=\"btn__group\">\n @if (item.link) {\n <button\n class=\"btn__link\"\n [attr.aria-label]=\"item.link.label\"\n >\n <span>{{ item.link.label }}</span>\n </button>\n }\n </div>\n </div>\n </a>\n </div>\n }\n }\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 <!-- desktop view E -->\n <!-- mobile view S -->\n <div class=\"imageGrid__mobile relative\">\n <div class=\"js-imageGrid-slider js-slider_fix-arrows\">\n @for (item of items(); track $index) {\n @if (item) {\n <div>\n <div class=\"imageGrid__box\">\n <div\n class=\"imageGrid__graphic js-slider_fix-arrows-zone\"\n >\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n width=\"499\"\n height=\"472\"\n [alt]=\"item.img.alt\"\n priority\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading\">\n {{ item.title }}\n </h2>\n }\n @if (item.subtitle) {\n <span class=\"imageGrid__subHeading\">{{\n item.subtitle\n }}</span>\n }\n </div>\n <div class=\"btn__group\">\n @if (item.link) {\n <a\n [linkType]=\"item.link.linkType\"\n [href]=\"item.link.url\"\n class=\"btn__link\"\n [attr.aria-label]=\"item.link.label\"\n ><span>{{ item.link.label }}</span></a\n >\n }\n </div>\n </div>\n </div>\n }\n }\n </div>\n <div class=\"js-slider-arrows\"></div>\n </div>\n <!-- mobile view E -->\n</section>\n" }]
6928
+ ], template: "<section\n class=\"imageGrid js-active-slider generalMargin\"\n [puroSlider]=\"items()\"\n data-slides_infinite=\"true\"\n data-slider_name=\"js-imageGrid-slider\"\n data-slider_showbtns=\"true\"\n data-slider_showdots=\"false\"\n data-slider_fade=\"true\"\n data-slider_autoplay=\"true\"\n data-slides_pc=\"1\"\n>\n @if (title) {\n <span class=\"imageGrid__title\">{{ title }}</span>\n }\n <!-- desktop view S -->\n <div class=\"imageGrid__desktop imageGrid__for-5\">\n @for (item of items(); track $index) {\n @if (item) {\n <div class=\"imageGrid__item\">\n @if (item.link?.url) {\n <a\n [href]=\"item.link?.url\"\n [linkType]=\"item.link?.linkType\"\n class=\"imageGrid__box\"\n [ngClass]=\"{ 'imageGrid__box--right': $last }\"\n [attr.aria-label]=\"item.link?.label ?? 'Item link'\"\n >\n <div class=\"imageGrid__graphic\">\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n [alt]=\"item.img.alt\"\n priority\n width=\"360\"\n height=\"340\"\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading photo\">\n {{ item.title }}\n </h2>\n }\n @if (item.subtitle) {\n <p class=\"imageGrid__subHeading photo\">{{\n item.subtitle\n }}</p>\n }\n <div class=\"btn__group\">\n @if (item.link) {\n <button\n class=\"btn__link\"\n [attr.aria-label]=\"item.link.label\"\n >\n <span>{{ item.link.label }}</span>\n </button>\n }\n </div>\n </div>\n </a>\n }\n <div\n class=\"imageGrid__box\"\n [ngClass]=\"{ 'imageGrid__box--right': $last }\"\n >\n <div class=\"imageGrid__graphic\">\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n [alt]=\"item.img.alt\"\n priority\n width=\"360\"\n height=\"340\"\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading photo\">\n {{ item.title }}\n </h2>\n }\n @if (item.subtitle) {\n <p class=\"imageGrid__subHeading photo\">{{\n item.subtitle\n }}</p>\n }\n <div class=\"btn__group\">\n @if (item.link) {\n <button\n class=\"btn__link\"\n [attr.aria-label]=\"item.link.label\"\n >\n <span>{{ item.link.label }}</span>\n </button>\n }\n </div>\n </div>\n </div>\n </div>\n }\n }\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 <!-- desktop view E -->\n <!-- mobile view S -->\n <div class=\"imageGrid__mobile relative\">\n <div class=\"js-imageGrid-slider js-slider_fix-arrows\">\n @for (item of items(); track $index) {\n @if (item) {\n <div>\n <div class=\"imageGrid__box\">\n <div\n class=\"imageGrid__graphic js-slider_fix-arrows-zone\"\n >\n @if (item.img) {\n <img\n [ngSrc]=\"item.img.src\"\n class=\"imageGrid__graphic--img\"\n width=\"499\"\n height=\"472\"\n [alt]=\"item.img.alt\"\n priority\n decoding=\"async\"\n />\n }\n </div>\n <div class=\"imageGrid__content\">\n @if (item.title) {\n <h2 class=\"imageGrid__heading\">\n {{ item.title }}\n </h2>\n }\n @if (item.subtitle) {\n <span class=\"imageGrid__subHeading\">{{\n item.subtitle\n }}</span>\n }\n </div>\n <div class=\"btn__group\">\n @if (item.link) {\n <a\n [linkType]=\"item.link.linkType\"\n [href]=\"item.link.url\"\n class=\"btn__link\"\n [attr.aria-label]=\"item.link.label\"\n ><span>{{ item.link.label }}</span></a\n >\n }\n </div>\n </div>\n </div>\n }\n }\n </div>\n <div class=\"js-slider-arrows\"></div>\n </div>\n <!-- mobile view E -->\n</section>\n" }]
6929
6929
  }], propDecorators: { title: [{
6930
6930
  type: Input
6931
6931
  }], button: [{