@eui/ecl 21.0.0-alpha.32 → 21.0.0-alpha.34

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 (497) hide show
  1. package/components/ecl-accordion/package.json +2 -1
  2. package/components/ecl-app/package.json +2 -1
  3. package/components/ecl-banner/package.json +2 -1
  4. package/components/ecl-blockquote/package.json +2 -1
  5. package/components/ecl-breadcrumb/package.json +2 -1
  6. package/components/ecl-button/package.json +2 -1
  7. package/components/ecl-card/package.json +2 -1
  8. package/components/ecl-carousel/package.json +2 -1
  9. package/components/ecl-category-filter/package.json +2 -1
  10. package/components/ecl-checkbox/package.json +2 -1
  11. package/components/ecl-content-block/package.json +2 -1
  12. package/components/ecl-content-item/package.json +2 -1
  13. package/components/ecl-date-block/package.json +2 -1
  14. package/components/ecl-date-picker/package.json +2 -1
  15. package/components/ecl-divider/package.json +2 -1
  16. package/components/ecl-expandable/package.json +2 -1
  17. package/components/ecl-fact-figures/package.json +2 -1
  18. package/components/ecl-featured/package.json +2 -1
  19. package/components/ecl-feedback-message/package.json +2 -1
  20. package/components/ecl-file/package.json +2 -1
  21. package/components/ecl-file-upload/package.json +2 -1
  22. package/components/ecl-form-group/package.json +2 -1
  23. package/components/ecl-form-label/package.json +2 -1
  24. package/components/ecl-gallery/package.json +2 -1
  25. package/components/ecl-help-block/package.json +2 -1
  26. package/components/ecl-icon/package.json +2 -1
  27. package/components/ecl-inpage-navigation/package.json +2 -1
  28. package/components/ecl-label/package.json +2 -1
  29. package/components/ecl-link/package.json +2 -1
  30. package/components/ecl-list/package.json +2 -1
  31. package/components/ecl-list-illustration/package.json +2 -1
  32. package/components/ecl-loading-indicator/package.json +2 -1
  33. package/components/ecl-media-container/package.json +2 -1
  34. package/components/ecl-mega-menu/package.json +2 -1
  35. package/components/ecl-menu/package.json +2 -1
  36. package/components/ecl-modal/package.json +2 -1
  37. package/components/ecl-multiselect/package.json +2 -1
  38. package/components/ecl-navigation-list/package.json +2 -1
  39. package/components/ecl-news-ticker/package.json +2 -1
  40. package/components/ecl-notification/package.json +2 -1
  41. package/components/ecl-page-header/package.json +2 -1
  42. package/components/ecl-pagination/package.json +2 -1
  43. package/components/ecl-popover/package.json +2 -1
  44. package/components/ecl-radio/package.json +2 -1
  45. package/components/ecl-range/package.json +2 -1
  46. package/components/ecl-rating-field/package.json +2 -1
  47. package/components/ecl-search-form/package.json +2 -1
  48. package/components/ecl-select/package.json +2 -1
  49. package/components/ecl-site-footer/package.json +2 -1
  50. package/components/ecl-site-header/package.json +2 -1
  51. package/components/ecl-social-media-follow/package.json +2 -1
  52. package/components/ecl-splash-page/package.json +2 -1
  53. package/components/ecl-sticky-container/package.json +2 -1
  54. package/components/ecl-table/package.json +2 -1
  55. package/components/ecl-tabs/package.json +2 -1
  56. package/components/ecl-tag/package.json +2 -1
  57. package/components/ecl-text-area/package.json +2 -1
  58. package/components/ecl-text-input/package.json +2 -1
  59. package/components/ecl-timeline/package.json +2 -1
  60. package/core/package.json +2 -1
  61. package/docs/changelog.html +191 -0
  62. package/docs/components/EclAccordionComponent.html +1 -1
  63. package/docs/components/EclAccordionItemComponent.html +1 -1
  64. package/docs/components/EclAppComponent.html +1 -1
  65. package/docs/components/EclBannerComponent.html +1 -1
  66. package/docs/components/EclBlockquoteComponent.html +1 -1
  67. package/docs/components/EclBreadcrumbComponent.html +1 -1
  68. package/docs/components/EclBreadcrumbSegmentComponent.html +1 -1
  69. package/docs/components/EclButtonComponent.html +1 -1
  70. package/docs/components/EclCardBodyComponent.html +1 -1
  71. package/docs/components/EclCardComponent.html +1 -1
  72. package/docs/components/EclCarouselComponent.html +1 -1
  73. package/docs/components/EclCarouselItemComponent.html +1 -1
  74. package/docs/components/EclCategoryFilterComponent.html +1 -1
  75. package/docs/components/EclCategoryFilterItemComponent.html +1 -1
  76. package/docs/components/EclCategoryFilterListComponent.html +1 -1
  77. package/docs/components/EclCheckboxHelpComponent.html +1 -1
  78. package/docs/components/EclCheckboxLabelComponent.html +2 -2
  79. package/docs/components/EclContentBlockComponent.html +1 -1
  80. package/docs/components/EclContentItemComponent.html +1 -1
  81. package/docs/components/EclDateBlockComponent.html +1 -1
  82. package/docs/components/EclDescriptionListDefinitionComponent.html +1 -1
  83. package/docs/components/EclExpandableComponent.html +1 -1
  84. package/docs/components/EclFactFiguresComponent.html +53 -3
  85. package/docs/components/EclFactFiguresDescriptionComponent.html +1 -1
  86. package/docs/components/EclFactFiguresItemComponent.html +1 -1
  87. package/docs/components/EclFactFiguresTitleComponent.html +1 -1
  88. package/docs/components/EclFactFiguresValueComponent.html +1 -1
  89. package/docs/components/EclFactFiguresViewAllComponent.html +1 -1
  90. package/docs/components/EclFeaturedComponent.html +1 -1
  91. package/docs/components/EclFeaturedItemComponent.html +1 -1
  92. package/docs/components/EclFeaturedItemDescriptionComponent.html +1 -1
  93. package/docs/components/EclFileComponent.html +1 -1
  94. package/docs/components/EclFileItemComponent.html +1 -1
  95. package/docs/components/EclFileItemsComponent.html +1 -1
  96. package/docs/components/EclFileTaxonomyComponent.html +1 -1
  97. package/docs/components/EclFormGroupComponent.html +1 -1
  98. package/docs/components/EclFormLabelComponent.html +2 -2
  99. package/docs/components/EclGalleryComponent.html +1 -1
  100. package/docs/components/EclGalleryFooterComponent.html +1 -1
  101. package/docs/components/EclGalleryItemComponent.html +1 -1
  102. package/docs/components/EclIconComponent.html +1 -1
  103. package/docs/components/EclInpageNavigationComponent.html +1 -1
  104. package/docs/components/EclInpageNavigationItemComponent.html +1 -1
  105. package/docs/components/EclListIllustrationComponent.html +1 -1
  106. package/docs/components/EclListIllustrationItemComponent.html +1 -1
  107. package/docs/components/EclLoadingIndicatorComponent.html +1 -1
  108. package/docs/components/EclMediaContainerComponent.html +1 -1
  109. package/docs/components/EclMegaMenuComponent.html +30 -1
  110. package/docs/components/EclMegaMenuFeaturedComponent.html +82 -6
  111. package/docs/components/EclMegaMenuInfoComponent.html +1 -1
  112. package/docs/components/EclMegaMenuItemComponent.html +105 -42
  113. package/docs/components/EclMegaMenuSubitemComponent.html +24 -42
  114. package/docs/components/EclMenuComponent.html +1 -1
  115. package/docs/components/EclMenuItemComponent.html +1 -1
  116. package/docs/components/EclMenuMegaComponent.html +1 -1
  117. package/docs/components/EclMenuMegaItemComponent.html +1 -1
  118. package/docs/components/EclModalBodyComponent.html +1 -1
  119. package/docs/components/EclModalComponent.html +1 -1
  120. package/docs/components/EclModalFooterComponent.html +1 -1
  121. package/docs/components/EclModalHeaderComponent.html +1 -1
  122. package/docs/components/EclMultiselectComponent.html +1 -1
  123. package/docs/components/EclMultiselectDropdownComponent.html +1 -1
  124. package/docs/components/EclMultiselectInputComponent.html +1 -1
  125. package/docs/components/EclMultiselectOptgroupComponent.html +1 -1
  126. package/docs/components/EclMultiselectOptionComponent.html +1 -1
  127. package/docs/components/EclNavigationListComponent.html +1 -1
  128. package/docs/components/EclNavigationListItemComponent.html +1 -1
  129. package/docs/components/EclNewsTickerComponent.html +1 -1
  130. package/docs/components/EclNewsTickerItemComponent.html +1 -1
  131. package/docs/components/EclNotificationComponent.html +1 -1
  132. package/docs/components/EclPageHeaderComponent.html +1 -1
  133. package/docs/components/EclPaginationComponent.html +1 -1
  134. package/docs/components/EclPaginationItemComponent.html +1 -1
  135. package/docs/components/EclPopoverComponent.html +1 -1
  136. package/docs/components/EclRadioHelpComponent.html +1 -1
  137. package/docs/components/EclRadioLabelComponent.html +1 -1
  138. package/docs/components/EclRangeBubbleComponent.html +1 -1
  139. package/docs/components/EclRangeValueComponent.html +1 -1
  140. package/docs/components/EclRatingFieldComponent.html +1 -1
  141. package/docs/components/EclSearchFormComponent.html +1 -1
  142. package/docs/components/EclSelectContainerComponent.html +1 -1
  143. package/docs/components/EclSiteFooterComponent.html +1 -1
  144. package/docs/components/EclSiteFooterCoreComponent.html +1 -1
  145. package/docs/components/EclSiteFooterFixedContentEUComponent.html +1 -1
  146. package/docs/components/EclSiteFooterRowCommonComponent.html +1 -1
  147. package/docs/components/EclSiteHeaderActionComponent.html +1 -1
  148. package/docs/components/EclSiteHeaderBannerTopComponent.html +1 -1
  149. package/docs/components/EclSiteHeaderComponent.html +2 -2
  150. package/docs/components/EclSiteHeaderCustomActionComponent.html +1 -1
  151. package/docs/components/EclSiteHeaderEnvironmentComponent.html +1 -1
  152. package/docs/components/EclSiteHeaderLanguageComponent.html +1 -1
  153. package/docs/components/EclSiteHeaderLanguagePopoverComponent.html +1 -1
  154. package/docs/components/EclSiteHeaderLoginComponent.html +1 -1
  155. package/docs/components/EclSiteHeaderNotificationComponent.html +1 -1
  156. package/docs/components/EclSiteHeaderSearchComponent.html +1 -1
  157. package/docs/components/EclSocialMediaFollowComponent.html +1 -1
  158. package/docs/components/EclSocialMediaFollowItemComponent.html +1 -1
  159. package/docs/components/EclSplashPageComponent.html +1 -1
  160. package/docs/components/EclSplashPageLanguageCategoryComponent.html +1 -1
  161. package/docs/components/EclSplashPageLanguageContainerComponent.html +1 -1
  162. package/docs/components/EclSplashPageLanguageLinkComponent.html +1 -1
  163. package/docs/components/EclStickyContainerComponent.html +1 -1
  164. package/docs/components/EclTabComponent.html +1 -1
  165. package/docs/components/EclTabLabelComponent.html +1 -1
  166. package/docs/components/EclTabMoreComponent.html +1 -1
  167. package/docs/components/EclTableSortButtonComponent.html +1 -1
  168. package/docs/components/EclTabsComponent.html +1 -1
  169. package/docs/components/EclTagComponent.html +1 -1
  170. package/docs/components/EclTimelineComponent.html +1 -1
  171. package/docs/components/EclTimelineItemComponent.html +1 -1
  172. package/docs/components/EclTimelineItemTogglerComponent.html +1 -1
  173. package/docs/directives/EclMegaMenuFeaturedListItemDescriptionDirective.html +515 -0
  174. package/docs/directives/EclMegaMenuFeaturedListItemDirective.html +48 -0
  175. package/docs/directives/EclMegaMenuSpacerDirective.html +1 -1
  176. package/docs/directives/EclMegaMenuSublistDirective.html +67 -0
  177. package/docs/directives/EclSiteFooterSectionDirective.html +32 -367
  178. package/docs/interfaces/EclMegaMenuItem.html +45 -0
  179. package/docs/js/menu-wc.js +9 -6
  180. package/docs/js/menu-wc_es5.js +1 -1
  181. package/docs/js/search/search_index.js +2 -2
  182. package/docs/miscellaneous/variables.html +2 -0
  183. package/docs/overview.html +1 -1
  184. package/docs/properties.html +1 -1
  185. package/fesm2022/eui-ecl-components-ecl-accordion.mjs +10 -10
  186. package/fesm2022/eui-ecl-components-ecl-accordion.mjs.map +1 -1
  187. package/fesm2022/eui-ecl-components-ecl-app.mjs +7 -7
  188. package/fesm2022/eui-ecl-components-ecl-app.mjs.map +1 -1
  189. package/fesm2022/eui-ecl-components-ecl-banner.mjs +34 -34
  190. package/fesm2022/eui-ecl-components-ecl-banner.mjs.map +1 -1
  191. package/fesm2022/eui-ecl-components-ecl-blockquote.mjs +13 -13
  192. package/fesm2022/eui-ecl-components-ecl-blockquote.mjs.map +1 -1
  193. package/fesm2022/eui-ecl-components-ecl-breadcrumb.mjs +13 -13
  194. package/fesm2022/eui-ecl-components-ecl-breadcrumb.mjs.map +1 -1
  195. package/fesm2022/eui-ecl-components-ecl-button.mjs +16 -16
  196. package/fesm2022/eui-ecl-components-ecl-button.mjs.map +1 -1
  197. package/fesm2022/eui-ecl-components-ecl-card.mjs +16 -16
  198. package/fesm2022/eui-ecl-components-ecl-card.mjs.map +1 -1
  199. package/fesm2022/eui-ecl-components-ecl-carousel.mjs +10 -10
  200. package/fesm2022/eui-ecl-components-ecl-carousel.mjs.map +1 -1
  201. package/fesm2022/eui-ecl-components-ecl-category-filter.mjs +13 -13
  202. package/fesm2022/eui-ecl-components-ecl-category-filter.mjs.map +1 -1
  203. package/fesm2022/eui-ecl-components-ecl-checkbox.mjs +17 -17
  204. package/fesm2022/eui-ecl-components-ecl-checkbox.mjs.map +1 -1
  205. package/fesm2022/eui-ecl-components-ecl-content-block.mjs +58 -58
  206. package/fesm2022/eui-ecl-components-ecl-content-block.mjs.map +1 -1
  207. package/fesm2022/eui-ecl-components-ecl-content-item.mjs +13 -13
  208. package/fesm2022/eui-ecl-components-ecl-content-item.mjs.map +1 -1
  209. package/fesm2022/eui-ecl-components-ecl-date-block.mjs +7 -7
  210. package/fesm2022/eui-ecl-components-ecl-date-block.mjs.map +1 -1
  211. package/fesm2022/eui-ecl-components-ecl-date-picker.mjs +7 -7
  212. package/fesm2022/eui-ecl-components-ecl-date-picker.mjs.map +1 -1
  213. package/fesm2022/eui-ecl-components-ecl-divider.mjs +7 -7
  214. package/fesm2022/eui-ecl-components-ecl-divider.mjs.map +1 -1
  215. package/fesm2022/eui-ecl-components-ecl-expandable.mjs +7 -7
  216. package/fesm2022/eui-ecl-components-ecl-expandable.mjs.map +1 -1
  217. package/fesm2022/eui-ecl-components-ecl-fact-figures.mjs +81 -59
  218. package/fesm2022/eui-ecl-components-ecl-fact-figures.mjs.map +1 -1
  219. package/fesm2022/eui-ecl-components-ecl-featured.mjs +16 -16
  220. package/fesm2022/eui-ecl-components-ecl-featured.mjs.map +1 -1
  221. package/fesm2022/eui-ecl-components-ecl-feedback-message.mjs +7 -7
  222. package/fesm2022/eui-ecl-components-ecl-feedback-message.mjs.map +1 -1
  223. package/fesm2022/eui-ecl-components-ecl-file-upload.mjs +7 -7
  224. package/fesm2022/eui-ecl-components-ecl-file-upload.mjs.map +1 -1
  225. package/fesm2022/eui-ecl-components-ecl-file.mjs +34 -34
  226. package/fesm2022/eui-ecl-components-ecl-file.mjs.map +1 -1
  227. package/fesm2022/eui-ecl-components-ecl-form-group.mjs +7 -7
  228. package/fesm2022/eui-ecl-components-ecl-form-group.mjs.map +1 -1
  229. package/fesm2022/eui-ecl-components-ecl-form-label.mjs +11 -11
  230. package/fesm2022/eui-ecl-components-ecl-form-label.mjs.map +1 -1
  231. package/fesm2022/eui-ecl-components-ecl-gallery.mjs +22 -22
  232. package/fesm2022/eui-ecl-components-ecl-gallery.mjs.map +1 -1
  233. package/fesm2022/eui-ecl-components-ecl-help-block.mjs +7 -7
  234. package/fesm2022/eui-ecl-components-ecl-help-block.mjs.map +1 -1
  235. package/fesm2022/eui-ecl-components-ecl-icon.mjs +7 -7
  236. package/fesm2022/eui-ecl-components-ecl-icon.mjs.map +1 -1
  237. package/fesm2022/eui-ecl-components-ecl-inpage-navigation.mjs +17 -17
  238. package/fesm2022/eui-ecl-components-ecl-inpage-navigation.mjs.map +1 -1
  239. package/fesm2022/eui-ecl-components-ecl-label.mjs +7 -7
  240. package/fesm2022/eui-ecl-components-ecl-label.mjs.map +1 -1
  241. package/fesm2022/eui-ecl-components-ecl-link.mjs +16 -16
  242. package/fesm2022/eui-ecl-components-ecl-link.mjs.map +1 -1
  243. package/fesm2022/eui-ecl-components-ecl-list-illustration.mjs +19 -19
  244. package/fesm2022/eui-ecl-components-ecl-list-illustration.mjs.map +1 -1
  245. package/fesm2022/eui-ecl-components-ecl-list.mjs +31 -31
  246. package/fesm2022/eui-ecl-components-ecl-list.mjs.map +1 -1
  247. package/fesm2022/eui-ecl-components-ecl-loading-indicator.mjs +13 -13
  248. package/fesm2022/eui-ecl-components-ecl-loading-indicator.mjs.map +1 -1
  249. package/fesm2022/eui-ecl-components-ecl-media-container.mjs +19 -19
  250. package/fesm2022/eui-ecl-components-ecl-media-container.mjs.map +1 -1
  251. package/fesm2022/eui-ecl-components-ecl-mega-menu.mjs +172 -81
  252. package/fesm2022/eui-ecl-components-ecl-mega-menu.mjs.map +1 -1
  253. package/fesm2022/eui-ecl-components-ecl-menu.mjs +18 -18
  254. package/fesm2022/eui-ecl-components-ecl-menu.mjs.map +1 -1
  255. package/fesm2022/eui-ecl-components-ecl-modal.mjs +25 -25
  256. package/fesm2022/eui-ecl-components-ecl-modal.mjs.map +1 -1
  257. package/fesm2022/eui-ecl-components-ecl-multiselect.mjs +45 -25
  258. package/fesm2022/eui-ecl-components-ecl-multiselect.mjs.map +1 -1
  259. package/fesm2022/eui-ecl-components-ecl-navigation-list.mjs +16 -16
  260. package/fesm2022/eui-ecl-components-ecl-navigation-list.mjs.map +1 -1
  261. package/fesm2022/eui-ecl-components-ecl-news-ticker.mjs +13 -13
  262. package/fesm2022/eui-ecl-components-ecl-news-ticker.mjs.map +1 -1
  263. package/fesm2022/eui-ecl-components-ecl-notification.mjs +10 -10
  264. package/fesm2022/eui-ecl-components-ecl-notification.mjs.map +1 -1
  265. package/fesm2022/eui-ecl-components-ecl-page-header.mjs +37 -37
  266. package/fesm2022/eui-ecl-components-ecl-page-header.mjs.map +1 -1
  267. package/fesm2022/eui-ecl-components-ecl-pagination.mjs +13 -13
  268. package/fesm2022/eui-ecl-components-ecl-pagination.mjs.map +1 -1
  269. package/fesm2022/eui-ecl-components-ecl-popover.mjs +14 -14
  270. package/fesm2022/eui-ecl-components-ecl-popover.mjs.map +1 -1
  271. package/fesm2022/eui-ecl-components-ecl-radio.mjs +16 -16
  272. package/fesm2022/eui-ecl-components-ecl-radio.mjs.map +1 -1
  273. package/fesm2022/eui-ecl-components-ecl-range.mjs +13 -13
  274. package/fesm2022/eui-ecl-components-ecl-range.mjs.map +1 -1
  275. package/fesm2022/eui-ecl-components-ecl-rating-field.mjs +7 -7
  276. package/fesm2022/eui-ecl-components-ecl-rating-field.mjs.map +1 -1
  277. package/fesm2022/eui-ecl-components-ecl-search-form.mjs +7 -7
  278. package/fesm2022/eui-ecl-components-ecl-search-form.mjs.map +1 -1
  279. package/fesm2022/eui-ecl-components-ecl-select.mjs +10 -10
  280. package/fesm2022/eui-ecl-components-ecl-select.mjs.map +1 -1
  281. package/fesm2022/eui-ecl-components-ecl-site-footer.mjs +77 -91
  282. package/fesm2022/eui-ecl-components-ecl-site-footer.mjs.map +1 -1
  283. package/fesm2022/eui-ecl-components-ecl-site-header.mjs +65 -65
  284. package/fesm2022/eui-ecl-components-ecl-site-header.mjs.map +1 -1
  285. package/fesm2022/eui-ecl-components-ecl-social-media-follow.mjs +13 -13
  286. package/fesm2022/eui-ecl-components-ecl-social-media-follow.mjs.map +1 -1
  287. package/fesm2022/eui-ecl-components-ecl-splash-page.mjs +31 -31
  288. package/fesm2022/eui-ecl-components-ecl-splash-page.mjs.map +1 -1
  289. package/fesm2022/eui-ecl-components-ecl-sticky-container.mjs +7 -7
  290. package/fesm2022/eui-ecl-components-ecl-sticky-container.mjs.map +1 -1
  291. package/fesm2022/eui-ecl-components-ecl-table.mjs +34 -34
  292. package/fesm2022/eui-ecl-components-ecl-table.mjs.map +1 -1
  293. package/fesm2022/eui-ecl-components-ecl-tabs.mjs +16 -16
  294. package/fesm2022/eui-ecl-components-ecl-tabs.mjs.map +1 -1
  295. package/fesm2022/eui-ecl-components-ecl-tag.mjs +16 -16
  296. package/fesm2022/eui-ecl-components-ecl-tag.mjs.map +1 -1
  297. package/fesm2022/eui-ecl-components-ecl-text-area.mjs +7 -7
  298. package/fesm2022/eui-ecl-components-ecl-text-area.mjs.map +1 -1
  299. package/fesm2022/eui-ecl-components-ecl-text-input.mjs +7 -7
  300. package/fesm2022/eui-ecl-components-ecl-text-input.mjs.map +1 -1
  301. package/fesm2022/eui-ecl-components-ecl-timeline.mjs +19 -19
  302. package/fesm2022/eui-ecl-components-ecl-timeline.mjs.map +1 -1
  303. package/fesm2022/eui-ecl-core.mjs +25 -25
  304. package/fesm2022/eui-ecl-core.mjs.map +1 -1
  305. package/fesm2022/eui-ecl-shared.mjs +3 -3
  306. package/fesm2022/eui-ecl-shared.mjs.map +1 -1
  307. package/fesm2022/eui-ecl.mjs +4 -4
  308. package/fesm2022/eui-ecl.mjs.map +1 -1
  309. package/package.json +131 -131
  310. package/shared/package.json +2 -1
  311. package/{components/ecl-accordion/index.d.ts → types/eui-ecl-components-ecl-accordion.d.ts} +1 -1
  312. package/types/eui-ecl-components-ecl-accordion.d.ts.map +1 -0
  313. package/{components/ecl-app/index.d.ts → types/eui-ecl-components-ecl-app.d.ts} +1 -1
  314. package/types/eui-ecl-components-ecl-app.d.ts.map +1 -0
  315. package/{components/ecl-banner/index.d.ts → types/eui-ecl-components-ecl-banner.d.ts} +1 -1
  316. package/types/eui-ecl-components-ecl-banner.d.ts.map +1 -0
  317. package/{components/ecl-blockquote/index.d.ts → types/eui-ecl-components-ecl-blockquote.d.ts} +1 -1
  318. package/types/eui-ecl-components-ecl-blockquote.d.ts.map +1 -0
  319. package/{components/ecl-breadcrumb/index.d.ts → types/eui-ecl-components-ecl-breadcrumb.d.ts} +1 -1
  320. package/types/eui-ecl-components-ecl-breadcrumb.d.ts.map +1 -0
  321. package/{components/ecl-button/index.d.ts → types/eui-ecl-components-ecl-button.d.ts} +1 -1
  322. package/types/eui-ecl-components-ecl-button.d.ts.map +1 -0
  323. package/{components/ecl-card/index.d.ts → types/eui-ecl-components-ecl-card.d.ts} +1 -1
  324. package/types/eui-ecl-components-ecl-card.d.ts.map +1 -0
  325. package/{components/ecl-carousel/index.d.ts → types/eui-ecl-components-ecl-carousel.d.ts} +1 -1
  326. package/types/eui-ecl-components-ecl-carousel.d.ts.map +1 -0
  327. package/{components/ecl-category-filter/index.d.ts → types/eui-ecl-components-ecl-category-filter.d.ts} +1 -1
  328. package/types/eui-ecl-components-ecl-category-filter.d.ts.map +1 -0
  329. package/{components/ecl-checkbox/index.d.ts → types/eui-ecl-components-ecl-checkbox.d.ts} +1 -1
  330. package/types/eui-ecl-components-ecl-checkbox.d.ts.map +1 -0
  331. package/{components/ecl-content-block/index.d.ts → types/eui-ecl-components-ecl-content-block.d.ts} +1 -1
  332. package/types/eui-ecl-components-ecl-content-block.d.ts.map +1 -0
  333. package/{components/ecl-content-item/index.d.ts → types/eui-ecl-components-ecl-content-item.d.ts} +1 -1
  334. package/types/eui-ecl-components-ecl-content-item.d.ts.map +1 -0
  335. package/{components/ecl-date-block/index.d.ts → types/eui-ecl-components-ecl-date-block.d.ts} +1 -1
  336. package/types/eui-ecl-components-ecl-date-block.d.ts.map +1 -0
  337. package/{components/ecl-date-picker/index.d.ts → types/eui-ecl-components-ecl-date-picker.d.ts} +1 -1
  338. package/types/eui-ecl-components-ecl-date-picker.d.ts.map +1 -0
  339. package/{components/ecl-divider/index.d.ts → types/eui-ecl-components-ecl-divider.d.ts} +1 -1
  340. package/types/eui-ecl-components-ecl-divider.d.ts.map +1 -0
  341. package/{components/ecl-expandable/index.d.ts → types/eui-ecl-components-ecl-expandable.d.ts} +1 -1
  342. package/types/eui-ecl-components-ecl-expandable.d.ts.map +1 -0
  343. package/{components/ecl-fact-figures/index.d.ts → types/eui-ecl-components-ecl-fact-figures.d.ts} +12 -5
  344. package/types/eui-ecl-components-ecl-fact-figures.d.ts.map +1 -0
  345. package/{components/ecl-featured/index.d.ts → types/eui-ecl-components-ecl-featured.d.ts} +1 -1
  346. package/types/eui-ecl-components-ecl-featured.d.ts.map +1 -0
  347. package/{components/ecl-feedback-message/index.d.ts → types/eui-ecl-components-ecl-feedback-message.d.ts} +1 -1
  348. package/types/eui-ecl-components-ecl-feedback-message.d.ts.map +1 -0
  349. package/{components/ecl-file-upload/index.d.ts → types/eui-ecl-components-ecl-file-upload.d.ts} +1 -1
  350. package/types/eui-ecl-components-ecl-file-upload.d.ts.map +1 -0
  351. package/{components/ecl-file/index.d.ts → types/eui-ecl-components-ecl-file.d.ts} +1 -1
  352. package/types/eui-ecl-components-ecl-file.d.ts.map +1 -0
  353. package/{components/ecl-form-group/index.d.ts → types/eui-ecl-components-ecl-form-group.d.ts} +1 -1
  354. package/types/eui-ecl-components-ecl-form-group.d.ts.map +1 -0
  355. package/{components/ecl-form-label/index.d.ts → types/eui-ecl-components-ecl-form-label.d.ts} +1 -1
  356. package/types/eui-ecl-components-ecl-form-label.d.ts.map +1 -0
  357. package/{components/ecl-gallery/index.d.ts → types/eui-ecl-components-ecl-gallery.d.ts} +1 -1
  358. package/types/eui-ecl-components-ecl-gallery.d.ts.map +1 -0
  359. package/{components/ecl-help-block/index.d.ts → types/eui-ecl-components-ecl-help-block.d.ts} +1 -1
  360. package/types/eui-ecl-components-ecl-help-block.d.ts.map +1 -0
  361. package/{components/ecl-icon/index.d.ts → types/eui-ecl-components-ecl-icon.d.ts} +1 -1
  362. package/types/eui-ecl-components-ecl-icon.d.ts.map +1 -0
  363. package/{components/ecl-inpage-navigation/index.d.ts → types/eui-ecl-components-ecl-inpage-navigation.d.ts} +1 -1
  364. package/types/eui-ecl-components-ecl-inpage-navigation.d.ts.map +1 -0
  365. package/{components/ecl-label/index.d.ts → types/eui-ecl-components-ecl-label.d.ts} +1 -1
  366. package/types/eui-ecl-components-ecl-label.d.ts.map +1 -0
  367. package/{components/ecl-link/index.d.ts → types/eui-ecl-components-ecl-link.d.ts} +1 -1
  368. package/types/eui-ecl-components-ecl-link.d.ts.map +1 -0
  369. package/{components/ecl-list-illustration/index.d.ts → types/eui-ecl-components-ecl-list-illustration.d.ts} +1 -1
  370. package/types/eui-ecl-components-ecl-list-illustration.d.ts.map +1 -0
  371. package/{components/ecl-list/index.d.ts → types/eui-ecl-components-ecl-list.d.ts} +1 -1
  372. package/types/eui-ecl-components-ecl-list.d.ts.map +1 -0
  373. package/{components/ecl-loading-indicator/index.d.ts → types/eui-ecl-components-ecl-loading-indicator.d.ts} +1 -1
  374. package/types/eui-ecl-components-ecl-loading-indicator.d.ts.map +1 -0
  375. package/{components/ecl-media-container/index.d.ts → types/eui-ecl-components-ecl-media-container.d.ts} +1 -1
  376. package/types/eui-ecl-components-ecl-media-container.d.ts.map +1 -0
  377. package/{components/ecl-mega-menu/index.d.ts → types/eui-ecl-components-ecl-mega-menu.d.ts} +38 -17
  378. package/types/eui-ecl-components-ecl-mega-menu.d.ts.map +1 -0
  379. package/{components/ecl-menu/index.d.ts → types/eui-ecl-components-ecl-menu.d.ts} +1 -1
  380. package/types/eui-ecl-components-ecl-menu.d.ts.map +1 -0
  381. package/{components/ecl-modal/index.d.ts → types/eui-ecl-components-ecl-modal.d.ts} +1 -1
  382. package/types/eui-ecl-components-ecl-modal.d.ts.map +1 -0
  383. package/{components/ecl-multiselect/index.d.ts → types/eui-ecl-components-ecl-multiselect.d.ts} +2 -1
  384. package/types/eui-ecl-components-ecl-multiselect.d.ts.map +1 -0
  385. package/{components/ecl-navigation-list/index.d.ts → types/eui-ecl-components-ecl-navigation-list.d.ts} +1 -1
  386. package/types/eui-ecl-components-ecl-navigation-list.d.ts.map +1 -0
  387. package/{components/ecl-news-ticker/index.d.ts → types/eui-ecl-components-ecl-news-ticker.d.ts} +1 -1
  388. package/types/eui-ecl-components-ecl-news-ticker.d.ts.map +1 -0
  389. package/{components/ecl-notification/index.d.ts → types/eui-ecl-components-ecl-notification.d.ts} +1 -1
  390. package/types/eui-ecl-components-ecl-notification.d.ts.map +1 -0
  391. package/{components/ecl-page-header/index.d.ts → types/eui-ecl-components-ecl-page-header.d.ts} +1 -1
  392. package/types/eui-ecl-components-ecl-page-header.d.ts.map +1 -0
  393. package/{components/ecl-pagination/index.d.ts → types/eui-ecl-components-ecl-pagination.d.ts} +1 -1
  394. package/types/eui-ecl-components-ecl-pagination.d.ts.map +1 -0
  395. package/{components/ecl-popover/index.d.ts → types/eui-ecl-components-ecl-popover.d.ts} +1 -1
  396. package/types/eui-ecl-components-ecl-popover.d.ts.map +1 -0
  397. package/{components/ecl-radio/index.d.ts → types/eui-ecl-components-ecl-radio.d.ts} +1 -1
  398. package/types/eui-ecl-components-ecl-radio.d.ts.map +1 -0
  399. package/{components/ecl-range/index.d.ts → types/eui-ecl-components-ecl-range.d.ts} +1 -1
  400. package/types/eui-ecl-components-ecl-range.d.ts.map +1 -0
  401. package/{components/ecl-rating-field/index.d.ts → types/eui-ecl-components-ecl-rating-field.d.ts} +1 -1
  402. package/types/eui-ecl-components-ecl-rating-field.d.ts.map +1 -0
  403. package/{components/ecl-search-form/index.d.ts → types/eui-ecl-components-ecl-search-form.d.ts} +1 -1
  404. package/types/eui-ecl-components-ecl-search-form.d.ts.map +1 -0
  405. package/{components/ecl-select/index.d.ts → types/eui-ecl-components-ecl-select.d.ts} +1 -1
  406. package/types/eui-ecl-components-ecl-select.d.ts.map +1 -0
  407. package/{components/ecl-site-footer/index.d.ts → types/eui-ecl-components-ecl-site-footer.d.ts} +6 -8
  408. package/types/eui-ecl-components-ecl-site-footer.d.ts.map +1 -0
  409. package/{components/ecl-site-header/index.d.ts → types/eui-ecl-components-ecl-site-header.d.ts} +1 -1
  410. package/types/eui-ecl-components-ecl-site-header.d.ts.map +1 -0
  411. package/{components/ecl-social-media-follow/index.d.ts → types/eui-ecl-components-ecl-social-media-follow.d.ts} +1 -1
  412. package/types/eui-ecl-components-ecl-social-media-follow.d.ts.map +1 -0
  413. package/{components/ecl-splash-page/index.d.ts → types/eui-ecl-components-ecl-splash-page.d.ts} +1 -1
  414. package/types/eui-ecl-components-ecl-splash-page.d.ts.map +1 -0
  415. package/{components/ecl-sticky-container/index.d.ts → types/eui-ecl-components-ecl-sticky-container.d.ts} +1 -1
  416. package/types/eui-ecl-components-ecl-sticky-container.d.ts.map +1 -0
  417. package/{components/ecl-table/index.d.ts → types/eui-ecl-components-ecl-table.d.ts} +1 -1
  418. package/types/eui-ecl-components-ecl-table.d.ts.map +1 -0
  419. package/{components/ecl-tabs/index.d.ts → types/eui-ecl-components-ecl-tabs.d.ts} +1 -1
  420. package/types/eui-ecl-components-ecl-tabs.d.ts.map +1 -0
  421. package/{components/ecl-tag/index.d.ts → types/eui-ecl-components-ecl-tag.d.ts} +1 -1
  422. package/types/eui-ecl-components-ecl-tag.d.ts.map +1 -0
  423. package/{components/ecl-text-area/index.d.ts → types/eui-ecl-components-ecl-text-area.d.ts} +1 -1
  424. package/types/eui-ecl-components-ecl-text-area.d.ts.map +1 -0
  425. package/{components/ecl-text-input/index.d.ts → types/eui-ecl-components-ecl-text-input.d.ts} +1 -1
  426. package/types/eui-ecl-components-ecl-text-input.d.ts.map +1 -0
  427. package/{components/ecl-timeline/index.d.ts → types/eui-ecl-components-ecl-timeline.d.ts} +1 -1
  428. package/types/eui-ecl-components-ecl-timeline.d.ts.map +1 -0
  429. package/{core/index.d.ts → types/eui-ecl-core.d.ts} +1 -1
  430. package/types/eui-ecl-core.d.ts.map +1 -0
  431. package/{shared/index.d.ts → types/eui-ecl-shared.d.ts} +1 -1
  432. package/types/eui-ecl-shared.d.ts.map +1 -0
  433. package/types/eui-ecl.d.ts +70 -0
  434. package/types/eui-ecl.d.ts.map +1 -0
  435. package/components/ecl-accordion/index.d.ts.map +0 -1
  436. package/components/ecl-app/index.d.ts.map +0 -1
  437. package/components/ecl-banner/index.d.ts.map +0 -1
  438. package/components/ecl-blockquote/index.d.ts.map +0 -1
  439. package/components/ecl-breadcrumb/index.d.ts.map +0 -1
  440. package/components/ecl-button/index.d.ts.map +0 -1
  441. package/components/ecl-card/index.d.ts.map +0 -1
  442. package/components/ecl-carousel/index.d.ts.map +0 -1
  443. package/components/ecl-category-filter/index.d.ts.map +0 -1
  444. package/components/ecl-checkbox/index.d.ts.map +0 -1
  445. package/components/ecl-content-block/index.d.ts.map +0 -1
  446. package/components/ecl-content-item/index.d.ts.map +0 -1
  447. package/components/ecl-date-block/index.d.ts.map +0 -1
  448. package/components/ecl-date-picker/index.d.ts.map +0 -1
  449. package/components/ecl-divider/index.d.ts.map +0 -1
  450. package/components/ecl-expandable/index.d.ts.map +0 -1
  451. package/components/ecl-fact-figures/index.d.ts.map +0 -1
  452. package/components/ecl-featured/index.d.ts.map +0 -1
  453. package/components/ecl-feedback-message/index.d.ts.map +0 -1
  454. package/components/ecl-file/index.d.ts.map +0 -1
  455. package/components/ecl-file-upload/index.d.ts.map +0 -1
  456. package/components/ecl-form-group/index.d.ts.map +0 -1
  457. package/components/ecl-form-label/index.d.ts.map +0 -1
  458. package/components/ecl-gallery/index.d.ts.map +0 -1
  459. package/components/ecl-help-block/index.d.ts.map +0 -1
  460. package/components/ecl-icon/index.d.ts.map +0 -1
  461. package/components/ecl-inpage-navigation/index.d.ts.map +0 -1
  462. package/components/ecl-label/index.d.ts.map +0 -1
  463. package/components/ecl-link/index.d.ts.map +0 -1
  464. package/components/ecl-list/index.d.ts.map +0 -1
  465. package/components/ecl-list-illustration/index.d.ts.map +0 -1
  466. package/components/ecl-loading-indicator/index.d.ts.map +0 -1
  467. package/components/ecl-media-container/index.d.ts.map +0 -1
  468. package/components/ecl-mega-menu/index.d.ts.map +0 -1
  469. package/components/ecl-menu/index.d.ts.map +0 -1
  470. package/components/ecl-modal/index.d.ts.map +0 -1
  471. package/components/ecl-multiselect/index.d.ts.map +0 -1
  472. package/components/ecl-navigation-list/index.d.ts.map +0 -1
  473. package/components/ecl-news-ticker/index.d.ts.map +0 -1
  474. package/components/ecl-notification/index.d.ts.map +0 -1
  475. package/components/ecl-page-header/index.d.ts.map +0 -1
  476. package/components/ecl-pagination/index.d.ts.map +0 -1
  477. package/components/ecl-popover/index.d.ts.map +0 -1
  478. package/components/ecl-radio/index.d.ts.map +0 -1
  479. package/components/ecl-range/index.d.ts.map +0 -1
  480. package/components/ecl-rating-field/index.d.ts.map +0 -1
  481. package/components/ecl-search-form/index.d.ts.map +0 -1
  482. package/components/ecl-select/index.d.ts.map +0 -1
  483. package/components/ecl-site-footer/index.d.ts.map +0 -1
  484. package/components/ecl-site-header/index.d.ts.map +0 -1
  485. package/components/ecl-social-media-follow/index.d.ts.map +0 -1
  486. package/components/ecl-splash-page/index.d.ts.map +0 -1
  487. package/components/ecl-sticky-container/index.d.ts.map +0 -1
  488. package/components/ecl-table/index.d.ts.map +0 -1
  489. package/components/ecl-tabs/index.d.ts.map +0 -1
  490. package/components/ecl-tag/index.d.ts.map +0 -1
  491. package/components/ecl-text-area/index.d.ts.map +0 -1
  492. package/components/ecl-text-input/index.d.ts.map +0 -1
  493. package/components/ecl-timeline/index.d.ts.map +0 -1
  494. package/core/index.d.ts.map +0 -1
  495. package/index.d.ts +0 -70
  496. package/index.d.ts.map +0 -1
  497. package/shared/index.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"eui-ecl-components-ecl-banner.mjs","sources":["../../components/ecl-banner/ecl-banner-picture.directive.ts","../../components/ecl-banner/ecl-banner-video.directive.ts","../../components/ecl-banner/ecl-banner.component.ts","../../components/ecl-banner/ecl-banner.component.html","../../components/ecl-banner/ecl-banner-title.directive.ts","../../components/ecl-banner/ecl-banner-description.directive.ts","../../components/ecl-banner/ecl-banner.module.ts","../../components/ecl-banner/index.ts","../../components/ecl-banner/eui-ecl-components-ecl-banner.ts"],"sourcesContent":["import { Directive, HostBinding, ElementRef, inject } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive applied to the <picture> element within the banner.\n * Adds the appropriate classes for styling the banner picture.\n */\n@Directive({\n selector: 'picture[eclBannerPicture]',\n})\nexport class EclBannerPictureDirective extends ECLBaseDirective {\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-picture ecl-banner__picture')].join(' ').trim();\n }\n}\n\n/**\n * Directive applied to the <img> element inside the banner.\n * Enables class binding and exposes the element reference.\n */\n@Directive({\n selector: 'img[eclBannerImage]',\n})\nexport class EclBannerImageDirective extends ECLBaseDirective {\n el = inject(ElementRef);\n\n @HostBinding('class.ecl-banner__image') className = true;\n}\n","import { Directive, HostBinding, ElementRef, inject } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive applied to the video element used in the banner.\n * Adds appropriate styling classes to the host element.\n */\n@Directive({\n selector: 'video[eclBannerVideo]',\n})\nexport class EclBannerVideoDirective extends ECLBaseDirective {\n el = inject(ElementRef);\n\n /**\n * CSS classes applied to the host video element.\n */\n @HostBinding('class') videoClasses = 'ecl-video ecl-banner__video';\n}\n","import { BreakpointObserver } from '@angular/cdk/layout';\nimport {\n AfterContentInit,\n Component,\n ContentChild,\n ContentChildren,\n ElementRef,\n HostBinding,\n HostListener,\n Input,\n OnDestroy,\n QueryList,\n Renderer2,\n ViewChild,\n afterNextRender,\n booleanAttribute,\n forwardRef,\n inject,\n} from '@angular/core';\nimport { Subject, delay, takeUntil } from 'rxjs';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclLinkDirective } from '@eui/ecl/components/ecl-link';\nimport { EclBannerImageDirective } from './ecl-banner-picture.directive';\nimport { EclBannerVideoDirective } from './ecl-banner-video.directive';\nimport { EUI_ECL_ICON } from '@eui/ecl/components/ecl-icon';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { EclButtonComponent, EUI_ECL_BUTTON } from '@eui/ecl/components/ecl-button';\n\nconst enum DefaultRatio {\n XS = '6/1',\n S = '5/1',\n M = '4/1',\n L = '3/1',\n}\n\n/**\n * Component representing a banner, which can contain image, video and call-to-action (CTA) links.\n * Allows customization of layout, alignment, and appearance through inputs.\n */\n@Component({\n selector: 'ecl-banner',\n templateUrl: './ecl-banner.component.html',\n imports: [\n ...EUI_ECL_ICON,\n ...EUI_ECL_BUTTON,\n NgTemplateOutlet,\n ],\n})\nexport class EclBannerComponent extends ECLBaseDirective implements AfterContentInit, OnDestroy {\n el = inject(ElementRef);\n /**\n * Defines the size of the banner. Affects its height-to-width aspect ratio.\n * Allowed values: 'xs' | 's' | 'm' | 'l'.\n * Default: 'm'.\n */\n @Input() eclSize: 'xs'| 's' | 'm' | 'l' | string = 'm';\n\n /**\n * Defines the color of the font inside the banner content box.\n * Allowed values: 'light' | 'dark'.\n * Default: 'dark'.\n */\n @Input() fontColor: 'light' | 'dark' | string = 'dark';\n\n /**\n * Defines the font size inside the banner content box.\n * Allowed values: 'm' | 'l'.\n * Default: 'm'.\n */\n @Input() fontSize: 's' | 'm' | 'l' | string = 'm';\n\n /**\n * Defines the background color of the banner content box.\n * Allowed values: 'none' | 'light' | 'dark'.\n * Default: 'light'.\n */\n @Input() boxBackground: 'none' | 'light' | 'dark' | string = 'light';\n\n /**\n * Sets the horizontal alignment of the content inside the banner.\n * Allowed values: 'left' | 'center' | 'right'.\n * Default: 'left'.\n */\n @Input() horizontalAlignment: 'right' | 'left' | 'center' | string = 'left';\n\n /**\n * Sets the vertical alignment of the content inside the banner.\n * Allowed values: 'top' | 'center' | 'bottom'.\n * Default: 'center'.\n */\n @Input() verticalAlignment: 'top' | 'center' | 'bottom' | string = 'center';\n\n /**\n * Sets the copyright text displayed in the banner.\n */\n @Input() copyright = '';\n\n /**\n * When true, the banner stretches to full width of its container.\n * Default: false.\n */\n @Input({ transform: booleanAttribute }) isFullWidth = false;\n\n @ContentChildren(forwardRef(() => EclLinkDirective)) eclLinkComponents: QueryList<EclLinkDirective>;\n @ContentChild(EclBannerImageDirective) eclBannerImage: EclBannerImageDirective;\n @ContentChild(EclBannerVideoDirective) eclBannerVideo: EclBannerVideoDirective;\n\n @ViewChild('bannerFooter') bannerFooter: ElementRef;\n @ViewChild('bannerContainer') bannerContainer: ElementRef;\n @ViewChild('playBtn') playBtn: EclButtonComponent;\n @ViewChild('pauseBtn') pauseBtn: EclButtonComponent;\n\n @HostBinding('style.--banner-footer-height.px') bannerFooterHeight = null;\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-banner'),\n `ecl-banner--${this.eclSize}`,\n `ecl-banner--font-${this.fontSize}`,\n `ecl-banner--box-bg-${this.boxBackground}`,\n `ecl-banner--h-${this.horizontalAlignment}`,\n `ecl-banner--v-${this.verticalAlignment}`,\n `ecl-banner--color-${this.fontColor}`,\n this.isFullWidth ? 'ecl-banner--full-width' : '',\n !this.hasMedia ? 'ecl-banner--no-media' : '',\n ]\n .join(' ')\n .trim();\n }\n\n isPlaying = false;\n private readonly BANNER_PADDING = 16;\n private destroy$: Subject<boolean> = new Subject<boolean>();\n private breakpoint = 1140;\n private bannerVPadding = 8;\n private isTabletBreakpoint = true;\n private readonly TIMEOUT_INTERVAL = 200;\n private renderer = inject(Renderer2);\n private cdkBreakpointObserver = inject(BreakpointObserver);\n private maxIterations = 10;\n\n constructor() {\n super();\n afterNextRender(() => {\n this.observeBreakpointChanges();\n this.observeElementSizeChanges();\n });\n }\n\n ngAfterContentInit(): void {\n if (this.eclLinkComponents) {\n this.eclLinkComponents.forEach((link) => {\n link.class = 'ecl-banner__link-cta';\n });\n }\n\n if (this.hasVideo) {\n const videoEl : HTMLVideoElement = this.eclBannerVideo.el.nativeElement;\n videoEl.addEventListener('play', () => {\n this.isPlaying = true;\n });\n videoEl.addEventListener('pause', () => {\n this.isPlaying = false;\n });\n this.renderer.setProperty(videoEl, 'muted', true);\n this.renderer.setProperty(videoEl, 'loop', true);\n this.renderer.setProperty(videoEl, 'autoplay', true);\n this.renderer.removeAttribute(videoEl, 'controls');\n }\n }\n\n ngOnDestroy(): void {\n this.destroy$.next(true);\n this.destroy$.unsubscribe();\n }\n\n /**\n * Indicates whether the banner contains at least one call-to-action link.\n */\n get hasCtaLink(): boolean {\n return this.eclLinkComponents.length > 0;\n }\n\n /**\n * Indicates whether the banner contains an image.\n */\n get hasImage(): boolean {\n return !!this.eclBannerImage;\n }\n\n /**\n * Indicates whether the banner contains a video.\n */\n get hasVideo(): boolean {\n return !!this.eclBannerVideo;\n }\n\n /**\n * Indicates whether the banner contains any media (image or video).\n */\n get hasMedia(): boolean {\n return this.hasImage || this.hasVideo;\n }\n\n /**\n * Handles keyboard activation (Enter key) to play video.\n * Moves focus to pause button after playing starts.\n */\n onKeydownEnterPlay(): void {\n this.onVideoPlay();\n setTimeout(() => this.pauseBtn.onFocus());\n }\n\n @HostListener('window:resize')\n onWindowResize(): void {\n this.observeElementSizeChanges();\n }\n\n /**\n * Handles keyboard activation (Enter key) to pause video.\n * Moves focus to play button after pausing.\n */\n onKeydownEnterPause(): void {\n this.onVideoPause();\n setTimeout(() => this.playBtn.onFocus());\n }\n\n /**\n * Plays the embedded banner video.\n * Triggered via interaction (e.g., button).\n */\n onVideoPlay(): void {\n const videoEl : HTMLVideoElement = this.eclBannerVideo.el.nativeElement;\n videoEl.play();\n }\n\n /**\n * Pauses the embedded banner video.\n * Triggered via interaction (e.g., button).\n */\n onVideoPause(): void {\n const videoEl : HTMLVideoElement = this.eclBannerVideo.el.nativeElement;\n videoEl.pause();\n }\n\n private observeElementSizeChanges(): void {\n // new ResizeObserver(() => { // Removing this for now , because it is causing problems (infinite loop). Observing window:resize.\n setTimeout(() => {\n this.checkViewport();\n }, this.TIMEOUT_INTERVAL);\n // }).observe(this.bannerContainer.nativeElement);\n }\n\n private checkViewport() {\n if (window.innerWidth > this.breakpoint) {\n this.setBannerHeight();\n } else {\n this.resetBannerHeight();\n }\n }\n\n private waitForAspectRatioToBeDefined(attemptCounter: number) {\n attemptCounter = attemptCounter + 1;\n const aspectRatio = window.getComputedStyle(this.el.nativeElement).getPropertyValue('--css-aspect-ratio');\n\n if (\n (typeof aspectRatio === 'undefined' || aspectRatio === '') &&\n this.maxIterations > attemptCounter\n ) {\n setTimeout(() => this.waitForAspectRatioToBeDefined(attemptCounter), 100);\n } else {\n this.setHeight(aspectRatio);\n }\n }\n\n private setBannerHeight(): void {\n if (this.hasMedia) {\n this.waitForAspectRatioToBeDefined(0);\n } else {\n this.setHeight(this.getDefaultRatio());\n }\n }\n\n private setHeight(ratio) {\n if (this.bannerContainer) {\n const bannerHeight = this.bannerContainer.nativeElement.offsetHeight + 2*this.bannerVPadding;\n const bannerWidth = parseInt(window.getComputedStyle(this.el.nativeElement).getPropertyValue('width'), 10);\n const [denominator, numerator] = ratio.split('/').map(Number);\n const currentHeight = (bannerWidth * numerator) / denominator;\n if (bannerHeight > currentHeight) {\n this.renderer.setStyle(this.el.nativeElement, 'aspect-ratio', 'auto');\n this.renderer.setStyle(this.el.nativeElement, 'height', `${bannerHeight}px`);\n } else {\n this.resetBannerHeight();\n }\n }\n\n // Add margin to the banner container when there is a footer\n // This is needed to keep the vertical alignment\n if (this.bannerFooter) {\n this.bannerFooterHeight = this.bannerFooter.nativeElement.offsetHeight;\n // this.renderer.setStyle(this.el.nativeElement, '--banner-footer-height', `${this.bannerFooter.nativeElement.offsetHeight}px`);\n }\n }\n\n private resetBannerHeight(): void {\n // remove aspect-ratio\n this.renderer.removeStyle(this.el.nativeElement, 'aspect-ratio');\n\n // set height to auto\n this.renderer.setStyle(this.el.nativeElement, 'height', 'auto');\n\n // update footer height if bannerFooter exists\n if (this.bannerFooter) {\n // const footerHeight = `${this.bannerFooter.nativeElement.offsetHeight}px`;\n this.bannerFooterHeight = this.bannerFooter.nativeElement.offsetHeight;\n // this.renderer.setStyle(this.el.nativeElement, '--banner-footer-height', footerHeight);\n }\n }\n\n private getDefaultRatio(): string {\n switch(this.eclSize) {\n case 'xs': {\n return DefaultRatio.XS;\n }\n case 's': {\n return DefaultRatio.S;\n }\n case 'l': {\n return DefaultRatio.L;\n }\n default: {\n return DefaultRatio.M;\n }\n }\n }\n\n private observeBreakpointChanges(): void {\n this.cdkBreakpointObserver\n .observe([\n '(min-width: 1140px)',\n ])\n .pipe(takeUntil(this.destroy$), delay(this.TIMEOUT_INTERVAL))\n .subscribe((result) => {\n this.isTabletBreakpoint = result.breakpoints['(min-width: 997px)'];\n if ( !this.isTabletBreakpoint) {\n this.setBannerHeight();\n }\n });\n }\n\n}\n","@if(hasImage) {\n<figure class=\"ecl-banner__picture-container\">\n <ng-content select=\"[eclBannerPicture]\"></ng-content>\n @if(copyright) {\n <ng-container *ngTemplateOutlet=\"bannerFooterTemplate\"></ng-container>\n }\n</figure>\n}\n\n@if(hasVideo) {\n<div class=\"ecl-banner__video-container\">\n <ng-content select=\"[eclBannerVideo]\"></ng-content>\n @if(copyright) {\n <ng-container *ngTemplateOutlet=\"bannerFooterTemplate\"></ng-container>\n }\n <button #playBtn eclButton variant=\"tertiary\" isIconOnly class=\"ecl-banner__play\" (click)=\"onVideoPlay()\"\n [style.display]=\"isPlaying ? 'none' : 'block'\" (keydown.enter)=\"onKeydownEnterPlay()\">\n <span eclButtonLabel>Play video</span>\n <ecl-icon icon=\"play-outline\" size=\"m\"></ecl-icon>\n </button>\n <button #pauseBtn eclButton variant=\"tertiary\" isIconOnly class=\"ecl-banner__pause\" (click)=\"onVideoPause()\"\n [style.display]=\"isPlaying ? 'block' : 'none'\" (keydown.enter)=\"onKeydownEnterPause()\">\n <span eclButtonLabel>Pause video</span>\n <ecl-icon icon=\"pause-outline\" size=\"m\"></ecl-icon>\n </button>\n</div>\n}\n<div class=\"ecl-container ecl-banner__info\">\n <div #bannerContainer class=\"ecl-banner__container \">\n <div class=\"ecl-banner__content\">\n <ng-content select=\"[eclBannerTitle]\"></ng-content>\n <ng-content select=\"[eclBannerDescription]\"></ng-content>\n @if (hasCtaLink) {\n <div class=\"ecl-banner__cta\">\n <ng-content select=\"[eclLink]\"></ng-content>\n </div>\n }\n <ng-content></ng-content>\n </div>\n </div>\n</div>\n\n<ng-template #bannerFooterTemplate>\n <footer #bannerFooter class=\"ecl-banner__credit\"><div class=\"ecl-container\">© {{copyright}}</div></footer>\n</ng-template>","import { Directive, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive applied to the banner title container element.\n * Adds appropriate styling class to the host element.\n */\n@Directive({\n selector: '[eclBannerTitle]',\n})\nexport class EclBannerTitleDirective extends ECLBaseDirective {\n @HostBinding('class') className = 'ecl-banner__title';\n}\n\n/**\n * Directive applied to the text element within the banner title.\n * Adds appropriate styling class to the host element.\n */\n@Directive({\n selector: '[eclBannerTitleText]',\n})\nexport class EclBannerTitleTextDirective extends ECLBaseDirective {\n @HostBinding('class') className = 'ecl-banner__title-text';\n}\n\n/**\n * Directive applied to the link element within the banner title.\n * Adds link classes and marks the link as standalone.\n */\n@Directive({\n selector: '[eclBannerTitleLink]',\n})\nexport class EclBannerTitleLinkDirective extends ECLBaseDirective {\n @HostBinding('class') className = 'ecl-link ecl-banner__title-link';\n @HostBinding('class.ecl-link--standalone') isStandalone = true;\n}\n","import { Directive, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive for the main banner description container.\n */\n@Directive({\n selector: '[eclBannerDescription]',\n})\nexport class EclBannerDescriptionDirective extends ECLBaseDirective {\n @HostBinding('class') className = 'ecl-banner__description';\n}\n\n/**\n * Directive for the textual content inside the banner description.\n */\n@Directive({\n selector: '[eclBannerDescriptionText]',\n})\nexport class EclBannerDescriptionTextDirective extends ECLBaseDirective {\n @HostBinding('class') className = 'ecl-banner__description-text';\n}\n\n/**\n * Directive for a link inside the banner description.\n * Adds link classes and marks the link as standalone.\n */\n@Directive({\n selector: '[eclBannerDescriptionLink]',\n})\nexport class EclBannerDescriptionLinkDirective extends ECLBaseDirective {\n @HostBinding('class') className = 'ecl-link ecl-banner__description-link';\n @HostBinding('class.ecl-link--standalone') isStandalone = true;\n}\n","import { NgModule } from '@angular/core';\nimport { EclBannerTitleDirective, EclBannerTitleLinkDirective, EclBannerTitleTextDirective } from './ecl-banner-title.directive';\nimport { EclBannerDescriptionDirective, EclBannerDescriptionLinkDirective, EclBannerDescriptionTextDirective } from './ecl-banner-description.directive';\nimport { EclBannerComponent } from './ecl-banner.component';\nimport { EclBannerImageDirective, EclBannerPictureDirective } from './ecl-banner-picture.directive';\nimport { EclBannerVideoDirective } from './ecl-banner-video.directive';\n\nconst COMPONENTS = [\n EclBannerComponent,\n EclBannerTitleDirective,\n EclBannerTitleTextDirective,\n EclBannerDescriptionDirective,\n EclBannerDescriptionTextDirective,\n EclBannerPictureDirective,\n EclBannerImageDirective,\n EclBannerTitleLinkDirective,\n EclBannerVideoDirective,\n EclBannerDescriptionLinkDirective,\n];\n\n/**\n * @description\n * Module that provides the EclBanner component and its dependencies.\n *\n * @deprecated Use {@link EUI_ECL_BANNER} instead.\n */\n@NgModule({\n imports: [...COMPONENTS],\n exports: [...COMPONENTS],\n})\nexport class EclBannerModule {}\n","import { EclBannerComponent } from './ecl-banner.component';\nimport { EclBannerTitleDirective, EclBannerTitleTextDirective, EclBannerTitleLinkDirective } from './ecl-banner-title.directive';\nimport { EclBannerDescriptionDirective, EclBannerDescriptionTextDirective, EclBannerDescriptionLinkDirective } from './ecl-banner-description.directive';\nimport { EclBannerImageDirective, EclBannerPictureDirective } from './ecl-banner-picture.directive';\nimport { EclBannerVideoDirective } from './ecl-banner-video.directive';\n\nexport * from './ecl-banner.module';\nexport * from './ecl-banner.component';\nexport * from './ecl-banner-title.directive';\nexport * from './ecl-banner-description.directive';\nexport * from './ecl-banner-picture.directive';\nexport * from './ecl-banner-video.directive';\n\nexport const EUI_ECL_BANNER = [\n EclBannerComponent,\n EclBannerTitleDirective,\n EclBannerTitleTextDirective,\n EclBannerTitleLinkDirective,\n EclBannerDescriptionDirective,\n EclBannerDescriptionTextDirective,\n EclBannerDescriptionLinkDirective,\n EclBannerPictureDirective,\n EclBannerImageDirective,\n EclBannerVideoDirective,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"eui-ecl-components-ecl-banner.mjs","sources":["../../components/ecl-banner/ecl-banner-picture.directive.ts","../../components/ecl-banner/ecl-banner-video.directive.ts","../../components/ecl-banner/ecl-banner.component.ts","../../components/ecl-banner/ecl-banner.component.html","../../components/ecl-banner/ecl-banner-title.directive.ts","../../components/ecl-banner/ecl-banner-description.directive.ts","../../components/ecl-banner/ecl-banner.module.ts","../../components/ecl-banner/index.ts","../../components/ecl-banner/eui-ecl-components-ecl-banner.ts"],"sourcesContent":["import { Directive, HostBinding, ElementRef, inject } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive applied to the <picture> element within the banner.\n * Adds the appropriate classes for styling the banner picture.\n */\n@Directive({\n selector: 'picture[eclBannerPicture]',\n})\nexport class EclBannerPictureDirective extends ECLBaseDirective {\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-picture ecl-banner__picture')].join(' ').trim();\n }\n}\n\n/**\n * Directive applied to the <img> element inside the banner.\n * Enables class binding and exposes the element reference.\n */\n@Directive({\n selector: 'img[eclBannerImage]',\n})\nexport class EclBannerImageDirective extends ECLBaseDirective {\n el = inject(ElementRef);\n\n @HostBinding('class.ecl-banner__image') className = true;\n}\n","import { Directive, HostBinding, ElementRef, inject } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive applied to the video element used in the banner.\n * Adds appropriate styling classes to the host element.\n */\n@Directive({\n selector: 'video[eclBannerVideo]',\n})\nexport class EclBannerVideoDirective extends ECLBaseDirective {\n el = inject(ElementRef);\n\n /**\n * CSS classes applied to the host video element.\n */\n @HostBinding('class') videoClasses = 'ecl-video ecl-banner__video';\n}\n","import { BreakpointObserver } from '@angular/cdk/layout';\nimport {\n AfterContentInit,\n Component,\n ContentChild,\n ContentChildren,\n ElementRef,\n HostBinding,\n HostListener,\n Input,\n OnDestroy,\n QueryList,\n Renderer2,\n ViewChild,\n afterNextRender,\n booleanAttribute,\n forwardRef,\n inject,\n} from '@angular/core';\nimport { Subject, delay, takeUntil } from 'rxjs';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclLinkDirective } from '@eui/ecl/components/ecl-link';\nimport { EclBannerImageDirective } from './ecl-banner-picture.directive';\nimport { EclBannerVideoDirective } from './ecl-banner-video.directive';\nimport { EUI_ECL_ICON } from '@eui/ecl/components/ecl-icon';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { EclButtonComponent, EUI_ECL_BUTTON } from '@eui/ecl/components/ecl-button';\n\nconst enum DefaultRatio {\n XS = '6/1',\n S = '5/1',\n M = '4/1',\n L = '3/1',\n}\n\n/**\n * Component representing a banner, which can contain image, video and call-to-action (CTA) links.\n * Allows customization of layout, alignment, and appearance through inputs.\n */\n@Component({\n selector: 'ecl-banner',\n templateUrl: './ecl-banner.component.html',\n imports: [\n ...EUI_ECL_ICON,\n ...EUI_ECL_BUTTON,\n NgTemplateOutlet,\n ],\n})\nexport class EclBannerComponent extends ECLBaseDirective implements AfterContentInit, OnDestroy {\n el = inject(ElementRef);\n /**\n * Defines the size of the banner. Affects its height-to-width aspect ratio.\n * Allowed values: 'xs' | 's' | 'm' | 'l'.\n * Default: 'm'.\n */\n @Input() eclSize: 'xs'| 's' | 'm' | 'l' | string = 'm';\n\n /**\n * Defines the color of the font inside the banner content box.\n * Allowed values: 'light' | 'dark'.\n * Default: 'dark'.\n */\n @Input() fontColor: 'light' | 'dark' | string = 'dark';\n\n /**\n * Defines the font size inside the banner content box.\n * Allowed values: 'm' | 'l'.\n * Default: 'm'.\n */\n @Input() fontSize: 's' | 'm' | 'l' | string = 'm';\n\n /**\n * Defines the background color of the banner content box.\n * Allowed values: 'none' | 'light' | 'dark'.\n * Default: 'light'.\n */\n @Input() boxBackground: 'none' | 'light' | 'dark' | string = 'light';\n\n /**\n * Sets the horizontal alignment of the content inside the banner.\n * Allowed values: 'left' | 'center' | 'right'.\n * Default: 'left'.\n */\n @Input() horizontalAlignment: 'right' | 'left' | 'center' | string = 'left';\n\n /**\n * Sets the vertical alignment of the content inside the banner.\n * Allowed values: 'top' | 'center' | 'bottom'.\n * Default: 'center'.\n */\n @Input() verticalAlignment: 'top' | 'center' | 'bottom' | string = 'center';\n\n /**\n * Sets the copyright text displayed in the banner.\n */\n @Input() copyright = '';\n\n /**\n * When true, the banner stretches to full width of its container.\n * Default: false.\n */\n @Input({ transform: booleanAttribute }) isFullWidth = false;\n\n @ContentChildren(forwardRef(() => EclLinkDirective)) eclLinkComponents: QueryList<EclLinkDirective>;\n @ContentChild(EclBannerImageDirective) eclBannerImage: EclBannerImageDirective;\n @ContentChild(EclBannerVideoDirective) eclBannerVideo: EclBannerVideoDirective;\n\n @ViewChild('bannerFooter') bannerFooter: ElementRef;\n @ViewChild('bannerContainer') bannerContainer: ElementRef;\n @ViewChild('playBtn') playBtn: EclButtonComponent;\n @ViewChild('pauseBtn') pauseBtn: EclButtonComponent;\n\n @HostBinding('style.--banner-footer-height.px') bannerFooterHeight = null;\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-banner'),\n `ecl-banner--${this.eclSize}`,\n `ecl-banner--font-${this.fontSize}`,\n `ecl-banner--box-bg-${this.boxBackground}`,\n `ecl-banner--h-${this.horizontalAlignment}`,\n `ecl-banner--v-${this.verticalAlignment}`,\n `ecl-banner--color-${this.fontColor}`,\n this.isFullWidth ? 'ecl-banner--full-width' : '',\n !this.hasMedia ? 'ecl-banner--no-media' : '',\n ]\n .join(' ')\n .trim();\n }\n\n isPlaying = false;\n private readonly BANNER_PADDING = 16;\n private destroy$: Subject<boolean> = new Subject<boolean>();\n private breakpoint = 1140;\n private bannerVPadding = 8;\n private isTabletBreakpoint = true;\n private readonly TIMEOUT_INTERVAL = 200;\n private renderer = inject(Renderer2);\n private cdkBreakpointObserver = inject(BreakpointObserver);\n private maxIterations = 10;\n\n constructor() {\n super();\n afterNextRender(() => {\n this.observeBreakpointChanges();\n this.observeElementSizeChanges();\n });\n }\n\n ngAfterContentInit(): void {\n if (this.eclLinkComponents) {\n this.eclLinkComponents.forEach((link) => {\n link.class = 'ecl-banner__link-cta';\n });\n }\n\n if (this.hasVideo) {\n const videoEl : HTMLVideoElement = this.eclBannerVideo.el.nativeElement;\n videoEl.addEventListener('play', () => {\n this.isPlaying = true;\n });\n videoEl.addEventListener('pause', () => {\n this.isPlaying = false;\n });\n this.renderer.setProperty(videoEl, 'muted', true);\n this.renderer.setProperty(videoEl, 'loop', true);\n this.renderer.setProperty(videoEl, 'autoplay', true);\n this.renderer.removeAttribute(videoEl, 'controls');\n }\n }\n\n ngOnDestroy(): void {\n this.destroy$.next(true);\n this.destroy$.unsubscribe();\n }\n\n /**\n * Indicates whether the banner contains at least one call-to-action link.\n */\n get hasCtaLink(): boolean {\n return this.eclLinkComponents.length > 0;\n }\n\n /**\n * Indicates whether the banner contains an image.\n */\n get hasImage(): boolean {\n return !!this.eclBannerImage;\n }\n\n /**\n * Indicates whether the banner contains a video.\n */\n get hasVideo(): boolean {\n return !!this.eclBannerVideo;\n }\n\n /**\n * Indicates whether the banner contains any media (image or video).\n */\n get hasMedia(): boolean {\n return this.hasImage || this.hasVideo;\n }\n\n /**\n * Handles keyboard activation (Enter key) to play video.\n * Moves focus to pause button after playing starts.\n */\n onKeydownEnterPlay(): void {\n this.onVideoPlay();\n setTimeout(() => this.pauseBtn.onFocus());\n }\n\n @HostListener('window:resize')\n onWindowResize(): void {\n this.observeElementSizeChanges();\n }\n\n /**\n * Handles keyboard activation (Enter key) to pause video.\n * Moves focus to play button after pausing.\n */\n onKeydownEnterPause(): void {\n this.onVideoPause();\n setTimeout(() => this.playBtn.onFocus());\n }\n\n /**\n * Plays the embedded banner video.\n * Triggered via interaction (e.g., button).\n */\n onVideoPlay(): void {\n const videoEl : HTMLVideoElement = this.eclBannerVideo.el.nativeElement;\n videoEl.play();\n }\n\n /**\n * Pauses the embedded banner video.\n * Triggered via interaction (e.g., button).\n */\n onVideoPause(): void {\n const videoEl : HTMLVideoElement = this.eclBannerVideo.el.nativeElement;\n videoEl.pause();\n }\n\n private observeElementSizeChanges(): void {\n // new ResizeObserver(() => { // Removing this for now , because it is causing problems (infinite loop). Observing window:resize.\n setTimeout(() => {\n this.checkViewport();\n }, this.TIMEOUT_INTERVAL);\n // }).observe(this.bannerContainer.nativeElement);\n }\n\n private checkViewport() {\n if (window.innerWidth > this.breakpoint) {\n this.setBannerHeight();\n } else {\n this.resetBannerHeight();\n }\n }\n\n private waitForAspectRatioToBeDefined(attemptCounter: number) {\n attemptCounter = attemptCounter + 1;\n const aspectRatio = window.getComputedStyle(this.el.nativeElement).getPropertyValue('--css-aspect-ratio');\n\n if (\n (typeof aspectRatio === 'undefined' || aspectRatio === '') &&\n this.maxIterations > attemptCounter\n ) {\n setTimeout(() => this.waitForAspectRatioToBeDefined(attemptCounter), 100);\n } else {\n this.setHeight(aspectRatio);\n }\n }\n\n private setBannerHeight(): void {\n if (this.hasMedia) {\n this.waitForAspectRatioToBeDefined(0);\n } else {\n this.setHeight(this.getDefaultRatio());\n }\n }\n\n private setHeight(ratio) {\n if (this.bannerContainer) {\n const bannerHeight = this.bannerContainer.nativeElement.offsetHeight + 2*this.bannerVPadding;\n const bannerWidth = parseInt(window.getComputedStyle(this.el.nativeElement).getPropertyValue('width'), 10);\n const [denominator, numerator] = ratio.split('/').map(Number);\n const currentHeight = (bannerWidth * numerator) / denominator;\n if (bannerHeight > currentHeight) {\n this.renderer.setStyle(this.el.nativeElement, 'aspect-ratio', 'auto');\n this.renderer.setStyle(this.el.nativeElement, 'height', `${bannerHeight}px`);\n } else {\n this.resetBannerHeight();\n }\n }\n\n // Add margin to the banner container when there is a footer\n // This is needed to keep the vertical alignment\n if (this.bannerFooter) {\n this.bannerFooterHeight = this.bannerFooter.nativeElement.offsetHeight;\n // this.renderer.setStyle(this.el.nativeElement, '--banner-footer-height', `${this.bannerFooter.nativeElement.offsetHeight}px`);\n }\n }\n\n private resetBannerHeight(): void {\n // remove aspect-ratio\n this.renderer.removeStyle(this.el.nativeElement, 'aspect-ratio');\n\n // set height to auto\n this.renderer.setStyle(this.el.nativeElement, 'height', 'auto');\n\n // update footer height if bannerFooter exists\n if (this.bannerFooter) {\n // const footerHeight = `${this.bannerFooter.nativeElement.offsetHeight}px`;\n this.bannerFooterHeight = this.bannerFooter.nativeElement.offsetHeight;\n // this.renderer.setStyle(this.el.nativeElement, '--banner-footer-height', footerHeight);\n }\n }\n\n private getDefaultRatio(): string {\n switch(this.eclSize) {\n case 'xs': {\n return DefaultRatio.XS;\n }\n case 's': {\n return DefaultRatio.S;\n }\n case 'l': {\n return DefaultRatio.L;\n }\n default: {\n return DefaultRatio.M;\n }\n }\n }\n\n private observeBreakpointChanges(): void {\n this.cdkBreakpointObserver\n .observe([\n '(min-width: 1140px)',\n ])\n .pipe(takeUntil(this.destroy$), delay(this.TIMEOUT_INTERVAL))\n .subscribe((result) => {\n this.isTabletBreakpoint = result.breakpoints['(min-width: 997px)'];\n if ( !this.isTabletBreakpoint) {\n this.setBannerHeight();\n }\n });\n }\n\n}\n","@if(hasImage) {\n<figure class=\"ecl-banner__picture-container\">\n <ng-content select=\"[eclBannerPicture]\"></ng-content>\n @if(copyright) {\n <ng-container *ngTemplateOutlet=\"bannerFooterTemplate\"></ng-container>\n }\n</figure>\n}\n\n@if(hasVideo) {\n<div class=\"ecl-banner__video-container\">\n <ng-content select=\"[eclBannerVideo]\"></ng-content>\n @if(copyright) {\n <ng-container *ngTemplateOutlet=\"bannerFooterTemplate\"></ng-container>\n }\n <button #playBtn eclButton variant=\"tertiary\" isIconOnly class=\"ecl-banner__play\" (click)=\"onVideoPlay()\"\n [style.display]=\"isPlaying ? 'none' : 'block'\" (keydown.enter)=\"onKeydownEnterPlay()\">\n <span eclButtonLabel>Play video</span>\n <ecl-icon icon=\"play-outline\" size=\"m\"></ecl-icon>\n </button>\n <button #pauseBtn eclButton variant=\"tertiary\" isIconOnly class=\"ecl-banner__pause\" (click)=\"onVideoPause()\"\n [style.display]=\"isPlaying ? 'block' : 'none'\" (keydown.enter)=\"onKeydownEnterPause()\">\n <span eclButtonLabel>Pause video</span>\n <ecl-icon icon=\"pause-outline\" size=\"m\"></ecl-icon>\n </button>\n</div>\n}\n<div class=\"ecl-container ecl-banner__info\">\n <div #bannerContainer class=\"ecl-banner__container \">\n <div class=\"ecl-banner__content\">\n <ng-content select=\"[eclBannerTitle]\"></ng-content>\n <ng-content select=\"[eclBannerDescription]\"></ng-content>\n @if (hasCtaLink) {\n <div class=\"ecl-banner__cta\">\n <ng-content select=\"[eclLink]\"></ng-content>\n </div>\n }\n <ng-content></ng-content>\n </div>\n </div>\n</div>\n\n<ng-template #bannerFooterTemplate>\n <footer #bannerFooter class=\"ecl-banner__credit\"><div class=\"ecl-container\">© {{copyright}}</div></footer>\n</ng-template>","import { Directive, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive applied to the banner title container element.\n * Adds appropriate styling class to the host element.\n */\n@Directive({\n selector: '[eclBannerTitle]',\n})\nexport class EclBannerTitleDirective extends ECLBaseDirective {\n @HostBinding('class') className = 'ecl-banner__title';\n}\n\n/**\n * Directive applied to the text element within the banner title.\n * Adds appropriate styling class to the host element.\n */\n@Directive({\n selector: '[eclBannerTitleText]',\n})\nexport class EclBannerTitleTextDirective extends ECLBaseDirective {\n @HostBinding('class') className = 'ecl-banner__title-text';\n}\n\n/**\n * Directive applied to the link element within the banner title.\n * Adds link classes and marks the link as standalone.\n */\n@Directive({\n selector: '[eclBannerTitleLink]',\n})\nexport class EclBannerTitleLinkDirective extends ECLBaseDirective {\n @HostBinding('class') className = 'ecl-link ecl-banner__title-link';\n @HostBinding('class.ecl-link--standalone') isStandalone = true;\n}\n","import { Directive, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive for the main banner description container.\n */\n@Directive({\n selector: '[eclBannerDescription]',\n})\nexport class EclBannerDescriptionDirective extends ECLBaseDirective {\n @HostBinding('class') className = 'ecl-banner__description';\n}\n\n/**\n * Directive for the textual content inside the banner description.\n */\n@Directive({\n selector: '[eclBannerDescriptionText]',\n})\nexport class EclBannerDescriptionTextDirective extends ECLBaseDirective {\n @HostBinding('class') className = 'ecl-banner__description-text';\n}\n\n/**\n * Directive for a link inside the banner description.\n * Adds link classes and marks the link as standalone.\n */\n@Directive({\n selector: '[eclBannerDescriptionLink]',\n})\nexport class EclBannerDescriptionLinkDirective extends ECLBaseDirective {\n @HostBinding('class') className = 'ecl-link ecl-banner__description-link';\n @HostBinding('class.ecl-link--standalone') isStandalone = true;\n}\n","import { NgModule } from '@angular/core';\nimport { EclBannerTitleDirective, EclBannerTitleLinkDirective, EclBannerTitleTextDirective } from './ecl-banner-title.directive';\nimport { EclBannerDescriptionDirective, EclBannerDescriptionLinkDirective, EclBannerDescriptionTextDirective } from './ecl-banner-description.directive';\nimport { EclBannerComponent } from './ecl-banner.component';\nimport { EclBannerImageDirective, EclBannerPictureDirective } from './ecl-banner-picture.directive';\nimport { EclBannerVideoDirective } from './ecl-banner-video.directive';\n\nconst COMPONENTS = [\n EclBannerComponent,\n EclBannerTitleDirective,\n EclBannerTitleTextDirective,\n EclBannerDescriptionDirective,\n EclBannerDescriptionTextDirective,\n EclBannerPictureDirective,\n EclBannerImageDirective,\n EclBannerTitleLinkDirective,\n EclBannerVideoDirective,\n EclBannerDescriptionLinkDirective,\n];\n\n/**\n * @description\n * Module that provides the EclBanner component and its dependencies.\n *\n * @deprecated Use {@link EUI_ECL_BANNER} instead.\n */\n@NgModule({\n imports: [...COMPONENTS],\n exports: [...COMPONENTS],\n})\nexport class EclBannerModule {}\n","import { EclBannerComponent } from './ecl-banner.component';\nimport { EclBannerTitleDirective, EclBannerTitleTextDirective, EclBannerTitleLinkDirective } from './ecl-banner-title.directive';\nimport { EclBannerDescriptionDirective, EclBannerDescriptionTextDirective, EclBannerDescriptionLinkDirective } from './ecl-banner-description.directive';\nimport { EclBannerImageDirective, EclBannerPictureDirective } from './ecl-banner-picture.directive';\nimport { EclBannerVideoDirective } from './ecl-banner-video.directive';\n\nexport * from './ecl-banner.module';\nexport * from './ecl-banner.component';\nexport * from './ecl-banner-title.directive';\nexport * from './ecl-banner-description.directive';\nexport * from './ecl-banner-picture.directive';\nexport * from './ecl-banner-video.directive';\n\nexport const EUI_ECL_BANNER = [\n EclBannerComponent,\n EclBannerTitleDirective,\n EclBannerTitleTextDirective,\n EclBannerTitleLinkDirective,\n EclBannerDescriptionDirective,\n EclBannerDescriptionTextDirective,\n EclBannerDescriptionLinkDirective,\n EclBannerPictureDirective,\n EclBannerImageDirective,\n EclBannerVideoDirective,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -58,10 +58,10 @@ class EclBlockquoteComponent extends ECLBaseDirective {
58
58
  this.cd.detectChanges();
59
59
  });
