@acorex/components 20.2.23 → 20.2.26

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.
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-components-tag-box.mjs","sources":["../tmp-esm2022/tag-box/lib/tag-box.component.js","../tmp-esm2022/tag-box/lib/tag-box.module.js","../tmp-esm2022/tag-box/acorex-components-tag-box.js"],"sourcesContent":["import { AXAutocompleteParentComponent, AXClearableComponent, AXComponent, AXFocusableComponent, AXValuableComponent, MXInputBaseValueComponent, MXLookComponent, } from '@acorex/cdk/common';\nimport { AXAutocompleteComponent } from '@acorex/components/autocomplete';\nimport { AXDecoratorGenericComponent, AXDecoratorIconComponent } from '@acorex/components/decorators';\nimport { AXTagComponent } from '@acorex/components/tag';\nimport { AXUnsubscriber } from '@acorex/core/utils';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, HostBinding, ViewEncapsulation, contentChild, forwardRef, inject, input, output, signal, } from '@angular/core';\nimport { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { castArray, cloneDeep, get, isNil, isNull, set } from 'lodash-es';\nimport { classes } from 'polytype';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/forms\";\nexport class AXTagBoxComponent extends classes((MXInputBaseValueComponent), MXLookComponent, (AXAutocompleteParentComponent)) {\n constructor() {\n super(...arguments);\n this.unsubscriber = inject(AXUnsubscriber);\n this.updateOn = signal('change', ...(ngDevMode ? [{ debugName: \"updateOn\" }] : []));\n this.addOnComma = input(true, ...(ngDevMode ? [{ debugName: \"addOnComma\" }] : []));\n this.addOnEnter = input(true, ...(ngDevMode ? [{ debugName: \"addOnEnter\" }] : []));\n this.valueField = input('id', ...(ngDevMode ? [{ debugName: \"valueField\" }] : []));\n this.textField = input('text', ...(ngDevMode ? [{ debugName: \"textField\" }] : []));\n this.readonlyField = input('readonly', ...(ngDevMode ? [{ debugName: \"readonlyField\" }] : []));\n this.allowDuplicateValues = input(false, ...(ngDevMode ? [{ debugName: \"allowDuplicateValues\" }] : []));\n this.tagTemplate = input(...(ngDevMode ? [undefined, { debugName: \"tagTemplate\" }] : []));\n this.onTagClick = output();\n this.onTagDblClick = output();\n this.onTagContextMenu = output();\n this.inputValue = signal('', ...(ngDevMode ? [{ debugName: \"inputValue\" }] : []));\n this.autocompleteComponent = contentChild(AXAutocompleteComponent, ...(ngDevMode ? [{ debugName: \"autocompleteComponent\" }] : []));\n }\n ngOnInit() {\n super.ngOnInit();\n this.onKeyDown.pipe(this.unsubscriber.takeUntilDestroy).subscribe((e) => {\n const input = this.inputValue().trim();\n if (e.nativeEvent.key === 'Enter' && this.addOnEnter()) {\n if (!input.length)\n return;\n this.addItems(this.convertString(input));\n }\n if (e.nativeEvent.key === ',' && this.addOnComma()) {\n if (!input.length)\n return;\n e.nativeEvent.preventDefault();\n if (!input || input === ',') {\n this.inputValue.set('');\n this.emitOnTextChanged('', true);\n return;\n }\n this.addItems(this.convertString(input));\n }\n if (e.nativeEvent.key === 'Backspace') {\n if (this.inputValue().length)\n return;\n this.removeItem(this.value.length - 1);\n }\n });\n this.onItemSelected.pipe(this.unsubscriber.takeUntilDestroy).subscribe((e) => {\n const incomingItems = this.convertString(e.value);\n const currentValue = this.value ?? [];\n const vf = this.valueField();\n const filtered = incomingItems.filter((item) => !currentValue.some((prev) => get(prev, vf) === get(item, vf)));\n this.addItems(filtered);\n });\n }\n /**\n * Adds items to the tag box.\n *\n * @param items - Array of objects to add as tags\n */\n addItems(items) {\n if (this.disabled || this.readonly) {\n return;\n }\n //\n if (isNil(items) || items.length === 0) {\n return;\n }\n //\n const value = cloneDeep(this.value ?? []);\n // filter out duplicates instead of early return\n let itemsToAdd = items;\n if (!this.allowDuplicateValues()) {\n const vf = this.valueField();\n itemsToAdd = items.filter((item) => !value.some((prev) => get(prev, vf) === get(item, vf)));\n if (itemsToAdd.length === 0) {\n this.inputValue.set('');\n this.emitOnTextChanged('', true);\n return;\n }\n }\n this.inputValue.set('');\n this.emitOnTextChanged('', true);\n this.commitValue(value.concat(itemsToAdd), true);\n // sync autocomplete selection to avoid re-adding removed items\n this.syncAutocompleteSelection();\n }\n /**\n * Removes a tag at the specified index.\n *\n * @param index - Index of the tag to remove\n */\n removeItem(index) {\n if (this.disabled || this.readonly) {\n return;\n }\n const value = cloneDeep(this.value ?? []);\n value.splice(index, 1);\n this.commitValue(value, true);\n // sync autocomplete selection to avoid re-adding removed items\n this.syncAutocompleteSelection();\n }\n /**\n * Converts input values to tag objects.\n *\n * @param v - Value to convert (string, object, or array)\n * @returns Array of tag objects\n */\n convertString(v) {\n const array = castArray(v);\n return array\n .map((c) => {\n if (!c)\n return null;\n if (typeof c === 'object') {\n return c;\n }\n const obj = {};\n set(obj, this.valueField(), c);\n set(obj, this.textField(), c);\n return obj;\n })\n .filter((c) => !isNull(c));\n }\n getFieldValue(item, path) {\n return get(item, path);\n }\n /**\n * Keep autocomplete selected values in sync with current tags\n */\n syncAutocompleteSelection() {\n const ac = this.autocompleteComponent();\n if (!ac)\n return;\n const vf = ac.valueField || this.valueField();\n const values = (this.value ?? []).map((t) => get(t, vf)).filter((v) => v != null);\n ac.value = ac.multiple ? values : (values[0] ?? null);\n }\n internalSetValue(value) {\n const result = this.convertString(value);\n return result;\n }\n get __hostName() {\n return this.name;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.6\", ngImport: i0, type: AXTagBoxComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.3.6\", type: AXTagBoxComponent, isStandalone: true, selector: \"ax-tag-box\", inputs: { disabled: { classPropertyName: \"disabled\", publicName: \"disabled\", isSignal: false, isRequired: false, transformFunction: null }, tabIndex: { classPropertyName: \"tabIndex\", publicName: \"tabIndex\", isSignal: false, isRequired: false, transformFunction: null }, readonly: { classPropertyName: \"readonly\", publicName: \"readonly\", isSignal: false, isRequired: false, transformFunction: null }, value: { classPropertyName: \"value\", publicName: \"value\", isSignal: false, isRequired: false, transformFunction: null }, state: { classPropertyName: \"state\", publicName: \"state\", isSignal: false, isRequired: false, transformFunction: null }, name: { classPropertyName: \"name\", publicName: \"name\", isSignal: false, isRequired: false, transformFunction: null }, id: { classPropertyName: \"id\", publicName: \"id\", isSignal: false, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: \"placeholder\", publicName: \"placeholder\", isSignal: false, isRequired: false, transformFunction: null }, allowNull: { classPropertyName: \"allowNull\", publicName: \"allowNull\", isSignal: false, isRequired: false, transformFunction: null }, type: { classPropertyName: \"type\", publicName: \"type\", isSignal: false, isRequired: false, transformFunction: null }, look: { classPropertyName: \"look\", publicName: \"look\", isSignal: false, isRequired: false, transformFunction: null }, addOnComma: { classPropertyName: \"addOnComma\", publicName: \"addOnComma\", isSignal: true, isRequired: false, transformFunction: null }, addOnEnter: { classPropertyName: \"addOnEnter\", publicName: \"addOnEnter\", isSignal: true, isRequired: false, transformFunction: null }, valueField: { classPropertyName: \"valueField\", publicName: \"valueField\", isSignal: true, isRequired: false, transformFunction: null }, textField: { classPropertyName: \"textField\", publicName: \"textField\", isSignal: true, isRequired: false, transformFunction: null }, readonlyField: { classPropertyName: \"readonlyField\", publicName: \"readonlyField\", isSignal: true, isRequired: false, transformFunction: null }, allowDuplicateValues: { classPropertyName: \"allowDuplicateValues\", publicName: \"allowDuplicateValues\", isSignal: true, isRequired: false, transformFunction: null }, tagTemplate: { classPropertyName: \"tagTemplate\", publicName: \"tagTemplate\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onBlur: \"onBlur\", onFocus: \"onFocus\", valueChange: \"valueChange\", stateChange: \"stateChange\", onValueChanged: \"onValueChanged\", readonlyChange: \"readonlyChange\", disabledChange: \"disabledChange\", onKeyDown: \"onKeyDown\", onKeyUp: \"onKeyUp\", onKeyPress: \"onKeyPress\", onTagClick: \"onTagClick\", onTagDblClick: \"onTagDblClick\", onTagContextMenu: \"onTagContextMenu\" }, host: { properties: { \"attr.name\": \"this.__hostName\" } }, providers: [\n { provide: AXComponent, useExisting: AXTagBoxComponent },\n { provide: AXValuableComponent, useExisting: AXTagBoxComponent },\n { provide: AXFocusableComponent, useExisting: AXTagBoxComponent },\n { provide: AXClearableComponent, useExisting: AXTagBoxComponent },\n { provide: MXInputBaseValueComponent, useExisting: AXTagBoxComponent },\n { provide: AXAutocompleteParentComponent, useExisting: AXTagBoxComponent },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXTagBoxComponent),\n multi: true,\n },\n AXUnsubscriber,\n ], queries: [{ propertyName: \"autocompleteComponent\", first: true, predicate: AXAutocompleteComponent, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: \"<div\\n (click)=\\\"input.focus()\\\"\\n [class.ax-state-disabled]=\\\"disabled\\\"\\n [class.ax-state-readonly]=\\\"readonly\\\"\\n class=\\\"ax-editor-container ax-{{ look }}\\\"\\n>\\n <ng-content select=\\\"ax-prefix\\\"> </ng-content>\\n <div class=\\\"ax-tags-container\\\">\\n @for (tag of value; track $index; let i = $index) {\\n @if (tagTemplate()) {\\n <ng-container\\n [ngTemplateOutlet]=\\\"tagTemplate()\\\"\\n [ngTemplateOutletContext]=\\\"{ $implicit: tag, index: i }\\\"\\n ></ng-container>\\n } @else {\\n <ax-tag\\n [text]=\\\"(getFieldValue(tag, textField()) ?? '') + ''\\\"\\n look=\\\"twotone\\\"\\n (onClick)=\\\"onTagClick.emit($event)\\\"\\n (onDblClick)=\\\"onTagDblClick.emit($event)\\\"\\n (onContextMenu)=\\\"onTagContextMenu.emit($event)\\\"\\n >\\n @if (!getFieldValue(tag, readonlyField()) && !disabled && !readonly) {\\n <ax-suffix>\\n <button (click)=\\\"removeItem(i)\\\"><ax-icon class=\\\"ax-icon ax-icon-close\\\"></ax-icon></button>\\n </ax-suffix>\\n }\\n </ax-tag>\\n }\\n }\\n <input\\n #input\\n [id]=\\\"id\\\"\\n class=\\\"ax-input\\\"\\n [disabled]=\\\"disabled\\\"\\n [readonly]=\\\"readonly\\\"\\n [tabindex]=\\\"tabIndex\\\"\\n [(ngModel)]=\\\"inputValue\\\"\\n (blur)=\\\"emitOnBlurEvent($event)\\\"\\n [attr.placeholder]=\\\"placeholder\\\"\\n (keyup)=\\\"emitOnKeyupEvent($event)\\\"\\n (focus)=\\\"emitOnFocusEvent($event)\\\"\\n [class.ax-state-disabled]=\\\"disabled\\\"\\n [class.ax-state-readonly]=\\\"readonly\\\"\\n (keydown)=\\\"emitOnKeydownEvent($event)\\\"\\n (keypress)=\\\"emitOnKeypressEvent($event)\\\"\\n [ngModelOptions]=\\\"{ updateOn: updateOn() }\\\"\\n (ngModelChange)=\\\"emitOnTextChanged($event, true)\\\"\\n />\\n </div>\\n @if (!disabled && !readonly && value?.length) {\\n <ng-content select=\\\"ax-clear-button\\\"></ng-content>\\n }\\n <ng-content select=\\\"ax-suffix\\\"> </ng-content>\\n</div>\\n<ng-content select=\\\"ax-autocomplete\\\"> </ng-content>\\n<ng-content select=\\\"ax-validation-rule\\\"> </ng-content>\\n<div class=\\\"ax-error-container\\\"></div>\\n\", styles: [\"ax-tag-box{width:100%}ax-tag-box .ax-editor-container{height:auto;padding:.25rem;min-height:var(--ax-sys-size-base)}ax-tag-box .ax-editor-container .ax-tags-container{width:100%;gap:.25rem;display:flex;flex-wrap:wrap}ax-tag-box .ax-editor-container .ax-tags-container ax-tag{--ax-comp-tag-border-radius: .375rem}ax-tag-box .ax-editor-container .ax-tags-container input{min-width:var(--ax-comp-tag-item-input-min-width, 7.5rem);height:calc(var(--ax-sys-size-base) * var(--ax-comp-tag-size-ratio, .75));padding-inline-start:var(--ax-comp-tag-item-input-padding-inline-start, .5rem)}ax-tag-box .ax-editor-container ax-clear-button{height:1rem}\\n\"], dependencies: [{ kind: \"ngmodule\", type: FormsModule }, { kind: \"directive\", type: i1.DefaultValueAccessor, selector: \"input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]\" }, { kind: \"directive\", type: i1.NgControlStatus, selector: \"[formControlName],[ngModel],[formControl]\" }, { kind: \"directive\", type: i1.NgModel, selector: \"[ngModel]:not([formControlName]):not([formControl])\", inputs: [\"name\", \"disabled\", \"ngModel\", \"ngModelOptions\"], outputs: [\"ngModelChange\"], exportAs: [\"ngModel\"] }, { kind: \"component\", type: AXDecoratorGenericComponent, selector: \"ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay\" }, { kind: \"component\", type: AXDecoratorIconComponent, selector: \"ax-icon\", inputs: [\"icon\"] }, { kind: \"component\", type: AXTagComponent, selector: \"ax-tag\", inputs: [\"color\", \"look\", \"text\"], outputs: [\"onClick\", \"onDblClick\", \"onContextMenu\"] }, { kind: \"directive\", type: NgTemplateOutlet, selector: \"[ngTemplateOutlet]\", inputs: [\"ngTemplateOutletContext\", \"ngTemplateOutlet\", \"ngTemplateOutletInjector\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.6\", ngImport: i0, type: AXTagBoxComponent, decorators: [{\n type: Component,\n args: [{ selector: 'ax-tag-box', inputs: [\n 'disabled',\n 'tabIndex',\n 'readonly',\n 'value',\n 'state',\n 'name',\n 'id',\n 'placeholder',\n 'allowNull',\n 'type',\n 'look',\n ], outputs: [\n 'onBlur',\n 'onFocus',\n 'valueChange',\n 'stateChange',\n 'onValueChanged',\n 'readonlyChange',\n 'disabledChange',\n 'onKeyDown',\n 'onKeyUp',\n 'onKeyPress',\n ], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [\n { provide: AXComponent, useExisting: AXTagBoxComponent },\n { provide: AXValuableComponent, useExisting: AXTagBoxComponent },\n { provide: AXFocusableComponent, useExisting: AXTagBoxComponent },\n { provide: AXClearableComponent, useExisting: AXTagBoxComponent },\n { provide: MXInputBaseValueComponent, useExisting: AXTagBoxComponent },\n { provide: AXAutocompleteParentComponent, useExisting: AXTagBoxComponent },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXTagBoxComponent),\n multi: true,\n },\n AXUnsubscriber,\n ], imports: [FormsModule, AXDecoratorGenericComponent, AXDecoratorIconComponent, AXTagComponent, NgTemplateOutlet], template: \"<div\\n (click)=\\\"input.focus()\\\"\\n [class.ax-state-disabled]=\\\"disabled\\\"\\n [class.ax-state-readonly]=\\\"readonly\\\"\\n class=\\\"ax-editor-container ax-{{ look }}\\\"\\n>\\n <ng-content select=\\\"ax-prefix\\\"> </ng-content>\\n <div class=\\\"ax-tags-container\\\">\\n @for (tag of value; track $index; let i = $index) {\\n @if (tagTemplate()) {\\n <ng-container\\n [ngTemplateOutlet]=\\\"tagTemplate()\\\"\\n [ngTemplateOutletContext]=\\\"{ $implicit: tag, index: i }\\\"\\n ></ng-container>\\n } @else {\\n <ax-tag\\n [text]=\\\"(getFieldValue(tag, textField()) ?? '') + ''\\\"\\n look=\\\"twotone\\\"\\n (onClick)=\\\"onTagClick.emit($event)\\\"\\n (onDblClick)=\\\"onTagDblClick.emit($event)\\\"\\n (onContextMenu)=\\\"onTagContextMenu.emit($event)\\\"\\n >\\n @if (!getFieldValue(tag, readonlyField()) && !disabled && !readonly) {\\n <ax-suffix>\\n <button (click)=\\\"removeItem(i)\\\"><ax-icon class=\\\"ax-icon ax-icon-close\\\"></ax-icon></button>\\n </ax-suffix>\\n }\\n </ax-tag>\\n }\\n }\\n <input\\n #input\\n [id]=\\\"id\\\"\\n class=\\\"ax-input\\\"\\n [disabled]=\\\"disabled\\\"\\n [readonly]=\\\"readonly\\\"\\n [tabindex]=\\\"tabIndex\\\"\\n [(ngModel)]=\\\"inputValue\\\"\\n (blur)=\\\"emitOnBlurEvent($event)\\\"\\n [attr.placeholder]=\\\"placeholder\\\"\\n (keyup)=\\\"emitOnKeyupEvent($event)\\\"\\n (focus)=\\\"emitOnFocusEvent($event)\\\"\\n [class.ax-state-disabled]=\\\"disabled\\\"\\n [class.ax-state-readonly]=\\\"readonly\\\"\\n (keydown)=\\\"emitOnKeydownEvent($event)\\\"\\n (keypress)=\\\"emitOnKeypressEvent($event)\\\"\\n [ngModelOptions]=\\\"{ updateOn: updateOn() }\\\"\\n (ngModelChange)=\\\"emitOnTextChanged($event, true)\\\"\\n />\\n </div>\\n @if (!disabled && !readonly && value?.length) {\\n <ng-content select=\\\"ax-clear-button\\\"></ng-content>\\n }\\n <ng-content select=\\\"ax-suffix\\\"> </ng-content>\\n</div>\\n<ng-content select=\\\"ax-autocomplete\\\"> </ng-content>\\n<ng-content select=\\\"ax-validation-rule\\\"> </ng-content>\\n<div class=\\\"ax-error-container\\\"></div>\\n\", styles: [\"ax-tag-box{width:100%}ax-tag-box .ax-editor-container{height:auto;padding:.25rem;min-height:var(--ax-sys-size-base)}ax-tag-box .ax-editor-container .ax-tags-container{width:100%;gap:.25rem;display:flex;flex-wrap:wrap}ax-tag-box .ax-editor-container .ax-tags-container ax-tag{--ax-comp-tag-border-radius: .375rem}ax-tag-box .ax-editor-container .ax-tags-container input{min-width:var(--ax-comp-tag-item-input-min-width, 7.5rem);height:calc(var(--ax-sys-size-base) * var(--ax-comp-tag-size-ratio, .75));padding-inline-start:var(--ax-comp-tag-item-input-padding-inline-start, .5rem)}ax-tag-box .ax-editor-container ax-clear-button{height:1rem}\\n\"] }]\n }], propDecorators: { addOnComma: [{ type: i0.Input, args: [{ isSignal: true, alias: \"addOnComma\", required: false }] }], addOnEnter: [{ type: i0.Input, args: [{ isSignal: true, alias: \"addOnEnter\", required: false }] }], valueField: [{ type: i0.Input, args: [{ isSignal: true, alias: \"valueField\", required: false }] }], textField: [{ type: i0.Input, args: [{ isSignal: true, alias: \"textField\", required: false }] }], readonlyField: [{ type: i0.Input, args: [{ isSignal: true, alias: \"readonlyField\", required: false }] }], allowDuplicateValues: [{ type: i0.Input, args: [{ isSignal: true, alias: \"allowDuplicateValues\", required: false }] }], tagTemplate: [{ type: i0.Input, args: [{ isSignal: true, alias: \"tagTemplate\", required: false }] }], onTagClick: [{ type: i0.Output, args: [\"onTagClick\"] }], onTagDblClick: [{ type: i0.Output, args: [\"onTagDblClick\"] }], onTagContextMenu: [{ type: i0.Output, args: [\"onTagContextMenu\"] }], autocompleteComponent: [{ type: i0.ContentChild, args: [i0.forwardRef(() => AXAutocompleteComponent), { isSignal: true }] }], __hostName: [{\n type: HostBinding,\n args: ['attr.name']\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFnLWJveC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL3RhZy1ib3gvc3JjL2xpYi90YWctYm94LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvdGFnLWJveC9zcmMvbGliL3RhZy1ib3guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLDZCQUE2QixFQUM3QixvQkFBb0IsRUFFcEIsV0FBVyxFQUNYLG9CQUFvQixFQUNwQixtQkFBbUIsRUFDbkIseUJBQXlCLEVBQ3pCLGVBQWUsR0FDaEIsTUFBTSxvQkFBb0IsQ0FBQztBQUM1QixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUN0RyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFdBQVcsRUFHWCxpQkFBaUIsRUFDakIsWUFBWSxFQUNaLFVBQVUsRUFDVixNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFDTixNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFdBQVcsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUMxRSxPQUFPLEVBQUUs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LEVBQUUsMkJBQTJCLEVBQUUsd0JBQXdCLEVBQUUsY0FBYyxFQUFFLGdCQUFnQixDQUFDOzYvQkF3QmxFLHVCQUF1QjtzQkF3SW5FLFdBQVc7dUJBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFYQXV0b2NvbXBsZXRlUGFyZW50Q29tcG9uZW50LFxuICBBWENsZWFyYWJsZUNvbXBvbmVudCxcbiAgQVhDbGlja0V2ZW50LFxuICBBWENvbXBvbmVudCxcbiAgQVhGb2N1c2FibGVDb21wb25lbnQsXG4gIEFYVmFsdWFibGVDb21wb25lbnQsXG4gIE1YSW5wdXRCYXNlVmFsdWVDb21wb25lbnQsXG4gIE1YTG9va0NvbXBvbmVudCxcbn0gZnJvbSAnQGFjb3JleC9jZGsvY29tbW9uJztcbmltcG9ydCB7IEFYQXV0b2NvbXBsZXRlQ29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2F1dG9jb21wbGV0ZSc7XG5pbXBvcnQgeyBBWERlY29yYXRvckdlbmVyaWNDb21wb25lbnQsIEFYRGVjb3JhdG9ySWNvbkNvbXBvbmVudCB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kZWNvcmF0b3JzJztcbmltcG9ydCB7IEFYVGFnQ29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3RhZyc7XG5pbXBvcnQgeyBBWFVuc3Vic2NyaWJlciB9IGZyb20gJ0BhY29yZXgvY29yZS91dGlscyc7XG5pbXBvcnQgeyBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEhvc3RCaW5kaW5nLFxuICBPbkluaXQsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgY29udGVudENoaWxkLFxuICBmb3J3YXJkUmVmLFxuICBpbmplY3QsXG4gIGlucHV0LFxuICBvdXRwdXQsXG4gIHNpZ25hbCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBjYXN0QXJyYXksIGNsb25lRGVlcCwgZ2V0LCBpc05pbCwgaXNOdWxsLCBzZXQgfSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHsgY2xhc3NlcyB9IGZyb20gJ3BvbHl0eXBlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXgtdGFnLWJveCcsXG4gIHRlbXBsYXRlVXJsOiAndGFnLWJveC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWyd0YWctYm94LmNvbXBvbmVudC5zY3NzJ10sXG4gIGlucHV0czogW1xuICAgICdkaXNhYmxlZCcsXG4gICAgJ3RhYkluZGV4JyxcbiAgICAncmVhZG9ubHknLFxuICAgICd2YWx1ZScsXG4gICAgJ3N0YXRlJyxcbiAgICAnbmFtZScsXG4gICAgJ2lkJyxcbiAgICAncGxhY2Vob2xkZXInLFxuICAgICdhbGxvd051bGwnLFxuICAgICd0eXBlJyxcbiAgICAnbG9vaycsXG4gIF0sXG4gIG91dHB1dHM6IFtcbiAgICAnb25CbHVyJyxcbiAgICAnb25Gb2N1cycsXG4gICAgJ3ZhbHVlQ2hhbmdlJyxcbiAgICAnc3RhdGVDaGFuZ2UnLFxuICAgICdvblZhbHVlQ2hhbmdlZCcsXG4gICAgJ3JlYWRvbmx5Q2hhbmdlJyxcbiAgICAnZGlzYWJsZWRDaGFuZ2UnLFxuICAgICdvbktleURvd24nLFxuICAgICdvbktleVVwJyxcbiAgICAnb25LZXlQcmVzcycsXG4gIF0sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBwcm92aWRlcnM6IFtcbiAgICB7IHByb3ZpZGU6IEFYQ29tcG9uZW50LCB1c2VFeGlzdGluZzogQVhUYWdCb3hDb21wb25lbnQgfSxcbiAgICB7IHByb3ZpZGU6IEFYVmFsdWFibGVDb21wb25lbnQsIHVzZUV4aXN0aW5nOiBBWFRhZ0JveENvbXBvbmVudCB9LFxuICAgIHsgcHJvdmlkZTogQVhGb2N1c2FibGVDb21wb25lbnQsIHVzZUV4aXN0aW5nOiBBWFRhZ0JveENvbXBvbmVudCB9LFxuICAgIHsgcHJvdmlkZTogQVhDbGVhcmFibGVDb21wb25lbnQsIHVzZUV4aXN0aW5nOiBBWFRhZ0JveENvbXBvbmVudCB9LFxuICAgIHsgcHJvdmlkZTogTVhJbnB1dEJhc2VWYWx1ZUNvbXBvbmVudCwgdXNlRXhpc3Rpbmc6IEFYVGFnQm94Q29tcG9uZW50IH0sXG4gICAgeyBwcm92aWRlOiBBWEF1dG9jb21wbGV0ZVBhcmVudENvbXBvbmVudCwgdXNlRXhpc3Rpbmc6IEFYVGFnQm94Q29tcG9uZW50IH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBBWFRhZ0JveENvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICAgIEFYVW5zdWJzY3JpYmVyLFxuICBdLFxuICBpbXBvcnRzOiBbRm9ybXNNb2R1bGUsIEFYRGVjb3JhdG9yR2VuZXJpY0NvbXBvbmVudCwgQVhEZWNvcmF0b3JJY29uQ29tcG9uZW50LCBBWFRhZ0NvbXBvbmVudCwgTmdUZW1wbGF0ZU91dGxldF0sXG59KVxuZXhwb3J0IGNsYXNzIEFYVGFnQm94Q29tcG9uZW50XG4gIGV4dGVuZHMgY2xhc3NlcyhNWElucHV0QmFzZVZhbHVlQ29tcG9uZW50PHVua25vd25bXT4sIE1YTG9va0NvbXBvbmVudCwgQVhBdXRvY29tcGxldGVQYXJlbnRDb21wb25lbnQ8dW5rbm93bltdPilcbiAgaW1wbGVtZW50cyBPbkluaXRcbntcbiAgdW5zdWJzY3JpYmVyID0gaW5qZWN0KEFYVW5zdWJzY3JpYmVyKTtcblxuICBwcm90ZWN0ZWQgdXBkYXRlT24gPSBzaWduYWw8J2NoYW5nZScgfCAnYmx1cicgfCAnc3VibWl0Jz4oJ2NoYW5nZScpO1xuXG4gIGFkZE9uQ29tbWEgPSBpbnB1dCh0cnVlKTtcbiAgYWRkT25FbnRlciA9IGlucHV0KHRydWUpO1xuICB2YWx1ZUZpZWxkID0gaW5wdXQoJ2lkJyk7XG4gIHRleHRGaWVsZCA9IGlucHV0KCd0ZXh0Jyk7XG4gIHJlYWRvbmx5RmllbGQgPSBpbnB1dCgncmVhZG9ubHknKTtcbiAgYWxsb3dEdXBsaWNhdGVWYWx1ZXMgPSBpbnB1dChmYWxzZSk7XG4gIHRhZ1RlbXBsYXRlID0gaW5wdXQ8VGVtcGxhdGVSZWY8dW5rbm93bj4+KCk7XG5cbiAgb25UYWdDbGljayA9IG91dHB1dDxBWENsaWNrRXZlbnQ+KCk7XG4gIG9uVGFnRGJsQ2xpY2sgPSBvdXRwdXQ8QVhDbGlja0V2ZW50PigpO1xuICBvblRhZ0NvbnRleHRNZW51ID0gb3V0cHV0PEFYQ2xpY2tFdmVudD4oKTtcblxuICBpbnB1dFZhbHVlID0gc2lnbmFsPHN0cmluZz4oJycpO1xuXG4gIHByaXZhdGUgYXV0b2NvbXBsZXRlQ29tcG9uZW50ID0gY29udGVudENoaWxkKEFYQXV0b2NvbXBsZXRlQ29tcG9uZW50KTtcblxuICBvdmVycmlkZSBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgIHRoaXMub25LZXlEb3duLnBpcGUodGhpcy51bnN1YnNjcmliZXIudGFrZVVudGlsRGVzdHJveSkuc3Vic2NyaWJlKChlKSA9PiB7XG4gICAgICBjb25zdCBpbnB1dCA9IHRoaXMuaW5wdXRWYWx1ZSgpLnRyaW0oKTtcblxuICAgICAgaWYgKGUubmF0aXZlRXZlbnQua2V5ID09PSAnRW50ZXInICYmIHRoaXMuYWRkT25FbnRlcigpKSB7XG4gICAgICAgIGlmICghaW5wdXQubGVuZ3RoKSByZXR1cm47XG4gICAgICAgIHRoaXMuYWRkSXRlbXModGhpcy5jb252ZXJ0U3RyaW5nKGlucHV0KSk7XG4gICAgICB9XG5cbiAgICAgIGlmIChlLm5hdGl2ZUV2ZW50LmtleSA9PT0gJywnICYmIHRoaXMuYWRkT25Db21tYSgpKSB7XG4gICAgICAgIGlmICghaW5wdXQubGVuZ3RoKSByZXR1cm47XG4gICAgICAgIGUubmF0aXZlRXZlbnQucHJldmVudERlZmF1bHQoKTtcblxuICAgICAgICBpZiAoIWlucHV0IHx8IGlucHV0ID09PSAnLCcpIHtcbiAgICAgICAgICB0aGlzLmlucHV0VmFsdWUuc2V0KCcnKTtcbiAgICAgICAgICB0aGlzLmVtaXRPblRleHRDaGFuZ2VkKCcnLCB0cnVlKTtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmFkZEl0ZW1zKHRoaXMuY29udmVydFN0cmluZyhpbnB1dCkpO1xuICAgICAgfVxuXG4gICAgICBpZiAoZS5uYXRpdmVFdmVudC5rZXkgPT09ICdCYWNrc3BhY2UnKSB7XG4gICAgICAgIGlmICh0aGlzLmlucHV0VmFsdWUoKS5sZW5ndGgpIHJldHVybjtcbiAgICAgICAgdGhpcy5yZW1vdmVJdGVtKHRoaXMudmFsdWUubGVuZ3RoIC0gMSk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICB0aGlzLm9uSXRlbVNlbGVjdGVkLnBpcGUodGhpcy51bnN1YnNjcmliZXIudGFrZVVudGlsRGVzdHJveSkuc3Vic2NyaWJlKChlKSA9PiB7XG4gICAgICBjb25zdCBpbmNvbWluZ0l0ZW1zID0gdGhpcy5jb252ZXJ0U3RyaW5nKGUudmFsdWUpO1xuICAgICAgY29uc3QgY3VycmVudFZhbHVlID0gdGhpcy52YWx1ZSA/PyBbXTtcbiAgICAgIGNvbnN0IHZmID0gdGhpcy52YWx1ZUZpZWxkKCk7XG4gICAgICBjb25zdCBmaWx0ZXJlZCA9IGluY29taW5nSXRlbXMuZmlsdGVyKChpdGVtKSA9PiAhY3VycmVudFZhbHVlLnNvbWUoKHByZXYpID0+IGdldChwcmV2LCB2ZikgPT09IGdldChpdGVtLCB2ZikpKTtcbiAgICAgIHRoaXMuYWRkSXRlbXMoZmlsdGVyZWQpO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgaXRlbXMgdG8gdGhlIHRhZyBib3guXG4gICAqXG4gICAqIEBwYXJhbSBpdGVtcyAtIEFycmF5IG9mIG9iamVjdHMgdG8gYWRkIGFzIHRhZ3NcbiAgICovXG4gIGFkZEl0ZW1zKGl0ZW1zOiBvYmplY3RbXSkge1xuICAgIGlmICh0aGlzLmRpc2FibGVkIHx8IHRoaXMucmVhZG9ubHkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgLy9cbiAgICBpZiAoaXNOaWwoaXRlbXMpIHx8IGl0ZW1zLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICAvL1xuICAgIGNvbnN0IHZhbHVlID0gY2xvbmVEZWVwKHRoaXMudmFsdWUgPz8gW10pO1xuICAgIC8vIGZpbHRlciBvdXQgZHVwbGljYXRlcyBpbnN0ZWFkIG9mIGVhcmx5IHJldHVyblxuICAgIGxldCBpdGVtc1RvQWRkID0gaXRlbXM7XG4gICAgaWYgKCF0aGlzLmFsbG93RHVwbGljYXRlVmFsdWVzKCkpIHtcbiAgICAgIGNvbnN0IHZmID0gdGhpcy52YWx1ZUZpZWxkKCk7XG4gICAgICBpdGVtc1RvQWRkID0gaXRlbXMuZmlsdGVyKChpdGVtKSA9PiAhdmFsdWUuc29tZSgocHJldikgPT4gZ2V0KHByZXYsIHZmKSA9PT0gZ2V0KGl0ZW0sIHZmKSkpO1xuICAgICAgaWYgKGl0ZW1zVG9BZGQubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIHRoaXMuaW5wdXRWYWx1ZS5zZXQoJycpO1xuICAgICAgICB0aGlzLmVtaXRPblRleHRDaGFuZ2VkKCcnLCB0cnVlKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMuaW5wdXRWYWx1ZS5zZXQoJycpO1xuICAgIHRoaXMuZW1pdE9uVGV4dENoYW5nZWQoJycsIHRydWUpO1xuXG4gICAgdGhpcy5jb21taXRWYWx1ZSh2YWx1ZS5jb25jYXQoaXRlbXNUb0FkZCksIHRydWUpO1xuXG4gICAgLy8gc3luYyBhdXRvY29tcGxldGUgc2VsZWN0aW9uIHRvIGF2b2lkIHJlLWFkZGluZyByZW1vdmVkIGl0ZW1zXG4gICAgdGhpcy5zeW5jQXV0b2NvbXBsZXRlU2VsZWN0aW9uKCk7XG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlcyBhIHRhZyBhdCB0aGUgc3BlY2lmaWVkIGluZGV4LlxuICAgKlxuICAgKiBAcGFyYW0gaW5kZXggLSBJbmRleCBvZiB0aGUgdGFnIHRvIHJlbW92ZVxuICAgKi9cbiAgcmVtb3ZlSXRlbShpbmRleDogbnVtYmVyKSB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQgfHwgdGhpcy5yZWFkb25seSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCB2YWx1ZSA9IGNsb25lRGVlcCh0aGlzLnZhbHVlID8/IFtdKTtcbiAgICB2YWx1ZS5zcGxpY2UoaW5kZXgsIDEpO1xuICAgIHRoaXMuY29tbWl0VmFsdWUodmFsdWUsIHRydWUpO1xuXG4gICAgLy8gc3luYyBhdXRvY29tcGxldGUgc2VsZWN0aW9uIHRvIGF2b2lkIHJlLWFkZGluZyByZW1vdmVkIGl0ZW1zXG4gICAgdGhpcy5zeW5jQXV0b2NvbXBsZXRlU2VsZWN0aW9uKCk7XG4gIH1cblxuICAvKipcbiAgICogQ29udmVydHMgaW5wdXQgdmFsdWVzIHRvIHRhZyBvYmplY3RzLlxuICAgKlxuICAgKiBAcGFyYW0gdiAtIFZhbHVlIHRvIGNvbnZlcnQgKHN0cmluZywgb2JqZWN0LCBvciBhcnJheSlcbiAgICogQHJldHVybnMgQXJyYXkgb2YgdGFnIG9iamVjdHNcbiAgICovXG4gIGNvbnZlcnRTdHJpbmcodjogdW5rbm93bik6IG9iamVjdFtdIHtcbiAgICBjb25zdCBhcnJheSA9IGNhc3RBcnJheSh2KTtcblxuICAgIHJldHVybiBhcnJheVxuICAgICAgLm1hcCgoYykgPT4ge1xuICAgICAgICBpZiAoIWMpIHJldHVybiBudWxsO1xuICAgICAgICBpZiAodHlwZW9mIGMgPT09ICdvYmplY3QnKSB7XG4gICAgICAgICAgcmV0dXJuIGM7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3Qgb2JqOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiA9IHt9O1xuICAgICAgICBzZXQob2JqLCB0aGlzLnZhbHVlRmllbGQoKSwgYyk7XG4gICAgICAgIHNldChvYmosIHRoaXMudGV4dEZpZWxkKCksIGMpO1xuICAgICAgICByZXR1cm4gb2JqO1xuICAgICAgfSlcbiAgICAgIC5maWx0ZXIoKGMpID0+ICFpc051bGwoYykpO1xuICB9XG5cbiAgZ2V0RmllbGRWYWx1ZShpdGVtOiB1bmtub3duLCBwYXRoOiBzdHJpbmcpOiB1bmtub3duIHtcbiAgICByZXR1cm4gZ2V0KGl0ZW0gYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4sIHBhdGgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEtlZXAgYXV0b2NvbXBsZXRlIHNlbGVjdGVkIHZhbHVlcyBpbiBzeW5jIHdpdGggY3VycmVudCB0YWdzXG4gICAqL1xuICBwcml2YXRlIHN5bmNBdXRvY29tcGxldGVTZWxlY3Rpb24oKTogdm9pZCB7XG4gICAgY29uc3QgYWMgPSB0aGlzLmF1dG9jb21wbGV0ZUNvbXBvbmVudCgpO1xuICAgIGlmICghYWMpIHJldHVybjtcbiAgICBjb25zdCB2ZiA9IChhYyBhcyBhbnkpLnZhbHVlRmllbGQgfHwgdGhpcy52YWx1ZUZpZWxkKCk7XG4gICAgY29uc3QgdmFsdWVzID0gKHRoaXMudmFsdWUgPz8gW10pLm1hcCgodCkgPT4gZ2V0KHQgYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4sIHZmKSkuZmlsdGVyKCh2KSA9PiB2ICE9IG51bGwpO1xuICAgIChhYyBhcyBhbnkpLnZhbHVlID0gYWMubXVsdGlwbGUgPyB2YWx1ZXMgOiAodmFsdWVzWzBdID8/IG51bGwpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGludGVybmFsU2V0VmFsdWUodmFsdWU6IHVua25vd24pOiB1bmtub3duW10ge1xuICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMuY29udmVydFN0cmluZyh2YWx1ZSk7XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnYXR0ci5uYW1lJylcbiAgcHJpdmF0ZSBnZXQgX19ob3N0TmFtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLm5hbWU7XG4gIH1cbn1cbiIsIjxkaXZcbiAgKGNsaWNrKT1cImlucHV0LmZvY3VzKClcIlxuICBbY2xhc3MuYXgtc3RhdGUtZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICBbY2xhc3MuYXgtc3RhdGUtcmVhZG9ubHldPVwicmVhZG9ubHlcIlxuICBjbGFzcz1cImF4LWVkaXRvci1jb250YWluZXIgYXgte3sgbG9vayB9fVwiXG4+XG4gIDxuZy1jb250ZW50IHNlbGVjdD1cImF4LXByZWZpeFwiPiA8L25nLWNvbnRlbnQ+XG4gIDxkaXYgY2xhc3M9XCJheC10YWdzLWNvbnRhaW5lclwiPlxuICAgIEBmb3IgKHRhZyBvZiB2YWx1ZTsgdHJhY2sgJGluZGV4OyBsZXQgaSA9ICRpbmRleCkge1xuICAgICAgQGlmICh0YWdUZW1wbGF0ZSgpKSB7XG4gICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJ0YWdUZW1wbGF0ZSgpXCJcbiAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyAkaW1wbGljaXQ6IHRhZywgaW5kZXg6IGkgfVwiXG4gICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICA8YXgtdGFnXG4gICAgICAgICAgW3RleHRdPVwiKGdldEZpZWxkVmFsdWUodGFnLCB0ZXh0RmllbGQoKSkgPz8gJycpICsgJydcIlxuICAgICAgICAgIGxvb2s9XCJ0d290b25lXCJcbiAgICAgICAgICAob25DbGljayk9XCJvblRhZ0NsaWNrLmVtaXQoJGV2ZW50KVwiXG4gICAgICAgICAgKG9uRGJsQ2xpY2spPVwib25UYWdEYmxDbGljay5lbWl0KCRldmVudClcIlxuICAgICAgICAgIChvbkNvbnRleHRNZW51KT1cIm9uVGFnQ29udGV4dE1lbnUuZW1pdCgkZXZlbnQpXCJcbiAgICAgICAgPlxuICAgICAgICAgIEBpZiAoIWdldEZpZWxkVmFsdWUodGFnLCByZWFkb25seUZpZWxkKCkpICYmICFkaXNhYmxlZCAmJiAhcmVhZG9ubHkpIHtcbiAgICAgICAgICAgIDxheC1zdWZmaXg+XG4gICAgICAgICAgICAgIDxidXR0b24gKGNsaWNrKT1cInJlbW92ZUl0ZW0oaSlcIj48YXgtaWNvbiBjbGFzcz1cImF4LWljb24gYXgtaWNvbi1jbG9zZVwiPjwvYXgtaWNvbj48L2J1dHRvbj5cbiAgICAgICAgICAgIDwvYXgtc3VmZml4PlxuICAgICAgICAgIH1cbiAgICAgICAgPC9heC10YWc+XG4gICAgICB9XG4gICAgfVxuICAgIDxpbnB1dFxuICAgICAgI2lucHV0XG4gICAgICBbaWRdPVwiaWRcIlxuICAgICAgY2xhc3M9XCJheC1pbnB1dFwiXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcbiAgICAgIFt0YWJpbmRleF09XCJ0YWJJbmRleFwiXG4gICAgICBbKG5nTW9kZWwpXT1cImlucHV0VmFsdWVcIlxuICAgICAgKGJsdXIpPVwiZW1pdE9uQmx1ckV2ZW50KCRldmVudClcIlxuICAgICAgW2F0dHIucGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgICAgKGtleXVwKT1cImVtaXRPbktleXVwRXZlbnQoJGV2ZW50KVwiXG4gICAgICAoZm9jdXMpPVwiZW1pdE9uRm9jdXNFdmVudCgkZXZlbnQpXCJcbiAgICAgIFtjbGFzcy5heC1zdGF0ZS1kaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICBbY2xhc3MuYXgtc3RhdGUtcmVhZG9ubHldPVwicmVhZG9ubHlcIlxuICAgICAgKGtleWRvd24pPVwiZW1pdE9uS2V5ZG93bkV2ZW50KCRldmVudClcIlxuICAgICAgKGtleXByZXNzKT1cImVtaXRPbktleXByZXNzRXZlbnQoJGV2ZW50KVwiXG4gICAgICBbbmdNb2RlbE9wdGlvbnNdPVwieyB1cGRhdGVPbjogdXBkYXRlT24oKSB9XCJcbiAgICAgIChuZ01vZGVsQ2hhbmdlKT1cImVtaXRPblRleHRDaGFuZ2VkKCRldmVudCwgdHJ1ZSlcIlxuICAgIC8+XG4gIDwvZGl2PlxuICBAaWYgKCFkaXNhYmxlZCAmJiAhcmVhZG9ubHkgJiYgdmFsdWU/Lmxlbmd0aCkge1xuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImF4LWNsZWFyLWJ1dHRvblwiPjwvbmctY29udGVudD5cbiAgfVxuICA8bmctY29udGVudCBzZWxlY3Q9XCJheC1zdWZmaXhcIj4gPC9uZy1jb250ZW50PlxuPC9kaXY+XG48bmctY29udGVudCBzZWxlY3Q9XCJheC1hdXRvY29tcGxldGVcIj4gPC9uZy1jb250ZW50PlxuPG5nLWNvbnRlbnQgc2VsZWN0PVwiYXgtdmFsaWRhdGlvbi1ydWxlXCI+IDwvbmctY29udGVudD5cbjxkaXYgY2xhc3M9XCJheC1lcnJvci1jb250YWluZXJcIj48L2Rpdj5cbiJdfQ==","import { NgModule } from '@angular/core';\nimport { AXTagBoxComponent } from './tag-box.component';\nimport * as i0 from \"@angular/core\";\nexport class AXTagBoxModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.6\", ngImport: i0, type: AXTagBoxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.6\", ngImport: i0, type: AXTagBoxModule, imports: [AXTagBoxComponent], exports: [AXTagBoxComponent] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.6\", ngImport: i0, type: AXTagBoxModule, imports: [AXTagBoxComponent] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.6\", ngImport: i0, type: AXTagBoxModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [AXTagBoxComponent],\n exports: [AXTagBoxComponent],\n providers: [],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFnLWJveC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL3RhZy1ib3gvc3JjL2xpYi90YWctYm94Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQU94RCxNQUFNLE9BQU8sY0FBYzs4R0FBZCxjQUFjOytHQUFkLGNBQWMsWUFKZixpQkFBaUIsYUFDakIsaUJBQWlCOytHQUdoQixjQUFjLFlBSmYsaUJBQWlCOzsyRkFJaEIsY0FBYztrQkFMMUIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQztvQkFDNUIsT0FBTyxFQUFFLENBQUMsaUJBQWlCLENBQUM7b0JBQzVCLFNBQVMsRUFBRSxFQUFFO2lCQUNkIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYVGFnQm94Q29tcG9uZW50IH0gZnJvbSAnLi90YWctYm94LmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtBWFRhZ0JveENvbXBvbmVudF0sXG4gIGV4cG9ydHM6IFtBWFRhZ0JveENvbXBvbmVudF0sXG4gIHByb3ZpZGVyczogW10sXG59KVxuZXhwb3J0IGNsYXNzIEFYVGFnQm94TW9kdWxlIHt9XG4iXX0=","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LWNvbXBvbmVudHMtdGFnLWJveC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvdGFnLWJveC9zcmMvYWNvcmV4LWNvbXBvbmVudHMtdGFnLWJveC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acorex-components-tag-box.mjs","sources":["../tmp-esm2022/tag-box/lib/tag-box.component.js","../tmp-esm2022/tag-box/lib/tag-box.module.js","../tmp-esm2022/tag-box/acorex-components-tag-box.js"],"sourcesContent":["import { AXAutocompleteParentComponent, AXClearableComponent, AXComponent, AXFocusableComponent, AXValuableComponent, MXInputBaseValueComponent, MXLookComponent, } from '@acorex/cdk/common';\nimport { AXAutocompleteComponent } from '@acorex/components/autocomplete';\nimport { AXDecoratorGenericComponent, AXDecoratorIconComponent } from '@acorex/components/decorators';\nimport { AXTagComponent } from '@acorex/components/tag';\nimport { AXUnsubscriber } from '@acorex/core/utils';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, HostBinding, ViewEncapsulation, contentChild, forwardRef, inject, input, output, signal, } from '@angular/core';\nimport { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { castArray, cloneDeep, get, isNil, isNull, set } from 'lodash-es';\nimport { classes } from 'polytype';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/forms\";\nexport class AXTagBoxComponent extends classes((MXInputBaseValueComponent), MXLookComponent, (AXAutocompleteParentComponent)) {\n constructor() {\n super(...arguments);\n this.unsubscriber = inject(AXUnsubscriber);\n this.updateOn = signal('change', ...(ngDevMode ? [{ debugName: \"updateOn\" }] : []));\n this.addOnComma = input(true, ...(ngDevMode ? [{ debugName: \"addOnComma\" }] : []));\n this.addOnEnter = input(true, ...(ngDevMode ? [{ debugName: \"addOnEnter\" }] : []));\n this.valueField = input('id', ...(ngDevMode ? [{ debugName: \"valueField\" }] : []));\n this.textField = input('text', ...(ngDevMode ? [{ debugName: \"textField\" }] : []));\n this.readonlyField = input('readonly', ...(ngDevMode ? [{ debugName: \"readonlyField\" }] : []));\n this.allowDuplicateValues = input(false, ...(ngDevMode ? [{ debugName: \"allowDuplicateValues\" }] : []));\n this.tagTemplate = input(...(ngDevMode ? [undefined, { debugName: \"tagTemplate\" }] : []));\n this.onTagClick = output();\n this.onTagDblClick = output();\n this.onTagContextMenu = output();\n this.inputValue = signal('', ...(ngDevMode ? [{ debugName: \"inputValue\" }] : []));\n this.autocompleteComponent = contentChild(AXAutocompleteComponent, ...(ngDevMode ? [{ debugName: \"autocompleteComponent\" }] : []));\n }\n ngOnInit() {\n super.ngOnInit();\n this.onKeyDown.pipe(this.unsubscriber.takeUntilDestroy).subscribe((e) => {\n const input = this.inputValue().trim();\n if (e.nativeEvent.key === 'Enter' && this.addOnEnter()) {\n if (!input.length)\n return;\n this.addItems(this.convertString(input));\n }\n if (e.nativeEvent.key === ',' && this.addOnComma()) {\n if (!input.length)\n return;\n e.nativeEvent.preventDefault();\n if (!input || input === ',') {\n this.inputValue.set('');\n this.emitOnTextChanged('', true);\n return;\n }\n this.addItems(this.convertString(input));\n }\n if (e.nativeEvent.key === 'Backspace') {\n if (this.inputValue().length)\n return;\n this.removeItem(this.value?.length - 1);\n }\n });\n this.onItemSelected.pipe(this.unsubscriber.takeUntilDestroy).subscribe((e) => {\n const incomingItems = this.convertString(e.value);\n const currentValue = this.value ?? [];\n const vf = this.valueField();\n const filtered = incomingItems.filter((item) => !currentValue.some((prev) => get(prev, vf) === get(item, vf)));\n this.addItems(filtered);\n });\n }\n /**\n * Adds items to the tag box.\n *\n * @param items - Array of objects to add as tags\n */\n addItems(items) {\n if (this.disabled || this.readonly) {\n return;\n }\n //\n if (isNil(items) || items.length === 0) {\n return;\n }\n //\n const value = cloneDeep(this.value ?? []);\n // filter out duplicates instead of early return\n let itemsToAdd = items;\n if (!this.allowDuplicateValues()) {\n const vf = this.valueField();\n itemsToAdd = items.filter((item) => !value.some((prev) => get(prev, vf) === get(item, vf)));\n if (itemsToAdd.length === 0) {\n this.inputValue.set('');\n this.emitOnTextChanged('', true);\n return;\n }\n }\n this.inputValue.set('');\n this.emitOnTextChanged('', true);\n this.commitValue(value.concat(itemsToAdd), true);\n // sync autocomplete selection to avoid re-adding removed items\n this.syncAutocompleteSelection();\n }\n /**\n * Removes a tag at the specified index.\n *\n * @param index - Index of the tag to remove\n */\n removeItem(index) {\n if (this.disabled || this.readonly) {\n return;\n }\n const value = cloneDeep(this.value ?? []);\n value.splice(index, 1);\n this.commitValue(value, true);\n // sync autocomplete selection to avoid re-adding removed items\n this.syncAutocompleteSelection();\n }\n /**\n * Converts input values to tag objects.\n *\n * @param v - Value to convert (string, object, or array)\n * @returns Array of tag objects\n */\n convertString(v) {\n const array = castArray(v);\n return array\n .map((c) => {\n if (!c)\n return null;\n if (typeof c === 'object') {\n return c;\n }\n const obj = {};\n set(obj, this.valueField(), c);\n set(obj, this.textField(), c);\n return obj;\n })\n .filter((c) => !isNull(c));\n }\n getFieldValue(item, path) {\n return get(item, path);\n }\n /**\n * Keep autocomplete selected values in sync with current tags\n */\n syncAutocompleteSelection() {\n const ac = this.autocompleteComponent();\n if (!ac)\n return;\n const vf = ac.valueField || this.valueField();\n const values = (this.value ?? []).map((t) => get(t, vf)).filter((v) => v != null);\n ac.value = ac.multiple ? values : (values[0] ?? null);\n }\n internalSetValue(value) {\n const result = this.convertString(value);\n return result;\n }\n get __hostName() {\n return this.name;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.6\", ngImport: i0, type: AXTagBoxComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.3.6\", type: AXTagBoxComponent, isStandalone: true, selector: \"ax-tag-box\", inputs: { disabled: { classPropertyName: \"disabled\", publicName: \"disabled\", isSignal: false, isRequired: false, transformFunction: null }, tabIndex: { classPropertyName: \"tabIndex\", publicName: \"tabIndex\", isSignal: false, isRequired: false, transformFunction: null }, readonly: { classPropertyName: \"readonly\", publicName: \"readonly\", isSignal: false, isRequired: false, transformFunction: null }, value: { classPropertyName: \"value\", publicName: \"value\", isSignal: false, isRequired: false, transformFunction: null }, state: { classPropertyName: \"state\", publicName: \"state\", isSignal: false, isRequired: false, transformFunction: null }, name: { classPropertyName: \"name\", publicName: \"name\", isSignal: false, isRequired: false, transformFunction: null }, id: { classPropertyName: \"id\", publicName: \"id\", isSignal: false, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: \"placeholder\", publicName: \"placeholder\", isSignal: false, isRequired: false, transformFunction: null }, allowNull: { classPropertyName: \"allowNull\", publicName: \"allowNull\", isSignal: false, isRequired: false, transformFunction: null }, type: { classPropertyName: \"type\", publicName: \"type\", isSignal: false, isRequired: false, transformFunction: null }, look: { classPropertyName: \"look\", publicName: \"look\", isSignal: false, isRequired: false, transformFunction: null }, addOnComma: { classPropertyName: \"addOnComma\", publicName: \"addOnComma\", isSignal: true, isRequired: false, transformFunction: null }, addOnEnter: { classPropertyName: \"addOnEnter\", publicName: \"addOnEnter\", isSignal: true, isRequired: false, transformFunction: null }, valueField: { classPropertyName: \"valueField\", publicName: \"valueField\", isSignal: true, isRequired: false, transformFunction: null }, textField: { classPropertyName: \"textField\", publicName: \"textField\", isSignal: true, isRequired: false, transformFunction: null }, readonlyField: { classPropertyName: \"readonlyField\", publicName: \"readonlyField\", isSignal: true, isRequired: false, transformFunction: null }, allowDuplicateValues: { classPropertyName: \"allowDuplicateValues\", publicName: \"allowDuplicateValues\", isSignal: true, isRequired: false, transformFunction: null }, tagTemplate: { classPropertyName: \"tagTemplate\", publicName: \"tagTemplate\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onBlur: \"onBlur\", onFocus: \"onFocus\", valueChange: \"valueChange\", stateChange: \"stateChange\", onValueChanged: \"onValueChanged\", readonlyChange: \"readonlyChange\", disabledChange: \"disabledChange\", onKeyDown: \"onKeyDown\", onKeyUp: \"onKeyUp\", onKeyPress: \"onKeyPress\", onTagClick: \"onTagClick\", onTagDblClick: \"onTagDblClick\", onTagContextMenu: \"onTagContextMenu\" }, host: { properties: { \"attr.name\": \"this.__hostName\" } }, providers: [\n { provide: AXComponent, useExisting: AXTagBoxComponent },\n { provide: AXValuableComponent, useExisting: AXTagBoxComponent },\n { provide: AXFocusableComponent, useExisting: AXTagBoxComponent },\n { provide: AXClearableComponent, useExisting: AXTagBoxComponent },\n { provide: MXInputBaseValueComponent, useExisting: AXTagBoxComponent },\n { provide: AXAutocompleteParentComponent, useExisting: AXTagBoxComponent },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXTagBoxComponent),\n multi: true,\n },\n AXUnsubscriber,\n ], queries: [{ propertyName: \"autocompleteComponent\", first: true, predicate: AXAutocompleteComponent, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: \"<div\\n (click)=\\\"input.focus()\\\"\\n [class.ax-state-disabled]=\\\"disabled\\\"\\n [class.ax-state-readonly]=\\\"readonly\\\"\\n class=\\\"ax-editor-container ax-{{ look }}\\\"\\n>\\n <ng-content select=\\\"ax-prefix\\\"> </ng-content>\\n <div class=\\\"ax-tags-container\\\">\\n @for (tag of value; track $index; let i = $index) {\\n @if (tagTemplate()) {\\n <ng-container\\n [ngTemplateOutlet]=\\\"tagTemplate()\\\"\\n [ngTemplateOutletContext]=\\\"{ $implicit: tag, index: i }\\\"\\n ></ng-container>\\n } @else {\\n <ax-tag\\n [text]=\\\"(getFieldValue(tag, textField()) ?? '') + ''\\\"\\n look=\\\"twotone\\\"\\n (onClick)=\\\"onTagClick.emit($event)\\\"\\n (onDblClick)=\\\"onTagDblClick.emit($event)\\\"\\n (onContextMenu)=\\\"onTagContextMenu.emit($event)\\\"\\n >\\n @if (!getFieldValue(tag, readonlyField()) && !disabled && !readonly) {\\n <ax-suffix>\\n <button (click)=\\\"removeItem(i)\\\"><ax-icon class=\\\"ax-icon ax-icon-close\\\"></ax-icon></button>\\n </ax-suffix>\\n }\\n </ax-tag>\\n }\\n }\\n <input\\n #input\\n [id]=\\\"id\\\"\\n class=\\\"ax-input\\\"\\n [disabled]=\\\"disabled\\\"\\n [readonly]=\\\"readonly\\\"\\n [tabindex]=\\\"tabIndex\\\"\\n [(ngModel)]=\\\"inputValue\\\"\\n (blur)=\\\"emitOnBlurEvent($event)\\\"\\n [attr.placeholder]=\\\"placeholder\\\"\\n (keyup)=\\\"emitOnKeyupEvent($event)\\\"\\n (focus)=\\\"emitOnFocusEvent($event)\\\"\\n [class.ax-state-disabled]=\\\"disabled\\\"\\n [class.ax-state-readonly]=\\\"readonly\\\"\\n (keydown)=\\\"emitOnKeydownEvent($event)\\\"\\n (keypress)=\\\"emitOnKeypressEvent($event)\\\"\\n [ngModelOptions]=\\\"{ updateOn: updateOn() }\\\"\\n (ngModelChange)=\\\"emitOnTextChanged($event, true)\\\"\\n />\\n </div>\\n @if (!disabled && !readonly && value?.length) {\\n <ng-content select=\\\"ax-clear-button\\\"></ng-content>\\n }\\n <ng-content select=\\\"ax-suffix\\\"> </ng-content>\\n</div>\\n<ng-content select=\\\"ax-autocomplete\\\"> </ng-content>\\n<ng-content select=\\\"ax-validation-rule\\\"> </ng-content>\\n<div class=\\\"ax-error-container\\\"></div>\\n\", styles: [\"ax-tag-box{width:100%}ax-tag-box .ax-editor-container{height:auto;padding:.25rem;min-height:var(--ax-sys-size-base)}ax-tag-box .ax-editor-container .ax-tags-container{width:100%;gap:.25rem;display:flex;flex-wrap:wrap}ax-tag-box .ax-editor-container .ax-tags-container ax-tag{--ax-comp-tag-border-radius: .375rem}ax-tag-box .ax-editor-container .ax-tags-container input{min-width:var(--ax-comp-tag-item-input-min-width, 7.5rem);height:calc(var(--ax-sys-size-base) * var(--ax-comp-tag-size-ratio, .75));padding-inline-start:var(--ax-comp-tag-item-input-padding-inline-start, .5rem)}ax-tag-box .ax-editor-container ax-clear-button{height:1rem}\\n\"], dependencies: [{ kind: \"ngmodule\", type: FormsModule }, { kind: \"directive\", type: i1.DefaultValueAccessor, selector: \"input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]\" }, { kind: \"directive\", type: i1.NgControlStatus, selector: \"[formControlName],[ngModel],[formControl]\" }, { kind: \"directive\", type: i1.NgModel, selector: \"[ngModel]:not([formControlName]):not([formControl])\", inputs: [\"name\", \"disabled\", \"ngModel\", \"ngModelOptions\"], outputs: [\"ngModelChange\"], exportAs: [\"ngModel\"] }, { kind: \"component\", type: AXDecoratorGenericComponent, selector: \"ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay\" }, { kind: \"component\", type: AXDecoratorIconComponent, selector: \"ax-icon\", inputs: [\"icon\"] }, { kind: \"component\", type: AXTagComponent, selector: \"ax-tag\", inputs: [\"color\", \"look\", \"text\"], outputs: [\"onClick\", \"onDblClick\", \"onContextMenu\"] }, { kind: \"directive\", type: NgTemplateOutlet, selector: \"[ngTemplateOutlet]\", inputs: [\"ngTemplateOutletContext\", \"ngTemplateOutlet\", \"ngTemplateOutletInjector\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.6\", ngImport: i0, type: AXTagBoxComponent, decorators: [{\n type: Component,\n args: [{ selector: 'ax-tag-box', inputs: [\n 'disabled',\n 'tabIndex',\n 'readonly',\n 'value',\n 'state',\n 'name',\n 'id',\n 'placeholder',\n 'allowNull',\n 'type',\n 'look',\n ], outputs: [\n 'onBlur',\n 'onFocus',\n 'valueChange',\n 'stateChange',\n 'onValueChanged',\n 'readonlyChange',\n 'disabledChange',\n 'onKeyDown',\n 'onKeyUp',\n 'onKeyPress',\n ], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [\n { provide: AXComponent, useExisting: AXTagBoxComponent },\n { provide: AXValuableComponent, useExisting: AXTagBoxComponent },\n { provide: AXFocusableComponent, useExisting: AXTagBoxComponent },\n { provide: AXClearableComponent, useExisting: AXTagBoxComponent },\n { provide: MXInputBaseValueComponent, useExisting: AXTagBoxComponent },\n { provide: AXAutocompleteParentComponent, useExisting: AXTagBoxComponent },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXTagBoxComponent),\n multi: true,\n },\n AXUnsubscriber,\n ], imports: [FormsModule, AXDecoratorGenericComponent, AXDecoratorIconComponent, AXTagComponent, NgTemplateOutlet], template: \"<div\\n (click)=\\\"input.focus()\\\"\\n [class.ax-state-disabled]=\\\"disabled\\\"\\n [class.ax-state-readonly]=\\\"readonly\\\"\\n class=\\\"ax-editor-container ax-{{ look }}\\\"\\n>\\n <ng-content select=\\\"ax-prefix\\\"> </ng-content>\\n <div class=\\\"ax-tags-container\\\">\\n @for (tag of value; track $index; let i = $index) {\\n @if (tagTemplate()) {\\n <ng-container\\n [ngTemplateOutlet]=\\\"tagTemplate()\\\"\\n [ngTemplateOutletContext]=\\\"{ $implicit: tag, index: i }\\\"\\n ></ng-container>\\n } @else {\\n <ax-tag\\n [text]=\\\"(getFieldValue(tag, textField()) ?? '') + ''\\\"\\n look=\\\"twotone\\\"\\n (onClick)=\\\"onTagClick.emit($event)\\\"\\n (onDblClick)=\\\"onTagDblClick.emit($event)\\\"\\n (onContextMenu)=\\\"onTagContextMenu.emit($event)\\\"\\n >\\n @if (!getFieldValue(tag, readonlyField()) && !disabled && !readonly) {\\n <ax-suffix>\\n <button (click)=\\\"removeItem(i)\\\"><ax-icon class=\\\"ax-icon ax-icon-close\\\"></ax-icon></button>\\n </ax-suffix>\\n }\\n </ax-tag>\\n }\\n }\\n <input\\n #input\\n [id]=\\\"id\\\"\\n class=\\\"ax-input\\\"\\n [disabled]=\\\"disabled\\\"\\n [readonly]=\\\"readonly\\\"\\n [tabindex]=\\\"tabIndex\\\"\\n [(ngModel)]=\\\"inputValue\\\"\\n (blur)=\\\"emitOnBlurEvent($event)\\\"\\n [attr.placeholder]=\\\"placeholder\\\"\\n (keyup)=\\\"emitOnKeyupEvent($event)\\\"\\n (focus)=\\\"emitOnFocusEvent($event)\\\"\\n [class.ax-state-disabled]=\\\"disabled\\\"\\n [class.ax-state-readonly]=\\\"readonly\\\"\\n (keydown)=\\\"emitOnKeydownEvent($event)\\\"\\n (keypress)=\\\"emitOnKeypressEvent($event)\\\"\\n [ngModelOptions]=\\\"{ updateOn: updateOn() }\\\"\\n (ngModelChange)=\\\"emitOnTextChanged($event, true)\\\"\\n />\\n </div>\\n @if (!disabled && !readonly && value?.length) {\\n <ng-content select=\\\"ax-clear-button\\\"></ng-content>\\n }\\n <ng-content select=\\\"ax-suffix\\\"> </ng-content>\\n</div>\\n<ng-content select=\\\"ax-autocomplete\\\"> </ng-content>\\n<ng-content select=\\\"ax-validation-rule\\\"> </ng-content>\\n<div class=\\\"ax-error-container\\\"></div>\\n\", styles: [\"ax-tag-box{width:100%}ax-tag-box .ax-editor-container{height:auto;padding:.25rem;min-height:var(--ax-sys-size-base)}ax-tag-box .ax-editor-container .ax-tags-container{width:100%;gap:.25rem;display:flex;flex-wrap:wrap}ax-tag-box .ax-editor-container .ax-tags-container ax-tag{--ax-comp-tag-border-radius: .375rem}ax-tag-box .ax-editor-container .ax-tags-container input{min-width:var(--ax-comp-tag-item-input-min-width, 7.5rem);height:calc(var(--ax-sys-size-base) * var(--ax-comp-tag-size-ratio, .75));padding-inline-start:var(--ax-comp-tag-item-input-padding-inline-start, .5rem)}ax-tag-box .ax-editor-container ax-clear-button{height:1rem}\\n\"] }]\n }], propDecorators: { addOnComma: [{ type: i0.Input, args: [{ isSignal: true, alias: \"addOnComma\", required: false }] }], addOnEnter: [{ type: i0.Input, args: [{ isSignal: true, alias: \"addOnEnter\", required: false }] }], valueField: [{ type: i0.Input, args: [{ isSignal: true, alias: \"valueField\", required: false }] }], textField: [{ type: i0.Input, args: [{ isSignal: true, alias: \"textField\", required: false }] }], readonlyField: [{ type: i0.Input, args: [{ isSignal: true, alias: \"readonlyField\", required: false }] }], allowDuplicateValues: [{ type: i0.Input, args: [{ isSignal: true, alias: \"allowDuplicateValues\", required: false }] }], tagTemplate: [{ type: i0.Input, args: [{ isSignal: true, alias: \"tagTemplate\", required: false }] }], onTagClick: [{ type: i0.Output, args: [\"onTagClick\"] }], onTagDblClick: [{ type: i0.Output, args: [\"onTagDblClick\"] }], onTagContextMenu: [{ type: i0.Output, args: [\"onTagContextMenu\"] }], autocompleteComponent: [{ type: i0.ContentChild, args: [i0.forwardRef(() => AXAutocompleteComponent), { isSignal: true }] }], __hostName: [{\n type: HostBinding,\n args: ['attr.name']\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFnLWJveC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL3RhZy1ib3gvc3JjL2xpYi90YWctYm94LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvdGFnLWJveC9zcmMvbGliL3RhZy1ib3guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLDZCQUE2QixFQUM3QixvQkFBb0IsRUFFcEIsV0FBVyxFQUNYLG9CQUFvQixFQUNwQixtQkFBbUIsRUFDbkIseUJBQXlCLEVBQ3pCLGVBQWUsR0FDaEIsTUFBTSxvQkFBb0IsQ0FBQztBQUM1QixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUN0RyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFdBQVcsRUFHWCxpQkFBaUIsRUFDakIsWUFBWSxFQUNaLFVBQVUsRUFDVixNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFDTixNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFdBQVcsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUMxRSxPQUFPLEVBQUUs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LEVBQUUsMkJBQTJCLEVBQUUsd0JBQXdCLEVBQUUsY0FBYyxFQUFFLGdCQUFnQixDQUFDOzYvQkF3QmxFLHVCQUF1QjtzQkF3SW5FLFdBQVc7dUJBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFYQXV0b2NvbXBsZXRlUGFyZW50Q29tcG9uZW50LFxuICBBWENsZWFyYWJsZUNvbXBvbmVudCxcbiAgQVhDbGlja0V2ZW50LFxuICBBWENvbXBvbmVudCxcbiAgQVhGb2N1c2FibGVDb21wb25lbnQsXG4gIEFYVmFsdWFibGVDb21wb25lbnQsXG4gIE1YSW5wdXRCYXNlVmFsdWVDb21wb25lbnQsXG4gIE1YTG9va0NvbXBvbmVudCxcbn0gZnJvbSAnQGFjb3JleC9jZGsvY29tbW9uJztcbmltcG9ydCB7IEFYQXV0b2NvbXBsZXRlQ29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2F1dG9jb21wbGV0ZSc7XG5pbXBvcnQgeyBBWERlY29yYXRvckdlbmVyaWNDb21wb25lbnQsIEFYRGVjb3JhdG9ySWNvbkNvbXBvbmVudCB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kZWNvcmF0b3JzJztcbmltcG9ydCB7IEFYVGFnQ29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3RhZyc7XG5pbXBvcnQgeyBBWFVuc3Vic2NyaWJlciB9IGZyb20gJ0BhY29yZXgvY29yZS91dGlscyc7XG5pbXBvcnQgeyBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEhvc3RCaW5kaW5nLFxuICBPbkluaXQsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgY29udGVudENoaWxkLFxuICBmb3J3YXJkUmVmLFxuICBpbmplY3QsXG4gIGlucHV0LFxuICBvdXRwdXQsXG4gIHNpZ25hbCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBjYXN0QXJyYXksIGNsb25lRGVlcCwgZ2V0LCBpc05pbCwgaXNOdWxsLCBzZXQgfSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHsgY2xhc3NlcyB9IGZyb20gJ3BvbHl0eXBlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXgtdGFnLWJveCcsXG4gIHRlbXBsYXRlVXJsOiAndGFnLWJveC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWyd0YWctYm94LmNvbXBvbmVudC5zY3NzJ10sXG4gIGlucHV0czogW1xuICAgICdkaXNhYmxlZCcsXG4gICAgJ3RhYkluZGV4JyxcbiAgICAncmVhZG9ubHknLFxuICAgICd2YWx1ZScsXG4gICAgJ3N0YXRlJyxcbiAgICAnbmFtZScsXG4gICAgJ2lkJyxcbiAgICAncGxhY2Vob2xkZXInLFxuICAgICdhbGxvd051bGwnLFxuICAgICd0eXBlJyxcbiAgICAnbG9vaycsXG4gIF0sXG4gIG91dHB1dHM6IFtcbiAgICAnb25CbHVyJyxcbiAgICAnb25Gb2N1cycsXG4gICAgJ3ZhbHVlQ2hhbmdlJyxcbiAgICAnc3RhdGVDaGFuZ2UnLFxuICAgICdvblZhbHVlQ2hhbmdlZCcsXG4gICAgJ3JlYWRvbmx5Q2hhbmdlJyxcbiAgICAnZGlzYWJsZWRDaGFuZ2UnLFxuICAgICdvbktleURvd24nLFxuICAgICdvbktleVVwJyxcbiAgICAnb25LZXlQcmVzcycsXG4gIF0sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBwcm92aWRlcnM6IFtcbiAgICB7IHByb3ZpZGU6IEFYQ29tcG9uZW50LCB1c2VFeGlzdGluZzogQVhUYWdCb3hDb21wb25lbnQgfSxcbiAgICB7IHByb3ZpZGU6IEFYVmFsdWFibGVDb21wb25lbnQsIHVzZUV4aXN0aW5nOiBBWFRhZ0JveENvbXBvbmVudCB9LFxuICAgIHsgcHJvdmlkZTogQVhGb2N1c2FibGVDb21wb25lbnQsIHVzZUV4aXN0aW5nOiBBWFRhZ0JveENvbXBvbmVudCB9LFxuICAgIHsgcHJvdmlkZTogQVhDbGVhcmFibGVDb21wb25lbnQsIHVzZUV4aXN0aW5nOiBBWFRhZ0JveENvbXBvbmVudCB9LFxuICAgIHsgcHJvdmlkZTogTVhJbnB1dEJhc2VWYWx1ZUNvbXBvbmVudCwgdXNlRXhpc3Rpbmc6IEFYVGFnQm94Q29tcG9uZW50IH0sXG4gICAgeyBwcm92aWRlOiBBWEF1dG9jb21wbGV0ZVBhcmVudENvbXBvbmVudCwgdXNlRXhpc3Rpbmc6IEFYVGFnQm94Q29tcG9uZW50IH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBBWFRhZ0JveENvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICAgIEFYVW5zdWJzY3JpYmVyLFxuICBdLFxuICBpbXBvcnRzOiBbRm9ybXNNb2R1bGUsIEFYRGVjb3JhdG9yR2VuZXJpY0NvbXBvbmVudCwgQVhEZWNvcmF0b3JJY29uQ29tcG9uZW50LCBBWFRhZ0NvbXBvbmVudCwgTmdUZW1wbGF0ZU91dGxldF0sXG59KVxuZXhwb3J0IGNsYXNzIEFYVGFnQm94Q29tcG9uZW50XG4gIGV4dGVuZHMgY2xhc3NlcyhNWElucHV0QmFzZVZhbHVlQ29tcG9uZW50PHVua25vd25bXT4sIE1YTG9va0NvbXBvbmVudCwgQVhBdXRvY29tcGxldGVQYXJlbnRDb21wb25lbnQ8dW5rbm93bltdPilcbiAgaW1wbGVtZW50cyBPbkluaXRcbntcbiAgdW5zdWJzY3JpYmVyID0gaW5qZWN0KEFYVW5zdWJzY3JpYmVyKTtcblxuICBwcm90ZWN0ZWQgdXBkYXRlT24gPSBzaWduYWw8J2NoYW5nZScgfCAnYmx1cicgfCAnc3VibWl0Jz4oJ2NoYW5nZScpO1xuXG4gIGFkZE9uQ29tbWEgPSBpbnB1dCh0cnVlKTtcbiAgYWRkT25FbnRlciA9IGlucHV0KHRydWUpO1xuICB2YWx1ZUZpZWxkID0gaW5wdXQoJ2lkJyk7XG4gIHRleHRGaWVsZCA9IGlucHV0KCd0ZXh0Jyk7XG4gIHJlYWRvbmx5RmllbGQgPSBpbnB1dCgncmVhZG9ubHknKTtcbiAgYWxsb3dEdXBsaWNhdGVWYWx1ZXMgPSBpbnB1dChmYWxzZSk7XG4gIHRhZ1RlbXBsYXRlID0gaW5wdXQ8VGVtcGxhdGVSZWY8dW5rbm93bj4+KCk7XG5cbiAgb25UYWdDbGljayA9IG91dHB1dDxBWENsaWNrRXZlbnQ+KCk7XG4gIG9uVGFnRGJsQ2xpY2sgPSBvdXRwdXQ8QVhDbGlja0V2ZW50PigpO1xuICBvblRhZ0NvbnRleHRNZW51ID0gb3V0cHV0PEFYQ2xpY2tFdmVudD4oKTtcblxuICBpbnB1dFZhbHVlID0gc2lnbmFsPHN0cmluZz4oJycpO1xuXG4gIHByaXZhdGUgYXV0b2NvbXBsZXRlQ29tcG9uZW50ID0gY29udGVudENoaWxkKEFYQXV0b2NvbXBsZXRlQ29tcG9uZW50KTtcblxuICBvdmVycmlkZSBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgIHRoaXMub25LZXlEb3duLnBpcGUodGhpcy51bnN1YnNjcmliZXIudGFrZVVudGlsRGVzdHJveSkuc3Vic2NyaWJlKChlKSA9PiB7XG4gICAgICBjb25zdCBpbnB1dCA9IHRoaXMuaW5wdXRWYWx1ZSgpLnRyaW0oKTtcblxuICAgICAgaWYgKGUubmF0aXZlRXZlbnQua2V5ID09PSAnRW50ZXInICYmIHRoaXMuYWRkT25FbnRlcigpKSB7XG4gICAgICAgIGlmICghaW5wdXQubGVuZ3RoKSByZXR1cm47XG4gICAgICAgIHRoaXMuYWRkSXRlbXModGhpcy5jb252ZXJ0U3RyaW5nKGlucHV0KSk7XG4gICAgICB9XG5cbiAgICAgIGlmIChlLm5hdGl2ZUV2ZW50LmtleSA9PT0gJywnICYmIHRoaXMuYWRkT25Db21tYSgpKSB7XG4gICAgICAgIGlmICghaW5wdXQubGVuZ3RoKSByZXR1cm47XG4gICAgICAgIGUubmF0aXZlRXZlbnQucHJldmVudERlZmF1bHQoKTtcblxuICAgICAgICBpZiAoIWlucHV0IHx8IGlucHV0ID09PSAnLCcpIHtcbiAgICAgICAgICB0aGlzLmlucHV0VmFsdWUuc2V0KCcnKTtcbiAgICAgICAgICB0aGlzLmVtaXRPblRleHRDaGFuZ2VkKCcnLCB0cnVlKTtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmFkZEl0ZW1zKHRoaXMuY29udmVydFN0cmluZyhpbnB1dCkpO1xuICAgICAgfVxuXG4gICAgICBpZiAoZS5uYXRpdmVFdmVudC5rZXkgPT09ICdCYWNrc3BhY2UnKSB7XG4gICAgICAgIGlmICh0aGlzLmlucHV0VmFsdWUoKS5sZW5ndGgpIHJldHVybjtcbiAgICAgICAgdGhpcy5yZW1vdmVJdGVtKHRoaXMudmFsdWU/Lmxlbmd0aCAtIDEpO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgdGhpcy5vbkl0ZW1TZWxlY3RlZC5waXBlKHRoaXMudW5zdWJzY3JpYmVyLnRha2VVbnRpbERlc3Ryb3kpLnN1YnNjcmliZSgoZSkgPT4ge1xuICAgICAgY29uc3QgaW5jb21pbmdJdGVtcyA9IHRoaXMuY29udmVydFN0cmluZyhlLnZhbHVlKTtcbiAgICAgIGNvbnN0IGN1cnJlbnRWYWx1ZSA9IHRoaXMudmFsdWUgPz8gW107XG4gICAgICBjb25zdCB2ZiA9IHRoaXMudmFsdWVGaWVsZCgpO1xuICAgICAgY29uc3QgZmlsdGVyZWQgPSBpbmNvbWluZ0l0ZW1zLmZpbHRlcigoaXRlbSkgPT4gIWN1cnJlbnRWYWx1ZS5zb21lKChwcmV2KSA9PiBnZXQocHJldiwgdmYpID09PSBnZXQoaXRlbSwgdmYpKSk7XG4gICAgICB0aGlzLmFkZEl0ZW1zKGZpbHRlcmVkKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGl0ZW1zIHRvIHRoZSB0YWcgYm94LlxuICAgKlxuICAgKiBAcGFyYW0gaXRlbXMgLSBBcnJheSBvZiBvYmplY3RzIHRvIGFkZCBhcyB0YWdzXG4gICAqL1xuICBhZGRJdGVtcyhpdGVtczogb2JqZWN0W10pIHtcbiAgICBpZiAodGhpcy5kaXNhYmxlZCB8fCB0aGlzLnJlYWRvbmx5KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIC8vXG4gICAgaWYgKGlzTmlsKGl0ZW1zKSB8fCBpdGVtcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgLy9cbiAgICBjb25zdCB2YWx1ZSA9IGNsb25lRGVlcCh0aGlzLnZhbHVlID8/IFtdKTtcbiAgICAvLyBmaWx0ZXIgb3V0IGR1cGxpY2F0ZXMgaW5zdGVhZCBvZiBlYXJseSByZXR1cm5cbiAgICBsZXQgaXRlbXNUb0FkZCA9IGl0ZW1zO1xuICAgIGlmICghdGhpcy5hbGxvd0R1cGxpY2F0ZVZhbHVlcygpKSB7XG4gICAgICBjb25zdCB2ZiA9IHRoaXMudmFsdWVGaWVsZCgpO1xuICAgICAgaXRlbXNUb0FkZCA9IGl0ZW1zLmZpbHRlcigoaXRlbSkgPT4gIXZhbHVlLnNvbWUoKHByZXYpID0+IGdldChwcmV2LCB2ZikgPT09IGdldChpdGVtLCB2ZikpKTtcbiAgICAgIGlmIChpdGVtc1RvQWRkLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICB0aGlzLmlucHV0VmFsdWUuc2V0KCcnKTtcbiAgICAgICAgdGhpcy5lbWl0T25UZXh0Q2hhbmdlZCgnJywgdHJ1ZSk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLmlucHV0VmFsdWUuc2V0KCcnKTtcbiAgICB0aGlzLmVtaXRPblRleHRDaGFuZ2VkKCcnLCB0cnVlKTtcblxuICAgIHRoaXMuY29tbWl0VmFsdWUodmFsdWUuY29uY2F0KGl0ZW1zVG9BZGQpLCB0cnVlKTtcblxuICAgIC8vIHN5bmMgYXV0b2NvbXBsZXRlIHNlbGVjdGlvbiB0byBhdm9pZCByZS1hZGRpbmcgcmVtb3ZlZCBpdGVtc1xuICAgIHRoaXMuc3luY0F1dG9jb21wbGV0ZVNlbGVjdGlvbigpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZXMgYSB0YWcgYXQgdGhlIHNwZWNpZmllZCBpbmRleC5cbiAgICpcbiAgICogQHBhcmFtIGluZGV4IC0gSW5kZXggb2YgdGhlIHRhZyB0byByZW1vdmVcbiAgICovXG4gIHJlbW92ZUl0ZW0oaW5kZXg6IG51bWJlcikge1xuICAgIGlmICh0aGlzLmRpc2FibGVkIHx8IHRoaXMucmVhZG9ubHkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgdmFsdWUgPSBjbG9uZURlZXAodGhpcy52YWx1ZSA/PyBbXSk7XG4gICAgdmFsdWUuc3BsaWNlKGluZGV4LCAxKTtcbiAgICB0aGlzLmNvbW1pdFZhbHVlKHZhbHVlLCB0cnVlKTtcblxuICAgIC8vIHN5bmMgYXV0b2NvbXBsZXRlIHNlbGVjdGlvbiB0byBhdm9pZCByZS1hZGRpbmcgcmVtb3ZlZCBpdGVtc1xuICAgIHRoaXMuc3luY0F1dG9jb21wbGV0ZVNlbGVjdGlvbigpO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnZlcnRzIGlucHV0IHZhbHVlcyB0byB0YWcgb2JqZWN0cy5cbiAgICpcbiAgICogQHBhcmFtIHYgLSBWYWx1ZSB0byBjb252ZXJ0IChzdHJpbmcsIG9iamVjdCwgb3IgYXJyYXkpXG4gICAqIEByZXR1cm5zIEFycmF5IG9mIHRhZyBvYmplY3RzXG4gICAqL1xuICBjb252ZXJ0U3RyaW5nKHY6IHVua25vd24pOiBvYmplY3RbXSB7XG4gICAgY29uc3QgYXJyYXkgPSBjYXN0QXJyYXkodik7XG5cbiAgICByZXR1cm4gYXJyYXlcbiAgICAgIC5tYXAoKGMpID0+IHtcbiAgICAgICAgaWYgKCFjKSByZXR1cm4gbnVsbDtcbiAgICAgICAgaWYgKHR5cGVvZiBjID09PSAnb2JqZWN0Jykge1xuICAgICAgICAgIHJldHVybiBjO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG9iajogUmVjb3JkPHN0cmluZywgdW5rbm93bj4gPSB7fTtcbiAgICAgICAgc2V0KG9iaiwgdGhpcy52YWx1ZUZpZWxkKCksIGMpO1xuICAgICAgICBzZXQob2JqLCB0aGlzLnRleHRGaWVsZCgpLCBjKTtcbiAgICAgICAgcmV0dXJuIG9iajtcbiAgICAgIH0pXG4gICAgICAuZmlsdGVyKChjKSA9PiAhaXNOdWxsKGMpKTtcbiAgfVxuXG4gIGdldEZpZWxkVmFsdWUoaXRlbTogdW5rbm93biwgcGF0aDogc3RyaW5nKTogdW5rbm93biB7XG4gICAgcmV0dXJuIGdldChpdGVtIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+LCBwYXRoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBLZWVwIGF1dG9jb21wbGV0ZSBzZWxlY3RlZCB2YWx1ZXMgaW4gc3luYyB3aXRoIGN1cnJlbnQgdGFnc1xuICAgKi9cbiAgcHJpdmF0ZSBzeW5jQXV0b2NvbXBsZXRlU2VsZWN0aW9uKCk6IHZvaWQge1xuICAgIGNvbnN0IGFjID0gdGhpcy5hdXRvY29tcGxldGVDb21wb25lbnQoKTtcbiAgICBpZiAoIWFjKSByZXR1cm47XG4gICAgY29uc3QgdmYgPSBhYy52YWx1ZUZpZWxkIHx8IHRoaXMudmFsdWVGaWVsZCgpO1xuICAgIGNvbnN0IHZhbHVlcyA9ICh0aGlzLnZhbHVlID8/IFtdKS5tYXAoKHQpID0+IGdldCh0IGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+LCB2ZikpLmZpbHRlcigodikgPT4gdiAhPSBudWxsKTtcbiAgICBhYy52YWx1ZSA9IGFjLm11bHRpcGxlID8gdmFsdWVzIDogKHZhbHVlc1swXSA/PyBudWxsKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBpbnRlcm5hbFNldFZhbHVlKHZhbHVlOiB1bmtub3duKTogdW5rbm93bltdIHtcbiAgICBjb25zdCByZXN1bHQgPSB0aGlzLmNvbnZlcnRTdHJpbmcodmFsdWUpO1xuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2F0dHIubmFtZScpXG4gIHByaXZhdGUgZ2V0IF9faG9zdE5hbWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5uYW1lO1xuICB9XG59XG4iLCI8ZGl2XG4gIChjbGljayk9XCJpbnB1dC5mb2N1cygpXCJcbiAgW2NsYXNzLmF4LXN0YXRlLWRpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgW2NsYXNzLmF4LXN0YXRlLXJlYWRvbmx5XT1cInJlYWRvbmx5XCJcbiAgY2xhc3M9XCJheC1lZGl0b3ItY29udGFpbmVyIGF4LXt7IGxvb2sgfX1cIlxuPlxuICA8bmctY29udGVudCBzZWxlY3Q9XCJheC1wcmVmaXhcIj4gPC9uZy1jb250ZW50PlxuICA8ZGl2IGNsYXNzPVwiYXgtdGFncy1jb250YWluZXJcIj5cbiAgICBAZm9yICh0YWcgb2YgdmFsdWU7IHRyYWNrICRpbmRleDsgbGV0IGkgPSAkaW5kZXgpIHtcbiAgICAgIEBpZiAodGFnVGVtcGxhdGUoKSkge1xuICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwidGFnVGVtcGxhdGUoKVwiXG4gICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiB0YWcsIGluZGV4OiBpIH1cIlxuICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgPGF4LXRhZ1xuICAgICAgICAgIFt0ZXh0XT1cIihnZXRGaWVsZFZhbHVlKHRhZywgdGV4dEZpZWxkKCkpID8/ICcnKSArICcnXCJcbiAgICAgICAgICBsb29rPVwidHdvdG9uZVwiXG4gICAgICAgICAgKG9uQ2xpY2spPVwib25UYWdDbGljay5lbWl0KCRldmVudClcIlxuICAgICAgICAgIChvbkRibENsaWNrKT1cIm9uVGFnRGJsQ2xpY2suZW1pdCgkZXZlbnQpXCJcbiAgICAgICAgICAob25Db250ZXh0TWVudSk9XCJvblRhZ0NvbnRleHRNZW51LmVtaXQoJGV2ZW50KVwiXG4gICAgICAgID5cbiAgICAgICAgICBAaWYgKCFnZXRGaWVsZFZhbHVlKHRhZywgcmVhZG9ubHlGaWVsZCgpKSAmJiAhZGlzYWJsZWQgJiYgIXJlYWRvbmx5KSB7XG4gICAgICAgICAgICA8YXgtc3VmZml4PlxuICAgICAgICAgICAgICA8YnV0dG9uIChjbGljayk9XCJyZW1vdmVJdGVtKGkpXCI+PGF4LWljb24gY2xhc3M9XCJheC1pY29uIGF4LWljb24tY2xvc2VcIj48L2F4LWljb24+PC9idXR0b24+XG4gICAgICAgICAgICA8L2F4LXN1ZmZpeD5cbiAgICAgICAgICB9XG4gICAgICAgIDwvYXgtdGFnPlxuICAgICAgfVxuICAgIH1cbiAgICA8aW5wdXRcbiAgICAgICNpbnB1dFxuICAgICAgW2lkXT1cImlkXCJcbiAgICAgIGNsYXNzPVwiYXgtaW5wdXRcIlxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXG4gICAgICBbdGFiaW5kZXhdPVwidGFiSW5kZXhcIlxuICAgICAgWyhuZ01vZGVsKV09XCJpbnB1dFZhbHVlXCJcbiAgICAgIChibHVyKT1cImVtaXRPbkJsdXJFdmVudCgkZXZlbnQpXCJcbiAgICAgIFthdHRyLnBsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcbiAgICAgIChrZXl1cCk9XCJlbWl0T25LZXl1cEV2ZW50KCRldmVudClcIlxuICAgICAgKGZvY3VzKT1cImVtaXRPbkZvY3VzRXZlbnQoJGV2ZW50KVwiXG4gICAgICBbY2xhc3MuYXgtc3RhdGUtZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgW2NsYXNzLmF4LXN0YXRlLXJlYWRvbmx5XT1cInJlYWRvbmx5XCJcbiAgICAgIChrZXlkb3duKT1cImVtaXRPbktleWRvd25FdmVudCgkZXZlbnQpXCJcbiAgICAgIChrZXlwcmVzcyk9XCJlbWl0T25LZXlwcmVzc0V2ZW50KCRldmVudClcIlxuICAgICAgW25nTW9kZWxPcHRpb25zXT1cInsgdXBkYXRlT246IHVwZGF0ZU9uKCkgfVwiXG4gICAgICAobmdNb2RlbENoYW5nZSk9XCJlbWl0T25UZXh0Q2hhbmdlZCgkZXZlbnQsIHRydWUpXCJcbiAgICAvPlxuICA8L2Rpdj5cbiAgQGlmICghZGlzYWJsZWQgJiYgIXJlYWRvbmx5ICYmIHZhbHVlPy5sZW5ndGgpIHtcbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJheC1jbGVhci1idXR0b25cIj48L25nLWNvbnRlbnQ+XG4gIH1cbiAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiYXgtc3VmZml4XCI+IDwvbmctY29udGVudD5cbjwvZGl2PlxuPG5nLWNvbnRlbnQgc2VsZWN0PVwiYXgtYXV0b2NvbXBsZXRlXCI+IDwvbmctY29udGVudD5cbjxuZy1jb250ZW50IHNlbGVjdD1cImF4LXZhbGlkYXRpb24tcnVsZVwiPiA8L25nLWNvbnRlbnQ+XG48ZGl2IGNsYXNzPVwiYXgtZXJyb3ItY29udGFpbmVyXCI+PC9kaXY+XG4iXX0=","import { NgModule } from '@angular/core';\nimport { AXTagBoxComponent } from './tag-box.component';\nimport * as i0 from \"@angular/core\";\nexport class AXTagBoxModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.6\", ngImport: i0, type: AXTagBoxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.6\", ngImport: i0, type: AXTagBoxModule, imports: [AXTagBoxComponent], exports: [AXTagBoxComponent] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.6\", ngImport: i0, type: AXTagBoxModule, imports: [AXTagBoxComponent] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.6\", ngImport: i0, type: AXTagBoxModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [AXTagBoxComponent],\n exports: [AXTagBoxComponent],\n providers: [],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFnLWJveC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL3RhZy1ib3gvc3JjL2xpYi90YWctYm94Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQU94RCxNQUFNLE9BQU8sY0FBYzs4R0FBZCxjQUFjOytHQUFkLGNBQWMsWUFKZixpQkFBaUIsYUFDakIsaUJBQWlCOytHQUdoQixjQUFjLFlBSmYsaUJBQWlCOzsyRkFJaEIsY0FBYztrQkFMMUIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQztvQkFDNUIsT0FBTyxFQUFFLENBQUMsaUJBQWlCLENBQUM7b0JBQzVCLFNBQVMsRUFBRSxFQUFFO2lCQUNkIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYVGFnQm94Q29tcG9uZW50IH0gZnJvbSAnLi90YWctYm94LmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtBWFRhZ0JveENvbXBvbmVudF0sXG4gIGV4cG9ydHM6IFtBWFRhZ0JveENvbXBvbmVudF0sXG4gIHByb3ZpZGVyczogW10sXG59KVxuZXhwb3J0IGNsYXNzIEFYVGFnQm94TW9kdWxlIHt9XG4iXX0=","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LWNvbXBvbmVudHMtdGFnLWJveC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvdGFnLWJveC9zcmMvYWNvcmV4LWNvbXBvbmVudHMtdGFnLWJveC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "@acorex/components",
3
- "version": "20.2.23",
3
+ "version": "20.2.26",
4
4
  "peerDependencies": {
5
- "@acorex/core": "20.2.23",
6
- "@acorex/cdk": "20.2.23",
5
+ "@acorex/core": "20.2.26",
6
+ "@acorex/cdk": "20.2.26",
7
7
  "@angular/common": "^20.0.0",
8
8
  "@angular/core": "^20.0.0",
9
9
  "@angular/cdk": "^20.0.0",
@@ -1,4 +1,4 @@
1
- import * as i0 from '@angular/core';
1
+ import * as _angular_core from '@angular/core';
2
2
  import { OnDestroy, WritableSignal, TemplateRef, ElementRef } from '@angular/core';
3
3
  import * as polytype from 'polytype';
4
4
  import * as i2 from '@acorex/cdk/common';
@@ -32,13 +32,17 @@ declare class AXSelectBoxComponent extends AXSelectBoxComponent_base implements
32
32
  *
33
33
  * @defaultValue true
34
34
  */
35
- readonly isItemTruncated: i0.InputSignal<boolean>;
35
+ readonly isItemTruncated: _angular_core.InputSignal<boolean>;
36
36
  /**
37
37
  * Determines if a tooltip is shown for an item.
38
38
  *
39
39
  * @defaultValue false
40
40
  */
41
- readonly showItemTooltip: i0.InputSignal<boolean>;
41
+ readonly showItemTooltip: _angular_core.InputSignal<boolean>;
42
+ /** Height of each list item in pixels, or 'auto' to let list measure. */
43
+ itemHeight: _angular_core.InputSignal<number | "auto">;
44
+ /** Maximum number of visible items before scrolling. */
45
+ maxVisibleItems: _angular_core.InputSignal<number>;
42
46
  /** @ignore */
43
47
  private hotKeyService;
44
48
  /** @ignore */
@@ -108,14 +112,14 @@ declare class AXSelectBoxComponent extends AXSelectBoxComponent_base implements
108
112
  * The width of the dropdown in pixels.
109
113
  * @defaultValue null
110
114
  */
111
- dropdownWidth: i0.InputSignal<string>;
115
+ dropdownWidth: _angular_core.InputSignal<string>;
112
116
  /** @ignore */
113
117
  panel: ElementRef<HTMLDivElement>;
114
118
  /** @ignore */
115
119
  list: AXListComponent;
116
120
  /** @ignore */
117
121
  searchBox: AXSearchBoxComponent;
118
- searchBoxAutoFocus: i0.InputSignal<boolean>;
122
+ searchBoxAutoFocus: _angular_core.InputSignal<boolean>;
119
123
  /** @ignore */
120
124
  protected dropdown: AXDropdownBoxComponent;
121
125
  /**
@@ -172,14 +176,14 @@ declare class AXSelectBoxComponent extends AXSelectBoxComponent_base implements
172
176
  */
173
177
  refresh(): void;
174
178
  private hostClickListener;
175
- static ɵfac: i0.ɵɵFactoryDeclaration<AXSelectBoxComponent, never>;
176
- static ɵcmp: i0.ɵɵComponentDeclaration<AXSelectBoxComponent, "ax-select-box", never, { "disabled": { "alias": "disabled"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "minValue": { "alias": "minValue"; "required": false; }; "maxValue": { "alias": "maxValue"; "required": false; }; "value": { "alias": "value"; "required": false; }; "state": { "alias": "state"; "required": false; }; "name": { "alias": "name"; "required": false; }; "id": { "alias": "id"; "required": false; }; "type": { "alias": "type"; "required": false; }; "look": { "alias": "look"; "required": false; }; "multiple": { "alias": "multiple"; "required": false; }; "valueField": { "alias": "valueField"; "required": false; }; "textField": { "alias": "textField"; "required": false; }; "disabledField": { "alias": "disabledField"; "required": false; }; "textTemplate": { "alias": "textTemplate"; "required": false; }; "selectedItems": { "alias": "selectedItems"; "required": false; }; "isItemTruncated": { "alias": "isItemTruncated"; "required": false; "isSignal": true; }; "showItemTooltip": { "alias": "showItemTooltip"; "required": false; "isSignal": true; }; "dataSource": { "alias": "dataSource"; "required": false; }; "minRecordsForSearch": { "alias": "minRecordsForSearch"; "required": false; }; "caption": { "alias": "caption"; "required": false; }; "itemTemplate": { "alias": "itemTemplate"; "required": false; }; "selectedTemplate": { "alias": "selectedTemplate"; "required": false; }; "emptyTemplate": { "alias": "emptyTemplate"; "required": false; }; "loadingTemplate": { "alias": "loadingTemplate"; "required": false; }; "dropdownWidth": { "alias": "dropdownWidth"; "required": false; "isSignal": true; }; "searchBoxAutoFocus": { "alias": "searchBoxAutoFocus"; "required": false; "isSignal": true; }; }, { "valueChange": "valueChange"; "stateChange": "stateChange"; "onValueChanged": "onValueChanged"; "onBlur": "onBlur"; "onFocus": "onFocus"; "readonlyChange": "readonlyChange"; "disabledChange": "disabledChange"; "onOpened": "onOpened"; "onClosed": "onClosed"; "onItemSelected": "onItemSelected"; "onItemClick": "onItemClick"; }, ["searchBox"], ["ax-prefix", "ax-clear-button", "ax-suffix", "ax-search-box", "ax-footer", "ax-validation-rule"], true, never>;
179
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXSelectBoxComponent, never>;
180
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXSelectBoxComponent, "ax-select-box", never, { "disabled": { "alias": "disabled"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "minValue": { "alias": "minValue"; "required": false; }; "maxValue": { "alias": "maxValue"; "required": false; }; "value": { "alias": "value"; "required": false; }; "state": { "alias": "state"; "required": false; }; "name": { "alias": "name"; "required": false; }; "id": { "alias": "id"; "required": false; }; "type": { "alias": "type"; "required": false; }; "look": { "alias": "look"; "required": false; }; "multiple": { "alias": "multiple"; "required": false; }; "valueField": { "alias": "valueField"; "required": false; }; "textField": { "alias": "textField"; "required": false; }; "disabledField": { "alias": "disabledField"; "required": false; }; "textTemplate": { "alias": "textTemplate"; "required": false; }; "selectedItems": { "alias": "selectedItems"; "required": false; }; "isItemTruncated": { "alias": "isItemTruncated"; "required": false; "isSignal": true; }; "showItemTooltip": { "alias": "showItemTooltip"; "required": false; "isSignal": true; }; "itemHeight": { "alias": "itemHeight"; "required": false; "isSignal": true; }; "maxVisibleItems": { "alias": "maxVisibleItems"; "required": false; "isSignal": true; }; "dataSource": { "alias": "dataSource"; "required": false; }; "minRecordsForSearch": { "alias": "minRecordsForSearch"; "required": false; }; "caption": { "alias": "caption"; "required": false; }; "itemTemplate": { "alias": "itemTemplate"; "required": false; }; "selectedTemplate": { "alias": "selectedTemplate"; "required": false; }; "emptyTemplate": { "alias": "emptyTemplate"; "required": false; }; "loadingTemplate": { "alias": "loadingTemplate"; "required": false; }; "dropdownWidth": { "alias": "dropdownWidth"; "required": false; "isSignal": true; }; "searchBoxAutoFocus": { "alias": "searchBoxAutoFocus"; "required": false; "isSignal": true; }; }, { "valueChange": "valueChange"; "stateChange": "stateChange"; "onValueChanged": "onValueChanged"; "onBlur": "onBlur"; "onFocus": "onFocus"; "readonlyChange": "readonlyChange"; "disabledChange": "disabledChange"; "onOpened": "onOpened"; "onClosed": "onClosed"; "onItemSelected": "onItemSelected"; "onItemClick": "onItemClick"; }, ["searchBox"], ["ax-prefix", "ax-clear-button", "ax-suffix", "ax-search-box", "ax-footer", "ax-validation-rule"], true, never>;
177
181
  }
178
182
 
179
183
  declare class AXSelectBoxModule {
180
- static ɵfac: i0.ɵɵFactoryDeclaration<AXSelectBoxModule, never>;
181
- static ɵmod: i0.ɵɵNgModuleDeclaration<AXSelectBoxModule, never, [typeof i1.CommonModule, typeof i2.AXCommonModule, typeof i3.FormsModule, typeof i4.AXCheckBoxModule, typeof i5.AXBadgeModule, typeof i6.AXDecoratorModule, typeof i7.AXTranslationModule, typeof i8.AXPopoverModule, typeof i9.AXLoadingModule, typeof i10.A11yModule, typeof i11.AXTextBoxModule, typeof i12.AXDropdownModule, typeof i13.AXListModule, typeof AXSelectBoxComponent], [typeof AXSelectBoxComponent]>;
182
- static ɵinj: i0.ɵɵInjectorDeclaration<AXSelectBoxModule>;
184
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXSelectBoxModule, never>;
185
+ static ɵmod: _angular_core.ɵɵNgModuleDeclaration<AXSelectBoxModule, never, [typeof i1.CommonModule, typeof i2.AXCommonModule, typeof i3.FormsModule, typeof i4.AXCheckBoxModule, typeof i5.AXBadgeModule, typeof i6.AXDecoratorModule, typeof i7.AXTranslationModule, typeof i8.AXPopoverModule, typeof i9.AXLoadingModule, typeof i10.A11yModule, typeof i11.AXTextBoxModule, typeof i12.AXDropdownModule, typeof i13.AXListModule, typeof AXSelectBoxComponent], [typeof AXSelectBoxComponent]>;
186
+ static ɵinj: _angular_core.ɵɵInjectorDeclaration<AXSelectBoxModule>;
183
187
  }
184
188
 
185
189
  export { AXSelectBoxComponent, AXSelectBoxModule };