@acorex/components 20.2.21 → 20.2.23
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/autocomplete/index.d.ts +13 -9
 - package/drawer/README.md +2 -2
 - package/drawer/index.d.ts +32 -57
 - package/drawer-legacy/README.md +3 -0
 - package/drawer-legacy/index.d.ts +86 -0
 - package/fesm2022/acorex-components-autocomplete.mjs +13 -6
 - package/fesm2022/acorex-components-autocomplete.mjs.map +1 -1
 - package/fesm2022/acorex-components-color-palette.mjs +1 -1
 - package/fesm2022/acorex-components-color-palette.mjs.map +1 -1
 - package/fesm2022/acorex-components-data-pager.mjs +1 -1
 - package/fesm2022/acorex-components-data-pager.mjs.map +1 -1
 - package/fesm2022/acorex-components-drawer-legacy.mjs +218 -0
 - package/fesm2022/acorex-components-drawer-legacy.mjs.map +1 -0
 - package/fesm2022/acorex-components-drawer.mjs +58 -143
 - package/fesm2022/acorex-components-drawer.mjs.map +1 -1
 - package/fesm2022/acorex-components-file-explorer.mjs +1 -1
 - package/fesm2022/acorex-components-file-explorer.mjs.map +1 -1
 - package/fesm2022/acorex-components-map.mjs +1 -0
 - package/fesm2022/acorex-components-map.mjs.map +1 -1
 - package/fesm2022/acorex-components-media-viewer.mjs +2 -2
 - package/fesm2022/acorex-components-media-viewer.mjs.map +1 -1
 - package/fesm2022/{acorex-components-modal-acorex-components-modal-ClSGRCam.mjs → acorex-components-modal-acorex-components-modal-BLjJGxLT.mjs} +2 -2
 - package/fesm2022/{acorex-components-modal-acorex-components-modal-ClSGRCam.mjs.map → acorex-components-modal-acorex-components-modal-BLjJGxLT.mjs.map} +1 -1
 - package/fesm2022/{acorex-components-modal-modal-content.component-BC-z7O0z.mjs → acorex-components-modal-modal-content.component-CC_L42pt.mjs} +4 -4
 - package/fesm2022/acorex-components-modal-modal-content.component-CC_L42pt.mjs.map +1 -0
 - package/fesm2022/acorex-components-modal.mjs +1 -1
 - package/fesm2022/acorex-components-number-box-legacy.mjs +412 -0
 - package/fesm2022/acorex-components-number-box-legacy.mjs.map +1 -0
 - package/fesm2022/acorex-components-number-box.mjs +97 -310
 - package/fesm2022/acorex-components-number-box.mjs.map +1 -1
 - package/fesm2022/acorex-components-query-builder.mjs +1 -1
 - package/fesm2022/acorex-components-query-builder.mjs.map +1 -1
 - package/fesm2022/acorex-components-rrule.mjs +101 -6
 - package/fesm2022/acorex-components-rrule.mjs.map +1 -1
 - package/fesm2022/acorex-components-tag-box.mjs +44 -14
 - package/fesm2022/acorex-components-tag-box.mjs.map +1 -1
 - package/fesm2022/acorex-components-tag.mjs +39 -3
 - package/fesm2022/acorex-components-tag.mjs.map +1 -1
 - package/number-box/README.md +2 -2
 - package/number-box/index.d.ts +31 -171
 - package/number-box-legacy/README.md +3 -0
 - package/number-box-legacy/index.d.ts +191 -0
 - package/package.json +17 -17
 - package/rrule/index.d.ts +96 -1
 - package/tag/index.d.ts +8 -2
 - package/tag-box/index.d.ts +12 -3
 - package/drawer-2/README.md +0 -3
 - package/drawer-2/index.d.ts +0 -62
 - package/fesm2022/acorex-components-drawer-2.mjs +0 -134
 - package/fesm2022/acorex-components-drawer-2.mjs.map +0 -1
 - package/fesm2022/acorex-components-modal-modal-content.component-BC-z7O0z.mjs.map +0 -1
 - package/fesm2022/acorex-components-number-box-2.mjs +0 -183
 - package/fesm2022/acorex-components-number-box-2.mjs.map +0 -1
 - package/number-box-2/README.md +0 -3
 - package/number-box-2/index.d.ts +0 -41
 
