primeng 14.2.11-lts → 14.2.13-lts

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 (60) hide show
  1. package/api/licensemanager.d.ts +1 -1
  2. package/calendar/calendar.d.ts +1 -0
  3. package/carousel/carousel.d.ts +2 -1
  4. package/esm2020/api/licensemanager.mjs +22 -4
  5. package/esm2020/autocomplete/autocomplete.mjs +6 -6
  6. package/esm2020/button/button.mjs +4 -3
  7. package/esm2020/calendar/calendar.mjs +24 -4
  8. package/esm2020/carousel/carousel.mjs +10 -3
  9. package/esm2020/dialog/dialog.mjs +2 -2
  10. package/esm2020/dropdown/dropdown.mjs +3 -2
  11. package/esm2020/fileupload/fileupload.mjs +2 -1
  12. package/esm2020/inputnumber/inputnumber.mjs +3 -3
  13. package/esm2020/picklist/picklist.mjs +8 -4
  14. package/esm2020/splitter/splitter.mjs +2 -2
  15. package/fesm2015/primeng-api.mjs +21 -3
  16. package/fesm2015/primeng-api.mjs.map +1 -1
  17. package/fesm2015/primeng-autocomplete.mjs +5 -5
  18. package/fesm2015/primeng-autocomplete.mjs.map +1 -1
  19. package/fesm2015/primeng-button.mjs +3 -2
  20. package/fesm2015/primeng-button.mjs.map +1 -1
  21. package/fesm2015/primeng-calendar.mjs +23 -3
  22. package/fesm2015/primeng-calendar.mjs.map +1 -1
  23. package/fesm2015/primeng-carousel.mjs +9 -2
  24. package/fesm2015/primeng-carousel.mjs.map +1 -1
  25. package/fesm2015/primeng-dialog.mjs +1 -1
  26. package/fesm2015/primeng-dialog.mjs.map +1 -1
  27. package/fesm2015/primeng-dropdown.mjs +2 -1
  28. package/fesm2015/primeng-dropdown.mjs.map +1 -1
  29. package/fesm2015/primeng-fileupload.mjs +1 -0
  30. package/fesm2015/primeng-fileupload.mjs.map +1 -1
  31. package/fesm2015/primeng-inputnumber.mjs +2 -2
  32. package/fesm2015/primeng-inputnumber.mjs.map +1 -1
  33. package/fesm2015/primeng-picklist.mjs +7 -3
  34. package/fesm2015/primeng-picklist.mjs.map +1 -1
  35. package/fesm2015/primeng-splitter.mjs +2 -2
  36. package/fesm2015/primeng-splitter.mjs.map +1 -1
  37. package/fesm2020/primeng-api.mjs +21 -3
  38. package/fesm2020/primeng-api.mjs.map +1 -1
  39. package/fesm2020/primeng-autocomplete.mjs +5 -5
  40. package/fesm2020/primeng-autocomplete.mjs.map +1 -1
  41. package/fesm2020/primeng-button.mjs +3 -2
  42. package/fesm2020/primeng-button.mjs.map +1 -1
  43. package/fesm2020/primeng-calendar.mjs +23 -3
  44. package/fesm2020/primeng-calendar.mjs.map +1 -1
  45. package/fesm2020/primeng-carousel.mjs +9 -2
  46. package/fesm2020/primeng-carousel.mjs.map +1 -1
  47. package/fesm2020/primeng-dialog.mjs +1 -1
  48. package/fesm2020/primeng-dialog.mjs.map +1 -1
  49. package/fesm2020/primeng-dropdown.mjs +2 -1
  50. package/fesm2020/primeng-dropdown.mjs.map +1 -1
  51. package/fesm2020/primeng-fileupload.mjs +1 -0
  52. package/fesm2020/primeng-fileupload.mjs.map +1 -1
  53. package/fesm2020/primeng-inputnumber.mjs +2 -2
  54. package/fesm2020/primeng-inputnumber.mjs.map +1 -1
  55. package/fesm2020/primeng-picklist.mjs +7 -3
  56. package/fesm2020/primeng-picklist.mjs.map +1 -1
  57. package/fesm2020/primeng-splitter.mjs +2 -2
  58. package/fesm2020/primeng-splitter.mjs.map +1 -1
  59. package/package.json +1 -1
  60. package/resources/components/splitter/splitter.css +1 -0
