@lucca-front/ng 18.2.0 → 18.2.2
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/esm2022/date/input/date-input.directive.mjs +3 -3
- package/esm2022/date/select/date-select-input.component.mjs +3 -3
- package/esm2022/dialog/dialog/dialog.component.mjs +2 -2
- package/esm2022/dialog/dialog-footer/dialog-footer.component.mjs +2 -2
- package/esm2022/dialog/dialog-header/dialog-header.component.mjs +3 -3
- package/esm2022/form-field/form-field.component.mjs +3 -3
- package/esm2022/forms/multilanguage-input/multilanguage-input.component.mjs +2 -2
- package/esm2022/forms/phone-number-input/phone-number-input.component.mjs +95 -36
- package/esm2022/forms/phone-number-input/validators.mjs +8 -16
- package/esm2022/multi-select/input/select-input.component.mjs +3 -3
- package/esm2022/popover2/content/popover-content/popover-content.component.mjs +3 -3
- package/esm2022/popover2/popover.directive.mjs +9 -2
- package/esm2022/popup-employee/card/panel/user-popover-panel.component.mjs +3 -3
- package/esm2022/simple-select/input/select-input.component.mjs +3 -3
- package/esm2022/skeleton/skeleton-field/skeleton-field.component.mjs +2 -2
- package/esm2022/tag/tag.component.mjs +3 -3
- package/esm2022/toast/toasts.component.mjs +3 -3
- package/esm2022/tooltip/trigger/tooltip-trigger.directive.mjs +29 -19
- package/fesm2022/lucca-front-ng-date.mjs +4 -4
- package/fesm2022/lucca-front-ng-date.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-dialog.mjs +6 -6
- package/fesm2022/lucca-front-ng-dialog.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-form-field.mjs +2 -2
- package/fesm2022/lucca-front-ng-form-field.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-forms-phone-number-input.mjs +100 -49
- package/fesm2022/lucca-front-ng-forms-phone-number-input.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-forms.mjs +1 -1
- package/fesm2022/lucca-front-ng-forms.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-multi-select.mjs +2 -2
- package/fesm2022/lucca-front-ng-multi-select.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-popover2.mjs +10 -3
- package/fesm2022/lucca-front-ng-popover2.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-popup-employee.mjs +2 -2
- package/fesm2022/lucca-front-ng-popup-employee.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-simple-select.mjs +2 -2
- package/fesm2022/lucca-front-ng-simple-select.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-skeleton.mjs +2 -2
- package/fesm2022/lucca-front-ng-skeleton.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-tag.mjs +2 -2
- package/fesm2022/lucca-front-ng-tag.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-toast.mjs +2 -2
- package/fesm2022/lucca-front-ng-toast.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-tooltip.mjs +28 -18
- package/fesm2022/lucca-front-ng-tooltip.mjs.map +1 -1
- package/forms/phone-number-input/phone-number-input.component.d.ts +23 -7
- package/forms/phone-number-input/validators.d.ts +3 -3
- package/package.json +15 -15
- package/popover2/popover.directive.d.ts +2 -1
- package/tooltip/trigger/tooltip-trigger.directive.d.ts +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lucca-front-ng-popover2.mjs","sources":["../../../packages/ng/popover2/popover-focus-trap.ts","../../../packages/ng/popover2/popover-tokens.ts","../../../packages/ng/popover2/translations.ts","../../../packages/ng/popover2/popover.translate.ts","../../../packages/ng/popover2/content/popover-content/popover-content.component.ts","../../../packages/ng/popover2/content/popover-content/popover-content.component.html","../../../packages/ng/popover2/popover2.translate.ts","../../../packages/ng/popover2/popover.directive.ts","../../../packages/ng/popover2/popover.providers.ts","../../../packages/ng/popover2/lucca-front-ng-popover2.ts"],"sourcesContent":["import { FocusTrap, InteractivityChecker } from '@angular/cdk/a11y';\nimport { inject, Injectable, NgZone } from '@angular/core';\nimport { DOCUMENT } from '@angular/common';\n\n@Injectable()\nexport class PopoverFocusTrap extends FocusTrap {\n\toverride startAnchorListener = () => {\n\t\tthis.triggerElement.focus();\n\t\treturn true;\n\t};\n\n\toverride endAnchorListener = () => {\n\t\tthis.triggerElement.focus();\n\t\treturn true;\n\t};\n\n\tconstructor(\n\t\telement: HTMLElement,\n\t\tprivate triggerElement: HTMLElement,\n\t) {\n\t\tsuper(element, inject(InteractivityChecker), inject(NgZone), inject(DOCUMENT), true);\n\t}\n}\n","import { InjectionToken, TemplateRef } from '@angular/core';\nimport { OverlayRef } from '@angular/cdk/overlay';\n\nexport interface PopoverConfig {\n\ttriggerElement: HTMLElement;\n\tcontent: TemplateRef<unknown>;\n\tref: OverlayRef;\n\tcontentId: string;\n\tdisableFocusManipulation: boolean;\n\tnoCloseButton: boolean;\n}\n\nexport const POPOVER_CONFIG = new InjectionToken<PopoverConfig>('Popover:Config');\n","export const Translations = {\n\ten: {\n\t\tclose: 'Close',\n\t},\n\tde: {\n\t\tclose: 'Schließen',\n\t},\n\tfr: {\n\t\tclose: 'Fermer',\n\t},\n\tit: {\n\t\tclose: 'Chiudere',\n\t},\n\tnl: {\n\t\tclose: 'Sluiten',\n\t},\n\t'nl-BE': {\n\t\tclose: 'Sluiten',\n\t},\n\tes: {\n\t\tclose: 'Cerrar',\n\t},\n\tpt: {\n\t\tclose: 'Fechar',\n\t},\n};\n","import { InjectionToken } from '@angular/core';\nimport { LuTranslation } from '@lucca-front/ng/core';\nimport { Translations } from './translations';\n\nexport const LU_POPOVER2_TRANSLATIONS = new InjectionToken('LuPopover2Translations', {\n\tfactory: () => luPopoverTranslations,\n});\n\nexport interface ILuPopover2Label {\n\tclose: string;\n}\n\nexport const luPopoverTranslations: LuTranslation<ILuPopover2Label> = Translations;\n","import { AfterViewInit, ChangeDetectionStrategy, Component, DestroyRef, ElementRef, HostBinding, HostListener, inject, TemplateRef, ViewEncapsulation } from '@angular/core';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { ButtonComponent } from '@lucca-front/ng/button';\nimport { IconComponent } from '@lucca-front/ng/icon';\nimport { PopoverFocusTrap } from '../../popover-focus-trap';\nimport { Subject } from 'rxjs';\nimport { POPOVER_CONFIG } from '../../popover-tokens';\nimport { LU_POPOVER2_TRANSLATIONS } from '../../popover.translate';\nimport { getIntl } from '@lucca-front/ng/core';\nimport { CdkObserveContent } from '@angular/cdk/observers';\n\n@Component({\n\tselector: 'lu-popover-content',\n\tstandalone: true,\n\timports: [NgTemplateOutlet, ButtonComponent, IconComponent, CdkObserveContent],\n\ttemplateUrl: './popover-content.component.html',\n\tstyleUrl: './popover-content.component.scss',\n\n\tencapsulation: ViewEncapsulation.None,\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class PopoverContentComponent implements AfterViewInit {\n\tintl = getIntl(LU_POPOVER2_TRANSLATIONS);\n\n\t#elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n\n\tconfig = inject(POPOVER_CONFIG);\n\n\tdestroyRef = inject(DestroyRef);\n\n\t@HostBinding('attr.id')\n\tcontentId = this.config.contentId;\n\n\tcontent: TemplateRef<unknown> = this.config.content;\n\n\t#focusManager = new PopoverFocusTrap(this.#elementRef.nativeElement, this.config.triggerElement);\n\n\tclosed$ = new Subject<void>();\n\n\tcontentChangedDebounceTime = 100;\n\n\tmouseEnter$ = new Subject<void>();\n\n\t@HostListener('mouseenter')\n\tmouseEnter(): void {\n\t\tthis.mouseEnter$.next();\n\t}\n\n\tmouseLeave$ = new Subject<void>();\n\n\t@HostListener('mouseleave')\n\tmouseLeave(): void {\n\t\tthis.mouseLeave$.next();\n\t}\n\n\tcontentChanged() {\n\t\tthis.config.ref.updatePosition();\n\t}\n\n\tngAfterViewInit(): void {\n\t\tthis.#focusManager.attachAnchors();\n\t\tif (!this.config.disableFocusManipulation) {\n\t\t\tvoid this.#focusManager.focusInitialElementWhenReady();\n\t\t}\n\t}\n\n\tgrabFocus(): void {\n\t\tthis.#focusManager.focusInitialElement();\n\t}\n\n\t@HostListener('window:keydown.escape')\n\tclose(): void {\n\t\tif (!this.config.disableFocusManipulation) {\n\t\t\t// Focus initial trigger element\n\t\t\tthis.config.triggerElement.focus();\n\t\t}\n\t\t// Tell the directive we're closed now\n\t\tthis.closed$.next();\n\t\tthis.closed$.complete();\n\t\tthis.mouseEnter$.complete();\n\t\tthis.mouseLeave$.complete();\n\t\t// Detach overlay\n\t\tthis.config.ref.dispose();\n\t}\n}\n","<div class=\"popover\" (cdkObserveContent)=\"contentChanged()\" [debounce]=\"contentChangedDebounceTime\">\n\t@if (!config.noCloseButton) {\n\t<div>\n\t\t<button type=\"button\" luButton class=\"popover-close\" (click)=\"close()\">\n\t\t\t<lu-icon icon=\"signClose\"></lu-icon>\n\t\t\t<span class=\"u-mask\">{{ intl.close }}</span>\n\t\t</button>\n\t</div>\n\t}\n\t<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</div>\n","import { InjectionToken } from '@angular/core';\nimport { ILuTranslation } from '@lucca-front/ng/core';\n\nexport const LU_POPOVER2_TRANSLATIONS = new InjectionToken('LuPopover2Translations', {\n\tfactory: () => luPopover2Translations,\n});\n\nexport interface LuCalloutLabel {\n\tscreenReaderDescription: string;\n}\n\nexport const luPopover2Translations: ILuTranslation<LuCalloutLabel> = {\n\ten: {\n\t\tscreenReaderDescription: '(Tab key to enter panel.)',\n\t},\n\tfr: {\n\t\tscreenReaderDescription: '(Touche de tabulation pour entrer dans le panneau.)',\n\t},\n\tes: {\n\t\tscreenReaderDescription: '(Tabulador para entrar en el panel.)',\n\t},\n\tde: {\n\t\tscreenReaderDescription: '(Tabulatortaste, um in das Panel zu gelangen.)',\n\t},\n};\n","import {\n\tbooleanAttribute,\n\tDestroyRef,\n\tDirective,\n\tElementRef,\n\tHostBinding,\n\tHostListener,\n\tinject,\n\tInjector,\n\tinput,\n\tInput,\n\tInputSignal,\n\tOnDestroy,\n\tRenderer2,\n\tsignal,\n\tTemplateRef,\n\tViewContainerRef,\n} from '@angular/core';\nimport { ConnectedPosition, ConnectionPositionPair, Overlay, OverlayRef } from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { PopoverContentComponent } from './content/popover-content/popover-content.component';\nimport { POPOVER_CONFIG, PopoverConfig } from './popover-tokens';\nimport { combineLatest, debounce, filter, map, merge, Subject, switchMap, timer } from 'rxjs';\nimport { takeUntilDestroyed, toObservable } from '@angular/core/rxjs-interop';\nimport { LU_POPOVER2_TRANSLATIONS } from './popover2.translate';\nimport { getIntl } from '@lucca-front/ng/core';\n\nexport type PopoverPosition = 'above' | 'below' | 'before' | 'after';\n\nlet nextId = 0;\n\nconst defaultPositionPairs: Record<PopoverPosition, ConnectionPositionPair> = {\n\tabove: new ConnectionPositionPair(\n\t\t{ originX: 'center', originY: 'top' },\n\t\t{\n\t\t\toverlayX: 'center',\n\t\t\toverlayY: 'bottom',\n\t\t},\n\t),\n\tbelow: new ConnectionPositionPair(\n\t\t{ originX: 'center', originY: 'bottom' },\n\t\t{\n\t\t\toverlayX: 'center',\n\t\t\toverlayY: 'top',\n\t\t},\n\t),\n\tbefore: new ConnectionPositionPair(\n\t\t{ originX: 'start', originY: 'center' },\n\t\t{\n\t\t\toverlayX: 'end',\n\t\t\toverlayY: 'center',\n\t\t},\n\t),\n\tafter: new ConnectionPositionPair(\n\t\t{ originX: 'end', originY: 'center' },\n\t\t{\n\t\t\toverlayX: 'start',\n\t\t\toverlayY: 'center',\n\t\t},\n\t),\n};\n\n@Directive({\n\tselector: '[luPopover2]',\n\thost: {\n\t\t'[attr.aria-expanded]': 'opened()',\n\t},\n\tstandalone: true,\n})\nexport class PopoverDirective implements OnDestroy {\n\t#overlay = inject(Overlay);\n\n\t#elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n\n\t#vcr = inject(ViewContainerRef);\n\n\t#destroyRef = inject(DestroyRef);\n\n\t#renderer = inject(Renderer2);\n\n\tintl = getIntl(LU_POPOVER2_TRANSLATIONS);\n\n\t@Input({\n\t\talias: 'luPopover2',\n\t})\n\tcontent: TemplateRef<unknown>;\n\n\t@Input()\n\tluPopoverPosition: PopoverPosition = 'above';\n\n\t@Input({\n\t\ttransform: booleanAttribute,\n\t})\n\tluPopoverDisabled = false;\n\n\tluPopoverTrigger = input<'click' | 'click+hover' | 'hover+focus'>('click');\n\n\t@Input()\n\tcustomPositions?: ConnectionPositionPair[];\n\n\t@Input({ transform: booleanAttribute })\n\t/**\n\t * Removes close button entirely, this is bad for a11y but sometimes we want it.\n\t */\n\tluPopoverNoCloseButton = false;\n\n\t// We have to type these two for Compodoc to find the right type and tell Storybook these aren't strings\n\tluPopoverOpenDelay: InputSignal<number> = input<number>(300);\n\n\tluPopoverCloseDelay: InputSignal<number> = input<number>(100);\n\n\topen$ = new Subject<'focus' | 'click' | 'hover'>();\n\n\tclose$ = new Subject<void>();\n\n\t#listenToMouseLeave = false;\n\t#listenToMouseEnter = true;\n\n\t#overlayRef: OverlayRef;\n\n\t#componentRef?: PopoverContentComponent;\n\n\tpositionPairs: Record<PopoverPosition, ConnectionPositionPair> = defaultPositionPairs;\n\n\topened = signal(false);\n\n\t@HostBinding('attr.aria-controls')\n\tariaControls = `popover-content-${nextId++}`;\n\n\t#screenReaderDescription?: HTMLSpanElement;\n\n\tconstructor() {\n\t\tcombineLatest([toObservable(this.luPopoverOpenDelay), toObservable(this.luPopoverCloseDelay), toObservable(this.luPopoverTrigger)])\n\t\t\t.pipe(\n\t\t\t\tfilter(([, , trigger]) => {\n\t\t\t\t\treturn trigger.includes('hover') || trigger.includes('focus');\n\t\t\t\t}),\n\t\t\t\tswitchMap(([openDelay, closeDelay]) => {\n\t\t\t\t\treturn merge(this.open$.pipe(map((type) => ['open', type])), this.close$.pipe(map(() => ['close']))).pipe(\n\t\t\t\t\t\tdebounce(([event]) => {\n\t\t\t\t\t\t\treturn timer(event === 'open' ? openDelay : closeDelay);\n\t\t\t\t\t\t}),\n\t\t\t\t\t);\n\t\t\t\t}),\n\t\t\t\ttakeUntilDestroyed(this.#destroyRef),\n\t\t\t)\n\t\t\t.subscribe(([event, type]: ['open' | 'close', 'focus' | 'click' | 'hover']) => {\n\t\t\t\tif (event === 'open') {\n\t\t\t\t\tthis.openPopover(type === 'focus', true);\n\t\t\t\t\tthis.#listenToMouseLeave = type !== 'click';\n\t\t\t\t\tif (type === 'focus' && !this.#screenReaderDescription) {\n\t\t\t\t\t\tthis.#screenReaderDescription = this.#renderer.createElement('span') as HTMLSpanElement;\n\t\t\t\t\t\tthis.#screenReaderDescription.innerText = this.intl.screenReaderDescription;\n\t\t\t\t\t\tthis.#renderer.addClass(this.#screenReaderDescription, 'u-mask');\n\t\t\t\t\t\tthis.#renderer.appendChild(this.#elementRef.nativeElement, this.#screenReaderDescription);\n\t\t\t\t\t}\n\t\t\t\t} else if (this.opened()) {\n\t\t\t\t\tthis.#componentRef?.close();\n\t\t\t\t\tthis.#listenToMouseEnter = true;\n\t\t\t\t}\n\t\t\t});\n\t}\n\n\tngOnDestroy(): void {\n\t\tthis.#componentRef?.close();\n\t}\n\n\t@HostListener('mouseenter')\n\tonMouseEnter() {\n\t\tif (this.#listenToMouseEnter && this.luPopoverTrigger().includes('hover')) {\n\t\t\tthis.open$.next('hover');\n\t\t\tthis.#listenToMouseLeave = true;\n\t\t}\n\t}\n\n\t@HostListener('focus')\n\tonFocus() {\n\t\tif (this.luPopoverTrigger().includes('focus')) {\n\t\t\tthis.open$.next('focus');\n\t\t\tthis.#listenToMouseLeave = true;\n\t\t}\n\t}\n\n\t@HostListener('mouseleave')\n\tonMouseLeave() {\n\t\tif (this.#listenToMouseLeave && this.luPopoverTrigger().includes('hover')) {\n\t\t\tthis.close$.next();\n\t\t\tthis.#listenToMouseEnter = true;\n\t\t}\n\t}\n\n\t@HostListener('click')\n\tclick(): void {\n\t\tif (this.opened()) {\n\t\t\tthis.#componentRef?.close();\n\t\t\tthis.#listenToMouseLeave = true;\n\t\t} else {\n\t\t\tthis.openPopover(true);\n\t\t\tthis.#listenToMouseLeave = false;\n\t\t\tthis.#listenToMouseEnter = false;\n\t\t}\n\t}\n\n\topenPopover(withBackdrop = false, disableFocusHandler = false): void {\n\t\tif (!this.opened() && !this.luPopoverDisabled) {\n\t\t\tthis.opened.set(true);\n\t\t\tthis.#overlayRef = this.#overlay.create({\n\t\t\t\tpositionStrategy: this.#overlay\n\t\t\t\t\t.position()\n\t\t\t\t\t.flexibleConnectedTo(this.#elementRef)\n\t\t\t\t\t.withPositions(this.customPositions || this.#buildPositions()),\n\t\t\t\tscrollStrategy: this.#overlay.scrollStrategies.reposition(),\n\t\t\t\thasBackdrop: withBackdrop,\n\t\t\t\tbackdropClass: '',\n\t\t\t\tdisposeOnNavigation: true,\n\t\t\t});\n\t\t\t// Close on backdrop click even if backdrop is invisible\n\t\t\tthis.#overlayRef\n\t\t\t\t.backdropClick()\n\t\t\t\t.pipe(takeUntilDestroyed(this.#destroyRef))\n\t\t\t\t.subscribe(() => {\n\t\t\t\t\tthis.#componentRef.close();\n\t\t\t\t\tthis.#listenToMouseLeave = true;\n\t\t\t\t});\n\t\t\tconst config: PopoverConfig = {\n\t\t\t\tcontent: this.content,\n\t\t\t\tref: this.#overlayRef,\n\t\t\t\tcontentId: this.ariaControls,\n\t\t\t\ttriggerElement: this.#elementRef.nativeElement,\n\t\t\t\tdisableFocusManipulation: disableFocusHandler,\n\t\t\t\tnoCloseButton: this.luPopoverNoCloseButton,\n\t\t\t};\n\t\t\tthis.#componentRef = this.#overlayRef.attach(\n\t\t\t\tnew ComponentPortal(\n\t\t\t\t\tPopoverContentComponent,\n\t\t\t\t\tthis.#vcr,\n\t\t\t\t\tInjector.create({\n\t\t\t\t\t\tproviders: [{ provide: POPOVER_CONFIG, useValue: config }],\n\t\t\t\t\t}),\n\t\t\t\t),\n\t\t\t).instance;\n\t\t\t// On tooltip leave => trigger close\n\t\t\tthis.#componentRef.mouseLeave$.pipe(takeUntilDestroyed(this.#componentRef.destroyRef), takeUntilDestroyed(this.#destroyRef)).subscribe(() => this.close$.next());\n\t\t\t// On tooltip enter => trigger open to keep it opened\n\t\t\tthis.#componentRef.mouseEnter$.pipe(takeUntilDestroyed(this.#componentRef.destroyRef), takeUntilDestroyed(this.#destroyRef)).subscribe(() => this.open$.next('hover'));\n\t\t\tthis.#componentRef.closed$.pipe(takeUntilDestroyed(this.#componentRef.destroyRef), takeUntilDestroyed(this.#destroyRef)).subscribe(() => {\n\t\t\t\tthis.opened.set(false);\n\t\t\t\tthis.#listenToMouseLeave = false;\n\t\t\t\tif (this.#screenReaderDescription) {\n\t\t\t\t\tthis.#screenReaderDescription.remove();\n\t\t\t\t\tthis.#screenReaderDescription = undefined;\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\n\t@HostListener('keydown.Tab', ['$event'])\n\tfocusBackToContent(event: KeyboardEvent): void {\n\t\tif (this.opened()) {\n\t\t\tevent.preventDefault();\n\t\t\tthis.#componentRef.grabFocus();\n\t\t}\n\t}\n\n\t@HostListener('keydown.Shift.Tab', ['$event'])\n\tfocusOutBefore(): void {\n\t\tif (this.opened() && this.luPopoverTrigger().includes('focus')) {\n\t\t\tthis.#componentRef.close();\n\t\t}\n\t}\n\n\tupdatePosition() {\n\t\tthis.#overlayRef?.updatePosition();\n\t}\n\n\t#buildPositions(): ConnectedPosition[] {\n\t\tconst opposite: Record<PopoverPosition, PopoverPosition> = {\n\t\t\tbefore: 'after',\n\t\t\tafter: 'before',\n\t\t\tabove: 'below',\n\t\t\tbelow: 'above',\n\t\t};\n\t\t// Once we have opposite, what's remaining?\n\t\tconst remaining: Record<PopoverPosition, PopoverPosition[]> = {\n\t\t\tbefore: ['above', 'below'],\n\t\t\tafter: ['above', 'below'],\n\t\t\tabove: ['before', 'after'],\n\t\t\tbelow: ['before', 'after'],\n\t\t};\n\t\treturn [this.positionPairs[this.luPopoverPosition], this.positionPairs[opposite[this.luPopoverPosition]], ...remaining[this.luPopoverPosition].map((r) => this.positionPairs[r])];\n\t}\n}\n","import { EnvironmentProviders, importProvidersFrom, makeEnvironmentProviders } from '@angular/core';\nimport { OverlayModule } from '@angular/cdk/overlay';\n\nexport function configureLuPopover(): EnvironmentProviders {\n\treturn makeEnvironmentProviders([importProvidersFrom(OverlayModule)]);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["LU_POPOVER2_TRANSLATIONS"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"lucca-front-ng-popover2.mjs","sources":["../../../packages/ng/popover2/popover-focus-trap.ts","../../../packages/ng/popover2/popover-tokens.ts","../../../packages/ng/popover2/translations.ts","../../../packages/ng/popover2/popover.translate.ts","../../../packages/ng/popover2/content/popover-content/popover-content.component.ts","../../../packages/ng/popover2/content/popover-content/popover-content.component.html","../../../packages/ng/popover2/popover2.translate.ts","../../../packages/ng/popover2/popover.directive.ts","../../../packages/ng/popover2/popover.providers.ts","../../../packages/ng/popover2/lucca-front-ng-popover2.ts"],"sourcesContent":["import { FocusTrap, InteractivityChecker } from '@angular/cdk/a11y';\nimport { inject, Injectable, NgZone } from '@angular/core';\nimport { DOCUMENT } from '@angular/common';\n\n@Injectable()\nexport class PopoverFocusTrap extends FocusTrap {\n\toverride startAnchorListener = () => {\n\t\tthis.triggerElement.focus();\n\t\treturn true;\n\t};\n\n\toverride endAnchorListener = () => {\n\t\tthis.triggerElement.focus();\n\t\treturn true;\n\t};\n\n\tconstructor(\n\t\telement: HTMLElement,\n\t\tprivate triggerElement: HTMLElement,\n\t) {\n\t\tsuper(element, inject(InteractivityChecker), inject(NgZone), inject(DOCUMENT), true);\n\t}\n}\n","import { InjectionToken, TemplateRef } from '@angular/core';\nimport { OverlayRef } from '@angular/cdk/overlay';\n\nexport interface PopoverConfig {\n\ttriggerElement: HTMLElement;\n\tcontent: TemplateRef<unknown>;\n\tref: OverlayRef;\n\tcontentId: string;\n\tdisableFocusManipulation: boolean;\n\tnoCloseButton: boolean;\n}\n\nexport const POPOVER_CONFIG = new InjectionToken<PopoverConfig>('Popover:Config');\n","export const Translations = {\n\ten: {\n\t\tclose: 'Close',\n\t},\n\tde: {\n\t\tclose: 'Schließen',\n\t},\n\tfr: {\n\t\tclose: 'Fermer',\n\t},\n\tit: {\n\t\tclose: 'Chiudere',\n\t},\n\tnl: {\n\t\tclose: 'Sluiten',\n\t},\n\t'nl-BE': {\n\t\tclose: 'Sluiten',\n\t},\n\tes: {\n\t\tclose: 'Cerrar',\n\t},\n\tpt: {\n\t\tclose: 'Fechar',\n\t},\n};\n","import { InjectionToken } from '@angular/core';\nimport { LuTranslation } from '@lucca-front/ng/core';\nimport { Translations } from './translations';\n\nexport const LU_POPOVER2_TRANSLATIONS = new InjectionToken('LuPopover2Translations', {\n\tfactory: () => luPopoverTranslations,\n});\n\nexport interface ILuPopover2Label {\n\tclose: string;\n}\n\nexport const luPopoverTranslations: LuTranslation<ILuPopover2Label> = Translations;\n","import { AfterViewInit, ChangeDetectionStrategy, Component, DestroyRef, ElementRef, HostBinding, HostListener, inject, TemplateRef, ViewEncapsulation } from '@angular/core';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { ButtonComponent } from '@lucca-front/ng/button';\nimport { IconComponent } from '@lucca-front/ng/icon';\nimport { PopoverFocusTrap } from '../../popover-focus-trap';\nimport { Subject } from 'rxjs';\nimport { POPOVER_CONFIG } from '../../popover-tokens';\nimport { LU_POPOVER2_TRANSLATIONS } from '../../popover.translate';\nimport { getIntl } from '@lucca-front/ng/core';\nimport { CdkObserveContent } from '@angular/cdk/observers';\n\n@Component({\n\tselector: 'lu-popover-content',\n\tstandalone: true,\n\timports: [NgTemplateOutlet, ButtonComponent, IconComponent, CdkObserveContent],\n\ttemplateUrl: './popover-content.component.html',\n\tstyleUrl: './popover-content.component.scss',\n\n\tencapsulation: ViewEncapsulation.None,\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class PopoverContentComponent implements AfterViewInit {\n\tintl = getIntl(LU_POPOVER2_TRANSLATIONS);\n\n\t#elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n\n\tconfig = inject(POPOVER_CONFIG);\n\n\tdestroyRef = inject(DestroyRef);\n\n\t@HostBinding('attr.id')\n\tcontentId = this.config.contentId;\n\n\tcontent: TemplateRef<unknown> = this.config.content;\n\n\t#focusManager = new PopoverFocusTrap(this.#elementRef.nativeElement, this.config.triggerElement);\n\n\tclosed$ = new Subject<void>();\n\n\tcontentChangedDebounceTime = 100;\n\n\tmouseEnter$ = new Subject<void>();\n\n\t@HostListener('mouseenter')\n\tmouseEnter(): void {\n\t\tthis.mouseEnter$.next();\n\t}\n\n\tmouseLeave$ = new Subject<void>();\n\n\t@HostListener('mouseleave')\n\tmouseLeave(): void {\n\t\tthis.mouseLeave$.next();\n\t}\n\n\tcontentChanged() {\n\t\tthis.config.ref.updatePosition();\n\t}\n\n\tngAfterViewInit(): void {\n\t\tthis.#focusManager.attachAnchors();\n\t\tif (!this.config.disableFocusManipulation) {\n\t\t\tvoid this.#focusManager.focusInitialElementWhenReady();\n\t\t}\n\t}\n\n\tgrabFocus(): void {\n\t\tthis.#focusManager.focusInitialElement();\n\t}\n\n\t@HostListener('window:keydown.escape')\n\tclose(): void {\n\t\tif (!this.config.disableFocusManipulation) {\n\t\t\t// Focus initial trigger element\n\t\t\tthis.config.triggerElement.focus();\n\t\t}\n\t\t// Tell the directive we're closed now\n\t\tthis.closed$.next();\n\t\tthis.closed$.complete();\n\t\tthis.mouseEnter$.complete();\n\t\tthis.mouseLeave$.complete();\n\t\t// Detach overlay\n\t\tthis.config.ref.dispose();\n\t}\n}\n","<div class=\"popover\" (cdkObserveContent)=\"contentChanged()\" [debounce]=\"contentChangedDebounceTime\">\n\t@if (!config.noCloseButton) {\n\t<div>\n\t\t<button type=\"button\" luButton class=\"popover-close button\" (click)=\"close()\">\n\t\t\t<lu-icon icon=\"signClose\"></lu-icon>\n\t\t\t<span class=\"u-mask\">{{ intl.close }}</span>\n\t\t</button>\n\t</div>\n\t}\n\t<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</div>\n","import { InjectionToken } from '@angular/core';\nimport { ILuTranslation } from '@lucca-front/ng/core';\n\nexport const LU_POPOVER2_TRANSLATIONS = new InjectionToken('LuPopover2Translations', {\n\tfactory: () => luPopover2Translations,\n});\n\nexport interface LuCalloutLabel {\n\tscreenReaderDescription: string;\n}\n\nexport const luPopover2Translations: ILuTranslation<LuCalloutLabel> = {\n\ten: {\n\t\tscreenReaderDescription: '(Tab key to enter panel.)',\n\t},\n\tfr: {\n\t\tscreenReaderDescription: '(Touche de tabulation pour entrer dans le panneau.)',\n\t},\n\tes: {\n\t\tscreenReaderDescription: '(Tabulador para entrar en el panel.)',\n\t},\n\tde: {\n\t\tscreenReaderDescription: '(Tabulatortaste, um in das Panel zu gelangen.)',\n\t},\n};\n","import {\n\tbooleanAttribute,\n\tDestroyRef,\n\tDirective,\n\tElementRef,\n\tHostBinding,\n\tHostListener,\n\tinject,\n\tInjector,\n\tinput,\n\tInput,\n\tInputSignal,\n\tOnDestroy,\n\tRenderer2,\n\tsignal,\n\tTemplateRef,\n\tViewContainerRef,\n} from '@angular/core';\nimport { ConnectedPosition, ConnectionPositionPair, Overlay, OverlayRef } from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { PopoverContentComponent } from './content/popover-content/popover-content.component';\nimport { POPOVER_CONFIG, PopoverConfig } from './popover-tokens';\nimport { combineLatest, debounce, filter, map, merge, Subject, switchMap, timer } from 'rxjs';\nimport { takeUntilDestroyed, toObservable } from '@angular/core/rxjs-interop';\nimport { LU_POPOVER2_TRANSLATIONS } from './popover2.translate';\nimport { getIntl } from '@lucca-front/ng/core';\n\nexport type PopoverPosition = 'above' | 'below' | 'before' | 'after';\n\nlet nextId = 0;\n\nconst defaultPositionPairs: Record<PopoverPosition, ConnectionPositionPair> = {\n\tabove: new ConnectionPositionPair(\n\t\t{ originX: 'center', originY: 'top' },\n\t\t{\n\t\t\toverlayX: 'center',\n\t\t\toverlayY: 'bottom',\n\t\t},\n\t),\n\tbelow: new ConnectionPositionPair(\n\t\t{ originX: 'center', originY: 'bottom' },\n\t\t{\n\t\t\toverlayX: 'center',\n\t\t\toverlayY: 'top',\n\t\t},\n\t),\n\tbefore: new ConnectionPositionPair(\n\t\t{ originX: 'start', originY: 'center' },\n\t\t{\n\t\t\toverlayX: 'end',\n\t\t\toverlayY: 'center',\n\t\t},\n\t),\n\tafter: new ConnectionPositionPair(\n\t\t{ originX: 'end', originY: 'center' },\n\t\t{\n\t\t\toverlayX: 'start',\n\t\t\toverlayY: 'center',\n\t\t},\n\t),\n};\n\n@Directive({\n\tselector: '[luPopover2]',\n\thost: {\n\t\t'[attr.aria-expanded]': 'opened()',\n\t},\n\texportAs: 'luPopover2',\n\tstandalone: true,\n})\nexport class PopoverDirective implements OnDestroy {\n\t#overlay = inject(Overlay);\n\n\t#elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n\n\t#vcr = inject(ViewContainerRef);\n\n\t#destroyRef = inject(DestroyRef);\n\n\t#renderer = inject(Renderer2);\n\n\tintl = getIntl(LU_POPOVER2_TRANSLATIONS);\n\n\t@Input({\n\t\talias: 'luPopover2',\n\t})\n\tcontent: TemplateRef<unknown>;\n\n\t@Input()\n\tluPopoverPosition: PopoverPosition = 'above';\n\n\t@Input({\n\t\ttransform: booleanAttribute,\n\t})\n\tluPopoverDisabled = false;\n\n\tluPopoverTrigger = input<'click' | 'click+hover' | 'hover+focus'>('click');\n\n\t@Input()\n\tcustomPositions?: ConnectionPositionPair[];\n\n\t@Input({ transform: booleanAttribute })\n\t/**\n\t * Removes close button entirely, this is bad for a11y but sometimes we want it.\n\t */\n\tluPopoverNoCloseButton = false;\n\n\t// We have to type these two for Compodoc to find the right type and tell Storybook these aren't strings\n\tluPopoverOpenDelay: InputSignal<number> = input<number>(300);\n\n\tluPopoverCloseDelay: InputSignal<number> = input<number>(100);\n\n\topen$ = new Subject<'focus' | 'click' | 'hover'>();\n\n\tclose$ = new Subject<void>();\n\n\t#listenToMouseLeave = false;\n\t#listenToMouseEnter = true;\n\n\t#overlayRef: OverlayRef;\n\n\t#componentRef?: PopoverContentComponent;\n\n\tpositionPairs: Record<PopoverPosition, ConnectionPositionPair> = defaultPositionPairs;\n\n\topened = signal(false);\n\n\t@HostBinding('attr.aria-controls')\n\tariaControls = `popover-content-${nextId++}`;\n\n\t#screenReaderDescription?: HTMLSpanElement;\n\n\tconstructor() {\n\t\tcombineLatest([toObservable(this.luPopoverOpenDelay), toObservable(this.luPopoverCloseDelay), toObservable(this.luPopoverTrigger)])\n\t\t\t.pipe(\n\t\t\t\tfilter(([, , trigger]) => {\n\t\t\t\t\treturn trigger.includes('hover') || trigger.includes('focus');\n\t\t\t\t}),\n\t\t\t\tswitchMap(([openDelay, closeDelay]) => {\n\t\t\t\t\treturn merge(this.open$.pipe(map((type) => ['open', type])), this.close$.pipe(map(() => ['close']))).pipe(\n\t\t\t\t\t\tdebounce(([event]) => {\n\t\t\t\t\t\t\treturn timer(event === 'open' ? openDelay : closeDelay);\n\t\t\t\t\t\t}),\n\t\t\t\t\t);\n\t\t\t\t}),\n\t\t\t\ttakeUntilDestroyed(this.#destroyRef),\n\t\t\t)\n\t\t\t.subscribe(([event, type]: ['open' | 'close', 'focus' | 'click' | 'hover']) => {\n\t\t\t\tif (event === 'open') {\n\t\t\t\t\tthis.openPopover(type === 'focus', true);\n\t\t\t\t\tthis.#listenToMouseLeave = type !== 'click';\n\t\t\t\t\tif (type === 'focus' && !this.#screenReaderDescription) {\n\t\t\t\t\t\tthis.#screenReaderDescription = this.#renderer.createElement('span') as HTMLSpanElement;\n\t\t\t\t\t\tthis.#screenReaderDescription.innerText = this.intl.screenReaderDescription;\n\t\t\t\t\t\tthis.#renderer.addClass(this.#screenReaderDescription, 'u-mask');\n\t\t\t\t\t\tthis.#renderer.appendChild(this.#elementRef.nativeElement, this.#screenReaderDescription);\n\t\t\t\t\t}\n\t\t\t\t} else if (this.opened()) {\n\t\t\t\t\tthis.#componentRef?.close();\n\t\t\t\t\tthis.#listenToMouseEnter = true;\n\t\t\t\t}\n\t\t\t});\n\t}\n\n\tngOnDestroy(): void {\n\t\tthis.#componentRef?.close();\n\t}\n\n\t@HostListener('mouseenter')\n\tonMouseEnter() {\n\t\tif (this.#listenToMouseEnter && this.luPopoverTrigger().includes('hover')) {\n\t\t\tthis.open$.next('hover');\n\t\t\tthis.#listenToMouseLeave = true;\n\t\t}\n\t}\n\n\t@HostListener('focus')\n\tonFocus() {\n\t\tif (this.luPopoverTrigger().includes('focus')) {\n\t\t\tthis.open$.next('focus');\n\t\t\tthis.#listenToMouseLeave = true;\n\t\t}\n\t}\n\n\t@HostListener('mouseleave')\n\tonMouseLeave() {\n\t\tif (this.#listenToMouseLeave && this.luPopoverTrigger().includes('hover')) {\n\t\t\tthis.close$.next();\n\t\t\tthis.#listenToMouseEnter = true;\n\t\t}\n\t}\n\n\t@HostListener('click')\n\tclick(): void {\n\t\tif (this.opened()) {\n\t\t\tthis.#componentRef?.close();\n\t\t\tthis.#listenToMouseLeave = true;\n\t\t} else {\n\t\t\tthis.openPopover(true);\n\t\t\tthis.#listenToMouseLeave = false;\n\t\t\tthis.#listenToMouseEnter = false;\n\t\t}\n\t}\n\n\tclose(): void {\n\t\tif (this.opened()) {\n\t\t\tthis.#componentRef?.close();\n\t\t\tthis.#listenToMouseLeave = true;\n\t\t}\n\t}\n\n\topenPopover(withBackdrop = false, disableFocusHandler = false): void {\n\t\tif (!this.opened() && !this.luPopoverDisabled) {\n\t\t\tthis.opened.set(true);\n\t\t\tthis.#overlayRef = this.#overlay.create({\n\t\t\t\tpositionStrategy: this.#overlay\n\t\t\t\t\t.position()\n\t\t\t\t\t.flexibleConnectedTo(this.#elementRef)\n\t\t\t\t\t.withPositions(this.customPositions || this.#buildPositions()),\n\t\t\t\tscrollStrategy: this.#overlay.scrollStrategies.reposition(),\n\t\t\t\thasBackdrop: withBackdrop,\n\t\t\t\tbackdropClass: '',\n\t\t\t\tdisposeOnNavigation: true,\n\t\t\t});\n\t\t\t// Close on backdrop click even if backdrop is invisible\n\t\t\tthis.#overlayRef\n\t\t\t\t.backdropClick()\n\t\t\t\t.pipe(takeUntilDestroyed(this.#destroyRef))\n\t\t\t\t.subscribe(() => {\n\t\t\t\t\tthis.#componentRef.close();\n\t\t\t\t\tthis.#listenToMouseLeave = true;\n\t\t\t\t});\n\t\t\tconst config: PopoverConfig = {\n\t\t\t\tcontent: this.content,\n\t\t\t\tref: this.#overlayRef,\n\t\t\t\tcontentId: this.ariaControls,\n\t\t\t\ttriggerElement: this.#elementRef.nativeElement,\n\t\t\t\tdisableFocusManipulation: disableFocusHandler,\n\t\t\t\tnoCloseButton: this.luPopoverNoCloseButton,\n\t\t\t};\n\t\t\tthis.#componentRef = this.#overlayRef.attach(\n\t\t\t\tnew ComponentPortal(\n\t\t\t\t\tPopoverContentComponent,\n\t\t\t\t\tthis.#vcr,\n\t\t\t\t\tInjector.create({\n\t\t\t\t\t\tproviders: [{ provide: POPOVER_CONFIG, useValue: config }],\n\t\t\t\t\t}),\n\t\t\t\t),\n\t\t\t).instance;\n\t\t\t// On tooltip leave => trigger close\n\t\t\tthis.#componentRef.mouseLeave$.pipe(takeUntilDestroyed(this.#componentRef.destroyRef), takeUntilDestroyed(this.#destroyRef)).subscribe(() => this.close$.next());\n\t\t\t// On tooltip enter => trigger open to keep it opened\n\t\t\tthis.#componentRef.mouseEnter$.pipe(takeUntilDestroyed(this.#componentRef.destroyRef), takeUntilDestroyed(this.#destroyRef)).subscribe(() => this.open$.next('hover'));\n\t\t\tthis.#componentRef.closed$.pipe(takeUntilDestroyed(this.#componentRef.destroyRef), takeUntilDestroyed(this.#destroyRef)).subscribe(() => {\n\t\t\t\tthis.opened.set(false);\n\t\t\t\tthis.#listenToMouseLeave = false;\n\t\t\t\tif (this.#screenReaderDescription) {\n\t\t\t\t\tthis.#screenReaderDescription.remove();\n\t\t\t\t\tthis.#screenReaderDescription = undefined;\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\n\t@HostListener('keydown.Tab', ['$event'])\n\tfocusBackToContent(event: KeyboardEvent): void {\n\t\tif (this.opened()) {\n\t\t\tevent.preventDefault();\n\t\t\tthis.#componentRef.grabFocus();\n\t\t}\n\t}\n\n\t@HostListener('keydown.Shift.Tab', ['$event'])\n\tfocusOutBefore(): void {\n\t\tif (this.opened() && this.luPopoverTrigger().includes('focus')) {\n\t\t\tthis.#componentRef.close();\n\t\t}\n\t}\n\n\tupdatePosition() {\n\t\tthis.#overlayRef?.updatePosition();\n\t}\n\n\t#buildPositions(): ConnectedPosition[] {\n\t\tconst opposite: Record<PopoverPosition, PopoverPosition> = {\n\t\t\tbefore: 'after',\n\t\t\tafter: 'before',\n\t\t\tabove: 'below',\n\t\t\tbelow: 'above',\n\t\t};\n\t\t// Once we have opposite, what's remaining?\n\t\tconst remaining: Record<PopoverPosition, PopoverPosition[]> = {\n\t\t\tbefore: ['above', 'below'],\n\t\t\tafter: ['above', 'below'],\n\t\t\tabove: ['before', 'after'],\n\t\t\tbelow: ['before', 'after'],\n\t\t};\n\t\treturn [this.positionPairs[this.luPopoverPosition], this.positionPairs[opposite[this.luPopoverPosition]], ...remaining[this.luPopoverPosition].map((r) => this.positionPairs[r])];\n\t}\n}\n","import { EnvironmentProviders, importProvidersFrom, makeEnvironmentProviders } from '@angular/core';\nimport { OverlayModule } from '@angular/cdk/overlay';\n\nexport function configureLuPopover(): EnvironmentProviders {\n\treturn makeEnvironmentProviders([importProvidersFrom(OverlayModule)]);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["LU_POPOVER2_TRANSLATIONS"],"mappings":"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"}
|
|
@@ -360,7 +360,7 @@ class LuUserPopoverPanelComponent extends ALuPopoverPanel {
|
|
|
360
360
|
// }
|
|
361
361
|
}
|
|
362
362
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: LuUserPopoverPanelComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: LuUserPopoverStore }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
363
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: LuUserPopoverPanelComponent, isStandalone: true, selector: "lu-user-popover-panel", inputs: { inputPanelClasses: ["panel-classes", "inputPanelClasses"], inputContentClasses: ["content-classes", "inputContentClasses"] }, outputs: { close: "close", open: "open", hovered: "hovered" }, viewQueries: [{ propertyName: "vcTemplateRef", first: true, predicate: TemplateRef, descendants: true, static: true }], exportAs: ["LuUserPopoverPanel"], usesInheritance: true, ngImport: i0, template: "<div\n\tclass=\"lu-popover-panel mod-cornerRounded mod-XL mod-boxShadowXL\"\n\t[ngClass]=\"panelClassesMap\"\n\t[attr.id]=\"panelId\"\n\t[attr.aria-labelledby]=\"triggerId\"\n\t[@transformPopover]=\"'enter'\"\n\t(focus)=\"onMouseOver()\"\n\t(mouseover)=\"onMouseOver()\"\n\t(mouseleave)=\"onMouseLeave()\"\n\t(mousedown)=\"onMouseDown()\"\n>\n\t<div *ngIf=\"employee$ | async as employee\" class=\"lu-popover-content userPopover\">\n\t\t<section class=\"userPopover-details\">\n\t\t\t<div [ngSwitch]=\"userPictureDisplay$ | async\" class=\"userPopover-details-avatar avatar\">\n\t\t\t\t<ng-container *ngSwitchCase=\"'img'\">\n\t\t\t\t\t<img class=\"avatar-picture\" [src]=\"userPictureHref$ | async\" [alt]=\"(userInitials$ | async)?.initials\" (error)=\"pictureError()\" />\n\t\t\t\t</ng-container>\n\t\t\t\t<ng-container *ngSwitchCase=\"'initials'\">\n\t\t\t\t\t<div class=\"avatar-picture\" *ngIf=\"userInitials$ | async as initials\" style.background-color=\"hsl({{initials.color}}, 60%, 60%)\">\n\t\t\t\t\t\t<span class=\"avatar-picture-initials\">{{ initials.initials }}</span>\n\t\t\t\t\t</div>\n\t\t\t\t</ng-container>\n\t\t\t</div>\n\t\t\t<div class=\"userPopover-details-info\">\n\t\t\t\t<h1 class=\"userPopover-details-info-name u-ellipsis\">\n\t\t\t\t\t<ng-container *ngIf=\"!employee._links?.hrCard?.href; else fullNameDisplayLink\">\n\t\t\t\t\t\t<ng-container *ngTemplateOutlet=\"fullNameDisplay\" />\n\t\t\t\t\t</ng-container>\n\t\t\t\t</h1>\n\t\t\t\t<ng-template #fullNameDisplayLink>\n\t\t\t\t\t<a class=\"userPopover-details-info-name-linkOptional\" [href]=\"employee._links?.hrCard?.href\">\n\t\t\t\t\t\t<ng-container *ngTemplateOutlet=\"fullNameDisplay\" />\n\t\t\t\t\t</a>\n\t\t\t\t</ng-template>\n\t\t\t\t<ng-template #fullNameDisplay> {{employee.firstName}} {{employee.lastName}} </ng-template>\n\t\t\t\t<p *ngIf=\"employee.jobTitle\" class=\"userPopover-details-info-detail u-ellipsis\">{{employee.jobTitle}}</p>\n\t\t\t\t<p *ngIf=\"employee.userDepartment\" class=\"userPopover-details-info-detail u-ellipsis\">{{employee.userDepartment?.name}}</p>\n\n\t\t\t\t<p class=\"userPopover-details-info-detail u-marginTopXS\">\n\t\t\t\t\t<!-- HORS CONTRAT-->\n\t\t\t\t\t<span *ngIf=\"employee.dtContractStart | isFuture\" class=\"userPopover-details-info-detail-workplace\">\n\t\t\t\t\t\t<span aria-hidden=\"true\" class=\"lucca-icon icon-calendarPlanning mod-S\"></span>\n\t\t\t\t\t\t<span class=\"userPopover-details-info-detail-link-state\">\n\t\t\t\t\t\t\t{{intl.EMPLOYEE_CARD_PANEL_COMING_ON_LABEL | injectParameter : (employee.dtContractStart | date: 'shortDate') }}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</span>\n\t\t\t\t\t<span\n\t\t\t\t\t\t*ngIf=\"!(employee.dtContractStart | isFuture) && !(employee.dtContractEnd | isFutureOrToday)\"\n\t\t\t\t\t\tclass=\"userPopover-details-info-detail-workplace\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<span aria-hidden=\"true\" class=\"lucca-icon icon-calendarStrikethrough mod-S\"></span>\n\t\t\t\t\t\t<span class=\"userPopover-details-info-detail-link-state\"> {{intl.EMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL }} </span>\n\t\t\t\t\t</span>\n\t\t\t\t\t<!-- EN CONTRAT-->\n\t\t\t\t\t<a\n\t\t\t\t\t\t*ngIf=\"employee._links?.schedule && !(employee.dtContractStart | isFuture) && (employee.dtContractEnd | isFutureOrToday)\"\n\t\t\t\t\t\tclass=\"userPopover-details-info-detail-workplace\"\n\t\t\t\t\t\t[href]=\"employee._links?.schedule?.href\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<span\n\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\tclass=\"lucca-icon mod-S\"\n\t\t\t\t\t\t\t[class.icon-mapPin]=\"employee.isWorkingNow && employee.currentWorkLocation\"\n\t\t\t\t\t\t\t[class.icon-calendarPlanning]=\"!employee.isWorkingNow || !employee.currentWorkLocation\"\n\t\t\t\t\t\t></span>\n\t\t\t\t\t\t<span class=\"userPopover-details-info-detail-workplace-state\">\n\t\t\t\t\t\t\t<ng-container *ngIf=\"employee.isWorkingNow === true\">\n\t\t\t\t\t\t\t\t<ng-container *ngIf=\"employee.currentWorkLocation\">\n\t\t\t\t\t\t\t\t\t{{ employee.currentWorkLocation?.name }}\n\t\t\t\t\t\t\t\t\t<ng-container *ngIf=\"employee.currentWorkLocation?.area\"\n\t\t\t\t\t\t\t\t\t\t><span class=\"u-textLight\">\u00A0\u2013 {{employee.currentWorkLocation?.area?.name}}</span>\n\t\t\t\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t\t\t\t<ng-container *ngIf=\"!employee.currentWorkLocation\">{{intl.EMPLOYEE_CARD_PANEL_PRESENT_LABEL }} </ng-container>\n\t\t\t\t\t\t\t</ng-container>\n\n\t\t\t\t\t\t\t<ng-container *ngIf=\"employee.isWorkingNow === false\">\n\t\t\t\t\t\t\t\t<ng-container *ngIf=\"!(employee.dtContractStart | isFuture) && (employee.dtContractEnd | isFutureOrToday)\">\n\t\t\t\t\t\t\t\t\t{{ intl.EMPLOYEE_CARD_PANEL_ABSENCE_LABEL }}\n\t\t\t\t\t\t\t\t\t<span *ngIf=\"employee.leaveEndsOn\" class=\"u-textLight\"\n\t\t\t\t\t\t\t\t\t\t>\u00A0\u2013 {{ employee.leaveEndsOn | leaveEndsDisplay: employee.leaveEndIsFirstHalfDay }}\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</a>\n\t\t\t\t</p>\n\t\t\t</div>\n\t\t</section>\n\t</div>\n</div>\n", styles: ["@charset \"UTF-8\";.userPopover{width:23.5rem;max-width:calc(100vw - var(--pr-t-spacings-200) * 2);padding:var(--pr-t-spacings-200)}.userPopover-details{display:flex;align-items:flex-start;gap:var(--pr-t-spacings-200)}.userPopover-details-info{min-width:0}.userPopover-details-info-name{margin:calc(var(--pr-t-spacings-50) * -1);padding:var(--pr-t-spacings-50);font-size:var(--sizes-L-fontSize);line-height:var(--sizes-L-lineHeight);font-weight:700;color:currentColor}.userPopover-details-info-name-linkOptional{color:currentColor;text-decoration:underline;text-decoration-thickness:.75px;text-underline-offset:3px}.userPopover-details-info-name-linkOptional:hover{color:currentColor;text-decoration-thickness:1.5px}.userPopover-details-info-detail{margin-bottom:0;font-size:var(--sizes-S-fontSize);line-height:var(--sizes-S-lineHeight)}.userPopover-details-info-detail-workplace{display:flex;align-items:flex-start;gap:var(--pr-t-spacings-50);color:currentColor;text-decoration:none}.userPopover-details-info-detail-workplace:is(a,button):hover,.userPopover-details-info-detail-workplace:is(a,button):focus{color:currentColor}.userPopover-details-info-detail-workplace:is(a,button):hover .userPopover-details-info-detail-workplace-state,.userPopover-details-info-detail-workplace:is(a,button):focus .userPopover-details-info-detail-workplace-state{text-decoration:underline}.userPopover .userPopover-details-avatar{--components-avatar-size: 6rem;--components-avatar-fontSize: var(--sizes-XXXL-fontSize);--components-avatar-placeholder-size: 2.5rem;margin:var(--pr-t-spacings-50) 0}.avatar,.lu-user-picture{--components-avatar-size: 2.5rem;--components-avatar-fontSize: var(--sizes-M-fontSize);--components-avatar-border: 2px;--components-avatar-scale: 1;--components-avatar-background: var(--pr-t-elevation-surface-default);--components-avatar-placeholder-size: 1.25rem;display:inline-block;vertical-align:middle;border-radius:var(--commons-borderRadius-full);width:var(--components-avatar-size);aspect-ratio:1}.avatar-picture,.picture{background-color:var(--palettes-neutral-200);border-radius:var(--commons-borderRadius-full);background-position:center;background-size:cover;background-repeat:no-repeat;width:var(--components-avatar-size);object-fit:cover;object-position:center;aspect-ratio:1;display:flex;justify-content:center;align-items:center}.avatar-picture-initials,.picture{font-size:var(--components-avatar-fontSize);font-weight:600;line-height:1;color:var(--palettes-neutral-0)}.avatarWrapper{margin:0;padding:0;list-style-type:none;display:flex;flex-wrap:wrap;align-content:flex-start}.avatarWrapper .avatar{box-shadow:0 0 0 var(--components-avatar-border) var(--components-avatar-background)}.avatarWrapper-item{margin-block:calc(var(--components-avatarWrapper-overlap) / 2)}.avatarWrapper-item:not(:last-child){margin-right:calc(var(--components-avatarWrapper-overlap) * -1)}.avatarWrapper-item-action{padding:0;border:0;width:100%;background-color:transparent;color:inherit;text-align:left;display:block;font:inherit;cursor:pointer;display:flex;text-decoration:none;color:var(--palettes-neutral-800);transition:transform var(--commons-animations-durations-fast);transform:scale(var(--components-avatarWrapper-scale));color:currentColor}.avatarWrapper-item-action:hover,.avatarWrapper-item-action:focus{--components-avatarWrapper-scale: 1.1}.avatarWrapper-item-action:focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:2px;border-radius:var(--commons-borderRadius-full)}.avatarWrapper-item-action-more{box-shadow:0 0 0 var(--components-avatar-border) var(--components-avatar-background);border-radius:var(--commons-borderRadius-full);display:flex;align-items:center;justify-content:center;background-color:var(--palettes-neutral-200);width:var(--components-avatar-size);height:var(--components-avatar-size);font-size:var(--components-avatarWrapper-fontSize)}.avatar.mod-XS,.lu-user-picture.mod-XS{--components-avatar-size: 1.5rem;--components-avatar-fontSize: var(--sizes-XS-fontSize);--components-avatar-placeholder-size: .75rem;--components-avatar-border: 1px}.avatar.mod-S,.lu-user-picture.mod-S{--components-avatar-size: 2rem;--components-avatar-fontSize: var(--sizes-S-fontSize);--components-avatar-placeholder-size: 1rem}.avatar.mod-L,.lu-user-picture.mod-L{--components-avatar-size: 3rem;--components-avatar-fontSize: var(--sizes-L-fontSize);--components-avatar-placeholder-size: 1.75rem}.avatar.mod-XL,.lu-user-picture.mod-XL{--components-avatar-size: 4rem;--components-avatar-fontSize: var(--sizes-XL-fontSize);--components-avatar-placeholder-size: 2rem}.avatar.mod-XXL,.lu-user-picture.mod-XXL{--components-avatar-size: 5rem;--components-avatar-fontSize: var(--sizes-XXL-fontSize);--components-avatar-placeholder-size: 2.25rem}.avatar.mod-XXXL,.lu-user-picture.mod-XXXL{--components-avatar-size: 6rem;--components-avatar-fontSize: var(--sizes-XXXL-fontSize);--components-avatar-placeholder-size: 2.5rem}.avatar.mod-placeholder .avatar-picture,.avatar.mod-placeholder .picture,.lu-user-picture.mod-placeholder .avatar-picture,.lu-user-picture.mod-placeholder .picture{background-color:var(--palettes-neutral-200)!important}.avatar.mod-placeholder .avatar-picture:before,.avatar.mod-placeholder .picture:before,.lu-user-picture.mod-placeholder .avatar-picture:before,.lu-user-picture.mod-placeholder .picture:before{--icon-content: \"\\e990\";display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:Lucca icons;content:var(--icon-content);-webkit-font-smoothing:antialiased;text-transform:none;color:var(--palettes-neutral-600);font-weight:400;font-size:var(--components-avatar-placeholder-size)}.avatar.mod-placeholder .avatar-picture-initials,.avatar.mod-placeholder .userPicture-initials,.lu-user-picture.mod-placeholder .avatar-picture-initials,.lu-user-picture.mod-placeholder .userPicture-initials{display:none}.avatarWrapper{--components-avatar-size: 2.5rem;--components-avatar-fontSize: var(--sizes-M-fontSize);--components-avatar-border: 2px;--components-avatar-scale: 1;--components-avatar-background: var(--pr-t-elevation-surface-default);--components-avatar-placeholder-size: 1.25rem;--components-avatarWrapper-fontSize: var(--sizes-M-fontSize);--components-avatarWrapper-overlap: var(--pr-t-spacings-100)}.avatarWrapper.mod-XL .avatar,.avatarWrapper.mod-XL .avatarWrapper-item-action{--components-avatar-size: 4rem;--components-avatar-fontSize: var(--sizes-XL-fontSize);--components-avatar-placeholder-size: 2rem}.avatarWrapper.mod-L .avatar,.avatarWrapper.mod-L .avatarWrapper-item-action{--components-avatar-size: 3rem;--components-avatar-fontSize: var(--sizes-L-fontSize);--components-avatar-placeholder-size: 1.75rem}.avatarWrapper.mod-S{--components-avatarWrapper-overlap: var(--pr-t-spacings-50)}.avatarWrapper.mod-S .avatar,.avatarWrapper.mod-S .avatarWrapper-item-action{--components-avatar-size: 2rem;--components-avatar-fontSize: var(--sizes-S-fontSize);--components-avatar-placeholder-size: 1rem}.avatarWrapper.mod-XS{--components-avatarWrapper-overlap: var(--pr-t-spacings-50)}.avatarWrapper.mod-XS .avatar,.avatarWrapper.mod-XS .avatarWrapper-item-action{--components-avatar-size: 1.5rem;--components-avatar-fontSize: var(--sizes-XS-fontSize);--components-avatar-placeholder-size: .75rem;--components-avatar-border: 1px}\n"], dependencies: [{ kind: "ngmodule", type: LuUserPictureModule }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: DatePipe, name: "date" }, { kind: "ngmodule", type: OverlayModule }, { kind: "pipe", type: LeaveEndsDisplayPipe, name: "leaveEndsDisplay" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: IsFuturePipe, name: "isFuture" }, { kind: "pipe", type: isFutureOrTodayPipe, name: "isFutureOrToday" }, { kind: "pipe", type: InjectParameterPipe, name: "injectParameter" }, { kind: "directive", type: NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }], animations: [luTransformPopover], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
363
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: LuUserPopoverPanelComponent, isStandalone: true, selector: "lu-user-popover-panel", inputs: { inputPanelClasses: ["panel-classes", "inputPanelClasses"], inputContentClasses: ["content-classes", "inputContentClasses"] }, outputs: { close: "close", open: "open", hovered: "hovered" }, viewQueries: [{ propertyName: "vcTemplateRef", first: true, predicate: TemplateRef, descendants: true, static: true }], exportAs: ["LuUserPopoverPanel"], usesInheritance: true, ngImport: i0, template: "<div\n\tclass=\"lu-popover-panel mod-cornerRounded mod-XL mod-boxShadowXL\"\n\t[ngClass]=\"panelClassesMap\"\n\t[attr.id]=\"panelId\"\n\t[attr.aria-labelledby]=\"triggerId\"\n\t[@transformPopover]=\"'enter'\"\n\t(focus)=\"onMouseOver()\"\n\t(mouseover)=\"onMouseOver()\"\n\t(mouseleave)=\"onMouseLeave()\"\n\t(mousedown)=\"onMouseDown()\"\n>\n\t<div *ngIf=\"employee$ | async as employee\" class=\"lu-popover-content userPopover\">\n\t\t<section class=\"userPopover-details\">\n\t\t\t<div [ngSwitch]=\"userPictureDisplay$ | async\" class=\"userPopover-details-avatar avatar\">\n\t\t\t\t<ng-container *ngSwitchCase=\"'img'\">\n\t\t\t\t\t<img class=\"avatar-picture\" [src]=\"userPictureHref$ | async\" [alt]=\"(userInitials$ | async)?.initials\" (error)=\"pictureError()\" />\n\t\t\t\t</ng-container>\n\t\t\t\t<ng-container *ngSwitchCase=\"'initials'\">\n\t\t\t\t\t<div class=\"avatar-picture\" *ngIf=\"userInitials$ | async as initials\" style.background-color=\"hsl({{initials.color}}, 60%, 60%)\">\n\t\t\t\t\t\t<span class=\"avatar-picture-initials\">{{ initials.initials }}</span>\n\t\t\t\t\t</div>\n\t\t\t\t</ng-container>\n\t\t\t</div>\n\t\t\t<div class=\"userPopover-details-info\">\n\t\t\t\t<h1 class=\"userPopover-details-info-name u-ellipsis\">\n\t\t\t\t\t<ng-container *ngIf=\"!employee._links?.hrCard?.href; else fullNameDisplayLink\">\n\t\t\t\t\t\t<ng-container *ngTemplateOutlet=\"fullNameDisplay\" />\n\t\t\t\t\t</ng-container>\n\t\t\t\t</h1>\n\t\t\t\t<ng-template #fullNameDisplayLink>\n\t\t\t\t\t<a class=\"userPopover-details-info-name-linkOptional\" [href]=\"employee._links?.hrCard?.href\">\n\t\t\t\t\t\t<ng-container *ngTemplateOutlet=\"fullNameDisplay\" />\n\t\t\t\t\t</a>\n\t\t\t\t</ng-template>\n\t\t\t\t<ng-template #fullNameDisplay> {{employee.firstName}} {{employee.lastName}} </ng-template>\n\t\t\t\t<p *ngIf=\"employee.jobTitle\" class=\"userPopover-details-info-detail u-ellipsis\">{{employee.jobTitle}}</p>\n\t\t\t\t<p *ngIf=\"employee.userDepartment\" class=\"userPopover-details-info-detail u-ellipsis\">{{employee.userDepartment?.name}}</p>\n\n\t\t\t\t<p class=\"userPopover-details-info-detail u-marginTopXS\">\n\t\t\t\t\t<!-- HORS CONTRAT-->\n\t\t\t\t\t<span *ngIf=\"employee.dtContractStart | isFuture\" class=\"userPopover-details-info-detail-workplace\">\n\t\t\t\t\t\t<span aria-hidden=\"true\" class=\"lucca-icon icon-calendarPlanning mod-S\"></span>\n\t\t\t\t\t\t<span class=\"userPopover-details-info-detail-link-state\">\n\t\t\t\t\t\t\t{{intl.EMPLOYEE_CARD_PANEL_COMING_ON_LABEL | injectParameter : (employee.dtContractStart | date: 'shortDate') }}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</span>\n\t\t\t\t\t<span\n\t\t\t\t\t\t*ngIf=\"!(employee.dtContractStart | isFuture) && !(employee.dtContractEnd | isFutureOrToday)\"\n\t\t\t\t\t\tclass=\"userPopover-details-info-detail-workplace\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<span aria-hidden=\"true\" class=\"lucca-icon icon-calendarStrikethrough mod-S\"></span>\n\t\t\t\t\t\t<span class=\"userPopover-details-info-detail-link-state\"> {{intl.EMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL }} </span>\n\t\t\t\t\t</span>\n\t\t\t\t\t<!-- EN CONTRAT-->\n\t\t\t\t\t<a\n\t\t\t\t\t\t*ngIf=\"employee._links?.schedule && !(employee.dtContractStart | isFuture) && (employee.dtContractEnd | isFutureOrToday)\"\n\t\t\t\t\t\tclass=\"userPopover-details-info-detail-workplace\"\n\t\t\t\t\t\t[href]=\"employee._links?.schedule?.href\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<span\n\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\tclass=\"lucca-icon mod-S\"\n\t\t\t\t\t\t\t[class.icon-mapPin]=\"employee.isWorkingNow && employee.currentWorkLocation\"\n\t\t\t\t\t\t\t[class.icon-calendarPlanning]=\"!employee.isWorkingNow || !employee.currentWorkLocation\"\n\t\t\t\t\t\t></span>\n\t\t\t\t\t\t<span class=\"userPopover-details-info-detail-workplace-state\">\n\t\t\t\t\t\t\t<ng-container *ngIf=\"employee.isWorkingNow === true\">\n\t\t\t\t\t\t\t\t<ng-container *ngIf=\"employee.currentWorkLocation\">\n\t\t\t\t\t\t\t\t\t{{ employee.currentWorkLocation?.name }}\n\t\t\t\t\t\t\t\t\t<ng-container *ngIf=\"employee.currentWorkLocation?.area\"\n\t\t\t\t\t\t\t\t\t\t><span class=\"u-textLight\">\u00A0\u2013 {{employee.currentWorkLocation?.area?.name}}</span>\n\t\t\t\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t\t\t\t<ng-container *ngIf=\"!employee.currentWorkLocation\">{{intl.EMPLOYEE_CARD_PANEL_PRESENT_LABEL }} </ng-container>\n\t\t\t\t\t\t\t</ng-container>\n\n\t\t\t\t\t\t\t<ng-container *ngIf=\"employee.isWorkingNow === false\">\n\t\t\t\t\t\t\t\t<ng-container *ngIf=\"!(employee.dtContractStart | isFuture) && (employee.dtContractEnd | isFutureOrToday)\">\n\t\t\t\t\t\t\t\t\t{{ intl.EMPLOYEE_CARD_PANEL_ABSENCE_LABEL }}\n\t\t\t\t\t\t\t\t\t<span *ngIf=\"employee.leaveEndsOn\" class=\"u-textLight\"\n\t\t\t\t\t\t\t\t\t\t>\u00A0\u2013 {{ employee.leaveEndsOn | leaveEndsDisplay: employee.leaveEndIsFirstHalfDay }}\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</a>\n\t\t\t\t</p>\n\t\t\t</div>\n\t\t</section>\n\t</div>\n</div>\n", styles: ["@charset \"UTF-8\";.userPopover{width:23.5rem;max-width:calc(100vw - var(--pr-t-spacings-200) * 2);padding:var(--pr-t-spacings-200)}.userPopover-details{display:flex;align-items:flex-start;gap:var(--pr-t-spacings-200)}.userPopover-details-info{min-width:0}.userPopover-details-info-name{margin:calc(var(--pr-t-spacings-50) * -1);padding:var(--pr-t-spacings-50);font-size:var(--sizes-L-fontSize);line-height:var(--sizes-L-lineHeight);font-weight:700;color:currentColor}.userPopover-details-info-name-linkOptional{color:currentColor;text-decoration:underline;text-decoration-thickness:.75px;text-underline-offset:3px}.userPopover-details-info-name-linkOptional:hover{color:currentColor;text-decoration-thickness:1.5px}.userPopover-details-info-detail{margin-bottom:0;font-size:var(--sizes-S-fontSize);line-height:var(--sizes-S-lineHeight)}.userPopover-details-info-detail-workplace{display:flex;align-items:flex-start;gap:var(--pr-t-spacings-50);color:currentColor;text-decoration:none}.userPopover-details-info-detail-workplace:is(a,button):hover,.userPopover-details-info-detail-workplace:is(a,button):focus{color:currentColor}.userPopover-details-info-detail-workplace:is(a,button):hover .userPopover-details-info-detail-workplace-state,.userPopover-details-info-detail-workplace:is(a,button):focus .userPopover-details-info-detail-workplace-state{text-decoration:underline}.userPopover .userPopover-details-avatar.avatar,.userPopover .userPopover-details-avatar:not(.avatar){--components-avatar-size: 6rem;--components-avatar-fontSize: var(--sizes-XXXL-fontSize);--components-avatar-placeholder-size: 2.5rem;margin:var(--pr-t-spacings-50) 0}.avatar,.lu-user-picture{--components-avatar-size: 2.5rem;--components-avatar-fontSize: var(--sizes-M-fontSize);--components-avatar-border: 2px;--components-avatar-scale: 1;--components-avatar-background: var(--pr-t-elevation-surface-default);--components-avatar-placeholder-size: 1.25rem;display:inline-block;vertical-align:middle;border-radius:var(--commons-borderRadius-full);width:var(--components-avatar-size);aspect-ratio:1}.avatar-picture,.picture{background-color:var(--palettes-neutral-200);border-radius:var(--commons-borderRadius-full);background-position:center;background-size:cover;background-repeat:no-repeat;width:var(--components-avatar-size);object-fit:cover;object-position:center;aspect-ratio:1;display:flex;justify-content:center;align-items:center}.avatar-picture-initials,.picture{font-size:var(--components-avatar-fontSize);font-weight:600;line-height:1;color:var(--palettes-neutral-0)}.avatarWrapper{margin:0;padding:0;list-style-type:none;display:flex;flex-wrap:wrap;align-content:flex-start}.avatarWrapper .avatar{box-shadow:0 0 0 var(--components-avatar-border) var(--components-avatar-background)}.avatarWrapper-item{margin-block:calc(var(--components-avatarWrapper-overlap) / 2)}.avatarWrapper-item:not(:last-child){margin-right:calc(var(--components-avatarWrapper-overlap) * -1)}.avatarWrapper-item-action{padding:0;border:0;width:100%;background-color:transparent;color:inherit;text-align:left;display:block;font:inherit;cursor:pointer;display:flex;text-decoration:none;color:var(--palettes-neutral-800);transition:transform var(--commons-animations-durations-fast);transform:scale(var(--components-avatarWrapper-scale));color:currentColor}.avatarWrapper-item-action:hover,.avatarWrapper-item-action:focus{--components-avatarWrapper-scale: 1.1}.avatarWrapper-item-action:focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:2px;border-radius:var(--commons-borderRadius-full)}.avatarWrapper-item-action-more{box-shadow:0 0 0 var(--components-avatar-border) var(--components-avatar-background);border-radius:var(--commons-borderRadius-full);display:flex;align-items:center;justify-content:center;background-color:var(--palettes-neutral-200);width:var(--components-avatar-size);height:var(--components-avatar-size);font-size:var(--components-avatarWrapper-fontSize)}.avatar.mod-XS,.lu-user-picture.mod-XS{--components-avatar-size: 1.5rem;--components-avatar-fontSize: var(--sizes-XS-fontSize);--components-avatar-placeholder-size: .75rem;--components-avatar-border: 1px}.avatar.mod-S,.lu-user-picture.mod-S{--components-avatar-size: 2rem;--components-avatar-fontSize: var(--sizes-S-fontSize);--components-avatar-placeholder-size: 1rem}.avatar.mod-L,.lu-user-picture.mod-L{--components-avatar-size: 3rem;--components-avatar-fontSize: var(--sizes-L-fontSize);--components-avatar-placeholder-size: 1.75rem}.avatar.mod-XL,.lu-user-picture.mod-XL{--components-avatar-size: 4rem;--components-avatar-fontSize: var(--sizes-XL-fontSize);--components-avatar-placeholder-size: 2rem}.avatar.mod-XXL,.lu-user-picture.mod-XXL{--components-avatar-size: 5rem;--components-avatar-fontSize: var(--sizes-XXL-fontSize);--components-avatar-placeholder-size: 2.25rem}.avatar.mod-XXXL,.lu-user-picture.mod-XXXL{--components-avatar-size: 6rem;--components-avatar-fontSize: var(--sizes-XXXL-fontSize);--components-avatar-placeholder-size: 2.5rem}.avatar.mod-placeholder .avatar-picture,.avatar.mod-placeholder .picture,.lu-user-picture.mod-placeholder .avatar-picture,.lu-user-picture.mod-placeholder .picture{background-color:var(--palettes-neutral-200)!important}.avatar.mod-placeholder .avatar-picture:before,.avatar.mod-placeholder .picture:before,.lu-user-picture.mod-placeholder .avatar-picture:before,.lu-user-picture.mod-placeholder .picture:before{--icon-content: \"\\e990\";display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:Lucca icons;content:var(--icon-content);-webkit-font-smoothing:antialiased;text-transform:none;color:var(--palettes-neutral-600);font-weight:400;font-size:var(--components-avatar-placeholder-size)}.avatar.mod-placeholder .avatar-picture-initials,.avatar.mod-placeholder .userPicture-initials,.lu-user-picture.mod-placeholder .avatar-picture-initials,.lu-user-picture.mod-placeholder .userPicture-initials{display:none}.avatarWrapper{--components-avatar-size: 2.5rem;--components-avatar-fontSize: var(--sizes-M-fontSize);--components-avatar-border: 2px;--components-avatar-scale: 1;--components-avatar-background: var(--pr-t-elevation-surface-default);--components-avatar-placeholder-size: 1.25rem;--components-avatarWrapper-fontSize: var(--sizes-M-fontSize);--components-avatarWrapper-overlap: var(--pr-t-spacings-100)}.avatarWrapper.mod-XL .avatar,.avatarWrapper.mod-XL .avatarWrapper-item-action{--components-avatar-size: 4rem;--components-avatar-fontSize: var(--sizes-XL-fontSize);--components-avatar-placeholder-size: 2rem}.avatarWrapper.mod-L .avatar,.avatarWrapper.mod-L .avatarWrapper-item-action{--components-avatar-size: 3rem;--components-avatar-fontSize: var(--sizes-L-fontSize);--components-avatar-placeholder-size: 1.75rem}.avatarWrapper.mod-S{--components-avatarWrapper-overlap: var(--pr-t-spacings-50)}.avatarWrapper.mod-S .avatar,.avatarWrapper.mod-S .avatarWrapper-item-action{--components-avatar-size: 2rem;--components-avatar-fontSize: var(--sizes-S-fontSize);--components-avatar-placeholder-size: 1rem}.avatarWrapper.mod-XS{--components-avatarWrapper-overlap: var(--pr-t-spacings-50)}.avatarWrapper.mod-XS .avatar,.avatarWrapper.mod-XS .avatarWrapper-item-action{--components-avatar-size: 1.5rem;--components-avatar-fontSize: var(--sizes-XS-fontSize);--components-avatar-placeholder-size: .75rem;--components-avatar-border: 1px}\n"], dependencies: [{ kind: "ngmodule", type: LuUserPictureModule }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: DatePipe, name: "date" }, { kind: "ngmodule", type: OverlayModule }, { kind: "pipe", type: LeaveEndsDisplayPipe, name: "leaveEndsDisplay" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: IsFuturePipe, name: "isFuture" }, { kind: "pipe", type: isFutureOrTodayPipe, name: "isFutureOrToday" }, { kind: "pipe", type: InjectParameterPipe, name: "injectParameter" }, { kind: "directive", type: NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }], animations: [luTransformPopover], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
364
364
|
}
|
|
365
365
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: LuUserPopoverPanelComponent, decorators: [{
|
|
366
366
|
type: Component,
|
|
@@ -380,7 +380,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImpor
|
|
|
380
380
|
NgSwitch,
|
|
381
381
|
NgSwitchCase,
|
|
382
382
|
NgOptimizedImage,
|
|
383
|
-
], template: "<div\n\tclass=\"lu-popover-panel mod-cornerRounded mod-XL mod-boxShadowXL\"\n\t[ngClass]=\"panelClassesMap\"\n\t[attr.id]=\"panelId\"\n\t[attr.aria-labelledby]=\"triggerId\"\n\t[@transformPopover]=\"'enter'\"\n\t(focus)=\"onMouseOver()\"\n\t(mouseover)=\"onMouseOver()\"\n\t(mouseleave)=\"onMouseLeave()\"\n\t(mousedown)=\"onMouseDown()\"\n>\n\t<div *ngIf=\"employee$ | async as employee\" class=\"lu-popover-content userPopover\">\n\t\t<section class=\"userPopover-details\">\n\t\t\t<div [ngSwitch]=\"userPictureDisplay$ | async\" class=\"userPopover-details-avatar avatar\">\n\t\t\t\t<ng-container *ngSwitchCase=\"'img'\">\n\t\t\t\t\t<img class=\"avatar-picture\" [src]=\"userPictureHref$ | async\" [alt]=\"(userInitials$ | async)?.initials\" (error)=\"pictureError()\" />\n\t\t\t\t</ng-container>\n\t\t\t\t<ng-container *ngSwitchCase=\"'initials'\">\n\t\t\t\t\t<div class=\"avatar-picture\" *ngIf=\"userInitials$ | async as initials\" style.background-color=\"hsl({{initials.color}}, 60%, 60%)\">\n\t\t\t\t\t\t<span class=\"avatar-picture-initials\">{{ initials.initials }}</span>\n\t\t\t\t\t</div>\n\t\t\t\t</ng-container>\n\t\t\t</div>\n\t\t\t<div class=\"userPopover-details-info\">\n\t\t\t\t<h1 class=\"userPopover-details-info-name u-ellipsis\">\n\t\t\t\t\t<ng-container *ngIf=\"!employee._links?.hrCard?.href; else fullNameDisplayLink\">\n\t\t\t\t\t\t<ng-container *ngTemplateOutlet=\"fullNameDisplay\" />\n\t\t\t\t\t</ng-container>\n\t\t\t\t</h1>\n\t\t\t\t<ng-template #fullNameDisplayLink>\n\t\t\t\t\t<a class=\"userPopover-details-info-name-linkOptional\" [href]=\"employee._links?.hrCard?.href\">\n\t\t\t\t\t\t<ng-container *ngTemplateOutlet=\"fullNameDisplay\" />\n\t\t\t\t\t</a>\n\t\t\t\t</ng-template>\n\t\t\t\t<ng-template #fullNameDisplay> {{employee.firstName}} {{employee.lastName}} </ng-template>\n\t\t\t\t<p *ngIf=\"employee.jobTitle\" class=\"userPopover-details-info-detail u-ellipsis\">{{employee.jobTitle}}</p>\n\t\t\t\t<p *ngIf=\"employee.userDepartment\" class=\"userPopover-details-info-detail u-ellipsis\">{{employee.userDepartment?.name}}</p>\n\n\t\t\t\t<p class=\"userPopover-details-info-detail u-marginTopXS\">\n\t\t\t\t\t<!-- HORS CONTRAT-->\n\t\t\t\t\t<span *ngIf=\"employee.dtContractStart | isFuture\" class=\"userPopover-details-info-detail-workplace\">\n\t\t\t\t\t\t<span aria-hidden=\"true\" class=\"lucca-icon icon-calendarPlanning mod-S\"></span>\n\t\t\t\t\t\t<span class=\"userPopover-details-info-detail-link-state\">\n\t\t\t\t\t\t\t{{intl.EMPLOYEE_CARD_PANEL_COMING_ON_LABEL | injectParameter : (employee.dtContractStart | date: 'shortDate') }}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</span>\n\t\t\t\t\t<span\n\t\t\t\t\t\t*ngIf=\"!(employee.dtContractStart | isFuture) && !(employee.dtContractEnd | isFutureOrToday)\"\n\t\t\t\t\t\tclass=\"userPopover-details-info-detail-workplace\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<span aria-hidden=\"true\" class=\"lucca-icon icon-calendarStrikethrough mod-S\"></span>\n\t\t\t\t\t\t<span class=\"userPopover-details-info-detail-link-state\"> {{intl.EMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL }} </span>\n\t\t\t\t\t</span>\n\t\t\t\t\t<!-- EN CONTRAT-->\n\t\t\t\t\t<a\n\t\t\t\t\t\t*ngIf=\"employee._links?.schedule && !(employee.dtContractStart | isFuture) && (employee.dtContractEnd | isFutureOrToday)\"\n\t\t\t\t\t\tclass=\"userPopover-details-info-detail-workplace\"\n\t\t\t\t\t\t[href]=\"employee._links?.schedule?.href\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<span\n\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\tclass=\"lucca-icon mod-S\"\n\t\t\t\t\t\t\t[class.icon-mapPin]=\"employee.isWorkingNow && employee.currentWorkLocation\"\n\t\t\t\t\t\t\t[class.icon-calendarPlanning]=\"!employee.isWorkingNow || !employee.currentWorkLocation\"\n\t\t\t\t\t\t></span>\n\t\t\t\t\t\t<span class=\"userPopover-details-info-detail-workplace-state\">\n\t\t\t\t\t\t\t<ng-container *ngIf=\"employee.isWorkingNow === true\">\n\t\t\t\t\t\t\t\t<ng-container *ngIf=\"employee.currentWorkLocation\">\n\t\t\t\t\t\t\t\t\t{{ employee.currentWorkLocation?.name }}\n\t\t\t\t\t\t\t\t\t<ng-container *ngIf=\"employee.currentWorkLocation?.area\"\n\t\t\t\t\t\t\t\t\t\t><span class=\"u-textLight\">\u00A0\u2013 {{employee.currentWorkLocation?.area?.name}}</span>\n\t\t\t\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t\t\t\t<ng-container *ngIf=\"!employee.currentWorkLocation\">{{intl.EMPLOYEE_CARD_PANEL_PRESENT_LABEL }} </ng-container>\n\t\t\t\t\t\t\t</ng-container>\n\n\t\t\t\t\t\t\t<ng-container *ngIf=\"employee.isWorkingNow === false\">\n\t\t\t\t\t\t\t\t<ng-container *ngIf=\"!(employee.dtContractStart | isFuture) && (employee.dtContractEnd | isFutureOrToday)\">\n\t\t\t\t\t\t\t\t\t{{ intl.EMPLOYEE_CARD_PANEL_ABSENCE_LABEL }}\n\t\t\t\t\t\t\t\t\t<span *ngIf=\"employee.leaveEndsOn\" class=\"u-textLight\"\n\t\t\t\t\t\t\t\t\t\t>\u00A0\u2013 {{ employee.leaveEndsOn | leaveEndsDisplay: employee.leaveEndIsFirstHalfDay }}\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</a>\n\t\t\t\t</p>\n\t\t\t</div>\n\t\t</section>\n\t</div>\n</div>\n", styles: ["@charset \"UTF-8\";.userPopover{width:23.5rem;max-width:calc(100vw - var(--pr-t-spacings-200) * 2);padding:var(--pr-t-spacings-200)}.userPopover-details{display:flex;align-items:flex-start;gap:var(--pr-t-spacings-200)}.userPopover-details-info{min-width:0}.userPopover-details-info-name{margin:calc(var(--pr-t-spacings-50) * -1);padding:var(--pr-t-spacings-50);font-size:var(--sizes-L-fontSize);line-height:var(--sizes-L-lineHeight);font-weight:700;color:currentColor}.userPopover-details-info-name-linkOptional{color:currentColor;text-decoration:underline;text-decoration-thickness:.75px;text-underline-offset:3px}.userPopover-details-info-name-linkOptional:hover{color:currentColor;text-decoration-thickness:1.5px}.userPopover-details-info-detail{margin-bottom:0;font-size:var(--sizes-S-fontSize);line-height:var(--sizes-S-lineHeight)}.userPopover-details-info-detail-workplace{display:flex;align-items:flex-start;gap:var(--pr-t-spacings-50);color:currentColor;text-decoration:none}.userPopover-details-info-detail-workplace:is(a,button):hover,.userPopover-details-info-detail-workplace:is(a,button):focus{color:currentColor}.userPopover-details-info-detail-workplace:is(a,button):hover .userPopover-details-info-detail-workplace-state,.userPopover-details-info-detail-workplace:is(a,button):focus .userPopover-details-info-detail-workplace-state{text-decoration:underline}.userPopover .userPopover-details-avatar{--components-avatar-size: 6rem;--components-avatar-fontSize: var(--sizes-XXXL-fontSize);--components-avatar-placeholder-size: 2.5rem;margin:var(--pr-t-spacings-50) 0}.avatar,.lu-user-picture{--components-avatar-size: 2.5rem;--components-avatar-fontSize: var(--sizes-M-fontSize);--components-avatar-border: 2px;--components-avatar-scale: 1;--components-avatar-background: var(--pr-t-elevation-surface-default);--components-avatar-placeholder-size: 1.25rem;display:inline-block;vertical-align:middle;border-radius:var(--commons-borderRadius-full);width:var(--components-avatar-size);aspect-ratio:1}.avatar-picture,.picture{background-color:var(--palettes-neutral-200);border-radius:var(--commons-borderRadius-full);background-position:center;background-size:cover;background-repeat:no-repeat;width:var(--components-avatar-size);object-fit:cover;object-position:center;aspect-ratio:1;display:flex;justify-content:center;align-items:center}.avatar-picture-initials,.picture{font-size:var(--components-avatar-fontSize);font-weight:600;line-height:1;color:var(--palettes-neutral-0)}.avatarWrapper{margin:0;padding:0;list-style-type:none;display:flex;flex-wrap:wrap;align-content:flex-start}.avatarWrapper .avatar{box-shadow:0 0 0 var(--components-avatar-border) var(--components-avatar-background)}.avatarWrapper-item{margin-block:calc(var(--components-avatarWrapper-overlap) / 2)}.avatarWrapper-item:not(:last-child){margin-right:calc(var(--components-avatarWrapper-overlap) * -1)}.avatarWrapper-item-action{padding:0;border:0;width:100%;background-color:transparent;color:inherit;text-align:left;display:block;font:inherit;cursor:pointer;display:flex;text-decoration:none;color:var(--palettes-neutral-800);transition:transform var(--commons-animations-durations-fast);transform:scale(var(--components-avatarWrapper-scale));color:currentColor}.avatarWrapper-item-action:hover,.avatarWrapper-item-action:focus{--components-avatarWrapper-scale: 1.1}.avatarWrapper-item-action:focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:2px;border-radius:var(--commons-borderRadius-full)}.avatarWrapper-item-action-more{box-shadow:0 0 0 var(--components-avatar-border) var(--components-avatar-background);border-radius:var(--commons-borderRadius-full);display:flex;align-items:center;justify-content:center;background-color:var(--palettes-neutral-200);width:var(--components-avatar-size);height:var(--components-avatar-size);font-size:var(--components-avatarWrapper-fontSize)}.avatar.mod-XS,.lu-user-picture.mod-XS{--components-avatar-size: 1.5rem;--components-avatar-fontSize: var(--sizes-XS-fontSize);--components-avatar-placeholder-size: .75rem;--components-avatar-border: 1px}.avatar.mod-S,.lu-user-picture.mod-S{--components-avatar-size: 2rem;--components-avatar-fontSize: var(--sizes-S-fontSize);--components-avatar-placeholder-size: 1rem}.avatar.mod-L,.lu-user-picture.mod-L{--components-avatar-size: 3rem;--components-avatar-fontSize: var(--sizes-L-fontSize);--components-avatar-placeholder-size: 1.75rem}.avatar.mod-XL,.lu-user-picture.mod-XL{--components-avatar-size: 4rem;--components-avatar-fontSize: var(--sizes-XL-fontSize);--components-avatar-placeholder-size: 2rem}.avatar.mod-XXL,.lu-user-picture.mod-XXL{--components-avatar-size: 5rem;--components-avatar-fontSize: var(--sizes-XXL-fontSize);--components-avatar-placeholder-size: 2.25rem}.avatar.mod-XXXL,.lu-user-picture.mod-XXXL{--components-avatar-size: 6rem;--components-avatar-fontSize: var(--sizes-XXXL-fontSize);--components-avatar-placeholder-size: 2.5rem}.avatar.mod-placeholder .avatar-picture,.avatar.mod-placeholder .picture,.lu-user-picture.mod-placeholder .avatar-picture,.lu-user-picture.mod-placeholder .picture{background-color:var(--palettes-neutral-200)!important}.avatar.mod-placeholder .avatar-picture:before,.avatar.mod-placeholder .picture:before,.lu-user-picture.mod-placeholder .avatar-picture:before,.lu-user-picture.mod-placeholder .picture:before{--icon-content: \"\\e990\";display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:Lucca icons;content:var(--icon-content);-webkit-font-smoothing:antialiased;text-transform:none;color:var(--palettes-neutral-600);font-weight:400;font-size:var(--components-avatar-placeholder-size)}.avatar.mod-placeholder .avatar-picture-initials,.avatar.mod-placeholder .userPicture-initials,.lu-user-picture.mod-placeholder .avatar-picture-initials,.lu-user-picture.mod-placeholder .userPicture-initials{display:none}.avatarWrapper{--components-avatar-size: 2.5rem;--components-avatar-fontSize: var(--sizes-M-fontSize);--components-avatar-border: 2px;--components-avatar-scale: 1;--components-avatar-background: var(--pr-t-elevation-surface-default);--components-avatar-placeholder-size: 1.25rem;--components-avatarWrapper-fontSize: var(--sizes-M-fontSize);--components-avatarWrapper-overlap: var(--pr-t-spacings-100)}.avatarWrapper.mod-XL .avatar,.avatarWrapper.mod-XL .avatarWrapper-item-action{--components-avatar-size: 4rem;--components-avatar-fontSize: var(--sizes-XL-fontSize);--components-avatar-placeholder-size: 2rem}.avatarWrapper.mod-L .avatar,.avatarWrapper.mod-L .avatarWrapper-item-action{--components-avatar-size: 3rem;--components-avatar-fontSize: var(--sizes-L-fontSize);--components-avatar-placeholder-size: 1.75rem}.avatarWrapper.mod-S{--components-avatarWrapper-overlap: var(--pr-t-spacings-50)}.avatarWrapper.mod-S .avatar,.avatarWrapper.mod-S .avatarWrapper-item-action{--components-avatar-size: 2rem;--components-avatar-fontSize: var(--sizes-S-fontSize);--components-avatar-placeholder-size: 1rem}.avatarWrapper.mod-XS{--components-avatarWrapper-overlap: var(--pr-t-spacings-50)}.avatarWrapper.mod-XS .avatar,.avatarWrapper.mod-XS .avatarWrapper-item-action{--components-avatar-size: 1.5rem;--components-avatar-fontSize: var(--sizes-XS-fontSize);--components-avatar-placeholder-size: .75rem;--components-avatar-border: 1px}\n"] }]
|
|
383
|
+
], template: "<div\n\tclass=\"lu-popover-panel mod-cornerRounded mod-XL mod-boxShadowXL\"\n\t[ngClass]=\"panelClassesMap\"\n\t[attr.id]=\"panelId\"\n\t[attr.aria-labelledby]=\"triggerId\"\n\t[@transformPopover]=\"'enter'\"\n\t(focus)=\"onMouseOver()\"\n\t(mouseover)=\"onMouseOver()\"\n\t(mouseleave)=\"onMouseLeave()\"\n\t(mousedown)=\"onMouseDown()\"\n>\n\t<div *ngIf=\"employee$ | async as employee\" class=\"lu-popover-content userPopover\">\n\t\t<section class=\"userPopover-details\">\n\t\t\t<div [ngSwitch]=\"userPictureDisplay$ | async\" class=\"userPopover-details-avatar avatar\">\n\t\t\t\t<ng-container *ngSwitchCase=\"'img'\">\n\t\t\t\t\t<img class=\"avatar-picture\" [src]=\"userPictureHref$ | async\" [alt]=\"(userInitials$ | async)?.initials\" (error)=\"pictureError()\" />\n\t\t\t\t</ng-container>\n\t\t\t\t<ng-container *ngSwitchCase=\"'initials'\">\n\t\t\t\t\t<div class=\"avatar-picture\" *ngIf=\"userInitials$ | async as initials\" style.background-color=\"hsl({{initials.color}}, 60%, 60%)\">\n\t\t\t\t\t\t<span class=\"avatar-picture-initials\">{{ initials.initials }}</span>\n\t\t\t\t\t</div>\n\t\t\t\t</ng-container>\n\t\t\t</div>\n\t\t\t<div class=\"userPopover-details-info\">\n\t\t\t\t<h1 class=\"userPopover-details-info-name u-ellipsis\">\n\t\t\t\t\t<ng-container *ngIf=\"!employee._links?.hrCard?.href; else fullNameDisplayLink\">\n\t\t\t\t\t\t<ng-container *ngTemplateOutlet=\"fullNameDisplay\" />\n\t\t\t\t\t</ng-container>\n\t\t\t\t</h1>\n\t\t\t\t<ng-template #fullNameDisplayLink>\n\t\t\t\t\t<a class=\"userPopover-details-info-name-linkOptional\" [href]=\"employee._links?.hrCard?.href\">\n\t\t\t\t\t\t<ng-container *ngTemplateOutlet=\"fullNameDisplay\" />\n\t\t\t\t\t</a>\n\t\t\t\t</ng-template>\n\t\t\t\t<ng-template #fullNameDisplay> {{employee.firstName}} {{employee.lastName}} </ng-template>\n\t\t\t\t<p *ngIf=\"employee.jobTitle\" class=\"userPopover-details-info-detail u-ellipsis\">{{employee.jobTitle}}</p>\n\t\t\t\t<p *ngIf=\"employee.userDepartment\" class=\"userPopover-details-info-detail u-ellipsis\">{{employee.userDepartment?.name}}</p>\n\n\t\t\t\t<p class=\"userPopover-details-info-detail u-marginTopXS\">\n\t\t\t\t\t<!-- HORS CONTRAT-->\n\t\t\t\t\t<span *ngIf=\"employee.dtContractStart | isFuture\" class=\"userPopover-details-info-detail-workplace\">\n\t\t\t\t\t\t<span aria-hidden=\"true\" class=\"lucca-icon icon-calendarPlanning mod-S\"></span>\n\t\t\t\t\t\t<span class=\"userPopover-details-info-detail-link-state\">\n\t\t\t\t\t\t\t{{intl.EMPLOYEE_CARD_PANEL_COMING_ON_LABEL | injectParameter : (employee.dtContractStart | date: 'shortDate') }}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</span>\n\t\t\t\t\t<span\n\t\t\t\t\t\t*ngIf=\"!(employee.dtContractStart | isFuture) && !(employee.dtContractEnd | isFutureOrToday)\"\n\t\t\t\t\t\tclass=\"userPopover-details-info-detail-workplace\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<span aria-hidden=\"true\" class=\"lucca-icon icon-calendarStrikethrough mod-S\"></span>\n\t\t\t\t\t\t<span class=\"userPopover-details-info-detail-link-state\"> {{intl.EMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL }} </span>\n\t\t\t\t\t</span>\n\t\t\t\t\t<!-- EN CONTRAT-->\n\t\t\t\t\t<a\n\t\t\t\t\t\t*ngIf=\"employee._links?.schedule && !(employee.dtContractStart | isFuture) && (employee.dtContractEnd | isFutureOrToday)\"\n\t\t\t\t\t\tclass=\"userPopover-details-info-detail-workplace\"\n\t\t\t\t\t\t[href]=\"employee._links?.schedule?.href\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<span\n\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\tclass=\"lucca-icon mod-S\"\n\t\t\t\t\t\t\t[class.icon-mapPin]=\"employee.isWorkingNow && employee.currentWorkLocation\"\n\t\t\t\t\t\t\t[class.icon-calendarPlanning]=\"!employee.isWorkingNow || !employee.currentWorkLocation\"\n\t\t\t\t\t\t></span>\n\t\t\t\t\t\t<span class=\"userPopover-details-info-detail-workplace-state\">\n\t\t\t\t\t\t\t<ng-container *ngIf=\"employee.isWorkingNow === true\">\n\t\t\t\t\t\t\t\t<ng-container *ngIf=\"employee.currentWorkLocation\">\n\t\t\t\t\t\t\t\t\t{{ employee.currentWorkLocation?.name }}\n\t\t\t\t\t\t\t\t\t<ng-container *ngIf=\"employee.currentWorkLocation?.area\"\n\t\t\t\t\t\t\t\t\t\t><span class=\"u-textLight\">\u00A0\u2013 {{employee.currentWorkLocation?.area?.name}}</span>\n\t\t\t\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t\t\t\t<ng-container *ngIf=\"!employee.currentWorkLocation\">{{intl.EMPLOYEE_CARD_PANEL_PRESENT_LABEL }} </ng-container>\n\t\t\t\t\t\t\t</ng-container>\n\n\t\t\t\t\t\t\t<ng-container *ngIf=\"employee.isWorkingNow === false\">\n\t\t\t\t\t\t\t\t<ng-container *ngIf=\"!(employee.dtContractStart | isFuture) && (employee.dtContractEnd | isFutureOrToday)\">\n\t\t\t\t\t\t\t\t\t{{ intl.EMPLOYEE_CARD_PANEL_ABSENCE_LABEL }}\n\t\t\t\t\t\t\t\t\t<span *ngIf=\"employee.leaveEndsOn\" class=\"u-textLight\"\n\t\t\t\t\t\t\t\t\t\t>\u00A0\u2013 {{ employee.leaveEndsOn | leaveEndsDisplay: employee.leaveEndIsFirstHalfDay }}\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</a>\n\t\t\t\t</p>\n\t\t\t</div>\n\t\t</section>\n\t</div>\n</div>\n", styles: ["@charset \"UTF-8\";.userPopover{width:23.5rem;max-width:calc(100vw - var(--pr-t-spacings-200) * 2);padding:var(--pr-t-spacings-200)}.userPopover-details{display:flex;align-items:flex-start;gap:var(--pr-t-spacings-200)}.userPopover-details-info{min-width:0}.userPopover-details-info-name{margin:calc(var(--pr-t-spacings-50) * -1);padding:var(--pr-t-spacings-50);font-size:var(--sizes-L-fontSize);line-height:var(--sizes-L-lineHeight);font-weight:700;color:currentColor}.userPopover-details-info-name-linkOptional{color:currentColor;text-decoration:underline;text-decoration-thickness:.75px;text-underline-offset:3px}.userPopover-details-info-name-linkOptional:hover{color:currentColor;text-decoration-thickness:1.5px}.userPopover-details-info-detail{margin-bottom:0;font-size:var(--sizes-S-fontSize);line-height:var(--sizes-S-lineHeight)}.userPopover-details-info-detail-workplace{display:flex;align-items:flex-start;gap:var(--pr-t-spacings-50);color:currentColor;text-decoration:none}.userPopover-details-info-detail-workplace:is(a,button):hover,.userPopover-details-info-detail-workplace:is(a,button):focus{color:currentColor}.userPopover-details-info-detail-workplace:is(a,button):hover .userPopover-details-info-detail-workplace-state,.userPopover-details-info-detail-workplace:is(a,button):focus .userPopover-details-info-detail-workplace-state{text-decoration:underline}.userPopover .userPopover-details-avatar.avatar,.userPopover .userPopover-details-avatar:not(.avatar){--components-avatar-size: 6rem;--components-avatar-fontSize: var(--sizes-XXXL-fontSize);--components-avatar-placeholder-size: 2.5rem;margin:var(--pr-t-spacings-50) 0}.avatar,.lu-user-picture{--components-avatar-size: 2.5rem;--components-avatar-fontSize: var(--sizes-M-fontSize);--components-avatar-border: 2px;--components-avatar-scale: 1;--components-avatar-background: var(--pr-t-elevation-surface-default);--components-avatar-placeholder-size: 1.25rem;display:inline-block;vertical-align:middle;border-radius:var(--commons-borderRadius-full);width:var(--components-avatar-size);aspect-ratio:1}.avatar-picture,.picture{background-color:var(--palettes-neutral-200);border-radius:var(--commons-borderRadius-full);background-position:center;background-size:cover;background-repeat:no-repeat;width:var(--components-avatar-size);object-fit:cover;object-position:center;aspect-ratio:1;display:flex;justify-content:center;align-items:center}.avatar-picture-initials,.picture{font-size:var(--components-avatar-fontSize);font-weight:600;line-height:1;color:var(--palettes-neutral-0)}.avatarWrapper{margin:0;padding:0;list-style-type:none;display:flex;flex-wrap:wrap;align-content:flex-start}.avatarWrapper .avatar{box-shadow:0 0 0 var(--components-avatar-border) var(--components-avatar-background)}.avatarWrapper-item{margin-block:calc(var(--components-avatarWrapper-overlap) / 2)}.avatarWrapper-item:not(:last-child){margin-right:calc(var(--components-avatarWrapper-overlap) * -1)}.avatarWrapper-item-action{padding:0;border:0;width:100%;background-color:transparent;color:inherit;text-align:left;display:block;font:inherit;cursor:pointer;display:flex;text-decoration:none;color:var(--palettes-neutral-800);transition:transform var(--commons-animations-durations-fast);transform:scale(var(--components-avatarWrapper-scale));color:currentColor}.avatarWrapper-item-action:hover,.avatarWrapper-item-action:focus{--components-avatarWrapper-scale: 1.1}.avatarWrapper-item-action:focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:2px;border-radius:var(--commons-borderRadius-full)}.avatarWrapper-item-action-more{box-shadow:0 0 0 var(--components-avatar-border) var(--components-avatar-background);border-radius:var(--commons-borderRadius-full);display:flex;align-items:center;justify-content:center;background-color:var(--palettes-neutral-200);width:var(--components-avatar-size);height:var(--components-avatar-size);font-size:var(--components-avatarWrapper-fontSize)}.avatar.mod-XS,.lu-user-picture.mod-XS{--components-avatar-size: 1.5rem;--components-avatar-fontSize: var(--sizes-XS-fontSize);--components-avatar-placeholder-size: .75rem;--components-avatar-border: 1px}.avatar.mod-S,.lu-user-picture.mod-S{--components-avatar-size: 2rem;--components-avatar-fontSize: var(--sizes-S-fontSize);--components-avatar-placeholder-size: 1rem}.avatar.mod-L,.lu-user-picture.mod-L{--components-avatar-size: 3rem;--components-avatar-fontSize: var(--sizes-L-fontSize);--components-avatar-placeholder-size: 1.75rem}.avatar.mod-XL,.lu-user-picture.mod-XL{--components-avatar-size: 4rem;--components-avatar-fontSize: var(--sizes-XL-fontSize);--components-avatar-placeholder-size: 2rem}.avatar.mod-XXL,.lu-user-picture.mod-XXL{--components-avatar-size: 5rem;--components-avatar-fontSize: var(--sizes-XXL-fontSize);--components-avatar-placeholder-size: 2.25rem}.avatar.mod-XXXL,.lu-user-picture.mod-XXXL{--components-avatar-size: 6rem;--components-avatar-fontSize: var(--sizes-XXXL-fontSize);--components-avatar-placeholder-size: 2.5rem}.avatar.mod-placeholder .avatar-picture,.avatar.mod-placeholder .picture,.lu-user-picture.mod-placeholder .avatar-picture,.lu-user-picture.mod-placeholder .picture{background-color:var(--palettes-neutral-200)!important}.avatar.mod-placeholder .avatar-picture:before,.avatar.mod-placeholder .picture:before,.lu-user-picture.mod-placeholder .avatar-picture:before,.lu-user-picture.mod-placeholder .picture:before{--icon-content: \"\\e990\";display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:Lucca icons;content:var(--icon-content);-webkit-font-smoothing:antialiased;text-transform:none;color:var(--palettes-neutral-600);font-weight:400;font-size:var(--components-avatar-placeholder-size)}.avatar.mod-placeholder .avatar-picture-initials,.avatar.mod-placeholder .userPicture-initials,.lu-user-picture.mod-placeholder .avatar-picture-initials,.lu-user-picture.mod-placeholder .userPicture-initials{display:none}.avatarWrapper{--components-avatar-size: 2.5rem;--components-avatar-fontSize: var(--sizes-M-fontSize);--components-avatar-border: 2px;--components-avatar-scale: 1;--components-avatar-background: var(--pr-t-elevation-surface-default);--components-avatar-placeholder-size: 1.25rem;--components-avatarWrapper-fontSize: var(--sizes-M-fontSize);--components-avatarWrapper-overlap: var(--pr-t-spacings-100)}.avatarWrapper.mod-XL .avatar,.avatarWrapper.mod-XL .avatarWrapper-item-action{--components-avatar-size: 4rem;--components-avatar-fontSize: var(--sizes-XL-fontSize);--components-avatar-placeholder-size: 2rem}.avatarWrapper.mod-L .avatar,.avatarWrapper.mod-L .avatarWrapper-item-action{--components-avatar-size: 3rem;--components-avatar-fontSize: var(--sizes-L-fontSize);--components-avatar-placeholder-size: 1.75rem}.avatarWrapper.mod-S{--components-avatarWrapper-overlap: var(--pr-t-spacings-50)}.avatarWrapper.mod-S .avatar,.avatarWrapper.mod-S .avatarWrapper-item-action{--components-avatar-size: 2rem;--components-avatar-fontSize: var(--sizes-S-fontSize);--components-avatar-placeholder-size: 1rem}.avatarWrapper.mod-XS{--components-avatarWrapper-overlap: var(--pr-t-spacings-50)}.avatarWrapper.mod-XS .avatar,.avatarWrapper.mod-XS .avatarWrapper-item-action{--components-avatar-size: 1.5rem;--components-avatar-fontSize: var(--sizes-XS-fontSize);--components-avatar-placeholder-size: .75rem;--components-avatar-border: 1px}\n"] }]
|
|
384
384
|
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
|
|
385
385
|
type: Inject,
|
|
386
386
|
args: [LuUserPopoverStore]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lucca-front-ng-popup-employee.mjs","sources":["../../../packages/ng/popup-employee/translations.ts","../../../packages/ng/popup-employee/popup-employee.translate.ts","../../../packages/ng/popup-employee/service/user-popover.store.ts","../../../packages/ng/popup-employee/card/pipe/inject-parameter.pipe.ts","../../../packages/ng/popup-employee/card/pipe/is-future.pipe.ts","../../../packages/ng/popup-employee/card/pipe/leave-ends-display.pipe.ts","../../../packages/ng/popup-employee/card/panel/user-popover-panel.component.ts","../../../packages/ng/popup-employee/card/panel/user-popover-panel.component.html","../../../packages/ng/popup-employee/user-popover.providers.ts","../../../packages/ng/popup-employee/card/trigger/user-popover-trigger.directive.ts","../../../packages/ng/popup-employee/lucca-front-ng-popup-employee.ts"],"sourcesContent":["export const Translations = {\n\ten: {\n\t\tEMPLOYEE_CARD_PANEL_COMING_ON_LABEL: 'Arrival expected on {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_ABSENCE_LABEL: 'Absent',\n\t\tEMPLOYEE_CARD_PANEL_MORNING_LABEL: 'Morning',\n\t\tEMPLOYEE_CARD_PANEL_PRESENT_LABEL: 'Present',\n\t\tEMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL: 'Left',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL: 'Today',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING: 'This morning',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL: 'Until tomorrow',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL: 'Until tomorrow morning',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL: 'Until {{date}} inclusive',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL: 'Until {{date}} morning',\n\t},\n\tde: {\n\t\tEMPLOYEE_CARD_PANEL_COMING_ON_LABEL: 'Geplanter Dienstantritt am {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_ABSENCE_LABEL: 'Abwesend',\n\t\tEMPLOYEE_CARD_PANEL_MORNING_LABEL: 'Vormittag',\n\t\tEMPLOYEE_CARD_PANEL_PRESENT_LABEL: 'Anwesend',\n\t\tEMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL: 'Ausgeschieden',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL: 'Heute',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING: 'Heute Morgen',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL: 'Bis morgen',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL: 'Bis morgen Vormittag',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL: 'Bis einschließlich {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL: 'Bis {{date}} morgens',\n\t},\n\tfr: {\n\t\tEMPLOYEE_CARD_PANEL_COMING_ON_LABEL: 'Arrivée prévue le {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_ABSENCE_LABEL: 'Absent',\n\t\tEMPLOYEE_CARD_PANEL_MORNING_LABEL: 'Matin',\n\t\tEMPLOYEE_CARD_PANEL_PRESENT_LABEL: 'Présent(e)',\n\t\tEMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL: 'Parti(e)',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL: \"Aujourd'hui\",\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING: 'Ce matin',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL: \"Jusqu'à demain\",\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL: 'Jusqu’à demain matin',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL: \"Jusqu'au {{date}} inclus\",\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL: \"Jusqu'au {{date}} matin\",\n\t},\n\tit: {\n\t\tEMPLOYEE_CARD_PANEL_COMING_ON_LABEL: 'Arrivo previsto il{{date}}',\n\t\tEMPLOYEE_CARD_PANEL_ABSENCE_LABEL: 'Assente',\n\t\tEMPLOYEE_CARD_PANEL_MORNING_LABEL: 'Mattina',\n\t\tEMPLOYEE_CARD_PANEL_PRESENT_LABEL: 'Presente',\n\t\tEMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL: 'Ex',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL: 'Oggi',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING: 'Questa mattina',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL: 'Fino a domani',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL: 'Fino a domani mattina',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL: 'Fino al {{date}} incluso',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL: 'Fino al mattino del {{date}}',\n\t},\n\tnl: {\n\t\tEMPLOYEE_CARD_PANEL_COMING_ON_LABEL: 'Verwachte aankomst op {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_ABSENCE_LABEL: 'Afwezig',\n\t\tEMPLOYEE_CARD_PANEL_MORNING_LABEL: 'Ochtend',\n\t\tEMPLOYEE_CARD_PANEL_PRESENT_LABEL: 'Aanwezig',\n\t\tEMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL: 'Vertrokken',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL: 'Vandaag',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING: 'Vanochtend',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL: 'Tot morgen',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL: 'Tot morgenochtend',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL: 'Tot en met {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL: 'Tot {{date}} ochtend',\n\t},\n\t'nl-BE': {\n\t\tEMPLOYEE_CARD_PANEL_COMING_ON_LABEL: 'Verwachte aankomst op {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_ABSENCE_LABEL: 'Afwezig',\n\t\tEMPLOYEE_CARD_PANEL_MORNING_LABEL: 'Ochtend',\n\t\tEMPLOYEE_CARD_PANEL_PRESENT_LABEL: 'Aanwezig',\n\t\tEMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL: 'Vertrokken',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL: 'Vandaag',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING: 'Vanochtend',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL: 'Tot morgen',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL: 'Tot morgenochtend',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL: 'Tot en met {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL: 'Tot {{date}} ochtend',\n\t},\n\tes: {\n\t\tEMPLOYEE_CARD_PANEL_COMING_ON_LABEL: 'Llegada prevista el {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_ABSENCE_LABEL: 'Ausente',\n\t\tEMPLOYEE_CARD_PANEL_MORNING_LABEL: 'Por la mañana',\n\t\tEMPLOYEE_CARD_PANEL_PRESENT_LABEL: 'Presente',\n\t\tEMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL: 'Se ha marchado',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL: 'Hoy',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING: 'Esta mañana',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL: 'Hasta mañana',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL: 'Hasta mañana por la mañana',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL: 'Hasta el {{date}} incluido',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL: 'Hasta el {{date}} por la mañana',\n\t},\n\tpt: {\n\t\tEMPLOYEE_CARD_PANEL_COMING_ON_LABEL: 'Chegada prevista para {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_ABSENCE_LABEL: 'Ausente',\n\t\tEMPLOYEE_CARD_PANEL_MORNING_LABEL: 'Manhã',\n\t\tEMPLOYEE_CARD_PANEL_PRESENT_LABEL: 'Presente',\n\t\tEMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL: 'Papel',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL: 'Até hoje',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING: 'Esta manhã',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL: 'Até amanhã',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL: 'Até amanhã de manhã',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL: 'Até {{date}} incluído',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL: 'Até {{date}} de manhã',\n\t},\n};\n","import { InjectionToken } from '@angular/core';\nimport { LuTranslation } from '@lucca-front/ng/core';\nimport { Translations } from './translations';\n\nexport const LU_POPUP_EMPLOYEE_TRANSLATIONS = new InjectionToken('LuPopupEmployeeTranslations', {\n\tfactory: () => luPopupEmployeeTranslations,\n});\n\nexport interface LuPopupEmployeeTranslations {\n\tEMPLOYEE_CARD_PANEL_COMING_ON_LABEL: string;\n\tEMPLOYEE_CARD_PANEL_ABSENCE_LABEL: string;\n\tEMPLOYEE_CARD_PANEL_MORNING_LABEL: string;\n\tEMPLOYEE_CARD_PANEL_PRESENT_LABEL: string;\n\tEMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL: string;\n\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL: string;\n\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING: string;\n\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL: string;\n\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL: string;\n\tEMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL: string;\n\tEMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL: string;\n}\n\nexport const luPopupEmployeeTranslations: LuTranslation<LuPopupEmployeeTranslations> = Translations;\n","import { HttpClient } from '@angular/common/http';\nimport { inject, Injectable } from '@angular/core';\nimport { Observable, OperatorFunction } from 'rxjs';\nimport { shareReplay } from 'rxjs/operators';\n\nimport { ILuUserPopoverStore } from './user-popover-service.model';\nimport { LuUserPopover } from '../user-popover.model';\n\n@Injectable({\n\tprovidedIn: 'root',\n})\nexport class LuUserPopoverStore implements ILuUserPopoverStore {\n\t#http = inject(HttpClient);\n\t#cache = new Map<number, Observable<LuUserPopover>>();\n\tprotected _api = '/work-locations/api/employee-profile-card';\n\n\tpublic get(id: number): Observable<LuUserPopover> {\n\t\tif (this.#cache.has(id)) {\n\t\t\treturn this.#cache.get(id);\n\t\t}\n\t\tconst userPopoverObservable = this.#http.get<LuUserPopover>(`${this._api}/${id}`).pipe(\n\t\t\tcacheImage((c) => c.pictureHref),\n\t\t\tshareReplay(1),\n\t\t);\n\n\t\tthis.#cache.set(id, userPopoverObservable);\n\t\treturn userPopoverObservable;\n\t}\n\n\tpublic clearCache(userId?: number) {\n\t\tif (userId) {\n\t\t\tthis.#cache.delete(userId);\n\t\t} else {\n\t\t\tthis.#cache.clear();\n\t\t}\n\t}\n}\n\nexport function cacheImage<T>(accessor: (value: T) => string | undefined): OperatorFunction<T, T> {\n\treturn (source: Observable<T>): Observable<T> =>\n\t\tnew Observable((subscriber) => {\n\t\t\tsource.subscribe({\n\t\t\t\tnext(value) {\n\t\t\t\t\tconst imagePath = accessor(value);\n\t\t\t\t\tif (!imagePath) {\n\t\t\t\t\t\tsubscriber.next(value);\n\t\t\t\t\t}\n\t\t\t\t\tconst img = new Image();\n\t\t\t\t\timg.src = imagePath!;\n\t\t\t\t\timg.onload = () => {\n\t\t\t\t\t\tsubscriber.next(value);\n\t\t\t\t\t};\n\t\t\t\t\timg.onerror = () => {\n\t\t\t\t\t\tsubscriber.next(value);\n\t\t\t\t\t};\n\t\t\t\t},\n\t\t\t});\n\t\t});\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n// TODO Remplacer par la version de Flavien\n@Pipe({\n\tname: 'injectParameter',\n\tstandalone: true,\n})\nexport class InjectParameterPipe implements PipeTransform {\n\tpublic transform(value: string, date: string): string {\n\t\treturn value.replace('{{date}}', date);\n\t}\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { isFuture, isToday } from 'date-fns';\n\n@Pipe({\n\tname: 'isFuture',\n\tstandalone: true,\n})\nexport class IsFuturePipe implements PipeTransform {\n\tpublic transform(value: Date | undefined): boolean {\n\t\treturn !!value && isFuture(value);\n\t}\n}\n\n@Pipe({\n\tname: 'isFutureOrToday',\n\tstandalone: true,\n})\nexport class isFutureOrTodayPipe implements PipeTransform {\n\tpublic transform(value: Date | undefined): boolean {\n\t\treturn !value || isFuture(value) || isToday(value);\n\t}\n}\n","import { inject, LOCALE_ID, Pipe, PipeTransform } from '@angular/core';\nimport { isToday, isTomorrow } from 'date-fns';\nimport { getIntl } from '@lucca-front/ng/core';\nimport { LU_POPUP_EMPLOYEE_TRANSLATIONS } from '../../popup-employee.translate';\nimport { formatDate } from '@angular/common';\n\n@Pipe({\n\tname: 'leaveEndsDisplay',\n\tstandalone: true,\n})\nexport class LeaveEndsDisplayPipe implements PipeTransform {\n\tintl = getIntl(LU_POPUP_EMPLOYEE_TRANSLATIONS);\n\tlocale = inject(LOCALE_ID);\n\tpublic transform(leaveEndsOn: Date, leaveEndIsFirstHalfDay: boolean): string {\n\t\tif (isToday(leaveEndsOn)) {\n\t\t\tif (leaveEndIsFirstHalfDay) {\n\t\t\t\treturn this.intl.EMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING;\n\t\t\t} else {\n\t\t\t\treturn this.intl.EMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL;\n\t\t\t}\n\t\t} else if (isTomorrow(leaveEndsOn)) {\n\t\t\tif (leaveEndIsFirstHalfDay) {\n\t\t\t\treturn this.intl.EMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL;\n\t\t\t}\n\t\t\treturn this.intl.EMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL;\n\t\t} else {\n\t\t\tif (leaveEndIsFirstHalfDay) {\n\t\t\t\treturn this.intl.EMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL.replace('{{date}}', formatDate(leaveEndsOn, 'longDate', this.locale));\n\t\t\t}\n\t\t\treturn this.intl.EMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL.replace('{{date}}', formatDate(leaveEndsOn, 'longDate', this.locale));\n\t\t}\n\t}\n}\n","/* eslint-disable @angular-eslint/no-input-rename */\n\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport { AsyncPipe, DatePipe, NgClass, NgIf, NgOptimizedImage, NgSwitch, NgSwitchCase, NgTemplateOutlet } from '@angular/common';\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, Inject, Input, OnDestroy, Output, TemplateRef, ViewChild, ViewEncapsulation } from '@angular/core';\nimport { RouterLink } from '@angular/router';\nimport { ALuPopoverPanel, luTransformPopover } from '@lucca-front/ng/popover';\nimport { ILuUser, LuUserPictureModule } from '@lucca-front/ng/user';\nimport { BehaviorSubject, combineLatest, Observable, of, ReplaySubject, Subscription } from 'rxjs';\n\nimport { getIntl } from '@lucca-front/ng/core';\nimport { LuUserPopover } from '../../user-popover.model';\nimport { LU_POPUP_EMPLOYEE_TRANSLATIONS } from '../../popup-employee.translate';\nimport { LuUserPopoverStore } from '../../service/user-popover.store';\nimport { ILuUserPopoverStore } from '../../service/user-popover-service.model';\nimport { InjectParameterPipe } from '../pipe/inject-parameter.pipe';\nimport { isFutureOrTodayPipe, IsFuturePipe } from '../pipe/is-future.pipe';\nimport { LeaveEndsDisplayPipe } from '../pipe/leave-ends-display.pipe';\nimport { ILuUserPopoverPanel } from './user-popover-panel.model';\nimport { catchError, map, switchMap, tap } from 'rxjs/operators';\n\n@Component({\n\tstandalone: true,\n\t// eslint-disable-next-line @angular-eslint/component-selector\n\tselector: 'lu-user-popover-panel',\n\ttemplateUrl: './user-popover-panel.component.html',\n\tstyleUrls: ['./user-popover-panel.component.scss'],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tencapsulation: ViewEncapsulation.None,\n\tanimations: [luTransformPopover],\n\texportAs: 'LuUserPopoverPanel',\n\timports: [\n\t\tLuUserPictureModule,\n\t\tNgClass,\n\t\tRouterLink,\n\t\tNgIf,\n\t\tNgTemplateOutlet,\n\t\tDatePipe,\n\t\tOverlayModule,\n\t\tLeaveEndsDisplayPipe,\n\t\tAsyncPipe,\n\t\tIsFuturePipe,\n\t\tisFutureOrTodayPipe,\n\t\tInjectParameterPipe,\n\t\tNgSwitch,\n\t\tNgSwitchCase,\n\t\tNgOptimizedImage,\n\t],\n})\nexport class LuUserPopoverPanelComponent extends ALuPopoverPanel implements ILuUserPopoverPanel, OnDestroy {\n\t#user$ = new ReplaySubject<ILuUser>();\n\t#errorImage$ = new BehaviorSubject<boolean>(false);\n\tpublic employee$: Observable<LuUserPopover> = this.#user$.pipe(\n\t\tswitchMap((user) =>\n\t\t\tthis._service.get(user.id).pipe(\n\t\t\t\tcatchError(() =>\n\t\t\t\t\tof({\n\t\t\t\t\t\tid: user.id,\n\t\t\t\t\t\tfirstName: user.firstName,\n\t\t\t\t\t\tlastName: user.lastName,\n\t\t\t\t\t\tleaveEndIsFirstHalfDay: false,\n\t\t\t\t\t}),\n\t\t\t\t),\n\t\t\t),\n\t\t),\n\t\ttap(() => this.overlayRef.updatePosition()),\n\t);\n\n\tpublic userPictureDisplay$ = combineLatest([this.employee$, this.#errorImage$]).pipe(\n\t\tmap(([employee, isError]) => {\n\t\t\tif (employee.pictureHref && !isError) {\n\t\t\t\treturn 'img';\n\t\t\t} else {\n\t\t\t\treturn 'initials';\n\t\t\t}\n\t\t}),\n\t);\n\n\tpictureError() {\n\t\tthis.#errorImage$.next(true);\n\t}\n\n\tpublic userPictureHref$ = this.employee$.pipe(map((employee) => employee.pictureHref));\n\n\tpublic userInitials$ = this.employee$.pipe(\n\t\t// TODO: verifier s'il y a besoin de créer un lien avec la locale\n\t\tmap((employee) => {\n\t\t\tconst initials = `${employee.firstName[0]}${employee.lastName[0]}`;\n\n\t\t\treturn {\n\t\t\t\tinitials,\n\t\t\t\tcolor: `${employee.firstName} ${employee.lastName}`.split('').reduce((sum, a) => sum + a.charCodeAt(0), 0) % 360,\n\t\t\t};\n\t\t}),\n\t);\n\n\tintl = getIntl(LU_POPUP_EMPLOYEE_TRANSLATIONS);\n\n\tpublic set user(user: ILuUser) {\n\t\tif (user) {\n\t\t\tthis.#user$.next(user);\n\t\t\tthis._changeDetectorRef.markForCheck();\n\t\t}\n\t}\n\n\t/**\n\t * This method takes classes set on the host lu-popover element and applies them on the\n\t * popover template that displays in the overlay container. Otherwise, it's difficult\n\t * to style the containing popover from outside the component.\n\t * @param classes list of class names\n\t */\n\t@Input('panel-classes')\n\tpublic set inputPanelClasses(classes: string) {\n\t\tthis.panelClasses = classes;\n\t}\n\n\t/**\n\t * This method takes classes set on the host lu-popover element and applies them on the\n\t * popover template that displays in the overlay container. Otherwise, it's difficult\n\t * to style the containing popover from outside the component.\n\t * @param classes list of class names\n\t */\n\t@Input('content-classes')\n\tpublic set inputContentClasses(classes: string) {\n\t\tthis.contentClasses = classes;\n\t}\n\n\t/** Event emitted when the popover is closed. */\n\t// eslint-disable-next-line @angular-eslint/no-output-native\n\t@Output() public override close = new EventEmitter<void>();\n\t// eslint-disable-next-line @angular-eslint/no-output-native\n\t@Output() public override open = new EventEmitter<void>();\n\t@Output() public override hovered = new EventEmitter<boolean>();\n\n\t@ViewChild(TemplateRef, { static: true })\n\tpublic set vcTemplateRef(tr: TemplateRef<unknown>) {\n\t\tthis.templateRef = tr;\n\t}\n\n\tprivate _subs = new Subscription();\n\n\tpublic constructor(\n\t\tprivate _changeDetectorRef: ChangeDetectorRef,\n\t\t@Inject(LuUserPopoverStore) private _service: ILuUserPopoverStore,\n\t) {\n\t\tsuper();\n\t}\n\n\tpublic ngOnDestroy() {\n\t\tthis.onClose();\n\t\tthis.close.complete();\n\t\tthis._subs.unsubscribe();\n\t}\n\n\tpublic _emitCloseEvent(): void {\n\t\tthis.close.emit();\n\t}\n\n\tpublic _emitOpenEvent(): void {\n\t\tthis.open.emit();\n\t}\n\n\tpublic _emitHoveredEvent(hovered: boolean): void {\n\t\tthis.hovered.emit(hovered);\n\t}\n\n\tpublic override onOpen() {\n\t\tthis.focusFirstItem();\n\t}\n\n\tprivate focusFirstItem() {\n\t\t// const firstItem = this._items[0];\n\t\t// if (firstItem) {\n\t\t// firstItem.focus();\n\t\t// }\n\t}\n}\n","<div\n\tclass=\"lu-popover-panel mod-cornerRounded mod-XL mod-boxShadowXL\"\n\t[ngClass]=\"panelClassesMap\"\n\t[attr.id]=\"panelId\"\n\t[attr.aria-labelledby]=\"triggerId\"\n\t[@transformPopover]=\"'enter'\"\n\t(focus)=\"onMouseOver()\"\n\t(mouseover)=\"onMouseOver()\"\n\t(mouseleave)=\"onMouseLeave()\"\n\t(mousedown)=\"onMouseDown()\"\n>\n\t<div *ngIf=\"employee$ | async as employee\" class=\"lu-popover-content userPopover\">\n\t\t<section class=\"userPopover-details\">\n\t\t\t<div [ngSwitch]=\"userPictureDisplay$ | async\" class=\"userPopover-details-avatar avatar\">\n\t\t\t\t<ng-container *ngSwitchCase=\"'img'\">\n\t\t\t\t\t<img class=\"avatar-picture\" [src]=\"userPictureHref$ | async\" [alt]=\"(userInitials$ | async)?.initials\" (error)=\"pictureError()\" />\n\t\t\t\t</ng-container>\n\t\t\t\t<ng-container *ngSwitchCase=\"'initials'\">\n\t\t\t\t\t<div class=\"avatar-picture\" *ngIf=\"userInitials$ | async as initials\" style.background-color=\"hsl({{initials.color}}, 60%, 60%)\">\n\t\t\t\t\t\t<span class=\"avatar-picture-initials\">{{ initials.initials }}</span>\n\t\t\t\t\t</div>\n\t\t\t\t</ng-container>\n\t\t\t</div>\n\t\t\t<div class=\"userPopover-details-info\">\n\t\t\t\t<h1 class=\"userPopover-details-info-name u-ellipsis\">\n\t\t\t\t\t<ng-container *ngIf=\"!employee._links?.hrCard?.href; else fullNameDisplayLink\">\n\t\t\t\t\t\t<ng-container *ngTemplateOutlet=\"fullNameDisplay\" />\n\t\t\t\t\t</ng-container>\n\t\t\t\t</h1>\n\t\t\t\t<ng-template #fullNameDisplayLink>\n\t\t\t\t\t<a class=\"userPopover-details-info-name-linkOptional\" [href]=\"employee._links?.hrCard?.href\">\n\t\t\t\t\t\t<ng-container *ngTemplateOutlet=\"fullNameDisplay\" />\n\t\t\t\t\t</a>\n\t\t\t\t</ng-template>\n\t\t\t\t<ng-template #fullNameDisplay> {{employee.firstName}} {{employee.lastName}} </ng-template>\n\t\t\t\t<p *ngIf=\"employee.jobTitle\" class=\"userPopover-details-info-detail u-ellipsis\">{{employee.jobTitle}}</p>\n\t\t\t\t<p *ngIf=\"employee.userDepartment\" class=\"userPopover-details-info-detail u-ellipsis\">{{employee.userDepartment?.name}}</p>\n\n\t\t\t\t<p class=\"userPopover-details-info-detail u-marginTopXS\">\n\t\t\t\t\t<!-- HORS CONTRAT-->\n\t\t\t\t\t<span *ngIf=\"employee.dtContractStart | isFuture\" class=\"userPopover-details-info-detail-workplace\">\n\t\t\t\t\t\t<span aria-hidden=\"true\" class=\"lucca-icon icon-calendarPlanning mod-S\"></span>\n\t\t\t\t\t\t<span class=\"userPopover-details-info-detail-link-state\">\n\t\t\t\t\t\t\t{{intl.EMPLOYEE_CARD_PANEL_COMING_ON_LABEL | injectParameter : (employee.dtContractStart | date: 'shortDate') }}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</span>\n\t\t\t\t\t<span\n\t\t\t\t\t\t*ngIf=\"!(employee.dtContractStart | isFuture) && !(employee.dtContractEnd | isFutureOrToday)\"\n\t\t\t\t\t\tclass=\"userPopover-details-info-detail-workplace\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<span aria-hidden=\"true\" class=\"lucca-icon icon-calendarStrikethrough mod-S\"></span>\n\t\t\t\t\t\t<span class=\"userPopover-details-info-detail-link-state\"> {{intl.EMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL }} </span>\n\t\t\t\t\t</span>\n\t\t\t\t\t<!-- EN CONTRAT-->\n\t\t\t\t\t<a\n\t\t\t\t\t\t*ngIf=\"employee._links?.schedule && !(employee.dtContractStart | isFuture) && (employee.dtContractEnd | isFutureOrToday)\"\n\t\t\t\t\t\tclass=\"userPopover-details-info-detail-workplace\"\n\t\t\t\t\t\t[href]=\"employee._links?.schedule?.href\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<span\n\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\tclass=\"lucca-icon mod-S\"\n\t\t\t\t\t\t\t[class.icon-mapPin]=\"employee.isWorkingNow && employee.currentWorkLocation\"\n\t\t\t\t\t\t\t[class.icon-calendarPlanning]=\"!employee.isWorkingNow || !employee.currentWorkLocation\"\n\t\t\t\t\t\t></span>\n\t\t\t\t\t\t<span class=\"userPopover-details-info-detail-workplace-state\">\n\t\t\t\t\t\t\t<ng-container *ngIf=\"employee.isWorkingNow === true\">\n\t\t\t\t\t\t\t\t<ng-container *ngIf=\"employee.currentWorkLocation\">\n\t\t\t\t\t\t\t\t\t{{ employee.currentWorkLocation?.name }}\n\t\t\t\t\t\t\t\t\t<ng-container *ngIf=\"employee.currentWorkLocation?.area\"\n\t\t\t\t\t\t\t\t\t\t><span class=\"u-textLight\"> – {{employee.currentWorkLocation?.area?.name}}</span>\n\t\t\t\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t\t\t\t<ng-container *ngIf=\"!employee.currentWorkLocation\">{{intl.EMPLOYEE_CARD_PANEL_PRESENT_LABEL }} </ng-container>\n\t\t\t\t\t\t\t</ng-container>\n\n\t\t\t\t\t\t\t<ng-container *ngIf=\"employee.isWorkingNow === false\">\n\t\t\t\t\t\t\t\t<ng-container *ngIf=\"!(employee.dtContractStart | isFuture) && (employee.dtContractEnd | isFutureOrToday)\">\n\t\t\t\t\t\t\t\t\t{{ intl.EMPLOYEE_CARD_PANEL_ABSENCE_LABEL }}\n\t\t\t\t\t\t\t\t\t<span *ngIf=\"employee.leaveEndsOn\" class=\"u-textLight\"\n\t\t\t\t\t\t\t\t\t\t> – {{ employee.leaveEndsOn | leaveEndsDisplay: employee.leaveEndIsFirstHalfDay }}\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</a>\n\t\t\t\t</p>\n\t\t\t</div>\n\t\t</section>\n\t</div>\n</div>\n","import { Observable, of } from 'rxjs';\nimport { importProvidersFrom, inject, InjectionToken, makeEnvironmentProviders } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { catchError, map, shareReplay } from 'rxjs/operators';\nimport { OverlayModule } from '@angular/cdk/overlay';\n\nexport const USER_POPOVER_IS_ACTIVATED = new InjectionToken<Observable<boolean>>('user-popover-is-activated', {\n\tfactory: () =>\n\t\tinject(HttpClient)\n\t\t\t.get<{ key: string; status: string }>('/lucca-banner/meta/api/feature-flag-statuses/user-popover-is-activated')\n\t\t\t.pipe(\n\t\t\t\tmap((flag) => flag.status === 'Enabled'),\n\t\t\t\tcatchError(() => of(false)),\n\t\t\t\tshareReplay(1),\n\t\t\t),\n});\n\nexport function provideLuUserPopover() {\n\treturn makeEnvironmentProviders([importProvidersFrom(OverlayModule)]);\n}\n","/* eslint-disable @angular-eslint/no-output-on-prefix */\n/* eslint-disable @angular-eslint/no-input-rename */\n\nimport { FlexibleConnectedPositionStrategy, Overlay, OverlayRef } from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { AfterViewInit, Directive, ElementRef, HostBinding, HostListener, inject, Input, OnDestroy, ViewContainerRef } from '@angular/core';\nimport { ALuPopoverTrigger, LuPopoverScrollStrategy, LuPopoverTarget } from '@lucca-front/ng/popover';\nimport { ILuUser } from '@lucca-front/ng/user';\nimport { LuUserPopoverPanelComponent } from '../panel/user-popover-panel.component';\nimport { Observable } from 'rxjs';\nimport { USER_POPOVER_IS_ACTIVATED } from '../../user-popover.providers';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\n/**\n * This directive is intended to be used in conjunction with an lu-dropdown tag. It is\n * responsible for toggling the display of the provided dropdown instance.\n */\n@Directive({\n\t// eslint-disable-next-line @angular-eslint/directive-selector\n\tselector: '[luUserPopover]',\n\tstandalone: true,\n\texportAs: 'LuUserPopoverDirective',\n})\nexport class LuUserPopoverDirective extends ALuPopoverTrigger<LuUserPopoverPanelComponent, LuPopoverTarget> implements AfterViewInit, OnDestroy {\n\t@Input('luUserPopover')\n\tpublic set user(c: ILuUser) {\n\t\tif (this.panel) {\n\t\t\tthis.panel.user = c;\n\t\t}\n\t\tthis._user = c;\n\t}\n\n\t/** when trigger = hover, delay before the popover panel appears, default 300ms */\n\t@Input('luUserPopoverEnterDelay')\n\tpublic set inputEnterDelay(d: number) {\n\t\tthis.enterDelay = d;\n\t}\n\n\t/** when trigger = hover, delay before the popover panel disappears, default 100ms */\n\t@Input('luUserPopoverLeaveDelay')\n\tpublic set inputLeaveDelay(d: number) {\n\t\tthis.leaveDelay = d;\n\t}\n\n\t// TODO : put this back when uniform alignment and position\n\t// /** how you want to position the panel relative to the target, allowed values: above, below, before, after */\n\t// @Input('luEmployeeCardPosition') public set inputPosition(pos: LuPopoverPosition) {\n\t// \tthis.target.position = pos;\n\t// }\n\t// /** how the panel will be aligned with the target, allowed values: top, bottom, left, right */\n\t// @Input('luEmployeeCardAlignment') public set inputAlignment(al: LuPopoverAlignment) {\n\t// \tthis.target.alignment = al;\n\t// }\n\t/** disable popover apparition */\n\t@Input('luUserPopoverDisabled')\n\tpublic set inputDisabled(d: boolean) {\n\t\tthis.disabled = d;\n\t}\n\n\t/** accessibility attribute - dont override */\n\t@HostBinding('attr.aria-expanded')\n\tpublic get _attrAriaExpanded() {\n\t\treturn this._popoverOpen;\n\t}\n\n\t/** accessibility attribute - dont override */\n\t@HostBinding('attr.id')\n\tpublic get _attrId() {\n\t\treturn this._triggerId;\n\t}\n\n\t/** accessibility attribute - dont override */\n\t@HostBinding('attr.aria-controls')\n\tpublic get _attrAriaControls() {\n\t\treturn this._panelId;\n\t}\n\n\tprivate _handleTabindex = false;\n\t// @HostBinding('attr.tabindex') tabindex;\n\t// private set tabindex(i: number = null) {\n\n\t// }\n\n\t// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n\tprotected override _portal: ComponentPortal<LuUserPopoverPanelComponent>;\n\tprotected _user: ILuUser = { id: 0, firstName: '', lastName: '' };\n\n\tpublic constructor(\n\t\tprotected override _overlay: Overlay,\n\t\tprotected override _elementRef: ElementRef<HTMLElement>,\n\t\tprotected override _viewContainerRef: ViewContainerRef,\n\t) {\n\t\tsuper(_overlay, _elementRef, _viewContainerRef);\n\t\tthis.target = new LuPopoverTarget();\n\t\tthis.target.elementRef = this._elementRef;\n\t\tthis._triggerId = this._elementRef.nativeElement.getAttribute('id') || this._triggerId;\n\t\tthis.target.position = 'above';\n\t\tthis.target.alignment = 'left';\n\t\tthis.triggerEvent = 'none';\n\t\tthis.enterDelay = 300;\n\t\tthis.leaveDelay = 100;\n\n\t\tinject(USER_POPOVER_IS_ACTIVATED)\n\t\t\t.pipe(takeUntilDestroyed())\n\t\t\t.subscribe((isActivated) => {\n\t\t\t\tthis.triggerEvent = isActivated ? 'hover' : 'none';\n\t\t\t});\n\n\t\tthis._handleTabindex = this._shouldHandleTabindex();\n\n\t\tif (this._handleTabindex) {\n\t\t\tthis._setTabindex(0);\n\t\t}\n\t}\n\n\t@HostListener('mouseenter')\n\tpublic override onMouseEnter() {\n\t\tsuper.onMouseEnter();\n\t}\n\n\t@HostListener('mouseleave')\n\tpublic override onMouseLeave() {\n\t\tsuper.onMouseLeave();\n\t}\n\n\t@HostListener('focus')\n\tpublic override onFocus() {\n\t\tsuper.onFocus();\n\t}\n\n\t@HostListener('blur')\n\tpublic override onBlur() {\n\t\tsuper.onBlur();\n\t}\n\n\tpublic ngAfterViewInit() {\n\t\tthis._checkTarget();\n\t}\n\n\tpublic ngOnDestroy() {\n\t\tthis._cleanUpSubscriptions();\n\t\tif (this._popoverOpen) {\n\t\t\tthis.closePopover();\n\t\t}\n\t\tthis.destroyPopover();\n\t}\n\n\tprotected override _createOverlay(): OverlayRef {\n\t\tif (!this._overlayRef) {\n\t\t\tthis._portal = new ComponentPortal(LuUserPopoverPanelComponent, this._viewContainerRef);\n\t\t\tconst config = this._getOverlayConfig();\n\t\t\tthis._subscribeToPositions(config.positionStrategy as FlexibleConnectedPositionStrategy);\n\t\t\tthis._overlayRef = this._overlay.create(config);\n\t\t}\n\n\t\treturn this._overlayRef;\n\t}\n\n\tprotected override _attachPortalToOverlay(): void {\n\t\tconst componentRef = this._overlayRef.attach(this._portal);\n\t\tthis._panel = componentRef.instance;\n\t\tthis._panel.user = this._user;\n\t\tthis._panel.overlayRef = this._overlayRef;\n\t}\n\n\tprotected override _getPanelScrollStrategy(): LuPopoverScrollStrategy {\n\t\treturn 'close';\n\t}\n\n\tprivate _shouldHandleTabindex(): boolean {\n\t\tconst tag = this._elementRef.nativeElement.tagName?.toLowerCase();\n\t\t// https://allyjs.io/data-tables/focusable.html\n\t\t// i'm choosing to not support area and iframe, dont @ me\n\t\tconst nativelyFocusableTags = ['a', 'button', 'input', 'select', 'textarea'];\n\t\tconst isNatevelyFocusableTag = nativelyFocusableTags.includes(tag);\n\n\t\tconst hasATabIndex = this._elementRef.nativeElement.getAttribute('tabindex') !== null;\n\n\t\treturn !isNatevelyFocusableTag && !hasATabIndex;\n\t}\n\n\t// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n\tprivate _setTabindex(i: number = null): void {\n\t\tthis._elementRef.nativeElement.setAttribute('tabindex', `${i}`);\n\t}\n\n\t// Mandatory but useless\n\tonClose: Observable<void>;\n\tonOpen: Observable<void>;\n\n\tprotected override _emitOpen(): void {}\n\n\tprotected override _emitClose(): void {}\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"lucca-front-ng-popup-employee.mjs","sources":["../../../packages/ng/popup-employee/translations.ts","../../../packages/ng/popup-employee/popup-employee.translate.ts","../../../packages/ng/popup-employee/service/user-popover.store.ts","../../../packages/ng/popup-employee/card/pipe/inject-parameter.pipe.ts","../../../packages/ng/popup-employee/card/pipe/is-future.pipe.ts","../../../packages/ng/popup-employee/card/pipe/leave-ends-display.pipe.ts","../../../packages/ng/popup-employee/card/panel/user-popover-panel.component.ts","../../../packages/ng/popup-employee/card/panel/user-popover-panel.component.html","../../../packages/ng/popup-employee/user-popover.providers.ts","../../../packages/ng/popup-employee/card/trigger/user-popover-trigger.directive.ts","../../../packages/ng/popup-employee/lucca-front-ng-popup-employee.ts"],"sourcesContent":["export const Translations = {\n\ten: {\n\t\tEMPLOYEE_CARD_PANEL_COMING_ON_LABEL: 'Arrival expected on {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_ABSENCE_LABEL: 'Absent',\n\t\tEMPLOYEE_CARD_PANEL_MORNING_LABEL: 'Morning',\n\t\tEMPLOYEE_CARD_PANEL_PRESENT_LABEL: 'Present',\n\t\tEMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL: 'Left',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL: 'Today',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING: 'This morning',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL: 'Until tomorrow',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL: 'Until tomorrow morning',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL: 'Until {{date}} inclusive',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL: 'Until {{date}} morning',\n\t},\n\tde: {\n\t\tEMPLOYEE_CARD_PANEL_COMING_ON_LABEL: 'Geplanter Dienstantritt am {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_ABSENCE_LABEL: 'Abwesend',\n\t\tEMPLOYEE_CARD_PANEL_MORNING_LABEL: 'Vormittag',\n\t\tEMPLOYEE_CARD_PANEL_PRESENT_LABEL: 'Anwesend',\n\t\tEMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL: 'Ausgeschieden',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL: 'Heute',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING: 'Heute Morgen',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL: 'Bis morgen',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL: 'Bis morgen Vormittag',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL: 'Bis einschließlich {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL: 'Bis {{date}} morgens',\n\t},\n\tfr: {\n\t\tEMPLOYEE_CARD_PANEL_COMING_ON_LABEL: 'Arrivée prévue le {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_ABSENCE_LABEL: 'Absent',\n\t\tEMPLOYEE_CARD_PANEL_MORNING_LABEL: 'Matin',\n\t\tEMPLOYEE_CARD_PANEL_PRESENT_LABEL: 'Présent(e)',\n\t\tEMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL: 'Parti(e)',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL: \"Aujourd'hui\",\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING: 'Ce matin',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL: \"Jusqu'à demain\",\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL: 'Jusqu’à demain matin',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL: \"Jusqu'au {{date}} inclus\",\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL: \"Jusqu'au {{date}} matin\",\n\t},\n\tit: {\n\t\tEMPLOYEE_CARD_PANEL_COMING_ON_LABEL: 'Arrivo previsto il{{date}}',\n\t\tEMPLOYEE_CARD_PANEL_ABSENCE_LABEL: 'Assente',\n\t\tEMPLOYEE_CARD_PANEL_MORNING_LABEL: 'Mattina',\n\t\tEMPLOYEE_CARD_PANEL_PRESENT_LABEL: 'Presente',\n\t\tEMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL: 'Ex',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL: 'Oggi',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING: 'Questa mattina',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL: 'Fino a domani',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL: 'Fino a domani mattina',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL: 'Fino al {{date}} incluso',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL: 'Fino al mattino del {{date}}',\n\t},\n\tnl: {\n\t\tEMPLOYEE_CARD_PANEL_COMING_ON_LABEL: 'Verwachte aankomst op {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_ABSENCE_LABEL: 'Afwezig',\n\t\tEMPLOYEE_CARD_PANEL_MORNING_LABEL: 'Ochtend',\n\t\tEMPLOYEE_CARD_PANEL_PRESENT_LABEL: 'Aanwezig',\n\t\tEMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL: 'Vertrokken',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL: 'Vandaag',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING: 'Vanochtend',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL: 'Tot morgen',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL: 'Tot morgenochtend',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL: 'Tot en met {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL: 'Tot {{date}} ochtend',\n\t},\n\t'nl-BE': {\n\t\tEMPLOYEE_CARD_PANEL_COMING_ON_LABEL: 'Verwachte aankomst op {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_ABSENCE_LABEL: 'Afwezig',\n\t\tEMPLOYEE_CARD_PANEL_MORNING_LABEL: 'Ochtend',\n\t\tEMPLOYEE_CARD_PANEL_PRESENT_LABEL: 'Aanwezig',\n\t\tEMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL: 'Vertrokken',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL: 'Vandaag',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING: 'Vanochtend',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL: 'Tot morgen',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL: 'Tot morgenochtend',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL: 'Tot en met {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL: 'Tot {{date}} ochtend',\n\t},\n\tes: {\n\t\tEMPLOYEE_CARD_PANEL_COMING_ON_LABEL: 'Llegada prevista el {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_ABSENCE_LABEL: 'Ausente',\n\t\tEMPLOYEE_CARD_PANEL_MORNING_LABEL: 'Por la mañana',\n\t\tEMPLOYEE_CARD_PANEL_PRESENT_LABEL: 'Presente',\n\t\tEMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL: 'Se ha marchado',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL: 'Hoy',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING: 'Esta mañana',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL: 'Hasta mañana',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL: 'Hasta mañana por la mañana',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL: 'Hasta el {{date}} incluido',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL: 'Hasta el {{date}} por la mañana',\n\t},\n\tpt: {\n\t\tEMPLOYEE_CARD_PANEL_COMING_ON_LABEL: 'Chegada prevista para {{date}}',\n\t\tEMPLOYEE_CARD_PANEL_ABSENCE_LABEL: 'Ausente',\n\t\tEMPLOYEE_CARD_PANEL_MORNING_LABEL: 'Manhã',\n\t\tEMPLOYEE_CARD_PANEL_PRESENT_LABEL: 'Presente',\n\t\tEMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL: 'Papel',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL: 'Até hoje',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING: 'Esta manhã',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL: 'Até amanhã',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL: 'Até amanhã de manhã',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL: 'Até {{date}} incluído',\n\t\tEMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL: 'Até {{date}} de manhã',\n\t},\n};\n","import { InjectionToken } from '@angular/core';\nimport { LuTranslation } from '@lucca-front/ng/core';\nimport { Translations } from './translations';\n\nexport const LU_POPUP_EMPLOYEE_TRANSLATIONS = new InjectionToken('LuPopupEmployeeTranslations', {\n\tfactory: () => luPopupEmployeeTranslations,\n});\n\nexport interface LuPopupEmployeeTranslations {\n\tEMPLOYEE_CARD_PANEL_COMING_ON_LABEL: string;\n\tEMPLOYEE_CARD_PANEL_ABSENCE_LABEL: string;\n\tEMPLOYEE_CARD_PANEL_MORNING_LABEL: string;\n\tEMPLOYEE_CARD_PANEL_PRESENT_LABEL: string;\n\tEMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL: string;\n\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL: string;\n\tEMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING: string;\n\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL: string;\n\tEMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL: string;\n\tEMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL: string;\n\tEMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL: string;\n}\n\nexport const luPopupEmployeeTranslations: LuTranslation<LuPopupEmployeeTranslations> = Translations;\n","import { HttpClient } from '@angular/common/http';\nimport { inject, Injectable } from '@angular/core';\nimport { Observable, OperatorFunction } from 'rxjs';\nimport { shareReplay } from 'rxjs/operators';\n\nimport { ILuUserPopoverStore } from './user-popover-service.model';\nimport { LuUserPopover } from '../user-popover.model';\n\n@Injectable({\n\tprovidedIn: 'root',\n})\nexport class LuUserPopoverStore implements ILuUserPopoverStore {\n\t#http = inject(HttpClient);\n\t#cache = new Map<number, Observable<LuUserPopover>>();\n\tprotected _api = '/work-locations/api/employee-profile-card';\n\n\tpublic get(id: number): Observable<LuUserPopover> {\n\t\tif (this.#cache.has(id)) {\n\t\t\treturn this.#cache.get(id);\n\t\t}\n\t\tconst userPopoverObservable = this.#http.get<LuUserPopover>(`${this._api}/${id}`).pipe(\n\t\t\tcacheImage((c) => c.pictureHref),\n\t\t\tshareReplay(1),\n\t\t);\n\n\t\tthis.#cache.set(id, userPopoverObservable);\n\t\treturn userPopoverObservable;\n\t}\n\n\tpublic clearCache(userId?: number) {\n\t\tif (userId) {\n\t\t\tthis.#cache.delete(userId);\n\t\t} else {\n\t\t\tthis.#cache.clear();\n\t\t}\n\t}\n}\n\nexport function cacheImage<T>(accessor: (value: T) => string | undefined): OperatorFunction<T, T> {\n\treturn (source: Observable<T>): Observable<T> =>\n\t\tnew Observable((subscriber) => {\n\t\t\tsource.subscribe({\n\t\t\t\tnext(value) {\n\t\t\t\t\tconst imagePath = accessor(value);\n\t\t\t\t\tif (!imagePath) {\n\t\t\t\t\t\tsubscriber.next(value);\n\t\t\t\t\t}\n\t\t\t\t\tconst img = new Image();\n\t\t\t\t\timg.src = imagePath!;\n\t\t\t\t\timg.onload = () => {\n\t\t\t\t\t\tsubscriber.next(value);\n\t\t\t\t\t};\n\t\t\t\t\timg.onerror = () => {\n\t\t\t\t\t\tsubscriber.next(value);\n\t\t\t\t\t};\n\t\t\t\t},\n\t\t\t});\n\t\t});\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n// TODO Remplacer par la version de Flavien\n@Pipe({\n\tname: 'injectParameter',\n\tstandalone: true,\n})\nexport class InjectParameterPipe implements PipeTransform {\n\tpublic transform(value: string, date: string): string {\n\t\treturn value.replace('{{date}}', date);\n\t}\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { isFuture, isToday } from 'date-fns';\n\n@Pipe({\n\tname: 'isFuture',\n\tstandalone: true,\n})\nexport class IsFuturePipe implements PipeTransform {\n\tpublic transform(value: Date | undefined): boolean {\n\t\treturn !!value && isFuture(value);\n\t}\n}\n\n@Pipe({\n\tname: 'isFutureOrToday',\n\tstandalone: true,\n})\nexport class isFutureOrTodayPipe implements PipeTransform {\n\tpublic transform(value: Date | undefined): boolean {\n\t\treturn !value || isFuture(value) || isToday(value);\n\t}\n}\n","import { inject, LOCALE_ID, Pipe, PipeTransform } from '@angular/core';\nimport { isToday, isTomorrow } from 'date-fns';\nimport { getIntl } from '@lucca-front/ng/core';\nimport { LU_POPUP_EMPLOYEE_TRANSLATIONS } from '../../popup-employee.translate';\nimport { formatDate } from '@angular/common';\n\n@Pipe({\n\tname: 'leaveEndsDisplay',\n\tstandalone: true,\n})\nexport class LeaveEndsDisplayPipe implements PipeTransform {\n\tintl = getIntl(LU_POPUP_EMPLOYEE_TRANSLATIONS);\n\tlocale = inject(LOCALE_ID);\n\tpublic transform(leaveEndsOn: Date, leaveEndIsFirstHalfDay: boolean): string {\n\t\tif (isToday(leaveEndsOn)) {\n\t\t\tif (leaveEndIsFirstHalfDay) {\n\t\t\t\treturn this.intl.EMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL_MORNING;\n\t\t\t} else {\n\t\t\t\treturn this.intl.EMPLOYEE_CARD_PANEL_UNTIL_TODAY_LABEL;\n\t\t\t}\n\t\t} else if (isTomorrow(leaveEndsOn)) {\n\t\t\tif (leaveEndIsFirstHalfDay) {\n\t\t\t\treturn this.intl.EMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_MORNING_LABEL;\n\t\t\t}\n\t\t\treturn this.intl.EMPLOYEE_CARD_PANEL_UNTIL_TOMORROW_LABEL;\n\t\t} else {\n\t\t\tif (leaveEndIsFirstHalfDay) {\n\t\t\t\treturn this.intl.EMPLOYEE_CARD_PANEL_UNTIL_MORNING_DATE_LABEL.replace('{{date}}', formatDate(leaveEndsOn, 'longDate', this.locale));\n\t\t\t}\n\t\t\treturn this.intl.EMPLOYEE_CARD_PANEL_UNTIL_DATE_LABEL.replace('{{date}}', formatDate(leaveEndsOn, 'longDate', this.locale));\n\t\t}\n\t}\n}\n","/* eslint-disable @angular-eslint/no-input-rename */\n\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport { AsyncPipe, DatePipe, NgClass, NgIf, NgOptimizedImage, NgSwitch, NgSwitchCase, NgTemplateOutlet } from '@angular/common';\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, Inject, Input, OnDestroy, Output, TemplateRef, ViewChild, ViewEncapsulation } from '@angular/core';\nimport { RouterLink } from '@angular/router';\nimport { ALuPopoverPanel, luTransformPopover } from '@lucca-front/ng/popover';\nimport { ILuUser, LuUserPictureModule } from '@lucca-front/ng/user';\nimport { BehaviorSubject, combineLatest, Observable, of, ReplaySubject, Subscription } from 'rxjs';\n\nimport { getIntl } from '@lucca-front/ng/core';\nimport { LuUserPopover } from '../../user-popover.model';\nimport { LU_POPUP_EMPLOYEE_TRANSLATIONS } from '../../popup-employee.translate';\nimport { LuUserPopoverStore } from '../../service/user-popover.store';\nimport { ILuUserPopoverStore } from '../../service/user-popover-service.model';\nimport { InjectParameterPipe } from '../pipe/inject-parameter.pipe';\nimport { isFutureOrTodayPipe, IsFuturePipe } from '../pipe/is-future.pipe';\nimport { LeaveEndsDisplayPipe } from '../pipe/leave-ends-display.pipe';\nimport { ILuUserPopoverPanel } from './user-popover-panel.model';\nimport { catchError, map, switchMap, tap } from 'rxjs/operators';\n\n@Component({\n\tstandalone: true,\n\t// eslint-disable-next-line @angular-eslint/component-selector\n\tselector: 'lu-user-popover-panel',\n\ttemplateUrl: './user-popover-panel.component.html',\n\tstyleUrls: ['./user-popover-panel.component.scss'],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tencapsulation: ViewEncapsulation.None,\n\tanimations: [luTransformPopover],\n\texportAs: 'LuUserPopoverPanel',\n\timports: [\n\t\tLuUserPictureModule,\n\t\tNgClass,\n\t\tRouterLink,\n\t\tNgIf,\n\t\tNgTemplateOutlet,\n\t\tDatePipe,\n\t\tOverlayModule,\n\t\tLeaveEndsDisplayPipe,\n\t\tAsyncPipe,\n\t\tIsFuturePipe,\n\t\tisFutureOrTodayPipe,\n\t\tInjectParameterPipe,\n\t\tNgSwitch,\n\t\tNgSwitchCase,\n\t\tNgOptimizedImage,\n\t],\n})\nexport class LuUserPopoverPanelComponent extends ALuPopoverPanel implements ILuUserPopoverPanel, OnDestroy {\n\t#user$ = new ReplaySubject<ILuUser>();\n\t#errorImage$ = new BehaviorSubject<boolean>(false);\n\tpublic employee$: Observable<LuUserPopover> = this.#user$.pipe(\n\t\tswitchMap((user) =>\n\t\t\tthis._service.get(user.id).pipe(\n\t\t\t\tcatchError(() =>\n\t\t\t\t\tof({\n\t\t\t\t\t\tid: user.id,\n\t\t\t\t\t\tfirstName: user.firstName,\n\t\t\t\t\t\tlastName: user.lastName,\n\t\t\t\t\t\tleaveEndIsFirstHalfDay: false,\n\t\t\t\t\t}),\n\t\t\t\t),\n\t\t\t),\n\t\t),\n\t\ttap(() => this.overlayRef.updatePosition()),\n\t);\n\n\tpublic userPictureDisplay$ = combineLatest([this.employee$, this.#errorImage$]).pipe(\n\t\tmap(([employee, isError]) => {\n\t\t\tif (employee.pictureHref && !isError) {\n\t\t\t\treturn 'img';\n\t\t\t} else {\n\t\t\t\treturn 'initials';\n\t\t\t}\n\t\t}),\n\t);\n\n\tpictureError() {\n\t\tthis.#errorImage$.next(true);\n\t}\n\n\tpublic userPictureHref$ = this.employee$.pipe(map((employee) => employee.pictureHref));\n\n\tpublic userInitials$ = this.employee$.pipe(\n\t\t// TODO: verifier s'il y a besoin de créer un lien avec la locale\n\t\tmap((employee) => {\n\t\t\tconst initials = `${employee.firstName[0]}${employee.lastName[0]}`;\n\n\t\t\treturn {\n\t\t\t\tinitials,\n\t\t\t\tcolor: `${employee.firstName} ${employee.lastName}`.split('').reduce((sum, a) => sum + a.charCodeAt(0), 0) % 360,\n\t\t\t};\n\t\t}),\n\t);\n\n\tintl = getIntl(LU_POPUP_EMPLOYEE_TRANSLATIONS);\n\n\tpublic set user(user: ILuUser) {\n\t\tif (user) {\n\t\t\tthis.#user$.next(user);\n\t\t\tthis._changeDetectorRef.markForCheck();\n\t\t}\n\t}\n\n\t/**\n\t * This method takes classes set on the host lu-popover element and applies them on the\n\t * popover template that displays in the overlay container. Otherwise, it's difficult\n\t * to style the containing popover from outside the component.\n\t * @param classes list of class names\n\t */\n\t@Input('panel-classes')\n\tpublic set inputPanelClasses(classes: string) {\n\t\tthis.panelClasses = classes;\n\t}\n\n\t/**\n\t * This method takes classes set on the host lu-popover element and applies them on the\n\t * popover template that displays in the overlay container. Otherwise, it's difficult\n\t * to style the containing popover from outside the component.\n\t * @param classes list of class names\n\t */\n\t@Input('content-classes')\n\tpublic set inputContentClasses(classes: string) {\n\t\tthis.contentClasses = classes;\n\t}\n\n\t/** Event emitted when the popover is closed. */\n\t// eslint-disable-next-line @angular-eslint/no-output-native\n\t@Output() public override close = new EventEmitter<void>();\n\t// eslint-disable-next-line @angular-eslint/no-output-native\n\t@Output() public override open = new EventEmitter<void>();\n\t@Output() public override hovered = new EventEmitter<boolean>();\n\n\t@ViewChild(TemplateRef, { static: true })\n\tpublic set vcTemplateRef(tr: TemplateRef<unknown>) {\n\t\tthis.templateRef = tr;\n\t}\n\n\tprivate _subs = new Subscription();\n\n\tpublic constructor(\n\t\tprivate _changeDetectorRef: ChangeDetectorRef,\n\t\t@Inject(LuUserPopoverStore) private _service: ILuUserPopoverStore,\n\t) {\n\t\tsuper();\n\t}\n\n\tpublic ngOnDestroy() {\n\t\tthis.onClose();\n\t\tthis.close.complete();\n\t\tthis._subs.unsubscribe();\n\t}\n\n\tpublic _emitCloseEvent(): void {\n\t\tthis.close.emit();\n\t}\n\n\tpublic _emitOpenEvent(): void {\n\t\tthis.open.emit();\n\t}\n\n\tpublic _emitHoveredEvent(hovered: boolean): void {\n\t\tthis.hovered.emit(hovered);\n\t}\n\n\tpublic override onOpen() {\n\t\tthis.focusFirstItem();\n\t}\n\n\tprivate focusFirstItem() {\n\t\t// const firstItem = this._items[0];\n\t\t// if (firstItem) {\n\t\t// firstItem.focus();\n\t\t// }\n\t}\n}\n","<div\n\tclass=\"lu-popover-panel mod-cornerRounded mod-XL mod-boxShadowXL\"\n\t[ngClass]=\"panelClassesMap\"\n\t[attr.id]=\"panelId\"\n\t[attr.aria-labelledby]=\"triggerId\"\n\t[@transformPopover]=\"'enter'\"\n\t(focus)=\"onMouseOver()\"\n\t(mouseover)=\"onMouseOver()\"\n\t(mouseleave)=\"onMouseLeave()\"\n\t(mousedown)=\"onMouseDown()\"\n>\n\t<div *ngIf=\"employee$ | async as employee\" class=\"lu-popover-content userPopover\">\n\t\t<section class=\"userPopover-details\">\n\t\t\t<div [ngSwitch]=\"userPictureDisplay$ | async\" class=\"userPopover-details-avatar avatar\">\n\t\t\t\t<ng-container *ngSwitchCase=\"'img'\">\n\t\t\t\t\t<img class=\"avatar-picture\" [src]=\"userPictureHref$ | async\" [alt]=\"(userInitials$ | async)?.initials\" (error)=\"pictureError()\" />\n\t\t\t\t</ng-container>\n\t\t\t\t<ng-container *ngSwitchCase=\"'initials'\">\n\t\t\t\t\t<div class=\"avatar-picture\" *ngIf=\"userInitials$ | async as initials\" style.background-color=\"hsl({{initials.color}}, 60%, 60%)\">\n\t\t\t\t\t\t<span class=\"avatar-picture-initials\">{{ initials.initials }}</span>\n\t\t\t\t\t</div>\n\t\t\t\t</ng-container>\n\t\t\t</div>\n\t\t\t<div class=\"userPopover-details-info\">\n\t\t\t\t<h1 class=\"userPopover-details-info-name u-ellipsis\">\n\t\t\t\t\t<ng-container *ngIf=\"!employee._links?.hrCard?.href; else fullNameDisplayLink\">\n\t\t\t\t\t\t<ng-container *ngTemplateOutlet=\"fullNameDisplay\" />\n\t\t\t\t\t</ng-container>\n\t\t\t\t</h1>\n\t\t\t\t<ng-template #fullNameDisplayLink>\n\t\t\t\t\t<a class=\"userPopover-details-info-name-linkOptional\" [href]=\"employee._links?.hrCard?.href\">\n\t\t\t\t\t\t<ng-container *ngTemplateOutlet=\"fullNameDisplay\" />\n\t\t\t\t\t</a>\n\t\t\t\t</ng-template>\n\t\t\t\t<ng-template #fullNameDisplay> {{employee.firstName}} {{employee.lastName}} </ng-template>\n\t\t\t\t<p *ngIf=\"employee.jobTitle\" class=\"userPopover-details-info-detail u-ellipsis\">{{employee.jobTitle}}</p>\n\t\t\t\t<p *ngIf=\"employee.userDepartment\" class=\"userPopover-details-info-detail u-ellipsis\">{{employee.userDepartment?.name}}</p>\n\n\t\t\t\t<p class=\"userPopover-details-info-detail u-marginTopXS\">\n\t\t\t\t\t<!-- HORS CONTRAT-->\n\t\t\t\t\t<span *ngIf=\"employee.dtContractStart | isFuture\" class=\"userPopover-details-info-detail-workplace\">\n\t\t\t\t\t\t<span aria-hidden=\"true\" class=\"lucca-icon icon-calendarPlanning mod-S\"></span>\n\t\t\t\t\t\t<span class=\"userPopover-details-info-detail-link-state\">\n\t\t\t\t\t\t\t{{intl.EMPLOYEE_CARD_PANEL_COMING_ON_LABEL | injectParameter : (employee.dtContractStart | date: 'shortDate') }}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</span>\n\t\t\t\t\t<span\n\t\t\t\t\t\t*ngIf=\"!(employee.dtContractStart | isFuture) && !(employee.dtContractEnd | isFutureOrToday)\"\n\t\t\t\t\t\tclass=\"userPopover-details-info-detail-workplace\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<span aria-hidden=\"true\" class=\"lucca-icon icon-calendarStrikethrough mod-S\"></span>\n\t\t\t\t\t\t<span class=\"userPopover-details-info-detail-link-state\"> {{intl.EMPLOYEE_CARD_PANEL_EMPLOYEE_HAS_LEAVED_LABEL }} </span>\n\t\t\t\t\t</span>\n\t\t\t\t\t<!-- EN CONTRAT-->\n\t\t\t\t\t<a\n\t\t\t\t\t\t*ngIf=\"employee._links?.schedule && !(employee.dtContractStart | isFuture) && (employee.dtContractEnd | isFutureOrToday)\"\n\t\t\t\t\t\tclass=\"userPopover-details-info-detail-workplace\"\n\t\t\t\t\t\t[href]=\"employee._links?.schedule?.href\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<span\n\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\tclass=\"lucca-icon mod-S\"\n\t\t\t\t\t\t\t[class.icon-mapPin]=\"employee.isWorkingNow && employee.currentWorkLocation\"\n\t\t\t\t\t\t\t[class.icon-calendarPlanning]=\"!employee.isWorkingNow || !employee.currentWorkLocation\"\n\t\t\t\t\t\t></span>\n\t\t\t\t\t\t<span class=\"userPopover-details-info-detail-workplace-state\">\n\t\t\t\t\t\t\t<ng-container *ngIf=\"employee.isWorkingNow === true\">\n\t\t\t\t\t\t\t\t<ng-container *ngIf=\"employee.currentWorkLocation\">\n\t\t\t\t\t\t\t\t\t{{ employee.currentWorkLocation?.name }}\n\t\t\t\t\t\t\t\t\t<ng-container *ngIf=\"employee.currentWorkLocation?.area\"\n\t\t\t\t\t\t\t\t\t\t><span class=\"u-textLight\"> – {{employee.currentWorkLocation?.area?.name}}</span>\n\t\t\t\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t\t\t\t<ng-container *ngIf=\"!employee.currentWorkLocation\">{{intl.EMPLOYEE_CARD_PANEL_PRESENT_LABEL }} </ng-container>\n\t\t\t\t\t\t\t</ng-container>\n\n\t\t\t\t\t\t\t<ng-container *ngIf=\"employee.isWorkingNow === false\">\n\t\t\t\t\t\t\t\t<ng-container *ngIf=\"!(employee.dtContractStart | isFuture) && (employee.dtContractEnd | isFutureOrToday)\">\n\t\t\t\t\t\t\t\t\t{{ intl.EMPLOYEE_CARD_PANEL_ABSENCE_LABEL }}\n\t\t\t\t\t\t\t\t\t<span *ngIf=\"employee.leaveEndsOn\" class=\"u-textLight\"\n\t\t\t\t\t\t\t\t\t\t> – {{ employee.leaveEndsOn | leaveEndsDisplay: employee.leaveEndIsFirstHalfDay }}\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</a>\n\t\t\t\t</p>\n\t\t\t</div>\n\t\t</section>\n\t</div>\n</div>\n","import { Observable, of } from 'rxjs';\nimport { importProvidersFrom, inject, InjectionToken, makeEnvironmentProviders } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { catchError, map, shareReplay } from 'rxjs/operators';\nimport { OverlayModule } from '@angular/cdk/overlay';\n\nexport const USER_POPOVER_IS_ACTIVATED = new InjectionToken<Observable<boolean>>('user-popover-is-activated', {\n\tfactory: () =>\n\t\tinject(HttpClient)\n\t\t\t.get<{ key: string; status: string }>('/lucca-banner/meta/api/feature-flag-statuses/user-popover-is-activated')\n\t\t\t.pipe(\n\t\t\t\tmap((flag) => flag.status === 'Enabled'),\n\t\t\t\tcatchError(() => of(false)),\n\t\t\t\tshareReplay(1),\n\t\t\t),\n});\n\nexport function provideLuUserPopover() {\n\treturn makeEnvironmentProviders([importProvidersFrom(OverlayModule)]);\n}\n","/* eslint-disable @angular-eslint/no-output-on-prefix */\n/* eslint-disable @angular-eslint/no-input-rename */\n\nimport { FlexibleConnectedPositionStrategy, Overlay, OverlayRef } from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { AfterViewInit, Directive, ElementRef, HostBinding, HostListener, inject, Input, OnDestroy, ViewContainerRef } from '@angular/core';\nimport { ALuPopoverTrigger, LuPopoverScrollStrategy, LuPopoverTarget } from '@lucca-front/ng/popover';\nimport { ILuUser } from '@lucca-front/ng/user';\nimport { LuUserPopoverPanelComponent } from '../panel/user-popover-panel.component';\nimport { Observable } from 'rxjs';\nimport { USER_POPOVER_IS_ACTIVATED } from '../../user-popover.providers';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\n/**\n * This directive is intended to be used in conjunction with an lu-dropdown tag. It is\n * responsible for toggling the display of the provided dropdown instance.\n */\n@Directive({\n\t// eslint-disable-next-line @angular-eslint/directive-selector\n\tselector: '[luUserPopover]',\n\tstandalone: true,\n\texportAs: 'LuUserPopoverDirective',\n})\nexport class LuUserPopoverDirective extends ALuPopoverTrigger<LuUserPopoverPanelComponent, LuPopoverTarget> implements AfterViewInit, OnDestroy {\n\t@Input('luUserPopover')\n\tpublic set user(c: ILuUser) {\n\t\tif (this.panel) {\n\t\t\tthis.panel.user = c;\n\t\t}\n\t\tthis._user = c;\n\t}\n\n\t/** when trigger = hover, delay before the popover panel appears, default 300ms */\n\t@Input('luUserPopoverEnterDelay')\n\tpublic set inputEnterDelay(d: number) {\n\t\tthis.enterDelay = d;\n\t}\n\n\t/** when trigger = hover, delay before the popover panel disappears, default 100ms */\n\t@Input('luUserPopoverLeaveDelay')\n\tpublic set inputLeaveDelay(d: number) {\n\t\tthis.leaveDelay = d;\n\t}\n\n\t// TODO : put this back when uniform alignment and position\n\t// /** how you want to position the panel relative to the target, allowed values: above, below, before, after */\n\t// @Input('luEmployeeCardPosition') public set inputPosition(pos: LuPopoverPosition) {\n\t// \tthis.target.position = pos;\n\t// }\n\t// /** how the panel will be aligned with the target, allowed values: top, bottom, left, right */\n\t// @Input('luEmployeeCardAlignment') public set inputAlignment(al: LuPopoverAlignment) {\n\t// \tthis.target.alignment = al;\n\t// }\n\t/** disable popover apparition */\n\t@Input('luUserPopoverDisabled')\n\tpublic set inputDisabled(d: boolean) {\n\t\tthis.disabled = d;\n\t}\n\n\t/** accessibility attribute - dont override */\n\t@HostBinding('attr.aria-expanded')\n\tpublic get _attrAriaExpanded() {\n\t\treturn this._popoverOpen;\n\t}\n\n\t/** accessibility attribute - dont override */\n\t@HostBinding('attr.id')\n\tpublic get _attrId() {\n\t\treturn this._triggerId;\n\t}\n\n\t/** accessibility attribute - dont override */\n\t@HostBinding('attr.aria-controls')\n\tpublic get _attrAriaControls() {\n\t\treturn this._panelId;\n\t}\n\n\tprivate _handleTabindex = false;\n\t// @HostBinding('attr.tabindex') tabindex;\n\t// private set tabindex(i: number = null) {\n\n\t// }\n\n\t// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n\tprotected override _portal: ComponentPortal<LuUserPopoverPanelComponent>;\n\tprotected _user: ILuUser = { id: 0, firstName: '', lastName: '' };\n\n\tpublic constructor(\n\t\tprotected override _overlay: Overlay,\n\t\tprotected override _elementRef: ElementRef<HTMLElement>,\n\t\tprotected override _viewContainerRef: ViewContainerRef,\n\t) {\n\t\tsuper(_overlay, _elementRef, _viewContainerRef);\n\t\tthis.target = new LuPopoverTarget();\n\t\tthis.target.elementRef = this._elementRef;\n\t\tthis._triggerId = this._elementRef.nativeElement.getAttribute('id') || this._triggerId;\n\t\tthis.target.position = 'above';\n\t\tthis.target.alignment = 'left';\n\t\tthis.triggerEvent = 'none';\n\t\tthis.enterDelay = 300;\n\t\tthis.leaveDelay = 100;\n\n\t\tinject(USER_POPOVER_IS_ACTIVATED)\n\t\t\t.pipe(takeUntilDestroyed())\n\t\t\t.subscribe((isActivated) => {\n\t\t\t\tthis.triggerEvent = isActivated ? 'hover' : 'none';\n\t\t\t});\n\n\t\tthis._handleTabindex = this._shouldHandleTabindex();\n\n\t\tif (this._handleTabindex) {\n\t\t\tthis._setTabindex(0);\n\t\t}\n\t}\n\n\t@HostListener('mouseenter')\n\tpublic override onMouseEnter() {\n\t\tsuper.onMouseEnter();\n\t}\n\n\t@HostListener('mouseleave')\n\tpublic override onMouseLeave() {\n\t\tsuper.onMouseLeave();\n\t}\n\n\t@HostListener('focus')\n\tpublic override onFocus() {\n\t\tsuper.onFocus();\n\t}\n\n\t@HostListener('blur')\n\tpublic override onBlur() {\n\t\tsuper.onBlur();\n\t}\n\n\tpublic ngAfterViewInit() {\n\t\tthis._checkTarget();\n\t}\n\n\tpublic ngOnDestroy() {\n\t\tthis._cleanUpSubscriptions();\n\t\tif (this._popoverOpen) {\n\t\t\tthis.closePopover();\n\t\t}\n\t\tthis.destroyPopover();\n\t}\n\n\tprotected override _createOverlay(): OverlayRef {\n\t\tif (!this._overlayRef) {\n\t\t\tthis._portal = new ComponentPortal(LuUserPopoverPanelComponent, this._viewContainerRef);\n\t\t\tconst config = this._getOverlayConfig();\n\t\t\tthis._subscribeToPositions(config.positionStrategy as FlexibleConnectedPositionStrategy);\n\t\t\tthis._overlayRef = this._overlay.create(config);\n\t\t}\n\n\t\treturn this._overlayRef;\n\t}\n\n\tprotected override _attachPortalToOverlay(): void {\n\t\tconst componentRef = this._overlayRef.attach(this._portal);\n\t\tthis._panel = componentRef.instance;\n\t\tthis._panel.user = this._user;\n\t\tthis._panel.overlayRef = this._overlayRef;\n\t}\n\n\tprotected override _getPanelScrollStrategy(): LuPopoverScrollStrategy {\n\t\treturn 'close';\n\t}\n\n\tprivate _shouldHandleTabindex(): boolean {\n\t\tconst tag = this._elementRef.nativeElement.tagName?.toLowerCase();\n\t\t// https://allyjs.io/data-tables/focusable.html\n\t\t// i'm choosing to not support area and iframe, dont @ me\n\t\tconst nativelyFocusableTags = ['a', 'button', 'input', 'select', 'textarea'];\n\t\tconst isNatevelyFocusableTag = nativelyFocusableTags.includes(tag);\n\n\t\tconst hasATabIndex = this._elementRef.nativeElement.getAttribute('tabindex') !== null;\n\n\t\treturn !isNatevelyFocusableTag && !hasATabIndex;\n\t}\n\n\t// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n\tprivate _setTabindex(i: number = null): void {\n\t\tthis._elementRef.nativeElement.setAttribute('tabindex', `${i}`);\n\t}\n\n\t// Mandatory but useless\n\tonClose: Observable<void>;\n\tonOpen: Observable<void>;\n\n\tprotected override _emitOpen(): void {}\n\n\tprotected override _emitClose(): void {}\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|