@eui/eds 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 (232) hide show
  1. package/docs/changelog.html +41 -0
  2. package/docs/classes/EdsChipModel.html +6 -6
  3. package/docs/classes/{EuiChipTooltip.html → EdsChipTooltip.html} +2 -2
  4. package/docs/components/EdsAlert.html +27 -226
  5. package/docs/components/EdsAlertTitle.html +2 -2
  6. package/docs/components/EdsAvatar.html +35 -108
  7. package/docs/components/EdsAvatarBadge.html +2 -2
  8. package/docs/components/EdsAvatarContent.html +2 -2
  9. package/docs/components/EdsAvatarContentLabel.html +2 -2
  10. package/docs/components/EdsAvatarContentSublabel.html +2 -2
  11. package/docs/components/EdsAvatarIcon.html +2 -2
  12. package/docs/components/EdsAvatarImage.html +2 -2
  13. package/docs/components/EdsAvatarList.html +2 -2
  14. package/docs/components/EdsAvatarText.html +2 -2
  15. package/docs/components/EdsBadge.html +41 -175
  16. package/docs/components/EdsButton.html +123 -123
  17. package/docs/components/EdsChip.html +135 -254
  18. package/docs/components/EdsIcon.html +93 -145
  19. package/docs/components/EdsIconButton.html +72 -86
  20. package/docs/components/EdsIconImage.html +5 -5
  21. package/docs/components/EdsIconState.html +47 -61
  22. package/docs/components/EdsLanguageSelector.html +870 -0
  23. package/docs/components/EdsMenu.html +631 -0
  24. package/docs/components/EdsMenuItemComponent.html +728 -0
  25. package/docs/components/EdsOverlay.html +804 -0
  26. package/docs/components/EdsOverlayContent.html +315 -0
  27. package/docs/components/EdsOverlayFooter.html +315 -0
  28. package/docs/components/EdsOverlayHeader.html +458 -0
  29. package/docs/components/EdsOverlayHeaderActionItems.html +315 -0
  30. package/docs/components/EdsOverlayHeaderLabel.html +315 -0
  31. package/docs/components/EdsOverlayHeaderSublabel.html +315 -0
  32. package/docs/components/EdsPage.html +315 -0
  33. package/docs/components/EdsPageContent.html +319 -0
  34. package/docs/components/EdsPageFooter.html +387 -0
  35. package/docs/components/EdsPageHeader.html +673 -0
  36. package/docs/components/EdsPageHeaderActionItems.html +315 -0
  37. package/docs/components/EdsPageHeaderBody.html +315 -0
  38. package/docs/components/EdsPageHeaderLabel.html +315 -0
  39. package/docs/components/EdsPageHeaderSublabel.html +315 -0
  40. package/docs/components/EdsShell.html +1078 -0
  41. package/docs/components/EdsShellContent.html +315 -0
  42. package/docs/components/EdsShellFooter.html +383 -0
  43. package/docs/components/EdsShellHeader.html +383 -0
  44. package/docs/components/EdsShellHeaderApp.html +443 -0
  45. package/docs/components/EdsShellHeaderEnd.html +311 -0
  46. package/docs/components/EdsShellHeaderEnvironment.html +315 -0
  47. package/docs/components/EdsShellHeaderLogo.html +561 -0
  48. package/docs/components/EdsShellHeaderStart.html +311 -0
  49. package/docs/components/EdsShellMenuToggle.html +458 -0
  50. package/docs/components/EdsShellSidebar.html +413 -0
  51. package/docs/components/EdsShellSidebarBottomNav.html +624 -0
  52. package/docs/components/EdsShellSidebarFooter.html +315 -0
  53. package/docs/components/EdsShellSidebarHeader.html +508 -0
  54. package/docs/components/EdsShellSidebarNav.html +624 -0
  55. package/docs/components/EdsShellToolbar.html +315 -0
  56. package/docs/components/EdsShellToolbarApp.html +443 -0
  57. package/docs/components/EdsShellToolbarEnd.html +315 -0
  58. package/docs/components/EdsShellToolbarEnvironment.html +315 -0
  59. package/docs/components/EdsShellToolbarLogo.html +315 -0
  60. package/docs/components/EdsShellToolbarStart.html +315 -0
  61. package/docs/components/EdsShellTopMessage.html +574 -0
  62. package/docs/components/EdsTab.html +6 -10
  63. package/docs/components/EdsTabBody.html +6 -10
  64. package/docs/components/EdsTabHeader.html +6 -10
  65. package/docs/components/EdsTabHeaderLabel.html +2 -2
  66. package/docs/components/EdsTabHeaderLeftContent.html +2 -2
  67. package/docs/components/EdsTabHeaderRightContent.html +2 -2
  68. package/docs/components/EdsTabHeaderSublabel.html +2 -2
  69. package/docs/components/EdsTabs.html +61 -126
  70. package/docs/components/EdsTabsRightContent.html +2 -2
  71. package/docs/components/EdsTag.html +82 -182
  72. package/docs/components/EdsTooltipContainer.html +2 -2
  73. package/docs/components/EdsUserProfile.html +1336 -0
  74. package/docs/components/EdsUserProfileMenu.html +315 -0
  75. package/docs/components/EdsUserProfileMenuItem.html +511 -0
  76. package/docs/directives/{EuiBaseColorVariantsDirective.html → EdsBaseColorVariantsDirective.html} +174 -91
  77. package/docs/directives/{EuiBaseSizeVariantsDirective.html → EdsBaseSizeVariantsDirective.html} +107 -107
  78. package/docs/directives/EdsResizable.html +586 -0
  79. package/docs/directives/EdsTooltip.html +21 -21
  80. package/docs/interfaces/EdsLanguage.html +368 -0
  81. package/docs/interfaces/EdsMenuItem.html +731 -0
  82. package/docs/js/menu-wc.js +146 -5
  83. package/docs/js/search/search_index.js +2 -2
  84. package/docs/json/EdsAlert.md +7 -7
  85. package/docs/json/EdsAvatar.md +8 -7
  86. package/docs/json/EdsBadge.md +14 -14
  87. package/docs/json/EdsBaseColorVariantsDirective.md +22 -0
  88. package/docs/json/EdsBaseSizeVariantsDirective.md +23 -0
  89. package/docs/json/EdsButton.md +21 -21
  90. package/docs/json/EdsChip.md +15 -14
  91. package/docs/json/EdsIcon.md +23 -23
  92. package/docs/json/EdsIconButton.md +18 -17
  93. package/docs/json/EdsIconImage.md +10 -10
  94. package/docs/json/EdsIconState.md +12 -12
  95. package/docs/json/EdsLanguageSelector.md +16 -0
  96. package/docs/json/EdsMenu.md +17 -0
  97. package/docs/json/EdsMenuItemComponent.md +18 -0
  98. package/docs/json/EdsOverlay.md +19 -0
  99. package/docs/json/EdsOverlayContent.md +8 -0
  100. package/docs/json/EdsOverlayFooter.md +8 -0
  101. package/docs/json/EdsOverlayHeader.md +11 -0
  102. package/docs/json/EdsOverlayHeaderActionItems.md +8 -0
  103. package/docs/json/EdsOverlayHeaderLabel.md +8 -0
  104. package/docs/json/EdsOverlayHeaderSublabel.md +8 -0
  105. package/docs/json/EdsPage.md +8 -0
  106. package/docs/json/EdsPageContent.md +8 -0
  107. package/docs/json/EdsPageFooter.md +11 -0
  108. package/docs/json/EdsPageHeader.md +18 -0
  109. package/docs/json/EdsPageHeaderActionItems.md +8 -0
  110. package/docs/json/EdsPageHeaderBody.md +8 -0
  111. package/docs/json/EdsPageHeaderLabel.md +8 -0
  112. package/docs/json/EdsPageHeaderSublabel.md +8 -0
  113. package/docs/json/EdsResizable.md +24 -0
  114. package/docs/json/EdsShell.md +14 -0
  115. package/docs/json/EdsShellContent.md +8 -0
  116. package/docs/json/EdsShellFooter.md +11 -0
  117. package/docs/json/EdsShellHeader.md +11 -0
  118. package/docs/json/EdsShellHeaderApp.md +13 -0
  119. package/docs/json/EdsShellHeaderEnd.md +8 -0
  120. package/docs/json/EdsShellHeaderEnvironment.md +8 -0
  121. package/docs/json/EdsShellHeaderLogo.md +15 -0
  122. package/docs/json/EdsShellHeaderStart.md +8 -0
  123. package/docs/json/EdsShellMenuToggle.md +11 -0
  124. package/docs/json/EdsShellSidebar.md +12 -0
  125. package/docs/json/EdsShellSidebarBottomNav.md +17 -0
  126. package/docs/json/EdsShellSidebarFooter.md +8 -0
  127. package/docs/json/EdsShellSidebarHeader.md +15 -0
  128. package/docs/json/EdsShellSidebarNav.md +17 -0
  129. package/docs/json/EdsShellToolbar.md +8 -0
  130. package/docs/json/EdsShellToolbarApp.md +13 -0
  131. package/docs/json/EdsShellToolbarEnd.md +8 -0
  132. package/docs/json/EdsShellToolbarEnvironment.md +8 -0
  133. package/docs/json/EdsShellToolbarLogo.md +8 -0
  134. package/docs/json/EdsShellToolbarStart.md +8 -0
  135. package/docs/json/EdsShellTopMessage.md +19 -0
  136. package/docs/json/EdsTabs.md +4 -4
  137. package/docs/json/EdsTag.md +14 -13
  138. package/docs/json/EdsTooltip.md +7 -7
  139. package/docs/json/EdsUserProfile.md +21 -0
  140. package/docs/json/EdsUserProfileMenu.md +8 -0
  141. package/docs/json/EdsUserProfileMenuItem.md +8 -0
  142. package/docs/json/documentation.json +9649 -5338
  143. package/docs/llms.txt +641 -123
  144. package/docs/miscellaneous/typealiases.html +309 -0
  145. package/docs/miscellaneous/variables.html +342 -0
  146. package/docs/overview.html +3 -3
  147. package/docs/properties.html +1 -1
  148. package/eds-language-selector/package.json +4 -0
  149. package/eds-menu/package.json +4 -0
  150. package/eds-overlay/package.json +4 -0
  151. package/eds-page/package.json +4 -0
  152. package/eds-resizable/package.json +4 -0
  153. package/eds-shell/package.json +4 -0
  154. package/eds-user-profile/package.json +4 -0
  155. package/fesm2022/eui-eds-eds-alert.mjs +33 -61
  156. package/fesm2022/eui-eds-eds-alert.mjs.map +1 -1
  157. package/fesm2022/eui-eds-eds-avatar.mjs +29 -43
  158. package/fesm2022/eui-eds-eds-avatar.mjs.map +1 -1
  159. package/fesm2022/eui-eds-eds-badge.mjs +65 -89
  160. package/fesm2022/eui-eds-eds-badge.mjs.map +1 -1
  161. package/fesm2022/eui-eds-eds-button.mjs +70 -99
  162. package/fesm2022/eui-eds-eds-button.mjs.map +1 -1
  163. package/fesm2022/eui-eds-eds-chip.mjs +118 -111
  164. package/fesm2022/eui-eds-eds-chip.mjs.map +1 -1
  165. package/fesm2022/eui-eds-eds-icon-button.mjs +49 -55
  166. package/fesm2022/eui-eds-eds-icon-button.mjs.map +1 -1
  167. package/fesm2022/eui-eds-eds-icon-state.mjs +38 -34
  168. package/fesm2022/eui-eds-eds-icon-state.mjs.map +1 -1
  169. package/fesm2022/eui-eds-eds-icon.mjs +92 -107
  170. package/fesm2022/eui-eds-eds-icon.mjs.map +1 -1
  171. package/fesm2022/eui-eds-eds-language-selector.mjs +67 -0
  172. package/fesm2022/eui-eds-eds-language-selector.mjs.map +1 -0
  173. package/fesm2022/eui-eds-eds-menu.mjs +90 -0
  174. package/fesm2022/eui-eds-eds-menu.mjs.map +1 -0
  175. package/fesm2022/eui-eds-eds-overlay.mjs +141 -0
  176. package/fesm2022/eui-eds-eds-overlay.mjs.map +1 -0
  177. package/fesm2022/eui-eds-eds-page.mjs +129 -0
  178. package/fesm2022/eui-eds-eds-page.mjs.map +1 -0
  179. package/fesm2022/eui-eds-eds-resizable.mjs +193 -0
  180. package/fesm2022/eui-eds-eds-resizable.mjs.map +1 -0
  181. package/fesm2022/eui-eds-eds-shell.mjs +481 -0
  182. package/fesm2022/eui-eds-eds-shell.mjs.map +1 -0
  183. package/fesm2022/eui-eds-eds-tabs.mjs +71 -101
  184. package/fesm2022/eui-eds-eds-tabs.mjs.map +1 -1
  185. package/fesm2022/eui-eds-eds-tag.mjs +74 -77
  186. package/fesm2022/eui-eds-eds-tag.mjs.map +1 -1
  187. package/fesm2022/eui-eds-eds-tooltip.mjs +23 -23
  188. package/fesm2022/eui-eds-eds-tooltip.mjs.map +1 -1
  189. package/fesm2022/eui-eds-eds-user-profile.mjs +231 -0
  190. package/fesm2022/eui-eds-eds-user-profile.mjs.map +1 -0
  191. package/fesm2022/eui-eds-shared.mjs +255 -243
  192. package/fesm2022/eui-eds-shared.mjs.map +1 -1
  193. package/package.json +29 -1
  194. package/types/eui-eds-eds-alert.d.ts +7 -29
  195. package/types/eui-eds-eds-alert.d.ts.map +1 -1
  196. package/types/eui-eds-eds-avatar.d.ts +11 -12
  197. package/types/eui-eds-eds-avatar.d.ts.map +1 -1
  198. package/types/eui-eds-eds-badge.d.ts +15 -20
  199. package/types/eui-eds-eds-badge.d.ts.map +1 -1
  200. package/types/eui-eds-eds-button.d.ts +22 -30
  201. package/types/eui-eds-eds-button.d.ts.map +1 -1
  202. package/types/eui-eds-eds-chip.d.ts +36 -36
  203. package/types/eui-eds-eds-chip.d.ts.map +1 -1
  204. package/types/eui-eds-eds-icon-button.d.ts +13 -16
  205. package/types/eui-eds-eds-icon-button.d.ts.map +1 -1
  206. package/types/eui-eds-eds-icon-state.d.ts +8 -8
  207. package/types/eui-eds-eds-icon-state.d.ts.map +1 -1
  208. package/types/eui-eds-eds-icon.d.ts +22 -29
  209. package/types/eui-eds-eds-icon.d.ts.map +1 -1
  210. package/types/eui-eds-eds-language-selector.d.ts +34 -0
  211. package/types/eui-eds-eds-language-selector.d.ts.map +1 -0
  212. package/types/eui-eds-eds-menu.d.ts +65 -0
  213. package/types/eui-eds-eds-menu.d.ts.map +1 -0
  214. package/types/eui-eds-eds-overlay.d.ts +64 -0
  215. package/types/eui-eds-eds-overlay.d.ts.map +1 -0
  216. package/types/eui-eds-eds-page.d.ts +63 -0
  217. package/types/eui-eds-eds-page.d.ts.map +1 -0
  218. package/types/eui-eds-eds-resizable.d.ts +49 -0
  219. package/types/eui-eds-eds-resizable.d.ts.map +1 -0
  220. package/types/eui-eds-eds-shell.d.ts +229 -0
  221. package/types/eui-eds-eds-shell.d.ts.map +1 -0
  222. package/types/eui-eds-eds-tabs.d.ts +32 -30
  223. package/types/eui-eds-eds-tabs.d.ts.map +1 -1
  224. package/types/eui-eds-eds-tag.d.ts +22 -25
  225. package/types/eui-eds-eds-tag.d.ts.map +1 -1
  226. package/types/eui-eds-eds-tooltip.d.ts +16 -16
  227. package/types/eui-eds-eds-user-profile.d.ts +78 -0
  228. package/types/eui-eds-eds-user-profile.d.ts.map +1 -0
  229. package/types/eui-eds-shared.d.ts +82 -79
  230. package/types/eui-eds-shared.d.ts.map +1 -1
  231. package/docs/json/EuiBaseColorVariantsDirective.md +0 -21
  232. package/docs/json/EuiBaseSizeVariantsDirective.md +0 -23
