@eui/ecl 18.2.1 → 18.2.2-snapshot-1729246724590

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (186) hide show
  1. package/docs/components/EclAccordionComponent.html +1 -1
  2. package/docs/components/EclAccordionItemComponent.html +1 -1
  3. package/docs/components/EclAppComponent.html +1 -1
  4. package/docs/components/EclBannerComponent.html +1 -1
  5. package/docs/components/EclBlockquoteComponent.html +1 -1
  6. package/docs/components/EclBreadcrumbComponent.html +1 -1
  7. package/docs/components/EclBreadcrumbSegmentComponent.html +1 -1
  8. package/docs/components/EclButtonComponent.html +1 -1
  9. package/docs/components/EclCardBodyComponent.html +1 -1
  10. package/docs/components/EclCardComponent.html +1 -1
  11. package/docs/components/EclCarouselComponent.html +2 -66
  12. package/docs/components/EclCarouselItemComponent.html +1 -1
  13. package/docs/components/EclCategoryFilterComponent.html +1 -1
  14. package/docs/components/EclCategoryFilterItemComponent.html +1 -1
  15. package/docs/components/EclCategoryFilterListComponent.html +1 -1
  16. package/docs/components/EclCheckboxHelpComponent.html +1 -1
  17. package/docs/components/EclCheckboxLabelComponent.html +1 -1
  18. package/docs/components/EclContentBlockComponent.html +1 -1
  19. package/docs/components/EclContentItemComponent.html +1 -1
  20. package/docs/components/EclDateBlockComponent.html +1 -1
  21. package/docs/components/EclDescriptionListDefinitionComponent.html +1 -1
  22. package/docs/components/EclExpandableComponent.html +1 -1
  23. package/docs/components/EclFactFiguresComponent.html +1 -1
  24. package/docs/components/EclFactFiguresDescriptionComponent.html +1 -1
  25. package/docs/components/EclFactFiguresItemComponent.html +1 -1
  26. package/docs/components/EclFactFiguresTitleComponent.html +1 -1
  27. package/docs/components/EclFactFiguresValueComponent.html +1 -1
  28. package/docs/components/EclFactFiguresViewAllComponent.html +1 -1
  29. package/docs/components/EclFeaturedComponent.html +1 -1
  30. package/docs/components/EclFeaturedItemComponent.html +1 -1
  31. package/docs/components/EclFeaturedItemDescriptionComponent.html +1 -1
  32. package/docs/components/EclFeaturedItemFooterComponent.html +1 -1
  33. package/docs/components/EclFileComponent.html +2 -2
  34. package/docs/components/EclFileItemComponent.html +2 -2
  35. package/docs/components/EclFileItemsComponent.html +1 -1
  36. package/docs/components/EclFileTaxonomyComponent.html +1 -1
  37. package/docs/components/EclFormGroupComponent.html +1 -1
  38. package/docs/components/EclFormLabelComponent.html +1 -1
  39. package/docs/components/EclGalleryComponent.html +28 -4
  40. package/docs/components/EclGalleryFooterComponent.html +1 -1
  41. package/docs/components/EclGalleryItemComponent.html +2 -2
  42. package/docs/components/EclIconComponent.html +1 -1
  43. package/docs/components/EclInpageNavigationComponent.html +37 -2
  44. package/docs/components/EclInpageNavigationItemComponent.html +1 -1
  45. package/docs/components/EclListIllustrationComponent.html +1 -1
  46. package/docs/components/EclListIllustrationItemComponent.html +1 -1
  47. package/docs/components/EclLoadingIndicatorComponent.html +1 -1
  48. package/docs/components/EclMediaContainerComponent.html +322 -2
  49. package/docs/components/EclMegaMenuComponent.html +1 -1
  50. package/docs/components/EclMegaMenuFeaturedComponent.html +1 -1
  51. package/docs/components/EclMegaMenuInfoComponent.html +1 -1
  52. package/docs/components/EclMegaMenuItemComponent.html +1 -1
  53. package/docs/components/EclMegaMenuSubitemComponent.html +1 -1
  54. package/docs/components/EclMenuComponent.html +1 -1
  55. package/docs/components/EclMenuItemComponent.html +1 -1
  56. package/docs/components/EclMenuMegaComponent.html +1 -1
  57. package/docs/components/EclMenuMegaItemComponent.html +1 -1
  58. package/docs/components/EclModalBodyComponent.html +1 -1
  59. package/docs/components/EclModalComponent.html +1 -1
  60. package/docs/components/EclModalFooterComponent.html +1 -1
  61. package/docs/components/EclModalHeaderComponent.html +1 -1
  62. package/docs/components/EclMultiselectComponent.html +1 -1
  63. package/docs/components/EclMultiselectDropdownComponent.html +1 -1
  64. package/docs/components/EclMultiselectInputComponent.html +1 -1
  65. package/docs/components/EclMultiselectOptgroupComponent.html +1 -1
  66. package/docs/components/EclMultiselectOptionComponent.html +1 -1
  67. package/docs/components/EclNavigationListComponent.html +1 -1
  68. package/docs/components/EclNavigationListImageComponent.html +1 -1
  69. package/docs/components/EclNavigationListItemComponent.html +1 -1
  70. package/docs/components/EclNewsTickerComponent.html +1 -1
  71. package/docs/components/EclNewsTickerItemComponent.html +1 -1
  72. package/docs/components/EclNotificationComponent.html +1 -1
  73. package/docs/components/EclPageHeaderComponent.html +1 -1
  74. package/docs/components/EclPaginationComponent.html +1 -1
  75. package/docs/components/EclPaginationItemComponent.html +1 -1
  76. package/docs/components/EclPopoverComponent.html +1 -1
  77. package/docs/components/EclRadioHelpComponent.html +1 -1
  78. package/docs/components/EclRadioLabelComponent.html +1 -1
  79. package/docs/components/EclRangeBubbleComponent.html +1 -1
  80. package/docs/components/EclRangeValueComponent.html +1 -1
  81. package/docs/components/EclRatingFieldComponent.html +1 -1
  82. package/docs/components/EclSearchFormComponent.html +1 -1
  83. package/docs/components/EclSelectContainerComponent.html +1 -1
  84. package/docs/components/EclSiteFooterComponent.html +1 -1
  85. package/docs/components/EclSiteFooterFixedContentECComponent.html +1 -1
  86. package/docs/components/EclSiteFooterFixedContentEUComponent.html +1 -1
  87. package/docs/components/EclSiteHeaderActionComponent.html +1 -1
  88. package/docs/components/EclSiteHeaderBannerTopComponent.html +1 -1
  89. package/docs/components/EclSiteHeaderComponent.html +1 -1
  90. package/docs/components/EclSiteHeaderEnvironmentComponent.html +1 -1
  91. package/docs/components/EclSiteHeaderLanguageComponent.html +1 -1
  92. package/docs/components/EclSiteHeaderLanguagePopoverComponent.html +1 -1
  93. package/docs/components/EclSiteHeaderLoginComponent.html +1 -1
  94. package/docs/components/EclSiteHeaderNotificationComponent.html +1 -1
  95. package/docs/components/EclSiteHeaderSearchComponent.html +1 -1
  96. package/docs/components/EclSocialMediaFollowComponent.html +1 -1
  97. package/docs/components/EclSocialMediaFollowItemComponent.html +1 -1
  98. package/docs/components/EclSocialMediaShareComponent.html +1 -1
  99. package/docs/components/EclSocialMediaShareItemComponent.html +1 -1
  100. package/docs/components/EclSplashPageComponent.html +1 -1
  101. package/docs/components/EclSplashPageLanguageCategoryComponent.html +1 -1
  102. package/docs/components/EclSplashPageLanguageContainerComponent.html +1 -1
  103. package/docs/components/EclSplashPageLanguageLinkComponent.html +1 -1
  104. package/docs/components/EclStickyContainerComponent.html +1 -1
  105. package/docs/components/EclTabComponent.html +1 -1
  106. package/docs/components/EclTabLabelComponent.html +1 -1
  107. package/docs/components/EclTabMoreComponent.html +1 -1
  108. package/docs/components/EclTableSortButtonComponent.html +1 -1
  109. package/docs/components/EclTabsComponent.html +1 -1
  110. package/docs/components/EclTagComponent.html +1 -1
  111. package/docs/components/EclTimelineComponent.html +1 -1
  112. package/docs/components/EclTimelineItemComponent.html +1 -1
  113. package/docs/components/EclTimelineItemTogglerComponent.html +1 -1
  114. package/docs/dependencies.html +2 -2
  115. package/docs/directives/EclCardPictureDirective.html +24 -0
  116. package/docs/directives/EclContentItemPictureDirective.html +25 -1
  117. package/docs/directives/EclFilePreviewDirective.html +559 -0
  118. package/docs/directives/EclGalleryMediaDirective.html +24 -0
  119. package/docs/directives/EclGalleryThumbnailDirective.html +24 -0
  120. package/docs/directives/EclMediaContainerItemDirective.html +51 -0
  121. package/docs/directives/EclSeparatorDirective.html +496 -0
  122. package/docs/index.html +2 -2
  123. package/docs/js/menu-wc.js +38 -18
  124. package/docs/js/menu-wc_es5.js +1 -1
  125. package/docs/js/search/search_index.js +2 -2
  126. package/docs/miscellaneous/variables.html +2 -0
  127. package/docs/modules/EclAllModule.html +6 -0
  128. package/docs/modules/EclSeparatorModule.html +232 -0
  129. package/docs/modules.html +12 -0
  130. package/esm2022/lib/components/ecl-card/ecl-card-picture.directive.mjs +13 -3
  131. package/esm2022/lib/components/ecl-carousel/ecl-carousel.component.mjs +7 -8
  132. package/esm2022/lib/components/ecl-content-item/ecl-content-item-image.directive.mjs +10 -3
  133. package/esm2022/lib/components/ecl-file/ecl-file-download.directive.mjs +25 -1
  134. package/esm2022/lib/components/ecl-file/ecl-file-item/ecl-file-item.component.mjs +3 -3
  135. package/esm2022/lib/components/ecl-file/ecl-file.component.mjs +3 -3
  136. package/esm2022/lib/components/ecl-file/ecl-file.module.mjs +7 -4
  137. package/esm2022/lib/components/ecl-gallery/ecl-gallery-item.component.mjs +4 -4
  138. package/esm2022/lib/components/ecl-gallery/ecl-gallery-media.directive.mjs +23 -5
  139. package/esm2022/lib/components/ecl-gallery/ecl-gallery.component.mjs +7 -4
  140. package/esm2022/lib/components/ecl-inpage-navigation/ecl-inpage-navigation.component.mjs +13 -5
  141. package/esm2022/lib/components/ecl-media-container/ecl-media-container-item.directive.mjs +2 -3
  142. package/esm2022/lib/components/ecl-media-container/ecl-media-container.component.mjs +73 -10
  143. package/esm2022/lib/components/ecl-media-container/ecl-media-container.module.mjs +6 -4
  144. package/esm2022/lib/components/ecl-separator/ecl-separator.directive.mjs +21 -0
  145. package/esm2022/lib/components/ecl-separator/ecl-separator.module.mjs +18 -0
  146. package/esm2022/lib/components/ecl-separator/index.mjs +3 -0
  147. package/esm2022/lib/components/index.mjs +2 -1
  148. package/esm2022/lib/shared/ecl-all.module.mjs +6 -1
  149. package/fesm2022/eui-ecl.mjs +228 -64
  150. package/fesm2022/eui-ecl.mjs.map +1 -1
  151. package/lib/components/ecl-card/ecl-card-picture.directive.d.ts +3 -1
  152. package/lib/components/ecl-card/ecl-card-picture.directive.d.ts.map +1 -1
  153. package/lib/components/ecl-carousel/ecl-carousel.component.d.ts +0 -1
  154. package/lib/components/ecl-carousel/ecl-carousel.component.d.ts.map +1 -1
  155. package/lib/components/ecl-content-item/ecl-content-item-image.directive.d.ts +4 -2
  156. package/lib/components/ecl-content-item/ecl-content-item-image.directive.d.ts.map +1 -1
  157. package/lib/components/ecl-file/ecl-file-download.directive.d.ts +6 -0
  158. package/lib/components/ecl-file/ecl-file-download.directive.d.ts.map +1 -1
  159. package/lib/components/ecl-file/ecl-file-item/ecl-file-item.component.d.ts +1 -1
  160. package/lib/components/ecl-file/ecl-file.component.d.ts +1 -1
  161. package/lib/components/ecl-file/ecl-file.module.d.ts +1 -1
  162. package/lib/components/ecl-file/ecl-file.module.d.ts.map +1 -1
  163. package/lib/components/ecl-gallery/ecl-gallery-item.component.d.ts.map +1 -1
  164. package/lib/components/ecl-gallery/ecl-gallery-media.directive.d.ts +6 -2
  165. package/lib/components/ecl-gallery/ecl-gallery-media.directive.d.ts.map +1 -1
  166. package/lib/components/ecl-gallery/ecl-gallery.component.d.ts +4 -3
  167. package/lib/components/ecl-gallery/ecl-gallery.component.d.ts.map +1 -1
  168. package/lib/components/ecl-inpage-navigation/ecl-inpage-navigation.component.d.ts +2 -0
  169. package/lib/components/ecl-inpage-navigation/ecl-inpage-navigation.component.d.ts.map +1 -1
  170. package/lib/components/ecl-media-container/ecl-media-container-item.directive.d.ts +2 -2
  171. package/lib/components/ecl-media-container/ecl-media-container-item.directive.d.ts.map +1 -1
  172. package/lib/components/ecl-media-container/ecl-media-container.component.d.ts +18 -2
  173. package/lib/components/ecl-media-container/ecl-media-container.component.d.ts.map +1 -1
  174. package/lib/components/ecl-media-container/ecl-media-container.module.d.ts +3 -1
  175. package/lib/components/ecl-media-container/ecl-media-container.module.d.ts.map +1 -1
  176. package/lib/components/ecl-separator/ecl-separator.directive.d.ts +8 -0
  177. package/lib/components/ecl-separator/ecl-separator.directive.d.ts.map +1 -0
  178. package/lib/components/ecl-separator/ecl-separator.module.d.ts +9 -0
  179. package/lib/components/ecl-separator/ecl-separator.module.d.ts.map +1 -0
  180. package/lib/components/ecl-separator/index.d.ts +3 -0
  181. package/lib/components/ecl-separator/index.d.ts.map +1 -0
  182. package/lib/components/index.d.ts +1 -0
  183. package/lib/components/index.d.ts.map +1 -1
  184. package/lib/shared/ecl-all.module.d.ts +15 -14
  185. package/lib/shared/ecl-all.module.d.ts.map +1 -1
  186. package/package.json +2 -2
@@ -4,7 +4,7 @@ import * as i1$1 from '@angular/common';
4
4
  import { DOCUMENT, CommonModule, isPlatformBrowser, formatDate } from '@angular/common';
5
5
  import * as i1$2 from '@ngx-translate/core';
6
6
  import { TranslateModule } from '@ngx-translate/core';
7
- import { ReplaySubject, Subject, takeUntil, map, switchMap, of, distinctUntilChanged, fromEvent, debounceTime, delay, interval } from 'rxjs';
7
+ import { ReplaySubject, Subject, takeUntil, map, switchMap, of, distinctUntilChanged, fromEvent, debounceTime, delay, interval, timer, take } from 'rxjs';
8
8
  import * as i1 from '@eui/core';
9
9
  import { GLOBAL_CONFIG_TOKEN, CssUtils } from '@eui/core';
10
10
  import { takeUntil as takeUntil$1, mergeWith } from 'rxjs/operators';
@@ -6444,11 +6444,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
6444
6444
  }] });
6445
6445
 
6446
6446
  class EclCardPictureDirective extends ECLBaseDirective {
6447
+ constructor() {
6448
+ super(...arguments);
6449
+ this.hasZoom = false;
6450
+ }
6447
6451
  get cssClasses() {
6448
6452
  return [super.getCssClasses('ecl-picture ecl-card__picture')].join(' ').trim();
6449
6453
  }
6450
6454
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EclCardPictureDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
6451
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.8", type: EclCardPictureDirective, selector: "picture[eclCardPicture]", host: { properties: { "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0 }); }
6455
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "18.2.8", type: EclCardPictureDirective, selector: "picture[eclCardPicture]", inputs: { hasZoom: ["hasZoom", "hasZoom", booleanAttribute] }, host: { properties: { "class": "this.cssClasses", "class.ecl-picture--zoom": "this.hasZoom" } }, usesInheritance: true, ngImport: i0 }); }
6452
6456
  }
6453
6457
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EclCardPictureDirective, decorators: [{
6454
6458
  type: Directive,
@@ -6458,6 +6462,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
6458
6462
  }], propDecorators: { cssClasses: [{
6459
6463
  type: HostBinding,
6460
6464
  args: ['class']
6465
+ }], hasZoom: [{
6466
+ type: Input,
6467
+ args: [{ transform: booleanAttribute }]
6468
+ }, {
6469
+ type: HostBinding,
6470
+ args: ['class.ecl-picture--zoom']
6461
6471
  }] } });
