@acorex/components 20.2.11 → 20.2.13

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.
@@ -93,7 +93,7 @@ class AXCommandComponent extends classes((MXInputBaseValueComponent), MXLookComp
93
93
  },
94
94
  { provide: AXComponent, useExisting: AXCommandComponent },
95
95
  { provide: AXValuableComponent, useExisting: AXCommandComponent },
96
- ], viewQueries: [{ propertyName: "searchBox", first: true, predicate: ["f"], descendants: true, isSignal: true }, { propertyName: "listNavigation", first: true, predicate: ["l"], descendants: true, read: AXListNavigationDirective, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"ax-searchBox-container\">\n <ax-search-box\n #f\n [delayTime]=\"20\"\n [placeholder]=\"placeholder\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [(ngModel)]=\"searchValue\"\n (onFocus)=\"focusHandler($event)\"\n (onBlur)=\"blurHandler($event)\"\n (onKeyDown)=\"searchEscapeHandler($event)\"\n [axAutoFocus]=\"true\"\n >\n <ax-clear-button></ax-clear-button>\n </ax-search-box>\n</div>\n\n<div #l class=\"ax-command-container\" #s=\"axListNavigation\" axListNavigation (onKeypress)=\"closeHandler($event)\">\n @if (value?.pinned && !searchValue()) {\n <div class=\"ax-command-item-pinned-container\">\n <ax-text class=\"ax-command-item-pinned-text\">{{ value.pinned.title }}</ax-text>\n\n @for (item of value.pinned.items; track item.id) {\n <ng-container\n [ngTemplateOutlet]=\"renderItem\"\n [ngTemplateOutletContext]=\"{ $implicit: item, level: 1, listNavigation: s }\"\n >\n </ng-container>\n }\n </div>\n }\n\n @if (displayItems() && searchValue()) {\n <div class=\"ax-command-item-wrapper\">\n @for (item of displayItems(); track item.id) {\n <ng-container\n [ngTemplateOutlet]=\"renderItem\"\n [ngTemplateOutletContext]=\"{ $implicit: item, level: 1, listNavigation: s }\"\n >\n </ng-container>\n } @empty {\n <div class=\"ax-command-not-found\">\n <ax-text>No results found for \"{{ searchValue() }}\"</ax-text>\n </div>\n }\n </div>\n }\n\n <ng-template #renderItem let-item let-level=\"level\" let-listNavigation=\"listNavigation\">\n <div\n (mouseenter)=\"activeHandler(listNavigation, a)\"\n class=\"ax-command-item-container\"\n [style.padding-inline-start.rem]=\"level * 0.625\"\n [ngClass]=\"{ 'ax-command-item-container-active': a.isActive() }\"\n #a=\"axListNavigationItem\"\n axListNavigationItem\n (click)=\"onItemClick(item)\"\n (onKeypress)=\"keyPress($event, item)\"\n >\n <div class=\"ax-command-item\">\n @if (item.icon) {\n <i class=\"ax-command-item-icon\" [class]=\"item.icon\"></i>\n }\n <span class=\"ax-command-item-text\">{{ item.text }}</span>\n </div>\n </div>\n\n @if (item.children?.length) {\n @for (child of item.children; track child.id) {\n <ng-container\n [ngTemplateOutlet]=\"renderItem\"\n [ngTemplateOutletContext]=\"{ $implicit: child, level: level + 1, listNavigation: s }\"\n >\n </ng-container>\n }\n }\n </ng-template>\n</div>\n\n<div class=\"ax-command-footer\">\n <div class=\"ax-kbd-footer\">\n <ax-kbd class=\"ax-kbd\">\n <ax-kbd-item [keys]=\"['&uarr;', '&darr;']\"></ax-kbd-item>\n </ax-kbd>\n <ax-text class=\"ax-kbd-text\">to navigate</ax-text>\n </div>\n\n <div class=\"ax-kbd-footer\">\n <ax-kbd class=\"ax-kbd\">\n <ax-kbd-item [keys]=\"['&#8617;']\"></ax-kbd-item>\n </ax-kbd>\n <ax-text class=\"ax-kbd-text\">to select</ax-text>\n </div>\n\n <div class=\"ax-kbd-footer\">\n <ax-kbd class=\"ax-kbd\">\n <ax-kbd-item [keys]=\"['esc']\"></ax-kbd-item>\n </ax-kbd>\n <ax-text class=\"ax-kbd-text\">to close</ax-text>\n </div>\n</div>\n", styles: ["ax-command{min-width:27rem;overflow:hidden;border-radius:var(--ax-sys-border-radius);outline:4px solid rgba(var(--ax-sys-color-border-light-surface));display:block}ax-command .ax-editor-container.ax-solid{--ax-comp-editor-bg-color: var(--ax-sys-color-light-surface)}ax-command .ax-searchBox-container{padding:.625rem}ax-command .ax-command-container{max-height:20rem;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none;background-color:rgba(var(--ax-sys-color-lightest-surface));color:rgba(var(--ax-sys-color-on-surface))}ax-command .ax-command-container .ax-command-item-pinned-container{padding-inline:.625rem}ax-command .ax-command-container .ax-command-item-pinned-container .ax-command-item-pinned-text{font-weight:500;font-size:.9rem;color:rgba(var(--ax-sys-color-neutral));padding:.625rem}ax-command .ax-command-container .ax-command-item-wrapper{padding-inline:.625rem}ax-command .ax-command-container .ax-command-item-container{cursor:pointer;padding:.5rem;border:1px solid transparent}ax-command .ax-command-container .ax-command-item-container .ax-command-item{display:flex;align-items:center;gap:.5rem}ax-command .ax-command-container .ax-command-item-container .ax-command-item-text{font-weight:500;color:rgba(var(--ax-sys-color-on-lightest-surface));font-size:.875rem}ax-command .ax-command-container .ax-command-item-container .ax-command-item-icon{color:rgba(var(--ax-sys-color-neutral))}ax-command .ax-command-container .ax-command-not-found{padding:1rem;display:flex;justify-content:center}ax-command .ax-command-container .ax-command-item-container-active{outline:2px solid transparent;outline-offset:2px;--tw-border-opacity: 1;background-color:rgba(var(--ax-sys-color-light-surface));border-radius:var(--ax-sys-border-radius);border:1px solid rgba(var(--ax-sys-color-border-light-surface))}ax-command .ax-kbd{display:flex;justify-content:center;align-items:center;height:100%}ax-command .ax-command-footer{border-bottom-right-radius:var(--ax-sys-border-radius);border-bottom-left-radius:var(--ax-sys-border-radius);background-color:rgba(var(--ax-sys-color-lighter-surface));color:rgba(var(--ax-sys-color-neutral));padding:.75rem;display:flex;align-items:center;gap:1.5rem}ax-command .ax-command-footer .ax-kbd-footer{display:flex;justify-content:center;align-items:center;gap:.7rem}ax-command .ax-command-footer .ax-kbd-footer kbd{background-color:rgba(var(--ax-sys-color-lightest-surface))}ax-command .ax-command-footer .ax-kbd-text{font-weight:600;font-size:.9rem}\n"], dependencies: [{ kind: "ngmodule", type: AXSearchBoxModule }, { kind: "component", type: i1.AXSearchBoxComponent, selector: "ax-search-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "class", "delayTime", "type"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorClearButtonComponent, selector: "ax-clear-button", inputs: ["icon"] }, { kind: "component", type: i2.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXListNavigationModule }, { kind: "directive", type: i5.AXListNavigationDirective, selector: "[axListNavigation]", inputs: ["orientation"], outputs: ["onNavigationChanged", "onKeypress"], exportAs: ["axListNavigation"] }, { kind: "directive", type: i5.AXListNavigationItemDirective, selector: "[axListNavigationItem]", outputs: ["onKeypress"], exportAs: ["axListNavigationItem"] }, { kind: "component", type: AXKBDComponent, selector: "ax-kbd" }, { kind: "component", type: AXKBDItemComponent, selector: "ax-kbd-item", inputs: ["keys"] }, { kind: "directive", type: AXAutoFocusDirective, selector: "[axAutoFocus]", inputs: ["axAutoFocus", "axAutoFocusTime"] }], encapsulation: i0.ViewEncapsulation.None }); }
96
+ ], viewQueries: [{ propertyName: "searchBox", first: true, predicate: ["f"], descendants: true, isSignal: true }, { propertyName: "listNavigation", first: true, predicate: ["l"], descendants: true, read: AXListNavigationDirective, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"ax-search-box-container\">\n <ax-search-box\n #f\n [delayTime]=\"20\"\n [placeholder]=\"placeholder\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [(ngModel)]=\"searchValue\"\n (onFocus)=\"focusHandler($event)\"\n (onBlur)=\"blurHandler($event)\"\n (onKeyDown)=\"searchEscapeHandler($event)\"\n [axAutoFocus]=\"true\"\n >\n <ax-clear-button></ax-clear-button>\n </ax-search-box>\n</div>\n\n<div #l class=\"ax-command-container\" #s=\"axListNavigation\" axListNavigation (onKeypress)=\"closeHandler($event)\">\n @if (value?.pinned && !searchValue()) {\n <div class=\"ax-command-item-pinned-container\">\n <ax-text class=\"ax-command-item-pinned-text\">{{ value.pinned.title }}</ax-text>\n\n @for (item of value.pinned.items; track item.id) {\n <ng-container\n [ngTemplateOutlet]=\"renderItem\"\n [ngTemplateOutletContext]=\"{ $implicit: item, level: 1, listNavigation: s }\"\n >\n </ng-container>\n }\n </div>\n }\n\n @if (displayItems() && searchValue()) {\n <div class=\"ax-command-item-wrapper\">\n @for (item of displayItems(); track item.id) {\n <ng-container\n [ngTemplateOutlet]=\"renderItem\"\n [ngTemplateOutletContext]=\"{ $implicit: item, level: 1, listNavigation: s }\"\n >\n </ng-container>\n } @empty {\n <div class=\"ax-command-not-found\">\n <ax-text>No results found for \"{{ searchValue() }}\"</ax-text>\n </div>\n }\n </div>\n }\n\n <ng-template #renderItem let-item let-level=\"level\" let-listNavigation=\"listNavigation\">\n <div\n (mouseenter)=\"activeHandler(listNavigation, a)\"\n class=\"ax-command-item-container\"\n [style.padding-inline-start.rem]=\"level * 0.625\"\n [ngClass]=\"{ 'ax-command-item-container-active': a.isActive() }\"\n #a=\"axListNavigationItem\"\n axListNavigationItem\n (click)=\"onItemClick(item)\"\n (onKeypress)=\"keyPress($event, item)\"\n >\n <div class=\"ax-command-item\">\n @if (item.icon) {\n <i class=\"ax-command-item-icon\" [class]=\"item.icon\"></i>\n }\n <span class=\"ax-command-item-text\">{{ item.text }}</span>\n </div>\n </div>\n\n @if (item.children?.length) {\n @for (child of item.children; track child.id) {\n <ng-container\n [ngTemplateOutlet]=\"renderItem\"\n [ngTemplateOutletContext]=\"{ $implicit: child, level: level + 1, listNavigation: s }\"\n >\n </ng-container>\n }\n }\n </ng-template>\n</div>\n\n<div class=\"ax-command-footer\">\n <div class=\"ax-kbd-footer\">\n <ax-kbd class=\"ax-kbd\">\n <ax-kbd-item [keys]=\"['&uarr;', '&darr;']\"></ax-kbd-item>\n </ax-kbd>\n <ax-text class=\"ax-kbd-text\">to navigate</ax-text>\n </div>\n\n <div class=\"ax-kbd-footer\">\n <ax-kbd class=\"ax-kbd\">\n <ax-kbd-item [keys]=\"['&#8617;']\"></ax-kbd-item>\n </ax-kbd>\n <ax-text class=\"ax-kbd-text\">to select</ax-text>\n </div>\n\n <div class=\"ax-kbd-footer\">\n <ax-kbd class=\"ax-kbd\">\n <ax-kbd-item [keys]=\"['esc']\"></ax-kbd-item>\n </ax-kbd>\n <ax-text class=\"ax-kbd-text\">to close</ax-text>\n </div>\n</div>\n", styles: ["ax-command{overflow:hidden;border-radius:var(--ax-sys-border-radius);outline:4px solid rgba(var(--ax-sys-color-border-light-surface));display:block}ax-command .ax-editor-container.ax-solid{--ax-comp-editor-bg-color: var(--ax-sys-color-light-surface)}ax-command .ax-search-box-container{padding:.625rem}ax-command .ax-command-container{max-height:20rem;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none;background-color:rgba(var(--ax-sys-color-lightest-surface));color:rgba(var(--ax-sys-color-on-surface))}ax-command .ax-command-container .ax-command-item-pinned-container{padding-inline:.625rem}ax-command .ax-command-container .ax-command-item-pinned-container .ax-command-item-pinned-text{font-weight:500;font-size:.9rem;color:rgba(var(--ax-sys-color-neutral));padding:.625rem}ax-command .ax-command-container .ax-command-item-wrapper{padding-inline:.625rem}ax-command .ax-command-container .ax-command-item-container{cursor:pointer;padding:.5rem;border:1px solid transparent}ax-command .ax-command-container .ax-command-item-container .ax-command-item{display:flex;align-items:center;gap:.5rem}ax-command .ax-command-container .ax-command-item-container .ax-command-item-text{font-weight:500;color:rgba(var(--ax-sys-color-on-lightest-surface));font-size:.875rem}ax-command .ax-command-container .ax-command-item-container .ax-command-item-icon{color:rgba(var(--ax-sys-color-neutral))}ax-command .ax-command-container .ax-command-not-found{padding:1rem;display:flex;justify-content:center}ax-command .ax-command-container .ax-command-item-container-active{outline:2px solid transparent;outline-offset:2px;--tw-border-opacity: 1;background-color:rgba(var(--ax-sys-color-light-surface));border-radius:var(--ax-sys-border-radius);border:1px solid rgba(var(--ax-sys-color-border-light-surface))}ax-command .ax-kbd{display:flex;justify-content:center;align-items:center;height:100%}ax-command .ax-command-footer{border-bottom-right-radius:var(--ax-sys-border-radius);border-bottom-left-radius:var(--ax-sys-border-radius);background-color:rgba(var(--ax-sys-color-lighter-surface));color:rgba(var(--ax-sys-color-neutral));padding:.75rem;display:flex;align-items:center;gap:1.5rem}ax-command .ax-command-footer .ax-kbd-footer{display:flex;justify-content:center;align-items:center;gap:.7rem}ax-command .ax-command-footer .ax-kbd-footer kbd{background-color:rgba(var(--ax-sys-color-lightest-surface))}ax-command .ax-command-footer .ax-kbd-text{font-weight:600;font-size:.9rem}\n"], dependencies: [{ kind: "ngmodule", type: AXSearchBoxModule }, { kind: "component", type: i1.AXSearchBoxComponent, selector: "ax-search-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "class", "delayTime", "type"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorClearButtonComponent, selector: "ax-clear-button", inputs: ["icon"] }, { kind: "component", type: i2.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXListNavigationModule }, { kind: "directive", type: i5.AXListNavigationDirective, selector: "[axListNavigation]", inputs: ["orientation"], outputs: ["onNavigationChanged", "onKeypress"], exportAs: ["axListNavigation"] }, { kind: "directive", type: i5.AXListNavigationItemDirective, selector: "[axListNavigationItem]", outputs: ["onKeypress"], exportAs: ["axListNavigationItem"] }, { kind: "component", type: AXKBDComponent, selector: "ax-kbd" }, { kind: "component", type: AXKBDItemComponent, selector: "ax-kbd-item", inputs: ["keys"] }, { kind: "directive", type: AXAutoFocusDirective, selector: "[axAutoFocus]", inputs: ["axAutoFocus", "axAutoFocusTime"] }], encapsulation: i0.ViewEncapsulation.None }); }
97
97
  }
98
98
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXCommandComponent, decorators: [{
99
99
  type: Component,
@@ -114,7 +114,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImpor
114
114
  },
115
115
  { provide: AXComponent, useExisting: AXCommandComponent },
116
116
  { provide: AXValuableComponent, useExisting: AXCommandComponent },
117
- ], inputs: ['disabled', 'readonly', 'tabIndex', 'placeholder', 'value', 'state', 'name', 'id'], template: "<div class=\"ax-searchBox-container\">\n <ax-search-box\n #f\n [delayTime]=\"20\"\n [placeholder]=\"placeholder\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [(ngModel)]=\"searchValue\"\n (onFocus)=\"focusHandler($event)\"\n (onBlur)=\"blurHandler($event)\"\n (onKeyDown)=\"searchEscapeHandler($event)\"\n [axAutoFocus]=\"true\"\n >\n <ax-clear-button></ax-clear-button>\n </ax-search-box>\n</div>\n\n<div #l class=\"ax-command-container\" #s=\"axListNavigation\" axListNavigation (onKeypress)=\"closeHandler($event)\">\n @if (value?.pinned && !searchValue()) {\n <div class=\"ax-command-item-pinned-container\">\n <ax-text class=\"ax-command-item-pinned-text\">{{ value.pinned.title }}</ax-text>\n\n @for (item of value.pinned.items; track item.id) {\n <ng-container\n [ngTemplateOutlet]=\"renderItem\"\n [ngTemplateOutletContext]=\"{ $implicit: item, level: 1, listNavigation: s }\"\n >\n </ng-container>\n }\n </div>\n }\n\n @if (displayItems() && searchValue()) {\n <div class=\"ax-command-item-wrapper\">\n @for (item of displayItems(); track item.id) {\n <ng-container\n [ngTemplateOutlet]=\"renderItem\"\n [ngTemplateOutletContext]=\"{ $implicit: item, level: 1, listNavigation: s }\"\n >\n </ng-container>\n } @empty {\n <div class=\"ax-command-not-found\">\n <ax-text>No results found for \"{{ searchValue() }}\"</ax-text>\n </div>\n }\n </div>\n }\n\n <ng-template #renderItem let-item let-level=\"level\" let-listNavigation=\"listNavigation\">\n <div\n (mouseenter)=\"activeHandler(listNavigation, a)\"\n class=\"ax-command-item-container\"\n [style.padding-inline-start.rem]=\"level * 0.625\"\n [ngClass]=\"{ 'ax-command-item-container-active': a.isActive() }\"\n #a=\"axListNavigationItem\"\n axListNavigationItem\n (click)=\"onItemClick(item)\"\n (onKeypress)=\"keyPress($event, item)\"\n >\n <div class=\"ax-command-item\">\n @if (item.icon) {\n <i class=\"ax-command-item-icon\" [class]=\"item.icon\"></i>\n }\n <span class=\"ax-command-item-text\">{{ item.text }}</span>\n </div>\n </div>\n\n @if (item.children?.length) {\n @for (child of item.children; track child.id) {\n <ng-container\n [ngTemplateOutlet]=\"renderItem\"\n [ngTemplateOutletContext]=\"{ $implicit: child, level: level + 1, listNavigation: s }\"\n >\n </ng-container>\n }\n }\n </ng-template>\n</div>\n\n<div class=\"ax-command-footer\">\n <div class=\"ax-kbd-footer\">\n <ax-kbd class=\"ax-kbd\">\n <ax-kbd-item [keys]=\"['&uarr;', '&darr;']\"></ax-kbd-item>\n </ax-kbd>\n <ax-text class=\"ax-kbd-text\">to navigate</ax-text>\n </div>\n\n <div class=\"ax-kbd-footer\">\n <ax-kbd class=\"ax-kbd\">\n <ax-kbd-item [keys]=\"['&#8617;']\"></ax-kbd-item>\n </ax-kbd>\n <ax-text class=\"ax-kbd-text\">to select</ax-text>\n </div>\n\n <div class=\"ax-kbd-footer\">\n <ax-kbd class=\"ax-kbd\">\n <ax-kbd-item [keys]=\"['esc']\"></ax-kbd-item>\n </ax-kbd>\n <ax-text class=\"ax-kbd-text\">to close</ax-text>\n </div>\n</div>\n", styles: ["ax-command{min-width:27rem;overflow:hidden;border-radius:var(--ax-sys-border-radius);outline:4px solid rgba(var(--ax-sys-color-border-light-surface));display:block}ax-command .ax-editor-container.ax-solid{--ax-comp-editor-bg-color: var(--ax-sys-color-light-surface)}ax-command .ax-searchBox-container{padding:.625rem}ax-command .ax-command-container{max-height:20rem;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none;background-color:rgba(var(--ax-sys-color-lightest-surface));color:rgba(var(--ax-sys-color-on-surface))}ax-command .ax-command-container .ax-command-item-pinned-container{padding-inline:.625rem}ax-command .ax-command-container .ax-command-item-pinned-container .ax-command-item-pinned-text{font-weight:500;font-size:.9rem;color:rgba(var(--ax-sys-color-neutral));padding:.625rem}ax-command .ax-command-container .ax-command-item-wrapper{padding-inline:.625rem}ax-command .ax-command-container .ax-command-item-container{cursor:pointer;padding:.5rem;border:1px solid transparent}ax-command .ax-command-container .ax-command-item-container .ax-command-item{display:flex;align-items:center;gap:.5rem}ax-command .ax-command-container .ax-command-item-container .ax-command-item-text{font-weight:500;color:rgba(var(--ax-sys-color-on-lightest-surface));font-size:.875rem}ax-command .ax-command-container .ax-command-item-container .ax-command-item-icon{color:rgba(var(--ax-sys-color-neutral))}ax-command .ax-command-container .ax-command-not-found{padding:1rem;display:flex;justify-content:center}ax-command .ax-command-container .ax-command-item-container-active{outline:2px solid transparent;outline-offset:2px;--tw-border-opacity: 1;background-color:rgba(var(--ax-sys-color-light-surface));border-radius:var(--ax-sys-border-radius);border:1px solid rgba(var(--ax-sys-color-border-light-surface))}ax-command .ax-kbd{display:flex;justify-content:center;align-items:center;height:100%}ax-command .ax-command-footer{border-bottom-right-radius:var(--ax-sys-border-radius);border-bottom-left-radius:var(--ax-sys-border-radius);background-color:rgba(var(--ax-sys-color-lighter-surface));color:rgba(var(--ax-sys-color-neutral));padding:.75rem;display:flex;align-items:center;gap:1.5rem}ax-command .ax-command-footer .ax-kbd-footer{display:flex;justify-content:center;align-items:center;gap:.7rem}ax-command .ax-command-footer .ax-kbd-footer kbd{background-color:rgba(var(--ax-sys-color-lightest-surface))}ax-command .ax-command-footer .ax-kbd-text{font-weight:600;font-size:.9rem}\n"] }]
117
+ ], inputs: ['disabled', 'readonly', 'tabIndex', 'placeholder', 'value', 'state', 'name', 'id'], template: "<div class=\"ax-search-box-container\">\n <ax-search-box\n #f\n [delayTime]=\"20\"\n [placeholder]=\"placeholder\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [(ngModel)]=\"searchValue\"\n (onFocus)=\"focusHandler($event)\"\n (onBlur)=\"blurHandler($event)\"\n (onKeyDown)=\"searchEscapeHandler($event)\"\n [axAutoFocus]=\"true\"\n >\n <ax-clear-button></ax-clear-button>\n </ax-search-box>\n</div>\n\n<div #l class=\"ax-command-container\" #s=\"axListNavigation\" axListNavigation (onKeypress)=\"closeHandler($event)\">\n @if (value?.pinned && !searchValue()) {\n <div class=\"ax-command-item-pinned-container\">\n <ax-text class=\"ax-command-item-pinned-text\">{{ value.pinned.title }}</ax-text>\n\n @for (item of value.pinned.items; track item.id) {\n <ng-container\n [ngTemplateOutlet]=\"renderItem\"\n [ngTemplateOutletContext]=\"{ $implicit: item, level: 1, listNavigation: s }\"\n >\n </ng-container>\n }\n </div>\n }\n\n @if (displayItems() && searchValue()) {\n <div class=\"ax-command-item-wrapper\">\n @for (item of displayItems(); track item.id) {\n <ng-container\n [ngTemplateOutlet]=\"renderItem\"\n [ngTemplateOutletContext]=\"{ $implicit: item, level: 1, listNavigation: s }\"\n >\n </ng-container>\n } @empty {\n <div class=\"ax-command-not-found\">\n <ax-text>No results found for \"{{ searchValue() }}\"</ax-text>\n </div>\n }\n </div>\n }\n\n <ng-template #renderItem let-item let-level=\"level\" let-listNavigation=\"listNavigation\">\n <div\n (mouseenter)=\"activeHandler(listNavigation, a)\"\n class=\"ax-command-item-container\"\n [style.padding-inline-start.rem]=\"level * 0.625\"\n [ngClass]=\"{ 'ax-command-item-container-active': a.isActive() }\"\n #a=\"axListNavigationItem\"\n axListNavigationItem\n (click)=\"onItemClick(item)\"\n (onKeypress)=\"keyPress($event, item)\"\n >\n <div class=\"ax-command-item\">\n @if (item.icon) {\n <i class=\"ax-command-item-icon\" [class]=\"item.icon\"></i>\n }\n <span class=\"ax-command-item-text\">{{ item.text }}</span>\n </div>\n </div>\n\n @if (item.children?.length) {\n @for (child of item.children; track child.id) {\n <ng-container\n [ngTemplateOutlet]=\"renderItem\"\n [ngTemplateOutletContext]=\"{ $implicit: child, level: level + 1, listNavigation: s }\"\n >\n </ng-container>\n }\n }\n </ng-template>\n</div>\n\n<div class=\"ax-command-footer\">\n <div class=\"ax-kbd-footer\">\n <ax-kbd class=\"ax-kbd\">\n <ax-kbd-item [keys]=\"['&uarr;', '&darr;']\"></ax-kbd-item>\n </ax-kbd>\n <ax-text class=\"ax-kbd-text\">to navigate</ax-text>\n </div>\n\n <div class=\"ax-kbd-footer\">\n <ax-kbd class=\"ax-kbd\">\n <ax-kbd-item [keys]=\"['&#8617;']\"></ax-kbd-item>\n </ax-kbd>\n <ax-text class=\"ax-kbd-text\">to select</ax-text>\n </div>\n\n <div class=\"ax-kbd-footer\">\n <ax-kbd class=\"ax-kbd\">\n <ax-kbd-item [keys]=\"['esc']\"></ax-kbd-item>\n </ax-kbd>\n <ax-text class=\"ax-kbd-text\">to close</ax-text>\n </div>\n</div>\n", styles: ["ax-command{overflow:hidden;border-radius:var(--ax-sys-border-radius);outline:4px solid rgba(var(--ax-sys-color-border-light-surface));display:block}ax-command .ax-editor-container.ax-solid{--ax-comp-editor-bg-color: var(--ax-sys-color-light-surface)}ax-command .ax-search-box-container{padding:.625rem}ax-command .ax-command-container{max-height:20rem;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none;background-color:rgba(var(--ax-sys-color-lightest-surface));color:rgba(var(--ax-sys-color-on-surface))}ax-command .ax-command-container .ax-command-item-pinned-container{padding-inline:.625rem}ax-command .ax-command-container .ax-command-item-pinned-container .ax-command-item-pinned-text{font-weight:500;font-size:.9rem;color:rgba(var(--ax-sys-color-neutral));padding:.625rem}ax-command .ax-command-container .ax-command-item-wrapper{padding-inline:.625rem}ax-command .ax-command-container .ax-command-item-container{cursor:pointer;padding:.5rem;border:1px solid transparent}ax-command .ax-command-container .ax-command-item-container .ax-command-item{display:flex;align-items:center;gap:.5rem}ax-command .ax-command-container .ax-command-item-container .ax-command-item-text{font-weight:500;color:rgba(var(--ax-sys-color-on-lightest-surface));font-size:.875rem}ax-command .ax-command-container .ax-command-item-container .ax-command-item-icon{color:rgba(var(--ax-sys-color-neutral))}ax-command .ax-command-container .ax-command-not-found{padding:1rem;display:flex;justify-content:center}ax-command .ax-command-container .ax-command-item-container-active{outline:2px solid transparent;outline-offset:2px;--tw-border-opacity: 1;background-color:rgba(var(--ax-sys-color-light-surface));border-radius:var(--ax-sys-border-radius);border:1px solid rgba(var(--ax-sys-color-border-light-surface))}ax-command .ax-kbd{display:flex;justify-content:center;align-items:center;height:100%}ax-command .ax-command-footer{border-bottom-right-radius:var(--ax-sys-border-radius);border-bottom-left-radius:var(--ax-sys-border-radius);background-color:rgba(var(--ax-sys-color-lighter-surface));color:rgba(var(--ax-sys-color-neutral));padding:.75rem;display:flex;align-items:center;gap:1.5rem}ax-command .ax-command-footer .ax-kbd-footer{display:flex;justify-content:center;align-items:center;gap:.7rem}ax-command .ax-command-footer .ax-kbd-footer kbd{background-color:rgba(var(--ax-sys-color-lightest-surface))}ax-command .ax-command-footer .ax-kbd-text{font-weight:600;font-size:.9rem}\n"] }]
118
118
  }] });
119
119
 
