@cqa-lib/cqa-ui 1.1.557-beta.20 → 1.1.557-beta.24

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.
@@ -141,7 +141,12 @@ export class DialogComponent {
141
141
  this.cdr.markForCheck();
142
142
  }
143
143
  normalizeRole(role) {
144
- return (role ?? 'secondary').trim().split(/\s+/)[0];
144
+ const raw = (role ?? 'secondary').trim().split(/\s+/)[0].toLowerCase();
145
+ // Accept common destructive-action synonyms and map them to 'warn'.
146
+ if (raw === 'error' || raw === 'danger' || raw === 'destructive') {
147
+ return 'warn';
148
+ }
149
+ return raw;
145
150
  }
146
151
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DialogComponent, deps: [{ token: i0.ViewContainerRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
147
152
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: DialogComponent, selector: "cqa-dialog", host: { classAttribute: "cqa-ui-root" }, viewQueries: [{ propertyName: "portalOutlet", first: true, predicate: CdkPortalOutlet, descendants: true, static: true }], ngImport: i0, template: "<div class=\"cqa-ui-root\">\n <div class=\"cqa-flex cqa-w-full cqa-justify-center cqa-px-4 sm:cqa-px-6\">\n <div [ngClass]=\"panelClassList\" [ngStyle]=\"panelStyles\">\n <div class=\"cqa-flex cqa-flex-col cqa-gap-5\">\n <div class=\"cqa-flex cqa-flex-col cqa-gap-3\">\n <h2 class=\"cqa-text-lg cqa-font-semibold cqa-text-dialog\">\n {{ config.title }}\n </h2>\n\n <p *ngIf=\"config.description\" class=\"cqa-text-sm cqa-leading-6 cqa-text-dialog-secondary\">\n {{ config.description }}\n </p>\n\n <div *ngIf=\"config.warning\"\n class=\"cqa-rounded-xl cqa-border cqa-border-red-200 cqa-bg-red-50 cqa-px-4 cqa-py-3 cqa-text-sm cqa-leading-5 cqa-text-red-700\">\n {{ config.warning }}\n </div>\n </div>\n\n <div class=\"cqa-text-sm cqa-text-dialog\" [class.hidden]=\"!contentAttached\">\n <ng-template cdkPortalOutlet></ng-template>\n </div>\n\n <div class=\"cqa-mt-4 cqa-flex cqa-flex-wrap cqa-gap-3\" [ngClass]=\"buttonAlignmentClass\">\n <cqa-button *ngFor=\"let button of config.buttons\" type=\"button\" [variant]=\"buttonVariant(button)\"\n [disabled]=\"isButtonDisabled(button)\"\n [loading]=\"isButtonLoading(button)\"\n [ngClass]=\"buttonHostClasses(button)\" (clicked)=\"onButtonClick(button)\">\n {{ button.label }}\n </cqa-button>\n </div>\n </div>\n </div>\n </div>\n</div>", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "component", type: i3.ButtonComponent, selector: "cqa-button", inputs: ["variant", "btnSize", "disabled", "loading", "icon", "iconPosition", "fullWidth", "iconColor", "type", "text", "customClass", "inlineStyles", "tooltip", "tooltipPosition"], outputs: ["clicked"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
@@ -153,4 +158,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
153
158
  type: ViewChild,
154
159
  args: [CdkPortalOutlet, { static: true }]
155
160
  }] } });
156
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvZGlhbG9nL2RpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2RpYWxvZy9kaWFsb2cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUV2QixTQUFTLEVBR1QsU0FBUyxHQUVWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxlQUFlLEVBQW1CLGNBQWMsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7OztBQVl2RixNQUFNLE9BQU8sZUFBZTtJQVNHO0lBQXFEO0lBUHBDLFlBQVksQ0FBbUI7SUFFN0UsTUFBTSxDQUE4QztJQUNwRCxTQUFTLENBQXNCO0lBRS9CLGVBQWUsR0FBRyxLQUFLLENBQUM7SUFFeEIsWUFBNkIsZ0JBQWtDLEVBQW1CLEdBQXNCO1FBQTNFLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFBbUIsUUFBRyxHQUFILEdBQUcsQ0FBbUI7SUFBRyxDQUFDO0lBRTVHLGNBQWMsQ0FBQyxRQUE4QixFQUFFLE9BQWlDO1FBQzlFLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDdkIsT0FBTztRQUNULENBQUM7UUFFRCxNQUFNLGVBQWUsR0FDbkIsT0FBTztZQUNQO2dCQUNFLFNBQVMsRUFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUk7Z0JBQzVCLElBQUksRUFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUk7YUFDeEIsQ0FBQztRQUNKLE1BQU0sTUFBTSxHQUFHLElBQUksY0FBYyxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsZUFBZSxDQUFDLENBQUM7UUFDcEYsSUFBSSxDQUFDLFlBQVksQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMvQyxJQUFJLENBQUMs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LENBQUM7SUFFTyxtQkFBbUI7UUFDekIsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUM7UUFDNUIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRU8sYUFBYSxDQUFDLElBQXdCO1FBQzVDLE9BQU8sQ0FBQyxJQUFJLElBQUksV0FBVyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3RELENBQUM7d0dBekpVLGVBQWU7NEZBQWYsZUFBZSx5SUFFZixlQUFlLDhEQ3ZCNUIsNCtDQWtDTTs7NEZEYk8sZUFBZTtrQkFQM0IsU0FBUzsrQkFDRSxZQUFZLG1CQUdMLHVCQUF1QixDQUFDLE1BQU0sUUFDekMsRUFBRSxLQUFLLEVBQUUsYUFBYSxFQUFFO3FIQUlnQixZQUFZO3NCQUF6RCxTQUFTO3VCQUFDLGVBQWUsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgQ29tcG9uZW50UmVmLFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NoaWxkLFxuICBWaWV3Q29udGFpbmVyUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENka1BvcnRhbE91dGxldCwgQ29tcG9uZW50UG9ydGFsLCBUZW1wbGF0ZVBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgRGlhbG9nQnV0dG9uQWxpZ25tZW50LCBEaWFsb2dCdXR0b25Db25maWcsIERpYWxvZ0NvbmZpZywgRGlhbG9nQ29udGVudENvbmZpZyB9IGZyb20gJy4vZGlhbG9nLm1vZGVscyc7XG5pbXBvcnQgeyBCdXR0b25WYXJpYW50IH0gZnJvbSAnLi4vYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGlhbG9nUmVmIH0gZnJvbSAnLi9kaWFsb2ctcmVmJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY3FhLWRpYWxvZycsXG4gIHRlbXBsYXRlVXJsOiAnLi9kaWFsb2cuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFtdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaG9zdDogeyBjbGFzczogJ2NxYS11aS1yb290JyB9LFxufSlcbmV4cG9ydCBjbGFzcyBEaWFsb2dDb21wb25lbnQ8VFJlc3VsdCA9IHVua25vd24+IHtcblxuICBAVmlld0NoaWxkKENka1BvcnRhbE91dGxldCwgeyBzdGF0aWM6IHRydWUgfSkgcG9ydGFsT3V0bGV0PzogQ2RrUG9ydGFsT3V0bGV0O1xuXG4gIGNvbmZpZyE6IERpYWxvZ0NvbmZpZzxEaWFsb2dDb250ZW50Q29uZmlnLCBUUmVzdWx0PjtcbiAgZGlhbG9nUmVmITogRGlhbG9nUmVmPFRSZXN1bHQ+O1xuXG4gIGNvbnRlbnRBdHRhY2hlZCA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZiwgcHJpdmF0ZSByZWFkb25seSBjZHI6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuXG4gIGF0dGFjaFRlbXBsYXRlKHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx1bmtub3duPiwgY29udGV4dD86IFJlY29yZDxzdHJpbmcsIHVua25vd24+KTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnBvcnRhbE91dGxldCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHRlbXBsYXRlQ29udGV4dCA9XG4gICAgICBjb250ZXh0ID8/XG4gICAgICB7XG4gICAgICAgICRpbXBsaWNpdDogdGhpcy5jb25maWc/LmRhdGEsXG4gICAgICAgIGRhdGE6IHRoaXMuY29uZmlnPy5kYXRhLFxuICAgICAgfTtcbiAgICBjb25zdCBwb3J0YWwgPSBuZXcgVGVtcGxhdGVQb3J0YWwodGVtcGxhdGUsIHRoaXMudmlld0NvbnRhaW5lclJlZiwgdGVtcGxhdGVDb250ZXh0KTtcbiAgICB0aGlzLnBvcnRhbE91dGxldC5hdHRhY2hUZW1wbGF0ZVBvcnRhbChwb3J0YWwpO1xuICAgIHRoaXMubWFya0NvbnRlbnRBdHRhY2hlZCgpO1xuICB9XG5cbiAgYXR0YWNoQ29tcG9uZW50KGNvbXBvbmVudDogQ29tcG9uZW50UG9ydGFsPHVua25vd24+KTogQ29tcG9uZW50UmVmPHVua25vd24+IHwgdW5kZWZpbmVkIHtcbiAgICBpZiAoIXRoaXMucG9ydGFsT3V0bGV0KSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIGNvbnN0IGNvbXBvbmVudFJlZiA9IHRoaXMucG9ydGFsT3V0bGV0LmF0dGFjaENvbXBvbmVudFBvcnRhbChjb21wb25lbnQpO1xuICAgIHRoaXMubWFya0NvbnRlbnRBdHRhY2hlZCgpO1xuICAgIHJldHVybiBjb21wb25lbnRSZWY7XG4gIH1cblxuICBhc3luYyBvbkJ1dHRvbkNsaWNrKGJ1dHRvbjogRGlhbG9nQnV0dG9uQ29uZmlnPFRSZXN1bHQ+KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgY2xvc2VPbkNsaWNrID0gYnV0dG9uLmNsb3NlT25DbGljayA/PyB0cnVlO1xuICAgIGxldCBoYW5kbGVyUmVzdWx0OiBUUmVzdWx0IHwgZmFsc2UgfCB2b2lkIHwgUHJvbWlzZTxUUmVzdWx0IHwgZmFsc2UgfCB2b2lkPiA9IHVuZGVmaW5lZDtcblxuICAgIGlmIChidXR0b24uaGFuZGxlcikge1xuICAgICAgaGFuZGxlclJlc3VsdCA9IGJ1dHRvbi5oYW5kbGVyKHRoaXMuZGlhbG9nUmVmKTtcbiAgICB9XG5cbiAgICBjb25zdCByZXNvbHZlZCA9IGhhbmRsZXJSZXN1bHQgaW5zdGFuY2VvZiBQcm9taXNlID8gYXdhaXQgaGFuZGxlclJlc3VsdCA6IGhhbmRsZXJSZXN1bHQ7XG5cbiAgICBpZiAoIWNsb3NlT25DbGljayB8fCByZXNvbHZlZCA9PT0gZmFsc2UpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZShyZXNvbHZlZCBhcyBUUmVzdWx0IHwgdW5kZWZpbmVkKTtcbiAgfVxuXG4gIGdldCBidXR0b25BbGlnbm1lbnRDbGFzcygpOiBzdHJpbmcge1xuICAgIGNvbnN0IGFsaWdubWVudCA9IHRoaXMuY29uZmlnPy5idXR0b25BbGlnbm1lbnQgPz8gJ3JpZ2h0JztcbiAgICByZXR1cm4gdGhpcy5tYXBBbGlnbm1lbnRUb0NsYXNzKGFsaWdubWVudCk7XG4gIH1cblxuICBnZXQgcGFuZWxDbGFzc0xpc3QoKTogc3RyaW5nW10ge1xuICAgIGNvbnN0IGJhc2VDbGFzc2VzID0gW1xuICAgICAgJ2NxYS1yZWxhdGl2ZScsXG4gICAgICAnY3FhLXctZnVsbCcsXG4gICAgICAnY3FhLWJnLXdoaXRlJyxcbiAgICAgICdjcWEtcm91bmRlZC0yeGwnLFxuICAgICAgJ2NxYS1zaGFkb3ctbWQnLFxuICAgICAgJ2NxYS1ib3JkZXInLFxuICAgICAgJ2NxYS1ib3JkZXItYm9yZGVyLWRlZmF1bHQnLFxuICAgICAgJ2NxYS1wLTYnLFxuICAgICAgJ2NxYS10ZXh0LWxlZnQnLFxuICAgIF07XG5cbiAgICBjb25zdCBjdXN0b20gPSB0aGlzLmNvbmZpZz8ucGFuZWxDbGFzcztcblxuICAgIGlmICghY3VzdG9tKSB7XG4gICAgICByZXR1cm4gYmFzZUNsYXNzZXM7XG4gICAgfVxuXG4gICAgcmV0dXJuIEFycmF5LmlzQXJyYXkoY3VzdG9tKSA/IFsuLi5iYXNlQ2xhc3NlcywgLi4uY3VzdG9tXSA6IFsuLi5iYXNlQ2xhc3NlcywgY3VzdG9tXTtcbiAgfVxuXG4gIGdldCBwYW5lbFN0eWxlcygpOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCB1bmRlZmluZWQ+IHtcbiAgICByZXR1cm4ge1xuICAgICAgd2lkdGg6IHRoaXMuY29uZmlnPy53aWR0aCxcbiAgICAgIG1heFdpZHRoOiB0aGlzLmNvbmZpZz8ubWF4V2lkdGggPz8gJzQ4MHB4JyxcbiAgICB9O1xuICB9XG5cbiAgYnV0dG9uVmFyaWFudChidXR0b246IERpYWxvZ0J1dHRvbkNvbmZpZzxUUmVzdWx0Pik6IEJ1dHRvblZhcmlhbnQge1xuICAgIGNvbnN0IHJvbGUgPSB0aGlzLm5vcm1hbGl6ZVJvbGUoYnV0dG9uLnJvbGUpO1xuXG4gICAgc3dpdGNoIChyb2xlKSB7XG4gICAgICBjYXNlICdzZWNvbmRhcnknOlxuICAgICAgICByZXR1cm4gJ291dGxpbmVkJztcbiAgICAgIGNhc2UgJ3RleHQnOlxuICAgICAgICByZXR1cm4gJ3RleHQnO1xuICAgICAgY2FzZSAndG9uYWwnOlxuICAgICAgICByZXR1cm4gJ3RvbmFsJztcbiAgICAgIGNhc2UgJ2VsZXZhdGVkJzpcbiAgICAgICAgcmV0dXJuICdlbGV2YXRlZCc7XG4gICAgICBjYXNlICdmaWxsZWQnOlxuICAgICAgY2FzZSAncHJpbWFyeSc6XG4gICAgICBjYXNlICd3YXJuJzpcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiAnZmlsbGVkJztcbiAgICB9XG4gIH1cblxuICBpc0J1dHRvbkRpc2FibGVkKGJ1dHRvbjogRGlhbG9nQnV0dG9uQ29uZmlnPFRSZXN1bHQ+KTogYm9vbGVhbiB7XG4gICAgY29uc3QgZCA9IGJ1dHRvbi5kaXNhYmxlZDtcbiAgICBpZiAodHlwZW9mIGQgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHRyeSB7IHJldHVybiAhIWQodGhpcy5kaWFsb2dSZWYpOyB9IGNhdGNoIHsgcmV0dXJuIGZhbHNlOyB9XG4gICAgfVxuICAgIHJldHVybiAhIWQ7XG4gIH1cblxuICBpc0J1dHRvbkxvYWRpbmcoYnV0dG9uOiBEaWFsb2dCdXR0b25Db25maWc8VFJlc3VsdD4pOiBib29sZWFuIHtcbiAgICBjb25zdCBsID0gYnV0dG9uLmxvYWRpbmc7XG4gICAgaWYgKHR5cGVvZiBsID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICB0cnkgeyByZXR1cm4gISFsKHRoaXMuZGlhbG9nUmVmKTsgfSBjYXRjaCB7IHJldHVybiBmYWxzZTsgfVxuICAgIH1cbiAgICByZXR1cm4gISFsO1xuICB9XG5cbiAgYnV0dG9uSG9zdENsYXNzZXMoYnV0dG9uOiBEaWFsb2dCdXR0b25Db25maWc8VFJlc3VsdD4pOiBzdHJpbmdbXSB7XG4gICAgY29uc3Qgcm9sZSA9IHRoaXMubm9ybWFsaXplUm9sZShidXR0b24ucm9sZSk7XG5cbiAgICBpZiAocm9sZSA9PT0gJ3dhcm4nKSB7XG4gICAgICByZXR1cm4gWydjcWEtZGlhbG9nLWJ0bi13YXJuJ107XG4gICAgfVxuXG4gICAgcmV0dXJuIFtdO1xuICB9XG5cbiAgcHJpdmF0ZSBtYXBBbGlnbm1lbnRUb0NsYXNzKGFsaWdubWVudDogRGlhbG9nQnV0dG9uQWxpZ25tZW50KTogc3RyaW5nIHtcbiAgICBzd2l0Y2ggKGFsaWdubWVudCkge1xuICAgICAgY2FzZSAnbGVmdCc6XG4gICAgICAgIHJldHVybiAnY3FhLWp1c3RpZnktc3RhcnQnO1xuICAgICAgY2FzZSAnY2VudGVyJzpcbiAgICAgICAgcmV0dXJuICdjcWEtanVzdGlmeS1jZW50ZXInO1xuICAgICAgY2FzZSAncmlnaHQnOlxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuICdjcWEtanVzdGlmeS1lbmQnO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgbWFya0NvbnRlbnRBdHRhY2hlZCgpOiB2b2lkIHtcbiAgICB0aGlzLmNvbnRlbnRBdHRhY2hlZCA9IHRydWU7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBwcml2YXRlIG5vcm1hbGl6ZVJvbGUocm9sZTogc3RyaW5nIHwgdW5kZWZpbmVkKTogc3RyaW5nIHtcbiAgICByZXR1cm4gKHJvbGUgPz8gJ3NlY29uZGFyeScpLnRyaW0oKS5zcGxpdCgvXFxzKy8pWzBdO1xuICB9XG59XG5cblxuIiwiPGRpdiBjbGFzcz1cImNxYS11aS1yb290XCI+XG4gIDxkaXYgY2xhc3M9XCJjcWEtZmxleCBjcWEtdy1mdWxsIGNxYS1qdXN0aWZ5LWNlbnRlciBjcWEtcHgtNCBzbTpjcWEtcHgtNlwiPlxuICAgIDxkaXYgW25nQ2xhc3NdPVwicGFuZWxDbGFzc0xpc3RcIiBbbmdTdHlsZV09XCJwYW5lbFN0eWxlc1wiPlxuICAgICAgPGRpdiBjbGFzcz1cImNxYS1mbGV4IGNxYS1mbGV4LWNvbCBjcWEtZ2FwLTVcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNxYS1mbGV4IGNxYS1mbGV4LWNvbCBjcWEtZ2FwLTNcIj5cbiAgICAgICAgICA8aDIgY2xhc3M9XCJjcWEtdGV4dC1sZyBjcWEtZm9udC1zZW1pYm9sZCBjcWEtdGV4dC1kaWFsb2dcIj5cbiAgICAgICAgICAgIHt7IGNvbmZpZy50aXRsZSB9fVxuICAgICAgICAgIDwvaDI+XG5cbiAgICAgICAgICA8cCAqbmdJZj1cImNvbmZpZy5kZXNjcmlwdGlvblwiIGNsYXNzPVwiY3FhLXRleHQtc20gY3FhLWxlYWRpbmctNiBjcWEtdGV4dC1kaWFsb2ctc2Vjb25kYXJ5XCI+XG4gICAgICAgICAgICB7eyBjb25maWcuZGVzY3JpcHRpb24gfX1cbiAgICAgICAgICA8L3A+XG5cbiAgICAgICAgICA8ZGl2ICpuZ0lmPVwiY29uZmlnLndhcm5pbmdcIlxuICAgICAgICAgICAgY2xhc3M9XCJjcWEtcm91bmRlZC14bCBjcWEtYm9yZGVyIGNxYS1ib3JkZXItcmVkLTIwMCBjcWEtYmctcmVkLTUwIGNxYS1weC00IGNxYS1weS0zIGNxYS10ZXh0LXNtIGNxYS1sZWFkaW5nLTUgY3FhLXRleHQtcmVkLTcwMFwiPlxuICAgICAgICAgICAge3sgY29uZmlnLndhcm5pbmcgfX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNxYS10ZXh0LXNtIGNxYS10ZXh0LWRpYWxvZ1wiIFtjbGFzcy5oaWRkZW5dPVwiIWNvbnRlbnRBdHRhY2hlZFwiPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSBjZGtQb3J0YWxPdXRsZXQ+PC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNxYS1tdC00IGNxYS1mbGV4IGNxYS1mbGV4LXdyYXAgY3FhLWdhcC0zXCIgW25nQ2xhc3NdPVwiYnV0dG9uQWxpZ25tZW50Q2xhc3NcIj5cbiAgICAgICAgICA8Y3FhLWJ1dHRvbiAqbmdGb3I9XCJsZXQgYnV0dG9uIG9mIGNvbmZpZy5idXR0b25zXCIgdHlwZT1cImJ1dHRvblwiIFt2YXJpYW50XT1cImJ1dHRvblZhcmlhbnQoYnV0dG9uKVwiXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiaXNCdXR0b25EaXNhYmxlZChidXR0b24pXCJcbiAgICAgICAgICAgIFtsb2FkaW5nXT1cImlzQnV0dG9uTG9hZGluZyhidXR0b24pXCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cImJ1dHRvbkhvc3RDbGFzc2VzKGJ1dHRvbilcIiAoY2xpY2tlZCk9XCJvbkJ1dHRvbkNsaWNrKGJ1dHRvbilcIj5cbiAgICAgICAgICAgIHt7IGJ1dHRvbi5sYWJlbCB9fVxuICAgICAgICAgIDwvY3FhLWJ1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj4iXX0=
161
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvZGlhbG9nL2RpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2RpYWxvZy9kaWFsb2cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUV2QixTQUFTLEVBR1QsU0FBUyxHQUVWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxlQUFlLEVBQW1CLGNBQWMsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7OztBQVl2RixNQUFNLE9BQU8sZUFBZTtJQVNHO0lBQXFEO0lBUHBDLFlBQVksQ0FBbUI7SUFFN0UsTUFBTSxDQUE4QztJQUNwRCxTQUFTLENBQXNCO0lBRS9CLGVBQWUsR0FBRyxLQUFLLENBQUM7SUFFeEIsWUFBNkIsZ0JBQWtDLEVBQW1CLEdBQXNCO1FBQTNFLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFBbUIsUUFBRyxHQUFILEdBQUcsQ0FBbUI7SUFBRyxDQUFDO0lBRTVHLGNBQWMsQ0FBQyxRQUE4QixFQUFFLE9BQWlDO1FBQzlFLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDdkIsT0FBTztRQUNULENBQUM7UUFFRCxNQUFNLGVBQWUsR0FDbkIsT0FBTztZQUNQO2dCQUNFLFNBQVMsRUFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUk7Z0JBQzVCLElBQUksRUFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUk7YUFDeEIsQ0FBQztRQUNKLE1BQU0sTUFBTSxHQUFHLElBQUksY0FBYyxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsZUFBZSxDQUFDLENBQUM7UUFDcEYsSUFBSSxDQUFDLFlBQVksQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMvQyxJQUFJLENBQUMs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LENBQUM7SUFFTyxtQkFBbUI7UUFDekIsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUM7UUFDNUIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRU8sYUFBYSxDQUFDLElBQXdCO1FBQzVDLE1BQU0sR0FBRyxHQUFHLENBQUMsSUFBSSxJQUFJLFdBQVcsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUN2RSxvRUFBb0U7UUFDcEUsSUFBSSxHQUFHLEtBQUssT0FBTyxJQUFJLEdBQUcsS0FBSyxRQUFRLElBQUksR0FBRyxLQUFLLGFBQWEsRUFBRSxDQUFDO1lBQ2pFLE9BQU8sTUFBTSxDQUFDO1FBQ2hCLENBQUM7UUFDRCxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7d0dBOUpVLGVBQWU7NEZBQWYsZUFBZSx5SUFFZixlQUFlLDhEQ3ZCNUIsNCtDQWtDTTs7NEZEYk8sZUFBZTtrQkFQM0IsU0FBUzsrQkFDRSxZQUFZLG1CQUdMLHVCQUF1QixDQUFDLE1BQU0sUUFDekMsRUFBRSxLQUFLLEVBQUUsYUFBYSxFQUFFO3FIQUlnQixZQUFZO3NCQUF6RCxTQUFTO3VCQUFDLGVBQWUsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgQ29tcG9uZW50UmVmLFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NoaWxkLFxuICBWaWV3Q29udGFpbmVyUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENka1BvcnRhbE91dGxldCwgQ29tcG9uZW50UG9ydGFsLCBUZW1wbGF0ZVBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgRGlhbG9nQnV0dG9uQWxpZ25tZW50LCBEaWFsb2dCdXR0b25Db25maWcsIERpYWxvZ0NvbmZpZywgRGlhbG9nQ29udGVudENvbmZpZyB9IGZyb20gJy4vZGlhbG9nLm1vZGVscyc7XG5pbXBvcnQgeyBCdXR0b25WYXJpYW50IH0gZnJvbSAnLi4vYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGlhbG9nUmVmIH0gZnJvbSAnLi9kaWFsb2ctcmVmJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY3FhLWRpYWxvZycsXG4gIHRlbXBsYXRlVXJsOiAnLi9kaWFsb2cuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFtdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaG9zdDogeyBjbGFzczogJ2NxYS11aS1yb290JyB9LFxufSlcbmV4cG9ydCBjbGFzcyBEaWFsb2dDb21wb25lbnQ8VFJlc3VsdCA9IHVua25vd24+IHtcblxuICBAVmlld0NoaWxkKENka1BvcnRhbE91dGxldCwgeyBzdGF0aWM6IHRydWUgfSkgcG9ydGFsT3V0bGV0PzogQ2RrUG9ydGFsT3V0bGV0O1xuXG4gIGNvbmZpZyE6IERpYWxvZ0NvbmZpZzxEaWFsb2dDb250ZW50Q29uZmlnLCBUUmVzdWx0PjtcbiAgZGlhbG9nUmVmITogRGlhbG9nUmVmPFRSZXN1bHQ+O1xuXG4gIGNvbnRlbnRBdHRhY2hlZCA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZiwgcHJpdmF0ZSByZWFkb25seSBjZHI6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuXG4gIGF0dGFjaFRlbXBsYXRlKHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx1bmtub3duPiwgY29udGV4dD86IFJlY29yZDxzdHJpbmcsIHVua25vd24+KTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnBvcnRhbE91dGxldCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHRlbXBsYXRlQ29udGV4dCA9XG4gICAgICBjb250ZXh0ID8/XG4gICAgICB7XG4gICAgICAgICRpbXBsaWNpdDogdGhpcy5jb25maWc/LmRhdGEsXG4gICAgICAgIGRhdGE6IHRoaXMuY29uZmlnPy5kYXRhLFxuICAgICAgfTtcbiAgICBjb25zdCBwb3J0YWwgPSBuZXcgVGVtcGxhdGVQb3J0YWwodGVtcGxhdGUsIHRoaXMudmlld0NvbnRhaW5lclJlZiwgdGVtcGxhdGVDb250ZXh0KTtcbiAgICB0aGlzLnBvcnRhbE91dGxldC5hdHRhY2hUZW1wbGF0ZVBvcnRhbChwb3J0YWwpO1xuICAgIHRoaXMubWFya0NvbnRlbnRBdHRhY2hlZCgpO1xuICB9XG5cbiAgYXR0YWNoQ29tcG9uZW50KGNvbXBvbmVudDogQ29tcG9uZW50UG9ydGFsPHVua25vd24+KTogQ29tcG9uZW50UmVmPHVua25vd24+IHwgdW5kZWZpbmVkIHtcbiAgICBpZiAoIXRoaXMucG9ydGFsT3V0bGV0KSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIGNvbnN0IGNvbXBvbmVudFJlZiA9IHRoaXMucG9ydGFsT3V0bGV0LmF0dGFjaENvbXBvbmVudFBvcnRhbChjb21wb25lbnQpO1xuICAgIHRoaXMubWFya0NvbnRlbnRBdHRhY2hlZCgpO1xuICAgIHJldHVybiBjb21wb25lbnRSZWY7XG4gIH1cblxuICBhc3luYyBvbkJ1dHRvbkNsaWNrKGJ1dHRvbjogRGlhbG9nQnV0dG9uQ29uZmlnPFRSZXN1bHQ+KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgY2xvc2VPbkNsaWNrID0gYnV0dG9uLmNsb3NlT25DbGljayA/PyB0cnVlO1xuICAgIGxldCBoYW5kbGVyUmVzdWx0OiBUUmVzdWx0IHwgZmFsc2UgfCB2b2lkIHwgUHJvbWlzZTxUUmVzdWx0IHwgZmFsc2UgfCB2b2lkPiA9IHVuZGVmaW5lZDtcblxuICAgIGlmIChidXR0b24uaGFuZGxlcikge1xuICAgICAgaGFuZGxlclJlc3VsdCA9IGJ1dHRvbi5oYW5kbGVyKHRoaXMuZGlhbG9nUmVmKTtcbiAgICB9XG5cbiAgICBjb25zdCByZXNvbHZlZCA9IGhhbmRsZXJSZXN1bHQgaW5zdGFuY2VvZiBQcm9taXNlID8gYXdhaXQgaGFuZGxlclJlc3VsdCA6IGhhbmRsZXJSZXN1bHQ7XG5cbiAgICBpZiAoIWNsb3NlT25DbGljayB8fCByZXNvbHZlZCA9PT0gZmFsc2UpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZShyZXNvbHZlZCBhcyBUUmVzdWx0IHwgdW5kZWZpbmVkKTtcbiAgfVxuXG4gIGdldCBidXR0b25BbGlnbm1lbnRDbGFzcygpOiBzdHJpbmcge1xuICAgIGNvbnN0IGFsaWdubWVudCA9IHRoaXMuY29uZmlnPy5idXR0b25BbGlnbm1lbnQgPz8gJ3JpZ2h0JztcbiAgICByZXR1cm4gdGhpcy5tYXBBbGlnbm1lbnRUb0NsYXNzKGFsaWdubWVudCk7XG4gIH1cblxuICBnZXQgcGFuZWxDbGFzc0xpc3QoKTogc3RyaW5nW10ge1xuICAgIGNvbnN0IGJhc2VDbGFzc2VzID0gW1xuICAgICAgJ2NxYS1yZWxhdGl2ZScsXG4gICAgICAnY3FhLXctZnVsbCcsXG4gICAgICAnY3FhLWJnLXdoaXRlJyxcbiAgICAgICdjcWEtcm91bmRlZC0yeGwnLFxuICAgICAgJ2NxYS1zaGFkb3ctbWQnLFxuICAgICAgJ2NxYS1ib3JkZXInLFxuICAgICAgJ2NxYS1ib3JkZXItYm9yZGVyLWRlZmF1bHQnLFxuICAgICAgJ2NxYS1wLTYnLFxuICAgICAgJ2NxYS10ZXh0LWxlZnQnLFxuICAgIF07XG5cbiAgICBjb25zdCBjdXN0b20gPSB0aGlzLmNvbmZpZz8ucGFuZWxDbGFzcztcblxuICAgIGlmICghY3VzdG9tKSB7XG4gICAgICByZXR1cm4gYmFzZUNsYXNzZXM7XG4gICAgfVxuXG4gICAgcmV0dXJuIEFycmF5LmlzQXJyYXkoY3VzdG9tKSA/IFsuLi5iYXNlQ2xhc3NlcywgLi4uY3VzdG9tXSA6IFsuLi5iYXNlQ2xhc3NlcywgY3VzdG9tXTtcbiAgfVxuXG4gIGdldCBwYW5lbFN0eWxlcygpOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCB1bmRlZmluZWQ+IHtcbiAgICByZXR1cm4ge1xuICAgICAgd2lkdGg6IHRoaXMuY29uZmlnPy53aWR0aCxcbiAgICAgIG1heFdpZHRoOiB0aGlzLmNvbmZpZz8ubWF4V2lkdGggPz8gJzQ4MHB4JyxcbiAgICB9O1xuICB9XG5cbiAgYnV0dG9uVmFyaWFudChidXR0b246IERpYWxvZ0J1dHRvbkNvbmZpZzxUUmVzdWx0Pik6IEJ1dHRvblZhcmlhbnQge1xuICAgIGNvbnN0IHJvbGUgPSB0aGlzLm5vcm1hbGl6ZVJvbGUoYnV0dG9uLnJvbGUpO1xuXG4gICAgc3dpdGNoIChyb2xlKSB7XG4gICAgICBjYXNlICdzZWNvbmRhcnknOlxuICAgICAgICByZXR1cm4gJ291dGxpbmVkJztcbiAgICAgIGNhc2UgJ3RleHQnOlxuICAgICAgICByZXR1cm4gJ3RleHQnO1xuICAgICAgY2FzZSAndG9uYWwnOlxuICAgICAgICByZXR1cm4gJ3RvbmFsJztcbiAgICAgIGNhc2UgJ2VsZXZhdGVkJzpcbiAgICAgICAgcmV0dXJuICdlbGV2YXRlZCc7XG4gICAgICBjYXNlICdmaWxsZWQnOlxuICAgICAgY2FzZSAncHJpbWFyeSc6XG4gICAgICBjYXNlICd3YXJuJzpcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiAnZmlsbGVkJztcbiAgICB9XG4gIH1cblxuICBpc0J1dHRvbkRpc2FibGVkKGJ1dHRvbjogRGlhbG9nQnV0dG9uQ29uZmlnPFRSZXN1bHQ+KTogYm9vbGVhbiB7XG4gICAgY29uc3QgZCA9IGJ1dHRvbi5kaXNhYmxlZDtcbiAgICBpZiAodHlwZW9mIGQgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHRyeSB7IHJldHVybiAhIWQodGhpcy5kaWFsb2dSZWYpOyB9IGNhdGNoIHsgcmV0dXJuIGZhbHNlOyB9XG4gICAgfVxuICAgIHJldHVybiAhIWQ7XG4gIH1cblxuICBpc0J1dHRvbkxvYWRpbmcoYnV0dG9uOiBEaWFsb2dCdXR0b25Db25maWc8VFJlc3VsdD4pOiBib29sZWFuIHtcbiAgICBjb25zdCBsID0gYnV0dG9uLmxvYWRpbmc7XG4gICAgaWYgKHR5cGVvZiBsID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICB0cnkgeyByZXR1cm4gISFsKHRoaXMuZGlhbG9nUmVmKTsgfSBjYXRjaCB7IHJldHVybiBmYWxzZTsgfVxuICAgIH1cbiAgICByZXR1cm4gISFsO1xuICB9XG5cbiAgYnV0dG9uSG9zdENsYXNzZXMoYnV0dG9uOiBEaWFsb2dCdXR0b25Db25maWc8VFJlc3VsdD4pOiBzdHJpbmdbXSB7XG4gICAgY29uc3Qgcm9sZSA9IHRoaXMubm9ybWFsaXplUm9sZShidXR0b24ucm9sZSk7XG5cbiAgICBpZiAocm9sZSA9PT0gJ3dhcm4nKSB7XG4gICAgICByZXR1cm4gWydjcWEtZGlhbG9nLWJ0bi13YXJuJ107XG4gICAgfVxuXG4gICAgcmV0dXJuIFtdO1xuICB9XG5cbiAgcHJpdmF0ZSBtYXBBbGlnbm1lbnRUb0NsYXNzKGFsaWdubWVudDogRGlhbG9nQnV0dG9uQWxpZ25tZW50KTogc3RyaW5nIHtcbiAgICBzd2l0Y2ggKGFsaWdubWVudCkge1xuICAgICAgY2FzZSAnbGVmdCc6XG4gICAgICAgIHJldHVybiAnY3FhLWp1c3RpZnktc3RhcnQnO1xuICAgICAgY2FzZSAnY2VudGVyJzpcbiAgICAgICAgcmV0dXJuICdjcWEtanVzdGlmeS1jZW50ZXInO1xuICAgICAgY2FzZSAncmlnaHQnOlxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuICdjcWEtanVzdGlmeS1lbmQnO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgbWFya0NvbnRlbnRBdHRhY2hlZCgpOiB2b2lkIHtcbiAgICB0aGlzLmNvbnRlbnRBdHRhY2hlZCA9IHRydWU7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBwcml2YXRlIG5vcm1hbGl6ZVJvbGUocm9sZTogc3RyaW5nIHwgdW5kZWZpbmVkKTogc3RyaW5nIHtcbiAgICBjb25zdCByYXcgPSAocm9sZSA/PyAnc2Vjb25kYXJ5JykudHJpbSgpLnNwbGl0KC9cXHMrLylbMF0udG9Mb3dlckNhc2UoKTtcbiAgICAvLyBBY2NlcHQgY29tbW9uIGRlc3RydWN0aXZlLWFjdGlvbiBzeW5vbnltcyBhbmQgbWFwIHRoZW0gdG8gJ3dhcm4nLlxuICAgIGlmIChyYXcgPT09ICdlcnJvcicgfHwgcmF3ID09PSAnZGFuZ2VyJyB8fCByYXcgPT09ICdkZXN0cnVjdGl2ZScpIHtcbiAgICAgIHJldHVybiAnd2Fybic7XG4gICAgfVxuICAgIHJldHVybiByYXc7XG4gIH1cbn1cblxuXG4iLCI8ZGl2IGNsYXNzPVwiY3FhLXVpLXJvb3RcIj5cbiAgPGRpdiBjbGFzcz1cImNxYS1mbGV4IGNxYS13LWZ1bGwgY3FhLWp1c3RpZnktY2VudGVyIGNxYS1weC00IHNtOmNxYS1weC02XCI+XG4gICAgPGRpdiBbbmdDbGFzc109XCJwYW5lbENsYXNzTGlzdFwiIFtuZ1N0eWxlXT1cInBhbmVsU3R5bGVzXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiY3FhLWZsZXggY3FhLWZsZXgtY29sIGNxYS1nYXAtNVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY3FhLWZsZXggY3FhLWZsZXgtY29sIGNxYS1nYXAtM1wiPlxuICAgICAgICAgIDxoMiBjbGFzcz1cImNxYS10ZXh0LWxnIGNxYS1mb250LXNlbWlib2xkIGNxYS10ZXh0LWRpYWxvZ1wiPlxuICAgICAgICAgICAge3sgY29uZmlnLnRpdGxlIH19XG4gICAgICAgICAgPC9oMj5cblxuICAgICAgICAgIDxwICpuZ0lmPVwiY29uZmlnLmRlc2NyaXB0aW9uXCIgY2xhc3M9XCJjcWEtdGV4dC1zbSBjcWEtbGVhZGluZy02IGNxYS10ZXh0LWRpYWxvZy1zZWNvbmRhcnlcIj5cbiAgICAgICAgICAgIHt7IGNvbmZpZy5kZXNjcmlwdGlvbiB9fVxuICAgICAgICAgIDwvcD5cblxuICAgICAgICAgIDxkaXYgKm5nSWY9XCJjb25maWcud2FybmluZ1wiXG4gICAgICAgICAgICBjbGFzcz1cImNxYS1yb3VuZGVkLXhsIGNxYS1ib3JkZXIgY3FhLWJvcmRlci1yZWQtMjAwIGNxYS1iZy1yZWQtNTAgY3FhLXB4LTQgY3FhLXB5LTMgY3FhLXRleHQtc20gY3FhLWxlYWRpbmctNSBjcWEtdGV4dC1yZWQtNzAwXCI+XG4gICAgICAgICAgICB7eyBjb25maWcud2FybmluZyB9fVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwiY3FhLXRleHQtc20gY3FhLXRleHQtZGlhbG9nXCIgW2NsYXNzLmhpZGRlbl09XCIhY29udGVudEF0dGFjaGVkXCI+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIGNka1BvcnRhbE91dGxldD48L25nLXRlbXBsYXRlPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwiY3FhLW10LTQgY3FhLWZsZXggY3FhLWZsZXgtd3JhcCBjcWEtZ2FwLTNcIiBbbmdDbGFzc109XCJidXR0b25BbGlnbm1lbnRDbGFzc1wiPlxuICAgICAgICAgIDxjcWEtYnV0dG9uICpuZ0Zvcj1cImxldCBidXR0b24gb2YgY29uZmlnLmJ1dHRvbnNcIiB0eXBlPVwiYnV0dG9uXCIgW3ZhcmlhbnRdPVwiYnV0dG9uVmFyaWFudChidXR0b24pXCJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJpc0J1dHRvbkRpc2FibGVkKGJ1dHRvbilcIlxuICAgICAgICAgICAgW2xvYWRpbmddPVwiaXNCdXR0b25Mb2FkaW5nKGJ1dHRvbilcIlxuICAgICAgICAgICAgW25nQ2xhc3NdPVwiYnV0dG9uSG9zdENsYXNzZXMoYnV0dG9uKVwiIChjbGlja2VkKT1cIm9uQnV0dG9uQ2xpY2soYnV0dG9uKVwiPlxuICAgICAgICAgICAge3sgYnV0dG9uLmxhYmVsIH19XG4gICAgICAgICAgPC9jcWEtYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PiJdfQ==
@@ -151,11 +151,11 @@ export class NavItemComponent {
151
151
  }, NavItemComponent.FLYOUT_CLOSE_DELAY_MS);
