@lucca-front/ng 16.3.0-rc.3 → 16.3.1-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (33) hide show
  1. package/callout/callout.component.d.ts +6 -8
  2. package/date/select/date-select-input.component.d.ts +3 -1
  3. package/esm2022/api/select/input/api-select-input.component.mjs +3 -3
  4. package/esm2022/callout/callout.component.mjs +12 -14
  5. package/esm2022/date/calendar/calendar-input.component.mjs +3 -3
  6. package/esm2022/date/select/date-select-input.component.mjs +10 -4
  7. package/esm2022/department/select/input/department-select-input.component.mjs +3 -3
  8. package/esm2022/establishment/select/input/establishment-select-input.component.mjs +3 -3
  9. package/esm2022/qualification/select/input/qualification-select-input.component.mjs +3 -3
  10. package/esm2022/select/input/select-input.component.mjs +2 -2
  11. package/esm2022/simple-select/input/select-input.component.mjs +3 -3
  12. package/esm2022/user/select/input/user-select-input.component.mjs +3 -3
  13. package/fesm2022/lucca-front-ng-api.mjs +2 -2
  14. package/fesm2022/lucca-front-ng-api.mjs.map +1 -1
  15. package/fesm2022/lucca-front-ng-callout.mjs +11 -13
  16. package/fesm2022/lucca-front-ng-callout.mjs.map +1 -1
  17. package/fesm2022/lucca-front-ng-date.mjs +11 -5
  18. package/fesm2022/lucca-front-ng-date.mjs.map +1 -1
  19. package/fesm2022/lucca-front-ng-department.mjs +2 -2
  20. package/fesm2022/lucca-front-ng-department.mjs.map +1 -1
  21. package/fesm2022/lucca-front-ng-establishment.mjs +2 -2
  22. package/fesm2022/lucca-front-ng-establishment.mjs.map +1 -1
  23. package/fesm2022/lucca-front-ng-qualification.mjs +2 -2
  24. package/fesm2022/lucca-front-ng-qualification.mjs.map +1 -1
  25. package/fesm2022/lucca-front-ng-select.mjs +2 -2
  26. package/fesm2022/lucca-front-ng-select.mjs.map +1 -1
  27. package/fesm2022/lucca-front-ng-simple-select.mjs +2 -2
  28. package/fesm2022/lucca-front-ng-simple-select.mjs.map +1 -1
  29. package/fesm2022/lucca-front-ng-user.mjs +2 -2
  30. package/fesm2022/lucca-front-ng-user.mjs.map +1 -1
  31. package/package.json +21 -21
  32. package/src/components/_picker.scss +2 -0
  33. package/src/definitions/select/_select-input.scss +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"lucca-front-ng-select.mjs","sources":["../../../packages/ng/select/input/select-input.model.ts","../../../packages/ng/select/input/select-input.component.ts","../../../packages/ng/select/input/select-input.component.html","../../../packages/ng/select/input/select-input.module.ts","../../../packages/ng/select/select.module.ts","../../../packages/ng/select/lucca-front-ng-select.ts"],"sourcesContent":["import { Overlay, OverlayConfig } from '@angular/cdk/overlay';\r\nimport { ChangeDetectorRef, ElementRef, Renderer2, ViewContainerRef, ViewRef } from '@angular/core';\r\nimport { ControlValueAccessor } from '@angular/forms';\r\nimport { ILuClearer, ILuInput, ILuInputDisplayer } from '@lucca-front/ng/input';\r\nimport { ILuInputWithPicker, ILuPickerPanel } from '@lucca-front/ng/picker';\r\nimport { ALuPopoverTrigger, LuPopoverTarget } from '@lucca-front/ng/popover';\r\nimport { Subscription } from 'rxjs';\r\n\r\nexport abstract class ALuSelectInput<T, TPicker extends ILuPickerPanel<T> = ILuPickerPanel<T>> extends ALuPopoverTrigger<TPicker> implements ControlValueAccessor, ILuInputWithPicker<T>, ILuInput {\r\n\tprotected _subs = new Subscription();\r\n\tconstructor(\r\n\t\tprotected _changeDetectorRef: ChangeDetectorRef,\r\n\t\tprotected override _overlay: Overlay,\r\n\t\tprotected override _elementRef: ElementRef<HTMLElement>,\r\n\t\tprotected override _viewContainerRef: ViewContainerRef,\r\n\t\tprotected _renderer: Renderer2,\r\n\t) {\r\n\t\tsuper(_overlay, _elementRef, _viewContainerRef);\r\n\t\tthis.target = new LuPopoverTarget();\r\n\t\tthis.target.elementRef = this._elementRef;\r\n\t\tthis.target.position = 'below';\r\n\t\tthis.target.alignment = 'left';\r\n\t}\r\n\tprotected _isContentInitialized = false;\r\n\tprotected _placeholder: string;\r\n\tget placeholder() {\r\n\t\treturn this._placeholder;\r\n\t}\r\n\tset placeholder(p: string) {\r\n\t\tthis._placeholder = p;\r\n\t}\r\n\t/**\r\n\t * contriol value accessor interface implementation\r\n\t */\r\n\tprotected _value: T | T[];\r\n\tsetValue(value: T | T[]) {\r\n\t\tif (this.disabled) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tthis.value = value;\r\n\t\tthis._cvaOnChange(value);\r\n\t\tthis._onTouched();\r\n\t}\r\n\tget value(): T | T[] {\r\n\t\treturn this._value;\r\n\t}\r\n\tset value(value: T | T[]) {\r\n\t\tthis._value = value;\r\n\t\tthis.render();\r\n\t\tthis.applyClasses();\r\n\t\tif (this._picker) {\r\n\t\t\tthis._picker.setValue(value);\r\n\t\t}\r\n\t\tthis._changeDetectorRef.markForCheck();\r\n\t}\r\n\t// From ControlValueAccessor interface\r\n\twriteValue(value: T | T[]) {\r\n\t\tthis.value = value;\r\n\t}\r\n\t// From ControlValueAccessor interface\r\n\tprotected _cvaOnChange = (v: T | T[]) => void v;\r\n\tregisterOnChange(fn: (v: T | T[]) => unknown) {\r\n\t\tthis._cvaOnChange = fn;\r\n\t}\r\n\t// From ControlValueAccessor interface\r\n\tprotected _onTouched = () => void {};\r\n\tregisterOnTouched(fn: () => unknown) {\r\n\t\tthis._onTouched = fn;\r\n\t}\r\n\toverride set disabled(d) {\r\n\t\tthis._disabled = d;\r\n\t}\r\n\toverride get disabled() {\r\n\t\treturn this._disabled;\r\n\t}\r\n\tsetDisabledState(disabled: boolean) {\r\n\t\tthis.disabled = disabled;\r\n\t\tthis._changeDetectorRef.markForCheck();\r\n\t}\r\n\tprotected isEmpty() {\r\n\t\tconst isEmptyArray = Array.isArray(this.value) && this.value.length === 0;\r\n\t\treturn this.value === null || this.value === undefined || isEmptyArray;\r\n\t}\r\n\tprotected applyClasses() {\r\n\t\tif (this.isEmpty()) {\r\n\t\t\tthis._renderer.removeClass(this._elementRef.nativeElement, 'is-filled');\r\n\t\t} else {\r\n\t\t\tthis._renderer.addClass(this._elementRef.nativeElement, 'is-filled');\r\n\t\t}\r\n\t}\r\n\t/**\r\n\t * popover trigger class extension\r\n\t */\r\n\tprotected set _picker(picker: TPicker) {\r\n\t\tthis.panel = picker;\r\n\t\tpicker.multiple = this._multiple;\r\n\t\tthis.subToPickerEvts();\r\n\t}\r\n\tprotected get _picker() {\r\n\t\treturn this.panel;\r\n\t}\r\n\tprotected set _clearer(clearer: ILuClearer<T>) {\r\n\t\tif (!!clearer && !!clearer.onClear) {\r\n\t\t\tthis._subs.add(clearer.onClear.subscribe(() => this.setValue(this._multiple ? [] : undefined)));\r\n\t\t}\r\n\t}\r\n\tprotected subToPickerEvts() {\r\n\t\tif (this.panel) {\r\n\t\t\tthis._subs.add(this.panel.onSelectValue.subscribe((value) => this.setValue(value)));\r\n\t\t}\r\n\t}\r\n\r\n\toverride closePopover() {\r\n\t\tthis._onTouched();\r\n\t\tsuper.closePopover();\r\n\t}\r\n\r\n\tonDestroy() {\r\n\t\tif (this._popoverOpen) {\r\n\t\t\tthis.closePopover();\r\n\t\t}\r\n\t\tthis.destroyPopover();\r\n\t\tthis._subs.unsubscribe();\r\n\t\tthis._cleanUpSubscriptions();\r\n\t}\r\n\r\n\tprotected override _getOverlayConfig(): OverlayConfig {\r\n\t\tconst config = super._getOverlayConfig();\r\n\t\tconst clientRect = this._elementRef.nativeElement.getBoundingClientRect();\r\n\t\tconfig.minWidth = `${Math.max(185, clientRect.width)}px`; // might become min/maxWidth\r\n\t\treturn config;\r\n\t}\r\n\r\n\t/* Rendering via a inpt displayer */\r\n\tprotected _displayer: ILuInputDisplayer<T>;\r\n\tprotected _displayContainer: ViewContainerRef;\r\n\tprotected set displayer(d: ILuInputDisplayer<T>) {\r\n\t\tthis._displayer = d;\r\n\t\tthis.render();\r\n\t}\r\n\tprotected set displayContainer(vcr: ViewContainerRef) {\r\n\t\tthis._displayContainer = vcr;\r\n\t}\r\n\tprotected render() {\r\n\t\tif (!this._displayer || !this._isContentInitialized) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tif (this.useMultipleViews()) {\r\n\t\t\tthis.renderMultipleViews();\r\n\t\t} else {\r\n\t\t\tthis.renderSingleView();\r\n\t\t}\r\n\t}\r\n\tprotected useMultipleViews() {\r\n\t\treturn this._multiple && !!this._displayer && !this._displayer.multiple;\r\n\t}\r\n\r\n\tprotected renderSingleView() {\r\n\t\tthis.clearDisplay();\r\n\t\tif (this.value !== null && this.value !== undefined) {\r\n\t\t\tconst newView = this.getView(this.value);\r\n\t\t\tthis.displayView(newView);\r\n\t\t}\r\n\t}\r\n\tprotected clearDisplay() {\r\n\t\tthis._displayContainer.clear();\r\n\t}\r\n\tprotected getView(value: T | T[]) {\r\n\t\tif (this._displayer) {\r\n\t\t\treturn this._displayer.getViewRef(value);\r\n\t\t}\r\n\t\treturn undefined;\r\n\t}\r\n\tprotected displayView(view: ViewRef) {\r\n\t\tif (view) {\r\n\t\t\tthis._displayContainer.insert(view);\r\n\t\t}\r\n\t}\r\n\r\n\tprotected renderMultipleViews() {\r\n\t\tthis.clearDisplay();\r\n\t\tconst values = <T[]>this.value || [];\r\n\t\tconst views = values.map((value) => this.getView(value));\r\n\t\tviews.forEach((view) => this.displayView(view));\r\n\t}\r\n\t// multiple\r\n\tprotected _multiple = false;\r\n\tset multiple(m: boolean) {\r\n\t\tthis._multiple = m;\r\n\t\tif (this._picker) {\r\n\t\t\tthis._picker.multiple = m;\r\n\t\t}\r\n\t}\r\n\tget multiple() {\r\n\t\treturn this._multiple;\r\n\t}\r\n}\r\n","/* eslint-disable @angular-eslint/no-output-on-prefix */\r\nimport { Overlay } from '@angular/cdk/overlay';\r\nimport {\r\n\tAfterViewInit,\r\n\tChangeDetectionStrategy,\r\n\tChangeDetectorRef,\r\n\tComponent,\r\n\tContentChild,\r\n\tDirective,\r\n\tElementRef,\r\n\tEventEmitter,\r\n\tforwardRef,\r\n\tHostBinding,\r\n\tHostListener,\r\n\tInput,\r\n\tOnDestroy,\r\n\tOutput,\r\n\tRenderer2,\r\n\tViewChild,\r\n\tViewContainerRef,\r\n} from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { ALuClearer, ALuInputDisplayer, ILuClearer, ILuInputDisplayer } from '@lucca-front/ng/input';\r\nimport { ALuPickerPanel, ILuPickerPanel } from '@lucca-front/ng/picker';\r\nimport { ALuSelectInput } from './select-input.model';\r\n\r\n@Directive()\r\nexport abstract class ALuSelectInputComponent<T, TPicker extends ILuPickerPanel<T> = ILuPickerPanel<T>> extends ALuSelectInput<T, TPicker> implements ControlValueAccessor, AfterViewInit, OnDestroy {\r\n\t@ViewChild('display', { read: ViewContainerRef, static: true })\r\n\tprotected set _vcDisplayContainer(vcr: ViewContainerRef) {\r\n\t\tthis.displayContainer = vcr;\r\n\t}\r\n\r\n\t@HostBinding('tabindex') tabindex = 0;\r\n\r\n\t@Input('pickerOverlap') set overlapInput(o: boolean) {\r\n\t\tthis.target.overlap = o;\r\n\t}\r\n\r\n\t@Input('placeholder') set inputPlaceholder(p: string) {\r\n\t\tthis._placeholder = p;\r\n\t}\r\n\t@Input('multiple') set inputMultiple(m: boolean | string) {\r\n\t\tif (m === '') {\r\n\t\t\t// allows to have multiple = true when writing\r\n\t\t\t// <lu-select multiple>\r\n\t\t\tthis.multiple = true;\r\n\t\t} else {\r\n\t\t\tthis.multiple = !!m;\r\n\t\t}\r\n\t}\r\n\t/** Event emitted when the associated popover is opened. */\r\n\t@Output() onOpen = new EventEmitter<void>();\r\n\t/** Event emitted when the associated popover is closed. */\r\n\t@Output() onClose = new EventEmitter<void>();\r\n\r\n\tconstructor(\r\n\t\tprotected override _changeDetectorRef: ChangeDetectorRef,\r\n\t\tprotected override _overlay: Overlay,\r\n\t\tprotected override _elementRef: ElementRef<HTMLElement>,\r\n\t\tprotected override _viewContainerRef: ViewContainerRef,\r\n\t\tprotected override _renderer: Renderer2,\r\n\t) {\r\n\t\tsuper(_changeDetectorRef, _overlay, _elementRef, _viewContainerRef, _renderer);\r\n\t}\r\n\t@HostBinding('class.is-disabled')\r\n\tget isDisabled() {\r\n\t\treturn this.disabled;\r\n\t}\r\n\t@Input('disabled') set inputDisabled(d: boolean) {\r\n\t\tthis._disabled = d;\r\n\t}\r\n\t@HostBinding('class.is-focused')\r\n\tget isFocused() {\r\n\t\treturn this._popoverOpen && !this.target.overlap;\r\n\t}\r\n\t@HostBinding('class.mod-multiple')\r\n\tget modMultiple() {\r\n\t\treturn this._multiple;\r\n\t}\r\n\r\n\t@HostBinding('class.is-clearable')\r\n\tget isClearable() {\r\n\t\treturn !!this._clearer;\r\n\t}\r\n\t/**\r\n\t * popover trigger class extension\r\n\t */\r\n\t@ContentChild(ALuPickerPanel, { static: true }) ccPicker: TPicker;\r\n\t@ViewChild(ALuPickerPanel, { static: true }) vcPicker: TPicker;\r\n\r\n\t@ContentChild(ALuInputDisplayer, { static: true })\r\n\tccDisplayer: ILuInputDisplayer<T>;\r\n\t@ViewChild(ALuInputDisplayer, { static: true })\r\n\tvcDisplayer: ILuInputDisplayer<T>;\r\n\r\n\t@ContentChild(ALuClearer, { static: true }) ccClearer: ILuClearer<T>;\r\n\t@ViewChild(ALuClearer, { static: true }) vcClearer: ILuClearer<T>;\r\n\r\n\t@HostListener('click')\r\n\toverride onClick() {\r\n\t\tsuper.onClick();\r\n\t}\r\n\t@HostListener('mouseenter')\r\n\toverride onMouseEnter() {\r\n\t\tsuper.onMouseEnter();\r\n\t}\r\n\t@HostListener('mouseleave')\r\n\toverride onMouseLeave() {\r\n\t\tsuper.onMouseLeave();\r\n\t}\r\n\t@HostListener('focus')\r\n\toverride onFocus() {\r\n\t\tsuper.onFocus();\r\n\t}\r\n\t@HostListener('blur')\r\n\toverride onBlur() {\r\n\t\tsuper.onBlur();\r\n\t}\r\n\t@HostListener('keydown.space', ['$event'])\r\n\t@HostListener('keydown.enter', ['$event'])\r\n\tonKeydown($event: KeyboardEvent) {\r\n\t\tif (!this._popoverOpen) {\r\n\t\t\tthis.openPopover();\r\n\t\t\t$event.stopPropagation();\r\n\t\t\t$event.preventDefault();\r\n\t\t}\r\n\t}\r\n\r\n\tngAfterViewInit() {\r\n\t\tthis._isContentInitialized = true;\r\n\r\n\t\t// init picker and displayer and clearer\r\n\t\tconst picker = this.ccPicker || this.vcPicker;\r\n\t\tif (picker) {\r\n\t\t\tthis._picker = picker;\r\n\t\t}\r\n\t\tconst displayer = this.ccDisplayer || this.vcDisplayer;\r\n\t\tif (displayer) {\r\n\t\t\tthis._displayer = displayer;\r\n\t\t}\r\n\t\tconst clearer = this.ccClearer || this.vcClearer;\r\n\t\tif (clearer) {\r\n\t\t\tthis._clearer = clearer;\r\n\t\t}\r\n\r\n\t\tthis.render();\r\n\t\tthis._picker.setValue(this.value);\r\n\r\n\t\t// strange bug where the view renderred in the displayer was only injected after a hover\r\n\t\t// no matter how many cdr.markforchack i added\r\n\t\t// but with a timeout it works\r\n\t\t// shrug emoji\r\n\t\tsetTimeout(() => {\r\n\t\t\tthis._changeDetectorRef.markForCheck();\r\n\t\t}, 1);\r\n\t}\r\n\r\n\tngOnDestroy() {\r\n\t\tif (this._popoverOpen) {\r\n\t\t\tthis.closePopover();\r\n\t\t}\r\n\t\tthis.destroyPopover();\r\n\t\tthis.onDestroy();\r\n\t}\r\n\tprotected _emitOpen(): void {\r\n\t\tthis.onOpen.emit();\r\n\t}\r\n\tprotected _emitClose(): void {\r\n\t\tthis.onClose.emit();\r\n\t}\r\n}\r\n\r\n/**\r\n * select input\r\n */\r\n@Component({\r\n\tselector: 'lu-select',\r\n\ttemplateUrl: './select-input.component.html',\r\n\tstyleUrls: ['./select-input.component.scss'],\r\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\r\n\tstandalone: true,\r\n\tproviders: [\r\n\t\t{\r\n\t\t\tprovide: NG_VALUE_ACCESSOR,\r\n\t\t\tuseExisting: forwardRef(() => LuSelectInputComponent),\r\n\t\t\tmulti: true,\r\n\t\t},\r\n\t],\r\n})\r\nexport class LuSelectInputComponent<T> extends ALuSelectInputComponent<T> implements AfterViewInit {\r\n\t@HostBinding('class.mod-multipleView')\r\n\tget modMultipleView() {\r\n\t\treturn this.useMultipleViews();\r\n\t}\r\n\tconstructor(\r\n\t\tprotected override _changeDetectorRef: ChangeDetectorRef,\r\n\t\tprotected override _overlay: Overlay,\r\n\t\tprotected override _elementRef: ElementRef<HTMLElement>,\r\n\t\tprotected override _viewContainerRef: ViewContainerRef,\r\n\t\tprotected override _renderer: Renderer2,\r\n\t) {\r\n\t\tsuper(_changeDetectorRef, _overlay, _elementRef, _viewContainerRef, _renderer);\r\n\t}\r\n\t// display clearer\r\n\t@ContentChild(ALuClearer, { read: ElementRef, static: false })\r\n\tclearerEltRef: ElementRef<HTMLElement>;\r\n\t@ViewChild('suffix', { read: ElementRef, static: true })\r\n\tsuffixEltRef: ElementRef<HTMLElement>;\r\n\tdisplayClearer() {\r\n\t\tif (this.clearerEltRef) {\r\n\t\t\tthis._renderer.appendChild(this.suffixEltRef.nativeElement, this.clearerEltRef.nativeElement);\r\n\t\t}\r\n\t}\r\n\r\n\toverride ngAfterViewInit() {\r\n\t\tsuper.ngAfterViewInit();\r\n\t\tthis.displayClearer(); // dont keep\r\n\t}\r\n}\r\n","<div class=\"lu-select-placeholder\">{{ placeholder }}</div>\r\n<div class=\"lu-select-value\">\r\n\t<div class=\"lu-select-display-wrapper\">\r\n\t\t<ng-container #display></ng-container>\r\n\t</div>\r\n</div>\r\n<div #suffix class=\"lu-select-suffix\"></div>\r\n","import { NgModule } from '@angular/core';\r\nimport { LuSelectInputComponent } from './select-input.component';\r\n\r\n@NgModule({\r\n\timports: [LuSelectInputComponent],\r\n\texports: [LuSelectInputComponent],\r\n})\r\nexport class LuSelectInputModule {}\r\n","import { NgModule } from '@angular/core';\r\nimport { LuSelectInputModule } from './input/index';\r\n\r\n@NgModule({\r\n\timports: [LuSelectInputModule],\r\n\texports: [LuSelectInputModule],\r\n})\r\nexport class LuSelectModule {}\r\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-select.mjs","sources":["../../../packages/ng/select/input/select-input.model.ts","../../../packages/ng/select/input/select-input.component.ts","../../../packages/ng/select/input/select-input.component.html","../../../packages/ng/select/input/select-input.module.ts","../../../packages/ng/select/select.module.ts","../../../packages/ng/select/lucca-front-ng-select.ts"],"sourcesContent":["import { Overlay, OverlayConfig } from '@angular/cdk/overlay';\r\nimport { ChangeDetectorRef, ElementRef, Renderer2, ViewContainerRef, ViewRef } from '@angular/core';\r\nimport { ControlValueAccessor } from '@angular/forms';\r\nimport { ILuClearer, ILuInput, ILuInputDisplayer } from '@lucca-front/ng/input';\r\nimport { ILuInputWithPicker, ILuPickerPanel } from '@lucca-front/ng/picker';\r\nimport { ALuPopoverTrigger, LuPopoverTarget } from '@lucca-front/ng/popover';\r\nimport { Subscription } from 'rxjs';\r\n\r\nexport abstract class ALuSelectInput<T, TPicker extends ILuPickerPanel<T> = ILuPickerPanel<T>> extends ALuPopoverTrigger<TPicker> implements ControlValueAccessor, ILuInputWithPicker<T>, ILuInput {\r\n\tprotected _subs = new Subscription();\r\n\tconstructor(\r\n\t\tprotected _changeDetectorRef: ChangeDetectorRef,\r\n\t\tprotected override _overlay: Overlay,\r\n\t\tprotected override _elementRef: ElementRef<HTMLElement>,\r\n\t\tprotected override _viewContainerRef: ViewContainerRef,\r\n\t\tprotected _renderer: Renderer2,\r\n\t) {\r\n\t\tsuper(_overlay, _elementRef, _viewContainerRef);\r\n\t\tthis.target = new LuPopoverTarget();\r\n\t\tthis.target.elementRef = this._elementRef;\r\n\t\tthis.target.position = 'below';\r\n\t\tthis.target.alignment = 'left';\r\n\t}\r\n\tprotected _isContentInitialized = false;\r\n\tprotected _placeholder: string;\r\n\tget placeholder() {\r\n\t\treturn this._placeholder;\r\n\t}\r\n\tset placeholder(p: string) {\r\n\t\tthis._placeholder = p;\r\n\t}\r\n\t/**\r\n\t * contriol value accessor interface implementation\r\n\t */\r\n\tprotected _value: T | T[];\r\n\tsetValue(value: T | T[]) {\r\n\t\tif (this.disabled) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tthis.value = value;\r\n\t\tthis._cvaOnChange(value);\r\n\t\tthis._onTouched();\r\n\t}\r\n\tget value(): T | T[] {\r\n\t\treturn this._value;\r\n\t}\r\n\tset value(value: T | T[]) {\r\n\t\tthis._value = value;\r\n\t\tthis.render();\r\n\t\tthis.applyClasses();\r\n\t\tif (this._picker) {\r\n\t\t\tthis._picker.setValue(value);\r\n\t\t}\r\n\t\tthis._changeDetectorRef.markForCheck();\r\n\t}\r\n\t// From ControlValueAccessor interface\r\n\twriteValue(value: T | T[]) {\r\n\t\tthis.value = value;\r\n\t}\r\n\t// From ControlValueAccessor interface\r\n\tprotected _cvaOnChange = (v: T | T[]) => void v;\r\n\tregisterOnChange(fn: (v: T | T[]) => unknown) {\r\n\t\tthis._cvaOnChange = fn;\r\n\t}\r\n\t// From ControlValueAccessor interface\r\n\tprotected _onTouched = () => void {};\r\n\tregisterOnTouched(fn: () => unknown) {\r\n\t\tthis._onTouched = fn;\r\n\t}\r\n\toverride set disabled(d) {\r\n\t\tthis._disabled = d;\r\n\t}\r\n\toverride get disabled() {\r\n\t\treturn this._disabled;\r\n\t}\r\n\tsetDisabledState(disabled: boolean) {\r\n\t\tthis.disabled = disabled;\r\n\t\tthis._changeDetectorRef.markForCheck();\r\n\t}\r\n\tprotected isEmpty() {\r\n\t\tconst isEmptyArray = Array.isArray(this.value) && this.value.length === 0;\r\n\t\treturn this.value === null || this.value === undefined || isEmptyArray;\r\n\t}\r\n\tprotected applyClasses() {\r\n\t\tif (this.isEmpty()) {\r\n\t\t\tthis._renderer.removeClass(this._elementRef.nativeElement, 'is-filled');\r\n\t\t} else {\r\n\t\t\tthis._renderer.addClass(this._elementRef.nativeElement, 'is-filled');\r\n\t\t}\r\n\t}\r\n\t/**\r\n\t * popover trigger class extension\r\n\t */\r\n\tprotected set _picker(picker: TPicker) {\r\n\t\tthis.panel = picker;\r\n\t\tpicker.multiple = this._multiple;\r\n\t\tthis.subToPickerEvts();\r\n\t}\r\n\tprotected get _picker() {\r\n\t\treturn this.panel;\r\n\t}\r\n\tprotected set _clearer(clearer: ILuClearer<T>) {\r\n\t\tif (!!clearer && !!clearer.onClear) {\r\n\t\t\tthis._subs.add(clearer.onClear.subscribe(() => this.setValue(this._multiple ? [] : undefined)));\r\n\t\t}\r\n\t}\r\n\tprotected subToPickerEvts() {\r\n\t\tif (this.panel) {\r\n\t\t\tthis._subs.add(this.panel.onSelectValue.subscribe((value) => this.setValue(value)));\r\n\t\t}\r\n\t}\r\n\r\n\toverride closePopover() {\r\n\t\tthis._onTouched();\r\n\t\tsuper.closePopover();\r\n\t}\r\n\r\n\tonDestroy() {\r\n\t\tif (this._popoverOpen) {\r\n\t\t\tthis.closePopover();\r\n\t\t}\r\n\t\tthis.destroyPopover();\r\n\t\tthis._subs.unsubscribe();\r\n\t\tthis._cleanUpSubscriptions();\r\n\t}\r\n\r\n\tprotected override _getOverlayConfig(): OverlayConfig {\r\n\t\tconst config = super._getOverlayConfig();\r\n\t\tconst clientRect = this._elementRef.nativeElement.getBoundingClientRect();\r\n\t\tconfig.minWidth = `${Math.max(185, clientRect.width)}px`; // might become min/maxWidth\r\n\t\treturn config;\r\n\t}\r\n\r\n\t/* Rendering via a inpt displayer */\r\n\tprotected _displayer: ILuInputDisplayer<T>;\r\n\tprotected _displayContainer: ViewContainerRef;\r\n\tprotected set displayer(d: ILuInputDisplayer<T>) {\r\n\t\tthis._displayer = d;\r\n\t\tthis.render();\r\n\t}\r\n\tprotected set displayContainer(vcr: ViewContainerRef) {\r\n\t\tthis._displayContainer = vcr;\r\n\t}\r\n\tprotected render() {\r\n\t\tif (!this._displayer || !this._isContentInitialized) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tif (this.useMultipleViews()) {\r\n\t\t\tthis.renderMultipleViews();\r\n\t\t} else {\r\n\t\t\tthis.renderSingleView();\r\n\t\t}\r\n\t}\r\n\tprotected useMultipleViews() {\r\n\t\treturn this._multiple && !!this._displayer && !this._displayer.multiple;\r\n\t}\r\n\r\n\tprotected renderSingleView() {\r\n\t\tthis.clearDisplay();\r\n\t\tif (this.value !== null && this.value !== undefined) {\r\n\t\t\tconst newView = this.getView(this.value);\r\n\t\t\tthis.displayView(newView);\r\n\t\t}\r\n\t}\r\n\tprotected clearDisplay() {\r\n\t\tthis._displayContainer.clear();\r\n\t}\r\n\tprotected getView(value: T | T[]) {\r\n\t\tif (this._displayer) {\r\n\t\t\treturn this._displayer.getViewRef(value);\r\n\t\t}\r\n\t\treturn undefined;\r\n\t}\r\n\tprotected displayView(view: ViewRef) {\r\n\t\tif (view) {\r\n\t\t\tthis._displayContainer.insert(view);\r\n\t\t}\r\n\t}\r\n\r\n\tprotected renderMultipleViews() {\r\n\t\tthis.clearDisplay();\r\n\t\tconst values = <T[]>this.value || [];\r\n\t\tconst views = values.map((value) => this.getView(value));\r\n\t\tviews.forEach((view) => this.displayView(view));\r\n\t}\r\n\t// multiple\r\n\tprotected _multiple = false;\r\n\tset multiple(m: boolean) {\r\n\t\tthis._multiple = m;\r\n\t\tif (this._picker) {\r\n\t\t\tthis._picker.multiple = m;\r\n\t\t}\r\n\t}\r\n\tget multiple() {\r\n\t\treturn this._multiple;\r\n\t}\r\n}\r\n","/* eslint-disable @angular-eslint/no-output-on-prefix */\r\nimport { Overlay } from '@angular/cdk/overlay';\r\nimport {\r\n\tAfterViewInit,\r\n\tChangeDetectionStrategy,\r\n\tChangeDetectorRef,\r\n\tComponent,\r\n\tContentChild,\r\n\tDirective,\r\n\tElementRef,\r\n\tEventEmitter,\r\n\tforwardRef,\r\n\tHostBinding,\r\n\tHostListener,\r\n\tInput,\r\n\tOnDestroy,\r\n\tOutput,\r\n\tRenderer2,\r\n\tViewChild,\r\n\tViewContainerRef,\r\n} from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { ALuClearer, ALuInputDisplayer, ILuClearer, ILuInputDisplayer } from '@lucca-front/ng/input';\r\nimport { ALuPickerPanel, ILuPickerPanel } from '@lucca-front/ng/picker';\r\nimport { ALuSelectInput } from './select-input.model';\r\n\r\n@Directive()\r\nexport abstract class ALuSelectInputComponent<T, TPicker extends ILuPickerPanel<T> = ILuPickerPanel<T>> extends ALuSelectInput<T, TPicker> implements ControlValueAccessor, AfterViewInit, OnDestroy {\r\n\t@ViewChild('display', { read: ViewContainerRef, static: true })\r\n\tprotected set _vcDisplayContainer(vcr: ViewContainerRef) {\r\n\t\tthis.displayContainer = vcr;\r\n\t}\r\n\r\n\t@HostBinding('tabindex') tabindex = 0;\r\n\r\n\t@Input('pickerOverlap') set overlapInput(o: boolean) {\r\n\t\tthis.target.overlap = o;\r\n\t}\r\n\r\n\t@Input('placeholder') set inputPlaceholder(p: string) {\r\n\t\tthis._placeholder = p;\r\n\t}\r\n\t@Input('multiple') set inputMultiple(m: boolean | string) {\r\n\t\tif (m === '') {\r\n\t\t\t// allows to have multiple = true when writing\r\n\t\t\t// <lu-select multiple>\r\n\t\t\tthis.multiple = true;\r\n\t\t} else {\r\n\t\t\tthis.multiple = !!m;\r\n\t\t}\r\n\t}\r\n\t/** Event emitted when the associated popover is opened. */\r\n\t@Output() onOpen = new EventEmitter<void>();\r\n\t/** Event emitted when the associated popover is closed. */\r\n\t@Output() onClose = new EventEmitter<void>();\r\n\r\n\tconstructor(\r\n\t\tprotected override _changeDetectorRef: ChangeDetectorRef,\r\n\t\tprotected override _overlay: Overlay,\r\n\t\tprotected override _elementRef: ElementRef<HTMLElement>,\r\n\t\tprotected override _viewContainerRef: ViewContainerRef,\r\n\t\tprotected override _renderer: Renderer2,\r\n\t) {\r\n\t\tsuper(_changeDetectorRef, _overlay, _elementRef, _viewContainerRef, _renderer);\r\n\t}\r\n\t@HostBinding('class.is-disabled')\r\n\tget isDisabled() {\r\n\t\treturn this.disabled;\r\n\t}\r\n\t@Input('disabled') set inputDisabled(d: boolean) {\r\n\t\tthis._disabled = d;\r\n\t}\r\n\t@HostBinding('class.is-focused')\r\n\tget isFocused() {\r\n\t\treturn this._popoverOpen && !this.target.overlap;\r\n\t}\r\n\t@HostBinding('class.mod-multiple')\r\n\tget modMultiple() {\r\n\t\treturn this._multiple;\r\n\t}\r\n\r\n\t@HostBinding('class.is-clearable')\r\n\tget isClearable() {\r\n\t\treturn !!this._clearer;\r\n\t}\r\n\t/**\r\n\t * popover trigger class extension\r\n\t */\r\n\t@ContentChild(ALuPickerPanel, { static: true }) ccPicker: TPicker;\r\n\t@ViewChild(ALuPickerPanel, { static: true }) vcPicker: TPicker;\r\n\r\n\t@ContentChild(ALuInputDisplayer, { static: true })\r\n\tccDisplayer: ILuInputDisplayer<T>;\r\n\t@ViewChild(ALuInputDisplayer, { static: true })\r\n\tvcDisplayer: ILuInputDisplayer<T>;\r\n\r\n\t@ContentChild(ALuClearer, { static: true }) ccClearer: ILuClearer<T>;\r\n\t@ViewChild(ALuClearer, { static: true }) vcClearer: ILuClearer<T>;\r\n\r\n\t@HostListener('click')\r\n\toverride onClick() {\r\n\t\tsuper.onClick();\r\n\t}\r\n\t@HostListener('mouseenter')\r\n\toverride onMouseEnter() {\r\n\t\tsuper.onMouseEnter();\r\n\t}\r\n\t@HostListener('mouseleave')\r\n\toverride onMouseLeave() {\r\n\t\tsuper.onMouseLeave();\r\n\t}\r\n\t@HostListener('focus')\r\n\toverride onFocus() {\r\n\t\tsuper.onFocus();\r\n\t}\r\n\t@HostListener('blur')\r\n\toverride onBlur() {\r\n\t\tsuper.onBlur();\r\n\t}\r\n\t@HostListener('keydown.space', ['$event'])\r\n\t@HostListener('keydown.enter', ['$event'])\r\n\tonKeydown($event: KeyboardEvent) {\r\n\t\tif (!this._popoverOpen) {\r\n\t\t\tthis.openPopover();\r\n\t\t\t$event.stopPropagation();\r\n\t\t\t$event.preventDefault();\r\n\t\t}\r\n\t}\r\n\r\n\tngAfterViewInit() {\r\n\t\tthis._isContentInitialized = true;\r\n\r\n\t\t// init picker and displayer and clearer\r\n\t\tconst picker = this.ccPicker || this.vcPicker;\r\n\t\tif (picker) {\r\n\t\t\tthis._picker = picker;\r\n\t\t}\r\n\t\tconst displayer = this.ccDisplayer || this.vcDisplayer;\r\n\t\tif (displayer) {\r\n\t\t\tthis._displayer = displayer;\r\n\t\t}\r\n\t\tconst clearer = this.ccClearer || this.vcClearer;\r\n\t\tif (clearer) {\r\n\t\t\tthis._clearer = clearer;\r\n\t\t}\r\n\r\n\t\tthis.render();\r\n\t\tthis._picker.setValue(this.value);\r\n\r\n\t\t// strange bug where the view renderred in the displayer was only injected after a hover\r\n\t\t// no matter how many cdr.markforchack i added\r\n\t\t// but with a timeout it works\r\n\t\t// shrug emoji\r\n\t\tsetTimeout(() => {\r\n\t\t\tthis._changeDetectorRef.markForCheck();\r\n\t\t}, 1);\r\n\t}\r\n\r\n\tngOnDestroy() {\r\n\t\tif (this._popoverOpen) {\r\n\t\t\tthis.closePopover();\r\n\t\t}\r\n\t\tthis.destroyPopover();\r\n\t\tthis.onDestroy();\r\n\t}\r\n\tprotected _emitOpen(): void {\r\n\t\tthis.onOpen.emit();\r\n\t}\r\n\tprotected _emitClose(): void {\r\n\t\tthis.onClose.emit();\r\n\t}\r\n}\r\n\r\n/**\r\n * select input\r\n */\r\n@Component({\r\n\tselector: 'lu-select',\r\n\ttemplateUrl: './select-input.component.html',\r\n\tstyleUrls: ['./select-input.component.scss'],\r\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\r\n\tstandalone: true,\r\n\tproviders: [\r\n\t\t{\r\n\t\t\tprovide: NG_VALUE_ACCESSOR,\r\n\t\t\tuseExisting: forwardRef(() => LuSelectInputComponent),\r\n\t\t\tmulti: true,\r\n\t\t},\r\n\t],\r\n})\r\nexport class LuSelectInputComponent<T> extends ALuSelectInputComponent<T> implements AfterViewInit {\r\n\t@HostBinding('class.mod-multipleView')\r\n\tget modMultipleView() {\r\n\t\treturn this.useMultipleViews();\r\n\t}\r\n\tconstructor(\r\n\t\tprotected override _changeDetectorRef: ChangeDetectorRef,\r\n\t\tprotected override _overlay: Overlay,\r\n\t\tprotected override _elementRef: ElementRef<HTMLElement>,\r\n\t\tprotected override _viewContainerRef: ViewContainerRef,\r\n\t\tprotected override _renderer: Renderer2,\r\n\t) {\r\n\t\tsuper(_changeDetectorRef, _overlay, _elementRef, _viewContainerRef, _renderer);\r\n\t}\r\n\t// display clearer\r\n\t@ContentChild(ALuClearer, { read: ElementRef, static: false })\r\n\tclearerEltRef: ElementRef<HTMLElement>;\r\n\t@ViewChild('suffix', { read: ElementRef, static: true })\r\n\tsuffixEltRef: ElementRef<HTMLElement>;\r\n\tdisplayClearer() {\r\n\t\tif (this.clearerEltRef) {\r\n\t\t\tthis._renderer.appendChild(this.suffixEltRef.nativeElement, this.clearerEltRef.nativeElement);\r\n\t\t}\r\n\t}\r\n\r\n\toverride ngAfterViewInit() {\r\n\t\tsuper.ngAfterViewInit();\r\n\t\tthis.displayClearer(); // dont keep\r\n\t}\r\n}\r\n","<div class=\"lu-select-placeholder\">{{ placeholder }}</div>\r\n<div class=\"lu-select-value\">\r\n\t<div class=\"lu-select-display-wrapper\">\r\n\t\t<ng-container #display></ng-container>\r\n\t</div>\r\n</div>\r\n<div #suffix class=\"lu-select-suffix\"></div>\r\n","import { NgModule } from '@angular/core';\r\nimport { LuSelectInputComponent } from './select-input.component';\r\n\r\n@NgModule({\r\n\timports: [LuSelectInputComponent],\r\n\texports: [LuSelectInputComponent],\r\n})\r\nexport class LuSelectInputModule {}\r\n","import { NgModule } from '@angular/core';\r\nimport { LuSelectInputModule } from './input/index';\r\n\r\n@NgModule({\r\n\timports: [LuSelectInputModule],\r\n\texports: [LuSelectInputModule],\r\n})\r\nexport class LuSelectModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -670,7 +670,7 @@ class LuSimpleSelectInputComponent {
670
670
  provideLuSelectOverlayContainer(),
671
671
  provideLuSelectLabelsAndIds(),
672
672
  LuSimpleSelectPanelRefFactory,
673
- ], ngImport: i0, template: "<div class=\"lu-select-placeholder\">{{ placeholder }}</div>\r\n<div class=\"lu-select-value\">\r\n\t<div class=\"lu-select-display-wrapper\">\r\n\t\t<ng-container *luOptionOutlet=\"valueTpl || optionTpl; value: value\"></ng-container>\r\n\t</div>\r\n</div>\r\n<a *ngIf=\"clearable && isFilled\" class=\"clear lu-select-clearer\" role=\"button\" (click)=\"clearValue($event)\">\r\n\t<span aria-hidden=\"true\" class=\"lucca-icon icon-signClose\"></span>\r\n\t<span class=\"u-mask\">{{ intl.clear }}</span>\r\n</a>\r\n", styles: [":root{--components-options-item-padding-vertical: var(--spacings-XS);--components-options-item-padding-horizontal: var(--spacings-XS);--components-options-item-multiple-padding: 2.25rem;--components-options-item-icon-color: var(--palettes-grey-800);--components-options-checkbox-left: .5rem;--components-options-checkbox-size: 1.25rem;--components-options-checkbox-color: var(--palettes-primary-700);--components-options-checkbox-border-radius: 6px;--components-options-checkbox-border-color: var(--palettes-grey-700);--components-options-establishment-multiple-padding: 2rem}:host{--components-select-chip-background: var(--palettes-primary-700);--components-select-chip-text: var(--colors-white-color);--components-select-input-padding-horizontal: var(--spacings-XS);--components-select-input-padding-vertical: var(--spacings-XS);--components-select-framed-color: var(--palettes-grey-500);--components-select-framed-color50: var(--palettes-grey-50);--components-select-framed-see-through: var(--palettes-grey-50);--components-select-framed-text: var(--palettes-grey-800);--components-select-framed-placeholder: #cccccc;--components-select-framed-side-padding: var(--spacings-S);--components-select-framed-top-padding: var(--spacings-L);--components-select-framed-bottom-padding: var(--spacings-S);--components-select-framed-label-top-offset: var(--spacings-XS);cursor:pointer;outline:none;padding:0;gap:0!important}:host:after{display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:Lucca icons;color:var(--palettes-grey-600);bottom:var(--components-select-input-padding-vertical);font-size:var(--sizes-M-lineHeight);line-height:var(--sizes-M-lineHeight);pointer-events:none;position:absolute;right:var(--components-select-input-padding-horizontal)}@supports (content: \"*\"/\"\"){:host:after{content:\"\\e9b5\"/\"\"}}@supports not (content: \"*\"/\"\"){:host:after{content:\"\\e9b5\"}}:host[disabled]{cursor:not-allowed;pointer-events:all}:host.is-disabled{cursor:not-allowed;pointer-events:all}.lu-select-display-wrapper{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lu-select-value{line-height:var(--sizes-M-lineHeight);min-height:calc(var(--components-select-framed-bottom-padding) + var(--sizes-M-lineHeight));padding:var(--components-select-input-padding-vertical) 3.5rem var(--components-select-input-padding-vertical) var(--components-select-input-padding-horizontal);transition:all var(--commons-animations-durations-standard);display:none}.lu-select-placeholder{color:var(--palettes-grey-400);line-height:var(--sizes-M-lineHeight);min-height:calc(var(--components-select-framed-bottom-padding) + var(--sizes-M-lineHeight));padding:var(--components-select-input-padding-vertical) 3.5rem var(--components-select-input-padding-vertical) var(--components-select-input-padding-horizontal);transition:all var(--commons-animations-durations-standard);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lu-select-suffix,.lu-select-clearer{position:absolute;bottom:.75rem;right:2.25rem}::ng-deep .lu-select-value .label{padding:var(--spacings-XXS) var(--spacings-XS);margin-left:0}::ng-deep .lu-select-value .chip{background-color:var(--components-select-chip-background);color:var(--components-select-chip-text);vertical-align:baseline;max-width:100%;height:var(--sizes-M-lineHeight);line-height:var(--sizes-M-lineHeight);padding:0 var(--spacings-XS);margin:0 var(--spacings-XXS) var(--spacings-XXS) 0;text-overflow:ellipsis;overflow:hidden;vertical-align:top;white-space:nowrap}:host-context(.textfield.mod-S) .lu-select-value,:host-context(.textfield.mod-S) .lu-select-placeholder{font-size:var(--sizes-S-fontSize);line-height:var(--sizes-XS-lineHeight);min-height:calc(var(--components-select-framed-bottom-padding) + var(--sizes-XS-lineHeight))}:host-context(.textfield.mod-S):after{line-height:var(--sizes-XS-lineHeight);font-size:var(--sizes-S-lineHeight)}:host-context(.textfield.mod-S) .lu-select-suffix{bottom:.5rem;right:2rem}:host-context(.textfield.mod-S) ::ng-deep .lu-select-value .label{font-size:var(--sizes-S-fontSize);line-height:var(--sizes-S-lineHeight);font-weight:600;margin:0;padding:0;background-color:transparent}:host-context(.textfield.mod-S) ::ng-deep .lu-select-value .chip{height:var(--sizes-XS-lineHeight);line-height:var(--sizes-XS-lineHeight);font-size:var(--sizes-XS-fontSize)}:host-context(.textfield.mod-S) ::ng-deep .lu-select-value .numericBadge{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: 6px;--components-numericBadge-fontSize: var(--sizes-XS-fontSize);--components-numericBadge-lineHeight: var(--sizes-XS-lineHeight)}:host-context(.textfield.mod-framed).textfield-input,:host-context(.form.mod-framed).textfield-input{padding:var(--components-select-framed-top-padding) 0 0}:host-context(.textfield.mod-framed).textfield-input:after,:host-context(.form.mod-framed).textfield-input:after{color:var(--palettes-grey-500);bottom:var(--components-select-framed-bottom-padding);right:var(--spacings-XS)}:host-context(.textfield.mod-framed).textfield-input .lu-select-value,:host-context(.form.mod-framed).textfield-input .lu-select-value{padding:0 calc(var(--components-select-framed-side-padding) * 3) var(--components-select-framed-bottom-padding) var(--components-select-framed-side-padding)}:host-context(.textfield.mod-framed).textfield-input .lu-select-placeholder,:host-context(.form.mod-framed).textfield-input .lu-select-placeholder{color:var(--palettes-grey-400);padding:0 calc(var(--components-select-framed-side-padding) * 3) var(--components-select-framed-bottom-padding) var(--components-select-framed-side-padding)}:host-context(.textfield.mod-framed).textfield-input .lu-select-suffix,:host-context(.form.mod-framed).textfield-input .lu-select-suffix{bottom:var(--components-select-framed-bottom-padding);right:1.7rem}:host-context(.textfield.mod-filter) .lu-select-value,:host-context(.textfield.mod-filter) .lu-select-placeholder{padding:0;height:auto;padding-top:var(--spacings-S);color:var(--palettes-grey-800)}:host-context(.textfield.mod-material):after{color:var(--palettes-grey-500);bottom:.6rem;right:0}:host-context(.textfield.mod-material) .lu-select-value,:host-context(.textfield.mod-material) .lu-select-placeholder{padding-left:0;padding-right:.8rem}:host-context(.textfield.mod-material) .lu-select-suffix{right: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{bottom:0}:host-context(.textfield.mod-material).mod-search .lu-select-suffix{right: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{height:auto;align-items:center}:host(.mod-multiple) .lu-select-display-wrapper{overflow:hidden;white-space:normal;margin-bottom:calc(var(--spacings-XXS) * -1)}:host-context(.textfield.mod-outlined).textfield-input:after{color:var(--palettes-grey-600)}:host-context(.textfield.mod-outlined).textfield-input .lu-select-placeholder{color:var(--palettes-grey-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-input.is-clearable) .lu-select-value{padding-right:3.5rem}:host-context(.textfield-input.is-error):after{color:var(--palettes-error-700)}:host-context(.textfield-input.is-error) .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)}:host{display:none}:host-context(.textfield-input.is-filled){display:block}:host-context(.textfield-input.is-disabled,.textfield-input[disabled]){display:none}:host.is-disabled{display:inline-block!important}\n"], dependencies: [{ kind: "directive", type: LuOptionOutletDirective, selector: "[luOptionOutlet]", inputs: ["luOptionOutlet", "luOptionOutletValue"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: OverlayModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
673
+ ], ngImport: i0, template: "<div class=\"lu-select-placeholder\">{{ placeholder }}</div>\r\n<div class=\"lu-select-value\">\r\n\t<div class=\"lu-select-display-wrapper\">\r\n\t\t<ng-container *luOptionOutlet=\"valueTpl || optionTpl; value: value\"></ng-container>\r\n\t</div>\r\n</div>\r\n<a *ngIf=\"clearable && isFilled\" class=\"clear lu-select-clearer\" role=\"button\" (click)=\"clearValue($event)\">\r\n\t<span aria-hidden=\"true\" class=\"lucca-icon icon-signClose\"></span>\r\n\t<span class=\"u-mask\">{{ intl.clear }}</span>\r\n</a>\r\n", styles: [":root{--components-options-item-padding-vertical: var(--spacings-XS);--components-options-item-padding-horizontal: var(--spacings-XS);--components-options-item-multiple-padding: 2.25rem;--components-options-item-icon-color: var(--palettes-grey-800);--components-options-checkbox-left: .5rem;--components-options-checkbox-size: 1.25rem;--components-options-checkbox-color: var(--palettes-primary-700);--components-options-checkbox-border-radius: 6px;--components-options-checkbox-border-color: var(--palettes-grey-700);--components-options-establishment-multiple-padding: 2rem}:host{--components-select-chip-background: var(--palettes-primary-700);--components-select-chip-text: var(--colors-white-color);--components-select-input-padding-horizontal: var(--spacings-XS);--components-select-input-padding-vertical: var(--spacings-XS);--components-select-framed-color: var(--palettes-grey-500);--components-select-framed-color50: var(--palettes-grey-50);--components-select-framed-see-through: var(--palettes-grey-50);--components-select-framed-text: var(--palettes-grey-800);--components-select-framed-placeholder: #cccccc;--components-select-framed-side-padding: var(--spacings-S);--components-select-framed-top-padding: var(--spacings-L);--components-select-framed-bottom-padding: var(--spacings-S);--components-select-framed-label-top-offset: var(--spacings-XS);cursor:pointer;outline:none;padding:0!important;gap:0!important}:host:after{display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:Lucca icons;color:var(--palettes-grey-600);bottom:var(--components-select-input-padding-vertical);font-size:var(--sizes-M-lineHeight);line-height:var(--sizes-M-lineHeight);pointer-events:none;position:absolute;right:var(--components-select-input-padding-horizontal)}@supports (content: \"*\"/\"\"){:host:after{content:\"\\e97c\"/\"\"}}@supports not (content: \"*\"/\"\"){:host:after{content:\"\\e97c\"}}:host[disabled]{cursor:not-allowed;pointer-events:all}:host.is-disabled{cursor:not-allowed;pointer-events:all}.lu-select-display-wrapper{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lu-select-value{line-height:var(--sizes-M-lineHeight);min-height:calc(var(--components-select-framed-bottom-padding) + var(--sizes-M-lineHeight));padding:var(--components-select-input-padding-vertical) 3.5rem var(--components-select-input-padding-vertical) var(--components-select-input-padding-horizontal);transition:all var(--commons-animations-durations-standard);display:none}.lu-select-placeholder{color:var(--palettes-grey-400);line-height:var(--sizes-M-lineHeight);min-height:calc(var(--components-select-framed-bottom-padding) + var(--sizes-M-lineHeight));padding:var(--components-select-input-padding-vertical) 3.5rem var(--components-select-input-padding-vertical) var(--components-select-input-padding-horizontal);transition:all var(--commons-animations-durations-standard);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lu-select-suffix{position:absolute;bottom:.75rem;right:2.25rem}.lu-select-clearer{position:absolute;bottom:.5rem;right:2.25rem}::ng-deep .lu-select-value .label{padding:var(--spacings-XXS) var(--spacings-XS);margin-left:0}::ng-deep .lu-select-value .chip{background-color:var(--components-select-chip-background);color:var(--components-select-chip-text);vertical-align:baseline;max-width:100%;height:var(--sizes-M-lineHeight);line-height:var(--sizes-M-lineHeight);padding:0 var(--spacings-XS);margin:0 var(--spacings-XXS) var(--spacings-XXS) 0;text-overflow:ellipsis;overflow:hidden;vertical-align:top;white-space:nowrap}:host-context(.textfield.mod-S) .lu-select-value,:host-context(.textfield.mod-S) .lu-select-placeholder{font-size:var(--sizes-S-fontSize);line-height:var(--sizes-XS-lineHeight);min-height:calc(var(--components-select-framed-bottom-padding) + var(--sizes-XS-lineHeight))}:host-context(.textfield.mod-S):after{line-height:var(--sizes-XS-lineHeight);font-size:var(--sizes-S-lineHeight)}:host-context(.textfield.mod-S) .lu-select-suffix{bottom:.5rem;right:2rem}:host-context(.textfield.mod-S) ::ng-deep .lu-select-value .label{font-size:var(--sizes-S-fontSize);line-height:var(--sizes-S-lineHeight);font-weight:600;margin:0;padding:0;background-color:transparent}:host-context(.textfield.mod-S) ::ng-deep .lu-select-value .chip{height:var(--sizes-XS-lineHeight);line-height:var(--sizes-XS-lineHeight);font-size:var(--sizes-XS-fontSize)}:host-context(.textfield.mod-S) ::ng-deep .lu-select-value .numericBadge{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: 6px;--components-numericBadge-fontSize: var(--sizes-XS-fontSize);--components-numericBadge-lineHeight: var(--sizes-XS-lineHeight)}:host-context(.textfield.mod-framed).textfield-input,:host-context(.form.mod-framed).textfield-input{padding:var(--components-select-framed-top-padding) 0 0}:host-context(.textfield.mod-framed).textfield-input:after,:host-context(.form.mod-framed).textfield-input:after{color:var(--palettes-grey-500);bottom:var(--components-select-framed-bottom-padding);right:var(--spacings-XS)}:host-context(.textfield.mod-framed).textfield-input .lu-select-value,:host-context(.form.mod-framed).textfield-input .lu-select-value{padding:0 calc(var(--components-select-framed-side-padding) * 3) var(--components-select-framed-bottom-padding) var(--components-select-framed-side-padding)}:host-context(.textfield.mod-framed).textfield-input .lu-select-placeholder,:host-context(.form.mod-framed).textfield-input .lu-select-placeholder{color:var(--palettes-grey-400);padding:0 calc(var(--components-select-framed-side-padding) * 3) var(--components-select-framed-bottom-padding) var(--components-select-framed-side-padding)}:host-context(.textfield.mod-framed).textfield-input .lu-select-suffix,:host-context(.form.mod-framed).textfield-input .lu-select-suffix{bottom:var(--components-select-framed-bottom-padding);right:1.7rem}:host-context(.textfield.mod-filter) .lu-select-value,:host-context(.textfield.mod-filter) .lu-select-placeholder{padding:0;height:auto;padding-top:var(--spacings-S);color:var(--palettes-grey-800)}:host-context(.textfield.mod-material):after{color:var(--palettes-grey-500);bottom:.6rem;right:0}:host-context(.textfield.mod-material) .lu-select-value,:host-context(.textfield.mod-material) .lu-select-placeholder{padding-left:0;padding-right:.8rem}:host-context(.textfield.mod-material) .lu-select-suffix{right: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{bottom:0}:host-context(.textfield.mod-material).mod-search .lu-select-suffix{right: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{height:auto;align-items:center}:host(.mod-multiple) .lu-select-display-wrapper{overflow:hidden;white-space:normal;margin-bottom:calc(var(--spacings-XXS) * -1)}:host-context(.textfield.mod-outlined).textfield-input:after{color:var(--palettes-grey-600)}:host-context(.textfield.mod-outlined).textfield-input .lu-select-placeholder{color:var(--palettes-grey-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-input.is-clearable) .lu-select-value{padding-right:3.5rem}:host-context(.textfield-input.is-error):after{color:var(--palettes-error-700)}:host-context(.textfield-input.is-error) .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)}:host{display:none}:host-context(.textfield-input.is-filled){display:block}:host-context(.textfield-input.is-disabled,.textfield-input[disabled]){display:none}.lu-select-value{padding-right:2rem}:host.is-disabled{display:inline-block!important}\n"], dependencies: [{ kind: "directive", type: LuOptionOutletDirective, selector: "[luOptionOutlet]", inputs: ["luOptionOutlet", "luOptionOutletValue"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: OverlayModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
674
674
  }
675
675
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: LuSimpleSelectInputComponent, decorators: [{
676
676
  type: Component,
@@ -683,7 +683,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImpor
683
683
  provideLuSelectOverlayContainer(),
684
684
  provideLuSelectLabelsAndIds(),
685
685
  LuSimpleSelectPanelRefFactory,
686
- ], template: "<div class=\"lu-select-placeholder\">{{ placeholder }}</div>\r\n<div class=\"lu-select-value\">\r\n\t<div class=\"lu-select-display-wrapper\">\r\n\t\t<ng-container *luOptionOutlet=\"valueTpl || optionTpl; value: value\"></ng-container>\r\n\t</div>\r\n</div>\r\n<a *ngIf=\"clearable && isFilled\" class=\"clear lu-select-clearer\" role=\"button\" (click)=\"clearValue($event)\">\r\n\t<span aria-hidden=\"true\" class=\"lucca-icon icon-signClose\"></span>\r\n\t<span class=\"u-mask\">{{ intl.clear }}</span>\r\n</a>\r\n", styles: [":root{--components-options-item-padding-vertical: var(--spacings-XS);--components-options-item-padding-horizontal: var(--spacings-XS);--components-options-item-multiple-padding: 2.25rem;--components-options-item-icon-color: var(--palettes-grey-800);--components-options-checkbox-left: .5rem;--components-options-checkbox-size: 1.25rem;--components-options-checkbox-color: var(--palettes-primary-700);--components-options-checkbox-border-radius: 6px;--components-options-checkbox-border-color: var(--palettes-grey-700);--components-options-establishment-multiple-padding: 2rem}:host{--components-select-chip-background: var(--palettes-primary-700);--components-select-chip-text: var(--colors-white-color);--components-select-input-padding-horizontal: var(--spacings-XS);--components-select-input-padding-vertical: var(--spacings-XS);--components-select-framed-color: var(--palettes-grey-500);--components-select-framed-color50: var(--palettes-grey-50);--components-select-framed-see-through: var(--palettes-grey-50);--components-select-framed-text: var(--palettes-grey-800);--components-select-framed-placeholder: #cccccc;--components-select-framed-side-padding: var(--spacings-S);--components-select-framed-top-padding: var(--spacings-L);--components-select-framed-bottom-padding: var(--spacings-S);--components-select-framed-label-top-offset: var(--spacings-XS);cursor:pointer;outline:none;padding:0;gap:0!important}:host:after{display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:Lucca icons;color:var(--palettes-grey-600);bottom:var(--components-select-input-padding-vertical);font-size:var(--sizes-M-lineHeight);line-height:var(--sizes-M-lineHeight);pointer-events:none;position:absolute;right:var(--components-select-input-padding-horizontal)}@supports (content: \"*\"/\"\"){:host:after{content:\"\\e9b5\"/\"\"}}@supports not (content: \"*\"/\"\"){:host:after{content:\"\\e9b5\"}}:host[disabled]{cursor:not-allowed;pointer-events:all}:host.is-disabled{cursor:not-allowed;pointer-events:all}.lu-select-display-wrapper{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lu-select-value{line-height:var(--sizes-M-lineHeight);min-height:calc(var(--components-select-framed-bottom-padding) + var(--sizes-M-lineHeight));padding:var(--components-select-input-padding-vertical) 3.5rem var(--components-select-input-padding-vertical) var(--components-select-input-padding-horizontal);transition:all var(--commons-animations-durations-standard);display:none}.lu-select-placeholder{color:var(--palettes-grey-400);line-height:var(--sizes-M-lineHeight);min-height:calc(var(--components-select-framed-bottom-padding) + var(--sizes-M-lineHeight));padding:var(--components-select-input-padding-vertical) 3.5rem var(--components-select-input-padding-vertical) var(--components-select-input-padding-horizontal);transition:all var(--commons-animations-durations-standard);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lu-select-suffix,.lu-select-clearer{position:absolute;bottom:.75rem;right:2.25rem}::ng-deep .lu-select-value .label{padding:var(--spacings-XXS) var(--spacings-XS);margin-left:0}::ng-deep .lu-select-value .chip{background-color:var(--components-select-chip-background);color:var(--components-select-chip-text);vertical-align:baseline;max-width:100%;height:var(--sizes-M-lineHeight);line-height:var(--sizes-M-lineHeight);padding:0 var(--spacings-XS);margin:0 var(--spacings-XXS) var(--spacings-XXS) 0;text-overflow:ellipsis;overflow:hidden;vertical-align:top;white-space:nowrap}:host-context(.textfield.mod-S) .lu-select-value,:host-context(.textfield.mod-S) .lu-select-placeholder{font-size:var(--sizes-S-fontSize);line-height:var(--sizes-XS-lineHeight);min-height:calc(var(--components-select-framed-bottom-padding) + var(--sizes-XS-lineHeight))}:host-context(.textfield.mod-S):after{line-height:var(--sizes-XS-lineHeight);font-size:var(--sizes-S-lineHeight)}:host-context(.textfield.mod-S) .lu-select-suffix{bottom:.5rem;right:2rem}:host-context(.textfield.mod-S) ::ng-deep .lu-select-value .label{font-size:var(--sizes-S-fontSize);line-height:var(--sizes-S-lineHeight);font-weight:600;margin:0;padding:0;background-color:transparent}:host-context(.textfield.mod-S) ::ng-deep .lu-select-value .chip{height:var(--sizes-XS-lineHeight);line-height:var(--sizes-XS-lineHeight);font-size:var(--sizes-XS-fontSize)}:host-context(.textfield.mod-S) ::ng-deep .lu-select-value .numericBadge{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: 6px;--components-numericBadge-fontSize: var(--sizes-XS-fontSize);--components-numericBadge-lineHeight: var(--sizes-XS-lineHeight)}:host-context(.textfield.mod-framed).textfield-input,:host-context(.form.mod-framed).textfield-input{padding:var(--components-select-framed-top-padding) 0 0}:host-context(.textfield.mod-framed).textfield-input:after,:host-context(.form.mod-framed).textfield-input:after{color:var(--palettes-grey-500);bottom:var(--components-select-framed-bottom-padding);right:var(--spacings-XS)}:host-context(.textfield.mod-framed).textfield-input .lu-select-value,:host-context(.form.mod-framed).textfield-input .lu-select-value{padding:0 calc(var(--components-select-framed-side-padding) * 3) var(--components-select-framed-bottom-padding) var(--components-select-framed-side-padding)}:host-context(.textfield.mod-framed).textfield-input .lu-select-placeholder,:host-context(.form.mod-framed).textfield-input .lu-select-placeholder{color:var(--palettes-grey-400);padding:0 calc(var(--components-select-framed-side-padding) * 3) var(--components-select-framed-bottom-padding) var(--components-select-framed-side-padding)}:host-context(.textfield.mod-framed).textfield-input .lu-select-suffix,:host-context(.form.mod-framed).textfield-input .lu-select-suffix{bottom:var(--components-select-framed-bottom-padding);right:1.7rem}:host-context(.textfield.mod-filter) .lu-select-value,:host-context(.textfield.mod-filter) .lu-select-placeholder{padding:0;height:auto;padding-top:var(--spacings-S);color:var(--palettes-grey-800)}:host-context(.textfield.mod-material):after{color:var(--palettes-grey-500);bottom:.6rem;right:0}:host-context(.textfield.mod-material) .lu-select-value,:host-context(.textfield.mod-material) .lu-select-placeholder{padding-left:0;padding-right:.8rem}:host-context(.textfield.mod-material) .lu-select-suffix{right: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{bottom:0}:host-context(.textfield.mod-material).mod-search .lu-select-suffix{right: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{height:auto;align-items:center}:host(.mod-multiple) .lu-select-display-wrapper{overflow:hidden;white-space:normal;margin-bottom:calc(var(--spacings-XXS) * -1)}:host-context(.textfield.mod-outlined).textfield-input:after{color:var(--palettes-grey-600)}:host-context(.textfield.mod-outlined).textfield-input .lu-select-placeholder{color:var(--palettes-grey-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-input.is-clearable) .lu-select-value{padding-right:3.5rem}:host-context(.textfield-input.is-error):after{color:var(--palettes-error-700)}:host-context(.textfield-input.is-error) .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)}:host{display:none}:host-context(.textfield-input.is-filled){display:block}:host-context(.textfield-input.is-disabled,.textfield-input[disabled]){display:none}:host.is-disabled{display:inline-block!important}\n"] }]
686
+ ], template: "<div class=\"lu-select-placeholder\">{{ placeholder }}</div>\r\n<div class=\"lu-select-value\">\r\n\t<div class=\"lu-select-display-wrapper\">\r\n\t\t<ng-container *luOptionOutlet=\"valueTpl || optionTpl; value: value\"></ng-container>\r\n\t</div>\r\n</div>\r\n<a *ngIf=\"clearable && isFilled\" class=\"clear lu-select-clearer\" role=\"button\" (click)=\"clearValue($event)\">\r\n\t<span aria-hidden=\"true\" class=\"lucca-icon icon-signClose\"></span>\r\n\t<span class=\"u-mask\">{{ intl.clear }}</span>\r\n</a>\r\n", styles: [":root{--components-options-item-padding-vertical: var(--spacings-XS);--components-options-item-padding-horizontal: var(--spacings-XS);--components-options-item-multiple-padding: 2.25rem;--components-options-item-icon-color: var(--palettes-grey-800);--components-options-checkbox-left: .5rem;--components-options-checkbox-size: 1.25rem;--components-options-checkbox-color: var(--palettes-primary-700);--components-options-checkbox-border-radius: 6px;--components-options-checkbox-border-color: var(--palettes-grey-700);--components-options-establishment-multiple-padding: 2rem}:host{--components-select-chip-background: var(--palettes-primary-700);--components-select-chip-text: var(--colors-white-color);--components-select-input-padding-horizontal: var(--spacings-XS);--components-select-input-padding-vertical: var(--spacings-XS);--components-select-framed-color: var(--palettes-grey-500);--components-select-framed-color50: var(--palettes-grey-50);--components-select-framed-see-through: var(--palettes-grey-50);--components-select-framed-text: var(--palettes-grey-800);--components-select-framed-placeholder: #cccccc;--components-select-framed-side-padding: var(--spacings-S);--components-select-framed-top-padding: var(--spacings-L);--components-select-framed-bottom-padding: var(--spacings-S);--components-select-framed-label-top-offset: var(--spacings-XS);cursor:pointer;outline:none;padding:0!important;gap:0!important}:host:after{display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:Lucca icons;color:var(--palettes-grey-600);bottom:var(--components-select-input-padding-vertical);font-size:var(--sizes-M-lineHeight);line-height:var(--sizes-M-lineHeight);pointer-events:none;position:absolute;right:var(--components-select-input-padding-horizontal)}@supports (content: \"*\"/\"\"){:host:after{content:\"\\e97c\"/\"\"}}@supports not (content: \"*\"/\"\"){:host:after{content:\"\\e97c\"}}:host[disabled]{cursor:not-allowed;pointer-events:all}:host.is-disabled{cursor:not-allowed;pointer-events:all}.lu-select-display-wrapper{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lu-select-value{line-height:var(--sizes-M-lineHeight);min-height:calc(var(--components-select-framed-bottom-padding) + var(--sizes-M-lineHeight));padding:var(--components-select-input-padding-vertical) 3.5rem var(--components-select-input-padding-vertical) var(--components-select-input-padding-horizontal);transition:all var(--commons-animations-durations-standard);display:none}.lu-select-placeholder{color:var(--palettes-grey-400);line-height:var(--sizes-M-lineHeight);min-height:calc(var(--components-select-framed-bottom-padding) + var(--sizes-M-lineHeight));padding:var(--components-select-input-padding-vertical) 3.5rem var(--components-select-input-padding-vertical) var(--components-select-input-padding-horizontal);transition:all var(--commons-animations-durations-standard);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lu-select-suffix{position:absolute;bottom:.75rem;right:2.25rem}.lu-select-clearer{position:absolute;bottom:.5rem;right:2.25rem}::ng-deep .lu-select-value .label{padding:var(--spacings-XXS) var(--spacings-XS);margin-left:0}::ng-deep .lu-select-value .chip{background-color:var(--components-select-chip-background);color:var(--components-select-chip-text);vertical-align:baseline;max-width:100%;height:var(--sizes-M-lineHeight);line-height:var(--sizes-M-lineHeight);padding:0 var(--spacings-XS);margin:0 var(--spacings-XXS) var(--spacings-XXS) 0;text-overflow:ellipsis;overflow:hidden;vertical-align:top;white-space:nowrap}:host-context(.textfield.mod-S) .lu-select-value,:host-context(.textfield.mod-S) .lu-select-placeholder{font-size:var(--sizes-S-fontSize);line-height:var(--sizes-XS-lineHeight);min-height:calc(var(--components-select-framed-bottom-padding) + var(--sizes-XS-lineHeight))}:host-context(.textfield.mod-S):after{line-height:var(--sizes-XS-lineHeight);font-size:var(--sizes-S-lineHeight)}:host-context(.textfield.mod-S) .lu-select-suffix{bottom:.5rem;right:2rem}:host-context(.textfield.mod-S) ::ng-deep .lu-select-value .label{font-size:var(--sizes-S-fontSize);line-height:var(--sizes-S-lineHeight);font-weight:600;margin:0;padding:0;background-color:transparent}:host-context(.textfield.mod-S) ::ng-deep .lu-select-value .chip{height:var(--sizes-XS-lineHeight);line-height:var(--sizes-XS-lineHeight);font-size:var(--sizes-XS-fontSize)}:host-context(.textfield.mod-S) ::ng-deep .lu-select-value .numericBadge{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: 6px;--components-numericBadge-fontSize: var(--sizes-XS-fontSize);--components-numericBadge-lineHeight: var(--sizes-XS-lineHeight)}:host-context(.textfield.mod-framed).textfield-input,:host-context(.form.mod-framed).textfield-input{padding:var(--components-select-framed-top-padding) 0 0}:host-context(.textfield.mod-framed).textfield-input:after,:host-context(.form.mod-framed).textfield-input:after{color:var(--palettes-grey-500);bottom:var(--components-select-framed-bottom-padding);right:var(--spacings-XS)}:host-context(.textfield.mod-framed).textfield-input .lu-select-value,:host-context(.form.mod-framed).textfield-input .lu-select-value{padding:0 calc(var(--components-select-framed-side-padding) * 3) var(--components-select-framed-bottom-padding) var(--components-select-framed-side-padding)}:host-context(.textfield.mod-framed).textfield-input .lu-select-placeholder,:host-context(.form.mod-framed).textfield-input .lu-select-placeholder{color:var(--palettes-grey-400);padding:0 calc(var(--components-select-framed-side-padding) * 3) var(--components-select-framed-bottom-padding) var(--components-select-framed-side-padding)}:host-context(.textfield.mod-framed).textfield-input .lu-select-suffix,:host-context(.form.mod-framed).textfield-input .lu-select-suffix{bottom:var(--components-select-framed-bottom-padding);right:1.7rem}:host-context(.textfield.mod-filter) .lu-select-value,:host-context(.textfield.mod-filter) .lu-select-placeholder{padding:0;height:auto;padding-top:var(--spacings-S);color:var(--palettes-grey-800)}:host-context(.textfield.mod-material):after{color:var(--palettes-grey-500);bottom:.6rem;right:0}:host-context(.textfield.mod-material) .lu-select-value,:host-context(.textfield.mod-material) .lu-select-placeholder{padding-left:0;padding-right:.8rem}:host-context(.textfield.mod-material) .lu-select-suffix{right: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{bottom:0}:host-context(.textfield.mod-material).mod-search .lu-select-suffix{right: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{height:auto;align-items:center}:host(.mod-multiple) .lu-select-display-wrapper{overflow:hidden;white-space:normal;margin-bottom:calc(var(--spacings-XXS) * -1)}:host-context(.textfield.mod-outlined).textfield-input:after{color:var(--palettes-grey-600)}:host-context(.textfield.mod-outlined).textfield-input .lu-select-placeholder{color:var(--palettes-grey-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-input.is-clearable) .lu-select-value{padding-right:3.5rem}:host-context(.textfield-input.is-error):after{color:var(--palettes-error-700)}:host-context(.textfield-input.is-error) .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)}:host{display:none}:host-context(.textfield-input.is-filled){display:block}:host-context(.textfield-input.is-disabled,.textfield-input[disabled]){display:none}.lu-select-value{padding-right:2rem}:host.is-disabled{display:inline-block!important}\n"] }]
687
687
  }], propDecorators: { tabindex: [{
688
688
  type: HostBinding,
689
689
  args: ['tabindex']
@@ -1 +1 @@
1
- {"version":3,"file":"lucca-front-ng-simple-select.mjs","sources":["../../../packages/ng/simple-select/option/option.token.ts","../../../packages/ng/simple-select/option/default-option.component.ts","../../../packages/ng/simple-select/option/disabled.directive.ts","../../../packages/ng/simple-select/option/displayer.directive.ts","../../../packages/ng/simple-select/select.model.ts","../../../packages/ng/simple-select/option/option-outlet.directive.ts","../../../packages/ng/simple-select/option/option.component.ts","../../../packages/ng/simple-select/option/option.component.html","../../../packages/ng/simple-select/option/option.directive.ts","../../../packages/ng/simple-select/select.translate.ts","../../../packages/ng/simple-select/panel/panel.models.ts","../../../packages/ng/simple-select/panel/panel.component.ts","../../../packages/ng/simple-select/panel/panel.component.html","../../../packages/ng/simple-select/input/panel-ref.factory.ts","../../../packages/ng/simple-select/input/select-input.models.ts","../../../packages/ng/simple-select/input/select-input.component.ts","../../../packages/ng/simple-select/input/select-input.component.html","../../../packages/ng/simple-select/lucca-front-ng-simple-select.ts"],"sourcesContent":["import { InjectionToken, Provider } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\nexport interface ILuOptionContext<T> {\r\n\tisDisabled$: BehaviorSubject<boolean>;\r\n\toption$: BehaviorSubject<T | undefined>;\r\n\tdestroy(): void;\r\n}\r\n\r\nexport const LU_OPTION_CONTEXT = new InjectionToken<ILuOptionContext<unknown>>('LuOptionContext');\r\n\r\nfunction optionContextFactory<T>(): ILuOptionContext<T> {\r\n\tconst isDisabled$ = new BehaviorSubject(false);\r\n\tconst option$ = new BehaviorSubject<T | undefined>(undefined);\r\n\treturn {\r\n\t\tisDisabled$,\r\n\t\toption$,\r\n\t\tdestroy(): void {\r\n\t\t\tisDisabled$.complete();\r\n\t\t\toption$.complete();\r\n\t\t},\r\n\t};\r\n}\r\n\r\nexport function provideOptionContext(): Provider {\r\n\treturn {\r\n\t\tprovide: LU_OPTION_CONTEXT,\r\n\t\tuseFactory: optionContextFactory,\r\n\t};\r\n}\r\n","import { AsyncPipe, NgIf } from '@angular/common';\r\nimport { Component, inject } from '@angular/core';\r\nimport { ILuOptionContext, LU_OPTION_CONTEXT } from './option.token';\r\n\r\n@Component({\r\n\tselector: 'lu-simple-select-default-option',\r\n\tstandalone: true,\r\n\timports: [AsyncPipe, NgIf],\r\n\ttemplate: `<ng-container *ngIf=\"context.option$ | async as option\">{{ option?.name ?? option }}</ng-container>`,\r\n})\r\nexport class LuSimpleSelectDefaultOptionComponent {\r\n\tpublic context = inject<ILuOptionContext<{ name?: string }>>(LU_OPTION_CONTEXT);\r\n}\r\n","import { Directive, inject, Input } from '@angular/core';\r\nimport { LU_OPTION_CONTEXT } from './option.token';\r\n\r\n@Directive({\r\n\tselector: '[luDisabledOption]',\r\n\tstandalone: true,\r\n})\r\nexport class LuDisabledOptionDirective {\r\n\tprivate context = inject(LU_OPTION_CONTEXT);\r\n\r\n\t@Input('luDisabledOption') public set isDisabled(disabled: boolean | null) {\r\n\t\tif (disabled !== null) {\r\n\t\t\tthis.context.isDisabled$.next(disabled);\r\n\t\t}\r\n\t}\r\n}\r\n","import { Directive, Input, TemplateRef } from '@angular/core';\r\nimport { LuSimpleSelectInputComponent } from '../input';\r\nimport { LuOptionContext } from '../select.model';\r\n\r\n@Directive({\r\n\tselector: '[luDisplayer]',\r\n\tstandalone: true,\r\n})\r\nexport class LuDisplayerDirective<T> {\r\n\t@Input('luDisplayerSelect') set select(select: LuSimpleSelectInputComponent<T>) {\r\n\t\tselect.valueTpl = this.templateRef;\r\n\t}\r\n\r\n\tpublic constructor(private templateRef: TemplateRef<LuOptionContext<T>>) {}\r\n\r\n\tpublic static ngTemplateContextGuard<T>(_dir: LuDisplayerDirective<T>, ctx: unknown): ctx is LuOptionContext<T> {\r\n\t\treturn true;\r\n\t}\r\n}\r\n","import { InjectionToken, TemplateRef, Type } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\n\r\nexport interface ILuSelectPanelData<T> {\r\n\toptions$: Observable<T[]>;\r\n\tloading$: Observable<boolean>;\r\n\toptionComparer: (option1: T, option2: T) => boolean;\r\n\tinitialValue: T | undefined;\r\n\toptionTpl: TemplateRef<LuOptionContext<T>> | Type<unknown>;\r\n\tsearchable: boolean;\r\n}\r\n\r\nexport interface LuOptionContext<T> {\r\n\t$implicit: T;\r\n}\r\n\r\nexport const SELECT_ID = new InjectionToken<number>('LuSelectPanelData');\r\nexport const SELECT_PANEL_DATA = new InjectionToken<unknown>('LuSelectId');\r\nexport const SELECT_LABEL = new InjectionToken<HTMLLabelElement | undefined>('LuSelectLabel');\r\nexport const SELECT_LABEL_ID = new InjectionToken<string>('LuSelectLabelId');\r\n","import { ComponentRef, Directive, EmbeddedViewRef, inject, Injector, Input, OnChanges, OnDestroy, SimpleChanges, TemplateRef, Type, ViewContainerRef } from '@angular/core';\r\nimport { LuOptionContext } from '../select.model';\r\nimport { LU_OPTION_CONTEXT, provideOptionContext } from './option.token';\r\n\r\n@Directive({\r\n\tselector: '[luOptionOutlet]',\r\n\tstandalone: true,\r\n\tproviders: [provideOptionContext()],\r\n})\r\nexport class LuOptionOutletDirective<T> implements OnChanges, OnDestroy {\r\n\t@Input() luOptionOutlet?: Type<unknown> | TemplateRef<LuOptionContext<T>>;\r\n\t@Input() luOptionOutletValue: T | undefined;\r\n\r\n\tprivate viewContainerRef = inject(ViewContainerRef);\r\n\tprivate injector = inject(Injector);\r\n\tprivate embeddedViewRef?: EmbeddedViewRef<LuOptionContext<T>>;\r\n\tprivate componentRef?: ComponentRef<unknown>;\r\n\tprivate optionContext = inject(LU_OPTION_CONTEXT);\r\n\r\n\tngOnChanges(changes: SimpleChanges): void {\r\n\t\tif (changes['luOptionOutlet'] || !this.luOptionOutletValue) {\r\n\t\t\tthis.clearContainer();\r\n\t\t}\r\n\r\n\t\tconst hasRef = this.embeddedViewRef || this.componentRef;\r\n\r\n\t\tif (changes['luOptionOutlet'] || (changes['luOptionOutletValue'] && !hasRef)) {\r\n\t\t\tthis.createComponent();\r\n\t\t} else if (changes['luOptionOutletValue']) {\r\n\t\t\tthis.updateRefValue();\r\n\t\t}\r\n\t}\r\n\r\n\tngOnDestroy(): void {\r\n\t\tthis.optionContext.destroy();\r\n\t}\r\n\r\n\tprivate clearContainer(): void {\r\n\t\tthis.viewContainerRef.clear();\r\n\t\tthis.embeddedViewRef?.destroy();\r\n\t\tthis.componentRef?.destroy();\r\n\t\tthis.embeddedViewRef = undefined;\r\n\t\tthis.componentRef = undefined;\r\n\t}\r\n\r\n\tprivate createComponent(): void {\r\n\t\tif (!this.luOptionOutlet || !this.luOptionOutletValue) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tif (this.luOptionOutlet instanceof TemplateRef) {\r\n\t\t\tthis.embeddedViewRef = this.viewContainerRef.createEmbeddedView(this.luOptionOutlet, { $implicit: this.luOptionOutletValue }, { injector: this.injector });\r\n\t\t} else {\r\n\t\t\tthis.optionContext.option$.next(this.luOptionOutletValue);\r\n\t\t\tthis.componentRef = this.viewContainerRef.createComponent(this.luOptionOutlet, { injector: this.injector });\r\n\t\t}\r\n\t}\r\n\r\n\tprivate updateRefValue(): void {\r\n\t\tif (!this.luOptionOutletValue) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tif (this.embeddedViewRef) {\r\n\t\t\tthis.embeddedViewRef.context = { $implicit: this.luOptionOutletValue };\r\n\t\t} else if (this.componentRef) {\r\n\t\t\tthis.optionContext.option$.next(this.luOptionOutletValue);\r\n\t\t}\r\n\t}\r\n}\r\n","import { Highlightable } from '@angular/cdk/a11y';\r\nimport { AsyncPipe } from '@angular/common';\r\nimport { AfterViewInit, ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, HostBinding, inject, Input, OnDestroy, TemplateRef, Type, ViewChild } from '@angular/core';\r\nimport { asyncScheduler, BehaviorSubject, observeOn, Subscription } from 'rxjs';\r\nimport { LuOptionContext, SELECT_ID } from '../select.model';\r\nimport { LuOptionOutletDirective } from './option-outlet.directive';\r\nimport { ILuOptionContext, LU_OPTION_CONTEXT } from './option.token';\r\n\r\n@Component({\r\n\tselector: 'lu-select-option',\r\n\ttemplateUrl: './option.component.html',\r\n\tstyleUrls: ['./option.component.scss'],\r\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\r\n\tstandalone: true,\r\n\timports: [AsyncPipe, LuOptionOutletDirective],\r\n})\r\nexport class LuOptionComponent<T> implements Highlightable, AfterViewInit, OnDestroy {\r\n\t@HostBinding('class.optionItem')\r\n\tpublic hasOptionItemClass = true;\r\n\r\n\t@Input()\r\n\tpublic optionTpl: TemplateRef<LuOptionContext<T>> | Type<unknown> | undefined;\r\n\r\n\t@Input()\r\n\t@HostBinding('attr.aria-selected')\r\n\tisSelected = false;\r\n\r\n\t@Input() option?: T;\r\n\r\n\t@Input()\r\n\tpublic optionIndex = 0;\r\n\r\n\tisHighlighted$ = new BehaviorSubject(false);\r\n\r\n\t/**\r\n\t * Whether option is disabled. Used by ListKeyManager.\r\n\t */\r\n\tdisabled = false;\r\n\r\n\t@ViewChild(LuOptionOutletDirective, { read: LU_OPTION_CONTEXT, static: true })\r\n\tprivate optionContext?: ILuOptionContext<T>;\r\n\r\n\tprivate cdr = inject(ChangeDetectorRef);\r\n\tprivate subscription?: Subscription;\r\n\r\n\t@HostBinding('attr.role')\r\n\tpublic role = 'option';\r\n\r\n\t@HostBinding('attr.id')\r\n\tpublic get id(): string {\r\n\t\treturn `lu-select-${this.selectId}-option-${this.optionIndex}`;\r\n\t}\r\n\r\n\tprotected elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\r\n\tprotected selectId = inject(SELECT_ID);\r\n\r\n\tngOnDestroy(): void {\r\n\t\tthis.subscription?.unsubscribe();\r\n\t}\r\n\r\n\tngAfterViewInit(): void {\r\n\t\tthis.subscription = this.optionContext.isDisabled$.pipe(observeOn(asyncScheduler)).subscribe((isDisabled) => {\r\n\t\t\tthis.disabled = isDisabled;\r\n\t\t\tthis.cdr.markForCheck();\r\n\t\t});\r\n\t}\r\n\r\n\tsetActiveStyles(): void {\r\n\t\tthis.isHighlighted$.next(true);\r\n\t\tthis.elementRef.nativeElement.scrollIntoView({ block: 'center' });\r\n\t}\r\n\r\n\tsetInactiveStyles(): void {\r\n\t\tthis.isHighlighted$.next(false);\r\n\t}\r\n\r\n\tselectOption($event: Event): void {\r\n\t\tif (this.disabled) {\r\n\t\t\t$event.stopPropagation();\r\n\t\t}\r\n\t}\r\n}\r\n","<div\r\n\tclass=\"optionItem-value\"\r\n\t[class.is-selected]=\"isSelected\"\r\n\t[class.is-highlighted]=\"isHighlighted$ | async\"\r\n\t[class.is-disabled]=\"disabled\"\r\n\t(click)=\"selectOption($event)\"\r\n>\r\n\t<ng-container *luOptionOutlet=\"optionTpl; value: option\"></ng-container>\r\n</div>\r\n","import { Directive, Input, TemplateRef } from '@angular/core';\r\nimport { LuSimpleSelectInputComponent } from '../input';\r\nimport { LuOptionContext } from '../select.model';\r\n\r\n@Directive({\r\n\tselector: '[luOption]',\r\n\tstandalone: true,\r\n})\r\nexport class LuOptionDirective<T> {\r\n\t@Input('luOptionSelect') set select(select: LuSimpleSelectInputComponent<T>) {\r\n\t\tselect.optionTpl = this.templateRef;\r\n\t}\r\n\r\n\tpublic constructor(private templateRef: TemplateRef<LuOptionContext<T>>) {}\r\n\r\n\tpublic static ngTemplateContextGuard<T>(_dir: LuOptionDirective<T>, ctx: unknown): ctx is LuOptionContext<T> {\r\n\t\treturn true;\r\n\t}\r\n}\r\n","import { InjectionToken } from '@angular/core';\r\nimport { ILuTranslation } from '@lucca-front/ng/core';\r\n\r\nexport const LU_SIMPLE_SELECT_TRANSLATIONS = new InjectionToken('LuSimpleSelectTranslations', {\r\n\tfactory: () => luSimpleSelectTranslations,\r\n});\r\n\r\nexport interface ILuSimpleSelectLabel {\r\n\tplaceholder: string;\r\n\tclear: string;\r\n\tclearSearch: string;\r\n\temptyResults: string;\r\n}\r\n\r\nexport const luSimpleSelectTranslations: ILuTranslation<ILuSimpleSelectLabel> = {\r\n\ten: {\r\n\t\tplaceholder: 'Select an option',\r\n\t\tclear: 'Clear',\r\n\t\tclearSearch: 'Clear search',\r\n\t\temptyResults: 'No results',\r\n\t},\r\n\tfr: {\r\n\t\tplaceholder: 'Sélectionnez une option',\r\n\t\tclear: 'Effacer',\r\n\t\tclearSearch: 'Vider la recherche',\r\n\t\temptyResults: 'Aucun résultat pour votre recherche',\r\n\t},\r\n\tde: {\r\n\t\tplaceholder: 'Wählen Sie eine Option',\r\n\t\tclear: 'Löschen',\r\n\t\tclearSearch: 'Suche löschen',\r\n\t\temptyResults: 'Keine Ergebnisse für Ihre Suche',\r\n\t},\r\n\tes: {\r\n\t\tplaceholder: 'Seleccione una opción',\r\n\t\tclear: 'Borrar',\r\n\t\tclearSearch: 'Borrar búsqueda',\r\n\t\temptyResults: 'No hay resultados para su búsqueda',\r\n\t},\r\n\tpt: {\r\n\t\tplaceholder: 'Selecione uma opção',\r\n\t\tclear: 'Limpar',\r\n\t\tclearSearch: 'Limpar pesquisa',\r\n\t\temptyResults: 'Nenhum resultado para sua pesquisa',\r\n\t},\r\n};\r\n","import { EventEmitter } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\n\r\nexport abstract class LuSelectPanelRef<T> {\r\n\tclosed = new EventEmitter<void>();\r\n\tpreviousPage = new EventEmitter<void>();\r\n\tnextPage = new EventEmitter<void>();\r\n\tvalueChanged = new EventEmitter<T>();\r\n\tclueChanged = new EventEmitter<string>();\r\n\tactiveOptionIdChanged = new EventEmitter<string>();\r\n\toptions$: Observable<T>;\r\n\r\n\tabstract emitValue(value: T): void;\r\n\tclose(): void {\r\n\t\tthis.closed.next();\r\n\t\tthis.closed.complete();\r\n\t\tthis.nextPage.complete();\r\n\t\tthis.previousPage.complete();\r\n\t\tthis.valueChanged.complete();\r\n\t\tthis.clueChanged.emit(null);\r\n\t\tthis.clueChanged.complete();\r\n\t\tthis.activeOptionIdChanged.emit(undefined);\r\n\t\tthis.activeOptionIdChanged.complete();\r\n\t}\r\n}\r\n","import { A11yModule, ActiveDescendantKeyManager } from '@angular/cdk/a11y';\r\nimport { AsyncPipe, NgFor, NgIf } from '@angular/common';\r\nimport { AfterViewInit, ChangeDetectionStrategy, Component, ElementRef, HostListener, inject, QueryList, ViewChild, ViewChildren } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { getIntl } from '@lucca-front/ng/core';\r\nimport { asyncScheduler, filter, map, observeOn, take, takeUntil } from 'rxjs';\r\nimport { ɵLuOptionComponent } from '../option/index';\r\nimport { ILuSelectPanelData, SELECT_ID, SELECT_PANEL_DATA } from '../select.model';\r\nimport { LU_SIMPLE_SELECT_TRANSLATIONS } from '../select.translate';\r\nimport { LuSelectPanelRef } from './panel.models';\r\n\r\n@Component({\r\n\tselector: 'lu-select-panel',\r\n\ttemplateUrl: './panel.component.html',\r\n\tstyleUrls: ['./panel.component.scss'],\r\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\r\n\tstandalone: true,\r\n\timports: [A11yModule, AsyncPipe, FormsModule, NgIf, NgFor, ɵLuOptionComponent],\r\n})\r\nexport class LuSelectPanelComponent<T> implements AfterViewInit {\r\n\tprotected panelData = inject<ILuSelectPanelData<T>>(SELECT_PANEL_DATA);\r\n\tpublic panelRef = inject<LuSelectPanelRef<T>>(LuSelectPanelRef);\r\n\tpublic selectId = inject(SELECT_ID);\r\n\tpublic intl = getIntl(LU_SIMPLE_SELECT_TRANSLATIONS);\r\n\r\n\toptions$ = this.panelData.options$;\r\n\tloading$ = this.panelData.loading$;\r\n\toptionComparer = this.panelData.optionComparer;\r\n\tinitialValue: T | undefined = this.panelData.initialValue;\r\n\toptionTpl = this.panelData.optionTpl;\r\n\tsearchable = this.panelData.searchable;\r\n\r\n\t@ViewChild('searchInput')\r\n\tpublic set searchInput(input: ElementRef<HTMLInputElement> | undefined) {\r\n\t\tif (!input) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tsetTimeout(() => input.nativeElement.focus());\r\n\t}\r\n\r\n\t@ViewChildren(ɵLuOptionComponent) optionsQL: QueryList<ɵLuOptionComponent<T>>;\r\n\tprivate keyManager: ActiveDescendantKeyManager<ɵLuOptionComponent<T>>;\r\n\r\n\tsearch: string | null = null;\r\n\r\n\tpublic get selected(): T | undefined {\r\n\t\treturn this.keyManager?.activeItem?.option;\r\n\t}\r\n\r\n\tonScroll(evt: Event): void {\r\n\t\tif (!(evt.target instanceof HTMLElement)) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tif (evt.target.scrollTop === 0) {\r\n\t\t\tthis.panelRef.previousPage.emit();\r\n\t\t}\r\n\r\n\t\tif (evt.target.scrollHeight - evt.target.scrollTop - evt.target.clientHeight < 1) {\r\n\t\t\tthis.panelRef.nextPage.emit();\r\n\t\t}\r\n\t}\r\n\r\n\tngAfterViewInit(): void {\r\n\t\tif (!this.optionsQL) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.keyManager = new ActiveDescendantKeyManager(this.optionsQL).withHomeAndEnd();\r\n\r\n\t\tif (this.initialValue) {\r\n\t\t\tthis.options$\r\n\t\t\t\t?.pipe(\r\n\t\t\t\t\tobserveOn(asyncScheduler),\r\n\t\t\t\t\tmap((options) => options.findIndex((o) => this.optionComparer(o, this.initialValue))),\r\n\t\t\t\t\tfilter((index) => index !== -1),\r\n\t\t\t\t\ttake(1),\r\n\t\t\t\t\ttakeUntil(this.panelRef.closed),\r\n\t\t\t\t)\r\n\t\t\t\t.subscribe((selectedIndex) => this.keyManager.setActiveItem(selectedIndex));\r\n\t\t}\r\n\r\n\t\tthis.keyManager.change\r\n\t\t\t.pipe(\r\n\t\t\t\tmap(() => this.keyManager.activeItem?.id),\r\n\t\t\t\ttakeUntil(this.panelRef.closed),\r\n\t\t\t)\r\n\t\t\t.subscribe((activeDescendant) => this.panelRef.activeOptionIdChanged.emit(activeDescendant));\r\n\t}\r\n\r\n\t@HostListener('keydown', ['$event'])\r\n\tonKeyDown($event: KeyboardEvent): void {\r\n\t\tswitch ($event.key) {\r\n\t\t\tcase 'Escape':\r\n\t\t\tcase 'Tab':\r\n\t\t\t\treturn this.panelRef.close();\r\n\t\t\tcase 'Enter':\r\n\t\t\t\treturn this.panelRef.emitValue(this.selected);\r\n\t\t\tdefault:\r\n\t\t\t\tthis.keyManager?.onKeydown($event);\r\n\t\t}\r\n\t}\r\n\r\n\tupdateClue(clue: string | null): void {\r\n\t\tthis.search = clue;\r\n\t\tthis.panelRef.clueChanged.emit(clue);\r\n\r\n\t\tsetTimeout(() => this.keyManager.setFirstItemActive());\r\n\t}\r\n}\r\n","<div\r\n\tclass=\"lu-picker-panel lu-option-picker-panel\"\r\n\trole=\"dialog\"\r\n\tcdkTrapFocus\r\n\t*ngIf=\"{ options: options$ | async } as ctx\"\r\n\t[cdkTrapFocusAutoCapture]=\"true\"\r\n>\r\n\t<div class=\"lu-picker-content\" [class.is-loading]=\"loading$ | async\" tabindex=\"0\" (scroll)=\"onScroll($event)\">\r\n\t\t<ng-container *ngIf=\"searchable\">\r\n\t\t\t<div class=\"panel-search textfield mod-search\">\r\n\t\t\t\t<input #searchInput class=\"textfield-input\" [ngModel]=\"search\" (ngModelChange)=\"updateClue($event)\" />\r\n\t\t\t</div>\r\n\r\n\t\t\t<div class=\"optionPlaceholder\" *ngIf=\"search && !ctx.options?.length\">\r\n\t\t\t\t<p class=\"optionPlaceholder-content u-marginBottom0\">{{ intl.emptyResults }}</p>\r\n\t\t\t\t<button type=\"button\" class=\"link\" (click)=\"updateClue(null); searchInput.focus()\">{{ intl.clearSearch }}</button>\r\n\t\t\t</div>\r\n\t\t</ng-container>\r\n\t\t<div class=\"lu-picker-content-option\">\r\n\t\t\t<lu-select-option\r\n\t\t\t\t*ngFor=\"let option of ctx.options; let index = index\"\r\n\t\t\t\t[option]=\"option\"\r\n\t\t\t\t[optionTpl]=\"optionTpl\"\r\n\t\t\t\t[optionIndex]=\"index\"\r\n\t\t\t\t[isSelected]=\"option === selected\"\r\n\t\t\t\t(click)=\"panelRef.emitValue(option)\"\r\n\t\t\t></lu-select-option>\r\n\t\t</div>\r\n\r\n\t\t<div *ngIf=\"loading$ | async\" class=\"panel-loading loading lu-picker-loading\"></div>\r\n\t</div>\r\n</div>\r\n","import { Overlay, OverlayConfig, OverlayPositionBuilder, OverlayRef, ScrollStrategyOptions } from '@angular/cdk/overlay';\r\nimport { ComponentPortal } from '@angular/cdk/portal';\r\nimport { ComponentRef, ElementRef, inject, Injectable, Injector } from '@angular/core';\r\nimport { takeUntil } from 'rxjs';\r\nimport { LuSelectPanelComponent, LuSelectPanelRef } from '../panel';\r\nimport { ILuSelectPanelData, SELECT_PANEL_DATA } from '../select.model';\r\n\r\nclass SelectPanelRef<T> extends LuSelectPanelRef<T> {\r\n\tinstance: LuSelectPanelComponent<T>;\r\n\tprivate panelRef: ComponentRef<LuSelectPanelComponent<T>>;\r\n\tprivate portalRef: ComponentPortal<LuSelectPanelComponent<T>>;\r\n\r\n\tconstructor(private overlayRef: OverlayRef, parentInjector: Injector, panelData: ILuSelectPanelData<T>) {\r\n\t\tsuper();\r\n\r\n\t\tconst injector = Injector.create({\r\n\t\t\tproviders: [\r\n\t\t\t\t{ provide: LuSelectPanelRef, useValue: this },\r\n\t\t\t\t{ provide: SELECT_PANEL_DATA, useValue: panelData },\r\n\t\t\t],\r\n\t\t\tparent: parentInjector,\r\n\t\t});\r\n\r\n\t\tthis.portalRef = new ComponentPortal<LuSelectPanelComponent<T>>(LuSelectPanelComponent, undefined, injector);\r\n\t\tthis.panelRef = overlayRef.attach(this.portalRef);\r\n\t\tthis.instance = this.panelRef.instance;\r\n\r\n\t\toverlayRef\r\n\t\t\t.backdropClick()\r\n\t\t\t.pipe(takeUntil(this.closed))\r\n\t\t\t.subscribe(() => this.close());\r\n\t}\r\n\r\n\temitValue(value: T): void {\r\n\t\tthis.valueChanged.emit(value);\r\n\t\tthis.close();\r\n\t}\r\n\r\n\toverride close(): void {\r\n\t\tsuper.close();\r\n\t\tthis.panelRef.destroy();\r\n\t\tthis.overlayRef.detach();\r\n\t}\r\n}\r\n\r\n@Injectable()\r\nexport class LuSimpleSelectPanelRefFactory {\r\n\tprotected overlay = inject(Overlay);\r\n\tprotected elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\r\n\tprotected positionBuilder = inject(OverlayPositionBuilder);\r\n\tprotected scrollStrategies = inject(ScrollStrategyOptions);\r\n\tprotected parentInjector = inject(Injector);\r\n\r\n\tbuildPanelRef<T>(panelData: ILuSelectPanelData<T>, overlayConfigOverride: OverlayConfig = {}): LuSelectPanelRef<T> {\r\n\t\tconst overlayConfig = this.buildOverlayConfig(overlayConfigOverride);\r\n\t\tconst overlayRef = this.overlay.create(overlayConfig);\r\n\r\n\t\treturn new SelectPanelRef(overlayRef, this.parentInjector, panelData);\r\n\t}\r\n\r\n\tprotected buildOverlayConfig(overlayConfigOverride: OverlayConfig = {}): OverlayConfig {\r\n\t\tconst overlayConfig: OverlayConfig = overlayConfigOverride || {};\r\n\t\toverlayConfig.positionStrategy = this.positionBuilder.flexibleConnectedTo(this.elementRef).withPositions([\r\n\t\t\t{\r\n\t\t\t\toriginX: 'start',\r\n\t\t\t\toriginY: 'bottom',\r\n\t\t\t\toverlayX: 'start',\r\n\t\t\t\toverlayY: 'top',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\toriginX: 'end',\r\n\t\t\t\toriginY: 'bottom',\r\n\t\t\t\toverlayX: 'end',\r\n\t\t\t\toverlayY: 'top',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\toriginX: 'start',\r\n\t\t\t\toriginY: 'top',\r\n\t\t\t\toverlayX: 'start',\r\n\t\t\t\toverlayY: 'bottom',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\toriginX: 'end',\r\n\t\t\t\toriginY: 'top',\r\n\t\t\t\toverlayX: 'end',\r\n\t\t\t\toverlayY: 'bottom',\r\n\t\t\t},\r\n\t\t]);\r\n\t\toverlayConfig.scrollStrategy = this.scrollStrategies.reposition();\r\n\t\toverlayConfig.minWidth = this.elementRef.nativeElement.clientWidth;\r\n\t\toverlayConfig.maxHeight = '100vh';\r\n\t\toverlayConfig.maxWidth = '100vw';\r\n\r\n\t\treturn overlayConfig;\r\n\t}\r\n}\r\n","import { OverlayContainer } from '@angular/cdk/overlay';\r\nimport { Platform } from '@angular/cdk/platform';\r\nimport { DOCUMENT } from '@angular/common';\r\nimport { ElementRef, inject, Injectable, Provider } from '@angular/core';\r\nimport { SELECT_ID, SELECT_LABEL, SELECT_LABEL_ID } from '../select.model';\r\n\r\nlet selectId = 0;\r\n\r\nfunction selectIdFactory(): number {\r\n\treturn selectId++;\r\n}\r\n\r\nfunction selectLabelFactory(): HTMLLabelElement | undefined {\r\n\tconst elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\r\n\r\n\tfunction getLabel(node: HTMLElement): HTMLLabelElement | undefined {\r\n\t\tif (node instanceof HTMLLabelElement) {\r\n\t\t\treturn node;\r\n\t\t}\r\n\r\n\t\tif (!node.parentElement) {\r\n\t\t\treturn undefined;\r\n\t\t}\r\n\r\n\t\treturn getLabel(node.parentElement);\r\n\t}\r\n\r\n\treturn getLabel(elementRef.nativeElement);\r\n}\r\n\r\nfunction selectLabelIdFactory(): string {\r\n\treturn inject(SELECT_LABEL)?.id || `lu-select-label-${inject(SELECT_ID)}`;\r\n}\r\n\r\nexport function provideLuSelectLabelsAndIds(): Provider[] {\r\n\treturn [\r\n\t\t{ provide: SELECT_ID, useFactory: selectIdFactory },\r\n\t\t{ provide: SELECT_LABEL, useFactory: selectLabelFactory },\r\n\t\t{ provide: SELECT_LABEL_ID, useFactory: selectLabelIdFactory },\r\n\t];\r\n}\r\n\r\n@Injectable()\r\nclass LuSelectOverlayContainer extends OverlayContainer {\r\n\tprivate selectLabelId = inject(SELECT_LABEL_ID);\r\n\tprivate selectId = inject(SELECT_ID);\r\n\r\n\tconstructor() {\r\n\t\tsuper(inject(DOCUMENT), inject(Platform));\r\n\t}\r\n\r\n\tprotected override _createContainer(): void {\r\n\t\tsuper._createContainer();\r\n\t\tthis._containerElement.setAttribute('aria-labelledby', this.selectLabelId);\r\n\t\tthis._containerElement.setAttribute('role', 'listbox');\r\n\t\tthis._containerElement.id = `lu-select-overlay-container-${this.selectId}`;\r\n\t}\r\n}\r\n\r\nexport function provideLuSelectOverlayContainer(): Provider[] {\r\n\treturn [\r\n\t\t{\r\n\t\t\tprovide: OverlayContainer,\r\n\t\t\tuseClass: LuSelectOverlayContainer,\r\n\t\t},\r\n\t];\r\n}\r\n","/* eslint-disable @angular-eslint/no-output-on-prefix */\r\nimport { OverlayConfig, OverlayContainer, OverlayModule } from '@angular/cdk/overlay';\r\nimport { AsyncPipe, NgIf } from '@angular/common';\r\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, forwardRef, HostBinding, HostListener, inject, Input, OnDestroy, OnInit, Output, TemplateRef, Type } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { getIntl } from '@lucca-front/ng/core';\r\nimport { BehaviorSubject, ReplaySubject } from 'rxjs';\r\nimport { LuSimpleSelectDefaultOptionComponent } from '../option';\r\nimport { LuOptionOutletDirective } from '../option/option-outlet.directive';\r\nimport { LuSelectPanelRef } from '../panel';\r\nimport { LuOptionContext, SELECT_LABEL, SELECT_LABEL_ID } from '../select.model';\r\nimport { LU_SIMPLE_SELECT_TRANSLATIONS } from '../select.translate';\r\nimport { LuSimpleSelectPanelRefFactory } from './panel-ref.factory';\r\nimport { provideLuSelectLabelsAndIds, provideLuSelectOverlayContainer } from './select-input.models';\r\n\r\n@Component({\r\n\tselector: 'lu-simple-select',\r\n\ttemplateUrl: './select-input.component.html',\r\n\tstyleUrls: ['./select-input.component.scss'],\r\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\r\n\tstandalone: true,\r\n\timports: [AsyncPipe, LuOptionOutletDirective, NgIf, OverlayModule],\r\n\tproviders: [\r\n\t\t{\r\n\t\t\tprovide: NG_VALUE_ACCESSOR,\r\n\t\t\tuseExisting: forwardRef(() => LuSimpleSelectInputComponent),\r\n\t\t\tmulti: true,\r\n\t\t},\r\n\t\tprovideLuSelectOverlayContainer(),\r\n\t\tprovideLuSelectLabelsAndIds(),\r\n\t\tLuSimpleSelectPanelRefFactory,\r\n\t],\r\n})\r\nexport class LuSimpleSelectInputComponent<T> implements ControlValueAccessor, OnDestroy, OnInit {\r\n\t@HostBinding('tabindex') tabindex = 0;\r\n\r\n\t@Input() placeholder = '';\r\n\r\n\t@Input()\r\n\t@HostBinding('class.is-clearable')\r\n\tclearable = false;\r\n\r\n\tget searchable(): boolean {\r\n\t\treturn this.clueChange.observed;\r\n\t}\r\n\r\n\t@Input()\r\n\t@HostBinding('class.is-disabled')\r\n\tdisabled = false;\r\n\r\n\t@HostBinding('class.is-filled')\r\n\tget isFilled(): boolean {\r\n\t\treturn this.value !== null && this.value !== undefined;\r\n\t}\r\n\r\n\t@HostBinding('class.is-focused')\r\n\t@HostBinding('attr.aria-expanded')\r\n\tpublic get isPanelOpen(): boolean {\r\n\t\treturn this.isPanelOpen$.value;\r\n\t}\r\n\tpublic isPanelOpen$ = new BehaviorSubject(false);\r\n\r\n\t@HostBinding('attr.role')\r\n\tpublic role = 'combobox';\r\n\r\n\t@HostBinding('attr.aria-activedescendant')\r\n\tpublic activeDescendant: string | undefined;\r\n\r\n\t@HostBinding('attr.aria-controls')\r\n\tget ariaControls(): string {\r\n\t\treturn this.overlayContainerRef.id;\r\n\t}\r\n\r\n\t@Input()\r\n\toverlayConfig?: OverlayConfig = {\r\n\t\thasBackdrop: true,\r\n\t\tbackdropClass: 'cdk-overlay-transparent-backdrop',\r\n\t};\r\n\r\n\t@Input() set loading(value: boolean) {\r\n\t\tthis.loading$.next(value);\r\n\t}\r\n\r\n\t@Input() set options(options: T[]) {\r\n\t\tthis.options$.next(options);\r\n\t}\r\n\r\n\t@Input() optionComparer: (option1: T, option2: T) => boolean = (option1, option2) => JSON.stringify(option1) === JSON.stringify(option2);\r\n\t@Input() optionTpl?: TemplateRef<LuOptionContext<T>> | Type<unknown> = LuSimpleSelectDefaultOptionComponent;\r\n\t@Input() valueTpl?: TemplateRef<LuOptionContext<T>> | Type<unknown>;\r\n\r\n\t@Output() clueChange = new EventEmitter<string>();\r\n\t@Output() nextPage = new EventEmitter<void>();\r\n\t@Output() previousPage = new EventEmitter<void>();\r\n\r\n\tpublic get value(): T {\r\n\t\treturn this._value;\r\n\t}\r\n\r\n\tprotected set value(value: T) {\r\n\t\tthis._value = value;\r\n\t\tthis.changeDetectorRef.markForCheck();\r\n\t}\r\n\r\n\tprotected _value?: T;\r\n\r\n\toptions$ = new ReplaySubject<T[]>(1);\r\n\tloading$ = new ReplaySubject<boolean>(1);\r\n\tclue: string | null = null;\r\n\tintl = getIntl(LU_SIMPLE_SELECT_TRANSLATIONS);\r\n\r\n\tprotected onChange?: (value: T | null) => void;\r\n\tprotected onTouched?: () => void;\r\n\r\n\tprotected panelRef?: LuSelectPanelRef<T>;\r\n\r\n\t@HostListener('keydown.space', ['$event'])\r\n\t@HostListener('keydown.enter', ['$event'])\r\n\t@HostListener('keydown.arrowDown', ['$event'])\r\n\t@HostListener('click', ['$event'])\r\n\tonKeydown($event: KeyboardEvent) {\r\n\t\tif (!this.isPanelOpen) {\r\n\t\t\tthis.openPanel();\r\n\t\t\t$event.stopPropagation();\r\n\t\t\t$event.preventDefault();\r\n\t\t}\r\n\t}\r\n\r\n\tprotected changeDetectorRef = inject(ChangeDetectorRef);\r\n\tprotected overlayContainerRef: HTMLElement = inject(OverlayContainer).getContainerElement();\r\n\tprotected panelRefFactory = inject(LuSimpleSelectPanelRefFactory);\r\n\r\n\tprotected label: HTMLElement | undefined = inject(SELECT_LABEL);\r\n\tprotected labelId: string = inject(SELECT_LABEL_ID);\r\n\r\n\tregisterOnChange(onChange: (value: T) => void): void {\r\n\t\tthis.onChange = onChange;\r\n\t}\r\n\r\n\tregisterOnTouched(onTouched: () => void): void {\r\n\t\tthis.onTouched = onTouched;\r\n\t}\r\n\r\n\tsetDisabledState(isDisabled: boolean): void {\r\n\t\tthis.disabled = isDisabled;\r\n\t}\r\n\r\n\tngOnDestroy(): void {\r\n\t\tthis.panelRef?.close();\r\n\t}\r\n\r\n\tngOnInit(): void {\r\n\t\tif (this.label) {\r\n\t\t\tthis.label.id = this.labelId;\r\n\t\t}\r\n\t}\r\n\r\n\tclearValue(event: MouseEvent): void {\r\n\t\tevent.stopPropagation();\r\n\t\tthis.updateValue(null);\r\n\t}\r\n\r\n\topenPanel(): void {\r\n\t\tif (this.isPanelOpen || this.disabled) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.isPanelOpen$.next(true);\r\n\t\tthis.panelRef = this.panelRefFactory.buildPanelRef(\r\n\t\t\t{\r\n\t\t\t\tinitialValue: this.value,\r\n\t\t\t\toptionComparer: this.optionComparer,\r\n\t\t\t\toptions$: this.options$,\r\n\t\t\t\tloading$: this.loading$,\r\n\t\t\t\tsearchable: this.searchable,\r\n\t\t\t\toptionTpl: this.optionTpl,\r\n\t\t\t},\r\n\t\t\tthis.overlayConfig,\r\n\t\t);\r\n\r\n\t\tthis.panelRef.valueChanged.subscribe((value) => this.updateValue(value));\r\n\t\tthis.panelRef.nextPage.subscribe(() => this.nextPage.emit());\r\n\t\tthis.panelRef.previousPage.subscribe(() => this.previousPage.emit());\r\n\t\tthis.panelRef.clueChanged.subscribe((clue) => {\r\n\t\t\tthis.clueChange.emit(clue);\r\n\t\t\tthis.clue = clue;\r\n\t\t});\r\n\t\tthis.panelRef.activeOptionIdChanged.subscribe((optionId) => {\r\n\t\t\tthis.activeDescendant = optionId;\r\n\t\t\tthis.changeDetectorRef.markForCheck();\r\n\t\t});\r\n\t\tthis.panelRef.closed.subscribe(() => this.closePanel());\r\n\t}\r\n\r\n\tpublic closePanel(): void {\r\n\t\tif (!this.isPanelOpen) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tthis.isPanelOpen$.next(false);\r\n\t\tthis.panelRef.close();\r\n\t\tthis.panelRef = undefined;\r\n\t}\r\n\r\n\tpublic writeValue(value: T): void {\r\n\t\tthis.value = value;\r\n\t}\r\n\r\n\tpublic updateValue(value: T): void {\r\n\t\tthis.value = value;\r\n\t\tthis.onChange?.(value);\r\n\t\tthis.onTouched?.();\r\n\t}\r\n}\r\n","<div class=\"lu-select-placeholder\">{{ placeholder }}</div>\r\n<div class=\"lu-select-value\">\r\n\t<div class=\"lu-select-display-wrapper\">\r\n\t\t<ng-container *luOptionOutlet=\"valueTpl || optionTpl; value: value\"></ng-container>\r\n\t</div>\r\n</div>\r\n<a *ngIf=\"clearable && isFilled\" class=\"clear lu-select-clearer\" role=\"button\" (click)=\"clearValue($event)\">\r\n\t<span aria-hidden=\"true\" class=\"lucca-icon icon-signClose\"></span>\r\n\t<span class=\"u-mask\">{{ intl.clear }}</span>\r\n</a>\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["ɵLuOptionComponent"],"mappings":";;;;;;;;;;;;;AASO,MAAM,iBAAiB,GAAG,IAAI,cAAc,CAA4B,iBAAiB,CAAC,CAAC;AAElG,SAAS,oBAAoB,GAAA;AAC5B,IAAA,MAAM,WAAW,GAAG,IAAI,eAAe,CAAC,KAAK,CAAC,CAAC;AAC/C,IAAA,MAAM,OAAO,GAAG,IAAI,eAAe,CAAgB,SAAS,CAAC,CAAC;IAC9D,OAAO;QACN,WAAW;QACX,OAAO;QACP,OAAO,GAAA;YACN,WAAW,CAAC,QAAQ,EAAE,CAAC;YACvB,OAAO,CAAC,QAAQ,EAAE,CAAC;SACnB;KACD,CAAC;AACH,CAAC;SAEe,oBAAoB,GAAA;IACnC,OAAO;AACN,QAAA,OAAO,EAAE,iBAAiB;AAC1B,QAAA,UAAU,EAAE,oBAAoB;KAChC,CAAC;AACH;;ACzBA,MAMa,oCAAoC,CAAA;AANjD,IAAA,WAAA,GAAA;AAOQ,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAsC,iBAAiB,CAAC,CAAC;AAChF,KAAA;8GAFY,oCAAoC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAApC,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oCAAoC,EAFtC,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iCAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA,mGAAA,CAAqG,EADrG,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,SAAS,8CAAE,IAAI,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAGb,oCAAoC,EAAA,UAAA,EAAA,CAAA;kBANhD,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,iCAAiC;AAC3C,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,OAAO,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC;AAC1B,oBAAA,QAAQ,EAAE,CAAqG,mGAAA,CAAA;AAC/G,iBAAA,CAAA;;;ACND,MAIa,yBAAyB,CAAA;AAJtC,IAAA,WAAA,GAAA;AAKS,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC;AAO5C,KAAA;IALA,IAAsC,UAAU,CAAC,QAAwB,EAAA;QACxE,IAAI,QAAQ,KAAK,IAAI,EAAE;YACtB,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACxC,SAAA;KACD;8GAPW,yBAAyB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAAzB,yBAAyB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,EAAA,UAAA,EAAA,CAAA,kBAAA,EAAA,YAAA,CAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;2FAAzB,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBAJrC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,oBAAoB;AAC9B,oBAAA,UAAU,EAAE,IAAI;AAChB,iBAAA,CAAA;8BAIsC,UAAU,EAAA,CAAA;sBAA/C,KAAK;uBAAC,kBAAkB,CAAA;;;ACN1B,MAIa,oBAAoB,CAAA;IAChC,IAAgC,MAAM,CAAC,MAAuC,EAAA;AAC7E,QAAA,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC;KACnC;AAED,IAAA,WAAA,CAA2B,WAA4C,EAAA;QAA5C,IAAW,CAAA,WAAA,GAAX,WAAW,CAAiC;KAAI;AAEpE,IAAA,OAAO,sBAAsB,CAAI,IAA6B,EAAE,GAAY,EAAA;AAClF,QAAA,OAAO,IAAI,CAAC;KACZ;8GATW,oBAAoB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,WAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAApB,oBAAoB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,EAAA,MAAA,EAAA,CAAA,mBAAA,EAAA,QAAA,CAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;2FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAJhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,eAAe;AACzB,oBAAA,UAAU,EAAE,IAAI;AAChB,iBAAA,CAAA;kGAEgC,MAAM,EAAA,CAAA;sBAArC,KAAK;uBAAC,mBAAmB,CAAA;;;ACOpB,MAAM,SAAS,GAAG,IAAI,cAAc,CAAS,mBAAmB,CAAC,CAAC;AAClE,MAAM,iBAAiB,GAAG,IAAI,cAAc,CAAU,YAAY,CAAC,CAAC;AACpE,MAAM,YAAY,GAAG,IAAI,cAAc,CAA+B,eAAe,CAAC,CAAC;AACvF,MAAM,eAAe,GAAG,IAAI,cAAc,CAAS,iBAAiB,CAAC;;ACf5E,MAKa,uBAAuB,CAAA;AALpC,IAAA,WAAA,GAAA;AASS,QAAA,IAAA,CAAA,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAC5C,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;AAG5B,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC;AAmDlD,KAAA;AAjDA,IAAA,WAAW,CAAC,OAAsB,EAAA;QACjC,IAAI,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE;YAC3D,IAAI,CAAC,cAAc,EAAE,CAAC;AACtB,SAAA;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,YAAY,CAAC;AAEzD,QAAA,IAAI,OAAO,CAAC,gBAAgB,CAAC,KAAK,OAAO,CAAC,qBAAqB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;YAC7E,IAAI,CAAC,eAAe,EAAE,CAAC;AACvB,SAAA;AAAM,aAAA,IAAI,OAAO,CAAC,qBAAqB,CAAC,EAAE;YAC1C,IAAI,CAAC,cAAc,EAAE,CAAC;AACtB,SAAA;KACD;IAED,WAAW,GAAA;AACV,QAAA,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;KAC7B;IAEO,cAAc,GAAA;AACrB,QAAA,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;AAC9B,QAAA,IAAI,CAAC,eAAe,EAAE,OAAO,EAAE,CAAC;AAChC,QAAA,IAAI,CAAC,YAAY,EAAE,OAAO,EAAE,CAAC;AAC7B,QAAA,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;AACjC,QAAA,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;KAC9B;IAEO,eAAe,GAAA;QACtB,IAAI,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE;YACtD,OAAO;AACP,SAAA;AAED,QAAA,IAAI,IAAI,CAAC,cAAc,YAAY,WAAW,EAAE;AAC/C,YAAA,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,mBAAmB,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;AAC3J,SAAA;AAAM,aAAA;YACN,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;YAC1D,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;AAC5G,SAAA;KACD;IAEO,cAAc,GAAA;AACrB,QAAA,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE;YAC9B,OAAO;AACP,SAAA;QACD,IAAI,IAAI,CAAC,eAAe,EAAE;AACzB,YAAA,IAAI,CAAC,eAAe,CAAC,OAAO,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC,mBAAmB,EAAE,CAAC;AACvE,SAAA;aAAM,IAAI,IAAI,CAAC,YAAY,EAAE;YAC7B,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;AAC1D,SAAA;KACD;8GA1DW,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAvB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,uBAAuB,EAFxB,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,mBAAA,EAAA,qBAAA,EAAA,EAAA,SAAA,EAAA,CAAC,oBAAoB,EAAE,CAAC,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;2FAEvB,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBALnC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,kBAAkB;AAC5B,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,SAAS,EAAE,CAAC,oBAAoB,EAAE,CAAC;AACnC,iBAAA,CAAA;8BAES,cAAc,EAAA,CAAA;sBAAtB,KAAK;gBACG,mBAAmB,EAAA,CAAA;sBAA3B,KAAK;;;ACHP,MAQa,iBAAiB,CAAA;AAR9B,IAAA,WAAA,GAAA;QAUQ,IAAkB,CAAA,kBAAA,GAAG,IAAI,CAAC;QAOjC,IAAU,CAAA,UAAA,GAAG,KAAK,CAAC;QAKZ,IAAW,CAAA,WAAA,GAAG,CAAC,CAAC;AAEvB,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,eAAe,CAAC,KAAK,CAAC,CAAC;AAE5C;;AAEG;QACH,IAAQ,CAAA,QAAA,GAAG,KAAK,CAAC;AAKT,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC;QAIjC,IAAI,CAAA,IAAA,GAAG,QAAQ,CAAC;AAOb,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAA0B,UAAU,CAAC,CAAC;AACzD,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;AA2BvC,KAAA;AAjCA,IAAA,IACW,EAAE,GAAA;QACZ,OAAO,CAAA,UAAA,EAAa,IAAI,CAAC,QAAQ,WAAW,IAAI,CAAC,WAAW,CAAA,CAAE,CAAC;KAC/D;IAKD,WAAW,GAAA;AACV,QAAA,IAAI,CAAC,YAAY,EAAE,WAAW,EAAE,CAAC;KACjC;IAED,eAAe,GAAA;QACd,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,UAAU,KAAI;AAC3G,YAAA,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC;AAC3B,YAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;AACzB,SAAC,CAAC,CAAC;KACH;IAED,eAAe,GAAA;AACd,QAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC/B,QAAA,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;KAClE;IAED,iBAAiB,GAAA;AAChB,QAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAChC;AAED,IAAA,YAAY,CAAC,MAAa,EAAA;QACzB,IAAI,IAAI,CAAC,QAAQ,EAAE;YAClB,MAAM,CAAC,eAAe,EAAE,CAAC;AACzB,SAAA;KACD;8GAhEW,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAAjB,iBAAiB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,EAAA,SAAA,EAAA,WAAA,EAAA,UAAA,EAAA,YAAA,EAAA,MAAA,EAAA,QAAA,EAAA,WAAA,EAAA,aAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,kBAAA,EAAA,yBAAA,EAAA,oBAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,WAAA,EAAA,SAAA,EAAA,SAAA,EAAA,EAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,eAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAuBlB,uBAAuB,EAAU,WAAA,EAAA,IAAA,EAAA,IAAA,EAAA,iBAAiB,2CCvC9D,oTASA,EAAA,MAAA,EAAA,CAAA,6sIAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EDKW,SAAS,EAAA,IAAA,EAAA,OAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,uBAAuB,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,gBAAA,EAAA,qBAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;2FAEhC,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAR7B,SAAS;+BACC,kBAAkB,EAAA,eAAA,EAGX,uBAAuB,CAAC,MAAM,EAAA,UAAA,EACnC,IAAI,EAAA,OAAA,EACP,CAAC,SAAS,EAAE,uBAAuB,CAAC,EAAA,QAAA,EAAA,oTAAA,EAAA,MAAA,EAAA,CAAA,6sIAAA,CAAA,EAAA,CAAA;8BAItC,kBAAkB,EAAA,CAAA;sBADxB,WAAW;uBAAC,kBAAkB,CAAA;gBAIxB,SAAS,EAAA,CAAA;sBADf,KAAK;gBAKN,UAAU,EAAA,CAAA;sBAFT,KAAK;;sBACL,WAAW;uBAAC,oBAAoB,CAAA;gBAGxB,MAAM,EAAA,CAAA;sBAAd,KAAK;gBAGC,WAAW,EAAA,CAAA;sBADjB,KAAK;gBAWE,aAAa,EAAA,CAAA;sBADpB,SAAS;uBAAC,uBAAuB,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,MAAM,EAAE,IAAI,EAAE,CAAA;gBAOtE,IAAI,EAAA,CAAA;sBADV,WAAW;uBAAC,WAAW,CAAA;gBAIb,EAAE,EAAA,CAAA;sBADZ,WAAW;uBAAC,SAAS,CAAA;;;AE5CvB,MAIa,iBAAiB,CAAA;IAC7B,IAA6B,MAAM,CAAC,MAAuC,EAAA;AAC1E,QAAA,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC;KACpC;AAED,IAAA,WAAA,CAA2B,WAA4C,EAAA;QAA5C,IAAW,CAAA,WAAA,GAAX,WAAW,CAAiC;KAAI;AAEpE,IAAA,OAAO,sBAAsB,CAAI,IAA0B,EAAE,GAAY,EAAA;AAC/E,QAAA,OAAO,IAAI,CAAC;KACZ;8GATW,iBAAiB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,WAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAAjB,iBAAiB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,EAAA,MAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,CAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;2FAAjB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAJ7B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,YAAY;AACtB,oBAAA,UAAU,EAAE,IAAI;AAChB,iBAAA,CAAA;kGAE6B,MAAM,EAAA,CAAA;sBAAlC,KAAK;uBAAC,gBAAgB,CAAA;;;MCNX,6BAA6B,GAAG,IAAI,cAAc,CAAC,4BAA4B,EAAE;AAC7F,IAAA,OAAO,EAAE,MAAM,0BAA0B;AACzC,CAAA,EAAE;AASU,MAAA,0BAA0B,GAAyC;AAC/E,IAAA,EAAE,EAAE;AACH,QAAA,WAAW,EAAE,kBAAkB;AAC/B,QAAA,KAAK,EAAE,OAAO;AACd,QAAA,WAAW,EAAE,cAAc;AAC3B,QAAA,YAAY,EAAE,YAAY;AAC1B,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,WAAW,EAAE,yBAAyB;AACtC,QAAA,KAAK,EAAE,SAAS;AAChB,QAAA,WAAW,EAAE,oBAAoB;AACjC,QAAA,YAAY,EAAE,qCAAqC;AACnD,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,WAAW,EAAE,wBAAwB;AACrC,QAAA,KAAK,EAAE,SAAS;AAChB,QAAA,WAAW,EAAE,eAAe;AAC5B,QAAA,YAAY,EAAE,iCAAiC;AAC/C,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,WAAW,EAAE,uBAAuB;AACpC,QAAA,KAAK,EAAE,QAAQ;AACf,QAAA,WAAW,EAAE,iBAAiB;AAC9B,QAAA,YAAY,EAAE,oCAAoC;AAClD,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,WAAW,EAAE,qBAAqB;AAClC,QAAA,KAAK,EAAE,QAAQ;AACf,QAAA,WAAW,EAAE,iBAAiB;AAC9B,QAAA,YAAY,EAAE,oCAAoC;AAClD,KAAA;;;MCzCoB,gBAAgB,CAAA;AAAtC,IAAA,WAAA,GAAA;AACC,QAAA,IAAA,CAAA,MAAM,GAAG,IAAI,YAAY,EAAQ,CAAC;AAClC,QAAA,IAAA,CAAA,YAAY,GAAG,IAAI,YAAY,EAAQ,CAAC;AACxC,QAAA,IAAA,CAAA,QAAQ,GAAG,IAAI,YAAY,EAAQ,CAAC;AACpC,QAAA,IAAA,CAAA,YAAY,GAAG,IAAI,YAAY,EAAK,CAAC;AACrC,QAAA,IAAA,CAAA,WAAW,GAAG,IAAI,YAAY,EAAU,CAAC;AACzC,QAAA,IAAA,CAAA,qBAAqB,GAAG,IAAI,YAAY,EAAU,CAAC;KAenD;IAXA,KAAK,GAAA;AACJ,QAAA,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;AACnB,QAAA,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;AACvB,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;AACzB,QAAA,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;AAC7B,QAAA,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;AAC7B,QAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC5B,QAAA,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;AAC5B,QAAA,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AAC3C,QAAA,IAAI,CAAC,qBAAqB,CAAC,QAAQ,EAAE,CAAC;KACtC;AACD;;ACbD,MAQa,sBAAsB,CAAA;AARnC,IAAA,WAAA,GAAA;AASW,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAwB,iBAAiB,CAAC,CAAC;AAChE,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAsB,gBAAgB,CAAC,CAAC;AACzD,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;AAC7B,QAAA,IAAA,CAAA,IAAI,GAAG,OAAO,CAAC,6BAA6B,CAAC,CAAC;AAErD,QAAA,IAAA,CAAA,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;AACnC,QAAA,IAAA,CAAA,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;AACnC,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC;AAC/C,QAAA,IAAA,CAAA,YAAY,GAAkB,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;AAC1D,QAAA,IAAA,CAAA,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC;AACrC,QAAA,IAAA,CAAA,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;QAcvC,IAAM,CAAA,MAAA,GAAkB,IAAI,CAAC;AAkE7B,KAAA;IA9EA,IACW,WAAW,CAAC,KAA+C,EAAA;QACrE,IAAI,CAAC,KAAK,EAAE;YACX,OAAO;AACP,SAAA;QAED,UAAU,CAAC,MAAM,KAAK,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC;KAC9C;AAOD,IAAA,IAAW,QAAQ,GAAA;AAClB,QAAA,OAAO,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,MAAM,CAAC;KAC3C;AAED,IAAA,QAAQ,CAAC,GAAU,EAAA;QAClB,IAAI,EAAE,GAAG,CAAC,MAAM,YAAY,WAAW,CAAC,EAAE;YACzC,OAAO;AACP,SAAA;AAED,QAAA,IAAI,GAAG,CAAC,MAAM,CAAC,SAAS,KAAK,CAAC,EAAE;AAC/B,YAAA,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;AAClC,SAAA;AAED,QAAA,IAAI,GAAG,CAAC,MAAM,CAAC,YAAY,GAAG,GAAG,CAAC,MAAM,CAAC,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,YAAY,GAAG,CAAC,EAAE;AACjF,YAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;AAC9B,SAAA;KACD;IAED,eAAe,GAAA;AACd,QAAA,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YACpB,OAAO;AACP,SAAA;AAED,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI,0BAA0B,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,cAAc,EAAE,CAAC;QAElF,IAAI,IAAI,CAAC,YAAY,EAAE;AACtB,YAAA,IAAI,CAAC,QAAQ;AACZ,kBAAE,IAAI,CACL,SAAS,CAAC,cAAc,CAAC,EACzB,GAAG,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,EACrF,MAAM,CAAC,CAAC,KAAK,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,EAC/B,IAAI,CAAC,CAAC,CAAC,EACP,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAC/B;AACA,iBAAA,SAAS,CAAC,CAAC,aAAa,KAAK,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,CAAC;AAC7E,SAAA;QAED,IAAI,CAAC,UAAU,CAAC,MAAM;aACpB,IAAI,CACJ,GAAG,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,EAAE,CAAC,EACzC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAC/B;AACA,aAAA,SAAS,CAAC,CAAC,gBAAgB,KAAK,IAAI,CAAC,QAAQ,CAAC,qBAAqB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC;KAC9F;AAGD,IAAA,SAAS,CAAC,MAAqB,EAAA;QAC9B,QAAQ,MAAM,CAAC,GAAG;AACjB,YAAA,KAAK,QAAQ,CAAC;AACd,YAAA,KAAK,KAAK;AACT,gBAAA,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;AAC9B,YAAA,KAAK,OAAO;gBACX,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAC/C,YAAA;AACC,gBAAA,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;AACpC,SAAA;KACD;AAED,IAAA,UAAU,CAAC,IAAmB,EAAA;AAC7B,QAAA,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAErC,UAAU,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,kBAAkB,EAAE,CAAC,CAAC;KACvD;8GA1FW,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAtB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,sBAAsB,EAsBpB,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,SAAA,EAAA,mBAAA,EAAA,EAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,aAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,aAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,WAAA,EAAA,SAAA,EAAAA,iBAAkB,ECzCjC,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,g5CAgCA,o2CDfW,UAAU,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,EAAA,yBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAE,SAAS,EAAA,IAAA,EAAA,OAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAE,WAAW,EAAE,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,8MAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,IAAI,EAAE,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,KAAK,mHAAEA,iBAAkB,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,WAAA,EAAA,YAAA,EAAA,QAAA,EAAA,aAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;2FAEjE,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBARlC,SAAS;AACC,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,iBAAiB,mBAGV,uBAAuB,CAAC,MAAM,EACnC,UAAA,EAAA,IAAI,WACP,CAAC,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAEA,iBAAkB,CAAC,EAAA,QAAA,EAAA,g5CAAA,EAAA,MAAA,EAAA,CAAA,6yCAAA,CAAA,EAAA,CAAA;8BAgBnE,WAAW,EAAA,CAAA;sBADrB,SAAS;uBAAC,aAAa,CAAA;gBASU,SAAS,EAAA,CAAA;sBAA1C,YAAY;uBAACA,iBAAkB,CAAA;gBAmDhC,SAAS,EAAA,CAAA;sBADR,YAAY;uBAAC,SAAS,EAAE,CAAC,QAAQ,CAAC,CAAA;;;AEpFpC,MAAM,cAAkB,SAAQ,gBAAmB,CAAA;AAKlD,IAAA,WAAA,CAAoB,UAAsB,EAAE,cAAwB,EAAE,SAAgC,EAAA;AACrG,QAAA,KAAK,EAAE,CAAC;QADW,IAAU,CAAA,UAAA,GAAV,UAAU,CAAY;AAGzC,QAAA,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC;AAChC,YAAA,SAAS,EAAE;AACV,gBAAA,EAAE,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE;AAC7C,gBAAA,EAAE,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAE,SAAS,EAAE;AACnD,aAAA;AACD,YAAA,MAAM,EAAE,cAAc;AACtB,SAAA,CAAC,CAAC;AAEH,QAAA,IAAI,CAAC,SAAS,GAAG,IAAI,eAAe,CAA4B,sBAAsB,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;QAC7G,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAClD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAEvC,UAAU;AACR,aAAA,aAAa,EAAE;AACf,aAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aAC5B,SAAS,CAAC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;KAChC;AAED,IAAA,SAAS,CAAC,KAAQ,EAAA;AACjB,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9B,IAAI,CAAC,KAAK,EAAE,CAAC;KACb;IAEQ,KAAK,GAAA;QACb,KAAK,CAAC,KAAK,EAAE,CAAC;AACd,QAAA,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;AACxB,QAAA,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;KACzB;AACD,CAAA;AAED,MACa,6BAA6B,CAAA;AAD1C,IAAA,WAAA,GAAA;AAEW,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;AAC1B,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAA0B,UAAU,CAAC,CAAC;AACzD,QAAA,IAAA,CAAA,eAAe,GAAG,MAAM,CAAC,sBAAsB,CAAC,CAAC;AACjD,QAAA,IAAA,CAAA,gBAAgB,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC;AACjD,QAAA,IAAA,CAAA,cAAc,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;AA4C5C,KAAA;AA1CA,IAAA,aAAa,CAAI,SAAgC,EAAE,qBAAA,GAAuC,EAAE,EAAA;QAC3F,MAAM,aAAa,GAAG,IAAI,CAAC,kBAAkB,CAAC,qBAAqB,CAAC,CAAC;QACrE,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAEtD,OAAO,IAAI,cAAc,CAAC,UAAU,EAAE,IAAI,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC;KACtE;IAES,kBAAkB,CAAC,wBAAuC,EAAE,EAAA;AACrE,QAAA,MAAM,aAAa,GAAkB,qBAAqB,IAAI,EAAE,CAAC;AACjE,QAAA,aAAa,CAAC,gBAAgB,GAAG,IAAI,CAAC,eAAe,CAAC,mBAAmB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,aAAa,CAAC;AACxG,YAAA;AACC,gBAAA,OAAO,EAAE,OAAO;AAChB,gBAAA,OAAO,EAAE,QAAQ;AACjB,gBAAA,QAAQ,EAAE,OAAO;AACjB,gBAAA,QAAQ,EAAE,KAAK;AACf,aAAA;AACD,YAAA;AACC,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,OAAO,EAAE,QAAQ;AACjB,gBAAA,QAAQ,EAAE,KAAK;AACf,gBAAA,QAAQ,EAAE,KAAK;AACf,aAAA;AACD,YAAA;AACC,gBAAA,OAAO,EAAE,OAAO;AAChB,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,QAAQ,EAAE,OAAO;AACjB,gBAAA,QAAQ,EAAE,QAAQ;AAClB,aAAA;AACD,YAAA;AACC,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,QAAQ,EAAE,KAAK;AACf,gBAAA,QAAQ,EAAE,QAAQ;AAClB,aAAA;AACD,SAAA,CAAC,CAAC;QACH,aAAa,CAAC,cAAc,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,CAAC;QAClE,aAAa,CAAC,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,WAAW,CAAC;AACnE,QAAA,aAAa,CAAC,SAAS,GAAG,OAAO,CAAC;AAClC,QAAA,aAAa,CAAC,QAAQ,GAAG,OAAO,CAAC;AAEjC,QAAA,OAAO,aAAa,CAAC;KACrB;8GAhDW,6BAA6B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;kHAA7B,6BAA6B,EAAA,CAAA,CAAA,EAAA;;2FAA7B,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBADzC,UAAU;;;ACvCX,IAAI,QAAQ,GAAG,CAAC,CAAC;AAEjB,SAAS,eAAe,GAAA;IACvB,OAAO,QAAQ,EAAE,CAAC;AACnB,CAAC;AAED,SAAS,kBAAkB,GAAA;AAC1B,IAAA,MAAM,UAAU,GAAG,MAAM,CAA0B,UAAU,CAAC,CAAC;IAE/D,SAAS,QAAQ,CAAC,IAAiB,EAAA;QAClC,IAAI,IAAI,YAAY,gBAAgB,EAAE;AACrC,YAAA,OAAO,IAAI,CAAC;AACZ,SAAA;AAED,QAAA,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;AACxB,YAAA,OAAO,SAAS,CAAC;AACjB,SAAA;AAED,QAAA,OAAO,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;KACpC;AAED,IAAA,OAAO,QAAQ,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;AAC3C,CAAC;AAED,SAAS,oBAAoB,GAAA;AAC5B,IAAA,OAAO,MAAM,CAAC,YAAY,CAAC,EAAE,EAAE,IAAI,CAAA,gBAAA,EAAmB,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;AAC3E,CAAC;SAEe,2BAA2B,GAAA;IAC1C,OAAO;AACN,QAAA,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,eAAe,EAAE;AACnD,QAAA,EAAE,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,kBAAkB,EAAE;AACzD,QAAA,EAAE,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,oBAAoB,EAAE;KAC9D,CAAC;AACH,CAAC;AAED,MACM,wBAAyB,SAAQ,gBAAgB,CAAA;AAItD,IAAA,WAAA,GAAA;QACC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;AAJnC,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAC,eAAe,CAAC,CAAC;AACxC,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;KAIpC;IAEkB,gBAAgB,GAAA;QAClC,KAAK,CAAC,gBAAgB,EAAE,CAAC;QACzB,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,iBAAiB,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QAC3E,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QACvD,IAAI,CAAC,iBAAiB,CAAC,EAAE,GAAG,+BAA+B,IAAI,CAAC,QAAQ,CAAA,CAAE,CAAC;KAC3E;8GAbI,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;kHAAxB,wBAAwB,EAAA,CAAA,CAAA,EAAA;;2FAAxB,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAD7B,UAAU;;SAiBK,+BAA+B,GAAA;IAC9C,OAAO;AACN,QAAA;AACC,YAAA,OAAO,EAAE,gBAAgB;AACzB,YAAA,QAAQ,EAAE,wBAAwB;AAClC,SAAA;KACD,CAAC;AACH;;AClEA;AAeA,MAkBa,4BAA4B,CAAA;AAlBzC,IAAA,WAAA,GAAA;QAmB0B,IAAQ,CAAA,QAAA,GAAG,CAAC,CAAC;QAE7B,IAAW,CAAA,WAAA,GAAG,EAAE,CAAC;QAI1B,IAAS,CAAA,SAAA,GAAG,KAAK,CAAC;QAQlB,IAAQ,CAAA,QAAA,GAAG,KAAK,CAAC;AAYV,QAAA,IAAA,CAAA,YAAY,GAAG,IAAI,eAAe,CAAC,KAAK,CAAC,CAAC;QAG1C,IAAI,CAAA,IAAA,GAAG,UAAU,CAAC;AAWzB,QAAA,IAAA,CAAA,aAAa,GAAmB;AAC/B,YAAA,WAAW,EAAE,IAAI;AACjB,YAAA,aAAa,EAAE,kCAAkC;SACjD,CAAC;QAUO,IAAc,CAAA,cAAA,GAAwC,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAChI,IAAS,CAAA,SAAA,GAAqD,oCAAoC,CAAC;AAGlG,QAAA,IAAA,CAAA,UAAU,GAAG,IAAI,YAAY,EAAU,CAAC;AACxC,QAAA,IAAA,CAAA,QAAQ,GAAG,IAAI,YAAY,EAAQ,CAAC;AACpC,QAAA,IAAA,CAAA,YAAY,GAAG,IAAI,YAAY,EAAQ,CAAC;AAalD,QAAA,IAAA,CAAA,QAAQ,GAAG,IAAI,aAAa,CAAM,CAAC,CAAC,CAAC;AACrC,QAAA,IAAA,CAAA,QAAQ,GAAG,IAAI,aAAa,CAAU,CAAC,CAAC,CAAC;QACzC,IAAI,CAAA,IAAA,GAAkB,IAAI,CAAC;AAC3B,QAAA,IAAA,CAAA,IAAI,GAAG,OAAO,CAAC,6BAA6B,CAAC,CAAC;AAmBpC,QAAA,IAAA,CAAA,iBAAiB,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC;QAC9C,IAAmB,CAAA,mBAAA,GAAgB,MAAM,CAAC,gBAAgB,CAAC,CAAC,mBAAmB,EAAE,CAAC;AAClF,QAAA,IAAA,CAAA,eAAe,GAAG,MAAM,CAAC,6BAA6B,CAAC,CAAC;AAExD,QAAA,IAAA,CAAA,KAAK,GAA4B,MAAM,CAAC,YAAY,CAAC,CAAC;AACtD,QAAA,IAAA,CAAA,OAAO,GAAW,MAAM,CAAC,eAAe,CAAC,CAAC;AA+EpD,KAAA;AA1KA,IAAA,IAAI,UAAU,GAAA;AACb,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;KAChC;AAMD,IAAA,IACI,QAAQ,GAAA;QACX,OAAO,IAAI,CAAC,KAAK,KAAK,IAAI,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC;KACvD;AAED,IAAA,IAEW,WAAW,GAAA;AACrB,QAAA,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;KAC/B;AASD,IAAA,IACI,YAAY,GAAA;AACf,QAAA,OAAO,IAAI,CAAC,mBAAmB,CAAC,EAAE,CAAC;KACnC;IAQD,IAAa,OAAO,CAAC,KAAc,EAAA;AAClC,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC1B;IAED,IAAa,OAAO,CAAC,OAAY,EAAA;AAChC,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KAC5B;AAUD,IAAA,IAAW,KAAK,GAAA;QACf,OAAO,IAAI,CAAC,MAAM,CAAC;KACnB;IAED,IAAc,KAAK,CAAC,KAAQ,EAAA;AAC3B,QAAA,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;AACpB,QAAA,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;KACtC;AAkBD,IAAA,SAAS,CAAC,MAAqB,EAAA;AAC9B,QAAA,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACtB,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,MAAM,CAAC,eAAe,EAAE,CAAC;YACzB,MAAM,CAAC,cAAc,EAAE,CAAC;AACxB,SAAA;KACD;AASD,IAAA,gBAAgB,CAAC,QAA4B,EAAA;AAC5C,QAAA,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;KACzB;AAED,IAAA,iBAAiB,CAAC,SAAqB,EAAA;AACtC,QAAA,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;KAC3B;AAED,IAAA,gBAAgB,CAAC,UAAmB,EAAA;AACnC,QAAA,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC;KAC3B;IAED,WAAW,GAAA;AACV,QAAA,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,CAAC;KACvB;IAED,QAAQ,GAAA;QACP,IAAI,IAAI,CAAC,KAAK,EAAE;YACf,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC;AAC7B,SAAA;KACD;AAED,IAAA,UAAU,CAAC,KAAiB,EAAA;QAC3B,KAAK,CAAC,eAAe,EAAE,CAAC;AACxB,QAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;KACvB;IAED,SAAS,GAAA;AACR,QAAA,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,QAAQ,EAAE;YACtC,OAAO;AACP,SAAA;AAED,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,aAAa,CACjD;YACC,YAAY,EAAE,IAAI,CAAC,KAAK;YACxB,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,SAAS,EAAE,IAAI,CAAC,SAAS;AACzB,SAAA,EACD,IAAI,CAAC,aAAa,CAClB,CAAC;AAEF,QAAA,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;AACzE,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;AAC7D,QAAA,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;QACrE,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,IAAI,KAAI;AAC5C,YAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC3B,YAAA,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;AAClB,SAAC,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC,QAAQ,KAAI;AAC1D,YAAA,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAC;AACjC,YAAA,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;AACvC,SAAC,CAAC,CAAC;AACH,QAAA,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;KACxD;IAEM,UAAU,GAAA;AAChB,QAAA,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACtB,OAAO;AACP,SAAA;AACD,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC9B,QAAA,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;AACtB,QAAA,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;KAC1B;AAEM,IAAA,UAAU,CAAC,KAAQ,EAAA;AACzB,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;KACnB;AAEM,IAAA,WAAW,CAAC,KAAQ,EAAA;AAC1B,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;AACnB,QAAA,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,CAAC;AACvB,QAAA,IAAI,CAAC,SAAS,IAAI,CAAC;KACnB;8GAlLW,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAA5B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,4BAA4B,EAX7B,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,EAAA,WAAA,EAAA,aAAA,EAAA,SAAA,EAAA,WAAA,EAAA,QAAA,EAAA,UAAA,EAAA,aAAA,EAAA,eAAA,EAAA,OAAA,EAAA,SAAA,EAAA,OAAA,EAAA,SAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,SAAA,EAAA,WAAA,EAAA,QAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,EAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,UAAA,EAAA,YAAA,EAAA,cAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,eAAA,EAAA,mBAAA,EAAA,eAAA,EAAA,mBAAA,EAAA,mBAAA,EAAA,mBAAA,EAAA,OAAA,EAAA,mBAAA,EAAA,EAAA,UAAA,EAAA,EAAA,UAAA,EAAA,eAAA,EAAA,oBAAA,EAAA,gBAAA,EAAA,mBAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,kBAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,kBAAA,EAAA,WAAA,EAAA,WAAA,EAAA,4BAAA,EAAA,uBAAA,EAAA,oBAAA,EAAA,mBAAA,EAAA,EAAA,EAAA,SAAA,EAAA;AACV,YAAA;AACC,gBAAA,OAAO,EAAE,iBAAiB;AAC1B,gBAAA,WAAW,EAAE,UAAU,CAAC,MAAM,4BAA4B,CAAC;AAC3D,gBAAA,KAAK,EAAE,IAAI;AACX,aAAA;AACD,YAAA,+BAA+B,EAAE;AACjC,YAAA,2BAA2B,EAAE;YAC7B,6BAA6B;AAC7B,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC/BF,ugBAUA,EDWsB,MAAA,EAAA,CAAA,mqQAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,uBAAuB,EAAE,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,gBAAA,EAAA,qBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,IAAI,4FAAE,aAAa,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;2FAYrD,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBAlBxC,SAAS;AACC,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,kBAAkB,mBAGX,uBAAuB,CAAC,MAAM,EAAA,UAAA,EACnC,IAAI,EACP,OAAA,EAAA,CAAC,SAAS,EAAE,uBAAuB,EAAE,IAAI,EAAE,aAAa,CAAC,EACvD,SAAA,EAAA;AACV,wBAAA;AACC,4BAAA,OAAO,EAAE,iBAAiB;AAC1B,4BAAA,WAAW,EAAE,UAAU,CAAC,kCAAkC,CAAC;AAC3D,4BAAA,KAAK,EAAE,IAAI;AACX,yBAAA;AACD,wBAAA,+BAA+B,EAAE;AACjC,wBAAA,2BAA2B,EAAE;wBAC7B,6BAA6B;AAC7B,qBAAA,EAAA,QAAA,EAAA,ugBAAA,EAAA,MAAA,EAAA,CAAA,mqQAAA,CAAA,EAAA,CAAA;8BAGwB,QAAQ,EAAA,CAAA;sBAAhC,WAAW;uBAAC,UAAU,CAAA;gBAEd,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBAIN,SAAS,EAAA,CAAA;sBAFR,KAAK;;sBACL,WAAW;uBAAC,oBAAoB,CAAA;gBASjC,QAAQ,EAAA,CAAA;sBAFP,KAAK;;sBACL,WAAW;uBAAC,mBAAmB,CAAA;gBAI5B,QAAQ,EAAA,CAAA;sBADX,WAAW;uBAAC,iBAAiB,CAAA;gBAOnB,WAAW,EAAA,CAAA;sBAFrB,WAAW;uBAAC,kBAAkB,CAAA;;sBAC9B,WAAW;uBAAC,oBAAoB,CAAA;gBAO1B,IAAI,EAAA,CAAA;sBADV,WAAW;uBAAC,WAAW,CAAA;gBAIjB,gBAAgB,EAAA,CAAA;sBADtB,WAAW;uBAAC,4BAA4B,CAAA;gBAIrC,YAAY,EAAA,CAAA;sBADf,WAAW;uBAAC,oBAAoB,CAAA;gBAMjC,aAAa,EAAA,CAAA;sBADZ,KAAK;gBAMO,OAAO,EAAA,CAAA;sBAAnB,KAAK;gBAIO,OAAO,EAAA,CAAA;sBAAnB,KAAK;gBAIG,cAAc,EAAA,CAAA;sBAAtB,KAAK;gBACG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBACG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBAEI,UAAU,EAAA,CAAA;sBAAnB,MAAM;gBACG,QAAQ,EAAA,CAAA;sBAAjB,MAAM;gBACG,YAAY,EAAA,CAAA;sBAArB,MAAM;gBA2BP,SAAS,EAAA,CAAA;sBAJR,YAAY;uBAAC,eAAe,EAAE,CAAC,QAAQ,CAAC,CAAA;;sBACxC,YAAY;uBAAC,eAAe,EAAE,CAAC,QAAQ,CAAC,CAAA;;sBACxC,YAAY;uBAAC,mBAAmB,EAAE,CAAC,QAAQ,CAAC,CAAA;;sBAC5C,YAAY;uBAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAA;;;AEvHlC;;AAEG;;;;"}
1
+ {"version":3,"file":"lucca-front-ng-simple-select.mjs","sources":["../../../packages/ng/simple-select/option/option.token.ts","../../../packages/ng/simple-select/option/default-option.component.ts","../../../packages/ng/simple-select/option/disabled.directive.ts","../../../packages/ng/simple-select/option/displayer.directive.ts","../../../packages/ng/simple-select/select.model.ts","../../../packages/ng/simple-select/option/option-outlet.directive.ts","../../../packages/ng/simple-select/option/option.component.ts","../../../packages/ng/simple-select/option/option.component.html","../../../packages/ng/simple-select/option/option.directive.ts","../../../packages/ng/simple-select/select.translate.ts","../../../packages/ng/simple-select/panel/panel.models.ts","../../../packages/ng/simple-select/panel/panel.component.ts","../../../packages/ng/simple-select/panel/panel.component.html","../../../packages/ng/simple-select/input/panel-ref.factory.ts","../../../packages/ng/simple-select/input/select-input.models.ts","../../../packages/ng/simple-select/input/select-input.component.ts","../../../packages/ng/simple-select/input/select-input.component.html","../../../packages/ng/simple-select/lucca-front-ng-simple-select.ts"],"sourcesContent":["import { InjectionToken, Provider } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\nexport interface ILuOptionContext<T> {\r\n\tisDisabled$: BehaviorSubject<boolean>;\r\n\toption$: BehaviorSubject<T | undefined>;\r\n\tdestroy(): void;\r\n}\r\n\r\nexport const LU_OPTION_CONTEXT = new InjectionToken<ILuOptionContext<unknown>>('LuOptionContext');\r\n\r\nfunction optionContextFactory<T>(): ILuOptionContext<T> {\r\n\tconst isDisabled$ = new BehaviorSubject(false);\r\n\tconst option$ = new BehaviorSubject<T | undefined>(undefined);\r\n\treturn {\r\n\t\tisDisabled$,\r\n\t\toption$,\r\n\t\tdestroy(): void {\r\n\t\t\tisDisabled$.complete();\r\n\t\t\toption$.complete();\r\n\t\t},\r\n\t};\r\n}\r\n\r\nexport function provideOptionContext(): Provider {\r\n\treturn {\r\n\t\tprovide: LU_OPTION_CONTEXT,\r\n\t\tuseFactory: optionContextFactory,\r\n\t};\r\n}\r\n","import { AsyncPipe, NgIf } from '@angular/common';\r\nimport { Component, inject } from '@angular/core';\r\nimport { ILuOptionContext, LU_OPTION_CONTEXT } from './option.token';\r\n\r\n@Component({\r\n\tselector: 'lu-simple-select-default-option',\r\n\tstandalone: true,\r\n\timports: [AsyncPipe, NgIf],\r\n\ttemplate: `<ng-container *ngIf=\"context.option$ | async as option\">{{ option?.name ?? option }}</ng-container>`,\r\n})\r\nexport class LuSimpleSelectDefaultOptionComponent {\r\n\tpublic context = inject<ILuOptionContext<{ name?: string }>>(LU_OPTION_CONTEXT);\r\n}\r\n","import { Directive, inject, Input } from '@angular/core';\r\nimport { LU_OPTION_CONTEXT } from './option.token';\r\n\r\n@Directive({\r\n\tselector: '[luDisabledOption]',\r\n\tstandalone: true,\r\n})\r\nexport class LuDisabledOptionDirective {\r\n\tprivate context = inject(LU_OPTION_CONTEXT);\r\n\r\n\t@Input('luDisabledOption') public set isDisabled(disabled: boolean | null) {\r\n\t\tif (disabled !== null) {\r\n\t\t\tthis.context.isDisabled$.next(disabled);\r\n\t\t}\r\n\t}\r\n}\r\n","import { Directive, Input, TemplateRef } from '@angular/core';\r\nimport { LuSimpleSelectInputComponent } from '../input';\r\nimport { LuOptionContext } from '../select.model';\r\n\r\n@Directive({\r\n\tselector: '[luDisplayer]',\r\n\tstandalone: true,\r\n})\r\nexport class LuDisplayerDirective<T> {\r\n\t@Input('luDisplayerSelect') set select(select: LuSimpleSelectInputComponent<T>) {\r\n\t\tselect.valueTpl = this.templateRef;\r\n\t}\r\n\r\n\tpublic constructor(private templateRef: TemplateRef<LuOptionContext<T>>) {}\r\n\r\n\tpublic static ngTemplateContextGuard<T>(_dir: LuDisplayerDirective<T>, ctx: unknown): ctx is LuOptionContext<T> {\r\n\t\treturn true;\r\n\t}\r\n}\r\n","import { InjectionToken, TemplateRef, Type } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\n\r\nexport interface ILuSelectPanelData<T> {\r\n\toptions$: Observable<T[]>;\r\n\tloading$: Observable<boolean>;\r\n\toptionComparer: (option1: T, option2: T) => boolean;\r\n\tinitialValue: T | undefined;\r\n\toptionTpl: TemplateRef<LuOptionContext<T>> | Type<unknown>;\r\n\tsearchable: boolean;\r\n}\r\n\r\nexport interface LuOptionContext<T> {\r\n\t$implicit: T;\r\n}\r\n\r\nexport const SELECT_ID = new InjectionToken<number>('LuSelectPanelData');\r\nexport const SELECT_PANEL_DATA = new InjectionToken<unknown>('LuSelectId');\r\nexport const SELECT_LABEL = new InjectionToken<HTMLLabelElement | undefined>('LuSelectLabel');\r\nexport const SELECT_LABEL_ID = new InjectionToken<string>('LuSelectLabelId');\r\n","import { ComponentRef, Directive, EmbeddedViewRef, inject, Injector, Input, OnChanges, OnDestroy, SimpleChanges, TemplateRef, Type, ViewContainerRef } from '@angular/core';\r\nimport { LuOptionContext } from '../select.model';\r\nimport { LU_OPTION_CONTEXT, provideOptionContext } from './option.token';\r\n\r\n@Directive({\r\n\tselector: '[luOptionOutlet]',\r\n\tstandalone: true,\r\n\tproviders: [provideOptionContext()],\r\n})\r\nexport class LuOptionOutletDirective<T> implements OnChanges, OnDestroy {\r\n\t@Input() luOptionOutlet?: Type<unknown> | TemplateRef<LuOptionContext<T>>;\r\n\t@Input() luOptionOutletValue: T | undefined;\r\n\r\n\tprivate viewContainerRef = inject(ViewContainerRef);\r\n\tprivate injector = inject(Injector);\r\n\tprivate embeddedViewRef?: EmbeddedViewRef<LuOptionContext<T>>;\r\n\tprivate componentRef?: ComponentRef<unknown>;\r\n\tprivate optionContext = inject(LU_OPTION_CONTEXT);\r\n\r\n\tngOnChanges(changes: SimpleChanges): void {\r\n\t\tif (changes['luOptionOutlet'] || !this.luOptionOutletValue) {\r\n\t\t\tthis.clearContainer();\r\n\t\t}\r\n\r\n\t\tconst hasRef = this.embeddedViewRef || this.componentRef;\r\n\r\n\t\tif (changes['luOptionOutlet'] || (changes['luOptionOutletValue'] && !hasRef)) {\r\n\t\t\tthis.createComponent();\r\n\t\t} else if (changes['luOptionOutletValue']) {\r\n\t\t\tthis.updateRefValue();\r\n\t\t}\r\n\t}\r\n\r\n\tngOnDestroy(): void {\r\n\t\tthis.optionContext.destroy();\r\n\t}\r\n\r\n\tprivate clearContainer(): void {\r\n\t\tthis.viewContainerRef.clear();\r\n\t\tthis.embeddedViewRef?.destroy();\r\n\t\tthis.componentRef?.destroy();\r\n\t\tthis.embeddedViewRef = undefined;\r\n\t\tthis.componentRef = undefined;\r\n\t}\r\n\r\n\tprivate createComponent(): void {\r\n\t\tif (!this.luOptionOutlet || !this.luOptionOutletValue) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tif (this.luOptionOutlet instanceof TemplateRef) {\r\n\t\t\tthis.embeddedViewRef = this.viewContainerRef.createEmbeddedView(this.luOptionOutlet, { $implicit: this.luOptionOutletValue }, { injector: this.injector });\r\n\t\t} else {\r\n\t\t\tthis.optionContext.option$.next(this.luOptionOutletValue);\r\n\t\t\tthis.componentRef = this.viewContainerRef.createComponent(this.luOptionOutlet, { injector: this.injector });\r\n\t\t}\r\n\t}\r\n\r\n\tprivate updateRefValue(): void {\r\n\t\tif (!this.luOptionOutletValue) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tif (this.embeddedViewRef) {\r\n\t\t\tthis.embeddedViewRef.context = { $implicit: this.luOptionOutletValue };\r\n\t\t} else if (this.componentRef) {\r\n\t\t\tthis.optionContext.option$.next(this.luOptionOutletValue);\r\n\t\t}\r\n\t}\r\n}\r\n","import { Highlightable } from '@angular/cdk/a11y';\r\nimport { AsyncPipe } from '@angular/common';\r\nimport { AfterViewInit, ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, HostBinding, inject, Input, OnDestroy, TemplateRef, Type, ViewChild } from '@angular/core';\r\nimport { asyncScheduler, BehaviorSubject, observeOn, Subscription } from 'rxjs';\r\nimport { LuOptionContext, SELECT_ID } from '../select.model';\r\nimport { LuOptionOutletDirective } from './option-outlet.directive';\r\nimport { ILuOptionContext, LU_OPTION_CONTEXT } from './option.token';\r\n\r\n@Component({\r\n\tselector: 'lu-select-option',\r\n\ttemplateUrl: './option.component.html',\r\n\tstyleUrls: ['./option.component.scss'],\r\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\r\n\tstandalone: true,\r\n\timports: [AsyncPipe, LuOptionOutletDirective],\r\n})\r\nexport class LuOptionComponent<T> implements Highlightable, AfterViewInit, OnDestroy {\r\n\t@HostBinding('class.optionItem')\r\n\tpublic hasOptionItemClass = true;\r\n\r\n\t@Input()\r\n\tpublic optionTpl: TemplateRef<LuOptionContext<T>> | Type<unknown> | undefined;\r\n\r\n\t@Input()\r\n\t@HostBinding('attr.aria-selected')\r\n\tisSelected = false;\r\n\r\n\t@Input() option?: T;\r\n\r\n\t@Input()\r\n\tpublic optionIndex = 0;\r\n\r\n\tisHighlighted$ = new BehaviorSubject(false);\r\n\r\n\t/**\r\n\t * Whether option is disabled. Used by ListKeyManager.\r\n\t */\r\n\tdisabled = false;\r\n\r\n\t@ViewChild(LuOptionOutletDirective, { read: LU_OPTION_CONTEXT, static: true })\r\n\tprivate optionContext?: ILuOptionContext<T>;\r\n\r\n\tprivate cdr = inject(ChangeDetectorRef);\r\n\tprivate subscription?: Subscription;\r\n\r\n\t@HostBinding('attr.role')\r\n\tpublic role = 'option';\r\n\r\n\t@HostBinding('attr.id')\r\n\tpublic get id(): string {\r\n\t\treturn `lu-select-${this.selectId}-option-${this.optionIndex}`;\r\n\t}\r\n\r\n\tprotected elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\r\n\tprotected selectId = inject(SELECT_ID);\r\n\r\n\tngOnDestroy(): void {\r\n\t\tthis.subscription?.unsubscribe();\r\n\t}\r\n\r\n\tngAfterViewInit(): void {\r\n\t\tthis.subscription = this.optionContext.isDisabled$.pipe(observeOn(asyncScheduler)).subscribe((isDisabled) => {\r\n\t\t\tthis.disabled = isDisabled;\r\n\t\t\tthis.cdr.markForCheck();\r\n\t\t});\r\n\t}\r\n\r\n\tsetActiveStyles(): void {\r\n\t\tthis.isHighlighted$.next(true);\r\n\t\tthis.elementRef.nativeElement.scrollIntoView({ block: 'center' });\r\n\t}\r\n\r\n\tsetInactiveStyles(): void {\r\n\t\tthis.isHighlighted$.next(false);\r\n\t}\r\n\r\n\tselectOption($event: Event): void {\r\n\t\tif (this.disabled) {\r\n\t\t\t$event.stopPropagation();\r\n\t\t}\r\n\t}\r\n}\r\n","<div\r\n\tclass=\"optionItem-value\"\r\n\t[class.is-selected]=\"isSelected\"\r\n\t[class.is-highlighted]=\"isHighlighted$ | async\"\r\n\t[class.is-disabled]=\"disabled\"\r\n\t(click)=\"selectOption($event)\"\r\n>\r\n\t<ng-container *luOptionOutlet=\"optionTpl; value: option\"></ng-container>\r\n</div>\r\n","import { Directive, Input, TemplateRef } from '@angular/core';\r\nimport { LuSimpleSelectInputComponent } from '../input';\r\nimport { LuOptionContext } from '../select.model';\r\n\r\n@Directive({\r\n\tselector: '[luOption]',\r\n\tstandalone: true,\r\n})\r\nexport class LuOptionDirective<T> {\r\n\t@Input('luOptionSelect') set select(select: LuSimpleSelectInputComponent<T>) {\r\n\t\tselect.optionTpl = this.templateRef;\r\n\t}\r\n\r\n\tpublic constructor(private templateRef: TemplateRef<LuOptionContext<T>>) {}\r\n\r\n\tpublic static ngTemplateContextGuard<T>(_dir: LuOptionDirective<T>, ctx: unknown): ctx is LuOptionContext<T> {\r\n\t\treturn true;\r\n\t}\r\n}\r\n","import { InjectionToken } from '@angular/core';\r\nimport { ILuTranslation } from '@lucca-front/ng/core';\r\n\r\nexport const LU_SIMPLE_SELECT_TRANSLATIONS = new InjectionToken('LuSimpleSelectTranslations', {\r\n\tfactory: () => luSimpleSelectTranslations,\r\n});\r\n\r\nexport interface ILuSimpleSelectLabel {\r\n\tplaceholder: string;\r\n\tclear: string;\r\n\tclearSearch: string;\r\n\temptyResults: string;\r\n}\r\n\r\nexport const luSimpleSelectTranslations: ILuTranslation<ILuSimpleSelectLabel> = {\r\n\ten: {\r\n\t\tplaceholder: 'Select an option',\r\n\t\tclear: 'Clear',\r\n\t\tclearSearch: 'Clear search',\r\n\t\temptyResults: 'No results',\r\n\t},\r\n\tfr: {\r\n\t\tplaceholder: 'Sélectionnez une option',\r\n\t\tclear: 'Effacer',\r\n\t\tclearSearch: 'Vider la recherche',\r\n\t\temptyResults: 'Aucun résultat pour votre recherche',\r\n\t},\r\n\tde: {\r\n\t\tplaceholder: 'Wählen Sie eine Option',\r\n\t\tclear: 'Löschen',\r\n\t\tclearSearch: 'Suche löschen',\r\n\t\temptyResults: 'Keine Ergebnisse für Ihre Suche',\r\n\t},\r\n\tes: {\r\n\t\tplaceholder: 'Seleccione una opción',\r\n\t\tclear: 'Borrar',\r\n\t\tclearSearch: 'Borrar búsqueda',\r\n\t\temptyResults: 'No hay resultados para su búsqueda',\r\n\t},\r\n\tpt: {\r\n\t\tplaceholder: 'Selecione uma opção',\r\n\t\tclear: 'Limpar',\r\n\t\tclearSearch: 'Limpar pesquisa',\r\n\t\temptyResults: 'Nenhum resultado para sua pesquisa',\r\n\t},\r\n};\r\n","import { EventEmitter } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\n\r\nexport abstract class LuSelectPanelRef<T> {\r\n\tclosed = new EventEmitter<void>();\r\n\tpreviousPage = new EventEmitter<void>();\r\n\tnextPage = new EventEmitter<void>();\r\n\tvalueChanged = new EventEmitter<T>();\r\n\tclueChanged = new EventEmitter<string>();\r\n\tactiveOptionIdChanged = new EventEmitter<string>();\r\n\toptions$: Observable<T>;\r\n\r\n\tabstract emitValue(value: T): void;\r\n\tclose(): void {\r\n\t\tthis.closed.next();\r\n\t\tthis.closed.complete();\r\n\t\tthis.nextPage.complete();\r\n\t\tthis.previousPage.complete();\r\n\t\tthis.valueChanged.complete();\r\n\t\tthis.clueChanged.emit(null);\r\n\t\tthis.clueChanged.complete();\r\n\t\tthis.activeOptionIdChanged.emit(undefined);\r\n\t\tthis.activeOptionIdChanged.complete();\r\n\t}\r\n}\r\n","import { A11yModule, ActiveDescendantKeyManager } from '@angular/cdk/a11y';\r\nimport { AsyncPipe, NgFor, NgIf } from '@angular/common';\r\nimport { AfterViewInit, ChangeDetectionStrategy, Component, ElementRef, HostListener, inject, QueryList, ViewChild, ViewChildren } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { getIntl } from '@lucca-front/ng/core';\r\nimport { asyncScheduler, filter, map, observeOn, take, takeUntil } from 'rxjs';\r\nimport { ɵLuOptionComponent } from '../option/index';\r\nimport { ILuSelectPanelData, SELECT_ID, SELECT_PANEL_DATA } from '../select.model';\r\nimport { LU_SIMPLE_SELECT_TRANSLATIONS } from '../select.translate';\r\nimport { LuSelectPanelRef } from './panel.models';\r\n\r\n@Component({\r\n\tselector: 'lu-select-panel',\r\n\ttemplateUrl: './panel.component.html',\r\n\tstyleUrls: ['./panel.component.scss'],\r\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\r\n\tstandalone: true,\r\n\timports: [A11yModule, AsyncPipe, FormsModule, NgIf, NgFor, ɵLuOptionComponent],\r\n})\r\nexport class LuSelectPanelComponent<T> implements AfterViewInit {\r\n\tprotected panelData = inject<ILuSelectPanelData<T>>(SELECT_PANEL_DATA);\r\n\tpublic panelRef = inject<LuSelectPanelRef<T>>(LuSelectPanelRef);\r\n\tpublic selectId = inject(SELECT_ID);\r\n\tpublic intl = getIntl(LU_SIMPLE_SELECT_TRANSLATIONS);\r\n\r\n\toptions$ = this.panelData.options$;\r\n\tloading$ = this.panelData.loading$;\r\n\toptionComparer = this.panelData.optionComparer;\r\n\tinitialValue: T | undefined = this.panelData.initialValue;\r\n\toptionTpl = this.panelData.optionTpl;\r\n\tsearchable = this.panelData.searchable;\r\n\r\n\t@ViewChild('searchInput')\r\n\tpublic set searchInput(input: ElementRef<HTMLInputElement> | undefined) {\r\n\t\tif (!input) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tsetTimeout(() => input.nativeElement.focus());\r\n\t}\r\n\r\n\t@ViewChildren(ɵLuOptionComponent) optionsQL: QueryList<ɵLuOptionComponent<T>>;\r\n\tprivate keyManager: ActiveDescendantKeyManager<ɵLuOptionComponent<T>>;\r\n\r\n\tsearch: string | null = null;\r\n\r\n\tpublic get selected(): T | undefined {\r\n\t\treturn this.keyManager?.activeItem?.option;\r\n\t}\r\n\r\n\tonScroll(evt: Event): void {\r\n\t\tif (!(evt.target instanceof HTMLElement)) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tif (evt.target.scrollTop === 0) {\r\n\t\t\tthis.panelRef.previousPage.emit();\r\n\t\t}\r\n\r\n\t\tif (evt.target.scrollHeight - evt.target.scrollTop - evt.target.clientHeight < 1) {\r\n\t\t\tthis.panelRef.nextPage.emit();\r\n\t\t}\r\n\t}\r\n\r\n\tngAfterViewInit(): void {\r\n\t\tif (!this.optionsQL) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.keyManager = new ActiveDescendantKeyManager(this.optionsQL).withHomeAndEnd();\r\n\r\n\t\tif (this.initialValue) {\r\n\t\t\tthis.options$\r\n\t\t\t\t?.pipe(\r\n\t\t\t\t\tobserveOn(asyncScheduler),\r\n\t\t\t\t\tmap((options) => options.findIndex((o) => this.optionComparer(o, this.initialValue))),\r\n\t\t\t\t\tfilter((index) => index !== -1),\r\n\t\t\t\t\ttake(1),\r\n\t\t\t\t\ttakeUntil(this.panelRef.closed),\r\n\t\t\t\t)\r\n\t\t\t\t.subscribe((selectedIndex) => this.keyManager.setActiveItem(selectedIndex));\r\n\t\t}\r\n\r\n\t\tthis.keyManager.change\r\n\t\t\t.pipe(\r\n\t\t\t\tmap(() => this.keyManager.activeItem?.id),\r\n\t\t\t\ttakeUntil(this.panelRef.closed),\r\n\t\t\t)\r\n\t\t\t.subscribe((activeDescendant) => this.panelRef.activeOptionIdChanged.emit(activeDescendant));\r\n\t}\r\n\r\n\t@HostListener('keydown', ['$event'])\r\n\tonKeyDown($event: KeyboardEvent): void {\r\n\t\tswitch ($event.key) {\r\n\t\t\tcase 'Escape':\r\n\t\t\tcase 'Tab':\r\n\t\t\t\treturn this.panelRef.close();\r\n\t\t\tcase 'Enter':\r\n\t\t\t\treturn this.panelRef.emitValue(this.selected);\r\n\t\t\tdefault:\r\n\t\t\t\tthis.keyManager?.onKeydown($event);\r\n\t\t}\r\n\t}\r\n\r\n\tupdateClue(clue: string | null): void {\r\n\t\tthis.search = clue;\r\n\t\tthis.panelRef.clueChanged.emit(clue);\r\n\r\n\t\tsetTimeout(() => this.keyManager.setFirstItemActive());\r\n\t}\r\n}\r\n","<div\r\n\tclass=\"lu-picker-panel lu-option-picker-panel\"\r\n\trole=\"dialog\"\r\n\tcdkTrapFocus\r\n\t*ngIf=\"{ options: options$ | async } as ctx\"\r\n\t[cdkTrapFocusAutoCapture]=\"true\"\r\n>\r\n\t<div class=\"lu-picker-content\" [class.is-loading]=\"loading$ | async\" tabindex=\"0\" (scroll)=\"onScroll($event)\">\r\n\t\t<ng-container *ngIf=\"searchable\">\r\n\t\t\t<div class=\"panel-search textfield mod-search\">\r\n\t\t\t\t<input #searchInput class=\"textfield-input\" [ngModel]=\"search\" (ngModelChange)=\"updateClue($event)\" />\r\n\t\t\t</div>\r\n\r\n\t\t\t<div class=\"optionPlaceholder\" *ngIf=\"search && !ctx.options?.length\">\r\n\t\t\t\t<p class=\"optionPlaceholder-content u-marginBottom0\">{{ intl.emptyResults }}</p>\r\n\t\t\t\t<button type=\"button\" class=\"link\" (click)=\"updateClue(null); searchInput.focus()\">{{ intl.clearSearch }}</button>\r\n\t\t\t</div>\r\n\t\t</ng-container>\r\n\t\t<div class=\"lu-picker-content-option\">\r\n\t\t\t<lu-select-option\r\n\t\t\t\t*ngFor=\"let option of ctx.options; let index = index\"\r\n\t\t\t\t[option]=\"option\"\r\n\t\t\t\t[optionTpl]=\"optionTpl\"\r\n\t\t\t\t[optionIndex]=\"index\"\r\n\t\t\t\t[isSelected]=\"option === selected\"\r\n\t\t\t\t(click)=\"panelRef.emitValue(option)\"\r\n\t\t\t></lu-select-option>\r\n\t\t</div>\r\n\r\n\t\t<div *ngIf=\"loading$ | async\" class=\"panel-loading loading lu-picker-loading\"></div>\r\n\t</div>\r\n</div>\r\n","import { Overlay, OverlayConfig, OverlayPositionBuilder, OverlayRef, ScrollStrategyOptions } from '@angular/cdk/overlay';\r\nimport { ComponentPortal } from '@angular/cdk/portal';\r\nimport { ComponentRef, ElementRef, inject, Injectable, Injector } from '@angular/core';\r\nimport { takeUntil } from 'rxjs';\r\nimport { LuSelectPanelComponent, LuSelectPanelRef } from '../panel';\r\nimport { ILuSelectPanelData, SELECT_PANEL_DATA } from '../select.model';\r\n\r\nclass SelectPanelRef<T> extends LuSelectPanelRef<T> {\r\n\tinstance: LuSelectPanelComponent<T>;\r\n\tprivate panelRef: ComponentRef<LuSelectPanelComponent<T>>;\r\n\tprivate portalRef: ComponentPortal<LuSelectPanelComponent<T>>;\r\n\r\n\tconstructor(private overlayRef: OverlayRef, parentInjector: Injector, panelData: ILuSelectPanelData<T>) {\r\n\t\tsuper();\r\n\r\n\t\tconst injector = Injector.create({\r\n\t\t\tproviders: [\r\n\t\t\t\t{ provide: LuSelectPanelRef, useValue: this },\r\n\t\t\t\t{ provide: SELECT_PANEL_DATA, useValue: panelData },\r\n\t\t\t],\r\n\t\t\tparent: parentInjector,\r\n\t\t});\r\n\r\n\t\tthis.portalRef = new ComponentPortal<LuSelectPanelComponent<T>>(LuSelectPanelComponent, undefined, injector);\r\n\t\tthis.panelRef = overlayRef.attach(this.portalRef);\r\n\t\tthis.instance = this.panelRef.instance;\r\n\r\n\t\toverlayRef\r\n\t\t\t.backdropClick()\r\n\t\t\t.pipe(takeUntil(this.closed))\r\n\t\t\t.subscribe(() => this.close());\r\n\t}\r\n\r\n\temitValue(value: T): void {\r\n\t\tthis.valueChanged.emit(value);\r\n\t\tthis.close();\r\n\t}\r\n\r\n\toverride close(): void {\r\n\t\tsuper.close();\r\n\t\tthis.panelRef.destroy();\r\n\t\tthis.overlayRef.detach();\r\n\t}\r\n}\r\n\r\n@Injectable()\r\nexport class LuSimpleSelectPanelRefFactory {\r\n\tprotected overlay = inject(Overlay);\r\n\tprotected elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\r\n\tprotected positionBuilder = inject(OverlayPositionBuilder);\r\n\tprotected scrollStrategies = inject(ScrollStrategyOptions);\r\n\tprotected parentInjector = inject(Injector);\r\n\r\n\tbuildPanelRef<T>(panelData: ILuSelectPanelData<T>, overlayConfigOverride: OverlayConfig = {}): LuSelectPanelRef<T> {\r\n\t\tconst overlayConfig = this.buildOverlayConfig(overlayConfigOverride);\r\n\t\tconst overlayRef = this.overlay.create(overlayConfig);\r\n\r\n\t\treturn new SelectPanelRef(overlayRef, this.parentInjector, panelData);\r\n\t}\r\n\r\n\tprotected buildOverlayConfig(overlayConfigOverride: OverlayConfig = {}): OverlayConfig {\r\n\t\tconst overlayConfig: OverlayConfig = overlayConfigOverride || {};\r\n\t\toverlayConfig.positionStrategy = this.positionBuilder.flexibleConnectedTo(this.elementRef).withPositions([\r\n\t\t\t{\r\n\t\t\t\toriginX: 'start',\r\n\t\t\t\toriginY: 'bottom',\r\n\t\t\t\toverlayX: 'start',\r\n\t\t\t\toverlayY: 'top',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\toriginX: 'end',\r\n\t\t\t\toriginY: 'bottom',\r\n\t\t\t\toverlayX: 'end',\r\n\t\t\t\toverlayY: 'top',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\toriginX: 'start',\r\n\t\t\t\toriginY: 'top',\r\n\t\t\t\toverlayX: 'start',\r\n\t\t\t\toverlayY: 'bottom',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\toriginX: 'end',\r\n\t\t\t\toriginY: 'top',\r\n\t\t\t\toverlayX: 'end',\r\n\t\t\t\toverlayY: 'bottom',\r\n\t\t\t},\r\n\t\t]);\r\n\t\toverlayConfig.scrollStrategy = this.scrollStrategies.reposition();\r\n\t\toverlayConfig.minWidth = this.elementRef.nativeElement.clientWidth;\r\n\t\toverlayConfig.maxHeight = '100vh';\r\n\t\toverlayConfig.maxWidth = '100vw';\r\n\r\n\t\treturn overlayConfig;\r\n\t}\r\n}\r\n","import { OverlayContainer } from '@angular/cdk/overlay';\r\nimport { Platform } from '@angular/cdk/platform';\r\nimport { DOCUMENT } from '@angular/common';\r\nimport { ElementRef, inject, Injectable, Provider } from '@angular/core';\r\nimport { SELECT_ID, SELECT_LABEL, SELECT_LABEL_ID } from '../select.model';\r\n\r\nlet selectId = 0;\r\n\r\nfunction selectIdFactory(): number {\r\n\treturn selectId++;\r\n}\r\n\r\nfunction selectLabelFactory(): HTMLLabelElement | undefined {\r\n\tconst elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\r\n\r\n\tfunction getLabel(node: HTMLElement): HTMLLabelElement | undefined {\r\n\t\tif (node instanceof HTMLLabelElement) {\r\n\t\t\treturn node;\r\n\t\t}\r\n\r\n\t\tif (!node.parentElement) {\r\n\t\t\treturn undefined;\r\n\t\t}\r\n\r\n\t\treturn getLabel(node.parentElement);\r\n\t}\r\n\r\n\treturn getLabel(elementRef.nativeElement);\r\n}\r\n\r\nfunction selectLabelIdFactory(): string {\r\n\treturn inject(SELECT_LABEL)?.id || `lu-select-label-${inject(SELECT_ID)}`;\r\n}\r\n\r\nexport function provideLuSelectLabelsAndIds(): Provider[] {\r\n\treturn [\r\n\t\t{ provide: SELECT_ID, useFactory: selectIdFactory },\r\n\t\t{ provide: SELECT_LABEL, useFactory: selectLabelFactory },\r\n\t\t{ provide: SELECT_LABEL_ID, useFactory: selectLabelIdFactory },\r\n\t];\r\n}\r\n\r\n@Injectable()\r\nclass LuSelectOverlayContainer extends OverlayContainer {\r\n\tprivate selectLabelId = inject(SELECT_LABEL_ID);\r\n\tprivate selectId = inject(SELECT_ID);\r\n\r\n\tconstructor() {\r\n\t\tsuper(inject(DOCUMENT), inject(Platform));\r\n\t}\r\n\r\n\tprotected override _createContainer(): void {\r\n\t\tsuper._createContainer();\r\n\t\tthis._containerElement.setAttribute('aria-labelledby', this.selectLabelId);\r\n\t\tthis._containerElement.setAttribute('role', 'listbox');\r\n\t\tthis._containerElement.id = `lu-select-overlay-container-${this.selectId}`;\r\n\t}\r\n}\r\n\r\nexport function provideLuSelectOverlayContainer(): Provider[] {\r\n\treturn [\r\n\t\t{\r\n\t\t\tprovide: OverlayContainer,\r\n\t\t\tuseClass: LuSelectOverlayContainer,\r\n\t\t},\r\n\t];\r\n}\r\n","/* eslint-disable @angular-eslint/no-output-on-prefix */\r\nimport { OverlayConfig, OverlayContainer, OverlayModule } from '@angular/cdk/overlay';\r\nimport { AsyncPipe, NgIf } from '@angular/common';\r\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, forwardRef, HostBinding, HostListener, inject, Input, OnDestroy, OnInit, Output, TemplateRef, Type } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { getIntl } from '@lucca-front/ng/core';\r\nimport { BehaviorSubject, ReplaySubject } from 'rxjs';\r\nimport { LuSimpleSelectDefaultOptionComponent } from '../option';\r\nimport { LuOptionOutletDirective } from '../option/option-outlet.directive';\r\nimport { LuSelectPanelRef } from '../panel';\r\nimport { LuOptionContext, SELECT_LABEL, SELECT_LABEL_ID } from '../select.model';\r\nimport { LU_SIMPLE_SELECT_TRANSLATIONS } from '../select.translate';\r\nimport { LuSimpleSelectPanelRefFactory } from './panel-ref.factory';\r\nimport { provideLuSelectLabelsAndIds, provideLuSelectOverlayContainer } from './select-input.models';\r\n\r\n@Component({\r\n\tselector: 'lu-simple-select',\r\n\ttemplateUrl: './select-input.component.html',\r\n\tstyleUrls: ['./select-input.component.scss'],\r\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\r\n\tstandalone: true,\r\n\timports: [AsyncPipe, LuOptionOutletDirective, NgIf, OverlayModule],\r\n\tproviders: [\r\n\t\t{\r\n\t\t\tprovide: NG_VALUE_ACCESSOR,\r\n\t\t\tuseExisting: forwardRef(() => LuSimpleSelectInputComponent),\r\n\t\t\tmulti: true,\r\n\t\t},\r\n\t\tprovideLuSelectOverlayContainer(),\r\n\t\tprovideLuSelectLabelsAndIds(),\r\n\t\tLuSimpleSelectPanelRefFactory,\r\n\t],\r\n})\r\nexport class LuSimpleSelectInputComponent<T> implements ControlValueAccessor, OnDestroy, OnInit {\r\n\t@HostBinding('tabindex') tabindex = 0;\r\n\r\n\t@Input() placeholder = '';\r\n\r\n\t@Input()\r\n\t@HostBinding('class.is-clearable')\r\n\tclearable = false;\r\n\r\n\tget searchable(): boolean {\r\n\t\treturn this.clueChange.observed;\r\n\t}\r\n\r\n\t@Input()\r\n\t@HostBinding('class.is-disabled')\r\n\tdisabled = false;\r\n\r\n\t@HostBinding('class.is-filled')\r\n\tget isFilled(): boolean {\r\n\t\treturn this.value !== null && this.value !== undefined;\r\n\t}\r\n\r\n\t@HostBinding('class.is-focused')\r\n\t@HostBinding('attr.aria-expanded')\r\n\tpublic get isPanelOpen(): boolean {\r\n\t\treturn this.isPanelOpen$.value;\r\n\t}\r\n\tpublic isPanelOpen$ = new BehaviorSubject(false);\r\n\r\n\t@HostBinding('attr.role')\r\n\tpublic role = 'combobox';\r\n\r\n\t@HostBinding('attr.aria-activedescendant')\r\n\tpublic activeDescendant: string | undefined;\r\n\r\n\t@HostBinding('attr.aria-controls')\r\n\tget ariaControls(): string {\r\n\t\treturn this.overlayContainerRef.id;\r\n\t}\r\n\r\n\t@Input()\r\n\toverlayConfig?: OverlayConfig = {\r\n\t\thasBackdrop: true,\r\n\t\tbackdropClass: 'cdk-overlay-transparent-backdrop',\r\n\t};\r\n\r\n\t@Input() set loading(value: boolean) {\r\n\t\tthis.loading$.next(value);\r\n\t}\r\n\r\n\t@Input() set options(options: T[]) {\r\n\t\tthis.options$.next(options);\r\n\t}\r\n\r\n\t@Input() optionComparer: (option1: T, option2: T) => boolean = (option1, option2) => JSON.stringify(option1) === JSON.stringify(option2);\r\n\t@Input() optionTpl?: TemplateRef<LuOptionContext<T>> | Type<unknown> = LuSimpleSelectDefaultOptionComponent;\r\n\t@Input() valueTpl?: TemplateRef<LuOptionContext<T>> | Type<unknown>;\r\n\r\n\t@Output() clueChange = new EventEmitter<string>();\r\n\t@Output() nextPage = new EventEmitter<void>();\r\n\t@Output() previousPage = new EventEmitter<void>();\r\n\r\n\tpublic get value(): T {\r\n\t\treturn this._value;\r\n\t}\r\n\r\n\tprotected set value(value: T) {\r\n\t\tthis._value = value;\r\n\t\tthis.changeDetectorRef.markForCheck();\r\n\t}\r\n\r\n\tprotected _value?: T;\r\n\r\n\toptions$ = new ReplaySubject<T[]>(1);\r\n\tloading$ = new ReplaySubject<boolean>(1);\r\n\tclue: string | null = null;\r\n\tintl = getIntl(LU_SIMPLE_SELECT_TRANSLATIONS);\r\n\r\n\tprotected onChange?: (value: T | null) => void;\r\n\tprotected onTouched?: () => void;\r\n\r\n\tprotected panelRef?: LuSelectPanelRef<T>;\r\n\r\n\t@HostListener('keydown.space', ['$event'])\r\n\t@HostListener('keydown.enter', ['$event'])\r\n\t@HostListener('keydown.arrowDown', ['$event'])\r\n\t@HostListener('click', ['$event'])\r\n\tonKeydown($event: KeyboardEvent) {\r\n\t\tif (!this.isPanelOpen) {\r\n\t\t\tthis.openPanel();\r\n\t\t\t$event.stopPropagation();\r\n\t\t\t$event.preventDefault();\r\n\t\t}\r\n\t}\r\n\r\n\tprotected changeDetectorRef = inject(ChangeDetectorRef);\r\n\tprotected overlayContainerRef: HTMLElement = inject(OverlayContainer).getContainerElement();\r\n\tprotected panelRefFactory = inject(LuSimpleSelectPanelRefFactory);\r\n\r\n\tprotected label: HTMLElement | undefined = inject(SELECT_LABEL);\r\n\tprotected labelId: string = inject(SELECT_LABEL_ID);\r\n\r\n\tregisterOnChange(onChange: (value: T) => void): void {\r\n\t\tthis.onChange = onChange;\r\n\t}\r\n\r\n\tregisterOnTouched(onTouched: () => void): void {\r\n\t\tthis.onTouched = onTouched;\r\n\t}\r\n\r\n\tsetDisabledState(isDisabled: boolean): void {\r\n\t\tthis.disabled = isDisabled;\r\n\t}\r\n\r\n\tngOnDestroy(): void {\r\n\t\tthis.panelRef?.close();\r\n\t}\r\n\r\n\tngOnInit(): void {\r\n\t\tif (this.label) {\r\n\t\t\tthis.label.id = this.labelId;\r\n\t\t}\r\n\t}\r\n\r\n\tclearValue(event: MouseEvent): void {\r\n\t\tevent.stopPropagation();\r\n\t\tthis.updateValue(null);\r\n\t}\r\n\r\n\topenPanel(): void {\r\n\t\tif (this.isPanelOpen || this.disabled) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.isPanelOpen$.next(true);\r\n\t\tthis.panelRef = this.panelRefFactory.buildPanelRef(\r\n\t\t\t{\r\n\t\t\t\tinitialValue: this.value,\r\n\t\t\t\toptionComparer: this.optionComparer,\r\n\t\t\t\toptions$: this.options$,\r\n\t\t\t\tloading$: this.loading$,\r\n\t\t\t\tsearchable: this.searchable,\r\n\t\t\t\toptionTpl: this.optionTpl,\r\n\t\t\t},\r\n\t\t\tthis.overlayConfig,\r\n\t\t);\r\n\r\n\t\tthis.panelRef.valueChanged.subscribe((value) => this.updateValue(value));\r\n\t\tthis.panelRef.nextPage.subscribe(() => this.nextPage.emit());\r\n\t\tthis.panelRef.previousPage.subscribe(() => this.previousPage.emit());\r\n\t\tthis.panelRef.clueChanged.subscribe((clue) => {\r\n\t\t\tthis.clueChange.emit(clue);\r\n\t\t\tthis.clue = clue;\r\n\t\t});\r\n\t\tthis.panelRef.activeOptionIdChanged.subscribe((optionId) => {\r\n\t\t\tthis.activeDescendant = optionId;\r\n\t\t\tthis.changeDetectorRef.markForCheck();\r\n\t\t});\r\n\t\tthis.panelRef.closed.subscribe(() => this.closePanel());\r\n\t}\r\n\r\n\tpublic closePanel(): void {\r\n\t\tif (!this.isPanelOpen) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tthis.isPanelOpen$.next(false);\r\n\t\tthis.panelRef.close();\r\n\t\tthis.panelRef = undefined;\r\n\t}\r\n\r\n\tpublic writeValue(value: T): void {\r\n\t\tthis.value = value;\r\n\t}\r\n\r\n\tpublic updateValue(value: T): void {\r\n\t\tthis.value = value;\r\n\t\tthis.onChange?.(value);\r\n\t\tthis.onTouched?.();\r\n\t}\r\n}\r\n","<div class=\"lu-select-placeholder\">{{ placeholder }}</div>\r\n<div class=\"lu-select-value\">\r\n\t<div class=\"lu-select-display-wrapper\">\r\n\t\t<ng-container *luOptionOutlet=\"valueTpl || optionTpl; value: value\"></ng-container>\r\n\t</div>\r\n</div>\r\n<a *ngIf=\"clearable && isFilled\" class=\"clear lu-select-clearer\" role=\"button\" (click)=\"clearValue($event)\">\r\n\t<span aria-hidden=\"true\" class=\"lucca-icon icon-signClose\"></span>\r\n\t<span class=\"u-mask\">{{ intl.clear }}</span>\r\n</a>\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["ɵLuOptionComponent"],"mappings":"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"}