60
60
  }
61
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-next.5", ngImport: i0, type: EclBlockquoteComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
62
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.0-next.5", type: EclBlockquoteComponent, isStandalone: true, selector: "[eclBlockquote]", inputs: { author: "author" }, host: { properties: { "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0, template: "<ng-content select=\"picture[eclBlockquotePicture]\"></ng-content>\n<div class=\"ecl-blockquote__body\">\n <blockquote class=\"ecl-blockquote__quote\">\n <p class=\"ecl-blockquote__citation\" [attr.lang]=\"languageCode\">\n <ng-content></ng-content>\n </p>\n @if (hasAuthor) {\n <footer class=\"ecl-blockquote__attribution\">\n <cite class=\"ecl-blockquote__author\">{{ author }}</cite>\n </footer>\n }\n </blockquote>\n</div>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
61
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-rc.0", ngImport: i0, type: EclBlockquoteComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
62
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.0-rc.0", type: EclBlockquoteComponent, isStandalone: true, selector: "[eclBlockquote]", inputs: { author: "author" }, host: { properties: { "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0, template: "<ng-content select=\"picture[eclBlockquotePicture]\"></ng-content>\n<div class=\"ecl-blockquote__body\">\n <blockquote class=\"ecl-blockquote__quote\">\n <p class=\"ecl-blockquote__citation\" [attr.lang]=\"languageCode\">\n <ng-content></ng-content>\n </p>\n @if (hasAuthor) {\n <footer class=\"ecl-blockquote__attribution\">\n <cite class=\"ecl-blockquote__author\">{{ author }}</cite>\n </footer>\n }\n </blockquote>\n</div>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
63
63
  }
