@eui/ecl 21.0.0-next.9 → 21.0.0-rc.1

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 (508) hide show
  1. package/docs/changelog.html +863 -0
  2. package/docs/components/EclAccordionComponent.html +9 -3
  3. package/docs/components/EclAccordionItemComponent.html +9 -3
  4. package/docs/components/EclAppComponent.html +3 -3
  5. package/docs/components/EclBannerComponent.html +17 -5
  6. package/docs/components/EclBlockquoteComponent.html +3 -3
  7. package/docs/components/EclBreadcrumbComponent.html +12 -46
  8. package/docs/components/EclBreadcrumbSegmentComponent.html +10 -4
  9. package/docs/components/EclButtonComponent.html +9 -3
  10. package/docs/components/EclCardBodyComponent.html +3 -3
  11. package/docs/components/EclCardComponent.html +3 -3
  12. package/docs/components/EclCarouselComponent.html +31 -5
  13. package/docs/components/EclCarouselItemComponent.html +9 -3
  14. package/docs/components/EclCategoryFilterComponent.html +9 -3
  15. package/docs/components/EclCategoryFilterItemComponent.html +21 -5
  16. package/docs/components/EclCategoryFilterListComponent.html +9 -5
  17. package/docs/components/EclCheckboxHelpComponent.html +3 -3
  18. package/docs/components/EclCheckboxLabelComponent.html +3 -3
  19. package/docs/components/EclContentBlockComponent.html +3 -3
  20. package/docs/components/EclContentItemComponent.html +3 -3
  21. package/docs/components/EclDateBlockComponent.html +8 -6
  22. package/docs/components/EclDescriptionListDefinitionComponent.html +3 -5
  23. package/docs/components/EclExpandableComponent.html +3 -3
  24. package/docs/components/EclFactFiguresComponent.html +3 -3
  25. package/docs/components/EclFactFiguresItemComponent.html +3 -3
  26. package/docs/components/EclFactFiguresViewAllComponent.html +3 -3
  27. package/docs/components/EclFeaturedComponent.html +9 -3
  28. package/docs/components/EclFeaturedItemComponent.html +9 -3
  29. package/docs/components/EclFeaturedItemDescriptionComponent.html +9 -3
  30. package/docs/components/EclFileComponent.html +9 -3
  31. package/docs/components/EclFileItemComponent.html +3 -3
  32. package/docs/components/EclFileItemsComponent.html +3 -3
  33. package/docs/components/EclFileTaxonomyComponent.html +3 -3
  34. package/docs/components/EclFormGroupComponent.html +3 -3
  35. package/docs/components/EclFormLabelComponent.html +10 -4
  36. package/docs/components/EclGalleryComponent.html +15 -3
  37. package/docs/components/EclGalleryFooterComponent.html +9 -9
  38. package/docs/components/EclGalleryItemComponent.html +4 -75
  39. package/docs/components/EclIconComponent.html +15 -3
  40. package/docs/components/EclInpageNavigationComponent.html +19 -42
  41. package/docs/components/EclInpageNavigationItemComponent.html +10 -4
  42. package/docs/components/EclListIllustrationComponent.html +3 -3
  43. package/docs/components/EclListIllustrationItemComponent.html +21 -3
  44. package/docs/components/EclLoadingIndicatorComponent.html +3 -3
  45. package/docs/components/EclMediaContainerComponent.html +9 -3
  46. package/docs/components/EclMegaMenuComponent.html +56 -4
  47. package/docs/components/EclMegaMenuFeaturedComponent.html +9 -3
  48. package/docs/components/EclMegaMenuInfoComponent.html +9 -3
  49. package/docs/components/EclMegaMenuItemComponent.html +39 -3
  50. package/docs/components/EclMegaMenuSubitemComponent.html +18 -24
  51. package/docs/components/EclMenuComponent.html +51 -3
  52. package/docs/components/EclMenuItemComponent.html +33 -3
  53. package/docs/components/EclMenuMegaComponent.html +9 -3
  54. package/docs/components/EclMenuMegaItemComponent.html +21 -3
  55. package/docs/components/EclModalBodyComponent.html +4 -40
  56. package/docs/components/EclModalComponent.html +9 -5
  57. package/docs/components/EclModalFooterComponent.html +3 -3
  58. package/docs/components/EclModalHeaderComponent.html +9 -3
  59. package/docs/components/EclMultiselectComponent.html +9 -13
  60. package/docs/components/EclMultiselectDropdownComponent.html +27 -7
  61. package/docs/components/EclMultiselectInputComponent.html +3 -3
  62. package/docs/components/EclMultiselectOptgroupComponent.html +3 -3
  63. package/docs/components/EclMultiselectOptionComponent.html +10 -8
  64. package/docs/components/EclNavigationListComponent.html +3 -3
  65. package/docs/components/EclNavigationListItemComponent.html +9 -3
  66. package/docs/components/EclNewsTickerComponent.html +15 -5
  67. package/docs/components/EclNewsTickerItemComponent.html +9 -5
  68. package/docs/components/EclNotificationComponent.html +70 -4
  69. package/docs/components/EclPageHeaderComponent.html +3 -3
  70. package/docs/components/EclPageHeaderExpandableComponent.html +15 -4
  71. package/docs/components/EclPaginationComponent.html +15 -3
  72. package/docs/components/EclPaginationItemComponent.html +10 -4
  73. package/docs/components/EclPopoverComponent.html +9 -38
  74. package/docs/components/EclRadioHelpComponent.html +3 -3
  75. package/docs/components/EclRadioLabelComponent.html +3 -3
  76. package/docs/components/EclRangeBubbleComponent.html +15 -3
  77. package/docs/components/EclRangeValueComponent.html +3 -3
  78. package/docs/components/EclRatingFieldComponent.html +3 -3
  79. package/docs/components/EclSearchFormComponent.html +8 -8
  80. package/docs/components/EclSelectContainerComponent.html +3 -3
  81. package/docs/components/EclSiteFooterComponent.html +23 -4
  82. package/docs/components/{EclTabMoreComponent.html → EclSiteFooterCoownerComponent.html} +16 -50
  83. package/docs/components/EclSiteFooterCoreComponent.html +3 -3
  84. package/docs/components/EclSiteFooterFixedContentEUComponent.html +4 -4
  85. package/docs/components/EclSiteFooterRowCommonComponent.html +3 -3
  86. package/docs/components/EclSiteHeaderActionComponent.html +3 -3
  87. package/docs/components/EclSiteHeaderBannerTopComponent.html +9 -3
  88. package/docs/components/EclSiteHeaderComponent.html +9 -22
  89. package/docs/components/EclSiteHeaderCustomActionComponent.html +9 -3
  90. package/docs/components/EclSiteHeaderEnvironmentComponent.html +3 -3
  91. package/docs/components/EclSiteHeaderLanguageComponent.html +9 -3
  92. package/docs/components/EclSiteHeaderLanguagePopoverComponent.html +10 -4
  93. package/docs/components/EclSiteHeaderLoginComponent.html +9 -3
  94. package/docs/components/EclSiteHeaderNotificationComponent.html +3 -3
  95. package/docs/components/EclSiteHeaderSearchComponent.html +13 -7
  96. package/docs/components/EclSocialMediaFollowComponent.html +3 -3
  97. package/docs/components/EclSocialMediaFollowItemComponent.html +34 -5
  98. package/docs/components/EclSplashPageComponent.html +3 -3
  99. package/docs/components/EclSplashPageLanguageCategoryComponent.html +3 -3
  100. package/docs/components/EclSplashPageLanguageContainerComponent.html +3 -3
  101. package/docs/components/EclSplashPageLanguageLinkComponent.html +3 -3
  102. package/docs/components/EclSpotlightComponent.html +9 -3
  103. package/docs/components/EclSpotlightLinkComponent.html +21 -3
  104. package/docs/components/EclStickyContainerComponent.html +3 -3
  105. package/docs/components/EclTabComponent.html +10 -6
  106. package/docs/components/EclTabLabelComponent.html +9 -3
  107. package/docs/components/EclTableSortButtonComponent.html +9 -3
  108. package/docs/components/EclTabsComponent.html +46 -74
  109. package/docs/components/EclTagComponent.html +15 -3
  110. package/docs/components/EclTimelineComponent.html +3 -3
  111. package/docs/components/EclTimelineItemComponent.html +3 -3
  112. package/docs/components/EclTimelineItemTogglerComponent.html +3 -3
  113. package/docs/directives/ECLClickOutsideDirective.html +5 -1
  114. package/docs/directives/ECLFormLabelOptionalDirective.html +6 -0
  115. package/docs/directives/EclBannerDescriptionLinkDirective.html +6 -0
  116. package/docs/directives/EclBannerImageDirective.html +12 -0
  117. package/docs/directives/EclBannerTitleLinkDirective.html +6 -0
  118. package/docs/directives/EclBannerVideoDirective.html +6 -0
  119. package/docs/directives/EclBreadcrumbContainerDirective.html +6 -23
  120. package/docs/directives/EclButtonIconContainerDirective.html +6 -0
  121. package/docs/directives/EclCardImageDirective.html +6 -0
  122. package/docs/directives/EclCheckboxInputDirective.html +6 -0
  123. package/docs/directives/EclContentItemImageDirective.html +6 -0
  124. package/docs/directives/EclDescriptionListDefinitionItemDirective.html +12 -0
  125. package/docs/directives/EclDescriptionListDefinitionListDirective.html +6 -0
  126. package/docs/directives/EclDescriptionListTermDirective.html +6 -0
  127. package/docs/directives/EclDividerDirective.html +6 -0
  128. package/docs/directives/EclFeaturedItemLinkDirective.html +6 -2
  129. package/docs/directives/EclFeedbackHiddenDirective.html +385 -0
  130. package/docs/directives/EclFileDownloadDirective.html +6 -0
  131. package/docs/directives/EclFileImageDirective.html +6 -0
  132. package/docs/directives/EclFilePreviewDirective.html +12 -0
  133. package/docs/directives/EclFileTitleDirective.html +6 -0
  134. package/docs/directives/EclFileTranslationDownloadDirective.html +6 -0
  135. package/docs/directives/EclGalleryMediaDirective.html +6 -0
  136. package/docs/directives/EclGalleryPictureDirective.html +6 -0
  137. package/docs/{modules/EclFormLabelModule.html → directives/EclHelpHiddenDirective.html} +169 -57
  138. package/docs/directives/EclIndicatorDirective.html +6 -0
  139. package/docs/directives/EclInpageNavigationListDirective.html +18 -0
  140. package/docs/directives/EclLinkDirective.html +150 -8
  141. package/docs/directives/EclLinkIconContainerDirective.html +6 -0
  142. package/docs/directives/EclLinkIndicatorDirective.html +6 -0
  143. package/docs/directives/EclListIllustrationIconDirective.html +6 -0
  144. package/docs/directives/EclListIllustrationImageDirective.html +6 -0
  145. package/docs/directives/EclLoadingIndicatorLabelDirective.html +6 -0
  146. package/docs/directives/EclMediaContainerIframeDirective.html +6 -0
  147. package/docs/directives/EclMediaContainerItemDirective.html +12 -0
  148. package/docs/directives/EclMegaMenuContainerDirective.html +6 -0
  149. package/docs/directives/EclMegaMenuFeaturedImageDirective.html +6 -0
  150. package/docs/directives/EclMegaMenuFeaturedListDirective.html +6 -0
  151. package/docs/directives/EclMegaMenuFeaturedListItemDescriptionDirective.html +6 -0
  152. package/docs/directives/EclMegaMenuFeaturedListItemDirective.html +6 -0
  153. package/docs/directives/EclMegaMenuListDirective.html +6 -0
  154. package/docs/directives/EclMegaMenuSpacerDirective.html +6 -0
  155. package/docs/directives/EclMegaMenuSublistDirective.html +18 -0
  156. package/docs/directives/EclModalBodyFixedContentDirective.html +6 -0
  157. package/docs/directives/EclMultiselectOptionDirective.html +11 -5
  158. package/docs/directives/EclNewsTickerIconDirective.html +6 -0
  159. package/docs/{modules/EclNotificationModule.html → directives/EclNotificationIconDirective.html} +169 -57
  160. package/docs/directives/{EclSiteFooterLogoListDirective.html → EclNotificationLinkDirective.html} +57 -161
  161. package/docs/directives/EclOrderedListDirective.html +6 -0
  162. package/docs/directives/EclOrderedListItemDirective.html +6 -0
  163. package/docs/directives/EclPaginationListDirective.html +6 -0
  164. package/docs/directives/EclPopoverToggleDirective.html +12 -0
  165. package/docs/directives/EclRadioInputDirective.html +6 -0
  166. package/docs/directives/EclSiteFooterColumnDirective.html +6 -0
  167. package/docs/directives/{EclSiteFooterLogoDirective.html → EclSiteFooterCoownerItemDirective.html} +63 -31
  168. package/docs/directives/{EclSiteFooterLogoItemDirective.html → EclSiteFooterCoownerListDirective.html} +50 -166
  169. package/docs/directives/EclSiteFooterDescriptionDirective.html +6 -0
  170. package/docs/directives/EclSiteFooterDescriptionNameDirective.html +6 -0
  171. package/docs/directives/EclSiteFooterLinkDirective.html +6 -0
  172. package/docs/directives/EclSiteFooterListDirective.html +6 -19
  173. package/docs/directives/EclSiteFooterListItemDirective.html +6 -0
  174. package/docs/directives/EclSiteFooterLogoImageDirective.html +6 -0
  175. package/docs/directives/EclSiteFooterLogoLinkDirective.html +6 -0
  176. package/docs/directives/EclSiteFooterRowDirective.html +6 -0
  177. package/docs/directives/EclSiteFooterSectionDirective.html +0 -96
  178. package/docs/directives/EclSiteFooterSocialMediaDirective.html +6 -0
  179. package/docs/directives/EclSiteFooterTitleDirective.html +6 -0
  180. package/docs/directives/EclSiteFooterTitleLinkDirective.html +6 -0
  181. package/docs/directives/EclSiteHeaderCtaDirective.html +6 -0
  182. package/docs/directives/EclSiteHeaderCustomActionContentDirective.html +6 -0
  183. package/docs/directives/EclSiteHeaderCustomActionTitleDirective.html +6 -0
  184. package/docs/directives/EclSpotlightImageDirective.html +6 -0
  185. package/docs/directives/EclTableCaptionDirective.html +6 -0
  186. package/docs/directives/EclTagSetItemDirective.html +6 -0
  187. package/docs/directives/EclTimelineSetDirective.html +6 -0
  188. package/docs/directives/EclUnorderedListDirective.html +6 -0
  189. package/docs/directives/EclUnorderedListItemDirective.html +6 -0
  190. package/docs/injectables/EclRtlService.html +6 -0
  191. package/docs/js/libs/bootstrap-native.js +1 -1
  192. package/docs/js/libs/vis-network.min.js +78 -0
  193. package/docs/js/menu-wc.js +53 -2401
  194. package/docs/js/menu-wc_es5.js +1 -1
  195. package/docs/js/search/search_index.js +2 -2
  196. package/docs/miscellaneous/functions.html +5 -1
  197. package/docs/miscellaneous/variables.html +534 -1395
  198. package/docs/modules.html +2 -722
  199. package/docs/overview.html +2 -2
  200. package/docs/properties.html +1 -1
  201. package/fesm2022/eui-ecl-components-ecl-accordion.mjs +8 -27
  202. package/fesm2022/eui-ecl-components-ecl-accordion.mjs.map +1 -1
  203. package/fesm2022/eui-ecl-components-ecl-app.mjs +5 -23
  204. package/fesm2022/eui-ecl-components-ecl-app.mjs.map +1 -1
  205. package/fesm2022/eui-ecl-components-ecl-banner.mjs +36 -85
  206. package/fesm2022/eui-ecl-components-ecl-banner.mjs.map +1 -1
  207. package/fesm2022/eui-ecl-components-ecl-blockquote.mjs +11 -30
  208. package/fesm2022/eui-ecl-components-ecl-blockquote.mjs.map +1 -1
  209. package/fesm2022/eui-ecl-components-ecl-breadcrumb.mjs +15 -42
  210. package/fesm2022/eui-ecl-components-ecl-breadcrumb.mjs.map +1 -1
  211. package/fesm2022/eui-ecl-components-ecl-button.mjs +14 -34
  212. package/fesm2022/eui-ecl-components-ecl-button.mjs.map +1 -1
  213. package/fesm2022/eui-ecl-components-ecl-card.mjs +14 -45
  214. package/fesm2022/eui-ecl-components-ecl-card.mjs.map +1 -1
  215. package/fesm2022/eui-ecl-components-ecl-carousel.mjs +8 -27
  216. package/fesm2022/eui-ecl-components-ecl-carousel.mjs.map +1 -1
  217. package/fesm2022/eui-ecl-components-ecl-category-filter.mjs +11 -30
  218. package/fesm2022/eui-ecl-components-ecl-category-filter.mjs.map +1 -1
  219. package/fesm2022/eui-ecl-components-ecl-checkbox.mjs +15 -34
  220. package/fesm2022/eui-ecl-components-ecl-checkbox.mjs.map +1 -1
  221. package/fesm2022/eui-ecl-components-ecl-content-block.mjs +56 -128
  222. package/fesm2022/eui-ecl-components-ecl-content-block.mjs.map +1 -1
  223. package/fesm2022/eui-ecl-components-ecl-content-item.mjs +11 -30
  224. package/fesm2022/eui-ecl-components-ecl-content-item.mjs.map +1 -1
  225. package/fesm2022/eui-ecl-components-ecl-date-block.mjs +5 -23
  226. package/fesm2022/eui-ecl-components-ecl-date-block.mjs.map +1 -1
  227. package/fesm2022/eui-ecl-components-ecl-date-picker.mjs +5 -23
  228. package/fesm2022/eui-ecl-components-ecl-date-picker.mjs.map +1 -1
  229. package/fesm2022/eui-ecl-components-ecl-divider.mjs +6 -24
  230. package/fesm2022/eui-ecl-components-ecl-divider.mjs.map +1 -1
  231. package/fesm2022/eui-ecl-components-ecl-expandable.mjs +5 -23
  232. package/fesm2022/eui-ecl-components-ecl-expandable.mjs.map +1 -1
  233. package/fesm2022/eui-ecl-components-ecl-fact-figures.mjs +14 -48
  234. package/fesm2022/eui-ecl-components-ecl-fact-figures.mjs.map +1 -1
  235. package/fesm2022/eui-ecl-components-ecl-featured.mjs +14 -47
  236. package/fesm2022/eui-ecl-components-ecl-featured.mjs.map +1 -1
  237. package/fesm2022/eui-ecl-components-ecl-feedback-message.mjs +5 -23
  238. package/fesm2022/eui-ecl-components-ecl-feedback-message.mjs.map +1 -1
  239. package/fesm2022/eui-ecl-components-ecl-file-upload.mjs +5 -23
  240. package/fesm2022/eui-ecl-components-ecl-file-upload.mjs.map +1 -1
  241. package/fesm2022/eui-ecl-components-ecl-file.mjs +32 -81
  242. package/fesm2022/eui-ecl-components-ecl-file.mjs.map +1 -1
  243. package/fesm2022/eui-ecl-components-ecl-form-group.mjs +5 -23
  244. package/fesm2022/eui-ecl-components-ecl-form-group.mjs.map +1 -1
  245. package/fesm2022/eui-ecl-components-ecl-form-label.mjs +51 -22
  246. package/fesm2022/eui-ecl-components-ecl-form-label.mjs.map +1 -1
  247. package/fesm2022/eui-ecl-components-ecl-gallery.mjs +21 -75
  248. package/fesm2022/eui-ecl-components-ecl-gallery.mjs.map +1 -1
  249. package/fesm2022/eui-ecl-components-ecl-help-block.mjs +5 -23
  250. package/fesm2022/eui-ecl-components-ecl-help-block.mjs.map +1 -1
  251. package/fesm2022/eui-ecl-components-ecl-icon.mjs +5 -23
  252. package/fesm2022/eui-ecl-components-ecl-icon.mjs.map +1 -1
  253. package/fesm2022/eui-ecl-components-ecl-inpage-navigation.mjs +24 -51
  254. package/fesm2022/eui-ecl-components-ecl-inpage-navigation.mjs.map +1 -1
  255. package/fesm2022/eui-ecl-components-ecl-label.mjs +5 -23
  256. package/fesm2022/eui-ecl-components-ecl-label.mjs.map +1 -1
  257. package/fesm2022/eui-ecl-components-ecl-link.mjs +44 -41
  258. package/fesm2022/eui-ecl-components-ecl-link.mjs.map +1 -1
  259. package/fesm2022/eui-ecl-components-ecl-list-illustration.mjs +18 -51
  260. package/fesm2022/eui-ecl-components-ecl-list-illustration.mjs.map +1 -1
  261. package/fesm2022/eui-ecl-components-ecl-list.mjs +29 -74
  262. package/fesm2022/eui-ecl-components-ecl-list.mjs.map +1 -1
  263. package/fesm2022/eui-ecl-components-ecl-loading-indicator.mjs +11 -30
  264. package/fesm2022/eui-ecl-components-ecl-loading-indicator.mjs.map +1 -1
  265. package/fesm2022/eui-ecl-components-ecl-media-container.mjs +17 -50
  266. package/fesm2022/eui-ecl-components-ecl-media-container.mjs.map +1 -1
  267. package/fesm2022/eui-ecl-components-ecl-mega-menu.mjs +50 -112
  268. package/fesm2022/eui-ecl-components-ecl-mega-menu.mjs.map +1 -1
  269. package/fesm2022/eui-ecl-components-ecl-menu.mjs +14 -33
  270. package/fesm2022/eui-ecl-components-ecl-menu.mjs.map +1 -1
  271. package/fesm2022/eui-ecl-components-ecl-modal.mjs +25 -80
  272. package/fesm2022/eui-ecl-components-ecl-modal.mjs.map +1 -1
  273. package/fesm2022/eui-ecl-components-ecl-multiselect.mjs +27 -66
  274. package/fesm2022/eui-ecl-components-ecl-multiselect.mjs.map +1 -1
  275. package/fesm2022/eui-ecl-components-ecl-navigation-list.mjs +14 -44
  276. package/fesm2022/eui-ecl-components-ecl-navigation-list.mjs.map +1 -1
  277. package/fesm2022/eui-ecl-components-ecl-news-ticker.mjs +11 -39
  278. package/fesm2022/eui-ecl-components-ecl-news-ticker.mjs.map +1 -1
  279. package/fesm2022/eui-ecl-components-ecl-notification.mjs +86 -50
  280. package/fesm2022/eui-ecl-components-ecl-notification.mjs.map +1 -1
  281. package/fesm2022/eui-ecl-components-ecl-page-header.mjs +43 -100
  282. package/fesm2022/eui-ecl-components-ecl-page-header.mjs.map +1 -1
  283. package/fesm2022/eui-ecl-components-ecl-pagination.mjs +12 -32
  284. package/fesm2022/eui-ecl-components-ecl-pagination.mjs.map +1 -1
  285. package/fesm2022/eui-ecl-components-ecl-popover.mjs +16 -44
  286. package/fesm2022/eui-ecl-components-ecl-popover.mjs.map +1 -1
  287. package/fesm2022/eui-ecl-components-ecl-radio.mjs +14 -32
  288. package/fesm2022/eui-ecl-components-ecl-radio.mjs.map +1 -1
  289. package/fesm2022/eui-ecl-components-ecl-range.mjs +11 -30
  290. package/fesm2022/eui-ecl-components-ecl-range.mjs.map +1 -1
  291. package/fesm2022/eui-ecl-components-ecl-rating-field.mjs +5 -23
  292. package/fesm2022/eui-ecl-components-ecl-rating-field.mjs.map +1 -1
  293. package/fesm2022/eui-ecl-components-ecl-search-form.mjs +12 -32
  294. package/fesm2022/eui-ecl-components-ecl-search-form.mjs.map +1 -1
  295. package/fesm2022/eui-ecl-components-ecl-select.mjs +8 -33
  296. package/fesm2022/eui-ecl-components-ecl-select.mjs.map +1 -1
  297. package/fesm2022/eui-ecl-components-ecl-site-footer.mjs +150 -260
  298. package/fesm2022/eui-ecl-components-ecl-site-footer.mjs.map +1 -1
  299. package/fesm2022/eui-ecl-components-ecl-site-header.mjs +73 -157
  300. package/fesm2022/eui-ecl-components-ecl-site-header.mjs.map +1 -1
  301. package/fesm2022/eui-ecl-components-ecl-social-media-follow.mjs +14 -32
  302. package/fesm2022/eui-ecl-components-ecl-social-media-follow.mjs.map +1 -1
  303. package/fesm2022/eui-ecl-components-ecl-splash-page.mjs +29 -74
  304. package/fesm2022/eui-ecl-components-ecl-splash-page.mjs.map +1 -1
  305. package/fesm2022/eui-ecl-components-ecl-spotlight.mjs +13 -13
  306. package/fesm2022/eui-ecl-components-ecl-spotlight.mjs.map +1 -1
  307. package/fesm2022/eui-ecl-components-ecl-sticky-container.mjs +5 -23
  308. package/fesm2022/eui-ecl-components-ecl-sticky-container.mjs.map +1 -1
  309. package/fesm2022/eui-ecl-components-ecl-table.mjs +32 -80
  310. package/fesm2022/eui-ecl-components-ecl-table.mjs.map +1 -1
  311. package/fesm2022/eui-ecl-components-ecl-tabs.mjs +56 -129
  312. package/fesm2022/eui-ecl-components-ecl-tabs.mjs.map +1 -1
  313. package/fesm2022/eui-ecl-components-ecl-tag.mjs +14 -33
  314. package/fesm2022/eui-ecl-components-ecl-tag.mjs.map +1 -1
  315. package/fesm2022/eui-ecl-components-ecl-text-area.mjs +5 -24
  316. package/fesm2022/eui-ecl-components-ecl-text-area.mjs.map +1 -1
  317. package/fesm2022/eui-ecl-components-ecl-text-input.mjs +5 -24
  318. package/fesm2022/eui-ecl-components-ecl-text-input.mjs.map +1 -1
  319. package/fesm2022/eui-ecl-components-ecl-timeline.mjs +20 -62
  320. package/fesm2022/eui-ecl-components-ecl-timeline.mjs.map +1 -1
  321. package/fesm2022/eui-ecl-core.mjs +25 -62
  322. package/fesm2022/eui-ecl-core.mjs.map +1 -1
  323. package/fesm2022/eui-ecl-shared.mjs +3 -3
  324. package/fesm2022/eui-ecl-shared.mjs.map +1 -1
  325. package/fesm2022/eui-ecl.mjs +1 -203
  326. package/fesm2022/eui-ecl.mjs.map +1 -1
  327. package/package.json +17 -17
  328. package/types/eui-ecl-components-ecl-accordion.d.ts +1 -13
  329. package/types/eui-ecl-components-ecl-accordion.d.ts.map +1 -1
  330. package/types/eui-ecl-components-ecl-app.d.ts +2 -13
  331. package/types/eui-ecl-components-ecl-app.d.ts.map +1 -1
  332. package/types/eui-ecl-components-ecl-banner.d.ts +2 -14
  333. package/types/eui-ecl-components-ecl-banner.d.ts.map +1 -1
  334. package/types/eui-ecl-components-ecl-blockquote.d.ts +1 -13
  335. package/types/eui-ecl-components-ecl-blockquote.d.ts.map +1 -1
  336. package/types/eui-ecl-components-ecl-breadcrumb.d.ts +11 -27
  337. package/types/eui-ecl-components-ecl-breadcrumb.d.ts.map +1 -1
  338. package/types/eui-ecl-components-ecl-button.d.ts +1 -13
  339. package/types/eui-ecl-components-ecl-button.d.ts.map +1 -1
  340. package/types/eui-ecl-components-ecl-card.d.ts +1 -13
  341. package/types/eui-ecl-components-ecl-card.d.ts.map +1 -1
  342. package/types/eui-ecl-components-ecl-carousel.d.ts +1 -13
  343. package/types/eui-ecl-components-ecl-carousel.d.ts.map +1 -1
  344. package/types/eui-ecl-components-ecl-category-filter.d.ts +1 -13
  345. package/types/eui-ecl-components-ecl-category-filter.d.ts.map +1 -1
  346. package/types/eui-ecl-components-ecl-checkbox.d.ts +1 -12
  347. package/types/eui-ecl-components-ecl-checkbox.d.ts.map +1 -1
  348. package/types/eui-ecl-components-ecl-content-block.d.ts +1 -12
  349. package/types/eui-ecl-components-ecl-content-block.d.ts.map +1 -1
  350. package/types/eui-ecl-components-ecl-content-item.d.ts +1 -12
  351. package/types/eui-ecl-components-ecl-content-item.d.ts.map +1 -1
  352. package/types/eui-ecl-components-ecl-date-block.d.ts +1 -12
  353. package/types/eui-ecl-components-ecl-date-block.d.ts.map +1 -1
  354. package/types/eui-ecl-components-ecl-date-picker.d.ts +2 -13
  355. package/types/eui-ecl-components-ecl-date-picker.d.ts.map +1 -1
  356. package/types/eui-ecl-components-ecl-divider.d.ts +1 -12
  357. package/types/eui-ecl-components-ecl-divider.d.ts.map +1 -1
  358. package/types/eui-ecl-components-ecl-expandable.d.ts +2 -13
  359. package/types/eui-ecl-components-ecl-expandable.d.ts.map +1 -1
  360. package/types/eui-ecl-components-ecl-fact-figures.d.ts +1 -12
  361. package/types/eui-ecl-components-ecl-fact-figures.d.ts.map +1 -1
  362. package/types/eui-ecl-components-ecl-featured.d.ts +1 -13
  363. package/types/eui-ecl-components-ecl-featured.d.ts.map +1 -1
  364. package/types/eui-ecl-components-ecl-feedback-message.d.ts +1 -12
  365. package/types/eui-ecl-components-ecl-feedback-message.d.ts.map +1 -1
  366. package/types/eui-ecl-components-ecl-file-upload.d.ts +1 -12
  367. package/types/eui-ecl-components-ecl-file-upload.d.ts.map +1 -1
  368. package/types/eui-ecl-components-ecl-file.d.ts +1 -12
  369. package/types/eui-ecl-components-ecl-file.d.ts.map +1 -1
  370. package/types/eui-ecl-components-ecl-form-group.d.ts +1 -12
  371. package/types/eui-ecl-components-ecl-form-group.d.ts.map +1 -1
  372. package/types/eui-ecl-components-ecl-form-label.d.ts +24 -10
  373. package/types/eui-ecl-components-ecl-form-label.d.ts.map +1 -1
  374. package/types/eui-ecl-components-ecl-gallery.d.ts +3 -20
  375. package/types/eui-ecl-components-ecl-gallery.d.ts.map +1 -1
  376. package/types/eui-ecl-components-ecl-help-block.d.ts +1 -12
  377. package/types/eui-ecl-components-ecl-help-block.d.ts.map +1 -1
  378. package/types/eui-ecl-components-ecl-icon.d.ts +1 -12
  379. package/types/eui-ecl-components-ecl-icon.d.ts.map +1 -1
  380. package/types/eui-ecl-components-ecl-inpage-navigation.d.ts +2 -17
  381. package/types/eui-ecl-components-ecl-inpage-navigation.d.ts.map +1 -1
  382. package/types/eui-ecl-components-ecl-label.d.ts +1 -12
  383. package/types/eui-ecl-components-ecl-label.d.ts.map +1 -1
  384. package/types/eui-ecl-components-ecl-link.d.ts +17 -16
  385. package/types/eui-ecl-components-ecl-link.d.ts.map +1 -1
  386. package/types/eui-ecl-components-ecl-list-illustration.d.ts +1 -12
  387. package/types/eui-ecl-components-ecl-list-illustration.d.ts.map +1 -1
  388. package/types/eui-ecl-components-ecl-list.d.ts +1 -12
  389. package/types/eui-ecl-components-ecl-list.d.ts.map +1 -1
  390. package/types/eui-ecl-components-ecl-loading-indicator.d.ts +1 -13
  391. package/types/eui-ecl-components-ecl-loading-indicator.d.ts.map +1 -1
  392. package/types/eui-ecl-components-ecl-media-container.d.ts +1 -12
  393. package/types/eui-ecl-components-ecl-media-container.d.ts.map +1 -1
  394. package/types/eui-ecl-components-ecl-mega-menu.d.ts +1 -13
  395. package/types/eui-ecl-components-ecl-mega-menu.d.ts.map +1 -1
  396. package/types/eui-ecl-components-ecl-menu.d.ts +1 -12
  397. package/types/eui-ecl-components-ecl-menu.d.ts.map +1 -1
  398. package/types/eui-ecl-components-ecl-modal.d.ts +2 -19
  399. package/types/eui-ecl-components-ecl-modal.d.ts.map +1 -1
  400. package/types/eui-ecl-components-ecl-multiselect.d.ts +1 -12
  401. package/types/eui-ecl-components-ecl-multiselect.d.ts.map +1 -1
  402. package/types/eui-ecl-components-ecl-navigation-list.d.ts +1 -12
  403. package/types/eui-ecl-components-ecl-navigation-list.d.ts.map +1 -1
  404. package/types/eui-ecl-components-ecl-news-ticker.d.ts +1 -13
  405. package/types/eui-ecl-components-ecl-news-ticker.d.ts.map +1 -1
  406. package/types/eui-ecl-components-ecl-notification.d.ts +45 -29
  407. package/types/eui-ecl-components-ecl-notification.d.ts.map +1 -1
  408. package/types/eui-ecl-components-ecl-page-header.d.ts +1 -12
  409. package/types/eui-ecl-components-ecl-page-header.d.ts.map +1 -1
  410. package/types/eui-ecl-components-ecl-pagination.d.ts +3 -14
  411. package/types/eui-ecl-components-ecl-pagination.d.ts.map +1 -1
  412. package/types/eui-ecl-components-ecl-popover.d.ts +5 -17
  413. package/types/eui-ecl-components-ecl-popover.d.ts.map +1 -1
  414. package/types/eui-ecl-components-ecl-radio.d.ts +1 -12
  415. package/types/eui-ecl-components-ecl-radio.d.ts.map +1 -1
  416. package/types/eui-ecl-components-ecl-range.d.ts +1 -12
  417. package/types/eui-ecl-components-ecl-range.d.ts.map +1 -1
  418. package/types/eui-ecl-components-ecl-rating-field.d.ts +2 -13
  419. package/types/eui-ecl-components-ecl-rating-field.d.ts.map +1 -1
  420. package/types/eui-ecl-components-ecl-search-form.d.ts +4 -15
  421. package/types/eui-ecl-components-ecl-search-form.d.ts.map +1 -1
  422. package/types/eui-ecl-components-ecl-select.d.ts +1 -13
  423. package/types/eui-ecl-components-ecl-select.d.ts.map +1 -1
  424. package/types/eui-ecl-components-ecl-site-footer.d.ts +42 -63
  425. package/types/eui-ecl-components-ecl-site-footer.d.ts.map +1 -1
  426. package/types/eui-ecl-components-ecl-site-header.d.ts +4 -19
  427. package/types/eui-ecl-components-ecl-site-header.d.ts.map +1 -1
  428. package/types/eui-ecl-components-ecl-social-media-follow.d.ts +6 -13
  429. package/types/eui-ecl-components-ecl-social-media-follow.d.ts.map +1 -1
  430. package/types/eui-ecl-components-ecl-splash-page.d.ts +1 -12
  431. package/types/eui-ecl-components-ecl-splash-page.d.ts.map +1 -1
  432. package/types/eui-ecl-components-ecl-sticky-container.d.ts +1 -12
  433. package/types/eui-ecl-components-ecl-sticky-container.d.ts.map +1 -1
  434. package/types/eui-ecl-components-ecl-table.d.ts +1 -12
  435. package/types/eui-ecl-components-ecl-table.d.ts.map +1 -1
  436. package/types/eui-ecl-components-ecl-tabs.d.ts +4 -46
  437. package/types/eui-ecl-components-ecl-tabs.d.ts.map +1 -1
  438. package/types/eui-ecl-components-ecl-tag.d.ts +1 -12
  439. package/types/eui-ecl-components-ecl-tag.d.ts.map +1 -1
  440. package/types/eui-ecl-components-ecl-text-area.d.ts +1 -13
  441. package/types/eui-ecl-components-ecl-text-area.d.ts.map +1 -1
  442. package/types/eui-ecl-components-ecl-text-input.d.ts +1 -13
  443. package/types/eui-ecl-components-ecl-text-input.d.ts.map +1 -1
  444. package/types/eui-ecl-components-ecl-timeline.d.ts +1 -12
  445. package/types/eui-ecl-components-ecl-timeline.d.ts.map +1 -1
  446. package/types/eui-ecl-core.d.ts +0 -3
  447. package/types/eui-ecl-core.d.ts.map +1 -1
  448. package/types/eui-ecl.d.ts +1 -69
  449. package/types/eui-ecl.d.ts.map +1 -1
  450. package/docs/js/libs/vis.min.js +0 -47
  451. package/docs/modules/EclAccordionModule.html +0 -273
  452. package/docs/modules/EclAllModule.html +0 -261
  453. package/docs/modules/EclAppModule.html +0 -267
  454. package/docs/modules/EclBannerModule.html +0 -321
  455. package/docs/modules/EclBlockquoteModule.html +0 -279
  456. package/docs/modules/EclBreadcrumbModule.html +0 -321
  457. package/docs/modules/EclButtonModule.html +0 -285
  458. package/docs/modules/EclCardModule.html +0 -321
  459. package/docs/modules/EclCarouselModule.html +0 -273
  460. package/docs/modules/EclCategoryFilterModule.html +0 -279
  461. package/docs/modules/EclCheckboxModule.html +0 -321
  462. package/docs/modules/EclContentBlockModule.html +0 -321
  463. package/docs/modules/EclContentItemModule.html +0 -321
  464. package/docs/modules/EclDateBlockModule.html +0 -267
  465. package/docs/modules/EclDatePickerModule.html +0 -267
  466. package/docs/modules/EclDividerModule.html +0 -267
  467. package/docs/modules/EclExpandableModule.html +0 -267
  468. package/docs/modules/EclFactFiguresModule.html +0 -285
  469. package/docs/modules/EclFeaturedModule.html +0 -321
  470. package/docs/modules/EclFeedbackMessageModule.html +0 -267
  471. package/docs/modules/EclFileModule.html +0 -321
  472. package/docs/modules/EclFileUploadModule.html +0 -267
  473. package/docs/modules/EclFormGroupModule.html +0 -267
  474. package/docs/modules/EclGalleryModule.html +0 -321
  475. package/docs/modules/EclHelpBlockModule.html +0 -267
  476. package/docs/modules/EclIconModule.html +0 -267
  477. package/docs/modules/EclInpageNavigationModule.html +0 -321
  478. package/docs/modules/EclLabelModule.html +0 -267
  479. package/docs/modules/EclLinkModule.html +0 -285
  480. package/docs/modules/EclListIllustrationModule.html +0 -321
  481. package/docs/modules/EclListModule.html +0 -321
  482. package/docs/modules/EclLoadingIndicatorModule.html +0 -279
  483. package/docs/modules/EclMediaContainerModule.html +0 -321
  484. package/docs/modules/EclMegaMenuModule.html +0 -321
  485. package/docs/modules/EclMenuModule.html +0 -321
  486. package/docs/modules/EclModalModule.html +0 -321
  487. package/docs/modules/EclMultiselectModule.html +0 -321
  488. package/docs/modules/EclNavigationListModule.html +0 -321
  489. package/docs/modules/EclNewsTickerModule.html +0 -321
  490. package/docs/modules/EclPageHeaderModule.html +0 -321
  491. package/docs/modules/EclPaginationModule.html +0 -321
  492. package/docs/modules/EclPopoverModule.html +0 -321
  493. package/docs/modules/EclRadioModule.html +0 -285
  494. package/docs/modules/EclRangeModule.html +0 -321
  495. package/docs/modules/EclRatingFieldModule.html +0 -267
  496. package/docs/modules/EclSearchFormModule.html +0 -267
  497. package/docs/modules/EclSelectModule.html +0 -321
  498. package/docs/modules/EclSiteFooterModule.html +0 -321
  499. package/docs/modules/EclSiteHeaderModule.html +0 -321
  500. package/docs/modules/EclSocialMediaFollowModule.html +0 -321
  501. package/docs/modules/EclSplashPageModule.html +0 -321
  502. package/docs/modules/EclStickyContainerModule.html +0 -267
  503. package/docs/modules/EclTableModule.html +0 -321
  504. package/docs/modules/EclTabsModule.html +0 -321
  505. package/docs/modules/EclTagModule.html +0 -321
  506. package/docs/modules/EclTextAreaModule.html +0 -267
  507. package/docs/modules/EclTextInputModule.html +0 -267
  508. package/docs/modules/EclTimelineModule.html +0 -297
