@acorex/cdk 20.1.13 → 20.1.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/accordion/index.d.ts +6 -6
- package/fesm2022/acorex-cdk-accordion.mjs +62 -64
- package/fesm2022/acorex-cdk-accordion.mjs.map +1 -1
- package/fesm2022/acorex-cdk-carousel.mjs +6 -6
- package/fesm2022/acorex-cdk-carousel.mjs.map +1 -1
- package/fesm2022/acorex-cdk-clipboard.mjs +7 -7
- package/fesm2022/acorex-cdk-clipboard.mjs.map +1 -1
- package/fesm2022/acorex-cdk-common.mjs +114 -114
- package/fesm2022/acorex-cdk-common.mjs.map +1 -1
- package/fesm2022/acorex-cdk-dom.mjs +3 -3
- package/fesm2022/acorex-cdk-dom.mjs.map +1 -1
- package/fesm2022/acorex-cdk-drag-drop.mjs +64 -64
- package/fesm2022/acorex-cdk-drag-drop.mjs.map +1 -1
- package/fesm2022/acorex-cdk-drawer.mjs +22 -22
- package/fesm2022/acorex-cdk-drawer.mjs.map +1 -1
- package/fesm2022/acorex-cdk-focus-trap.mjs +4 -4
- package/fesm2022/acorex-cdk-focus-trap.mjs.map +1 -1
- package/fesm2022/acorex-cdk-input-mask.mjs +10 -10
- package/fesm2022/acorex-cdk-input-mask.mjs.map +1 -1
- package/fesm2022/acorex-cdk-list-navigation.mjs +18 -18
- package/fesm2022/acorex-cdk-list-navigation.mjs.map +1 -1
- package/fesm2022/acorex-cdk-outline.mjs +22 -22
- package/fesm2022/acorex-cdk-outline.mjs.map +1 -1
- package/fesm2022/acorex-cdk-overlay.mjs +3 -3
- package/fesm2022/acorex-cdk-overlay.mjs.map +1 -1
- package/fesm2022/acorex-cdk-pan-view.mjs +19 -19
- package/fesm2022/acorex-cdk-pan-view.mjs.map +1 -1
- package/fesm2022/acorex-cdk-resizable.mjs +11 -11
- package/fesm2022/acorex-cdk-resizable.mjs.map +1 -1
- package/fesm2022/acorex-cdk-selection.mjs +19 -19
- package/fesm2022/acorex-cdk-selection.mjs.map +1 -1
- package/fesm2022/acorex-cdk-sliding-item.mjs +15 -15
- package/fesm2022/acorex-cdk-sliding-item.mjs.map +1 -1
- package/fesm2022/acorex-cdk-sticky.mjs +3 -3
- package/fesm2022/acorex-cdk-sticky.mjs.map +1 -1
- package/fesm2022/acorex-cdk-virtual-scroll.mjs +17 -17
- package/fesm2022/acorex-cdk-virtual-scroll.mjs.map +1 -1
- package/fesm2022/acorex-cdk-wysiwyg.mjs +1 -1
- package/fesm2022/acorex-cdk-wysiwyg.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acorex-cdk-common.mjs","sources":["../tmp-esm2022/common/lib/types/base/button.type.js","../tmp-esm2022/common/lib/types/base/color.type.js","../tmp-esm2022/common/lib/types/base/component.types.js","../tmp-esm2022/common/lib/types/base/events.types.js","../tmp-esm2022/common/lib/types/base/interactive.type.js","../tmp-esm2022/common/lib/types/base/look.type.js","../tmp-esm2022/common/lib/types/base/value.type.js","../tmp-esm2022/common/lib/types/placement.js","../tmp-esm2022/common/lib/types/selection-mode.js","../tmp-esm2022/common/lib/services/dom.service.js","../tmp-esm2022/common/lib/components/base-component.class.js","../tmp-esm2022/common/lib/components/interactive-component.class.js","../tmp-esm2022/common/lib/components/value-component.class.js","../tmp-esm2022/common/lib/classes/events.class.js","../tmp-esm2022/common/lib/classes/components.class.js","../tmp-esm2022/common/lib/classes/datalist.class.js","../tmp-esm2022/common/lib/classes/datasource.class.js","../tmp-esm2022/common/lib/classes/styles.class.js","../tmp-esm2022/common/lib/directives/auto-focus.directive.js","../tmp-esm2022/common/lib/services/hotkey.service.js","../tmp-esm2022/common/lib/directives/hotkey.directive.js","../tmp-esm2022/common/lib/directives/infinite-scroll.directive.js","../tmp-esm2022/common/lib/directives/responsive.directive.js","../tmp-esm2022/common/lib/common.module.js","../tmp-esm2022/common/lib/components/color-component.class.js","../tmp-esm2022/common/lib/components/look-component.class.js","../tmp-esm2022/common/lib/components/colorlook-component.class.js","../tmp-esm2022/common/lib/components/button-base-component.class.js","../tmp-esm2022/common/lib/components/input-base-value-component.class.js","../tmp-esm2022/common/lib/components/selection-base.component.class.js","../tmp-esm2022/common/lib/directives/delayed-value-changed.directive.js","../tmp-esm2022/common/lib/directives/inverted-color.directive.js","../tmp-esm2022/common/lib/directives/ripple.directive.js","../tmp-esm2022/common/acorex-cdk-common.js"],"sourcesContent":["import { Component, model, output } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class NXButtonComponent {\n constructor() {\n this.text = model();\n this.toggleableChange = output();\n this.selectedChange = output();\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: NXButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.1.0\", version: \"20.0.4\", type: NXButtonComponent, isStandalone: true, selector: \"ng-component\", inputs: { text: { classPropertyName: \"text\", publicName: \"text\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { text: \"textChange\", toggleableChange: \"toggleableChange\", selectedChange: \"selectedChange\" }, ngImport: i0, template: '', isInline: true }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: NXButtonComponent, decorators: [{\n type: Component,\n args: [{\n template: '',\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLnR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jZGsvY29tbW9uL3NyYy9saWIvdHlwZXMvYmFzZS9idXR0b24udHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBS3pELE1BQU0sT0FBZ0IsaUJBQWlCO0lBSHZDO1FBSUUsU0FBSSxHQUFHLEtBQUssRUFBVSxDQUFDO1FBRXZCLHFCQUFnQixHQUFHLE1BQU0sRUFBVyxDQUFDO1FBQ3JDLG1CQUFjLEdBQUcsTUFBTSxFQUFXLENBQUM7S0FDcEM7OEdBTHFCLGlCQUFpQjtrR0FBakIsaUJBQWlCLGtUQUYzQixFQUFFOzsyRkFFUSxpQkFBaUI7a0JBSHRDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLEVBQUU7aUJBQ2IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIG1vZGVsLCBvdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlOiAnJyxcbn0pXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgTlhCdXR0b25Db21wb25lbnQge1xuICB0ZXh0ID0gbW9kZWw8c3RyaW5nPigpO1xuXG4gIHRvZ2dsZWFibGVDaGFuZ2UgPSBvdXRwdXQ8Ym9vbGVhbj4oKTtcbiAgc2VsZWN0ZWRDaGFuZ2UgPSBvdXRwdXQ8Ym9vbGVhbj4oKTtcbn1cbiJdfQ==","import { Component, model } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class NXColorComponent {\n constructor() {\n this.color = model('default');\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: NXColorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.1.0\", version: \"20.0.4\", type: NXColorComponent, isStandalone: true, selector: \"ng-component\", inputs: { color: { classPropertyName: \"color\", publicName: \"color\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { color: \"colorChange\" }, ngImport: i0, template: '', isInline: true }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: NXColorComponent, decorators: [{\n type: Component,\n args: [{\n template: '',\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3IudHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2Nkay9jb21tb24vc3JjL2xpYi90eXBlcy9iYXNlL2NvbG9yLnR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTWpELE1BQU0sT0FBZ0IsZ0JBQWdCO0lBSHRDO1FBSUUsVUFBSyxHQUFHLEtBQUssQ0FBbUIsU0FBUyxDQUFDLENBQUM7S0FDNUM7OEdBRnFCLGdCQUFnQjtrR0FBaEIsZ0JBQWdCLCtPQUYxQixFQUFFOzsyRkFFUSxnQkFBZ0I7a0JBSHJDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLEVBQUU7aUJBQ2IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIG1vZGVsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWFN0eWxlQ29sb3JUeXBlIH0gZnJvbSAnLi4vLi4vY2xhc3Nlcy9zdHlsZXMuY2xhc3MnO1xuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGU6ICcnLFxufSlcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBOWENvbG9yQ29tcG9uZW50IHtcbiAgY29sb3IgPSBtb2RlbDxBWFN0eWxlQ29sb3JUeXBlPignZGVmYXVsdCcpO1xufVxuIl19","import { afterNextRender, ElementRef, inject, Injectable, signal } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class NXComponent {\n constructor() {\n this.#elementRef = inject(ElementRef);\n this.#isRendered = signal(false);\n this.isRendered = this.#isRendered.asReadonly();\n this.#afterNextRender = afterNextRender(() => {\n if (!this.isRendered()) {\n this.nativeElement['__axContext__'] = this;\n this.#isRendered.set(true);\n }\n });\n }\n #elementRef;\n #isRendered;\n #afterNextRender;\n get nativeElement() {\n return this.#elementRef.nativeElement;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: NXComponent, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: NXComponent }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: NXComponent, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LnR5cGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY2RrL2NvbW1vbi9zcmMvbGliL3R5cGVzL2Jhc2UvY29tcG9uZW50LnR5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUd4RixNQUFNLE9BQWdCLFdBQVc7SUFEakM7UUFFRSxnQkFBVyxHQUE0QixNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDMUQsZ0JBQVcsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFbEIsZUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVSxFQUFFLENBQUM7UUFFckQscUJBQWdCLEdBQUcsZUFBZSxDQUFDLEdBQUcsRUFBRTtZQUN0QyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUM7Z0JBQ3ZCLElBQUksQ0FBQyxhQUFhLENBQUMsZUFBZSxDQUFDLEdBQUcsSUFBSSxDQUFDO2dCQUMzQyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM3QixDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7S0FLSjtJQWZDLFdBQVcsQ0FBK0M7SUFDMUQsV0FBVyxDQUFpQjtJQUk1QixnQkFBZ0IsQ0FLYjtJQUVILElBQVcsYUFBYTtRQUN0QixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDO0lBQ3hDLENBQUM7OEdBZm1CLFdBQVc7a0hBQVgsV0FBVzs7MkZBQVgsV0FBVztrQkFEaEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFmdGVyTmV4dFJlbmRlciwgRWxlbWVudFJlZiwgaW5qZWN0LCBJbmplY3RhYmxlLCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIE5YQ29tcG9uZW50IHtcbiAgI2VsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+ID0gaW5qZWN0KEVsZW1lbnRSZWYpO1xuICAjaXNSZW5kZXJlZCA9IHNpZ25hbChmYWxzZSk7XG5cbiAgcHJvdGVjdGVkIGlzUmVuZGVyZWQgPSB0aGlzLiNpc1JlbmRlcmVkLmFzUmVhZG9ubHkoKTtcblxuICAjYWZ0ZXJOZXh0UmVuZGVyID0gYWZ0ZXJOZXh0UmVuZGVyKCgpID0+IHtcbiAgICBpZiAoIXRoaXMuaXNSZW5kZXJlZCgpKSB7XG4gICAgICB0aGlzLm5hdGl2ZUVsZW1lbnRbJ19fYXhDb250ZXh0X18nXSA9IHRoaXM7XG4gICAgICB0aGlzLiNpc1JlbmRlcmVkLnNldCh0cnVlKTtcbiAgICB9XG4gIH0pO1xuXG4gIHB1YmxpYyBnZXQgbmF0aXZlRWxlbWVudCgpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuI2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgfVxufVxuIl19","/**\n * Base event class\n * @category Events\n */\nexport class NXEvent {\n}\n/**\n * Contains native event\n * @category Events\n */\nexport class NXNativeEvent extends NXEvent {\n}\n/**\n * Fires each time the user click the element.\n * @category Events\n */\nexport class NXClickEvent extends NXNativeEvent {\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnRzLnR5cGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY2RrL2NvbW1vbi9zcmMvbGliL3R5cGVzL2Jhc2UvZXZlbnRzLnR5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBOzs7R0FHRztBQUNILE1BQU0sT0FBTyxPQUFPO0NBRW5CO0FBRUQ7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLGFBQTRFLFNBQVEsT0FBVTtDQUUxRztBQUVEOzs7R0FHRztBQUNILE1BQU0sT0FBTyxZQUFrRCxTQUFRLGFBQTRCO0NBQUciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOWENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50LnR5cGVzJztcblxuLyoqXG4gKiAgQmFzZSBldmVudCBjbGFzc1xuICogQGNhdGVnb3J5IEV2ZW50c1xuICovXG5leHBvcnQgY2xhc3MgTlhFdmVudDxUIGV4dGVuZHMgTlhDb21wb25lbnQgPSBOWENvbXBvbmVudD4ge1xuICBzZW5kZXI6IFQ7XG59XG5cbi8qKlxuICogIENvbnRhaW5zIG5hdGl2ZSBldmVudFxuICogQGNhdGVnb3J5IEV2ZW50c1xuICovXG5leHBvcnQgY2xhc3MgTlhOYXRpdmVFdmVudDxUIGV4dGVuZHMgTlhDb21wb25lbnQgPSBOWENvbXBvbmVudCwgRSBleHRlbmRzIEV2ZW50ID0gRXZlbnQ+IGV4dGVuZHMgTlhFdmVudDxUPiB7XG4gIG5hdGl2ZUV2ZW50OiBFO1xufVxuXG4vKipcbiAqICBGaXJlcyBlYWNoIHRpbWUgdGhlIHVzZXIgY2xpY2sgdGhlIGVsZW1lbnQuXG4gKiBAY2F0ZWdvcnkgRXZlbnRzXG4gKi9cbmV4cG9ydCBjbGFzcyBOWENsaWNrRXZlbnQ8VCBleHRlbmRzIE5YQ29tcG9uZW50ID0gTlhDb21wb25lbnQ+IGV4dGVuZHMgTlhOYXRpdmVFdmVudDxULCBNb3VzZUV2ZW50PiB7fVxuIl19","import { AXHtmlUtil } from '@acorex/core/utils';\nimport { Component, model, output } from '@angular/core';\nimport { NXComponent } from './component.types';\nimport * as i0 from \"@angular/core\";\nexport class NXInteractiveComponent extends NXComponent {\n constructor() {\n super(...arguments);\n this.disabled = model(false);\n this.tabIndex = model(0);\n this.onFocus = output();\n this.onBlur = output();\n }\n focus() {\n AXHtmlUtil.focusElement(this.nativeElement);\n }\n blur() {\n AXHtmlUtil.blurElement(this.nativeElement);\n }\n hasFocus() {\n return AXHtmlUtil.hasFocus(this.nativeElement);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: NXInteractiveComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.1.0\", version: \"20.0.4\", type: NXInteractiveComponent, isStandalone: true, selector: \"ng-component\", inputs: { disabled: { classPropertyName: \"disabled\", publicName: \"disabled\", isSignal: true, isRequired: false, transformFunction: null }, tabIndex: { classPropertyName: \"tabIndex\", publicName: \"tabIndex\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { disabled: \"disabledChange\", tabIndex: \"tabIndexChange\", onFocus: \"onFocus\", onBlur: \"onBlur\" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: NXInteractiveComponent, decorators: [{\n type: Component,\n args: [{\n template: '',\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJhY3RpdmUudHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2Nkay9jb21tb24vc3JjL2xpYi90eXBlcy9iYXNlL2ludGVyYWN0aXZlLnR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7O0FBS2hELE1BQU0sT0FBZ0Isc0JBQXVCLFNBQVEsV0FBVztJQUhoRTs7UUFJRSxhQUFRLEdBQUcsS0FBSyxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQ2pDLGFBQVEsR0FBRyxLQUFLLENBQVMsQ0FBQyxDQUFDLENBQUM7UUFFNUIsWUFBTyxHQUFHLE1BQU0sRUFBRSxDQUFDO1FBQ25CLFdBQU0sR0FBRyxNQUFNLEVBQUUsQ0FBQztLQWFuQjtJQVhDLEtBQUs7UUFDSCxVQUFVLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBRUQsSUFBSTtRQUNGLFVBQVUsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxVQUFVLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUNqRCxDQUFDOzhHQWpCbUIsc0JBQXNCO2tHQUF0QixzQkFBc0Isd2RBRmhDLEVBQUU7OzJGQUVRLHNCQUFzQjtrQkFIM0MsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsRUFBRTtpQkFDYiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYSHRtbFV0aWwgfSBmcm9tICdAYWNvcmV4L2NvcmUvdXRpbHMnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBtb2RlbCwgb3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOWENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50LnR5cGVzJztcblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlOiAnJyxcbn0pXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgTlhJbnRlcmFjdGl2ZUNvbXBvbmVudCBleHRlbmRzIE5YQ29tcG9uZW50IHtcbiAgZGlzYWJsZWQgPSBtb2RlbDxib29sZWFuPihmYWxzZSk7XG4gIHRhYkluZGV4ID0gbW9kZWw8bnVtYmVyPigwKTtcblxuICBvbkZvY3VzID0gb3V0cHV0KCk7XG4gIG9uQmx1ciA9IG91dHB1dCgpO1xuXG4gIGZvY3VzKCkge1xuICAgIEFYSHRtbFV0aWwuZm9jdXNFbGVtZW50KHRoaXMubmF0aXZlRWxlbWVudCk7XG4gIH1cblxuICBibHVyKCkge1xuICAgIEFYSHRtbFV0aWwuYmx1ckVsZW1lbnQodGhpcy5uYXRpdmVFbGVtZW50KTtcbiAgfVxuXG4gIGhhc0ZvY3VzKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBBWEh0bWxVdGlsLmhhc0ZvY3VzKHRoaXMubmF0aXZlRWxlbWVudCk7XG4gIH1cbn1cbiJdfQ==","import { Component, model } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class NXLookComponent {\n constructor() {\n this.look = model('solid');\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: NXLookComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.1.0\", version: \"20.0.4\", type: NXLookComponent, isStandalone: true, selector: \"ng-component\", inputs: { look: { classPropertyName: \"look\", publicName: \"look\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { look: \"lookChange\" }, ngImport: i0, template: '', isInline: true }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: NXLookComponent, decorators: [{\n type: Component,\n args: [{\n template: '',\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9vay50eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY2RrL2NvbW1vbi9zcmMvbGliL3R5cGVzL2Jhc2UvbG9vay50eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQU1qRCxNQUFNLE9BQWdCLGVBQWU7SUFIckM7UUFJRSxTQUFJLEdBQUcsS0FBSyxDQUFrQixPQUFPLENBQUMsQ0FBQztLQUN4Qzs4R0FGcUIsZUFBZTtrR0FBZixlQUFlLDBPQUZ6QixFQUFFOzsyRkFFUSxlQUFlO2tCQUhwQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxFQUFFO2lCQUNiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBtb2RlbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhTdHlsZUxvb2tUeXBlIH0gZnJvbSAnLi4vLi4vY2xhc3Nlcy9zdHlsZXMuY2xhc3MnO1xuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGU6ICcnLFxufSlcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBOWExvb2tDb21wb25lbnQge1xuICBsb29rID0gbW9kZWw8QVhTdHlsZUxvb2tUeXBlPignc29saWQnKTtcbn1cbiJdfQ==","import { Component, model, output } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class NXValueComponent {\n constructor() {\n this.readonly = model();\n this.name = model();\n this.value = model();\n this.onValueChanged = output();\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: NXValueComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.1.0\", version: \"20.0.4\", type: NXValueComponent, isStandalone: true, selector: \"ng-component\", inputs: { readonly: { classPropertyName: \"readonly\", publicName: \"readonly\", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: \"name\", publicName: \"name\", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: \"value\", publicName: \"value\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { readonly: \"readonlyChange\", name: \"nameChange\", value: \"valueChange\", onValueChanged: \"onValueChanged\" }, ngImport: i0, template: '', isInline: true }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: NXValueComponent, decorators: [{\n type: Component,\n args: [{\n template: '',\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsdWUudHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2Nkay9jb21tb24vc3JjL2xpYi90eXBlcy9iYXNlL3ZhbHVlLnR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUt6RCxNQUFNLE9BQWdCLGdCQUFnQjtJQUh0QztRQUlFLGFBQVEsR0FBRyxLQUFLLEVBQVcsQ0FBQztRQUM1QixTQUFJLEdBQUcsS0FBSyxFQUFVLENBQUM7UUFDdkIsVUFBSyxHQUFHLEtBQUssRUFBRSxDQUFDO1FBRWhCLG1CQUFjLEdBQUcsTUFBTSxFQUFFLENBQUM7S0FDM0I7OEdBTnFCLGdCQUFnQjtrR0FBaEIsZ0JBQWdCLHVqQkFGMUIsRUFBRTs7MkZBRVEsZ0JBQWdCO2tCQUhyQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxFQUFFO2lCQUNiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBtb2RlbCwgb3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZTogJycsXG59KVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIE5YVmFsdWVDb21wb25lbnQge1xuICByZWFkb25seSA9IG1vZGVsPGJvb2xlYW4+KCk7XG4gIG5hbWUgPSBtb2RlbDxzdHJpbmc+KCk7XG4gIHZhbHVlID0gbW9kZWwoKTtcblxuICBvblZhbHVlQ2hhbmdlZCA9IG91dHB1dCgpO1xufVxuIl19","import { clone, flatten } from 'lodash-es';\nconst defaultOffset = 3;\nexport function convertToPlacement(value) {\n const result = [];\n if (value == null)\n return result;\n if (Array.isArray(value)) {\n const list = flatten(value.map((m) => convertToPlacement(m)).filter((m) => m != null)).map((m) => clone(m));\n result.push(...list);\n }\n else {\n if (typeof value === 'string') {\n const p = AX_PLACEMENT_MAP[value];\n if (p) {\n result.push(...[clone(p.origin), ...clone(p.alts)]);\n }\n }\n else {\n if ('originX' in value && 'originY' in value) {\n result.push(clone(value));\n }\n }\n }\n return result;\n}\nexport const AX_PLACEMENT_TOP = {\n originX: 'center',\n originY: 'top',\n overlayX: 'center',\n overlayY: 'bottom',\n offsetY: -defaultOffset,\n};\nexport const AX_PLACEMENT_TOP_START = {\n originX: 'start',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'bottom',\n offsetY: -defaultOffset,\n};\nexport const AX_PLACEMENT_TOP_END = {\n originX: 'end',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'bottom',\n offsetY: -defaultOffset,\n};\nexport const AX_PLACEMENT_BOTTOM = {\n originX: 'center',\n originY: 'bottom',\n overlayX: 'center',\n overlayY: 'top',\n offsetY: defaultOffset,\n};\nexport const AX_PLACEMENT_BOTTOM_START = {\n originX: 'start',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'top',\n offsetY: defaultOffset,\n};\nexport const AX_PLACEMENT_BOTTOM_END = {\n originX: 'end',\n originY: 'bottom',\n overlayX: 'end',\n overlayY: 'top',\n offsetY: defaultOffset,\n};\nexport const AX_PLACEMENT_START = {\n originX: 'start',\n originY: 'center',\n overlayX: 'end',\n overlayY: 'center',\n offsetX: -defaultOffset,\n};\nexport const AX_PLACEMENT_START_TOP = {\n originX: 'start',\n originY: 'top',\n overlayX: 'end',\n overlayY: 'top',\n offsetX: -defaultOffset,\n};\nexport const AX_PLACEMENT_START_BOTTOM = {\n originX: 'start',\n originY: 'bottom',\n overlayX: 'end',\n overlayY: 'bottom',\n offsetX: -defaultOffset,\n};\nexport const AX_PLACEMENT_END = {\n originX: 'end',\n originY: 'center',\n overlayX: 'start',\n overlayY: 'center',\n offsetX: defaultOffset,\n};\nexport const AX_PLACEMENT_END_TOP = {\n originX: 'end',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'top',\n offsetX: defaultOffset,\n};\nexport const AX_PLACEMENT_END_BOTTOM = {\n originX: 'end',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'bottom',\n offsetX: defaultOffset,\n};\nexport const AX_PLACEMENT_MAP = {\n top: {\n origin: AX_PLACEMENT_TOP,\n alts: [AX_PLACEMENT_BOTTOM],\n },\n 'top-start': {\n origin: AX_PLACEMENT_TOP_START,\n alts: [AX_PLACEMENT_BOTTOM_START],\n },\n 'top-end': {\n origin: AX_PLACEMENT_TOP_END,\n alts: [AX_PLACEMENT_BOTTOM_END],\n },\n bottom: {\n origin: AX_PLACEMENT_BOTTOM,\n alts: [AX_PLACEMENT_BOTTOM],\n },\n 'bottom-start': {\n origin: AX_PLACEMENT_BOTTOM_START,\n alts: [AX_PLACEMENT_BOTTOM_END, AX_PLACEMENT_TOP_START, AX_PLACEMENT_TOP_END, AX_PLACEMENT_START, AX_PLACEMENT_END],\n },\n 'bottom-end': {\n origin: AX_PLACEMENT_BOTTOM_END,\n alts: [AX_PLACEMENT_TOP_END],\n },\n end: {\n origin: AX_PLACEMENT_END,\n alts: [AX_PLACEMENT_START],\n },\n 'end-top': {\n origin: AX_PLACEMENT_END_TOP,\n alts: [AX_PLACEMENT_END_BOTTOM, AX_PLACEMENT_START_TOP, AX_PLACEMENT_START_BOTTOM],\n },\n 'end-bottom': {\n origin: AX_PLACEMENT_END_BOTTOM,\n alts: [AX_PLACEMENT_END_TOP, AX_PLACEMENT_START_BOTTOM, AX_PLACEMENT_START_TOP],\n },\n start: {\n origin: AX_PLACEMENT_START,\n alts: [AX_PLACEMENT_END],\n },\n 'start-top': {\n origin: AX_PLACEMENT_START_TOP,\n alts: [AX_PLACEMENT_START_BOTTOM, AX_PLACEMENT_END_TOP, AX_PLACEMENT_END_BOTTOM],\n },\n 'start-bottom': {\n origin: AX_PLACEMENT_START_BOTTOM,\n alts: [AX_PLACEMENT_START_TOP, AX_PLACEMENT_END_BOTTOM, AX_PLACEMENT_END_TOP],\n },\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhY2VtZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY2RrL2NvbW1vbi9zcmMvbGliL3R5cGVzL3BsYWNlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUUzQyxNQUFNLGFBQWEsR0FBRyxDQUFDLENBQUM7QUFpQnhCLE1BQU0sVUFBVSxrQkFBa0IsQ0FBQyxLQUFzQjtJQUN2RCxNQUFNLE1BQU0sR0FBMEIsRUFBRSxDQUFDO0lBQ3pDLElBQUksS0FBSyxJQUFJLElBQUk7UUFBRSxPQUFPLE1BQU0sQ0FBQztJQUNqQyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUN6QixNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDNUcsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7U0FBTSxDQUFDO1FBQ04sSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUM5QixNQUFNLENBQUMsR0FBRyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNsQyxJQUFJLENBQUMsRUFBRSxDQUFDO2dCQUNOLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEVBQUUsR0FBRyxLQUFL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LElBQUksRUFBRSxDQUFDLHVCQUF1QixFQUFFLHNCQUFzQixFQUFFLHlCQUF5QixDQUFDO0tBQ25GO0lBQ0QsWUFBWSxFQUFFO1FBQ1osTUFBTSxFQUFFLHVCQUF1QjtRQUMvQixJQUFJLEVBQUUsQ0FBQyxvQkFBb0IsRUFBRSx5QkFBeUIsRUFBRSxzQkFBc0IsQ0FBQztLQUNoRjtJQUNELEtBQUssRUFBRTtRQUNMLE1BQU0sRUFBRSxrQkFBa0I7UUFDMUIsSUFBSSxFQUFFLENBQUMsZ0JBQWdCLENBQUM7S0FDekI7SUFDRCxXQUFXLEVBQUU7UUFDWCxNQUFNLEVBQUUsc0JBQXNCO1FBQzlCLElBQUksRUFBRSxDQUFDLHlCQUF5QixFQUFFLG9CQUFvQixFQUFFLHVCQUF1QixDQUFDO0tBQ2pGO0lBQ0QsY0FBYyxFQUFFO1FBQ2QsTUFBTSxFQUFFLHlCQUF5QjtRQUNqQyxJQUFJLEVBQUUsQ0FBQyxzQkFBc0IsRUFBRSx1QkFBdUIsRUFBRSxvQkFBb0IsQ0FBQztLQUM5RTtDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjbG9uZSwgZmxhdHRlbiB9IGZyb20gJ2xvZGFzaC1lcyc7XG5cbmNvbnN0IGRlZmF1bHRPZmZzZXQgPSAzO1xuXG5leHBvcnQgdHlwZSBBWFBsYWNlbWVudCA9XG4gIHwgJ3RvcCdcbiAgfCAndG9wLXN0YXJ0J1xuICB8ICd0b3AtZW5kJ1xuICB8ICdib3R0b20nXG4gIHwgJ2JvdHRvbS1zdGFydCdcbiAgfCAnYm90dG9tLWVuZCdcbiAgfCAnZW5kJ1xuICB8ICdlbmQtdG9wJ1xuICB8ICdlbmQtYm90dG9tJ1xuICB8ICdzdGFydCdcbiAgfCAnc3RhcnQtdG9wJ1xuICB8ICdzdGFydC1ib3R0b20nO1xuZXhwb3J0IHR5cGUgQVhQbGFjZW1lbnRUeXBlID0gQVhDb25uZWN0ZWRQb3NpdGlvbiB8IEFYQ29ubmVjdGVkUG9zaXRpb25bXSB8IEFYUGxhY2VtZW50IHwgQVhQbGFjZW1lbnRbXTtcblxuZXhwb3J0IGZ1bmN0aW9uIGNvbnZlcnRUb1BsYWNlbWVudCh2YWx1ZTogQVhQbGFjZW1lbnRUeXBlKTogQVhDb25uZWN0ZWRQb3NpdGlvbltdIHtcbiAgY29uc3QgcmVzdWx0OiBBWENvbm5lY3RlZFBvc2l0aW9uW10gPSBbXTtcbiAgaWYgKHZhbHVlID09IG51bGwpIHJldHVybiByZXN1bHQ7XG4gIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgIGNvbnN0IGxpc3QgPSBmbGF0dGVuKHZhbHVlLm1hcCgobSkgPT4gY29udmVydFRvUGxhY2VtZW50KG0pKS5maWx0ZXIoKG0pID0+IG0gIT0gbnVsbCkpLm1hcCgobSkgPT4gY2xvbmUobSkpO1xuICAgIHJlc3VsdC5wdXNoKC4uLmxpc3QpO1xuICB9IGVsc2Uge1xuICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnKSB7XG4gICAgICBjb25zdCBwID0gQVhfUExBQ0VNRU5UX01BUFt2YWx1ZV07XG4gICAgICBpZiAocCkge1xuICAgICAgICByZXN1bHQucHVzaCguLi5bY2xvbmUocC5vcmlnaW4pLCAuLi5jbG9uZShwLmFsdHMpXSk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICgnb3JpZ2luWCcgaW4gdmFsdWUgJiYgJ29yaWdpblknIGluIHZhbHVlKSB7XG4gICAgICAgIHJlc3VsdC5wdXNoKGNsb25lKHZhbHVlKSk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIHJldHVybiByZXN1bHQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQVhDb25uZWN0ZWRQb3NpdGlvbiB7XG4gIG9yaWdpblg6ICdzdGFydCcgfCAnY2VudGVyJyB8ICdlbmQnO1xuICBvcmlnaW5ZOiAndG9wJyB8ICdjZW50ZXInIHwgJ2JvdHRvbSc7XG4gIG92ZXJsYXlYOiAnc3RhcnQnIHwgJ2NlbnRlcicgfCAnZW5kJztcbiAgb3ZlcmxheVk6ICd0b3AnIHwgJ2NlbnRlcicgfCAnYm90dG9tJztcbiAgd2VpZ2h0PzogbnVtYmVyO1xuICBvZmZzZXRYPzogbnVtYmVyO1xuICBvZmZzZXRZPzogbnVtYmVyO1xufVxuXG5leHBvcnQgY29uc3QgQVhfUExBQ0VNRU5UX1RPUDogQVhDb25uZWN0ZWRQb3NpdGlvbiA9IHtcbiAgb3JpZ2luWDogJ2NlbnRlcicsXG4gIG9yaWdpblk6ICd0b3AnLFxuICBvdmVybGF5WDogJ2NlbnRlcicsXG4gIG92ZXJsYXlZOiAnYm90dG9tJyxcbiAgb2Zmc2V0WTogLWRlZmF1bHRPZmZzZXQsXG59O1xuXG5leHBvcnQgY29uc3QgQVhfUExBQ0VNRU5UX1RPUF9TVEFSVDogQVhDb25uZWN0ZWRQb3NpdGlvbiA9IHtcbiAgb3JpZ2luWDogJ3N0YXJ0JyxcbiAgb3JpZ2luWTogJ3RvcCcsXG4gIG92ZXJsYXlYOiAnc3RhcnQnLFxuICBvdmVybGF5WTogJ2JvdHRvbScsXG4gIG9mZnNldFk6IC1kZWZhdWx0T2Zmc2V0LFxufTtcbmV4cG9ydCBjb25zdCBBWF9QTEFDRU1FTlRfVE9QX0VORDogQVhDb25uZWN0ZWRQb3NpdGlvbiA9IHtcbiAgb3JpZ2luWDogJ2VuZCcsXG4gIG9yaWdpblk6ICd0b3AnLFxuICBvdmVybGF5WDogJ3N0YXJ0JyxcbiAgb3ZlcmxheVk6ICdib3R0b20nLFxuICBvZmZzZXRZOiAtZGVmYXVsdE9mZnNldCxcbn07XG5cbmV4cG9ydCBjb25zdCBBWF9QTEFDRU1FTlRfQk9UVE9NOiBBWENvbm5lY3RlZFBvc2l0aW9uID0ge1xuICBvcmlnaW5YOiAnY2VudGVyJyxcbiAgb3JpZ2luWTogJ2JvdHRvbScsXG4gIG92ZXJsYXlYOiAnY2VudGVyJyxcbiAgb3ZlcmxheVk6ICd0b3AnLFxuICBvZmZzZXRZOiBkZWZhdWx0T2Zmc2V0LFxufTtcblxuZXhwb3J0IGNvbnN0IEFYX1BMQUNFTUVOVF9CT1RUT01fU1RBUlQ6IEFYQ29ubmVjdGVkUG9zaXRpb24gPSB7XG4gIG9yaWdpblg6ICdzdGFydCcsXG4gIG9yaWdpblk6ICdib3R0b20nLFxuICBvdmVybGF5WDogJ3N0YXJ0JyxcbiAgb3ZlcmxheVk6ICd0b3AnLFxuICBvZmZzZXRZOiBkZWZhdWx0T2Zmc2V0LFxufTtcblxuZXhwb3J0IGNvbnN0IEFYX1BMQUNFTUVOVF9CT1RUT01fRU5EOiBBWENvbm5lY3RlZFBvc2l0aW9uID0ge1xuICBvcmlnaW5YOiAnZW5kJyxcbiAgb3JpZ2luWTogJ2JvdHRvbScsXG4gIG92ZXJsYXlYOiAnZW5kJyxcbiAgb3ZlcmxheVk6ICd0b3AnLFxuICBvZmZzZXRZOiBkZWZhdWx0T2Zmc2V0LFxufTtcblxuZXhwb3J0IGNvbnN0IEFYX1BMQUNFTUVOVF9TVEFSVDogQVhDb25uZWN0ZWRQb3NpdGlvbiA9IHtcbiAgb3JpZ2luWDogJ3N0YXJ0JyxcbiAgb3JpZ2luWTogJ2NlbnRlcicsXG4gIG92ZXJsYXlYOiAnZW5kJyxcbiAgb3ZlcmxheVk6ICdjZW50ZXInLFxuICBvZmZzZXRYOiAtZGVmYXVsdE9mZnNldCxcbn07XG5cbmV4cG9ydCBjb25zdCBBWF9QTEFDRU1FTlRfU1RBUlRfVE9QOiBBWENvbm5lY3RlZFBvc2l0aW9uID0ge1xuICBvcmlnaW5YOiAnc3RhcnQnLFxuICBvcmlnaW5ZOiAndG9wJyxcbiAgb3ZlcmxheVg6ICdlbmQnLFxuICBvdmVybGF5WTogJ3RvcCcsXG4gIG9mZnNldFg6IC1kZWZhdWx0T2Zmc2V0LFxufTtcblxuZXhwb3J0IGNvbnN0IEFYX1BMQUNFTUVOVF9TVEFSVF9CT1RUT006IEFYQ29ubmVjdGVkUG9zaXRpb24gPSB7XG4gIG9yaWdpblg6ICdzdGFydCcsXG4gIG9yaWdpblk6ICdib3R0b20nLFxuICBvdmVybGF5WDogJ2VuZCcsXG4gIG92ZXJsYXlZOiAnYm90dG9tJyxcbiAgb2Zmc2V0WDogLWRlZmF1bHRPZmZzZXQsXG59O1xuXG5leHBvcnQgY29uc3QgQVhfUExBQ0VNRU5UX0VORDogQVhDb25uZWN0ZWRQb3NpdGlvbiA9IHtcbiAgb3JpZ2luWDogJ2VuZCcsXG4gIG9yaWdpblk6ICdjZW50ZXInLFxuICBvdmVybGF5WDogJ3N0YXJ0JyxcbiAgb3ZlcmxheVk6ICdjZW50ZXInLFxuICBvZmZzZXRYOiBkZWZhdWx0T2Zmc2V0LFxufTtcblxuZXhwb3J0IGNvbnN0IEFYX1BMQUNFTUVOVF9FTkRfVE9QOiBBWENvbm5lY3RlZFBvc2l0aW9uID0ge1xuICBvcmlnaW5YOiAnZW5kJyxcbiAgb3JpZ2luWTogJ3RvcCcsXG4gIG92ZXJsYXlYOiAnc3RhcnQnLFxuICBvdmVybGF5WTogJ3RvcCcsXG4gIG9mZnNldFg6IGRlZmF1bHRPZmZzZXQsXG59O1xuXG5leHBvcnQgY29uc3QgQVhfUExBQ0VNRU5UX0VORF9CT1RUT006IEFYQ29ubmVjdGVkUG9zaXRpb24gPSB7XG4gIG9yaWdpblg6ICdlbmQnLFxuICBvcmlnaW5ZOiAnYm90dG9tJyxcbiAgb3ZlcmxheVg6ICdzdGFydCcsXG4gIG92ZXJsYXlZOiAnYm90dG9tJyxcbiAgb2Zmc2V0WDogZGVmYXVsdE9mZnNldCxcbn07XG5cbmV4cG9ydCBjb25zdCBBWF9QTEFDRU1FTlRfTUFQOiB7XG4gIFtrZXk6IHN0cmluZ106IHsgb3JpZ2luOiBBWENvbm5lY3RlZFBvc2l0aW9uOyBhbHRzPzogQVhDb25uZWN0ZWRQb3NpdGlvbltdIH07XG59ID0ge1xuICB0b3A6IHtcbiAgICBvcmlnaW46IEFYX1BMQUNFTUVOVF9UT1AsXG4gICAgYWx0czogW0FYX1BMQUNFTUVOVF9CT1RUT01dLFxuICB9LFxuICAndG9wLXN0YXJ0Jzoge1xuICAgIG9yaWdpbjogQVhfUExBQ0VNRU5UX1RPUF9TVEFSVCxcbiAgICBhbHRzOiBbQVhfUExBQ0VNRU5UX0JPVFRPTV9TVEFSVF0sXG4gIH0sXG4gICd0b3AtZW5kJzoge1xuICAgIG9yaWdpbjogQVhfUExBQ0VNRU5UX1RPUF9FTkQsXG4gICAgYWx0czogW0FYX1BMQUNFTUVOVF9CT1RUT01fRU5EXSxcbiAgfSxcbiAgYm90dG9tOiB7XG4gICAgb3JpZ2luOiBBWF9QTEFDRU1FTlRfQk9UVE9NLFxuICAgIGFsdHM6IFtBWF9QTEFDRU1FTlRfQk9UVE9NXSxcbiAgfSxcbiAgJ2JvdHRvbS1zdGFydCc6IHtcbiAgICBvcmlnaW46IEFYX1BMQUNFTUVOVF9CT1RUT01fU1RBUlQsXG4gICAgYWx0czogW0FYX1BMQUNFTUVOVF9CT1RUT01fRU5ELCBBWF9QTEFDRU1FTlRfVE9QX1NUQVJULCBBWF9QTEFDRU1FTlRfVE9QX0VORCwgQVhfUExBQ0VNRU5UX1NUQVJULCBBWF9QTEFDRU1FTlRfRU5EXSxcbiAgfSxcbiAgJ2JvdHRvbS1lbmQnOiB7XG4gICAgb3JpZ2luOiBBWF9QTEFDRU1FTlRfQk9UVE9NX0VORCxcbiAgICBhbHRzOiBbQVhfUExBQ0VNRU5UX1RPUF9FTkRdLFxuICB9LFxuICBlbmQ6IHtcbiAgICBvcmlnaW46IEFYX1BMQUNFTUVOVF9FTkQsXG4gICAgYWx0czogW0FYX1BMQUNFTUVOVF9TVEFSVF0sXG4gIH0sXG4gICdlbmQtdG9wJzoge1xuICAgIG9yaWdpbjogQVhfUExBQ0VNRU5UX0VORF9UT1AsXG4gICAgYWx0czogW0FYX1BMQUNFTUVOVF9FTkRfQk9UVE9NLCBBWF9QTEFDRU1FTlRfU1RBUlRfVE9QLCBBWF9QTEFDRU1FTlRfU1RBUlRfQk9UVE9NXSxcbiAgfSxcbiAgJ2VuZC1ib3R0b20nOiB7XG4gICAgb3JpZ2luOiBBWF9QTEFDRU1FTlRfRU5EX0JPVFRPTSxcbiAgICBhbHRzOiBbQVhfUExBQ0VNRU5UX0VORF9UT1AsIEFYX1BMQUNFTUVOVF9TVEFSVF9CT1RUT00sIEFYX1BMQUNFTUVOVF9TVEFSVF9UT1BdLFxuICB9LFxuICBzdGFydDoge1xuICAgIG9yaWdpbjogQVhfUExBQ0VNRU5UX1NUQVJULFxuICAgIGFsdHM6IFtBWF9QTEFDRU1FTlRfRU5EXSxcbiAgfSxcbiAgJ3N0YXJ0LXRvcCc6IHtcbiAgICBvcmlnaW46IEFYX1BMQUNFTUVOVF9TVEFSVF9UT1AsXG4gICAgYWx0czogW0FYX1BMQUNFTUVOVF9TVEFSVF9CT1RUT00sIEFYX1BMQUNFTUVOVF9FTkRfVE9QLCBBWF9QTEFDRU1FTlRfRU5EX0JPVFRPTV0sXG4gIH0sXG4gICdzdGFydC1ib3R0b20nOiB7XG4gICAgb3JpZ2luOiBBWF9QTEFDRU1FTlRfU1RBUlRfQk9UVE9NLFxuICAgIGFsdHM6IFtBWF9QTEFDRU1FTlRfU1RBUlRfVE9QLCBBWF9QTEFDRU1FTlRfRU5EX0JPVFRPTSwgQVhfUExBQ0VNRU5UX0VORF9UT1BdLFxuICB9LFxufTtcbiJdfQ==","/**\n * A token that specifies the selection mode of component.\n */\nexport {};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW9uLW1vZGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jZGsvY29tbW9uL3NyYy9saWIvdHlwZXMvc2VsZWN0aW9uLW1vZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUciLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEEgdG9rZW4gdGhhdCBzcGVjaWZpZXMgdGhlICBzZWxlY3Rpb24gbW9kZSBvZiBjb21wb25lbnQuXG4gKi9cblxuZXhwb3J0IHR5cGUgQVhTZWxlY3Rpb25Nb2RlID0gJ3NpbmdsZScgfCAnbXVsdGlwbGUnIHwgJ25vbmUnO1xuIl19","import { Injectable } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class AXDomService {\n generateElementId() {\n const dateString = Date.now().toString(36);\n const randomness = Math.random().toString(36).substr(2);\n return dateString + randomness;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXDomService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXDomService, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXDomService, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9tLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jZGsvY29tbW9uL3NyYy9saWIvc2VydmljZXMvZG9tLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFHM0MsTUFBTSxPQUFPLFlBQVk7SUFDdkIsaUJBQWlCO1FBQ2YsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUMzQyxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN4RCxPQUFPLFVBQVUsR0FBRyxVQUFVLENBQUM7SUFDakMsQ0FBQzs4R0FMVSxZQUFZO2tIQUFaLFlBQVksY0FEQyxNQUFNOzsyRkFDbkIsWUFBWTtrQkFEeEIsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgQVhEb21TZXJ2aWNlIHtcbiAgZ2VuZXJhdGVFbGVtZW50SWQoKTogc3RyaW5nIHtcbiAgICBjb25zdCBkYXRlU3RyaW5nID0gRGF0ZS5ub3coKS50b1N0cmluZygzNik7XG4gICAgY29uc3QgcmFuZG9tbmVzcyA9IE1hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLnN1YnN0cigyKTtcbiAgICByZXR1cm4gZGF0ZVN0cmluZyArIHJhbmRvbW5lc3M7XG4gIH1cbn1cbiJdfQ==","import { ChangeDetectorRef, ElementRef, EventEmitter, Injectable, ViewContainerRef, inject } from '@angular/core';\nimport { AXDomService } from '../services/dom.service';\nimport * as i0 from \"@angular/core\";\nexport class MXBaseComponent {\n constructor() {\n this._cdr = inject(ChangeDetectorRef);\n this._elementRef = inject(ElementRef);\n this._viewRef = inject(ViewContainerRef);\n this._domService = inject(AXDomService);\n this._id = this._domService.generateElementId();\n /**\n * Fired when an option related to the component changes.\n *\n * @event\n */\n this.onOptionChanged = new EventEmitter();\n }\n get id() {\n return this._id;\n }\n set id(v) {\n this._id = v;\n }\n get cdr() {\n return this._cdr;\n }\n getHostElement() {\n return this._elementRef?.nativeElement;\n }\n getViewContainer() {\n return this._viewRef;\n }\n internalOptionChanging(option) {\n return option?.value;\n }\n internalOptionChanged(option) { }\n /**\n * @ignore\n */\n ngOnInit() {\n this.getHostElement().__axContext__ = this;\n }\n setOption(option) {\n const oldValue = this[option.name];\n let newValue = this.internalOptionChanging({\n name: option.name,\n value: option.value,\n });\n if (option.beforeCallback) {\n newValue = option.beforeCallback(oldValue, newValue);\n }\n //TODO : check real changes if value is object\n if (oldValue != newValue) {\n this[`_${option.name}`] = option.value;\n this.onOptionChanged.emit({\n component: this,\n name: option.name,\n newValue,\n oldValue,\n });\n const emitter = this[`${option.name}Change`];\n emitter?.emit(newValue);\n this.internalOptionChanged({ name: option.name, value: newValue });\n }\n if (option.afterCallback)\n option.afterCallback(oldValue, newValue);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: MXBaseComponent, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: MXBaseComponent }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: MXBaseComponent, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1jb21wb25lbnQuY2xhc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jZGsvY29tbW9uL3NyYy9saWIvY29tcG9uZW50cy9iYXNlLWNvbXBvbmVudC5jbGFzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWxILE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7QUFldkQsTUFBTSxPQUFnQixlQUFlO0lBRHJDO1FBRVUsU0FBSSxHQUFzQixNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUNwRCxnQkFBVyxHQUFlLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUM3QyxhQUFRLEdBQXFCLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3RELGdCQUFXLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBRW5DLFFBQUcsR0FBVyxJQUFJLENBQUMsV0FBVyxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFnQzNEOzs7O1dBSUc7UUFDSSxvQkFBZSxHQUF1QyxJQUFJLFlBQVksRUFBd0IsQ0FBQztLQTBCdkc7SUE5REMsSUFBVyxFQUFFO1FBQ1gsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDO0lBQ2xCLENBQUM7SUFDRCxJQUFXLEVBQUUsQ0FBQyxDQUFTO1FBQ3JCLElBQUksQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDO0lBQ2YsQ0FBQztJQUVELElBQWMsR0FBRztRQUNmLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztJQUNuQixDQUFDO0lBRU0sY0FBYztRQUNuQixPQUFPLElBQUksQ0FBQyxXQUFXLEVBQUUsYUFBa0IsQ0FBQztJQUM5QyxDQUFDO0lBRVMsZ0JBQWdCO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBRVMsc0JBQXNCLENBQUMsTUFBaUM7UUFDaEUsT0FBTyxNQUFNLEVBQUUsS0FBSyxDQUFDO0lBQ3ZCLENBQUM7SUFFUyxxQkFBcUIsQ0FBQyxNQUFnQyxJQUFTLENBQUM7SUFDMUU7O09BRUc7SUFDTyxRQUFRO1FBQ2YsSUFBSSxDQUFDLGNBQWMsRUFBVSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7SUFDdEQsQ0FBQztJQVNNLFNBQVMsQ0FBVSxNQUErQjtRQUN2RCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ25DLElBQUksUUFBUSxHQUFHLElBQUksQ0FBQyxzQkFBc0IsQ0FBQztZQUN6QyxJQUFJLEVBQUUsTUFBTSxDQUFDLElBQUk7WUFDakIsS0FBSyxFQUFFLE1BQU0sQ0FBQyxLQUFLO1NBQ3BCLENBQUMsQ0FBQztRQUNILElBQUksTUFBTSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQzFCLFFBQVEsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUN2RCxDQUFDO1FBQ0QsOENBQThDO1FBQzlDLElBQUksUUFBUSxJQUFJLFFBQVEsRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxJQUFJLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUM7WUFDdkMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUM7Z0JBQ3hCLFNBQVMsRUFBRSxJQUFJO2dCQUNmLElBQUksRUFBRSxNQUFNLENBQUMsSUFBSTtnQkFDakIsUUFBUTtnQkFDUixRQUFRO2FBQ1QsQ0FBQyxDQUFDO1lBQ0gsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLEdBQUcsTUFBTSxDQUFDLElBQUksUUFBUSxDQUFzQixDQUFDO1lBQ2xFLE9BQU8sRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDeEIsSUFBSSxDQUFDLHFCQUFxQixDQUFDLEVBQUUsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7UUFDckUsQ0FBQztRQUNELElBQUksTUFBTSxDQUFDLGFBQWE7WUFBRSxNQUFNLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUNyRSxDQUFDOzhHQXBFbUIsZUFBZTtrSEFBZixlQUFlOzsyRkFBZixlQUFlO2tCQURwQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5qZWN0YWJsZSwgVmlld0NvbnRhaW5lclJlZiwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWE9wdGlvbkNoYW5nZWRFdmVudCB9IGZyb20gJy4uL2NsYXNzZXMvZXZlbnRzLmNsYXNzJztcbmltcG9ydCB7IEFYRG9tU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2RvbS5zZXJ2aWNlJztcblxuZXhwb3J0IHR5cGUgTVhDb21wb25lbnRPcHRpb25DaGFuZ2luZzxUID0gYW55PiA9IHsgbmFtZTogc3RyaW5nOyB2YWx1ZT86IFQgfTtcbmV4cG9ydCB0eXBlIE1YQ29tcG9uZW50T3B0aW9uQ2hhbmdlZDxUID0gYW55PiA9IE1YQ29tcG9uZW50T3B0aW9uQ2hhbmdpbmc8VD47XG5cbmV4cG9ydCB0eXBlIE1YQ29tcG9uZW50U2V0T3B0aW9uPFQ+ID0ge1xuICBuYW1lOiBzdHJpbmc7XG4gIHZhbHVlPzogVDtcbiAgYWZ0ZXJDYWxsYmFjaz86IChvbGRWYWx1ZT86IFQsIG5ld1ZhbHVlPzogVCkgPT4gdm9pZDtcbiAgYmVmb3JlQ2FsbGJhY2s/OiAob2xkVmFsdWU/OiBULCBuZXdWYWx1ZT86IFQpID0+IHZvaWQ7XG59O1xuXG5leHBvcnQgdHlwZSBBWENvbXBvbmVudFN0YXRlID0gJ2NsZWFyJyB8ICdzdWNjZXNzJyB8ICdlcnJvcic7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBNWEJhc2VDb21wb25lbnQge1xuICBwcml2YXRlIF9jZHI6IENoYW5nZURldGVjdG9yUmVmID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcbiAgcHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZiA9IGluamVjdChFbGVtZW50UmVmKTtcbiAgcHJpdmF0ZSBfdmlld1JlZjogVmlld0NvbnRhaW5lclJlZiA9IGluamVjdChWaWV3Q29udGFpbmVyUmVmKTtcbiAgcHJpdmF0ZSBfZG9tU2VydmljZSA9IGluamVjdChBWERvbVNlcnZpY2UpO1xuXG4gIHByaXZhdGUgX2lkOiBzdHJpbmcgPSB0aGlzLl9kb21TZXJ2aWNlLmdlbmVyYXRlRWxlbWVudElkKCk7XG4gIHB1YmxpYyBnZXQgaWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5faWQ7XG4gIH1cbiAgcHVibGljIHNldCBpZCh2OiBzdHJpbmcpIHtcbiAgICB0aGlzLl9pZCA9IHY7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0IGNkcigpOiBDaGFuZ2VEZXRlY3RvclJlZiB7XG4gICAgcmV0dXJuIHRoaXMuX2NkcjtcbiAgfVxuXG4gIHB1YmxpYyBnZXRIb3N0RWxlbWVudDxUID0gSFRNTEVsZW1lbnQ+KCk6IFQge1xuICAgIHJldHVybiB0aGlzLl9lbGVtZW50UmVmPy5uYXRpdmVFbGVtZW50IGFzIFQ7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0Vmlld0NvbnRhaW5lcigpOiBWaWV3Q29udGFpbmVyUmVmIHtcbiAgICByZXR1cm4gdGhpcy5fdmlld1JlZjtcbiAgfVxuXG4gIHByb3RlY3RlZCBpbnRlcm5hbE9wdGlvbkNoYW5naW5nKG9wdGlvbjogTVhDb21wb25lbnRPcHRpb25DaGFuZ2luZyk6IGFueSB7XG4gICAgcmV0dXJuIG9wdGlvbj8udmFsdWU7XG4gIH1cblxuICBwcm90ZWN0ZWQgaW50ZXJuYWxPcHRpb25DaGFuZ2VkKG9wdGlvbjogTVhDb21wb25lbnRPcHRpb25DaGFuZ2VkKTogdm9pZCB7fVxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIHByb3RlY3RlZCBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAodGhpcy5nZXRIb3N0RWxlbWVudCgpIGFzIGFueSkuX19heENvbnRleHRfXyA9IHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogRmlyZWQgd2hlbiBhbiBvcHRpb24gcmVsYXRlZCB0byB0aGUgY29tcG9uZW50IGNoYW5nZXMuXG4gICAqXG4gICAqIEBldmVudFxuICAgKi9cbiAgcHVibGljIG9uT3B0aW9uQ2hhbmdlZDogRXZlbnRFbWl0dGVyPEFYT3B0aW9uQ2hhbmdlZEV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8QVhPcHRpb25DaGFuZ2VkRXZlbnQ+KCk7XG5cbiAgcHVibGljIHNldE9wdGlvbjxUID0gYW55PihvcHRpb246IE1YQ29tcG9uZW50U2V0T3B0aW9uPFQ+KSB7XG4gICAgY29uc3Qgb2xkVmFsdWUgPSB0aGlzW29wdGlvbi5uYW1lXTtcbiAgICBsZXQgbmV3VmFsdWUgPSB0aGlzLmludGVybmFsT3B0aW9uQ2hhbmdpbmcoe1xuICAgICAgbmFtZTogb3B0aW9uLm5hbWUsXG4gICAgICB2YWx1ZTogb3B0aW9uLnZhbHVlLFxuICAgIH0pO1xuICAgIGlmIChvcHRpb24uYmVmb3JlQ2FsbGJhY2spIHtcbiAgICAgIG5ld1ZhbHVlID0gb3B0aW9uLmJlZm9yZUNhbGxiYWNrKG9sZFZhbHVlLCBuZXdWYWx1ZSk7XG4gICAgfVxuICAgIC8vVE9ETyA6IGNoZWNrIHJlYWwgY2hhbmdlcyBpZiB2YWx1ZSBpcyBvYmplY3RcbiAgICBpZiAob2xkVmFsdWUgIT0gbmV3VmFsdWUpIHtcbiAgICAgIHRoaXNbYF8ke29wdGlvbi5uYW1lfWBdID0gb3B0aW9uLnZhbHVlO1xuICAgICAgdGhpcy5vbk9wdGlvbkNoYW5nZWQuZW1pdCh7XG4gICAgICAgIGNvbXBvbmVudDogdGhpcyxcbiAgICAgICAgbmFtZTogb3B0aW9uLm5hbWUsXG4gICAgICAgIG5ld1ZhbHVlLFxuICAgICAgICBvbGRWYWx1ZSxcbiAgICAgIH0pO1xuICAgICAgY29uc3QgZW1pdHRlciA9IHRoaXNbYCR7b3B0aW9uLm5hbWV9Q2hhbmdlYF0gYXMgRXZlbnRFbWl0dGVyPGFueT47XG4gICAgICBlbWl0dGVyPy5lbWl0KG5ld1ZhbHVlKTtcbiAgICAgIHRoaXMuaW50ZXJuYWxPcHRpb25DaGFuZ2VkKHsgbmFtZTogb3B0aW9uLm5hbWUsIHZhbHVlOiBuZXdWYWx1ZSB9KTtcbiAgICB9XG4gICAgaWYgKG9wdGlvbi5hZnRlckNhbGxiYWNrKSBvcHRpb24uYWZ0ZXJDYWxsYmFjayhvbGRWYWx1ZSwgbmV3VmFsdWUpO1xuICB9XG59XG4iXX0=","import { AXHtmlUtil } from '@acorex/core/utils';\nimport { coerceBooleanProperty, coerceNumberProperty } from '@angular/cdk/coercion';\nimport { EventEmitter } from '@angular/core';\nimport { noop } from 'rxjs';\nimport { MXBaseComponent } from './base-component.class';\nexport class MXInteractiveComponent extends MXBaseComponent {\n constructor() {\n super(...arguments);\n /**\n * @ignore\n */\n this.onTouchedCallback = noop;\n this._touched = false;\n /**\n * Emits an event whenever the disabled state of the component changes.\n *\n * @event\n */\n this.disabledChange = new EventEmitter();\n this._tabIndex = 0;\n /**\n * Fires each time the component gets focused.\n * @event\n */\n this.onFocus = new EventEmitter();\n /**\n * Fires each time the component gets blurred.\n * @event\n */\n this.onBlur = new EventEmitter();\n // private _focused = signal(false);\n // protected markAsFocused() {\n // this._focused.set(true);\n // }\n // protected markAsBlured() {\n // this._focused.set(false);\n // }\n }\n registerOnTouched(fn) {\n this.onTouchedCallback = fn;\n }\n /**\n * Indicates whether the component has been touched.\n *\n */\n get touched() {\n return this._touched;\n }\n /**\n * @ignore\n */\n markAsTouched() {\n if (!this.touched) {\n this.onTouchedCallback();\n this._touched = true;\n }\n }\n /**\n * If set to true, it disables the component.\n */\n get disabled() {\n return this._disabled;\n }\n set disabled(value) {\n value = coerceBooleanProperty(value);\n this.setOption({\n name: 'disabled',\n value,\n afterCallback: () => {\n this.cdr.markForCheck();\n },\n });\n }\n setDisabledState(isDisabled) {\n this.disabled = isDisabled;\n }\n /**\n * Specifies the tabindex of the component.\n */\n get tabIndex() {\n return this.disabled ? -1 : this._tabIndex;\n }\n set tabIndex(value) {\n this.setOption({\n name: 'tabIndex',\n value: value != null ? coerceNumberProperty(value) : 0,\n });\n }\n emitOnFocusEvent(e) {\n this.onFocus.emit({\n component: this,\n htmlElement: this.getHostElement(),\n nativeEvent: e,\n });\n }\n emitOnBlurEvent(e) {\n this.markAsTouched();\n this.onBlur.emit({\n component: this,\n htmlElement: this.getHostElement(),\n nativeEvent: e,\n });\n }\n // /**\n // * Fires each time the user clicks the button.\n // * @event\n // */\n // onClick: EventEmitter<AXClickEvent> = new EventEmitter<AXClickEvent>();\n // protected emitOnClickEvent(e: MouseEvent): void {\n // this.onClick.emit({\n // component: this,\n // htmlElement: this.getHostElement(),\n // nativeEvent: e,\n // });\n // }\n focus() {\n AXHtmlUtil.focusElement(this.getHostElement());\n }\n blur() {\n AXHtmlUtil.blurElement(this.getHostElement());\n }\n /**\n * Check component is focused or has any focused element.\n */\n hasFocus() {\n return AXHtmlUtil.hasFocus(this.getHostElement());\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJhY3RpdmUtY29tcG9uZW50LmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY2RrL2NvbW1vbi9zcmMvbGliL2NvbXBvbmVudHMvaW50ZXJhY3RpdmUtY29tcG9uZW50LmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNwRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdDLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFNUIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXpELE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxlQUFlO0lBQTNEOztRQUNFOztXQUVHO1FBQ08sc0JBQWlCLEdBQWUsSUFBSSxDQUFDO1FBTXZDLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFvQnpCOzs7O1dBSUc7UUFDSCxtQkFBYyxHQUEwQixJQUFJLFlBQVksRUFBVyxDQUFDO1FBdUJwRSxjQUFTLEdBQUcsQ0FBQyxDQUFDO1FBY2Q7OztXQUdHO1FBQ0gsWUFBTyxHQUErQixJQUFJLFlBQVksRUFBZ0IsQ0FBQztRQVV2RTs7O1dBR0c7UUFDSCxXQUFNLEdBQStCLElBQUksWUFBWSxFQUFnQixDQUFDO1FBd0N0RSxvQ0FBb0M7UUFFcEMsOEJBQThCO1FBQzlCLDZCQUE2QjtRQUM3QixJQUFJO1FBRUosNkJBQTZCO1FBQzdCLDhCQUE4QjtRQUM5QixJQUFJO0lBQ04sQ0FBQztJQXJJQyxpQkFBaUIsQ0FBQyxFQUFjO1FBQzlCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUdEOzs7T0FHRztJQUNILElBQVcsT0FBTztRQUNoQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDdkIsQ0FBQztJQUVEOztPQUVHO0lBRU8sYUFBYTtRQUNyQixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2xCLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ3ZCLENBQUM7SUFDSCxDQUFDO0lBU0Q7O09BRUc7SUFDSCxJQUFXLFFBQVE7UUFDakIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFDRCxJQUFJLFFBQVEsQ0FBQyxLQUFjO1FBQ3pCLEtBQUssR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNyQyxJQUFJLENBQUMsU0FBUyxDQUFDO1lBQ2IsSUFBSSxFQUFFLFVBQVU7WUFDaEIsS0FBSztZQUNMLGFBQWEsRUFBRSxHQUFHLEVBQUU7Z0JBQ2xCLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDMUIsQ0FBQztTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxVQUFtQjtRQUNsQyxJQUFJLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQztJQUM3QixDQUFDO0lBR0Q7O09BRUc7SUFDSCxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQzdDLENBQUM7SUFDRCxJQUFJLFFBQVEsQ0FBQyxLQUFhO1FBQ3hCLElBQUksQ0FBQyxTQUFTLENBQUM7WUFDYixJQUFJLEVBQUUsVUFBVTtZQUNoQixLQUFLLEVBQUUsS0FBSyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDdkQsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQVFTLGdCQUFnQixDQUFDLENBQWM7UUFDdkMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7WUFDaEIsU0FBUyxFQUFFLElBQUk7WUFDZixXQUFXLEVBQUUsSUFBSSxDQUFDLGNBQWMsRUFBRTtZQUNsQyxXQUFXLEVBQUUsQ0FBQztTQUNmLENBQUMsQ0FBQztJQUNMLENBQUM7SUFRUyxlQUFlLENBQUMsQ0FBYztRQUN0QyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDckIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7WUFDZixTQUFTLEVBQUUsSUFBSTtZQUNmLFdBQVcsRUFBRSxJQUFJLENBQUMsY0FBYyxFQUFFO1lBQ2xDLFdBQVcsRUFBRSxDQUFDO1NBQ2YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELE1BQU07SUFDTixrREFBa0Q7SUFDbEQsYUFBYTtJQUNiLE1BQU07SUFDTiwwRUFBMEU7SUFFMUUsb0RBQW9EO0lBQ3BELHdCQUF3QjtJQUN4Qix1QkFBdUI7SUFDdkIsMENBQTBDO0lBQzFDLHNCQUFzQjtJQUN0QixRQUFRO0lBQ1IsSUFBSTtJQUVKLEtBQUs7UUFDSCxVQUFVLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFFRCxJQUFJO1FBQ0YsVUFBVSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxRQUFRO1FBQ04sT0FBTyxVQUFVLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDO0lBQ3BELENBQUM7Q0FXRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYSHRtbFV0aWwgfSBmcm9tICdAYWNvcmV4L2NvcmUvdXRpbHMnO1xuaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5LCBjb2VyY2VOdW1iZXJQcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5pbXBvcnQgeyBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IG5vb3AgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFYRm9jdXNFdmVudCB9IGZyb20gJy4uL2NsYXNzZXMvZXZlbnRzLmNsYXNzJztcbmltcG9ydCB7IE1YQmFzZUNvbXBvbmVudCB9IGZyb20gJy4vYmFzZS1jb21wb25lbnQuY2xhc3MnO1xuXG5leHBvcnQgY2xhc3MgTVhJbnRlcmFjdGl2ZUNvbXBvbmVudCBleHRlbmRzIE1YQmFzZUNvbXBvbmVudCB7XG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgcHJvdGVjdGVkIG9uVG91Y2hlZENhbGxiYWNrOiAoKSA9PiB2b2lkID0gbm9vcDtcblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogKCkgPT4gdm9pZCk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaGVkQ2FsbGJhY2sgPSBmbjtcbiAgfVxuXG4gIHByaXZhdGUgX3RvdWNoZWQgPSBmYWxzZTtcbiAgLyoqXG4gICAqIEluZGljYXRlcyB3aGV0aGVyIHRoZSBjb21wb25lbnQgaGFzIGJlZW4gdG91Y2hlZC5cbiAgICpcbiAgICovXG4gIHB1YmxpYyBnZXQgdG91Y2hlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fdG91Y2hlZDtcbiAgfVxuXG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cblxuICBwcm90ZWN0ZWQgbWFya0FzVG91Y2hlZCgpIHtcbiAgICBpZiAoIXRoaXMudG91Y2hlZCkge1xuICAgICAgdGhpcy5vblRvdWNoZWRDYWxsYmFjaygpO1xuICAgICAgdGhpcy5fdG91Y2hlZCA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEVtaXRzIGFuIGV2ZW50IHdoZW5ldmVyIHRoZSBkaXNhYmxlZCBzdGF0ZSBvZiB0aGUgY29tcG9uZW50IGNoYW5nZXMuXG4gICAqXG4gICAqIEBldmVudFxuICAgKi9cbiAgZGlzYWJsZWRDaGFuZ2U6IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcbiAgcHJpdmF0ZSBfZGlzYWJsZWQ6IGJvb2xlYW47XG4gIC8qKlxuICAgKiAgSWYgc2V0IHRvIHRydWUsIGl0IGRpc2FibGVzIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9kaXNhYmxlZDtcbiAgfVxuICBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB2YWx1ZSA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgdGhpcy5zZXRPcHRpb24oe1xuICAgICAgbmFtZTogJ2Rpc2FibGVkJyxcbiAgICAgIHZhbHVlLFxuICAgICAgYWZ0ZXJDYWxsYmFjazogKCkgPT4ge1xuICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cblxuICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgfVxuXG4gIF90YWJJbmRleCA9IDA7XG4gIC8qKlxuICAgKiAgU3BlY2lmaWVzIHRoZSB0YWJpbmRleCBvZiB0aGUgY29tcG9uZW50LlxuICAgKi9cbiAgZ2V0IHRhYkluZGV4KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZGlzYWJsZWQgPyAtMSA6IHRoaXMuX3RhYkluZGV4O1xuICB9XG4gIHNldCB0YWJJbmRleCh2YWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy5zZXRPcHRpb24oe1xuICAgICAgbmFtZTogJ3RhYkluZGV4JyxcbiAgICAgIHZhbHVlOiB2YWx1ZSAhPSBudWxsID8gY29lcmNlTnVtYmVyUHJvcGVydHkodmFsdWUpIDogMCxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiAgRmlyZXMgZWFjaCB0aW1lIHRoZSBjb21wb25lbnQgZ2V0cyBmb2N1c2VkLlxuICAgKiAgQGV2ZW50XG4gICAqL1xuICBvbkZvY3VzOiBFdmVudEVtaXR0ZXI8QVhGb2N1c0V2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8QVhGb2N1c0V2ZW50PigpO1xuXG4gIHByb3RlY3RlZCBlbWl0T25Gb2N1c0V2ZW50KGU/OiBGb2N1c0V2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5vbkZvY3VzLmVtaXQoe1xuICAgICAgY29tcG9uZW50OiB0aGlzLFxuICAgICAgaHRtbEVsZW1lbnQ6IHRoaXMuZ2V0SG9zdEVsZW1lbnQoKSxcbiAgICAgIG5hdGl2ZUV2ZW50OiBlLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqICBGaXJlcyBlYWNoIHRpbWUgdGhlIGNvbXBvbmVudCBnZXRzIGJsdXJyZWQuXG4gICAqICBAZXZlbnRcbiAgICovXG4gIG9uQmx1cjogRXZlbnRFbWl0dGVyPEFYRm9jdXNFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEFYRm9jdXNFdmVudD4oKTtcblxuICBwcm90ZWN0ZWQgZW1pdE9uQmx1ckV2ZW50KGU/OiBGb2N1c0V2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5tYXJrQXNUb3VjaGVkKCk7XG4gICAgdGhpcy5vbkJsdXIuZW1pdCh7XG4gICAgICBjb21wb25lbnQ6IHRoaXMsXG4gICAgICBodG1sRWxlbWVudDogdGhpcy5nZXRIb3N0RWxlbWVudCgpLFxuICAgICAgbmF0aXZlRXZlbnQ6IGUsXG4gICAgfSk7XG4gIH1cblxuICAvLyAvKipcbiAgLy8gICogIEZpcmVzIGVhY2ggdGltZSB0aGUgdXNlciBjbGlja3MgdGhlIGJ1dHRvbi5cbiAgLy8gICogIEBldmVudFxuICAvLyAgKi9cbiAgLy8gb25DbGljazogRXZlbnRFbWl0dGVyPEFYQ2xpY2tFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEFYQ2xpY2tFdmVudD4oKTtcblxuICAvLyBwcm90ZWN0ZWQgZW1pdE9uQ2xpY2tFdmVudChlOiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gIC8vICAgdGhpcy5vbkNsaWNrLmVtaXQoe1xuICAvLyAgICAgY29tcG9uZW50OiB0aGlzLFxuICAvLyAgICAgaHRtbEVsZW1lbnQ6IHRoaXMuZ2V0SG9zdEVsZW1lbnQoKSxcbiAgLy8gICAgIG5hdGl2ZUV2ZW50OiBlLFxuICAvLyAgIH0pO1xuICAvLyB9XG5cbiAgZm9jdXMoKSB7XG4gICAgQVhIdG1sVXRpbC5mb2N1c0VsZW1lbnQodGhpcy5nZXRIb3N0RWxlbWVudCgpKTtcbiAgfVxuXG4gIGJsdXIoKSB7XG4gICAgQVhIdG1sVXRpbC5ibHVyRWxlbWVudCh0aGlzLmdldEhvc3RFbGVtZW50KCkpO1xuICB9XG5cbiAgLyoqXG4gICAqICBDaGVjayBjb21wb25lbnQgaXMgZm9jdXNlZCBvciBoYXMgYW55IGZvY3VzZWQgZWxlbWVudC5cbiAgICovXG4gIGhhc0ZvY3VzKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBBWEh0bWxVdGlsLmhhc0ZvY3VzKHRoaXMuZ2V0SG9zdEVsZW1lbnQoKSk7XG4gIH1cblxuICAvLyBwcml2YXRlIF9mb2N1c2VkID0gc2lnbmFsKGZhbHNlKTtcblxuICAvLyBwcm90ZWN0ZWQgbWFya0FzRm9jdXNlZCgpIHtcbiAgLy8gICB0aGlzLl9mb2N1c2VkLnNldCh0cnVlKTtcbiAgLy8gfVxuXG4gIC8vIHByb3RlY3RlZCBtYXJrQXNCbHVyZWQoKSB7XG4gIC8vICAgdGhpcy5fZm9jdXNlZC5zZXQoZmFsc2UpO1xuICAvLyB9XG59XG4iXX0=","import { isBrowser } from '@acorex/core/platform';\nimport { AXValidationService } from '@acorex/core/validation';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { isPlatformBrowser } from '@angular/common';\nimport { DOCUMENT, EventEmitter, Injectable, PLATFORM_ID, inject } from '@angular/core';\nimport { cloneDeep, isEqual, omit } from 'lodash-es';\nimport { noop } from 'rxjs';\nimport { MXInteractiveComponent } from './interactive-component.class';\nimport * as i0 from \"@angular/core\";\nexport class MXValueComponent extends MXInteractiveComponent {\n constructor() {\n super(...arguments);\n /**\n * Fires each time the user press a key.\n * @event\n */\n this.onValueChanged = new EventEmitter();\n /**\n * @deprecated The event should not be used, use ngModelChange instead\n */\n this.valueChange = new EventEmitter();\n this.readonlyChange = new EventEmitter();\n this._readonly = false;\n this._dirty = false;\n this._isUserInteraction = false;\n this.stateChange = new EventEmitter();\n this._state = 'clear';\n this.document = inject(DOCUMENT);\n this.platformID = inject(PLATFORM_ID);\n this.validationService = inject(AXValidationService);\n this.validationRulesChange = new EventEmitter();\n this.validationRules = [];\n this.onChangeCallback = noop;\n }\n /**\n * If set to true, user cannot change the value of component.\n */\n get readonly() {\n return this._readonly;\n }\n set readonly(value) {\n value = coerceBooleanProperty(value);\n this.setOption({\n name: 'readonly',\n value,\n afterCallback: () => {\n this.cdr.markForCheck();\n },\n });\n }\n get name() {\n return this._name;\n }\n set name(value) {\n this._name = value;\n }\n get dirty() {\n return this._dirty;\n }\n markAsDirty() {\n this._dirty = true;\n }\n /**\n * @deprecated The property should not be used, use ngModel instead\n */\n get value() {\n return this.internalGetValue(this._value) ?? this.defaultValue;\n }\n set value(v) {\n v = this.internalSetValue(v);\n const old = cloneDeep(this.value);\n if (v === null || v === undefined || v === '' || (Array.isArray(v) && v.length === 0)) {\n this.setState('clear');\n if (old === null || old === undefined || old === '' || (Array.isArray(old) && old.length === 0)) {\n return;\n }\n }\n if (!isEqual(old, v)) {\n this._value = v;\n this.emitOnValueChangedEvent(old, this.value);\n this.internalValueChanged(this.value);\n }\n }\n get state() {\n return this._state;\n }\n set state(value) {\n this.setState(value);\n this.stateChange.emit(value);\n }\n emitOnValueChangedEvent(oldValue, newValue) {\n this.valueChange.emit(newValue);\n this.onValueChanged.emit({\n component: this,\n value: newValue,\n oldValue: oldValue,\n name: this.name,\n isUserInteraction: this._isUserInteraction,\n });\n this.onChangeCallback(newValue);\n this.cdr.markForCheck();\n this._isUserInteraction = false;\n }\n internalSetValue(value) {\n return value;\n }\n internalGetValue(value) {\n return value;\n }\n internalValueChanged(value) { }\n ngOnInit() {\n super.ngOnInit();\n //\n this.registerValidation();\n }\n ngOnDestroy() {\n this.onValueChanged?.unsubscribe();\n this.onOptionChanged?.unsubscribe();\n }\n registerValidation() {\n const a = this.getHostElement().querySelectorAll('[ax-form-item=\"true\"]');\n a.forEach((c) => {\n c.removeAttribute('ax-form-item');\n });\n this.getHostElement().setAttribute('ax-form-item', 'true');\n }\n get isRequired() {\n return this.validationRules?.some((c) => c.rule == 'required');\n }\n addValidationRule(rule) {\n this.validationRules.push(rule);\n this.validationRulesChange.emit(this.validationRules);\n }\n removeValidationRule(ruleToRemove) {\n this.validationRules = this.validationRules.filter((r) => {\n if (r.rule !== ruleToRemove.rule) {\n return true;\n }\n // Create copies of options without the 'title' property\n const rOptionsSanitized = omit(r.options, ['title']);\n const ruleToRemoveOptionsSanitized = omit(ruleToRemove.options, ['title']);\n return !isEqual(rOptionsSanitized, ruleToRemoveOptionsSanitized);\n });\n this.validationRulesChange.emit(this.validationRules);\n this.setState('clear');\n }\n async validate() {\n const container_classes = ['ax-editor-container', 'ax-checkbox', 'ax-radio'];\n const container = container_classes.some((c) => this.getHostElement().classList.contains(c))\n ? this.getHostElement()\n : this.getHostElement().querySelector('.ax-editor-container');\n const formField = container?.closest('ax-form-field') || container?.closest('ax-checkbox');\n const label = formField?.querySelector('ax-label') || formField?.querySelector('label');\n //\n const rules = this.validationService.ruleFor(this.value);\n this.validationRules.forEach((r) => {\n r.options['title'] = (label?.firstChild?.textContent ?? this.name)?.replace('*', '').trim();\n rules.addRule(r.rule, r.options);\n });\n const result = await rules.validate();\n if (result.result) {\n this.setState('clear');\n }\n else {\n const message = result.rules.find((c) => !c.result).message;\n this.setState('error', message);\n }\n return result;\n }\n setState(state, ...args) {\n //TODO: find a better solution\n if (isBrowser()) {\n const container = this.getHostElement().classList.contains('ax-editor-container')\n ? this.getHostElement()\n : this.getHostElement().querySelector('.ax-editor-container');\n const formField = container?.closest('ax-form-field');\n const label = formField?.querySelector('ax-label') || formField?.querySelector('label');\n let target = container || this.getHostElement().firstElementChild;\n if (target?.querySelector('.ax-error-container')) {\n target = target.querySelector('.ax-error-container');\n }\n const parent = target?.parentElement;\n if (!target || !parent)\n return;\n switch (state) {\n case 'clear':\n this._state = 'clear';\n if (parent.querySelector('span.ax-error-message')) {\n parent.removeChild(parent.querySelector('span.ax-error-message'));\n }\n label?.classList.remove('ax-state-error');\n target.classList.remove('ax-state-error', 'ax-state-success');\n break;\n case 'success':\n this.setState('clear');\n target.classList.add('ax-state-success');\n this._state = 'success';\n break;\n case 'error':\n this.setState('clear');\n if (args[0] && isPlatformBrowser(this.platformID)) {\n const span = this.document.createElement('span');\n span.innerHTML = args[0];\n span.classList.add('ax-error-message');\n parent.appendChild(span);\n }\n label?.classList.add('ax-state-error');\n target.classList.add('ax-state-error');\n this._state = 'error';\n break;\n }\n this.cdr.markForCheck();\n }\n }\n registerOnChange(fn) {\n this.onChangeCallback = fn;\n }\n writeValue(value) {\n this.value = value;\n }\n commitValue(value, u = false) {\n if (u) {\n this.markAsTouched();\n this.markAsDirty();\n this._isUserInteraction = true;\n }\n this.writeValue(value);\n }\n reset(e = false) {\n this.commitValue(null, e);\n }\n resetErrors() {\n this.setState('clear');\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: MXValueComponent, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: MXValueComponent }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: MXValueComponent, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsdWUtY29tcG9uZW50LmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY2RrL2NvbW1vbi9zcmMvbGliL2NvbXBvbmVudHMvdmFsdWUtY29tcG9uZW50LmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsbUJBQW1CLEVBQXVCLE1BQU0seUJBQXlCLENBQUM7QUFDbkYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDcEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFeEYsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3JELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFJNUIsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sK0JBQStCLENBQUM7O0FBR3ZFLE1BQU0sT0FBTyxnQkFBMEIsU0FBUSxzQkFBc0I7SUFEckU7O1FBRUU7OztXQUdHO1FBQ0gsbUJBQWMsR0FBMkMsSUFBSSxZQUFZLEVBQTRCLENBQUM7UUFFdEc7O1dBRUc7UUFDSCxnQkFBVyxHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO1FBRXpELG1CQUFjLEdBQTBCLElBQUksWUFBWSxFQUFXLENBQUM7UUFDNUQsY0FBUyxHQUFHLEtBQUssQ0FBQztRQTBCbEIsV0FBTSxHQUFHLEtBQUssQ0FBQztRQVNmLHVCQUFrQixHQUFHLEtBQUssQ0FBQztRQStCbkMsZ0JBQVcsR0FBbUMsSUFBSSxZQUFZLEVBQW9CLENBQUM7UUFFM0UsV0FB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Z0JBQWdCOzsyRkFBaEIsZ0JBQWdCO2tCQUQ1QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNCcm93c2VyIH0gZnJvbSAnQGFjb3JleC9jb3JlL3BsYXRmb3JtJztcbmltcG9ydCB7IEFYVmFsaWRhdGlvblNlcnZpY2UsIEFYVmFsaWRhdGlvblN1bW1hcnkgfSBmcm9tICdAYWNvcmV4L2NvcmUvdmFsaWRhdGlvbic7XG5pbXBvcnQgeyBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRE9DVU1FTlQsIEV2ZW50RW1pdHRlciwgSW5qZWN0YWJsZSwgUExBVEZPUk1fSUQsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBjbG9uZURlZXAsIGlzRXF1YWwsIG9taXQgfSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHsgbm9vcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQVhGb3JtVmFsaWRhdGlvblJ1bGUgfSBmcm9tICcuLi9jbGFzc2VzL2NvbXBvbmVudHMuY2xhc3MnO1xuaW1wb3J0IHsgQVhWYWx1ZUNoYW5nZWRFdmVudCB9IGZyb20gJy4uL2NsYXNzZXMvZXZlbnRzLmNsYXNzJztcbmltcG9ydCB7IEFYQ29tcG9uZW50U3RhdGUgfSBmcm9tICcuL2Jhc2UtY29tcG9uZW50LmNsYXNzJztcbmltcG9ydCB7IE1YSW50ZXJhY3RpdmVDb21wb25lbnQgfSBmcm9tICcuL2ludGVyYWN0aXZlLWNvbXBvbmVudC5jbGFzcyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBNWFZhbHVlQ29tcG9uZW50PFQgPSBhbnk+IGV4dGVuZHMgTVhJbnRlcmFjdGl2ZUNvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcbiAgLyoqXG4gICAqICBGaXJlcyBlYWNoIHRpbWUgdGhlIHVzZXIgcHJlc3MgYSBrZXkuXG4gICAqICBAZXZlbnRcbiAgICovXG4gIG9uVmFsdWVDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8QVhWYWx1ZUNoYW5nZWRFdmVudDxhbnk+PiA9IG5ldyBFdmVudEVtaXR0ZXI8QVhWYWx1ZUNoYW5nZWRFdmVudDxhbnk+PigpO1xuXG4gIC8qKlxuICAgKiBAZGVwcmVjYXRlZCBUaGUgZXZlbnQgc2hvdWxkIG5vdCBiZSB1c2VkLCB1c2UgbmdNb2RlbENoYW5nZSBpbnN0ZWFkXG4gICAqL1xuICB2YWx1ZUNoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICByZWFkb25seUNoYW5nZTogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuICBwcml2YXRlIF9yZWFkb25seSA9IGZhbHNlO1xuICAvKipcbiAgICogIElmIHNldCB0byB0cnVlLCB1c2VyIGNhbm5vdCBjaGFuZ2UgdGhlIHZhbHVlIG9mIGNvbXBvbmVudC5cbiAgICovXG4gIGdldCByZWFkb25seSgpIHtcbiAgICByZXR1cm4gdGhpcy5fcmVhZG9ubHk7XG4gIH1cbiAgc2V0IHJlYWRvbmx5KHZhbHVlOiBib29sZWFuKSB7XG4gICAgdmFsdWUgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIHRoaXMuc2V0T3B0aW9uKHtcbiAgICAgIG5hbWU6ICdyZWFkb25seScsXG4gICAgICB2YWx1ZSxcbiAgICAgIGFmdGVyQ2FsbGJhY2s6ICgpID0+IHtcbiAgICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgICB9LFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfbmFtZTogc3RyaW5nO1xuICBnZXQgbmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy5fbmFtZTtcbiAgfVxuICBzZXQgbmFtZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5fbmFtZSA9IHZhbHVlO1xuICB9XG5cbiAgcHJpdmF0ZSBfZGlydHkgPSBmYWxzZTtcbiAgcHVibGljIGdldCBkaXJ0eSgpIHtcbiAgICByZXR1cm4gdGhpcy5fZGlydHk7XG4gIH1cblxuICBtYXJrQXNEaXJ0eSgpIHtcbiAgICB0aGlzLl9kaXJ0eSA9IHRydWU7XG4gIH1cblxuICBwcml2YXRlIF9pc1VzZXJJbnRlcmFjdGlvbiA9IGZhbHNlO1xuXG4gIGluaXRWYWx1ZTogVDtcbiAgZGVmYXVsdFZhbHVlOiBUO1xuXG4gIHByaXZhdGUgX3ZhbHVlOiBUO1xuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgVGhlIHByb3BlcnR5IHNob3VsZCBub3QgYmUgdXNlZCwgdXNlIG5nTW9kZWwgaW5zdGVhZFxuICAgKi9cbiAgZ2V0IHZhbHVlKCk6IFQge1xuICAgIHJldHVybiB0aGlzLmludGVybmFsR2V0VmFsdWUodGhpcy5fdmFsdWUpID8/IHRoaXMuZGVmYXVsdFZhbHVlO1xuICB9XG4gIHNldCB2YWx1ZSh2OiBUKSB7XG4gICAgdiA9IHRoaXMuaW50ZXJuYWxTZXRWYWx1ZSh2KTtcbiAgICBjb25zdCBvbGQgPSBjbG9uZURlZXAodGhpcy52YWx1ZSk7XG5cbiAgICBpZiAodiA9PT0gbnVsbCB8fCB2ID09PSB1bmRlZmluZWQgfHwgdiA9PT0gJycgfHwgKEFycmF5LmlzQXJyYXkodikgJiYgdi5sZW5ndGggPT09IDApKSB7XG4gICAgICB0aGlzLnNldFN0YXRlKCdjbGVhcicpO1xuICAgICAgaWYgKG9sZCA9PT0gbnVsbCB8fCBvbGQgPT09IHVuZGVmaW5lZCB8fCBvbGQgPT09ICcnIHx8IChBcnJheS5pc0FycmF5KG9sZCkgJiYgb2xkLmxlbmd0aCA9PT0gMCkpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmICghaXNFcXVhbChvbGQsIHYpKSB7XG4gICAgICB0aGlzLl92YWx1ZSA9IHY7XG4gICAgICB0aGlzLmVtaXRPblZhbHVlQ2hhbmdlZEV2ZW50KG9sZCwgdGhpcy52YWx1ZSk7XG5cbiAgICAgIHRoaXMuaW50ZXJuYWxWYWx1ZUNoYW5nZWQodGhpcy52YWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgc3RhdGVDaGFuZ2U6IEV2ZW50RW1pdHRlcjxBWENvbXBvbmVudFN0YXRlPiA9IG5ldyBFdmVudEVtaXR0ZXI8QVhDb21wb25lbnRTdGF0ZT4oKTtcblxuICBwcml2YXRlIF9zdGF0ZTogQVhDb21wb25lbnRTdGF0ZSA9ICdjbGVhcic7XG5cbiAgZ2V0IHN0YXRlKCk6IEFYQ29tcG9uZW50U3RhdGUge1xuICAgIHJldHVybiB0aGlzLl9zdGF0ZTtcbiAgfVxuXG4gIHNldCBzdGF0ZSh2YWx1ZTogQVhDb21wb25lbnRTdGF0ZSkge1xuICAgIHRoaXMuc2V0U3RhdGUodmFsdWUpO1xuICAgIHRoaXMuc3RhdGVDaGFuZ2UuZW1pdCh2YWx1ZSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZW1pdE9uVmFsdWVDaGFuZ2VkRXZlbnQob2xkVmFsdWU/OiBhbnksIG5ld1ZhbHVlPzogYW55KSB7XG4gICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KG5ld1ZhbHVlKTtcbiAgICB0aGlzLm9uVmFsdWVDaGFuZ2VkLmVtaXQoe1xuICAgICAgY29tcG9uZW50OiB0aGlzLFxuICAgICAgdmFsdWU6IG5ld1ZhbHVlLFxuICAgICAgb2xkVmFsdWU6IG9sZFZhbHVlLFxuICAgICAgbmFtZTogdGhpcy5uYW1lLFxuICAgICAgaXNVc2VySW50ZXJhY3Rpb246IHRoaXMuX2lzVXNlckludGVyYWN0aW9uLFxuICAgIH0pO1xuICAgIHRoaXMub25DaGFuZ2VDYWxsYmFjayhuZXdWYWx1ZSk7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgdGhpcy5faXNVc2VySW50ZXJhY3Rpb24gPSBmYWxzZTtcbiAgfVxuXG4gIHByb3RlY3RlZCBpbnRlcm5hbFNldFZhbHVlKHZhbHVlOiBhbnkpOiBUIHtcbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cblxuICBwcm90ZWN0ZWQgaW50ZXJuYWxHZXRWYWx1ZSh2YWx1ZTogYW55KTogVCB7XG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG5cbiAgcHJvdGVjdGVkIGludGVybmFsVmFsdWVDaGFuZ2VkKHZhbHVlOiBhbnkpOiB2b2lkIHt9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgLy9cbiAgICB0aGlzLnJlZ2lzdGVyVmFsaWRhdGlvbigpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMub25WYWx1ZUNoYW5nZWQ/LnVuc3Vic2NyaWJlKCk7XG4gICAgdGhpcy5vbk9wdGlvbkNoYW5nZWQ/LnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgcmVnaXN0ZXJWYWxpZGF0aW9uKCkge1xuICAgIGNvbnN0IGEgPSB0aGlzLmdldEhvc3RFbGVtZW50KCkucXVlcnlTZWxlY3RvckFsbCgnW2F4LWZvcm0taXRlbT1cInRydWVcIl0nKTtcbiAgICBhLmZvckVhY2goKGMpID0+IHtcbiAgICAgIGMucmVtb3ZlQXR0cmlidXRlKCdheC1mb3JtLWl0ZW0nKTtcbiAgICB9KTtcbiAgICB0aGlzLmdldEhvc3RFbGVtZW50KCkuc2V0QXR0cmlidXRlKCdheC1mb3JtLWl0ZW0nLCAndHJ1ZScpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGRvY3VtZW50ID0gaW5qZWN0KERPQ1VNRU5UKTtcbiAgcHJvdGVjdGVkIHBsYXRmb3JtSUQgPSBpbmplY3QoUExBVEZPUk1fSUQpO1xuICBwcml2YXRlIHZhbGlkYXRpb25TZXJ2aWNlID0gaW5qZWN0KEFYVmFsaWRhdGlvblNlcnZpY2UpO1xuXG4gIHB1YmxpYyB2YWxpZGF0aW9uUnVsZXNDaGFuZ2U6IEV2ZW50RW1pdHRlcjxBWEZvcm1WYWxpZGF0aW9uUnVsZVtdPiA9IG5ldyBFdmVudEVtaXR0ZXI8QVhGb3JtVmFsaWRhdGlvblJ1bGVbXT4oKTtcbiAgcHJpdmF0ZSB2YWxpZGF0aW9uUnVsZXM6IEFYRm9ybVZhbGlkYXRpb25SdWxlW10gPSBbXTtcblxuICBwdWJsaWMgZ2V0IGlzUmVxdWlyZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudmFsaWRhdGlvblJ1bGVzPy5zb21lKChjKSA9PiBjLnJ1bGUgPT0gJ3JlcXVpcmVkJyk7XG4gIH1cblxuICBhZGRWYWxpZGF0aW9uUnVsZShydWxlOiBBWEZvcm1WYWxpZGF0aW9uUnVsZSkge1xuICAgIHRoaXMudmFsaWRhdGlvblJ1bGVzLnB1c2gocnVsZSk7XG4gICAgdGhpcy52YWxpZGF0aW9uUnVsZXNDaGFuZ2UuZW1pdCh0aGlzLnZhbGlkYXRpb25SdWxlcyk7XG4gIH1cblxuICByZW1vdmVWYWxpZGF0aW9uUnVsZShydWxlVG9SZW1vdmU6IEFYRm9ybVZhbGlkYXRpb25SdWxlKSB7XG4gICAgdGhpcy52YWxpZGF0aW9uUnVsZXMgPSB0aGlzLnZhbGlkYXRpb25SdWxlcy5maWx0ZXIoKHIpID0+IHtcbiAgICAgIGlmIChyLnJ1bGUgIT09IHJ1bGVUb1JlbW92ZS5ydWxlKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgICAgLy8gQ3JlYXRlIGNvcGllcyBvZiBvcHRpb25zIHdpdGhvdXQgdGhlICd0aXRsZScgcHJvcGVydHlcbiAgICAgIGNvbnN0IHJPcHRpb25zU2FuaXRpemVkID0gb21pdChyLm9wdGlvbnMsIFsndGl0bGUnXSk7XG4gICAgICBjb25zdCBydWxlVG9SZW1vdmVPcHRpb25zU2FuaXRpemVkID0gb21pdChydWxlVG9SZW1vdmUub3B0aW9ucywgWyd0aXRsZSddKTtcblxuICAgICAgcmV0dXJuICFpc0VxdWFsKHJPcHRpb25zU2FuaXRpemVkLCBydWxlVG9SZW1vdmVPcHRpb25zU2FuaXRpemVkKTtcbiAgICB9KTtcbiAgICB0aGlzLnZhbGlkYXRpb25SdWxlc0NoYW5nZS5lbWl0KHRoaXMudmFsaWRhdGlvblJ1bGVzKTtcbiAgICB0aGlzLnNldFN0YXRlKCdjbGVhcicpO1xuICB9XG5cbiAgYXN5bmMgdmFsaWRhdGUoKTogUHJvbWlzZTxBWFZhbGlkYXRpb25TdW1tYXJ5PiB7XG4gICAgY29uc3QgY29udGFpbmVyX2NsYXNzZXMgPSBbJ2F4LWVkaXRvci1jb250YWluZXInLCAnYXgtY2hlY2tib3gnLCAnYXgtcmFkaW8nXTtcbiAgICBjb25zdCBjb250YWluZXIgPSBjb250YWluZXJfY2xhc3Nlcy5zb21lKChjKSA9PiB0aGlzLmdldEhvc3RFbGVtZW50KCkuY2xhc3NMaXN0LmNvbnRhaW5zKGMpKVxuICAgICAgPyB0aGlzLmdldEhvc3RFbGVtZW50KClcbiAgICAgIDogdGhpcy5nZXRIb3N0RWxlbWVudCgpLnF1ZXJ5U2VsZWN0b3IoJy5heC1lZGl0b3ItY29udGFpbmVyJyk7XG4gICAgY29uc3QgZm9ybUZpZWxkID0gY29udGFpbmVyPy5jbG9zZXN0KCdheC1mb3JtLWZpZWxkJykgfHwgY29udGFpbmVyPy5jbG9zZXN0KCdheC1jaGVja2JveCcpO1xuICAgIGNvbnN0IGxhYmVsID0gZm9ybUZpZWxkPy5xdWVyeVNlbGVjdG9yKCdheC1sYWJlbCcpIHx8IGZvcm1GaWVsZD8ucXVlcnlTZWxlY3RvcignbGFiZWwnKTtcbiAgICAvL1xuICAgIGNvbnN0IHJ1bGVzID0gdGhpcy52YWxpZGF0aW9uU2VydmljZS5ydWxlRm9yKHRoaXMudmFsdWUpO1xuICAgIHRoaXMudmFsaWRhdGlvblJ1bGVzLmZvckVhY2goKHIpID0+IHtcbiAgICAgIHIub3B0aW9uc1sndGl0bGUnXSA9IChsYWJlbD8uZmlyc3RDaGlsZD8udGV4dENvbnRlbnQgPz8gdGhpcy5uYW1lKT8ucmVwbGFjZSgnKicsICcnKS50cmltKCk7XG4gICAgICBydWxlcy5hZGRSdWxlKHIucnVsZSBhcyBhbnksIHIub3B0aW9ucyk7XG4gICAgfSk7XG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgcnVsZXMudmFsaWRhdGUoKTtcbiAgICBpZiAocmVzdWx0LnJlc3VsdCkge1xuICAgICAgdGhpcy5zZXRTdGF0ZSgnY2xlYXInKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgbWVzc2FnZSA9IHJlc3VsdC5ydWxlcy5maW5kKChjKSA9PiAhYy5yZXN1bHQpLm1lc3NhZ2U7XG4gICAgICB0aGlzLnNldFN0YXRlKCdlcnJvcicsIG1lc3NhZ2UpO1xuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgcHJvdGVjdGVkIHNldFN0YXRlKHN0YXRlOiBBWENvbXBvbmVudFN0YXRlLCAuLi5hcmdzKSB7XG4gICAgLy9UT0RPOiBmaW5kIGEgYmV0dGVyIHNvbHV0aW9uXG4gICAgaWYgKGlzQnJvd3NlcigpKSB7XG4gICAgICBjb25zdCBjb250YWluZXIgPSB0aGlzLmdldEhvc3RFbGVtZW50KCkuY2xhc3NMaXN0LmNvbnRhaW5zKCdheC1lZGl0b3ItY29udGFpbmVyJylcbiAgICAgICAgPyB0aGlzLmdldEhvc3RFbGVtZW50KClcbiAgICAgICAgOiB0aGlzLmdldEhvc3RFbGVtZW50KCkucXVlcnlTZWxlY3RvcignLmF4LWVkaXRvci1jb250YWluZXInKTtcbiAgICAgIGNvbnN0IGZvcm1GaWVsZCA9IGNvbnRhaW5lcj8uY2xvc2VzdCgnYXgtZm9ybS1maWVsZCcpO1xuICAgICAgY29uc3QgbGFiZWwgPSBmb3JtRmllbGQ/LnF1ZXJ5U2VsZWN0b3IoJ2F4LWxhYmVsJykgfHwgZm9ybUZpZWxkPy5xdWVyeVNlbGVjdG9yKCdsYWJlbCcpO1xuICAgICAgbGV0IHRhcmdldCA9IGNvbnRhaW5lciB8fCB0aGlzLmdldEhvc3RFbGVtZW50KCkuZmlyc3RFbGVtZW50Q2hpbGQ7XG4gICAgICBpZiAodGFyZ2V0Py5xdWVyeVNlbGVjdG9yKCcuYXgtZXJyb3ItY29udGFpbmVyJykpIHtcbiAgICAgICAgdGFyZ2V0ID0gdGFyZ2V0LnF1ZXJ5U2VsZWN0b3IoJy5heC1lcnJvci1jb250YWluZXInKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHBhcmVudCA9IHRhcmdldD8ucGFyZW50RWxlbWVudDtcbiAgICAgIGlmICghdGFyZ2V0IHx8ICFwYXJlbnQpIHJldHVybjtcblxuICAgICAgc3dpdGNoIChzdGF0ZSkge1xuICAgICAgICBjYXNlICdjbGVhcic6XG4gICAgICAgICAgdGhpcy5fc3RhdGUgPSAnY2xlYXInO1xuICAgICAgICAgIGlmIChwYXJlbnQucXVlcnlTZWxlY3Rvcignc3Bhbi5heC1lcnJvci1tZXNzYWdlJykpIHtcbiAgICAgICAgICAgIHBhcmVudC5yZW1vdmVDaGlsZChwYXJlbnQucXVlcnlTZWxlY3Rvcignc3Bhbi5heC1lcnJvci1tZXNzYWdlJykhKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgbGFiZWw/LmNsYXNzTGlzdC5yZW1vdmUoJ2F4LXN0YXRlLWVycm9yJyk7XG4gICAgICAgICAgdGFyZ2V0LmNsYXNzTGlzdC5yZW1vdmUoJ2F4LXN0YXRlLWVycm9yJywgJ2F4LXN0YXRlLXN1Y2Nlc3MnKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAnc3VjY2Vzcyc6XG4gICAgICAgICAgdGhpcy5zZXRTdGF0ZSgnY2xlYXInKTtcbiAgICAgICAgICB0YXJnZXQuY2xhc3NMaXN0LmFkZCgnYXgtc3RhdGUtc3VjY2VzcycpO1xuICAgICAgICAgIHRoaXMuX3N0YXRlID0gJ3N1Y2Nlc3MnO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdlcnJvcic6XG4gICAgICAgICAgdGhpcy5zZXRTdGF0ZSgnY2xlYXInKTtcbiAgICAgICAgICBpZiAoYXJnc1swXSAmJiBpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSUQpKSB7XG4gICAgICAgICAgICBjb25zdCBzcGFuID0gdGhpcy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzcGFuJyk7XG4gICAgICAgICAgICBzcGFuLmlubmVySFRNTCA9IGFyZ3NbMF07XG4gICAgICAgICAgICBzcGFuLmNsYXNzTGlzdC5hZGQoJ2F4LWVycm9yLW1lc3NhZ2UnKTtcbiAgICAgICAgICAgIHBhcmVudC5hcHBlbmRDaGlsZChzcGFuKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgbGFiZWw/LmNsYXNzTGlzdC5hZGQoJ2F4LXN0YXRlLWVycm9yJyk7XG4gICAgICAgICAgdGFyZ2V0LmNsYXNzTGlzdC5hZGQoJ2F4LXN0YXRlLWVycm9yJyk7XG5cbiAgICAgICAgICB0aGlzLl9zdGF0ZSA9ICdlcnJvcic7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb25DaGFuZ2VDYWxsYmFjazogKHZhbHVlOiBUKSA9PiB2b2lkID0gbm9vcDtcblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiAodmFsdWU6IFQpID0+IHZvaWQpOiB2b2lkIHtcbiAgICB0aGlzLm9uQ2hhbmdlQ2FsbGJhY2sgPSBmbjtcbiAgfVxuXG4gIHdyaXRlVmFsdWUodmFsdWU6IFQpOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gIH1cblxuICBwdWJsaWMgY29tbWl0VmFsdWUodmFsdWU6IFQsIHUgPSBmYWxzZSkge1xuICAgIGlmICh1KSB7XG4gICAgICB0aGlzLm1hcmtBc1RvdWNoZWQoKTtcbiAgICAgIHRoaXMubWFya0FzRGlydHkoKTtcbiAgICAgIHRoaXMuX2lzVXNlckludGVyYWN0aW9uID0gdHJ1ZTtcbiAgICB9XG4gICAgdGhpcy53cml0ZVZhbHVlKHZhbHVlKTtcbiAgfVxuXG4gIHJlc2V0KGUgPSBmYWxzZSkge1xuICAgIHRoaXMuY29tbWl0VmFsdWUobnVsbCwgZSk7XG4gIH1cblxuICByZXNldEVycm9ycygpIHtcbiAgICB0aGlzLnNldFN0YXRlKCdjbGVhcicpO1xuICB9XG59XG4iXX0=","/**\n * Contains native event\n * @category Events\n */\nexport class AXEvent {\n constructor() {\n this.isUserInteraction = false;\n }\n}\n/**\n * Contains native event\n * @category Events\n */\nexport class AXHtmlEvent extends AXEvent {\n}\n/**\n * Contains native event\n * @category Events\n */\nexport class AXValueChangedEvent extends AXEvent {\n}\n/**\n * Contains native event\n * @category Events\n */\nexport class AXOptionChangedEvent extends AXEvent {\n}\n/**\n * Fires each time the user click the element.\n * @category Events\n */\nexport class AXClickEvent extends AXHtmlEvent {\n constructor() {\n super(...arguments);\n /**\n * uses for extra data\n */\n this.data = null;\n this.nativeEvent = null;\n }\n}\n/**\n * Fires each time the user click the element.\n * @category Events\n */\nexport class AXButtonClickEvent extends AXClickEvent {\n}\n/**\n * Fires each time the user click the element.\n * @category Events\n */\nexport class AXItemClickEvent extends AXClickEvent {\n}\n/**\n * Fires each time the component gets focused.\n * @category Events\n */\nexport class AXFocusEvent extends AXHtmlEvent {\n}\n/**\n * Fires each time an item or multiple items selected by the user or value.\n * @category Events\n */\nexport class AXSelectionValueChangedEvent extends AXValueChangedEvent {\n constructor() {\n super(...arguments);\n this.value = null;\n this.oldValue = null;\n this.selectedKeys = [];\n this.selectedItems = [];\n }\n}\n/**\n * Contains range start & end values\n * @category Events\n */\nexport class AXRangeChangedEvent extends AXEvent {\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnRzLmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY2RrL2NvbW1vbi9zcmMvbGliL2NsYXNzZXMvZXZlbnRzLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7R0FHRztBQUNILE1BQU0sT0FBTyxPQUFPO0lBQXBCO1FBVUUsc0JBQWlCLEdBQWEsS0FBSyxDQUFDO0lBQ3RDLENBQUM7Q0FBQTtBQUVEOzs7R0FHRztBQUNILE1BQU0sT0FBTyxXQUFxQyxTQUFRLE9BQU87Q0FFaEU7QUFFRDs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sbUJBQTZCLFNBQVEsT0FBTztDQUl4RDtBQUVEOzs7R0FHRztBQUNILE1BQU0sT0FBTyxvQkFBOEIsU0FBUSxPQUFPO0NBSXpEO0FBRUQ7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLFlBQWEsU0FBUSxXQUF1QjtJQUF6RDs7UUFDRTs7V0FFRztRQUNILFNBQUksR0FBUyxJQUFJLENBQUM7UUFFVCxnQkFBVyxHQUFTLElBQUksQ0FBQztJQUNwQyxDQUFDO0NBQUE7QUFFRDs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsWUFBWTtDQUVuRDtBQUVEOzs7R0FHRztBQUNILE1BQU0sT0FBTyxnQkFBMEIsU0FBUSxZQUFZO0NBRzFEO0FBRUQ7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLFlBQWEsU0FBUSxXQUF1QjtDQUFHO0FBRTVEOzs7R0FHRztBQUNILE1BQU0sT0FBTyw0QkFBNkIsU0FBUSxtQkFBZ0M7SUFBbEY7O1FBQ1csVUFBSyxHQUFTLElBQUksQ0FBQztRQUNuQixhQUFRLEdBQVMsSUFBSSxDQUFDO1FBQy9CLGlCQUFZLEdBQVcsRUFBRSxDQUFDO1FBQzFCLGtCQUFhLEdBQVcsRUFBRSxDQUFDO0lBQzdCLENBQUM7Q0FBQTtBQUVEOzs7R0FHRztBQUNILE1BQU0sT0FBTyxtQkFBdUIsU0FBUSxPQUFPO0NBU2xEIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiAgQ29udGFpbnMgbmF0aXZlIGV2ZW50XG4gKiBAY2F0ZWdvcnkgRXZlbnRzXG4gKi9cbmV4cG9ydCBjbGFzcyBBWEV2ZW50IHtcbiAgLyoqXG4gICAqICBUaGUgc2VuZGVyIGNvbXBvbmVudFxuICAgKi9cbiAgY29tcG9uZW50OiBhbnk7XG4gIC8qKlxuICAgKiAgVGhlIHJvb3QgbmF0aXZlIGVsZW1lbnRcbiAgICovXG4gIGh0bWxFbGVtZW50PzogSFRNTEVsZW1lbnQ7XG5cbiAgaXNVc2VySW50ZXJhY3Rpb24/OiBib29sZWFuID0gZmFsc2U7XG59XG5cbi8qKlxuICogIENvbnRhaW5zIG5hdGl2ZSBldmVudFxuICogQGNhdGVnb3J5IEV2ZW50c1xuICovXG5leHBvcnQgY2xhc3MgQVhIdG1sRXZlbnQ8RSBleHRlbmRzIEV2ZW50ID0gRXZlbnQ+IGV4dGVuZHMgQVhFdmVudCB7XG4gIG5hdGl2ZUV2ZW50PzogRTtcbn1cblxuLyoqXG4gKiAgQ29udGFpbnMgbmF0aXZlIGV2ZW50XG4gKiBAY2F0ZWdvcnkgRXZlbnRzXG4gKi9cbmV4cG9ydCBjbGFzcyBBWFZhbHVlQ2hhbmdlZEV2ZW50PFQgPSBhbnk+IGV4dGVuZHMgQVhFdmVudCB7XG4gIG5hbWU/OiBzdHJpbmc7XG4gIHZhbHVlPzogVDtcbiAgb2xkVmFsdWU/OiBUO1xufVxuXG4vKipcbiAqICBDb250YWlucyBuYXRpdmUgZXZlbnRcbiAqIEBjYXRlZ29yeSBFdmVudHNcbiAqL1xuZXhwb3J0IGNsYXNzIEFYT3B0aW9uQ2hhbmdlZEV2ZW50PFQgPSBhbnk+IGV4dGVuZHMgQVhFdmVudCB7XG4gIG5hbWU/OiBzdHJpbmc7XG4gIG5ld1ZhbHVlPzogVDtcbiAgb2xkVmFsdWU/OiBUO1xufVxuXG4vKipcbiAqICBGaXJlcyBlYWNoIHRpbWUgdGhlIHVzZXIgY2xpY2sgdGhlIGVsZW1lbnQuXG4gKiBAY2F0ZWdvcnkgRXZlbnRzXG4gKi9cbmV4cG9ydCBjbGFzcyBBWENsaWNrRXZlbnQgZXh0ZW5kcyBBWEh0bWxFdmVudDxNb3VzZUV2ZW50PiB7XG4gIC8qKlxuICAgKiAgdXNlcyBmb3IgZXh0cmEgZGF0YVxuICAgKi9cbiAgZGF0YT86IGFueSA9IG51bGw7XG5cbiAgb3ZlcnJpZGUgbmF0aXZlRXZlbnQ/OiBhbnkgPSBudWxsO1xufVxuXG4vKipcbiAqICBGaXJlcyBlYWNoIHRpbWUgdGhlIHVzZXIgY2xpY2sgdGhlIGVsZW1lbnQuXG4gKiBAY2F0ZWdvcnkgRXZlbnRzXG4gKi9cbmV4cG9ydCBjbGFzcyBBWEJ1dHRvbkNsaWNrRXZlbnQgZXh0ZW5kcyBBWENsaWNrRXZlbnQge1xuICBuYW1lOiBzdHJpbmc7XG59XG5cbi8qKlxuICogIEZpcmVzIGVhY2ggdGltZSB0aGUgdXNlciBjbGljayB0aGUgZWxlbWVudC5cbiAqIEBjYXRlZ29yeSBFdmVudHNcbiAqL1xuZXhwb3J0IGNsYXNzIEFYSXRlbUNsaWNrRXZlbnQ8VCA9IGFueT4gZXh0ZW5kcyBBWENsaWNrRXZlbnQge1xuICBuYW1lPzogc3RyaW5nO1xuICBpdGVtOiBUO1xufVxuXG4vKipcbiAqICBGaXJlcyBlYWNoIHRpbWUgdGhlIGNvbXBvbmVudCBnZXRzIGZvY3VzZWQuXG4gKiBAY2F0ZWdvcnkgRXZlbnRzXG4gKi9cbmV4cG9ydCBjbGFzcyBBWEZvY3VzRXZlbnQgZXh0ZW5kcyBBWEh0bWxFdmVudDxGb2N1c0V2ZW50PiB7fVxuXG4vKipcbiAqICBGaXJlcyBlYWNoIHRpbWUgYW4gaXRlbSBvciBtdWx0aXBsZSBpdGVtcyBzZWxlY3RlZCBieSB0aGUgdXNlciBvciB2YWx1ZS5cbiAqIEBjYXRlZ29yeSBFdmVudHNcbiAqL1xuZXhwb3J0IGNsYXNzIEFYU2VsZWN0aW9uVmFsdWVDaGFuZ2VkRXZlbnQgZXh0ZW5kcyBBWFZhbHVlQ2hhbmdlZEV2ZW50PGFueSB8IGFueVtdPiB7XG4gIG92ZXJyaWRlIHZhbHVlPzogYW55ID0gbnVsbDtcbiAgb3ZlcnJpZGUgb2xkVmFsdWU/OiBhbnkgPSBudWxsO1xuICBzZWxlY3RlZEtleXM/OiBhbnlbXSA9IFtdO1xuICBzZWxlY3RlZEl0ZW1zPzogYW55W10gPSBbXTtcbn1cblxuLyoqXG4gKiAgQ29udGFpbnMgcmFuZ2Ugc3RhcnQgJiBlbmQgdmFsdWVzXG4gKiBAY2F0ZWdvcnkgRXZlbnRzXG4gKi9cbmV4cG9ydCBjbGFzcyBBWFJhbmdlQ2hhbmdlZEV2ZW50PFQ+IGV4dGVuZHMgQVhFdmVudCB7XG4gIC8qKlxuICAgKiAgVGhlIHJhbmdlIHN0YXJ0IHZhbHVlXG4gICAqL1xuICBzdGFydD86IFQ7XG4gIC8qKlxuICAgKiAgVGhlIHJhbmdlIGVuZCB2YWx1ZVxuICAgKi9cbiAgZW5kPzogVDtcbn1cbiJdfQ==","import { EventEmitter, Injectable } from '@angular/core';\nimport { isEqual } from 'lodash-es';\nimport { MXValueComponent } from '../components/value-component.class';\nimport { AXEvent } from './events.class';\nimport * as i0 from \"@angular/core\";\nexport const TAB_META_KEY = '__meta__';\nexport class AXComponentCloseEvent extends AXEvent {\n}\nexport class AXComponentClosing {\n constructor() {\n this.cancel = false;\n }\n}\nexport class AXComponentResult {\n}\n/**\n * Defines a CSS class—or multiple classes separated by spaces— which are applied to a span element inside the Button. Allows the usage of custom icons after the primary text.\n */\nexport class AXComponentClosedPromise extends Promise {\n constructor(executor) {\n super(executor);\n }\n close() {\n if (this.closeMethod) {\n this.closeMethod();\n }\n }\n}\nexport class AXComponent {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXComponent, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXComponent }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXComponent, decorators: [{\n type: Injectable\n }] });\nexport class AXClosableComponent extends AXComponent {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXClosableComponent, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXClosableComponent }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXClosableComponent, decorators: [{\n type: Injectable\n }] });\nexport class AXClearableComponent extends AXComponent {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXClearableComponent, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXClearableComponent }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXClearableComponent, decorators: [{\n type: Injectable\n }] });\nexport class AXSearchableComponent extends AXComponent {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXSearchableComponent, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXSearchableComponent }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXSearchableComponent, decorators: [{\n type: Injectable\n }] });\nexport class AXValuableComponent extends AXComponent {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXValuableComponent, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXValuableComponent }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXValuableComponent, decorators: [{\n type: Injectable\n }] });\nexport class AXFocusableComponent extends AXComponent {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXFocusableComponent, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXFocusableComponent }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXFocusableComponent, decorators: [{\n type: Injectable\n }] });\nexport class AXPagedComponent extends AXComponent {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXPagedComponent, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXPagedComponent }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXPagedComponent, decorators: [{\n type: Injectable\n }] });\nexport class AXAutocompleteParentComponent extends MXValueComponent {\n constructor() {\n super(...arguments);\n this.onKeyDown = new EventEmitter();\n this.onItemSelected = new EventEmitter();\n }\n emitOnItemSelected(value, isUserInteraction = false) {\n if (isEqual(value, this.oldInputEmitValue))\n return;\n this.onItemSelected.emit({\n value,\n name: this.name,\n component: this,\n isUserInteraction,\n oldValue: this.oldInputEmitValue,\n htmlElement: this.getHostElement(),\n });\n this.oldInputEmitValue = value;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXAutocompleteParentComponent, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXAutocompleteParentComponent }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXAutocompleteParentComponent, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50cy5jbGFzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2Nkay9jb21tb24vc3JjL2xpYi9jbGFzc2VzL2NvbXBvbmVudHMuY2xhc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNwQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsT0FBTyxFQUFvQyxNQUFNLGdCQUFnQixDQUFDOztBQUUzRSxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsVUFBVSxDQUFDO0FBRXZDLE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxPQUFPO0NBRWpEO0FBQ0QsTUFBTSxPQUFPLGtCQUFrQjtJQUEvQjtRQUNFLFdBQU0sR0FBRyxLQUFLLENBQUM7SUFFakIsQ0FBQztDQUFBO0FBRUQsTUFBTSxPQUFPLGlCQUFpQjtDQUc3QjtBQVFEOztHQUVHO0FBQ0gsTUFBTSxPQUFPLHdCQUF5QixTQUFRLE9BQTBCO0lBRXRFLFlBQ0UsUUFHUztRQUVULEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNsQixDQUFDO0lBRU0sS0FBSztRQUNWLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3JCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNyQixDQUFDO0lBQ0gsQ0FBQztDQUNGO0FBR0QsTUFBTSxPQUFnQixXQUFXOzhHQUFYLFdBQVc7a0hBQVgsV0FBVzs7MkZBQVgsV0FBVztrQkFEaEMsVUFBVTs7QUFJWCxNQUFNLE9BQWdCLG1CQUFvQixTQUFRLFdBQVc7OEdBQXZDLG1CQUFtQjtrSEFBbkIsbUJBQW1COzsyRkFBbkIsbUJBQW1CO2tCQUR4QyxVQUFVOztBQU9YLE1BQU0sT0FBZ0Isb0JBQXFCLFNBQVEsV0FBVzs4R0FBeEMsb0JBQW9CO2tIQUFwQixvQkFBb0I7OzJGQUFwQixvQkFBb0I7a0JBRHpDLFVBQVU7O0FBU1gsTUFBTSxPQUFnQixxQkFBc0IsU0FBUSxXQUFXOzhHQUF6QyxxQkFBcUI7a0hBQXJCLHFCQUFxQjs7MkZBQXJCLHFCQUFxQjtrQkFEMUMsVUFBVTs7QUFNWCxNQUFNLE9BQWdCLG1CQUFvQixTQUFRLFdBQVc7OEdBQXZDLG1CQUFtQjtrSEFBbkIsbUJBQW1COzsyRkFBbkIsbUJBQW1CO2tCQUR4QyxVQUFVOztBQW1CWCxNQUFNLE9BQWdCLG9CQUFxQixTQUFRLFdBQVc7OEdBQXhDLG9CQUFvQjtrSEFBcEIsb0JBQW9COzsyRkFBcEIsb0JBQW9CO2tCQUR6QyxVQUFVOztBQWFYLE1BQU0sT0FBZ0IsZ0JBQWlCLFNBQVEsV0FBVzs4R0FBcEMsZ0JBQWdCO2tIQUFoQixnQkFBZ0I7OzJGQUFoQixnQkFBZ0I7a0JBRHJDLFVBQVU7O0FBU1gsTUFBTSxPQUFnQiw2QkFBaUMsU0FBUSxnQkFBbUI7SUFEbEY7O1FBS0UsY0FBUyxHQUFHLElBQUksWUFBWSxFQUE4QixDQUFDO1FBQzNELG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQTBCLENBQUM7S0FjN0Q7SUFaQyxrQkFBa0IsQ0FBQyxLQUFRLEVBQUUsaUJBQWlCLEdBQUcsS0FBSztRQUNwRCxJQUFJLE9BQU8sQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDO1lBQUUsT0FBTztRQUNuRCxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQztZQUN2QixLQUFLO1lBQ0wsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQ2YsU0FBUyxFQUFFLElBQUk7WUFDZixpQkFBaUI7WUFDakIsUUFBUSxFQUFFLElBQUksQ0FBQyxpQkFBaUI7WUFDaEMsV0FBVyxFQUFFLElBQUksQ0FBQyxjQUFjLEVBQUU7U0FDbkMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEtBQUssQ0FBQztJQUNqQyxDQUFDOzhHQWxCbUIsNkJBQTZCO2tIQUE3Qiw2QkFBNkI7OzJGQUE3Qiw2QkFBNkI7a0JBRGxELFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFVuc3Vic2NyaWJlciB9IGZyb20gJ0BhY29yZXgvY29yZS91dGlscyc7XG5pbXBvcnQgeyBBWFZhbGlkYXRpb25SdWxlT3B0aW9ucywgQVhWYWxpZGF0aW9uU3VtbWFyeSB9IGZyb20gJ0BhY29yZXgvY29yZS92YWxpZGF0aW9uJztcbmltcG9ydCB7IEV2ZW50RW1pdHRlciwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgaXNFcXVhbCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBNWFZhbHVlQ29tcG9uZW50IH0gZnJvbSAnLi4vY29tcG9uZW50cy92YWx1ZS1jb21wb25lbnQuY2xhc3MnO1xuaW1wb3J0IHsgQVhFdmVudCwgQVhIdG1sRXZlbnQsIEFYVmFsdWVDaGFuZ2VkRXZlbnQgfSBmcm9tICcuL2V2ZW50cy5jbGFzcyc7XG5cbmV4cG9ydCBjb25zdCBUQUJfTUVUQV9LRVkgPSAnX19tZXRhX18nO1xuXG5leHBvcnQgY2xhc3MgQVhDb21wb25lbnRDbG9zZUV2ZW50IGV4dGVuZHMgQVhFdmVudCB7XG4gIGRhdGE/OiBhbnk7XG59XG5leHBvcnQgY2xhc3MgQVhDb21wb25lbnRDbG9zaW5nIHtcbiAgY2FuY2VsID0gZmFsc2U7XG4gIGRhdGE/OiBhbnk7XG59XG5cbmV4cG9ydCBjbGFzcyBBWENvbXBvbmVudFJlc3VsdCB7XG4gIHNlbmRlcjogYW55O1xuICBkYXRhPzogYW55O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFYRm9ybVZhbGlkYXRpb25SdWxlIHtcbiAgcnVsZTogc3RyaW5nO1xuICBkaXNhYmxlZDogYm9vbGVhbjtcbiAgb3B0aW9ucz86IEFYVmFsaWRhdGlvblJ1bGVPcHRpb25zO1xufVxuXG4vKipcbiAqICBEZWZpbmVzIGEgQ1NTIGNsYXNz4oCUb3IgbXVsdGlwbGUgY2xhc3NlcyBzZXBhcmF0ZWQgYnkgc3BhY2Vz4oCUIHdoaWNoIGFyZSBhcHBsaWVkIHRvIGEgc3BhbiBlbGVtZW50IGluc2lkZSB0aGUgQnV0dG9uLiBBbGxvd3MgdGhlIHVzYWdlIG9mIGN1c3RvbSBpY29ucyBhZnRlciB0aGUgcHJpbWFyeSB0ZXh0LlxuICovXG5leHBvcnQgY2xhc3MgQVhDb21wb25lbnRDbG9zZWRQcm9taXNlIGV4dGVuZHMgUHJvbWlzZTxBWENvbXBvbmVudFJlc3VsdD4ge1xuICBwcml2YXRlIGNsb3NlTWV0aG9kOiAoKSA9PiB2b2lkO1xuICBjb25zdHJ1Y3RvcihcbiAgICBleGVjdXRvcjogKFxuICAgICAgcmVzb2x2ZTogKHZhbHVlPzogQVhDb21wb25lbnRSZXN1bHQgfCBQcm9taXNlTGlrZTxBWENvbXBvbmVudFJlc3VsdD4pID0+IHZvaWQsXG4gICAgICByZWplY3Q6IChyZWFzb24/OiBhbnkpID0+IHZvaWQsXG4gICAgKSA9PiB2b2lkLFxuICApIHtcbiAgICBzdXBlcihleGVjdXRvcik7XG4gIH1cblxuICBwdWJsaWMgY2xvc2UoKSB7XG4gICAgaWYgKHRoaXMuY2xvc2VNZXRob2QpIHtcbiAgICAgIHRoaXMuY2xvc2VNZXRob2QoKTtcbiAgICB9XG4gIH1cbn1cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFYQ29tcG9uZW50IHt9XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBWENsb3NhYmxlQ29tcG9uZW50IGV4dGVuZHMgQVhDb21wb25lbnQge1xuICBhYnN0cmFjdCBjbG9zZSgpOiB2b2lkO1xuICBhYnN0cmFjdCBjbG9zZUFsbCgpOiB2b2lkO1xufVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQVhDbGVhcmFibGVDb21wb25lbnQgZXh0ZW5kcyBBWENvbXBvbmVudCB7XG4gIGFic3RyYWN0IHJlc2V0KHU6IGJvb2xlYW4pOiB2b2lkO1xuICBhYnN0cmFjdCBnZXQgcmVhZG9ubHkoKTogYm9vbGVhbjtcbiAgYWJzdHJhY3QgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW47XG4gIGFic3RyYWN0IGdldCB2YWx1ZSgpOiB1bmtub3duO1xufVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQVhTZWFyY2hhYmxlQ29tcG9uZW50IGV4dGVuZHMgQVhDb21wb25lbnQge1xuICBhYnN0cmFjdCBzZWFyY2godmFsdWU6IHN0cmluZyk6IHZvaWQ7XG59XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBWFZhbHVhYmxlQ29tcG9uZW50IGV4dGVuZHMgQVhDb21wb25lbnQge1xuICBhYnN0cmFjdCBnZXQgaXNSZXF1aXJlZCgpOiBib29sZWFuO1xuICB2YWxpZGF0aW9uUnVsZXNDaGFuZ2U6IEV2ZW50RW1pdHRlcjxBWEZvcm1WYWxpZGF0aW9uUnVsZVtdPjtcbiAgYWJzdHJhY3QgZ2V0IG5hbWUoKTogc3RyaW5nO1xuICBhYnN0cmFjdCBnZXQgdmFsdWUoKTogdW5rbm93bjtcbiAgYWJzdHJhY3Qgb25WYWx1ZUNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxBWFZhbHVlQ2hhbmdlZEV2ZW50PHVua25vd24+PjtcbiAgYWJzdHJhY3QgY29tbWl0VmFsdWUodmFsdWU6IHVua25vd24sIHU6IGJvb2xlYW4pO1xuXG4gIGFic3RyYWN0IGFkZFZhbGlkYXRpb25SdWxlKHJ1bGU6IEFYRm9ybVZhbGlkYXRpb25SdWxlKTtcblxuICBhYnN0cmFjdCByZW1vdmVWYWxpZGF0aW9uUnVsZShydWxlOiBBWEZvcm1WYWxpZGF0aW9uUnVsZSk7XG5cbiAgYWJzdHJhY3QgdmFsaWRhdGUoKTogUHJvbWlzZTxBWFZhbGlkYXRpb25TdW1tYXJ5PjtcbiAgYWJzdHJhY3QgcmVzZXQoZTogYm9vbGVhbik6IHZvaWQ7XG4gIGFic3RyYWN0IHJlc2V0RXJyb3JzKCk6IHZvaWQ7XG59XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBWEZvY3VzYWJsZUNvbXBvbmVudCBleHRlbmRzIEFYQ29tcG9uZW50IHtcbiAgYWJzdHJhY3QgZm9jdXMoKTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBWFBhZ2VkQ29tcG9uZW50SW50ZXJmYWNlIHtcbiAgZ29Ub1BhZ2UocGFnZTogbnVtYmVyKTtcbiAgZ2V0IHRvdGFsQ291bnQoKTogbnVtYmVyO1xuICBnZXQgcGFnZVNpemUoKTogbnVtYmVyO1xuICBvblBhZ2VDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8QVhWYWx1ZUNoYW5nZWRFdmVudDxudW1iZXI+Pjtcbn1cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFYUGFnZWRDb21wb25lbnQgZXh0ZW5kcyBBWENvbXBvbmVudCBpbXBsZW1lbnRzIEFYUGFnZWRDb21wb25lbnRJbnRlcmZhY2Uge1xuICBhYnN0cmFjdCBnb1RvUGFnZShwYWdlOiBudW1iZXIpO1xuICBhYnN0cmFjdCBnZXQgdG90YWxDb3VudCgpOiBudW1iZXI7XG4gIGFic3RyYWN0IHBhZ2VTaXplOiBudW1iZXI7XG4gIGFic3RyYWN0IG9uUGFnZUNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxBWFZhbHVlQ2hhbmdlZEV2ZW50PG51bWJlcj4+O1xufVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQVhBdXRvY29tcGxldGVQYXJlbnRDb21wb25lbnQ8VD4gZXh0ZW5kcyBNWFZhbHVlQ29tcG9uZW50PFQ+IHtcbiAgb2xkSW5wdXRFbWl0VmFsdWU6IFQ7XG4gIGFic3RyYWN0IHVuc3Vic2NyaWJlcjogQVhVbnN1YnNjcmliZXI7XG5cbiAgb25LZXlEb3duID0gbmV3IEV2ZW50RW1pdHRlcjxBWEh0bWxFdmVudDxLZXlib2FyZEV2ZW50Pj4oKTtcbiAgb25JdGVtU2VsZWN0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPEFYVmFsdWVDaGFuZ2VkRXZlbnQ8VD4+KCk7XG5cbiAgZW1pdE9uSXRlbVNlbGVjdGVkKHZhbHVlOiBULCBpc1VzZXJJbnRlcmFjdGlvbiA9IGZhbHNlKSB7XG4gICAgaWYgKGlzRXF1YWwodmFsdWUsIHRoaXMub2xkSW5wdXRFbWl0VmFsdWUpKSByZXR1cm47XG4gICAgdGhpcy5vbkl0ZW1TZWxlY3RlZC5lbWl0KHtcbiAgICAgIHZhbHVlLFxuICAgICAgbmFtZTogdGhpcy5uYW1lLFxuICAgICAgY29tcG9uZW50OiB0aGlzLFxuICAgICAgaXNVc2VySW50ZXJhY3Rpb24sXG4gICAgICBvbGRWYWx1ZTogdGhpcy5vbGRJbnB1dEVtaXRWYWx1ZSxcbiAgICAgIGh0bWxFbGVtZW50OiB0aGlzLmdldEhvc3RFbGVtZW50KCksXG4gICAgfSk7XG4gICAgdGhpcy5vbGRJbnB1dEVtaXRWYWx1ZSA9IHZhbHVlO1xuICB9XG59XG4iXX0=","import { DataSource } from '@angular/cdk/collections';\nimport { BehaviorSubject, Subscription, debounceTime, distinctUntilChanged } from 'rxjs';\nexport class AXListDataSource extends DataSource {\n get range() {\n return this._range;\n }\n /**\n * @ignore\n */\n constructor(config) {\n super();\n this.config = config;\n this.debounceTime = 0;\n this.subscription = new Subscription();\n this._range = { start: 0, end: 0 };\n this.source = config.source;\n if (config.debounceTime)\n this.debounceTime = config.debounceTime;\n //\n this.dataStream = new BehaviorSubject(this.config.source.cachedItems);\n this.source.onChanged.subscribe((data) => {\n this.dataStream.next(data.cachedItems);\n });\n }\n connect(collectionViewer) {\n this.subscription.add(collectionViewer.viewChange\n .pipe(debounceTime(this.debounceTime))\n .pipe(distinctUntilChanged())\n .subscribe((range) => {\n this._range = range;\n const startPage = this.getPageForIndex(range.start);\n const endPage = this.getPageForIndex(range.end - 1);\n for (let i = startPage; i <= endPage; i++) {\n this.source.setPage(i);\n }\n }));\n return this.dataStream;\n }\n disconnect() {\n this.subscription.unsubscribe();\n }\n getPageForIndex(index) {\n return Math.floor(index / this.source.config.pageSize);\n }\n refresh() {\n this.dataStream.next(new Array(this.source.pageSize));\n this.source.refresh();\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWxpc3QuY2xhc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jZGsvY29tbW9uL3NyYy9saWIvY2xhc3Nlcy9kYXRhbGlzdC5jbGFzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW9CLFVBQVUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxlQUFlLEVBQWMsWUFBWSxFQUFFLFlBQVksRUFBRSxvQkFBb0IsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQWlCckcsTUFBTSxPQUFPLGdCQUE4QixTQUFRLFVBQWE7SUFPOUQsSUFBVyxLQUFLO1FBQ2QsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7SUFFRDs7T0FFRztJQUNILFlBQW9CLE1BQTBEO1FBQzVFLEtBQUssRUFBRSxDQUFDO1FBRFUsV0FBTSxHQUFOLE1BQU0sQ0FBb0Q7UUFidEUsaUJBQVksR0FBRyxDQUFDLENBQUM7UUFDakIsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBSWxDLFdBQU0sR0FBbUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQztRQVVwRSxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUM7UUFDNUIsSUFBSSxNQUFNLENBQUMsWUFBWTtZQUFFLElBQUksQ0FBQyxZQUFZLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQztRQUNqRSxFQUFFO1FBQ0YsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLGVBQWUsQ0FBTSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUMzRSxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUN2QyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDekMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsT0FBTyxDQUFDLGdCQUFrQztRQUN4QyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FDbkIsZ0JBQWdCLENBQUMsVUFBVTthQUN4QixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQzthQUNyQyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQzthQUM1QixTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUNuQixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztZQUNwQixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNwRCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDcEQsS0FBSyxJQUFJLENBQUMsR0FBRyxTQUFTLEVBQUUsQ0FBQyxJQUFJLE9BQU8sRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO2dCQUMxQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN6QixDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQ0wsQ0FBQztRQUNGLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUN6QixDQUFDO0lBRUQsVUFBVTtRQUNSLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDbEMsQ0FBQztJQUVPLGVBQWUsQ0FBQyxLQUFhO1FBQ25DLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVELE9BQU87UUFDTCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7UUFDdEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUN4QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb2xsZWN0aW9uVmlld2VyLCBEYXRhU291cmNlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvbGxlY3Rpb25zJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9uLCBkZWJvdW5jZVRpbWUsIGRpc3RpbmN0VW50aWxDaGFuZ2VkIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBWERhdGFTb3VyY2UgfSBmcm9tICcuL2RhdGFzb3VyY2UuY2xhc3MnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFYRGF0YUxpc3RRdWVyeSB7XG4gIHRha2U/OiBudW1iZXI7XG4gIHNraXA/OiBudW1iZXI7XG4gIHNlYXJjaFF1ZXJ5Pzogc3RyaW5nO1xufVxuZXhwb3J0IGludGVyZmFjZSBBWERhdGFMaXN0RmV0Y2hDYWxsYmFja1Jlc3VsdCB7XG4gIGl0ZW1zOiBBcnJheTxhbnk+O1xuICB0b3RhbDogbnVtYmVyO1xufVxuXG5leHBvcnQgdHlwZSBBWERhdGFMaXN0RmV0Y2hEYXRhQ2FsbGJhY2sgPSAoZTogQVhEYXRhTGlzdFF1ZXJ5KSA9PiBQcm9taXNlPEFYRGF0YUxpc3RGZXRjaENhbGxiYWNrUmVzdWx0PjtcblxuZXhwb3J0IHR5cGUgQVhEYXRhTGlzdEl0ZW1zID0gQXJyYXk8YW55PiB8IEFYRGF0YUxpc3RGZXRjaERhdGFDYWxsYmFjaztcblxuZXhwb3J0IGNsYXNzIEFYTGlzdERhdGFTb3VyY2U8VCA9IHVua25vd24+IGV4dGVuZHMgRGF0YVNvdXJjZTxUPiB7XG4gIHByaXZhdGUgZGVib3VuY2VUaW1lID0gMDtcbiAgcHJpdmF0ZSBzdWJzY3JpcHRpb24gPSBuZXcgU3Vic2NyaXB0aW9uKCk7XG4gIHB1YmxpYyBzb3VyY2U6IEFYRGF0YVNvdXJjZTxUPjtcbiAgcHJpdmF0ZSBkYXRhU3RyZWFtOiBCZWhhdmlvclN1YmplY3Q8VFtdPjtcblxuICBwcml2YXRlIF9yYW5nZTogeyBzdGFydDogbnVtYmVyOyBlbmQ6IG51bWJlciB9ID0geyBzdGFydDogMCwgZW5kOiAwIH07XG4gIHB1YmxpYyBnZXQgcmFuZ2UoKTogeyBzdGFydDogbnVtYmVyOyBlbmQ6IG51bWJlciB9IHtcbiAgICByZXR1cm4gdGhpcy5fcmFuZ2U7XG4gIH1cblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjb25maWc6IHsgc291cmNlOiBBWERhdGFTb3VyY2U8VD47IGRlYm91bmNlVGltZT86IG51bWJlciB9KSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLnNvdXJjZSA9IGNvbmZpZy5zb3VyY2U7XG4gICAgaWYgKGNvbmZpZy5kZWJvdW5jZVRpbWUpIHRoaXMuZGVib3VuY2VUaW1lID0gY29uZmlnLmRlYm91bmNlVGltZTtcbiAgICAvL1xuICAgIHRoaXMuZGF0YVN0cmVhbSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8VFtdPih0aGlzLmNvbmZpZy5zb3VyY2UuY2FjaGVkSXRlbXMpO1xuICAgIHRoaXMuc291cmNlLm9uQ2hhbmdlZC5zdWJzY3JpYmUoKGRhdGEpID0+IHtcbiAgICAgIHRoaXMuZGF0YVN0cmVhbS5uZXh0KGRhdGEuY2FjaGVkSXRlbXMpO1xuICAgIH0pO1xuICB9XG5cbiAgY29ubmVjdChjb2xsZWN0aW9uVmlld2VyOiBDb2xsZWN0aW9uVmlld2VyKTogT2JzZXJ2YWJsZTxUW10+IHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbi5hZGQoXG4gICAgICBjb2xsZWN0aW9uVmlld2VyLnZpZXdDaGFuZ2VcbiAgICAgICAgLnBpcGUoZGVib3VuY2VUaW1lKHRoaXMuZGVib3VuY2VUaW1lKSlcbiAgICAgICAgLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKSlcbiAgICAgICAgLnN1YnNjcmliZSgocmFuZ2UpID0+IHtcbiAgICAgICAgICB0aGlzLl9yYW5nZSA9IHJhbmdlO1xuICAgICAgICAgIGNvbnN0IHN0YXJ0UGFnZSA9IHRoaXMuZ2V0UGFnZUZvckluZGV4KHJhbmdlLnN0YXJ0KTtcbiAgICAgICAgICBjb25zdCBlbmRQYWdlID0gdGhpcy5nZXRQYWdlRm9ySW5kZXgocmFuZ2UuZW5kIC0gMSk7XG4gICAgICAgICAgZm9yIChsZXQgaSA9IHN0YXJ0UGFnZTsgaSA8PSBlbmRQYWdlOyBpKyspIHtcbiAgICAgICAgICAgIHRoaXMuc291cmNlLnNldFBhZ2UoaSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KSxcbiAgICApO1xuICAgIHJldHVybiB0aGlzLmRhdGFTdHJlYW07XG4gIH1cblxuICBkaXNjb25uZWN0KCk6IHZvaWQge1xuICAgIHRoaXMuc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwcml2YXRlIGdldFBhZ2VGb3JJbmRleChpbmRleDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICByZXR1cm4gTWF0aC5mbG9vcihpbmRleCAvIHRoaXMuc291cmNlLmNvbmZpZy5wYWdlU2l6ZSk7XG4gIH1cblxuICByZWZyZXNoKCkge1xuICAgIHRoaXMuZGF0YVN0cmVhbS5uZXh0KG5ldyBBcnJheSh0aGlzLnNvdXJjZS5wYWdlU2l6ZSkpO1xuICAgIHRoaXMuc291cmNlLnJlZnJlc2goKTtcbiAgfVxufVxuIl19","import { Subject } from 'rxjs';\nexport class AXDataSource {\n get totalCount() {\n return this._totalCount;\n }\n get totalPages() {\n return Math.ceil(this.totalCount / this.config.pageSize);\n }\n get pageSize() {\n return this.config.pageSize;\n }\n get cachedItems() {\n return this._cachedItems;\n }\n get items() {\n return this._items;\n }\n get query() {\n return this._query;\n }\n get isLoading() {\n return this._isLoading;\n }\n constructor(config) {\n this.useCache = true;\n this._totalCount = 0;\n this._items = [];\n this.fetchedPages = new Set();\n this._page = 0;\n this._query = { skip: 0, take: 0, sort: [] };\n this.onChanged = new Subject();\n this.onItemExpanded = new Subject();\n this.onItemRefreshChildren = new Subject();\n this.onLoadingChanged = new Subject();\n this._isLoading = false;\n this.config = config;\n this._cachedItems = new Array(this.config.pageSize);\n this._items = new Array(0);\n this._query.take = this.config.pageSize;\n }\n load() {\n const page = this._page;\n if (this.fetchedPages.has(page) && this.useCache) {\n return;\n }\n this.setLoadingState(true);\n this.fetchedPages.add(page);\n this._query.take = this.config.pageSize;\n this._query.skip = page * this.config.pageSize;\n this.config\n .load({ ...this._query })\n .then((result) => {\n if (this._totalCount != result.total) {\n this._cachedItems = new Array(result.total);\n this._totalCount = result.total;\n }\n this._items = result.items;\n this._cachedItems.splice(page * this.config.pageSize, this.config.pageSize, ...result.items);\n const event = {\n cachedItems: this.cachedItems,\n items: this.items,\n page: page,\n totalCount: this.totalCount,\n totalPages: this.totalPages,\n };\n this.onChanged.next(event);\n })\n .finally(() => {\n this.setLoadingState(false);\n });\n }\n async getItemsByFilter(filter) {\n return await this.config.load({ ...this.query, filter });\n }\n setLoadingState(value) {\n this._isLoading = value;\n this.onLoadingChanged.next(this._isLoading);\n }\n setPage(page) {\n if (this._page != page || this._items.length == 0) {\n this._page = page;\n this.load();\n }\n }\n setPageSize(pageSize) {\n this.config.pageSize = pageSize;\n this.load();\n }\n filter(value) {\n this._query.filter = value;\n }\n sort(...value) {\n this._query.sort = value;\n }\n clearFilter() {\n this._query.filter = null;\n }\n reset() {\n this._query.filter = null;\n this._query.sort = [];\n this._query.skip = 0;\n this._items = new Array(0);\n this._cachedItems = new Array(this.config.pageSize);\n this.fetchedPages.clear();\n this._page = 0;\n this._totalCount = 0;\n }\n refresh() {\n const currentFilter = this._query.filter;\n const currentSort = this._query.sort;\n this.reset();\n this._query.filter = currentFilter;\n this._query.sort = currentSort;\n this.load();\n }\n find(key) {\n const fromCache = this.cachedItems.find((c) => (!this.config.key && c == key) || (c && this.config.key && c[this.config.key] == key));\n if (fromCache)\n return fromCache;\n return this.config.byKey ? this.config.byKey(key) : null;\n }\n}\nexport function convertArrayToDataSource(items, options = { key: 'id', pageSize: 100 }) {\n const config = {\n key: options.key,\n pageSize: options.pageSize,\n load: async (e) => {\n const result = e.filter ? handleSearch(items, e.filter) : items;\n return {\n items: result.slice(e.skip, e.skip + e.take),\n total: result.length,\n };\n },\n byKey: (v) => Promise.resolve(items.find((c) => {\n return c[options.key] == v;\n })),\n };\n const handleSearch = (items, filter) => {\n if (!filter?.field || filter.value === undefined || filter.value === null) {\n return items; // No filter applied\n }\n return items.filter((item) => {\n const itemField = item[filter.field];\n if (typeof itemField === 'string' && typeof filter.value === 'string') {\n return itemField.toLowerCase().includes(filter.value.toLowerCase());\n }\n return false; // Return false if itemField isn't comparable\n });\n };\n return new AXDataSource(config);\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YXNvdXJjZS5jbGFzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2Nkay9jb21tb24vc3JjL2xpYi9jbGFzc2VzL2RhdGFzb3VyY2UuY2xhc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQW1EL0IsTUFBTSxPQUFPLFlBQVk7SUFLdkIsSUFBVyxVQUFVO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUMxQixDQUFDO0lBRUQsSUFBVyxVQUFVO1FBQ25CLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVELElBQVcsUUFBUTtRQUNqQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDO0lBQzlCLENBQUM7SUFHRCxJQUFXLFdBQVc7UUFDcEIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQzNCLENBQUM7SUFHRCxJQUFXLEtBQUs7UUFDZCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztJQU1ELElBQVcsS0FBSztRQUNkLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBU0QsSUFBVyxTQUFTO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUN6QixDQUFDO0lBRUQsWUFBWSxNQUE2QjtRQTVDekMsYUFBUSxHQUFHLElBQUksQ0FBQztRQUVSLGdCQUFXLEdBQUcsQ0FBQyxDQUFDO1FBa0JoQixXQUFNLEdBQVEsRUFBRSxDQUFDO1FBS2pCLGlCQUFZLEdBQUcsSUFBSSxHQUFHLEVBQVUsQ0FBQztRQUNqQyxVQUFLLEdBQUcsQ0FBQyxDQUFDO1FBQ1YsV0FBTSxHQUFzQixFQUFFLElBQUksRUFBRSxDQUFDLEVBQUUsSUFB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QUMzQixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBVyxDQUFDO1lBRS9DLElBQUksT0FBTyxTQUFTLEtBQUssUUFBUSxJQUFJLE9BQU8sTUFBTSxDQUFDLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztnQkFDdEUsT0FBTyxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztZQUN0RSxDQUFDO1lBRUQsT0FBTyxLQUFLLENBQUMsQ0FBQyw2Q0FBNkM7UUFDN0QsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUM7SUFFRixPQUFPLElBQUksWUFBWSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBQ2xDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCB0eXBlIEFYRGF0YVNvdXJjZU9wZXJhdG9yID0ge1xuICB0eXBlOiAnZXF1YWwnIHwgJ2lzTnVsbCcgfCAnaXNFbXB0eScgfCAnbHQnIHwgJ2x0ZScgfCAnZ3QnIHwgJ2d0ZScgfCAnc3RhcnRzV2l0aCcgfCAnZW5kc1dpdGgnIHwgJ2NvbnRhaW5zJztcbiAgbmVnYXRpdmU/OiBib29sZWFuO1xufTtcbmV4cG9ydCB0eXBlIEFYRmlsdGVyTG9naWMgPSAnYW5kJyB8ICdvcic7XG5leHBvcnQgdHlwZSBBWFNvcnRPcmRlciA9ICdhc2MnIHwgJ2Rlc2MnO1xuXG5leHBvcnQgdHlwZSBBWERhdGFTb3VyY2VGaWx0ZXJPcHRpb24gPSB7XG4gIGZpZWxkPzogc3RyaW5nO1xuICB2YWx1ZT86IHVua25vd247XG4gIG9wZXJhdG9yPzogQVhEYXRhU291cmNlT3BlcmF0b3I7XG4gIGxvZ2ljPzogQVhGaWx0ZXJMb2dpYztcbiAgZmlsdGVycz86IEFYRGF0YVNvdXJjZUZpbHRlck9wdGlvbltdO1xufTtcbmV4cG9ydCB0eXBlIEFYRGF0YVNvdXJjZVNvcnRPcHRpb24gPSB7IGZpZWxkOiBzdHJpbmc7IGRpcjogJ2FzYycgfCAnZGVzYycgfTtcblxuZXhwb3J0IGludGVyZmFjZSBBWERhdGFTb3VyY2VRdWVyeSB7XG4gIHRha2U6IG51bWJlcjtcbiAgc2tpcDogbnVtYmVyO1xuICBmaWx0ZXI/OiBBWERhdGFTb3VyY2VGaWx0ZXJPcHRpb247XG4gIHNvcnQ6IEFYRGF0YVNvdXJjZVNvcnRPcHRpb25bXTtcbn1cbmV4cG9ydCBpbnRlcmZhY2UgQVhEYXRhU291cmNlQ2FsbGJhY2tSZXN1bHQ8VD4ge1xuICBpdGVtczogQXJyYXk8VD47XG4gIHRvdGFsOiBudW1iZXI7XG59XG5cbmV4cG9ydCB0eXBlIEFYRGF0YVNvdXJjZUxvYWRDYWxsYmFjazxUPiA9IChlOiBBWERhdGFTb3VyY2VRdWVyeSkgPT4gUHJvbWlzZTxBWERhdGFTb3VyY2VDYWxsYmFja1Jlc3VsdDxUPj47XG5leHBvcnQgdHlwZSBBWERhdGFTb3VyY2VCeUtleUNhbGxiYWNrPFQ+ID0gKGtleTogdW5rbm93bikgPT4gUHJvbWlzZTxUPjtcblxuZXhwb3J0IGludGVyZmFjZSBBWERhdGFTb3VyY2VDb25maWc8VCA9IHVua25vd24+IHtcbiAga2V5Pzogc3RyaW5nO1xuICBwYWdlU2l6ZTogbnVtYmVyO1xuICBsb2FkOiBBWERhdGFTb3VyY2VMb2FkQ2FsbGJhY2s8VD47XG4gIGJ5S2V5PzogQVhEYXRhU291cmNlQnlLZXlDYWxsYmFjazxUPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBWERhdGFTb3VyY2VDaGFuZ2VkRXZlbnQ8VCA9IHVua25vd24+IHtcbiAgY2FjaGVkSXRlbXM6IEFycmF5PFQ+O1xuICBpdGVtczogQXJyYXk8VD47XG4gIHRvdGFsQ291bnQ6IG51bWJlcjtcbiAgdG90YWxQYWdlczogbnVtYmVyO1xuICBwYWdlOiBudW1iZXI7XG59XG5leHBvcnQgaW50ZXJmYWNlIEFYRGF0YVNvdXJjZUl0ZW1FeHBhbmRlZEV2ZW50PFQgPSB1bmtub3duPiB7XG4gIGV4cGFuZGVkSXRlbTogVDtcbiAgY2hpbGRyZW46IEFycmF5PFQ+O1xufVxuXG5leHBvcnQgY2xhc3MgQVhEYXRhU291cmNlPFQgPSB1bmtub3duPiB7XG4gIGNvbmZpZyE6IEFYRGF0YVNvdXJjZUNvbmZpZzxUPjtcbiAgdXNlQ2FjaGUgPSB0cnVlO1xuXG4gIHByaXZhdGUgX3RvdGFsQ291bnQgPSAwO1xuICBwdWJsaWMgZ2V0IHRvdGFsQ291bnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fdG90YWxDb3VudDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdG90YWxQYWdlcygpOiBudW1iZXIge1xuICAgIHJldHVybiBNYXRoLmNlaWwodGhpcy50b3RhbENvdW50IC8gdGhpcy5jb25maWcucGFnZVNpemUpO1xuICB9XG5cbiAgcHVibGljIGdldCBwYWdlU2l6ZSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmNvbmZpZy5wYWdlU2l6ZTtcbiAgfVxuXG4gIHByaXZhdGUgX2NhY2hlZEl0ZW1zOiBUW107XG4gIHB1YmxpYyBnZXQgY2FjaGVkSXRlbXMoKTogVFtdIHtcbiAgICByZXR1cm4gdGhpcy5fY2FjaGVkSXRlbXM7XG4gIH1cblxuICBwcml2YXRlIF9pdGVtczogVFtdID0gW107XG4gIHB1YmxpYyBnZXQgaXRlbXMoKTogVFtdIHtcbiAgICByZXR1cm4gdGhpcy5faXRlbXM7XG4gIH1cblxuICBwcml2YXRlIGZldGNoZWRQYWdlcyA9IG5ldyBTZXQ8bnVtYmVyPigpO1xuICBwcml2YXRlIF9wYWdlID0gMDtcbiAgcHJpdmF0ZSBfcXVlcnk6IEFYRGF0YVNvdXJjZVF1ZXJ5ID0geyBza2lwOiAwLCB0YWtlOiAwLCBzb3J0OiBbXSB9O1xuXG4gIHB1YmxpYyBnZXQgcXVlcnkoKTogQVhEYXRhU291cmNlUXVlcnkge1xuICAgIHJldHVybiB0aGlzLl9xdWVyeTtcbiAgfVxuXG4gIHB1YmxpYyBvbkNoYW5nZWQgPSBuZXcgU3ViamVjdDxBWERhdGFTb3VyY2VDaGFuZ2VkRXZlbnQ8VD4+KCk7XG5cbiAgcHVibGljIG9uSXRlbUV4cGFuZGVkID0gbmV3IFN1YmplY3Q8QVhEYXRhU291cmNlSXRlbUV4cGFuZGVkRXZlbnQ8VD4+KCk7XG4gIHB1YmxpYyBvbkl0ZW1SZWZyZXNoQ2hpbGRyZW4gPSBuZXcgU3ViamVjdDx7IGlkOiBzdHJpbmcgfT4oKTtcblxuICBwdWJsaWMgb25Mb2FkaW5nQ2hhbmdlZCA9IG5ldyBTdWJqZWN0PGJvb2xlYW4+KCk7XG4gIHByaXZhdGUgX2lzTG9hZGluZyA9IGZhbHNlO1xuICBwdWJsaWMgZ2V0IGlzTG9hZGluZygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5faXNMb2FkaW5nO1xuICB9XG5cbiAgY29uc3RydWN0b3IoY29uZmlnOiBBWERhdGFTb3VyY2VDb25maWc8VD4pIHtcbiAgICB0aGlzLmNvbmZpZyA9IGNvbmZpZztcbiAgICB0aGlzLl9jYWNoZWRJdGVtcyA9IG5ldyBBcnJheSh0aGlzLmNvbmZpZy5wYWdlU2l6ZSk7XG4gICAgdGhpcy5faXRlbXMgPSBuZXcgQXJyYXkoMCk7XG4gICAgdGhpcy5fcXVlcnkudGFrZSA9IHRoaXMuY29uZmlnLnBhZ2VTaXplO1xuICB9XG5cbiAgcHJpdmF0ZSBsb2FkKCkge1xuICAgIGNvbnN0IHBhZ2UgPSB0aGlzLl9wYWdlO1xuICAgIGlmICh0aGlzLmZldGNoZWRQYWdlcy5oYXMocGFnZSkgJiYgdGhpcy51c2VDYWNoZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLnNldExvYWRpbmdTdGF0ZSh0cnVlKTtcbiAgICB0aGlzLmZldGNoZWRQYWdlcy5hZGQocGFnZSk7XG4gICAgdGhpcy5fcXVlcnkudGFrZSA9IHRoaXMuY29uZmlnLnBhZ2VTaXplO1xuICAgIHRoaXMuX3F1ZXJ5LnNraXAgPSBwYWdlICogdGhpcy5jb25maWcucGFnZVNpemU7XG4gICAgdGhpcy5jb25maWdcbiAgICAgIC5sb2FkKHsgLi4udGhpcy5fcXVlcnkgfSlcbiAgICAgIC50aGVuKChyZXN1bHQpID0+IHtcbiAgICAgICAgaWYgKHRoaXMuX3RvdGFsQ291bnQgIT0gcmVzdWx0LnRvdGFsKSB7XG4gICAgICAgICAgdGhpcy5fY2FjaGVkSXRlbXMgPSBuZXcgQXJyYXkocmVzdWx0LnRvdGFsKTtcbiAgICAgICAgICB0aGlzLl90b3RhbENvdW50ID0gcmVzdWx0LnRvdGFsO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX2l0ZW1zID0gcmVzdWx0Lml0ZW1zO1xuICAgICAgICB0aGlzLl9jYWNoZWRJdGVtcy5zcGxpY2UocGFnZSAqIHRoaXMuY29uZmlnLnBhZ2VTaXplLCB0aGlzLmNvbmZpZy5wYWdlU2l6ZSwgLi4ucmVzdWx0Lml0ZW1zKTtcbiAgICAgICAgY29uc3QgZXZlbnQgPSB7XG4gICAgICAgICAgY2FjaGVkSXRlbXM6IHRoaXMuY2FjaGVkSXRlbXMsXG4gICAgICAgICAgaXRlbXM6IHRoaXMuaXRlbXMsXG4gICAgICAgICAgcGFnZTogcGFnZSxcbiAgICAgICAgICB0b3RhbENvdW50OiB0aGlzLnRvdGFsQ291bnQsXG4gICAgICAgICAgdG90YWxQYWdlczogdGhpcy50b3RhbFBhZ2VzLFxuICAgICAgICB9O1xuICAgICAgICB0aGlzLm9uQ2hhbmdlZC5uZXh0KGV2ZW50KTtcbiAgICAgIH0pXG4gICAgICAuZmluYWxseSgoKSA9PiB7XG4gICAgICAgIHRoaXMuc2V0TG9hZGluZ1N0YXRlKGZhbHNlKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGdldEl0ZW1zQnlGaWx0ZXIoZmlsdGVyOiBBWERhdGFTb3VyY2VGaWx0ZXJPcHRpb24pIHtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5jb25maWcubG9hZCh7IC4uLnRoaXMucXVlcnksIGZpbHRlciB9KTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0TG9hZGluZ1N0YXRlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5faXNMb2FkaW5nID0gdmFsdWU7XG4gICAgdGhpcy5vbkxvYWRpbmdDaGFuZ2VkLm5leHQodGhpcy5faXNMb2FkaW5nKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRQYWdlKHBhZ2U6IG51bWJlcikge1xuICAgIGlmICh0aGlzLl9wYWdlICE9IHBhZ2UgfHwgdGhpcy5faXRlbXMubGVuZ3RoID09IDApIHtcbiAgICAgIHRoaXMuX3BhZ2UgPSBwYWdlO1xuICAgICAgdGhpcy5sb2FkKCk7XG4gICAgfVxuICB9XG4gIHB1YmxpYyBzZXRQYWdlU2l6ZShwYWdlU2l6ZTogbnVtYmVyKSB7XG4gICAgdGhpcy5jb25maWcucGFnZVNpemUgPSBwYWdlU2l6ZTtcbiAgICB0aGlzLmxvYWQoKTtcbiAgfVxuXG4gIHB1YmxpYyBmaWx0ZXIodmFsdWU6IEFYRGF0YVNvdXJjZUZpbHRlck9wdGlvbikge1xuICAgIHRoaXMuX3F1ZXJ5LmZpbHRlciA9IHZhbHVlO1xuICB9XG5cbiAgcHVibGljIHNvcnQoLi4udmFsdWU6IEFYRGF0YVNvdXJjZVNvcnRPcHRpb25bXSkge1xuICAgIHRoaXMuX3F1ZXJ5LnNvcnQgPSB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBjbGVhckZpbHRlcigpIHtcbiAgICB0aGlzLl9xdWVyeS5maWx0ZXIgPSBudWxsO1xuICB9XG5cbiAgcHVibGljIHJlc2V0KCkge1xuICAgIHRoaXMuX3F1ZXJ5LmZpbHRlciA9IG51bGw7XG4gICAgdGhpcy5fcXVlcnkuc29ydCA9IFtdO1xuICAgIHRoaXMuX3F1ZXJ5LnNraXAgPSAwO1xuICAgIHRoaXMuX2l0ZW1zID0gbmV3IEFycmF5KDApO1xuICAgIHRoaXMuX2NhY2hlZEl0ZW1zID0gbmV3IEFycmF5KHRoaXMuY29uZmlnLnBhZ2VTaXplKTtcbiAgICB0aGlzLmZldGNoZWRQYWdlcy5jbGVhcigpO1xuICAgIHRoaXMuX3BhZ2UgPSAwO1xuICAgIHRoaXMuX3RvdGFsQ291bnQgPSAwO1xuICB9XG5cbiAgcHVibGljIHJlZnJlc2goKSB7XG4gICAgY29uc3QgY3VycmVudEZpbHRlciA9IHRoaXMuX3F1ZXJ5LmZpbHRlcjtcbiAgICBjb25zdCBjdXJyZW50U29ydCA9IHRoaXMuX3F1ZXJ5LnNvcnQ7XG4gICAgdGhpcy5yZXNldCgpO1xuICAgIHRoaXMuX3F1ZXJ5LmZpbHRlciA9IGN1cnJlbnRGaWx0ZXI7XG4gICAgdGhpcy5fcXVlcnkuc29ydCA9IGN1cnJlbnRTb3J0O1xuICAgIHRoaXMubG9hZCgpO1xuICB9XG5cbiAgZmluZChrZXk6IHVua25vd24pOiBUIHwgUHJvbWlzZTxUPiB7XG4gICAgY29uc3QgZnJvbUNhY2hlID0gdGhpcy5jYWNoZWRJdGVtcy5maW5kKFxuICAgICAgKGMpID0+ICghdGhpcy5jb25maWcua2V5ICYmIGMgPT0ga2V5KSB8fCAoYyAmJiB0aGlzLmNvbmZpZy5rZXkgJiYgY1t0aGlzLmNvbmZpZy5rZXldID09IGtleSksXG4gICAgKTtcbiAgICBpZiAoZnJvbUNhY2hlKSByZXR1cm4gZnJvbUNhY2hlO1xuICAgIHJldHVybiB0aGlzLmNvbmZpZy5ieUtleSA/IHRoaXMuY29uZmlnLmJ5S2V5KGtleSkgOiBudWxsO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjb252ZXJ0QXJyYXlUb0RhdGFTb3VyY2U8VD4oXG4gIGl0ZW1zOiBUW10sXG4gIG9wdGlvbnM6IHsga2V5OiBzdHJpbmc7IHBhZ2VTaXplOiBudW1iZXIgfSA9IHsga2V5OiAnaWQnLCBwYWdlU2l6ZTogMTAwIH0sXG4pOiBBWERhdGFTb3VyY2Uge1xuICBjb25zdCBjb25maWc6IEFYRGF0YVNvdXJjZUNvbmZpZyA9IHtcbiAgICBrZXk6IG9wdGlvbnMua2V5LFxuICAgIHBhZ2VTaXplOiBvcHRpb25zLnBhZ2VTaXplLFxuICAgIGxvYWQ6IGFzeW5jIChlOiBBWERhdGFTb3VyY2VRdWVyeSkgPT4ge1xuICAgICAgY29uc3QgcmVzdWx0ID0gZS5maWx0ZXIgPyBoYW5kbGVTZWFyY2goaXRlbXMsIGUuZmlsdGVyKSA6IGl0ZW1zO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaXRlbXM6IHJlc3VsdC5zbGljZShlLnNraXAsIGUuc2tpcCArIGUudGFrZSksXG4gICAgICAgIHRvdGFsOiByZXN1bHQubGVuZ3RoLFxuICAgICAgfTtcbiAgICB9LFxuICAgIGJ5S2V5OiAodjogdW5rbm93bikgPT5cbiAgICAgIFByb21pc2UucmVzb2x2ZTxUPihcbiAgICAgICAgaXRlbXMuZmluZCgoYykgPT4ge1xuICAgICAgICAgIHJldHVybiBjW29wdGlvbnMua2V5XSA9PSB2O1xuICAgICAgICB9KSxcbiAgICAgICksXG4gIH07XG4gIGNvbnN0IGhhbmRsZVNlYXJjaCA9IDxUIGV4dGVuZHMgUmVjb3JkPHN0cmluZywgYW55Pj4oaXRlbXM6IFRbXSwgZmlsdGVyOiBBWERhdGFTb3VyY2VGaWx0ZXJPcHRpb24pOiBUW10gPT4ge1xuICAgIGlmICghZmlsdGVyPy5maWVsZCB8fCBmaWx0ZXIudmFsdWUgPT09IHVuZGVmaW5lZCB8fCBmaWx0ZXIudmFsdWUgPT09IG51bGwpIHtcbiAgICAgIHJldHVybiBpdGVtczsgLy8gTm8gZmlsdGVyIGFwcGxpZWRcbiAgICB9XG5cbiAgICByZXR1cm4gaXRlbXMuZmlsdGVyKChpdGVtKSA9PiB7XG4gICAgICBjb25zdCBpdGVtRmllbGQgPSBpdGVtW2ZpbHRlci5maWVsZF0gYXMgc3RyaW5nO1xuXG4gICAgICBpZiAodHlwZW9mIGl0ZW1GaWVsZCA9PT0gJ3N0cmluZycgJiYgdHlwZW9mIGZpbHRlci52YWx1ZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgcmV0dXJuIGl0ZW1GaWVsZC50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKGZpbHRlci52YWx1ZS50b0xvd2VyQ2FzZSgpKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZhbHNlOyAvLyBSZXR1cm4gZmFsc2UgaWYgaXRlbUZpZWxkIGlzbid0IGNvbXBhcmFibGVcbiAgICB9KTtcbiAgfTtcblxuICByZXR1cm4gbmV3IEFYRGF0YVNvdXJjZShjb25maWcpO1xufVxuIl19","export const AX_STYLE_COLOR_TYPES = [\n 'primary',\n 'secondary',\n 'success',\n 'warning',\n 'danger',\n 'default',\n];\nexport const AX_STYLE_LOOK_TYPES = ['solid', 'blank', 'outline', 'twotone', 'flat', 'fill', 'none'];\nexport const AX_LOCATIONS = [\n 'bottom-start',\n 'bottom-center',\n 'bottom-end',\n 'top-start',\n 'top-center',\n 'top-end',\n 'center-end',\n 'center-start',\n];\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGVzLmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY2RrL2NvbW1vbi9zcmMvbGliL2NsYXNzZXMvc3R5bGVzLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUF1QjtJQUN0RCxTQUFTO0lBQ1QsV0FBVztJQUNYLFNBQVM7SUFDVCxTQUFTO0lBQ1QsUUFBUTtJQUNSLFNBQVM7Q0FDVixDQUFDO0FBR0YsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQXNCLENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7QUFjdkgsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFpQjtJQUN4QyxjQUFjO0lBQ2QsZUFBZTtJQUNmLFlBQVk7SUFDWixXQUFXO0lBQ1gsWUFBWTtJQUNaLFNBQVM7SUFDVCxZQUFZO0lBQ1osY0FBYztDQUNmLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEEgdG9rZW4gdGhhdCBzcGVjaWZpZXMgdGhlICBjb2xvciBzdHlsZSBvZiBjb21wb25lbnQuXG4gKi9cbmV4cG9ydCB0eXBlIEFYU3R5bGVDb2xvclR5cGUgPSAncHJpbWFyeScgfCAnc2Vjb25kYXJ5JyB8ICdzdWNjZXNzJyB8ICd3YXJuaW5nJyB8ICdkYW5nZXInIHwgJ2RlZmF1bHQnO1xuZXhwb3J0IGNvbnN0IEFYX1NUWUxFX0NPTE9SX1RZUEVTOiBBWFN0eWxlQ29sb3JUeXBlW10gPSBbXG4gICdwcmltYXJ5JyxcbiAgJ3NlY29uZGFyeScsXG4gICdzdWNjZXNzJyxcbiAgJ3dhcm5pbmcnLFxuICAnZGFuZ2VyJyxcbiAgJ2RlZmF1bHQnLFxuXTtcblxuZXhwb3J0IHR5cGUgQVhTdHlsZUxvb2tUeXBlID0gJ3NvbGlkJyB8ICdibGFuaycgfCAnb3V0bGluZScgfCAndHdvdG9uZScgfCAnZmxhdCcgfCAnZmlsbCcgfCAnbGluaycgfCAnbm9uZSc7XG5leHBvcnQgY29uc3QgQVhfU1RZTEVfTE9PS19UWVBFUzogQVhTdHlsZUxvb2tUeXBlW10gPSBbJ3NvbGlkJywgJ2JsYW5rJywgJ291dGxpbmUnLCAndHdvdG9uZScsICdmbGF0JywgJ2ZpbGwnLCAnbm9uZSddO1xuXG5leHBvcnQgdHlwZSBBWFNpemVUeXBlID0gJ3hzJyB8ICdzbScgfCAnbWQnIHwgJ2xnJyB8ICd4bCc7XG5leHBvcnQgdHlwZSBBWFN0eWxlU2l6ZVR5cGUgPSBgYXgtJHtBWFNpemVUeXBlfWA7XG5cbmV4cG9ydCB0eXBlIEFYTG9jYXRpb24gPVxuICB8ICdib3R0b20tc3RhcnQnXG4gIHwgJ2JvdHRvbS1jZW50ZXInXG4gIHwgJ2JvdHRvbS1lbmQnXG4gIHwgJ3RvcC1zdGFydCdcbiAgfCAndG9wLWNlbnRlcidcbiAgfCAndG9wLWVuZCdcbiAgfCAnY2VudGVyLWVuZCdcbiAgfCAnY2VudGVyLXN0YXJ0JztcbmV4cG9ydCBjb25zdCBBWF9MT0NBVElPTlM6IEFYTG9jYXRpb25bXSA9IFtcbiAgJ2JvdHRvbS1zdGFydCcsXG4gICdib3R0b20tY2VudGVyJyxcbiAgJ2JvdHRvbS1lbmQnLFxuICAndG9wLXN0YXJ0JyxcbiAgJ3RvcC1jZW50ZXInLFxuICAndG9wLWVuZCcsXG4gICdjZW50ZXItZW5kJyxcbiAgJ2NlbnRlci1zdGFydCcsXG5dO1xuXG5leHBvcnQgdHlwZSBBWFN1cmZhY2VUeXBlID0gJ2xpZ2h0ZXN0JyB8ICdsaWdodGVyJyB8ICdsaWdodCcgfCAnc3VyZmFjZScgfCAnZGFyaycgfCAnZGFya2VyJyB8ICdkYXJrZXN0JztcbiJdfQ==","import { isPlatformBrowser } from '@angular/common';\nimport { Directive, DOCUMENT, ElementRef, inject, Input, PLATFORM_ID, Renderer2 } from '@angular/core';\nimport { AXFocusableComponent } from '../classes/components.class';\nimport * as i0 from \"@angular/core\";\nexport class AXAutoFocusDirective {\n constructor() {\n this.renderer = inject(Renderer2);\n this.el = inject(ElementRef);\n this._host = inject(AXFocusableComponent, { host: true, self: true, optional: true });\n this.autoFocus = true;\n this.time = 50;\n this.document = inject(DOCUMENT);\n this.platformID = inject(PLATFORM_ID);\n }\n ngAfterViewInit() {\n this.doFocus();\n }\n doFocus() {\n if (this.autoFocus) {\n if (this._host) {\n setTimeout(() => {\n this._host.focus();\n }, this.time);\n return;\n }\n const list = ['button', 'input', '[href]', 'select', 'textarea', '[tabindex]'].map((c) => c + ':not([tabindex=\"-1\"])');\n const focusable = this.el.nativeElement.querySelector(list.join(', ')) ?? this.el.nativeElement;\n if (isPlatformBrowser(this.platformID)) {\n const attr = this.document.createAttribute('autofocus');\n focusable.setAttributeNode(attr);\n }\n const hasTabindex = focusable.hasAttribute('tabindex');\n if (!hasTabindex) {\n focusable.setAttribute('tabindex', '0');\n }\n setTimeout(() => {\n focusable.focus();\n }, this.time);\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXAutoFocusDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.0.4\", type: AXAutoFocusDirective, isStandalone: true, selector: \"[axAutoFocus]\", inputs: { autoFocus: [\"axAutoFocus\", \"autoFocus\"], time: [\"axAutoFocusTime\", \"time\"] }, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXAutoFocusDirective, decorators: [{\n type: Directive,\n args: [{ selector: '[axAutoFocus]' }]\n }], propDecorators: { autoFocus: [{\n type: Input,\n args: ['axAutoFocus']\n }], time: [{\n type: Input,\n args: ['axAutoFocusTime']\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0by1mb2N1cy5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jZGsvY29tbW9uL3NyYy9saWIvZGlyZWN0aXZlcy9hdXRvLWZvY3VzLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBQWlCLFNBQVMsRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0SCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7QUFHbkUsTUFBTSxPQUFPLG9CQUFvQjtJQURqQztRQUVVLGFBQVEsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDN0IsT0FBRSxHQUFHLE1BQU0sQ0FBMEIsVUFBVSxDQUFDLENBQUM7UUFDekQsVUFBSyxHQUFHLE1BQU0sQ0FBQyxvQkFBb0IsRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUcxRSxjQUFTLEdBQWEsSUFBSSxDQUFDO1FBR2xDLFNBQUksR0FBRyxFQUFFLENBQUM7UUFFRixhQUFRLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzVCLGVBQVUsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7S0FpQzFDO0lBL0JDLGVBQWU7UUFDYixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDakIsQ0FBQztJQUVTLE9BQU87UUFDZixJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNuQixJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDZixVQUFVLENBQUMsR0FBRyxFQUFFO29CQUNkLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ3JCLENBQUMsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ2QsT0FBTztZQUNULENBQUM7WUFDRCxNQUFNLElBQUksR0FBRyxDQUFDLFFBQVEsRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsWUFBWSxDQUFDLENBQUMsR0FBRyxDQUNoRixDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLHVCQUF1QixDQUNuQyxDQUFDO1lBRUYsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFjLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQztZQUU3RyxJQUFJLGlCQUFpQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO2dCQUN2QyxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxXQUFXLENBQUMsQ0FBQztnQkFDeEQsU0FBUyxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ25DLENBQUM7WUFDRCxNQUFNLFdBQVcsR0FBRyxTQUFTLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQ3ZELElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztnQkFDakIsU0FBUyxDQUFDLFlBQVksQ0FBQyxVQUFVLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFDMUMsQ0FBQztZQUNELFVBQVUsQ0FBQyxHQUFHLEVBQUU7Z0JBQ2QsU0FBUyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ3BCLENBQUMsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDaEIsQ0FBQztJQUNILENBQUM7OEdBNUNVLG9CQUFvQjtrR0FBcEIsb0JBQW9COzsyRkFBcEIsb0JBQW9CO2tCQURoQyxTQUFTO21CQUFDLEVBQUUsUUFBUSxFQUFFLGVBQWUsRUFBRTs4QkFPL0IsU0FBUztzQkFEZixLQUFLO3VCQUFDLGFBQWE7Z0JBSXBCLElBQUk7c0JBREgsS0FBSzt1QkFBQyxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc1BsYXRmb3JtQnJvd3NlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBBZnRlclZpZXdJbml0LCBEaXJlY3RpdmUsIERPQ1VNRU5ULCBFbGVtZW50UmVmLCBpbmplY3QsIElucHV0LCBQTEFURk9STV9JRCwgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWEZvY3VzYWJsZUNvbXBvbmVudCB9IGZyb20gJy4uL2NsYXNzZXMvY29tcG9uZW50cy5jbGFzcyc7XG5cbkBEaXJlY3RpdmUoeyBzZWxlY3RvcjogJ1theEF1dG9Gb2N1c10nIH0pXG5leHBvcnQgY2xhc3MgQVhBdXRvRm9jdXNEaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgcHJpdmF0ZSByZW5kZXJlciA9IGluamVjdChSZW5kZXJlcjIpO1xuICBwcml2YXRlIGVsID0gaW5qZWN0PEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+PihFbGVtZW50UmVmKTtcbiAgX2hvc3QgPSBpbmplY3QoQVhGb2N1c2FibGVDb21wb25lbnQsIHsgaG9zdDogdHJ1ZSwgc2VsZjogdHJ1ZSwgb3B0aW9uYWw6IHRydWUgfSk7XG5cbiAgQElucHV0KCdheEF1dG9Gb2N1cycpXG4gIHB1YmxpYyBhdXRvRm9jdXM/OiBib29sZWFuID0gdHJ1ZTtcblxuICBASW5wdXQoJ2F4QXV0b0ZvY3VzVGltZScpXG4gIHRpbWUgPSA1MDtcblxuICBwcml2YXRlIGRvY3VtZW50ID0gaW5qZWN0KERPQ1VNRU5UKTtcbiAgcHJpdmF0ZSBwbGF0Zm9ybUlEID0gaW5qZWN0KFBMQVRGT1JNX0lEKTtcblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5kb0ZvY3VzKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZG9Gb2N1cygpIHtcbiAgICBpZiAodGhpcy5hdXRvRm9jdXMpIHtcbiAgICAgIGlmICh0aGlzLl9ob3N0KSB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIHRoaXMuX2hvc3QuZm9jdXMoKTtcbiAgICAgICAgfSwgdGhpcy50aW1lKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgY29uc3QgbGlzdCA9IFsnYnV0dG9uJywgJ2lucHV0JywgJ1tocmVmXScsICdzZWxlY3QnLCAndGV4dGFyZWEnLCAnW3RhYmluZGV4XSddLm1hcChcbiAgICAgICAgKGMpID0+IGMgKyAnOm5vdChbdGFiaW5kZXg9XCItMVwiXSknLFxuICAgICAgKTtcblxuICAgICAgY29uc3QgZm9jdXNhYmxlID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3I8SFRNTEVsZW1lbnQ+KGxpc3Quam9pbignLCAnKSkgPz8gdGhpcy5lbC5uYXRpdmVFbGVtZW50O1xuXG4gICAgICBpZiAoaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlEKSkge1xuICAgICAgICBjb25zdCBhdHRyID0gdGhpcy5kb2N1bWVudC5jcmVhdGVBdHRyaWJ1dGUoJ2F1dG9mb2N1cycpO1xuICAgICAgICBmb2N1c2FibGUuc2V0QXR0cmlidXRlTm9kZShhdHRyKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IGhhc1RhYmluZGV4ID0gZm9jdXNhYmxlLmhhc0F0dHJpYnV0ZSgndGFiaW5kZXgnKTtcbiAgICAgIGlmICghaGFzVGFiaW5kZXgpIHtcbiAgICAgICAgZm9jdXNhYmxlLnNldEF0dHJpYnV0ZSgndGFiaW5kZXgnLCAnMCcpO1xuICAgICAgfVxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIGZvY3VzYWJsZS5mb2N1cygpO1xuICAgICAgfSwgdGhpcy50aW1lKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==","import { DOCUMENT, inject, Injectable } from '@angular/core';\nimport { EventManager } from '@angular/platform-browser';\nimport { Observable } from 'rxjs/internal/Observable';\nimport * as i0 from \"@angular/core\";\nexport class AXHotkeysService {\n constructor() {\n this.eventManager = inject(EventManager);\n this.document = inject(DOCUMENT);\n this.defaults = {\n element: this.document,\n };\n }\n /**\n * Add shortcut\n *\n *\n * @param options\n * @returns Observable\n *\n */\n addShortcut(options) {\n const merged = { ...this.defaults, ...options };\n const event = `keydown.${merged.keys}`;\n return new Observable((observer) => {\n const handler = (e) => {\n e.preventDefault();\n observer.next(e);\n };\n if (merged.element) {\n // Todo: check addEventListener is not function\n const dispose = this.eventManager.addEventListener(merged.element, event, handler);\n return () => {\n dispose();\n };\n }\n else {\n return null;\n }\n });\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXHotkeysService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXHotkeysService }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXHotkeysService, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG90a2V5LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jZGsvY29tbW9uL3NyYy9saWIvc2VydmljZXMvaG90a2V5LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7O0FBY3RELE1BQU0sT0FBTyxnQkFBZ0I7SUFEN0I7UUFFVSxpQkFBWSxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUVwQyxhQUFRLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRXBDLGFBQVEsR0FBcUI7WUFDM0IsT0FBTyxFQUFFLElBQUksQ0FBQyxRQUFRO1NBQ3ZCLENBQUM7S0E4Qkg7SUE1QkM7Ozs7Ozs7T0FPRztJQUNILFdBQVcsQ0FBQyxPQUF5QjtRQUNuQyxNQUFNLE1BQU0sR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxHQUFHLE9BQU8sRUFBRSxDQUFDO1FBQ2hELE1BQU0sS0FBSyxHQUFHLFdBQVcsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3ZDLE9BQU8sSUFBSSxVQUFVLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUNqQyxNQUFNLE9BQU8sR0FBRyxDQUFDLENBQVUsRUFBRSxFQUFFO2dCQUM3QixDQUFDLENBQUMsY0FBYyxFQUFFLENBQUM7Z0JBQ25CLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDbkIsQ0FBQyxDQUFDO1lBQ0YsSUFBSSxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQ25CLCtDQUErQztnQkFFL0MsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQztnQkFDbkYsT0FBTyxHQUFHLEVBQUU7b0JBQ1YsT0FBTyxFQUFFLENBQUM7Z0JBQ1osQ0FBQyxDQUFDO1lBQ0osQ0FBQztpQkFBTSxDQUFDO2dCQUNOLE9BQU8sSUFBSSxDQUFDO1lBQ2QsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs4R0FwQ1UsZ0JBQWdCO2tIQUFoQixnQkFBZ0I7OzJGQUFoQixnQkFBZ0I7a0JBRDVCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBET0NVTUVOVCwgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBFdmVudE1hbmFnZXIgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzL2ludGVybmFsL09ic2VydmFibGUnO1xuXG50eXBlIE9wdGlvbnMgPSB7XG4gIC8qKlxuICAgKiBlbGVtZW50IC0gQW4gaHRtbCBlbGVtZW50XG4gICAqL1xuICBlbGVtZW50OiBhbnk7XG4gIC8qKlxuICAgKiBrZXlzIC0gc3RyaW5nIG9mIGtleXMgbGlrZSAoQ29udHJvbC5mKVxuICAgKi9cbiAga2V5czogc3RyaW5nO1xufTtcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFYSG90a2V5c1NlcnZpY2Uge1xuICBwcml2YXRlIGV2ZW50TWFuYWdlciA9IGluamVjdChFdmVudE1hbmFnZXIpO1xuXG4gIHByaXZhdGUgZG9jdW1lbnQgPSBpbmplY3QoRE9DVU1FTlQpO1xuXG4gIGRlZmF1bHRzOiBQYXJ0aWFsPE9wdGlvbnM+ID0ge1xuICAgIGVsZW1lbnQ6IHRoaXMuZG9jdW1lbnQsXG4gIH07XG5cbiAgLyoqXG4gICAqIEFkZCBzaG9ydGN1dFxuICAgKlxuICAgKlxuICAgKiBAcGFyYW0gb3B0aW9uc1xuICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlXG4gICAqXG4gICAqL1xuICBhZGRTaG9ydGN1dChvcHRpb25zOiBQYXJ0aWFsPE9wdGlvbnM+KSB7XG4gICAgY29uc3QgbWVyZ2VkID0geyAuLi50aGlzLmRlZmF1bHRzLCAuLi5vcHRpb25zIH07XG4gICAgY29uc3QgZXZlbnQgPSBga2V5ZG93bi4ke21lcmdlZC5rZXlzfWA7XG4gICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlKChvYnNlcnZlcikgPT4ge1xuICAgICAgY29uc3QgaGFuZGxlciA9IChlOiBVSUV2ZW50KSA9PiB7XG4gICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgb2JzZXJ2ZXIubmV4dChlKTtcbiAgICAgIH07XG4gICAgICBpZiAobWVyZ2VkLmVsZW1lbnQpIHtcbiAgICAgICAgLy8gVG9kbzogY2hlY2sgYWRkRXZlbnRMaXN0ZW5lciBpcyBub3QgZnVuY3Rpb25cblxuICAgICAgICBjb25zdCBkaXNwb3NlID0gdGhpcy5ldmVudE1hbmFnZXIuYWRkRXZlbnRMaXN0ZW5lcihtZXJnZWQuZWxlbWVudCwgZXZlbnQsIGhhbmRsZXIpO1xuICAgICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICAgIGRpc3Bvc2UoKTtcbiAgICAgICAgfTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG4iXX0=","import { Directive, ElementRef, Input, inject } from '@angular/core';\nimport { AXComponent } from '../classes/components.class';\nimport { AXHotkeysService } from '../services/hotkey.service';\nimport * as i0 from \"@angular/core\";\nexport class AXHotkeyDirective {\n constructor() {\n this.el = inject(ElementRef);\n this._host = inject(AXComponent, { host: true, self: true, optional: true });\n this.hs = inject(AXHotkeysService);\n this.axHotkey = '';\n this._subs = [];\n }\n ngAfterViewInit() {\n if (!this.axHotkey || !this._host)\n return;\n if (typeof this.axHotkey == 'string') {\n this._addDefaultAction(this.axHotkey);\n }\n else if (typeof this.axHotkey == 'object' && !Array.isArray(this.axHotkey)) {\n this._addHotKeyAction([this.axHotkey]);\n }\n else if (Array.isArray(this.axHotkey)) {\n this._addHotKeyAction(this.axHotkey);\n }\n }\n _addDefaultAction(hotkey) {\n this._subs.push(this.hs.addShortcut({ keys: hotkey }).subscribe(() => {\n ['click', 'toggle', 'open', 'focus'].forEach((a) => {\n if (this._host[a]) {\n this._host[a]();\n return;\n }\n });\n }));\n }\n _addHotKeyAction(hotkeys) {\n hotkeys.forEach((k) => {\n const hotkey = Object.entries(k)[0][0];\n const action = Object.entries(k)[0][1];\n if (!action)\n this._addDefaultAction(hotkey);\n else {\n this._subs.push(this.hs.addShortcut({ keys: hotkey }).subscribe(() => {\n if (typeof action == 'string' && this._host[action]) {\n this._host[action]();\n return;\n }\n if (typeof action == 'function') {\n action();\n return;\n }\n }));\n }\n });\n }\n ngOnDestroy() {\n this._subs.forEach((s) => {\n s.unsubscribe();\n });\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXHotkeyDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.0.4\", type: AXHotkeyDirective, isStandalone: true, selector: \"[axHotkey]\", inputs: { axHotkey: \"axHotkey\" }, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXHotkeyDirective, decorators: [{\n type: Directive,\n args: [{ selector: '[axHotkey]' }]\n }], propDecorators: { axHotkey: [{\n type: Input\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG90a2V5LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2Nkay9jb21tb24vc3JjL2xpYi9kaXJlY3RpdmVzL2hvdGtleS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFcEYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzFELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDOztBQUs5RCxNQUFNLE9BQU8saUJBQWlCO0lBRDlCO1FBRVUsT0FBRSxHQUFHLE1BQU0sQ0FBMEIsVUFBVSxDQUFDLENBQUM7UUFDekQsVUFBSyxHQUFHLE1BQU0sQ0FBQyxXQUFXLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFDaEUsT0FBRSxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBRy9CLGFBQVEsR0FBK0MsRUFBRSxDQUFDO1FBRXpELFVBQUssR0FBbUIsRUFBRSxDQUFDO0tBc0RwQztJQXBEQyxlQUFlO1FBQ2IsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSztZQUFFLE9BQU87UUFFMUMsSUFBSSxPQUFPLElBQUksQ0FBQyxRQUFRLElBQUksUUFBUSxFQUFFLENBQUM7WUFDckMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN4QyxDQUFDO2FBQU0sSUFBSSxPQUFPLElBQUksQ0FBQyxRQUFRLElBQUksUUFBUSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztZQUM3RSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBMEIsQ0FBQyxDQUFDLENBQUM7UUFDM0QsQ0FBQzthQUFNLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztZQUN4QyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3ZDLENBQUM7SUFDSCxDQUFDO0lBRU8saUJBQWlCLENBQUMsTUFBYztRQUN0QyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FDYixJQUFJLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDbkQsQ0FBQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQkFDakQsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7b0JBQ2xCLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztvQkFDaEIsT0FBTztnQkFDVCxDQUFDO1lBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztJQUVPLGdCQUFnQixDQUFDLE9BQXlCO1FBQ2hELE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNwQixNQUFNLE1BQU0sR0FBYSxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBWSxDQUFDO1lBQzVELE1BQU0sTUFBTSxHQUFZLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDaEQsSUFBSSxDQUFDLE1BQU07Z0JBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxDQUFDO2lCQUN2QyxDQUFDO2dCQUNKLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUNiLElBQUksQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtvQkFDbkQsSUFBSSxPQUFPLE1BQU0sSUFBSSxRQUFRLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO3dCQUNwRCxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7d0JBQ3JCLE9BQU87b0JBQ1QsQ0FBQztvQkFDRCxJQUFJLE9BQU8sTUFBTSxJQUFJLFVBQVUsRUFBRSxDQUFDO3dCQUNoQyxNQUFNLEVBQUUsQ0FBQzt3QkFDVCxPQUFPO29CQUNULENBQUM7Z0JBQ0gsQ0FBQyxDQUFDLENBQ0gsQ0FBQztZQUNKLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUN2QixDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDbEIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzhHQTdEVSxpQkFBaUI7a0dBQWpCLGlCQUFpQjs7MkZBQWpCLGlCQUFpQjtrQkFEN0IsU0FBUzttQkFBQyxFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQUU7OEJBTzVCLFFBQVE7c0JBRGQsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5wdXQsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBWENvbXBvbmVudCB9IGZyb20gJy4uL2NsYXNzZXMvY29tcG9uZW50cy5jbGFzcyc7XG5pbXBvcnQgeyBBWEhvdGtleXNTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvaG90a2V5LnNlcnZpY2UnO1xuXG5leHBvcnQgdHlwZSBBWEhvdEtleUFjdGlvbiA9IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIHwgRnVuY3Rpb247IHBhcm1hcz86IGFueSB9O1xuXG5ARGlyZWN0aXZlKHsgc2VsZWN0b3I6ICdbYXhIb3RrZXldJyB9KVxuZXhwb3J0IGNsYXNzIEFYSG90a2V5RGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gIHByaXZhdGUgZWwgPSBpbmplY3Q8RWxlbWVudFJlZjxIVE1MRWxlbWVudD4+KEVsZW1lbnRSZWYpO1xuICBfaG9zdCA9IGluamVjdChBWENvbXBvbmVudCwgeyBob3N0OiB0cnVlLCBzZWxmOiB0cnVlLCBvcHRpb25hbDogdHJ1ZSB9KTtcbiAgcHJpdmF0ZSBocyA9IGluamVjdChBWEhvdGtleXNTZXJ2aWNlKTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgYXhIb3RrZXk6IHN0cmluZyB8IEFYSG90S2V5QWN0aW9uIHwgQVhIb3RLZXlBY3Rpb25bXSA9ICcnO1xuXG4gIHByaXZhdGUgX3N1YnM6IFN1YnNjcmlwdGlvbltdID0gW107XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5heEhvdGtleSB8fCAhdGhpcy5faG9zdCkgcmV0dXJuO1xuXG4gICAgaWYgKHR5cGVvZiB0aGlzLmF4SG90a2V5ID09ICdzdHJpbmcnKSB7XG4gICAgICB0aGlzLl9hZGREZWZhdWx0QWN0aW9uKHRoaXMuYXhIb3RrZXkpO1xuICAgIH0gZWxzZSBpZiAodHlwZW9mIHRoaXMuYXhIb3RrZXkgPT0gJ29iamVjdCcgJiYgIUFycmF5LmlzQXJyYXkodGhpcy5heEhvdGtleSkpIHtcbiAgICAgIHRoaXMuX2FkZEhvdEtleUFjdGlvbihbdGhpcy5heEhvdGtleSBhcyBBWEhvdEtleUFjdGlvbl0pO1xuICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheSh0aGlzLmF4SG90a2V5KSkge1xuICAgICAgdGhpcy5fYWRkSG90S2V5QWN0aW9uKHRoaXMuYXhIb3RrZXkpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2FkZERlZmF1bHRBY3Rpb24oaG90a2V5OiBzdHJpbmcpIHtcbiAgICB0aGlzLl9zdWJzLnB1c2goXG4gICAgICB0aGlzLmhzLmFkZFNob3J0Y3V0KHsga2V5czogaG90a2V5IH0pLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIFsnY2xpY2snLCAndG9nZ2xlJywgJ29wZW4nLCAnZm9jdXMnXS5mb3JFYWNoKChhKSA9PiB7XG4gICAgICAgICAgaWYgKHRoaXMuX2hvc3RbYV0pIHtcbiAgICAgICAgICAgIHRoaXMuX2hvc3RbYV0oKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX2FkZEhvdEtleUFjdGlvbihob3RrZXlzOiBBWEhvdEtleUFjdGlvbltdKSB7XG4gICAgaG90a2V5cy5mb3JFYWNoKChrKSA9PiB7XG4gICAgICBjb25zdCBob3RrZXkgPSAoPHVua25vd24+T2JqZWN0LmVudHJpZXMoaylbMF1bMF0pIGFzIHN0cmluZztcbiAgICAgIGNvbnN0IGFjdGlvbiA9IDx1bmtub3duPk9iamVjdC5lbnRyaWVzKGspWzBdWzFdO1xuICAgICAgaWYgKCFhY3Rpb24pIHRoaXMuX2FkZERlZmF1bHRBY3Rpb24oaG90a2V5KTtcbiAgICAgIGVsc2Uge1xuICAgICAgICB0aGlzLl9zdWJzLnB1c2goXG4gICAgICAgICAgdGhpcy5ocy5hZGRTaG9ydGN1dCh7IGtleXM6IGhvdGtleSB9KS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgaWYgKHR5cGVvZiBhY3Rpb24gPT0gJ3N0cmluZycgJiYgdGhpcy5faG9zdFthY3Rpb25dKSB7XG4gICAgICAgICAgICAgIHRoaXMuX2hvc3RbYWN0aW9uXSgpO1xuICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAodHlwZW9mIGFjdGlvbiA9PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAgIGFjdGlvbigpO1xuICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSksXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLl9zdWJzLmZvckVhY2goKHMpID0+IHtcbiAgICAgIHMudW5zdWJzY3JpYmUoKTtcbiAgICB9KTtcbiAgfVxufVxuIl19","import { Directive, ElementRef, Input, inject } from '@angular/core';\nimport { fromEvent } from 'rxjs';\nimport { exhaustMap, filter, map, pairwise, startWith } from 'rxjs/operators';\nimport * as i0 from \"@angular/core\";\nconst AX_DEFAULT_SCROLL_POSITION = {\n scrollHeight: 0,\n scrollTop: 0,\n clientHeight: 0,\n};\nexport class AXInfiniteScrollerDirective {\n constructor() {\n this.elm = inject(ElementRef);\n this.scrollPercent = 70;\n this.isUserScrollingDown = (positions) => {\n return positions[0].sT < positions[1].sT;\n };\n this.isScrollExpectedPercent = (position) => {\n return (position.sT + position.cH) / position.sH > this.scrollPercent / 100;\n };\n }\n ngAfterViewInit() {\n this.registerScrollEvent();\n this.streamScrollEvents();\n this.requestCallbackOnScroll();\n }\n registerScrollEvent() {\n this.scrollEvent$ = fromEvent(this.elm.nativeElement, 'scroll');\n }\n streamScrollEvents() {\n this.userScrolledDown$ = this.scrollEvent$.pipe(map((e) => ({\n scrollHeight: e.target.scrollHeight,\n scrollTop: e.target.scrollTop,\n clientHeight: e.target.clientHeight,\n })), pairwise(), filter((positions) => this.isUserScrollingDown(positions) && this.isScrollExpectedPercent(positions[1])));\n }\n requestCallbackOnScroll() {\n this.requestOnScroll$ = this.userScrolledDown$;\n if (this.immediateCallback) {\n this.requestOnScroll$ = this.requestOnScroll$.pipe(startWith([AX_DEFAULT_SCROLL_POSITION, AX_DEFAULT_SCROLL_POSITION]));\n }\n this.requestOnScroll$.pipe(exhaustMap(() => {\n return this.scrollCallback();\n }));\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXInfiniteScrollerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.0.4\", type: AXInfiniteScrollerDirective, isStandalone: true, selector: \"[axInfiniteScroller]\", inputs: { scrollCallback: \"scrollCallback\", immediateCallback: \"immediateCallback\", scrollPercent: \"scrollPercent\" }, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXInfiniteScrollerDirective, decorators: [{\n type: Directive,\n args: [{ selector: '[axInfiniteScroller]' }]\n }], propDecorators: { scrollCallback: [{\n type: Input\n }], immediateCallback: [{\n type: Input\n }], scrollPercent: [{\n type: Input\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5maW5pdGUtc2Nyb2xsLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2Nkay9jb21tb24vc3JjL2xpYi9kaXJlY3RpdmVzL2luZmluaXRlLXNjcm9sbC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEYsT0FBTyxFQUFjLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM3QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQVE5RSxNQUFNLDBCQUEwQixHQUFxQjtJQUNuRCxZQUFZLEVBQUUsQ0FBQztJQUNmLFNBQVMsRUFBRSxDQUFDO0lBQ1osWUFBWSxFQUFFLENBQUM7Q0FDaEIsQ0FBQztBQUdGLE1BQU0sT0FBTywyQkFBMkI7SUFEeEM7UUFFVSxRQUFHLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBZWpDLGtCQUFhLEdBQUcsRUFBRSxDQUFDO1FBNENYLHdCQUFtQixHQUFHLENBQUMsU0FBUyxFQUFFLEVBQUU7WUFDMUMsT0FBTyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDM0MsQ0FBQyxDQUFDO1FBRU0sNEJBQXVCLEdBQUcsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUM3QyxPQUFPLENBQUMsUUFBUSxDQUFDLEVBQUUsR0FBRyxRQUFRLENBQUMsRUFBRSxDQUFDLEdBQUcsUUFBUSxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsYUFBYSxHQUFHLEdBQUcsQ0FBQztRQUM5RSxDQUFDLENBQUM7S0FDSDtJQWpEQyxlQUFlO1FBQ2IsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7UUFFM0IsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7UUFFMUIsSUFBSSxDQUFDLHVCQUF1QixFQUFFLENBQUM7SUFDakMsQ0FBQztJQUVPLG1CQUFtQjtRQUN6QixJQUFJLENBQUMsWUFBWSxHQUFHLFNBQVMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUNsRSxDQUFDO0lBRU8sa0JBQWtCO1FBQ3hCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FDN0MsR0FBRyxDQUNELENBQUMsQ0FBTSxFQUFvQixFQUFFLENBQUMsQ0FBQztZQUM3QixZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxZQUFZO1lBQ25DLFNBQVMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLFNBQVM7WUFDN0IsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsWUFBWTtTQUNwQyxDQUFDLENBQ0gsRUFDRCxRQUFRLEVBQUUsRUFDVixNQUFNLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLENBQUMsSUFBSSxJQUFJLENBQUMsdUJBQXVCLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FDekcsQ0FBQztJQUNKLENBQUM7SUFFTyx1QkFBdUI7UUFDN0IsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztRQUUvQyxJQUFJLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQzNCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUNoRCxTQUFTLENBQUMsQ0FBQywwQkFBMEIsRUFBRSwwQkFBMEIsQ0FBQyxDQUFDLENBQ3BFLENBQUM7UUFDSixDQUFDO1FBRUQsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FDeEIsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLE9BQU8sSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQy9CLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDOzhHQTFEVSwyQkFBMkI7a0dBQTNCLDJCQUEyQjs7MkZBQTNCLDJCQUEyQjtrQkFEdkMsU0FBUzttQkFBQyxFQUFFLFFBQVEsRUFBRSxzQkFBc0IsRUFBRTs4QkFXN0MsY0FBYztzQkFEYixLQUFLO2dCQUlOLGlCQUFpQjtzQkFEaEIsS0FBSztnQkFJTixhQUFhO3NCQURaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIElucHV0LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIGZyb21FdmVudCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZXhoYXVzdE1hcCwgZmlsdGVyLCBtYXAsIHBhaXJ3aXNlLCBzdGFydFdpdGggfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQVhTY3JvbGxQb3NpdGlvbiB7XG4gIHNjcm9sbEhlaWdodDogbnVtYmVyO1xuICBzY3JvbGxUb3A6IG51bWJlcjtcbiAgY2xpZW50SGVpZ2h0OiBudW1iZXI7XG59XG5cbmNvbnN0IEFYX0RFRkFVTFRfU0NST0xMX1BPU0lUSU9OOiBBWFNjcm9sbFBvc2l0aW9uID0ge1xuICBzY3JvbGxIZWlnaHQ6IDAsXG4gIHNjcm9sbFRvcDogMCxcbiAgY2xpZW50SGVpZ2h0OiAwLFxufTtcblxuQERpcmVjdGl2ZSh7IHNlbGVjdG9yOiAnW2F4SW5maW5pdGVTY3JvbGxlcl0nIH0pXG5leHBvcnQgY2xhc3MgQVhJbmZpbml0ZVNjcm9sbGVyRGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gIHByaXZhdGUgZWxtID0gaW5qZWN0KEVsZW1lbnRSZWYpO1xuXG4gIHByaXZhdGUgc2Nyb2xsRXZlbnQkOiBPYnNlcnZhYmxlPGFueT47XG5cbiAgcHJpdmF0ZSB1c2VyU2Nyb2xsZWREb3duJDogT2JzZXJ2YWJsZTxhbnk+O1xuXG4gIHByaXZhdGUgcmVxdWVzdE9uU2Nyb2xsJDogT2JzZXJ2YWJsZTxhbnk+O1xuXG4gIEBJbnB1dCgpXG4gIHNjcm9sbENhbGxiYWNrOiBGdW5jdGlvbjtcblxuICBASW5wdXQoKVxuICBpbW1lZGlhdGVDYWxsYmFjaztcblxuICBASW5wdXQoKVxuICBzY3JvbGxQZXJjZW50ID0gNzA7XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHRoaXMucmVnaXN0ZXJTY3JvbGxFdmVudCgpO1xuXG4gICAgdGhpcy5zdHJlYW1TY3JvbGxFdmVudHMoKTtcblxuICAgIHRoaXMucmVxdWVzdENhbGxiYWNrT25TY3JvbGwoKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVnaXN0ZXJTY3JvbGxFdmVudCgpIHtcbiAgICB0aGlzLnNjcm9sbEV2ZW50JCA9IGZyb21FdmVudCh0aGlzLmVsbS5uYXRpdmVFbGVtZW50LCAnc2Nyb2xsJyk7XG4gIH1cblxuICBwcml2YXRlIHN0cmVhbVNjcm9sbEV2ZW50cygpIHtcbiAgICB0aGlzLnVzZXJTY3JvbGxlZERvd24kID0gdGhpcy5zY3JvbGxFdmVudCQucGlwZShcbiAgICAgIG1hcChcbiAgICAgICAgKGU6IGFueSk6IEFYU2Nyb2xsUG9zaXRpb24gPT4gKHtcbiAgICAgICAgICBzY3JvbGxIZWlnaHQ6IGUudGFyZ2V0LnNjcm9sbEhlaWdodCxcbiAgICAgICAgICBzY3JvbGxUb3A6IGUudGFyZ2V0LnNjcm9sbFRvcCxcbiAgICAgICAgICBjbGllbnRIZWlnaHQ6IGUudGFyZ2V0LmNsaWVudEhlaWdodCxcbiAgICAgICAgfSksXG4gICAgICApLFxuICAgICAgcGFpcndpc2UoKSxcbiAgICAgIGZpbHRlcigocG9zaXRpb25zKSA9PiB0aGlzLmlzVXNlclNjcm9sbGluZ0Rvd24ocG9zaXRpb25zKSAmJiB0aGlzLmlzU2Nyb2xsRXhwZWN0ZWRQZXJjZW50KHBvc2l0aW9uc1sxXSkpLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIHJlcXVlc3RDYWxsYmFja09uU2Nyb2xsKCkge1xuICAgIHRoaXMucmVxdWVzdE9uU2Nyb2xsJCA9IHRoaXMudXNlclNjcm9sbGVkRG93biQ7XG5cbiAgICBpZiAodGhpcy5pbW1lZGlhdGVDYWxsYmFjaykge1xuICAgICAgdGhpcy5yZXF1ZXN0T25TY3JvbGwkID0gdGhpcy5yZXF1ZXN0T25TY3JvbGwkLnBpcGUoXG4gICAgICAgIHN0YXJ0V2l0aChbQVhfREVGQVVMVF9TQ1JPTExfUE9TSVRJT04sIEFYX0RFRkFVTFRfU0NST0xMX1BPU0lUSU9OXSksXG4gICAgICApO1xuICAgIH1cblxuICAgIHRoaXMucmVxdWVzdE9uU2Nyb2xsJC5waXBlKFxuICAgICAgZXhoYXVzdE1hcCgoKSA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLnNjcm9sbENhbGxiYWNrKCk7XG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBpc1VzZXJTY3JvbGxpbmdEb3duID0gKHBvc2l0aW9ucykgPT4ge1xuICAgIHJldHVybiBwb3NpdGlvbnNbMF0uc1QgPCBwb3NpdGlvbnNbMV0uc1Q7XG4gIH07XG5cbiAgcHJpdmF0ZSBpc1Njcm9sbEV4cGVjdGVkUGVyY2VudCA9IChwb3NpdGlvbikgPT4ge1xuICAgIHJldHVybiAocG9zaXRpb24uc1QgKyBwb3NpdGlvbi5jSCkgLyBwb3NpdGlvbi5zSCA+IHRoaXMuc2Nyb2xsUGVyY2VudCAvIDEwMDtcbiAgfTtcbn1cbiJdfQ==","import { Directive, ElementRef, inject } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class AXResponsiveDirective {\n constructor() {\n this._elementRef = inject(ElementRef);\n this._observer = new ResizeObserver((entries) => {\n for (const entry of entries) {\n if (entry.target) {\n const e = entry.target;\n const elements = [e, ...Array.from(e.querySelectorAll(`[class*='sm:']`))];\n elements\n .map((c) => ({\n element: c,\n classList: Array.from(c.classList)\n .filter((c) => c.includes('sm'))\n .map((c) => c.slice(3)),\n }))\n .forEach((c) => {\n e.clientWidth < 320 ? c.element.classList.add(...c.classList) : c.element.classList.remove(...c.classList);\n });\n }\n }\n });\n const _elementRef = this._elementRef;\n this._observer.observe(_elementRef.nativeElement);\n }\n ngOnDestroy() {\n this._observer?.disconnect();\n this._observer?.unobserve(this._elementRef.nativeElement);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXResponsiveDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.0.4\", type: AXResponsiveDirective, isStandalone: true, selector: \"[axResponsive]\", ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXResponsiveDirective, decorators: [{\n type: Directive,\n args: [{ selector: '[axResponsive]' }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzcG9uc2l2ZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jZGsvY29tbW9uL3NyYy9saWIvZGlyZWN0aXZlcy9yZXNwb25zaXZlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBYSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBR3pFLE1BQU0sT0FBTyxxQkFBcUI7SUFzQmhDO1FBckJRLGdCQUFXLEdBQUcsTUFBTSxDQUE2QixVQUFVLENBQUMsQ0FBQztRQUU3RCxjQUFTLEdBQW1CLElBQUksY0FBYyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDakUsS0FBSyxNQUFNLEtBQUssSUFBSSxPQUFPLEVBQUUsQ0FBQztnQkFDNUIsSUFBSSxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7b0JBQ2pCLE1BQU0sQ0FBQyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUM7b0JBQ3ZCLE1BQU0sUUFBUSxHQUFHLENBQUMsQ0FBQyxFQUFFLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQzFFLFFBQVE7eUJBQ0wsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO3dCQUNYLE9BQU8sRUFBRSxDQUFDO3dCQUNWLFNBQVMsRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7NkJBQy9CLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQzs2QkFDL0IsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO3FCQUMxQixDQUFDLENBQUM7eUJBQ0YsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7d0JBQ2IsQ0FBQyxDQUFDLFdBQVcsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDO29CQUM3RyxDQUFDLENBQUMsQ0FBQztnQkFDUCxDQUFDO1lBQ0gsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO1FBR0QsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztRQUVyQyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxDQUFDO1FBQzdCLElBQUksQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDNUQsQ0FBQzs4R0EvQlUscUJBQXFCO2tHQUFyQixxQkFBcUI7OzJGQUFyQixxQkFBcUI7a0JBRGpDLFNBQVM7bUJBQUMsRUFBRSxRQUFRLEVBQUUsZ0JBQWdCLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIE9uRGVzdHJveSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoeyBzZWxlY3RvcjogJ1theFJlc3BvbnNpdmVdJyB9KVxuZXhwb3J0IGNsYXNzIEFYUmVzcG9uc2l2ZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgX2VsZW1lbnRSZWYgPSBpbmplY3Q8RWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD4+KEVsZW1lbnRSZWYpO1xuXG4gIHByaXZhdGUgX29ic2VydmVyOiBSZXNpemVPYnNlcnZlciA9IG5ldyBSZXNpemVPYnNlcnZlcigoZW50cmllcykgPT4ge1xuICAgIGZvciAoY29uc3QgZW50cnkgb2YgZW50cmllcykge1xuICAgICAgaWYgKGVudHJ5LnRhcmdldCkge1xuICAgICAgICBjb25zdCBlID0gZW50cnkudGFyZ2V0O1xuICAgICAgICBjb25zdCBlbGVtZW50cyA9IFtlLCAuLi5BcnJheS5mcm9tKGUucXVlcnlTZWxlY3RvckFsbChgW2NsYXNzKj0nc206J11gKSldO1xuICAgICAgICBlbGVtZW50c1xuICAgICAgICAgIC5tYXAoKGMpID0+ICh7XG4gICAgICAgICAgICBlbGVtZW50OiBjLFxuICAgICAgICAgICAgY2xhc3NMaXN0OiBBcnJheS5mcm9tKGMuY2xhc3NMaXN0KVxuICAgICAgICAgICAgICAuZmlsdGVyKChjKSA9PiBjLmluY2x1ZGVzKCdzbScpKVxuICAgICAgICAgICAgICAubWFwKChjKSA9PiBjLnNsaWNlKDMpKSxcbiAgICAgICAgICB9KSlcbiAgICAgICAgICAuZm9yRWFjaCgoYykgPT4ge1xuICAgICAgICAgICAgZS5jbGllbnRXaWR0aCA8IDMyMCA/IGMuZWxlbWVudC5jbGFzc0xpc3QuYWRkKC4uLmMuY2xhc3NMaXN0KSA6IGMuZWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKC4uLmMuY2xhc3NMaXN0KTtcbiAgICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gIH0pO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIGNvbnN0IF9lbGVtZW50UmVmID0gdGhpcy5fZWxlbWVudFJlZjtcblxuICAgIHRoaXMuX29ic2VydmVyLm9ic2VydmUoX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLl9vYnNlcnZlcj8uZGlzY29ubmVjdCgpO1xuICAgIHRoaXMuX29ic2VydmVyPy51bm9ic2VydmUodGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KTtcbiAgfVxufVxuIl19","import { NgModule } from '@angular/core';\nimport { AXAutoFocusDirective } from './directives/auto-focus.directive';\nimport { AXHotkeyDirective } from './directives/hotkey.directive';\nimport { AXInfiniteScrollerDirective } from './directives/infinite-scroll.directive';\nimport { AXResponsiveDirective } from './directives/responsive.directive';\nimport { AXHotkeysService } from './services/hotkey.service';\nimport * as i0 from \"@angular/core\";\nexport class AXCommonModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXCommonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.0.4\", ngImport: i0, type: AXCommonModule, imports: [AXResponsiveDirective, AXInfiniteScrollerDirective, AXAutoFocusDirective, AXHotkeyDirective], exports: [AXResponsiveDirective, AXInfiniteScrollerDirective, AXAutoFocusDirective, AXHotkeyDirective] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXCommonModule, providers: [AXHotkeysService] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXCommonModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [AXResponsiveDirective, AXInfiniteScrollerDirective, AXAutoFocusDirective, AXHotkeyDirective],\n exports: [AXResponsiveDirective, AXInfiniteScrollerDirective, AXAutoFocusDirective, AXHotkeyDirective],\n providers: [AXHotkeysService],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2Nkay9jb21tb24vc3JjL2xpYi9jb21tb24ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDekUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDckYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDMUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7O0FBTTdELE1BQU0sT0FBTyxjQUFjOzhHQUFkLGNBQWM7K0dBQWQsY0FBYyxZQUpmLHFCQUFxQixFQUFFLDJCQUEyQixFQUFFLG9CQUFvQixFQUFFLGlCQUFpQixhQUMzRixxQkFBcUIsRUFBRSwyQkFBMkIsRUFBRSxvQkFBb0IsRUFBRSxpQkFBaUI7K0dBRzFGLGNBQWMsYUFGZCxDQUFDLGdCQUFnQixDQUFDOzsyRkFFbEIsY0FBYztrQkFMMUIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxxQkFBcUIsRUFBRSwyQkFBMkIsRUFBRSxvQkFBb0IsRUFBRSxpQkFBaUIsQ0FBQztvQkFDdEcsT0FBTyxFQUFFLENBQUMscUJBQXFCLEVBQUUsMkJBQTJCLEVBQUUsb0JBQW9CLEVBQUUsaUJBQWlCLENBQUM7b0JBQ3RHLFNBQVMsRUFBRSxDQUFDLGdCQUFnQixDQUFDO2lCQUM5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWEF1dG9Gb2N1c0RpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9hdXRvLWZvY3VzLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBBWEhvdGtleURpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9ob3RrZXkuZGlyZWN0aXZlJztcbmltcG9ydCB7IEFYSW5maW5pdGVTY3JvbGxlckRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9pbmZpbml0ZS1zY3JvbGwuZGlyZWN0aXZlJztcbmltcG9ydCB7IEFYUmVzcG9uc2l2ZURpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9yZXNwb25zaXZlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBBWEhvdGtleXNTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9ob3RrZXkuc2VydmljZSc7XG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbQVhSZXNwb25zaXZlRGlyZWN0aXZlLCBBWEluZmluaXRlU2Nyb2xsZXJEaXJlY3RpdmUsIEFYQXV0b0ZvY3VzRGlyZWN0aXZlLCBBWEhvdGtleURpcmVjdGl2ZV0sXG4gIGV4cG9ydHM6IFtBWFJlc3BvbnNpdmVEaXJlY3RpdmUsIEFYSW5maW5pdGVTY3JvbGxlckRpcmVjdGl2ZSwgQVhBdXRvRm9jdXNEaXJlY3RpdmUsIEFYSG90a2V5RGlyZWN0aXZlXSxcbiAgcHJvdmlkZXJzOiBbQVhIb3RrZXlzU2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIEFYQ29tbW9uTW9kdWxlIHt9XG4iXX0=","import { EventEmitter } from '@angular/core';\nimport { MXBaseComponent } from './base-component.class';\nexport class MXColorComponent extends MXBaseComponent {\n constructor() {\n super(...arguments);\n this.colorChange = new EventEmitter();\n this._color = 'default';\n }\n /**\n * Predefined color schemes\n */\n get color() {\n return this._color;\n }\n set color(value) {\n this.setOption({\n name: 'color',\n value,\n afterCallback: () => {\n this.cdr.markForCheck();\n },\n });\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3ItY29tcG9uZW50LmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY2RrL2NvbW1vbi9zcmMvbGliL2NvbXBvbmVudHMvY29sb3ItY29tcG9uZW50LmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFN0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXpELE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxlQUFlO0lBQXJEOztRQUNFLGdCQUFXLEdBQW1DLElBQUksWUFBWSxFQUFFLENBQUM7UUFDekQsV0FBTSxHQUFxQixTQUFTLENBQUM7SUFnQi9DLENBQUM7SUFmQzs7T0FFRztJQUNILElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBQ0QsSUFBSSxLQUFLLENBQUMsS0FBdUI7UUFDL0IsSUFBSSxDQUFDLFNBQVMsQ0FBQztZQUNiLElBQUksRUFBRSxPQUFPO1lBQ2IsS0FBSztZQUNMLGFBQWEsRUFBRSxHQUFHLEVBQUU7Z0JBQ2xCLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDMUIsQ0FBQztTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEV2ZW50RW1pdHRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhTdHlsZUNvbG9yVHlwZSB9IGZyb20gJy4uL2NsYXNzZXMvc3R5bGVzLmNsYXNzJztcbmltcG9ydCB7IE1YQmFzZUNvbXBvbmVudCB9IGZyb20gJy4vYmFzZS1jb21wb25lbnQuY2xhc3MnO1xuXG5leHBvcnQgY2xhc3MgTVhDb2xvckNvbXBvbmVudCBleHRlbmRzIE1YQmFzZUNvbXBvbmVudCB7XG4gIGNvbG9yQ2hhbmdlOiBFdmVudEVtaXR0ZXI8QVhTdHlsZUNvbG9yVHlwZT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIHByaXZhdGUgX2NvbG9yOiBBWFN0eWxlQ29sb3JUeXBlID0gJ2RlZmF1bHQnO1xuICAvKipcbiAgICogIFByZWRlZmluZWQgY29sb3Igc2NoZW1lc1xuICAgKi9cbiAgZ2V0IGNvbG9yKCk6IEFYU3R5bGVDb2xvclR5cGUge1xuICAgIHJldHVybiB0aGlzLl9jb2xvcjtcbiAgfVxuICBzZXQgY29sb3IodmFsdWU6IEFYU3R5bGVDb2xvclR5cGUpIHtcbiAgICB0aGlzLnNldE9wdGlvbih7XG4gICAgICBuYW1lOiAnY29sb3InLFxuICAgICAgdmFsdWUsXG4gICAgICBhZnRlckNhbGxiYWNrOiAoKSA9PiB7XG4gICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgICAgfSxcbiAgICB9KTtcbiAgfVxufVxuIl19","import { EventEmitter, Injectable } from '@angular/core';\nimport { MXBaseComponent } from './base-component.class';\nimport * as i0 from \"@angular/core\";\nexport class MXLookableComponent {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: MXLookableComponent, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: MXLookableComponent }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: MXLookableComponent, decorators: [{\n type: Injectable\n }] });\nexport class MXLookComponent extends MXBaseComponent {\n constructor() {\n super(...arguments);\n this.lookChange = new EventEmitter();\n this._look = 'solid';\n }\n /**\n * Predefined look schemes\n */\n get look() {\n return this._look;\n }\n set look(value) {\n this.setOption({\n name: 'look',\n value,\n afterCallback: () => {\n this.cdr.markForCheck();\n },\n });\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9vay1jb21wb25lbnQuY2xhc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jZGsvY29tbW9uL3NyYy9saWIvY29tcG9uZW50cy9sb29rLWNvbXBvbmVudC5jbGFzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7O0FBR3pELE1BQU0sT0FBZ0IsbUJBQW1COzhHQUFuQixtQkFBbUI7a0hBQW5CLG1CQUFtQjs7MkZBQW5CLG1CQUFtQjtrQkFEeEMsVUFBVTs7QUFLWCxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxlQUFlO0lBQXBEOztRQUNFLGVBQVUsR0FBa0MsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUN2RCxVQUFLLEdBQXFCLE9BQU8sQ0FBQztJQWdCNUMsQ0FBQztJQWZDOztPQUVHO0lBQ0gsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFDRCxJQUFJLElBQUksQ0FBQyxLQUFzQjtRQUM3QixJQUFJLENBQUMsU0FBUyxDQUFDO1lBQ2IsSUFBSSxFQUFFLE1BQU07WUFDWixLQUFLO1lBQ0wsYUFBYSxFQUFFLEdBQUcsRUFBRTtnQkFDbEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUMxQixDQUFDO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRXZlbnRFbWl0dGVyLCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWFN0eWxlTG9va1R5cGUgfSBmcm9tICcuLi9jbGFzc2VzL3N0eWxlcy5jbGFzcyc7XG5pbXBvcnQgeyBNWEJhc2VDb21wb25lbnQgfSBmcm9tICcuL2Jhc2UtY29tcG9uZW50LmNsYXNzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIE1YTG9va2FibGVDb21wb25lbnQge1xuICBsb29rOiBBWFN0eWxlTG9va1R5cGU7XG59XG5cbmV4cG9ydCBjbGFzcyBNWExvb2tDb21wb25lbnQgZXh0ZW5kcyBNWEJhc2VDb21wb25lbnQge1xuICBsb29rQ2hhbmdlOiBFdmVudEVtaXR0ZXI8QVhTdHlsZUxvb2tUeXBlPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgcHJpdmF0ZSBfbG9vaz86IEFYU3R5bGVMb29rVHlwZSA9ICdzb2xpZCc7XG4gIC8qKlxuICAgKiAgUHJlZGVmaW5lZCBsb29rIHNjaGVtZXNcbiAgICovXG4gIGdldCBsb29rKCk6IEFYU3R5bGVMb29rVHlwZSB7XG4gICAgcmV0dXJuIHRoaXMuX2xvb2s7XG4gIH1cbiAgc2V0IGxvb2sodmFsdWU6IEFYU3R5bGVMb29rVHlwZSkge1xuICAgIHRoaXMuc2V0T3B0aW9uKHtcbiAgICAgIG5hbWU6ICdsb29rJyxcbiAgICAgIHZhbHVlLFxuICAgICAgYWZ0ZXJDYWxsYmFjazogKCkgPT4ge1xuICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==","import { classes } from 'polytype';\nimport { MXColorComponent } from './color-component.class';\nimport { MXLookComponent } from './look-component.class';\nexport class MXColorLookComponent extends classes(MXColorComponent, MXLookComponent) {\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3Jsb29rLWNvbXBvbmVudC5jbGFzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2Nkay9jb21tb24vc3JjL2xpYi9jb21wb25lbnRzL2NvbG9ybG9vay1jb21wb25lbnQuY2xhc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUNuQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFekQsTUFBTSxPQUFPLG9CQUFxQixTQUFRLE9BQU8sQ0FBQyxnQkFBZ0IsRUFBRSxlQUFlLENBQUM7Q0FBRyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNsYXNzZXMgfSBmcm9tICdwb2x5dHlwZSc7XG5pbXBvcnQgeyBNWENvbG9yQ29tcG9uZW50IH0gZnJvbSAnLi9jb2xvci1jb21wb25lbnQuY2xhc3MnO1xuaW1wb3J0IHsgTVhMb29rQ29tcG9uZW50IH0gZnJvbSAnLi9sb29rLWNvbXBvbmVudC5jbGFzcyc7XG5cbmV4cG9ydCBjbGFzcyBNWENvbG9yTG9va0NvbXBvbmVudCBleHRlbmRzIGNsYXNzZXMoTVhDb2xvckNvbXBvbmVudCwgTVhMb29rQ29tcG9uZW50KSB7fVxuIl19","import { EventEmitter } from '@angular/core';\nimport { set } from 'lodash-es';\nimport { classes } from 'polytype';\nimport { MXColorLookComponent } from './colorlook-component.class';\nimport { MXInteractiveComponent } from './interactive-component.class';\nexport class MXButtonBaseComponent extends classes(MXInteractiveComponent, MXColorLookComponent) {\n /**\n * Defines the primary text to show inside the button.\n */\n get text() {\n return this._text;\n }\n set text(v) {\n this.setOption({\n name: 'text',\n value: v,\n afterCallback: () => {\n this.cdr.markForCheck();\n },\n });\n }\n /**\n * Provides visual styling that indicates if the Button is active\n */\n get toggleable() {\n return this._toggleable;\n }\n set toggleable(value) {\n this.setOption({\n name: 'toggleable',\n value,\n });\n }\n /**\n * Indicates if the Button is selected or not\n */\n get selected() {\n return this._selected;\n }\n set selected(value) {\n this.setOption({\n name: 'selected',\n value,\n afterCallback: () => {\n this.cdr.markForCheck();\n },\n });\n }\n /**\n * @ignore\n */\n constructor() {\n super();\n /**\n * Emits an event when the text associated with the button changes.\n *\n * @event\n */\n this.textChange = new EventEmitter();\n /**\n * Emits an event when the toggleable state of the action sheet changes.\n *\n * @event\n */\n this.toggleableChange = new EventEmitter();\n this._toggleable = false;\n /**\n * Emits an event whenever the selection state of the component changes.\n *\n * @event\n */\n this.selectedChange = new EventEmitter();\n this._selected = false;\n }\n /**\n * @ignore\n */\n get cssClasses() {\n const cssClasses = {\n 'ax-button-icon': !this.text,\n 'ax-state-disabled': this.disabled,\n 'ax-state-selected': this.selected,\n };\n set(cssClasses, `ax-${this.look || 'solid'}`, true);\n set(cssClasses, `ax-${this.color || 'primary'}`, true);\n return cssClasses;\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLWJhc2UtY29tcG9uZW50LmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY2RrL2NvbW1vbi9zcmMvbGliL2NvbXBvbmVudHMvYnV0dG9uLWJhc2UtY29tcG9uZW50LmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0MsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNoQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ25DLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ25FLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRXZFLE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxPQUFPLENBQUMsc0JBQXNCLEVBQUUsb0JBQW9CLENBQUM7SUFROUY7O09BRUc7SUFDSCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUNELElBQUksSUFBSSxDQUFDLENBQVM7UUFDaEIsSUFBSSxDQUFDLFNBQVMsQ0FBQztZQUNiLElBQUksRUFBRSxNQUFNO1lBQ1osS0FBSyxFQUFFLENBQUM7WUFDUixhQUFhLEVBQUUsR0FBRyxFQUFFO2dCQUNsQixJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQzFCLENBQUM7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0lBU0Q7O09BRUc7SUFDSCxJQUFJLFVBQVU7UUFDWixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDMUIsQ0FBQztJQUNELElBQUksVUFBVSxDQUFDLEtBQWM7UUFDM0IsSUFBSSxDQUFDLFNBQVMsQ0FBQztZQUNiLElBQUksRUFBRSxZQUFZO1lBQ2xCLEtBQUs7U0FDTixDQUFDLENBQUM7SUFDTCxDQUFDO0lBU0Q7O09BRUc7SUFDSCxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUNELElBQUksUUFBUSxDQUFDLEtBQWM7UUFDekIsSUFBSSxDQUFDLFNBQVMsQ0FBQztZQUNiLElBQUksRUFBRSxVQUFVO1lBQ2hCLEtBQUs7WUFDTCxhQUFhLEVBQUUsR0FBRyxFQUFFO2dCQUNsQixJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQzFCLENBQUM7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0lBQ0Q7O09BRUc7SUFDSDtRQUNFLEtBQUssRUFBRSxDQUFDO1FBckVWOzs7O1dBSUc7UUFDSCxlQUFVLEdBQXlCLElBQUksWUFBWSxFQUFFLENBQUM7UUFrQnREOzs7O1dBSUc7UUFDSCxxQkFBZ0IsR0FBMEIsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNyRCxnQkFBVyxHQUFhLEtBQUssQ0FBQztRQWN0Qzs7OztXQUlHO1FBQ0gsbUJBQWMsR0FBMEIsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNuRCxjQUFTLEdBQWEsS0FBSyxDQUFDO0lBcUJwQyxDQUFDO0lBQ0Q7O09BRUc7SUFDSCxJQUFjLFVBQVU7UUFDdEIsTUFBTSxVQUFVLEdBQUc7WUFDakIsZ0JBQWdCLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSTtZQUM1QixtQkFBbUIsRUFBRSxJQUFJLENBQUMsUUFBUTtZQUNsQyxtQkFBbUIsRUFBRSxJQUFJLENBQUMsUUFBUTtTQUNuQyxDQUFDO1FBQ0YsR0FBRyxDQUFDLFVBQVUsRUFBRSxNQUFNLElBQUksQ0FBQyxJQUFJLElBQUksT0FBTyxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDcEQsR0FBRyxDQUFDLFVBQVUsRUFBRSxNQUFNLElBQUksQ0FBQyxLQUFLLElBQUksU0FBUyxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDdkQsT0FBTyxVQUFVLENBQUM7SUFDcEIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBzZXQgfSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHsgY2xhc3NlcyB9IGZyb20gJ3BvbHl0eXBlJztcbmltcG9ydCB7IE1YQ29sb3JMb29rQ29tcG9uZW50IH0gZnJvbSAnLi9jb2xvcmxvb2stY29tcG9uZW50LmNsYXNzJztcbmltcG9ydCB7IE1YSW50ZXJhY3RpdmVDb21wb25lbnQgfSBmcm9tICcuL2ludGVyYWN0aXZlLWNvbXBvbmVudC5jbGFzcyc7XG5cbmV4cG9ydCBjbGFzcyBNWEJ1dHRvbkJhc2VDb21wb25lbnQgZXh0ZW5kcyBjbGFzc2VzKE1YSW50ZXJhY3RpdmVDb21wb25lbnQsIE1YQ29sb3JMb29rQ29tcG9uZW50KSB7XG4gIC8qKlxuICAgKiBFbWl0cyBhbiBldmVudCB3aGVuIHRoZSB0ZXh0IGFzc29jaWF0ZWQgd2l0aCB0aGUgYnV0dG9uIGNoYW5nZXMuXG4gICAqXG4gICAqIEBldmVudFxuICAgKi9cbiAgdGV4dENoYW5nZTogRXZlbnRFbWl0dGVyPHN0cmluZz4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIHByaXZhdGUgX3RleHQ6IHN0cmluZztcbiAgLyoqXG4gICAqICBEZWZpbmVzIHRoZSBwcmltYXJ5IHRleHQgdG8gc2hvdyBpbnNpZGUgdGhlIGJ1dHRvbi5cbiAgICovXG4gIGdldCB0ZXh0KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3RleHQ7XG4gIH1cbiAgc2V0IHRleHQodjogc3RyaW5nKSB7XG4gICAgdGhpcy5zZXRPcHRpb24oe1xuICAgICAgbmFtZTogJ3RleHQnLFxuICAgICAgdmFsdWU6IHYsXG4gICAgICBhZnRlckNhbGxiYWNrOiAoKSA9PiB7XG4gICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFbWl0cyBhbiBldmVudCB3aGVuIHRoZSB0b2dnbGVhYmxlIHN0YXRlIG9mIHRoZSBhY3Rpb24gc2hlZXQgY2hhbmdlcy5cbiAgICpcbiAgICogQGV2ZW50XG4gICAqL1xuICB0b2dnbGVhYmxlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIHByaXZhdGUgX3RvZ2dsZWFibGU/OiBib29sZWFuID0gZmFsc2U7XG4gIC8qKlxuICAgKiAgUHJvdmlkZXMgdmlzdWFsIHN0eWxpbmcgdGhhdCBpbmRpY2F0ZXMgaWYgdGhlIEJ1dHRvbiBpcyBhY3RpdmVcbiAgICovXG4gIGdldCB0b2dnbGVhYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl90b2dnbGVhYmxlO1xuICB9XG4gIHNldCB0b2dnbGVhYmxlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5zZXRPcHRpb24oe1xuICAgICAgbmFtZTogJ3RvZ2dsZWFibGUnLFxuICAgICAgdmFsdWUsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogRW1pdHMgYW4gZXZlbnQgd2hlbmV2ZXIgdGhlIHNlbGVjdGlvbiBzdGF0ZSBvZiB0aGUgY29tcG9uZW50IGNoYW5nZXMuXG4gICAqXG4gICAqIEBldmVudFxuICAgKi9cbiAgc2VsZWN0ZWRDaGFuZ2U6IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgcHJpdmF0ZSBfc2VsZWN0ZWQ/OiBib29sZWFuID0gZmFsc2U7XG4gIC8qKlxuICAgKiAgSW5kaWNhdGVzIGlmIHRoZSBCdXR0b24gaXMgc2VsZWN0ZWQgb3Igbm90XG4gICAqL1xuICBnZXQgc2VsZWN0ZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3NlbGVjdGVkO1xuICB9XG4gIHNldCBzZWxlY3RlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuc2V0T3B0aW9uKHtcbiAgICAgIG5hbWU6ICdzZWxlY3RlZCcsXG4gICAgICB2YWx1ZSxcbiAgICAgIGFmdGVyQ2FsbGJhY2s6ICgpID0+IHtcbiAgICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgICB9LFxuICAgIH0pO1xuICB9XG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIHByb3RlY3RlZCBnZXQgY3NzQ2xhc3NlcygpIHtcbiAgICBjb25zdCBjc3NDbGFzc2VzID0ge1xuICAgICAgJ2F4LWJ1dHRvbi1pY29uJzogIXRoaXMudGV4dCxcbiAgICAgICdheC1zdGF0ZS1kaXNhYmxlZCc6IHRoaXMuZGlzYWJsZWQsXG4gICAgICAnYXgtc3RhdGUtc2VsZWN0ZWQnOiB0aGlzLnNlbGVjdGVkLFxuICAgIH07XG4gICAgc2V0KGNzc0NsYXNzZXMsIGBheC0ke3RoaXMubG9vayB8fCAnc29saWQnfWAsIHRydWUpO1xuICAgIHNldChjc3NDbGFzc2VzLCBgYXgtJHt0aGlzLmNvbG9yIHx8ICdwcmltYXJ5J31gLCB0cnVlKTtcbiAgICByZXR1cm4gY3NzQ2xhc3NlcztcbiAgfVxufVxuIl19","import { EventEmitter, Injectable } from '@angular/core';\nimport { isEqual } from 'lodash-es';\nimport { MXValueComponent } from './value-component.class';\nimport * as i0 from \"@angular/core\";\nexport class MXInputBaseValueComponent extends MXValueComponent {\n constructor() {\n super(...arguments);\n /**\n * Fires each time the user press a key.\n * @event\n */\n this.onKeyDown = new EventEmitter();\n /**\n * Fires each time the user press a key.\n * @event\n */\n this.onKeyUp = new EventEmitter();\n /**\n * Fires each time the user press a key.\n * @event\n */\n this.onKeyPress = new EventEmitter();\n /**\n * Fires each time the user change the text.\n * @event\n */\n this.onTextChanged = new EventEmitter();\n }\n emitOnKeydownEvent(e) {\n this.onKeyDown.emit({\n component: this,\n nativeEvent: e,\n });\n }\n emitOnKeyupEvent(e) {\n this.onKeyUp.emit({\n component: this,\n nativeEvent: e,\n });\n }\n emitOnKeypressEvent(e) {\n this.onKeyPress.emit({\n component: this,\n nativeEvent: e,\n });\n }\n emitOnTextChanged(value, isUserInteraction = false) {\n if (isEqual(value, this.oldText))\n return;\n this.onTextChanged.emit({\n value,\n name: this.name,\n component: this,\n isUserInteraction,\n oldValue: this.oldText,\n htmlElement: this.getHostElement(),\n });\n this.oldText = value;\n }\n focus() {\n const input = this.getHostElement().querySelector('input');\n if (input)\n input.focus();\n else\n super.focus();\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: MXInputBaseValueComponent, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: MXInputBaseValueComponent }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: MXInputBaseValueComponent, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtYmFzZS12YWx1ZS1jb21wb25lbnQuY2xhc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jZGsvY29tbW9uL3NyYy9saWIvY29tcG9uZW50cy9pbnB1dC1iYXNlLXZhbHVlLWNvbXBvbmVudC5jbGFzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRXBDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDOztBQUczRCxNQUFNLE9BQU8seUJBQXNDLFNBQVEsZ0JBQW1CO0lBRDlFOztRQUtFOzs7V0FHRztRQUNILGNBQVMsR0FBNkMsSUFBSSxZQUFZLEVBQThCLENBQUM7UUFFckc7OztXQUdHO1FBQ0gsWUFBTyxHQUE2QyxJQUFJLFlBQVksRUFBOEIsQ0FBQztRQUVuRzs7O1dBR0c7UUFDSCxlQUFVLEdBQTZDLElBQUksWUFBWSxFQUE4QixDQUFDO1FBRXRHOzs7V0FHRztRQUNILGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQStCLENBQUM7S0F5Q2pFO0lBdkNXLGtCQUFrQixDQUFDLENBQWdCO1FBQzNDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDO1lBQ2xCLFNBQVMsRUFBRSxJQUFJO1lBQ2YsV0FBVyxFQUFFLENBQUM7U0FDZixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRVMsZ0JBQWdCLENBQUMsQ0FBZ0I7UUFDekMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7WUFDaEIsU0FBUyxFQUFFLElBQUk7WUFDZixXQUFXLEVBQUUsQ0FBQztTQUNmLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFUyxtQkFBbUIsQ0FBQyxDQUFnQjtRQUM1QyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQztZQUNuQixTQUFTLEVBQUUsSUFBSTtZQUNmLFdBQVcsRUFBRSxDQUFDO1NBQ2YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVTLGlCQUFpQixDQUFDLEtBQWEsRUFBRSxpQkFBaUIsR0FBRyxLQUFLO1FBQ2xFLElBQUksT0FBTyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDO1lBQUUsT0FBTztRQUN6QyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQztZQUN0QixLQUFLO1lBQ0wsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQ2YsU0FBUyxFQUFFLElBQUk7WUFDZixpQkFBaUI7WUFDakIsUUFBUSxFQUFFLElBQUksQ0FBQyxPQUFPO1lBQ3RCLFdBQVcsRUFBRSxJQUFJLENBQUMsY0FBYyxFQUFFO1NBQ25DLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO0lBQ3ZCLENBQUM7SUFFUSxLQUFLO1FBQ1osTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUMzRCxJQUFJLEtBQUs7WUFBRSxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7O1lBQ3BCLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNyQixDQUFDOzhHQWxFVSx5QkFBeUI7a0hBQXpCLHlCQUF5Qjs7MkZBQXpCLHlCQUF5QjtrQkFEckMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEV2ZW50RW1pdHRlciwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgaXNFcXVhbCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBBWEh0bWxFdmVudCwgQVhWYWx1ZUNoYW5nZWRFdmVudCB9IGZyb20gJy4uL2NsYXNzZXMvZXZlbnRzLmNsYXNzJztcbmltcG9ydCB7IE1YVmFsdWVDb21wb25lbnQgfSBmcm9tICcuL3ZhbHVlLWNvbXBvbmVudC5jbGFzcyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBNWElucHV0QmFzZVZhbHVlQ29tcG9uZW50PFQgPSBzdHJpbmc+IGV4dGVuZHMgTVhWYWx1ZUNvbXBvbmVudDxUPiB7XG4gIG9sZFRleHQ6IHN0cmluZztcbiAgcGxhY2Vob2xkZXI6IHN0cmluZztcblxuICAvKipcbiAgICogIEZpcmVzIGVhY2ggdGltZSB0aGUgdXNlciBwcmVzcyBhIGtleS5cbiAgICogIEBldmVudFxuICAgKi9cbiAgb25LZXlEb3duOiBFdmVudEVtaXR0ZXI8QVhIdG1sRXZlbnQ8S2V5Ym9hcmRFdmVudD4+ID0gbmV3IEV2ZW50RW1pdHRlcjxBWEh0bWxFdmVudDxLZXlib2FyZEV2ZW50Pj4oKTtcblxuICAvKipcbiAgICogIEZpcmVzIGVhY2ggdGltZSB0aGUgdXNlciBwcmVzcyBhIGtleS5cbiAgICogIEBldmVudFxuICAgKi9cbiAgb25LZXlVcDogRXZlbnRFbWl0dGVyPEFYSHRtbEV2ZW50PEtleWJvYXJkRXZlbnQ+PiA9IG5ldyBFdmVudEVtaXR0ZXI8QVhIdG1sRXZlbnQ8S2V5Ym9hcmRFdmVudD4+KCk7XG5cbiAgLyoqXG4gICAqICBGaXJlcyBlYWNoIHRpbWUgdGhlIHVzZXIgcHJlc3MgYSBrZXkuXG4gICAqICBAZXZlbnRcbiAgICovXG4gIG9uS2V5UHJlc3M6IEV2ZW50RW1pdHRlcjxBWEh0bWxFdmVudDxLZXlib2FyZEV2ZW50Pj4gPSBuZXcgRXZlbnRFbWl0dGVyPEFYSHRtbEV2ZW50PEtleWJvYXJkRXZlbnQ+PigpO1xuXG4gIC8qKlxuICAgKiAgRmlyZXMgZWFjaCB0aW1lIHRoZSB1c2VyIGNoYW5nZSB0aGUgdGV4dC5cbiAgICogIEBldmVudFxuICAgKi9cbiAgb25UZXh0Q2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8QVhWYWx1ZUNoYW5nZWRFdmVudDxzdHJpbmc+PigpO1xuXG4gIHByb3RlY3RlZCBlbWl0T25LZXlkb3duRXZlbnQoZTogS2V5Ym9hcmRFdmVudCkge1xuICAgIHRoaXMub25LZXlEb3duLmVtaXQoe1xuICAgICAgY29tcG9uZW50OiB0aGlzLFxuICAgICAgbmF0aXZlRXZlbnQ6IGUsXG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZW1pdE9uS2V5dXBFdmVudChlOiBLZXlib2FyZEV2ZW50KSB7XG4gICAgdGhpcy5vbktleVVwLmVtaXQoe1xuICAgICAgY29tcG9uZW50OiB0aGlzLFxuICAgICAgbmF0aXZlRXZlbnQ6IGUsXG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZW1pdE9uS2V5cHJlc3NFdmVudChlOiBLZXlib2FyZEV2ZW50KSB7XG4gICAgdGhpcy5vbktleVByZXNzLmVtaXQoe1xuICAgICAgY29tcG9uZW50OiB0aGlzLFxuICAgICAgbmF0aXZlRXZlbnQ6IGUsXG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZW1pdE9uVGV4dENoYW5nZWQodmFsdWU6IHN0cmluZywgaXNVc2VySW50ZXJhY3Rpb24gPSBmYWxzZSkge1xuICAgIGlmIChpc0VxdWFsKHZhbHVlLCB0aGlzLm9sZFRleHQpKSByZXR1cm47XG4gICAgdGhpcy5vblRleHRDaGFuZ2VkLmVtaXQoe1xuICAgICAgdmFsdWUsXG4gICAgICBuYW1lOiB0aGlzLm5hbWUsXG4gICAgICBjb21wb25lbnQ6IHRoaXMsXG4gICAgICBpc1VzZXJJbnRlcmFjdGlvbixcbiAgICAgIG9sZFZhbHVlOiB0aGlzLm9sZFRleHQsXG4gICAgICBodG1sRWxlbWVudDogdGhpcy5nZXRIb3N0RWxlbWVudCgpLFxuICAgIH0pO1xuICAgIHRoaXMub2xkVGV4dCA9IHZhbHVlO1xuICB9XG5cbiAgb3ZlcnJpZGUgZm9jdXMoKTogdm9pZCB7XG4gICAgY29uc3QgaW5wdXQgPSB0aGlzLmdldEhvc3RFbGVtZW50KCkucXVlcnlTZWxlY3RvcignaW5wdXQnKTtcbiAgICBpZiAoaW5wdXQpIGlucHV0LmZvY3VzKCk7XG4gICAgZWxzZSBzdXBlci5mb2N1cygpO1xuICB9XG59XG4iXX0=","import { AXFormatService } from '@acorex/core/format';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { Injectable, InjectionToken, inject } from '@angular/core';\nimport { cloneDeep } from 'lodash-es';\nimport { MXValueComponent } from './value-component.class';\nimport * as i0 from \"@angular/core\";\nexport class MXSelectionBridgeService {\n constructor() {\n this.selectedItems = [];\n this.cacheList = {};\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: MXSelectionBridgeService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: MXSelectionBridgeService }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: MXSelectionBridgeService, decorators: [{\n type: Injectable\n }] });\nexport const AX_SELECTION_DATA_TOKEN = new InjectionToken('AX_SELECTION_DATA_TOKEN');\nexport class MXSelectionValueComponent extends MXValueComponent {\n constructor() {\n super(...arguments);\n this.formatService = inject(AXFormatService);\n this.dataService = inject(AX_SELECTION_DATA_TOKEN);\n this._valueField = 'id';\n this._textTemplate = '';\n this._textField = 'text';\n this._disabledField = 'disabled';\n this._multiple = false;\n }\n get valueField() {\n return this._valueField;\n }\n set valueField(v) {\n this.setOption({\n name: 'valueField',\n value: v,\n });\n }\n get textTemplate() {\n return this._textTemplate;\n }\n set textTemplate(v) {\n this.setOption({\n name: 'textTemplate',\n value: v,\n });\n }\n get textField() {\n return this._textField;\n }\n set textField(v) {\n this.setOption({\n name: 'textField',\n value: v,\n });\n }\n get disabledField() {\n return this._disabledField;\n }\n set disabledField(v) {\n this.setOption({\n name: 'disabledField',\n value: v,\n });\n }\n get multiple() {\n return this._multiple;\n }\n set multiple(v) {\n this.setOption({\n name: 'multiple',\n value: v,\n afterCallback: () => {\n this.reset(false);\n },\n });\n }\n get selectedItems() {\n return this.dataService.selectedItems || [];\n }\n internalSetValue(value) {\n const isArray = Array.isArray(value);\n if (value == null || (isArray && value.length == 0)) {\n return this.multiple ? [] : null;\n }\n const normalizedItems = isArray ? this.normalizeItemsList(value, true) : this.normalizeItemsList([value], true);\n if (normalizedItems.length == 0) {\n return this.multiple ? [] : null;\n }\n const result = this.multiple ? normalizedItems.map((c) => c[this.valueField]) : normalizedItems[0][this.valueField];\n return result;\n }\n emitOnValueChangedEvent(oldValue, newValue) {\n this._normalizeSelectedItems();\n super.emitOnValueChangedEvent(oldValue, newValue);\n }\n normalizeItemsList(items, findBykey = false) {\n if (items == null)\n return [];\n return items.filter((c) => c != null).map((i) => this.normalizeItem(i, findBykey));\n }\n normalizeItem(item, findBykey = false) {\n const complex = typeof item == 'object';\n const key = complex ? item[this.valueField] : `${item}`;\n const cacheKey = `k-${key}`;\n const hasText = !complex || item[this.textField] != null;\n //\n if (this.dataService.cacheList[cacheKey] && this.dataService.cacheList[cacheKey][this.textField])\n return this.dataService.cacheList[cacheKey];\n //\n const obj = {};\n if (complex && hasText) {\n Object.assign(obj, item);\n }\n else {\n const existsItem = findBykey ? this.getItemByKey(key) : null;\n if (existsItem && existsItem instanceof Promise) {\n obj[this.valueField] = key;\n obj['isLoading'] = true;\n obj[this.textField] = 'Loading';\n //\n existsItem\n .then((r) => {\n if (typeof r === 'object' && r) {\n // obj[this.valueField] = r[this.valueField];\n // obj[this.textField] = r[this.textField];\n Object.assign(obj, cloneDeep(r));\n }\n else {\n obj[this.valueField] = r || key;\n obj[this.textField] = r;\n }\n })\n .finally(() => {\n delete obj['isLoading'];\n this.dataService.cacheList[cacheKey] = obj;\n this.cdr.markForCheck();\n });\n }\n else if (existsItem) {\n obj[this.valueField] = complex ? existsItem[this.valueField] : existsItem;\n obj[this.textField] = complex ? existsItem[this.textField] : existsItem;\n }\n else {\n obj[this.valueField] = complex ? item[this.valueField] : item;\n obj[this.textField] = complex ? item[this.textField] : item;\n }\n }\n this.dataService.cacheList[cacheKey] = obj;\n return obj;\n }\n _normalizeSelectedItems() {\n const values = Array.isArray(this.value) ? this.value : this.value != null ? [this.value] : [];\n this.dataService.selectedItems = values.map((v) => this.normalizeItem(v));\n }\n unselectItems(...items) {\n if (!items || items.length === 0) {\n this.commitValue([], true);\n return;\n }\n const normalizeItems = Array.isArray(items) ? this.normalizeItemsList(items) : [this.normalizeItem(items)];\n const newSelectedItems = this.selectedItems.filter((i) => !normalizeItems.some((n) => n[this.valueField] == i[this.valueField]));\n this.commitValue(newSelectedItems, true);\n }\n selectItems(...items) {\n if (items && items.length) {\n let newSelectedItems = Array.isArray(this.value) ? this.value : [this.value];\n const normalizeItems = Array.isArray(items) ? this.normalizeItemsList(items) : [this.normalizeItem(items)];\n if (this.multiple) {\n newSelectedItems = [...newSelectedItems, ...normalizeItems];\n }\n else {\n newSelectedItems = normalizeItems;\n }\n this.commitValue(newSelectedItems, true);\n }\n }\n toggleSelect(...items) {\n items?.forEach((item) => {\n if (this.multiple) {\n this.isItemSelected(item) ? this.unselectItems(item) : this.selectItems(item);\n }\n else {\n this.selectItems(item);\n }\n });\n }\n isItemSelected(item) {\n return this.selectedItems.some((c) => c[this.valueField] === this.normalizeItem(item)[this.valueField]);\n }\n isItemDisabled(item) {\n return (this.disabled ||\n coerceBooleanProperty(item[this.disabledField]) === true ||\n (this.disabledCallback ? this.disabledCallback({ item, index: -1 }) : false));\n }\n // protected getDisplayText(item: T) {\n // const normalizeItem = this.normalizeItem(item) as any;\n // return formattedText || normalizeItem[this.valueField];\n // }\n getDisplayText(item) {\n const normalizeItem = this.normalizeItem(item);\n const formattedTemplate = this.formatService.format(this.textTemplate, 'string', normalizeItem);\n if (this.textTemplate && formattedTemplate != this.textTemplate)\n return formattedTemplate;\n else\n return normalizeItem[this.textField] || normalizeItem[this.valueField];\n }\n getValue(item) {\n const normalizeItem = this.normalizeItem(item);\n return normalizeItem[this.valueField];\n }\n clearSelectionCache() {\n this.dataService.cacheList = {};\n this.dataService.selectedItems = [];\n this.cdr.markForCheck();\n }\n softClearSelectionCache() {\n this.dataService.cacheList = {};\n this.cdr.markForCheck();\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: MXSelectionValueComponent, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: MXSelectionValueComponent }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: MXSelectionValueComponent, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW9uLWJhc2UuY29tcG9uZW50LmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY2RrL2NvbW1vbi9zcmMvbGliL2NvbXBvbmVudHMvc2VsZWN0aW9uLWJhc2UuY29tcG9uZW50LmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUN0QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7QUFHM0QsTUFBTSxPQUFPLHdCQUF3QjtJQURyQztRQUVTLGtCQUFhLEdBQWMsRUFBRSxDQUFDO1FBQzlCLGNBQVMsR0FBd0MsRUFBRSxDQUFDO0tBQzVEOzhHQUhZLHdCQUF3QjtrSEFBeEIsd0JBQXdCOzsyRkFBeEIsd0JBQXdCO2tCQURwQyxVQUFVOztBQU1YLE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFHLElBQUksY0FBYyxDQUEyQix5QkFBeUIsQ0FBQyxDQUFDO0FBRy9HLE1BQU0sT0FBZ0IseUJBQW1DLFNBQVEsZ0JBQXFCO0lBRHRGOztRQUVVLGtCQUFhLEdBQUcsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQ3hDLGdCQUFXLEdBQUcsTUFBTSxDQUFDLHVCQUF1QixDQUFDLENBQUM7UUFJOUMsZ0JBQVcsR0FBRyxJQUFJLENBQUM7UUFVbkIsa0JBQWEsR0FBRyxFQUFFLENBQUM7UUFXbkIsZUFBVSxHQUFHLE1BQU0sQ0FBQztRQVdwQixtQkFBYyxHQUFHLFVBQVUsQ0FBQztRQVc1QixjQUFTLEdBQUcsS0FB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QzNCLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztRQUNoQyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsR0FBRyxFQUFFLENBQUM7UUFDcEMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRVMsdUJBQXVCO1FBQy9CLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztRQUNoQyxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzFCLENBQUM7OEdBMU5tQix5QkFBeUI7a0hBQXpCLHlCQUF5Qjs7MkZBQXpCLHlCQUF5QjtrQkFEOUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYRm9ybWF0U2VydmljZSB9IGZyb20gJ0BhY29yZXgvY29yZS9mb3JtYXQnO1xuaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7IEluamVjdGFibGUsIEluamVjdGlvblRva2VuLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGNsb25lRGVlcCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBNWFZhbHVlQ29tcG9uZW50IH0gZnJvbSAnLi92YWx1ZS1jb21wb25lbnQuY2xhc3MnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgTVhTZWxlY3Rpb25CcmlkZ2VTZXJ2aWNlIHtcbiAgcHVibGljIHNlbGVjdGVkSXRlbXM6IHVua25vd25bXSA9IFtdO1xuICBwdWJsaWMgY2FjaGVMaXN0OiB7IFtrZXk6IHN0cmluZyB8IG51bWJlcl06IHVua25vd24gfSA9IHt9O1xufVxuXG5leHBvcnQgY29uc3QgQVhfU0VMRUNUSU9OX0RBVEFfVE9LRU4gPSBuZXcgSW5qZWN0aW9uVG9rZW48TVhTZWxlY3Rpb25CcmlkZ2VTZXJ2aWNlPignQVhfU0VMRUNUSU9OX0RBVEFfVE9LRU4nKTtcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIE1YU2VsZWN0aW9uVmFsdWVDb21wb25lbnQ8VCA9IGFueT4gZXh0ZW5kcyBNWFZhbHVlQ29tcG9uZW50PGFueT4ge1xuICBwcml2YXRlIGZvcm1hdFNlcnZpY2UgPSBpbmplY3QoQVhGb3JtYXRTZXJ2aWNlKTtcbiAgcHJpdmF0ZSBkYXRhU2VydmljZSA9IGluamVjdChBWF9TRUxFQ1RJT05fREFUQV9UT0tFTik7XG5cbiAgZGlzYWJsZWRDYWxsYmFjazogKGU6IHsgaXRlbTogVDsgaW5kZXg6IG51bWJlciB9KSA9PiBib29sZWFuO1xuXG4gIHByaXZhdGUgX3ZhbHVlRmllbGQgPSAnaWQnO1xuICBwdWJsaWMgZ2V0IHZhbHVlRmllbGQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fdmFsdWVGaWVsZDtcbiAgfVxuICBwdWJsaWMgc2V0IHZhbHVlRmllbGQodjogc3RyaW5nKSB7XG4gICAgdGhpcy5zZXRPcHRpb24oe1xuICAgICAgbmFtZTogJ3ZhbHVlRmllbGQnLFxuICAgICAgdmFsdWU6IHYsXG4gICAgfSk7XG4gIH1cbiAgcHJpdmF0ZSBfdGV4dFRlbXBsYXRlID0gJyc7XG4gIHB1YmxpYyBnZXQgdGV4dFRlbXBsYXRlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3RleHRUZW1wbGF0ZTtcbiAgfVxuICBwdWJsaWMgc2V0IHRleHRUZW1wbGF0ZSh2OiBzdHJpbmcpIHtcbiAgICB0aGlzLnNldE9wdGlvbih7XG4gICAgICBuYW1lOiAndGV4dFRlbXBsYXRlJyxcbiAgICAgIHZhbHVlOiB2LFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfdGV4dEZpZWxkID0gJ3RleHQnO1xuICBwdWJsaWMgZ2V0IHRleHRGaWVsZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl90ZXh0RmllbGQ7XG4gIH1cbiAgcHVibGljIHNldCB0ZXh0RmllbGQodjogc3RyaW5nKSB7XG4gICAgdGhpcy5zZXRPcHRpb24oe1xuICAgICAgbmFtZTogJ3RleHRGaWVsZCcsXG4gICAgICB2YWx1ZTogdixcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2Rpc2FibGVkRmllbGQgPSAnZGlzYWJsZWQnO1xuICBwdWJsaWMgZ2V0IGRpc2FibGVkRmllbGQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fZGlzYWJsZWRGaWVsZDtcbiAgfVxuICBwdWJsaWMgc2V0IGRpc2FibGVkRmllbGQodjogc3RyaW5nKSB7XG4gICAgdGhpcy5zZXRPcHRpb24oe1xuICAgICAgbmFtZTogJ2Rpc2FibGVkRmllbGQnLFxuICAgICAgdmFsdWU6IHYsXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9tdWx0aXBsZSA9IGZhbHNlO1xuICBwdWJsaWMgZ2V0IG11bHRpcGxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9tdWx0aXBsZTtcbiAgfVxuICBwdWJsaWMgc2V0IG11bHRpcGxlKHY6IGJvb2xlYW4pIHtcbiAgICB0aGlzLnNldE9wdGlvbih7XG4gICAgICBuYW1lOiAnbXVsdGlwbGUnLFxuICAgICAgdmFsdWU6IHYsXG4gICAgICBhZnRlckNhbGxiYWNrOiAoKSA9PiB7XG4gICAgICAgIHRoaXMucmVzZXQoZmFsc2UpO1xuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuXG4gIGdldCBzZWxlY3RlZEl0ZW1zKCk6IHVua25vd25bXSB7XG4gICAgcmV0dXJuIHRoaXMuZGF0YVNlcnZpY2Uuc2VsZWN0ZWRJdGVtcyB8fCBbXTtcbiAgfVxuXG4gIG92ZXJyaWRlIGludGVybmFsU2V0VmFsdWUodmFsdWU6IHVua25vd24pIHtcbiAgICBjb25zdCBpc0FycmF5ID0gQXJyYXkuaXNBcnJheSh2YWx1ZSk7XG4gICAgaWYgKHZhbHVlID09IG51bGwgfHwgKGlzQXJyYXkgJiYgdmFsdWUubGVuZ3RoID09IDApKSB7XG4gICAgICByZXR1cm4gdGhpcy5tdWx0aXBsZSA/IFtdIDogbnVsbDtcbiAgICB9XG4gICAgY29uc3Qgbm9ybWFsaXplZEl0ZW1zID0gaXNBcnJheSA/IHRoaXMubm9ybWFsaXplSXRlbXNMaXN0KHZhbHVlLCB0cnVlKSA6IHRoaXMubm9ybWFsaXplSXRlbXNMaXN0KFt2YWx1ZV0sIHRydWUpO1xuXG4gICAgaWYgKG5vcm1hbGl6ZWRJdGVtcy5sZW5ndGggPT0gMCkge1xuICAgICAgcmV0dXJuIHRoaXMubXVsdGlwbGUgPyBbXSA6IG51bGw7XG4gICAgfVxuICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMubXVsdGlwbGUgPyBub3JtYWxpemVkSXRlbXMubWFwKChjKSA9PiBjW3RoaXMudmFsdWVGaWVsZF0pIDogbm9ybWFsaXplZEl0ZW1zWzBdW3RoaXMudmFsdWVGaWVsZF07XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIG92ZXJyaWRlIGVtaXRPblZhbHVlQ2hhbmdlZEV2ZW50KG9sZFZhbHVlPzogdW5rbm93biwgbmV3VmFsdWU/OiB1bmtub3duKSB7XG4gICAgdGhpcy5fbm9ybWFsaXplU2VsZWN0ZWRJdGVtcygpO1xuICAgIHN1cGVyLmVtaXRPblZhbHVlQ2hhbmdlZEV2ZW50KG9sZFZhbHVlLCBuZXdWYWx1ZSk7XG4gIH1cblxuICBhYnN0cmFjdCBnZXRJdGVtQnlLZXkoa2V5OiB1bmtub3duKTogdW5rbm93biB8IFByb21pc2U8dW5rbm93bj47XG5cbiAgcHJvdGVjdGVkIG5vcm1hbGl6ZUl0ZW1zTGlzdChpdGVtczogdW5rbm93bltdLCBmaW5kQnlrZXkgPSBmYWxzZSk6IHVua25vd25bXSB7XG4gICAgaWYgKGl0ZW1zID09IG51bGwpIHJldHVybiBbXTtcbiAgICByZXR1cm4gaXRlbXMuZmlsdGVyKChjKSA9PiBjICE9IG51bGwpLm1hcCgoaSkgPT4gdGhpcy5ub3JtYWxpemVJdGVtKGksIGZpbmRCeWtleSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBub3JtYWxpemVJdGVtKGl0ZW06IHVua25vd24sIGZpbmRCeWtleSA9IGZhbHNlKTogdW5rbm93biB7XG4gICAgY29uc3QgY29tcGxleCA9IHR5cGVvZiBpdGVtID09ICdvYmplY3QnO1xuICAgIGNvbnN0IGtleSA9IGNvbXBsZXggPyBpdGVtW3RoaXMudmFsdWVGaWVsZF0gOiBgJHtpdGVtfWA7XG4gICAgY29uc3QgY2FjaGVLZXkgPSBgay0ke2tleX1gO1xuICAgIGNvbnN0IGhhc1RleHQgPSAhY29tcGxleCB8fCBpdGVtW3RoaXMudGV4dEZpZWxkXSAhPSBudWxsO1xuICAgIC8vXG4gICAgaWYgKHRoaXMuZGF0YVNlcnZpY2UuY2FjaGVMaXN0W2NhY2hlS2V5XSAmJiB0aGlzLmRhdGFTZXJ2aWNlLmNhY2hlTGlzdFtjYWNoZUtleV1bdGhpcy50ZXh0RmllbGRdKVxuICAgICAgcmV0dXJuIHRoaXMuZGF0YVNlcnZpY2UuY2FjaGVMaXN0W2NhY2hlS2V5XTtcbiAgICAvL1xuICAgIGNvbnN0IG9iajogdW5rbm93biA9IHt9O1xuICAgIGlmIChjb21wbGV4ICYmIGhhc1RleHQpIHtcbiAgICAgIE9iamVjdC5hc3NpZ24ob2JqLCBpdGVtKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgZXhpc3RzSXRlbSA9IGZpbmRCeWtleSA/IHRoaXMuZ2V0SXRlbUJ5S2V5KGtleSkgOiBudWxsO1xuICAgICAgaWYgKGV4aXN0c0l0ZW0gJiYgZXhpc3RzSXRlbSBpbnN0YW5jZW9mIFByb21pc2UpIHtcbiAgICAgICAgb2JqW3RoaXMudmFsdWVGaWVsZF0gPSBrZXk7XG4gICAgICAgIG9ialsnaXNMb2FkaW5nJ10gPSB0cnVlO1xuICAgICAgICBvYmpbdGhpcy50ZXh0RmllbGRdID0gJ0xvYWRpbmcnO1xuICAgICAgICAvL1xuICAgICAgICBleGlzdHNJdGVtXG4gICAgICAgICAgLnRoZW4oKHIpID0+IHtcbiAgICAgICAgICAgIGlmICh0eXBlb2YgciA9PT0gJ29iamVjdCcgJiYgcikge1xuICAgICAgICAgICAgICAvLyBvYmpbdGhpcy52YWx1ZUZpZWxkXSA9IHJbdGhpcy52YWx1ZUZpZWxkXTtcbiAgICAgICAgICAgICAgLy8gb2JqW3RoaXMudGV4dEZpZWxkXSA9IHJbdGhpcy50ZXh0RmllbGRdO1xuICAgICAgICAgICAgICBPYmplY3QuYXNzaWduKG9iaiwgY2xvbmVEZWVwKHIpKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIG9ialt0aGlzLnZhbHVlRmllbGRdID0gciB8fCBrZXk7XG4gICAgICAgICAgICAgIG9ialt0aGlzLnRleHRGaWVsZF0gPSByO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pXG4gICAgICAgICAgLmZpbmFsbHkoKCkgPT4ge1xuICAgICAgICAgICAgZGVsZXRlIG9ialsnaXNMb2FkaW5nJ107XG4gICAgICAgICAgICB0aGlzLmRhdGFTZXJ2aWNlLmNhY2hlTGlzdFtjYWNoZUtleV0gPSBvYmo7XG4gICAgICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSBpZiAoZXhpc3RzSXRlbSkge1xuICAgICAgICBvYmpbdGhpcy52YWx1ZUZpZWxkXSA9IGNvbXBsZXggPyBleGlzdHNJdGVtW3RoaXMudmFsdWVGaWVsZF0gOiBleGlzdHNJdGVtO1xuICAgICAgICBvYmpbdGhpcy50ZXh0RmllbGRdID0gY29tcGxleCA/IGV4aXN0c0l0ZW1bdGhpcy50ZXh0RmllbGRdIDogZXhpc3RzSXRlbTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG9ialt0aGlzLnZhbHVlRmllbGRdID0gY29tcGxleCA/IGl0ZW1bdGhpcy52YWx1ZUZpZWxkXSA6IGl0ZW07XG4gICAgICAgIG9ialt0aGlzLnRleHRGaWVsZF0gPSBjb21wbGV4ID8gaXRlbVt0aGlzLnRleHRGaWVsZF0gOiBpdGVtO1xuICAgICAgfVxuICAgIH1cbiAgICB0aGlzLmRhdGFTZXJ2aWNlLmNhY2hlTGlzdFtjYWNoZUtleV0gPSBvYmo7XG4gICAgcmV0dXJuIG9iajtcbiAgfVxuXG4gIHByaXZhdGUgX25vcm1hbGl6ZVNlbGVjdGVkSXRlbXMoKSB7XG4gICAgY29uc3QgdmFsdWVzID0gQXJyYXkuaXNBcnJheSh0aGlzLnZhbHVlKSA/IHRoaXMudmFsdWUgOiB0aGlzLnZhbHVlICE9IG51bGwgPyBbdGhpcy52YWx1ZV0gOiBbXTtcbiAgICB0aGlzLmRhdGFTZXJ2aWNlLnNlbGVjdGVkSXRlbXMgPSB2YWx1ZXMubWFwKCh2KSA9PiB0aGlzLm5vcm1hbGl6ZUl0ZW0odikpO1xuICB9XG5cbiAgcHVibGljIHVuc2VsZWN0SXRlbXMoLi4uaXRlbXM6IFRbXSkge1xuICAgIGlmICghaXRlbXMgfHwgaXRlbXMubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aGlzLmNvbW1pdFZhbHVlKFtdLCB0cnVlKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3Qgbm9ybWFsaXplSXRlbXMgPSBBcnJheS5pc0FycmF5KGl0ZW1zKSA/IHRoaXMubm9ybWFsaXplSXRlbXNMaXN0KGl0ZW1zKSA6IFt0aGlzLm5vcm1hbGl6ZUl0ZW0oaXRlbXMpXTtcbiAgICBjb25zdCBuZXdTZWxlY3RlZEl0ZW1zID0gdGhpcy5zZWxlY3RlZEl0ZW1zLmZpbHRlcihcbiAgICAgIChpKSA9PiAhbm9ybWFsaXplSXRlbXMuc29tZSgobikgPT4gblt0aGlzLnZhbHVlRmllbGRdID09IGlbdGhpcy52YWx1ZUZpZWxkXSksXG4gICAgKTtcbiAgICB0aGlzLmNvbW1pdFZhbHVlKG5ld1NlbGVjdGVkSXRlbXMsIHRydWUpO1xuICB9XG5cbiAgcHVibGljIHNlbGVjdEl0ZW1zKC4uLml0ZW1zOiBUW10pIHtcbiAgICBpZiAoaXRlbXMgJiYgaXRlbXMubGVuZ3RoKSB7XG4gICAgICBsZXQgbmV3U2VsZWN0ZWRJdGVtcyA9IEFycmF5LmlzQXJyYXkodGhpcy52YWx1ZSkgPyB0aGlzLnZhbHVlIDogW3RoaXMudmFsdWVdO1xuICAgICAgY29uc3Qgbm9ybWFsaXplSXRlbXMgPSBBcnJheS5pc0FycmF5KGl0ZW1zKSA/IHRoaXMubm9ybWFsaXplSXRlbXNMaXN0KGl0ZW1zKSA6IFt0aGlzLm5vcm1hbGl6ZUl0ZW0oaXRlbXMpXTtcbiAgICAgIGlmICh0aGlzLm11bHRpcGxlKSB7XG4gICAgICAgIG5ld1NlbGVjdGVkSXRlbXMgPSBbLi4ubmV3U2VsZWN0ZWRJdGVtcywgLi4ubm9ybWFsaXplSXRlbXNdO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbmV3U2VsZWN0ZWRJdGVtcyA9IG5vcm1hbGl6ZUl0ZW1zO1xuICAgICAgfVxuICAgICAgdGhpcy5jb21taXRWYWx1ZShuZXdTZWxlY3RlZEl0ZW1zLCB0cnVlKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgdG9nZ2xlU2VsZWN0KC4uLml0ZW1zOiBUW10pIHtcbiAgICBpdGVtcz8uZm9yRWFjaCgoaXRlbSkgPT4ge1xuICAgICAgaWYgKHRoaXMubXVsdGlwbGUpIHtcbiAgICAgICAgdGhpcy5pc0l0ZW1TZWxlY3RlZChpdGVtKSA/IHRoaXMudW5zZWxlY3RJdGVtcyhpdGVtKSA6IHRoaXMuc2VsZWN0SXRlbXMoaXRlbSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnNlbGVjdEl0ZW1zKGl0ZW0pO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGlzSXRlbVNlbGVjdGVkKGl0ZW06IFQpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zZWxlY3RlZEl0ZW1zLnNvbWUoKGMpID0+IGNbdGhpcy52YWx1ZUZpZWxkXSA9PT0gdGhpcy5ub3JtYWxpemVJdGVtKGl0ZW0pW3RoaXMudmFsdWVGaWVsZF0pO1xuICB9XG5cbiAgcHVibGljIGlzSXRlbURpc2FibGVkKGl0ZW06IFQpOiBib29sZWFuIHtcbiAgICByZXR1cm4gKFxuICAgICAgdGhpcy5kaXNhYmxlZCB8fFxuICAgICAgY29lcmNlQm9vbGVhblByb3BlcnR5KGl0ZW1bdGhpcy5kaXNhYmxlZEZpZWxkXSkgPT09IHRydWUgfHxcbiAgICAgICh0aGlzLmRpc2FibGVkQ2FsbGJhY2sgPyB0aGlzLmRpc2FibGVkQ2FsbGJhY2soeyBpdGVtLCBpbmRleDogLTEgfSkgOiBmYWxzZSlcbiAgICApO1xuICB9XG5cbiAgLy8gcHJvdGVjdGVkIGdldERpc3BsYXlUZXh0KGl0ZW06IFQpIHtcbiAgLy8gICBjb25zdCBub3JtYWxpemVJdGVtID0gdGhpcy5ub3JtYWxpemVJdGVtKGl0ZW0pIGFzIGFueTtcbiAgLy8gICByZXR1cm4gZm9ybWF0dGVkVGV4dCB8fCBub3JtYWxpemVJdGVtW3RoaXMudmFsdWVGaWVsZF07XG4gIC8vIH1cblxuICBwcm90ZWN0ZWQgZ2V0RGlzcGxheVRleHQoaXRlbTogVCkge1xuICAgIGNvbnN0IG5vcm1hbGl6ZUl0ZW0gPSB0aGlzLm5vcm1hbGl6ZUl0ZW0oaXRlbSkgYXMgYW55O1xuICAgIGNvbnN0IGZvcm1hdHRlZFRlbXBsYXRlID0gdGhpcy5mb3JtYXRTZXJ2aWNlLmZvcm1hdCh0aGlzLnRleHRUZW1wbGF0ZSwgJ3N0cmluZycsIG5vcm1hbGl6ZUl0ZW0pO1xuICAgIGlmICh0aGlzLnRleHRUZW1wbGF0ZSAmJiBmb3JtYXR0ZWRUZW1wbGF0ZSAhPSB0aGlzLnRleHRUZW1wbGF0ZSkgcmV0dXJuIGZvcm1hdHRlZFRlbXBsYXRlO1xuICAgIGVsc2UgcmV0dXJuIG5vcm1hbGl6ZUl0ZW1bdGhpcy50ZXh0RmllbGRdIHx8IG5vcm1hbGl6ZUl0ZW1bdGhpcy52YWx1ZUZpZWxkXTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRWYWx1ZShpdGVtOiBUKSB7XG4gICAgY29uc3Qgbm9ybWFsaXplSXRlbSA9IHRoaXMubm9ybWFsaXplSXRlbShpdGVtKSBhcyBhbnk7XG4gICAgcmV0dXJuIG5vcm1hbGl6ZUl0ZW1bdGhpcy52YWx1ZUZpZWxkXTtcbiAgfVxuXG4gIHByb3RlY3RlZCBjbGVhclNlbGVjdGlvbkNhY2hlKCkge1xuICAgIHRoaXMuZGF0YVNlcnZpY2UuY2FjaGVMaXN0ID0ge307XG4gICAgdGhpcy5kYXRhU2VydmljZS5zZWxlY3RlZEl0ZW1zID0gW107XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgc29mdENsZWFyU2VsZWN0aW9uQ2FjaGUoKSB7XG4gICAgdGhpcy5kYXRhU2VydmljZS5jYWNoZUxpc3QgPSB7fTtcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxufVxuIl19","import { Directive, EventEmitter, Input, Output, inject } from '@angular/core';\nimport { NgModel } from '@angular/forms';\nimport { debounceTime, distinctUntilChanged, skip } from 'rxjs';\nimport * as i0 from \"@angular/core\";\nexport class AXNgModelDelayedValueChangedDirective {\n get delayTime() {\n return this._delayTime;\n }\n set delayTime(v) {\n if (v != this._delayTime) {\n this._delayTime = v;\n this.axDelayTimeChange.emit(v);\n this.update();\n }\n }\n ngOnDestroy() {\n this.subscription?.unsubscribe();\n }\n constructor() {\n this.ngModel = inject(NgModel);\n this.axDelayedValueChanged = new EventEmitter();\n this.axDelayTimeChange = new EventEmitter();\n this._delayTime = 0;\n this.delayTime = 0;\n }\n update() {\n this.subscription?.unsubscribe();\n //\n this.subscription = this.ngModel.control.valueChanges\n .pipe(skip(1), // skip initial value\n distinctUntilChanged(), debounceTime(this.delayTime))\n .subscribe((value) => this.axDelayedValueChanged.emit(value));\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXNgModelDelayedValueChangedDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.0.4\", type: AXNgModelDelayedValueChangedDirective, isStandalone: true, selector: \"[axDelayedValueChanged]\", inputs: { delayTime: \"delayTime\" }, outputs: { axDelayedValueChanged: \"axDelayedValueChanged\", axDelayTimeChange: \"axDelayTimeChange\" }, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXNgModelDelayedValueChangedDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[axDelayedValueChanged]',\n }]\n }], ctorParameters: () => [], propDecorators: { axDelayedValueChanged: [{\n type: Output\n }], axDelayTimeChange: [{\n type: Output\n }], delayTime: [{\n type: Input\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsYXllZC12YWx1ZS1jaGFuZ2VkLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2Nkay9jb21tb24vc3JjL2xpYi9kaXJlY3RpdmVzL2RlbGF5ZWQtdmFsdWUtY2hhbmdlZC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFhLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUYsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pDLE9BQU8sRUFBZ0IsWUFBWSxFQUFFLG9CQUFvQixFQUFFLElBQUksRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFLOUUsTUFBTSxPQUFPLHFDQUFxQztJQVVoRCxJQUNXLFNBQVM7UUFDbEIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3pCLENBQUM7SUFDRCxJQUFXLFNBQVMsQ0FBQyxDQUFTO1FBQzVCLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUN6QixJQUFJLENBQUMsVUFBVSxHQUFHLENBQUMsQ0FBQztZQUNwQixJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQy9CLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNoQixDQUFDO0lBQ0gsQ0FBQztJQUlELFdBQVc7UUFDVCxJQUFJLENBQUMsWUFBWSxFQUFFLFdBQVcsRUFBRSxDQUFDO0lBQ25DLENBQUM7SUFFRDtRQTNCUSxZQUFPLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBR2xDLDBCQUFxQixHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFHaEQsc0JBQWlCLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUV2QyxlQUFVLEdBQUcsQ0FBQyxDQUFDO1FBb0JyQixJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRU8sTUFBTTtRQUNaLElBQUksQ0FBQyxZQUFZLEVBQUUsV0FBVyxFQUFFLENBQUM7UUFDakMsRUFBRTtRQUNGLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsWUFBWTthQUNsRCxJQUFJLENBQ0gsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLHFCQUFxQjtRQUM5QixvQkFBb0IsRUFBRSxFQUN0QixZQUFZLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUM3QjthQUNBLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2xFLENBQUM7OEdBMUNVLHFDQUFxQztrR0FBckMscUNBQXFDOzsyRkFBckMscUNBQXFDO2tCQUhqRCxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx5QkFBeUI7aUJBQ3BDO3dEQUtDLHFCQUFxQjtzQkFEcEIsTUFBTTtnQkFJUCxpQkFBaUI7c0JBRGhCLE1BQU07Z0JBS0ksU0FBUztzQkFEbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25EZXN0cm95LCBPdXRwdXQsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmdNb2RlbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiwgZGVib3VuY2VUaW1lLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgc2tpcCB9IGZyb20gJ3J4anMnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbYXhEZWxheWVkVmFsdWVDaGFuZ2VkXScsXG59KVxuZXhwb3J0IGNsYXNzIEFYTmdNb2RlbERlbGF5ZWRWYWx1ZUNoYW5nZWREaXJlY3RpdmUgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBwcml2YXRlIG5nTW9kZWwgPSBpbmplY3QoTmdNb2RlbCk7XG5cbiAgQE91dHB1dCgpXG4gIGF4RGVsYXllZFZhbHVlQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIEBPdXRwdXQoKVxuICBheERlbGF5VGltZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuXG4gIHByaXZhdGUgX2RlbGF5VGltZSA9IDA7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBnZXQgZGVsYXlUaW1lKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX2RlbGF5VGltZTtcbiAgfVxuICBwdWJsaWMgc2V0IGRlbGF5VGltZSh2OiBudW1iZXIpIHtcbiAgICBpZiAodiAhPSB0aGlzLl9kZWxheVRpbWUpIHtcbiAgICAgIHRoaXMuX2RlbGF5VGltZSA9IHY7XG4gICAgICB0aGlzLmF4RGVsYXlUaW1lQ2hhbmdlLmVtaXQodik7XG4gICAgICB0aGlzLnVwZGF0ZSgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLmRlbGF5VGltZSA9IDA7XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZSgpIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgICAvL1xuICAgIHRoaXMuc3Vic2NyaXB0aW9uID0gdGhpcy5uZ01vZGVsLmNvbnRyb2wudmFsdWVDaGFuZ2VzXG4gICAgICAucGlwZShcbiAgICAgICAgc2tpcCgxKSwgLy8gc2tpcCBpbml0aWFsIHZhbHVlXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICAgIGRlYm91bmNlVGltZSh0aGlzLmRlbGF5VGltZSksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCh2YWx1ZSkgPT4gdGhpcy5heERlbGF5ZWRWYWx1ZUNoYW5nZWQuZW1pdCh2YWx1ZSkpO1xuICB9XG59XG4iXX0=","import { isPlatformBrowser } from '@angular/common';\nimport { Directive, PLATFORM_ID, ViewContainerRef, afterNextRender, effect, inject, input } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class AXInvertedColorDirective {\n constructor() {\n this.color = input.required();\n this.ref = inject(ViewContainerRef);\n this.platformID = inject(PLATFORM_ID);\n afterNextRender(() => {\n this.invertColor();\n });\n effect(() => {\n this.invertColor();\n });\n }\n invertColor() {\n let color;\n let foreColor;\n const invertedVariables = [];\n if (isPlatformBrowser(this.platformID)) {\n if (this.color() === 'default') {\n color = getComputedStyle(document.documentElement).getPropertyValue(`--ax-color-${this.color()}`);\n foreColor = getComputedStyle(document.documentElement).getPropertyValue(`--ax-color-${this.color()}-fore`);\n invertedVariables.push({ name: `--ax-color-ghost`, value: `${foreColor}` });\n invertedVariables.push({ name: `--ax-color-ghost-fore`, value: `${color}` });\n }\n else {\n const range = [50, 100, 200, 300, 400, 500, 600, 700, 800, 900, 950];\n color = getComputedStyle(document.documentElement).getPropertyValue(`--ax-color-${this.color()}-500`);\n foreColor = getComputedStyle(document.documentElement).getPropertyValue(`--ax-color-${this.color()}-fore`);\n range.forEach((c) => {\n invertedVariables.push({ name: `--ax-color-${this.color()}-${c}`, value: `${foreColor}` });\n });\n invertedVariables.push({ name: `--ax-color-${this.color()}-fore`, value: `${color}` });\n invertedVariables.push({ name: `--ax-color-${this.color()}-fore-tint`, value: `${color}` });\n }\n invertedVariables.forEach((c) => {\n this.ref.element.nativeElement.style.setProperty(c.name, c.value);\n });\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXInvertedColorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.0.4\", type: AXInvertedColorDirective, isStandalone: true, selector: \"[axInvertedColor]\", inputs: { color: { classPropertyName: \"color\", publicName: \"color\", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXInvertedColorDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[axInvertedColor]',\n }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW52ZXJ0ZWQtY29sb3IuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY2RrL2NvbW1vbi9zcmMvbGliL2RpcmVjdGl2ZXMvaW52ZXJ0ZWQtY29sb3IuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFFLGVBQWUsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFNakgsTUFBTSxPQUFPLHdCQUF3QjtJQUluQztRQUhBLFVBQUssR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFvQixDQUFDO1FBQzNDLFFBQUcsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUN2QixlQUFVLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBRXZDLGVBQWUsQ0FBQyxHQUFHLEVBQUU7WUFDbkIsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3JCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxDQUFDLEdBQUcsRUFBRTtZQUNWLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNyQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFUyxXQUFXO1FBQ25CLElBQUksS0FBSyxDQUFDO1FBQ1YsSUFBSSxTQUFTLENBQUM7UUFDZCxNQUFNLGlCQUFpQixHQUFHLEVBQUUsQ0FBQztRQUU3QixJQUFJLGlCQUFpQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO1lBQ3ZDLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxLQUFLLFNBQVMsRUFBRSxDQUFDO2dCQUMvQixLQUFLLEdBQUcsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLGNBQWMsSUFBSSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFDbEcsU0FBUyxHQUFHLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLElBQUksQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7Z0JBQzNHLGlCQUFpQixDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxrQkFBa0IsRUFBRSxLQUFLLEVBQUUsR0FBRyxTQUFTLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0JBQzVFLGlCQUFpQixDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSx1QkFBdUIsRUFBRSxLQUFLLEVBQUUsR0FBRyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDL0UsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLE1BQU0sS0FBSyxHQUFHLENBQUMsRUFBRSxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO2dCQUVyRSxLQUFLLEdBQUcsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLGNBQWMsSUFBSSxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztnQkFDdEcsU0FBUyxHQUFHLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLElBQUksQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7Z0JBQzNHLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtvQkFDbEIsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLGNBQWMsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsRUFBRSxFQUFFLEtBQUssRUFBRSxHQUFHLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFDN0YsQ0FBQyxDQUFDLENBQUM7Z0JBQ0gsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLGNBQWMsSUFBSSxDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEdBQUcsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUN2RixpQkFBaUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsY0FBYyxJQUFJLENBQUMsS0FBSyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsR0FBRyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDOUYsQ0FBQztZQUVELGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO2dCQUM3QixJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxhQUE2QixDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDckYsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDO0lBQ0gsQ0FBQzs4R0F4Q1Usd0JBQXdCO2tHQUF4Qix3QkFBd0I7OzJGQUF4Qix3QkFBd0I7a0JBSHBDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLG1CQUFtQjtpQkFDOUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc1BsYXRmb3JtQnJvd3NlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBEaXJlY3RpdmUsIFBMQVRGT1JNX0lELCBWaWV3Q29udGFpbmVyUmVmLCBhZnRlck5leHRSZW5kZXIsIGVmZmVjdCwgaW5qZWN0LCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhTdHlsZUNvbG9yVHlwZSB9IGZyb20gJy4uL2NsYXNzZXMvc3R5bGVzLmNsYXNzJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2F4SW52ZXJ0ZWRDb2xvcl0nLFxufSlcbmV4cG9ydCBjbGFzcyBBWEludmVydGVkQ29sb3JEaXJlY3RpdmUge1xuICBjb2xvciA9IGlucHV0LnJlcXVpcmVkPEFYU3R5bGVDb2xvclR5cGU+KCk7XG4gIHJlZiA9IGluamVjdChWaWV3Q29udGFpbmVyUmVmKTtcbiAgcHJpdmF0ZSBwbGF0Zm9ybUlEID0gaW5qZWN0KFBMQVRGT1JNX0lEKTtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgYWZ0ZXJOZXh0UmVuZGVyKCgpID0+IHtcbiAgICAgIHRoaXMuaW52ZXJ0Q29sb3IoKTtcbiAgICB9KTtcbiAgICBlZmZlY3QoKCkgPT4ge1xuICAgICAgdGhpcy5pbnZlcnRDb2xvcigpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGludmVydENvbG9yKCkge1xuICAgIGxldCBjb2xvcjtcbiAgICBsZXQgZm9yZUNvbG9yO1xuICAgIGNvbnN0IGludmVydGVkVmFyaWFibGVzID0gW107XG5cbiAgICBpZiAoaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlEKSkge1xuICAgICAgaWYgKHRoaXMuY29sb3IoKSA9PT0gJ2RlZmF1bHQnKSB7XG4gICAgICAgIGNvbG9yID0gZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQpLmdldFByb3BlcnR5VmFsdWUoYC0tYXgtY29sb3ItJHt0aGlzLmNvbG9yKCl9YCk7XG4gICAgICAgIGZvcmVDb2xvciA9IGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KS5nZXRQcm9wZXJ0eVZhbHVlKGAtLWF4LWNvbG9yLSR7dGhpcy5jb2xvcigpfS1mb3JlYCk7XG4gICAgICAgIGludmVydGVkVmFyaWFibGVzLnB1c2goeyBuYW1lOiBgLS1heC1jb2xvci1naG9zdGAsIHZhbHVlOiBgJHtmb3JlQ29sb3J9YCB9KTtcbiAgICAgICAgaW52ZXJ0ZWRWYXJpYWJsZXMucHVzaCh7IG5hbWU6IGAtLWF4LWNvbG9yLWdob3N0LWZvcmVgLCB2YWx1ZTogYCR7Y29sb3J9YCB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IHJhbmdlID0gWzUwLCAxMDAsIDIwMCwgMzAwLCA0MDAsIDUwMCwgNjAwLCA3MDAsIDgwMCwgOTAwLCA5NTBdO1xuXG4gICAgICAgIGNvbG9yID0gZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQpLmdldFByb3BlcnR5VmFsdWUoYC0tYXgtY29sb3ItJHt0aGlzLmNvbG9yKCl9LTUwMGApO1xuICAgICAgICBmb3JlQ29sb3IgPSBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCkuZ2V0UHJvcGVydHlWYWx1ZShgLS1heC1jb2xvci0ke3RoaXMuY29sb3IoKX0tZm9yZWApO1xuICAgICAgICByYW5nZS5mb3JFYWNoKChjKSA9PiB7XG4gICAgICAgICAgaW52ZXJ0ZWRWYXJpYWJsZXMucHVzaCh7IG5hbWU6IGAtLWF4LWNvbG9yLSR7dGhpcy5jb2xvcigpfS0ke2N9YCwgdmFsdWU6IGAke2ZvcmVDb2xvcn1gIH0pO1xuICAgICAgICB9KTtcbiAgICAgICAgaW52ZXJ0ZWRWYXJpYWJsZXMucHVzaCh7IG5hbWU6IGAtLWF4LWNvbG9yLSR7dGhpcy5jb2xvcigpfS1mb3JlYCwgdmFsdWU6IGAke2NvbG9yfWAgfSk7XG4gICAgICAgIGludmVydGVkVmFyaWFibGVzLnB1c2goeyBuYW1lOiBgLS1heC1jb2xvci0ke3RoaXMuY29sb3IoKX0tZm9yZS10aW50YCwgdmFsdWU6IGAke2NvbG9yfWAgfSk7XG4gICAgICB9XG5cbiAgICAgIGludmVydGVkVmFyaWFibGVzLmZvckVhY2goKGMpID0+IHtcbiAgICAgICAgKHRoaXMucmVmLmVsZW1lbnQubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudCkuc3R5bGUuc2V0UHJvcGVydHkoYy5uYW1lLCBjLnZhbHVlKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxufVxuIl19","import { isPlatformBrowser } from '@angular/common';\nimport { ChangeDetectorRef, Directive, DOCUMENT, ElementRef, inject, Input, PLATFORM_ID, } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class AXRippleDirective {\n constructor() {\n this.el = inject(ElementRef);\n this.cdr = inject(ChangeDetectorRef);\n this.enabled = true;\n this.axRippleColor = 'var(--ax-comp-ripple-bg-color, rgba(255, 255, 255, 0.3))';\n this.document = inject(DOCUMENT);\n this.platformID = inject(PLATFORM_ID);\n }\n ngOnInit() {\n if (this.enabled) {\n this.el.nativeElement.addEventListener('click', (event) => {\n this.onElementClick(event);\n });\n }\n }\n ngOnDestroy() {\n this.el.nativeElement.removeEventListener('click', this.createRipple.bind(this));\n }\n onElementClick(event) {\n this.createRipple(event);\n }\n createRipple(event) {\n const element = event.currentTarget;\n const exists = element.querySelector('.ax-ripple');\n if (exists)\n exists.remove();\n this.el.nativeElement.style.overflow = 'hidden';\n const rect = element.getBoundingClientRect();\n const x = Math.floor(((event.clientX - rect.left) / (rect.right - rect.left)) * element.clientWidth);\n const y = Math.floor(((event.clientY - rect.top) / (rect.bottom - rect.top)) * element.clientHeight);\n if (isPlatformBrowser(this.platformID)) {\n const circle = this.document.createElement('span');\n const diameter = Math.max(element.clientWidth, element.clientHeight);\n const radius = diameter / 2;\n circle.style.width = circle.style.height = `${diameter}px`;\n circle.style.left = `${x - radius}px`;\n circle.style.top = `${y - radius}px`;\n circle.style.backgroundColor = `${this.axRippleColor}`;\n circle.classList.add('ax-ripple');\n element.appendChild(circle);\n circle.addEventListener('animationend', () => {\n circle?.remove();\n });\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXRippleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.0.4\", type: AXRippleDirective, isStandalone: true, selector: \"[axRipple]\", inputs: { enabled: [\"axRipple\", \"enabled\"], axRippleColor: \"axRippleColor\" }, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.4\", ngImport: i0, type: AXRippleDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[axRipple]',\n }]\n }], propDecorators: { enabled: [{\n type: Input,\n args: ['axRipple']\n }], axRippleColor: [{\n type: Input\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmlwcGxlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2Nkay9jb21tb24vc3JjL2xpYi9kaXJlY3RpdmVzL3JpcHBsZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDcEQsT0FBTyxFQUNMLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsUUFBUSxFQUNSLFVBQVUsRUFDVixNQUFNLEVBQ04sS0FBSyxFQUVMLFdBQVcsR0FDWixNQUFNLGVBQWUsQ0FBQzs7QUFLdkIsTUFBTSxPQUFPLGlCQUFpQjtJQUg5QjtRQUlVLE9BQUUsR0FBRyxNQUFNLENBQTBCLFVBQVUsQ0FBQyxDQUFDO1FBQ2pELFFBQUcsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUdqQyxZQUFPLEdBQWEsSUFBSSxDQUFDO1FBRXZCLGtCQUFhLEdBQUcsMERBQTBELENBQUM7UUFHNUUsYUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM1QixlQUFVLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0tBMkMxQztJQXpDQyxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDakIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLENBQUMsS0FBaUIsRUFBRSxFQUFFO2dCQUNwRSxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzdCLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUNILENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsbUJBQW1CLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDbkYsQ0FBQztJQUVPLGNBQWMsQ0FBQyxLQUFpQjtRQUN0QyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFTyxZQUFZLENBQUMsS0FBaUI7UUFDcEMsTUFBTSxPQUFPLEdBQUcsS0FBSyxDQUFDLGFBQTRCLENBQUM7UUFDbkQsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNuRCxJQUFJLE1BQU07WUFBRSxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7UUFFNUIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7UUFDaEQsTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLHFCQUFxQixFQUFFLENBQUM7UUFDN0MsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNyRyxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ3JHLElBQUksaUJBQWlCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUM7WUFDdkMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDbkQsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUNyRSxNQUFNLE1BQU0sR0FBRyxRQUFRLEdBQUcsQ0FBQyxDQUFDO1lBRTVCLE1BQU0sQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLEdBQUcsUUFBUSxJQUFJLENBQUM7WUFDM0QsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUFDLEdBQUcsTUFBTSxJQUFJLENBQUM7WUFDdEMsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDLEdBQUcsTUFBTSxJQUFJLENBQUM7WUFDckMsTUFBTSxDQUFDLEtBQUssQ0FBQyxlQUFlLEdBQUcsR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDdkQsTUFBTSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDbEMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUM1QixNQUFNLENBQUMsZ0JBQWdCLENBQUMsY0FBYyxFQUFFLEdBQUcsRUFBRTtnQkFDM0MsTUFBTSxFQUFFLE1BQU0sRUFBRSxDQUFDO1lBQ25CLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUNILENBQUM7OEdBckRVLGlCQUFpQjtrR0FBakIsaUJBQWlCOzsyRkFBakIsaUJBQWlCO2tCQUg3QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxZQUFZO2lCQUN2Qjs4QkFNUSxPQUFPO3NCQURiLEtBQUs7dUJBQUMsVUFBVTtnQkFHUixhQUFhO3NCQUFyQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIERpcmVjdGl2ZSxcbiAgRE9DVU1FTlQsXG4gIEVsZW1lbnRSZWYsXG4gIGluamVjdCxcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgUExBVEZPUk1fSUQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbYXhSaXBwbGVdJyxcbn0pXG5leHBvcnQgY2xhc3MgQVhSaXBwbGVEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBwcml2YXRlIGVsID0gaW5qZWN0PEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+PihFbGVtZW50UmVmKTtcbiAgcHJpdmF0ZSBjZHIgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuXG4gIEBJbnB1dCgnYXhSaXBwbGUnKVxuICBwdWJsaWMgZW5hYmxlZD86IGJvb2xlYW4gPSB0cnVlO1xuXG4gIEBJbnB1dCgpIGF4UmlwcGxlQ29sb3IgPSAndmFyKC0tYXgtY29tcC1yaXBwbGUtYmctY29sb3IsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKSknO1xuXG4gIHJpcHBsZTogSFRNTFNwYW5FbGVtZW50IHwgbnVsbDtcbiAgcHJpdmF0ZSBkb2N1bWVudCA9IGluamVjdChET0NVTUVOVCk7XG4gIHByaXZhdGUgcGxhdGZvcm1JRCA9IGluamVjdChQTEFURk9STV9JRCk7XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgaWYgKHRoaXMuZW5hYmxlZCkge1xuICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKGV2ZW50OiBNb3VzZUV2ZW50KSA9PiB7XG4gICAgICAgIHRoaXMub25FbGVtZW50Q2xpY2soZXZlbnQpO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgdGhpcy5jcmVhdGVSaXBwbGUuYmluZCh0aGlzKSk7XG4gIH1cblxuICBwcml2YXRlIG9uRWxlbWVudENsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgdGhpcy5jcmVhdGVSaXBwbGUoZXZlbnQpO1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVSaXBwbGUoZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICBjb25zdCBlbGVtZW50ID0gZXZlbnQuY3VycmVudFRhcmdldCBhcyBIVE1MRWxlbWVudDtcbiAgICBjb25zdCBleGlzdHMgPSBlbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJy5heC1yaXBwbGUnKTtcbiAgICBpZiAoZXhpc3RzKSBleGlzdHMucmVtb3ZlKCk7XG5cbiAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUub3ZlcmZsb3cgPSAnaGlkZGVuJztcbiAgICBjb25zdCByZWN0ID0gZWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICBjb25zdCB4ID0gTWF0aC5mbG9vcigoKGV2ZW50LmNsaWVudFggLSByZWN0LmxlZnQpIC8gKHJlY3QucmlnaHQgLSByZWN0LmxlZnQpKSAqIGVsZW1lbnQuY2xpZW50V2lkdGgpO1xuICAgIGNvbnN0IHkgPSBNYXRoLmZsb29yKCgoZXZlbnQuY2xpZW50WSAtIHJlY3QudG9wKSAvIChyZWN0LmJvdHRvbSAtIHJlY3QudG9wKSkgKiBlbGVtZW50LmNsaWVudEhlaWdodCk7XG4gICAgaWYgKGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JRCkpIHtcbiAgICAgIGNvbnN0IGNpcmNsZSA9IHRoaXMuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc3BhbicpO1xuICAgICAgY29uc3QgZGlhbWV0ZXIgPSBNYXRoLm1heChlbGVtZW50LmNsaWVudFdpZHRoLCBlbGVtZW50LmNsaWVudEhlaWdodCk7XG4gICAgICBjb25zdCByYWRpdXMgPSBkaWFtZXRlciAvIDI7XG5cbiAgICAgIGNpcmNsZS5zdHlsZS53aWR0aCA9IGNpcmNsZS5zdHlsZS5oZWlnaHQgPSBgJHtkaWFtZXRlcn1weGA7XG4gICAgICBjaXJjbGUuc3R5bGUubGVmdCA9IGAke3ggLSByYWRpdXN9cHhgO1xuICAgICAgY2lyY2xlLnN0eWxlLnRvcCA9IGAke3kgLSByYWRpdXN9cHhgO1xuICAgICAgY2lyY2xlLnN0eWxlLmJhY2tncm91bmRDb2xvciA9IGAke3RoaXMuYXhSaXBwbGVDb2xvcn1gO1xuICAgICAgY2lyY2xlLmNsYXNzTGlzdC5hZGQoJ2F4LXJpcHBsZScpO1xuICAgICAgZWxlbWVudC5hcHBlbmRDaGlsZChjaXJjbGUpO1xuICAgICAgY2lyY2xlLmFkZEV2ZW50TGlzdGVuZXIoJ2FuaW1hdGlvbmVuZCcsICgpID0+IHtcbiAgICAgICAgY2lyY2xlPy5yZW1vdmUoKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxufVxuIl19","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LWNkay1jb21tb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jZGsvY29tbW9uL3NyYy9hY29yZXgtY2RrLWNvbW1vbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"acorex-cdk-common.mjs","sources":["../tmp-esm2022/common/lib/types/base/button.type.js","../tmp-esm2022/common/lib/types/base/color.type.js","../tmp-esm2022/common/lib/types/base/component.types.js","../tmp-esm2022/common/lib/types/base/events.types.js","../tmp-esm2022/common/lib/types/base/interactive.type.js","../tmp-esm2022/common/lib/types/base/look.type.js","../tmp-esm2022/common/lib/types/base/value.type.js","../tmp-esm2022/common/lib/types/placement.js","../tmp-esm2022/common/lib/types/selection-mode.js","../tmp-esm2022/common/lib/services/dom.service.js","../tmp-esm2022/common/lib/components/base-component.class.js","../tmp-esm2022/common/lib/components/interactive-component.class.js","../tmp-esm2022/common/lib/components/value-component.class.js","../tmp-esm2022/common/lib/classes/events.class.js","../tmp-esm2022/common/lib/classes/components.class.js","../tmp-esm2022/common/lib/classes/datalist.class.js","../tmp-esm2022/common/lib/classes/datasource.class.js","../tmp-esm2022/common/lib/classes/styles.class.js","../tmp-esm2022/common/lib/directives/auto-focus.directive.js","../tmp-esm2022/common/lib/services/hotkey.service.js","../tmp-esm2022/common/lib/directives/hotkey.directive.js","../tmp-esm2022/common/lib/directives/infinite-scroll.directive.js","../tmp-esm2022/common/lib/directives/responsive.directive.js","../tmp-esm2022/common/lib/common.module.js","../tmp-esm2022/common/lib/components/color-component.class.js","../tmp-esm2022/common/lib/components/look-component.class.js","../tmp-esm2022/common/lib/components/colorlook-component.class.js","../tmp-esm2022/common/lib/components/button-base-component.class.js","../tmp-esm2022/common/lib/components/input-base-value-component.class.js","../tmp-esm2022/common/lib/components/selection-base.component.class.js","../tmp-esm2022/common/lib/directives/delayed-value-changed.directive.js","../tmp-esm2022/common/lib/directives/inverted-color.directive.js","../tmp-esm2022/common/lib/directives/ripple.directive.js","../tmp-esm2022/common/acorex-cdk-common.js"],"sourcesContent":["import { Component, model, output } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class NXButtonComponent {\n constructor() {\n this.text = model(...(ngDevMode ? [undefined, { debugName: \"text\" }] : []));\n this.toggleableChange = output();\n this.selectedChange = output();\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: NXButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.1.0\", version: \"20.1.2\", type: NXButtonComponent, isStandalone: true, selector: \"ng-component\", inputs: { text: { classPropertyName: \"text\", publicName: \"text\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { text: \"textChange\", toggleableChange: \"toggleableChange\", selectedChange: \"selectedChange\" }, ngImport: i0, template: '', isInline: true }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: NXButtonComponent, decorators: [{\n type: Component,\n args: [{\n template: '',\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLnR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jZGsvY29tbW9uL3NyYy9saWIvdHlwZXMvYmFzZS9idXR0b24udHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBS3pELE1BQU0sT0FBZ0IsaUJBQWlCO0lBSHZDO1FBSUUsU0FBSSxHQUFHLEtBQUssMERBQVUsQ0FBQztRQUV2QixxQkFBZ0IsR0FBRyxNQUFNLEVBQVcsQ0FBQztRQUNyQyxtQkFBYyxHQUFHLE1BQU0sRUFBVyxDQUFDO0tBQ3BDOzhHQUxxQixpQkFBaUI7a0dBQWpCLGlCQUFpQixrVEFGM0IsRUFBRTs7MkZBRVEsaUJBQWlCO2tCQUh0QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxFQUFFO2lCQUNiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBtb2RlbCwgb3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZTogJycsXG59KVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIE5YQnV0dG9uQ29tcG9uZW50IHtcbiAgdGV4dCA9IG1vZGVsPHN0cmluZz4oKTtcblxuICB0b2dnbGVhYmxlQ2hhbmdlID0gb3V0cHV0PGJvb2xlYW4+KCk7XG4gIHNlbGVjdGVkQ2hhbmdlID0gb3V0cHV0PGJvb2xlYW4+KCk7XG59XG4iXX0=","import { Component, model } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class NXColorComponent {\n constructor() {\n this.color = model('default', ...(ngDevMode ? [{ debugName: \"color\" }] : []));\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: NXColorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.1.0\", version: \"20.1.2\", type: NXColorComponent, isStandalone: true, selector: \"ng-component\", inputs: { color: { classPropertyName: \"color\", publicName: \"color\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { color: \"colorChange\" }, ngImport: i0, template: '', isInline: true }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: NXColorComponent, decorators: [{\n type: Component,\n args: [{\n template: '',\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3IudHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2Nkay9jb21tb24vc3JjL2xpYi90eXBlcy9iYXNlL2NvbG9yLnR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTWpELE1BQU0sT0FBZ0IsZ0JBQWdCO0lBSHRDO1FBSUUsVUFBSyxHQUFHLEtBQUssQ0FBbUIsU0FBUyxpREFBQyxDQUFDO0tBQzVDOzhHQUZxQixnQkFBZ0I7a0dBQWhCLGdCQUFnQiwrT0FGMUIsRUFBRTs7MkZBRVEsZ0JBQWdCO2tCQUhyQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxFQUFFO2lCQUNiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBtb2RlbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhTdHlsZUNvbG9yVHlwZSB9IGZyb20gJy4uLy4uL2NsYXNzZXMvc3R5bGVzLmNsYXNzJztcblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlOiAnJyxcbn0pXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgTlhDb2xvckNvbXBvbmVudCB7XG4gIGNvbG9yID0gbW9kZWw8QVhTdHlsZUNvbG9yVHlwZT4oJ2RlZmF1bHQnKTtcbn1cbiJdfQ==","import { afterNextRender, ElementRef, inject, Injectable, signal } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class NXComponent {\n constructor() {\n this.#elementRef = inject(ElementRef);\n this.#isRendered = signal(false, ...(ngDevMode ? [{ debugName: \"#isRendered\" }] : []));\n this.isRendered = this.#isRendered.asReadonly();\n this.#afterNextRender = afterNextRender(() => {\n if (!this.isRendered()) {\n this.nativeElement['__axContext__'] = this;\n this.#isRendered.set(true);\n }\n });\n }\n #elementRef;\n #isRendered;\n #afterNextRender;\n get nativeElement() {\n return this.#elementRef.nativeElement;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: NXComponent, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: NXComponent }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: NXComponent, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LnR5cGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY2RrL2NvbW1vbi9zcmMvbGliL3R5cGVzL2Jhc2UvY29tcG9uZW50LnR5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUd4RixNQUFNLE9BQWdCLFdBQVc7SUFEakM7UUFFRSxnQkFBVyxHQUE0QixNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDMUQsZ0JBQVcsR0FBRyxNQUFNLENBQUMsS0FBSyx1REFBQyxDQUFDO1FBRWxCLGVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBRXJELHFCQUFnQixHQUFHLGVBQWUsQ0FBQyxHQUFHLEVBQUU7WUFDdEMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDO2dCQUN2QixJQUFJLENBQUMsYUFBYSxDQUFDLGVBQWUsQ0FBQyxHQUFHLElBQUksQ0FBQztnQkFDM0MsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDN0IsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0tBS0o7SUFmQyxXQUFXLENBQStDO0lBQzFELFdBQVcsQ0FBaUI7SUFJNUIsZ0JBQWdCLENBS2I7SUFFSCxJQUFXLGFBQWE7UUFDdEIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQztJQUN4QyxDQUFDOzhHQWZtQixXQUFXO2tIQUFYLFdBQVc7OzJGQUFYLFdBQVc7a0JBRGhDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhZnRlck5leHRSZW5kZXIsIEVsZW1lbnRSZWYsIGluamVjdCwgSW5qZWN0YWJsZSwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBOWENvbXBvbmVudCB7XG4gICNlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PiA9IGluamVjdChFbGVtZW50UmVmKTtcbiAgI2lzUmVuZGVyZWQgPSBzaWduYWwoZmFsc2UpO1xuXG4gIHByb3RlY3RlZCBpc1JlbmRlcmVkID0gdGhpcy4jaXNSZW5kZXJlZC5hc1JlYWRvbmx5KCk7XG5cbiAgI2FmdGVyTmV4dFJlbmRlciA9IGFmdGVyTmV4dFJlbmRlcigoKSA9PiB7XG4gICAgaWYgKCF0aGlzLmlzUmVuZGVyZWQoKSkge1xuICAgICAgdGhpcy5uYXRpdmVFbGVtZW50WydfX2F4Q29udGV4dF9fJ10gPSB0aGlzO1xuICAgICAgdGhpcy4jaXNSZW5kZXJlZC5zZXQodHJ1ZSk7XG4gICAgfVxuICB9KTtcblxuICBwdWJsaWMgZ2V0IG5hdGl2ZUVsZW1lbnQoKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLiNlbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cbiJdfQ==","/**\n * Base event class\n * @category Events\n */\nexport class NXEvent {\n}\n/**\n * Contains native event\n * @category Events\n */\nexport class NXNativeEvent extends NXEvent {\n}\n/**\n * Fires each time the user click the element.\n * @category Events\n */\nexport class NXClickEvent extends NXNativeEvent {\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnRzLnR5cGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY2RrL2NvbW1vbi9zcmMvbGliL3R5cGVzL2Jhc2UvZXZlbnRzLnR5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBOzs7R0FHRztBQUNILE1BQU0sT0FBTyxPQUFPO0NBRW5CO0FBRUQ7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLGFBQTRFLFNBQVEsT0FBVTtDQUUxRztBQUVEOzs7R0FHRztBQUNILE1BQU0sT0FBTyxZQUFrRCxTQUFRLGFBQTRCO0NBQUciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOWENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50LnR5cGVzJztcblxuLyoqXG4gKiAgQmFzZSBldmVudCBjbGFzc1xuICogQGNhdGVnb3J5IEV2ZW50c1xuICovXG5leHBvcnQgY2xhc3MgTlhFdmVudDxUIGV4dGVuZHMgTlhDb21wb25lbnQgPSBOWENvbXBvbmVudD4ge1xuICBzZW5kZXI6IFQ7XG59XG5cbi8qKlxuICogIENvbnRhaW5zIG5hdGl2ZSBldmVudFxuICogQGNhdGVnb3J5IEV2ZW50c1xuICovXG5leHBvcnQgY2xhc3MgTlhOYXRpdmVFdmVudDxUIGV4dGVuZHMgTlhDb21wb25lbnQgPSBOWENvbXBvbmVudCwgRSBleHRlbmRzIEV2ZW50ID0gRXZlbnQ+IGV4dGVuZHMgTlhFdmVudDxUPiB7XG4gIG5hdGl2ZUV2ZW50OiBFO1xufVxuXG4vKipcbiAqICBGaXJlcyBlYWNoIHRpbWUgdGhlIHVzZXIgY2xpY2sgdGhlIGVsZW1lbnQuXG4gKiBAY2F0ZWdvcnkgRXZlbnRzXG4gKi9cbmV4cG9ydCBjbGFzcyBOWENsaWNrRXZlbnQ8VCBleHRlbmRzIE5YQ29tcG9uZW50ID0gTlhDb21wb25lbnQ+IGV4dGVuZHMgTlhOYXRpdmVFdmVudDxULCBNb3VzZUV2ZW50PiB7fVxuIl19","import { AXHtmlUtil } from '@acorex/core/utils';\nimport { Component, model, output } from '@angular/core';\nimport { NXComponent } from './component.types';\nimport * as i0 from \"@angular/core\";\nexport class NXInteractiveComponent extends NXComponent {\n constructor() {\n super(...arguments);\n this.disabled = model(false, ...(ngDevMode ? [{ debugName: \"disabled\" }] : []));\n this.tabIndex = model(0, ...(ngDevMode ? [{ debugName: \"tabIndex\" }] : []));\n this.onFocus = output();\n this.onBlur = output();\n }\n focus() {\n AXHtmlUtil.focusElement(this.nativeElement);\n }\n blur() {\n AXHtmlUtil.blurElement(this.nativeElement);\n }\n hasFocus() {\n return AXHtmlUtil.hasFocus(this.nativeElement);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: NXInteractiveComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.1.0\", version: \"20.1.2\", type: NXInteractiveComponent, isStandalone: true, selector: \"ng-component\", inputs: { disabled: { classPropertyName: \"disabled\", publicName: \"disabled\", isSignal: true, isRequired: false, transformFunction: null }, tabIndex: { classPropertyName: \"tabIndex\", publicName: \"tabIndex\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { disabled: \"disabledChange\", tabIndex: \"tabIndexChange\", onFocus: \"onFocus\", onBlur: \"onBlur\" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: NXInteractiveComponent, decorators: [{\n type: Component,\n args: [{\n template: '',\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJhY3RpdmUudHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2Nkay9jb21tb24vc3JjL2xpYi90eXBlcy9iYXNlL2ludGVyYWN0aXZlLnR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7O0FBS2hELE1BQU0sT0FBZ0Isc0JBQXVCLFNBQVEsV0FBVztJQUhoRTs7UUFJRSxhQUFRLEdBQUcsS0FBSyxDQUFVLEtBQUssb0RBQUMsQ0FBQztRQUNqQyxhQUFRLEdBQUcsS0FBSyxDQUFTLENBQUMsb0RBQUMsQ0FBQztRQUU1QixZQUFPLEdBQUcsTUFBTSxFQUFFLENBQUM7UUFDbkIsV0FBTSxHQUFHLE1BQU0sRUFBRSxDQUFDO0tBYW5CO0lBWEMsS0FBSztRQUNILFVBQVUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFRCxJQUFJO1FBQ0YsVUFBVSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVELFFBQVE7UUFDTixPQUFPLFVBQVUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ2pELENBQUM7OEdBakJtQixzQkFBc0I7a0dBQXRCLHNCQUFzQix3ZEFGaEMsRUFBRTs7MkZBRVEsc0JBQXNCO2tCQUgzQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxFQUFFO2lCQUNiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhIdG1sVXRpbCB9IGZyb20gJ0BhY29yZXgvY29yZS91dGlscyc7XG5pbXBvcnQgeyBDb21wb25lbnQsIG1vZGVsLCBvdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5YQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnQudHlwZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGU6ICcnLFxufSlcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBOWEludGVyYWN0aXZlQ29tcG9uZW50IGV4dGVuZHMgTlhDb21wb25lbnQge1xuICBkaXNhYmxlZCA9IG1vZGVsPGJvb2xlYW4+KGZhbHNlKTtcbiAgdGFiSW5kZXggPSBtb2RlbDxudW1iZXI+KDApO1xuXG4gIG9uRm9jdXMgPSBvdXRwdXQoKTtcbiAgb25CbHVyID0gb3V0cHV0KCk7XG5cbiAgZm9jdXMoKSB7XG4gICAgQVhIdG1sVXRpbC5mb2N1c0VsZW1lbnQodGhpcy5uYXRpdmVFbGVtZW50KTtcbiAgfVxuXG4gIGJsdXIoKSB7XG4gICAgQVhIdG1sVXRpbC5ibHVyRWxlbWVudCh0aGlzLm5hdGl2ZUVsZW1lbnQpO1xuICB9XG5cbiAgaGFzRm9jdXMoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIEFYSHRtbFV0aWwuaGFzRm9jdXModGhpcy5uYXRpdmVFbGVtZW50KTtcbiAgfVxufVxuIl19","import { Component, model } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class NXLookComponent {\n constructor() {\n this.look = model('solid', ...(ngDevMode ? [{ debugName: \"look\" }] : []));\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: NXLookComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.1.0\", version: \"20.1.2\", type: NXLookComponent, isStandalone: true, selector: \"ng-component\", inputs: { look: { classPropertyName: \"look\", publicName: \"look\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { look: \"lookChange\" }, ngImport: i0, template: '', isInline: true }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: NXLookComponent, decorators: [{\n type: Component,\n args: [{\n template: '',\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9vay50eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY2RrL2NvbW1vbi9zcmMvbGliL3R5cGVzL2Jhc2UvbG9vay50eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQU1qRCxNQUFNLE9BQWdCLGVBQWU7SUFIckM7UUFJRSxTQUFJLEdBQUcsS0FBSyxDQUFrQixPQUFPLGdEQUFDLENBQUM7S0FDeEM7OEdBRnFCLGVBQWU7a0dBQWYsZUFBZSwwT0FGekIsRUFBRTs7MkZBRVEsZUFBZTtrQkFIcEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsRUFBRTtpQkFDYiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgbW9kZWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYU3R5bGVMb29rVHlwZSB9IGZyb20gJy4uLy4uL2NsYXNzZXMvc3R5bGVzLmNsYXNzJztcblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlOiAnJyxcbn0pXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgTlhMb29rQ29tcG9uZW50IHtcbiAgbG9vayA9IG1vZGVsPEFYU3R5bGVMb29rVHlwZT4oJ3NvbGlkJyk7XG59XG4iXX0=","import { Component, model, output } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class NXValueComponent {\n constructor() {\n this.readonly = model(...(ngDevMode ? [undefined, { debugName: \"readonly\" }] : []));\n this.name = model(...(ngDevMode ? [undefined, { debugName: \"name\" }] : []));\n this.value = model(...(ngDevMode ? [undefined, { debugName: \"value\" }] : []));\n this.onValueChanged = output();\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: NXValueComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.1.0\", version: \"20.1.2\", type: NXValueComponent, isStandalone: true, selector: \"ng-component\", inputs: { readonly: { classPropertyName: \"readonly\", publicName: \"readonly\", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: \"name\", publicName: \"name\", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: \"value\", publicName: \"value\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { readonly: \"readonlyChange\", name: \"nameChange\", value: \"valueChange\", onValueChanged: \"onValueChanged\" }, ngImport: i0, template: '', isInline: true }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: NXValueComponent, decorators: [{\n type: Component,\n args: [{\n template: '',\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsdWUudHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2Nkay9jb21tb24vc3JjL2xpYi90eXBlcy9iYXNlL3ZhbHVlLnR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUt6RCxNQUFNLE9BQWdCLGdCQUFnQjtJQUh0QztRQUlFLGFBQVEsR0FBRyxLQUFLLDhEQUFXLENBQUM7UUFDNUIsU0FBSSxHQUFHLEtBQUssMERBQVUsQ0FBQztRQUN2QixVQUFLLEdBQUcsS0FBSywyREFBRSxDQUFDO1FBRWhCLG1CQUFjLEdBQUcsTUFBTSxFQUFFLENBQUM7S0FDM0I7OEdBTnFCLGdCQUFnQjtrR0FBaEIsZ0JBQWdCLHVqQkFGMUIsRUFBRTs7MkZBRVEsZ0JBQWdCO2tCQUhyQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxFQUFFO2lCQUNiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBtb2RlbCwgb3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZTogJycsXG59KVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIE5YVmFsdWVDb21wb25lbnQge1xuICByZWFkb25seSA9IG1vZGVsPGJvb2xlYW4+KCk7XG4gIG5hbWUgPSBtb2RlbDxzdHJpbmc+KCk7XG4gIHZhbHVlID0gbW9kZWwoKTtcblxuICBvblZhbHVlQ2hhbmdlZCA9IG91dHB1dCgpO1xufVxuIl19","import { clone, flatten } from 'lodash-es';\nconst defaultOffset = 3;\nexport function convertToPlacement(value) {\n const result = [];\n if (value == null)\n return result;\n if (Array.isArray(value)) {\n const list = flatten(value.map((m) => convertToPlacement(m)).filter((m) => m != null)).map((m) => clone(m));\n result.push(...list);\n }\n else {\n if (typeof value === 'string') {\n const p = AX_PLACEMENT_MAP[value];\n if (p) {\n result.push(...[clone(p.origin), ...clone(p.alts)]);\n }\n }\n else {\n if ('originX' in value && 'originY' in value) {\n result.push(clone(value));\n }\n }\n }\n return result;\n}\nexport const AX_PLACEMENT_TOP = {\n originX: 'center',\n originY: 'top',\n overlayX: 'center',\n overlayY: 'bottom',\n offsetY: -defaultOffset,\n};\nexport const AX_PLACEMENT_TOP_START = {\n originX: 'start',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'bottom',\n offsetY: -defaultOffset,\n};\nexport const AX_PLACEMENT_TOP_END = {\n originX: 'end',\n originY: 'top',\n overlayX: 'end',\n overlayY: 'bottom',\n offsetY: -defaultOffset,\n};\nexport const AX_PLACEMENT_BOTTOM = {\n originX: 'center',\n originY: 'bottom',\n overlayX: 'center',\n overlayY: 'top',\n offsetY: defaultOffset,\n};\nexport const AX_PLACEMENT_BOTTOM_START = {\n originX: 'start',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'top',\n offsetY: defaultOffset,\n};\nexport const AX_PLACEMENT_BOTTOM_END = {\n originX: 'end',\n originY: 'bottom',\n overlayX: 'end',\n overlayY: 'top',\n offsetY: defaultOffset,\n};\nexport const AX_PLACEMENT_START = {\n originX: 'start',\n originY: 'center',\n overlayX: 'end',\n overlayY: 'center',\n offsetX: -defaultOffset,\n};\nexport const AX_PLACEMENT_START_TOP = {\n originX: 'start',\n originY: 'top',\n overlayX: 'end',\n overlayY: 'top',\n offsetX: -defaultOffset,\n};\nexport const AX_PLACEMENT_START_BOTTOM = {\n originX: 'start',\n originY: 'bottom',\n overlayX: 'end',\n overlayY: 'bottom',\n offsetX: -defaultOffset,\n};\nexport const AX_PLACEMENT_END = {\n originX: 'end',\n originY: 'center',\n overlayX: 'start',\n overlayY: 'center',\n offsetX: defaultOffset,\n};\nexport const AX_PLACEMENT_END_TOP = {\n originX: 'end',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'top',\n offsetX: defaultOffset,\n};\nexport const AX_PLACEMENT_END_BOTTOM = {\n originX: 'end',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'bottom',\n offsetX: defaultOffset,\n};\nexport const AX_PLACEMENT_MAP = {\n top: {\n origin: AX_PLACEMENT_TOP,\n alts: [AX_PLACEMENT_BOTTOM, AX_PLACEMENT_TOP_START, AX_PLACEMENT_TOP_END],\n },\n 'top-start': {\n origin: AX_PLACEMENT_TOP_START,\n alts: [AX_PLACEMENT_BOTTOM_START, AX_PLACEMENT_TOP_END, AX_PLACEMENT_BOTTOM_END],\n },\n 'top-end': {\n origin: AX_PLACEMENT_TOP_END,\n alts: [AX_PLACEMENT_BOTTOM_END, AX_PLACEMENT_TOP_START, AX_PLACEMENT_BOTTOM_START],\n },\n bottom: {\n origin: AX_PLACEMENT_BOTTOM,\n alts: [AX_PLACEMENT_TOP, AX_PLACEMENT_BOTTOM_START, AX_PLACEMENT_BOTTOM_END],\n },\n 'bottom-start': {\n origin: AX_PLACEMENT_BOTTOM_START,\n alts: [AX_PLACEMENT_TOP_START, AX_PLACEMENT_BOTTOM_END, AX_PLACEMENT_TOP_END],\n },\n 'bottom-end': {\n origin: AX_PLACEMENT_BOTTOM_END,\n alts: [AX_PLACEMENT_TOP_END, AX_PLACEMENT_BOTTOM_START, AX_PLACEMENT_TOP_START],\n },\n end: {\n origin: AX_PLACEMENT_END,\n alts: [AX_PLACEMENT_START, AX_PLACEMENT_END_TOP, AX_PLACEMENT_END_BOTTOM],\n },\n 'end-top': {\n origin: AX_PLACEMENT_END_TOP,\n alts: [AX_PLACEMENT_START_TOP, AX_PLACEMENT_END_BOTTOM, AX_PLACEMENT_START_BOTTOM],\n },\n 'end-bottom': {\n origin: AX_PLACEMENT_END_BOTTOM,\n alts: [AX_PLACEMENT_START_BOTTOM, AX_PLACEMENT_END_TOP, AX_PLACEMENT_START_TOP],\n },\n start: {\n origin: AX_PLACEMENT_START,\n alts: [AX_PLACEMENT_END, AX_PLACEMENT_START_TOP, AX_PLACEMENT_START_BOTTOM],\n },\n 'start-top': {\n origin: AX_PLACEMENT_START_TOP,\n alts: [AX_PLACEMENT_END_TOP, AX_PLACEMENT_START_BOTTOM, AX_PLACEMENT_END_BOTTOM],\n },\n 'start-bottom': {\n origin: AX_PLACEMENT_START_BOTTOM,\n alts: [AX_PLACEMENT_END_BOTTOM, AX_PLACEMENT_START_TOP, AX_PLACEMENT_END_TOP],\n },\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhY2VtZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY2RrL2NvbW1vbi9zcmMvbGliL3R5cGVzL3BsYWNlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUUzQyxNQUFNLGFBQWEsR0FBRyxDQUFDLENBQUM7QUFpQnhCLE1BQU0sVUFBVSxrQkFBa0IsQ0FBQyxLQUFzQjtJQUN2RCxNQUFNLE1BQU0sR0FBMEIsRUFBRSxDQUFDO0lBQ3pDLElBQUksS0FBSyxJQUFJLElBQUk7UUFBRSxPQUFPLE1BQU0sQ0FBQztJQUNqQyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUN6QixNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDNUcsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7U0FBTSxDQUFDO1FBQ04sSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUM5QixNQUFNLENBQUMsR0FBRyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNsQyxJQUFJLENBQUMsRUFBRSxDQUFDO2dCQUNOLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEVBQUUsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN0RCxDQUFDO1FBQ0gsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLFNBQVMsSUFBSSxLQUFLLElBQUksU0FBUyxJQUFJLEtBQUssRUFBRSxDQUFDO2dCQUM3QyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1lBQzVCLENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztJQUNELE9BQU8sTUFBTSxDQUFDO0FBQ2hCLENBQUM7QUFZRCxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBd0I7SUFDbkQsT0FBTyxFQUFFLFFBQVE7SUFDakIsT0FBTyxFQUFFLEtBQUs7SUFDZCxRQUFRLEVBQUUsUUFBUTtJQUNsQixRQUFRLEVBQUUsUUFBUTtJQUNsQixPQUFPLEVBQUUsQ0FBQyxhQUFhO0NBQ3hCLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBd0I7SUFDekQsT0FBTyxFQUFFLE9BQU87SUFDaEIsT0FBTyxFQUFFLEtBQUs7SUFDZCxRQUFRLEVBQUUsT0FBTztJQUNqQixRQUFRLEVBQUUsUUFBUTtJQUNsQixPQUFPLEVBQUUsQ0FBQyxhQUFhO0NBQ3hCLENBQUM7QUFDRixNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBd0I7SUFDdkQsT0FBTyxFQUFFLEtBQUs7SUFDZCxPQUFPLEVBQUUsS0FBSztJQUNkLFFBQVEsRUFBRSxLQUFLO0lBQ2YsUUFBUSxFQUFFLFFBQVE7SUFDbEIsT0FBTyxFQUFFLENBQUMsYUFBYTtDQUN4QixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQXdCO0lBQ3RELE9BQU8sRUFBRSxRQUFRO0lBQ2pCLE9BQU8sRUFBRSxRQUFRO0lBQ2pCLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLFFBQVEsRUFBRSxLQUFLO0lBQ2YsT0FBTyxFQUFFLGFBQWE7Q0FDdkIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUF3QjtJQUM1RCxPQUFPLEVBQUUsT0FBTztJQUNoQixPQUFPLEVBQUUsUUFBUTtJQUNqQixRQUFRLEVBQUUsT0FBTztJQUNqQixRQUFRLEVBQUUsS0FBSztJQUNmLE9BQU8sRUFBRSxhQUFhO0NBQ3ZCLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBd0I7SUFDMUQsT0FBTyxFQUFFLEtBQUs7SUFDZCxPQUFPLEVBQUUsUUFBUTtJQUNqQixRQUFRLEVBQUUsS0FBSztJQUNmLFFBQVEsRUFBRSxLQUFLO0lBQ2YsT0FBTyxFQUFFLGFBQWE7Q0FDdkIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUF3QjtJQUNyRCxPQUFPLEVBQUUsT0FBTztJQUNoQixPQUFPLEVBQUUsUUFBUTtJQUNqQixRQUFRLEVBQUUsS0FBSztJQUNmLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLE9BQU8sRUFBRSxDQUFDLGFBQWE7Q0FDeEIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUF3QjtJQUN6RCxPQUFPLEVBQUUsT0FBTztJQUNoQixPQUFPLEVBQUUsS0FBSztJQUNkLFFBQVEsRUFBRSxLQUFLO0lBQ2YsUUFBUSxFQUFFLEtBQUs7SUFDZixPQUFPLEVBQUUsQ0FBQyxhQUFhO0NBQ3hCLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSx5QkFBeUIsR0FBd0I7SUFDNUQsT0FBTyxFQUFFLE9BQU87SUFDaEIsT0FBTyxFQUFFLFFBQVE7SUFDakIsUUFBUSxFQUFFLEtBQUs7SUFDZixRQUFRLEVBQUUsUUFBUTtJQUNsQixPQUFPLEVBQUUsQ0FBQyxhQUFhO0NBQ3hCLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBd0I7SUFDbkQsT0FBTyxFQUFFLEtBQUs7SUFDZCxPQUFPLEVBQUUsUUFBUTtJQUNqQixRQUFRLEVBQUUsT0FBTztJQUNqQixRQUFRLEVBQUUsUUFBUTtJQUNsQixPQUFPLEVBQUUsYUFBYTtDQUN2QixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQXdCO0lBQ3ZELE9BQU8sRUFBRSxLQUFLO0lBQ2QsT0FBTyxFQUFFLEtBQUs7SUFDZCxRQUFRLEVBQUUsT0FBTztJQUNqQixRQUFRLEVBQUUsS0FBSztJQUNmLE9BQU8sRUFBRSxhQUFhO0NBQ3ZCLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBd0I7SUFDMUQsT0FBTyxFQUFFLEtBQUs7SUFDZCxPQUFPLEVBQUUsUUFBUTtJQUNqQixRQUFRLEVBQUUsT0FBTztJQUNqQixRQUFRLEVBQUUsUUFBUTtJQUNsQixPQUFPLEVBQUUsYUFBYTtDQUN2QixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBRXpCO0lBQ0YsR0FBRyxFQUFFO1FBQ0gsTUFBTSxFQUFFLGdCQUFnQjtRQUN4QixJQUFJLEVBQUUsQ0FBQyxtQkFBbUIsRUFBRSxzQkFBc0IsRUFBRSxvQkFBb0IsQ0FBQztLQUMxRTtJQUNELFdBQVcsRUFBRTtRQUNYLE1BQU0sRUFBRSxzQkFBc0I7UUFDOUIsSUFBSSxFQUFFLENBQUMseUJBQXlCLEVBQUUsb0JBQW9CLEVBQUUsdUJBQXVCLENBQUM7S0FDakY7SUFDRCxTQUFTLEVBQUU7UUFDVCxNQUFNLEVBQUUsb0JBQW9CO1FBQzVCLElBQUksRUFBRSxDQUFDLHVCQUF1QixFQUFFLHNCQUFzQixFQUFFLHlCQUF5QixDQUFDO0tBQ25GO0lBQ0QsTUFBTSxFQUFFO1FBQ04sTUFBTSxFQUFFLG1CQUFtQjtRQUMzQixJQUFJLEVBQUUsQ0FBQyxnQkFBZ0IsRUFBRSx5QkFBeUIsRUFBRSx1QkFBdUIsQ0FBQztLQUM3RTtJQUNELGNBQWMsRUFBRTtRQUNkLE1BQU0sRUFBRSx5QkFBeUI7UUFDakMsSUFBSSxFQUFFLENBQUMsc0JBQXNCLEVBQUUsdUJBQXVCLEVBQUUsb0JBQW9CLENBQUM7S0FDOUU7SUFDRCxZQUFZLEVBQUU7UUFDWixNQUFNLEVBQUUsdUJBQXVCO1FBQy9CLElBQUksRUFBRSxDQUFDLG9CQUFvQixFQUFFLHlCQUF5QixFQUFFLHNCQUFzQixDQUFDO0tBQ2hGO0lBQ0QsR0FBRyxFQUFFO1FBQ0gsTUFBTSxFQUFFLGdCQUFnQjtRQUN4QixJQUFJLEVBQUUsQ0FBQyxrQkFBa0IsRUFBRSxvQkFBb0IsRUFBRSx1QkFBdUIsQ0FBQztLQUMxRTtJQUNELFNBQVMsRUFBRTtRQUNULE1BQU0sRUFBRSxvQkFBb0I7UUFDNUIsSUFBSSxFQUFFLENBQUMsc0JBQXNCLEVBQUUsdUJBQXVCLEVBQUUseUJBQXlCLENBQUM7S0FDbkY7SUFDRCxZQUFZLEVBQUU7UUFDWixNQUFNLEVBQUUsdUJBQXVCO1FBQy9CLElBQUksRUFBRSxDQUFDLHlCQUF5QixFQUFFLG9CQUFvQixFQUFFLHNCQUFzQixDQUFDO0tBQ2hGO0lBQ0QsS0FBSyxFQUFFO1FBQ0wsTUFBTSxFQUFFLGtCQUFrQjtRQUMxQixJQUFJLEVBQUUsQ0FBQyxnQkFBZ0IsRUFBRSxzQkFBc0IsRUFBRSx5QkFBeUIsQ0FBQztLQUM1RTtJQUNELFdBQVcsRUFBRTtRQUNYLE1BQU0sRUFBRSxzQkFBc0I7UUFDOUIsSUFBSSxFQUFFLENBQUMsb0JBQW9CLEVBQUUseUJBQXlCLEVBQUUsdUJBQXVCLENBQUM7S0FDakY7SUFDRCxjQUFjLEVBQUU7UUFDZCxNQUFNLEVBQUUseUJBQXlCO1FBQ2pDLElBQUksRUFBRSxDQUFDLHVCQUF1QixFQUFFLHNCQUFzQixFQUFFLG9CQUFvQixDQUFDO0tBQzlFO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNsb25lLCBmbGF0dGVuIH0gZnJvbSAnbG9kYXNoLWVzJztcblxuY29uc3QgZGVmYXVsdE9mZnNldCA9IDM7XG5cbmV4cG9ydCB0eXBlIEFYUGxhY2VtZW50ID1cbiAgfCAndG9wJ1xuICB8ICd0b3Atc3RhcnQnXG4gIHwgJ3RvcC1lbmQnXG4gIHwgJ2JvdHRvbSdcbiAgfCAnYm90dG9tLXN0YXJ0J1xuICB8ICdib3R0b20tZW5kJ1xuICB8ICdlbmQnXG4gIHwgJ2VuZC10b3AnXG4gIHwgJ2VuZC1ib3R0b20nXG4gIHwgJ3N0YXJ0J1xuICB8ICdzdGFydC10b3AnXG4gIHwgJ3N0YXJ0LWJvdHRvbSc7XG5leHBvcnQgdHlwZSBBWFBsYWNlbWVudFR5cGUgPSBBWENvbm5lY3RlZFBvc2l0aW9uIHwgQVhDb25uZWN0ZWRQb3NpdGlvbltdIHwgQVhQbGFjZW1lbnQgfCBBWFBsYWNlbWVudFtdO1xuXG5leHBvcnQgZnVuY3Rpb24gY29udmVydFRvUGxhY2VtZW50KHZhbHVlOiBBWFBsYWNlbWVudFR5cGUpOiBBWENvbm5lY3RlZFBvc2l0aW9uW10ge1xuICBjb25zdCByZXN1bHQ6IEFYQ29ubmVjdGVkUG9zaXRpb25bXSA9IFtdO1xuICBpZiAodmFsdWUgPT0gbnVsbCkgcmV0dXJuIHJlc3VsdDtcbiAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgY29uc3QgbGlzdCA9IGZsYXR0ZW4odmFsdWUubWFwKChtKSA9PiBjb252ZXJ0VG9QbGFjZW1lbnQobSkpLmZpbHRlcigobSkgPT4gbSAhPSBudWxsKSkubWFwKChtKSA9PiBjbG9uZShtKSk7XG4gICAgcmVzdWx0LnB1c2goLi4ubGlzdCk7XG4gIH0gZWxzZSB7XG4gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIGNvbnN0IHAgPSBBWF9QTEFDRU1FTlRfTUFQW3ZhbHVlXTtcbiAgICAgIGlmIChwKSB7XG4gICAgICAgIHJlc3VsdC5wdXNoKC4uLltjbG9uZShwLm9yaWdpbiksIC4uLmNsb25lKHAuYWx0cyldKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKCdvcmlnaW5YJyBpbiB2YWx1ZSAmJiAnb3JpZ2luWScgaW4gdmFsdWUpIHtcbiAgICAgICAgcmVzdWx0LnB1c2goY2xvbmUodmFsdWUpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgcmV0dXJuIHJlc3VsdDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBWENvbm5lY3RlZFBvc2l0aW9uIHtcbiAgb3JpZ2luWDogJ3N0YXJ0JyB8ICdjZW50ZXInIHwgJ2VuZCc7XG4gIG9yaWdpblk6ICd0b3AnIHwgJ2NlbnRlcicgfCAnYm90dG9tJztcbiAgb3ZlcmxheVg6ICdzdGFydCcgfCAnY2VudGVyJyB8ICdlbmQnO1xuICBvdmVybGF5WTogJ3RvcCcgfCAnY2VudGVyJyB8ICdib3R0b20nO1xuICB3ZWlnaHQ/OiBudW1iZXI7XG4gIG9mZnNldFg/OiBudW1iZXI7XG4gIG9mZnNldFk/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBjb25zdCBBWF9QTEFDRU1FTlRfVE9QOiBBWENvbm5lY3RlZFBvc2l0aW9uID0ge1xuICBvcmlnaW5YOiAnY2VudGVyJyxcbiAgb3JpZ2luWTogJ3RvcCcsXG4gIG92ZXJsYXlYOiAnY2VudGVyJyxcbiAgb3ZlcmxheVk6ICdib3R0b20nLFxuICBvZmZzZXRZOiAtZGVmYXVsdE9mZnNldCxcbn07XG5cbmV4cG9ydCBjb25zdCBBWF9QTEFDRU1FTlRfVE9QX1NUQVJUOiBBWENvbm5lY3RlZFBvc2l0aW9uID0ge1xuICBvcmlnaW5YOiAnc3RhcnQnLFxuICBvcmlnaW5ZOiAndG9wJyxcbiAgb3ZlcmxheVg6ICdzdGFydCcsXG4gIG92ZXJsYXlZOiAnYm90dG9tJyxcbiAgb2Zmc2V0WTogLWRlZmF1bHRPZmZzZXQsXG59O1xuZXhwb3J0IGNvbnN0IEFYX1BMQUNFTUVOVF9UT1BfRU5EOiBBWENvbm5lY3RlZFBvc2l0aW9uID0ge1xuICBvcmlnaW5YOiAnZW5kJyxcbiAgb3JpZ2luWTogJ3RvcCcsXG4gIG92ZXJsYXlYOiAnZW5kJyxcbiAgb3ZlcmxheVk6ICdib3R0b20nLFxuICBvZmZzZXRZOiAtZGVmYXVsdE9mZnNldCxcbn07XG5cbmV4cG9ydCBjb25zdCBBWF9QTEFDRU1FTlRfQk9UVE9NOiBBWENvbm5lY3RlZFBvc2l0aW9uID0ge1xuICBvcmlnaW5YOiAnY2VudGVyJyxcbiAgb3JpZ2luWTogJ2JvdHRvbScsXG4gIG92ZXJsYXlYOiAnY2VudGVyJyxcbiAgb3ZlcmxheVk6ICd0b3AnLFxuICBvZmZzZXRZOiBkZWZhdWx0T2Zmc2V0LFxufTtcblxuZXhwb3J0IGNvbnN0IEFYX1BMQUNFTUVOVF9CT1RUT01fU1RBUlQ6IEFYQ29ubmVjdGVkUG9zaXRpb24gPSB7XG4gIG9yaWdpblg6ICdzdGFydCcsXG4gIG9yaWdpblk6ICdib3R0b20nLFxuICBvdmVybGF5WDogJ3N0YXJ0JyxcbiAgb3ZlcmxheVk6ICd0b3AnLFxuICBvZmZzZXRZOiBkZWZhdWx0T2Zmc2V0LFxufTtcblxuZXhwb3J0IGNvbnN0IEFYX1BMQUNFTUVOVF9CT1RUT01fRU5EOiBBWENvbm5lY3RlZFBvc2l0aW9uID0ge1xuICBvcmlnaW5YOiAnZW5kJyxcbiAgb3JpZ2luWTogJ2JvdHRvbScsXG4gIG92ZXJsYXlYOiAnZW5kJyxcbiAgb3ZlcmxheVk6ICd0b3AnLFxuICBvZmZzZXRZOiBkZWZhdWx0T2Zmc2V0LFxufTtcblxuZXhwb3J0IGNvbnN0IEFYX1BMQUNFTUVOVF9TVEFSVDogQVhDb25uZWN0ZWRQb3NpdGlvbiA9IHtcbiAgb3JpZ2luWDogJ3N0YXJ0JyxcbiAgb3JpZ2luWTogJ2NlbnRlcicsXG4gIG92ZXJsYXlYOiAnZW5kJyxcbiAgb3ZlcmxheVk6ICdjZW50ZXInLFxuICBvZmZzZXRYOiAtZGVmYXVsdE9mZnNldCxcbn07XG5cbmV4cG9ydCBjb25zdCBBWF9QTEFDRU1FTlRfU1RBUlRfVE9QOiBBWENvbm5lY3RlZFBvc2l0aW9uID0ge1xuICBvcmlnaW5YOiAnc3RhcnQnLFxuICBvcmlnaW5ZOiAndG9wJyxcbiAgb3ZlcmxheVg6ICdlbmQnLFxuICBvdmVybGF5WTogJ3RvcCcsXG4gIG9mZnNldFg6IC1kZWZhdWx0T2Zmc2V0LFxufTtcblxuZXhwb3J0IGNvbnN0IEFYX1BMQUNFTUVOVF9TVEFSVF9CT1RUT006IEFYQ29ubmVjdGVkUG9zaXRpb24gPSB7XG4gIG9yaWdpblg6ICdzdGFydCcsXG4gIG9yaWdpblk6ICdib3R0b20nLFxuICBvdmVybGF5WDogJ2VuZCcsXG4gIG92ZXJsYXlZOiAnYm90dG9tJyxcbiAgb2Zmc2V0WDogLWRlZmF1bHRPZmZzZXQsXG59O1xuXG5leHBvcnQgY29uc3QgQVhfUExBQ0VNRU5UX0VORDogQVhDb25uZWN0ZWRQb3NpdGlvbiA9IHtcbiAgb3JpZ2luWDogJ2VuZCcsXG4gIG9yaWdpblk6ICdjZW50ZXInLFxuICBvdmVybGF5WDogJ3N0YXJ0JyxcbiAgb3ZlcmxheVk6ICdjZW50ZXInLFxuICBvZmZzZXRYOiBkZWZhdWx0T2Zmc2V0LFxufTtcblxuZXhwb3J0IGNvbnN0IEFYX1BMQUNFTUVOVF9FTkRfVE9QOiBBWENvbm5lY3RlZFBvc2l0aW9uID0ge1xuICBvcmlnaW5YOiAnZW5kJyxcbiAgb3JpZ2luWTogJ3RvcCcsXG4gIG92ZXJsYXlYOiAnc3RhcnQnLFxuICBvdmVybGF5WTogJ3RvcCcsXG4gIG9mZnNldFg6IGRlZmF1bHRPZmZzZXQsXG59O1xuXG5leHBvcnQgY29uc3QgQVhfUExBQ0VNRU5UX0VORF9CT1RUT006IEFYQ29ubmVjdGVkUG9zaXRpb24gPSB7XG4gIG9yaWdpblg6ICdlbmQnLFxuICBvcmlnaW5ZOiAnYm90dG9tJyxcbiAgb3ZlcmxheVg6ICdzdGFydCcsXG4gIG92ZXJsYXlZOiAnYm90dG9tJyxcbiAgb2Zmc2V0WDogZGVmYXVsdE9mZnNldCxcbn07XG5cbmV4cG9ydCBjb25zdCBBWF9QTEFDRU1FTlRfTUFQOiB7XG4gIFtrZXk6IHN0cmluZ106IHsgb3JpZ2luOiBBWENvbm5lY3RlZFBvc2l0aW9uOyBhbHRzPzogQVhDb25uZWN0ZWRQb3NpdGlvbltdIH07XG59ID0ge1xuICB0b3A6IHtcbiAgICBvcmlnaW46IEFYX1BMQUNFTUVOVF9UT1AsXG4gICAgYWx0czogW0FYX1BMQUNFTUVOVF9CT1RUT00sIEFYX1BMQUNFTUVOVF9UT1BfU1RBUlQsIEFYX1BMQUNFTUVOVF9UT1BfRU5EXSxcbiAgfSxcbiAgJ3RvcC1zdGFydCc6IHtcbiAgICBvcmlnaW46IEFYX1BMQUNFTUVOVF9UT1BfU1RBUlQsXG4gICAgYWx0czogW0FYX1BMQUNFTUVOVF9CT1RUT01fU1RBUlQsIEFYX1BMQUNFTUVOVF9UT1BfRU5ELCBBWF9QTEFDRU1FTlRfQk9UVE9NX0VORF0sXG4gIH0sXG4gICd0b3AtZW5kJzoge1xuICAgIG9yaWdpbjogQVhfUExBQ0VNRU5UX1RPUF9FTkQsXG4gICAgYWx0czogW0FYX1BMQUNFTUVOVF9CT1RUT01fRU5ELCBBWF9QTEFDRU1FTlRfVE9QX1NUQVJULCBBWF9QTEFDRU1FTlRfQk9UVE9NX1NUQVJUXSxcbiAgfSxcbiAgYm90dG9tOiB7XG4gICAgb3JpZ2luOiBBWF9QTEFDRU1FTlRfQk9UVE9NLFxuICAgIGFsdHM6IFtBWF9QTEFDRU1FTlRfVE9QLCBBWF9QTEFDRU1FTlRfQk9UVE9NX1NUQVJULCBBWF9QTEFDRU1FTlRfQk9UVE9NX0VORF0sXG4gIH0sXG4gICdib3R0b20tc3RhcnQnOiB7XG4gICAgb3JpZ2luOiBBWF9QTEFDRU1FTlRfQk9UVE9NX1NUQVJULFxuICAgIGFsdHM6IFtBWF9QTEFDRU1FTlRfVE9QX1NUQVJULCBBWF9QTEFDRU1FTlRfQk9UVE9NX0VORCwgQVhfUExBQ0VNRU5UX1RPUF9FTkRdLFxuICB9LFxuICAnYm90dG9tLWVuZCc6IHtcbiAgICBvcmlnaW46IEFYX1BMQUNFTUVOVF9CT1RUT01fRU5ELFxuICAgIGFsdHM6IFtBWF9QTEFDRU1FTlRfVE9QX0VORCwgQVhfUExBQ0VNRU5UX0JPVFRPTV9TVEFSVCwgQVhfUExBQ0VNRU5UX1RPUF9TVEFSVF0sXG4gIH0sXG4gIGVuZDoge1xuICAgIG9yaWdpbjogQVhfUExBQ0VNRU5UX0VORCxcbiAgICBhbHRzOiBbQVhfUExBQ0VNRU5UX1NUQVJULCBBWF9QTEFDRU1FTlRfRU5EX1RPUCwgQVhfUExBQ0VNRU5UX0VORF9CT1RUT01dLFxuICB9LFxuICAnZW5kLXRvcCc6IHtcbiAgICBvcmlnaW46IEFYX1BMQUNFTUVOVF9FTkRfVE9QLFxuICAgIGFsdHM6IFtBWF9QTEFDRU1FTlRfU1RBUlRfVE9QLCBBWF9QTEFDRU1FTlRfRU5EX0JPVFRPTSwgQVhfUExBQ0VNRU5UX1NUQVJUX0JPVFRPTV0sXG4gIH0sXG4gICdlbmQtYm90dG9tJzoge1xuICAgIG9yaWdpbjogQVhfUExBQ0VNRU5UX0VORF9CT1RUT00sXG4gICAgYWx0czogW0FYX1BMQUNFTUVOVF9TVEFSVF9CT1RUT00sIEFYX1BMQUNFTUVOVF9FTkRfVE9QLCBBWF9QTEFDRU1FTlRfU1RBUlRfVE9QXSxcbiAgfSxcbiAgc3RhcnQ6IHtcbiAgICBvcmlnaW46IEFYX1BMQUNFTUVOVF9TVEFSVCxcbiAgICBhbHRzOiBbQVhfUExBQ0VNRU5UX0VORCwgQVhfUExBQ0VNRU5UX1NUQVJUX1RPUCwgQVhfUExBQ0VNRU5UX1NUQVJUX0JPVFRPTV0sXG4gIH0sXG4gICdzdGFydC10b3AnOiB7XG4gICAgb3JpZ2luOiBBWF9QTEFDRU1FTlRfU1RBUlRfVE9QLFxuICAgIGFsdHM6IFtBWF9QTEFDRU1FTlRfRU5EX1RPUCwgQVhfUExBQ0VNRU5UX1NUQVJUX0JPVFRPTSwgQVhfUExBQ0VNRU5UX0VORF9CT1RUT01dLFxuICB9LFxuICAnc3RhcnQtYm90dG9tJzoge1xuICAgIG9yaWdpbjogQVhfUExBQ0VNRU5UX1NUQVJUX0JPVFRPTSxcbiAgICBhbHRzOiBbQVhfUExBQ0VNRU5UX0VORF9CT1RUT00sIEFYX1BMQUNFTUVOVF9TVEFSVF9UT1AsIEFYX1BMQUNFTUVOVF9FTkRfVE9QXSxcbiAgfSxcbn07XG4iXX0=","/**\n * A token that specifies the selection mode of component.\n */\nexport {};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW9uLW1vZGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jZGsvY29tbW9uL3NyYy9saWIvdHlwZXMvc2VsZWN0aW9uLW1vZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUciLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEEgdG9rZW4gdGhhdCBzcGVjaWZpZXMgdGhlICBzZWxlY3Rpb24gbW9kZSBvZiBjb21wb25lbnQuXG4gKi9cblxuZXhwb3J0IHR5cGUgQVhTZWxlY3Rpb25Nb2RlID0gJ3NpbmdsZScgfCAnbXVsdGlwbGUnIHwgJ25vbmUnO1xuIl19","import { Injectable } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class AXDomService {\n generateElementId() {\n const dateString = Date.now().toString(36);\n const randomness = Math.random().toString(36).substr(2);\n return dateString + randomness;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXDomService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXDomService, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXDomService, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9tLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jZGsvY29tbW9uL3NyYy9saWIvc2VydmljZXMvZG9tLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFHM0MsTUFBTSxPQUFPLFlBQVk7SUFDdkIsaUJBQWlCO1FBQ2YsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUMzQyxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN4RCxPQUFPLFVBQVUsR0FBRyxVQUFVLENBQUM7SUFDakMsQ0FBQzs4R0FMVSxZQUFZO2tIQUFaLFlBQVksY0FEQyxNQUFNOzsyRkFDbkIsWUFBWTtrQkFEeEIsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgQVhEb21TZXJ2aWNlIHtcbiAgZ2VuZXJhdGVFbGVtZW50SWQoKTogc3RyaW5nIHtcbiAgICBjb25zdCBkYXRlU3RyaW5nID0gRGF0ZS5ub3coKS50b1N0cmluZygzNik7XG4gICAgY29uc3QgcmFuZG9tbmVzcyA9IE1hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLnN1YnN0cigyKTtcbiAgICByZXR1cm4gZGF0ZVN0cmluZyArIHJhbmRvbW5lc3M7XG4gIH1cbn1cbiJdfQ==","import { ChangeDetectorRef, ElementRef, EventEmitter, Injectable, ViewContainerRef, inject } from '@angular/core';\nimport { AXDomService } from '../services/dom.service';\nimport * as i0 from \"@angular/core\";\nexport class MXBaseComponent {\n constructor() {\n this._cdr = inject(ChangeDetectorRef);\n this._elementRef = inject(ElementRef);\n this._viewRef = inject(ViewContainerRef);\n this._domService = inject(AXDomService);\n this._id = this._domService.generateElementId();\n /**\n * Fired when an option related to the component changes.\n *\n * @event\n */\n this.onOptionChanged = new EventEmitter();\n }\n get id() {\n return this._id;\n }\n set id(v) {\n this._id = v;\n }\n get cdr() {\n return this._cdr;\n }\n getHostElement() {\n return this._elementRef?.nativeElement;\n }\n getViewContainer() {\n return this._viewRef;\n }\n internalOptionChanging(option) {\n return option?.value;\n }\n internalOptionChanged(option) { }\n /**\n * @ignore\n */\n ngOnInit() {\n this.getHostElement().__axContext__ = this;\n }\n setOption(option) {\n const oldValue = this[option.name];\n let newValue = this.internalOptionChanging({\n name: option.name,\n value: option.value,\n });\n if (option.beforeCallback) {\n newValue = option.beforeCallback(oldValue, newValue);\n }\n //TODO : check real changes if value is object\n if (oldValue != newValue) {\n this[`_${option.name}`] = option.value;\n this.onOptionChanged.emit({\n component: this,\n name: option.name,\n newValue,\n oldValue,\n });\n const emitter = this[`${option.name}Change`];\n emitter?.emit(newValue);\n this.internalOptionChanged({ name: option.name, value: newValue });\n }\n if (option.afterCallback)\n option.afterCallback(oldValue, newValue);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: MXBaseComponent, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: MXBaseComponent }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: MXBaseComponent, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1jb21wb25lbnQuY2xhc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jZGsvY29tbW9uL3NyYy9saWIvY29tcG9uZW50cy9iYXNlLWNvbXBvbmVudC5jbGFzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWxILE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7QUFldkQsTUFBTSxPQUFnQixlQUFlO0lBRHJDO1FBRVUsU0FBSSxHQUFzQixNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUNwRCxnQkFBVyxHQUFlLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUM3QyxhQUFRLEdBQXFCLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3RELGdCQUFXLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBRW5DLFFBQUcsR0FBVyxJQUFJLENBQUMsV0FBVyxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFnQzNEOzs7O1dBSUc7UUFDSSxvQkFBZSxHQUF1QyxJQUFJLFlBQVksRUFBd0IsQ0FBQztLQTBCdkc7SUE5REMsSUFBVyxFQUFFO1FBQ1gsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDO0lBQ2xCLENBQUM7SUFDRCxJQUFXLEVBQUUsQ0FBQyxDQUFTO1FBQ3JCLElBQUksQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDO0lBQ2YsQ0FBQztJQUVELElBQWMsR0FBRztRQUNmLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztJQUNuQixDQUFDO0lBRU0sY0FBYztRQUNuQixPQUFPLElBQUksQ0FBQyxXQUFXLEVBQUUsYUFBa0IsQ0FBQztJQUM5QyxDQUFDO0lBRVMsZ0JBQWdCO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBRVMsc0JBQXNCLENBQUMsTUFBaUM7UUFDaEUsT0FBTyxNQUFNLEVBQUUsS0FBSyxDQUFDO0lBQ3ZCLENBQUM7SUFFUyxxQkFBcUIsQ0FBQyxNQUFnQyxJQUFTLENBQUM7SUFDMUU7O09BRUc7SUFDTyxRQUFRO1FBQ2YsSUFBSSxDQUFDLGNBQWMsRUFBVSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7SUFDdEQsQ0FBQztJQVNNLFNBQVMsQ0FBVSxNQUErQjtRQUN2RCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ25DLElBQUksUUFBUSxHQUFHLElBQUksQ0FBQyxzQkFBc0IsQ0FBQztZQUN6QyxJQUFJLEVBQUUsTUFBTSxDQUFDLElBQUk7WUFDakIsS0FBSyxFQUFFLE1BQU0sQ0FBQyxLQUFLO1NBQ3BCLENBQUMsQ0FBQztRQUNILElBQUksTUFBTSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQzFCLFFBQVEsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUN2RCxDQUFDO1FBQ0QsOENBQThDO1FBQzlDLElBQUksUUFBUSxJQUFJLFFBQVEsRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxJQUFJLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUM7WUFDdkMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUM7Z0JBQ3hCLFNBQVMsRUFBRSxJQUFJO2dCQUNmLElBQUksRUFBRSxNQUFNLENBQUMsSUFBSTtnQkFDakIsUUFBUTtnQkFDUixRQUFRO2FBQ1QsQ0FBQyxDQUFDO1lBQ0gsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLEdBQUcsTUFBTSxDQUFDLElBQUksUUFBUSxDQUFzQixDQUFDO1lBQ2xFLE9BQU8sRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDeEIsSUFBSSxDQUFDLHFCQUFxQixDQUFDLEVBQUUsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7UUFDckUsQ0FBQztRQUNELElBQUksTUFBTSxDQUFDLGFBQWE7WUFBRSxNQUFNLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUNyRSxDQUFDOzhHQXBFbUIsZUFBZTtrSEFBZixlQUFlOzsyRkFBZixlQUFlO2tCQURwQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5qZWN0YWJsZSwgVmlld0NvbnRhaW5lclJlZiwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWE9wdGlvbkNoYW5nZWRFdmVudCB9IGZyb20gJy4uL2NsYXNzZXMvZXZlbnRzLmNsYXNzJztcbmltcG9ydCB7IEFYRG9tU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2RvbS5zZXJ2aWNlJztcblxuZXhwb3J0IHR5cGUgTVhDb21wb25lbnRPcHRpb25DaGFuZ2luZzxUID0gYW55PiA9IHsgbmFtZTogc3RyaW5nOyB2YWx1ZT86IFQgfTtcbmV4cG9ydCB0eXBlIE1YQ29tcG9uZW50T3B0aW9uQ2hhbmdlZDxUID0gYW55PiA9IE1YQ29tcG9uZW50T3B0aW9uQ2hhbmdpbmc8VD47XG5cbmV4cG9ydCB0eXBlIE1YQ29tcG9uZW50U2V0T3B0aW9uPFQ+ID0ge1xuICBuYW1lOiBzdHJpbmc7XG4gIHZhbHVlPzogVDtcbiAgYWZ0ZXJDYWxsYmFjaz86IChvbGRWYWx1ZT86IFQsIG5ld1ZhbHVlPzogVCkgPT4gdm9pZDtcbiAgYmVmb3JlQ2FsbGJhY2s/OiAob2xkVmFsdWU/OiBULCBuZXdWYWx1ZT86IFQpID0+IHZvaWQ7XG59O1xuXG5leHBvcnQgdHlwZSBBWENvbXBvbmVudFN0YXRlID0gJ2NsZWFyJyB8ICdzdWNjZXNzJyB8ICdlcnJvcic7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBNWEJhc2VDb21wb25lbnQge1xuICBwcml2YXRlIF9jZHI6IENoYW5nZURldGVjdG9yUmVmID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcbiAgcHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZiA9IGluamVjdChFbGVtZW50UmVmKTtcbiAgcHJpdmF0ZSBfdmlld1JlZjogVmlld0NvbnRhaW5lclJlZiA9IGluamVjdChWaWV3Q29udGFpbmVyUmVmKTtcbiAgcHJpdmF0ZSBfZG9tU2VydmljZSA9IGluamVjdChBWERvbVNlcnZpY2UpO1xuXG4gIHByaXZhdGUgX2lkOiBzdHJpbmcgPSB0aGlzLl9kb21TZXJ2aWNlLmdlbmVyYXRlRWxlbWVudElkKCk7XG4gIHB1YmxpYyBnZXQgaWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5faWQ7XG4gIH1cbiAgcHVibGljIHNldCBpZCh2OiBzdHJpbmcpIHtcbiAgICB0aGlzLl9pZCA9IHY7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0IGNkcigpOiBDaGFuZ2VEZXRlY3RvclJlZiB7XG4gICAgcmV0dXJuIHRoaXMuX2NkcjtcbiAgfVxuXG4gIHB1YmxpYyBnZXRIb3N0RWxlbWVudDxUID0gSFRNTEVsZW1lbnQ+KCk6IFQge1xuICAgIHJldHVybiB0aGlzLl9lbGVtZW50UmVmPy5uYXRpdmVFbGVtZW50IGFzIFQ7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0Vmlld0NvbnRhaW5lcigpOiBWaWV3Q29udGFpbmVyUmVmIHtcbiAgICByZXR1cm4gdGhpcy5fdmlld1JlZjtcbiAgfVxuXG4gIHByb3RlY3RlZCBpbnRlcm5hbE9wdGlvbkNoYW5naW5nKG9wdGlvbjogTVhDb21wb25lbnRPcHRpb25DaGFuZ2luZyk6IGFueSB7XG4gICAgcmV0dXJuIG9wdGlvbj8udmFsdWU7XG4gIH1cblxuICBwcm90ZWN0ZWQgaW50ZXJuYWxPcHRpb25DaGFuZ2VkKG9wdGlvbjogTVhDb21wb25lbnRPcHRpb25DaGFuZ2VkKTogdm9pZCB7fVxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIHByb3RlY3RlZCBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAodGhpcy5nZXRIb3N0RWxlbWVudCgpIGFzIGFueSkuX19heENvbnRleHRfXyA9IHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogRmlyZWQgd2hlbiBhbiBvcHRpb24gcmVsYXRlZCB0byB0aGUgY29tcG9uZW50IGNoYW5nZXMuXG4gICAqXG4gICAqIEBldmVudFxuICAgKi9cbiAgcHVibGljIG9uT3B0aW9uQ2hhbmdlZDogRXZlbnRFbWl0dGVyPEFYT3B0aW9uQ2hhbmdlZEV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8QVhPcHRpb25DaGFuZ2VkRXZlbnQ+KCk7XG5cbiAgcHVibGljIHNldE9wdGlvbjxUID0gYW55PihvcHRpb246IE1YQ29tcG9uZW50U2V0T3B0aW9uPFQ+KSB7XG4gICAgY29uc3Qgb2xkVmFsdWUgPSB0aGlzW29wdGlvbi5uYW1lXTtcbiAgICBsZXQgbmV3VmFsdWUgPSB0aGlzLmludGVybmFsT3B0aW9uQ2hhbmdpbmcoe1xuICAgICAgbmFtZTogb3B0aW9uLm5hbWUsXG4gICAgICB2YWx1ZTogb3B0aW9uLnZhbHVlLFxuICAgIH0pO1xuICAgIGlmIChvcHRpb24uYmVmb3JlQ2FsbGJhY2spIHtcbiAgICAgIG5ld1ZhbHVlID0gb3B0aW9uLmJlZm9yZUNhbGxiYWNrKG9sZFZhbHVlLCBuZXdWYWx1ZSk7XG4gICAgfVxuICAgIC8vVE9ETyA6IGNoZWNrIHJlYWwgY2hhbmdlcyBpZiB2YWx1ZSBpcyBvYmplY3RcbiAgICBpZiAob2xkVmFsdWUgIT0gbmV3VmFsdWUpIHtcbiAgICAgIHRoaXNbYF8ke29wdGlvbi5uYW1lfWBdID0gb3B0aW9uLnZhbHVlO1xuICAgICAgdGhpcy5vbk9wdGlvbkNoYW5nZWQuZW1pdCh7XG4gICAgICAgIGNvbXBvbmVudDogdGhpcyxcbiAgICAgICAgbmFtZTogb3B0aW9uLm5hbWUsXG4gICAgICAgIG5ld1ZhbHVlLFxuICAgICAgICBvbGRWYWx1ZSxcbiAgICAgIH0pO1xuICAgICAgY29uc3QgZW1pdHRlciA9IHRoaXNbYCR7b3B0aW9uLm5hbWV9Q2hhbmdlYF0gYXMgRXZlbnRFbWl0dGVyPGFueT47XG4gICAgICBlbWl0dGVyPy5lbWl0KG5ld1ZhbHVlKTtcbiAgICAgIHRoaXMuaW50ZXJuYWxPcHRpb25DaGFuZ2VkKHsgbmFtZTogb3B0aW9uLm5hbWUsIHZhbHVlOiBuZXdWYWx1ZSB9KTtcbiAgICB9XG4gICAgaWYgKG9wdGlvbi5hZnRlckNhbGxiYWNrKSBvcHRpb24uYWZ0ZXJDYWxsYmFjayhvbGRWYWx1ZSwgbmV3VmFsdWUpO1xuICB9XG59XG4iXX0=","import { AXHtmlUtil } from '@acorex/core/utils';\nimport { coerceBooleanProperty, coerceNumberProperty } from '@angular/cdk/coercion';\nimport { EventEmitter } from '@angular/core';\nimport { noop } from 'rxjs';\nimport { MXBaseComponent } from './base-component.class';\nexport class MXInteractiveComponent extends MXBaseComponent {\n constructor() {\n super(...arguments);\n /**\n * @ignore\n */\n this.onTouchedCallback = noop;\n this._touched = false;\n /**\n * Emits an event whenever the disabled state of the component changes.\n *\n * @event\n */\n this.disabledChange = new EventEmitter();\n this._tabIndex = 0;\n /**\n * Fires each time the component gets focused.\n * @event\n */\n this.onFocus = new EventEmitter();\n /**\n * Fires each time the component gets blurred.\n * @event\n */\n this.onBlur = new EventEmitter();\n // private _focused = signal(false);\n // protected markAsFocused() {\n // this._focused.set(true);\n // }\n // protected markAsBlured() {\n // this._focused.set(false);\n // }\n }\n registerOnTouched(fn) {\n this.onTouchedCallback = fn;\n }\n /**\n * Indicates whether the component has been touched.\n *\n */\n get touched() {\n return this._touched;\n }\n /**\n * @ignore\n */\n markAsTouched() {\n if (!this.touched) {\n this.onTouchedCallback();\n this._touched = true;\n }\n }\n /**\n * If set to true, it disables the component.\n */\n get disabled() {\n return this._disabled;\n }\n set disabled(value) {\n value = coerceBooleanProperty(value);\n this.setOption({\n name: 'disabled',\n value,\n afterCallback: () => {\n this.cdr.markForCheck();\n },\n });\n }\n setDisabledState(isDisabled) {\n this.disabled = isDisabled;\n }\n /**\n * Specifies the tabindex of the component.\n */\n get tabIndex() {\n return this.disabled ? -1 : this._tabIndex;\n }\n set tabIndex(value) {\n this.setOption({\n name: 'tabIndex',\n value: value != null ? coerceNumberProperty(value) : 0,\n });\n }\n emitOnFocusEvent(e) {\n this.onFocus.emit({\n component: this,\n htmlElement: this.getHostElement(),\n nativeEvent: e,\n });\n }\n emitOnBlurEvent(e) {\n this.markAsTouched();\n this.onBlur.emit({\n component: this,\n htmlElement: this.getHostElement(),\n nativeEvent: e,\n });\n }\n // /**\n // * Fires each time the user clicks the button.\n // * @event\n // */\n // onClick: EventEmitter<AXClickEvent> = new EventEmitter<AXClickEvent>();\n // protected emitOnClickEvent(e: MouseEvent): void {\n // this.onClick.emit({\n // component: this,\n // htmlElement: this.getHostElement(),\n // nativeEvent: e,\n // });\n // }\n focus() {\n AXHtmlUtil.focusElement(this.getHostElement());\n }\n blur() {\n AXHtmlUtil.blurElement(this.getHostElement());\n }\n /**\n * Check component is focused or has any focused element.\n */\n hasFocus() {\n return AXHtmlUtil.hasFocus(this.getHostElement());\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJhY3RpdmUtY29tcG9uZW50LmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY2RrL2NvbW1vbi9zcmMvbGliL2NvbXBvbmVudHMvaW50ZXJhY3RpdmUtY29tcG9uZW50LmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNwRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdDLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFNUIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXpELE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxlQUFlO0lBQTNEOztRQUNFOztXQUVHO1FBQ08sc0JBQWlCLEdBQWUsSUFBSSxDQUFDO1FBTXZDLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFvQnpCOzs7O1dBSUc7UUFDSCxtQkFBYyxHQUEwQixJQUFJLFlBQVksRUFBVyxDQUFDO1FBdUJwRSxjQUFTLEdBQUcsQ0FBQyxDQUFDO1FBY2Q7OztXQUdHO1FBQ0gsWUFBTyxHQUErQixJQUFJLFlBQVksRUFBZ0IsQ0FBQztRQVV2RTs7O1dBR0c7UUFDSCxXQUFNLEdBQStCLElBQUksWUFBWSxFQUFnQixDQUFDO1FBd0N0RSxvQ0FBb0M7UUFFcEMsOEJBQThCO1FBQzlCLDZCQUE2QjtRQUM3QixJQUFJO1FBRUosNkJBQTZCO1FBQzdCLDhCQUE4QjtRQUM5QixJQUFJO0lBQ04sQ0FBQztJQXJJQyxpQkFBaUIsQ0FBQyxFQUFjO1FBQzlCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUdEOzs7T0FHRztJQUNILElBQVcsT0FBTztRQUNoQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDdkIsQ0FBQztJQUVEOztPQUVHO0lBRU8sYUFBYTtRQUNyQixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2xCLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ3ZCLENBQUM7SUFDSCxDQUFDO0lBU0Q7O09BRUc7SUFDSCxJQUFXLFFBQVE7UUFDakIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFDRCxJQUFJLFFBQVEsQ0FBQyxLQUFjO1FBQ3pCLEtBQUssR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNyQyxJQUFJLENBQUMsU0FBUyxDQUFDO1lBQ2IsSUFBSSxFQUFFLFVBQVU7WUFDaEIsS0FBSztZQUNMLGFBQWEsRUFBRSxHQUFHLEVBQUU7Z0JBQ2xCLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDMUIsQ0FBQztTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxVQUFtQjtRQUNsQyxJQUFJLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQztJQUM3QixDQUFDO0lBR0Q7O09BRUc7SUFDSCxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQzdDLENBQUM7SUFDRCxJQUFJLFFBQVEsQ0FBQyxLQUFhO1FBQ3hCLElBQUksQ0FBQyxTQUFTLENBQUM7WUFDYixJQUFJLEVBQUUsVUFBVTtZQUNoQixLQUFLLEVBQUUsS0FBSyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDdkQsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQVFTLGdCQUFnQixDQUFDLENBQWM7UUFDdkMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7WUFDaEIsU0FBUyxFQUFFLElBQUk7WUFDZixXQUFXLEVBQUUsSUFBSSxDQUFDLGNBQWMsRUFBRTtZQUNsQyxXQUFXLEVBQUUsQ0FBQztTQUNmLENBQUMsQ0FBQztJQUNMLENBQUM7SUFRUyxlQUFlLENBQUMsQ0FBYztRQUN0QyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDckIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7WUFDZixTQUFTLEVBQUUsSUFBSTtZQUNmLFdBQVcsRUFBRSxJQUFJLENBQUMsY0FBYyxFQUFFO1lBQ2xDLFdBQVcsRUFBRSxDQUFDO1NBQ2YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELE1BQU07SUFDTixrREFBa0Q7SUFDbEQsYUFBYTtJQUNiLE1BQU07SUFDTiwwRUFBMEU7SUFFMUUsb0RBQW9EO0lBQ3BELHdCQUF3QjtJQUN4Qix1QkFBdUI7SUFDdkIsMENBQTBDO0lBQzFDLHNCQUFzQjtJQUN0QixRQUFRO0lBQ1IsSUFBSTtJQUVKLEtBQUs7UUFDSCxVQUFVLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFFRCxJQUFJO1FBQ0YsVUFBVSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxRQUFRO1FBQ04sT0FBTyxVQUFVLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDO0lBQ3BELENBQUM7Q0FXRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYSHRtbFV0aWwgfSBmcm9tICdAYWNvcmV4L2NvcmUvdXRpbHMnO1xuaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5LCBjb2VyY2VOdW1iZXJQcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5pbXBvcnQgeyBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IG5vb3AgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFYRm9jdXNFdmVudCB9IGZyb20gJy4uL2NsYXNzZXMvZXZlbnRzLmNsYXNzJztcbmltcG9ydCB7IE1YQmFzZUNvbXBvbmVudCB9IGZyb20gJy4vYmFzZS1jb21wb25lbnQuY2xhc3MnO1xuXG5leHBvcnQgY2xhc3MgTVhJbnRlcmFjdGl2ZUNvbXBvbmVudCBleHRlbmRzIE1YQmFzZUNvbXBvbmVudCB7XG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgcHJvdGVjdGVkIG9uVG91Y2hlZENhbGxiYWNrOiAoKSA9PiB2b2lkID0gbm9vcDtcblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogKCkgPT4gdm9pZCk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaGVkQ2FsbGJhY2sgPSBmbjtcbiAgfVxuXG4gIHByaXZhdGUgX3RvdWNoZWQgPSBmYWxzZTtcbiAgLyoqXG4gICAqIEluZGljYXRlcyB3aGV0aGVyIHRoZSBjb21wb25lbnQgaGFzIGJlZW4gdG91Y2hlZC5cbiAgICpcbiAgICovXG4gIHB1YmxpYyBnZXQgdG91Y2hlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fdG91Y2hlZDtcbiAgfVxuXG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cblxuICBwcm90ZWN0ZWQgbWFya0FzVG91Y2hlZCgpIHtcbiAgICBpZiAoIXRoaXMudG91Y2hlZCkge1xuICAgICAgdGhpcy5vblRvdWNoZWRDYWxsYmFjaygpO1xuICAgICAgdGhpcy5fdG91Y2hlZCA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEVtaXRzIGFuIGV2ZW50IHdoZW5ldmVyIHRoZSBkaXNhYmxlZCBzdGF0ZSBvZiB0aGUgY29tcG9uZW50IGNoYW5nZXMuXG4gICAqXG4gICAqIEBldmVudFxuICAgKi9cbiAgZGlzYWJsZWRDaGFuZ2U6IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcbiAgcHJpdmF0ZSBfZGlzYWJsZWQ6IGJvb2xlYW47XG4gIC8qKlxuICAgKiAgSWYgc2V0IHRvIHRydWUsIGl0IGRpc2FibGVzIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9kaXNhYmxlZDtcbiAgfVxuICBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB2YWx1ZSA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgdGhpcy5zZXRPcHRpb24oe1xuICAgICAgbmFtZTogJ2Rpc2FibGVkJyxcbiAgICAgIHZhbHVlLFxuICAgICAgYWZ0ZXJDYWxsYmFjazogKCkgPT4ge1xuICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cblxuICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgfVxuXG4gIF90YWJJbmRleCA9IDA7XG4gIC8qKlxuICAgKiAgU3BlY2lmaWVzIHRoZSB0YWJpbmRleCBvZiB0aGUgY29tcG9uZW50LlxuICAgKi9cbiAgZ2V0IHRhYkluZGV4KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZGlzYWJsZWQgPyAtMSA6IHRoaXMuX3RhYkluZGV4O1xuICB9XG4gIHNldCB0YWJJbmRleCh2YWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy5zZXRPcHRpb24oe1xuICAgICAgbmFtZTogJ3RhYkluZGV4JyxcbiAgICAgIHZhbHVlOiB2YWx1ZSAhPSBudWxsID8gY29lcmNlTnVtYmVyUHJvcGVydHkodmFsdWUpIDogMCxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiAgRmlyZXMgZWFjaCB0aW1lIHRoZSBjb21wb25lbnQgZ2V0cyBmb2N1c2VkLlxuICAgKiAgQGV2ZW50XG4gICAqL1xuICBvbkZvY3VzOiBFdmVudEVtaXR0ZXI8QVhGb2N1c0V2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8QVhGb2N1c0V2ZW50PigpO1xuXG4gIHByb3RlY3RlZCBlbWl0T25Gb2N1c0V2ZW50KGU/OiBGb2N1c0V2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5vbkZvY3VzLmVtaXQoe1xuICAgICAgY29tcG9uZW50OiB0aGlzLFxuICAgICAgaHRtbEVsZW1lbnQ6IHRoaXMuZ2V0SG9zdEVsZW1lbnQoKSxcbiAgICAgIG5hdGl2ZUV2ZW50OiBlLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqICBGaXJlcyBlYWNoIHRpbWUgdGhlIGNvbXBvbmVudCBnZXRzIGJsdXJyZWQuXG4gICAqICBAZXZlbnRcbiAgICovXG4gIG9uQmx1cjogRXZlbnRFbWl0dGVyPEFYRm9jdXNFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEFYRm9jdXNFdmVudD4oKTtcblxuICBwcm90ZWN0ZWQgZW1pdE9uQmx1ckV2ZW50KGU/OiBGb2N1c0V2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5tYXJrQXNUb3VjaGVkKCk7XG4gICAgdGhpcy5vbkJsdXIuZW1pdCh7XG4gICAgICBjb21wb25lbnQ6IHRoaXMsXG4gICAgICBodG1sRWxlbWVudDogdGhpcy5nZXRIb3N0RWxlbWVudCgpLFxuICAgICAgbmF0aXZlRXZlbnQ6IGUsXG4gICAgfSk7XG4gIH1cblxuICAvLyAvKipcbiAgLy8gICogIEZpcmVzIGVhY2ggdGltZSB0aGUgdXNlciBjbGlja3MgdGhlIGJ1dHRvbi5cbiAgLy8gICogIEBldmVudFxuICAvLyAgKi9cbiAgLy8gb25DbGljazogRXZlbnRFbWl0dGVyPEFYQ2xpY2tFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEFYQ2xpY2tFdmVudD4oKTtcblxuICAvLyBwcm90ZWN0ZWQgZW1pdE9uQ2xpY2tFdmVudChlOiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gIC8vICAgdGhpcy5vbkNsaWNrLmVtaXQoe1xuICAvLyAgICAgY29tcG9uZW50OiB0aGlzLFxuICAvLyAgICAgaHRtbEVsZW1lbnQ6IHRoaXMuZ2V0SG9zdEVsZW1lbnQoKSxcbiAgLy8gICAgIG5hdGl2ZUV2ZW50OiBlLFxuICAvLyAgIH0pO1xuICAvLyB9XG5cbiAgZm9jdXMoKSB7XG4gICAgQVhIdG1sVXRpbC5mb2N1c0VsZW1lbnQodGhpcy5nZXRIb3N0RWxlbWVudCgpKTtcbiAgfVxuXG4gIGJsdXIoKSB7XG4gICAgQVhIdG1sVXRpbC5ibHVyRWxlbWVudCh0aGlzLmdldEhvc3RFbGVtZW50KCkpO1xuICB9XG5cbiAgLyoqXG4gICAqICBDaGVjayBjb21wb25lbnQgaXMgZm9jdXNlZCBvciBoYXMgYW55IGZvY3VzZWQgZWxlbWVudC5cbiAgICovXG4gIGhhc0ZvY3VzKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBBWEh0bWxVdGlsLmhhc0ZvY3VzKHRoaXMuZ2V0SG9zdEVsZW1lbnQoKSk7XG4gIH1cblxuICAvLyBwcml2YXRlIF9mb2N1c2VkID0gc2lnbmFsKGZhbHNlKTtcblxuICAvLyBwcm90ZWN0ZWQgbWFya0FzRm9jdXNlZCgpIHtcbiAgLy8gICB0aGlzLl9mb2N1c2VkLnNldCh0cnVlKTtcbiAgLy8gfVxuXG4gIC8vIHByb3RlY3RlZCBtYXJrQXNCbHVyZWQoKSB7XG4gIC8vICAgdGhpcy5fZm9jdXNlZC5zZXQoZmFsc2UpO1xuICAvLyB9XG59XG4iXX0=","import { isBrowser } from '@acorex/core/platform';\nimport { AXValidationService } from '@acorex/core/validation';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { isPlatformBrowser } from '@angular/common';\nimport { DOCUMENT, EventEmitter, Injectable, PLATFORM_ID, inject } from '@angular/core';\nimport { cloneDeep, isEqual, omit } from 'lodash-es';\nimport { noop } from 'rxjs';\nimport { MXInteractiveComponent } from './interactive-component.class';\nimport * as i0 from \"@angular/core\";\nexport class MXValueComponent extends MXInteractiveComponent {\n constructor() {\n super(...arguments);\n /**\n * Fires each time the user press a key.\n * @event\n */\n this.onValueChanged = new EventEmitter();\n /**\n * @deprecated The event should not be used, use ngModelChange instead\n */\n this.valueChange = new EventEmitter();\n this.readonlyChange = new EventEmitter();\n this._readonly = false;\n this._dirty = false;\n this._isUserInteraction = false;\n this.stateChange = new EventEmitter();\n this._state = 'clear';\n this.document = inject(DOCUMENT);\n this.platformID = inject(PLATFORM_ID);\n this.validationService = inject(AXValidationService);\n this.validationRulesChange = new EventEmitter();\n this.validationRules = [];\n this.onChangeCallback = noop;\n }\n /**\n * If set to true, user cannot change the value of component.\n */\n get readonly() {\n return this._readonly;\n }\n set readonly(value) {\n value = coerceBooleanProperty(value);\n this.setOption({\n name: 'readonly',\n value,\n afterCallback: () => {\n this.cdr.markForCheck();\n },\n });\n }\n get name() {\n return this._name;\n }\n set name(value) {\n this._name = value;\n }\n get dirty() {\n return this._dirty;\n }\n markAsDirty() {\n this._dirty = true;\n }\n /**\n * @deprecated The property should not be used, use ngModel instead\n */\n get value() {\n return this.internalGetValue(this._value) ?? this.defaultValue;\n }\n set value(v) {\n v = this.internalSetValue(v);\n const old = cloneDeep(this.value);\n if (v === null || v === undefined || v === '' || (Array.isArray(v) && v.length === 0)) {\n this.setState('clear');\n if (old === null || old === undefined || old === '' || (Array.isArray(old) && old.length === 0)) {\n return;\n }\n }\n if (!isEqual(old, v)) {\n this._value = v;\n this.emitOnValueChangedEvent(old, this.value);\n this.internalValueChanged(this.value);\n }\n }\n get state() {\n return this._state;\n }\n set state(value) {\n this.setState(value);\n this.stateChange.emit(value);\n }\n emitOnValueChangedEvent(oldValue, newValue) {\n this.valueChange.emit(newValue);\n this.onValueChanged.emit({\n component: this,\n value: newValue,\n oldValue: oldValue,\n name: this.name,\n isUserInteraction: this._isUserInteraction,\n });\n this.onChangeCallback(newValue);\n this.cdr.markForCheck();\n this._isUserInteraction = false;\n }\n internalSetValue(value) {\n return value;\n }\n internalGetValue(value) {\n return value;\n }\n internalValueChanged(value) { }\n ngOnInit() {\n super.ngOnInit();\n //\n this.registerValidation();\n }\n ngOnDestroy() {\n this.onValueChanged?.unsubscribe();\n this.onOptionChanged?.unsubscribe();\n }\n registerValidation() {\n const a = this.getHostElement().querySelectorAll('[ax-form-item=\"true\"]');\n a.forEach((c) => {\n c.removeAttribute('ax-form-item');\n });\n this.getHostElement().setAttribute('ax-form-item', 'true');\n }\n get isRequired() {\n return this.validationRules?.some((c) => c.rule == 'required');\n }\n addValidationRule(rule) {\n this.validationRules.push(rule);\n this.validationRulesChange.emit(this.validationRules);\n }\n removeValidationRule(ruleToRemove) {\n this.validationRules = this.validationRules.filter((r) => {\n if (r.rule !== ruleToRemove.rule) {\n return true;\n }\n // Create copies of options without the 'title' property\n const rOptionsSanitized = omit(r.options, ['title']);\n const ruleToRemoveOptionsSanitized = omit(ruleToRemove.options, ['title']);\n return !isEqual(rOptionsSanitized, ruleToRemoveOptionsSanitized);\n });\n this.validationRulesChange.emit(this.validationRules);\n this.setState('clear');\n }\n async validate() {\n const container_classes = ['ax-editor-container', 'ax-checkbox', 'ax-radio'];\n const container = container_classes.some((c) => this.getHostElement().classList.contains(c))\n ? this.getHostElement()\n : this.getHostElement().querySelector('.ax-editor-container');\n const formField = container?.closest('ax-form-field') || container?.closest('ax-checkbox');\n const label = formField?.querySelector('ax-label') || formField?.querySelector('label');\n //\n const rules = this.validationService.ruleFor(this.value);\n this.validationRules.forEach((r) => {\n r.options['title'] = (label?.firstChild?.textContent ?? this.name)?.replace('*', '').trim();\n rules.addRule(r.rule, r.options);\n });\n const result = await rules.validate();\n if (result.result) {\n this.setState('clear');\n }\n else {\n const message = result.rules.find((c) => !c.result).message;\n this.setState('error', message);\n }\n return result;\n }\n setState(state, ...args) {\n //TODO: find a better solution\n if (isBrowser()) {\n const container = this.getHostElement().classList.contains('ax-editor-container')\n ? this.getHostElement()\n : this.getHostElement().querySelector('.ax-editor-container');\n const formField = container?.closest('ax-form-field');\n const label = formField?.querySelector('ax-label') || formField?.querySelector('label');\n let target = container || this.getHostElement().firstElementChild;\n if (target?.querySelector('.ax-error-container')) {\n target = target.querySelector('.ax-error-container');\n }\n const parent = target?.parentElement;\n if (!target || !parent)\n return;\n switch (state) {\n case 'clear':\n this._state = 'clear';\n if (parent.querySelector('span.ax-error-message')) {\n parent.removeChild(parent.querySelector('span.ax-error-message'));\n }\n label?.classList.remove('ax-state-error');\n target.classList.remove('ax-state-error', 'ax-state-success');\n break;\n case 'success':\n this.setState('clear');\n target.classList.add('ax-state-success');\n this._state = 'success';\n break;\n case 'error':\n this.setState('clear');\n if (args[0] && isPlatformBrowser(this.platformID)) {\n const span = this.document.createElement('span');\n span.innerHTML = args[0];\n span.classList.add('ax-error-message');\n parent.appendChild(span);\n }\n label?.classList.add('ax-state-error');\n target.classList.add('ax-state-error');\n this._state = 'error';\n break;\n }\n this.cdr.markForCheck();\n }\n }\n registerOnChange(fn) {\n this.onChangeCallback = fn;\n }\n writeValue(value) {\n this.value = value;\n }\n commitValue(value, u = false) {\n if (u) {\n this.markAsTouched();\n this.markAsDirty();\n this._isUserInteraction = true;\n }\n this.writeValue(value);\n }\n reset(e = false) {\n this.commitValue(null, e);\n }\n resetErrors() {\n this.setState('clear');\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: MXValueComponent, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: MXValueComponent }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: MXValueComponent, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsdWUtY29tcG9uZW50LmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY2RrL2NvbW1vbi9zcmMvbGliL2NvbXBvbmVudHMvdmFsdWUtY29tcG9uZW50LmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsbUJBQW1CLEVBQXVCLE1BQU0seUJBQXlCLENBQUM7QUFDbkYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDcEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFeEYsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3JELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFJNUIsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sK0JBQStCLENBQUM7O0FBR3ZFLE1BQU0sT0FBTyxnQkFBMEIsU0FBUSxzQkFBc0I7SUFEckU7O1FBRUU7OztXQUdHO1FBQ0gsbUJBQWMsR0FBMkMsSUFBSSxZQUFZLEVBQTRCLENBQUM7UUFFdEc7O1dBRUc7UUFDSCxnQkFBVyxHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO1FBRXpELG1CQUFjLEdBQTBCLElBQUksWUFBWSxFQUFXLENBQUM7UUFDNUQsY0FBUyxHQUFHLEtBQUssQ0FBQztRQTBCbEIsV0FBTSxHQUFHLEtBQUssQ0FBQztRQVNmLHVCQUFrQixHQUFHLEtBQUssQ0FBQztRQStCbkMsZ0JBQVcsR0FBbUMsSUFBSSxZQUFZLEVBQW9CLENBQUM7UUFFM0UsV0FB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Z0JBQWdCOzsyRkFBaEIsZ0JBQWdCO2tCQUQ1QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNCcm93c2VyIH0gZnJvbSAnQGFjb3JleC9jb3JlL3BsYXRmb3JtJztcbmltcG9ydCB7IEFYVmFsaWRhdGlvblNlcnZpY2UsIEFYVmFsaWRhdGlvblN1bW1hcnkgfSBmcm9tICdAYWNvcmV4L2NvcmUvdmFsaWRhdGlvbic7XG5pbXBvcnQgeyBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRE9DVU1FTlQsIEV2ZW50RW1pdHRlciwgSW5qZWN0YWJsZSwgUExBVEZPUk1fSUQsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBjbG9uZURlZXAsIGlzRXF1YWwsIG9taXQgfSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHsgbm9vcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQVhGb3JtVmFsaWRhdGlvblJ1bGUgfSBmcm9tICcuLi9jbGFzc2VzL2NvbXBvbmVudHMuY2xhc3MnO1xuaW1wb3J0IHsgQVhWYWx1ZUNoYW5nZWRFdmVudCB9IGZyb20gJy4uL2NsYXNzZXMvZXZlbnRzLmNsYXNzJztcbmltcG9ydCB7IEFYQ29tcG9uZW50U3RhdGUgfSBmcm9tICcuL2Jhc2UtY29tcG9uZW50LmNsYXNzJztcbmltcG9ydCB7IE1YSW50ZXJhY3RpdmVDb21wb25lbnQgfSBmcm9tICcuL2ludGVyYWN0aXZlLWNvbXBvbmVudC5jbGFzcyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBNWFZhbHVlQ29tcG9uZW50PFQgPSBhbnk+IGV4dGVuZHMgTVhJbnRlcmFjdGl2ZUNvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcbiAgLyoqXG4gICAqICBGaXJlcyBlYWNoIHRpbWUgdGhlIHVzZXIgcHJlc3MgYSBrZXkuXG4gICAqICBAZXZlbnRcbiAgICovXG4gIG9uVmFsdWVDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8QVhWYWx1ZUNoYW5nZWRFdmVudDxhbnk+PiA9IG5ldyBFdmVudEVtaXR0ZXI8QVhWYWx1ZUNoYW5nZWRFdmVudDxhbnk+PigpO1xuXG4gIC8qKlxuICAgKiBAZGVwcmVjYXRlZCBUaGUgZXZlbnQgc2hvdWxkIG5vdCBiZSB1c2VkLCB1c2UgbmdNb2RlbENoYW5nZSBpbnN0ZWFkXG4gICAqL1xuICB2YWx1ZUNoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICByZWFkb25seUNoYW5nZTogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuICBwcml2YXRlIF9yZWFkb25seSA9IGZhbHNlO1xuICAvKipcbiAgICogIElmIHNldCB0byB0cnVlLCB1c2VyIGNhbm5vdCBjaGFuZ2UgdGhlIHZhbHVlIG9mIGNvbXBvbmVudC5cbiAgICovXG4gIGdldCByZWFkb25seSgpIHtcbiAgICByZXR1cm4gdGhpcy5fcmVhZG9ubHk7XG4gIH1cbiAgc2V0IHJlYWRvbmx5KHZhbHVlOiBib29sZWFuKSB7XG4gICAgdmFsdWUgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIHRoaXMuc2V0T3B0aW9uKHtcbiAgICAgIG5hbWU6ICdyZWFkb25seScsXG4gICAgICB2YWx1ZSxcbiAgICAgIGFmdGVyQ2FsbGJhY2s6ICgpID0+IHtcbiAgICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgICB9LFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfbmFtZTogc3RyaW5nO1xuICBnZXQgbmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy5fbmFtZTtcbiAgfVxuICBzZXQgbmFtZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5fbmFtZSA9IHZhbHVlO1xuICB9XG5cbiAgcHJpdmF0ZSBfZGlydHkgPSBmYWxzZTtcbiAgcHVibGljIGdldCBkaXJ0eSgpIHtcbiAgICByZXR1cm4gdGhpcy5fZGlydHk7XG4gIH1cblxuICBtYXJrQXNEaXJ0eSgpIHtcbiAgICB0aGlzLl9kaXJ0eSA9IHRydWU7XG4gIH1cblxuICBwcml2YXRlIF9pc1VzZXJJbnRlcmFjdGlvbiA9IGZhbHNlO1xuXG4gIGluaXRWYWx1ZTogVDtcbiAgZGVmYXVsdFZhbHVlOiBUO1xuXG4gIHByaXZhdGUgX3ZhbHVlOiBUO1xuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgVGhlIHByb3BlcnR5IHNob3VsZCBub3QgYmUgdXNlZCwgdXNlIG5nTW9kZWwgaW5zdGVhZFxuICAgKi9cbiAgZ2V0IHZhbHVlKCk6IFQge1xuICAgIHJldHVybiB0aGlzLmludGVybmFsR2V0VmFsdWUodGhpcy5fdmFsdWUpID8/IHRoaXMuZGVmYXVsdFZhbHVlO1xuICB9XG4gIHNldCB2YWx1ZSh2OiBUKSB7XG4gICAgdiA9IHRoaXMuaW50ZXJuYWxTZXRWYWx1ZSh2KTtcbiAgICBjb25zdCBvbGQgPSBjbG9uZURlZXAodGhpcy52YWx1ZSk7XG5cbiAgICBpZiAodiA9PT0gbnVsbCB8fCB2ID09PSB1bmRlZmluZWQgfHwgdiA9PT0gJycgfHwgKEFycmF5LmlzQXJyYXkodikgJiYgdi5sZW5ndGggPT09IDApKSB7XG4gICAgICB0aGlzLnNldFN0YXRlKCdjbGVhcicpO1xuICAgICAgaWYgKG9sZCA9PT0gbnVsbCB8fCBvbGQgPT09IHVuZGVmaW5lZCB8fCBvbGQgPT09ICcnIHx8IChBcnJheS5pc0FycmF5KG9sZCkgJiYgb2xkLmxlbmd0aCA9PT0gMCkpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmICghaXNFcXVhbChvbGQsIHYpKSB7XG4gICAgICB0aGlzLl92YWx1ZSA9IHY7XG4gICAgICB0aGlzLmVtaXRPblZhbHVlQ2hhbmdlZEV2ZW50KG9sZCwgdGhpcy52YWx1ZSk7XG5cbiAgICAgIHRoaXMuaW50ZXJuYWxWYWx1ZUNoYW5nZWQodGhpcy52YWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgc3RhdGVDaGFuZ2U6IEV2ZW50RW1pdHRlcjxBWENvbXBvbmVudFN0YXRlPiA9IG5ldyBFdmVudEVtaXR0ZXI8QVhDb21wb25lbnRTdGF0ZT4oKTtcblxuICBwcml2YXRlIF9zdGF0ZTogQVhDb21wb25lbnRTdGF0ZSA9ICdjbGVhcic7XG5cbiAgZ2V0IHN0YXRlKCk6IEFYQ29tcG9uZW50U3RhdGUge1xuICAgIHJldHVybiB0aGlzLl9zdGF0ZTtcbiAgfVxuXG4gIHNldCBzdGF0ZSh2YWx1ZTogQVhDb21wb25lbnRTdGF0ZSkge1xuICAgIHRoaXMuc2V0U3RhdGUodmFsdWUpO1xuICAgIHRoaXMuc3RhdGVDaGFuZ2UuZW1pdCh2YWx1ZSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZW1pdE9uVmFsdWVDaGFuZ2VkRXZlbnQob2xkVmFsdWU/OiBhbnksIG5ld1ZhbHVlPzogYW55KSB7XG4gICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KG5ld1ZhbHVlKTtcbiAgICB0aGlzLm9uVmFsdWVDaGFuZ2VkLmVtaXQoe1xuICAgICAgY29tcG9uZW50OiB0aGlzLFxuICAgICAgdmFsdWU6IG5ld1ZhbHVlLFxuICAgICAgb2xkVmFsdWU6IG9sZFZhbHVlLFxuICAgICAgbmFtZTogdGhpcy5uYW1lLFxuICAgICAgaXNVc2VySW50ZXJhY3Rpb246IHRoaXMuX2lzVXNlckludGVyYWN0aW9uLFxuICAgIH0pO1xuICAgIHRoaXMub25DaGFuZ2VDYWxsYmFjayhuZXdWYWx1ZSk7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgdGhpcy5faXNVc2VySW50ZXJhY3Rpb24gPSBmYWxzZTtcbiAgfVxuXG4gIHByb3RlY3RlZCBpbnRlcm5hbFNldFZhbHVlKHZhbHVlOiBhbnkpOiBUIHtcbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cblxuICBwcm90ZWN0ZWQgaW50ZXJuYWxHZXRWYWx1ZSh2YWx1ZTogYW55KTogVCB7XG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG5cbiAgcHJvdGVjdGVkIGludGVybmFsVmFsdWVDaGFuZ2VkKHZhbHVlOiBhbnkpOiB2b2lkIHt9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgLy9cbiAgICB0aGlzLnJlZ2lzdGVyVmFsaWRhdGlvbigpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMub25WYWx1ZUNoYW5nZWQ/LnVuc3Vic2NyaWJlKCk7XG4gICAgdGhpcy5vbk9wdGlvbkNoYW5nZWQ/LnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgcmVnaXN0ZXJWYWxpZGF0aW9uKCkge1xuICAgIGNvbnN0IGEgPSB0aGlzLmdldEhvc3RFbGVtZW50KCkucXVlcnlTZWxlY3RvckFsbCgnW2F4LWZvcm0taXRlbT1cInRydWVcIl0nKTtcbiAgICBhLmZvckVhY2goKGMpID0+IHtcbiAgICAgIGMucmVtb3ZlQXR0cmlidXRlKCdheC1mb3JtLWl0ZW0nKTtcbiAgICB9KTtcbiAgICB0aGlzLmdldEhvc3RFbGVtZW50KCkuc2V0QXR0cmlidXRlKCdheC1mb3JtLWl0ZW0nLCAndHJ1ZScpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGRvY3VtZW50ID0gaW5qZWN0KERPQ1VNRU5UKTtcbiAgcHJvdGVjdGVkIHBsYXRmb3JtSUQgPSBpbmplY3QoUExBVEZPUk1fSUQpO1xuICBwcml2YXRlIHZhbGlkYXRpb25TZXJ2aWNlID0gaW5qZWN0KEFYVmFsaWRhdGlvblNlcnZpY2UpO1xuXG4gIHB1YmxpYyB2YWxpZGF0aW9uUnVsZXNDaGFuZ2U6IEV2ZW50RW1pdHRlcjxBWEZvcm1WYWxpZGF0aW9uUnVsZVtdPiA9IG5ldyBFdmVudEVtaXR0ZXI8QVhGb3JtVmFsaWRhdGlvblJ1bGVbXT4oKTtcbiAgcHJpdmF0ZSB2YWxpZGF0aW9uUnVsZXM6IEFYRm9ybVZhbGlkYXRpb25SdWxlW10gPSBbXTtcblxuICBwdWJsaWMgZ2V0IGlzUmVxdWlyZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudmFsaWRhdGlvblJ1bGVzPy5zb21lKChjKSA9PiBjLnJ1bGUgPT0gJ3JlcXVpcmVkJyk7XG4gIH1cblxuICBhZGRWYWxpZGF0aW9uUnVsZShydWxlOiBBWEZvcm1WYWxpZGF0aW9uUnVsZSkge1xuICAgIHRoaXMudmFsaWRhdGlvblJ1bGVzLnB1c2gocnVsZSk7XG4gICAgdGhpcy52YWxpZGF0aW9uUnVsZXNDaGFuZ2UuZW1pdCh0aGlzLnZhbGlkYXRpb25SdWxlcyk7XG4gIH1cblxuICByZW1vdmVWYWxpZGF0aW9uUnVsZShydWxlVG9SZW1vdmU6IEFYRm9ybVZhbGlkYXRpb25SdWxlKSB7XG4gICAgdGhpcy52YWxpZGF0aW9uUnVsZXMgPSB0aGlzLnZhbGlkYXRpb25SdWxlcy5maWx0ZXIoKHIpID0+IHtcbiAgICAgIGlmIChyLnJ1bGUgIT09IHJ1bGVUb1JlbW92ZS5ydWxlKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgICAgLy8gQ3JlYXRlIGNvcGllcyBvZiBvcHRpb25zIHdpdGhvdXQgdGhlICd0aXRsZScgcHJvcGVydHlcbiAgICAgIGNvbnN0IHJPcHRpb25zU2FuaXRpemVkID0gb21pdChyLm9wdGlvbnMsIFsndGl0bGUnXSk7XG4gICAgICBjb25zdCBydWxlVG9SZW1vdmVPcHRpb25zU2FuaXRpemVkID0gb21pdChydWxlVG9SZW1vdmUub3B0aW9ucywgWyd0aXRsZSddKTtcblxuICAgICAgcmV0dXJuICFpc0VxdWFsKHJPcHRpb25zU2FuaXRpemVkLCBydWxlVG9SZW1vdmVPcHRpb25zU2FuaXRpemVkKTtcbiAgICB9KTtcbiAgICB0aGlzLnZhbGlkYXRpb25SdWxlc0NoYW5nZS5lbWl0KHRoaXMudmFsaWRhdGlvblJ1bGVzKTtcbiAgICB0aGlzLnNldFN0YXRlKCdjbGVhcicpO1xuICB9XG5cbiAgYXN5bmMgdmFsaWRhdGUoKTogUHJvbWlzZTxBWFZhbGlkYXRpb25TdW1tYXJ5PiB7XG4gICAgY29uc3QgY29udGFpbmVyX2NsYXNzZXMgPSBbJ2F4LWVkaXRvci1jb250YWluZXInLCAnYXgtY2hlY2tib3gnLCAnYXgtcmFkaW8nXTtcbiAgICBjb25zdCBjb250YWluZXIgPSBjb250YWluZXJfY2xhc3Nlcy5zb21lKChjKSA9PiB0aGlzLmdldEhvc3RFbGVtZW50KCkuY2xhc3NMaXN0LmNvbnRhaW5zKGMpKVxuICAgICAgPyB0aGlzLmdldEhvc3RFbGVtZW50KClcbiAgICAgIDogdGhpcy5nZXRIb3N0RWxlbWVudCgpLnF1ZXJ5U2VsZWN0b3IoJy5heC1lZGl0b3ItY29udGFpbmVyJyk7XG4gICAgY29uc3QgZm9ybUZpZWxkID0gY29udGFpbmVyPy5jbG9zZXN0KCdheC1mb3JtLWZpZWxkJykgfHwgY29udGFpbmVyPy5jbG9zZXN0KCdheC1jaGVja2JveCcpO1xuICAgIGNvbnN0IGxhYmVsID0gZm9ybUZpZWxkPy5xdWVyeVNlbGVjdG9yKCdheC1sYWJlbCcpIHx8IGZvcm1GaWVsZD8ucXVlcnlTZWxlY3RvcignbGFiZWwnKTtcbiAgICAvL1xuICAgIGNvbnN0IHJ1bGVzID0gdGhpcy52YWxpZGF0aW9uU2VydmljZS5ydWxlRm9yKHRoaXMudmFsdWUpO1xuICAgIHRoaXMudmFsaWRhdGlvblJ1bGVzLmZvckVhY2goKHIpID0+IHtcbiAgICAgIHIub3B0aW9uc1sndGl0bGUnXSA9IChsYWJlbD8uZmlyc3RDaGlsZD8udGV4dENvbnRlbnQgPz8gdGhpcy5uYW1lKT8ucmVwbGFjZSgnKicsICcnKS50cmltKCk7XG4gICAgICBydWxlcy5hZGRSdWxlKHIucnVsZSBhcyBhbnksIHIub3B0aW9ucyk7XG4gICAgfSk7XG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgcnVsZXMudmFsaWRhdGUoKTtcbiAgICBpZiAocmVzdWx0LnJlc3VsdCkge1xuICAgICAgdGhpcy5zZXRTdGF0ZSgnY2xlYXInKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgbWVzc2FnZSA9IHJlc3VsdC5ydWxlcy5maW5kKChjKSA9PiAhYy5yZXN1bHQpLm1lc3NhZ2U7XG4gICAgICB0aGlzLnNldFN0YXRlKCdlcnJvcicsIG1lc3NhZ2UpO1xuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgcHJvdGVjdGVkIHNldFN0YXRlKHN0YXRlOiBBWENvbXBvbmVudFN0YXRlLCAuLi5hcmdzKSB7XG4gICAgLy9UT0RPOiBmaW5kIGEgYmV0dGVyIHNvbHV0aW9uXG4gICAgaWYgKGlzQnJvd3NlcigpKSB7XG4gICAgICBjb25zdCBjb250YWluZXIgPSB0aGlzLmdldEhvc3RFbGVtZW50KCkuY2xhc3NMaXN0LmNvbnRhaW5zKCdheC1lZGl0b3ItY29udGFpbmVyJylcbiAgICAgICAgPyB0aGlzLmdldEhvc3RFbGVtZW50KClcbiAgICAgICAgOiB0aGlzLmdldEhvc3RFbGVtZW50KCkucXVlcnlTZWxlY3RvcignLmF4LWVkaXRvci1jb250YWluZXInKTtcbiAgICAgIGNvbnN0IGZvcm1GaWVsZCA9IGNvbnRhaW5lcj8uY2xvc2VzdCgnYXgtZm9ybS1maWVsZCcpO1xuICAgICAgY29uc3QgbGFiZWwgPSBmb3JtRmllbGQ/LnF1ZXJ5U2VsZWN0b3IoJ2F4LWxhYmVsJykgfHwgZm9ybUZpZWxkPy5xdWVyeVNlbGVjdG9yKCdsYWJlbCcpO1xuICAgICAgbGV0IHRhcmdldCA9IGNvbnRhaW5lciB8fCB0aGlzLmdldEhvc3RFbGVtZW50KCkuZmlyc3RFbGVtZW50Q2hpbGQ7XG4gICAgICBpZiAodGFyZ2V0Py5xdWVyeVNlbGVjdG9yKCcuYXgtZXJyb3ItY29udGFpbmVyJykpIHtcbiAgICAgICAgdGFyZ2V0ID0gdGFyZ2V0LnF1ZXJ5U2VsZWN0b3IoJy5heC1lcnJvci1jb250YWluZXInKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHBhcmVudCA9IHRhcmdldD8ucGFyZW50RWxlbWVudDtcbiAgICAgIGlmICghdGFyZ2V0IHx8ICFwYXJlbnQpIHJldHVybjtcblxuICAgICAgc3dpdGNoIChzdGF0ZSkge1xuICAgICAgICBjYXNlICdjbGVhcic6XG4gICAgICAgICAgdGhpcy5fc3RhdGUgPSAnY2xlYXInO1xuICAgICAgICAgIGlmIChwYXJlbnQucXVlcnlTZWxlY3Rvcignc3Bhbi5heC1lcnJvci1tZXNzYWdlJykpIHtcbiAgICAgICAgICAgIHBhcmVudC5yZW1vdmVDaGlsZChwYXJlbnQucXVlcnlTZWxlY3Rvcignc3Bhbi5heC1lcnJvci1tZXNzYWdlJykhKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgbGFiZWw/LmNsYXNzTGlzdC5yZW1vdmUoJ2F4LXN0YXRlLWVycm9yJyk7XG4gICAgICAgICAgdGFyZ2V0LmNsYXNzTGlzdC5yZW1vdmUoJ2F4LXN0YXRlLWVycm9yJywgJ2F4LXN0YXRlLXN1Y2Nlc3MnKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAnc3VjY2Vzcyc6XG4gICAgICAgICAgdGhpcy5zZXRTdGF0ZSgnY2xlYXInKTtcbiAgICAgICAgICB0YXJnZXQuY2xhc3NMaXN0LmFkZCgnYXgtc3RhdGUtc3VjY2VzcycpO1xuICAgICAgICAgIHRoaXMuX3N0YXRlID0gJ3N1Y2Nlc3MnO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdlcnJvcic6XG4gICAgICAgICAgdGhpcy5zZXRTdGF0ZSgnY2xlYXInKTtcbiAgICAgICAgICBpZiAoYXJnc1swXSAmJiBpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSUQpKSB7XG4gICAgICAgICAgICBjb25zdCBzcGFuID0gdGhpcy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzcGFuJyk7XG4gICAgICAgICAgICBzcGFuLmlubmVySFRNTCA9IGFyZ3NbMF07XG4gICAgICAgICAgICBzcGFuLmNsYXNzTGlzdC5hZGQoJ2F4LWVycm9yLW1lc3NhZ2UnKTtcbiAgICAgICAgICAgIHBhcmVudC5hcHBlbmRDaGlsZChzcGFuKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgbGFiZWw/LmNsYXNzTGlzdC5hZGQoJ2F4LXN0YXRlLWVycm9yJyk7XG4gICAgICAgICAgdGFyZ2V0LmNsYXNzTGlzdC5hZGQoJ2F4LXN0YXRlLWVycm9yJyk7XG5cbiAgICAgICAgICB0aGlzLl9zdGF0ZSA9ICdlcnJvcic7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb25DaGFuZ2VDYWxsYmFjazogKHZhbHVlOiBUKSA9PiB2b2lkID0gbm9vcDtcblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiAodmFsdWU6IFQpID0+IHZvaWQpOiB2b2lkIHtcbiAgICB0aGlzLm9uQ2hhbmdlQ2FsbGJhY2sgPSBmbjtcbiAgfVxuXG4gIHdyaXRlVmFsdWUodmFsdWU6IFQpOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gIH1cblxuICBwdWJsaWMgY29tbWl0VmFsdWUodmFsdWU6IFQsIHUgPSBmYWxzZSkge1xuICAgIGlmICh1KSB7XG4gICAgICB0aGlzLm1hcmtBc1RvdWNoZWQoKTtcbiAgICAgIHRoaXMubWFya0FzRGlydHkoKTtcbiAgICAgIHRoaXMuX2lzVXNlckludGVyYWN0aW9uID0gdHJ1ZTtcbiAgICB9XG4gICAgdGhpcy53cml0ZVZhbHVlKHZhbHVlKTtcbiAgfVxuXG4gIHJlc2V0KGUgPSBmYWxzZSkge1xuICAgIHRoaXMuY29tbWl0VmFsdWUobnVsbCwgZSk7XG4gIH1cblxuICByZXNldEVycm9ycygpIHtcbiAgICB0aGlzLnNldFN0YXRlKCdjbGVhcicpO1xuICB9XG59XG4iXX0=","/**\n * Contains native event\n * @category Events\n */\nexport class AXEvent {\n constructor() {\n this.isUserInteraction = false;\n }\n}\n/**\n * Contains native event\n * @category Events\n */\nexport class AXHtmlEvent extends AXEvent {\n}\n/**\n * Contains native event\n * @category Events\n */\nexport class AXValueChangedEvent extends AXEvent {\n}\n/**\n * Contains native event\n * @category Events\n */\nexport class AXOptionChangedEvent extends AXEvent {\n}\n/**\n * Fires each time the user click the element.\n * @category Events\n */\nexport class AXClickEvent extends AXHtmlEvent {\n constructor() {\n super(...arguments);\n /**\n * uses for extra data\n */\n this.data = null;\n this.nativeEvent = null;\n }\n}\n/**\n * Fires each time the user click the element.\n * @category Events\n */\nexport class AXButtonClickEvent extends AXClickEvent {\n}\n/**\n * Fires each time the user click the element.\n * @category Events\n */\nexport class AXItemClickEvent extends AXClickEvent {\n}\n/**\n * Fires each time the component gets focused.\n * @category Events\n */\nexport class AXFocusEvent extends AXHtmlEvent {\n}\n/**\n * Fires each time an item or multiple items selected by the user or value.\n * @category Events\n */\nexport class AXSelectionValueChangedEvent extends AXValueChangedEvent {\n constructor() {\n super(...arguments);\n this.value = null;\n this.oldValue = null;\n this.selectedKeys = [];\n this.selectedItems = [];\n }\n}\n/**\n * Contains range start & end values\n * @category Events\n */\nexport class AXRangeChangedEvent extends AXEvent {\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnRzLmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY2RrL2NvbW1vbi9zcmMvbGliL2NsYXNzZXMvZXZlbnRzLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7R0FHRztBQUNILE1BQU0sT0FBTyxPQUFPO0lBQXBCO1FBVUUsc0JBQWlCLEdBQWEsS0FBSyxDQUFDO0lBQ3RDLENBQUM7Q0FBQTtBQUVEOzs7R0FHRztBQUNILE1BQU0sT0FBTyxXQUFxQyxTQUFRLE9BQU87Q0FFaEU7QUFFRDs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sbUJBQTZCLFNBQVEsT0FBTztDQUl4RDtBQUVEOzs7R0FHRztBQUNILE1BQU0sT0FBTyxvQkFBOEIsU0FBUSxPQUFPO0NBSXpEO0FBRUQ7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLFlBQWEsU0FBUSxXQUF1QjtJQUF6RDs7UUFDRTs7V0FFRztRQUNILFNBQUksR0FBUyxJQUFJLENBQUM7UUFFVCxnQkFBVyxHQUFTLElBQUksQ0FBQztJQUNwQyxDQUFDO0NBQUE7QUFFRDs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsWUFBWTtDQUVuRDtBQUVEOzs7R0FHRztBQUNILE1BQU0sT0FBTyxnQkFBMEIsU0FBUSxZQUFZO0NBRzFEO0FBRUQ7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLFlBQWEsU0FBUSxXQUF1QjtDQUFHO0FBRTVEOzs7R0FHRztBQUNILE1BQU0sT0FBTyw0QkFBNkIsU0FBUSxtQkFBZ0M7SUFBbEY7O1FBQ1csVUFBSyxHQUFTLElBQUksQ0FBQztRQUNuQixhQUFRLEdBQVMsSUFBSSxDQUFDO1FBQy9CLGlCQUFZLEdBQVcsRUFBRSxDQUFDO1FBQzFCLGtCQUFhLEdBQVcsRUFBRSxDQUFDO0lBQzdCLENBQUM7Q0FBQTtBQUVEOzs7R0FHRztBQUNILE1BQU0sT0FBTyxtQkFBdUIsU0FBUSxPQUFPO0NBU2xEIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiAgQ29udGFpbnMgbmF0aXZlIGV2ZW50XG4gKiBAY2F0ZWdvcnkgRXZlbnRzXG4gKi9cbmV4cG9ydCBjbGFzcyBBWEV2ZW50IHtcbiAgLyoqXG4gICAqICBUaGUgc2VuZGVyIGNvbXBvbmVudFxuICAgKi9cbiAgY29tcG9uZW50OiBhbnk7XG4gIC8qKlxuICAgKiAgVGhlIHJvb3QgbmF0aXZlIGVsZW1lbnRcbiAgICovXG4gIGh0bWxFbGVtZW50PzogSFRNTEVsZW1lbnQ7XG5cbiAgaXNVc2VySW50ZXJhY3Rpb24/OiBib29sZWFuID0gZmFsc2U7XG59XG5cbi8qKlxuICogIENvbnRhaW5zIG5hdGl2ZSBldmVudFxuICogQGNhdGVnb3J5IEV2ZW50c1xuICovXG5leHBvcnQgY2xhc3MgQVhIdG1sRXZlbnQ8RSBleHRlbmRzIEV2ZW50ID0gRXZlbnQ+IGV4dGVuZHMgQVhFdmVudCB7XG4gIG5hdGl2ZUV2ZW50PzogRTtcbn1cblxuLyoqXG4gKiAgQ29udGFpbnMgbmF0aXZlIGV2ZW50XG4gKiBAY2F0ZWdvcnkgRXZlbnRzXG4gKi9cbmV4cG9ydCBjbGFzcyBBWFZhbHVlQ2hhbmdlZEV2ZW50PFQgPSBhbnk+IGV4dGVuZHMgQVhFdmVudCB7XG4gIG5hbWU/OiBzdHJpbmc7XG4gIHZhbHVlPzogVDtcbiAgb2xkVmFsdWU/OiBUO1xufVxuXG4vKipcbiAqICBDb250YWlucyBuYXRpdmUgZXZlbnRcbiAqIEBjYXRlZ29yeSBFdmVudHNcbiAqL1xuZXhwb3J0IGNsYXNzIEFYT3B0aW9uQ2hhbmdlZEV2ZW50PFQgPSBhbnk+IGV4dGVuZHMgQVhFdmVudCB7XG4gIG5hbWU/OiBzdHJpbmc7XG4gIG5ld1ZhbHVlPzogVDtcbiAgb2xkVmFsdWU/OiBUO1xufVxuXG4vKipcbiAqICBGaXJlcyBlYWNoIHRpbWUgdGhlIHVzZXIgY2xpY2sgdGhlIGVsZW1lbnQuXG4gKiBAY2F0ZWdvcnkgRXZlbnRzXG4gKi9cbmV4cG9ydCBjbGFzcyBBWENsaWNrRXZlbnQgZXh0ZW5kcyBBWEh0bWxFdmVudDxNb3VzZUV2ZW50PiB7XG4gIC8qKlxuICAgKiAgdXNlcyBmb3IgZXh0cmEgZGF0YVxuICAgKi9cbiAgZGF0YT86IGFueSA9IG51bGw7XG5cbiAgb3ZlcnJpZGUgbmF0aXZlRXZlbnQ/OiBhbnkgPSBudWxsO1xufVxuXG4vKipcbiAqICBGaXJlcyBlYWNoIHRpbWUgdGhlIHVzZXIgY2xpY2sgdGhlIGVsZW1lbnQuXG4gKiBAY2F0ZWdvcnkgRXZlbnRzXG4gKi9cbmV4cG9ydCBjbGFzcyBBWEJ1dHRvbkNsaWNrRXZlbnQgZXh0ZW5kcyBBWENsaWNrRXZlbnQge1xuICBuYW1lOiBzdHJpbmc7XG59XG5cbi8qKlxuICogIEZpcmVzIGVhY2ggdGltZSB0aGUgdXNlciBjbGljayB0aGUgZWxlbWVudC5cbiAqIEBjYXRlZ29yeSBFdmVudHNcbiAqL1xuZXhwb3J0IGNsYXNzIEFYSXRlbUNsaWNrRXZlbnQ8VCA9IGFueT4gZXh0ZW5kcyBBWENsaWNrRXZlbnQge1xuICBuYW1lPzogc3RyaW5nO1xuICBpdGVtOiBUO1xufVxuXG4vKipcbiAqICBGaXJlcyBlYWNoIHRpbWUgdGhlIGNvbXBvbmVudCBnZXRzIGZvY3VzZWQuXG4gKiBAY2F0ZWdvcnkgRXZlbnRzXG4gKi9cbmV4cG9ydCBjbGFzcyBBWEZvY3VzRXZlbnQgZXh0ZW5kcyBBWEh0bWxFdmVudDxGb2N1c0V2ZW50PiB7fVxuXG4vKipcbiAqICBGaXJlcyBlYWNoIHRpbWUgYW4gaXRlbSBvciBtdWx0aXBsZSBpdGVtcyBzZWxlY3RlZCBieSB0aGUgdXNlciBvciB2YWx1ZS5cbiAqIEBjYXRlZ29yeSBFdmVudHNcbiAqL1xuZXhwb3J0IGNsYXNzIEFYU2VsZWN0aW9uVmFsdWVDaGFuZ2VkRXZlbnQgZXh0ZW5kcyBBWFZhbHVlQ2hhbmdlZEV2ZW50PGFueSB8IGFueVtdPiB7XG4gIG92ZXJyaWRlIHZhbHVlPzogYW55ID0gbnVsbDtcbiAgb3ZlcnJpZGUgb2xkVmFsdWU/OiBhbnkgPSBudWxsO1xuICBzZWxlY3RlZEtleXM/OiBhbnlbXSA9IFtdO1xuICBzZWxlY3RlZEl0ZW1zPzogYW55W10gPSBbXTtcbn1cblxuLyoqXG4gKiAgQ29udGFpbnMgcmFuZ2Ugc3RhcnQgJiBlbmQgdmFsdWVzXG4gKiBAY2F0ZWdvcnkgRXZlbnRzXG4gKi9cbmV4cG9ydCBjbGFzcyBBWFJhbmdlQ2hhbmdlZEV2ZW50PFQ+IGV4dGVuZHMgQVhFdmVudCB7XG4gIC8qKlxuICAgKiAgVGhlIHJhbmdlIHN0YXJ0IHZhbHVlXG4gICAqL1xuICBzdGFydD86IFQ7XG4gIC8qKlxuICAgKiAgVGhlIHJhbmdlIGVuZCB2YWx1ZVxuICAgKi9cbiAgZW5kPzogVDtcbn1cbiJdfQ==","import { EventEmitter, Injectable } from '@angular/core';\nimport { isEqual } from 'lodash-es';\nimport { MXValueComponent } from '../components/value-component.class';\nimport { AXEvent } from './events.class';\nimport * as i0 from \"@angular/core\";\nexport const TAB_META_KEY = '__meta__';\nexport class AXComponentCloseEvent extends AXEvent {\n}\nexport class AXComponentClosing {\n constructor() {\n this.cancel = false;\n }\n}\nexport class AXComponentResult {\n}\n/**\n * Defines a CSS class—or multiple classes separated by spaces— which are applied to a span element inside the Button. Allows the usage of custom icons after the primary text.\n */\nexport class AXComponentClosedPromise extends Promise {\n constructor(executor) {\n super(executor);\n }\n close() {\n if (this.closeMethod) {\n this.closeMethod();\n }\n }\n}\nexport class AXComponent {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXComponent, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXComponent }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXComponent, decorators: [{\n type: Injectable\n }] });\nexport class AXClosableComponent extends AXComponent {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXClosableComponent, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXClosableComponent }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXClosableComponent, decorators: [{\n type: Injectable\n }] });\nexport class AXClearableComponent extends AXComponent {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXClearableComponent, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXClearableComponent }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXClearableComponent, decorators: [{\n type: Injectable\n }] });\nexport class AXSearchableComponent extends AXComponent {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXSearchableComponent, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXSearchableComponent }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXSearchableComponent, decorators: [{\n type: Injectable\n }] });\nexport class AXValuableComponent extends AXComponent {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXValuableComponent, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXValuableComponent }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXValuableComponent, decorators: [{\n type: Injectable\n }] });\nexport class AXFocusableComponent extends AXComponent {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXFocusableComponent, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXFocusableComponent }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXFocusableComponent, decorators: [{\n type: Injectable\n }] });\nexport class AXPagedComponent extends AXComponent {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXPagedComponent, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXPagedComponent }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXPagedComponent, decorators: [{\n type: Injectable\n }] });\nexport class AXAutocompleteParentComponent extends MXValueComponent {\n constructor() {\n super(...arguments);\n this.onKeyDown = new EventEmitter();\n this.onItemSelected = new EventEmitter();\n }\n emitOnItemSelected(value, isUserInteraction = false) {\n if (isEqual(value, this.oldInputEmitValue))\n return;\n this.onItemSelected.emit({\n value,\n name: this.name,\n component: this,\n isUserInteraction,\n oldValue: this.oldInputEmitValue,\n htmlElement: this.getHostElement(),\n });\n this.oldInputEmitValue = value;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXAutocompleteParentComponent, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXAutocompleteParentComponent }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXAutocompleteParentComponent, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50cy5jbGFzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2Nkay9jb21tb24vc3JjL2xpYi9jbGFzc2VzL2NvbXBvbmVudHMuY2xhc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNwQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN2RSxPQUFPLEVBQUUsT0FBTyxFQUFvQyxNQUFNLGdCQUFnQixDQUFDOztBQUUzRSxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsVUFBVSxDQUFDO0FBRXZDLE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxPQUFPO0NBRWpEO0FBQ0QsTUFBTSxPQUFPLGtCQUFrQjtJQUEvQjtRQUNFLFdBQU0sR0FBRyxLQUFLLENBQUM7SUFFakIsQ0FBQztDQUFBO0FBRUQsTUFBTSxPQUFPLGlCQUFpQjtDQUc3QjtBQVFEOztHQUVHO0FBQ0gsTUFBTSxPQUFPLHdCQUF5QixTQUFRLE9BQTBCO0lBRXRFLFlBQ0UsUUFHUztRQUVULEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNsQixDQUFDO0lBRU0sS0FBSztRQUNWLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3JCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNyQixDQUFDO0lBQ0gsQ0FBQztDQUNGO0FBR0QsTUFBTSxPQUFnQixXQUFXOzhHQUFYLFdBQVc7a0hBQVgsV0FBVzs7MkZBQVgsV0FBVztrQkFEaEMsVUFBVTs7QUFJWCxNQUFNLE9BQWdCLG1CQUFvQixTQUFRLFdBQVc7OEdBQXZDLG1CQUFtQjtrSEFBbkIsbUJBQW1COzsyRkFBbkIsbUJBQW1CO2tCQUR4QyxVQUFVOztBQU9YLE1BQU0sT0FBZ0Isb0JBQXFCLFNBQVEsV0FBVzs4R0FBeEMsb0JBQW9CO2tIQUFwQixvQkFBb0I7OzJGQUFwQixvQkFBb0I7a0JBRHpDLFVBQVU7O0FBU1gsTUFBTSxPQUFnQixxQkFBc0IsU0FBUSxXQUFXOzhHQUF6QyxxQkFBcUI7a0hBQXJCLHFCQUFxQjs7MkZBQXJCLHFCQUFxQjtrQkFEMUMsVUFBVTs7QUFNWCxNQUFNLE9BQWdCLG1CQUFvQixTQUFRLFdBQVc7OEdBQXZDLG1CQUFtQjtrSEFBbkIsbUJBQW1COzsyRkFBbkIsbUJBQW1CO2tCQUR4QyxVQUFVOztBQW1CWCxNQUFNLE9BQWdCLG9CQUFxQixTQUFRLFdBQVc7OEdBQXhDLG9CQUFvQjtrSEFBcEIsb0JBQW9COzsyRkFBcEIsb0JBQW9CO2tCQUR6QyxVQUFVOztBQWFYLE1BQU0sT0FBZ0IsZ0JBQWlCLFNBQVEsV0FBVzs4R0FBcEMsZ0JBQWdCO2tIQUFoQixnQkFBZ0I7OzJGQUFoQixnQkFBZ0I7a0JBRHJDLFVBQVU7O0FBU1gsTUFBTSxPQUFnQiw2QkFBaUMsU0FBUSxnQkFBbUI7SUFEbEY7O1FBS0UsY0FBUyxHQUFHLElBQUksWUFBWSxFQUE4QixDQUFDO1FBQzNELG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQTBCLENBQUM7S0FjN0Q7SUFaQyxrQkFBa0IsQ0FBQyxLQUFRLEVBQUUsaUJBQWlCLEdBQUcsS0FBSztRQUNwRCxJQUFJLE9BQU8sQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDO1lBQUUsT0FBTztRQUNuRCxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQztZQUN2QixLQUFLO1lBQ0wsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQ2YsU0FBUyxFQUFFLElBQUk7WUFDZixpQkFBaUI7WUFDakIsUUFBUSxFQUFFLElBQUksQ0FBQyxpQkFBaUI7WUFDaEMsV0FBVyxFQUFFLElBQUksQ0FBQyxjQUFjLEVBQUU7U0FDbkMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEtBQUssQ0FBQztJQUNqQyxDQUFDOzhHQWxCbUIsNkJBQTZCO2tIQUE3Qiw2QkFBNkI7OzJGQUE3Qiw2QkFBNkI7a0JBRGxELFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFVuc3Vic2NyaWJlciB9IGZyb20gJ0BhY29yZXgvY29yZS91dGlscyc7XG5pbXBvcnQgeyBBWFZhbGlkYXRpb25SdWxlT3B0aW9ucywgQVhWYWxpZGF0aW9uU3VtbWFyeSB9IGZyb20gJ0BhY29yZXgvY29yZS92YWxpZGF0aW9uJztcbmltcG9ydCB7IEV2ZW50RW1pdHRlciwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgaXNFcXVhbCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBNWFZhbHVlQ29tcG9uZW50IH0gZnJvbSAnLi4vY29tcG9uZW50cy92YWx1ZS1jb21wb25lbnQuY2xhc3MnO1xuaW1wb3J0IHsgQVhFdmVudCwgQVhIdG1sRXZlbnQsIEFYVmFsdWVDaGFuZ2VkRXZlbnQgfSBmcm9tICcuL2V2ZW50cy5jbGFzcyc7XG5cbmV4cG9ydCBjb25zdCBUQUJfTUVUQV9LRVkgPSAnX19tZXRhX18nO1xuXG5leHBvcnQgY2xhc3MgQVhDb21wb25lbnRDbG9zZUV2ZW50IGV4dGVuZHMgQVhFdmVudCB7XG4gIGRhdGE/OiBhbnk7XG59XG5leHBvcnQgY2xhc3MgQVhDb21wb25lbnRDbG9zaW5nIHtcbiAgY2FuY2VsID0gZmFsc2U7XG4gIGRhdGE/OiBhbnk7XG59XG5cbmV4cG9ydCBjbGFzcyBBWENvbXBvbmVudFJlc3VsdCB7XG4gIHNlbmRlcjogYW55O1xuICBkYXRhPzogYW55O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFYRm9ybVZhbGlkYXRpb25SdWxlIHtcbiAgcnVsZTogc3RyaW5nO1xuICBkaXNhYmxlZDogYm9vbGVhbjtcbiAgb3B0aW9ucz86IEFYVmFsaWRhdGlvblJ1bGVPcHRpb25zO1xufVxuXG4vKipcbiAqICBEZWZpbmVzIGEgQ1NTIGNsYXNz4oCUb3IgbXVsdGlwbGUgY2xhc3NlcyBzZXBhcmF0ZWQgYnkgc3BhY2Vz4oCUIHdoaWNoIGFyZSBhcHBsaWVkIHRvIGEgc3BhbiBlbGVtZW50IGluc2lkZSB0aGUgQnV0dG9uLiBBbGxvd3MgdGhlIHVzYWdlIG9mIGN1c3RvbSBpY29ucyBhZnRlciB0aGUgcHJpbWFyeSB0ZXh0LlxuICovXG5leHBvcnQgY2xhc3MgQVhDb21wb25lbnRDbG9zZWRQcm9taXNlIGV4dGVuZHMgUHJvbWlzZTxBWENvbXBvbmVudFJlc3VsdD4ge1xuICBwcml2YXRlIGNsb3NlTWV0aG9kOiAoKSA9PiB2b2lkO1xuICBjb25zdHJ1Y3RvcihcbiAgICBleGVjdXRvcjogKFxuICAgICAgcmVzb2x2ZTogKHZhbHVlPzogQVhDb21wb25lbnRSZXN1bHQgfCBQcm9taXNlTGlrZTxBWENvbXBvbmVudFJlc3VsdD4pID0+IHZvaWQsXG4gICAgICByZWplY3Q6IChyZWFzb24/OiBhbnkpID0+IHZvaWQsXG4gICAgKSA9PiB2b2lkLFxuICApIHtcbiAgICBzdXBlcihleGVjdXRvcik7XG4gIH1cblxuICBwdWJsaWMgY2xvc2UoKSB7XG4gICAgaWYgKHRoaXMuY2xvc2VNZXRob2QpIHtcbiAgICAgIHRoaXMuY2xvc2VNZXRob2QoKTtcbiAgICB9XG4gIH1cbn1cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFYQ29tcG9uZW50IHt9XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBWENsb3NhYmxlQ29tcG9uZW50IGV4dGVuZHMgQVhDb21wb25lbnQge1xuICBhYnN0cmFjdCBjbG9zZSgpOiB2b2lkO1xuICBhYnN0cmFjdCBjbG9zZUFsbCgpOiB2b2lkO1xufVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQVhDbGVhcmFibGVDb21wb25lbnQgZXh0ZW5kcyBBWENvbXBvbmVudCB7XG4gIGFic3RyYWN0IHJlc2V0KHU6IGJvb2xlYW4pOiB2b2lkO1xuICBhYnN0cmFjdCBnZXQgcmVhZG9ubHkoKTogYm9vbGVhbjtcbiAgYWJzdHJhY3QgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW47XG4gIGFic3RyYWN0IGdldCB2YWx1ZSgpOiB1bmtub3duO1xufVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQVhTZWFyY2hhYmxlQ29tcG9uZW50IGV4dGVuZHMgQVhDb21wb25lbnQge1xuICBhYnN0cmFjdCBzZWFyY2godmFsdWU6IHN0cmluZyk6IHZvaWQ7XG59XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBWFZhbHVhYmxlQ29tcG9uZW50IGV4dGVuZHMgQVhDb21wb25lbnQge1xuICBhYnN0cmFjdCBnZXQgaXNSZXF1aXJlZCgpOiBib29sZWFuO1xuICB2YWxpZGF0aW9uUnVsZXNDaGFuZ2U6IEV2ZW50RW1pdHRlcjxBWEZvcm1WYWxpZGF0aW9uUnVsZVtdPjtcbiAgYWJzdHJhY3QgZ2V0IG5hbWUoKTogc3RyaW5nO1xuICBhYnN0cmFjdCBnZXQgdmFsdWUoKTogdW5rbm93bjtcbiAgYWJzdHJhY3Qgb25WYWx1ZUNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxBWFZhbHVlQ2hhbmdlZEV2ZW50PHVua25vd24+PjtcbiAgYWJzdHJhY3QgY29tbWl0VmFsdWUodmFsdWU6IHVua25vd24sIHU6IGJvb2xlYW4pO1xuXG4gIGFic3RyYWN0IGFkZFZhbGlkYXRpb25SdWxlKHJ1bGU6IEFYRm9ybVZhbGlkYXRpb25SdWxlKTtcblxuICBhYnN0cmFjdCByZW1vdmVWYWxpZGF0aW9uUnVsZShydWxlOiBBWEZvcm1WYWxpZGF0aW9uUnVsZSk7XG5cbiAgYWJzdHJhY3QgdmFsaWRhdGUoKTogUHJvbWlzZTxBWFZhbGlkYXRpb25TdW1tYXJ5PjtcbiAgYWJzdHJhY3QgcmVzZXQoZTogYm9vbGVhbik6IHZvaWQ7XG4gIGFic3RyYWN0IHJlc2V0RXJyb3JzKCk6IHZvaWQ7XG59XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBWEZvY3VzYWJsZUNvbXBvbmVudCBleHRlbmRzIEFYQ29tcG9uZW50IHtcbiAgYWJzdHJhY3QgZm9jdXMoKTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBWFBhZ2VkQ29tcG9uZW50SW50ZXJmYWNlIHtcbiAgZ29Ub1BhZ2UocGFnZTogbnVtYmVyKTtcbiAgZ2V0IHRvdGFsQ291bnQoKTogbnVtYmVyO1xuICBnZXQgcGFnZVNpemUoKTogbnVtYmVyO1xuICBvblBhZ2VDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8QVhWYWx1ZUNoYW5nZWRFdmVudDxudW1iZXI+Pjtcbn1cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFYUGFnZWRDb21wb25lbnQgZXh0ZW5kcyBBWENvbXBvbmVudCBpbXBsZW1lbnRzIEFYUGFnZWRDb21wb25lbnRJbnRlcmZhY2Uge1xuICBhYnN0cmFjdCBnb1RvUGFnZShwYWdlOiBudW1iZXIpO1xuICBhYnN0cmFjdCBnZXQgdG90YWxDb3VudCgpOiBudW1iZXI7XG4gIGFic3RyYWN0IHBhZ2VTaXplOiBudW1iZXI7XG4gIGFic3RyYWN0IG9uUGFnZUNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxBWFZhbHVlQ2hhbmdlZEV2ZW50PG51bWJlcj4+O1xufVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQVhBdXRvY29tcGxldGVQYXJlbnRDb21wb25lbnQ8VD4gZXh0ZW5kcyBNWFZhbHVlQ29tcG9uZW50PFQ+IHtcbiAgb2xkSW5wdXRFbWl0VmFsdWU6IFQ7XG4gIGFic3RyYWN0IHVuc3Vic2NyaWJlcjogQVhVbnN1YnNjcmliZXI7XG5cbiAgb25LZXlEb3duID0gbmV3IEV2ZW50RW1pdHRlcjxBWEh0bWxFdmVudDxLZXlib2FyZEV2ZW50Pj4oKTtcbiAgb25JdGVtU2VsZWN0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPEFYVmFsdWVDaGFuZ2VkRXZlbnQ8VD4+KCk7XG5cbiAgZW1pdE9uSXRlbVNlbGVjdGVkKHZhbHVlOiBULCBpc1VzZXJJbnRlcmFjdGlvbiA9IGZhbHNlKSB7XG4gICAgaWYgKGlzRXF1YWwodmFsdWUsIHRoaXMub2xkSW5wdXRFbWl0VmFsdWUpKSByZXR1cm47XG4gICAgdGhpcy5vbkl0ZW1TZWxlY3RlZC5lbWl0KHtcbiAgICAgIHZhbHVlLFxuICAgICAgbmFtZTogdGhpcy5uYW1lLFxuICAgICAgY29tcG9uZW50OiB0aGlzLFxuICAgICAgaXNVc2VySW50ZXJhY3Rpb24sXG4gICAgICBvbGRWYWx1ZTogdGhpcy5vbGRJbnB1dEVtaXRWYWx1ZSxcbiAgICAgIGh0bWxFbGVtZW50OiB0aGlzLmdldEhvc3RFbGVtZW50KCksXG4gICAgfSk7XG4gICAgdGhpcy5vbGRJbnB1dEVtaXRWYWx1ZSA9IHZhbHVlO1xuICB9XG59XG4iXX0=","import { DataSource } from '@angular/cdk/collections';\nimport { BehaviorSubject, Subscription, debounceTime, distinctUntilChanged } from 'rxjs';\nexport class AXListDataSource extends DataSource {\n get range() {\n return this._range;\n }\n /**\n * @ignore\n */\n constructor(config) {\n super();\n this.config = config;\n this.debounceTime = 0;\n this.subscription = new Subscription();\n this._range = { start: 0, end: 0 };\n this.source = config.source;\n if (config.debounceTime)\n this.debounceTime = config.debounceTime;\n //\n this.dataStream = new BehaviorSubject(this.config.source.cachedItems);\n this.source.onChanged.subscribe((data) => {\n this.dataStream.next(data.cachedItems);\n });\n }\n connect(collectionViewer) {\n this.subscription.add(collectionViewer.viewChange\n .pipe(debounceTime(this.debounceTime))\n .pipe(distinctUntilChanged())\n .subscribe((range) => {\n this._range = range;\n const startPage = this.getPageForIndex(range.start);\n const endPage = this.getPageForIndex(range.end - 1);\n for (let i = startPage; i <= endPage; i++) {\n this.source.setPage(i);\n }\n }));\n return this.dataStream;\n }\n disconnect() {\n this.subscription.unsubscribe();\n }\n getPageForIndex(index) {\n return Math.floor(index / this.source.config.pageSize);\n }\n refresh() {\n this.dataStream.next(new Array(this.source.pageSize));\n this.source.refresh();\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWxpc3QuY2xhc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jZGsvY29tbW9uL3NyYy9saWIvY2xhc3Nlcy9kYXRhbGlzdC5jbGFzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW9CLFVBQVUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxlQUFlLEVBQWMsWUFBWSxFQUFFLFlBQVksRUFBRSxvQkFBb0IsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQWlCckcsTUFBTSxPQUFPLGdCQUE4QixTQUFRLFVBQWE7SUFPOUQsSUFBVyxLQUFLO1FBQ2QsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7SUFFRDs7T0FFRztJQUNILFlBQW9CLE1BQTBEO1FBQzVFLEtBQUssRUFBRSxDQUFDO1FBRFUsV0FBTSxHQUFOLE1BQU0sQ0FBb0Q7UUFidEUsaUJBQVksR0FBRyxDQUFDLENBQUM7UUFDakIsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBSWxDLFdBQU0sR0FBbUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQztRQVVwRSxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUM7UUFDNUIsSUFBSSxNQUFNLENBQUMsWUFBWTtZQUFFLElBQUksQ0FBQyxZQUFZLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQztRQUNqRSxFQUFFO1FBQ0YsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLGVBQWUsQ0FBTSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUMzRSxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUN2QyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDekMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsT0FBTyxDQUFDLGdCQUFrQztRQUN4QyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FDbkIsZ0JBQWdCLENBQUMsVUFBVTthQUN4QixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQzthQUNyQyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQzthQUM1QixTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUNuQixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztZQUNwQixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNwRCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDcEQsS0FBSyxJQUFJLENBQUMsR0FBRyxTQUFTLEVBQUUsQ0FBQyxJQUFJLE9BQU8sRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO2dCQUMxQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN6QixDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQ0wsQ0FBQztRQUNGLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUN6QixDQUFDO0lBRUQsVUFBVTtRQUNSLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDbEMsQ0FBQztJQUVPLGVBQWUsQ0FBQyxLQUFhO1FBQ25DLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVELE9BQU87UUFDTCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7UUFDdEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUN4QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb2xsZWN0aW9uVmlld2VyLCBEYXRhU291cmNlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvbGxlY3Rpb25zJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9uLCBkZWJvdW5jZVRpbWUsIGRpc3RpbmN0VW50aWxDaGFuZ2VkIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBWERhdGFTb3VyY2UgfSBmcm9tICcuL2RhdGFzb3VyY2UuY2xhc3MnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFYRGF0YUxpc3RRdWVyeSB7XG4gIHRha2U/OiBudW1iZXI7XG4gIHNraXA/OiBudW1iZXI7XG4gIHNlYXJjaFF1ZXJ5Pzogc3RyaW5nO1xufVxuZXhwb3J0IGludGVyZmFjZSBBWERhdGFMaXN0RmV0Y2hDYWxsYmFja1Jlc3VsdCB7XG4gIGl0ZW1zOiBBcnJheTxhbnk+O1xuICB0b3RhbDogbnVtYmVyO1xufVxuXG5leHBvcnQgdHlwZSBBWERhdGFMaXN0RmV0Y2hEYXRhQ2FsbGJhY2sgPSAoZTogQVhEYXRhTGlzdFF1ZXJ5KSA9PiBQcm9taXNlPEFYRGF0YUxpc3RGZXRjaENhbGxiYWNrUmVzdWx0PjtcblxuZXhwb3J0IHR5cGUgQVhEYXRhTGlzdEl0ZW1zID0gQXJyYXk8YW55PiB8IEFYRGF0YUxpc3RGZXRjaERhdGFDYWxsYmFjaztcblxuZXhwb3J0IGNsYXNzIEFYTGlzdERhdGFTb3VyY2U8VCA9IHVua25vd24+IGV4dGVuZHMgRGF0YVNvdXJjZTxUPiB7XG4gIHByaXZhdGUgZGVib3VuY2VUaW1lID0gMDtcbiAgcHJpdmF0ZSBzdWJzY3JpcHRpb24gPSBuZXcgU3Vic2NyaXB0aW9uKCk7XG4gIHB1YmxpYyBzb3VyY2U6IEFYRGF0YVNvdXJjZTxUPjtcbiAgcHJpdmF0ZSBkYXRhU3RyZWFtOiBCZWhhdmlvclN1YmplY3Q8VFtdPjtcblxuICBwcml2YXRlIF9yYW5nZTogeyBzdGFydDogbnVtYmVyOyBlbmQ6IG51bWJlciB9ID0geyBzdGFydDogMCwgZW5kOiAwIH07XG4gIHB1YmxpYyBnZXQgcmFuZ2UoKTogeyBzdGFydDogbnVtYmVyOyBlbmQ6IG51bWJlciB9IHtcbiAgICByZXR1cm4gdGhpcy5fcmFuZ2U7XG4gIH1cblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjb25maWc6IHsgc291cmNlOiBBWERhdGFTb3VyY2U8VD47IGRlYm91bmNlVGltZT86IG51bWJlciB9KSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLnNvdXJjZSA9IGNvbmZpZy5zb3VyY2U7XG4gICAgaWYgKGNvbmZpZy5kZWJvdW5jZVRpbWUpIHRoaXMuZGVib3VuY2VUaW1lID0gY29uZmlnLmRlYm91bmNlVGltZTtcbiAgICAvL1xuICAgIHRoaXMuZGF0YVN0cmVhbSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8VFtdPih0aGlzLmNvbmZpZy5zb3VyY2UuY2FjaGVkSXRlbXMpO1xuICAgIHRoaXMuc291cmNlLm9uQ2hhbmdlZC5zdWJzY3JpYmUoKGRhdGEpID0+IHtcbiAgICAgIHRoaXMuZGF0YVN0cmVhbS5uZXh0KGRhdGEuY2FjaGVkSXRlbXMpO1xuICAgIH0pO1xuICB9XG5cbiAgY29ubmVjdChjb2xsZWN0aW9uVmlld2VyOiBDb2xsZWN0aW9uVmlld2VyKTogT2JzZXJ2YWJsZTxUW10+IHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbi5hZGQoXG4gICAgICBjb2xsZWN0aW9uVmlld2VyLnZpZXdDaGFuZ2VcbiAgICAgICAgLnBpcGUoZGVib3VuY2VUaW1lKHRoaXMuZGVib3VuY2VUaW1lKSlcbiAgICAgICAgLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKSlcbiAgICAgICAgLnN1YnNjcmliZSgocmFuZ2UpID0+IHtcbiAgICAgICAgICB0aGlzLl9yYW5nZSA9IHJhbmdlO1xuICAgICAgICAgIGNvbnN0IHN0YXJ0UGFnZSA9IHRoaXMuZ2V0UGFnZUZvckluZGV4KHJhbmdlLnN0YXJ0KTtcbiAgICAgICAgICBjb25zdCBlbmRQYWdlID0gdGhpcy5nZXRQYWdlRm9ySW5kZXgocmFuZ2UuZW5kIC0gMSk7XG4gICAgICAgICAgZm9yIChsZXQgaSA9IHN0YXJ0UGFnZTsgaSA8PSBlbmRQYWdlOyBpKyspIHtcbiAgICAgICAgICAgIHRoaXMuc291cmNlLnNldFBhZ2UoaSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KSxcbiAgICApO1xuICAgIHJldHVybiB0aGlzLmRhdGFTdHJlYW07XG4gIH1cblxuICBkaXNjb25uZWN0KCk6IHZvaWQge1xuICAgIHRoaXMuc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBwcml2YXRlIGdldFBhZ2VGb3JJbmRleChpbmRleDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICByZXR1cm4gTWF0aC5mbG9vcihpbmRleCAvIHRoaXMuc291cmNlLmNvbmZpZy5wYWdlU2l6ZSk7XG4gIH1cblxuICByZWZyZXNoKCkge1xuICAgIHRoaXMuZGF0YVN0cmVhbS5uZXh0KG5ldyBBcnJheSh0aGlzLnNvdXJjZS5wYWdlU2l6ZSkpO1xuICAgIHRoaXMuc291cmNlLnJlZnJlc2goKTtcbiAgfVxufVxuIl19","import { Subject } from 'rxjs';\nexport class AXDataSource {\n get totalCount() {\n return this._totalCount;\n }\n get totalPages() {\n return Math.ceil(this.totalCount / this.config.pageSize);\n }\n get pageSize() {\n return this.config.pageSize;\n }\n get cachedItems() {\n return this._cachedItems;\n }\n get items() {\n return this._items;\n }\n get query() {\n return this._query;\n }\n get isLoading() {\n return this._isLoading;\n }\n constructor(config) {\n this.useCache = true;\n this._totalCount = 0;\n this._items = [];\n this.fetchedPages = new Set();\n this._page = 0;\n this._query = { skip: 0, take: 0, sort: [] };\n this.onChanged = new Subject();\n this.onItemExpanded = new Subject();\n this.onItemRefreshChildren = new Subject();\n this.onLoadingChanged = new Subject();\n this._isLoading = false;\n this.config = config;\n this._cachedItems = new Array(this.config.pageSize);\n this._items = new Array(0);\n this._query.take = this.config.pageSize;\n }\n load() {\n const page = this._page;\n if (this.fetchedPages.has(page) && this.useCache) {\n return;\n }\n this.setLoadingState(true);\n this.fetchedPages.add(page);\n this._query.take = this.config.pageSize;\n this._query.skip = page * this.config.pageSize;\n this.config\n .load({ ...this._query })\n .then((result) => {\n if (this._totalCount != result.total) {\n this._cachedItems = new Array(result.total);\n this._totalCount = result.total;\n }\n this._items = result.items;\n this._cachedItems.splice(page * this.config.pageSize, this.config.pageSize, ...result.items);\n const event = {\n cachedItems: this.cachedItems,\n items: this.items,\n page: page,\n totalCount: this.totalCount,\n totalPages: this.totalPages,\n };\n this.onChanged.next(event);\n })\n .finally(() => {\n this.setLoadingState(false);\n });\n }\n async getItemsByFilter(filter) {\n return await this.config.load({ ...this.query, filter });\n }\n setLoadingState(value) {\n this._isLoading = value;\n this.onLoadingChanged.next(this._isLoading);\n }\n setPage(page) {\n if (this._page != page || this._items.length == 0) {\n this._page = page;\n this.load();\n }\n }\n setPageSize(pageSize) {\n this.config.pageSize = pageSize;\n this.load();\n }\n filter(value) {\n this._query.filter = value;\n }\n sort(...value) {\n this._query.sort = value;\n }\n clearFilter() {\n this._query.filter = null;\n }\n reset() {\n this._query.filter = null;\n this._query.sort = [];\n this._query.skip = 0;\n this._items = new Array(0);\n this._cachedItems = new Array(this.config.pageSize);\n this.fetchedPages.clear();\n this._page = 0;\n this._totalCount = 0;\n }\n refresh() {\n const currentFilter = this._query.filter;\n const currentSort = this._query.sort;\n this.reset();\n this._query.filter = currentFilter;\n this._query.sort = currentSort;\n this.load();\n }\n find(key) {\n const fromCache = this.cachedItems.find((c) => (!this.config.key && c == key) || (c && this.config.key && c[this.config.key] == key));\n if (fromCache)\n return fromCache;\n return this.config.byKey ? this.config.byKey(key) : null;\n }\n}\nexport function convertArrayToDataSource(items, options = { key: 'id', pageSize: 100 }) {\n const config = {\n key: options.key,\n pageSize: options.pageSize,\n load: async (e) => {\n const result = e.filter ? handleSearch(items, e.filter) : items;\n return {\n items: result.slice(e.skip, e.skip + e.take),\n total: result.length,\n };\n },\n byKey: (v) => Promise.resolve(items.find((c) => {\n return c[options.key] == v;\n })),\n };\n const handleSearch = (items, filter) => {\n if (!filter?.field || filter.value === undefined || filter.value === null) {\n return items; // No filter applied\n }\n return items.filter((item) => {\n const itemField = item[filter.field];\n if (typeof itemField === 'string' && typeof filter.value === 'string') {\n return itemField.toLowerCase().includes(filter.value.toLowerCase());\n }\n return false; // Return false if itemField isn't comparable\n });\n };\n return new AXDataSource(config);\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YXNvdXJjZS5jbGFzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2Nkay9jb21tb24vc3JjL2xpYi9jbGFzc2VzL2RhdGFzb3VyY2UuY2xhc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQW1EL0IsTUFBTSxPQUFPLFlBQVk7SUFLdkIsSUFBVyxVQUFVO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUMxQixDQUFDO0lBRUQsSUFBVyxVQUFVO1FBQ25CLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVELElBQVcsUUFBUTtRQUNqQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDO0lBQzlCLENBQUM7SUFHRCxJQUFXLFdBQVc7UUFDcEIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQzNCLENBQUM7SUFHRCxJQUFXLEtBQUs7UUFDZCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztJQU1ELElBQVcsS0FBSztRQUNkLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBU0QsSUFBVyxTQUFTO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUN6QixDQUFDO0lBRUQsWUFBWSxNQUE2QjtRQTVDekMsYUFBUSxHQUFHLElBQUksQ0FBQztRQUVSLGdCQUFXLEdBQUcsQ0FBQyxDQUFDO1FBa0JoQixXQUFNLEdBQVEsRUFBRSxDQUFDO1FBS2pCLGlCQUFZLEdBQUcsSUFBSSxHQUFHLEVBQVUsQ0FBQztRQUNqQyxVQUFLLEdBQUcsQ0FBQyxDQUFDO1FBQ1YsV0FBTSxHQUFzQixFQUFFLElBQUksRUFBRSxDQUFDLEVBQUUsSUFB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QUMzQixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBVyxDQUFDO1lBRS9DLElBQUksT0FBTyxTQUFTLEtBQUssUUFBUSxJQUFJLE9BQU8sTUFBTSxDQUFDLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztnQkFDdEUsT0FBTyxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztZQUN0RSxDQUFDO1lBRUQsT0FBTyxLQUFLLENBQUMsQ0FBQyw2Q0FBNkM7UUFDN0QsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUM7SUFFRixPQUFPLElBQUksWUFBWSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBQ2xDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCB0eXBlIEFYRGF0YVNvdXJjZU9wZXJhdG9yID0ge1xuICB0eXBlOiAnZXF1YWwnIHwgJ2lzTnVsbCcgfCAnaXNFbXB0eScgfCAnbHQnIHwgJ2x0ZScgfCAnZ3QnIHwgJ2d0ZScgfCAnc3RhcnRzV2l0aCcgfCAnZW5kc1dpdGgnIHwgJ2NvbnRhaW5zJztcbiAgbmVnYXRpdmU/OiBib29sZWFuO1xufTtcbmV4cG9ydCB0eXBlIEFYRmlsdGVyTG9naWMgPSAnYW5kJyB8ICdvcic7XG5leHBvcnQgdHlwZSBBWFNvcnRPcmRlciA9ICdhc2MnIHwgJ2Rlc2MnO1xuXG5leHBvcnQgdHlwZSBBWERhdGFTb3VyY2VGaWx0ZXJPcHRpb24gPSB7XG4gIGZpZWxkPzogc3RyaW5nO1xuICB2YWx1ZT86IHVua25vd247XG4gIG9wZXJhdG9yPzogQVhEYXRhU291cmNlT3BlcmF0b3I7XG4gIGxvZ2ljPzogQVhGaWx0ZXJMb2dpYztcbiAgZmlsdGVycz86IEFYRGF0YVNvdXJjZUZpbHRlck9wdGlvbltdO1xufTtcbmV4cG9ydCB0eXBlIEFYRGF0YVNvdXJjZVNvcnRPcHRpb24gPSB7IGZpZWxkOiBzdHJpbmc7IGRpcjogJ2FzYycgfCAnZGVzYycgfTtcblxuZXhwb3J0IGludGVyZmFjZSBBWERhdGFTb3VyY2VRdWVyeSB7XG4gIHRha2U6IG51bWJlcjtcbiAgc2tpcDogbnVtYmVyO1xuICBmaWx0ZXI/OiBBWERhdGFTb3VyY2VGaWx0ZXJPcHRpb247XG4gIHNvcnQ6IEFYRGF0YVNvdXJjZVNvcnRPcHRpb25bXTtcbn1cbmV4cG9ydCBpbnRlcmZhY2UgQVhEYXRhU291cmNlQ2FsbGJhY2tSZXN1bHQ8VD4ge1xuICBpdGVtczogQXJyYXk8VD47XG4gIHRvdGFsOiBudW1iZXI7XG59XG5cbmV4cG9ydCB0eXBlIEFYRGF0YVNvdXJjZUxvYWRDYWxsYmFjazxUPiA9IChlOiBBWERhdGFTb3VyY2VRdWVyeSkgPT4gUHJvbWlzZTxBWERhdGFTb3VyY2VDYWxsYmFja1Jlc3VsdDxUPj47XG5leHBvcnQgdHlwZSBBWERhdGFTb3VyY2VCeUtleUNhbGxiYWNrPFQ+ID0gKGtleTogdW5rbm93bikgPT4gUHJvbWlzZTxUPjtcblxuZXhwb3J0IGludGVyZmFjZSBBWERhdGFTb3VyY2VDb25maWc8VCA9IHVua25vd24+IHtcbiAga2V5Pzogc3RyaW5nO1xuICBwYWdlU2l6ZTogbnVtYmVyO1xuICBsb2FkOiBBWERhdGFTb3VyY2VMb2FkQ2FsbGJhY2s8VD47XG4gIGJ5S2V5PzogQVhEYXRhU291cmNlQnlLZXlDYWxsYmFjazxUPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBWERhdGFTb3VyY2VDaGFuZ2VkRXZlbnQ8VCA9IHVua25vd24+IHtcbiAgY2FjaGVkSXRlbXM6IEFycmF5PFQ+O1xuICBpdGVtczogQXJyYXk8VD47XG4gIHRvdGFsQ291bnQ6IG51bWJlcjtcbiAgdG90YWxQYWdlczogbnVtYmVyO1xuICBwYWdlOiBudW1iZXI7XG59XG5leHBvcnQgaW50ZXJmYWNlIEFYRGF0YVNvdXJjZUl0ZW1FeHBhbmRlZEV2ZW50PFQgPSB1bmtub3duPiB7XG4gIGV4cGFuZGVkSXRlbTogVDtcbiAgY2hpbGRyZW46IEFycmF5PFQ+O1xufVxuXG5leHBvcnQgY2xhc3MgQVhEYXRhU291cmNlPFQgPSB1bmtub3duPiB7XG4gIGNvbmZpZyE6IEFYRGF0YVNvdXJjZUNvbmZpZzxUPjtcbiAgdXNlQ2FjaGUgPSB0cnVlO1xuXG4gIHByaXZhdGUgX3RvdGFsQ291bnQgPSAwO1xuICBwdWJsaWMgZ2V0IHRvdGFsQ291bnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fdG90YWxDb3VudDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdG90YWxQYWdlcygpOiBudW1iZXIge1xuICAgIHJldHVybiBNYXRoLmNlaWwodGhpcy50b3RhbENvdW50IC8gdGhpcy5jb25maWcucGFnZVNpemUpO1xuICB9XG5cbiAgcHVibGljIGdldCBwYWdlU2l6ZSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmNvbmZpZy5wYWdlU2l6ZTtcbiAgfVxuXG4gIHByaXZhdGUgX2NhY2hlZEl0ZW1zOiBUW107XG4gIHB1YmxpYyBnZXQgY2FjaGVkSXRlbXMoKTogVFtdIHtcbiAgICByZXR1cm4gdGhpcy5fY2FjaGVkSXRlbXM7XG4gIH1cblxuICBwcml2YXRlIF9pdGVtczogVFtdID0gW107XG4gIHB1YmxpYyBnZXQgaXRlbXMoKTogVFtdIHtcbiAgICByZXR1cm4gdGhpcy5faXRlbXM7XG4gIH1cblxuICBwcml2YXRlIGZldGNoZWRQYWdlcyA9IG5ldyBTZXQ8bnVtYmVyPigpO1xuICBwcml2YXRlIF9wYWdlID0gMDtcbiAgcHJpdmF0ZSBfcXVlcnk6IEFYRGF0YVNvdXJjZVF1ZXJ5ID0geyBza2lwOiAwLCB0YWtlOiAwLCBzb3J0OiBbXSB9O1xuXG4gIHB1YmxpYyBnZXQgcXVlcnkoKTogQVhEYXRhU291cmNlUXVlcnkge1xuICAgIHJldHVybiB0aGlzLl9xdWVyeTtcbiAgfVxuXG4gIHB1YmxpYyBvbkNoYW5nZWQgPSBuZXcgU3ViamVjdDxBWERhdGFTb3VyY2VDaGFuZ2VkRXZlbnQ8VD4+KCk7XG5cbiAgcHVibGljIG9uSXRlbUV4cGFuZGVkID0gbmV3IFN1YmplY3Q8QVhEYXRhU291cmNlSXRlbUV4cGFuZGVkRXZlbnQ8VD4+KCk7XG4gIHB1YmxpYyBvbkl0ZW1SZWZyZXNoQ2hpbGRyZW4gPSBuZXcgU3ViamVjdDx7IGlkOiBzdHJpbmcgfT4oKTtcblxuICBwdWJsaWMgb25Mb2FkaW5nQ2hhbmdlZCA9IG5ldyBTdWJqZWN0PGJvb2xlYW4+KCk7XG4gIHByaXZhdGUgX2lzTG9hZGluZyA9IGZhbHNlO1xuICBwdWJsaWMgZ2V0IGlzTG9hZGluZygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5faXNMb2FkaW5nO1xuICB9XG5cbiAgY29uc3RydWN0b3IoY29uZmlnOiBBWERhdGFTb3VyY2VDb25maWc8VD4pIHtcbiAgICB0aGlzLmNvbmZpZyA9IGNvbmZpZztcbiAgICB0aGlzLl9jYWNoZWRJdGVtcyA9IG5ldyBBcnJheSh0aGlzLmNvbmZpZy5wYWdlU2l6ZSk7XG4gICAgdGhpcy5faXRlbXMgPSBuZXcgQXJyYXkoMCk7XG4gICAgdGhpcy5fcXVlcnkudGFrZSA9IHRoaXMuY29uZmlnLnBhZ2VTaXplO1xuICB9XG5cbiAgcHJpdmF0ZSBsb2FkKCkge1xuICAgIGNvbnN0IHBhZ2UgPSB0aGlzLl9wYWdlO1xuICAgIGlmICh0aGlzLmZldGNoZWRQYWdlcy5oYXMocGFnZSkgJiYgdGhpcy51c2VDYWNoZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLnNldExvYWRpbmdTdGF0ZSh0cnVlKTtcbiAgICB0aGlzLmZldGNoZWRQYWdlcy5hZGQocGFnZSk7XG4gICAgdGhpcy5fcXVlcnkudGFrZSA9IHRoaXMuY29uZmlnLnBhZ2VTaXplO1xuICAgIHRoaXMuX3F1ZXJ5LnNraXAgPSBwYWdlICogdGhpcy5jb25maWcucGFnZVNpemU7XG4gICAgdGhpcy5jb25maWdcbiAgICAgIC5sb2FkKHsgLi4udGhpcy5fcXVlcnkgfSlcbiAgICAgIC50aGVuKChyZXN1bHQpID0+IHtcbiAgICAgICAgaWYgKHRoaXMuX3RvdGFsQ291bnQgIT0gcmVzdWx0LnRvdGFsKSB7XG4gICAgICAgICAgdGhpcy5fY2FjaGVkSXRlbXMgPSBuZXcgQXJyYXkocmVzdWx0LnRvdGFsKTtcbiAgICAgICAgICB0aGlzLl90b3RhbENvdW50ID0gcmVzdWx0LnRvdGFsO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX2l0ZW1zID0gcmVzdWx0Lml0ZW1zO1xuICAgICAgICB0aGlzLl9jYWNoZWRJdGVtcy5zcGxpY2UocGFnZSAqIHRoaXMuY29uZmlnLnBhZ2VTaXplLCB0aGlzLmNvbmZpZy5wYWdlU2l6ZSwgLi4ucmVzdWx0Lml0ZW1zKTtcbiAgICAgICAgY29uc3QgZXZlbnQgPSB7XG4gICAgICAgICAgY2FjaGVkSXRlbXM6IHRoaXMuY2FjaGVkSXRlbXMsXG4gICAgICAgICAgaXRlbXM6IHRoaXMuaXRlbXMsXG4gICAgICAgICAgcGFnZTogcGFnZSxcbiAgICAgICAgICB0b3RhbENvdW50OiB0aGlzLnRvdGFsQ291bnQsXG4gICAgICAgICAgdG90YWxQYWdlczogdGhpcy50b3RhbFBhZ2VzLFxuICAgICAgICB9O1xuICAgICAgICB0aGlzLm9uQ2hhbmdlZC5uZXh0KGV2ZW50KTtcbiAgICAgIH0pXG4gICAgICAuZmluYWxseSgoKSA9PiB7XG4gICAgICAgIHRoaXMuc2V0TG9hZGluZ1N0YXRlKGZhbHNlKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGdldEl0ZW1zQnlGaWx0ZXIoZmlsdGVyOiBBWERhdGFTb3VyY2VGaWx0ZXJPcHRpb24pIHtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5jb25maWcubG9hZCh7IC4uLnRoaXMucXVlcnksIGZpbHRlciB9KTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0TG9hZGluZ1N0YXRlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5faXNMb2FkaW5nID0gdmFsdWU7XG4gICAgdGhpcy5vbkxvYWRpbmdDaGFuZ2VkLm5leHQodGhpcy5faXNMb2FkaW5nKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRQYWdlKHBhZ2U6IG51bWJlcikge1xuICAgIGlmICh0aGlzLl9wYWdlICE9IHBhZ2UgfHwgdGhpcy5faXRlbXMubGVuZ3RoID09IDApIHtcbiAgICAgIHRoaXMuX3BhZ2UgPSBwYWdlO1xuICAgICAgdGhpcy5sb2FkKCk7XG4gICAgfVxuICB9XG4gIHB1YmxpYyBzZXRQYWdlU2l6ZShwYWdlU2l6ZTogbnVtYmVyKSB7XG4gICAgdGhpcy5jb25maWcucGFnZVNpemUgPSBwYWdlU2l6ZTtcbiAgICB0aGlzLmxvYWQoKTtcbiAgfVxuXG4gIHB1YmxpYyBmaWx0ZXIodmFsdWU6IEFYRGF0YVNvdXJjZUZpbHRlck9wdGlvbikge1xuICAgIHRoaXMuX3F1ZXJ5LmZpbHRlciA9IHZhbHVlO1xuICB9XG5cbiAgcHVibGljIHNvcnQoLi4udmFsdWU6IEFYRGF0YVNvdXJjZVNvcnRPcHRpb25bXSkge1xuICAgIHRoaXMuX3F1ZXJ5LnNvcnQgPSB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBjbGVhckZpbHRlcigpIHtcbiAgICB0aGlzLl9xdWVyeS5maWx0ZXIgPSBudWxsO1xuICB9XG5cbiAgcHVibGljIHJlc2V0KCkge1xuICAgIHRoaXMuX3F1ZXJ5LmZpbHRlciA9IG51bGw7XG4gICAgdGhpcy5fcXVlcnkuc29ydCA9IFtdO1xuICAgIHRoaXMuX3F1ZXJ5LnNraXAgPSAwO1xuICAgIHRoaXMuX2l0ZW1zID0gbmV3IEFycmF5KDApO1xuICAgIHRoaXMuX2NhY2hlZEl0ZW1zID0gbmV3IEFycmF5KHRoaXMuY29uZmlnLnBhZ2VTaXplKTtcbiAgICB0aGlzLmZldGNoZWRQYWdlcy5jbGVhcigpO1xuICAgIHRoaXMuX3BhZ2UgPSAwO1xuICAgIHRoaXMuX3RvdGFsQ291bnQgPSAwO1xuICB9XG5cbiAgcHVibGljIHJlZnJlc2goKSB7XG4gICAgY29uc3QgY3VycmVudEZpbHRlciA9IHRoaXMuX3F1ZXJ5LmZpbHRlcjtcbiAgICBjb25zdCBjdXJyZW50U29ydCA9IHRoaXMuX3F1ZXJ5LnNvcnQ7XG4gICAgdGhpcy5yZXNldCgpO1xuICAgIHRoaXMuX3F1ZXJ5LmZpbHRlciA9IGN1cnJlbnRGaWx0ZXI7XG4gICAgdGhpcy5fcXVlcnkuc29ydCA9IGN1cnJlbnRTb3J0O1xuICAgIHRoaXMubG9hZCgpO1xuICB9XG5cbiAgZmluZChrZXk6IHVua25vd24pOiBUIHwgUHJvbWlzZTxUPiB7XG4gICAgY29uc3QgZnJvbUNhY2hlID0gdGhpcy5jYWNoZWRJdGVtcy5maW5kKFxuICAgICAgKGMpID0+ICghdGhpcy5jb25maWcua2V5ICYmIGMgPT0ga2V5KSB8fCAoYyAmJiB0aGlzLmNvbmZpZy5rZXkgJiYgY1t0aGlzLmNvbmZpZy5rZXldID09IGtleSksXG4gICAgKTtcbiAgICBpZiAoZnJvbUNhY2hlKSByZXR1cm4gZnJvbUNhY2hlO1xuICAgIHJldHVybiB0aGlzLmNvbmZpZy5ieUtleSA/IHRoaXMuY29uZmlnLmJ5S2V5KGtleSkgOiBudWxsO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjb252ZXJ0QXJyYXlUb0RhdGFTb3VyY2U8VD4oXG4gIGl0ZW1zOiBUW10sXG4gIG9wdGlvbnM6IHsga2V5OiBzdHJpbmc7IHBhZ2VTaXplOiBudW1iZXIgfSA9IHsga2V5OiAnaWQnLCBwYWdlU2l6ZTogMTAwIH0sXG4pOiBBWERhdGFTb3VyY2Uge1xuICBjb25zdCBjb25maWc6IEFYRGF0YVNvdXJjZUNvbmZpZyA9IHtcbiAgICBrZXk6IG9wdGlvbnMua2V5LFxuICAgIHBhZ2VTaXplOiBvcHRpb25zLnBhZ2VTaXplLFxuICAgIGxvYWQ6IGFzeW5jIChlOiBBWERhdGFTb3VyY2VRdWVyeSkgPT4ge1xuICAgICAgY29uc3QgcmVzdWx0ID0gZS5maWx0ZXIgPyBoYW5kbGVTZWFyY2goaXRlbXMsIGUuZmlsdGVyKSA6IGl0ZW1zO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaXRlbXM6IHJlc3VsdC5zbGljZShlLnNraXAsIGUuc2tpcCArIGUudGFrZSksXG4gICAgICAgIHRvdGFsOiByZXN1bHQubGVuZ3RoLFxuICAgICAgfTtcbiAgICB9LFxuICAgIGJ5S2V5OiAodjogdW5rbm93bikgPT5cbiAgICAgIFByb21pc2UucmVzb2x2ZTxUPihcbiAgICAgICAgaXRlbXMuZmluZCgoYykgPT4ge1xuICAgICAgICAgIHJldHVybiBjW29wdGlvbnMua2V5XSA9PSB2O1xuICAgICAgICB9KSxcbiAgICAgICksXG4gIH07XG4gIGNvbnN0IGhhbmRsZVNlYXJjaCA9IDxUIGV4dGVuZHMgUmVjb3JkPHN0cmluZywgYW55Pj4oaXRlbXM6IFRbXSwgZmlsdGVyOiBBWERhdGFTb3VyY2VGaWx0ZXJPcHRpb24pOiBUW10gPT4ge1xuICAgIGlmICghZmlsdGVyPy5maWVsZCB8fCBmaWx0ZXIudmFsdWUgPT09IHVuZGVmaW5lZCB8fCBmaWx0ZXIudmFsdWUgPT09IG51bGwpIHtcbiAgICAgIHJldHVybiBpdGVtczsgLy8gTm8gZmlsdGVyIGFwcGxpZWRcbiAgICB9XG5cbiAgICByZXR1cm4gaXRlbXMuZmlsdGVyKChpdGVtKSA9PiB7XG4gICAgICBjb25zdCBpdGVtRmllbGQgPSBpdGVtW2ZpbHRlci5maWVsZF0gYXMgc3RyaW5nO1xuXG4gICAgICBpZiAodHlwZW9mIGl0ZW1GaWVsZCA9PT0gJ3N0cmluZycgJiYgdHlwZW9mIGZpbHRlci52YWx1ZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgcmV0dXJuIGl0ZW1GaWVsZC50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKGZpbHRlci52YWx1ZS50b0xvd2VyQ2FzZSgpKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZhbHNlOyAvLyBSZXR1cm4gZmFsc2UgaWYgaXRlbUZpZWxkIGlzbid0IGNvbXBhcmFibGVcbiAgICB9KTtcbiAgfTtcblxuICByZXR1cm4gbmV3IEFYRGF0YVNvdXJjZShjb25maWcpO1xufVxuIl19","export const AX_STYLE_COLOR_TYPES = [\n 'primary',\n 'secondary',\n 'success',\n 'warning',\n 'danger',\n 'default',\n];\nexport const AX_STYLE_LOOK_TYPES = ['solid', 'blank', 'outline', 'twotone', 'flat', 'fill', 'none'];\nexport const AX_LOCATIONS = [\n 'bottom-start',\n 'bottom-center',\n 'bottom-end',\n 'top-start',\n 'top-center',\n 'top-end',\n 'center-end',\n 'center-start',\n];\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGVzLmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY2RrL2NvbW1vbi9zcmMvbGliL2NsYXNzZXMvc3R5bGVzLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUF1QjtJQUN0RCxTQUFTO0lBQ1QsV0FBVztJQUNYLFNBQVM7SUFDVCxTQUFTO0lBQ1QsUUFBUTtJQUNSLFNBQVM7Q0FDVixDQUFDO0FBR0YsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQXNCLENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7QUFjdkgsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFpQjtJQUN4QyxjQUFjO0lBQ2QsZUFBZTtJQUNmLFlBQVk7SUFDWixXQUFXO0lBQ1gsWUFBWTtJQUNaLFNBQVM7SUFDVCxZQUFZO0lBQ1osY0FBYztDQUNmLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEEgdG9rZW4gdGhhdCBzcGVjaWZpZXMgdGhlICBjb2xvciBzdHlsZSBvZiBjb21wb25lbnQuXG4gKi9cbmV4cG9ydCB0eXBlIEFYU3R5bGVDb2xvclR5cGUgPSAncHJpbWFyeScgfCAnc2Vjb25kYXJ5JyB8ICdzdWNjZXNzJyB8ICd3YXJuaW5nJyB8ICdkYW5nZXInIHwgJ2RlZmF1bHQnO1xuZXhwb3J0IGNvbnN0IEFYX1NUWUxFX0NPTE9SX1RZUEVTOiBBWFN0eWxlQ29sb3JUeXBlW10gPSBbXG4gICdwcmltYXJ5JyxcbiAgJ3NlY29uZGFyeScsXG4gICdzdWNjZXNzJyxcbiAgJ3dhcm5pbmcnLFxuICAnZGFuZ2VyJyxcbiAgJ2RlZmF1bHQnLFxuXTtcblxuZXhwb3J0IHR5cGUgQVhTdHlsZUxvb2tUeXBlID0gJ3NvbGlkJyB8ICdibGFuaycgfCAnb3V0bGluZScgfCAndHdvdG9uZScgfCAnZmxhdCcgfCAnZmlsbCcgfCAnbGluaycgfCAnbm9uZSc7XG5leHBvcnQgY29uc3QgQVhfU1RZTEVfTE9PS19UWVBFUzogQVhTdHlsZUxvb2tUeXBlW10gPSBbJ3NvbGlkJywgJ2JsYW5rJywgJ291dGxpbmUnLCAndHdvdG9uZScsICdmbGF0JywgJ2ZpbGwnLCAnbm9uZSddO1xuXG5leHBvcnQgdHlwZSBBWFNpemVUeXBlID0gJ3hzJyB8ICdzbScgfCAnbWQnIHwgJ2xnJyB8ICd4bCc7XG5leHBvcnQgdHlwZSBBWFN0eWxlU2l6ZVR5cGUgPSBgYXgtJHtBWFNpemVUeXBlfWA7XG5cbmV4cG9ydCB0eXBlIEFYTG9jYXRpb24gPVxuICB8ICdib3R0b20tc3RhcnQnXG4gIHwgJ2JvdHRvbS1jZW50ZXInXG4gIHwgJ2JvdHRvbS1lbmQnXG4gIHwgJ3RvcC1zdGFydCdcbiAgfCAndG9wLWNlbnRlcidcbiAgfCAndG9wLWVuZCdcbiAgfCAnY2VudGVyLWVuZCdcbiAgfCAnY2VudGVyLXN0YXJ0JztcbmV4cG9ydCBjb25zdCBBWF9MT0NBVElPTlM6IEFYTG9jYXRpb25bXSA9IFtcbiAgJ2JvdHRvbS1zdGFydCcsXG4gICdib3R0b20tY2VudGVyJyxcbiAgJ2JvdHRvbS1lbmQnLFxuICAndG9wLXN0YXJ0JyxcbiAgJ3RvcC1jZW50ZXInLFxuICAndG9wLWVuZCcsXG4gICdjZW50ZXItZW5kJyxcbiAgJ2NlbnRlci1zdGFydCcsXG5dO1xuXG5leHBvcnQgdHlwZSBBWFN1cmZhY2VUeXBlID0gJ2xpZ2h0ZXN0JyB8ICdsaWdodGVyJyB8ICdsaWdodCcgfCAnc3VyZmFjZScgfCAnZGFyaycgfCAnZGFya2VyJyB8ICdkYXJrZXN0JztcbiJdfQ==","import { isPlatformBrowser } from '@angular/common';\nimport { Directive, DOCUMENT, ElementRef, inject, Input, PLATFORM_ID, Renderer2 } from '@angular/core';\nimport { AXFocusableComponent } from '../classes/components.class';\nimport * as i0 from \"@angular/core\";\nexport class AXAutoFocusDirective {\n constructor() {\n this.renderer = inject(Renderer2);\n this.el = inject(ElementRef);\n this._host = inject(AXFocusableComponent, { host: true, self: true, optional: true });\n this.autoFocus = true;\n this.time = 50;\n this.document = inject(DOCUMENT);\n this.platformID = inject(PLATFORM_ID);\n }\n ngAfterViewInit() {\n this.doFocus();\n }\n doFocus() {\n if (this.autoFocus) {\n if (this._host) {\n setTimeout(() => {\n this._host.focus();\n }, this.time);\n return;\n }\n const list = ['button', 'input', '[href]', 'select', 'textarea', '[tabindex]'].map((c) => c + ':not([tabindex=\"-1\"])');\n const focusable = this.el.nativeElement.querySelector(list.join(', ')) ?? this.el.nativeElement;\n if (isPlatformBrowser(this.platformID)) {\n const attr = this.document.createAttribute('autofocus');\n focusable.setAttributeNode(attr);\n }\n const hasTabindex = focusable.hasAttribute('tabindex');\n if (!hasTabindex) {\n focusable.setAttribute('tabindex', '0');\n }\n setTimeout(() => {\n focusable.focus();\n }, this.time);\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXAutoFocusDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.1.2\", type: AXAutoFocusDirective, isStandalone: true, selector: \"[axAutoFocus]\", inputs: { autoFocus: [\"axAutoFocus\", \"autoFocus\"], time: [\"axAutoFocusTime\", \"time\"] }, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXAutoFocusDirective, decorators: [{\n type: Directive,\n args: [{ selector: '[axAutoFocus]' }]\n }], propDecorators: { autoFocus: [{\n type: Input,\n args: ['axAutoFocus']\n }], time: [{\n type: Input,\n args: ['axAutoFocusTime']\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0by1mb2N1cy5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jZGsvY29tbW9uL3NyYy9saWIvZGlyZWN0aXZlcy9hdXRvLWZvY3VzLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBQWlCLFNBQVMsRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0SCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7QUFHbkUsTUFBTSxPQUFPLG9CQUFvQjtJQURqQztRQUVVLGFBQVEsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDN0IsT0FBRSxHQUFHLE1BQU0sQ0FBMEIsVUFBVSxDQUFDLENBQUM7UUFDekQsVUFBSyxHQUFHLE1BQU0sQ0FBQyxvQkFBb0IsRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUcxRSxjQUFTLEdBQWEsSUFBSSxDQUFDO1FBR2xDLFNBQUksR0FBRyxFQUFFLENBQUM7UUFFRixhQUFRLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzVCLGVBQVUsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7S0FpQzFDO0lBL0JDLGVBQWU7UUFDYixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDakIsQ0FBQztJQUVTLE9BQU87UUFDZixJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNuQixJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDZixVQUFVLENBQUMsR0FBRyxFQUFFO29CQUNkLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ3JCLENBQUMsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ2QsT0FBTztZQUNULENBQUM7WUFDRCxNQUFNLElBQUksR0FBRyxDQUFDLFFBQVEsRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsWUFBWSxDQUFDLENBQUMsR0FBRyxDQUNoRixDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLHVCQUF1QixDQUNuQyxDQUFDO1lBRUYsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFjLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQztZQUU3RyxJQUFJLGlCQUFpQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO2dCQUN2QyxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxXQUFXLENBQUMsQ0FBQztnQkFDeEQsU0FBUyxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ25DLENBQUM7WUFDRCxNQUFNLFdBQVcsR0FBRyxTQUFTLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQ3ZELElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztnQkFDakIsU0FBUyxDQUFDLFlBQVksQ0FBQyxVQUFVLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFDMUMsQ0FBQztZQUNELFVBQVUsQ0FBQyxHQUFHLEVBQUU7Z0JBQ2QsU0FBUyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ3BCLENBQUMsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDaEIsQ0FBQztJQUNILENBQUM7OEdBNUNVLG9CQUFvQjtrR0FBcEIsb0JBQW9COzsyRkFBcEIsb0JBQW9CO2tCQURoQyxTQUFTO21CQUFDLEVBQUUsUUFBUSxFQUFFLGVBQWUsRUFBRTs4QkFPL0IsU0FBUztzQkFEZixLQUFLO3VCQUFDLGFBQWE7Z0JBSXBCLElBQUk7c0JBREgsS0FBSzt1QkFBQyxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc1BsYXRmb3JtQnJvd3NlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBBZnRlclZpZXdJbml0LCBEaXJlY3RpdmUsIERPQ1VNRU5ULCBFbGVtZW50UmVmLCBpbmplY3QsIElucHV0LCBQTEFURk9STV9JRCwgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWEZvY3VzYWJsZUNvbXBvbmVudCB9IGZyb20gJy4uL2NsYXNzZXMvY29tcG9uZW50cy5jbGFzcyc7XG5cbkBEaXJlY3RpdmUoeyBzZWxlY3RvcjogJ1theEF1dG9Gb2N1c10nIH0pXG5leHBvcnQgY2xhc3MgQVhBdXRvRm9jdXNEaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgcHJpdmF0ZSByZW5kZXJlciA9IGluamVjdChSZW5kZXJlcjIpO1xuICBwcml2YXRlIGVsID0gaW5qZWN0PEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+PihFbGVtZW50UmVmKTtcbiAgX2hvc3QgPSBpbmplY3QoQVhGb2N1c2FibGVDb21wb25lbnQsIHsgaG9zdDogdHJ1ZSwgc2VsZjogdHJ1ZSwgb3B0aW9uYWw6IHRydWUgfSk7XG5cbiAgQElucHV0KCdheEF1dG9Gb2N1cycpXG4gIHB1YmxpYyBhdXRvRm9jdXM/OiBib29sZWFuID0gdHJ1ZTtcblxuICBASW5wdXQoJ2F4QXV0b0ZvY3VzVGltZScpXG4gIHRpbWUgPSA1MDtcblxuICBwcml2YXRlIGRvY3VtZW50ID0gaW5qZWN0KERPQ1VNRU5UKTtcbiAgcHJpdmF0ZSBwbGF0Zm9ybUlEID0gaW5qZWN0KFBMQVRGT1JNX0lEKTtcblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5kb0ZvY3VzKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZG9Gb2N1cygpIHtcbiAgICBpZiAodGhpcy5hdXRvRm9jdXMpIHtcbiAgICAgIGlmICh0aGlzLl9ob3N0KSB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIHRoaXMuX2hvc3QuZm9jdXMoKTtcbiAgICAgICAgfSwgdGhpcy50aW1lKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgY29uc3QgbGlzdCA9IFsnYnV0dG9uJywgJ2lucHV0JywgJ1tocmVmXScsICdzZWxlY3QnLCAndGV4dGFyZWEnLCAnW3RhYmluZGV4XSddLm1hcChcbiAgICAgICAgKGMpID0+IGMgKyAnOm5vdChbdGFiaW5kZXg9XCItMVwiXSknLFxuICAgICAgKTtcblxuICAgICAgY29uc3QgZm9jdXNhYmxlID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3I8SFRNTEVsZW1lbnQ+KGxpc3Quam9pbignLCAnKSkgPz8gdGhpcy5lbC5uYXRpdmVFbGVtZW50O1xuXG4gICAgICBpZiAoaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlEKSkge1xuICAgICAgICBjb25zdCBhdHRyID0gdGhpcy5kb2N1bWVudC5jcmVhdGVBdHRyaWJ1dGUoJ2F1dG9mb2N1cycpO1xuICAgICAgICBmb2N1c2FibGUuc2V0QXR0cmlidXRlTm9kZShhdHRyKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IGhhc1RhYmluZGV4ID0gZm9jdXNhYmxlLmhhc0F0dHJpYnV0ZSgndGFiaW5kZXgnKTtcbiAgICAgIGlmICghaGFzVGFiaW5kZXgpIHtcbiAgICAgICAgZm9jdXNhYmxlLnNldEF0dHJpYnV0ZSgndGFiaW5kZXgnLCAnMCcpO1xuICAgICAgfVxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIGZvY3VzYWJsZS5mb2N1cygpO1xuICAgICAgfSwgdGhpcy50aW1lKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==","import { DOCUMENT, inject, Injectable } from '@angular/core';\nimport { EventManager } from '@angular/platform-browser';\nimport { Observable } from 'rxjs/internal/Observable';\nimport * as i0 from \"@angular/core\";\nexport class AXHotkeysService {\n constructor() {\n this.eventManager = inject(EventManager);\n this.document = inject(DOCUMENT);\n this.defaults = {\n element: this.document,\n };\n }\n /**\n * Add shortcut\n *\n *\n * @param options\n * @returns Observable\n *\n */\n addShortcut(options) {\n const merged = { ...this.defaults, ...options };\n const event = `keydown.${merged.keys}`;\n return new Observable((observer) => {\n const handler = (e) => {\n e.preventDefault();\n observer.next(e);\n };\n if (merged.element) {\n // Todo: check addEventListener is not function\n const dispose = this.eventManager.addEventListener(merged.element, event, handler);\n return () => {\n dispose();\n };\n }\n else {\n return null;\n }\n });\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXHotkeysService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXHotkeysService }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXHotkeysService, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG90a2V5LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jZGsvY29tbW9uL3NyYy9saWIvc2VydmljZXMvaG90a2V5LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7O0FBY3RELE1BQU0sT0FBTyxnQkFBZ0I7SUFEN0I7UUFFVSxpQkFBWSxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUVwQyxhQUFRLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRXBDLGFBQVEsR0FBcUI7WUFDM0IsT0FBTyxFQUFFLElBQUksQ0FBQyxRQUFRO1NBQ3ZCLENBQUM7S0E4Qkg7SUE1QkM7Ozs7Ozs7T0FPRztJQUNILFdBQVcsQ0FBQyxPQUF5QjtRQUNuQyxNQUFNLE1BQU0sR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxHQUFHLE9BQU8sRUFBRSxDQUFDO1FBQ2hELE1BQU0sS0FBSyxHQUFHLFdBQVcsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3ZDLE9BQU8sSUFBSSxVQUFVLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUNqQyxNQUFNLE9BQU8sR0FBRyxDQUFDLENBQVUsRUFBRSxFQUFFO2dCQUM3QixDQUFDLENBQUMsY0FBYyxFQUFFLENBQUM7Z0JBQ25CLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDbkIsQ0FBQyxDQUFDO1lBQ0YsSUFBSSxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQ25CLCtDQUErQztnQkFFL0MsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQztnQkFDbkYsT0FBTyxHQUFHLEVBQUU7b0JBQ1YsT0FBTyxFQUFFLENBQUM7Z0JBQ1osQ0FBQyxDQUFDO1lBQ0osQ0FBQztpQkFBTSxDQUFDO2dCQUNOLE9BQU8sSUFBSSxDQUFDO1lBQ2QsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs4R0FwQ1UsZ0JBQWdCO2tIQUFoQixnQkFBZ0I7OzJGQUFoQixnQkFBZ0I7a0JBRDVCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBET0NVTUVOVCwgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBFdmVudE1hbmFnZXIgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzL2ludGVybmFsL09ic2VydmFibGUnO1xuXG50eXBlIE9wdGlvbnMgPSB7XG4gIC8qKlxuICAgKiBlbGVtZW50IC0gQW4gaHRtbCBlbGVtZW50XG4gICAqL1xuICBlbGVtZW50OiBhbnk7XG4gIC8qKlxuICAgKiBrZXlzIC0gc3RyaW5nIG9mIGtleXMgbGlrZSAoQ29udHJvbC5mKVxuICAgKi9cbiAga2V5czogc3RyaW5nO1xufTtcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFYSG90a2V5c1NlcnZpY2Uge1xuICBwcml2YXRlIGV2ZW50TWFuYWdlciA9IGluamVjdChFdmVudE1hbmFnZXIpO1xuXG4gIHByaXZhdGUgZG9jdW1lbnQgPSBpbmplY3QoRE9DVU1FTlQpO1xuXG4gIGRlZmF1bHRzOiBQYXJ0aWFsPE9wdGlvbnM+ID0ge1xuICAgIGVsZW1lbnQ6IHRoaXMuZG9jdW1lbnQsXG4gIH07XG5cbiAgLyoqXG4gICAqIEFkZCBzaG9ydGN1dFxuICAgKlxuICAgKlxuICAgKiBAcGFyYW0gb3B0aW9uc1xuICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlXG4gICAqXG4gICAqL1xuICBhZGRTaG9ydGN1dChvcHRpb25zOiBQYXJ0aWFsPE9wdGlvbnM+KSB7XG4gICAgY29uc3QgbWVyZ2VkID0geyAuLi50aGlzLmRlZmF1bHRzLCAuLi5vcHRpb25zIH07XG4gICAgY29uc3QgZXZlbnQgPSBga2V5ZG93bi4ke21lcmdlZC5rZXlzfWA7XG4gICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlKChvYnNlcnZlcikgPT4ge1xuICAgICAgY29uc3QgaGFuZGxlciA9IChlOiBVSUV2ZW50KSA9PiB7XG4gICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgb2JzZXJ2ZXIubmV4dChlKTtcbiAgICAgIH07XG4gICAgICBpZiAobWVyZ2VkLmVsZW1lbnQpIHtcbiAgICAgICAgLy8gVG9kbzogY2hlY2sgYWRkRXZlbnRMaXN0ZW5lciBpcyBub3QgZnVuY3Rpb25cblxuICAgICAgICBjb25zdCBkaXNwb3NlID0gdGhpcy5ldmVudE1hbmFnZXIuYWRkRXZlbnRMaXN0ZW5lcihtZXJnZWQuZWxlbWVudCwgZXZlbnQsIGhhbmRsZXIpO1xuICAgICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICAgIGRpc3Bvc2UoKTtcbiAgICAgICAgfTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG4iXX0=","import { Directive, ElementRef, Input, inject } from '@angular/core';\nimport { AXComponent } from '../classes/components.class';\nimport { AXHotkeysService } from '../services/hotkey.service';\nimport * as i0 from \"@angular/core\";\nexport class AXHotkeyDirective {\n constructor() {\n this.el = inject(ElementRef);\n this._host = inject(AXComponent, { host: true, self: true, optional: true });\n this.hs = inject(AXHotkeysService);\n this.axHotkey = '';\n this._subs = [];\n }\n ngAfterViewInit() {\n if (!this.axHotkey || !this._host)\n return;\n if (typeof this.axHotkey == 'string') {\n this._addDefaultAction(this.axHotkey);\n }\n else if (typeof this.axHotkey == 'object' && !Array.isArray(this.axHotkey)) {\n this._addHotKeyAction([this.axHotkey]);\n }\n else if (Array.isArray(this.axHotkey)) {\n this._addHotKeyAction(this.axHotkey);\n }\n }\n _addDefaultAction(hotkey) {\n this._subs.push(this.hs.addShortcut({ keys: hotkey }).subscribe(() => {\n ['click', 'toggle', 'open', 'focus'].forEach((a) => {\n if (this._host[a]) {\n this._host[a]();\n return;\n }\n });\n }));\n }\n _addHotKeyAction(hotkeys) {\n hotkeys.forEach((k) => {\n const hotkey = Object.entries(k)[0][0];\n const action = Object.entries(k)[0][1];\n if (!action)\n this._addDefaultAction(hotkey);\n else {\n this._subs.push(this.hs.addShortcut({ keys: hotkey }).subscribe(() => {\n if (typeof action == 'string' && this._host[action]) {\n this._host[action]();\n return;\n }\n if (typeof action == 'function') {\n action();\n return;\n }\n }));\n }\n });\n }\n ngOnDestroy() {\n this._subs.forEach((s) => {\n s.unsubscribe();\n });\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXHotkeyDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.1.2\", type: AXHotkeyDirective, isStandalone: true, selector: \"[axHotkey]\", inputs: { axHotkey: \"axHotkey\" }, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXHotkeyDirective, decorators: [{\n type: Directive,\n args: [{ selector: '[axHotkey]' }]\n }], propDecorators: { axHotkey: [{\n type: Input\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG90a2V5LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2Nkay9jb21tb24vc3JjL2xpYi9kaXJlY3RpdmVzL2hvdGtleS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFcEYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzFELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDOztBQUs5RCxNQUFNLE9BQU8saUJBQWlCO0lBRDlCO1FBRVUsT0FBRSxHQUFHLE1BQU0sQ0FBMEIsVUFBVSxDQUFDLENBQUM7UUFDekQsVUFBSyxHQUFHLE1BQU0sQ0FBQyxXQUFXLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFDaEUsT0FBRSxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBRy9CLGFBQVEsR0FBK0MsRUFBRSxDQUFDO1FBRXpELFVBQUssR0FBbUIsRUFBRSxDQUFDO0tBc0RwQztJQXBEQyxlQUFlO1FBQ2IsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSztZQUFFLE9BQU87UUFFMUMsSUFBSSxPQUFPLElBQUksQ0FBQyxRQUFRLElBQUksUUFBUSxFQUFFLENBQUM7WUFDckMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN4QyxDQUFDO2FBQU0sSUFBSSxPQUFPLElBQUksQ0FBQyxRQUFRLElBQUksUUFBUSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztZQUM3RSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBMEIsQ0FBQyxDQUFDLENBQUM7UUFDM0QsQ0FBQzthQUFNLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztZQUN4QyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3ZDLENBQUM7SUFDSCxDQUFDO0lBRU8saUJBQWlCLENBQUMsTUFBYztRQUN0QyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FDYixJQUFJLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDbkQsQ0FBQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQkFDakQsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7b0JBQ2xCLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztvQkFDaEIsT0FBTztnQkFDVCxDQUFDO1lBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztJQUVPLGdCQUFnQixDQUFDLE9BQXlCO1FBQ2hELE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNwQixNQUFNLE1BQU0sR0FBYSxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBWSxDQUFDO1lBQzVELE1BQU0sTUFBTSxHQUFZLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDaEQsSUFBSSxDQUFDLE1BQU07Z0JBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxDQUFDO2lCQUN2QyxDQUFDO2dCQUNKLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUNiLElBQUksQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtvQkFDbkQsSUFBSSxPQUFPLE1BQU0sSUFBSSxRQUFRLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO3dCQUNwRCxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7d0JBQ3JCLE9BQU87b0JBQ1QsQ0FBQztvQkFDRCxJQUFJLE9BQU8sTUFBTSxJQUFJLFVBQVUsRUFBRSxDQUFDO3dCQUNoQyxNQUFNLEVBQUUsQ0FBQzt3QkFDVCxPQUFPO29CQUNULENBQUM7Z0JBQ0gsQ0FBQyxDQUFDLENBQ0gsQ0FBQztZQUNKLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUN2QixDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDbEIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzhHQTdEVSxpQkFBaUI7a0dBQWpCLGlCQUFpQjs7MkZBQWpCLGlCQUFpQjtrQkFEN0IsU0FBUzttQkFBQyxFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQUU7OEJBTzVCLFFBQVE7c0JBRGQsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5wdXQsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBWENvbXBvbmVudCB9IGZyb20gJy4uL2NsYXNzZXMvY29tcG9uZW50cy5jbGFzcyc7XG5pbXBvcnQgeyBBWEhvdGtleXNTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvaG90a2V5LnNlcnZpY2UnO1xuXG5leHBvcnQgdHlwZSBBWEhvdEtleUFjdGlvbiA9IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIHwgRnVuY3Rpb247IHBhcm1hcz86IGFueSB9O1xuXG5ARGlyZWN0aXZlKHsgc2VsZWN0b3I6ICdbYXhIb3RrZXldJyB9KVxuZXhwb3J0IGNsYXNzIEFYSG90a2V5RGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gIHByaXZhdGUgZWwgPSBpbmplY3Q8RWxlbWVudFJlZjxIVE1MRWxlbWVudD4+KEVsZW1lbnRSZWYpO1xuICBfaG9zdCA9IGluamVjdChBWENvbXBvbmVudCwgeyBob3N0OiB0cnVlLCBzZWxmOiB0cnVlLCBvcHRpb25hbDogdHJ1ZSB9KTtcbiAgcHJpdmF0ZSBocyA9IGluamVjdChBWEhvdGtleXNTZXJ2aWNlKTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgYXhIb3RrZXk6IHN0cmluZyB8IEFYSG90S2V5QWN0aW9uIHwgQVhIb3RLZXlBY3Rpb25bXSA9ICcnO1xuXG4gIHByaXZhdGUgX3N1YnM6IFN1YnNjcmlwdGlvbltdID0gW107XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5heEhvdGtleSB8fCAhdGhpcy5faG9zdCkgcmV0dXJuO1xuXG4gICAgaWYgKHR5cGVvZiB0aGlzLmF4SG90a2V5ID09ICdzdHJpbmcnKSB7XG4gICAgICB0aGlzLl9hZGREZWZhdWx0QWN0aW9uKHRoaXMuYXhIb3RrZXkpO1xuICAgIH0gZWxzZSBpZiAodHlwZW9mIHRoaXMuYXhIb3RrZXkgPT0gJ29iamVjdCcgJiYgIUFycmF5LmlzQXJyYXkodGhpcy5heEhvdGtleSkpIHtcbiAgICAgIHRoaXMuX2FkZEhvdEtleUFjdGlvbihbdGhpcy5heEhvdGtleSBhcyBBWEhvdEtleUFjdGlvbl0pO1xuICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheSh0aGlzLmF4SG90a2V5KSkge1xuICAgICAgdGhpcy5fYWRkSG90S2V5QWN0aW9uKHRoaXMuYXhIb3RrZXkpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2FkZERlZmF1bHRBY3Rpb24oaG90a2V5OiBzdHJpbmcpIHtcbiAgICB0aGlzLl9zdWJzLnB1c2goXG4gICAgICB0aGlzLmhzLmFkZFNob3J0Y3V0KHsga2V5czogaG90a2V5IH0pLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIFsnY2xpY2snLCAndG9nZ2xlJywgJ29wZW4nLCAnZm9jdXMnXS5mb3JFYWNoKChhKSA9PiB7XG4gICAgICAgICAgaWYgKHRoaXMuX2hvc3RbYV0pIHtcbiAgICAgICAgICAgIHRoaXMuX2hvc3RbYV0oKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX2FkZEhvdEtleUFjdGlvbihob3RrZXlzOiBBWEhvdEtleUFjdGlvbltdKSB7XG4gICAgaG90a2V5cy5mb3JFYWNoKChrKSA9PiB7XG4gICAgICBjb25zdCBob3RrZXkgPSAoPHVua25vd24+T2JqZWN0LmVudHJpZXMoaylbMF1bMF0pIGFzIHN0cmluZztcbiAgICAgIGNvbnN0IGFjdGlvbiA9IDx1bmtub3duPk9iamVjdC5lbnRyaWVzKGspWzBdWzFdO1xuICAgICAgaWYgKCFhY3Rpb24pIHRoaXMuX2FkZERlZmF1bHRBY3Rpb24oaG90a2V5KTtcbiAgICAgIGVsc2Uge1xuICAgICAgICB0aGlzLl9zdWJzLnB1c2goXG4gICAgICAgICAgdGhpcy5ocy5hZGRTaG9ydGN1dCh7IGtleXM6IGhvdGtleSB9KS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgaWYgKHR5cGVvZiBhY3Rpb24gPT0gJ3N0cmluZycgJiYgdGhpcy5faG9zdFthY3Rpb25dKSB7XG4gICAgICAgICAgICAgIHRoaXMuX2hvc3RbYWN0aW9uXSgpO1xuICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAodHlwZW9mIGFjdGlvbiA9PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAgIGFjdGlvbigpO1xuICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSksXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLl9zdWJzLmZvckVhY2goKHMpID0+IHtcbiAgICAgIHMudW5zdWJzY3JpYmUoKTtcbiAgICB9KTtcbiAgfVxufVxuIl19","import { Directive, ElementRef, Input, inject } from '@angular/core';\nimport { fromEvent } from 'rxjs';\nimport { exhaustMap, filter, map, pairwise, startWith } from 'rxjs/operators';\nimport * as i0 from \"@angular/core\";\nconst AX_DEFAULT_SCROLL_POSITION = {\n scrollHeight: 0,\n scrollTop: 0,\n clientHeight: 0,\n};\nexport class AXInfiniteScrollerDirective {\n constructor() {\n this.elm = inject(ElementRef);\n this.scrollPercent = 70;\n this.isUserScrollingDown = (positions) => {\n return positions[0].sT < positions[1].sT;\n };\n this.isScrollExpectedPercent = (position) => {\n return (position.sT + position.cH) / position.sH > this.scrollPercent / 100;\n };\n }\n ngAfterViewInit() {\n this.registerScrollEvent();\n this.streamScrollEvents();\n this.requestCallbackOnScroll();\n }\n registerScrollEvent() {\n this.scrollEvent$ = fromEvent(this.elm.nativeElement, 'scroll');\n }\n streamScrollEvents() {\n this.userScrolledDown$ = this.scrollEvent$.pipe(map((e) => ({\n scrollHeight: e.target.scrollHeight,\n scrollTop: e.target.scrollTop,\n clientHeight: e.target.clientHeight,\n })), pairwise(), filter((positions) => this.isUserScrollingDown(positions) && this.isScrollExpectedPercent(positions[1])));\n }\n requestCallbackOnScroll() {\n this.requestOnScroll$ = this.userScrolledDown$;\n if (this.immediateCallback) {\n this.requestOnScroll$ = this.requestOnScroll$.pipe(startWith([AX_DEFAULT_SCROLL_POSITION, AX_DEFAULT_SCROLL_POSITION]));\n }\n this.requestOnScroll$.pipe(exhaustMap(() => {\n return this.scrollCallback();\n }));\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXInfiniteScrollerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.1.2\", type: AXInfiniteScrollerDirective, isStandalone: true, selector: \"[axInfiniteScroller]\", inputs: { scrollCallback: \"scrollCallback\", immediateCallback: \"immediateCallback\", scrollPercent: \"scrollPercent\" }, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXInfiniteScrollerDirective, decorators: [{\n type: Directive,\n args: [{ selector: '[axInfiniteScroller]' }]\n }], propDecorators: { scrollCallback: [{\n type: Input\n }], immediateCallback: [{\n type: Input\n }], scrollPercent: [{\n type: Input\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5maW5pdGUtc2Nyb2xsLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2Nkay9jb21tb24vc3JjL2xpYi9kaXJlY3RpdmVzL2luZmluaXRlLXNjcm9sbC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEYsT0FBTyxFQUFjLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM3QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQVE5RSxNQUFNLDBCQUEwQixHQUFxQjtJQUNuRCxZQUFZLEVBQUUsQ0FBQztJQUNmLFNBQVMsRUFBRSxDQUFDO0lBQ1osWUFBWSxFQUFFLENBQUM7Q0FDaEIsQ0FBQztBQUdGLE1BQU0sT0FBTywyQkFBMkI7SUFEeEM7UUFFVSxRQUFHLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBZWpDLGtCQUFhLEdBQUcsRUFBRSxDQUFDO1FBNENYLHdCQUFtQixHQUFHLENBQUMsU0FBUyxFQUFFLEVBQUU7WUFDMUMsT0FBTyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDM0MsQ0FBQyxDQUFDO1FBRU0sNEJBQXVCLEdBQUcsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUM3QyxPQUFPLENBQUMsUUFBUSxDQUFDLEVBQUUsR0FBRyxRQUFRLENBQUMsRUFBRSxDQUFDLEdBQUcsUUFBUSxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsYUFBYSxHQUFHLEdBQUcsQ0FBQztRQUM5RSxDQUFDLENBQUM7S0FDSDtJQWpEQyxlQUFlO1FBQ2IsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7UUFFM0IsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7UUFFMUIsSUFBSSxDQUFDLHVCQUF1QixFQUFFLENBQUM7SUFDakMsQ0FBQztJQUVPLG1CQUFtQjtRQUN6QixJQUFJLENBQUMsWUFBWSxHQUFHLFNBQVMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUNsRSxDQUFDO0lBRU8sa0JBQWtCO1FBQ3hCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FDN0MsR0FBRyxDQUNELENBQUMsQ0FBTSxFQUFvQixFQUFFLENBQUMsQ0FBQztZQUM3QixZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxZQUFZO1lBQ25DLFNBQVMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLFNBQVM7WUFDN0IsWUFBWSxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsWUFBWTtTQUNwQyxDQUFDLENBQ0gsRUFDRCxRQUFRLEVBQUUsRUFDVixNQUFNLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLENBQUMsSUFBSSxJQUFJLENBQUMsdUJBQXVCLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FDekcsQ0FBQztJQUNKLENBQUM7SUFFTyx1QkFBdUI7UUFDN0IsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztRQUUvQyxJQUFJLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQzNCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUNoRCxTQUFTLENBQUMsQ0FBQywwQkFBMEIsRUFBRSwwQkFBMEIsQ0FBQyxDQUFDLENBQ3BFLENBQUM7UUFDSixDQUFDO1FBRUQsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FDeEIsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLE9BQU8sSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQy9CLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDOzhHQTFEVSwyQkFBMkI7a0dBQTNCLDJCQUEyQjs7MkZBQTNCLDJCQUEyQjtrQkFEdkMsU0FBUzttQkFBQyxFQUFFLFFBQVEsRUFBRSxzQkFBc0IsRUFBRTs4QkFXN0MsY0FBYztzQkFEYixLQUFLO2dCQUlOLGlCQUFpQjtzQkFEaEIsS0FBSztnQkFJTixhQUFhO3NCQURaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIElucHV0LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIGZyb21FdmVudCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZXhoYXVzdE1hcCwgZmlsdGVyLCBtYXAsIHBhaXJ3aXNlLCBzdGFydFdpdGggfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQVhTY3JvbGxQb3NpdGlvbiB7XG4gIHNjcm9sbEhlaWdodDogbnVtYmVyO1xuICBzY3JvbGxUb3A6IG51bWJlcjtcbiAgY2xpZW50SGVpZ2h0OiBudW1iZXI7XG59XG5cbmNvbnN0IEFYX0RFRkFVTFRfU0NST0xMX1BPU0lUSU9OOiBBWFNjcm9sbFBvc2l0aW9uID0ge1xuICBzY3JvbGxIZWlnaHQ6IDAsXG4gIHNjcm9sbFRvcDogMCxcbiAgY2xpZW50SGVpZ2h0OiAwLFxufTtcblxuQERpcmVjdGl2ZSh7IHNlbGVjdG9yOiAnW2F4SW5maW5pdGVTY3JvbGxlcl0nIH0pXG5leHBvcnQgY2xhc3MgQVhJbmZpbml0ZVNjcm9sbGVyRGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gIHByaXZhdGUgZWxtID0gaW5qZWN0KEVsZW1lbnRSZWYpO1xuXG4gIHByaXZhdGUgc2Nyb2xsRXZlbnQkOiBPYnNlcnZhYmxlPGFueT47XG5cbiAgcHJpdmF0ZSB1c2VyU2Nyb2xsZWREb3duJDogT2JzZXJ2YWJsZTxhbnk+O1xuXG4gIHByaXZhdGUgcmVxdWVzdE9uU2Nyb2xsJDogT2JzZXJ2YWJsZTxhbnk+O1xuXG4gIEBJbnB1dCgpXG4gIHNjcm9sbENhbGxiYWNrOiBGdW5jdGlvbjtcblxuICBASW5wdXQoKVxuICBpbW1lZGlhdGVDYWxsYmFjaztcblxuICBASW5wdXQoKVxuICBzY3JvbGxQZXJjZW50ID0gNzA7XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHRoaXMucmVnaXN0ZXJTY3JvbGxFdmVudCgpO1xuXG4gICAgdGhpcy5zdHJlYW1TY3JvbGxFdmVudHMoKTtcblxuICAgIHRoaXMucmVxdWVzdENhbGxiYWNrT25TY3JvbGwoKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVnaXN0ZXJTY3JvbGxFdmVudCgpIHtcbiAgICB0aGlzLnNjcm9sbEV2ZW50JCA9IGZyb21FdmVudCh0aGlzLmVsbS5uYXRpdmVFbGVtZW50LCAnc2Nyb2xsJyk7XG4gIH1cblxuICBwcml2YXRlIHN0cmVhbVNjcm9sbEV2ZW50cygpIHtcbiAgICB0aGlzLnVzZXJTY3JvbGxlZERvd24kID0gdGhpcy5zY3JvbGxFdmVudCQucGlwZShcbiAgICAgIG1hcChcbiAgICAgICAgKGU6IGFueSk6IEFYU2Nyb2xsUG9zaXRpb24gPT4gKHtcbiAgICAgICAgICBzY3JvbGxIZWlnaHQ6IGUudGFyZ2V0LnNjcm9sbEhlaWdodCxcbiAgICAgICAgICBzY3JvbGxUb3A6IGUudGFyZ2V0LnNjcm9sbFRvcCxcbiAgICAgICAgICBjbGllbnRIZWlnaHQ6IGUudGFyZ2V0LmNsaWVudEhlaWdodCxcbiAgICAgICAgfSksXG4gICAgICApLFxuICAgICAgcGFpcndpc2UoKSxcbiAgICAgIGZpbHRlcigocG9zaXRpb25zKSA9PiB0aGlzLmlzVXNlclNjcm9sbGluZ0Rvd24ocG9zaXRpb25zKSAmJiB0aGlzLmlzU2Nyb2xsRXhwZWN0ZWRQZXJjZW50KHBvc2l0aW9uc1sxXSkpLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIHJlcXVlc3RDYWxsYmFja09uU2Nyb2xsKCkge1xuICAgIHRoaXMucmVxdWVzdE9uU2Nyb2xsJCA9IHRoaXMudXNlclNjcm9sbGVkRG93biQ7XG5cbiAgICBpZiAodGhpcy5pbW1lZGlhdGVDYWxsYmFjaykge1xuICAgICAgdGhpcy5yZXF1ZXN0T25TY3JvbGwkID0gdGhpcy5yZXF1ZXN0T25TY3JvbGwkLnBpcGUoXG4gICAgICAgIHN0YXJ0V2l0aChbQVhfREVGQVVMVF9TQ1JPTExfUE9TSVRJT04sIEFYX0RFRkFVTFRfU0NST0xMX1BPU0lUSU9OXSksXG4gICAgICApO1xuICAgIH1cblxuICAgIHRoaXMucmVxdWVzdE9uU2Nyb2xsJC5waXBlKFxuICAgICAgZXhoYXVzdE1hcCgoKSA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLnNjcm9sbENhbGxiYWNrKCk7XG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBpc1VzZXJTY3JvbGxpbmdEb3duID0gKHBvc2l0aW9ucykgPT4ge1xuICAgIHJldHVybiBwb3NpdGlvbnNbMF0uc1QgPCBwb3NpdGlvbnNbMV0uc1Q7XG4gIH07XG5cbiAgcHJpdmF0ZSBpc1Njcm9sbEV4cGVjdGVkUGVyY2VudCA9IChwb3NpdGlvbikgPT4ge1xuICAgIHJldHVybiAocG9zaXRpb24uc1QgKyBwb3NpdGlvbi5jSCkgLyBwb3NpdGlvbi5zSCA+IHRoaXMuc2Nyb2xsUGVyY2VudCAvIDEwMDtcbiAgfTtcbn1cbiJdfQ==","import { Directive, ElementRef, inject } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class AXResponsiveDirective {\n constructor() {\n this._elementRef = inject(ElementRef);\n this._observer = new ResizeObserver((entries) => {\n for (const entry of entries) {\n if (entry.target) {\n const e = entry.target;\n const elements = [e, ...Array.from(e.querySelectorAll(`[class*='sm:']`))];\n elements\n .map((c) => ({\n element: c,\n classList: Array.from(c.classList)\n .filter((c) => c.includes('sm'))\n .map((c) => c.slice(3)),\n }))\n .forEach((c) => {\n e.clientWidth < 320 ? c.element.classList.add(...c.classList) : c.element.classList.remove(...c.classList);\n });\n }\n }\n });\n const _elementRef = this._elementRef;\n this._observer.observe(_elementRef.nativeElement);\n }\n ngOnDestroy() {\n this._observer?.disconnect();\n this._observer?.unobserve(this._elementRef.nativeElement);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXResponsiveDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.1.2\", type: AXResponsiveDirective, isStandalone: true, selector: \"[axResponsive]\", ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXResponsiveDirective, decorators: [{\n type: Directive,\n args: [{ selector: '[axResponsive]' }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzcG9uc2l2ZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jZGsvY29tbW9uL3NyYy9saWIvZGlyZWN0aXZlcy9yZXNwb25zaXZlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBYSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBR3pFLE1BQU0sT0FBTyxxQkFBcUI7SUFzQmhDO1FBckJRLGdCQUFXLEdBQUcsTUFBTSxDQUE2QixVQUFVLENBQUMsQ0FBQztRQUU3RCxjQUFTLEdBQW1CLElBQUksY0FBYyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDakUsS0FBSyxNQUFNLEtBQUssSUFBSSxPQUFPLEVBQUUsQ0FBQztnQkFDNUIsSUFBSSxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7b0JBQ2pCLE1BQU0sQ0FBQyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUM7b0JBQ3ZCLE1BQU0sUUFBUSxHQUFHLENBQUMsQ0FBQyxFQUFFLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQzFFLFFBQVE7eUJBQ0wsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO3dCQUNYLE9BQU8sRUFBRSxDQUFDO3dCQUNWLFNBQVMsRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7NkJBQy9CLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQzs2QkFDL0IsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO3FCQUMxQixDQUFDLENBQUM7eUJBQ0YsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7d0JBQ2IsQ0FBQyxDQUFDLFdBQVcsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDO29CQUM3RyxDQUFDLENBQUMsQ0FBQztnQkFDUCxDQUFDO1lBQ0gsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO1FBR0QsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztRQUVyQyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxDQUFDO1FBQzdCLElBQUksQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDNUQsQ0FBQzs4R0EvQlUscUJBQXFCO2tHQUFyQixxQkFBcUI7OzJGQUFyQixxQkFBcUI7a0JBRGpDLFNBQVM7bUJBQUMsRUFBRSxRQUFRLEVBQUUsZ0JBQWdCLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIE9uRGVzdHJveSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoeyBzZWxlY3RvcjogJ1theFJlc3BvbnNpdmVdJyB9KVxuZXhwb3J0IGNsYXNzIEFYUmVzcG9uc2l2ZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgX2VsZW1lbnRSZWYgPSBpbmplY3Q8RWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD4+KEVsZW1lbnRSZWYpO1xuXG4gIHByaXZhdGUgX29ic2VydmVyOiBSZXNpemVPYnNlcnZlciA9IG5ldyBSZXNpemVPYnNlcnZlcigoZW50cmllcykgPT4ge1xuICAgIGZvciAoY29uc3QgZW50cnkgb2YgZW50cmllcykge1xuICAgICAgaWYgKGVudHJ5LnRhcmdldCkge1xuICAgICAgICBjb25zdCBlID0gZW50cnkudGFyZ2V0O1xuICAgICAgICBjb25zdCBlbGVtZW50cyA9IFtlLCAuLi5BcnJheS5mcm9tKGUucXVlcnlTZWxlY3RvckFsbChgW2NsYXNzKj0nc206J11gKSldO1xuICAgICAgICBlbGVtZW50c1xuICAgICAgICAgIC5tYXAoKGMpID0+ICh7XG4gICAgICAgICAgICBlbGVtZW50OiBjLFxuICAgICAgICAgICAgY2xhc3NMaXN0OiBBcnJheS5mcm9tKGMuY2xhc3NMaXN0KVxuICAgICAgICAgICAgICAuZmlsdGVyKChjKSA9PiBjLmluY2x1ZGVzKCdzbScpKVxuICAgICAgICAgICAgICAubWFwKChjKSA9PiBjLnNsaWNlKDMpKSxcbiAgICAgICAgICB9KSlcbiAgICAgICAgICAuZm9yRWFjaCgoYykgPT4ge1xuICAgICAgICAgICAgZS5jbGllbnRXaWR0aCA8IDMyMCA/IGMuZWxlbWVudC5jbGFzc0xpc3QuYWRkKC4uLmMuY2xhc3NMaXN0KSA6IGMuZWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKC4uLmMuY2xhc3NMaXN0KTtcbiAgICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gIH0pO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIGNvbnN0IF9lbGVtZW50UmVmID0gdGhpcy5fZWxlbWVudFJlZjtcblxuICAgIHRoaXMuX29ic2VydmVyLm9ic2VydmUoX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLl9vYnNlcnZlcj8uZGlzY29ubmVjdCgpO1xuICAgIHRoaXMuX29ic2VydmVyPy51bm9ic2VydmUodGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KTtcbiAgfVxufVxuIl19","import { NgModule } from '@angular/core';\nimport { AXAutoFocusDirective } from './directives/auto-focus.directive';\nimport { AXHotkeyDirective } from './directives/hotkey.directive';\nimport { AXInfiniteScrollerDirective } from './directives/infinite-scroll.directive';\nimport { AXResponsiveDirective } from './directives/responsive.directive';\nimport { AXHotkeysService } from './services/hotkey.service';\nimport * as i0 from \"@angular/core\";\nexport class AXCommonModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXCommonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.1.2\", ngImport: i0, type: AXCommonModule, imports: [AXResponsiveDirective, AXInfiniteScrollerDirective, AXAutoFocusDirective, AXHotkeyDirective], exports: [AXResponsiveDirective, AXInfiniteScrollerDirective, AXAutoFocusDirective, AXHotkeyDirective] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXCommonModule, providers: [AXHotkeysService] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXCommonModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [AXResponsiveDirective, AXInfiniteScrollerDirective, AXAutoFocusDirective, AXHotkeyDirective],\n exports: [AXResponsiveDirective, AXInfiniteScrollerDirective, AXAutoFocusDirective, AXHotkeyDirective],\n providers: [AXHotkeysService],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2Nkay9jb21tb24vc3JjL2xpYi9jb21tb24ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDekUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDckYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDMUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7O0FBTTdELE1BQU0sT0FBTyxjQUFjOzhHQUFkLGNBQWM7K0dBQWQsY0FBYyxZQUpmLHFCQUFxQixFQUFFLDJCQUEyQixFQUFFLG9CQUFvQixFQUFFLGlCQUFpQixhQUMzRixxQkFBcUIsRUFBRSwyQkFBMkIsRUFBRSxvQkFBb0IsRUFBRSxpQkFBaUI7K0dBRzFGLGNBQWMsYUFGZCxDQUFDLGdCQUFnQixDQUFDOzsyRkFFbEIsY0FBYztrQkFMMUIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxxQkFBcUIsRUFBRSwyQkFBMkIsRUFBRSxvQkFBb0IsRUFBRSxpQkFBaUIsQ0FBQztvQkFDdEcsT0FBTyxFQUFFLENBQUMscUJBQXFCLEVBQUUsMkJBQTJCLEVBQUUsb0JBQW9CLEVBQUUsaUJBQWlCLENBQUM7b0JBQ3RHLFNBQVMsRUFBRSxDQUFDLGdCQUFnQixDQUFDO2lCQUM5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWEF1dG9Gb2N1c0RpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9hdXRvLWZvY3VzLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBBWEhvdGtleURpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9ob3RrZXkuZGlyZWN0aXZlJztcbmltcG9ydCB7IEFYSW5maW5pdGVTY3JvbGxlckRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9pbmZpbml0ZS1zY3JvbGwuZGlyZWN0aXZlJztcbmltcG9ydCB7IEFYUmVzcG9uc2l2ZURpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9yZXNwb25zaXZlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBBWEhvdGtleXNTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9ob3RrZXkuc2VydmljZSc7XG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbQVhSZXNwb25zaXZlRGlyZWN0aXZlLCBBWEluZmluaXRlU2Nyb2xsZXJEaXJlY3RpdmUsIEFYQXV0b0ZvY3VzRGlyZWN0aXZlLCBBWEhvdGtleURpcmVjdGl2ZV0sXG4gIGV4cG9ydHM6IFtBWFJlc3BvbnNpdmVEaXJlY3RpdmUsIEFYSW5maW5pdGVTY3JvbGxlckRpcmVjdGl2ZSwgQVhBdXRvRm9jdXNEaXJlY3RpdmUsIEFYSG90a2V5RGlyZWN0aXZlXSxcbiAgcHJvdmlkZXJzOiBbQVhIb3RrZXlzU2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIEFYQ29tbW9uTW9kdWxlIHt9XG4iXX0=","import { EventEmitter } from '@angular/core';\nimport { MXBaseComponent } from './base-component.class';\nexport class MXColorComponent extends MXBaseComponent {\n constructor() {\n super(...arguments);\n this.colorChange = new EventEmitter();\n this._color = 'default';\n }\n /**\n * Predefined color schemes\n */\n get color() {\n return this._color;\n }\n set color(value) {\n this.setOption({\n name: 'color',\n value,\n afterCallback: () => {\n this.cdr.markForCheck();\n },\n });\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3ItY29tcG9uZW50LmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY2RrL2NvbW1vbi9zcmMvbGliL2NvbXBvbmVudHMvY29sb3ItY29tcG9uZW50LmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFN0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXpELE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxlQUFlO0lBQXJEOztRQUNFLGdCQUFXLEdBQW1DLElBQUksWUFBWSxFQUFFLENBQUM7UUFDekQsV0FBTSxHQUFxQixTQUFTLENBQUM7SUFnQi9DLENBQUM7SUFmQzs7T0FFRztJQUNILElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBQ0QsSUFBSSxLQUFLLENBQUMsS0FBdUI7UUFDL0IsSUFBSSxDQUFDLFNBQVMsQ0FBQztZQUNiLElBQUksRUFBRSxPQUFPO1lBQ2IsS0FBSztZQUNMLGFBQWEsRUFBRSxHQUFHLEVBQUU7Z0JBQ2xCLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDMUIsQ0FBQztTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEV2ZW50RW1pdHRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhTdHlsZUNvbG9yVHlwZSB9IGZyb20gJy4uL2NsYXNzZXMvc3R5bGVzLmNsYXNzJztcbmltcG9ydCB7IE1YQmFzZUNvbXBvbmVudCB9IGZyb20gJy4vYmFzZS1jb21wb25lbnQuY2xhc3MnO1xuXG5leHBvcnQgY2xhc3MgTVhDb2xvckNvbXBvbmVudCBleHRlbmRzIE1YQmFzZUNvbXBvbmVudCB7XG4gIGNvbG9yQ2hhbmdlOiBFdmVudEVtaXR0ZXI8QVhTdHlsZUNvbG9yVHlwZT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIHByaXZhdGUgX2NvbG9yOiBBWFN0eWxlQ29sb3JUeXBlID0gJ2RlZmF1bHQnO1xuICAvKipcbiAgICogIFByZWRlZmluZWQgY29sb3Igc2NoZW1lc1xuICAgKi9cbiAgZ2V0IGNvbG9yKCk6IEFYU3R5bGVDb2xvclR5cGUge1xuICAgIHJldHVybiB0aGlzLl9jb2xvcjtcbiAgfVxuICBzZXQgY29sb3IodmFsdWU6IEFYU3R5bGVDb2xvclR5cGUpIHtcbiAgICB0aGlzLnNldE9wdGlvbih7XG4gICAgICBuYW1lOiAnY29sb3InLFxuICAgICAgdmFsdWUsXG4gICAgICBhZnRlckNhbGxiYWNrOiAoKSA9PiB7XG4gICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgICAgfSxcbiAgICB9KTtcbiAgfVxufVxuIl19","import { EventEmitter, Injectable } from '@angular/core';\nimport { MXBaseComponent } from './base-component.class';\nimport * as i0 from \"@angular/core\";\nexport class MXLookableComponent {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: MXLookableComponent, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: MXLookableComponent }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: MXLookableComponent, decorators: [{\n type: Injectable\n }] });\nexport class MXLookComponent extends MXBaseComponent {\n constructor() {\n super(...arguments);\n this.lookChange = new EventEmitter();\n this._look = 'solid';\n }\n /**\n * Predefined look schemes\n */\n get look() {\n return this._look;\n }\n set look(value) {\n this.setOption({\n name: 'look',\n value,\n afterCallback: () => {\n this.cdr.markForCheck();\n },\n });\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9vay1jb21wb25lbnQuY2xhc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jZGsvY29tbW9uL3NyYy9saWIvY29tcG9uZW50cy9sb29rLWNvbXBvbmVudC5jbGFzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7O0FBR3pELE1BQU0sT0FBZ0IsbUJBQW1COzhHQUFuQixtQkFBbUI7a0hBQW5CLG1CQUFtQjs7MkZBQW5CLG1CQUFtQjtrQkFEeEMsVUFBVTs7QUFLWCxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxlQUFlO0lBQXBEOztRQUNFLGVBQVUsR0FBa0MsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUN2RCxVQUFLLEdBQXFCLE9BQU8sQ0FBQztJQWdCNUMsQ0FBQztJQWZDOztPQUVHO0lBQ0gsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFDRCxJQUFJLElBQUksQ0FBQyxLQUFzQjtRQUM3QixJQUFJLENBQUMsU0FBUyxDQUFDO1lBQ2IsSUFBSSxFQUFFLE1BQU07WUFDWixLQUFLO1lBQ0wsYUFBYSxFQUFFLEdBQUcsRUFBRTtnQkFDbEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUMxQixDQUFDO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRXZlbnRFbWl0dGVyLCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWFN0eWxlTG9va1R5cGUgfSBmcm9tICcuLi9jbGFzc2VzL3N0eWxlcy5jbGFzcyc7XG5pbXBvcnQgeyBNWEJhc2VDb21wb25lbnQgfSBmcm9tICcuL2Jhc2UtY29tcG9uZW50LmNsYXNzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIE1YTG9va2FibGVDb21wb25lbnQge1xuICBsb29rOiBBWFN0eWxlTG9va1R5cGU7XG59XG5cbmV4cG9ydCBjbGFzcyBNWExvb2tDb21wb25lbnQgZXh0ZW5kcyBNWEJhc2VDb21wb25lbnQge1xuICBsb29rQ2hhbmdlOiBFdmVudEVtaXR0ZXI8QVhTdHlsZUxvb2tUeXBlPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgcHJpdmF0ZSBfbG9vaz86IEFYU3R5bGVMb29rVHlwZSA9ICdzb2xpZCc7XG4gIC8qKlxuICAgKiAgUHJlZGVmaW5lZCBsb29rIHNjaGVtZXNcbiAgICovXG4gIGdldCBsb29rKCk6IEFYU3R5bGVMb29rVHlwZSB7XG4gICAgcmV0dXJuIHRoaXMuX2xvb2s7XG4gIH1cbiAgc2V0IGxvb2sodmFsdWU6IEFYU3R5bGVMb29rVHlwZSkge1xuICAgIHRoaXMuc2V0T3B0aW9uKHtcbiAgICAgIG5hbWU6ICdsb29rJyxcbiAgICAgIHZhbHVlLFxuICAgICAgYWZ0ZXJDYWxsYmFjazogKCkgPT4ge1xuICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==","import { classes } from 'polytype';\nimport { MXColorComponent } from './color-component.class';\nimport { MXLookComponent } from './look-component.class';\nexport class MXColorLookComponent extends classes(MXColorComponent, MXLookComponent) {\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3Jsb29rLWNvbXBvbmVudC5jbGFzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2Nkay9jb21tb24vc3JjL2xpYi9jb21wb25lbnRzL2NvbG9ybG9vay1jb21wb25lbnQuY2xhc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUNuQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFekQsTUFBTSxPQUFPLG9CQUFxQixTQUFRLE9BQU8sQ0FBQyxnQkFBZ0IsRUFBRSxlQUFlLENBQUM7Q0FBRyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNsYXNzZXMgfSBmcm9tICdwb2x5dHlwZSc7XG5pbXBvcnQgeyBNWENvbG9yQ29tcG9uZW50IH0gZnJvbSAnLi9jb2xvci1jb21wb25lbnQuY2xhc3MnO1xuaW1wb3J0IHsgTVhMb29rQ29tcG9uZW50IH0gZnJvbSAnLi9sb29rLWNvbXBvbmVudC5jbGFzcyc7XG5cbmV4cG9ydCBjbGFzcyBNWENvbG9yTG9va0NvbXBvbmVudCBleHRlbmRzIGNsYXNzZXMoTVhDb2xvckNvbXBvbmVudCwgTVhMb29rQ29tcG9uZW50KSB7fVxuIl19","import { EventEmitter } from '@angular/core';\nimport { set } from 'lodash-es';\nimport { classes } from 'polytype';\nimport { MXColorLookComponent } from './colorlook-component.class';\nimport { MXInteractiveComponent } from './interactive-component.class';\nexport class MXButtonBaseComponent extends classes(MXInteractiveComponent, MXColorLookComponent) {\n /**\n * Defines the primary text to show inside the button.\n */\n get text() {\n return this._text;\n }\n set text(v) {\n this.setOption({\n name: 'text',\n value: v,\n afterCallback: () => {\n this.cdr.markForCheck();\n },\n });\n }\n /**\n * Provides visual styling that indicates if the Button is active\n */\n get toggleable() {\n return this._toggleable;\n }\n set toggleable(value) {\n this.setOption({\n name: 'toggleable',\n value,\n });\n }\n /**\n * Indicates if the Button is selected or not\n */\n get selected() {\n return this._selected;\n }\n set selected(value) {\n this.setOption({\n name: 'selected',\n value,\n afterCallback: () => {\n this.cdr.markForCheck();\n },\n });\n }\n /**\n * @ignore\n */\n constructor() {\n super();\n /**\n * Emits an event when the text associated with the button changes.\n *\n * @event\n */\n this.textChange = new EventEmitter();\n /**\n * Emits an event when the toggleable state of the action sheet changes.\n *\n * @event\n */\n this.toggleableChange = new EventEmitter();\n this._toggleable = false;\n /**\n * Emits an event whenever the selection state of the component changes.\n *\n * @event\n */\n this.selectedChange = new EventEmitter();\n this._selected = false;\n }\n /**\n * @ignore\n */\n get cssClasses() {\n const cssClasses = {\n 'ax-button-icon': !this.text,\n 'ax-state-disabled': this.disabled,\n 'ax-state-selected': this.selected,\n };\n set(cssClasses, `ax-${this.look || 'solid'}`, true);\n set(cssClasses, `ax-${this.color || 'primary'}`, true);\n return cssClasses;\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLWJhc2UtY29tcG9uZW50LmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY2RrL2NvbW1vbi9zcmMvbGliL2NvbXBvbmVudHMvYnV0dG9uLWJhc2UtY29tcG9uZW50LmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0MsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNoQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ25DLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ25FLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRXZFLE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxPQUFPLENBQUMsc0JBQXNCLEVBQUUsb0JBQW9CLENBQUM7SUFROUY7O09BRUc7SUFDSCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUNELElBQUksSUFBSSxDQUFDLENBQVM7UUFDaEIsSUFBSSxDQUFDLFNBQVMsQ0FBQztZQUNiLElBQUksRUFBRSxNQUFNO1lBQ1osS0FBSyxFQUFFLENBQUM7WUFDUixhQUFhLEVBQUUsR0FBRyxFQUFFO2dCQUNsQixJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQzFCLENBQUM7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0lBU0Q7O09BRUc7SUFDSCxJQUFJLFVBQVU7UUFDWixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDMUIsQ0FBQztJQUNELElBQUksVUFBVSxDQUFDLEtBQWM7UUFDM0IsSUFBSSxDQUFDLFNBQVMsQ0FBQztZQUNiLElBQUksRUFBRSxZQUFZO1lBQ2xCLEtBQUs7U0FDTixDQUFDLENBQUM7SUFDTCxDQUFDO0lBU0Q7O09BRUc7SUFDSCxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUNELElBQUksUUFBUSxDQUFDLEtBQWM7UUFDekIsSUFBSSxDQUFDLFNBQVMsQ0FBQztZQUNiLElBQUksRUFBRSxVQUFVO1lBQ2hCLEtBQUs7WUFDTCxhQUFhLEVBQUUsR0FBRyxFQUFFO2dCQUNsQixJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQzFCLENBQUM7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0lBQ0Q7O09BRUc7SUFDSDtRQUNFLEtBQUssRUFBRSxDQUFDO1FBckVWOzs7O1dBSUc7UUFDSCxlQUFVLEdBQXlCLElBQUksWUFBWSxFQUFFLENBQUM7UUFrQnREOzs7O1dBSUc7UUFDSCxxQkFBZ0IsR0FBMEIsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNyRCxnQkFBVyxHQUFhLEtBQUssQ0FBQztRQWN0Qzs7OztXQUlHO1FBQ0gsbUJBQWMsR0FBMEIsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNuRCxjQUFTLEdBQWEsS0FBSyxDQUFDO0lBcUJwQyxDQUFDO0lBQ0Q7O09BRUc7SUFDSCxJQUFjLFVBQVU7UUFDdEIsTUFBTSxVQUFVLEdBQUc7WUFDakIsZ0JBQWdCLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSTtZQUM1QixtQkFBbUIsRUFBRSxJQUFJLENBQUMsUUFBUTtZQUNsQyxtQkFBbUIsRUFBRSxJQUFJLENBQUMsUUFBUTtTQUNuQyxDQUFDO1FBQ0YsR0FBRyxDQUFDLFVBQVUsRUFBRSxNQUFNLElBQUksQ0FBQyxJQUFJLElBQUksT0FBTyxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDcEQsR0FBRyxDQUFDLFVBQVUsRUFBRSxNQUFNLElBQUksQ0FBQyxLQUFLLElBQUksU0FBUyxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDdkQsT0FBTyxVQUFVLENBQUM7SUFDcEIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBzZXQgfSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHsgY2xhc3NlcyB9IGZyb20gJ3BvbHl0eXBlJztcbmltcG9ydCB7IE1YQ29sb3JMb29rQ29tcG9uZW50IH0gZnJvbSAnLi9jb2xvcmxvb2stY29tcG9uZW50LmNsYXNzJztcbmltcG9ydCB7IE1YSW50ZXJhY3RpdmVDb21wb25lbnQgfSBmcm9tICcuL2ludGVyYWN0aXZlLWNvbXBvbmVudC5jbGFzcyc7XG5cbmV4cG9ydCBjbGFzcyBNWEJ1dHRvbkJhc2VDb21wb25lbnQgZXh0ZW5kcyBjbGFzc2VzKE1YSW50ZXJhY3RpdmVDb21wb25lbnQsIE1YQ29sb3JMb29rQ29tcG9uZW50KSB7XG4gIC8qKlxuICAgKiBFbWl0cyBhbiBldmVudCB3aGVuIHRoZSB0ZXh0IGFzc29jaWF0ZWQgd2l0aCB0aGUgYnV0dG9uIGNoYW5nZXMuXG4gICAqXG4gICAqIEBldmVudFxuICAgKi9cbiAgdGV4dENoYW5nZTogRXZlbnRFbWl0dGVyPHN0cmluZz4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIHByaXZhdGUgX3RleHQ6IHN0cmluZztcbiAgLyoqXG4gICAqICBEZWZpbmVzIHRoZSBwcmltYXJ5IHRleHQgdG8gc2hvdyBpbnNpZGUgdGhlIGJ1dHRvbi5cbiAgICovXG4gIGdldCB0ZXh0KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3RleHQ7XG4gIH1cbiAgc2V0IHRleHQodjogc3RyaW5nKSB7XG4gICAgdGhpcy5zZXRPcHRpb24oe1xuICAgICAgbmFtZTogJ3RleHQnLFxuICAgICAgdmFsdWU6IHYsXG4gICAgICBhZnRlckNhbGxiYWNrOiAoKSA9PiB7XG4gICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFbWl0cyBhbiBldmVudCB3aGVuIHRoZSB0b2dnbGVhYmxlIHN0YXRlIG9mIHRoZSBhY3Rpb24gc2hlZXQgY2hhbmdlcy5cbiAgICpcbiAgICogQGV2ZW50XG4gICAqL1xuICB0b2dnbGVhYmxlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIHByaXZhdGUgX3RvZ2dsZWFibGU/OiBib29sZWFuID0gZmFsc2U7XG4gIC8qKlxuICAgKiAgUHJvdmlkZXMgdmlzdWFsIHN0eWxpbmcgdGhhdCBpbmRpY2F0ZXMgaWYgdGhlIEJ1dHRvbiBpcyBhY3RpdmVcbiAgICovXG4gIGdldCB0b2dnbGVhYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl90b2dnbGVhYmxlO1xuICB9XG4gIHNldCB0b2dnbGVhYmxlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5zZXRPcHRpb24oe1xuICAgICAgbmFtZTogJ3RvZ2dsZWFibGUnLFxuICAgICAgdmFsdWUsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogRW1pdHMgYW4gZXZlbnQgd2hlbmV2ZXIgdGhlIHNlbGVjdGlvbiBzdGF0ZSBvZiB0aGUgY29tcG9uZW50IGNoYW5nZXMuXG4gICAqXG4gICAqIEBldmVudFxuICAgKi9cbiAgc2VsZWN0ZWRDaGFuZ2U6IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgcHJpdmF0ZSBfc2VsZWN0ZWQ/OiBib29sZWFuID0gZmFsc2U7XG4gIC8qKlxuICAgKiAgSW5kaWNhdGVzIGlmIHRoZSBCdXR0b24gaXMgc2VsZWN0ZWQgb3Igbm90XG4gICAqL1xuICBnZXQgc2VsZWN0ZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3NlbGVjdGVkO1xuICB9XG4gIHNldCBzZWxlY3RlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuc2V0T3B0aW9uKHtcbiAgICAgIG5hbWU6ICdzZWxlY3RlZCcsXG4gICAgICB2YWx1ZSxcbiAgICAgIGFmdGVyQ2FsbGJhY2s6ICgpID0+IHtcbiAgICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgICB9LFxuICAgIH0pO1xuICB9XG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIHByb3RlY3RlZCBnZXQgY3NzQ2xhc3NlcygpIHtcbiAgICBjb25zdCBjc3NDbGFzc2VzID0ge1xuICAgICAgJ2F4LWJ1dHRvbi1pY29uJzogIXRoaXMudGV4dCxcbiAgICAgICdheC1zdGF0ZS1kaXNhYmxlZCc6IHRoaXMuZGlzYWJsZWQsXG4gICAgICAnYXgtc3RhdGUtc2VsZWN0ZWQnOiB0aGlzLnNlbGVjdGVkLFxuICAgIH07XG4gICAgc2V0KGNzc0NsYXNzZXMsIGBheC0ke3RoaXMubG9vayB8fCAnc29saWQnfWAsIHRydWUpO1xuICAgIHNldChjc3NDbGFzc2VzLCBgYXgtJHt0aGlzLmNvbG9yIHx8ICdwcmltYXJ5J31gLCB0cnVlKTtcbiAgICByZXR1cm4gY3NzQ2xhc3NlcztcbiAgfVxufVxuIl19","import { EventEmitter, Injectable } from '@angular/core';\nimport { isEqual } from 'lodash-es';\nimport { MXValueComponent } from './value-component.class';\nimport * as i0 from \"@angular/core\";\nexport class MXInputBaseValueComponent extends MXValueComponent {\n constructor() {\n super(...arguments);\n /**\n * Fires each time the user press a key.\n * @event\n */\n this.onKeyDown = new EventEmitter();\n /**\n * Fires each time the user press a key.\n * @event\n */\n this.onKeyUp = new EventEmitter();\n /**\n * Fires each time the user press a key.\n * @event\n */\n this.onKeyPress = new EventEmitter();\n /**\n * Fires each time the user change the text.\n * @event\n */\n this.onTextChanged = new EventEmitter();\n }\n emitOnKeydownEvent(e) {\n this.onKeyDown.emit({\n component: this,\n nativeEvent: e,\n });\n }\n emitOnKeyupEvent(e) {\n this.onKeyUp.emit({\n component: this,\n nativeEvent: e,\n });\n }\n emitOnKeypressEvent(e) {\n this.onKeyPress.emit({\n component: this,\n nativeEvent: e,\n });\n }\n emitOnTextChanged(value, isUserInteraction = false) {\n if (isEqual(value, this.oldText))\n return;\n this.onTextChanged.emit({\n value,\n name: this.name,\n component: this,\n isUserInteraction,\n oldValue: this.oldText,\n htmlElement: this.getHostElement(),\n });\n this.oldText = value;\n }\n focus() {\n const input = this.getHostElement().querySelector('input');\n if (input)\n input.focus();\n else\n super.focus();\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: MXInputBaseValueComponent, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: MXInputBaseValueComponent }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: MXInputBaseValueComponent, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtYmFzZS12YWx1ZS1jb21wb25lbnQuY2xhc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jZGsvY29tbW9uL3NyYy9saWIvY29tcG9uZW50cy9pbnB1dC1iYXNlLXZhbHVlLWNvbXBvbmVudC5jbGFzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBRXBDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDOztBQUczRCxNQUFNLE9BQU8seUJBQXNDLFNBQVEsZ0JBQW1CO0lBRDlFOztRQUtFOzs7V0FHRztRQUNILGNBQVMsR0FBNkMsSUFBSSxZQUFZLEVBQThCLENBQUM7UUFFckc7OztXQUdHO1FBQ0gsWUFBTyxHQUE2QyxJQUFJLFlBQVksRUFBOEIsQ0FBQztRQUVuRzs7O1dBR0c7UUFDSCxlQUFVLEdBQTZDLElBQUksWUFBWSxFQUE4QixDQUFDO1FBRXRHOzs7V0FHRztRQUNILGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQStCLENBQUM7S0F5Q2pFO0lBdkNXLGtCQUFrQixDQUFDLENBQWdCO1FBQzNDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDO1lBQ2xCLFNBQVMsRUFBRSxJQUFJO1lBQ2YsV0FBVyxFQUFFLENBQUM7U0FDZixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRVMsZ0JBQWdCLENBQUMsQ0FBZ0I7UUFDekMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7WUFDaEIsU0FBUyxFQUFFLElBQUk7WUFDZixXQUFXLEVBQUUsQ0FBQztTQUNmLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFUyxtQkFBbUIsQ0FBQyxDQUFnQjtRQUM1QyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQztZQUNuQixTQUFTLEVBQUUsSUFBSTtZQUNmLFdBQVcsRUFBRSxDQUFDO1NBQ2YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVTLGlCQUFpQixDQUFDLEtBQWEsRUFBRSxpQkFBaUIsR0FBRyxLQUFLO1FBQ2xFLElBQUksT0FBTyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDO1lBQUUsT0FBTztRQUN6QyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQztZQUN0QixLQUFLO1lBQ0wsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQ2YsU0FBUyxFQUFFLElBQUk7WUFDZixpQkFBaUI7WUFDakIsUUFBUSxFQUFFLElBQUksQ0FBQyxPQUFPO1lBQ3RCLFdBQVcsRUFBRSxJQUFJLENBQUMsY0FBYyxFQUFFO1NBQ25DLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO0lBQ3ZCLENBQUM7SUFFUSxLQUFLO1FBQ1osTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUMzRCxJQUFJLEtBQUs7WUFBRSxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7O1lBQ3BCLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNyQixDQUFDOzhHQWxFVSx5QkFBeUI7a0hBQXpCLHlCQUF5Qjs7MkZBQXpCLHlCQUF5QjtrQkFEckMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEV2ZW50RW1pdHRlciwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgaXNFcXVhbCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBBWEh0bWxFdmVudCwgQVhWYWx1ZUNoYW5nZWRFdmVudCB9IGZyb20gJy4uL2NsYXNzZXMvZXZlbnRzLmNsYXNzJztcbmltcG9ydCB7IE1YVmFsdWVDb21wb25lbnQgfSBmcm9tICcuL3ZhbHVlLWNvbXBvbmVudC5jbGFzcyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBNWElucHV0QmFzZVZhbHVlQ29tcG9uZW50PFQgPSBzdHJpbmc+IGV4dGVuZHMgTVhWYWx1ZUNvbXBvbmVudDxUPiB7XG4gIG9sZFRleHQ6IHN0cmluZztcbiAgcGxhY2Vob2xkZXI6IHN0cmluZztcblxuICAvKipcbiAgICogIEZpcmVzIGVhY2ggdGltZSB0aGUgdXNlciBwcmVzcyBhIGtleS5cbiAgICogIEBldmVudFxuICAgKi9cbiAgb25LZXlEb3duOiBFdmVudEVtaXR0ZXI8QVhIdG1sRXZlbnQ8S2V5Ym9hcmRFdmVudD4+ID0gbmV3IEV2ZW50RW1pdHRlcjxBWEh0bWxFdmVudDxLZXlib2FyZEV2ZW50Pj4oKTtcblxuICAvKipcbiAgICogIEZpcmVzIGVhY2ggdGltZSB0aGUgdXNlciBwcmVzcyBhIGtleS5cbiAgICogIEBldmVudFxuICAgKi9cbiAgb25LZXlVcDogRXZlbnRFbWl0dGVyPEFYSHRtbEV2ZW50PEtleWJvYXJkRXZlbnQ+PiA9IG5ldyBFdmVudEVtaXR0ZXI8QVhIdG1sRXZlbnQ8S2V5Ym9hcmRFdmVudD4+KCk7XG5cbiAgLyoqXG4gICAqICBGaXJlcyBlYWNoIHRpbWUgdGhlIHVzZXIgcHJlc3MgYSBrZXkuXG4gICAqICBAZXZlbnRcbiAgICovXG4gIG9uS2V5UHJlc3M6IEV2ZW50RW1pdHRlcjxBWEh0bWxFdmVudDxLZXlib2FyZEV2ZW50Pj4gPSBuZXcgRXZlbnRFbWl0dGVyPEFYSHRtbEV2ZW50PEtleWJvYXJkRXZlbnQ+PigpO1xuXG4gIC8qKlxuICAgKiAgRmlyZXMgZWFjaCB0aW1lIHRoZSB1c2VyIGNoYW5nZSB0aGUgdGV4dC5cbiAgICogIEBldmVudFxuICAgKi9cbiAgb25UZXh0Q2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8QVhWYWx1ZUNoYW5nZWRFdmVudDxzdHJpbmc+PigpO1xuXG4gIHByb3RlY3RlZCBlbWl0T25LZXlkb3duRXZlbnQoZTogS2V5Ym9hcmRFdmVudCkge1xuICAgIHRoaXMub25LZXlEb3duLmVtaXQoe1xuICAgICAgY29tcG9uZW50OiB0aGlzLFxuICAgICAgbmF0aXZlRXZlbnQ6IGUsXG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZW1pdE9uS2V5dXBFdmVudChlOiBLZXlib2FyZEV2ZW50KSB7XG4gICAgdGhpcy5vbktleVVwLmVtaXQoe1xuICAgICAgY29tcG9uZW50OiB0aGlzLFxuICAgICAgbmF0aXZlRXZlbnQ6IGUsXG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZW1pdE9uS2V5cHJlc3NFdmVudChlOiBLZXlib2FyZEV2ZW50KSB7XG4gICAgdGhpcy5vbktleVByZXNzLmVtaXQoe1xuICAgICAgY29tcG9uZW50OiB0aGlzLFxuICAgICAgbmF0aXZlRXZlbnQ6IGUsXG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZW1pdE9uVGV4dENoYW5nZWQodmFsdWU6IHN0cmluZywgaXNVc2VySW50ZXJhY3Rpb24gPSBmYWxzZSkge1xuICAgIGlmIChpc0VxdWFsKHZhbHVlLCB0aGlzLm9sZFRleHQpKSByZXR1cm47XG4gICAgdGhpcy5vblRleHRDaGFuZ2VkLmVtaXQoe1xuICAgICAgdmFsdWUsXG4gICAgICBuYW1lOiB0aGlzLm5hbWUsXG4gICAgICBjb21wb25lbnQ6IHRoaXMsXG4gICAgICBpc1VzZXJJbnRlcmFjdGlvbixcbiAgICAgIG9sZFZhbHVlOiB0aGlzLm9sZFRleHQsXG4gICAgICBodG1sRWxlbWVudDogdGhpcy5nZXRIb3N0RWxlbWVudCgpLFxuICAgIH0pO1xuICAgIHRoaXMub2xkVGV4dCA9IHZhbHVlO1xuICB9XG5cbiAgb3ZlcnJpZGUgZm9jdXMoKTogdm9pZCB7XG4gICAgY29uc3QgaW5wdXQgPSB0aGlzLmdldEhvc3RFbGVtZW50KCkucXVlcnlTZWxlY3RvcignaW5wdXQnKTtcbiAgICBpZiAoaW5wdXQpIGlucHV0LmZvY3VzKCk7XG4gICAgZWxzZSBzdXBlci5mb2N1cygpO1xuICB9XG59XG4iXX0=","import { AXFormatService } from '@acorex/core/format';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { Injectable, InjectionToken, inject } from '@angular/core';\nimport { cloneDeep } from 'lodash-es';\nimport { MXValueComponent } from './value-component.class';\nimport * as i0 from \"@angular/core\";\nexport class MXSelectionBridgeService {\n constructor() {\n this.selectedItems = [];\n this.cacheList = {};\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: MXSelectionBridgeService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: MXSelectionBridgeService }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: MXSelectionBridgeService, decorators: [{\n type: Injectable\n }] });\nexport const AX_SELECTION_DATA_TOKEN = new InjectionToken('AX_SELECTION_DATA_TOKEN');\nexport class MXSelectionValueComponent extends MXValueComponent {\n constructor() {\n super(...arguments);\n this.formatService = inject(AXFormatService);\n this.dataService = inject(AX_SELECTION_DATA_TOKEN);\n this._valueField = 'id';\n this._textTemplate = '';\n this._textField = 'text';\n this._disabledField = 'disabled';\n this._multiple = false;\n }\n get valueField() {\n return this._valueField;\n }\n set valueField(v) {\n this.setOption({\n name: 'valueField',\n value: v,\n });\n }\n get textTemplate() {\n return this._textTemplate;\n }\n set textTemplate(v) {\n this.setOption({\n name: 'textTemplate',\n value: v,\n });\n }\n get textField() {\n return this._textField;\n }\n set textField(v) {\n this.setOption({\n name: 'textField',\n value: v,\n });\n }\n get disabledField() {\n return this._disabledField;\n }\n set disabledField(v) {\n this.setOption({\n name: 'disabledField',\n value: v,\n });\n }\n get multiple() {\n return this._multiple;\n }\n set multiple(v) {\n this.setOption({\n name: 'multiple',\n value: v,\n afterCallback: () => {\n this.reset(false);\n },\n });\n }\n get selectedItems() {\n return this.dataService.selectedItems || [];\n }\n internalSetValue(value) {\n const isArray = Array.isArray(value);\n if (value == null || (isArray && value.length == 0)) {\n return this.multiple ? [] : null;\n }\n const normalizedItems = isArray ? this.normalizeItemsList(value, true) : this.normalizeItemsList([value], true);\n if (normalizedItems.length == 0) {\n return this.multiple ? [] : null;\n }\n const result = this.multiple ? normalizedItems.map((c) => c[this.valueField]) : normalizedItems[0][this.valueField];\n return result;\n }\n emitOnValueChangedEvent(oldValue, newValue) {\n this._normalizeSelectedItems();\n super.emitOnValueChangedEvent(oldValue, newValue);\n }\n normalizeItemsList(items, findBykey = false) {\n if (items == null)\n return [];\n return items.filter((c) => c != null).map((i) => this.normalizeItem(i, findBykey));\n }\n normalizeItem(item, findBykey = false) {\n const complex = typeof item == 'object';\n const key = complex ? item[this.valueField] : `${item}`;\n const cacheKey = `k-${key}`;\n const hasText = !complex || item[this.textField] != null;\n //\n if (this.dataService.cacheList[cacheKey] && this.dataService.cacheList[cacheKey][this.textField])\n return this.dataService.cacheList[cacheKey];\n //\n const obj = {};\n if (complex && hasText) {\n Object.assign(obj, item);\n }\n else {\n const existsItem = findBykey ? this.getItemByKey(key) : null;\n if (existsItem && existsItem instanceof Promise) {\n obj[this.valueField] = key;\n obj['isLoading'] = true;\n obj[this.textField] = 'Loading';\n //\n existsItem\n .then((r) => {\n if (typeof r === 'object' && r) {\n // obj[this.valueField] = r[this.valueField];\n // obj[this.textField] = r[this.textField];\n Object.assign(obj, cloneDeep(r));\n }\n else {\n obj[this.valueField] = r || key;\n obj[this.textField] = r;\n }\n })\n .finally(() => {\n delete obj['isLoading'];\n this.dataService.cacheList[cacheKey] = obj;\n this.cdr.markForCheck();\n });\n }\n else if (existsItem) {\n obj[this.valueField] = complex ? existsItem[this.valueField] : existsItem;\n obj[this.textField] = complex ? existsItem[this.textField] : existsItem;\n }\n else {\n obj[this.valueField] = complex ? item[this.valueField] : item;\n obj[this.textField] = complex ? item[this.textField] : item;\n }\n }\n this.dataService.cacheList[cacheKey] = obj;\n return obj;\n }\n _normalizeSelectedItems() {\n const values = Array.isArray(this.value) ? this.value : this.value != null ? [this.value] : [];\n this.dataService.selectedItems = values.map((v) => this.normalizeItem(v));\n }\n unselectItems(...items) {\n if (!items || items.length === 0) {\n this.commitValue([], true);\n return;\n }\n const normalizeItems = Array.isArray(items) ? this.normalizeItemsList(items) : [this.normalizeItem(items)];\n const newSelectedItems = this.selectedItems.filter((i) => !normalizeItems.some((n) => n[this.valueField] == i[this.valueField]));\n this.commitValue(newSelectedItems, true);\n }\n selectItems(...items) {\n if (items && items.length) {\n let newSelectedItems = Array.isArray(this.value) ? this.value : [this.value];\n const normalizeItems = Array.isArray(items) ? this.normalizeItemsList(items) : [this.normalizeItem(items)];\n if (this.multiple) {\n newSelectedItems = [...newSelectedItems, ...normalizeItems];\n }\n else {\n newSelectedItems = normalizeItems;\n }\n this.commitValue(newSelectedItems, true);\n }\n }\n toggleSelect(...items) {\n items?.forEach((item) => {\n if (this.multiple) {\n this.isItemSelected(item) ? this.unselectItems(item) : this.selectItems(item);\n }\n else {\n this.selectItems(item);\n }\n });\n }\n isItemSelected(item) {\n return this.selectedItems.some((c) => c[this.valueField] === this.normalizeItem(item)[this.valueField]);\n }\n isItemDisabled(item) {\n return (this.disabled ||\n coerceBooleanProperty(item[this.disabledField]) === true ||\n (this.disabledCallback ? this.disabledCallback({ item, index: -1 }) : false));\n }\n // protected getDisplayText(item: T) {\n // const normalizeItem = this.normalizeItem(item) as any;\n // return formattedText || normalizeItem[this.valueField];\n // }\n getDisplayText(item) {\n const normalizeItem = this.normalizeItem(item);\n const formattedTemplate = this.formatService.format(this.textTemplate, 'string', normalizeItem);\n if (this.textTemplate && formattedTemplate != this.textTemplate)\n return formattedTemplate;\n else\n return normalizeItem[this.textField] || normalizeItem[this.valueField];\n }\n getValue(item) {\n const normalizeItem = this.normalizeItem(item);\n return normalizeItem[this.valueField];\n }\n clearSelectionCache() {\n this.dataService.cacheList = {};\n this.dataService.selectedItems = [];\n this.cdr.markForCheck();\n }\n softClearSelectionCache() {\n this.dataService.cacheList = {};\n this.cdr.markForCheck();\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: MXSelectionValueComponent, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: MXSelectionValueComponent }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: MXSelectionValueComponent, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW9uLWJhc2UuY29tcG9uZW50LmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY2RrL2NvbW1vbi9zcmMvbGliL2NvbXBvbmVudHMvc2VsZWN0aW9uLWJhc2UuY29tcG9uZW50LmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUN0QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7QUFHM0QsTUFBTSxPQUFPLHdCQUF3QjtJQURyQztRQUVTLGtCQUFhLEdBQWMsRUFBRSxDQUFDO1FBQzlCLGNBQVMsR0FBd0MsRUFBRSxDQUFDO0tBQzVEOzhHQUhZLHdCQUF3QjtrSEFBeEIsd0JBQXdCOzsyRkFBeEIsd0JBQXdCO2tCQURwQyxVQUFVOztBQU1YLE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFHLElBQUksY0FBYyxDQUEyQix5QkFBeUIsQ0FBQyxDQUFDO0FBRy9HLE1BQU0sT0FBZ0IseUJBQW1DLFNBQVEsZ0JBQXFCO0lBRHRGOztRQUVVLGtCQUFhLEdBQUcsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQ3hDLGdCQUFXLEdBQUcsTUFBTSxDQUFDLHVCQUF1QixDQUFDLENBQUM7UUFJOUMsZ0JBQVcsR0FBRyxJQUFJLENBQUM7UUFVbkIsa0JBQWEsR0FBRyxFQUFFLENBQUM7UUFXbkIsZUFBVSxHQUFHLE1BQU0sQ0FBQztRQVdwQixtQkFBYyxHQUFHLFVBQVUsQ0FBQztRQVc1QixjQUFTLEdBQUcsS0FB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QzNCLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztRQUNoQyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsR0FBRyxFQUFFLENBQUM7UUFDcEMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRVMsdUJBQXVCO1FBQy9CLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztRQUNoQyxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzFCLENBQUM7OEdBMU5tQix5QkFBeUI7a0hBQXpCLHlCQUF5Qjs7MkZBQXpCLHlCQUF5QjtrQkFEOUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYRm9ybWF0U2VydmljZSB9IGZyb20gJ0BhY29yZXgvY29yZS9mb3JtYXQnO1xuaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7IEluamVjdGFibGUsIEluamVjdGlvblRva2VuLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGNsb25lRGVlcCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBNWFZhbHVlQ29tcG9uZW50IH0gZnJvbSAnLi92YWx1ZS1jb21wb25lbnQuY2xhc3MnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgTVhTZWxlY3Rpb25CcmlkZ2VTZXJ2aWNlIHtcbiAgcHVibGljIHNlbGVjdGVkSXRlbXM6IHVua25vd25bXSA9IFtdO1xuICBwdWJsaWMgY2FjaGVMaXN0OiB7IFtrZXk6IHN0cmluZyB8IG51bWJlcl06IHVua25vd24gfSA9IHt9O1xufVxuXG5leHBvcnQgY29uc3QgQVhfU0VMRUNUSU9OX0RBVEFfVE9LRU4gPSBuZXcgSW5qZWN0aW9uVG9rZW48TVhTZWxlY3Rpb25CcmlkZ2VTZXJ2aWNlPignQVhfU0VMRUNUSU9OX0RBVEFfVE9LRU4nKTtcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIE1YU2VsZWN0aW9uVmFsdWVDb21wb25lbnQ8VCA9IGFueT4gZXh0ZW5kcyBNWFZhbHVlQ29tcG9uZW50PGFueT4ge1xuICBwcml2YXRlIGZvcm1hdFNlcnZpY2UgPSBpbmplY3QoQVhGb3JtYXRTZXJ2aWNlKTtcbiAgcHJpdmF0ZSBkYXRhU2VydmljZSA9IGluamVjdChBWF9TRUxFQ1RJT05fREFUQV9UT0tFTik7XG5cbiAgZGlzYWJsZWRDYWxsYmFjazogKGU6IHsgaXRlbTogVDsgaW5kZXg6IG51bWJlciB9KSA9PiBib29sZWFuO1xuXG4gIHByaXZhdGUgX3ZhbHVlRmllbGQgPSAnaWQnO1xuICBwdWJsaWMgZ2V0IHZhbHVlRmllbGQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fdmFsdWVGaWVsZDtcbiAgfVxuICBwdWJsaWMgc2V0IHZhbHVlRmllbGQodjogc3RyaW5nKSB7XG4gICAgdGhpcy5zZXRPcHRpb24oe1xuICAgICAgbmFtZTogJ3ZhbHVlRmllbGQnLFxuICAgICAgdmFsdWU6IHYsXG4gICAgfSk7XG4gIH1cbiAgcHJpdmF0ZSBfdGV4dFRlbXBsYXRlID0gJyc7XG4gIHB1YmxpYyBnZXQgdGV4dFRlbXBsYXRlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3RleHRUZW1wbGF0ZTtcbiAgfVxuICBwdWJsaWMgc2V0IHRleHRUZW1wbGF0ZSh2OiBzdHJpbmcpIHtcbiAgICB0aGlzLnNldE9wdGlvbih7XG4gICAgICBuYW1lOiAndGV4dFRlbXBsYXRlJyxcbiAgICAgIHZhbHVlOiB2LFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfdGV4dEZpZWxkID0gJ3RleHQnO1xuICBwdWJsaWMgZ2V0IHRleHRGaWVsZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl90ZXh0RmllbGQ7XG4gIH1cbiAgcHVibGljIHNldCB0ZXh0RmllbGQodjogc3RyaW5nKSB7XG4gICAgdGhpcy5zZXRPcHRpb24oe1xuICAgICAgbmFtZTogJ3RleHRGaWVsZCcsXG4gICAgICB2YWx1ZTogdixcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2Rpc2FibGVkRmllbGQgPSAnZGlzYWJsZWQnO1xuICBwdWJsaWMgZ2V0IGRpc2FibGVkRmllbGQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fZGlzYWJsZWRGaWVsZDtcbiAgfVxuICBwdWJsaWMgc2V0IGRpc2FibGVkRmllbGQodjogc3RyaW5nKSB7XG4gICAgdGhpcy5zZXRPcHRpb24oe1xuICAgICAgbmFtZTogJ2Rpc2FibGVkRmllbGQnLFxuICAgICAgdmFsdWU6IHYsXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9tdWx0aXBsZSA9IGZhbHNlO1xuICBwdWJsaWMgZ2V0IG11bHRpcGxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9tdWx0aXBsZTtcbiAgfVxuICBwdWJsaWMgc2V0IG11bHRpcGxlKHY6IGJvb2xlYW4pIHtcbiAgICB0aGlzLnNldE9wdGlvbih7XG4gICAgICBuYW1lOiAnbXVsdGlwbGUnLFxuICAgICAgdmFsdWU6IHYsXG4gICAgICBhZnRlckNhbGxiYWNrOiAoKSA9PiB7XG4gICAgICAgIHRoaXMucmVzZXQoZmFsc2UpO1xuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuXG4gIGdldCBzZWxlY3RlZEl0ZW1zKCk6IHVua25vd25bXSB7XG4gICAgcmV0dXJuIHRoaXMuZGF0YVNlcnZpY2Uuc2VsZWN0ZWRJdGVtcyB8fCBbXTtcbiAgfVxuXG4gIG92ZXJyaWRlIGludGVybmFsU2V0VmFsdWUodmFsdWU6IHVua25vd24pIHtcbiAgICBjb25zdCBpc0FycmF5ID0gQXJyYXkuaXNBcnJheSh2YWx1ZSk7XG4gICAgaWYgKHZhbHVlID09IG51bGwgfHwgKGlzQXJyYXkgJiYgdmFsdWUubGVuZ3RoID09IDApKSB7XG4gICAgICByZXR1cm4gdGhpcy5tdWx0aXBsZSA/IFtdIDogbnVsbDtcbiAgICB9XG4gICAgY29uc3Qgbm9ybWFsaXplZEl0ZW1zID0gaXNBcnJheSA/IHRoaXMubm9ybWFsaXplSXRlbXNMaXN0KHZhbHVlLCB0cnVlKSA6IHRoaXMubm9ybWFsaXplSXRlbXNMaXN0KFt2YWx1ZV0sIHRydWUpO1xuXG4gICAgaWYgKG5vcm1hbGl6ZWRJdGVtcy5sZW5ndGggPT0gMCkge1xuICAgICAgcmV0dXJuIHRoaXMubXVsdGlwbGUgPyBbXSA6IG51bGw7XG4gICAgfVxuICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMubXVsdGlwbGUgPyBub3JtYWxpemVkSXRlbXMubWFwKChjKSA9PiBjW3RoaXMudmFsdWVGaWVsZF0pIDogbm9ybWFsaXplZEl0ZW1zWzBdW3RoaXMudmFsdWVGaWVsZF07XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIG92ZXJyaWRlIGVtaXRPblZhbHVlQ2hhbmdlZEV2ZW50KG9sZFZhbHVlPzogdW5rbm93biwgbmV3VmFsdWU/OiB1bmtub3duKSB7XG4gICAgdGhpcy5fbm9ybWFsaXplU2VsZWN0ZWRJdGVtcygpO1xuICAgIHN1cGVyLmVtaXRPblZhbHVlQ2hhbmdlZEV2ZW50KG9sZFZhbHVlLCBuZXdWYWx1ZSk7XG4gIH1cblxuICBhYnN0cmFjdCBnZXRJdGVtQnlLZXkoa2V5OiB1bmtub3duKTogdW5rbm93biB8IFByb21pc2U8dW5rbm93bj47XG5cbiAgcHJvdGVjdGVkIG5vcm1hbGl6ZUl0ZW1zTGlzdChpdGVtczogdW5rbm93bltdLCBmaW5kQnlrZXkgPSBmYWxzZSk6IHVua25vd25bXSB7XG4gICAgaWYgKGl0ZW1zID09IG51bGwpIHJldHVybiBbXTtcbiAgICByZXR1cm4gaXRlbXMuZmlsdGVyKChjKSA9PiBjICE9IG51bGwpLm1hcCgoaSkgPT4gdGhpcy5ub3JtYWxpemVJdGVtKGksIGZpbmRCeWtleSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBub3JtYWxpemVJdGVtKGl0ZW06IHVua25vd24sIGZpbmRCeWtleSA9IGZhbHNlKTogdW5rbm93biB7XG4gICAgY29uc3QgY29tcGxleCA9IHR5cGVvZiBpdGVtID09ICdvYmplY3QnO1xuICAgIGNvbnN0IGtleSA9IGNvbXBsZXggPyBpdGVtW3RoaXMudmFsdWVGaWVsZF0gOiBgJHtpdGVtfWA7XG4gICAgY29uc3QgY2FjaGVLZXkgPSBgay0ke2tleX1gO1xuICAgIGNvbnN0IGhhc1RleHQgPSAhY29tcGxleCB8fCBpdGVtW3RoaXMudGV4dEZpZWxkXSAhPSBudWxsO1xuICAgIC8vXG4gICAgaWYgKHRoaXMuZGF0YVNlcnZpY2UuY2FjaGVMaXN0W2NhY2hlS2V5XSAmJiB0aGlzLmRhdGFTZXJ2aWNlLmNhY2hlTGlzdFtjYWNoZUtleV1bdGhpcy50ZXh0RmllbGRdKVxuICAgICAgcmV0dXJuIHRoaXMuZGF0YVNlcnZpY2UuY2FjaGVMaXN0W2NhY2hlS2V5XTtcbiAgICAvL1xuICAgIGNvbnN0IG9iajogdW5rbm93biA9IHt9O1xuICAgIGlmIChjb21wbGV4ICYmIGhhc1RleHQpIHtcbiAgICAgIE9iamVjdC5hc3NpZ24ob2JqLCBpdGVtKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgZXhpc3RzSXRlbSA9IGZpbmRCeWtleSA/IHRoaXMuZ2V0SXRlbUJ5S2V5KGtleSkgOiBudWxsO1xuICAgICAgaWYgKGV4aXN0c0l0ZW0gJiYgZXhpc3RzSXRlbSBpbnN0YW5jZW9mIFByb21pc2UpIHtcbiAgICAgICAgb2JqW3RoaXMudmFsdWVGaWVsZF0gPSBrZXk7XG4gICAgICAgIG9ialsnaXNMb2FkaW5nJ10gPSB0cnVlO1xuICAgICAgICBvYmpbdGhpcy50ZXh0RmllbGRdID0gJ0xvYWRpbmcnO1xuICAgICAgICAvL1xuICAgICAgICBleGlzdHNJdGVtXG4gICAgICAgICAgLnRoZW4oKHIpID0+IHtcbiAgICAgICAgICAgIGlmICh0eXBlb2YgciA9PT0gJ29iamVjdCcgJiYgcikge1xuICAgICAgICAgICAgICAvLyBvYmpbdGhpcy52YWx1ZUZpZWxkXSA9IHJbdGhpcy52YWx1ZUZpZWxkXTtcbiAgICAgICAgICAgICAgLy8gb2JqW3RoaXMudGV4dEZpZWxkXSA9IHJbdGhpcy50ZXh0RmllbGRdO1xuICAgICAgICAgICAgICBPYmplY3QuYXNzaWduKG9iaiwgY2xvbmVEZWVwKHIpKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIG9ialt0aGlzLnZhbHVlRmllbGRdID0gciB8fCBrZXk7XG4gICAgICAgICAgICAgIG9ialt0aGlzLnRleHRGaWVsZF0gPSByO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pXG4gICAgICAgICAgLmZpbmFsbHkoKCkgPT4ge1xuICAgICAgICAgICAgZGVsZXRlIG9ialsnaXNMb2FkaW5nJ107XG4gICAgICAgICAgICB0aGlzLmRhdGFTZXJ2aWNlLmNhY2hlTGlzdFtjYWNoZUtleV0gPSBvYmo7XG4gICAgICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSBpZiAoZXhpc3RzSXRlbSkge1xuICAgICAgICBvYmpbdGhpcy52YWx1ZUZpZWxkXSA9IGNvbXBsZXggPyBleGlzdHNJdGVtW3RoaXMudmFsdWVGaWVsZF0gOiBleGlzdHNJdGVtO1xuICAgICAgICBvYmpbdGhpcy50ZXh0RmllbGRdID0gY29tcGxleCA/IGV4aXN0c0l0ZW1bdGhpcy50ZXh0RmllbGRdIDogZXhpc3RzSXRlbTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG9ialt0aGlzLnZhbHVlRmllbGRdID0gY29tcGxleCA/IGl0ZW1bdGhpcy52YWx1ZUZpZWxkXSA6IGl0ZW07XG4gICAgICAgIG9ialt0aGlzLnRleHRGaWVsZF0gPSBjb21wbGV4ID8gaXRlbVt0aGlzLnRleHRGaWVsZF0gOiBpdGVtO1xuICAgICAgfVxuICAgIH1cbiAgICB0aGlzLmRhdGFTZXJ2aWNlLmNhY2hlTGlzdFtjYWNoZUtleV0gPSBvYmo7XG4gICAgcmV0dXJuIG9iajtcbiAgfVxuXG4gIHByaXZhdGUgX25vcm1hbGl6ZVNlbGVjdGVkSXRlbXMoKSB7XG4gICAgY29uc3QgdmFsdWVzID0gQXJyYXkuaXNBcnJheSh0aGlzLnZhbHVlKSA/IHRoaXMudmFsdWUgOiB0aGlzLnZhbHVlICE9IG51bGwgPyBbdGhpcy52YWx1ZV0gOiBbXTtcbiAgICB0aGlzLmRhdGFTZXJ2aWNlLnNlbGVjdGVkSXRlbXMgPSB2YWx1ZXMubWFwKCh2KSA9PiB0aGlzLm5vcm1hbGl6ZUl0ZW0odikpO1xuICB9XG5cbiAgcHVibGljIHVuc2VsZWN0SXRlbXMoLi4uaXRlbXM6IFRbXSkge1xuICAgIGlmICghaXRlbXMgfHwgaXRlbXMubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aGlzLmNvbW1pdFZhbHVlKFtdLCB0cnVlKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3Qgbm9ybWFsaXplSXRlbXMgPSBBcnJheS5pc0FycmF5KGl0ZW1zKSA/IHRoaXMubm9ybWFsaXplSXRlbXNMaXN0KGl0ZW1zKSA6IFt0aGlzLm5vcm1hbGl6ZUl0ZW0oaXRlbXMpXTtcbiAgICBjb25zdCBuZXdTZWxlY3RlZEl0ZW1zID0gdGhpcy5zZWxlY3RlZEl0ZW1zLmZpbHRlcihcbiAgICAgIChpKSA9PiAhbm9ybWFsaXplSXRlbXMuc29tZSgobikgPT4gblt0aGlzLnZhbHVlRmllbGRdID09IGlbdGhpcy52YWx1ZUZpZWxkXSksXG4gICAgKTtcbiAgICB0aGlzLmNvbW1pdFZhbHVlKG5ld1NlbGVjdGVkSXRlbXMsIHRydWUpO1xuICB9XG5cbiAgcHVibGljIHNlbGVjdEl0ZW1zKC4uLml0ZW1zOiBUW10pIHtcbiAgICBpZiAoaXRlbXMgJiYgaXRlbXMubGVuZ3RoKSB7XG4gICAgICBsZXQgbmV3U2VsZWN0ZWRJdGVtcyA9IEFycmF5LmlzQXJyYXkodGhpcy52YWx1ZSkgPyB0aGlzLnZhbHVlIDogW3RoaXMudmFsdWVdO1xuICAgICAgY29uc3Qgbm9ybWFsaXplSXRlbXMgPSBBcnJheS5pc0FycmF5KGl0ZW1zKSA/IHRoaXMubm9ybWFsaXplSXRlbXNMaXN0KGl0ZW1zKSA6IFt0aGlzLm5vcm1hbGl6ZUl0ZW0oaXRlbXMpXTtcbiAgICAgIGlmICh0aGlzLm11bHRpcGxlKSB7XG4gICAgICAgIG5ld1NlbGVjdGVkSXRlbXMgPSBbLi4ubmV3U2VsZWN0ZWRJdGVtcywgLi4ubm9ybWFsaXplSXRlbXNdO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbmV3U2VsZWN0ZWRJdGVtcyA9IG5vcm1hbGl6ZUl0ZW1zO1xuICAgICAgfVxuICAgICAgdGhpcy5jb21taXRWYWx1ZShuZXdTZWxlY3RlZEl0ZW1zLCB0cnVlKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgdG9nZ2xlU2VsZWN0KC4uLml0ZW1zOiBUW10pIHtcbiAgICBpdGVtcz8uZm9yRWFjaCgoaXRlbSkgPT4ge1xuICAgICAgaWYgKHRoaXMubXVsdGlwbGUpIHtcbiAgICAgICAgdGhpcy5pc0l0ZW1TZWxlY3RlZChpdGVtKSA/IHRoaXMudW5zZWxlY3RJdGVtcyhpdGVtKSA6IHRoaXMuc2VsZWN0SXRlbXMoaXRlbSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnNlbGVjdEl0ZW1zKGl0ZW0pO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGlzSXRlbVNlbGVjdGVkKGl0ZW06IFQpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zZWxlY3RlZEl0ZW1zLnNvbWUoKGMpID0+IGNbdGhpcy52YWx1ZUZpZWxkXSA9PT0gdGhpcy5ub3JtYWxpemVJdGVtKGl0ZW0pW3RoaXMudmFsdWVGaWVsZF0pO1xuICB9XG5cbiAgcHVibGljIGlzSXRlbURpc2FibGVkKGl0ZW06IFQpOiBib29sZWFuIHtcbiAgICByZXR1cm4gKFxuICAgICAgdGhpcy5kaXNhYmxlZCB8fFxuICAgICAgY29lcmNlQm9vbGVhblByb3BlcnR5KGl0ZW1bdGhpcy5kaXNhYmxlZEZpZWxkXSkgPT09IHRydWUgfHxcbiAgICAgICh0aGlzLmRpc2FibGVkQ2FsbGJhY2sgPyB0aGlzLmRpc2FibGVkQ2FsbGJhY2soeyBpdGVtLCBpbmRleDogLTEgfSkgOiBmYWxzZSlcbiAgICApO1xuICB9XG5cbiAgLy8gcHJvdGVjdGVkIGdldERpc3BsYXlUZXh0KGl0ZW06IFQpIHtcbiAgLy8gICBjb25zdCBub3JtYWxpemVJdGVtID0gdGhpcy5ub3JtYWxpemVJdGVtKGl0ZW0pIGFzIGFueTtcbiAgLy8gICByZXR1cm4gZm9ybWF0dGVkVGV4dCB8fCBub3JtYWxpemVJdGVtW3RoaXMudmFsdWVGaWVsZF07XG4gIC8vIH1cblxuICBwcm90ZWN0ZWQgZ2V0RGlzcGxheVRleHQoaXRlbTogVCkge1xuICAgIGNvbnN0IG5vcm1hbGl6ZUl0ZW0gPSB0aGlzLm5vcm1hbGl6ZUl0ZW0oaXRlbSkgYXMgYW55O1xuICAgIGNvbnN0IGZvcm1hdHRlZFRlbXBsYXRlID0gdGhpcy5mb3JtYXRTZXJ2aWNlLmZvcm1hdCh0aGlzLnRleHRUZW1wbGF0ZSwgJ3N0cmluZycsIG5vcm1hbGl6ZUl0ZW0pO1xuICAgIGlmICh0aGlzLnRleHRUZW1wbGF0ZSAmJiBmb3JtYXR0ZWRUZW1wbGF0ZSAhPSB0aGlzLnRleHRUZW1wbGF0ZSkgcmV0dXJuIGZvcm1hdHRlZFRlbXBsYXRlO1xuICAgIGVsc2UgcmV0dXJuIG5vcm1hbGl6ZUl0ZW1bdGhpcy50ZXh0RmllbGRdIHx8IG5vcm1hbGl6ZUl0ZW1bdGhpcy52YWx1ZUZpZWxkXTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRWYWx1ZShpdGVtOiBUKSB7XG4gICAgY29uc3Qgbm9ybWFsaXplSXRlbSA9IHRoaXMubm9ybWFsaXplSXRlbShpdGVtKSBhcyBhbnk7XG4gICAgcmV0dXJuIG5vcm1hbGl6ZUl0ZW1bdGhpcy52YWx1ZUZpZWxkXTtcbiAgfVxuXG4gIHByb3RlY3RlZCBjbGVhclNlbGVjdGlvbkNhY2hlKCkge1xuICAgIHRoaXMuZGF0YVNlcnZpY2UuY2FjaGVMaXN0ID0ge307XG4gICAgdGhpcy5kYXRhU2VydmljZS5zZWxlY3RlZEl0ZW1zID0gW107XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgc29mdENsZWFyU2VsZWN0aW9uQ2FjaGUoKSB7XG4gICAgdGhpcy5kYXRhU2VydmljZS5jYWNoZUxpc3QgPSB7fTtcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxufVxuIl19","import { Directive, EventEmitter, Input, Output, inject } from '@angular/core';\nimport { NgModel } from '@angular/forms';\nimport { debounceTime, distinctUntilChanged, skip } from 'rxjs';\nimport * as i0 from \"@angular/core\";\nexport class AXNgModelDelayedValueChangedDirective {\n get delayTime() {\n return this._delayTime;\n }\n set delayTime(v) {\n if (v != this._delayTime) {\n this._delayTime = v;\n this.axDelayTimeChange.emit(v);\n this.update();\n }\n }\n ngOnDestroy() {\n this.subscription?.unsubscribe();\n }\n constructor() {\n this.ngModel = inject(NgModel);\n this.axDelayedValueChanged = new EventEmitter();\n this.axDelayTimeChange = new EventEmitter();\n this._delayTime = 0;\n this.delayTime = 0;\n }\n update() {\n this.subscription?.unsubscribe();\n //\n this.subscription = this.ngModel.control.valueChanges\n .pipe(skip(1), // skip initial value\n distinctUntilChanged(), debounceTime(this.delayTime))\n .subscribe((value) => this.axDelayedValueChanged.emit(value));\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXNgModelDelayedValueChangedDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.1.2\", type: AXNgModelDelayedValueChangedDirective, isStandalone: true, selector: \"[axDelayedValueChanged]\", inputs: { delayTime: \"delayTime\" }, outputs: { axDelayedValueChanged: \"axDelayedValueChanged\", axDelayTimeChange: \"axDelayTimeChange\" }, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXNgModelDelayedValueChangedDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[axDelayedValueChanged]',\n }]\n }], ctorParameters: () => [], propDecorators: { axDelayedValueChanged: [{\n type: Output\n }], axDelayTimeChange: [{\n type: Output\n }], delayTime: [{\n type: Input\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsYXllZC12YWx1ZS1jaGFuZ2VkLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2Nkay9jb21tb24vc3JjL2xpYi9kaXJlY3RpdmVzL2RlbGF5ZWQtdmFsdWUtY2hhbmdlZC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFhLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUYsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pDLE9BQU8sRUFBZ0IsWUFBWSxFQUFFLG9CQUFvQixFQUFFLElBQUksRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFLOUUsTUFBTSxPQUFPLHFDQUFxQztJQVVoRCxJQUNXLFNBQVM7UUFDbEIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3pCLENBQUM7SUFDRCxJQUFXLFNBQVMsQ0FBQyxDQUFTO1FBQzVCLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUN6QixJQUFJLENBQUMsVUFBVSxHQUFHLENBQUMsQ0FBQztZQUNwQixJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQy9CLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNoQixDQUFDO0lBQ0gsQ0FBQztJQUlELFdBQVc7UUFDVCxJQUFJLENBQUMsWUFBWSxFQUFFLFdBQVcsRUFBRSxDQUFDO0lBQ25DLENBQUM7SUFFRDtRQTNCUSxZQUFPLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBR2xDLDBCQUFxQixHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFHaEQsc0JBQWlCLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUV2QyxlQUFVLEdBQUcsQ0FBQyxDQUFDO1FBb0JyQixJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRU8sTUFBTTtRQUNaLElBQUksQ0FBQyxZQUFZLEVBQUUsV0FBVyxFQUFFLENBQUM7UUFDakMsRUFBRTtRQUNGLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsWUFBWTthQUNsRCxJQUFJLENBQ0gsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLHFCQUFxQjtRQUM5QixvQkFBb0IsRUFBRSxFQUN0QixZQUFZLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUM3QjthQUNBLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2xFLENBQUM7OEdBMUNVLHFDQUFxQztrR0FBckMscUNBQXFDOzsyRkFBckMscUNBQXFDO2tCQUhqRCxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx5QkFBeUI7aUJBQ3BDO3dEQUtDLHFCQUFxQjtzQkFEcEIsTUFBTTtnQkFJUCxpQkFBaUI7c0JBRGhCLE1BQU07Z0JBS0ksU0FBUztzQkFEbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25EZXN0cm95LCBPdXRwdXQsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmdNb2RlbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiwgZGVib3VuY2VUaW1lLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgc2tpcCB9IGZyb20gJ3J4anMnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbYXhEZWxheWVkVmFsdWVDaGFuZ2VkXScsXG59KVxuZXhwb3J0IGNsYXNzIEFYTmdNb2RlbERlbGF5ZWRWYWx1ZUNoYW5nZWREaXJlY3RpdmUgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBwcml2YXRlIG5nTW9kZWwgPSBpbmplY3QoTmdNb2RlbCk7XG5cbiAgQE91dHB1dCgpXG4gIGF4RGVsYXllZFZhbHVlQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIEBPdXRwdXQoKVxuICBheERlbGF5VGltZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuXG4gIHByaXZhdGUgX2RlbGF5VGltZSA9IDA7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBnZXQgZGVsYXlUaW1lKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX2RlbGF5VGltZTtcbiAgfVxuICBwdWJsaWMgc2V0IGRlbGF5VGltZSh2OiBudW1iZXIpIHtcbiAgICBpZiAodiAhPSB0aGlzLl9kZWxheVRpbWUpIHtcbiAgICAgIHRoaXMuX2RlbGF5VGltZSA9IHY7XG4gICAgICB0aGlzLmF4RGVsYXlUaW1lQ2hhbmdlLmVtaXQodik7XG4gICAgICB0aGlzLnVwZGF0ZSgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLmRlbGF5VGltZSA9IDA7XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZSgpIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgICAvL1xuICAgIHRoaXMuc3Vic2NyaXB0aW9uID0gdGhpcy5uZ01vZGVsLmNvbnRyb2wudmFsdWVDaGFuZ2VzXG4gICAgICAucGlwZShcbiAgICAgICAgc2tpcCgxKSwgLy8gc2tpcCBpbml0aWFsIHZhbHVlXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICAgIGRlYm91bmNlVGltZSh0aGlzLmRlbGF5VGltZSksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCh2YWx1ZSkgPT4gdGhpcy5heERlbGF5ZWRWYWx1ZUNoYW5nZWQuZW1pdCh2YWx1ZSkpO1xuICB9XG59XG4iXX0=","import { isPlatformBrowser } from '@angular/common';\nimport { Directive, PLATFORM_ID, ViewContainerRef, afterNextRender, effect, inject, input } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class AXInvertedColorDirective {\n constructor() {\n this.color = input.required(...(ngDevMode ? [{ debugName: \"color\" }] : []));\n this.ref = inject(ViewContainerRef);\n this.platformID = inject(PLATFORM_ID);\n afterNextRender(() => {\n this.invertColor();\n });\n effect(() => {\n this.invertColor();\n });\n }\n invertColor() {\n let color;\n let foreColor;\n const invertedVariables = [];\n if (isPlatformBrowser(this.platformID)) {\n if (this.color() === 'default') {\n color = getComputedStyle(document.documentElement).getPropertyValue(`--ax-color-${this.color()}`);\n foreColor = getComputedStyle(document.documentElement).getPropertyValue(`--ax-color-${this.color()}-fore`);\n invertedVariables.push({ name: `--ax-color-ghost`, value: `${foreColor}` });\n invertedVariables.push({ name: `--ax-color-ghost-fore`, value: `${color}` });\n }\n else {\n const range = [50, 100, 200, 300, 400, 500, 600, 700, 800, 900, 950];\n color = getComputedStyle(document.documentElement).getPropertyValue(`--ax-color-${this.color()}-500`);\n foreColor = getComputedStyle(document.documentElement).getPropertyValue(`--ax-color-${this.color()}-fore`);\n range.forEach((c) => {\n invertedVariables.push({ name: `--ax-color-${this.color()}-${c}`, value: `${foreColor}` });\n });\n invertedVariables.push({ name: `--ax-color-${this.color()}-fore`, value: `${color}` });\n invertedVariables.push({ name: `--ax-color-${this.color()}-fore-tint`, value: `${color}` });\n }\n invertedVariables.forEach((c) => {\n this.ref.element.nativeElement.style.setProperty(c.name, c.value);\n });\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXInvertedColorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.1.2\", type: AXInvertedColorDirective, isStandalone: true, selector: \"[axInvertedColor]\", inputs: { color: { classPropertyName: \"color\", publicName: \"color\", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXInvertedColorDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[axInvertedColor]',\n }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW52ZXJ0ZWQtY29sb3IuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY2RrL2NvbW1vbi9zcmMvbGliL2RpcmVjdGl2ZXMvaW52ZXJ0ZWQtY29sb3IuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFFLGVBQWUsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFNakgsTUFBTSxPQUFPLHdCQUF3QjtJQUluQztRQUhBLFVBQUssR0FBRyxLQUFLLENBQUMsUUFBUSxnREFBb0IsQ0FBQztRQUMzQyxRQUFHLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDdkIsZUFBVSxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUV2QyxlQUFlLENBQUMsR0FBRyxFQUFFO1lBQ25CLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNyQixDQUFDLENBQUMsQ0FBQztRQUNILE1BQU0sQ0FBQyxHQUFHLEVBQUU7WUFDVixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDckIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRVMsV0FBVztRQUNuQixJQUFJLEtBQUssQ0FBQztRQUNWLElBQUksU0FBUyxDQUFDO1FBQ2QsTUFBTSxpQkFBaUIsR0FBRyxFQUFFLENBQUM7UUFFN0IsSUFBSSxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQztZQUN2QyxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsS0FBSyxTQUFTLEVBQUUsQ0FBQztnQkFDL0IsS0FBSyxHQUFHLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0JBQ2xHLFNBQVMsR0FBRyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLENBQUMsZ0JBQWdCLENBQUMsY0FBYyxJQUFJLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDO2dCQUMzRyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsa0JBQWtCLEVBQUUsS0FBSyxFQUFFLEdBQUcsU0FBUyxFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUM1RSxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsdUJBQXVCLEVBQUUsS0FBSyxFQUFFLEdBQUcsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQy9FLENBQUM7aUJBQU0sQ0FBQztnQkFDTixNQUFNLEtBQUssR0FBRyxDQUFDLEVBQUUsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztnQkFFckUsS0FBSyxHQUFHLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLElBQUksQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUM7Z0JBQ3RHLFNBQVMsR0FBRyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLENBQUMsZ0JBQWdCLENBQUMsY0FBYyxJQUFJLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDO2dCQUMzRyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7b0JBQ2xCLGlCQUFpQixDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxjQUFjLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRSxLQUFLLEVBQUUsR0FBRyxTQUFTLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0JBQzdGLENBQUMsQ0FBQyxDQUFDO2dCQUNILGlCQUFpQixDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxjQUFjLElBQUksQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxHQUFHLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFDdkYsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLGNBQWMsSUFBSSxDQUFDLEtBQUssRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLEdBQUcsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQzlGLENBQUM7WUFFRCxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQkFDN0IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsYUFBNkIsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3JGLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUNILENBQUM7OEdBeENVLHdCQUF3QjtrR0FBeEIsd0JBQXdCOzsyRkFBeEIsd0JBQXdCO2tCQUhwQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxtQkFBbUI7aUJBQzlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRGlyZWN0aXZlLCBQTEFURk9STV9JRCwgVmlld0NvbnRhaW5lclJlZiwgYWZ0ZXJOZXh0UmVuZGVyLCBlZmZlY3QsIGluamVjdCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYU3R5bGVDb2xvclR5cGUgfSBmcm9tICcuLi9jbGFzc2VzL3N0eWxlcy5jbGFzcyc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1theEludmVydGVkQ29sb3JdJyxcbn0pXG5leHBvcnQgY2xhc3MgQVhJbnZlcnRlZENvbG9yRGlyZWN0aXZlIHtcbiAgY29sb3IgPSBpbnB1dC5yZXF1aXJlZDxBWFN0eWxlQ29sb3JUeXBlPigpO1xuICByZWYgPSBpbmplY3QoVmlld0NvbnRhaW5lclJlZik7XG4gIHByaXZhdGUgcGxhdGZvcm1JRCA9IGluamVjdChQTEFURk9STV9JRCk7XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIGFmdGVyTmV4dFJlbmRlcigoKSA9PiB7XG4gICAgICB0aGlzLmludmVydENvbG9yKCk7XG4gICAgfSk7XG4gICAgZWZmZWN0KCgpID0+IHtcbiAgICAgIHRoaXMuaW52ZXJ0Q29sb3IoKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBpbnZlcnRDb2xvcigpIHtcbiAgICBsZXQgY29sb3I7XG4gICAgbGV0IGZvcmVDb2xvcjtcbiAgICBjb25zdCBpbnZlcnRlZFZhcmlhYmxlcyA9IFtdO1xuXG4gICAgaWYgKGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JRCkpIHtcbiAgICAgIGlmICh0aGlzLmNvbG9yKCkgPT09ICdkZWZhdWx0Jykge1xuICAgICAgICBjb2xvciA9IGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KS5nZXRQcm9wZXJ0eVZhbHVlKGAtLWF4LWNvbG9yLSR7dGhpcy5jb2xvcigpfWApO1xuICAgICAgICBmb3JlQ29sb3IgPSBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCkuZ2V0UHJvcGVydHlWYWx1ZShgLS1heC1jb2xvci0ke3RoaXMuY29sb3IoKX0tZm9yZWApO1xuICAgICAgICBpbnZlcnRlZFZhcmlhYmxlcy5wdXNoKHsgbmFtZTogYC0tYXgtY29sb3ItZ2hvc3RgLCB2YWx1ZTogYCR7Zm9yZUNvbG9yfWAgfSk7XG4gICAgICAgIGludmVydGVkVmFyaWFibGVzLnB1c2goeyBuYW1lOiBgLS1heC1jb2xvci1naG9zdC1mb3JlYCwgdmFsdWU6IGAke2NvbG9yfWAgfSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCByYW5nZSA9IFs1MCwgMTAwLCAyMDAsIDMwMCwgNDAwLCA1MDAsIDYwMCwgNzAwLCA4MDAsIDkwMCwgOTUwXTtcblxuICAgICAgICBjb2xvciA9IGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KS5nZXRQcm9wZXJ0eVZhbHVlKGAtLWF4LWNvbG9yLSR7dGhpcy5jb2xvcigpfS01MDBgKTtcbiAgICAgICAgZm9yZUNvbG9yID0gZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQpLmdldFByb3BlcnR5VmFsdWUoYC0tYXgtY29sb3ItJHt0aGlzLmNvbG9yKCl9LWZvcmVgKTtcbiAgICAgICAgcmFuZ2UuZm9yRWFjaCgoYykgPT4ge1xuICAgICAgICAgIGludmVydGVkVmFyaWFibGVzLnB1c2goeyBuYW1lOiBgLS1heC1jb2xvci0ke3RoaXMuY29sb3IoKX0tJHtjfWAsIHZhbHVlOiBgJHtmb3JlQ29sb3J9YCB9KTtcbiAgICAgICAgfSk7XG4gICAgICAgIGludmVydGVkVmFyaWFibGVzLnB1c2goeyBuYW1lOiBgLS1heC1jb2xvci0ke3RoaXMuY29sb3IoKX0tZm9yZWAsIHZhbHVlOiBgJHtjb2xvcn1gIH0pO1xuICAgICAgICBpbnZlcnRlZFZhcmlhYmxlcy5wdXNoKHsgbmFtZTogYC0tYXgtY29sb3ItJHt0aGlzLmNvbG9yKCl9LWZvcmUtdGludGAsIHZhbHVlOiBgJHtjb2xvcn1gIH0pO1xuICAgICAgfVxuXG4gICAgICBpbnZlcnRlZFZhcmlhYmxlcy5mb3JFYWNoKChjKSA9PiB7XG4gICAgICAgICh0aGlzLnJlZi5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQpLnN0eWxlLnNldFByb3BlcnR5KGMubmFtZSwgYy52YWx1ZSk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==","import { isPlatformBrowser } from '@angular/common';\nimport { ChangeDetectorRef, Directive, DOCUMENT, ElementRef, inject, Input, PLATFORM_ID, } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class AXRippleDirective {\n constructor() {\n this.el = inject(ElementRef);\n this.cdr = inject(ChangeDetectorRef);\n this.enabled = true;\n this.axRippleColor = 'var(--ax-comp-ripple-bg-color, rgba(255, 255, 255, 0.3))';\n this.document = inject(DOCUMENT);\n this.platformID = inject(PLATFORM_ID);\n }\n ngOnInit() {\n if (this.enabled) {\n this.el.nativeElement.addEventListener('click', (event) => {\n this.onElementClick(event);\n });\n }\n }\n ngOnDestroy() {\n this.el.nativeElement.removeEventListener('click', this.createRipple.bind(this));\n }\n onElementClick(event) {\n this.createRipple(event);\n }\n createRipple(event) {\n const element = event.currentTarget;\n const exists = element.querySelector('.ax-ripple');\n if (exists)\n exists.remove();\n this.el.nativeElement.style.overflow = 'hidden';\n const rect = element.getBoundingClientRect();\n const x = Math.floor(((event.clientX - rect.left) / (rect.right - rect.left)) * element.clientWidth);\n const y = Math.floor(((event.clientY - rect.top) / (rect.bottom - rect.top)) * element.clientHeight);\n if (isPlatformBrowser(this.platformID)) {\n const circle = this.document.createElement('span');\n const diameter = Math.max(element.clientWidth, element.clientHeight);\n const radius = diameter / 2;\n circle.style.width = circle.style.height = `${diameter}px`;\n circle.style.left = `${x - radius}px`;\n circle.style.top = `${y - radius}px`;\n circle.style.backgroundColor = `${this.axRippleColor}`;\n circle.classList.add('ax-ripple');\n element.appendChild(circle);\n circle.addEventListener('animationend', () => {\n circle?.remove();\n });\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXRippleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.1.2\", type: AXRippleDirective, isStandalone: true, selector: \"[axRipple]\", inputs: { enabled: [\"axRipple\", \"enabled\"], axRippleColor: \"axRippleColor\" }, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.2\", ngImport: i0, type: AXRippleDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[axRipple]',\n }]\n }], propDecorators: { enabled: [{\n type: Input,\n args: ['axRipple']\n }], axRippleColor: [{\n type: Input\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmlwcGxlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2Nkay9jb21tb24vc3JjL2xpYi9kaXJlY3RpdmVzL3JpcHBsZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDcEQsT0FBTyxFQUNMLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsUUFBUSxFQUNSLFVBQVUsRUFDVixNQUFNLEVBQ04sS0FBSyxFQUVMLFdBQVcsR0FDWixNQUFNLGVBQWUsQ0FBQzs7QUFLdkIsTUFBTSxPQUFPLGlCQUFpQjtJQUg5QjtRQUlVLE9BQUUsR0FBRyxNQUFNLENBQTBCLFVBQVUsQ0FBQyxDQUFDO1FBQ2pELFFBQUcsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUdqQyxZQUFPLEdBQWEsSUFBSSxDQUFDO1FBRXZCLGtCQUFhLEdBQUcsMERBQTBELENBQUM7UUFHNUUsYUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM1QixlQUFVLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0tBMkMxQztJQXpDQyxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDakIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLENBQUMsS0FBaUIsRUFBRSxFQUFFO2dCQUNwRSxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzdCLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUNILENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsbUJBQW1CLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDbkYsQ0FBQztJQUVPLGNBQWMsQ0FBQyxLQUFpQjtRQUN0QyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFTyxZQUFZLENBQUMsS0FBaUI7UUFDcEMsTUFBTSxPQUFPLEdBQUcsS0FBSyxDQUFDLGFBQTRCLENBQUM7UUFDbkQsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNuRCxJQUFJLE1BQU07WUFBRSxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7UUFFNUIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7UUFDaEQsTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLHFCQUFxQixFQUFFLENBQUM7UUFDN0MsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNyRyxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ3JHLElBQUksaUJBQWlCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUM7WUFDdkMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDbkQsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUNyRSxNQUFNLE1BQU0sR0FBRyxRQUFRLEdBQUcsQ0FBQyxDQUFDO1lBRTVCLE1BQU0sQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLEdBQUcsUUFBUSxJQUFJLENBQUM7WUFDM0QsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUFDLEdBQUcsTUFBTSxJQUFJLENBQUM7WUFDdEMsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDLEdBQUcsTUFBTSxJQUFJLENBQUM7WUFDckMsTUFBTSxDQUFDLEtBQUssQ0FBQyxlQUFlLEdBQUcsR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDdkQsTUFBTSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDbEMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUM1QixNQUFNLENBQUMsZ0JBQWdCLENBQUMsY0FBYyxFQUFFLEdBQUcsRUFBRTtnQkFDM0MsTUFBTSxFQUFFLE1BQU0sRUFBRSxDQUFDO1lBQ25CLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUNILENBQUM7OEdBckRVLGlCQUFpQjtrR0FBakIsaUJBQWlCOzsyRkFBakIsaUJBQWlCO2tCQUg3QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxZQUFZO2lCQUN2Qjs4QkFNUSxPQUFPO3NCQURiLEtBQUs7dUJBQUMsVUFBVTtnQkFHUixhQUFhO3NCQUFyQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIERpcmVjdGl2ZSxcbiAgRE9DVU1FTlQsXG4gIEVsZW1lbnRSZWYsXG4gIGluamVjdCxcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgUExBVEZPUk1fSUQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbYXhSaXBwbGVdJyxcbn0pXG5leHBvcnQgY2xhc3MgQVhSaXBwbGVEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBwcml2YXRlIGVsID0gaW5qZWN0PEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+PihFbGVtZW50UmVmKTtcbiAgcHJpdmF0ZSBjZHIgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuXG4gIEBJbnB1dCgnYXhSaXBwbGUnKVxuICBwdWJsaWMgZW5hYmxlZD86IGJvb2xlYW4gPSB0cnVlO1xuXG4gIEBJbnB1dCgpIGF4UmlwcGxlQ29sb3IgPSAndmFyKC0tYXgtY29tcC1yaXBwbGUtYmctY29sb3IsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKSknO1xuXG4gIHJpcHBsZTogSFRNTFNwYW5FbGVtZW50IHwgbnVsbDtcbiAgcHJpdmF0ZSBkb2N1bWVudCA9IGluamVjdChET0NVTUVOVCk7XG4gIHByaXZhdGUgcGxhdGZvcm1JRCA9IGluamVjdChQTEFURk9STV9JRCk7XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgaWYgKHRoaXMuZW5hYmxlZCkge1xuICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKGV2ZW50OiBNb3VzZUV2ZW50KSA9PiB7XG4gICAgICAgIHRoaXMub25FbGVtZW50Q2xpY2soZXZlbnQpO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgdGhpcy5jcmVhdGVSaXBwbGUuYmluZCh0aGlzKSk7XG4gIH1cblxuICBwcml2YXRlIG9uRWxlbWVudENsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgdGhpcy5jcmVhdGVSaXBwbGUoZXZlbnQpO1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVSaXBwbGUoZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICBjb25zdCBlbGVtZW50ID0gZXZlbnQuY3VycmVudFRhcmdldCBhcyBIVE1MRWxlbWVudDtcbiAgICBjb25zdCBleGlzdHMgPSBlbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJy5heC1yaXBwbGUnKTtcbiAgICBpZiAoZXhpc3RzKSBleGlzdHMucmVtb3ZlKCk7XG5cbiAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUub3ZlcmZsb3cgPSAnaGlkZGVuJztcbiAgICBjb25zdCByZWN0ID0gZWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICBjb25zdCB4ID0gTWF0aC5mbG9vcigoKGV2ZW50LmNsaWVudFggLSByZWN0LmxlZnQpIC8gKHJlY3QucmlnaHQgLSByZWN0LmxlZnQpKSAqIGVsZW1lbnQuY2xpZW50V2lkdGgpO1xuICAgIGNvbnN0IHkgPSBNYXRoLmZsb29yKCgoZXZlbnQuY2xpZW50WSAtIHJlY3QudG9wKSAvIChyZWN0LmJvdHRvbSAtIHJlY3QudG9wKSkgKiBlbGVtZW50LmNsaWVudEhlaWdodCk7XG4gICAgaWYgKGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JRCkpIHtcbiAgICAgIGNvbnN0IGNpcmNsZSA9IHRoaXMuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc3BhbicpO1xuICAgICAgY29uc3QgZGlhbWV0ZXIgPSBNYXRoLm1heChlbGVtZW50LmNsaWVudFdpZHRoLCBlbGVtZW50LmNsaWVudEhlaWdodCk7XG4gICAgICBjb25zdCByYWRpdXMgPSBkaWFtZXRlciAvIDI7XG5cbiAgICAgIGNpcmNsZS5zdHlsZS53aWR0aCA9IGNpcmNsZS5zdHlsZS5oZWlnaHQgPSBgJHtkaWFtZXRlcn1weGA7XG4gICAgICBjaXJjbGUuc3R5bGUubGVmdCA9IGAke3ggLSByYWRpdXN9cHhgO1xuICAgICAgY2lyY2xlLnN0eWxlLnRvcCA9IGAke3kgLSByYWRpdXN9cHhgO1xuICAgICAgY2lyY2xlLnN0eWxlLmJhY2tncm91bmRDb2xvciA9IGAke3RoaXMuYXhSaXBwbGVDb2xvcn1gO1xuICAgICAgY2lyY2xlLmNsYXNzTGlzdC5hZGQoJ2F4LXJpcHBsZScpO1xuICAgICAgZWxlbWVudC5hcHBlbmRDaGlsZChjaXJjbGUpO1xuICAgICAgY2lyY2xlLmFkZEV2ZW50TGlzdGVuZXIoJ2FuaW1hdGlvbmVuZCcsICgpID0+IHtcbiAgICAgICAgY2lyY2xlPy5yZW1vdmUoKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxufVxuIl19","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LWNkay1jb21tb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jZGsvY29tbW9uL3NyYy9hY29yZXgtY2RrLWNvbW1vbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":"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"}
|