@@ -0,0 +1 @@
1
+ {"version":3,"file":"eui-eds-eds-shell.mjs","sources":["../../eds-shell/eds-shell-sidebar.ts","../../eds-shell/eds-shell-sidebar.html","../../eds-shell/eds-shell.ts","../../eds-shell/eds-shell.html","../../eds-shell/eds-shell-header.ts","../../eds-shell/eds-shell-header.html","../../eds-shell/eds-shell-header-logo.ts","../../eds-shell/eds-shell-header-logo.html","../../eds-shell/eds-shell-header-environment.ts","../../eds-shell/eds-shell-header-app.ts","../../eds-shell/eds-shell-header-app.html","../../eds-shell/eds-shell-header-start.ts","../../eds-shell/eds-shell-header-end.ts","../../eds-shell/eds-shell-toolbar.ts","../../eds-shell/eds-shell-toolbar.html","../../eds-shell/eds-shell-toolbar-start.ts","../../eds-shell/eds-shell-toolbar-end.ts","../../eds-shell/eds-shell-toolbar-logo.ts","../../eds-shell/eds-shell-toolbar-logo.html","../../eds-shell/eds-shell-toolbar-environment.ts","../../eds-shell/eds-shell-toolbar-app.ts","../../eds-shell/eds-shell-toolbar-app.html","../../eds-shell/eds-shell-sidebar-header.ts","../../eds-shell/eds-shell-sidebar-header.html","../../eds-shell/eds-shell-sidebar-nav.ts","../../eds-shell/eds-shell-sidebar-nav.html","../../eds-shell/eds-shell-sidebar-footer.ts","../../eds-shell/eds-shell-sidebar-bottom-nav.ts","../../eds-shell/eds-shell-sidebar-bottom-nav.html","../../eds-shell/eds-shell-content.ts","../../eds-shell/eds-shell-footer.ts","../../eds-shell/eds-shell-footer.html","../../eds-shell/eds-shell-menu-toggle.ts","../../eds-shell/eds-shell-menu-toggle.html","../../eds-shell/eds-shell-top-message.ts","../../eds-shell/eds-shell-top-message.html","../../eds-shell/index.ts","../../eds-shell/eui-eds-eds-shell.ts"],"sourcesContent":["import { Component, input } from '@angular/core';\nimport { EdsSidebarCollapseMode } from './eds-shell';\n\n@Component({\n selector: 'eds-shell-sidebar',\n templateUrl: './eds-shell-sidebar.html',\n styleUrl: './eds-shell-sidebar.scss',\n})\nexport class EdsShellSidebar {\n /** Width of the sidebar (CSS value). */\n width = input<string>('260px');\n\n /** Collapse mode: 'hidden' fully hides, 'icons' shows icon rail, 'icons-labels' shows icons + labels. */\n collapseMode = input<EdsSidebarCollapseMode>('hidden');\n}\n","<ng-content select=\"eds-shell-sidebar-header\"></ng-content>\n<ng-content select=\"eds-shell-sidebar-nav\"></ng-content>\n<ng-content select=\"eds-shell-sidebar-bottom-nav\"></ng-content>\n<ng-content select=\"eds-shell-sidebar-footer\"></ng-content>\n","import { Component, input, output, signal, computed, contentChild, HostListener, inject, OnInit, OnDestroy, DOCUMENT } from '@angular/core';\nimport { EdsShellSidebar } from './eds-shell-sidebar';\n\nconst BREAKPOINT = 1024;\n\nexport type EdsSidebarCollapseMode = 'hidden' | 'icons' | 'icons-labels';\n\n@Component({\n selector: 'eds-shell',\n templateUrl: './eds-shell.html',\n styleUrl: './eds-shell.scss',\n})\nexport class EdsShell implements OnInit, OnDestroy {\n private document = inject(DOCUMENT);\n\n ngOnInit(): void {\n this.document.documentElement.classList.add('eui-21');\n }\n\n ngOnDestroy(): void {\n this.document.documentElement.classList.remove('eui-21');\n }\n /** Whether the sidebar starts open on desktop. */\n sidebarOpen = input<boolean>(true);\n\n /** Emits when sidebar open state changes. */\n sidebarOpenChange = output<boolean>();\n\n /** Internal open state signal. */\n isOpen = signal(window.innerWidth > BREAKPOINT);\n\n /** Whether we're in overlay mode (tablet/mobile). */\n isOverlay = signal(window.innerWidth <= BREAKPOINT);\n\n /** Whether the header is hidden due to scroll. */\n isHeaderHidden = signal(false);\n\n /** Reference to the projected sidebar to read its collapseMode. */\n private sidebarChild = contentChild(EdsShellSidebar);\n\n /** Whether a sidebar is projected. */\n hasSidebar = computed(() => !!this.sidebarChild());\n\n private lastScrollTop = 0;\n\n private collapseMode = computed(() => this.sidebarChild()?.collapseMode() ?? 'hidden');\n\n sidebarClasses = computed(() => {\n const overlay = this.isOverlay();\n const open = this.isOpen();\n const mode = this.collapseMode();\n\n if (overlay) {\n return { open, collapsed: false, collapsedIcons: false, collapsedIconsLabels: false };\n }\n return {\n open: false,\n collapsed: !open && mode === 'hidden',\n collapsedIcons: !open && mode === 'icons',\n collapsedIconsLabels: !open && mode === 'icons-labels',\n };\n });\n\n /** Whether the sidebar nav should render in collapsed/icon-only mode. */\n isSidebarCollapsed = computed(() => !this.isOpen() && !this.isOverlay());\n\n /** Whether collapsed mode should show labels under icons. */\n isSidebarCollapsedWithLabels = computed(() =>\n !this.isOpen() && !this.isOverlay() && this.collapseMode() === 'icons-labels',\n );\n\n onScroll(event: Event): void {\n if (this.isOverlay()) return;\n\n const el = event.target as HTMLElement;\n const scrollTop = el.scrollTop;\n\n if (scrollTop > 100) {\n this.isHeaderHidden.set(true);\n } else {\n this.isHeaderHidden.set(false);\n }\n\n this.lastScrollTop = scrollTop;\n }\n\n @HostListener('window:resize')\n onResize(): void {\n const isDesktop = window.innerWidth > BREAKPOINT;\n this.isOverlay.set(!isDesktop);\n\n if (isDesktop) {\n this.isOpen.set(true);\n } else {\n this.isOpen.set(false);\n this.isHeaderHidden.set(false);\n }\n }\n\n @HostListener('window:keydown', ['$event'])\n onKeydown(event: KeyboardEvent): void {\n if (event.key === 'Escape' && this.isOpen() && this.isOverlay()) {\n this.toggleSidebar();\n }\n }\n\n toggleSidebar(): void {\n this.isOpen.update(v => !v);\n this.sidebarOpenChange.emit(this.isOpen());\n }\n\n closeSidebar(): void {\n if (this.isOverlay()) {\n this.isOpen.set(false);\n this.sidebarOpenChange.emit(false);\n }\n }\n}\n","<!-- Top message slot (above header/toolbar) -->\n<ng-content select=\"eds-shell-top-message\"></ng-content>\n\n<!-- Header slot (branding bar — collapses on scroll) -->\n<div class=\"header-wrapper\" [class.header-hidden]=\"isHeaderHidden()\">\n <ng-content select=\"eds-shell-header\"></ng-content>\n</div>\n\n<!-- Toolbar slot (navigation bar) -->\n<ng-content select=\"eds-shell-toolbar\"></ng-content>\n\n<!-- Content area: sidebar + main + footer -->\n<div class=\"content-area\">\n <!-- Sidebar slot (only rendered if eds-shell-sidebar is projected) -->\n @if (hasSidebar()) {\n <!-- Overlay backdrop for tablet/mobile -->\n @if (isOverlay()) {\n <div\n class=\"sidebar-overlay\"\n [class.visible]=\"isOpen()\"\n (click)=\"closeSidebar()\">\n </div>\n }\n\n <aside\n class=\"sidebar\"\n [class.collapsed]=\"sidebarClasses().collapsed\"\n [class.collapsed-icons]=\"sidebarClasses().collapsedIcons\"\n [class.collapsed-icons-labels]=\"sidebarClasses().collapsedIconsLabels\"\n [class.open]=\"sidebarClasses().open\"\n [class.overlay-mode]=\"isOverlay()\">\n <ng-content select=\"eds-shell-sidebar\"></ng-content>\n </aside>\n }\n\n <!-- Main content + footer wrapper (scrollable) -->\n <div class=\"main-area\" (scroll)=\"onScroll($event)\">\n <ng-content select=\"eds-shell-content\"></ng-content>\n <ng-content select=\"eds-shell-footer\"></ng-content>\n </div>\n</div>\n","import { Component, input } from '@angular/core';\n\n@Component({\n selector: 'eds-shell-header',\n templateUrl: './eds-shell-header.html',\n styleUrl: './eds-shell-header.scss',\n})\nexport class EdsShellHeader {\n /** Whether the header shrinks on scroll. */\n isShrinkOnScroll = input<boolean>(false);\n}\n","<div class=\"logo-wrapper\">\n <ng-content select=\"eds-shell-header-logo\"></ng-content>\n <ng-content select=\"eds-shell-header-environment\"></ng-content>\n</div>\n<ng-content select=\"eds-shell-header-app\"></ng-content>\n<ng-content select=\"eds-shell-header-start\"></ng-content>\n<div class=\"spacer\"></div>\n<ng-content select=\"eds-shell-header-end\"></ng-content>\n<ng-content></ng-content>\n","import { Component, input, computed } from '@angular/core';\n\n@Component({\n selector: 'eds-shell-header-logo',\n templateUrl: './eds-shell-header-logo.html',\n styleUrl: './eds-shell-header-logo.scss',\n})\nexport class EdsShellHeaderLogo {\n /** Custom logo URL. If not provided, uses the EC logo for the given language. */\n logoUrl = input<string>('');\n\n /** Current language code (used to resolve the EC logo variant). Default: 'en'. */\n language = input<string>('en');\n\n /** Route to navigate on logo click. */\n homeUrl = input<string>('/');\n\n /** Logo height CSS value. */\n logoHeight = input<string>('56px');\n\n /** Logo width CSS value. */\n logoWidth = input<string>('auto');\n\n /** Resolved logo URL — custom or language-based EC logo. */\n resolvedLogoUrl = computed(() => {\n if (this.logoUrl()) return this.logoUrl();\n return `assets/logos/ec/positive/logo-ec--${this.language()}.svg`;\n });\n}\n","<a [attr.href]=\"homeUrl()\" class=\"logo-link\">\n <img\n [src]=\"resolvedLogoUrl()\"\n [style.height]=\"logoHeight()\"\n [style.width]=\"logoWidth()\"\n alt=\"European Commission - Home\" />\n</a>\n<ng-content></ng-content>\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'eds-shell-header-environment',\n template: '<ng-content/>',\n styleUrl: './eds-shell-header-environment.scss',\n})\nexport class EdsShellHeaderEnvironment {}\n","import { Component, input } from '@angular/core';\n\n@Component({\n selector: 'eds-shell-header-app',\n templateUrl: './eds-shell-header-app.html',\n styleUrl: './eds-shell-header-app.scss',\n})\nexport class EdsShellHeaderApp {\n /** Full application name. */\n appName = input<string>('');\n\n /** Short name for responsive/compact layouts. */\n appShortName = input<string>('');\n\n /** Subtitle/description below the app name. */\n appSubTitle = input<string>('');\n}\n","@if (appName()) {\n <span class=\"app-name\">{{ appName() }}</span>\n}\n@if (appSubTitle()) {\n <span class=\"app-subtitle\">{{ appSubTitle() }}</span>\n}\n<ng-content></ng-content>\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'eds-shell-header-start',\n template: '<ng-content></ng-content>',\n styles: [':host { display: flex; align-items: center; gap: var(--eds-sp-m); }'],\n})\nexport class EdsShellHeaderStart {}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'eds-shell-header-end',\n template: '<ng-content></ng-content>',\n styles: [':host { display: flex; align-items: center; gap: var(--eds-sp-xs); }'],\n})\nexport class EdsShellHeaderEnd {}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'eds-shell-toolbar',\n templateUrl: './eds-shell-toolbar.html',\n styleUrl: './eds-shell-toolbar.scss',\n})\nexport class EdsShellToolbar {}\n","<ng-content select=\"eds-shell-menu-toggle\"></ng-content>\n<div class=\"logo-wrapper\">\n <ng-content select=\"eds-shell-toolbar-logo\"></ng-content>\n <ng-content select=\"eds-shell-toolbar-environment\"></ng-content>\n</div>\n<ng-content select=\"eds-shell-toolbar-app\"></ng-content>\n<ng-content select=\"eds-shell-toolbar-start\"></ng-content>\n<ng-content select=\"eds-shell-toolbar-end\"></ng-content>\n<ng-content></ng-content>\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'eds-shell-toolbar-start',\n template: '<ng-content/>',\n styleUrl: './eds-shell-toolbar-start.scss',\n})\nexport class EdsShellToolbarStart {}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'eds-shell-toolbar-end',\n template: '<ng-content/>',\n styleUrl: './eds-shell-toolbar-end.scss',\n})\nexport class EdsShellToolbarEnd {}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'eds-shell-toolbar-logo',\n templateUrl: './eds-shell-toolbar-logo.html',\n styleUrl: './eds-shell-toolbar-logo.scss',\n})\nexport class EdsShellToolbarLogo {}\n","<img src=\"assets/logos/ec/logo-ec--mute-negative.svg\" alt=\"European Commission\" />\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'eds-shell-toolbar-environment',\n template: '<ng-content/>',\n styleUrl: './eds-shell-toolbar-environment.scss',\n})\nexport class EdsShellToolbarEnvironment {}\n","import { Component, input } from '@angular/core';\n\n@Component({\n selector: 'eds-shell-toolbar-app',\n templateUrl: './eds-shell-toolbar-app.html',\n styleUrl: './eds-shell-toolbar-app.scss',\n})\nexport class EdsShellToolbarApp {\n /** Full application name. */\n appName = input<string>('');\n\n /** Short name for responsive/compact layouts. */\n appShortName = input<string>('');\n\n /** Subtitle/description below the app name. */\n appSubTitle = input<string>('');\n}\n","@if (appName()) {\n <span class=\"app-name\">{{ appName() }}</span>\n}\n@if (appSubTitle()) {\n <span class=\"app-subtitle\">{{ appSubTitle() }}</span>\n}\n<ng-content></ng-content>\n","import { Component, input, output } from '@angular/core';\n\n@Component({\n selector: 'eds-shell-sidebar-header',\n templateUrl: './eds-shell-sidebar-header.html',\n styleUrl: './eds-shell-sidebar-header.scss',\n})\nexport class EdsShellSidebarHeader {\n /** Brand/title text displayed in the sidebar header. */\n brand = input<string>('');\n\n /** Whether to show the close button (shown on overlay mode). */\n showClose = input<boolean>(false);\n\n /** Emits when the close button is clicked. */\n closeClick = output<void>();\n\n onClose(): void {\n this.closeClick.emit();\n }\n}\n","@if (brand()) {\n <span class=\"sidebar-brand\">{{ brand() }}</span>\n}\n<ng-content></ng-content>\n@if (showClose()) {\n <button\n class=\"sidebar-close-btn\"\n (click)=\"onClose()\"\n aria-label=\"Close sidebar\">\n &times;\n </button>\n}\n","import { Component, input, output } from '@angular/core';\nimport { EdsMenu, EdsMenuItem } from '@eui/eds/eds-menu';\n\n@Component({\n selector: 'eds-shell-sidebar-nav',\n imports: [EdsMenu],\n templateUrl: './eds-shell-sidebar-nav.html',\n styleUrl: './eds-shell-sidebar-nav.scss',\n})\nexport class EdsShellSidebarNav {\n /** Array of menu items to render. */\n items = input<EdsMenuItem[]>([]);\n\n /** Whether to show icons alongside labels. */\n hasIcons = input<boolean>(false);\n\n /** Whether the menu is in collapsed/icon-only mode. */\n isCollapsed = input<boolean>(false);\n\n /** Whether to show labels underneath icons in collapsed mode. */\n hasCollapsedLabels = input<boolean>(false);\n\n /** Emits when a menu item is clicked. */\n itemClick = output<EdsMenuItem>();\n\n onItemClick(item: EdsMenuItem): void {\n this.itemClick.emit(item);\n }\n}\n","<eds-menu\n [items]=\"items()\"\n [hasIcons]=\"hasIcons()\"\n [isCollapsed]=\"isCollapsed()\"\n [hasCollapsedLabels]=\"hasCollapsedLabels()\"\n (itemClick)=\"onItemClick($event)\">\n</eds-menu>\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'eds-shell-sidebar-footer',\n template: '<ng-content/>',\n styleUrl: './eds-shell-sidebar-footer.scss',\n})\nexport class EdsShellSidebarFooter {}\n","import { Component, input, output } from '@angular/core';\nimport { EdsMenu, EdsMenuItem } from '@eui/eds/eds-menu';\n\n@Component({\n selector: 'eds-shell-sidebar-bottom-nav',\n imports: [EdsMenu],\n templateUrl: './eds-shell-sidebar-bottom-nav.html',\n styleUrl: './eds-shell-sidebar-bottom-nav.scss',\n})\nexport class EdsShellSidebarBottomNav {\n /** Array of menu items to render. */\n items = input<EdsMenuItem[]>([]);\n\n /** Whether to show icons alongside labels. */\n hasIcons = input<boolean>(false);\n\n /** Whether the menu is in collapsed/icon-only mode. */\n isCollapsed = input<boolean>(false);\n\n /** Whether to show labels underneath icons in collapsed mode. */\n hasCollapsedLabels = input<boolean>(false);\n\n /** Emits when a menu item is clicked. */\n itemClick = output<EdsMenuItem>();\n\n onItemClick(item: EdsMenuItem): void {\n this.itemClick.emit(item);\n }\n}\n","<eds-menu\n [items]=\"items()\"\n [hasIcons]=\"hasIcons()\"\n [isCollapsed]=\"isCollapsed()\"\n [hasCollapsedLabels]=\"hasCollapsedLabels()\"\n (itemClick)=\"onItemClick($event)\">\n</eds-menu>\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'eds-shell-content',\n template: '<ng-content/>',\n styleUrl: './eds-shell-content.scss',\n})\nexport class EdsShellContent {}\n","import { Component, input } from '@angular/core';\n\n@Component({\n selector: 'eds-shell-footer',\n templateUrl: './eds-shell-footer.html',\n styleUrl: './eds-shell-footer.scss',\n})\nexport class EdsShellFooter {\n /** Copyright text displayed on the left. */\n copyright = input<string>('');\n}\n","@if (copyright()) {\n <span class=\"copyright\">{{ copyright() }}</span>\n}\n<ng-content></ng-content>\n","import { Component, output } from '@angular/core';\nimport { EDS_ICON_BUTTON } from '@eui/eds/eds-icon-button';\n\n@Component({\n selector: 'eds-shell-menu-toggle',\n imports: [...EDS_ICON_BUTTON],\n templateUrl: './eds-shell-menu-toggle.html',\n styleUrl: './eds-shell-menu-toggle.scss',\n})\nexport class EdsShellMenuToggle {\n /** Emits when the toggle button is clicked. */\n menuToggle = output<void>();\n\n onClick(): void {\n this.menuToggle.emit();\n }\n}\n","<button\n edsIconButton\n edsBrand\n icon=\"list\"\n ariaLabel=\"Toggle sidebar\"\n (click)=\"onClick()\">\n</button>\n","import { Component, input, output, signal } from '@angular/core';\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { EDS_ICON_BUTTON } from '@eui/eds/eds-icon-button';\nimport { EdsBaseColorVariantsDirective } from '@eui/eds/shared';\n\n@Component({\n selector: 'eds-shell-top-message',\n imports: [...EDS_ICON_BUTTON],\n templateUrl: './eds-shell-top-message.html',\n styleUrl: './eds-shell-top-message.scss',\n hostDirectives: [\n {\n directive: EdsBaseColorVariantsDirective,\n inputs: ['edsWarning', 'edsCritical', 'edsInfo', 'edsSuccess', 'edsColorVariant'],\n },\n ],\n host: {\n '[class.eds-top-message]': 'true',\n '[class.eds-top-message--hidden]': '!isVisible()',\n },\n})\nexport class EdsShellTopMessage {\n /** Whether the close button is shown. */\n isDismissible = input<boolean, BooleanInput>(true, { transform: coerceBooleanProperty });\n\n /** Emits when the message is dismissed. */\n dismissed = output<void>();\n\n /** Internal visibility state. */\n isVisible = signal(true);\n\n dismiss(): void {\n this.isVisible.set(false);\n setTimeout(() => this.dismissed.emit(), 300);\n }\n}\n","<div class=\"top-message-content\">\n <ng-content></ng-content>\n</div>\n@if (isDismissible()) {\n <button edsIconButton icon=\"x\" ariaLabel=\"Dismiss\" edsSizeS (click)=\"dismiss()\"></button>\n}\n","import { EdsShell, EdsSidebarCollapseMode } from './eds-shell';\nimport { EdsShellHeader } from './eds-shell-header';\nimport { EdsShellHeaderLogo } from './eds-shell-header-logo';\nimport { EdsShellHeaderEnvironment } from './eds-shell-header-environment';\nimport { EdsShellHeaderApp } from './eds-shell-header-app';\nimport { EdsShellHeaderStart } from './eds-shell-header-start';\nimport { EdsShellHeaderEnd } from './eds-shell-header-end';\nimport { EdsShellToolbar } from './eds-shell-toolbar';\nimport { EdsShellToolbarStart } from './eds-shell-toolbar-start';\nimport { EdsShellToolbarEnd } from './eds-shell-toolbar-end';\nimport { EdsShellToolbarLogo } from './eds-shell-toolbar-logo';\nimport { EdsShellToolbarEnvironment } from './eds-shell-toolbar-environment';\nimport { EdsShellToolbarApp } from './eds-shell-toolbar-app';\nimport { EdsShellSidebar } from './eds-shell-sidebar';\nimport { EdsShellSidebarHeader } from './eds-shell-sidebar-header';\nimport { EdsShellSidebarNav } from './eds-shell-sidebar-nav';\nexport { EdsMenuItem } from '@eui/eds/eds-menu';\nimport { EdsShellSidebarFooter } from './eds-shell-sidebar-footer';\nimport { EdsShellSidebarBottomNav } from './eds-shell-sidebar-bottom-nav';\nimport { EdsShellContent } from './eds-shell-content';\nimport { EdsShellFooter } from './eds-shell-footer';\nimport { EdsShellMenuToggle } from './eds-shell-menu-toggle';\nimport { EdsShellTopMessage } from './eds-shell-top-message';\n\nexport {\n EdsShell,\n EdsSidebarCollapseMode,\n EdsShellHeader,\n EdsShellHeaderLogo,\n EdsShellHeaderEnvironment,\n EdsShellHeaderApp,\n EdsShellHeaderStart,\n EdsShellHeaderEnd,\n EdsShellToolbar,\n EdsShellToolbarStart,\n EdsShellToolbarEnd,\n EdsShellToolbarLogo,\n EdsShellToolbarEnvironment,\n EdsShellToolbarApp,\n EdsShellSidebar,\n EdsShellSidebarHeader,\n EdsShellSidebarNav,\n EdsShellSidebarBottomNav,\n EdsShellSidebarFooter,\n EdsShellContent,\n EdsShellFooter,\n EdsShellMenuToggle,\n EdsShellTopMessage,\n};\n\n/** Convenience array for importing all eds-shell components. */\nexport const EDS_SHELL = [\n EdsShell,\n EdsShellHeader,\n EdsShellHeaderLogo,\n EdsShellHeaderEnvironment,\n EdsShellHeaderApp,\n EdsShellHeaderStart,\n EdsShellHeaderEnd,\n EdsShellToolbar,\n EdsShellToolbarStart,\n EdsShellToolbarEnd,\n EdsShellToolbarLogo,\n EdsShellToolbarEnvironment,\n EdsShellToolbarApp,\n EdsShellSidebar,\n EdsShellSidebarHeader,\n EdsShellSidebarNav,\n EdsShellSidebarBottomNav,\n EdsShellSidebarFooter,\n EdsShellContent,\n EdsShellFooter,\n EdsShellMenuToggle,\n EdsShellTopMessage,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { inject, ViewContainerRef, ViewChild, Component, booleanAttribute, Input, ContentChild, forwardRef, ChangeDetectionStrategy, EventEmitter, PLATFORM_ID, ChangeDetectorRef, DOCUMENT, ViewChildren, ContentChildren, Output, HostBinding } from '@angular/core';
2
+ import { viewChild, inject, ViewContainerRef, Component, booleanAttribute, Input, contentChild, forwardRef, ContentChild, ChangeDetectionStrategy, input, output, viewChildren, PLATFORM_ID, ChangeDetectorRef, DOCUMENT, ContentChildren, HostBinding } from '@angular/core';
3
3
  import { AsyncPipe, isPlatformBrowser } from '@angular/common';
4
4
  import * as i1 from '@angular/cdk/portal';
5
5
  import { TemplatePortal, PortalModule } from '@angular/cdk/portal';
@@ -11,21 +11,19 @@ import { EDS_ICON_BUTTON } from '@eui/eds/eds-icon-button';
11
11
 
12
12
  class EdsTabHeader {
13
13
  constructor() {
14
+ this.templateRef = viewChild.required('templateRef');
14
15
  this.viewContainerRef = inject(ViewContainerRef);
15
16
  }
16
17
  ngAfterViewInit() {
17
- this.templatePortal = new TemplatePortal(this.templateRef, this.viewContainerRef);
18
+ this.templatePortal = new TemplatePortal(this.templateRef(), this.viewContainerRef);
18
19
  }
19
20
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: EdsTabHeader, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
20
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.0.5", type: EdsTabHeader, isStandalone: true, selector: "eds-tab-header", viewQueries: [{ propertyName: "templateRef", first: true, predicate: ["templateRef"], descendants: true }], ngImport: i0, template: "<ng-template #templateRef>\n <div class=\"eds-tab-header-wrapper\">\n <ng-content select=\"eds-tab-header-left-content\"/>\n <div class=\"eds-tab-header-label-wrapper\">\n <ng-content select=\"eds-tab-header-label\"/>\n <ng-content select=\"eds-tab-header-sub-label\"/>\n </div>\n <ng-content/>\n <ng-content select=\"eds-tab-header-right-content\"/>\n </div>\n</ng-template>\n" }); }
21
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "22.0.5", type: EdsTabHeader, isStandalone: true, selector: "eds-tab-header", viewQueries: [{ propertyName: "templateRef", first: true, predicate: ["templateRef"], descendants: true, isSignal: true }], ngImport: i0, template: "<ng-template #templateRef>\n <div class=\"eds-tab-header-wrapper\">\n <ng-content select=\"eds-tab-header-left-content\"/>\n <div class=\"eds-tab-header-label-wrapper\">\n <ng-content select=\"eds-tab-header-label\"/>\n <ng-content select=\"eds-tab-header-sub-label\"/>\n </div>\n <ng-content/>\n <ng-content select=\"eds-tab-header-right-content\"/>\n </div>\n</ng-template>\n" }); }
21
22
  }