@@ -1 +1 @@
1
- {"version":3,"file":"eui-ecl-components-ecl-navigation-list.mjs","sources":["../../components/ecl-navigation-list/ecl-navigation-list-item.component.ts","../../components/ecl-navigation-list/ecl-navigation-list-item.component.html","../../components/ecl-navigation-list/ecl-navigation-list-picture.directive.ts","../../components/ecl-navigation-list/ecl-navigation-list.component.ts","../../components/ecl-navigation-list/ecl-navigation-list.component.html","../../components/ecl-navigation-list/ecl-navigation-list.module.ts","../../components/ecl-navigation-list/index.ts","../../components/ecl-navigation-list/eui-ecl-components-ecl-navigation-list.ts"],"sourcesContent":["import { AfterContentInit, Component, ContentChild, forwardRef, HostBinding, Input } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclContentBlockComponent } from '@eui/ecl/components/ecl-content-block';\n\n/**\n * Component that represents one navigation list item, has title and image and/or list of links/secondary links.\n */\n@Component({\n selector: 'ecl-navigation-list-item',\n templateUrl: 'ecl-navigation-list-item.component.html',\n})\nexport class EclNavigationListItemComponent extends ECLBaseDirective implements AfterContentInit {\n\n /**\n * The role of the underlying HTML element is 'article', should not be changed.\n */\n @HostBinding('attr.role') role = 'article';\n /**\n * Different variants, that add styling for different type of displaing the picture, used in the list item.\n */\n @Input() variant: 'illustration' | 'image-as-illustration' | '' = '';\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-navigation-list__item'),\n this.hasBorder ? '' : 'ecl-navigation-list__item--no-border',\n this.variant !== '' ? `ecl-navigation-list__item--${this.variant}` : '',\n ].join(' ').trim();\n }\n\n @ContentChild(forwardRef(() => EclContentBlockComponent)) eclContentBlock: EclContentBlockComponent;\n\n hasBorder = true;\n\n ngAfterContentInit(): void {\n // Adds specific class to the conten-block content child, if it exists. \n if (this.eclContentBlock) {\n this.eclContentBlock.class = 'ecl-navigation-list__content-block';\n }\n }\n}\n","<ng-content></ng-content>\n","import { Directive, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * This directive adds specific class to the picture element, used in 'ecl-navigation-list-item'.\n */\n@Directive({\n selector: 'picture[eclNavigationListPicture]',\n})\nexport class EclNavigationListPictureDirective extends ECLBaseDirective {\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-picture ecl-navigation-list__picture')].join(' ').trim();\n }\n}\n\n/**\n * This directive adds specific class to the image element, used in 'ecl-navigation-list-item'.\n */\n@Directive({\n selector: 'img[eclNavigationListImage]',\n})\nexport class EclNavigationListImageDirective extends ECLBaseDirective {\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-navigation-list__image')].join(' ').trim();\n }\n}\n","import { AfterContentInit, Component, ContentChildren, HostBinding, Input, QueryList, booleanAttribute, forwardRef, numberAttribute } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclNavigationListItemComponent } from './ecl-navigation-list-item.component';\n\n/**\n * Navigation lists provide users with a quick way to scan through items and access the information they are looking for.\n * It can offer a quick description of the parent page and/or display child pages that belong to it.\n */\n@Component({\n selector: 'ecl-navigation-list',\n templateUrl: 'ecl-navigation-list.component.html',\n})\nexport class EclNavigationListComponent extends ECLBaseDirective implements AfterContentInit {\n\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-navigation-list'), `ecl-navigation-list--col-${this.columns}`].join(' ').trim();\n }\n\n /**\n * Property that describes how many columns the navigation list has. Default value is 2.\n */\n @Input({ transform: numberAttribute }) columns = 2;\n /**\n * Property that describes if each item will have a border. Default is 'true'.\n */\n @Input({ transform: booleanAttribute }) hasBorders = true;\n\n /**\n * The list of navigation list items.\n */\n @ContentChildren(forwardRef(() => EclNavigationListItemComponent)) listItems: QueryList<EclNavigationListItemComponent>;\n\n ngAfterContentInit(): void {\n // Propagate 'hasBorders' property to navigation list items.\n setTimeout(() => {\n if (!this.hasBorders) {\n this.listItems.forEach(item => item.hasBorder = false);\n }\n });\n }\n}\n","<ng-content></ng-content>\n","import { NgModule } from '@angular/core';\nimport { EclNavigationListItemComponent } from './ecl-navigation-list-item.component';\nimport { EclNavigationListImageDirective, EclNavigationListPictureDirective } from './ecl-navigation-list-picture.directive';\nimport { EclNavigationListComponent } from './ecl-navigation-list.component';\n\nconst COMPONENTS = [\n EclNavigationListComponent,\n EclNavigationListItemComponent,\n EclNavigationListImageDirective,\n EclNavigationListPictureDirective,\n];\n/**\n * Module that provides the EclNavigationListComponent and its dependencies.\n *\n * @deprecated Use {@link EUI_ECL_NAVIGATION_LIST} instead.\n */\n@NgModule({\n imports: [...COMPONENTS],\n exports: [...COMPONENTS],\n})\nexport class EclNavigationListModule {}\n","import { EclNavigationListItemComponent } from './ecl-navigation-list-item.component';\nimport { EclNavigationListImageDirective, EclNavigationListPictureDirective } from './ecl-navigation-list-picture.directive';\nimport { EclNavigationListComponent } from './ecl-navigation-list.component';\n\nexport * from './ecl-navigation-list.module';\nexport * from './ecl-navigation-list.component';\nexport * from './ecl-navigation-list-item.component';\nexport * from './ecl-navigation-list-picture.directive';\n\nexport const EUI_ECL_NAVIGATION_LIST = [\n EclNavigationListComponent,\n EclNavigationListItemComponent,\n EclNavigationListImageDirective,\n EclNavigationListPictureDirective,\n] as const;","/**\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-navigation-list.mjs","sources":["../../components/ecl-navigation-list/ecl-navigation-list-item.component.ts","../../components/ecl-navigation-list/ecl-navigation-list-item.component.html","../../components/ecl-navigation-list/ecl-navigation-list-picture.directive.ts","../../components/ecl-navigation-list/ecl-navigation-list.component.ts","../../components/ecl-navigation-list/ecl-navigation-list.component.html","../../components/ecl-navigation-list/index.ts","../../components/ecl-navigation-list/eui-ecl-components-ecl-navigation-list.ts"],"sourcesContent":["import { AfterContentInit, Component, ContentChild, forwardRef, HostBinding, Input } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclContentBlockComponent } from '@eui/ecl/components/ecl-content-block';\n\n/**\n * Component that represents one navigation list item, has title and image and/or list of links/secondary links.\n */\n@Component({\n selector: 'ecl-navigation-list-item',\n templateUrl: 'ecl-navigation-list-item.component.html',\n})\nexport class EclNavigationListItemComponent extends ECLBaseDirective implements AfterContentInit {\n\n /**\n * The role of the underlying HTML element is 'article', should not be changed.\n */\n @HostBinding('attr.role') role = 'article';\n /**\n * Different variants, that add styling for different type of displaing the picture, used in the list item.\n */\n @Input() variant: 'illustration' | 'image-as-illustration' | '' = '';\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-navigation-list__item'),\n this.hasBorder ? '' : 'ecl-navigation-list__item--no-border',\n this.variant !== '' ? `ecl-navigation-list__item--${this.variant}` : '',\n ].join(' ').trim();\n }\n\n @ContentChild(forwardRef(() => EclContentBlockComponent)) eclContentBlock: EclContentBlockComponent;\n\n hasBorder = true;\n\n ngAfterContentInit(): void {\n // Adds specific class to the conten-block content child, if it exists. \n if (this.eclContentBlock) {\n this.eclContentBlock.class = 'ecl-navigation-list__content-block';\n }\n }\n}\n","<ng-content></ng-content>\n","import { Directive, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * This directive adds specific class to the picture element, used in 'ecl-navigation-list-item'.\n */\n@Directive({\n selector: 'picture[eclNavigationListPicture]',\n})\nexport class EclNavigationListPictureDirective extends ECLBaseDirective {\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-picture ecl-navigation-list__picture')].join(' ').trim();\n }\n}\n\n/**\n * This directive adds specific class to the image element, used in 'ecl-navigation-list-item'.\n */\n@Directive({\n selector: 'img[eclNavigationListImage]',\n})\nexport class EclNavigationListImageDirective extends ECLBaseDirective {\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-navigation-list__image')].join(' ').trim();\n }\n}\n","import { AfterContentInit, Component, ContentChildren, HostBinding, Input, QueryList, booleanAttribute, forwardRef, numberAttribute } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclNavigationListItemComponent } from './ecl-navigation-list-item.component';\n\n/**\n * Navigation lists provide users with a quick way to scan through items and access the information they are looking for.\n * It can offer a quick description of the parent page and/or display child pages that belong to it.\n */\n@Component({\n selector: 'ecl-navigation-list',\n templateUrl: 'ecl-navigation-list.component.html',\n})\nexport class EclNavigationListComponent extends ECLBaseDirective implements AfterContentInit {\n\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-navigation-list'), `ecl-navigation-list--col-${this.columns}`].join(' ').trim();\n }\n\n /**\n * Property that describes how many columns the navigation list has. Default value is 2.\n */\n @Input({ transform: numberAttribute }) columns = 2;\n /**\n * Property that describes if each item will have a border. Default is 'true'.\n */\n @Input({ transform: booleanAttribute }) hasBorders = true;\n\n /**\n * The list of navigation list items.\n */\n @ContentChildren(forwardRef(() => EclNavigationListItemComponent)) listItems: QueryList<EclNavigationListItemComponent>;\n\n ngAfterContentInit(): void {\n // Propagate 'hasBorders' property to navigation list items.\n setTimeout(() => {\n if (!this.hasBorders) {\n this.listItems.forEach(item => item.hasBorder = false);\n }\n });\n }\n}\n","<ng-content></ng-content>\n","import { EclNavigationListItemComponent } from './ecl-navigation-list-item.component';\nimport { EclNavigationListImageDirective, EclNavigationListPictureDirective } from './ecl-navigation-list-picture.directive';\nimport { EclNavigationListComponent } from './ecl-navigation-list.component';\n\nexport * from './ecl-navigation-list.component';\nexport * from './ecl-navigation-list-item.component';\nexport * from './ecl-navigation-list-picture.directive';\n\nexport const EUI_ECL_NAVIGATION_LIST = [\n EclNavigationListComponent,\n EclNavigationListItemComponent,\n EclNavigationListImageDirective,\n EclNavigationListPictureDirective,\n] as const;","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { inject, ElementRef, EventEmitter, HostBinding, Output, ContentChild, Component, Renderer2, ChangeDetectorRef, afterNextRender, booleanAttribute, HostListener, ViewChild, ContentChildren, Input, Directive, NgModule } from '@angular/core';
2
+ import { inject, ElementRef, EventEmitter, HostBinding, Output, ContentChild, Component, Renderer2, ChangeDetectorRef, afterNextRender, booleanAttribute, HostListener, ViewChild, ContentChildren, Input, Directive } from '@angular/core';
3
3
  import { Subject, fromEvent, takeUntil } from 'rxjs';
4
4
  import { ECLBaseDirective, EclBaseEvent } from '@eui/ecl/core';
5
5
  import { EclLinkDirective } from '@eui/ecl/components/ecl-link';
@@ -85,10 +85,10 @@ class EclNewsTickerItemComponent extends ECLBaseDirective {
85
85
  this.eclLink.tabindex = -1;
86
86
  }
87
87
  }
88
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-rc.2", ngImport: i0, type: EclNewsTickerItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
89
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.0-rc.2", type: EclNewsTickerItemComponent, isStandalone: true, selector: "ecl-news-ticker-item", outputs: { itemFocused: "itemFocused" }, host: { properties: { "class": "this.cssClasses", "attr.role": "this.role", "attr.aria-hidden": "this.isAriahidden", "attr.inert": "this.isInert" } }, queries: [{ propertyName: "eclLink", first: true, predicate: EclLinkDirective, descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-content></ng-content>\n" }); }
88
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: EclNewsTickerItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
89
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.3", type: EclNewsTickerItemComponent, isStandalone: true, selector: "ecl-news-ticker-item", outputs: { itemFocused: "itemFocused" }, host: { properties: { "class": "this.cssClasses", "attr.role": "this.role", "attr.aria-hidden": "this.isAriahidden", "attr.inert": "this.isInert" } }, queries: [{ propertyName: "eclLink", first: true, predicate: EclLinkDirective, descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-content></ng-content>\n" }); }
90
90
  }