152
152
  }
153
153
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NavItemComponent, deps: [{ token: i1.Overlay }], target: i0.ɵɵFactoryTarget.Component });
154
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: NavItemComponent, selector: "cqa-nav-item", inputs: { item: "item", isActive: "isActive", isExpanded: "isExpanded", isOpen: "isOpen", activeNavId: "activeNavId" }, outputs: { itemClick: "itemClick" }, viewQueries: [{ propertyName: "navHostRef", first: true, predicate: ["navHost"], descendants: true }], ngImport: i0, template: "<div id=\"cqa-ui-root\" style=\"display:block\">\n <div\n #navHost\n class=\"cqa-nav-host\"\n [class.cqa-nav-host--collapsed]=\"!isExpanded\"\n (mouseenter)=\"onHostMouseEnter()\"\n (mouseleave)=\"onHostMouseLeave()\"\n (focusin)=\"onHostFocusIn($event)\"\n (focusout)=\"onHostFocusOut($event)\">\n\n <button\n cdkOverlayOrigin\n #flyoutOrigin=\"cdkOverlayOrigin\"\n class=\"cqa-nav-item\"\n [class.cqa-nav-item--active]=\"isActive\"\n [class.cqa-nav-item--has-children]=\"hasChildren\"\n [class.cqa-nav-item--collapsed]=\"!isExpanded\"\n [class.cqa-nav-item--disabled]=\"item?.disabled\"\n [class.cqa-nav-item--has-live]=\"item?.status === 'live'\"\n [matTooltip]=\"collapsedRailTooltip\"\n [matTooltipDisabled]=\"!collapsedRailTooltip\"\n [matTooltipClass]=\"collapsedRailTooltipClass\"\n matTooltipPosition=\"right\"\n (click)=\"onClick()\"\n type=\"button\"\n [attr.aria-label]=\"!isExpanded ? (item?.label || '') : null\"\n [attr.aria-expanded]=\"!isExpanded && hasChildren ? showCollapsedFlyout : null\"\n [attr.aria-haspopup]=\"!isExpanded && hasChildren ? 'menu' : null\">\n\n <!-- Icon -->\n <span class=\"cqa-nav-icon\">\n <i [class]=\"item?.iconClass\"></i>\n </span>\n\n <!-- Label (hidden when sidebar collapsed) -->\n <span class=\"cqa-nav-label\" [class.cqa-nav-label--visible]=\"isExpanded\">\n {{ item?.label }}\n </span>\n\n <!-- Trailing slot: only shown when expanded -->\n <ng-container *ngIf=\"isExpanded\">\n <span *ngIf=\"item?.badge && !hasChildren\" class=\"cqa-nav-badge\">{{ item.badge }}</span>\n\n <span\n *ngIf=\"item?.status === 'live' && !hasChildren\"\n class=\"cqa-nav-status-dot cqa-nav-status-dot--live\">\n </span>\n\n <span\n *ngIf=\"item?.status === 'danger' && !hasChildren\"\n class=\"cqa-nav-status-dot cqa-nav-status-dot--danger\">\n </span>\n\n <span *ngIf=\"hasChildren\" class=\"cqa-nav-chev\" [class.cqa-nav-chev--open]=\"isOpen\">\n <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"\n stroke-linecap=\"round\" stroke-linejoin=\"round\" width=\"14\" height=\"14\">\n <polyline points=\"9,6 15,12 9,18\"/>\n </svg>\n </span>\n </ng-container>\n\n <span\n *ngIf=\"!isExpanded && item?.status === 'live'\"\n class=\"cqa-nav-live-corner\">\n </span>\n </button>\n\n <!-- Collapsed parent submenu: CDK overlay (outside aside / scrolling nav) -->\n <ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayOrigin]=\"flyoutOrigin\"\n [cdkConnectedOverlayOpen]=\"collapsedFlyoutOpen\"\n [cdkConnectedOverlayPositions]=\"collapsedFlyoutPositions\"\n [cdkConnectedOverlayHasBackdrop]=\"false\"\n [cdkConnectedOverlayPush]=\"true\"\n [cdkConnectedOverlayScrollStrategy]=\"flyoutScrollStrategy\"\n [cdkConnectedOverlayPanelClass]=\"'cqa-nav-flyout-overlay-pane'\"\n (overlayOutsideClick)=\"closeCollapsedFlyout()\"\n (detach)=\"closeCollapsedFlyout()\">\n <div\n class=\"cqa-nav-flyout-overlay cqa-nav-flyout-panel\"\n role=\"menu\"\n [attr.aria-label]=\"item.label\"\n (mouseenter)=\"onFlyoutOverlayPointerEnter()\"\n (mouseleave)=\"onFlyoutOverlayPointerLeave()\"\n (focusout)=\"onFlyoutOverlayFocusOut($event)\">\n <div class=\"cqa-nav-flyout-panel-title\">{{ item.label }}</div>\n <button\n *ngFor=\"let child of item?.children\"\n type=\"button\"\n role=\"menuitem\"\n class=\"cqa-nav-flyout-row\"\n [class.cqa-nav-flyout-row--active]=\"isChildRowActive(child.id)\"\n [disabled]=\"child.disabled\"\n (click)=\"onChildRowClick($event, child)\">\n <span class=\"cqa-nav-flyout-row-icon\">\n <i *ngIf=\"child.iconClass\" [class]=\"child.iconClass\"></i>\n </span>\n <span class=\"cqa-nav-flyout-row-label\">{{ child.label }}</span>\n <span *ngIf=\"child.isNew\" class=\"cqa-nav-flyout-row-new\">New</span>\n </button>\n </div>\n </ng-template>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.cqa-nav-host{display:block;width:100%}.cqa-nav-host--collapsed{display:flex;flex-direction:column;align-items:center;position:relative;z-index:1}.cqa-nav-host--collapsed:hover,.cqa-nav-host--collapsed:focus-within{z-index:30}.cqa-nav-item{display:flex;align-items:center;gap:12px;padding:9px 10px;margin:1px 8px;border-radius:9px;color:#ffffffd9;font-size:14px;font-weight:600;line-height:normal;width:calc(100% - 16px);text-align:left;background:transparent;border:none;cursor:pointer;position:relative;transition:background .12s,color .12s;overflow:hidden;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.cqa-nav-item:not(.cqa-nav-item--collapsed){color:#d8d9fc}.cqa-nav-item:hover:not(.cqa-nav-item--active):not(.cqa-nav-item--disabled){background:#ffffff1f;color:#fff}.cqa-nav-item--active:not(.cqa-nav-item--collapsed){background:#b1b2f81f;font-weight:600;margin:1px 10px;width:calc(100% - 20px);box-shadow:inset 3px 0 #b1b2f8;color:#fff}.cqa-nav-item--active:not(.cqa-nav-item--collapsed).cqa-nav-item--has-children{color:#d8d9fc}.cqa-nav-item--active:not(.cqa-nav-item--collapsed):hover{background:#b1b2f829}.cqa-nav-item--active:not(.cqa-nav-item--collapsed).cqa-nav-item--has-children:hover{color:#d8d9fc}.cqa-nav-item--active:not(.cqa-nav-item--collapsed):not(.cqa-nav-item--has-children):hover{color:#fff}.cqa-nav-item--active.cqa-nav-item--collapsed{background:#b1b2f86b;color:#fff;font-weight:600;box-shadow:inset 0 0 0 1px #d8d9fc4d}.cqa-nav-item.cqa-nav-item--collapsed:hover:not(.cqa-nav-item--active):not(.cqa-nav-item--disabled){background:#4c50ef;box-shadow:none}.cqa-nav-item--disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.cqa-nav-item.cqa-nav-item--collapsed{justify-content:center;align-items:center;gap:0;padding:9px 0;margin:1px 0;width:40px;max-width:100%;box-sizing:border-box;color:#ffffffe0;overflow:visible;z-index:1}.cqa-nav-item.cqa-nav-item--collapsed .cqa-nav-label{flex:0 0 0;width:0;min-width:0;height:0;margin:0;padding:0;overflow:hidden;opacity:0;border:0;pointer-events:none}.cqa-nav-item.cqa-nav-item--collapsed:hover{z-index:auto}.cqa-nav-icon{width:20px;height:20px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:18px;color:inherit}.cqa-nav-item--collapsed .cqa-nav-icon i{display:flex;align-items:center;justify-content:center;width:100%;height:100%;line-height:1}.cqa-nav-label{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:0;transition:opacity .16s 80ms;color:inherit}.cqa-nav-label--visible{opacity:1}.cqa-nav-badge{font-size:11px;font-weight:600;background:#ffffff2e;color:#fff;padding:1px 7px;border-radius:999px;flex-shrink:0}.cqa-nav-status-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.cqa-nav-status-dot--live{background:#0dbd7d;box-shadow:0 0 6px #0dbd7d;animation:cqa-nav-pulse 2s ease-in-out infinite}.cqa-nav-status-dot--danger{background:#ee3f3f}.cqa-nav-chev{width:14px;height:14px;opacity:.6;flex-shrink:0;transition:transform .2s;display:flex;align-items:center;justify-content:center}.cqa-nav-chev--open{transform:rotate(90deg)}.cqa-nav-live-corner{position:absolute;top:5px;right:5px;width:9px;height:9px;background:#0dbd7d;border-radius:50%;border:2px solid #3f43ee;box-shadow:0 0 6px #0dbd7d}@keyframes cqa-nav-pulse{0%,to{opacity:1}50%{opacity:.4}}.cqa-nav-flyout-panel{min-width:188px;max-width:280px;padding:10px 8px 8px;background:#4c50ef;border-radius:10px;box-shadow:0 12px 32px #00000047;border:1px solid rgba(255,255,255,.12);pointer-events:auto;text-align:left;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.cqa-nav-flyout-panel-title{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#ffffff8c;padding:2px 8px 8px;line-height:1.2}.cqa-nav-flyout-row{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;margin:0 0 2px;border:none;border-radius:8px;background:transparent;color:#fff;font-size:13px;font-weight:500;text-align:left;cursor:pointer;transition:background .12s,color .12s;font-family:inherit}.cqa-nav-flyout-row:last-child{margin-bottom:0}.cqa-nav-flyout-row:hover:not(:disabled){background:#ffffff1a;color:#fff}.cqa-nav-flyout-row:disabled{opacity:.45;cursor:not-allowed}.cqa-nav-flyout-row--active{background:#8a8cf4;color:#fbfcff;font-weight:600}.cqa-nav-flyout-row--active:hover:not(:disabled){background:#8a8cf4;color:#fbfcff}.cqa-nav-flyout-row-icon{width:16px;height:16px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:14px;opacity:.95}.cqa-nav-flyout-row-label{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cqa-nav-flyout-row-new{flex-shrink:0;font-size:10px;font-weight:700;padding:2px 7px;border-radius:999px;background:#feecbd;color:#7e6012;border:1px solid #fddf92}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: i1.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "directive", type: i1.CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }] });
154
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: NavItemComponent, selector: "cqa-nav-item", inputs: { item: "item", isActive: "isActive", isExpanded: "isExpanded", isOpen: "isOpen", activeNavId: "activeNavId" }, outputs: { itemClick: "itemClick" }, viewQueries: [{ propertyName: "navHostRef", first: true, predicate: ["navHost"], descendants: true }], ngImport: i0, template: "<div class=\"cqa-nav-surface\">\n <div\n #navHost\n class=\"cqa-nav-host\"\n [class.cqa-nav-host--collapsed]=\"!isExpanded\"\n (mouseenter)=\"onHostMouseEnter()\"\n (mouseleave)=\"onHostMouseLeave()\"\n (focusin)=\"onHostFocusIn($event)\"\n (focusout)=\"onHostFocusOut($event)\">\n\n <button\n cdkOverlayOrigin\n #flyoutOrigin=\"cdkOverlayOrigin\"\n class=\"cqa-nav-item\"\n [class.cqa-nav-item--active]=\"isActive\"\n [class.cqa-nav-item--has-children]=\"hasChildren\"\n [class.cqa-nav-item--collapsed]=\"!isExpanded\"\n [class.cqa-nav-item--disabled]=\"item?.disabled\"\n [class.cqa-nav-item--has-live]=\"item?.status === 'live'\"\n [matTooltip]=\"collapsedRailTooltip\"\n [matTooltipDisabled]=\"!collapsedRailTooltip\"\n [matTooltipClass]=\"collapsedRailTooltipClass\"\n matTooltipPosition=\"right\"\n (click)=\"onClick()\"\n type=\"button\"\n [attr.aria-label]=\"!isExpanded ? (item?.label || '') : null\"\n [attr.aria-expanded]=\"!isExpanded && hasChildren ? showCollapsedFlyout : null\"\n [attr.aria-haspopup]=\"!isExpanded && hasChildren ? 'menu' : null\">\n\n <!-- Icon -->\n <span class=\"cqa-nav-icon\">\n <i [class]=\"item?.iconClass\"></i>\n </span>\n\n <!-- Label (hidden when sidebar collapsed) -->\n <span class=\"cqa-nav-label\" [class.cqa-nav-label--visible]=\"isExpanded\">\n {{ item?.label }}\n </span>\n\n <!-- Trailing slot: only shown when expanded -->\n <ng-container *ngIf=\"isExpanded\">\n <span *ngIf=\"item?.badge && !hasChildren\" class=\"cqa-nav-badge\">{{ item.badge }}</span>\n\n <span\n *ngIf=\"item?.status === 'live' && !hasChildren\"\n class=\"cqa-nav-status-dot cqa-nav-status-dot--live\">\n </span>\n\n <span\n *ngIf=\"item?.status === 'danger' && !hasChildren\"\n class=\"cqa-nav-status-dot cqa-nav-status-dot--danger\">\n </span>\n\n <span *ngIf=\"hasChildren\" class=\"cqa-nav-chev\" [class.cqa-nav-chev--open]=\"isOpen\">\n <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"\n stroke-linecap=\"round\" stroke-linejoin=\"round\" width=\"14\" height=\"14\">\n <polyline points=\"9,6 15,12 9,18\"/>\n </svg>\n </span>\n </ng-container>\n\n <span\n *ngIf=\"!isExpanded && item?.status === 'live'\"\n class=\"cqa-nav-live-corner\">\n </span>\n </button>\n\n <!-- Collapsed parent submenu: CDK overlay (outside aside / scrolling nav) -->\n <ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayOrigin]=\"flyoutOrigin\"\n [cdkConnectedOverlayOpen]=\"collapsedFlyoutOpen\"\n [cdkConnectedOverlayPositions]=\"collapsedFlyoutPositions\"\n [cdkConnectedOverlayHasBackdrop]=\"false\"\n [cdkConnectedOverlayPush]=\"true\"\n [cdkConnectedOverlayScrollStrategy]=\"flyoutScrollStrategy\"\n [cdkConnectedOverlayPanelClass]=\"'cqa-nav-flyout-overlay-pane'\"\n (overlayOutsideClick)=\"closeCollapsedFlyout()\"\n (detach)=\"closeCollapsedFlyout()\">\n <div\n class=\"cqa-nav-flyout-overlay cqa-nav-flyout-panel\"\n role=\"menu\"\n [attr.aria-label]=\"item.label\"\n (mouseenter)=\"onFlyoutOverlayPointerEnter()\"\n (mouseleave)=\"onFlyoutOverlayPointerLeave()\"\n (focusout)=\"onFlyoutOverlayFocusOut($event)\">\n <div class=\"cqa-nav-flyout-panel-title\">{{ item.label }}</div>\n <button\n *ngFor=\"let child of item?.children\"\n type=\"button\"\n role=\"menuitem\"\n class=\"cqa-nav-flyout-row\"\n [class.cqa-nav-flyout-row--active]=\"isChildRowActive(child.id)\"\n [disabled]=\"child.disabled\"\n (click)=\"onChildRowClick($event, child)\">\n <span class=\"cqa-nav-flyout-row-icon\">\n <i *ngIf=\"child.iconClass\" [class]=\"child.iconClass\"></i>\n </span>\n <span class=\"cqa-nav-flyout-row-label\">{{ child.label }}</span>\n <span *ngIf=\"child.isNew\" class=\"cqa-nav-flyout-row-new\">New</span>\n </button>\n </div>\n </ng-template>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.cqa-nav-surface,.cqa-nav-host{display:block;width:100%}.cqa-nav-host--collapsed{display:flex;flex-direction:column;align-items:center;position:relative;z-index:1}.cqa-nav-host--collapsed:hover,.cqa-nav-host--collapsed:focus-within{z-index:30}.cqa-nav-item{display:flex;align-items:center;gap:12px;padding:9px 10px;margin:1px 8px;border-radius:9px;color:#ffffffd9;font-size:14px;font-weight:600;line-height:1;letter-spacing:0;width:calc(100% - 16px);text-align:left;background:transparent;border:none;cursor:pointer;position:relative;transition:background .12s,color .12s;overflow:hidden;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.cqa-nav-item:not(.cqa-nav-item--collapsed){color:#d8d9fc}.cqa-nav-item:hover:not(.cqa-nav-item--active):not(.cqa-nav-item--disabled){background:#ffffff1f;color:#fff}.cqa-nav-item--active:not(.cqa-nav-item--collapsed){background:#8a8cf4;font-weight:600;box-shadow:inset 0 0 0 1px #d8d9fc4d;color:#fff}.cqa-nav-item--active:not(.cqa-nav-item--collapsed).cqa-nav-item--has-children{color:#d8d9fc}.cqa-nav-item--active:not(.cqa-nav-item--collapsed):hover{background:#8a8cf4}.cqa-nav-item--active:not(.cqa-nav-item--collapsed).cqa-nav-item--has-children:hover{color:#d8d9fc}.cqa-nav-item--active:not(.cqa-nav-item--collapsed):not(.cqa-nav-item--has-children):hover{color:#fff}.cqa-nav-item--active.cqa-nav-item--collapsed{background:#b1b2f86b;color:#fff;font-weight:600;box-shadow:inset 0 0 0 1px #d8d9fc4d}.cqa-nav-item.cqa-nav-item--collapsed:hover:not(.cqa-nav-item--active):not(.cqa-nav-item--disabled){background:#4c50ef;box-shadow:none}.cqa-nav-item--disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.cqa-nav-item.cqa-nav-item--collapsed{justify-content:center;align-items:center;gap:0;padding:9px 0;margin:1px 0;width:40px;max-width:100%;box-sizing:border-box;color:#ffffffe0;overflow:visible;z-index:1}.cqa-nav-item.cqa-nav-item--collapsed .cqa-nav-label{flex:0 0 0;width:0;min-width:0;height:0;margin:0;padding:0;overflow:hidden;opacity:0;border:0;pointer-events:none}.cqa-nav-item.cqa-nav-item--collapsed:hover{z-index:auto}.cqa-nav-icon{width:20px;height:20px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:18px;color:inherit}.cqa-nav-item--collapsed .cqa-nav-icon i{display:flex;align-items:center;justify-content:center;width:100%;height:100%;line-height:1}.cqa-nav-label{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:0;transition:opacity .16s 80ms;color:inherit}.cqa-nav-label--visible{opacity:1}.cqa-nav-badge{font-size:11px;font-weight:600;background:#ffffff2e;color:#fff;padding:1px 7px;border-radius:999px;flex-shrink:0}.cqa-nav-status-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.cqa-nav-status-dot--live{background:#0dbd7d;box-shadow:0 0 6px #0dbd7d;animation:cqa-nav-pulse 2s ease-in-out infinite}.cqa-nav-status-dot--danger{background:#ee3f3f}.cqa-nav-chev{width:14px;height:14px;opacity:.6;flex-shrink:0;transition:transform .2s;display:flex;align-items:center;justify-content:center}.cqa-nav-chev--open{transform:rotate(90deg)}.cqa-nav-live-corner{position:absolute;top:5px;right:5px;width:9px;height:9px;background:#0dbd7d;border-radius:50%;border:2px solid #3f43ee;box-shadow:0 0 6px #0dbd7d}@keyframes cqa-nav-pulse{0%,to{opacity:1}50%{opacity:.4}}.cqa-nav-flyout-panel{min-width:188px;max-width:280px;padding:10px 8px 8px;background:#4c50ef;border-radius:10px;box-shadow:0 12px 32px #00000047;border:1px solid rgba(255,255,255,.12);pointer-events:auto;text-align:left;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.cqa-nav-flyout-panel-title{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#ffffff8c;padding:2px 8px 8px;line-height:1.2}.cqa-nav-flyout-row{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;margin:0 0 2px;border:none;border-radius:8px;background:transparent;color:#fff;font-size:13px;font-weight:500;text-align:left;cursor:pointer;transition:background .12s,color .12s;font-family:inherit}.cqa-nav-flyout-row:last-child{margin-bottom:0}.cqa-nav-flyout-row:hover:not(:disabled){background:#ffffff1a;color:#fff}.cqa-nav-flyout-row:disabled{opacity:.45;cursor:not-allowed}.cqa-nav-flyout-row--active{background:#8a8cf4;color:#fbfcff;font-weight:600}.cqa-nav-flyout-row--active:hover:not(:disabled){background:#8a8cf4;color:#fbfcff}.cqa-nav-flyout-row-icon{width:16px;height:16px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:14px;opacity:.95}.cqa-nav-flyout-row-label{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cqa-nav-flyout-row-new{flex-shrink:0;font-size:10px;font-weight:700;padding:2px 7px;border-radius:999px;background:#feecbd;color:#7e6012;border:1px solid #fddf92}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: i1.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "directive", type: i1.CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }] });
155
155
  }