64
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-next.5", ngImport: i0, type: EclBlockquoteComponent, decorators: [{
64
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-rc.0", ngImport: i0, type: EclBlockquoteComponent, decorators: [{
65
65
  type: Component,
66
66
  args: [{ selector: '[eclBlockquote]', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, imports: [CommonModule], template: "<ng-content select=\"picture[eclBlockquotePicture]\"></ng-content>\n<div class=\"ecl-blockquote__body\">\n <blockquote class=\"ecl-blockquote__quote\">\n <p class=\"ecl-blockquote__citation\" [attr.lang]=\"languageCode\">\n <ng-content></ng-content>\n </p>\n @if (hasAuthor) {\n <footer class=\"ecl-blockquote__attribution\">\n <cite class=\"ecl-blockquote__author\">{{ author }}</cite>\n </footer>\n }\n </blockquote>\n</div>\n" }]
67
67
  }], propDecorators: { author: [{
@@ -82,10 +82,10 @@ class EclBlockquotePictureDirective extends ECLBaseDirective {
82
82
  get cssClasses() {
83
83
  return [super.getCssClasses('ecl-picture ecl-blockquote__picture')].join(' ').trim();
84
84
  }
85
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-next.5", ngImport: i0, type: EclBlockquotePictureDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
86
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.0-next.5", type: EclBlockquotePictureDirective, isStandalone: true, selector: "picture[eclBlockquotePicture]", host: { properties: { "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0 }); }
85
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-rc.0", ngImport: i0, type: EclBlockquotePictureDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
86
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.0-rc.0", type: EclBlockquotePictureDirective, isStandalone: true, selector: "picture[eclBlockquotePicture]", host: { properties: { "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0 }); }
87
87
  }