6462
6472
  class EclCardImageDirective extends ECLBaseDirective {
6463
6473
  get cssClasses() {
@@ -6657,12 +6667,10 @@ class EclCarouselComponent extends ECLBaseDirective {
6657
6667
  }
6658
6668
  onPlayClick() {
6659
6669
  this.startPlaying();
6660
- this.showButton(this.pauseButton);
6661
6670
  this.focusOnButton(this.pauseButton);
6662
6671
  }
6663
6672
  onPauseClick() {
6664
6673
  this.stopPlaying();
6665
- this.showButton(this.playButton);
6666
6674
  this.focusOnButton(this.playButton);
6667
6675
  }
6668
6676
  onFirstCarouselElementPress(e) {
@@ -6705,9 +6713,6 @@ class EclCarouselComponent extends ECLBaseDirective {
6705
6713
  }
6706
6714
  return button.nativeElement.style.display === '';
6707
6715
  }
6708
- showButton(button) {
6709
- this.renderer2.setStyle(button.nativeElement, 'display', '');
6710
- }
6711
6716
  focusOnButton(button) {
6712
6717
  if (!button) {
6713
6718
  return;
@@ -7024,10 +7029,14 @@ class EclCarouselComponent extends ECLBaseDirective {
7024
7029
  const banner = slide.banner;
7025
7030
  if (banner) {
7026
7031
  const bannerImage = slide.banner.eclBannerImage;
7032
+ const bannerVideo = slide.banner.eclBannerVideo;
7027
7033
  this.renderer2.setStyle(banner.el.nativeElement, 'height', '');
7028
7034
  if (bannerImage) {
7029
7035
  this.renderer2.setStyle(bannerImage.el.nativeElement, 'aspectRatio', '');
7030
7036
  }
7037
+ if (bannerVideo) {
7038
+ this.renderer2.setStyle(bannerVideo.el.nativeElement, 'aspectRatio', '');
7039
+ }
7031
7040
  }
7032
7041
  });
7033
7042
  this.resetHiddenItems();
@@ -7039,11 +7048,11 @@ class EclCarouselComponent extends ECLBaseDirective {
7039
7048
  }
7040
7049
  }
7041
7050
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EclCarouselComponent, deps: [{ token: i1$4.BreakpointObserver }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: EclRtlService }], target: i0.ɵɵFactoryTarget.Component }); }
7042
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.8", type: EclCarouselComponent, selector: "ecl-carousel", inputs: { ariaLabel: ["aria-label", "ariaLabel"], isAutoplay: ["isAutoplay", "isAutoplay", booleanAttribute], playInterval: ["playInterval", "playInterval", numberAttribute] }, outputs: { slide: "slide" }, host: { properties: { "attr.aria-label": "this.ariaLabel", "attr.aria-roledescription": "this.ariaRoleDescription", "class": "this.cssClasses" } }, queries: [{ propertyName: "slides", predicate: i0.forwardRef(() => EclCarouselItemComponent) }], viewQueries: [{ propertyName: "carouselContainerElement", first: true, predicate: ["carouselContainer"], descendants: true }, { propertyName: "playButton", first: true, predicate: ["playButton"], descendants: true }, { propertyName: "pauseButton", first: true, predicate: ["pauseButton"], descendants: true }, { propertyName: "firstHiddenItem", first: true, predicate: ["firstHiddenItem"], descendants: true }, { propertyName: "lastHiddenItem", first: true, predicate: ["lastHiddenItem"], descendants: true }, { propertyName: "slidesContainer", first: true, predicate: ["slidesContainer"], descendants: true }, { propertyName: "navigationButtons", predicate: ["currButton"], descendants: true }], usesInheritance: true, ngImport: i0, template: "@if(hasControls()){\n<div class=\"ecl-carousel__controls\">\n <div class=\"ecl-container\">\n <div class=\"ecl-carousel__autoplay\">\n <button #playButton class=\"ecl-button ecl-button--tertiary ecl-carousel__play ecl-button--icon-only\"\n type=\"button\" [style.display]=\"isPlaying ? 'none' : 'flex'\" (keydown)=\"onPlayKeyboardPress($event)\"\n (click)=\"onPlayClick()\">\n <span class=\"ecl-button__container\">\n <span class=\"ecl-button__label\">\n {{ 'ecl.carousel.PLAY' | translate }}\n </span>\n <ecl-icon icon=\"play-outline\" size=\"m\" class=\"ecl-button__icon ecl-carousel__icon-default\">\n </ecl-icon>\n </span>\n </button>\n\n <button #pauseButton class=\"ecl-button ecl-button--tertiary ecl-carousel__pause ecl-button--icon-only\"\n type=\"button\" [style.display]=\"isPlaying ? 'flex' : 'none'\" (keydown)=\"onPlayKeyboardPress($event)\"\n (click)=\"onPauseClick()\">\n <span class=\"ecl-button__container\">\n <span class=\"ecl-button__label\">\n {{ 'ecl.carousel.PAUSE' | translate }}\n </span>\n <ecl-icon icon=\"pause\" size=\"m\" class=\"ecl-button__icon ecl-carousel__icon-default\"> </ecl-icon>\n </span>\n\n </button>\n </div>\n\n <div class=\"ecl-carousel__navigation\" role=\"tablist\" >\n @for (slide of slides; let i = $index; track slide) {\n <button #currButton [attr.aria-current]=\"i === getCurrentSlideIndex()\" [attr.tabindex]=\"i === getCurrentSlideIndex() ? null: -1\"\n class=\"ecl-button ecl-button--tertiary ecl-carousel__navigation-item\" role=\"tab\" (click)=\"onSlideControlClick(slide)\"\n (keydown)=\"onNavBtnKeyboardPress($event, i)\">\n {{ i + 1 }}\n </button>\n }\n </div>\n </div>\n</div>\n}\n<div #carouselContainer class=\"ecl-carousel__container\" [class.ecl-carousel-container--padded]=\"isPadded()\">\n <div #slidesContainer (keyup)=\"onFirstCarouselElementPress($event)\" class=\"ecl-carousel__slides\"\n [style.width.px]=\"getCarouselSlidesWidth()\" [style.left.px]=\"!isRtl ? getCarouselSlidesOffsetLeft() : null\"\n [style.right.px]=\"isRtl ? getCarouselSlidesOffsetRight() : null\"\n [style.transition-duration.s]=\"transitionDuration\" (mouseover)=\"onSlideHover()\" (mouseout)=\"onSlideHoverout()\">\n\n @if(hasControls()){\n <ecl-carousel-item #firstHiddenItem [style.width.%]=\"slideWidth\"></ecl-carousel-item>\n }\n <ng-content></ng-content>\n\n @if(hasControls()){\n <ecl-carousel-item #lastHiddenItem [style.width.%]=\"slideWidth\"></ecl-carousel-item>\n }\n </div>\n</div>", styles: [".ecl-carousel__slides{transition-duration:.4s}\n"], dependencies: [{ kind: "component", type: EclIconComponent, selector: "ecl-icon", inputs: ["iconSet", "icon", "size", "color", "transform", "ariaLabelledby", "role", "title", "ariaHidden", "focusable", "isFlipHorizontal"] }, { kind: "component", type: EclCarouselItemComponent, selector: "ecl-carousel-item", inputs: ["id", "isCurrent"], outputs: ["slideClick"] }, { kind: "pipe", type: i1$2.TranslatePipe, name: "translate" }] }); }
7051
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.8", type: EclCarouselComponent, selector: "ecl-carousel", inputs: { ariaLabel: ["aria-label", "ariaLabel"], isAutoplay: ["isAutoplay", "isAutoplay", booleanAttribute], playInterval: ["playInterval", "playInterval", numberAttribute] }, outputs: { slide: "slide" }, host: { properties: { "attr.aria-label": "this.ariaLabel", "attr.aria-roledescription": "this.ariaRoleDescription", "class": "this.cssClasses" } }, queries: [{ propertyName: "slides", predicate: i0.forwardRef(() => EclCarouselItemComponent) }], viewQueries: [{ propertyName: "carouselContainerElement", first: true, predicate: ["carouselContainer"], descendants: true }, { propertyName: "playButton", first: true, predicate: ["playButton"], descendants: true }, { propertyName: "pauseButton", first: true, predicate: ["pauseButton"], descendants: true }, { propertyName: "firstHiddenItem", first: true, predicate: ["firstHiddenItem"], descendants: true }, { propertyName: "lastHiddenItem", first: true, predicate: ["lastHiddenItem"], descendants: true }, { propertyName: "slidesContainer", first: true, predicate: ["slidesContainer"], descendants: true }, { propertyName: "navigationButtons", predicate: ["currButton"], descendants: true }], usesInheritance: true, ngImport: i0, template: "@if(hasControls()){\n<div class=\"ecl-carousel__controls\">\n <div class=\"ecl-container\">\n <div class=\"ecl-carousel__autoplay\">\n <button #playButton class=\"ecl-button ecl-button--tertiary ecl-carousel__play ecl-button--icon-only\"\n type=\"button\" [style.display]=\"isPlaying ? 'none' : 'flex'\" (keydown)=\"onPlayKeyboardPress($event)\"\n (click)=\"onPlayClick()\">\n <span class=\"ecl-button__container\">\n <span class=\"ecl-button__label\">\n {{ 'ecl.carousel.PLAY' | translate }}\n </span>\n <ecl-icon icon=\"play-outline\" size=\"m\" class=\"ecl-button__icon ecl-carousel__icon-default\">\n </ecl-icon>\n </span>\n </button>\n\n <button #pauseButton class=\"ecl-button ecl-button--tertiary ecl-carousel__pause ecl-button--icon-only\"\n type=\"button\" [style.display]=\"isPlaying ? 'flex' : 'none'\" (keydown)=\"onPlayKeyboardPress($event)\"\n (click)=\"onPauseClick()\">\n <span class=\"ecl-button__container\">\n <span class=\"ecl-button__label\">\n {{ 'ecl.carousel.PAUSE' | translate }}\n </span>\n <ecl-icon icon=\"pause-outline\" size=\"m\" class=\"ecl-button__icon ecl-carousel__icon-default\"> </ecl-icon>\n </span>\n\n </button>\n </div>\n\n <div class=\"ecl-carousel__navigation\" role=\"tablist\" >\n @for (slide of slides; let i = $index; track slide) {\n <button #currButton [attr.aria-current]=\"i === getCurrentSlideIndex()\" [attr.tabindex]=\"i === getCurrentSlideIndex() ? null: -1\"\n class=\"ecl-button ecl-button--tertiary ecl-carousel__navigation-item\" role=\"tab\" (click)=\"onSlideControlClick(slide)\"\n (keydown)=\"onNavBtnKeyboardPress($event, i)\">\n {{ i + 1 }}\n </button>\n }\n </div>\n </div>\n</div>\n}\n<div #carouselContainer class=\"ecl-carousel__container\" [class.ecl-carousel-container--padded]=\"isPadded()\">\n <div #slidesContainer (keyup)=\"onFirstCarouselElementPress($event)\" class=\"ecl-carousel__slides\"\n [style.width.px]=\"getCarouselSlidesWidth()\" [style.left.px]=\"!isRtl ? getCarouselSlidesOffsetLeft() : null\"\n [style.right.px]=\"isRtl ? getCarouselSlidesOffsetRight() : null\"\n [style.transition-duration.s]=\"transitionDuration\" (mouseover)=\"onSlideHover()\" (mouseout)=\"onSlideHoverout()\">\n\n @if(hasControls()){\n <ecl-carousel-item #firstHiddenItem [style.width.%]=\"slideWidth\"></ecl-carousel-item>\n }\n <ng-content></ng-content>\n\n @if(hasControls()){\n <ecl-carousel-item #lastHiddenItem [style.width.%]=\"slideWidth\"></ecl-carousel-item>\n }\n </div>\n</div>", styles: [".ecl-carousel__slides{transition-duration:.4s}\n"], dependencies: [{ kind: "component", type: EclIconComponent, selector: "ecl-icon", inputs: ["iconSet", "icon", "size", "color", "transform", "ariaLabelledby", "role", "title", "ariaHidden", "focusable", "isFlipHorizontal"] }, { kind: "component", type: EclCarouselItemComponent, selector: "ecl-carousel-item", inputs: ["id", "isCurrent"], outputs: ["slideClick"] }, { kind: "pipe", type: i1$2.TranslatePipe, name: "translate" }] }); }
7043
7052
  }
7044
7053
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EclCarouselComponent, decorators: [{
7045
7054
  type: Component,
7046
- args: [{ selector: 'ecl-carousel', template: "@if(hasControls()){\n<div class=\"ecl-carousel__controls\">\n <div class=\"ecl-container\">\n <div class=\"ecl-carousel__autoplay\">\n <button #playButton class=\"ecl-button ecl-button--tertiary ecl-carousel__play ecl-button--icon-only\"\n type=\"button\" [style.display]=\"isPlaying ? 'none' : 'flex'\" (keydown)=\"onPlayKeyboardPress($event)\"\n (click)=\"onPlayClick()\">\n <span class=\"ecl-button__container\">\n <span class=\"ecl-button__label\">\n {{ 'ecl.carousel.PLAY' | translate }}\n </span>\n <ecl-icon icon=\"play-outline\" size=\"m\" class=\"ecl-button__icon ecl-carousel__icon-default\">\n </ecl-icon>\n </span>\n </button>\n\n <button #pauseButton class=\"ecl-button ecl-button--tertiary ecl-carousel__pause ecl-button--icon-only\"\n type=\"button\" [style.display]=\"isPlaying ? 'flex' : 'none'\" (keydown)=\"onPlayKeyboardPress($event)\"\n (click)=\"onPauseClick()\">\n <span class=\"ecl-button__container\">\n <span class=\"ecl-button__label\">\n {{ 'ecl.carousel.PAUSE' | translate }}\n </span>\n <ecl-icon icon=\"pause\" size=\"m\" class=\"ecl-button__icon ecl-carousel__icon-default\"> </ecl-icon>\n </span>\n\n </button>\n </div>\n\n <div class=\"ecl-carousel__navigation\" role=\"tablist\" >\n @for (slide of slides; let i = $index; track slide) {\n <button #currButton [attr.aria-current]=\"i === getCurrentSlideIndex()\" [attr.tabindex]=\"i === getCurrentSlideIndex() ? null: -1\"\n class=\"ecl-button ecl-button--tertiary ecl-carousel__navigation-item\" role=\"tab\" (click)=\"onSlideControlClick(slide)\"\n (keydown)=\"onNavBtnKeyboardPress($event, i)\">\n {{ i + 1 }}\n </button>\n }\n </div>\n </div>\n</div>\n}\n<div #carouselContainer class=\"ecl-carousel__container\" [class.ecl-carousel-container--padded]=\"isPadded()\">\n <div #slidesContainer (keyup)=\"onFirstCarouselElementPress($event)\" class=\"ecl-carousel__slides\"\n [style.width.px]=\"getCarouselSlidesWidth()\" [style.left.px]=\"!isRtl ? getCarouselSlidesOffsetLeft() : null\"\n [style.right.px]=\"isRtl ? getCarouselSlidesOffsetRight() : null\"\n [style.transition-duration.s]=\"transitionDuration\" (mouseover)=\"onSlideHover()\" (mouseout)=\"onSlideHoverout()\">\n\n @if(hasControls()){\n <ecl-carousel-item #firstHiddenItem [style.width.%]=\"slideWidth\"></ecl-carousel-item>\n }\n <ng-content></ng-content>\n\n @if(hasControls()){\n <ecl-carousel-item #lastHiddenItem [style.width.%]=\"slideWidth\"></ecl-carousel-item>\n }\n </div>\n</div>", styles: [".ecl-carousel__slides{transition-duration:.4s}\n"] }]
7055
+ args: [{ selector: 'ecl-carousel', template: "@if(hasControls()){\n<div class=\"ecl-carousel__controls\">\n <div class=\"ecl-container\">\n <div class=\"ecl-carousel__autoplay\">\n <button #playButton class=\"ecl-button ecl-button--tertiary ecl-carousel__play ecl-button--icon-only\"\n type=\"button\" [style.display]=\"isPlaying ? 'none' : 'flex'\" (keydown)=\"onPlayKeyboardPress($event)\"\n (click)=\"onPlayClick()\">\n <span class=\"ecl-button__container\">\n <span class=\"ecl-button__label\">\n {{ 'ecl.carousel.PLAY' | translate }}\n </span>\n <ecl-icon icon=\"play-outline\" size=\"m\" class=\"ecl-button__icon ecl-carousel__icon-default\">\n </ecl-icon>\n </span>\n </button>\n\n <button #pauseButton class=\"ecl-button ecl-button--tertiary ecl-carousel__pause ecl-button--icon-only\"\n type=\"button\" [style.display]=\"isPlaying ? 'flex' : 'none'\" (keydown)=\"onPlayKeyboardPress($event)\"\n (click)=\"onPauseClick()\">\n <span class=\"ecl-button__container\">\n <span class=\"ecl-button__label\">\n {{ 'ecl.carousel.PAUSE' | translate }}\n </span>\n <ecl-icon icon=\"pause-outline\" size=\"m\" class=\"ecl-button__icon ecl-carousel__icon-default\"> </ecl-icon>\n </span>\n\n </button>\n </div>\n\n <div class=\"ecl-carousel__navigation\" role=\"tablist\" >\n @for (slide of slides; let i = $index; track slide) {\n <button #currButton [attr.aria-current]=\"i === getCurrentSlideIndex()\" [attr.tabindex]=\"i === getCurrentSlideIndex() ? null: -1\"\n class=\"ecl-button ecl-button--tertiary ecl-carousel__navigation-item\" role=\"tab\" (click)=\"onSlideControlClick(slide)\"\n (keydown)=\"onNavBtnKeyboardPress($event, i)\">\n {{ i + 1 }}\n </button>\n }\n </div>\n </div>\n</div>\n}\n<div #carouselContainer class=\"ecl-carousel__container\" [class.ecl-carousel-container--padded]=\"isPadded()\">\n <div #slidesContainer (keyup)=\"onFirstCarouselElementPress($event)\" class=\"ecl-carousel__slides\"\n [style.width.px]=\"getCarouselSlidesWidth()\" [style.left.px]=\"!isRtl ? getCarouselSlidesOffsetLeft() : null\"\n [style.right.px]=\"isRtl ? getCarouselSlidesOffsetRight() : null\"\n [style.transition-duration.s]=\"transitionDuration\" (mouseover)=\"onSlideHover()\" (mouseout)=\"onSlideHoverout()\">\n\n @if(hasControls()){\n <ecl-carousel-item #firstHiddenItem [style.width.%]=\"slideWidth\"></ecl-carousel-item>\n }\n <ng-content></ng-content>\n\n @if(hasControls()){\n <ecl-carousel-item #lastHiddenItem [style.width.%]=\"slideWidth\"></ecl-carousel-item>\n }\n </div>\n</div>", styles: [".ecl-carousel__slides{transition-duration:.4s}\n"] }]
7047
7056
  }], ctorParameters: () => [{ type: i1$4.BreakpointObserver }, { type: i0.ChangeDetectorRef }, { type: i0.Renderer2 }, { type: EclRtlService }], propDecorators: { ariaLabel: [{
7048
7057
  type: HostBinding,
7049
7058
  args: ['attr.aria-label']
@@ -7571,6 +7580,7 @@ class EclContentItemPictureDirective extends ECLBaseDirective {
7571
7580
  super(...arguments);
7572
7581
  this.size = 'large';
7573
7582
  this.position = 'left';
7583
+ this.hasZoom = false;
7574
7584
  }
7575
7585
  get cssClasses() {
7576
7586
  return [
@@ -7582,7 +7592,7 @@ class EclContentItemPictureDirective extends ECLBaseDirective {
7582
7592
  .trim();
7583
7593
  }
7584
7594
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EclContentItemPictureDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
7585
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.8", type: EclContentItemPictureDirective, selector: "[eclContentItemPicture]", inputs: { size: "size", position: "position" }, host: { properties: { "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0 }); }
7595
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "18.2.8", type: EclContentItemPictureDirective, selector: "[eclContentItemPicture]", inputs: { size: "size", position: "position", hasZoom: ["hasZoom", "hasZoom", booleanAttribute] }, host: { properties: { "class.ecl-picture--zoom": "this.hasZoom", "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0 }); }
7586
7596
  }
7587
7597
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EclContentItemPictureDirective, decorators: [{
7588
7598
  type: Directive,
@@ -7593,6 +7603,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
7593
7603
  type: Input
7594
7604
  }], position: [{
7595
7605
  type: Input
7606
+ }], hasZoom: [{
7607
+ type: Input,
7608
+ args: [{ transform: booleanAttribute }]
7609
+ }, {
7610
+ type: HostBinding,
7611
+ args: ['class.ecl-picture--zoom']
7596
7612
  }], cssClasses: [{
7597
7613
  type: HostBinding,
7598
7614
  args: ['class']
@@ -8255,36 +8271,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
8255
8271
  }]
8256
8272
  }] });
