@eui/eds 23.0.0-alpha.6 → 23.0.0-alpha.8

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 +86 -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
@@ -1 +1 @@
1
- {"version":3,"file":"eui-eds-eds-tabs.mjs","sources":["../../eds-tabs/eds-tab-header.ts","../../eds-tabs/eds-tab-header.html","../../eds-tabs/eds-tab-body.ts","../../eds-tabs/eds-tab-body.html","../../eds-tabs/eds-tab.ts","../../eds-tabs/eds-tabs.ts","../../eds-tabs/eds-tabs.html","../../eds-tabs/eds-tabs-right-content.ts","../../eds-tabs/eds-tab-header-label.ts","../../eds-tabs/eds-tab-header-sub-label.ts","../../eds-tabs/eds-tab-header-left-content.ts","../../eds-tabs/eds-tab-header-right-content.ts","../../eds-tabs/index.ts","../../eds-tabs/eui-eds-eds-tabs.ts"],"sourcesContent":["import { Component, TemplateRef, ViewChild, ViewContainerRef, AfterViewInit, inject } from '@angular/core';\nimport { TemplatePortal } from '@angular/cdk/portal';\n\n@Component({\n selector: 'eds-tab-header',\n templateUrl: './eds-tab-header.html',\n})\nexport class EdsTabHeader implements AfterViewInit {\n @ViewChild('templateRef') templateRef!: TemplateRef<HTMLElement>;\n\n public templatePortal!: TemplatePortal;\n private viewContainerRef = inject(ViewContainerRef);\n\n ngAfterViewInit(): void {\n this.templatePortal = new TemplatePortal(this.templateRef, this.viewContainerRef);\n }\n}\n","<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","import { Component, Input, TemplateRef, ViewChild, ViewContainerRef, AfterViewInit, booleanAttribute, inject } from '@angular/core';\nimport { TemplatePortal } from '@angular/cdk/portal';\nimport { BehaviorSubject } from 'rxjs';\nimport { AsyncPipe } from '@angular/common';\n\n@Component({\n selector: 'eds-tab-body',\n templateUrl: './eds-tab-body.html',\n imports: [\n AsyncPipe,\n ],\n})\nexport class EdsTabBody implements AfterViewInit {\n /**\n * Removes default padding from the tab content area.\n * Useful for full-width content, custom layouts, or when content provides its own spacing.\n * @default false\n */\n @Input({ transform: booleanAttribute }) hasNoContentPadding = false;\n\n @ViewChild('templateRef') templateRef!: TemplateRef<HTMLElement>;\n\n public templatePortal!: TemplatePortal;\n tabIndex$ = new BehaviorSubject(0);\n private viewContainerRef = inject(ViewContainerRef);\n\n ngAfterViewInit(): void {\n this.templatePortal = new TemplatePortal(this.templateRef, this.viewContainerRef);\n }\n}\n","<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","import {\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n Input,\n OnChanges,\n SimpleChanges,\n booleanAttribute,\n forwardRef,\n} from '@angular/core';\nimport { BehaviorSubject } from 'rxjs';\n\nimport { EdsTabHeader } from './eds-tab-header';\nimport { EdsTabBody } from './eds-tab-body';\n\n@Component({\n selector: 'eds-tab',\n template: '<ng-content/>',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class EdsTab implements OnChanges {\n /**\n * Unique identifier for the tab.\n * Used for programmatic tab selection and tracking.\n * Required for proper tab management and routing.\n */\n @Input() id!: string;\n /**\n * URL or route path associated with the tab.\n * Enables deep linking and browser history integration for tab navigation.\n */\n @Input() url!: string;\n /**\n * Data attribute used for end-to-end testing identification.\n * @default 'eui-tab'\n */\n @Input() e2eAttr = 'eds-tab';\n /**\n * Tooltip text displayed when hovering over the tab header.\n * Provides additional context or information about the tab content.\n */\n @Input() tooltip!: string;\n /**\n * Enables a close button on the tab header for dismissible tabs.\n * Allows users to remove or hide the tab from the tab bar.\n * @default false\n */\n @Input({ transform: booleanAttribute }) isClosable = false;\n /**\n * Disables the tab, preventing user interaction and selection.\n * Applies disabled styling and blocks tab activation.\n * @default false\n */\n @Input({ transform: booleanAttribute }) isDisabled = false;\n /**\n * Controls the visibility of the tab in the tab bar.\n * When false, hides the tab from display without removing it from the DOM.\n * @default true\n */\n @Input({ transform: booleanAttribute }) isVisible = true;\n /**\n * Enables automatic tab closure when the close button is clicked.\n * When false, close button click must be handled externally.\n * @default false\n */\n @Input({ transform: booleanAttribute }) isHandleCloseOnClose = false;\n /**\n * Enables automatic tab activation when the tab is clicked.\n * When false, tab activation must be handled externally.\n * @default false\n */\n @Input({ transform: booleanAttribute }) isHandleActivateTab = false;\n\n @ContentChild(forwardRef(() => EdsTabHeader)) templateHeader!: EdsTabHeader;\n @ContentChild(forwardRef(() => EdsTabBody)) templateBody!: EdsTabBody;\n\n @Input() euiVariant = 'euiPrimary';\n\n public isActive = false;\n\n public isVisible$ = new BehaviorSubject(this.isVisible);\n public isClosable$ = new BehaviorSubject(this.isClosable);\n public isDisabled$ = new BehaviorSubject(this.isDisabled);\n\n ngOnChanges(c: SimpleChanges): void {\n if (c?.isVisible) {\n this.isVisible$.next(c.isVisible.currentValue);\n }\n if (c?.isClosable) {\n this.isClosable$.next(c.isClosable.currentValue);\n }\n if (c?.isDisabled) {\n this.isDisabled$.next(c.isDisabled.currentValue);\n }\n }\n\n public activateTab(): void {\n this.isActive = true;\n }\n\n public deactivateTab(): void {\n this.isActive = false;\n }\n}\n","import {\n Component,\n ContentChildren,\n EventEmitter,\n Input,\n OnDestroy,\n Output,\n QueryList,\n forwardRef,\n AfterViewInit,\n ElementRef,\n ChangeDetectorRef,\n HostBinding,\n booleanAttribute,\n ChangeDetectionStrategy,\n ViewChild,\n SimpleChanges,\n ViewChildren,\n OnChanges,\n OnInit,\n inject,\n PLATFORM_ID,\n DOCUMENT,\n} from '@angular/core';\nimport { AsyncPipe, isPlatformBrowser } from '@angular/common';\nimport { PortalModule } from '@angular/cdk/portal';\nimport { animate, AnimationBuilder, AnimationFactory, AnimationPlayer, style } from '@angular/animations';\nimport { Subject, startWith, takeUntil } from 'rxjs';\n\nimport { EuiAppShellService, uniqueId } from '@eui/core';\n\nimport { EdsTab } from './eds-tab';\nimport { EDS_ICON_BUTTON } from '@eui/eds/eds-icon-button';\n\n@Component({\n selector: 'eds-tabs',\n templateUrl: './eds-tabs.html',\n styleUrl: './eds-tabs.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n AsyncPipe,\n PortalModule,\n ...EDS_ICON_BUTTON,\n ],\n})\nexport class EdsTabs implements OnInit, OnChanges, OnDestroy, AfterViewInit {\n @HostBinding('class')\n get elementClass(): string {\n return [\n 'eds-tabs',\n ].join(' ').trim();\n }\n @HostBinding('attr.data-e2e')\n /**\n * Sets the `data-e2e` attribute for the host element.\n *\n * @default 'eds-tabs'\n */\n @Input()\n e2eAttr = 'eds-tabs';\n /**\n * Index of the active tab\n *\n * @default 0\n */\n @Input() activeTabIndex = 0;\n /**\n * Sets the `aria-label` attribute for the host element.\n *\n * @default 'eUI Tabs'\n */\n @Input() ariaLabel = 'EDS Tabs';\n\n @Input({ transform: booleanAttribute }) isMainNavigation = false;\n @Input({ transform: booleanAttribute }) isFlat = false;\n\n /**\n * Event emitted when a tab is closed\n */\n @Output() tabClose = new EventEmitter<{ tab: EdsTab; index: number }>();\n /**\n * Event emitted when a tab is activated\n */\n @Output() tabActivate = new EventEmitter<{ tab: EdsTab; index: number }>();\n /**\n * Event emitted when a tab is clicked\n */\n @Output() tabClick = new EventEmitter<{ tab: EdsTab; index: number }>();\n\n @ContentChildren(forwardRef(() => EdsTab), { descendants: false }) _tabs!: QueryList<EdsTab>;\n\n @ViewChild('euiTabsHeadersContainer') euiTabsHeadersContainer!: ElementRef;\n @ViewChild('euiTabsHeaders') euiTabsHeaders!: ElementRef;\n @ViewChild('euiTabsRightContent') euiTabsRightContent!: ElementRef;\n @ViewChildren('euiTabListItems') euiTabListItems!: QueryList<ElementRef>;\n\n public tabs: EdsTab[] = [];\n public scrolling = false;\n public navigationLeftButtonDisabled = true;\n public navigationRightButtonDisabled = false;\n public currentOffset = 0;\n\n protected tabId = uniqueId();\n\n private destroy$: Subject<boolean> = new Subject<boolean>();\n private platformId = inject(PLATFORM_ID);\n private player!: AnimationPlayer;\n private stepMove = 400;\n private scrollOffset = 40;\n private scrollingCount = 0;\n private cd = inject(ChangeDetectorRef);\n private builder = inject(AnimationBuilder);\n private euiAppShellService = inject(EuiAppShellService);\n private document = inject(DOCUMENT);\n\n /**\n * Width of the tabs headers container\n */\n get euiTabsHeadersContainerWidth(): number {\n return (this.euiTabsHeadersContainer?.nativeElement.clientWidth - this.euiTabsRightContentWidth);\n }\n\n /**\n * Width of the tabs headers\n */\n get euiTabsHeadersWidth(): number {\n return this.euiTabsHeaders?.nativeElement.clientWidth;\n }\n\n /**\n * Width of the tabs right content\n */\n get euiTabsRightContentWidth(): number {\n return this.euiTabsRightContent?.nativeElement?.offsetWidth || 0;\n }\n\n ngOnChanges(c: SimpleChanges): void {\n if (c?.activeTabIndex && !c.activeTabIndex.isFirstChange()) {\n this.activate(this.activeTabIndex);\n }\n }\n\n ngOnInit(): void {\n this.euiAppShellService.state$.pipe(takeUntil(this.destroy$)).subscribe((state) => {\n this.tabsScrollingHandler();\n });\n }\n\n ngAfterViewInit(): void {\n this._tabs.changes.pipe(startWith(this._tabs), takeUntil(this.destroy$)).subscribe((tabs: QueryList<EdsTab>) => {\n this.tabs = tabs.toArray();\n setTimeout(() => {\n this.tabsScrollingHandler();\n });\n\n this.cd.detectChanges();\n });\n\n setTimeout(() => {\n if (this.tabs[this.activeTabIndex]) {\n this.cd.markForCheck();\n this.activate(this.activeTabIndex, false, { emitEvent: false });\n }\n });\n }\n\n ngOnDestroy(): void {\n this.destroy$.next(true);\n this.destroy$.unsubscribe();\n }\n\n /**\n * Activate a tab having index passed in parameter if exists.\n *\n * @param index Index of the tab to close\n * @param isAnimated Whether the tab activation should be animated\n * @param options Object with emitEvent property to emit the event or not\n */\n public activateTab(index: number, isAnimated = true, options = { emitEvent: true }): void {\n const tab = this.tabs[index];\n if (tab) {\n this.tabs.forEach((t) => {\n t.deactivateTab();\n });\n\n this.setScrollToTabIndex(index, isAnimated);\n\n tab.activateTab();\n this.activeTabIndex = index;\n\n if (options.emitEvent) {\n this.tabActivate.emit({ tab, index });\n }\n\n this.cd.detectChanges();\n }\n }\n\n /**\n * Close a tab having index passed in parameter if exists.\n * @param index Index of the tab to close\n */\n public closeTab(index: number): void {\n const tab = this.tabs[index];\n if (this.tabs[index]) {\n this.tabs[index].deactivateTab();\n this.tabs = this.tabs.filter((_, i) => i !== index);\n\n if (index === this.activeTabIndex) {\n const previousVisibleIndex = this.tabs.indexOf(this.tabs[index - 1]);\n this.cd.markForCheck();\n\n if (previousVisibleIndex < 0) {\n this.activate(0);\n } else {\n this.activate(previousVisibleIndex);\n }\n } else {\n if (index < this.activeTabIndex) {\n this.activeTabIndex = this.activeTabIndex - 1;\n }\n }\n\n this.cd.detectChanges();\n this.tabsScrollingHandler();\n }\n }\n\n /**\n * Scroll to the left handler\n */\n public goToLeft(): void {\n let scrollTo = this.currentOffset + this.stepMove;\n if (scrollTo > 0) {\n scrollTo = 0;\n }\n\n this.setScrollTo(scrollTo);\n }\n\n /**\n * Scroll to the rihgt handler\n */\n public goToRight(): void {\n let scrollTo = this.currentOffset - this.stepMove;\n if (Math.abs(scrollTo) > this.euiTabsHeadersWidth - this.euiTabsHeadersContainerWidth) {\n scrollTo = -(this.euiTabsHeadersWidth - this.euiTabsHeadersContainerWidth) - this.scrollOffset;\n }\n\n this.setScrollTo(scrollTo);\n }\n\n /**\n * Actions applied upon a keydown event\n *\n * @param i Index of the tab for each pressed key\n * @param event The keyboard event\n */\n protected onKeydown(i: number, event: KeyboardEvent): void {\n switch (event.key) {\n case 'Enter': {\n if (!this.tabs[i].isDisabled) {\n this.activate(i);\n }\n break;\n }\n case 'ArrowRight': {\n const isLastItem = i === this.euiTabListItems.toArray().length - 1;\n const index = isLastItem ? 0 : i + 1;\n\n this.setScrollToTabIndex(index, false);\n this.euiTabListItems.toArray()[index]?.nativeElement.focus();\n\n break;\n }\n case 'ArrowLeft': {\n const lastIndex = this.euiTabListItems.toArray().length - 1;\n const index = i === 0 ? lastIndex : i - 1;\n\n this.setScrollToTabIndex(index, false);\n this.euiTabListItems.toArray()[index]?.nativeElement.focus();\n\n break;\n }\n case 'Home': {\n this.setScrollToTabIndex(0, false);\n this.euiTabListItems.toArray()[0]?.nativeElement.focus();\n event.preventDefault();\n break;\n }\n case 'End': {\n this.setScrollToTabIndex(this.euiTabListItems.toArray().length - 1, false);\n this.euiTabListItems.toArray()[this.euiTabListItems.toArray().length - 1]?.nativeElement.focus();\n event.preventDefault();\n break;\n }\n case 'Delete': {\n if (this.tabs[i].isClosable) {\n if (i === this.euiTabListItems.toArray().length - 1) {\n this.euiTabListItems.toArray()[i - 1]?.nativeElement.focus();\n this.close(i, event);\n } else {\n this.close(i, event);\n this.euiTabListItems.toArray()[i]?.nativeElement.focus();\n }\n }\n break;\n }\n default: {\n break;\n }\n }\n }\n\n /**\n * Click handler for tab list item\n *\n * @param index Index of the tab clicked\n */\n protected tabListItemClick(index: number): void {\n const tab = this.tabs[index];\n\n this.tabClick.emit({ tab, index });\n\n this.activate(index);\n }\n\n /**\n * Activates a tab\n *\n * @param index Index of the tab to activate\n * @param isAnimated Whether the activation should be animated\n * @param options Object with emitEvent property to emit the event or not\n */\n protected activate(index: number, isAnimated = true, options = { emitEvent: true }): void {\n const tab = this.tabs[index];\n\n if (tab && !tab.isHandleActivateTab) {\n this.activateTab(index, isAnimated, options);\n }\n }\n\n /**\n * Closes a tab\n *\n * @param index Index of the tab to close\n * @param e\n */\n protected close(index: number, e: Event): void {\n const tab = this.tabs[index];\n\n if (tab && !tab.isHandleCloseOnClose) {\n this.closeTab(index);\n }\n\n this.tabClose.emit({ tab, index });\n e.stopPropagation();\n }\n\n /**\n * Checks if there are html elements within the tab panel, in order to focus or not the tab panel\n * @param index The tab index\n */\n protected onAttached(index: number): void {\n if (isPlatformBrowser(this.platformId)) {\n const tabbody = this.document.querySelector('#tabpanel-' + index + '-' + this.tabId)?.children[0];\n if (tabbody?.children?.length && tabbody.children.length > 0) {\n for (const child of Array.from(tabbody.children)) {\n if (this.isFocusableElement(child)) {\n this.tabs[index - 1].templateBody.tabIndex$.next(-1);\n } else {\n this.tabs[index - 1].templateBody.tabIndex$.next(0);\n }\n }\n } else {\n this.tabs[index - 1].templateBody.tabIndex$.next(0);\n }\n }\n }\n\n /**\n * Checks the existence of focusable elements\n * @param origin The element to check\n */\n private isFocusableElement(origin: Element): boolean {\n return (\n origin.matches('button') ||\n origin.matches('a') ||\n origin.matches('input') ||\n origin.matches('select') ||\n origin.matches('textarea') ||\n origin.matches('[tabindex]:not([tabindex=\"-1\"])')\n );\n }\n\n /**\n * Checks if the tabs headers are scrolling and calculates the scrolling position\n */\n private tabsScrollingHandler(): void {\n if (this.euiTabsHeadersContainerWidth && this.euiTabsHeadersWidth) {\n\n this.scrolling = this.euiTabsHeadersWidth > this.euiTabsHeadersContainerWidth;\n\n if (!this.scrolling) {\n this.scrollingCount = 0;\n this.setScrollTo(0, false);\n this.navigationLeftButtonDisabled = true;\n this.navigationRightButtonDisabled = true;\n } else {\n const maxScrollableWidth = this.euiTabsHeadersWidth - this.euiTabsHeadersContainerWidth;\n\n if (maxScrollableWidth <= Math.abs(this.currentOffset) + this.scrollOffset && this.scrollingCount !== 0) {\n const scrollTo = -maxScrollableWidth - this.scrollOffset;\n this.setScrollTo(scrollTo);\n } else {\n this.navigationRightButtonDisabled = Math.abs(this.currentOffset) >= maxScrollableWidth;\n this.navigationLeftButtonDisabled = this.currentOffset >= 0;\n }\n\n this.scrollingCount++;\n }\n\n this.cd.detectChanges();\n }\n }\n\n /**\n * Sets the scroll position oon the tab header specified by index\n *\n * @param index Index of the tab header to scroll to\n * @param isAnimated Whether the tab activation should be animated\n */\n private setScrollToTabIndex(index: number, isAnimated = true): void {\n const activeTab = this.euiTabsHeaders.nativeElement.children.item(index);\n\n if (activeTab && !this.isActiveTabFullyVisible(activeTab) && !this.isMainNavigation) {\n let scrollTo = 0;\n let subsetWidth = 0;\n for (let i = 0; i <= index; i++) {\n subsetWidth += this.euiTabsHeaders.nativeElement.children.item(i).clientWidth;\n }\n\n scrollTo = this.euiTabsHeadersContainerWidth / 2 - subsetWidth;\n\n if (Math.abs(scrollTo) > this.euiTabsHeadersWidth - this.euiTabsHeadersContainerWidth + this.scrollOffset) {\n scrollTo = -(this.euiTabsHeadersWidth - this.euiTabsHeadersContainerWidth + this.scrollOffset);\n }\n\n if (scrollTo > 0 || (scrollTo < 0 && index === 0)) {\n scrollTo = 0;\n }\n\n this.setScrollTo(scrollTo, isAnimated);\n }\n }\n\n /**\n * Sets the scroll position of the tabs headers\n *\n * @param scrollTo Number to set on the margin-left style property\n * @param isAnimated Whether the tab activation should be animated\n */\n private setScrollTo(scrollTo: number, isAnimated = true): void {\n const timings = isAnimated ? '500ms cubic-bezier(0.35, 0, 0.25, 1)' : 0;\n const animation: AnimationFactory = this.builder.build([animate(timings, style({ 'margin-left': +scrollTo + 'px' }))]);\n\n this.player = animation.create(this.euiTabsHeaders.nativeElement);\n this.player.play();\n\n this.currentOffset = scrollTo;\n\n if (scrollTo === 0) {\n this.navigationLeftButtonDisabled = true;\n }\n if (Math.abs(this.currentOffset) < this.euiTabsHeadersWidth - this.euiTabsHeadersContainerWidth + this.scrollOffset) {\n this.navigationRightButtonDisabled = false;\n }\n if (this.currentOffset < 0) {\n this.navigationLeftButtonDisabled = false;\n }\n if (Math.abs(scrollTo) === this.euiTabsHeadersWidth - this.euiTabsHeadersContainerWidth + this.scrollOffset) {\n this.navigationRightButtonDisabled = true;\n }\n\n this.cd.detectChanges();\n }\n\n /**\n * Checks if the active tab is fully visible\n *\n * @param activeTab Index of the tab to check\n * @returns true if fully visible, false otherwise\n */\n private isActiveTabFullyVisible(activeTab: HTMLDivElement): boolean {\n const fullyVisible =\n activeTab.offsetLeft - this.scrollOffset >= 0 &&\n activeTab.offsetLeft + activeTab.clientWidth < this.euiTabsHeadersContainerWidth - this.scrollOffset;\n\n return fullyVisible;\n }\n}\n","<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","import { Component } from '@angular/core';\n\n@Component({\n selector: 'eds-tabs-right-content',\n template: '<ng-content/>',\n styles: `\n :host {\n display: flex;\n margin-left: auto;\n }\n `,\n})\nexport class EdsTabsRightContent {\n}\n","import { Component, HostBinding, ChangeDetectionStrategy } from '@angular/core';\n\n@Component({\n selector: 'eds-tab-header-label',\n template: '<ng-content />',\n})\nexport class EdsTabHeaderLabel {\n @HostBinding('class') string = 'eds-tab-header-label';\n}\n","import { Component, HostBinding, ChangeDetectionStrategy } from '@angular/core';\n\n@Component({\n selector: 'eds-tab-header-sub-label',\n template: '<ng-content />',\n})\nexport class EdsTabHeaderSublabel {\n @HostBinding('class') string = 'eds-tab-header-sub-label';\n}\n","import { Component, HostBinding } from '@angular/core';\n\n@Component({\n selector: 'eds-tab-header-left-content',\n template: '<ng-content />',\n})\nexport class EdsTabHeaderLeftContent {\n @HostBinding('class') string = 'eds-tab-header-left-content';\n}\n","import { Component, HostBinding } from '@angular/core';\n\n@Component({\n selector: 'eds-tab-header-right-content',\n template: '<ng-content />',\n})\nexport class EdsTabHeaderRightContent {\n @HostBinding('class') string = 'eds-tab-header-right-content';\n}\n","export * from './eds-tabs';\nexport * from './eds-tabs-right-content';\nexport * from './eds-tab';\nexport * from './eds-tab-header';\nexport * from './eds-tab-header-label';\nexport * from './eds-tab-header-sub-label';\nexport * from './eds-tab-header-left-content';\nexport * from './eds-tab-header-right-content';\nexport * from './eds-tab-body';\n\nimport { EdsTabs } from './eds-tabs';\nimport { EdsTabsRightContent } from './eds-tabs-right-content';\nimport { EdsTabBody } from './eds-tab-body';\nimport { EdsTabHeader } from './eds-tab-header';\nimport { EdsTab } from './eds-tab';\nimport { EdsTabHeaderLabel } from './eds-tab-header-label';\nimport { EdsTabHeaderSublabel } from './eds-tab-header-sub-label';\nimport { EdsTabHeaderRightContent } from './eds-tab-header-right-content';\nimport { EdsTabHeaderLeftContent } from './eds-tab-header-left-content';\n\nexport const EDS_TABS = [\n EdsTabs,\n EdsTabsRightContent,\n EdsTabBody,\n EdsTabHeader,\n EdsTabHeaderLabel,\n EdsTabHeaderSublabel,\n EdsTabHeaderRightContent,\n EdsTabHeaderLeftContent,\n EdsTab,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"eui-eds-eds-tabs.mjs","sources":["../../eds-tabs/eds-tab-header.ts","../../eds-tabs/eds-tab-header.html","../../eds-tabs/eds-tab-body.ts","../../eds-tabs/eds-tab-body.html","../../eds-tabs/eds-tab.ts","../../eds-tabs/eds-tabs.ts","../../eds-tabs/eds-tabs.html","../../eds-tabs/eds-tabs-right-content.ts","../../eds-tabs/eds-tab-header-label.ts","../../eds-tabs/eds-tab-header-sub-label.ts","../../eds-tabs/eds-tab-header-left-content.ts","../../eds-tabs/eds-tab-header-right-content.ts","../../eds-tabs/index.ts","../../eds-tabs/eui-eds-eds-tabs.ts"],"sourcesContent":["import { Component, TemplateRef, ViewContainerRef, AfterViewInit, inject, viewChild } from '@angular/core';\nimport { TemplatePortal } from '@angular/cdk/portal';\n\n@Component({\n selector: 'eds-tab-header',\n templateUrl: './eds-tab-header.html',\n})\nexport class EdsTabHeader implements AfterViewInit {\n readonly templateRef = viewChild.required<TemplateRef<HTMLElement>>('templateRef');\n\n public templatePortal!: TemplatePortal;\n private viewContainerRef = inject(ViewContainerRef);\n\n ngAfterViewInit(): void {\n this.templatePortal = new TemplatePortal(this.templateRef(), this.viewContainerRef);\n }\n}\n","<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","import { Component, Input, TemplateRef, ViewContainerRef, AfterViewInit, booleanAttribute, inject, viewChild } from '@angular/core';\nimport { TemplatePortal } from '@angular/cdk/portal';\nimport { BehaviorSubject } from 'rxjs';\nimport { AsyncPipe } from '@angular/common';\n\n@Component({\n selector: 'eds-tab-body',\n templateUrl: './eds-tab-body.html',\n imports: [\n AsyncPipe,\n ],\n})\nexport class EdsTabBody implements AfterViewInit {\n /**\n * Removes default padding from the tab content area.\n * Useful for full-width content, custom layouts, or when content provides its own spacing.\n * @default false\n */\n @Input({ transform: booleanAttribute }) hasNoContentPadding = false;\n\n readonly templateRef = viewChild.required<TemplateRef<HTMLElement>>('templateRef');\n\n public templatePortal!: TemplatePortal;\n tabIndex$ = new BehaviorSubject(0);\n private viewContainerRef = inject(ViewContainerRef);\n\n ngAfterViewInit(): void {\n this.templatePortal = new TemplatePortal(this.templateRef(), this.viewContainerRef);\n }\n}\n","<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","import {\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n Input,\n OnChanges,\n SimpleChanges,\n booleanAttribute,\n forwardRef,\n contentChild,\n} from '@angular/core';\nimport { BehaviorSubject } from 'rxjs';\n\nimport { EdsTabHeader } from './eds-tab-header';\nimport { EdsTabBody } from './eds-tab-body';\n\n@Component({\n selector: 'eds-tab',\n template: '<ng-content/>',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class EdsTab implements OnChanges {\n /**\n * Unique identifier for the tab.\n * Used for programmatic tab selection and tracking.\n * Required for proper tab management and routing.\n */\n @Input() id!: string;\n /**\n * URL or route path associated with the tab.\n * Enables deep linking and browser history integration for tab navigation.\n */\n @Input() url!: string;\n /**\n * Data attribute used for end-to-end testing identification.\n * @default 'eui-tab'\n */\n @Input() e2eAttr = 'eds-tab';\n /**\n * Tooltip text displayed when hovering over the tab header.\n * Provides additional context or information about the tab content.\n */\n @Input() tooltip!: string;\n /**\n * Enables a close button on the tab header for dismissible tabs.\n * Allows users to remove or hide the tab from the tab bar.\n * @default false\n */\n @Input({ transform: booleanAttribute }) isClosable = false;\n /**\n * Disables the tab, preventing user interaction and selection.\n * Applies disabled styling and blocks tab activation.\n * @default false\n */\n @Input({ transform: booleanAttribute }) isDisabled = false;\n /**\n * Controls the visibility of the tab in the tab bar.\n * When false, hides the tab from display without removing it from the DOM.\n * @default true\n */\n @Input({ transform: booleanAttribute }) isVisible = true;\n /**\n * Enables automatic tab closure when the close button is clicked.\n * When false, close button click must be handled externally.\n * @default false\n */\n @Input({ transform: booleanAttribute }) isHandleCloseOnClose = false;\n /**\n * Enables automatic tab activation when the tab is clicked.\n * When false, tab activation must be handled externally.\n * @default false\n */\n @Input({ transform: booleanAttribute }) isHandleActivateTab = false;\n\n readonly templateHeader = contentChild.required(forwardRef(() => EdsTabHeader));\n @ContentChild(forwardRef(() => EdsTabBody)) templateBody!: EdsTabBody;\n\n @Input() euiVariant = 'euiPrimary';\n\n public isActive = false;\n\n public isVisible$ = new BehaviorSubject(this.isVisible);\n public isClosable$ = new BehaviorSubject(this.isClosable);\n public isDisabled$ = new BehaviorSubject(this.isDisabled);\n\n ngOnChanges(c: SimpleChanges): void {\n if (c?.isVisible) {\n this.isVisible$.next(c.isVisible.currentValue);\n }\n if (c?.isClosable) {\n this.isClosable$.next(c.isClosable.currentValue);\n }\n if (c?.isDisabled) {\n this.isDisabled$.next(c.isDisabled.currentValue);\n }\n }\n\n public activateTab(): void {\n this.isActive = true;\n }\n\n public deactivateTab(): void {\n this.isActive = false;\n }\n}\n","import {\n Component,\n ContentChildren,\n Input,\n OnDestroy,\n QueryList,\n forwardRef,\n AfterViewInit,\n ElementRef,\n ChangeDetectorRef,\n booleanAttribute,\n ChangeDetectionStrategy,\n SimpleChanges,\n OnChanges,\n OnInit,\n inject,input,\n PLATFORM_ID,\n DOCUMENT,\n output,\n viewChild,\n viewChildren,\n} from '@angular/core';\nimport { AsyncPipe, isPlatformBrowser } from '@angular/common';\nimport { PortalModule } from '@angular/cdk/portal';\nimport { animate, AnimationBuilder, AnimationFactory, AnimationPlayer, style } from '@angular/animations';\nimport { Subject, startWith, takeUntil } from 'rxjs';\n\nimport { EuiAppShellService, uniqueId } from '@eui/core';\n\nimport { EdsTab } from './eds-tab';\nimport { EDS_ICON_BUTTON } from '@eui/eds/eds-icon-button';\n\n@Component({\n selector: 'eds-tabs',\n templateUrl: './eds-tabs.html',\n styleUrl: './eds-tabs.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'eds-tabs',\n '[attr.data-e2e]': 'e2eAttr()',\n },\n imports: [\n AsyncPipe,\n PortalModule,\n ...EDS_ICON_BUTTON,\n ],\n})\nexport class EdsTabs implements OnInit, OnChanges, OnDestroy, AfterViewInit {\n /**\n * Sets the `data-e2e` attribute for the host element.\n *\n * @default 'eds-tabs'\n */\n e2eAttr = input('eds-tabs');\n /**\n * Index of the active tab\n *\n * @default 0\n */\n @Input() activeTabIndex = 0;\n /**\n * Sets the `aria-label` attribute for the host element.\n *\n * @default 'eUI Tabs'\n */\n ariaLabel = input('EDS Tabs');\n\n isMainNavigation = input(false, { transform: booleanAttribute });\n isFlat = input(false, { transform: booleanAttribute });\n\n /**\n * Event emitted when a tab is closed\n */\n readonly tabClose = output<{\n tab: EdsTab;\n index: number;\n }>();\n /**\n * Event emitted when a tab is activated\n */\n readonly tabActivate = output<{\n tab: EdsTab;\n index: number;\n }>();\n /**\n * Event emitted when a tab is clicked\n */\n readonly tabClick = output<{\n tab: EdsTab;\n index: number;\n }>();\n\n @ContentChildren(forwardRef(() => EdsTab), { descendants: false }) _tabs!: QueryList<EdsTab>;\n\n readonly edsTabsHeadersContainer = viewChild.required<ElementRef>('euiTabsHeadersContainer');\n readonly edsTabsHeaders = viewChild.required<ElementRef>('euiTabsHeaders');\n readonly edsTabsRightContent = viewChild.required<ElementRef>('euiTabsRightContent');\n readonly edsTabListItems = viewChildren<ElementRef>('euiTabListItems');\n\n public tabs: EdsTab[] = [];\n public scrolling = false;\n public navigationLeftButtonDisabled = true;\n public navigationRightButtonDisabled = false;\n public currentOffset = 0;\n\n protected tabId = uniqueId();\n\n private destroy$: Subject<boolean> = new Subject<boolean>();\n private platformId = inject(PLATFORM_ID);\n private player!: AnimationPlayer;\n private stepMove = 400;\n private scrollOffset = 40;\n private scrollingCount = 0;\n private cd = inject(ChangeDetectorRef);\n private builder = inject(AnimationBuilder);\n private euiAppShellService = inject(EuiAppShellService);\n private document = inject(DOCUMENT);\n\n /**\n * Width of the tabs headers container\n */\n get edsTabsHeadersContainerWidth(): number {\n return (this.edsTabsHeadersContainer()?.nativeElement.clientWidth - this.edsTabsRightContentWidth);\n }\n\n /**\n * Width of the tabs headers\n */\n get edsTabsHeadersWidth(): number {\n return this.edsTabsHeaders()?.nativeElement.clientWidth;\n }\n\n /**\n * Width of the tabs right content\n */\n get edsTabsRightContentWidth(): number {\n return this.edsTabsRightContent()?.nativeElement?.offsetWidth || 0;\n }\n\n ngOnChanges(c: SimpleChanges): void {\n if (c?.activeTabIndex && !c.activeTabIndex.isFirstChange()) {\n this.activate(this.activeTabIndex);\n }\n }\n\n ngOnInit(): void {\n this.euiAppShellService.state$.pipe(takeUntil(this.destroy$)).subscribe((state) => {\n this.tabsScrollingHandler();\n });\n }\n\n ngAfterViewInit(): void {\n this._tabs.changes.pipe(startWith(this._tabs), takeUntil(this.destroy$)).subscribe((tabs: QueryList<EdsTab>) => {\n this.tabs = tabs.toArray();\n setTimeout(() => {\n this.tabsScrollingHandler();\n });\n\n this.cd.detectChanges();\n });\n\n setTimeout(() => {\n if (this.tabs[this.activeTabIndex]) {\n this.cd.markForCheck();\n this.activate(this.activeTabIndex, false, { emitEvent: false });\n }\n });\n }\n\n ngOnDestroy(): void {\n this.destroy$.next(true);\n this.destroy$.unsubscribe();\n }\n\n /**\n * Activate a tab having index passed in parameter if exists.\n *\n * @param index Index of the tab to close\n * @param isAnimated Whether the tab activation should be animated\n * @param options Object with emitEvent property to emit the event or not\n */\n public activateTab(index: number, isAnimated = true, options = { emitEvent: true }): void {\n const tab = this.tabs[index];\n if (tab) {\n this.tabs.forEach((t) => {\n t.deactivateTab();\n });\n\n this.setScrollToTabIndex(index, isAnimated);\n\n tab.activateTab();\n this.activeTabIndex = index;\n\n if (options.emitEvent) {\n this.tabActivate.emit({ tab, index });\n }\n\n this.cd.detectChanges();\n }\n }\n\n /**\n * Close a tab having index passed in parameter if exists.\n * @param index Index of the tab to close\n */\n public closeTab(index: number): void {\n const tab = this.tabs[index];\n if (this.tabs[index]) {\n this.tabs[index].deactivateTab();\n this.tabs = this.tabs.filter((_, i) => i !== index);\n\n if (index === this.activeTabIndex) {\n const previousVisibleIndex = this.tabs.indexOf(this.tabs[index - 1]);\n this.cd.markForCheck();\n\n if (previousVisibleIndex < 0) {\n this.activate(0);\n } else {\n this.activate(previousVisibleIndex);\n }\n } else {\n if (index < this.activeTabIndex) {\n this.activeTabIndex = this.activeTabIndex - 1;\n }\n }\n\n this.cd.detectChanges();\n this.tabsScrollingHandler();\n }\n }\n\n /**\n * Scroll to the left handler\n */\n public goToLeft(): void {\n let scrollTo = this.currentOffset + this.stepMove;\n if (scrollTo > 0) {\n scrollTo = 0;\n }\n\n this.setScrollTo(scrollTo);\n }\n\n /**\n * Scroll to the rihgt handler\n */\n public goToRight(): void {\n let scrollTo = this.currentOffset - this.stepMove;\n if (Math.abs(scrollTo) > this.edsTabsHeadersWidth - this.edsTabsHeadersContainerWidth) {\n scrollTo = -(this.edsTabsHeadersWidth - this.edsTabsHeadersContainerWidth) - this.scrollOffset;\n }\n\n this.setScrollTo(scrollTo);\n }\n\n /**\n * Actions applied upon a keydown event\n *\n * @param i Index of the tab for each pressed key\n * @param event The keyboard event\n */\n protected onKeydown(i: number, event: KeyboardEvent): void {\n switch (event.key) {\n case 'Enter': {\n if (!this.tabs[i].isDisabled) {\n this.activate(i);\n }\n break;\n }\n case 'ArrowRight': {\n const isLastItem = i === this.edsTabListItems().length - 1;\n const index = isLastItem ? 0 : i + 1;\n\n this.setScrollToTabIndex(index, false);\n this.edsTabListItems()[index]?.nativeElement.focus();\n\n break;\n }\n case 'ArrowLeft': {\n const lastIndex = this.edsTabListItems().length - 1;\n const index = i === 0 ? lastIndex : i - 1;\n\n this.setScrollToTabIndex(index, false);\n this.edsTabListItems()[index]?.nativeElement.focus();\n\n break;\n }\n case 'Home': {\n this.setScrollToTabIndex(0, false);\n this.edsTabListItems()[0]?.nativeElement.focus();\n event.preventDefault();\n break;\n }\n case 'End': {\n this.setScrollToTabIndex(this.edsTabListItems().length - 1, false);\n this.edsTabListItems()[this.edsTabListItems().length - 1]?.nativeElement.focus();\n event.preventDefault();\n break;\n }\n case 'Delete': {\n if (this.tabs[i].isClosable) {\n if (i === this.edsTabListItems().length - 1) {\n this.edsTabListItems()[i - 1]?.nativeElement.focus();\n this.close(i, event);\n } else {\n this.close(i, event);\n this.edsTabListItems()[i]?.nativeElement.focus();\n }\n }\n break;\n }\n default: {\n break;\n }\n }\n }\n\n /**\n * Click handler for tab list item\n *\n * @param index Index of the tab clicked\n */\n protected tabListItemClick(index: number): void {\n const tab = this.tabs[index];\n\n this.tabClick.emit({ tab, index });\n\n this.activate(index);\n }\n\n /**\n * Activates a tab\n *\n * @param index Index of the tab to activate\n * @param isAnimated Whether the activation should be animated\n * @param options Object with emitEvent property to emit the event or not\n */\n protected activate(index: number, isAnimated = true, options = { emitEvent: true }): void {\n const tab = this.tabs[index];\n\n if (tab && !tab.isHandleActivateTab) {\n this.activateTab(index, isAnimated, options);\n }\n }\n\n /**\n * Closes a tab\n *\n * @param index Index of the tab to close\n * @param e\n */\n protected close(index: number, e: Event): void {\n const tab = this.tabs[index];\n\n if (tab && !tab.isHandleCloseOnClose) {\n this.closeTab(index);\n }\n\n this.tabClose.emit({ tab, index });\n e.stopPropagation();\n }\n\n /**\n * Checks if there are html elements within the tab panel, in order to focus or not the tab panel\n * @param index The tab index\n */\n protected onAttached(index: number): void {\n if (isPlatformBrowser(this.platformId)) {\n const tabbody = this.document.querySelector('#tabpanel-' + index + '-' + this.tabId)?.children[0];\n if (tabbody?.children?.length && tabbody.children.length > 0) {\n for (const child of Array.from(tabbody.children)) {\n if (this.isFocusableElement(child)) {\n this.tabs[index - 1].templateBody.tabIndex$.next(-1);\n } else {\n this.tabs[index - 1].templateBody.tabIndex$.next(0);\n }\n }\n } else {\n this.tabs[index - 1].templateBody.tabIndex$.next(0);\n }\n }\n }\n\n /**\n * Checks the existence of focusable elements\n * @param origin The element to check\n */\n private isFocusableElement(origin: Element): boolean {\n return (\n origin.matches('button') ||\n origin.matches('a') ||\n origin.matches('input') ||\n origin.matches('select') ||\n origin.matches('textarea') ||\n origin.matches('[tabindex]:not([tabindex=\"-1\"])')\n );\n }\n\n /**\n * Checks if the tabs headers are scrolling and calculates the scrolling position\n */\n private tabsScrollingHandler(): void {\n if (this.edsTabsHeadersContainerWidth && this.edsTabsHeadersWidth) {\n\n this.scrolling = this.edsTabsHeadersWidth > this.edsTabsHeadersContainerWidth;\n\n if (!this.scrolling) {\n this.scrollingCount = 0;\n this.setScrollTo(0, false);\n this.navigationLeftButtonDisabled = true;\n this.navigationRightButtonDisabled = true;\n } else {\n const maxScrollableWidth = this.edsTabsHeadersWidth - this.edsTabsHeadersContainerWidth;\n\n if (maxScrollableWidth <= Math.abs(this.currentOffset) + this.scrollOffset && this.scrollingCount !== 0) {\n const scrollTo = -maxScrollableWidth - this.scrollOffset;\n this.setScrollTo(scrollTo);\n } else {\n this.navigationRightButtonDisabled = Math.abs(this.currentOffset) >= maxScrollableWidth;\n this.navigationLeftButtonDisabled = this.currentOffset >= 0;\n }\n\n this.scrollingCount++;\n }\n\n this.cd.detectChanges();\n }\n }\n\n /**\n * Sets the scroll position oon the tab header specified by index\n *\n * @param index Index of the tab header to scroll to\n * @param isAnimated Whether the tab activation should be animated\n */\n private setScrollToTabIndex(index: number, isAnimated = true): void {\n const activeTab = this.edsTabsHeaders().nativeElement.children.item(index);\n\n if (activeTab && !this.isActiveTabFullyVisible(activeTab) && !this.isMainNavigation()) {\n let scrollTo = 0;\n let subsetWidth = 0;\n for (let i = 0; i <= index; i++) {\n subsetWidth += this.edsTabsHeaders().nativeElement.children.item(i).clientWidth;\n }\n\n scrollTo = this.edsTabsHeadersContainerWidth / 2 - subsetWidth;\n\n if (Math.abs(scrollTo) > this.edsTabsHeadersWidth - this.edsTabsHeadersContainerWidth + this.scrollOffset) {\n scrollTo = -(this.edsTabsHeadersWidth - this.edsTabsHeadersContainerWidth + this.scrollOffset);\n }\n\n if (scrollTo > 0 || (scrollTo < 0 && index === 0)) {\n scrollTo = 0;\n }\n\n this.setScrollTo(scrollTo, isAnimated);\n }\n }\n\n /**\n * Sets the scroll position of the tabs headers\n *\n * @param scrollTo Number to set on the margin-left style property\n * @param isAnimated Whether the tab activation should be animated\n */\n private setScrollTo(scrollTo: number, isAnimated = true): void {\n const timings = isAnimated ? '500ms cubic-bezier(0.35, 0, 0.25, 1)' : 0;\n const animation: AnimationFactory = this.builder.build([animate(timings, style({ 'margin-left': +scrollTo + 'px' }))]);\n\n this.player = animation.create(this.edsTabsHeaders().nativeElement);\n this.player.play();\n\n this.currentOffset = scrollTo;\n\n if (scrollTo === 0) {\n this.navigationLeftButtonDisabled = true;\n }\n if (Math.abs(this.currentOffset) < this.edsTabsHeadersWidth - this.edsTabsHeadersContainerWidth + this.scrollOffset) {\n this.navigationRightButtonDisabled = false;\n }\n if (this.currentOffset < 0) {\n this.navigationLeftButtonDisabled = false;\n }\n if (Math.abs(scrollTo) === this.edsTabsHeadersWidth - this.edsTabsHeadersContainerWidth + this.scrollOffset) {\n this.navigationRightButtonDisabled = true;\n }\n\n this.cd.detectChanges();\n }\n\n /**\n * Checks if the active tab is fully visible\n *\n * @param activeTab Index of the tab to check\n * @returns true if fully visible, false otherwise\n */\n private isActiveTabFullyVisible(activeTab: HTMLDivElement): boolean {\n const fullyVisible =\n activeTab.offsetLeft - this.scrollOffset >= 0 &&\n activeTab.offsetLeft + activeTab.clientWidth < this.edsTabsHeadersContainerWidth - this.scrollOffset;\n\n return fullyVisible;\n }\n}\n","<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","import { Component } from '@angular/core';\n\n@Component({\n selector: 'eds-tabs-right-content',\n template: '<ng-content/>',\n styles: `\n :host {\n display: flex;\n margin-left: auto;\n }\n `,\n})\nexport class EdsTabsRightContent {\n}\n","import { Component, HostBinding, ChangeDetectionStrategy } from '@angular/core';\n\n@Component({\n selector: 'eds-tab-header-label',\n template: '<ng-content />',\n})\nexport class EdsTabHeaderLabel {\n @HostBinding('class') string = 'eds-tab-header-label';\n}\n","import { Component, HostBinding, ChangeDetectionStrategy } from '@angular/core';\n\n@Component({\n selector: 'eds-tab-header-sub-label',\n template: '<ng-content />',\n})\nexport class EdsTabHeaderSublabel {\n @HostBinding('class') string = 'eds-tab-header-sub-label';\n}\n","import { Component, HostBinding } from '@angular/core';\n\n@Component({\n selector: 'eds-tab-header-left-content',\n template: '<ng-content />',\n})\nexport class EdsTabHeaderLeftContent {\n @HostBinding('class') string = 'eds-tab-header-left-content';\n}\n","import { Component, HostBinding } from '@angular/core';\n\n@Component({\n selector: 'eds-tab-header-right-content',\n template: '<ng-content />',\n})\nexport class EdsTabHeaderRightContent {\n @HostBinding('class') string = 'eds-tab-header-right-content';\n}\n","export * from './eds-tabs';\nexport * from './eds-tabs-right-content';\nexport * from './eds-tab';\nexport * from './eds-tab-header';\nexport * from './eds-tab-header-label';\nexport * from './eds-tab-header-sub-label';\nexport * from './eds-tab-header-left-content';\nexport * from './eds-tab-header-right-content';\nexport * from './eds-tab-body';\n\nimport { EdsTabs } from './eds-tabs';\nimport { EdsTabsRightContent } from './eds-tabs-right-content';\nimport { EdsTabBody } from './eds-tab-body';\nimport { EdsTabHeader } from './eds-tab-header';\nimport { EdsTab } from './eds-tab';\nimport { EdsTabHeaderLabel } from './eds-tab-header-label';\nimport { EdsTabHeaderSublabel } from './eds-tab-header-sub-label';\nimport { EdsTabHeaderRightContent } from './eds-tab-header-right-content';\nimport { EdsTabHeaderLeftContent } from './eds-tab-header-left-content';\n\nexport const EDS_TABS = [\n EdsTabs,\n EdsTabsRightContent,\n EdsTabBody,\n EdsTabHeader,\n EdsTabHeaderLabel,\n EdsTabHeaderSublabel,\n EdsTabHeaderRightContent,\n EdsTabHeaderLeftContent,\n EdsTab,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,129 +1,126 @@
1
1
  import * as i0 from '@angular/core';
2
- import { EventEmitter, inject, booleanAttribute, Output, Input, HostBinding, ChangeDetectionStrategy, Component } from '@angular/core';
2
+ import { computed, input, booleanAttribute, output, inject, ChangeDetectionStrategy, Component } from '@angular/core';
3
3
  import * as i1 from '@eui/eds/shared';
4
- import { EuiBaseSizeVariantsDirective, EuiBaseColorVariantsDirective } from '@eui/eds/shared';
4
+ import { EdsBaseSizeVariantsDirective, EdsBaseColorVariantsDirective } from '@eui/eds/shared';
5
5
 
6
6
  class EdsTag {
7
7
  constructor() {
8
8
  /**
9
- * Sets the `role` attribute for the host element.
9
+ * @description
10
+ * Computes and returns the CSS classes for the component based on its current state.
10
11
  *
11
- * @default 'status'
12
+ * @returns {string} Space-separated string of CSS class names
12
13
  */
13
- this.role = 'status';
14
+ this.hostClasses = computed(() => {
15
+ return [
16
+ 'eds-tag',
17
+ this.sizeVariantsBase.getCssClasses('eds-tag'),
18
+ this.colorVariantsBase.getCssClasses('eds-tag'),
19
+ this.edsOutline() ? 'eds-tag--outline' : '',
20
+ this.colorPalette() ? `eds-tag--${this.colorPalette()}` : '',
21
+ ].join(' ').trim();
22
+ }, /* @ts-ignore */
23
+ ...(ngDevMode ? [{ debugName: "hostClasses" }] : /* istanbul ignore next */ []));
14
24
  /**
15
25
  * Sets the `aria-label` attribute for the host element.
16
26
  *
17
27
  * @default 'Chip content'
18
28
  */
19
- this.ariaLabel = 'Tag content';
29
+ this.ariaLabel = input('Tag content', /* @ts-ignore */
30
+ ...(ngDevMode ? [{ debugName: "ariaLabel" }] : /* istanbul ignore next */ []));
20
31
  /**
21
32
  * Sets the `data-e2e` attribute for the host element.
22
33
  *
23
- * @default 'eui-chip'
34
+ * @default 'eds-tag'
24
35
  */
25
- this.e2eAttr = 'eui-tag';
36
+ this.e2eAttr = input('eds-tag', /* @ts-ignore */
37
+ ...(ngDevMode ? [{ debugName: "e2eAttr" }] : /* istanbul ignore next */ []));
38
+ /**
39
+ * Sets the edsInternalId of the tag.
40
+ *
41
+ * @default null
42
+ */
43
+ this.edsInternalId = input('', /* @ts-ignore */
44
+ ...(ngDevMode ? [{ debugName: "edsInternalId" }] : /* istanbul ignore next */ []));
45
+ /**
46
+ * Sets the label of the tooltip to diaply on hover.
47
+ */
48
+ this.tooltipMessage = input('', /* @ts-ignore */
49
+ ...(ngDevMode ? [{ debugName: "tooltipMessage" }] : /* istanbul ignore next */ []));
50
+ /**
51
+ * Sets the id of the tag.
52
+ */
53
+ this.id = input('', /* @ts-ignore */
54
+ ...(ngDevMode ? [{ debugName: "id" }] : /* istanbul ignore next */ []));
26
55
  /**
27
56
  * Sets the data of the chip like tooltip configuration.
28
57
  */
29
58
  // TODO: type should be specific
30
59
  // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html
31
60
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
32
- this.data = {
61
+ this.data = input({
33
62
  id: crypto.randomUUID(),
34
63
  tooltip: {
35
- color: 'euiTooltipPrimary',
64
+ color: 'edsTooltipPrimary',
36
65
  contentAlignment: null,
37
66
  position: 'above',
38
67
  },
39
- };
40
- this.euiTagOutline = false;
68
+ }, /* @ts-ignore */
69
+ ...(ngDevMode ? [{ debugName: "data" }] : /* istanbul ignore next */ []));
70
+ this.edsOutline = input(false, { ...(ngDevMode ? { debugName: "edsOutline" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
71
+ /**
72
+ * Extra color palette to be used on the status-badge.
73
+ */
74
+ this.colorPalette = input('', /* @ts-ignore */
75
+ ...(ngDevMode ? [{ debugName: "colorPalette" }] : /* istanbul ignore next */ []));
41
76
  /**
42
77
  * Event emitted when the chip is removed.
43
78
  */
44
79
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
45
- this.remove = new EventEmitter();
46
- this.sizeVariantsBase = inject(EuiBaseSizeVariantsDirective);
47
- this.colorVariantsBase = inject(EuiBaseColorVariantsDirective);
48
- }
49
- /**
50
- * @description
51
- * Computes and returns the CSS classes for the component based on its current state.
52
- *
53
- * @returns {string} Space-separated string of CSS class names
54
- */
55
- get cssClasses() {
56
- return [
57
- 'eds-tag',
58
- this.sizeVariantsBase.getCssClasses('eds-tag'),
59
- this.colorVariantsBase.getCssClasses('eds-tag'),
60
- this.euiTagOutline ? 'eds-tag--outline' : '',
61
- ].join(' ').trim();
80
+ this.remove = output();
81
+ this.sizeVariantsBase = inject(EdsBaseSizeVariantsDirective);
82
+ this.colorVariantsBase = inject(EdsBaseColorVariantsDirective);
62
83
  }
63
84
  ngOnInit() {
64
- if (!this.sizeVariantsBase.euiSizeVariant) {
65
- this.sizeVariantsBase.euiSizeM = true;
85
+ if (!this.sizeVariantsBase.edsSizeVariant) {
86
+ this.sizeVariantsBase.edsSizeM = true;
66
87
  }
67
- if (!this.colorVariantsBase.euiColorVariant) {
68
- this.colorVariantsBase.euiNeutral = true;
88
+ if (!this.colorVariantsBase.edsColorVariant && !this.colorPalette()) {
89
+ this.colorVariantsBase.edsNeutral = true;
69
90
  }
70
91
  }
71
92
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: EdsTag, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
72
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "22.0.5", type: EdsTag, isStandalone: true, selector: "eds-tag, span[edsTag]", inputs: { ariaLabel: "ariaLabel", e2eAttr: "e2eAttr", euiInternalId: "euiInternalId", tooltipMessage: "tooltipMessage", id: "id", data: "data", euiTagOutline: ["euiTagOutline", "euiTagOutline", booleanAttribute] }, outputs: { remove: "remove" }, host: { properties: { "class": "this.cssClasses", "attr.role": "this.role", "attr.aria-label": "this.ariaLabel", "attr.data-e2e": "this.e2eAttr" } }, hostDirectives: [{ directive: i1.EuiBaseSizeVariantsDirective, inputs: ["euiSizeM", "euiSizeM", "euiSizeL", "euiSizeL", "euiSizeVariant", "euiSizeVariant"] }, { directive: i1.EuiBaseColorVariantsDirective, inputs: ["euiNeutral", "euiNeutral", "euiSuccess", "euiSuccess", "euiInfo", "euiInfo", "euiWarning", "euiWarning", "euiCritical", "euiCritical", "euiColorVariant", "euiColorVariant"] }], ngImport: i0, template: "<ng-content></ng-content>\n", styles: [".eui-21 :host.eds-tag.eds-tag--size-m{--_font-size: var(--eds-f-s-s);--_tag-padding: var(--eds-sp-4xs) var(--eds-sp-3xs);--_icon-size: var(--eds-is-s);--_height: var(--eds-sp-xl)}.eui-21 :host.eds-tag.eds-tag--size-l{--_font-size: var(--eds-f-s-s);--_tag-padding: var(--eds-sp-3xs) var(--eds-sp-2xs);--_icon-size: var(--eds-is-m);--_height: var(--eds-sp-2xl)}.eui-21 :host.eds-tag.eds-tag--neutral{--_surface: var(--eds-c-surface-elevation-sunken);--_on-surface: var(--eds-c-foreground-subtle);--_border-color: var(--eds-c-border-neutral-subtle)}.eui-21 :host.eds-tag.eds-tag--info{--_surface: var(--eds-c-surface-info-subtler);--_on-surface: var(--eds-c-on-surface-info-subtler);--_border-color: var(--eds-c-border-info-subtle)}.eui-21 :host.eds-tag.eds-tag--success{--_surface: var(--eds-c-surface-success-subtler);--_on-surface: var(--eds-c-on-surface-success-subtler);--_border-color: var(--eds-c-border-success-subtle)}.eui-21 :host.eds-tag.eds-tag--warning{--_surface: var(--eds-c-surface-warning-subtler);--_on-surface: var(--eds-c-on-surface-warning-subtler);--_border-color: var(--eds-c-border-warning-subtle)}.eui-21 :host.eds-tag.eds-tag--critical{--_surface: var(--eds-c-surface-critical-subtler);--_on-surface: var(--eds-c-on-surface-critical-subtler);--_border-color: var(--eds-c-border-critical-subtle)}.eui-21 :host.eds-tag.eds-tag--outline{--_surface: transparent}.eui-21 :host.eds-tag.eds-tag--outline.eds-tag--neutral{--_border-color: var(--eds-c-border-neutral)}.eui-21 :host.eds-tag.eds-tag--outline.eds-tag--info{--_border-color: var(--eds-c-border-info)}.eui-21 :host.eds-tag.eds-tag--outline.eds-tag--success{--_border-color: var(--eds-c-border-success)}.eui-21 :host.eds-tag.eds-tag--outline.eds-tag--warning{--_border-color: var(--eds-c-border-warning)}.eui-21 :host.eds-tag.eds-tag--outline.eds-tag--critical{--_border-color: var(--eds-c-border-critical)}.eui-21 :host.eds-tag{align-items:center;border-radius:var(--eds-br-m);display:inline-flex;border:var(--eds-bw-xs) solid var(--_border-color);padding:var(--_tag-padding);font-size:var(--_font-size);background-color:var(--_surface);color:var(--_on-surface);gap:var(--eds-sp-3xs);height:var(--_height)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
93
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.0.5", type: EdsTag, isStandalone: true, selector: "eds-tag, span[edsTag]", inputs: { ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, e2eAttr: { classPropertyName: "e2eAttr", publicName: "e2eAttr", isSignal: true, isRequired: false, transformFunction: null }, edsInternalId: { classPropertyName: "edsInternalId", publicName: "edsInternalId", isSignal: true, isRequired: false, transformFunction: null }, tooltipMessage: { classPropertyName: "tooltipMessage", publicName: "tooltipMessage", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: false, transformFunction: null }, edsOutline: { classPropertyName: "edsOutline", publicName: "edsOutline", isSignal: true, isRequired: false, transformFunction: null }, colorPalette: { classPropertyName: "colorPalette", publicName: "colorPalette", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { remove: "remove" }, host: { attributes: { "role": "status" }, properties: { "class": "hostClasses()", "attr.aria-label": "ariaLabel()", "attr.data-e2e": "e2eAttr()" } }, hostDirectives: [{ directive: i1.EdsBaseSizeVariantsDirective, inputs: ["edsSizeM", "edsSizeM", "edsSizeL", "edsSizeL", "edsSizeVariant", "edsSizeVariant"] }, { directive: i1.EdsBaseColorVariantsDirective, inputs: ["edsNeutral", "edsNeutral", "edsSuccess", "edsSuccess", "edsInfo", "edsInfo", "edsWarning", "edsWarning", "edsCritical", "edsCritical", "edsColorVariant", "edsColorVariant"] }], ngImport: i0, template: "<ng-content/>\n", styles: [".eui-21 :host.eds-tag.eds-tag--size-m{--_font: var(--eds-f-paragraph-s);--_tag-padding: var(--eds-sp-4xs) var(--eds-sp-3xs);--_icon-size: var(--eds-is-s);--_height: var(--eds-sp-xl)}.eui-21 :host.eds-tag.eds-tag--size-l{--_font: var(--eds-f-paragraph-s);--_tag-padding: var(--eds-sp-3xs) var(--eds-sp-2xs);--_icon-size: var(--eds-is-m);--_height: var(--eds-sp-2xl)}.eui-21 :host.eds-tag.eds-tag--neutral{--_surface: var(--eds-c-surface-elevation-sunken);--_on-surface: var(--eds-c-foreground-subtle);--_border-color: var(--eds-c-border-neutral-subtle)}.eui-21 :host.eds-tag.eds-tag--info{--_surface: var(--eds-c-surface-info-subtler);--_on-surface: var(--eds-c-on-surface-info-subtler);--_border-color: var(--eds-c-border-info-subtle)}.eui-21 :host.eds-tag.eds-tag--success{--_surface: var(--eds-c-surface-success-subtler);--_on-surface: var(--eds-c-on-surface-success-subtler);--_border-color: var(--eds-c-border-success-subtle)}.eui-21 :host.eds-tag.eds-tag--warning{--_surface: var(--eds-c-surface-warning-subtler);--_on-surface: var(--eds-c-on-surface-warning-subtler);--_border-color: var(--eds-c-border-warning-subtle)}.eui-21 :host.eds-tag.eds-tag--critical{--_surface: var(--eds-c-surface-critical-subtler);--_on-surface: var(--eds-c-on-surface-critical-subtler);--_border-color: var(--eds-c-border-critical-subtle)}.eui-21 :host.eds-tag.eds-tag--outline{--_surface: transparent}.eui-21 :host.eds-tag.eds-tag--outline.eds-tag--neutral{--_border-color: var(--eds-c-border-neutral)}.eui-21 :host.eds-tag.eds-tag--outline.eds-tag--info{--_border-color: var(--eds-c-border-info)}.eui-21 :host.eds-tag.eds-tag--outline.eds-tag--success{--_border-color: var(--eds-c-border-success)}.eui-21 :host.eds-tag.eds-tag--outline.eds-tag--warning{--_border-color: var(--eds-c-border-warning)}.eui-21 :host.eds-tag.eds-tag--outline.eds-tag--critical{--_border-color: var(--eds-c-border-critical)}.eui-21 :host.eds-tag--cm-blue-navy{--_surface: var(--eds-c-surface-cm-blue-navy-subtler);--_on-surface: var(--eds-c-on-surface-cm-blue-navy-subtler);--_border-color: var(--eds-c-border-cm-blue-navy-subtle)}.eui-21 :host.eds-tag--cm-blue-electric{--_surface: var(--eds-c-surface-cm-blue-electric-subtler);--_on-surface: var(--eds-c-on-surface-cm-blue-electric-subtler);--_border-color: var(--eds-c-border-cm-blue-electric-subtle)}.eui-21 :host.eds-tag--cm-blue-ocean{--_surface: var(--eds-c-surface-cm-blue-ocean-subtler);--_on-surface: var(--eds-c-on-surface-cm-blue-ocean-subtler);--_border-color: var(--eds-c-border-cm-blue-ocean-subtle)}.eui-21 :host.eds-tag--cm-green{--_surface: var(--eds-c-surface-cm-green-subtler);--_on-surface: var(--eds-c-on-surface-cm-green-subtler);--_border-color: var(--eds-c-border-cm-green-subtle)}.eui-21 :host.eds-tag--cm-green-dark{--_surface: var(--eds-c-surface-cm-green-dark-subtler);--_on-surface: var(--eds-c-on-surface-cm-green-dark-subtler);--_border-color: var(--eds-c-border-cm-green-dark-subtle)}.eui-21 :host.eds-tag--cm-orange{--_surface: var(--eds-c-surface-cm-orange-subtler);--_on-surface: var(--eds-c-on-surface-cm-orange-subtler);--_border-color: var(--eds-c-border-cm-orange-subtle)}.eui-21 :host.eds-tag--cm-purple{--_surface: var(--eds-c-surface-cm-purple-subtler);--_on-surface: var(--eds-c-on-surface-cm-purple-subtler);--_border-color: var(--eds-c-border-cm-purple-subtle)}.eui-21 :host.eds-tag--cm-green-lemon{--_surface: var(--eds-c-surface-cm-green-lemon-subtler);--_on-surface: var(--eds-c-on-surface-cm-green-lemon-subtler);--_border-color: var(--eds-c-border-cm-green-lemon-subtle)}.eui-21 :host.eds-tag--cm-green-pine{--_surface: var(--eds-c-surface-cm-green-pine-subtler);--_on-surface: var(--eds-c-on-surface-cm-green-pine-subtler);--_border-color: var(--eds-c-border-cm-green-pine-subtle)}.eui-21 :host.eds-tag--cm-red-crayola{--_surface: var(--eds-c-surface-cm-red-crayola-subtler);--_on-surface: var(--eds-c-on-surface-cm-red-crayola-subtler);--_border-color: var(--eds-c-border-cm-red-crayola-subtle)}.eui-21 :host.eds-tag--cm-yellow-gold{--_surface: var(--eds-c-surface-cm-yellow-gold-subtler);--_on-surface: var(--eds-c-on-surface-cm-yellow-gold-subtler);--_border-color: var(--eds-c-border-cm-yellow-gold-subtle)}.eui-21 :host.eds-tag--cm-orange-abricot{--_surface: var(--eds-c-surface-cm-orange-abricot-subtler);--_on-surface: var(--eds-c-on-surface-cm-orange-abricot-subtler);--_border-color: var(--eds-c-border-cm-orange-abricot-subtle)}.eui-21 :host.eds-tag--cm-purple-violet{--_surface: var(--eds-c-surface-cm-purple-violet-subtler);--_on-surface: var(--eds-c-on-surface-cm-purple-violet-subtler);--_border-color: var(--eds-c-border-cm-purple-violet-subtle)}.eui-21 :host.eds-tag--cm-red-tomato{--_surface: var(--eds-c-surface-cm-red-tomato-subtler);--_on-surface: var(--eds-c-on-surface-cm-red-tomato-subtler);--_border-color: var(--eds-c-border-cm-red-tomato-subtle)}.eui-21 :host.eds-tag--cm-warm-grey{--_surface: var(--eds-c-surface-cm-warm-grey-subtler);--_on-surface: var(--eds-c-on-surface-cm-warm-grey-subtler);--_border-color: var(--eds-c-border-cm-warm-grey-subtle)}.eui-21 :host.eds-tag{align-items:center;border-radius:var(--eds-br-m);display:inline-flex;border:var(--eds-bw-xs) solid var(--_border-color);padding:var(--_tag-padding);font:var(--_font);background-color:var(--_surface);color:var(--_on-surface);gap:var(--eds-sp-3xs);height:var(--_height)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
73
94
  }
74
95
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: EdsTag, decorators: [{
75
96
  type: Component,
76
- args: [{ selector: 'eds-tag, span[edsTag]', changeDetection: ChangeDetectionStrategy.OnPush, hostDirectives: [
97
+ args: [{ selector: 'eds-tag, span[edsTag]', changeDetection: ChangeDetectionStrategy.OnPush, host: {
98
+ '[class]': 'hostClasses()',
99
+ role: 'status',
100
+ '[attr.aria-label]': 'ariaLabel()',
101
+ '[attr.data-e2e]': 'e2eAttr()',
102
+ }, hostDirectives: [
77
103
  {
78
- directive: EuiBaseSizeVariantsDirective,
104
+ directive: EdsBaseSizeVariantsDirective,
79
105
  inputs: [
80
- 'euiSizeM',
81
- 'euiSizeL',
82
- 'euiSizeVariant',
106
+ 'edsSizeM',
107
+ 'edsSizeL',
108
+ 'edsSizeVariant',
83
109
  ],
84
110
  },
85
111
  {
86
- directive: EuiBaseColorVariantsDirective,
112
+ directive: EdsBaseColorVariantsDirective,
87
113
  inputs: [
88
- 'euiNeutral',
89
- 'euiSuccess',
90
- 'euiInfo',
91
- 'euiWarning',
92
- 'euiCritical',
93
- 'euiColorVariant',
114
+ 'edsNeutral',
115
+ 'edsSuccess',
116
+ 'edsInfo',
117
+ 'edsWarning',
118
+ 'edsCritical',
119
+ 'edsColorVariant',
94
120
  ],
95
121
  },
96
- ], template: "<ng-content></ng-content>\n", styles: [".eui-21 :host.eds-tag.eds-tag--size-m{--_font-size: var(--eds-f-s-s);--_tag-padding: var(--eds-sp-4xs) var(--eds-sp-3xs);--_icon-size: var(--eds-is-s);--_height: var(--eds-sp-xl)}.eui-21 :host.eds-tag.eds-tag--size-l{--_font-size: var(--eds-f-s-s);--_tag-padding: var(--eds-sp-3xs) var(--eds-sp-2xs);--_icon-size: var(--eds-is-m);--_height: var(--eds-sp-2xl)}.eui-21 :host.eds-tag.eds-tag--neutral{--_surface: var(--eds-c-surface-elevation-sunken);--_on-surface: var(--eds-c-foreground-subtle);--_border-color: var(--eds-c-border-neutral-subtle)}.eui-21 :host.eds-tag.eds-tag--info{--_surface: var(--eds-c-surface-info-subtler);--_on-surface: var(--eds-c-on-surface-info-subtler);--_border-color: var(--eds-c-border-info-subtle)}.eui-21 :host.eds-tag.eds-tag--success{--_surface: var(--eds-c-surface-success-subtler);--_on-surface: var(--eds-c-on-surface-success-subtler);--_border-color: var(--eds-c-border-success-subtle)}.eui-21 :host.eds-tag.eds-tag--warning{--_surface: var(--eds-c-surface-warning-subtler);--_on-surface: var(--eds-c-on-surface-warning-subtler);--_border-color: var(--eds-c-border-warning-subtle)}.eui-21 :host.eds-tag.eds-tag--critical{--_surface: var(--eds-c-surface-critical-subtler);--_on-surface: var(--eds-c-on-surface-critical-subtler);--_border-color: var(--eds-c-border-critical-subtle)}.eui-21 :host.eds-tag.eds-tag--outline{--_surface: transparent}.eui-21 :host.eds-tag.eds-tag--outline.eds-tag--neutral{--_border-color: var(--eds-c-border-neutral)}.eui-21 :host.eds-tag.eds-tag--outline.eds-tag--info{--_border-color: var(--eds-c-border-info)}.eui-21 :host.eds-tag.eds-tag--outline.eds-tag--success{--_border-color: var(--eds-c-border-success)}.eui-21 :host.eds-tag.eds-tag--outline.eds-tag--warning{--_border-color: var(--eds-c-border-warning)}.eui-21 :host.eds-tag.eds-tag--outline.eds-tag--critical{--_border-color: var(--eds-c-border-critical)}.eui-21 :host.eds-tag{align-items:center;border-radius:var(--eds-br-m);display:inline-flex;border:var(--eds-bw-xs) solid var(--_border-color);padding:var(--_tag-padding);font-size:var(--_font-size);background-color:var(--_surface);color:var(--_on-surface);gap:var(--eds-sp-3xs);height:var(--_height)}\n"] }]
97
- }], propDecorators: { cssClasses: [{
98
- type: HostBinding,
99
- args: ['class']
100
- }], role: [{
101
- type: HostBinding,
102
- args: ['attr.role']
103
- }], ariaLabel: [{
104
- type: Input
105
- }, {
106
- type: HostBinding,
107
- args: ['attr.aria-label']
108
- }], e2eAttr: [{
109
- type: HostBinding,
110
- args: ['attr.data-e2e']
111
- }, {
112
- type: Input
113
- }], euiInternalId: [{
114
- type: Input
115
- }], tooltipMessage: [{
116
- type: Input
117
- }], id: [{
118
- type: Input
119
- }], data: [{
120
- type: Input
121
- }], euiTagOutline: [{
122
- type: Input,
123
- args: [{ transform: booleanAttribute }]
124
- }], remove: [{
125
- type: Output
126
- }] } });
122
+ ], template: "<ng-content/>\n", styles: [".eui-21 :host.eds-tag.eds-tag--size-m{--_font: var(--eds-f-paragraph-s);--_tag-padding: var(--eds-sp-4xs) var(--eds-sp-3xs);--_icon-size: var(--eds-is-s);--_height: var(--eds-sp-xl)}.eui-21 :host.eds-tag.eds-tag--size-l{--_font: var(--eds-f-paragraph-s);--_tag-padding: var(--eds-sp-3xs) var(--eds-sp-2xs);--_icon-size: var(--eds-is-m);--_height: var(--eds-sp-2xl)}.eui-21 :host.eds-tag.eds-tag--neutral{--_surface: var(--eds-c-surface-elevation-sunken);--_on-surface: var(--eds-c-foreground-subtle);--_border-color: var(--eds-c-border-neutral-subtle)}.eui-21 :host.eds-tag.eds-tag--info{--_surface: var(--eds-c-surface-info-subtler);--_on-surface: var(--eds-c-on-surface-info-subtler);--_border-color: var(--eds-c-border-info-subtle)}.eui-21 :host.eds-tag.eds-tag--success{--_surface: var(--eds-c-surface-success-subtler);--_on-surface: var(--eds-c-on-surface-success-subtler);--_border-color: var(--eds-c-border-success-subtle)}.eui-21 :host.eds-tag.eds-tag--warning{--_surface: var(--eds-c-surface-warning-subtler);--_on-surface: var(--eds-c-on-surface-warning-subtler);--_border-color: var(--eds-c-border-warning-subtle)}.eui-21 :host.eds-tag.eds-tag--critical{--_surface: var(--eds-c-surface-critical-subtler);--_on-surface: var(--eds-c-on-surface-critical-subtler);--_border-color: var(--eds-c-border-critical-subtle)}.eui-21 :host.eds-tag.eds-tag--outline{--_surface: transparent}.eui-21 :host.eds-tag.eds-tag--outline.eds-tag--neutral{--_border-color: var(--eds-c-border-neutral)}.eui-21 :host.eds-tag.eds-tag--outline.eds-tag--info{--_border-color: var(--eds-c-border-info)}.eui-21 :host.eds-tag.eds-tag--outline.eds-tag--success{--_border-color: var(--eds-c-border-success)}.eui-21 :host.eds-tag.eds-tag--outline.eds-tag--warning{--_border-color: var(--eds-c-border-warning)}.eui-21 :host.eds-tag.eds-tag--outline.eds-tag--critical{--_border-color: var(--eds-c-border-critical)}.eui-21 :host.eds-tag--cm-blue-navy{--_surface: var(--eds-c-surface-cm-blue-navy-subtler);--_on-surface: var(--eds-c-on-surface-cm-blue-navy-subtler);--_border-color: var(--eds-c-border-cm-blue-navy-subtle)}.eui-21 :host.eds-tag--cm-blue-electric{--_surface: var(--eds-c-surface-cm-blue-electric-subtler);--_on-surface: var(--eds-c-on-surface-cm-blue-electric-subtler);--_border-color: var(--eds-c-border-cm-blue-electric-subtle)}.eui-21 :host.eds-tag--cm-blue-ocean{--_surface: var(--eds-c-surface-cm-blue-ocean-subtler);--_on-surface: var(--eds-c-on-surface-cm-blue-ocean-subtler);--_border-color: var(--eds-c-border-cm-blue-ocean-subtle)}.eui-21 :host.eds-tag--cm-green{--_surface: var(--eds-c-surface-cm-green-subtler);--_on-surface: var(--eds-c-on-surface-cm-green-subtler);--_border-color: var(--eds-c-border-cm-green-subtle)}.eui-21 :host.eds-tag--cm-green-dark{--_surface: var(--eds-c-surface-cm-green-dark-subtler);--_on-surface: var(--eds-c-on-surface-cm-green-dark-subtler);--_border-color: var(--eds-c-border-cm-green-dark-subtle)}.eui-21 :host.eds-tag--cm-orange{--_surface: var(--eds-c-surface-cm-orange-subtler);--_on-surface: var(--eds-c-on-surface-cm-orange-subtler);--_border-color: var(--eds-c-border-cm-orange-subtle)}.eui-21 :host.eds-tag--cm-purple{--_surface: var(--eds-c-surface-cm-purple-subtler);--_on-surface: var(--eds-c-on-surface-cm-purple-subtler);--_border-color: var(--eds-c-border-cm-purple-subtle)}.eui-21 :host.eds-tag--cm-green-lemon{--_surface: var(--eds-c-surface-cm-green-lemon-subtler);--_on-surface: var(--eds-c-on-surface-cm-green-lemon-subtler);--_border-color: var(--eds-c-border-cm-green-lemon-subtle)}.eui-21 :host.eds-tag--cm-green-pine{--_surface: var(--eds-c-surface-cm-green-pine-subtler);--_on-surface: var(--eds-c-on-surface-cm-green-pine-subtler);--_border-color: var(--eds-c-border-cm-green-pine-subtle)}.eui-21 :host.eds-tag--cm-red-crayola{--_surface: var(--eds-c-surface-cm-red-crayola-subtler);--_on-surface: var(--eds-c-on-surface-cm-red-crayola-subtler);--_border-color: var(--eds-c-border-cm-red-crayola-subtle)}.eui-21 :host.eds-tag--cm-yellow-gold{--_surface: var(--eds-c-surface-cm-yellow-gold-subtler);--_on-surface: var(--eds-c-on-surface-cm-yellow-gold-subtler);--_border-color: var(--eds-c-border-cm-yellow-gold-subtle)}.eui-21 :host.eds-tag--cm-orange-abricot{--_surface: var(--eds-c-surface-cm-orange-abricot-subtler);--_on-surface: var(--eds-c-on-surface-cm-orange-abricot-subtler);--_border-color: var(--eds-c-border-cm-orange-abricot-subtle)}.eui-21 :host.eds-tag--cm-purple-violet{--_surface: var(--eds-c-surface-cm-purple-violet-subtler);--_on-surface: var(--eds-c-on-surface-cm-purple-violet-subtler);--_border-color: var(--eds-c-border-cm-purple-violet-subtle)}.eui-21 :host.eds-tag--cm-red-tomato{--_surface: var(--eds-c-surface-cm-red-tomato-subtler);--_on-surface: var(--eds-c-on-surface-cm-red-tomato-subtler);--_border-color: var(--eds-c-border-cm-red-tomato-subtle)}.eui-21 :host.eds-tag--cm-warm-grey{--_surface: var(--eds-c-surface-cm-warm-grey-subtler);--_on-surface: var(--eds-c-on-surface-cm-warm-grey-subtler);--_border-color: var(--eds-c-border-cm-warm-grey-subtle)}.eui-21 :host.eds-tag{align-items:center;border-radius:var(--eds-br-m);display:inline-flex;border:var(--eds-bw-xs) solid var(--_border-color);padding:var(--_tag-padding);font:var(--_font);background-color:var(--_surface);color:var(--_on-surface);gap:var(--eds-sp-3xs);height:var(--_height)}\n"] }]
123
+ }], propDecorators: { ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], e2eAttr: [{ type: i0.Input, args: [{ isSignal: true, alias: "e2eAttr", required: false }] }], edsInternalId: [{ type: i0.Input, args: [{ isSignal: true, alias: "edsInternalId", required: false }] }], tooltipMessage: [{ type: i0.Input, args: [{ isSignal: true, alias: "tooltipMessage", required: false }] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], data: [{ type: i0.Input, args: [{ isSignal: true, alias: "data", required: false }] }], edsOutline: [{ type: i0.Input, args: [{ isSignal: true, alias: "edsOutline", required: false }] }], colorPalette: [{ type: i0.Input, args: [{ isSignal: true, alias: "colorPalette", required: false }] }], remove: [{ type: i0.Output, args: ["remove"] }] } });
127
124
 
128
125
  const EDS_TAG = [
129
126
  EdsTag,
@@ -1 +1 @@
1
- {"version":3,"file":"eui-eds-eds-tag.mjs","sources":["../../eds-tag/eds-tag.ts","../../eds-tag/eds-tag.html","../../eds-tag/index.ts","../../eds-tag/eui-eds-eds-tag.ts"],"sourcesContent":["import {\n Component,\n HostBinding,\n Input,\n ChangeDetectionStrategy,\n Output,\n EventEmitter,\n booleanAttribute,\n inject,\n OnInit,\n} from '@angular/core';\n\nimport { EuiBaseColorVariantsDirective, EuiBaseSizeVariantsDirective } from '@eui/eds/shared';\n\n@Component({\n templateUrl: './eds-tag.html',\n selector: 'eds-tag, span[edsTag]',\n styleUrl: './eds-tag.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [\n {\n directive: EuiBaseSizeVariantsDirective,\n inputs: [\n 'euiSizeM',\n 'euiSizeL',\n 'euiSizeVariant',\n ],\n }, \n {\n directive: EuiBaseColorVariantsDirective,\n inputs: [\n 'euiNeutral',\n 'euiSuccess',\n 'euiInfo',\n 'euiWarning',\n 'euiCritical',\n 'euiColorVariant',\n ],\n },\n ],\n})\nexport class EdsTag implements OnInit {\n /**\n * @description\n * Computes and returns the CSS classes for the component based on its current state.\n *\n * @returns {string} Space-separated string of CSS class names\n */\n @HostBinding('class')\n get cssClasses(): string {\n return [\n 'eds-tag',\n this.sizeVariantsBase.getCssClasses('eds-tag'),\n this.colorVariantsBase.getCssClasses('eds-tag'),\n this.euiTagOutline ? 'eds-tag--outline': '',\n ].join(' ').trim();\n }\n\n /**\n * Sets the `role` attribute for the host element.\n *\n * @default 'status'\n */\n @HostBinding('attr.role') role = 'status';\n /**\n * Sets the `aria-label` attribute for the host element.\n *\n * @default 'Chip content'\n */\n @Input() @HostBinding('attr.aria-label') ariaLabel = 'Tag content';\n\n /**\n * Sets the `data-e2e` attribute for the host element.\n *\n * @default 'eui-chip'\n */\n @HostBinding('attr.data-e2e')\n @Input()\n e2eAttr = 'eui-tag';\n\n /**\n * Sets the euiInternalId of the tag.\n *\n * @default null\n */\n @Input() euiInternalId!: string;\n /**\n * Sets the label of the tooltip to diaply on hover.\n */\n @Input() tooltipMessage!: string;\n /**\n * Sets the id of the tag.\n */\n @Input() id!: string | number;\n /**\n * Sets the data of the chip like tooltip configuration.\n */\n // TODO: type should be specific\n // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n @Input() data: any = {\n id: crypto.randomUUID(),\n tooltip: {\n color: 'euiTooltipPrimary',\n contentAlignment: null,\n position: 'above',\n },\n };\n\n @Input({ transform: booleanAttribute }) euiTagOutline = false;\n\n /**\n * Event emitted when the chip is removed.\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n @Output() remove = new EventEmitter<any>();\n\n protected sizeVariantsBase: EuiBaseSizeVariantsDirective = inject(EuiBaseSizeVariantsDirective);\n protected colorVariantsBase: EuiBaseColorVariantsDirective = inject(EuiBaseColorVariantsDirective);\n\n ngOnInit(): void {\n if (!this.sizeVariantsBase.euiSizeVariant) {\n this.sizeVariantsBase.euiSizeM = true;\n }\n if (!this.colorVariantsBase.euiColorVariant) {\n this.colorVariantsBase.euiNeutral = true;\n } \n }\n}\n","<ng-content></ng-content>\n","import { EdsTag } from './eds-tag';\n\nexport * from './eds-tag';\n\nexport const EDS_TAG = [\n EdsTag,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;MAyCa,MAAM,CAAA;AA3BnB,IAAA,WAAA,GAAA;AA4CI;;;;AAIG;QACuB,IAAA,CAAA,IAAI,GAAG,QAAQ;AACzC;;;;AAIG;QACsC,IAAA,CAAA,SAAS,GAAG,aAAa;AAElE;;;;AAIG;QAGH,IAAA,CAAA,OAAO,GAAG,SAAS;AAgBnB;;AAEG;;;;AAIM,QAAA,IAAA,CAAA,IAAI,GAAQ;AACjB,YAAA,EAAE,EAAE,MAAM,CAAC,UAAU,EAAE;AACvB,YAAA,OAAO,EAAE;AACL,gBAAA,KAAK,EAAE,mBAAmB;AAC1B,gBAAA,gBAAgB,EAAE,IAAI;AACtB,gBAAA,QAAQ,EAAE,OAAO;AACpB,aAAA;SACJ;QAEuC,IAAA,CAAA,aAAa,GAAG,KAAK;AAE7D;;AAEG;;AAEO,QAAA,IAAA,CAAA,MAAM,GAAG,IAAI,YAAY,EAAO;AAEhC,QAAA,IAAA,CAAA,gBAAgB,GAAiC,MAAM,CAAC,4BAA4B,CAAC;AACrF,QAAA,IAAA,CAAA,iBAAiB,GAAkC,MAAM,CAAC,6BAA6B,CAAC;AAUrG,IAAA;AAtFG;;;;;AAKG;AACH,IAAA,IACI,UAAU,GAAA;QACV,OAAO;YACH,SAAS;AACT,YAAA,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,SAAS,CAAC;AAC9C,YAAA,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,SAAS,CAAC;YAC/C,IAAI,CAAC,aAAa,GAAG,kBAAkB,GAAE,EAAE;AAC9C,SAAA,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE;IACtB;IAgEA,QAAQ,GAAA;AACJ,QAAA,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAE;AACvC,YAAA,IAAI,CAAC,gBAAgB,CAAC,QAAQ,GAAG,IAAI;QACzC;AACA,QAAA,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,eAAe,EAAE;AACzC,YAAA,IAAI,CAAC,iBAAiB,CAAC,UAAU,GAAG,IAAI;QAC5C;IACJ;8GAtFS,MAAM,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAN,MAAM,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,MAAA,EAAA,EAAA,SAAA,EAAA,WAAA,EAAA,OAAA,EAAA,SAAA,EAAA,aAAA,EAAA,eAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,aAAA,EAAA,CAAA,eAAA,EAAA,eAAA,EAoEK,gBAAgB,CAAA,EAAA,EAAA,OAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,WAAA,EAAA,iBAAA,EAAA,gBAAA,EAAA,eAAA,EAAA,cAAA,EAAA,EAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,4BAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,gBAAA,EAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,SAAA,EAAA,EAAA,CAAA,6BAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,YAAA,EAAA,YAAA,EAAA,YAAA,EAAA,SAAA,EAAA,SAAA,EAAA,YAAA,EAAA,YAAA,EAAA,aAAA,EAAA,aAAA,EAAA,iBAAA,EAAA,iBAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC7GxC,6BACA,EAAA,MAAA,EAAA,CAAA,0oEAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FDwCa,MAAM,EAAA,UAAA,EAAA,CAAA;kBA3BlB,SAAS;AAEI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,uBAAuB,EAAA,eAAA,EAEhB,uBAAuB,CAAC,MAAM,EAAA,cAAA,EAC/B;AACZ,wBAAA;AACI,4BAAA,SAAS,EAAE,4BAA4B;AACvC,4BAAA,MAAM,EAAE;gCACJ,UAAU;gCACV,UAAU;gCACV,gBAAgB;AACnB,6BAAA;AACJ,yBAAA;AACD,wBAAA;AACI,4BAAA,SAAS,EAAE,6BAA6B;AACxC,4BAAA,MAAM,EAAE;gCACJ,YAAY;gCACZ,YAAY;gCACZ,SAAS;gCACT,YAAY;gCACZ,aAAa;gCACb,iBAAiB;AACpB,6BAAA;AACJ,yBAAA;AACJ,qBAAA,EAAA,QAAA,EAAA,6BAAA,EAAA,MAAA,EAAA,CAAA,0oEAAA,CAAA,EAAA;;sBASA,WAAW;uBAAC,OAAO;;sBAenB,WAAW;uBAAC,WAAW;;sBAMvB;;sBAAS,WAAW;uBAAC,iBAAiB;;sBAOtC,WAAW;uBAAC,eAAe;;sBAC3B;;sBAQA;;sBAIA;;sBAIA;;sBAOA;;sBASA,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;;sBAMrC;;;AE/GE,MAAM,OAAO,GAAG;IACnB,MAAM;;;ACLV;;AAEG;;;;"}
1
+ {"version":3,"file":"eui-eds-eds-tag.mjs","sources":["../../eds-tag/eds-tag.ts","../../eds-tag/eds-tag.html","../../eds-tag/index.ts","../../eds-tag/eui-eds-eds-tag.ts"],"sourcesContent":["import {\n Component,\n input,\n ChangeDetectionStrategy,\n booleanAttribute,\n inject,\n computed,\n OnInit,\n output,\n} from '@angular/core';\n\nimport { EdsBaseColorVariantsDirective, EdsBaseSizeVariantsDirective } from '@eui/eds/shared';\n\n@Component({\n templateUrl: './eds-tag.html',\n selector: 'eds-tag, span[edsTag]',\n styleUrl: './eds-tag.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[class]': 'hostClasses()',\n role: 'status',\n '[attr.aria-label]': 'ariaLabel()',\n '[attr.data-e2e]': 'e2eAttr()',\n },\n hostDirectives: [\n {\n directive: EdsBaseSizeVariantsDirective,\n inputs: [\n 'edsSizeM',\n 'edsSizeL',\n 'edsSizeVariant',\n ],\n },\n {\n directive: EdsBaseColorVariantsDirective,\n inputs: [\n 'edsNeutral',\n 'edsSuccess',\n 'edsInfo',\n 'edsWarning',\n 'edsCritical',\n 'edsColorVariant',\n ],\n },\n ],\n})\nexport class EdsTag implements OnInit {\n /**\n * @description\n * Computes and returns the CSS classes for the component based on its current state.\n *\n * @returns {string} Space-separated string of CSS class names\n */\n hostClasses = computed(() => {\n return [\n 'eds-tag',\n this.sizeVariantsBase.getCssClasses('eds-tag'),\n this.colorVariantsBase.getCssClasses('eds-tag'),\n this.edsOutline() ? 'eds-tag--outline': '',\n this.colorPalette() ? `eds-tag--${this.colorPalette()}` : '',\n ].join(' ').trim();\n });\n\n /**\n * Sets the `aria-label` attribute for the host element.\n *\n * @default 'Chip content'\n */\n ariaLabel = input('Tag content');\n\n /**\n * Sets the `data-e2e` attribute for the host element.\n *\n * @default 'eds-tag'\n */\n e2eAttr = input('eds-tag');\n\n /**\n * Sets the edsInternalId of the tag.\n *\n * @default null\n */\n edsInternalId = input<string>('');\n /**\n * Sets the label of the tooltip to diaply on hover.\n */\n tooltipMessage = input<string>('');\n /**\n * Sets the id of the tag.\n */\n id = input<string | number>('');\n /**\n * Sets the data of the chip like tooltip configuration.\n */\n // TODO: type should be specific\n // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n data = input<any>({\n id: crypto.randomUUID(),\n tooltip: {\n color: 'edsTooltipPrimary',\n contentAlignment: null,\n position: 'above',\n },\n });\n\n edsOutline = input(false, { transform: booleanAttribute });\n\n /**\n * Extra color palette to be used on the status-badge.\n */\n colorPalette = input<string>('');\n\n /**\n * Event emitted when the chip is removed.\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n readonly remove = output<any>();\n\n protected sizeVariantsBase: EdsBaseSizeVariantsDirective = inject(EdsBaseSizeVariantsDirective);\n protected colorVariantsBase: EdsBaseColorVariantsDirective = inject(EdsBaseColorVariantsDirective);\n\n ngOnInit(): void {\n if (!this.sizeVariantsBase.edsSizeVariant) {\n this.sizeVariantsBase.edsSizeM = true;\n }\n if (!this.colorVariantsBase.edsColorVariant && !this.colorPalette()) {\n this.colorVariantsBase.edsNeutral = true;\n }\n }\n}\n","<ng-content/>\n","import { EdsTag } from './eds-tag';\n\nexport * from './eds-tag';\n\nexport const EDS_TAG = [\n EdsTag,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}