ctt-puro 0.50.3 → 0.50.5

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.
@@ -4467,6 +4467,7 @@ class MapperService {
4467
4467
  items: socialMedia?.map((item) => ({
4468
4468
  title: item?.name,
4469
4469
  icon: Utils.mapSocialcons(item?.name?.toLowerCase()),
4470
+ url: item?.url,
4470
4471
  })),
4471
4472
  },
4472
4473
  title: typeof texts?.pretitle === 'string'
@@ -5218,10 +5219,10 @@ class MapperService {
5218
5219
  }
5219
5220
  mapPhotoSlider(props, reverse) {
5220
5221
  return {
5221
- title: props?.texts?.title,
5222
- pretitle: props?.texts?.pretitle,
5223
- subtitle: props?.texts?.subtitle,
5224
- description: props?.texts?.description,
5222
+ title: props?.texts?.title ?? props?.multimedia?.[0]?.title,
5223
+ pretitle: props?.texts?.pretitle ?? props?.multimedia?.[0]?.pretitle,
5224
+ subtitle: props?.texts?.subtitle ?? props?.multimedia?.[0]?.subtitle,
5225
+ description: props?.texts?.description ?? props?.multimedia?.[0]?.description,
5225
5226
  button: Utils.mapButtons(this.siteId(), props?.buttons?.filter((btn) => !!btn?.linkValue))[0],
5226
5227
  img: this.getArrayImageResponsive(props?.multimedia?.imagenes || []),
5227
5228
  reverse,
@@ -5229,10 +5230,11 @@ class MapperService {
5229
5230
  }
5230
5231
  mapBanner4Col(props) {
5231
5232
  return {
5232
- title: typeof props?.texts?.title === 'string'
5233
+ title: (typeof props?.texts?.title === 'string'
5233
5234
  ? props?.texts?.title
5234
- : props?.texts?.title?.contain,
5235
- description: props?.texts?.description,
5235
+ : props?.texts?.title?.contain)
5236
+ ?? props?.multimedia?.imagenes?.[0]?.title,
5237
+ description: props?.texts?.description ?? props?.multimedia?.imagenes?.[0]?.description,
5236
5238
  button: Utils.mapButtons(this.siteId(), props?.buttons)[0],
5237
5239
  images: props?.multimedia?.imagenes?.length
5238
5240
  ? this.getArrayImageResponsive(props.multimedia.imagebig?.length
@@ -6597,7 +6599,7 @@ class PuroFooterInfoComponent {
6597
6599
  this.newsletterClick.emit(this.form?.value.email);
6598
6600
  }
6599
6601
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroFooterInfoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6600
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroFooterInfoComponent, isStandalone: true, selector: "lib-puro-footer-info", inputs: { socialMedia: "socialMedia", addressInfo: "addressInfo", contactInfo: "contactInfo", newsletterInfo: "newsletterInfo", img: "img", logoImage: "logoImage", logo: "logo", button: "button", title: "title", tags: "tags", textColors: "textColors" }, outputs: { newsletterClick: "newsletterClick" }, ngImport: i0, template: "<section class=\"contact\" resizeZoom>\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"contact__title\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n <div class=\"contact__graphic\">\n @if (img) {\n <img\n [ngSrc]=\"img.src\"\n class=\"contact__graphic--img\"\n width=\"1763\"\n height=\"434\"\n [alt]=\"img.alt\"\n decoding=\"async\"\n />\n }\n <span class=\"contact__purobeach\">\n @if (logoImage) {\n <img\n aria-hidden=\"true\"\n focusable=\"false\"\n class=\"contact__purobeach--logo\"\n width=\"180\"\n height=\"20\"\n loading=\"lazy\"\n [ngSrc]=\"logoImage.src\"\n [alt]=\"logoImage.alt\"\n decoding=\"async\"\n data-no-zoom\n />\n }\n </span>\n </div>\n <div class=\"contact__container\">\n @if (socialMedia) {\n <div class=\"contact__followUs\">\n <span class=\"contact__purobeach\">\n @if (logo) {\n <img\n aria-hidden=\"true\"\n focusable=\"false\"\n class=\"contact__purobeach--logo\"\n width=\"180\"\n height=\"20\"\n loading=\"lazy\"\n [ngSrc]=\"logo.src\"\n [alt]=\"logo.alt\"\n decoding=\"async\"\n data-no-zoom\n />\n }\n </span>\n <ul class=\"contact__followUs--ItemList\">\n @for (item of socialMedia.items || []; track $index) {\n @if (item) {\n <li class=\"contact__followUs--ItemLink\">\n <a\n [href]=\"item.url\"\n [attr.aria-label]=\"item.icon\"\n ><i class=\"{{ item.icon }}\"></i\n ></a>\n </li>\n }\n }\n </ul>\n </div>\n }\n @if (addressInfo) {\n <div class=\"contact__address\">\n @if (addressInfo.title) {\n <h3 class=\"contact__heading\">{{ addressInfo.title }}</h3>\n }\n <div class=\"contact__text\">\n @if (addressInfo.text) {\n <p [innerHTML]=\"addressInfo.text\"></p>\n }\n @if (addressInfo.button) {\n <div class=\"btn__group\">\n <a\n [href]=\"addressInfo.button.url\"\n class=\"btn__link\"\n [attr.aria-label]=\"addressInfo.button.label\"\n >{{ addressInfo.button.label }}</a\n >\n </div>\n }\n </div>\n </div>\n }\n @if (contactInfo) {\n <div class=\"contact__contactLinks\">\n @if (contactInfo.title) {\n <h3 class=\"contact__heading\">{{ contactInfo.title }}</h3>\n }\n <div class=\"contact__text\">\n <ul class=\"contact__links\">\n @for (link of contactInfo.links || []; track $index) {\n @if (link) {\n <li>\n <a\n [href]=\"link.url | contactLink\"\n [attr.aria-label]=\"link.label\"\n >{{ link.label }}</a\n >\n </li>\n }\n }\n </ul>\n @if (contactInfo.button) {\n <div class=\"btn__group\">\n <a\n [linkType]=\"contactInfo.button.linkType\"\n [href]=\"contactInfo.button.url\"\n class=\"btn__link\"\n [attr.aria-label]=\"contactInfo.button.label\"\n >{{ contactInfo.button.label }}</a\n >\n </div>\n }\n </div>\n </div>\n }\n @if (newsletterInfo) {\n <div class=\"contact__newsletter\">\n @if (newsletterInfo.title) {\n <h3 class=\"contact__heading\">{{ newsletterInfo.title }}</h3>\n }\n\n @if (form) {\n <form class=\"contact__text\" [formGroup]=\"form\">\n <div class=\"contact__newsletterBox\">\n <div class=\"form__group\">\n <input\n type=\"text\"\n class=\"form__control\"\n [placeholder]=\"\n newsletterInfo.inputPlaceholder\n \"\n formControlName=\"email\"\n />\n <span class=\"contact__newsletter--icon\">\n <i class=\"icon-63\"></i>\n </span>\n </div>\n <label class=\"form__checkbox\">\n <input\n type=\"checkbox\"\n class=\"checkbox\"\n formControlName=\"check\"\n />\n <span class=\"box\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"9\"\n height=\"7\"\n >\n <use href=\"#checkbox-tick\"></use>\n </svg>\n </span>\n <span\n [innerHTML]=\"newsletterInfo.conditionsLink\"\n ></span>\n </label>\n </div>\n @if (newsletterInfo.button) {\n <div class=\"btn__group\">\n <a\n class=\"btn__link\"\n (click)=\"send()\"\n [ngClass]=\"{\n 'pointer-none': form.invalid,\n }\"\n [attr.aria-label]=\"\n newsletterInfo.button.label\n \"\n >\n {{ newsletterInfo.button.label }}\n </a>\n </div>\n }\n </form>\n }\n </div>\n }\n </div>\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: "pipe", type: PuroContactLinkPipe, name: "contactLink" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: PuroDynamicHeadingComponent, selector: "lib-puro-dynamic-heading", inputs: ["tag", "wrapper", "cssClass", "content", "color"] }, { 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: "directive", type: PuroResizeZoomDirective, selector: "[resizeZoom]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
6602
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: PuroFooterInfoComponent, isStandalone: true, selector: "lib-puro-footer-info", inputs: { socialMedia: "socialMedia", addressInfo: "addressInfo", contactInfo: "contactInfo", newsletterInfo: "newsletterInfo", img: "img", logoImage: "logoImage", logo: "logo", button: "button", title: "title", tags: "tags", textColors: "textColors" }, outputs: { newsletterClick: "newsletterClick" }, ngImport: i0, template: "<section class=\"contact\" resizeZoom>\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"contact__title\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n <div class=\"contact__graphic\">\n @if (img) {\n <img\n [ngSrc]=\"img.src\"\n class=\"contact__graphic--img\"\n width=\"1763\"\n height=\"434\"\n [alt]=\"img.alt\"\n decoding=\"async\"\n />\n }\n <span class=\"contact__purobeach\">\n @if (logoImage) {\n <img\n aria-hidden=\"true\"\n focusable=\"false\"\n class=\"contact__purobeach--logo\"\n width=\"180\"\n height=\"20\"\n loading=\"lazy\"\n [ngSrc]=\"logoImage.src\"\n [alt]=\"logoImage.alt\"\n decoding=\"async\"\n data-no-zoom\n />\n }\n </span>\n </div>\n <div class=\"contact__container\">\n @if (socialMedia) {\n <div class=\"contact__followUs\">\n <span class=\"contact__purobeach\">\n @if (logo) {\n <img\n aria-hidden=\"true\"\n focusable=\"false\"\n class=\"contact__purobeach--logo\"\n width=\"180\"\n height=\"20\"\n loading=\"lazy\"\n [ngSrc]=\"logo.src\"\n [alt]=\"logo.alt\"\n decoding=\"async\"\n data-no-zoom\n />\n }\n </span>\n <ul class=\"contact__followUs--ItemList\">\n @for (item of socialMedia.items || []; track $index) {\n @if (item) {\n <li class=\"contact__followUs--ItemLink\">\n <a\n [href]=\"item.url\"\n linkType=\"external\"\n [attr.aria-label]=\"item.title\"\n ><i class=\"{{ item.icon }}\"></i\n ></a>\n </li>\n }\n }\n </ul>\n </div>\n }\n @if (addressInfo) {\n <div class=\"contact__address\">\n @if (addressInfo.title) {\n <h3 class=\"contact__heading\">{{ addressInfo.title }}</h3>\n }\n <div class=\"contact__text\">\n @if (addressInfo.text) {\n <p [innerHTML]=\"addressInfo.text\"></p>\n }\n @if (addressInfo.button) {\n <div class=\"btn__group\">\n <a\n [href]=\"addressInfo.button.url\"\n class=\"btn__link\"\n [attr.aria-label]=\"addressInfo.button.label\"\n >{{ addressInfo.button.label }}</a\n >\n </div>\n }\n </div>\n </div>\n }\n @if (contactInfo) {\n <div class=\"contact__contactLinks\">\n @if (contactInfo.title) {\n <h3 class=\"contact__heading\">{{ contactInfo.title }}</h3>\n }\n <div class=\"contact__text\">\n <ul class=\"contact__links\">\n @for (link of contactInfo.links || []; track $index) {\n @if (link) {\n <li>\n <a\n [href]=\"link.url | contactLink\"\n [attr.aria-label]=\"link.label\"\n >{{ link.label }}</a\n >\n </li>\n }\n }\n </ul>\n @if (contactInfo.button) {\n <div class=\"btn__group\">\n <a\n [linkType]=\"contactInfo.button.linkType\"\n [href]=\"contactInfo.button.url\"\n class=\"btn__link\"\n [attr.aria-label]=\"contactInfo.button.label\"\n >{{ contactInfo.button.label }}</a\n >\n </div>\n }\n </div>\n </div>\n }\n @if (newsletterInfo) {\n <div class=\"contact__newsletter\">\n @if (newsletterInfo.title) {\n <h3 class=\"contact__heading\">{{ newsletterInfo.title }}</h3>\n }\n\n @if (form) {\n <form class=\"contact__text\" [formGroup]=\"form\">\n <div class=\"contact__newsletterBox\">\n <div class=\"form__group\">\n <input\n type=\"text\"\n class=\"form__control\"\n [placeholder]=\"\n newsletterInfo.inputPlaceholder\n \"\n formControlName=\"email\"\n />\n <span class=\"contact__newsletter--icon\">\n <i class=\"icon-63\"></i>\n </span>\n </div>\n <label class=\"form__checkbox\">\n <input\n type=\"checkbox\"\n class=\"checkbox\"\n formControlName=\"check\"\n />\n <span class=\"box\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"9\"\n height=\"7\"\n >\n <use href=\"#checkbox-tick\"></use>\n </svg>\n </span>\n <span\n [innerHTML]=\"newsletterInfo.conditionsLink\"\n ></span>\n </label>\n </div>\n @if (newsletterInfo.button) {\n <div class=\"btn__group\">\n <a\n class=\"btn__link\"\n (click)=\"send()\"\n [ngClass]=\"{\n 'pointer-none': form.invalid,\n }\"\n [attr.aria-label]=\"\n newsletterInfo.button.label\n \"\n >\n {{ newsletterInfo.button.label }}\n </a>\n </div>\n }\n </form>\n }\n </div>\n }\n </div>\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: "pipe", type: PuroContactLinkPipe, name: "contactLink" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: PuroDynamicHeadingComponent, selector: "lib-puro-dynamic-heading", inputs: ["tag", "wrapper", "cssClass", "content", "color"] }, { 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: "directive", type: PuroResizeZoomDirective, selector: "[resizeZoom]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
6601
6603
  }
6602
6604
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PuroFooterInfoComponent, decorators: [{
6603
6605
  type: Component,
@@ -6611,7 +6613,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
6611
6613
  NgOptimizedImage,
6612
6614
  AutoImageZoomWrapperDirective,
6613
6615
  PuroResizeZoomDirective,
6614
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<section class=\"contact\" resizeZoom>\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"contact__title\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n <div class=\"contact__graphic\">\n @if (img) {\n <img\n [ngSrc]=\"img.src\"\n class=\"contact__graphic--img\"\n width=\"1763\"\n height=\"434\"\n [alt]=\"img.alt\"\n decoding=\"async\"\n />\n }\n <span class=\"contact__purobeach\">\n @if (logoImage) {\n <img\n aria-hidden=\"true\"\n focusable=\"false\"\n class=\"contact__purobeach--logo\"\n width=\"180\"\n height=\"20\"\n loading=\"lazy\"\n [ngSrc]=\"logoImage.src\"\n [alt]=\"logoImage.alt\"\n decoding=\"async\"\n data-no-zoom\n />\n }\n </span>\n </div>\n <div class=\"contact__container\">\n @if (socialMedia) {\n <div class=\"contact__followUs\">\n <span class=\"contact__purobeach\">\n @if (logo) {\n <img\n aria-hidden=\"true\"\n focusable=\"false\"\n class=\"contact__purobeach--logo\"\n width=\"180\"\n height=\"20\"\n loading=\"lazy\"\n [ngSrc]=\"logo.src\"\n [alt]=\"logo.alt\"\n decoding=\"async\"\n data-no-zoom\n />\n }\n </span>\n <ul class=\"contact__followUs--ItemList\">\n @for (item of socialMedia.items || []; track $index) {\n @if (item) {\n <li class=\"contact__followUs--ItemLink\">\n <a\n [href]=\"item.url\"\n [attr.aria-label]=\"item.icon\"\n ><i class=\"{{ item.icon }}\"></i\n ></a>\n </li>\n }\n }\n </ul>\n </div>\n }\n @if (addressInfo) {\n <div class=\"contact__address\">\n @if (addressInfo.title) {\n <h3 class=\"contact__heading\">{{ addressInfo.title }}</h3>\n }\n <div class=\"contact__text\">\n @if (addressInfo.text) {\n <p [innerHTML]=\"addressInfo.text\"></p>\n }\n @if (addressInfo.button) {\n <div class=\"btn__group\">\n <a\n [href]=\"addressInfo.button.url\"\n class=\"btn__link\"\n [attr.aria-label]=\"addressInfo.button.label\"\n >{{ addressInfo.button.label }}</a\n >\n </div>\n }\n </div>\n </div>\n }\n @if (contactInfo) {\n <div class=\"contact__contactLinks\">\n @if (contactInfo.title) {\n <h3 class=\"contact__heading\">{{ contactInfo.title }}</h3>\n }\n <div class=\"contact__text\">\n <ul class=\"contact__links\">\n @for (link of contactInfo.links || []; track $index) {\n @if (link) {\n <li>\n <a\n [href]=\"link.url | contactLink\"\n [attr.aria-label]=\"link.label\"\n >{{ link.label }}</a\n >\n </li>\n }\n }\n </ul>\n @if (contactInfo.button) {\n <div class=\"btn__group\">\n <a\n [linkType]=\"contactInfo.button.linkType\"\n [href]=\"contactInfo.button.url\"\n class=\"btn__link\"\n [attr.aria-label]=\"contactInfo.button.label\"\n >{{ contactInfo.button.label }}</a\n >\n </div>\n }\n </div>\n </div>\n }\n @if (newsletterInfo) {\n <div class=\"contact__newsletter\">\n @if (newsletterInfo.title) {\n <h3 class=\"contact__heading\">{{ newsletterInfo.title }}</h3>\n }\n\n @if (form) {\n <form class=\"contact__text\" [formGroup]=\"form\">\n <div class=\"contact__newsletterBox\">\n <div class=\"form__group\">\n <input\n type=\"text\"\n class=\"form__control\"\n [placeholder]=\"\n newsletterInfo.inputPlaceholder\n \"\n formControlName=\"email\"\n />\n <span class=\"contact__newsletter--icon\">\n <i class=\"icon-63\"></i>\n </span>\n </div>\n <label class=\"form__checkbox\">\n <input\n type=\"checkbox\"\n class=\"checkbox\"\n formControlName=\"check\"\n />\n <span class=\"box\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"9\"\n height=\"7\"\n >\n <use href=\"#checkbox-tick\"></use>\n </svg>\n </span>\n <span\n [innerHTML]=\"newsletterInfo.conditionsLink\"\n ></span>\n </label>\n </div>\n @if (newsletterInfo.button) {\n <div class=\"btn__group\">\n <a\n class=\"btn__link\"\n (click)=\"send()\"\n [ngClass]=\"{\n 'pointer-none': form.invalid,\n }\"\n [attr.aria-label]=\"\n newsletterInfo.button.label\n \"\n >\n {{ newsletterInfo.button.label }}\n </a>\n </div>\n }\n </form>\n }\n </div>\n }\n </div>\n</section>\n" }]
6616
+ ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<section class=\"contact\" resizeZoom>\n @if (title) {\n <lib-puro-dynamic-heading\n [tag]=\"tags?.title || 'span'\"\n cssClass=\"contact__title\"\n [color]=\"textColors?.title\"\n [content]=\"title\"\n ></lib-puro-dynamic-heading>\n }\n <div class=\"contact__graphic\">\n @if (img) {\n <img\n [ngSrc]=\"img.src\"\n class=\"contact__graphic--img\"\n width=\"1763\"\n height=\"434\"\n [alt]=\"img.alt\"\n decoding=\"async\"\n />\n }\n <span class=\"contact__purobeach\">\n @if (logoImage) {\n <img\n aria-hidden=\"true\"\n focusable=\"false\"\n class=\"contact__purobeach--logo\"\n width=\"180\"\n height=\"20\"\n loading=\"lazy\"\n [ngSrc]=\"logoImage.src\"\n [alt]=\"logoImage.alt\"\n decoding=\"async\"\n data-no-zoom\n />\n }\n </span>\n </div>\n <div class=\"contact__container\">\n @if (socialMedia) {\n <div class=\"contact__followUs\">\n <span class=\"contact__purobeach\">\n @if (logo) {\n <img\n aria-hidden=\"true\"\n focusable=\"false\"\n class=\"contact__purobeach--logo\"\n width=\"180\"\n height=\"20\"\n loading=\"lazy\"\n [ngSrc]=\"logo.src\"\n [alt]=\"logo.alt\"\n decoding=\"async\"\n data-no-zoom\n />\n }\n </span>\n <ul class=\"contact__followUs--ItemList\">\n @for (item of socialMedia.items || []; track $index) {\n @if (item) {\n <li class=\"contact__followUs--ItemLink\">\n <a\n [href]=\"item.url\"\n linkType=\"external\"\n [attr.aria-label]=\"item.title\"\n ><i class=\"{{ item.icon }}\"></i\n ></a>\n </li>\n }\n }\n </ul>\n </div>\n }\n @if (addressInfo) {\n <div class=\"contact__address\">\n @if (addressInfo.title) {\n <h3 class=\"contact__heading\">{{ addressInfo.title }}</h3>\n }\n <div class=\"contact__text\">\n @if (addressInfo.text) {\n <p [innerHTML]=\"addressInfo.text\"></p>\n }\n @if (addressInfo.button) {\n <div class=\"btn__group\">\n <a\n [href]=\"addressInfo.button.url\"\n class=\"btn__link\"\n [attr.aria-label]=\"addressInfo.button.label\"\n >{{ addressInfo.button.label }}</a\n >\n </div>\n }\n </div>\n </div>\n }\n @if (contactInfo) {\n <div class=\"contact__contactLinks\">\n @if (contactInfo.title) {\n <h3 class=\"contact__heading\">{{ contactInfo.title }}</h3>\n }\n <div class=\"contact__text\">\n <ul class=\"contact__links\">\n @for (link of contactInfo.links || []; track $index) {\n @if (link) {\n <li>\n <a\n [href]=\"link.url | contactLink\"\n [attr.aria-label]=\"link.label\"\n >{{ link.label }}</a\n >\n </li>\n }\n }\n </ul>\n @if (contactInfo.button) {\n <div class=\"btn__group\">\n <a\n [linkType]=\"contactInfo.button.linkType\"\n [href]=\"contactInfo.button.url\"\n class=\"btn__link\"\n [attr.aria-label]=\"contactInfo.button.label\"\n >{{ contactInfo.button.label }}</a\n >\n </div>\n }\n </div>\n </div>\n }\n @if (newsletterInfo) {\n <div class=\"contact__newsletter\">\n @if (newsletterInfo.title) {\n <h3 class=\"contact__heading\">{{ newsletterInfo.title }}</h3>\n }\n\n @if (form) {\n <form class=\"contact__text\" [formGroup]=\"form\">\n <div class=\"contact__newsletterBox\">\n <div class=\"form__group\">\n <input\n type=\"text\"\n class=\"form__control\"\n [placeholder]=\"\n newsletterInfo.inputPlaceholder\n \"\n formControlName=\"email\"\n />\n <span class=\"contact__newsletter--icon\">\n <i class=\"icon-63\"></i>\n </span>\n </div>\n <label class=\"form__checkbox\">\n <input\n type=\"checkbox\"\n class=\"checkbox\"\n formControlName=\"check\"\n />\n <span class=\"box\">\n <svg\n aria-hidden=\"true\"\n focusable=\"false\"\n width=\"9\"\n height=\"7\"\n >\n <use href=\"#checkbox-tick\"></use>\n </svg>\n </span>\n <span\n [innerHTML]=\"newsletterInfo.conditionsLink\"\n ></span>\n </label>\n </div>\n @if (newsletterInfo.button) {\n <div class=\"btn__group\">\n <a\n class=\"btn__link\"\n (click)=\"send()\"\n [ngClass]=\"{\n 'pointer-none': form.invalid,\n }\"\n [attr.aria-label]=\"\n newsletterInfo.button.label\n \"\n >\n {{ newsletterInfo.button.label }}\n </a>\n </div>\n }\n </form>\n }\n </div>\n }\n </div>\n</section>\n" }]
6615
6617
  }], propDecorators: { socialMedia: [{
6616
6618
  type: Input
6617
6619
  }], addressInfo: [{