91
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-rc.2", ngImport: i0, type: EclNewsTickerItemComponent, decorators: [{
91
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: EclNewsTickerItemComponent, decorators: [{
92
92
  type: Component,
93
93
  args: [{ selector: 'ecl-news-ticker-item', template: "<ng-content></ng-content>\n" }]
94
94
  }], propDecorators: { eclLink: [{
@@ -366,10 +366,10 @@ class EclNewsTickerComponent extends ECLBaseDirective {
366
366
  }
367
367
  });
368
368
  }
369
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-rc.2", ngImport: i0, type: EclNewsTickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
370
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.0-rc.2", type: EclNewsTickerComponent, isStandalone: true, selector: "ecl-news-ticker", inputs: { isAutoplay: ["isAutoplay", "isAutoplay", booleanAttribute] }, outputs: { itemSwitch: "itemSwitch" }, host: { listeners: { "window:resize": "onResize($event)" }, properties: { "class": "this.cssClasses" } }, queries: [{ propertyName: "newsTickerItems", predicate: EclNewsTickerItemComponent }], viewQueries: [{ propertyName: "firstHiddenItem", first: true, predicate: ["firstHiddenItem"], descendants: true }, { propertyName: "lastHiddenItem", first: true, predicate: ["lastHiddenItem"], descendants: true }, { propertyName: "slidesContainer", first: true, predicate: ["slidesContainer"], descendants: true }, { propertyName: "playBtn", first: true, predicate: ["playBtn"], descendants: true }, { propertyName: "pauseBtn", first: true, predicate: ["pauseBtn"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"ecl-news-ticker__container\">\n <div class=\"ecl-news-ticker__content\" [style.height.px]=\"contentHeight\">\n <ul class=\"ecl-news-ticker__slides\" [style.transition-duration.s]=\"transitionDuration\"\n [style.transform]=\"slidesTransform\" (mouseover)=\"onNewsTickerItemMouseOver()\"\n (mouseout)=\"onNewsTickerItemMouseOut()\" #slidesContainer>\n @if(isShowControls) {\n <ecl-news-ticker-item #firstHiddenItem></ecl-news-ticker-item>\n }\n <ng-content></ng-content>\n @if(isShowControls) {\n <ecl-news-ticker-item #lastHiddenItem></ecl-news-ticker-item>\n }\n </ul>\n </div>\n</div>\n\n@if(isShowControls) {\n<div class=\"ecl-news-ticker__controls\">\n <div class=\"ecl-news-ticker__actions\">\n <button eclButton class=\"ecl-news-ticker__prev\" variant=\"tertiary\" eclStyle=\"neutral\" isIconOnly (click)=\"onPrevious()\">\n <span eclButtonLabel>\n {{ 'ecl.news-ticker.PREV-ITEM' | translate }}\n </span>\n <ecl-icon isInverted icon=\"corner-arrow\" size=\"l\" transform=\"rotate-270\"\n class=\"ecl-news-ticker__icon-default\"></ecl-icon>\n </button>\n <button #playBtn eclButton class=\"ecl-news-ticker__play\" variant=\"tertiary\" eclStyle=\"neutral\" isIconOnly [class.ecl-u-d-none]=\"playing\"\n (click)=\"startAutoplay()\" (keydown.enter)=\"onPlayBtnEnter($event)\">\n <span class=\"ecl-u-sr-only\">\n {{ 'ecl.news-ticker.AUTO-PLAY' | translate }}\n </span>\n <ecl-icon isInverted icon=\"play-outline\" size=\"l\" class=\"ecl-news-ticker__icon-default\"></ecl-icon>\n </button>\n <button #pauseBtn eclButton class=\"ecl-news-ticker__pause\" variant=\"tertiary\" eclStyle=\"neutral\" isIconOnly [class.ecl-u-d-none]=\"!playing\"\n (click)=\"cancelAutoplay()\" (keydown.enter)=\"onPauseBtnEnter($event)\">\n <span class=\"ecl-u-sr-only\">\n {{ 'ecl.news-ticker.PAUSE' | translate }}\n </span>\n <ecl-icon isInverted icon=\"pause-outline\" size=\"l\" class=\"ecl-news-ticker__icon-default\"></ecl-icon>\n </button>\n <button eclButton class=\"ecl-news-ticker__next\" variant=\"tertiary\" eclStyle=\"neutral\" isIconOnly (click)=\"onNext()\">\n <span eclButtonLabel>\n {{ 'ecl.news-ticker.NEXT-ITEM' | translate }}\n </span>\n <ecl-icon isInverted icon=\"corner-arrow\" size=\"l\" transform=\"rotate-90\"\n class=\"ecl-news-ticker__icon-default\"></ecl-icon>\n </button>\n </div>\n <div class=\"ecl-news-ticker__counter\">\n <span class=\"ecl-news-ticker__counter--current\"> {{ itemIndex }}</span>\n {{ 'ecl.common.OF' | translate }}\n <span class=\"ecl-news-ticker__counter--max\">{{ itemsCount }}</span>\n </div>\n</div>\n}", dependencies: [{ kind: "component", type: i1.EclButtonComponent, selector: "button[eclButton], button[ecl-button], a[eclButton]", inputs: ["isIconOnly", "variant", "eclStyle", "size", "containerStyleClass"] }, { kind: "directive", type: i1.EclButtonLabelDirective, selector: "[eclButtonLabel]" }, { kind: "component", type: i2.EclIconComponent, selector: "ecl-icon", inputs: ["iconSet", "icon", "size", "color", "transform", "ariaLabelledby", "role", "title", "ariaHidden", "focusable", "isFlipHorizontal"] }, { kind: "component", type: EclNewsTickerItemComponent, selector: "ecl-news-ticker-item", outputs: ["itemFocused"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] }); }
369
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: EclNewsTickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
370
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.3", type: EclNewsTickerComponent, isStandalone: true, selector: "ecl-news-ticker", inputs: { isAutoplay: ["isAutoplay", "isAutoplay", booleanAttribute] }, outputs: { itemSwitch: "itemSwitch" }, host: { listeners: { "window:resize": "onResize($event)" }, properties: { "class": "this.cssClasses" } }, queries: [{ propertyName: "newsTickerItems", predicate: EclNewsTickerItemComponent }], viewQueries: [{ propertyName: "firstHiddenItem", first: true, predicate: ["firstHiddenItem"], descendants: true }, { propertyName: "lastHiddenItem", first: true, predicate: ["lastHiddenItem"], descendants: true }, { propertyName: "slidesContainer", first: true, predicate: ["slidesContainer"], descendants: true }, { propertyName: "playBtn", first: true, predicate: ["playBtn"], descendants: true }, { propertyName: "pauseBtn", first: true, predicate: ["pauseBtn"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"ecl-news-ticker__container\">\n <div class=\"ecl-news-ticker__content\" [style.height.px]=\"contentHeight\">\n <ul class=\"ecl-news-ticker__slides\" [style.transition-duration.s]=\"transitionDuration\"\n [style.transform]=\"slidesTransform\" (mouseover)=\"onNewsTickerItemMouseOver()\"\n (mouseout)=\"onNewsTickerItemMouseOut()\" #slidesContainer>\n @if(isShowControls) {\n <ecl-news-ticker-item #firstHiddenItem></ecl-news-ticker-item>\n }\n <ng-content></ng-content>\n @if(isShowControls) {\n <ecl-news-ticker-item #lastHiddenItem></ecl-news-ticker-item>\n }\n </ul>\n </div>\n</div>\n\n@if(isShowControls) {\n<div class=\"ecl-news-ticker__controls\">\n <div class=\"ecl-news-ticker__actions\">\n <button eclButton class=\"ecl-news-ticker__prev\" variant=\"tertiary\" eclStyle=\"neutral\" isIconOnly (click)=\"onPrevious()\">\n <span eclButtonLabel>\n {{ 'ecl.news-ticker.PREV-ITEM' | translate }}\n </span>\n <ecl-icon isInverted icon=\"corner-arrow\" size=\"l\" transform=\"rotate-270\"\n class=\"ecl-news-ticker__icon-default\"></ecl-icon>\n </button>\n <button #playBtn eclButton class=\"ecl-news-ticker__play\" variant=\"tertiary\" eclStyle=\"neutral\" isIconOnly [class.ecl-u-d-none]=\"playing\"\n (click)=\"startAutoplay()\" (keydown.enter)=\"onPlayBtnEnter($event)\">\n <span class=\"ecl-u-sr-only\">\n {{ 'ecl.news-ticker.AUTO-PLAY' | translate }}\n </span>\n <ecl-icon isInverted icon=\"play-outline\" size=\"l\" class=\"ecl-news-ticker__icon-default\"></ecl-icon>\n </button>\n <button #pauseBtn eclButton class=\"ecl-news-ticker__pause\" variant=\"tertiary\" eclStyle=\"neutral\" isIconOnly [class.ecl-u-d-none]=\"!playing\"\n (click)=\"cancelAutoplay()\" (keydown.enter)=\"onPauseBtnEnter($event)\">\n <span class=\"ecl-u-sr-only\">\n {{ 'ecl.news-ticker.PAUSE' | translate }}\n </span>\n <ecl-icon isInverted icon=\"pause-outline\" size=\"l\" class=\"ecl-news-ticker__icon-default\"></ecl-icon>\n </button>\n <button eclButton class=\"ecl-news-ticker__next\" variant=\"tertiary\" eclStyle=\"neutral\" isIconOnly (click)=\"onNext()\">\n <span eclButtonLabel>\n {{ 'ecl.news-ticker.NEXT-ITEM' | translate }}\n </span>\n <ecl-icon isInverted icon=\"corner-arrow\" size=\"l\" transform=\"rotate-90\"\n class=\"ecl-news-ticker__icon-default\"></ecl-icon>\n </button>\n </div>\n <div class=\"ecl-news-ticker__counter\">\n <span class=\"ecl-news-ticker__counter--current\"> {{ itemIndex }}</span>\n {{ 'ecl.common.OF' | translate }}\n <span class=\"ecl-news-ticker__counter--max\">{{ itemsCount }}</span>\n </div>\n</div>\n}", dependencies: [{ kind: "component", type: i1.EclButtonComponent, selector: "button[eclButton], button[ecl-button], a[eclButton]", inputs: ["isIconOnly", "variant", "eclStyle", "size", "containerStyleClass"] }, { kind: "directive", type: i1.EclButtonLabelDirective, selector: "[eclButtonLabel]" }, { kind: "component", type: i2.EclIconComponent, selector: "ecl-icon", inputs: ["iconSet", "icon", "size", "color", "transform", "ariaLabelledby", "role", "title", "ariaHidden", "focusable", "isFlipHorizontal"] }, { kind: "component", type: EclNewsTickerItemComponent, selector: "ecl-news-ticker-item", outputs: ["itemFocused"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] }); }
371
371
  }