8257
8273
 
8258
- class EclMediaContainerComponent extends ECLBaseDirective {
8259
- constructor() {
8260
- super(...arguments);
8261
- this.isFullWidth = false;
8262
- }
8263
- get cssClasses() {
8264
- return [super.getCssClasses('ecl-media-container')].join(' ').trim();
8265
- }
8266
- ngAfterContentInit() {
8267
- if (this.expandable) {
8268
- this.expandable.class = [this.expandable.class, 'ecl-media-container__expandable'].join(' ');
8269
- }
8270
- }
8271
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EclMediaContainerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
8272
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.8", type: EclMediaContainerComponent, selector: "ecl-media-container", inputs: { isFullWidth: ["isFullWidth", "isFullWidth", booleanAttribute] }, host: { properties: { "class": "this.cssClasses" } }, queries: [{ propertyName: "expandable", first: true, predicate: EclExpandableComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<figure class=\"ecl-media-container__figure\" [class.ecl-media-container--full-width]=\"isFullWidth\">\n <ng-content select=\"video[eclMediaContainerItem]\"></ng-content>\n <ng-content select=\"div[eclMediaContainerItem]\"></ng-content>\n <ng-content select=\"picture[eclMediaContainerPicture]\"></ng-content>\n\n <figcaption class=\"ecl-media-container__caption\">\n <ng-content></ng-content>\n </figcaption>\n <ng-content select=\"ecl-expandable\"></ng-content>\n</figure>\n", styles: [":host{display:block}\n"] }); }
8273
- }
8274
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EclMediaContainerComponent, decorators: [{
8275
- type: Component,
8276
- args: [{ selector: 'ecl-media-container', template: "<figure class=\"ecl-media-container__figure\" [class.ecl-media-container--full-width]=\"isFullWidth\">\n <ng-content select=\"video[eclMediaContainerItem]\"></ng-content>\n <ng-content select=\"div[eclMediaContainerItem]\"></ng-content>\n <ng-content select=\"picture[eclMediaContainerPicture]\"></ng-content>\n\n <figcaption class=\"ecl-media-container__caption\">\n <ng-content></ng-content>\n </figcaption>\n <ng-content select=\"ecl-expandable\"></ng-content>\n</figure>\n", styles: [":host{display:block}\n"] }]
8277
- }], propDecorators: { isFullWidth: [{
8278
- type: Input,
8279
- args: [{ transform: booleanAttribute }]
8280
- }], expandable: [{
8281
- type: ContentChild,
8282
- args: [EclExpandableComponent]
8283
- }], cssClasses: [{
8284
- type: HostBinding,
8285
- args: ['class']
8286
- }] } });
8287
-
8288
8274
  class EclMediaContainerIframeDirective extends ECLBaseDirective {
8289
8275
  get ratio() {
8290
8276
  return this.hasCustomRatio ? this.calculateCustomRatio() : null;
@@ -8352,7 +8338,6 @@ class EclMediaContainerItemDirective extends ECLBaseDirective {
8352
8338
  const iframe = this.el.nativeElement.lastChild;
8353
8339
  const iframeUrl = new URL(iframe.src);
8354
8340
  if (iframeUrl.host.includes('youtube')) {
8355
- iframeUrl.searchParams.set('disablekb', '1');
8356
8341
  iframe.src = iframeUrl;
8357
8342
  }
8358
8343
  }
@@ -8375,6 +8360,93 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
8375
8360
  args: ['class']
8376
8361
  }] } });
8377
8362
 
8363
+ class EclMediaContainerComponent extends ECLBaseDirective {
8364
+ get cssClasses() {
8365
+ return [super.getCssClasses('ecl-media-container')].join(' ').trim();
8366
+ }
8367
+ constructor(renderer) {
8368
+ super();
8369
+ this.renderer = renderer;
8370
+ this.isFullWidth = false;
8371
+ this.eclAutoplay = false;
8372
+ this.isPlaying = false;
8373
+ this.DELAY = 0;
8374
+ }
8375
+ ngAfterContentInit() {
8376
+ if (this.hasVideo && this.eclAutoplay) {
8377
+ const videoEl = this.eclMediaContainerItem.el.nativeElement;
8378
+ this.renderer.listen(videoEl, 'play', () => {
8379
+ this.isPlaying = true;
8380
+ });
8381
+ this.renderer.listen(videoEl, 'pause', () => {
8382
+ this.isPlaying = false;
8383
+ });
8384
+ this.renderer.setAttribute(this.eclMediaContainerItem.el.nativeElement, 'loop', '');
8385
+ this.renderer.setAttribute(this.eclMediaContainerItem.el.nativeElement, 'muted', '');
8386
+ this.renderer.setProperty(this.eclMediaContainerItem.el.nativeElement, 'muted', true);
8387
+ this.renderer.removeAttribute(this.eclMediaContainerItem.el.nativeElement, 'controls');
8388
+ }
8389
+ if (this.expandable) {
8390
+ this.expandable.class = [this.expandable.class, 'ecl-media-container__expandable'].join(' ');
8391
+ }
8392
+ }
8393
+ get hasVideo() {
8394
+ return this.eclMediaContainerItem?.isVideo;
8395
+ }
8396
+ onVideoPlay() {
8397
+ const videoEl = this.eclMediaContainerItem.el.nativeElement;
8398
+ videoEl.play();
8399
+ timer(this.DELAY).pipe(take(1)).subscribe(() => {
8400
+ const pauseButton = this.eclButtons.find(button => button === this.pauseButton);
8401
+ this.focusOnButton(pauseButton);
8402
+ });
8403
+ }
8404
+ onVideoPause() {
8405
+ const videoEl = this.eclMediaContainerItem.el.nativeElement;
8406
+ videoEl.pause();
8407
+ timer(this.DELAY).pipe(take(1)).subscribe(() => {
8408
+ const playButton = this.eclButtons.find(button => button === this.playButton);
8409
+ this.focusOnButton(playButton);
8410
+ });
8411
+ }
8412
+ focusOnButton(button) {
8413
+ if (!button) {
8414
+ return;
8415
+ }
8416
+ button.onFocus();
8417
+ }
8418
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EclMediaContainerComponent, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
8419
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.8", type: EclMediaContainerComponent, selector: "ecl-media-container", inputs: { isFullWidth: ["isFullWidth", "isFullWidth", booleanAttribute], eclAutoplay: ["eclAutoplay", "eclAutoplay", booleanAttribute] }, host: { properties: { "class": "this.cssClasses" } }, queries: [{ propertyName: "expandable", first: true, predicate: EclExpandableComponent, descendants: true }, { propertyName: "eclMediaContainerItem", first: true, predicate: EclMediaContainerItemDirective, descendants: true }], viewQueries: [{ propertyName: "pauseButton", first: true, predicate: ["pauseButton"], descendants: true }, { propertyName: "playButton", first: true, predicate: ["playButton"], descendants: true }, { propertyName: "eclButtons", predicate: EclButtonComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<figure class=\"ecl-media-container__figure\" [class.ecl-media-container--full-width]=\"isFullWidth\">\n @if (hasVideo) {\n <div class=\"ecl-media-container__video-wrapper\">\n <ng-content select=\"video[eclMediaContainerItem]\"></ng-content>\n @if (eclAutoplay) {\n <button #playButton eclButton variant=\"tertiary\" isIconOnly class=\"ecl-media-container__play\" (click)=\"onVideoPlay()\"\n [style.display]=\"isPlaying ? 'none' : 'flex'\" type=\"button\">\n <span eclButtonLabel>Play</span>\n <ecl-icon icon=\"play-outline\" size=\"m\"></ecl-icon>\n </button>\n <button #pauseButton eclButton variant=\"tertiary\" isIconOnly class=\"ecl-media-container__pause\" (click)=\"onVideoPause()\"\n [style.display]=\"isPlaying ? 'flex' : 'none'\" type=\"button\">\n <span eclButtonLabel>Pause</span>\n <ecl-icon icon=\"pause-outline\" size=\"m\"></ecl-icon>\n </button>\n }\n </div>\n }\n <ng-content select=\"div[eclMediaContainerItem]\"></ng-content>\n <ng-content select=\"picture[eclMediaContainerPicture]\"></ng-content>\n\n <figcaption class=\"ecl-media-container__caption\">\n <ng-content></ng-content>\n </figcaption>\n <ng-content select=\"ecl-expandable\"></ng-content>\n</figure>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "component", type: EclIconComponent, selector: "ecl-icon", inputs: ["iconSet", "icon", "size", "color", "transform", "ariaLabelledby", "role", "title", "ariaHidden", "focusable", "isFlipHorizontal"] }, { kind: "component", type: EclButtonComponent, selector: "button[eclButton], button[ecl-button], a[eclButton]", inputs: ["isIconOnly", "variant", "containerStyleClass"] }, { kind: "directive", type: EclButtonLabelDirective, selector: "[eclButtonLabel]" }] }); }
8420
+ }
8421
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EclMediaContainerComponent, decorators: [{
8422
+ type: Component,
8423
+ args: [{ selector: 'ecl-media-container', template: "<figure class=\"ecl-media-container__figure\" [class.ecl-media-container--full-width]=\"isFullWidth\">\n @if (hasVideo) {\n <div class=\"ecl-media-container__video-wrapper\">\n <ng-content select=\"video[eclMediaContainerItem]\"></ng-content>\n @if (eclAutoplay) {\n <button #playButton eclButton variant=\"tertiary\" isIconOnly class=\"ecl-media-container__play\" (click)=\"onVideoPlay()\"\n [style.display]=\"isPlaying ? 'none' : 'flex'\" type=\"button\">\n <span eclButtonLabel>Play</span>\n <ecl-icon icon=\"play-outline\" size=\"m\"></ecl-icon>\n </button>\n <button #pauseButton eclButton variant=\"tertiary\" isIconOnly class=\"ecl-media-container__pause\" (click)=\"onVideoPause()\"\n [style.display]=\"isPlaying ? 'flex' : 'none'\" type=\"button\">\n <span eclButtonLabel>Pause</span>\n <ecl-icon icon=\"pause-outline\" size=\"m\"></ecl-icon>\n </button>\n }\n </div>\n }\n <ng-content select=\"div[eclMediaContainerItem]\"></ng-content>\n <ng-content select=\"picture[eclMediaContainerPicture]\"></ng-content>\n\n <figcaption class=\"ecl-media-container__caption\">\n <ng-content></ng-content>\n </figcaption>\n <ng-content select=\"ecl-expandable\"></ng-content>\n</figure>\n", styles: [":host{display:block}\n"] }]
8424
+ }], ctorParameters: () => [{ type: i0.Renderer2 }], propDecorators: { isFullWidth: [{
8425
+ type: Input,
8426
+ args: [{ transform: booleanAttribute }]
8427
+ }], eclAutoplay: [{
8428
+ type: Input,
8429
+ args: [{ transform: booleanAttribute }]
8430
+ }], expandable: [{
8431
+ type: ContentChild,
8432
+ args: [EclExpandableComponent]
8433
+ }], eclMediaContainerItem: [{
8434
+ type: ContentChild,
8435
+ args: [EclMediaContainerItemDirective]
8436
+ }], eclButtons: [{
8437
+ type: ViewChildren,
8438
+ args: [EclButtonComponent]
8439
+ }], pauseButton: [{
8440
+ type: ViewChild,
8441
+ args: ['pauseButton']
8442
+ }], playButton: [{
8443
+ type: ViewChild,
8444
+ args: ['playButton']
8445
+ }], cssClasses: [{
8446
+ type: HostBinding,
8447
+ args: ['class']
8448
+ }] } });
8449
+
8378
8450
  class EclMediaContainerPictureDirective extends ECLBaseDirective {
8379
8451
  get cssClasses() {
8380
8452
  return [super.getCssClasses('ecl-picture ecl-media-container__picture')].join(' ').trim();
@@ -8422,17 +8494,17 @@ class EclMediaContainerComponentModule {
8422
8494
  EclMediaContainerItemDirective,
8423
8495
  EclMediaContainerIframeDirective,
8424
8496
  EclMediaContainerPictureDirective,
8425
- EclMediaContainerItemAudioDescriptionDirective], imports: [CommonModule, TranslateModule], exports: [EclMediaContainerComponent,
8497
+ EclMediaContainerItemAudioDescriptionDirective], imports: [CommonModule, TranslateModule, EclIconComponentModule, EclButtonComponentModule], exports: [EclMediaContainerComponent,
8426
8498
  EclMediaContainerItemDirective,
8427
8499
  EclMediaContainerIframeDirective,
8428
8500
  EclMediaContainerPictureDirective,
8429
8501
  EclMediaContainerItemAudioDescriptionDirective] }); }
8430
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EclMediaContainerComponentModule, imports: [CommonModule, TranslateModule] }); }
8502
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EclMediaContainerComponentModule, imports: [CommonModule, TranslateModule, EclIconComponentModule, EclButtonComponentModule] }); }
8431
8503
  }
8432
8504
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EclMediaContainerComponentModule, decorators: [{
8433
8505
  type: NgModule,
8434
8506
  args: [{
8435
- imports: [CommonModule, TranslateModule],
8507
+ imports: [CommonModule, TranslateModule, EclIconComponentModule, EclButtonComponentModule],
8436
8508
  exports: [...COMPONENTS$m],
8437
8509
  declarations: [...COMPONENTS$m],
8438
8510
  }]
@@ -8964,11 +9036,11 @@ class EclFileComponent extends ECLBaseDirective {
8964
9036
  return !!this.eclPictureContent;
8965
9037
  }
8966
9038
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EclFileComponent, deps: [{ token: EclThemeService }], target: i0.ɵɵFactoryTarget.Component }); }
8967
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.8", type: EclFileComponent, selector: "ecl-file", inputs: { description: "description", id: "id", langId: "langId", labelInfo: "labelInfo", language: "language", detailMeta: "detailMeta", meta: "meta" }, host: { properties: { "class": "this.cssClasses" } }, queries: [{ propertyName: "eclPictureContent", first: true, predicate: EclFilePictureDirective, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"ecl-file__container\">\n @if(!isThumbnail) {\n @if(eclThemeService.isECTheme()) {\n <ecl-icon icon=\"file\" class=\"ecl-file__icon\" size=\"2xl\"></ecl-icon>\n } @else {\n <ecl-icon icon=\"file\" class=\"ecl-file__icon\" size=\"m\"></ecl-icon>\n }\n } @else {\n <ng-content select=\"[eclFilePicture]\"></ng-content>\n }\n <div class=\"ecl-file__info\">\n @if(labelInfo) {\n <div class=\"ecl-file__label\">\n <span eclLabel variant=\"highlight\">{{ labelInfo }}</span>\n </div>\n }\n @if(detailMeta) {\n <ul class=\"ecl-file__detail-meta\">\n @for (el of detailMeta; track el) {\n <li class=\"ecl-file__detail-meta-item\" >{{ el }}</li>\n }\n </ul>\n }\n <ng-content select=\"[eclFileTitle]\"></ng-content>\n @if(description) {\n <div class=\"ecl-file__description\">{{ description }}</div>\n }\n <ng-content select=\"ecl-file-taxonomy\"></ng-content>\n </div>\n\n </div>\n <div class=\"ecl-file__footer\">\n <div class=\"ecl-file__language\" [id]=\"langId\">{{ language }}</div>\n <div class=\"ecl-file__meta\">{{ meta }}</div>\n <ng-content select=\"[eclFileDownload]\"></ng-content>\n </div>\n<ng-content></ng-content>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "component", type: EclIconComponent, selector: "ecl-icon", inputs: ["iconSet", "icon", "size", "color", "transform", "ariaLabelledby", "role", "title", "ariaHidden", "focusable", "isFlipHorizontal"] }, { kind: "directive", type: EclLabelDirective, selector: "[eclLabel]", inputs: ["variant"] }] }); }
9039
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.8", type: EclFileComponent, selector: "ecl-file", inputs: { description: "description", id: "id", langId: "langId", labelInfo: "labelInfo", language: "language", detailMeta: "detailMeta", meta: "meta" }, host: { properties: { "class": "this.cssClasses" } }, queries: [{ propertyName: "eclPictureContent", first: true, predicate: EclFilePictureDirective, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"ecl-file__container\">\n @if(!isThumbnail) {\n @if(eclThemeService.isECTheme()) {\n <ecl-icon icon=\"file\" class=\"ecl-file__icon\" size=\"2xl\"></ecl-icon>\n } @else {\n <ecl-icon icon=\"file\" class=\"ecl-file__icon\" size=\"m\"></ecl-icon>\n }\n } @else {\n <ng-content select=\"[eclFilePicture]\"></ng-content>\n }\n <div class=\"ecl-file__info\">\n @if(labelInfo) {\n <div class=\"ecl-file__label\">\n <span eclLabel variant=\"highlight\">{{ labelInfo }}</span>\n </div>\n }\n @if(detailMeta) {\n <ul class=\"ecl-file__detail-meta\">\n @for (el of detailMeta; track el) {\n <li class=\"ecl-file__detail-meta-item\" >{{ el }}</li>\n }\n </ul>\n }\n <ng-content select=\"[eclFileTitle]\"></ng-content>\n @if(description) {\n <div class=\"ecl-file__description\">{{ description }}</div>\n }\n <ng-content select=\"ecl-file-taxonomy\"></ng-content>\n </div>\n\n </div>\n <div class=\"ecl-file__footer\">\n <div class=\"ecl-file__language\" [id]=\"langId\">{{ language }}</div>\n <div class=\"ecl-file__meta\">{{ meta }}</div>\n <div class=\"ecl-file__action\">\n <ng-content select=\"[eclFilePreview]\"></ng-content>\n <ng-content select=\"[eclFileDownload]\"></ng-content>\n </div>\n </div>\n<ng-content></ng-content>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "component", type: EclIconComponent, selector: "ecl-icon", inputs: ["iconSet", "icon", "size", "color", "transform", "ariaLabelledby", "role", "title", "ariaHidden", "focusable", "isFlipHorizontal"] }, { kind: "directive", type: EclLabelDirective, selector: "[eclLabel]", inputs: ["variant"] }] }); }
8968
9040
  }