156
156
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NavItemComponent, decorators: [{
157
157
  type: Component,
158
- args: [{ selector: 'cqa-nav-item', template: "<div id=\"cqa-ui-root\" style=\"display:block\">\n <div\n #navHost\n class=\"cqa-nav-host\"\n [class.cqa-nav-host--collapsed]=\"!isExpanded\"\n (mouseenter)=\"onHostMouseEnter()\"\n (mouseleave)=\"onHostMouseLeave()\"\n (focusin)=\"onHostFocusIn($event)\"\n (focusout)=\"onHostFocusOut($event)\">\n\n <button\n cdkOverlayOrigin\n #flyoutOrigin=\"cdkOverlayOrigin\"\n class=\"cqa-nav-item\"\n [class.cqa-nav-item--active]=\"isActive\"\n [class.cqa-nav-item--has-children]=\"hasChildren\"\n [class.cqa-nav-item--collapsed]=\"!isExpanded\"\n [class.cqa-nav-item--disabled]=\"item?.disabled\"\n [class.cqa-nav-item--has-live]=\"item?.status === 'live'\"\n [matTooltip]=\"collapsedRailTooltip\"\n [matTooltipDisabled]=\"!collapsedRailTooltip\"\n [matTooltipClass]=\"collapsedRailTooltipClass\"\n matTooltipPosition=\"right\"\n (click)=\"onClick()\"\n type=\"button\"\n [attr.aria-label]=\"!isExpanded ? (item?.label || '') : null\"\n [attr.aria-expanded]=\"!isExpanded && hasChildren ? showCollapsedFlyout : null\"\n [attr.aria-haspopup]=\"!isExpanded && hasChildren ? 'menu' : null\">\n\n <!-- Icon -->\n <span class=\"cqa-nav-icon\">\n <i [class]=\"item?.iconClass\"></i>\n </span>\n\n <!-- Label (hidden when sidebar collapsed) -->\n <span class=\"cqa-nav-label\" [class.cqa-nav-label--visible]=\"isExpanded\">\n {{ item?.label }}\n </span>\n\n <!-- Trailing slot: only shown when expanded -->\n <ng-container *ngIf=\"isExpanded\">\n <span *ngIf=\"item?.badge && !hasChildren\" class=\"cqa-nav-badge\">{{ item.badge }}</span>\n\n <span\n *ngIf=\"item?.status === 'live' && !hasChildren\"\n class=\"cqa-nav-status-dot cqa-nav-status-dot--live\">\n </span>\n\n <span\n *ngIf=\"item?.status === 'danger' && !hasChildren\"\n class=\"cqa-nav-status-dot cqa-nav-status-dot--danger\">\n </span>\n\n <span *ngIf=\"hasChildren\" class=\"cqa-nav-chev\" [class.cqa-nav-chev--open]=\"isOpen\">\n <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"\n stroke-linecap=\"round\" stroke-linejoin=\"round\" width=\"14\" height=\"14\">\n <polyline points=\"9,6 15,12 9,18\"/>\n </svg>\n </span>\n </ng-container>\n\n <span\n *ngIf=\"!isExpanded && item?.status === 'live'\"\n class=\"cqa-nav-live-corner\">\n </span>\n </button>\n\n <!-- Collapsed parent submenu: CDK overlay (outside aside / scrolling nav) -->\n <ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayOrigin]=\"flyoutOrigin\"\n [cdkConnectedOverlayOpen]=\"collapsedFlyoutOpen\"\n [cdkConnectedOverlayPositions]=\"collapsedFlyoutPositions\"\n [cdkConnectedOverlayHasBackdrop]=\"false\"\n [cdkConnectedOverlayPush]=\"true\"\n [cdkConnectedOverlayScrollStrategy]=\"flyoutScrollStrategy\"\n [cdkConnectedOverlayPanelClass]=\"'cqa-nav-flyout-overlay-pane'\"\n (overlayOutsideClick)=\"closeCollapsedFlyout()\"\n (detach)=\"closeCollapsedFlyout()\">\n <div\n class=\"cqa-nav-flyout-overlay cqa-nav-flyout-panel\"\n role=\"menu\"\n [attr.aria-label]=\"item.label\"\n (mouseenter)=\"onFlyoutOverlayPointerEnter()\"\n (mouseleave)=\"onFlyoutOverlayPointerLeave()\"\n (focusout)=\"onFlyoutOverlayFocusOut($event)\">\n <div class=\"cqa-nav-flyout-panel-title\">{{ item.label }}</div>\n <button\n *ngFor=\"let child of item?.children\"\n type=\"button\"\n role=\"menuitem\"\n class=\"cqa-nav-flyout-row\"\n [class.cqa-nav-flyout-row--active]=\"isChildRowActive(child.id)\"\n [disabled]=\"child.disabled\"\n (click)=\"onChildRowClick($event, child)\">\n <span class=\"cqa-nav-flyout-row-icon\">\n <i *ngIf=\"child.iconClass\" [class]=\"child.iconClass\"></i>\n </span>\n <span class=\"cqa-nav-flyout-row-label\">{{ child.label }}</span>\n <span *ngIf=\"child.isNew\" class=\"cqa-nav-flyout-row-new\">New</span>\n </button>\n </div>\n </ng-template>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.cqa-nav-host{display:block;width:100%}.cqa-nav-host--collapsed{display:flex;flex-direction:column;align-items:center;position:relative;z-index:1}.cqa-nav-host--collapsed:hover,.cqa-nav-host--collapsed:focus-within{z-index:30}.cqa-nav-item{display:flex;align-items:center;gap:12px;padding:9px 10px;margin:1px 8px;border-radius:9px;color:#ffffffd9;font-size:14px;font-weight:600;line-height:normal;width:calc(100% - 16px);text-align:left;background:transparent;border:none;cursor:pointer;position:relative;transition:background .12s,color .12s;overflow:hidden;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.cqa-nav-item:not(.cqa-nav-item--collapsed){color:#d8d9fc}.cqa-nav-item:hover:not(.cqa-nav-item--active):not(.cqa-nav-item--disabled){background:#ffffff1f;color:#fff}.cqa-nav-item--active:not(.cqa-nav-item--collapsed){background:#b1b2f81f;font-weight:600;margin:1px 10px;width:calc(100% - 20px);box-shadow:inset 3px 0 #b1b2f8;color:#fff}.cqa-nav-item--active:not(.cqa-nav-item--collapsed).cqa-nav-item--has-children{color:#d8d9fc}.cqa-nav-item--active:not(.cqa-nav-item--collapsed):hover{background:#b1b2f829}.cqa-nav-item--active:not(.cqa-nav-item--collapsed).cqa-nav-item--has-children:hover{color:#d8d9fc}.cqa-nav-item--active:not(.cqa-nav-item--collapsed):not(.cqa-nav-item--has-children):hover{color:#fff}.cqa-nav-item--active.cqa-nav-item--collapsed{background:#b1b2f86b;color:#fff;font-weight:600;box-shadow:inset 0 0 0 1px #d8d9fc4d}.cqa-nav-item.cqa-nav-item--collapsed:hover:not(.cqa-nav-item--active):not(.cqa-nav-item--disabled){background:#4c50ef;box-shadow:none}.cqa-nav-item--disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.cqa-nav-item.cqa-nav-item--collapsed{justify-content:center;align-items:center;gap:0;padding:9px 0;margin:1px 0;width:40px;max-width:100%;box-sizing:border-box;color:#ffffffe0;overflow:visible;z-index:1}.cqa-nav-item.cqa-nav-item--collapsed .cqa-nav-label{flex:0 0 0;width:0;min-width:0;height:0;margin:0;padding:0;overflow:hidden;opacity:0;border:0;pointer-events:none}.cqa-nav-item.cqa-nav-item--collapsed:hover{z-index:auto}.cqa-nav-icon{width:20px;height:20px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:18px;color:inherit}.cqa-nav-item--collapsed .cqa-nav-icon i{display:flex;align-items:center;justify-content:center;width:100%;height:100%;line-height:1}.cqa-nav-label{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:0;transition:opacity .16s 80ms;color:inherit}.cqa-nav-label--visible{opacity:1}.cqa-nav-badge{font-size:11px;font-weight:600;background:#ffffff2e;color:#fff;padding:1px 7px;border-radius:999px;flex-shrink:0}.cqa-nav-status-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.cqa-nav-status-dot--live{background:#0dbd7d;box-shadow:0 0 6px #0dbd7d;animation:cqa-nav-pulse 2s ease-in-out infinite}.cqa-nav-status-dot--danger{background:#ee3f3f}.cqa-nav-chev{width:14px;height:14px;opacity:.6;flex-shrink:0;transition:transform .2s;display:flex;align-items:center;justify-content:center}.cqa-nav-chev--open{transform:rotate(90deg)}.cqa-nav-live-corner{position:absolute;top:5px;right:5px;width:9px;height:9px;background:#0dbd7d;border-radius:50%;border:2px solid #3f43ee;box-shadow:0 0 6px #0dbd7d}@keyframes cqa-nav-pulse{0%,to{opacity:1}50%{opacity:.4}}.cqa-nav-flyout-panel{min-width:188px;max-width:280px;padding:10px 8px 8px;background:#4c50ef;border-radius:10px;box-shadow:0 12px 32px #00000047;border:1px solid rgba(255,255,255,.12);pointer-events:auto;text-align:left;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.cqa-nav-flyout-panel-title{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#ffffff8c;padding:2px 8px 8px;line-height:1.2}.cqa-nav-flyout-row{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;margin:0 0 2px;border:none;border-radius:8px;background:transparent;color:#fff;font-size:13px;font-weight:500;text-align:left;cursor:pointer;transition:background .12s,color .12s;font-family:inherit}.cqa-nav-flyout-row:last-child{margin-bottom:0}.cqa-nav-flyout-row:hover:not(:disabled){background:#ffffff1a;color:#fff}.cqa-nav-flyout-row:disabled{opacity:.45;cursor:not-allowed}.cqa-nav-flyout-row--active{background:#8a8cf4;color:#fbfcff;font-weight:600}.cqa-nav-flyout-row--active:hover:not(:disabled){background:#8a8cf4;color:#fbfcff}.cqa-nav-flyout-row-icon{width:16px;height:16px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:14px;opacity:.95}.cqa-nav-flyout-row-label{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cqa-nav-flyout-row-new{flex-shrink:0;font-size:10px;font-weight:700;padding:2px 7px;border-radius:999px;background:#feecbd;color:#7e6012;border:1px solid #fddf92}\n"] }]
158
+ args: [{ selector: 'cqa-nav-item', template: "<div class=\"cqa-nav-surface\">\n <div\n #navHost\n class=\"cqa-nav-host\"\n [class.cqa-nav-host--collapsed]=\"!isExpanded\"\n (mouseenter)=\"onHostMouseEnter()\"\n (mouseleave)=\"onHostMouseLeave()\"\n (focusin)=\"onHostFocusIn($event)\"\n (focusout)=\"onHostFocusOut($event)\">\n\n <button\n cdkOverlayOrigin\n #flyoutOrigin=\"cdkOverlayOrigin\"\n class=\"cqa-nav-item\"\n [class.cqa-nav-item--active]=\"isActive\"\n [class.cqa-nav-item--has-children]=\"hasChildren\"\n [class.cqa-nav-item--collapsed]=\"!isExpanded\"\n [class.cqa-nav-item--disabled]=\"item?.disabled\"\n [class.cqa-nav-item--has-live]=\"item?.status === 'live'\"\n [matTooltip]=\"collapsedRailTooltip\"\n [matTooltipDisabled]=\"!collapsedRailTooltip\"\n [matTooltipClass]=\"collapsedRailTooltipClass\"\n matTooltipPosition=\"right\"\n (click)=\"onClick()\"\n type=\"button\"\n [attr.aria-label]=\"!isExpanded ? (item?.label || '') : null\"\n [attr.aria-expanded]=\"!isExpanded && hasChildren ? showCollapsedFlyout : null\"\n [attr.aria-haspopup]=\"!isExpanded && hasChildren ? 'menu' : null\">\n\n <!-- Icon -->\n <span class=\"cqa-nav-icon\">\n <i [class]=\"item?.iconClass\"></i>\n </span>\n\n <!-- Label (hidden when sidebar collapsed) -->\n <span class=\"cqa-nav-label\" [class.cqa-nav-label--visible]=\"isExpanded\">\n {{ item?.label }}\n </span>\n\n <!-- Trailing slot: only shown when expanded -->\n <ng-container *ngIf=\"isExpanded\">\n <span *ngIf=\"item?.badge && !hasChildren\" class=\"cqa-nav-badge\">{{ item.badge }}</span>\n\n <span\n *ngIf=\"item?.status === 'live' && !hasChildren\"\n class=\"cqa-nav-status-dot cqa-nav-status-dot--live\">\n </span>\n\n <span\n *ngIf=\"item?.status === 'danger' && !hasChildren\"\n class=\"cqa-nav-status-dot cqa-nav-status-dot--danger\">\n </span>\n\n <span *ngIf=\"hasChildren\" class=\"cqa-nav-chev\" [class.cqa-nav-chev--open]=\"isOpen\">\n <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"\n stroke-linecap=\"round\" stroke-linejoin=\"round\" width=\"14\" height=\"14\">\n <polyline points=\"9,6 15,12 9,18\"/>\n </svg>\n </span>\n </ng-container>\n\n <span\n *ngIf=\"!isExpanded && item?.status === 'live'\"\n class=\"cqa-nav-live-corner\">\n </span>\n </button>\n\n <!-- Collapsed parent submenu: CDK overlay (outside aside / scrolling nav) -->\n <ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayOrigin]=\"flyoutOrigin\"\n [cdkConnectedOverlayOpen]=\"collapsedFlyoutOpen\"\n [cdkConnectedOverlayPositions]=\"collapsedFlyoutPositions\"\n [cdkConnectedOverlayHasBackdrop]=\"false\"\n [cdkConnectedOverlayPush]=\"true\"\n [cdkConnectedOverlayScrollStrategy]=\"flyoutScrollStrategy\"\n [cdkConnectedOverlayPanelClass]=\"'cqa-nav-flyout-overlay-pane'\"\n (overlayOutsideClick)=\"closeCollapsedFlyout()\"\n (detach)=\"closeCollapsedFlyout()\">\n <div\n class=\"cqa-nav-flyout-overlay cqa-nav-flyout-panel\"\n role=\"menu\"\n [attr.aria-label]=\"item.label\"\n (mouseenter)=\"onFlyoutOverlayPointerEnter()\"\n (mouseleave)=\"onFlyoutOverlayPointerLeave()\"\n (focusout)=\"onFlyoutOverlayFocusOut($event)\">\n <div class=\"cqa-nav-flyout-panel-title\">{{ item.label }}</div>\n <button\n *ngFor=\"let child of item?.children\"\n type=\"button\"\n role=\"menuitem\"\n class=\"cqa-nav-flyout-row\"\n [class.cqa-nav-flyout-row--active]=\"isChildRowActive(child.id)\"\n [disabled]=\"child.disabled\"\n (click)=\"onChildRowClick($event, child)\">\n <span class=\"cqa-nav-flyout-row-icon\">\n <i *ngIf=\"child.iconClass\" [class]=\"child.iconClass\"></i>\n </span>\n <span class=\"cqa-nav-flyout-row-label\">{{ child.label }}</span>\n <span *ngIf=\"child.isNew\" class=\"cqa-nav-flyout-row-new\">New</span>\n </button>\n </div>\n </ng-template>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";.cqa-nav-surface,.cqa-nav-host{display:block;width:100%}.cqa-nav-host--collapsed{display:flex;flex-direction:column;align-items:center;position:relative;z-index:1}.cqa-nav-host--collapsed:hover,.cqa-nav-host--collapsed:focus-within{z-index:30}.cqa-nav-item{display:flex;align-items:center;gap:12px;padding:9px 10px;margin:1px 8px;border-radius:9px;color:#ffffffd9;font-size:14px;font-weight:600;line-height:1;letter-spacing:0;width:calc(100% - 16px);text-align:left;background:transparent;border:none;cursor:pointer;position:relative;transition:background .12s,color .12s;overflow:hidden;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.cqa-nav-item:not(.cqa-nav-item--collapsed){color:#d8d9fc}.cqa-nav-item:hover:not(.cqa-nav-item--active):not(.cqa-nav-item--disabled){background:#ffffff1f;color:#fff}.cqa-nav-item--active:not(.cqa-nav-item--collapsed){background:#8a8cf4;font-weight:600;box-shadow:inset 0 0 0 1px #d8d9fc4d;color:#fff}.cqa-nav-item--active:not(.cqa-nav-item--collapsed).cqa-nav-item--has-children{color:#d8d9fc}.cqa-nav-item--active:not(.cqa-nav-item--collapsed):hover{background:#8a8cf4}.cqa-nav-item--active:not(.cqa-nav-item--collapsed).cqa-nav-item--has-children:hover{color:#d8d9fc}.cqa-nav-item--active:not(.cqa-nav-item--collapsed):not(.cqa-nav-item--has-children):hover{color:#fff}.cqa-nav-item--active.cqa-nav-item--collapsed{background:#b1b2f86b;color:#fff;font-weight:600;box-shadow:inset 0 0 0 1px #d8d9fc4d}.cqa-nav-item.cqa-nav-item--collapsed:hover:not(.cqa-nav-item--active):not(.cqa-nav-item--disabled){background:#4c50ef;box-shadow:none}.cqa-nav-item--disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.cqa-nav-item.cqa-nav-item--collapsed{justify-content:center;align-items:center;gap:0;padding:9px 0;margin:1px 0;width:40px;max-width:100%;box-sizing:border-box;color:#ffffffe0;overflow:visible;z-index:1}.cqa-nav-item.cqa-nav-item--collapsed .cqa-nav-label{flex:0 0 0;width:0;min-width:0;height:0;margin:0;padding:0;overflow:hidden;opacity:0;border:0;pointer-events:none}.cqa-nav-item.cqa-nav-item--collapsed:hover{z-index:auto}.cqa-nav-icon{width:20px;height:20px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:18px;color:inherit}.cqa-nav-item--collapsed .cqa-nav-icon i{display:flex;align-items:center;justify-content:center;width:100%;height:100%;line-height:1}.cqa-nav-label{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:0;transition:opacity .16s 80ms;color:inherit}.cqa-nav-label--visible{opacity:1}.cqa-nav-badge{font-size:11px;font-weight:600;background:#ffffff2e;color:#fff;padding:1px 7px;border-radius:999px;flex-shrink:0}.cqa-nav-status-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.cqa-nav-status-dot--live{background:#0dbd7d;box-shadow:0 0 6px #0dbd7d;animation:cqa-nav-pulse 2s ease-in-out infinite}.cqa-nav-status-dot--danger{background:#ee3f3f}.cqa-nav-chev{width:14px;height:14px;opacity:.6;flex-shrink:0;transition:transform .2s;display:flex;align-items:center;justify-content:center}.cqa-nav-chev--open{transform:rotate(90deg)}.cqa-nav-live-corner{position:absolute;top:5px;right:5px;width:9px;height:9px;background:#0dbd7d;border-radius:50%;border:2px solid #3f43ee;box-shadow:0 0 6px #0dbd7d}@keyframes cqa-nav-pulse{0%,to{opacity:1}50%{opacity:.4}}.cqa-nav-flyout-panel{min-width:188px;max-width:280px;padding:10px 8px 8px;background:#4c50ef;border-radius:10px;box-shadow:0 12px 32px #00000047;border:1px solid rgba(255,255,255,.12);pointer-events:auto;text-align:left;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.cqa-nav-flyout-panel-title{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#ffffff8c;padding:2px 8px 8px;line-height:1.2}.cqa-nav-flyout-row{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;margin:0 0 2px;border:none;border-radius:8px;background:transparent;color:#fff;font-size:13px;font-weight:500;text-align:left;cursor:pointer;transition:background .12s,color .12s;font-family:inherit}.cqa-nav-flyout-row:last-child{margin-bottom:0}.cqa-nav-flyout-row:hover:not(:disabled){background:#ffffff1a;color:#fff}.cqa-nav-flyout-row:disabled{opacity:.45;cursor:not-allowed}.cqa-nav-flyout-row--active{background:#8a8cf4;color:#fbfcff;font-weight:600}.cqa-nav-flyout-row--active:hover:not(:disabled){background:#8a8cf4;color:#fbfcff}.cqa-nav-flyout-row-icon{width:16px;height:16px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:14px;opacity:.95}.cqa-nav-flyout-row-label{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cqa-nav-flyout-row-new{flex-shrink:0;font-size:10px;font-weight:700;padding:2px 7px;border-radius:999px;background:#feecbd;color:#7e6012;border:1px solid #fddf92}\n"] }]
159
159
  }], ctorParameters: () => [{ type: i1.Overlay }], propDecorators: { item: [{
160
160
  type: Input
161
161
  }], isActive: [{
@@ -172,4 +172,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
172
172
  type: ViewChild,
173
173
  args: ['navHost']
174
174
  }] } });