| 
         @@ -1 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            {"version":3,"file":"acorex-components-modal-modal-content.component-BC-z7O0z.mjs","sources":["../tmp-esm2022/modal/lib/modal-content/modal-content.component.js"],"sourcesContent":["import { AXComponent, NXComponent } from '@acorex/cdk/common';\nimport { AXFocusTrapDirective } from '@acorex/cdk/focus-trap';\nimport { AXButtonComponent } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { CommonModule } from '@angular/common';\nimport { afterNextRender, ChangeDetectionStrategy, Component, computed, effect, HostBinding, HostListener, inject, input, model, signal, TemplateRef, viewChild, ViewEncapsulation, } from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { AXModalFooterComponent } from '../modal-footer/modal-footer.component';\nimport { AXModalStateService } from '../modal-state.service';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@acorex/cdk/focus-trap\";\nimport * as i2 from \"@angular/common\";\nimport * as i3 from \"@acorex/components/decorators\";\nexport class AXModalContentComponent extends NXComponent {\n    constructor() {\n        super(...arguments);\n        this.__content__ = input.required(...(ngDevMode ? [{ debugName: \"__content__\" }] : []));\n        this.id = input(...(ngDevMode ? [undefined, { debugName: \"id\" }] : []));\n        this.inputs = model(...(ngDevMode ? [undefined, { debugName: \"inputs\" }] : []));\n        this.serviceState = inject(AXModalStateService);\n        this.sanitizer = inject(DomSanitizer);\n        this.modalContainer = viewChild('c', ...(ngDevMode ? [{ debugName: \"modalContainer\" }] : []));\n        this.footer = viewChild(AXModalFooterComponent, ...(ngDevMode ? [{ debugName: \"footer\" }] : []));\n        this.isTemplate = computed(() => this.__content__() instanceof TemplateRef, ...(ngDevMode ? [{ debugName: \"isTemplate\" }] : []));\n        this.isHtmlElement = computed(() => this.__content__() instanceof HTMLElement, ...(ngDevMode ? [{ debugName: \"isHtmlElement\" }] : []));\n        this.component = computed(() => this.__content__(), ...(ngDevMode ? [{ debugName: \"component\" }] : []));\n        this.template = computed(() => this.__content__(), ...(ngDevMode ? [{ debugName: \"template\" }] : []));\n        this.element = computed(() => this.__content__(), ...(ngDevMode ? [{ debugName: \"element\" }] : []));\n        this.modalSizeState = signal('normal', ...(ngDevMode ? [{ debugName: \"modalSizeState\" }] : []));\n        this.fullScreenState = signal(false, ...(ngDevMode ? [{ debugName: \"fullScreenState\" }] : []));\n        this.isMouseDown = signal(false, ...(ngDevMode ? [{ debugName: \"isMouseDown\" }] : []));\n        this.offsetX = signal(0, ...(ngDevMode ? [{ debugName: \"offsetX\" }] : []));\n        this.offsetY = signal(0, ...(ngDevMode ? [{ debugName: \"offsetY\" }] : []));\n        this.prevLeft = signal('', ...(ngDevMode ? [{ debugName: \"prevLeft\" }] : []));\n        this.prevTop = signal('', ...(ngDevMode ? [{ debugName: \"prevTop\" }] : []));\n        this.backdropState = computed(() => this.serviceState.modalOption()?.backdrop?.enabled ?? true, ...(ngDevMode ? [{ debugName: \"backdropState\" }] : []));\n        this.closeOnEscape = computed(() => this.serviceState.modalOption()?.closeOnEscape ?? true, ...(ngDevMode ? [{ debugName: \"closeOnEscape\" }] : []));\n        this.panelClass = computed(() => this.serviceState.modalOption()?.panelClass ?? '', ...(ngDevMode ? [{ debugName: \"panelClass\" }] : []));\n        this.headerState = computed(() => this.serviceState.modalOption()?.header ?? false, ...(ngDevMode ? [{ debugName: \"headerState\" }] : []));\n        this.footerState = computed(() => this.serviceState.modalOption()?.footer ?? false, ...(ngDevMode ? [{ debugName: \"footerState\" }] : []));\n        this.closeHeaderButton = computed(() => this.serviceState.modalOption()?.buttons?.close ?? true, ...(ngDevMode ? [{ debugName: \"closeHeaderButton\" }] : []));\n        this.backdropBackground = computed(() => this.serviceState.modalOption()?.backdrop?.background ?? true, ...(ngDevMode ? [{ debugName: \"backdropBackground\" }] : []));\n        this.backdropClass = computed(() => this.serviceState.modalOption()?.backdrop?.backdropClass ?? '', ...(ngDevMode ? [{ debugName: \"backdropClass\" }] : []));\n        this.backdropCloseOnClick = computed(() => this.serviceState.modalOption()?.backdrop?.closeOnClick ?? true, ...(ngDevMode ? [{ debugName: \"backdropCloseOnClick\" }] : []));\n        this.minimizePosition = computed(() => this.serviceState.modalOption()?.buttons?.minimize?.position ?? 'bottom-right', ...(ngDevMode ? [{ debugName: \"minimizePosition\" }] : []));\n        this.minimizeState = computed(() => this.serviceState.modalOption()?.buttons?.minimize?.enable ?? false, ...(ngDevMode ? [{ debugName: \"minimizeState\" }] : []));\n        this.maximizeState = computed(() => this.serviceState.modalOption()?.buttons?.maximize ?? false, ...(ngDevMode ? [{ debugName: \"maximizeState\" }] : []));\n        this.modalSize = computed(() => this.serviceState.modalOption()?.size ?? 'lg', ...(ngDevMode ? [{ debugName: \"modalSize\" }] : []));\n        this.headerTitle = computed(() => this.serviceState.modalOption()?.title ?? '', ...(ngDevMode ? [{ debugName: \"headerTitle\" }] : []));\n        this.draggable = computed(() => this.serviceState.modalOption()?.draggable ?? true, ...(ngDevMode ? [{ debugName: \"draggable\" }] : []));\n        this.#init = afterNextRender(() => {\n            this.nativeElement.focus();\n            const popFooter = this.nativeElement.querySelector('.ax-modal-footer');\n            const footer = this.nativeElement.querySelector('.ax-modal-content ax-modal-footer');\n            if (footer) {\n                popFooter?.append(footer);\n            }\n        });\n        this.#eff = effect(() => {\n            const host = this.nativeElement;\n            if (this.draggable())\n                host.classList.add('ax-draggable');\n            if (!this.backdropState())\n                return;\n            this.addBackdrop();\n            if (!this.backdropBackground())\n                return;\n        }, ...(ngDevMode ? [{ debugName: \"#eff\" }] : []));\n    }\n    #init;\n    close() {\n        this.serviceState.close(this.id());\n    }\n    minimize() {\n        if (this.fullScreenState())\n            document.exitFullscreen();\n        this.modalContainer().nativeElement.style.transition = 'all 200ms ease-out';\n        this.modalContainer().nativeElement.style.top = `auto`;\n        this.modalContainer().nativeElement.style.bottom = `0`;\n        if (this.backdropState())\n            this.removeBackdrop();\n        this.modalContainer().nativeElement.classList.remove('ax-normal-modal');\n        this.modalContainer().nativeElement.classList.add('ax-minimize-modal');\n        requestAnimationFrame(() => {\n            const width = this.modalContainer().nativeElement.offsetWidth;\n            const index = this.serviceState.getMapIndexOf(this.id());\n            if (this.minimizePosition() === 'bottom-right') {\n                this.modalContainer().nativeElement.style.left = `auto`;\n                this.modalContainer().nativeElement.style.right = `${index * (width + 10)}px`;\n            }\n            else {\n                this.modalContainer().nativeElement.style.right = `auto`;\n                this.modalContainer().nativeElement.style.left = `${index * (width + 10)}px`;\n            }\n        });\n        this.modalSizeState.set('minimize');\n    }\n    maximize() {\n        this.modalContainer().nativeElement.style.transition = 'none';\n        if (this.modalSizeState() === 'minimize')\n            this.restore();\n        if (!document.fullscreenElement) {\n            this.modalContainer().nativeElement.requestFullscreen();\n            this.fullScreenState.set(true);\n        }\n        else {\n            document.exitFullscreen();\n        }\n        document.addEventListener('fullscreenchange', () => {\n            if (!document.fullscreenElement) {\n                this.fullScreenState.set(false);\n            }\n        });\n    }\n    restore() {\n        setTimeout(() => {\n            this.modalContainer().nativeElement.style.transition = 'none';\n        }, 200);\n        if (this.fullScreenState()) {\n            document.exitFullscreen();\n            return;\n        }\n        this.modalContainer().nativeElement.style.bottom = `auto`;\n        this.modalContainer().nativeElement.style.right = `auto`;\n        this.modalContainer().nativeElement.style.left = this.prevLeft();\n        this.modalContainer().nativeElement.style.top = this.prevTop();\n        if (this.backdropState())\n            this.addBackdrop();\n        this.modalContainer().nativeElement.classList.remove(`ax-minimize-modal`);\n        this.modalContainer().nativeElement.classList.add('ax-normal-modal');\n        this.modalSizeState.set('normal');\n    }\n    pointerDownHandler(e) {\n        if (!this.draggable() || this.modalSizeState() === 'minimize' || this.fullScreenState())\n            return;\n        this.isMouseDown.set(true);\n        this.offsetX.set(e.clientX - this.modalContainer().nativeElement.offsetLeft);\n        this.offsetY.set(e.clientY - this.modalContainer().nativeElement.offsetTop);\n    }\n    addBackdrop() {\n        const backdropElem = document.createElement('div');\n        backdropElem.classList.add('ax-modal-drawer-backdrop');\n        if (this.backdropClass()) {\n            backdropElem.classList.add(...this.backdropClass().split(' '));\n        }\n        else {\n            backdropElem.classList.add('ax-default-backdrop');\n        }\n        backdropElem.addEventListener('pointerdown', (e) => {\n            if (!this.backdropCloseOnClick())\n                return;\n            if (e.target === e.currentTarget) {\n                this.close();\n            }\n        });\n        this.nativeElement.appendChild(backdropElem);\n    }\n    removeBackdrop() {\n        const backdropElem = this.nativeElement.querySelector('.ax-modal-drawer-backdrop');\n        if (backdropElem) {\n            backdropElem.remove();\n        }\n    }\n    pointerMoveHandler(e) {\n        if (!this.draggable() || this.modalSizeState() === 'minimize' || this.fullScreenState())\n            return;\n        if (!this.isMouseDown())\n            return;\n        this.modalContainer().nativeElement.style.left = `${e.clientX - this.offsetX()}px`;\n        this.modalContainer().nativeElement.style.top = `${e.clientY - this.offsetY()}px`;\n        this.prevLeft.set(`${e.clientX - this.offsetX()}px`);\n        this.prevTop.set(`${e.clientY - this.offsetY()}px`);\n    }\n    pointerUpHandler() {\n        if (!this.draggable() || this.modalSizeState() === 'minimize' || this.fullScreenState())\n            return;\n        this.isMouseDown.set(false);\n    }\n    get role() {\n        return '0';\n    }\n    escapeHandler(e) {\n        if (e.key === 'Escape' && this.closeOnEscape()) {\n            this.close();\n        }\n    }\n    #eff;\n    static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.6\", ngImport: i0, type: AXModalContentComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n    static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.3.6\", type: AXModalContentComponent, isStandalone: true, selector: \"ax-modal-content\", inputs: { __content__: { classPropertyName: \"__content__\", publicName: \"__content__\", isSignal: true, isRequired: true, transformFunction: null }, id: { classPropertyName: \"id\", publicName: \"id\", isSignal: true, isRequired: false, transformFunction: null }, inputs: { classPropertyName: \"inputs\", publicName: \"inputs\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { inputs: \"inputsChange\" }, host: { listeners: { \"pointermove\": \"pointerMoveHandler($event)\", \"pointerup\": \"pointerUpHandler($event)\", \"pointerleave\": \"pointerUpHandler($event)\", \"keydown\": \"escapeHandler($event)\" }, properties: { \"attr.tabindex\": \"this.role\" } }, providers: [{ provide: AXComponent, useExisting: AXModalContentComponent }], viewQueries: [{ propertyName: \"modalContainer\", first: true, predicate: [\"c\"], descendants: true, isSignal: true }, { propertyName: \"footer\", first: true, predicate: AXModalFooterComponent, descendants: true, isSignal: true }], usesInheritance: true, hostDirectives: [{ directive: i1.AXFocusTrapDirective }], ngImport: i0, template: \"<div\\n  #c\\n  class=\\\"ax-modal-container ax-{{ modalSizeState() }}-modal  ax-modal-{{ modalSize() }} {{ panelClass() }}\\\"\\n  animate.enter=\\\"ax-fade-slide-in\\\"\\n  animate.leave=\\\"ax-fade-slide-out\\\"\\n>\\n  @if (headerState()) {\\n    <div (pointerdown)=\\\"pointerDownHandler($event)\\\" class=\\\"ax-modal-header\\\">\\n      <ax-text>{{ headerTitle() }}</ax-text>\\n\\n      <div>\\n        @if (minimizeState()) {\\n          <ax-button class=\\\"ax-sm\\\" (onClick)=\\\"minimize()\\\" look=\\\"blank\\\" color=\\\"default\\\">\\n            <ax-icon class=\\\"ax-icon ax-icon-minimize\\\"> </ax-icon>\\n          </ax-button>\\n        }\\n\\n        @if (modalSizeState() !== 'normal' || fullScreenState()) {\\n          <ax-button class=\\\"ax-sm\\\" (onClick)=\\\"restore()\\\" look=\\\"blank\\\" color=\\\"default\\\">\\n            <ax-icon class=\\\"ax-icon ax-icon-maximize\\\"> </ax-icon>\\n          </ax-button>\\n        }\\n\\n        @if (maximizeState()) {\\n          <ax-button class=\\\"ax-sm\\\" (onClick)=\\\"maximize()\\\" look=\\\"blank\\\" color=\\\"default\\\">\\n            <ax-icon class=\\\"ax-icon ax-icon-full-screen\\\"> </ax-icon>\\n          </ax-button>\\n        }\\n\\n        @if (closeHeaderButton()) {\\n          <ax-button class=\\\"ax-sm\\\" look=\\\"blank\\\" (onClick)=\\\"close()\\\" color=\\\"default\\\">\\n            <ax-icon class=\\\"ax-icon ax-icon-close\\\"> </ax-icon>\\n          </ax-button>\\n        }\\n      </div>\\n    </div>\\n  }\\n\\n  <div class=\\\"ax-modal-content\\\">\\n    @if (isTemplate()) {\\n      <ng-container [ngTemplateOutlet]=\\\"this.template()\\\" [ngTemplateOutletContext]=\\\"inputs()\\\"></ng-container>\\n    } @else if (isHtmlElement()) {\\n      <div [innerHTML]=\\\"sanitizer.bypassSecurityTrustHtml(this.element().outerHTML)\\\"></div>\\n    } @else {\\n      <ng-container [ngComponentOutlet]=\\\"this.component()\\\" [ngComponentOutletInputs]=\\\"inputs()\\\"></ng-container>\\n    }\\n  </div>\\n\\n  @if (footerState()) {\\n    <div class=\\\"ax-modal-footer\\\"></div>\\n  }\\n</div>\\n\", styles: [\"ax-modal-content{touch-action:none;-webkit-user-select:none;user-select:none}ax-modal-content .ax-modal-drawer-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:50}ax-modal-content .ax-modal-drawer-backdrop.ax-default-backdrop{background-color:#00000080}ax-modal-content.ax-draggable .ax-modal-header:hover{cursor:move}ax-modal-content .ax-modal-container{overflow:hidden;position:fixed;z-index:55;background-color:rgba(var(--ax-comp-modal-bg-color, var(--ax-sys-color-lightest-surface)));display:flex;flex-direction:column;justify-content:space-between;border-radius:var(--ax-comp-modal-border-radius, var(--ax-sys-border-radius));border:var(--ax-comp-modal-border-width, 1px) solid rgba(var(--ax-comp-modal-border-color, var(--ax-sys-color-border-lightest-surface)));max-height:90vh;max-width:100vw}ax-modal-content .ax-modal-container.ax-modal-full{max-height:100vh!important;width:100%;height:100%}ax-modal-content .ax-modal-container.ax-modal-fit{width:fit-content}@media (min-width: 320px) and (max-width: 640px){ax-modal-content .ax-modal-container.ax-modal-sm,ax-modal-content .ax-modal-container.ax-modal-md,ax-modal-content .ax-modal-container.ax-modal-lg,ax-modal-content .ax-modal-container.ax-modal-fit{width:93vw}}@media (min-width: 768px){ax-modal-content .ax-modal-container.ax-modal-sm{width:55vw}ax-modal-content .ax-modal-container.ax-modal-md{width:65vw}ax-modal-content .ax-modal-container.ax-modal-lg{width:75vw}}@media (min-width: 1280px){ax-modal-content .ax-modal-container.ax-modal-sm{width:30vw}ax-modal-content .ax-modal-container.ax-modal-md{width:50vw}ax-modal-content .ax-modal-container.ax-modal-lg{width:85vw}}@media (min-width: 1536px){ax-modal-content .ax-modal-container.ax-modal-sm{width:25vw}ax-modal-content .ax-modal-container.ax-modal-md{width:40vw}ax-modal-content .ax-modal-container.ax-modal-lg{width:65vw}}ax-modal-content .ax-modal-container.ax-normal-modal{top:50%;left:50%;transform:translate(-50%,-50%)}ax-modal-content .ax-modal-container.ax-normal-modal .ax-modal-content{display:block}ax-modal-content .ax-modal-container.ax-normal-modal .ax-modal-footer{display:block}ax-modal-content .ax-modal-container.ax-minimize-modal{width:fit-content}ax-modal-content .ax-modal-container.ax-minimize-modal .ax-modal-content{display:none}ax-modal-content .ax-modal-container.ax-minimize-modal .ax-modal-footer{display:none}ax-modal-content .ax-modal-container .ax-modal-header,ax-modal-content .ax-modal-container .ax-modal-footer{padding:.5rem}ax-modal-content .ax-modal-container .ax-modal-header,ax-modal-content .ax-modal-container .ax-modal-footer{height:fit-content}ax-modal-content .ax-modal-container .ax-modal-content{flex-grow:1}ax-modal-content .ax-modal-container .ax-modal-header{display:flex;justify-content:space-between;align-items:center;gap:.5rem;border-bottom:1px solid rgba(var(--ax-sys-color-border-lightest-surface))}ax-modal-content .ax-modal-container .ax-modal-footer{border-top:1px solid rgba(var(--ax-sys-color-border-lightest-surface))}@keyframes fadeSlideIn{0%{opacity:0;scale:.8}}ax-modal-content .ax-fade-slide-in{transform-origin:top left;animation:fadeSlideIn var(--ax-sys-transition-duration) var(--ax-sys-transition-timing-function)}ax-modal-content .ax-fade-slide-out{transform-origin:top left;animation:fadeSlideOut var(--ax-sys-transition-duration) var(--ax-sys-transition-timing-function)}\\n\"], dependencies: [{ kind: \"ngmodule\", type: CommonModule }, { kind: \"directive\", type: i2.NgComponentOutlet, selector: \"[ngComponentOutlet]\", inputs: [\"ngComponentOutlet\", \"ngComponentOutletInputs\", \"ngComponentOutletInjector\", \"ngComponentOutletEnvironmentInjector\", \"ngComponentOutletContent\", \"ngComponentOutletNgModule\", \"ngComponentOutletNgModuleFactory\"], exportAs: [\"ngComponentOutlet\"] }, { kind: \"directive\", type: i2.NgTemplateOutlet, selector: \"[ngTemplateOutlet]\", inputs: [\"ngTemplateOutletContext\", \"ngTemplateOutlet\", \"ngTemplateOutletInjector\"] }, { kind: \"component\", type: AXButtonComponent, selector: \"ax-button\", inputs: [\"disabled\", \"size\", \"tabIndex\", \"color\", \"look\", \"text\", \"toggleable\", \"selected\", \"iconOnly\", \"type\", \"loadingText\"], outputs: [\"onBlur\", \"onFocus\", \"onClick\", \"selectedChange\", \"toggleableChange\", \"lookChange\", \"colorChange\", \"disabledChange\", \"loadingTextChange\"] }, { kind: \"ngmodule\", type: AXDecoratorModule }, { kind: \"component\", type: i3.AXDecoratorIconComponent, selector: \"ax-icon\", inputs: [\"icon\"] }, { kind: \"component\", type: i3.AXDecoratorGenericComponent, selector: \"ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.6\", ngImport: i0, type: AXModalContentComponent, decorators: [{\n            type: Component,\n            args: [{ selector: 'ax-modal-content', imports: [CommonModule, AXButtonComponent, AXDecoratorModule], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, hostDirectives: [AXFocusTrapDirective], providers: [{ provide: AXComponent, useExisting: AXModalContentComponent }], template: \"<div\\n  #c\\n  class=\\\"ax-modal-container ax-{{ modalSizeState() }}-modal  ax-modal-{{ modalSize() }} {{ panelClass() }}\\\"\\n  animate.enter=\\\"ax-fade-slide-in\\\"\\n  animate.leave=\\\"ax-fade-slide-out\\\"\\n>\\n  @if (headerState()) {\\n    <div (pointerdown)=\\\"pointerDownHandler($event)\\\" class=\\\"ax-modal-header\\\">\\n      <ax-text>{{ headerTitle() }}</ax-text>\\n\\n      <div>\\n        @if (minimizeState()) {\\n          <ax-button class=\\\"ax-sm\\\" (onClick)=\\\"minimize()\\\" look=\\\"blank\\\" color=\\\"default\\\">\\n            <ax-icon class=\\\"ax-icon ax-icon-minimize\\\"> </ax-icon>\\n          </ax-button>\\n        }\\n\\n        @if (modalSizeState() !== 'normal' || fullScreenState()) {\\n          <ax-button class=\\\"ax-sm\\\" (onClick)=\\\"restore()\\\" look=\\\"blank\\\" color=\\\"default\\\">\\n            <ax-icon class=\\\"ax-icon ax-icon-maximize\\\"> </ax-icon>\\n          </ax-button>\\n        }\\n\\n        @if (maximizeState()) {\\n          <ax-button class=\\\"ax-sm\\\" (onClick)=\\\"maximize()\\\" look=\\\"blank\\\" color=\\\"default\\\">\\n            <ax-icon class=\\\"ax-icon ax-icon-full-screen\\\"> </ax-icon>\\n          </ax-button>\\n        }\\n\\n        @if (closeHeaderButton()) {\\n          <ax-button class=\\\"ax-sm\\\" look=\\\"blank\\\" (onClick)=\\\"close()\\\" color=\\\"default\\\">\\n            <ax-icon class=\\\"ax-icon ax-icon-close\\\"> </ax-icon>\\n          </ax-button>\\n        }\\n      </div>\\n    </div>\\n  }\\n\\n  <div class=\\\"ax-modal-content\\\">\\n    @if (isTemplate()) {\\n      <ng-container [ngTemplateOutlet]=\\\"this.template()\\\" [ngTemplateOutletContext]=\\\"inputs()\\\"></ng-container>\\n    } @else if (isHtmlElement()) {\\n      <div [innerHTML]=\\\"sanitizer.bypassSecurityTrustHtml(this.element().outerHTML)\\\"></div>\\n    } @else {\\n      <ng-container [ngComponentOutlet]=\\\"this.component()\\\" [ngComponentOutletInputs]=\\\"inputs()\\\"></ng-container>\\n    }\\n  </div>\\n\\n  @if (footerState()) {\\n    <div class=\\\"ax-modal-footer\\\"></div>\\n  }\\n</div>\\n\", styles: [\"ax-modal-content{touch-action:none;-webkit-user-select:none;user-select:none}ax-modal-content .ax-modal-drawer-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:50}ax-modal-content .ax-modal-drawer-backdrop.ax-default-backdrop{background-color:#00000080}ax-modal-content.ax-draggable .ax-modal-header:hover{cursor:move}ax-modal-content .ax-modal-container{overflow:hidden;position:fixed;z-index:55;background-color:rgba(var(--ax-comp-modal-bg-color, var(--ax-sys-color-lightest-surface)));display:flex;flex-direction:column;justify-content:space-between;border-radius:var(--ax-comp-modal-border-radius, var(--ax-sys-border-radius));border:var(--ax-comp-modal-border-width, 1px) solid rgba(var(--ax-comp-modal-border-color, var(--ax-sys-color-border-lightest-surface)));max-height:90vh;max-width:100vw}ax-modal-content .ax-modal-container.ax-modal-full{max-height:100vh!important;width:100%;height:100%}ax-modal-content .ax-modal-container.ax-modal-fit{width:fit-content}@media (min-width: 320px) and (max-width: 640px){ax-modal-content .ax-modal-container.ax-modal-sm,ax-modal-content .ax-modal-container.ax-modal-md,ax-modal-content .ax-modal-container.ax-modal-lg,ax-modal-content .ax-modal-container.ax-modal-fit{width:93vw}}@media (min-width: 768px){ax-modal-content .ax-modal-container.ax-modal-sm{width:55vw}ax-modal-content .ax-modal-container.ax-modal-md{width:65vw}ax-modal-content .ax-modal-container.ax-modal-lg{width:75vw}}@media (min-width: 1280px){ax-modal-content .ax-modal-container.ax-modal-sm{width:30vw}ax-modal-content .ax-modal-container.ax-modal-md{width:50vw}ax-modal-content .ax-modal-container.ax-modal-lg{width:85vw}}@media (min-width: 1536px){ax-modal-content .ax-modal-container.ax-modal-sm{width:25vw}ax-modal-content .ax-modal-container.ax-modal-md{width:40vw}ax-modal-content .ax-modal-container.ax-modal-lg{width:65vw}}ax-modal-content .ax-modal-container.ax-normal-modal{top:50%;left:50%;transform:translate(-50%,-50%)}ax-modal-content .ax-modal-container.ax-normal-modal .ax-modal-content{display:block}ax-modal-content .ax-modal-container.ax-normal-modal .ax-modal-footer{display:block}ax-modal-content .ax-modal-container.ax-minimize-modal{width:fit-content}ax-modal-content .ax-modal-container.ax-minimize-modal .ax-modal-content{display:none}ax-modal-content .ax-modal-container.ax-minimize-modal .ax-modal-footer{display:none}ax-modal-content .ax-modal-container .ax-modal-header,ax-modal-content .ax-modal-container .ax-modal-footer{padding:.5rem}ax-modal-content .ax-modal-container .ax-modal-header,ax-modal-content .ax-modal-container .ax-modal-footer{height:fit-content}ax-modal-content .ax-modal-container .ax-modal-content{flex-grow:1}ax-modal-content .ax-modal-container .ax-modal-header{display:flex;justify-content:space-between;align-items:center;gap:.5rem;border-bottom:1px solid rgba(var(--ax-sys-color-border-lightest-surface))}ax-modal-content .ax-modal-container .ax-modal-footer{border-top:1px solid rgba(var(--ax-sys-color-border-lightest-surface))}@keyframes fadeSlideIn{0%{opacity:0;scale:.8}}ax-modal-content .ax-fade-slide-in{transform-origin:top left;animation:fadeSlideIn var(--ax-sys-transition-duration) var(--ax-sys-transition-timing-function)}ax-modal-content .ax-fade-slide-out{transform-origin:top left;animation:fadeSlideOut var(--ax-sys-transition-duration) var(--ax-sys-transition-timing-function)}\\n\"] }]\n        }], propDecorators: { __content__: [{ type: i0.Input, args: [{ isSignal: true, alias: \"__content__\", required: true }] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: \"id\", required: false }] }], inputs: [{ type: i0.Input, args: [{ isSignal: true, alias: \"inputs\", required: false }] }, { type: i0.Output, args: [\"inputsChange\"] }], modalContainer: [{ type: i0.ViewChild, args: ['c', { isSignal: true }] }], footer: [{ type: i0.ViewChild, args: [i0.forwardRef(() => AXModalFooterComponent), { isSignal: true }] }], pointerMoveHandler: [{\n                type: HostListener,\n                args: ['pointermove', ['$event']]\n            }], pointerUpHandler: [{\n                type: HostListener,\n                args: ['pointerup', ['$event']]\n            }, {\n                type: HostListener,\n                args: ['pointerleave', ['$event']]\n            }], role: [{\n                type: HostBinding,\n                args: ['attr.tabindex']\n            }], escapeHandler: [{\n                type: HostListener,\n                args: ['keydown', ['$event']]\n            }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtY29udGVudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL21vZGFsL3NyYy9saWIvbW9kYWwtY29udGVudC9tb2RhbC1jb250ZW50LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvbW9kYWwvc3JjL2xpYi9tb2RhbC1jb250ZW50L21vZGFsLWNvbnRlbnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUVsRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUNMLGVBQWUsRUFDZix1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFFBQVEsRUFDUixNQUFNLEVBRU4sV0FBVyxFQUNYLFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUNMLEtBQUssRUFDTCxNQUFNLEVBQ04sV0FBVyxFQUNYLFNBQVMsRUFDVCxpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7OztBQVk3RCxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsV0FBVztJQVZ4RDs7UUFXRSxnQkFBVyxHQUFHLEtB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QkFBdUIsZ3RCQUZ2QixDQUFDLEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsdUJBQXVCLEVBQUUsQ0FBQyx3S0FVdEIsc0JBQXNCLGlKQzdDN0UsbTREQW9EQSx5M0dEckJZLFlBQVksdWhCQUFFLGlCQUFpQiwwVUFBRSxpQkFBaUI7OzJGQU1qRCx1QkFBdUI7a0JBVm5DLFNBQVM7K0JBQ0Usa0JBQWtCLFdBR25CLENBQUMsWUFBWSxFQUFFLGlCQUFpQixFQUFFLGlCQUFpQixDQUFDLGlCQUM5QyxpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLGtCQUMvQixDQUFDLG9CQUFvQixDQUFDLGFBQzNCLENBQUMsRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLFdBQVcseUJBQXlCLEVBQUUsQ0FBQzs4WUFTMUIsR0FBRyxvRkFDQyxzQkFBc0I7c0JBb0oxRSxZQUFZO3VCQUFDLGFBQWEsRUFBRSxDQUFDLFFBQVEsQ0FBQzs7c0JBVXRDLFlBQVk7dUJBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDOztzQkFDcEMsWUFBWTt1QkFBQyxjQUFjLEVBQUUsQ0FBQyxRQUFRLENBQUM7O3NCQU12QyxXQUFXO3VCQUFDLGVBQWU7O3NCQUkzQixZQUFZO3VCQUFDLFNBQVMsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYQ29tcG9uZW50LCBOWENvbXBvbmVudCB9IGZyb20gJ0BhY29yZXgvY2RrL2NvbW1vbic7XG5pbXBvcnQgeyBBWEZvY3VzVHJhcERpcmVjdGl2ZSB9IGZyb20gJ0BhY29yZXgvY2RrL2ZvY3VzLXRyYXAnO1xuaW1wb3J0IHsgQVhCdXR0b25Db21wb25lbnQgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvYnV0dG9uJztcbmltcG9ydCB7IEFYRGVjb3JhdG9yTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2RlY29yYXRvcnMnO1xuaW1wb3J0IHsgQVhDb21wb25lbnRDb250ZW50LCBBWENvbXBvbmVudElucHV0cywgQVhDb21wb25lbnRUeXBlIH0gZnJvbSAnQGFjb3JleC9jb3JlL2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIGFmdGVyTmV4dFJlbmRlcixcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgY29tcHV0ZWQsXG4gIGVmZmVjdCxcbiAgRWxlbWVudFJlZixcbiAgSG9zdEJpbmRpbmcsXG4gIEhvc3RMaXN0ZW5lcixcbiAgaW5qZWN0LFxuICBpbnB1dCxcbiAgbW9kZWwsXG4gIHNpZ25hbCxcbiAgVGVtcGxhdGVSZWYsXG4gIHZpZXdDaGlsZCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRG9tU2FuaXRpemVyIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQgeyBBWE1vZGFsRm9vdGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vbW9kYWwtZm9vdGVyL21vZGFsLWZvb3Rlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQVhNb2RhbFN0YXRlU2VydmljZSB9IGZyb20gJy4uL21vZGFsLXN0YXRlLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdheC1tb2RhbC1jb250ZW50JyxcbiAgdGVtcGxhdGVVcmw6ICcuL21vZGFsLWNvbnRlbnQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vbW9kYWwtY29udGVudC5jb21wb25lbnQuc2NzcycsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEFYQnV0dG9uQ29tcG9uZW50LCBBWERlY29yYXRvck1vZHVsZV0sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBob3N0RGlyZWN0aXZlczogW0FYRm9jdXNUcmFwRGlyZWN0aXZlXSxcbiAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBBWENvbXBvbmVudCwgdXNlRXhpc3Rpbmc6IEFYTW9kYWxDb250ZW50Q29tcG9uZW50IH1dLFxufSlcbmV4cG9ydCBjbGFzcyBBWE1vZGFsQ29udGVudENvbXBvbmVudCBleHRlbmRzIE5YQ29tcG9uZW50IHtcbiAgX19jb250ZW50X18gPSBpbnB1dC5yZXF1aXJlZDxBWENvbXBvbmVudENvbnRlbnQgfCBIVE1MRWxlbWVudD4oKTtcbiAgcHVibGljIGlkID0gaW5wdXQ8bnVtYmVyPigpO1xuICBwdWJsaWMgaW5wdXRzID0gbW9kZWw8QVhDb21wb25lbnRJbnB1dHM+KCk7XG4gIHByaXZhdGUgc2VydmljZVN0YXRlID0gaW5qZWN0KEFYTW9kYWxTdGF0ZVNlcnZpY2UpO1xuICBwcm90ZWN0ZWQgc2FuaXRpemVyID0gaW5qZWN0KERvbVNhbml0aXplcik7XG5cbiAgcHJvdGVjdGVkIG1vZGFsQ29udGFpbmVyID0gdmlld0NoaWxkPEVsZW1lbnRSZWY+KCdjJyk7XG4gIHByb3RlY3RlZCBmb290ZXIgPSB2aWV3Q2hpbGQ8QVhNb2RhbEZvb3RlckNvbXBvbmVudD4oQVhNb2RhbEZvb3RlckNvbXBvbmVudCk7XG5cbiAgcHJvdGVjdGVkIGlzVGVtcGxhdGUgPSBjb21wdXRlZCgoKSA9PiB0aGlzLl9fY29udGVudF9fKCkgaW5zdGFuY2VvZiBUZW1wbGF0ZVJlZik7XG4gIHByb3RlY3RlZCBpc0h0bWxFbGVtZW50ID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5fX2NvbnRlbnRfXygpIGluc3RhbmNlb2YgSFRNTEVsZW1lbnQpO1xuXG4gIHB1YmxpYyBjb21wb25lbnQgPSBjb21wdXRlZCgoKSA9PiB0aGlzLl9fY29udGVudF9fKCkgYXMgQVhDb21wb25lbnRUeXBlPGFueT4pO1xuICBwdWJsaWMgdGVtcGxhdGUgPSBjb21wdXRlZCgoKSA9PiB0aGlzLl9fY29udGVudF9fKCkgYXMgVGVtcGxhdGVSZWY8YW55Pik7XG4gIHB1YmxpYyBlbGVtZW50ID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5fX2NvbnRlbnRfXygpIGFzIEhUTUxFbGVtZW50KTtcblxuICBwcm90ZWN0ZWQgbW9kYWxTaXplU3RhdGUgPSBzaWduYWw8J21pbmltaXplJyB8ICdub3JtYWwnPignbm9ybWFsJyk7XG4gIHByb3RlY3RlZCBmdWxsU2NyZWVuU3RhdGUgPSBzaWduYWwoZmFsc2UpO1xuICBwcml2YXRlIGlzTW91c2VEb3duID0gc2lnbmFsKGZhbHNlKTtcbiAgcHJpdmF0ZSBvZmZzZXRYID0gc2lnbmFsKDApO1xuICBwcml2YXRlIG9mZnNldFkgPSBzaWduYWwoMCk7XG4gIHByaXZhdGUgcHJldkxlZnQgPSBzaWduYWwoJycpO1xuICBwcml2YXRlIHByZXZUb3AgPSBzaWduYWwoJycpO1xuICBwcml2YXRlIGJhY2tkcm9wU3RhdGUgPSBjb21wdXRlZCgoKSA9PiB0aGlzLnNlcnZpY2VTdGF0ZS5tb2RhbE9wdGlvbigpPy5iYWNrZHJvcD8uZW5hYmxlZCA/PyB0cnVlKTtcbiAgcHJpdmF0ZSBjbG9zZU9uRXNjYXBlID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5zZXJ2aWNlU3RhdGUubW9kYWxPcHRpb24oKT8uY2xvc2VPbkVzY2FwZSA/PyB0cnVlKTtcbiAgcHJvdGVjdGVkIHBhbmVsQ2xhc3MgPSBjb21wdXRlZCgoKSA9PiB0aGlzLnNlcnZpY2VTdGF0ZS5tb2RhbE9wdGlvbigpPy5wYW5lbENsYXNzID8/ICcnKTtcbiAgcHJvdGVjdGVkIGhlYWRlclN0YXRlID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5zZXJ2aWNlU3RhdGUubW9kYWxPcHRpb24oKT8uaGVhZGVyID8/IGZhbHNlKTtcbiAgcHJvdGVjdGVkIGZvb3RlclN0YXRlID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5zZXJ2aWNlU3RhdGUubW9kYWxPcHRpb24oKT8uZm9vdGVyID8/IGZhbHNlKTtcbiAgcHJvdGVjdGVkIGNsb3NlSGVhZGVyQnV0dG9uID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5zZXJ2aWNlU3RhdGUubW9kYWxPcHRpb24oKT8uYnV0dG9ucz8uY2xvc2UgPz8gdHJ1ZSk7XG4gIHByaXZhdGUgYmFja2Ryb3BCYWNrZ3JvdW5kID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5zZXJ2aWNlU3RhdGUubW9kYWxPcHRpb24oKT8uYmFja2Ryb3A/LmJhY2tncm91bmQgPz8gdHJ1ZSk7XG4gIHByaXZhdGUgYmFja2Ryb3BDbGFzcyA9IGNvbXB1dGVkKCgpID0+IHRoaXMuc2VydmljZVN0YXRlLm1vZGFsT3B0aW9uKCk/LmJhY2tkcm9wPy5iYWNrZHJvcENsYXNzID8/ICcnKTtcbiAgcHJpdmF0ZSBiYWNrZHJvcENsb3NlT25DbGljayA9IGNvbXB1dGVkKCgpID0+IHRoaXMuc2VydmljZVN0YXRlLm1vZGFsT3B0aW9uKCk/LmJhY2tkcm9wPy5jbG9zZU9uQ2xpY2sgPz8gdHJ1ZSk7XG4gIHByaXZhdGUgbWluaW1pemVQb3NpdGlvbiA9IGNvbXB1dGVkKFxuICAgICgpID0+IHRoaXMuc2VydmljZVN0YXRlLm1vZGFsT3B0aW9uKCk/LmJ1dHRvbnM/Lm1pbmltaXplPy5wb3NpdGlvbiA/PyAnYm90dG9tLXJpZ2h0JyxcbiAgKTtcbiAgcHJvdGVjdGVkIG1pbmltaXplU3RhdGUgPSBjb21wdXRlZCgoKSA9PiB0aGlzLnNlcnZpY2VTdGF0ZS5tb2RhbE9wdGlvbigpPy5idXR0b25zPy5taW5pbWl6ZT8uZW5hYmxlID8/IGZhbHNlKTtcbiAgcHJvdGVjdGVkIG1heGltaXplU3RhdGUgPSBjb21wdXRlZCgoKSA9PiB0aGlzLnNlcnZpY2VTdGF0ZS5tb2RhbE9wdGlvbigpPy5idXR0b25zPy5tYXhpbWl6ZSA/PyBmYWxzZSk7XG4gIHByb3RlY3RlZCBtb2RhbFNpemUgPSBjb21wdXRlZCgoKSA9PiB0aGlzLnNlcnZpY2VTdGF0ZS5tb2RhbE9wdGlvbigpPy5zaXplID8/ICdsZycpO1xuICBwcm90ZWN0ZWQgaGVhZGVyVGl0bGUgPSBjb21wdXRlZCgoKSA9PiB0aGlzLnNlcnZpY2VTdGF0ZS5tb2RhbE9wdGlvbigpPy50aXRsZSA/PyAnJyk7XG4gIHByaXZhdGUgZHJhZ2dhYmxlID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5zZXJ2aWNlU3RhdGUubW9kYWxPcHRpb24oKT8uZHJhZ2dhYmxlID8/IHRydWUpO1xuXG4gICNpbml0ID0gYWZ0ZXJOZXh0UmVuZGVyKCgpID0+IHtcbiAgICB0aGlzLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICBjb25zdCBwb3BGb290ZXIgPSB0aGlzLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcjxIVE1MRGl2RWxlbWVudD4oJy5heC1tb2RhbC1mb290ZXInKTtcbiAgICBjb25zdCBmb290ZXIgPSB0aGlzLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcjxIVE1MRGl2RWxlbWVudD4oJy5heC1tb2RhbC1jb250ZW50IGF4LW1vZGFsLWZvb3RlcicpO1xuICAgIGlmIChmb290ZXIpIHtcbiAgICAgIHBvcEZvb3Rlcj8uYXBwZW5kKGZvb3Rlcik7XG4gICAgfVxuICB9KTtcblxuICBwcm90ZWN0ZWQgY2xvc2UoKSB7XG4gICAgdGhpcy5zZXJ2aWNlU3RhdGUuY2xvc2UodGhpcy5pZCgpKTtcbiAgfVxuXG4gIG1pbmltaXplKCkge1xuICAgIGlmICh0aGlzLmZ1bGxTY3JlZW5TdGF0ZSgpKSBkb2N1bWVudC5leGl0RnVsbHNjcmVlbigpO1xuICAgIHRoaXMubW9kYWxDb250YWluZXIoKS5uYXRpdmVFbGVtZW50LnN0eWxlLnRyYW5zaXRpb24gPSAnYWxsIDIwMG1zIGVhc2Utb3V0JztcblxuICAgIHRoaXMubW9kYWxDb250YWluZXIoKS5uYXRpdmVFbGVtZW50LnN0eWxlLnRvcCA9IGBhdXRvYDtcbiAgICB0aGlzLm1vZGFsQ29udGFpbmVyKCkubmF0aXZlRWxlbWVudC5zdHlsZS5ib3R0b20gPSBgMGA7XG5cbiAgICBpZiAodGhpcy5iYWNrZHJvcFN0YXRlKCkpIHRoaXMucmVtb3ZlQmFja2Ryb3AoKTtcbiAgICB0aGlzLm1vZGFsQ29udGFpbmVyKCkubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKCdheC1ub3JtYWwtbW9kYWwnKTtcbiAgICB0aGlzLm1vZGFsQ29udGFpbmVyKCkubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QuYWRkKCdheC1taW5pbWl6ZS1tb2RhbCcpO1xuXG4gICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgIGNvbnN0IHdpZHRoID0gdGhpcy5tb2RhbENvbnRhaW5lcigpLm5hdGl2ZUVsZW1lbnQub2Zmc2V0V2lkdGg7XG4gICAgICBjb25zdCBpbmRleCA9IHRoaXMuc2VydmljZVN0YXRlLmdldE1hcEluZGV4T2YodGhpcy5pZCgpKTtcblxuICAgICAgaWYgKHRoaXMubWluaW1pemVQb3NpdGlvbigpID09PSAnYm90dG9tLXJpZ2h0Jykge1xuICAgICAgICB0aGlzLm1vZGFsQ29udGFpbmVyKCkubmF0aXZlRWxlbWVudC5zdHlsZS5sZWZ0ID0gYGF1dG9gO1xuICAgICAgICB0aGlzLm1vZGFsQ29udGFpbmVyKCkubmF0aXZlRWxlbWVudC5zdHlsZS5yaWdodCA9IGAke2luZGV4ICogKHdpZHRoICsgMTApfXB4YDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMubW9kYWxDb250YWluZXIoKS5uYXRpdmVFbGVtZW50LnN0eWxlLnJpZ2h0ID0gYGF1dG9gO1xuICAgICAgICB0aGlzLm1vZGFsQ29udGFpbmVyKCkubmF0aXZlRWxlbWVudC5zdHlsZS5sZWZ0ID0gYCR7aW5kZXggKiAod2lkdGggKyAxMCl9cHhgO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgdGhpcy5tb2RhbFNpemVTdGF0ZS5zZXQoJ21pbmltaXplJyk7XG4gIH1cblxuICBtYXhpbWl6ZSgpIHtcbiAgICB0aGlzLm1vZGFsQ29udGFpbmVyKCkubmF0aXZlRWxlbWVudC5zdHlsZS50cmFuc2l0aW9uID0gJ25vbmUnO1xuXG4gICAgaWYgKHRoaXMubW9kYWxTaXplU3RhdGUoKSA9PT0gJ21pbmltaXplJykgdGhpcy5yZXN0b3JlKCk7XG5cbiAgICBpZiAoIWRvY3VtZW50LmZ1bGxzY3JlZW5FbGVtZW50KSB7XG4gICAgICB0aGlzLm1vZGFsQ29udGFpbmVyKCkubmF0aXZlRWxlbWVudC5yZXF1ZXN0RnVsbHNjcmVlbigpO1xuICAgICAgdGhpcy5mdWxsU2NyZWVuU3RhdGUuc2V0KHRydWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBkb2N1bWVudC5leGl0RnVsbHNjcmVlbigpO1xuICAgIH1cblxuICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2Z1bGxzY3JlZW5jaGFuZ2UnLCAoKSA9PiB7XG4gICAgICBpZiAoIWRvY3VtZW50LmZ1bGxzY3JlZW5FbGVtZW50KSB7XG4gICAgICAgIHRoaXMuZnVsbFNjcmVlblN0YXRlLnNldChmYWxzZSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICByZXN0b3JlKCkge1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5tb2RhbENvbnRhaW5lcigpLm5hdGl2ZUVsZW1lbnQuc3R5bGUudHJhbnNpdGlvbiA9ICdub25lJztcbiAgICB9LCAyMDApO1xuXG4gICAgaWYgKHRoaXMuZnVsbFNjcmVlblN0YXRlKCkpIHtcbiAgICAgIGRvY3VtZW50LmV4aXRGdWxsc2NyZWVuKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5tb2RhbENvbnRhaW5lcigpLm5hdGl2ZUVsZW1lbnQuc3R5bGUuYm90dG9tID0gYGF1dG9gO1xuICAgIHRoaXMubW9kYWxDb250YWluZXIoKS5uYXRpdmVFbGVtZW50LnN0eWxlLnJpZ2h0ID0gYGF1dG9gO1xuICAgIHRoaXMubW9kYWxDb250YWluZXIoKS5uYXRpdmVFbGVtZW50LnN0eWxlLmxlZnQgPSB0aGlzLnByZXZMZWZ0KCk7XG4gICAgdGhpcy5tb2RhbENvbnRhaW5lcigpLm5hdGl2ZUVsZW1lbnQuc3R5bGUudG9wID0gdGhpcy5wcmV2VG9wKCk7XG5cbiAgICBpZiAodGhpcy5iYWNrZHJvcFN0YXRlKCkpIHRoaXMuYWRkQmFja2Ryb3AoKTtcbiAgICB0aGlzLm1vZGFsQ29udGFpbmVyKCkubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKGBheC1taW5pbWl6ZS1tb2RhbGApO1xuICAgIHRoaXMubW9kYWxDb250YWluZXIoKS5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5hZGQoJ2F4LW5vcm1hbC1tb2RhbCcpO1xuICAgIHRoaXMubW9kYWxTaXplU3RhdGUuc2V0KCdub3JtYWwnKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBwb2ludGVyRG93bkhhbmRsZXIoZTogTW91c2VFdmVudCkge1xuICAgIGlmICghdGhpcy5kcmFnZ2FibGUoKSB8fCB0aGlzLm1vZGFsU2l6ZVN0YXRlKCkgPT09ICdtaW5pbWl6ZScgfHwgdGhpcy5mdWxsU2NyZWVuU3RhdGUoKSkgcmV0dXJuO1xuICAgIHRoaXMuaXNNb3VzZURvd24uc2V0KHRydWUpO1xuICAgIHRoaXMub2Zmc2V0WC5zZXQoZS5jbGllbnRYIC0gdGhpcy5tb2RhbENvbnRhaW5lcigpLm5hdGl2ZUVsZW1lbnQub2Zmc2V0TGVmdCk7XG4gICAgdGhpcy5vZmZzZXRZLnNldChlLmNsaWVudFkgLSB0aGlzLm1vZGFsQ29udGFpbmVyKCkubmF0aXZlRWxlbWVudC5vZmZzZXRUb3ApO1xuICB9XG5cbiAgcHJpdmF0ZSBhZGRCYWNrZHJvcCgpIHtcbiAgICBjb25zdCBiYWNrZHJvcEVsZW0gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgICBiYWNrZHJvcEVsZW0uY2xhc3NMaXN0LmFkZCgnYXgtbW9kYWwtZHJhd2VyLWJhY2tkcm9wJyk7XG5cbiAgICBpZiAodGhpcy5iYWNrZHJvcENsYXNzKCkpIHtcbiAgICAgIGJhY2tkcm9wRWxlbS5jbGFzc0xpc3QuYWRkKC4uLnRoaXMuYmFja2Ryb3BDbGFzcygpLnNwbGl0KCcgJykpO1xuICAgIH0gZWxzZSB7XG4gICAgICBiYWNrZHJvcEVsZW0uY2xhc3NMaXN0LmFkZCgnYXgtZGVmYXVsdC1iYWNrZHJvcCcpO1xuICAgIH1cblxuICAgIGJhY2tkcm9wRWxlbS5hZGRFdmVudExpc3RlbmVyKCdwb2ludGVyZG93bicsIChlOiBNb3VzZUV2ZW50KSA9PiB7XG4gICAgICBpZiAoIXRoaXMuYmFja2Ryb3BDbG9zZU9uQ2xpY2soKSkgcmV0dXJuO1xuICAgICAgaWYgKGUudGFyZ2V0ID09PSBlLmN1cnJlbnRUYXJnZXQpIHtcbiAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgdGhpcy5uYXRpdmVFbGVtZW50LmFwcGVuZENoaWxkKGJhY2tkcm9wRWxlbSk7XG4gIH1cblxuICBwcml2YXRlIHJlbW92ZUJhY2tkcm9wKCkge1xuICAgIGNvbnN0IGJhY2tkcm9wRWxlbSA9IHRoaXMubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCcuYXgtbW9kYWwtZHJhd2VyLWJhY2tkcm9wJyk7XG4gICAgaWYgKGJhY2tkcm9wRWxlbSkge1xuICAgICAgYmFja2Ryb3BFbGVtLnJlbW92ZSgpO1xuICAgIH1cbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ3BvaW50ZXJtb3ZlJywgWyckZXZlbnQnXSlcbiAgcHJvdGVjdGVkIHBvaW50ZXJNb3ZlSGFuZGxlcihlOiBNb3VzZUV2ZW50KSB7XG4gICAgaWYgKCF0aGlzLmRyYWdnYWJsZSgpIHx8IHRoaXMubW9kYWxTaXplU3RhdGUoKSA9PT0gJ21pbmltaXplJyB8fCB0aGlzLmZ1bGxTY3JlZW5TdGF0ZSgpKSByZXR1cm47XG4gICAgaWYgKCF0aGlzLmlzTW91c2VEb3duKCkpIHJldHVybjtcbiAgICB0aGlzLm1vZGFsQ29udGFpbmVyKCkubmF0aXZlRWxlbWVudC5zdHlsZS5sZWZ0ID0gYCR7ZS5jbGllbnRYIC0gdGhpcy5vZmZzZXRYKCl9cHhgO1xuICAgIHRoaXMubW9kYWxDb250YWluZXIoKS5uYXRpdmVFbGVtZW50LnN0eWxlLnRvcCA9IGAke2UuY2xpZW50WSAtIHRoaXMub2Zmc2V0WSgpfXB4YDtcbiAgICB0aGlzLnByZXZMZWZ0LnNldChgJHtlLmNsaWVudFggLSB0aGlzLm9mZnNldFgoKX1weGApO1xuICAgIHRoaXMucHJldlRvcC5zZXQoYCR7ZS5jbGllbnRZIC0gdGhpcy5vZmZzZXRZKCl9cHhgKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ3BvaW50ZXJ1cCcsIFsnJGV2ZW50J10pXG4gIEBIb3N0TGlzdGVuZXIoJ3BvaW50ZXJsZWF2ZScsIFsnJGV2ZW50J10pXG4gIHByb3RlY3RlZCBwb2ludGVyVXBIYW5kbGVyKCkge1xuICAgIGlmICghdGhpcy5kcmFnZ2FibGUoKSB8fCB0aGlzLm1vZGFsU2l6ZVN0YXRlKCkgPT09ICdtaW5pbWl6ZScgfHwgdGhpcy5mdWxsU2NyZWVuU3RhdGUoKSkgcmV0dXJuO1xuICAgIHRoaXMuaXNNb3VzZURvd24uc2V0KGZhbHNlKTtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnYXR0ci50YWJpbmRleCcpIGdldCByb2xlKCkge1xuICAgIHJldHVybiAnMCc7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdrZXlkb3duJywgWyckZXZlbnQnXSlcbiAgcHJvdGVjdGVkIGVzY2FwZUhhbmRsZXIoZTogS2V5Ym9hcmRFdmVudCkge1xuICAgIGlmIChlLmtleSA9PT0gJ0VzY2FwZScgJiYgdGhpcy5jbG9zZU9uRXNjYXBlKCkpIHtcbiAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICB9XG4gIH1cblxuICAjZWZmID0gZWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBob3N0ID0gdGhpcy5uYXRpdmVFbGVtZW50O1xuICAgIGlmICh0aGlzLmRyYWdnYWJsZSgpKSBob3N0LmNsYXNzTGlzdC5hZGQoJ2F4LWRyYWdnYWJsZScpO1xuICAgIGlmICghdGhpcy5iYWNrZHJvcFN0YXRlKCkpIHJldHVybjtcbiAgICB0aGlzLmFkZEJhY2tkcm9wKCk7XG4gICAgaWYgKCF0aGlzLmJhY2tkcm9wQmFja2dyb3VuZCgpKSByZXR1cm47XG4gIH0pO1xufVxuIiwiPGRpdlxuICAjY1xuICBjbGFzcz1cImF4LW1vZGFsLWNvbnRhaW5lciBheC17eyBtb2RhbFNpemVTdGF0ZSgpIH19LW1vZGFsICBheC1tb2RhbC17eyBtb2RhbFNpemUoKSB9fSB7eyBwYW5lbENsYXNzKCkgfX1cIlxuICBhbmltYXRlLmVudGVyPVwiYXgtZmFkZS1zbGlkZS1pblwiXG4gIGFuaW1hdGUubGVhdmU9XCJheC1mYWRlLXNsaWRlLW91dFwiXG4+XG4gIEBpZiAoaGVhZGVyU3RhdGUoKSkge1xuICAgIDxkaXYgKHBvaW50ZXJkb3duKT1cInBvaW50ZXJEb3duSGFuZGxlcigkZXZlbnQpXCIgY2xhc3M9XCJheC1tb2RhbC1oZWFkZXJcIj5cbiAgICAgIDxheC10ZXh0Pnt7IGhlYWRlclRpdGxlKCkgfX08L2F4LXRleHQ+XG5cbiAgICAgIDxkaXY+XG4gICAgICAgIEBpZiAobWluaW1pemVTdGF0ZSgpKSB7XG4gICAgICAgICAgPGF4LWJ1dHRvbiBjbGFzcz1cImF4LXNtXCIgKG9uQ2xpY2spPVwibWluaW1pemUoKVwiIGxvb2s9XCJibGFua1wiIGNvbG9yPVwiZGVmYXVsdFwiPlxuICAgICAgICAgICAgPGF4LWljb24gY2xhc3M9XCJheC1pY29uIGF4LWljb24tbWluaW1pemVcIj4gPC9heC1pY29uPlxuICAgICAgICAgIDwvYXgtYnV0dG9uPlxuICAgICAgICB9XG5cbiAgICAgICAgQGlmIChtb2RhbFNpemVTdGF0ZSgpICE9PSAnbm9ybWFsJyB8fCBmdWxsU2NyZWVuU3RhdGUoKSkge1xuICAgICAgICAgIDxheC1idXR0b24gY2xhc3M9XCJheC1zbVwiIChvbkNsaWNrKT1cInJlc3RvcmUoKVwiIGxvb2s9XCJibGFua1wiIGNvbG9yPVwiZGVmYXVsdFwiPlxuICAgICAgICAgICAgPGF4LWljb24gY2xhc3M9XCJheC1pY29uIGF4LWljb24tbWF4aW1pemVcIj4gPC9heC1pY29uPlxuICAgICAgICAgIDwvYXgtYnV0dG9uPlxuICAgICAgICB9XG5cbiAgICAgICAgQGlmIChtYXhpbWl6ZVN0YXRlKCkpIHtcbiAgICAgICAgICA8YXgtYnV0dG9uIGNsYXNzPVwiYXgtc21cIiAob25DbGljayk9XCJtYXhpbWl6ZSgpXCIgbG9vaz1cImJsYW5rXCIgY29sb3I9XCJkZWZhdWx0XCI+XG4gICAgICAgICAgICA8YXgtaWNvbiBjbGFzcz1cImF4LWljb24gYXgtaWNvbi1mdWxsLXNjcmVlblwiPiA8L2F4LWljb24+XG4gICAgICAgICAgPC9heC1idXR0b24+XG4gICAgICAgIH1cblxuICAgICAgICBAaWYgKGNsb3NlSGVhZGVyQnV0dG9uKCkpIHtcbiAgICAgICAgICA8YXgtYnV0dG9uIGNsYXNzPVwiYXgtc21cIiBsb29rPVwiYmxhbmtcIiAob25DbGljayk9XCJjbG9zZSgpXCIgY29sb3I9XCJkZWZhdWx0XCI+XG4gICAgICAgICAgICA8YXgtaWNvbiBjbGFzcz1cImF4LWljb24gYXgtaWNvbi1jbG9zZVwiPiA8L2F4LWljb24+XG4gICAgICAgICAgPC9heC1idXR0b24+XG4gICAgICAgIH1cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICB9XG5cbiAgPGRpdiBjbGFzcz1cImF4LW1vZGFsLWNvbnRlbnRcIj5cbiAgICBAaWYgKGlzVGVtcGxhdGUoKSkge1xuICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJ0aGlzLnRlbXBsYXRlKClcIiBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwiaW5wdXRzKClcIj48L25nLWNvbnRhaW5lcj5cbiAgICB9IEBlbHNlIGlmIChpc0h0bWxFbGVtZW50KCkpIHtcbiAgICAgIDxkaXYgW2lubmVySFRNTF09XCJzYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdEh0bWwodGhpcy5lbGVtZW50KCkub3V0ZXJIVE1MKVwiPjwvZGl2PlxuICAgIH0gQGVsc2Uge1xuICAgICAgPG5nLWNvbnRhaW5lciBbbmdDb21wb25lbnRPdXRsZXRdPVwidGhpcy5jb21wb25lbnQoKVwiIFtuZ0NvbXBvbmVudE91dGxldElucHV0c109XCJpbnB1dHMoKVwiPjwvbmctY29udGFpbmVyPlxuICAgIH1cbiAgPC9kaXY+XG5cbiAgQGlmIChmb290ZXJTdGF0ZSgpKSB7XG4gICAgPGRpdiBjbGFzcz1cImF4LW1vZGFsLWZvb3RlclwiPjwvZGl2PlxuICB9XG48L2Rpdj5cbiJdfQ=="],"names":[],"mappings":"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"}
         
     | 