8969
9041
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EclFileComponent, decorators: [{
8970
9042
  type: Component,
8971
- args: [{ selector: 'ecl-file', template: "<div class=\"ecl-file__container\">\n @if(!isThumbnail) {\n @if(eclThemeService.isECTheme()) {\n <ecl-icon icon=\"file\" class=\"ecl-file__icon\" size=\"2xl\"></ecl-icon>\n } @else {\n <ecl-icon icon=\"file\" class=\"ecl-file__icon\" size=\"m\"></ecl-icon>\n }\n } @else {\n <ng-content select=\"[eclFilePicture]\"></ng-content>\n }\n <div class=\"ecl-file__info\">\n @if(labelInfo) {\n <div class=\"ecl-file__label\">\n <span eclLabel variant=\"highlight\">{{ labelInfo }}</span>\n </div>\n }\n @if(detailMeta) {\n <ul class=\"ecl-file__detail-meta\">\n @for (el of detailMeta; track el) {\n <li class=\"ecl-file__detail-meta-item\" >{{ el }}</li>\n }\n </ul>\n }\n <ng-content select=\"[eclFileTitle]\"></ng-content>\n @if(description) {\n <div class=\"ecl-file__description\">{{ description }}</div>\n }\n <ng-content select=\"ecl-file-taxonomy\"></ng-content>\n </div>\n\n </div>\n <div class=\"ecl-file__footer\">\n <div class=\"ecl-file__language\" [id]=\"langId\">{{ language }}</div>\n <div class=\"ecl-file__meta\">{{ meta }}</div>\n <ng-content select=\"[eclFileDownload]\"></ng-content>\n </div>\n<ng-content></ng-content>\n", styles: [":host{display:block}\n"] }]
9043
+ args: [{ selector: 'ecl-file', template: "<div class=\"ecl-file__container\">\n @if(!isThumbnail) {\n @if(eclThemeService.isECTheme()) {\n <ecl-icon icon=\"file\" class=\"ecl-file__icon\" size=\"2xl\"></ecl-icon>\n } @else {\n <ecl-icon icon=\"file\" class=\"ecl-file__icon\" size=\"m\"></ecl-icon>\n }\n } @else {\n <ng-content select=\"[eclFilePicture]\"></ng-content>\n }\n <div class=\"ecl-file__info\">\n @if(labelInfo) {\n <div class=\"ecl-file__label\">\n <span eclLabel variant=\"highlight\">{{ labelInfo }}</span>\n </div>\n }\n @if(detailMeta) {\n <ul class=\"ecl-file__detail-meta\">\n @for (el of detailMeta; track el) {\n <li class=\"ecl-file__detail-meta-item\" >{{ el }}</li>\n }\n </ul>\n }\n <ng-content select=\"[eclFileTitle]\"></ng-content>\n @if(description) {\n <div class=\"ecl-file__description\">{{ description }}</div>\n }\n <ng-content select=\"ecl-file-taxonomy\"></ng-content>\n </div>\n\n </div>\n <div class=\"ecl-file__footer\">\n <div class=\"ecl-file__language\" [id]=\"langId\">{{ language }}</div>\n <div class=\"ecl-file__meta\">{{ meta }}</div>\n <div class=\"ecl-file__action\">\n <ng-content select=\"[eclFilePreview]\"></ng-content>\n <ng-content select=\"[eclFileDownload]\"></ng-content>\n </div>\n </div>\n<ng-content></ng-content>\n", styles: [":host{display:block}\n"] }]
8972
9044
  }], ctorParameters: () => [{ type: EclThemeService }], propDecorators: { cssClasses: [{
8973
9045
  type: HostBinding,
8974
9046
  args: ['class']
@@ -9007,11 +9079,11 @@ class EclFileItemComponent extends ECLBaseDirective {
9007
9079
  return this.eclFileComponent && this.eclFileComponent.isThumbnail;
9008
9080
  }
9009
9081
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EclFileItemComponent, deps: [{ token: EclFileComponent }], target: i0.ɵɵFactoryTarget.Component }); }
9010
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.8", type: EclFileItemComponent, selector: "ecl-file-item", inputs: { isDescription: ["isDescription", "isDescription", booleanAttribute], eclTitle: "eclTitle", titleId: "titleId", meta: "meta", label: "label", langDetail: "langDetail" }, host: { properties: { "class": "this.cssClasses", "attr.role": "this.role" } }, usesInheritance: true, ngImport: i0, template: "@if (isDescription) {\n <ng-content></ng-content>\n} @else {\n <div class=\"ecl-file__translation-info\">\n <div class=\"ecl-file__translation-title\" [id]=\"titleId\" [attr.lang]=\"langDetail\">{{ eclTitle }}</div>\n <div class=\"ecl-file__translation-meta\">{{ meta }}</div>\n </div>\n <ng-content select=\"[eclFileTranslationDownload]\"></ng-content>\n}\n" }); }
9082
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.8", type: EclFileItemComponent, selector: "ecl-file-item", inputs: { isDescription: ["isDescription", "isDescription", booleanAttribute], eclTitle: "eclTitle", titleId: "titleId", meta: "meta", label: "label", langDetail: "langDetail" }, host: { properties: { "class": "this.cssClasses", "attr.role": "this.role" } }, usesInheritance: true, ngImport: i0, template: "@if (isDescription) {\n <ng-content></ng-content>\n} @else {\n <div class=\"ecl-file__translation-info\">\n <div class=\"ecl-file__translation-title\" [id]=\"titleId\" [attr.lang]=\"langDetail\">{{ eclTitle }}</div>\n <div class=\"ecl-file__translation-meta\">{{ meta }}</div>\n </div>\n <div class=\"ecl-file__translation-action\">\n <ng-content select=\"[eclFilePreview]\"></ng-content>\n <ng-content select=\"[eclFileTranslationDownload]\"></ng-content>\n </div>\n}\n" }); }
9011
9083
  }
9012
9084
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EclFileItemComponent, decorators: [{
9013
9085
  type: Component,
9014
- args: [{ selector: 'ecl-file-item', template: "@if (isDescription) {\n <ng-content></ng-content>\n} @else {\n <div class=\"ecl-file__translation-info\">\n <div class=\"ecl-file__translation-title\" [id]=\"titleId\" [attr.lang]=\"langDetail\">{{ eclTitle }}</div>\n <div class=\"ecl-file__translation-meta\">{{ meta }}</div>\n </div>\n <ng-content select=\"[eclFileTranslationDownload]\"></ng-content>\n}\n" }]
9086
+ args: [{ selector: 'ecl-file-item', template: "@if (isDescription) {\n <ng-content></ng-content>\n} @else {\n <div class=\"ecl-file__translation-info\">\n <div class=\"ecl-file__translation-title\" [id]=\"titleId\" [attr.lang]=\"langDetail\">{{ eclTitle }}</div>\n <div class=\"ecl-file__translation-meta\">{{ meta }}</div>\n </div>\n <div class=\"ecl-file__translation-action\">\n <ng-content select=\"[eclFilePreview]\"></ng-content>\n <ng-content select=\"[eclFileTranslationDownload]\"></ng-content>\n </div>\n}\n" }]
9015
9087
  }], ctorParameters: () => [{ type: EclFileComponent }], propDecorators: { isDescription: [{
9016
9088
  type: Input,
9017
9089
  args: [{ transform: booleanAttribute }]
@@ -9129,6 +9201,30 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
9129
9201
  type: HostBinding,
9130
9202
  args: ['class.ecl-file__download']
9131
9203
  }] } });
9204
+ class EclFilePreviewDirective extends ECLBaseDirective {
9205
+ constructor() {
9206
+ super(...arguments);
9207
+ this.hasClass = true;
9208
+ this.hasClassStandalone = true;
9209
+ }
9210
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EclFilePreviewDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
9211
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.8", type: EclFilePreviewDirective, selector: "[eclFilePreview]", host: { properties: { "style.margin-inline-end.px": "24", "class.ecl-link": "this.hasClass", "class.ecl-link--standalone": "this.hasClassStandalone" } }, usesInheritance: true, ngImport: i0 }); }
9212
+ }
9213
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EclFilePreviewDirective, decorators: [{
9214
+ type: Directive,
9215
+ args: [{
9216
+ selector: '[eclFilePreview]',
9217
+ host: {
9218
+ '[style.margin-inline-end.px]': '24',
9219
+ },
9220
+ }]
9221
+ }], propDecorators: { hasClass: [{
9222
+ type: HostBinding,
9223
+ args: ['class.ecl-link']
9224
+ }], hasClassStandalone: [{
9225
+ type: HostBinding,
9226
+ args: ['class.ecl-link--standalone']
9227
+ }] } });
9132
9228
 
9133
9229
  const COMPONENTS$k = [
9134
9230
  EclFileComponent,
@@ -9140,6 +9236,7 @@ const COMPONENTS$k = [
9140
9236
  EclFileTranslationDownloadDirective,
9141
9237
  EclFilePictureDirective,
9142
9238
  EclFileImageDirective,
9239
+ EclFilePreviewDirective,
9143
9240
  ];
9144
9241
  class EclFileComponentModule {
9145
9242
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EclFileComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
@@ -9151,7 +9248,8 @@ class EclFileComponentModule {
9151
9248
  EclFileTitleDirective,
9152
9249
  EclFileTranslationDownloadDirective,
9153
9250
  EclFilePictureDirective,
9154
- EclFileImageDirective], imports: [CommonModule,
9251
+ EclFileImageDirective,
9252
+ EclFilePreviewDirective], imports: [CommonModule,
9155
9253
  EclLinkDirectiveModule,
9156
9254
  EclIconComponentModule,
9157
9255
  EclButtonComponentModule,
@@ -9164,7 +9262,8 @@ class EclFileComponentModule {
9164
9262
  EclFileTitleDirective,
9165
9263
  EclFileTranslationDownloadDirective,
9166
9264
  EclFilePictureDirective,
9167
- EclFileImageDirective] }); }
9265
+ EclFileImageDirective,
9266
+ EclFilePreviewDirective] }); }
9168
9267
  static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EclFileComponentModule, imports: [CommonModule,
9169
9268
  EclLinkDirectiveModule,
9170
9269
  EclIconComponentModule,
@@ -9253,11 +9352,15 @@ class EclGalleryPictureImage {
9253
9352
  }
9254
9353
  class EclGalleryMediaDirective extends ECLBaseDirective {
9255
9354
  get cssClasses() {
9256
- return [super.getCssClasses('ecl-gallery__image')].join(' ').trim();
9355
+ return [
9356
+ super.getCssClasses('ecl-gallery__image'),
9357
+ this.hasZoom && this.isVideo ? 'ecl-video--zoom' : '',
9358
+ ].join(' ').trim();
9257
9359
  }
9258
9360
  constructor(el) {
9259
9361
  super();
9260
9362
  this.el = el;
9363
+ this.hasZoom = false;
9261
9364
  this.sources = [];
9262
9365
  this.tracks = [];
9263
9366
  this.isVideo = false;
@@ -9297,7 +9400,7 @@ class EclGalleryMediaDirective extends ECLBaseDirective {
9297
9400
  return this.el.nativeElement;
9298
9401
  }
9299
9402
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EclGalleryMediaDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
9300
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.8", type: EclGalleryMediaDirective, selector: "[eclGalleryMedia], [eclGalleryImage]", inputs: { poster: "poster" }, host: { properties: { "class": "this.cssClasses", "class.ecl-video": "this.isVideo" } }, usesInheritance: true, ngImport: i0 }); }
9403
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "18.2.8", type: EclGalleryMediaDirective, selector: "[eclGalleryMedia], [eclGalleryImage]", inputs: { poster: "poster", hasZoom: ["hasZoom", "hasZoom", booleanAttribute] }, host: { properties: { "class": "this.cssClasses", "class.ecl-video": "this.isVideo" } }, usesInheritance: true, ngImport: i0 }); }
9301
9404
  }
9302
9405
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EclGalleryMediaDirective, decorators: [{
9303
9406
  type: Directive,
@@ -9306,6 +9409,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
9306
9409
  }]
9307
9410
  }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { poster: [{
9308
9411
  type: Input
9412
+ }], hasZoom: [{
9413
+ type: Input,
9414
+ args: [{ transform: booleanAttribute }]
9309
9415
  }], cssClasses: [{
9310
9416
  type: HostBinding,
9311
9417
  args: ['class']
@@ -9321,6 +9427,7 @@ class EclGalleryPictureDirective extends ECLBaseDirective {
9321
9427
  super();
9322
9428
  this.el = el;
9323
9429
  this.cd = cd;
9430
+ // TODO: to be removed in v19. Thumbnail should be added by user.
9324
9431
  this.isThumbnail = false;
9325
9432
  this.sources = [];
9326
9433
  this.img = {};
@@ -9367,11 +9474,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
9367
9474
  args: ['class']
9368
9475
  }] } });
9369
9476
  class EclGalleryThumbnailDirective extends ECLBaseDirective {
9477
+ constructor() {
9478
+ super(...arguments);
9479
+ this.hasZoom = false;
9480
+ }
9370
9481
  get cssClasses() {
9371
9482
  return [super.getCssClasses('ecl-picture ecl-gallery__thumbnail')].join(' ').trim();
9372
9483
  }
9373
9484
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EclGalleryThumbnailDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
9374
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.8", type: EclGalleryThumbnailDirective, selector: "picture[eclGalleryThumbnail]", host: { properties: { "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0 }); }
9485
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "18.2.8", type: EclGalleryThumbnailDirective, selector: "picture[eclGalleryThumbnail]", inputs: { hasZoom: ["hasZoom", "hasZoom", booleanAttribute] }, host: { properties: { "class": "this.cssClasses", "class.ecl-picture--zoom": "this.hasZoom" } }, usesInheritance: true, ngImport: i0 }); }
9375
9486
  }
9376
9487
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EclGalleryThumbnailDirective, decorators: [{
9377
9488
  type: Directive,
@@ -9381,6 +9492,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
9381
9492
  }], propDecorators: { cssClasses: [{
9382
9493
  type: HostBinding,
9383
9494
  args: ['class']
9495
+ }], hasZoom: [{
9496
+ type: Input,
9497
+ args: [{ transform: booleanAttribute }]
9498
+ }, {
9499
+ type: HostBinding,
9500
+ args: ['class.ecl-picture--zoom']
9384
9501
  }] } });
9385
9502
 