175
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2LWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9zaWRlYmFyL25hdi1pdGVtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvc2lkZWJhci9uYXYtaXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUVULEtBQUssRUFFTCxNQUFNLEVBQ04sWUFBWSxFQUNaLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFTdkIsTUFBTSxPQUFPLGdCQUFnQjtJQTZDRTtJQTVDcEIsSUFBSSxDQUFXO0lBQ2YsUUFBUSxHQUFZLEtBQUssQ0FBQztJQUNuQyxxREFBcUQ7SUFDNUMsVUFBVSxHQUFZLEtBQUssQ0FBQztJQUNyQywyQ0FBMkM7SUFDbEMsTUFBTSxHQUFZLEtBQUssQ0FBQztJQUNqQyxpRkFBaUY7SUFDeEUsV0FBVyxHQUFXLEVBQUUsQ0FBQztJQUV4QixTQUFTLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztJQUUzQixVQUFVLENBQTJCO0lBRTNELGlFQUFpRTtJQUNqRSxtQkFBbUIsR0FBRyxLQUFLLENBQUM7SUFFcEIsZ0JBQWdCLEdBQXlDLElBQUksQ0FBQztJQUM5RCxNQUFNLENBQVUscUJBQXFCLEdBQUcsR0FBRyxDQUFDO0lBRTNDLG9CQUFvQixDQUFpQjtJQUNyQyx3QkFBd0IsR0FBd0I7UUFDdkQ7WUFDRSxPQUFPLEVBQUUsS0FBSztZQUNkLE9BQU8sRUFBRSxRQUFRO1lBQ2pCLFFBQVEsRUFBRSxPQUFPO1lBQ2pCLFFBQVEsRUFBRSxRQUFRO1lBQ2xCLE9BQU8sRUFBRSxDQUFDO1NBQ1g7UUFDRDtZQUNFLE9BQU8sRUFBRSxLQUFLO1lBQ2QsT0FBTyxFQUFFLEtBQUs7WUFDZCxRQUFRLEVBQUUsT0FBTztZQUNqQixRQUFRLEVBQUUsS0FBSztZQUNmLE9BQU8sRUFBRSxDQUFDO1NB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QUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDOUIsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVPLHFCQUFxQjtRQUMzQixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQzFCLFlBQVksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztZQUNwQyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDO1FBQy9CLENBQUM7SUFDSCxDQUFDO0lBRU8sNEJBQTRCO1FBQ2xDLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQzdCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ3RDLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxLQUFLLENBQUM7WUFDakMsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQztRQUMvQixDQUFDLEVBQUUsZ0JBQWdCLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUM3QyxDQUFDO3dHQXJLVSxnQkFBZ0I7NEZBQWhCLGdCQUFnQix3VENqQjdCLDRzSUF5R0E7OzRGRHhGYSxnQkFBZ0I7a0JBTDVCLFNBQVM7K0JBQ0UsY0FBYzs0RUFLZixJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFFRyxVQUFVO3NCQUFsQixLQUFLO2dCQUVHLE1BQU07c0JBQWQsS0FBSztnQkFFRyxXQUFXO3NCQUFuQixLQUFLO2dCQUVJLFNBQVM7c0JBQWxCLE1BQU07Z0JBRWUsVUFBVTtzQkFBL0IsU0FBUzt1QkFBQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPdXRwdXQsXG4gIEV2ZW50RW1pdHRlcixcbiAgVmlld0NoaWxkXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29ubmVjdGVkUG9zaXRpb24sIE92ZXJsYXksIFNjcm9sbFN0cmF0ZWd5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgTmF2Q2hpbGRJdGVtLCBOYXZJdGVtIH0gZnJvbSAnLi9zaWRlYmFyLm1vZGVscyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NxYS1uYXYtaXRlbScsXG4gIHRlbXBsYXRlVXJsOiAnLi9uYXYtaXRlbS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL25hdi1pdGVtLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgTmF2SXRlbUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpIGl0ZW0hOiBOYXZJdGVtO1xuICBASW5wdXQoKSBpc0FjdGl2ZTogYm9vbGVhbiA9IGZhbHNlO1xuICAvKiogV2hldGhlciB0aGUgc2lkZWJhciBpcyBpbiBleHBhbmRlZCAod2lkZSkgbW9kZSAqL1xuICBASW5wdXQoKSBpc0V4cGFuZGVkOiBib29sZWFuID0gZmFsc2U7XG4gIC8qKiBXaGV0aGVyIHRoaXMgaXRlbSdzIHN1Yi1tZW51IGlzIG9wZW4gKi9cbiAgQElucHV0KCkgaXNPcGVuOiBib29sZWFuID0gZmFsc2U7XG4gIC8qKiBDdXJyZW50IHJvdXRlIC8gc2VsZWN0aW9uIGlkIOKAlCB1c2VkIHRvIGhpZ2hsaWdodCBjaGlsZCBpbiBjb2xsYXBzZWQgZmx5b3V0ICovXG4gIEBJbnB1dCgpIGFjdGl2ZU5hdklkOiBzdHJpbmcgPSAnJztcblxuICBAT3V0cHV0KCkgaXRlbUNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgQFZpZXdDaGlsZCgnbmF2SG9zdCcpIG5hdkhvc3RSZWY/OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICAvKiogQ29sbGFwc2VkIHBhcmVudDogZHJpdmVzIENESyBjb25uZWN0ZWQgb3ZlcmxheSBmb3Igc3VibWVudSAqL1xuICBzaG93Q29sbGFwc2VkRmx5b3V0ID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSBjbG9zZUZseW91dFRpbWVyOiBSZXR1cm5UeXBlPHR5cGVvZiBzZXRUaW1lb3V0PiB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIHN0YXRpYyByZWFkb25seSBGTFlPVVRfQ0xPU0VfREVMQVlfTVMgPSAxMjA7XG5cbiAgcmVhZG9ubHkgZmx5b3V0U2Nyb2xsU3RyYXRlZ3k6IFNjcm9sbFN0cmF0ZWd5O1xuICByZWFkb25seSBjb2xsYXBzZWRGbHlvdXRQb3NpdGlvbnM6IENvbm5lY3RlZFBvc2l0aW9uW10gPSBbXG4gICAge1xuICAgICAgb3JpZ2luWDogJ2VuZCcsXG4gICAgICBvcmlnaW5ZOiAnY2VudGVyJyxcbiAgICAgIG92ZXJsYXlYOiAnc3RhcnQnLFxuICAgICAgb3ZlcmxheVk6ICdjZW50ZXInLFxuICAgICAgb2Zmc2V0WDogOFxuICAgIH0sXG4gICAge1xuICAgICAgb3JpZ2luWDogJ2VuZCcsXG4gICAgICBvcmlnaW5ZOiAndG9wJyxcbiAgICAgIG92ZXJsYXlYOiAnc3RhcnQnLFxuICAgICAgb3ZlcmxheVk6ICd0b3AnLFxuICAgICAgb2Zmc2V0WDogOFxuICAgIH0sXG4gICAge1xuICAgICAgb3JpZ2luWDogJ2VuZCcsXG4gICAgICBvcmlnaW5ZOiAnYm90dG9tJyxcbiAgICAgIG92ZXJsYXlYOiAnc3RhcnQnLFxuICAgICAgb3ZlcmxheVk6ICdib3R0b20nLFxuICAgICAgb2Zmc2V0WDogOFxuICAgIH1cbiAgXTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IG92ZXJsYXk6IE92ZXJsYXkpIHtcbiAgICB0aGlzLmZseW91dFNjcm9sbFN0cmF0ZWd5ID0gdGhpcy5vdmVybGF5LnNjcm9sbFN0cmF0ZWdpZXMucmVwb3NpdGlvbigpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5jbGVhckZseW91dENsb3NlVGltZXIoKTtcbiAgfVxuXG4gIGdldCBoYXNDaGlsZHJlbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISEodGhpcy5pdGVtPy5jaGlsZHJlbj8ubGVuZ3RoKTtcbiAgfVxuXG4gIGdldCBjb2xsYXBzZWRGbHlvdXRPcGVuKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAoXG4gICAgICAhdGhpcy5pc0V4cGFuZGVkICYmXG4gICAgICB0aGlzLnNob3dDb2xsYXBzZWRGbHlvdXQgJiZcbiAgICAgIHRoaXMuaGFzQ2hpbGRyZW4gJiZcbiAgICAgICEhKHRoaXMuaXRlbT8uY2hpbGRyZW4/Lmxlbmd0aClcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbGxhcHNlZCByYWlsOiBzaG93IGxhYmVsIChsZWFmKSBvciBkaXNhYmxlZCBjb3B5IGluIE1hdFRvb2x0aXAgc28gaXQgcmVuZGVycyBpbiBDREsgb3ZlcmxheSxcbiAgICogbm90IGFzIGFuIGFic29sdXRlIGNoaWxkIGluc2lkZSB0aGUgc2Nyb2xsaW5nIG5hdi5cbiAgICovXG4gIGdldCBjb2xsYXBzZWRSYWlsVG9vbHRpcCgpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLml0ZW0/LmRpc2FibGVkICYmIHRoaXMuaXRlbT8uZGlzYWJsZWRUb29sdGlwKSB7XG4gICAgICByZXR1cm4gdGhpcy5pdGVtLmRpc2FibGVkVG9vbHRpcDtcbiAgICB9XG4gICAgaWYgKCF0aGlzLmlzRXhwYW5kZWQgJiYgIXRoaXMuaGFzQ2hpbGRyZW4gJiYgdGhpcy5pdGVtPy5sYWJlbCkge1xuICAgICAgcmV0dXJuIHRoaXMuaXRlbS5sYWJlbDtcbiAgICB9XG4gICAgcmV0dXJuICcnO1xuICB9XG5cbiAgZ2V0IGNvbGxhcHNlZFJhaWxUb29sdGlwQ2xhc3MoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gIXRoaXMuaXNFeHBhbmRlZCAmJiB0aGlzLmNvbGxhcHNlZFJhaWxUb29sdGlwID8gJ2NxYS1uYXYtcmFpbC10b29sdGlwJyA6ICcnO1xuICB9XG5cbiAgaXNDaGlsZFJvd0FjdGl2ZShjaGlsZElkOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5hY3RpdmVOYXZJZCA9PT0gY2hpbGRJZDtcbiAgfVxuXG4gIG9uSG9zdE1vdXNlRW50ZXIoKTogdm9pZCB7XG4gICAgdGhpcy5jbGVhckZseW91dENsb3NlVGltZXIoKTtcbiAgICBpZiAoIXRoaXMuaXNFeHBhbmRlZCAmJiAhdGhpcy5pdGVtPy5kaXNhYmxlZCAmJiB0aGlzLmhhc0NoaWxkcmVuKSB7XG4gICAgICB0aGlzLnNob3dDb2xsYXBzZWRGbHlvdXQgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIG9uSG9zdE1vdXNlTGVhdmUoKTogdm9pZCB7XG4gICAgdGhpcy5zY2hlZHVsZUNsb3NlQ29sbGFwc2VkRmx5b3V0KCk7XG4gIH1cblxuICBvbkhvc3RGb2N1c0luKF9lOiBGb2N1c0V2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5jbGVhckZseW91dENsb3NlVGltZXIoKTtcbiAgICBpZiAoIXRoaXMuaXNFeHBhbmRlZCAmJiAhdGhpcy5pdGVtPy5kaXNhYmxlZCAmJiB0aGlzLmhhc0NoaWxkcmVuKSB7XG4gICAgICB0aGlzLnNob3dDb2xsYXBzZWRGbHlvdXQgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIG9uSG9zdEZvY3VzT3V0KGU6IEZvY3VzRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5pc0V4cGFuZGVkKSByZXR1cm47XG4gICAgY29uc3QgcmVsYXRlZCA9IGUucmVsYXRlZFRhcmdldCBhcyBIVE1MRWxlbWVudCB8IG51bGw7XG4gICAgaWYgKHJlbGF0ZWQ/LmNsb3Nlc3QoJy5jcWEtbmF2LWZseW91dC1vdmVybGF5JykpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgaG9zdCA9IGUuY3VycmVudFRhcmdldCBhcyBIVE1MRWxlbWVudDtcbiAgICBpZiAocmVsYXRlZCAmJiBob3N0LmNvbnRhaW5zKHJlbGF0ZWQpKSByZXR1cm47XG4gICAgdGhpcy5jbG9zZUNvbGxhcHNlZEZseW91dCgpO1xuICB9XG5cbiAgb25GbHlvdXRPdmVybGF5UG9pbnRlckVudGVyKCk6IHZvaWQge1xuICAgIHRoaXMuY2xlYXJGbHlvdXRDbG9zZVRpbWVyKCk7XG4gIH1cblxuICBvbkZseW91dE92ZXJsYXlQb2ludGVyTGVhdmUoKTogdm9pZCB7XG4gICAgdGhpcy5zY2hlZHVsZUNsb3NlQ29sbGFwc2VkRmx5b3V0KCk7XG4gIH1cblxuICBvbkZseW91dE92ZXJsYXlGb2N1c091dChlOiBGb2N1c0V2ZW50KTogdm9pZCB7XG4gICAgY29uc3QgcmVsYXRlZCA9IGUucmVsYXRlZFRhcmdldCBhcyBIVE1MRWxlbWVudCB8IG51bGw7XG4gICAgY29uc3QgcGFuZWwgPSBlLmN1cnJlbnRUYXJnZXQgYXMgSFRNTEVsZW1lbnQ7XG4gICAgaWYgKHJlbGF0ZWQgJiYgcGFuZWwuY29udGFpbnMocmVsYXRlZCkpIHJldHVybjtcbiAgICBjb25zdCBob3N0RWwgPSB0aGlzLm5hdkhvc3RSZWY/Lm5hdGl2ZUVsZW1lbnQ7XG4gICAgaWYgKHJlbGF0ZWQgJiYgaG9zdEVsPy5jb250YWlucyhyZWxhdGVkKSkgcmV0dXJuO1xuICAgIHRoaXMuY2xvc2VDb2xsYXBzZWRGbHlvdXQoKTtcbiAgfVxuXG4gIGNsb3NlQ29sbGFwc2VkRmx5b3V0KCk6IHZvaWQge1xuICAgIHRoaXMuY2xlYXJGbHlvdXRDbG9zZVRpbWVyKCk7XG4gICAgdGhpcy5zaG93Q29sbGFwc2VkRmx5b3V0ID0gZmFsc2U7XG4gIH1cblxuICBvbkNsaWNrKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5pdGVtPy5kaXNhYmxlZCkge1xuICAgICAgdGhpcy5pdGVtQ2xpY2suZW1pdCh0aGlzLml0ZW0uaWQpO1xuICAgIH1cbiAgfVxuXG4gIG9uQ2hpbGRSb3dDbGljayhlOiBFdmVudCwgY2hpbGQ6IE5hdkNoaWxkSXRlbSk6IHZvaWQge1xuICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgaWYgKGNoaWxkLmRpc2FibGVkKSByZXR1cm47XG4gICAgdGhpcy5pdGVtQ2xpY2suZW1pdChjaGlsZC5pZCk7XG4gICAgdGhpcy5jbG9zZUNvbGxhcHNlZEZseW91dCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBjbGVhckZseW91dENsb3NlVGltZXIoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuY2xvc2VGbHlvdXRUaW1lcikge1xuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuY2xvc2VGbHlvdXRUaW1lcik7XG4gICAgICB0aGlzLmNsb3NlRmx5b3V0VGltZXIgPSBudWxsO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc2NoZWR1bGVDbG9zZUNvbGxhcHNlZEZseW91dCgpOiB2b2lkIHtcbiAgICB0aGlzLmNsZWFyRmx5b3V0Q2xvc2VUaW1lcigpO1xuICAgIHRoaXMuY2xvc2VGbHlvdXRUaW1lciA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5zaG93Q29sbGFwc2VkRmx5b3V0ID0gZmFsc2U7XG4gICAgICB0aGlzLmNsb3NlRmx5b3V0VGltZXIgPSBudWxsO1xuICAgIH0sIE5hdkl0ZW1Db21wb25lbnQuRkxZT1VUX0NMT1NFX0RFTEFZX01TKTtcbiAgfVxufVxuIiwiPGRpdiBpZD1cImNxYS11aS1yb290XCIgc3R5bGU9XCJkaXNwbGF5OmJsb2NrXCI+XG4gIDxkaXZcbiAgICAjbmF2SG9zdFxuICAgIGNsYXNzPVwiY3FhLW5hdi1ob3N0XCJcbiAgICBbY2xhc3MuY3FhLW5hdi1ob3N0LS1jb2xsYXBzZWRdPVwiIWlzRXhwYW5kZWRcIlxuICAgIChtb3VzZWVudGVyKT1cIm9uSG9zdE1vdXNlRW50ZXIoKVwiXG4gICAgKG1vdXNlbGVhdmUpPVwib25Ib3N0TW91c2VMZWF2ZSgpXCJcbiAgICAoZm9jdXNpbik9XCJvbkhvc3RGb2N1c0luKCRldmVudClcIlxuICAgIChmb2N1c291dCk9XCJvbkhvc3RGb2N1c091dCgkZXZlbnQpXCI+XG5cbiAgICA8YnV0dG9uXG4gICAgICBjZGtPdmVybGF5T3JpZ2luXG4gICAgICAjZmx5b3V0T3JpZ2luPVwiY2RrT3ZlcmxheU9yaWdpblwiXG4gICAgICBjbGFzcz1cImNxYS1uYXYtaXRlbVwiXG4gICAgICBbY2xhc3MuY3FhLW5hdi1pdGVtLS1hY3RpdmVdPVwiaXNBY3RpdmVcIlxuICAgICAgW2NsYXNzLmNxYS1uYXYtaXRlbS0taGFzLWNoaWxkcmVuXT1cImhhc0NoaWxkcmVuXCJcbiAgICAgIFtjbGFzcy5jcWEtbmF2LWl0ZW0tLWNvbGxhcHNlZF09XCIhaXNFeHBhbmRlZFwiXG4gICAgICBbY2xhc3MuY3FhLW5hdi1pdGVtLS1kaXNhYmxlZF09XCJpdGVtPy5kaXNhYmxlZFwiXG4gICAgICBbY2xhc3MuY3FhLW5hdi1pdGVtLS1oYXMtbGl2ZV09XCJpdGVtPy5zdGF0dXMgPT09ICdsaXZlJ1wiXG4gICAgICBbbWF0VG9vbHRpcF09XCJjb2xsYXBzZWRSYWlsVG9vbHRpcFwiXG4gICAgICBbbWF0VG9vbHRpcERpc2FibGVkXT1cIiFjb2xsYXBzZWRSYWlsVG9vbHRpcFwiXG4gICAgICBbbWF0VG9vbHRpcENsYXNzXT1cImNvbGxhcHNlZFJhaWxUb29sdGlwQ2xhc3NcIlxuICAgICAgbWF0VG9vbHRpcFBvc2l0aW9uPVwicmlnaHRcIlxuICAgICAgKGNsaWNrKT1cIm9uQ2xpY2soKVwiXG4gICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiIWlzRXhwYW5kZWQgPyAoaXRlbT8ubGFiZWwgfHwgJycpIDogbnVsbFwiXG4gICAgICBbYXR0ci5hcmlhLWV4cGFuZGVkXT1cIiFpc0V4cGFuZGVkICYmIGhhc0NoaWxkcmVuID8gc2hvd0NvbGxhcHNlZEZseW91dCA6IG51bGxcIlxuICAgICAgW2F0dHIuYXJpYS1oYXNwb3B1cF09XCIhaXNFeHBhbmRlZCAmJiBoYXNDaGlsZHJlbiA/ICdtZW51JyA6IG51bGxcIj5cblxuICAgICAgPCEtLSBJY29uIC0tPlxuICAgICAgPHNwYW4gY2xhc3M9XCJjcWEtbmF2LWljb25cIj5cbiAgICAgICAgPGkgW2NsYXNzXT1cIml0ZW0/Lmljb25DbGFzc1wiPjwvaT5cbiAgICAgIDwvc3Bhbj5cblxuICAgICAgPCEtLSBMYWJlbCAoaGlkZGVuIHdoZW4gc2lkZWJhciBjb2xsYXBzZWQpIC0tPlxuICAgICAgPHNwYW4gY2xhc3M9XCJjcWEtbmF2LWxhYmVsXCIgW2NsYXNzLmNxYS1uYXYtbGFiZWwtLXZpc2libGVdPVwiaXNFeHBhbmRlZFwiPlxuICAgICAgICB7eyBpdGVtPy5sYWJlbCB9fVxuICAgICAgPC9zcGFuPlxuXG4gICAgICA8IS0tIFRyYWlsaW5nIHNsb3Q6IG9ubHkgc2hvd24gd2hlbiBleHBhbmRlZCAtLT5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpc0V4cGFuZGVkXCI+XG4gICAgICAgIDxzcGFuICpuZ0lmPVwiaXRlbT8uYmFkZ2UgJiYgIWhhc0NoaWxkcmVuXCIgY2xhc3M9XCJjcWEtbmF2LWJhZGdlXCI+e3sgaXRlbS5iYWRnZSB9fTwvc3Bhbj5cblxuICAgICAgICA8c3BhblxuICAgICAgICAgICpuZ0lmPVwiaXRlbT8uc3RhdHVzID09PSAnbGl2ZScgJiYgIWhhc0NoaWxkcmVuXCJcbiAgICAgICAgICBjbGFzcz1cImNxYS1uYXYtc3RhdHVzLWRvdCBjcWEtbmF2LXN0YXR1cy1kb3QtLWxpdmVcIj5cbiAgICAgICAgPC9zcGFuPlxuXG4gICAgICAgIDxzcGFuXG4gICAgICAgICAgKm5nSWY9XCJpdGVtPy5zdGF0dXMgPT09ICdkYW5nZXInICYmICFoYXNDaGlsZHJlblwiXG4gICAgICAgICAgY2xhc3M9XCJjcWEtbmF2LXN0YXR1cy1kb3QgY3FhLW5hdi1zdGF0dXMtZG90LS1kYW5nZXJcIj5cbiAgICAgICAgPC9zcGFuPlxuXG4gICAgICAgIDxzcGFuICpuZ0lmPVwiaGFzQ2hpbGRyZW5cIiBjbGFzcz1cImNxYS1uYXYtY2hldlwiIFtjbGFzcy5jcWEtbmF2LWNoZXYtLW9wZW5dPVwiaXNPcGVuXCI+XG4gICAgICAgICAgPHN2ZyB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIiBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2Utd2lkdGg9XCIyXCJcbiAgICAgICAgICAgIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIHdpZHRoPVwiMTRcIiBoZWlnaHQ9XCIxNFwiPlxuICAgICAgICAgICAgPHBvbHlsaW5lIHBvaW50cz1cIjksNiAxNSwxMiA5LDE4XCIvPlxuICAgICAgICAgIDwvc3ZnPlxuICAgICAgICA8L3NwYW4+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgPHNwYW5cbiAgICAgICAgKm5nSWY9XCIhaXNFeHBhbmRlZCAmJiBpdGVtPy5zdGF0dXMgPT09ICdsaXZlJ1wiXG4gICAgICAgIGNsYXNzPVwiY3FhLW5hdi1saXZlLWNvcm5lclwiPlxuICAgICAgPC9zcGFuPlxuICAgIDwvYnV0dG9uPlxuXG4gICAgPCEtLSBDb2xsYXBzZWQgcGFyZW50IHN1Ym1lbnU6IENESyBvdmVybGF5IChvdXRzaWRlIGFzaWRlIC8gc2Nyb2xsaW5nIG5hdikgLS0+XG4gICAgPG5nLXRlbXBsYXRlXG4gICAgICBjZGtDb25uZWN0ZWRPdmVybGF5XG4gICAgICBbY2RrQ29ubmVjdGVkT3ZlcmxheU9yaWdpbl09XCJmbHlvdXRPcmlnaW5cIlxuICAgICAgW2Nka0Nvbm5lY3RlZE92ZXJsYXlPcGVuXT1cImNvbGxhcHNlZEZseW91dE9wZW5cIlxuICAgICAgW2Nka0Nvbm5lY3RlZE92ZXJsYXlQb3NpdGlvbnNdPVwiY29sbGFwc2VkRmx5b3V0UG9zaXRpb25zXCJcbiAgICAgIFtjZGtDb25uZWN0ZWRPdmVybGF5SGFzQmFja2Ryb3BdPVwiZmFsc2VcIlxuICAgICAgW2Nka0Nvbm5lY3RlZE92ZXJsYXlQdXNoXT1cInRydWVcIlxuICAgICAgW2Nka0Nvbm5lY3RlZE92ZXJsYXlTY3JvbGxTdHJhdGVneV09XCJmbHlvdXRTY3JvbGxTdHJhdGVneVwiXG4gICAgICBbY2RrQ29ubmVjdGVkT3ZlcmxheVBhbmVsQ2xhc3NdPVwiJ2NxYS1uYXYtZmx5b3V0LW92ZXJsYXktcGFuZSdcIlxuICAgICAgKG92ZXJsYXlPdXRzaWRlQ2xpY2spPVwiY2xvc2VDb2xsYXBzZWRGbHlvdXQoKVwiXG4gICAgICAoZGV0YWNoKT1cImNsb3NlQ29sbGFwc2VkRmx5b3V0KClcIj5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJjcWEtbmF2LWZseW91dC1vdmVybGF5IGNxYS1uYXYtZmx5b3V0LXBhbmVsXCJcbiAgICAgICAgcm9sZT1cIm1lbnVcIlxuICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIml0ZW0ubGFiZWxcIlxuICAgICAgICAobW91c2VlbnRlcik9XCJvbkZseW91dE92ZXJsYXlQb2ludGVyRW50ZXIoKVwiXG4gICAgICAgIChtb3VzZWxlYXZlKT1cIm9uRmx5b3V0T3ZlcmxheVBvaW50ZXJMZWF2ZSgpXCJcbiAgICAgICAgKGZvY3Vzb3V0KT1cIm9uRmx5b3V0T3ZlcmxheUZvY3VzT3V0KCRldmVudClcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNxYS1uYXYtZmx5b3V0LXBhbmVsLXRpdGxlXCI+e3sgaXRlbS5sYWJlbCB9fTwvZGl2PlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgKm5nRm9yPVwibGV0IGNoaWxkIG9mIGl0ZW0/LmNoaWxkcmVuXCJcbiAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICByb2xlPVwibWVudWl0ZW1cIlxuICAgICAgICAgIGNsYXNzPVwiY3FhLW5hdi1mbHlvdXQtcm93XCJcbiAgICAgICAgICBbY2xhc3MuY3FhLW5hdi1mbHlvdXQtcm93LS1hY3RpdmVdPVwiaXNDaGlsZFJvd0FjdGl2ZShjaGlsZC5pZClcIlxuICAgICAgICAgIFtkaXNhYmxlZF09XCJjaGlsZC5kaXNhYmxlZFwiXG4gICAgICAgICAgKGNsaWNrKT1cIm9uQ2hpbGRSb3dDbGljaygkZXZlbnQsIGNoaWxkKVwiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY3FhLW5hdi1mbHlvdXQtcm93LWljb25cIj5cbiAgICAgICAgICAgIDxpICpuZ0lmPVwiY2hpbGQuaWNvbkNsYXNzXCIgW2NsYXNzXT1cImNoaWxkLmljb25DbGFzc1wiPjwvaT5cbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJjcWEtbmF2LWZseW91dC1yb3ctbGFiZWxcIj57eyBjaGlsZC5sYWJlbCB9fTwvc3Bhbj5cbiAgICAgICAgICA8c3BhbiAqbmdJZj1cImNoaWxkLmlzTmV3XCIgY2xhc3M9XCJjcWEtbmF2LWZseW91dC1yb3ctbmV3XCI+TmV3PC9zcGFuPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
175
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2LWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9zaWRlYmFyL25hdi1pdGVtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvc2lkZWJhci9uYXYtaXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUVULEtBQUssRUFFTCxNQUFNLEVBQ04sWUFBWSxFQUNaLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFTdkIsTUFBTSxPQUFPLGdCQUFnQjtJQTZDRTtJQTVDcEIsSUFBSSxDQUFXO0lBQ2YsUUFBUSxHQUFZLEtBQUssQ0FBQztJQUNuQyxxREFBcUQ7SUFDNUMsVUFBVSxHQUFZLEtBQUssQ0FBQztJQUNyQywyQ0FBMkM7SUFDbEMsTUFBTSxHQUFZLEtBQUssQ0FBQztJQUNqQyxpRkFBaUY7SUFDeEUsV0FBVyxHQUFXLEVBQUUsQ0FBQztJQUV4QixTQUFTLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztJQUUzQixVQUFVLENBQTJCO0lBRTNELGlFQUFpRTtJQUNqRSxtQkFBbUIsR0FBRyxLQUFLLENBQUM7SUFFcEIsZ0JBQWdCLEdBQXlDLElBQUksQ0FBQztJQUM5RCxNQUFNLENBQVUscUJBQXFCLEdBQUcsR0FBRyxDQUFDO0lBRTNDLG9CQUFvQixDQUFpQjtJQUNyQyx3QkFBd0IsR0FBd0I7UUFDdkQ7WUFDRSxPQUFPLEVBQUUsS0FBSztZQUNkLE9BQU8sRUFBRSxRQUFRO1lBQ2pCLFFBQVEsRUFBRSxPQUFPO1lBQ2pCLFFBQVEsRUFBRSxRQUFRO1lBQ2xCLE9BQU8sRUFBRSxDQUFDO1NBQ1g7UUFDRDtZQUNFLE9BQU8sRUFBRSxLQUFLO1lBQ2QsT0FBTyxFQUFFLEtBQUs7WUFDZCxRQUFRLEVBQUUsT0FBTztZQUNqQixRQUFRLEVBQUUsS0FBSztZQUNmLE9BQU8sRUFBRSxDQUFDO1NB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QUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDOUIsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVPLHFCQUFxQjtRQUMzQixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQzFCLFlBQVksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztZQUNwQyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDO1FBQy9CLENBQUM7SUFDSCxDQUFDO0lBRU8sNEJBQTRCO1FBQ2xDLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQzdCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ3RDLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxLQUFLLENBQUM7WUFDakMsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQztRQUMvQixDQUFDLEVBQUUsZ0JBQWdCLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUM3QyxDQUFDO3dHQXJLVSxnQkFBZ0I7NEZBQWhCLGdCQUFnQix3VENqQjdCLDJySUF5R0E7OzRGRHhGYSxnQkFBZ0I7a0JBTDVCLFNBQVM7K0JBQ0UsY0FBYzs0RUFLZixJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFFRyxVQUFVO3NCQUFsQixLQUFLO2dCQUVHLE1BQU07c0JBQWQsS0FBSztnQkFFRyxXQUFXO3NCQUFuQixLQUFLO2dCQUVJLFNBQVM7c0JBQWxCLE1BQU07Z0JBRWUsVUFBVTtzQkFBL0IsU0FBUzt1QkFBQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPdXRwdXQsXG4gIEV2ZW50RW1pdHRlcixcbiAgVmlld0NoaWxkXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29ubmVjdGVkUG9zaXRpb24sIE92ZXJsYXksIFNjcm9sbFN0cmF0ZWd5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgTmF2Q2hpbGRJdGVtLCBOYXZJdGVtIH0gZnJvbSAnLi9zaWRlYmFyLm1vZGVscyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NxYS1uYXYtaXRlbScsXG4gIHRlbXBsYXRlVXJsOiAnLi9uYXYtaXRlbS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL25hdi1pdGVtLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgTmF2SXRlbUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpIGl0ZW0hOiBOYXZJdGVtO1xuICBASW5wdXQoKSBpc0FjdGl2ZTogYm9vbGVhbiA9IGZhbHNlO1xuICAvKiogV2hldGhlciB0aGUgc2lkZWJhciBpcyBpbiBleHBhbmRlZCAod2lkZSkgbW9kZSAqL1xuICBASW5wdXQoKSBpc0V4cGFuZGVkOiBib29sZWFuID0gZmFsc2U7XG4gIC8qKiBXaGV0aGVyIHRoaXMgaXRlbSdzIHN1Yi1tZW51IGlzIG9wZW4gKi9cbiAgQElucHV0KCkgaXNPcGVuOiBib29sZWFuID0gZmFsc2U7XG4gIC8qKiBDdXJyZW50IHJvdXRlIC8gc2VsZWN0aW9uIGlkIOKAlCB1c2VkIHRvIGhpZ2hsaWdodCBjaGlsZCBpbiBjb2xsYXBzZWQgZmx5b3V0ICovXG4gIEBJbnB1dCgpIGFjdGl2ZU5hdklkOiBzdHJpbmcgPSAnJztcblxuICBAT3V0cHV0KCkgaXRlbUNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgQFZpZXdDaGlsZCgnbmF2SG9zdCcpIG5hdkhvc3RSZWY/OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICAvKiogQ29sbGFwc2VkIHBhcmVudDogZHJpdmVzIENESyBjb25uZWN0ZWQgb3ZlcmxheSBmb3Igc3VibWVudSAqL1xuICBzaG93Q29sbGFwc2VkRmx5b3V0ID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSBjbG9zZUZseW91dFRpbWVyOiBSZXR1cm5UeXBlPHR5cGVvZiBzZXRUaW1lb3V0PiB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIHN0YXRpYyByZWFkb25seSBGTFlPVVRfQ0xPU0VfREVMQVlfTVMgPSAxMjA7XG5cbiAgcmVhZG9ubHkgZmx5b3V0U2Nyb2xsU3RyYXRlZ3k6IFNjcm9sbFN0cmF0ZWd5O1xuICByZWFkb25seSBjb2xsYXBzZWRGbHlvdXRQb3NpdGlvbnM6IENvbm5lY3RlZFBvc2l0aW9uW10gPSBbXG4gICAge1xuICAgICAgb3JpZ2luWDogJ2VuZCcsXG4gICAgICBvcmlnaW5ZOiAnY2VudGVyJyxcbiAgICAgIG92ZXJsYXlYOiAnc3RhcnQnLFxuICAgICAgb3ZlcmxheVk6ICdjZW50ZXInLFxuICAgICAgb2Zmc2V0WDogOFxuICAgIH0sXG4gICAge1xuICAgICAgb3JpZ2luWDogJ2VuZCcsXG4gICAgICBvcmlnaW5ZOiAndG9wJyxcbiAgICAgIG92ZXJsYXlYOiAnc3RhcnQnLFxuICAgICAgb3ZlcmxheVk6ICd0b3AnLFxuICAgICAgb2Zmc2V0WDogOFxuICAgIH0sXG4gICAge1xuICAgICAgb3JpZ2luWDogJ2VuZCcsXG4gICAgICBvcmlnaW5ZOiAnYm90dG9tJyxcbiAgICAgIG92ZXJsYXlYOiAnc3RhcnQnLFxuICAgICAgb3ZlcmxheVk6ICdib3R0b20nLFxuICAgICAgb2Zmc2V0WDogOFxuICAgIH1cbiAgXTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IG92ZXJsYXk6IE92ZXJsYXkpIHtcbiAgICB0aGlzLmZseW91dFNjcm9sbFN0cmF0ZWd5ID0gdGhpcy5vdmVybGF5LnNjcm9sbFN0cmF0ZWdpZXMucmVwb3NpdGlvbigpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5jbGVhckZseW91dENsb3NlVGltZXIoKTtcbiAgfVxuXG4gIGdldCBoYXNDaGlsZHJlbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISEodGhpcy5pdGVtPy5jaGlsZHJlbj8ubGVuZ3RoKTtcbiAgfVxuXG4gIGdldCBjb2xsYXBzZWRGbHlvdXRPcGVuKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAoXG4gICAgICAhdGhpcy5pc0V4cGFuZGVkICYmXG4gICAgICB0aGlzLnNob3dDb2xsYXBzZWRGbHlvdXQgJiZcbiAgICAgIHRoaXMuaGFzQ2hpbGRyZW4gJiZcbiAgICAgICEhKHRoaXMuaXRlbT8uY2hpbGRyZW4/Lmxlbmd0aClcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbGxhcHNlZCByYWlsOiBzaG93IGxhYmVsIChsZWFmKSBvciBkaXNhYmxlZCBjb3B5IGluIE1hdFRvb2x0aXAgc28gaXQgcmVuZGVycyBpbiBDREsgb3ZlcmxheSxcbiAgICogbm90IGFzIGFuIGFic29sdXRlIGNoaWxkIGluc2lkZSB0aGUgc2Nyb2xsaW5nIG5hdi5cbiAgICovXG4gIGdldCBjb2xsYXBzZWRSYWlsVG9vbHRpcCgpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLml0ZW0/LmRpc2FibGVkICYmIHRoaXMuaXRlbT8uZGlzYWJsZWRUb29sdGlwKSB7XG4gICAgICByZXR1cm4gdGhpcy5pdGVtLmRpc2FibGVkVG9vbHRpcDtcbiAgICB9XG4gICAgaWYgKCF0aGlzLmlzRXhwYW5kZWQgJiYgIXRoaXMuaGFzQ2hpbGRyZW4gJiYgdGhpcy5pdGVtPy5sYWJlbCkge1xuICAgICAgcmV0dXJuIHRoaXMuaXRlbS5sYWJlbDtcbiAgICB9XG4gICAgcmV0dXJuICcnO1xuICB9XG5cbiAgZ2V0IGNvbGxhcHNlZFJhaWxUb29sdGlwQ2xhc3MoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gIXRoaXMuaXNFeHBhbmRlZCAmJiB0aGlzLmNvbGxhcHNlZFJhaWxUb29sdGlwID8gJ2NxYS1uYXYtcmFpbC10b29sdGlwJyA6ICcnO1xuICB9XG5cbiAgaXNDaGlsZFJvd0FjdGl2ZShjaGlsZElkOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5hY3RpdmVOYXZJZCA9PT0gY2hpbGRJZDtcbiAgfVxuXG4gIG9uSG9zdE1vdXNlRW50ZXIoKTogdm9pZCB7XG4gICAgdGhpcy5jbGVhckZseW91dENsb3NlVGltZXIoKTtcbiAgICBpZiAoIXRoaXMuaXNFeHBhbmRlZCAmJiAhdGhpcy5pdGVtPy5kaXNhYmxlZCAmJiB0aGlzLmhhc0NoaWxkcmVuKSB7XG4gICAgICB0aGlzLnNob3dDb2xsYXBzZWRGbHlvdXQgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIG9uSG9zdE1vdXNlTGVhdmUoKTogdm9pZCB7XG4gICAgdGhpcy5zY2hlZHVsZUNsb3NlQ29sbGFwc2VkRmx5b3V0KCk7XG4gIH1cblxuICBvbkhvc3RGb2N1c0luKF9lOiBGb2N1c0V2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5jbGVhckZseW91dENsb3NlVGltZXIoKTtcbiAgICBpZiAoIXRoaXMuaXNFeHBhbmRlZCAmJiAhdGhpcy5pdGVtPy5kaXNhYmxlZCAmJiB0aGlzLmhhc0NoaWxkcmVuKSB7XG4gICAgICB0aGlzLnNob3dDb2xsYXBzZWRGbHlvdXQgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIG9uSG9zdEZvY3VzT3V0KGU6IEZvY3VzRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5pc0V4cGFuZGVkKSByZXR1cm47XG4gICAgY29uc3QgcmVsYXRlZCA9IGUucmVsYXRlZFRhcmdldCBhcyBIVE1MRWxlbWVudCB8IG51bGw7XG4gICAgaWYgKHJlbGF0ZWQ/LmNsb3Nlc3QoJy5jcWEtbmF2LWZseW91dC1vdmVybGF5JykpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgaG9zdCA9IGUuY3VycmVudFRhcmdldCBhcyBIVE1MRWxlbWVudDtcbiAgICBpZiAocmVsYXRlZCAmJiBob3N0LmNvbnRhaW5zKHJlbGF0ZWQpKSByZXR1cm47XG4gICAgdGhpcy5jbG9zZUNvbGxhcHNlZEZseW91dCgpO1xuICB9XG5cbiAgb25GbHlvdXRPdmVybGF5UG9pbnRlckVudGVyKCk6IHZvaWQge1xuICAgIHRoaXMuY2xlYXJGbHlvdXRDbG9zZVRpbWVyKCk7XG4gIH1cblxuICBvbkZseW91dE92ZXJsYXlQb2ludGVyTGVhdmUoKTogdm9pZCB7XG4gICAgdGhpcy5zY2hlZHVsZUNsb3NlQ29sbGFwc2VkRmx5b3V0KCk7XG4gIH1cblxuICBvbkZseW91dE92ZXJsYXlGb2N1c091dChlOiBGb2N1c0V2ZW50KTogdm9pZCB7XG4gICAgY29uc3QgcmVsYXRlZCA9IGUucmVsYXRlZFRhcmdldCBhcyBIVE1MRWxlbWVudCB8IG51bGw7XG4gICAgY29uc3QgcGFuZWwgPSBlLmN1cnJlbnRUYXJnZXQgYXMgSFRNTEVsZW1lbnQ7XG4gICAgaWYgKHJlbGF0ZWQgJiYgcGFuZWwuY29udGFpbnMocmVsYXRlZCkpIHJldHVybjtcbiAgICBjb25zdCBob3N0RWwgPSB0aGlzLm5hdkhvc3RSZWY/Lm5hdGl2ZUVsZW1lbnQ7XG4gICAgaWYgKHJlbGF0ZWQgJiYgaG9zdEVsPy5jb250YWlucyhyZWxhdGVkKSkgcmV0dXJuO1xuICAgIHRoaXMuY2xvc2VDb2xsYXBzZWRGbHlvdXQoKTtcbiAgfVxuXG4gIGNsb3NlQ29sbGFwc2VkRmx5b3V0KCk6IHZvaWQge1xuICAgIHRoaXMuY2xlYXJGbHlvdXRDbG9zZVRpbWVyKCk7XG4gICAgdGhpcy5zaG93Q29sbGFwc2VkRmx5b3V0ID0gZmFsc2U7XG4gIH1cblxuICBvbkNsaWNrKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5pdGVtPy5kaXNhYmxlZCkge1xuICAgICAgdGhpcy5pdGVtQ2xpY2suZW1pdCh0aGlzLml0ZW0uaWQpO1xuICAgIH1cbiAgfVxuXG4gIG9uQ2hpbGRSb3dDbGljayhlOiBFdmVudCwgY2hpbGQ6IE5hdkNoaWxkSXRlbSk6IHZvaWQge1xuICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgaWYgKGNoaWxkLmRpc2FibGVkKSByZXR1cm47XG4gICAgdGhpcy5pdGVtQ2xpY2suZW1pdChjaGlsZC5pZCk7XG4gICAgdGhpcy5jbG9zZUNvbGxhcHNlZEZseW91dCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBjbGVhckZseW91dENsb3NlVGltZXIoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuY2xvc2VGbHlvdXRUaW1lcikge1xuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuY2xvc2VGbHlvdXRUaW1lcik7XG4gICAgICB0aGlzLmNsb3NlRmx5b3V0VGltZXIgPSBudWxsO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc2NoZWR1bGVDbG9zZUNvbGxhcHNlZEZseW91dCgpOiB2b2lkIHtcbiAgICB0aGlzLmNsZWFyRmx5b3V0Q2xvc2VUaW1lcigpO1xuICAgIHRoaXMuY2xvc2VGbHlvdXRUaW1lciA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5zaG93Q29sbGFwc2VkRmx5b3V0ID0gZmFsc2U7XG4gICAgICB0aGlzLmNsb3NlRmx5b3V0VGltZXIgPSBudWxsO1xuICAgIH0sIE5hdkl0ZW1Db21wb25lbnQuRkxZT1VUX0NMT1NFX0RFTEFZX01TKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImNxYS1uYXYtc3VyZmFjZVwiPlxuICA8ZGl2XG4gICAgI25hdkhvc3RcbiAgICBjbGFzcz1cImNxYS1uYXYtaG9zdFwiXG4gICAgW2NsYXNzLmNxYS1uYXYtaG9zdC0tY29sbGFwc2VkXT1cIiFpc0V4cGFuZGVkXCJcbiAgICAobW91c2VlbnRlcik9XCJvbkhvc3RNb3VzZUVudGVyKClcIlxuICAgIChtb3VzZWxlYXZlKT1cIm9uSG9zdE1vdXNlTGVhdmUoKVwiXG4gICAgKGZvY3VzaW4pPVwib25Ib3N0Rm9jdXNJbigkZXZlbnQpXCJcbiAgICAoZm9jdXNvdXQpPVwib25Ib3N0Rm9jdXNPdXQoJGV2ZW50KVwiPlxuXG4gICAgPGJ1dHRvblxuICAgICAgY2RrT3ZlcmxheU9yaWdpblxuICAgICAgI2ZseW91dE9yaWdpbj1cImNka092ZXJsYXlPcmlnaW5cIlxuICAgICAgY2xhc3M9XCJjcWEtbmF2LWl0ZW1cIlxuICAgICAgW2NsYXNzLmNxYS1uYXYtaXRlbS0tYWN0aXZlXT1cImlzQWN0aXZlXCJcbiAgICAgIFtjbGFzcy5jcWEtbmF2LWl0ZW0tLWhhcy1jaGlsZHJlbl09XCJoYXNDaGlsZHJlblwiXG4gICAgICBbY2xhc3MuY3FhLW5hdi1pdGVtLS1jb2xsYXBzZWRdPVwiIWlzRXhwYW5kZWRcIlxuICAgICAgW2NsYXNzLmNxYS1uYXYtaXRlbS0tZGlzYWJsZWRdPVwiaXRlbT8uZGlzYWJsZWRcIlxuICAgICAgW2NsYXNzLmNxYS1uYXYtaXRlbS0taGFzLWxpdmVdPVwiaXRlbT8uc3RhdHVzID09PSAnbGl2ZSdcIlxuICAgICAgW21hdFRvb2x0aXBdPVwiY29sbGFwc2VkUmFpbFRvb2x0aXBcIlxuICAgICAgW21hdFRvb2x0aXBEaXNhYmxlZF09XCIhY29sbGFwc2VkUmFpbFRvb2x0aXBcIlxuICAgICAgW21hdFRvb2x0aXBDbGFzc109XCJjb2xsYXBzZWRSYWlsVG9vbHRpcENsYXNzXCJcbiAgICAgIG1hdFRvb2x0aXBQb3NpdGlvbj1cInJpZ2h0XCJcbiAgICAgIChjbGljayk9XCJvbkNsaWNrKClcIlxuICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIiFpc0V4cGFuZGVkID8gKGl0ZW0/LmxhYmVsIHx8ICcnKSA6IG51bGxcIlxuICAgICAgW2F0dHIuYXJpYS1leHBhbmRlZF09XCIhaXNFeHBhbmRlZCAmJiBoYXNDaGlsZHJlbiA/IHNob3dDb2xsYXBzZWRGbHlvdXQgOiBudWxsXCJcbiAgICAgIFthdHRyLmFyaWEtaGFzcG9wdXBdPVwiIWlzRXhwYW5kZWQgJiYgaGFzQ2hpbGRyZW4gPyAnbWVudScgOiBudWxsXCI+XG5cbiAgICAgIDwhLS0gSWNvbiAtLT5cbiAgICAgIDxzcGFuIGNsYXNzPVwiY3FhLW5hdi1pY29uXCI+XG4gICAgICAgIDxpIFtjbGFzc109XCJpdGVtPy5pY29uQ2xhc3NcIj48L2k+XG4gICAgICA8L3NwYW4+XG5cbiAgICAgIDwhLS0gTGFiZWwgKGhpZGRlbiB3aGVuIHNpZGViYXIgY29sbGFwc2VkKSAtLT5cbiAgICAgIDxzcGFuIGNsYXNzPVwiY3FhLW5hdi1sYWJlbFwiIFtjbGFzcy5jcWEtbmF2LWxhYmVsLS12aXNpYmxlXT1cImlzRXhwYW5kZWRcIj5cbiAgICAgICAge3sgaXRlbT8ubGFiZWwgfX1cbiAgICAgIDwvc3Bhbj5cblxuICAgICAgPCEtLSBUcmFpbGluZyBzbG90OiBvbmx5IHNob3duIHdoZW4gZXhwYW5kZWQgLS0+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNFeHBhbmRlZFwiPlxuICAgICAgICA8c3BhbiAqbmdJZj1cIml0ZW0/LmJhZGdlICYmICFoYXNDaGlsZHJlblwiIGNsYXNzPVwiY3FhLW5hdi1iYWRnZVwiPnt7IGl0ZW0uYmFkZ2UgfX08L3NwYW4+XG5cbiAgICAgICAgPHNwYW5cbiAgICAgICAgICAqbmdJZj1cIml0ZW0/LnN0YXR1cyA9PT0gJ2xpdmUnICYmICFoYXNDaGlsZHJlblwiXG4gICAgICAgICAgY2xhc3M9XCJjcWEtbmF2LXN0YXR1cy1kb3QgY3FhLW5hdi1zdGF0dXMtZG90LS1saXZlXCI+XG4gICAgICAgIDwvc3Bhbj5cblxuICAgICAgICA8c3BhblxuICAgICAgICAgICpuZ0lmPVwiaXRlbT8uc3RhdHVzID09PSAnZGFuZ2VyJyAmJiAhaGFzQ2hpbGRyZW5cIlxuICAgICAgICAgIGNsYXNzPVwiY3FhLW5hdi1zdGF0dXMtZG90IGNxYS1uYXYtc3RhdHVzLWRvdC0tZGFuZ2VyXCI+XG4gICAgICAgIDwvc3Bhbj5cblxuICAgICAgICA8c3BhbiAqbmdJZj1cImhhc0NoaWxkcmVuXCIgY2xhc3M9XCJjcWEtbmF2LWNoZXZcIiBbY2xhc3MuY3FhLW5hdi1jaGV2LS1vcGVuXT1cImlzT3BlblwiPlxuICAgICAgICAgIDxzdmcgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiXG4gICAgICAgICAgICBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiB3aWR0aD1cIjE0XCIgaGVpZ2h0PVwiMTRcIj5cbiAgICAgICAgICAgIDxwb2x5bGluZSBwb2ludHM9XCI5LDYgMTUsMTIgOSwxOFwiLz5cbiAgICAgICAgICA8L3N2Zz5cbiAgICAgICAgPC9zcGFuPlxuICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgIDxzcGFuXG4gICAgICAgICpuZ0lmPVwiIWlzRXhwYW5kZWQgJiYgaXRlbT8uc3RhdHVzID09PSAnbGl2ZSdcIlxuICAgICAgICBjbGFzcz1cImNxYS1uYXYtbGl2ZS1jb3JuZXJcIj5cbiAgICAgIDwvc3Bhbj5cbiAgICA8L2J1dHRvbj5cblxuICAgIDwhLS0gQ29sbGFwc2VkIHBhcmVudCBzdWJtZW51OiBDREsgb3ZlcmxheSAob3V0c2lkZSBhc2lkZSAvIHNjcm9sbGluZyBuYXYpIC0tPlxuICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgY2RrQ29ubmVjdGVkT3ZlcmxheVxuICAgICAgW2Nka0Nvbm5lY3RlZE92ZXJsYXlPcmlnaW5dPVwiZmx5b3V0T3JpZ2luXCJcbiAgICAgIFtjZGtDb25uZWN0ZWRPdmVybGF5T3Blbl09XCJjb2xsYXBzZWRGbHlvdXRPcGVuXCJcbiAgICAgIFtjZGtDb25uZWN0ZWRPdmVybGF5UG9zaXRpb25zXT1cImNvbGxhcHNlZEZseW91dFBvc2l0aW9uc1wiXG4gICAgICBbY2RrQ29ubmVjdGVkT3ZlcmxheUhhc0JhY2tkcm9wXT1cImZhbHNlXCJcbiAgICAgIFtjZGtDb25uZWN0ZWRPdmVybGF5UHVzaF09XCJ0cnVlXCJcbiAgICAgIFtjZGtDb25uZWN0ZWRPdmVybGF5U2Nyb2xsU3RyYXRlZ3ldPVwiZmx5b3V0U2Nyb2xsU3RyYXRlZ3lcIlxuICAgICAgW2Nka0Nvbm5lY3RlZE92ZXJsYXlQYW5lbENsYXNzXT1cIidjcWEtbmF2LWZseW91dC1vdmVybGF5LXBhbmUnXCJcbiAgICAgIChvdmVybGF5T3V0c2lkZUNsaWNrKT1cImNsb3NlQ29sbGFwc2VkRmx5b3V0KClcIlxuICAgICAgKGRldGFjaCk9XCJjbG9zZUNvbGxhcHNlZEZseW91dCgpXCI+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwiY3FhLW5hdi1mbHlvdXQtb3ZlcmxheSBjcWEtbmF2LWZseW91dC1wYW5lbFwiXG4gICAgICAgIHJvbGU9XCJtZW51XCJcbiAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJpdGVtLmxhYmVsXCJcbiAgICAgICAgKG1vdXNlZW50ZXIpPVwib25GbHlvdXRPdmVybGF5UG9pbnRlckVudGVyKClcIlxuICAgICAgICAobW91c2VsZWF2ZSk9XCJvbkZseW91dE92ZXJsYXlQb2ludGVyTGVhdmUoKVwiXG4gICAgICAgIChmb2N1c291dCk9XCJvbkZseW91dE92ZXJsYXlGb2N1c091dCgkZXZlbnQpXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjcWEtbmF2LWZseW91dC1wYW5lbC10aXRsZVwiPnt7IGl0ZW0ubGFiZWwgfX08L2Rpdj5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICpuZ0Zvcj1cImxldCBjaGlsZCBvZiBpdGVtPy5jaGlsZHJlblwiXG4gICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgcm9sZT1cIm1lbnVpdGVtXCJcbiAgICAgICAgICBjbGFzcz1cImNxYS1uYXYtZmx5b3V0LXJvd1wiXG4gICAgICAgICAgW2NsYXNzLmNxYS1uYXYtZmx5b3V0LXJvdy0tYWN0aXZlXT1cImlzQ2hpbGRSb3dBY3RpdmUoY2hpbGQuaWQpXCJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiY2hpbGQuZGlzYWJsZWRcIlxuICAgICAgICAgIChjbGljayk9XCJvbkNoaWxkUm93Q2xpY2soJGV2ZW50LCBjaGlsZClcIj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cImNxYS1uYXYtZmx5b3V0LXJvdy1pY29uXCI+XG4gICAgICAgICAgICA8aSAqbmdJZj1cImNoaWxkLmljb25DbGFzc1wiIFtjbGFzc109XCJjaGlsZC5pY29uQ2xhc3NcIj48L2k+XG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY3FhLW5hdi1mbHlvdXQtcm93LWxhYmVsXCI+e3sgY2hpbGQubGFiZWwgfX08L3NwYW4+XG4gICAgICAgICAgPHNwYW4gKm5nSWY9XCJjaGlsZC5pc05ld1wiIGNsYXNzPVwiY3FhLW5hdi1mbHlvdXQtcm93LW5ld1wiPk5ldzwvc3Bhbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -35,11 +35,11 @@ export class NavMenuComponent {
35
35
  this.itemClick.emit(id);
36
36
  }