88
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-next.5", ngImport: i0, type: EclBlockquotePictureDirective, decorators: [{
88
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-rc.0", ngImport: i0, type: EclBlockquotePictureDirective, decorators: [{
89
89
  type: Directive,
90
90
  args: [{
91
91
  selector: 'picture[eclBlockquotePicture]',
@@ -105,10 +105,10 @@ class EclBlockquoteImageDirective extends ECLBaseDirective {
105
105
  get cssClasses() {
106
106
  return [super.getCssClasses('ecl-blockquote__image')].join(' ').trim();
107
107
  }
108
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-next.5", ngImport: i0, type: EclBlockquoteImageDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
109
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.0-next.5", type: EclBlockquoteImageDirective, isStandalone: true, selector: "img[eclBlockquoteImage]", host: { properties: { "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0 }); }
108
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-rc.0", ngImport: i0, type: EclBlockquoteImageDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
109
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.0-rc.0", type: EclBlockquoteImageDirective, isStandalone: true, selector: "img[eclBlockquoteImage]", host: { properties: { "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0 }); }
110
110
  }
111
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-next.5", ngImport: i0, type: EclBlockquoteImageDirective, decorators: [{
111
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-rc.0", ngImport: i0, type: EclBlockquoteImageDirective, decorators: [{
112
112
  type: Directive,
