@eui/ecl 23.0.0-alpha.6 → 23.0.0-alpha.7

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 (215) hide show
  1. package/docs/changelog.html +41 -0
  2. package/docs/classes/EclLanguageService.html +8 -8
  3. package/docs/components/EclBannerComponent.html +28 -56
  4. package/docs/components/EclCardComponent.html +12 -24
  5. package/docs/components/EclCarouselComponent.html +33 -65
  6. package/docs/components/EclCarouselItemComponent.html +4 -8
  7. package/docs/components/EclCategoryFilterComponent.html +4 -8
  8. package/docs/components/EclCategoryFilterItemComponent.html +5 -9
  9. package/docs/components/EclCategoryFilterListComponent.html +5 -9
  10. package/docs/components/EclContentItemComponent.html +20 -40
  11. package/docs/components/EclFactFiguresItemComponent.html +4 -8
  12. package/docs/components/EclFactFiguresViewAllComponent.html +4 -8
  13. package/docs/components/EclFeaturedItemComponent.html +4 -10
  14. package/docs/components/EclFileComponent.html +4 -8
  15. package/docs/components/EclFileItemsComponent.html +4 -8
  16. package/docs/components/EclFormGroupComponent.html +4 -8
  17. package/docs/components/EclGalleryComponent.html +21 -41
  18. package/docs/components/EclGalleryItemComponent.html +8 -16
  19. package/docs/components/EclIconComponent.html +4 -8
  20. package/docs/components/EclInpageNavigationComponent.html +20 -40
  21. package/docs/components/EclInpageNavigationItemComponent.html +4 -8
  22. package/docs/components/EclListIllustrationComponent.html +4 -8
  23. package/docs/components/EclListIllustrationItemComponent.html +9 -17
  24. package/docs/components/EclMediaContainerComponent.html +21 -41
  25. package/docs/components/EclMegaMenuComponent.html +4 -8
  26. package/docs/components/EclMegaMenuFeaturedComponent.html +12 -24
  27. package/docs/components/EclMegaMenuInfoComponent.html +4 -8
  28. package/docs/components/EclMegaMenuItemComponent.html +37 -73
  29. package/docs/components/EclMegaMenuSubitemComponent.html +21 -43
  30. package/docs/components/EclMenuComponent.html +20 -40
  31. package/docs/components/EclMenuItemComponent.html +12 -24
  32. package/docs/components/EclMenuMegaItemComponent.html +12 -24
  33. package/docs/components/EclModalComponent.html +1 -1
  34. package/docs/components/EclMultiselectComponent.html +4 -8
  35. package/docs/components/EclMultiselectDropdownComponent.html +21 -41
  36. package/docs/components/EclMultiselectInputComponent.html +4 -8
  37. package/docs/components/EclMultiselectOptionComponent.html +4 -8
  38. package/docs/components/EclNavigationListComponent.html +4 -8
  39. package/docs/components/EclNavigationListItemComponent.html +4 -8
  40. package/docs/components/EclNewsTickerComponent.html +28 -48
  41. package/docs/components/EclNewsTickerItemComponent.html +4 -8
  42. package/docs/components/EclPageHeaderComponent.html +8 -16
  43. package/docs/components/EclPaginationComponent.html +4 -8
  44. package/docs/components/EclPopoverComponent.html +12 -24
  45. package/docs/components/EclSiteHeaderComponent.html +44 -88
  46. package/docs/components/EclSiteHeaderCustomActionComponent.html +8 -16
  47. package/docs/components/EclSiteHeaderLanguageComponent.html +10 -18
  48. package/docs/components/EclSiteHeaderLanguagePopoverComponent.html +6 -10
  49. package/docs/components/EclSiteHeaderLoginComponent.html +4 -8
  50. package/docs/components/EclSiteHeaderSearchComponent.html +4 -8
  51. package/docs/components/EclTabComponent.html +12 -24
  52. package/docs/components/EclTabsComponent.html +29 -57
  53. package/docs/components/EclTimelineComponent.html +4 -8
  54. package/docs/components/EclTimelineItemComponent.html +16 -32
  55. package/docs/directives/EclCheckboxDirective.html +16 -32
  56. package/docs/directives/EclDescriptionListDirective.html +4 -8
  57. package/docs/directives/EclGalleryMediaDirective.html +2 -2
  58. package/docs/directives/EclGalleryPictureDirective.html +1 -1
  59. package/docs/directives/EclListIllustrationPictureDirective.html +4 -8
  60. package/docs/directives/EclMediaContainerItemDirective.html +4 -8
  61. package/docs/directives/EclMegaMenuSublistDirective.html +8 -16
  62. package/docs/directives/EclMultiselectOptionDirective.html +4 -8
  63. package/docs/directives/EclPageHeaderMetaItemDirective.html +9 -0
  64. package/docs/directives/EclRadioDirective.html +8 -16
  65. package/docs/directives/EclSocialMediaFollowLinkDirective.html +4 -8
  66. package/docs/directives/EclTableDirective.html +4 -8
  67. package/docs/directives/EclTableHeadDirective.html +4 -8
  68. package/docs/injectables/EclDefaultLanguageService.html +7 -7
  69. package/docs/injectables/EclMegaMenuService.html +2 -2
  70. package/docs/interfaces/EclMegaMenuItem.html +2 -2
  71. package/docs/interfaces/EclMenuItem.html +2 -2
  72. package/docs/js/search/search_index.js +2 -2
  73. package/docs/json/EclMegaMenuItemComponent.md +1 -1
  74. package/docs/json/EclMegaMenuSubitemComponent.md +1 -1
  75. package/docs/json/EclSiteHeaderLanguagePopoverComponent.md +2 -2
  76. package/docs/json/documentation.json +1365 -2133
  77. package/docs/llms.txt +182 -182
  78. package/docs/miscellaneous/variables.html +16 -16
  79. package/docs/properties.html +1 -1
  80. package/fesm2022/eui-ecl-components-ecl-banner.mjs +37 -40
  81. package/fesm2022/eui-ecl-components-ecl-banner.mjs.map +1 -1
  82. package/fesm2022/eui-ecl-components-ecl-card.mjs +23 -17
  83. package/fesm2022/eui-ecl-components-ecl-card.mjs.map +1 -1
  84. package/fesm2022/eui-ecl-components-ecl-carousel.mjs +105 -82
  85. package/fesm2022/eui-ecl-components-ecl-carousel.mjs.map +1 -1
  86. package/fesm2022/eui-ecl-components-ecl-category-filter.mjs +36 -29
  87. package/fesm2022/eui-ecl-components-ecl-category-filter.mjs.map +1 -1
  88. package/fesm2022/eui-ecl-components-ecl-checkbox.mjs +30 -20
  89. package/fesm2022/eui-ecl-components-ecl-checkbox.mjs.map +1 -1
  90. package/fesm2022/eui-ecl-components-ecl-content-item.mjs +46 -27
  91. package/fesm2022/eui-ecl-components-ecl-content-item.mjs.map +1 -1
  92. package/fesm2022/eui-ecl-components-ecl-date-picker.mjs.map +1 -1
  93. package/fesm2022/eui-ecl-components-ecl-fact-figures.mjs +25 -15
  94. package/fesm2022/eui-ecl-components-ecl-fact-figures.mjs.map +1 -1
  95. package/fesm2022/eui-ecl-components-ecl-featured.mjs +10 -9
  96. package/fesm2022/eui-ecl-components-ecl-featured.mjs.map +1 -1
  97. package/fesm2022/eui-ecl-components-ecl-file.mjs +17 -13
  98. package/fesm2022/eui-ecl-components-ecl-file.mjs.map +1 -1
  99. package/fesm2022/eui-ecl-components-ecl-form-group.mjs +12 -7
  100. package/fesm2022/eui-ecl-components-ecl-form-group.mjs.map +1 -1
  101. package/fesm2022/eui-ecl-components-ecl-gallery.mjs +44 -49
  102. package/fesm2022/eui-ecl-components-ecl-gallery.mjs.map +1 -1
  103. package/fesm2022/eui-ecl-components-ecl-icon.mjs +7 -8
  104. package/fesm2022/eui-ecl-components-ecl-icon.mjs.map +1 -1
  105. package/fesm2022/eui-ecl-components-ecl-inpage-navigation.mjs +48 -50
  106. package/fesm2022/eui-ecl-components-ecl-inpage-navigation.mjs.map +1 -1
  107. package/fesm2022/eui-ecl-components-ecl-link.mjs.map +1 -1
  108. package/fesm2022/eui-ecl-components-ecl-list-illustration.mjs +19 -24
  109. package/fesm2022/eui-ecl-components-ecl-list-illustration.mjs.map +1 -1
  110. package/fesm2022/eui-ecl-components-ecl-list.mjs +6 -7
  111. package/fesm2022/eui-ecl-components-ecl-list.mjs.map +1 -1
  112. package/fesm2022/eui-ecl-components-ecl-loading-indicator.mjs.map +1 -1
  113. package/fesm2022/eui-ecl-components-ecl-media-container.mjs +31 -34
  114. package/fesm2022/eui-ecl-components-ecl-media-container.mjs.map +1 -1
  115. package/fesm2022/eui-ecl-components-ecl-mega-menu.mjs +237 -197
  116. package/fesm2022/eui-ecl-components-ecl-mega-menu.mjs.map +1 -1
  117. package/fesm2022/eui-ecl-components-ecl-menu.mjs +108 -86
  118. package/fesm2022/eui-ecl-components-ecl-menu.mjs.map +1 -1
  119. package/fesm2022/eui-ecl-components-ecl-modal.mjs +0 -1
  120. package/fesm2022/eui-ecl-components-ecl-modal.mjs.map +1 -1
  121. package/fesm2022/eui-ecl-components-ecl-multiselect.mjs +70 -67
  122. package/fesm2022/eui-ecl-components-ecl-multiselect.mjs.map +1 -1
  123. package/fesm2022/eui-ecl-components-ecl-navigation-list.mjs +16 -14
  124. package/fesm2022/eui-ecl-components-ecl-navigation-list.mjs.map +1 -1
  125. package/fesm2022/eui-ecl-components-ecl-news-ticker.mjs +67 -51
  126. package/fesm2022/eui-ecl-components-ecl-news-ticker.mjs.map +1 -1
  127. package/fesm2022/eui-ecl-components-ecl-page-header.mjs +17 -12
  128. package/fesm2022/eui-ecl-components-ecl-page-header.mjs.map +1 -1
  129. package/fesm2022/eui-ecl-components-ecl-pagination.mjs +9 -7
  130. package/fesm2022/eui-ecl-components-ecl-pagination.mjs.map +1 -1
  131. package/fesm2022/eui-ecl-components-ecl-popover.mjs +44 -38
  132. package/fesm2022/eui-ecl-components-ecl-popover.mjs.map +1 -1
  133. package/fesm2022/eui-ecl-components-ecl-radio.mjs +22 -14
  134. package/fesm2022/eui-ecl-components-ecl-radio.mjs.map +1 -1
  135. package/fesm2022/eui-ecl-components-ecl-site-footer.mjs +1 -1
  136. package/fesm2022/eui-ecl-components-ecl-site-footer.mjs.map +1 -1
  137. package/fesm2022/eui-ecl-components-ecl-site-header.mjs +123 -118
  138. package/fesm2022/eui-ecl-components-ecl-site-header.mjs.map +1 -1
  139. package/fesm2022/eui-ecl-components-ecl-slogan-ticker.mjs +2 -2
  140. package/fesm2022/eui-ecl-components-ecl-slogan-ticker.mjs.map +1 -1
  141. package/fesm2022/eui-ecl-components-ecl-social-media-follow.mjs +10 -8
  142. package/fesm2022/eui-ecl-components-ecl-social-media-follow.mjs.map +1 -1
  143. package/fesm2022/eui-ecl-components-ecl-table.mjs +17 -15
  144. package/fesm2022/eui-ecl-components-ecl-table.mjs.map +1 -1
  145. package/fesm2022/eui-ecl-components-ecl-tabs.mjs +101 -81
  146. package/fesm2022/eui-ecl-components-ecl-tabs.mjs.map +1 -1
  147. package/fesm2022/eui-ecl-components-ecl-timeline.mjs +47 -37
  148. package/fesm2022/eui-ecl-components-ecl-timeline.mjs.map +1 -1
  149. package/fesm2022/eui-ecl-components-ecl-tooltip.mjs.map +1 -1
  150. package/fesm2022/eui-ecl-core.mjs +1 -1
  151. package/fesm2022/eui-ecl-core.mjs.map +1 -1
  152. package/package.json +1 -1
  153. package/types/eui-ecl-components-ecl-banner.d.ts +42 -43
  154. package/types/eui-ecl-components-ecl-banner.d.ts.map +1 -1
  155. package/types/eui-ecl-components-ecl-card.d.ts +34 -35
  156. package/types/eui-ecl-components-ecl-card.d.ts.map +1 -1
  157. package/types/eui-ecl-components-ecl-carousel.d.ts +10 -11
  158. package/types/eui-ecl-components-ecl-carousel.d.ts.map +1 -1
  159. package/types/eui-ecl-components-ecl-category-filter.d.ts +6 -6
  160. package/types/eui-ecl-components-ecl-category-filter.d.ts.map +1 -1
  161. package/types/eui-ecl-components-ecl-checkbox.d.ts +47 -49
  162. package/types/eui-ecl-components-ecl-checkbox.d.ts.map +1 -1
  163. package/types/eui-ecl-components-ecl-content-item.d.ts +16 -18
  164. package/types/eui-ecl-components-ecl-content-item.d.ts.map +1 -1
  165. package/types/eui-ecl-components-ecl-fact-figures.d.ts +3 -3
  166. package/types/eui-ecl-components-ecl-fact-figures.d.ts.map +1 -1
  167. package/types/eui-ecl-components-ecl-featured.d.ts +2 -2
  168. package/types/eui-ecl-components-ecl-featured.d.ts.map +1 -1
  169. package/types/eui-ecl-components-ecl-file.d.ts +42 -43
  170. package/types/eui-ecl-components-ecl-file.d.ts.map +1 -1
  171. package/types/eui-ecl-components-ecl-form-group.d.ts +1 -3
  172. package/types/eui-ecl-components-ecl-form-group.d.ts.map +1 -1
  173. package/types/eui-ecl-components-ecl-gallery.d.ts +12 -12
  174. package/types/eui-ecl-components-ecl-gallery.d.ts.map +1 -1
  175. package/types/eui-ecl-components-ecl-icon.d.ts +1 -1
  176. package/types/eui-ecl-components-ecl-icon.d.ts.map +1 -1
  177. package/types/eui-ecl-components-ecl-inpage-navigation.d.ts +8 -8
  178. package/types/eui-ecl-components-ecl-inpage-navigation.d.ts.map +1 -1
  179. package/types/eui-ecl-components-ecl-list-illustration.d.ts +44 -44
  180. package/types/eui-ecl-components-ecl-list-illustration.d.ts.map +1 -1
  181. package/types/eui-ecl-components-ecl-list.d.ts +2 -2
  182. package/types/eui-ecl-components-ecl-list.d.ts.map +1 -1
  183. package/types/eui-ecl-components-ecl-media-container.d.ts +33 -33
  184. package/types/eui-ecl-components-ecl-media-container.d.ts.map +1 -1
  185. package/types/eui-ecl-components-ecl-mega-menu.d.ts +185 -191
  186. package/types/eui-ecl-components-ecl-mega-menu.d.ts.map +1 -1
  187. package/types/eui-ecl-components-ecl-menu.d.ts +126 -128
  188. package/types/eui-ecl-components-ecl-menu.d.ts.map +1 -1
  189. package/types/eui-ecl-components-ecl-modal.d.ts.map +1 -1
  190. package/types/eui-ecl-components-ecl-multiselect.d.ts +10 -10
  191. package/types/eui-ecl-components-ecl-multiselect.d.ts.map +1 -1
  192. package/types/eui-ecl-components-ecl-navigation-list.d.ts +3 -4
  193. package/types/eui-ecl-components-ecl-navigation-list.d.ts.map +1 -1
  194. package/types/eui-ecl-components-ecl-news-ticker.d.ts +18 -18
  195. package/types/eui-ecl-components-ecl-news-ticker.d.ts.map +1 -1
  196. package/types/eui-ecl-components-ecl-page-header.d.ts +3 -3
  197. package/types/eui-ecl-components-ecl-page-header.d.ts.map +1 -1
  198. package/types/eui-ecl-components-ecl-pagination.d.ts +1 -1
  199. package/types/eui-ecl-components-ecl-pagination.d.ts.map +1 -1
  200. package/types/eui-ecl-components-ecl-popover.d.ts +3 -3
  201. package/types/eui-ecl-components-ecl-popover.d.ts.map +1 -1
  202. package/types/eui-ecl-components-ecl-radio.d.ts +28 -28
  203. package/types/eui-ecl-components-ecl-radio.d.ts.map +1 -1
  204. package/types/eui-ecl-components-ecl-site-header.d.ts +48 -48
  205. package/types/eui-ecl-components-ecl-site-header.d.ts.map +1 -1
  206. package/types/eui-ecl-components-ecl-social-media-follow.d.ts +1 -1
  207. package/types/eui-ecl-components-ecl-social-media-follow.d.ts.map +1 -1
  208. package/types/eui-ecl-components-ecl-table.d.ts +3 -3
  209. package/types/eui-ecl-components-ecl-table.d.ts.map +1 -1
  210. package/types/eui-ecl-components-ecl-tabs.d.ts +12 -12
  211. package/types/eui-ecl-components-ecl-tabs.d.ts.map +1 -1
  212. package/types/eui-ecl-components-ecl-timeline.d.ts +27 -28
  213. package/types/eui-ecl-components-ecl-timeline.d.ts.map +1 -1
  214. package/types/eui-ecl-core.d.ts +11 -11
  215. package/types/eui-ecl-core.d.ts.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"eui-ecl-components-ecl-page-header.mjs","sources":["../../components/ecl-page-header/ecl-page-header-background.directive.ts","../../components/ecl-page-header/ecl-page-header-description.directive.ts","../../components/ecl-page-header/ecl-page-header-description/ecl-page-header-description.component.ts","../../components/ecl-page-header/ecl-page-header-description/ecl-page-header-description.component.html","../../components/ecl-page-header/ecl-page-header-expandable/ecl-page-header-expandable.component.ts","../../components/ecl-page-header/ecl-page-header-expandable/ecl-page-header-expandable.component.html","../../components/ecl-page-header/ecl-page-header-info.directive.ts","../../components/ecl-page-header/ecl-page-header-meta.directive.ts","../../components/ecl-page-header/ecl-page-header-next/ecl-page-header-next.component.ts","../../components/ecl-page-header/ecl-page-header-next/ecl-page-header-next.component.html","../../components/ecl-page-header/ecl-page-header-section-info/ecl-page-header-section-info.component.ts","../../components/ecl-page-header/ecl-page-header-section-info/ecl-page-header-section-info.component.html","../../components/ecl-page-header/ecl-page-header-section/ecl-page-header-section.component.ts","../../components/ecl-page-header/ecl-page-header-section/ecl-page-header-section.component.html","../../components/ecl-page-header/ecl-page-header-title.directive.ts","../../components/ecl-page-header/ecl-page-header.component.ts","../../components/ecl-page-header/ecl-page-header.component.html","../../components/ecl-page-header/index.ts","../../components/ecl-page-header/eui-ecl-components-ecl-page-header.ts"],"sourcesContent":["import { Directive, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Styles the background picture inside the page header.\n */\n@Directive({\n selector: '[eclPageHeaderBackgroundPicture]',\n})\nexport class EclPageHeaderBackgroundPictureDirective extends ECLBaseDirective {\n /**\n * Applies 'ecl-picture ecl-page-header__picture-background' classes to the host.\n *\n * @default 'ecl-picture ecl-page-header__picture-background'\n */\n @HostBinding('class') className = 'ecl-picture ecl-page-header__picture-background';\n}\n\n/**\n * Styles the background image inside the page header.\n */\n@Directive({\n selector: '[eclPageHeaderBackgroundImage]',\n})\nexport class EclPageHeaderBackgroundImageDirective extends ECLBaseDirective {\n /**\n * Applies 'ecl-page-header__background' class to the host.\n *\n * @default 'ecl-page-header__background'\n */\n @HostBinding('class') className = 'ecl-page-header__background';\n}\n","import { Directive, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n// /**\n// * Styles the container for the page header description.\n// */\n// @Directive({\n// selector: '[eclPageHeaderDescriptionContainer]',\n// })\n// export class EclPageHeaderDescriptionContainerDirective extends ECLBaseDirective {\n// /**\n// * Applies 'ecl-page-header__description-container' class to the host.\n// *\n// * @default 'ecl-page-header__description-container'\n// */\n// @HostBinding('class') className = 'ecl-page-header__description-container';\n// }\n\n/**\n * Styles a picture used in the page header description.\n */\n@Directive({\n selector: '[eclPageHeaderDescriptionPicture]',\n})\nexport class EclPageHeaderDescriptionPictureDirective extends ECLBaseDirective {\n /**\n * Applies 'ecl-picture ecl-page-header__picture-thumbnail' classes to the host.\n *\n * @default 'ecl-picture ecl-page-header__picture-thumbnail'\n */\n @HostBinding('class') className = 'ecl-picture ecl-page-header__picture-thumbnail';\n}\n\n/**\n * Styles a thumbnail or image in the page header description.\n */\n@Directive({\n selector: '[eclPageHeaderDescriptionThumbnail], img[eclPageHeaderDescriptionImage]',\n})\nexport class EclPageHeaderDescriptionThumbnailDirective extends ECLBaseDirective {\n /**\n * Applies 'ecl-page-header__description-thumbnail' class to the host.\n *\n * @default 'ecl-page-header__description-thumbnail'\n */\n @HostBinding('class') className = 'ecl-page-header__description-thumbnail';\n}\n\n/**\n * Styles the text description in the page header.\n */\n@Directive({\n selector: 'p[eclPageHeaderDescription]',\n})\nexport class EclPageHeaderDescriptionDirective extends ECLBaseDirective {\n /**\n * Applies 'ecl-page-header__description' class to the host.\n *\n * @default 'ecl-page-header__description'\n */\n @HostBinding('class') className = 'ecl-page-header__description';\n}\n","import { NgTemplateOutlet } from '@angular/common';\nimport { Component, input } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n@Component({\n selector: 'div[eclPageHeaderDescriptionContainer]',\n templateUrl: './ecl-page-header-description.component.html',\n imports: [NgTemplateOutlet],\n host: {\n '[class]': '\"ecl-page-header__description-\" + position()',\n },\n})\nexport class EclPageHeaderDescriptionContainerComponent extends ECLBaseDirective {\n\n position = input<'top' | 'bottom'>('top');\n}\n","@if (position() === 'bottom') {\n<div class=\"ecl-container\">\n <div class=\"ecl-page-header__description-container\">\n <ng-container [ngTemplateOutlet]=\"content\"> </ng-container>\n </div>\n</div>\n} @else {\n<div class=\"ecl-page-header__description-container\">\n <ng-container [ngTemplateOutlet]=\"content\"> </ng-container>\n</div>\n}\n\n<ng-template #content>\n <ng-content></ng-content>\n</ng-template>","import { afterNextRender, Component, computed, ElementRef, HostBinding, OnDestroy, signal, viewChild } from '@angular/core';\nimport { EUI_ECL_BUTTON } from '@eui/ecl/components/ecl-button';\nimport { EUI_ECL_ICON } from '@eui/ecl/components/ecl-icon';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * ECL Page Header expandable component. As a part of the PageHeader,\n * it represents expandable content, placed at the top of the parent component.\n */\n@Component({\n selector: 'div[eclPageHeaderExpandable]',\n templateUrl: './ecl-page-header-expandable.component.html',\n imports: [...EUI_ECL_BUTTON, ...EUI_ECL_ICON],\n})\nexport class EclPageHeaderExpandableComponent extends ECLBaseDirective implements OnDestroy {\n /**\n * CSS classes applied to the host.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-page-header-expandable'),\n this.hasProjectedContent() ? '' : 'ecl-page-header-no-toggle']\n .join(' ')\n .trim();\n }\n\n panelId = crypto.randomUUID();\n isExpanded = signal(false);\n private readonly projectedSlot = viewChild<ElementRef<HTMLElement>>('projectedSlot');\n private readonly _hasProjectedContent = signal(false);\n readonly hasProjectedContent = computed(() => this._hasProjectedContent());\n\n private observer?: MutationObserver;\n\n constructor() {\n super();\n afterNextRender(() => {\n const el = this.projectedSlot()?.nativeElement;\n if (!el) return;\n\n const recompute = () => {\n // textContent covers both text-only and element content.\n // trim() ignores whitespace/newlines from formatting.\n this._hasProjectedContent.set((el.textContent ?? '').trim().length > 0);\n };\n\n recompute();\n\n // Optional but recommended if the projected content can change dynamically\n this.observer = new MutationObserver(recompute);\n this.observer.observe(el, {\n childList: true,\n subtree: true,\n characterData: true,\n });\n });\n }\n\n ngOnDestroy() {\n this.observer?.disconnect();\n }\n\n onExpandButtonClick(): void {\n this.isExpanded.set(!this.isExpanded());\n }\n}","<div class=\"ecl-page-header-expandable__header\">\n <div class=\"ecl-container ecl-page-header-expandable__container\">\n <ng-content select=\"[eclPageHeaderExpandableHeader]\"></ng-content>\n\n @if (hasProjectedContent()) {\n <button eclButton variant=\"tertiary\" eclStyle=\"neutral\" isIconOnly aria-expanded=\"{{isExpanded()}}\" type=\"submit\"\n [attr.aria-controls]=\"panelId\" class=\"ecl-page-header-expandable__toggle\" (click)=\"onExpandButtonClick()\">\n <span eclButtonLabel>expandable button</span>\n <ecl-icon icon=\"corner-arrow\" transform=\"flip-vertical\"></ecl-icon>\n </button>\n }\n </div>\n</div>\n<div class=\"ecl-page-header-expandable__panel\" id=\"{{panelId}}\" [hidden]=\"!isExpanded()\">\n <div class=\"ecl-container ecl-page-header-expandable__container\" #projectedSlot>\n <ng-content></ng-content>\n </div>\n</div>","import { Directive, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Styles the info section in the page header.\n */\n@Directive({\n selector: '[eclPageHeaderInfo]',\n})\nexport class EclPageHeaderInfoDirective extends ECLBaseDirective {\n /**\n * Applies 'ecl-page-header__info' class to the host.\n *\n * @default 'ecl-page-header__info'\n */\n @HostBinding('class') className = 'ecl-page-header__info';\n}\n\n\n@Directive({\n selector: '[eclPageHeaderContainer]',\n})\nexport class EclPageHeaderContainerDirective extends ECLBaseDirective {\n /**\n * Applies 'ecl-page-header__container' class to the host.\n *\n * @default 'ecl-page-header__container'\n */\n @HostBinding('class') className = 'ecl-page-header__container';\n}\n\n@Directive({\n selector: '[eclContainer]',\n})\nexport class EclContainerDirective extends ECLBaseDirective {\n /**\n * Applies 'ecl-container' class to the host.\n *\n * @default 'ecl-container'\n */\n @HostBinding('class') className = 'ecl-container';\n}\n","import { contentChild, Directive, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclIconComponent } from '@eui/ecl/components/ecl-icon';\n\n/**\n * Styles the meta section in the page header.\n */\n@Directive({\n selector: '[eclPageHeaderMeta]',\n})\nexport class EclPageHeaderMetaDirective extends ECLBaseDirective {\n /**\n * Applies 'ecl-page-header__meta' class to the host.\n *\n * @default 'ecl-page-header__meta'\n */\n @HostBinding('class') className = 'ecl-page-header__meta';\n}\n\n/**\n * Styles individual meta items in the page header.\n */\n@Directive({\n selector: '[eclPageHeaderMetaItem]',\n})\nexport class EclPageHeaderMetaItemDirective extends ECLBaseDirective {\n\n eclIcon = contentChild(EclIconComponent);\n\n /**\n * Applies 'ecl-page-header__meta-item' class to the host.\n *\n * @default 'ecl-page-header__meta-item'\n */\n @HostBinding('class') className = 'ecl-page-header__meta-item';\n\n private readonly ICON_CLASS = 'ecl-page-header__meta-icon';\n\n /**\n * Adds CSS class to the breadcrumb after content initialization.\n */\n ngAfterContentInit(): void {\n const icon = this.eclIcon();\n if (icon) {\n icon.baseDirective.class = this.ICON_CLASS;\n }\n }\n}\n","import { AfterContentInit, booleanAttribute, Component, contentChild, HostBinding, input } from '@angular/core';\nimport { EclBreadcrumbComponent } from '@eui/ecl/components/ecl-breadcrumb';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * ECL Page Header component, wraps header content and handles background images and breadcrumb styling.\n */\n@Component({\n selector: 'div[eclPageHeader]',\n templateUrl: './ecl-page-header-next.component.html',\n imports: [],\n})\nexport class EclPageHeaderNextComponent extends ECLBaseDirective implements AfterContentInit {\n /**\n * CSS classes applied to the host.\n *\n * @default 'ecl-page-header'\n * Adds 'ecl-page-header--image' if a background picture exists\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-page-header'),\n // this.colorMode() ? `ecl-color-mode--${this.colorMode()}` : '',\n this.hasBackground() ? 'ecl-page-header--background' : '',\n this.descriptionPosition() ? `ecl-page-header--description-${this.descriptionPosition()}` : '',\n this.picturePosition() ? `ecl-page-header--picture-${this.picturePosition()}` : '',\n ]\n .join(' ')\n .trim();\n }\n\n /**\n * Reference to the ECL breadcrumb inside the header.\n */\n eclBreadcrumbComponent = contentChild(EclBreadcrumbComponent);\n\n // colorMode = input<string | null>(null);\n hasBackground = input(false, { transform: booleanAttribute });\n descriptionPosition = input<'top' | 'bottom'>('top');\n picturePosition = input<'top' | 'beside' | 'bottom'>('top');\n\n private readonly BREADCRUMB_CLASS = 'ecl-page-header__breadcrumb ecl-breadcrumb--wrap';\n\n /**\n * Adds CSS class to the breadcrumb after content initialization.\n */\n ngAfterContentInit(): void {\n const breadcrumb = this.eclBreadcrumbComponent();\n if (breadcrumb) {\n breadcrumb.class = this.BREADCRUMB_CLASS;\n }\n }\n}\n","<ng-content></ng-content>","import { Component, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n@Component({\n selector: 'div[eclPageHeaderSectionInfo]',\n templateUrl: './ecl-page-header-section-info.component.html',\n})\nexport class EclPageHeaderSectionInfoComponent extends ECLBaseDirective {\n /**\n * CSS classes applied to the host.\n */\n @HostBinding('class') className = 'ecl-page-header__section-info ecl-container';\n}","<ng-content select=\"ecl-breadcrumb, nav[eclBreadcrumb]\"></ng-content>\n\n<div class=\"ecl-page-header__content-info\">\n <ng-content select=\"[eclPageHeaderTitle]\"></ng-content>\n <ng-content select=\"[eclPageHeaderDescriptionContainer]\"></ng-content>\n</div>\n<ng-content select=\"[eclPageHeaderMeta]\"></ng-content>","import { Component, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n@Component({\n selector: 'div[eclPageHeaderSection]',\n templateUrl: './ecl-page-header-section.component.html',\n})\nexport class EclPageHeaderSectionComponent extends ECLBaseDirective {\n /**\n * CSS classes applied to the host.\n */\n @HostBinding('class') className = 'ecl-page-header__section-description';\n}","<div class=\"ecl-container\">\n <ng-content></ng-content>\n</div>","import { Directive, HostBinding, booleanAttribute, input } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Styles the title section in the page header.\n */\n@Directive({\n selector: '[eclPageHeaderTitle]',\n})\nexport class EclPageHeaderTitleDirective extends ECLBaseDirective {\n /**\n * Whether the title is visible.\n *\n * @default true\n */\n readonly isTitleVisible = input(true, { transform: booleanAttribute });\n\n /**\n * CSS classes applied to the host.\n *\n * @default 'ecl-page-header__title'\n * 'ecl-u-sr-only' if the title is hidden\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-page-header__title'),\n !this.isTitleVisible() ? 'ecl-u-sr-only' : '',\n ].join(' ').trim();\n }\n}\n\n\n/**\n * Styles the header section for the page header expandable component.\n */\n@Directive({\n selector: '[eclPageHeaderExpandableHeader]',\n})\nexport class EclPageHeaderExpandableHeaderDirective extends ECLBaseDirective {\n /**\n * CSS classes applied to the host.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-page-header-expandable__header-text'),\n ].join(' ').trim();\n }\n}\n","import { AfterContentInit, booleanAttribute, Component, ContentChild, HostBinding, input } from '@angular/core';\nimport { NgTemplateOutlet } from '@angular/common'\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclBreadcrumbComponent } from '@eui/ecl/components/ecl-breadcrumb';\nimport { EclPageHeaderBackgroundPictureDirective } from './ecl-page-header-background.directive';\n\n/**\n * ECL Page Header component, wraps header content and handles background images and breadcrumb styling.\n * @deprecated Use `div[eclPageHeader]` instead. To be removed in v23.\n */\n@Component({\n selector: 'ecl-page-header',\n templateUrl: './ecl-page-header.component.html',\n imports: [NgTemplateOutlet],\n styles: [\n `\n :host {\n display: block;\n }\n `,\n ],\n})\nexport class EclPageHeaderComponent extends ECLBaseDirective implements AfterContentInit {\n /**\n * CSS classes applied to the host.\n *\n * @default 'ecl-page-header'\n * Adds 'ecl-page-header--image' if a background picture exists\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-page-header'),\n this.hasBackground() ? 'ecl-page-header--background' : '',\n this.descriptionPosition() ? `ecl-page-header--description-${this.descriptionPosition()}` : '',\n this.picturePosition() ? `ecl-page-header--picture-${this.picturePosition()}` : '',\n this.hasPicture ? 'ecl-page-header--image' : '',\n // this.colorMode() ? `ecl-color-mode--${this.colorMode()}` : '',\n ]\n .join(' ')\n .trim();\n }\n\n /**\n * Reference to the ECL breadcrumb inside the header.\n */\n @ContentChild(EclBreadcrumbComponent)\n eclBreadcrumbComponent: EclBreadcrumbComponent;\n\n /**\n * Reference to the background picture directive, if present.\n */\n @ContentChild(EclPageHeaderBackgroundPictureDirective)\n eclBackgroundPicture: EclPageHeaderBackgroundPictureDirective;\n\n // colorMode = input<string | null>(null);\n hasBackground = input(false, { transform: booleanAttribute });\n descriptionPosition = input<'top' | 'bottom'>('top');\n picturePosition = input<'top' | 'beside' | 'bottom'>('top');\n\n private readonly BREADCRUMB_CLASS = 'ecl-page-header__breadcrumb';\n\n constructor() {\n super();\n console.warn('\"ecl-page-header\" selector is deprecated; use \"div[eclPageHeader]\" instead.');\n }\n\n /**\n * Adds CSS class to the breadcrumb after content initialization.\n */\n ngAfterContentInit(): void {\n if (this.eclBreadcrumbComponent) {\n this.eclBreadcrumbComponent.class = this.BREADCRUMB_CLASS;\n }\n }\n\n /**\n * True if a background picture exists.\n */\n get hasPicture(): boolean {\n return !!this.eclBackgroundPicture;\n }\n}\n","<ng-content select=\"[eclPageHeaderExpandable]\"></ng-content>\n@if(hasPicture){\n<div class=\"ecl-page-header__background-container\">\n <ng-content select=\"[eclPageHeaderBackgroundPicture]\"></ng-content>\n</div>\n}\n\n<div class=\"ecl-container\">\n <ng-container *ngTemplateOutlet=\"content\"> </ng-container>\n</div>\n\n<ng-template #content>\n <ng-content></ng-content>\n</ng-template>","import { EclPageHeaderBackgroundImageDirective, EclPageHeaderBackgroundPictureDirective } from './ecl-page-header-background.directive';\nimport {\n EclPageHeaderDescriptionDirective,\n EclPageHeaderDescriptionPictureDirective,\n EclPageHeaderDescriptionThumbnailDirective\n} from './ecl-page-header-description.directive';\nimport { EclPageHeaderDescriptionContainerComponent } from './ecl-page-header-description/ecl-page-header-description.component';\nimport { EclPageHeaderExpandableComponent } from './ecl-page-header-expandable/ecl-page-header-expandable.component';\nimport { EclContainerDirective, EclPageHeaderContainerDirective, EclPageHeaderInfoDirective } from './ecl-page-header-info.directive';\nimport { EclPageHeaderMetaDirective, EclPageHeaderMetaItemDirective } from './ecl-page-header-meta.directive';\nimport { EclPageHeaderNextComponent } from './ecl-page-header-next/ecl-page-header-next.component';\nimport { EclPageHeaderSectionInfoComponent } from './ecl-page-header-section-info/ecl-page-header-section-info.component';\nimport { EclPageHeaderSectionComponent } from './ecl-page-header-section/ecl-page-header-section.component';\nimport { EclPageHeaderExpandableHeaderDirective, EclPageHeaderTitleDirective } from './ecl-page-header-title.directive';\nimport { EclPageHeaderComponent } from './ecl-page-header.component';\n\nexport * from './ecl-page-header-background.directive';\nexport * from './ecl-page-header-description.directive';\nexport * from './ecl-page-header-expandable/ecl-page-header-expandable.component';\nexport * from './ecl-page-header-info.directive';\nexport * from './ecl-page-header-meta.directive';\nexport * from './ecl-page-header-next/ecl-page-header-next.component';\nexport * from './ecl-page-header-section-info/ecl-page-header-section-info.component';\nexport * from './ecl-page-header-section/ecl-page-header-section.component';\nexport * from './ecl-page-header-description/ecl-page-header-description.component';\nexport * from './ecl-page-header-title.directive';\nexport * from './ecl-page-header.component';\n\nexport const EUI_ECL_PAGE_HEADER = [\n EclPageHeaderComponent,\n EclPageHeaderNextComponent,\n EclPageHeaderContainerDirective,\n EclPageHeaderExpandableComponent,\n EclPageHeaderExpandableHeaderDirective,\n EclPageHeaderInfoDirective,\n EclPageHeaderMetaDirective,\n EclPageHeaderMetaItemDirective,\n EclPageHeaderTitleDirective,\n EclPageHeaderDescriptionDirective,\n EclPageHeaderDescriptionThumbnailDirective,\n EclPageHeaderDescriptionContainerComponent,\n EclPageHeaderDescriptionPictureDirective,\n EclPageHeaderBackgroundPictureDirective,\n EclPageHeaderBackgroundImageDirective,\n EclPageHeaderSectionComponent,\n EclPageHeaderSectionInfoComponent,\n EclContainerDirective,\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-page-header.mjs","sources":["../../components/ecl-page-header/ecl-page-header-background.directive.ts","../../components/ecl-page-header/ecl-page-header-description.directive.ts","../../components/ecl-page-header/ecl-page-header-description/ecl-page-header-description.component.ts","../../components/ecl-page-header/ecl-page-header-description/ecl-page-header-description.component.html","../../components/ecl-page-header/ecl-page-header-expandable/ecl-page-header-expandable.component.ts","../../components/ecl-page-header/ecl-page-header-expandable/ecl-page-header-expandable.component.html","../../components/ecl-page-header/ecl-page-header-info.directive.ts","../../components/ecl-page-header/ecl-page-header-meta.directive.ts","../../components/ecl-page-header/ecl-page-header-next/ecl-page-header-next.component.ts","../../components/ecl-page-header/ecl-page-header-next/ecl-page-header-next.component.html","../../components/ecl-page-header/ecl-page-header-section-info/ecl-page-header-section-info.component.ts","../../components/ecl-page-header/ecl-page-header-section-info/ecl-page-header-section-info.component.html","../../components/ecl-page-header/ecl-page-header-section/ecl-page-header-section.component.ts","../../components/ecl-page-header/ecl-page-header-section/ecl-page-header-section.component.html","../../components/ecl-page-header/ecl-page-header-title.directive.ts","../../components/ecl-page-header/ecl-page-header.component.ts","../../components/ecl-page-header/ecl-page-header.component.html","../../components/ecl-page-header/index.ts","../../components/ecl-page-header/eui-ecl-components-ecl-page-header.ts"],"sourcesContent":["import { Directive, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Styles the background picture inside the page header.\n */\n@Directive({\n selector: '[eclPageHeaderBackgroundPicture]',\n})\nexport class EclPageHeaderBackgroundPictureDirective extends ECLBaseDirective {\n /**\n * Applies 'ecl-picture ecl-page-header__picture-background' classes to the host.\n *\n * @default 'ecl-picture ecl-page-header__picture-background'\n */\n @HostBinding('class') className = 'ecl-picture ecl-page-header__picture-background';\n}\n\n/**\n * Styles the background image inside the page header.\n */\n@Directive({\n selector: '[eclPageHeaderBackgroundImage]',\n})\nexport class EclPageHeaderBackgroundImageDirective extends ECLBaseDirective {\n /**\n * Applies 'ecl-page-header__background' class to the host.\n *\n * @default 'ecl-page-header__background'\n */\n @HostBinding('class') className = 'ecl-page-header__background';\n}\n","import { Directive, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n// /**\n// * Styles the container for the page header description.\n// */\n// @Directive({\n// selector: '[eclPageHeaderDescriptionContainer]',\n// })\n// export class EclPageHeaderDescriptionContainerDirective extends ECLBaseDirective {\n// /**\n// * Applies 'ecl-page-header__description-container' class to the host.\n// *\n// * @default 'ecl-page-header__description-container'\n// */\n// @HostBinding('class') className = 'ecl-page-header__description-container';\n// }\n\n/**\n * Styles a picture used in the page header description.\n */\n@Directive({\n selector: '[eclPageHeaderDescriptionPicture]',\n})\nexport class EclPageHeaderDescriptionPictureDirective extends ECLBaseDirective {\n /**\n * Applies 'ecl-picture ecl-page-header__picture-thumbnail' classes to the host.\n *\n * @default 'ecl-picture ecl-page-header__picture-thumbnail'\n */\n @HostBinding('class') className = 'ecl-picture ecl-page-header__picture-thumbnail';\n}\n\n/**\n * Styles a thumbnail or image in the page header description.\n */\n@Directive({\n selector: '[eclPageHeaderDescriptionThumbnail], img[eclPageHeaderDescriptionImage]',\n})\nexport class EclPageHeaderDescriptionThumbnailDirective extends ECLBaseDirective {\n /**\n * Applies 'ecl-page-header__description-thumbnail' class to the host.\n *\n * @default 'ecl-page-header__description-thumbnail'\n */\n @HostBinding('class') className = 'ecl-page-header__description-thumbnail';\n}\n\n/**\n * Styles the text description in the page header.\n */\n@Directive({\n selector: 'p[eclPageHeaderDescription]',\n})\nexport class EclPageHeaderDescriptionDirective extends ECLBaseDirective {\n /**\n * Applies 'ecl-page-header__description' class to the host.\n *\n * @default 'ecl-page-header__description'\n */\n @HostBinding('class') className = 'ecl-page-header__description';\n}\n","import { NgTemplateOutlet } from '@angular/common';\nimport { Component, input } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n@Component({\n selector: 'div[eclPageHeaderDescriptionContainer]',\n templateUrl: './ecl-page-header-description.component.html',\n imports: [NgTemplateOutlet],\n host: {\n '[class]': '\"ecl-page-header__description-\" + position()',\n },\n})\nexport class EclPageHeaderDescriptionContainerComponent extends ECLBaseDirective {\n\n position = input<'top' | 'bottom'>('top');\n}\n","@if (position() === 'bottom') {\n<div class=\"ecl-container\">\n <div class=\"ecl-page-header__description-container\">\n <ng-container [ngTemplateOutlet]=\"content\"> </ng-container>\n </div>\n</div>\n} @else {\n<div class=\"ecl-page-header__description-container\">\n <ng-container [ngTemplateOutlet]=\"content\"> </ng-container>\n</div>\n}\n\n<ng-template #content>\n <ng-content></ng-content>\n</ng-template>","import { afterNextRender, Component, computed, ElementRef, HostBinding, OnDestroy, signal, viewChild } from '@angular/core';\nimport { EUI_ECL_BUTTON } from '@eui/ecl/components/ecl-button';\nimport { EUI_ECL_ICON } from '@eui/ecl/components/ecl-icon';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * ECL Page Header expandable component. As a part of the PageHeader,\n * it represents expandable content, placed at the top of the parent component.\n */\n@Component({\n selector: 'div[eclPageHeaderExpandable]',\n templateUrl: './ecl-page-header-expandable.component.html',\n imports: [...EUI_ECL_BUTTON, ...EUI_ECL_ICON],\n})\nexport class EclPageHeaderExpandableComponent extends ECLBaseDirective implements OnDestroy {\n /**\n * CSS classes applied to the host.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-page-header-expandable'),\n this.hasProjectedContent() ? '' : 'ecl-page-header-no-toggle']\n .join(' ')\n .trim();\n }\n\n panelId = crypto.randomUUID();\n isExpanded = signal(false);\n private readonly projectedSlot = viewChild<ElementRef<HTMLElement>>('projectedSlot');\n private readonly _hasProjectedContent = signal(false);\n readonly hasProjectedContent = computed(() => this._hasProjectedContent());\n\n private observer?: MutationObserver;\n\n constructor() {\n super();\n afterNextRender(() => {\n const el = this.projectedSlot()?.nativeElement;\n if (!el) return;\n\n const recompute = () => {\n // textContent covers both text-only and element content.\n // trim() ignores whitespace/newlines from formatting.\n this._hasProjectedContent.set((el.textContent ?? '').trim().length > 0);\n };\n\n recompute();\n\n // Optional but recommended if the projected content can change dynamically\n this.observer = new MutationObserver(recompute);\n this.observer.observe(el, {\n childList: true,\n subtree: true,\n characterData: true,\n });\n });\n }\n\n ngOnDestroy() {\n this.observer?.disconnect();\n }\n\n onExpandButtonClick(): void {\n this.isExpanded.set(!this.isExpanded());\n }\n}","<div class=\"ecl-page-header-expandable__header\">\n <div class=\"ecl-container ecl-page-header-expandable__container\">\n <ng-content select=\"[eclPageHeaderExpandableHeader]\"></ng-content>\n\n @if (hasProjectedContent()) {\n <button eclButton variant=\"tertiary\" eclStyle=\"neutral\" isIconOnly aria-expanded=\"{{isExpanded()}}\" type=\"submit\"\n [attr.aria-controls]=\"panelId\" class=\"ecl-page-header-expandable__toggle\" (click)=\"onExpandButtonClick()\">\n <span eclButtonLabel>expandable button</span>\n <ecl-icon icon=\"corner-arrow\" transform=\"flip-vertical\"></ecl-icon>\n </button>\n }\n </div>\n</div>\n<div class=\"ecl-page-header-expandable__panel\" id=\"{{panelId}}\" [hidden]=\"!isExpanded()\">\n <div class=\"ecl-container ecl-page-header-expandable__container\" #projectedSlot>\n <ng-content></ng-content>\n </div>\n</div>","import { Directive, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Styles the info section in the page header.\n */\n@Directive({\n selector: '[eclPageHeaderInfo]',\n})\nexport class EclPageHeaderInfoDirective extends ECLBaseDirective {\n /**\n * Applies 'ecl-page-header__info' class to the host.\n *\n * @default 'ecl-page-header__info'\n */\n @HostBinding('class') className = 'ecl-page-header__info';\n}\n\n\n@Directive({\n selector: '[eclPageHeaderContainer]',\n})\nexport class EclPageHeaderContainerDirective extends ECLBaseDirective {\n /**\n * Applies 'ecl-page-header__container' class to the host.\n *\n * @default 'ecl-page-header__container'\n */\n @HostBinding('class') className = 'ecl-page-header__container';\n}\n\n@Directive({\n selector: '[eclContainer]',\n})\nexport class EclContainerDirective extends ECLBaseDirective {\n /**\n * Applies 'ecl-container' class to the host.\n *\n * @default 'ecl-container'\n */\n @HostBinding('class') className = 'ecl-container';\n}\n","import { contentChild, Directive, HostBinding, AfterContentInit } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclIconComponent } from '@eui/ecl/components/ecl-icon';\n\n/**\n * Styles the meta section in the page header.\n */\n@Directive({\n selector: '[eclPageHeaderMeta]',\n})\nexport class EclPageHeaderMetaDirective extends ECLBaseDirective {\n /**\n * Applies 'ecl-page-header__meta' class to the host.\n *\n * @default 'ecl-page-header__meta'\n */\n @HostBinding('class') className = 'ecl-page-header__meta';\n}\n\n/**\n * Styles individual meta items in the page header.\n */\n@Directive({\n selector: '[eclPageHeaderMetaItem]',\n})\nexport class EclPageHeaderMetaItemDirective extends ECLBaseDirective implements AfterContentInit {\n\n eclIcon = contentChild(EclIconComponent);\n\n /**\n * Applies 'ecl-page-header__meta-item' class to the host.\n *\n * @default 'ecl-page-header__meta-item'\n */\n @HostBinding('class') className = 'ecl-page-header__meta-item';\n\n private readonly ICON_CLASS = 'ecl-page-header__meta-icon';\n\n /**\n * Adds CSS class to the breadcrumb after content initialization.\n */\n ngAfterContentInit(): void {\n const icon = this.eclIcon();\n if (icon) {\n icon.baseDirective.class = this.ICON_CLASS;\n }\n }\n}\n","import { AfterContentInit, booleanAttribute, Component, contentChild, HostBinding, input } from '@angular/core';\nimport { EclBreadcrumbComponent } from '@eui/ecl/components/ecl-breadcrumb';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * ECL Page Header component, wraps header content and handles background images and breadcrumb styling.\n */\n@Component({\n selector: 'div[eclPageHeader]',\n templateUrl: './ecl-page-header-next.component.html',\n imports: [],\n})\nexport class EclPageHeaderNextComponent extends ECLBaseDirective implements AfterContentInit {\n /**\n * CSS classes applied to the host.\n *\n * @default 'ecl-page-header'\n * Adds 'ecl-page-header--image' if a background picture exists\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-page-header'),\n // this.colorMode() ? `ecl-color-mode--${this.colorMode()}` : '',\n this.hasBackground() ? 'ecl-page-header--background' : '',\n this.descriptionPosition() ? `ecl-page-header--description-${this.descriptionPosition()}` : '',\n this.picturePosition() ? `ecl-page-header--picture-${this.picturePosition()}` : '',\n ]\n .join(' ')\n .trim();\n }\n\n /**\n * Reference to the ECL breadcrumb inside the header.\n */\n eclBreadcrumbComponent = contentChild(EclBreadcrumbComponent);\n\n // colorMode = input<string | null>(null);\n hasBackground = input(false, { transform: booleanAttribute });\n descriptionPosition = input<'top' | 'bottom'>('top');\n picturePosition = input<'top' | 'beside' | 'bottom'>('top');\n\n private readonly BREADCRUMB_CLASS = 'ecl-page-header__breadcrumb ecl-breadcrumb--wrap';\n\n /**\n * Adds CSS class to the breadcrumb after content initialization.\n */\n ngAfterContentInit(): void {\n const breadcrumb = this.eclBreadcrumbComponent();\n if (breadcrumb) {\n breadcrumb.class = this.BREADCRUMB_CLASS;\n }\n }\n}\n","<ng-content></ng-content>","import { Component, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n@Component({\n selector: 'div[eclPageHeaderSectionInfo]',\n templateUrl: './ecl-page-header-section-info.component.html',\n})\nexport class EclPageHeaderSectionInfoComponent extends ECLBaseDirective {\n /**\n * CSS classes applied to the host.\n */\n @HostBinding('class') className = 'ecl-page-header__section-info ecl-container';\n}","<ng-content select=\"ecl-breadcrumb, nav[eclBreadcrumb]\"></ng-content>\n\n<div class=\"ecl-page-header__content-info\">\n <ng-content select=\"[eclPageHeaderTitle]\"></ng-content>\n <ng-content select=\"[eclPageHeaderDescriptionContainer]\"></ng-content>\n</div>\n<ng-content select=\"[eclPageHeaderMeta]\"></ng-content>","import { Component, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n@Component({\n selector: 'div[eclPageHeaderSection]',\n templateUrl: './ecl-page-header-section.component.html',\n})\nexport class EclPageHeaderSectionComponent extends ECLBaseDirective {\n /**\n * CSS classes applied to the host.\n */\n @HostBinding('class') className = 'ecl-page-header__section-description';\n}","<div class=\"ecl-container\">\n <ng-content></ng-content>\n</div>","import { Directive, HostBinding, booleanAttribute, input } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Styles the title section in the page header.\n */\n@Directive({\n selector: '[eclPageHeaderTitle]',\n})\nexport class EclPageHeaderTitleDirective extends ECLBaseDirective {\n /**\n * Whether the title is visible.\n *\n * @default true\n */\n readonly isTitleVisible = input(true, { transform: booleanAttribute });\n\n /**\n * CSS classes applied to the host.\n *\n * @default 'ecl-page-header__title'\n * 'ecl-u-sr-only' if the title is hidden\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-page-header__title'),\n !this.isTitleVisible() ? 'ecl-u-sr-only' : '',\n ].join(' ').trim();\n }\n}\n\n\n/**\n * Styles the header section for the page header expandable component.\n */\n@Directive({\n selector: '[eclPageHeaderExpandableHeader]',\n})\nexport class EclPageHeaderExpandableHeaderDirective extends ECLBaseDirective {\n /**\n * CSS classes applied to the host.\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-page-header-expandable__header-text'),\n ].join(' ').trim();\n }\n}\n","import { AfterContentInit, booleanAttribute, Component, HostBinding, input, contentChild } from '@angular/core';\nimport { NgTemplateOutlet } from '@angular/common'\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclBreadcrumbComponent } from '@eui/ecl/components/ecl-breadcrumb';\nimport { EclPageHeaderBackgroundPictureDirective } from './ecl-page-header-background.directive';\n\n/**\n * ECL Page Header component, wraps header content and handles background images and breadcrumb styling.\n * @deprecated Use `div[eclPageHeader]` instead. To be removed in v23.\n */\n@Component({\n selector: 'ecl-page-header',\n templateUrl: './ecl-page-header.component.html',\n imports: [NgTemplateOutlet],\n styles: [\n `\n :host {\n display: block;\n }\n `,\n ],\n})\nexport class EclPageHeaderComponent extends ECLBaseDirective implements AfterContentInit {\n /**\n * CSS classes applied to the host.\n *\n * @default 'ecl-page-header'\n * Adds 'ecl-page-header--image' if a background picture exists\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-page-header'),\n this.hasBackground() ? 'ecl-page-header--background' : '',\n this.descriptionPosition() ? `ecl-page-header--description-${this.descriptionPosition()}` : '',\n this.picturePosition() ? `ecl-page-header--picture-${this.picturePosition()}` : '',\n this.hasPicture ? 'ecl-page-header--image' : '',\n // this.colorMode() ? `ecl-color-mode--${this.colorMode()}` : '',\n ]\n .join(' ')\n .trim();\n }\n\n /**\n * Reference to the ECL breadcrumb inside the header.\n */\n readonly eclBreadcrumbComponent = contentChild(EclBreadcrumbComponent);\n\n /**\n * Reference to the background picture directive, if present.\n */\n readonly eclBackgroundPicture = contentChild(EclPageHeaderBackgroundPictureDirective);\n\n // colorMode = input<string | null>(null);\n hasBackground = input(false, { transform: booleanAttribute });\n descriptionPosition = input<'top' | 'bottom'>('top');\n picturePosition = input<'top' | 'beside' | 'bottom'>('top');\n\n private readonly BREADCRUMB_CLASS = 'ecl-page-header__breadcrumb';\n\n constructor() {\n super();\n console.warn('\"ecl-page-header\" selector is deprecated; use \"div[eclPageHeader]\" instead.');\n }\n\n /**\n * Adds CSS class to the breadcrumb after content initialization.\n */\n ngAfterContentInit(): void {\n const eclBreadcrumbComponent = this.eclBreadcrumbComponent();\n if (eclBreadcrumbComponent) {\n eclBreadcrumbComponent.class = this.BREADCRUMB_CLASS;\n }\n }\n\n /**\n * True if a background picture exists.\n */\n get hasPicture(): boolean {\n return !!this.eclBackgroundPicture();\n }\n}\n","<ng-content select=\"[eclPageHeaderExpandable]\"></ng-content>\n@if(hasPicture){\n<div class=\"ecl-page-header__background-container\">\n <ng-content select=\"[eclPageHeaderBackgroundPicture]\"></ng-content>\n</div>\n}\n\n<div class=\"ecl-container\">\n <ng-container *ngTemplateOutlet=\"content\"> </ng-container>\n</div>\n\n<ng-template #content>\n <ng-content></ng-content>\n</ng-template>","import { EclPageHeaderBackgroundImageDirective, EclPageHeaderBackgroundPictureDirective } from './ecl-page-header-background.directive';\nimport {\n EclPageHeaderDescriptionDirective,\n EclPageHeaderDescriptionPictureDirective,\n EclPageHeaderDescriptionThumbnailDirective,\n} from './ecl-page-header-description.directive';\nimport { EclPageHeaderDescriptionContainerComponent } from './ecl-page-header-description/ecl-page-header-description.component';\nimport { EclPageHeaderExpandableComponent } from './ecl-page-header-expandable/ecl-page-header-expandable.component';\nimport { EclContainerDirective, EclPageHeaderContainerDirective, EclPageHeaderInfoDirective } from './ecl-page-header-info.directive';\nimport { EclPageHeaderMetaDirective, EclPageHeaderMetaItemDirective } from './ecl-page-header-meta.directive';\nimport { EclPageHeaderNextComponent } from './ecl-page-header-next/ecl-page-header-next.component';\nimport { EclPageHeaderSectionInfoComponent } from './ecl-page-header-section-info/ecl-page-header-section-info.component';\nimport { EclPageHeaderSectionComponent } from './ecl-page-header-section/ecl-page-header-section.component';\nimport { EclPageHeaderExpandableHeaderDirective, EclPageHeaderTitleDirective } from './ecl-page-header-title.directive';\nimport { EclPageHeaderComponent } from './ecl-page-header.component';\n\nexport * from './ecl-page-header-background.directive';\nexport * from './ecl-page-header-description.directive';\nexport * from './ecl-page-header-expandable/ecl-page-header-expandable.component';\nexport * from './ecl-page-header-info.directive';\nexport * from './ecl-page-header-meta.directive';\nexport * from './ecl-page-header-next/ecl-page-header-next.component';\nexport * from './ecl-page-header-section-info/ecl-page-header-section-info.component';\nexport * from './ecl-page-header-section/ecl-page-header-section.component';\nexport * from './ecl-page-header-description/ecl-page-header-description.component';\nexport * from './ecl-page-header-title.directive';\nexport * from './ecl-page-header.component';\n\nexport const EUI_ECL_PAGE_HEADER = [\n EclPageHeaderComponent,\n EclPageHeaderNextComponent,\n EclPageHeaderContainerDirective,\n EclPageHeaderExpandableComponent,\n EclPageHeaderExpandableHeaderDirective,\n EclPageHeaderInfoDirective,\n EclPageHeaderMetaDirective,\n EclPageHeaderMetaItemDirective,\n EclPageHeaderTitleDirective,\n EclPageHeaderDescriptionDirective,\n EclPageHeaderDescriptionThumbnailDirective,\n EclPageHeaderDescriptionContainerComponent,\n EclPageHeaderDescriptionPictureDirective,\n EclPageHeaderBackgroundPictureDirective,\n EclPageHeaderBackgroundImageDirective,\n EclPageHeaderSectionComponent,\n EclPageHeaderSectionInfoComponent,\n EclContainerDirective,\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, input, booleanAttribute, output, Input, HostBinding, ViewEncapsulation, Component, Directive, numberAttribute, ContentChild } from '@angular/core';
2
+ import { inject, ElementRef, input, booleanAttribute, output, Input, HostBinding, ViewEncapsulation, Component, Directive, numberAttribute, contentChild } from '@angular/core';
3
3
  import { RouterLink, RouterLinkWithHref } from '@angular/router';
4
4
  import { TranslatePipe } from '@ngx-translate/core';
5
5
  import { EclBaseEvent, ECLBaseDirective } from '@eui/ecl/core';
@@ -263,6 +263,11 @@ class EclPaginationComponent extends ECLBaseDirective {
263
263
  * Sets the ARIA role to indicate navigation.
264
264
  */
265
265
  this.role = 'navigation';
266
+ /**
267
+ * Reference to the pagination list directive inside the component's content.
268
+ */
269
+ this.eclPaginationList = contentChild(EclPaginationListDirective, /* @ts-ignore */
270
+ ...(ngDevMode ? [{ debugName: "eclPaginationList" }] : /* istanbul ignore next */ []));
266
271
  /**
267
272
  * Internal pagination model storing pagination data and logic.
268
273
  */
@@ -297,7 +302,7 @@ class EclPaginationComponent extends ECLBaseDirective {
297
302
  * Returns true if the pagination list exists in the template.
298
303
  */
299
304
  get hasList() {
300
- return !!this.eclPaginationList;
305
+ return !!this.eclPaginationList();
301
306
  }
302
307
  /**
303
308
  * Navigates to the previous page and emits a page change event.
@@ -336,7 +341,7 @@ class EclPaginationComponent extends ECLBaseDirective {
336
341
  this.page.emit(evt);
337
342
  }
338
343
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: EclPaginationComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
339
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.5", type: EclPaginationComponent, isStandalone: true, selector: "ecl-pagination", inputs: { mode: { classPropertyName: "mode", publicName: "mode", isSignal: true, isRequired: false, transformFunction: null }, totalItems: { classPropertyName: "totalItems", publicName: "totalItems", isSignal: true, isRequired: false, transformFunction: null }, pageSize: { classPropertyName: "pageSize", publicName: "pageSize", isSignal: true, isRequired: false, transformFunction: null }, currentPage: { classPropertyName: "currentPage", publicName: "currentPage", isSignal: true, isRequired: false, transformFunction: null }, pageWindowSize: { classPropertyName: "pageWindowSize", publicName: "pageWindowSize", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { page: "page" }, host: { properties: { "class.ecl-pagination": "this.cmpClass", "attr.role": "this.role" } }, queries: [{ propertyName: "eclPaginationList", first: true, predicate: EclPaginationListDirective, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "@if(!hasList) {\n <ul class=\"ecl-pagination__list\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </ul>\n } @else {\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n }\n \n <ng-template #content>\n @if (isModeAuto()){\n @if(model.hasPreviousPage()){\n <li eclPaginationItem [isPrevious]=\"true\" (pageClick)=\"onPreviousPage()\"> </li>\n }\n @for (page of model.getPages(); track page) {\n <li eclPaginationItem\n [label]=\"page.toString()\"\n [isCurrent]=\"model.getCurrentPage() === page\"\n (pageClick)=\"onPage(page)\"\n [pagesCount]=\"model.getPagesCount().toString()\">\n </li>\n }\n \n @if(model.hasNextPage()){\n <li eclPaginationItem [isNext]=\"true\" (pageClick)=\"onNextPage()\"> </li>\n }\n }\n \n @if(!isModeAuto()) {\n <ng-content></ng-content>\n }\n </ng-template>", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: EclPaginationItemComponent, selector: "li[eclPaginationItem]", inputs: ["label", "ariaLabel", "pagesCount", "isCurrent", "isNext", "isPrevious", "isTruncated", "routerLink", "queryParams", "queryParamsHandling", "href"], outputs: ["pageClick"] }] }); }
344
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.5", type: EclPaginationComponent, isStandalone: true, selector: "ecl-pagination", inputs: { mode: { classPropertyName: "mode", publicName: "mode", isSignal: true, isRequired: false, transformFunction: null }, totalItems: { classPropertyName: "totalItems", publicName: "totalItems", isSignal: true, isRequired: false, transformFunction: null }, pageSize: { classPropertyName: "pageSize", publicName: "pageSize", isSignal: true, isRequired: false, transformFunction: null }, currentPage: { classPropertyName: "currentPage", publicName: "currentPage", isSignal: true, isRequired: false, transformFunction: null }, pageWindowSize: { classPropertyName: "pageWindowSize", publicName: "pageWindowSize", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { page: "page" }, host: { properties: { "class.ecl-pagination": "this.cmpClass", "attr.role": "this.role" } }, queries: [{ propertyName: "eclPaginationList", first: true, predicate: EclPaginationListDirective, descendants: true, isSignal: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "@if(!hasList) {\n <ul class=\"ecl-pagination__list\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </ul>\n } @else {\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n }\n \n <ng-template #content>\n @if (isModeAuto()){\n @if(model.hasPreviousPage()){\n <li eclPaginationItem [isPrevious]=\"true\" (pageClick)=\"onPreviousPage()\"> </li>\n }\n @for (page of model.getPages(); track page) {\n <li eclPaginationItem\n [label]=\"page.toString()\"\n [isCurrent]=\"model.getCurrentPage() === page\"\n (pageClick)=\"onPage(page)\"\n [pagesCount]=\"model.getPagesCount().toString()\">\n </li>\n }\n \n @if(model.hasNextPage()){\n <li eclPaginationItem [isNext]=\"true\" (pageClick)=\"onNextPage()\"> </li>\n }\n }\n \n @if(!isModeAuto()) {\n <ng-content></ng-content>\n }\n </ng-template>", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: EclPaginationItemComponent, selector: "li[eclPaginationItem]", inputs: ["label", "ariaLabel", "pagesCount", "isCurrent", "isNext", "isPrevious", "isTruncated", "routerLink", "queryParams", "queryParamsHandling", "href"], outputs: ["pageClick"] }] }); }
340
345
  }
341
346
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: EclPaginationComponent, decorators: [{
342
347
  type: Component,
@@ -347,10 +352,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImpor
347
352
  }], role: [{
348
353
  type: HostBinding,
349
354
  args: ['attr.role']
350
- }], eclPaginationList: [{
351
- type: ContentChild,
352
- args: [EclPaginationListDirective]
353
- }] } });
355
+ }], eclPaginationList: [{ type: i0.ContentChild, args: [i0.forwardRef(() => EclPaginationListDirective), { isSignal: true }] }] } });
354
356
 
355
357
  const EUI_ECL_PAGINATION = [
356
358
  EclPaginationComponent, EclPaginationItemComponent, EclPaginationListDirective,
@@ -1 +1 @@
1
- {"version":3,"file":"eui-ecl-components-ecl-pagination.mjs","sources":["../../components/ecl-pagination/ecl-pagination-item.component.ts","../../components/ecl-pagination/ecl-pagination-item.component.html","../../components/ecl-pagination/ecl-pagination-list.directive.ts","../../components/ecl-pagination/events/ecl-pagination.event.ts","../../components/ecl-pagination/ecl-pagination.component.ts","../../components/ecl-pagination/ecl-pagination.component.html","../../components/ecl-pagination/index.ts","../../components/ecl-pagination/eui-ecl-components-ecl-pagination.ts"],"sourcesContent":["import { Component, ElementRef, HostBinding, Input, ViewEncapsulation, booleanAttribute, inject, output, input } from '@angular/core';\nimport { Params, QueryParamsHandling, RouterLink, RouterLinkWithHref } from '@angular/router';\nimport { TranslatePipe } from '@ngx-translate/core';\nimport { EclBaseEvent } from '@eui/ecl/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EUI_ECL_ICON } from '@eui/ecl/components/ecl-icon';\nimport { EUI_ECL_LINK } from '@eui/ecl/components/ecl-link';\n\n/**\n * Event emitted when a pagination item is clicked.\n */\nexport class EclPaginationItemClickEvent extends EclBaseEvent {}\n\n@Component({\n selector: 'li[eclPaginationItem]',\n templateUrl: './ecl-pagination-item.component.html',\n imports: [RouterLink, RouterLinkWithHref, TranslatePipe, ...EUI_ECL_ICON, ...EUI_ECL_LINK],\n encapsulation: ViewEncapsulation.None,\n})\nexport class EclPaginationItemComponent extends ECLBaseDirective {\n el = inject(ElementRef);\n\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-pagination__item'),\n this.isCurrent() ? 'ecl-pagination__item--current' : '',\n this.isNext() ? 'ecl-pagination__item--next' : '',\n this.isPrevious() ? 'ecl-pagination__item--previous' : '',\n ]\n .join(' ')\n .trim();\n }\n\n /**\n * Sets the `role` attribute for accessibility.\n */\n @HostBinding('attr.role') role = 'listitem';\n\n /**\n * Text content of the pagination item.\n */\n readonly label = input<string>(undefined);\n\n /**\n * Value for the `aria-label` attribute used for accessibility.\n */\n readonly ariaLabel = input<string>(undefined);\n\n /**\n * Total number of pages displayed by the pagination component.\n */\n @Input() pagesCount: string;\n\n /**\n * Adds the `ecl-pagination__item--current` class when true.\n */\n readonly isCurrent = input<boolean, unknown>(undefined, { transform: booleanAttribute });\n\n /**\n * Adds the `ecl-pagination__item--next` class when true.\n */\n readonly isNext = input<boolean, unknown>(undefined, { transform: booleanAttribute });\n\n /**\n * Adds the `ecl-pagination__item--previous` class when true.\n */\n readonly isPrevious = input<boolean, unknown>(undefined, { transform: booleanAttribute });\n\n /**\n * Adds the `ecl-pagination__item--truncation` class when true.\n */\n @Input({ transform: booleanAttribute }) @HostBinding('class.ecl-pagination__item--truncation') isTruncated = false;\n\n /**\n * Router navigation link for Angular routing.\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n @Input() routerLink: string | any[] = null;\n\n /**\n * Query parameters for the router link.\n */\n readonly queryParams = input<Params | null>(null);\n\n /**\n * Determines how query parameters are handled during navigation.\n */\n readonly queryParamsHandling = input<QueryParamsHandling>(null);\n\n /**\n * Href link for navigation.\n */\n readonly href = input<string>(null);\n\n /**\n * Emits when the pagination item is clicked.\n */\n readonly pageClick = output<EclPaginationItemClickEvent>();\n\n get anchorRole(): string | null {\n return !this.href() && !this.routerLink ? 'button' : null;\n }\n\n /**\n * Adds relevant classes to the host element.\n */\n constructor() {\n super();\n const el = this.el;\n\n if (el.nativeElement.tagName.toLowerCase() === 'ecl-pagination-item') {\n console.warn('\"ecl-pagination-item\" selector is deprecated; use \"li[eclPaginationItem]\" instead.');\n }\n }\n\n /**\n * Returns true if this item is an icon-only element (previous or next page).\n */\n get isIconOnly(): boolean {\n return this.isPrevOrNextVisible();\n }\n\n /**\n * Handles the click event and emits the `pageClick` output.\n * Prevents event propagation if no href is defined.\n *\n * @param evt Event object from the DOM click event.\n */\n onPageClick(evt: Event): void {\n this.pageClick.emit(new EclPaginationItemClickEvent());\n if (!this.href()) {\n evt.stopPropagation();\n }\n }\n\n /**\n * Returns the i18n translation key for the ARIA label.\n */\n geti18nPageAriaLabelKey(): string {\n let key = '';\n\n if (this.isNext()) {\n key = 'ecl.pagination.GO-TO-NEXT-PAGE';\n } else if (this.isPrevious()) {\n key = 'ecl.pagination.GO-TO-PREV-PAGE';\n } else {\n key = 'ecl.pagination.GO-TO-PAGE';\n }\n return key;\n }\n\n /**\n * Returns the i18n translation key for the visible label.\n */\n geti18nPageLabelKey(): string {\n let key = '';\n\n if (this.isNext()) {\n key = 'ecl.pagination.NEXT';\n } else if (this.isPrevious()) {\n key = 'ecl.pagination.PREVIOUS';\n }\n return key;\n }\n\n /**\n * Returns true if the item is either previous or next.\n */\n isPrevOrNextVisible(): boolean {\n return this.isPrevious() || this.isNext();\n }\n}\n","@if (!isCurrent() && !isTruncated) {\n@if(routerLink){\n<a eclLink [isIconOnly]=\"isIconOnly\" (keydown.enter)=\"onPageClick($event)\" (click)=\"onPageClick($event)\" variant=\"standalone\"\n attr.aria-label=\"{{ ariaLabel() || geti18nPageAriaLabelKey() | translate: { pageNumber: label() } }}\" [attr.role]=\"anchorRole\"\n [routerLink]=\"routerLink\" [queryParams]=\"queryParams()\" [queryParamsHandling]=\"queryParamsHandling()\"\n class=\"ecl-pagination__link eui-ecl-u-cursor-pointer\" tabindex=\"{{tabindex ? tabindex : 0}}\">\n @if (isPrevious()) {\n <ecl-icon icon=\"corner-arrow\" size=\"xs\" transform=\"rotate-270\"></ecl-icon>\n }\n <span eclLinkLabel>{{ label() || geti18nPageLabelKey() | translate }}</span>\n @if (isNext()) {\n <ecl-icon icon=\"corner-arrow\" size=\"xs\" transform=\"rotate-90\"></ecl-icon>\n }\n</a>\n}\n\n@if (!routerLink) {\n<a eclLink [isIconOnly]=\"isIconOnly\" (keydown.enter)=\"onPageClick($event)\" (click)=\"onPageClick($event)\" variant=\"standalone\"\n attr.aria-label=\"{{ ariaLabel() || geti18nPageAriaLabelKey() | translate: { pageNumber: label() } }}\" [attr.href]=\"href()\"\n class=\"ecl-pagination__link eui-ecl-u-cursor-pointer\" tabindex=\"{{tabindex ? tabindex : 0}}\" [attr.role]=\"anchorRole\">\n @if (isPrevious()) {\n <ecl-icon icon=\"corner-arrow\" size=\"xs\" transform=\"rotate-270\"></ecl-icon>\n }\n <span eclLinkLabel>{{ label() || geti18nPageLabelKey() | translate }}</span>\n @if (isNext()) {\n <ecl-icon icon=\"corner-arrow\" size=\"xs\" transform=\"rotate-90\"></ecl-icon>\n }\n</a>\n}\n}\n\n@else if (isTruncated) {\n<span class=\"ecl-pagination__text ecl-pagination__text--summary\" aria-current=\"true\">\n {{ label() }}\n</span>\n}\n@else {\n<span class=\"ecl-pagination__text ecl-pagination__text--summary\" aria-current=\"true\">\n {{ label() }}\n</span>\n\n<span class=\"ecl-pagination__text ecl-pagination__text--full\" aria-current=\"true\">\n {{ 'ecl.pagination.PAGE' | translate: { pageNumber: label() } }}\n @if(pagesCount) {\n {{ 'ecl.common.OF' | translate}} {{pagesCount}}\n }\n</span>\n}","import { Directive, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive to apply ECL styles to the pagination list element.\n * Adds the `ecl-pagination__list` class to the host element.\n */\n@Directive({\n selector: '[eclPaginationList]',\n})\nexport class EclPaginationListDirective extends ECLBaseDirective {\n /**\n * Adds the `ecl-pagination__list` class to the host element.\n */\n @HostBinding('class.ecl-pagination__list') hasClass = true;\n}\n","import { EclBaseEvent } from '@eui/ecl/core';\n\n/**\n * Event emitted by EclPaginationComponent when the page changes.\n * Contains information about the current page and visible item range.\n */\nexport class EclPaginationEvent extends EclBaseEvent {\n /**\n * Current page number after the change.\n */\n constructor(\n public readonly page: number,\n\n /**\n * Index of the first item shown on the current page.\n */\n public readonly showingFrom: number,\n\n /**\n * Index of the last item shown on the current page.\n */\n public readonly showingTo: number,\n ) {\n super();\n }\n}\n","import { Component, ContentChild, HostBinding, OnChanges, OnInit, numberAttribute, output, input } from '@angular/core';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { DefaultConfig, EuiPagination } from '@eui/base';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclPaginationEvent } from './events/ecl-pagination.event';\nimport { EclPaginationListDirective } from './ecl-pagination-list.directive';\nimport { EclPaginationItemComponent } from './ecl-pagination-item.component';\n\n/**\n * Component rendering the ECL pagination.\n * Supports manual and automatic modes.\n * Emits page change events and manages pagination logic.\n */\n@Component({\n selector: 'ecl-pagination',\n templateUrl: './ecl-pagination.component.html',\n imports: [NgTemplateOutlet, EclPaginationItemComponent],\n styles: [\n `\n :host {\n display: block;\n }\n `,\n ],\n})\nexport class EclPaginationComponent extends ECLBaseDirective implements OnInit, OnChanges {\n /**\n * Defines the pagination mode.\n * - `manual` - component waits for external events to change pages.\n * - `auto` - component manages the pages automatically based on inputs.\n */\n readonly mode = input<'manual' | 'auto'>('manual');\n\n /**\n * Total number of items in the list.\n */\n readonly totalItems = input<number, unknown>(DefaultConfig.totalItems, { transform: numberAttribute });\n\n /**\n * Number of items displayed on a single page.\n */\n readonly pageSize = input<number, unknown>(DefaultConfig.pageSize, { transform: numberAttribute });\n\n /**\n * Currently selected page number.\n */\n readonly currentPage = input<number, unknown>(DefaultConfig.currentPage, { transform: numberAttribute });\n\n /**\n * Number of pagination links visible around the current page.\n */\n readonly pageWindowSize = input<number, unknown>(DefaultConfig.pageWindowSize, { transform: numberAttribute });\n\n /**\n * Emits a pagination event each time the page changes.\n */\n readonly page = output<EclPaginationEvent>();\n\n /**\n * Adds the `ecl-pagination` class to the host element.\n */\n @HostBinding('class.ecl-pagination') cmpClass = true;\n\n /**\n * Sets the ARIA role to indicate navigation.\n */\n @HostBinding('attr.role') role = 'navigation';\n\n /**\n * Reference to the pagination list directive inside the component's content.\n */\n @ContentChild(EclPaginationListDirective) eclPaginationList: EclPaginationListDirective;\n\n /**\n * Internal pagination model storing pagination data and logic.\n */\n public model = EuiPagination.create();\n\n /**\n * Lifecycle hook that runs once after component initialization.\n * In automatic mode, triggers an initial page event.\n */\n ngOnInit(): void {\n if (this.isModeAuto()) {\n setTimeout(() => {\n this.firePageEvent();\n });\n }\n }\n\n /**\n * Lifecycle hook called on input changes.\n * Re-creates the pagination model in automatic mode.\n */\n ngOnChanges(): void {\n if (this.isModeAuto()) {\n this.model = EuiPagination.create({\n totalItems: this.totalItems(),\n pageSize: this.pageSize(),\n currentPage: this.currentPage(),\n pageWindowSize: this.pageWindowSize(),\n });\n }\n }\n\n /**\n * Returns true if the pagination list exists in the template.\n */\n get hasList(): boolean {\n return !!this.eclPaginationList;\n }\n \n /**\n * Navigates to the previous page and emits a page change event.\n */\n onPreviousPage(): void {\n this.model.goToPreviousPage();\n this.firePageEvent();\n }\n\n /**\n * Navigates to the next page and emits a page change event.\n */\n onNextPage(): void {\n this.model.goToNextPage();\n this.firePageEvent();\n }\n\n /**\n * Navigates to a specific page and emits a page change event.\n *\n * @param page The page number to navigate to.\n */\n onPage(page: number): void {\n this.model.goToPage(page);\n this.firePageEvent();\n }\n\n /**\n * Checks if the component is in automatic mode.\n */\n isModeAuto(): boolean {\n return this.mode() === 'auto';\n }\n\n /**\n * Emits the page change event with the current pagination state.\n */\n private firePageEvent(): void {\n const evt = new EclPaginationEvent(this.model.getCurrentPage(), this.model.getShowingFrom(), this.model.getShowingTo());\n\n this.page.emit(evt);\n }\n}\n","@if(!hasList) {\n <ul class=\"ecl-pagination__list\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </ul>\n } @else {\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n }\n \n <ng-template #content>\n @if (isModeAuto()){\n @if(model.hasPreviousPage()){\n <li eclPaginationItem [isPrevious]=\"true\" (pageClick)=\"onPreviousPage()\"> </li>\n }\n @for (page of model.getPages(); track page) {\n <li eclPaginationItem\n [label]=\"page.toString()\"\n [isCurrent]=\"model.getCurrentPage() === page\"\n (pageClick)=\"onPage(page)\"\n [pagesCount]=\"model.getPagesCount().toString()\">\n </li>\n }\n \n @if(model.hasNextPage()){\n <li eclPaginationItem [isNext]=\"true\" (pageClick)=\"onNextPage()\"> </li>\n }\n }\n \n @if(!isModeAuto()) {\n <ng-content></ng-content>\n }\n </ng-template>","import { EclPaginationItemComponent } from './ecl-pagination-item.component';\nimport { EclPaginationListDirective } from './ecl-pagination-list.directive';\nimport { EclPaginationComponent } from './ecl-pagination.component';\n\nexport * from './ecl-pagination.component';\nexport * from './ecl-pagination-item.component';\nexport * from './events/ecl-pagination.event';\nexport * from './ecl-pagination-list.directive';\n\nexport const EUI_ECL_PAGINATION = [\n EclPaginationComponent, EclPaginationItemComponent, EclPaginationListDirective,\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-pagination.mjs","sources":["../../components/ecl-pagination/ecl-pagination-item.component.ts","../../components/ecl-pagination/ecl-pagination-item.component.html","../../components/ecl-pagination/ecl-pagination-list.directive.ts","../../components/ecl-pagination/events/ecl-pagination.event.ts","../../components/ecl-pagination/ecl-pagination.component.ts","../../components/ecl-pagination/ecl-pagination.component.html","../../components/ecl-pagination/index.ts","../../components/ecl-pagination/eui-ecl-components-ecl-pagination.ts"],"sourcesContent":["import { Component, ElementRef, HostBinding, Input, ViewEncapsulation, booleanAttribute, inject, output, input } from '@angular/core';\nimport { Params, QueryParamsHandling, RouterLink, RouterLinkWithHref } from '@angular/router';\nimport { TranslatePipe } from '@ngx-translate/core';\nimport { EclBaseEvent } from '@eui/ecl/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EUI_ECL_ICON } from '@eui/ecl/components/ecl-icon';\nimport { EUI_ECL_LINK } from '@eui/ecl/components/ecl-link';\n\n/**\n * Event emitted when a pagination item is clicked.\n */\nexport class EclPaginationItemClickEvent extends EclBaseEvent {}\n\n@Component({\n selector: 'li[eclPaginationItem]',\n templateUrl: './ecl-pagination-item.component.html',\n imports: [RouterLink, RouterLinkWithHref, TranslatePipe, ...EUI_ECL_ICON, ...EUI_ECL_LINK],\n encapsulation: ViewEncapsulation.None,\n})\nexport class EclPaginationItemComponent extends ECLBaseDirective {\n el = inject(ElementRef);\n\n @HostBinding('class')\n get cssClasses(): string {\n return [\n super.getCssClasses('ecl-pagination__item'),\n this.isCurrent() ? 'ecl-pagination__item--current' : '',\n this.isNext() ? 'ecl-pagination__item--next' : '',\n this.isPrevious() ? 'ecl-pagination__item--previous' : '',\n ]\n .join(' ')\n .trim();\n }\n\n /**\n * Sets the `role` attribute for accessibility.\n */\n @HostBinding('attr.role') role = 'listitem';\n\n /**\n * Text content of the pagination item.\n */\n readonly label = input<string>(undefined);\n\n /**\n * Value for the `aria-label` attribute used for accessibility.\n */\n readonly ariaLabel = input<string>(undefined);\n\n /**\n * Total number of pages displayed by the pagination component.\n */\n @Input() pagesCount: string;\n\n /**\n * Adds the `ecl-pagination__item--current` class when true.\n */\n readonly isCurrent = input<boolean, unknown>(undefined, { transform: booleanAttribute });\n\n /**\n * Adds the `ecl-pagination__item--next` class when true.\n */\n readonly isNext = input<boolean, unknown>(undefined, { transform: booleanAttribute });\n\n /**\n * Adds the `ecl-pagination__item--previous` class when true.\n */\n readonly isPrevious = input<boolean, unknown>(undefined, { transform: booleanAttribute });\n\n /**\n * Adds the `ecl-pagination__item--truncation` class when true.\n */\n @Input({ transform: booleanAttribute }) @HostBinding('class.ecl-pagination__item--truncation') isTruncated = false;\n\n /**\n * Router navigation link for Angular routing.\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n @Input() routerLink: string | any[] = null;\n\n /**\n * Query parameters for the router link.\n */\n readonly queryParams = input<Params | null>(null);\n\n /**\n * Determines how query parameters are handled during navigation.\n */\n readonly queryParamsHandling = input<QueryParamsHandling>(null);\n\n /**\n * Href link for navigation.\n */\n readonly href = input<string>(null);\n\n /**\n * Emits when the pagination item is clicked.\n */\n readonly pageClick = output<EclPaginationItemClickEvent>();\n\n get anchorRole(): string | null {\n return !this.href() && !this.routerLink ? 'button' : null;\n }\n\n /**\n * Adds relevant classes to the host element.\n */\n constructor() {\n super();\n const el = this.el;\n\n if (el.nativeElement.tagName.toLowerCase() === 'ecl-pagination-item') {\n console.warn('\"ecl-pagination-item\" selector is deprecated; use \"li[eclPaginationItem]\" instead.');\n }\n }\n\n /**\n * Returns true if this item is an icon-only element (previous or next page).\n */\n get isIconOnly(): boolean {\n return this.isPrevOrNextVisible();\n }\n\n /**\n * Handles the click event and emits the `pageClick` output.\n * Prevents event propagation if no href is defined.\n *\n * @param evt Event object from the DOM click event.\n */\n onPageClick(evt: Event): void {\n this.pageClick.emit(new EclPaginationItemClickEvent());\n if (!this.href()) {\n evt.stopPropagation();\n }\n }\n\n /**\n * Returns the i18n translation key for the ARIA label.\n */\n geti18nPageAriaLabelKey(): string {\n let key = '';\n\n if (this.isNext()) {\n key = 'ecl.pagination.GO-TO-NEXT-PAGE';\n } else if (this.isPrevious()) {\n key = 'ecl.pagination.GO-TO-PREV-PAGE';\n } else {\n key = 'ecl.pagination.GO-TO-PAGE';\n }\n return key;\n }\n\n /**\n * Returns the i18n translation key for the visible label.\n */\n geti18nPageLabelKey(): string {\n let key = '';\n\n if (this.isNext()) {\n key = 'ecl.pagination.NEXT';\n } else if (this.isPrevious()) {\n key = 'ecl.pagination.PREVIOUS';\n }\n return key;\n }\n\n /**\n * Returns true if the item is either previous or next.\n */\n isPrevOrNextVisible(): boolean {\n return this.isPrevious() || this.isNext();\n }\n}\n","@if (!isCurrent() && !isTruncated) {\n@if(routerLink){\n<a eclLink [isIconOnly]=\"isIconOnly\" (keydown.enter)=\"onPageClick($event)\" (click)=\"onPageClick($event)\" variant=\"standalone\"\n attr.aria-label=\"{{ ariaLabel() || geti18nPageAriaLabelKey() | translate: { pageNumber: label() } }}\" [attr.role]=\"anchorRole\"\n [routerLink]=\"routerLink\" [queryParams]=\"queryParams()\" [queryParamsHandling]=\"queryParamsHandling()\"\n class=\"ecl-pagination__link eui-ecl-u-cursor-pointer\" tabindex=\"{{tabindex ? tabindex : 0}}\">\n @if (isPrevious()) {\n <ecl-icon icon=\"corner-arrow\" size=\"xs\" transform=\"rotate-270\"></ecl-icon>\n }\n <span eclLinkLabel>{{ label() || geti18nPageLabelKey() | translate }}</span>\n @if (isNext()) {\n <ecl-icon icon=\"corner-arrow\" size=\"xs\" transform=\"rotate-90\"></ecl-icon>\n }\n</a>\n}\n\n@if (!routerLink) {\n<a eclLink [isIconOnly]=\"isIconOnly\" (keydown.enter)=\"onPageClick($event)\" (click)=\"onPageClick($event)\" variant=\"standalone\"\n attr.aria-label=\"{{ ariaLabel() || geti18nPageAriaLabelKey() | translate: { pageNumber: label() } }}\" [attr.href]=\"href()\"\n class=\"ecl-pagination__link eui-ecl-u-cursor-pointer\" tabindex=\"{{tabindex ? tabindex : 0}}\" [attr.role]=\"anchorRole\">\n @if (isPrevious()) {\n <ecl-icon icon=\"corner-arrow\" size=\"xs\" transform=\"rotate-270\"></ecl-icon>\n }\n <span eclLinkLabel>{{ label() || geti18nPageLabelKey() | translate }}</span>\n @if (isNext()) {\n <ecl-icon icon=\"corner-arrow\" size=\"xs\" transform=\"rotate-90\"></ecl-icon>\n }\n</a>\n}\n}\n\n@else if (isTruncated) {\n<span class=\"ecl-pagination__text ecl-pagination__text--summary\" aria-current=\"true\">\n {{ label() }}\n</span>\n}\n@else {\n<span class=\"ecl-pagination__text ecl-pagination__text--summary\" aria-current=\"true\">\n {{ label() }}\n</span>\n\n<span class=\"ecl-pagination__text ecl-pagination__text--full\" aria-current=\"true\">\n {{ 'ecl.pagination.PAGE' | translate: { pageNumber: label() } }}\n @if(pagesCount) {\n {{ 'ecl.common.OF' | translate}} {{pagesCount}}\n }\n</span>\n}","import { Directive, HostBinding } from '@angular/core';\nimport { ECLBaseDirective } from '@eui/ecl/core';\n\n/**\n * Directive to apply ECL styles to the pagination list element.\n * Adds the `ecl-pagination__list` class to the host element.\n */\n@Directive({\n selector: '[eclPaginationList]',\n})\nexport class EclPaginationListDirective extends ECLBaseDirective {\n /**\n * Adds the `ecl-pagination__list` class to the host element.\n */\n @HostBinding('class.ecl-pagination__list') hasClass = true;\n}\n","import { EclBaseEvent } from '@eui/ecl/core';\n\n/**\n * Event emitted by EclPaginationComponent when the page changes.\n * Contains information about the current page and visible item range.\n */\nexport class EclPaginationEvent extends EclBaseEvent {\n /**\n * Current page number after the change.\n */\n constructor(\n public readonly page: number,\n\n /**\n * Index of the first item shown on the current page.\n */\n public readonly showingFrom: number,\n\n /**\n * Index of the last item shown on the current page.\n */\n public readonly showingTo: number,\n ) {\n super();\n }\n}\n","import { Component, HostBinding, OnChanges, OnInit, numberAttribute, output, input, contentChild } from '@angular/core';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { DefaultConfig, EuiPagination } from '@eui/base';\nimport { ECLBaseDirective } from '@eui/ecl/core';\nimport { EclPaginationEvent } from './events/ecl-pagination.event';\nimport { EclPaginationListDirective } from './ecl-pagination-list.directive';\nimport { EclPaginationItemComponent } from './ecl-pagination-item.component';\n\n/**\n * Component rendering the ECL pagination.\n * Supports manual and automatic modes.\n * Emits page change events and manages pagination logic.\n */\n@Component({\n selector: 'ecl-pagination',\n templateUrl: './ecl-pagination.component.html',\n imports: [NgTemplateOutlet, EclPaginationItemComponent],\n styles: [\n `\n :host {\n display: block;\n }\n `,\n ],\n})\nexport class EclPaginationComponent extends ECLBaseDirective implements OnInit, OnChanges {\n /**\n * Defines the pagination mode.\n * - `manual` - component waits for external events to change pages.\n * - `auto` - component manages the pages automatically based on inputs.\n */\n readonly mode = input<'manual' | 'auto'>('manual');\n\n /**\n * Total number of items in the list.\n */\n readonly totalItems = input<number, unknown>(DefaultConfig.totalItems, { transform: numberAttribute });\n\n /**\n * Number of items displayed on a single page.\n */\n readonly pageSize = input<number, unknown>(DefaultConfig.pageSize, { transform: numberAttribute });\n\n /**\n * Currently selected page number.\n */\n readonly currentPage = input<number, unknown>(DefaultConfig.currentPage, { transform: numberAttribute });\n\n /**\n * Number of pagination links visible around the current page.\n */\n readonly pageWindowSize = input<number, unknown>(DefaultConfig.pageWindowSize, { transform: numberAttribute });\n\n /**\n * Emits a pagination event each time the page changes.\n */\n readonly page = output<EclPaginationEvent>();\n\n /**\n * Adds the `ecl-pagination` class to the host element.\n */\n @HostBinding('class.ecl-pagination') cmpClass = true;\n\n /**\n * Sets the ARIA role to indicate navigation.\n */\n @HostBinding('attr.role') role = 'navigation';\n\n /**\n * Reference to the pagination list directive inside the component's content.\n */\n readonly eclPaginationList = contentChild(EclPaginationListDirective);\n\n /**\n * Internal pagination model storing pagination data and logic.\n */\n public model = EuiPagination.create();\n\n /**\n * Lifecycle hook that runs once after component initialization.\n * In automatic mode, triggers an initial page event.\n */\n ngOnInit(): void {\n if (this.isModeAuto()) {\n setTimeout(() => {\n this.firePageEvent();\n });\n }\n }\n\n /**\n * Lifecycle hook called on input changes.\n * Re-creates the pagination model in automatic mode.\n */\n ngOnChanges(): void {\n if (this.isModeAuto()) {\n this.model = EuiPagination.create({\n totalItems: this.totalItems(),\n pageSize: this.pageSize(),\n currentPage: this.currentPage(),\n pageWindowSize: this.pageWindowSize(),\n });\n }\n }\n\n /**\n * Returns true if the pagination list exists in the template.\n */\n get hasList(): boolean {\n return !!this.eclPaginationList();\n }\n \n /**\n * Navigates to the previous page and emits a page change event.\n */\n onPreviousPage(): void {\n this.model.goToPreviousPage();\n this.firePageEvent();\n }\n\n /**\n * Navigates to the next page and emits a page change event.\n */\n onNextPage(): void {\n this.model.goToNextPage();\n this.firePageEvent();\n }\n\n /**\n * Navigates to a specific page and emits a page change event.\n *\n * @param page The page number to navigate to.\n */\n onPage(page: number): void {\n this.model.goToPage(page);\n this.firePageEvent();\n }\n\n /**\n * Checks if the component is in automatic mode.\n */\n isModeAuto(): boolean {\n return this.mode() === 'auto';\n }\n\n /**\n * Emits the page change event with the current pagination state.\n */\n private firePageEvent(): void {\n const evt = new EclPaginationEvent(this.model.getCurrentPage(), this.model.getShowingFrom(), this.model.getShowingTo());\n\n this.page.emit(evt);\n }\n}\n","@if(!hasList) {\n <ul class=\"ecl-pagination__list\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </ul>\n } @else {\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n }\n \n <ng-template #content>\n @if (isModeAuto()){\n @if(model.hasPreviousPage()){\n <li eclPaginationItem [isPrevious]=\"true\" (pageClick)=\"onPreviousPage()\"> </li>\n }\n @for (page of model.getPages(); track page) {\n <li eclPaginationItem\n [label]=\"page.toString()\"\n [isCurrent]=\"model.getCurrentPage() === page\"\n (pageClick)=\"onPage(page)\"\n [pagesCount]=\"model.getPagesCount().toString()\">\n </li>\n }\n \n @if(model.hasNextPage()){\n <li eclPaginationItem [isNext]=\"true\" (pageClick)=\"onNextPage()\"> </li>\n }\n }\n \n @if(!isModeAuto()) {\n <ng-content></ng-content>\n }\n </ng-template>","import { EclPaginationItemComponent } from './ecl-pagination-item.component';\nimport { EclPaginationListDirective } from './ecl-pagination-list.directive';\nimport { EclPaginationComponent } from './ecl-pagination.component';\n\nexport * from './ecl-pagination.component';\nexport * from './ecl-pagination-item.component';\nexport * from './events/ecl-pagination.event';\nexport * from './ecl-pagination-list.directive';\n\nexport const EUI_ECL_PAGINATION = [\n EclPaginationComponent, EclPaginationItemComponent, EclPaginationListDirective,\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, HostListener, HostBinding, Output, Directive, output, Renderer2, DOCUMENT, PLATFORM_ID, ContentChild, ViewChild, Component } from '@angular/core';
2
+ import { inject, ElementRef, EventEmitter, HostListener, HostBinding, Output, Directive, viewChild, contentChild, output, Renderer2, DOCUMENT, PLATFORM_ID, Component } from '@angular/core';
3
3
  import { Subject, fromEvent, auditTime, takeUntil } from 'rxjs';
4
4
  import * as i1 from '@eui/ecl/core';
5
5
  import { ECLBaseDirective, ECLClickOutsideDirective } from '@eui/ecl/core';
@@ -94,6 +94,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImpor
94
94
  class EclPopoverComponent extends ECLBaseDirective {
95
95
  constructor() {
96
96
  super(...arguments);
97
+ /**
98
+ * Reference to the popover container element.
99
+ */
100
+ this.eclPopoverContainerElement = viewChild('container', /* @ts-ignore */
101
+ ...(ngDevMode ? [{ debugName: "eclPopoverContainerElement" }] : /* istanbul ignore next */ []));
102
+ /**
103
+ * Reference to the scrollable content element inside the popover.
104
+ */
105
+ this.eclPopoverScrollableElement = viewChild('scrollable', /* @ts-ignore */
106
+ ...(ngDevMode ? [{ debugName: "eclPopoverScrollableElement" }] : /* istanbul ignore next */ []));
107
+ /**
108
+ * Reference to the toggle element used to open/close the popover.
109
+ */
110
+ this.eclPopoverToggle = contentChild(EclPopoverToggleDirective, /* @ts-ignore */
111
+ ...(ngDevMode ? [{ debugName: "eclPopoverToggle" }] : /* istanbul ignore next */ []));
97
112
  this.openEvent = output();
98
113
  this.closeEvent = output();
99
114
  /**
@@ -142,7 +157,7 @@ class EclPopoverComponent extends ECLBaseDirective {
142
157
  ngAfterContentInit() {
143
158
  if (!isPlatformBrowser(this.platformId))
144
159
  return;
145
- this.eclPopoverToggle?.click.pipe(takeUntil(this.destroy$)).subscribe(() => {
160
+ this.eclPopoverToggle()?.click.pipe(takeUntil(this.destroy$)).subscribe(() => {
146
161
  if (this.isHidden) {
147
162
  this.doOpen();
148
163
  }
@@ -151,7 +166,7 @@ class EclPopoverComponent extends ECLBaseDirective {
151
166
  }
152
167
  this.checkPosition(); // TODO: wrap on a platformBrowser check as it calls window and document
153
168
  });
154
- this.scrollableParent = this.getClosestScrollableParent(this.eclPopoverToggle.hostElementRef.nativeElement);
169
+ this.scrollableParent = this.getClosestScrollableParent(this.eclPopoverToggle()?.hostElementRef.nativeElement);
155
170
  }
156
171
  /**
157
172
  * Lifecycle hook that cleans up subscriptions on destroy.
@@ -165,7 +180,7 @@ class EclPopoverComponent extends ECLBaseDirective {
165
180
  * if available. Used for accessibility linking.
166
181
  */
167
182
  get popoverToggleAriaControls() {
168
- return this.eclPopoverToggle?.hostElementRef.nativeElement.getAttribute('aria-controls');
183
+ return this.eclPopoverToggle()?.hostElementRef.nativeElement.getAttribute('aria-controls');
169
184
  }
170
185
  /**
171
186
  * Handler triggered when a click outside the popover is detected.
@@ -265,7 +280,7 @@ class EclPopoverComponent extends ECLBaseDirective {
265
280
  if (!isPlatformBrowser(this.platformId))
266
281
  return;
267
282
  this.resetStyles();
268
- const { containerWidth, spaceTop, spaceBottom, spaceLeft, spaceRight } = this.calculateAvailableSpace(this.eclPopoverToggle.getHostElement(), this.scrollableParent);
283
+ const { containerWidth, spaceTop, spaceBottom, spaceLeft, spaceRight } = this.calculateAvailableSpace(this.eclPopoverToggle().getHostElement(), this.scrollableParent);
269
284
  // Find the direction with the most available space
270
285
  const positioningClass = 'ecl-popover--';
271
286
  let direction = '';
@@ -285,7 +300,7 @@ class EclPopoverComponent extends ECLBaseDirective {
285
300
  }
286
301
  this.renderer.addClass(this.el.nativeElement, `${positioningClass}${direction}`);
287
302
  // Try to use as much of the available width, respecting the max-width set.
288
- const styles = this.window.getComputedStyle(this.eclPopoverScrollableElement.nativeElement);
303
+ const styles = this.window.getComputedStyle(this.eclPopoverScrollableElement().nativeElement);
289
304
  const maxWidth = parseInt(styles.getPropertyValue('max-width'), 10);
290
305
  const minWidth = parseInt(styles.getPropertyValue('min-width'), 10);
291
306
  const padding = parseInt(styles.getPropertyValue('padding-left'), 10) * 2;
@@ -311,11 +326,11 @@ class EclPopoverComponent extends ECLBaseDirective {
311
326
  targetWidth = (horizontalSpace - padding) * 2;
312
327
  }
313
328
  // Ensure the width does not exceed available space
314
- this.renderer.setStyle(this.eclPopoverScrollableElement.nativeElement, 'width', `${targetWidth}px`);
329
+ this.renderer.setStyle(this.eclPopoverScrollableElement().nativeElement, 'width', `${targetWidth}px`);
315
330
  this.handlePushClass(direction);
316
331
  }
317
332
  resetStyles() {
318
- const popoverContainer = this.eclPopoverContainerElement.nativeElement;
333
+ const popoverContainer = this.eclPopoverContainerElement().nativeElement;
319
334
  this.renderer.removeClass(this.el.nativeElement, this.topClass);
320
335
  this.renderer.removeClass(this.el.nativeElement, this.bottomClass);
321
336
  this.renderer.removeClass(this.el.nativeElement, this.leftClass);
@@ -330,7 +345,7 @@ class EclPopoverComponent extends ECLBaseDirective {
330
345
  this.renderer.removeStyle(popoverContainer, 'left');
331
346
  this.renderer.removeStyle(popoverContainer, 'bottom');
332
347
  this.renderer.removeStyle(popoverContainer, 'transform');
333
- this.renderer.removeStyle(this.eclPopoverScrollableElement.nativeElement, 'width');
348
+ this.renderer.removeStyle(this.eclPopoverScrollableElement().nativeElement, 'width');
334
349
  }
335
350
  /**
336
351
  * Check whether the popover is going out of its scrollable container and apply the needed repositioning.
@@ -339,7 +354,7 @@ class EclPopoverComponent extends ECLBaseDirective {
339
354
  */
340
355
  handlePushClass(direction) {
341
356
  requestAnimationFrame(() => {
342
- const popoverRect = this.eclPopoverContainerElement.nativeElement.getBoundingClientRect();
357
+ const popoverRect = this.eclPopoverContainerElement().nativeElement.getBoundingClientRect();
343
358
  const scrollableRect = this.scrollableParent.getBoundingClientRect();
344
359
  const containerBottom = scrollableRect.bottom > this.window.innerHeight ? 0 : this.window.innerHeight - scrollableRect.bottom;
345
360
  const containerTop = scrollableRect.top > this.window.innerHeight ? 0 : scrollableRect.top;
@@ -348,83 +363,74 @@ class EclPopoverComponent extends ECLBaseDirective {
348
363
  const topOverflow = popoverRect.top < containerTop;
349
364
  const bottomOverflow = containerBottom > this.window.innerHeight - popoverRect.bottom;
350
365
  if (direction === 'left' || direction === 'right') {
366
+ const eclPopoverContainerElement = this.eclPopoverContainerElement();
351
367
  if (topOverflow) {
352
368
  this.renderer.addClass(this.el.nativeElement, this.pushTopClass);
353
369
  // Push the popover to the top edge of the container
354
- this.renderer.setStyle(this.eclPopoverContainerElement.nativeElement, 'top', `-${Math.round(this.toggleRect.top)}px`);
355
- this.renderer.setStyle(this.eclPopoverContainerElement.nativeElement, 'bottom', '');
356
- this.renderer.setStyle(this.eclPopoverContainerElement.nativeElement, 'transform', '');
370
+ this.renderer.setStyle(eclPopoverContainerElement.nativeElement, 'top', `-${Math.round(this.toggleRect.top)}px`);
371
+ this.renderer.setStyle(eclPopoverContainerElement.nativeElement, 'bottom', '');
372
+ this.renderer.setStyle(eclPopoverContainerElement.nativeElement, 'transform', '');
357
373
  }
358
374
  if (bottomOverflow) {
359
375
  this.renderer.addClass(this.el.nativeElement, this.pushBottomClass);
360
376
  // Push the popover to the bottom edge of the container
361
- this.renderer.setStyle(this.eclPopoverContainerElement.nativeElement, 'bottom', `-${this.window.innerHeight - this.toggleRect.bottom - containerBottom}px`);
362
- this.renderer.setStyle(this.eclPopoverContainerElement.nativeElement, 'top', '');
363
- this.renderer.setStyle(this.eclPopoverContainerElement.nativeElement, 'transform', '');
377
+ this.renderer.setStyle(eclPopoverContainerElement.nativeElement, 'bottom', `-${this.window.innerHeight - this.toggleRect.bottom - containerBottom}px`);
378
+ this.renderer.setStyle(eclPopoverContainerElement.nativeElement, 'top', '');
379
+ this.renderer.setStyle(eclPopoverContainerElement.nativeElement, 'transform', '');
364
380
  }
365
381
  }
366
382
  else {
383
+ const eclPopoverContainerElement = this.eclPopoverContainerElement();
367
384
  if (leftOverflow) {
368
385
  this.renderer.addClass(this.el.nativeElement, this.pushLeftClass);
369
386
  // Push the popover 8px to the left edge of the container
370
- this.renderer.setStyle(this.eclPopoverContainerElement.nativeElement, 'left', `-${this.toggleRect.left - scrollableRect.left - 8}px`);
371
- this.renderer.setStyle(this.eclPopoverContainerElement.nativeElement, 'right', 'auto');
387
+ this.renderer.setStyle(eclPopoverContainerElement.nativeElement, 'left', `-${this.toggleRect.left - scrollableRect.left - 8}px`);
388
+ this.renderer.setStyle(eclPopoverContainerElement.nativeElement, 'right', 'auto');
372
389
  }
373
390
  if (rightOverflow) {
374
391
  this.renderer.addClass(this.el.nativeElement, this.pushRightClass);
375
392
  // Push the popover 8px to the right edge of the container
376
- this.renderer.setStyle(this.eclPopoverContainerElement.nativeElement, 'right', `-${scrollableRect.right - this.toggleRect.right - 8}px`);
377
- this.renderer.setStyle(this.eclPopoverContainerElement.nativeElement, 'left', 'auto');
393
+ this.renderer.setStyle(eclPopoverContainerElement.nativeElement, 'right', `-${scrollableRect.right - this.toggleRect.right - 8}px`);
394
+ this.renderer.setStyle(eclPopoverContainerElement.nativeElement, 'left', 'auto');
378
395
  }
379
396
  }
380
397
  this.handleArrowPosition(direction);
381
398
  });
382
399
  }
383
400
  handleArrowPosition(direction) {
384
- const popoverRect = this.eclPopoverContainerElement.nativeElement.getBoundingClientRect();
401
+ const popoverRect = this.eclPopoverContainerElement().nativeElement.getBoundingClientRect();
385
402
  if (direction === 'left' || direction === 'right') {
386
403
  if (this.el.nativeElement.classList.contains(this.pushBottomClass)) {
387
- this.renderer.setStyle(this.eclPopoverContainerElement.nativeElement, '--ecl-popover-position', `${Math.round(this.toggleRect.top - popoverRect.top + this.toggleRect.height / 2)}px`);
404
+ this.renderer.setStyle(this.eclPopoverContainerElement().nativeElement, '--ecl-popover-position', `${Math.round(this.toggleRect.top - popoverRect.top + this.toggleRect.height / 2)}px`);
388
405
  }
389
406
  else if (this.el.nativeElement.classList.contains(this.pushTopClass)) {
390
- this.renderer.setStyle(this.eclPopoverContainerElement.nativeElement, '--ecl-popover-position', `${Math.round(popoverRect.top + this.toggleRect.top + this.toggleRect.height / 2)}px`);
407
+ this.renderer.setStyle(this.eclPopoverContainerElement().nativeElement, '--ecl-popover-position', `${Math.round(popoverRect.top + this.toggleRect.top + this.toggleRect.height / 2)}px`);
391
408
  }
392
409
  }
393
410
  else {
394
- // eslint-disable-next-line no-lonely-if
395
411
  if (this.el.nativeElement.classList.contains(this.pushRightClass)) {
396
- this.renderer.setStyle(this.eclPopoverContainerElement.nativeElement, '--ecl-popover-position', `${Math.round(popoverRect.right - (this.toggleRect.right - this.toggleRect.width / 2))}px`);
412
+ this.renderer.setStyle(this.eclPopoverContainerElement().nativeElement, '--ecl-popover-position', `${Math.round(popoverRect.right - (this.toggleRect.right - this.toggleRect.width / 2))}px`);
397
413
  }
398
414
  else if (this.el.nativeElement.classList.contains(this.pushLeftClass)) {
399
- this.renderer.setStyle(this.eclPopoverContainerElement.nativeElement, '--ecl-popover-position', `${Math.round(this.toggleRect.left - popoverRect.left + this.toggleRect.width / 2)}px`);
415
+ this.renderer.setStyle(this.eclPopoverContainerElement().nativeElement, '--ecl-popover-position', `${Math.round(this.toggleRect.left - popoverRect.left + this.toggleRect.width / 2)}px`);
400
416
  }
401
417
  }
402
418
  }
403
419
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: EclPopoverComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
404
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.0.5", type: EclPopoverComponent, isStandalone: true, selector: "ecl-popover", outputs: { openEvent: "openEvent", closeEvent: "closeEvent" }, host: { listeners: { "eclClickOutside": "onClickOutsidePopover()", "document:keydown.escape": "onEscapeKeydownHandler()", "document:scroll": "onDocumentScroll()" }, properties: { "class": "this.cssClasses" } }, queries: [{ propertyName: "eclPopoverToggle", first: true, predicate: EclPopoverToggleDirective, descendants: true }], viewQueries: [{ propertyName: "eclPopoverContainerElement", first: true, predicate: ["container"], descendants: true }, { propertyName: "eclPopoverScrollableElement", first: true, predicate: ["scrollable"], descendants: true }], usesInheritance: true, hostDirectives: [{ directive: i1.ECLClickOutsideDirective, outputs: ["eclClickOutside", "eclClickOutside"] }], ngImport: i0, template: "<ng-content select=\"[eclPopoverToggle]\"></ng-content>\n\n<div #container class=\"ecl-popover__container\" [hidden]=\"isHidden\"\n [attr.id]=\"popoverToggleAriaControls\">\n <div #scrollable class=\"ecl-popover__scrollable\">\n <button eclButton variant=\"tertiary\" (click)=\"doClose()\" class=\"ecl-popover__close\" isIconOnly type=\"button\">\n <span eclButtonLabel>Close</span>\n <ecl-icon icon=\"close\" size=\"m\"></ecl-icon>\n </button>\n <ng-content select=\"[eclPopoverContent]\"></ng-content>\n </div>\n</div>\n", dependencies: [{ 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: "component", type: i3.EclIconComponent, selector: "ecl-icon", inputs: ["iconSet", "icon", "size", "color", "transform", "ariaLabelledby", "role", "title", "ariaHidden", "focusable", "isFlipHorizontal"] }] }); }
420
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "22.0.5", type: EclPopoverComponent, isStandalone: true, selector: "ecl-popover", outputs: { openEvent: "openEvent", closeEvent: "closeEvent" }, host: { listeners: { "eclClickOutside": "onClickOutsidePopover()", "document:keydown.escape": "onEscapeKeydownHandler()", "document:scroll": "onDocumentScroll()" }, properties: { "class": "this.cssClasses" } }, queries: [{ propertyName: "eclPopoverToggle", first: true, predicate: EclPopoverToggleDirective, descendants: true, isSignal: true }], viewQueries: [{ propertyName: "eclPopoverContainerElement", first: true, predicate: ["container"], descendants: true, isSignal: true }, { propertyName: "eclPopoverScrollableElement", first: true, predicate: ["scrollable"], descendants: true, isSignal: true }], usesInheritance: true, hostDirectives: [{ directive: i1.ECLClickOutsideDirective, outputs: ["eclClickOutside", "eclClickOutside"] }], ngImport: i0, template: "<ng-content select=\"[eclPopoverToggle]\"></ng-content>\n\n<div #container class=\"ecl-popover__container\" [hidden]=\"isHidden\"\n [attr.id]=\"popoverToggleAriaControls\">\n <div #scrollable class=\"ecl-popover__scrollable\">\n <button eclButton variant=\"tertiary\" (click)=\"doClose()\" class=\"ecl-popover__close\" isIconOnly type=\"button\">\n <span eclButtonLabel>Close</span>\n <ecl-icon icon=\"close\" size=\"m\"></ecl-icon>\n </button>\n <ng-content select=\"[eclPopoverContent]\"></ng-content>\n </div>\n</div>\n", dependencies: [{ 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: "component", type: i3.EclIconComponent, selector: "ecl-icon", inputs: ["iconSet", "icon", "size", "color", "transform", "ariaLabelledby", "role", "title", "ariaHidden", "focusable", "isFlipHorizontal"] }] }); }
405
421
  }
406
422
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: EclPopoverComponent, decorators: [{
407
423
  type: Component,
408
424
  args: [{ selector: 'ecl-popover', hostDirectives: [
409
425
  {
410
426
  directive: ECLClickOutsideDirective,
411
- // eslint-disable-next-line @angular-eslint/no-outputs-metadata-property
412
427
  outputs: ['eclClickOutside'],
413
428
  },
414
429
  ], imports: [
415
430
  ...EUI_ECL_BUTTON,
416
431
  ...EUI_ECL_ICON,
417
432
  ], template: "<ng-content select=\"[eclPopoverToggle]\"></ng-content>\n\n<div #container class=\"ecl-popover__container\" [hidden]=\"isHidden\"\n [attr.id]=\"popoverToggleAriaControls\">\n <div #scrollable class=\"ecl-popover__scrollable\">\n <button eclButton variant=\"tertiary\" (click)=\"doClose()\" class=\"ecl-popover__close\" isIconOnly type=\"button\">\n <span eclButtonLabel>Close</span>\n <ecl-icon icon=\"close\" size=\"m\"></ecl-icon>\n </button>\n <ng-content select=\"[eclPopoverContent]\"></ng-content>\n </div>\n</div>\n" }]
418
- }], propDecorators: { eclPopoverContainerElement: [{
419
- type: ViewChild,
420
- args: ['container']
421
- }], eclPopoverScrollableElement: [{
422
- type: ViewChild,
423
- args: ['scrollable']
424
- }], eclPopoverToggle: [{
425
- type: ContentChild,
426
- args: [EclPopoverToggleDirective]
427
- }], openEvent: [{ type: i0.Output, args: ["openEvent"] }], closeEvent: [{ type: i0.Output, args: ["closeEvent"] }], cssClasses: [{
433
+ }], propDecorators: { eclPopoverContainerElement: [{ type: i0.ViewChild, args: ['container', { isSignal: true }] }], eclPopoverScrollableElement: [{ type: i0.ViewChild, args: ['scrollable', { isSignal: true }] }], eclPopoverToggle: [{ type: i0.ContentChild, args: [i0.forwardRef(() => EclPopoverToggleDirective), { isSignal: true }] }], openEvent: [{ type: i0.Output, args: ["openEvent"] }], closeEvent: [{ type: i0.Output, args: ["closeEvent"] }], cssClasses: [{
428
434
  type: HostBinding,
429
435
  args: ['class']
430
436
  }], onClickOutsidePopover: [{