@lucca-front/ng 22.0.0-rc.2 → 22.0.0-rc.3
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/fesm2022/lucca-front-ng-api.mjs +160 -85
- package/fesm2022/lucca-front-ng-api.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-clear.mjs +7 -6
- package/fesm2022/lucca-front-ng-clear.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-core-select-api.mjs +37 -21
- package/fesm2022/lucca-front-ng-core-select-api.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-core-select-user.mjs +2 -2
- package/fesm2022/lucca-front-ng-core-select-user.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-core-select.mjs +229 -135
- package/fesm2022/lucca-front-ng-core-select.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-core.mjs +1 -12
- package/fesm2022/lucca-front-ng-core.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-date.mjs +124 -100
- package/fesm2022/lucca-front-ng-date.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-date2.mjs +37 -25
- package/fesm2022/lucca-front-ng-date2.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-department.mjs +0 -2
- package/fesm2022/lucca-front-ng-department.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-divider.mjs +6 -4
- package/fesm2022/lucca-front-ng-divider.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-dropdown.mjs +34 -31
- package/fesm2022/lucca-front-ng-dropdown.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-establishment.mjs +83 -49
- package/fesm2022/lucca-front-ng-establishment.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-filter-pills.mjs +18 -8
- package/fesm2022/lucca-front-ng-filter-pills.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-form-field.mjs +10 -7
- package/fesm2022/lucca-front-ng-form-field.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-formly.mjs +2 -3
- package/fesm2022/lucca-front-ng-formly.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-forms.mjs +46 -5
- package/fesm2022/lucca-front-ng-forms.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-input.mjs +0 -1
- package/fesm2022/lucca-front-ng-input.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-modal.mjs +15 -11
- package/fesm2022/lucca-front-ng-modal.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-multi-select.mjs +115 -91
- package/fesm2022/lucca-front-ng-multi-select.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-number-format.mjs +11 -7
- package/fesm2022/lucca-front-ng-number-format.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-option.mjs +37 -30
- package/fesm2022/lucca-front-ng-option.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-popover.mjs +238 -123
- package/fesm2022/lucca-front-ng-popover.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-popover2.mjs +65 -37
- package/fesm2022/lucca-front-ng-popover2.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-select.mjs +123 -76
- package/fesm2022/lucca-front-ng-select.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-sidepanel.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-simple-select.mjs +13 -13
- package/fesm2022/lucca-front-ng-simple-select.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-time.mjs +8 -6
- package/fesm2022/lucca-front-ng-time.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-user-popover.mjs +13 -9
- package/fesm2022/lucca-front-ng-user-popover.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-user.mjs +93 -59
- package/fesm2022/lucca-front-ng-user.mjs.map +1 -1
- package/package.json +4 -4
- package/types/lucca-front-ng-api.d.ts +62 -62
- package/types/lucca-front-ng-clear.d.ts +2 -3
- package/types/lucca-front-ng-core-select-api.d.ts +22 -22
- package/types/lucca-front-ng-core-select.d.ts +139 -140
- package/types/lucca-front-ng-core.d.ts +2 -7
- package/types/lucca-front-ng-date.d.ts +26 -28
- package/types/lucca-front-ng-divider.d.ts +1 -1
- package/types/lucca-front-ng-dropdown.d.ts +4 -5
- package/types/lucca-front-ng-establishment.d.ts +19 -18
- package/types/lucca-front-ng-form-field.d.ts +3 -2
- package/types/lucca-front-ng-forms.d.ts +32 -12
- package/types/lucca-front-ng-modal.d.ts +2 -2
- package/types/lucca-front-ng-multi-select.d.ts +37 -36
- package/types/lucca-front-ng-option.d.ts +10 -10
- package/types/lucca-front-ng-popover.d.ts +46 -52
- package/types/lucca-front-ng-popover2.d.ts +11 -13
- package/types/lucca-front-ng-segmented-control.d.ts +4 -2
- package/types/lucca-front-ng-select.d.ts +28 -30
- package/types/lucca-front-ng-simple-select.d.ts +3 -3
- package/types/lucca-front-ng-time.d.ts +1 -1
- package/types/lucca-front-ng-user-popover.d.ts +3 -4
- package/types/lucca-front-ng-user.d.ts +20 -20
|
@@ -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 { DOCUMENT } from '@angular/common';\nimport { inject, NgZone } from '@angular/core';\n\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, Type } from '@angular/core';\nimport { OverlayRef } from '@angular/cdk/overlay';\n\nexport interface PopoverConfig {\n\ttriggerElement: HTMLElement;\n\tcontent: TemplateRef<unknown> | Type<unknown>;\n\tref: OverlayRef;\n\tcontentId: string;\n\tdisableCloseButtonFocus: boolean;\n\tdisableInitialTriggerFocus: boolean;\n\tnoCloseButton: boolean;\n}\n\nexport const POPOVER_CONFIG = new InjectionToken<PopoverConfig>('Popover:Config');\n","export const Translations = {\n\t'nl-BE': {\n\t\tclose: 'Sluiten',\n\t},\n\tnl: {\n\t\tclose: 'Sluiten',\n\t},\n\tit: {\n\t\tclose: 'Chiudere',\n\t},\n\tfr: {\n\t\tclose: 'Fermer',\n\t},\n\tpt: {\n\t\tclose: 'Fechar',\n\t},\n\tes: {\n\t\tclose: 'Cerrar',\n\t},\n\tde: {\n\t\tclose: 'Schließen',\n\t},\n\ten: {\n\t\tclose: 'Close',\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 { CdkObserveContent } from '@angular/cdk/observers';\nimport { AfterViewInit, ChangeDetectionStrategy, Component, DestroyRef, ElementRef, inject, input, OnDestroy, ViewEncapsulation } from '@angular/core';\nimport { ButtonComponent } from '@lucca-front/ng/button';\nimport { intlInputOptions, PortalDirective } from '@lucca-front/ng/core';\nimport { IconComponent } from '@lucca-front/ng/icon';\nimport { Subject } from 'rxjs';\nimport { PopoverFocusTrap } from '../../popover-focus-trap';\nimport { POPOVER_CONFIG } from '../../popover-tokens';\nimport { LU_POPOVER2_TRANSLATIONS } from '../../popover.translate';\n\n@Component({\n\tselector: 'lu-popover-content',\n\timports: [ButtonComponent, IconComponent, CdkObserveContent, PortalDirective],\n\ttemplateUrl: './popover-content.component.html',\n\tstyleUrl: './popover-content.component.scss',\n\thost: {\n\t\t'[attr.id]': 'contentId',\n\t\t'(mouseenter)': 'mouseEnter()',\n\t\t'(mouseleave)': 'mouseLeave()',\n\t\t'(window:keydown.escape)': 'close()',\n\t},\n\tencapsulation: ViewEncapsulation.None,\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class PopoverContentComponent implements AfterViewInit, OnDestroy {\n\treadonly intl = input(...intlInputOptions(LU_POPOVER2_TRANSLATIONS));\n\n\t#elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n\n\treadonly config = inject(POPOVER_CONFIG);\n\n\treadonly destroyRef = inject(DestroyRef);\n\n\tcontentId = this.config.contentId;\n\n\tcontent = this.config.content;\n\n\t#focusManager = new PopoverFocusTrap(this.#elementRef.nativeElement, this.config.triggerElement);\n\n\treadonly closed$ = new Subject<void>();\n\n\tcontentChangedDebounceTime = 100;\n\n\treadonly mouseEnter$ = new Subject<void>();\n\n\tmouseEnter(): void {\n\t\tthis.mouseEnter$.next();\n\t}\n\n\treadonly mouseLeave$ = new Subject<void>();\n\n\tmouseLeave(): void {\n\t\tthis.mouseLeave$.next();\n\t}\n\n\tcontentChanged() {\n\t\tthis.config.ref.updatePosition();\n\t}\n\n\tngOnDestroy(): void {\n\t\tthis.#destroyEvents();\n\t\tthis.#focusManager.destroy();\n\t}\n\n\tngAfterViewInit(): void {\n\t\tthis.#focusManager.attachAnchors();\n\t\tif (!this.config.disableCloseButtonFocus) {\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\tclose(): void {\n\t\tif (!this.config.disableInitialTriggerFocus) {\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.#destroyEvents();\n\t\t// Detach overlay\n\t\tthis.config.ref.dispose();\n\t}\n\n\t#destroyEvents(): void {\n\t\tthis.closed$.next();\n\t\tthis.closed$.complete();\n\t\tthis.mouseEnter$.complete();\n\t\tthis.mouseLeave$.complete();\n\t}\n}\n","<div class=\"popover\" (cdkObserveContent)=\"contentChanged()\" [debounce]=\"contentChangedDebounceTime\">\n\t@if (!config.noCloseButton) {\n\t\t<div>\n\t\t\t<button type=\"button\" luButton class=\"popover-close button\" (click)=\"close()\">\n\t\t\t\t<lu-icon icon=\"signClose\" />\n\t\t\t\t<span class=\"pr-u-mask\">{{ intl().close }}</span>\n\t\t\t</button>\n\t\t</div>\n\t}\n\t<ng-container *luPortal=\"content\" />\n</div>\n","import { InjectionToken } from '@angular/core';\nimport { LuTranslation } 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: LuTranslation<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 { ConnectedPosition, ConnectionPositionPair, FlexibleConnectedPositionStrategyOrigin, Overlay, OverlayRef } from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport {\n\tbooleanAttribute,\n\tDestroyRef,\n\tDirective,\n\tElementRef,\n\tinject,\n\tInjector,\n\tinput,\n\tInputSignal,\n\tlinkedSignal,\n\tmodel,\n\tOnDestroy,\n\toutput,\n\tProvider,\n\tRenderer2,\n\tsignal,\n\tTemplateRef,\n\tType,\n\tViewContainerRef,\n} from '@angular/core';\nimport { takeUntilDestroyed, toObservable } from '@angular/core/rxjs-interop';\nimport { intlInputOptions, isNotNil } from '@lucca-front/ng/core';\nimport { combineLatest, debounce, filter, map, merge, Subject, switchMap, take, timer } from 'rxjs';\nimport { PopoverContentComponent } from './content/popover-content/popover-content.component';\nimport { POPOVER_CONFIG, PopoverConfig } from './popover-tokens';\nimport { LU_POPOVER2_TRANSLATIONS } from './popover2.translate';\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\t'[attr.aria-controls]': 'ariaControls',\n\t\t'(click)': 'onMouseClick()',\n\t\t'(mouseleave)': 'onMouseLeave()',\n\t\t'(focus)': 'onFocus()',\n\t\t'(mouseenter)': 'onMouseEnter()',\n\t\t'(keydown.Tab)': 'focusBackToContent($event)',\n\t\t'(keydown.Shift.Tab)': 'focusOutBefore()',\n\t},\n\texportAs: 'luPopover2',\n})\nexport class PopoverDirective implements OnDestroy {\n\treadonly overlay = inject(Overlay);\n\n\treadonly 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\treadonly intl = input(...intlInputOptions(LU_POPOVER2_TRANSLATIONS));\n\n\treadonly luPopover2 = input<TemplateRef<unknown> | Type<unknown>>();\n\n\treadonly luPopoverPosition = input<PopoverPosition | null>(null);\n\n\treadonly overlayScrollStrategy = input<'reposition' | 'block' | 'close'>('reposition');\n\n\treadonly luPopoverDisabledInput = input(false, { transform: booleanAttribute, alias: 'luPopoverDisabled' });\n\n\treadonly luPopoverTrigger = model<'click' | 'click+hover' | 'hover+focus'>('click');\n\n\treadonly customPositionsInput = input<ConnectionPositionPair[] | null>(null, { alias: 'customPositions' });\n\n\t/**\n\t * Removes close button entirely, this is bad for a11y but sometimes we want it.\n\t */\n\treadonly luPopoverNoCloseButtonInput = input(false, { transform: booleanAttribute, alias: 'luPopoverNoCloseButton' });\n\n\t/**\n\t * Allows to anchor the popover to another element instead of the trigger one\n\t * for placement purpose\n\t */\n\treadonly luPopoverAnchor = input<FlexibleConnectedPositionStrategyOrigin>(this.elementRef);\n\n\t// We have to type these two for Compodoc to find the right type and tell Storybook these aren't strings\n\treadonly luPopoverOpenDelay: InputSignal<number> = input<number>(300);\n\n\treadonly luPopoverCloseDelay: InputSignal<number> = input<number>(100);\n\n\treadonly luPopoverPositionRef = linkedSignal(() => this.luPopoverPosition() || 'above');\n\n\treadonly open$ = new Subject<'focus' | 'click' | 'hover'>();\n\n\treadonly close$ = new Subject<void>();\n\n\treadonly luPopoverClosed = output<void>();\n\n\treadonly luPopoverOpened = output<void>();\n\n\treadonly content = linkedSignal(() => this.luPopover2());\n\treadonly luPopoverDisabled = linkedSignal(() => this.luPopoverDisabledInput());\n\treadonly customPositions = linkedSignal(() => this.customPositionsInput());\n\treadonly luPopoverNoCloseButton = linkedSignal(() => this.luPopoverNoCloseButtonInput());\n\n\t#listenToMouseLeave = false;\n\t#listenToMouseEnter = true;\n\t#skipNextFocus = false;\n\n\t#overlayRef: OverlayRef;\n\n\t#componentRef?: PopoverContentComponent;\n\n\tpositionPairs: Record<PopoverPosition, ConnectionPositionPair> = defaultPositionPairs;\n\n\treadonly opened = signal(false);\n\n\treadonly ariaControls = `popover-content-${nextId++}`;\n\n\t#screenReaderDescription?: HTMLSpanElement;\n\n\t// For when we need to extend this popover and add some extra providers to the panel\n\tprotected additionalProviders: Provider[] = [];\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, type === 'hover');\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, 'pr-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\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\tonFocus() {\n\t\tif (this.luPopoverTrigger().includes('focus')) {\n\t\t\tif (this.#skipNextFocus) {\n\t\t\t\tthis.#skipNextFocus = false;\n\t\t\t} else {\n\t\t\t\tthis.open$.next('focus');\n\t\t\t\tthis.#listenToMouseLeave = true;\n\t\t\t\tthis.#skipNextFocus = true;\n\t\t\t}\n\t\t}\n\t}\n\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\tonMouseClick(): 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, disableCloseButtonFocus = false, disableInitialTriggerFocus = false): void {\n\t\tconst content = this.content();\n\n\t\tif (!this.opened() && !this.luPopoverDisabled() && isNotNil(content)) {\n\t\t\tthis.opened.set(true);\n\t\t\tthis.luPopoverOpened.emit();\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.luPopoverAnchor())\n\t\t\t\t\t.withPositions(this.customPositions() || this.#buildPositions()),\n\t\t\t\tscrollStrategy: this.overlay.scrollStrategies[this.overlayScrollStrategy() ?? '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: 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\tdisableCloseButtonFocus: disableCloseButtonFocus,\n\t\t\t\tdisableInitialTriggerFocus: disableInitialTriggerFocus,\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 }, { provide: PopoverContentComponent, useValue: this.#componentRef }, ...this.additionalProviders],\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(take(1), takeUntilDestroyed(this.#componentRef.destroyRef), takeUntilDestroyed(this.#destroyRef)).subscribe(() => {\n\t\t\t\tthis.opened.set(false);\n\t\t\t\tthis.#skipNextFocus = false;\n\t\t\t\tthis.luPopoverClosed.emit();\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\tfocusBackToContent(event: Event): void {\n\t\tif (this.opened()) {\n\t\t\tevent.preventDefault();\n\t\t\tthis.#componentRef?.grabFocus();\n\t\t}\n\t}\n\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.luPopoverPositionRef()], this.positionPairs[opposite[this.luPopoverPositionRef()]], ...remaining[this.luPopoverPositionRef()].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 { DOCUMENT } from '@angular/common';\nimport { inject, NgZone } from '@angular/core';\n\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, Type } from '@angular/core';\nimport { OverlayRef } from '@angular/cdk/overlay';\n\nexport interface PopoverConfig {\n\ttriggerElement: HTMLElement;\n\tcontent: TemplateRef<unknown> | Type<unknown>;\n\tref: OverlayRef;\n\tcontentId: string;\n\tdisableCloseButtonFocus: boolean;\n\tdisableInitialTriggerFocus: boolean;\n\tnoCloseButton: boolean;\n}\n\nexport const POPOVER_CONFIG = new InjectionToken<PopoverConfig>('Popover:Config');\n","export const Translations = {\n\t'nl-BE': {\n\t\tclose: 'Sluiten',\n\t},\n\tnl: {\n\t\tclose: 'Sluiten',\n\t},\n\tit: {\n\t\tclose: 'Chiudere',\n\t},\n\tfr: {\n\t\tclose: 'Fermer',\n\t},\n\tpt: {\n\t\tclose: 'Fechar',\n\t},\n\tes: {\n\t\tclose: 'Cerrar',\n\t},\n\tde: {\n\t\tclose: 'Schließen',\n\t},\n\ten: {\n\t\tclose: 'Close',\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 { CdkObserveContent } from '@angular/cdk/observers';\nimport { AfterViewInit, ChangeDetectionStrategy, Component, DestroyRef, ElementRef, HostBinding, HostListener, inject, input, OnDestroy, ViewEncapsulation } from '@angular/core';\nimport { ButtonComponent } from '@lucca-front/ng/button';\nimport { intlInputOptions, PortalDirective } from '@lucca-front/ng/core';\nimport { IconComponent } from '@lucca-front/ng/icon';\nimport { Subject } from 'rxjs';\nimport { PopoverFocusTrap } from '../../popover-focus-trap';\nimport { POPOVER_CONFIG } from '../../popover-tokens';\nimport { LU_POPOVER2_TRANSLATIONS } from '../../popover.translate';\n\n@Component({\n\tselector: 'lu-popover-content',\n\timports: [ButtonComponent, IconComponent, CdkObserveContent, PortalDirective],\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, OnDestroy {\n\treadonly intl = input(...intlInputOptions(LU_POPOVER2_TRANSLATIONS));\n\n\t#elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n\n\treadonly config = inject(POPOVER_CONFIG);\n\n\treadonly destroyRef = inject(DestroyRef);\n\n\t@HostBinding('attr.id')\n\tcontentId = this.config.contentId;\n\n\tcontent = this.config.content;\n\n\t#focusManager = new PopoverFocusTrap(this.#elementRef.nativeElement, this.config.triggerElement);\n\n\treadonly closed$ = new Subject<void>();\n\n\tcontentChangedDebounceTime = 100;\n\n\treadonly mouseEnter$ = new Subject<void>();\n\n\t@HostListener('mouseenter')\n\tmouseEnter(): void {\n\t\tthis.mouseEnter$.next();\n\t}\n\n\treadonly mouseLeave$ = 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\tngOnDestroy(): void {\n\t\tthis.#destroyEvents();\n\t\tthis.#focusManager.destroy();\n\t}\n\n\tngAfterViewInit(): void {\n\t\tthis.#focusManager.attachAnchors();\n\t\tif (!this.config.disableCloseButtonFocus) {\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.disableInitialTriggerFocus) {\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.#destroyEvents();\n\t\t// Detach overlay\n\t\tthis.config.ref.dispose();\n\t}\n\n\t#destroyEvents(): void {\n\t\tthis.closed$.next();\n\t\tthis.closed$.complete();\n\t\tthis.mouseEnter$.complete();\n\t\tthis.mouseLeave$.complete();\n\t}\n}\n","<div class=\"popover\" (cdkObserveContent)=\"contentChanged()\" [debounce]=\"contentChangedDebounceTime\">\n\t@if (!config.noCloseButton) {\n\t\t<div>\n\t\t\t<button type=\"button\" luButton class=\"popover-close button\" (click)=\"close()\">\n\t\t\t\t<lu-icon icon=\"signClose\" />\n\t\t\t\t<span class=\"pr-u-mask\">{{ intl().close }}</span>\n\t\t\t</button>\n\t\t</div>\n\t}\n\t<ng-container *luPortal=\"content\" />\n</div>\n","import { InjectionToken } from '@angular/core';\nimport { LuTranslation } 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: LuTranslation<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 { ConnectedPosition, ConnectionPositionPair, FlexibleConnectedPositionStrategyOrigin, Overlay, OverlayRef } from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport {\n\tbooleanAttribute,\n\tDestroyRef,\n\tDirective,\n\tElementRef,\n\tHostBinding,\n\tHostListener,\n\tinject,\n\tInjector,\n\tinput,\n\tInput,\n\tInputSignal,\n\tlinkedSignal,\n\tmodel,\n\tOnDestroy,\n\toutput,\n\tProvider,\n\tRenderer2,\n\tsignal,\n\tTemplateRef,\n\tType,\n\tViewContainerRef,\n} from '@angular/core';\nimport { takeUntilDestroyed, toObservable } from '@angular/core/rxjs-interop';\nimport { intlInputOptions, isNotNil } from '@lucca-front/ng/core';\nimport { combineLatest, debounce, filter, map, merge, Subject, switchMap, take, timer } from 'rxjs';\nimport { PopoverContentComponent } from './content/popover-content/popover-content.component';\nimport { POPOVER_CONFIG, PopoverConfig } from './popover-tokens';\nimport { LU_POPOVER2_TRANSLATIONS } from './popover2.translate';\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})\nexport class PopoverDirective implements OnDestroy {\n\treadonly overlay = inject(Overlay);\n\n\treadonly 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\treadonly intl = input(...intlInputOptions(LU_POPOVER2_TRANSLATIONS));\n\n\t@Input({\n\t\talias: 'luPopover2',\n\t})\n\tcontent: TemplateRef<unknown> | Type<unknown>;\n\n\treadonly luPopoverPosition = input<PopoverPosition | null>(null);\n\n\t@Input()\n\toverlayScrollStrategy: 'reposition' | 'block' | 'close' = 'reposition';\n\n\t@Input({\n\t\ttransform: booleanAttribute,\n\t})\n\tluPopoverDisabled = false;\n\n\treadonly luPopoverTrigger = model<'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/**\n\t * Allows to anchor the popover to another element instead of the trigger one\n\t * for placement purpose\n\t */\n\treadonly luPopoverAnchor = input<FlexibleConnectedPositionStrategyOrigin>(this.elementRef);\n\n\t// We have to type these two for Compodoc to find the right type and tell Storybook these aren't strings\n\treadonly luPopoverOpenDelay: InputSignal<number> = input<number>(300);\n\n\treadonly luPopoverCloseDelay: InputSignal<number> = input<number>(100);\n\n\treadonly luPopoverPositionRef = linkedSignal(() => this.luPopoverPosition() || 'above');\n\n\treadonly open$ = new Subject<'focus' | 'click' | 'hover'>();\n\n\treadonly close$ = new Subject<void>();\n\n\treadonly luPopoverClosed = output<void>();\n\n\treadonly luPopoverOpened = output<void>();\n\n\t#listenToMouseLeave = false;\n\t#listenToMouseEnter = true;\n\t#skipNextFocus = false;\n\n\t#overlayRef: OverlayRef;\n\n\t#componentRef?: PopoverContentComponent;\n\n\tpositionPairs: Record<PopoverPosition, ConnectionPositionPair> = defaultPositionPairs;\n\n\treadonly opened = signal(false);\n\n\t@HostBinding('attr.aria-controls')\n\tariaControls = `popover-content-${nextId++}`;\n\n\t#screenReaderDescription?: HTMLSpanElement;\n\n\t// For when we need to extend this popover and add some extra providers to the panel\n\tprotected additionalProviders: Provider[] = [];\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, type === 'hover');\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, 'pr-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\tif (this.#skipNextFocus) {\n\t\t\t\tthis.#skipNextFocus = false;\n\t\t\t} else {\n\t\t\t\tthis.open$.next('focus');\n\t\t\t\tthis.#listenToMouseLeave = true;\n\t\t\t\tthis.#skipNextFocus = true;\n\t\t\t}\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, disableCloseButtonFocus = false, disableInitialTriggerFocus = false): void {\n\t\tif (!this.opened() && !this.luPopoverDisabled && isNotNil(this.content)) {\n\t\t\tthis.opened.set(true);\n\t\t\tthis.luPopoverOpened.emit();\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.luPopoverAnchor())\n\t\t\t\t\t.withPositions(this.customPositions || this.#buildPositions()),\n\t\t\t\tscrollStrategy: this.overlay.scrollStrategies[this.overlayScrollStrategy ?? '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\tdisableCloseButtonFocus: disableCloseButtonFocus,\n\t\t\t\tdisableInitialTriggerFocus: disableInitialTriggerFocus,\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 }, { provide: PopoverContentComponent, useValue: this.#componentRef }, ...this.additionalProviders],\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(take(1), takeUntilDestroyed(this.#componentRef.destroyRef), takeUntilDestroyed(this.#destroyRef)).subscribe(() => {\n\t\t\t\tthis.opened.set(false);\n\t\t\t\tthis.#skipNextFocus = false;\n\t\t\t\tthis.luPopoverClosed.emit();\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: Event): 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')\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.luPopoverPositionRef()], this.positionPairs[opposite[this.luPopoverPositionRef()]], ...remaining[this.luPopoverPositionRef()].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":";;;;;;;;;;;;;AAIM,MAAO,gBAAiB,SAAQ,SAAS,CAAA;IAW9C,WAAA,CACC,OAAoB,EACZ,cAA2B,EAAA;QAEnC,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,oBAAoB,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC;QAF5E,IAAA,CAAA,cAAc,GAAd,cAAc;QAZd,IAAA,CAAA,mBAAmB,GAAG,MAAK;AACnC,YAAA,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE;AAC3B,YAAA,OAAO,IAAI;AACZ,QAAA,CAAC;QAEQ,IAAA,CAAA,iBAAiB,GAAG,MAAK;AACjC,YAAA,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE;AAC3B,YAAA,OAAO,IAAI;AACZ,QAAA,CAAC;IAOD;AACA;;MCRY,cAAc,GAAG,IAAI,cAAc,CAAgB,gBAAgB;;ACbzE,MAAM,YAAY,GAAG;AAC3B,IAAA,OAAO,EAAE;AACR,QAAA,KAAK,EAAE,SAAS;AAChB,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,KAAK,EAAE,SAAS;AAChB,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,KAAK,EAAE,UAAU;AACjB,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,KAAK,EAAE,QAAQ;AACf,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,KAAK,EAAE,QAAQ;AACf,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,KAAK,EAAE,QAAQ;AACf,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,KAAK,EAAE,WAAW;AAClB,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,KAAK,EAAE,OAAO;AACd,KAAA;CACD;;MCrBYA,0BAAwB,GAAG,IAAI,cAAc,CAAC,wBAAwB,EAAE;AACpF,IAAA,OAAO,EAAE,MAAM,qBAAqB;AACpC,CAAA;AAMM,MAAM,qBAAqB,GAAoC;;MCOzD,uBAAuB,CAAA;AATpC,IAAA,WAAA,GAAA;QAUU,IAAA,CAAA,IAAI,GAAG,KAAK,CAAC,GAAG,gBAAgB,CAACA,0BAAwB,CAAC,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,8BAAA,EAAA,CAAA,CAAC;AAEpE,QAAA,IAAA,CAAA,WAAW,GAAG,MAAM,CAA0B,UAAU,CAAC;AAEhD,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAC,cAAc,CAAC;AAE/B,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;AAGxC,QAAA,IAAA,CAAA,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS;AAEjC,QAAA,IAAA,CAAA,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO;AAE7B,QAAA,IAAA,CAAA,aAAa,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC;AAEvF,QAAA,IAAA,CAAA,OAAO,GAAG,IAAI,OAAO,EAAQ;QAEtC,IAAA,CAAA,0BAA0B,GAAG,GAAG;AAEvB,QAAA,IAAA,CAAA,WAAW,GAAG,IAAI,OAAO,EAAQ;AAOjC,QAAA,IAAA,CAAA,WAAW,GAAG,IAAI,OAAO,EAAQ;AA6C1C,IAAA;AArEA,IAAA,WAAW;AAWX,IAAA,aAAa;IASb,UAAU,GAAA;AACT,QAAA,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE;IACxB;IAKA,UAAU,GAAA;AACT,QAAA,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE;IACxB;IAEA,cAAc,GAAA;AACb,QAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,cAAc,EAAE;IACjC;IAEA,WAAW,GAAA;QACV,IAAI,CAAC,cAAc,EAAE;AACrB,QAAA,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE;IAC7B;IAEA,eAAe,GAAA;AACd,QAAA,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE;AAClC,QAAA,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,uBAAuB,EAAE;AACzC,YAAA,KAAK,IAAI,CAAC,aAAa,CAAC,4BAA4B,EAAE;QACvD;IACD;IAEA,SAAS,GAAA;AACR,QAAA,IAAI,CAAC,aAAa,CAAC,mBAAmB,EAAE;IACzC;IAGA,KAAK,GAAA;AACJ,QAAA,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,0BAA0B,EAAE;;AAE5C,YAAA,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE;QACnC;;QAEA,IAAI,CAAC,cAAc,EAAE;;AAErB,QAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE;IAC1B;IAEA,cAAc,GAAA;AACb,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE;AACnB,QAAA,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE;AACvB,QAAA,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE;AAC3B,QAAA,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE;IAC5B;+GAvEY,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAvB,uBAAuB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,YAAA,EAAA,cAAA,EAAA,YAAA,EAAA,cAAA,EAAA,uBAAA,EAAA,SAAA,EAAA,EAAA,UAAA,EAAA,EAAA,SAAA,EAAA,gBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECnBpC,+aAWA,EAAA,MAAA,EAAA,CAAA,0ywBAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDCW,eAAe,oPAAE,aAAa,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,KAAA,EAAA,MAAA,EAAA,OAAA,EAAA,IAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,iBAAiB,EAAA,QAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,CAAA,2BAAA,EAAA,UAAA,CAAA,EAAA,OAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,eAAe,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,iBAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;4FAOhE,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBATnC,SAAS;AACC,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,oBAAoB,WACrB,CAAC,eAAe,EAAE,aAAa,EAAE,iBAAiB,EAAE,eAAe,CAAC,iBAI9D,iBAAiB,CAAC,IAAI,EAAA,eAAA,EACpB,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,+aAAA,EAAA,MAAA,EAAA,CAAA,0ywBAAA,CAAA,EAAA;;sBAW9C,WAAW;uBAAC,SAAS;;sBAarB,YAAY;uBAAC,YAAY;;sBAOzB,YAAY;uBAAC,YAAY;;sBAyBzB,YAAY;uBAAC,uBAAuB;;;AEtE/B,MAAM,wBAAwB,GAAG,IAAI,cAAc,CAAC,wBAAwB,EAAE;AACpF,IAAA,OAAO,EAAE,MAAM,sBAAsB;AACrC,CAAA,CAAC;AAMK,MAAM,sBAAsB,GAAkC;AACpE,IAAA,EAAE,EAAE;AACH,QAAA,uBAAuB,EAAE,2BAA2B;AACpD,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,uBAAuB,EAAE,qDAAqD;AAC9E,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,uBAAuB,EAAE,sCAAsC;AAC/D,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,uBAAuB,EAAE,gDAAgD;AACzE,KAAA;CACD;;ACUD,IAAI,MAAM,GAAG,CAAC;AAEd,MAAM,oBAAoB,GAAoD;AAC7E,IAAA,KAAK,EAAE,IAAI,sBAAsB,CAChC,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,EACrC;AACC,QAAA,QAAQ,EAAE,QAAQ;AAClB,QAAA,QAAQ,EAAE,QAAQ;KAClB,CACD;AACD,IAAA,KAAK,EAAE,IAAI,sBAAsB,CAChC,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,EACxC;AACC,QAAA,QAAQ,EAAE,QAAQ;AAClB,QAAA,QAAQ,EAAE,KAAK;KACf,CACD;AACD,IAAA,MAAM,EAAE,IAAI,sBAAsB,CACjC,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,EACvC;AACC,QAAA,QAAQ,EAAE,KAAK;AACf,QAAA,QAAQ,EAAE,QAAQ;KAClB,CACD;AACD,IAAA,KAAK,EAAE,IAAI,sBAAsB,CAChC,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,EACrC;AACC,QAAA,QAAQ,EAAE,OAAO;AACjB,QAAA,QAAQ,EAAE,QAAQ;KAClB,CACD;CACD;MASY,gBAAgB,CAAA;AAK5B,IAAA,IAAI;AAEJ,IAAA,WAAW;AAEX,IAAA,SAAS;AAmDT,IAAA,mBAAmB;AACnB,IAAA,mBAAmB;AACnB,IAAA,cAAc;AAEd,IAAA,WAAW;AAEX,IAAA,aAAa;AASb,IAAA,wBAAwB;AAKxB,IAAA,WAAA,GAAA;AA/ES,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;AAEzB,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAA0B,UAAU,CAAC;AAEjE,QAAA,IAAA,CAAA,IAAI,GAAG,MAAM,CAAC,gBAAgB,CAAC;AAE/B,QAAA,IAAA,CAAA,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC;AAEhC,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QAEpB,IAAA,CAAA,IAAI,GAAG,KAAK,CAAC,GAAG,gBAAgB,CAAC,wBAAwB,CAAC,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,8BAAA,EAAA,CAAA,CAAC;AAO3D,QAAA,IAAA,CAAA,iBAAiB,GAAG,KAAK,CAAyB,IAAI,wFAAC;QAGhE,IAAA,CAAA,qBAAqB,GAAqC,YAAY;QAKtE,IAAA,CAAA,iBAAiB,GAAG,KAAK;AAEhB,QAAA,IAAA,CAAA,gBAAgB,GAAG,KAAK,CAA0C,OAAO,uFAAC;QASnF,IAAA,CAAA,sBAAsB,GAAG,KAAK;AAE9B;;;AAGG;AACM,QAAA,IAAA,CAAA,eAAe,GAAG,KAAK,CAA0C,IAAI,CAAC,UAAU,sFAAC;;AAGjF,QAAA,IAAA,CAAA,kBAAkB,GAAwB,KAAK,CAAS,GAAG,yFAAC;AAE5D,QAAA,IAAA,CAAA,mBAAmB,GAAwB,KAAK,CAAS,GAAG,0FAAC;AAE7D,QAAA,IAAA,CAAA,oBAAoB,GAAG,YAAY,CAAC,MAAM,IAAI,CAAC,iBAAiB,EAAE,IAAI,OAAO,2FAAC;AAE9E,QAAA,IAAA,CAAA,KAAK,GAAG,IAAI,OAAO,EAA+B;AAElD,QAAA,IAAA,CAAA,MAAM,GAAG,IAAI,OAAO,EAAQ;QAE5B,IAAA,CAAA,eAAe,GAAG,MAAM,EAAQ;QAEhC,IAAA,CAAA,eAAe,GAAG,MAAM,EAAQ;QAEzC,IAAA,CAAA,mBAAmB,GAAG,KAAK;QAC3B,IAAA,CAAA,mBAAmB,GAAG,IAAI;QAC1B,IAAA,CAAA,cAAc,GAAG,KAAK;QAMtB,IAAA,CAAA,aAAa,GAAoD,oBAAoB;AAE5E,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAC,KAAK,6EAAC;AAG/B,QAAA,IAAA,CAAA,YAAY,GAAG,CAAA,gBAAA,EAAmB,MAAM,EAAE,EAAE;;QAKlC,IAAA,CAAA,mBAAmB,GAAe,EAAE;QAG7C,aAAa,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE,YAAY,CAAC,IAAI,CAAC,mBAAmB,CAAC,EAAE,YAAY,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;aAChI,IAAI,CACJ,MAAM,CAAC,CAAC,KAAK,OAAO,CAAC,KAAI;AACxB,YAAA,OAAO,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;QAC9D,CAAC,CAAC,EACF,SAAS,CAAC,CAAC,CAAC,SAAS,EAAE,UAAU,CAAC,KAAI;YACrC,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CACxG,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAI;AACpB,gBAAA,OAAO,KAAK,CAAC,KAAK,KAAK,MAAM,GAAG,SAAS,GAAG,UAAU,CAAC;YACxD,CAAC,CAAC,CACF;QACF,CAAC,CAAC,EACF,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC;aAEpC,SAAS,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,CAAkD,KAAI;AAC7E,YAAA,IAAI,KAAK,KAAK,MAAM,EAAE;AACrB,gBAAA,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,OAAO,EAAE,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC;AAC1D,gBAAA,IAAI,CAAC,mBAAmB,GAAG,IAAI,KAAK,OAAO;gBAC3C,IAAI,IAAI,KAAK,OAAO,IAAI,CAAC,IAAI,CAAC,wBAAwB,EAAE;oBACvD,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,MAAM,CAAoB;oBACvF,IAAI,CAAC,wBAAwB,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,uBAAuB;oBAC7E,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,wBAAwB,EAAE,WAAW,CAAC;AACnE,oBAAA,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,IAAI,CAAC,wBAAwB,CAAC;gBACzF;YACD;AAAO,iBAAA,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE;AACzB,gBAAA,IAAI,CAAC,aAAa,EAAE,KAAK,EAAE;AAC3B,gBAAA,IAAI,CAAC,mBAAmB,GAAG,IAAI;YAChC;AACD,QAAA,CAAC,CAAC;IACJ;IAEA,WAAW,GAAA;AACV,QAAA,IAAI,CAAC,aAAa,EAAE,KAAK,EAAE;IAC5B;IAGA,YAAY,GAAA;AACX,QAAA,IAAI,IAAI,CAAC,mBAAmB,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;AAC1E,YAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC;AACxB,YAAA,IAAI,CAAC,mBAAmB,GAAG,IAAI;QAChC;IACD;IAGA,OAAO,GAAA;QACN,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;AAC9C,YAAA,IAAI,IAAI,CAAC,cAAc,EAAE;AACxB,gBAAA,IAAI,CAAC,cAAc,GAAG,KAAK;YAC5B;iBAAO;AACN,gBAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC;AACxB,gBAAA,IAAI,CAAC,mBAAmB,GAAG,IAAI;AAC/B,gBAAA,IAAI,CAAC,cAAc,GAAG,IAAI;YAC3B;QACD;IACD;IAGA,YAAY,GAAA;AACX,QAAA,IAAI,IAAI,CAAC,mBAAmB,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;AAC1E,YAAA,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;AAClB,YAAA,IAAI,CAAC,mBAAmB,GAAG,IAAI;QAChC;IACD;IAGA,KAAK,GAAA;AACJ,QAAA,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE;AAClB,YAAA,IAAI,CAAC,aAAa,EAAE,KAAK,EAAE;AAC3B,YAAA,IAAI,CAAC,mBAAmB,GAAG,IAAI;QAChC;aAAO;AACN,YAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;AACtB,YAAA,IAAI,CAAC,mBAAmB,GAAG,KAAK;AAChC,YAAA,IAAI,CAAC,mBAAmB,GAAG,KAAK;QACjC;IACD;IAEA,KAAK,GAAA;AACJ,QAAA,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE;AAClB,YAAA,IAAI,CAAC,aAAa,EAAE,KAAK,EAAE;AAC3B,YAAA,IAAI,CAAC,mBAAmB,GAAG,IAAI;QAChC;IACD;IAEA,WAAW,CAAC,YAAY,GAAG,KAAK,EAAE,uBAAuB,GAAG,KAAK,EAAE,0BAA0B,GAAG,KAAK,EAAA;AACpG,QAAA,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,iBAAiB,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;AACxE,YAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC;AACrB,YAAA,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE;YAC3B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;gBACtC,gBAAgB,EAAE,IAAI,CAAC;AACrB,qBAAA,QAAQ;AACR,qBAAA,mBAAmB,CAAC,IAAI,CAAC,eAAe,EAAE;qBAC1C,aAAa,CAAC,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;AAC/D,gBAAA,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,qBAAqB,IAAI,YAAY,CAAC,EAAE;AAC3F,gBAAA,WAAW,EAAE,YAAY;AACzB,gBAAA,aAAa,EAAE,EAAE;AACjB,gBAAA,mBAAmB,EAAE,IAAI;AACzB,aAAA,CAAC;;AAEF,YAAA,IAAI,CAAC;AACH,iBAAA,aAAa;AACb,iBAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC;iBACzC,SAAS,CAAC,MAAK;AACf,gBAAA,IAAI,CAAC,aAAa,EAAE,KAAK,EAAE;AAC3B,gBAAA,IAAI,CAAC,mBAAmB,GAAG,IAAI;AAChC,YAAA,CAAC,CAAC;AACH,YAAA,MAAM,MAAM,GAAkB;gBAC7B,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,GAAG,EAAE,IAAI,CAAC,WAAW;gBACrB,SAAS,EAAE,IAAI,CAAC,YAAY;AAC5B,gBAAA,cAAc,EAAE,IAAI,CAAC,UAAU,CAAC,aAAa;AAC7C,gBAAA,uBAAuB,EAAE,uBAAuB;AAChD,gBAAA,0BAA0B,EAAE,0BAA0B;gBACtD,aAAa,EAAE,IAAI,CAAC,sBAAsB;aAC1C;YACD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAC3C,IAAI,eAAe,CAClB,uBAAuB,EACvB,IAAI,CAAC,IAAI,EACT,QAAQ,CAAC,MAAM,CAAC;AACf,gBAAA,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,uBAAuB,EAAE,QAAQ,EAAE,IAAI,CAAC,aAAa,EAAE,EAAE,GAAG,IAAI,CAAC,mBAAmB,CAAC;AAC3J,aAAA,CAAC,CACF,CACD,CAAC,QAAQ;;AAEV,YAAA,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;;AAEhK,YAAA,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AACtK,YAAA,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,MAAK;AAChJ,gBAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC;AACtB,gBAAA,IAAI,CAAC,cAAc,GAAG,KAAK;AAC3B,gBAAA,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE;AAC3B,gBAAA,IAAI,CAAC,mBAAmB,GAAG,KAAK;AAChC,gBAAA,IAAI,IAAI,CAAC,wBAAwB,EAAE;AAClC,oBAAA,IAAI,CAAC,wBAAwB,CAAC,MAAM,EAAE;AACtC,oBAAA,IAAI,CAAC,wBAAwB,GAAG,SAAS;gBAC1C;AACD,YAAA,CAAC,CAAC;QACH;IACD;AAGA,IAAA,kBAAkB,CAAC,KAAY,EAAA;AAC9B,QAAA,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE;YAClB,KAAK,CAAC,cAAc,EAAE;AACtB,YAAA,IAAI,CAAC,aAAa,EAAE,SAAS,EAAE;QAChC;IACD;IAGA,cAAc,GAAA;AACb,QAAA,IAAI,IAAI,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;AAC/D,YAAA,IAAI,CAAC,aAAa,EAAE,KAAK,EAAE;QAC5B;IACD;IAEA,cAAc,GAAA;AACb,QAAA,IAAI,CAAC,WAAW,EAAE,cAAc,EAAE;IACnC;IAEA,eAAe,GAAA;AACd,QAAA,MAAM,QAAQ,GAA6C;AAC1D,YAAA,MAAM,EAAE,OAAO;AACf,YAAA,KAAK,EAAE,QAAQ;AACf,YAAA,KAAK,EAAE,OAAO;AACd,YAAA,KAAK,EAAE,OAAO;SACd;;AAED,QAAA,MAAM,SAAS,GAA+C;AAC7D,YAAA,MAAM,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;AAC1B,YAAA,KAAK,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;AACzB,YAAA,KAAK,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;AAC1B,YAAA,KAAK,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC;SAC1B;QACD,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC,EAAE,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC,CAAC,EAAE,GAAG,SAAS,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;IACjM;+GA/PY,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAhB,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,UAAA,EAAA,mBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,qBAAA,EAAA,EAAA,iBAAA,EAAA,uBAAA,EAAA,UAAA,EAAA,uBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,UAAA,EAAA,mBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAwBhB,gBAAgB,EAAA,EAAA,gBAAA,EAAA,EAAA,iBAAA,EAAA,kBAAA,EAAA,UAAA,EAAA,kBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,eAAA,EAAA,EAAA,iBAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,sBAAA,EAAA,EAAA,iBAAA,EAAA,wBAAA,EAAA,UAAA,EAAA,wBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EASR,gBAAgB,EAAA,EAAA,eAAA,EAAA,EAAA,iBAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,kBAAA,EAAA,EAAA,iBAAA,EAAA,oBAAA,EAAA,UAAA,EAAA,oBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,mBAAA,EAAA,EAAA,iBAAA,EAAA,qBAAA,EAAA,UAAA,EAAA,qBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,gBAAA,EAAA,wBAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,OAAA,EAAA,WAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,OAAA,EAAA,SAAA,EAAA,aAAA,EAAA,4BAAA,EAAA,mBAAA,EAAA,kBAAA,EAAA,EAAA,UAAA,EAAA,EAAA,oBAAA,EAAA,UAAA,EAAA,oBAAA,EAAA,mBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA,YAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAjCxB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAP5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,cAAc;AACxB,oBAAA,IAAI,EAAE;AACL,wBAAA,sBAAsB,EAAE,UAAU;AAClC,qBAAA;AACD,oBAAA,QAAQ,EAAE,YAAY;AACtB,iBAAA;;sBAcC,KAAK;AAAC,gBAAA,IAAA,EAAA,CAAA;AACN,wBAAA,KAAK,EAAE,YAAY;AACnB,qBAAA;;sBAKA;;sBAGA,KAAK;AAAC,gBAAA,IAAA,EAAA,CAAA;AACN,wBAAA,SAAS,EAAE,gBAAgB;AAC3B,qBAAA;;sBAKA;;sBAGA,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;;sBAuCrC,WAAW;uBAAC,oBAAoB;;sBA4ChC,YAAY;uBAAC,YAAY;;sBAQzB,YAAY;uBAAC,OAAO;;sBAapB,YAAY;uBAAC,YAAY;;sBAQzB,YAAY;uBAAC,OAAO;;sBA4EpB,YAAY;uBAAC,aAAa,EAAE,CAAC,QAAQ,CAAC;;sBAQtC,YAAY;uBAAC,mBAAmB;;;SC5SlB,kBAAkB,GAAA;IACjC,OAAO,wBAAwB,CAAC,CAAC,mBAAmB,CAAC,aAAa,CAAC,CAAC,CAAC;AACtE;;ACLA;;AAEG;;;;"}
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import {
|
|
3
|
-
import { outputFromObservable } from '@angular/core/rxjs-interop';
|
|
2
|
+
import { EventEmitter, ViewContainerRef, HostListener, ViewChild, ContentChild, HostBinding, Input, Output, Directive, ElementRef, forwardRef, ChangeDetectionStrategy, Component, NgModule } from '@angular/core';
|
|
4
3
|
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
5
4
|
import { ALuClear } from '@lucca-front/ng/clear';
|
|
6
|
-
import { isNil, ɵeffectWithDeps as _effectWithDeps, isNotNil } from '@lucca-front/ng/core';
|
|
7
5
|
import { ALuInputDisplayer } from '@lucca-front/ng/input';
|
|
8
6
|
import { ALuPickerPanel } from '@lucca-front/ng/picker';
|
|
7
|
+
import { isNil } from '@lucca-front/ng/core';
|
|
9
8
|
import { ALuPopoverTrigger, LuPopoverTarget } from '@lucca-front/ng/popover';
|
|
10
9
|
import { Subscription } from 'rxjs';
|
|
11
10
|
import * as i1 from '@angular/cdk/overlay';
|
|
@@ -188,6 +187,25 @@ class ALuSelectInput extends ALuPopoverTrigger {
|
|
|
188
187
|
}
|
|
189
188
|
|
|
190
189
|
class ALuSelectInputComponent extends ALuSelectInput {
|
|
190
|
+
set _vcDisplayContainer(vcr) {
|
|
191
|
+
this.displayContainer = vcr;
|
|
192
|
+
}
|
|
193
|
+
set overlapInput(o) {
|
|
194
|
+
this.target.overlap = o;
|
|
195
|
+
}
|
|
196
|
+
set inputPlaceholder(p) {
|
|
197
|
+
this._placeholder = p;
|
|
198
|
+
}
|
|
199
|
+
set inputMultiple(m) {
|
|
200
|
+
if (m === '') {
|
|
201
|
+
// allows to have multiple = true when writing
|
|
202
|
+
// <lu-select multiple>
|
|
203
|
+
this.multiple = true;
|
|
204
|
+
}
|
|
205
|
+
else {
|
|
206
|
+
this.multiple = !!m;
|
|
207
|
+
}
|
|
208
|
+
}
|
|
191
209
|
constructor(_changeDetectorRef, _overlay, _elementRef, _viewContainerRef, _renderer) {
|
|
192
210
|
super(_changeDetectorRef, _overlay, _elementRef, _viewContainerRef, _renderer);
|
|
193
211
|
this._changeDetectorRef = _changeDetectorRef;
|
|
@@ -195,47 +213,17 @@ class ALuSelectInputComponent extends ALuSelectInput {
|
|
|
195
213
|
this._elementRef = _elementRef;
|
|
196
214
|
this._viewContainerRef = _viewContainerRef;
|
|
197
215
|
this._renderer = _renderer;
|
|
198
|
-
this._vcDisplayContainer = viewChild('display', { ...(ngDevMode ? { debugName: "_vcDisplayContainer" } : /* istanbul ignore next */ {}), read: ViewContainerRef });
|
|
199
216
|
this.tabindex = 0;
|
|
200
|
-
this.pickerOverlap = input(false, { ...(ngDevMode ? { debugName: "pickerOverlap" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
201
|
-
this.placeholderInput = input('', { ...(ngDevMode ? { debugName: "placeholderInput" } : /* istanbul ignore next */ {}), alias: 'placeholder' });
|
|
202
|
-
this.multipleInput = input(false, { ...(ngDevMode ? { debugName: "multipleInput" } : /* istanbul ignore next */ {}), alias: 'multiple' });
|
|
203
|
-
this.disabledInput = input(false, { ...(ngDevMode ? { debugName: "disabledInput" } : /* istanbul ignore next */ {}), alias: 'disabled' });
|
|
204
|
-
this.pickerOverlapRef = linkedSignal(() => this.pickerOverlap(), ...(ngDevMode ? [{ debugName: "pickerOverlapRef" }] : /* istanbul ignore next */ []));
|
|
205
|
-
this.onOpen = new EventEmitter();
|
|
206
|
-
this.onClose = new EventEmitter();
|
|
207
217
|
/** Event emitted when the associated popover is opened. */
|
|
208
|
-
this.
|
|
218
|
+
this.onOpen = new EventEmitter();
|
|
209
219
|
/** Event emitted when the associated popover is closed. */
|
|
210
|
-
this.
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
this.
|
|
217
|
-
this.vcDisplayer = viewChild(ALuInputDisplayer, ...(ngDevMode ? [{ debugName: "vcDisplayer" }] : /* istanbul ignore next */ []));
|
|
218
|
-
this.ccClearer = contentChild(ALuClear, ...(ngDevMode ? [{ debugName: "ccClearer" }] : /* istanbul ignore next */ []));
|
|
219
|
-
this.vcClearer = viewChild(ALuClear, ...(ngDevMode ? [{ debugName: "vcClearer" }] : /* istanbul ignore next */ []));
|
|
220
|
-
_effectWithDeps([this.pickerOverlapRef], (pickerOverlap) => (this.target.overlap = pickerOverlap));
|
|
221
|
-
_effectWithDeps([this.placeholderInput], (placeholder) => {
|
|
222
|
-
if (isNotNil(placeholder) && placeholder) {
|
|
223
|
-
this._placeholder = placeholder;
|
|
224
|
-
}
|
|
225
|
-
});
|
|
226
|
-
_effectWithDeps([this.multipleInput], (multiple) => {
|
|
227
|
-
if (multiple === '') {
|
|
228
|
-
// allows to have multiple = true when writing
|
|
229
|
-
// <lu-select multiple>
|
|
230
|
-
this.multiple = true;
|
|
231
|
-
}
|
|
232
|
-
else {
|
|
233
|
-
this.multiple = !!multiple;
|
|
234
|
-
}
|
|
235
|
-
});
|
|
236
|
-
_effectWithDeps([this.disabledInput], (disabled) => {
|
|
237
|
-
this.setDisabledState(disabled);
|
|
238
|
-
});
|
|
220
|
+
this.onClose = new EventEmitter();
|
|
221
|
+
}
|
|
222
|
+
get isDisabled() {
|
|
223
|
+
return this.disabled;
|
|
224
|
+
}
|
|
225
|
+
set inputDisabled(d) {
|
|
226
|
+
this._disabled = d;
|
|
239
227
|
}
|
|
240
228
|
get isFocused() {
|
|
241
229
|
return this._popoverOpen && !this.target.overlap;
|
|
@@ -269,18 +257,17 @@ class ALuSelectInputComponent extends ALuSelectInput {
|
|
|
269
257
|
}
|
|
270
258
|
}
|
|
271
259
|
ngAfterViewInit() {
|
|
272
|
-
this.displayContainer = this._vcDisplayContainer();
|
|
273
260
|
this._isContentInitialized = true;
|
|
274
261
|
// init picker and displayer and clearer
|
|
275
|
-
const picker = this.ccPicker
|
|
262
|
+
const picker = this.ccPicker || this.vcPicker;
|
|
276
263
|
if (picker) {
|
|
277
264
|
this._picker = picker;
|
|
278
265
|
}
|
|
279
|
-
const displayer = this.ccDisplayer
|
|
266
|
+
const displayer = this.ccDisplayer || this.vcDisplayer;
|
|
280
267
|
if (displayer) {
|
|
281
268
|
this._displayer = displayer;
|
|
282
269
|
}
|
|
283
|
-
const clearer = this.ccClearer
|
|
270
|
+
const clearer = this.ccClearer || this.vcClearer;
|
|
284
271
|
if (clearer) {
|
|
285
272
|
this._clearer = clearer;
|
|
286
273
|
}
|
|
@@ -308,27 +295,84 @@ class ALuSelectInputComponent extends ALuSelectInput {
|
|
|
308
295
|
this.onClose.emit();
|
|
309
296
|
}
|
|
310
297
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ALuSelectInputComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.Overlay }, { token: i0.ElementRef }, { token: i0.ViewContainerRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
311
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "
|
|
298
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.14", type: ALuSelectInputComponent, isStandalone: true, inputs: { overlapInput: ["pickerOverlap", "overlapInput"], inputPlaceholder: ["placeholder", "inputPlaceholder"], inputMultiple: ["multiple", "inputMultiple"], inputDisabled: ["disabled", "inputDisabled"] }, outputs: { onOpen: "onOpen", onClose: "onClose" }, host: { listeners: { "click": "onClick()", "mouseenter": "onMouseEnter()", "mouseleave": "onMouseLeave()", "focus": "onFocus()", "blur": "onBlur()", "keydown.space": "onKeydown($event)", "keydown.enter": "onKeydown($event)" }, properties: { "tabindex": "this.tabindex", "class.is-disabled": "this.isDisabled", "class.is-focused": "this.isFocused", "class.mod-multiple": "this.modMultiple", "class.is-clearable": "this.isClearable" } }, queries: [{ propertyName: "ccPicker", first: true, predicate: ALuPickerPanel, descendants: true, static: true }, { propertyName: "ccDisplayer", first: true, predicate: ALuInputDisplayer, descendants: true, static: true }, { propertyName: "ccClearer", first: true, predicate: ALuClear, descendants: true, static: true }], viewQueries: [{ propertyName: "_vcDisplayContainer", first: true, predicate: ["display"], descendants: true, read: ViewContainerRef, static: true }, { propertyName: "vcPicker", first: true, predicate: ALuPickerPanel, descendants: true, static: true }, { propertyName: "vcDisplayer", first: true, predicate: ALuInputDisplayer, descendants: true, static: true }, { propertyName: "vcClearer", first: true, predicate: ALuClear, descendants: true, static: true }], usesInheritance: true, ngImport: i0 }); }
|
|
312
299
|
}
|
|
313
300
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: ALuSelectInputComponent, decorators: [{
|
|
314
|
-
type: Directive
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
301
|
+
type: Directive
|
|
302
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.Overlay }, { type: i0.ElementRef }, { type: i0.ViewContainerRef }, { type: i0.Renderer2 }], propDecorators: { _vcDisplayContainer: [{
|
|
303
|
+
type: ViewChild,
|
|
304
|
+
args: ['display', { read: ViewContainerRef, static: true }]
|
|
305
|
+
}], tabindex: [{
|
|
306
|
+
type: HostBinding,
|
|
307
|
+
args: ['tabindex']
|
|
308
|
+
}], overlapInput: [{
|
|
309
|
+
type: Input,
|
|
310
|
+
args: ['pickerOverlap']
|
|
311
|
+
}], inputPlaceholder: [{
|
|
312
|
+
type: Input,
|
|
313
|
+
args: ['placeholder']
|
|
314
|
+
}], inputMultiple: [{
|
|
315
|
+
type: Input,
|
|
316
|
+
args: ['multiple']
|
|
317
|
+
}], onOpen: [{
|
|
318
|
+
type: Output
|
|
319
|
+
}], onClose: [{
|
|
320
|
+
type: Output
|
|
321
|
+
}], isDisabled: [{
|
|
322
|
+
type: HostBinding,
|
|
323
|
+
args: ['class.is-disabled']
|
|
324
|
+
}], inputDisabled: [{
|
|
325
|
+
type: Input,
|
|
326
|
+
args: ['disabled']
|
|
327
|
+
}], isFocused: [{
|
|
328
|
+
type: HostBinding,
|
|
329
|
+
args: ['class.is-focused']
|
|
330
|
+
}], modMultiple: [{
|
|
331
|
+
type: HostBinding,
|
|
332
|
+
args: ['class.mod-multiple']
|
|
333
|
+
}], isClearable: [{
|
|
334
|
+
type: HostBinding,
|
|
335
|
+
args: ['class.is-clearable']
|
|
336
|
+
}], ccPicker: [{
|
|
337
|
+
type: ContentChild,
|
|
338
|
+
args: [ALuPickerPanel, { static: true }]
|
|
339
|
+
}], vcPicker: [{
|
|
340
|
+
type: ViewChild,
|
|
341
|
+
args: [ALuPickerPanel, { static: true }]
|
|
342
|
+
}], ccDisplayer: [{
|
|
343
|
+
type: ContentChild,
|
|
344
|
+
args: [ALuInputDisplayer, { static: true }]
|
|
345
|
+
}], vcDisplayer: [{
|
|
346
|
+
type: ViewChild,
|
|
347
|
+
args: [ALuInputDisplayer, { static: true }]
|
|
348
|
+
}], ccClearer: [{
|
|
349
|
+
type: ContentChild,
|
|
350
|
+
args: [ALuClear, { static: true }]
|
|
351
|
+
}], vcClearer: [{
|
|
352
|
+
type: ViewChild,
|
|
353
|
+
args: [ALuClear, { static: true }]
|
|
354
|
+
}], onClick: [{
|
|
355
|
+
type: HostListener,
|
|
356
|
+
args: ['click']
|
|
357
|
+
}], onMouseEnter: [{
|
|
358
|
+
type: HostListener,
|
|
359
|
+
args: ['mouseenter']
|
|
360
|
+
}], onMouseLeave: [{
|
|
361
|
+
type: HostListener,
|
|
362
|
+
args: ['mouseleave']
|
|
363
|
+
}], onFocus: [{
|
|
364
|
+
type: HostListener,
|
|
365
|
+
args: ['focus']
|
|
366
|
+
}], onBlur: [{
|
|
367
|
+
type: HostListener,
|
|
368
|
+
args: ['blur']
|
|
369
|
+
}], onKeydown: [{
|
|
370
|
+
type: HostListener,
|
|
371
|
+
args: ['keydown.space', ['$event']]
|
|
372
|
+
}, {
|
|
373
|
+
type: HostListener,
|
|
374
|
+
args: ['keydown.enter', ['$event']]
|
|
375
|
+
}] } });
|
|
332
376
|
/**
|
|
333
377
|
* select input
|
|
334
378
|
*
|
|
@@ -345,14 +389,10 @@ class LuSelectInputComponent extends ALuSelectInputComponent {
|
|
|
345
389
|
this._elementRef = _elementRef;
|
|
346
390
|
this._viewContainerRef = _viewContainerRef;
|
|
347
391
|
this._renderer = _renderer;
|
|
348
|
-
// display clearer
|
|
349
|
-
this.clearerEltRef = contentChild(ALuClear, { ...(ngDevMode ? { debugName: "clearerEltRef" } : /* istanbul ignore next */ {}), read: ElementRef });
|
|
350
|
-
this.suffixEltRef = viewChild('suffix', { ...(ngDevMode ? { debugName: "suffixEltRef" } : /* istanbul ignore next */ {}), read: ElementRef });
|
|
351
392
|
}
|
|
352
393
|
displayClearer() {
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
this._renderer.appendChild(this.suffixEltRef().nativeElement, clearerEl.nativeElement);
|
|
394
|
+
if (this.clearerEltRef) {
|
|
395
|
+
this._renderer.appendChild(this.suffixEltRef.nativeElement, this.clearerEltRef.nativeElement);
|
|
356
396
|
}
|
|
357
397
|
}
|
|
358
398
|
ngAfterViewInit() {
|
|
@@ -360,26 +400,33 @@ class LuSelectInputComponent extends ALuSelectInputComponent {
|
|
|
360
400
|
this.displayClearer(); // dont keep
|
|
361
401
|
}
|
|
362
402
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: LuSelectInputComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.Overlay }, { token: i0.ElementRef }, { token: i0.ViewContainerRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
363
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
403
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.14", type: LuSelectInputComponent, isStandalone: true, selector: "lu-select", host: { properties: { "class.mod-multipleView": "this.modMultipleView" } }, providers: [
|
|
364
404
|
{
|
|
365
405
|
provide: NG_VALUE_ACCESSOR,
|
|
366
406
|
useExisting: forwardRef(() => LuSelectInputComponent),
|
|
367
407
|
multi: true,
|
|
368
408
|
},
|
|
369
|
-
], queries: [{ propertyName: "clearerEltRef", first: true, predicate: ALuClear, descendants: true, read: ElementRef
|
|
409
|
+
], queries: [{ propertyName: "clearerEltRef", first: true, predicate: ALuClear, descendants: true, read: ElementRef }], viewQueries: [{ propertyName: "suffixEltRef", first: true, predicate: ["suffix"], descendants: true, read: ElementRef, static: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"lu-select-placeholder\">{{ placeholder }}</div>\n<div class=\"lu-select-value\">\n\t<div class=\"lu-select-display-wrapper\">\n\t\t<ng-container #display />\n\t</div>\n</div>\n<div #suffix class=\"lu-select-suffix\"></div>\n", styles: ["@charset \"UTF-8\";@layer base{:root{--components-options-item-padding-vertical: var(--pr-t-spacings-50);--components-options-item-padding-horizontal: var(--pr-t-spacings-100);--components-options-item-multiple-padding: 2.25rem;--components-options-item-icon-color: var(--palettes-neutral-800);--components-options-checkbox-size: 1.25rem;--components-options-checkbox-color: var(--palettes-700, var(--palettes-product-700));--components-options-checkbox-border-radius: var(--pr-t-border-radius-small);--components-options-checkbox-border-color: var(--palettes-neutral-700);--components-options-establishment-multiple-padding: 2rem}}@layer reset,base,components,mods,product,utils;@layer components{:host{--components-select-input-padding-horizontal: var(--pr-t-spacings-100);--components-select-input-padding-vertical: var(--pr-t-spacings-100);--components-select-framed-color: var(--palettes-neutral-500);--components-select-framed-color50: var(--palettes-neutral-50);--components-select-framed-see-through: var(--palettes-neutral-50);--components-select-framed-text: var(--pr-t-color-text);--components-select-framed-placeholder: #cccccc;--components-select-framed-side-padding: var(--pr-t-spacings-200);--components-select-framed-top-padding: var(--pr-t-spacings-400);--components-select-framed-bottom-padding: var(--pr-t-spacings-200);--components-select-framed-label-top-offset: var(--pr-t-spacings-100);cursor:pointer;outline:none;padding:0;gap:0}:host:after{--icon-content: \"\\e97c\";font-weight:var(--pr-t-font-fontWeight-regular);display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:var(--icon-fontFamily);content:var(--icon-content)/\"\";-webkit-font-smoothing:antialiased;text-transform:none;color:var(--palettes-neutral-600);inset-block-end:var(--components-select-input-padding-vertical);font-size:var(--pr-t-font-body-M-lineHeight);line-height:var(--pr-t-font-body-M-lineHeight);pointer-events:none;position:absolute;inset-inline-end:var(--components-select-input-padding-horizontal);transition:transform var(--commons-animations-durations-standard) ease}}@layer mods{:host[disabled],:host.is-disabled{cursor:not-allowed;pointer-events:all}}@layer components{.lu-select-display-wrapper{display:block;inline-size:100%;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.lu-select-value{font:var(--pr-t-font-body-M);min-block-size:calc(var(--components-select-framed-bottom-padding) + var(--pr-t-font-body-M-lineHeight));padding-block:var(--components-select-input-padding-vertical);padding-inline:var(--components-select-input-padding-horizontal) 3.5rem;transition:all var(--commons-animations-durations-standard);display:none}.lu-select-placeholder{color:var(--palettes-neutral-400);font:var(--pr-t-font-body-M);min-block-size:calc(var(--components-select-framed-bottom-padding) + var(--pr-t-font-body-M-lineHeight));padding-block:var(--components-select-input-padding-vertical);padding-inline:var(--components-select-input-padding-horizontal) 3.5rem;transition:all var(--commons-animations-durations-standard);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lu-select-suffix,.lu-select-clearer{position:absolute;inset-block-end:var(--pr-t-spacings-150);inset-inline-end:2.5rem}::ng-deep .lu-select-value .chip{display:inline-flex;max-inline-size:100%;margin-block:0 var(--pr-t-spacings-50);margin-inline:0 var(--pr-t-spacings-50);text-overflow:ellipsis;overflow:hidden;white-space:nowrap}}@layer mods{:host-context(.textfield.mod-S){padding:0}:host-context(.textfield.mod-S) .lu-select-value,:host-context(.textfield.mod-S) .lu-select-placeholder{font-size:var(--pr-t-font-body-S-fontSize);line-height:var(--pr-t-font-body-XS-lineHeight);min-block-size:calc(var(--components-select-framed-bottom-padding) + var(--pr-t-font-body-XS-lineHeight))}:host-context(.textfield.mod-S) .lu-select-clearer{inset-block-end:var(--pr-t-spacings-100)}:host-context(.textfield.mod-S):after{line-height:var(--pr-t-font-body-XS-lineHeight);font-size:var(--pr-t-font-body-S-lineHeight)}:host-context(.textfield.mod-S) .lu-select-suffix{inset-block-end:.5rem;inset-inline-end:2rem}:host-context(.textfield.mod-S) ::ng-deep .lu-select-value .chip{block-size:var(--pr-t-font-body-XS-lineHeight);line-height:var(--pr-t-font-body-XS-lineHeight);font-size:var(--pr-t-font-body-XS-fontSize);padding-inline:var(--pr-t-spacings-50);gap:var(--pr-t-spacings-50)}:host-context(.textfield.mod-S) ::ng-deep .lu-select-value .numericBadge{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: var(--pr-t-border-radius-small);--components-numericBadge-font: var(--pr-t-font-body-XS);--components-numericBadge-fontSize: var(--pr-t-font-body-XS-fontSize);--components-numericBadge-lineHeight: var(--pr-t-font-body-XS-lineHeight)}:host-context(.textfield.mod-framed).textfield-input,:host-context(.form.mod-framed).textfield-input{padding-block:var(--components-select-framed-top-padding) 0;padding-inline:0}:host-context(.textfield.mod-framed).textfield-input:after,:host-context(.form.mod-framed).textfield-input:after{color:var(--palettes-neutral-500);inset-block-end:var(--components-select-framed-bottom-padding);inset-inline-end:var(--pr-t-spacings-100)}:host-context(.textfield.mod-framed).textfield-input .lu-select-value,:host-context(.form.mod-framed).textfield-input .lu-select-value{padding-block:0 var(--components-select-framed-bottom-padding);padding-inline:var(--components-select-framed-side-padding) calc(var(--components-select-framed-side-padding) * 3)}:host-context(.textfield.mod-framed).textfield-input .lu-select-placeholder,:host-context(.form.mod-framed).textfield-input .lu-select-placeholder{color:var(--palettes-neutral-400);padding-block:0 var(--components-select-framed-bottom-padding);padding-inline:var(--components-select-framed-side-padding) calc(var(--components-select-framed-side-padding) * 3)}:host-context(.textfield.mod-framed).textfield-input .lu-select-suffix,:host-context(.form.mod-framed).textfield-input .lu-select-suffix{inset-block-end:var(--components-select-framed-bottom-padding);inset-inline-end:1.7rem}:host-context(.textfield.mod-filter) .lu-select-value,:host-context(.textfield.mod-filter) .lu-select-placeholder{padding:0;block-size:auto;padding-block-start:var(--pr-t-spacings-200);color:var(--pr-t-color-text)}:host-context(.textfield.mod-material):after{color:var(--palettes-neutral-500);inset-block-end:.6rem;inset-inline-end:0}:host-context(.textfield.mod-material) .lu-select-value,:host-context(.textfield.mod-material) .lu-select-placeholder{padding-inline:0 .8rem}:host-context(.textfield.mod-material) .lu-select-suffix{inset-inline-end:calc(2 * var(--components-select-input-padding-horizontal))}:host-context(.textfield.mod-material).is-select .lu-select-placeholder{display:none}:host-context(.textfield.mod-material).mod-search:after{inset-block-end:0}:host-context(.textfield.mod-material).mod-search .lu-select-suffix{inset-inline-end:calc(2.75 * var(--components-select-input-padding-horizontal))}:host-context(.textfield.mod-material .textfield-input.is-focused) .lu-select-placeholder{display:none}:host(.mod-multiple) .lu-select-value{block-size:auto;align-items:center}:host(.mod-multiple) .lu-select-display-wrapper{overflow:visible;white-space:normal;margin-block-end:calc(var(--pr-t-spacings-50) * -1)}:host-context(.textfield.mod-outlined).textfield-input:after{color:var(--palettes-neutral-600)}:host-context(.textfield.mod-outlined).textfield-input .lu-select-placeholder{color:var(--palettes-neutral-400)}:host-context(.textfield.mod-outlined) :host-context(.textfield-input.is-error):after{color:var(--palettes-error-600)}:host-context(.textfield.mod-outlined) :host-context(.textfield-input.is-error) .lu-select-placeholder{color:var(--palettes-error-400)}:host-context(.textfield-input.is-filled) .lu-select-placeholder{display:none}:host-context(.textfield-input.is-filled) .lu-select-value{display:flex;align-items:flex-start}:host-context(.textfield .textfield-input.is-focused):after{transform:rotate(180deg)}:host-context(.textfield-input.is-clearable) .lu-select-value{padding-inline-end:3.5rem}:host-context(.textfield-input.is-error,.textfield-input.is-invalid,.textfield-input.ng-invalid.ng-touched) .lu-select-placeholder{color:var(--palettes-error-400)}:host-context(.textfield-input.is-disabled,.textfield-input[disabled]):after{color:var(--commons-disabled-color)}:host-context(.textfield-input.is-disabled,.textfield-input[disabled]) .lu-select-placeholder{color:var(--commons-disabled-placeholder)}}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
370
410
|
}
|
|
371
411
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: LuSelectInputComponent, decorators: [{
|
|
372
412
|
type: Component,
|
|
373
|
-
args: [{ selector: 'lu-select', changeDetection: ChangeDetectionStrategy.OnPush,
|
|
374
|
-
'[class.mod-multipleView]': 'modMultipleView',
|
|
375
|
-
}, providers: [
|
|
413
|
+
args: [{ selector: 'lu-select', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
376
414
|
{
|
|
377
415
|
provide: NG_VALUE_ACCESSOR,
|
|
378
416
|
useExisting: forwardRef(() => LuSelectInputComponent),
|
|
379
417
|
multi: true,
|
|
380
418
|
},
|
|
381
419
|
], template: "<div class=\"lu-select-placeholder\">{{ placeholder }}</div>\n<div class=\"lu-select-value\">\n\t<div class=\"lu-select-display-wrapper\">\n\t\t<ng-container #display />\n\t</div>\n</div>\n<div #suffix class=\"lu-select-suffix\"></div>\n", styles: ["@charset \"UTF-8\";@layer base{:root{--components-options-item-padding-vertical: var(--pr-t-spacings-50);--components-options-item-padding-horizontal: var(--pr-t-spacings-100);--components-options-item-multiple-padding: 2.25rem;--components-options-item-icon-color: var(--palettes-neutral-800);--components-options-checkbox-size: 1.25rem;--components-options-checkbox-color: var(--palettes-700, var(--palettes-product-700));--components-options-checkbox-border-radius: var(--pr-t-border-radius-small);--components-options-checkbox-border-color: var(--palettes-neutral-700);--components-options-establishment-multiple-padding: 2rem}}@layer reset,base,components,mods,product,utils;@layer components{:host{--components-select-input-padding-horizontal: var(--pr-t-spacings-100);--components-select-input-padding-vertical: var(--pr-t-spacings-100);--components-select-framed-color: var(--palettes-neutral-500);--components-select-framed-color50: var(--palettes-neutral-50);--components-select-framed-see-through: var(--palettes-neutral-50);--components-select-framed-text: var(--pr-t-color-text);--components-select-framed-placeholder: #cccccc;--components-select-framed-side-padding: var(--pr-t-spacings-200);--components-select-framed-top-padding: var(--pr-t-spacings-400);--components-select-framed-bottom-padding: var(--pr-t-spacings-200);--components-select-framed-label-top-offset: var(--pr-t-spacings-100);cursor:pointer;outline:none;padding:0;gap:0}:host:after{--icon-content: \"\\e97c\";font-weight:var(--pr-t-font-fontWeight-regular);display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:var(--icon-fontFamily);content:var(--icon-content)/\"\";-webkit-font-smoothing:antialiased;text-transform:none;color:var(--palettes-neutral-600);inset-block-end:var(--components-select-input-padding-vertical);font-size:var(--pr-t-font-body-M-lineHeight);line-height:var(--pr-t-font-body-M-lineHeight);pointer-events:none;position:absolute;inset-inline-end:var(--components-select-input-padding-horizontal);transition:transform var(--commons-animations-durations-standard) ease}}@layer mods{:host[disabled],:host.is-disabled{cursor:not-allowed;pointer-events:all}}@layer components{.lu-select-display-wrapper{display:block;inline-size:100%;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.lu-select-value{font:var(--pr-t-font-body-M);min-block-size:calc(var(--components-select-framed-bottom-padding) + var(--pr-t-font-body-M-lineHeight));padding-block:var(--components-select-input-padding-vertical);padding-inline:var(--components-select-input-padding-horizontal) 3.5rem;transition:all var(--commons-animations-durations-standard);display:none}.lu-select-placeholder{color:var(--palettes-neutral-400);font:var(--pr-t-font-body-M);min-block-size:calc(var(--components-select-framed-bottom-padding) + var(--pr-t-font-body-M-lineHeight));padding-block:var(--components-select-input-padding-vertical);padding-inline:var(--components-select-input-padding-horizontal) 3.5rem;transition:all var(--commons-animations-durations-standard);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lu-select-suffix,.lu-select-clearer{position:absolute;inset-block-end:var(--pr-t-spacings-150);inset-inline-end:2.5rem}::ng-deep .lu-select-value .chip{display:inline-flex;max-inline-size:100%;margin-block:0 var(--pr-t-spacings-50);margin-inline:0 var(--pr-t-spacings-50);text-overflow:ellipsis;overflow:hidden;white-space:nowrap}}@layer mods{:host-context(.textfield.mod-S){padding:0}:host-context(.textfield.mod-S) .lu-select-value,:host-context(.textfield.mod-S) .lu-select-placeholder{font-size:var(--pr-t-font-body-S-fontSize);line-height:var(--pr-t-font-body-XS-lineHeight);min-block-size:calc(var(--components-select-framed-bottom-padding) + var(--pr-t-font-body-XS-lineHeight))}:host-context(.textfield.mod-S) .lu-select-clearer{inset-block-end:var(--pr-t-spacings-100)}:host-context(.textfield.mod-S):after{line-height:var(--pr-t-font-body-XS-lineHeight);font-size:var(--pr-t-font-body-S-lineHeight)}:host-context(.textfield.mod-S) .lu-select-suffix{inset-block-end:.5rem;inset-inline-end:2rem}:host-context(.textfield.mod-S) ::ng-deep .lu-select-value .chip{block-size:var(--pr-t-font-body-XS-lineHeight);line-height:var(--pr-t-font-body-XS-lineHeight);font-size:var(--pr-t-font-body-XS-fontSize);padding-inline:var(--pr-t-spacings-50);gap:var(--pr-t-spacings-50)}:host-context(.textfield.mod-S) ::ng-deep .lu-select-value .numericBadge{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: var(--pr-t-border-radius-small);--components-numericBadge-font: var(--pr-t-font-body-XS);--components-numericBadge-fontSize: var(--pr-t-font-body-XS-fontSize);--components-numericBadge-lineHeight: var(--pr-t-font-body-XS-lineHeight)}:host-context(.textfield.mod-framed).textfield-input,:host-context(.form.mod-framed).textfield-input{padding-block:var(--components-select-framed-top-padding) 0;padding-inline:0}:host-context(.textfield.mod-framed).textfield-input:after,:host-context(.form.mod-framed).textfield-input:after{color:var(--palettes-neutral-500);inset-block-end:var(--components-select-framed-bottom-padding);inset-inline-end:var(--pr-t-spacings-100)}:host-context(.textfield.mod-framed).textfield-input .lu-select-value,:host-context(.form.mod-framed).textfield-input .lu-select-value{padding-block:0 var(--components-select-framed-bottom-padding);padding-inline:var(--components-select-framed-side-padding) calc(var(--components-select-framed-side-padding) * 3)}:host-context(.textfield.mod-framed).textfield-input .lu-select-placeholder,:host-context(.form.mod-framed).textfield-input .lu-select-placeholder{color:var(--palettes-neutral-400);padding-block:0 var(--components-select-framed-bottom-padding);padding-inline:var(--components-select-framed-side-padding) calc(var(--components-select-framed-side-padding) * 3)}:host-context(.textfield.mod-framed).textfield-input .lu-select-suffix,:host-context(.form.mod-framed).textfield-input .lu-select-suffix{inset-block-end:var(--components-select-framed-bottom-padding);inset-inline-end:1.7rem}:host-context(.textfield.mod-filter) .lu-select-value,:host-context(.textfield.mod-filter) .lu-select-placeholder{padding:0;block-size:auto;padding-block-start:var(--pr-t-spacings-200);color:var(--pr-t-color-text)}:host-context(.textfield.mod-material):after{color:var(--palettes-neutral-500);inset-block-end:.6rem;inset-inline-end:0}:host-context(.textfield.mod-material) .lu-select-value,:host-context(.textfield.mod-material) .lu-select-placeholder{padding-inline:0 .8rem}:host-context(.textfield.mod-material) .lu-select-suffix{inset-inline-end:calc(2 * var(--components-select-input-padding-horizontal))}:host-context(.textfield.mod-material).is-select .lu-select-placeholder{display:none}:host-context(.textfield.mod-material).mod-search:after{inset-block-end:0}:host-context(.textfield.mod-material).mod-search .lu-select-suffix{inset-inline-end:calc(2.75 * var(--components-select-input-padding-horizontal))}:host-context(.textfield.mod-material .textfield-input.is-focused) .lu-select-placeholder{display:none}:host(.mod-multiple) .lu-select-value{block-size:auto;align-items:center}:host(.mod-multiple) .lu-select-display-wrapper{overflow:visible;white-space:normal;margin-block-end:calc(var(--pr-t-spacings-50) * -1)}:host-context(.textfield.mod-outlined).textfield-input:after{color:var(--palettes-neutral-600)}:host-context(.textfield.mod-outlined).textfield-input .lu-select-placeholder{color:var(--palettes-neutral-400)}:host-context(.textfield.mod-outlined) :host-context(.textfield-input.is-error):after{color:var(--palettes-error-600)}:host-context(.textfield.mod-outlined) :host-context(.textfield-input.is-error) .lu-select-placeholder{color:var(--palettes-error-400)}:host-context(.textfield-input.is-filled) .lu-select-placeholder{display:none}:host-context(.textfield-input.is-filled) .lu-select-value{display:flex;align-items:flex-start}:host-context(.textfield .textfield-input.is-focused):after{transform:rotate(180deg)}:host-context(.textfield-input.is-clearable) .lu-select-value{padding-inline-end:3.5rem}:host-context(.textfield-input.is-error,.textfield-input.is-invalid,.textfield-input.ng-invalid.ng-touched) .lu-select-placeholder{color:var(--palettes-error-400)}:host-context(.textfield-input.is-disabled,.textfield-input[disabled]):after{color:var(--commons-disabled-color)}:host-context(.textfield-input.is-disabled,.textfield-input[disabled]) .lu-select-placeholder{color:var(--commons-disabled-placeholder)}}\n"] }]
|
|
382
|
-
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.Overlay }, { type: i0.ElementRef }, { type: i0.ViewContainerRef }, { type: i0.Renderer2 }], propDecorators: {
|
|
420
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.Overlay }, { type: i0.ElementRef }, { type: i0.ViewContainerRef }, { type: i0.Renderer2 }], propDecorators: { modMultipleView: [{
|
|
421
|
+
type: HostBinding,
|
|
422
|
+
args: ['class.mod-multipleView']
|
|
423
|
+
}], clearerEltRef: [{
|
|
424
|
+
type: ContentChild,
|
|
425
|
+
args: [ALuClear, { read: ElementRef, static: false }]
|
|
426
|
+
}], suffixEltRef: [{
|
|
427
|
+
type: ViewChild,
|
|
428
|
+
args: ['suffix', { read: ElementRef, static: true }]
|
|
429
|
+
}] } });
|
|
383
430
|
|
|
384
431
|
/**
|
|
385
432
|
* @deprecated prefer SimpleSelect or MultipleSelect
|