37
37
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NavMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
38
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: NavMenuComponent, selector: "cqa-nav-menu", inputs: { items: "items", activeId: "activeId", isExpanded: "isExpanded", openParents: "openParents" }, outputs: { itemClick: "itemClick" }, ngImport: i0, template: "<div id=\"cqa-ui-root\" style=\"display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden;width:100%;\">\n <nav class=\"cqa-nav-menu\" [class.cqa-nav-menu--collapsed]=\"!isExpanded\">\n <ng-container *ngFor=\"let item of items\">\n\n <!-- Section header (expanded only \u2014 collapsed rail shows icons only) -->\n <ng-container *ngIf=\"isSection(item) && isExpanded\">\n <div class=\"cqa-nav-section\">\n <span class=\"cqa-nav-section-label\">{{ item.label }}</span>\n </div>\n </ng-container>\n\n <!-- Nav item -->\n <ng-container *ngIf=\"!isSection(item)\">\n <cqa-nav-item\n [item]=\"asNavItem(item)\"\n [isActive]=\"isItemActive(asNavItem(item))\"\n [isExpanded]=\"isExpanded\"\n [isOpen]=\"isParentOpen(asNavItem(item))\"\n [activeNavId]=\"activeId\"\n (itemClick)=\"onItemClick($event)\">\n </cqa-nav-item>\n\n <!-- Sub-menu (only rendered when sidebar is expanded) -->\n <div\n *ngIf=\"isExpanded && asNavItem(item).children?.length\"\n class=\"cqa-nav-children\"\n [class.cqa-nav-children--open]=\"isParentOpen(asNavItem(item))\">\n <cqa-nav-sub-item\n *ngFor=\"let child of asNavItem(item).children\"\n [item]=\"child\"\n [isActive]=\"isChildActive(child.id)\"\n (itemClick)=\"onItemClick($event)\">\n </cqa-nav-sub-item>\n </div>\n </ng-container>\n\n </ng-container>\n </nav>\n</div>\n", styles: [":host{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden;width:100%}.cqa-nav-menu{flex:1 1 auto;overflow-y:auto;overflow-x:hidden;padding:4px 0 8px;min-height:0}.cqa-nav-menu::-webkit-scrollbar{width:4px}.cqa-nav-menu::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:2px}.cqa-nav-menu--collapsed{overflow-x:visible}.cqa-nav-section{font-size:10px;font-weight:700;letter-spacing:.1em;color:#ffffff8c;padding:14px 18px 6px;text-transform:uppercase;height:28px;overflow:hidden;transition:opacity .16s 80ms,padding .16s,font-size .16s;opacity:1}.cqa-nav-children{margin:1px 21px;padding:1px 0 1px 15px;border-left:1px solid rgba(255,255,255,.18);overflow:hidden;transition:max-height .25s ease-out,opacity .18s,margin .2s;max-height:0;opacity:0;display:flex;flex-direction:column;gap:1px}.cqa-nav-children--open{max-height:320px;opacity:1}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.NavItemComponent, selector: "cqa-nav-item", inputs: ["item", "isActive", "isExpanded", "isOpen", "activeNavId"], outputs: ["itemClick"] }, { kind: "component", type: i3.NavSubItemComponent, selector: "cqa-nav-sub-item", inputs: ["item", "isActive"], outputs: ["itemClick"] }] });
38
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: NavMenuComponent, selector: "cqa-nav-menu", inputs: { items: "items", activeId: "activeId", isExpanded: "isExpanded", openParents: "openParents" }, outputs: { itemClick: "itemClick" }, ngImport: i0, template: "<div class=\"cqa-nav-menu-outer\">\n <nav class=\"cqa-nav-menu\" [class.cqa-nav-menu--collapsed]=\"!isExpanded\">\n <ng-container *ngFor=\"let item of items\">\n\n <!-- Section header (expanded only \u2014 collapsed rail shows icons only) -->\n <ng-container *ngIf=\"isSection(item) && isExpanded\">\n <div class=\"cqa-nav-section\">\n <span class=\"cqa-nav-section-label\">{{ item.label }}</span>\n </div>\n </ng-container>\n\n <!-- Nav item -->\n <ng-container *ngIf=\"!isSection(item)\">\n <cqa-nav-item\n [item]=\"asNavItem(item)\"\n [isActive]=\"isItemActive(asNavItem(item))\"\n [isExpanded]=\"isExpanded\"\n [isOpen]=\"isParentOpen(asNavItem(item))\"\n [activeNavId]=\"activeId\"\n (itemClick)=\"onItemClick($event)\">\n </cqa-nav-item>\n\n <!-- Sub-menu (only rendered when sidebar is expanded) -->\n <div\n *ngIf=\"isExpanded && asNavItem(item).children?.length\"\n class=\"cqa-nav-children\"\n [class.cqa-nav-children--open]=\"isParentOpen(asNavItem(item))\">\n <cqa-nav-sub-item\n *ngFor=\"let child of asNavItem(item).children\"\n [item]=\"child\"\n [isActive]=\"isChildActive(child.id)\"\n (itemClick)=\"onItemClick($event)\">\n </cqa-nav-sub-item>\n </div>\n </ng-container>\n\n </ng-container>\n </nav>\n</div>\n", styles: [":host{display:flex;flex-direction:column;flex:1 1 0;min-height:0;overflow:hidden;width:100%}.cqa-nav-menu-outer{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden;width:100%}.cqa-nav-menu{flex:1 1 auto;overflow-y:auto;overflow-x:hidden;padding:4px 0 8px;min-height:0;overscroll-behavior:contain}.cqa-nav-menu::-webkit-scrollbar{width:4px}.cqa-nav-menu::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:2px}.cqa-nav-menu--collapsed{overflow-x:visible}.cqa-nav-section{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:10px;font-weight:700;letter-spacing:.1em;color:#ffffff8c;padding:14px 18px 6px;text-transform:uppercase;overflow:hidden;transition:opacity .16s 80ms,padding .16s,font-size .16s;opacity:1}.cqa-nav-children{margin:1px 21px;padding:1px 0 1px 15px;border-left:1px solid rgba(255,255,255,.18);overflow:hidden;transition:max-height .25s ease-out,opacity .18s,margin .2s;max-height:0;opacity:0;display:flex;flex-direction:column;gap:1px}.cqa-nav-children--open{max-height:320px;opacity:1}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.NavItemComponent, selector: "cqa-nav-item", inputs: ["item", "isActive", "isExpanded", "isOpen", "activeNavId"], outputs: ["itemClick"] }, { kind: "component", type: i3.NavSubItemComponent, selector: "cqa-nav-sub-item", inputs: ["item", "isActive"], outputs: ["itemClick"] }] });
39
39
  }
40
40
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NavMenuComponent, decorators: [{
41
41
  type: Component,
42
- args: [{ selector: 'cqa-nav-menu', template: "<div id=\"cqa-ui-root\" style=\"display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden;width:100%;\">\n <nav class=\"cqa-nav-menu\" [class.cqa-nav-menu--collapsed]=\"!isExpanded\">\n <ng-container *ngFor=\"let item of items\">\n\n <!-- Section header (expanded only \u2014 collapsed rail shows icons only) -->\n <ng-container *ngIf=\"isSection(item) && isExpanded\">\n <div class=\"cqa-nav-section\">\n <span class=\"cqa-nav-section-label\">{{ item.label }}</span>\n </div>\n </ng-container>\n\n <!-- Nav item -->\n <ng-container *ngIf=\"!isSection(item)\">\n <cqa-nav-item\n [item]=\"asNavItem(item)\"\n [isActive]=\"isItemActive(asNavItem(item))\"\n [isExpanded]=\"isExpanded\"\n [isOpen]=\"isParentOpen(asNavItem(item))\"\n [activeNavId]=\"activeId\"\n (itemClick)=\"onItemClick($event)\">\n </cqa-nav-item>\n\n <!-- Sub-menu (only rendered when sidebar is expanded) -->\n <div\n *ngIf=\"isExpanded && asNavItem(item).children?.length\"\n class=\"cqa-nav-children\"\n [class.cqa-nav-children--open]=\"isParentOpen(asNavItem(item))\">\n <cqa-nav-sub-item\n *ngFor=\"let child of asNavItem(item).children\"\n [item]=\"child\"\n [isActive]=\"isChildActive(child.id)\"\n (itemClick)=\"onItemClick($event)\">\n </cqa-nav-sub-item>\n </div>\n </ng-container>\n\n </ng-container>\n </nav>\n</div>\n", styles: [":host{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden;width:100%}.cqa-nav-menu{flex:1 1 auto;overflow-y:auto;overflow-x:hidden;padding:4px 0 8px;min-height:0}.cqa-nav-menu::-webkit-scrollbar{width:4px}.cqa-nav-menu::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:2px}.cqa-nav-menu--collapsed{overflow-x:visible}.cqa-nav-section{font-size:10px;font-weight:700;letter-spacing:.1em;color:#ffffff8c;padding:14px 18px 6px;text-transform:uppercase;height:28px;overflow:hidden;transition:opacity .16s 80ms,padding .16s,font-size .16s;opacity:1}.cqa-nav-children{margin:1px 21px;padding:1px 0 1px 15px;border-left:1px solid rgba(255,255,255,.18);overflow:hidden;transition:max-height .25s ease-out,opacity .18s,margin .2s;max-height:0;opacity:0;display:flex;flex-direction:column;gap:1px}.cqa-nav-children--open{max-height:320px;opacity:1}\n"] }]
42
+ args: [{ selector: 'cqa-nav-menu', template: "<div class=\"cqa-nav-menu-outer\">\n <nav class=\"cqa-nav-menu\" [class.cqa-nav-menu--collapsed]=\"!isExpanded\">\n <ng-container *ngFor=\"let item of items\">\n\n <!-- Section header (expanded only \u2014 collapsed rail shows icons only) -->\n <ng-container *ngIf=\"isSection(item) && isExpanded\">\n <div class=\"cqa-nav-section\">\n <span class=\"cqa-nav-section-label\">{{ item.label }}</span>\n </div>\n </ng-container>\n\n <!-- Nav item -->\n <ng-container *ngIf=\"!isSection(item)\">\n <cqa-nav-item\n [item]=\"asNavItem(item)\"\n [isActive]=\"isItemActive(asNavItem(item))\"\n [isExpanded]=\"isExpanded\"\n [isOpen]=\"isParentOpen(asNavItem(item))\"\n [activeNavId]=\"activeId\"\n (itemClick)=\"onItemClick($event)\">\n </cqa-nav-item>\n\n <!-- Sub-menu (only rendered when sidebar is expanded) -->\n <div\n *ngIf=\"isExpanded && asNavItem(item).children?.length\"\n class=\"cqa-nav-children\"\n [class.cqa-nav-children--open]=\"isParentOpen(asNavItem(item))\">\n <cqa-nav-sub-item\n *ngFor=\"let child of asNavItem(item).children\"\n [item]=\"child\"\n [isActive]=\"isChildActive(child.id)\"\n (itemClick)=\"onItemClick($event)\">\n </cqa-nav-sub-item>\n </div>\n </ng-container>\n\n </ng-container>\n </nav>\n</div>\n", styles: [":host{display:flex;flex-direction:column;flex:1 1 0;min-height:0;overflow:hidden;width:100%}.cqa-nav-menu-outer{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden;width:100%}.cqa-nav-menu{flex:1 1 auto;overflow-y:auto;overflow-x:hidden;padding:4px 0 8px;min-height:0;overscroll-behavior:contain}.cqa-nav-menu::-webkit-scrollbar{width:4px}.cqa-nav-menu::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:2px}.cqa-nav-menu--collapsed{overflow-x:visible}.cqa-nav-section{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:10px;font-weight:700;letter-spacing:.1em;color:#ffffff8c;padding:14px 18px 6px;text-transform:uppercase;overflow:hidden;transition:opacity .16s 80ms,padding .16s,font-size .16s;opacity:1}.cqa-nav-children{margin:1px 21px;padding:1px 0 1px 15px;border-left:1px solid rgba(255,255,255,.18);overflow:hidden;transition:max-height .25s ease-out,opacity .18s,margin .2s;max-height:0;opacity:0;display:flex;flex-direction:column;gap:1px}.cqa-nav-children--open{max-height:320px;opacity:1}\n"] }]
43
43
  }], propDecorators: { items: [{
44
44
  type: Input
45
45
  }], activeId: [{
@@ -51,4 +51,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
51
51
  }], itemClick: [{
52
52
  type: Output
53
53
  }] } });