372
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-rc.2", ngImport: i0, type: EclNewsTickerComponent, decorators: [{
372
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: EclNewsTickerComponent, decorators: [{
373
373
  type: Component,
374
374
  args: [{ selector: 'ecl-news-ticker', imports: [
375
375
  ...EUI_ECL_BUTTON,
@@ -419,10 +419,10 @@ class EclNewsTickerIconDirective extends ECLBaseDirective {
419
419
  */
420
420
  this.hasClass = true;
421
421
  }
422
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-rc.2", ngImport: i0, type: EclNewsTickerIconDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
423
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.0-rc.2", type: EclNewsTickerIconDirective, isStandalone: true, selector: "[eclNewsTickerIcon]", host: { properties: { "class.ecl-news-ticker__icon": "this.hasClass" } }, usesInheritance: true, ngImport: i0 }); }
422
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: EclNewsTickerIconDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
423
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.3", type: EclNewsTickerIconDirective, isStandalone: true, selector: "[eclNewsTickerIcon]", host: { properties: { "class.ecl-news-ticker__icon": "this.hasClass" } }, usesInheritance: true, ngImport: i0 }); }
424
424
  }
425
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-rc.2", ngImport: i0, type: EclNewsTickerIconDirective, decorators: [{
425
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: EclNewsTickerIconDirective, decorators: [{
426
426
  type: Directive,
427
427
  args: [{
428
428
  selector: '[eclNewsTickerIcon]',
@@ -432,34 +432,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-rc.2", ng
432
432
  args: ['class.ecl-news-ticker__icon']
433
433
  }] } });
434
434
 
435
- const COMPONENTS = [
436
- EclNewsTickerComponent,
437
- EclNewsTickerItemComponent,
438
- EclNewsTickerIconDirective,
439
- ];
440
- /**
441
- * @description
442
- * Module that provides the EclNewsTicker component and its dependencies.
443
- *
444
- * @deprecated Use {@link EUI_ECL_NEWS_TICKER} instead.
445
- */
446
- class EclNewsTickerModule {
447
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-rc.2", ngImport: i0, type: EclNewsTickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
448
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.0-rc.2", ngImport: i0, type: EclNewsTickerModule, imports: [EclNewsTickerComponent,
449
- EclNewsTickerItemComponent,
450
- EclNewsTickerIconDirective], exports: [EclNewsTickerComponent,
451
- EclNewsTickerItemComponent,
452
- EclNewsTickerIconDirective] }); }
453
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.0-rc.2", ngImport: i0, type: EclNewsTickerModule, imports: [EclNewsTickerComponent] }); }
454
- }
455
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-rc.2", ngImport: i0, type: EclNewsTickerModule, decorators: [{
456
- type: NgModule,
457
- args: [{
458
- imports: [...COMPONENTS],
459
- exports: [...COMPONENTS],
460
- }]
461
- }] });
462
-
463
435
  const EUI_ECL_NEWS_TICKER = [
464
436
  EclNewsTickerComponent,
465
437
  EclNewsTickerItemComponent,
@@ -470,5 +442,5 @@ const EUI_ECL_NEWS_TICKER = [
470
442
  * Generated bundle index. Do not edit.
471
443
  */
472
444
 
473
- export { EUI_ECL_NEWS_TICKER, EclNewsTickerComponent, EclNewsTickerIconDirective, EclNewsTickerItemComponent, EclNewsTickerItemEvent, EclNewsTickerModule };
445
+ export { EUI_ECL_NEWS_TICKER, EclNewsTickerComponent, EclNewsTickerIconDirective, EclNewsTickerItemComponent, EclNewsTickerItemEvent };
474
446
  //# sourceMappingURL=eui-ecl-components-ecl-news-ticker.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"eui-ecl-components-ecl-news-ticker.mjs","sources":["../../components/ecl-news-ticker/ecl-news-ticker-item.component.ts","../../components/ecl-news-ticker/ecl-news-ticker-item.component.html","../../components/ecl-news-ticker/events/ecl-news-ticker-item.event.ts","../../components/ecl-news-ticker/ecl-news-ticker.component.ts","../../components/ecl-news-ticker/ecl-news-ticker.component.html","../../components/ecl-news-ticker/ecl-news-ticker-icon.directive.ts","../../components/ecl-news-ticker/ecl-news-ticker.module.ts","../../components/ecl-news-ticker/index.ts","../../components/ecl-news-ticker/eui-ecl-components-ecl-news-ticker.ts"],"sourcesContent":["import { AfterContentInit, Component, ContentChild, ElementRef, EventEmitter, HostBinding, OnDestroy, Output, inject } from '@angular/core';\nimport { fromEvent, Subject, takeUntil } from 'rxjs';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclLinkDirective } from '@eui/ecl/components/ecl-link';\n\n@Component({\n\tselector: 'ecl-news-ticker-item',\n\ttemplateUrl: './ecl-news-ticker-item.component.html',\n})\nexport class EclNewsTickerItemComponent extends ECLBaseDirective implements AfterContentInit, OnDestroy {\n\tel = inject(ElementRef);\n\n\t/**\n\t * Optional projected `ecl-link` element within the news ticker item.\n\t */\n\t@ContentChild(EclLinkDirective) eclLink: EclLinkDirective;\n\n\t/**\n\t * Emitted when the internal link receives focus (used to cancel autoplay).\n\t */\n\t@Output() itemFocused = new EventEmitter<null>();\n\n\t/**\n\t * HostBinding to set the component’s CSS classes.\n\t */\n\t@HostBinding('class')\n\tget cssClasses(): string {\n\t\treturn [super.getCssClasses('ecl-news-ticker__slide')].join(' ').trim();\n\t}\n\n\t/**\n\t * Declares ARIA role as list item for accessibility.\n\t */\n\t@HostBinding('attr.role') role = 'listitem';\n\n\t/**\n\t * Whether this slide is currently visible.\n\t */\n\tget isCurrent(): boolean {\n\t\treturn this._isCurrent;\n\t}\n\tset isCurrent(value: boolean) {\n\t\tthis._isCurrent = value;\n\t\tif (this.eclLink) {\n\t\t\tthis.setLinkTabindex();\n\t\t}\n\t}\n\tprivate _isCurrent = false;\n\n\t/**\n\t * Sets `aria-hidden` based on current slide visibility.\n\t */\n\t@HostBinding('attr.aria-hidden')\n\tget isAriahidden(): boolean {\n\t\treturn !this.isCurrent || undefined;\n\t}\n\n\t/**\n\t * Sets `inert` attribute when the item is not current (prevents interaction).\n\t */\n\t@HostBinding('attr.inert')\n\tget isInert(): boolean {\n\t\treturn !this.isCurrent || undefined;\n\t}\n\n\tprivate destroy$: Subject<boolean> = new Subject<boolean>();\n\n\t/**\n\t * Lifecycle hook that sets up the internal link class and focus listener.\n\t */\n\tngAfterContentInit(): void {\n\t\tif (this.eclLink) {\n\t\t\tthis.eclLink.class = 'ecl-news-ticker__slide-text';\n\t\t}\n\n\t\tif (this.eclLink) {\n\t\t\tfromEvent(this.eclLink.el.nativeElement, 'focus')\n\t\t\t\t.pipe(takeUntil(this.destroy$))\n\t\t\t\t.subscribe(() => {\n\t\t\t\t\tthis.itemFocused.emit();\n\t\t\t\t});\n\t\t}\n\t}\n\n\t/**\n\t * Cleanup on destroy: unsubscribe from observables.\n\t */\n\tngOnDestroy(): void {\n\t\tthis.destroy$.next(true);\n\t\tthis.destroy$.unsubscribe();\n\t}\n\n\tprivate setLinkTabindex(): void {\n\t\tif (this._isCurrent) {\n\t\t\tthis.eclLink.tabindex = null;\n\t\t} else {\n\t\t\tthis.eclLink.tabindex = -1;\n\t\t}\n\t}\n}\n","<ng-content></ng-content>\n","import { EclBaseEvent } from '@eui/ecl/core';\n\nexport class EclNewsTickerItemEvent extends EclBaseEvent {\n constructor(public itemIndex: number) {\n super();\n }\n}","import { ChangeDetectorRef, Component, ContentChildren, ElementRef, EventEmitter, HostBinding, HostListener, Input, OnDestroy, Output, QueryList, Renderer2, ViewChild, afterNextRender, booleanAttribute, inject } from '@angular/core';\nimport { Subject, takeUntil } from 'rxjs';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclButtonComponent } from '@eui/ecl/components/ecl-button';\nimport { EclNewsTickerItemComponent } from './ecl-news-ticker-item.component';\nimport { EclNewsTickerItemEvent } from './events/ecl-news-ticker-item.event';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { EUI_ECL_BUTTON } from '@eui/ecl/components/ecl-button';\nimport { EUI_ECL_ICON } from '@eui/ecl/components/ecl-icon';\n\n@Component({\n\tselector: 'ecl-news-ticker',\n\ttemplateUrl: './ecl-news-ticker.component.html',\n\t imports: [\n\t\t...EUI_ECL_BUTTON,\n ...EUI_ECL_ICON,\n\t\tEclNewsTickerItemComponent,\n\t\tTranslateModule,\n\t],\n})\nexport class EclNewsTickerComponent extends ECLBaseDirective implements OnDestroy {\n\t/**\n\t * Enables or disables automatic cycling through ticker items.\n\t * Defaults to `true`.\n\t */\n\t@Input({ transform: booleanAttribute }) isAutoplay = true;\n\n\t/**\n\t * Emits when the visible news ticker item changes.\n\t * The payload is an instance of `EclNewsTickerItemEvent`.\n\t */\n\t@Output() itemSwitch = new EventEmitter<EclNewsTickerItemEvent>();\n\n\t/**\n\t * Query list of all `EclNewsTickerItemComponent` children projected into this component.\n\t */\n\t@ContentChildren(EclNewsTickerItemComponent) newsTickerItems: QueryList<EclNewsTickerItemComponent>;\n\n\t/**\n\t * Reference to the hidden first item used for looping.\n\t */\n\t@ViewChild('firstHiddenItem') firstHiddenItem: EclNewsTickerItemComponent;\n\n\t/**\n\t * Reference to the hidden last item used for looping.\n\t */\n\t@ViewChild('lastHiddenItem') lastHiddenItem: EclNewsTickerItemComponent;\n\n\t/**\n\t * Reference to the container element that holds the slides.\n\t */\n\t@ViewChild('slidesContainer') slidesContainer: ElementRef;\n\n\t/**\n\t * Reference to the play button used to start autoplay.\n\t */\n\t@ViewChild('playBtn') playBtn: EclButtonComponent;\n\n\t/**\n\t * Reference to the pause button used to stop autoplay.\n\t */\n\t@ViewChild('pauseBtn') pauseBtn: EclButtonComponent;\n\n\t@HostBinding('class')\n\tget cssClasses(): string {\n\t\treturn [super.getCssClasses('ecl-news-ticker')].join(' ').trim();\n\t}\n\n\titemIndex = 1;\n\tplaying = false;\n\tslidesTransform = '';\n\ttransitionDuration: number;\n\tprivate intervalId: any;\n\tprivate PLAY_INTERVAL = 5000;\n\tprivate INIT_DELAY = 300;\n\tprivate _contentHeight: number;\n\tprivate pausePlay = false;\n\tprivate unsubscribeListener: () => void;\n\tprivate destroy$: Subject<boolean> = new Subject<boolean>();\n private renderer2 = inject(Renderer2);\n private cd = inject(ChangeDetectorRef);\n\n\tconstructor() {\n\t\tsuper();\n\t\tafterNextRender(() => {\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.initContainer();\n\t\t\t}, this.INIT_DELAY);\n\t\t\tthis.newsTickerItems.forEach((item) => {\n\t\t\t\titem.itemFocused.pipe(takeUntil(this.destroy$)).subscribe(() => {\n\t\t\t\t\tthis.cancelAutoplay();\n\t\t\t\t});\n\t\t\t});\n\t\t});\n\t}\n\n\t/**\n\t * Returns the height of the currently visible ticker item.\n\t */\n\tget contentHeight(): number {\n\t\treturn this._contentHeight;\n\t}\n\n\t/**\n\t * Returns the number of ticker items.\n\t */\n\tget itemsCount(): number {\n\t\treturn this.newsTickerItems.length;\n\t}\n\n\t/**\n\t * Indicates whether navigation controls should be shown.\n\t */\n\tget isShowControls(): boolean {\n\t\treturn this.newsTickerItems.length > 1;\n\t}\n\n\t/**\n\t * Handles window resize and recalculates the layout.\n\t */\n\t@HostListener('window:resize', ['$event'])\n\tonResize(event): void {\n\t\tsetTimeout(() => {\n\t\t\tthis.resizeTicker();\n\t\t\tthis.moveSlides(this.getCurrentItem(), false);\n\t\t});\n\t}\n\n\t/**\n\t * Lifecycle hook that clears intervals and subscriptions.\n\t */\n\tngOnDestroy(): void {\n\t\tif (this.intervalId) {\n\t\t\tclearInterval(this.intervalId);\n\t\t}\n\t\tif (this.unsubscribeListener) {\n\t\t\tthis.unsubscribeListener();\n\t\t}\n\t\tthis.destroy$.next(true);\n\t\tthis.destroy$.unsubscribe();\n\t}\n\n\t/**\n\t * Handles \"previous\" button click.\n\t * Navigates to the previous slide and stops autoplay.\n\t */\n\tonPrevious(): void {\n\t\tthis.cancelAutoplay();\n\t\tthis.previousSlide();\n\t}\n\n\t/**\n\t * Moves to the previous slide and emits `itemSwitch` event.\n\t */\n\tpreviousSlide(): void {\n\t\tthis.itemIndex = this.getPrevIndex();\n\t\tif (this.itemIndex === this.itemsCount) {\n\t\t\tthis.moveSlides(this.getFirstItem(this.getAllItemsArray()), true);\n\t\t} else {\n\t\t\tthis.moveSlides(this.getCurrentItem(), true);\n\t\t}\n\t\tthis.itemSwitch.next(new EclNewsTickerItemEvent(this.itemIndex));\n\t}\n\n\t/**\n\t * Handles \"next\" button click.\n\t * Navigates to the next slide and stops autoplay.\n\t */\n\tonNext(): void {\n\t\tthis.cancelAutoplay();\n\t\tthis.nextSlide();\n\t}\n\n\t/**\n\t * Moves to the next slide and emits `itemSwitch` event.\n\t */\n\tnextSlide(): void {\n\t\tthis.itemIndex = this.getNextIndex();\n\t\tif (this.itemIndex === 1) {\n\t\t\tthis.moveSlides(this.getLastItem(this.getAllItemsArray()), true);\n\t\t} else {\n\t\t\tthis.moveSlides(this.getCurrentItem(), true);\n\t\t}\n\t\tthis.itemSwitch.next(new EclNewsTickerItemEvent(this.itemIndex));\n\t}\n\n\t/**\n\t * Starts automatic cycling of the ticker items.\n\t */\n\tstartAutoplay(): void {\n\t\tthis.playing = true;\n\t\tthis.intervalId = setInterval(() => this.nextSlide(), this.PLAY_INTERVAL);\n\t}\n\n\t/**\n\t * Cancels the automatic cycling of the ticker items.\n\t */\n\tcancelAutoplay(): void {\n\t\tif (this.intervalId) {\n\t\t\tclearInterval(this.intervalId);\n\t\t}\n\t\tthis.playing = false;\n\t}\n\n\t/**\n\t * Handles mouse over event on a ticker item.\n\t * Temporarily pauses autoplay.\n\t */\n\tonNewsTickerItemMouseOver(): void {\n\t\tif (this.playing) {\n\t\t\tthis.pausePlay = true;\n\t\t\tthis.cancelAutoplay();\n\t\t}\n\t}\n\n\t/**\n\t * Handles mouse out event from a ticker item.\n\t * Resumes autoplay if it was paused due to hover.\n\t */\n\tonNewsTickerItemMouseOut(): void {\n\t\tif (this.pausePlay) {\n\t\t\tthis.pausePlay = false;\n\t\t\tthis.startAutoplay();\n\t\t}\n\t}\n\n\t/**\n\t * Handles focus event on the \"Play\" button.\n\t * Starts autoplay and shifts focus to the \"Pause\" button.\n\t */\n\tonPlayBtnEnter(evt: Event): void {\n\t\tevt.preventDefault();\n\t\tthis.startAutoplay();\n\t\tthis.cd.detectChanges();\n\t\tthis.pauseBtn.el.nativeElement.focus();\n\t}\n\n\t/**\n\t * Handles focus event on the \"Pause\" button.\n\t * Stops autoplay and shifts focus to the \"Play\" button.\n\t */\n\tonPauseBtnEnter(evt: Event): void {\n\t\tevt.preventDefault();\n\t\tthis.cancelAutoplay();\n\t\tthis.cd.detectChanges();\n\t\tthis.playBtn.el.nativeElement.focus();\n\t}\n\n\tprivate moveSlides(item: EclNewsTickerItemComponent, withTransition: boolean): void {\n\t\tif (item) {\n\t\t\tconst newOffset = item.el.nativeElement.offsetTop;\n\t\t\tconst newHeight = Math.floor(item.el.nativeElement.getBoundingClientRect().height,\n );\n\t\t\tthis._contentHeight = newHeight;\n\t\t\tthis.transitionDuration = withTransition ? 0.4 : 0;\n\t\t\tthis.slidesTransform = `translate3d(0px, -${newOffset}px, 0px)`;\n\t\t\tthis.cd.detectChanges();\n\t\t\tthis.setCurrentSlide(item);\n\t\t}\n\t}\n\n\tprivate initContainer(): void {\n\t\tif (this.newsTickerItems.length === 1) {\n\t\t\tthis.resizeTicker();\n\t\t\tthis.moveSlides(this.getFirstItem(this.newsTickerItems.toArray()), false);\n\t\t\treturn;\n\t\t}\n\t\tthis.firstHiddenItem.el.nativeElement.innerHTML = this.getLastContentChild();\n\t\tthis.lastHiddenItem.el.nativeElement.innerHTML = this.getFirstContentChild();\n\t\tthis.unsubscribeListener = this.renderer2.listen(this.slidesContainer.nativeElement, 'transitionend', () => this.checkIndex());\n\t\tthis.resizeTicker();\n\t\tthis.moveSlides(this.getFirstItem(this.newsTickerItems.toArray()), false);\n\t\tif (this.isAutoplay) {\n\t\t\tthis.startAutoplay();\n\t\t}\n\t}\n\n\tprivate checkIndex(): void {\n\t\tif (this.itemIndex === 1) {\n\t\t\tconst item = this.getFirstItem(this.newsTickerItems.toArray());\n\t\t\tthis.moveSlides(item, false);\n\t\t} else if (this.itemIndex === this.itemsCount) {\n\t\t\tconst item = this.getLastItem(this.newsTickerItems.toArray());\n\t\t\tthis.moveSlides(item, false);\n\t\t}\n\t}\n\n\tprivate resizeTicker(): void {\n\t\tlet highestSlide = 0;\n\t\tthis.newsTickerItems.forEach((slide) => {\n\t\t\tconst slideHeight = slide.el.nativeElement.offsetHeight;\n\t\t\thighestSlide = highestSlide < slideHeight ? slideHeight : highestSlide;\n\t\t});\n\t}\n\n\tprivate getNextIndex(): number {\n\t\treturn this.itemIndex === this.itemsCount ? 1 : ++this.itemIndex;\n\t}\n\n\tprivate getCurrentItem(): EclNewsTickerItemComponent {\n\t\treturn this.getAllItemsArray()[this.itemIndex];\n\t}\n\n\tprivate getPrevIndex(): number {\n\t\treturn this.itemIndex === 1 ? this.itemsCount : --this.itemIndex;\n\t}\n\n\tprivate getFirstItem(items: Array<EclNewsTickerItemComponent>): EclNewsTickerItemComponent {\n\t\treturn items.length > 0 ? items[0] : null;\n\t}\n\n\tprivate getLastItem(items: Array<EclNewsTickerItemComponent>): EclNewsTickerItemComponent {\n\t\treturn items[items.length - 1];\n\t}\n\n\tprivate getLastContentChild(): string {\n\t\treturn this.newsTickerItems.length > 0 ? this.newsTickerItems.get(this.itemsCount - 1).el.nativeElement.innerHTML : '';\n\t}\n\n\tprivate getFirstContentChild(): string {\n\t\treturn this.newsTickerItems.length > 0 ? this.newsTickerItems.get(0).el.nativeElement.innerHTML : '';\n\t}\n\n\tprivate getAllItemsArray(): EclNewsTickerItemComponent[] {\n\t\treturn [...[this.firstHiddenItem], ...this.newsTickerItems.toArray(), ...[this.lastHiddenItem]];\n\t}\n\n\tprivate setCurrentSlide(currentItem: EclNewsTickerItemComponent): void {\n\t\tthis.newsTickerItems.forEach((item) => {\n\t\t\titem.isCurrent = false;\n\t\t\tif (item === currentItem) {\n\t\t\t\titem.isCurrent = true;\n\t\t\t}\n\t\t});\n\t}\n}\n","<div class=\"ecl-news-ticker__container\">\n <div class=\"ecl-news-ticker__content\" [style.height.px]=\"contentHeight\">\n <ul class=\"ecl-news-ticker__slides\" [style.transition-duration.s]=\"transitionDuration\"\n [style.transform]=\"slidesTransform\" (mouseover)=\"onNewsTickerItemMouseOver()\"\n (mouseout)=\"onNewsTickerItemMouseOut()\" #slidesContainer>\n @if(isShowControls) {\n <ecl-news-ticker-item #firstHiddenItem></ecl-news-ticker-item>\n }\n <ng-content></ng-content>\n @if(isShowControls) {\n <ecl-news-ticker-item #lastHiddenItem></ecl-news-ticker-item>\n }\n </ul>\n </div>\n</div>\n\n@if(isShowControls) {\n<div class=\"ecl-news-ticker__controls\">\n <div class=\"ecl-news-ticker__actions\">\n <button eclButton class=\"ecl-news-ticker__prev\" variant=\"tertiary\" eclStyle=\"neutral\" isIconOnly (click)=\"onPrevious()\">\n <span eclButtonLabel>\n {{ 'ecl.news-ticker.PREV-ITEM' | translate }}\n </span>\n <ecl-icon isInverted icon=\"corner-arrow\" size=\"l\" transform=\"rotate-270\"\n class=\"ecl-news-ticker__icon-default\"></ecl-icon>\n </button>\n <button #playBtn eclButton class=\"ecl-news-ticker__play\" variant=\"tertiary\" eclStyle=\"neutral\" isIconOnly [class.ecl-u-d-none]=\"playing\"\n (click)=\"startAutoplay()\" (keydown.enter)=\"onPlayBtnEnter($event)\">\n <span class=\"ecl-u-sr-only\">\n {{ 'ecl.news-ticker.AUTO-PLAY' | translate }}\n </span>\n <ecl-icon isInverted icon=\"play-outline\" size=\"l\" class=\"ecl-news-ticker__icon-default\"></ecl-icon>\n </button>\n <button #pauseBtn eclButton class=\"ecl-news-ticker__pause\" variant=\"tertiary\" eclStyle=\"neutral\" isIconOnly [class.ecl-u-d-none]=\"!playing\"\n (click)=\"cancelAutoplay()\" (keydown.enter)=\"onPauseBtnEnter($event)\">\n <span class=\"ecl-u-sr-only\">\n {{ 'ecl.news-ticker.PAUSE' | translate }}\n </span>\n <ecl-icon isInverted icon=\"pause-outline\" size=\"l\" class=\"ecl-news-ticker__icon-default\"></ecl-icon>\n </button>\n <button eclButton class=\"ecl-news-ticker__next\" variant=\"tertiary\" eclStyle=\"neutral\" isIconOnly (click)=\"onNext()\">\n <span eclButtonLabel>\n {{ 'ecl.news-ticker.NEXT-ITEM' | translate }}\n </span>\n <ecl-icon isInverted icon=\"corner-arrow\" size=\"l\" transform=\"rotate-90\"\n class=\"ecl-news-ticker__icon-default\"></ecl-icon>\n </button>\n </div>\n <div class=\"ecl-news-ticker__counter\">\n <span class=\"ecl-news-ticker__counter--current\"> {{ itemIndex }}</span>\n {{ 'ecl.common.OF' | translate }}\n <span class=\"ecl-news-ticker__counter--max\">{{ itemsCount }}</span>\n </div>\n</div>\n}","import { Directive, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive to mark and style the icon inside a news ticker item.\n */\n@Directive({\n\tselector: '[eclNewsTickerIcon]',\n})\nexport class EclNewsTickerIconDirective extends ECLBaseDirective {\n\t/**\n\t * Adds the `ecl-news-ticker__icon` class to the host element.\n\t */\n\t@HostBinding('class.ecl-news-ticker__icon') hasClass = true;\n}\n","import { NgModule } from '@angular/core';\nimport { EclNewsTickerComponent } from './ecl-news-ticker.component';\nimport { EclNewsTickerItemComponent } from './ecl-news-ticker-item.component';\nimport { EclNewsTickerIconDirective } from './ecl-news-ticker-icon.directive';\n\nconst COMPONENTS = [\n EclNewsTickerComponent,\n EclNewsTickerItemComponent,\n EclNewsTickerIconDirective,\n];\n\n/**\n * @description\n * Module that provides the EclNewsTicker component and its dependencies.\n *\n * @deprecated Use {@link EUI_ECL_NEWS_TICKER} instead.\n */\n@NgModule({\n imports: [...COMPONENTS],\n exports: [...COMPONENTS],\n})\nexport class EclNewsTickerModule {}\n","import { EclNewsTickerComponent } from './ecl-news-ticker.component';\nimport { EclNewsTickerItemComponent } from './ecl-news-ticker-item.component';\nimport { EclNewsTickerIconDirective } from './ecl-news-ticker-icon.directive';\n\nexport * from './ecl-news-ticker.module';\nexport * from './ecl-news-ticker.component';\nexport * from './ecl-news-ticker-item.component';\nexport * from './ecl-news-ticker-icon.directive';\nexport * from './events/ecl-news-ticker-item.event';\n\nexport const EUI_ECL_NEWS_TICKER = [\n EclNewsTickerComponent,\n EclNewsTickerItemComponent,\n EclNewsTickerIconDirective,\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-news-ticker.mjs","sources":["../../components/ecl-news-ticker/ecl-news-ticker-item.component.ts","../../components/ecl-news-ticker/ecl-news-ticker-item.component.html","../../components/ecl-news-ticker/events/ecl-news-ticker-item.event.ts","../../components/ecl-news-ticker/ecl-news-ticker.component.ts","../../components/ecl-news-ticker/ecl-news-ticker.component.html","../../components/ecl-news-ticker/ecl-news-ticker-icon.directive.ts","../../components/ecl-news-ticker/index.ts","../../components/ecl-news-ticker/eui-ecl-components-ecl-news-ticker.ts"],"sourcesContent":["import { AfterContentInit, Component, ContentChild, ElementRef, EventEmitter, HostBinding, OnDestroy, Output, inject } from '@angular/core';\nimport { fromEvent, Subject, takeUntil } from 'rxjs';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclLinkDirective } from '@eui/ecl/components/ecl-link';\n\n@Component({\n\tselector: 'ecl-news-ticker-item',\n\ttemplateUrl: './ecl-news-ticker-item.component.html',\n})\nexport class EclNewsTickerItemComponent extends ECLBaseDirective implements AfterContentInit, OnDestroy {\n\tel = inject(ElementRef);\n\n\t/**\n\t * Optional projected `ecl-link` element within the news ticker item.\n\t */\n\t@ContentChild(EclLinkDirective) eclLink: EclLinkDirective;\n\n\t/**\n\t * Emitted when the internal link receives focus (used to cancel autoplay).\n\t */\n\t@Output() itemFocused = new EventEmitter<null>();\n\n\t/**\n\t * HostBinding to set the component’s CSS classes.\n\t */\n\t@HostBinding('class')\n\tget cssClasses(): string {\n\t\treturn [super.getCssClasses('ecl-news-ticker__slide')].join(' ').trim();\n\t}\n\n\t/**\n\t * Declares ARIA role as list item for accessibility.\n\t */\n\t@HostBinding('attr.role') role = 'listitem';\n\n\t/**\n\t * Whether this slide is currently visible.\n\t */\n\tget isCurrent(): boolean {\n\t\treturn this._isCurrent;\n\t}\n\tset isCurrent(value: boolean) {\n\t\tthis._isCurrent = value;\n\t\tif (this.eclLink) {\n\t\t\tthis.setLinkTabindex();\n\t\t}\n\t}\n\tprivate _isCurrent = false;\n\n\t/**\n\t * Sets `aria-hidden` based on current slide visibility.\n\t */\n\t@HostBinding('attr.aria-hidden')\n\tget isAriahidden(): boolean {\n\t\treturn !this.isCurrent || undefined;\n\t}\n\n\t/**\n\t * Sets `inert` attribute when the item is not current (prevents interaction).\n\t */\n\t@HostBinding('attr.inert')\n\tget isInert(): boolean {\n\t\treturn !this.isCurrent || undefined;\n\t}\n\n\tprivate destroy$: Subject<boolean> = new Subject<boolean>();\n\n\t/**\n\t * Lifecycle hook that sets up the internal link class and focus listener.\n\t */\n\tngAfterContentInit(): void {\n\t\tif (this.eclLink) {\n\t\t\tthis.eclLink.class = 'ecl-news-ticker__slide-text';\n\t\t}\n\n\t\tif (this.eclLink) {\n\t\t\tfromEvent(this.eclLink.el.nativeElement, 'focus')\n\t\t\t\t.pipe(takeUntil(this.destroy$))\n\t\t\t\t.subscribe(() => {\n\t\t\t\t\tthis.itemFocused.emit();\n\t\t\t\t});\n\t\t}\n\t}\n\n\t/**\n\t * Cleanup on destroy: unsubscribe from observables.\n\t */\n\tngOnDestroy(): void {\n\t\tthis.destroy$.next(true);\n\t\tthis.destroy$.unsubscribe();\n\t}\n\n\tprivate setLinkTabindex(): void {\n\t\tif (this._isCurrent) {\n\t\t\tthis.eclLink.tabindex = null;\n\t\t} else {\n\t\t\tthis.eclLink.tabindex = -1;\n\t\t}\n\t}\n}\n","<ng-content></ng-content>\n","import { EclBaseEvent } from '@eui/ecl/core';\n\nexport class EclNewsTickerItemEvent extends EclBaseEvent {\n constructor(public itemIndex: number) {\n super();\n }\n}","import { ChangeDetectorRef, Component, ContentChildren, ElementRef, EventEmitter, HostBinding, HostListener, Input, OnDestroy, Output, QueryList, Renderer2, ViewChild, afterNextRender, booleanAttribute, inject } from '@angular/core';\nimport { Subject, takeUntil } from 'rxjs';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclButtonComponent } from '@eui/ecl/components/ecl-button';\nimport { EclNewsTickerItemComponent } from './ecl-news-ticker-item.component';\nimport { EclNewsTickerItemEvent } from './events/ecl-news-ticker-item.event';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { EUI_ECL_BUTTON } from '@eui/ecl/components/ecl-button';\nimport { EUI_ECL_ICON } from '@eui/ecl/components/ecl-icon';\n\n@Component({\n\tselector: 'ecl-news-ticker',\n\ttemplateUrl: './ecl-news-ticker.component.html',\n\t imports: [\n\t\t...EUI_ECL_BUTTON,\n ...EUI_ECL_ICON,\n\t\tEclNewsTickerItemComponent,\n\t\tTranslateModule,\n\t],\n})\nexport class EclNewsTickerComponent extends ECLBaseDirective implements OnDestroy {\n\t/**\n\t * Enables or disables automatic cycling through ticker items.\n\t * Defaults to `true`.\n\t */\n\t@Input({ transform: booleanAttribute }) isAutoplay = true;\n\n\t/**\n\t * Emits when the visible news ticker item changes.\n\t * The payload is an instance of `EclNewsTickerItemEvent`.\n\t */\n\t@Output() itemSwitch = new EventEmitter<EclNewsTickerItemEvent>();\n\n\t/**\n\t * Query list of all `EclNewsTickerItemComponent` children projected into this component.\n\t */\n\t@ContentChildren(EclNewsTickerItemComponent) newsTickerItems: QueryList<EclNewsTickerItemComponent>;\n\n\t/**\n\t * Reference to the hidden first item used for looping.\n\t */\n\t@ViewChild('firstHiddenItem') firstHiddenItem: EclNewsTickerItemComponent;\n\n\t/**\n\t * Reference to the hidden last item used for looping.\n\t */\n\t@ViewChild('lastHiddenItem') lastHiddenItem: EclNewsTickerItemComponent;\n\n\t/**\n\t * Reference to the container element that holds the slides.\n\t */\n\t@ViewChild('slidesContainer') slidesContainer: ElementRef;\n\n\t/**\n\t * Reference to the play button used to start autoplay.\n\t */\n\t@ViewChild('playBtn') playBtn: EclButtonComponent;\n\n\t/**\n\t * Reference to the pause button used to stop autoplay.\n\t */\n\t@ViewChild('pauseBtn') pauseBtn: EclButtonComponent;\n\n\t@HostBinding('class')\n\tget cssClasses(): string {\n\t\treturn [super.getCssClasses('ecl-news-ticker')].join(' ').trim();\n\t}\n\n\titemIndex = 1;\n\tplaying = false;\n\tslidesTransform = '';\n\ttransitionDuration: number;\n\tprivate intervalId: any;\n\tprivate PLAY_INTERVAL = 5000;\n\tprivate INIT_DELAY = 300;\n\tprivate _contentHeight: number;\n\tprivate pausePlay = false;\n\tprivate unsubscribeListener: () => void;\n\tprivate destroy$: Subject<boolean> = new Subject<boolean>();\n private renderer2 = inject(Renderer2);\n private cd = inject(ChangeDetectorRef);\n\n\tconstructor() {\n\t\tsuper();\n\t\tafterNextRender(() => {\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.initContainer();\n\t\t\t}, this.INIT_DELAY);\n\t\t\tthis.newsTickerItems.forEach((item) => {\n\t\t\t\titem.itemFocused.pipe(takeUntil(this.destroy$)).subscribe(() => {\n\t\t\t\t\tthis.cancelAutoplay();\n\t\t\t\t});\n\t\t\t});\n\t\t});\n\t}\n\n\t/**\n\t * Returns the height of the currently visible ticker item.\n\t */\n\tget contentHeight(): number {\n\t\treturn this._contentHeight;\n\t}\n\n\t/**\n\t * Returns the number of ticker items.\n\t */\n\tget itemsCount(): number {\n\t\treturn this.newsTickerItems.length;\n\t}\n\n\t/**\n\t * Indicates whether navigation controls should be shown.\n\t */\n\tget isShowControls(): boolean {\n\t\treturn this.newsTickerItems.length > 1;\n\t}\n\n\t/**\n\t * Handles window resize and recalculates the layout.\n\t */\n\t@HostListener('window:resize', ['$event'])\n\tonResize(event): void {\n\t\tsetTimeout(() => {\n\t\t\tthis.resizeTicker();\n\t\t\tthis.moveSlides(this.getCurrentItem(), false);\n\t\t});\n\t}\n\n\t/**\n\t * Lifecycle hook that clears intervals and subscriptions.\n\t */\n\tngOnDestroy(): void {\n\t\tif (this.intervalId) {\n\t\t\tclearInterval(this.intervalId);\n\t\t}\n\t\tif (this.unsubscribeListener) {\n\t\t\tthis.unsubscribeListener();\n\t\t}\n\t\tthis.destroy$.next(true);\n\t\tthis.destroy$.unsubscribe();\n\t}\n\n\t/**\n\t * Handles \"previous\" button click.\n\t * Navigates to the previous slide and stops autoplay.\n\t */\n\tonPrevious(): void {\n\t\tthis.cancelAutoplay();\n\t\tthis.previousSlide();\n\t}\n\n\t/**\n\t * Moves to the previous slide and emits `itemSwitch` event.\n\t */\n\tpreviousSlide(): void {\n\t\tthis.itemIndex = this.getPrevIndex();\n\t\tif (this.itemIndex === this.itemsCount) {\n\t\t\tthis.moveSlides(this.getFirstItem(this.getAllItemsArray()), true);\n\t\t} else {\n\t\t\tthis.moveSlides(this.getCurrentItem(), true);\n\t\t}\n\t\tthis.itemSwitch.next(new EclNewsTickerItemEvent(this.itemIndex));\n\t}\n\n\t/**\n\t * Handles \"next\" button click.\n\t * Navigates to the next slide and stops autoplay.\n\t */\n\tonNext(): void {\n\t\tthis.cancelAutoplay();\n\t\tthis.nextSlide();\n\t}\n\n\t/**\n\t * Moves to the next slide and emits `itemSwitch` event.\n\t */\n\tnextSlide(): void {\n\t\tthis.itemIndex = this.getNextIndex();\n\t\tif (this.itemIndex === 1) {\n\t\t\tthis.moveSlides(this.getLastItem(this.getAllItemsArray()), true);\n\t\t} else {\n\t\t\tthis.moveSlides(this.getCurrentItem(), true);\n\t\t}\n\t\tthis.itemSwitch.next(new EclNewsTickerItemEvent(this.itemIndex));\n\t}\n\n\t/**\n\t * Starts automatic cycling of the ticker items.\n\t */\n\tstartAutoplay(): void {\n\t\tthis.playing = true;\n\t\tthis.intervalId = setInterval(() => this.nextSlide(), this.PLAY_INTERVAL);\n\t}\n\n\t/**\n\t * Cancels the automatic cycling of the ticker items.\n\t */\n\tcancelAutoplay(): void {\n\t\tif (this.intervalId) {\n\t\t\tclearInterval(this.intervalId);\n\t\t}\n\t\tthis.playing = false;\n\t}\n\n\t/**\n\t * Handles mouse over event on a ticker item.\n\t * Temporarily pauses autoplay.\n\t */\n\tonNewsTickerItemMouseOver(): void {\n\t\tif (this.playing) {\n\t\t\tthis.pausePlay = true;\n\t\t\tthis.cancelAutoplay();\n\t\t}\n\t}\n\n\t/**\n\t * Handles mouse out event from a ticker item.\n\t * Resumes autoplay if it was paused due to hover.\n\t */\n\tonNewsTickerItemMouseOut(): void {\n\t\tif (this.pausePlay) {\n\t\t\tthis.pausePlay = false;\n\t\t\tthis.startAutoplay();\n\t\t}\n\t}\n\n\t/**\n\t * Handles focus event on the \"Play\" button.\n\t * Starts autoplay and shifts focus to the \"Pause\" button.\n\t */\n\tonPlayBtnEnter(evt: Event): void {\n\t\tevt.preventDefault();\n\t\tthis.startAutoplay();\n\t\tthis.cd.detectChanges();\n\t\tthis.pauseBtn.el.nativeElement.focus();\n\t}\n\n\t/**\n\t * Handles focus event on the \"Pause\" button.\n\t * Stops autoplay and shifts focus to the \"Play\" button.\n\t */\n\tonPauseBtnEnter(evt: Event): void {\n\t\tevt.preventDefault();\n\t\tthis.cancelAutoplay();\n\t\tthis.cd.detectChanges();\n\t\tthis.playBtn.el.nativeElement.focus();\n\t}\n\n\tprivate moveSlides(item: EclNewsTickerItemComponent, withTransition: boolean): void {\n\t\tif (item) {\n\t\t\tconst newOffset = item.el.nativeElement.offsetTop;\n\t\t\tconst newHeight = Math.floor(item.el.nativeElement.getBoundingClientRect().height,\n );\n\t\t\tthis._contentHeight = newHeight;\n\t\t\tthis.transitionDuration = withTransition ? 0.4 : 0;\n\t\t\tthis.slidesTransform = `translate3d(0px, -${newOffset}px, 0px)`;\n\t\t\tthis.cd.detectChanges();\n\t\t\tthis.setCurrentSlide(item);\n\t\t}\n\t}\n\n\tprivate initContainer(): void {\n\t\tif (this.newsTickerItems.length === 1) {\n\t\t\tthis.resizeTicker();\n\t\t\tthis.moveSlides(this.getFirstItem(this.newsTickerItems.toArray()), false);\n\t\t\treturn;\n\t\t}\n\t\tthis.firstHiddenItem.el.nativeElement.innerHTML = this.getLastContentChild();\n\t\tthis.lastHiddenItem.el.nativeElement.innerHTML = this.getFirstContentChild();\n\t\tthis.unsubscribeListener = this.renderer2.listen(this.slidesContainer.nativeElement, 'transitionend', () => this.checkIndex());\n\t\tthis.resizeTicker();\n\t\tthis.moveSlides(this.getFirstItem(this.newsTickerItems.toArray()), false);\n\t\tif (this.isAutoplay) {\n\t\t\tthis.startAutoplay();\n\t\t}\n\t}\n\n\tprivate checkIndex(): void {\n\t\tif (this.itemIndex === 1) {\n\t\t\tconst item = this.getFirstItem(this.newsTickerItems.toArray());\n\t\t\tthis.moveSlides(item, false);\n\t\t} else if (this.itemIndex === this.itemsCount) {\n\t\t\tconst item = this.getLastItem(this.newsTickerItems.toArray());\n\t\t\tthis.moveSlides(item, false);\n\t\t}\n\t}\n\n\tprivate resizeTicker(): void {\n\t\tlet highestSlide = 0;\n\t\tthis.newsTickerItems.forEach((slide) => {\n\t\t\tconst slideHeight = slide.el.nativeElement.offsetHeight;\n\t\t\thighestSlide = highestSlide < slideHeight ? slideHeight : highestSlide;\n\t\t});\n\t}\n\n\tprivate getNextIndex(): number {\n\t\treturn this.itemIndex === this.itemsCount ? 1 : ++this.itemIndex;\n\t}\n\n\tprivate getCurrentItem(): EclNewsTickerItemComponent {\n\t\treturn this.getAllItemsArray()[this.itemIndex];\n\t}\n\n\tprivate getPrevIndex(): number {\n\t\treturn this.itemIndex === 1 ? this.itemsCount : --this.itemIndex;\n\t}\n\n\tprivate getFirstItem(items: Array<EclNewsTickerItemComponent>): EclNewsTickerItemComponent {\n\t\treturn items.length > 0 ? items[0] : null;\n\t}\n\n\tprivate getLastItem(items: Array<EclNewsTickerItemComponent>): EclNewsTickerItemComponent {\n\t\treturn items[items.length - 1];\n\t}\n\n\tprivate getLastContentChild(): string {\n\t\treturn this.newsTickerItems.length > 0 ? this.newsTickerItems.get(this.itemsCount - 1).el.nativeElement.innerHTML : '';\n\t}\n\n\tprivate getFirstContentChild(): string {\n\t\treturn this.newsTickerItems.length > 0 ? this.newsTickerItems.get(0).el.nativeElement.innerHTML : '';\n\t}\n\n\tprivate getAllItemsArray(): EclNewsTickerItemComponent[] {\n\t\treturn [...[this.firstHiddenItem], ...this.newsTickerItems.toArray(), ...[this.lastHiddenItem]];\n\t}\n\n\tprivate setCurrentSlide(currentItem: EclNewsTickerItemComponent): void {\n\t\tthis.newsTickerItems.forEach((item) => {\n\t\t\titem.isCurrent = false;\n\t\t\tif (item === currentItem) {\n\t\t\t\titem.isCurrent = true;\n\t\t\t}\n\t\t});\n\t}\n}\n","<div class=\"ecl-news-ticker__container\">\n <div class=\"ecl-news-ticker__content\" [style.height.px]=\"contentHeight\">\n <ul class=\"ecl-news-ticker__slides\" [style.transition-duration.s]=\"transitionDuration\"\n [style.transform]=\"slidesTransform\" (mouseover)=\"onNewsTickerItemMouseOver()\"\n (mouseout)=\"onNewsTickerItemMouseOut()\" #slidesContainer>\n @if(isShowControls) {\n <ecl-news-ticker-item #firstHiddenItem></ecl-news-ticker-item>\n }\n <ng-content></ng-content>\n @if(isShowControls) {\n <ecl-news-ticker-item #lastHiddenItem></ecl-news-ticker-item>\n }\n </ul>\n </div>\n</div>\n\n@if(isShowControls) {\n<div class=\"ecl-news-ticker__controls\">\n <div class=\"ecl-news-ticker__actions\">\n <button eclButton class=\"ecl-news-ticker__prev\" variant=\"tertiary\" eclStyle=\"neutral\" isIconOnly (click)=\"onPrevious()\">\n <span eclButtonLabel>\n {{ 'ecl.news-ticker.PREV-ITEM' | translate }}\n </span>\n <ecl-icon isInverted icon=\"corner-arrow\" size=\"l\" transform=\"rotate-270\"\n class=\"ecl-news-ticker__icon-default\"></ecl-icon>\n </button>\n <button #playBtn eclButton class=\"ecl-news-ticker__play\" variant=\"tertiary\" eclStyle=\"neutral\" isIconOnly [class.ecl-u-d-none]=\"playing\"\n (click)=\"startAutoplay()\" (keydown.enter)=\"onPlayBtnEnter($event)\">\n <span class=\"ecl-u-sr-only\">\n {{ 'ecl.news-ticker.AUTO-PLAY' | translate }}\n </span>\n <ecl-icon isInverted icon=\"play-outline\" size=\"l\" class=\"ecl-news-ticker__icon-default\"></ecl-icon>\n </button>\n <button #pauseBtn eclButton class=\"ecl-news-ticker__pause\" variant=\"tertiary\" eclStyle=\"neutral\" isIconOnly [class.ecl-u-d-none]=\"!playing\"\n (click)=\"cancelAutoplay()\" (keydown.enter)=\"onPauseBtnEnter($event)\">\n <span class=\"ecl-u-sr-only\">\n {{ 'ecl.news-ticker.PAUSE' | translate }}\n </span>\n <ecl-icon isInverted icon=\"pause-outline\" size=\"l\" class=\"ecl-news-ticker__icon-default\"></ecl-icon>\n </button>\n <button eclButton class=\"ecl-news-ticker__next\" variant=\"tertiary\" eclStyle=\"neutral\" isIconOnly (click)=\"onNext()\">\n <span eclButtonLabel>\n {{ 'ecl.news-ticker.NEXT-ITEM' | translate }}\n </span>\n <ecl-icon isInverted icon=\"corner-arrow\" size=\"l\" transform=\"rotate-90\"\n class=\"ecl-news-ticker__icon-default\"></ecl-icon>\n </button>\n </div>\n <div class=\"ecl-news-ticker__counter\">\n <span class=\"ecl-news-ticker__counter--current\"> {{ itemIndex }}</span>\n {{ 'ecl.common.OF' | translate }}\n <span class=\"ecl-news-ticker__counter--max\">{{ itemsCount }}</span>\n </div>\n</div>\n}","import { Directive, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive to mark and style the icon inside a news ticker item.\n */\n@Directive({\n\tselector: '[eclNewsTickerIcon]',\n})\nexport class EclNewsTickerIconDirective extends ECLBaseDirective {\n\t/**\n\t * Adds the `ecl-news-ticker__icon` class to the host element.\n\t */\n\t@HostBinding('class.ecl-news-ticker__icon') hasClass = true;\n}\n","import { EclNewsTickerComponent } from './ecl-news-ticker.component';\nimport { EclNewsTickerItemComponent } from './ecl-news-ticker-item.component';\nimport { EclNewsTickerIconDirective } from './ecl-news-ticker-icon.directive';\n\nexport * from './ecl-news-ticker.component';\nexport * from './ecl-news-ticker-item.component';\nexport * from './ecl-news-ticker-icon.directive';\nexport * from './events/ecl-news-ticker-item.event';\n\nexport const EUI_ECL_NEWS_TICKER = [\n EclNewsTickerComponent,\n EclNewsTickerItemComponent,\n EclNewsTickerIconDirective,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { inject, EventEmitter, booleanAttribute, HostBinding, Output, Input, Component, Directive, NgModule } from '@angular/core';
2
+ import { HostBinding, Directive, contentChildren, inject, EventEmitter, contentChild, computed, booleanAttribute, Output, Input, Component } from '@angular/core';
3
3
  import { EclBaseEvent, ECLBaseDirective, EclThemeService } from '@eui/ecl/core';
4
4
  import { AsyncPipe, TitleCasePipe } from '@angular/common';
5
5
  import * as i3 from '@ngx-translate/core';
@@ -8,6 +8,7 @@ import * as i2 from '@eui/ecl/components/ecl-button';
8
8
  import { EUI_ECL_BUTTON } from '@eui/ecl/components/ecl-button';
9
9
  import * as i1 from '@eui/ecl/components/ecl-icon';
10
10
  import { EUI_ECL_ICON } from '@eui/ecl/components/ecl-icon';
11
+ import { EclLinkDirective } from '@eui/ecl/components/ecl-link';
11
12
 
12
13
  /**
13
14
  * Event emitted when the notification is closed.
@@ -17,6 +18,80 @@ import { EUI_ECL_ICON } from '@eui/ecl/components/ecl-icon';
17
18
  class EclNotificationCloseEvent extends EclBaseEvent {
18
19
  }
19
20
 
21
+ /**
22
+ * Directive applied to a notification title element.
23
+ * Adds the appropriate ECL class for styling the notification title.
24
+ */
25
+ class EclNotificationTitleDirective extends ECLBaseDirective {
26
+ /**
27
+ * Host binding for applying the ECL notification title CSS class.
28
+ */
29
+ get cssClasses() {
30
+ return [super.getCssClasses('ecl-notification__title')].join(' ').trim();
31
+ }
32
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: EclNotificationTitleDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
33
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.3", type: EclNotificationTitleDirective, isStandalone: true, selector: "[eclNotificationTitle]", host: { properties: { "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0 }); }
34
+ }
35
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: EclNotificationTitleDirective, decorators: [{
36
+ type: Directive,
37
+ args: [{
38
+ selector: '[eclNotificationTitle]',
39
+ }]
40
+ }], propDecorators: { cssClasses: [{
41
+ type: HostBinding,
42
+ args: ['class']
43
+ }] } });
44
+ /**
45
+ * Directive that adds specific class for the notification icon. By default there are icons for all notification variants.
46
+ * This directive can be used, if user wants to use another icon.
47
+ */
48
+ class EclNotificationIconDirective {
49
+ constructor() {
50
+ /**
51
+ * Host binding for applying the ECL notification icon CSS class.
52
+ */
53
+ this.hasClass = true;
54
+ }
55
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: EclNotificationIconDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
56
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.3", type: EclNotificationIconDirective, isStandalone: true, selector: "[eclNotificationIcon]", host: { properties: { "class.ecl-notification__icon": "this.hasClass" } }, ngImport: i0 }); }
57
+ }
58
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: EclNotificationIconDirective, decorators: [{
59
+ type: Directive,
60
+ args: [{
61
+ selector: '[eclNotificationIcon]',
62
+ }]
63
+ }], propDecorators: { hasClass: [{
64
+ type: HostBinding,
65
+ args: ['class.ecl-notification__icon']
66
+ }] } });
67
+ /**
68
+ * Directive that adds specific class for the div around the notification link and the link itself.
69
+ */
70
+ class EclNotificationLinkDirective {
71
+ constructor() {
72
+ /**
73
+ * Host binding for applying the ECL notification link CSS class.
74
+ */
75
+ this.hasClass = true;
76
+ this.eclLinkItems = contentChildren(EclLinkDirective, ...(ngDevMode ? [{ debugName: "eclLinkItems" }] : []));
77
+ }
78
+ ngAfterContentInit() {
79
+ // Add required class for all the child eclLinks.
80
+ this.eclLinkItems().forEach(item => item.class = 'ecl-notification__link-item');
81
+ }
82
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: EclNotificationLinkDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
83
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "21.0.3", type: EclNotificationLinkDirective, isStandalone: true, selector: "[eclNotificationLink]", host: { properties: { "class.ecl-notification__link": "this.hasClass" } }, queries: [{ propertyName: "eclLinkItems", predicate: EclLinkDirective, isSignal: true }], ngImport: i0 }); }
84
+ }
85
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: EclNotificationLinkDirective, decorators: [{
86
+ type: Directive,
87
+ args: [{
88
+ selector: '[eclNotificationLink]',
89
+ }]
90
+ }], propDecorators: { hasClass: [{
91
+ type: HostBinding,
92
+ args: ['class.ecl-notification__link']
93
+ }], eclLinkItems: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => EclLinkDirective), { isSignal: true }] }] } });
94
+
20
95
  class EclNotificationComponent extends ECLBaseDirective {
21
96
  constructor() {
22
97
  super(...arguments);
@@ -46,6 +121,8 @@ class EclNotificationComponent extends ECLBaseDirective {
46
121
  * The ARIA role for the component. Set to "alert" by default.
47
122
  */
48
123
  this.role = 'alert';
124
+ this.notificationCustomIcon = contentChild(EclNotificationIconDirective, ...(ngDevMode ? [{ debugName: "notificationCustomIcon" }] : []));
125
+ this.hasCustomIcon = computed(() => this.notificationCustomIcon() !== undefined, ...(ngDevMode ? [{ debugName: "hasCustomIcon" }] : []));
49
126
  this.variantTitleIconMapping = new Map([
50
127
  ['info', { title: 'information', icon: 'information' }],
51
128
  ['success', { title: 'success', icon: 'check-filled' }],
@@ -95,10 +172,10 @@ class EclNotificationComponent extends ECLBaseDirective {
95
172
  this.isVisible = false;
96
173
  }
97
174
  }
98
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-rc.2", ngImport: i0, type: EclNotificationComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
99
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.0-rc.2", type: EclNotificationComponent, isStandalone: true, selector: "ecl-notification", inputs: { notificationTitle: "notificationTitle", variant: "variant", isVisible: ["isVisible", "isVisible", booleanAttribute], isCloseable: ["isCloseable", "isCloseable", booleanAttribute] }, outputs: { close: "close" }, host: { properties: { "attr.role": "this.role", "class.ecl-u-d-none": "this.isHidden", "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0, template: "@if( eclThemeService.isEC$ | async ){\n <ecl-icon size=\"l\" class=\"ecl-notification__icon\" [icon]=\"icon\" [title]=\"title | titlecase \"></ecl-icon>\n} @else {\n <ecl-icon size=\"m\" class=\"ecl-notification__icon\" [icon]=\"icon\" [title]=\"title | titlecase \"></ecl-icon>\n}\n\n<div class=\"ecl-notification__content\">\n @if(isCloseable){\n <button eclButton variant=\"tertiary\" class=\"ecl-notification__close ecl-button--neutral\" isIconOnly (click)=\"onCloseClick($event)\">\n <span eclButtonLabel>\n {{ 'ecl.common.CLOSE' | translate }}\n </span>\n <ecl-icon icon=\"close\" size=\"m\"></ecl-icon>\n </button>\n }\n\n <ng-content select=\"[eclNotificationTitle]\"></ng-content>\n <div class=\"ecl-notification__description\"><ng-content></ng-content></div>\n</div>\n", dependencies: [{ kind: "component", type: i1.EclIconComponent, selector: "ecl-icon", inputs: ["iconSet", "icon", "size", "color", "transform", "ariaLabelledby", "role", "title", "ariaHidden", "focusable", "isFlipHorizontal"] }, { kind: "component", type: i2.EclButtonComponent, selector: "button[eclButton], button[ecl-button], a[eclButton]", inputs: ["isIconOnly", "variant", "eclStyle", "size", "containerStyleClass"] }, { kind: "directive", type: i2.EclButtonLabelDirective, selector: "[eclButtonLabel]" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: TitleCasePipe, name: "titlecase" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] }); }
175
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: EclNotificationComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
176
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.3", type: EclNotificationComponent, isStandalone: true, selector: "ecl-notification", inputs: { notificationTitle: "notificationTitle", variant: "variant", isVisible: ["isVisible", "isVisible", booleanAttribute], isCloseable: ["isCloseable", "isCloseable", booleanAttribute] }, outputs: { close: "close" }, host: { properties: { "attr.role": "this.role", "class.ecl-u-d-none": "this.isHidden", "class": "this.cssClasses" } }, queries: [{ propertyName: "notificationCustomIcon", first: true, predicate: EclNotificationIconDirective, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "@if (!hasCustomIcon()) {\n@if( eclThemeService.isEC$ | async ){\n<ecl-icon size=\"l\" class=\"ecl-notification__icon\" [icon]=\"icon\" [title]=\"title | titlecase \"></ecl-icon>\n} @else {\n<ecl-icon size=\"m\" class=\"ecl-notification__icon\" [icon]=\"icon\" [title]=\"title | titlecase \"></ecl-icon>\n}\n} @else {\n<ng-content select=\"[eclNotificationIcon]\"></ng-content>\n}\n\n<div class=\"ecl-notification__content\">\n @if(isCloseable){\n <button eclButton variant=\"tertiary\" class=\"ecl-notification__close ecl-button--neutral\" isIconOnly\n (click)=\"onCloseClick($event)\">\n <span eclButtonLabel>\n {{ 'ecl.common.CLOSE' | translate }}\n </span>\n <ecl-icon icon=\"close\" size=\"m\"></ecl-icon>\n </button>\n }\n\n <ng-content select=\"[eclNotificationTitle]\"></ng-content>\n <div class=\"ecl-notification__description\"><ng-content></ng-content></div>\n</div>", dependencies: [{ kind: "component", type: i1.EclIconComponent, selector: "ecl-icon", inputs: ["iconSet", "icon", "size", "color", "transform", "ariaLabelledby", "role", "title", "ariaHidden", "focusable", "isFlipHorizontal"] }, { kind: "component", type: i2.EclButtonComponent, selector: "button[eclButton], button[ecl-button], a[eclButton]", inputs: ["isIconOnly", "variant", "eclStyle", "size", "containerStyleClass"] }, { kind: "directive", type: i2.EclButtonLabelDirective, selector: "[eclButtonLabel]" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: TitleCasePipe, name: "titlecase" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] }); }
100
177
  }
101
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-rc.2", ngImport: i0, type: EclNotificationComponent, decorators: [{
178
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: EclNotificationComponent, decorators: [{
102
179
  type: Component,
103
180
  args: [{ selector: 'ecl-notification', imports: [
104
181
  AsyncPipe,
@@ -106,7 +183,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-rc.2", ng
106
183
  ...EUI_ECL_ICON,
107
184
  ...EUI_ECL_BUTTON,
108
185
  TranslateModule,
109
- ], template: "@if( eclThemeService.isEC$ | async ){\n <ecl-icon size=\"l\" class=\"ecl-notification__icon\" [icon]=\"icon\" [title]=\"title | titlecase \"></ecl-icon>\n} @else {\n <ecl-icon size=\"m\" class=\"ecl-notification__icon\" [icon]=\"icon\" [title]=\"title | titlecase \"></ecl-icon>\n}\n\n<div class=\"ecl-notification__content\">\n @if(isCloseable){\n <button eclButton variant=\"tertiary\" class=\"ecl-notification__close ecl-button--neutral\" isIconOnly (click)=\"onCloseClick($event)\">\n <span eclButtonLabel>\n {{ 'ecl.common.CLOSE' | translate }}\n </span>\n <ecl-icon icon=\"close\" size=\"m\"></ecl-icon>\n </button>\n }\n\n <ng-content select=\"[eclNotificationTitle]\"></ng-content>\n <div class=\"ecl-notification__description\"><ng-content></ng-content></div>\n</div>\n" }]
186
+ ], template: "@if (!hasCustomIcon()) {\n@if( eclThemeService.isEC$ | async ){\n<ecl-icon size=\"l\" class=\"ecl-notification__icon\" [icon]=\"icon\" [title]=\"title | titlecase \"></ecl-icon>\n} @else {\n<ecl-icon size=\"m\" class=\"ecl-notification__icon\" [icon]=\"icon\" [title]=\"title | titlecase \"></ecl-icon>\n}\n} @else {\n<ng-content select=\"[eclNotificationIcon]\"></ng-content>\n}\n\n<div class=\"ecl-notification__content\">\n @if(isCloseable){\n <button eclButton variant=\"tertiary\" class=\"ecl-notification__close ecl-button--neutral\" isIconOnly\n (click)=\"onCloseClick($event)\">\n <span eclButtonLabel>\n {{ 'ecl.common.CLOSE' | translate }}\n </span>\n <ecl-icon icon=\"close\" size=\"m\"></ecl-icon>\n </button>\n }\n\n <ng-content select=\"[eclNotificationTitle]\"></ng-content>\n <div class=\"ecl-notification__description\"><ng-content></ng-content></div>\n</div>" }]
110
187
  }], propDecorators: { notificationTitle: [{
111
188
  type: Input
112
189
  }], variant: [{
@@ -122,7 +199,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-rc.2", ng
122
199
  }], role: [{
123
200
  type: HostBinding,
124
201
  args: ['attr.role']
125
- }], isHidden: [{
202
+ }], notificationCustomIcon: [{ type: i0.ContentChild, args: [i0.forwardRef(() => EclNotificationIconDirective), { isSignal: true }] }], isHidden: [{
126
203
  type: HostBinding,
127
204
  args: ['class.ecl-u-d-none']
128
205
  }], cssClasses: [{
@@ -130,57 +207,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-rc.2", ng
130
207
  args: ['class']
131
208
  }] } });