113
113
  args: [{
114
114
  selector: 'img[eclBlockquoteImage]',
@@ -126,11 +126,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-next.5",
126
126
  * @deprecated Use {@link EUI_ECL_BLOCKQUOTE} instead.
127
127
  */
128
128
  class EclBlockquoteModule {
129
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-next.5", ngImport: i0, type: EclBlockquoteModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
130
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.0-next.5", ngImport: i0, type: EclBlockquoteModule, imports: [EclBlockquoteComponent, EclBlockquoteImageDirective, EclBlockquotePictureDirective], exports: [EclBlockquoteComponent, EclBlockquoteImageDirective, EclBlockquotePictureDirective] }); }
131
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.0-next.5", ngImport: i0, type: EclBlockquoteModule, imports: [EclBlockquoteComponent] }); }
129
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-rc.0", ngImport: i0, type: EclBlockquoteModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
130
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.0-rc.0", ngImport: i0, type: EclBlockquoteModule, imports: [EclBlockquoteComponent, EclBlockquoteImageDirective, EclBlockquotePictureDirective], exports: [EclBlockquoteComponent, EclBlockquoteImageDirective, EclBlockquotePictureDirective] }); }
131
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.0-rc.0", ngImport: i0, type: EclBlockquoteModule, imports: [EclBlockquoteComponent] }); }
132
132
  }
133
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-next.5", ngImport: i0, type: EclBlockquoteModule, decorators: [{
133
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-rc.0", ngImport: i0, type: EclBlockquoteModule, decorators: [{
134
134
  type: NgModule,
135
135
  args: [{
136
136
  imports: [EclBlockquoteComponent, EclBlockquoteImageDirective, EclBlockquotePictureDirective],
@@ -1 +1 @@
1
- {"version":3,"file":"eui-ecl-components-ecl-blockquote.mjs","sources":["../../components/ecl-blockquote/ecl-blockquote.component.ts","../../components/ecl-blockquote/ecl-blockquote.component.html","../../components/ecl-blockquote/ecl-blockquote-picture.directive.ts","../../components/ecl-blockquote/ecl-blockquote.module.ts","../../components/ecl-blockquote/index.ts","../../components/ecl-blockquote/eui-ecl-components-ecl-blockquote.ts"],"sourcesContent":["import {\n Component,\n Input,\n HostBinding,\n ChangeDetectionStrategy,\n ViewEncapsulation,\n OnInit,\n OnDestroy,\n ChangeDetectorRef,\n inject,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { I18nService } from '@eui/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Blockquote component based on the ECL design system.\n * Displays quoted text with an optional author.\n * Supports language awareness through the I18n service.\n */\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[eclBlockquote]',\n templateUrl: './ecl-blockquote.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n})\nexport class EclBlockquoteComponent extends ECLBaseDirective implements OnInit, OnDestroy {\n /**\n * Author name associated with the quoted content.\n * If provided, it will be displayed below the blockquote.\n */\n @Input() author: string;\n /**\n * Current active language code, retrieved from the I18n service.\n */\n languageCode = 'en';\n protected i18nService = inject(I18nService);\n private cd = inject(ChangeDetectorRef);\n\n /**\n * Applies the CSS classes for the blockquote element.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-blockquote')].join(' ').trim();\n }\n\n private destroy$: Subject<boolean> = new Subject<boolean>();\n\n /**\n * Angular lifecycle hook.\n * Subscribes to language change events on component initialization.\n */\n ngOnInit(): void {\n this.handleLanguageChangeState();\n }\n\n /**\n * Angular lifecycle hook.\n * Cleans up subscriptions on component destruction.\n */\n ngOnDestroy(): void {\n this.destroy$.next(true);\n this.destroy$.unsubscribe();\n }\n\n /**\n * Checks if an author is provided.\n */\n get hasAuthor(): boolean {\n return this.author !== null;\n }\n\n /**\n * Handles updates to the language code when the I18n service state changes.\n */\n private handleLanguageChangeState(): void {\n this.i18nService.getState().pipe(takeUntil(this.destroy$)).subscribe((lang) => {\n this.languageCode = lang.activeLang;\n this.cd.detectChanges();\n });\n }\n}\n","<ng-content select=\"picture[eclBlockquotePicture]\"></ng-content>\n<div class=\"ecl-blockquote__body\">\n <blockquote class=\"ecl-blockquote__quote\">\n <p class=\"ecl-blockquote__citation\" [attr.lang]=\"languageCode\">\n <ng-content></ng-content>\n </p>\n @if (hasAuthor) {\n <footer class=\"ecl-blockquote__attribution\">\n <cite class=\"ecl-blockquote__author\">{{ author }}</cite>\n </footer>\n }\n </blockquote>\n</div>\n","import { Directive, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive for the picture element inside the ECL Blockquote.\n * Automatically applies the `ecl-picture` and `ecl-blockquote__picture` CSS classes.\n */\n@Directive({\n selector: 'picture[eclBlockquotePicture]',\n})\nexport class EclBlockquotePictureDirective extends ECLBaseDirective {\n /**\n * Returns the CSS classes to apply for the blockquote picture element.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-picture ecl-blockquote__picture')].join(' ').trim();\n }\n}\n\n/**\n * Directive for the image inside the ECL Blockquote.\n * Automatically applies the `ecl-blockquote__image` CSS class.\n */\n@Directive({\n selector: 'img[eclBlockquoteImage]',\n standalone: true,\n})\nexport class EclBlockquoteImageDirective extends ECLBaseDirective {\n /**\n * Returns the CSS classes to apply for the blockquote image element.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-blockquote__image')].join(' ').trim();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { EclBlockquoteComponent } from './ecl-blockquote.component';\nimport { EclBlockquoteImageDirective, EclBlockquotePictureDirective } from './ecl-blockquote-picture.directive';\n\n/**\n * @description\n * Module that provides the EclBlockquote component and its dependencies.\n *\n * @deprecated Use {@link EUI_ECL_BLOCKQUOTE} instead.\n */\n@NgModule({\n imports: [EclBlockquoteComponent, EclBlockquoteImageDirective, EclBlockquotePictureDirective],\n exports: [EclBlockquoteComponent, EclBlockquoteImageDirective, EclBlockquotePictureDirective],\n})\nexport class EclBlockquoteModule {}\n","import { EclBlockquoteComponent } from './ecl-blockquote.component';\nimport { EclBlockquoteImageDirective } from './ecl-blockquote-picture.directive';\nimport { EclBlockquotePictureDirective } from './ecl-blockquote-picture.directive';\n\nexport * from './ecl-blockquote.module';\nexport * from './ecl-blockquote.component';\nexport * from './ecl-blockquote-picture.directive';\n\nexport const EUI_ECL_BLOCKQUOTE = [\n EclBlockquoteComponent,\n EclBlockquoteImageDirective,\n EclBlockquotePictureDirective,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"eui-ecl-components-ecl-blockquote.mjs","sources":["../../components/ecl-blockquote/ecl-blockquote.component.ts","../../components/ecl-blockquote/ecl-blockquote.component.html","../../components/ecl-blockquote/ecl-blockquote-picture.directive.ts","../../components/ecl-blockquote/ecl-blockquote.module.ts","../../components/ecl-blockquote/index.ts","../../components/ecl-blockquote/eui-ecl-components-ecl-blockquote.ts"],"sourcesContent":["import {\n Component,\n Input,\n HostBinding,\n ChangeDetectionStrategy,\n ViewEncapsulation,\n OnInit,\n OnDestroy,\n ChangeDetectorRef,\n inject,\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { I18nService } from '@eui/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Blockquote component based on the ECL design system.\n * Displays quoted text with an optional author.\n * Supports language awareness through the I18n service.\n */\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[eclBlockquote]',\n templateUrl: './ecl-blockquote.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule],\n})\nexport class EclBlockquoteComponent extends ECLBaseDirective implements OnInit, OnDestroy {\n /**\n * Author name associated with the quoted content.\n * If provided, it will be displayed below the blockquote.\n */\n @Input() author: string;\n /**\n * Current active language code, retrieved from the I18n service.\n */\n languageCode = 'en';\n protected i18nService = inject(I18nService);\n private cd = inject(ChangeDetectorRef);\n\n /**\n * Applies the CSS classes for the blockquote element.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-blockquote')].join(' ').trim();\n }\n\n private destroy$: Subject<boolean> = new Subject<boolean>();\n\n /**\n * Angular lifecycle hook.\n * Subscribes to language change events on component initialization.\n */\n ngOnInit(): void {\n this.handleLanguageChangeState();\n }\n\n /**\n * Angular lifecycle hook.\n * Cleans up subscriptions on component destruction.\n */\n ngOnDestroy(): void {\n this.destroy$.next(true);\n this.destroy$.unsubscribe();\n }\n\n /**\n * Checks if an author is provided.\n */\n get hasAuthor(): boolean {\n return this.author !== null;\n }\n\n /**\n * Handles updates to the language code when the I18n service state changes.\n */\n private handleLanguageChangeState(): void {\n this.i18nService.getState().pipe(takeUntil(this.destroy$)).subscribe((lang) => {\n this.languageCode = lang.activeLang;\n this.cd.detectChanges();\n });\n }\n}\n","<ng-content select=\"picture[eclBlockquotePicture]\"></ng-content>\n<div class=\"ecl-blockquote__body\">\n <blockquote class=\"ecl-blockquote__quote\">\n <p class=\"ecl-blockquote__citation\" [attr.lang]=\"languageCode\">\n <ng-content></ng-content>\n </p>\n @if (hasAuthor) {\n <footer class=\"ecl-blockquote__attribution\">\n <cite class=\"ecl-blockquote__author\">{{ author }}</cite>\n </footer>\n }\n </blockquote>\n</div>\n","import { Directive, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive for the picture element inside the ECL Blockquote.\n * Automatically applies the `ecl-picture` and `ecl-blockquote__picture` CSS classes.\n */\n@Directive({\n selector: 'picture[eclBlockquotePicture]',\n})\nexport class EclBlockquotePictureDirective extends ECLBaseDirective {\n /**\n * Returns the CSS classes to apply for the blockquote picture element.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-picture ecl-blockquote__picture')].join(' ').trim();\n }\n}\n\n/**\n * Directive for the image inside the ECL Blockquote.\n * Automatically applies the `ecl-blockquote__image` CSS class.\n */\n@Directive({\n selector: 'img[eclBlockquoteImage]',\n standalone: true,\n})\nexport class EclBlockquoteImageDirective extends ECLBaseDirective {\n /**\n * Returns the CSS classes to apply for the blockquote image element.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-blockquote__image')].join(' ').trim();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { EclBlockquoteComponent } from './ecl-blockquote.component';\nimport { EclBlockquoteImageDirective, EclBlockquotePictureDirective } from './ecl-blockquote-picture.directive';\n\n/**\n * @description\n * Module that provides the EclBlockquote component and its dependencies.\n *\n * @deprecated Use {@link EUI_ECL_BLOCKQUOTE} instead.\n */\n@NgModule({\n imports: [EclBlockquoteComponent, EclBlockquoteImageDirective, EclBlockquotePictureDirective],\n exports: [EclBlockquoteComponent, EclBlockquoteImageDirective, EclBlockquotePictureDirective],\n})\nexport class EclBlockquoteModule {}\n","import { EclBlockquoteComponent } from './ecl-blockquote.component';\nimport { EclBlockquoteImageDirective } from './ecl-blockquote-picture.directive';\nimport { EclBlockquotePictureDirective } from './ecl-blockquote-picture.directive';\n\nexport * from './ecl-blockquote.module';\nexport * from './ecl-blockquote.component';\nexport * from './ecl-blockquote-picture.directive';\n\nexport const EUI_ECL_BLOCKQUOTE = [\n EclBlockquoteComponent,\n EclBlockquoteImageDirective,\n EclBlockquotePictureDirective,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -92,10 +92,10 @@ class EclBreadcrumbSegmentComponent extends ECLBaseDirective {
92
92
  evt.stopPropagation();
93
93
  }
94
94
  }
95
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-next.5", ngImport: i0, type: EclBreadcrumbSegmentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
96
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.0-next.5", type: EclBreadcrumbSegmentComponent, isStandalone: true, selector: "ecl-breadcrumb-segment, li[eclBreadcrumbSegment]", inputs: { routerLink: "routerLink", queryParams: "queryParams", href: "href", queryParamsHandling: "queryParamsHandling", isEllipsis: ["isEllipsis", "isEllipsis", booleanAttribute], isCurrentPage: ["isCurrentPage", "isCurrentPage", booleanAttribute], isHidden: ["isHidden", "isHidden", booleanAttribute] }, outputs: { segmentClick: "segmentClick" }, host: { properties: { "attr.tabindex": "this.tabIndex", "attr.role": "this.role", "attr.aria-hidden": "this.isHidden", "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0, template: "@if (!isEllipsis) {\n@if (!isCurrentPage && href) {\n<a eclLink variant=\"standalone\" [isNoVisited]=\"true\" [href]=\"href\" tabindex=\"0\" (click)=\"onSegmentClick($event)\"\n class=\"ecl-breadcrumb__link\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</a>\n}\n@if (!isCurrentPage && !href) {\n<a eclLink [routerLink]=\"routerLink\" [queryParams]=\"queryParams\" [queryParamsHandling]=\"queryParamsHandling\"\n variant=\"standalone\" [isNoVisited]=\"true\" tabindex=\"0\" (click)=\"onSegmentClick($event)\"\n class=\"ecl-breadcrumb__link\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</a>\n}\n} @else {\n<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n}\n\n@if (isCurrentPage) {\n<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n} @else {\n<ecl-icon role=\"presentation\" icon=\"corner-arrow\" ariaHidden=\"true\" focusable=\"false\" size=\"fluid\"\n class=\"ecl-breadcrumb__icon\">\n</ecl-icon>\n}\n<ng-template #content>\n <ng-content></ng-content>\n</ng-template>", dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i1.EclIconComponent, selector: "ecl-icon", inputs: ["iconSet", "icon", "size", "color", "transform", "ariaLabelledby", "role", "title", "ariaHidden", "focusable", "isFlipHorizontal"] }, { kind: "directive", type: i2.EclLinkDirective, selector: "[eclLink]", inputs: ["isInverted", "isIconOnly", "isNoVisited", "variant"] }], encapsulation: i0.ViewEncapsulation.None }); }
95
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-rc.0", ngImport: i0, type: EclBreadcrumbSegmentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
96
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.0-rc.0", type: EclBreadcrumbSegmentComponent, isStandalone: true, selector: "ecl-breadcrumb-segment, li[eclBreadcrumbSegment]", inputs: { routerLink: "routerLink", queryParams: "queryParams", href: "href", queryParamsHandling: "queryParamsHandling", isEllipsis: ["isEllipsis", "isEllipsis", booleanAttribute], isCurrentPage: ["isCurrentPage", "isCurrentPage", booleanAttribute], isHidden: ["isHidden", "isHidden", booleanAttribute] }, outputs: { segmentClick: "segmentClick" }, host: { properties: { "attr.tabindex": "this.tabIndex", "attr.role": "this.role", "attr.aria-hidden": "this.isHidden", "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0, template: "@if (!isEllipsis) {\n@if (!isCurrentPage && href) {\n<a eclLink variant=\"standalone\" [isNoVisited]=\"true\" [href]=\"href\" tabindex=\"0\" (click)=\"onSegmentClick($event)\"\n class=\"ecl-breadcrumb__link\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</a>\n}\n@if (!isCurrentPage && !href) {\n<a eclLink [routerLink]=\"routerLink\" [queryParams]=\"queryParams\" [queryParamsHandling]=\"queryParamsHandling\"\n variant=\"standalone\" [isNoVisited]=\"true\" tabindex=\"0\" (click)=\"onSegmentClick($event)\"\n class=\"ecl-breadcrumb__link\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</a>\n}\n} @else {\n<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n}\n\n@if (isCurrentPage) {\n<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n} @else {\n<ecl-icon role=\"presentation\" icon=\"corner-arrow\" ariaHidden=\"true\" focusable=\"false\" size=\"fluid\"\n class=\"ecl-breadcrumb__icon\">\n</ecl-icon>\n}\n<ng-template #content>\n <ng-content></ng-content>\n</ng-template>", dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i1.EclIconComponent, selector: "ecl-icon", inputs: ["iconSet", "icon", "size", "color", "transform", "ariaLabelledby", "role", "title", "ariaHidden", "focusable", "isFlipHorizontal"] }, { kind: "directive", type: i2.EclLinkDirective, selector: "[eclLink]", inputs: ["isInverted", "isIconOnly", "isNoVisited", "variant"] }], encapsulation: i0.ViewEncapsulation.None }); }
97
97
  }