| 
         @@ -1,183 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            import { AXInputMaskDirective } from '@acorex/cdk/input-mask';
         
     | 
| 
       2 
     | 
    
         
            -
            import * as i0 from '@angular/core';
         
     | 
| 
       3 
     | 
    
         
            -
            import { input, model, signal, viewChild, afterNextRender, effect, forwardRef, HostBinding, ViewEncapsulation, ChangeDetectionStrategy, Component } from '@angular/core';
         
     | 
| 
       4 
     | 
    
         
            -
            import { MXInputBaseValueComponent, MXLookComponent, AXComponent, AXFocusableComponent, AXClearableComponent, AXValuableComponent } from '@acorex/cdk/common';
         
     | 
| 
       5 
     | 
    
         
            -
            import { AXButtonModule } from '@acorex/components/button';
         
     | 
| 
       6 
     | 
    
         
            -
            import { AXDecoratorModule } from '@acorex/components/decorators';
         
     | 
| 
       7 
     | 
    
         
            -
            import * as i1 from '@angular/forms';
         
     | 
| 
       8 
     | 
    
         
            -
            import { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';
         
     | 
| 
       9 
     | 
    
         
            -
            import { classes } from 'polytype';
         
     | 
| 
       10 
     | 
    
         
            -
             
     | 
| 
       11 
     | 
    
         
            -
            /**
         
     | 
| 
       12 
     | 
    
         
            -
             * The NumberBox is a component which detects user interaction and triggers a corresponding event
         
     | 
| 
       13 
     | 
    
         
            -
             *
         
     | 
| 
       14 
     | 
    
         
            -
             * @category Components
         
     | 
| 
       15 
     | 
    
         
            -
             */
         
     | 
| 
       16 
     | 
    
         
            -
            class AXNumberBox2Component extends classes((MXInputBaseValueComponent), MXLookComponent) {
         
     | 
| 
       17 
     | 
    
         
            -
                constructor() {
         
     | 
| 
       18 
     | 
    
         
            -
                    super(...arguments);
         
     | 
| 
       19 
     | 
    
         
            -
                    this.minValue = input(null, ...(ngDevMode ? [{ debugName: "minValue" }] : []));
         
     | 
| 
       20 
     | 
    
         
            -
                    this.maxValue = input(null, ...(ngDevMode ? [{ debugName: "maxValue" }] : []));
         
     | 
| 
       21 
     | 
    
         
            -
                    this.showSpinButtons = input(true, ...(ngDevMode ? [{ debugName: "showSpinButtons" }] : []));
         
     | 
| 
       22 
     | 
    
         
            -
                    this.thousandsSeparator = model(null, ...(ngDevMode ? [{ debugName: "thousandsSeparator" }] : []));
         
     | 
| 
       23 
     | 
    
         
            -
                    this.decimals = input(0, ...(ngDevMode ? [{ debugName: "decimals" }] : []));
         
     | 
| 
       24 
     | 
    
         
            -
                    this.changeOnScroll = input(false, ...(ngDevMode ? [{ debugName: "changeOnScroll" }] : []));
         
     | 
| 
       25 
     | 
    
         
            -
                    this.step = input(1, ...(ngDevMode ? [{ debugName: "step" }] : []));
         
     | 
| 
       26 
     | 
    
         
            -
                    this.mode = signal('digits', ...(ngDevMode ? [{ debugName: "mode" }] : []));
         
     | 
| 
       27 
     | 
    
         
            -
                    this.input = viewChild('input', ...(ngDevMode ? [{ debugName: "input" }] : []));
         
     | 
| 
       28 
     | 
    
         
            -
                    this.stringValue = '0';
         
     | 
| 
       29 
     | 
    
         
            -
                    this.#init = afterNextRender(() => {
         
     | 
| 
       30 
     | 
    
         
            -
                        this.onFocus.subscribe(() => {
         
     | 
| 
       31 
     | 
    
         
            -
                            this.input().nativeElement.select();
         
     | 
| 
       32 
     | 
    
         
            -
                        });
         
     | 
| 
       33 
     | 
    
         
            -
                    });
         
     | 
| 
       34 
     | 
    
         
            -
                    this.#eff = effect(() => {
         
     | 
| 
       35 
     | 
    
         
            -
                        if (this.thousandsSeparator() && this.decimals()) {
         
     | 
| 
       36 
     | 
    
         
            -
                            this.mode.set('digits');
         
     | 
| 
       37 
     | 
    
         
            -
                            return;
         
     | 
| 
       38 
     | 
    
         
            -
                        }
         
     | 
| 
       39 
     | 
    
         
            -
                        else if (this.thousandsSeparator()) {
         
     | 
| 
       40 
     | 
    
         
            -
                            this.mode.set('thousandsSeparator');
         
     | 
| 
       41 
     | 
    
         
            -
                            return;
         
     | 
| 
       42 
     | 
    
         
            -
                        }
         
     | 
| 
       43 
     | 
    
         
            -
                        else if (this.decimals()) {
         
     | 
| 
       44 
     | 
    
         
            -
                            this.mode.set('decimal');
         
     | 
| 
       45 
     | 
    
         
            -
                        }
         
     | 
| 
       46 
     | 
    
         
            -
                    }, ...(ngDevMode ? [{ debugName: "#eff" }] : []));
         
     | 