132
209
 
133
- /**
134
- * Directive applied to a notification title element.
135
- * Adds the appropriate ECL class for styling the notification title.
136
- */
137
- class EclNotificationTitleDirective extends ECLBaseDirective {
138
- /**
139
- * Host binding for applying the ECL notification title CSS class.
140
- */
141
- get cssClasses() {
142
- return [super.getCssClasses('ecl-notification__title')].join(' ').trim();
143
- }
144
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-rc.2", ngImport: i0, type: EclNotificationTitleDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
145
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.0-rc.2", type: EclNotificationTitleDirective, isStandalone: true, selector: "[eclNotificationTitle]", host: { properties: { "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0 }); }
146
- }
147
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-rc.2", ngImport: i0, type: EclNotificationTitleDirective, decorators: [{
148
- type: Directive,
149
- args: [{
150
- selector: '[eclNotificationTitle]',
151
- }]
152
- }], propDecorators: { cssClasses: [{
153
- type: HostBinding,
154
- args: ['class']
155
- }] } });
156
-
157
- /**
158
- * @description
159
- * Module that provides the EclNotification component and its dependencies.
160
- *
161
- * @deprecated Use {@link EUI_ECL_NOTIFICATION} instead.
162
- */
163
- class EclNotificationModule {
164
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.0-rc.2", ngImport: i0, type: EclNotificationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
165
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.0-rc.2", ngImport: i0, type: EclNotificationModule, imports: [EclNotificationComponent, EclNotificationTitleDirective], exports: [EclNotificationComponent, EclNotificationTitleDirective] }); }
166
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.0-rc.2", ngImport: i0, type: EclNotificationModule, imports: [EclNotificationComponent] }); }
167
- }
168
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.0-rc.2", ngImport: i0, type: EclNotificationModule, decorators: [{
169
- type: NgModule,
170
- args: [{
171
- imports: [EclNotificationComponent, EclNotificationTitleDirective],
172
- exports: [EclNotificationComponent, EclNotificationTitleDirective],
173
- }]
174
- }] });
175
-
176
210
  const EUI_ECL_NOTIFICATION = [
177
211
  EclNotificationComponent,
178
212
  EclNotificationTitleDirective,
213
+ EclNotificationIconDirective,
214
+ EclNotificationLinkDirective,
179
215
  ];