120
120
  const COMPONENT = [AXCommandComponent];
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-components-command.mjs","sources":["../tmp-esm2022/command/lib/command.component.js","../tmp-esm2022/command/lib/command.module.js","../tmp-esm2022/command/lib/command.type.js","../tmp-esm2022/command/acorex-components-command.js"],"sourcesContent":["import { AXAutoFocusDirective, AXComponent, AXValuableComponent, MXInputBaseValueComponent, MXLookComponent, } from '@acorex/cdk/common';\nimport { AXListNavigationDirective, AXListNavigationModule, } from '@acorex/cdk/list-navigation';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXKBDComponent, AXKBDItemComponent } from '@acorex/components/kbd';\nimport { AXSearchBoxModule } from '@acorex/components/search-box';\nimport { CommonModule } from '@angular/common';\nimport { Component, computed, forwardRef, output, signal, viewChild, ViewEncapsulation } from '@angular/core';\nimport { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { classes } from 'polytype';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@acorex/components/search-box\";\nimport * as i2 from \"@acorex/components/decorators\";\nimport * as i3 from \"@angular/common\";\nimport * as i4 from \"@angular/forms\";\nimport * as i5 from \"@acorex/cdk/list-navigation\";\nexport class AXCommandComponent extends classes((MXInputBaseValueComponent), MXLookComponent) {\n constructor() {\n super(...arguments);\n this.searchValue = signal('', ...(ngDevMode ? [{ debugName: \"searchValue\" }] : []));\n this.searchBox = viewChild('f', ...(ngDevMode ? [{ debugName: \"searchBox\" }] : []));\n this.onSubmit = output();\n this.onEscape = output();\n this.onSearchBoxFocus = output();\n this.onSearchBoxBlur = output();\n this.listNavigation = viewChild('l', ...(ngDevMode ? [{ debugName: \"listNavigation\", read: AXListNavigationDirective }] : [{ read: AXListNavigationDirective }]));\n this.displayItems = computed(() => {\n const searchValue = this.searchValue();\n let filtered;\n if (searchValue) {\n filtered = this.filterRecursive(this.value?.items ?? [], searchValue);\n }\n else {\n filtered = [];\n }\n return filtered;\n }, ...(ngDevMode ? [{ debugName: \"displayItems\" }] : []));\n }\n focusHandler(e) {\n this.onSearchBoxFocus.emit({ component: this, nativeEvent: e.nativeEvent });\n }\n blurHandler(e) {\n this.onSearchBoxBlur.emit({ component: this, nativeEvent: e.nativeEvent });\n }\n filterRecursive(items, value) {\n const lowerSignal = value.toLowerCase();\n return items\n .map((item) => {\n const isMatch = item.text?.toLowerCase().includes(lowerSignal) || item.href?.toLowerCase().includes(lowerSignal);\n const filteredChildren = item.children ? this.filterRecursive(item.children, value) : [];\n if (isMatch || filteredChildren.length > 0) {\n return {\n ...item,\n children: filteredChildren,\n };\n }\n return null;\n })\n .filter(Boolean);\n }\n onItemClick(item) {\n this.onSubmit.emit({ data: item, component: this });\n }\n keyPress(e, item) {\n if (e.nativeEvent.key === 'Enter' || e.nativeEvent.code === 'Space') {\n e.nativeEvent.stopPropagation();\n e.nativeEvent.preventDefault();\n this.onSubmit.emit({ data: item, component: this });\n }\n }\n searchEscapeHandler(e) {\n if (e.nativeEvent.key === 'Escape') {\n this.onEscape.emit({ component: this, nativeEvent: e.nativeEvent });\n }\n if (e.nativeEvent.key === 'ArrowDown') {\n this.listNavigation().focusOnIndex(0);\n }\n }\n closeHandler(e) {\n if (e.nativeEvent.key === 'Escape') {\n this.searchBox().focus();\n }\n }\n activeHandler(l, i) {\n l?.navigateTo(i);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AXCommandComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.3.4\", type: AXCommandComponent, isStandalone: true, selector: \"ax-command\", inputs: { disabled: \"disabled\", readonly: \"readonly\", tabIndex: \"tabIndex\", placeholder: \"placeholder\", value: \"value\", state: \"state\", name: \"name\", id: \"id\" }, outputs: { onSubmit: \"onSubmit\", onEscape: \"onEscape\", onSearchBoxFocus: \"onSearchBoxFocus\", onSearchBoxBlur: \"onSearchBoxBlur\" }, providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXCommandComponent),\n multi: true,\n },\n { provide: AXComponent, useExisting: AXCommandComponent },\n { provide: AXValuableComponent, useExisting: AXCommandComponent },\n ], viewQueries: [{ propertyName: \"searchBox\", first: true, predicate: [\"f\"], descendants: true, isSignal: true }, { propertyName: \"listNavigation\", first: true, predicate: [\"l\"], descendants: true, read: AXListNavigationDirective, isSignal: true }], usesInheritance: true, ngImport: i0, template: \"<div class=\\\"ax-searchBox-container\\\">\\n <ax-search-box\\n #f\\n [delayTime]=\\\"20\\\"\\n [placeholder]=\\\"placeholder\\\"\\n [disabled]=\\\"disabled\\\"\\n [readonly]=\\\"readonly\\\"\\n [(ngModel)]=\\\"searchValue\\\"\\n (onFocus)=\\\"focusHandler($event)\\\"\\n (onBlur)=\\\"blurHandler($event)\\\"\\n (onKeyDown)=\\\"searchEscapeHandler($event)\\\"\\n [axAutoFocus]=\\\"true\\\"\\n >\\n <ax-clear-button></ax-clear-button>\\n </ax-search-box>\\n</div>\\n\\n<div #l class=\\\"ax-command-container\\\" #s=\\\"axListNavigation\\\" axListNavigation (onKeypress)=\\\"closeHandler($event)\\\">\\n @if (value?.pinned && !searchValue()) {\\n <div class=\\\"ax-command-item-pinned-container\\\">\\n <ax-text class=\\\"ax-command-item-pinned-text\\\">{{ value.pinned.title }}</ax-text>\\n\\n @for (item of value.pinned.items; track item.id) {\\n <ng-container\\n [ngTemplateOutlet]=\\\"renderItem\\\"\\n [ngTemplateOutletContext]=\\\"{ $implicit: item, level: 1, listNavigation: s }\\\"\\n >\\n </ng-container>\\n }\\n </div>\\n }\\n\\n @if (displayItems() && searchValue()) {\\n <div class=\\\"ax-command-item-wrapper\\\">\\n @for (item of displayItems(); track item.id) {\\n <ng-container\\n [ngTemplateOutlet]=\\\"renderItem\\\"\\n [ngTemplateOutletContext]=\\\"{ $implicit: item, level: 1, listNavigation: s }\\\"\\n >\\n </ng-container>\\n } @empty {\\n <div class=\\\"ax-command-not-found\\\">\\n <ax-text>No results found for \\\"{{ searchValue() }}\\\"</ax-text>\\n </div>\\n }\\n </div>\\n }\\n\\n <ng-template #renderItem let-item let-level=\\\"level\\\" let-listNavigation=\\\"listNavigation\\\">\\n <div\\n (mouseenter)=\\\"activeHandler(listNavigation, a)\\\"\\n class=\\\"ax-command-item-container\\\"\\n [style.padding-inline-start.rem]=\\\"level * 0.625\\\"\\n [ngClass]=\\\"{ 'ax-command-item-container-active': a.isActive() }\\\"\\n #a=\\\"axListNavigationItem\\\"\\n axListNavigationItem\\n (click)=\\\"onItemClick(item)\\\"\\n (onKeypress)=\\\"keyPress($event, item)\\\"\\n >\\n <div class=\\\"ax-command-item\\\">\\n @if (item.icon) {\\n <i class=\\\"ax-command-item-icon\\\" [class]=\\\"item.icon\\\"></i>\\n }\\n <span class=\\\"ax-command-item-text\\\">{{ item.text }}</span>\\n </div>\\n </div>\\n\\n @if (item.children?.length) {\\n @for (child of item.children; track child.id) {\\n <ng-container\\n [ngTemplateOutlet]=\\\"renderItem\\\"\\n [ngTemplateOutletContext]=\\\"{ $implicit: child, level: level + 1, listNavigation: s }\\\"\\n >\\n </ng-container>\\n }\\n }\\n </ng-template>\\n</div>\\n\\n<div class=\\\"ax-command-footer\\\">\\n <div class=\\\"ax-kbd-footer\\\">\\n <ax-kbd class=\\\"ax-kbd\\\">\\n <ax-kbd-item [keys]=\\\"['&uarr;', '&darr;']\\\"></ax-kbd-item>\\n </ax-kbd>\\n <ax-text class=\\\"ax-kbd-text\\\">to navigate</ax-text>\\n </div>\\n\\n <div class=\\\"ax-kbd-footer\\\">\\n <ax-kbd class=\\\"ax-kbd\\\">\\n <ax-kbd-item [keys]=\\\"['&#8617;']\\\"></ax-kbd-item>\\n </ax-kbd>\\n <ax-text class=\\\"ax-kbd-text\\\">to select</ax-text>\\n </div>\\n\\n <div class=\\\"ax-kbd-footer\\\">\\n <ax-kbd class=\\\"ax-kbd\\\">\\n <ax-kbd-item [keys]=\\\"['esc']\\\"></ax-kbd-item>\\n </ax-kbd>\\n <ax-text class=\\\"ax-kbd-text\\\">to close</ax-text>\\n </div>\\n</div>\\n\", styles: [\"ax-command{min-width:27rem;overflow:hidden;border-radius:var(--ax-sys-border-radius);outline:4px solid rgba(var(--ax-sys-color-border-light-surface));display:block}ax-command .ax-editor-container.ax-solid{--ax-comp-editor-bg-color: var(--ax-sys-color-light-surface)}ax-command .ax-searchBox-container{padding:.625rem}ax-command .ax-command-container{max-height:20rem;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none;background-color:rgba(var(--ax-sys-color-lightest-surface));color:rgba(var(--ax-sys-color-on-surface))}ax-command .ax-command-container .ax-command-item-pinned-container{padding-inline:.625rem}ax-command .ax-command-container .ax-command-item-pinned-container .ax-command-item-pinned-text{font-weight:500;font-size:.9rem;color:rgba(var(--ax-sys-color-neutral));padding:.625rem}ax-command .ax-command-container .ax-command-item-wrapper{padding-inline:.625rem}ax-command .ax-command-container .ax-command-item-container{cursor:pointer;padding:.5rem;border:1px solid transparent}ax-command .ax-command-container .ax-command-item-container .ax-command-item{display:flex;align-items:center;gap:.5rem}ax-command .ax-command-container .ax-command-item-container .ax-command-item-text{font-weight:500;color:rgba(var(--ax-sys-color-on-lightest-surface));font-size:.875rem}ax-command .ax-command-container .ax-command-item-container .ax-command-item-icon{color:rgba(var(--ax-sys-color-neutral))}ax-command .ax-command-container .ax-command-not-found{padding:1rem;display:flex;justify-content:center}ax-command .ax-command-container .ax-command-item-container-active{outline:2px solid transparent;outline-offset:2px;--tw-border-opacity: 1;background-color:rgba(var(--ax-sys-color-light-surface));border-radius:var(--ax-sys-border-radius);border:1px solid rgba(var(--ax-sys-color-border-light-surface))}ax-command .ax-kbd{display:flex;justify-content:center;align-items:center;height:100%}ax-command .ax-command-footer{border-bottom-right-radius:var(--ax-sys-border-radius);border-bottom-left-radius:var(--ax-sys-border-radius);background-color:rgba(var(--ax-sys-color-lighter-surface));color:rgba(var(--ax-sys-color-neutral));padding:.75rem;display:flex;align-items:center;gap:1.5rem}ax-command .ax-command-footer .ax-kbd-footer{display:flex;justify-content:center;align-items:center;gap:.7rem}ax-command .ax-command-footer .ax-kbd-footer kbd{background-color:rgba(var(--ax-sys-color-lightest-surface))}ax-command .ax-command-footer .ax-kbd-text{font-weight:600;font-size:.9rem}\\n\"], dependencies: [{ kind: \"ngmodule\", type: AXSearchBoxModule }, { kind: \"component\", type: i1.AXSearchBoxComponent, selector: \"ax-search-box\", inputs: [\"disabled\", \"readonly\", \"tabIndex\", \"placeholder\", \"value\", \"state\", \"name\", \"id\", \"look\", \"class\", \"delayTime\", \"type\"], outputs: [\"valueChange\", \"stateChange\", \"onValueChanged\", \"onBlur\", \"onFocus\", \"readonlyChange\", \"disabledChange\", \"onKeyDown\", \"onKeyUp\", \"onKeyPress\"] }, { kind: \"ngmodule\", type: AXDecoratorModule }, { kind: \"component\", type: i2.AXDecoratorClearButtonComponent, selector: \"ax-clear-button\", inputs: [\"icon\"] }, { kind: \"component\", type: i2.AXDecoratorGenericComponent, selector: \"ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay\" }, { kind: \"ngmodule\", type: CommonModule }, { kind: \"directive\", type: i3.NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }, { kind: \"directive\", type: i3.NgTemplateOutlet, selector: \"[ngTemplateOutlet]\", inputs: [\"ngTemplateOutletContext\", \"ngTemplateOutlet\", \"ngTemplateOutletInjector\"] }, { kind: \"ngmodule\", type: FormsModule }, { kind: \"directive\", type: i4.NgControlStatus, selector: \"[formControlName],[ngModel],[formControl]\" }, { kind: \"directive\", type: i4.NgModel, selector: \"[ngModel]:not([formControlName]):not([formControl])\", inputs: [\"name\", \"disabled\", \"ngModel\", \"ngModelOptions\"], outputs: [\"ngModelChange\"], exportAs: [\"ngModel\"] }, { kind: \"ngmodule\", type: AXListNavigationModule }, { kind: \"directive\", type: i5.AXListNavigationDirective, selector: \"[axListNavigation]\", inputs: [\"orientation\"], outputs: [\"onNavigationChanged\", \"onKeypress\"], exportAs: [\"axListNavigation\"] }, { kind: \"directive\", type: i5.AXListNavigationItemDirective, selector: \"[axListNavigationItem]\", outputs: [\"onKeypress\"], exportAs: [\"axListNavigationItem\"] }, { kind: \"component\", type: AXKBDComponent, selector: \"ax-kbd\" }, { kind: \"component\", type: AXKBDItemComponent, selector: \"ax-kbd-item\", inputs: [\"keys\"] }, { kind: \"directive\", type: AXAutoFocusDirective, selector: \"[axAutoFocus]\", inputs: [\"axAutoFocus\", \"axAutoFocusTime\"] }], encapsulation: i0.ViewEncapsulation.None }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AXCommandComponent, decorators: [{\n type: Component,\n args: [{ selector: 'ax-command', encapsulation: ViewEncapsulation.None, imports: [\n AXSearchBoxModule,\n AXDecoratorModule,\n CommonModule,\n FormsModule,\n AXListNavigationModule,\n AXKBDComponent,\n AXKBDItemComponent,\n AXAutoFocusDirective,\n ], providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXCommandComponent),\n multi: true,\n },\n { provide: AXComponent, useExisting: AXCommandComponent },\n { provide: AXValuableComponent, useExisting: AXCommandComponent },\n ], inputs: ['disabled', 'readonly', 'tabIndex', 'placeholder', 'value', 'state', 'name', 'id'], template: \"<div class=\\\"ax-searchBox-container\\\">\\n <ax-search-box\\n #f\\n [delayTime]=\\\"20\\\"\\n [placeholder]=\\\"placeholder\\\"\\n [disabled]=\\\"disabled\\\"\\n [readonly]=\\\"readonly\\\"\\n [(ngModel)]=\\\"searchValue\\\"\\n (onFocus)=\\\"focusHandler($event)\\\"\\n (onBlur)=\\\"blurHandler($event)\\\"\\n (onKeyDown)=\\\"searchEscapeHandler($event)\\\"\\n [axAutoFocus]=\\\"true\\\"\\n >\\n <ax-clear-button></ax-clear-button>\\n </ax-search-box>\\n</div>\\n\\n<div #l class=\\\"ax-command-container\\\" #s=\\\"axListNavigation\\\" axListNavigation (onKeypress)=\\\"closeHandler($event)\\\">\\n @if (value?.pinned && !searchValue()) {\\n <div class=\\\"ax-command-item-pinned-container\\\">\\n <ax-text class=\\\"ax-command-item-pinned-text\\\">{{ value.pinned.title }}</ax-text>\\n\\n @for (item of value.pinned.items; track item.id) {\\n <ng-container\\n [ngTemplateOutlet]=\\\"renderItem\\\"\\n [ngTemplateOutletContext]=\\\"{ $implicit: item, level: 1, listNavigation: s }\\\"\\n >\\n </ng-container>\\n }\\n </div>\\n }\\n\\n @if (displayItems() && searchValue()) {\\n <div class=\\\"ax-command-item-wrapper\\\">\\n @for (item of displayItems(); track item.id) {\\n <ng-container\\n [ngTemplateOutlet]=\\\"renderItem\\\"\\n [ngTemplateOutletContext]=\\\"{ $implicit: item, level: 1, listNavigation: s }\\\"\\n >\\n </ng-container>\\n } @empty {\\n <div class=\\\"ax-command-not-found\\\">\\n <ax-text>No results found for \\\"{{ searchValue() }}\\\"</ax-text>\\n </div>\\n }\\n </div>\\n }\\n\\n <ng-template #renderItem let-item let-level=\\\"level\\\" let-listNavigation=\\\"listNavigation\\\">\\n <div\\n (mouseenter)=\\\"activeHandler(listNavigation, a)\\\"\\n class=\\\"ax-command-item-container\\\"\\n [style.padding-inline-start.rem]=\\\"level * 0.625\\\"\\n [ngClass]=\\\"{ 'ax-command-item-container-active': a.isActive() }\\\"\\n #a=\\\"axListNavigationItem\\\"\\n axListNavigationItem\\n (click)=\\\"onItemClick(item)\\\"\\n (onKeypress)=\\\"keyPress($event, item)\\\"\\n >\\n <div class=\\\"ax-command-item\\\">\\n @if (item.icon) {\\n <i class=\\\"ax-command-item-icon\\\" [class]=\\\"item.icon\\\"></i>\\n }\\n <span class=\\\"ax-command-item-text\\\">{{ item.text }}</span>\\n </div>\\n </div>\\n\\n @if (item.children?.length) {\\n @for (child of item.children; track child.id) {\\n <ng-container\\n [ngTemplateOutlet]=\\\"renderItem\\\"\\n [ngTemplateOutletContext]=\\\"{ $implicit: child, level: level + 1, listNavigation: s }\\\"\\n >\\n </ng-container>\\n }\\n }\\n </ng-template>\\n</div>\\n\\n<div class=\\\"ax-command-footer\\\">\\n <div class=\\\"ax-kbd-footer\\\">\\n <ax-kbd class=\\\"ax-kbd\\\">\\n <ax-kbd-item [keys]=\\\"['&uarr;', '&darr;']\\\"></ax-kbd-item>\\n </ax-kbd>\\n <ax-text class=\\\"ax-kbd-text\\\">to navigate</ax-text>\\n </div>\\n\\n <div class=\\\"ax-kbd-footer\\\">\\n <ax-kbd class=\\\"ax-kbd\\\">\\n <ax-kbd-item [keys]=\\\"['&#8617;']\\\"></ax-kbd-item>\\n </ax-kbd>\\n <ax-text class=\\\"ax-kbd-text\\\">to select</ax-text>\\n </div>\\n\\n <div class=\\\"ax-kbd-footer\\\">\\n <ax-kbd class=\\\"ax-kbd\\\">\\n <ax-kbd-item [keys]=\\\"['esc']\\\"></ax-kbd-item>\\n </ax-kbd>\\n <ax-text class=\\\"ax-kbd-text\\\">to close</ax-text>\\n </div>\\n</div>\\n\", styles: [\"ax-command{min-width:27rem;overflow:hidden;border-radius:var(--ax-sys-border-radius);outline:4px solid rgba(var(--ax-sys-color-border-light-surface));display:block}ax-command .ax-editor-container.ax-solid{--ax-comp-editor-bg-color: var(--ax-sys-color-light-surface)}ax-command .ax-searchBox-container{padding:.625rem}ax-command .ax-command-container{max-height:20rem;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none;background-color:rgba(var(--ax-sys-color-lightest-surface));color:rgba(var(--ax-sys-color-on-surface))}ax-command .ax-command-container .ax-command-item-pinned-container{padding-inline:.625rem}ax-command .ax-command-container .ax-command-item-pinned-container .ax-command-item-pinned-text{font-weight:500;font-size:.9rem;color:rgba(var(--ax-sys-color-neutral));padding:.625rem}ax-command .ax-command-container .ax-command-item-wrapper{padding-inline:.625rem}ax-command .ax-command-container .ax-command-item-container{cursor:pointer;padding:.5rem;border:1px solid transparent}ax-command .ax-command-container .ax-command-item-container .ax-command-item{display:flex;align-items:center;gap:.5rem}ax-command .ax-command-container .ax-command-item-container .ax-command-item-text{font-weight:500;color:rgba(var(--ax-sys-color-on-lightest-surface));font-size:.875rem}ax-command .ax-command-container .ax-command-item-container .ax-command-item-icon{color:rgba(var(--ax-sys-color-neutral))}ax-command .ax-command-container .ax-command-not-found{padding:1rem;display:flex;justify-content:center}ax-command .ax-command-container .ax-command-item-container-active{outline:2px solid transparent;outline-offset:2px;--tw-border-opacity: 1;background-color:rgba(var(--ax-sys-color-light-surface));border-radius:var(--ax-sys-border-radius);border:1px solid rgba(var(--ax-sys-color-border-light-surface))}ax-command .ax-kbd{display:flex;justify-content:center;align-items:center;height:100%}ax-command .ax-command-footer{border-bottom-right-radius:var(--ax-sys-border-radius);border-bottom-left-radius:var(--ax-sys-border-radius);background-color:rgba(var(--ax-sys-color-lighter-surface));color:rgba(var(--ax-sys-color-neutral));padding:.75rem;display:flex;align-items:center;gap:1.5rem}ax-command .ax-command-footer .ax-kbd-footer{display:flex;justify-content:center;align-items:center;gap:.7rem}ax-command .ax-command-footer .ax-kbd-footer kbd{background-color:rgba(var(--ax-sys-color-lightest-surface))}ax-command .ax-command-footer .ax-kbd-text{font-weight:600;font-size:.9rem}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWFuZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL2NvbW1hbmQvc3JjL2xpYi9jb21tYW5kLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvY29tbWFuZC9zcmMvbGliL2NvbW1hbmQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLG9CQUFvQixFQUNwQixXQUFXLEVBR1gsbUJBQW1CLEVBQ25CLHlCQUF5QixFQUN6QixlQUFlLEdBQ2hCLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUNMLHlCQUF5QixFQUV6QixzQkFBc0IsR0FDdkIsTUFBTSw2QkFBNkIsQ0FBQztBQUNyQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDNUUsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3hGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUcsT0FBTyxFQUFFLFdBQVcsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxVQUFVLENBQUM7Ozs7Ozs7QUE4Qm5DLE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxPQUFPLENBQUMsQ0FBQSx5QkFBMEMsQ0FBQSxFQUFFLGVBQWUsQ0FBQztJQTFCNUc7O1FBMkJZLGdCQUFXLEdBQUcsTUFBTSxDQUFD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RSxtQkFBbUIsRUFBRSxXQUFXLEVBQUUsa0JBQWtCLEVBQUU7U0FDbEUsMk1BVWlELHlCQUF5QixvRUN6RDdFLDZ0R0FxR0EsMC9FRHZFSSxpQkFBaUIsNFlBQ2pCLGlCQUFpQixxV0FDakIsWUFBWSxtU0FDWixXQUFXLDhWQUNYLHNCQUFzQixtWUFDdEIsY0FBYyxtREFDZCxrQkFBa0IsMEVBQ2xCLG9CQUFvQjs7MkZBYVgsa0JBQWtCO2tCQTFCOUIsU0FBUzsrQkFDRSxZQUFZLGlCQUdQLGlCQUFpQixDQUFDLElBQUksV0FDNUI7d0JBQ1AsaUJBQWlCO3dCQUNqQixpQkFBaUI7d0JBQ2pCLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxzQkFBc0I7d0JBQ3RCLGNBQWM7d0JBQ2Qsa0JBQWtCO3dCQUNsQixvQkFBb0I7cUJBQ3JCLGFBQ1U7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsbUJBQW1CLENBQUM7NEJBQ2pELEtBQUssRUFBRSxJQUFJO3lCQUNaO3dCQUNELEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxXQUFXLG9CQUFvQixFQUFFO3dCQUN6RCxFQUFFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxXQUFXLG9CQUFvQixFQUFFO3FCQUNsRSxVQUNPLENBQUMsVUFBVSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsYUFBYSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFYQXV0b0ZvY3VzRGlyZWN0aXZlLFxuICBBWENvbXBvbmVudCxcbiAgQVhGb2N1c0V2ZW50LFxuICBBWEh0bWxFdmVudCxcbiAgQVhWYWx1YWJsZUNvbXBvbmVudCxcbiAgTVhJbnB1dEJhc2VWYWx1ZUNvbXBvbmVudCxcbiAgTVhMb29rQ29tcG9uZW50LFxufSBmcm9tICdAYWNvcmV4L2Nkay9jb21tb24nO1xuaW1wb3J0IHtcbiAgQVhMaXN0TmF2aWdhdGlvbkRpcmVjdGl2ZSxcbiAgQVhMaXN0TmF2aWdhdGlvbkl0ZW1EaXJlY3RpdmUsXG4gIEFYTGlzdE5hdmlnYXRpb25Nb2R1bGUsXG59IGZyb20gJ0BhY29yZXgvY2RrL2xpc3QtbmF2aWdhdGlvbic7XG5pbXBvcnQgeyBBWERlY29yYXRvck1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kZWNvcmF0b3JzJztcbmltcG9ydCB7IEFYS0JEQ29tcG9uZW50LCBBWEtCREl0ZW1Db21wb25lbnQgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMva2JkJztcbmltcG9ydCB7IEFYU2VhcmNoQm94Q29tcG9uZW50LCBBWFNlYXJjaEJveE1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9zZWFyY2gtYm94JztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIGNvbXB1dGVkLCBmb3J3YXJkUmVmLCBvdXRwdXQsIHNpZ25hbCwgdmlld0NoaWxkLCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgY2xhc3NlcyB9IGZyb20gJ3BvbHl0eXBlJztcblxuaW1wb3J0IHsgQVhDb21tYW5kQ29tcG9uZW50RXZlbnQsIENvbW1hbmRJdGVtLCBDb21tYW5kTWVudUl0ZW0gfSBmcm9tICcuL2NvbW1hbmQudHlwZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F4LWNvbW1hbmQnLFxuICB0ZW1wbGF0ZVVybDogJy4vY29tbWFuZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9jb21tYW5kLmNvbXBvbmVudC5zY3NzJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgaW1wb3J0czogW1xuICAgIEFYU2VhcmNoQm94TW9kdWxlLFxuICAgIEFYRGVjb3JhdG9yTW9kdWxlLFxuICAgIENvbW1vbk1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBBWExpc3ROYXZpZ2F0aW9uTW9kdWxlLFxuICAgIEFYS0JEQ29tcG9uZW50LFxuICAgIEFYS0JESXRlbUNvbXBvbmVudCxcbiAgICBBWEF1dG9Gb2N1c0RpcmVjdGl2ZSxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBBWENvbW1hbmRDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgICB7IHByb3ZpZGU6IEFYQ29tcG9uZW50LCB1c2VFeGlzdGluZzogQVhDb21tYW5kQ29tcG9uZW50IH0sXG4gICAgeyBwcm92aWRlOiBBWFZhbHVhYmxlQ29tcG9uZW50LCB1c2VFeGlzdGluZzogQVhDb21tYW5kQ29tcG9uZW50IH0sXG4gIF0sXG4gIGlucHV0czogWydkaXNhYmxlZCcsICdyZWFkb25seScsICd0YWJJbmRleCcsICdwbGFjZWhvbGRlcicsICd2YWx1ZScsICdzdGF0ZScsICduYW1lJywgJ2lkJ10sXG59KVxuZXhwb3J0IGNsYXNzIEFYQ29tbWFuZENvbXBvbmVudCBleHRlbmRzIGNsYXNzZXMoTVhJbnB1dEJhc2VWYWx1ZUNvbXBvbmVudDxDb21tYW5kTWVudUl0ZW0+LCBNWExvb2tDb21wb25lbnQpIHtcbiAgcHJvdGVjdGVkIHNlYXJjaFZhbHVlID0gc2lnbmFsKCcnKTtcbiAgcHJvdGVjdGVkIHNlYXJjaEJveCA9IHZpZXdDaGlsZDxBWFNlYXJjaEJveENvbXBvbmVudD4oJ2YnKTtcbiAgcmVhZG9ubHkgb25TdWJtaXQgPSBvdXRwdXQ8QVhDb21tYW5kQ29tcG9uZW50RXZlbnQ+KCk7XG4gIHJlYWRvbmx5IG9uRXNjYXBlID0gb3V0cHV0PEFYSHRtbEV2ZW50PEtleWJvYXJkRXZlbnQ+PigpO1xuICByZWFkb25seSBvblNlYXJjaEJveEZvY3VzID0gb3V0cHV0PEFYSHRtbEV2ZW50PEZvY3VzRXZlbnQ+PigpO1xuICByZWFkb25seSBvblNlYXJjaEJveEJsdXIgPSBvdXRwdXQ8QVhIdG1sRXZlbnQ8Rm9jdXNFdmVudD4+KCk7XG4gIHByb3RlY3RlZCBsaXN0TmF2aWdhdGlvbiA9IHZpZXdDaGlsZCgnbCcsIHsgcmVhZDogQVhMaXN0TmF2aWdhdGlvbkRpcmVjdGl2ZSB9KTtcblxuICBwcm90ZWN0ZWQgZGlzcGxheUl0ZW1zID0gY29tcHV0ZWQ8Q29tbWFuZEl0ZW1bXT4oKCkgPT4ge1xuICAgIGNvbnN0IHNlYXJjaFZhbHVlID0gdGhpcy5zZWFyY2hWYWx1ZSgpO1xuICAgIGxldCBmaWx0ZXJlZDogQ29tbWFuZEl0ZW1bXTtcbiAgICBpZiAoc2VhcmNoVmFsdWUpIHtcbiAgICAgIGZpbHRlcmVkID0gdGhpcy5maWx0ZXJSZWN1cnNpdmUodGhpcy52YWx1ZT8uaXRlbXMgPz8gW10sIHNlYXJjaFZhbHVlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgZmlsdGVyZWQgPSBbXTtcbiAgICB9XG4gICAgcmV0dXJuIGZpbHRlcmVkO1xuICB9KTtcblxuICBwcm90ZWN0ZWQgZm9jdXNIYW5kbGVyKGU6IEFYRm9jdXNFdmVudCkge1xuICAgIHRoaXMub25TZWFyY2hCb3hGb2N1cy5lbWl0KHsgY29tcG9uZW50OiB0aGlzLCBuYXRpdmVFdmVudDogZS5uYXRpdmVFdmVudCB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBibHVySGFuZGxlcihlOiBBWEZvY3VzRXZlbnQpIHtcbiAgICB0aGlzLm9uU2VhcmNoQm94Qmx1ci5lbWl0KHsgY29tcG9uZW50OiB0aGlzLCBuYXRpdmVFdmVudDogZS5uYXRpdmVFdmVudCB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZmlsdGVyUmVjdXJzaXZlKGl0ZW1zOiBhbnlbXSwgdmFsdWU6IHN0cmluZyk6IGFueVtdIHtcbiAgICBjb25zdCBsb3dlclNpZ25hbCA9IHZhbHVlLnRvTG93ZXJDYXNlKCk7XG5cbiAgICByZXR1cm4gaXRlbXNcbiAgICAgIC5tYXAoKGl0ZW0pID0+IHtcbiAgICAgICAgY29uc3QgaXNNYXRjaCA9XG4gICAgICAgICAgaXRlbS50ZXh0Py50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKGxvd2VyU2lnbmFsKSB8fCBpdGVtLmhyZWY/LnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMobG93ZXJTaWduYWwpO1xuXG4gICAgICAgIGNvbnN0IGZpbHRlcmVkQ2hpbGRyZW4gPSBpdGVtLmNoaWxkcmVuID8gdGhpcy5maWx0ZXJSZWN1cnNpdmUoaXRlbS5jaGlsZHJlbiwgdmFsdWUpIDogW107XG5cbiAgICAgICAgaWYgKGlzTWF0Y2ggfHwgZmlsdGVyZWRDaGlsZHJlbi5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIC4uLml0ZW0sXG4gICAgICAgICAgICBjaGlsZHJlbjogZmlsdGVyZWRDaGlsZHJlbixcbiAgICAgICAgICB9O1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICB9KVxuICAgICAgLmZpbHRlcihCb29sZWFuKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvbkl0ZW1DbGljayhpdGVtOiBDb21tYW5kSXRlbSkge1xuICAgIHRoaXMub25TdWJtaXQuZW1pdCh7IGRhdGE6IGl0ZW0sIGNvbXBvbmVudDogdGhpcyB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBrZXlQcmVzcyhlOiBBWEh0bWxFdmVudDxLZXlib2FyZEV2ZW50PiwgaXRlbTogQ29tbWFuZEl0ZW0pIHtcbiAgICBpZiAoZS5uYXRpdmVFdmVudC5rZXkgPT09ICdFbnRlcicgfHwgZS5uYXRpdmVFdmVudC5jb2RlID09PSAnU3BhY2UnKSB7XG4gICAgICBlLm5hdGl2ZUV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgZS5uYXRpdmVFdmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgdGhpcy5vblN1Ym1pdC5lbWl0KHsgZGF0YTogaXRlbSwgY29tcG9uZW50OiB0aGlzIH0pO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBzZWFyY2hFc2NhcGVIYW5kbGVyKGU6IEFYSHRtbEV2ZW50PEtleWJvYXJkRXZlbnQ+KSB7XG4gICAgaWYgKGUubmF0aXZlRXZlbnQua2V5ID09PSAnRXNjYXBlJykge1xuICAgICAgdGhpcy5vbkVzY2FwZS5lbWl0KHsgY29tcG9uZW50OiB0aGlzLCBuYXRpdmVFdmVudDogZS5uYXRpdmVFdmVudCB9KTtcbiAgICB9XG4gICAgaWYgKGUubmF0aXZlRXZlbnQua2V5ID09PSAnQXJyb3dEb3duJykge1xuICAgICAgdGhpcy5saXN0TmF2aWdhdGlvbigpLmZvY3VzT25JbmRleCgwKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgY2xvc2VIYW5kbGVyKGU6IEFYSHRtbEV2ZW50PEtleWJvYXJkRXZlbnQ+KSB7XG4gICAgaWYgKGUubmF0aXZlRXZlbnQua2V5ID09PSAnRXNjYXBlJykge1xuICAgICAgdGhpcy5zZWFyY2hCb3goKS5mb2N1cygpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBhY3RpdmVIYW5kbGVyKGw6IEFYTGlzdE5hdmlnYXRpb25EaXJlY3RpdmUsIGk6IEFYTGlzdE5hdmlnYXRpb25JdGVtRGlyZWN0aXZlKSB7XG4gICAgbD8ubmF2aWdhdGVUbyhpKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImF4LXNlYXJjaEJveC1jb250YWluZXJcIj5cbiAgPGF4LXNlYXJjaC1ib3hcbiAgICAjZlxuICAgIFtkZWxheVRpbWVdPVwiMjBcIlxuICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxuICAgIFsobmdNb2RlbCldPVwic2VhcmNoVmFsdWVcIlxuICAgIChvbkZvY3VzKT1cImZvY3VzSGFuZGxlcigkZXZlbnQpXCJcbiAgICAob25CbHVyKT1cImJsdXJIYW5kbGVyKCRldmVudClcIlxuICAgIChvbktleURvd24pPVwic2VhcmNoRXNjYXBlSGFuZGxlcigkZXZlbnQpXCJcbiAgICBbYXhBdXRvRm9jdXNdPVwidHJ1ZVwiXG4gID5cbiAgICA8YXgtY2xlYXItYnV0dG9uPjwvYXgtY2xlYXItYnV0dG9uPlxuICA8L2F4LXNlYXJjaC1ib3g+XG48L2Rpdj5cblxuPGRpdiAjbCBjbGFzcz1cImF4LWNvbW1hbmQtY29udGFpbmVyXCIgI3M9XCJheExpc3ROYXZpZ2F0aW9uXCIgYXhMaXN0TmF2aWdhdGlvbiAob25LZXlwcmVzcyk9XCJjbG9zZUhhbmRsZXIoJGV2ZW50KVwiPlxuICBAaWYgKHZhbHVlPy5waW5uZWQgJiYgIXNlYXJjaFZhbHVlKCkpIHtcbiAgICA8ZGl2IGNsYXNzPVwiYXgtY29tbWFuZC1pdGVtLXBpbm5lZC1jb250YWluZXJcIj5cbiAgICAgIDxheC10ZXh0IGNsYXNzPVwiYXgtY29tbWFuZC1pdGVtLXBpbm5lZC10ZXh0XCI+e3sgdmFsdWUucGlubmVkLnRpdGxlIH19PC9heC10ZXh0PlxuXG4gICAgICBAZm9yIChpdGVtIG9mIHZhbHVlLnBpbm5lZC5pdGVtczsgdHJhY2sgaXRlbS5pZCkge1xuICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwicmVuZGVySXRlbVwiXG4gICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBpdGVtLCBsZXZlbDogMSwgbGlzdE5hdmlnYXRpb246IHMgfVwiXG4gICAgICAgID5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICB9XG4gICAgPC9kaXY+XG4gIH1cblxuICBAaWYgKGRpc3BsYXlJdGVtcygpICYmIHNlYXJjaFZhbHVlKCkpIHtcbiAgICA8ZGl2IGNsYXNzPVwiYXgtY29tbWFuZC1pdGVtLXdyYXBwZXJcIj5cbiAgICAgIEBmb3IgKGl0ZW0gb2YgZGlzcGxheUl0ZW1zKCk7IHRyYWNrIGl0ZW0uaWQpIHtcbiAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInJlbmRlckl0ZW1cIlxuICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogaXRlbSwgbGV2ZWw6IDEsIGxpc3ROYXZpZ2F0aW9uOiBzIH1cIlxuICAgICAgICA+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgfSBAZW1wdHkge1xuICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtY29tbWFuZC1ub3QtZm91bmRcIj5cbiAgICAgICAgICA8YXgtdGV4dD5ObyByZXN1bHRzIGZvdW5kIGZvciBcInt7IHNlYXJjaFZhbHVlKCkgfX1cIjwvYXgtdGV4dD5cbiAgICAgICAgPC9kaXY+XG4gICAgICB9XG4gICAgPC9kaXY+XG4gIH1cblxuICA8bmctdGVtcGxhdGUgI3JlbmRlckl0ZW0gbGV0LWl0ZW0gbGV0LWxldmVsPVwibGV2ZWxcIiBsZXQtbGlzdE5hdmlnYXRpb249XCJsaXN0TmF2aWdhdGlvblwiPlxuICAgIDxkaXZcbiAgICAgIChtb3VzZWVudGVyKT1cImFjdGl2ZUhhbmRsZXIobGlzdE5hdmlnYXRpb24sIGEpXCJcbiAgICAgIGNsYXNzPVwiYXgtY29tbWFuZC1pdGVtLWNvbnRhaW5lclwiXG4gICAgICBbc3R5bGUucGFkZGluZy1pbmxpbmUtc3RhcnQucmVtXT1cImxldmVsICogMC42MjVcIlxuICAgICAgW25nQ2xhc3NdPVwieyAnYXgtY29tbWFuZC1pdGVtLWNvbnRhaW5lci1hY3RpdmUnOiBhLmlzQWN0aXZlKCkgfVwiXG4gICAgICAjYT1cImF4TGlzdE5hdmlnYXRpb25JdGVtXCJcbiAgICAgIGF4TGlzdE5hdmlnYXRpb25JdGVtXG4gICAgICAoY2xpY2spPVwib25JdGVtQ2xpY2soaXRlbSlcIlxuICAgICAgKG9uS2V5cHJlc3MpPVwia2V5UHJlc3MoJGV2ZW50LCBpdGVtKVwiXG4gICAgPlxuICAgICAgPGRpdiBjbGFzcz1cImF4LWNvbW1hbmQtaXRlbVwiPlxuICAgICAgICBAaWYgKGl0ZW0uaWNvbikge1xuICAgICAgICAgIDxpIGNsYXNzPVwiYXgtY29tbWFuZC1pdGVtLWljb25cIiBbY2xhc3NdPVwiaXRlbS5pY29uXCI+PC9pPlxuICAgICAgICB9XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiYXgtY29tbWFuZC1pdGVtLXRleHRcIj57eyBpdGVtLnRleHQgfX08L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cblxuICAgIEBpZiAoaXRlbS5jaGlsZHJlbj8ubGVuZ3RoKSB7XG4gICAgICBAZm9yIChjaGlsZCBvZiBpdGVtLmNoaWxkcmVuOyB0cmFjayBjaGlsZC5pZCkge1xuICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwicmVuZGVySXRlbVwiXG4gICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBjaGlsZCwgbGV2ZWw6IGxldmVsICsgMSwgbGlzdE5hdmlnYXRpb246IHMgfVwiXG4gICAgICAgID5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICB9XG4gICAgfVxuICA8L25nLXRlbXBsYXRlPlxuPC9kaXY+XG5cbjxkaXYgY2xhc3M9XCJheC1jb21tYW5kLWZvb3RlclwiPlxuICA8ZGl2IGNsYXNzPVwiYXgta2JkLWZvb3RlclwiPlxuICAgIDxheC1rYmQgY2xhc3M9XCJheC1rYmRcIj5cbiAgICAgIDxheC1rYmQtaXRlbSBba2V5c109XCJbJyZ1YXJyOycsICcmZGFycjsnXVwiPjwvYXgta2JkLWl0ZW0+XG4gICAgPC9heC1rYmQ+XG4gICAgPGF4LXRleHQgY2xhc3M9XCJheC1rYmQtdGV4dFwiPnRvIG5hdmlnYXRlPC9heC10ZXh0PlxuICA8L2Rpdj5cblxuICA8ZGl2IGNsYXNzPVwiYXgta2JkLWZvb3RlclwiPlxuICAgIDxheC1rYmQgY2xhc3M9XCJheC1rYmRcIj5cbiAgICAgIDxheC1rYmQtaXRlbSBba2V5c109XCJbJyYjODYxNzsnXVwiPjwvYXgta2JkLWl0ZW0+XG4gICAgPC9heC1rYmQ+XG4gICAgPGF4LXRleHQgY2xhc3M9XCJheC1rYmQtdGV4dFwiPnRvIHNlbGVjdDwvYXgtdGV4dD5cbiAgPC9kaXY+XG5cbiAgPGRpdiBjbGFzcz1cImF4LWtiZC1mb290ZXJcIj5cbiAgICA8YXgta2JkIGNsYXNzPVwiYXgta2JkXCI+XG4gICAgICA8YXgta2JkLWl0ZW0gW2tleXNdPVwiWydlc2MnXVwiPjwvYXgta2JkLWl0ZW0+XG4gICAgPC9heC1rYmQ+XG4gICAgPGF4LXRleHQgY2xhc3M9XCJheC1rYmQtdGV4dFwiPnRvIGNsb3NlPC9heC10ZXh0PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19","import { NgModule } from '@angular/core';\nimport { AXCommandComponent } from './command.component';\nimport * as i0 from \"@angular/core\";\nconst COMPONENT = [AXCommandComponent];\nconst MODULES = [];\nexport class AXCommandModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AXCommandModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.4\", ngImport: i0, type: AXCommandModule, imports: [AXCommandComponent], exports: [AXCommandComponent] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AXCommandModule, imports: [MODULES, COMPONENT] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AXCommandModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [...MODULES, ...COMPONENT],\n exports: [...COMPONENT],\n providers: [],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWFuZC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL2NvbW1hbmQvc3JjL2xpYi9jb21tYW5kLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQUV6RCxNQUFNLFNBQVMsR0FBRyxDQUFDLGtCQUFrQixDQUFDLENBQUM7QUFDdkMsTUFBTSxPQUFPLEdBQUcsRUFBRSxDQUFDO0FBT25CLE1BQU0sT0FBTyxlQUFlOzhHQUFmLGVBQWU7K0dBQWYsZUFBZSxZQVJULGtCQUFrQixhQUFsQixrQkFBa0I7K0dBUXhCLGVBQWUsWUFKYixPQUFPLEVBQUssU0FBUzs7MkZBSXZCLGVBQWU7a0JBTDNCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsR0FBRyxPQUFPLEVBQUUsR0FBRyxTQUFTLENBQUM7b0JBQ25DLE9BQU8sRUFBRSxDQUFDLEdBQUcsU0FBUyxDQUFDO29CQUN2QixTQUFTLEVBQUUsRUFBRTtpQkFDZCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWENvbW1hbmRDb21wb25lbnQgfSBmcm9tICcuL2NvbW1hbmQuY29tcG9uZW50JztcblxuY29uc3QgQ09NUE9ORU5UID0gW0FYQ29tbWFuZENvbXBvbmVudF07XG5jb25zdCBNT0RVTEVTID0gW107XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFsuLi5NT0RVTEVTLCAuLi5DT01QT05FTlRdLFxuICBleHBvcnRzOiBbLi4uQ09NUE9ORU5UXSxcbiAgcHJvdmlkZXJzOiBbXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhDb21tYW5kTW9kdWxlIHt9XG4iXX0=","import { AXEvent } from '@acorex/cdk/common';\nexport class AXCommandComponentEvent extends AXEvent {\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWFuZC50eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9jb21tYW5kL3NyYy9saWIvY29tbWFuZC50eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQWlCN0MsTUFBTSxPQUFPLHVCQUF3QixTQUFRLE9BQU87Q0FFbkQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWEV2ZW50IH0gZnJvbSAnQGFjb3JleC9jZGsvY29tbW9uJztcblxuZXhwb3J0IHR5cGUgQ29tbWFuZEl0ZW0gPSB7XG4gIGlkOiBzdHJpbmcgfCBudW1iZXI7XG4gIHRleHQ6IHN0cmluZztcbiAgaWNvbj86IHN0cmluZztcbiAgaHJlZj86IHN0cmluZztcbiAgY2hpbGRyZW4/OiBDb21tYW5kSXRlbVtdO1xuICBpbmRleD86IG51bWJlcjtcbiAgZGF0YT86IGFueTtcbn07XG5cbmV4cG9ydCB0eXBlIENvbW1hbmRNZW51SXRlbSA9IHtcbiAgcGlubmVkPzogeyB0aXRsZTogc3RyaW5nOyBpdGVtczogQ29tbWFuZEl0ZW1bXSB9O1xuICBpdGVtczogQ29tbWFuZEl0ZW1bXTtcbn07XG5cbmV4cG9ydCBjbGFzcyBBWENvbW1hbmRDb21wb25lbnRFdmVudCBleHRlbmRzIEFYRXZlbnQge1xuICBkYXRhOiBDb21tYW5kSXRlbTtcbn1cbiJdfQ==","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LWNvbXBvbmVudHMtY29tbWFuZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvY29tbWFuZC9zcmMvYWNvcmV4LWNvbXBvbmVudHMtY29tbWFuZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acorex-components-command.mjs","sources":["../tmp-esm2022/command/lib/command.component.js","../tmp-esm2022/command/lib/command.module.js","../tmp-esm2022/command/lib/command.type.js","../tmp-esm2022/command/acorex-components-command.js"],"sourcesContent":["import { AXAutoFocusDirective, AXComponent, AXValuableComponent, MXInputBaseValueComponent, MXLookComponent, } from '@acorex/cdk/common';\nimport { AXListNavigationDirective, AXListNavigationModule, } from '@acorex/cdk/list-navigation';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXKBDComponent, AXKBDItemComponent } from '@acorex/components/kbd';\nimport { AXSearchBoxModule } from '@acorex/components/search-box';\nimport { CommonModule } from '@angular/common';\nimport { Component, computed, forwardRef, output, signal, viewChild, ViewEncapsulation } from '@angular/core';\nimport { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { classes } from 'polytype';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@acorex/components/search-box\";\nimport * as i2 from \"@acorex/components/decorators\";\nimport * as i3 from \"@angular/common\";\nimport * as i4 from \"@angular/forms\";\nimport * as i5 from \"@acorex/cdk/list-navigation\";\nexport class AXCommandComponent extends classes((MXInputBaseValueComponent), MXLookComponent) {\n constructor() {\n super(...arguments);\n this.searchValue = signal('', ...(ngDevMode ? [{ debugName: \"searchValue\" }] : []));\n this.searchBox = viewChild('f', ...(ngDevMode ? [{ debugName: \"searchBox\" }] : []));\n this.onSubmit = output();\n this.onEscape = output();\n this.onSearchBoxFocus = output();\n this.onSearchBoxBlur = output();\n this.listNavigation = viewChild('l', ...(ngDevMode ? [{ debugName: \"listNavigation\", read: AXListNavigationDirective }] : [{ read: AXListNavigationDirective }]));\n this.displayItems = computed(() => {\n const searchValue = this.searchValue();\n let filtered;\n if (searchValue) {\n filtered = this.filterRecursive(this.value?.items ?? [], searchValue);\n }\n else {\n filtered = [];\n }\n return filtered;\n }, ...(ngDevMode ? [{ debugName: \"displayItems\" }] : []));\n }\n focusHandler(e) {\n this.onSearchBoxFocus.emit({ component: this, nativeEvent: e.nativeEvent });\n }\n blurHandler(e) {\n this.onSearchBoxBlur.emit({ component: this, nativeEvent: e.nativeEvent });\n }\n filterRecursive(items, value) {\n const lowerSignal = value.toLowerCase();\n return items\n .map((item) => {\n const isMatch = item.text?.toLowerCase().includes(lowerSignal) || item.href?.toLowerCase().includes(lowerSignal);\n const filteredChildren = item.children ? this.filterRecursive(item.children, value) : [];\n if (isMatch || filteredChildren.length > 0) {\n return {\n ...item,\n children: filteredChildren,\n };\n }\n return null;\n })\n .filter(Boolean);\n }\n onItemClick(item) {\n this.onSubmit.emit({ data: item, component: this });\n }\n keyPress(e, item) {\n if (e.nativeEvent.key === 'Enter' || e.nativeEvent.code === 'Space') {\n e.nativeEvent.stopPropagation();\n e.nativeEvent.preventDefault();\n this.onSubmit.emit({ data: item, component: this });\n }\n }\n searchEscapeHandler(e) {\n if (e.nativeEvent.key === 'Escape') {\n this.onEscape.emit({ component: this, nativeEvent: e.nativeEvent });\n }\n if (e.nativeEvent.key === 'ArrowDown') {\n this.listNavigation().focusOnIndex(0);\n }\n }\n closeHandler(e) {\n if (e.nativeEvent.key === 'Escape') {\n this.searchBox().focus();\n }\n }\n activeHandler(l, i) {\n l?.navigateTo(i);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AXCommandComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.3.4\", type: AXCommandComponent, isStandalone: true, selector: \"ax-command\", inputs: { disabled: \"disabled\", readonly: \"readonly\", tabIndex: \"tabIndex\", placeholder: \"placeholder\", value: \"value\", state: \"state\", name: \"name\", id: \"id\" }, outputs: { onSubmit: \"onSubmit\", onEscape: \"onEscape\", onSearchBoxFocus: \"onSearchBoxFocus\", onSearchBoxBlur: \"onSearchBoxBlur\" }, providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXCommandComponent),\n multi: true,\n },\n { provide: AXComponent, useExisting: AXCommandComponent },\n { provide: AXValuableComponent, useExisting: AXCommandComponent },\n ], viewQueries: [{ propertyName: \"searchBox\", first: true, predicate: [\"f\"], descendants: true, isSignal: true }, { propertyName: \"listNavigation\", first: true, predicate: [\"l\"], descendants: true, read: AXListNavigationDirective, isSignal: true }], usesInheritance: true, ngImport: i0, template: \"<div class=\\\"ax-search-box-container\\\">\\n <ax-search-box\\n #f\\n [delayTime]=\\\"20\\\"\\n [placeholder]=\\\"placeholder\\\"\\n [disabled]=\\\"disabled\\\"\\n [readonly]=\\\"readonly\\\"\\n [(ngModel)]=\\\"searchValue\\\"\\n (onFocus)=\\\"focusHandler($event)\\\"\\n (onBlur)=\\\"blurHandler($event)\\\"\\n (onKeyDown)=\\\"searchEscapeHandler($event)\\\"\\n [axAutoFocus]=\\\"true\\\"\\n >\\n <ax-clear-button></ax-clear-button>\\n </ax-search-box>\\n</div>\\n\\n<div #l class=\\\"ax-command-container\\\" #s=\\\"axListNavigation\\\" axListNavigation (onKeypress)=\\\"closeHandler($event)\\\">\\n @if (value?.pinned && !searchValue()) {\\n <div class=\\\"ax-command-item-pinned-container\\\">\\n <ax-text class=\\\"ax-command-item-pinned-text\\\">{{ value.pinned.title }}</ax-text>\\n\\n @for (item of value.pinned.items; track item.id) {\\n <ng-container\\n [ngTemplateOutlet]=\\\"renderItem\\\"\\n [ngTemplateOutletContext]=\\\"{ $implicit: item, level: 1, listNavigation: s }\\\"\\n >\\n </ng-container>\\n }\\n </div>\\n }\\n\\n @if (displayItems() && searchValue()) {\\n <div class=\\\"ax-command-item-wrapper\\\">\\n @for (item of displayItems(); track item.id) {\\n <ng-container\\n [ngTemplateOutlet]=\\\"renderItem\\\"\\n [ngTemplateOutletContext]=\\\"{ $implicit: item, level: 1, listNavigation: s }\\\"\\n >\\n </ng-container>\\n } @empty {\\n <div class=\\\"ax-command-not-found\\\">\\n <ax-text>No results found for \\\"{{ searchValue() }}\\\"</ax-text>\\n </div>\\n }\\n </div>\\n }\\n\\n <ng-template #renderItem let-item let-level=\\\"level\\\" let-listNavigation=\\\"listNavigation\\\">\\n <div\\n (mouseenter)=\\\"activeHandler(listNavigation, a)\\\"\\n class=\\\"ax-command-item-container\\\"\\n [style.padding-inline-start.rem]=\\\"level * 0.625\\\"\\n [ngClass]=\\\"{ 'ax-command-item-container-active': a.isActive() }\\\"\\n #a=\\\"axListNavigationItem\\\"\\n axListNavigationItem\\n (click)=\\\"onItemClick(item)\\\"\\n (onKeypress)=\\\"keyPress($event, item)\\\"\\n >\\n <div class=\\\"ax-command-item\\\">\\n @if (item.icon) {\\n <i class=\\\"ax-command-item-icon\\\" [class]=\\\"item.icon\\\"></i>\\n }\\n <span class=\\\"ax-command-item-text\\\">{{ item.text }}</span>\\n </div>\\n </div>\\n\\n @if (item.children?.length) {\\n @for (child of item.children; track child.id) {\\n <ng-container\\n [ngTemplateOutlet]=\\\"renderItem\\\"\\n [ngTemplateOutletContext]=\\\"{ $implicit: child, level: level + 1, listNavigation: s }\\\"\\n >\\n </ng-container>\\n }\\n }\\n </ng-template>\\n</div>\\n\\n<div class=\\\"ax-command-footer\\\">\\n <div class=\\\"ax-kbd-footer\\\">\\n <ax-kbd class=\\\"ax-kbd\\\">\\n <ax-kbd-item [keys]=\\\"['&uarr;', '&darr;']\\\"></ax-kbd-item>\\n </ax-kbd>\\n <ax-text class=\\\"ax-kbd-text\\\">to navigate</ax-text>\\n </div>\\n\\n <div class=\\\"ax-kbd-footer\\\">\\n <ax-kbd class=\\\"ax-kbd\\\">\\n <ax-kbd-item [keys]=\\\"['&#8617;']\\\"></ax-kbd-item>\\n </ax-kbd>\\n <ax-text class=\\\"ax-kbd-text\\\">to select</ax-text>\\n </div>\\n\\n <div class=\\\"ax-kbd-footer\\\">\\n <ax-kbd class=\\\"ax-kbd\\\">\\n <ax-kbd-item [keys]=\\\"['esc']\\\"></ax-kbd-item>\\n </ax-kbd>\\n <ax-text class=\\\"ax-kbd-text\\\">to close</ax-text>\\n </div>\\n</div>\\n\", styles: [\"ax-command{overflow:hidden;border-radius:var(--ax-sys-border-radius);outline:4px solid rgba(var(--ax-sys-color-border-light-surface));display:block}ax-command .ax-editor-container.ax-solid{--ax-comp-editor-bg-color: var(--ax-sys-color-light-surface)}ax-command .ax-search-box-container{padding:.625rem}ax-command .ax-command-container{max-height:20rem;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none;background-color:rgba(var(--ax-sys-color-lightest-surface));color:rgba(var(--ax-sys-color-on-surface))}ax-command .ax-command-container .ax-command-item-pinned-container{padding-inline:.625rem}ax-command .ax-command-container .ax-command-item-pinned-container .ax-command-item-pinned-text{font-weight:500;font-size:.9rem;color:rgba(var(--ax-sys-color-neutral));padding:.625rem}ax-command .ax-command-container .ax-command-item-wrapper{padding-inline:.625rem}ax-command .ax-command-container .ax-command-item-container{cursor:pointer;padding:.5rem;border:1px solid transparent}ax-command .ax-command-container .ax-command-item-container .ax-command-item{display:flex;align-items:center;gap:.5rem}ax-command .ax-command-container .ax-command-item-container .ax-command-item-text{font-weight:500;color:rgba(var(--ax-sys-color-on-lightest-surface));font-size:.875rem}ax-command .ax-command-container .ax-command-item-container .ax-command-item-icon{color:rgba(var(--ax-sys-color-neutral))}ax-command .ax-command-container .ax-command-not-found{padding:1rem;display:flex;justify-content:center}ax-command .ax-command-container .ax-command-item-container-active{outline:2px solid transparent;outline-offset:2px;--tw-border-opacity: 1;background-color:rgba(var(--ax-sys-color-light-surface));border-radius:var(--ax-sys-border-radius);border:1px solid rgba(var(--ax-sys-color-border-light-surface))}ax-command .ax-kbd{display:flex;justify-content:center;align-items:center;height:100%}ax-command .ax-command-footer{border-bottom-right-radius:var(--ax-sys-border-radius);border-bottom-left-radius:var(--ax-sys-border-radius);background-color:rgba(var(--ax-sys-color-lighter-surface));color:rgba(var(--ax-sys-color-neutral));padding:.75rem;display:flex;align-items:center;gap:1.5rem}ax-command .ax-command-footer .ax-kbd-footer{display:flex;justify-content:center;align-items:center;gap:.7rem}ax-command .ax-command-footer .ax-kbd-footer kbd{background-color:rgba(var(--ax-sys-color-lightest-surface))}ax-command .ax-command-footer .ax-kbd-text{font-weight:600;font-size:.9rem}\\n\"], dependencies: [{ kind: \"ngmodule\", type: AXSearchBoxModule }, { kind: \"component\", type: i1.AXSearchBoxComponent, selector: \"ax-search-box\", inputs: [\"disabled\", \"readonly\", \"tabIndex\", \"placeholder\", \"value\", \"state\", \"name\", \"id\", \"look\", \"class\", \"delayTime\", \"type\"], outputs: [\"valueChange\", \"stateChange\", \"onValueChanged\", \"onBlur\", \"onFocus\", \"readonlyChange\", \"disabledChange\", \"onKeyDown\", \"onKeyUp\", \"onKeyPress\"] }, { kind: \"ngmodule\", type: AXDecoratorModule }, { kind: \"component\", type: i2.AXDecoratorClearButtonComponent, selector: \"ax-clear-button\", inputs: [\"icon\"] }, { kind: \"component\", type: i2.AXDecoratorGenericComponent, selector: \"ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay\" }, { kind: \"ngmodule\", type: CommonModule }, { kind: \"directive\", type: i3.NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }, { kind: \"directive\", type: i3.NgTemplateOutlet, selector: \"[ngTemplateOutlet]\", inputs: [\"ngTemplateOutletContext\", \"ngTemplateOutlet\", \"ngTemplateOutletInjector\"] }, { kind: \"ngmodule\", type: FormsModule }, { kind: \"directive\", type: i4.NgControlStatus, selector: \"[formControlName],[ngModel],[formControl]\" }, { kind: \"directive\", type: i4.NgModel, selector: \"[ngModel]:not([formControlName]):not([formControl])\", inputs: [\"name\", \"disabled\", \"ngModel\", \"ngModelOptions\"], outputs: [\"ngModelChange\"], exportAs: [\"ngModel\"] }, { kind: \"ngmodule\", type: AXListNavigationModule }, { kind: \"directive\", type: i5.AXListNavigationDirective, selector: \"[axListNavigation]\", inputs: [\"orientation\"], outputs: [\"onNavigationChanged\", \"onKeypress\"], exportAs: [\"axListNavigation\"] }, { kind: \"directive\", type: i5.AXListNavigationItemDirective, selector: \"[axListNavigationItem]\", outputs: [\"onKeypress\"], exportAs: [\"axListNavigationItem\"] }, { kind: \"component\", type: AXKBDComponent, selector: \"ax-kbd\" }, { kind: \"component\", type: AXKBDItemComponent, selector: \"ax-kbd-item\", inputs: [\"keys\"] }, { kind: \"directive\", type: AXAutoFocusDirective, selector: \"[axAutoFocus]\", inputs: [\"axAutoFocus\", \"axAutoFocusTime\"] }], encapsulation: i0.ViewEncapsulation.None }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AXCommandComponent, decorators: [{\n type: Component,\n args: [{ selector: 'ax-command', encapsulation: ViewEncapsulation.None, imports: [\n AXSearchBoxModule,\n AXDecoratorModule,\n CommonModule,\n FormsModule,\n AXListNavigationModule,\n AXKBDComponent,\n AXKBDItemComponent,\n AXAutoFocusDirective,\n ], providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXCommandComponent),\n multi: true,\n },\n { provide: AXComponent, useExisting: AXCommandComponent },\n { provide: AXValuableComponent, useExisting: AXCommandComponent },\n ], inputs: ['disabled', 'readonly', 'tabIndex', 'placeholder', 'value', 'state', 'name', 'id'], template: \"<div class=\\\"ax-search-box-container\\\">\\n <ax-search-box\\n #f\\n [delayTime]=\\\"20\\\"\\n [placeholder]=\\\"placeholder\\\"\\n [disabled]=\\\"disabled\\\"\\n [readonly]=\\\"readonly\\\"\\n [(ngModel)]=\\\"searchValue\\\"\\n (onFocus)=\\\"focusHandler($event)\\\"\\n (onBlur)=\\\"blurHandler($event)\\\"\\n (onKeyDown)=\\\"searchEscapeHandler($event)\\\"\\n [axAutoFocus]=\\\"true\\\"\\n >\\n <ax-clear-button></ax-clear-button>\\n </ax-search-box>\\n</div>\\n\\n<div #l class=\\\"ax-command-container\\\" #s=\\\"axListNavigation\\\" axListNavigation (onKeypress)=\\\"closeHandler($event)\\\">\\n @if (value?.pinned && !searchValue()) {\\n <div class=\\\"ax-command-item-pinned-container\\\">\\n <ax-text class=\\\"ax-command-item-pinned-text\\\">{{ value.pinned.title }}</ax-text>\\n\\n @for (item of value.pinned.items; track item.id) {\\n <ng-container\\n [ngTemplateOutlet]=\\\"renderItem\\\"\\n [ngTemplateOutletContext]=\\\"{ $implicit: item, level: 1, listNavigation: s }\\\"\\n >\\n </ng-container>\\n }\\n </div>\\n }\\n\\n @if (displayItems() && searchValue()) {\\n <div class=\\\"ax-command-item-wrapper\\\">\\n @for (item of displayItems(); track item.id) {\\n <ng-container\\n [ngTemplateOutlet]=\\\"renderItem\\\"\\n [ngTemplateOutletContext]=\\\"{ $implicit: item, level: 1, listNavigation: s }\\\"\\n >\\n </ng-container>\\n } @empty {\\n <div class=\\\"ax-command-not-found\\\">\\n <ax-text>No results found for \\\"{{ searchValue() }}\\\"</ax-text>\\n </div>\\n }\\n </div>\\n }\\n\\n <ng-template #renderItem let-item let-level=\\\"level\\\" let-listNavigation=\\\"listNavigation\\\">\\n <div\\n (mouseenter)=\\\"activeHandler(listNavigation, a)\\\"\\n class=\\\"ax-command-item-container\\\"\\n [style.padding-inline-start.rem]=\\\"level * 0.625\\\"\\n [ngClass]=\\\"{ 'ax-command-item-container-active': a.isActive() }\\\"\\n #a=\\\"axListNavigationItem\\\"\\n axListNavigationItem\\n (click)=\\\"onItemClick(item)\\\"\\n (onKeypress)=\\\"keyPress($event, item)\\\"\\n >\\n <div class=\\\"ax-command-item\\\">\\n @if (item.icon) {\\n <i class=\\\"ax-command-item-icon\\\" [class]=\\\"item.icon\\\"></i>\\n }\\n <span class=\\\"ax-command-item-text\\\">{{ item.text }}</span>\\n </div>\\n </div>\\n\\n @if (item.children?.length) {\\n @for (child of item.children; track child.id) {\\n <ng-container\\n [ngTemplateOutlet]=\\\"renderItem\\\"\\n [ngTemplateOutletContext]=\\\"{ $implicit: child, level: level + 1, listNavigation: s }\\\"\\n >\\n </ng-container>\\n }\\n }\\n </ng-template>\\n</div>\\n\\n<div class=\\\"ax-command-footer\\\">\\n <div class=\\\"ax-kbd-footer\\\">\\n <ax-kbd class=\\\"ax-kbd\\\">\\n <ax-kbd-item [keys]=\\\"['&uarr;', '&darr;']\\\"></ax-kbd-item>\\n </ax-kbd>\\n <ax-text class=\\\"ax-kbd-text\\\">to navigate</ax-text>\\n </div>\\n\\n <div class=\\\"ax-kbd-footer\\\">\\n <ax-kbd class=\\\"ax-kbd\\\">\\n <ax-kbd-item [keys]=\\\"['&#8617;']\\\"></ax-kbd-item>\\n </ax-kbd>\\n <ax-text class=\\\"ax-kbd-text\\\">to select</ax-text>\\n </div>\\n\\n <div class=\\\"ax-kbd-footer\\\">\\n <ax-kbd class=\\\"ax-kbd\\\">\\n <ax-kbd-item [keys]=\\\"['esc']\\\"></ax-kbd-item>\\n </ax-kbd>\\n <ax-text class=\\\"ax-kbd-text\\\">to close</ax-text>\\n </div>\\n</div>\\n\", styles: [\"ax-command{overflow:hidden;border-radius:var(--ax-sys-border-radius);outline:4px solid rgba(var(--ax-sys-color-border-light-surface));display:block}ax-command .ax-editor-container.ax-solid{--ax-comp-editor-bg-color: var(--ax-sys-color-light-surface)}ax-command .ax-search-box-container{padding:.625rem}ax-command .ax-command-container{max-height:20rem;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none;background-color:rgba(var(--ax-sys-color-lightest-surface));color:rgba(var(--ax-sys-color-on-surface))}ax-command .ax-command-container .ax-command-item-pinned-container{padding-inline:.625rem}ax-command .ax-command-container .ax-command-item-pinned-container .ax-command-item-pinned-text{font-weight:500;font-size:.9rem;color:rgba(var(--ax-sys-color-neutral));padding:.625rem}ax-command .ax-command-container .ax-command-item-wrapper{padding-inline:.625rem}ax-command .ax-command-container .ax-command-item-container{cursor:pointer;padding:.5rem;border:1px solid transparent}ax-command .ax-command-container .ax-command-item-container .ax-command-item{display:flex;align-items:center;gap:.5rem}ax-command .ax-command-container .ax-command-item-container .ax-command-item-text{font-weight:500;color:rgba(var(--ax-sys-color-on-lightest-surface));font-size:.875rem}ax-command .ax-command-container .ax-command-item-container .ax-command-item-icon{color:rgba(var(--ax-sys-color-neutral))}ax-command .ax-command-container .ax-command-not-found{padding:1rem;display:flex;justify-content:center}ax-command .ax-command-container .ax-command-item-container-active{outline:2px solid transparent;outline-offset:2px;--tw-border-opacity: 1;background-color:rgba(var(--ax-sys-color-light-surface));border-radius:var(--ax-sys-border-radius);border:1px solid rgba(var(--ax-sys-color-border-light-surface))}ax-command .ax-kbd{display:flex;justify-content:center;align-items:center;height:100%}ax-command .ax-command-footer{border-bottom-right-radius:var(--ax-sys-border-radius);border-bottom-left-radius:var(--ax-sys-border-radius);background-color:rgba(var(--ax-sys-color-lighter-surface));color:rgba(var(--ax-sys-color-neutral));padding:.75rem;display:flex;align-items:center;gap:1.5rem}ax-command .ax-command-footer .ax-kbd-footer{display:flex;justify-content:center;align-items:center;gap:.7rem}ax-command .ax-command-footer .ax-kbd-footer kbd{background-color:rgba(var(--ax-sys-color-lightest-surface))}ax-command .ax-command-footer .ax-kbd-text{font-weight:600;font-size:.9rem}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWFuZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL2NvbW1hbmQvc3JjL2xpYi9jb21tYW5kLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvY29tbWFuZC9zcmMvbGliL2NvbW1hbmQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLG9CQUFvQixFQUNwQixXQUFXLEVBR1gsbUJBQW1CLEVBQ25CLHlCQUF5QixFQUN6QixlQUFlLEdBQ2hCLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUNMLHlCQUF5QixFQUV6QixzQkFBc0IsR0FDdkIsTUFBTSw2QkFBNkIsQ0FBQztBQUNyQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDNUUsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3hGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUcsT0FBTyxFQUFFLFdBQVcsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxVQUFVLENBQUM7Ozs7Ozs7QUE4Qm5DLE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxPQUFPLENBQUMsQ0FBQSx5QkFBMEMsQ0FBQSxFQUFFLGVBQWUsQ0FBQztJQTFCNUc7O1FBMkJZLGdCQUFXLEdBQUcsTUFBTSxDQUFDLEVBQUUsdURBQUMsQ0FBQztRQUN6QixjQUFTLEdBQUcsU0FBUyxDQUF1QixHQUFHLHFEQUFDLENBQUM7UUFDbEQsYUFBUSxHQUFHLE1BQU0sRUFBMkIsQ0FBQztRQUM3QyxhQUFRLEdBQUcsTUFBTSxFQUE4QixDQUFDO1FBQ2hELHFCQUFnQixHQUFHLE1BQU0sRUFBMkIsQ0FBQztRQUNyRCxvQkFBZSxHQUFHLE1BQU0sRUFBMkIsQ0FBQztRQUNuRCxtQkFBYyxHQUFHLFNBQVMsQ0FBQyxHQUFHLGtEQUFJLElBQUksRUFBRSx5QkFBeUIsT0FBakMsRUFBRSxJQUFJLEVBQUUseUJBQXlCLEVBQUUsR0FBQyxDQUFDO1FBRXJFLGlCQUFZLEdBQUcsUUFBUSxDQUFnQixHQUFHLEVBQUU7WUFDcEQsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3ZDLElBQUksUUFBdUIsQ0FBQztZQUM1QixJQUFJLFdBQVcsRUFBRSxDQUFDO2dCQUNoQixRQUFRLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLEtBQUssSUFBSSxFQUFFLEVBQUUsV0FBVyxDQUFDLENBQUM7WUFDeEUsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLFFBQVEsR0FBRyxFQUFFLENBQUM7WUFDaEIsQ0FBQztZQUNELE9BQU8sUUFBUSxDQUFDO1FBQ2xCLENBQUMsd0RBQUMsQ0FBQztLQThESjtJQTVEVyxZQUFZLENBQUMsQ0FBZTtRQUNwQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDOUUsQ0FBQztJQUVTLFdBQVcsQ0FBQyxDQUFlO1FBQ25DLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUVPLGVBQWUsQ0FBQyxLQUFZLEVBQUUsS0FBYTtRQUNqRCxNQUFNLFdBQVcsR0FBRyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7UUFFeEMsT0FBTyxLQUFLO2FBQ1QsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDWixNQUFNLE9BQU8sR0FDWCxJQUFJLENBQUMsSUFBSSxFQUFFLFdBQVcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFLFdBQVcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUVuRyxNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBRXpGLElBQUksT0FBTyxJQUFJLGdCQUFnQixDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDM0MsT0FBTztvQkFDTCxHQUFHLElBQUk7b0JBQ1AsUUFBUSxFQUFFLGdCQUFnQjtpQkFDM0IsQ0FBQztZQUNKLENBQUM7WUFFRCxPQUFPLElBQUksQ0FBQztRQUNkLENBQUMsQ0FBQzthQUNELE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRVMsV0FBVyxDQUFDLElBQWlCO1FBQ3JDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRVMsUUFBUSxDQUFDLENBQTZCLEVBQUUsSUFBaUI7UUFDakUsSUFBSSxDQUFDLENBQUMsV0FBVyxDQUFDLEdBQUcsS0FBSyxPQUFPLElBQUksQ0FBQyxDQUFDLFdBQVcsQ0FBQyxJQUFJLEtBQUssT0FBTyxFQUFFLENBQUM7WUFDcEUsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUNoQyxDQUFDLENBQUMsV0FBVyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQy9CLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUN0RCxDQUFDO0lBQ0gsQ0FBQztJQUVTLG1CQUFtQixDQUFDLENBQTZCO1FBQ3pELElBQUksQ0FBQyxDQUFDLFdBQVcsQ0FBQyxHQUFHLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDbkMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztRQUN0RSxDQUFDO1FBQ0QsSUFBSSxDQUFDLENBQUMsV0FBVyxDQUFDLEdBQUcsS0FBSyxXQUFXLEVBQUUsQ0FBQztZQUN0QyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3hDLENBQUM7SUFDSCxDQUFDO0lBRVMsWUFBWSxDQUFDLENBQTZCO1FBQ2xELElBQUksQ0FBQyxDQUFDLFdBQVcsQ0FBQyxHQUFHLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDbkMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzNCLENBQUM7SUFDSCxDQUFDO0lBRVMsYUFBYSxDQUFDLENBQTRCLEVBQUUsQ0FBZ0M7UUFDcEYsQ0FBQyxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNuQixDQUFDOzhHQS9FVSxrQkFBa0I7a0dBQWxCLGtCQUFrQiw4VkFYbEI7WUFDVDtnQkFDRSxPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGtCQUFrQixDQUFDO2dCQUNqRCxLQUFLLEVBQUUsSUFBSTthQUNaO1lBQ0QsRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxrQkFBa0IsRUFBRTtZQUN6RCxFQUFFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxXQUFXLEVBQUUsa0JBQWtCLEVBQUU7U0FDbEUsMk1BVWlELHlCQUF5QixvRUN6RDdFLDh0R0FxR0EsMitFRHZFSSxpQkFBaUIsNFlBQ2pCLGlCQUFpQixxV0FDakIsWUFBWSxtU0FDWixXQUFXLDhWQUNYLHNCQUFzQixtWUFDdEIsY0FBYyxtREFDZCxrQkFBa0IsMEVBQ2xCLG9CQUFvQjs7MkZBYVgsa0JBQWtCO2tCQTFCOUIsU0FBUzsrQkFDRSxZQUFZLGlCQUdQLGlCQUFpQixDQUFDLElBQUksV0FDNUI7d0JBQ1AsaUJBQWlCO3dCQUNqQixpQkFBaUI7d0JBQ2pCLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxzQkFBc0I7d0JBQ3RCLGNBQWM7d0JBQ2Qsa0JBQWtCO3dCQUNsQixvQkFBb0I7cUJBQ3JCLGFBQ1U7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsbUJBQW1CLENBQUM7NEJBQ2pELEtBQUssRUFBRSxJQUFJO3lCQUNaO3dCQUNELEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxXQUFXLG9CQUFvQixFQUFFO3dCQUN6RCxFQUFFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxXQUFXLG9CQUFvQixFQUFFO3FCQUNsRSxVQUNPLENBQUMsVUFBVSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsYUFBYSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFYQXV0b0ZvY3VzRGlyZWN0aXZlLFxuICBBWENvbXBvbmVudCxcbiAgQVhGb2N1c0V2ZW50LFxuICBBWEh0bWxFdmVudCxcbiAgQVhWYWx1YWJsZUNvbXBvbmVudCxcbiAgTVhJbnB1dEJhc2VWYWx1ZUNvbXBvbmVudCxcbiAgTVhMb29rQ29tcG9uZW50LFxufSBmcm9tICdAYWNvcmV4L2Nkay9jb21tb24nO1xuaW1wb3J0IHtcbiAgQVhMaXN0TmF2aWdhdGlvbkRpcmVjdGl2ZSxcbiAgQVhMaXN0TmF2aWdhdGlvbkl0ZW1EaXJlY3RpdmUsXG4gIEFYTGlzdE5hdmlnYXRpb25Nb2R1bGUsXG59IGZyb20gJ0BhY29yZXgvY2RrL2xpc3QtbmF2aWdhdGlvbic7XG5pbXBvcnQgeyBBWERlY29yYXRvck1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kZWNvcmF0b3JzJztcbmltcG9ydCB7IEFYS0JEQ29tcG9uZW50LCBBWEtCREl0ZW1Db21wb25lbnQgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMva2JkJztcbmltcG9ydCB7IEFYU2VhcmNoQm94Q29tcG9uZW50LCBBWFNlYXJjaEJveE1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9zZWFyY2gtYm94JztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIGNvbXB1dGVkLCBmb3J3YXJkUmVmLCBvdXRwdXQsIHNpZ25hbCwgdmlld0NoaWxkLCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgY2xhc3NlcyB9IGZyb20gJ3BvbHl0eXBlJztcblxuaW1wb3J0IHsgQVhDb21tYW5kQ29tcG9uZW50RXZlbnQsIENvbW1hbmRJdGVtLCBDb21tYW5kTWVudUl0ZW0gfSBmcm9tICcuL2NvbW1hbmQudHlwZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F4LWNvbW1hbmQnLFxuICB0ZW1wbGF0ZVVybDogJy4vY29tbWFuZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9jb21tYW5kLmNvbXBvbmVudC5zY3NzJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgaW1wb3J0czogW1xuICAgIEFYU2VhcmNoQm94TW9kdWxlLFxuICAgIEFYRGVjb3JhdG9yTW9kdWxlLFxuICAgIENvbW1vbk1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBBWExpc3ROYXZpZ2F0aW9uTW9kdWxlLFxuICAgIEFYS0JEQ29tcG9uZW50LFxuICAgIEFYS0JESXRlbUNvbXBvbmVudCxcbiAgICBBWEF1dG9Gb2N1c0RpcmVjdGl2ZSxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBBWENvbW1hbmRDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgICB7IHByb3ZpZGU6IEFYQ29tcG9uZW50LCB1c2VFeGlzdGluZzogQVhDb21tYW5kQ29tcG9uZW50IH0sXG4gICAgeyBwcm92aWRlOiBBWFZhbHVhYmxlQ29tcG9uZW50LCB1c2VFeGlzdGluZzogQVhDb21tYW5kQ29tcG9uZW50IH0sXG4gIF0sXG4gIGlucHV0czogWydkaXNhYmxlZCcsICdyZWFkb25seScsICd0YWJJbmRleCcsICdwbGFjZWhvbGRlcicsICd2YWx1ZScsICdzdGF0ZScsICduYW1lJywgJ2lkJ10sXG59KVxuZXhwb3J0IGNsYXNzIEFYQ29tbWFuZENvbXBvbmVudCBleHRlbmRzIGNsYXNzZXMoTVhJbnB1dEJhc2VWYWx1ZUNvbXBvbmVudDxDb21tYW5kTWVudUl0ZW0+LCBNWExvb2tDb21wb25lbnQpIHtcbiAgcHJvdGVjdGVkIHNlYXJjaFZhbHVlID0gc2lnbmFsKCcnKTtcbiAgcHJvdGVjdGVkIHNlYXJjaEJveCA9IHZpZXdDaGlsZDxBWFNlYXJjaEJveENvbXBvbmVudD4oJ2YnKTtcbiAgcmVhZG9ubHkgb25TdWJtaXQgPSBvdXRwdXQ8QVhDb21tYW5kQ29tcG9uZW50RXZlbnQ+KCk7XG4gIHJlYWRvbmx5IG9uRXNjYXBlID0gb3V0cHV0PEFYSHRtbEV2ZW50PEtleWJvYXJkRXZlbnQ+PigpO1xuICByZWFkb25seSBvblNlYXJjaEJveEZvY3VzID0gb3V0cHV0PEFYSHRtbEV2ZW50PEZvY3VzRXZlbnQ+PigpO1xuICByZWFkb25seSBvblNlYXJjaEJveEJsdXIgPSBvdXRwdXQ8QVhIdG1sRXZlbnQ8Rm9jdXNFdmVudD4+KCk7XG4gIHByb3RlY3RlZCBsaXN0TmF2aWdhdGlvbiA9IHZpZXdDaGlsZCgnbCcsIHsgcmVhZDogQVhMaXN0TmF2aWdhdGlvbkRpcmVjdGl2ZSB9KTtcblxuICBwcm90ZWN0ZWQgZGlzcGxheUl0ZW1zID0gY29tcHV0ZWQ8Q29tbWFuZEl0ZW1bXT4oKCkgPT4ge1xuICAgIGNvbnN0IHNlYXJjaFZhbHVlID0gdGhpcy5zZWFyY2hWYWx1ZSgpO1xuICAgIGxldCBmaWx0ZXJlZDogQ29tbWFuZEl0ZW1bXTtcbiAgICBpZiAoc2VhcmNoVmFsdWUpIHtcbiAgICAgIGZpbHRlcmVkID0gdGhpcy5maWx0ZXJSZWN1cnNpdmUodGhpcy52YWx1ZT8uaXRlbXMgPz8gW10sIHNlYXJjaFZhbHVlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgZmlsdGVyZWQgPSBbXTtcbiAgICB9XG4gICAgcmV0dXJuIGZpbHRlcmVkO1xuICB9KTtcblxuICBwcm90ZWN0ZWQgZm9jdXNIYW5kbGVyKGU6IEFYRm9jdXNFdmVudCkge1xuICAgIHRoaXMub25TZWFyY2hCb3hGb2N1cy5lbWl0KHsgY29tcG9uZW50OiB0aGlzLCBuYXRpdmVFdmVudDogZS5uYXRpdmVFdmVudCB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBibHVySGFuZGxlcihlOiBBWEZvY3VzRXZlbnQpIHtcbiAgICB0aGlzLm9uU2VhcmNoQm94Qmx1ci5lbWl0KHsgY29tcG9uZW50OiB0aGlzLCBuYXRpdmVFdmVudDogZS5uYXRpdmVFdmVudCB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZmlsdGVyUmVjdXJzaXZlKGl0ZW1zOiBhbnlbXSwgdmFsdWU6IHN0cmluZyk6IGFueVtdIHtcbiAgICBjb25zdCBsb3dlclNpZ25hbCA9IHZhbHVlLnRvTG93ZXJDYXNlKCk7XG5cbiAgICByZXR1cm4gaXRlbXNcbiAgICAgIC5tYXAoKGl0ZW0pID0+IHtcbiAgICAgICAgY29uc3QgaXNNYXRjaCA9XG4gICAgICAgICAgaXRlbS50ZXh0Py50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKGxvd2VyU2lnbmFsKSB8fCBpdGVtLmhyZWY/LnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMobG93ZXJTaWduYWwpO1xuXG4gICAgICAgIGNvbnN0IGZpbHRlcmVkQ2hpbGRyZW4gPSBpdGVtLmNoaWxkcmVuID8gdGhpcy5maWx0ZXJSZWN1cnNpdmUoaXRlbS5jaGlsZHJlbiwgdmFsdWUpIDogW107XG5cbiAgICAgICAgaWYgKGlzTWF0Y2ggfHwgZmlsdGVyZWRDaGlsZHJlbi5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIC4uLml0ZW0sXG4gICAgICAgICAgICBjaGlsZHJlbjogZmlsdGVyZWRDaGlsZHJlbixcbiAgICAgICAgICB9O1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICB9KVxuICAgICAgLmZpbHRlcihCb29sZWFuKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvbkl0ZW1DbGljayhpdGVtOiBDb21tYW5kSXRlbSkge1xuICAgIHRoaXMub25TdWJtaXQuZW1pdCh7IGRhdGE6IGl0ZW0sIGNvbXBvbmVudDogdGhpcyB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBrZXlQcmVzcyhlOiBBWEh0bWxFdmVudDxLZXlib2FyZEV2ZW50PiwgaXRlbTogQ29tbWFuZEl0ZW0pIHtcbiAgICBpZiAoZS5uYXRpdmVFdmVudC5rZXkgPT09ICdFbnRlcicgfHwgZS5uYXRpdmVFdmVudC5jb2RlID09PSAnU3BhY2UnKSB7XG4gICAgICBlLm5hdGl2ZUV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgZS5uYXRpdmVFdmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgdGhpcy5vblN1Ym1pdC5lbWl0KHsgZGF0YTogaXRlbSwgY29tcG9uZW50OiB0aGlzIH0pO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBzZWFyY2hFc2NhcGVIYW5kbGVyKGU6IEFYSHRtbEV2ZW50PEtleWJvYXJkRXZlbnQ+KSB7XG4gICAgaWYgKGUubmF0aXZlRXZlbnQua2V5ID09PSAnRXNjYXBlJykge1xuICAgICAgdGhpcy5vbkVzY2FwZS5lbWl0KHsgY29tcG9uZW50OiB0aGlzLCBuYXRpdmVFdmVudDogZS5uYXRpdmVFdmVudCB9KTtcbiAgICB9XG4gICAgaWYgKGUubmF0aXZlRXZlbnQua2V5ID09PSAnQXJyb3dEb3duJykge1xuICAgICAgdGhpcy5saXN0TmF2aWdhdGlvbigpLmZvY3VzT25JbmRleCgwKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgY2xvc2VIYW5kbGVyKGU6IEFYSHRtbEV2ZW50PEtleWJvYXJkRXZlbnQ+KSB7XG4gICAgaWYgKGUubmF0aXZlRXZlbnQua2V5ID09PSAnRXNjYXBlJykge1xuICAgICAgdGhpcy5zZWFyY2hCb3goKS5mb2N1cygpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBhY3RpdmVIYW5kbGVyKGw6IEFYTGlzdE5hdmlnYXRpb25EaXJlY3RpdmUsIGk6IEFYTGlzdE5hdmlnYXRpb25JdGVtRGlyZWN0aXZlKSB7XG4gICAgbD8ubmF2aWdhdGVUbyhpKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImF4LXNlYXJjaC1ib3gtY29udGFpbmVyXCI+XG4gIDxheC1zZWFyY2gtYm94XG4gICAgI2ZcbiAgICBbZGVsYXlUaW1lXT1cIjIwXCJcbiAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcbiAgICBbKG5nTW9kZWwpXT1cInNlYXJjaFZhbHVlXCJcbiAgICAob25Gb2N1cyk9XCJmb2N1c0hhbmRsZXIoJGV2ZW50KVwiXG4gICAgKG9uQmx1cik9XCJibHVySGFuZGxlcigkZXZlbnQpXCJcbiAgICAob25LZXlEb3duKT1cInNlYXJjaEVzY2FwZUhhbmRsZXIoJGV2ZW50KVwiXG4gICAgW2F4QXV0b0ZvY3VzXT1cInRydWVcIlxuICA+XG4gICAgPGF4LWNsZWFyLWJ1dHRvbj48L2F4LWNsZWFyLWJ1dHRvbj5cbiAgPC9heC1zZWFyY2gtYm94PlxuPC9kaXY+XG5cbjxkaXYgI2wgY2xhc3M9XCJheC1jb21tYW5kLWNvbnRhaW5lclwiICNzPVwiYXhMaXN0TmF2aWdhdGlvblwiIGF4TGlzdE5hdmlnYXRpb24gKG9uS2V5cHJlc3MpPVwiY2xvc2VIYW5kbGVyKCRldmVudClcIj5cbiAgQGlmICh2YWx1ZT8ucGlubmVkICYmICFzZWFyY2hWYWx1ZSgpKSB7XG4gICAgPGRpdiBjbGFzcz1cImF4LWNvbW1hbmQtaXRlbS1waW5uZWQtY29udGFpbmVyXCI+XG4gICAgICA8YXgtdGV4dCBjbGFzcz1cImF4LWNvbW1hbmQtaXRlbS1waW5uZWQtdGV4dFwiPnt7IHZhbHVlLnBpbm5lZC50aXRsZSB9fTwvYXgtdGV4dD5cblxuICAgICAgQGZvciAoaXRlbSBvZiB2YWx1ZS5waW5uZWQuaXRlbXM7IHRyYWNrIGl0ZW0uaWQpIHtcbiAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInJlbmRlckl0ZW1cIlxuICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogaXRlbSwgbGV2ZWw6IDEsIGxpc3ROYXZpZ2F0aW9uOiBzIH1cIlxuICAgICAgICA+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgfVxuICAgIDwvZGl2PlxuICB9XG5cbiAgQGlmIChkaXNwbGF5SXRlbXMoKSAmJiBzZWFyY2hWYWx1ZSgpKSB7XG4gICAgPGRpdiBjbGFzcz1cImF4LWNvbW1hbmQtaXRlbS13cmFwcGVyXCI+XG4gICAgICBAZm9yIChpdGVtIG9mIGRpc3BsYXlJdGVtcygpOyB0cmFjayBpdGVtLmlkKSB7XG4gICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJyZW5kZXJJdGVtXCJcbiAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyAkaW1wbGljaXQ6IGl0ZW0sIGxldmVsOiAxLCBsaXN0TmF2aWdhdGlvbjogcyB9XCJcbiAgICAgICAgPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIH0gQGVtcHR5IHtcbiAgICAgICAgPGRpdiBjbGFzcz1cImF4LWNvbW1hbmQtbm90LWZvdW5kXCI+XG4gICAgICAgICAgPGF4LXRleHQ+Tm8gcmVzdWx0cyBmb3VuZCBmb3IgXCJ7eyBzZWFyY2hWYWx1ZSgpIH19XCI8L2F4LXRleHQ+XG4gICAgICAgIDwvZGl2PlxuICAgICAgfVxuICAgIDwvZGl2PlxuICB9XG5cbiAgPG5nLXRlbXBsYXRlICNyZW5kZXJJdGVtIGxldC1pdGVtIGxldC1sZXZlbD1cImxldmVsXCIgbGV0LWxpc3ROYXZpZ2F0aW9uPVwibGlzdE5hdmlnYXRpb25cIj5cbiAgICA8ZGl2XG4gICAgICAobW91c2VlbnRlcik9XCJhY3RpdmVIYW5kbGVyKGxpc3ROYXZpZ2F0aW9uLCBhKVwiXG4gICAgICBjbGFzcz1cImF4LWNvbW1hbmQtaXRlbS1jb250YWluZXJcIlxuICAgICAgW3N0eWxlLnBhZGRpbmctaW5saW5lLXN0YXJ0LnJlbV09XCJsZXZlbCAqIDAuNjI1XCJcbiAgICAgIFtuZ0NsYXNzXT1cInsgJ2F4LWNvbW1hbmQtaXRlbS1jb250YWluZXItYWN0aXZlJzogYS5pc0FjdGl2ZSgpIH1cIlxuICAgICAgI2E9XCJheExpc3ROYXZpZ2F0aW9uSXRlbVwiXG4gICAgICBheExpc3ROYXZpZ2F0aW9uSXRlbVxuICAgICAgKGNsaWNrKT1cIm9uSXRlbUNsaWNrKGl0ZW0pXCJcbiAgICAgIChvbktleXByZXNzKT1cImtleVByZXNzKCRldmVudCwgaXRlbSlcIlxuICAgID5cbiAgICAgIDxkaXYgY2xhc3M9XCJheC1jb21tYW5kLWl0ZW1cIj5cbiAgICAgICAgQGlmIChpdGVtLmljb24pIHtcbiAgICAgICAgICA8aSBjbGFzcz1cImF4LWNvbW1hbmQtaXRlbS1pY29uXCIgW2NsYXNzXT1cIml0ZW0uaWNvblwiPjwvaT5cbiAgICAgICAgfVxuICAgICAgICA8c3BhbiBjbGFzcz1cImF4LWNvbW1hbmQtaXRlbS10ZXh0XCI+e3sgaXRlbS50ZXh0IH19PC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG5cbiAgICBAaWYgKGl0ZW0uY2hpbGRyZW4/Lmxlbmd0aCkge1xuICAgICAgQGZvciAoY2hpbGQgb2YgaXRlbS5jaGlsZHJlbjsgdHJhY2sgY2hpbGQuaWQpIHtcbiAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInJlbmRlckl0ZW1cIlxuICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogY2hpbGQsIGxldmVsOiBsZXZlbCArIDEsIGxpc3ROYXZpZ2F0aW9uOiBzIH1cIlxuICAgICAgICA+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgfVxuICAgIH1cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvZGl2PlxuXG48ZGl2IGNsYXNzPVwiYXgtY29tbWFuZC1mb290ZXJcIj5cbiAgPGRpdiBjbGFzcz1cImF4LWtiZC1mb290ZXJcIj5cbiAgICA8YXgta2JkIGNsYXNzPVwiYXgta2JkXCI+XG4gICAgICA8YXgta2JkLWl0ZW0gW2tleXNdPVwiWycmdWFycjsnLCAnJmRhcnI7J11cIj48L2F4LWtiZC1pdGVtPlxuICAgIDwvYXgta2JkPlxuICAgIDxheC10ZXh0IGNsYXNzPVwiYXgta2JkLXRleHRcIj50byBuYXZpZ2F0ZTwvYXgtdGV4dD5cbiAgPC9kaXY+XG5cbiAgPGRpdiBjbGFzcz1cImF4LWtiZC1mb290ZXJcIj5cbiAgICA8YXgta2JkIGNsYXNzPVwiYXgta2JkXCI+XG4gICAgICA8YXgta2JkLWl0ZW0gW2tleXNdPVwiWycmIzg2MTc7J11cIj48L2F4LWtiZC1pdGVtPlxuICAgIDwvYXgta2JkPlxuICAgIDxheC10ZXh0IGNsYXNzPVwiYXgta2JkLXRleHRcIj50byBzZWxlY3Q8L2F4LXRleHQ+XG4gIDwvZGl2PlxuXG4gIDxkaXYgY2xhc3M9XCJheC1rYmQtZm9vdGVyXCI+XG4gICAgPGF4LWtiZCBjbGFzcz1cImF4LWtiZFwiPlxuICAgICAgPGF4LWtiZC1pdGVtIFtrZXlzXT1cIlsnZXNjJ11cIj48L2F4LWtiZC1pdGVtPlxuICAgIDwvYXgta2JkPlxuICAgIDxheC10ZXh0IGNsYXNzPVwiYXgta2JkLXRleHRcIj50byBjbG9zZTwvYXgtdGV4dD5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==","import { NgModule } from '@angular/core';\nimport { AXCommandComponent } from './command.component';\nimport * as i0 from \"@angular/core\";\nconst COMPONENT = [AXCommandComponent];\nconst MODULES = [];\nexport class AXCommandModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AXCommandModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.4\", ngImport: i0, type: AXCommandModule, imports: [AXCommandComponent], exports: [AXCommandComponent] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AXCommandModule, imports: [MODULES, COMPONENT] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AXCommandModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [...MODULES, ...COMPONENT],\n exports: [...COMPONENT],\n providers: [],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWFuZC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL2NvbW1hbmQvc3JjL2xpYi9jb21tYW5kLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQUV6RCxNQUFNLFNBQVMsR0FBRyxDQUFDLGtCQUFrQixDQUFDLENBQUM7QUFDdkMsTUFBTSxPQUFPLEdBQUcsRUFBRSxDQUFDO0FBT25CLE1BQU0sT0FBTyxlQUFlOzhHQUFmLGVBQWU7K0dBQWYsZUFBZSxZQVJULGtCQUFrQixhQUFsQixrQkFBa0I7K0dBUXhCLGVBQWUsWUFKYixPQUFPLEVBQUssU0FBUzs7MkZBSXZCLGVBQWU7a0JBTDNCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsR0FBRyxPQUFPLEVBQUUsR0FBRyxTQUFTLENBQUM7b0JBQ25DLE9BQU8sRUFBRSxDQUFDLEdBQUcsU0FBUyxDQUFDO29CQUN2QixTQUFTLEVBQUUsRUFBRTtpQkFDZCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWENvbW1hbmRDb21wb25lbnQgfSBmcm9tICcuL2NvbW1hbmQuY29tcG9uZW50JztcblxuY29uc3QgQ09NUE9ORU5UID0gW0FYQ29tbWFuZENvbXBvbmVudF07XG5jb25zdCBNT0RVTEVTID0gW107XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFsuLi5NT0RVTEVTLCAuLi5DT01QT05FTlRdLFxuICBleHBvcnRzOiBbLi4uQ09NUE9ORU5UXSxcbiAgcHJvdmlkZXJzOiBbXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhDb21tYW5kTW9kdWxlIHt9XG4iXX0=","import { AXEvent } from '@acorex/cdk/common';\nexport class AXCommandComponentEvent extends AXEvent {\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWFuZC50eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9jb21tYW5kL3NyYy9saWIvY29tbWFuZC50eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQWlCN0MsTUFBTSxPQUFPLHVCQUF3QixTQUFRLE9BQU87Q0FFbkQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWEV2ZW50IH0gZnJvbSAnQGFjb3JleC9jZGsvY29tbW9uJztcblxuZXhwb3J0IHR5cGUgQ29tbWFuZEl0ZW0gPSB7XG4gIGlkOiBzdHJpbmcgfCBudW1iZXI7XG4gIHRleHQ6IHN0cmluZztcbiAgaWNvbj86IHN0cmluZztcbiAgaHJlZj86IHN0cmluZztcbiAgY2hpbGRyZW4/OiBDb21tYW5kSXRlbVtdO1xuICBpbmRleD86IG51bWJlcjtcbiAgZGF0YT86IGFueTtcbn07XG5cbmV4cG9ydCB0eXBlIENvbW1hbmRNZW51SXRlbSA9IHtcbiAgcGlubmVkPzogeyB0aXRsZTogc3RyaW5nOyBpdGVtczogQ29tbWFuZEl0ZW1bXSB9O1xuICBpdGVtczogQ29tbWFuZEl0ZW1bXTtcbn07XG5cbmV4cG9ydCBjbGFzcyBBWENvbW1hbmRDb21wb25lbnRFdmVudCBleHRlbmRzIEFYRXZlbnQge1xuICBkYXRhOiBDb21tYW5kSXRlbTtcbn1cbiJdfQ==","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LWNvbXBvbmVudHMtY29tbWFuZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvY29tbWFuZC9zcmMvYWNvcmV4LWNvbXBvbmVudHMtY29tbWFuZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":"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"}
@@ -18,6 +18,8 @@ class AXTimeDurationComponent extends classes((MXInputBaseValueComponent), MXLoo
18
18
  this.valueEnd = input('MILLISECOND', ...(ngDevMode ? [{ debugName: "valueEnd" }] : []));
19
19
  this.label = input(true, ...(ngDevMode ? [{ debugName: "label" }] : []));
20
20
  this.maskDigits = input('00:00:00:00:00:00:00:000', ...(ngDevMode ? [{ debugName: "maskDigits" }] : []));
21
+ this.minValue = input(null, ...(ngDevMode ? [{ debugName: "minValue" }] : []));
22
+ this.maxValue = input(null, ...(ngDevMode ? [{ debugName: "maxValue" }] : []));
21
23
  this.maskOptions = signal({
22
24
  mask: 'HH:MM:SS',
23
25
  blocks: {
@@ -63,26 +65,43 @@ class AXTimeDurationComponent extends classes((MXInputBaseValueComponent), MXLoo
63
65
  this.MILLISECOND.set((await this.translationService.translateAsync('@acorex:dateTime.units.millisecond')).toLocaleUpperCase());
64
66
  this.isTranslationInit.set(true);
65
67
  }
66
- onInput(event) {
68
+ async onInput(event) {
67
69
  if (this.onInternalValueChangedFire)
68
70
  return;
69
71
  this.onInputFire = true;
70
72
  const milliseconds = this.maskToMilliseconds(event);
71
- if (!milliseconds) {
72
- this.commitValue(null);
73
- return;
73
+ // Apply min/max validation
74
+ const minValue = this.minValue();
75
+ const maxValue = this.maxValue();
76
+ let validatedMilliseconds = milliseconds;
77
+ if (minValue !== null && milliseconds < minValue) {
78
+ validatedMilliseconds = minValue;
79
+ const normalizedMask = await this.timeDurationFormatter.millisecondsToMask(minValue, this.valueStart(), this.valueEnd(), true, this.maskDigits(), true);
80
+ this.inputValue = normalizedMask;
81
+ }
82
+ if (maxValue !== null && milliseconds > maxValue) {
83
+ validatedMilliseconds = maxValue;
84
+ const normalizedMask = await this.timeDurationFormatter.millisecondsToMask(maxValue, this.valueStart(), this.valueEnd(), true, this.maskDigits(), true);
85
+ this.inputValue = normalizedMask;
74
86
  }
75
- this.commitValue(milliseconds, true);
87
+ this.commitValue(validatedMilliseconds, true);
76
88
  this.onInputFire = false;
77
89
  }
78
90
  async internalValueChanged(value) {
79
- if (!value) {
80
- this.commitValue(null);
81
- }
82
91
  if (this.onInputFire)
83
92
  return;
84
93
  this.onInternalValueChangedFire = true;
85
- const normalizedMask = await this.timeDurationFormatter.millisecondsToMask(value, this.valueStart(), this.valueEnd(), this.label(), this.maskDigits(), true);
94
+ // Apply min/max validation for programmatically set values
95
+ const minValue = this.minValue();
96
+ const maxValue = this.maxValue();
97
+ let validatedValue = value;
98
+ if (minValue !== null && value < minValue) {
99
+ validatedValue = minValue;
100
+ }
101
+ if (maxValue !== null && value > maxValue) {
102
+ validatedValue = maxValue;
103
+ }
104
+ const normalizedMask = await this.timeDurationFormatter.millisecondsToMask(validatedValue, this.valueStart(), this.valueEnd(), this.label(), this.maskDigits(), true);
86
105
  this.inputValue = normalizedMask;
87
106
  setTimeout(() => {
88
107
  this.onInternalValueChangedFire = false;
@@ -221,7 +240,7 @@ class AXTimeDurationComponent extends classes((MXInputBaseValueComponent), MXLoo
221
240
  return this.name;
222
241
  }
223
242
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXTimeDurationComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
224
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.4", type: AXTimeDurationComponent, isStandalone: true, selector: "ax-time-duration", inputs: { disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: false, isRequired: false, transformFunction: null }, tabIndex: { classPropertyName: "tabIndex", publicName: "tabIndex", isSignal: false, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: false, isRequired: false, transformFunction: null }, look: { classPropertyName: "look", publicName: "look", isSignal: false, isRequired: false, transformFunction: null }, valueStart: { classPropertyName: "valueStart", publicName: "valueStart", isSignal: true, isRequired: false, transformFunction: null }, valueEnd: { classPropertyName: "valueEnd", publicName: "valueEnd", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, maskDigits: { classPropertyName: "maskDigits", publicName: "maskDigits", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onValueChanged: "onValueChanged" }, host: { properties: { "attr.name": "this.__hostName" } }, providers: [
243
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.4", type: AXTimeDurationComponent, isStandalone: true, selector: "ax-time-duration", inputs: { disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: false, isRequired: false, transformFunction: null }, tabIndex: { classPropertyName: "tabIndex", publicName: "tabIndex", isSignal: false, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: false, isRequired: false, transformFunction: null }, look: { classPropertyName: "look", publicName: "look", isSignal: false, isRequired: false, transformFunction: null }, valueStart: { classPropertyName: "valueStart", publicName: "valueStart", isSignal: true, isRequired: false, transformFunction: null }, valueEnd: { classPropertyName: "valueEnd", publicName: "valueEnd", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, maskDigits: { classPropertyName: "maskDigits", publicName: "maskDigits", isSignal: true, 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 } }, outputs: { onValueChanged: "onValueChanged" }, host: { properties: { "attr.name": "this.__hostName" } }, providers: [
225
244
  { provide: AXComponent, useExisting: AXTimeDurationComponent },
226
245
  { provide: AXFocusableComponent, useExisting: AXTimeDurationComponent },
227
246
  { provide: AXValuableComponent, useExisting: AXTimeDurationComponent },
@@ -230,7 +249,7 @@ class AXTimeDurationComponent extends classes((MXInputBaseValueComponent), MXLoo
230
249
  useExisting: forwardRef(() => AXTimeDurationComponent),
231
250
  multi: true,
232
251
  },
233
- ], usesInheritance: true, ngImport: i0, template: "<ax-text-box\n [look]=\"look\"\n [placeholder]=\"maskOptions().mask\"\n [mask-options]=\"maskOptions()\"\n [(ngModel)]=\"inputValue\"\n (ngModelChange)=\"onInput($event)\"\n class=\"ax-time-duration-text\"\n [disabled]=\"disabled\"\n [tabIndex]=\"tabIndex\"\n [readonly]=\"readonly\"\n (onFocus)=\"focusHandler($event)\"\n (onBlur)=\"blurHandler($event)\"\n>\n <ng-content select=\"ax-validation-rule\"> </ng-content>\n</ax-text-box>\n", dependencies: [{ kind: "ngmodule", type: AXTextBoxModule }, { kind: "component", type: i1.AXTextBoxComponent, selector: "ax-text-box", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "id", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "look", "mask-options", "class"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXSelectBoxModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
252
+ ], usesInheritance: true, ngImport: i0, template: "<ax-text-box\n [look]=\"look\"\n [placeholder]=\"maskOptions().mask\"\n [mask-options]=\"maskOptions()\"\n [ngModel]=\"inputValue\"\n (ngModelChange)=\"onInput($event)\"\n class=\"ax-time-duration-text\"\n [disabled]=\"disabled\"\n [tabIndex]=\"tabIndex\"\n [readonly]=\"readonly\"\n (onFocus)=\"focusHandler($event)\"\n (onBlur)=\"blurHandler($event)\"\n>\n <ng-content select=\"ax-validation-rule\"> </ng-content>\n</ax-text-box>\n", dependencies: [{ kind: "ngmodule", type: AXTextBoxModule }, { kind: "component", type: i1.AXTextBoxComponent, selector: "ax-text-box", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "id", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "look", "mask-options", "class"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXSelectBoxModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
234
253
  }
235
254
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: AXTimeDurationComponent, decorators: [{
236
255
  type: Component,
@@ -243,7 +262,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImpor
243
262
  useExisting: forwardRef(() => AXTimeDurationComponent),
244
263
  multi: true,
245
264
  },
246
- ], template: "<ax-text-box\n [look]=\"look\"\n [placeholder]=\"maskOptions().mask\"\n [mask-options]=\"maskOptions()\"\n [(ngModel)]=\"inputValue\"\n (ngModelChange)=\"onInput($event)\"\n class=\"ax-time-duration-text\"\n [disabled]=\"disabled\"\n [tabIndex]=\"tabIndex\"\n [readonly]=\"readonly\"\n (onFocus)=\"focusHandler($event)\"\n (onBlur)=\"blurHandler($event)\"\n>\n <ng-content select=\"ax-validation-rule\"> </ng-content>\n</ax-text-box>\n" }]
265
+ ], template: "<ax-text-box\n [look]=\"look\"\n [placeholder]=\"maskOptions().mask\"\n [mask-options]=\"maskOptions()\"\n [ngModel]=\"inputValue\"\n (ngModelChange)=\"onInput($event)\"\n class=\"ax-time-duration-text\"\n [disabled]=\"disabled\"\n [tabIndex]=\"tabIndex\"\n [readonly]=\"readonly\"\n (onFocus)=\"focusHandler($event)\"\n (onBlur)=\"blurHandler($event)\"\n>\n <ng-content select=\"ax-validation-rule\"> </ng-content>\n</ax-text-box>\n" }]
247
266
  }], propDecorators: { __hostName: [{
248
267
  type: HostBinding,
249
268
  args: ['attr.name']
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-components-time-duration.mjs","sources":["../tmp-esm2022/time-duration/lib/time-duration.component.js","../tmp-esm2022/time-duration/lib/time-duration.module.js","../tmp-esm2022/time-duration/acorex-components-time-duration.js"],"sourcesContent":["import { AXComponent, AXFocusableComponent, AXValuableComponent, MXInputBaseValueComponent, MXLookComponent, } from '@acorex/cdk/common';\nimport { AXSelectBoxModule } from '@acorex/components/select-box';\nimport { AXTextBoxModule } from '@acorex/components/text-box';\nimport { AXTimeDurationFormatter } from '@acorex/core/date-time';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { afterNextRender, ChangeDetectionStrategy, Component, effect, forwardRef, HostBinding, inject, input, signal, ViewEncapsulation, } from '@angular/core';\nimport { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { IMask } from 'angular-imask';\nimport { classes } from 'polytype';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@acorex/components/text-box\";\nimport * as i2 from \"@angular/forms\";\nexport class AXTimeDurationComponent extends classes((MXInputBaseValueComponent), MXLookComponent) {\n constructor() {\n super(...arguments);\n this.valueStart = input('YEAR', ...(ngDevMode ? [{ debugName: \"valueStart\" }] : []));\n this.valueEnd = input('MILLISECOND', ...(ngDevMode ? [{ debugName: \"valueEnd\" }] : []));\n this.label = input(true, ...(ngDevMode ? [{ debugName: \"label\" }] : []));\n this.maskDigits = input('00:00:00:00:00:00:00:000', ...(ngDevMode ? [{ debugName: \"maskDigits\" }] : []));\n this.maskOptions = signal({\n mask: 'HH:MM:SS',\n blocks: {\n HH: { mask: IMask.MaskedRange, from: 0, to: 23 },\n MM: { mask: IMask.MaskedRange, from: 0, to: 59 },\n SS: { mask: IMask.MaskedRange, from: 0, to: 59 },\n },\n }, ...(ngDevMode ? [{ debugName: \"maskOptions\" }] : []));\n this.translationService = inject(AXTranslationService);\n this.timeDurationFormatter = inject(AXTimeDurationFormatter);\n this.onInputFire = false;\n this.onInternalValueChangedFire = false;\n this.YEAR = signal(null, ...(ngDevMode ? [{ debugName: \"YEAR\" }] : []));\n this.MONTH = signal(null, ...(ngDevMode ? [{ debugName: \"MONTH\" }] : []));\n this.WEEK = signal(null, ...(ngDevMode ? [{ debugName: \"WEEK\" }] : []));\n this.DAY = signal(null, ...(ngDevMode ? [{ debugName: \"DAY\" }] : []));\n this.HOUR = signal(null, ...(ngDevMode ? [{ debugName: \"HOUR\" }] : []));\n this.MINUTE = signal(null, ...(ngDevMode ? [{ debugName: \"MINUTE\" }] : []));\n this.SECOND = signal(null, ...(ngDevMode ? [{ debugName: \"SECOND\" }] : []));\n this.MILLISECOND = signal(null, ...(ngDevMode ? [{ debugName: \"MILLISECOND\" }] : []));\n this.isTranslationInit = signal(false, ...(ngDevMode ? [{ debugName: \"isTranslationInit\" }] : []));\n this.#init = afterNextRender(async () => {\n await this.initTranslation();\n });\n this.#effect = effect(() => {\n // Depend on label as well\n void this.label();\n if (this.valueStart() && this.valueEnd() && this.isTranslationInit()) {\n this.updateMask();\n }\n }, ...(ngDevMode ? [{ debugName: \"#effect\" }] : []));\n }\n #init;\n #effect;\n async initTranslation() {\n this.YEAR.set((await this.translationService.translateAsync('@acorex:dateTime.units.year')).toLocaleUpperCase());\n this.MONTH.set((await this.translationService.translateAsync('@acorex:dateTime.units.month')).toLocaleUpperCase());\n this.WEEK.set((await this.translationService.translateAsync('@acorex:dateTime.units.week')).toLocaleUpperCase());\n this.DAY.set((await this.translationService.translateAsync('@acorex:dateTime.units.day')).toLocaleUpperCase());\n this.HOUR.set((await this.translationService.translateAsync('@acorex:dateTime.units.hour')).toLocaleUpperCase());\n this.MINUTE.set((await this.translationService.translateAsync('@acorex:dateTime.units.minute')).toLocaleUpperCase());\n this.SECOND.set((await this.translationService.translateAsync('@acorex:dateTime.units.second')).toLocaleUpperCase());\n this.MILLISECOND.set((await this.translationService.translateAsync('@acorex:dateTime.units.millisecond')).toLocaleUpperCase());\n this.isTranslationInit.set(true);\n }\n onInput(event) {\n if (this.onInternalValueChangedFire)\n return;\n this.onInputFire = true;\n const milliseconds = this.maskToMilliseconds(event);\n if (!milliseconds) {\n this.commitValue(null);\n return;\n }\n this.commitValue(milliseconds, true);\n this.onInputFire = false;\n }\n async internalValueChanged(value) {\n if (!value) {\n this.commitValue(null);\n }\n if (this.onInputFire)\n return;\n this.onInternalValueChangedFire = true;\n const normalizedMask = await this.timeDurationFormatter.millisecondsToMask(value, this.valueStart(), this.valueEnd(), this.label(), this.maskDigits(), true);\n this.inputValue = normalizedMask;\n setTimeout(() => {\n this.onInternalValueChangedFire = false;\n });\n }\n replacePersianLabels(input) {\n const replacements = {\n [this.YEAR()]: 'YEAR',\n [this.MONTH()]: 'MONTH',\n [this.WEEK()]: 'WEEK',\n [this.DAY()]: 'DAY',\n [this.HOUR()]: 'HOUR',\n [this.MINUTE()]: 'MINUTE',\n [this.SECOND()]: 'SECOND',\n [this.MILLISECOND()]: 'MILLISECOND',\n };\n return Object.entries(replacements).reduce((str, [fa, en]) => {\n return str.replace(`(${fa})`, `(${en})`);\n }, input);\n }\n maskToMilliseconds(maskValue) {\n const timeUnits = {\n YEAR: 365 * 24 * 60 * 60 * 1000,\n MONTH: 30 * 24 * 60 * 60 * 1000,\n WEEK: 7 * 24 * 60 * 60 * 1000,\n DAY: 24 * 60 * 60 * 1000,\n HOUR: 60 * 60 * 1000,\n MINUTE: 60 * 1000,\n SECOND: 1000,\n MILLISECOND: 1,\n };\n let totalMs = 0;\n if (this.label()) {\n // Parse labeled format: \"00 (YEAR) : 00 (MONTH) : 00 (DAY)\"\n const transformedMaskValue = this.replacePersianLabels(maskValue);\n const regex = /(\\d+)\\s*\\((YEAR|MONTH|WEEK|DAY|HOUR|MINUTE|SECOND|MILLISECOND)\\)/g;\n let match;\n while ((match = regex.exec(transformedMaskValue)) !== null) {\n const value = parseInt(match[1], 10);\n const unit = match[2];\n if (timeUnits[unit] !== undefined) {\n totalMs += value * timeUnits[unit];\n }\n }\n }\n else {\n // Parse unlabeled format: \"00:00:00\" (colon-separated numbers)\n const allUnits = ['YEAR', 'MONTH', 'WEEK', 'DAY', 'HOUR', 'MINUTE', 'SECOND', 'MILLISECOND'];\n const startIndex = allUnits.indexOf(this.valueStart());\n const endIndex = allUnits.indexOf(this.valueEnd());\n if (startIndex !== -1 && endIndex !== -1 && endIndex >= startIndex) {\n const selectedUnits = allUnits.slice(startIndex, endIndex + 1);\n const numbers = maskValue.split(':').map((num) => parseInt(num.trim(), 10));\n for (let i = 0; i < Math.min(numbers.length, selectedUnits.length); i++) {\n const value = numbers[i];\n const unit = selectedUnits[i];\n if (!isNaN(value) && timeUnits[unit] !== undefined) {\n totalMs += value * timeUnits[unit];\n }\n }\n }\n }\n return totalMs;\n }\n updateMask() {\n const allUnits = ['YEAR', 'MONTH', 'WEEK', 'DAY', 'HOUR', 'MINUTE', 'SECOND', 'MILLISECOND'];\n const startIndex = allUnits.indexOf(this.valueStart());\n const endIndex = allUnits.indexOf(this.valueEnd());\n if (startIndex === -1 || endIndex === -1 || endIndex < startIndex) {\n this.maskOptions.set({ mask: '', eager: true });\n return null;\n }\n const selectedUnits = allUnits.slice(startIndex, endIndex + 1);\n let maskParts;\n const yearDigits = this.maskDigits().split(':')[0];\n const monthDigits = this.maskDigits().split(':')[1];\n const weekDigits = this.maskDigits().split(':')[2];\n const dayDigits = this.maskDigits().split(':')[3];\n const hourDigits = this.maskDigits().split(':')[4];\n const minuteDigits = this.maskDigits().split(':')[5];\n const secondDigits = this.maskDigits().split(':')[6];\n const millisecondDigits = this.maskDigits().split(':')[7];\n if (this.label()) {\n // With labels\n const unitPatterns = {\n YEAR: `${yearDigits} (${this.YEAR()})`,\n MONTH: `${monthDigits} (${this.MONTH()})`,\n WEEK: `${weekDigits} (${this.WEEK()})`,\n DAY: `${dayDigits} (${this.DAY()})`,\n HOUR: `${hourDigits} (${this.HOUR()})`,\n MINUTE: `${minuteDigits} (${this.MINUTE()})`,\n SECOND: `${secondDigits} (${this.SECOND()})`,\n MILLISECOND: `${millisecondDigits} (${this.MILLISECOND()})`,\n };\n maskParts = selectedUnits.map((unit) => {\n return unitPatterns[unit];\n });\n }\n else {\n // Without labels - just numbers\n const unitPatterns = {\n YEAR: yearDigits,\n MONTH: monthDigits,\n WEEK: weekDigits,\n DAY: dayDigits,\n HOUR: hourDigits,\n MINUTE: minuteDigits,\n SECOND: secondDigits,\n MILLISECOND: millisecondDigits,\n };\n maskParts = selectedUnits.map((unit) => {\n return unitPatterns[unit];\n });\n }\n let result;\n if (this.label()) {\n if (this.translationService.getActiveLang() === 'fa-IR') {\n result = maskParts.reverse().join(' : ');\n }\n else {\n result = maskParts.join(' : ');\n }\n }\n else {\n result = maskParts.join(':');\n }\n this.maskOptions.set({ mask: result, eager: true });\n }\n focusHandler(e) {\n this.onFocus.emit(e);\n }\n blurHandler(e) {\n this.onBlur.emit(e);\n }\n get __hostName() {\n return this.name;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AXTimeDurationComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.1.0\", version: \"20.3.4\", type: AXTimeDurationComponent, isStandalone: true, selector: \"ax-time-duration\", inputs: { disabled: { classPropertyName: \"disabled\", publicName: \"disabled\", isSignal: false, isRequired: false, transformFunction: null }, tabIndex: { classPropertyName: \"tabIndex\", publicName: \"tabIndex\", isSignal: false, isRequired: false, transformFunction: null }, readonly: { classPropertyName: \"readonly\", publicName: \"readonly\", isSignal: false, isRequired: false, transformFunction: null }, look: { classPropertyName: \"look\", publicName: \"look\", isSignal: false, isRequired: false, transformFunction: null }, valueStart: { classPropertyName: \"valueStart\", publicName: \"valueStart\", isSignal: true, isRequired: false, transformFunction: null }, valueEnd: { classPropertyName: \"valueEnd\", publicName: \"valueEnd\", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: \"label\", publicName: \"label\", isSignal: true, isRequired: false, transformFunction: null }, maskDigits: { classPropertyName: \"maskDigits\", publicName: \"maskDigits\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onValueChanged: \"onValueChanged\" }, host: { properties: { \"attr.name\": \"this.__hostName\" } }, providers: [\n { provide: AXComponent, useExisting: AXTimeDurationComponent },\n { provide: AXFocusableComponent, useExisting: AXTimeDurationComponent },\n { provide: AXValuableComponent, useExisting: AXTimeDurationComponent },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXTimeDurationComponent),\n multi: true,\n },\n ], usesInheritance: true, ngImport: i0, template: \"<ax-text-box\\n [look]=\\\"look\\\"\\n [placeholder]=\\\"maskOptions().mask\\\"\\n [mask-options]=\\\"maskOptions()\\\"\\n [(ngModel)]=\\\"inputValue\\\"\\n (ngModelChange)=\\\"onInput($event)\\\"\\n class=\\\"ax-time-duration-text\\\"\\n [disabled]=\\\"disabled\\\"\\n [tabIndex]=\\\"tabIndex\\\"\\n [readonly]=\\\"readonly\\\"\\n (onFocus)=\\\"focusHandler($event)\\\"\\n (onBlur)=\\\"blurHandler($event)\\\"\\n>\\n <ng-content select=\\\"ax-validation-rule\\\"> </ng-content>\\n</ax-text-box>\\n\", dependencies: [{ kind: \"ngmodule\", type: AXTextBoxModule }, { kind: \"component\", type: i1.AXTextBoxComponent, selector: \"ax-text-box\", inputs: [\"disabled\", \"tabIndex\", \"readonly\", \"value\", \"state\", \"name\", \"id\", \"placeholder\", \"maxLength\", \"allowNull\", \"type\", \"autoComplete\", \"look\", \"mask-options\", \"class\"], outputs: [\"onBlur\", \"onFocus\", \"valueChange\", \"stateChange\", \"onValueChanged\", \"readonlyChange\", \"disabledChange\", \"onKeyDown\", \"onKeyUp\", \"onKeyPress\"] }, { kind: \"ngmodule\", type: FormsModule }, { kind: \"directive\", type: i2.NgControlStatus, selector: \"[formControlName],[ngModel],[formControl]\" }, { kind: \"directive\", type: i2.NgModel, selector: \"[ngModel]:not([formControlName]):not([formControl])\", inputs: [\"name\", \"disabled\", \"ngModel\", \"ngModelOptions\"], outputs: [\"ngModelChange\"], exportAs: [\"ngModel\"] }, { kind: \"ngmodule\", type: AXSelectBoxModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AXTimeDurationComponent, decorators: [{\n type: Component,\n args: [{ selector: 'ax-time-duration', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [AXTextBoxModule, FormsModule, AXSelectBoxModule], inputs: ['disabled', 'tabIndex', 'readonly', 'look'], outputs: ['onValueChanged'], providers: [\n { provide: AXComponent, useExisting: AXTimeDurationComponent },\n { provide: AXFocusableComponent, useExisting: AXTimeDurationComponent },\n { provide: AXValuableComponent, useExisting: AXTimeDurationComponent },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXTimeDurationComponent),\n multi: true,\n },\n ], template: \"<ax-text-box\\n [look]=\\\"look\\\"\\n [placeholder]=\\\"maskOptions().mask\\\"\\n [mask-options]=\\\"maskOptions()\\\"\\n [(ngModel)]=\\\"inputValue\\\"\\n (ngModelChange)=\\\"onInput($event)\\\"\\n class=\\\"ax-time-duration-text\\\"\\n [disabled]=\\\"disabled\\\"\\n [tabIndex]=\\\"tabIndex\\\"\\n [readonly]=\\\"readonly\\\"\\n (onFocus)=\\\"focusHandler($event)\\\"\\n (onBlur)=\\\"blurHandler($event)\\\"\\n>\\n <ng-content select=\\\"ax-validation-rule\\\"> </ng-content>\\n</ax-text-box>\\n\" }]\n }], propDecorators: { __hostName: [{\n type: HostBinding,\n args: ['attr.name']\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS1kdXJhdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL3RpbWUtZHVyYXRpb24vc3JjL2xpYi90aW1lLWR1cmF0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvdGltZS1kdXJhdGlvbi9zcmMvbGliL3RpbWUtZHVyYXRpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFdBQVcsRUFDWCxvQkFBb0IsRUFFcEIsbUJBQW1CLEVBQ25CLHlCQUF5QixFQUN6QixlQUFlLEdBQ2hCLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFpQixlQUFlLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM3RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNoRSxPQUFPLEVBQ0wsZUFBZSxFQUNmLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsTUFBTSxFQUNOLFVBQVUsRUFDVixXQUFXLEVBQ1gsTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEVBQ04saUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxXQUFXLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxVQUFVLENBQUM7Ozs7QUFzQm5DLE1BQU0sT0FBTyx1QkFBd0IsU0FBUSxPQUFPLENBQUMsQ0FBQSx5QkFBaUMsQ0FBQSxFQUFFLGVBQWUsQ0FBQztJ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LEVBQUUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLFdBQVcsRUFBRSx1QkFBdUIsRUFBRTtZQUN2RSxFQUFFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxXQUFXLEVBQUUsdUJBQXVCLEVBQUU7WUFDdEU7Z0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQztnQkFDdEQsS0FBSyxFQUFFLElBQUk7YUFDWjtTQUNGLGlEQzlDSCxpY0FlQSwyQ0RtQlksZUFBZSxxYkFBRSxXQUFXLDhWQUFFLGlCQUFpQjs7MkZBYzlDLHVCQUF1QjtrQkFuQm5DLFNBQVM7K0JBQ0Usa0JBQWtCLG1CQUVYLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUksV0FDNUIsQ0FBQyxlQUFlLEVBQUUsV0FBVyxFQUFFLGlCQUFpQixDQUFDLFVBQ2xELENBQUMsVUFBVSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsTUFBTSxDQUFDLFdBQzNDLENBQUMsZ0JBQWdCLENBQUMsYUFDaEI7d0JBQ1QsRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLFdBQVcseUJBQXlCLEVBQUU7d0JBQzlELEVBQUUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLFdBQVcseUJBQXlCLEVBQUU7d0JBQ3ZFLEVBQUUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFdBQVcseUJBQXlCLEVBQUU7d0JBQ3RFOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLHdCQUF3QixDQUFDOzRCQUN0RCxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRjs4QkF3UFcsVUFBVTtzQkFEckIsV0FBVzt1QkFBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQVhDb21wb25lbnQsXG4gIEFYRm9jdXNhYmxlQ29tcG9uZW50LFxuICBBWEZvY3VzRXZlbnQsXG4gIEFYVmFsdWFibGVDb21wb25lbnQsXG4gIE1YSW5wdXRCYXNlVmFsdWVDb21wb25lbnQsXG4gIE1YTG9va0NvbXBvbmVudCxcbn0gZnJvbSAnQGFjb3JleC9jZGsvY29tbW9uJztcbmltcG9ydCB7IEFYU2VsZWN0Qm94TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3NlbGVjdC1ib3gnO1xuaW1wb3J0IHsgQVhNYXNrT3B0aW9ucywgQVhUZXh0Qm94TW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3RleHQtYm94JztcbmltcG9ydCB7IEFYVGltZUR1cmF0aW9uRm9ybWF0dGVyIH0gZnJvbSAnQGFjb3JleC9jb3JlL2RhdGUtdGltZSc7XG5pbXBvcnQgeyBBWFRyYW5zbGF0aW9uU2VydmljZSB9IGZyb20gJ0BhY29yZXgvY29yZS90cmFuc2xhdGlvbic7XG5pbXBvcnQge1xuICBhZnRlck5leHRSZW5kZXIsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIGVmZmVjdCxcbiAgZm9yd2FyZFJlZixcbiAgSG9zdEJpbmRpbmcsXG4gIGluamVjdCxcbiAgaW5wdXQsXG4gIHNpZ25hbCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgSU1hc2sgfSBmcm9tICdhbmd1bGFyLWltYXNrJztcbmltcG9ydCB7IGNsYXNzZXMgfSBmcm9tICdwb2x5dHlwZSc7XG5pbXBvcnQgeyBBWFRpbWVEdXJhdGlvblVuaXQgfSBmcm9tICcuL3RpbWUtZHVyYXRpb24udHlwZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F4LXRpbWUtZHVyYXRpb24nLFxuICB0ZW1wbGF0ZVVybDogJy4vdGltZS1kdXJhdGlvbi5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBpbXBvcnRzOiBbQVhUZXh0Qm94TW9kdWxlLCBGb3Jtc01vZHVsZSwgQVhTZWxlY3RCb3hNb2R1bGVdLFxuICBpbnB1dHM6IFsnZGlzYWJsZWQnLCAndGFiSW5kZXgnLCAncmVhZG9ubHknLCAnbG9vayddLFxuICBvdXRwdXRzOiBbJ29uVmFsdWVDaGFuZ2VkJ10sXG4gIHByb3ZpZGVyczogW1xuICAgIHsgcHJvdmlkZTogQVhDb21wb25lbnQsIHVzZUV4aXN0aW5nOiBBWFRpbWVEdXJhdGlvbkNvbXBvbmVudCB9LFxuICAgIHsgcHJvdmlkZTogQVhGb2N1c2FibGVDb21wb25lbnQsIHVzZUV4aXN0aW5nOiBBWFRpbWVEdXJhdGlvbkNvbXBvbmVudCB9LFxuICAgIHsgcHJvdmlkZTogQVhWYWx1YWJsZUNvbXBvbmVudCwgdXNlRXhpc3Rpbmc6IEFYVGltZUR1cmF0aW9uQ29tcG9uZW50IH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBBWFRpbWVEdXJhdGlvbkNvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBBWFRpbWVEdXJhdGlvbkNvbXBvbmVudCBleHRlbmRzIGNsYXNzZXMoTVhJbnB1dEJhc2VWYWx1ZUNvbXBvbmVudDxudW1iZXI+LCBNWExvb2tDb21wb25lbnQpIHtcbiAgcHJvdGVjdGVkIGlucHV0VmFsdWU6IHN0cmluZztcbiAgcmVhZG9ubHkgdmFsdWVTdGFydCA9IGlucHV0PEFYVGltZUR1cmF0aW9uVW5pdD4oJ1lFQVInKTtcbiAgcmVhZG9ubHkgdmFsdWVFbmQgPSBpbnB1dDxBWFRpbWVEdXJhdGlvblVuaXQ+KCdNSUxMSVNFQ09ORCcpO1xuICByZWFkb25seSBsYWJlbCA9IGlucHV0PGJvb2xlYW4+KHRydWUpO1xuICByZWFkb25seSBtYXNrRGlnaXRzID0gaW5wdXQoJzAwOjAwOjAwOjAwOjAwOjAwOjAwOjAwMCcpO1xuXG4gIHByb3RlY3RlZCBtYXNrT3B0aW9ucyA9IHNpZ25hbDxBWE1hc2tPcHRpb25zPih7XG4gICAgbWFzazogJ0hIOk1NOlNTJyxcbiAgICBibG9ja3M6IHtcbiAgICAgIEhIOiB7IG1hc2s6IElNYXNrLk1hc2tlZFJhbmdlLCBmcm9tOiAwLCB0bzogMjMgfSxcbiAgICAgIE1NOiB7IG1hc2s6IElNYXNrLk1hc2tlZFJhbmdlLCBmcm9tOiAwLCB0bzogNTkgfSxcbiAgICAgIFNTOiB7IG1hc2s6IElNYXNrLk1hc2tlZFJhbmdlLCBmcm9tOiAwLCB0bzogNTkgfSxcbiAgICB9LFxuICB9KTtcblxuICBwcml2YXRlIHRyYW5zbGF0aW9uU2VydmljZTogQVhUcmFuc2xhdGlvblNlcnZpY2UgPSBpbmplY3QoQVhUcmFuc2xhdGlvblNlcnZpY2UpO1xuICBwcml2YXRlIHRpbWVEdXJhdGlvbkZvcm1hdHRlcjogQVhUaW1lRHVyYXRpb25Gb3JtYXR0ZXIgPSBpbmplY3QoQVhUaW1lRHVyYXRpb25Gb3JtYXR0ZXIpO1xuXG4gIHByaXZhdGUgb25JbnB1dEZpcmUgPSBmYWxzZTtcbiAgcHJpdmF0ZSBvbkludGVybmFsVmFsdWVDaGFuZ2VkRmlyZSA9IGZhbHNlO1xuXG4gIHByaXZhdGUgWUVBUiA9IHNpZ25hbChudWxsKTtcbiAgcHJpdmF0ZSBNT05USCA9IHNpZ25hbChudWxsKTtcbiAgcHJpdmF0ZSBXRUVLID0gc2lnbmFsKG51bGwpO1xuICBwcml2YXRlIERBWSA9IHNpZ25hbChudWxsKTtcbiAgcHJpdmF0ZSBIT1VSID0gc2lnbmFsKG51bGwpO1xuICBwcml2YXRlIE1JTlVURSA9IHNpZ25hbChudWxsKTtcbiAgcHJpdmF0ZSBTRUNPTkQgPSBzaWduYWwobnVsbCk7XG4gIHByaXZhdGUgTUlMTElTRUNPTkQgPSBzaWduYWwobnVsbCk7XG4gIHByaXZhdGUgaXNUcmFuc2xhdGlvbkluaXQgPSBzaWduYWwoZmFsc2UpO1xuXG4gICNpbml0ID0gYWZ0ZXJOZXh0UmVuZGVyKGFzeW5jICgpID0+IHtcbiAgICBhd2FpdCB0aGlzLmluaXRUcmFuc2xhdGlvbigpO1xuICB9KTtcblxuICAjZWZmZWN0ID0gZWZmZWN0KCgpID0+IHtcbiAgICAvLyBEZXBlbmQgb24gbGFiZWwgYXMgd2VsbFxuICAgIHZvaWQgdGhpcy5sYWJlbCgpO1xuICAgIGlmICh0aGlzLnZhbHVlU3RhcnQoKSAmJiB0aGlzLnZhbHVlRW5kKCkgJiYgdGhpcy5pc1RyYW5zbGF0aW9uSW5pdCgpKSB7XG4gICAgICB0aGlzLnVwZGF0ZU1hc2soKTtcbiAgICB9XG4gIH0pO1xuXG4gIGFzeW5jIGluaXRUcmFuc2xhdGlvbigpIHtcbiAgICB0aGlzLllFQVIuc2V0KChhd2FpdCB0aGlzLnRyYW5zbGF0aW9uU2VydmljZS50cmFuc2xhdGVBc3luYygnQGFjb3JleDpkYXRlVGltZS51bml0cy55ZWFyJykpLnRvTG9jYWxlVXBwZXJDYXNlKCkpO1xuICAgIHRoaXMuTU9OVEguc2V0KChhd2FpdCB0aGlzLnRyYW5zbGF0aW9uU2VydmljZS50cmFuc2xhdGVBc3luYygnQGFjb3JleDpkYXRlVGltZS51bml0cy5tb250aCcpKS50b0xvY2FsZVVwcGVyQ2FzZSgpKTtcbiAgICB0aGlzLldFRUsuc2V0KChhd2FpdCB0aGlzLnRyYW5zbGF0aW9uU2VydmljZS50cmFuc2xhdGVBc3luYygnQGFjb3JleDpkYXRlVGltZS51bml0cy53ZWVrJykpLnRvTG9jYWxlVXBwZXJDYXNlKCkpO1xuICAgIHRoaXMuREFZLnNldCgoYXdhaXQgdGhpcy50cmFuc2xhdGlvblNlcnZpY2UudHJhbnNsYXRlQXN5bmMoJ0BhY29yZXg6ZGF0ZVRpbWUudW5pdHMuZGF5JykpLnRvTG9jYWxlVXBwZXJDYXNlKCkpO1xuICAgIHRoaXMuSE9VUi5zZXQoKGF3YWl0IHRoaXMudHJhbnNsYXRpb25TZXJ2aWNlLnRyYW5zbGF0ZUFzeW5jKCdAYWNvcmV4OmRhdGVUaW1lLnVuaXRzLmhvdXInKSkudG9Mb2NhbGVVcHBlckNhc2UoKSk7XG4gICAgdGhpcy5NSU5VVEUuc2V0KFxuICAgICAgKGF3YWl0IHRoaXMudHJhbnNsYXRpb25TZXJ2aWNlLnRyYW5zbGF0ZUFzeW5jKCdAYWNvcmV4OmRhdGVUaW1lLnVuaXRzLm1pbnV0ZScpKS50b0xvY2FsZVVwcGVyQ2FzZSgpLFxuICAgICk7XG4gICAgdGhpcy5TRUNPTkQuc2V0KFxuICAgICAgKGF3YWl0IHRoaXMudHJhbnNsYXRpb25TZXJ2aWNlLnRyYW5zbGF0ZUFzeW5jKCdAYWNvcmV4OmRhdGVUaW1lLnVuaXRzLnNlY29uZCcpKS50b0xvY2FsZVVwcGVyQ2FzZSgpLFxuICAgICk7XG4gICAgdGhpcy5NSUxMSVNFQ09ORC5zZXQoXG4gICAgICAoYXdhaXQgdGhpcy50cmFuc2xhdGlvblNlcnZpY2UudHJhbnNsYXRlQXN5bmMoJ0BhY29yZXg6ZGF0ZVRpbWUudW5pdHMubWlsbGlzZWNvbmQnKSkudG9Mb2NhbGVVcHBlckNhc2UoKSxcbiAgICApO1xuICAgIHRoaXMuaXNUcmFuc2xhdGlvbkluaXQuc2V0KHRydWUpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG9uSW5wdXQoZXZlbnQ6IGFueSkge1xuICAgIGlmICh0aGlzLm9uSW50ZXJuYWxWYWx1ZUNoYW5nZWRGaXJlKSByZXR1cm47XG4gICAgdGhpcy5vbklucHV0RmlyZSA9IHRydWU7XG4gICAgY29uc3QgbWlsbGlzZWNvbmRzID0gdGhpcy5tYXNrVG9NaWxsaXNlY29uZHMoZXZlbnQpO1xuICAgIGlmICghbWlsbGlzZWNvbmRzKSB7XG4gICAgICB0aGlzLmNvbW1pdFZhbHVlKG51bGwpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmNvbW1pdFZhbHVlKG1pbGxpc2Vjb25kcywgdHJ1ZSk7XG4gICAgdGhpcy5vbklucHV0RmlyZSA9IGZhbHNlO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGFzeW5jIGludGVybmFsVmFsdWVDaGFuZ2VkKHZhbHVlOiBudW1iZXIpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAoIXZhbHVlKSB7XG4gICAgICB0aGlzLmNvbW1pdFZhbHVlKG51bGwpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLm9uSW5wdXRGaXJlKSByZXR1cm47XG4gICAgdGhpcy5vbkludGVybmFsVmFsdWVDaGFuZ2VkRmlyZSA9IHRydWU7XG5cbiAgICBjb25zdCBub3JtYWxpemVkTWFzayA9IGF3YWl0IHRoaXMudGltZUR1cmF0aW9uRm9ybWF0dGVyLm1pbGxpc2Vjb25kc1RvTWFzayhcbiAgICAgIHZhbHVlLFxuICAgICAgdGhpcy52YWx1ZVN0YXJ0KCksXG4gICAgICB0aGlzLnZhbHVlRW5kKCksXG4gICAgICB0aGlzLmxhYmVsKCksXG4gICAgICB0aGlzLm1hc2tEaWdpdHMoKSxcbiAgICAgIHRydWUsXG4gICAgKTtcblxuICAgIHRoaXMuaW5wdXRWYWx1ZSA9IG5vcm1hbGl6ZWRNYXNrO1xuXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLm9uSW50ZXJuYWxWYWx1ZUNoYW5nZWRGaXJlID0gZmFsc2U7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHJlcGxhY2VQZXJzaWFuTGFiZWxzKGlucHV0OiBzdHJpbmcpIHtcbiAgICBjb25zdCByZXBsYWNlbWVudHMgPSB7XG4gICAgICBbdGhpcy5ZRUFSKCldOiAnWUVBUicsXG4gICAgICBbdGhpcy5NT05USCgpXTogJ01PTlRIJyxcbiAgICAgIFt0aGlzLldFRUsoKV06ICdXRUVLJyxcbiAgICAgIFt0aGlzLkRBWSgpXTogJ0RBWScsXG4gICAgICBbdGhpcy5IT1VSKCldOiAnSE9VUicsXG4gICAgICBbdGhpcy5NSU5VVEUoKV06ICdNSU5VVEUnLFxuICAgICAgW3RoaXMuU0VDT05EKCldOiAnU0VDT05EJyxcbiAgICAgIFt0aGlzLk1JTExJU0VDT05EKCldOiAnTUlMTElTRUNPTkQnLFxuICAgIH07XG5cbiAgICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVwbGFjZW1lbnRzKS5yZWR1Y2UoKHN0ciwgW2ZhLCBlbl0pID0+IHtcbiAgICAgIHJldHVybiBzdHIucmVwbGFjZShgKCR7ZmF9KWAsIGAoJHtlbn0pYCk7XG4gICAgfSwgaW5wdXQpO1xuICB9XG5cbiAgcHJpdmF0ZSBtYXNrVG9NaWxsaXNlY29uZHMobWFza1ZhbHVlOiBzdHJpbmcpOiBudW1iZXIge1xuICAgIGNvbnN0IHRpbWVVbml0cyA9IHtcbiAgICAgIFlFQVI6IDM2NSAqIDI0ICogNjAgKiA2MCAqIDEwMDAsXG4gICAgICBNT05USDogMzAgKiAyNCAqIDYwICogNjAgKiAxMDAwLFxuICAgICAgV0VFSzogNyAqIDI0ICogNjAgKiA2MCAqIDEwMDAsXG4gICAgICBEQVk6IDI0ICogNjAgKiA2MCAqIDEwMDAsXG4gICAgICBIT1VSOiA2MCAqIDYwICogMTAwMCxcbiAgICAgIE1JTlVURTogNjAgKiAxMDAwLFxuICAgICAgU0VDT05EOiAxMDAwLFxuICAgICAgTUlMTElTRUNPTkQ6IDEsXG4gICAgfTtcblxuICAgIGxldCB0b3RhbE1zID0gMDtcblxuICAgIGlmICh0aGlzLmxhYmVsKCkpIHtcbiAgICAgIC8vIFBhcnNlIGxhYmVsZWQgZm9ybWF0OiBcIjAwIChZRUFSKSA6IDAwIChNT05USCkgOiAwMCAoREFZKVwiXG4gICAgICBjb25zdCB0cmFuc2Zvcm1lZE1hc2tWYWx1ZSA9IHRoaXMucmVwbGFjZVBlcnNpYW5MYWJlbHMobWFza1ZhbHVlKTtcbiAgICAgIGNvbnN0IHJlZ2V4ID0gLyhcXGQrKVxccypcXCgoWUVBUnxNT05USHxXRUVLfERBWXxIT1VSfE1JTlVURXxTRUNPTkR8TUlMTElTRUNPTkQpXFwpL2c7XG4gICAgICBsZXQgbWF0Y2g7XG5cbiAgICAgIHdoaWxlICgobWF0Y2ggPSByZWdleC5leGVjKHRyYW5zZm9ybWVkTWFza1ZhbHVlKSkgIT09IG51bGwpIHtcbiAgICAgICAgY29uc3QgdmFsdWUgPSBwYXJzZUludChtYXRjaFsxXSwgMTApO1xuICAgICAgICBjb25zdCB1bml0ID0gbWF0Y2hbMl07XG4gICAgICAgIGlmICh0aW1lVW5pdHNbdW5pdF0gIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIHRvdGFsTXMgKz0gdmFsdWUgKiB0aW1lVW5pdHNbdW5pdF07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgLy8gUGFyc2UgdW5sYWJlbGVkIGZvcm1hdDogXCIwMDowMDowMFwiIChjb2xvbi1zZXBhcmF0ZWQgbnVtYmVycylcbiAgICAgIGNvbnN0IGFsbFVuaXRzID0gWydZRUFSJywgJ01PTlRIJywgJ1dFRUsnLCAnREFZJywgJ0hPVVInLCAnTUlOVVRFJywgJ1NFQ09ORCcsICdNSUxMSVNFQ09ORCddO1xuICAgICAgY29uc3Qgc3RhcnRJbmRleCA9IGFsbFVuaXRzLmluZGV4T2YodGhpcy52YWx1ZVN0YXJ0KCkpO1xuICAgICAgY29uc3QgZW5kSW5kZXggPSBhbGxVbml0cy5pbmRleE9mKHRoaXMudmFsdWVFbmQoKSk7XG5cbiAgICAgIGlmIChzdGFydEluZGV4ICE9PSAtMSAmJiBlbmRJbmRleCAhPT0gLTEgJiYgZW5kSW5kZXggPj0gc3RhcnRJbmRleCkge1xuICAgICAgICBjb25zdCBzZWxlY3RlZFVuaXRzID0gYWxsVW5pdHMuc2xpY2Uoc3RhcnRJbmRleCwgZW5kSW5kZXggKyAxKTtcbiAgICAgICAgY29uc3QgbnVtYmVycyA9IG1hc2tWYWx1ZS5zcGxpdCgnOicpLm1hcCgobnVtKSA9PiBwYXJzZUludChudW0udHJpbSgpLCAxMCkpO1xuXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgTWF0aC5taW4obnVtYmVycy5sZW5ndGgsIHNlbGVjdGVkVW5pdHMubGVuZ3RoKTsgaSsrKSB7XG4gICAgICAgICAgY29uc3QgdmFsdWUgPSBudW1iZXJzW2ldO1xuICAgICAgICAgIGNvbnN0IHVuaXQgPSBzZWxlY3RlZFVuaXRzW2ldO1xuICAgICAgICAgIGlmICghaXNOYU4odmFsdWUpICYmIHRpbWVVbml0c1t1bml0XSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICB0b3RhbE1zICs9IHZhbHVlICogdGltZVVuaXRzW3VuaXRdO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB0b3RhbE1zO1xuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVNYXNrKCkge1xuICAgIGNvbnN0IGFsbFVuaXRzID0gWydZRUFSJywgJ01PTlRIJywgJ1dFRUsnLCAnREFZJywgJ0hPVVInLCAnTUlOVVRFJywgJ1NFQ09ORCcsICdNSUxMSVNFQ09ORCddO1xuICAgIGNvbnN0IHN0YXJ0SW5kZXggPSBhbGxVbml0cy5pbmRleE9mKHRoaXMudmFsdWVTdGFydCgpKTtcbiAgICBjb25zdCBlbmRJbmRleCA9IGFsbFVuaXRzLmluZGV4T2YodGhpcy52YWx1ZUVuZCgpKTtcblxuICAgIGlmIChzdGFydEluZGV4ID09PSAtMSB8fCBlbmRJbmRleCA9PT0gLTEgfHwgZW5kSW5kZXggPCBzdGFydEluZGV4KSB7XG4gICAgICB0aGlzLm1hc2tPcHRpb25zLnNldCh7IG1hc2s6ICcnLCBlYWdlcjogdHJ1ZSB9KTtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGNvbnN0IHNlbGVjdGVkVW5pdHMgPSBhbGxVbml0cy5zbGljZShzdGFydEluZGV4LCBlbmRJbmRleCArIDEpO1xuXG4gICAgbGV0IG1hc2tQYXJ0czogc3RyaW5nW107XG5cbiAgICBjb25zdCB5ZWFyRGlnaXRzID0gdGhpcy5tYXNrRGlnaXRzKCkuc3BsaXQoJzonKVswXTtcbiAgICBjb25zdCBtb250aERpZ2l0cyA9IHRoaXMubWFza0RpZ2l0cygpLnNwbGl0KCc6JylbMV07XG4gICAgY29uc3Qgd2Vla0RpZ2l0cyA9IHRoaXMubWFza0RpZ2l0cygpLnNwbGl0KCc6JylbMl07XG4gICAgY29uc3QgZGF5RGlnaXRzID0gdGhpcy5tYXNrRGlnaXRzKCkuc3BsaXQoJzonKVszXTtcbiAgICBjb25zdCBob3VyRGlnaXRzID0gdGhpcy5tYXNrRGlnaXRzKCkuc3BsaXQoJzonKVs0XTtcbiAgICBjb25zdCBtaW51dGVEaWdpdHMgPSB0aGlzLm1hc2tEaWdpdHMoKS5zcGxpdCgnOicpWzVdO1xuICAgIGNvbnN0IHNlY29uZERpZ2l0cyA9IHRoaXMubWFza0RpZ2l0cygpLnNwbGl0KCc6JylbNl07XG4gICAgY29uc3QgbWlsbGlzZWNvbmREaWdpdHMgPSB0aGlzLm1hc2tEaWdpdHMoKS5zcGxpdCgnOicpWzddO1xuXG4gICAgaWYgKHRoaXMubGFiZWwoKSkge1xuICAgICAgLy8gV2l0aCBsYWJlbHNcbiAgICAgIGNvbnN0IHVuaXRQYXR0ZXJuczogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgICAgICAgWUVBUjogYCR7eWVhckRpZ2l0c30gKCR7dGhpcy5ZRUFSKCl9KWAsXG4gICAgICAgIE1PTlRIOiBgJHttb250aERpZ2l0c30gKCR7dGhpcy5NT05USCgpfSlgLFxuICAgICAgICBXRUVLOiBgJHt3ZWVrRGlnaXRzfSAoJHt0aGlzLldFRUsoKX0pYCxcbiAgICAgICAgREFZOiBgJHtkYXlEaWdpdHN9ICgke3RoaXMuREFZKCl9KWAsXG4gICAgICAgIEhPVVI6IGAke2hvdXJEaWdpdHN9ICgke3RoaXMuSE9VUigpfSlgLFxuICAgICAgICBNSU5VVEU6IGAke21pbnV0ZURpZ2l0c30gKCR7dGhpcy5NSU5VVEUoKX0pYCxcbiAgICAgICAgU0VDT05EOiBgJHtzZWNvbmREaWdpdHN9ICgke3RoaXMuU0VDT05EKCl9KWAsXG4gICAgICAgIE1JTExJU0VDT05EOiBgJHttaWxsaXNlY29uZERpZ2l0c30gKCR7dGhpcy5NSUxMSVNFQ09ORCgpfSlgLFxuICAgICAgfTtcblxuICAgICAgbWFza1BhcnRzID0gc2VsZWN0ZWRVbml0cy5tYXAoKHVuaXQpID0+IHtcbiAgICAgICAgcmV0dXJuIHVuaXRQYXR0ZXJuc1t1bml0XTtcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBXaXRob3V0IGxhYmVscyAtIGp1c3QgbnVtYmVyc1xuICAgICAgY29uc3QgdW5pdFBhdHRlcm5zOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICAgICAgICBZRUFSOiB5ZWFyRGlnaXRzLFxuICAgICAgICBNT05USDogbW9udGhEaWdpdHMsXG4gICAgICAgIFdFRUs6IHdlZWtEaWdpdHMsXG4gICAgICAgIERBWTogZGF5RGlnaXRzLFxuICAgICAgICBIT1VSOiBob3VyRGlnaXRzLFxuICAgICAgICBNSU5VVEU6IG1pbnV0ZURpZ2l0cyxcbiAgICAgICAgU0VDT05EOiBzZWNvbmREaWdpdHMsXG4gICAgICAgIE1JTExJU0VDT05EOiBtaWxsaXNlY29uZERpZ2l0cyxcbiAgICAgIH07XG5cbiAgICAgIG1hc2tQYXJ0cyA9IHNlbGVjdGVkVW5pdHMubWFwKCh1bml0KSA9PiB7XG4gICAgICAgIHJldHVybiB1bml0UGF0dGVybnNbdW5pdF07XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBsZXQgcmVzdWx0OiBzdHJpbmc7XG5cbiAgICBpZiAodGhpcy5sYWJlbCgpKSB7XG4gICAgICBpZiAodGhpcy50cmFuc2xhdGlvblNlcnZpY2UuZ2V0QWN0aXZlTGFuZygpID09PSAnZmEtSVInKSB7XG4gICAgICAgIHJlc3VsdCA9IG1hc2tQYXJ0cy5yZXZlcnNlKCkuam9pbignIDogJyk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXN1bHQgPSBtYXNrUGFydHMuam9pbignIDogJyk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHJlc3VsdCA9IG1hc2tQYXJ0cy5qb2luKCc6Jyk7XG4gICAgfVxuXG4gICAgdGhpcy5tYXNrT3B0aW9ucy5zZXQoeyBtYXNrOiByZXN1bHQsIGVhZ2VyOiB0cnVlIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGZvY3VzSGFuZGxlcihlOiBBWEZvY3VzRXZlbnQpIHtcbiAgICB0aGlzLm9uRm9jdXMuZW1pdChlKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBibHVySGFuZGxlcihlOiBBWEZvY3VzRXZlbnQpIHtcbiAgICB0aGlzLm9uQmx1ci5lbWl0KGUpO1xuICB9XG5cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLm5hbWUnKVxuICBwcml2YXRlIGdldCBfX2hvc3ROYW1lKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMubmFtZTtcbiAgfVxufVxuIiwiPGF4LXRleHQtYm94XG4gIFtsb29rXT1cImxvb2tcIlxuICBbcGxhY2Vob2xkZXJdPVwibWFza09wdGlvbnMoKS5tYXNrXCJcbiAgW21hc2stb3B0aW9uc109XCJtYXNrT3B0aW9ucygpXCJcbiAgWyhuZ01vZGVsKV09XCJpbnB1dFZhbHVlXCJcbiAgKG5nTW9kZWxDaGFuZ2UpPVwib25JbnB1dCgkZXZlbnQpXCJcbiAgY2xhc3M9XCJheC10aW1lLWR1cmF0aW9uLXRleHRcIlxuICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICBbdGFiSW5kZXhdPVwidGFiSW5kZXhcIlxuICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxuICAob25Gb2N1cyk9XCJmb2N1c0hhbmRsZXIoJGV2ZW50KVwiXG4gIChvbkJsdXIpPVwiYmx1ckhhbmRsZXIoJGV2ZW50KVwiXG4+XG4gIDxuZy1jb250ZW50IHNlbGVjdD1cImF4LXZhbGlkYXRpb24tcnVsZVwiPiA8L25nLWNvbnRlbnQ+XG48L2F4LXRleHQtYm94PlxuIl19","import { NgModule } from '@angular/core';\nimport { AXTimeDurationComponent } from './time-duration.component';\nimport * as i0 from \"@angular/core\";\nconst COMPONENT = [AXTimeDurationComponent];\nconst MODULES = [];\nexport class AXTimeDurationModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AXTimeDurationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.4\", ngImport: i0, type: AXTimeDurationModule, imports: [AXTimeDurationComponent], exports: [AXTimeDurationComponent] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AXTimeDurationModule, imports: [MODULES, COMPONENT] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AXTimeDurationModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [...MODULES, ...COMPONENT],\n exports: [...COMPONENT],\n providers: [],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS1kdXJhdGlvbi5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL3RpbWUtZHVyYXRpb24vc3JjL2xpYi90aW1lLWR1cmF0aW9uLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDOztBQUVwRSxNQUFNLFNBQVMsR0FBRyxDQUFDLHVCQUF1QixDQUFDLENBQUM7QUFFNUMsTUFBTSxPQUFPLEdBQUcsRUFBRSxDQUFDO0FBT25CLE1BQU0sT0FBTyxvQkFBb0I7OEdBQXBCLG9CQUFvQjsrR0FBcEIsb0JBQW9CLFlBVGQsdUJBQXVCLGFBQXZCLHVCQUF1QjsrR0FTN0Isb0JBQW9CLFlBSmxCLE9BQU8sRUFBSyxTQUFTOzsyRkFJdkIsb0JBQW9CO2tCQUxoQyxRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLEdBQUcsT0FBTyxFQUFFLEdBQUcsU0FBUyxDQUFDO29CQUNuQyxPQUFPLEVBQUUsQ0FBQyxHQUFHLFNBQVMsQ0FBQztvQkFDdkIsU0FBUyxFQUFFLEVBQUU7aUJBQ2QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhUaW1lRHVyYXRpb25Db21wb25lbnQgfSBmcm9tICcuL3RpbWUtZHVyYXRpb24uY29tcG9uZW50JztcblxuY29uc3QgQ09NUE9ORU5UID0gW0FYVGltZUR1cmF0aW9uQ29tcG9uZW50XTtcblxuY29uc3QgTU9EVUxFUyA9IFtdO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbLi4uTU9EVUxFUywgLi4uQ09NUE9ORU5UXSxcbiAgZXhwb3J0czogWy4uLkNPTVBPTkVOVF0sXG4gIHByb3ZpZGVyczogW10sXG59KVxuZXhwb3J0IGNsYXNzIEFYVGltZUR1cmF0aW9uTW9kdWxlIHt9XG4iXX0=","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LWNvbXBvbmVudHMtdGltZS1kdXJhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvdGltZS1kdXJhdGlvbi9zcmMvYWNvcmV4LWNvbXBvbmVudHMtdGltZS1kdXJhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acorex-components-time-duration.mjs","sources":["../tmp-esm2022/time-duration/lib/time-duration.component.js","../tmp-esm2022/time-duration/lib/time-duration.module.js","../tmp-esm2022/time-duration/acorex-components-time-duration.js"],"sourcesContent":["import { AXComponent, AXFocusableComponent, AXValuableComponent, MXInputBaseValueComponent, MXLookComponent, } from '@acorex/cdk/common';\nimport { AXSelectBoxModule } from '@acorex/components/select-box';\nimport { AXTextBoxModule } from '@acorex/components/text-box';\nimport { AXTimeDurationFormatter } from '@acorex/core/date-time';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { afterNextRender, ChangeDetectionStrategy, Component, effect, forwardRef, HostBinding, inject, input, signal, ViewEncapsulation, } from '@angular/core';\nimport { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { IMask } from 'angular-imask';\nimport { classes } from 'polytype';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@acorex/components/text-box\";\nimport * as i2 from \"@angular/forms\";\nexport class AXTimeDurationComponent extends classes((MXInputBaseValueComponent), MXLookComponent) {\n constructor() {\n super(...arguments);\n this.valueStart = input('YEAR', ...(ngDevMode ? [{ debugName: \"valueStart\" }] : []));\n this.valueEnd = input('MILLISECOND', ...(ngDevMode ? [{ debugName: \"valueEnd\" }] : []));\n this.label = input(true, ...(ngDevMode ? [{ debugName: \"label\" }] : []));\n this.maskDigits = input('00:00:00:00:00:00:00:000', ...(ngDevMode ? [{ debugName: \"maskDigits\" }] : []));\n this.minValue = input(null, ...(ngDevMode ? [{ debugName: \"minValue\" }] : []));\n this.maxValue = input(null, ...(ngDevMode ? [{ debugName: \"maxValue\" }] : []));\n this.maskOptions = signal({\n mask: 'HH:MM:SS',\n blocks: {\n HH: { mask: IMask.MaskedRange, from: 0, to: 23 },\n MM: { mask: IMask.MaskedRange, from: 0, to: 59 },\n SS: { mask: IMask.MaskedRange, from: 0, to: 59 },\n },\n }, ...(ngDevMode ? [{ debugName: \"maskOptions\" }] : []));\n this.translationService = inject(AXTranslationService);\n this.timeDurationFormatter = inject(AXTimeDurationFormatter);\n this.onInputFire = false;\n this.onInternalValueChangedFire = false;\n this.YEAR = signal(null, ...(ngDevMode ? [{ debugName: \"YEAR\" }] : []));\n this.MONTH = signal(null, ...(ngDevMode ? [{ debugName: \"MONTH\" }] : []));\n this.WEEK = signal(null, ...(ngDevMode ? [{ debugName: \"WEEK\" }] : []));\n this.DAY = signal(null, ...(ngDevMode ? [{ debugName: \"DAY\" }] : []));\n this.HOUR = signal(null, ...(ngDevMode ? [{ debugName: \"HOUR\" }] : []));\n this.MINUTE = signal(null, ...(ngDevMode ? [{ debugName: \"MINUTE\" }] : []));\n this.SECOND = signal(null, ...(ngDevMode ? [{ debugName: \"SECOND\" }] : []));\n this.MILLISECOND = signal(null, ...(ngDevMode ? [{ debugName: \"MILLISECOND\" }] : []));\n this.isTranslationInit = signal(false, ...(ngDevMode ? [{ debugName: \"isTranslationInit\" }] : []));\n this.#init = afterNextRender(async () => {\n await this.initTranslation();\n });\n this.#effect = effect(() => {\n // Depend on label as well\n void this.label();\n if (this.valueStart() && this.valueEnd() && this.isTranslationInit()) {\n this.updateMask();\n }\n }, ...(ngDevMode ? [{ debugName: \"#effect\" }] : []));\n }\n #init;\n #effect;\n async initTranslation() {\n this.YEAR.set((await this.translationService.translateAsync('@acorex:dateTime.units.year')).toLocaleUpperCase());\n this.MONTH.set((await this.translationService.translateAsync('@acorex:dateTime.units.month')).toLocaleUpperCase());\n this.WEEK.set((await this.translationService.translateAsync('@acorex:dateTime.units.week')).toLocaleUpperCase());\n this.DAY.set((await this.translationService.translateAsync('@acorex:dateTime.units.day')).toLocaleUpperCase());\n this.HOUR.set((await this.translationService.translateAsync('@acorex:dateTime.units.hour')).toLocaleUpperCase());\n this.MINUTE.set((await this.translationService.translateAsync('@acorex:dateTime.units.minute')).toLocaleUpperCase());\n this.SECOND.set((await this.translationService.translateAsync('@acorex:dateTime.units.second')).toLocaleUpperCase());\n this.MILLISECOND.set((await this.translationService.translateAsync('@acorex:dateTime.units.millisecond')).toLocaleUpperCase());\n this.isTranslationInit.set(true);\n }\n async onInput(event) {\n if (this.onInternalValueChangedFire)\n return;\n this.onInputFire = true;\n const milliseconds = this.maskToMilliseconds(event);\n // Apply min/max validation\n const minValue = this.minValue();\n const maxValue = this.maxValue();\n let validatedMilliseconds = milliseconds;\n if (minValue !== null && milliseconds < minValue) {\n validatedMilliseconds = minValue;\n const normalizedMask = await this.timeDurationFormatter.millisecondsToMask(minValue, this.valueStart(), this.valueEnd(), true, this.maskDigits(), true);\n this.inputValue = normalizedMask;\n }\n if (maxValue !== null && milliseconds > maxValue) {\n validatedMilliseconds = maxValue;\n const normalizedMask = await this.timeDurationFormatter.millisecondsToMask(maxValue, this.valueStart(), this.valueEnd(), true, this.maskDigits(), true);\n this.inputValue = normalizedMask;\n }\n this.commitValue(validatedMilliseconds, true);\n this.onInputFire = false;\n }\n async internalValueChanged(value) {\n if (this.onInputFire)\n return;\n this.onInternalValueChangedFire = true;\n // Apply min/max validation for programmatically set values\n const minValue = this.minValue();\n const maxValue = this.maxValue();\n let validatedValue = value;\n if (minValue !== null && value < minValue) {\n validatedValue = minValue;\n }\n if (maxValue !== null && value > maxValue) {\n validatedValue = maxValue;\n }\n const normalizedMask = await this.timeDurationFormatter.millisecondsToMask(validatedValue, this.valueStart(), this.valueEnd(), this.label(), this.maskDigits(), true);\n this.inputValue = normalizedMask;\n setTimeout(() => {\n this.onInternalValueChangedFire = false;\n });\n }\n replacePersianLabels(input) {\n const replacements = {\n [this.YEAR()]: 'YEAR',\n [this.MONTH()]: 'MONTH',\n [this.WEEK()]: 'WEEK',\n [this.DAY()]: 'DAY',\n [this.HOUR()]: 'HOUR',\n [this.MINUTE()]: 'MINUTE',\n [this.SECOND()]: 'SECOND',\n [this.MILLISECOND()]: 'MILLISECOND',\n };\n return Object.entries(replacements).reduce((str, [fa, en]) => {\n return str.replace(`(${fa})`, `(${en})`);\n }, input);\n }\n maskToMilliseconds(maskValue) {\n const timeUnits = {\n YEAR: 365 * 24 * 60 * 60 * 1000,\n MONTH: 30 * 24 * 60 * 60 * 1000,\n WEEK: 7 * 24 * 60 * 60 * 1000,\n DAY: 24 * 60 * 60 * 1000,\n HOUR: 60 * 60 * 1000,\n MINUTE: 60 * 1000,\n SECOND: 1000,\n MILLISECOND: 1,\n };\n let totalMs = 0;\n if (this.label()) {\n // Parse labeled format: \"00 (YEAR) : 00 (MONTH) : 00 (DAY)\"\n const transformedMaskValue = this.replacePersianLabels(maskValue);\n const regex = /(\\d+)\\s*\\((YEAR|MONTH|WEEK|DAY|HOUR|MINUTE|SECOND|MILLISECOND)\\)/g;\n let match;\n while ((match = regex.exec(transformedMaskValue)) !== null) {\n const value = parseInt(match[1], 10);\n const unit = match[2];\n if (timeUnits[unit] !== undefined) {\n totalMs += value * timeUnits[unit];\n }\n }\n }\n else {\n // Parse unlabeled format: \"00:00:00\" (colon-separated numbers)\n const allUnits = ['YEAR', 'MONTH', 'WEEK', 'DAY', 'HOUR', 'MINUTE', 'SECOND', 'MILLISECOND'];\n const startIndex = allUnits.indexOf(this.valueStart());\n const endIndex = allUnits.indexOf(this.valueEnd());\n if (startIndex !== -1 && endIndex !== -1 && endIndex >= startIndex) {\n const selectedUnits = allUnits.slice(startIndex, endIndex + 1);\n const numbers = maskValue.split(':').map((num) => parseInt(num.trim(), 10));\n for (let i = 0; i < Math.min(numbers.length, selectedUnits.length); i++) {\n const value = numbers[i];\n const unit = selectedUnits[i];\n if (!isNaN(value) && timeUnits[unit] !== undefined) {\n totalMs += value * timeUnits[unit];\n }\n }\n }\n }\n return totalMs;\n }\n updateMask() {\n const allUnits = ['YEAR', 'MONTH', 'WEEK', 'DAY', 'HOUR', 'MINUTE', 'SECOND', 'MILLISECOND'];\n const startIndex = allUnits.indexOf(this.valueStart());\n const endIndex = allUnits.indexOf(this.valueEnd());\n if (startIndex === -1 || endIndex === -1 || endIndex < startIndex) {\n this.maskOptions.set({ mask: '', eager: true });\n return null;\n }\n const selectedUnits = allUnits.slice(startIndex, endIndex + 1);\n let maskParts;\n const yearDigits = this.maskDigits().split(':')[0];\n const monthDigits = this.maskDigits().split(':')[1];\n const weekDigits = this.maskDigits().split(':')[2];\n const dayDigits = this.maskDigits().split(':')[3];\n const hourDigits = this.maskDigits().split(':')[4];\n const minuteDigits = this.maskDigits().split(':')[5];\n const secondDigits = this.maskDigits().split(':')[6];\n const millisecondDigits = this.maskDigits().split(':')[7];\n if (this.label()) {\n // With labels\n const unitPatterns = {\n YEAR: `${yearDigits} (${this.YEAR()})`,\n MONTH: `${monthDigits} (${this.MONTH()})`,\n WEEK: `${weekDigits} (${this.WEEK()})`,\n DAY: `${dayDigits} (${this.DAY()})`,\n HOUR: `${hourDigits} (${this.HOUR()})`,\n MINUTE: `${minuteDigits} (${this.MINUTE()})`,\n SECOND: `${secondDigits} (${this.SECOND()})`,\n MILLISECOND: `${millisecondDigits} (${this.MILLISECOND()})`,\n };\n maskParts = selectedUnits.map((unit) => {\n return unitPatterns[unit];\n });\n }\n else {\n // Without labels - just numbers\n const unitPatterns = {\n YEAR: yearDigits,\n MONTH: monthDigits,\n WEEK: weekDigits,\n DAY: dayDigits,\n HOUR: hourDigits,\n MINUTE: minuteDigits,\n SECOND: secondDigits,\n MILLISECOND: millisecondDigits,\n };\n maskParts = selectedUnits.map((unit) => {\n return unitPatterns[unit];\n });\n }\n let result;\n if (this.label()) {\n if (this.translationService.getActiveLang() === 'fa-IR') {\n result = maskParts.reverse().join(' : ');\n }\n else {\n result = maskParts.join(' : ');\n }\n }\n else {\n result = maskParts.join(':');\n }\n this.maskOptions.set({ mask: result, eager: true });\n }\n focusHandler(e) {\n this.onFocus.emit(e);\n }\n blurHandler(e) {\n this.onBlur.emit(e);\n }\n get __hostName() {\n return this.name;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AXTimeDurationComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.1.0\", version: \"20.3.4\", type: AXTimeDurationComponent, isStandalone: true, selector: \"ax-time-duration\", inputs: { disabled: { classPropertyName: \"disabled\", publicName: \"disabled\", isSignal: false, isRequired: false, transformFunction: null }, tabIndex: { classPropertyName: \"tabIndex\", publicName: \"tabIndex\", isSignal: false, isRequired: false, transformFunction: null }, readonly: { classPropertyName: \"readonly\", publicName: \"readonly\", isSignal: false, isRequired: false, transformFunction: null }, look: { classPropertyName: \"look\", publicName: \"look\", isSignal: false, isRequired: false, transformFunction: null }, valueStart: { classPropertyName: \"valueStart\", publicName: \"valueStart\", isSignal: true, isRequired: false, transformFunction: null }, valueEnd: { classPropertyName: \"valueEnd\", publicName: \"valueEnd\", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: \"label\", publicName: \"label\", isSignal: true, isRequired: false, transformFunction: null }, maskDigits: { classPropertyName: \"maskDigits\", publicName: \"maskDigits\", isSignal: true, 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 } }, outputs: { onValueChanged: \"onValueChanged\" }, host: { properties: { \"attr.name\": \"this.__hostName\" } }, providers: [\n { provide: AXComponent, useExisting: AXTimeDurationComponent },\n { provide: AXFocusableComponent, useExisting: AXTimeDurationComponent },\n { provide: AXValuableComponent, useExisting: AXTimeDurationComponent },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXTimeDurationComponent),\n multi: true,\n },\n ], usesInheritance: true, ngImport: i0, template: \"<ax-text-box\\n [look]=\\\"look\\\"\\n [placeholder]=\\\"maskOptions().mask\\\"\\n [mask-options]=\\\"maskOptions()\\\"\\n [ngModel]=\\\"inputValue\\\"\\n (ngModelChange)=\\\"onInput($event)\\\"\\n class=\\\"ax-time-duration-text\\\"\\n [disabled]=\\\"disabled\\\"\\n [tabIndex]=\\\"tabIndex\\\"\\n [readonly]=\\\"readonly\\\"\\n (onFocus)=\\\"focusHandler($event)\\\"\\n (onBlur)=\\\"blurHandler($event)\\\"\\n>\\n <ng-content select=\\\"ax-validation-rule\\\"> </ng-content>\\n</ax-text-box>\\n\", dependencies: [{ kind: \"ngmodule\", type: AXTextBoxModule }, { kind: \"component\", type: i1.AXTextBoxComponent, selector: \"ax-text-box\", inputs: [\"disabled\", \"tabIndex\", \"readonly\", \"value\", \"state\", \"name\", \"id\", \"placeholder\", \"maxLength\", \"allowNull\", \"type\", \"autoComplete\", \"look\", \"mask-options\", \"class\"], outputs: [\"onBlur\", \"onFocus\", \"valueChange\", \"stateChange\", \"onValueChanged\", \"readonlyChange\", \"disabledChange\", \"onKeyDown\", \"onKeyUp\", \"onKeyPress\"] }, { kind: \"ngmodule\", type: FormsModule }, { kind: \"directive\", type: i2.NgControlStatus, selector: \"[formControlName],[ngModel],[formControl]\" }, { kind: \"directive\", type: i2.NgModel, selector: \"[ngModel]:not([formControlName]):not([formControl])\", inputs: [\"name\", \"disabled\", \"ngModel\", \"ngModelOptions\"], outputs: [\"ngModelChange\"], exportAs: [\"ngModel\"] }, { kind: \"ngmodule\", type: AXSelectBoxModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AXTimeDurationComponent, decorators: [{\n type: Component,\n args: [{ selector: 'ax-time-duration', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [AXTextBoxModule, FormsModule, AXSelectBoxModule], inputs: ['disabled', 'tabIndex', 'readonly', 'look'], outputs: ['onValueChanged'], providers: [\n { provide: AXComponent, useExisting: AXTimeDurationComponent },\n { provide: AXFocusableComponent, useExisting: AXTimeDurationComponent },\n { provide: AXValuableComponent, useExisting: AXTimeDurationComponent },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXTimeDurationComponent),\n multi: true,\n },\n ], template: \"<ax-text-box\\n [look]=\\\"look\\\"\\n [placeholder]=\\\"maskOptions().mask\\\"\\n [mask-options]=\\\"maskOptions()\\\"\\n [ngModel]=\\\"inputValue\\\"\\n (ngModelChange)=\\\"onInput($event)\\\"\\n class=\\\"ax-time-duration-text\\\"\\n [disabled]=\\\"disabled\\\"\\n [tabIndex]=\\\"tabIndex\\\"\\n [readonly]=\\\"readonly\\\"\\n (onFocus)=\\\"focusHandler($event)\\\"\\n (onBlur)=\\\"blurHandler($event)\\\"\\n>\\n <ng-content select=\\\"ax-validation-rule\\\"> </ng-content>\\n</ax-text-box>\\n\" }]\n }], propDecorators: { __hostName: [{\n type: HostBinding,\n args: ['attr.name']\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS1kdXJhdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL3RpbWUtZHVyYXRpb24vc3JjL2xpYi90aW1lLWR1cmF0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvdGltZS1kdXJhdGlvbi9zcmMvbGliL3RpbWUtZHVyYXRpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFdBQVcsRUFDWCxvQkFBb0IsRUFFcEIsbUJBQW1CLEVBQ25CLHlCQUF5QixFQUN6QixlQUFlLEdBQ2hCLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFpQixlQUFlLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM3RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNoRSxPQUFPLEVBQ0wsZUFBZSxFQUNmLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsTUFBTSxFQUNOLFVBQVUsRUFDVixXQUFXLEVBQ1gsTUFBTSxFQUNOLEtBQUssRUFDTCxNQUFNLEVBQ04saUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxXQUFXLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxVQUFVLENBQUM7Ozs7QUFzQm5DLE1BQU0sT0FBTyx1QkFBd0IsU0FBUSxPQUFPLENBQUMsQ0FBQSx5QkFBaUMsQ0FBQSxFQUFFLGVBQWUsQ0FBQztJ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cG9uZW50LFxuICBBWEZvY3VzYWJsZUNvbXBvbmVudCxcbiAgQVhGb2N1c0V2ZW50LFxuICBBWFZhbHVhYmxlQ29tcG9uZW50LFxuICBNWElucHV0QmFzZVZhbHVlQ29tcG9uZW50LFxuICBNWExvb2tDb21wb25lbnQsXG59IGZyb20gJ0BhY29yZXgvY2RrL2NvbW1vbic7XG5pbXBvcnQgeyBBWFNlbGVjdEJveE1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9zZWxlY3QtYm94JztcbmltcG9ydCB7IEFYTWFza09wdGlvbnMsIEFYVGV4dEJveE1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy90ZXh0LWJveCc7XG5pbXBvcnQgeyBBWFRpbWVEdXJhdGlvbkZvcm1hdHRlciB9IGZyb20gJ0BhY29yZXgvY29yZS9kYXRlLXRpbWUnO1xuaW1wb3J0IHsgQVhUcmFuc2xhdGlvblNlcnZpY2UgfSBmcm9tICdAYWNvcmV4L2NvcmUvdHJhbnNsYXRpb24nO1xuaW1wb3J0IHtcbiAgYWZ0ZXJOZXh0UmVuZGVyLFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBlZmZlY3QsXG4gIGZvcndhcmRSZWYsXG4gIEhvc3RCaW5kaW5nLFxuICBpbmplY3QsXG4gIGlucHV0LFxuICBzaWduYWwsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IElNYXNrIH0gZnJvbSAnYW5ndWxhci1pbWFzayc7XG5pbXBvcnQgeyBjbGFzc2VzIH0gZnJvbSAncG9seXR5cGUnO1xuaW1wb3J0IHsgQVhUaW1lRHVyYXRpb25Vbml0IH0gZnJvbSAnLi90aW1lLWR1cmF0aW9uLnR5cGUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdheC10aW1lLWR1cmF0aW9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RpbWUtZHVyYXRpb24uY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgaW1wb3J0czogW0FYVGV4dEJveE1vZHVsZSwgRm9ybXNNb2R1bGUsIEFYU2VsZWN0Qm94TW9kdWxlXSxcbiAgaW5wdXRzOiBbJ2Rpc2FibGVkJywgJ3RhYkluZGV4JywgJ3JlYWRvbmx5JywgJ2xvb2snXSxcbiAgb3V0cHV0czogWydvblZhbHVlQ2hhbmdlZCddLFxuICBwcm92aWRlcnM6IFtcbiAgICB7IHByb3ZpZGU6IEFYQ29tcG9uZW50LCB1c2VFeGlzdGluZzogQVhUaW1lRHVyYXRpb25Db21wb25lbnQgfSxcbiAgICB7IHByb3ZpZGU6IEFYRm9jdXNhYmxlQ29tcG9uZW50LCB1c2VFeGlzdGluZzogQVhUaW1lRHVyYXRpb25Db21wb25lbnQgfSxcbiAgICB7IHByb3ZpZGU6IEFYVmFsdWFibGVDb21wb25lbnQsIHVzZUV4aXN0aW5nOiBBWFRpbWVEdXJhdGlvbkNvbXBvbmVudCB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQVhUaW1lRHVyYXRpb25Db21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhUaW1lRHVyYXRpb25Db21wb25lbnQgZXh0ZW5kcyBjbGFzc2VzKE1YSW5wdXRCYXNlVmFsdWVDb21wb25lbnQ8bnVtYmVyPiwgTVhMb29rQ29tcG9uZW50KSB7XG4gIHByb3RlY3RlZCBpbnB1dFZhbHVlOiBzdHJpbmc7XG4gIHJlYWRvbmx5IHZhbHVlU3RhcnQgPSBpbnB1dDxBWFRpbWVEdXJhdGlvblVuaXQ+KCdZRUFSJyk7XG4gIHJlYWRvbmx5IHZhbHVlRW5kID0gaW5wdXQ8QVhUaW1lRHVyYXRpb25Vbml0PignTUlMTElTRUNPTkQnKTtcbiAgcmVhZG9ubHkgbGFiZWwgPSBpbnB1dDxib29sZWFuPih0cnVlKTtcbiAgcmVhZG9ubHkgbWFza0RpZ2l0cyA9IGlucHV0KCcwMDowMDowMDowMDowMDowMDowMDowMDAnKTtcbiAgcmVhZG9ubHkgbWluVmFsdWUgPSBpbnB1dDxudW1iZXI+KG51bGwpO1xuICByZWFkb25seSBtYXhWYWx1ZSA9IGlucHV0PG51bWJlcj4obnVsbCk7XG5cbiAgcHJvdGVjdGVkIG1hc2tPcHRpb25zID0gc2lnbmFsPEFYTWFza09wdGlvbnM+KHtcbiAgICBtYXNrOiAnSEg6TU06U1MnLFxuICAgIGJsb2Nrczoge1xuICAgICAgSEg6IHsgbWFzazogSU1hc2suTWFza2VkUmFuZ2UsIGZyb206IDAsIHRvOiAyMyB9LFxuICAgICAgTU06IHsgbWFzazogSU1hc2suTWFza2VkUmFuZ2UsIGZyb206IDAsIHRvOiA1OSB9LFxuICAgICAgU1M6IHsgbWFzazogSU1hc2suTWFza2VkUmFuZ2UsIGZyb206IDAsIHRvOiA1OSB9LFxuICAgIH0sXG4gIH0pO1xuXG4gIHByaXZhdGUgdHJhbnNsYXRpb25TZXJ2aWNlOiBBWFRyYW5zbGF0aW9uU2VydmljZSA9IGluamVjdChBWFRyYW5zbGF0aW9uU2VydmljZSk7XG4gIHByaXZhdGUgdGltZUR1cmF0aW9uRm9ybWF0dGVyOiBBWFRpbWVEdXJhdGlvbkZvcm1hdHRlciA9IGluamVjdChBWFRpbWVEdXJhdGlvbkZvcm1hdHRlcik7XG5cbiAgcHJpdmF0ZSBvbklucHV0RmlyZSA9IGZhbHNlO1xuICBwcml2YXRlIG9uSW50ZXJuYWxWYWx1ZUNoYW5nZWRGaXJlID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSBZRUFSID0gc2lnbmFsKG51bGwpO1xuICBwcml2YXRlIE1PTlRIID0gc2lnbmFsKG51bGwpO1xuICBwcml2YXRlIFdFRUsgPSBzaWduYWwobnVsbCk7XG4gIHByaXZhdGUgREFZID0gc2lnbmFsKG51bGwpO1xuICBwcml2YXRlIEhPVVIgPSBzaWduYWwobnVsbCk7XG4gIHByaXZhdGUgTUlOVVRFID0gc2lnbmFsKG51bGwpO1xuICBwcml2YXRlIFNFQ09ORCA9IHNpZ25hbChudWxsKTtcbiAgcHJpdmF0ZSBNSUxMSVNFQ09ORCA9IHNpZ25hbChudWxsKTtcbiAgcHJpdmF0ZSBpc1RyYW5zbGF0aW9uSW5pdCA9IHNpZ25hbChmYWxzZSk7XG5cbiAgI2luaXQgPSBhZnRlck5leHRSZW5kZXIoYXN5bmMgKCkgPT4ge1xuICAgIGF3YWl0IHRoaXMuaW5pdFRyYW5zbGF0aW9uKCk7XG4gIH0pO1xuXG4gICNlZmZlY3QgPSBlZmZlY3QoKCkgPT4ge1xuICAgIC8vIERlcGVuZCBvbiBsYWJlbCBhcyB3ZWxsXG4gICAgdm9pZCB0aGlzLmxhYmVsKCk7XG4gICAgaWYgKHRoaXMudmFsdWVTdGFydCgpICYmIHRoaXMudmFsdWVFbmQoKSAmJiB0aGlzLmlzVHJhbnNsYXRpb25Jbml0KCkpIHtcbiAgICAgIHRoaXMudXBkYXRlTWFzaygpO1xuICAgIH1cbiAgfSk7XG5cbiAgYXN5bmMgaW5pdFRyYW5zbGF0aW9uKCkge1xuICAgIHRoaXMuWUVBUi5zZXQoKGF3YWl0IHRoaXMudHJhbnNsYXRpb25TZXJ2aWNlLnRyYW5zbGF0ZUFzeW5jKCdAYWNvcmV4OmRhdGVUaW1lLnVuaXRzLnllYXInKSkudG9Mb2NhbGVVcHBlckNhc2UoKSk7XG4gICAgdGhpcy5NT05USC5zZXQoKGF3YWl0IHRoaXMudHJhbnNsYXRpb25TZXJ2aWNlLnRyYW5zbGF0ZUFzeW5jKCdAYWNvcmV4OmRhdGVUaW1lLnVuaXRzLm1vbnRoJykpLnRvTG9jYWxlVXBwZXJDYXNlKCkpO1xuICAgIHRoaXMuV0VFSy5zZXQoKGF3YWl0IHRoaXMudHJhbnNsYXRpb25TZXJ2aWNlLnRyYW5zbGF0ZUFzeW5jKCdAYWNvcmV4OmRhdGVUaW1lLnVuaXRzLndlZWsnKSkudG9Mb2NhbGVVcHBlckNhc2UoKSk7XG4gICAgdGhpcy5EQVkuc2V0KChhd2FpdCB0aGlzLnRyYW5zbGF0aW9uU2VydmljZS50cmFuc2xhdGVBc3luYygnQGFjb3JleDpkYXRlVGltZS51bml0cy5kYXknKSkudG9Mb2NhbGVVcHBlckNhc2UoKSk7XG4gICAgdGhpcy5IT1VSLnNldCgoYXdhaXQgdGhpcy50cmFuc2xhdGlvblNlcnZpY2UudHJhbnNsYXRlQXN5bmMoJ0BhY29yZXg6ZGF0ZVRpbWUudW5pdHMuaG91cicpKS50b0xvY2FsZVVwcGVyQ2FzZSgpKTtcbiAgICB0aGlzLk1JTlVURS5zZXQoXG4gICAgICAoYXdhaXQgdGhpcy50cmFuc2xhdGlvblNlcnZpY2UudHJhbnNsYXRlQXN5bmMoJ0BhY29yZXg6ZGF0ZVRpbWUudW5pdHMubWludXRlJykpLnRvTG9jYWxlVXBwZXJDYXNlKCksXG4gICAgKTtcbiAgICB0aGlzLlNFQ09ORC5zZXQoXG4gICAgICAoYXdhaXQgdGhpcy50cmFuc2xhdGlvblNlcnZpY2UudHJhbnNsYXRlQXN5bmMoJ0BhY29yZXg6ZGF0ZVRpbWUudW5pdHMuc2Vjb25kJykpLnRvTG9jYWxlVXBwZXJDYXNlKCksXG4gICAgKTtcbiAgICB0aGlzLk1JTExJU0VDT05ELnNldChcbiAgICAgIChhd2FpdCB0aGlzLnRyYW5zbGF0aW9uU2VydmljZS50cmFuc2xhdGVBc3luYygnQGFjb3JleDpkYXRlVGltZS51bml0cy5taWxsaXNlY29uZCcpKS50b0xvY2FsZVVwcGVyQ2FzZSgpLFxuICAgICk7XG4gICAgdGhpcy5pc1RyYW5zbGF0aW9uSW5pdC5zZXQodHJ1ZSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgYXN5bmMgb25JbnB1dChldmVudDogYW55KSB7XG4gICAgaWYgKHRoaXMub25JbnRlcm5hbFZhbHVlQ2hhbmdlZEZpcmUpIHJldHVybjtcbiAgICB0aGlzLm9uSW5wdXRGaXJlID0gdHJ1ZTtcblxuICAgIGNvbnN0IG1pbGxpc2Vjb25kcyA9IHRoaXMubWFza1RvTWlsbGlzZWNvbmRzKGV2ZW50KTtcblxuICAgIC8vIEFwcGx5IG1pbi9tYXggdmFsaWRhdGlvblxuICAgIGNvbnN0IG1pblZhbHVlID0gdGhpcy5taW5WYWx1ZSgpO1xuICAgIGNvbnN0IG1heFZhbHVlID0gdGhpcy5tYXhWYWx1ZSgpO1xuICAgIGxldCB2YWxpZGF0ZWRNaWxsaXNlY29uZHMgPSBtaWxsaXNlY29uZHM7XG5cbiAgICBpZiAobWluVmFsdWUgIT09IG51bGwgJiYgbWlsbGlzZWNvbmRzIDwgbWluVmFsdWUpIHtcbiAgICAgIHZhbGlkYXRlZE1pbGxpc2Vjb25kcyA9IG1pblZhbHVlO1xuICAgICAgY29uc3Qgbm9ybWFsaXplZE1hc2sgPSBhd2FpdCB0aGlzLnRpbWVEdXJhdGlvbkZvcm1hdHRlci5taWxsaXNlY29uZHNUb01hc2soXG4gICAgICAgIG1pblZhbHVlLFxuICAgICAgICB0aGlzLnZhbHVlU3RhcnQoKSxcbiAgICAgICAgdGhpcy52YWx1ZUVuZCgpLFxuICAgICAgICB0cnVlLFxuICAgICAgICB0aGlzLm1hc2tEaWdpdHMoKSxcbiAgICAgICAgdHJ1ZSxcbiAgICAgICk7XG4gICAgICB0aGlzLmlucHV0VmFsdWUgPSBub3JtYWxpemVkTWFzaztcbiAgICB9XG5cbiAgICBpZiAobWF4VmFsdWUgIT09IG51bGwgJiYgbWlsbGlzZWNvbmRzID4gbWF4VmFsdWUpIHtcbiAgICAgIHZhbGlkYXRlZE1pbGxpc2Vjb25kcyA9IG1heFZhbHVlO1xuICAgICAgY29uc3Qgbm9ybWFsaXplZE1hc2sgPSBhd2FpdCB0aGlzLnRpbWVEdXJhdGlvbkZvcm1hdHRlci5taWxsaXNlY29uZHNUb01hc2soXG4gICAgICAgIG1heFZhbHVlLFxuICAgICAgICB0aGlzLnZhbHVlU3RhcnQoKSxcbiAgICAgICAgdGhpcy52YWx1ZUVuZCgpLFxuICAgICAgICB0cnVlLFxuICAgICAgICB0aGlzLm1hc2tEaWdpdHMoKSxcbiAgICAgICAgdHJ1ZSxcbiAgICAgICk7XG4gICAgICB0aGlzLmlucHV0VmFsdWUgPSBub3JtYWxpemVkTWFzaztcbiAgICB9XG5cbiAgICB0aGlzLmNvbW1pdFZhbHVlKHZhbGlkYXRlZE1pbGxpc2Vjb25kcywgdHJ1ZSk7XG4gICAgdGhpcy5vbklucHV0RmlyZSA9IGZhbHNlO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGFzeW5jIGludGVybmFsVmFsdWVDaGFuZ2VkKHZhbHVlOiBudW1iZXIpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAodGhpcy5vbklucHV0RmlyZSkgcmV0dXJuO1xuICAgIHRoaXMub25JbnRlcm5hbFZhbHVlQ2hhbmdlZEZpcmUgPSB0cnVlO1xuXG4gICAgLy8gQXBwbHkgbWluL21heCB2YWxpZGF0aW9uIGZvciBwcm9ncmFtbWF0aWNhbGx5IHNldCB2YWx1ZXNcbiAgICBjb25zdCBtaW5WYWx1ZSA9IHRoaXMubWluVmFsdWUoKTtcbiAgICBjb25zdCBtYXhWYWx1ZSA9IHRoaXMubWF4VmFsdWUoKTtcbiAgICBsZXQgdmFsaWRhdGVkVmFsdWUgPSB2YWx1ZTtcblxuICAgIGlmIChtaW5WYWx1ZSAhPT0gbnVsbCAmJiB2YWx1ZSA8IG1pblZhbHVlKSB7XG4gICAgICB2YWxpZGF0ZWRWYWx1ZSA9IG1pblZhbHVlO1xuICAgIH1cblxuICAgIGlmIChtYXhWYWx1ZSAhPT0gbnVsbCAmJiB2YWx1ZSA+IG1heFZhbHVlKSB7XG4gICAgICB2YWxpZGF0ZWRWYWx1ZSA9IG1heFZhbHVlO1xuICAgIH1cblxuICAgIGNvbnN0IG5vcm1hbGl6ZWRNYXNrID0gYXdhaXQgdGhpcy50aW1lRHVyYXRpb25Gb3JtYXR0ZXIubWlsbGlzZWNvbmRzVG9NYXNrKFxuICAgICAgdmFsaWRhdGVkVmFsdWUsXG4gICAgICB0aGlzLnZhbHVlU3RhcnQoKSxcbiAgICAgIHRoaXMudmFsdWVFbmQoKSxcbiAgICAgIHRoaXMubGFiZWwoKSxcbiAgICAgIHRoaXMubWFza0RpZ2l0cygpLFxuICAgICAgdHJ1ZSxcbiAgICApO1xuXG4gICAgdGhpcy5pbnB1dFZhbHVlID0gbm9ybWFsaXplZE1hc2s7XG5cbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMub25JbnRlcm5hbFZhbHVlQ2hhbmdlZEZpcmUgPSBmYWxzZTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgcmVwbGFjZVBlcnNpYW5MYWJlbHMoaW5wdXQ6IHN0cmluZykge1xuICAgIGNvbnN0IHJlcGxhY2VtZW50cyA9IHtcbiAgICAgIFt0aGlzLllFQVIoKV06ICdZRUFSJyxcbiAgICAgIFt0aGlzLk1PTlRIKCldOiAnTU9OVEgnLFxuICAgICAgW3RoaXMuV0VFSygpXTogJ1dFRUsnLFxuICAgICAgW3RoaXMuREFZKCldOiAnREFZJyxcbiAgICAgIFt0aGlzLkhPVVIoKV06ICdIT1VSJyxcbiAgICAgIFt0aGlzLk1JTlVURSgpXTogJ01JTlVURScsXG4gICAgICBbdGhpcy5TRUNPTkQoKV06ICdTRUNPTkQnLFxuICAgICAgW3RoaXMuTUlMTElTRUNPTkQoKV06ICdNSUxMSVNFQ09ORCcsXG4gICAgfTtcblxuICAgIHJldHVybiBPYmplY3QuZW50cmllcyhyZXBsYWNlbWVudHMpLnJlZHVjZSgoc3RyLCBbZmEsIGVuXSkgPT4ge1xuICAgICAgcmV0dXJuIHN0ci5yZXBsYWNlKGAoJHtmYX0pYCwgYCgke2VufSlgKTtcbiAgICB9LCBpbnB1dCk7XG4gIH1cblxuICBwcml2YXRlIG1hc2tUb01pbGxpc2Vjb25kcyhtYXNrVmFsdWU6IHN0cmluZyk6IG51bWJlciB7XG4gICAgY29uc3QgdGltZVVuaXRzID0ge1xuICAgICAgWUVBUjogMzY1ICogMjQgKiA2MCAqIDYwICogMTAwMCxcbiAgICAgIE1PTlRIOiAzMCAqIDI0ICogNjAgKiA2MCAqIDEwMDAsXG4gICAgICBXRUVLOiA3ICogMjQgKiA2MCAqIDYwICogMTAwMCxcbiAgICAgIERBWTogMjQgKiA2MCAqIDYwICogMTAwMCxcbiAgICAgIEhPVVI6IDYwICogNjAgKiAxMDAwLFxuICAgICAgTUlOVVRFOiA2MCAqIDEwMDAsXG4gICAgICBTRUNPTkQ6IDEwMDAsXG4gICAgICBNSUxMSVNFQ09ORDogMSxcbiAgICB9O1xuXG4gICAgbGV0IHRvdGFsTXMgPSAwO1xuXG4gICAgaWYgKHRoaXMubGFiZWwoKSkge1xuICAgICAgLy8gUGFyc2UgbGFiZWxlZCBmb3JtYXQ6IFwiMDAgKFlFQVIpIDogMDAgKE1PTlRIKSA6IDAwIChEQVkpXCJcbiAgICAgIGNvbnN0IHRyYW5zZm9ybWVkTWFza1ZhbHVlID0gdGhpcy5yZXBsYWNlUGVyc2lhbkxhYmVscyhtYXNrVmFsdWUpO1xuICAgICAgY29uc3QgcmVnZXggPSAvKFxcZCspXFxzKlxcKChZRUFSfE1PTlRIfFdFRUt8REFZfEhPVVJ8TUlOVVRFfFNFQ09ORHxNSUxMSVNFQ09ORClcXCkvZztcbiAgICAgIGxldCBtYXRjaDtcblxuICAgICAgd2hpbGUgKChtYXRjaCA9IHJlZ2V4LmV4ZWModHJhbnNmb3JtZWRNYXNrVmFsdWUpKSAhPT0gbnVsbCkge1xuICAgICAgICBjb25zdCB2YWx1ZSA9IHBhcnNlSW50KG1hdGNoWzFdLCAxMCk7XG4gICAgICAgIGNvbnN0IHVuaXQgPSBtYXRjaFsyXTtcbiAgICAgICAgaWYgKHRpbWVVbml0c1t1bml0XSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgdG90YWxNcyArPSB2YWx1ZSAqIHRpbWVVbml0c1t1bml0XTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICAvLyBQYXJzZSB1bmxhYmVsZWQgZm9ybWF0OiBcIjAwOjAwOjAwXCIgKGNvbG9uLXNlcGFyYXRlZCBudW1iZXJzKVxuICAgICAgY29uc3QgYWxsVW5pdHMgPSBbJ1lFQVInLCAnTU9OVEgnLCAnV0VFSycsICdEQVknLCAnSE9VUicsICdNSU5VVEUnLCAnU0VDT05EJywgJ01JTExJU0VDT05EJ107XG4gICAgICBjb25zdCBzdGFydEluZGV4ID0gYWxsVW5pdHMuaW5kZXhPZih0aGlzLnZhbHVlU3RhcnQoKSk7XG4gICAgICBjb25zdCBlbmRJbmRleCA9IGFsbFVuaXRzLmluZGV4T2YodGhpcy52YWx1ZUVuZCgpKTtcblxuICAgICAgaWYgKHN0YXJ0SW5kZXggIT09IC0xICYmIGVuZEluZGV4ICE9PSAtMSAmJiBlbmRJbmRleCA+PSBzdGFydEluZGV4KSB7XG4gICAgICAgIGNvbnN0IHNlbGVjdGVkVW5pdHMgPSBhbGxVbml0cy5zbGljZShzdGFydEluZGV4LCBlbmRJbmRleCArIDEpO1xuICAgICAgICBjb25zdCBudW1iZXJzID0gbWFza1ZhbHVlLnNwbGl0KCc6JykubWFwKChudW0pID0+IHBhcnNlSW50KG51bS50cmltKCksIDEwKSk7XG5cbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBNYXRoLm1pbihudW1iZXJzLmxlbmd0aCwgc2VsZWN0ZWRVbml0cy5sZW5ndGgpOyBpKyspIHtcbiAgICAgICAgICBjb25zdCB2YWx1ZSA9IG51bWJlcnNbaV07XG4gICAgICAgICAgY29uc3QgdW5pdCA9IHNlbGVjdGVkVW5pdHNbaV07XG4gICAgICAgICAgaWYgKCFpc05hTih2YWx1ZSkgJiYgdGltZVVuaXRzW3VuaXRdICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHRvdGFsTXMgKz0gdmFsdWUgKiB0aW1lVW5pdHNbdW5pdF07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHRvdGFsTXM7XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZU1hc2soKSB7XG4gICAgY29uc3QgYWxsVW5pdHMgPSBbJ1lFQVInLCAnTU9OVEgnLCAnV0VFSycsICdEQVknLCAnSE9VUicsICdNSU5VVEUnLCAnU0VDT05EJywgJ01JTExJU0VDT05EJ107XG4gICAgY29uc3Qgc3RhcnRJbmRleCA9IGFsbFVuaXRzLmluZGV4T2YodGhpcy52YWx1ZVN0YXJ0KCkpO1xuICAgIGNvbnN0IGVuZEluZGV4ID0gYWxsVW5pdHMuaW5kZXhPZih0aGlzLnZhbHVlRW5kKCkpO1xuXG4gICAgaWYgKHN0YXJ0SW5kZXggPT09IC0xIHx8IGVuZEluZGV4ID09PSAtMSB8fCBlbmRJbmRleCA8IHN0YXJ0SW5kZXgpIHtcbiAgICAgIHRoaXMubWFza09wdGlvbnMuc2V0KHsgbWFzazogJycsIGVhZ2VyOiB0cnVlIH0pO1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgY29uc3Qgc2VsZWN0ZWRVbml0cyA9IGFsbFVuaXRzLnNsaWNlKHN0YXJ0SW5kZXgsIGVuZEluZGV4ICsgMSk7XG5cbiAgICBsZXQgbWFza1BhcnRzOiBzdHJpbmdbXTtcblxuICAgIGNvbnN0IHllYXJEaWdpdHMgPSB0aGlzLm1hc2tEaWdpdHMoKS5zcGxpdCgnOicpWzBdO1xuICAgIGNvbnN0IG1vbnRoRGlnaXRzID0gdGhpcy5tYXNrRGlnaXRzKCkuc3BsaXQoJzonKVsxXTtcbiAgICBjb25zdCB3ZWVrRGlnaXRzID0gdGhpcy5tYXNrRGlnaXRzKCkuc3BsaXQoJzonKVsyXTtcbiAgICBjb25zdCBkYXlEaWdpdHMgPSB0aGlzLm1hc2tEaWdpdHMoKS5zcGxpdCgnOicpWzNdO1xuICAgIGNvbnN0IGhvdXJEaWdpdHMgPSB0aGlzLm1hc2tEaWdpdHMoKS5zcGxpdCgnOicpWzRdO1xuICAgIGNvbnN0IG1pbnV0ZURpZ2l0cyA9IHRoaXMubWFza0RpZ2l0cygpLnNwbGl0KCc6JylbNV07XG4gICAgY29uc3Qgc2Vjb25kRGlnaXRzID0gdGhpcy5tYXNrRGlnaXRzKCkuc3BsaXQoJzonKVs2XTtcbiAgICBjb25zdCBtaWxsaXNlY29uZERpZ2l0cyA9IHRoaXMubWFza0RpZ2l0cygpLnNwbGl0KCc6JylbN107XG5cbiAgICBpZiAodGhpcy5sYWJlbCgpKSB7XG4gICAgICAvLyBXaXRoIGxhYmVsc1xuICAgICAgY29uc3QgdW5pdFBhdHRlcm5zOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICAgICAgICBZRUFSOiBgJHt5ZWFyRGlnaXRzfSAoJHt0aGlzLllFQVIoKX0pYCxcbiAgICAgICAgTU9OVEg6IGAke21vbnRoRGlnaXRzfSAoJHt0aGlzLk1PTlRIKCl9KWAsXG4gICAgICAgIFdFRUs6IGAke3dlZWtEaWdpdHN9ICgke3RoaXMuV0VFSygpfSlgLFxuICAgICAgICBEQVk6IGAke2RheURpZ2l0c30gKCR7dGhpcy5EQVkoKX0pYCxcbiAgICAgICAgSE9VUjogYCR7aG91ckRpZ2l0c30gKCR7dGhpcy5IT1VSKCl9KWAsXG4gICAgICAgIE1JTlVURTogYCR7bWludXRlRGlnaXRzfSAoJHt0aGlzLk1JTlVURSgpfSlgLFxuICAgICAgICBTRUNPTkQ6IGAke3NlY29uZERpZ2l0c30gKCR7dGhpcy5TRUNPTkQoKX0pYCxcbiAgICAgICAgTUlMTElTRUNPTkQ6IGAke21pbGxpc2Vjb25kRGlnaXRzfSAoJHt0aGlzLk1JTExJU0VDT05EKCl9KWAsXG4gICAgICB9O1xuXG4gICAgICBtYXNrUGFydHMgPSBzZWxlY3RlZFVuaXRzLm1hcCgodW5pdCkgPT4ge1xuICAgICAgICByZXR1cm4gdW5pdFBhdHRlcm5zW3VuaXRdO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIFdpdGhvdXQgbGFiZWxzIC0ganVzdCBudW1iZXJzXG4gICAgICBjb25zdCB1bml0UGF0dGVybnM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gICAgICAgIFlFQVI6IHllYXJEaWdpdHMsXG4gICAgICAgIE1PTlRIOiBtb250aERpZ2l0cyxcbiAgICAgICAgV0VFSzogd2Vla0RpZ2l0cyxcbiAgICAgICAgREFZOiBkYXlEaWdpdHMsXG4gICAgICAgIEhPVVI6IGhvdXJEaWdpdHMsXG4gICAgICAgIE1JTlVURTogbWludXRlRGlnaXRzLFxuICAgICAgICBTRUNPTkQ6IHNlY29uZERpZ2l0cyxcbiAgICAgICAgTUlMTElTRUNPTkQ6IG1pbGxpc2Vjb25kRGlnaXRzLFxuICAgICAgfTtcblxuICAgICAgbWFza1BhcnRzID0gc2VsZWN0ZWRVbml0cy5tYXAoKHVuaXQpID0+IHtcbiAgICAgICAgcmV0dXJuIHVuaXRQYXR0ZXJuc1t1bml0XTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGxldCByZXN1bHQ6IHN0cmluZztcblxuICAgIGlmICh0aGlzLmxhYmVsKCkpIHtcbiAgICAgIGlmICh0aGlzLnRyYW5zbGF0aW9uU2VydmljZS5nZXRBY3RpdmVMYW5nKCkgPT09ICdmYS1JUicpIHtcbiAgICAgICAgcmVzdWx0ID0gbWFza1BhcnRzLnJldmVyc2UoKS5qb2luKCcgOiAnKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJlc3VsdCA9IG1hc2tQYXJ0cy5qb2luKCcgOiAnKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgcmVzdWx0ID0gbWFza1BhcnRzLmpvaW4oJzonKTtcbiAgICB9XG5cbiAgICB0aGlzLm1hc2tPcHRpb25zLnNldCh7IG1hc2s6IHJlc3VsdCwgZWFnZXI6IHRydWUgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZm9jdXNIYW5kbGVyKGU6IEFYRm9jdXNFdmVudCkge1xuICAgIHRoaXMub25Gb2N1cy5lbWl0KGUpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGJsdXJIYW5kbGVyKGU6IEFYRm9jdXNFdmVudCkge1xuICAgIHRoaXMub25CbHVyLmVtaXQoZSk7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2F0dHIubmFtZScpXG4gIHByaXZhdGUgZ2V0IF9faG9zdE5hbWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5uYW1lO1xuICB9XG59XG4iLCI8YXgtdGV4dC1ib3hcbiAgW2xvb2tdPVwibG9va1wiXG4gIFtwbGFjZWhvbGRlcl09XCJtYXNrT3B0aW9ucygpLm1hc2tcIlxuICBbbWFzay1vcHRpb25zXT1cIm1hc2tPcHRpb25zKClcIlxuICBbbmdNb2RlbF09XCJpbnB1dFZhbHVlXCJcbiAgKG5nTW9kZWxDaGFuZ2UpPVwib25JbnB1dCgkZXZlbnQpXCJcbiAgY2xhc3M9XCJheC10aW1lLWR1cmF0aW9uLXRleHRcIlxuICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICBbdGFiSW5kZXhdPVwidGFiSW5kZXhcIlxuICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxuICAob25Gb2N1cyk9XCJmb2N1c0hhbmRsZXIoJGV2ZW50KVwiXG4gIChvbkJsdXIpPVwiYmx1ckhhbmRsZXIoJGV2ZW50KVwiXG4+XG4gIDxuZy1jb250ZW50IHNlbGVjdD1cImF4LXZhbGlkYXRpb24tcnVsZVwiPiA8L25nLWNvbnRlbnQ+XG48L2F4LXRleHQtYm94PlxuIl19","import { NgModule } from '@angular/core';\nimport { AXTimeDurationComponent } from './time-duration.component';\nimport * as i0 from \"@angular/core\";\nconst COMPONENT = [AXTimeDurationComponent];\nconst MODULES = [];\nexport class AXTimeDurationModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AXTimeDurationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.4\", ngImport: i0, type: AXTimeDurationModule, imports: [AXTimeDurationComponent], exports: [AXTimeDurationComponent] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AXTimeDurationModule, imports: [MODULES, COMPONENT] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.4\", ngImport: i0, type: AXTimeDurationModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [...MODULES, ...COMPONENT],\n exports: [...COMPONENT],\n providers: [],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS1kdXJhdGlvbi5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL3RpbWUtZHVyYXRpb24vc3JjL2xpYi90aW1lLWR1cmF0aW9uLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDOztBQUVwRSxNQUFNLFNBQVMsR0FBRyxDQUFDLHVCQUF1QixDQUFDLENBQUM7QUFFNUMsTUFBTSxPQUFPLEdBQUcsRUFBRSxDQUFDO0FBT25CLE1BQU0sT0FBTyxvQkFBb0I7OEdBQXBCLG9CQUFvQjsrR0FBcEIsb0JBQW9CLFlBVGQsdUJBQXVCLGFBQXZCLHVCQUF1QjsrR0FTN0Isb0JBQW9CLFlBSmxCLE9BQU8sRUFBSyxTQUFTOzsyRkFJdkIsb0JBQW9CO2tCQUxoQyxRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLEdBQUcsT0FBTyxFQUFFLEdBQUcsU0FBUyxDQUFDO29CQUNuQyxPQUFPLEVBQUUsQ0FBQyxHQUFHLFNBQVMsQ0FBQztvQkFDdkIsU0FBUyxFQUFFLEVBQUU7aUJBQ2QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhUaW1lRHVyYXRpb25Db21wb25lbnQgfSBmcm9tICcuL3RpbWUtZHVyYXRpb24uY29tcG9uZW50JztcblxuY29uc3QgQ09NUE9ORU5UID0gW0FYVGltZUR1cmF0aW9uQ29tcG9uZW50XTtcblxuY29uc3QgTU9EVUxFUyA9IFtdO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbLi4uTU9EVUxFUywgLi4uQ09NUE9ORU5UXSxcbiAgZXhwb3J0czogWy4uLkNPTVBPTkVOVF0sXG4gIHByb3ZpZGVyczogW10sXG59KVxuZXhwb3J0IGNsYXNzIEFYVGltZUR1cmF0aW9uTW9kdWxlIHt9XG4iXX0=","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LWNvbXBvbmVudHMtdGltZS1kdXJhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvdGltZS1kdXJhdGlvbi9zcmMvYWNvcmV4LWNvbXBvbmVudHMtdGltZS1kdXJhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "@acorex/components",
3
- "version": "20.2.11",
3
+ "version": "20.2.13",
4
4
  "peerDependencies": {
5
- "@acorex/core": "20.2.11",
6
- "@acorex/cdk": "20.2.11",
5
+ "@acorex/core": "20.2.13",
6
+ "@acorex/cdk": "20.2.13",
7
7
  "@angular/common": "^20.0.0",
8
8
  "@angular/core": "^20.0.0",
9
9
  "@angular/cdk": "^20.0.0",
@@ -323,6 +323,10 @@
323
323
  "types": "./progress-bar/index.d.ts",
324
324
  "default": "./fesm2022/acorex-components-progress-bar.mjs"
325
325
  },
326
+ "./qrcode": {
327
+ "types": "./qrcode/index.d.ts",
328
+ "default": "./fesm2022/acorex-components-qrcode.mjs"
329
+ },
326
330
  "./query-builder": {
327
331
  "types": "./query-builder/index.d.ts",
328
332
  "default": "./fesm2022/acorex-components-query-builder.mjs"
@@ -331,10 +335,6 @@
331
335
  "types": "./radio/index.d.ts",
332
336
  "default": "./fesm2022/acorex-components-radio.mjs"
333
337
  },
334
- "./qrcode": {
335
- "types": "./qrcode/index.d.ts",
336
- "default": "./fesm2022/acorex-components-qrcode.mjs"
337
- },
338
338
  "./rail-navigation": {
339
339
  "types": "./rail-navigation/index.d.ts",
340
340
  "default": "./fesm2022/acorex-components-rail-navigation.mjs"
@@ -16,6 +16,8 @@ declare class AXTimeDurationComponent extends AXTimeDurationComponent_base {
16
16
  readonly valueEnd: _angular_core.InputSignal<AXTimeDurationUnit>;
17
17
  readonly label: _angular_core.InputSignal<boolean>;
18
18
  readonly maskDigits: _angular_core.InputSignal<string>;
19
+ readonly minValue: _angular_core.InputSignal<number>;
20
+ readonly maxValue: _angular_core.InputSignal<number>;
19
21
  protected maskOptions: _angular_core.WritableSignal<any>;
20
22
  private translationService;
21
23
  private timeDurationFormatter;
@@ -31,7 +33,7 @@ declare class AXTimeDurationComponent extends AXTimeDurationComponent_base {
31
33
  private MILLISECOND;
32
34
  private isTranslationInit;
33
35
  initTranslation(): Promise<void>;
34
- protected onInput(event: any): void;
36
+ protected onInput(event: any): Promise<void>;
35
37
  protected internalValueChanged(value: number): Promise<void>;
36
38
  private replacePersianLabels;
37
39
  private maskToMilliseconds;
@@ -40,7 +42,7 @@ declare class AXTimeDurationComponent extends AXTimeDurationComponent_base {
40
42
  protected blurHandler(e: AXFocusEvent): void;
41
43
  private get __hostName();
42
44
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXTimeDurationComponent, never>;
43
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXTimeDurationComponent, "ax-time-duration", never, { "disabled": { "alias": "disabled"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "look": { "alias": "look"; "required": false; }; "valueStart": { "alias": "valueStart"; "required": false; "isSignal": true; }; "valueEnd": { "alias": "valueEnd"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "maskDigits": { "alias": "maskDigits"; "required": false; "isSignal": true; }; }, { "onValueChanged": "onValueChanged"; }, never, ["ax-validation-rule"], true, never>;
45
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXTimeDurationComponent, "ax-time-duration", never, { "disabled": { "alias": "disabled"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "look": { "alias": "look"; "required": false; }; "valueStart": { "alias": "valueStart"; "required": false; "isSignal": true; }; "valueEnd": { "alias": "valueEnd"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "maskDigits": { "alias": "maskDigits"; "required": false; "isSignal": true; }; "minValue": { "alias": "minValue"; "required": false; "isSignal": true; }; "maxValue": { "alias": "maxValue"; "required": false; "isSignal": true; }; }, { "onValueChanged": "onValueChanged"; }, never, ["ax-validation-rule"], true, never>;
44
46
  }
45
47
 
46
48
  declare class AXTimeDurationModule {