9386
9503
  class EclGalleryItemClickEvent extends EclBaseEvent {
@@ -9405,7 +9522,6 @@ class EclGalleryItemComponent extends ECLBaseDirective {
9405
9522
  if (this.isExternalVideo) {
9406
9523
  const iframeUrl = new URL(this.src);
9407
9524
  if (iframeUrl.host.includes('youtube')) {
9408
- iframeUrl.searchParams.set('disablekb', '1');
9409
9525
  this.externalVideoUrl = this.domSanitizer.bypassSecurityTrustResourceUrl(iframeUrl.toString());
9410
9526
  }
9411
9527
  else {
@@ -9416,6 +9532,7 @@ class EclGalleryItemComponent extends ECLBaseDirective {
9416
9532
  this.itemId = crypto.randomUUID();
9417
9533
  }
9418
9534
  }
9535
+ // TODO: to be removed in v19. Thumbnail should be added by user.
9419
9536
  ngAfterContentInit() {
9420
9537
  if (this.galleryPicture && !this.galleryThumbnail && !this.isImage) {
9421
9538
  this.galleryPicture.isThumbnail = true;
@@ -9462,11 +9579,11 @@ class EclGalleryItemComponent extends ECLBaseDirective {
9462
9579
  this.renderer.selectRootElement(this.el.nativeElement.children[0], true).focus();
9463
9580
  }
9464
9581
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EclGalleryItemComponent, deps: [{ token: i1$5.DomSanitizer }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
9465
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.8", type: EclGalleryItemComponent, selector: "ecl-gallery-item", inputs: { isShareable: ["isShareable", "isShareable", booleanAttribute], mediaType: "mediaType", src: "src", label: "label", meta: "meta", description: "description", srVideoAudioDescription: "srVideoAudioDescription", icon: "icon", title: "title", itemId: "itemId" }, outputs: { itemClick: "itemClick" }, host: { listeners: { "click": "onItemClick($event)" }, properties: { "class": "this.cssClasses", "attr.role": "this.role" } }, queries: [{ propertyName: "mediaChild", first: true, predicate: EclGalleryMediaDirective, descendants: true }, { propertyName: "galleryThumbnail", first: true, predicate: EclGalleryThumbnailDirective, descendants: true }, { propertyName: "galleryPicture", first: true, predicate: EclGalleryPictureDirective, descendants: true }], usesInheritance: true, ngImport: i0, template: "<a [href]=\"src\" class=\"ecl-gallery__item-link\" [class.ecl-gallery__item__link--frozen]=\"isNoOverlay\" [id]=\"itemId\">\n <figure class=\"ecl-gallery__image-container\">\n @if(mediaType !== 'image') {\n <div class=\"ecl-gallery__item-icon-wrapper\">\n <ecl-icon isInverted class=\"ecl-gallery__item-icon ecl-icon--inverted\" icon=\"play-filled\" size=\"l\"></ecl-icon>\n </div>\n }\n @if(hasGalleryThumbnail) {\n <picture class=\"ecl-picture ecl-gallery__thumbnail\">\n @for(el of galleryPicture?.sources; track el.srcset ) {\n <source [attr.srcset]=\"el.srcset\" [attr.media]=\" el.media\">\n }\n <img class=\"ecl-gallery__image\"\n [attr.src]=\"galleryPicture?.img.src\"\n [attr.alt]=\"galleryPicture?.img.alt\" />\n </picture>\n }\n <ng-content select=\"[eclGalleryPicture], [eclGalleryThumbnail], [eclGalleryMedia], [eclGalleryImage]\"></ng-content>\n <figcaption class=\"ecl-gallery__description\">\n @if(title) {\n <span class=\"ecl-gallery__title\" [id]=\"titleId\">{{title}}</span>\n }\n @if(description) {\n <span class=\"ecl-gallery__caption\">{{ description }}</span>\n }\n @if(icon) {\n <ecl-icon class=\"ecl-gallery__description-icon\" [icon]=\"icon\"></ecl-icon>\n }\n <span class=\"ecl-gallery__meta\">\n {{ meta }}\n </span>\n </figcaption>\n </figure>\n</a>", dependencies: [{ kind: "component", type: EclIconComponent, selector: "ecl-icon", inputs: ["iconSet", "icon", "size", "color", "transform", "ariaLabelledby", "role", "title", "ariaHidden", "focusable", "isFlipHorizontal"] }] }); }
9582
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.8", type: EclGalleryItemComponent, selector: "ecl-gallery-item", inputs: { isShareable: ["isShareable", "isShareable", booleanAttribute], mediaType: "mediaType", src: "src", label: "label", meta: "meta", description: "description", srVideoAudioDescription: "srVideoAudioDescription", icon: "icon", title: "title", itemId: "itemId" }, outputs: { itemClick: "itemClick" }, host: { listeners: { "click": "onItemClick($event)" }, properties: { "class": "this.cssClasses", "attr.role": "this.role" } }, queries: [{ propertyName: "mediaChild", first: true, predicate: EclGalleryMediaDirective, descendants: true }, { propertyName: "galleryThumbnail", first: true, predicate: EclGalleryThumbnailDirective, descendants: true }, { propertyName: "galleryPicture", first: true, predicate: EclGalleryPictureDirective, descendants: true }], usesInheritance: true, ngImport: i0, template: "<a [href]=\"src\" class=\"ecl-gallery__item-link\" [class.ecl-gallery__item__link--frozen]=\"isNoOverlay\" [id]=\"itemId\">\n <figure class=\"ecl-gallery__image-container\">\n @if(mediaType !== 'image') {\n <div class=\"ecl-gallery__item-icon-wrapper\">\n <ecl-icon isInverted class=\"ecl-gallery__item-icon ecl-icon--inverted\" icon=\"play-filled\" size=\"l\"></ecl-icon>\n </div>\n } \n @if(hasGalleryThumbnail) { <!-- TODO: to be removed in v19. Thumbnail should be added by user. -->\n <picture class=\"ecl-picture ecl-gallery__thumbnail\">\n @for(el of galleryPicture?.sources; track el.srcset ) {\n <source [attr.srcset]=\"el.srcset\" [attr.media]=\" el.media\">\n }\n <img class=\"ecl-gallery__image\"\n [attr.src]=\"galleryPicture?.img.src\"\n [attr.alt]=\"galleryPicture?.img.alt\" />\n </picture>\n }\n <ng-content select=\"[eclGalleryPicture], [eclGalleryThumbnail], [eclGalleryMedia], [eclGalleryImage]\"></ng-content>\n <figcaption class=\"ecl-gallery__description\">\n @if(title) {\n <span class=\"ecl-gallery__title\" [id]=\"titleId\">{{title}}</span>\n }\n @if(description) {\n <span class=\"ecl-gallery__caption\">{{ description }}</span>\n }\n @if(icon) {\n <ecl-icon class=\"ecl-gallery__description-icon\" [icon]=\"icon\"></ecl-icon>\n }\n <span class=\"ecl-gallery__meta\">\n {{ meta }}\n </span>\n </figcaption>\n </figure>\n</a>", dependencies: [{ kind: "component", type: EclIconComponent, selector: "ecl-icon", inputs: ["iconSet", "icon", "size", "color", "transform", "ariaLabelledby", "role", "title", "ariaHidden", "focusable", "isFlipHorizontal"] }] }); }
9466
9583
  }
