@eui/components 18.0.1-snapshot-1718044857495 → 18.0.1-snapshot-1718110610951
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/classes/CustomNodeSelectFnHelper.html +556 -0
- package/docs/components/EuiMenuComponent.html +1 -1
- package/docs/components/EuiNotificationsComponent.html +1 -1
- package/docs/components/EuiTreeComponent.html +19 -0
- package/docs/components/EuiUserProfileCardComponent.html +3 -3
- package/docs/dependencies.html +10 -10
- package/docs/directives/EuiTreeFormControlDirective.html +1 -1
- package/docs/index.html +1 -1
- package/docs/interfaces/UserProfile.html +92 -2
- package/docs/js/menu-wc.js +9 -6
- package/docs/js/menu-wc_es5.js +1 -1
- package/docs/js/search/search_index.js +2 -2
- package/docs/miscellaneous/typealiases.html +67 -48
- package/esm2022/eui-menu/eui-menu.component.mjs +3 -3
- package/esm2022/eui-tree/eui-tree-form-control.directive.mjs +2 -2
- package/esm2022/eui-tree/eui-tree.component.mjs +46 -24
- package/esm2022/eui-tree/eui-tree.model.mjs +20 -1
- package/esm2022/eui-user-profile/user-profile-card/user-profile-card.component.mjs +1 -1
- package/esm2022/eui-user-profile/user-profile.component.mjs +1 -1
- package/esm2022/layout/eui-notifications/eui-notifications.component.mjs +3 -3
- package/eui-tree/eui-tree.component.d.ts +5 -2
- package/eui-tree/eui-tree.component.d.ts.map +1 -1
- package/eui-tree/eui-tree.model.d.ts +9 -0
- package/eui-tree/eui-tree.model.d.ts.map +1 -1
- package/eui-user-profile/user-profile-card/user-profile-card.component.d.ts +3 -3
- package/eui-user-profile/user-profile-card/user-profile-card.component.d.ts.map +1 -1
- package/eui-user-profile/user-profile.component.d.ts +5 -1
- package/eui-user-profile/user-profile.component.d.ts.map +1 -1
- package/fesm2022/eui-components-eui-menu.mjs +2 -2
- package/fesm2022/eui-components-eui-menu.mjs.map +1 -1
- package/fesm2022/eui-components-eui-tree.mjs +65 -24
- package/fesm2022/eui-components-eui-tree.mjs.map +1 -1
- package/fesm2022/eui-components-eui-user-profile.mjs.map +1 -1
- package/fesm2022/eui-components-layout.mjs +2 -2
- package/fesm2022/eui-components-layout.mjs.map +1 -1
- package/package.json +3 -3
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"eui-components-eui-user-profile.mjs","sources":["../../eui-user-profile/user-profile-menu-item/user-profile-menu-item.component.ts","../../eui-user-profile/user-profile-menu/user-profile-menu.component.ts","../../eui-user-profile/user-profile.component.ts","../../eui-user-profile/user-profile.component.html","../../eui-user-profile/user-profile-card/user-profile-card.component.ts","../../eui-user-profile/user-profile-card/user-profile-card.component.html","../../eui-user-profile/user-profile.module.ts","../../eui-user-profile/eui-components-eui-user-profile.ts"],"sourcesContent":["import { Component, HostBinding, ViewEncapsulation, ElementRef } from '@angular/core';\nimport { FocusableOption } from '@angular/cdk/a11y';\n\n@Component({\n selector: 'eui-user-profile-menu-item',\n template: '<ng-content></ng-content>',\n encapsulation: ViewEncapsulation.None,\n})\nexport class EuiUserProfileMenuItemComponent implements FocusableOption {\n @HostBinding('class') class = 'eui-user-profile-menu-item';\n @HostBinding('attr.tabindex') tabindex = '-1';\n @HostBinding('attr.role') role = 'menuitem';\n\n constructor(private element: ElementRef) {}\n\n focus(): void {\n this.element.nativeElement.focus();\n }\n}\n","import {\n Component,\n HostBinding,\n ViewEncapsulation,\n AfterContentInit,\n QueryList,\n ContentChildren,\n OnDestroy,\n HostListener,\n forwardRef,\n} from '@angular/core';\nimport { FocusKeyManager } from '@angular/cdk/a11y';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { EuiUserProfileMenuItemComponent } from '../user-profile-menu-item/user-profile-menu-item.component';\nimport { EuiDropdownService } from '@eui/components/eui-dropdown';\n\n@Component({\n selector: 'eui-user-profile-menu',\n template: '<ng-content></ng-content>',\n encapsulation: ViewEncapsulation.None,\n})\nexport class EuiUserProfileMenuComponent implements AfterContentInit, OnDestroy {\n @HostBinding() class = 'eui-user-profile-menu';\n @HostBinding('attr.role') role = 'menu';\n\n @ContentChildren(forwardRef(() => EuiUserProfileMenuItemComponent)) items: QueryList<EuiUserProfileMenuItemComponent>;\n private focusKeyManager: FocusKeyManager<EuiUserProfileMenuItemComponent>;\n private destroy$: Subject<boolean> = new Subject<boolean>();\n\n constructor(private dropdownService: EuiDropdownService) {}\n\n @HostListener('keydown', ['$event'])\n onKeydown(event): void {\n this.focusKeyManager.onKeydown(event);\n }\n\n ngAfterContentInit(): void {\n this.dropdownService.isDropdownOpen.pipe(takeUntil(this.destroy$)).subscribe((isOpen: boolean) => {\n if (isOpen) {\n this.focusKeyManager = new FocusKeyManager(this.items).withWrap();\n this.focusKeyManager.setFirstItemActive();\n }\n });\n }\n\n ngOnDestroy(): void {\n this.destroy$.next(true);\n this.destroy$.unsubscribe();\n }\n}\n","import { Component, HostBinding, ChangeDetectionStrategy, ViewEncapsulation, Input, OnInit, ViewChild, OnDestroy, Host, Optional, Inject, forwardRef, AfterContentInit, ContentChild, QueryList, AfterViewInit, ContentChildren, ElementRef, booleanAttribute, Renderer2 } from '@angular/core';\nimport { UserState } from '@eui/core';\nimport { UserService } from '@eui/core';\nimport { takeUntil } from 'rxjs/operators';\nimport { EuiDropdownComponent } from '@eui/components/eui-dropdown';\nimport { Subject } from 'rxjs';\nimport { BaseStatesDirective } from '@eui/components/shared';\nimport { EuiUserProfileMenuComponent } from './user-profile-menu/user-profile-menu.component';\n\nexport interface UserProfile extends UserState {\n impersonatingUser?: UserState;\n}\n\n@Component({\n selector: 'eui-user-profile',\n templateUrl: './user-profile.component.html',\n styleUrls: ['./_styles/_index.scss'],\n changeDetection: ChangeDetectionStrategy.Default,\n encapsulation: ViewEncapsulation.None,\n hostDirectives: [\n {\n directive: BaseStatesDirective,\n inputs: [\n 'euiSizeS',\n 'euiSecondary',\n 'euiPrimary',\n ],\n },\n ],\n})\nexport class EuiUserProfileComponent implements OnInit, OnDestroy, AfterViewInit {\n @HostBinding('class')\n public get cssClasses(): string {\n return [\n this.baseStatesDirective.getCssClasses('eui-user-profile'),\n this.isReverse ? 'eui-user-profile--reverse': '',\n this.isShowAvatarInitials ? 'eui-user-profile--initials': '',\n ].join(' ').trim();\n }\n\n userState: UserProfile;\n isOnline = true;\n avatarInitials: string;\n\n @Input() welcomeLabel = 'Welcome';\n @Input() impersonateLabel = 'impersonating';\n @Input() avatarUrl: string;\n @Input() subInfos: string;\n @Input() statusVariant = 'success';\n\n @Input({ transform: booleanAttribute }) hasMenu = false;\n @Input({ transform: booleanAttribute }) hasWelcomeLabel = true;\n @Input({ transform: booleanAttribute }) isShowAvatarInitials = false;\n @Input({ transform: booleanAttribute }) hasTabNavigation = false;\n @Input({ transform: booleanAttribute }) isReverse = false;\n @Input({ transform: booleanAttribute }) hasToggle = false;\n @Input({ transform: booleanAttribute }) isHeaderUserProfile = false;\n @Input({ transform: booleanAttribute }) isShowUserInfos = true;\n\n @Input({ transform: booleanAttribute }) euiStatusSecondary = false;\n @Input({ transform: booleanAttribute }) euiStatusSuccess = false;\n @Input({ transform: booleanAttribute }) euiStatusDanger = false;\n\n @ViewChild('dropdown') dropdown: EuiDropdownComponent;\n @ContentChildren(forwardRef(() => EuiUserProfileMenuComponent), { descendants: true })\n hasMenuContent: QueryList<EuiUserProfileMenuComponent>;\n\n isDropdownOpen = false;\n\n private unsubscribeSubject$: Subject<void> = new Subject();\n\n constructor(\n private elRef: ElementRef,\n private userService: UserService,\n public baseStatesDirective: BaseStatesDirective,\n ) {\n }\n\n ngOnInit(): void {\n this.userService\n .getState()\n .pipe(takeUntil(this.unsubscribeSubject$))\n .subscribe((state: UserProfile) => {\n if (state) {\n this.userState = state;\n const firstNameInitial = state.firstName?.substring(0, 1).toUpperCase();\n const lastNameInitial = state.lastName?.substring(0, 1).toUpperCase();\n this.avatarInitials = `${firstNameInitial}${lastNameInitial}`;\n }\n });\n }\n\n ngAfterViewInit(): void {\n let hasToolbarItemParent = false, toolbar;\n\n try {\n hasToolbarItemParent = this.elRef.nativeElement.closest('eui-toolbar-item');\n toolbar = this.elRef.nativeElement.closest('eui-toolbar');\n } catch(e) {\n // do nothing\n }\n\n setTimeout(() => {\n if (hasToolbarItemParent) {\n this.baseStatesDirective.euiSizeS = true;\n if (toolbar && toolbar.classList.contains('eui--secondary') || this.baseStatesDirective.euiSecondary) {\n console.log(toolbar);\n this.baseStatesDirective.euiSecondary = true;\n } else {\n this.baseStatesDirective.euiPrimary = true;\n }\n }\n if (hasToolbarItemParent || !this.isHeaderUserProfile) {\n this.hasMenu = this.hasMenuContent.length !== 0;\n }\n });\n }\n\n ngOnDestroy(): void {\n this.unsubscribeSubject$.next();\n this.unsubscribeSubject$.complete();\n }\n\n closeDropdown(): void {\n this.dropdown.closeDropdown();\n this.isDropdownOpen = false;\n }\n\n onDropdownExpand(isOpen: boolean): void {\n this.isDropdownOpen = isOpen;\n }\n}\n","@if (hasMenu) {\n <eui-dropdown [hasTabNavigation]=\"hasTabNavigation\" width=\"340px\" #dropdown (expand)=\"onDropdownExpand($event)\">\n <ng-container *ngTemplateOutlet=\"userProfileContent\"/>\n <eui-dropdown-content>\n <ng-content/>\n </eui-dropdown-content>\n </eui-dropdown>\n} @else {\n <ng-container *ngTemplateOutlet=\"userProfileContent\"/>\n}\n\n<ng-template #userProfileContent>\n <button class=\"eui-user-profile-content\" [tabindex]=\"hasMenu ? '0' : '-1'\" [class.eui-user-profile-content--no-menu]=\"!hasMenu\">\n\n @if (isShowUserInfos) {\n <div class=\"eui-user-profile__infos\">\n @if (userState?.impersonatingUser) {\n <div class=\"eui-user-profile__infos-welcome\">\n @if (hasWelcomeLabel) {\n <span class=\"eui-u-mr-2xs\">{{ welcomeLabel }}</span>\n }\n {{ userState?.impersonatingUser?.firstName }} <strong>{{ userState?.impersonatingUser?.lastName}}</strong>\n <span class=\"eui-u-ml-2xs\">{{ impersonateLabel }}</span>\n </div>\n <div class=\"eui-user-profile__infos-name\">\n {{ userState?.firstName }} <strong>{{ userState?.lastName }}</strong>\n </div>\n @if (subInfos) {\n <div class=\"eui-user-profile__infos-subinfos\">{{ subInfos }}</div>\n }\n } @else {\n @if (hasWelcomeLabel) {\n <div class=\"eui-user-profile__infos-welcome\">{{ welcomeLabel }}</div>\n }\n <div class=\"eui-user-profile__infos-name\">\n {{ userState?.firstName }} <strong>{{ userState?.lastName }}</strong>\n </div>\n @if (subInfos) {\n <div class=\"eui-user-profile__infos-subinfos\">{{ subInfos }}</div>\n }\n }\n </div>\n }\n\n <eui-avatar isFlat [euiSizeS]=\"baseStatesDirective.euiSizeS\" [hasShadow]=\"userState?.impersonatingUser\">\n\n @if (isShowAvatarInitials) {\n <eui-avatar-text>{{ avatarInitials }}</eui-avatar-text>\n } @else {\n <eui-avatar-image [imageUrl]=\"avatarUrl\"/>\n }\n\n @if (euiStatusSecondary || euiStatusSuccess || euiStatusDanger) {\n <eui-avatar-badge position=\"bottom\">\n @if (euiStatusSuccess) {\n <eui-badge euiSuccess euiSizeS euiIconBadge>\n <eui-icon-svg icon=\"checkmark:outline\" size=\"xs\"/>\n </eui-badge>\n } @else if (euiStatusDanger) {\n <eui-badge euiDanger euiSizeS euiIconBadge>\n <eui-icon-svg icon=\"remove:outline\" size=\"xs\"/>\n </eui-badge>\n } @else if (euiStatusSecondary) {\n <eui-badge euiSecondary euiSizeS euiIconBadge>\n <eui-icon-svg icon=\"close-circle:outline\" fillColor=\"neutral\" size=\"xs\"/>\n </eui-badge>\n }\n </eui-avatar-badge>\n }\n </eui-avatar>\n\n @if (hasMenu || hasToggle) {\n @if (isDropdownOpen) {\n <eui-icon-svg icon=\"chevron-up:sharp\" size=\"s\" class=\"eui-user-profile__drop-indicator\"/>\n } @else {\n <eui-icon-svg icon=\"chevron-down:sharp\" size=\"s\" class=\"eui-user-profile__drop-indicator\"/>\n }\n }\n </button>\n</ng-template>\n","import { Component, HostBinding, ChangeDetectionStrategy, ViewEncapsulation, Input, OnInit, EventEmitter, Output, OnDestroy, booleanAttribute } from '@angular/core';\nimport { UserState } from '@eui/core';\nimport { UserService } from '@eui/core';\nimport { takeUntil } from 'rxjs/operators';\nimport { Subject } from 'rxjs';\n\n@Component({\n selector: 'eui-user-profile-card',\n templateUrl: './user-profile-card.component.html',\n changeDetection: ChangeDetectionStrategy.Default,\n encapsulation: ViewEncapsulation.None,\n})\nexport class EuiUserProfileCardComponent implements OnInit, OnDestroy {\n @HostBinding('class')\n public get cssClasses(): string {\n return 'eui-user-profile-card';\n }\n\n avatarInitials: string;\n userState: UserState;\n isOnline = true;\n\n @Input() impersonateLabel = 'impersonating';\n @Input() showDetailsLabel = 'Show profile details';\n @Input() avatarUrl: string;\n @Input({ transform: booleanAttribute }) isShowAvatarInitials = false;\n\n @Output() showProfileInfo: EventEmitter<void> = new EventEmitter();\n @Output() closeProfileMenu: EventEmitter<void> = new EventEmitter();\n\n private unsubscribeSubject$: Subject<void> = new Subject();\n\n constructor(\n private userService: UserService,\n ) {}\n\n ngOnInit(): void {\n this.userService\n .getState()\n .pipe(\n takeUntil(this.unsubscribeSubject$),\n )\n .subscribe((state) => {\n if (state) {\n const firstNameInitial = state.firstName?.substring(0, 1).toUpperCase();\n const lastNameInitial = state.lastName?.substring(0, 1).toUpperCase();\n this.avatarInitials = `${firstNameInitial}${lastNameInitial}`;\n this.userState = state;\n }\n });\n }\n\n ngOnDestroy(): void {\n this.unsubscribeSubject$.next();\n this.unsubscribeSubject$.complete();\n }\n\n onShowInfoClick(): void {\n this.showProfileInfo.emit();\n }\n\n onClose(): void {\n this.closeProfileMenu.emit();\n }\n}\n","<div class=\"eui-user-profile-card__main-wrapper\">\n <div class=\"eui-user-profile-card__avatar-wrapper\">\n <eui-avatar euiSizeL isFlat>\n <eui-avatar-text *ngIf=\"isShowAvatarInitials; else noAvatarInitials\">\n {{ avatarInitials }}\n </eui-avatar-text>\n <ng-template #noAvatarInitials>\n <eui-avatar-image *ngIf=\"!avatarUrl\"></eui-avatar-image>\n <eui-avatar-image *ngIf=\"avatarUrl\" [imageUrl]=\"avatarUrl\"></eui-avatar-image>\n </ng-template>\n </eui-avatar>\n </div>\n <div class=\"eui-user-profile-card__userInfos\">\n <div class=\"eui-u-f-xl eui-u-mb-s\">{{ userState.fullName }}</div>\n <div *ngIf=\"userState.function\" class=\"eui-user-profile-card__userInfos-item\">\n {{ userState.function }}\n </div>\n <div *ngIf=\"userState.organisation && userState.organisation.code\" class=\"eui-user-profile-card__userInfos-item\">\n {{ userState.organisation.code }}\n </div>\n </div>\n <div class=\"eui-user-profile-card__main-wrapper-right-content\">\n <eui-icon-button icon=\"close:outline\" size=\"s\" euiRounded (buttonClick)=\"onClose()\"/>\n <button euiButton euiIconButton euiInfo euiSizeS class=\"eui-u-ml-auto eui-u-mt-m\" tabindex=\"0\" (click)=\"onShowInfoClick()\" title=\"{{ showDetailsLabel }}\">\n <eui-icon-svg icon=\"information:outline\"></eui-icon-svg>\n </button>\n </div>\n</div>\n\n<ng-container *ngIf=\"userState?.impersonatingUser\">\n <div class=\"eui-user-profile-card__impersonateInfos\">\n <div>{{ userState?.impersonatingUser?.firstName }} {{ userState?.impersonatingUser?.lastName }}</div>\n <div class=\"eui-u-mt-2xs\">{{ impersonateLabel }}</div>\n <div class=\"eui-u-mt-2xs\">\n <strong>{{ userState?.fullName }}</strong>\n </div>\n </div>\n</ng-container>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { EuiDropdownModule } from '@eui/components/eui-dropdown';\nimport { EuiIconModule } from '@eui/components/eui-icon';\nimport { EuiButtonModule } from '@eui/components/eui-button';\nimport { EuiUserProfileMenuComponent } from './user-profile-menu/user-profile-menu.component';\nimport { EuiUserProfileMenuItemComponent } from './user-profile-menu-item/user-profile-menu-item.component';\n\nimport { EuiUserProfileComponent } from './user-profile.component';\nimport { EuiUserProfileCardComponent } from './user-profile-card/user-profile-card.component';\n\nimport { EuiAvatarModule } from '@eui/components/eui-avatar';\nimport { EuiBadgeModule } from '@eui/components/eui-badge';\nimport { EuiIconButtonModule } from '@eui/components/eui-icon-button';\n\nconst COMPONENTS = [EuiUserProfileComponent, EuiUserProfileMenuComponent, EuiUserProfileMenuItemComponent, EuiUserProfileCardComponent];\n\n@NgModule({\n imports: [\n CommonModule,\n EuiIconModule,\n EuiDropdownModule, EuiButtonModule, EuiAvatarModule,\n EuiIconButtonModule,\n EuiBadgeModule,\n ],\n declarations: [...COMPONENTS],\n exports: [...COMPONENTS],\n})\nexport class EuiUserProfileModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i5","i2","i3","i4","i6"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"eui-components-eui-user-profile.mjs","sources":["../../eui-user-profile/user-profile-menu-item/user-profile-menu-item.component.ts","../../eui-user-profile/user-profile-menu/user-profile-menu.component.ts","../../eui-user-profile/user-profile.component.ts","../../eui-user-profile/user-profile.component.html","../../eui-user-profile/user-profile-card/user-profile-card.component.ts","../../eui-user-profile/user-profile-card/user-profile-card.component.html","../../eui-user-profile/user-profile.module.ts","../../eui-user-profile/eui-components-eui-user-profile.ts"],"sourcesContent":["import { Component, HostBinding, ViewEncapsulation, ElementRef } from '@angular/core';\nimport { FocusableOption } from '@angular/cdk/a11y';\n\n@Component({\n selector: 'eui-user-profile-menu-item',\n template: '<ng-content></ng-content>',\n encapsulation: ViewEncapsulation.None,\n})\nexport class EuiUserProfileMenuItemComponent implements FocusableOption {\n @HostBinding('class') class = 'eui-user-profile-menu-item';\n @HostBinding('attr.tabindex') tabindex = '-1';\n @HostBinding('attr.role') role = 'menuitem';\n\n constructor(private element: ElementRef) {}\n\n focus(): void {\n this.element.nativeElement.focus();\n }\n}\n","import {\n Component,\n HostBinding,\n ViewEncapsulation,\n AfterContentInit,\n QueryList,\n ContentChildren,\n OnDestroy,\n HostListener,\n forwardRef,\n} from '@angular/core';\nimport { FocusKeyManager } from '@angular/cdk/a11y';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { EuiUserProfileMenuItemComponent } from '../user-profile-menu-item/user-profile-menu-item.component';\nimport { EuiDropdownService } from '@eui/components/eui-dropdown';\n\n@Component({\n selector: 'eui-user-profile-menu',\n template: '<ng-content></ng-content>',\n encapsulation: ViewEncapsulation.None,\n})\nexport class EuiUserProfileMenuComponent implements AfterContentInit, OnDestroy {\n @HostBinding() class = 'eui-user-profile-menu';\n @HostBinding('attr.role') role = 'menu';\n\n @ContentChildren(forwardRef(() => EuiUserProfileMenuItemComponent)) items: QueryList<EuiUserProfileMenuItemComponent>;\n private focusKeyManager: FocusKeyManager<EuiUserProfileMenuItemComponent>;\n private destroy$: Subject<boolean> = new Subject<boolean>();\n\n constructor(private dropdownService: EuiDropdownService) {}\n\n @HostListener('keydown', ['$event'])\n onKeydown(event): void {\n this.focusKeyManager.onKeydown(event);\n }\n\n ngAfterContentInit(): void {\n this.dropdownService.isDropdownOpen.pipe(takeUntil(this.destroy$)).subscribe((isOpen: boolean) => {\n if (isOpen) {\n this.focusKeyManager = new FocusKeyManager(this.items).withWrap();\n this.focusKeyManager.setFirstItemActive();\n }\n });\n }\n\n ngOnDestroy(): void {\n this.destroy$.next(true);\n this.destroy$.unsubscribe();\n }\n}\n","import { Component, HostBinding, ChangeDetectionStrategy, ViewEncapsulation, Input, OnInit, ViewChild, OnDestroy, Host, Optional, Inject, forwardRef, AfterContentInit, ContentChild, QueryList, AfterViewInit, ContentChildren, ElementRef, booleanAttribute, Renderer2 } from '@angular/core';\nimport { UserState } from '@eui/core';\nimport { UserService } from '@eui/core';\nimport { takeUntil } from 'rxjs/operators';\nimport { EuiDropdownComponent } from '@eui/components/eui-dropdown';\nimport { Subject } from 'rxjs';\nimport { BaseStatesDirective } from '@eui/components/shared';\nimport { EuiUserProfileMenuComponent } from './user-profile-menu/user-profile-menu.component';\n\nexport interface UserProfile extends UserState {\n impersonatingUser?: UserProfile;\n function?: string;\n organisation?: {\n code: string\n }\n}\n\n@Component({\n selector: 'eui-user-profile',\n templateUrl: './user-profile.component.html',\n styleUrls: ['./_styles/_index.scss'],\n changeDetection: ChangeDetectionStrategy.Default,\n encapsulation: ViewEncapsulation.None,\n hostDirectives: [\n {\n directive: BaseStatesDirective,\n inputs: [\n 'euiSizeS',\n 'euiSecondary',\n 'euiPrimary',\n ],\n },\n ],\n})\nexport class EuiUserProfileComponent implements OnInit, OnDestroy, AfterViewInit {\n @HostBinding('class')\n public get cssClasses(): string {\n return [\n this.baseStatesDirective.getCssClasses('eui-user-profile'),\n this.isReverse ? 'eui-user-profile--reverse': '',\n this.isShowAvatarInitials ? 'eui-user-profile--initials': '',\n ].join(' ').trim();\n }\n\n userState: UserProfile;\n isOnline = true;\n avatarInitials: string;\n\n @Input() welcomeLabel = 'Welcome';\n @Input() impersonateLabel = 'impersonating';\n @Input() avatarUrl: string;\n @Input() subInfos: string;\n @Input() statusVariant = 'success';\n\n @Input({ transform: booleanAttribute }) hasMenu = false;\n @Input({ transform: booleanAttribute }) hasWelcomeLabel = true;\n @Input({ transform: booleanAttribute }) isShowAvatarInitials = false;\n @Input({ transform: booleanAttribute }) hasTabNavigation = false;\n @Input({ transform: booleanAttribute }) isReverse = false;\n @Input({ transform: booleanAttribute }) hasToggle = false;\n @Input({ transform: booleanAttribute }) isHeaderUserProfile = false;\n @Input({ transform: booleanAttribute }) isShowUserInfos = true;\n\n @Input({ transform: booleanAttribute }) euiStatusSecondary = false;\n @Input({ transform: booleanAttribute }) euiStatusSuccess = false;\n @Input({ transform: booleanAttribute }) euiStatusDanger = false;\n\n @ViewChild('dropdown') dropdown: EuiDropdownComponent;\n @ContentChildren(forwardRef(() => EuiUserProfileMenuComponent), { descendants: true })\n hasMenuContent: QueryList<EuiUserProfileMenuComponent>;\n\n isDropdownOpen = false;\n\n private unsubscribeSubject$: Subject<void> = new Subject();\n\n constructor(\n private elRef: ElementRef,\n private userService: UserService,\n public baseStatesDirective: BaseStatesDirective,\n ) {\n }\n\n ngOnInit(): void {\n this.userService\n .getState()\n .pipe(takeUntil(this.unsubscribeSubject$))\n .subscribe((state: UserProfile) => {\n if (state) {\n this.userState = state;\n const firstNameInitial = state.firstName?.substring(0, 1).toUpperCase();\n const lastNameInitial = state.lastName?.substring(0, 1).toUpperCase();\n this.avatarInitials = `${firstNameInitial}${lastNameInitial}`;\n }\n });\n }\n\n ngAfterViewInit(): void {\n let hasToolbarItemParent = false, toolbar;\n\n try {\n hasToolbarItemParent = this.elRef.nativeElement.closest('eui-toolbar-item');\n toolbar = this.elRef.nativeElement.closest('eui-toolbar');\n } catch(e) {\n // do nothing\n }\n\n setTimeout(() => {\n if (hasToolbarItemParent) {\n this.baseStatesDirective.euiSizeS = true;\n if (toolbar && toolbar.classList.contains('eui--secondary') || this.baseStatesDirective.euiSecondary) {\n console.log(toolbar);\n this.baseStatesDirective.euiSecondary = true;\n } else {\n this.baseStatesDirective.euiPrimary = true;\n }\n }\n if (hasToolbarItemParent || !this.isHeaderUserProfile) {\n this.hasMenu = this.hasMenuContent.length !== 0;\n }\n });\n }\n\n ngOnDestroy(): void {\n this.unsubscribeSubject$.next();\n this.unsubscribeSubject$.complete();\n }\n\n closeDropdown(): void {\n this.dropdown.closeDropdown();\n this.isDropdownOpen = false;\n }\n\n onDropdownExpand(isOpen: boolean): void {\n this.isDropdownOpen = isOpen;\n }\n}\n","@if (hasMenu) {\n <eui-dropdown [hasTabNavigation]=\"hasTabNavigation\" width=\"340px\" #dropdown (expand)=\"onDropdownExpand($event)\">\n <ng-container *ngTemplateOutlet=\"userProfileContent\"/>\n <eui-dropdown-content>\n <ng-content/>\n </eui-dropdown-content>\n </eui-dropdown>\n} @else {\n <ng-container *ngTemplateOutlet=\"userProfileContent\"/>\n}\n\n<ng-template #userProfileContent>\n <button class=\"eui-user-profile-content\" [tabindex]=\"hasMenu ? '0' : '-1'\" [class.eui-user-profile-content--no-menu]=\"!hasMenu\">\n\n @if (isShowUserInfos) {\n <div class=\"eui-user-profile__infos\">\n @if (userState?.impersonatingUser) {\n <div class=\"eui-user-profile__infos-welcome\">\n @if (hasWelcomeLabel) {\n <span class=\"eui-u-mr-2xs\">{{ welcomeLabel }}</span>\n }\n {{ userState?.impersonatingUser?.firstName }} <strong>{{ userState?.impersonatingUser?.lastName}}</strong>\n <span class=\"eui-u-ml-2xs\">{{ impersonateLabel }}</span>\n </div>\n <div class=\"eui-user-profile__infos-name\">\n {{ userState?.firstName }} <strong>{{ userState?.lastName }}</strong>\n </div>\n @if (subInfos) {\n <div class=\"eui-user-profile__infos-subinfos\">{{ subInfos }}</div>\n }\n } @else {\n @if (hasWelcomeLabel) {\n <div class=\"eui-user-profile__infos-welcome\">{{ welcomeLabel }}</div>\n }\n <div class=\"eui-user-profile__infos-name\">\n {{ userState?.firstName }} <strong>{{ userState?.lastName }}</strong>\n </div>\n @if (subInfos) {\n <div class=\"eui-user-profile__infos-subinfos\">{{ subInfos }}</div>\n }\n }\n </div>\n }\n\n <eui-avatar isFlat [euiSizeS]=\"baseStatesDirective.euiSizeS\" [hasShadow]=\"userState?.impersonatingUser\">\n\n @if (isShowAvatarInitials) {\n <eui-avatar-text>{{ avatarInitials }}</eui-avatar-text>\n } @else {\n <eui-avatar-image [imageUrl]=\"avatarUrl\"/>\n }\n\n @if (euiStatusSecondary || euiStatusSuccess || euiStatusDanger) {\n <eui-avatar-badge position=\"bottom\">\n @if (euiStatusSuccess) {\n <eui-badge euiSuccess euiSizeS euiIconBadge>\n <eui-icon-svg icon=\"checkmark:outline\" size=\"xs\"/>\n </eui-badge>\n } @else if (euiStatusDanger) {\n <eui-badge euiDanger euiSizeS euiIconBadge>\n <eui-icon-svg icon=\"remove:outline\" size=\"xs\"/>\n </eui-badge>\n } @else if (euiStatusSecondary) {\n <eui-badge euiSecondary euiSizeS euiIconBadge>\n <eui-icon-svg icon=\"close-circle:outline\" fillColor=\"neutral\" size=\"xs\"/>\n </eui-badge>\n }\n </eui-avatar-badge>\n }\n </eui-avatar>\n\n @if (hasMenu || hasToggle) {\n @if (isDropdownOpen) {\n <eui-icon-svg icon=\"chevron-up:sharp\" size=\"s\" class=\"eui-user-profile__drop-indicator\"/>\n } @else {\n <eui-icon-svg icon=\"chevron-down:sharp\" size=\"s\" class=\"eui-user-profile__drop-indicator\"/>\n }\n }\n </button>\n</ng-template>\n","import { Component, HostBinding, ChangeDetectionStrategy, ViewEncapsulation, Input, OnInit, EventEmitter, Output, OnDestroy, booleanAttribute } from '@angular/core';\nimport { UserProfile } from '../user-profile.component';\nimport { UserService } from '@eui/core';\nimport { takeUntil } from 'rxjs/operators';\nimport { Subject } from 'rxjs';\n\n@Component({\n selector: 'eui-user-profile-card',\n templateUrl: './user-profile-card.component.html',\n changeDetection: ChangeDetectionStrategy.Default,\n encapsulation: ViewEncapsulation.None,\n})\nexport class EuiUserProfileCardComponent implements OnInit, OnDestroy {\n @HostBinding('class')\n public get cssClasses(): string {\n return 'eui-user-profile-card';\n }\n\n avatarInitials: string;\n userState: UserProfile;\n isOnline = true;\n\n @Input() impersonateLabel = 'impersonating';\n @Input() showDetailsLabel = 'Show profile details';\n @Input() avatarUrl: string;\n @Input({ transform: booleanAttribute }) isShowAvatarInitials = false;\n\n @Output() showProfileInfo: EventEmitter<void> = new EventEmitter();\n @Output() closeProfileMenu: EventEmitter<void> = new EventEmitter();\n\n private unsubscribeSubject$: Subject<void> = new Subject();\n\n constructor(\n private userService: UserService<UserProfile>,\n ) {}\n\n ngOnInit(): void {\n this.userService\n .getState()\n .pipe(\n takeUntil(this.unsubscribeSubject$),\n )\n .subscribe((state) => {\n if (state) {\n const firstNameInitial = state.firstName?.substring(0, 1).toUpperCase();\n const lastNameInitial = state.lastName?.substring(0, 1).toUpperCase();\n this.avatarInitials = `${firstNameInitial}${lastNameInitial}`;\n this.userState = state;\n }\n });\n }\n\n ngOnDestroy(): void {\n this.unsubscribeSubject$.next();\n this.unsubscribeSubject$.complete();\n }\n\n onShowInfoClick(): void {\n this.showProfileInfo.emit();\n }\n\n onClose(): void {\n this.closeProfileMenu.emit();\n }\n}\n","<div class=\"eui-user-profile-card__main-wrapper\">\n <div class=\"eui-user-profile-card__avatar-wrapper\">\n <eui-avatar euiSizeL isFlat>\n <eui-avatar-text *ngIf=\"isShowAvatarInitials; else noAvatarInitials\">\n {{ avatarInitials }}\n </eui-avatar-text>\n <ng-template #noAvatarInitials>\n <eui-avatar-image *ngIf=\"!avatarUrl\"></eui-avatar-image>\n <eui-avatar-image *ngIf=\"avatarUrl\" [imageUrl]=\"avatarUrl\"></eui-avatar-image>\n </ng-template>\n </eui-avatar>\n </div>\n <div class=\"eui-user-profile-card__userInfos\">\n <div class=\"eui-u-f-xl eui-u-mb-s\">{{ userState.fullName }}</div>\n <div *ngIf=\"userState.function\" class=\"eui-user-profile-card__userInfos-item\">\n {{ userState.function }}\n </div>\n <div *ngIf=\"userState.organisation && userState.organisation.code\" class=\"eui-user-profile-card__userInfos-item\">\n {{ userState.organisation.code }}\n </div>\n </div>\n <div class=\"eui-user-profile-card__main-wrapper-right-content\">\n <eui-icon-button icon=\"close:outline\" size=\"s\" euiRounded (buttonClick)=\"onClose()\"/>\n <button euiButton euiIconButton euiInfo euiSizeS class=\"eui-u-ml-auto eui-u-mt-m\" tabindex=\"0\" (click)=\"onShowInfoClick()\" title=\"{{ showDetailsLabel }}\">\n <eui-icon-svg icon=\"information:outline\"></eui-icon-svg>\n </button>\n </div>\n</div>\n\n<ng-container *ngIf=\"userState?.impersonatingUser\">\n <div class=\"eui-user-profile-card__impersonateInfos\">\n <div>{{ userState?.impersonatingUser?.firstName }} {{ userState?.impersonatingUser?.lastName }}</div>\n <div class=\"eui-u-mt-2xs\">{{ impersonateLabel }}</div>\n <div class=\"eui-u-mt-2xs\">\n <strong>{{ userState?.fullName }}</strong>\n </div>\n </div>\n</ng-container>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { EuiDropdownModule } from '@eui/components/eui-dropdown';\nimport { EuiIconModule } from '@eui/components/eui-icon';\nimport { EuiButtonModule } from '@eui/components/eui-button';\nimport { EuiUserProfileMenuComponent } from './user-profile-menu/user-profile-menu.component';\nimport { EuiUserProfileMenuItemComponent } from './user-profile-menu-item/user-profile-menu-item.component';\n\nimport { EuiUserProfileComponent } from './user-profile.component';\nimport { EuiUserProfileCardComponent } from './user-profile-card/user-profile-card.component';\n\nimport { EuiAvatarModule } from '@eui/components/eui-avatar';\nimport { EuiBadgeModule } from '@eui/components/eui-badge';\nimport { EuiIconButtonModule } from '@eui/components/eui-icon-button';\n\nconst COMPONENTS = [EuiUserProfileComponent, EuiUserProfileMenuComponent, EuiUserProfileMenuItemComponent, EuiUserProfileCardComponent];\n\n@NgModule({\n imports: [\n CommonModule,\n EuiIconModule,\n EuiDropdownModule, EuiButtonModule, EuiAvatarModule,\n EuiIconButtonModule,\n EuiBadgeModule,\n ],\n declarations: [...COMPONENTS],\n exports: [...COMPONENTS],\n})\nexport class EuiUserProfileModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i5","i2","i3","i4","i6"],"mappings":"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"}
|
@@ -2298,11 +2298,11 @@ class EuiNotificationsComponent {
|
|
2298
2298
|
return unreadNotifications.length;
|
2299
2299
|
}
|
2300
2300
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: EuiNotificationsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
2301
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.0.2", type: EuiNotificationsComponent, selector: "eui-notifications", inputs: { count: "count", items: "items", unreadLabel: "unreadLabel", totalLabel: "totalLabel", markAsReadLabel: "markAsReadLabel", markAsUnReadLabel: "markAsUnReadLabel", markAllAsReadLabel: "markAllAsReadLabel", settingsLabel: "settingsLabel", refreshLabel: "refreshLabel", viewAllNotificationsLabel: "viewAllNotificationsLabel", headerTitleLabel: "headerTitleLabel", noNotificationFoundLabel: "noNotificationFoundLabel", nbUnreadCount: "nbUnreadCount", dateFormat: "dateFormat", noNotificationFoundLink: ["noNotificationFoundLink", "noNotificationFoundLink", booleanAttribute], isShowMarkAsRead: ["isShowMarkAsRead", "isShowMarkAsRead", booleanAttribute], isShowViewAllAction: ["isShowViewAllAction", "isShowViewAllAction", booleanAttribute], isHidePanelOnViewAllAction: ["isHidePanelOnViewAllAction", "isHidePanelOnViewAllAction", booleanAttribute], customUnreadCount: ["customUnreadCount", "customUnreadCount", booleanAttribute], isShowMarkAllAsReadButton: ["isShowMarkAllAsReadButton", "isShowMarkAllAsReadButton", booleanAttribute], isShowSettingsButton: ["isShowSettingsButton", "isShowSettingsButton", booleanAttribute], isShowRefreshButton: ["isShowRefreshButton", "isShowRefreshButton", booleanAttribute] }, outputs: { refreshClick: "refreshClick", notificationsClick: "notificationsClick", viewAllClick: "viewAllClick", settingsClick: "settingsClick", markAllAsReadClick: "markAllAsReadClick", noNotificationFoundClick: "noNotificationFoundClick", itemClick: "itemClick", itemMarkAsReadClick: "itemMarkAsReadClick" }, host: { listeners: { "body:click": "onHide()" }, properties: { "class": "this.string" } }, usesOnChanges: true, ngImport: i0, template: "<eui-icon-button\n class=\"eui-notifications__trigger\"\n icon=\"notifications:outline\"\n fillColor=\"white\"\n (click)=\"onClicked($event)\"\n (keydown.enter)=\"onClicked($event)\"\n (keydown.esc)=\"onHide()\">\n <eui-badge *ngIf=\"count\" euiDanger [maxCharCount]=\"2\">{{ count }}</eui-badge>\n</eui-icon-button>\n\n<eui-overlay [isActive]=\"isOverlayActive\" class=\"eui-overlay-offset--width-30\">\n <eui-overlay-header>\n <div class=\"eui-notifications__header-title\">\n <div class=\"eui-notifications__header-title-label\">\n {{ headerTitleLabel ? headerTitleLabel : ('eui.MYNOTIFICATIONS' | translate) }}\n <span\n *ngIf=\"items\"\n class=\"eui-u-cursor-help eui-u-ml-s\"\n attr.aria-label=\"{{ unreadLabel ? unreadLabel : ('eui.NOTIFICATIONSUNREAD' | translate) }}\"\n title=\"{{ unreadLabel ? unreadLabel : ('eui.NOTIFICATIONSUNREAD' | translate) }}\">\n </span>\n <eui-badge *ngIf=\"count\">{{ count }}</eui-badge>\n <eui-badge *ngIf=\"!count\">{{ items.length }}</eui-badge>\n </div>\n </div>\n\n <div *ngIf=\"items\" class=\"eui-notifications__header-actions\">\n <button\n euiButton\n euiPrimary\n euiRounded\n euiIconButton\n euiBasicButton\n euiSizeS\n type=\"button\"\n *ngIf=\"isShowMarkAllAsReadButton\"\n [attr.aria-label]=\"markAllAsReadLabel ? markAllAsReadLabel : ('eui.NOTIFICATIONMARKALLASREAD' | translate)\"\n title=\"{{ markAllAsReadLabel ? markAllAsReadLabel : ('eui.NOTIFICATIONMARKALLASREAD' | translate) }}\"\n (click)=\"onMarkAllAsRead($event)\">\n <eui-icon-svg icon=\"checkmark-done:sharp\"></eui-icon-svg>\n </button>\n <button\n euiButton\n euiPrimary\n euiRounded\n euiIconButton\n euiBasicButton\n euiSizeS\n type=\"button\"\n *ngIf=\"isShowSettingsButton\"\n [attr.aria-label]=\"settingsLabel ? settingsLabel : ('eui.SETTINGS' | translate)\"\n title=\"{{ settingsLabel ? settingsLabel : ('eui.SETTINGS' | translate) }}\"\n (click)=\"onSettings($event)\">\n <eui-icon-svg icon=\"settings:sharp\"></eui-icon-svg>\n </button>\n <button\n euiButton\n euiPrimary\n euiRounded\n euiIconButton\n euiBasicButton\n euiSizeS\n type=\"button\"\n *ngIf=\"isShowRefreshButton\"\n [attr.aria-label]=\"refreshLabel ? refreshLabel : ('eui.REFRESH' | translate)\"\n title=\"{{ refreshLabel ? refreshLabel : ('eui.REFRESH' | translate) }}\"\n (click)=\"onRefresh($event)\">\n <eui-icon-svg icon=\"refresh:sharp\"></eui-icon-svg>\n </button>\n </div>\n </eui-overlay-header>\n\n <eui-overlay-body>\n <ul class=\"eui-notifications-items\" *ngIf=\"items\">\n <eui-notification-item\n *ngFor=\"let item of items; trackBy: trackByFn\"\n [item]=\"item\"\n [dateFormat]=\"dateFormat\"\n [markAsReadLabel]=\"markAsReadLabel\"\n [isShowMarkAsRead]=\"isShowMarkAsRead\"\n (itemClick)=\"onItemClick($event)\"\n (itemMarkAsRead)=\"onItemMarkAsRead($event)\">\n </eui-notification-item>\n </ul>\n </eui-overlay-body>\n\n <eui-overlay-footer>\n <ng-template [ngIf]=\"items?.length > 0\">\n <a (click)=\"onViewAllClick($event)\" class=\"eui-u-text-link\">\n <strong>{{ viewAllNotificationsLabel ? viewAllNotificationsLabel : ('eui.VIEWALLNOTIFICATIONS' | translate) }}</strong>\n </a>\n </ng-template>\n <ng-template [ngIf]=\"items?.length === 0\">\n <div class=\"ux-notification__item-content\" *ngIf=\"!noNotificationFoundLink\">\n {{ noNotificationFoundLabel ? noNotificationFoundLabel : ('eui.NONOTIFICATIONFOUND' | translate) }}\n </div>\n <div class=\"ux-notification__item-content\" *ngIf=\"noNotificationFoundLink\">\n <a (click)=\"onNoNotificationFoundClick()\" class=\"eui-u-text-link\">\n {{ noNotificationFoundLabel ? noNotificationFoundLabel : ('eui.NONOTIFICATIONFOUND' | translate) }}\n </a>\n </div>\n </ng-template>\n </eui-overlay-footer>\n</eui-overlay>\n", styles: [".eui-overlay-header{background-color:var(--eui-c-neutral-bg-light);border-bottom:1px solid var(--eui-c-neutral-lightest)}.eui-notifications-items{margin:0;padding:0}.eui-notifications__trigger .eui-icon-svg svg{position:relative;top:var(--eui-s-2xs);transform:scale(1.1)}.eui-notifications__header{align-items:center;border-bottom:1px solid var(--eui-c-neutral-bg-light);color:var(--eui-c-text);cursor:default;display:flex;padding:var(--eui-s-xs) var(--eui-s-m)}.eui-notifications__header-title{display:flex}.eui-notifications__header-title-label{font:var(--eui-f-l-bold)}.eui-notifications__header-title-subLabel{margin-top:var(--eui-s-xs);font:var(--eui-f-m)}.eui-notifications__header-actions{align-items:center;display:flex;margin-left:auto}.eui-notification-item{display:flex;flex-direction:column;overflow-y:auto;margin:0}.eui-notification-item-content{background-color:var(--eui-c-info-bg);border-bottom:1px solid var(--eui-c-neutral-lightest);display:flex;flex-direction:column;min-height:var(--eui-s-4xl);padding:var(--eui-s-s) var(--eui-s-m);cursor:pointer}.eui-notification-item-content:hover{background-color:var(--eui-c-neutral-bg-light)!important}.eui-notification-item-content-top{align-items:center;display:flex;justify-content:space-between}.eui-notification-item-content-top__date{display:flex;align-items:center}.eui-notification-item-content-top__date-icon{align-items:center;display:flex;position:relative}.eui-notification-item-content-top__date-icon--rotated{transform:rotate(20deg)}.eui-notification-item-content-top__date-icon-dot{position:absolute;top:0;right:0}.eui-notification-item-content-middle{margin:var(--eui-s-2xs) 0}.eui-notification-item-content-middle__sub-label{margin-top:var(--eui-s-2xs)}.eui-notification-item-content-bottom{display:flex;justify-content:flex-end}\n"], dependencies: [{ kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$6.EuiOverlayHeaderComponent, selector: "eui-overlay-header" }, { kind: "component", type: i2$6.EuiOverlayBodyComponent, selector: "eui-overlay-body" }, { kind: "component", type: i2$6.EuiOverlayFooterComponent, selector: "eui-overlay-footer" }, { kind: "component", type: i2$6.EuiOverlayComponent, selector: "eui-overlay", inputs: ["isActive", "euiHighlighted", "hasClosedOnClickOutside", "position", "width", "fixedWidth"], outputs: ["activeState"] }, { kind: "component", type: i2$1.EuiButtonComponent, selector: "button[euiButton], a[euiButton]", inputs: ["e2eAttr", "id", "euiBasicButton", "euiButtonCall", "euiBlockButton", "euiIconButton", "euiLineWrap", "isChecked", "euiDisabled"], outputs: ["buttonClick"] }, { kind: "component", type: i4$3.EuiBadgeComponent, selector: "div[euiBadge], span[euiBadge], eui-badge", inputs: ["e2eAttr", "aria-label", "maxCharCount", "charReplacement", "euiIconBadge", "euiDottedBadge"] }, { kind: "component", type: i2$2.EuiIconSvgComponent, selector: "eui-icon-svg, span[euiIconSvg], i[euiIconSvg]", inputs: ["icon", "fillColor", "set", "size", "style", "iconUrl", "transform", "euiVariant", "aria-label", "ariaHidden", "focusable", "isLoading", "isInputIcon", "euiStart", "euiEnd"] }, { kind: "component", type: i4$1.EuiIconButtonComponent, selector: "eui-icon-button", inputs: ["icon", "fillColor", "size", "ariaLabel", "tabindex", "hasNoPadding", "hasFocusHoverColor", "hasFocusHoverBg", "euiRounded", "euiDisabled"], outputs: ["buttonClick"] }, { kind: "component", type: EuiNotificationItemComponent, selector: "eui-notification-item", inputs: ["markAsReadLabel", "item", "dateFormat", "isShowMarkAsRead"], outputs: ["itemClick", "itemMarkAsRead"] }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None }); }
|
2301
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.0.2", type: EuiNotificationsComponent, selector: "eui-notifications", inputs: { count: "count", items: "items", unreadLabel: "unreadLabel", totalLabel: "totalLabel", markAsReadLabel: "markAsReadLabel", markAsUnReadLabel: "markAsUnReadLabel", markAllAsReadLabel: "markAllAsReadLabel", settingsLabel: "settingsLabel", refreshLabel: "refreshLabel", viewAllNotificationsLabel: "viewAllNotificationsLabel", headerTitleLabel: "headerTitleLabel", noNotificationFoundLabel: "noNotificationFoundLabel", nbUnreadCount: "nbUnreadCount", dateFormat: "dateFormat", noNotificationFoundLink: ["noNotificationFoundLink", "noNotificationFoundLink", booleanAttribute], isShowMarkAsRead: ["isShowMarkAsRead", "isShowMarkAsRead", booleanAttribute], isShowViewAllAction: ["isShowViewAllAction", "isShowViewAllAction", booleanAttribute], isHidePanelOnViewAllAction: ["isHidePanelOnViewAllAction", "isHidePanelOnViewAllAction", booleanAttribute], customUnreadCount: ["customUnreadCount", "customUnreadCount", booleanAttribute], isShowMarkAllAsReadButton: ["isShowMarkAllAsReadButton", "isShowMarkAllAsReadButton", booleanAttribute], isShowSettingsButton: ["isShowSettingsButton", "isShowSettingsButton", booleanAttribute], isShowRefreshButton: ["isShowRefreshButton", "isShowRefreshButton", booleanAttribute] }, outputs: { refreshClick: "refreshClick", notificationsClick: "notificationsClick", viewAllClick: "viewAllClick", settingsClick: "settingsClick", markAllAsReadClick: "markAllAsReadClick", noNotificationFoundClick: "noNotificationFoundClick", itemClick: "itemClick", itemMarkAsReadClick: "itemMarkAsReadClick" }, host: { listeners: { "body:click": "onHide()" }, properties: { "class": "this.string" } }, usesOnChanges: true, ngImport: i0, template: "<eui-icon-button\n class=\"eui-notifications__trigger\"\n icon=\"notifications:outline\"\n fillColor=\"white\"\n (click)=\"onClicked($event)\"\n (keydown.enter)=\"onClicked($event)\"\n (keydown.esc)=\"onHide()\">\n <eui-badge *ngIf=\"count\" euiDanger [maxCharCount]=\"2\">{{ count }}</eui-badge>\n</eui-icon-button>\n\n<eui-overlay [isActive]=\"isOverlayActive\" class=\"eui-overlay-offset--width-30\">\n <eui-overlay-header>\n <div class=\"eui-notifications__header-title\">\n <div class=\"eui-notifications__header-title-label\">\n {{ headerTitleLabel ? headerTitleLabel : ('eui.MYNOTIFICATIONS' | translate) }}\n <span\n *ngIf=\"items\"\n class=\"eui-u-cursor-help eui-u-ml-s\"\n attr.aria-label=\"{{ unreadLabel ? unreadLabel : ('eui.NOTIFICATIONSUNREAD' | translate) }}\"\n title=\"{{ unreadLabel ? unreadLabel : ('eui.NOTIFICATIONSUNREAD' | translate) }}\">\n </span>\n <eui-badge *ngIf=\"count\">{{ count }}</eui-badge>\n <eui-badge *ngIf=\"!count\">{{ items.length }}</eui-badge>\n </div>\n </div>\n\n <div *ngIf=\"items\" class=\"eui-notifications__header-actions\">\n <button\n euiButton\n euiPrimary\n euiRounded\n euiIconButton\n euiBasicButton\n euiSizeS\n type=\"button\"\n *ngIf=\"isShowMarkAllAsReadButton\"\n [attr.aria-label]=\"markAllAsReadLabel ? markAllAsReadLabel : ('eui.NOTIFICATIONMARKALLASREAD' | translate)\"\n title=\"{{ markAllAsReadLabel ? markAllAsReadLabel : ('eui.NOTIFICATIONMARKALLASREAD' | translate) }}\"\n (click)=\"onMarkAllAsRead($event)\">\n <eui-icon-svg icon=\"checkmark-done:outline\" fillColor=\"neutral\"></eui-icon-svg>\n </button>\n <button\n euiButton\n euiPrimary\n euiRounded\n euiIconButton\n euiBasicButton\n euiSizeS\n type=\"button\"\n *ngIf=\"isShowSettingsButton\"\n [attr.aria-label]=\"settingsLabel ? settingsLabel : ('eui.SETTINGS' | translate)\"\n title=\"{{ settingsLabel ? settingsLabel : ('eui.SETTINGS' | translate) }}\"\n (click)=\"onSettings($event)\">\n <eui-icon-svg icon=\"settings:outline\" fillColor=\"neutral\"></eui-icon-svg>\n </button>\n <button\n euiButton\n euiPrimary\n euiRounded\n euiIconButton\n euiBasicButton\n euiSizeS\n type=\"button\"\n *ngIf=\"isShowRefreshButton\"\n [attr.aria-label]=\"refreshLabel ? refreshLabel : ('eui.REFRESH' | translate)\"\n title=\"{{ refreshLabel ? refreshLabel : ('eui.REFRESH' | translate) }}\"\n (click)=\"onRefresh($event)\">\n <eui-icon-svg icon=\"refresh:outline\" fillColor=\"neutral\"></eui-icon-svg>\n </button>\n </div>\n </eui-overlay-header>\n\n <eui-overlay-body>\n <ul class=\"eui-notifications-items\" *ngIf=\"items\">\n <eui-notification-item\n *ngFor=\"let item of items; trackBy: trackByFn\"\n [item]=\"item\"\n [dateFormat]=\"dateFormat\"\n [markAsReadLabel]=\"markAsReadLabel\"\n [isShowMarkAsRead]=\"isShowMarkAsRead\"\n (itemClick)=\"onItemClick($event)\"\n (itemMarkAsRead)=\"onItemMarkAsRead($event)\">\n </eui-notification-item>\n </ul>\n </eui-overlay-body>\n\n <eui-overlay-footer>\n <ng-template [ngIf]=\"items?.length > 0\">\n <a (click)=\"onViewAllClick($event)\" class=\"eui-u-text-link\">\n <strong>{{ viewAllNotificationsLabel ? viewAllNotificationsLabel : ('eui.VIEWALLNOTIFICATIONS' | translate) }}</strong>\n </a>\n </ng-template>\n <ng-template [ngIf]=\"items?.length === 0\">\n <div class=\"ux-notification__item-content\" *ngIf=\"!noNotificationFoundLink\">\n {{ noNotificationFoundLabel ? noNotificationFoundLabel : ('eui.NONOTIFICATIONFOUND' | translate) }}\n </div>\n <div class=\"ux-notification__item-content\" *ngIf=\"noNotificationFoundLink\">\n <a (click)=\"onNoNotificationFoundClick()\" class=\"eui-u-text-link\">\n {{ noNotificationFoundLabel ? noNotificationFoundLabel : ('eui.NONOTIFICATIONFOUND' | translate) }}\n </a>\n </div>\n </ng-template>\n </eui-overlay-footer>\n</eui-overlay>\n", styles: [".eui-overlay-header{background-color:var(--eui-c-neutral-bg-light);border-bottom:1px solid var(--eui-c-neutral-lightest)}.eui-notifications-items{margin:0;padding:0}.eui-notifications__trigger .eui-icon-svg svg{position:relative;top:var(--eui-s-2xs);transform:scale(1.1)}.eui-notifications__header{align-items:center;border-bottom:1px solid var(--eui-c-neutral-bg-light);color:var(--eui-c-text);cursor:default;display:flex;padding:var(--eui-s-xs) var(--eui-s-m)}.eui-notifications__header-title{display:flex}.eui-notifications__header-title-label{font:var(--eui-f-l-bold)}.eui-notifications__header-title-subLabel{margin-top:var(--eui-s-xs);font:var(--eui-f-m)}.eui-notifications__header-actions{align-items:center;display:flex;margin-left:auto}.eui-notification-item{display:flex;flex-direction:column;overflow-y:auto;margin:0}.eui-notification-item-content{background-color:var(--eui-c-info-bg);border-bottom:1px solid var(--eui-c-neutral-lightest);display:flex;flex-direction:column;min-height:var(--eui-s-4xl);padding:var(--eui-s-s) var(--eui-s-m);cursor:pointer}.eui-notification-item-content:hover{background-color:var(--eui-c-neutral-bg-light)!important}.eui-notification-item-content-top{align-items:center;display:flex;justify-content:space-between}.eui-notification-item-content-top__date{display:flex;align-items:center}.eui-notification-item-content-top__date-icon{align-items:center;display:flex;position:relative}.eui-notification-item-content-top__date-icon--rotated{transform:rotate(20deg)}.eui-notification-item-content-top__date-icon-dot{position:absolute;top:0;right:0}.eui-notification-item-content-middle{margin:var(--eui-s-2xs) 0}.eui-notification-item-content-middle__sub-label{margin-top:var(--eui-s-2xs)}.eui-notification-item-content-bottom{display:flex;justify-content:flex-end}\n"], dependencies: [{ kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$6.EuiOverlayHeaderComponent, selector: "eui-overlay-header" }, { kind: "component", type: i2$6.EuiOverlayBodyComponent, selector: "eui-overlay-body" }, { kind: "component", type: i2$6.EuiOverlayFooterComponent, selector: "eui-overlay-footer" }, { kind: "component", type: i2$6.EuiOverlayComponent, selector: "eui-overlay", inputs: ["isActive", "euiHighlighted", "hasClosedOnClickOutside", "position", "width", "fixedWidth"], outputs: ["activeState"] }, { kind: "component", type: i2$1.EuiButtonComponent, selector: "button[euiButton], a[euiButton]", inputs: ["e2eAttr", "id", "euiBasicButton", "euiButtonCall", "euiBlockButton", "euiIconButton", "euiLineWrap", "isChecked", "euiDisabled"], outputs: ["buttonClick"] }, { kind: "component", type: i4$3.EuiBadgeComponent, selector: "div[euiBadge], span[euiBadge], eui-badge", inputs: ["e2eAttr", "aria-label", "maxCharCount", "charReplacement", "euiIconBadge", "euiDottedBadge"] }, { kind: "component", type: i2$2.EuiIconSvgComponent, selector: "eui-icon-svg, span[euiIconSvg], i[euiIconSvg]", inputs: ["icon", "fillColor", "set", "size", "style", "iconUrl", "transform", "euiVariant", "aria-label", "ariaHidden", "focusable", "isLoading", "isInputIcon", "euiStart", "euiEnd"] }, { kind: "component", type: i4$1.EuiIconButtonComponent, selector: "eui-icon-button", inputs: ["icon", "fillColor", "size", "ariaLabel", "tabindex", "hasNoPadding", "hasFocusHoverColor", "hasFocusHoverBg", "euiRounded", "euiDisabled"], outputs: ["buttonClick"] }, { kind: "component", type: EuiNotificationItemComponent, selector: "eui-notification-item", inputs: ["markAsReadLabel", "item", "dateFormat", "isShowMarkAsRead"], outputs: ["itemClick", "itemMarkAsRead"] }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None }); }
|
2302
2302
|
}
|
2303
2303
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: EuiNotificationsComponent, decorators: [{
|
2304
2304
|
type: Component,
|
2305
|
-
args: [{ selector: 'eui-notifications', changeDetection: ChangeDetectionStrategy.Default, encapsulation: ViewEncapsulation.None, template: "<eui-icon-button\n class=\"eui-notifications__trigger\"\n icon=\"notifications:outline\"\n fillColor=\"white\"\n (click)=\"onClicked($event)\"\n (keydown.enter)=\"onClicked($event)\"\n (keydown.esc)=\"onHide()\">\n <eui-badge *ngIf=\"count\" euiDanger [maxCharCount]=\"2\">{{ count }}</eui-badge>\n</eui-icon-button>\n\n<eui-overlay [isActive]=\"isOverlayActive\" class=\"eui-overlay-offset--width-30\">\n <eui-overlay-header>\n <div class=\"eui-notifications__header-title\">\n <div class=\"eui-notifications__header-title-label\">\n {{ headerTitleLabel ? headerTitleLabel : ('eui.MYNOTIFICATIONS' | translate) }}\n <span\n *ngIf=\"items\"\n class=\"eui-u-cursor-help eui-u-ml-s\"\n attr.aria-label=\"{{ unreadLabel ? unreadLabel : ('eui.NOTIFICATIONSUNREAD' | translate) }}\"\n title=\"{{ unreadLabel ? unreadLabel : ('eui.NOTIFICATIONSUNREAD' | translate) }}\">\n </span>\n <eui-badge *ngIf=\"count\">{{ count }}</eui-badge>\n <eui-badge *ngIf=\"!count\">{{ items.length }}</eui-badge>\n </div>\n </div>\n\n <div *ngIf=\"items\" class=\"eui-notifications__header-actions\">\n <button\n euiButton\n euiPrimary\n euiRounded\n euiIconButton\n euiBasicButton\n euiSizeS\n type=\"button\"\n *ngIf=\"isShowMarkAllAsReadButton\"\n [attr.aria-label]=\"markAllAsReadLabel ? markAllAsReadLabel : ('eui.NOTIFICATIONMARKALLASREAD' | translate)\"\n title=\"{{ markAllAsReadLabel ? markAllAsReadLabel : ('eui.NOTIFICATIONMARKALLASREAD' | translate) }}\"\n (click)=\"onMarkAllAsRead($event)\">\n <eui-icon-svg icon=\"checkmark-done:
|
2305
|
+
args: [{ selector: 'eui-notifications', changeDetection: ChangeDetectionStrategy.Default, encapsulation: ViewEncapsulation.None, template: "<eui-icon-button\n class=\"eui-notifications__trigger\"\n icon=\"notifications:outline\"\n fillColor=\"white\"\n (click)=\"onClicked($event)\"\n (keydown.enter)=\"onClicked($event)\"\n (keydown.esc)=\"onHide()\">\n <eui-badge *ngIf=\"count\" euiDanger [maxCharCount]=\"2\">{{ count }}</eui-badge>\n</eui-icon-button>\n\n<eui-overlay [isActive]=\"isOverlayActive\" class=\"eui-overlay-offset--width-30\">\n <eui-overlay-header>\n <div class=\"eui-notifications__header-title\">\n <div class=\"eui-notifications__header-title-label\">\n {{ headerTitleLabel ? headerTitleLabel : ('eui.MYNOTIFICATIONS' | translate) }}\n <span\n *ngIf=\"items\"\n class=\"eui-u-cursor-help eui-u-ml-s\"\n attr.aria-label=\"{{ unreadLabel ? unreadLabel : ('eui.NOTIFICATIONSUNREAD' | translate) }}\"\n title=\"{{ unreadLabel ? unreadLabel : ('eui.NOTIFICATIONSUNREAD' | translate) }}\">\n </span>\n <eui-badge *ngIf=\"count\">{{ count }}</eui-badge>\n <eui-badge *ngIf=\"!count\">{{ items.length }}</eui-badge>\n </div>\n </div>\n\n <div *ngIf=\"items\" class=\"eui-notifications__header-actions\">\n <button\n euiButton\n euiPrimary\n euiRounded\n euiIconButton\n euiBasicButton\n euiSizeS\n type=\"button\"\n *ngIf=\"isShowMarkAllAsReadButton\"\n [attr.aria-label]=\"markAllAsReadLabel ? markAllAsReadLabel : ('eui.NOTIFICATIONMARKALLASREAD' | translate)\"\n title=\"{{ markAllAsReadLabel ? markAllAsReadLabel : ('eui.NOTIFICATIONMARKALLASREAD' | translate) }}\"\n (click)=\"onMarkAllAsRead($event)\">\n <eui-icon-svg icon=\"checkmark-done:outline\" fillColor=\"neutral\"></eui-icon-svg>\n </button>\n <button\n euiButton\n euiPrimary\n euiRounded\n euiIconButton\n euiBasicButton\n euiSizeS\n type=\"button\"\n *ngIf=\"isShowSettingsButton\"\n [attr.aria-label]=\"settingsLabel ? settingsLabel : ('eui.SETTINGS' | translate)\"\n title=\"{{ settingsLabel ? settingsLabel : ('eui.SETTINGS' | translate) }}\"\n (click)=\"onSettings($event)\">\n <eui-icon-svg icon=\"settings:outline\" fillColor=\"neutral\"></eui-icon-svg>\n </button>\n <button\n euiButton\n euiPrimary\n euiRounded\n euiIconButton\n euiBasicButton\n euiSizeS\n type=\"button\"\n *ngIf=\"isShowRefreshButton\"\n [attr.aria-label]=\"refreshLabel ? refreshLabel : ('eui.REFRESH' | translate)\"\n title=\"{{ refreshLabel ? refreshLabel : ('eui.REFRESH' | translate) }}\"\n (click)=\"onRefresh($event)\">\n <eui-icon-svg icon=\"refresh:outline\" fillColor=\"neutral\"></eui-icon-svg>\n </button>\n </div>\n </eui-overlay-header>\n\n <eui-overlay-body>\n <ul class=\"eui-notifications-items\" *ngIf=\"items\">\n <eui-notification-item\n *ngFor=\"let item of items; trackBy: trackByFn\"\n [item]=\"item\"\n [dateFormat]=\"dateFormat\"\n [markAsReadLabel]=\"markAsReadLabel\"\n [isShowMarkAsRead]=\"isShowMarkAsRead\"\n (itemClick)=\"onItemClick($event)\"\n (itemMarkAsRead)=\"onItemMarkAsRead($event)\">\n </eui-notification-item>\n </ul>\n </eui-overlay-body>\n\n <eui-overlay-footer>\n <ng-template [ngIf]=\"items?.length > 0\">\n <a (click)=\"onViewAllClick($event)\" class=\"eui-u-text-link\">\n <strong>{{ viewAllNotificationsLabel ? viewAllNotificationsLabel : ('eui.VIEWALLNOTIFICATIONS' | translate) }}</strong>\n </a>\n </ng-template>\n <ng-template [ngIf]=\"items?.length === 0\">\n <div class=\"ux-notification__item-content\" *ngIf=\"!noNotificationFoundLink\">\n {{ noNotificationFoundLabel ? noNotificationFoundLabel : ('eui.NONOTIFICATIONFOUND' | translate) }}\n </div>\n <div class=\"ux-notification__item-content\" *ngIf=\"noNotificationFoundLink\">\n <a (click)=\"onNoNotificationFoundClick()\" class=\"eui-u-text-link\">\n {{ noNotificationFoundLabel ? noNotificationFoundLabel : ('eui.NONOTIFICATIONFOUND' | translate) }}\n </a>\n </div>\n </ng-template>\n </eui-overlay-footer>\n</eui-overlay>\n", styles: [".eui-overlay-header{background-color:var(--eui-c-neutral-bg-light);border-bottom:1px solid var(--eui-c-neutral-lightest)}.eui-notifications-items{margin:0;padding:0}.eui-notifications__trigger .eui-icon-svg svg{position:relative;top:var(--eui-s-2xs);transform:scale(1.1)}.eui-notifications__header{align-items:center;border-bottom:1px solid var(--eui-c-neutral-bg-light);color:var(--eui-c-text);cursor:default;display:flex;padding:var(--eui-s-xs) var(--eui-s-m)}.eui-notifications__header-title{display:flex}.eui-notifications__header-title-label{font:var(--eui-f-l-bold)}.eui-notifications__header-title-subLabel{margin-top:var(--eui-s-xs);font:var(--eui-f-m)}.eui-notifications__header-actions{align-items:center;display:flex;margin-left:auto}.eui-notification-item{display:flex;flex-direction:column;overflow-y:auto;margin:0}.eui-notification-item-content{background-color:var(--eui-c-info-bg);border-bottom:1px solid var(--eui-c-neutral-lightest);display:flex;flex-direction:column;min-height:var(--eui-s-4xl);padding:var(--eui-s-s) var(--eui-s-m);cursor:pointer}.eui-notification-item-content:hover{background-color:var(--eui-c-neutral-bg-light)!important}.eui-notification-item-content-top{align-items:center;display:flex;justify-content:space-between}.eui-notification-item-content-top__date{display:flex;align-items:center}.eui-notification-item-content-top__date-icon{align-items:center;display:flex;position:relative}.eui-notification-item-content-top__date-icon--rotated{transform:rotate(20deg)}.eui-notification-item-content-top__date-icon-dot{position:absolute;top:0;right:0}.eui-notification-item-content-middle{margin:var(--eui-s-2xs) 0}.eui-notification-item-content-middle__sub-label{margin-top:var(--eui-s-2xs)}.eui-notification-item-content-bottom{display:flex;justify-content:flex-end}\n"] }]
|
2306
2306
|
}], propDecorators: { refreshClick: [{
|
2307
2307
|
type: Output
|
2308
2308
|
}], notificationsClick: [{
|