| 
       47 
     | 
    
         
            -
                }
         
     | 
| 
       48 
     | 
    
         
            -
                internalValueChanged(value) {
         
     | 
| 
       49 
     | 
    
         
            -
                    if (!value) {
         
     | 
| 
       50 
     | 
    
         
            -
                        this.stringValue = '0';
         
     | 
| 
       51 
     | 
    
         
            -
                        return;
         
     | 
| 
       52 
     | 
    
         
            -
                    }
         
     | 
| 
       53 
     | 
    
         
            -
                    this.stringValue = String(value);
         
     | 
| 
       54 
     | 
    
         
            -
                }
         
     | 
| 
       55 
     | 
    
         
            -
                #init;
         
     | 
| 
       56 
     | 
    
         
            -
                #eff;
         
     | 
| 
       57 
     | 
    
         
            -
                plusValue() {
         
     | 
| 
       58 
     | 
    
         
            -
                    if (this.disabled || this.readonly) {
         
     | 
| 
       59 
     | 
    
         
            -
                        return;
         
     | 
| 
       60 
     | 
    
         
            -
                    }
         
     | 
| 
       61 
     | 
    
         
            -
                    if (this.mode() === 'thousandsSeparator') {
         
     | 
| 
       62 
     | 
    
         
            -
                        const removeSeparator = this.stringValue.split(this.thousandsSeparator()).join('');
         
     | 
| 
       63 
     | 
    
         
            -
                        const addStep = +removeSeparator + this.step();
         
     | 
| 
       64 
     | 
    
         
            -
                        this.commitValue(addStep);
         
     | 
| 
       65 
     | 
    
         
            -
                        const addSeparator = addStep.toLocaleString();
         
     | 
| 
       66 
     | 
    
         
            -
                        const replaceSeparator = addSeparator.split(',').join(this.thousandsSeparator());
         
     | 
| 
       67 
     | 
    
         
            -
                        this.stringValue = replaceSeparator;
         
     | 
| 
       68 
     | 
    
         
            -
                    }
         
     | 
| 
       69 
     | 
    
         
            -
                    else {
         
     | 
| 
       70 
     | 
    
         
            -
                        const convert = +this.stringValue + this.step();
         
     | 
| 
       71 
     | 
    
         
            -
                        this.commitValue(convert);
         
     | 
| 
       72 
     | 
    
         
            -
                        this.stringValue = convert.toString();
         
     | 
| 
       73 
     | 
    
         
            -
                    }
         
     | 
| 
       74 
     | 
    
         
            -
                }
         
     | 