@@ -1 +1 @@
1
- {"version":3,"file":"primeng-autocomplete.mjs","sources":["../../src/app/components/autocomplete/autocomplete.ts","../../src/app/components/autocomplete/primeng-autocomplete.ts"],"sourcesContent":["import {\n NgModule,\n Component,\n ViewChild,\n ElementRef,\n AfterViewChecked,\n AfterContentInit,\n OnDestroy,\n Input,\n Output,\n EventEmitter,\n ContentChildren,\n QueryList,\n TemplateRef,\n Renderer2,\n forwardRef,\n ChangeDetectorRef,\n IterableDiffers,\n ChangeDetectionStrategy,\n ViewEncapsulation,\n AfterViewInit\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { trigger, style, transition, animate, AnimationEvent } from '@angular/animations';\nimport { InputTextModule } from 'primeng/inputtext';\nimport { ButtonModule } from 'primeng/button';\nimport { RippleModule } from 'primeng/ripple';\nimport { SharedModule, PrimeTemplate, TranslationKeys, PrimeNGConfig, OverlayService, LicenseManager } from 'primeng/api';\nimport { DomHandler, ConnectedOverlayScrollHandler } from 'primeng/dom';\nimport { ObjectUtils, UniqueComponentId, ZIndexUtils } from 'primeng/utils';\nimport { NG_VALUE_ACCESSOR, ControlValueAccessor } from '@angular/forms';\nimport { Scroller, ScrollerModule, ScrollerOptions } from 'primeng/scroller';\nimport { AutoFocusModule } from 'primeng/autofocus';\n\nexport const AUTOCOMPLETE_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AutoComplete),\n multi: true\n};\n\n@Component({\n selector: 'p-autoComplete',\n template: `\n <span #container [ngClass]=\"{ 'p-autocomplete p-component': true, 'p-autocomplete-dd': dropdown, 'p-autocomplete-multiple': multiple }\" [ngStyle]=\"style\" [class]=\"styleClass\">\n <input\n pAutoFocus\n [autofocus]=\"autofocus\"\n *ngIf=\"!multiple\"\n #in\n [attr.type]=\"type\"\n [attr.id]=\"inputId\"\n [ngStyle]=\"inputStyle\"\n [class]=\"inputStyleClass\"\n [autocomplete]=\"autocomplete\"\n [attr.required]=\"required\"\n [attr.name]=\"name\"\n class=\"p-autocomplete-input p-inputtext p-component\"\n [ngClass]=\"{ 'p-autocomplete-dd-input': dropdown, 'p-disabled': disabled }\"\n [value]=\"inputFieldValue\"\n aria-autocomplete=\"list\"\n role=\"searchbox\"\n (click)=\"onInputClick($event)\"\n (input)=\"onInput($event)\"\n (keydown)=\"onKeydown($event)\"\n (keyup)=\"onKeyup($event)\"\n (focus)=\"onInputFocus($event)\"\n (blur)=\"onInputBlur($event)\"\n (change)=\"onInputChange($event)\"\n (paste)=\"onInputPaste($event)\"\n [attr.placeholder]=\"placeholder\"\n [attr.size]=\"size\"\n [attr.maxlength]=\"maxlength\"\n [attr.tabindex]=\"tabindex\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-required]=\"required\"\n />\n <i *ngIf=\"!multiple && filled && !disabled && showClear\" class=\"p-autocomplete-clear-icon pi pi-times\" (click)=\"clear()\"></i>\n <i *ngIf=\"multiple && filled && !disabled && showClear\" class=\"p-autocomplete-clear-icon pi pi-times\" (click)=\"clear()\"></i>\n <ul *ngIf=\"multiple\" #multiContainer class=\"p-autocomplete-multiple-container p-component p-inputtext\" [ngClass]=\"{ 'p-disabled': disabled, 'p-focus': focus }\" (click)=\"multiIn.focus()\">\n <li #token *ngFor=\"let val of value\" class=\"p-autocomplete-token\">\n <ng-container *ngTemplateOutlet=\"selectedItemTemplate; context: { $implicit: val }\"></ng-container>\n <span *ngIf=\"!selectedItemTemplate\" class=\"p-autocomplete-token-label\">{{ resolveFieldData(val) }}</span>\n <span class=\"p-autocomplete-token-icon pi pi-times-circle\" (click)=\"removeItem(token)\" *ngIf=\"!disabled && !readonly\"></span>\n </li>\n <li class=\"p-autocomplete-input-token\">\n <input\n pAutoFocus\n [autofocus]=\"autofocus\"\n #multiIn\n [attr.type]=\"type\"\n [attr.id]=\"inputId\"\n [disabled]=\"disabled\"\n [attr.placeholder]=\"value && value.length ? null : placeholder\"\n [attr.tabindex]=\"tabindex\"\n [attr.maxlength]=\"maxlength\"\n (input)=\"onInput($event)\"\n (click)=\"onInputClick($event)\"\n (keydown)=\"onKeydown($event)\"\n [readonly]=\"readonly\"\n (keyup)=\"onKeyup($event)\"\n (focus)=\"onInputFocus($event)\"\n (blur)=\"onInputBlur($event)\"\n (change)=\"onInputChange($event)\"\n (paste)=\"onInputPaste($event)\"\n [autocomplete]=\"autocomplete\"\n [ngStyle]=\"inputStyle\"\n [class]=\"inputStyleClass\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-required]=\"required\"\n aria-autocomplete=\"list\"\n [attr.aria-controls]=\"listId\"\n role=\"searchbox\"\n [attr.aria-expanded]=\"overlayVisible\"\n aria-haspopup=\"true\"\n [attr.aria-activedescendant]=\"'p-highlighted-option'\"\n />\n </li>\n </ul>\n <i *ngIf=\"loading\" class=\"p-autocomplete-loader pi pi-spinner pi-spin\"></i\n ><button\n #ddBtn\n type=\"button\"\n pButton\n [icon]=\"dropdownIcon\"\n [attr.aria-label]=\"dropdownAriaLabel\"\n class=\"p-autocomplete-dropdown\"\n [disabled]=\"disabled\"\n pRipple\n (click)=\"handleDropdownClick($event)\"\n *ngIf=\"dropdown\"\n [attr.tabindex]=\"tabindex\"\n ></button>\n <div\n #panel\n *ngIf=\"overlayVisible\"\n (click)=\"onOverlayClick($event)\"\n [ngClass]=\"['p-autocomplete-panel p-component']\"\n [style.max-height]=\"virtualScroll ? 'auto' : scrollHeight\"\n [ngStyle]=\"panelStyle\"\n [class]=\"panelStyleClass\"\n [@overlayAnimation]=\"{ value: 'visible', params: { showTransitionParams: showTransitionOptions, hideTransitionParams: hideTransitionOptions } }\"\n (@overlayAnimation.start)=\"onOverlayAnimationStart($event)\"\n (@overlayAnimation.done)=\"onOverlayAnimationEnd($event)\"\n >\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n <p-scroller\n *ngIf=\"virtualScroll\"\n #scroller\n [items]=\"suggestions\"\n [style]=\"{ height: scrollHeight }\"\n [itemSize]=\"virtualScrollItemSize || _itemSize\"\n [autoSize]=\"true\"\n [lazy]=\"lazy\"\n (onLazyLoad)=\"onLazyLoad.emit($event)\"\n [options]=\"virtualScrollOptions\"\n >\n <ng-template pTemplate=\"content\" let-items let-scrollerOptions=\"options\">\n <ng-container *ngTemplateOutlet=\"buildInItems; context: { $implicit: items, options: scrollerOptions }\"></ng-container>\n </ng-template>\n <ng-container *ngIf=\"loaderTemplate\">\n <ng-template pTemplate=\"loader\" let-scrollerOptions=\"options\">\n <ng-container *ngTemplateOutlet=\"loaderTemplate; context: { options: scrollerOptions }\"></ng-container>\n </ng-template>\n </ng-container>\n </p-scroller>\n <ng-container *ngIf=\"!virtualScroll\">\n <ng-container *ngTemplateOutlet=\"buildInItems; context: { $implicit: suggestions, options: {} }\"></ng-container>\n </ng-container>\n\n <ng-template #buildInItems let-items let-scrollerOptions=\"options\">\n <ul #items role=\"listbox\" [attr.id]=\"listId\" class=\"p-autocomplete-items\" [ngClass]=\"scrollerOptions.contentStyleClass\" [style]=\"scrollerOptions.contentStyle\">\n <ng-container *ngIf=\"group\">\n <ng-template ngFor let-optgroup [ngForOf]=\"items\">\n <li class=\"p-autocomplete-item-group\" [ngStyle]=\"{ height: scrollerOptions.itemSize + 'px' }\">\n <span *ngIf=\"!groupTemplate\">{{ getOptionGroupLabel(optgroup) || 'empty' }}</span>\n <ng-container *ngTemplateOutlet=\"groupTemplate; context: { $implicit: optgroup }\"></ng-container>\n </li>\n <ng-container *ngTemplateOutlet=\"itemslist; context: { $implicit: getOptionGroupChildren(optgroup) }\"></ng-container>\n </ng-template>\n </ng-container>\n <ng-container *ngIf=\"!group\">\n <ng-container *ngTemplateOutlet=\"itemslist; context: { $implicit: items }\"></ng-container>\n </ng-container>\n <ng-template #itemslist let-suggestionsToDisplay>\n <li\n role=\"option\"\n *ngFor=\"let option of suggestionsToDisplay; let idx = index\"\n class=\"p-autocomplete-item\"\n pRipple\n [ngStyle]=\"{ height: scrollerOptions.itemSize + 'px' }\"\n [ngClass]=\"{ 'p-highlight': option === highlightOption }\"\n [id]=\"highlightOption == option ? 'p-highlighted-option' : ''\"\n (click)=\"selectItem(option)\"\n >\n <span *ngIf=\"!itemTemplate\">{{ resolveFieldData(option) }}</span>\n <ng-container *ngTemplateOutlet=\"itemTemplate; context: { $implicit: option, index: scrollerOptions.getOptions ? scrollerOptions.getOptions(idx) : idx }\"></ng-container>\n </li>\n </ng-template>\n <li *ngIf=\"noResults && showEmptyMessage\" class=\"p-autocomplete-empty-message\" [ngStyle]=\"{ height: scrollerOptions.itemSize + 'px' }\">\n <ng-container *ngIf=\"!emptyTemplate; else empty\">\n {{ emptyMessageLabel }}\n </ng-container>\n <ng-container #empty *ngTemplateOutlet=\"emptyTemplate\"></ng-container>\n </li>\n </ul>\n </ng-template>\n <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\n </div>\n </span>\n `,\n animations: [trigger('overlayAnimation', [transition(':enter', [style({ opacity: 0, transform: 'scaleY(0.8)' }), animate('{{showTransitionParams}}')]), transition(':leave', [animate('{{hideTransitionParams}}', style({ opacity: 0 }))])])],\n host: {\n class: 'p-element p-inputwrapper',\n '[class.p-inputwrapper-filled]': 'filled',\n '[class.p-inputwrapper-focus]': '((focus && !disabled) || autofocus) || overlayVisible',\n '[class.p-autocomplete-clearable]': 'showClear && !disabled'\n },\n providers: [AUTOCOMPLETE_VALUE_ACCESSOR],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./autocomplete.css']\n})\nexport class AutoComplete implements AfterViewChecked, AfterContentInit, AfterViewInit, OnDestroy, ControlValueAccessor {\n @Input() minLength: number = 1;\n\n @Input() delay: number = 300;\n\n @Input() style: any;\n\n @Input() panelStyle: any;\n\n @Input() styleClass: string;\n\n @Input() panelStyleClass: string;\n\n @Input() inputStyle: any;\n\n @Input() inputId: string;\n\n @Input() inputStyleClass: string;\n\n @Input() placeholder: string;\n\n @Input() readonly: boolean;\n\n @Input() disabled: boolean;\n\n @Input() scrollHeight: string = '200px';\n\n @Input() lazy: boolean = false;\n\n @Input() virtualScroll: boolean;\n\n @Input() virtualScrollItemSize: number;\n\n @Input() virtualScrollOptions: ScrollerOptions;\n\n @Input() maxlength: number;\n\n @Input() name: string;\n\n @Input() required: boolean;\n\n @Input() size: number;\n\n @Input() appendTo: any;\n\n @Input() autoHighlight: boolean;\n\n @Input() forceSelection: boolean;\n\n @Input() type: string = 'text';\n\n @Input() autoZIndex: boolean = true;\n\n @Input() baseZIndex: number = 0;\n\n @Input() ariaLabel: string;\n\n @Input() dropdownAriaLabel: string;\n\n @Input() ariaLabelledBy: string;\n\n @Input() dropdownIcon: string = 'pi pi-chevron-down';\n\n @Input() unique: boolean = true;\n\n @Input() group: boolean;\n\n @Input() completeOnFocus: boolean = false;\n\n @Input() showClear: boolean = false;\n\n @Input() field: string;\n\n @Input() dropdown: boolean;\n\n @Input() showEmptyMessage: boolean;\n\n @Input() dropdownMode: string = 'blank';\n\n @Input() multiple: boolean;\n\n @Input() tabindex: number;\n\n @Input() dataKey: string;\n\n @Input() emptyMessage: string;\n\n @Input() showTransitionOptions: string = '.12s cubic-bezier(0, 0, 0.2, 1)';\n\n @Input() hideTransitionOptions: string = '.1s linear';\n\n @Input() autofocus: boolean;\n\n @Input() autocomplete: string = 'off';\n\n @Input() optionGroupChildren: string;\n\n @Input() optionGroupLabel: string;\n\n @ViewChild('container') containerEL: ElementRef;\n\n @ViewChild('in') inputEL: ElementRef;\n\n @ViewChild('multiIn') multiInputEL: ElementRef;\n\n @ViewChild('multiContainer') multiContainerEL: ElementRef;\n\n @ViewChild('ddBtn') dropdownButton: ElementRef;\n\n @ViewChild('items') itemsViewChild: ElementRef;\n\n @ViewChild('scroller') scroller: Scroller;\n\n @ContentChildren(PrimeTemplate) templates: QueryList<any>;\n\n @Output() completeMethod: EventEmitter<any> = new EventEmitter();\n\n @Output() onSelect: EventEmitter<any> = new EventEmitter();\n\n @Output() onUnselect: EventEmitter<any> = new EventEmitter();\n\n @Output() onFocus: EventEmitter<any> = new EventEmitter();\n\n @Output() onBlur: EventEmitter<any> = new EventEmitter();\n\n @Output() onDropdownClick: EventEmitter<any> = new EventEmitter();\n\n @Output() onClear: EventEmitter<any> = new EventEmitter();\n\n @Output() onKeyUp: EventEmitter<any> = new EventEmitter();\n\n @Output() onShow: EventEmitter<any> = new EventEmitter();\n\n @Output() onHide: EventEmitter<any> = new EventEmitter();\n\n @Output() onLazyLoad: EventEmitter<any> = new EventEmitter();\n\n /* @deprecated */\n _itemSize: number;\n @Input() get itemSize(): number {\n return this._itemSize;\n }\n set itemSize(val: number) {\n this._itemSize = val;\n console.warn('The itemSize property is deprecated, use virtualScrollItemSize property instead.');\n }\n\n overlay: HTMLDivElement;\n\n itemsWrapper: HTMLDivElement;\n\n itemTemplate: TemplateRef<any>;\n\n emptyTemplate: TemplateRef<any>;\n\n headerTemplate: TemplateRef<any>;\n\n footerTemplate: TemplateRef<any>;\n\n selectedItemTemplate: TemplateRef<any>;\n\n groupTemplate: TemplateRef<any>;\n\n loaderTemplate: TemplateRef<any>;\n\n value: any;\n\n _suggestions: any[];\n\n onModelChange: Function = () => {};\n\n onModelTouched: Function = () => {};\n\n timeout: any;\n\n overlayVisible: boolean = false;\n\n documentClickListener: any;\n\n suggestionsUpdated: boolean;\n\n highlightOption: any;\n\n highlightOptionChanged: boolean;\n\n focus: boolean = false;\n\n filled: boolean;\n\n inputClick: boolean;\n\n inputKeyDown: boolean;\n\n noResults: boolean;\n\n differ: any;\n\n inputFieldValue: string = null;\n\n loading: boolean;\n\n scrollHandler: any;\n\n documentResizeListener: any;\n\n forceSelectionUpdateModelTimeout: any;\n\n listId: string;\n\n itemClicked: boolean;\n\n inputValue: string = null;\n\n constructor(public el: ElementRef, public renderer: Renderer2, public cd: ChangeDetectorRef, public differs: IterableDiffers, public config: PrimeNGConfig, public overlayService: OverlayService) {\n this.differ = differs.find([]).create(null);\n this.listId = UniqueComponentId() + '_list';\n }\n\n @Input() get suggestions(): any[] {\n return this._suggestions;\n }\n\n set suggestions(val: any[]) {\n this._suggestions = val;\n this.handleSuggestionsChange();\n }\n\n ngAfterViewChecked() {\n //Use timeouts as since Angular 4.2, AfterViewChecked is broken and not called after panel is updated\n if (this.suggestionsUpdated && this.overlay && this.overlay.offsetParent) {\n setTimeout(() => {\n if (this.overlay) {\n this.alignOverlay();\n }\n }, 1);\n this.suggestionsUpdated = false;\n }\n\n if (this.highlightOptionChanged) {\n setTimeout(() => {\n if (this.overlay && this.itemsWrapper) {\n let listItem = DomHandler.findSingle(this.overlay, 'li.p-highlight');\n\n if (listItem) {\n DomHandler.scrollInView(this.itemsWrapper, listItem);\n }\n }\n }, 1);\n this.highlightOptionChanged = false;\n }\n }\n\n ngAfterViewInit() {\n LicenseManager.check();\n }\n\n handleSuggestionsChange() {\n if (this._suggestions != null && this.loading) {\n this.highlightOption = null;\n if (this._suggestions.length) {\n this.noResults = false;\n this.show();\n this.suggestionsUpdated = true;\n\n if (this.autoHighlight) {\n this.highlightOption = this._suggestions[0];\n }\n } else {\n this.noResults = true;\n\n if (this.showEmptyMessage) {\n this.show();\n this.suggestionsUpdated = true;\n } else {\n this.hide();\n }\n }\n\n this.loading = false;\n }\n }\n\n ngAfterContentInit() {\n this.templates.forEach((item) => {\n switch (item.getType()) {\n case 'item':\n this.itemTemplate = item.template;\n break;\n\n case 'group':\n this.groupTemplate = item.template;\n break;\n\n case 'selectedItem':\n this.selectedItemTemplate = item.template;\n break;\n\n case 'header':\n this.headerTemplate = item.template;\n break;\n\n case 'empty':\n this.emptyTemplate = item.template;\n break;\n\n case 'footer':\n this.footerTemplate = item.template;\n break;\n\n case 'loader':\n this.loaderTemplate = item.template;\n break;\n\n default:\n this.itemTemplate = item.template;\n break;\n }\n });\n }\n\n writeValue(value: any): void {\n this.value = value;\n this.filled = this.value && this.value != '';\n this.updateInputField();\n this.cd.markForCheck();\n }\n\n getOptionGroupChildren(optionGroup: any) {\n return this.optionGroupChildren ? ObjectUtils.resolveFieldData(optionGroup, this.optionGroupChildren) : optionGroup.items;\n }\n\n getOptionGroupLabel(optionGroup: any) {\n return this.optionGroupLabel ? ObjectUtils.resolveFieldData(optionGroup, this.optionGroupLabel) : optionGroup.label != undefined ? optionGroup.label : optionGroup;\n }\n\n registerOnChange(fn: Function): void {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: Function): void {\n this.onModelTouched = fn;\n }\n\n setDisabledState(val: boolean): void {\n this.disabled = val;\n this.cd.markForCheck();\n }\n\n onInput(event: Event) {\n // When an input element with a placeholder is clicked, the onInput event is invoked in IE.\n if (!this.inputKeyDown && DomHandler.isIE()) {\n return;\n }\n\n if (this.timeout) {\n clearTimeout(this.timeout);\n }\n\n let value = (<HTMLInputElement>event.target).value;\n this.inputValue = value;\n if (!this.multiple && !this.forceSelection) {\n this.onModelChange(value);\n }\n\n if (value.length === 0 && !this.multiple) {\n this.value = null;\n this.hide();\n this.onClear.emit(event);\n this.onModelChange(value);\n }\n\n if (value.length >= this.minLength) {\n this.timeout = setTimeout(() => {\n this.search(event, value);\n }, this.delay);\n } else {\n this.hide();\n }\n this.updateFilledState();\n this.inputKeyDown = false;\n }\n\n onInputClick(event: MouseEvent) {\n if (this.documentClickListener) {\n this.inputClick = true;\n }\n }\n\n search(event: any, query: string) {\n //allow empty string but not undefined or null\n if (query === undefined || query === null) {\n return;\n }\n\n this.loading = true;\n\n this.completeMethod.emit({\n originalEvent: event,\n query: query\n });\n }\n\n selectItem(option: any, focus: boolean = true) {\n if (this.forceSelectionUpdateModelTimeout) {\n clearTimeout(this.forceSelectionUpdateModelTimeout);\n this.forceSelectionUpdateModelTimeout = null;\n }\n\n if (this.multiple) {\n this.multiInputEL.nativeElement.value = '';\n this.value = this.value || [];\n if (!this.isSelected(option) || !this.unique) {\n this.value = [...this.value, option];\n this.onModelChange(this.value);\n }\n } else {\n this.inputEL.nativeElement.value = this.resolveFieldData(option);\n this.value = option;\n this.onModelChange(this.value);\n }\n\n this.onSelect.emit(option);\n this.updateFilledState();\n\n if (focus) {\n this.itemClicked = true;\n this.focusInput();\n }\n }\n\n show() {\n if (this.multiInputEL || this.inputEL) {\n let hasFocus = this.multiple ? this.multiInputEL.nativeElement.ownerDocument.activeElement == this.multiInputEL.nativeElement : this.inputEL.nativeElement.ownerDocument.activeElement == this.inputEL.nativeElement;\n\n if (!this.overlayVisible && hasFocus) {\n this.overlayVisible = true;\n }\n }\n }\n\n clear() {\n if (this.multiple) {\n this.value = null;\n } else {\n this.inputValue = null;\n this.inputEL.nativeElement.value = '';\n }\n\n this.updateFilledState();\n this.onModelChange(this.value);\n this.onClear.emit();\n }\n\n onOverlayAnimationStart(event: AnimationEvent) {\n switch (event.toState) {\n case 'visible':\n this.overlay = event.element;\n this.itemsWrapper = this.virtualScroll ? DomHandler.findSingle(this.overlay, '.p-scroller') : this.overlay;\n this.virtualScroll && this.scroller?.setContentEl(this.itemsViewChild.nativeElement);\n this.appendOverlay();\n\n if (this.autoZIndex) {\n ZIndexUtils.set('overlay', this.overlay, this.baseZIndex + this.config.zIndex.overlay);\n }\n\n this.alignOverlay();\n this.bindDocumentClickListener();\n this.bindDocumentResizeListener();\n this.bindScrollListener();\n this.onShow.emit(event);\n break;\n\n case 'void':\n this.onOverlayHide();\n break;\n }\n }\n\n onOverlayAnimationEnd(event: AnimationEvent) {\n switch (event.toState) {\n case 'void':\n if (this.autoZIndex) {\n ZIndexUtils.clear(event.element);\n }\n break;\n }\n }\n\n onOverlayClick(event) {\n this.overlayService.add({\n originalEvent: event,\n target: this.el.nativeElement\n });\n }\n\n appendOverlay() {\n if (this.appendTo) {\n if (this.appendTo === 'body') document.body.appendChild(this.overlay);\n else DomHandler.appendChild(this.overlay, this.appendTo);\n\n if (!this.overlay.style.minWidth) {\n this.overlay.style.minWidth = DomHandler.getWidth(this.el.nativeElement.children[0]) + 'px';\n }\n }\n }\n\n resolveFieldData(value) {\n let data = this.field ? ObjectUtils.resolveFieldData(value, this.field) : value;\n return data !== (null || undefined) ? data : '';\n }\n\n restoreOverlayAppend() {\n if (this.overlay && this.appendTo) {\n this.el.nativeElement.appendChild(this.overlay);\n }\n }\n\n alignOverlay() {\n if (this.appendTo) DomHandler.absolutePosition(this.overlay, this.multiple ? this.multiContainerEL.nativeElement : this.inputEL.nativeElement);\n else DomHandler.relativePosition(this.overlay, this.multiple ? this.multiContainerEL.nativeElement : this.inputEL.nativeElement);\n }\n\n hide() {\n this.overlayVisible = false;\n this.cd.markForCheck();\n }\n\n handleDropdownClick(event) {\n if (!this.overlayVisible) {\n this.focusInput();\n let queryValue = this.multiple ? this.multiInputEL.nativeElement.value : this.inputEL.nativeElement.value;\n\n if (this.dropdownMode === 'blank') this.search(event, '');\n else if (this.dropdownMode === 'current') this.search(event, queryValue);\n\n this.onDropdownClick.emit({\n originalEvent: event,\n query: queryValue\n });\n } else {\n this.hide();\n }\n }\n\n focusInput() {\n if (this.multiple) this.multiInputEL.nativeElement.focus();\n else this.inputEL.nativeElement.focus();\n }\n\n get emptyMessageLabel(): string {\n return this.emptyMessage || this.config.getTranslation(TranslationKeys.EMPTY_MESSAGE);\n }\n\n removeItem(item: any) {\n let itemIndex = DomHandler.index(item);\n let removedValue = this.value[itemIndex];\n this.value = this.value.filter((val, i) => i != itemIndex);\n this.onModelChange(this.value);\n this.updateFilledState();\n this.onUnselect.emit(removedValue);\n }\n\n onKeydown(event) {\n if (this.overlayVisible) {\n switch (event.which) {\n //down\n case 40:\n if (this.group) {\n let highlightItemIndex = this.findOptionGroupIndex(this.highlightOption, this.suggestions);\n\n if (highlightItemIndex !== -1) {\n let nextItemIndex = highlightItemIndex.itemIndex + 1;\n if (nextItemIndex < this.getOptionGroupChildren(this.suggestions[highlightItemIndex.groupIndex]).length) {\n this.highlightOption = this.getOptionGroupChildren(this.suggestions[highlightItemIndex.groupIndex])[nextItemIndex];\n this.highlightOptionChanged = true;\n } else if (this.suggestions[highlightItemIndex.groupIndex + 1]) {\n this.highlightOption = this.getOptionGroupChildren(this.suggestions[highlightItemIndex.groupIndex + 1])[0];\n this.highlightOptionChanged = true;\n }\n } else {\n this.highlightOption = this.getOptionGroupChildren(this.suggestions[0])[0];\n }\n } else {\n let highlightItemIndex = this.findOptionIndex(this.highlightOption, this.suggestions);\n\n if (highlightItemIndex != -1) {\n var nextItemIndex = highlightItemIndex + 1;\n if (nextItemIndex != this.suggestions.length) {\n this.highlightOption = this.suggestions[nextItemIndex];\n this.highlightOptionChanged = true;\n }\n } else {\n this.highlightOption = this.suggestions[0];\n }\n }\n\n event.preventDefault();\n break;\n\n //up\n case 38:\n if (this.group) {\n let highlightItemIndex = this.findOptionGroupIndex(this.highlightOption, this.suggestions);\n if (highlightItemIndex !== -1) {\n let prevItemIndex = highlightItemIndex.itemIndex - 1;\n if (prevItemIndex >= 0) {\n this.highlightOption = this.getOptionGroupChildren(this.suggestions[highlightItemIndex.groupIndex])[prevItemIndex];\n this.highlightOptionChanged = true;\n } else if (prevItemIndex < 0) {\n let prevGroup = this.suggestions[highlightItemIndex.groupIndex - 1];\n if (prevGroup) {\n this.highlightOption = this.getOptionGroupChildren(prevGroup)[this.getOptionGroupChildren(prevGroup).length - 1];\n this.highlightOptionChanged = true;\n }\n }\n }\n } else {\n let highlightItemIndex = this.findOptionIndex(this.highlightOption, this.suggestions);\n\n if (highlightItemIndex > 0) {\n let prevItemIndex = highlightItemIndex - 1;\n this.highlightOption = this.suggestions[prevItemIndex];\n this.highlightOptionChanged = true;\n }\n }\n\n event.preventDefault();\n break;\n\n //enter\n case 13:\n if (this.highlightOption) {\n this.selectItem(this.highlightOption);\n this.hide();\n }\n event.preventDefault();\n break;\n\n //escape\n case 27:\n this.hide();\n event.preventDefault();\n break;\n\n //tab\n case 9:\n if (this.highlightOption) {\n this.selectItem(this.highlightOption);\n }\n this.hide();\n break;\n }\n } else {\n if (event.which === 40 && this.suggestions) {\n this.search(event, event.target.value);\n } else if (event.ctrlKey && event.key === 'z' && !this.multiple) {\n this.inputEL.nativeElement.value = this.resolveFieldData(null);\n this.value = '';\n this.onModelChange(this.value);\n } else if (event.ctrlKey && event.key === 'z' && this.multiple) {\n this.value.pop();\n this.onModelChange(this.value);\n this.updateFilledState();\n }\n }\n\n if (this.multiple) {\n switch (event.which) {\n //backspace\n case 8:\n if (this.value && this.value.length && !this.multiInputEL.nativeElement.value) {\n this.value = [...this.value];\n const removedValue = this.value.pop();\n this.onModelChange(this.value);\n this.updateFilledState();\n this.onUnselect.emit(removedValue);\n }\n break;\n }\n }\n\n this.inputKeyDown = true;\n }\n\n onKeyup(event) {\n this.onKeyUp.emit(event);\n }\n\n onInputFocus(event) {\n if (!this.itemClicked && this.completeOnFocus) {\n let queryValue = this.multiple ? this.multiInputEL.nativeElement.value : this.inputEL.nativeElement.value;\n this.search(event, queryValue);\n }\n\n this.focus = true;\n this.onFocus.emit(event);\n this.itemClicked = false;\n }\n\n onInputBlur(event) {\n this.focus = false;\n this.onModelTouched();\n this.onBlur.emit(event);\n }\n\n onInputChange(event) {\n if (this.forceSelection) {\n let valid = false;\n let inputValue = event.target.value.trim();\n\n if (this.suggestions) {\n for (let suggestion of this.suggestions) {\n let itemValue = this.field ? ObjectUtils.resolveFieldData(suggestion, this.field) : suggestion;\n if (itemValue && inputValue === itemValue.trim()) {\n valid = true;\n this.forceSelectionUpdateModelTimeout = setTimeout(() => {\n this.selectItem(suggestion, false);\n }, 250);\n break;\n }\n }\n }\n\n if (!valid) {\n if (this.multiple) {\n this.multiInputEL.nativeElement.value = '';\n } else {\n this.value = null;\n this.inputEL.nativeElement.value = '';\n }\n\n this.onClear.emit(event);\n this.onModelChange(this.value);\n this.updateFilledState();\n }\n }\n }\n\n onInputPaste(event: ClipboardEvent) {\n this.onKeydown(event);\n }\n\n isSelected(val: any): boolean {\n let selected: boolean = false;\n if (this.value && this.value.length) {\n for (let i = 0; i < this.value.length; i++) {\n if (ObjectUtils.equals(this.value[i], val, this.dataKey)) {\n selected = true;\n break;\n }\n }\n }\n return selected;\n }\n\n findOptionIndex(option, suggestions): number {\n let index: number = -1;\n if (suggestions) {\n for (let i = 0; i < suggestions.length; i++) {\n if (ObjectUtils.equals(option, suggestions[i])) {\n index = i;\n break;\n }\n }\n }\n\n return index;\n }\n\n findOptionGroupIndex(val: any, opts: any[]): any {\n let groupIndex, itemIndex;\n\n if (opts) {\n for (let i = 0; i < opts.length; i++) {\n groupIndex = i;\n itemIndex = this.findOptionIndex(val, this.getOptionGroupChildren(opts[i]));\n\n if (itemIndex !== -1) {\n break;\n }\n }\n }\n\n if (itemIndex !== -1) {\n return { groupIndex: groupIndex, itemIndex: itemIndex };\n } else {\n return -1;\n }\n }\n\n updateFilledState() {\n if (this.multiple) this.filled = (this.value && this.value.length) || (this.multiInputEL && this.multiInputEL.nativeElement && this.multiInputEL.nativeElement.value != '');\n else this.filled = (this.inputFieldValue && this.inputFieldValue != '') || (this.inputEL && this.inputEL.nativeElement && this.inputEL.nativeElement.value != '');\n }\n\n updateInputField() {\n let formattedValue = this.resolveFieldData(this.value);\n this.inputFieldValue = formattedValue;\n\n if (this.inputEL && this.inputEL.nativeElement) {\n this.inputEL.nativeElement.value = formattedValue;\n }\n\n this.updateFilledState();\n }\n\n bindDocumentClickListener() {\n if (!this.documentClickListener) {\n const documentTarget: any = this.el ? this.el.nativeElement.ownerDocument : 'document';\n\n this.documentClickListener = this.renderer.listen(documentTarget, 'click', (event) => {\n if (event.which === 3) {\n return;\n }\n\n if (!this.inputClick && !this.isDropdownClick(event)) {\n this.hide();\n }\n\n this.inputClick = false;\n this.cd.markForCheck();\n });\n }\n }\n\n isDropdownClick(event) {\n if (this.dropdown) {\n let target = event.target;\n return target === this.dropdownButton.nativeElement || target.parentNode === this.dropdownButton.nativeElement;\n } else {\n return false;\n }\n }\n\n unbindDocumentClickListener() {\n if (this.documentClickListener) {\n this.documentClickListener();\n this.documentClickListener = null;\n }\n }\n\n bindDocumentResizeListener() {\n this.documentResizeListener = this.onWindowResize.bind(this);\n window.addEventListener('resize', this.documentResizeListener);\n }\n\n unbindDocumentResizeListener() {\n if (this.documentResizeListener) {\n window.removeEventListener('resize', this.documentResizeListener);\n this.documentResizeListener = null;\n }\n }\n\n onWindowResize() {\n if (this.overlayVisible && !DomHandler.isTouchDevice()) {\n this.hide();\n }\n }\n\n bindScrollListener() {\n if (!this.scrollHandler) {\n this.scrollHandler = new ConnectedOverlayScrollHandler(this.containerEL.nativeElement, () => {\n if (this.overlayVisible) {\n this.hide();\n }\n });\n }\n\n this.scrollHandler.bindScrollListener();\n }\n\n unbindScrollListener() {\n if (this.scrollHandler) {\n this.scrollHandler.unbindScrollListener();\n }\n }\n\n onOverlayHide() {\n this.unbindDocumentClickListener();\n this.unbindDocumentResizeListener();\n this.unbindScrollListener();\n if (this.overlay) {\n this.overlay = null;\n this.onHide.emit();\n }\n }\n\n ngOnDestroy() {\n if (this.forceSelectionUpdateModelTimeout) {\n clearTimeout(this.forceSelectionUpdateModelTimeout);\n this.forceSelectionUpdateModelTimeout = null;\n }\n\n if (this.scrollHandler) {\n this.scrollHandler.destroy();\n this.scrollHandler = null;\n }\n\n if (this.overlay) {\n ZIndexUtils.clear(this.overlay);\n }\n\n this.restoreOverlayAppend();\n this.onOverlayHide();\n }\n}\n\n@NgModule({\n imports: [CommonModule, InputTextModule, ButtonModule, SharedModule, RippleModule, ScrollerModule, AutoFocusModule],\n exports: [AutoComplete, SharedModule, ScrollerModule, AutoFocusModule],\n declarations: [AutoComplete]\n})\nexport class AutoCompleteModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAkCa,MAAA,2BAA2B,GAAQ;AAC5C,IAAA,OAAO,EAAE,iBAAiB;AAC1B,IAAA,WAAW,EAAE,UAAU,CAAC,MAAM,YAAY,CAAC;AAC3C,IAAA,KAAK,EAAE,IAAI;EACb;MA4LW,YAAY,CAAA;IAqNrB,WAAmB,CAAA,EAAc,EAAS,QAAmB,EAAS,EAAqB,EAAS,OAAwB,EAAS,MAAqB,EAAS,cAA8B,EAAA;AAA9K,QAAA,IAAE,CAAA,EAAA,GAAF,EAAE,CAAY;AAAS,QAAA,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAW;AAAS,QAAA,IAAE,CAAA,EAAA,GAAF,EAAE,CAAmB;AAAS,QAAA,IAAO,CAAA,OAAA,GAAP,OAAO,CAAiB;AAAS,QAAA,IAAM,CAAA,MAAA,GAAN,MAAM,CAAe;AAAS,QAAA,IAAc,CAAA,cAAA,GAAd,cAAc,CAAgB;AApNxL,QAAA,IAAS,CAAA,SAAA,GAAW,CAAC,CAAC;AAEtB,QAAA,IAAK,CAAA,KAAA,GAAW,GAAG,CAAC;AAsBpB,QAAA,IAAY,CAAA,YAAA,GAAW,OAAO,CAAC;AAE/B,QAAA,IAAI,CAAA,IAAA,GAAY,KAAK,CAAC;AAsBtB,QAAA,IAAI,CAAA,IAAA,GAAW,MAAM,CAAC;AAEtB,QAAA,IAAU,CAAA,UAAA,GAAY,IAAI,CAAC;AAE3B,QAAA,IAAU,CAAA,UAAA,GAAW,CAAC,CAAC;AAQvB,QAAA,IAAY,CAAA,YAAA,GAAW,oBAAoB,CAAC;AAE5C,QAAA,IAAM,CAAA,MAAA,GAAY,IAAI,CAAC;AAIvB,QAAA,IAAe,CAAA,eAAA,GAAY,KAAK,CAAC;AAEjC,QAAA,IAAS,CAAA,SAAA,GAAY,KAAK,CAAC;AAQ3B,QAAA,IAAY,CAAA,YAAA,GAAW,OAAO,CAAC;AAU/B,QAAA,IAAqB,CAAA,qBAAA,GAAW,iCAAiC,CAAC;AAElE,QAAA,IAAqB,CAAA,qBAAA,GAAW,YAAY,CAAC;AAI7C,QAAA,IAAY,CAAA,YAAA,GAAW,KAAK,CAAC;AAsB5B,QAAA,IAAA,CAAA,cAAc,GAAsB,IAAI,YAAY,EAAE,CAAC;AAEvD,QAAA,IAAA,CAAA,QAAQ,GAAsB,IAAI,YAAY,EAAE,CAAC;AAEjD,QAAA,IAAA,CAAA,UAAU,GAAsB,IAAI,YAAY,EAAE,CAAC;AAEnD,QAAA,IAAA,CAAA,OAAO,GAAsB,IAAI,YAAY,EAAE,CAAC;AAEhD,QAAA,IAAA,CAAA,MAAM,GAAsB,IAAI,YAAY,EAAE,CAAC;AAE/C,QAAA,IAAA,CAAA,eAAe,GAAsB,IAAI,YAAY,EAAE,CAAC;AAExD,QAAA,IAAA,CAAA,OAAO,GAAsB,IAAI,YAAY,EAAE,CAAC;AAEhD,QAAA,IAAA,CAAA,OAAO,GAAsB,IAAI,YAAY,EAAE,CAAC;AAEhD,QAAA,IAAA,CAAA,MAAM,GAAsB,IAAI,YAAY,EAAE,CAAC;AAE/C,QAAA,IAAA,CAAA,MAAM,GAAsB,IAAI,YAAY,EAAE,CAAC;AAE/C,QAAA,IAAA,CAAA,UAAU,GAAsB,IAAI,YAAY,EAAE,CAAC;AAkC7D,QAAA,IAAA,CAAA,aAAa,GAAa,MAAK,GAAG,CAAC;AAEnC,QAAA,IAAA,CAAA,cAAc,GAAa,MAAK,GAAG,CAAC;AAIpC,QAAA,IAAc,CAAA,cAAA,GAAY,KAAK,CAAC;AAUhC,QAAA,IAAK,CAAA,KAAA,GAAY,KAAK,CAAC;AAYvB,QAAA,IAAe,CAAA,eAAA,GAAW,IAAI,CAAC;AAc/B,QAAA,IAAU,CAAA,UAAA,GAAW,IAAI,CAAC;AAGtB,QAAA,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AAC5C,QAAA,IAAI,CAAC,MAAM,GAAG,iBAAiB,EAAE,GAAG,OAAO,CAAC;KAC/C;AA7ED,IAAA,IAAa,QAAQ,GAAA;QACjB,OAAO,IAAI,CAAC,SAAS,CAAC;KACzB;IACD,IAAI,QAAQ,CAAC,GAAW,EAAA;AACpB,QAAA,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC;AACrB,QAAA,OAAO,CAAC,IAAI,CAAC,kFAAkF,CAAC,CAAC;KACpG;AAyED,IAAA,IAAa,WAAW,GAAA;QACpB,OAAO,IAAI,CAAC,YAAY,CAAC;KAC5B;IAED,IAAI,WAAW,CAAC,GAAU,EAAA;AACtB,QAAA,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC;QACxB,IAAI,CAAC,uBAAuB,EAAE,CAAC;KAClC;IAED,kBAAkB,GAAA;;AAEd,QAAA,IAAI,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE;YACtE,UAAU,CAAC,MAAK;gBACZ,IAAI,IAAI,CAAC,OAAO,EAAE;oBACd,IAAI,CAAC,YAAY,EAAE,CAAC;AACvB,iBAAA;aACJ,EAAE,CAAC,CAAC,CAAC;AACN,YAAA,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;AACnC,SAAA;QAED,IAAI,IAAI,CAAC,sBAAsB,EAAE;YAC7B,UAAU,CAAC,MAAK;AACZ,gBAAA,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,YAAY,EAAE;AACnC,oBAAA,IAAI,QAAQ,GAAG,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;AAErE,oBAAA,IAAI,QAAQ,EAAE;wBACV,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;AACxD,qBAAA;AACJ,iBAAA;aACJ,EAAE,CAAC,CAAC,CAAC;AACN,YAAA,IAAI,CAAC,sBAAsB,GAAG,KAAK,CAAC;AACvC,SAAA;KACJ;IAED,eAAe,GAAA;QACX,cAAc,CAAC,KAAK,EAAE,CAAC;KAC1B;IAED,uBAAuB,GAAA;QACnB,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE;AAC3C,YAAA,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;AAC5B,YAAA,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE;AAC1B,gBAAA,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;gBACvB,IAAI,CAAC,IAAI,EAAE,CAAC;AACZ,gBAAA,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;gBAE/B,IAAI,IAAI,CAAC,aAAa,EAAE;oBACpB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;AAC/C,iBAAA;AACJ,aAAA;AAAM,iBAAA;AACH,gBAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;gBAEtB,IAAI,IAAI,CAAC,gBAAgB,EAAE;oBACvB,IAAI,CAAC,IAAI,EAAE,CAAC;AACZ,oBAAA,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;AAClC,iBAAA;AAAM,qBAAA;oBACH,IAAI,CAAC,IAAI,EAAE,CAAC;AACf,iBAAA;AACJ,aAAA;AAED,YAAA,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;AACxB,SAAA;KACJ;IAED,kBAAkB,GAAA;QACd,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,KAAI;AAC5B,YAAA,QAAQ,IAAI,CAAC,OAAO,EAAE;AAClB,gBAAA,KAAK,MAAM;AACP,oBAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC;oBAClC,MAAM;AAEV,gBAAA,KAAK,OAAO;AACR,oBAAA,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC;oBACnC,MAAM;AAEV,gBAAA,KAAK,cAAc;AACf,oBAAA,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,QAAQ,CAAC;oBAC1C,MAAM;AAEV,gBAAA,KAAK,QAAQ;AACT,oBAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC;oBACpC,MAAM;AAEV,gBAAA,KAAK,OAAO;AACR,oBAAA,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC;oBACnC,MAAM;AAEV,gBAAA,KAAK,QAAQ;AACT,oBAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC;oBACpC,MAAM;AAEV,gBAAA,KAAK,QAAQ;AACT,oBAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC;oBACpC,MAAM;AAEV,gBAAA;AACI,oBAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC;oBAClC,MAAM;AACb,aAAA;AACL,SAAC,CAAC,CAAC;KACN;AAED,IAAA,UAAU,CAAC,KAAU,EAAA;AACjB,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;AACnB,QAAA,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;QAC7C,IAAI,CAAC,gBAAgB,EAAE,CAAC;AACxB,QAAA,IAAI,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC;KAC1B;AAED,IAAA,sBAAsB,CAAC,WAAgB,EAAA;QACnC,OAAO,IAAI,CAAC,mBAAmB,GAAG,WAAW,CAAC,gBAAgB,CAAC,WAAW,EAAE,IAAI,CAAC,mBAAmB,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC;KAC7H;AAED,IAAA,mBAAmB,CAAC,WAAgB,EAAA;AAChC,QAAA,OAAO,IAAI,CAAC,gBAAgB,GAAG,WAAW,CAAC,gBAAgB,CAAC,WAAW,EAAE,IAAI,CAAC,gBAAgB,CAAC,GAAG,WAAW,CAAC,KAAK,IAAI,SAAS,GAAG,WAAW,CAAC,KAAK,GAAG,WAAW,CAAC;KACtK;AAED,IAAA,gBAAgB,CAAC,EAAY,EAAA;AACzB,QAAA,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;KAC3B;AAED,IAAA,iBAAiB,CAAC,EAAY,EAAA;AAC1B,QAAA,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;KAC5B;AAED,IAAA,gBAAgB,CAAC,GAAY,EAAA;AACzB,QAAA,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC;AACpB,QAAA,IAAI,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC;KAC1B;AAED,IAAA,OAAO,CAAC,KAAY,EAAA;;QAEhB,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,UAAU,CAAC,IAAI,EAAE,EAAE;YACzC,OAAO;AACV,SAAA;QAED,IAAI,IAAI,CAAC,OAAO,EAAE;AACd,YAAA,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC9B,SAAA;AAED,QAAA,IAAI,KAAK,GAAsB,KAAK,CAAC,MAAO,CAAC,KAAK,CAAC;AACnD,QAAA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE;AACxC,YAAA,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;AAC7B,SAAA;QAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;AACtC,YAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;YAClB,IAAI,CAAC,IAAI,EAAE,CAAC;AACZ,YAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACzB,YAAA,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;AAC7B,SAAA;AAED,QAAA,IAAI,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,SAAS,EAAE;AAChC,YAAA,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC,MAAK;AAC3B,gBAAA,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AAC9B,aAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;AAClB,SAAA;AAAM,aAAA;YACH,IAAI,CAAC,IAAI,EAAE,CAAC;AACf,SAAA;QACD,IAAI,CAAC,iBAAiB,EAAE,CAAC;AACzB,QAAA,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;KAC7B;AAED,IAAA,YAAY,CAAC,KAAiB,EAAA;QAC1B,IAAI,IAAI,CAAC,qBAAqB,EAAE;AAC5B,YAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;AAC1B,SAAA;KACJ;IAED,MAAM,CAAC,KAAU,EAAE,KAAa,EAAA;;AAE5B,QAAA,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE;YACvC,OAAO;AACV,SAAA;AAED,QAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;AAEpB,QAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC;AACrB,YAAA,aAAa,EAAE,KAAK;AACpB,YAAA,KAAK,EAAE,KAAK;AACf,SAAA,CAAC,CAAC;KACN;AAED,IAAA,UAAU,CAAC,MAAW,EAAE,KAAA,GAAiB,IAAI,EAAA;QACzC,IAAI,IAAI,CAAC,gCAAgC,EAAE;AACvC,YAAA,YAAY,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;AACpD,YAAA,IAAI,CAAC,gCAAgC,GAAG,IAAI,CAAC;AAChD,SAAA;QAED,IAAI,IAAI,CAAC,QAAQ,EAAE;YACf,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,KAAK,GAAG,EAAE,CAAC;YAC3C,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;AAC9B,YAAA,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;gBAC1C,IAAI,CAAC,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;AACrC,gBAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAClC,aAAA;AACJ,SAAA;AAAM,aAAA;AACH,YAAA,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;AACjE,YAAA,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC;AACpB,YAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAClC,SAAA;AAED,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3B,IAAI,CAAC,iBAAiB,EAAE,CAAC;AAEzB,QAAA,IAAI,KAAK,EAAE;AACP,YAAA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;YACxB,IAAI,CAAC,UAAU,EAAE,CAAC;AACrB,SAAA;KACJ;IAED,IAAI,GAAA;AACA,QAAA,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,OAAO,EAAE;AACnC,YAAA,IAAI,QAAQ,GAAG,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,aAAa,CAAC,aAAa,IAAI,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,aAAa,IAAI,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;AAErN,YAAA,IAAI,CAAC,IAAI,CAAC,cAAc,IAAI,QAAQ,EAAE;AAClC,gBAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;AAC9B,aAAA;AACJ,SAAA;KACJ;IAED,KAAK,GAAA;QACD,IAAI,IAAI,CAAC,QAAQ,EAAE;AACf,YAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;AACrB,SAAA;AAAM,aAAA;AACH,YAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;YACvB,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,GAAG,EAAE,CAAC;AACzC,SAAA;QAED,IAAI,CAAC,iBAAiB,EAAE,CAAC;AACzB,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC/B,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;KACvB;AAED,IAAA,uBAAuB,CAAC,KAAqB,EAAA;;QACzC,QAAQ,KAAK,CAAC,OAAO;AACjB,YAAA,KAAK,SAAS;AACV,gBAAA,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;gBAC7B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC;AAC3G,gBAAA,IAAI,CAAC,aAAa,KAAI,CAAA,EAAA,GAAA,IAAI,CAAC,QAAQ,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,CAAA,CAAC;gBACrF,IAAI,CAAC,aAAa,EAAE,CAAC;gBAErB,IAAI,IAAI,CAAC,UAAU,EAAE;oBACjB,WAAW,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;AAC1F,iBAAA;gBAED,IAAI,CAAC,YAAY,EAAE,CAAC;gBACpB,IAAI,CAAC,yBAAyB,EAAE,CAAC;gBACjC,IAAI,CAAC,0BAA0B,EAAE,CAAC;gBAClC,IAAI,CAAC,kBAAkB,EAAE,CAAC;AAC1B,gBAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACxB,MAAM;AAEV,YAAA,KAAK,MAAM;gBACP,IAAI,CAAC,aAAa,EAAE,CAAC;gBACrB,MAAM;AACb,SAAA;KACJ;AAED,IAAA,qBAAqB,CAAC,KAAqB,EAAA;QACvC,QAAQ,KAAK,CAAC,OAAO;AACjB,YAAA,KAAK,MAAM;gBACP,IAAI,IAAI,CAAC,UAAU,EAAE;AACjB,oBAAA,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AACpC,iBAAA;gBACD,MAAM;AACb,SAAA;KACJ;AAED,IAAA,cAAc,CAAC,KAAK,EAAA;AAChB,QAAA,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC;AACpB,YAAA,aAAa,EAAE,KAAK;AACpB,YAAA,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,aAAa;AAChC,SAAA,CAAC,CAAC;KACN;IAED,aAAa,GAAA;QACT,IAAI,IAAI,CAAC,QAAQ,EAAE;AACf,YAAA,IAAI,IAAI,CAAC,QAAQ,KAAK,MAAM;gBAAE,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;;gBACjE,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YAEzD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE;gBAC9B,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;AAC/F,aAAA;AACJ,SAAA;KACJ;AAED,IAAA,gBAAgB,CAAC,KAAK,EAAA;QAClB,IAAI,IAAI,GAAG,IAAI,CAAC,KAAK,GAAG,WAAW,CAAC,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;AAChF,QAAA,OAAO,IAAI,MAAM,IAAI,IAAI,SAAS,CAAC,GAAG,IAAI,GAAG,EAAE,CAAC;KACnD;IAED,oBAAoB,GAAA;AAChB,QAAA,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE;YAC/B,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AACnD,SAAA;KACJ;IAED,YAAY,GAAA;QACR,IAAI,IAAI,CAAC,QAAQ;YAAE,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;;YAC1I,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;KACpI;IAED,IAAI,GAAA;AACA,QAAA,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;AAC5B,QAAA,IAAI,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC;KAC1B;AAED,IAAA,mBAAmB,CAAC,KAAK,EAAA;AACrB,QAAA,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE;YACtB,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,IAAI,UAAU,GAAG,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC;AAE1G,YAAA,IAAI,IAAI,CAAC,YAAY,KAAK,OAAO;AAAE,gBAAA,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AACrD,iBAAA,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS;AAAE,gBAAA,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;AAEzE,YAAA,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC;AACtB,gBAAA,aAAa,EAAE,KAAK;AACpB,gBAAA,KAAK,EAAE,UAAU;AACpB,aAAA,CAAC,CAAC;AACN,SAAA;AAAM,aAAA;YACH,IAAI,CAAC,IAAI,EAAE,CAAC;AACf,SAAA;KACJ;IAED,UAAU,GAAA;QACN,IAAI,IAAI,CAAC,QAAQ;AAAE,YAAA,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;;AACtD,YAAA,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;KAC3C;AAED,IAAA,IAAI,iBAAiB,GAAA;AACjB,QAAA,OAAO,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC;KACzF;AAED,IAAA,UAAU,CAAC,IAAS,EAAA;QAChB,IAAI,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACzC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,SAAS,CAAC,CAAC;AAC3D,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/B,IAAI,CAAC,iBAAiB,EAAE,CAAC;AACzB,QAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;KACtC;AAED,IAAA,SAAS,CAAC,KAAK,EAAA;QACX,IAAI,IAAI,CAAC,cAAc,EAAE;YACrB,QAAQ,KAAK,CAAC,KAAK;;AAEf,gBAAA,KAAK,EAAE;oBACH,IAAI,IAAI,CAAC,KAAK,EAAE;AACZ,wBAAA,IAAI,kBAAkB,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;AAE3F,wBAAA,IAAI,kBAAkB,KAAK,CAAC,CAAC,EAAE;AAC3B,4BAAA,IAAI,aAAa,GAAG,kBAAkB,CAAC,SAAS,GAAG,CAAC,CAAC;AACrD,4BAAA,IAAI,aAAa,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,EAAE;AACrG,gCAAA,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;AACnH,gCAAA,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC;AACtC,6BAAA;iCAAM,IAAI,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,UAAU,GAAG,CAAC,CAAC,EAAE;gCAC5D,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC3G,gCAAA,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC;AACtC,6BAAA;AACJ,yBAAA;AAAM,6BAAA;AACH,4BAAA,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9E,yBAAA;AACJ,qBAAA;AAAM,yBAAA;AACH,wBAAA,IAAI,kBAAkB,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;AAEtF,wBAAA,IAAI,kBAAkB,IAAI,CAAC,CAAC,EAAE;AAC1B,4BAAA,IAAI,aAAa,GAAG,kBAAkB,GAAG,CAAC,CAAC;AAC3C,4BAAA,IAAI,aAAa,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE;gCAC1C,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;AACvD,gCAAA,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC;AACtC,6BAAA;AACJ,yBAAA;AAAM,6BAAA;4BACH,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;AAC9C,yBAAA;AACJ,qBAAA;oBAED,KAAK,CAAC,cAAc,EAAE,CAAC;oBACvB,MAAM;;AAGV,gBAAA,KAAK,EAAE;oBACH,IAAI,IAAI,CAAC,KAAK,EAAE;AACZ,wBAAA,IAAI,kBAAkB,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;AAC3F,wBAAA,IAAI,kBAAkB,KAAK,CAAC,CAAC,EAAE;AAC3B,4BAAA,IAAI,aAAa,GAAG,kBAAkB,CAAC,SAAS,GAAG,CAAC,CAAC;4BACrD,IAAI,aAAa,IAAI,CAAC,EAAE;AACpB,gCAAA,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;AACnH,gCAAA,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC;AACtC,6BAAA;iCAAM,IAAI,aAAa,GAAG,CAAC,EAAE;AAC1B,gCAAA,IAAI,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;AACpE,gCAAA,IAAI,SAAS,EAAE;oCACX,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AACjH,oCAAA,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC;AACtC,iCAAA;AACJ,6BAAA;AACJ,yBAAA;AACJ,qBAAA;AAAM,yBAAA;AACH,wBAAA,IAAI,kBAAkB,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;wBAEtF,IAAI,kBAAkB,GAAG,CAAC,EAAE;AACxB,4BAAA,IAAI,aAAa,GAAG,kBAAkB,GAAG,CAAC,CAAC;4BAC3C,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;AACvD,4BAAA,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC;AACtC,yBAAA;AACJ,qBAAA;oBAED,KAAK,CAAC,cAAc,EAAE,CAAC;oBACvB,MAAM;;AAGV,gBAAA,KAAK,EAAE;oBACH,IAAI,IAAI,CAAC,eAAe,EAAE;AACtB,wBAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;wBACtC,IAAI,CAAC,IAAI,EAAE,CAAC;AACf,qBAAA;oBACD,KAAK,CAAC,cAAc,EAAE,CAAC;oBACvB,MAAM;;AAGV,gBAAA,KAAK,EAAE;oBACH,IAAI,CAAC,IAAI,EAAE,CAAC;oBACZ,KAAK,CAAC,cAAc,EAAE,CAAC;oBACvB,MAAM;;AAGV,gBAAA,KAAK,CAAC;oBACF,IAAI,IAAI,CAAC,eAAe,EAAE;AACtB,wBAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;AACzC,qBAAA;oBACD,IAAI,CAAC,IAAI,EAAE,CAAC;oBACZ,MAAM;AACb,aAAA;AACJ,SAAA;AAAM,aAAA;YACH,IAAI,KAAK,CAAC,KAAK,KAAK,EAAE,IAAI,IAAI,CAAC,WAAW,EAAE;gBACxC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC1C,aAAA;AAAM,iBAAA,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;AAC7D,gBAAA,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;AAC/D,gBAAA,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;AAChB,gBAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAClC,aAAA;AAAM,iBAAA,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,IAAI,IAAI,CAAC,QAAQ,EAAE;AAC5D,gBAAA,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;AACjB,gBAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC/B,IAAI,CAAC,iBAAiB,EAAE,CAAC;AAC5B,aAAA;AACJ,SAAA;QAED,IAAI,IAAI,CAAC,QAAQ,EAAE;YACf,QAAQ,KAAK,CAAC,KAAK;;AAEf,gBAAA,KAAK,CAAC;AACF,oBAAA,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,KAAK,EAAE;wBAC3E,IAAI,CAAC,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;wBAC7B,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;AACtC,wBAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;wBAC/B,IAAI,CAAC,iBAAiB,EAAE,CAAC;AACzB,wBAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AACtC,qBAAA;oBACD,MAAM;AACb,aAAA;AACJ,SAAA;AAED,QAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;KAC5B;AAED,IAAA,OAAO,CAAC,KAAK,EAAA;AACT,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC5B;AAED,IAAA,YAAY,CAAC,KAAK,EAAA;QACd,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,eAAe,EAAE;YAC3C,IAAI,UAAU,GAAG,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC;AAC1G,YAAA,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;AAClC,SAAA;AAED,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;AAClB,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACzB,QAAA,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;KAC5B;AAED,IAAA,WAAW,CAAC,KAAK,EAAA;AACb,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,cAAc,EAAE,CAAC;AACtB,QAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC3B;AAED,IAAA,aAAa,CAAC,KAAK,EAAA;QACf,IAAI,IAAI,CAAC,cAAc,EAAE;YACrB,IAAI,KAAK,GAAG,KAAK,CAAC;YAClB,IAAI,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YAE3C,IAAI,IAAI,CAAC,WAAW,EAAE;AAClB,gBAAA,KAAK,IAAI,UAAU,IAAI,IAAI,CAAC,WAAW,EAAE;oBACrC,IAAI,SAAS,GAAG,IAAI,CAAC,KAAK,GAAG,WAAW,CAAC,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,UAAU,CAAC;oBAC/F,IAAI,SAAS,IAAI,UAAU,KAAK,SAAS,CAAC,IAAI,EAAE,EAAE;wBAC9C,KAAK,GAAG,IAAI,CAAC;AACb,wBAAA,IAAI,CAAC,gCAAgC,GAAG,UAAU,CAAC,MAAK;AACpD,4BAAA,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;yBACtC,EAAE,GAAG,CAAC,CAAC;wBACR,MAAM;AACT,qBAAA;AACJ,iBAAA;AACJ,aAAA;YAED,IAAI,CAAC,KAAK,EAAE;gBACR,IAAI,IAAI,CAAC,QAAQ,EAAE;oBACf,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,KAAK,GAAG,EAAE,CAAC;AAC9C,iBAAA;AAAM,qBAAA;AACH,oBAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;oBAClB,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,GAAG,EAAE,CAAC;AACzC,iBAAA;AAED,gBAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACzB,gBAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC/B,IAAI,CAAC,iBAAiB,EAAE,CAAC;AAC5B,aAAA;AACJ,SAAA;KACJ;AAED,IAAA,YAAY,CAAC,KAAqB,EAAA;AAC9B,QAAA,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;KACzB;AAED,IAAA,UAAU,CAAC,GAAQ,EAAA;QACf,IAAI,QAAQ,GAAY,KAAK,CAAC;QAC9B,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;AACjC,YAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AACxC,gBAAA,IAAI,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE;oBACtD,QAAQ,GAAG,IAAI,CAAC;oBAChB,MAAM;AACT,iBAAA;AACJ,aAAA;AACJ,SAAA;AACD,QAAA,OAAO,QAAQ,CAAC;KACnB;IAED,eAAe,CAAC,MAAM,EAAE,WAAW,EAAA;AAC/B,QAAA,IAAI,KAAK,GAAW,CAAC,CAAC,CAAC;AACvB,QAAA,IAAI,WAAW,EAAE;AACb,YAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACzC,IAAI,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE;oBAC5C,KAAK,GAAG,CAAC,CAAC;oBACV,MAAM;AACT,iBAAA;AACJ,aAAA;AACJ,SAAA;AAED,QAAA,OAAO,KAAK,CAAC;KAChB;IAED,oBAAoB,CAAC,GAAQ,EAAE,IAAW,EAAA;QACtC,IAAI,UAAU,EAAE,SAAS,CAAC;AAE1B,QAAA,IAAI,IAAI,EAAE;AACN,YAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAClC,UAAU,GAAG,CAAC,CAAC;AACf,gBAAA,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,EAAE,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAE5E,gBAAA,IAAI,SAAS,KAAK,CAAC,CAAC,EAAE;oBAClB,MAAM;AACT,iBAAA;AACJ,aAAA;AACJ,SAAA;AAED,QAAA,IAAI,SAAS,KAAK,CAAC,CAAC,EAAE;YAClB,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;AAC3D,SAAA;AAAM,aAAA;YACH,OAAO,CAAC,CAAC,CAAC;AACb,SAAA;KACJ;IAED,iBAAiB,GAAA;QACb,IAAI,IAAI,CAAC,QAAQ;AAAE,YAAA,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,MAAM,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC,aAAa,IAAI,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;;AACvK,YAAA,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,eAAe,IAAI,EAAE,MAAM,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,aAAa,IAAI,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;KACrK;IAED,gBAAgB,GAAA;QACZ,IAAI,cAAc,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACvD,QAAA,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;QAEtC,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE;YAC5C,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,GAAG,cAAc,CAAC;AACrD,SAAA;QAED,IAAI,CAAC,iBAAiB,EAAE,CAAC;KAC5B;IAED,yBAAyB,GAAA;AACrB,QAAA,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE;AAC7B,YAAA,MAAM,cAAc,GAAQ,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,aAAa,GAAG,UAAU,CAAC;AAEvF,YAAA,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,cAAc,EAAE,OAAO,EAAE,CAAC,KAAK,KAAI;AACjF,gBAAA,IAAI,KAAK,CAAC,KAAK,KAAK,CAAC,EAAE;oBACnB,OAAO;AACV,iBAAA;AAED,gBAAA,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE;oBAClD,IAAI,CAAC,IAAI,EAAE,CAAC;AACf,iBAAA;AAED,gBAAA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;AACxB,gBAAA,IAAI,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC;AAC3B,aAAC,CAAC,CAAC;AACN,SAAA;KACJ;AAED,IAAA,eAAe,CAAC,KAAK,EAAA;QACjB,IAAI,IAAI,CAAC,QAAQ,EAAE;AACf,YAAA,IAAI,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;AAC1B,YAAA,OAAO,MAAM,KAAK,IAAI,CAAC,cAAc,CAAC,aAAa,IAAI,MAAM,CAAC,UAAU,KAAK,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC;AAClH,SAAA;AAAM,aAAA;AACH,YAAA,OAAO,KAAK,CAAC;AAChB,SAAA;KACJ;IAED,2BAA2B,GAAA;QACvB,IAAI,IAAI,CAAC,qBAAqB,EAAE;YAC5B,IAAI,CAAC,qBAAqB,EAAE,CAAC;AAC7B,YAAA,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;AACrC,SAAA;KACJ;IAED,0BAA0B,GAAA;QACtB,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7D,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,sBAAsB,CAAC,CAAC;KAClE;IAED,4BAA4B,GAAA;QACxB,IAAI,IAAI,CAAC,sBAAsB,EAAE;YAC7B,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,IAAI,CAAC,sBAAsB,CAAC,CAAC;AAClE,YAAA,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC;AACtC,SAAA;KACJ;IAED,cAAc,GAAA;QACV,IAAI,IAAI,CAAC,cAAc,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,EAAE;YACpD,IAAI,CAAC,IAAI,EAAE,CAAC;AACf,SAAA;KACJ;IAED,kBAAkB,GAAA;AACd,QAAA,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;AACrB,YAAA,IAAI,CAAC,aAAa,GAAG,IAAI,6BAA6B,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,MAAK;gBACxF,IAAI,IAAI,CAAC,cAAc,EAAE;oBACrB,IAAI,CAAC,IAAI,EAAE,CAAC;AACf,iBAAA;AACL,aAAC,CAAC,CAAC;AACN,SAAA;AAED,QAAA,IAAI,CAAC,aAAa,CAAC,kBAAkB,EAAE,CAAC;KAC3C;IAED,oBAAoB,GAAA;QAChB,IAAI,IAAI,CAAC,aAAa,EAAE;AACpB,YAAA,IAAI,CAAC,aAAa,CAAC,oBAAoB,EAAE,CAAC;AAC7C,SAAA;KACJ;IAED,aAAa,GAAA;QACT,IAAI,CAAC,2BAA2B,EAAE,CAAC;QACnC,IAAI,CAAC,4BAA4B,EAAE,CAAC;QACpC,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC5B,IAAI,IAAI,CAAC,OAAO,EAAE;AACd,YAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;AACpB,YAAA,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;AACtB,SAAA;KACJ;IAED,WAAW,GAAA;QACP,IAAI,IAAI,CAAC,gCAAgC,EAAE;AACvC,YAAA,YAAY,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;AACpD,YAAA,IAAI,CAAC,gCAAgC,GAAG,IAAI,CAAC;AAChD,SAAA;QAED,IAAI,IAAI,CAAC,aAAa,EAAE;AACpB,YAAA,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;AAC7B,YAAA,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;AAC7B,SAAA;QAED,IAAI,IAAI,CAAC,OAAO,EAAE;AACd,YAAA,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AACnC,SAAA;QAED,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC5B,IAAI,CAAC,aAAa,EAAE,CAAC;KACxB;;yGAx4BQ,YAAY,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,eAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,aAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,cAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAZ,YAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAY,87DALV,CAAC,2BAA2B,CAAC,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,WAAA,EAAA,SAAA,EAsHvB,aAAa,EAzSpB,CAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,aAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,WAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,SAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,IAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,cAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,SAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,kBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,OAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,OAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,UAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,UAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA2KT,EACW,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,w5CAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,aAAA,EAAA,OAAA,EAAA,MAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,aAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,QAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,IAAA,EAAA,OAAA,EAAA,YAAA,EAAA,UAAA,EAAA,OAAA,EAAA,UAAA,EAAA,cAAA,EAAA,aAAA,EAAA,aAAA,EAAA,MAAA,EAAA,OAAA,EAAA,aAAA,EAAA,YAAA,EAAA,QAAA,EAAA,MAAA,EAAA,UAAA,EAAA,gBAAA,EAAA,SAAA,EAAA,YAAA,EAAA,YAAA,EAAA,mBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,SAAA,CAAA,EAAA,OAAA,EAAA,CAAA,YAAA,EAAA,UAAA,EAAA,qBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC,EAAE,OAAO,CAAC,0BAA0B,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,0BAA0B,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;2FAYpO,YAAY,EAAA,UAAA,EAAA,CAAA;kBA1LxB,SAAS;YACI,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,gBAAgB,EAChB,QAAA,EAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA2KT,EACW,UAAA,EAAA,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC,EAAE,OAAO,CAAC,0BAA0B,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,0BAA0B,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACvO,IAAA,EAAA;AACF,wBAAA,KAAK,EAAE,0BAA0B;AACjC,wBAAA,+BAA+B,EAAE,QAAQ;AACzC,wBAAA,8BAA8B,EAAE,uDAAuD;AACvF,wBAAA,kCAAkC,EAAE,wBAAwB;qBAC/D,EACU,SAAA,EAAA,CAAC,2BAA2B,CAAC,EACvB,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAAA,aAAA,EAChC,iBAAiB,CAAC,IAAI,EAAA,MAAA,EAAA,CAAA,w5CAAA,CAAA,EAAA,CAAA;gPAI5B,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAEG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAEG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAEG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBAEG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBAEG,eAAe,EAAA,CAAA;sBAAvB,KAAK;gBAEG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBAEG,OAAO,EAAA,CAAA;sBAAf,KAAK;gBAEG,eAAe,EAAA,CAAA;sBAAvB,KAAK;gBAEG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBAEG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBAEG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBAEG,YAAY,EAAA,CAAA;sBAApB,KAAK;gBAEG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBAEG,aAAa,EAAA,CAAA;sBAArB,KAAK;gBAEG,qBAAqB,EAAA,CAAA;sBAA7B,KAAK;gBAEG,oBAAoB,EAAA,CAAA;sBAA5B,KAAK;gBAEG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAEG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBAEG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBAEG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBAEG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBAEG,aAAa,EAAA,CAAA;sBAArB,KAAK;gBAEG,cAAc,EAAA,CAAA;sBAAtB,KAAK;gBAEG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBAEG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBAEG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBAEG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAEG,iBAAiB,EAAA,CAAA;sBAAzB,KAAK;gBAEG,cAAc,EAAA,CAAA;sBAAtB,KAAK;gBAEG,YAAY,EAAA,CAAA;sBAApB,KAAK;gBAEG,MAAM,EAAA,CAAA;sBAAd,KAAK;gBAEG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAEG,eAAe,EAAA,CAAA;sBAAvB,KAAK;gBAEG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAEG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAEG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBAEG,gBAAgB,EAAA,CAAA;sBAAxB,KAAK;gBAEG,YAAY,EAAA,CAAA;sBAApB,KAAK;gBAEG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBAEG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBAEG,OAAO,EAAA,CAAA;sBAAf,KAAK;gBAEG,YAAY,EAAA,CAAA;sBAApB,KAAK;gBAEG,qBAAqB,EAAA,CAAA;sBAA7B,KAAK;gBAEG,qBAAqB,EAAA,CAAA;sBAA7B,KAAK;gBAEG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAEG,YAAY,EAAA,CAAA;sBAApB,KAAK;gBAEG,mBAAmB,EAAA,CAAA;sBAA3B,KAAK;gBAEG,gBAAgB,EAAA,CAAA;sBAAxB,KAAK;gBAEkB,WAAW,EAAA,CAAA;sBAAlC,SAAS;uBAAC,WAAW,CAAA;gBAEL,OAAO,EAAA,CAAA;sBAAvB,SAAS;uBAAC,IAAI,CAAA;gBAEO,YAAY,EAAA,CAAA;sBAAjC,SAAS;uBAAC,SAAS,CAAA;gBAES,gBAAgB,EAAA,CAAA;sBAA5C,SAAS;uBAAC,gBAAgB,CAAA;gBAEP,cAAc,EAAA,CAAA;sBAAjC,SAAS;uBAAC,OAAO,CAAA;gBAEE,cAAc,EAAA,CAAA;sBAAjC,SAAS;uBAAC,OAAO,CAAA;gBAEK,QAAQ,EAAA,CAAA;sBAA9B,SAAS;uBAAC,UAAU,CAAA;gBAEW,SAAS,EAAA,CAAA;sBAAxC,eAAe;uBAAC,aAAa,CAAA;gBAEpB,cAAc,EAAA,CAAA;sBAAvB,MAAM;gBAEG,QAAQ,EAAA,CAAA;sBAAjB,MAAM;gBAEG,UAAU,EAAA,CAAA;sBAAnB,MAAM;gBAEG,OAAO,EAAA,CAAA;sBAAhB,MAAM;gBAEG,MAAM,EAAA,CAAA;sBAAf,MAAM;gBAEG,eAAe,EAAA,CAAA;sBAAxB,MAAM;gBAEG,OAAO,EAAA,CAAA;sBAAhB,MAAM;gBAEG,OAAO,EAAA,CAAA;sBAAhB,MAAM;gBAEG,MAAM,EAAA,CAAA;sBAAf,MAAM;gBAEG,MAAM,EAAA,CAAA;sBAAf,MAAM;gBAEG,UAAU,EAAA,CAAA;sBAAnB,MAAM;gBAIM,QAAQ,EAAA,CAAA;sBAApB,KAAK;gBA+EO,WAAW,EAAA,CAAA;sBAAvB,KAAK;;MAsrBG,kBAAkB,CAAA;;+GAAlB,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;gHAAlB,kBAAkB,EAAA,YAAA,EAAA,CAh5BlB,YAAY,CA44BX,EAAA,OAAA,EAAA,CAAA,YAAY,EAAE,eAAe,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,eAAe,CA54BzG,EAAA,OAAA,EAAA,CAAA,YAAY,EA64BG,YAAY,EAAE,cAAc,EAAE,eAAe,CAAA,EAAA,CAAA,CAAA;AAG5D,kBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,YAJjB,YAAY,EAAE,eAAe,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,eAAe,EAC1F,YAAY,EAAE,cAAc,EAAE,eAAe,CAAA,EAAA,CAAA,CAAA;2FAG5D,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAL9B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,eAAe,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,eAAe,CAAC;oBACnH,OAAO,EAAE,CAAC,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,eAAe,CAAC;oBACtE,YAAY,EAAE,CAAC,YAAY,CAAC;iBAC/B,CAAA;;;ACjnCD;;AAEG;;;;"}
1
+ {"version":3,"file":"primeng-autocomplete.mjs","sources":["../../src/app/components/autocomplete/autocomplete.ts","../../src/app/components/autocomplete/primeng-autocomplete.ts"],"sourcesContent":["import {\n NgModule,\n Component,\n ViewChild,\n ElementRef,\n AfterViewChecked,\n AfterContentInit,\n OnDestroy,\n Input,\n Output,\n EventEmitter,\n ContentChildren,\n QueryList,\n TemplateRef,\n Renderer2,\n forwardRef,\n ChangeDetectorRef,\n IterableDiffers,\n ChangeDetectionStrategy,\n ViewEncapsulation,\n AfterViewInit\n} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { trigger, style, transition, animate, AnimationEvent } from '@angular/animations';\nimport { InputTextModule } from 'primeng/inputtext';\nimport { ButtonModule } from 'primeng/button';\nimport { RippleModule } from 'primeng/ripple';\nimport { SharedModule, PrimeTemplate, TranslationKeys, PrimeNGConfig, OverlayService, LicenseManager } from 'primeng/api';\nimport { DomHandler, ConnectedOverlayScrollHandler } from 'primeng/dom';\nimport { ObjectUtils, UniqueComponentId, ZIndexUtils } from 'primeng/utils';\nimport { NG_VALUE_ACCESSOR, ControlValueAccessor } from '@angular/forms';\nimport { Scroller, ScrollerModule, ScrollerOptions } from 'primeng/scroller';\nimport { AutoFocusModule } from 'primeng/autofocus';\n\nexport const AUTOCOMPLETE_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AutoComplete),\n multi: true\n};\n\n@Component({\n selector: 'p-autoComplete',\n template: `\n <span #container [ngClass]=\"{ 'p-autocomplete p-component': true, 'p-autocomplete-dd': dropdown, 'p-autocomplete-multiple': multiple }\" [ngStyle]=\"style\" [class]=\"styleClass\">\n <input\n pAutoFocus\n [autofocus]=\"autofocus\"\n *ngIf=\"!multiple\"\n #in\n [attr.type]=\"type\"\n [attr.id]=\"inputId\"\n [ngStyle]=\"inputStyle\"\n [class]=\"inputStyleClass\"\n [autocomplete]=\"autocomplete\"\n [attr.required]=\"required\"\n [attr.name]=\"name\"\n class=\"p-autocomplete-input p-inputtext p-component\"\n [ngClass]=\"{ 'p-autocomplete-dd-input': dropdown, 'p-disabled': disabled }\"\n [value]=\"inputFieldValue\"\n aria-autocomplete=\"list\"\n role=\"searchbox\"\n (click)=\"onInputClick($event)\"\n (input)=\"onInput($event)\"\n (keydown)=\"onKeydown($event)\"\n (keyup)=\"onKeyup($event)\"\n (focus)=\"onInputFocus($event)\"\n (blur)=\"onInputBlur($event)\"\n (change)=\"onInputChange($event)\"\n (paste)=\"onInputPaste($event)\"\n [attr.placeholder]=\"placeholder\"\n [attr.size]=\"size\"\n [attr.maxlength]=\"maxlength\"\n [attr.tabindex]=\"tabindex\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-required]=\"required\"\n />\n <i *ngIf=\"!multiple && filled && !disabled && showClear && !loading\" class=\"p-autocomplete-clear-icon pi pi-times\" (click)=\"clear()\"></i>\n <i *ngIf=\"multiple && filled && !disabled && showClear && !loading\" class=\"p-autocomplete-clear-icon pi pi-times\" (click)=\"clear()\"></i>\n <ul *ngIf=\"multiple\" #multiContainer class=\"p-autocomplete-multiple-container p-component p-inputtext\" [ngClass]=\"{ 'p-disabled': disabled, 'p-focus': focus }\" (click)=\"multiIn.focus()\">\n <li #token *ngFor=\"let val of value\" class=\"p-autocomplete-token\">\n <ng-container *ngTemplateOutlet=\"selectedItemTemplate; context: { $implicit: val }\"></ng-container>\n <span *ngIf=\"!selectedItemTemplate\" class=\"p-autocomplete-token-label\">{{ resolveFieldData(val) }}</span>\n <span class=\"p-autocomplete-token-icon pi pi-times-circle\" (click)=\"removeItem(token)\" *ngIf=\"!disabled && !readonly\"></span>\n </li>\n <li class=\"p-autocomplete-input-token\">\n <input\n pAutoFocus\n [autofocus]=\"autofocus\"\n #multiIn\n [attr.type]=\"type\"\n [attr.id]=\"inputId\"\n [disabled]=\"disabled\"\n [attr.placeholder]=\"value && value.length ? null : placeholder\"\n [attr.tabindex]=\"tabindex\"\n [attr.maxlength]=\"maxlength\"\n (input)=\"onInput($event)\"\n (click)=\"onInputClick($event)\"\n (keydown)=\"onKeydown($event)\"\n [readonly]=\"readonly\"\n (keyup)=\"onKeyup($event)\"\n (focus)=\"onInputFocus($event)\"\n (blur)=\"onInputBlur($event)\"\n (change)=\"onInputChange($event)\"\n (paste)=\"onInputPaste($event)\"\n [autocomplete]=\"autocomplete\"\n [ngStyle]=\"inputStyle\"\n [class]=\"inputStyleClass\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-required]=\"required\"\n aria-autocomplete=\"list\"\n [attr.aria-controls]=\"listId\"\n role=\"searchbox\"\n [attr.aria-expanded]=\"overlayVisible\"\n aria-haspopup=\"true\"\n [attr.aria-activedescendant]=\"'p-highlighted-option'\"\n />\n </li>\n </ul>\n <i *ngIf=\"loading\" class=\"p-autocomplete-loader pi pi-spinner pi-spin\"></i\n ><button\n #ddBtn\n type=\"button\"\n pButton\n [icon]=\"dropdownIcon\"\n [attr.aria-label]=\"dropdownAriaLabel\"\n class=\"p-autocomplete-dropdown\"\n [disabled]=\"disabled\"\n pRipple\n (click)=\"handleDropdownClick($event)\"\n *ngIf=\"dropdown\"\n [attr.tabindex]=\"tabindex\"\n ></button>\n <div\n #panel\n *ngIf=\"overlayVisible\"\n (click)=\"onOverlayClick($event)\"\n [ngClass]=\"['p-autocomplete-panel p-component']\"\n [style.max-height]=\"virtualScroll ? 'auto' : scrollHeight\"\n [ngStyle]=\"panelStyle\"\n [class]=\"panelStyleClass\"\n [@overlayAnimation]=\"{ value: 'visible', params: { showTransitionParams: showTransitionOptions, hideTransitionParams: hideTransitionOptions } }\"\n (@overlayAnimation.start)=\"onOverlayAnimationStart($event)\"\n (@overlayAnimation.done)=\"onOverlayAnimationEnd($event)\"\n >\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n <p-scroller\n *ngIf=\"virtualScroll\"\n #scroller\n [items]=\"suggestions\"\n [style]=\"{ height: scrollHeight }\"\n [itemSize]=\"virtualScrollItemSize || _itemSize\"\n [autoSize]=\"true\"\n [lazy]=\"lazy\"\n (onLazyLoad)=\"onLazyLoad.emit($event)\"\n [options]=\"virtualScrollOptions\"\n >\n <ng-template pTemplate=\"content\" let-items let-scrollerOptions=\"options\">\n <ng-container *ngTemplateOutlet=\"buildInItems; context: { $implicit: items, options: scrollerOptions }\"></ng-container>\n </ng-template>\n <ng-container *ngIf=\"loaderTemplate\">\n <ng-template pTemplate=\"loader\" let-scrollerOptions=\"options\">\n <ng-container *ngTemplateOutlet=\"loaderTemplate; context: { options: scrollerOptions }\"></ng-container>\n </ng-template>\n </ng-container>\n </p-scroller>\n <ng-container *ngIf=\"!virtualScroll\">\n <ng-container *ngTemplateOutlet=\"buildInItems; context: { $implicit: suggestions, options: {} }\"></ng-container>\n </ng-container>\n\n <ng-template #buildInItems let-items let-scrollerOptions=\"options\">\n <ul #items role=\"listbox\" [attr.id]=\"listId\" class=\"p-autocomplete-items\" [ngClass]=\"scrollerOptions.contentStyleClass\" [style]=\"scrollerOptions.contentStyle\">\n <ng-container *ngIf=\"group\">\n <ng-template ngFor let-optgroup [ngForOf]=\"items\">\n <li class=\"p-autocomplete-item-group\" [ngStyle]=\"{ height: scrollerOptions.itemSize + 'px' }\">\n <span *ngIf=\"!groupTemplate\">{{ getOptionGroupLabel(optgroup) || 'empty' }}</span>\n <ng-container *ngTemplateOutlet=\"groupTemplate; context: { $implicit: optgroup }\"></ng-container>\n </li>\n <ng-container *ngTemplateOutlet=\"itemslist; context: { $implicit: getOptionGroupChildren(optgroup) }\"></ng-container>\n </ng-template>\n </ng-container>\n <ng-container *ngIf=\"!group\">\n <ng-container *ngTemplateOutlet=\"itemslist; context: { $implicit: items }\"></ng-container>\n </ng-container>\n <ng-template #itemslist let-suggestionsToDisplay>\n <li\n role=\"option\"\n *ngFor=\"let option of suggestionsToDisplay; let idx = index\"\n class=\"p-autocomplete-item\"\n pRipple\n [ngStyle]=\"{ height: scrollerOptions.itemSize + 'px' }\"\n [ngClass]=\"{ 'p-highlight': option === highlightOption }\"\n [id]=\"highlightOption == option ? 'p-highlighted-option' : ''\"\n (click)=\"selectItem(option)\"\n >\n <span *ngIf=\"!itemTemplate\">{{ resolveFieldData(option) }}</span>\n <ng-container *ngTemplateOutlet=\"itemTemplate; context: { $implicit: option, index: scrollerOptions.getOptions ? scrollerOptions.getOptions(idx) : idx }\"></ng-container>\n </li>\n </ng-template>\n <li *ngIf=\"noResults && showEmptyMessage\" class=\"p-autocomplete-empty-message\" [ngStyle]=\"{ height: scrollerOptions.itemSize + 'px' }\">\n <ng-container *ngIf=\"!emptyTemplate; else empty\">\n {{ emptyMessageLabel }}\n </ng-container>\n <ng-container #empty *ngTemplateOutlet=\"emptyTemplate\"></ng-container>\n </li>\n </ul>\n </ng-template>\n <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\n </div>\n </span>\n `,\n animations: [trigger('overlayAnimation', [transition(':enter', [style({ opacity: 0, transform: 'scaleY(0.8)' }), animate('{{showTransitionParams}}')]), transition(':leave', [animate('{{hideTransitionParams}}', style({ opacity: 0 }))])])],\n host: {\n class: 'p-element p-inputwrapper',\n '[class.p-inputwrapper-filled]': 'filled',\n '[class.p-inputwrapper-focus]': '((focus && !disabled) || autofocus) || overlayVisible',\n '[class.p-autocomplete-clearable]': 'showClear && !disabled'\n },\n providers: [AUTOCOMPLETE_VALUE_ACCESSOR],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./autocomplete.css']\n})\nexport class AutoComplete implements AfterViewChecked, AfterContentInit, AfterViewInit, OnDestroy, ControlValueAccessor {\n @Input() minLength: number = 1;\n\n @Input() delay: number = 300;\n\n @Input() style: any;\n\n @Input() panelStyle: any;\n\n @Input() styleClass: string;\n\n @Input() panelStyleClass: string;\n\n @Input() inputStyle: any;\n\n @Input() inputId: string;\n\n @Input() inputStyleClass: string;\n\n @Input() placeholder: string;\n\n @Input() readonly: boolean;\n\n @Input() disabled: boolean;\n\n @Input() scrollHeight: string = '200px';\n\n @Input() lazy: boolean = false;\n\n @Input() virtualScroll: boolean;\n\n @Input() virtualScrollItemSize: number;\n\n @Input() virtualScrollOptions: ScrollerOptions;\n\n @Input() maxlength: number;\n\n @Input() name: string;\n\n @Input() required: boolean;\n\n @Input() size: number;\n\n @Input() appendTo: any;\n\n @Input() autoHighlight: boolean;\n\n @Input() forceSelection: boolean;\n\n @Input() type: string = 'text';\n\n @Input() autoZIndex: boolean = true;\n\n @Input() baseZIndex: number = 0;\n\n @Input() ariaLabel: string;\n\n @Input() dropdownAriaLabel: string;\n\n @Input() ariaLabelledBy: string;\n\n @Input() dropdownIcon: string = 'pi pi-chevron-down';\n\n @Input() unique: boolean = true;\n\n @Input() group: boolean;\n\n @Input() completeOnFocus: boolean = false;\n\n @Input() showClear: boolean = false;\n\n @Input() field: string;\n\n @Input() dropdown: boolean;\n\n @Input() showEmptyMessage: boolean;\n\n @Input() dropdownMode: string = 'blank';\n\n @Input() multiple: boolean;\n\n @Input() tabindex: number;\n\n @Input() dataKey: string;\n\n @Input() emptyMessage: string;\n\n @Input() showTransitionOptions: string = '.12s cubic-bezier(0, 0, 0.2, 1)';\n\n @Input() hideTransitionOptions: string = '.1s linear';\n\n @Input() autofocus: boolean;\n\n @Input() autocomplete: string = 'off';\n\n @Input() optionGroupChildren: string;\n\n @Input() optionGroupLabel: string;\n\n @ViewChild('container') containerEL: ElementRef;\n\n @ViewChild('in') inputEL: ElementRef;\n\n @ViewChild('multiIn') multiInputEL: ElementRef;\n\n @ViewChild('multiContainer') multiContainerEL: ElementRef;\n\n @ViewChild('ddBtn') dropdownButton: ElementRef;\n\n @ViewChild('items') itemsViewChild: ElementRef;\n\n @ViewChild('scroller') scroller: Scroller;\n\n @ContentChildren(PrimeTemplate) templates: QueryList<any>;\n\n @Output() completeMethod: EventEmitter<any> = new EventEmitter();\n\n @Output() onSelect: EventEmitter<any> = new EventEmitter();\n\n @Output() onUnselect: EventEmitter<any> = new EventEmitter();\n\n @Output() onFocus: EventEmitter<any> = new EventEmitter();\n\n @Output() onBlur: EventEmitter<any> = new EventEmitter();\n\n @Output() onDropdownClick: EventEmitter<any> = new EventEmitter();\n\n @Output() onClear: EventEmitter<any> = new EventEmitter();\n\n @Output() onKeyUp: EventEmitter<any> = new EventEmitter();\n\n @Output() onShow: EventEmitter<any> = new EventEmitter();\n\n @Output() onHide: EventEmitter<any> = new EventEmitter();\n\n @Output() onLazyLoad: EventEmitter<any> = new EventEmitter();\n\n /* @deprecated */\n _itemSize: number;\n @Input() get itemSize(): number {\n return this._itemSize;\n }\n set itemSize(val: number) {\n this._itemSize = val;\n console.warn('The itemSize property is deprecated, use virtualScrollItemSize property instead.');\n }\n\n overlay: HTMLDivElement;\n\n itemsWrapper: HTMLDivElement;\n\n itemTemplate: TemplateRef<any>;\n\n emptyTemplate: TemplateRef<any>;\n\n headerTemplate: TemplateRef<any>;\n\n footerTemplate: TemplateRef<any>;\n\n selectedItemTemplate: TemplateRef<any>;\n\n groupTemplate: TemplateRef<any>;\n\n loaderTemplate: TemplateRef<any>;\n\n value: any;\n\n _suggestions: any[];\n\n onModelChange: Function = () => {};\n\n onModelTouched: Function = () => {};\n\n timeout: any;\n\n overlayVisible: boolean = false;\n\n documentClickListener: any;\n\n suggestionsUpdated: boolean;\n\n highlightOption: any;\n\n highlightOptionChanged: boolean;\n\n focus: boolean = false;\n\n filled: boolean;\n\n inputClick: boolean;\n\n inputKeyDown: boolean;\n\n noResults: boolean;\n\n differ: any;\n\n inputFieldValue: string = null;\n\n loading: boolean;\n\n scrollHandler: any;\n\n documentResizeListener: any;\n\n forceSelectionUpdateModelTimeout: any;\n\n listId: string;\n\n itemClicked: boolean;\n\n inputValue: string = null;\n\n constructor(public el: ElementRef, public renderer: Renderer2, public cd: ChangeDetectorRef, public differs: IterableDiffers, public config: PrimeNGConfig, public overlayService: OverlayService) {\n this.differ = differs.find([]).create(null);\n this.listId = UniqueComponentId() + '_list';\n }\n\n @Input() get suggestions(): any[] {\n return this._suggestions;\n }\n\n set suggestions(val: any[]) {\n this._suggestions = val;\n this.handleSuggestionsChange();\n }\n\n ngAfterViewChecked() {\n //Use timeouts as since Angular 4.2, AfterViewChecked is broken and not called after panel is updated\n if (this.suggestionsUpdated && this.overlay && this.overlay.offsetParent) {\n setTimeout(() => {\n if (this.overlay) {\n this.alignOverlay();\n }\n }, 1);\n this.suggestionsUpdated = false;\n }\n\n if (this.highlightOptionChanged) {\n setTimeout(() => {\n if (this.overlay && this.itemsWrapper) {\n let listItem = DomHandler.findSingle(this.overlay, 'li.p-highlight');\n\n if (listItem) {\n DomHandler.scrollInView(this.itemsWrapper, listItem);\n }\n }\n }, 1);\n this.highlightOptionChanged = false;\n }\n }\n\n ngAfterViewInit() {\n LicenseManager.check();\n }\n\n handleSuggestionsChange() {\n if (this._suggestions != null && this.loading) {\n this.highlightOption = null;\n if (this._suggestions.length) {\n this.noResults = false;\n this.show();\n this.suggestionsUpdated = true;\n\n if (this.autoHighlight) {\n this.highlightOption = this._suggestions[0];\n }\n } else {\n this.noResults = true;\n\n if (this.showEmptyMessage) {\n this.show();\n this.suggestionsUpdated = true;\n } else {\n this.hide();\n }\n }\n\n this.loading = false;\n }\n }\n\n ngAfterContentInit() {\n this.templates.forEach((item) => {\n switch (item.getType()) {\n case 'item':\n this.itemTemplate = item.template;\n break;\n\n case 'group':\n this.groupTemplate = item.template;\n break;\n\n case 'selectedItem':\n this.selectedItemTemplate = item.template;\n break;\n\n case 'header':\n this.headerTemplate = item.template;\n break;\n\n case 'empty':\n this.emptyTemplate = item.template;\n break;\n\n case 'footer':\n this.footerTemplate = item.template;\n break;\n\n case 'loader':\n this.loaderTemplate = item.template;\n break;\n\n default:\n this.itemTemplate = item.template;\n break;\n }\n });\n }\n\n writeValue(value: any): void {\n this.value = value;\n this.filled = this.value && this.value != '';\n this.updateInputField();\n this.cd.markForCheck();\n }\n\n getOptionGroupChildren(optionGroup: any) {\n return this.optionGroupChildren ? ObjectUtils.resolveFieldData(optionGroup, this.optionGroupChildren) : optionGroup.items;\n }\n\n getOptionGroupLabel(optionGroup: any) {\n return this.optionGroupLabel ? ObjectUtils.resolveFieldData(optionGroup, this.optionGroupLabel) : optionGroup.label != undefined ? optionGroup.label : optionGroup;\n }\n\n registerOnChange(fn: Function): void {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: Function): void {\n this.onModelTouched = fn;\n }\n\n setDisabledState(val: boolean): void {\n this.disabled = val;\n this.cd.markForCheck();\n }\n\n onInput(event: Event) {\n // When an input element with a placeholder is clicked, the onInput event is invoked in IE.\n if (!this.inputKeyDown && DomHandler.isIE()) {\n return;\n }\n\n if (this.timeout) {\n clearTimeout(this.timeout);\n }\n\n let value = (<HTMLInputElement>event.target).value;\n this.inputValue = value;\n if (!this.multiple && !this.forceSelection) {\n this.onModelChange(value);\n }\n\n if (value.length === 0 && !this.multiple) {\n this.value = null;\n this.hide();\n this.onClear.emit(event);\n this.onModelChange(value);\n }\n\n if (value.length >= this.minLength) {\n this.timeout = setTimeout(() => {\n this.search(event, value);\n }, this.delay);\n } else {\n this.hide();\n }\n this.updateFilledState();\n this.inputKeyDown = false;\n }\n\n onInputClick(event: MouseEvent) {\n if (this.documentClickListener) {\n this.inputClick = true;\n }\n }\n\n search(event: any, query: string) {\n //allow empty string but not undefined or null\n if (query === undefined || query === null) {\n return;\n }\n\n this.loading = true;\n\n this.completeMethod.emit({\n originalEvent: event,\n query: query\n });\n }\n\n selectItem(option: any, focus: boolean = true) {\n if (this.forceSelectionUpdateModelTimeout) {\n clearTimeout(this.forceSelectionUpdateModelTimeout);\n this.forceSelectionUpdateModelTimeout = null;\n }\n\n if (this.multiple) {\n this.multiInputEL.nativeElement.value = '';\n this.value = this.value || [];\n if (!this.isSelected(option) || !this.unique) {\n this.value = [...this.value, option];\n this.onModelChange(this.value);\n }\n } else {\n this.inputEL.nativeElement.value = this.resolveFieldData(option);\n this.value = option;\n this.onModelChange(this.value);\n }\n\n this.onSelect.emit(option);\n this.updateFilledState();\n\n if (focus) {\n this.itemClicked = true;\n this.focusInput();\n }\n }\n\n show() {\n if (this.multiInputEL || this.inputEL) {\n let hasFocus = this.multiple ? this.multiInputEL.nativeElement.ownerDocument.activeElement == this.multiInputEL.nativeElement : this.inputEL.nativeElement.ownerDocument.activeElement == this.inputEL.nativeElement;\n\n if (!this.overlayVisible && hasFocus) {\n this.overlayVisible = true;\n }\n }\n }\n\n clear() {\n if (this.multiple) {\n this.value = null;\n } else {\n this.inputValue = null;\n this.inputEL.nativeElement.value = '';\n }\n\n this.updateFilledState();\n this.onModelChange(this.value);\n this.onClear.emit();\n }\n\n onOverlayAnimationStart(event: AnimationEvent) {\n switch (event.toState) {\n case 'visible':\n this.overlay = event.element;\n this.itemsWrapper = this.virtualScroll ? DomHandler.findSingle(this.overlay, '.p-scroller') : this.overlay;\n this.virtualScroll && this.scroller?.setContentEl(this.itemsViewChild.nativeElement);\n this.appendOverlay();\n\n if (this.autoZIndex) {\n ZIndexUtils.set('overlay', this.overlay, this.baseZIndex + this.config.zIndex.overlay);\n }\n\n this.alignOverlay();\n this.bindDocumentClickListener();\n this.bindDocumentResizeListener();\n this.bindScrollListener();\n this.onShow.emit(event);\n break;\n\n case 'void':\n this.onOverlayHide();\n break;\n }\n }\n\n onOverlayAnimationEnd(event: AnimationEvent) {\n switch (event.toState) {\n case 'void':\n if (this.autoZIndex) {\n ZIndexUtils.clear(event.element);\n }\n break;\n }\n }\n\n onOverlayClick(event) {\n this.overlayService.add({\n originalEvent: event,\n target: this.el.nativeElement\n });\n }\n\n appendOverlay() {\n if (this.appendTo) {\n if (this.appendTo === 'body') document.body.appendChild(this.overlay);\n else DomHandler.appendChild(this.overlay, this.appendTo);\n\n if (!this.overlay.style.minWidth) {\n this.overlay.style.minWidth = DomHandler.getWidth(this.el.nativeElement.children[0]) + 'px';\n }\n }\n }\n\n resolveFieldData(value) {\n let data = this.field ? ObjectUtils.resolveFieldData(value, this.field) : value;\n return data !== (null || undefined) ? data : '';\n }\n\n restoreOverlayAppend() {\n if (this.overlay && this.appendTo) {\n this.el.nativeElement.appendChild(this.overlay);\n }\n }\n\n alignOverlay() {\n if (this.appendTo) DomHandler.absolutePosition(this.overlay, this.multiple ? this.multiContainerEL.nativeElement : this.inputEL.nativeElement);\n else DomHandler.relativePosition(this.overlay, this.multiple ? this.multiContainerEL.nativeElement : this.inputEL.nativeElement);\n }\n\n hide() {\n this.overlayVisible = false;\n this.cd.markForCheck();\n }\n\n handleDropdownClick(event) {\n if (!this.overlayVisible) {\n this.focusInput();\n let queryValue = this.multiple ? this.multiInputEL.nativeElement.value : this.inputEL.nativeElement.value;\n\n if (this.dropdownMode === 'blank') this.search(event, '');\n else if (this.dropdownMode === 'current') this.search(event, queryValue);\n\n this.onDropdownClick.emit({\n originalEvent: event,\n query: queryValue\n });\n } else {\n this.hide();\n }\n }\n\n focusInput() {\n if (this.multiple) this.multiInputEL.nativeElement.focus();\n else this.inputEL.nativeElement.focus();\n }\n\n get emptyMessageLabel(): string {\n return this.emptyMessage || this.config.getTranslation(TranslationKeys.EMPTY_MESSAGE);\n }\n\n removeItem(item: any) {\n let itemIndex = DomHandler.index(item);\n let removedValue = this.value[itemIndex];\n this.value = this.value.filter((val, i) => i != itemIndex);\n this.onModelChange(this.value);\n this.updateFilledState();\n this.onUnselect.emit(removedValue);\n }\n\n onKeydown(event) {\n if (this.overlayVisible) {\n switch (event.which) {\n //down\n case 40:\n if (this.group) {\n let highlightItemIndex = this.findOptionGroupIndex(this.highlightOption, this.suggestions);\n\n if (highlightItemIndex !== -1) {\n let nextItemIndex = highlightItemIndex.itemIndex + 1;\n if (nextItemIndex < this.getOptionGroupChildren(this.suggestions[highlightItemIndex.groupIndex]).length) {\n this.highlightOption = this.getOptionGroupChildren(this.suggestions[highlightItemIndex.groupIndex])[nextItemIndex];\n this.highlightOptionChanged = true;\n } else if (this.suggestions[highlightItemIndex.groupIndex + 1]) {\n this.highlightOption = this.getOptionGroupChildren(this.suggestions[highlightItemIndex.groupIndex + 1])[0];\n this.highlightOptionChanged = true;\n }\n } else {\n this.highlightOption = this.getOptionGroupChildren(this.suggestions[0])[0];\n }\n } else {\n let highlightItemIndex = this.findOptionIndex(this.highlightOption, this.suggestions);\n\n if (highlightItemIndex != -1) {\n var nextItemIndex = highlightItemIndex + 1;\n if (nextItemIndex != this.suggestions.length) {\n this.highlightOption = this.suggestions[nextItemIndex];\n this.highlightOptionChanged = true;\n }\n } else {\n this.highlightOption = this.suggestions[0];\n }\n }\n\n event.preventDefault();\n break;\n\n //up\n case 38:\n if (this.group) {\n let highlightItemIndex = this.findOptionGroupIndex(this.highlightOption, this.suggestions);\n if (highlightItemIndex !== -1) {\n let prevItemIndex = highlightItemIndex.itemIndex - 1;\n if (prevItemIndex >= 0) {\n this.highlightOption = this.getOptionGroupChildren(this.suggestions[highlightItemIndex.groupIndex])[prevItemIndex];\n this.highlightOptionChanged = true;\n } else if (prevItemIndex < 0) {\n let prevGroup = this.suggestions[highlightItemIndex.groupIndex - 1];\n if (prevGroup) {\n this.highlightOption = this.getOptionGroupChildren(prevGroup)[this.getOptionGroupChildren(prevGroup).length - 1];\n this.highlightOptionChanged = true;\n }\n }\n }\n } else {\n let highlightItemIndex = this.findOptionIndex(this.highlightOption, this.suggestions);\n\n if (highlightItemIndex > 0) {\n let prevItemIndex = highlightItemIndex - 1;\n this.highlightOption = this.suggestions[prevItemIndex];\n this.highlightOptionChanged = true;\n }\n }\n\n event.preventDefault();\n break;\n\n //enter\n case 13:\n if (this.highlightOption) {\n this.selectItem(this.highlightOption);\n this.hide();\n }\n event.preventDefault();\n break;\n\n //escape\n case 27:\n this.hide();\n event.preventDefault();\n break;\n\n //tab\n case 9:\n if (this.highlightOption) {\n this.selectItem(this.highlightOption);\n }\n this.hide();\n break;\n }\n } else {\n if (event.which === 40 && this.suggestions) {\n this.search(event, event.target.value);\n } else if (event.ctrlKey && event.key === 'z' && !this.multiple) {\n this.inputEL.nativeElement.value = this.resolveFieldData(null);\n this.value = '';\n this.onModelChange(this.value);\n } else if (event.ctrlKey && event.key === 'z' && this.multiple) {\n this.value.pop();\n this.onModelChange(this.value);\n this.updateFilledState();\n }\n }\n\n if (this.multiple) {\n switch (event.which) {\n //backspace\n case 8:\n if (this.value && this.value.length && !this.multiInputEL.nativeElement.value) {\n this.value = [...this.value];\n const removedValue = this.value.pop();\n this.onModelChange(this.value);\n this.updateFilledState();\n this.onUnselect.emit(removedValue);\n }\n break;\n }\n }\n\n this.inputKeyDown = true;\n }\n\n onKeyup(event) {\n this.onKeyUp.emit(event);\n }\n\n onInputFocus(event) {\n if (!this.itemClicked && this.completeOnFocus) {\n let queryValue = this.multiple ? this.multiInputEL.nativeElement.value : this.inputEL.nativeElement.value;\n this.search(event, queryValue);\n }\n\n this.focus = true;\n this.onFocus.emit(event);\n this.itemClicked = false;\n }\n\n onInputBlur(event) {\n this.focus = false;\n this.onModelTouched();\n this.onBlur.emit(event);\n }\n\n onInputChange(event) {\n if (this.forceSelection) {\n let valid = false;\n let inputValue = event.target.value.trim();\n\n if (this.suggestions) {\n for (let suggestion of this.suggestions) {\n let itemValue = this.field ? ObjectUtils.resolveFieldData(suggestion, this.field) : suggestion;\n if (itemValue && inputValue.toLowerCase() === itemValue.toLowerCase().trim()) {\n valid = true;\n this.forceSelectionUpdateModelTimeout = setTimeout(() => {\n this.selectItem(suggestion, false);\n }, 250);\n break;\n }\n }\n }\n\n if (!valid) {\n if (this.multiple) {\n this.multiInputEL.nativeElement.value = '';\n } else {\n this.value = null;\n this.inputEL.nativeElement.value = '';\n }\n\n this.onClear.emit(event);\n this.onModelChange(this.value);\n this.updateFilledState();\n }\n }\n }\n\n onInputPaste(event: ClipboardEvent) {\n this.onKeydown(event);\n }\n\n isSelected(val: any): boolean {\n let selected: boolean = false;\n if (this.value && this.value.length) {\n for (let i = 0; i < this.value.length; i++) {\n if (ObjectUtils.equals(this.value[i], val, this.dataKey)) {\n selected = true;\n break;\n }\n }\n }\n return selected;\n }\n\n findOptionIndex(option, suggestions): number {\n let index: number = -1;\n if (suggestions) {\n for (let i = 0; i < suggestions.length; i++) {\n if (ObjectUtils.equals(option, suggestions[i])) {\n index = i;\n break;\n }\n }\n }\n\n return index;\n }\n\n findOptionGroupIndex(val: any, opts: any[]): any {\n let groupIndex, itemIndex;\n\n if (opts) {\n for (let i = 0; i < opts.length; i++) {\n groupIndex = i;\n itemIndex = this.findOptionIndex(val, this.getOptionGroupChildren(opts[i]));\n\n if (itemIndex !== -1) {\n break;\n }\n }\n }\n\n if (itemIndex !== -1) {\n return { groupIndex: groupIndex, itemIndex: itemIndex };\n } else {\n return -1;\n }\n }\n\n updateFilledState() {\n if (this.multiple) this.filled = (this.value && this.value.length) || (this.multiInputEL && this.multiInputEL.nativeElement && this.multiInputEL.nativeElement.value != '');\n else this.filled = (this.inputFieldValue && this.inputFieldValue != '') || (this.inputEL && this.inputEL.nativeElement && this.inputEL.nativeElement.value != '');\n }\n\n updateInputField() {\n let formattedValue = this.resolveFieldData(this.value);\n this.inputFieldValue = formattedValue;\n\n if (this.inputEL && this.inputEL.nativeElement) {\n this.inputEL.nativeElement.value = formattedValue;\n }\n\n this.updateFilledState();\n }\n\n bindDocumentClickListener() {\n if (!this.documentClickListener) {\n const documentTarget: any = this.el ? this.el.nativeElement.ownerDocument : 'document';\n\n this.documentClickListener = this.renderer.listen(documentTarget, 'click', (event) => {\n if (event.which === 3) {\n return;\n }\n\n if (!this.inputClick && !this.isDropdownClick(event)) {\n this.hide();\n }\n\n this.inputClick = false;\n this.cd.markForCheck();\n });\n }\n }\n\n isDropdownClick(event) {\n if (this.dropdown) {\n let target = event.target;\n return target === this.dropdownButton.nativeElement || target.parentNode === this.dropdownButton.nativeElement;\n } else {\n return false;\n }\n }\n\n unbindDocumentClickListener() {\n if (this.documentClickListener) {\n this.documentClickListener();\n this.documentClickListener = null;\n }\n }\n\n bindDocumentResizeListener() {\n this.documentResizeListener = this.onWindowResize.bind(this);\n window.addEventListener('resize', this.documentResizeListener);\n }\n\n unbindDocumentResizeListener() {\n if (this.documentResizeListener) {\n window.removeEventListener('resize', this.documentResizeListener);\n this.documentResizeListener = null;\n }\n }\n\n onWindowResize() {\n if (this.overlayVisible && !DomHandler.isTouchDevice()) {\n this.hide();\n }\n }\n\n bindScrollListener() {\n if (!this.scrollHandler) {\n this.scrollHandler = new ConnectedOverlayScrollHandler(this.containerEL.nativeElement, () => {\n if (this.overlayVisible) {\n this.hide();\n }\n });\n }\n\n this.scrollHandler.bindScrollListener();\n }\n\n unbindScrollListener() {\n if (this.scrollHandler) {\n this.scrollHandler.unbindScrollListener();\n }\n }\n\n onOverlayHide() {\n this.unbindDocumentClickListener();\n this.unbindDocumentResizeListener();\n this.unbindScrollListener();\n if (this.overlay) {\n this.overlay = null;\n this.onHide.emit();\n }\n }\n\n ngOnDestroy() {\n if (this.forceSelectionUpdateModelTimeout) {\n clearTimeout(this.forceSelectionUpdateModelTimeout);\n this.forceSelectionUpdateModelTimeout = null;\n }\n\n if (this.scrollHandler) {\n this.scrollHandler.destroy();\n this.scrollHandler = null;\n }\n\n if (this.overlay) {\n ZIndexUtils.clear(this.overlay);\n }\n\n this.restoreOverlayAppend();\n this.onOverlayHide();\n }\n}\n\n@NgModule({\n imports: [CommonModule, InputTextModule, ButtonModule, SharedModule, RippleModule, ScrollerModule, AutoFocusModule],\n exports: [AutoComplete, SharedModule, ScrollerModule, AutoFocusModule],\n declarations: [AutoComplete]\n})\nexport class AutoCompleteModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
@@ -183,7 +183,7 @@ class Button {
183
183
  }
184
184
  }
185
185
  Button.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.7", ngImport: i0, type: Button, deps: [], target: i0.ɵɵFactoryTarget.Component });
186
- Button.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: Button, selector: "p-button", inputs: { type: "type", iconPos: "iconPos", icon: "icon", badge: "badge", label: "label", disabled: "disabled", loading: "loading", loadingIcon: "loadingIcon", style: "style", styleClass: "styleClass", badgeClass: "badgeClass", ariaLabel: "ariaLabel" }, outputs: { onClick: "onClick", onFocus: "onFocus", onBlur: "onBlur" }, host: { classAttribute: "p-element" }, queries: [{ propertyName: "templates", predicate: PrimeTemplate }], ngImport: i0, template: `
186
+ Button.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.7", type: Button, selector: "p-button", inputs: { type: "type", iconPos: "iconPos", icon: "icon", badge: "badge", label: "label", disabled: "disabled", loading: "loading", loadingIcon: "loadingIcon", style: "style", styleClass: "styleClass", badgeClass: "badgeClass", ariaLabel: "ariaLabel" }, outputs: { onClick: "onClick", onFocus: "onFocus", onBlur: "onBlur" }, host: { properties: { "class.p-disabled": "disabled" }, classAttribute: "p-element" }, queries: [{ propertyName: "templates", predicate: PrimeTemplate }], ngImport: i0, template: `
187
187
  <button
188
188
  [attr.type]="type"
189
189
  [attr.aria-label]="ariaLabel"
@@ -266,7 +266,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
266
266
  changeDetection: ChangeDetectionStrategy.OnPush,
267
267
  encapsulation: ViewEncapsulation.None,
268
268
  host: {
269
- class: 'p-element'
269
+ class: 'p-element',
270
+ '[class.p-disabled]': 'disabled' || 'loading'
270
271
  }
271
272
  }]