98
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-next.5", ngImport: i0, type: EclBreadcrumbSegmentComponent, decorators: [{
98
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-rc.0", ngImport: i0, type: EclBreadcrumbSegmentComponent, decorators: [{
99
99
  type: Component,
100
100
  args: [{ selector: 'ecl-breadcrumb-segment, li[eclBreadcrumbSegment]', imports: [NgTemplateOutlet, RouterLink, RouterLinkWithHref, ...EUI_ECL_ICON, ...EUI_ECL_LINK], encapsulation: ViewEncapsulation.None, template: "@if (!isEllipsis) {\n@if (!isCurrentPage && href) {\n<a eclLink variant=\"standalone\" [isNoVisited]=\"true\" [href]=\"href\" tabindex=\"0\" (click)=\"onSegmentClick($event)\"\n class=\"ecl-breadcrumb__link\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</a>\n}\n@if (!isCurrentPage && !href) {\n<a eclLink [routerLink]=\"routerLink\" [queryParams]=\"queryParams\" [queryParamsHandling]=\"queryParamsHandling\"\n variant=\"standalone\" [isNoVisited]=\"true\" tabindex=\"0\" (click)=\"onSegmentClick($event)\"\n class=\"ecl-breadcrumb__link\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</a>\n}\n} @else {\n<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n}\n\n@if (isCurrentPage) {\n<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n} @else {\n<ecl-icon role=\"presentation\" icon=\"corner-arrow\" ariaHidden=\"true\" focusable=\"false\" size=\"fluid\"\n class=\"ecl-breadcrumb__icon\">\n</ecl-icon>\n}\n<ng-template #content>\n <ng-content></ng-content>\n</ng-template>" }]
101
101
  }], ctorParameters: () => [], propDecorators: { tabIndex: [{
@@ -143,10 +143,10 @@ class EclBreadcrumbContainerDirective extends ECLBaseDirective {
143
143
  */
144
144
  this.hasClass = true;
145
145
  }
146
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-next.5", ngImport: i0, type: EclBreadcrumbContainerDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
147
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.0-next.5", type: EclBreadcrumbContainerDirective, isStandalone: true, selector: "[eclBreadcrumbContainer]", host: { properties: { "class.ecl-breadcrumb__container": "this.hasClass" } }, usesInheritance: true, ngImport: i0 }); }
146
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-rc.0", ngImport: i0, type: EclBreadcrumbContainerDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
147
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.0-rc.0", type: EclBreadcrumbContainerDirective, isStandalone: true, selector: "[eclBreadcrumbContainer]", host: { properties: { "class.ecl-breadcrumb__container": "this.hasClass" } }, usesInheritance: true, ngImport: i0 }); }
148
148
  }
149
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-next.5", ngImport: i0, type: EclBreadcrumbContainerDirective, decorators: [{
149
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-rc.0", ngImport: i0, type: EclBreadcrumbContainerDirective, decorators: [{
150
150
  type: Directive,
151
151
  args: [{
152
152
  selector: '[eclBreadcrumbContainer]',
@@ -311,10 +311,10 @@ class EclBreadcrumbComponent extends ECLBaseDirective {
311
311
  getSegmentsTotalWidth() {
312
312
  return this.eclSegments.reduce((width, segmentComponent) => width + segmentComponent.el.nativeElement.offsetWidth, 0);
313
313
  }
314
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-next.5", ngImport: i0, type: EclBreadcrumbComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
315
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.0-next.5", type: EclBreadcrumbComponent, isStandalone: true, selector: "ecl-breadcrumb", inputs: { isExpanded: ["isExpanded", "isExpanded", booleanAttribute] }, host: { listeners: { "window:resize": "onWindowResize()" }, properties: { "attr.role": "this.role", "attr.aria-label": "this.ariaLabel", "class": "this.cssClasses", "attr.data-ecl-auto-initialized": "this.autoInitialized" } }, queries: [{ propertyName: "eclBreadcrumbContainer", first: true, predicate: EclBreadcrumbContainerDirective, descendants: true }, { propertyName: "eclSegments", predicate: i0.forwardRef(() => EclBreadcrumbSegmentComponent), descendants: true }], viewQueries: [{ propertyName: "eclEllipsisSegment", first: true, predicate: ["ellipsisSegment"], descendants: true }, { propertyName: "breadcrumbContainer", first: true, predicate: ["breadcrumbContainer"], descendants: true }], usesInheritance: true, ngImport: i0, template: "@if (!hasContainer) {\n<ol class=\"ecl-breadcrumb__container\" #breadcrumbContainer>\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</ol>\n} @else {\n<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n}\n<ng-template #content>\n <li eclBreadcrumbSegment #ellipsisSegment [isHidden]=\"true\" isEllipsis>\n <button tabindex=\"0\" eclButton variant=\"ghost\" class=\"ecl-breadcrumb__ellipsis\"\n [attr.aria-label]=\"'ecl.breadcrumb.SHOW-MORE-ITEMS' | translate\" (click)=\"onEllipsisSegmentClick($event)\">\n ...\n </button>\n </li>\n <ng-content></ng-content>\n</ng-template>", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "component", type: i1$1.EclButtonComponent, selector: "button[eclButton], button[ecl-button], a[eclButton]", inputs: ["isIconOnly", "variant", "containerStyleClass"] }, { kind: "component", type: EclBreadcrumbSegmentComponent, selector: "ecl-breadcrumb-segment, li[eclBreadcrumbSegment]", inputs: ["routerLink", "queryParams", "href", "queryParamsHandling", "isEllipsis", "isCurrentPage", "isHidden"], outputs: ["segmentClick"] }, { kind: "pipe", type: i2$1.TranslatePipe, name: "translate" }] }); }
314
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-rc.0", ngImport: i0, type: EclBreadcrumbComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
315
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.0-rc.0", type: EclBreadcrumbComponent, isStandalone: true, selector: "ecl-breadcrumb", inputs: { isExpanded: ["isExpanded", "isExpanded", booleanAttribute] }, host: { listeners: { "window:resize": "onWindowResize()" }, properties: { "attr.role": "this.role", "attr.aria-label": "this.ariaLabel", "class": "this.cssClasses", "attr.data-ecl-auto-initialized": "this.autoInitialized" } }, queries: [{ propertyName: "eclBreadcrumbContainer", first: true, predicate: EclBreadcrumbContainerDirective, descendants: true }, { propertyName: "eclSegments", predicate: i0.forwardRef(() => EclBreadcrumbSegmentComponent), descendants: true }], viewQueries: [{ propertyName: "eclEllipsisSegment", first: true, predicate: ["ellipsisSegment"], descendants: true }, { propertyName: "breadcrumbContainer", first: true, predicate: ["breadcrumbContainer"], descendants: true }], usesInheritance: true, ngImport: i0, template: "@if (!hasContainer) {\n<ol class=\"ecl-breadcrumb__container\" #breadcrumbContainer>\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</ol>\n} @else {\n<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n}\n<ng-template #content>\n <li eclBreadcrumbSegment #ellipsisSegment [isHidden]=\"true\" isEllipsis>\n <button tabindex=\"0\" eclButton variant=\"ghost\" class=\"ecl-breadcrumb__ellipsis\"\n [attr.aria-label]=\"'ecl.breadcrumb.SHOW-MORE-ITEMS' | translate\" (click)=\"onEllipsisSegmentClick($event)\">\n ...\n </button>\n </li>\n <ng-content></ng-content>\n</ng-template>", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "component", type: i1$1.EclButtonComponent, selector: "button[eclButton], button[ecl-button], a[eclButton]", inputs: ["isIconOnly", "variant", "containerStyleClass"] }, { kind: "component", type: EclBreadcrumbSegmentComponent, selector: "ecl-breadcrumb-segment, li[eclBreadcrumbSegment]", inputs: ["routerLink", "queryParams", "href", "queryParamsHandling", "isEllipsis", "isCurrentPage", "isHidden"], outputs: ["segmentClick"] }, { kind: "pipe", type: i2$1.TranslatePipe, name: "translate" }] }); }
316
316
  }