180
216
 
181
217
  /**
182
218
  * Generated bundle index. Do not edit.
183
219
  */
184
220
 
185
- export { EUI_ECL_NOTIFICATION, EclNotificationCloseEvent, EclNotificationComponent, EclNotificationModule, EclNotificationTitleDirective };
221
+ export { EUI_ECL_NOTIFICATION, EclNotificationCloseEvent, EclNotificationComponent, EclNotificationIconDirective, EclNotificationLinkDirective, EclNotificationTitleDirective };
186
222
  //# sourceMappingURL=eui-ecl-components-ecl-notification.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"eui-ecl-components-ecl-notification.mjs","sources":["../../components/ecl-notification/events/ecl-notification-close.event.ts","../../components/ecl-notification/ecl-notification.component.ts","../../components/ecl-notification/ecl-notification.component.html","../../components/ecl-notification/ecl-notification-title.directive.ts","../../components/ecl-notification/ecl-notification.module.ts","../../components/ecl-notification/index.ts","../../components/ecl-notification/eui-ecl-components-ecl-notification.ts"],"sourcesContent":["import { EclBaseEvent } from '@eui/ecl/core';\n\n/**\n * Event emitted when the notification is closed.\n *\n * Can be used to prevent default close behavior by calling `event.preventDefault()`.\n */\nexport class EclNotificationCloseEvent extends EclBaseEvent {\n}\n","import { Component, Input, Output, EventEmitter, HostBinding, booleanAttribute, inject } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclThemeService } from '@eui/ecl/core';\nimport { EclNotificationCloseEvent } from './events/ecl-notification-close.event';\nimport { AsyncPipe, TitleCasePipe } from '@angular/common';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { EUI_ECL_BUTTON } from '@eui/ecl/components/ecl-button';\nimport { EUI_ECL_ICON } from '@eui/ecl/components/ecl-icon';\n\n@Component({\n selector: 'ecl-notification',\n templateUrl: './ecl-notification.component.html',\n imports: [\n AsyncPipe,\n TitleCasePipe,\n ...EUI_ECL_ICON,\n ...EUI_ECL_BUTTON,\n TranslateModule,\n ],\n})\nexport class EclNotificationComponent extends ECLBaseDirective {\n eclThemeService = inject(EclThemeService);\n\n /**\n * The title of the notification. This is displayed inside the component.\n */\n @Input() notificationTitle: string;\n\n /**\n * Defines the visual style of the notification.\n * Can be one of: 'info' | 'success' | 'warning' | 'error'.\n * Default is 'info'.\n */\n @Input() variant: 'info' | 'success' | 'warning' | 'error' = 'info';\n\n /**\n * Controls the visibility of the notification.\n * When false, the component is hidden using CSS utility class.\n */\n @Input({ transform: booleanAttribute }) isVisible = true;\n\n /**\n * Indicates whether the close button is displayed.\n */\n @Input({ transform: booleanAttribute }) isCloseable = true;\n\n /**\n * Emits an event when the close button is clicked.\n * Consumers can call `preventDefault()` on the emitted event to prevent the notification from closing.\n */\n // eslint-disable-next-line @angular-eslint/no-output-native\n @Output() close = new EventEmitter<EclNotificationCloseEvent>();\n\n /**\n * The ARIA role for the component. Set to \"alert\" by default.\n */\n @HostBinding('attr.role')\n role = 'alert';\n\n private variantTitleIconMapping = new Map<string, { title: string, icon: string }>([\n ['info', { title: 'information', icon: 'information' }],\n ['success', { title: 'success', icon: 'check-filled' }],\n ['warning', { title: 'warning', icon: 'warning' }],\n ['error', { title: 'error', icon: 'error' }],\n ]);\n\n /**\n * Applies the `ecl-u-d-none` utility class when the notification is not visible.\n */\n @HostBinding('class.ecl-u-d-none')\n get isHidden(): boolean {\n return !this.isVisible;\n }\n\n /**\n * Computes the CSS classes applied to the host element, including the modifier for the current variant.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-notification'), this.variant ? `ecl-notification--${this.variant}` : ''].join(' ').trim();\n }\n\n /**\n * Returns the default title text based on the current variant.\n */\n get title(): string {\n return this.titleAndIconBaseOnVariant.title;\n }\n\n /**\n * Returns the icon name based on the current variant.\n */\n get icon(): string {\n return this.titleAndIconBaseOnVariant.icon;\n }\n\n /**\n * Returns a mapping of title and icon based on the current variant.\n */\n get titleAndIconBaseOnVariant(): { title: string, icon: string } {\n return this.variantTitleIconMapping.get(this.variant) || { title: 'information', icon: 'information' };\n }\n\n /**\n * Handles the click event on the close button.\n * Emits a `close` event with an instance of `EclNotificationCloseEvent`.\n * If the event is not prevented, the notification is hidden.\n */\n onCloseClick(evt: Event): void {\n const event = new EclNotificationCloseEvent();\n this.close.next(event);\n if (!event.defaultPrevented) {\n this.isVisible = false;\n }\n }\n}\n","@if( eclThemeService.isEC$ | async ){\n <ecl-icon size=\"l\" class=\"ecl-notification__icon\" [icon]=\"icon\" [title]=\"title | titlecase \"></ecl-icon>\n} @else {\n <ecl-icon size=\"m\" class=\"ecl-notification__icon\" [icon]=\"icon\" [title]=\"title | titlecase \"></ecl-icon>\n}\n\n<div class=\"ecl-notification__content\">\n @if(isCloseable){\n <button eclButton variant=\"tertiary\" class=\"ecl-notification__close ecl-button--neutral\" isIconOnly (click)=\"onCloseClick($event)\">\n <span eclButtonLabel>\n {{ 'ecl.common.CLOSE' | translate }}\n </span>\n <ecl-icon icon=\"close\" size=\"m\"></ecl-icon>\n </button>\n }\n\n <ng-content select=\"[eclNotificationTitle]\"></ng-content>\n <div class=\"ecl-notification__description\"><ng-content></ng-content></div>\n</div>\n","import { Directive, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive applied to a notification title element.\n * Adds the appropriate ECL class for styling the notification title.\n */\n@Directive({\n selector: '[eclNotificationTitle]',\n})\nexport class EclNotificationTitleDirective extends ECLBaseDirective {\n /**\n * Host binding for applying the ECL notification title CSS class.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-notification__title')].join(' ').trim();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { EclNotificationComponent } from './ecl-notification.component';\nimport { EclNotificationTitleDirective } from './ecl-notification-title.directive';\n\n/**\n * @description\n * Module that provides the EclNotification component and its dependencies.\n *\n * @deprecated Use {@link EUI_ECL_NOTIFICATION} instead.\n */\n@NgModule({\n imports: [EclNotificationComponent, EclNotificationTitleDirective],\n exports: [EclNotificationComponent, EclNotificationTitleDirective],\n})\nexport class EclNotificationModule {}\n","import { EclNotificationComponent } from './ecl-notification.component';\nimport { EclNotificationTitleDirective } from './ecl-notification-title.directive';\n\nexport * from './ecl-notification.module';\nexport * from './ecl-notification.component';\nexport * from './ecl-notification-title.directive';\nexport * from './events/ecl-notification-close.event';\n\nexport const EUI_ECL_NOTIFICATION = [\n EclNotificationComponent,\n EclNotificationTitleDirective,\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-notification.mjs","sources":["../../components/ecl-notification/events/ecl-notification-close.event.ts","../../components/ecl-notification/ecl-notification-title.directive.ts","../../components/ecl-notification/ecl-notification.component.ts","../../components/ecl-notification/ecl-notification.component.html","../../components/ecl-notification/index.ts","../../components/ecl-notification/eui-ecl-components-ecl-notification.ts"],"sourcesContent":["import { EclBaseEvent } from '@eui/ecl/core';\n\n/**\n * Event emitted when the notification is closed.\n *\n * Can be used to prevent default close behavior by calling `event.preventDefault()`.\n */\nexport class EclNotificationCloseEvent extends EclBaseEvent {\n}\n","import { AfterContentInit, contentChildren, Directive, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclLinkDirective } from '@eui/ecl/components/ecl-link';\n\n/**\n * Directive applied to a notification title element.\n * Adds the appropriate ECL class for styling the notification title.\n */\n@Directive({\n selector: '[eclNotificationTitle]',\n})\nexport class EclNotificationTitleDirective extends ECLBaseDirective {\n /**\n * Host binding for applying the ECL notification title CSS class.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-notification__title')].join(' ').trim();\n }\n}\n\n/**\n * Directive that adds specific class for the notification icon. By default there are icons for all notification variants.\n * This directive can be used, if user wants to use another icon.\n */\n@Directive({\n selector: '[eclNotificationIcon]',\n})\nexport class EclNotificationIconDirective {\n /**\n * Host binding for applying the ECL notification icon CSS class.\n */\n @HostBinding('class.ecl-notification__icon') hasClass = true;\n}\n\n/**\n * Directive that adds specific class for the div around the notification link and the link itself.\n */\n@Directive({\n selector: '[eclNotificationLink]',\n})\nexport class EclNotificationLinkDirective implements AfterContentInit {\n /**\n * Host binding for applying the ECL notification link CSS class.\n */\n @HostBinding('class.ecl-notification__link') hasClass = true;\n\n eclLinkItems = contentChildren(EclLinkDirective);\n\n ngAfterContentInit(): void {\n // Add required class for all the child eclLinks.\n this.eclLinkItems().forEach(item => item.class = 'ecl-notification__link-item');\n }\n}\n","import { Component, Input, Output, EventEmitter, HostBinding, booleanAttribute, inject, contentChild, computed } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclThemeService } from '@eui/ecl/core';\nimport { EclNotificationCloseEvent } from './events/ecl-notification-close.event';\nimport { AsyncPipe, TitleCasePipe } from '@angular/common';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { EUI_ECL_BUTTON } from '@eui/ecl/components/ecl-button';\nimport { EUI_ECL_ICON } from '@eui/ecl/components/ecl-icon';\nimport { EclNotificationIconDirective } from './ecl-notification-title.directive';\n\n@Component({\n selector: 'ecl-notification',\n templateUrl: './ecl-notification.component.html',\n imports: [\n AsyncPipe,\n TitleCasePipe,\n ...EUI_ECL_ICON,\n ...EUI_ECL_BUTTON,\n TranslateModule,\n ],\n})\nexport class EclNotificationComponent extends ECLBaseDirective {\n eclThemeService = inject(EclThemeService);\n\n /**\n * The title of the notification. This is displayed inside the component.\n */\n @Input() notificationTitle: string;\n\n /**\n * Defines the visual style of the notification.\n * Can be one of: 'info' | 'success' | 'warning' | 'error'.\n * Default is 'info'.\n */\n @Input() variant: 'info' | 'success' | 'warning' | 'error' = 'info';\n\n /**\n * Controls the visibility of the notification.\n * When false, the component is hidden using CSS utility class.\n */\n @Input({ transform: booleanAttribute }) isVisible = true;\n\n /**\n * Indicates whether the close button is displayed.\n */\n @Input({ transform: booleanAttribute }) isCloseable = true;\n\n /**\n * Emits an event when the close button is clicked.\n * Consumers can call `preventDefault()` on the emitted event to prevent the notification from closing.\n */\n // eslint-disable-next-line @angular-eslint/no-output-native\n @Output() close = new EventEmitter<EclNotificationCloseEvent>();\n\n /**\n * The ARIA role for the component. Set to \"alert\" by default.\n */\n @HostBinding('attr.role') role = 'alert';\n\n notificationCustomIcon = contentChild(EclNotificationIconDirective);\n readonly hasCustomIcon = computed(() => this.notificationCustomIcon() !== undefined);\n\n private variantTitleIconMapping = new Map<string, { title: string, icon: string }>([\n ['info', { title: 'information', icon: 'information' }],\n ['success', { title: 'success', icon: 'check-filled' }],\n ['warning', { title: 'warning', icon: 'warning' }],\n ['error', { title: 'error', icon: 'error' }],\n ]);\n\n /**\n * Applies the `ecl-u-d-none` utility class when the notification is not visible.\n */\n @HostBinding('class.ecl-u-d-none')\n get isHidden(): boolean {\n return !this.isVisible;\n }\n\n /**\n * Computes the CSS classes applied to the host element, including the modifier for the current variant.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [super.getCssClasses('ecl-notification'), this.variant ? `ecl-notification--${this.variant}` : ''].join(' ').trim();\n }\n\n /**\n * Returns the default title text based on the current variant.\n */\n get title(): string {\n return this.titleAndIconBaseOnVariant.title;\n }\n\n /**\n * Returns the icon name based on the current variant.\n */\n get icon(): string {\n return this.titleAndIconBaseOnVariant.icon;\n }\n\n /**\n * Returns a mapping of title and icon based on the current variant.\n */\n get titleAndIconBaseOnVariant(): { title: string, icon: string } {\n return this.variantTitleIconMapping.get(this.variant) || { title: 'information', icon: 'information' };\n }\n\n /**\n * Handles the click event on the close button.\n * Emits a `close` event with an instance of `EclNotificationCloseEvent`.\n * If the event is not prevented, the notification is hidden.\n */\n onCloseClick(evt: Event): void {\n const event = new EclNotificationCloseEvent();\n this.close.next(event);\n if (!event.defaultPrevented) {\n this.isVisible = false;\n }\n }\n}\n","@if (!hasCustomIcon()) {\n@if( eclThemeService.isEC$ | async ){\n<ecl-icon size=\"l\" class=\"ecl-notification__icon\" [icon]=\"icon\" [title]=\"title | titlecase \"></ecl-icon>\n} @else {\n<ecl-icon size=\"m\" class=\"ecl-notification__icon\" [icon]=\"icon\" [title]=\"title | titlecase \"></ecl-icon>\n}\n} @else {\n<ng-content select=\"[eclNotificationIcon]\"></ng-content>\n}\n\n<div class=\"ecl-notification__content\">\n @if(isCloseable){\n <button eclButton variant=\"tertiary\" class=\"ecl-notification__close ecl-button--neutral\" isIconOnly\n (click)=\"onCloseClick($event)\">\n <span eclButtonLabel>\n {{ 'ecl.common.CLOSE' | translate }}\n </span>\n <ecl-icon icon=\"close\" size=\"m\"></ecl-icon>\n </button>\n }\n\n <ng-content select=\"[eclNotificationTitle]\"></ng-content>\n <div class=\"ecl-notification__description\"><ng-content></ng-content></div>\n</div>","import { EclNotificationComponent } from './ecl-notification.component';\nimport { EclNotificationIconDirective, EclNotificationLinkDirective, EclNotificationTitleDirective } from './ecl-notification-title.directive';\n\nexport * from './ecl-notification.component';\nexport * from './ecl-notification-title.directive';\nexport * from './events/ecl-notification-close.event';\n\nexport const EUI_ECL_NOTIFICATION = [\n EclNotificationComponent,\n EclNotificationTitleDirective,\n EclNotificationIconDirective,\n EclNotificationLinkDirective,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}