| 
       75 
     | 
    
         
            -
                minusValue() {
         
     | 
| 
       76 
     | 
    
         
            -
                    if (this.disabled || this.readonly) {
         
     | 
| 
       77 
     | 
    
         
            -
                        return;
         
     | 
| 
       78 
     | 
    
         
            -
                    }
         
     | 
| 
       79 
     | 
    
         
            -
                    if (this.mode() === 'thousandsSeparator') {
         
     | 
| 
       80 
     | 
    
         
            -
                        const removeSeparator = this.stringValue.split(this.thousandsSeparator()).join('');
         
     | 
| 
       81 
     | 
    
         
            -
                        const addStep = +removeSeparator - this.step();
         
     | 
| 
       82 
     | 
    
         
            -
                        this.commitValue(addStep);
         
     | 
| 
       83 
     | 
    
         
            -
                        const addSeparator = addStep.toLocaleString();
         
     | 
| 
       84 
     | 
    
         
            -
                        const replaceSeparator = addSeparator.split(',').join(this.thousandsSeparator());
         
     | 
| 
       85 
     | 
    
         
            -
                        this.stringValue = replaceSeparator;
         
     | 
| 
       86 
     | 
    
         
            -
                    }
         
     | 
| 
       87 
     | 
    
         
            -
                    else {
         
     | 
| 
       88 
     | 
    
         
            -
                        const convert = +this.stringValue + this.step() * -1;
         
     | 
| 
       89 
     | 
    
         
            -
                        this.commitValue(convert);
         
     | 
| 
       90 
     | 
    
         
            -
                        this.stringValue = convert.toString();
         
     | 
| 
       91 
     | 
    
         
            -
                    }
         
     | 
| 
       92 
     | 
    
         
            -
                }
         
     | 
| 
       93 
     | 
    
         
            -
                handleOnKeydownEvent(e) {
         
     | 
| 
       94 
     | 
    
         
            -
                    if (e.key !== 'ArrowUp' && e.key !== 'ArrowDown')
         
     | 
| 
       95 
     | 
    
         
            -
                        return;
         
     | 
| 
       96 
     | 
    
         
            -
                    if (this.disabled || this.readonly)
         
     | 
| 
       97 
     | 
    
         
            -
                        return;
         
     | 
| 
       98 
     | 
    
         
            -
                    if (e.key === 'ArrowUp') {
         
     | 
| 
       99 
     | 
    
         
            -
                        this.plusValue();
         
     | 
| 
       100 
     | 
    
         
            -
                    }
         
     | 
| 
       101 
     | 
    
         
            -
                    else if (e.key === 'ArrowDown') {
         
     | 
| 
       102 
     | 
    
         
            -
                        this.minusValue();
         
     | 
| 
       103 
     | 
    
         
            -
                    }
         
     | 
| 
       104 
     | 
    
         
            -
                }
         
     | 
| 
       105 
     | 
    
         
            -
                handleUpClick() {
         
     | 
| 
       106 
     | 
    
         
            -
                    if (this.disabled || this.readonly)
         
     | 
| 
       107 
     | 
    
         
            -
                        return;
         
     | 
| 
       108 
     | 
    
         
            -
                    this.plusValue();
         
     | 
| 
       109 
     | 
    
         
            -
                }
         
     | 
| 
       110 
     | 
    
         
            -
                handleDownClick() {
         
     | 
| 
       111 
     | 
    
         
            -
                    this.minusValue();
         
     | 
| 
       112 
     | 
    
         
            -
                }
         
     | 
| 
       113 
     | 
    
         
            -
                handleOnMaskChanged(e) {
         
     | 
| 
       114 
     | 
    
         
            -
                    if (!e.unmasked || isNaN(+e.unmasked)) {
         
     | 
| 
       115 
     | 
    
         
            -
                        this.commitValue(null);
         
     | 
| 
       116 
     | 
    
         
            -
                        return;
         
     | 
| 
       117 
     | 
    
         
            -
                    }
         
     | 
| 
       118 
     | 
    
         
            -
                    this.commitValue(+e.unmasked);
         
     | 
| 
       119 
     | 
    
         
            -
                }
         
     | 
| 
       120 
     | 
    
         
            -
                onWheel(event) {
         
     | 
| 
       121 
     | 
    
         
            -
                    if (this.changeOnScroll()) {
         
     | 
| 
       122 
     | 
    
         
            -
                        event.preventDefault();
         
     | 
| 
       123 
     | 
    
         
            -
                        if (!this.disabled && !this.readonly) {
         
     | 
| 
       124 
     | 
    
         
            -
                            if (event.deltaY > 0) {
         
     | 
| 
       125 
     | 
    
         
            -
                                this.minusValue();
         
     | 
| 
       126 
     | 
    
         
            -
                            }
         
     | 
| 
       127 
     | 
    
         
            -
                            else {
         
     | 
| 
       128 
     | 
    
         
            -
                                this.plusValue();
         
     | 
| 
       129 
     | 
    
         
            -
                            }
         
     | 
| 
       130 
     | 
    
         
            -
                        }
         
     | 
| 
       131 
     | 
    
         
            -
                    }
         
     | 
| 
       132 
     | 
    
         
            -
                }
         
     | 
| 
       133 
     | 
    
         
            -
                get __hostName() {
         
     | 
| 
       134 
     | 
    
         
            -
                    return this.name;
         
     | 
| 
       135 
     | 
    
         
            -
                }
         
     | 
| 
       136 
     | 
    
         
            -
                static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: AXNumberBox2Component, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
         
     | 
| 
       137 
     | 
    
         
            -
                static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.6", type: AXNumberBox2Component, isStandalone: true, selector: "ax-number-box-2", inputs: { disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: false, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: false, isRequired: false, transformFunction: null }, tabIndex: { classPropertyName: "tabIndex", publicName: "tabIndex", isSignal: false, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: false, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: false, isRequired: false, transformFunction: null }, state: { classPropertyName: "state", publicName: "state", isSignal: false, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: false, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: false, isRequired: false, transformFunction: null }, look: { classPropertyName: "look", publicName: "look", isSignal: false, isRequired: false, transformFunction: null }, minValue: { classPropertyName: "minValue", publicName: "minValue", isSignal: true, isRequired: false, transformFunction: null }, maxValue: { classPropertyName: "maxValue", publicName: "maxValue", isSignal: true, isRequired: false, transformFunction: null }, showSpinButtons: { classPropertyName: "showSpinButtons", publicName: "showSpinButtons", isSignal: true, isRequired: false, transformFunction: null }, thousandsSeparator: { classPropertyName: "thousandsSeparator", publicName: "thousandsSeparator", isSignal: true, isRequired: false, transformFunction: null }, decimals: { classPropertyName: "decimals", publicName: "decimals", isSignal: true, isRequired: false, transformFunction: null }, changeOnScroll: { classPropertyName: "changeOnScroll", publicName: "changeOnScroll", isSignal: true, isRequired: false, transformFunction: null }, step: { classPropertyName: "step", publicName: "step", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { valueChange: "valueChange", stateChange: "stateChange", onValueChanged: "onValueChanged", onBlur: "onBlur", onFocus: "onFocus", readonlyChange: "readonlyChange", disabledChange: "disabledChange", onKeyDown: "onKeyDown", onKeyUp: "onKeyUp", onKeyPress: "onKeyPress", thousandsSeparator: "thousandsSeparatorChange" }, host: { properties: { "attr.name": "this.__hostName" } }, providers: [
         
     | 
| 
       138 
     | 
    
         
            -
                        { provide: AXComponent, useExisting: AXNumberBox2Component },
         
     | 
| 
       139 
     | 
    
         
            -
                        { provide: AXFocusableComponent, useExisting: AXNumberBox2Component },
         
     | 
| 
       140 
     | 
    
         
            -
                        { provide: AXClearableComponent, useExisting: AXNumberBox2Component },
         
     | 
| 
       141 
     | 
    
         
            -
                        { provide: AXValuableComponent, useExisting: AXNumberBox2Component },
         
     | 
| 
       142 
     | 
    
         
            -
                        {
         
     | 
| 
       143 
     | 
    
         
            -
                            provide: NG_VALUE_ACCESSOR,
         
     | 
| 
       144 
     | 
    
         
            -
                            useExisting: forwardRef(() => AXNumberBox2Component),
         
     | 
| 
       145 
     | 
    
         
            -
                            multi: true,
         
     | 
| 
       146 
     | 
    
         
            -
                        },
         
     | 
| 
       147 
     | 
    
         
            -
                    ], viewQueries: [{ propertyName: "input", first: true, predicate: ["input"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div\n  class=\"ax-editor-container  ax-{{ look }}\"\n  [class.ax-state-disabled]=\"disabled\"\n  [class.ax-state-readonly]=\"readonly\"\n>\n  <ng-content select=\"ax-prefix\"> </ng-content>\n  <input\n    #input\n    axInputMask\n    (onMaskChanged)=\"handleOnMaskChanged($event)\"\n    [maskMode]=\"mode()\"\n    inputmode=\"numeric\"\n    class=\"ax-input\"\n    [minValue]=\"minValue()\"\n    [maxValue]=\"maxValue()\"\n    [separator]=\"thousandsSeparator()\"\n    [decimal]=\"decimals()\"\n    [id]=\"id\"\n    [attr.placeholder]=\"placeholder\"\n    [attr.autocomplete]=\"'off'\"\n    [class.ax-state-disabled]=\"disabled\"\n    [class.ax-state-readonly]=\"readonly\"\n    [disabled]=\"disabled\"\n    [readonly]=\"readonly\"\n    [tabindex]=\"tabIndex\"\n    [(ngModel)]=\"stringValue\"\n    (keydown)=\"handleOnKeydownEvent($event)\"\n    (keyup)=\"emitOnKeyupEvent($event)\"\n    (keypress)=\"emitOnKeypressEvent($event)\"\n    (focus)=\"emitOnFocusEvent($event)\"\n    (blur)=\"emitOnBlurEvent($event)\"\n    (wheel)=\"onWheel($event)\"\n  />\n  @if (input.value && !disabled && !readonly) {\n    <ng-content select=\"ax-clear-button\"></ng-content>\n  }\n  @if (showSpinButtons()) {\n    <div class=\"ax-number-box-control\">\n      <button\n        type=\"button\"\n        class=\"ax-editor-button\"\n        [class.ax-state-disabled]=\"disabled\"\n        (click)=\"handleUpClick()\"\n        tabindex=\"-1\"\n        [disabled]=\"disabled\"\n      >\n        <span class=\"ax-icon ax-icon-chevron-up ax-arrow-button\"></span>\n      </button>\n      <button\n        type=\"button\"\n        class=\"ax-editor-button\"\n        [class.ax-state-disabled]=\"disabled\"\n        (click)=\"handleDownClick()\"\n        tabindex=\"-1\"\n        [disabled]=\"disabled\"\n      >\n        <span class=\"ax-icon ax-icon-chevron-down ax-arrow-button\"></span>\n      </button>\n    </div>\n  }\n\n  <ng-content select=\"ax-suffix\"> </ng-content>\n</div>\n<ng-content select=\"ax-validation-rule\"> </ng-content>\n<div class=\"ax-error-container\"></div>\n", styles: ["ax-number-box-2 input::-webkit-outer-spin-button,ax-number-box-2 input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}ax-number-box-2 input[type=number]{-moz-appearance:textfield}ax-number-box-2 .ax-number-box-control{--ax-comp-editor-button-height: 50%;--ax-comp-editor-button-font-size: .75rem;height:70%;display:flex;flex-direction:column}ax-number-box-2 .ax-number-box-control button{font-size:.75rem;align-items:center}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: AXInputMaskDirective, selector: "[axInputMask]", inputs: ["maskMode", "separator", "eager", "minValue", "maxValue", "decimal"], outputs: ["onMaskChanged"], exportAs: ["axInputMask"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "ngmodule", type: AXDecoratorModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
         
     | 
| 
       148 
     | 
    
         
            -
            }
         
     | 
| 
       149 
     | 
    
         
            -
            i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.6", ngImport: i0, type: AXNumberBox2Component, decorators: [{
         
     | 
| 
       150 
     | 
    
         
            -
                        type: Component,
         
     | 
| 
       151 
     | 
    
         
            -
                        args: [{ selector: 'ax-number-box-2', inputs: ['disabled', 'readonly', 'tabIndex', 'placeholder', 'value', 'state', 'name', 'id', 'look'], outputs: [
         
     | 
| 
       152 
     | 
    
         
            -
                                    'valueChange',
         
     | 
| 
       153 
     | 
    
         
            -
                                    'stateChange',
         
     | 
| 
       154 
     | 
    
         
            -
                                    'onValueChanged',
         
     | 
| 
       155 
     | 
    
         
            -
                                    'onBlur',
         
     | 
| 
       156 
     | 
    
         
            -
                                    'onFocus',
         
     | 
| 
       157 
     | 
    
         
            -
                                    'readonlyChange',
         
     | 
| 
       158 
     | 
    
         
            -
                                    'disabledChange',
         
     | 
| 
       159 
     | 
    
         
            -
                                    'onKeyDown',
         
     | 
| 
       160 
     | 
    
         
            -
                                    'onKeyUp',
         
     | 
| 
       161 
     | 
    
         
            -
                                    'onKeyPress',
         
     | 
| 
       162 
     | 
    
         
            -
                                ], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [
         
     | 
| 
       163 
     | 
    
         
            -
                                    { provide: AXComponent, useExisting: AXNumberBox2Component },
         
     | 
| 
       164 
     | 
    
         
            -
                                    { provide: AXFocusableComponent, useExisting: AXNumberBox2Component },
         
     | 
| 
       165 
     | 
    
         
            -
                                    { provide: AXClearableComponent, useExisting: AXNumberBox2Component },
         
     | 
| 
       166 
     | 
    
         
            -
                                    { provide: AXValuableComponent, useExisting: AXNumberBox2Component },
         
     | 
| 
       167 
     | 
    
         
            -
                                    {
         
     | 
| 
       168 
     | 
    
         
            -
                                        provide: NG_VALUE_ACCESSOR,
         
     | 
| 
       169 
     | 
    
         
            -
                                        useExisting: forwardRef(() => AXNumberBox2Component),
         
     | 
| 
       170 
     | 
    
         
            -
                                        multi: true,
         
     | 
| 
       171 
     | 
    
         
            -
                                    },
         
     | 
| 
       172 
     | 
    
         
            -
                                ], imports: [FormsModule, AXInputMaskDirective, AXButtonModule, AXDecoratorModule], template: "<div\n  class=\"ax-editor-container  ax-{{ look }}\"\n  [class.ax-state-disabled]=\"disabled\"\n  [class.ax-state-readonly]=\"readonly\"\n>\n  <ng-content select=\"ax-prefix\"> </ng-content>\n  <input\n    #input\n    axInputMask\n    (onMaskChanged)=\"handleOnMaskChanged($event)\"\n    [maskMode]=\"mode()\"\n    inputmode=\"numeric\"\n    class=\"ax-input\"\n    [minValue]=\"minValue()\"\n    [maxValue]=\"maxValue()\"\n    [separator]=\"thousandsSeparator()\"\n    [decimal]=\"decimals()\"\n    [id]=\"id\"\n    [attr.placeholder]=\"placeholder\"\n    [attr.autocomplete]=\"'off'\"\n    [class.ax-state-disabled]=\"disabled\"\n    [class.ax-state-readonly]=\"readonly\"\n    [disabled]=\"disabled\"\n    [readonly]=\"readonly\"\n    [tabindex]=\"tabIndex\"\n    [(ngModel)]=\"stringValue\"\n    (keydown)=\"handleOnKeydownEvent($event)\"\n    (keyup)=\"emitOnKeyupEvent($event)\"\n    (keypress)=\"emitOnKeypressEvent($event)\"\n    (focus)=\"emitOnFocusEvent($event)\"\n    (blur)=\"emitOnBlurEvent($event)\"\n    (wheel)=\"onWheel($event)\"\n  />\n  @if (input.value && !disabled && !readonly) {\n    <ng-content select=\"ax-clear-button\"></ng-content>\n  }\n  @if (showSpinButtons()) {\n    <div class=\"ax-number-box-control\">\n      <button\n        type=\"button\"\n        class=\"ax-editor-button\"\n        [class.ax-state-disabled]=\"disabled\"\n        (click)=\"handleUpClick()\"\n        tabindex=\"-1\"\n        [disabled]=\"disabled\"\n      >\n        <span class=\"ax-icon ax-icon-chevron-up ax-arrow-button\"></span>\n      </button>\n      <button\n        type=\"button\"\n        class=\"ax-editor-button\"\n        [class.ax-state-disabled]=\"disabled\"\n        (click)=\"handleDownClick()\"\n        tabindex=\"-1\"\n        [disabled]=\"disabled\"\n      >\n        <span class=\"ax-icon ax-icon-chevron-down ax-arrow-button\"></span>\n      </button>\n    </div>\n  }\n\n  <ng-content select=\"ax-suffix\"> </ng-content>\n</div>\n<ng-content select=\"ax-validation-rule\"> </ng-content>\n<div class=\"ax-error-container\"></div>\n", styles: ["ax-number-box-2 input::-webkit-outer-spin-button,ax-number-box-2 input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}ax-number-box-2 input[type=number]{-moz-appearance:textfield}ax-number-box-2 .ax-number-box-control{--ax-comp-editor-button-height: 50%;--ax-comp-editor-button-font-size: .75rem;height:70%;display:flex;flex-direction:column}ax-number-box-2 .ax-number-box-control button{font-size:.75rem;align-items:center}\n"] }]
         
     | 
| 
       173 
     | 
    
         
            -
                    }], propDecorators: { minValue: [{ type: i0.Input, args: [{ isSignal: true, alias: "minValue", required: false }] }], maxValue: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxValue", required: false }] }], showSpinButtons: [{ type: i0.Input, args: [{ isSignal: true, alias: "showSpinButtons", required: false }] }], thousandsSeparator: [{ type: i0.Input, args: [{ isSignal: true, alias: "thousandsSeparator", required: false }] }, { type: i0.Output, args: ["thousandsSeparatorChange"] }], decimals: [{ type: i0.Input, args: [{ isSignal: true, alias: "decimals", required: false }] }], changeOnScroll: [{ type: i0.Input, args: [{ isSignal: true, alias: "changeOnScroll", required: false }] }], step: [{ type: i0.Input, args: [{ isSignal: true, alias: "step", required: false }] }], input: [{ type: i0.ViewChild, args: ['input', { isSignal: true }] }], __hostName: [{
         
     | 
| 
       174 
     | 
    
         
            -
                            type: HostBinding,
         
     | 
| 
       175 
     | 
    
         
            -
                            args: ['attr.name']
         
     | 
| 
       176 
     | 
    
         
            -
                        }] } });
         
     | 