54
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2LW1lbnUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9zaWRlYmFyL25hdi1tZW51LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvc2lkZWJhci9uYXYtbWVudS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZFLE9BQU8sRUFBb0MsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7Ozs7O0FBT2xGLE1BQU0sT0FBTyxnQkFBZ0I7SUFDbEIsS0FBSyxHQUFrQixFQUFFLENBQUM7SUFDMUIsUUFBUSxHQUFXLEVBQUUsQ0FBQztJQUN0QixVQUFVLEdBQVksS0FBSyxDQUFDO0lBQ3JDLGlFQUFpRTtJQUN4RCxXQUFXLEdBQWEsRUFBRSxDQUFDO0lBRTFCLFNBQVMsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO0lBRWpELFNBQVMsQ0FBQyxJQUFpQjtRQUN6QixPQUFPLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQsU0FBUyxDQUFDLElBQWlCO1FBQ3pCLE9BQU8sSUFBZSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxZQUFZLENBQUMsSUFBYTtRQUN4QixJQUFJLElBQUksQ0FBQyxFQUFFLEtBQUssSUFBSSxDQUFDLFFBQVE7WUFBRSxPQUFPLElBQUksQ0FBQztRQUMzQyxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNsQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDekQsQ0FBQztRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVELFlBQVksQ0FBQyxJQUFhO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRCxhQUFhLENBQUMsT0FBZTtRQUMzQixPQUFPLE9BQU8sS0FBSyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ25DLENBQUM7SUFFRCxXQUFXLENBQUMsRUFBVTtRQUNwQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUMxQixDQUFDO3dHQW5DVSxnQkFBZ0I7NEZBQWhCLGdCQUFnQixpTUNSN0Isc2hEQXVDQTs7NEZEL0JhLGdCQUFnQjtrQkFMNUIsU0FBUzsrQkFDRSxjQUFjOzhCQUtmLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBRUcsV0FBVztzQkFBbkIsS0FBSztnQkFFSSxTQUFTO3NCQUFsQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5hdk1lbnVJdGVtLCBOYXZJdGVtLCBOYXZTZWN0aW9uLCBpc05hdlNlY3Rpb24gfSBmcm9tICcuL3NpZGViYXIubW9kZWxzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY3FhLW5hdi1tZW51JyxcbiAgdGVtcGxhdGVVcmw6ICcuL25hdi1tZW51LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbmF2LW1lbnUuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBOYXZNZW51Q29tcG9uZW50IHtcbiAgQElucHV0KCkgaXRlbXM6IE5hdk1lbnVJdGVtW10gPSBbXTtcbiAgQElucHV0KCkgYWN0aXZlSWQ6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSBpc0V4cGFuZGVkOiBib29sZWFuID0gZmFsc2U7XG4gIC8qKiBJRHMgb2YgcGFyZW50IG5hdiBpdGVtcyB3aG9zZSBzdWItbWVudXMgYXJlIGN1cnJlbnRseSBvcGVuICovXG4gIEBJbnB1dCgpIG9wZW5QYXJlbnRzOiBzdHJpbmdbXSA9IFtdO1xuXG4gIEBPdXRwdXQoKSBpdGVtQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICBpc1NlY3Rpb24oaXRlbTogTmF2TWVudUl0ZW0pOiBpdGVtIGlzIE5hdlNlY3Rpb24ge1xuICAgIHJldHVybiBpc05hdlNlY3Rpb24oaXRlbSk7XG4gIH1cblxuICBhc05hdkl0ZW0oaXRlbTogTmF2TWVudUl0ZW0pOiBOYXZJdGVtIHtcbiAgICByZXR1cm4gaXRlbSBhcyBOYXZJdGVtO1xuICB9XG5cbiAgaXNJdGVtQWN0aXZlKGl0ZW06IE5hdkl0ZW0pOiBib29sZWFuIHtcbiAgICBpZiAoaXRlbS5pZCA9PT0gdGhpcy5hY3RpdmVJZCkgcmV0dXJuIHRydWU7XG4gICAgaWYgKGl0ZW0uY2hpbGRyZW4pIHtcbiAgICAgIHJldHVybiBpdGVtLmNoaWxkcmVuLnNvbWUoYyA9PiBjLmlkID09PSB0aGlzLmFjdGl2ZUlkKTtcbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgaXNQYXJlbnRPcGVuKGl0ZW06IE5hdkl0ZW0pOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5vcGVuUGFyZW50cy5pbmNsdWRlcyhpdGVtLmlkKTtcbiAgfVxuXG4gIGlzQ2hpbGRBY3RpdmUoY2hpbGRJZDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGNoaWxkSWQgPT09IHRoaXMuYWN0aXZlSWQ7XG4gIH1cblxuICBvbkl0ZW1DbGljayhpZDogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5pdGVtQ2xpY2suZW1pdChpZCk7XG4gIH1cbn1cbiIsIjxkaXYgaWQ9XCJjcWEtdWktcm9vdFwiIHN0eWxlPVwiZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4OjEgMSBhdXRvO21pbi1oZWlnaHQ6MDtvdmVyZmxvdzpoaWRkZW47d2lkdGg6MTAwJTtcIj5cbiAgPG5hdiBjbGFzcz1cImNxYS1uYXYtbWVudVwiIFtjbGFzcy5jcWEtbmF2LW1lbnUtLWNvbGxhcHNlZF09XCIhaXNFeHBhbmRlZFwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgaXRlbXNcIj5cblxuICAgICAgPCEtLSBTZWN0aW9uIGhlYWRlciAoZXhwYW5kZWQgb25seSDigJQgY29sbGFwc2VkIHJhaWwgc2hvd3MgaWNvbnMgb25seSkgLS0+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNTZWN0aW9uKGl0ZW0pICYmIGlzRXhwYW5kZWRcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNxYS1uYXYtc2VjdGlvblwiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY3FhLW5hdi1zZWN0aW9uLWxhYmVsXCI+e3sgaXRlbS5sYWJlbCB9fTwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgPCEtLSBOYXYgaXRlbSAtLT5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXNTZWN0aW9uKGl0ZW0pXCI+XG4gICAgICAgIDxjcWEtbmF2LWl0ZW1cbiAgICAgICAgICBbaXRlbV09XCJhc05hdkl0ZW0oaXRlbSlcIlxuICAgICAgICAgIFtpc0FjdGl2ZV09XCJpc0l0ZW1BY3RpdmUoYXNOYXZJdGVtKGl0ZW0pKVwiXG4gICAgICAgICAgW2lzRXhwYW5kZWRdPVwiaXNFeHBhbmRlZFwiXG4gICAgICAgICAgW2lzT3Blbl09XCJpc1BhcmVudE9wZW4oYXNOYXZJdGVtKGl0ZW0pKVwiXG4gICAgICAgICAgW2FjdGl2ZU5hdklkXT1cImFjdGl2ZUlkXCJcbiAgICAgICAgICAoaXRlbUNsaWNrKT1cIm9uSXRlbUNsaWNrKCRldmVudClcIj5cbiAgICAgICAgPC9jcWEtbmF2LWl0ZW0+XG5cbiAgICAgICAgPCEtLSBTdWItbWVudSAob25seSByZW5kZXJlZCB3aGVuIHNpZGViYXIgaXMgZXhwYW5kZWQpIC0tPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgKm5nSWY9XCJpc0V4cGFuZGVkICYmIGFzTmF2SXRlbShpdGVtKS5jaGlsZHJlbj8ubGVuZ3RoXCJcbiAgICAgICAgICBjbGFzcz1cImNxYS1uYXYtY2hpbGRyZW5cIlxuICAgICAgICAgIFtjbGFzcy5jcWEtbmF2LWNoaWxkcmVuLS1vcGVuXT1cImlzUGFyZW50T3Blbihhc05hdkl0ZW0oaXRlbSkpXCI+XG4gICAgICAgICAgPGNxYS1uYXYtc3ViLWl0ZW1cbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCBjaGlsZCBvZiBhc05hdkl0ZW0oaXRlbSkuY2hpbGRyZW5cIlxuICAgICAgICAgICAgW2l0ZW1dPVwiY2hpbGRcIlxuICAgICAgICAgICAgW2lzQWN0aXZlXT1cImlzQ2hpbGRBY3RpdmUoY2hpbGQuaWQpXCJcbiAgICAgICAgICAgIChpdGVtQ2xpY2spPVwib25JdGVtQ2xpY2soJGV2ZW50KVwiPlxuICAgICAgICAgIDwvY3FhLW5hdi1zdWItaXRlbT5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L25hdj5cbjwvZGl2PlxuIl19
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2LW1lbnUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9zaWRlYmFyL25hdi1tZW51LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvc2lkZWJhci9uYXYtbWVudS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZFLE9BQU8sRUFBb0MsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7Ozs7O0FBT2xGLE1BQU0sT0FBTyxnQkFBZ0I7SUFDbEIsS0FBSyxHQUFrQixFQUFFLENBQUM7SUFDMUIsUUFBUSxHQUFXLEVBQUUsQ0FBQztJQUN0QixVQUFVLEdBQVksS0FBSyxDQUFDO0lBQ3JDLGlFQUFpRTtJQUN4RCxXQUFXLEdBQWEsRUFBRSxDQUFDO0lBRTFCLFNBQVMsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO0lBRWpELFNBQVMsQ0FBQyxJQUFpQjtRQUN6QixPQUFPLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQsU0FBUyxDQUFDLElBQWlCO1FBQ3pCLE9BQU8sSUFBZSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxZQUFZLENBQUMsSUFBYTtRQUN4QixJQUFJLElBQUksQ0FBQyxFQUFFLEtBQUssSUFBSSxDQUFDLFFBQVE7WUFBRSxPQUFPLElBQUksQ0FBQztRQUMzQyxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNsQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDekQsQ0FBQztRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVELFlBQVksQ0FBQyxJQUFhO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRCxhQUFhLENBQUMsT0FBZTtRQUMzQixPQUFPLE9BQU8sS0FBSyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ25DLENBQUM7SUFFRCxXQUFXLENBQUMsRUFBVTtRQUNwQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUMxQixDQUFDO3dHQW5DVSxnQkFBZ0I7NEZBQWhCLGdCQUFnQixpTUNSN0IsNDdDQXVDQTs7NEZEL0JhLGdCQUFnQjtrQkFMNUIsU0FBUzsrQkFDRSxjQUFjOzhCQUtmLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBRUcsV0FBVztzQkFBbkIsS0FBSztnQkFFSSxTQUFTO3NCQUFsQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5hdk1lbnVJdGVtLCBOYXZJdGVtLCBOYXZTZWN0aW9uLCBpc05hdlNlY3Rpb24gfSBmcm9tICcuL3NpZGViYXIubW9kZWxzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY3FhLW5hdi1tZW51JyxcbiAgdGVtcGxhdGVVcmw6ICcuL25hdi1tZW51LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbmF2LW1lbnUuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBOYXZNZW51Q29tcG9uZW50IHtcbiAgQElucHV0KCkgaXRlbXM6IE5hdk1lbnVJdGVtW10gPSBbXTtcbiAgQElucHV0KCkgYWN0aXZlSWQ6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSBpc0V4cGFuZGVkOiBib29sZWFuID0gZmFsc2U7XG4gIC8qKiBJRHMgb2YgcGFyZW50IG5hdiBpdGVtcyB3aG9zZSBzdWItbWVudXMgYXJlIGN1cnJlbnRseSBvcGVuICovXG4gIEBJbnB1dCgpIG9wZW5QYXJlbnRzOiBzdHJpbmdbXSA9IFtdO1xuXG4gIEBPdXRwdXQoKSBpdGVtQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICBpc1NlY3Rpb24oaXRlbTogTmF2TWVudUl0ZW0pOiBpdGVtIGlzIE5hdlNlY3Rpb24ge1xuICAgIHJldHVybiBpc05hdlNlY3Rpb24oaXRlbSk7XG4gIH1cblxuICBhc05hdkl0ZW0oaXRlbTogTmF2TWVudUl0ZW0pOiBOYXZJdGVtIHtcbiAgICByZXR1cm4gaXRlbSBhcyBOYXZJdGVtO1xuICB9XG5cbiAgaXNJdGVtQWN0aXZlKGl0ZW06IE5hdkl0ZW0pOiBib29sZWFuIHtcbiAgICBpZiAoaXRlbS5pZCA9PT0gdGhpcy5hY3RpdmVJZCkgcmV0dXJuIHRydWU7XG4gICAgaWYgKGl0ZW0uY2hpbGRyZW4pIHtcbiAgICAgIHJldHVybiBpdGVtLmNoaWxkcmVuLnNvbWUoYyA9PiBjLmlkID09PSB0aGlzLmFjdGl2ZUlkKTtcbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgaXNQYXJlbnRPcGVuKGl0ZW06IE5hdkl0ZW0pOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5vcGVuUGFyZW50cy5pbmNsdWRlcyhpdGVtLmlkKTtcbiAgfVxuXG4gIGlzQ2hpbGRBY3RpdmUoY2hpbGRJZDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGNoaWxkSWQgPT09IHRoaXMuYWN0aXZlSWQ7XG4gIH1cblxuICBvbkl0ZW1DbGljayhpZDogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5pdGVtQ2xpY2suZW1pdChpZCk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJjcWEtbmF2LW1lbnUtb3V0ZXJcIj5cbiAgPG5hdiBjbGFzcz1cImNxYS1uYXYtbWVudVwiIFtjbGFzcy5jcWEtbmF2LW1lbnUtLWNvbGxhcHNlZF09XCIhaXNFeHBhbmRlZFwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgaXRlbXNcIj5cblxuICAgICAgPCEtLSBTZWN0aW9uIGhlYWRlciAoZXhwYW5kZWQgb25seSDigJQgY29sbGFwc2VkIHJhaWwgc2hvd3MgaWNvbnMgb25seSkgLS0+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNTZWN0aW9uKGl0ZW0pICYmIGlzRXhwYW5kZWRcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNxYS1uYXYtc2VjdGlvblwiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY3FhLW5hdi1zZWN0aW9uLWxhYmVsXCI+e3sgaXRlbS5sYWJlbCB9fTwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgPCEtLSBOYXYgaXRlbSAtLT5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXNTZWN0aW9uKGl0ZW0pXCI+XG4gICAgICAgIDxjcWEtbmF2LWl0ZW1cbiAgICAgICAgICBbaXRlbV09XCJhc05hdkl0ZW0oaXRlbSlcIlxuICAgICAgICAgIFtpc0FjdGl2ZV09XCJpc0l0ZW1BY3RpdmUoYXNOYXZJdGVtKGl0ZW0pKVwiXG4gICAgICAgICAgW2lzRXhwYW5kZWRdPVwiaXNFeHBhbmRlZFwiXG4gICAgICAgICAgW2lzT3Blbl09XCJpc1BhcmVudE9wZW4oYXNOYXZJdGVtKGl0ZW0pKVwiXG4gICAgICAgICAgW2FjdGl2ZU5hdklkXT1cImFjdGl2ZUlkXCJcbiAgICAgICAgICAoaXRlbUNsaWNrKT1cIm9uSXRlbUNsaWNrKCRldmVudClcIj5cbiAgICAgICAgPC9jcWEtbmF2LWl0ZW0+XG5cbiAgICAgICAgPCEtLSBTdWItbWVudSAob25seSByZW5kZXJlZCB3aGVuIHNpZGViYXIgaXMgZXhwYW5kZWQpIC0tPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgKm5nSWY9XCJpc0V4cGFuZGVkICYmIGFzTmF2SXRlbShpdGVtKS5jaGlsZHJlbj8ubGVuZ3RoXCJcbiAgICAgICAgICBjbGFzcz1cImNxYS1uYXYtY2hpbGRyZW5cIlxuICAgICAgICAgIFtjbGFzcy5jcWEtbmF2LWNoaWxkcmVuLS1vcGVuXT1cImlzUGFyZW50T3Blbihhc05hdkl0ZW0oaXRlbSkpXCI+XG4gICAgICAgICAgPGNxYS1uYXYtc3ViLWl0ZW1cbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCBjaGlsZCBvZiBhc05hdkl0ZW0oaXRlbSkuY2hpbGRyZW5cIlxuICAgICAgICAgICAgW2l0ZW1dPVwiY2hpbGRcIlxuICAgICAgICAgICAgW2lzQWN0aXZlXT1cImlzQ2hpbGRBY3RpdmUoY2hpbGQuaWQpXCJcbiAgICAgICAgICAgIChpdGVtQ2xpY2spPVwib25JdGVtQ2xpY2soJGV2ZW50KVwiPlxuICAgICAgICAgIDwvY3FhLW5hdi1zdWItaXRlbT5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L25hdj5cbjwvZGl2PlxuIl19
@@ -11,11 +11,11 @@ export class NavSubItemComponent {
11
11
  }
