@eui/components 19.2.3-snapshot-1747127910630 → 19.2.3-snapshot-1747235808987
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.
- package/docs/components/EuiAutocompleteComponent.html +4 -4
- package/docs/components/EuiButtonComponent.html +5 -5
- package/docs/components/EuiCardComponent-1.html +1 -1
- package/docs/components/EuiCardHeaderRightContentComponent.html +10 -4
- package/docs/components/EuiDateRangeSelectorComponent.html +4 -4
- package/docs/components/EuiDatepickerComponent.html +4 -4
- package/docs/components/EuiDialogComponent.html +4 -4
- package/docs/components/EuiDialogContainerComponent.html +0 -4
- package/docs/components/EuiDropdownComponent.html +4 -4
- package/docs/components/EuiDropdownItemComponent.html +0 -4
- package/docs/components/EuiGrowlComponent.html +4 -4
- package/docs/components/EuiLanguageSelectorComponent.html +4 -4
- package/docs/components/EuiNotificationsComponent.html +1 -82
- package/docs/components/EuiNotificationsV2Component.html +1 -1
- package/docs/components/EuiTimeRangepickerComponent.html +4 -4
- package/docs/components/EuiTreeListComponent.html +4 -4
- package/docs/dependencies.html +2 -2
- package/docs/js/menu-wc.js +3 -3
- package/docs/js/menu-wc_es5.js +1 -1
- package/docs/js/search/search_index.js +2 -2
- package/docs/miscellaneous/variables.html +2 -0
- package/eui-button/eui-button.component.d.ts +1 -1
- package/eui-button/eui-button.component.d.ts.map +1 -1
- package/eui-card-v2/eui-card-header/eui-card-header-right-content.d.ts +3 -0
- package/eui-card-v2/eui-card-header/eui-card-header-right-content.d.ts.map +1 -1
- package/eui-chip-list/eui-chip-list.component.d.ts.map +1 -1
- package/eui-date-range-selector/eui-date-range-selector.component.d.ts.map +1 -1
- package/eui-datepicker/eui-datepicker.component.d.ts.map +1 -1
- package/eui-dialog/container/eui-dialog-container.component.d.ts.map +1 -1
- package/eui-dialog/eui-dialog.component.d.ts.map +1 -1
- package/eui-dropdown/dropdown-item/eui-dropdown-item.component.d.ts.map +1 -1
- package/eui-dropdown/eui-dropdown.component.d.ts.map +1 -1
- package/eui-growl/eui-growl.component.d.ts.map +1 -1
- package/eui-table/index.d.ts +2 -1
- package/eui-table/index.d.ts.map +1 -1
- package/eui-table-v2/index.d.ts +2 -1
- package/eui-table-v2/index.d.ts.map +1 -1
- package/eui-tree-list/eui-tree-list.component.d.ts.map +1 -1
- package/fesm2022/eui-components-eui-alert.mjs +2 -2
- package/fesm2022/eui-components-eui-alert.mjs.map +1 -1
- package/fesm2022/eui-components-eui-autocomplete.mjs.map +1 -1
- package/fesm2022/eui-components-eui-button.mjs +3 -2
- package/fesm2022/eui-components-eui-button.mjs.map +1 -1
- package/fesm2022/eui-components-eui-card-v2.mjs +103 -93
- package/fesm2022/eui-components-eui-card-v2.mjs.map +1 -1
- package/fesm2022/eui-components-eui-chip-list.mjs +1 -1
- package/fesm2022/eui-components-eui-chip-list.mjs.map +1 -1
- package/fesm2022/eui-components-eui-date-range-selector.mjs +4 -4
- package/fesm2022/eui-components-eui-date-range-selector.mjs.map +1 -1
- package/fesm2022/eui-components-eui-datepicker.mjs.map +1 -1
- package/fesm2022/eui-components-eui-dialog.mjs +4 -4
- package/fesm2022/eui-components-eui-dialog.mjs.map +1 -1
- package/fesm2022/eui-components-eui-dropdown.mjs +2 -2
- package/fesm2022/eui-components-eui-dropdown.mjs.map +1 -1
- package/fesm2022/eui-components-eui-growl.mjs.map +1 -1
- package/fesm2022/eui-components-eui-language-selector.mjs.map +1 -1
- package/fesm2022/eui-components-eui-table-v2.mjs +1 -0
- package/fesm2022/eui-components-eui-table-v2.mjs.map +1 -1
- package/fesm2022/eui-components-eui-table.mjs +1 -0
- package/fesm2022/eui-components-eui-table.mjs.map +1 -1
- package/fesm2022/eui-components-eui-tree-list.mjs.map +1 -1
- package/fesm2022/eui-components-layout.mjs +26 -10
- package/fesm2022/eui-components-layout.mjs.map +1 -1
- package/layout/eui-notifications/eui-notifications.component.d.ts +2 -1
- package/layout/eui-notifications/eui-notifications.component.d.ts.map +1 -1
- package/layout/eui-notifications-v2/eui-notifications.component.d.ts +2 -0
- package/layout/eui-notifications-v2/eui-notifications.component.d.ts.map +1 -1
- package/package.json +7 -7
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"eui-components-eui-dropdown.mjs","sources":["../../eui-dropdown/animations/open-close.ts","../../eui-dropdown/dropdown-item/eui-dropdown-item.component.ts","../../eui-dropdown/dropdown-item/eui-dropdown-item.component.html","../../eui-dropdown/eui-dropdown.service.ts","../../eui-dropdown/eui-dropdown.component.ts","../../eui-dropdown/eui-dropdown.component.html","../../eui-dropdown/directives/eui-dropdown-content.directive.ts","../../eui-dropdown/eui-dropdown.module.ts","../../eui-dropdown/index.ts","../../eui-dropdown/eui-components-eui-dropdown.ts"],"sourcesContent":["import { animate, state, style, transition, trigger } from '@angular/animations';\n\nexport const openClose = trigger('openClose', [\n state(\n 'open',\n style({\n opacity: 1,\n transform: 'scale(1)',\n }),\n ),\n state(\n 'closed',\n style({\n opacity: 0,\n transform: 'scale(0.9)',\n }),\n ),\n transition('closed => open', [animate('50ms 25ms linear')]),\n]);\n","import {\n Component,\n HostBinding,\n ChangeDetectionStrategy,\n ViewEncapsulation,\n Input,\n ElementRef,\n booleanAttribute,\n inject,\n} from '@angular/core';\nimport { FocusableOption, Highlightable } from '@angular/cdk/a11y';\n\nimport { EuiDropdownComponent } from '../eui-dropdown.component';\nimport { EUI_ICON } from '@eui/components/eui-icon';\n\n@Component({\n selector: 'eui-dropdown-item, [euiDropdownItem]',\n templateUrl: './eui-dropdown-item.component.html',\n styleUrls: ['../styles/_index.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n imports: [\n ...EUI_ICON,\n ],\n})\nexport class EuiDropdownItemComponent implements Highlightable, FocusableOption {\n elementRef = inject(ElementRef);\n\n @Input() subDropdown: EuiDropdownComponent;\n\n @HostBinding('attr.role') role = 'menuitem';\n @HostBinding('class')\n get cssClasses(): string {\n return [\n 'eui-dropdown-item',\n this.isActive ? 'eui-dropdown-item--active' : '',\n this.isFocus ? 'eui-dropdown-item--focused' : '',\n this.subDropdown ? 'eui-dropdown-item--has-subdropdown' : '',\n ]\n .join(' ')\n .trim();\n }\n\n @Input({ transform: booleanAttribute }) isActive: boolean;\n @Input({ transform: booleanAttribute }) isFocus: boolean;\n\n public setActiveStyles(): void {\n this.isFocus = true;\n }\n\n public setInactiveStyles(): void {\n this.isFocus = false;\n }\n\n public focus(): void {\n this.elementRef.nativeElement.focus();\n }\n\n public click(): void {\n this.elementRef.nativeElement.click();\n }\n\n public mouseenter(): void {\n const mouseenterEvent = new Event('mouseenter');\n this.elementRef.nativeElement.dispatchEvent(mouseenterEvent);\n }\n}\n","<div class=\"eui-dropdown-item__container\">\n <div class=\"eui-dropdown-item__content\">\n @if (subDropdown) {\n <div class=\"eui-dropdown-item__content-icon eui-dropdown-item__content-icon--left\">\n <eui-icon-svg icon=\"chevron-back:sharp\" size=\"s\" fillColor=\"neutral\"></eui-icon-svg>\n </div>\n }\n <div class=\"eui-dropdown-item__content-text\">\n <ng-content></ng-content>\n </div>\n @if (subDropdown) {\n <div class=\"eui-dropdown-item__content-icon eui-dropdown-item__content-icon--right\">\n <eui-icon-svg icon=\"chevron-forward:sharp\" size=\"s\" fillColor=\"neutral\"></eui-icon-svg>\n </div>\n }\n </div>\n</div>\n","import { EventEmitter, Injectable } from '@angular/core';\n\n@Injectable()\nexport class EuiDropdownService {\n isDropdownOpen = new EventEmitter<boolean>();\n}\n","import {\n Component,\n ChangeDetectionStrategy,\n HostBinding,\n ViewEncapsulation,\n Input,\n OnInit,\n OnDestroy,\n AfterViewInit,\n ViewContainerRef,\n ViewChild,\n TemplateRef,\n ContentChildren,\n QueryList,\n ElementRef,\n Renderer2,\n booleanAttribute,\n EventEmitter,\n inject,\n PLATFORM_ID,\n Output,\n ChangeDetectorRef,\n signal,\n} from '@angular/core';\nimport { DOCUMENT, isPlatformBrowser, isPlatformServer } from '@angular/common';\nimport {\n CdkScrollable,\n ConnectionPositionPair,\n FlexibleConnectedPositionStrategy,\n FlexibleConnectedPositionStrategyOrigin,\n GlobalPositionStrategy,\n Overlay,\n OverlayRef,\n ScrollDispatcher,\n OverlayModule,\n} from '@angular/cdk/overlay';\nimport { A11yModule } from '@angular/cdk/a11y';\nimport { ScrollingModule } from '@angular/cdk/scrolling';\nimport { ObserversModule } from '@angular/cdk/observers';\nimport { fromEvent, Subject, Subscription, takeUntil } from 'rxjs';\nimport { TemplatePortal } from '@angular/cdk/portal';\nimport { ActiveDescendantKeyManager, Highlightable } from '@angular/cdk/a11y';\n\nimport { openClose } from './animations/open-close';\nimport { EuiDropdownItemComponent } from './dropdown-item/eui-dropdown-item.component';\nimport { EuiDropdownService } from './eui-dropdown.service';\n\n/**\n * @description\n * The eui-dropdown component is composed of a trigger, usually a button, which allows to display the dropdown content specified with the eui-dropdown-content.\n */\n@Component({\n selector: 'eui-dropdown',\n templateUrl: './eui-dropdown.component.html',\n styleUrls: ['./styles/_index.scss'],\n animations: [openClose],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n imports: [\n OverlayModule,\n ScrollingModule,\n A11yModule,\n ObserversModule,\n ],\n providers: [EuiDropdownService],\n})\nexport class EuiDropdownComponent implements OnInit, OnDestroy, AfterViewInit {\n /**\n * Sets the `data-e2e` attribute for dropodown panel. Default: `eui-dropdown`.\n *\n * @default 'eui-dropdown'\n */\n @Input() e2eAttr = 'eui-dropdown';\n /**\n * Sets the `tabindex` attribute for a dropdown panel.\n *\n * @default -1\n */\n @Input() tabIndex = -1;\n /**\n * Sets the `width` attribute for the dropdown panel.\n *\n * @default 'auto'\n */\n @Input() width = 'auto';\n /**\n * Sets the `height` attribute for the dropdown panel.\n *\n * @default 'auto'\n */\n @Input() height = 'auto';\n /**\n * Sets the `position` attribute for the dropdown panel.\n *\n * @default 'bottom'\n */\n @Input() position: 'top' | 'right' | 'bottom' | 'left' = 'bottom';\n /**\n * Sets the `subDropdownPosition` attribute for a multi-level dropdown.\n *\n * @default 'right'\n */\n @Input() subDropdownPosition: 'right' | 'left' = 'right';\n /**\n * Sets the `isBlock` attribute in order for the dropdown to take the full width of the parent container.\n *\n * @default false\n */\n @Input({ transform: booleanAttribute }) isBlock = false;\n /**\n * Sets the `isDropDownRightAligned` attribute to align the menu panel on the right of the opening element.\n *\n * @default false\n */\n @Input({ transform: booleanAttribute }) isDropDownRightAligned = false;\n /**\n * Sets the `hasClosedOnClickInside` attribute which controls the auto-closing of the menu when clicking inside.\n *\n * @default true\n */\n @Input({ transform: booleanAttribute }) hasClosedOnClickInside = true;\n /**\n * Sets the `isLabelUpdatedFromSelectedItem` attribute which updates the label of the trigger with the selected item.\n *\n * @default false\n */\n @Input({ transform: booleanAttribute }) isLabelUpdatedFromSelectedItem = false;\n /**\n * Sets the `isExpandOnHover` attribute which opens the sub dropdown upon hover.\n *\n * @default false\n */\n @Input({ transform: booleanAttribute }) isExpandOnHover = false;\n /**\n * Sets the `hasTabNavigation` attribute to tab within the dropdown content when there is rich content.\n *\n * @default false\n */\n @Input({ transform: booleanAttribute }) hasTabNavigation = false;\n /**\n * Sets the `isRightClickEnabled` attribute to trigger the menu using the right mouse click.\n *\n * @default false\n */\n @Input({ transform: booleanAttribute }) isRightClickEnabled = false;\n @Input({ transform: booleanAttribute }) euiDisabled = false;\n /**\n * Event emitted when the menu expands.\n */\n @Output() expand: EventEmitter<boolean> = new EventEmitter();\n\n @ViewChild('templatePortalContent') templatePortalContent: TemplateRef<unknown>;\n @ViewChild('triggerRef') triggerRef: ElementRef<HTMLElement>;\n @ContentChildren(EuiDropdownItemComponent, { descendants: true }) euiDropdownItems: QueryList<Highlightable & EuiDropdownItemComponent>;\n\n public trapFocusAutoCapture = true;\n public parentDropdown: EuiDropdownComponent;\n\n protected isOpened = signal(false);\n private mousePositionX = 0;\n private mousePositionY = 0;\n private initialScrollX = 0;\n private initialScrollY = 0;\n private originX: 'start' | 'end' | 'center' = 'start';\n private originY: 'top' | 'bottom' | 'center' = 'bottom';\n private overlayX: 'start' | 'end' | 'center' = 'start';\n private overlayY: 'top' | 'bottom' | 'center' = 'top';\n private templatePortal: TemplatePortal;\n private overlayRef: OverlayRef;\n private destroy$ = new Subject<boolean>();\n private scrollDispatcherSubscription = new Subscription();\n private keydownListenerSubscription = new Subscription();\n private euiDropdownItemsEventSubscriptions: Subscription[] = [];\n private activeDescendantKeyManagerChangeSubscription = new Subscription();\n private activeDescendantKeyManager: ActiveDescendantKeyManager<EuiDropdownItemComponent>;\n private origin: HTMLElement;\n private positionStrategy: FlexibleConnectedPositionStrategy;\n private scrollSubscription = new Subscription();\n private overlay = inject(Overlay);\n private viewContainerRef = inject(ViewContainerRef);\n private scrollDispatcher = inject(ScrollDispatcher);\n private dropdownService = inject(EuiDropdownService);\n private cd = inject(ChangeDetectorRef);\n protected _renderer = inject(Renderer2);\n protected platformId = inject(PLATFORM_ID);\n private document = inject<Document>(DOCUMENT);\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 'eui-dropdown',\n this.isBlock ? 'eui-dropdown--block' : '',\n this.isRightClickEnabled ? 'eui-dropdown--contextual-menu' : '',\n ].join(' ').trim();\n }\n\n ngOnInit(): void {\n // Currently, the `cdkTrapFocusAutoCapture` is only checked once on init.\n if (this.hasDropdownItems) {\n this.trapFocusAutoCapture = false;\n } else {\n this.trapFocusAutoCapture = true;\n }\n\n if (this.hasTabNavigation) {\n this.trapFocusAutoCapture = true;\n this.hasClosedOnClickInside = false;\n }\n\n if (this.isRightClickEnabled) {\n this.hasTabNavigation = false; // UX wise, contextual menu contains only menu items accessible through arrow keys nav\n }\n\n this.setPosition();\n }\n\n ngAfterViewInit(): void {\n this.templatePortal = new TemplatePortal(this.templatePortalContent, this.viewContainerRef);\n\n if(this.triggerRef && this.triggerRef.nativeElement.firstElementChild) {\n this._renderer?.setAttribute(this.triggerRef.nativeElement.firstElementChild, 'aria-haspopup', 'true');\n }\n }\n\n ngOnDestroy(): void {\n this.destroy$.next(true);\n this.destroy$.unsubscribe();\n this.euiDropdownItemsEventSubscriptions.forEach((euiDropdownItemsEventSubscription) => {\n euiDropdownItemsEventSubscription.unsubscribe();\n });\n this.keydownListenerSubscription.unsubscribe();\n this.scrollDispatcherSubscription.unsubscribe();\n this.activeDescendantKeyManagerChangeSubscription.unsubscribe();\n this.overlayRef?.dispose();\n this.overlayRef = null;\n this.activeDescendantKeyManager = null;\n this.scrollSubscription.unsubscribe();\n }\n\n /**\n * Whether the eui-dropdown is open.\n *\n * @deprecated This property will be removed in the future. Use `isOpened` signal instead.\n *\n * @usageNotes\n * ```html\n * <eui-dropdown #dropdown>\n * <my-component *ngIf=\"dropdown.isOpen\"></my-component>\n * </eui-dropdown>\n * ```\n * @returns A boolean with value `true` when open, otherwise `false`.\n */\n get isOpen(): boolean {\n return this.isOpened();\n }\n /**\n * Method fired upon clicking the dropdown trigger.\n *\n * @param e Event triggered when the dropdown trigger is clicked.\n */\n public onTriggerClicked(e: Event): void {\n if (\n !(e.target as HTMLElement).querySelector('.disabled') &&\n !(e.target as HTMLElement).querySelector(':disabled') &&\n !this.isOpened()\n ) {\n if (this.isBlock) {\n this.width = this.triggerRef.nativeElement.offsetWidth + 'px';\n }\n\n this.openDropdown(e.target as HTMLElement);\n this.expand.emit(true);\n e.stopPropagation();\n }\n }\n /**\n * Method fired upon right clicking the dropdown trigger in case of context menu.\n *\n * @param e Event triggered when the dropdown trigger is right clicked.\n */\n public onTriggerRightClicked(e: Event): void {\n if (\n !(e.target as HTMLElement).querySelector('.disabled') &&\n !(e.target as HTMLElement).querySelector(':disabled') &&\n !this.isOpened()\n ) {\n if (this.isBlock) {\n this.width = this.triggerRef.nativeElement.offsetWidth + 'px';\n }\n\n this.mousePositionX = (e as PointerEvent).clientX;\n this.mousePositionY = (e as PointerEvent).clientY;\n if(isPlatformBrowser(this.platformId)) {\n this.initialScrollX = window.pageXOffset;\n this.initialScrollY = window.pageYOffset;\n }\n\n this.openDropdown(e.target as HTMLElement);\n e.preventDefault();\n e.stopPropagation();\n }\n }\n /**\n * Method fired upon clicking the dropdown content.\n *\n */\n public onClick(): void {\n if (\n this.hasClosedOnClickInside &&\n !this.activeDescendantKeyManager?.activeItem.subDropdown &&\n !this.activeDescendantKeyManager?.activeItem.elementRef?.nativeElement?.disabled\n ) {\n this.closeDropdown(true);\n }\n }\n\n /**\n * Method fired when the dropdown is opened.\n *\n * @param origin Origin of the dropdown position\n * @param position Position of the dropdown\n * @param position.x X coordinate of the dropdown position\n * @param position.y Y coordinate of the dropdown position\n */\n public openDropdown(origin: HTMLElement, position?: { x: number, y: number }): void {\n this.origin = origin;\n\n if (position) {\n this.mousePositionX = position.x;\n this.mousePositionY = position.y;\n if(isPlatformBrowser(this.platformId)) {\n this.initialScrollX = window.pageXOffset;\n this.initialScrollY = window.pageYOffset;\n }\n }\n\n if (this.isRightClickEnabled) {\n this.scrollSubscription = fromEvent(window, 'scroll').subscribe((event: Event) => {\n this.overlayRef?.updatePositionStrategy(this.getContextualMenuPositionStrategy());\n });\n }\n\n if (!this.isTriggerFocusableOnClose(origin)) {\n this.origin = origin.closest('button:not([disabled])') || (this.triggerRef.nativeElement.firstChild as HTMLElement);\n\n if (!this.origin) {\n this.origin = origin.closest('a');\n }\n\n if (!this.origin) {\n this.origin = origin;\n }\n }\n\n if (!this.isOpened()) {\n this.scrollDispatcherSubscription = this.scrollDispatcher\n .ancestorScrolled(this.origin)\n .pipe(takeUntil(this.destroy$))\n .subscribe((event: CdkScrollable) => {\n if (!this.isVisible(this.origin, event ? event.getElementRef().nativeElement : this.document.querySelector('body'))) {\n this.closeDropdown();\n }\n });\n\n const positionStrategy = this.isRightClickEnabled ? this.getContextualMenuPositionStrategy() : this.getPositionStrategy();\n const scrollStrategy = this.overlay.scrollStrategies.reposition({ scrollThrottle: 10 });\n\n this.overlayRef = this.overlay.create({\n hasBackdrop: false,\n backdropClass: 'eui-dropdown__backdrop',\n panelClass: ['eui-dropdown__panel', this.subDropdownPosition === 'right' ? 'eui-dropdown--subdropdown-position-right' : 'eui-dropdown--subdropdown-position-left'],\n positionStrategy,\n scrollStrategy,\n disposeOnNavigation: true,\n });\n this.overlayRef.attach(this.templatePortal);\n\n if (this.isRightClickEnabled) {\n this.overlayRef?.updatePositionStrategy(this.getContextualMenuPositionStrategy());\n }\n\n this.overlayRef\n .outsidePointerEvents()\n .pipe(takeUntil(this.destroy$))\n .subscribe(() => {\n this.closeDropdown();\n });\n this.overlayRef\n .backdropClick()\n .pipe(takeUntil(this.destroy$))\n .subscribe(() => {\n this.closeDropdown();\n });\n this.overlayRef\n .keydownEvents()\n .pipe(takeUntil(this.destroy$))\n .subscribe((keyboardEvent) => {\n if (keyboardEvent.key?.toLowerCase() === 'escape') {\n this.closeDropdown();\n }\n });\n\n if (this.hasDropdownItems) {\n this.euiDropdownItems.toArray().forEach((euiDropdownItem, i) => {\n if (this.isExpandOnHover) {\n this.euiDropdownItemsEventSubscriptions[i] = fromEvent(\n euiDropdownItem.elementRef.nativeElement,\n 'mouseenter',\n ).pipe(takeUntil(this.destroy$)).subscribe((e: MouseEvent) => {\n this.activeDescendantKeyManager.setActiveItem(euiDropdownItem);\n if (this.activeDescendantKeyManager.activeItem?.subDropdown) {\n this.activeDescendantKeyManager.activeItem?.subDropdown.setParentDropdown(this);\n this.activeDescendantKeyManager.activeItem?.subDropdown.overlayRef.detachBackdrop();\n this.keydownListenerSubscription.unsubscribe();\n }\n\n const triggerOutsidePointerEvents = (subDropdown: EuiDropdownComponent): void => {\n subDropdown?.overlayRef?._outsidePointerEvents.next(e);\n\n if (subDropdown?.hasDropdownItems) {\n subDropdown.euiDropdownItems.toArray().forEach((s) => {\n triggerOutsidePointerEvents(s.subDropdown);\n });\n }\n };\n\n this.euiDropdownItems\n .filter((item) => !item.isFocus)\n .forEach((euiDropdownItemHavingSubDropdown) => {\n triggerOutsidePointerEvents(euiDropdownItemHavingSubDropdown.subDropdown);\n });\n });\n } else {\n this.euiDropdownItemsEventSubscriptions[i] = fromEvent(\n euiDropdownItem.elementRef.nativeElement,\n 'click',\n ).pipe(takeUntil(this.destroy$)).subscribe(() => {\n this.activeDescendantKeyManager.setActiveItem(euiDropdownItem);\n if (this.activeDescendantKeyManager.activeItem?.subDropdown) {\n this.activeDescendantKeyManager.activeItem?.subDropdown.setParentDropdown(this);\n this.activeDescendantKeyManager.activeItem?.subDropdown.overlayRef.detachBackdrop();\n this.keydownListenerSubscription.unsubscribe();\n }\n\n const labelElement = this.triggerRef.nativeElement.querySelector('button .eui-label');\n if (this.isLabelUpdatedFromSelectedItem && labelElement) {\n (labelElement as HTMLElement).innerText = euiDropdownItem.elementRef.nativeElement.innerText;\n }\n });\n }\n });\n\n this.activeDescendantKeyManager = new ActiveDescendantKeyManager(this.euiDropdownItems)\n .withHomeAndEnd(true)\n .withVerticalOrientation(true)\n .withWrap();\n this.activeDescendantKeyManager.setFirstItemActive();\n }\n\n this.createKeyboardHandlerSubscription();\n this.isOpened.set(true);\n this.dropdownService.isDropdownOpen.emit(true);\n }\n }\n\n /**\n * Close a dropdown\n *\n * @param recursively If true, close the parent dropdown as well\n */\n public closeDropdown(recursively = false): void {\n this.isOpened.set(false);\n this.expand.emit(false);\n this.euiDropdownItemsEventSubscriptions.forEach((euiDropdownItemsEventSubscription) => {\n euiDropdownItemsEventSubscription.unsubscribe();\n });\n this.keydownListenerSubscription.unsubscribe();\n if (this.hasDropdownItems) {\n this.activeDescendantKeyManager?.setFirstItemActive();\n }\n this.scrollDispatcherSubscription.unsubscribe();\n this.activeDescendantKeyManagerChangeSubscription.unsubscribe();\n this.scrollSubscription.unsubscribe();\n this.overlayRef?.dispose();\n this.overlayRef = null;\n this.activeDescendantKeyManager = null;\n if (this.trapFocusAutoCapture) {\n this.origin.focus();\n }\n if (recursively && this.parentDropdown) {\n this.parentDropdown.closeDropdown(true);\n }\n\n this.dropdownService.isDropdownOpen.emit(false);\n }\n /**\n * Method fired when the dropdown content is changed.\n *\n */\n public projectContentChanged(): void {\n if (!this.isRightClickEnabled) {\n this.positionStrategy = this.getPositionStrategy();\n this.overlayRef.updatePositionStrategy(this.positionStrategy);\n }\n }\n /**\n * Handles the keyboard navigation on the menu items upon opening the dropdown.\n *\n */\n public createKeyboardHandlerSubscription(): void {\n this.keydownListenerSubscription = fromEvent(document, 'keydown').subscribe((event: KeyboardEvent) => {\n if (this.isOpened()) {\n if (\n event.code === 'Enter' &&\n !this.hasTabNavigation &&\n !this.activeDescendantKeyManager?.activeItem.elementRef?.nativeElement?.disabled\n ) {\n this.activeDescendantKeyManager?.activeItem.focus();\n // eslint-disable-next-line\n this.isExpandOnHover\n ? this.activeDescendantKeyManager?.activeItem.mouseenter()\n : this.activeDescendantKeyManager?.activeItem.click();\n\n if (this.activeDescendantKeyManager?.activeItem.subDropdown) {\n this.activeDescendantKeyManager.activeItem.subDropdown.setParentDropdown(this);\n this.keydownListenerSubscription.unsubscribe();\n } else {\n this.closeDropdown();\n }\n event.preventDefault();\n } else if ((this.subDropdownPosition === 'right' && event.code === 'ArrowLeft') || this.subDropdownPosition === 'left' && event.code === 'ArrowRight') {\n if (this.parentDropdown) {\n this.parentDropdown.createKeyboardHandlerSubscription();\n this.closeDropdown();\n }\n event.preventDefault();\n } else if ((this.subDropdownPosition === 'right' && event.code === 'ArrowRight') || (this.subDropdownPosition === 'left' && event.code === 'ArrowLeft')) {\n if (this.activeDescendantKeyManager?.activeItem.subDropdown) {\n this.activeDescendantKeyManager.activeItem.focus();\n // eslint-disable-next-line\n this.isExpandOnHover\n ? this.activeDescendantKeyManager.activeItem.mouseenter()\n : this.activeDescendantKeyManager.activeItem.click();\n this.activeDescendantKeyManager.activeItem.subDropdown.setParentDropdown(this);\n this.keydownListenerSubscription.unsubscribe();\n }\n event.preventDefault();\n } else if (event.code === 'Tab' && !this.hasTabNavigation) {\n this.closeDropdown(true);\n } else {\n this.activeDescendantKeyManager?.onKeydown(event);\n }\n\n this.cd.markForCheck();\n }\n });\n }\n /**\n * Sets the parent dropdown for a sub-dropdown.\n *\n * @param parentDropdown Parent dropdown component\n */\n public setParentDropdown(parentDropdown: EuiDropdownComponent): void {\n this.parentDropdown = parentDropdown;\n this.position = this.subDropdownPosition;\n\n this.setPosition();\n\n const positionStrategy = this.getPositionStrategy();\n this.overlayRef.updatePositionStrategy(positionStrategy);\n }\n /**\n * Method that returns the dropdown items.\n *\n * @type {boolean}\n */\n private get hasDropdownItems(): boolean {\n return this.euiDropdownItems?.length > 0;\n }\n /**\n * Method that returns the strategy for the overlay position.\n *\n * @type {FlexibleConnectedPositionStrategy}\n */\n private getPositionStrategy(): FlexibleConnectedPositionStrategy {\n return this.overlay\n .position()\n .flexibleConnectedTo(this.origin as FlexibleConnectedPositionStrategyOrigin)\n .withPositions([\n new ConnectionPositionPair(\n { originX: this.originX, originY: this.originY },\n { overlayX: this.overlayX, overlayY: this.overlayY },\n ),\n ])\n .withFlexibleDimensions(false)\n .withLockedPosition(true);\n }\n /**\n * Method that returns the strategy for the contextual menu position.\n *\n * @type {GlobalPositionStrategy}\n */\n private getContextualMenuPositionStrategy(): GlobalPositionStrategy {\n if(isPlatformServer(this.platformId)) {\n throw new Error('getContextualMenuPositionStrategy is not supported on the server');\n }\n const panelHeight = this.overlayRef?.overlayElement.clientHeight || 0;\n const scrollX = window.scrollX || window.pageXOffset;\n const scrollY = window.scrollY || window.pageYOffset;\n const newX = this.mousePositionX + (this.initialScrollX - scrollX);\n const newY = this.mousePositionY + (this.initialScrollY - scrollY);\n const menuBottomPosition = newY + panelHeight;\n const isMenuBelowWindowBottom = menuBottomPosition > window.innerHeight;\n\n const positionStrategy = this.overlay\n .position()\n .global()\n .left(newX + 'px');\n\n if (isMenuBelowWindowBottom) {\n positionStrategy.bottom(window.innerHeight - newY + 'px');\n } else {\n positionStrategy.top(newY + 'px');\n }\n\n return positionStrategy;\n }\n /**\n * Method that checks if the dropdown is visible.\n *\n * @param origin Origin of the dropdown position\n * @param scrollableParent Scrollable parent element\n * @type {boolean}\n */\n private isVisible(origin: HTMLElement, scrollableParent: HTMLElement): boolean {\n const originY = origin.getBoundingClientRect().y;\n const scrollableParentY = Math.abs(scrollableParent.getBoundingClientRect().y);\n const scrollableParentHeight = scrollableParent.getBoundingClientRect().height - 50;\n\n return (\n (originY > 0 && originY < scrollableParentHeight) ||\n (originY - scrollableParentY > 0 && originY < scrollableParentY + scrollableParentHeight)\n );\n }\n /**\n * Method that checks if the trigger is focusable upon closing the dropdown panel.\n *\n * @param origin Origin html element\n * @type {boolean}\n */\n private isTriggerFocusableOnClose(origin: HTMLElement): boolean {\n return origin.matches('button:not([disabled])') || origin.matches('a');\n }\n /**\n * Method that sets the position of the dropdown panel.\n *\n */\n private setPosition(): void {\n if (this.position === 'top') {\n this.originY = 'top';\n this.overlayY = 'bottom';\n\n if (this.isDropDownRightAligned) {\n this.originX = 'end';\n this.overlayX = 'end';\n }\n }\n if (this.position === 'right') {\n this.originX = 'end';\n this.overlayX = 'start';\n this.overlayY = 'center';\n }\n if (this.position === 'bottom') {\n this.originY = 'bottom';\n this.overlayY = 'top';\n\n if (this.isDropDownRightAligned) {\n this.originX = 'end';\n this.overlayX = 'end';\n }\n }\n if (this.position === 'left') {\n this.originX = 'start';\n this.overlayX = 'end';\n this.overlayY = 'center';\n }\n }\n}\n","<div #triggerRef class=\"eui-dropdown__trigger-container\"\n (click)=\"!isRightClickEnabled ? onTriggerClicked($event) : null\"\n (contextmenu)=\"isRightClickEnabled ? onTriggerRightClicked($event) : null\">\n <ng-content></ng-content>\n</div>\n\n<ng-template #templatePortalContent>\n <div\n attr.data-e2e=\"{{ e2eAttr }}\"\n [@openClose]=\"isOpened() ? 'open' : 'closed'\"\n cdkTrapFocus\n [cdkTrapFocusAutoCapture]=\"trapFocusAutoCapture\"\n role=\"dialog\"\n aria-label=\"eUI dropdown panel\"\n class=\"eui-dropdown__panel-container eui-19\"\n [style.max-height]=\"height\"\n [style.width]=\"width\"\n [tabindex]=\"tabIndex\"\n (click)=\"onClick()\"\n (cdkObserveContent)=\"projectContentChanged()\">\n <ng-content select=\"eui-dropdown-content\"></ng-content>\n </div>\n</ng-template>\n","import { Directive, HostBinding } from '@angular/core';\n\n// eslint-disable-next-line @angular-eslint/directive-selector\n@Directive({ selector: 'eui-dropdown-content' })\nexport class EuiDropdownContentDirective {\n @HostBinding('attr.role') role = 'menu';\n @HostBinding('class') c = 'eui-dropdown-content';\n}\n","import { NgModule } from '@angular/core';\n\nimport { EuiDropdownComponent } from './eui-dropdown.component';\nimport { EuiDropdownItemComponent } from './dropdown-item/eui-dropdown-item.component';\nimport { EuiDropdownContentDirective } from './directives/eui-dropdown-content.directive';\nimport { EuiDropdownService } from './eui-dropdown.service';\n\n/**\n * Module for the EuiDropdown component.\n *\n * @deprecated Use {@link EUI_DROPDOWN} directly instead.\n */\n@NgModule({\n imports: [EuiDropdownComponent, EuiDropdownItemComponent, EuiDropdownContentDirective],\n exports: [EuiDropdownComponent, EuiDropdownItemComponent, EuiDropdownContentDirective],\n providers: [EuiDropdownService],\n})\nexport class EuiDropdownModule {}\n\n@NgModule({})\nexport class EuiDropdownContentModule {}\n","import { EuiDropdownComponent } from './eui-dropdown.component';\nimport { EuiDropdownItemComponent } from './dropdown-item/eui-dropdown-item.component';\nimport { EuiDropdownContentDirective } from './directives/eui-dropdown-content.directive';\n\nexport const EUI_DROPDOWN = [\n EuiDropdownComponent,\n EuiDropdownItemComponent,\n EuiDropdownContentDirective,\n] as const;\nexport * from './dropdown-item/eui-dropdown-item.component';\nexport * from './directives/eui-dropdown-content.directive';\nexport * from './eui-dropdown.component';\nexport * from './eui-dropdown.service';\nexport * from './eui-dropdown.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"eui-components-eui-dropdown.mjs","sources":["../../eui-dropdown/animations/open-close.ts","../../eui-dropdown/dropdown-item/eui-dropdown-item.component.ts","../../eui-dropdown/dropdown-item/eui-dropdown-item.component.html","../../eui-dropdown/eui-dropdown.service.ts","../../eui-dropdown/eui-dropdown.component.ts","../../eui-dropdown/eui-dropdown.component.html","../../eui-dropdown/directives/eui-dropdown-content.directive.ts","../../eui-dropdown/eui-dropdown.module.ts","../../eui-dropdown/index.ts","../../eui-dropdown/eui-components-eui-dropdown.ts"],"sourcesContent":["import { animate, state, style, transition, trigger } from '@angular/animations';\n\nexport const openClose = trigger('openClose', [\n state(\n 'open',\n style({\n opacity: 1,\n transform: 'scale(1)',\n }),\n ),\n state(\n 'closed',\n style({\n opacity: 0,\n transform: 'scale(0.9)',\n }),\n ),\n transition('closed => open', [animate('50ms 25ms linear')]),\n]);\n","import {\n Component,\n HostBinding,\n ChangeDetectionStrategy,\n ViewEncapsulation,\n Input,\n ElementRef,\n booleanAttribute,\n inject,\n} from '@angular/core';\nimport { FocusableOption, Highlightable } from '@angular/cdk/a11y';\n\nimport { EuiDropdownComponent } from '../eui-dropdown.component';\nimport { EUI_ICON } from '@eui/components/eui-icon';\n\n@Component({\n selector: 'eui-dropdown-item, [euiDropdownItem]',\n templateUrl: './eui-dropdown-item.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n imports: [\n ...EUI_ICON,\n ],\n})\nexport class EuiDropdownItemComponent implements Highlightable, FocusableOption {\n elementRef = inject(ElementRef);\n\n @Input() subDropdown: EuiDropdownComponent;\n\n @HostBinding('attr.role') role = 'menuitem';\n @HostBinding('class')\n get cssClasses(): string {\n return [\n 'eui-dropdown-item',\n this.isActive ? 'eui-dropdown-item--active' : '',\n this.isFocus ? 'eui-dropdown-item--focused' : '',\n this.subDropdown ? 'eui-dropdown-item--has-subdropdown' : '',\n ]\n .join(' ')\n .trim();\n }\n\n @Input({ transform: booleanAttribute }) isActive: boolean;\n @Input({ transform: booleanAttribute }) isFocus: boolean;\n\n public setActiveStyles(): void {\n this.isFocus = true;\n }\n\n public setInactiveStyles(): void {\n this.isFocus = false;\n }\n\n public focus(): void {\n this.elementRef.nativeElement.focus();\n }\n\n public click(): void {\n this.elementRef.nativeElement.click();\n }\n\n public mouseenter(): void {\n const mouseenterEvent = new Event('mouseenter');\n this.elementRef.nativeElement.dispatchEvent(mouseenterEvent);\n }\n}\n","<div class=\"eui-dropdown-item__container\">\n <div class=\"eui-dropdown-item__content\">\n @if (subDropdown) {\n <div class=\"eui-dropdown-item__content-icon eui-dropdown-item__content-icon--left\">\n <eui-icon-svg icon=\"chevron-back:sharp\" size=\"s\" fillColor=\"neutral\"></eui-icon-svg>\n </div>\n }\n <div class=\"eui-dropdown-item__content-text\">\n <ng-content></ng-content>\n </div>\n @if (subDropdown) {\n <div class=\"eui-dropdown-item__content-icon eui-dropdown-item__content-icon--right\">\n <eui-icon-svg icon=\"chevron-forward:sharp\" size=\"s\" fillColor=\"neutral\"></eui-icon-svg>\n </div>\n }\n </div>\n</div>\n","import { EventEmitter, Injectable } from '@angular/core';\n\n@Injectable()\nexport class EuiDropdownService {\n isDropdownOpen = new EventEmitter<boolean>();\n}\n","import {\n Component,\n ChangeDetectionStrategy,\n HostBinding,\n ViewEncapsulation,\n Input,\n OnInit,\n OnDestroy,\n AfterViewInit,\n ViewContainerRef,\n ViewChild,\n TemplateRef,\n ContentChildren,\n QueryList,\n ElementRef,\n Renderer2,\n booleanAttribute,\n EventEmitter,\n inject,\n PLATFORM_ID,\n Output,\n ChangeDetectorRef,\n signal,\n} from '@angular/core';\nimport { DOCUMENT, isPlatformBrowser, isPlatformServer } from '@angular/common';\nimport {\n CdkScrollable,\n ConnectionPositionPair,\n FlexibleConnectedPositionStrategy,\n FlexibleConnectedPositionStrategyOrigin,\n GlobalPositionStrategy,\n Overlay,\n OverlayRef,\n ScrollDispatcher,\n OverlayModule,\n} from '@angular/cdk/overlay';\nimport { A11yModule } from '@angular/cdk/a11y';\nimport { ScrollingModule } from '@angular/cdk/scrolling';\nimport { ObserversModule } from '@angular/cdk/observers';\nimport { fromEvent, Subject, Subscription, takeUntil } from 'rxjs';\nimport { TemplatePortal } from '@angular/cdk/portal';\nimport { ActiveDescendantKeyManager, Highlightable } from '@angular/cdk/a11y';\n\nimport { openClose } from './animations/open-close';\nimport { EuiDropdownItemComponent } from './dropdown-item/eui-dropdown-item.component';\nimport { EuiDropdownService } from './eui-dropdown.service';\n\n/**\n * @description\n * The eui-dropdown component is composed of a trigger, usually a button, which allows to display the dropdown content specified with the eui-dropdown-content.\n */\n@Component({\n selector: 'eui-dropdown',\n templateUrl: './eui-dropdown.component.html',\n styleUrl: './eui-dropdown.scss',\n animations: [openClose],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n imports: [\n OverlayModule,\n ScrollingModule,\n A11yModule,\n ObserversModule,\n ],\n providers: [EuiDropdownService],\n})\nexport class EuiDropdownComponent implements OnInit, OnDestroy, AfterViewInit {\n /**\n * Sets the `data-e2e` attribute for dropodown panel. Default: `eui-dropdown`.\n *\n * @default 'eui-dropdown'\n */\n @Input() e2eAttr = 'eui-dropdown';\n /**\n * Sets the `tabindex` attribute for a dropdown panel.\n *\n * @default -1\n */\n @Input() tabIndex = -1;\n /**\n * Sets the `width` attribute for the dropdown panel.\n *\n * @default 'auto'\n */\n @Input() width = 'auto';\n /**\n * Sets the `height` attribute for the dropdown panel.\n *\n * @default 'auto'\n */\n @Input() height = 'auto';\n /**\n * Sets the `position` attribute for the dropdown panel.\n *\n * @default 'bottom'\n */\n @Input() position: 'top' | 'right' | 'bottom' | 'left' = 'bottom';\n /**\n * Sets the `subDropdownPosition` attribute for a multi-level dropdown.\n *\n * @default 'right'\n */\n @Input() subDropdownPosition: 'right' | 'left' = 'right';\n /**\n * Sets the `isBlock` attribute in order for the dropdown to take the full width of the parent container.\n *\n * @default false\n */\n @Input({ transform: booleanAttribute }) isBlock = false;\n /**\n * Sets the `isDropDownRightAligned` attribute to align the menu panel on the right of the opening element.\n *\n * @default false\n */\n @Input({ transform: booleanAttribute }) isDropDownRightAligned = false;\n /**\n * Sets the `hasClosedOnClickInside` attribute which controls the auto-closing of the menu when clicking inside.\n *\n * @default true\n */\n @Input({ transform: booleanAttribute }) hasClosedOnClickInside = true;\n /**\n * Sets the `isLabelUpdatedFromSelectedItem` attribute which updates the label of the trigger with the selected item.\n *\n * @default false\n */\n @Input({ transform: booleanAttribute }) isLabelUpdatedFromSelectedItem = false;\n /**\n * Sets the `isExpandOnHover` attribute which opens the sub dropdown upon hover.\n *\n * @default false\n */\n @Input({ transform: booleanAttribute }) isExpandOnHover = false;\n /**\n * Sets the `hasTabNavigation` attribute to tab within the dropdown content when there is rich content.\n *\n * @default false\n */\n @Input({ transform: booleanAttribute }) hasTabNavigation = false;\n /**\n * Sets the `isRightClickEnabled` attribute to trigger the menu using the right mouse click.\n *\n * @default false\n */\n @Input({ transform: booleanAttribute }) isRightClickEnabled = false;\n @Input({ transform: booleanAttribute }) euiDisabled = false;\n /**\n * Event emitted when the menu expands.\n */\n @Output() expand: EventEmitter<boolean> = new EventEmitter();\n\n @ViewChild('templatePortalContent') templatePortalContent: TemplateRef<unknown>;\n @ViewChild('triggerRef') triggerRef: ElementRef<HTMLElement>;\n @ContentChildren(EuiDropdownItemComponent, { descendants: true }) euiDropdownItems: QueryList<Highlightable & EuiDropdownItemComponent>;\n\n public trapFocusAutoCapture = true;\n public parentDropdown: EuiDropdownComponent;\n\n protected isOpened = signal(false);\n private mousePositionX = 0;\n private mousePositionY = 0;\n private initialScrollX = 0;\n private initialScrollY = 0;\n private originX: 'start' | 'end' | 'center' = 'start';\n private originY: 'top' | 'bottom' | 'center' = 'bottom';\n private overlayX: 'start' | 'end' | 'center' = 'start';\n private overlayY: 'top' | 'bottom' | 'center' = 'top';\n private templatePortal: TemplatePortal;\n private overlayRef: OverlayRef;\n private destroy$ = new Subject<boolean>();\n private scrollDispatcherSubscription = new Subscription();\n private keydownListenerSubscription = new Subscription();\n private euiDropdownItemsEventSubscriptions: Subscription[] = [];\n private activeDescendantKeyManagerChangeSubscription = new Subscription();\n private activeDescendantKeyManager: ActiveDescendantKeyManager<EuiDropdownItemComponent>;\n private origin: HTMLElement;\n private positionStrategy: FlexibleConnectedPositionStrategy;\n private scrollSubscription = new Subscription();\n private overlay = inject(Overlay);\n private viewContainerRef = inject(ViewContainerRef);\n private scrollDispatcher = inject(ScrollDispatcher);\n private dropdownService = inject(EuiDropdownService);\n private cd = inject(ChangeDetectorRef);\n protected _renderer = inject(Renderer2);\n protected platformId = inject(PLATFORM_ID);\n private document = inject<Document>(DOCUMENT);\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 'eui-dropdown',\n this.isBlock ? 'eui-dropdown--block' : '',\n this.isRightClickEnabled ? 'eui-dropdown--contextual-menu' : '',\n ].join(' ').trim();\n }\n\n ngOnInit(): void {\n // Currently, the `cdkTrapFocusAutoCapture` is only checked once on init.\n if (this.hasDropdownItems) {\n this.trapFocusAutoCapture = false;\n } else {\n this.trapFocusAutoCapture = true;\n }\n\n if (this.hasTabNavigation) {\n this.trapFocusAutoCapture = true;\n this.hasClosedOnClickInside = false;\n }\n\n if (this.isRightClickEnabled) {\n this.hasTabNavigation = false; // UX wise, contextual menu contains only menu items accessible through arrow keys nav\n }\n\n this.setPosition();\n }\n\n ngAfterViewInit(): void {\n this.templatePortal = new TemplatePortal(this.templatePortalContent, this.viewContainerRef);\n\n if(this.triggerRef && this.triggerRef.nativeElement.firstElementChild) {\n this._renderer?.setAttribute(this.triggerRef.nativeElement.firstElementChild, 'aria-haspopup', 'true');\n }\n }\n\n ngOnDestroy(): void {\n this.destroy$.next(true);\n this.destroy$.unsubscribe();\n this.euiDropdownItemsEventSubscriptions.forEach((euiDropdownItemsEventSubscription) => {\n euiDropdownItemsEventSubscription.unsubscribe();\n });\n this.keydownListenerSubscription.unsubscribe();\n this.scrollDispatcherSubscription.unsubscribe();\n this.activeDescendantKeyManagerChangeSubscription.unsubscribe();\n this.overlayRef?.dispose();\n this.overlayRef = null;\n this.activeDescendantKeyManager = null;\n this.scrollSubscription.unsubscribe();\n }\n\n /**\n * Whether the eui-dropdown is open.\n *\n * @deprecated This property will be removed in the future. Use `isOpened` signal instead.\n *\n * @usageNotes\n * ```html\n * <eui-dropdown #dropdown>\n * <my-component *ngIf=\"dropdown.isOpen\"></my-component>\n * </eui-dropdown>\n * ```\n * @returns A boolean with value `true` when open, otherwise `false`.\n */\n get isOpen(): boolean {\n return this.isOpened();\n }\n /**\n * Method fired upon clicking the dropdown trigger.\n *\n * @param e Event triggered when the dropdown trigger is clicked.\n */\n public onTriggerClicked(e: Event): void {\n if (\n !(e.target as HTMLElement).querySelector('.disabled') &&\n !(e.target as HTMLElement).querySelector(':disabled') &&\n !this.isOpened()\n ) {\n if (this.isBlock) {\n this.width = this.triggerRef.nativeElement.offsetWidth + 'px';\n }\n\n this.openDropdown(e.target as HTMLElement);\n this.expand.emit(true);\n e.stopPropagation();\n }\n }\n /**\n * Method fired upon right clicking the dropdown trigger in case of context menu.\n *\n * @param e Event triggered when the dropdown trigger is right clicked.\n */\n public onTriggerRightClicked(e: Event): void {\n if (\n !(e.target as HTMLElement).querySelector('.disabled') &&\n !(e.target as HTMLElement).querySelector(':disabled') &&\n !this.isOpened()\n ) {\n if (this.isBlock) {\n this.width = this.triggerRef.nativeElement.offsetWidth + 'px';\n }\n\n this.mousePositionX = (e as PointerEvent).clientX;\n this.mousePositionY = (e as PointerEvent).clientY;\n if(isPlatformBrowser(this.platformId)) {\n this.initialScrollX = window.pageXOffset;\n this.initialScrollY = window.pageYOffset;\n }\n\n this.openDropdown(e.target as HTMLElement);\n e.preventDefault();\n e.stopPropagation();\n }\n }\n /**\n * Method fired upon clicking the dropdown content.\n *\n */\n public onClick(): void {\n if (\n this.hasClosedOnClickInside &&\n !this.activeDescendantKeyManager?.activeItem.subDropdown &&\n !this.activeDescendantKeyManager?.activeItem.elementRef?.nativeElement?.disabled\n ) {\n this.closeDropdown(true);\n }\n }\n\n /**\n * Method fired when the dropdown is opened.\n *\n * @param origin Origin of the dropdown position\n * @param position Position of the dropdown\n * @param position.x X coordinate of the dropdown position\n * @param position.y Y coordinate of the dropdown position\n */\n public openDropdown(origin: HTMLElement, position?: { x: number, y: number }): void {\n this.origin = origin;\n\n if (position) {\n this.mousePositionX = position.x;\n this.mousePositionY = position.y;\n if(isPlatformBrowser(this.platformId)) {\n this.initialScrollX = window.pageXOffset;\n this.initialScrollY = window.pageYOffset;\n }\n }\n\n if (this.isRightClickEnabled) {\n this.scrollSubscription = fromEvent(window, 'scroll').subscribe((event: Event) => {\n this.overlayRef?.updatePositionStrategy(this.getContextualMenuPositionStrategy());\n });\n }\n\n if (!this.isTriggerFocusableOnClose(origin)) {\n this.origin = origin.closest('button:not([disabled])') || (this.triggerRef.nativeElement.firstChild as HTMLElement);\n\n if (!this.origin) {\n this.origin = origin.closest('a');\n }\n\n if (!this.origin) {\n this.origin = origin;\n }\n }\n\n if (!this.isOpened()) {\n this.scrollDispatcherSubscription = this.scrollDispatcher\n .ancestorScrolled(this.origin)\n .pipe(takeUntil(this.destroy$))\n .subscribe((event: CdkScrollable) => {\n if (!this.isVisible(this.origin, event ? event.getElementRef().nativeElement : this.document.querySelector('body'))) {\n this.closeDropdown();\n }\n });\n\n const positionStrategy = this.isRightClickEnabled ? this.getContextualMenuPositionStrategy() : this.getPositionStrategy();\n const scrollStrategy = this.overlay.scrollStrategies.reposition({ scrollThrottle: 10 });\n\n this.overlayRef = this.overlay.create({\n hasBackdrop: false,\n backdropClass: 'eui-dropdown__backdrop',\n panelClass: ['eui-dropdown__panel', this.subDropdownPosition === 'right' ? 'eui-dropdown--subdropdown-position-right' : 'eui-dropdown--subdropdown-position-left'],\n positionStrategy,\n scrollStrategy,\n disposeOnNavigation: true,\n });\n this.overlayRef.attach(this.templatePortal);\n\n if (this.isRightClickEnabled) {\n this.overlayRef?.updatePositionStrategy(this.getContextualMenuPositionStrategy());\n }\n\n this.overlayRef\n .outsidePointerEvents()\n .pipe(takeUntil(this.destroy$))\n .subscribe(() => {\n this.closeDropdown();\n });\n this.overlayRef\n .backdropClick()\n .pipe(takeUntil(this.destroy$))\n .subscribe(() => {\n this.closeDropdown();\n });\n this.overlayRef\n .keydownEvents()\n .pipe(takeUntil(this.destroy$))\n .subscribe((keyboardEvent) => {\n if (keyboardEvent.key?.toLowerCase() === 'escape') {\n this.closeDropdown();\n }\n });\n\n if (this.hasDropdownItems) {\n this.euiDropdownItems.toArray().forEach((euiDropdownItem, i) => {\n if (this.isExpandOnHover) {\n this.euiDropdownItemsEventSubscriptions[i] = fromEvent(\n euiDropdownItem.elementRef.nativeElement,\n 'mouseenter',\n ).pipe(takeUntil(this.destroy$)).subscribe((e: MouseEvent) => {\n this.activeDescendantKeyManager.setActiveItem(euiDropdownItem);\n if (this.activeDescendantKeyManager.activeItem?.subDropdown) {\n this.activeDescendantKeyManager.activeItem?.subDropdown.setParentDropdown(this);\n this.activeDescendantKeyManager.activeItem?.subDropdown.overlayRef.detachBackdrop();\n this.keydownListenerSubscription.unsubscribe();\n }\n\n const triggerOutsidePointerEvents = (subDropdown: EuiDropdownComponent): void => {\n subDropdown?.overlayRef?._outsidePointerEvents.next(e);\n\n if (subDropdown?.hasDropdownItems) {\n subDropdown.euiDropdownItems.toArray().forEach((s) => {\n triggerOutsidePointerEvents(s.subDropdown);\n });\n }\n };\n\n this.euiDropdownItems\n .filter((item) => !item.isFocus)\n .forEach((euiDropdownItemHavingSubDropdown) => {\n triggerOutsidePointerEvents(euiDropdownItemHavingSubDropdown.subDropdown);\n });\n });\n } else {\n this.euiDropdownItemsEventSubscriptions[i] = fromEvent(\n euiDropdownItem.elementRef.nativeElement,\n 'click',\n ).pipe(takeUntil(this.destroy$)).subscribe(() => {\n this.activeDescendantKeyManager.setActiveItem(euiDropdownItem);\n if (this.activeDescendantKeyManager.activeItem?.subDropdown) {\n this.activeDescendantKeyManager.activeItem?.subDropdown.setParentDropdown(this);\n this.activeDescendantKeyManager.activeItem?.subDropdown.overlayRef.detachBackdrop();\n this.keydownListenerSubscription.unsubscribe();\n }\n\n const labelElement = this.triggerRef.nativeElement.querySelector('button .eui-label');\n if (this.isLabelUpdatedFromSelectedItem && labelElement) {\n (labelElement as HTMLElement).innerText = euiDropdownItem.elementRef.nativeElement.innerText;\n }\n });\n }\n });\n\n this.activeDescendantKeyManager = new ActiveDescendantKeyManager(this.euiDropdownItems)\n .withHomeAndEnd(true)\n .withVerticalOrientation(true)\n .withWrap();\n this.activeDescendantKeyManager.setFirstItemActive();\n }\n\n this.createKeyboardHandlerSubscription();\n this.isOpened.set(true);\n this.dropdownService.isDropdownOpen.emit(true);\n }\n }\n\n /**\n * Close a dropdown\n *\n * @param recursively If true, close the parent dropdown as well\n */\n public closeDropdown(recursively = false): void {\n this.isOpened.set(false);\n this.expand.emit(false);\n this.euiDropdownItemsEventSubscriptions.forEach((euiDropdownItemsEventSubscription) => {\n euiDropdownItemsEventSubscription.unsubscribe();\n });\n this.keydownListenerSubscription.unsubscribe();\n if (this.hasDropdownItems) {\n this.activeDescendantKeyManager?.setFirstItemActive();\n }\n this.scrollDispatcherSubscription.unsubscribe();\n this.activeDescendantKeyManagerChangeSubscription.unsubscribe();\n this.scrollSubscription.unsubscribe();\n this.overlayRef?.dispose();\n this.overlayRef = null;\n this.activeDescendantKeyManager = null;\n if (this.trapFocusAutoCapture) {\n this.origin.focus();\n }\n if (recursively && this.parentDropdown) {\n this.parentDropdown.closeDropdown(true);\n }\n\n this.dropdownService.isDropdownOpen.emit(false);\n }\n /**\n * Method fired when the dropdown content is changed.\n *\n */\n public projectContentChanged(): void {\n if (!this.isRightClickEnabled) {\n this.positionStrategy = this.getPositionStrategy();\n this.overlayRef.updatePositionStrategy(this.positionStrategy);\n }\n }\n /**\n * Handles the keyboard navigation on the menu items upon opening the dropdown.\n *\n */\n public createKeyboardHandlerSubscription(): void {\n this.keydownListenerSubscription = fromEvent(document, 'keydown').subscribe((event: KeyboardEvent) => {\n if (this.isOpened()) {\n if (\n event.code === 'Enter' &&\n !this.hasTabNavigation &&\n !this.activeDescendantKeyManager?.activeItem.elementRef?.nativeElement?.disabled\n ) {\n this.activeDescendantKeyManager?.activeItem.focus();\n // eslint-disable-next-line\n this.isExpandOnHover\n ? this.activeDescendantKeyManager?.activeItem.mouseenter()\n : this.activeDescendantKeyManager?.activeItem.click();\n\n if (this.activeDescendantKeyManager?.activeItem.subDropdown) {\n this.activeDescendantKeyManager.activeItem.subDropdown.setParentDropdown(this);\n this.keydownListenerSubscription.unsubscribe();\n } else {\n this.closeDropdown();\n }\n event.preventDefault();\n } else if ((this.subDropdownPosition === 'right' && event.code === 'ArrowLeft') || this.subDropdownPosition === 'left' && event.code === 'ArrowRight') {\n if (this.parentDropdown) {\n this.parentDropdown.createKeyboardHandlerSubscription();\n this.closeDropdown();\n }\n event.preventDefault();\n } else if ((this.subDropdownPosition === 'right' && event.code === 'ArrowRight') || (this.subDropdownPosition === 'left' && event.code === 'ArrowLeft')) {\n if (this.activeDescendantKeyManager?.activeItem.subDropdown) {\n this.activeDescendantKeyManager.activeItem.focus();\n // eslint-disable-next-line\n this.isExpandOnHover\n ? this.activeDescendantKeyManager.activeItem.mouseenter()\n : this.activeDescendantKeyManager.activeItem.click();\n this.activeDescendantKeyManager.activeItem.subDropdown.setParentDropdown(this);\n this.keydownListenerSubscription.unsubscribe();\n }\n event.preventDefault();\n } else if (event.code === 'Tab' && !this.hasTabNavigation) {\n this.closeDropdown(true);\n } else {\n this.activeDescendantKeyManager?.onKeydown(event);\n }\n\n this.cd.markForCheck();\n }\n });\n }\n /**\n * Sets the parent dropdown for a sub-dropdown.\n *\n * @param parentDropdown Parent dropdown component\n */\n public setParentDropdown(parentDropdown: EuiDropdownComponent): void {\n this.parentDropdown = parentDropdown;\n this.position = this.subDropdownPosition;\n\n this.setPosition();\n\n const positionStrategy = this.getPositionStrategy();\n this.overlayRef.updatePositionStrategy(positionStrategy);\n }\n /**\n * Method that returns the dropdown items.\n *\n * @type {boolean}\n */\n private get hasDropdownItems(): boolean {\n return this.euiDropdownItems?.length > 0;\n }\n /**\n * Method that returns the strategy for the overlay position.\n *\n * @type {FlexibleConnectedPositionStrategy}\n */\n private getPositionStrategy(): FlexibleConnectedPositionStrategy {\n return this.overlay\n .position()\n .flexibleConnectedTo(this.origin as FlexibleConnectedPositionStrategyOrigin)\n .withPositions([\n new ConnectionPositionPair(\n { originX: this.originX, originY: this.originY },\n { overlayX: this.overlayX, overlayY: this.overlayY },\n ),\n ])\n .withFlexibleDimensions(false)\n .withLockedPosition(true);\n }\n /**\n * Method that returns the strategy for the contextual menu position.\n *\n * @type {GlobalPositionStrategy}\n */\n private getContextualMenuPositionStrategy(): GlobalPositionStrategy {\n if(isPlatformServer(this.platformId)) {\n throw new Error('getContextualMenuPositionStrategy is not supported on the server');\n }\n const panelHeight = this.overlayRef?.overlayElement.clientHeight || 0;\n const scrollX = window.scrollX || window.pageXOffset;\n const scrollY = window.scrollY || window.pageYOffset;\n const newX = this.mousePositionX + (this.initialScrollX - scrollX);\n const newY = this.mousePositionY + (this.initialScrollY - scrollY);\n const menuBottomPosition = newY + panelHeight;\n const isMenuBelowWindowBottom = menuBottomPosition > window.innerHeight;\n\n const positionStrategy = this.overlay\n .position()\n .global()\n .left(newX + 'px');\n\n if (isMenuBelowWindowBottom) {\n positionStrategy.bottom(window.innerHeight - newY + 'px');\n } else {\n positionStrategy.top(newY + 'px');\n }\n\n return positionStrategy;\n }\n /**\n * Method that checks if the dropdown is visible.\n *\n * @param origin Origin of the dropdown position\n * @param scrollableParent Scrollable parent element\n * @type {boolean}\n */\n private isVisible(origin: HTMLElement, scrollableParent: HTMLElement): boolean {\n const originY = origin.getBoundingClientRect().y;\n const scrollableParentY = Math.abs(scrollableParent.getBoundingClientRect().y);\n const scrollableParentHeight = scrollableParent.getBoundingClientRect().height - 50;\n\n return (\n (originY > 0 && originY < scrollableParentHeight) ||\n (originY - scrollableParentY > 0 && originY < scrollableParentY + scrollableParentHeight)\n );\n }\n /**\n * Method that checks if the trigger is focusable upon closing the dropdown panel.\n *\n * @param origin Origin html element\n * @type {boolean}\n */\n private isTriggerFocusableOnClose(origin: HTMLElement): boolean {\n return origin.matches('button:not([disabled])') || origin.matches('a');\n }\n /**\n * Method that sets the position of the dropdown panel.\n *\n */\n private setPosition(): void {\n if (this.position === 'top') {\n this.originY = 'top';\n this.overlayY = 'bottom';\n\n if (this.isDropDownRightAligned) {\n this.originX = 'end';\n this.overlayX = 'end';\n }\n }\n if (this.position === 'right') {\n this.originX = 'end';\n this.overlayX = 'start';\n this.overlayY = 'center';\n }\n if (this.position === 'bottom') {\n this.originY = 'bottom';\n this.overlayY = 'top';\n\n if (this.isDropDownRightAligned) {\n this.originX = 'end';\n this.overlayX = 'end';\n }\n }\n if (this.position === 'left') {\n this.originX = 'start';\n this.overlayX = 'end';\n this.overlayY = 'center';\n }\n }\n}\n","<div #triggerRef class=\"eui-dropdown__trigger-container\"\n (click)=\"!isRightClickEnabled ? onTriggerClicked($event) : null\"\n (contextmenu)=\"isRightClickEnabled ? onTriggerRightClicked($event) : null\">\n <ng-content></ng-content>\n</div>\n\n<ng-template #templatePortalContent>\n <div\n attr.data-e2e=\"{{ e2eAttr }}\"\n [@openClose]=\"isOpened() ? 'open' : 'closed'\"\n cdkTrapFocus\n [cdkTrapFocusAutoCapture]=\"trapFocusAutoCapture\"\n role=\"dialog\"\n aria-label=\"eUI dropdown panel\"\n class=\"eui-dropdown__panel-container eui-19\"\n [style.max-height]=\"height\"\n [style.width]=\"width\"\n [tabindex]=\"tabIndex\"\n (click)=\"onClick()\"\n (cdkObserveContent)=\"projectContentChanged()\">\n <ng-content select=\"eui-dropdown-content\"></ng-content>\n </div>\n</ng-template>\n","import { Directive, HostBinding } from '@angular/core';\n\n// eslint-disable-next-line @angular-eslint/directive-selector\n@Directive({ selector: 'eui-dropdown-content' })\nexport class EuiDropdownContentDirective {\n @HostBinding('attr.role') role = 'menu';\n @HostBinding('class') c = 'eui-dropdown-content';\n}\n","import { NgModule } from '@angular/core';\n\nimport { EuiDropdownComponent } from './eui-dropdown.component';\nimport { EuiDropdownItemComponent } from './dropdown-item/eui-dropdown-item.component';\nimport { EuiDropdownContentDirective } from './directives/eui-dropdown-content.directive';\nimport { EuiDropdownService } from './eui-dropdown.service';\n\n/**\n * Module for the EuiDropdown component.\n *\n * @deprecated Use {@link EUI_DROPDOWN} directly instead.\n */\n@NgModule({\n imports: [EuiDropdownComponent, EuiDropdownItemComponent, EuiDropdownContentDirective],\n exports: [EuiDropdownComponent, EuiDropdownItemComponent, EuiDropdownContentDirective],\n providers: [EuiDropdownService],\n})\nexport class EuiDropdownModule {}\n\n@NgModule({})\nexport class EuiDropdownContentModule {}\n","import { EuiDropdownComponent } from './eui-dropdown.component';\nimport { EuiDropdownItemComponent } from './dropdown-item/eui-dropdown-item.component';\nimport { EuiDropdownContentDirective } from './directives/eui-dropdown-content.directive';\n\nexport const EUI_DROPDOWN = [\n EuiDropdownComponent,\n EuiDropdownItemComponent,\n EuiDropdownContentDirective,\n] as const;\nexport * from './dropdown-item/eui-dropdown-item.component';\nexport * from './directives/eui-dropdown-content.directive';\nexport * from './eui-dropdown.component';\nexport * from './eui-dropdown.service';\nexport * from './eui-dropdown.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"eui-components-eui-growl.mjs","sources":["../../eui-growl/eui-growl.component.ts","../../eui-growl/eui-growl.component.html","../../eui-growl/eui-growl.module.ts","../../eui-growl/index.ts","../../eui-growl/eui-components-eui-growl.ts"],"sourcesContent":["import {\n booleanAttribute,\n Component,\n DoCheck,\n ElementRef,\n EventEmitter,\n HostBinding,\n HostListener,\n Input,\n IterableDiffer,\n IterableDiffers,\n OnDestroy,\n Output,\n ViewEncapsulation,\n inject,\n} from '@angular/core';\nimport { EuiGrowlMessage } from '@eui/core';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { EUI_ICON } from '@eui/components/eui-icon';\nimport { EUI_ICON_BUTTON } from '@eui/components/eui-icon-button';\nimport { EUI_ICON_STATE } from '@eui/components/eui-icon-state';\nimport { NgClass } from '@angular/common';\n\n@Component({\n selector: 'eui-growl',\n templateUrl: './eui-growl.component.html',\n styleUrls: ['./styles/_index.scss'],\n encapsulation: ViewEncapsulation.None,\n imports: [\n NgClass,\n TranslateModule,\n ...EUI_ICON,\n ...EUI_ICON_BUTTON,\n ...EUI_ICON_STATE,\n ],\n})\nexport class EuiGrowlComponent implements DoCheck, OnDestroy {\n el = inject(ElementRef);\n titleId = 'msg-title';\n contentId = 'msg-detail';\n\n @HostBinding('class')\n get cssClasses(): string {\n return ['eui-growl', `eui-growl--${this.position}`].join(' ').trim();\n }\n @HostBinding('attr.data-e2e') @Input() e2eAttr = 'eui-growl';\n @HostBinding('attr.role')\n protected role = 'region';\n @HostBinding('attr.aria-live')\n protected ariaLive= 'polite';\n @HostBinding('attr.aria-labelledby')\n protected ariaLabelledBy = this.titleId;\n @HostBinding('attr.aria-describedby')\n protected ariaDescribedBy= this.contentId;\n\n @Input({ transform: booleanAttribute }) sticky = false;\n\n @Input() life = 3000;\n @Input() value: EuiGrowlMessage[] = [];\n @Input() closeAllSticky = false;\n\n @Input() position: string;\n\n @Output() growlClick: EventEmitter<void> = new EventEmitter<void>();\n\n private differ: IterableDiffer<EuiGrowlMessage>;\n\n constructor() {\n const differs = inject(IterableDiffers);\n\n this.differ = differs.find([]).create(undefined);\n }\n\n ngDoCheck(): void {\n const changes = this.differ.diff(this.value);\n\n if (changes) {\n // clear timeout in the queue to avoid memory leak\n changes.forEachRemovedItem(({ item }) => clearTimeout(item?.timeout));\n // for newly added items create timeout if they are not sticky\n changes.forEachAddedItem(({ item }) => this.createRemovalTimeout(item));\n }\n }\n\n /**\n * @param msg The text message to appear in the container\n */\n remove(msg: EuiGrowlMessage): void {\n this.value.splice(this.findMessageIndex(msg), 1);\n }\n\n /**\n * Removes all growl messages from the stack\n */\n removeAll(): void {\n if (this.value?.length) {\n this.value.splice(0, this.value.length);\n }\n }\n\n ngOnDestroy(): void {\n if (!this.sticky) {\n // make sure to clear any leftover async Timeout for messages\n this.value.forEach((v) => clearTimeout(v?.timeout));\n }\n }\n\n @HostListener('click')\n onClick(): void {\n this.growlClick.emit();\n }\n\n /**\n * check whether sticky growls are greater than two\n */\n isGrowlMoreThanTwo(): boolean {\n return this.value.filter((m) => m.sticky).length > 2;\n }\n\n /**\n * Removes all growl messages from the stack\n *\n * @param value\n */\n private createRemovalTimeout(value: EuiGrowlMessage): void {\n // if message it's NOT sticky and there's not any async running timeout\n if (!value.sticky && !value.timeout) {\n // set Timeout callback for each message based on the given life value\n value.timeout = setTimeout(() => this.remove(value), value.life || this.life) as unknown as number;\n }\n }\n\n /**\n * Finds UxMessage index of the array otherwise returns -1\n *\n * @param msg UxMessage\n */\n private findMessageIndex(msg: EuiGrowlMessage): number {\n return this.value?.length ? this.value.findIndex((value) => value === msg) : -1;\n }\n}\n","@for (msg of value; track msg) {\n<div\n class=\"eui-growl-item-container eui-u-anim eui-u-anim--fast\"\n [ngClass]=\"{\n 'eui-growl-item-container--info eui--info': msg.severity === 'info',\n 'eui-growl-item-container--warning eui--warning': msg.severity === 'warning',\n 'eui-growl-item-container--danger eui--danger': msg.severity === 'danger',\n 'eui-growl-item-container--success eui--success': msg.severity === 'success',\n 'eui-growl-item-container--filled': msg.filled,\n 'eui-growl--sticky': sticky,\n }\"\n [class.eui-u-anim--slideInUp]=\"position === 'bottom-left' || position === 'bottom-center' || position === 'bottom-right'\"\n [class.eui-u-anim--slideInDown]=\"position === 'top-left' || position === 'top-center' || position === 'top-right'\">\n\n <div class=\"eui-growl-item\">\n <div class=\"eui-growl-item-summary-wrapper\">\n <eui-icon-state [euiVariant]=\"msg.severity\" class=\"eui-growl-item-icon\"/>\n <span [id]=\"titleId\" class=\"eui-growl-item-title\">{{ msg.summary }}</span>\n </div>\n <div [id]=\"contentId\" class=\"eui-growl-item-content\" [innerHTML]=\"msg.detail\"></div>\n\n <eui-icon-button\n (buttonClick)=\"remove(msg)\"\n icon=\"close:outline\"\n fillColor=\"neutral-light\"\n euiRounded\n ariaLabel=\"Close growl icon\"\n class=\"eui-growl-item-close\">\n </eui-icon-button>\n </div>\n\n</div>\n}\n@if (closeAllSticky && isGrowlMoreThanTwo()) {\n<div class=\"eui-growl-item-container eui-u-anim eui-u-anim--fast eui-growl-item-container--secondary\">\n <div class=\"eui-growl-item\">\n <div class=\"eui-growl-item-summary-wrapper\">\n <eui-icon-svg icon=\"checkmark-done:sharp\"/>\n <span class=\"eui-growl-item-title\">{{ 'eui.growl.dismiss-all' | translate }}</span>\n </div>\n <eui-icon-button (buttonClick)=\"removeAll()\"\n icon=\"close:outline\"\n fillColor=\"neutral-light\"\n euiRounded\n ariaLabel=\"Close growl icon\"\n class=\"eui-growl-item-close\"/>\n </div>\n</div>\n}\n","import { NgModule } from '@angular/core';\nimport { EuiGrowlComponent } from './eui-growl.component';\n\n/**\n * Module for the EuiGrowl component.\n *\n * @deprecated Use {@link EUI_GROWL} directly instead.\n */\n@NgModule({\n imports: [EuiGrowlComponent],\n exports: [EuiGrowlComponent],\n})\nexport class EuiGrowlModule {}\n","import { EuiGrowlComponent } from './eui-growl.component';\n\nexport * from './eui-growl.component';\nexport * from './eui-growl.module';\n\nexport const EUI_GROWL = [ EuiGrowlComponent ] as const;","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;MAoCa,iBAAiB,CAAA;AAK1B,IAAA,IACI,UAAU,GAAA;AACV,QAAA,OAAO,CAAC,WAAW,EAAE,CAAc,WAAA,EAAA,IAAI,CAAC,QAAQ,CAAA,CAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE;;AAwBxE,IAAA,WAAA,GAAA;AA9BA,QAAA,IAAA,CAAA,EAAE,GAAG,MAAM,CAAC,UAAU,CAAC;QACvB,IAAO,CAAA,OAAA,GAAG,WAAW;QACrB,IAAS,CAAA,SAAA,GAAG,YAAY;QAMe,IAAO,CAAA,OAAA,GAAG,WAAW;QAElD,IAAI,CAAA,IAAA,GAAG,QAAQ;QAEf,IAAQ,CAAA,QAAA,GAAE,QAAQ;AAElB,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,CAAC,OAAO;AAE7B,QAAA,IAAA,CAAA,eAAe,GAAE,IAAI,CAAC,SAAS;QAED,IAAM,CAAA,MAAA,GAAG,KAAK;QAE7C,IAAI,CAAA,IAAA,GAAG,IAAI;QACX,IAAK,CAAA,KAAA,GAAsB,EAAE;QAC7B,IAAc,CAAA,cAAA,GAAG,KAAK;AAIrB,QAAA,IAAA,CAAA,UAAU,GAAuB,IAAI,YAAY,EAAQ;AAK/D,QAAA,MAAM,OAAO,GAAG,MAAM,CAAC,eAAe,CAAC;AAEvC,QAAA,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC;;IAGpD,SAAS,GAAA;AACL,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;QAE5C,IAAI,OAAO,EAAE;;AAET,YAAA,OAAO,CAAC,kBAAkB,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;;AAErE,YAAA,OAAO,CAAC,gBAAgB,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;;;AAI/E;;AAEG;AACH,IAAA,MAAM,CAAC,GAAoB,EAAA;AACvB,QAAA,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;;AAGpD;;AAEG;IACH,SAAS,GAAA;AACL,QAAA,IAAI,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE;AACpB,YAAA,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;;;IAI/C,WAAW,GAAA;AACP,QAAA,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;;AAEd,YAAA,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;;;IAK3D,OAAO,GAAA;AACH,QAAA,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE;;AAG1B;;AAEG;IACH,kBAAkB,GAAA;AACd,QAAA,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC;;AAGxD;;;;AAIG;AACK,IAAA,oBAAoB,CAAC,KAAsB,EAAA;;QAE/C,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE;;YAEjC,KAAK,CAAC,OAAO,GAAG,UAAU,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAsB;;;AAI1G;;;;AAIG;AACK,IAAA,gBAAgB,CAAC,GAAoB,EAAA;AACzC,QAAA,OAAO,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,KAAK,KAAK,KAAK,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC;;8GAtG1E,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAjB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,iBAAiB,wGAmBN,gBAAgB,CAAA,EAAA,IAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,EAAA,UAAA,EAAA,YAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,WAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,cAAA,EAAA,WAAA,EAAA,WAAA,EAAA,gBAAA,EAAA,eAAA,EAAA,sBAAA,EAAA,qBAAA,EAAA,uBAAA,EAAA,sBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECvDxC,0qEAiDA,EDpBQ,MAAA,EAAA,CAAA,guMAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,OAAO,mFACP,eAAe,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,aAAA,EAAA,IAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,mBAAA,EAAA,QAAA,EAAA,+CAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,WAAA,EAAA,KAAA,EAAA,MAAA,EAAA,OAAA,EAAA,SAAA,EAAA,WAAA,EAAA,YAAA,EAAA,YAAA,EAAA,YAAA,EAAA,WAAA,EAAA,WAAA,EAAA,aAAA,EAAA,UAAA,EAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,sBAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,SAAA,EAAA,WAAA,EAAA,MAAA,EAAA,WAAA,EAAA,UAAA,EAAA,cAAA,EAAA,oBAAA,EAAA,iBAAA,EAAA,YAAA,EAAA,aAAA,CAAA,EAAA,OAAA,EAAA,CAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,qBAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,WAAA,CAAA,EAAA,CAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAMV,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAb7B,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,WAAW,EAGN,aAAA,EAAA,iBAAiB,CAAC,IAAI,EAC5B,OAAA,EAAA;wBACL,OAAO;wBACP,eAAe;AACf,wBAAA,GAAG,QAAQ;AACX,wBAAA,GAAG,eAAe;AAClB,wBAAA,GAAG,cAAc;AACpB,qBAAA,EAAA,QAAA,EAAA,0qEAAA,EAAA,MAAA,EAAA,CAAA,guMAAA,CAAA,EAAA;wDAQG,UAAU,EAAA,CAAA;sBADb,WAAW;uBAAC,OAAO;gBAImB,OAAO,EAAA,CAAA;sBAA7C,WAAW;uBAAC,eAAe;;sBAAG;gBAErB,IAAI,EAAA,CAAA;sBADb,WAAW;uBAAC,WAAW;gBAGd,QAAQ,EAAA,CAAA;sBADjB,WAAW;uBAAC,gBAAgB;gBAGnB,cAAc,EAAA,CAAA;sBADvB,WAAW;uBAAC,sBAAsB;gBAGzB,eAAe,EAAA,CAAA;sBADxB,WAAW;uBAAC,uBAAuB;gBAGI,MAAM,EAAA,CAAA;sBAA7C,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;gBAE7B,IAAI,EAAA,CAAA;sBAAZ;gBACQ,KAAK,EAAA,CAAA;sBAAb;gBACQ,cAAc,EAAA,CAAA;sBAAtB;gBAEQ,QAAQ,EAAA,CAAA;sBAAhB;gBAES,UAAU,EAAA,CAAA;sBAAnB;gBA6CD,OAAO,EAAA,CAAA;sBADN,YAAY;uBAAC,OAAO;;;AExGzB;;;;AAIG;MAKU,cAAc,CAAA;8GAAd,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;+GAAd,cAAc,EAAA,OAAA,EAAA,CAHb,iBAAiB,CAAA,EAAA,OAAA,EAAA,CACjB,iBAAiB,CAAA,EAAA,CAAA,CAAA;AAElB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,cAAc,YAHb,iBAAiB,CAAA,EAAA,CAAA,CAAA;;2FAGlB,cAAc,EAAA,UAAA,EAAA,CAAA;kBAJ1B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACN,OAAO,EAAE,CAAC,iBAAiB,CAAC;oBAC5B,OAAO,EAAE,CAAC,iBAAiB,CAAC;AAC/B,iBAAA;;;ACNY,MAAA,SAAS,GAAG,CAAE,iBAAiB;;ACL5C;;AAEG;;;;"}
|
1
|
+
{"version":3,"file":"eui-components-eui-growl.mjs","sources":["../../eui-growl/eui-growl.component.ts","../../eui-growl/eui-growl.component.html","../../eui-growl/eui-growl.module.ts","../../eui-growl/index.ts","../../eui-growl/eui-components-eui-growl.ts"],"sourcesContent":["import {\n booleanAttribute,\n Component,\n DoCheck,\n ElementRef,\n EventEmitter,\n HostBinding,\n HostListener,\n Input,\n IterableDiffer,\n IterableDiffers,\n OnDestroy,\n Output,\n ViewEncapsulation,\n inject,\n} from '@angular/core';\nimport { EuiGrowlMessage } from '@eui/core';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { EUI_ICON } from '@eui/components/eui-icon';\nimport { EUI_ICON_BUTTON } from '@eui/components/eui-icon-button';\nimport { EUI_ICON_STATE } from '@eui/components/eui-icon-state';\nimport { NgClass } from '@angular/common';\n\n@Component({\n selector: 'eui-growl',\n templateUrl: './eui-growl.component.html',\n styleUrl: './eui-growl.scss',\n encapsulation: ViewEncapsulation.None,\n imports: [\n NgClass,\n TranslateModule,\n ...EUI_ICON,\n ...EUI_ICON_BUTTON,\n ...EUI_ICON_STATE,\n ],\n})\nexport class EuiGrowlComponent implements DoCheck, OnDestroy {\n el = inject(ElementRef);\n titleId = 'msg-title';\n contentId = 'msg-detail';\n\n @HostBinding('class')\n get cssClasses(): string {\n return ['eui-growl', `eui-growl--${this.position}`].join(' ').trim();\n }\n @HostBinding('attr.data-e2e') @Input() e2eAttr = 'eui-growl';\n @HostBinding('attr.role')\n protected role = 'region';\n @HostBinding('attr.aria-live')\n protected ariaLive= 'polite';\n @HostBinding('attr.aria-labelledby')\n protected ariaLabelledBy = this.titleId;\n @HostBinding('attr.aria-describedby')\n protected ariaDescribedBy= this.contentId;\n\n @Input({ transform: booleanAttribute }) sticky = false;\n\n @Input() life = 3000;\n @Input() value: EuiGrowlMessage[] = [];\n @Input() closeAllSticky = false;\n\n @Input() position: string;\n\n @Output() growlClick: EventEmitter<void> = new EventEmitter<void>();\n\n private differ: IterableDiffer<EuiGrowlMessage>;\n\n constructor() {\n const differs = inject(IterableDiffers);\n\n this.differ = differs.find([]).create(undefined);\n }\n\n ngDoCheck(): void {\n const changes = this.differ.diff(this.value);\n\n if (changes) {\n // clear timeout in the queue to avoid memory leak\n changes.forEachRemovedItem(({ item }) => clearTimeout(item?.timeout));\n // for newly added items create timeout if they are not sticky\n changes.forEachAddedItem(({ item }) => this.createRemovalTimeout(item));\n }\n }\n\n /**\n * @param msg The text message to appear in the container\n */\n remove(msg: EuiGrowlMessage): void {\n this.value.splice(this.findMessageIndex(msg), 1);\n }\n\n /**\n * Removes all growl messages from the stack\n */\n removeAll(): void {\n if (this.value?.length) {\n this.value.splice(0, this.value.length);\n }\n }\n\n ngOnDestroy(): void {\n if (!this.sticky) {\n // make sure to clear any leftover async Timeout for messages\n this.value.forEach((v) => clearTimeout(v?.timeout));\n }\n }\n\n @HostListener('click')\n onClick(): void {\n this.growlClick.emit();\n }\n\n /**\n * check whether sticky growls are greater than two\n */\n isGrowlMoreThanTwo(): boolean {\n return this.value.filter((m) => m.sticky).length > 2;\n }\n\n /**\n * Removes all growl messages from the stack\n *\n * @param value\n */\n private createRemovalTimeout(value: EuiGrowlMessage): void {\n // if message it's NOT sticky and there's not any async running timeout\n if (!value.sticky && !value.timeout) {\n // set Timeout callback for each message based on the given life value\n value.timeout = setTimeout(() => this.remove(value), value.life || this.life) as unknown as number;\n }\n }\n\n /**\n * Finds UxMessage index of the array otherwise returns -1\n *\n * @param msg UxMessage\n */\n private findMessageIndex(msg: EuiGrowlMessage): number {\n return this.value?.length ? this.value.findIndex((value) => value === msg) : -1;\n }\n}\n","@for (msg of value; track msg) {\n<div\n class=\"eui-growl-item-container eui-u-anim eui-u-anim--fast\"\n [ngClass]=\"{\n 'eui-growl-item-container--info eui--info': msg.severity === 'info',\n 'eui-growl-item-container--warning eui--warning': msg.severity === 'warning',\n 'eui-growl-item-container--danger eui--danger': msg.severity === 'danger',\n 'eui-growl-item-container--success eui--success': msg.severity === 'success',\n 'eui-growl-item-container--filled': msg.filled,\n 'eui-growl--sticky': sticky,\n }\"\n [class.eui-u-anim--slideInUp]=\"position === 'bottom-left' || position === 'bottom-center' || position === 'bottom-right'\"\n [class.eui-u-anim--slideInDown]=\"position === 'top-left' || position === 'top-center' || position === 'top-right'\">\n\n <div class=\"eui-growl-item\">\n <div class=\"eui-growl-item-summary-wrapper\">\n <eui-icon-state [euiVariant]=\"msg.severity\" class=\"eui-growl-item-icon\"/>\n <span [id]=\"titleId\" class=\"eui-growl-item-title\">{{ msg.summary }}</span>\n </div>\n <div [id]=\"contentId\" class=\"eui-growl-item-content\" [innerHTML]=\"msg.detail\"></div>\n\n <eui-icon-button\n (buttonClick)=\"remove(msg)\"\n icon=\"close:outline\"\n fillColor=\"neutral-light\"\n euiRounded\n ariaLabel=\"Close growl icon\"\n class=\"eui-growl-item-close\">\n </eui-icon-button>\n </div>\n\n</div>\n}\n@if (closeAllSticky && isGrowlMoreThanTwo()) {\n<div class=\"eui-growl-item-container eui-u-anim eui-u-anim--fast eui-growl-item-container--secondary\">\n <div class=\"eui-growl-item\">\n <div class=\"eui-growl-item-summary-wrapper\">\n <eui-icon-svg icon=\"checkmark-done:sharp\"/>\n <span class=\"eui-growl-item-title\">{{ 'eui.growl.dismiss-all' | translate }}</span>\n </div>\n <eui-icon-button (buttonClick)=\"removeAll()\"\n icon=\"close:outline\"\n fillColor=\"neutral-light\"\n euiRounded\n ariaLabel=\"Close growl icon\"\n class=\"eui-growl-item-close\"/>\n </div>\n</div>\n}\n","import { NgModule } from '@angular/core';\nimport { EuiGrowlComponent } from './eui-growl.component';\n\n/**\n * Module for the EuiGrowl component.\n *\n * @deprecated Use {@link EUI_GROWL} directly instead.\n */\n@NgModule({\n imports: [EuiGrowlComponent],\n exports: [EuiGrowlComponent],\n})\nexport class EuiGrowlModule {}\n","import { EuiGrowlComponent } from './eui-growl.component';\n\nexport * from './eui-growl.component';\nexport * from './eui-growl.module';\n\nexport const EUI_GROWL = [ EuiGrowlComponent ] as const;","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"eui-components-eui-language-selector.mjs","sources":["../../eui-language-selector/modal-selector/modal-selector.component.ts","../../eui-language-selector/modal-selector/modal-selector.component.html","../../eui-language-selector/language-selector.component.ts","../../eui-language-selector/language-selector.component.html","../../eui-language-selector/language-selector.module.ts","../../eui-language-selector/index.ts","../../eui-language-selector/eui-components-eui-language-selector.ts"],"sourcesContent":["import { Component, ViewEncapsulation, ChangeDetectionStrategy, OnInit, inject } from '@angular/core';\nimport { EuiEuLanguages, EuiLanguage } from '@eui/core';\n\nimport { DIALOG_COMPONENT_CONFIG } from '@eui/components/eui-dialog';\nimport { EuiDialogService } from '@eui/components/eui-dialog';\nimport { EUI_BUTTON } from '@eui/components/eui-button';\n\n@Component({\n selector: 'eui-modal-selector',\n templateUrl: './modal-selector.component.html',\n changeDetection: ChangeDetectionStrategy.Default,\n encapsulation: ViewEncapsulation.None,\n imports: [\n ...EUI_BUTTON,\n ],\n})\nexport class EuiModalSelectorComponent implements OnInit {\n config = inject<{\n languages: EuiLanguage[];\n selectedLanguage: EuiLanguage;\n languageChanged: (language: EuiLanguage) => void;\n}>(DIALOG_COMPONENT_CONFIG);\n\n public languageRows: EuiLanguage[][] = [];\n public additionaLanguageRows: EuiLanguage[][] = [];\n\n private selectedLanguage: EuiLanguage;\n private euiDialogService = inject(EuiDialogService);\n\n ngOnInit(): void {\n this.languageRows = this.prepareLanguageRows(EuiEuLanguages.filterEULanguages(this.config.languages));\n this.additionaLanguageRows = this.prepareLanguageRows(EuiEuLanguages.filterNonEULanguages(this.config.languages));\n }\n\n selectLanguage(languageCode: EuiLanguage): void {\n if (this.selectedLanguage?.code !== languageCode.code) {\n for (const language of this.config.languages) {\n if (language.code === languageCode.code) {\n this.selectedLanguage = language;\n break;\n }\n }\n }\n\n this.config.languageChanged(languageCode);\n this.euiDialogService.closeDialog();\n }\n\n private prepareLanguageRows(languages: EuiLanguage[]): EuiLanguage[][] {\n const rows: EuiLanguage[][] = [];\n let row: EuiLanguage[] = [];\n\n for (let i = 0; i < languages.length; i++) {\n if (i % 4 === 0) {\n if (row.length > 0) {\n rows.push(row);\n row = [];\n }\n }\n row.push(languages[i]);\n }\n\n if (row.length > 0) {\n rows.push(row);\n }\n\n return rows;\n }\n}\n","@if (additionaLanguageRows?.length > 0) {\n <h4>EU official languages</h4>\n}\n@for (row of languageRows; track row) {\n <div id=\"eu_languages\" class=\"row\">\n @for (language of row; track language) {\n <div class=\"col-md-6 mb-2\">\n <button\n type=\"button\"\n e2eAttr=\"eui-language-selector-item_{{ language.code }}\"\n euiButton\n euiBlockButton\n [euiSecondary]=\"language.code !== config.selectedLanguage.code\"\n [euiPrimary]=\"language.code === config.selectedLanguage.code\"\n (click)=\"selectLanguage(language)\">\n {{ language.label }} ({{ language.code }})\n </button>\n </div>\n }\n </div>\n}\n@if (additionaLanguageRows?.length > 0) {\n <br />\n <h4>Non-EU Languages</h4>\n @for (row of additionaLanguageRows; track row) {\n <div id=\"extra_languages\" class=\"row\">\n @for (language of row; track language) {\n <div class=\"col-md-6 mb-2\">\n <button\n type=\"button\"\n e2eAttr=\"eui-language-selector-item_{{ language.code }}\"\n euiButton\n euiBlockButton\n [euiSecondary]=\"language.code !== config.selectedLanguage.code\"\n [euiPrimary]=\"language.code === config.selectedLanguage.code\"\n (click)=\"selectLanguage(language)\">\n {{ language.label }} ({{ language.code }})\n </button>\n </div>\n }\n </div>\n }\n}\n","import {\n Component,\n ViewEncapsulation,\n HostBinding,\n OnDestroy,\n OnInit,\n ChangeDetectorRef,\n Input,\n Output,\n EventEmitter,\n booleanAttribute,\n ElementRef,\n AfterViewInit,\n SimpleChanges,\n OnChanges,\n inject,\n} from '@angular/core';\nimport { distinctUntilKeyChanged, map, takeUntil } from 'rxjs/operators';\nimport { Subject } from 'rxjs';\nimport { TranslateService } from '@ngx-translate/core';\n\nimport { EuiEuLanguages, EuiLanguage } from '@eui/core';\nimport { EuiAppShellService } from '@eui/core';\nimport { EuiDialogConfig, EUI_DIALOG, EuiDialogService } from '@eui/components/eui-dialog';\n\nimport { EuiModalSelectorComponent } from './modal-selector/modal-selector.component';\nimport { EUI_ICON } from '@eui/components/eui-icon';\nimport { EUI_BUTTON } from '@eui/components/eui-button';\nimport { EUI_DROPDOWN } from '@eui/components/eui-dropdown';\nimport { AsyncPipe, NgTemplateOutlet } from '@angular/common';\n\n@Component({\n selector: 'eui-language-selector',\n templateUrl: './language-selector.component.html',\n styleUrls: ['./_styles/_index.scss'],\n encapsulation: ViewEncapsulation.None,\n imports: [\n AsyncPipe,\n NgTemplateOutlet,\n ...EUI_DIALOG,\n ...EUI_DROPDOWN,\n ...EUI_ICON,\n ...EUI_BUTTON,\n ],\n providers: [\n EuiDialogService,\n ],\n})\nexport class EuiLanguageSelectorComponent implements OnInit, AfterViewInit, OnDestroy, OnChanges {\n @HostBinding('class')\n get cssClasses(): string {\n return [\n 'eui-language-selector',\n this.languages?.length <= 1 ? 'eui-language-selector--empty' : '',\n this.isToolbarSelector ? 'eui-language-selector--toolbar-selector' : '',\n ]\n .join(' ')\n .trim();\n }\n\n languages: EuiLanguage[];\n selectedLanguage: EuiLanguage;\n\n @Input({ transform: booleanAttribute }) hasLanguageSelection = true;\n @Input({ transform: booleanAttribute }) isToolbarSelector = false;\n @Input({ transform: booleanAttribute }) euiPrimary = false;\n @Input('aria-label') ariaLabel: string;\n\n @Output() languageSelectorClick = new EventEmitter<null>();\n\n appShellService = inject(EuiAppShellService);\n private destroy$: Subject<boolean> = new Subject<boolean>();\n private isAriaLabelChanged = false;\n private cd = inject(ChangeDetectorRef);\n private euiDialogService = inject(EuiDialogService);\n private translateService = inject(TranslateService);\n private elRef = inject(ElementRef);\n\n /**\n * returns true if there are at least one and max four languages.\n */\n get isShowDropDown(): boolean {\n return this.languages?.length > 1 && this.languages?.length < 4;\n }\n\n /**\n * returns true if there are at least five languages.\n */\n get isShowModal(): boolean {\n return this.languages?.length >= 4;\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes && changes['ariaLabel']) {\n this.isAriaLabelChanged = true;\n this.ariaLabel = changes['ariaLabel'].currentValue;\n }\n }\n\n ngOnInit(): void {\n // update languages array based on AppShell State 'language' changes\n this.appShellService.state$\n .pipe(\n takeUntil(this.destroy$),\n distinctUntilKeyChanged('languages'),\n map((state) => state.languages),\n )\n .subscribe((languages) => {\n this.languages = languages ? EuiEuLanguages.getOrderedLanguages(languages) : EuiEuLanguages.getLanguages();\n this.cd.detectChanges();\n });\n\n // update activeLanguage array based on AppShell State 'language' changes\n this.appShellService.state$\n .pipe(\n takeUntil(this.destroy$),\n distinctUntilKeyChanged('activeLanguage'),\n map((state) => state.activeLanguage),\n )\n .subscribe((activeLanguage) => {\n this.selectedLanguage = this.getLanguage(activeLanguage);\n if (!this.isAriaLabelChanged) {\n this.ariaLabel = `Change Language - Current Language: ${this.selectedLanguage.label}`;\n }\n this.cd.detectChanges();\n });\n }\n\n ngAfterViewInit(): void {\n let hasToolbarParent = false;\n try {\n hasToolbarParent = this.elRef.nativeElement.closest('eui-toolbar');\n } catch (e) {\n // do nothing\n }\n\n if (hasToolbarParent) {\n setTimeout(() => {\n this.isToolbarSelector = true;\n }, 1);\n }\n }\n\n ngOnDestroy(): void {\n this.destroy$.next(true);\n this.destroy$.unsubscribe();\n }\n\n onLanguageChanged(language: EuiLanguage): void {\n // Update the AppShellService state\n this.appShellService.setState({\n ...this.appShellService.state,\n activeLanguage: language.code,\n });\n }\n\n /**\n * Opens the modal that renders the UxLanguage array with modal actions bindings to this Component\n */\n onOpen(titleLabel: string = this.translateService.instant('eui.languageSelector.modalTitle')): void {\n this.euiDialogService.openDialog(\n new EuiDialogConfig({\n title: titleLabel,\n hasFooter: false,\n hasClosedOnClickOutside: true,\n bodyComponent: {\n component: EuiModalSelectorComponent,\n config: {\n languages: this.languages,\n selectedLanguage: this.selectedLanguage,\n languageChanged: (language: EuiLanguage): void => this.onLanguageChanged(language),\n },\n },\n }),\n );\n }\n\n onClick(): void {\n this.languageSelectorClick.emit();\n }\n\n /**\n * returns the UxLanguage Object from a given language code\n *\n * @param languageCode two char language code\n * @protected\n */\n protected getLanguage(languageCode: string): EuiLanguage {\n return this.languages.find((lang) => lang.code === languageCode);\n }\n}\n","@if (!hasLanguageSelection) {\n <button class=\"eui-language-selector__button\"\n euiButton [euiBasicButton]=\"!isToolbarSelector\"\n [euiBranding]=\"isToolbarSelector\"\n (click)=\"onClick()\"\n [attr.aria-label]=\"ariaLabel\">\n <ng-template *ngTemplateOutlet=\"languageSelectorIcon\"></ng-template>\n <span class=\"eui-language-selector__code\">{{ (appShellService.state$ | async).activeLanguage }}</span>\n </button>\n\n} @else if (hasLanguageSelection && isShowDropDown) {\n <eui-dropdown>\n <button class=\"eui-language-selector__button\"\n [attr.aria-label]=\"ariaLabel\"\n euiButton [euiBasicButton]=\"!isToolbarSelector\"\n [euiBranding]=\"isToolbarSelector\">\n <ng-template *ngTemplateOutlet=\"languageSelectorIcon\"></ng-template>\n <span class=\"eui-language-selector__code\">{{ (appShellService.state$ | async).activeLanguage }}</span>\n </button>\n\n <eui-dropdown-content>\n <div class=\"eui-language-selector-menu\">\n @for (language of languages; track language) {\n <button\n euiDropdownItem\n attr.data-e2e=\"eui-language-selector-item_{{ language.code }}\"\n class=\"eui-language-selector-menu-language-item\"\n (click)=\"onLanguageChanged(language)\">\n {{ language.label }} ({{ language.code }})\n </button>\n }\n </div>\n </eui-dropdown-content>\n </eui-dropdown>\n\n} @else if (hasLanguageSelection && isShowModal) {\n <button class=\"eui-language-selector__button\"\n euiButton euiBasicButton\n [euiPrimary]=\"isToolbarSelector\"\n (click)=\"onOpen()\"\n [attr.aria-label]=\"ariaLabel\">\n <ng-template *ngTemplateOutlet=\"languageSelectorIcon\"></ng-template>\n <span class=\"eui-language-selector__code\">{{ (appShellService.state$ | async).activeLanguage }}</span>\n </button>\n}\n\n<ng-template #languageSelectorIcon>\n <eui-icon-svg icon=\"eui-ecl-global\" />\n</ng-template>\n","import { NgModule } from '@angular/core';\n\nimport { EuiLanguageSelectorComponent } from './language-selector.component';\nimport { EuiModalSelectorComponent } from './modal-selector/modal-selector.component';\n\n/**\n * @description\n * Module that declares and exports the EuiLanguageSelectorComponent.\n *\n * @deprecated Use {@link EUI_LANGUAGE_SELECTOR} instead\n */\n@NgModule({\n imports: [EuiLanguageSelectorComponent, EuiModalSelectorComponent],\n exports: [EuiLanguageSelectorComponent, EuiModalSelectorComponent],\n})\nexport class EuiLanguageSelectorModule {}\n","import { EuiLanguageSelectorComponent } from './language-selector.component';\nimport { EuiModalSelectorComponent } from './modal-selector/modal-selector.component';\n\nexport * from './language-selector.component';\nexport * from './modal-selector/modal-selector.component';\nexport * from './language-selector.module';\n\nexport const EUI_LANGUAGE_SELECTOR = [\n EuiLanguageSelectorComponent, \n EuiModalSelectorComponent,\n] as const;","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i3"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"eui-components-eui-language-selector.mjs","sources":["../../eui-language-selector/modal-selector/modal-selector.component.ts","../../eui-language-selector/modal-selector/modal-selector.component.html","../../eui-language-selector/language-selector.component.ts","../../eui-language-selector/language-selector.component.html","../../eui-language-selector/language-selector.module.ts","../../eui-language-selector/index.ts","../../eui-language-selector/eui-components-eui-language-selector.ts"],"sourcesContent":["import { Component, ViewEncapsulation, ChangeDetectionStrategy, OnInit, inject } from '@angular/core';\nimport { EuiEuLanguages, EuiLanguage } from '@eui/core';\n\nimport { DIALOG_COMPONENT_CONFIG } from '@eui/components/eui-dialog';\nimport { EuiDialogService } from '@eui/components/eui-dialog';\nimport { EUI_BUTTON } from '@eui/components/eui-button';\n\n@Component({\n selector: 'eui-modal-selector',\n templateUrl: './modal-selector.component.html',\n changeDetection: ChangeDetectionStrategy.Default,\n encapsulation: ViewEncapsulation.None,\n imports: [\n ...EUI_BUTTON,\n ],\n})\nexport class EuiModalSelectorComponent implements OnInit {\n config = inject<{\n languages: EuiLanguage[];\n selectedLanguage: EuiLanguage;\n languageChanged: (language: EuiLanguage) => void;\n}>(DIALOG_COMPONENT_CONFIG);\n\n public languageRows: EuiLanguage[][] = [];\n public additionaLanguageRows: EuiLanguage[][] = [];\n\n private selectedLanguage: EuiLanguage;\n private euiDialogService = inject(EuiDialogService);\n\n ngOnInit(): void {\n this.languageRows = this.prepareLanguageRows(EuiEuLanguages.filterEULanguages(this.config.languages));\n this.additionaLanguageRows = this.prepareLanguageRows(EuiEuLanguages.filterNonEULanguages(this.config.languages));\n }\n\n selectLanguage(languageCode: EuiLanguage): void {\n if (this.selectedLanguage?.code !== languageCode.code) {\n for (const language of this.config.languages) {\n if (language.code === languageCode.code) {\n this.selectedLanguage = language;\n break;\n }\n }\n }\n\n this.config.languageChanged(languageCode);\n this.euiDialogService.closeDialog();\n }\n\n private prepareLanguageRows(languages: EuiLanguage[]): EuiLanguage[][] {\n const rows: EuiLanguage[][] = [];\n let row: EuiLanguage[] = [];\n\n for (let i = 0; i < languages.length; i++) {\n if (i % 4 === 0) {\n if (row.length > 0) {\n rows.push(row);\n row = [];\n }\n }\n row.push(languages[i]);\n }\n\n if (row.length > 0) {\n rows.push(row);\n }\n\n return rows;\n }\n}\n","@if (additionaLanguageRows?.length > 0) {\n <h4>EU official languages</h4>\n}\n@for (row of languageRows; track row) {\n <div id=\"eu_languages\" class=\"row\">\n @for (language of row; track language) {\n <div class=\"col-md-6 mb-2\">\n <button\n type=\"button\"\n e2eAttr=\"eui-language-selector-item_{{ language.code }}\"\n euiButton\n euiBlockButton\n [euiSecondary]=\"language.code !== config.selectedLanguage.code\"\n [euiPrimary]=\"language.code === config.selectedLanguage.code\"\n (click)=\"selectLanguage(language)\">\n {{ language.label }} ({{ language.code }})\n </button>\n </div>\n }\n </div>\n}\n@if (additionaLanguageRows?.length > 0) {\n <br />\n <h4>Non-EU Languages</h4>\n @for (row of additionaLanguageRows; track row) {\n <div id=\"extra_languages\" class=\"row\">\n @for (language of row; track language) {\n <div class=\"col-md-6 mb-2\">\n <button\n type=\"button\"\n e2eAttr=\"eui-language-selector-item_{{ language.code }}\"\n euiButton\n euiBlockButton\n [euiSecondary]=\"language.code !== config.selectedLanguage.code\"\n [euiPrimary]=\"language.code === config.selectedLanguage.code\"\n (click)=\"selectLanguage(language)\">\n {{ language.label }} ({{ language.code }})\n </button>\n </div>\n }\n </div>\n }\n}\n","import {\n Component,\n ViewEncapsulation,\n HostBinding,\n OnDestroy,\n OnInit,\n ChangeDetectorRef,\n Input,\n Output,\n EventEmitter,\n booleanAttribute,\n ElementRef,\n AfterViewInit,\n SimpleChanges,\n OnChanges,\n inject,\n} from '@angular/core';\nimport { distinctUntilKeyChanged, map, takeUntil } from 'rxjs/operators';\nimport { Subject } from 'rxjs';\nimport { TranslateService } from '@ngx-translate/core';\n\nimport { EuiEuLanguages, EuiLanguage } from '@eui/core';\nimport { EuiAppShellService } from '@eui/core';\nimport { EuiDialogConfig, EUI_DIALOG, EuiDialogService } from '@eui/components/eui-dialog';\n\nimport { EuiModalSelectorComponent } from './modal-selector/modal-selector.component';\nimport { EUI_ICON } from '@eui/components/eui-icon';\nimport { EUI_BUTTON } from '@eui/components/eui-button';\nimport { EUI_DROPDOWN } from '@eui/components/eui-dropdown';\nimport { AsyncPipe, NgTemplateOutlet } from '@angular/common';\n\n@Component({\n selector: 'eui-language-selector',\n templateUrl: './language-selector.component.html',\n styleUrl: './language-selector.scss',\n encapsulation: ViewEncapsulation.None,\n imports: [\n AsyncPipe,\n NgTemplateOutlet,\n ...EUI_DIALOG,\n ...EUI_DROPDOWN,\n ...EUI_ICON,\n ...EUI_BUTTON,\n ],\n providers: [\n EuiDialogService,\n ],\n})\nexport class EuiLanguageSelectorComponent implements OnInit, AfterViewInit, OnDestroy, OnChanges {\n @HostBinding('class')\n get cssClasses(): string {\n return [\n 'eui-language-selector',\n this.languages?.length <= 1 ? 'eui-language-selector--empty' : '',\n this.isToolbarSelector ? 'eui-language-selector--toolbar-selector' : '',\n ]\n .join(' ')\n .trim();\n }\n\n languages: EuiLanguage[];\n selectedLanguage: EuiLanguage;\n\n @Input({ transform: booleanAttribute }) hasLanguageSelection = true;\n @Input({ transform: booleanAttribute }) isToolbarSelector = false;\n @Input({ transform: booleanAttribute }) euiPrimary = false;\n @Input('aria-label') ariaLabel: string;\n\n @Output() languageSelectorClick = new EventEmitter<null>();\n\n appShellService = inject(EuiAppShellService);\n private destroy$: Subject<boolean> = new Subject<boolean>();\n private isAriaLabelChanged = false;\n private cd = inject(ChangeDetectorRef);\n private euiDialogService = inject(EuiDialogService);\n private translateService = inject(TranslateService);\n private elRef = inject(ElementRef);\n\n /**\n * returns true if there are at least one and max four languages.\n */\n get isShowDropDown(): boolean {\n return this.languages?.length > 1 && this.languages?.length < 4;\n }\n\n /**\n * returns true if there are at least five languages.\n */\n get isShowModal(): boolean {\n return this.languages?.length >= 4;\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes && changes['ariaLabel']) {\n this.isAriaLabelChanged = true;\n this.ariaLabel = changes['ariaLabel'].currentValue;\n }\n }\n\n ngOnInit(): void {\n // update languages array based on AppShell State 'language' changes\n this.appShellService.state$\n .pipe(\n takeUntil(this.destroy$),\n distinctUntilKeyChanged('languages'),\n map((state) => state.languages),\n )\n .subscribe((languages) => {\n this.languages = languages ? EuiEuLanguages.getOrderedLanguages(languages) : EuiEuLanguages.getLanguages();\n this.cd.detectChanges();\n });\n\n // update activeLanguage array based on AppShell State 'language' changes\n this.appShellService.state$\n .pipe(\n takeUntil(this.destroy$),\n distinctUntilKeyChanged('activeLanguage'),\n map((state) => state.activeLanguage),\n )\n .subscribe((activeLanguage) => {\n this.selectedLanguage = this.getLanguage(activeLanguage);\n if (!this.isAriaLabelChanged) {\n this.ariaLabel = `Change Language - Current Language: ${this.selectedLanguage.label}`;\n }\n this.cd.detectChanges();\n });\n }\n\n ngAfterViewInit(): void {\n let hasToolbarParent = false;\n try {\n hasToolbarParent = this.elRef.nativeElement.closest('eui-toolbar');\n } catch (e) {\n // do nothing\n }\n\n if (hasToolbarParent) {\n setTimeout(() => {\n this.isToolbarSelector = true;\n }, 1);\n }\n }\n\n ngOnDestroy(): void {\n this.destroy$.next(true);\n this.destroy$.unsubscribe();\n }\n\n onLanguageChanged(language: EuiLanguage): void {\n // Update the AppShellService state\n this.appShellService.setState({\n ...this.appShellService.state,\n activeLanguage: language.code,\n });\n }\n\n /**\n * Opens the modal that renders the UxLanguage array with modal actions bindings to this Component\n */\n onOpen(titleLabel: string = this.translateService.instant('eui.languageSelector.modalTitle')): void {\n this.euiDialogService.openDialog(\n new EuiDialogConfig({\n title: titleLabel,\n hasFooter: false,\n hasClosedOnClickOutside: true,\n bodyComponent: {\n component: EuiModalSelectorComponent,\n config: {\n languages: this.languages,\n selectedLanguage: this.selectedLanguage,\n languageChanged: (language: EuiLanguage): void => this.onLanguageChanged(language),\n },\n },\n }),\n );\n }\n\n onClick(): void {\n this.languageSelectorClick.emit();\n }\n\n /**\n * returns the UxLanguage Object from a given language code\n *\n * @param languageCode two char language code\n * @protected\n */\n protected getLanguage(languageCode: string): EuiLanguage {\n return this.languages.find((lang) => lang.code === languageCode);\n }\n}\n","@if (!hasLanguageSelection) {\n <button class=\"eui-language-selector__button\"\n euiButton [euiBasicButton]=\"!isToolbarSelector\"\n [euiBranding]=\"isToolbarSelector\"\n (click)=\"onClick()\"\n [attr.aria-label]=\"ariaLabel\">\n <ng-template *ngTemplateOutlet=\"languageSelectorIcon\"></ng-template>\n <span class=\"eui-language-selector__code\">{{ (appShellService.state$ | async).activeLanguage }}</span>\n </button>\n\n} @else if (hasLanguageSelection && isShowDropDown) {\n <eui-dropdown>\n <button class=\"eui-language-selector__button\"\n [attr.aria-label]=\"ariaLabel\"\n euiButton [euiBasicButton]=\"!isToolbarSelector\"\n [euiBranding]=\"isToolbarSelector\">\n <ng-template *ngTemplateOutlet=\"languageSelectorIcon\"></ng-template>\n <span class=\"eui-language-selector__code\">{{ (appShellService.state$ | async).activeLanguage }}</span>\n </button>\n\n <eui-dropdown-content>\n <div class=\"eui-language-selector-menu\">\n @for (language of languages; track language) {\n <button\n euiDropdownItem\n attr.data-e2e=\"eui-language-selector-item_{{ language.code }}\"\n class=\"eui-language-selector-menu-language-item\"\n (click)=\"onLanguageChanged(language)\">\n {{ language.label }} ({{ language.code }})\n </button>\n }\n </div>\n </eui-dropdown-content>\n </eui-dropdown>\n\n} @else if (hasLanguageSelection && isShowModal) {\n <button class=\"eui-language-selector__button\"\n euiButton euiBasicButton\n [euiPrimary]=\"isToolbarSelector\"\n (click)=\"onOpen()\"\n [attr.aria-label]=\"ariaLabel\">\n <ng-template *ngTemplateOutlet=\"languageSelectorIcon\"></ng-template>\n <span class=\"eui-language-selector__code\">{{ (appShellService.state$ | async).activeLanguage }}</span>\n </button>\n}\n\n<ng-template #languageSelectorIcon>\n <eui-icon-svg icon=\"eui-ecl-global\" />\n</ng-template>\n","import { NgModule } from '@angular/core';\n\nimport { EuiLanguageSelectorComponent } from './language-selector.component';\nimport { EuiModalSelectorComponent } from './modal-selector/modal-selector.component';\n\n/**\n * @description\n * Module that declares and exports the EuiLanguageSelectorComponent.\n *\n * @deprecated Use {@link EUI_LANGUAGE_SELECTOR} instead\n */\n@NgModule({\n imports: [EuiLanguageSelectorComponent, EuiModalSelectorComponent],\n exports: [EuiLanguageSelectorComponent, EuiModalSelectorComponent],\n})\nexport class EuiLanguageSelectorModule {}\n","import { EuiLanguageSelectorComponent } from './language-selector.component';\nimport { EuiModalSelectorComponent } from './modal-selector/modal-selector.component';\n\nexport * from './language-selector.component';\nexport * from './modal-selector/modal-selector.component';\nexport * from './language-selector.module';\n\nexport const EUI_LANGUAGE_SELECTOR = [\n EuiLanguageSelectorComponent, \n EuiModalSelectorComponent,\n] as const;","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i3"],"mappings":"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"}
|