| 
       177 
     | 
    
         
            -
             
     | 
| 
       178 
     | 
    
         
            -
            /**
         
     | 
| 
       179 
     | 
    
         
            -
             * Generated bundle index. Do not edit.
         
     | 
| 
       180 
     | 
    
         
            -
             */
         
     | 
| 
       181 
     | 
    
         
            -
             
     | 
| 
       182 
     | 
    
         
            -
            export { AXNumberBox2Component };
         
     | 
| 
       183 
     | 
    
         
            -
            //# sourceMappingURL=acorex-components-number-box-2.mjs.map
         
     | 
| 
         @@ -1 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            {"version":3,"file":"acorex-components-number-box-2.mjs","sources":["../tmp-esm2022/number-box-2/lib/number-box-2.component.js","../tmp-esm2022/number-box-2/acorex-components-number-box-2.js"],"sourcesContent":["import { AXInputMaskDirective } from '@acorex/cdk/input-mask';\nimport { ChangeDetectionStrategy, Component, HostBinding, ViewEncapsulation, afterNextRender, effect, forwardRef, input, model, signal, viewChild, } from '@angular/core';\nimport { AXClearableComponent, AXComponent, AXFocusableComponent, AXValuableComponent, MXInputBaseValueComponent, MXLookComponent, } from '@acorex/cdk/common';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { classes } from 'polytype';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/forms\";\n/**\n * The NumberBox is a component which detects user interaction and triggers a corresponding event\n *\n * @category Components\n */\nexport class AXNumberBox2Component extends classes((MXInputBaseValueComponent), MXLookComponent) {\n    constructor() {\n        super(...arguments);\n        this.minValue = input(null, ...(ngDevMode ? [{ debugName: \"minValue\" }] : []));\n        this.maxValue = input(null, ...(ngDevMode ? [{ debugName: \"maxValue\" }] : []));\n        this.showSpinButtons = input(true, ...(ngDevMode ? [{ debugName: \"showSpinButtons\" }] : []));\n        this.thousandsSeparator = model(null, ...(ngDevMode ? [{ debugName: \"thousandsSeparator\" }] : []));\n        this.decimals = input(0, ...(ngDevMode ? [{ debugName: \"decimals\" }] : []));\n        this.changeOnScroll = input(false, ...(ngDevMode ? [{ debugName: \"changeOnScroll\" }] : []));\n        this.step = input(1, ...(ngDevMode ? [{ debugName: \"step\" }] : []));\n        this.mode = signal('digits', ...(ngDevMode ? [{ debugName: \"mode\" }] : []));\n        this.input = viewChild('input', ...(ngDevMode ? [{ debugName: \"input\" }] : []));\n        this.stringValue = '0';\n        this.#init = afterNextRender(() => {\n            this.onFocus.subscribe(() => {\n                this.input().nativeElement.select();\n            });\n        });\n        this.#eff = effect(() => {\n            if (this.thousandsSeparator() && this.decimals()) {\n                this.mode.set('digits');\n                return;\n            }\n            else if (this.thousandsSeparator()) {\n                this.mode.set('thousandsSeparator');\n                return;\n            }\n            else if (this.decimals()) {\n                this.mode.set('decimal');\n            }\n        }, ...(ngDevMode ? [{ debugName: \"#eff\" }] : []));\n    }\n    internalValueChanged(value) {\n        if (!value) {\n            this.stringValue = '0';\n            return;\n        }\n        this.stringValue = String(value);\n    }\n    #init;\n    #eff;\n    plusValue() {\n        if (this.disabled || this.readonly) {\n            return;\n        }\n        if (this.mode() === 'thousandsSeparator') {\n            const removeSeparator = this.stringValue.split(this.thousandsSeparator()).join('');\n            const addStep = +removeSeparator + this.step();\n            this.commitValue(addStep);\n            const addSeparator = addStep.toLocaleString();\n            const replaceSeparator = addSeparator.split(',').join(this.thousandsSeparator());\n            this.stringValue = replaceSeparator;\n        }\n        else {\n            const convert = +this.stringValue + this.step();\n            this.commitValue(convert);\n            this.stringValue = convert.toString();\n        }\n    }\n    minusValue() {\n        if (this.disabled || this.readonly) {\n            return;\n        }\n        if (this.mode() === 'thousandsSeparator') {\n            const removeSeparator = this.stringValue.split(this.thousandsSeparator()).join('');\n            const addStep = +removeSeparator - this.step();\n            this.commitValue(addStep);\n            const addSeparator = addStep.toLocaleString();\n            const replaceSeparator = addSeparator.split(',').join(this.thousandsSeparator());\n            this.stringValue = replaceSeparator;\n        }\n        else {\n            const convert = +this.stringValue + this.step() * -1;\n            this.commitValue(convert);\n            this.stringValue = convert.toString();\n        }\n    }\n    handleOnKeydownEvent(e) {\n        if (e.key !== 'ArrowUp' && e.key !== 'ArrowDown')\n            return;\n        if (this.disabled || this.readonly)\n            return;\n        if (e.key === 'ArrowUp') {\n            this.plusValue();\n        }\n        else if (e.key === 'ArrowDown') {\n            this.minusValue();\n        }\n    }\n    handleUpClick() {\n        if (this.disabled || this.readonly)\n            return;\n        this.plusValue();\n    }\n    handleDownClick() {\n        this.minusValue();\n    }\n    handleOnMaskChanged(e) {\n        if (!e.unmasked || isNaN(+e.unmasked)) {\n            this.commitValue(null);\n            return;\n        }\n        this.commitValue(+e.unmasked);\n    }\n    onWheel(event) {\n        if (this.changeOnScroll()) {\n            event.preventDefault();\n            if (!this.disabled && !this.readonly) {\n                if (event.deltaY > 0) {\n                    this.minusValue();\n                }\n                else {\n                    this.plusValue();\n                }\n            }\n        }\n    }\n    get __hostName() {\n        return this.name;\n    }\n    static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.6\", ngImport: i0, type: AXNumberBox2Component, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n    static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.3.6\", type: AXNumberBox2Component, isStandalone: true, selector: \"ax-number-box-2\", inputs: { disabled: { classPropertyName: \"disabled\", publicName: \"disabled\", isSignal: false, isRequired: false, transformFunction: null }, readonly: { classPropertyName: \"readonly\", publicName: \"readonly\", isSignal: false, isRequired: false, transformFunction: null }, tabIndex: { classPropertyName: \"tabIndex\", publicName: \"tabIndex\", isSignal: false, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: \"placeholder\", publicName: \"placeholder\", isSignal: false, isRequired: false, transformFunction: null }, value: { classPropertyName: \"value\", publicName: \"value\", isSignal: false, isRequired: false, transformFunction: null }, state: { classPropertyName: \"state\", publicName: \"state\", isSignal: false, isRequired: false, transformFunction: null }, name: { classPropertyName: \"name\", publicName: \"name\", isSignal: false, isRequired: false, transformFunction: null }, id: { classPropertyName: \"id\", publicName: \"id\", isSignal: false, isRequired: false, transformFunction: null }, look: { classPropertyName: \"look\", publicName: \"look\", isSignal: false, isRequired: false, transformFunction: null }, minValue: { classPropertyName: \"minValue\", publicName: \"minValue\", isSignal: true, isRequired: false, transformFunction: null }, maxValue: { classPropertyName: \"maxValue\", publicName: \"maxValue\", isSignal: true, isRequired: false, transformFunction: null }, showSpinButtons: { classPropertyName: \"showSpinButtons\", publicName: \"showSpinButtons\", isSignal: true, isRequired: false, transformFunction: null }, thousandsSeparator: { classPropertyName: \"thousandsSeparator\", publicName: \"thousandsSeparator\", isSignal: true, isRequired: false, transformFunction: null }, decimals: { classPropertyName: \"decimals\", publicName: \"decimals\", isSignal: true, isRequired: false, transformFunction: null }, changeOnScroll: { classPropertyName: \"changeOnScroll\", publicName: \"changeOnScroll\", isSignal: true, isRequired: false, transformFunction: null }, step: { classPropertyName: \"step\", publicName: \"step\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { valueChange: \"valueChange\", stateChange: \"stateChange\", onValueChanged: \"onValueChanged\", onBlur: \"onBlur\", onFocus: \"onFocus\", readonlyChange: \"readonlyChange\", disabledChange: \"disabledChange\", onKeyDown: \"onKeyDown\", onKeyUp: \"onKeyUp\", onKeyPress: \"onKeyPress\", thousandsSeparator: \"thousandsSeparatorChange\" }, host: { properties: { \"attr.name\": \"this.__hostName\" } }, providers: [\n            { provide: AXComponent, useExisting: AXNumberBox2Component },\n            { provide: AXFocusableComponent, useExisting: AXNumberBox2Component },\n            { provide: AXClearableComponent, useExisting: AXNumberBox2Component },\n            { provide: AXValuableComponent, useExisting: AXNumberBox2Component },\n            {\n                provide: NG_VALUE_ACCESSOR,\n                useExisting: forwardRef(() => AXNumberBox2Component),\n                multi: true,\n            },\n        ], viewQueries: [{ propertyName: \"input\", first: true, predicate: [\"input\"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: \"<div\\n  class=\\\"ax-editor-container  ax-{{ look }}\\\"\\n  [class.ax-state-disabled]=\\\"disabled\\\"\\n  [class.ax-state-readonly]=\\\"readonly\\\"\\n>\\n  <ng-content select=\\\"ax-prefix\\\"> </ng-content>\\n  <input\\n    #input\\n    axInputMask\\n    (onMaskChanged)=\\\"handleOnMaskChanged($event)\\\"\\n    [maskMode]=\\\"mode()\\\"\\n    inputmode=\\\"numeric\\\"\\n    class=\\\"ax-input\\\"\\n    [minValue]=\\\"minValue()\\\"\\n    [maxValue]=\\\"maxValue()\\\"\\n    [separator]=\\\"thousandsSeparator()\\\"\\n    [decimal]=\\\"decimals()\\\"\\n    [id]=\\\"id\\\"\\n    [attr.placeholder]=\\\"placeholder\\\"\\n    [attr.autocomplete]=\\\"'off'\\\"\\n    [class.ax-state-disabled]=\\\"disabled\\\"\\n    [class.ax-state-readonly]=\\\"readonly\\\"\\n    [disabled]=\\\"disabled\\\"\\n    [readonly]=\\\"readonly\\\"\\n    [tabindex]=\\\"tabIndex\\\"\\n    [(ngModel)]=\\\"stringValue\\\"\\n    (keydown)=\\\"handleOnKeydownEvent($event)\\\"\\n    (keyup)=\\\"emitOnKeyupEvent($event)\\\"\\n    (keypress)=\\\"emitOnKeypressEvent($event)\\\"\\n    (focus)=\\\"emitOnFocusEvent($event)\\\"\\n    (blur)=\\\"emitOnBlurEvent($event)\\\"\\n    (wheel)=\\\"onWheel($event)\\\"\\n  />\\n  @if (input.value && !disabled && !readonly) {\\n    <ng-content select=\\\"ax-clear-button\\\"></ng-content>\\n  }\\n  @if (showSpinButtons()) {\\n    <div class=\\\"ax-number-box-control\\\">\\n      <button\\n        type=\\\"button\\\"\\n        class=\\\"ax-editor-button\\\"\\n        [class.ax-state-disabled]=\\\"disabled\\\"\\n        (click)=\\\"handleUpClick()\\\"\\n        tabindex=\\\"-1\\\"\\n        [disabled]=\\\"disabled\\\"\\n      >\\n        <span class=\\\"ax-icon ax-icon-chevron-up ax-arrow-button\\\"></span>\\n      </button>\\n      <button\\n        type=\\\"button\\\"\\n        class=\\\"ax-editor-button\\\"\\n        [class.ax-state-disabled]=\\\"disabled\\\"\\n        (click)=\\\"handleDownClick()\\\"\\n        tabindex=\\\"-1\\\"\\n        [disabled]=\\\"disabled\\\"\\n      >\\n        <span class=\\\"ax-icon ax-icon-chevron-down ax-arrow-button\\\"></span>\\n      </button>\\n    </div>\\n  }\\n\\n  <ng-content select=\\\"ax-suffix\\\"> </ng-content>\\n</div>\\n<ng-content select=\\\"ax-validation-rule\\\"> </ng-content>\\n<div class=\\\"ax-error-container\\\"></div>\\n\", styles: [\"ax-number-box-2 input::-webkit-outer-spin-button,ax-number-box-2 input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}ax-number-box-2 input[type=number]{-moz-appearance:textfield}ax-number-box-2 .ax-number-box-control{--ax-comp-editor-button-height: 50%;--ax-comp-editor-button-font-size: .75rem;height:70%;display:flex;flex-direction:column}ax-number-box-2 .ax-number-box-control button{font-size:.75rem;align-items:center}\\n\"], dependencies: [{ kind: \"ngmodule\", type: FormsModule }, { kind: \"directive\", type: i1.DefaultValueAccessor, selector: \"input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]\" }, { kind: \"directive\", type: i1.NgControlStatus, selector: \"[formControlName],[ngModel],[formControl]\" }, { kind: \"directive\", type: i1.NgModel, selector: \"[ngModel]:not([formControlName]):not([formControl])\", inputs: [\"name\", \"disabled\", \"ngModel\", \"ngModelOptions\"], outputs: [\"ngModelChange\"], exportAs: [\"ngModel\"] }, { kind: \"directive\", type: AXInputMaskDirective, selector: \"[axInputMask]\", inputs: [\"maskMode\", \"separator\", \"eager\", \"minValue\", \"maxValue\", \"decimal\"], outputs: [\"onMaskChanged\"], exportAs: [\"axInputMask\"] }, { kind: \"ngmodule\", type: AXButtonModule }, { kind: \"ngmodule\", type: AXDecoratorModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.6\", ngImport: i0, type: AXNumberBox2Component, decorators: [{\n            type: Component,\n            args: [{ selector: 'ax-number-box-2', inputs: ['disabled', 'readonly', 'tabIndex', 'placeholder', 'value', 'state', 'name', 'id', 'look'], outputs: [\n                        'valueChange',\n                        'stateChange',\n                        'onValueChanged',\n                        'onBlur',\n                        'onFocus',\n                        'readonlyChange',\n                        'disabledChange',\n                        'onKeyDown',\n                        'onKeyUp',\n                        'onKeyPress',\n                    ], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [\n                        { provide: AXComponent, useExisting: AXNumberBox2Component },\n                        { provide: AXFocusableComponent, useExisting: AXNumberBox2Component },\n                        { provide: AXClearableComponent, useExisting: AXNumberBox2Component },\n                        { provide: AXValuableComponent, useExisting: AXNumberBox2Component },\n                        {\n                            provide: NG_VALUE_ACCESSOR,\n                            useExisting: forwardRef(() => AXNumberBox2Component),\n                            multi: true,\n                        },\n                    ], imports: [FormsModule, AXInputMaskDirective, AXButtonModule, AXDecoratorModule], template: \"<div\\n  class=\\\"ax-editor-container  ax-{{ look }}\\\"\\n  [class.ax-state-disabled]=\\\"disabled\\\"\\n  [class.ax-state-readonly]=\\\"readonly\\\"\\n>\\n  <ng-content select=\\\"ax-prefix\\\"> </ng-content>\\n  <input\\n    #input\\n    axInputMask\\n    (onMaskChanged)=\\\"handleOnMaskChanged($event)\\\"\\n    [maskMode]=\\\"mode()\\\"\\n    inputmode=\\\"numeric\\\"\\n    class=\\\"ax-input\\\"\\n    [minValue]=\\\"minValue()\\\"\\n    [maxValue]=\\\"maxValue()\\\"\\n    [separator]=\\\"thousandsSeparator()\\\"\\n    [decimal]=\\\"decimals()\\\"\\n    [id]=\\\"id\\\"\\n    [attr.placeholder]=\\\"placeholder\\\"\\n    [attr.autocomplete]=\\\"'off'\\\"\\n    [class.ax-state-disabled]=\\\"disabled\\\"\\n    [class.ax-state-readonly]=\\\"readonly\\\"\\n    [disabled]=\\\"disabled\\\"\\n    [readonly]=\\\"readonly\\\"\\n    [tabindex]=\\\"tabIndex\\\"\\n    [(ngModel)]=\\\"stringValue\\\"\\n    (keydown)=\\\"handleOnKeydownEvent($event)\\\"\\n    (keyup)=\\\"emitOnKeyupEvent($event)\\\"\\n    (keypress)=\\\"emitOnKeypressEvent($event)\\\"\\n    (focus)=\\\"emitOnFocusEvent($event)\\\"\\n    (blur)=\\\"emitOnBlurEvent($event)\\\"\\n    (wheel)=\\\"onWheel($event)\\\"\\n  />\\n  @if (input.value && !disabled && !readonly) {\\n    <ng-content select=\\\"ax-clear-button\\\"></ng-content>\\n  }\\n  @if (showSpinButtons()) {\\n    <div class=\\\"ax-number-box-control\\\">\\n      <button\\n        type=\\\"button\\\"\\n        class=\\\"ax-editor-button\\\"\\n        [class.ax-state-disabled]=\\\"disabled\\\"\\n        (click)=\\\"handleUpClick()\\\"\\n        tabindex=\\\"-1\\\"\\n        [disabled]=\\\"disabled\\\"\\n      >\\n        <span class=\\\"ax-icon ax-icon-chevron-up ax-arrow-button\\\"></span>\\n      </button>\\n      <button\\n        type=\\\"button\\\"\\n        class=\\\"ax-editor-button\\\"\\n        [class.ax-state-disabled]=\\\"disabled\\\"\\n        (click)=\\\"handleDownClick()\\\"\\n        tabindex=\\\"-1\\\"\\n        [disabled]=\\\"disabled\\\"\\n      >\\n        <span class=\\\"ax-icon ax-icon-chevron-down ax-arrow-button\\\"></span>\\n      </button>\\n    </div>\\n  }\\n\\n  <ng-content select=\\\"ax-suffix\\\"> </ng-content>\\n</div>\\n<ng-content select=\\\"ax-validation-rule\\\"> </ng-content>\\n<div class=\\\"ax-error-container\\\"></div>\\n\", styles: [\"ax-number-box-2 input::-webkit-outer-spin-button,ax-number-box-2 input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}ax-number-box-2 input[type=number]{-moz-appearance:textfield}ax-number-box-2 .ax-number-box-control{--ax-comp-editor-button-height: 50%;--ax-comp-editor-button-font-size: .75rem;height:70%;display:flex;flex-direction:column}ax-number-box-2 .ax-number-box-control button{font-size:.75rem;align-items:center}\\n\"] }]\n        }], propDecorators: { minValue: [{ type: i0.Input, args: [{ isSignal: true, alias: \"minValue\", required: false }] }], maxValue: [{ type: i0.Input, args: [{ isSignal: true, alias: \"maxValue\", required: false }] }], showSpinButtons: [{ type: i0.Input, args: [{ isSignal: true, alias: \"showSpinButtons\", required: false }] }], thousandsSeparator: [{ type: i0.Input, args: [{ isSignal: true, alias: \"thousandsSeparator\", required: false }] }, { type: i0.Output, args: [\"thousandsSeparatorChange\"] }], decimals: [{ type: i0.Input, args: [{ isSignal: true, alias: \"decimals\", required: false }] }], changeOnScroll: [{ type: i0.Input, args: [{ isSignal: true, alias: \"changeOnScroll\", required: false }] }], step: [{ type: i0.Input, args: [{ isSignal: true, alias: \"step\", required: false }] }], input: [{ type: i0.ViewChild, args: ['input', { isSignal: true }] }], __hostName: [{\n                type: HostBinding,\n                args: ['attr.name']\n            }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLWJveC0yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvbnVtYmVyLWJveC0yL3NyYy9saWIvbnVtYmVyLWJveC0yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvbnVtYmVyLWJveC0yL3NyYy9saWIvbnVtYmVyLWJveC0yLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxvQkFBb0IsRUFBeUIsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRixPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFFVCxXQUFXLEVBQ1gsaUJBQWlCLEVBQ2pCLGVBQWUsRUFDZixNQUFNLEVBQ04sVUFBVSxFQUNWLEtBQUssRUFDTCxLQUFLLEVBQ0wsTUFBTSxFQUNOLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQ0wsb0JBQW9CLEVBQ3BCLFdBQVcsRUFDWCxvQkFBb0IsRUFDcEIsbUJBQW1CLEVBQ25CLHlCQUF5QixFQUN6QixlQUFlLEdBQ2hCLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxXQUFXLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sVUFBVSxDQUFDOzs7QUFFbkM7Ozs7R0FJRztBQWlDSCxNQUFNLE9BQU8scUJBQXNCLFNBQVEsT0FBTyxDQUFDLENBQUEseUJBQWlDLENBQUEsRUFBRSxlQUFlLENBQUM7SUFoQ3RHOztRQWlDRSxhQUFRLEdBQUcsS0FBSyxDQUFTLElBQUksb0RBQUMsQ0FBQztRQUMvQixhQUFRLEdBQUcsS0FBSyxDQUFTLElBQUksb0RBQUMsQ0FBQztRQUMvQixvQkFBZSxHQUFHLEtBQUssQ0FBQyxJQUFJLDJEQUFDLENBQUM7UUFDOUIsdUJBQWtCLEdBQUcsS0FBSyxDQUFTLElBQUksOERBQUMsQ0FBQztRQUN6QyxhQUFRLEdBQUcsS0FBSyxDQUFDLENBQUMsb0RBQUMsQ0FBQztRQUNwQixtQkFBYyxHQUFHLEtBQUssQ0FBQyxLQUFLLDBEQUFDLENBQUM7UUFDOUIsU0FBSSxHQUFHLEtBQUssQ0FBQyxDQUFDLGdEQUFDLENBQUM7UUFDTixTQUFJLEdBQUcsTUFBTSxDQUE4QyxRQUFRLGdEQUFDLENBQUM7UUFDdkUsVUFBSyxHQUFHLFNBQVMsQ0FBK0IsT0FBTyxpREFBQyxDQUFDO1FBQ3ZELGdCQUFXLEdBQUcsR0FBRyxDQUFDO1FBVTVCLFVBQUssR0FBRyxlQUFlLENBQUMsR0FBRyxFQUFFO1lBQzNCLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtnQkFDMUIsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUN0QyxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBRUgsU0FBSSxHQUFHLE1BQU0sQ0FBQyxHQUFHLEVBQUU7WUFDakIsSUFBSSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQztnQkFDakQsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQ3hCLE9BQU87WUFDVCxDQUFDO2lCQUFNLElBQUksSUFBSSxDQUFDLGtCQUFrQixFQUFFLEVBQUUsQ0FBQztnQkFDckMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsb0JBQW9CLENBQUMsQ0FBQztnQkFDcEMsT0FBTztZQUNULENBQUM7aUJBQU0sSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQztnQkFDM0IsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDM0IsQ0FBQztRQUNILENBQUMsZ0RBQUMsQ0FBQztLQW1GSjtJQTNHb0Isb0JBQW9CLENBQUMsS0FBYTtRQUNuRCxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDWCxJQUFJLENBQUMsV0FBVyxHQUFHLEdBQUcsQ0FBQztZQUN2QixPQUFPO1FBQ1QsQ0FBQztRQUNELElBQUksQ0FBQyxXQUFXLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRCxLQUFLLENBSUY7SUFFSCxJQUFJLENBVUQ7SUFFSyxTQUFTO1FBQ2YsSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNuQyxPQUFPO1FBQ1QsQ0FBQztRQUNELElBQUksSUFBSSxDQUFDLElBQUksRUFBRSxLQUFLLG9CQUFvQixFQUFFLENBQUM7WUFDekMsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDbkYsTUFBTSxPQUFPLEdBQUcsQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQy9DLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUM7WUFFMUIsTUFBTSxZQUFZLEdBQUcsT0FBTyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQzlDLE1BQU0sZ0JBQWdCLEdBQUcsWUFBWSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUMsQ0FBQztZQUNqRixJQUFJLENBQUMsV0FBVyxHQUFHLGdCQUFnQixDQUFDO1FBQ3RDLENBQUM7YUFBTSxDQUFDO1lBQ04sTUFBTSxPQUFPLEdBQUcsQ0FBQyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNoRCxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQzFCLElBQUksQ0FBQyxXQUFXLEdBQUcsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3hDLENBQUM7SUFDSCxDQUFDO0lBRU8sVUFBVTtRQUNoQixJQUFJLElBQUksQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ25DLE9BQU87UUFDVCxDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFLEtBQUssb0JBQW9CLEVBQUUsQ0FBQztZQUN6QyxNQUFNLGVBQWUsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUNuRixNQUFNLE9BQU8sR0FBRyxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDL0MsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUUxQixNQUFNLFlBQVksR0FBRyxPQUFPLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDOUMsTUFBTSxnQkFBZ0IsR0FBRyxZQUFZLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDO1lBQ2pGLElBQUksQ0FBQyxXQUFXLEdBQUcsZ0JBQWdCLENBQUM7UUFDdEMsQ0FBQzthQUFNLENBQUM7WUFDTixNQUFNLE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQ3JELElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDMUIsSUFBSSxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDeEMsQ0FBQztJQUNILENBQUM7SUFFUyxvQkFBb0IsQ0FBQyxDQUFnQjtRQUM3QyxJQUFJLENBQUMsQ0FBQyxHQUFHLEtBQUssU0FBUyxJQUFJLENBQUMsQ0FBQyxHQUFHLEtBQUssV0FBVztZQUFFLE9BQU87UUFDekQsSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxRQUFRO1lBQUUsT0FBTztRQUMzQyxJQUFJLENBQUMsQ0FBQyxHQUFHLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ25CLENBQUM7YUFBTSxJQUFJLENBQUMsQ0FBQyxHQUFHLEtBQUssV0FBVyxFQUFFLENBQUM7WUFDakMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ3BCLENBQUM7SUFDSCxDQUFDO0lBRVMsYUFBYTtRQUNyQixJQUFJLElBQUksQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLFFBQVE7WUFBRSxPQUFPO1FBQzNDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBQ1MsZUFBZTtRQUN2QixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUVTLG1CQUFtQixDQUFDLENBQW1CO1FBQy9DLElBQUksQ0FBQyxDQUFDLENBQUMsUUFBUSxJQUFJLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO1lBQ3RDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDdkIsT0FBTztRQUNULENBQUM7UUFDRCxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFUyxPQUFPLENBQUMsS0FBaUI7UUFDakMsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFLEVBQUUsQ0FBQztZQUMxQixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDdkIsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ3JDLElBQUksS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztvQkFDckIsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO2dCQUNwQixDQUFDO3FCQUFNLENBQUM7b0JBQ04sSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO2dCQUNuQixDQUFDO1lBQ0gsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRUQsSUFDWSxVQUFVO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztJQUNuQixDQUFDOzhHQXRIVSxxQkFBcUI7a0dBQXJCLHFCQUFxQiwwK0VBYnJCO1lBQ1QsRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxxQkFBcUIsRUFBRTtZQUM1RCxFQUFFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxXQUFXLEVBQUUscUJBQXFCLEVBQUU7WUFDckUsRUFBRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsV0FBVyxFQUFFLHFCQUFxQixFQUFFO1lBQ3JFLEVBQUUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFdBQVcsRUFBRSxxQkFBcUIsRUFBRTtZQUNwRTtnQkFDRSxPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHFCQUFxQixDQUFDO2dCQUNwRCxLQUFLLEVBQUUsSUFBSTthQUNaO1NBQ0YsaUtDL0RILGloRUFpRUEsZ2ZERFksV0FBVywrbUJBQUUsb0JBQW9CLCtMQUFFLGNBQWMsOEJBQUUsaUJBQWlCOzsyRkFFbkUscUJBQXFCO2tCQWhDakMsU0FBUzsrQkFDRSxpQkFBaUIsVUFHbkIsQ0FBQyxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxhQUFhLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sQ0FBQyxXQUMxRjt3QkFDUCxhQUFhO3dCQUNiLGFBQWE7d0JBQ2IsZ0JBQWdCO3dCQUNoQixRQUFRO3dCQUNSLFNBQVM7d0JBQ1QsZ0JBQWdCO3dCQUNoQixnQkFBZ0I7d0JBQ2hCLFdBQVc7d0JBQ1gsU0FBUzt3QkFDVCxZQUFZO3FCQUNiLG1CQUNnQix1QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQyxpQkFBaUIsQ0FBQyxJQUFJLGFBQzFCO3dCQUNULEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxXQUFXLHVCQUF1QixFQUFFO3dCQUM1RCxFQUFFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxXQUFXLHVCQUF1QixFQUFFO3dCQUNyRSxFQUFFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxXQUFXLHVCQUF1QixFQUFFO3dCQUNyRSxFQUFFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxXQUFXLHVCQUF1QixFQUFFO3dCQUNwRTs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxzQkFBc0IsQ0FBQzs0QkFDcEQsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0YsV0FDUSxDQUFDLFdBQVcsRUFBRSxvQkFBb0IsRUFBRSxjQUFjLEVBQUUsaUJBQWlCLENBQUM7azBCQVd2QixPQUFPO3NCQTBHOUQsV0FBVzt1QkFBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhJbnB1dE1hc2tEaXJlY3RpdmUsIHR5cGUgQVhJbnB1dE1hc2tFdmVudCB9IGZyb20gJ0BhY29yZXgvY2RrL2lucHV0LW1hc2snO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgSG9zdEJpbmRpbmcsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxuICBhZnRlck5leHRSZW5kZXIsXG4gIGVmZmVjdCxcbiAgZm9yd2FyZFJlZixcbiAgaW5wdXQsXG4gIG1vZGVsLFxuICBzaWduYWwsXG4gIHZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7XG4gIEFYQ2xlYXJhYmxlQ29tcG9uZW50LFxuICBBWENvbXBvbmVudCxcbiAgQVhGb2N1c2FibGVDb21wb25lbnQsXG4gIEFYVmFsdWFibGVDb21wb25lbnQsXG4gIE1YSW5wdXRCYXNlVmFsdWVDb21wb25lbnQsXG4gIE1YTG9va0NvbXBvbmVudCxcbn0gZnJvbSAnQGFjb3JleC9jZGsvY29tbW9uJztcbmltcG9ydCB7IEFYQnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBBWERlY29yYXRvck1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kZWNvcmF0b3JzJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IGNsYXNzZXMgfSBmcm9tICdwb2x5dHlwZSc7XG5cbi8qKlxuICogVGhlIE51bWJlckJveCBpcyBhIGNvbXBvbmVudCB3aGljaCBkZXRlY3RzIHVzZXIgaW50ZXJhY3Rpb24gYW5kIHRyaWdnZXJzIGEgY29ycmVzcG9uZGluZyBldmVudFxuICpcbiAqIEBjYXRlZ29yeSBDb21wb25lbnRzXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F4LW51bWJlci1ib3gtMicsXG4gIHRlbXBsYXRlVXJsOiAnLi9udW1iZXItYm94LTIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9udW1iZXItYm94LTIuY29tcG9uZW50LnNjc3MnXSxcbiAgaW5wdXRzOiBbJ2Rpc2FibGVkJywgJ3JlYWRvbmx5JywgJ3RhYkluZGV4JywgJ3BsYWNlaG9sZGVyJywgJ3ZhbHVlJywgJ3N0YXRlJywgJ25hbWUnLCAnaWQnLCAnbG9vayddLFxuICBvdXRwdXRzOiBbXG4gICAgJ3ZhbHVlQ2hhbmdlJyxcbiAgICAnc3RhdGVDaGFuZ2UnLFxuICAgICdvblZhbHVlQ2hhbmdlZCcsXG4gICAgJ29uQmx1cicsXG4gICAgJ29uRm9jdXMnLFxuICAgICdyZWFkb25seUNoYW5nZScsXG4gICAgJ2Rpc2FibGVkQ2hhbmdlJyxcbiAgICAnb25LZXlEb3duJyxcbiAgICAnb25LZXlVcCcsXG4gICAgJ29uS2V5UHJlc3MnLFxuICBdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgeyBwcm92aWRlOiBBWENvbXBvbmVudCwgdXNlRXhpc3Rpbmc6IEFYTnVtYmVyQm94MkNvbXBvbmVudCB9LFxuICAgIHsgcHJvdmlkZTogQVhGb2N1c2FibGVDb21wb25lbnQsIHVzZUV4aXN0aW5nOiBBWE51bWJlckJveDJDb21wb25lbnQgfSxcbiAgICB7IHByb3ZpZGU6IEFYQ2xlYXJhYmxlQ29tcG9uZW50LCB1c2VFeGlzdGluZzogQVhOdW1iZXJCb3gyQ29tcG9uZW50IH0sXG4gICAgeyBwcm92aWRlOiBBWFZhbHVhYmxlQ29tcG9uZW50LCB1c2VFeGlzdGluZzogQVhOdW1iZXJCb3gyQ29tcG9uZW50IH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBBWE51bWJlckJveDJDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgXSxcbiAgaW1wb3J0czogW0Zvcm1zTW9kdWxlLCBBWElucHV0TWFza0RpcmVjdGl2ZSwgQVhCdXR0b25Nb2R1bGUsIEFYRGVjb3JhdG9yTW9kdWxlXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhOdW1iZXJCb3gyQ29tcG9uZW50IGV4dGVuZHMgY2xhc3NlcyhNWElucHV0QmFzZVZhbHVlQ29tcG9uZW50PG51bWJlcj4sIE1YTG9va0NvbXBvbmVudCkge1xuICBtaW5WYWx1ZSA9IGlucHV0PG51bWJlcj4obnVsbCk7XG4gIG1heFZhbHVlID0gaW5wdXQ8bnVtYmVyPihudWxsKTtcbiAgc2hvd1NwaW5CdXR0b25zID0gaW5wdXQodHJ1ZSk7XG4gIHRob3VzYW5kc1NlcGFyYXRvciA9IG1vZGVsPHN0cmluZz4obnVsbCk7XG4gIGRlY2ltYWxzID0gaW5wdXQoMCk7XG4gIGNoYW5nZU9uU2Nyb2xsID0gaW5wdXQoZmFsc2UpO1xuICBzdGVwID0gaW5wdXQoMSk7XG4gIHByb3RlY3RlZCBtb2RlID0gc2lnbmFsPCdkaWdpdHMnIHwgJ3Rob3VzYW5kc1NlcGFyYXRvcicgfCAnZGVjaW1hbCc+KCdkaWdpdHMnKTtcbiAgcHJpdmF0ZSBpbnB1dCA9IHZpZXdDaGlsZDxFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+PignaW5wdXQnKTtcbiAgcHJvdGVjdGVkIHN0cmluZ1ZhbHVlID0gJzAnO1xuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBpbnRlcm5hbFZhbHVlQ2hhbmdlZCh2YWx1ZTogbnVtYmVyKTogdm9pZCB7XG4gICAgaWYgKCF2YWx1ZSkge1xuICAgICAgdGhpcy5zdHJpbmdWYWx1ZSA9ICcwJztcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5zdHJpbmdWYWx1ZSA9IFN0cmluZyh2YWx1ZSk7XG4gIH1cblxuICAjaW5pdCA9IGFmdGVyTmV4dFJlbmRlcigoKSA9PiB7XG4gICAgdGhpcy5vbkZvY3VzLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLmlucHV0KCkubmF0aXZlRWxlbWVudC5zZWxlY3QoKTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgI2VmZiA9IGVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKHRoaXMudGhvdXNhbmRzU2VwYXJhdG9yKCkgJiYgdGhpcy5kZWNpbWFscygpKSB7XG4gICAgICB0aGlzLm1vZGUuc2V0KCdkaWdpdHMnKTtcbiAgICAgIHJldHVybjtcbiAgICB9IGVsc2UgaWYgKHRoaXMudGhvdXNhbmRzU2VwYXJhdG9yKCkpIHtcbiAgICAgIHRoaXMubW9kZS5zZXQoJ3Rob3VzYW5kc1NlcGFyYXRvcicpO1xuICAgICAgcmV0dXJuO1xuICAgIH0gZWxzZSBpZiAodGhpcy5kZWNpbWFscygpKSB7XG4gICAgICB0aGlzLm1vZGUuc2V0KCdkZWNpbWFsJyk7XG4gICAgfVxuICB9KTtcblxuICBwcml2YXRlIHBsdXNWYWx1ZSgpIHtcbiAgICBpZiAodGhpcy5kaXNhYmxlZCB8fCB0aGlzLnJlYWRvbmx5KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmICh0aGlzLm1vZGUoKSA9PT0gJ3Rob3VzYW5kc1NlcGFyYXRvcicpIHtcbiAgICAgIGNvbnN0IHJlbW92ZVNlcGFyYXRvciA9IHRoaXMuc3RyaW5nVmFsdWUuc3BsaXQodGhpcy50aG91c2FuZHNTZXBhcmF0b3IoKSkuam9pbignJyk7XG4gICAgICBjb25zdCBhZGRTdGVwID0gK3JlbW92ZVNlcGFyYXRvciArIHRoaXMuc3RlcCgpO1xuICAgICAgdGhpcy5jb21taXRWYWx1ZShhZGRTdGVwKTtcblxuICAgICAgY29uc3QgYWRkU2VwYXJhdG9yID0gYWRkU3RlcC50b0xvY2FsZVN0cmluZygpO1xuICAgICAgY29uc3QgcmVwbGFjZVNlcGFyYXRvciA9IGFkZFNlcGFyYXRvci5zcGxpdCgnLCcpLmpvaW4odGhpcy50aG91c2FuZHNTZXBhcmF0b3IoKSk7XG4gICAgICB0aGlzLnN0cmluZ1ZhbHVlID0gcmVwbGFjZVNlcGFyYXRvcjtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgY29udmVydCA9ICt0aGlzLnN0cmluZ1ZhbHVlICsgdGhpcy5zdGVwKCk7XG4gICAgICB0aGlzLmNvbW1pdFZhbHVlKGNvbnZlcnQpO1xuICAgICAgdGhpcy5zdHJpbmdWYWx1ZSA9IGNvbnZlcnQudG9TdHJpbmcoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIG1pbnVzVmFsdWUoKSB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQgfHwgdGhpcy5yZWFkb25seSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAodGhpcy5tb2RlKCkgPT09ICd0aG91c2FuZHNTZXBhcmF0b3InKSB7XG4gICAgICBjb25zdCByZW1vdmVTZXBhcmF0b3IgPSB0aGlzLnN0cmluZ1ZhbHVlLnNwbGl0KHRoaXMudGhvdXNhbmRzU2VwYXJhdG9yKCkpLmpvaW4oJycpO1xuICAgICAgY29uc3QgYWRkU3RlcCA9ICtyZW1vdmVTZXBhcmF0b3IgLSB0aGlzLnN0ZXAoKTtcbiAgICAgIHRoaXMuY29tbWl0VmFsdWUoYWRkU3RlcCk7XG5cbiAgICAgIGNvbnN0IGFkZFNlcGFyYXRvciA9IGFkZFN0ZXAudG9Mb2NhbGVTdHJpbmcoKTtcbiAgICAgIGNvbnN0IHJlcGxhY2VTZXBhcmF0b3IgPSBhZGRTZXBhcmF0b3Iuc3BsaXQoJywnKS5qb2luKHRoaXMudGhvdXNhbmRzU2VwYXJhdG9yKCkpO1xuICAgICAgdGhpcy5zdHJpbmdWYWx1ZSA9IHJlcGxhY2VTZXBhcmF0b3I7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IGNvbnZlcnQgPSArdGhpcy5zdHJpbmdWYWx1ZSArIHRoaXMuc3RlcCgpICogLTE7XG4gICAgICB0aGlzLmNvbW1pdFZhbHVlKGNvbnZlcnQpO1xuICAgICAgdGhpcy5zdHJpbmdWYWx1ZSA9IGNvbnZlcnQudG9TdHJpbmcoKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgaGFuZGxlT25LZXlkb3duRXZlbnQoZTogS2V5Ym9hcmRFdmVudCkge1xuICAgIGlmIChlLmtleSAhPT0gJ0Fycm93VXAnICYmIGUua2V5ICE9PSAnQXJyb3dEb3duJykgcmV0dXJuO1xuICAgIGlmICh0aGlzLmRpc2FibGVkIHx8IHRoaXMucmVhZG9ubHkpIHJldHVybjtcbiAgICBpZiAoZS5rZXkgPT09ICdBcnJvd1VwJykge1xuICAgICAgdGhpcy5wbHVzVmFsdWUoKTtcbiAgICB9IGVsc2UgaWYgKGUua2V5ID09PSAnQXJyb3dEb3duJykge1xuICAgICAgdGhpcy5taW51c1ZhbHVlKCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGhhbmRsZVVwQ2xpY2soKSB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQgfHwgdGhpcy5yZWFkb25seSkgcmV0dXJuO1xuICAgIHRoaXMucGx1c1ZhbHVlKCk7XG4gIH1cbiAgcHJvdGVjdGVkIGhhbmRsZURvd25DbGljaygpIHtcbiAgICB0aGlzLm1pbnVzVmFsdWUoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBoYW5kbGVPbk1hc2tDaGFuZ2VkKGU6IEFYSW5wdXRNYXNrRXZlbnQpIHtcbiAgICBpZiAoIWUudW5tYXNrZWQgfHwgaXNOYU4oK2UudW5tYXNrZWQpKSB7XG4gICAgICB0aGlzLmNvbW1pdFZhbHVlKG51bGwpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmNvbW1pdFZhbHVlKCtlLnVubWFza2VkKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvbldoZWVsKGV2ZW50OiBXaGVlbEV2ZW50KSB7XG4gICAgaWYgKHRoaXMuY2hhbmdlT25TY3JvbGwoKSkge1xuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIGlmICghdGhpcy5kaXNhYmxlZCAmJiAhdGhpcy5yZWFkb25seSkge1xuICAgICAgICBpZiAoZXZlbnQuZGVsdGFZID4gMCkge1xuICAgICAgICAgIHRoaXMubWludXNWYWx1ZSgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMucGx1c1ZhbHVlKCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2F0dHIubmFtZScpXG4gIHByaXZhdGUgZ2V0IF9faG9zdE5hbWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5uYW1lO1xuICB9XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwiYXgtZWRpdG9yLWNvbnRhaW5lciAgYXgte3sgbG9vayB9fVwiXG4gIFtjbGFzcy5heC1zdGF0ZS1kaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gIFtjbGFzcy5heC1zdGF0ZS1yZWFkb25seV09XCJyZWFkb25seVwiXG4+XG4gIDxuZy1jb250ZW50IHNlbGVjdD1cImF4LXByZWZpeFwiPiA8L25nLWNvbnRlbnQ+XG4gIDxpbnB1dFxuICAgICNpbnB1dFxuICAgIGF4SW5wdXRNYXNrXG4gICAgKG9uTWFza0NoYW5nZWQpPVwiaGFuZGxlT25NYXNrQ2hhbmdlZCgkZXZlbnQpXCJcbiAgICBbbWFza01vZGVdPVwibW9kZSgpXCJcbiAgICBpbnB1dG1vZGU9XCJudW1lcmljXCJcbiAgICBjbGFzcz1cImF4LWlucHV0XCJcbiAgICBbbWluVmFsdWVdPVwibWluVmFsdWUoKVwiXG4gICAgW21heFZhbHVlXT1cIm1heFZhbHVlKClcIlxuICAgIFtzZXBhcmF0b3JdPVwidGhvdXNhbmRzU2VwYXJhdG9yKClcIlxuICAgIFtkZWNpbWFsXT1cImRlY2ltYWxzKClcIlxuICAgIFtpZF09XCJpZFwiXG4gICAgW2F0dHIucGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgIFthdHRyLmF1dG9jb21wbGV0ZV09XCInb2ZmJ1wiXG4gICAgW2NsYXNzLmF4LXN0YXRlLWRpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICBbY2xhc3MuYXgtc3RhdGUtcmVhZG9ubHldPVwicmVhZG9ubHlcIlxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcbiAgICBbdGFiaW5kZXhdPVwidGFiSW5kZXhcIlxuICAgIFsobmdNb2RlbCldPVwic3RyaW5nVmFsdWVcIlxuICAgIChrZXlkb3duKT1cImhhbmRsZU9uS2V5ZG93bkV2ZW50KCRldmVudClcIlxuICAgIChrZXl1cCk9XCJlbWl0T25LZXl1cEV2ZW50KCRldmVudClcIlxuICAgIChrZXlwcmVzcyk9XCJlbWl0T25LZXlwcmVzc0V2ZW50KCRldmVudClcIlxuICAgIChmb2N1cyk9XCJlbWl0T25Gb2N1c0V2ZW50KCRldmVudClcIlxuICAgIChibHVyKT1cImVtaXRPbkJsdXJFdmVudCgkZXZlbnQpXCJcbiAgICAod2hlZWwpPVwib25XaGVlbCgkZXZlbnQpXCJcbiAgLz5cbiAgQGlmIChpbnB1dC52YWx1ZSAmJiAhZGlzYWJsZWQgJiYgIXJlYWRvbmx5KSB7XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiYXgtY2xlYXItYnV0dG9uXCI+PC9uZy1jb250ZW50PlxuICB9XG4gIEBpZiAoc2hvd1NwaW5CdXR0b25zKCkpIHtcbiAgICA8ZGl2IGNsYXNzPVwiYXgtbnVtYmVyLWJveC1jb250cm9sXCI+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICBjbGFzcz1cImF4LWVkaXRvci1idXR0b25cIlxuICAgICAgICBbY2xhc3MuYXgtc3RhdGUtZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAoY2xpY2spPVwiaGFuZGxlVXBDbGljaygpXCJcbiAgICAgICAgdGFiaW5kZXg9XCItMVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICA+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiYXgtaWNvbiBheC1pY29uLWNoZXZyb24tdXAgYXgtYXJyb3ctYnV0dG9uXCI+PC9zcGFuPlxuICAgICAgPC9idXR0b24+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICBjbGFzcz1cImF4LWVkaXRvci1idXR0b25cIlxuICAgICAgICBbY2xhc3MuYXgtc3RhdGUtZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAoY2xpY2spPVwiaGFuZGxlRG93bkNsaWNrKClcIlxuICAgICAgICB0YWJpbmRleD1cIi0xXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgID5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJheC1pY29uIGF4LWljb24tY2hldnJvbi1kb3duIGF4LWFycm93LWJ1dHRvblwiPjwvc3Bhbj5cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICB9XG5cbiAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiYXgtc3VmZml4XCI+IDwvbmctY29udGVudD5cbjwvZGl2PlxuPG5nLWNvbnRlbnQgc2VsZWN0PVwiYXgtdmFsaWRhdGlvbi1ydWxlXCI+IDwvbmctY29udGVudD5cbjxkaXYgY2xhc3M9XCJheC1lcnJvci1jb250YWluZXJcIj48L2Rpdj5cbiJdfQ==","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LWNvbXBvbmVudHMtbnVtYmVyLWJveC0yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9udW1iZXItYm94LTIvc3JjL2Fjb3JleC1jb21wb25lbnRzLW51bWJlci1ib3gtMi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":"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"}
         
     | 
    
        package/number-box-2/README.md
    DELETED
    
    
    
        package/number-box-2/index.d.ts
    DELETED
    
    | 
         @@ -1,41 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            import * as polytype from 'polytype';
         
     | 
| 
       2 
     | 
    
         
            -
            import * as _angular_core from '@angular/core';
         
     | 
| 
       3 
     | 
    
         
            -
            import { AXInputMaskEvent } from '@acorex/cdk/input-mask';
         
     | 
| 
       4 
     | 
    
         
            -
            import { MXInputBaseValueComponent, MXLookComponent } from '@acorex/cdk/common';
         
     | 
| 
       5 
     | 
    
         
            -
             
     | 
| 
       6 
     | 
    
         
            -
            declare const AXNumberBox2Component_base: polytype.Polytype.ClusteredConstructor<[{
         
     | 
| 
       7 
     | 
    
         
            -
                new (): MXInputBaseValueComponent<number>;
         
     | 
| 
       8 
     | 
    
         
            -
                ɵfac: _angular_core.ɵɵFactoryDeclaration<MXInputBaseValueComponent<any>, never>;
         
     | 
| 
       9 
     | 
    
         
            -
                ɵprov: _angular_core.ɵɵInjectableDeclaration<MXInputBaseValueComponent<any>>;
         
     | 
| 
       10 
     | 
    
         
            -
            }, typeof MXLookComponent]>;
         
     | 
| 
       11 
     | 
    
         
            -
            /**
         
     | 
| 
       12 
     | 
    
         
            -
             * The NumberBox is a component which detects user interaction and triggers a corresponding event
         
     | 
| 
       13 
     | 
    
         
            -
             *
         
     | 
| 
       14 
     | 
    
         
            -
             * @category Components
         
     | 
| 
       15 
     | 
    
         
            -
             */
         
     | 
| 
       16 
     | 
    
         
            -
            declare class AXNumberBox2Component extends AXNumberBox2Component_base {
         
     | 
| 
       17 
     | 
    
         
            -
                #private;
         
     | 
| 
       18 
     | 
    
         
            -
                minValue: _angular_core.InputSignal<number>;
         
     | 
| 
       19 
     | 
    
         
            -
                maxValue: _angular_core.InputSignal<number>;
         
     | 
| 
       20 
     | 
    
         
            -
                showSpinButtons: _angular_core.InputSignal<boolean>;
         
     | 
| 
       21 
     | 
    
         
            -
                thousandsSeparator: _angular_core.ModelSignal<string>;
         
     | 
| 
       22 
     | 
    
         
            -
                decimals: _angular_core.InputSignal<number>;
         
     | 
| 
       23 
     | 
    
         
            -
                changeOnScroll: _angular_core.InputSignal<boolean>;
         
     | 
| 
       24 
     | 
    
         
            -
                step: _angular_core.InputSignal<number>;
         
     | 
| 
       25 
     | 
    
         
            -
                protected mode: _angular_core.WritableSignal<"digits" | "thousandsSeparator" | "decimal">;
         
     | 
| 
       26 
     | 
    
         
            -
                private input;
         
     | 
| 
       27 
     | 
    
         
            -
                protected stringValue: string;
         
     | 
| 
       28 
     | 
    
         
            -
                protected internalValueChanged(value: number): void;
         
     | 
| 
       29 
     | 
    
         
            -
                private plusValue;
         
     | 
| 
       30 
     | 
    
         
            -
                private minusValue;
         
     | 
| 
       31 
     | 
    
         
            -
                protected handleOnKeydownEvent(e: KeyboardEvent): void;
         
     | 
| 
       32 
     | 
    
         
            -
                protected handleUpClick(): void;
         
     | 
| 
       33 
     | 
    
         
            -
                protected handleDownClick(): void;
         
     | 
| 
       34 
     | 
    
         
            -
                protected handleOnMaskChanged(e: AXInputMaskEvent): void;
         
     | 
| 
       35 
     | 
    
         
            -
                protected onWheel(event: WheelEvent): void;
         
     | 
| 
       36 
     | 
    
         
            -
                private get __hostName();
         
     | 
| 
       37 
     | 
    
         
            -
                static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXNumberBox2Component, never>;
         
     | 
| 
       38 
     | 
    
         
            -
                static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXNumberBox2Component, "ax-number-box-2", never, { "disabled": { "alias": "disabled"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "value": { "alias": "value"; "required": false; }; "state": { "alias": "state"; "required": false; }; "name": { "alias": "name"; "required": false; }; "id": { "alias": "id"; "required": false; }; "look": { "alias": "look"; "required": false; }; "minValue": { "alias": "minValue"; "required": false; "isSignal": true; }; "maxValue": { "alias": "maxValue"; "required": false; "isSignal": true; }; "showSpinButtons": { "alias": "showSpinButtons"; "required": false; "isSignal": true; }; "thousandsSeparator": { "alias": "thousandsSeparator"; "required": false; "isSignal": true; }; "decimals": { "alias": "decimals"; "required": false; "isSignal": true; }; "changeOnScroll": { "alias": "changeOnScroll"; "required": false; "isSignal": true; }; "step": { "alias": "step"; "required": false; "isSignal": true; }; }, { "valueChange": "valueChange"; "stateChange": "stateChange"; "onValueChanged": "onValueChanged"; "onBlur": "onBlur"; "onFocus": "onFocus"; "readonlyChange": "readonlyChange"; "disabledChange": "disabledChange"; "onKeyDown": "onKeyDown"; "onKeyUp": "onKeyUp"; "onKeyPress": "onKeyPress"; "thousandsSeparator": "thousandsSeparatorChange"; }, never, ["ax-prefix", "ax-clear-button", "ax-suffix", "ax-validation-rule"], true, never>;
         
     | 
| 
       39 
     | 
    
         
            -
            }
         
     | 
| 
       40 
     | 
    
         
            -
             
     | 
| 
       41 
     | 
    
         
            -
            export { AXNumberBox2Component };
         
     |