272
273
  }], ctorParameters: function () { return []; }, propDecorators: { type: [{
@@ -1 +1 @@
1
- {"version":3,"file":"primeng-button.mjs","sources":["../../src/app/components/button/button.ts","../../src/app/components/button/primeng-button.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\nimport { AfterContentInit, AfterViewInit, ChangeDetectionStrategy, Component, ContentChildren, Directive, ElementRef, EventEmitter, Input, NgModule, OnDestroy, Output, QueryList, TemplateRef, ViewEncapsulation } from '@angular/core';\nimport { LicenseManager, PrimeTemplate } from 'primeng/api';\nimport { DomHandler } from 'primeng/dom';\nimport { RippleModule } from 'primeng/ripple';\nimport { ObjectUtils } from 'primeng/utils';\n\ntype ButtonIconPosition = 'left' | 'right' | 'top' | 'bottom';\n\n@Directive({\n selector: '[pButton]',\n host: {\n class: 'p-element'\n }\n})\nexport class ButtonDirective implements AfterViewInit, OnDestroy {\n @Input() iconPos: ButtonIconPosition = 'left';\n\n @Input() loadingIcon: string = 'pi pi-spinner pi-spin';\n\n @Input() get label(): string {\n return this._label;\n }\n\n set label(val: string) {\n this._label = val;\n\n if (this.initialized) {\n this.updateLabel();\n this.updateIcon();\n this.setStyleClass();\n }\n }\n\n @Input() get icon(): string {\n return this._icon;\n }\n\n set icon(val: string) {\n this._icon = val;\n\n if (this.initialized) {\n this.updateIcon();\n this.setStyleClass();\n }\n }\n\n @Input() get loading(): boolean {\n return this._loading;\n }\n\n set loading(val: boolean) {\n this._loading = val;\n\n if (this.initialized) {\n this.updateIcon();\n this.setStyleClass();\n }\n }\n\n public _label: string;\n\n public _icon: string;\n\n public _loading: boolean = false;\n\n public initialized: boolean;\n\n public _initialStyleClass: string;\n\n constructor(public el: ElementRef) {}\n\n ngAfterViewInit() {\n this._initialStyleClass = this.el.nativeElement.className;\n DomHandler.addMultipleClasses(this.el.nativeElement, this.getStyleClass());\n\n this.createIcon();\n this.createLabel();\n\n this.initialized = true;\n\n LicenseManager.check();\n }\n\n getStyleClass(): string {\n let styleClass = 'p-button p-component';\n if (this.icon && !this.label && ObjectUtils.isEmpty(this.el.nativeElement.textContent)) {\n styleClass = styleClass + ' p-button-icon-only';\n }\n\n if (this.loading) {\n styleClass = styleClass + ' p-disabled p-button-loading';\n if (!this.icon && this.label) styleClass = styleClass + ' p-button-loading-label-only';\n }\n\n return styleClass;\n }\n\n setStyleClass() {\n let styleClass = this.getStyleClass();\n this._initialStyleClass = this.el.nativeElement.className;\n this.el.nativeElement.className = styleClass + ' ' + this._initialStyleClass;\n }\n\n createLabel() {\n if (this.label) {\n let labelElement = document.createElement('span');\n if (this.icon && !this.label) {\n labelElement.setAttribute('aria-hidden', 'true');\n }\n labelElement.className = 'p-button-label';\n labelElement.appendChild(document.createTextNode(this.label));\n\n this.el.nativeElement.appendChild(labelElement);\n }\n }\n\n createIcon() {\n if (this.icon || this.loading) {\n let iconElement = document.createElement('span');\n iconElement.className = 'p-button-icon';\n iconElement.setAttribute('aria-hidden', 'true');\n let iconPosClass = this.label ? 'p-button-icon-' + this.iconPos : null;\n\n if (iconPosClass) {\n DomHandler.addClass(iconElement, iconPosClass);\n }\n\n let iconClass = this.getIconClass();\n\n if (iconClass) {\n DomHandler.addMultipleClasses(iconElement, iconClass);\n }\n\n this.el.nativeElement.insertBefore(iconElement, this.el.nativeElement.firstChild);\n }\n }\n\n updateLabel() {\n let labelElement = DomHandler.findSingle(this.el.nativeElement, '.p-button-label');\n\n if (!this.label) {\n labelElement && this.el.nativeElement.removeChild(labelElement);\n return;\n }\n\n labelElement ? (labelElement.textContent = this.label) : this.createLabel();\n }\n\n updateIcon() {\n let iconElement = DomHandler.findSingle(this.el.nativeElement, '.p-button-icon');\n\n if (!this.icon && !this.loading) {\n iconElement && this.el.nativeElement.removeChild(iconElement);\n return;\n }\n\n if (iconElement) {\n if (this.iconPos) iconElement.className = 'p-button-icon p-button-icon-' + this.iconPos + ' ' + this.getIconClass();\n else iconElement.className = 'p-button-icon ' + this.getIconClass();\n } else {\n this.createIcon();\n }\n }\n\n getIconClass() {\n return this.loading ? 'p-button-loading-icon ' + this.loadingIcon : this._icon;\n }\n\n ngOnDestroy() {\n this.initialized = false;\n }\n}\n\n@Component({\n selector: 'p-button',\n template: `\n <button\n [attr.type]=\"type\"\n [attr.aria-label]=\"ariaLabel\"\n [class]=\"styleClass\"\n [ngStyle]=\"style\"\n [disabled]=\"disabled || loading\"\n [ngClass]=\"{\n 'p-button p-component': true,\n 'p-button-icon-only': icon && !label,\n 'p-button-vertical': (iconPos === 'top' || iconPos === 'bottom') && label,\n 'p-disabled': this.disabled || this.loading,\n 'p-button-loading': this.loading,\n 'p-button-loading-label-only': this.loading && !this.icon && this.label\n }\"\n (click)=\"onClick.emit($event)\"\n (focus)=\"onFocus.emit($event)\"\n (blur)=\"onBlur.emit($event)\"\n pRipple\n >\n <ng-content></ng-content>\n <ng-container *ngTemplateOutlet=\"contentTemplate\"></ng-container>\n <span\n [ngClass]=\"{\n 'p-button-icon': true,\n 'p-button-icon-left': iconPos === 'left' && label,\n 'p-button-icon-right': iconPos === 'right' && label,\n 'p-button-icon-top': iconPos === 'top' && label,\n 'p-button-icon-bottom': iconPos === 'bottom' && label\n }\"\n [class]=\"loading ? 'p-button-loading-icon ' + loadingIcon : icon\"\n *ngIf=\"!contentTemplate && (icon || loading)\"\n [attr.aria-hidden]=\"true\"\n ></span>\n <span class=\"p-button-label\" [attr.aria-hidden]=\"icon && !label\" *ngIf=\"!contentTemplate && label\">{{ label }}</span>\n <span [ngClass]=\"badgeStyleClass()\" [class]=\"badgeClass\" *ngIf=\"!contentTemplate && badge\">{{ badge }}</span>\n </button>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n class: 'p-element'\n }\n})\nexport class Button implements AfterContentInit, AfterViewInit {\n @Input() type: string = 'button';\n\n @Input() iconPos: ButtonIconPosition = 'left';\n\n @Input() icon: string;\n\n @Input() badge: string;\n\n @Input() label: string;\n\n @Input() disabled: boolean;\n\n @Input() loading: boolean = false;\n\n @Input() loadingIcon: string = 'pi pi-spinner pi-spin';\n\n @Input() style: any;\n\n @Input() styleClass: string;\n\n @Input() badgeClass: string;\n\n @Input() ariaLabel: string;\n\n contentTemplate: TemplateRef<any>;\n\n @ContentChildren(PrimeTemplate) templates: QueryList<any>;\n\n @Output() onClick: EventEmitter<any> = new EventEmitter();\n\n @Output() onFocus: EventEmitter<any> = new EventEmitter();\n\n @Output() onBlur: EventEmitter<any> = new EventEmitter();\n\n constructor() {}\n\n ngAfterContentInit() {\n this.templates.forEach((item) => {\n switch (item.getType()) {\n case 'content':\n this.contentTemplate = item.template;\n break;\n\n default:\n this.contentTemplate = item.template;\n break;\n }\n });\n }\n\n ngAfterViewInit() {\n LicenseManager.check();\n }\n\n badgeStyleClass() {\n return {\n 'p-badge p-component': true,\n 'p-badge-no-gutter': this.badge && String(this.badge).length === 1\n };\n }\n}\n\n@NgModule({\n imports: [CommonModule, RippleModule],\n exports: [ButtonDirective, Button],\n declarations: [ButtonDirective, Button]\n})\nexport class ButtonModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;;;;;;;;MAea,eAAe,CAAA;AAuDxB,IAAA,WAAA,CAAmB,EAAc,EAAA;AAAd,QAAA,IAAE,CAAA,EAAA,GAAF,EAAE,CAAY;AAtDxB,QAAA,IAAO,CAAA,OAAA,GAAuB,MAAM,CAAC;AAErC,QAAA,IAAW,CAAA,WAAA,GAAW,uBAAuB,CAAC;AA8ChD,QAAA,IAAQ,CAAA,QAAA,GAAY,KAAK,CAAC;KAMI;AAlDrC,IAAA,IAAa,KAAK,GAAA;QACd,OAAO,IAAI,CAAC,MAAM,CAAC;KACtB;IAED,IAAI,KAAK,CAAC,GAAW,EAAA;AACjB,QAAA,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC;QAElB,IAAI,IAAI,CAAC,WAAW,EAAE;YAClB,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,IAAI,CAAC,aAAa,EAAE,CAAC;AACxB,SAAA;KACJ;AAED,IAAA,IAAa,IAAI,GAAA;QACb,OAAO,IAAI,CAAC,KAAK,CAAC;KACrB;IAED,IAAI,IAAI,CAAC,GAAW,EAAA;AAChB,QAAA,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC;QAEjB,IAAI,IAAI,CAAC,WAAW,EAAE;YAClB,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,IAAI,CAAC,aAAa,EAAE,CAAC;AACxB,SAAA;KACJ;AAED,IAAA,IAAa,OAAO,GAAA;QAChB,OAAO,IAAI,CAAC,QAAQ,CAAC;KACxB;IAED,IAAI,OAAO,CAAC,GAAY,EAAA;AACpB,QAAA,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC;QAEpB,IAAI,IAAI,CAAC,WAAW,EAAE;YAClB,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,IAAI,CAAC,aAAa,EAAE,CAAC;AACxB,SAAA;KACJ;IAcD,eAAe,GAAA;QACX,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,SAAS,CAAC;AAC1D,QAAA,UAAU,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAE3E,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,WAAW,EAAE,CAAC;AAEnB,QAAA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QAExB,cAAc,CAAC,KAAK,EAAE,CAAC;KAC1B;IAED,aAAa,GAAA;QACT,IAAI,UAAU,GAAG,sBAAsB,CAAC;QACxC,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,WAAW,CAAC,EAAE;AACpF,YAAA,UAAU,GAAG,UAAU,GAAG,qBAAqB,CAAC;AACnD,SAAA;QAED,IAAI,IAAI,CAAC,OAAO,EAAE;AACd,YAAA,UAAU,GAAG,UAAU,GAAG,8BAA8B,CAAC;AACzD,YAAA,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK;AAAE,gBAAA,UAAU,GAAG,UAAU,GAAG,8BAA8B,CAAC;AAC1F,SAAA;AAED,QAAA,OAAO,UAAU,CAAC;KACrB;IAED,aAAa,GAAA;AACT,QAAA,IAAI,UAAU,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QACtC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,SAAS,CAAC;AAC1D,QAAA,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,SAAS,GAAG,UAAU,GAAG,GAAG,GAAG,IAAI,CAAC,kBAAkB,CAAC;KAChF;IAED,WAAW,GAAA;QACP,IAAI,IAAI,CAAC,KAAK,EAAE;YACZ,IAAI,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YAClD,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;AAC1B,gBAAA,YAAY,CAAC,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;AACpD,aAAA;AACD,YAAA,YAAY,CAAC,SAAS,GAAG,gBAAgB,CAAC;AAC1C,YAAA,YAAY,CAAC,WAAW,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;YAE9D,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;AACnD,SAAA;KACJ;IAED,UAAU,GAAA;AACN,QAAA,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE;YAC3B,IAAI,WAAW,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;AACjD,YAAA,WAAW,CAAC,SAAS,GAAG,eAAe,CAAC;AACxC,YAAA,WAAW,CAAC,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;AAChD,YAAA,IAAI,YAAY,GAAG,IAAI,CAAC,KAAK,GAAG,gBAAgB,GAAG,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;AAEvE,YAAA,IAAI,YAAY,EAAE;AACd,gBAAA,UAAU,CAAC,QAAQ,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;AAClD,aAAA;AAED,YAAA,IAAI,SAAS,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;AAEpC,YAAA,IAAI,SAAS,EAAE;AACX,gBAAA,UAAU,CAAC,kBAAkB,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;AACzD,aAAA;AAED,YAAA,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,YAAY,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;AACrF,SAAA;KACJ;IAED,WAAW,GAAA;AACP,QAAA,IAAI,YAAY,GAAG,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,iBAAiB,CAAC,CAAC;AAEnF,QAAA,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YACb,YAAY,IAAI,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;YAChE,OAAO;AACV,SAAA;AAED,QAAA,YAAY,IAAI,YAAY,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;KAC/E;IAED,UAAU,GAAA;AACN,QAAA,IAAI,WAAW,GAAG,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,gBAAgB,CAAC,CAAC;QAEjF,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YAC7B,WAAW,IAAI,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;YAC9D,OAAO;AACV,SAAA;AAED,QAAA,IAAI,WAAW,EAAE;YACb,IAAI,IAAI,CAAC,OAAO;AAAE,gBAAA,WAAW,CAAC,SAAS,GAAG,8BAA8B,GAAG,IAAI,CAAC,OAAO,GAAG,GAAG,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;;gBAC/G,WAAW,CAAC,SAAS,GAAG,gBAAgB,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;AACvE,SAAA;AAAM,aAAA;YACH,IAAI,CAAC,UAAU,EAAE,CAAC;AACrB,SAAA;KACJ;IAED,YAAY,GAAA;AACR,QAAA,OAAO,IAAI,CAAC,OAAO,GAAG,wBAAwB,GAAG,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC;KAClF;IAED,WAAW,GAAA;AACP,QAAA,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;KAC5B;;4GA5JQ,eAAe,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;gGAAf,eAAe,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,WAAA,EAAA,aAAA,EAAA,KAAA,EAAA,OAAA,EAAA,IAAA,EAAA,MAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,WAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;2FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAN3B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,WAAW;AACrB,oBAAA,IAAI,EAAE;AACF,wBAAA,KAAK,EAAE,WAAW;AACrB,qBAAA;iBACJ,CAAA;iGAEY,OAAO,EAAA,CAAA;sBAAf,KAAK;gBAEG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBAEO,KAAK,EAAA,CAAA;sBAAjB,KAAK;gBAcO,IAAI,EAAA,CAAA;sBAAhB,KAAK;gBAaO,OAAO,EAAA,CAAA;sBAAnB,KAAK;;MA6KG,MAAM,CAAA;AAmCf,IAAA,WAAA,GAAA;AAlCS,QAAA,IAAI,CAAA,IAAA,GAAW,QAAQ,CAAC;AAExB,QAAA,IAAO,CAAA,OAAA,GAAuB,MAAM,CAAC;AAUrC,QAAA,IAAO,CAAA,OAAA,GAAY,KAAK,CAAC;AAEzB,QAAA,IAAW,CAAA,WAAA,GAAW,uBAAuB,CAAC;AAc7C,QAAA,IAAA,CAAA,OAAO,GAAsB,IAAI,YAAY,EAAE,CAAC;AAEhD,QAAA,IAAA,CAAA,OAAO,GAAsB,IAAI,YAAY,EAAE,CAAC;AAEhD,QAAA,IAAA,CAAA,MAAM,GAAsB,IAAI,YAAY,EAAE,CAAC;KAEzC;IAEhB,kBAAkB,GAAA;QACd,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,KAAI;AAC5B,YAAA,QAAQ,IAAI,CAAC,OAAO,EAAE;AAClB,gBAAA,KAAK,SAAS;AACV,oBAAA,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC;oBACrC,MAAM;AAEV,gBAAA;AACI,oBAAA,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC;oBACrC,MAAM;AACb,aAAA;AACL,SAAC,CAAC,CAAC;KACN;IAED,eAAe,GAAA;QACX,cAAc,CAAC,KAAK,EAAE,CAAC;KAC1B;IAED,eAAe,GAAA;QACX,OAAO;AACH,YAAA,qBAAqB,EAAE,IAAI;AAC3B,YAAA,mBAAmB,EAAE,IAAI,CAAC,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC;SACrE,CAAC;KACL;;mGA5DQ,MAAM,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;uFAAN,MAAM,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,OAAA,EAAA,SAAA,EAAA,WAAA,EAAA,aAAA,EAAA,KAAA,EAAA,OAAA,EAAA,UAAA,EAAA,YAAA,EAAA,UAAA,EAAA,YAAA,EAAA,SAAA,EAAA,WAAA,EAAA,EAAA,OAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,OAAA,EAAA,SAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,WAAA,EAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,WAAA,EAAA,SAAA,EA2BE,aAAa,EAvEpB,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqCT,IAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,QAAA,EAAA,WAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;2FAOQ,MAAM,EAAA,UAAA,EAAA,CAAA;kBA9ClB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,UAAU;AACpB,oBAAA,QAAQ,EAAE,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqCT,IAAA,CAAA;oBACD,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,aAAa,EAAE,iBAAiB,CAAC,IAAI;AACrC,oBAAA,IAAI,EAAE;AACF,wBAAA,KAAK,EAAE,WAAW;AACrB,qBAAA;iBACJ,CAAA;0EAEY,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBAEG,OAAO,EAAA,CAAA;sBAAf,KAAK;gBAEG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBAEG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAEG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAEG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBAEG,OAAO,EAAA,CAAA;sBAAf,KAAK;gBAEG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBAEG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAEG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBAEG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBAEG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAI0B,SAAS,EAAA,CAAA;sBAAxC,eAAe;uBAAC,aAAa,CAAA;gBAEpB,OAAO,EAAA,CAAA;sBAAhB,MAAM;gBAEG,OAAO,EAAA,CAAA;sBAAhB,MAAM;gBAEG,MAAM,EAAA,CAAA;sBAAf,MAAM;;MAmCE,YAAY,CAAA;;yGAAZ,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;0GAAZ,YAAY,EAAA,YAAA,EAAA,CAjRZ,eAAe,EA6Mf,MAAM,CAAA,EAAA,OAAA,EAAA,CAgEL,YAAY,EAAE,YAAY,CAAA,EAAA,OAAA,EAAA,CA7Q3B,eAAe,EA6Mf,MAAM,CAAA,EAAA,CAAA,CAAA;0GAoEN,YAAY,EAAA,OAAA,EAAA,CAJX,YAAY,EAAE,YAAY,CAAA,EAAA,CAAA,CAAA;2FAI3B,YAAY,EAAA,UAAA,EAAA,CAAA;kBALxB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC;AACrC,oBAAA,OAAO,EAAE,CAAC,eAAe,EAAE,MAAM,CAAC;AAClC,oBAAA,YAAY,EAAE,CAAC,eAAe,EAAE,MAAM,CAAC;iBAC1C,CAAA;;;AC/RD;;AAEG;;;;"}
1
+ {"version":3,"file":"primeng-button.mjs","sources":["../../src/app/components/button/button.ts","../../src/app/components/button/primeng-button.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\nimport { AfterContentInit, AfterViewInit, ChangeDetectionStrategy, Component, ContentChildren, Directive, ElementRef, EventEmitter, Input, NgModule, OnDestroy, Output, QueryList, TemplateRef, ViewEncapsulation } from '@angular/core';\nimport { LicenseManager, PrimeTemplate } from 'primeng/api';\nimport { DomHandler } from 'primeng/dom';\nimport { RippleModule } from 'primeng/ripple';\nimport { ObjectUtils } from 'primeng/utils';\n\ntype ButtonIconPosition = 'left' | 'right' | 'top' | 'bottom';\n\n@Directive({\n selector: '[pButton]',\n host: {\n class: 'p-element'\n }\n})\nexport class ButtonDirective implements AfterViewInit, OnDestroy {\n @Input() iconPos: ButtonIconPosition = 'left';\n\n @Input() loadingIcon: string = 'pi pi-spinner pi-spin';\n\n @Input() get label(): string {\n return this._label;\n }\n\n set label(val: string) {\n this._label = val;\n\n if (this.initialized) {\n this.updateLabel();\n this.updateIcon();\n this.setStyleClass();\n }\n }\n\n @Input() get icon(): string {\n return this._icon;\n }\n\n set icon(val: string) {\n this._icon = val;\n\n if (this.initialized) {\n this.updateIcon();\n this.setStyleClass();\n }\n }\n\n @Input() get loading(): boolean {\n return this._loading;\n }\n\n set loading(val: boolean) {\n this._loading = val;\n\n if (this.initialized) {\n this.updateIcon();\n this.setStyleClass();\n }\n }\n\n public _label: string;\n\n public _icon: string;\n\n public _loading: boolean = false;\n\n public initialized: boolean;\n\n public _initialStyleClass: string;\n\n constructor(public el: ElementRef) {}\n\n ngAfterViewInit() {\n this._initialStyleClass = this.el.nativeElement.className;\n DomHandler.addMultipleClasses(this.el.nativeElement, this.getStyleClass());\n\n this.createIcon();\n this.createLabel();\n\n this.initialized = true;\n\n LicenseManager.check();\n }\n\n getStyleClass(): string {\n let styleClass = 'p-button p-component';\n if (this.icon && !this.label && ObjectUtils.isEmpty(this.el.nativeElement.textContent)) {\n styleClass = styleClass + ' p-button-icon-only';\n }\n\n if (this.loading) {\n styleClass = styleClass + ' p-disabled p-button-loading';\n if (!this.icon && this.label) styleClass = styleClass + ' p-button-loading-label-only';\n }\n\n return styleClass;\n }\n\n setStyleClass() {\n let styleClass = this.getStyleClass();\n this._initialStyleClass = this.el.nativeElement.className;\n this.el.nativeElement.className = styleClass + ' ' + this._initialStyleClass;\n }\n\n createLabel() {\n if (this.label) {\n let labelElement = document.createElement('span');\n if (this.icon && !this.label) {\n labelElement.setAttribute('aria-hidden', 'true');\n }\n labelElement.className = 'p-button-label';\n labelElement.appendChild(document.createTextNode(this.label));\n\n this.el.nativeElement.appendChild(labelElement);\n }\n }\n\n createIcon() {\n if (this.icon || this.loading) {\n let iconElement = document.createElement('span');\n iconElement.className = 'p-button-icon';\n iconElement.setAttribute('aria-hidden', 'true');\n let iconPosClass = this.label ? 'p-button-icon-' + this.iconPos : null;\n\n if (iconPosClass) {\n DomHandler.addClass(iconElement, iconPosClass);\n }\n\n let iconClass = this.getIconClass();\n\n if (iconClass) {\n DomHandler.addMultipleClasses(iconElement, iconClass);\n }\n\n this.el.nativeElement.insertBefore(iconElement, this.el.nativeElement.firstChild);\n }\n }\n\n updateLabel() {\n let labelElement = DomHandler.findSingle(this.el.nativeElement, '.p-button-label');\n\n if (!this.label) {\n labelElement && this.el.nativeElement.removeChild(labelElement);\n return;\n }\n\n labelElement ? (labelElement.textContent = this.label) : this.createLabel();\n }\n\n updateIcon() {\n let iconElement = DomHandler.findSingle(this.el.nativeElement, '.p-button-icon');\n\n if (!this.icon && !this.loading) {\n iconElement && this.el.nativeElement.removeChild(iconElement);\n return;\n }\n\n if (iconElement) {\n if (this.iconPos) iconElement.className = 'p-button-icon p-button-icon-' + this.iconPos + ' ' + this.getIconClass();\n else iconElement.className = 'p-button-icon ' + this.getIconClass();\n } else {\n this.createIcon();\n }\n }\n\n getIconClass() {\n return this.loading ? 'p-button-loading-icon ' + this.loadingIcon : this._icon;\n }\n\n ngOnDestroy() {\n this.initialized = false;\n }\n}\n\n@Component({\n selector: 'p-button',\n template: `\n <button\n [attr.type]=\"type\"\n [attr.aria-label]=\"ariaLabel\"\n [class]=\"styleClass\"\n [ngStyle]=\"style\"\n [disabled]=\"disabled || loading\"\n [ngClass]=\"{\n 'p-button p-component': true,\n 'p-button-icon-only': icon && !label,\n 'p-button-vertical': (iconPos === 'top' || iconPos === 'bottom') && label,\n 'p-disabled': this.disabled || this.loading,\n 'p-button-loading': this.loading,\n 'p-button-loading-label-only': this.loading && !this.icon && this.label\n }\"\n (click)=\"onClick.emit($event)\"\n (focus)=\"onFocus.emit($event)\"\n (blur)=\"onBlur.emit($event)\"\n pRipple\n >\n <ng-content></ng-content>\n <ng-container *ngTemplateOutlet=\"contentTemplate\"></ng-container>\n <span\n [ngClass]=\"{\n 'p-button-icon': true,\n 'p-button-icon-left': iconPos === 'left' && label,\n 'p-button-icon-right': iconPos === 'right' && label,\n 'p-button-icon-top': iconPos === 'top' && label,\n 'p-button-icon-bottom': iconPos === 'bottom' && label\n }\"\n [class]=\"loading ? 'p-button-loading-icon ' + loadingIcon : icon\"\n *ngIf=\"!contentTemplate && (icon || loading)\"\n [attr.aria-hidden]=\"true\"\n ></span>\n <span class=\"p-button-label\" [attr.aria-hidden]=\"icon && !label\" *ngIf=\"!contentTemplate && label\">{{ label }}</span>\n <span [ngClass]=\"badgeStyleClass()\" [class]=\"badgeClass\" *ngIf=\"!contentTemplate && badge\">{{ badge }}</span>\n </button>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n class: 'p-element',\n '[class.p-disabled]': 'disabled' || 'loading'\n }\n})\nexport class Button implements AfterContentInit, AfterViewInit {\n @Input() type: string = 'button';\n\n @Input() iconPos: ButtonIconPosition = 'left';\n\n @Input() icon: string;\n\n @Input() badge: string;\n\n @Input() label: string;\n\n @Input() disabled: boolean;\n\n @Input() loading: boolean = false;\n\n @Input() loadingIcon: string = 'pi pi-spinner pi-spin';\n\n @Input() style: any;\n\n @Input() styleClass: string;\n\n @Input() badgeClass: string;\n\n @Input() ariaLabel: string;\n\n contentTemplate: TemplateRef<any>;\n\n @ContentChildren(PrimeTemplate) templates: QueryList<any>;\n\n @Output() onClick: EventEmitter<any> = new EventEmitter();\n\n @Output() onFocus: EventEmitter<any> = new EventEmitter();\n\n @Output() onBlur: EventEmitter<any> = new EventEmitter();\n\n constructor() {}\n\n ngAfterContentInit() {\n this.templates.forEach((item) => {\n switch (item.getType()) {\n case 'content':\n this.contentTemplate = item.template;\n break;\n\n default:\n this.contentTemplate = item.template;\n break;\n }\n });\n }\n\n ngAfterViewInit() {\n LicenseManager.check();\n }\n\n badgeStyleClass() {\n return {\n 'p-badge p-component': true,\n 'p-badge-no-gutter': this.badge && String(this.badge).length === 1\n };\n }\n}\n\n@NgModule({\n imports: [CommonModule, RippleModule],\n exports: [ButtonDirective, Button],\n declarations: [ButtonDirective, Button]\n})\nexport class ButtonModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
@@ -209,6 +209,7 @@ class Calendar {
209
209
  this.createResponsiveStyle();
210
210
  this.currentMonth = date.getMonth();
211
211
  this.currentYear = date.getFullYear();
212
+ this.yearOptions = [];
212
213
  this.currentView = this.view;
213
214
  if (this.view === 'date') {
214
215
  this.createWeekDays();
@@ -742,6 +743,9 @@ class Calendar {
742
743
  isMonthDisabled(month) {
743
744
  return !this.isSelectable(1, month, this.currentYear, false);
744
745
  }
746
+ isYearDisabled(year) {
747
+ return !this.isSelectable(1, this.currentMonth, year, false);
748
+ }
745
749
  isYearSelected(year) {
746
750
  if (this.isComparable()) {
747
751
  let value = this.isRangeSelection() ? this.value[0] : this.value;
@@ -1591,6 +1595,9 @@ class Calendar {
1591
1595
  this.updateModel(value);
1592
1596
  this.updateUI();
1593
1597
  }
1598
+ else if (this.keepInvalid) {
1599
+ this.updateModel(value);
1600
+ }
1594
1601
  }
1595
1602
  catch (err) {
1596
1603
  //invalid date
@@ -2278,7 +2285,6 @@ class Calendar {
2278
2285
  this.unbindDocumentResizeListener();
2279
2286
  this.unbindScrollListener();
2280
2287
  this.overlay = null;
2281
- this.onModelTouched();
2282
2288
  }
2283
2289
  ngOnDestroy() {
2284
2290
  if (this.scrollHandler) {
@@ -2430,7 +2436,14 @@ Calendar.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.
2430
2436
  </span>
2431
2437
  </div>
2432
2438
  <div class="p-yearpicker" *ngIf="currentView === 'year'">
2433
- <span *ngFor="let y of yearPickerValues()" (click)="onYearSelect($event, y)" (keydown)="onYearCellKeydown($event, y)" class="p-yearpicker-year" [ngClass]="{ 'p-highlight': isYearSelected(y) }" pRipple>
2439
+ <span
2440
+ *ngFor="let y of yearPickerValues()"
2441
+ (click)="onYearSelect($event, y)"
2442
+ (keydown)="onYearCellKeydown($event, y)"
2443
+ class="p-yearpicker-year"
2444
+ [ngClass]="{ 'p-highlight': isYearSelected(y), 'p-disabled': isYearDisabled(y) }"
2445
+ pRipple
2446
+ >
2434
2447
  {{ y }}
2435
2448
  </span>
2436
2449
  </div>
@@ -2710,7 +2723,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.7", ngImpor
2710
2723
  </span>
2711
2724
  </div>
2712
2725
  <div class="p-yearpicker" *ngIf="currentView === 'year'">
2713
- <span *ngFor="let y of yearPickerValues()" (click)="onYearSelect($event, y)" (keydown)="onYearCellKeydown($event, y)" class="p-yearpicker-year" [ngClass]="{ 'p-highlight': isYearSelected(y) }" pRipple>
2726
+ <span
2727
+ *ngFor="let y of yearPickerValues()"
2728
+ (click)="onYearSelect($event, y)"
2729
+ (keydown)="onYearCellKeydown($event, y)"
2730
+ class="p-yearpicker-year"
2731
+ [ngClass]="{ 'p-highlight': isYearSelected(y), 'p-disabled': isYearDisabled(y) }"
2732
+ pRipple
2733
+ >
2714
2734
  {{ y }}
2715
2735
  </span>
2716
2736
  </div>