9467
9584
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EclGalleryItemComponent, decorators: [{
9468
9585
  type: Component,
9469
- args: [{ selector: 'ecl-gallery-item', template: "<a [href]=\"src\" class=\"ecl-gallery__item-link\" [class.ecl-gallery__item__link--frozen]=\"isNoOverlay\" [id]=\"itemId\">\n <figure class=\"ecl-gallery__image-container\">\n @if(mediaType !== 'image') {\n <div class=\"ecl-gallery__item-icon-wrapper\">\n <ecl-icon isInverted class=\"ecl-gallery__item-icon ecl-icon--inverted\" icon=\"play-filled\" size=\"l\"></ecl-icon>\n </div>\n }\n @if(hasGalleryThumbnail) {\n <picture class=\"ecl-picture ecl-gallery__thumbnail\">\n @for(el of galleryPicture?.sources; track el.srcset ) {\n <source [attr.srcset]=\"el.srcset\" [attr.media]=\" el.media\">\n }\n <img class=\"ecl-gallery__image\"\n [attr.src]=\"galleryPicture?.img.src\"\n [attr.alt]=\"galleryPicture?.img.alt\" />\n </picture>\n }\n <ng-content select=\"[eclGalleryPicture], [eclGalleryThumbnail], [eclGalleryMedia], [eclGalleryImage]\"></ng-content>\n <figcaption class=\"ecl-gallery__description\">\n @if(title) {\n <span class=\"ecl-gallery__title\" [id]=\"titleId\">{{title}}</span>\n }\n @if(description) {\n <span class=\"ecl-gallery__caption\">{{ description }}</span>\n }\n @if(icon) {\n <ecl-icon class=\"ecl-gallery__description-icon\" [icon]=\"icon\"></ecl-icon>\n }\n <span class=\"ecl-gallery__meta\">\n {{ meta }}\n </span>\n </figcaption>\n </figure>\n</a>" }]
9586
+ args: [{ selector: 'ecl-gallery-item', template: "<a [href]=\"src\" class=\"ecl-gallery__item-link\" [class.ecl-gallery__item__link--frozen]=\"isNoOverlay\" [id]=\"itemId\">\n <figure class=\"ecl-gallery__image-container\">\n @if(mediaType !== 'image') {\n <div class=\"ecl-gallery__item-icon-wrapper\">\n <ecl-icon isInverted class=\"ecl-gallery__item-icon ecl-icon--inverted\" icon=\"play-filled\" size=\"l\"></ecl-icon>\n </div>\n } \n @if(hasGalleryThumbnail) { <!-- TODO: to be removed in v19. Thumbnail should be added by user. -->\n <picture class=\"ecl-picture ecl-gallery__thumbnail\">\n @for(el of galleryPicture?.sources; track el.srcset ) {\n <source [attr.srcset]=\"el.srcset\" [attr.media]=\" el.media\">\n }\n <img class=\"ecl-gallery__image\"\n [attr.src]=\"galleryPicture?.img.src\"\n [attr.alt]=\"galleryPicture?.img.alt\" />\n </picture>\n }\n <ng-content select=\"[eclGalleryPicture], [eclGalleryThumbnail], [eclGalleryMedia], [eclGalleryImage]\"></ng-content>\n <figcaption class=\"ecl-gallery__description\">\n @if(title) {\n <span class=\"ecl-gallery__title\" [id]=\"titleId\">{{title}}</span>\n }\n @if(description) {\n <span class=\"ecl-gallery__caption\">{{ description }}</span>\n }\n @if(icon) {\n <ecl-icon class=\"ecl-gallery__description-icon\" [icon]=\"icon\"></ecl-icon>\n }\n <span class=\"ecl-gallery__meta\">\n {{ meta }}\n </span>\n </figcaption>\n </figure>\n</a>" }]
9470
9587
  }], ctorParameters: () => [{ type: i1$5.DomSanitizer }, { type: i0.Renderer2 }, { type: i0.ElementRef }], propDecorators: { isShareable: [{
9471
9588
  type: Input,
9472
9589
  args: [{ transform: booleanAttribute }]
@@ -9537,7 +9654,7 @@ class EclGalleryComponent extends ECLBaseDirective {
9537
9654
  return [super.getCssClasses('ecl-gallery'),
9538
9655
  this.isFullWidth ? 'ecl-gallery--full-width' : '',
9539
9656
  this.isGrid ? 'ecl-gallery--grid' : '',
9540
- this.isGrid ? `ecl-gallery--col-${this.column}` : '',
9657
+ this.isGrid ? `ecl-gallery--template-${this.gridTemplate}` : '',
9541
9658
  this.isGrid ? `ecl-gallery--ratio-${this.ratio}` : '',
9542
9659
  !this.isShowTitleOnHover ? 'ecl-gallery--no-hover' : '',
9543
9660
  ].join(' ').trim();
@@ -9552,10 +9669,11 @@ class EclGalleryComponent extends ECLBaseDirective {
9552
9669
  this.isNoOverlay = false;
9553
9670
  this.isShowTitleOnHover = true;
9554
9671
  this.isGrid = false;
9555
- this.column = 3;
9556
9672
  /**
9557
9673
  * @deprecated Not used anymore. To be removed in v19.
9558
9674
  */
9675
+ this.column = 3;
9676
+ this.gridTemplate = '0';
9559
9677
  this.ratio = '3-2';
9560
9678
  /**
9561
9679
  * @deprecated Not used anymore. To be removed in v19.
@@ -9783,7 +9901,7 @@ class EclGalleryComponent extends ECLBaseDirective {
9783
9901
  .map(item => item.videoLabel = this.videoLabel);
9784
9902
  }
9785
9903
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EclGalleryComponent, deps: [{ token: i1$4.BreakpointObserver }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Component }); }
9786
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.8", type: EclGalleryComponent, selector: "ecl-gallery", inputs: { isOpenInFullScreenPossible: ["isOpenInFullScreenPossible", "isOpenInFullScreenPossible", booleanAttribute], isShareable: ["isShareable", "isShareable", booleanAttribute], isFullWidth: ["isFullWidth", "isFullWidth", booleanAttribute], isNoOverlay: ["isNoOverlay", "isNoOverlay", booleanAttribute], isShowTitleOnHover: ["isShowTitleOnHover", "isShowTitleOnHover", booleanAttribute], maxVisibleItems: ["maxVisibleItems", "maxVisibleItems", numberAttribute], isGrid: ["isGrid", "isGrid", booleanAttribute], column: ["column", "column", numberAttribute], ratio: "ratio", galleryPlayerTitle: "galleryPlayerTitle", videoAriaLabel: "videoAriaLabel", videoLabel: "videoLabel" }, outputs: { show: "show", hide: "hide", openFullScreen: "openFullScreen", share: "share", itemSwitch: "itemSwitch" }, host: { listeners: { "document:keydown.escape": "onEscapeKeydownHandler($event)", "window:resize": "iframeResize($event)" }, properties: { "class": "this.cssClasses", "attr.role": "this.role" } }, queries: [{ propertyName: "galleryFooter", first: true, predicate: EclGalleryFooterComponent, descendants: true }, { propertyName: "galleryItems", predicate: EclGalleryItemComponent }], viewQueries: [{ propertyName: "overlayChild", first: true, predicate: ["overlay"], descendants: true }, { propertyName: "headerChild", first: true, predicate: ["header"], descendants: true }, { propertyName: "footerChild", first: true, predicate: ["footer"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ul class=\"ecl-gallery__list\">\n <ng-content></ng-content>\n</ul>\n\n<ng-content select=\"ecl-gallery-footer\"></ng-content>\n\n<dialog #overlay [attr.open]=\"isDialogVisible || null\" class=\"ecl-gallery__overlay\"\n [attr.aria-label]=\"'ecl.gallery.FULL-SIZE-DISPLAY' | translate\">\n <header #header class=\"ecl-gallery__close\">\n <button (click)=\"onClose($event)\" eclButton class=\"ecl-gallery__close-button\" isIconOnly variant=\"ghost\">\n <span eclButtonLabel>\n {{ 'ecl.common.CLOSE' | translate }}\n </span>\n <ecl-icon icon=\"close\" size=\"m\"></ecl-icon>\n </button>\n </header>\n <section class=\"ecl-gallery__slider\">\n <div class=\"ecl-gallery__slider-media-container\">\n @if(item?.isExternalVideo) {\n <div class=\"ecl-gallery__slider-embed\">\n @if (item?.srVideoAudioDescription) {\n <div class=\"ecl-gallery__slider-embed-audio\">{{item?.srVideoAudioDescription}}</div>\n }\n <iframe [src]=\"item?.getUrlExternalVideo()\" [style.width.px]=\"getIframeWidth()\"\n [style.height.px]=\"getIframeHeight()\" [attr.title]=\"item.title + ' - Video player'\" frameborder=\"0\">\n </iframe>\n </div>\n }\n @if(item?.isImage) {\n <picture class=\"ecl-picture ecl-gallery__picture ecl-gallery__slider-image\">\n @for(el of item.galleryPicture?.sources; track el.srcset) {\n <source [attr.srcset]=\"el.srcset\" [attr.media]=\" el.media\">\n }\n <img [attr.alt]=\"item?.galleryPicture?.img.alt || null\"\n [src]=\"item?.galleryPicture?.img.src\"\n [attr.loading]=\"item?.galleryPicture?.img.loading || null\" />\n </picture>\n }\n @if(item?.isVideo) {\n <video controls=\"controls\" class=\"ecl-gallery__slider-video\" [attr.aria-label]=\"item.title + ' - Video player'\"\n [attr.poster]=\"item.mediaChild?.poster\">\n @for (el of item.mediaChild?.sources; track el.src) {\n <source [attr.src]=\"el.src\" [attr.type]=\"el.type\" />\n }\n @for (elem of item.mediaChild?.tracks; track elem.src) {\n <track [attr.src]=\"elem.src\" [attr.kind]=\"elem.kind\" [attr.srcLang]=\"elem.srcLang\"\n [attr.label]=\"elem.label\" />\n }\n </video>\n }\n </div>\n </section>\n <footer #footer class=\"ecl-gallery__detail\">\n <div class=\"ecl-container\">\n <div class=\"ecl-gallery__detail-container\">\n <div class=\"ecl-gallery__pager\">\n <div class=\"ecl-gallery__detail-counter\">\n <span>{{ itemIndex }}</span> {{ 'ecl.common.OF' | translate }} <span>{{ itemsCount }}</span>\n </div>\n <div class=\"ecl-gallery__controls\">\n <button eclButton class=\"ecl-gallery__slider-previous\" variant=\"tertiary\" isIconOnly\n (click)=\"onPrevious($event)\">\n <ecl-icon icon=\"corner-arrow\" size=\"m\" transform=\"rotate-270\"></ecl-icon>\n <span eclButtonLabel>\n {{ 'ecl.common.PREVIOUS' | translate }}\n </span>\n </button>\n <button eclButton class=\"ecl-gallery__slider-next\" variant=\"tertiary\" isIconOnly\n (click)=\"onNext($event)\">\n <span eclButtonLabel>\n {{ 'ecl.common.NEXT' | translate }}\n </span>\n <ecl-icon icon=\"corner-arrow\" size=\"m\" transform=\"rotate-90\"></ecl-icon>\n </button>\n </div>\n </div>\n <div class=\"ecl-gallery__detail-actions\">\n <ng-container *ngTemplateOutlet=\"links\"></ng-container>\n </div>\n </div>\n <div class=\"ecl-gallery__detail-description\">\n @if(isMobile) {\n <div class=\"ecl-gallery__detail-actions-mobile\">\n <ng-container *ngTemplateOutlet=\"links\"></ng-container>\n </div>\n }\n @if(item?.title) {\n <span class=\"ecl-gallery__title\" [id]=\"item?.itemId\">{{ item?.title }}</span>\n }\n @if(item?.description) {\n <span class=\"ecl-gallery__caption\">{{ item?.description }}</span>\n }\n @if(item?.meta) {\n <span class=\"ecl-gallery__meta\">{{ item?.meta }}</span>\n }\n </div>\n </div>\n </footer>\n</dialog>\n\n<ng-template #links>\n @if(canBeOpenInFullScreen()) {\n <a eclLink [attr.aria-describedby]=\"item?.titleId\" variant=\"standalone\"\n class=\"ecl-gallery__download\" [href]=\"item?.getDownloadLink()\" target=\"_blank\"\n (click)=\"onFullScreenOpen($event)\" isInverted>\n <span eclLinkLabel>{{ 'ecl.gallery.VIEW-ORIGINAL' | translate }}</span>\n <ecl-icon icon=\"fullscreen\" size=\"fluid\" focusable=\"false\"></ecl-icon>\n </a>\n }\n @if(canBeShared()) {\n <a [attr.aria-describedby]=\"item?.titleId\" eclLink variant=\"standalone\" isInverted\n class=\"ecl-gallery__share\" href=\"\" (click)=\"onShare($event)\">\n <span eclLinkLabel>{{ 'ecl.common.SHARE' | translate }}</span>\n <ecl-icon icon=\"share\" size=\"fluid\" focusable=\"false\"></ecl-icon>\n </a>\n }\n</ng-template>", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: i1$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: EclButtonComponent, selector: "button[eclButton], button[ecl-button], a[eclButton]", inputs: ["isIconOnly", "variant", "containerStyleClass"] }, { kind: "directive", type: EclButtonLabelDirective, selector: "[eclButtonLabel]" }, { kind: "component", type: EclIconComponent, selector: "ecl-icon", inputs: ["iconSet", "icon", "size", "color", "transform", "ariaLabelledby", "role", "title", "ariaHidden", "focusable", "isFlipHorizontal"] }, { kind: "directive", type: EclLinkDirective, selector: "[eclLink]", inputs: ["isInverted", "isIconOnly", "isNoVisited", "variant"] }, { kind: "directive", type: EclLinkLabelDirective, selector: "[eclLinkLabel]" }, { kind: "pipe", type: i1$2.TranslatePipe, name: "translate" }] }); }
9904
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.8", type: EclGalleryComponent, selector: "ecl-gallery", inputs: { isOpenInFullScreenPossible: ["isOpenInFullScreenPossible", "isOpenInFullScreenPossible", booleanAttribute], isShareable: ["isShareable", "isShareable", booleanAttribute], isFullWidth: ["isFullWidth", "isFullWidth", booleanAttribute], isNoOverlay: ["isNoOverlay", "isNoOverlay", booleanAttribute], isShowTitleOnHover: ["isShowTitleOnHover", "isShowTitleOnHover", booleanAttribute], maxVisibleItems: ["maxVisibleItems", "maxVisibleItems", numberAttribute], isGrid: ["isGrid", "isGrid", booleanAttribute], column: ["column", "column", numberAttribute], gridTemplate: "gridTemplate", ratio: "ratio", galleryPlayerTitle: "galleryPlayerTitle", videoAriaLabel: "videoAriaLabel", videoLabel: "videoLabel" }, outputs: { show: "show", hide: "hide", openFullScreen: "openFullScreen", share: "share", itemSwitch: "itemSwitch" }, host: { listeners: { "document:keydown.escape": "onEscapeKeydownHandler($event)", "window:resize": "iframeResize($event)" }, properties: { "class": "this.cssClasses", "attr.role": "this.role" } }, queries: [{ propertyName: "galleryFooter", first: true, predicate: EclGalleryFooterComponent, descendants: true }, { propertyName: "galleryItems", predicate: EclGalleryItemComponent }], viewQueries: [{ propertyName: "overlayChild", first: true, predicate: ["overlay"], descendants: true }, { propertyName: "headerChild", first: true, predicate: ["header"], descendants: true }, { propertyName: "footerChild", first: true, predicate: ["footer"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ul class=\"ecl-gallery__list\">\n <ng-content></ng-content>\n</ul>\n\n<ng-content select=\"ecl-gallery-footer\"></ng-content>\n\n<dialog #overlay [attr.open]=\"isDialogVisible || null\" class=\"ecl-gallery__overlay\"\n [attr.aria-label]=\"'ecl.gallery.FULL-SIZE-DISPLAY' | translate\">\n <header #header class=\"ecl-gallery__close\">\n <button (click)=\"onClose($event)\" eclButton class=\"ecl-gallery__close-button\" isIconOnly variant=\"ghost\">\n <span eclButtonLabel>\n {{ 'ecl.common.CLOSE' | translate }}\n </span>\n <ecl-icon icon=\"close\" size=\"m\"></ecl-icon>\n </button>\n </header>\n <section class=\"ecl-gallery__slider\">\n <div class=\"ecl-gallery__slider-media-container\">\n @if(item?.isExternalVideo) {\n <div class=\"ecl-gallery__slider-embed\">\n @if (item?.srVideoAudioDescription) {\n <div class=\"ecl-gallery__slider-embed-audio\">{{item?.srVideoAudioDescription}}</div>\n }\n <iframe [src]=\"item?.getUrlExternalVideo()\" [style.width.px]=\"getIframeWidth()\"\n [style.height.px]=\"getIframeHeight()\" [attr.title]=\"item.title + ' - Video player'\" frameborder=\"0\">\n </iframe>\n </div>\n }\n @if(item?.isImage) {\n <picture class=\"ecl-picture ecl-gallery__picture ecl-gallery__slider-image\">\n @for(el of item.galleryPicture?.sources; track el.srcset) {\n <source [attr.srcset]=\"el.srcset\" [attr.media]=\" el.media\">\n }\n <img [attr.alt]=\"item?.galleryPicture?.img.alt || null\"\n [src]=\"item?.galleryPicture?.img.src\"\n [attr.loading]=\"item?.galleryPicture?.img.loading || null\" />\n </picture>\n }\n @if(item?.isVideo) {\n <video controls=\"controls\" class=\"ecl-gallery__slider-video\" [attr.aria-label]=\"item.title + ' - Video player'\"\n [attr.poster]=\"item.mediaChild?.poster\">\n @for (el of item.mediaChild?.sources; track el.src) {\n <source [attr.src]=\"el.src\" [attr.type]=\"el.type\" />\n }\n @for (elem of item.mediaChild?.tracks; track elem.src) {\n <track [attr.src]=\"elem.src\" [attr.kind]=\"elem.kind\" [attr.srcLang]=\"elem.srcLang\"\n [attr.label]=\"elem.label\" />\n }\n </video>\n }\n </div>\n </section>\n <footer #footer class=\"ecl-gallery__detail\">\n <div class=\"ecl-container\">\n <div class=\"ecl-gallery__detail-container\">\n <div class=\"ecl-gallery__pager\">\n <div class=\"ecl-gallery__detail-counter\">\n <span>{{ itemIndex }}</span> {{ 'ecl.common.OF' | translate }} <span>{{ itemsCount }}</span>\n </div>\n <div class=\"ecl-gallery__controls\">\n <button eclButton class=\"ecl-gallery__slider-previous\" variant=\"tertiary\" isIconOnly\n (click)=\"onPrevious($event)\">\n <ecl-icon icon=\"corner-arrow\" size=\"m\" transform=\"rotate-270\"></ecl-icon>\n <span eclButtonLabel>\n {{ 'ecl.common.PREVIOUS' | translate }}\n </span>\n </button>\n <button eclButton class=\"ecl-gallery__slider-next\" variant=\"tertiary\" isIconOnly\n (click)=\"onNext($event)\">\n <span eclButtonLabel>\n {{ 'ecl.common.NEXT' | translate }}\n </span>\n <ecl-icon icon=\"corner-arrow\" size=\"m\" transform=\"rotate-90\"></ecl-icon>\n </button>\n </div>\n </div>\n <div class=\"ecl-gallery__detail-actions\">\n <ng-container *ngTemplateOutlet=\"links\"></ng-container>\n </div>\n </div>\n <div class=\"ecl-gallery__detail-description\">\n @if(isMobile) {\n <div class=\"ecl-gallery__detail-actions-mobile\">\n <ng-container *ngTemplateOutlet=\"links\"></ng-container>\n </div>\n }\n @if(item?.title) {\n <span class=\"ecl-gallery__title\" [id]=\"item?.itemId\">{{ item?.title }}</span>\n }\n @if(item?.description) {\n <span class=\"ecl-gallery__caption\">{{ item?.description }}</span>\n }\n @if(item?.meta) {\n <span class=\"ecl-gallery__meta\">{{ item?.meta }}</span>\n }\n </div>\n </div>\n </footer>\n</dialog>\n\n<ng-template #links>\n @if(canBeOpenInFullScreen()) {\n <a eclLink [attr.aria-describedby]=\"item?.titleId\" variant=\"standalone\"\n class=\"ecl-gallery__download\" [href]=\"item?.getDownloadLink()\" target=\"_blank\"\n (click)=\"onFullScreenOpen($event)\" isInverted>\n <span eclLinkLabel>{{ 'ecl.gallery.VIEW-ORIGINAL' | translate }}</span>\n <ecl-icon icon=\"fullscreen\" size=\"fluid\" focusable=\"false\"></ecl-icon>\n </a>\n }\n @if(canBeShared()) {\n <a [attr.aria-describedby]=\"item?.titleId\" eclLink variant=\"standalone\" isInverted\n class=\"ecl-gallery__share\" href=\"\" (click)=\"onShare($event)\">\n <span eclLinkLabel>{{ 'ecl.common.SHARE' | translate }}</span>\n <ecl-icon icon=\"share\" size=\"fluid\" focusable=\"false\"></ecl-icon>\n </a>\n }\n</ng-template>", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: i1$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: EclButtonComponent, selector: "button[eclButton], button[ecl-button], a[eclButton]", inputs: ["isIconOnly", "variant", "containerStyleClass"] }, { kind: "directive", type: EclButtonLabelDirective, selector: "[eclButtonLabel]" }, { kind: "component", type: EclIconComponent, selector: "ecl-icon", inputs: ["iconSet", "icon", "size", "color", "transform", "ariaLabelledby", "role", "title", "ariaHidden", "focusable", "isFlipHorizontal"] }, { kind: "directive", type: EclLinkDirective, selector: "[eclLink]", inputs: ["isInverted", "isIconOnly", "isNoVisited", "variant"] }, { kind: "directive", type: EclLinkLabelDirective, selector: "[eclLinkLabel]" }, { kind: "pipe", type: i1$2.TranslatePipe, name: "translate" }] }); }
9787
9905
  }
9788
9906
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EclGalleryComponent, decorators: [{
9789
9907
  type: Component,
@@ -9815,6 +9933,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
9815
9933
  }], column: [{
9816
9934
  type: Input,
9817
9935
  args: [{ transform: numberAttribute }]
9936
+ }], gridTemplate: [{
9937
+ type: Input
9818
9938
  }], ratio: [{
9819
9939
  type: Input
9820
9940
  }], galleryPlayerTitle: [{
@@ -10084,6 +10204,7 @@ class EclInpageNavigationComponent extends ECLBaseDirective {
10084
10204
  this.MIN_DISTANCE_TOP = 10;
10085
10205
  this.ICON_SIZE_EC_THEME = 'xs';
10086
10206
  this.ICON_SIZE_EU_THEME = 's';
10207
+ this.TABLET_BREAKPOINT = 996;
10087
10208
  this.differ = this.differs.find([]).create();
10088
10209
  afterNextRender(() => {
10089
10210
  this.subscribeToCDKScrollEvent();
@@ -10156,8 +10277,12 @@ class EclInpageNavigationComponent extends ECLBaseDirective {
10156
10277
  const viewportHeight = window.innerHeight;
10157
10278
  const viewportWidth = window.innerWidth;
10158
10279
  let topPosition = 0;
10159
- if (viewportWidth < 996) {
10160
- topPosition = this.togglerButton.nativeElement.getBoundingClientRect().bottom;
10280
+ if (viewportWidth < this.TABLET_BREAKPOINT) {
10281
+ const toggleWrapper = this.toggleWrapper.nativeElement;
10282
+ if (toggleWrapper) {
10283
+ topPosition = toggleWrapper.getBoundingClientRect().bottom +
10284
+ parseFloat(window.getComputedStyle(toggleWrapper).marginBottom);
10285
+ }
10161
10286
  }
10162
10287
  else if (this.eclTitle) {
10163
10288
  topPosition = this.navTittle.nativeElement.getBoundingClientRect().bottom;
@@ -10274,11 +10399,11 @@ class EclInpageNavigationComponent extends ECLBaseDirective {
10274
10399
  });
10275
10400
  }
10276
10401
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EclInpageNavigationComponent, deps: [{ token: i0.ElementRef }, { token: EclRtlService }, { token: EclThemeService }, { token: i0.IterableDiffers }, { token: i2.ScrollDispatcher }, { token: i0.NgZone }, { token: i1$4.BreakpointObserver }, { token: i2.ViewportRuler }], target: i0.ɵɵFactoryTarget.Component }); }
10277
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.8", type: EclInpageNavigationComponent, selector: "ecl-inpage-navigation", inputs: { eclTitle: "eclTitle", marginTop: "marginTop", marginBottom: "marginBottom" }, outputs: { sectionEnter: "sectionEnter" }, queries: [{ propertyName: "eclNavigationLinkItems", predicate: EclInpageNavigationItemComponent }], viewQueries: [{ propertyName: "togglerButton", first: true, predicate: ["togglerButton"], descendants: true }, { propertyName: "listContainer", first: true, predicate: ["listContainer"], descendants: true }, { propertyName: "navTittle", first: true, predicate: ["navTittle"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ecl-sticky-container [marginTop]=\"marginTop\" [marginBottom]=\"marginBottom\">\n <nav\n aria-labelledby=\"ecl-inpage-navigation-default\"\n class=\"ecl-inpage-navigation\"\n [class.ecl-inpage-navigation--visible]=\"hasActiveSection\"\n [class.ecl-inpage-navigation--rtl]=\"isRtl\">\n <div #navTittle id=\"ecl-inpage-navigation-default\" class=\"ecl-inpage-navigation__title\">\n {{ eclTitle || 'ecl.inpage-navigation.PAGE-CONTENTS' | translate }}\n </div>\n <div class=\"ecl-inpage-navigation__body\">\n <div class=\"ecl-inpage-navigation__trigger-wrapper\">\n <button\n #togglerButton\n id=\"ecl-inpage-navigation-default-trigger\"\n type=\"button\"\n class=\"ecl-inpage-navigation__trigger\"\n aria-controls=\"ecl-inpage-navigation-list\"\n [attr.aria-expanded]=\"isButtonExpanded\"\n (click)=\"onExpandButtonClick()\"\n (keydown)=\"onExpandButtonKeydown($event)\">\n <span class=\"ecl-inpage-navigation__trigger-current\">\n {{ currentNavigationLinkItem?.label }}\n </span>\n <ecl-icon icon=\"corner-arrow\" [size]=\"sizeIcon\" transform=\"rotate-180\"\n class=\"ecl-inpage-navigation__trigger-icon\" title=\"Show full page table of contents\"> </ecl-icon>\n </button>\n </div>\n <ul\n #listContainer\n id=\"ecl-inpage-navigation-default-list\"\n class=\"ecl-inpage-navigation__list\"\n [class.ecl-inpage-navigation__list--visible]=\"isButtonExpanded\"\n [style.max-height.px]=\"listMaxHeight\"\n [attr.aria-expanded]=\"isButtonExpanded\">\n <ng-content></ng-content>\n </ul>\n </div>\n </nav>\n</ecl-sticky-container>\n", styles: ["@media (min-width: 996px){.ecl-inpage-navigation__list{display:block!important}}\n"], dependencies: [{ kind: "component", type: EclStickyContainerComponent, selector: "ecl-sticky-container", inputs: ["isEnabled", "marginTop", "marginBottom"] }, { kind: "component", type: EclIconComponent, selector: "ecl-icon", inputs: ["iconSet", "icon", "size", "color", "transform", "ariaLabelledby", "role", "title", "ariaHidden", "focusable", "isFlipHorizontal"] }, { kind: "pipe", type: i1$2.TranslatePipe, name: "translate" }] }); }
10402
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.8", type: EclInpageNavigationComponent, selector: "ecl-inpage-navigation", inputs: { eclTitle: "eclTitle", marginTop: "marginTop", marginBottom: "marginBottom" }, outputs: { sectionEnter: "sectionEnter" }, queries: [{ propertyName: "eclNavigationLinkItems", predicate: EclInpageNavigationItemComponent }], viewQueries: [{ propertyName: "togglerButton", first: true, predicate: ["togglerButton"], descendants: true }, { propertyName: "toggleWrapper", first: true, predicate: ["toggleWrapper"], descendants: true }, { propertyName: "listContainer", first: true, predicate: ["listContainer"], descendants: true }, { propertyName: "navTittle", first: true, predicate: ["navTittle"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ecl-sticky-container [marginTop]=\"marginTop\" [marginBottom]=\"marginBottom\">\n <nav\n aria-labelledby=\"ecl-inpage-navigation-default\"\n class=\"ecl-inpage-navigation\"\n [class.ecl-inpage-navigation--visible]=\"hasActiveSection\"\n [class.ecl-inpage-navigation--rtl]=\"isRtl\">\n <div #navTittle id=\"ecl-inpage-navigation-default\" class=\"ecl-inpage-navigation__title\">\n {{ eclTitle || 'ecl.inpage-navigation.PAGE-CONTENTS' | translate }}\n </div>\n <div class=\"ecl-inpage-navigation__body\">\n <div #toggleWrapper class=\"ecl-inpage-navigation__trigger-wrapper\">\n <button\n #togglerButton\n id=\"ecl-inpage-navigation-default-trigger\"\n type=\"button\"\n class=\"ecl-inpage-navigation__trigger\"\n aria-controls=\"ecl-inpage-navigation-list\"\n [attr.aria-expanded]=\"isButtonExpanded\"\n (click)=\"onExpandButtonClick()\"\n (keydown)=\"onExpandButtonKeydown($event)\">\n <span class=\"ecl-inpage-navigation__trigger-current\">\n {{ currentNavigationLinkItem?.label }}\n </span>\n <ecl-icon icon=\"corner-arrow\" [size]=\"sizeIcon\" transform=\"rotate-180\"\n class=\"ecl-inpage-navigation__trigger-icon\" title=\"Show full page table of contents\"> </ecl-icon>\n </button>\n </div>\n <ul\n #listContainer\n id=\"ecl-inpage-navigation-default-list\"\n class=\"ecl-inpage-navigation__list\"\n [class.ecl-inpage-navigation__list--visible]=\"isButtonExpanded\"\n [style.max-height.px]=\"listMaxHeight\"\n [attr.aria-expanded]=\"isButtonExpanded\">\n <ng-content></ng-content>\n </ul>\n </div>\n </nav>\n</ecl-sticky-container>\n", styles: ["@media (min-width: 996px){.ecl-inpage-navigation__list{display:block!important}}\n"], dependencies: [{ kind: "component", type: EclStickyContainerComponent, selector: "ecl-sticky-container", inputs: ["isEnabled", "marginTop", "marginBottom"] }, { kind: "component", type: EclIconComponent, selector: "ecl-icon", inputs: ["iconSet", "icon", "size", "color", "transform", "ariaLabelledby", "role", "title", "ariaHidden", "focusable", "isFlipHorizontal"] }, { kind: "pipe", type: i1$2.TranslatePipe, name: "translate" }] }); }
10278
10403
  }
10279
10404
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EclInpageNavigationComponent, decorators: [{
10280
10405
  type: Component,
10281
- args: [{ selector: 'ecl-inpage-navigation', template: "<ecl-sticky-container [marginTop]=\"marginTop\" [marginBottom]=\"marginBottom\">\n <nav\n aria-labelledby=\"ecl-inpage-navigation-default\"\n class=\"ecl-inpage-navigation\"\n [class.ecl-inpage-navigation--visible]=\"hasActiveSection\"\n [class.ecl-inpage-navigation--rtl]=\"isRtl\">\n <div #navTittle id=\"ecl-inpage-navigation-default\" class=\"ecl-inpage-navigation__title\">\n {{ eclTitle || 'ecl.inpage-navigation.PAGE-CONTENTS' | translate }}\n </div>\n <div class=\"ecl-inpage-navigation__body\">\n <div class=\"ecl-inpage-navigation__trigger-wrapper\">\n <button\n #togglerButton\n id=\"ecl-inpage-navigation-default-trigger\"\n type=\"button\"\n class=\"ecl-inpage-navigation__trigger\"\n aria-controls=\"ecl-inpage-navigation-list\"\n [attr.aria-expanded]=\"isButtonExpanded\"\n (click)=\"onExpandButtonClick()\"\n (keydown)=\"onExpandButtonKeydown($event)\">\n <span class=\"ecl-inpage-navigation__trigger-current\">\n {{ currentNavigationLinkItem?.label }}\n </span>\n <ecl-icon icon=\"corner-arrow\" [size]=\"sizeIcon\" transform=\"rotate-180\"\n class=\"ecl-inpage-navigation__trigger-icon\" title=\"Show full page table of contents\"> </ecl-icon>\n </button>\n </div>\n <ul\n #listContainer\n id=\"ecl-inpage-navigation-default-list\"\n class=\"ecl-inpage-navigation__list\"\n [class.ecl-inpage-navigation__list--visible]=\"isButtonExpanded\"\n [style.max-height.px]=\"listMaxHeight\"\n [attr.aria-expanded]=\"isButtonExpanded\">\n <ng-content></ng-content>\n </ul>\n </div>\n </nav>\n</ecl-sticky-container>\n", styles: ["@media (min-width: 996px){.ecl-inpage-navigation__list{display:block!important}}\n"] }]
10406
+ args: [{ selector: 'ecl-inpage-navigation', template: "<ecl-sticky-container [marginTop]=\"marginTop\" [marginBottom]=\"marginBottom\">\n <nav\n aria-labelledby=\"ecl-inpage-navigation-default\"\n class=\"ecl-inpage-navigation\"\n [class.ecl-inpage-navigation--visible]=\"hasActiveSection\"\n [class.ecl-inpage-navigation--rtl]=\"isRtl\">\n <div #navTittle id=\"ecl-inpage-navigation-default\" class=\"ecl-inpage-navigation__title\">\n {{ eclTitle || 'ecl.inpage-navigation.PAGE-CONTENTS' | translate }}\n </div>\n <div class=\"ecl-inpage-navigation__body\">\n <div #toggleWrapper class=\"ecl-inpage-navigation__trigger-wrapper\">\n <button\n #togglerButton\n id=\"ecl-inpage-navigation-default-trigger\"\n type=\"button\"\n class=\"ecl-inpage-navigation__trigger\"\n aria-controls=\"ecl-inpage-navigation-list\"\n [attr.aria-expanded]=\"isButtonExpanded\"\n (click)=\"onExpandButtonClick()\"\n (keydown)=\"onExpandButtonKeydown($event)\">\n <span class=\"ecl-inpage-navigation__trigger-current\">\n {{ currentNavigationLinkItem?.label }}\n </span>\n <ecl-icon icon=\"corner-arrow\" [size]=\"sizeIcon\" transform=\"rotate-180\"\n class=\"ecl-inpage-navigation__trigger-icon\" title=\"Show full page table of contents\"> </ecl-icon>\n </button>\n </div>\n <ul\n #listContainer\n id=\"ecl-inpage-navigation-default-list\"\n class=\"ecl-inpage-navigation__list\"\n [class.ecl-inpage-navigation__list--visible]=\"isButtonExpanded\"\n [style.max-height.px]=\"listMaxHeight\"\n [attr.aria-expanded]=\"isButtonExpanded\">\n <ng-content></ng-content>\n </ul>\n </div>\n </nav>\n</ecl-sticky-container>\n", styles: ["@media (min-width: 996px){.ecl-inpage-navigation__list{display:block!important}}\n"] }]
10282
10407
  }], ctorParameters: () => [{ type: i0.ElementRef }, { type: EclRtlService }, { type: EclThemeService }, { type: i0.IterableDiffers }, { type: i2.ScrollDispatcher }, { type: i0.NgZone }, { type: i1$4.BreakpointObserver }, { type: i2.ViewportRuler }], propDecorators: { eclTitle: [{
10283
10408
  type: Input
10284
10409
  }], marginTop: [{
@@ -10288,6 +10413,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
10288
10413
  }], togglerButton: [{
10289
10414
  type: ViewChild,
10290
10415
  args: ['togglerButton']
10416
+ }], toggleWrapper: [{
10417
+ type: ViewChild,
10418
+ args: ['toggleWrapper']
10291
10419
  }], listContainer: [{
10292
10420
  type: ViewChild,
10293
10421
  args: ['listContainer']
@@ -14695,6 +14823,38 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
14695
14823
  }]
14696
14824
  }] });
14697
14825
 
14826
+ class EclSeparatorDirective extends ECLBaseDirective {
14827
+ constructor() {
14828
+ super(...arguments);
14829
+ this.hasClass = true;
14830
+ }
14831
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EclSeparatorDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
14832
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.8", type: EclSeparatorDirective, selector: "hr[eclSeparator]", host: { properties: { "class.ecl-separator": "this.hasClass" } }, usesInheritance: true, ngImport: i0 }); }
14833
+ }
14834
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EclSeparatorDirective, decorators: [{
14835
+ type: Directive,
14836
+ args: [{
14837
+ selector: 'hr[eclSeparator]',
14838
+ }]
14839
+ }], propDecorators: { hasClass: [{
14840
+ type: HostBinding,
14841
+ args: ['class.ecl-separator']
14842
+ }] } });
14843
+
14844
+ class EclSeparatorModule {
14845
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EclSeparatorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
14846
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: EclSeparatorModule, declarations: [EclSeparatorDirective], imports: [CommonModule], exports: [EclSeparatorDirective] }); }
14847
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EclSeparatorModule, imports: [CommonModule] }); }
14848
+ }
14849
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: EclSeparatorModule, decorators: [{
14850
+ type: NgModule,
14851
+ args: [{
14852
+ imports: [CommonModule],
14853
+ exports: [EclSeparatorDirective],
14854
+ declarations: [EclSeparatorDirective],
14855
+ }]
14856
+ }] });
14857
+
14698
14858
  class EclSocialMediaFollowComponent extends ECLBaseDirective {
14699
14859
  constructor() {
14700
14860
  super(...arguments);
@@ -16766,6 +16926,7 @@ const MODULES = [
16766
16926
  EclRatingFieldComponentModule,
16767
16927
  EclSearchFormComponentModule,
16768
16928
  EclSelectDirectiveModule,
16929
+ EclSeparatorModule,
16769
16930
  EclSiteFooterComponentModule,
16770
16931
  EclSiteHeaderComponentModule,
16771
16932
  EclSocialMediaFollowComponentModule,
@@ -16829,6 +16990,7 @@ class EclAllModule {
16829
16990
  EclRatingFieldComponentModule,
16830
16991
  EclSearchFormComponentModule,
16831
16992
  EclSelectDirectiveModule,
16993
+ EclSeparatorModule,
16832
16994
  EclSiteFooterComponentModule,
16833
16995
  EclSiteHeaderComponentModule,
16834
16996
  EclSocialMediaFollowComponentModule,
@@ -16888,6 +17050,7 @@ class EclAllModule {
16888
17050
  EclRatingFieldComponentModule,
16889
17051
  EclSearchFormComponentModule,
16890
17052
  EclSelectDirectiveModule,
17053
+ EclSeparatorModule,
16891
17054
  EclSiteFooterComponentModule,
16892
17055
  EclSiteHeaderComponentModule,
16893
17056
  EclSocialMediaFollowComponentModule,
@@ -16948,6 +17111,7 @@ class EclAllModule {
16948
17111
  EclRatingFieldComponentModule,
16949
17112
  EclSearchFormComponentModule,
16950
17113
  EclSelectDirectiveModule,
17114
+ EclSeparatorModule,
16951
17115
  EclSiteFooterComponentModule,
16952
17116
  EclSiteHeaderComponentModule,
16953
17117
  EclSocialMediaFollowComponentModule,
@@ -16976,5 +17140,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
16976
17140
  * Generated bundle index. Do not edit.
16977
17141
  */
16978
17142
 
16979
- export { ECLBaseDirective, ECLClickOutsideDirective, ECLFormLabelOptionalDirective, ECLTheme, ECL_DATE_PICKER_VALUE_ACCESSOR, ECL_RATINGFIELD_VALUE_ACCESSOR, ECL_SEARCH_FORM_VALUE_ACCESSOR, ECL_SITE_HEADER_SEARCH_VALUE_ACCESSOR, EclAccordionComponent, EclAccordionComponentModule, EclAccordionItemComponent, EclAccordionToggleEvent, EclAllModule, EclAppComponent, EclAppComponentModule, EclAppLanguageDismissEvent, EclBannerComponent, EclBannerComponentModule, EclBannerDescriptionDirective, EclBannerDescriptionLinkDirective, EclBannerDescriptionTextDirective, EclBannerImageDirective, EclBannerPictureDirective, EclBannerTitleDirective, EclBannerTitleLinkDirective, EclBannerTitleTextDirective, EclBannerVideoDirective, EclBaseEvent, EclBlockquoteComponent, EclBlockquoteComponentModule, EclBlockquoteImageDirective, EclBlockquotePictureDirective, EclBreadcrumbComponent, EclBreadcrumbComponentModule, EclBreadcrumbSegmentClickEvent, EclBreadcrumbSegmentComponent, EclButtonComponent, EclButtonComponentModule, EclButtonLabelDirective, EclCardBodyComponent, EclCardComponent, EclCardComponentModule, EclCardImageDirective, EclCardPictureDirective, EclCarouselComponent, EclCarouselComponentModule, EclCarouselItemComponent, EclCategoryFilterComponent, EclCategoryFilterItemComponent, EclCategoryFilterItemSelectEvent, EclCategoryFilterListComponent, EclCategoryFilterModule, EclCheckboxDirective, EclCheckboxHelpComponent, EclCheckboxInputDirective, EclCheckboxLabelComponent, EclCheckboxModule, EclContentBlockComponent, EclContentBlockComponentModule, EclContentBlockDescriptionDirective, EclContentBlockLabelDirective, EclContentBlockLabelsDirective, EclContentBlockLinkDirective, EclContentBlockLinksContainerDirective, EclContentBlockLinksDirective, EclContentBlockListContainerDirective, EclContentBlockListDirective, EclContentBlockPrimaryMetaDirective, EclContentBlockPrimaryMetasDirective, EclContentBlockSecondaryMetaDirective, EclContentBlockSecondaryMetaIconDirective, EclContentBlockSecondaryMetaLabelDirective, EclContentBlockSecondaryMetasDirective, EclContentBlockTagDirective, EclContentBlockTagsDirective, EclContentBlockTitleDirective, EclContentItemComponent, EclContentItemComponentModule, EclContentItemImageDirective, EclContentItemPictureDirective, EclDateBlockComponent, EclDateBlockComponentModule, EclDatePickerDatePickedEvent, EclDatePickerDirective, EclDatePickerDirectiveModule, EclDefaultLanguageService, EclDescriptionListDefinitionComponent, EclDescriptionListDefinitionItemDirective, EclDescriptionListDefinitionListDirective, EclDescriptionListDirective, EclDescriptionListTermDirective, EclDomEvent, EclExpandableComponent, EclExpandableComponentModule, EclExpandableToggleEvent, EclFactFiguresComponent, EclFactFiguresComponentModule, EclFactFiguresDescriptionComponent, EclFactFiguresItemComponent, EclFactFiguresTitleComponent, EclFactFiguresValueComponent, EclFactFiguresViewAllComponent, EclFeaturedComponent, EclFeaturedItemComponent, EclFeaturedItemDescriptionComponent, EclFeaturedItemFooterComponent, EclFeaturedItemFooterLinkDirective, EclFeaturedItemFooterPictureDirective, EclFeaturedItemLinkDirective, EclFeaturedModule, EclFeedbackMessageDirective, EclFeedbackMessageDirectiveModule, EclFileComponent, EclFileComponentModule, EclFileDownloadDirective, EclFileImageDirective, EclFileItemComponent, EclFileItemsComponent, EclFileItemsToggleEvent, EclFilePictureDirective, EclFileTaxonomyComponent, EclFileTitleDirective, EclFileTranslationDownloadDirective, EclFileUploadDirective, EclFileUploadDirectiveModule, EclFileUploadFileSelectedEvent, EclFormGroupComponent, EclFormGroupComponentModule, EclFormLabelComponent, EclFormLabelComponentModule, EclGalleryComponent, EclGalleryComponentModule, EclGalleryFooterComponent, EclGalleryFullScreenEvent, EclGalleryHideEvent, EclGalleryItemClickEvent, EclGalleryItemComponent, EclGalleryItemEvent, EclGalleryMediaDirective, EclGalleryMediaSource, EclGalleryMediaTrack, EclGalleryPictureDirective, EclGalleryPictureImage, EclGalleryPictureSource, EclGalleryShareEvent, EclGalleryShowEvent, EclGalleryThumbnailDirective, EclGalleryToggleItemsEvent, EclHelpBlockDirective, EclHelpBlockDirectiveModule, EclHiddenDirective, EclHiddenModule, EclIconComponent, EclIconComponentModule, EclInpageNavigationComponent, EclInpageNavigationComponentModule, EclInpageNavigationItemClickEvent, EclInpageNavigationItemComponent, EclInpageNavigationSectionEnterEvent, EclLabelDirective, EclLabelDirectiveModule, EclLanguageService, EclLinkDirective, EclLinkDirectiveModule, EclLinkLabelDirective, EclListDirectiveModule, EclListIllustrationComponent, EclListIllustrationComponentModule, EclListIllustrationIconDirective, EclListIllustrationImageDirective, EclListIllustrationItemComponent, EclListIllustrationPictureDirective, EclLoadingIndicatorComponent, EclLoadingIndicatorComponentModule, EclLoadingIndicatorLabelDirective, EclLoadingIndicatorOverlayDirective, EclMediaContainerComponent, EclMediaContainerComponentModule, EclMediaContainerIframeDirective, EclMediaContainerItemAudioDescriptionDirective, EclMediaContainerItemDirective, EclMediaContainerPictureDirective, EclMegaMenuComponent, EclMegaMenuComponentModule, EclMegaMenuContainerDirective, EclMegaMenuFeaturedComponent, EclMegaMenuFeaturedImageDirective, EclMegaMenuFeaturedListDirective, EclMegaMenuFeaturedListItemDirective, EclMegaMenuFeaturedPictureDirective, EclMegaMenuInfoComponent, EclMegaMenuItemComponent, EclMegaMenuListDirective, EclMegaMenuSpacerDirective, EclMegaMenuSubitemComponent, EclMegaMenuSublistDirective, EclMenuComponent, EclMenuComponentModule, EclMenuItemCaretEvent, EclMenuItemComponent, EclMenuItemFocusEvent, EclMenuItemHoverEvent, EclMenuItemHoverOutEvent, EclMenuItemKeydownEvent, EclMenuItemParentFocusEvent, EclMenuItemSelectEvent, EclMenuMegaComponent, EclMenuMegaItemComponent, EclModalBodyComponent, EclModalBodyFixedContentDirective, EclModalCloseDirective, EclModalCloseEvent, EclModalComponent, EclModalComponentModule, EclModalFooterComponent, EclModalHeaderComponent, EclModalOpenEvent, EclModalTriggerDirective, EclMultiselectComponent, EclMultiselectComponentModule, EclMultiselectOptionDirective, EclNavigationListComponent, EclNavigationListComponentModule, EclNavigationListImageComponent, EclNavigationListImageDirective, EclNavigationListItemComponent, EclNavigationListPictureDirective, EclNewsTickerComponent, EclNewsTickerComponentModule, EclNewsTickerIconDirective, EclNewsTickerItemComponent, EclNewsTickerItemEvent, EclNotificationCloseEvent, EclNotificationComponent, EclNotificationComponentModule, EclNotificationTitleDirective, EclOrderedListDirective, EclOrderedListItemDirective, EclPageHeaderBackgroundImageDirective, EclPageHeaderBackgroundPictureDirective, EclPageHeaderComponent, EclPageHeaderComponentModule, EclPageHeaderDescriptionContainerDirective, EclPageHeaderDescriptionDirective, EclPageHeaderDescriptionPictureDirective, EclPageHeaderDescriptionThumbnailDirective, EclPageHeaderInfoDirective, EclPageHeaderMetaDirective, EclPageHeaderMetaItemDirective, EclPageHeaderTitleDirective, EclPaginationComponent, EclPaginationComponentModule, EclPaginationEvent, EclPaginationItemClickEvent, EclPaginationItemComponent, EclPopoverComponent, EclPopoverComponentModule, EclPopoverContentDirective, EclPopoverToggleDirective, EclRadioDirective, EclRadioDirectiveModule, EclRadioHelpComponent, EclRadioInputDirective, EclRadioLabelComponent, EclRangeBubbleComponent, EclRangeDirective, EclRangeDirectiveModule, EclRangeEvent, EclRangeValueComponent, EclRatingChangeEvent, EclRatingFieldComponent, EclRatingFieldComponentModule, EclRtlService, EclSearchFormComponent, EclSearchFormComponentModule, EclSearchFormEvent, EclSelectContainerComponent, EclSelectDirective, EclSelectDirectiveModule, EclSiteFooterColumnDirective, EclSiteFooterComponent, EclSiteFooterComponentModule, EclSiteFooterContentDirective, EclSiteFooterDescriptionDirective, EclSiteFooterFixedContentECComponent, EclSiteFooterFixedContentEUComponent, EclSiteFooterLinkDirective, EclSiteFooterListDirective, EclSiteFooterListItemDirective, EclSiteFooterLogoDirective, EclSiteFooterLogoImageDirective, EclSiteFooterLogoItemDirective, EclSiteFooterLogoLinkDirective, EclSiteFooterLogoListDirective, EclSiteFooterPictureDirective, EclSiteFooterRowDirective, EclSiteFooterSectionDirective, EclSiteFooterTitleDirective, EclSiteFooterTitleLinkDirective, EclSiteHeaderActionComponent, EclSiteHeaderAreaDataService, EclSiteHeaderBannerTopComponent, EclSiteHeaderComponent, EclSiteHeaderComponentModule, EclSiteHeaderCtaDirective, EclSiteHeaderEnvironmentComponent, EclSiteHeaderImageDirective, EclSiteHeaderLanguageClickEvent, EclSiteHeaderLanguageCloseEvent, EclSiteHeaderLanguageComponent, EclSiteHeaderLanguagePopoverComponent, EclSiteHeaderLanguageSelectedEvent, EclSiteHeaderLinkDirective, EclSiteHeaderLoginBoxToggleEvent, EclSiteHeaderLoginComponent, EclSiteHeaderLoginDescriptionDirective, EclSiteHeaderLoginEvent, EclSiteHeaderLoginSeparatorDirective, EclSiteHeaderLogoClickEvent, EclSiteHeaderNotificationComponent, EclSiteHeaderPictureDirective, EclSiteHeaderSearchComponent, EclSiteHeaderSearchEvent, EclSiteHeaderSearchToggleEvent, EclSlideEvent, EclSocialMediaFollowComponent, EclSocialMediaFollowComponentModule, EclSocialMediaFollowItemClickEvent, EclSocialMediaFollowItemComponent, EclSocialMediaFollowLinkDirective, EclSocialMediaShareComponent, EclSocialMediaShareComponentModule, EclSocialMediaShareItemClickEvent, EclSocialMediaShareItemComponent, EclSocialMediaShareLinkDirective, EclSortTableEvent, EclSplashPageComponent, EclSplashPageComponentModule, EclSplashPageLanguageCategoryComponent, EclSplashPageLanguageContainerComponent, EclSplashPageLanguageItemDirective, EclSplashPageLanguageLinkComponent, EclSplashPageLanguageListDirective, EclSplashPageLogoImageDirective, EclSplashPageLogoLinkDirective, EclSplashPagePictureDirective, EclStickyContainerComponent, EclStickyContainerComponentModule, EclTabComponent, EclTabLabelComponent, EclTabMoreComponent, EclTabSelectEvent, EclTableBodyDirective, EclTableCaptionDirective, EclTableCellDirective, EclTableCellGroupDirective, EclTableDirective, EclTableDirectiveModule, EclTableHeadDirective, EclTableHeaderDirective, EclTableResponsiveDirective, EclTableRowDirective, EclTableSortButtonComponent, EclTabsComponent, EclTabsComponentModule, EclTagComponent, EclTagComponentModule, EclTagIconExternalDirective, EclTagRemoveEvent, EclTagSetDirective, EclTagSetItemDirective, EclTextAreaDirective, EclTextAreaDirectiveModule, EclTextInputDirective, EclTextInputDirectiveModule, EclThemeService, EclTimelineComponent, EclTimelineComponentModule, EclTimelineItemComponent, EclTimelineItemLabelDirective, EclTimelineItemTitleDirective, EclTimelineItemToggleEvent, EclTimelineItemTogglerComponent, EclUnorderedListDirective, EclUnorderedListItemDirective, EclUserDeviceService, KeyCode, ShiftDirection, SortOrder, hasNextSiblingWithAttribute, hasPreviousSiblingWithAttribute };
17143
+ export { ECLBaseDirective, ECLClickOutsideDirective, ECLFormLabelOptionalDirective, ECLTheme, ECL_DATE_PICKER_VALUE_ACCESSOR, ECL_RATINGFIELD_VALUE_ACCESSOR, ECL_SEARCH_FORM_VALUE_ACCESSOR, ECL_SITE_HEADER_SEARCH_VALUE_ACCESSOR, EclAccordionComponent, EclAccordionComponentModule, EclAccordionItemComponent, EclAccordionToggleEvent, EclAllModule, EclAppComponent, EclAppComponentModule, EclAppLanguageDismissEvent, EclBannerComponent, EclBannerComponentModule, EclBannerDescriptionDirective, EclBannerDescriptionLinkDirective, EclBannerDescriptionTextDirective, EclBannerImageDirective, EclBannerPictureDirective, EclBannerTitleDirective, EclBannerTitleLinkDirective, EclBannerTitleTextDirective, EclBannerVideoDirective, EclBaseEvent, EclBlockquoteComponent, EclBlockquoteComponentModule, EclBlockquoteImageDirective, EclBlockquotePictureDirective, EclBreadcrumbComponent, EclBreadcrumbComponentModule, EclBreadcrumbSegmentClickEvent, EclBreadcrumbSegmentComponent, EclButtonComponent, EclButtonComponentModule, EclButtonLabelDirective, EclCardBodyComponent, EclCardComponent, EclCardComponentModule, EclCardImageDirective, EclCardPictureDirective, EclCarouselComponent, EclCarouselComponentModule, EclCarouselItemComponent, EclCategoryFilterComponent, EclCategoryFilterItemComponent, EclCategoryFilterItemSelectEvent, EclCategoryFilterListComponent, EclCategoryFilterModule, EclCheckboxDirective, EclCheckboxHelpComponent, EclCheckboxInputDirective, EclCheckboxLabelComponent, EclCheckboxModule, EclContentBlockComponent, EclContentBlockComponentModule, EclContentBlockDescriptionDirective, EclContentBlockLabelDirective, EclContentBlockLabelsDirective, EclContentBlockLinkDirective, EclContentBlockLinksContainerDirective, EclContentBlockLinksDirective, EclContentBlockListContainerDirective, EclContentBlockListDirective, EclContentBlockPrimaryMetaDirective, EclContentBlockPrimaryMetasDirective, EclContentBlockSecondaryMetaDirective, EclContentBlockSecondaryMetaIconDirective, EclContentBlockSecondaryMetaLabelDirective, EclContentBlockSecondaryMetasDirective, EclContentBlockTagDirective, EclContentBlockTagsDirective, EclContentBlockTitleDirective, EclContentItemComponent, EclContentItemComponentModule, EclContentItemImageDirective, EclContentItemPictureDirective, EclDateBlockComponent, EclDateBlockComponentModule, EclDatePickerDatePickedEvent, EclDatePickerDirective, EclDatePickerDirectiveModule, EclDefaultLanguageService, EclDescriptionListDefinitionComponent, EclDescriptionListDefinitionItemDirective, EclDescriptionListDefinitionListDirective, EclDescriptionListDirective, EclDescriptionListTermDirective, EclDomEvent, EclExpandableComponent, EclExpandableComponentModule, EclExpandableToggleEvent, EclFactFiguresComponent, EclFactFiguresComponentModule, EclFactFiguresDescriptionComponent, EclFactFiguresItemComponent, EclFactFiguresTitleComponent, EclFactFiguresValueComponent, EclFactFiguresViewAllComponent, EclFeaturedComponent, EclFeaturedItemComponent, EclFeaturedItemDescriptionComponent, EclFeaturedItemFooterComponent, EclFeaturedItemFooterLinkDirective, EclFeaturedItemFooterPictureDirective, EclFeaturedItemLinkDirective, EclFeaturedModule, EclFeedbackMessageDirective, EclFeedbackMessageDirectiveModule, EclFileComponent, EclFileComponentModule, EclFileDownloadDirective, EclFileImageDirective, EclFileItemComponent, EclFileItemsComponent, EclFileItemsToggleEvent, EclFilePictureDirective, EclFilePreviewDirective, EclFileTaxonomyComponent, EclFileTitleDirective, EclFileTranslationDownloadDirective, EclFileUploadDirective, EclFileUploadDirectiveModule, EclFileUploadFileSelectedEvent, EclFormGroupComponent, EclFormGroupComponentModule, EclFormLabelComponent, EclFormLabelComponentModule, EclGalleryComponent, EclGalleryComponentModule, EclGalleryFooterComponent, EclGalleryFullScreenEvent, EclGalleryHideEvent, EclGalleryItemClickEvent, EclGalleryItemComponent, EclGalleryItemEvent, EclGalleryMediaDirective, EclGalleryMediaSource, EclGalleryMediaTrack, EclGalleryPictureDirective, EclGalleryPictureImage, EclGalleryPictureSource, EclGalleryShareEvent, EclGalleryShowEvent, EclGalleryThumbnailDirective, EclGalleryToggleItemsEvent, EclHelpBlockDirective, EclHelpBlockDirectiveModule, EclHiddenDirective, EclHiddenModule, EclIconComponent, EclIconComponentModule, EclInpageNavigationComponent, EclInpageNavigationComponentModule, EclInpageNavigationItemClickEvent, EclInpageNavigationItemComponent, EclInpageNavigationSectionEnterEvent, EclLabelDirective, EclLabelDirectiveModule, EclLanguageService, EclLinkDirective, EclLinkDirectiveModule, EclLinkLabelDirective, EclListDirectiveModule, EclListIllustrationComponent, EclListIllustrationComponentModule, EclListIllustrationIconDirective, EclListIllustrationImageDirective, EclListIllustrationItemComponent, EclListIllustrationPictureDirective, EclLoadingIndicatorComponent, EclLoadingIndicatorComponentModule, EclLoadingIndicatorLabelDirective, EclLoadingIndicatorOverlayDirective, EclMediaContainerComponent, EclMediaContainerComponentModule, EclMediaContainerIframeDirective, EclMediaContainerItemAudioDescriptionDirective, EclMediaContainerItemDirective, EclMediaContainerPictureDirective, EclMegaMenuComponent, EclMegaMenuComponentModule, EclMegaMenuContainerDirective, EclMegaMenuFeaturedComponent, EclMegaMenuFeaturedImageDirective, EclMegaMenuFeaturedListDirective, EclMegaMenuFeaturedListItemDirective, EclMegaMenuFeaturedPictureDirective, EclMegaMenuInfoComponent, EclMegaMenuItemComponent, EclMegaMenuListDirective, EclMegaMenuSpacerDirective, EclMegaMenuSubitemComponent, EclMegaMenuSublistDirective, EclMenuComponent, EclMenuComponentModule, EclMenuItemCaretEvent, EclMenuItemComponent, EclMenuItemFocusEvent, EclMenuItemHoverEvent, EclMenuItemHoverOutEvent, EclMenuItemKeydownEvent, EclMenuItemParentFocusEvent, EclMenuItemSelectEvent, EclMenuMegaComponent, EclMenuMegaItemComponent, EclModalBodyComponent, EclModalBodyFixedContentDirective, EclModalCloseDirective, EclModalCloseEvent, EclModalComponent, EclModalComponentModule, EclModalFooterComponent, EclModalHeaderComponent, EclModalOpenEvent, EclModalTriggerDirective, EclMultiselectComponent, EclMultiselectComponentModule, EclMultiselectOptionDirective, EclNavigationListComponent, EclNavigationListComponentModule, EclNavigationListImageComponent, EclNavigationListImageDirective, EclNavigationListItemComponent, EclNavigationListPictureDirective, EclNewsTickerComponent, EclNewsTickerComponentModule, EclNewsTickerIconDirective, EclNewsTickerItemComponent, EclNewsTickerItemEvent, EclNotificationCloseEvent, EclNotificationComponent, EclNotificationComponentModule, EclNotificationTitleDirective, EclOrderedListDirective, EclOrderedListItemDirective, EclPageHeaderBackgroundImageDirective, EclPageHeaderBackgroundPictureDirective, EclPageHeaderComponent, EclPageHeaderComponentModule, EclPageHeaderDescriptionContainerDirective, EclPageHeaderDescriptionDirective, EclPageHeaderDescriptionPictureDirective, EclPageHeaderDescriptionThumbnailDirective, EclPageHeaderInfoDirective, EclPageHeaderMetaDirective, EclPageHeaderMetaItemDirective, EclPageHeaderTitleDirective, EclPaginationComponent, EclPaginationComponentModule, EclPaginationEvent, EclPaginationItemClickEvent, EclPaginationItemComponent, EclPopoverComponent, EclPopoverComponentModule, EclPopoverContentDirective, EclPopoverToggleDirective, EclRadioDirective, EclRadioDirectiveModule, EclRadioHelpComponent, EclRadioInputDirective, EclRadioLabelComponent, EclRangeBubbleComponent, EclRangeDirective, EclRangeDirectiveModule, EclRangeEvent, EclRangeValueComponent, EclRatingChangeEvent, EclRatingFieldComponent, EclRatingFieldComponentModule, EclRtlService, EclSearchFormComponent, EclSearchFormComponentModule, EclSearchFormEvent, EclSelectContainerComponent, EclSelectDirective, EclSelectDirectiveModule, EclSeparatorDirective, EclSeparatorModule, EclSiteFooterColumnDirective, EclSiteFooterComponent, EclSiteFooterComponentModule, EclSiteFooterContentDirective, EclSiteFooterDescriptionDirective, EclSiteFooterFixedContentECComponent, EclSiteFooterFixedContentEUComponent, EclSiteFooterLinkDirective, EclSiteFooterListDirective, EclSiteFooterListItemDirective, EclSiteFooterLogoDirective, EclSiteFooterLogoImageDirective, EclSiteFooterLogoItemDirective, EclSiteFooterLogoLinkDirective, EclSiteFooterLogoListDirective, EclSiteFooterPictureDirective, EclSiteFooterRowDirective, EclSiteFooterSectionDirective, EclSiteFooterTitleDirective, EclSiteFooterTitleLinkDirective, EclSiteHeaderActionComponent, EclSiteHeaderAreaDataService, EclSiteHeaderBannerTopComponent, EclSiteHeaderComponent, EclSiteHeaderComponentModule, EclSiteHeaderCtaDirective, EclSiteHeaderEnvironmentComponent, EclSiteHeaderImageDirective, EclSiteHeaderLanguageClickEvent, EclSiteHeaderLanguageCloseEvent, EclSiteHeaderLanguageComponent, EclSiteHeaderLanguagePopoverComponent, EclSiteHeaderLanguageSelectedEvent, EclSiteHeaderLinkDirective, EclSiteHeaderLoginBoxToggleEvent, EclSiteHeaderLoginComponent, EclSiteHeaderLoginDescriptionDirective, EclSiteHeaderLoginEvent, EclSiteHeaderLoginSeparatorDirective, EclSiteHeaderLogoClickEvent, EclSiteHeaderNotificationComponent, EclSiteHeaderPictureDirective, EclSiteHeaderSearchComponent, EclSiteHeaderSearchEvent, EclSiteHeaderSearchToggleEvent, EclSlideEvent, EclSocialMediaFollowComponent, EclSocialMediaFollowComponentModule, EclSocialMediaFollowItemClickEvent, EclSocialMediaFollowItemComponent, EclSocialMediaFollowLinkDirective, EclSocialMediaShareComponent, EclSocialMediaShareComponentModule, EclSocialMediaShareItemClickEvent, EclSocialMediaShareItemComponent, EclSocialMediaShareLinkDirective, EclSortTableEvent, EclSplashPageComponent, EclSplashPageComponentModule, EclSplashPageLanguageCategoryComponent, EclSplashPageLanguageContainerComponent, EclSplashPageLanguageItemDirective, EclSplashPageLanguageLinkComponent, EclSplashPageLanguageListDirective, EclSplashPageLogoImageDirective, EclSplashPageLogoLinkDirective, EclSplashPagePictureDirective, EclStickyContainerComponent, EclStickyContainerComponentModule, EclTabComponent, EclTabLabelComponent, EclTabMoreComponent, EclTabSelectEvent, EclTableBodyDirective, EclTableCaptionDirective, EclTableCellDirective, EclTableCellGroupDirective, EclTableDirective, EclTableDirectiveModule, EclTableHeadDirective, EclTableHeaderDirective, EclTableResponsiveDirective, EclTableRowDirective, EclTableSortButtonComponent, EclTabsComponent, EclTabsComponentModule, EclTagComponent, EclTagComponentModule, EclTagIconExternalDirective, EclTagRemoveEvent, EclTagSetDirective, EclTagSetItemDirective, EclTextAreaDirective, EclTextAreaDirectiveModule, EclTextInputDirective, EclTextInputDirectiveModule, EclThemeService, EclTimelineComponent, EclTimelineComponentModule, EclTimelineItemComponent, EclTimelineItemLabelDirective, EclTimelineItemTitleDirective, EclTimelineItemToggleEvent, EclTimelineItemTogglerComponent, EclUnorderedListDirective, EclUnorderedListItemDirective, EclUserDeviceService, KeyCode, ShiftDirection, SortOrder, hasNextSiblingWithAttribute, hasPreviousSiblingWithAttribute };
16980
17144
  //# sourceMappingURL=eui-ecl.mjs.map