22
23
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: EdsTabHeader, decorators: [{
23
24
  type: Component,
24
25
  args: [{ selector: 'eds-tab-header', template: "<ng-template #templateRef>\n <div class=\"eds-tab-header-wrapper\">\n <ng-content select=\"eds-tab-header-left-content\"/>\n <div class=\"eds-tab-header-label-wrapper\">\n <ng-content select=\"eds-tab-header-label\"/>\n <ng-content select=\"eds-tab-header-sub-label\"/>\n </div>\n <ng-content/>\n <ng-content select=\"eds-tab-header-right-content\"/>\n </div>\n</ng-template>\n" }]
25
- }], propDecorators: { templateRef: [{
26
- type: ViewChild,
27
- args: ['templateRef']
28
- }] } });
26
+ }], propDecorators: { templateRef: [{ type: i0.ViewChild, args: ['templateRef', { isSignal: true }] }] } });
29
27
 
30
28
  class EdsTabBody {
31
29
  constructor() {
@@ -35,14 +33,15 @@ class EdsTabBody {
35
33
  * @default false
36
34
  */
37
35
  this.hasNoContentPadding = false;
36
+ this.templateRef = viewChild.required('templateRef');
38
37
  this.tabIndex$ = new BehaviorSubject(0);
39
38
  this.viewContainerRef = inject(ViewContainerRef);
40
39
  }
41
40
  ngAfterViewInit() {
42
- this.templatePortal = new TemplatePortal(this.templateRef, this.viewContainerRef);
41
+ this.templatePortal = new TemplatePortal(this.templateRef(), this.viewContainerRef);
43
42
  }
44
43
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: EdsTabBody, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
45
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "22.0.5", type: EdsTabBody, isStandalone: true, selector: "eds-tab-body", inputs: { hasNoContentPadding: ["hasNoContentPadding", "hasNoContentPadding", booleanAttribute] }, viewQueries: [{ propertyName: "templateRef", first: true, predicate: ["templateRef"], descendants: true }], ngImport: i0, template: "<ng-template #templateRef>\n <div class=\"eds-tab__body\" [tabindex]=\"tabIndex$ | async\" [class.eds-tab__body--no-padding]=\"hasNoContentPadding\">\n <ng-content></ng-content>\n </div>\n</ng-template>\n", dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }] }); }
44
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "22.0.5", type: EdsTabBody, isStandalone: true, selector: "eds-tab-body", inputs: { hasNoContentPadding: ["hasNoContentPadding", "hasNoContentPadding", booleanAttribute] }, viewQueries: [{ propertyName: "templateRef", first: true, predicate: ["templateRef"], descendants: true, isSignal: true }], ngImport: i0, template: "<ng-template #templateRef>\n <div class=\"eds-tab__body\" [tabindex]=\"tabIndex$ | async\" [class.eds-tab__body--no-padding]=\"hasNoContentPadding\">\n <ng-content></ng-content>\n </div>\n</ng-template>\n", dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }] }); }
46
45
  }