317
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-next.5", ngImport: i0, type: EclBreadcrumbComponent, decorators: [{
317
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-rc.0", ngImport: i0, type: EclBreadcrumbComponent, decorators: [{
318
318
  type: Component,
319
319
  args: [{ selector: 'ecl-breadcrumb', imports: [NgTemplateOutlet, TranslateModule, ...EUI_ECL_BUTTON, EclBreadcrumbSegmentComponent], template: "@if (!hasContainer) {\n<ol class=\"ecl-breadcrumb__container\" #breadcrumbContainer>\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</ol>\n} @else {\n<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n}\n<ng-template #content>\n <li eclBreadcrumbSegment #ellipsisSegment [isHidden]=\"true\" isEllipsis>\n <button tabindex=\"0\" eclButton variant=\"ghost\" class=\"ecl-breadcrumb__ellipsis\"\n [attr.aria-label]=\"'ecl.breadcrumb.SHOW-MORE-ITEMS' | translate\" (click)=\"onEllipsisSegmentClick($event)\">\n ...\n </button>\n </li>\n <ng-content></ng-content>\n</ng-template>", styles: [":host{display:block}\n"] }]
320
320
  }], ctorParameters: () => [], propDecorators: { isExpanded: [{
@@ -356,11 +356,11 @@ const COMPONENTS = [EclBreadcrumbComponent, EclBreadcrumbSegmentComponent, EclBr
356
356
  * @deprecated Use {@link EUI_ECL_BREADCRUMB} instead.
357
357
  */
358
358
  class EclBreadcrumbModule {
359
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-next.5", ngImport: i0, type: EclBreadcrumbModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
360
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.0-next.5", ngImport: i0, type: EclBreadcrumbModule, imports: [EclBreadcrumbComponent, EclBreadcrumbSegmentComponent, EclBreadcrumbContainerDirective], exports: [EclBreadcrumbComponent, EclBreadcrumbSegmentComponent, EclBreadcrumbContainerDirective] }); }
361
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.0-next.5", ngImport: i0, type: EclBreadcrumbModule, imports: [EclBreadcrumbComponent, EclBreadcrumbSegmentComponent] }); }
359
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-rc.0", ngImport: i0, type: EclBreadcrumbModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
360
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.0-rc.0", ngImport: i0, type: EclBreadcrumbModule, imports: [EclBreadcrumbComponent, EclBreadcrumbSegmentComponent, EclBreadcrumbContainerDirective], exports: [EclBreadcrumbComponent, EclBreadcrumbSegmentComponent, EclBreadcrumbContainerDirective] }); }
361
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.0-rc.0", ngImport: i0, type: EclBreadcrumbModule, imports: [EclBreadcrumbComponent, EclBreadcrumbSegmentComponent] }); }
362
362
  }
363
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-next.5", ngImport: i0, type: EclBreadcrumbModule, decorators: [{
363
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-rc.0", ngImport: i0, type: EclBreadcrumbModule, decorators: [{
364
364
  type: NgModule,
365
365
  args: [{
366
366
  imports: [...COMPONENTS],
@@ -1 +1 @@
1
- {"version":3,"file":"eui-ecl-components-ecl-breadcrumb.mjs","sources":["../../components/ecl-breadcrumb/events/ecl-breadcrumb-segment-click.event.ts","../../components/ecl-breadcrumb/ecl-breadcrumb-segment.component.ts","../../components/ecl-breadcrumb/ecl-breadcrumb-segment.component.html","../../components/ecl-breadcrumb/ecl-breadcrumb-container.directive.ts","../../components/ecl-breadcrumb/ecl-breadcrumb.component.ts","../../components/ecl-breadcrumb/ecl-breadcrumb.component.html","../../components/ecl-breadcrumb/ecl-breadcrumb.module.ts","../../components/ecl-breadcrumb/index.ts","../../components/ecl-breadcrumb/eui-ecl-components-ecl-breadcrumb.ts"],"sourcesContent":["import { EclBaseEvent } from '@eui/ecl/core';\n\n/**\n * Event emitted when a breadcrumb segment is clicked.\n */\nexport class EclBreadcrumbSegmentClickEvent extends EclBaseEvent {}\n","import {\n Component,\n ElementRef,\n EventEmitter,\n HostBinding,\n Input,\n Output,\n ViewEncapsulation,\n booleanAttribute,\n inject,\n} from '@angular/core';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { Params, QueryParamsHandling, RouterLink, RouterLinkWithHref } from '@angular/router';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclBreadcrumbSegmentClickEvent } from './events/ecl-breadcrumb-segment-click.event';\nimport { EUI_ECL_ICON } from '@eui/ecl/components/ecl-icon';\nimport { EUI_ECL_LINK } from '@eui/ecl/components/ecl-link';\n\n// TODO: ecl-breadcrumb-segment selector is deprecated and should be removed in v20\n\n/**\n * Displays a single breadcrumb segment with optional navigation or ellipsis.\n */\n@Component({\n selector: 'ecl-breadcrumb-segment, li[eclBreadcrumbSegment]',\n templateUrl: './ecl-breadcrumb-segment.component.html',\n imports: [NgTemplateOutlet, RouterLink, RouterLinkWithHref, ...EUI_ECL_ICON, ...EUI_ECL_LINK],\n encapsulation: ViewEncapsulation.None,\n})\nexport class EclBreadcrumbSegmentComponent extends ECLBaseDirective {\n el = inject(ElementRef);\n\n /**\n * Defines the tabindex attribute for accessibility.\n */\n @HostBinding('attr.tabindex') tabIndex = '-1';\n\n /**\n * Defines the ARIA role for accessibility.\n */\n @HostBinding('attr.role') role = 'listitem';\n\n /**\n * Router link for navigation.\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n @Input() routerLink: string | any[] = null;\n\n /**\n * Query parameters used with routerLink.\n */\n @Input() queryParams: Params | null = null;\n\n /**\n * Href used for standard navigation.\n */\n @Input() href = '';\n\n /**\n * Strategy for handling existing query parameters during navigation.\n */\n @Input() queryParamsHandling: QueryParamsHandling = null;\n\n /**\n * Displays the segment as an ellipsis instead of a link.\n */\n @Input({ transform: booleanAttribute }) isEllipsis = false;\n\n /**\n * Highlights the segment as the current page.\n */\n @Input({ transform: booleanAttribute }) isCurrentPage = false;\n\n /**\n * Hides the segment visually and from assistive technologies.\n */\n @Input({ transform: booleanAttribute })\n @HostBinding('attr.aria-hidden')\n isHidden = false;\n\n /**\n * Emits when the segment is clicked.\n */\n @Output() segmentClick = new EventEmitter<EclBreadcrumbSegmentClickEvent>();\n\n constructor() {\n super();\n const el = this.el;\n\n if (el.nativeElement.tagName.toLowerCase() === 'ecl-breadcrumb-segment') {\n console.warn('\"ecl-breadcrumb-segment\" selector is deprecated; use \"li[eclBreadcrumbSegment]\" instead.');\n }\n }\n\n /**\n * Computes the CSS classes applied to the segment.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-breadcrumb__segment'),\n this.isCurrentPage ? 'ecl-breadcrumb__current-page' : '',\n this.isEllipsis ? 'ecl-breadcrumb__segment--ellipsis' : '',\n ].join(' ').trim();\n }\n\n /**\n * Handles the click event on the segment.\n */\n onSegmentClick(evt: MouseEvent): void {\n this.segmentClick.next(new EclBreadcrumbSegmentClickEvent());\n if (!this.href) {\n evt.stopPropagation();\n }\n }\n}\n","@if (!isEllipsis) {\n@if (!isCurrentPage && href) {\n<a eclLink variant=\"standalone\" [isNoVisited]=\"true\" [href]=\"href\" tabindex=\"0\" (click)=\"onSegmentClick($event)\"\n class=\"ecl-breadcrumb__link\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</a>\n}\n@if (!isCurrentPage && !href) {\n<a eclLink [routerLink]=\"routerLink\" [queryParams]=\"queryParams\" [queryParamsHandling]=\"queryParamsHandling\"\n variant=\"standalone\" [isNoVisited]=\"true\" tabindex=\"0\" (click)=\"onSegmentClick($event)\"\n class=\"ecl-breadcrumb__link\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</a>\n}\n} @else {\n<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n}\n\n@if (isCurrentPage) {\n<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n} @else {\n<ecl-icon role=\"presentation\" icon=\"corner-arrow\" ariaHidden=\"true\" focusable=\"false\" size=\"fluid\"\n class=\"ecl-breadcrumb__icon\">\n</ecl-icon>\n}\n<ng-template #content>\n <ng-content></ng-content>\n</ng-template>","import { Directive, ElementRef, HostBinding, inject } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Used to wrap breadcrumb segments inside the breadcrumb component.\n */\n@Directive({\n selector: '[eclBreadcrumbContainer]',\n})\nexport class EclBreadcrumbContainerDirective extends ECLBaseDirective {\n el = inject(ElementRef);\n\n /**\n * Adds breadcrumb container CSS class to the host element.\n */\n @HostBinding('class.ecl-breadcrumb__container') hasClass = true;\n}\n","import {\n Component,\n ContentChildren,\n ElementRef,\n HostBinding,\n Input,\n OnDestroy,\n OnInit,\n QueryList,\n Renderer2,\n ViewChild,\n booleanAttribute,\n forwardRef,\n HostListener,\n afterNextRender,\n ContentChild,\n inject,\n} from '@angular/core';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { TranslateService, TranslateModule } from '@ngx-translate/core';\nimport { Subject, takeUntil } from 'rxjs';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclBreadcrumbSegmentComponent } from './ecl-breadcrumb-segment.component';\nimport { EclBreadcrumbContainerDirective } from './ecl-breadcrumb-container.directive';\nimport { EUI_ECL_BUTTON } from '@eui/ecl/components/ecl-button';\n\n/**\n * Displays navigation segments and handles overflow with ellipsis.\n */\n@Component({\n selector: 'ecl-breadcrumb',\n templateUrl: './ecl-breadcrumb.component.html',\n imports: [NgTemplateOutlet, TranslateModule, ...EUI_ECL_BUTTON, EclBreadcrumbSegmentComponent],\n styles: [\n `\n :host {\n display: block;\n }\n `,\n ],\n})\nexport class EclBreadcrumbComponent extends ECLBaseDirective implements OnInit, OnDestroy {\n /**\n * Expands all breadcrumb segments instead of collapsing them.\n */\n @Input({ transform: booleanAttribute }) isExpanded = false;\n\n /**\n * ARIA role attribute for accessibility.\n */\n @HostBinding('attr.role') role = 'navigation';\n\n /**\n * ARIA label describing the breadcrumb purpose.\n */\n @HostBinding('attr.aria-label') ariaLabel;\n\n /**\n * Reference to the ellipsis segment element.\n */\n @ViewChild('ellipsisSegment') eclEllipsisSegment: EclBreadcrumbSegmentComponent;\n\n /**\n * @deprecated To be removed in v20. Not needed, replaced by 'eclBreadcrumbContainer'\n */\n @ViewChild('breadcrumbContainer') breadcrumbContainer: ElementRef;\n\n /**\n * Reference to the breadcrumb container directive inside this component.\n */\n @ContentChild(EclBreadcrumbContainerDirective) eclBreadcrumbContainer: EclBreadcrumbContainerDirective;\n\n /**\n * List of breadcrumb segment components.\n */\n @ContentChildren(forwardRef(() => EclBreadcrumbSegmentComponent), { descendants: true })\n eclSegments: QueryList<EclBreadcrumbSegmentComponent>;\n private el = inject(ElementRef);\n private translate = inject(TranslateService);\n private renderer = inject(Renderer2);\n private destroy$: Subject<boolean> = new Subject<boolean>();\n private nonStaticSegments: EclBreadcrumbSegmentComponent[] = [];\n\n constructor() {\n super();\n afterNextRender(() => {\n this.init();\n this.handleOverflownSegments();\n });\n }\n\n /**\n * CSS classes applied to the breadcrumb element.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-breadcrumb'),\n this.isExpanded ? 'ecl-breadcrumb--wrap' : 'ecl-breadcrumb--collapsed',\n ].join(' ').trim();\n }\n\n /**\n * Returns true if breadcrumb was auto-initialized.\n */\n @HostBinding('attr.data-ecl-auto-initialized')\n get autoInitialized(): boolean | null {\n return this.isExpanded || null;\n }\n\n /**\n * Initializes translations for ARIA label.\n */\n ngOnInit(): void {\n this.translate\n .stream('ecl.breadcrumb.YOU-ARE-HERE')\n .pipe(takeUntil(this.destroy$))\n .subscribe((text) => {\n this.ariaLabel = text;\n });\n }\n\n /**\n * Cleans up subscriptions on destroy.\n */\n ngOnDestroy(): void {\n this.destroy$.next(true);\n this.destroy$.unsubscribe();\n }\n\n /**\n * Handles window resize and recalculates overflown segments.\n */\n @HostListener('window:resize')\n onWindowResize(): void {\n this.handleOverflownSegments();\n }\n\n /**\n * Returns true if breadcrumb container directive exists.\n */\n get hasContainer(): boolean {\n return !!this.eclBreadcrumbContainer;\n }\n\n /**\n * Expands hidden breadcrumb segments after clicking ellipsis.\n */\n onEllipsisSegmentClick(evt: MouseEvent): void {\n this.eclSegments.forEach((segment) => {\n segment.isHidden = false;\n });\n this.hideEllipsis();\n this.isExpanded = true;\n }\n\n private init(): void {\n setTimeout(() => {\n this.insertEllipsisSegmentIntoPosition();\n this.handleStaticAndNonStaticSegments();\n });\n }\n\n private insertEllipsisSegmentIntoPosition(): void {\n if (this.hasEnoughSegments()) {\n const secondEclSegmentEl: HTMLElement = this.eclSegments.get(1).el.nativeElement;\n const ellipsisSegmentEl: HTMLElement = this.eclEllipsisSegment.el.nativeElement;\n if (this.hasContainer) {\n this.renderer.insertBefore(this.eclBreadcrumbContainer.el.nativeElement, ellipsisSegmentEl, secondEclSegmentEl);\n } else {\n this.renderer.insertBefore(this.breadcrumbContainer.nativeElement, ellipsisSegmentEl, secondEclSegmentEl);\n }\n }\n }\n\n private handleOverflownSegments(): void {\n if (this.hasEnoughSegments()) {\n setTimeout(() => {\n if (this.isBreadcrumbOverflowed()) {\n this.hideNonStaticSegments();\n this.showEllipsis();\n this.collapse();\n } else {\n this.hideEllipsis();\n this.showNonStaticSegments()\n this.expand();\n }\n });\n }\n }\n\n private hideNonStaticSegments(): void {\n this.nonStaticSegments.forEach((segment) => {\n segment.isHidden = true;\n });\n }\n\n private showNonStaticSegments(): void {\n this.nonStaticSegments.forEach((segment) => {\n segment.isHidden = false;\n });\n }\n\n private collapse(): void {\n this.isExpanded = false;\n }\n\n private expand(): void {\n this.isExpanded = true;\n }\n\n private hideEllipsis(): void {\n this.eclEllipsisSegment.isHidden = true;\n }\n\n private showEllipsis(): void {\n this.eclEllipsisSegment.isHidden = false;\n }\n\n private hasEnoughSegments(): boolean {\n return this.eclSegments && this.eclSegments.length > 3;\n }\n\n private handleStaticAndNonStaticSegments(): void {\n if (this.hasEnoughSegments()) {\n this.nonStaticSegments = this.eclSegments.toArray().slice(1, this.eclSegments.length - 2);\n }\n }\n\n private isBreadcrumbOverflowed(): boolean {\n const breadcrumbTotalWidth = this.getBreadcrumbTotalWidth();\n const segmentsTotalWidth = this.getSegmentsTotalWidth();\n const marginOfError = 1.1;\n\n return segmentsTotalWidth * marginOfError >= breadcrumbTotalWidth;\n }\n\n private getBreadcrumbTotalWidth(): number {\n return this.el.nativeElement.offsetWidth;\n }\n\n private getSegmentsTotalWidth(): number {\n return this.eclSegments.reduce((width: number, segmentComponent) => width + segmentComponent.el.nativeElement.offsetWidth, 0);\n }\n}\n","@if (!hasContainer) {\n<ol class=\"ecl-breadcrumb__container\" #breadcrumbContainer>\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</ol>\n} @else {\n<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n}\n<ng-template #content>\n <li eclBreadcrumbSegment #ellipsisSegment [isHidden]=\"true\" isEllipsis>\n <button tabindex=\"0\" eclButton variant=\"ghost\" class=\"ecl-breadcrumb__ellipsis\"\n [attr.aria-label]=\"'ecl.breadcrumb.SHOW-MORE-ITEMS' | translate\" (click)=\"onEllipsisSegmentClick($event)\">\n ...\n </button>\n </li>\n <ng-content></ng-content>\n</ng-template>","import { NgModule } from '@angular/core';\nimport { EclBreadcrumbComponent } from './ecl-breadcrumb.component';\nimport { EclBreadcrumbSegmentComponent } from './ecl-breadcrumb-segment.component';\nimport { EclBreadcrumbContainerDirective } from './ecl-breadcrumb-container.directive';\n\nconst COMPONENTS = [EclBreadcrumbComponent, EclBreadcrumbSegmentComponent, EclBreadcrumbContainerDirective];\n/**\n * Module that provides the EclBreadcrumbComponent and it's dependencies.\n *\n * @deprecated Use {@link EUI_ECL_BREADCRUMB} instead.\n */\n@NgModule({\n imports: [...COMPONENTS],\n exports: [...COMPONENTS],\n})\nexport class EclBreadcrumbModule {}\n","import { EclBreadcrumbComponent } from './ecl-breadcrumb.component';\nimport { EclBreadcrumbSegmentComponent } from './ecl-breadcrumb-segment.component';\nimport { EclBreadcrumbContainerDirective } from './ecl-breadcrumb-container.directive';\n\nexport * from './ecl-breadcrumb.module';\nexport * from './ecl-breadcrumb.component';\nexport * from './ecl-breadcrumb-segment.component';\nexport * from './models/ecl-breadcrumb.model';\nexport * from './events/ecl-breadcrumb-segment-click.event';\nexport * from './ecl-breadcrumb-container.directive';\n\nexport const EUI_ECL_BREADCRUMB = [\n EclBreadcrumbComponent, EclBreadcrumbSegmentComponent, EclBreadcrumbContainerDirective,\n] as const;","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2"],"mappings":"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"}
1
+ {"version":3,"file":"eui-ecl-components-ecl-breadcrumb.mjs","sources":["../../components/ecl-breadcrumb/events/ecl-breadcrumb-segment-click.event.ts","../../components/ecl-breadcrumb/ecl-breadcrumb-segment.component.ts","../../components/ecl-breadcrumb/ecl-breadcrumb-segment.component.html","../../components/ecl-breadcrumb/ecl-breadcrumb-container.directive.ts","../../components/ecl-breadcrumb/ecl-breadcrumb.component.ts","../../components/ecl-breadcrumb/ecl-breadcrumb.component.html","../../components/ecl-breadcrumb/ecl-breadcrumb.module.ts","../../components/ecl-breadcrumb/index.ts","../../components/ecl-breadcrumb/eui-ecl-components-ecl-breadcrumb.ts"],"sourcesContent":["import { EclBaseEvent } from '@eui/ecl/core';\n\n/**\n * Event emitted when a breadcrumb segment is clicked.\n */\nexport class EclBreadcrumbSegmentClickEvent extends EclBaseEvent {}\n","import {\n Component,\n ElementRef,\n EventEmitter,\n HostBinding,\n Input,\n Output,\n ViewEncapsulation,\n booleanAttribute,\n inject,\n} from '@angular/core';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { Params, QueryParamsHandling, RouterLink, RouterLinkWithHref } from '@angular/router';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclBreadcrumbSegmentClickEvent } from './events/ecl-breadcrumb-segment-click.event';\nimport { EUI_ECL_ICON } from '@eui/ecl/components/ecl-icon';\nimport { EUI_ECL_LINK } from '@eui/ecl/components/ecl-link';\n\n// TODO: ecl-breadcrumb-segment selector is deprecated and should be removed in v20\n\n/**\n * Displays a single breadcrumb segment with optional navigation or ellipsis.\n */\n@Component({\n selector: 'ecl-breadcrumb-segment, li[eclBreadcrumbSegment]',\n templateUrl: './ecl-breadcrumb-segment.component.html',\n imports: [NgTemplateOutlet, RouterLink, RouterLinkWithHref, ...EUI_ECL_ICON, ...EUI_ECL_LINK],\n encapsulation: ViewEncapsulation.None,\n})\nexport class EclBreadcrumbSegmentComponent extends ECLBaseDirective {\n el = inject(ElementRef);\n\n /**\n * Defines the tabindex attribute for accessibility.\n */\n @HostBinding('attr.tabindex') tabIndex = '-1';\n\n /**\n * Defines the ARIA role for accessibility.\n */\n @HostBinding('attr.role') role = 'listitem';\n\n /**\n * Router link for navigation.\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n @Input() routerLink: string | any[] = null;\n\n /**\n * Query parameters used with routerLink.\n */\n @Input() queryParams: Params | null = null;\n\n /**\n * Href used for standard navigation.\n */\n @Input() href = '';\n\n /**\n * Strategy for handling existing query parameters during navigation.\n */\n @Input() queryParamsHandling: QueryParamsHandling = null;\n\n /**\n * Displays the segment as an ellipsis instead of a link.\n */\n @Input({ transform: booleanAttribute }) isEllipsis = false;\n\n /**\n * Highlights the segment as the current page.\n */\n @Input({ transform: booleanAttribute }) isCurrentPage = false;\n\n /**\n * Hides the segment visually and from assistive technologies.\n */\n @Input({ transform: booleanAttribute })\n @HostBinding('attr.aria-hidden')\n isHidden = false;\n\n /**\n * Emits when the segment is clicked.\n */\n @Output() segmentClick = new EventEmitter<EclBreadcrumbSegmentClickEvent>();\n\n constructor() {\n super();\n const el = this.el;\n\n if (el.nativeElement.tagName.toLowerCase() === 'ecl-breadcrumb-segment') {\n console.warn('\"ecl-breadcrumb-segment\" selector is deprecated; use \"li[eclBreadcrumbSegment]\" instead.');\n }\n }\n\n /**\n * Computes the CSS classes applied to the segment.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-breadcrumb__segment'),\n this.isCurrentPage ? 'ecl-breadcrumb__current-page' : '',\n this.isEllipsis ? 'ecl-breadcrumb__segment--ellipsis' : '',\n ].join(' ').trim();\n }\n\n /**\n * Handles the click event on the segment.\n */\n onSegmentClick(evt: MouseEvent): void {\n this.segmentClick.next(new EclBreadcrumbSegmentClickEvent());\n if (!this.href) {\n evt.stopPropagation();\n }\n }\n}\n","@if (!isEllipsis) {\n@if (!isCurrentPage && href) {\n<a eclLink variant=\"standalone\" [isNoVisited]=\"true\" [href]=\"href\" tabindex=\"0\" (click)=\"onSegmentClick($event)\"\n class=\"ecl-breadcrumb__link\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</a>\n}\n@if (!isCurrentPage && !href) {\n<a eclLink [routerLink]=\"routerLink\" [queryParams]=\"queryParams\" [queryParamsHandling]=\"queryParamsHandling\"\n variant=\"standalone\" [isNoVisited]=\"true\" tabindex=\"0\" (click)=\"onSegmentClick($event)\"\n class=\"ecl-breadcrumb__link\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</a>\n}\n} @else {\n<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n}\n\n@if (isCurrentPage) {\n<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n} @else {\n<ecl-icon role=\"presentation\" icon=\"corner-arrow\" ariaHidden=\"true\" focusable=\"false\" size=\"fluid\"\n class=\"ecl-breadcrumb__icon\">\n</ecl-icon>\n}\n<ng-template #content>\n <ng-content></ng-content>\n</ng-template>","import { Directive, ElementRef, HostBinding, inject } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Used to wrap breadcrumb segments inside the breadcrumb component.\n */\n@Directive({\n selector: '[eclBreadcrumbContainer]',\n})\nexport class EclBreadcrumbContainerDirective extends ECLBaseDirective {\n el = inject(ElementRef);\n\n /**\n * Adds breadcrumb container CSS class to the host element.\n */\n @HostBinding('class.ecl-breadcrumb__container') hasClass = true;\n}\n","import {\n Component,\n ContentChildren,\n ElementRef,\n HostBinding,\n Input,\n OnDestroy,\n OnInit,\n QueryList,\n Renderer2,\n ViewChild,\n booleanAttribute,\n forwardRef,\n HostListener,\n afterNextRender,\n ContentChild,\n inject,\n} from '@angular/core';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { TranslateService, TranslateModule } from '@ngx-translate/core';\nimport { Subject, takeUntil } from 'rxjs';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclBreadcrumbSegmentComponent } from './ecl-breadcrumb-segment.component';\nimport { EclBreadcrumbContainerDirective } from './ecl-breadcrumb-container.directive';\nimport { EUI_ECL_BUTTON } from '@eui/ecl/components/ecl-button';\n\n/**\n * Displays navigation segments and handles overflow with ellipsis.\n */\n@Component({\n selector: 'ecl-breadcrumb',\n templateUrl: './ecl-breadcrumb.component.html',\n imports: [NgTemplateOutlet, TranslateModule, ...EUI_ECL_BUTTON, EclBreadcrumbSegmentComponent],\n styles: [\n `\n :host {\n display: block;\n }\n `,\n ],\n})\nexport class EclBreadcrumbComponent extends ECLBaseDirective implements OnInit, OnDestroy {\n /**\n * Expands all breadcrumb segments instead of collapsing them.\n */\n @Input({ transform: booleanAttribute }) isExpanded = false;\n\n /**\n * ARIA role attribute for accessibility.\n */\n @HostBinding('attr.role') role = 'navigation';\n\n /**\n * ARIA label describing the breadcrumb purpose.\n */\n @HostBinding('attr.aria-label') ariaLabel;\n\n /**\n * Reference to the ellipsis segment element.\n */\n @ViewChild('ellipsisSegment') eclEllipsisSegment: EclBreadcrumbSegmentComponent;\n\n /**\n * @deprecated To be removed in v20. Not needed, replaced by 'eclBreadcrumbContainer'\n */\n @ViewChild('breadcrumbContainer') breadcrumbContainer: ElementRef;\n\n /**\n * Reference to the breadcrumb container directive inside this component.\n */\n @ContentChild(EclBreadcrumbContainerDirective) eclBreadcrumbContainer: EclBreadcrumbContainerDirective;\n\n /**\n * List of breadcrumb segment components.\n */\n @ContentChildren(forwardRef(() => EclBreadcrumbSegmentComponent), { descendants: true })\n eclSegments: QueryList<EclBreadcrumbSegmentComponent>;\n private el = inject(ElementRef);\n private translate = inject(TranslateService);\n private renderer = inject(Renderer2);\n private destroy$: Subject<boolean> = new Subject<boolean>();\n private nonStaticSegments: EclBreadcrumbSegmentComponent[] = [];\n\n constructor() {\n super();\n afterNextRender(() => {\n this.init();\n this.handleOverflownSegments();\n });\n }\n\n /**\n * CSS classes applied to the breadcrumb element.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-breadcrumb'),\n this.isExpanded ? 'ecl-breadcrumb--wrap' : 'ecl-breadcrumb--collapsed',\n ].join(' ').trim();\n }\n\n /**\n * Returns true if breadcrumb was auto-initialized.\n */\n @HostBinding('attr.data-ecl-auto-initialized')\n get autoInitialized(): boolean | null {\n return this.isExpanded || null;\n }\n\n /**\n * Initializes translations for ARIA label.\n */\n ngOnInit(): void {\n this.translate\n .stream('ecl.breadcrumb.YOU-ARE-HERE')\n .pipe(takeUntil(this.destroy$))\n .subscribe((text) => {\n this.ariaLabel = text;\n });\n }\n\n /**\n * Cleans up subscriptions on destroy.\n */\n ngOnDestroy(): void {\n this.destroy$.next(true);\n this.destroy$.unsubscribe();\n }\n\n /**\n * Handles window resize and recalculates overflown segments.\n */\n @HostListener('window:resize')\n onWindowResize(): void {\n this.handleOverflownSegments();\n }\n\n /**\n * Returns true if breadcrumb container directive exists.\n */\n get hasContainer(): boolean {\n return !!this.eclBreadcrumbContainer;\n }\n\n /**\n * Expands hidden breadcrumb segments after clicking ellipsis.\n */\n onEllipsisSegmentClick(evt: MouseEvent): void {\n this.eclSegments.forEach((segment) => {\n segment.isHidden = false;\n });\n this.hideEllipsis();\n this.isExpanded = true;\n }\n\n private init(): void {\n setTimeout(() => {\n this.insertEllipsisSegmentIntoPosition();\n this.handleStaticAndNonStaticSegments();\n });\n }\n\n private insertEllipsisSegmentIntoPosition(): void {\n if (this.hasEnoughSegments()) {\n const secondEclSegmentEl: HTMLElement = this.eclSegments.get(1).el.nativeElement;\n const ellipsisSegmentEl: HTMLElement = this.eclEllipsisSegment.el.nativeElement;\n if (this.hasContainer) {\n this.renderer.insertBefore(this.eclBreadcrumbContainer.el.nativeElement, ellipsisSegmentEl, secondEclSegmentEl);\n } else {\n this.renderer.insertBefore(this.breadcrumbContainer.nativeElement, ellipsisSegmentEl, secondEclSegmentEl);\n }\n }\n }\n\n private handleOverflownSegments(): void {\n if (this.hasEnoughSegments()) {\n setTimeout(() => {\n if (this.isBreadcrumbOverflowed()) {\n this.hideNonStaticSegments();\n this.showEllipsis();\n this.collapse();\n } else {\n this.hideEllipsis();\n this.showNonStaticSegments()\n this.expand();\n }\n });\n }\n }\n\n private hideNonStaticSegments(): void {\n this.nonStaticSegments.forEach((segment) => {\n segment.isHidden = true;\n });\n }\n\n private showNonStaticSegments(): void {\n this.nonStaticSegments.forEach((segment) => {\n segment.isHidden = false;\n });\n }\n\n private collapse(): void {\n this.isExpanded = false;\n }\n\n private expand(): void {\n this.isExpanded = true;\n }\n\n private hideEllipsis(): void {\n this.eclEllipsisSegment.isHidden = true;\n }\n\n private showEllipsis(): void {\n this.eclEllipsisSegment.isHidden = false;\n }\n\n private hasEnoughSegments(): boolean {\n return this.eclSegments && this.eclSegments.length > 3;\n }\n\n private handleStaticAndNonStaticSegments(): void {\n if (this.hasEnoughSegments()) {\n this.nonStaticSegments = this.eclSegments.toArray().slice(1, this.eclSegments.length - 2);\n }\n }\n\n private isBreadcrumbOverflowed(): boolean {\n const breadcrumbTotalWidth = this.getBreadcrumbTotalWidth();\n const segmentsTotalWidth = this.getSegmentsTotalWidth();\n const marginOfError = 1.1;\n\n return segmentsTotalWidth * marginOfError >= breadcrumbTotalWidth;\n }\n\n private getBreadcrumbTotalWidth(): number {\n return this.el.nativeElement.offsetWidth;\n }\n\n private getSegmentsTotalWidth(): number {\n return this.eclSegments.reduce((width: number, segmentComponent) => width + segmentComponent.el.nativeElement.offsetWidth, 0);\n }\n}\n","@if (!hasContainer) {\n<ol class=\"ecl-breadcrumb__container\" #breadcrumbContainer>\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</ol>\n} @else {\n<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n}\n<ng-template #content>\n <li eclBreadcrumbSegment #ellipsisSegment [isHidden]=\"true\" isEllipsis>\n <button tabindex=\"0\" eclButton variant=\"ghost\" class=\"ecl-breadcrumb__ellipsis\"\n [attr.aria-label]=\"'ecl.breadcrumb.SHOW-MORE-ITEMS' | translate\" (click)=\"onEllipsisSegmentClick($event)\">\n ...\n </button>\n </li>\n <ng-content></ng-content>\n</ng-template>","import { NgModule } from '@angular/core';\nimport { EclBreadcrumbComponent } from './ecl-breadcrumb.component';\nimport { EclBreadcrumbSegmentComponent } from './ecl-breadcrumb-segment.component';\nimport { EclBreadcrumbContainerDirective } from './ecl-breadcrumb-container.directive';\n\nconst COMPONENTS = [EclBreadcrumbComponent, EclBreadcrumbSegmentComponent, EclBreadcrumbContainerDirective];\n/**\n * Module that provides the EclBreadcrumbComponent and it's dependencies.\n *\n * @deprecated Use {@link EUI_ECL_BREADCRUMB} instead.\n */\n@NgModule({\n imports: [...COMPONENTS],\n exports: [...COMPONENTS],\n})\nexport class EclBreadcrumbModule {}\n","import { EclBreadcrumbComponent } from './ecl-breadcrumb.component';\nimport { EclBreadcrumbSegmentComponent } from './ecl-breadcrumb-segment.component';\nimport { EclBreadcrumbContainerDirective } from './ecl-breadcrumb-container.directive';\n\nexport * from './ecl-breadcrumb.module';\nexport * from './ecl-breadcrumb.component';\nexport * from './ecl-breadcrumb-segment.component';\nexport * from './models/ecl-breadcrumb.model';\nexport * from './events/ecl-breadcrumb-segment-click.event';\nexport * from './ecl-breadcrumb-container.directive';\n\nexport const EUI_ECL_BREADCRUMB = [\n EclBreadcrumbComponent, EclBreadcrumbSegmentComponent, EclBreadcrumbContainerDirective,\n] as const;","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2"],"mappings":"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"}