12
12
  }
13
13
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NavSubItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
14
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: NavSubItemComponent, selector: "cqa-nav-sub-item", inputs: { item: "item", isActive: "isActive" }, outputs: { itemClick: "itemClick" }, ngImport: i0, template: "<div id=\"cqa-ui-root\" style=\"display:block\">\n <button\n class=\"cqa-nav-sub-item\"\n [class.cqa-nav-sub-item--active]=\"isActive\"\n [class.cqa-nav-sub-item--disabled]=\"item?.disabled\"\n (click)=\"onClick()\"\n type=\"button\">\n\n <span class=\"cqa-nav-sub-icon\">\n <i [class]=\"item?.iconClass\"></i>\n </span>\n\n <span class=\"cqa-nav-sub-label\">{{ item?.label }}</span>\n\n <span *ngIf=\"item?.isNew\" class=\"cqa-nav-sub-badge cqa-nav-sub-badge--new\">New</span>\n </button>\n</div>\n", styles: ["@charset \"UTF-8\";.cqa-nav-sub-item{display:flex;align-items:center;gap:10px;padding:7px 10px;margin:0;border-radius:7px;color:#d8d9fc;font-size:12px;font-weight:400;line-height:normal;width:100%;text-align:left;background:transparent;border:none;cursor:pointer;transition:background .12s,color .12s;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.cqa-nav-sub-item:hover:not(.cqa-nav-sub-item--active){background:#ffffff1a;color:#fff}.cqa-nav-sub-item--active{background:#8a8cf4;color:#fbfcff;font-weight:600}.cqa-nav-sub-item--active .cqa-nav-sub-icon{opacity:1;color:#fbfcff}.cqa-nav-sub-item--active .cqa-nav-sub-label{color:#fbfcff;font-weight:600}.cqa-nav-sub-item--active:hover{background:#8a8cf4;color:#fbfcff}.cqa-nav-sub-item--disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.cqa-nav-sub-icon{width:15px;height:15px;flex-shrink:0;display:flex;align-items:center;justify-content:center;opacity:.92;font-size:13px;color:inherit}.cqa-nav-sub-label{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:inherit}.cqa-nav-sub-badge{font-size:11px;font-weight:600;padding:1px 7px;border-radius:999px;flex-shrink:0}.cqa-nav-sub-badge--new{background:#feecbd;color:#7e6012;border:1px solid #fddf92}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
14
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: NavSubItemComponent, selector: "cqa-nav-sub-item", inputs: { item: "item", isActive: "isActive" }, outputs: { itemClick: "itemClick" }, ngImport: i0, template: "<div class=\"cqa-nav-surface\">\n <button\n class=\"cqa-nav-sub-item\"\n [class.cqa-nav-sub-item--active]=\"isActive\"\n [class.cqa-nav-sub-item--disabled]=\"item?.disabled\"\n (click)=\"onClick()\"\n type=\"button\">\n\n <span class=\"cqa-nav-sub-icon\">\n <i [class]=\"item?.iconClass\"></i>\n </span>\n\n <span class=\"cqa-nav-sub-label\">{{ item?.label }}</span>\n\n <span *ngIf=\"item?.isNew\" class=\"cqa-nav-sub-badge cqa-nav-sub-badge--new\">New</span>\n </button>\n</div>\n", styles: ["@charset \"UTF-8\";.cqa-nav-surface{display:block;width:100%}.cqa-nav-sub-item{display:flex;align-items:center;gap:10px;padding:7px 10px;margin:0;border-radius:7px;color:#d8d9fc;font-size:12px;font-weight:400;line-height:normal;width:100%;text-align:left;background:transparent;border:none;cursor:pointer;transition:background .12s,color .12s;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.cqa-nav-sub-item:hover:not(.cqa-nav-sub-item--active){background:#ffffff1a;color:#fff}.cqa-nav-sub-item--active{background:#8a8cf4;color:#fbfcff;font-weight:600}.cqa-nav-sub-item--active .cqa-nav-sub-icon{opacity:1;color:#fbfcff}.cqa-nav-sub-item--active .cqa-nav-sub-label{color:#fbfcff;font-weight:600}.cqa-nav-sub-item--active:hover{background:#8a8cf4;color:#fbfcff}.cqa-nav-sub-item--disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.cqa-nav-sub-icon{width:15px;height:15px;flex-shrink:0;display:flex;align-items:center;justify-content:center;opacity:.92;font-size:13px;color:inherit}.cqa-nav-sub-label{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:inherit}.cqa-nav-sub-badge{font-size:11px;font-weight:600;padding:1px 7px;border-radius:999px;flex-shrink:0}.cqa-nav-sub-badge--new{background:#feecbd;color:#7e6012;border:1px solid #fddf92}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
15
15
  }
16
16
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NavSubItemComponent, decorators: [{
17
17
  type: Component,
18
- args: [{ selector: 'cqa-nav-sub-item', template: "<div id=\"cqa-ui-root\" style=\"display:block\">\n <button\n class=\"cqa-nav-sub-item\"\n [class.cqa-nav-sub-item--active]=\"isActive\"\n [class.cqa-nav-sub-item--disabled]=\"item?.disabled\"\n (click)=\"onClick()\"\n type=\"button\">\n\n <span class=\"cqa-nav-sub-icon\">\n <i [class]=\"item?.iconClass\"></i>\n </span>\n\n <span class=\"cqa-nav-sub-label\">{{ item?.label }}</span>\n\n <span *ngIf=\"item?.isNew\" class=\"cqa-nav-sub-badge cqa-nav-sub-badge--new\">New</span>\n </button>\n</div>\n", styles: ["@charset \"UTF-8\";.cqa-nav-sub-item{display:flex;align-items:center;gap:10px;padding:7px 10px;margin:0;border-radius:7px;color:#d8d9fc;font-size:12px;font-weight:400;line-height:normal;width:100%;text-align:left;background:transparent;border:none;cursor:pointer;transition:background .12s,color .12s;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.cqa-nav-sub-item:hover:not(.cqa-nav-sub-item--active){background:#ffffff1a;color:#fff}.cqa-nav-sub-item--active{background:#8a8cf4;color:#fbfcff;font-weight:600}.cqa-nav-sub-item--active .cqa-nav-sub-icon{opacity:1;color:#fbfcff}.cqa-nav-sub-item--active .cqa-nav-sub-label{color:#fbfcff;font-weight:600}.cqa-nav-sub-item--active:hover{background:#8a8cf4;color:#fbfcff}.cqa-nav-sub-item--disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.cqa-nav-sub-icon{width:15px;height:15px;flex-shrink:0;display:flex;align-items:center;justify-content:center;opacity:.92;font-size:13px;color:inherit}.cqa-nav-sub-label{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:inherit}.cqa-nav-sub-badge{font-size:11px;font-weight:600;padding:1px 7px;border-radius:999px;flex-shrink:0}.cqa-nav-sub-badge--new{background:#feecbd;color:#7e6012;border:1px solid #fddf92}\n"] }]
18
+ args: [{ selector: 'cqa-nav-sub-item', template: "<div class=\"cqa-nav-surface\">\n <button\n class=\"cqa-nav-sub-item\"\n [class.cqa-nav-sub-item--active]=\"isActive\"\n [class.cqa-nav-sub-item--disabled]=\"item?.disabled\"\n (click)=\"onClick()\"\n type=\"button\">\n\n <span class=\"cqa-nav-sub-icon\">\n <i [class]=\"item?.iconClass\"></i>\n </span>\n\n <span class=\"cqa-nav-sub-label\">{{ item?.label }}</span>\n\n <span *ngIf=\"item?.isNew\" class=\"cqa-nav-sub-badge cqa-nav-sub-badge--new\">New</span>\n </button>\n</div>\n", styles: ["@charset \"UTF-8\";.cqa-nav-surface{display:block;width:100%}.cqa-nav-sub-item{display:flex;align-items:center;gap:10px;padding:7px 10px;margin:0;border-radius:7px;color:#d8d9fc;font-size:12px;font-weight:400;line-height:normal;width:100%;text-align:left;background:transparent;border:none;cursor:pointer;transition:background .12s,color .12s;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.cqa-nav-sub-item:hover:not(.cqa-nav-sub-item--active){background:#ffffff1a;color:#fff}.cqa-nav-sub-item--active{background:#8a8cf4;color:#fbfcff;font-weight:600}.cqa-nav-sub-item--active .cqa-nav-sub-icon{opacity:1;color:#fbfcff}.cqa-nav-sub-item--active .cqa-nav-sub-label{color:#fbfcff;font-weight:600}.cqa-nav-sub-item--active:hover{background:#8a8cf4;color:#fbfcff}.cqa-nav-sub-item--disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.cqa-nav-sub-icon{width:15px;height:15px;flex-shrink:0;display:flex;align-items:center;justify-content:center;opacity:.92;font-size:13px;color:inherit}.cqa-nav-sub-label{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:inherit}.cqa-nav-sub-badge{font-size:11px;font-weight:600;padding:1px 7px;border-radius:999px;flex-shrink:0}.cqa-nav-sub-badge--new{background:#feecbd;color:#7e6012;border:1px solid #fddf92}\n"] }]
19
19
  }], propDecorators: { item: [{
20
20
  type: Input
21
21
  }], isActive: [{
@@ -23,4 +23,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
23
23
  }], itemClick: [{
24
24
  type: Output
25
25
  }] } });
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2LXN1Yi1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvc2lkZWJhci9uYXYtc3ViLWl0ZW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9zaWRlYmFyL25hdi1zdWItaXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFRdkUsTUFBTSxPQUFPLG1CQUFtQjtJQUNyQixJQUFJLENBQWdCO0lBQ3BCLFFBQVEsR0FBWSxLQUFLLENBQUM7SUFFekIsU0FBUyxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7SUFFakQsT0FBTztRQUNMLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLFFBQVEsRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDcEMsQ0FBQztJQUNILENBQUM7d0dBVlUsbUJBQW1COzRGQUFuQixtQkFBbUIsNklDUmhDLHVoQkFpQkE7OzRGRFRhLG1CQUFtQjtrQkFML0IsU0FBUzsrQkFDRSxrQkFBa0I7OEJBS25CLElBQUk7c0JBQVosS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVJLFNBQVM7c0JBQWxCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmF2Q2hpbGRJdGVtIH0gZnJvbSAnLi9zaWRlYmFyLm1vZGVscyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NxYS1uYXYtc3ViLWl0ZW0nLFxuICB0ZW1wbGF0ZVVybDogJy4vbmF2LXN1Yi1pdGVtLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbmF2LXN1Yi1pdGVtLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgTmF2U3ViSXRlbUNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGl0ZW0hOiBOYXZDaGlsZEl0ZW07XG4gIEBJbnB1dCgpIGlzQWN0aXZlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQE91dHB1dCgpIGl0ZW1DbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gIG9uQ2xpY2soKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLml0ZW0/LmRpc2FibGVkKSB7XG4gICAgICB0aGlzLml0ZW1DbGljay5lbWl0KHRoaXMuaXRlbS5pZCk7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IGlkPVwiY3FhLXVpLXJvb3RcIiBzdHlsZT1cImRpc3BsYXk6YmxvY2tcIj5cbiAgPGJ1dHRvblxuICAgIGNsYXNzPVwiY3FhLW5hdi1zdWItaXRlbVwiXG4gICAgW2NsYXNzLmNxYS1uYXYtc3ViLWl0ZW0tLWFjdGl2ZV09XCJpc0FjdGl2ZVwiXG4gICAgW2NsYXNzLmNxYS1uYXYtc3ViLWl0ZW0tLWRpc2FibGVkXT1cIml0ZW0/LmRpc2FibGVkXCJcbiAgICAoY2xpY2spPVwib25DbGljaygpXCJcbiAgICB0eXBlPVwiYnV0dG9uXCI+XG5cbiAgICA8c3BhbiBjbGFzcz1cImNxYS1uYXYtc3ViLWljb25cIj5cbiAgICAgIDxpIFtjbGFzc109XCJpdGVtPy5pY29uQ2xhc3NcIj48L2k+XG4gICAgPC9zcGFuPlxuXG4gICAgPHNwYW4gY2xhc3M9XCJjcWEtbmF2LXN1Yi1sYWJlbFwiPnt7IGl0ZW0/LmxhYmVsIH19PC9zcGFuPlxuXG4gICAgPHNwYW4gKm5nSWY9XCJpdGVtPy5pc05ld1wiIGNsYXNzPVwiY3FhLW5hdi1zdWItYmFkZ2UgY3FhLW5hdi1zdWItYmFkZ2UtLW5ld1wiPk5ldzwvc3Bhbj5cbiAgPC9idXR0b24+XG48L2Rpdj5cbiJdfQ==
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2LXN1Yi1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvc2lkZWJhci9uYXYtc3ViLWl0ZW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9zaWRlYmFyL25hdi1zdWItaXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFRdkUsTUFBTSxPQUFPLG1CQUFtQjtJQUNyQixJQUFJLENBQWdCO0lBQ3BCLFFBQVEsR0FBWSxLQUFLLENBQUM7SUFFekIsU0FBUyxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7SUFFakQsT0FBTztRQUNMLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLFFBQVEsRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDcEMsQ0FBQztJQUNILENBQUM7d0dBVlUsbUJBQW1COzRGQUFuQixtQkFBbUIsNklDUmhDLHNnQkFpQkE7OzRGRFRhLG1CQUFtQjtrQkFML0IsU0FBUzsrQkFDRSxrQkFBa0I7OEJBS25CLElBQUk7c0JBQVosS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVJLFNBQVM7c0JBQWxCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmF2Q2hpbGRJdGVtIH0gZnJvbSAnLi9zaWRlYmFyLm1vZGVscyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NxYS1uYXYtc3ViLWl0ZW0nLFxuICB0ZW1wbGF0ZVVybDogJy4vbmF2LXN1Yi1pdGVtLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbmF2LXN1Yi1pdGVtLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgTmF2U3ViSXRlbUNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGl0ZW0hOiBOYXZDaGlsZEl0ZW07XG4gIEBJbnB1dCgpIGlzQWN0aXZlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQE91dHB1dCgpIGl0ZW1DbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gIG9uQ2xpY2soKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLml0ZW0/LmRpc2FibGVkKSB7XG4gICAgICB0aGlzLml0ZW1DbGljay5lbWl0KHRoaXMuaXRlbS5pZCk7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiY3FhLW5hdi1zdXJmYWNlXCI+XG4gIDxidXR0b25cbiAgICBjbGFzcz1cImNxYS1uYXYtc3ViLWl0ZW1cIlxuICAgIFtjbGFzcy5jcWEtbmF2LXN1Yi1pdGVtLS1hY3RpdmVdPVwiaXNBY3RpdmVcIlxuICAgIFtjbGFzcy5jcWEtbmF2LXN1Yi1pdGVtLS1kaXNhYmxlZF09XCJpdGVtPy5kaXNhYmxlZFwiXG4gICAgKGNsaWNrKT1cIm9uQ2xpY2soKVwiXG4gICAgdHlwZT1cImJ1dHRvblwiPlxuXG4gICAgPHNwYW4gY2xhc3M9XCJjcWEtbmF2LXN1Yi1pY29uXCI+XG4gICAgICA8aSBbY2xhc3NdPVwiaXRlbT8uaWNvbkNsYXNzXCI+PC9pPlxuICAgIDwvc3Bhbj5cblxuICAgIDxzcGFuIGNsYXNzPVwiY3FhLW5hdi1zdWItbGFiZWxcIj57eyBpdGVtPy5sYWJlbCB9fTwvc3Bhbj5cblxuICAgIDxzcGFuICpuZ0lmPVwiaXRlbT8uaXNOZXdcIiBjbGFzcz1cImNxYS1uYXYtc3ViLWJhZGdlIGNxYS1uYXYtc3ViLWJhZGdlLS1uZXdcIj5OZXc8L3NwYW4+XG4gIDwvYnV0dG9uPlxuPC9kaXY+XG4iXX0=