47
46
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: EdsTabBody, decorators: [{
48
47
  type: Component,
@@ -52,10 +51,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImpor
52
51
  }], propDecorators: { hasNoContentPadding: [{
53
52
  type: Input,
54
53
  args: [{ transform: booleanAttribute }]
55
- }], templateRef: [{
56
- type: ViewChild,
57
- args: ['templateRef']
58
- }] } });
54
+ }], templateRef: [{ type: i0.ViewChild, args: ['templateRef', { isSignal: true }] }] } });
59
55
 
60
56
  class EdsTab {
61
57
  constructor() {
@@ -94,6 +90,7 @@ class EdsTab {
94
90
  * @default false
95
91
  */
96
92
  this.isHandleActivateTab = false;
93
+ this.templateHeader = contentChild.required(forwardRef(() => EdsTabHeader));
97
94
  this.euiVariant = 'euiPrimary';
98
95
  this.isActive = false;
99
96
  this.isVisible$ = new BehaviorSubject(this.isVisible);
@@ -118,7 +115,7 @@ class EdsTab {
118
115
  this.isActive = false;
119
116
  }
120
117
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: EdsTab, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
121
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "22.0.5", type: EdsTab, isStandalone: true, selector: "eds-tab", inputs: { id: "id", url: "url", e2eAttr: "e2eAttr", tooltip: "tooltip", isClosable: ["isClosable", "isClosable", booleanAttribute], isDisabled: ["isDisabled", "isDisabled", booleanAttribute], isVisible: ["isVisible", "isVisible", booleanAttribute], isHandleCloseOnClose: ["isHandleCloseOnClose", "isHandleCloseOnClose", booleanAttribute], isHandleActivateTab: ["isHandleActivateTab", "isHandleActivateTab", booleanAttribute], euiVariant: "euiVariant" }, queries: [{ propertyName: "templateHeader", first: true, predicate: i0.forwardRef(() => EdsTabHeader), descendants: true }, { propertyName: "templateBody", first: true, predicate: i0.forwardRef(() => EdsTabBody), descendants: true }], usesOnChanges: true, ngImport: i0, template: '<ng-content/>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
118
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "22.0.5", type: EdsTab, isStandalone: true, selector: "eds-tab", inputs: { id: "id", url: "url", e2eAttr: "e2eAttr", tooltip: "tooltip", isClosable: ["isClosable", "isClosable", booleanAttribute], isDisabled: ["isDisabled", "isDisabled", booleanAttribute], isVisible: ["isVisible", "isVisible", booleanAttribute], isHandleCloseOnClose: ["isHandleCloseOnClose", "isHandleCloseOnClose", booleanAttribute], isHandleActivateTab: ["isHandleActivateTab", "isHandleActivateTab", booleanAttribute], euiVariant: "euiVariant" }, queries: [{ propertyName: "templateHeader", first: true, predicate: i0.forwardRef(() => EdsTabHeader), descendants: true, isSignal: true }, { propertyName: "templateBody", first: true, predicate: i0.forwardRef(() => EdsTabBody), descendants: true }], usesOnChanges: true, ngImport: i0, template: '<ng-content/>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
122
119
  }
123
120
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: EdsTab, decorators: [{
124
121
  type: Component,
@@ -150,10 +147,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImpor
150
147
  }], isHandleActivateTab: [{
151
148
  type: Input,
152
149
  args: [{ transform: booleanAttribute }]
153
- }], templateHeader: [{
154
- type: ContentChild,
155
- args: [forwardRef(() => EdsTabHeader)]
156
- }], templateBody: [{
150
+ }], templateHeader: [{ type: i0.ContentChild, args: [forwardRef(() => EdsTabHeader), { isSignal: true }] }], templateBody: [{
157
151
  type: ContentChild,
158
152
  args: [forwardRef(() => EdsTabBody)]
159
153
  }], euiVariant: [{
@@ -162,7 +156,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImpor
162
156
 
163
157
  class EdsTabs {
164
158
  constructor() {
165
- this.e2eAttr = 'eds-tabs';
159
+ /**
160
+ * Sets the `data-e2e` attribute for the host element.
161
+ *
162
+ * @default 'eds-tabs'
163
+ */
164
+ this.e2eAttr = input('eds-tabs', /* @ts-ignore */
165
+ ...(ngDevMode ? [{ debugName: "e2eAttr" }] : /* istanbul ignore next */ []));
166
166
  /**
167
167
  * Index of the active tab
168
168
  *
@@ -174,21 +174,27 @@ class EdsTabs {
174
174
  *
175
175
  * @default 'eUI Tabs'
176
176
  */
177
- this.ariaLabel = 'EDS Tabs';
178
- this.isMainNavigation = false;
179
- this.isFlat = false;
177
+ this.ariaLabel = input('EDS Tabs', /* @ts-ignore */
178
+ ...(ngDevMode ? [{ debugName: "ariaLabel" }] : /* istanbul ignore next */ []));
179
+ this.isMainNavigation = input(false, { ...(ngDevMode ? { debugName: "isMainNavigation" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
180
+ this.isFlat = input(false, { ...(ngDevMode ? { debugName: "isFlat" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
180
181
  /**
181
182
  * Event emitted when a tab is closed
182
183
  */
183
- this.tabClose = new EventEmitter();
184
+ this.tabClose = output();
184
185
  /**
185
186
  * Event emitted when a tab is activated
186
187
  */
187
- this.tabActivate = new EventEmitter();
188
+ this.tabActivate = output();
188
189
  /**
189
190
  * Event emitted when a tab is clicked
190
191
  */
191
- this.tabClick = new EventEmitter();
192
+ this.tabClick = output();
193
+ this.edsTabsHeadersContainer = viewChild.required('euiTabsHeadersContainer');
194
+ this.edsTabsHeaders = viewChild.required('euiTabsHeaders');
195
+ this.edsTabsRightContent = viewChild.required('euiTabsRightContent');
196
+ this.edsTabListItems = viewChildren('euiTabListItems', /* @ts-ignore */
197
+ ...(ngDevMode ? [{ debugName: "edsTabListItems" }] : /* istanbul ignore next */ []));
192
198
  this.tabs = [];
193
199
  this.scrolling = false;
194
200
  this.navigationLeftButtonDisabled = true;
@@ -205,28 +211,23 @@ class EdsTabs {
205
211
  this.euiAppShellService = inject(EuiAppShellService);
206
212
  this.document = inject(DOCUMENT);
207
213
  }
208
- get elementClass() {
209
- return [
210
- 'eds-tabs',
211
- ].join(' ').trim();
212
- }
213
214
  /**
214
215
  * Width of the tabs headers container
215
216
  */
216
- get euiTabsHeadersContainerWidth() {
217
- return (this.euiTabsHeadersContainer?.nativeElement.clientWidth - this.euiTabsRightContentWidth);
217
+ get edsTabsHeadersContainerWidth() {
218
+ return (this.edsTabsHeadersContainer()?.nativeElement.clientWidth - this.edsTabsRightContentWidth);
218
219
  }
219
220
  /**
220
221
  * Width of the tabs headers
221
222
  */
222
- get euiTabsHeadersWidth() {
223
- return this.euiTabsHeaders?.nativeElement.clientWidth;
223
+ get edsTabsHeadersWidth() {
224
+ return this.edsTabsHeaders()?.nativeElement.clientWidth;
224
225
  }
225
226
  /**
226
227
  * Width of the tabs right content
227
228
  */
228
- get euiTabsRightContentWidth() {
229
- return this.euiTabsRightContent?.nativeElement?.offsetWidth || 0;
229
+ get edsTabsRightContentWidth() {
230
+ return this.edsTabsRightContent()?.nativeElement?.offsetWidth || 0;
230
231
  }
231
232
  ngOnChanges(c) {
232
233
  if (c?.activeTabIndex && !c.activeTabIndex.isFirstChange()) {
@@ -322,8 +323,8 @@ class EdsTabs {
322
323
  */
323
324
  goToRight() {
324
325
  let scrollTo = this.currentOffset - this.stepMove;
325
- if (Math.abs(scrollTo) > this.euiTabsHeadersWidth - this.euiTabsHeadersContainerWidth) {
326
- scrollTo = -(this.euiTabsHeadersWidth - this.euiTabsHeadersContainerWidth) - this.scrollOffset;
326
+ if (Math.abs(scrollTo) > this.edsTabsHeadersWidth - this.edsTabsHeadersContainerWidth) {
327
+ scrollTo = -(this.edsTabsHeadersWidth - this.edsTabsHeadersContainerWidth) - this.scrollOffset;
327
328
  }
328
329
  this.setScrollTo(scrollTo);
329
330
  }
@@ -342,40 +343,40 @@ class EdsTabs {
342
343
  break;
343
344
  }
344
345
  case 'ArrowRight': {
345
- const isLastItem = i === this.euiTabListItems.toArray().length - 1;
346
+ const isLastItem = i === this.edsTabListItems().length - 1;
346
347
  const index = isLastItem ? 0 : i + 1;
347
348
  this.setScrollToTabIndex(index, false);
348
- this.euiTabListItems.toArray()[index]?.nativeElement.focus();
349
+ this.edsTabListItems()[index]?.nativeElement.focus();
349
350
  break;
350
351
  }
351
352
  case 'ArrowLeft': {
352
- const lastIndex = this.euiTabListItems.toArray().length - 1;
353
+ const lastIndex = this.edsTabListItems().length - 1;
353
354
  const index = i === 0 ? lastIndex : i - 1;
354
355
  this.setScrollToTabIndex(index, false);
355
- this.euiTabListItems.toArray()[index]?.nativeElement.focus();
356
+ this.edsTabListItems()[index]?.nativeElement.focus();
356
357
  break;
357
358
  }
358
359
  case 'Home': {
359
360
  this.setScrollToTabIndex(0, false);
360
- this.euiTabListItems.toArray()[0]?.nativeElement.focus();
361
+ this.edsTabListItems()[0]?.nativeElement.focus();
361
362
  event.preventDefault();
362
363
  break;
363
364
  }
364
365
  case 'End': {
365
- this.setScrollToTabIndex(this.euiTabListItems.toArray().length - 1, false);
366
- this.euiTabListItems.toArray()[this.euiTabListItems.toArray().length - 1]?.nativeElement.focus();
366
+ this.setScrollToTabIndex(this.edsTabListItems().length - 1, false);
367
+ this.edsTabListItems()[this.edsTabListItems().length - 1]?.nativeElement.focus();
367
368
  event.preventDefault();
368
369
  break;
369
370
  }
370
371
  case 'Delete': {
371
372
  if (this.tabs[i].isClosable) {
372
- if (i === this.euiTabListItems.toArray().length - 1) {
373
- this.euiTabListItems.toArray()[i - 1]?.nativeElement.focus();
373
+ if (i === this.edsTabListItems().length - 1) {
374
+ this.edsTabListItems()[i - 1]?.nativeElement.focus();
374
375
  this.close(i, event);
375
376
  }
376
377
  else {
377
378
  this.close(i, event);
378
- this.euiTabListItems.toArray()[i]?.nativeElement.focus();
379
+ this.edsTabListItems()[i]?.nativeElement.focus();
379
380
  }
380
381
  }
381
382
  break;
@@ -460,8 +461,8 @@ class EdsTabs {
460
461
  * Checks if the tabs headers are scrolling and calculates the scrolling position
461
462
  */
462
463
  tabsScrollingHandler() {
463
- if (this.euiTabsHeadersContainerWidth && this.euiTabsHeadersWidth) {
464
- this.scrolling = this.euiTabsHeadersWidth > this.euiTabsHeadersContainerWidth;
464
+ if (this.edsTabsHeadersContainerWidth && this.edsTabsHeadersWidth) {
465
+ this.scrolling = this.edsTabsHeadersWidth > this.edsTabsHeadersContainerWidth;
465
466
  if (!this.scrolling) {
466
467
  this.scrollingCount = 0;
467
468
  this.setScrollTo(0, false);
@@ -469,7 +470,7 @@ class EdsTabs {
469
470
  this.navigationRightButtonDisabled = true;
470
471
  }
471
472
  else {
472
- const maxScrollableWidth = this.euiTabsHeadersWidth - this.euiTabsHeadersContainerWidth;
473
+ const maxScrollableWidth = this.edsTabsHeadersWidth - this.edsTabsHeadersContainerWidth;
473
474
  if (maxScrollableWidth <= Math.abs(this.currentOffset) + this.scrollOffset && this.scrollingCount !== 0) {
474
475
  const scrollTo = -maxScrollableWidth - this.scrollOffset;
475
476
  this.setScrollTo(scrollTo);
@@ -490,16 +491,16 @@ class EdsTabs {
490
491
  * @param isAnimated Whether the tab activation should be animated
491
492
  */
492
493
  setScrollToTabIndex(index, isAnimated = true) {
493
- const activeTab = this.euiTabsHeaders.nativeElement.children.item(index);
494
- if (activeTab && !this.isActiveTabFullyVisible(activeTab) && !this.isMainNavigation) {
494
+ const activeTab = this.edsTabsHeaders().nativeElement.children.item(index);
495
+ if (activeTab && !this.isActiveTabFullyVisible(activeTab) && !this.isMainNavigation()) {
495
496
  let scrollTo = 0;
496
497
  let subsetWidth = 0;
497
498
  for (let i = 0; i <= index; i++) {
498
- subsetWidth += this.euiTabsHeaders.nativeElement.children.item(i).clientWidth;
499
+ subsetWidth += this.edsTabsHeaders().nativeElement.children.item(i).clientWidth;
499
500
  }
500
- scrollTo = this.euiTabsHeadersContainerWidth / 2 - subsetWidth;
501
- if (Math.abs(scrollTo) > this.euiTabsHeadersWidth - this.euiTabsHeadersContainerWidth + this.scrollOffset) {
502
- scrollTo = -(this.euiTabsHeadersWidth - this.euiTabsHeadersContainerWidth + this.scrollOffset);
501
+ scrollTo = this.edsTabsHeadersContainerWidth / 2 - subsetWidth;
502
+ if (Math.abs(scrollTo) > this.edsTabsHeadersWidth - this.edsTabsHeadersContainerWidth + this.scrollOffset) {
503
+ scrollTo = -(this.edsTabsHeadersWidth - this.edsTabsHeadersContainerWidth + this.scrollOffset);
503
504
  }
504
505
  if (scrollTo > 0 || (scrollTo < 0 && index === 0)) {
505
506
  scrollTo = 0;
@@ -516,19 +517,19 @@ class EdsTabs {
516
517
  setScrollTo(scrollTo, isAnimated = true) {
517
518
  const timings = isAnimated ? '500ms cubic-bezier(0.35, 0, 0.25, 1)' : 0;
518
519
  const animation = this.builder.build([animate(timings, style({ 'margin-left': +scrollTo + 'px' }))]);
519
- this.player = animation.create(this.euiTabsHeaders.nativeElement);
520
+ this.player = animation.create(this.edsTabsHeaders().nativeElement);
520
521
  this.player.play();
521
522
  this.currentOffset = scrollTo;
522
523
  if (scrollTo === 0) {
523
524
  this.navigationLeftButtonDisabled = true;
524
525
  }
525
- if (Math.abs(this.currentOffset) < this.euiTabsHeadersWidth - this.euiTabsHeadersContainerWidth + this.scrollOffset) {
526
+ if (Math.abs(this.currentOffset) < this.edsTabsHeadersWidth - this.edsTabsHeadersContainerWidth + this.scrollOffset) {
526
527
  this.navigationRightButtonDisabled = false;
527
528
  }
528
529
  if (this.currentOffset < 0) {
529
530
  this.navigationLeftButtonDisabled = false;
530
531
  }
531
- if (Math.abs(scrollTo) === this.euiTabsHeadersWidth - this.euiTabsHeadersContainerWidth + this.scrollOffset) {
532
+ if (Math.abs(scrollTo) === this.edsTabsHeadersWidth - this.edsTabsHeadersContainerWidth + this.scrollOffset) {
532
533
  this.navigationRightButtonDisabled = true;
533
534
  }
534
535
  this.cd.detectChanges();
@@ -541,59 +542,28 @@ class EdsTabs {
541
542
  */
542
543
  isActiveTabFullyVisible(activeTab) {
543
544
  const fullyVisible = activeTab.offsetLeft - this.scrollOffset >= 0 &&
544
- activeTab.offsetLeft + activeTab.clientWidth < this.euiTabsHeadersContainerWidth - this.scrollOffset;
545
+ activeTab.offsetLeft + activeTab.clientWidth < this.edsTabsHeadersContainerWidth - this.scrollOffset;
545
546
  return fullyVisible;
546
547
  }
547
548
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: EdsTabs, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
548
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.5", type: EdsTabs, isStandalone: true, selector: "eds-tabs", inputs: { e2eAttr: "e2eAttr", activeTabIndex: "activeTabIndex", ariaLabel: "ariaLabel", isMainNavigation: ["isMainNavigation", "isMainNavigation", booleanAttribute], isFlat: ["isFlat", "isFlat", booleanAttribute] }, outputs: { tabClose: "tabClose", tabActivate: "tabActivate", tabClick: "tabClick" }, host: { properties: { "class": "this.elementClass", "attr.data-e2e": "this.e2eAttr" } }, queries: [{ propertyName: "_tabs", predicate: i0.forwardRef(() => EdsTab) }], viewQueries: [{ propertyName: "euiTabsHeadersContainer", first: true, predicate: ["euiTabsHeadersContainer"], descendants: true }, { propertyName: "euiTabsHeaders", first: true, predicate: ["euiTabsHeaders"], descendants: true }, { propertyName: "euiTabsRightContent", first: true, predicate: ["euiTabsRightContent"], descendants: true }, { propertyName: "euiTabListItems", predicate: ["euiTabListItems"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div #euiTabsHeadersContainer class=\"eds-tabs-wrapper\" [class.eds-tabs-wrapper--scrolling]=\"scrolling\">\n <div class=\"eds-tabs-navigation\">\n <div class=\"eds-tabs-navigation__left-item\">\n <button edsIconButton\n (click)=\"goToLeft()\"\n [euiDisabled]=\"navigationLeftButtonDisabled\"\n icon=\"chevron-left\"\n ariaLabel=\"Scroll left\">\n </button>\n </div>\n\n <ul #euiTabsHeaders class=\"eds-tab-items\" [attr.data-offset]=\"currentOffset\" role=\"tablist\" [attr.aria-label]=\"ariaLabel\">\n @for (tab of tabs; let i = $index; track tab) {\n @if (tab.isVisible$ | async) {\n <li #euiTabListItems\n class=\"eds-tab-item\"\n id=\"tab-{{ i + 1 }}-{{ tabId }}\"\n [tabindex]=\"i === activeTabIndex ? '0' : '-1'\"\n role=\"tab\"\n attr.aria-controls=\"tabpanel-{{ i + 1 }}-{{ tabId }}\"\n [attr.aria-selected]=\"i === activeTabIndex\"\n [class.eds-tab-item--active]=\"i === activeTabIndex\"\n [class.eds-tab-item--disabled]=\"tab.isDisabled$ | async\"\n attr.aria-disabled=\"{{ tab.isDisabled$ | async }}\"\n (click)=\"tabListItemClick(i)\"\n (keydown)=\"onKeydown(i, $event)\">\n <ng-template [cdkPortalOutlet]=\"tab.templateHeader.templatePortal\"></ng-template>\n\n @if (tab.isClosable$ | async) {\n <button edsIconButton\n [tabindex]=\"-1\"\n ariaLabel=\"Closable\"\n euiRounded\n class=\"eds-tab-close-button\"\n icon=\"x\"\n euiSizeS\n [euiDisabled]=\"tab.isDisabled$ | async\"\n (buttonClick)=\"close(i, $event)\">\n </button>\n }\n </li>\n }\n }\n </ul>\n\n <div class=\"eds-tabs-navigation__right-item\">\n <button edsIconButton\n (click)=\"goToRight()\"\n [euiDisabled]=\"navigationRightButtonDisabled\"\n icon=\"chevron-right\"\n ariaLabel=\"Scroll right\">\n </button>\n </div>\n </div>\n <div #euiTabsRightContent class=\"eds-tabs-right-content-wrapper\">\n <ng-content select=\"eds-tabs-right-content\"></ng-content>\n </div>\n</div>\n\n@for (tab of tabs; let i = $index; track tab) {\n @if (i === activeTabIndex && (tab.isDisabled$ | async) === false && tab.templateBody) {\n <div id=\"tabpanel-{{ i + 1 }}-{{ tabId }}\" class=\"eds-tab-body-container\" role=\"tabpanel\" attr.aria-labelledby=\"tab-{{ i + 1 }}-{{ tabId }}\">\n <ng-template [cdkPortalOutlet]=\"tab.templateBody.templatePortal\" (attached)=\"onAttached(i + 1)\"></ng-template>\n </div>\n }\n}\n", styles: [".eui-21 :host.eds-tabs{--_label-font: var(--eui-f-m-semi-bold);--_sublabel-font: var(--eui-f-s)}.eui-21 :host.eds-tabs{display:flex;flex-direction:column;width:100%}.eui-21 :host.eds-tabs .eds-tab-item{--_border-color: transparent;--_color: var(--eds-c-foreground-subtler);--_color-hover: var(--eds-c-foreground)}.eui-21 :host.eds-tabs .eds-tab-item--active{--_color: var(--eds-c-foreground);--_border-color: var(--eds-c-border)}.eui-21 :host.eds-tabs .eds-tab-item--disabled{--_color: var(--eds-c-foreground-disabled);--_icon-color: var(--eds-c-foreground-disabled);--_border-color-hover: transparent}.eui-21 :host.eds-tabs .eds-tabs-wrapper{align-items:center;border-bottom:var(--eds-bw-xs) solid var(--eds-c-border-divider);display:flex;overflow:hidden;position:relative}.eui-21 :host.eds-tabs .eds-tabs-wrapper .eds-tabs-right-content-wrapper{display:flex;margin-left:var(--eds-sp-m)}.eui-21 :host.eds-tabs .eds-tab-items{display:flex;height:100%;list-style:none;list-style-type:none;margin:0;padding:0}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item{align-items:center;background-color:inherit;border:var(--eui-bw-none);border-bottom:var(--eds-bw-s) solid transparent;color:var(--_color);cursor:pointer;display:flex;padding:var(--eds-sp-s) var(--eds-sp-m) var(--eds-sp-s) var(--eds-sp-m);position:relative;text-align:center}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item:focus-visible:not([readonly]){outline:2px solid var(--eds-c-border-primary)!important;outline-offset:-2px!important;transition:none}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item ::ng-deep .eds-tab-header-wrapper{display:flex;align-items:center;gap:var(--eds-sp-s);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item ::ng-deep .eds-tab-header-wrapper ::ng-deep .eds-tab-header-label-wrapper{display:flex;flex-direction:column}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item ::ng-deep .eds-tab-header-wrapper ::ng-deep .eds-tab-header-label-wrapper ::ng-deep .eds-tab-header-label{display:block;font-weight:700;line-height:var(--eds-sp-l);color:var(--_color);font:var(--_label-font)}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item ::ng-deep .eds-tab-header-wrapper ::ng-deep .eds-tab-header-label-wrapper ::ng-deep .eds-tab-header-sub-label{font-weight:400;color:var(--_color);font:var(--_sublabel-font)}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item ::ng-deep .eds-tab-header-left-content,.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item ::ng-deep .eds-tab-header-right-content{display:flex}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item--active{border-color:var(--_border-color)}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item--disabled{cursor:not-allowed;pointer-events:none}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item:hover:not(.eds-tab-header--active) ::ng-deep .eds-tab-header-label{color:var(--_color-hover)}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item:hover:not(.eds-tab-header--active) ::ng-deep .eds-tab-header-sub-label{color:var(--_color-hover)}.eui-21 :host.eds-tabs .eds-tabs-navigation{display:flex;overflow:hidden;position:relative;width:100%}.eui-21 :host.eds-tabs .eds-tabs-navigation .eds-tabs-navigation__left-item,.eui-21 :host.eds-tabs .eds-tabs-navigation .eds-tabs-navigation__right-item{align-self:center;background-color:var(--eui-c-surface-page);display:none;height:100%;position:absolute;z-index:1}.eui-21 :host.eds-tabs .eds-tabs-navigation .eds-tabs-navigation__left-item{left:0}.eui-21 :host.eds-tabs .eds-tabs-navigation .eds-tabs-navigation__right-item{right:0}.eui-21 :host.eds-tabs .eds-tabs-wrapper.eui-tabs-wrapper--scrolling .eds-tab-items{padding-left:var(--eui-s-5xl)}.eui-21 :host.eds-tabs .eds-tabs-wrapper.eui-tabs-wrapper--scrolling .eds-tab-items .eds-tab-item{min-width:unset;overflow:unset}.eui-21 :host.eds-tabs .eds-tabs-wrapper.eui-tabs-wrapper--scrolling .eds-tabs-navigation__left-item,.eui-21 :host.eds-tabs .eds-tabs-wrapper.eui-tabs-wrapper--scrolling .eds-tabs-navigation__right-item{display:flex}.eui-21 :host.eds-tabs .eds-tab-body-container ::ng-deep .eds-tab__body{padding:var(--eui-s-s)}.eui-21 :host.eds-tabs .eds-tab-body-container ::ng-deep .eds-tab__body:focus-visible:not([readonly]){outline:2px solid var(--eds-c-border-primary)!important;outline-offset:-2px!important;transition:none}.eui-21 :host.eds-tabs .eds-tab-body-container ::ng-deep .eds-tab__body.eds-tab__body--no-padding{padding:0}\n"], dependencies: [{ kind: "ngmodule", type: PortalModule }, { kind: "directive", type: i1.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "component", type: i2.EdsIconButton, selector: "button[edsIconButton]", inputs: ["icon", "ariaLabel", "euiRounded", "euiDisabled"], outputs: ["buttonClick"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
549
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.5", type: EdsTabs, isStandalone: true, selector: "eds-tabs", inputs: { e2eAttr: { classPropertyName: "e2eAttr", publicName: "e2eAttr", isSignal: true, isRequired: false, transformFunction: null }, activeTabIndex: { classPropertyName: "activeTabIndex", publicName: "activeTabIndex", isSignal: false, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, isMainNavigation: { classPropertyName: "isMainNavigation", publicName: "isMainNavigation", isSignal: true, isRequired: false, transformFunction: null }, isFlat: { classPropertyName: "isFlat", publicName: "isFlat", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { tabClose: "tabClose", tabActivate: "tabActivate", tabClick: "tabClick" }, host: { properties: { "attr.data-e2e": "e2eAttr()" }, classAttribute: "eds-tabs" }, queries: [{ propertyName: "_tabs", predicate: i0.forwardRef(() => EdsTab) }], viewQueries: [{ propertyName: "edsTabsHeadersContainer", first: true, predicate: ["euiTabsHeadersContainer"], descendants: true, isSignal: true }, { propertyName: "edsTabsHeaders", first: true, predicate: ["euiTabsHeaders"], descendants: true, isSignal: true }, { propertyName: "edsTabsRightContent", first: true, predicate: ["euiTabsRightContent"], descendants: true, isSignal: true }, { propertyName: "edsTabListItems", predicate: ["euiTabListItems"], descendants: true, isSignal: true }], usesOnChanges: true, ngImport: i0, template: "<div #edsTabsHeadersContainer class=\"eds-tabs-wrapper\" [class.eds-tabs-wrapper--scrolling]=\"scrolling\">\n <div class=\"eds-tabs-navigation\">\n <div class=\"eds-tabs-navigation__left-item\">\n <button edsIconButton\n (click)=\"goToLeft()\"\n [edsDisabled]=\"navigationLeftButtonDisabled\"\n icon=\"chevron-left\"\n ariaLabel=\"Scroll left\">\n </button>\n </div>\n\n <ul #edsTabsHeaders class=\"eds-tab-items\" [attr.data-offset]=\"currentOffset\" role=\"tablist\" [attr.aria-label]=\"ariaLabel\">\n @for (tab of tabs; let i = $index; track tab) {\n @if (tab.isVisible$ | async) {\n <li #euiTabListItems\n class=\"eds-tab-item\"\n id=\"tab-{{ i + 1 }}-{{ tabId }}\"\n [tabindex]=\"i === activeTabIndex ? '0' : '-1'\"\n role=\"tab\"\n attr.aria-controls=\"tabpanel-{{ i + 1 }}-{{ tabId }}\"\n [attr.aria-selected]=\"i === activeTabIndex\"\n [class.eds-tab-item--active]=\"i === activeTabIndex\"\n [class.eds-tab-item--disabled]=\"tab.isDisabled$ | async\"\n attr.aria-disabled=\"{{ tab.isDisabled$ | async }}\"\n (click)=\"tabListItemClick(i)\"\n (keydown)=\"onKeydown(i, $event)\">\n <ng-template [cdkPortalOutlet]=\"tab.templateHeader().templatePortal\"></ng-template>\n\n @if (tab.isClosable$ | async) {\n <button edsIconButton\n [tabindex]=\"-1\"\n ariaLabel=\"Closable\"\n edsRounded\n class=\"eds-tab-close-button\"\n icon=\"x\"\n edsSizeS\n [edsDisabled]=\"tab.isDisabled$ | async\"\n (buttonClick)=\"close(i, $event)\">\n </button>\n }\n </li>\n }\n }\n </ul>\n\n <div class=\"eds-tabs-navigation__right-item\">\n <button edsIconButton\n (click)=\"goToRight()\"\n [edsDisabled]=\"navigationRightButtonDisabled\"\n icon=\"chevron-right\"\n ariaLabel=\"Scroll right\">\n </button>\n </div>\n </div>\n <div #edsTabsRightContent class=\"eds-tabs-right-content-wrapper\">\n <ng-content select=\"eds-tabs-right-content\"></ng-content>\n </div>\n</div>\n\n@for (tab of tabs; let i = $index; track tab) {\n @if (i === activeTabIndex && (tab.isDisabled$ | async) === false && tab.templateBody) {\n <div id=\"tabpanel-{{ i + 1 }}-{{ tabId }}\" class=\"eds-tab-body-container\" role=\"tabpanel\" attr.aria-labelledby=\"tab-{{ i + 1 }}-{{ tabId }}\">\n <ng-template [cdkPortalOutlet]=\"tab.templateBody.templatePortal\" (attached)=\"onAttached(i + 1)\"></ng-template>\n </div>\n }\n}\n", styles: [".eui-21 :host.eds-tabs{--_label-font: var(--eui-f-m-semi-bold);--_sublabel-font: var(--eui-f-s)}.eui-21 :host.eds-tabs{display:flex;flex-direction:column;width:100%}.eui-21 :host.eds-tabs .eds-tab-item{--_border-color: transparent;--_color: var(--eds-c-foreground-subtler);--_color-hover: var(--eds-c-foreground)}.eui-21 :host.eds-tabs .eds-tab-item--active{--_color: var(--eds-c-foreground);--_border-color: var(--eds-c-border)}.eui-21 :host.eds-tabs .eds-tab-item--disabled{--_color: var(--eds-c-foreground-disabled);--_icon-color: var(--eds-c-foreground-disabled);--_border-color-hover: transparent}.eui-21 :host.eds-tabs .eds-tabs-wrapper{align-items:center;border-bottom:var(--eds-bw-xs) solid var(--eds-c-border-divider);display:flex;overflow:hidden;position:relative}.eui-21 :host.eds-tabs .eds-tabs-wrapper .eds-tabs-right-content-wrapper{display:flex;margin-left:var(--eds-sp-m)}.eui-21 :host.eds-tabs .eds-tab-items{display:flex;height:100%;list-style:none;list-style-type:none;margin:0;padding:0}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item{align-items:center;background-color:inherit;border:var(--eui-bw-none);border-bottom:var(--eds-bw-s) solid transparent;color:var(--_color);cursor:pointer;display:flex;padding:var(--eds-sp-s) var(--eds-sp-m) var(--eds-sp-s) var(--eds-sp-m);position:relative;text-align:center;gap:var(--eds-sp-2xs)}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item:focus-visible:not([readonly]){outline:2px solid var(--eds-c-border-primary)!important;outline-offset:-2px!important;transition:none}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item ::ng-deep .eds-tab-header-wrapper{display:flex;align-items:center;gap:var(--eds-sp-s);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item ::ng-deep .eds-tab-header-wrapper ::ng-deep .eds-tab-header-label-wrapper{display:flex;flex-direction:column}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item ::ng-deep .eds-tab-header-wrapper ::ng-deep .eds-tab-header-label-wrapper ::ng-deep .eds-tab-header-label{display:block;font-weight:700;line-height:var(--eds-sp-l);color:var(--_color);font:var(--_label-font)}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item ::ng-deep .eds-tab-header-wrapper ::ng-deep .eds-tab-header-label-wrapper ::ng-deep .eds-tab-header-sub-label{font-weight:400;color:var(--_color);font:var(--_sublabel-font)}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item ::ng-deep .eds-tab-header-left-content,.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item ::ng-deep .eds-tab-header-right-content{display:flex}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item--active{border-color:var(--_border-color)}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item--disabled{cursor:not-allowed;pointer-events:none}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item:hover:not(.eds-tab-header--active) ::ng-deep .eds-tab-header-label{color:var(--_color-hover)}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item:hover:not(.eds-tab-header--active) ::ng-deep .eds-tab-header-sub-label{color:var(--_color-hover)}.eui-21 :host.eds-tabs .eds-tabs-navigation{display:flex;overflow:hidden;position:relative;width:100%}.eui-21 :host.eds-tabs .eds-tabs-navigation .eds-tabs-navigation__left-item,.eui-21 :host.eds-tabs .eds-tabs-navigation .eds-tabs-navigation__right-item{align-self:center;background-color:var(--eui-c-surface-page);display:none;height:100%;position:absolute;z-index:1}.eui-21 :host.eds-tabs .eds-tabs-navigation .eds-tabs-navigation__left-item{left:0}.eui-21 :host.eds-tabs .eds-tabs-navigation .eds-tabs-navigation__right-item{right:0}.eui-21 :host.eds-tabs .eds-tabs-wrapper.eui-tabs-wrapper--scrolling .eds-tab-items{padding-left:var(--eui-s-5xl)}.eui-21 :host.eds-tabs .eds-tabs-wrapper.eui-tabs-wrapper--scrolling .eds-tab-items .eds-tab-item{min-width:unset;overflow:unset}.eui-21 :host.eds-tabs .eds-tabs-wrapper.eui-tabs-wrapper--scrolling .eds-tabs-navigation__left-item,.eui-21 :host.eds-tabs .eds-tabs-wrapper.eui-tabs-wrapper--scrolling .eds-tabs-navigation__right-item{display:flex}.eui-21 :host.eds-tabs .eds-tab-body-container ::ng-deep .eds-tab__body{padding:var(--eui-s-s)}.eui-21 :host.eds-tabs .eds-tab-body-container ::ng-deep .eds-tab__body:focus-visible:not([readonly]){outline:2px solid var(--eds-c-border-primary)!important;outline-offset:-2px!important;transition:none}.eui-21 :host.eds-tabs .eds-tab-body-container ::ng-deep .eds-tab__body.eds-tab__body--no-padding{padding:0}\n"], dependencies: [{ kind: "ngmodule", type: PortalModule }, { kind: "directive", type: i1.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "component", type: i2.EdsIconButton, selector: "button[edsIconButton]", inputs: ["icon", "ariaLabel", "edsRounded", "edsDisabled"], outputs: ["buttonClick"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
549
550
  }
550
551
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: EdsTabs, decorators: [{
551
552
  type: Component,
552
- args: [{ selector: 'eds-tabs', changeDetection: ChangeDetectionStrategy.OnPush, imports: [
553
+ args: [{ selector: 'eds-tabs', changeDetection: ChangeDetectionStrategy.OnPush, host: {
554
+ class: 'eds-tabs',
555
+ '[attr.data-e2e]': 'e2eAttr()',
556
+ }, imports: [
553
557
  AsyncPipe,
554
558
  PortalModule,
555
559
  ...EDS_ICON_BUTTON,
556
- ], template: "<div #euiTabsHeadersContainer class=\"eds-tabs-wrapper\" [class.eds-tabs-wrapper--scrolling]=\"scrolling\">\n <div class=\"eds-tabs-navigation\">\n <div class=\"eds-tabs-navigation__left-item\">\n <button edsIconButton\n (click)=\"goToLeft()\"\n [euiDisabled]=\"navigationLeftButtonDisabled\"\n icon=\"chevron-left\"\n ariaLabel=\"Scroll left\">\n </button>\n </div>\n\n <ul #euiTabsHeaders class=\"eds-tab-items\" [attr.data-offset]=\"currentOffset\" role=\"tablist\" [attr.aria-label]=\"ariaLabel\">\n @for (tab of tabs; let i = $index; track tab) {\n @if (tab.isVisible$ | async) {\n <li #euiTabListItems\n class=\"eds-tab-item\"\n id=\"tab-{{ i + 1 }}-{{ tabId }}\"\n [tabindex]=\"i === activeTabIndex ? '0' : '-1'\"\n role=\"tab\"\n attr.aria-controls=\"tabpanel-{{ i + 1 }}-{{ tabId }}\"\n [attr.aria-selected]=\"i === activeTabIndex\"\n [class.eds-tab-item--active]=\"i === activeTabIndex\"\n [class.eds-tab-item--disabled]=\"tab.isDisabled$ | async\"\n attr.aria-disabled=\"{{ tab.isDisabled$ | async }}\"\n (click)=\"tabListItemClick(i)\"\n (keydown)=\"onKeydown(i, $event)\">\n <ng-template [cdkPortalOutlet]=\"tab.templateHeader.templatePortal\"></ng-template>\n\n @if (tab.isClosable$ | async) {\n <button edsIconButton\n [tabindex]=\"-1\"\n ariaLabel=\"Closable\"\n euiRounded\n class=\"eds-tab-close-button\"\n icon=\"x\"\n euiSizeS\n [euiDisabled]=\"tab.isDisabled$ | async\"\n (buttonClick)=\"close(i, $event)\">\n </button>\n }\n </li>\n }\n }\n </ul>\n\n <div class=\"eds-tabs-navigation__right-item\">\n <button edsIconButton\n (click)=\"goToRight()\"\n [euiDisabled]=\"navigationRightButtonDisabled\"\n icon=\"chevron-right\"\n ariaLabel=\"Scroll right\">\n </button>\n </div>\n </div>\n <div #euiTabsRightContent class=\"eds-tabs-right-content-wrapper\">\n <ng-content select=\"eds-tabs-right-content\"></ng-content>\n </div>\n</div>\n\n@for (tab of tabs; let i = $index; track tab) {\n @if (i === activeTabIndex && (tab.isDisabled$ | async) === false && tab.templateBody) {\n <div id=\"tabpanel-{{ i + 1 }}-{{ tabId }}\" class=\"eds-tab-body-container\" role=\"tabpanel\" attr.aria-labelledby=\"tab-{{ i + 1 }}-{{ tabId }}\">\n <ng-template [cdkPortalOutlet]=\"tab.templateBody.templatePortal\" (attached)=\"onAttached(i + 1)\"></ng-template>\n </div>\n }\n}\n", styles: [".eui-21 :host.eds-tabs{--_label-font: var(--eui-f-m-semi-bold);--_sublabel-font: var(--eui-f-s)}.eui-21 :host.eds-tabs{display:flex;flex-direction:column;width:100%}.eui-21 :host.eds-tabs .eds-tab-item{--_border-color: transparent;--_color: var(--eds-c-foreground-subtler);--_color-hover: var(--eds-c-foreground)}.eui-21 :host.eds-tabs .eds-tab-item--active{--_color: var(--eds-c-foreground);--_border-color: var(--eds-c-border)}.eui-21 :host.eds-tabs .eds-tab-item--disabled{--_color: var(--eds-c-foreground-disabled);--_icon-color: var(--eds-c-foreground-disabled);--_border-color-hover: transparent}.eui-21 :host.eds-tabs .eds-tabs-wrapper{align-items:center;border-bottom:var(--eds-bw-xs) solid var(--eds-c-border-divider);display:flex;overflow:hidden;position:relative}.eui-21 :host.eds-tabs .eds-tabs-wrapper .eds-tabs-right-content-wrapper{display:flex;margin-left:var(--eds-sp-m)}.eui-21 :host.eds-tabs .eds-tab-items{display:flex;height:100%;list-style:none;list-style-type:none;margin:0;padding:0}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item{align-items:center;background-color:inherit;border:var(--eui-bw-none);border-bottom:var(--eds-bw-s) solid transparent;color:var(--_color);cursor:pointer;display:flex;padding:var(--eds-sp-s) var(--eds-sp-m) var(--eds-sp-s) var(--eds-sp-m);position:relative;text-align:center}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item:focus-visible:not([readonly]){outline:2px solid var(--eds-c-border-primary)!important;outline-offset:-2px!important;transition:none}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item ::ng-deep .eds-tab-header-wrapper{display:flex;align-items:center;gap:var(--eds-sp-s);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item ::ng-deep .eds-tab-header-wrapper ::ng-deep .eds-tab-header-label-wrapper{display:flex;flex-direction:column}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item ::ng-deep .eds-tab-header-wrapper ::ng-deep .eds-tab-header-label-wrapper ::ng-deep .eds-tab-header-label{display:block;font-weight:700;line-height:var(--eds-sp-l);color:var(--_color);font:var(--_label-font)}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item ::ng-deep .eds-tab-header-wrapper ::ng-deep .eds-tab-header-label-wrapper ::ng-deep .eds-tab-header-sub-label{font-weight:400;color:var(--_color);font:var(--_sublabel-font)}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item ::ng-deep .eds-tab-header-left-content,.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item ::ng-deep .eds-tab-header-right-content{display:flex}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item--active{border-color:var(--_border-color)}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item--disabled{cursor:not-allowed;pointer-events:none}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item:hover:not(.eds-tab-header--active) ::ng-deep .eds-tab-header-label{color:var(--_color-hover)}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item:hover:not(.eds-tab-header--active) ::ng-deep .eds-tab-header-sub-label{color:var(--_color-hover)}.eui-21 :host.eds-tabs .eds-tabs-navigation{display:flex;overflow:hidden;position:relative;width:100%}.eui-21 :host.eds-tabs .eds-tabs-navigation .eds-tabs-navigation__left-item,.eui-21 :host.eds-tabs .eds-tabs-navigation .eds-tabs-navigation__right-item{align-self:center;background-color:var(--eui-c-surface-page);display:none;height:100%;position:absolute;z-index:1}.eui-21 :host.eds-tabs .eds-tabs-navigation .eds-tabs-navigation__left-item{left:0}.eui-21 :host.eds-tabs .eds-tabs-navigation .eds-tabs-navigation__right-item{right:0}.eui-21 :host.eds-tabs .eds-tabs-wrapper.eui-tabs-wrapper--scrolling .eds-tab-items{padding-left:var(--eui-s-5xl)}.eui-21 :host.eds-tabs .eds-tabs-wrapper.eui-tabs-wrapper--scrolling .eds-tab-items .eds-tab-item{min-width:unset;overflow:unset}.eui-21 :host.eds-tabs .eds-tabs-wrapper.eui-tabs-wrapper--scrolling .eds-tabs-navigation__left-item,.eui-21 :host.eds-tabs .eds-tabs-wrapper.eui-tabs-wrapper--scrolling .eds-tabs-navigation__right-item{display:flex}.eui-21 :host.eds-tabs .eds-tab-body-container ::ng-deep .eds-tab__body{padding:var(--eui-s-s)}.eui-21 :host.eds-tabs .eds-tab-body-container ::ng-deep .eds-tab__body:focus-visible:not([readonly]){outline:2px solid var(--eds-c-border-primary)!important;outline-offset:-2px!important;transition:none}.eui-21 :host.eds-tabs .eds-tab-body-container ::ng-deep .eds-tab__body.eds-tab__body--no-padding{padding:0}\n"] }]
557
- }], propDecorators: { elementClass: [{
558
- type: HostBinding,
559
- args: ['class']
560
- }], e2eAttr: [{
561
- type: HostBinding,
562
- args: ['attr.data-e2e']
563
- }, {
564
- type: Input
565
- }], activeTabIndex: [{
560
+ ], template: "<div #edsTabsHeadersContainer class=\"eds-tabs-wrapper\" [class.eds-tabs-wrapper--scrolling]=\"scrolling\">\n <div class=\"eds-tabs-navigation\">\n <div class=\"eds-tabs-navigation__left-item\">\n <button edsIconButton\n (click)=\"goToLeft()\"\n [edsDisabled]=\"navigationLeftButtonDisabled\"\n icon=\"chevron-left\"\n ariaLabel=\"Scroll left\">\n </button>\n </div>\n\n <ul #edsTabsHeaders class=\"eds-tab-items\" [attr.data-offset]=\"currentOffset\" role=\"tablist\" [attr.aria-label]=\"ariaLabel\">\n @for (tab of tabs; let i = $index; track tab) {\n @if (tab.isVisible$ | async) {\n <li #euiTabListItems\n class=\"eds-tab-item\"\n id=\"tab-{{ i + 1 }}-{{ tabId }}\"\n [tabindex]=\"i === activeTabIndex ? '0' : '-1'\"\n role=\"tab\"\n attr.aria-controls=\"tabpanel-{{ i + 1 }}-{{ tabId }}\"\n [attr.aria-selected]=\"i === activeTabIndex\"\n [class.eds-tab-item--active]=\"i === activeTabIndex\"\n [class.eds-tab-item--disabled]=\"tab.isDisabled$ | async\"\n attr.aria-disabled=\"{{ tab.isDisabled$ | async }}\"\n (click)=\"tabListItemClick(i)\"\n (keydown)=\"onKeydown(i, $event)\">\n <ng-template [cdkPortalOutlet]=\"tab.templateHeader().templatePortal\"></ng-template>\n\n @if (tab.isClosable$ | async) {\n <button edsIconButton\n [tabindex]=\"-1\"\n ariaLabel=\"Closable\"\n edsRounded\n class=\"eds-tab-close-button\"\n icon=\"x\"\n edsSizeS\n [edsDisabled]=\"tab.isDisabled$ | async\"\n (buttonClick)=\"close(i, $event)\">\n </button>\n }\n </li>\n }\n }\n </ul>\n\n <div class=\"eds-tabs-navigation__right-item\">\n <button edsIconButton\n (click)=\"goToRight()\"\n [edsDisabled]=\"navigationRightButtonDisabled\"\n icon=\"chevron-right\"\n ariaLabel=\"Scroll right\">\n </button>\n </div>\n </div>\n <div #edsTabsRightContent class=\"eds-tabs-right-content-wrapper\">\n <ng-content select=\"eds-tabs-right-content\"></ng-content>\n </div>\n</div>\n\n@for (tab of tabs; let i = $index; track tab) {\n @if (i === activeTabIndex && (tab.isDisabled$ | async) === false && tab.templateBody) {\n <div id=\"tabpanel-{{ i + 1 }}-{{ tabId }}\" class=\"eds-tab-body-container\" role=\"tabpanel\" attr.aria-labelledby=\"tab-{{ i + 1 }}-{{ tabId }}\">\n <ng-template [cdkPortalOutlet]=\"tab.templateBody.templatePortal\" (attached)=\"onAttached(i + 1)\"></ng-template>\n </div>\n }\n}\n", styles: [".eui-21 :host.eds-tabs{--_label-font: var(--eui-f-m-semi-bold);--_sublabel-font: var(--eui-f-s)}.eui-21 :host.eds-tabs{display:flex;flex-direction:column;width:100%}.eui-21 :host.eds-tabs .eds-tab-item{--_border-color: transparent;--_color: var(--eds-c-foreground-subtler);--_color-hover: var(--eds-c-foreground)}.eui-21 :host.eds-tabs .eds-tab-item--active{--_color: var(--eds-c-foreground);--_border-color: var(--eds-c-border)}.eui-21 :host.eds-tabs .eds-tab-item--disabled{--_color: var(--eds-c-foreground-disabled);--_icon-color: var(--eds-c-foreground-disabled);--_border-color-hover: transparent}.eui-21 :host.eds-tabs .eds-tabs-wrapper{align-items:center;border-bottom:var(--eds-bw-xs) solid var(--eds-c-border-divider);display:flex;overflow:hidden;position:relative}.eui-21 :host.eds-tabs .eds-tabs-wrapper .eds-tabs-right-content-wrapper{display:flex;margin-left:var(--eds-sp-m)}.eui-21 :host.eds-tabs .eds-tab-items{display:flex;height:100%;list-style:none;list-style-type:none;margin:0;padding:0}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item{align-items:center;background-color:inherit;border:var(--eui-bw-none);border-bottom:var(--eds-bw-s) solid transparent;color:var(--_color);cursor:pointer;display:flex;padding:var(--eds-sp-s) var(--eds-sp-m) var(--eds-sp-s) var(--eds-sp-m);position:relative;text-align:center;gap:var(--eds-sp-2xs)}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item:focus-visible:not([readonly]){outline:2px solid var(--eds-c-border-primary)!important;outline-offset:-2px!important;transition:none}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item ::ng-deep .eds-tab-header-wrapper{display:flex;align-items:center;gap:var(--eds-sp-s);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item ::ng-deep .eds-tab-header-wrapper ::ng-deep .eds-tab-header-label-wrapper{display:flex;flex-direction:column}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item ::ng-deep .eds-tab-header-wrapper ::ng-deep .eds-tab-header-label-wrapper ::ng-deep .eds-tab-header-label{display:block;font-weight:700;line-height:var(--eds-sp-l);color:var(--_color);font:var(--_label-font)}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item ::ng-deep .eds-tab-header-wrapper ::ng-deep .eds-tab-header-label-wrapper ::ng-deep .eds-tab-header-sub-label{font-weight:400;color:var(--_color);font:var(--_sublabel-font)}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item ::ng-deep .eds-tab-header-left-content,.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item ::ng-deep .eds-tab-header-right-content{display:flex}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item--active{border-color:var(--_border-color)}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item--disabled{cursor:not-allowed;pointer-events:none}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item:hover:not(.eds-tab-header--active) ::ng-deep .eds-tab-header-label{color:var(--_color-hover)}.eui-21 :host.eds-tabs .eds-tab-items .eds-tab-item:hover:not(.eds-tab-header--active) ::ng-deep .eds-tab-header-sub-label{color:var(--_color-hover)}.eui-21 :host.eds-tabs .eds-tabs-navigation{display:flex;overflow:hidden;position:relative;width:100%}.eui-21 :host.eds-tabs .eds-tabs-navigation .eds-tabs-navigation__left-item,.eui-21 :host.eds-tabs .eds-tabs-navigation .eds-tabs-navigation__right-item{align-self:center;background-color:var(--eui-c-surface-page);display:none;height:100%;position:absolute;z-index:1}.eui-21 :host.eds-tabs .eds-tabs-navigation .eds-tabs-navigation__left-item{left:0}.eui-21 :host.eds-tabs .eds-tabs-navigation .eds-tabs-navigation__right-item{right:0}.eui-21 :host.eds-tabs .eds-tabs-wrapper.eui-tabs-wrapper--scrolling .eds-tab-items{padding-left:var(--eui-s-5xl)}.eui-21 :host.eds-tabs .eds-tabs-wrapper.eui-tabs-wrapper--scrolling .eds-tab-items .eds-tab-item{min-width:unset;overflow:unset}.eui-21 :host.eds-tabs .eds-tabs-wrapper.eui-tabs-wrapper--scrolling .eds-tabs-navigation__left-item,.eui-21 :host.eds-tabs .eds-tabs-wrapper.eui-tabs-wrapper--scrolling .eds-tabs-navigation__right-item{display:flex}.eui-21 :host.eds-tabs .eds-tab-body-container ::ng-deep .eds-tab__body{padding:var(--eui-s-s)}.eui-21 :host.eds-tabs .eds-tab-body-container ::ng-deep .eds-tab__body:focus-visible:not([readonly]){outline:2px solid var(--eds-c-border-primary)!important;outline-offset:-2px!important;transition:none}.eui-21 :host.eds-tabs .eds-tab-body-container ::ng-deep .eds-tab__body.eds-tab__body--no-padding{padding:0}\n"] }]
561
+ }], propDecorators: { e2eAttr: [{ type: i0.Input, args: [{ isSignal: true, alias: "e2eAttr", required: false }] }], activeTabIndex: [{
566
562
  type: Input
567
- }], ariaLabel: [{
568
- type: Input
569
- }], isMainNavigation: [{
570
- type: Input,
571
- args: [{ transform: booleanAttribute }]
572
- }], isFlat: [{
573
- type: Input,
574
- args: [{ transform: booleanAttribute }]
575
- }], tabClose: [{
576
- type: Output
577
- }], tabActivate: [{
578
- type: Output
579
- }], tabClick: [{
580
- type: Output
581
- }], _tabs: [{
563
+ }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], isMainNavigation: [{ type: i0.Input, args: [{ isSignal: true, alias: "isMainNavigation", required: false }] }], isFlat: [{ type: i0.Input, args: [{ isSignal: true, alias: "isFlat", required: false }] }], tabClose: [{ type: i0.Output, args: ["tabClose"] }], tabActivate: [{ type: i0.Output, args: ["tabActivate"] }], tabClick: [{ type: i0.Output, args: ["tabClick"] }], _tabs: [{
582
564
  type: ContentChildren,
583
565
  args: [forwardRef(() => EdsTab), { descendants: false }]
584
- }], euiTabsHeadersContainer: [{
585
- type: ViewChild,
586
- args: ['euiTabsHeadersContainer']
587
- }], euiTabsHeaders: [{
588
- type: ViewChild,
589
- args: ['euiTabsHeaders']
590
- }], euiTabsRightContent: [{
591
- type: ViewChild,
592
- args: ['euiTabsRightContent']
593
- }], euiTabListItems: [{
594
- type: ViewChildren,
595
- args: ['euiTabListItems']
596
- }] } });
566
+ }], edsTabsHeadersContainer: [{ type: i0.ViewChild, args: ['euiTabsHeadersContainer', { isSignal: true }] }], edsTabsHeaders: [{ type: i0.ViewChild, args: ['euiTabsHeaders', { isSignal: true }] }], edsTabsRightContent: [{ type: i0.ViewChild, args: ['euiTabsRightContent', { isSignal: true }] }], edsTabListItems: [{ type: i0.ViewChildren, args: ['euiTabListItems', { isSignal: true }] }] } });
597
567
 
598
568
  class EdsTabsRightContent {
599
569
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: EdsTabsRightContent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }