@onecx/shell-core 5.31.0 → 5.32.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,13 +1,13 @@
1
1
  import { Component, Inject, Optional } from '@angular/core';
2
2
  import { Router } from '@angular/router';
3
3
  import { AppStateService, CONFIG_KEY, ConfigurationService, ThemeService } from '@onecx/angular-integration-interface';
4
- import { combineLatest, concat, filter, map, mergeMap, of, withLatestFrom } from 'rxjs';
4
+ import { combineLatest, filter, map, mergeMap, of, withLatestFrom } from 'rxjs';
5
5
  import { WORKSPACE_CONFIG_BFF_SERVICE_PROVIDER, } from '../../shell-interface/workspace-config-bff-service-provider';
6
6
  import * as i0 from "@angular/core";
7
7
  import * as i1 from "@onecx/angular-integration-interface";
8
8
  import * as i2 from "@angular/router";
9
- import * as i3 from "@angular/common";
10
- import * as i4 from "@onecx/angular-remote-components";
9
+ import * as i3 from "@onecx/angular-remote-components";
10
+ import * as i4 from "@angular/common";
11
11
  import * as i5 from "../../directives/src.directive";
12
12
  export class PortalFooterComponent {
13
13
  constructor(configurationService, router, appState, themeService, workspaceConfigBffService) {
@@ -33,16 +33,6 @@ export class PortalFooterComponent {
33
33
  return of(theme.logoUrl || portalData.logoUrl);
34
34
  }));
35
35
  }
36
- ngOnInit() {
37
- this.copyrightMsg$ = concat(of('All rights reserved.'), this.appState.currentWorkspace$.pipe(map((portalData) => {
38
- if (!(portalData.footerLabel === '' ||
39
- portalData.footerLabel === 'string' ||
40
- portalData.footerLabel === undefined)) {
41
- return portalData.companyName || portalData.footerLabel || 'All rights reserved.';
42
- }
43
- return '';
44
- })));
45
- }
46
36
  onErrorHandleSrc() {
47
37
  this.logoUrl$ = of(undefined);
48
38
  }
@@ -52,15 +42,15 @@ export class PortalFooterComponent {
52
42
  }
53
43
  }
54
44
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: PortalFooterComponent, deps: [{ token: i1.ConfigurationService }, { token: i2.Router }, { token: i1.AppStateService }, { token: i1.ThemeService }, { token: WORKSPACE_CONFIG_BFF_SERVICE_PROVIDER, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
55
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: PortalFooterComponent, selector: "ocx-shell-footer", ngImport: i0, template: "<div class=\"ml-3 py-2 lg:ml-5 flex flex-wrap align-items-center justify-content-between row-gap-1\">\n <div class=\"flex flex-wrap align-items-center justify-content-start gap-3 row-gap-1\">\n <img\n *ngIf=\"logoUrl$ | async as logoUrl\"\n alt=\"logo\"\n class=\"max-h-1rem\"\n [ocxShellSrc]=\"(logoUrl$ | async) ?? ''\"\n (error)=\"onErrorHandleSrc()\"\n (load)=\"onLoad(logoUrl)\"\n />\n <div class=\"flex-none text-sm\">&copy; {{copyrightMsg$ | async}}</div>\n <ocx-slot name=\"onecx-shell-footer\"></ocx-slot>\n </div>\n <div class=\"mr-5 text-sm\">{{versionInfo$ | async}}</div>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.SlotComponent, selector: "ocx-slot[name]", inputs: ["name", "inputs", "outputs"] }, { kind: "directive", type: i5.ShellSrcDirective, selector: "[ocxShellSrc]", inputs: ["ocxShellSrc"], outputs: ["error"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }] }); }
45
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: PortalFooterComponent, selector: "ocx-shell-footer", ngImport: i0, template: "<div class=\"mx-3 sm:ml-4 py-2 flex flex-wrap align-items-center justify-content-between row-gap-1\">\n <div class=\"flex flex-wrap align-items-center justify-content-start column-gap-3 row-gap-1\">\n <img\n *ngIf=\"logoUrl$ | async as logoUrl\"\n alt=\"logo\"\n class=\"max-h-1rem\"\n [ocxShellSrc]=\"logoUrl ?? ''\"\n (error)=\"onErrorHandleSrc()\"\n (load)=\"onLoad(logoUrl)\"\n />\n <ocx-slot name=\"onecx-shell-footer\"></ocx-slot>\n </div>\n <div class=\"text-xs\">{{versionInfo$ | async}}</div>\n</div>\n", styles: [""], dependencies: [{ kind: "component", type: i3.SlotComponent, selector: "ocx-slot[name]", inputs: ["name", "inputs", "outputs"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.ShellSrcDirective, selector: "[ocxShellSrc]", inputs: ["ocxShellSrc"], outputs: ["error"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }] }); }
56
46
  }
57
47
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: PortalFooterComponent, decorators: [{
58
48
  type: Component,
59
- args: [{ selector: 'ocx-shell-footer', template: "<div class=\"ml-3 py-2 lg:ml-5 flex flex-wrap align-items-center justify-content-between row-gap-1\">\n <div class=\"flex flex-wrap align-items-center justify-content-start gap-3 row-gap-1\">\n <img\n *ngIf=\"logoUrl$ | async as logoUrl\"\n alt=\"logo\"\n class=\"max-h-1rem\"\n [ocxShellSrc]=\"(logoUrl$ | async) ?? ''\"\n (error)=\"onErrorHandleSrc()\"\n (load)=\"onLoad(logoUrl)\"\n />\n <div class=\"flex-none text-sm\">&copy; {{copyrightMsg$ | async}}</div>\n <ocx-slot name=\"onecx-shell-footer\"></ocx-slot>\n </div>\n <div class=\"mr-5 text-sm\">{{versionInfo$ | async}}</div>\n</div>\n" }]
49
+ args: [{ selector: 'ocx-shell-footer', template: "<div class=\"mx-3 sm:ml-4 py-2 flex flex-wrap align-items-center justify-content-between row-gap-1\">\n <div class=\"flex flex-wrap align-items-center justify-content-start column-gap-3 row-gap-1\">\n <img\n *ngIf=\"logoUrl$ | async as logoUrl\"\n alt=\"logo\"\n class=\"max-h-1rem\"\n [ocxShellSrc]=\"logoUrl ?? ''\"\n (error)=\"onErrorHandleSrc()\"\n (load)=\"onLoad(logoUrl)\"\n />\n <ocx-slot name=\"onecx-shell-footer\"></ocx-slot>\n </div>\n <div class=\"text-xs\">{{versionInfo$ | async}}</div>\n</div>\n" }]
60
50
  }], ctorParameters: () => [{ type: i1.ConfigurationService }, { type: i2.Router }, { type: i1.AppStateService }, { type: i1.ThemeService }, { type: undefined, decorators: [{
61
51
  type: Optional
62
52
  }, {
63
53
  type: Inject,
64
54
  args: [WORKSPACE_CONFIG_BFF_SERVICE_PROVIDER]
65
55
  }] }] });
66
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9ydGFsLWZvb3Rlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3NoZWxsLWNvcmUvc3JjL2xpYi9jb21wb25lbnRzL3BvcnRhbC1mb290ZXIvcG9ydGFsLWZvb3Rlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3NoZWxsLWNvcmUvc3JjL2xpYi9jb21wb25lbnRzL3BvcnRhbC1mb290ZXIvcG9ydGFsLWZvb3Rlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBVSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDbkUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQ3hDLE9BQU8sRUFBRSxlQUFlLEVBQUUsVUFBVSxFQUFFLG9CQUFvQixFQUFFLFlBQVksRUFBRSxNQUFNLHNDQUFzQyxDQUFBO0FBQ3RILE9BQU8sRUFBYyxhQUFhLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRSxjQUFjLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFDbkcsT0FBTyxFQUNMLHFDQUFxQyxHQUV0QyxNQUFNLDZEQUE2RCxDQUFBOzs7Ozs7O0FBT3BFLE1BQU0sT0FBTyxxQkFBcUI7SUFLaEMsWUFDVSxvQkFBMEMsRUFDM0MsTUFBYyxFQUNiLFFBQXlCLEVBQ3pCLFlBQTBCLEVBRzNCLHlCQUFnRTtRQU4vRCx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBQzNDLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDYixhQUFRLEdBQVIsUUFBUSxDQUFpQjtRQUN6QixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUczQiw4QkFBeUIsR0FBekIseUJBQXlCLENBQXVDO1FBRXZFLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFFB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Qyxpb0JBZUE7OzRGRERhLHFCQUFxQjtrQkFMakMsU0FBUzsrQkFDRSxrQkFBa0I7OzBCQWN6QixRQUFROzswQkFDUixNQUFNOzJCQUFDLHFDQUFxQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0LCBPbkluaXQsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcidcbmltcG9ydCB7IEFwcFN0YXRlU2VydmljZSwgQ09ORklHX0tFWSwgQ29uZmlndXJhdGlvblNlcnZpY2UsIFRoZW1lU2VydmljZSB9IGZyb20gJ0BvbmVjeC9hbmd1bGFyLWludGVncmF0aW9uLWludGVyZmFjZSdcbmltcG9ydCB7IE9ic2VydmFibGUsIGNvbWJpbmVMYXRlc3QsIGNvbmNhdCwgZmlsdGVyLCBtYXAsIG1lcmdlTWFwLCBvZiwgd2l0aExhdGVzdEZyb20gfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHtcbiAgV09SS1NQQUNFX0NPTkZJR19CRkZfU0VSVklDRV9QUk9WSURFUixcbiAgV29ya3NwYWNlQ29uZmlnQmZmU2VydmljZSxcbn0gZnJvbSAnLi4vLi4vc2hlbGwtaW50ZXJmYWNlL3dvcmtzcGFjZS1jb25maWctYmZmLXNlcnZpY2UtcHJvdmlkZXInXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ29jeC1zaGVsbC1mb290ZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vcG9ydGFsLWZvb3Rlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3BvcnRhbC1mb290ZXIuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgUG9ydGFsRm9vdGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgbG9nb1VybCQ6IE9ic2VydmFibGU8c3RyaW5nIHwgdW5kZWZpbmVkPlxuICBjb3B5cmlnaHRNc2ckOiBPYnNlcnZhYmxlPHN0cmluZz4gfCB1bmRlZmluZWRcbiAgdmVyc2lvbkluZm8kOiBPYnNlcnZhYmxlPHN0cmluZyB8IHVuZGVmaW5lZD5cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNvbmZpZ3VyYXRpb25TZXJ2aWNlOiBDb25maWd1cmF0aW9uU2VydmljZSxcbiAgICBwdWJsaWMgcm91dGVyOiBSb3V0ZXIsXG4gICAgcHJpdmF0ZSBhcHBTdGF0ZTogQXBwU3RhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgdGhlbWVTZXJ2aWNlOiBUaGVtZVNlcnZpY2UsXG4gICAgQE9wdGlvbmFsKClcbiAgICBASW5qZWN0KFdPUktTUEFDRV9DT05GSUdfQkZGX1NFUlZJQ0VfUFJPVklERVIpXG4gICAgcHVibGljIHdvcmtzcGFjZUNvbmZpZ0JmZlNlcnZpY2U6IFdvcmtzcGFjZUNvbmZpZ0JmZlNlcnZpY2UgfCB1bmRlZmluZWRcbiAgKSB7XG4gICAgdGhpcy52ZXJzaW9uSW5mbyQgPSB0aGlzLmFwcFN0YXRlLmN1cnJlbnRNZmUkLnBpcGUoXG4gICAgICB3aXRoTGF0ZXN0RnJvbSh0aGlzLmFwcFN0YXRlLmN1cnJlbnRQb3J0YWwkLmFzT2JzZXJ2YWJsZSgpKSxcbiAgICAgIG1hcCgoW21mZSwgcG9ydGFsXSkgPT4ge1xuICAgICAgICBjb25zdCBtZmVJbmZvVmVyc2lvbiA9IG1mZT8udmVyc2lvbiB8fCAnJ1xuICAgICAgICBjb25zdCBtZmVOYW1lID0gbWZlPy5kaXNwbGF5TmFtZVxuICAgICAgICBjb25zdCBob3N0VmVyc2lvbiA9IHRoaXMuY29uZmlndXJhdGlvblNlcnZpY2UuZ2V0UHJvcGVydHkoQ09ORklHX0tFWS5BUFBfVkVSU0lPTikgfHwgJ0RFVi1MT0NBTCdcbiAgICAgICAgY29uc3QgbWZJbmZvVGV4dCA9IG1mZU5hbWUgPyBgTUYgJHttZmVOYW1lfSB2JHttZmVJbmZvVmVyc2lvbn1gIDogJydcbiAgICAgICAgcmV0dXJuIGBQb3J0YWw6ICR7cG9ydGFsLnBvcnRhbE5hbWV9IHYke2hvc3RWZXJzaW9ufSAke21mSW5mb1RleHR9YFxuICAgICAgfSlcbiAgICApXG4gICAgdGhpcy5sb2dvVXJsJCA9IGNvbWJpbmVMYXRlc3QoW1xuICAgICAgdGhpcy50aGVtZVNlcnZpY2UuY3VycmVudFRoZW1lJC5hc09ic2VydmFibGUoKSxcbiAgICAgIHRoaXMuYXBwU3RhdGUuY3VycmVudFdvcmtzcGFjZSQuYXNPYnNlcnZhYmxlKCksXG4gICAgXSkucGlwZShcbiAgICAgIG1lcmdlTWFwKChbdGhlbWUsIHBvcnRhbERhdGFdKSA9PiB7XG4gICAgICAgIGlmICghdGhlbWUubG9nb1VybCAmJiAhcG9ydGFsRGF0YS5sb2dvVXJsKSB7XG4gICAgICAgICAgcmV0dXJuICh0aGlzLndvcmtzcGFjZUNvbmZpZ0JmZlNlcnZpY2U/LmdldFRoZW1lTG9nb0J5TmFtZSh0aGVtZS5uYW1lID8/ICcnKSA/PyBvZigpKS5waXBlKFxuICAgICAgICAgICAgZmlsdGVyKChibG9iKSA9PiAhIWJsb2IpLFxuICAgICAgICAgICAgbWFwKChibG9iKSA9PiBVUkwuY3JlYXRlT2JqZWN0VVJMKGJsb2IpKVxuICAgICAgICAgIClcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gb2YodGhlbWUubG9nb1VybCB8fCBwb3J0YWxEYXRhLmxvZ29VcmwpXG4gICAgICB9KVxuICAgIClcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY29weXJpZ2h0TXNnJCA9IGNvbmNhdChcbiAgICAgIG9mKCdBbGwgcmlnaHRzIHJlc2VydmVkLicpLFxuICAgICAgdGhpcy5hcHBTdGF0ZS5jdXJyZW50V29ya3NwYWNlJC5waXBlKFxuICAgICAgICBtYXAoKHBvcnRhbERhdGEpID0+IHtcbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAhKFxuICAgICAgICAgICAgICBwb3J0YWxEYXRhLmZvb3RlckxhYmVsID09PSAnJyB8fFxuICAgICAgICAgICAgICBwb3J0YWxEYXRhLmZvb3RlckxhYmVsID09PSAnc3RyaW5nJyB8fFxuICAgICAgICAgICAgICBwb3J0YWxEYXRhLmZvb3RlckxhYmVsID09PSB1bmRlZmluZWRcbiAgICAgICAgICAgIClcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIHJldHVybiBwb3J0YWxEYXRhLmNvbXBhbnlOYW1lIHx8IHBvcnRhbERhdGEuZm9vdGVyTGFiZWwgfHwgJ0FsbCByaWdodHMgcmVzZXJ2ZWQuJ1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gJydcbiAgICAgICAgfSlcbiAgICAgIClcbiAgICApXG4gIH1cblxuICBwdWJsaWMgb25FcnJvckhhbmRsZVNyYygpOiB2b2lkIHtcbiAgICB0aGlzLmxvZ29VcmwkID0gb2YodW5kZWZpbmVkKVxuICB9XG5cbiAgb25Mb2FkKGxvZ29Vcmw6IHN0cmluZykge1xuICAgIGlmIChsb2dvVXJsLnN0YXJ0c1dpdGgoJ2Jsb2I6ICcpKSB7XG4gICAgICBVUkwucmV2b2tlT2JqZWN0VVJMKGxvZ29VcmwpXG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwibWwtMyBweS0yIGxnOm1sLTUgZmxleCBmbGV4LXdyYXAgYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1iZXR3ZWVuIHJvdy1nYXAtMVwiPlxuICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LXdyYXAgYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1zdGFydCBnYXAtMyByb3ctZ2FwLTFcIj5cbiAgICA8aW1nXG4gICAgICAqbmdJZj1cImxvZ29VcmwkIHwgYXN5bmMgYXMgbG9nb1VybFwiXG4gICAgICBhbHQ9XCJsb2dvXCJcbiAgICAgIGNsYXNzPVwibWF4LWgtMXJlbVwiXG4gICAgICBbb2N4U2hlbGxTcmNdPVwiKGxvZ29VcmwkIHwgYXN5bmMpID8/ICcnXCJcbiAgICAgIChlcnJvcik9XCJvbkVycm9ySGFuZGxlU3JjKClcIlxuICAgICAgKGxvYWQpPVwib25Mb2FkKGxvZ29VcmwpXCJcbiAgICAvPlxuICAgIDxkaXYgY2xhc3M9XCJmbGV4LW5vbmUgdGV4dC1zbVwiPiZjb3B5OyB7e2NvcHlyaWdodE1zZyQgfCBhc3luY319PC9kaXY+XG4gICAgPG9jeC1zbG90IG5hbWU9XCJvbmVjeC1zaGVsbC1mb290ZXJcIj48L29jeC1zbG90PlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cIm1yLTUgdGV4dC1zbVwiPnt7dmVyc2lvbkluZm8kIHwgYXN5bmN9fTwvZGl2PlxuPC9kaXY+XG4iXX0=
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9ydGFsLWZvb3Rlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3NoZWxsLWNvcmUvc3JjL2xpYi9jb21wb25lbnRzL3BvcnRhbC1mb290ZXIvcG9ydGFsLWZvb3Rlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3NoZWxsLWNvcmUvc3JjL2xpYi9jb21wb25lbnRzL3BvcnRhbC1mb290ZXIvcG9ydGFsLWZvb3Rlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDM0QsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQ3hDLE9BQU8sRUFBRSxlQUFlLEVBQUUsVUFBVSxFQUFFLG9CQUFvQixFQUFFLFlBQVksRUFBRSxNQUFNLHNDQUFzQyxDQUFBO0FBQ3RILE9BQU8sRUFBYyxhQUFhLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLGNBQWMsRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUMzRixPQUFPLEVBQ0wscUNBQXFDLEdBRXRDLE1BQU0sNkRBQTZELENBQUE7Ozs7Ozs7QUFPcEUsTUFBTSxPQUFPLHFCQUFxQjtJQUloQyxZQUNVLG9CQUEwQyxFQUMzQyxNQUFjLEVBQ2IsUUFBeUIsRUFDekIsWUFBMEIsRUFHM0IseUJBQWdFO1FBTi9ELHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFDM0MsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNiLGFBQVEsR0FBUixRQUFRLENBQWlCO1FBQ3pCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBRzNCLDhCQUF5QixHQUF6Qix5QkFBeUIsQ0FBdUM7UUFFdkUsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQ2hELGNBQWMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxFQUMzRCxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsRUFBRSxFQUFFO1lBQ3BCLE1BQU0sY0FBYyxHQUFHLEdBQUcsRUFBRSxPQUFPLElBQUksRUFBRSxDQUFBO1lBQ3pDLE1BQU0sT0FBTyxHQUFHLEdBQUcsRUFBRSxXQUFXLENBQUE7WUFDaEMsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLElBQUksV0FBVyxDQUFBO1lBQ2hHLE1BQU0sVUFBVSxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsTUFBTSxPQUFPLEtBQUssY0FBYyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQTtZQUNwRSxPQUFPLFdBQVcsTUFBTSxDQUFDLFVBQVUsS0FBSyxXQUFXLElBQUksVUFBVSxFQUFFLENBQUE7UUFDckUsQ0FBQyxDQUFDLENBQ0gsQ0FBQTtRQUNELElBQUksQ0FBQyxRQUFRLEdBQUcsYUFBYSxDQUFDO1lBQzVCLElBQUksQ0FBQyxZQUFZLENBQUMsYUFBYSxDQUFDLFlBQVksRUFBRTtZQUM5QyxJQUFJLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLFlBQVksRUFBRTtTQUMvQyxDQUFDLENBQUMsSUFBSSxDQUNMLFFBQVEsQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxFQUFFLEVBQUU7WUFDL0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQzFDLE9BQU8sQ0FBQyxJQUFJLENBQUMseUJBQXlCLEVBQUUsa0JBQWtCLENBQUMsS0FBSyxDQUFDLElBQUksSUFBSSxFQUFFLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FDeEYsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQ3hCLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUN6QyxDQUFBO1lBQ0gsQ0FBQztZQUNELE9BQU8sRUFBRSxDQUFDLEtBQUssQ0FBQyxPQUFPLElBQUksVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFBO1FBQ2hELENBQUMsQ0FBQyxDQUNILENBQUE7SUFDSCxDQUFDO0lBRU0sZ0JBQWdCO1FBQ3JCLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFBO0lBQy9CLENBQUM7SUFFRCxNQUFNLENBQUMsT0FBZTtRQUNwQixJQUFJLE9BQU8sQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztZQUNqQyxHQUFHLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFBO1FBQzlCLENBQUM7SUFDSCxDQUFDOytHQS9DVSxxQkFBcUIsdUlBVXRCLHFDQUFxQzttR0FWcEMscUJBQXFCLHdEQ2RsQywyaUJBY0E7OzRGREFhLHFCQUFxQjtrQkFMakMsU0FBUzsrQkFDRSxrQkFBa0I7OzBCQWF6QixRQUFROzswQkFDUixNQUFNOzJCQUFDLHFDQUFxQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0LCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInXG5pbXBvcnQgeyBBcHBTdGF0ZVNlcnZpY2UsIENPTkZJR19LRVksIENvbmZpZ3VyYXRpb25TZXJ2aWNlLCBUaGVtZVNlcnZpY2UgfSBmcm9tICdAb25lY3gvYW5ndWxhci1pbnRlZ3JhdGlvbi1pbnRlcmZhY2UnXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBjb21iaW5lTGF0ZXN0LCBmaWx0ZXIsIG1hcCwgbWVyZ2VNYXAsIG9mLCB3aXRoTGF0ZXN0RnJvbSB9IGZyb20gJ3J4anMnXG5pbXBvcnQge1xuICBXT1JLU1BBQ0VfQ09ORklHX0JGRl9TRVJWSUNFX1BST1ZJREVSLFxuICBXb3Jrc3BhY2VDb25maWdCZmZTZXJ2aWNlLFxufSBmcm9tICcuLi8uLi9zaGVsbC1pbnRlcmZhY2Uvd29ya3NwYWNlLWNvbmZpZy1iZmYtc2VydmljZS1wcm92aWRlcidcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnb2N4LXNoZWxsLWZvb3RlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9wb3J0YWwtZm9vdGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcG9ydGFsLWZvb3Rlci5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBQb3J0YWxGb290ZXJDb21wb25lbnQge1xuICBsb2dvVXJsJDogT2JzZXJ2YWJsZTxzdHJpbmcgfCB1bmRlZmluZWQ+XG4gIHZlcnNpb25JbmZvJDogT2JzZXJ2YWJsZTxzdHJpbmcgfCB1bmRlZmluZWQ+XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBjb25maWd1cmF0aW9uU2VydmljZTogQ29uZmlndXJhdGlvblNlcnZpY2UsXG4gICAgcHVibGljIHJvdXRlcjogUm91dGVyLFxuICAgIHByaXZhdGUgYXBwU3RhdGU6IEFwcFN0YXRlU2VydmljZSxcbiAgICBwcml2YXRlIHRoZW1lU2VydmljZTogVGhlbWVTZXJ2aWNlLFxuICAgIEBPcHRpb25hbCgpXG4gICAgQEluamVjdChXT1JLU1BBQ0VfQ09ORklHX0JGRl9TRVJWSUNFX1BST1ZJREVSKVxuICAgIHB1YmxpYyB3b3Jrc3BhY2VDb25maWdCZmZTZXJ2aWNlOiBXb3Jrc3BhY2VDb25maWdCZmZTZXJ2aWNlIHwgdW5kZWZpbmVkXG4gICkge1xuICAgIHRoaXMudmVyc2lvbkluZm8kID0gdGhpcy5hcHBTdGF0ZS5jdXJyZW50TWZlJC5waXBlKFxuICAgICAgd2l0aExhdGVzdEZyb20odGhpcy5hcHBTdGF0ZS5jdXJyZW50UG9ydGFsJC5hc09ic2VydmFibGUoKSksXG4gICAgICBtYXAoKFttZmUsIHBvcnRhbF0pID0+IHtcbiAgICAgICAgY29uc3QgbWZlSW5mb1ZlcnNpb24gPSBtZmU/LnZlcnNpb24gfHwgJydcbiAgICAgICAgY29uc3QgbWZlTmFtZSA9IG1mZT8uZGlzcGxheU5hbWVcbiAgICAgICAgY29uc3QgaG9zdFZlcnNpb24gPSB0aGlzLmNvbmZpZ3VyYXRpb25TZXJ2aWNlLmdldFByb3BlcnR5KENPTkZJR19LRVkuQVBQX1ZFUlNJT04pIHx8ICdERVYtTE9DQUwnXG4gICAgICAgIGNvbnN0IG1mSW5mb1RleHQgPSBtZmVOYW1lID8gYE1GICR7bWZlTmFtZX0gdiR7bWZlSW5mb1ZlcnNpb259YCA6ICcnXG4gICAgICAgIHJldHVybiBgUG9ydGFsOiAke3BvcnRhbC5wb3J0YWxOYW1lfSB2JHtob3N0VmVyc2lvbn0gJHttZkluZm9UZXh0fWBcbiAgICAgIH0pXG4gICAgKVxuICAgIHRoaXMubG9nb1VybCQgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICAgIHRoaXMudGhlbWVTZXJ2aWNlLmN1cnJlbnRUaGVtZSQuYXNPYnNlcnZhYmxlKCksXG4gICAgICB0aGlzLmFwcFN0YXRlLmN1cnJlbnRXb3Jrc3BhY2UkLmFzT2JzZXJ2YWJsZSgpLFxuICAgIF0pLnBpcGUoXG4gICAgICBtZXJnZU1hcCgoW3RoZW1lLCBwb3J0YWxEYXRhXSkgPT4ge1xuICAgICAgICBpZiAoIXRoZW1lLmxvZ29VcmwgJiYgIXBvcnRhbERhdGEubG9nb1VybCkge1xuICAgICAgICAgIHJldHVybiAodGhpcy53b3Jrc3BhY2VDb25maWdCZmZTZXJ2aWNlPy5nZXRUaGVtZUxvZ29CeU5hbWUodGhlbWUubmFtZSA/PyAnJykgPz8gb2YoKSkucGlwZShcbiAgICAgICAgICAgIGZpbHRlcigoYmxvYikgPT4gISFibG9iKSxcbiAgICAgICAgICAgIG1hcCgoYmxvYikgPT4gVVJMLmNyZWF0ZU9iamVjdFVSTChibG9iKSlcbiAgICAgICAgICApXG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG9mKHRoZW1lLmxvZ29VcmwgfHwgcG9ydGFsRGF0YS5sb2dvVXJsKVxuICAgICAgfSlcbiAgICApXG4gIH1cblxuICBwdWJsaWMgb25FcnJvckhhbmRsZVNyYygpOiB2b2lkIHtcbiAgICB0aGlzLmxvZ29VcmwkID0gb2YodW5kZWZpbmVkKVxuICB9XG5cbiAgb25Mb2FkKGxvZ29Vcmw6IHN0cmluZykge1xuICAgIGlmIChsb2dvVXJsLnN0YXJ0c1dpdGgoJ2Jsb2I6ICcpKSB7XG4gICAgICBVUkwucmV2b2tlT2JqZWN0VVJMKGxvZ29VcmwpXG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwibXgtMyBzbTptbC00IHB5LTIgZmxleCBmbGV4LXdyYXAgYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1iZXR3ZWVuIHJvdy1nYXAtMVwiPlxuICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LXdyYXAgYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1zdGFydCBjb2x1bW4tZ2FwLTMgcm93LWdhcC0xXCI+XG4gICAgPGltZ1xuICAgICAgKm5nSWY9XCJsb2dvVXJsJCB8IGFzeW5jIGFzIGxvZ29VcmxcIlxuICAgICAgYWx0PVwibG9nb1wiXG4gICAgICBjbGFzcz1cIm1heC1oLTFyZW1cIlxuICAgICAgW29jeFNoZWxsU3JjXT1cImxvZ29VcmwgPz8gJydcIlxuICAgICAgKGVycm9yKT1cIm9uRXJyb3JIYW5kbGVTcmMoKVwiXG4gICAgICAobG9hZCk9XCJvbkxvYWQobG9nb1VybClcIlxuICAgIC8+XG4gICAgPG9jeC1zbG90IG5hbWU9XCJvbmVjeC1zaGVsbC1mb290ZXJcIj48L29jeC1zbG90PlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cInRleHQteHNcIj57e3ZlcnNpb25JbmZvJCB8IGFzeW5jfX08L2Rpdj5cbjwvZGl2PlxuIl19
@@ -1,27 +1,30 @@
1
1
  import { __decorate, __metadata } from "tslib";
2
- import { animate, style, transition, trigger } from '@angular/animations';
3
2
  import { Component, EventEmitter, Inject, Input, Optional, Output } from '@angular/core';
3
+ import { animate, style, transition, trigger } from '@angular/animations';
4
4
  import { UntilDestroy } from '@ngneat/until-destroy';
5
- import { AppStateService, ThemeService } from '@onecx/angular-integration-interface';
6
5
  import { combineLatest, filter, map, mergeMap, of } from 'rxjs';
6
+ import { AppStateService, ThemeService } from '@onecx/angular-integration-interface';
7
7
  import { WORKSPACE_CONFIG_BFF_SERVICE_PROVIDER, } from '../../shell-interface/workspace-config-bff-service-provider';
8
8
  import * as i0 from "@angular/core";
9
9
  import * as i1 from "@onecx/angular-integration-interface";
10
- import * as i2 from "@angular/common";
11
- import * as i3 from "@onecx/angular-remote-components";
10
+ import * as i2 from "@onecx/angular-remote-components";
11
+ import * as i3 from "@angular/common";
12
12
  import * as i4 from "primeng/skeleton";
13
- import * as i5 from "../../directives/src.directive";
13
+ import * as i5 from "primeng/tooltip";
14
+ import * as i6 from "../../directives/src.directive";
15
+ import * as i7 from "@ngx-translate/core";
14
16
  let HeaderComponent = class HeaderComponent {
15
17
  constructor(themeService, appStateService, workspaceConfigBffService) {
16
18
  this.themeService = themeService;
17
19
  this.appStateService = appStateService;
18
20
  this.workspaceConfigBffService = workspaceConfigBffService;
19
- this.menuExpanded = false;
20
- this.fallbackImg = false;
21
21
  this.fullPortalLayout = true;
22
22
  this.homeNavUrl = '/';
23
23
  this.homeNavTitle = 'Home';
24
+ this.isHorizontalMenu = false;
24
25
  this.menuButtonClick = new EventEmitter();
26
+ this.menuExpanded = false;
27
+ this.fallbackImg = false;
25
28
  this.logoUrl$ = combineLatest([
26
29
  this.themeService.currentTheme$.asObservable(),
27
30
  this.appStateService.currentWorkspace$.asObservable(),
@@ -41,7 +44,7 @@ let HeaderComponent = class HeaderComponent {
41
44
  }
42
45
  }
43
46
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: HeaderComponent, deps: [{ token: i1.ThemeService }, { token: i1.AppStateService }, { token: WORKSPACE_CONFIG_BFF_SERVICE_PROVIDER, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
44
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: HeaderComponent, selector: "ocx-shell-header", inputs: { menuButtonTitle: "menuButtonTitle", fullPortalLayout: "fullPortalLayout", homeNavUrl: "homeNavUrl", homeNavTitle: "homeNavTitle" }, outputs: { menuButtonClick: "menuButtonClick" }, ngImport: i0, template: "<div class=\"layout-topbar shadow-4\" id=\"header\" role=\"banner\">\n <div class=\"layout-topbar-left\">\n <a class=\"layout-topbar-logo\">\n <ng-container *ngIf=\"logoUrl$ | async as logoUrl\">\n <img\n *ngIf=\"logoUrl && !fallbackImg\"\n id=\"app-logo\"\n [ocxShellSrc]=\"logoUrl\"\n alt=\"Logo\"\n style=\"max-height: 100%; max-width: 100%\"\n (error)=\"fallbackImg=true\"\n (load)=\"onLoad(logoUrl)\"\n />\n </ng-container>\n <svg *ngIf=\"((logoUrl$ | async) === null) || fallbackImg\" width=\"160\" viewBox=\"0 0 283 72\" class=\"default-logo\">\n <defs id=\"SvgjsDefs4962\"></defs>\n <g\n id=\"SvgjsG4963\"\n featurekey=\"symbolFeature-0\"\n transform=\"matrix(0.7555406501686023,0,0,0.7555406501686023,-4.883814572467361,-0.26595028490140254)\"\n >\n <path\n xmlns=\"http://www.w3.org/2000/svg\"\n d=\"M88.54,46.256L9.464,0.616c-0.616-0.352-1.384-0.352-2,0c-0.62,0.36-1,1.02-1,1.736v91.296c0,0.716,0.38,1.375,1,1.731 c0.308,0.185,0.656,0.269,1,0.269c0.344,0,0.692-0.084,1-0.269L88.54,49.729c0.616-0.36,1-1.021,1-1.736 C89.54,47.276,89.152,46.616,88.54,46.256z M60.08,49.771L21.388,69.805c-0.288,0.147-0.604,0.223-0.92,0.223 c-0.36,0-0.72-0.092-1.04-0.287c-0.596-0.364-0.96-1.008-0.96-1.713v-40.06c0-0.696,0.364-1.344,0.96-1.712 c0.596-0.36,1.336-0.392,1.96-0.068l38.696,20.028c0.664,0.344,1.084,1.032,1.084,1.772C61.164,48.74,60.744,49.428,60.08,49.771z\"\n ></path>\n <path xmlns=\"http://www.w3.org/2000/svg\" d=\"M22.464,64.744l32.345-16.748l-32.345-16.74V64.744z\"></path>\n </g>\n <g\n id=\"SvgjsG4964\"\n featurekey=\"nameFeature-0\"\n transform=\"matrix(1.0207331753701396,0,0,1.0207331753701396,81.5644404108694,15.72408377414908)\"\n >\n <path\n d=\"M17.344 32.6562 c-0.78125 -0.15625 -1.5105 -0.3907 -2.1876 -0.7032 c-1.4584 -0.67711 -2.7344 -1.6146 -3.8281 -2.8125 c-1.0416 -1.0938 -1.875 -2.4479 -2.5 -4.0625 c-0.57289 -1.6146 -0.85938 -3.2552 -0.85938 -4.9219 l0 -0.15625 l0 -0.23438 c0 -1.7188 0.28648 -3.3854 0.85938 -5 c0.67711 -1.6666 1.5105 -2.9948 2.5001 -3.9844 c1.0416 -1.1979 2.2916 -2.1094 3.75 -2.7344 c0.88539 -0.41664 1.6406 -0.67703 2.2656 -0.78117 l0 -5.8594 c-1.8229 0.26039 -3.4375 0.70313 -4.8438 1.3281 c-2.2916 0.98961 -4.2448 2.3177 -5.8594 3.9844 s-2.8906 3.6458 -3.8281 5.9374 s-1.4063 4.6875 -1.4063 7.1875 l0 0.15625 l0 0.23438 c0 2.5521 0.46875 4.948 1.4063 7.1876 c0.83336 2.2396 2.0834 4.1927 3.75 5.8594 c1.6666 1.7188 3.6198 3.0469 5.8594 3.9844 c1.4063 0.625 3.0469 1.0677 4.9219 1.3281 l0 -5.9375 z M38.594 20 l0.000076294 -0.23438 c0 -2.5521 -0.46875 -4.948 -1.4063 -7.1876 c-0.9375 -2.2916 -2.2135 -4.2708 -3.8281 -5.9374 c-1.5625 -1.6666 -3.4896 -2.9688 -5.7813 -3.9063 c-1.3021 -0.625 -2.8906 -1.0677 -4.7656 -1.3281 l0 5.9375 l0.9375 0.3125 c0.46875 0.15625 0.83336 0.28648 1.0938 0.39063 c1.4584 0.67711 2.7344 1.6146 3.8281 2.8125 c1.0416 1.0938 1.875 2.4479 2.5 4.0625 c0.57289 1.6146 0.85938 3.2552 0.85938 4.9219 l0 0.15625 l0 0.23438 c0 1.7188 -0.28648 3.3854 -0.85938 5 c-0.67711 1.6666 -1.5105 2.9948 -2.5001 3.9844 c-1.0416 1.1979 -2.2916 2.1094 -3.75 2.7344 c-0.67711 0.3125 -1.3802 0.54688 -2.1094 0.70313 l0 5.9375 c1.5625 -0.20836 3.125 -0.65109 4.6875 -1.3282 c2.1354 -0.88539 4.0885 -2.2135 5.8594 -3.9844 c1.7188 -1.8229 2.9948 -3.802 3.8281 -5.9374 c0.9375 -2.2916 1.4063 -4.6875 1.4063 -7.1875 l0 -0.15625 z M43.8281 38.5937 l6.4844 0 l0 -19.922 l-6.4844 -9.1406 l0 29.063 z M69.76599999999999 1.4059999999999988 l0 25.703 l-18.359 -25.703 l-7.0313 0 l26.406 37.188 l5.3906 0 l0 -37.188 l-6.4063 0 z M86.0938 1.4059999999999988 l27.813 0 l0 5.9375 l-27.813 0 l0 -5.9375 z M86.0938 32.6562 l27.734 0 l0 5.9375 l-27.734 0 l0 -5.9375 z M86.0938 16.875 l25.078 0 l0 5.8594 l-25.078 0 l0 -5.8594 z M127.2656 12.5 c0.9375 -2.2916 2.2916 -4.2447 4.0624 -5.8593 c1.6146 -1.6146 3.698 -2.9167 6.2501 -3.9063 s5.2344 -1.4844 8.0469 -1.4844 l8.6719 0 l0 5.9375 l-8.5938 0 c-2.0313 0 -3.8281 0.33852 -5.3906 1.0156 c-1.6666 0.67711 -3.0208 1.5625 -4.0624 2.6563 c-1.0938 1.0416 -1.9791 2.3958 -2.6563 4.0624 c-0.625 1.5104 -0.9375 3.2031 -0.9375 5.0781 s0.3125 3.5677 0.9375 5.0781 c0.625 1.5625 1.5104 2.9166 2.6563 4.0625 c1.0416 1.0416 2.3958 1.901 4.0624 2.5781 c1.6666 0.625 3.4635 0.9375 5.3906 0.9375 l8.5938 0 l0 5.9375 l-8.6719 0 c-2.9166 0 -5.5729 -0.46875 -7.9688 -1.4063 c-2.5 -1.0416 -4.6094 -2.3698 -6.3281 -3.9844 c-1.7709 -1.6666 -3.125 -3.6458 -4.0625 -5.9374 c-0.98961 -2.3959 -1.4844 -4.8438 -1.4844 -7.3438 c0 -2.6563 0.49477 -5.1302 1.4844 -7.4219 z M176.484 29.375 l3.5156 -4.6875 l-0.078125 -0.15625 z M196.875 1.4059999999999988 l-7.5 0 l-9.2969 13.359 l-9.2188 -13.359 l-7.7344 0 l13.047 18.281 l-13.516 18.906 l8.3594 0 z M197.344 38.5937 l-10.313 -14.609 l-3.9063 5.2344 l6.5625 9.375 l7.6563 0 z\"\n ></path>\n </g>\n </svg>\n </a>\n\n <a\n class=\"layout-menu-button shadow-6\"\n (click)=\"onMenuButtonClick($event)\"\n pRipple\n [title]=\"menuButtonTitle ?? ('OCX_HEADER.MENU_TOGGLE')\"\n >\n <i class=\"pi pi-chevron-right\"></i>\n </a>\n </div>\n\n <div class=\"layout-topbar-right\">\n <div class=\"layout-topbar-actions-left\">\n <ng-content></ng-content>\n </div>\n <div class=\"layout-topbar-actions-right\">\n <ocx-slot name=\"onecx-shell-header-right\" class=\"layout-topbar-items\">\n <ng-template #skeleton>\n <div class=\"flex align-items-center h-full justify-content-center\" style=\"width: 56px\">\n <p-skeleton shape=\"circle\" size=\"2.5rem\" class=\"h-full flex align-items-center\"></p-skeleton>\n </div>\n </ng-template>\n </ocx-slot>\n </div>\n </div>\n</div>\n", styles: [".http-progress-loader{margin-left:8px;padding-top:5px}@media screen and (max-width: 1024px){.http-progress-loader{margin-left:0;margin-right:8px}}.default-logo{color:var(--logo-color, #12abdb);fill:currentColor}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.SlotComponent, selector: "ocx-slot[name]", inputs: ["name", "inputs", "outputs"] }, { kind: "component", type: i4.Skeleton, selector: "p-skeleton", inputs: ["styleClass", "style", "shape", "animation", "borderRadius", "size", "width", "height"] }, { kind: "directive", type: i5.ShellSrcDirective, selector: "[ocxShellSrc]", inputs: ["ocxShellSrc"], outputs: ["error"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], animations: [
47
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: HeaderComponent, selector: "ocx-shell-header", inputs: { menuButtonTitle: "menuButtonTitle", fullPortalLayout: "fullPortalLayout", homeNavUrl: "homeNavUrl", homeNavTitle: "homeNavTitle", isHorizontalMenu: "isHorizontalMenu" }, outputs: { menuButtonClick: "menuButtonClick" }, ngImport: i0, template: "<div class=\"layout-topbar\" id=\"ocx_header\" role=\"banner\">\n <div class=\"layout-topbar-left\" [ngClass]=\"{'vertical-menu': !isHorizontalMenu}\">\n <div *ngIf=\"logoUrl$ | async as logoUrl\" class=\"layout-topbar-logo\">\n <img\n *ngIf=\"logoUrl && !fallbackImg\"\n id=\"ocx_app_logo\"\n [ocxShellSrc]=\"logoUrl\"\n alt=\"Logo\"\n (error)=\"fallbackImg = true\"\n (load)=\"onLoad(logoUrl)\"\n />\n\n <svg *ngIf=\"logoUrl === null || fallbackImg\" width=\"160\" viewBox=\"0 0 283 72\" class=\"default-logo\">\n <defs id=\"SvgjsDefs4962\"></defs>\n <g\n id=\"SvgjsG4963\"\n featurekey=\"symbolFeature-0\"\n transform=\"matrix(0.7555406501686023,0,0,0.7555406501686023,-4.883814572467361,-0.26595028490140254)\"\n >\n <path\n xmlns=\"http://www.w3.org/2000/svg\"\n d=\"M88.54,46.256L9.464,0.616c-0.616-0.352-1.384-0.352-2,0c-0.62,0.36-1,1.02-1,1.736v91.296c0,0.716,0.38,1.375,1,1.731 c0.308,0.185,0.656,0.269,1,0.269c0.344,0,0.692-0.084,1-0.269L88.54,49.729c0.616-0.36,1-1.021,1-1.736 C89.54,47.276,89.152,46.616,88.54,46.256z M60.08,49.771L21.388,69.805c-0.288,0.147-0.604,0.223-0.92,0.223 c-0.36,0-0.72-0.092-1.04-0.287c-0.596-0.364-0.96-1.008-0.96-1.713v-40.06c0-0.696,0.364-1.344,0.96-1.712 c0.596-0.36,1.336-0.392,1.96-0.068l38.696,20.028c0.664,0.344,1.084,1.032,1.084,1.772C61.164,48.74,60.744,49.428,60.08,49.771z\"\n ></path>\n <path xmlns=\"http://www.w3.org/2000/svg\" d=\"M22.464,64.744l32.345-16.748l-32.345-16.74V64.744z\"></path>\n </g>\n <g\n id=\"SvgjsG4964\"\n featurekey=\"nameFeature-0\"\n transform=\"matrix(1.0207331753701396,0,0,1.0207331753701396,81.5644404108694,15.72408377414908)\"\n >\n <path\n d=\"M17.344 32.6562 c-0.78125 -0.15625 -1.5105 -0.3907 -2.1876 -0.7032 c-1.4584 -0.67711 -2.7344 -1.6146 -3.8281 -2.8125 c-1.0416 -1.0938 -1.875 -2.4479 -2.5 -4.0625 c-0.57289 -1.6146 -0.85938 -3.2552 -0.85938 -4.9219 l0 -0.15625 l0 -0.23438 c0 -1.7188 0.28648 -3.3854 0.85938 -5 c0.67711 -1.6666 1.5105 -2.9948 2.5001 -3.9844 c1.0416 -1.1979 2.2916 -2.1094 3.75 -2.7344 c0.88539 -0.41664 1.6406 -0.67703 2.2656 -0.78117 l0 -5.8594 c-1.8229 0.26039 -3.4375 0.70313 -4.8438 1.3281 c-2.2916 0.98961 -4.2448 2.3177 -5.8594 3.9844 s-2.8906 3.6458 -3.8281 5.9374 s-1.4063 4.6875 -1.4063 7.1875 l0 0.15625 l0 0.23438 c0 2.5521 0.46875 4.948 1.4063 7.1876 c0.83336 2.2396 2.0834 4.1927 3.75 5.8594 c1.6666 1.7188 3.6198 3.0469 5.8594 3.9844 c1.4063 0.625 3.0469 1.0677 4.9219 1.3281 l0 -5.9375 z M38.594 20 l0.000076294 -0.23438 c0 -2.5521 -0.46875 -4.948 -1.4063 -7.1876 c-0.9375 -2.2916 -2.2135 -4.2708 -3.8281 -5.9374 c-1.5625 -1.6666 -3.4896 -2.9688 -5.7813 -3.9063 c-1.3021 -0.625 -2.8906 -1.0677 -4.7656 -1.3281 l0 5.9375 l0.9375 0.3125 c0.46875 0.15625 0.83336 0.28648 1.0938 0.39063 c1.4584 0.67711 2.7344 1.6146 3.8281 2.8125 c1.0416 1.0938 1.875 2.4479 2.5 4.0625 c0.57289 1.6146 0.85938 3.2552 0.85938 4.9219 l0 0.15625 l0 0.23438 c0 1.7188 -0.28648 3.3854 -0.85938 5 c-0.67711 1.6666 -1.5105 2.9948 -2.5001 3.9844 c-1.0416 1.1979 -2.2916 2.1094 -3.75 2.7344 c-0.67711 0.3125 -1.3802 0.54688 -2.1094 0.70313 l0 5.9375 c1.5625 -0.20836 3.125 -0.65109 4.6875 -1.3282 c2.1354 -0.88539 4.0885 -2.2135 5.8594 -3.9844 c1.7188 -1.8229 2.9948 -3.802 3.8281 -5.9374 c0.9375 -2.2916 1.4063 -4.6875 1.4063 -7.1875 l0 -0.15625 z M43.8281 38.5937 l6.4844 0 l0 -19.922 l-6.4844 -9.1406 l0 29.063 z M69.76599999999999 1.4059999999999988 l0 25.703 l-18.359 -25.703 l-7.0313 0 l26.406 37.188 l5.3906 0 l0 -37.188 l-6.4063 0 z M86.0938 1.4059999999999988 l27.813 0 l0 5.9375 l-27.813 0 l0 -5.9375 z M86.0938 32.6562 l27.734 0 l0 5.9375 l-27.734 0 l0 -5.9375 z M86.0938 16.875 l25.078 0 l0 5.8594 l-25.078 0 l0 -5.8594 z M127.2656 12.5 c0.9375 -2.2916 2.2916 -4.2447 4.0624 -5.8593 c1.6146 -1.6146 3.698 -2.9167 6.2501 -3.9063 s5.2344 -1.4844 8.0469 -1.4844 l8.6719 0 l0 5.9375 l-8.5938 0 c-2.0313 0 -3.8281 0.33852 -5.3906 1.0156 c-1.6666 0.67711 -3.0208 1.5625 -4.0624 2.6563 c-1.0938 1.0416 -1.9791 2.3958 -2.6563 4.0624 c-0.625 1.5104 -0.9375 3.2031 -0.9375 5.0781 s0.3125 3.5677 0.9375 5.0781 c0.625 1.5625 1.5104 2.9166 2.6563 4.0625 c1.0416 1.0416 2.3958 1.901 4.0624 2.5781 c1.6666 0.625 3.4635 0.9375 5.3906 0.9375 l8.5938 0 l0 5.9375 l-8.6719 0 c-2.9166 0 -5.5729 -0.46875 -7.9688 -1.4063 c-2.5 -1.0416 -4.6094 -2.3698 -6.3281 -3.9844 c-1.7709 -1.6666 -3.125 -3.6458 -4.0625 -5.9374 c-0.98961 -2.3959 -1.4844 -4.8438 -1.4844 -7.3438 c0 -2.6563 0.49477 -5.1302 1.4844 -7.4219 z M176.484 29.375 l3.5156 -4.6875 l-0.078125 -0.15625 z M196.875 1.4059999999999988 l-7.5 0 l-9.2969 13.359 l-9.2188 -13.359 l-7.7344 0 l13.047 18.281 l-13.516 18.906 l8.3594 0 z M197.344 38.5937 l-10.313 -14.609 l-3.9063 5.2344 l6.5625 9.375 l7.6563 0 z\"\n ></path>\n </g>\n </svg>\n </div>\n <a\n id=\"ocx_vertical_menu_action_toggle\"\n class=\"layout-menu-button\"\n (click)=\"onMenuButtonClick($event)\"\n pRipple\n [pTooltip]=\"'OCX_HEADER.MENU_TOGGLE' | translate\"\n tooltipPosition=\"top\"\n tooltipEvent=\"hover\"\n >\n <i class=\"pi pi-chevron-right\"></i>\n </a>\n </div>\n\n <div class=\"layout-topbar-right\">\n <div class=\"layout-topbar-actions-left\">\n <ng-content></ng-content>\n </div>\n <div class=\"layout-topbar-actions-right\">\n <ocx-slot name=\"onecx-shell-header-right\" class=\"layout-topbar-items\">\n <ng-template #skeleton>\n <div class=\"flex align-items-center h-full justify-content-center\" style=\"width: 56px\">\n <p-skeleton shape=\"circle\" size=\"2.5rem\" class=\"h-full flex align-items-center\"></p-skeleton>\n </div>\n </ng-template>\n </ocx-slot>\n </div>\n </div>\n</div>\n", styles: [".http-progress-loader{margin-left:8px;padding-top:5px}@media screen and (max-width: 1024px){.http-progress-loader{margin-left:0;margin-right:8px}}.default-logo{color:var(--logo-color, #12abdb);fill:currentColor}\n"], dependencies: [{ kind: "component", type: i2.SlotComponent, selector: "ocx-slot[name]", inputs: ["name", "inputs", "outputs"] }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.Skeleton, selector: "p-skeleton", inputs: ["styleClass", "style", "shape", "animation", "borderRadius", "size", "width", "height"] }, { kind: "directive", type: i5.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "directive", type: i6.ShellSrcDirective, selector: "[ocxShellSrc]", inputs: ["ocxShellSrc"], outputs: ["error"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i7.TranslatePipe, name: "translate" }], animations: [
45
48
  trigger('topbarActionPanelAnimation', [
46
49
  transition(':enter', [
47
50
  style({ opacity: 0, transform: 'scaleY(0.8)' }),
@@ -67,7 +70,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImpo
67
70
  ]),
68
71
  transition(':leave', [animate('.1s linear', style({ opacity: 0 }))]),
69
72
  ]),
70
- ], template: "<div class=\"layout-topbar shadow-4\" id=\"header\" role=\"banner\">\n <div class=\"layout-topbar-left\">\n <a class=\"layout-topbar-logo\">\n <ng-container *ngIf=\"logoUrl$ | async as logoUrl\">\n <img\n *ngIf=\"logoUrl && !fallbackImg\"\n id=\"app-logo\"\n [ocxShellSrc]=\"logoUrl\"\n alt=\"Logo\"\n style=\"max-height: 100%; max-width: 100%\"\n (error)=\"fallbackImg=true\"\n (load)=\"onLoad(logoUrl)\"\n />\n </ng-container>\n <svg *ngIf=\"((logoUrl$ | async) === null) || fallbackImg\" width=\"160\" viewBox=\"0 0 283 72\" class=\"default-logo\">\n <defs id=\"SvgjsDefs4962\"></defs>\n <g\n id=\"SvgjsG4963\"\n featurekey=\"symbolFeature-0\"\n transform=\"matrix(0.7555406501686023,0,0,0.7555406501686023,-4.883814572467361,-0.26595028490140254)\"\n >\n <path\n xmlns=\"http://www.w3.org/2000/svg\"\n d=\"M88.54,46.256L9.464,0.616c-0.616-0.352-1.384-0.352-2,0c-0.62,0.36-1,1.02-1,1.736v91.296c0,0.716,0.38,1.375,1,1.731 c0.308,0.185,0.656,0.269,1,0.269c0.344,0,0.692-0.084,1-0.269L88.54,49.729c0.616-0.36,1-1.021,1-1.736 C89.54,47.276,89.152,46.616,88.54,46.256z M60.08,49.771L21.388,69.805c-0.288,0.147-0.604,0.223-0.92,0.223 c-0.36,0-0.72-0.092-1.04-0.287c-0.596-0.364-0.96-1.008-0.96-1.713v-40.06c0-0.696,0.364-1.344,0.96-1.712 c0.596-0.36,1.336-0.392,1.96-0.068l38.696,20.028c0.664,0.344,1.084,1.032,1.084,1.772C61.164,48.74,60.744,49.428,60.08,49.771z\"\n ></path>\n <path xmlns=\"http://www.w3.org/2000/svg\" d=\"M22.464,64.744l32.345-16.748l-32.345-16.74V64.744z\"></path>\n </g>\n <g\n id=\"SvgjsG4964\"\n featurekey=\"nameFeature-0\"\n transform=\"matrix(1.0207331753701396,0,0,1.0207331753701396,81.5644404108694,15.72408377414908)\"\n >\n <path\n d=\"M17.344 32.6562 c-0.78125 -0.15625 -1.5105 -0.3907 -2.1876 -0.7032 c-1.4584 -0.67711 -2.7344 -1.6146 -3.8281 -2.8125 c-1.0416 -1.0938 -1.875 -2.4479 -2.5 -4.0625 c-0.57289 -1.6146 -0.85938 -3.2552 -0.85938 -4.9219 l0 -0.15625 l0 -0.23438 c0 -1.7188 0.28648 -3.3854 0.85938 -5 c0.67711 -1.6666 1.5105 -2.9948 2.5001 -3.9844 c1.0416 -1.1979 2.2916 -2.1094 3.75 -2.7344 c0.88539 -0.41664 1.6406 -0.67703 2.2656 -0.78117 l0 -5.8594 c-1.8229 0.26039 -3.4375 0.70313 -4.8438 1.3281 c-2.2916 0.98961 -4.2448 2.3177 -5.8594 3.9844 s-2.8906 3.6458 -3.8281 5.9374 s-1.4063 4.6875 -1.4063 7.1875 l0 0.15625 l0 0.23438 c0 2.5521 0.46875 4.948 1.4063 7.1876 c0.83336 2.2396 2.0834 4.1927 3.75 5.8594 c1.6666 1.7188 3.6198 3.0469 5.8594 3.9844 c1.4063 0.625 3.0469 1.0677 4.9219 1.3281 l0 -5.9375 z M38.594 20 l0.000076294 -0.23438 c0 -2.5521 -0.46875 -4.948 -1.4063 -7.1876 c-0.9375 -2.2916 -2.2135 -4.2708 -3.8281 -5.9374 c-1.5625 -1.6666 -3.4896 -2.9688 -5.7813 -3.9063 c-1.3021 -0.625 -2.8906 -1.0677 -4.7656 -1.3281 l0 5.9375 l0.9375 0.3125 c0.46875 0.15625 0.83336 0.28648 1.0938 0.39063 c1.4584 0.67711 2.7344 1.6146 3.8281 2.8125 c1.0416 1.0938 1.875 2.4479 2.5 4.0625 c0.57289 1.6146 0.85938 3.2552 0.85938 4.9219 l0 0.15625 l0 0.23438 c0 1.7188 -0.28648 3.3854 -0.85938 5 c-0.67711 1.6666 -1.5105 2.9948 -2.5001 3.9844 c-1.0416 1.1979 -2.2916 2.1094 -3.75 2.7344 c-0.67711 0.3125 -1.3802 0.54688 -2.1094 0.70313 l0 5.9375 c1.5625 -0.20836 3.125 -0.65109 4.6875 -1.3282 c2.1354 -0.88539 4.0885 -2.2135 5.8594 -3.9844 c1.7188 -1.8229 2.9948 -3.802 3.8281 -5.9374 c0.9375 -2.2916 1.4063 -4.6875 1.4063 -7.1875 l0 -0.15625 z M43.8281 38.5937 l6.4844 0 l0 -19.922 l-6.4844 -9.1406 l0 29.063 z M69.76599999999999 1.4059999999999988 l0 25.703 l-18.359 -25.703 l-7.0313 0 l26.406 37.188 l5.3906 0 l0 -37.188 l-6.4063 0 z M86.0938 1.4059999999999988 l27.813 0 l0 5.9375 l-27.813 0 l0 -5.9375 z M86.0938 32.6562 l27.734 0 l0 5.9375 l-27.734 0 l0 -5.9375 z M86.0938 16.875 l25.078 0 l0 5.8594 l-25.078 0 l0 -5.8594 z M127.2656 12.5 c0.9375 -2.2916 2.2916 -4.2447 4.0624 -5.8593 c1.6146 -1.6146 3.698 -2.9167 6.2501 -3.9063 s5.2344 -1.4844 8.0469 -1.4844 l8.6719 0 l0 5.9375 l-8.5938 0 c-2.0313 0 -3.8281 0.33852 -5.3906 1.0156 c-1.6666 0.67711 -3.0208 1.5625 -4.0624 2.6563 c-1.0938 1.0416 -1.9791 2.3958 -2.6563 4.0624 c-0.625 1.5104 -0.9375 3.2031 -0.9375 5.0781 s0.3125 3.5677 0.9375 5.0781 c0.625 1.5625 1.5104 2.9166 2.6563 4.0625 c1.0416 1.0416 2.3958 1.901 4.0624 2.5781 c1.6666 0.625 3.4635 0.9375 5.3906 0.9375 l8.5938 0 l0 5.9375 l-8.6719 0 c-2.9166 0 -5.5729 -0.46875 -7.9688 -1.4063 c-2.5 -1.0416 -4.6094 -2.3698 -6.3281 -3.9844 c-1.7709 -1.6666 -3.125 -3.6458 -4.0625 -5.9374 c-0.98961 -2.3959 -1.4844 -4.8438 -1.4844 -7.3438 c0 -2.6563 0.49477 -5.1302 1.4844 -7.4219 z M176.484 29.375 l3.5156 -4.6875 l-0.078125 -0.15625 z M196.875 1.4059999999999988 l-7.5 0 l-9.2969 13.359 l-9.2188 -13.359 l-7.7344 0 l13.047 18.281 l-13.516 18.906 l8.3594 0 z M197.344 38.5937 l-10.313 -14.609 l-3.9063 5.2344 l6.5625 9.375 l7.6563 0 z\"\n ></path>\n </g>\n </svg>\n </a>\n\n <a\n class=\"layout-menu-button shadow-6\"\n (click)=\"onMenuButtonClick($event)\"\n pRipple\n [title]=\"menuButtonTitle ?? ('OCX_HEADER.MENU_TOGGLE')\"\n >\n <i class=\"pi pi-chevron-right\"></i>\n </a>\n </div>\n\n <div class=\"layout-topbar-right\">\n <div class=\"layout-topbar-actions-left\">\n <ng-content></ng-content>\n </div>\n <div class=\"layout-topbar-actions-right\">\n <ocx-slot name=\"onecx-shell-header-right\" class=\"layout-topbar-items\">\n <ng-template #skeleton>\n <div class=\"flex align-items-center h-full justify-content-center\" style=\"width: 56px\">\n <p-skeleton shape=\"circle\" size=\"2.5rem\" class=\"h-full flex align-items-center\"></p-skeleton>\n </div>\n </ng-template>\n </ocx-slot>\n </div>\n </div>\n</div>\n", styles: [".http-progress-loader{margin-left:8px;padding-top:5px}@media screen and (max-width: 1024px){.http-progress-loader{margin-left:0;margin-right:8px}}.default-logo{color:var(--logo-color, #12abdb);fill:currentColor}\n"] }]
73
+ ], template: "<div class=\"layout-topbar\" id=\"ocx_header\" role=\"banner\">\n <div class=\"layout-topbar-left\" [ngClass]=\"{'vertical-menu': !isHorizontalMenu}\">\n <div *ngIf=\"logoUrl$ | async as logoUrl\" class=\"layout-topbar-logo\">\n <img\n *ngIf=\"logoUrl && !fallbackImg\"\n id=\"ocx_app_logo\"\n [ocxShellSrc]=\"logoUrl\"\n alt=\"Logo\"\n (error)=\"fallbackImg = true\"\n (load)=\"onLoad(logoUrl)\"\n />\n\n <svg *ngIf=\"logoUrl === null || fallbackImg\" width=\"160\" viewBox=\"0 0 283 72\" class=\"default-logo\">\n <defs id=\"SvgjsDefs4962\"></defs>\n <g\n id=\"SvgjsG4963\"\n featurekey=\"symbolFeature-0\"\n transform=\"matrix(0.7555406501686023,0,0,0.7555406501686023,-4.883814572467361,-0.26595028490140254)\"\n >\n <path\n xmlns=\"http://www.w3.org/2000/svg\"\n d=\"M88.54,46.256L9.464,0.616c-0.616-0.352-1.384-0.352-2,0c-0.62,0.36-1,1.02-1,1.736v91.296c0,0.716,0.38,1.375,1,1.731 c0.308,0.185,0.656,0.269,1,0.269c0.344,0,0.692-0.084,1-0.269L88.54,49.729c0.616-0.36,1-1.021,1-1.736 C89.54,47.276,89.152,46.616,88.54,46.256z M60.08,49.771L21.388,69.805c-0.288,0.147-0.604,0.223-0.92,0.223 c-0.36,0-0.72-0.092-1.04-0.287c-0.596-0.364-0.96-1.008-0.96-1.713v-40.06c0-0.696,0.364-1.344,0.96-1.712 c0.596-0.36,1.336-0.392,1.96-0.068l38.696,20.028c0.664,0.344,1.084,1.032,1.084,1.772C61.164,48.74,60.744,49.428,60.08,49.771z\"\n ></path>\n <path xmlns=\"http://www.w3.org/2000/svg\" d=\"M22.464,64.744l32.345-16.748l-32.345-16.74V64.744z\"></path>\n </g>\n <g\n id=\"SvgjsG4964\"\n featurekey=\"nameFeature-0\"\n transform=\"matrix(1.0207331753701396,0,0,1.0207331753701396,81.5644404108694,15.72408377414908)\"\n >\n <path\n d=\"M17.344 32.6562 c-0.78125 -0.15625 -1.5105 -0.3907 -2.1876 -0.7032 c-1.4584 -0.67711 -2.7344 -1.6146 -3.8281 -2.8125 c-1.0416 -1.0938 -1.875 -2.4479 -2.5 -4.0625 c-0.57289 -1.6146 -0.85938 -3.2552 -0.85938 -4.9219 l0 -0.15625 l0 -0.23438 c0 -1.7188 0.28648 -3.3854 0.85938 -5 c0.67711 -1.6666 1.5105 -2.9948 2.5001 -3.9844 c1.0416 -1.1979 2.2916 -2.1094 3.75 -2.7344 c0.88539 -0.41664 1.6406 -0.67703 2.2656 -0.78117 l0 -5.8594 c-1.8229 0.26039 -3.4375 0.70313 -4.8438 1.3281 c-2.2916 0.98961 -4.2448 2.3177 -5.8594 3.9844 s-2.8906 3.6458 -3.8281 5.9374 s-1.4063 4.6875 -1.4063 7.1875 l0 0.15625 l0 0.23438 c0 2.5521 0.46875 4.948 1.4063 7.1876 c0.83336 2.2396 2.0834 4.1927 3.75 5.8594 c1.6666 1.7188 3.6198 3.0469 5.8594 3.9844 c1.4063 0.625 3.0469 1.0677 4.9219 1.3281 l0 -5.9375 z M38.594 20 l0.000076294 -0.23438 c0 -2.5521 -0.46875 -4.948 -1.4063 -7.1876 c-0.9375 -2.2916 -2.2135 -4.2708 -3.8281 -5.9374 c-1.5625 -1.6666 -3.4896 -2.9688 -5.7813 -3.9063 c-1.3021 -0.625 -2.8906 -1.0677 -4.7656 -1.3281 l0 5.9375 l0.9375 0.3125 c0.46875 0.15625 0.83336 0.28648 1.0938 0.39063 c1.4584 0.67711 2.7344 1.6146 3.8281 2.8125 c1.0416 1.0938 1.875 2.4479 2.5 4.0625 c0.57289 1.6146 0.85938 3.2552 0.85938 4.9219 l0 0.15625 l0 0.23438 c0 1.7188 -0.28648 3.3854 -0.85938 5 c-0.67711 1.6666 -1.5105 2.9948 -2.5001 3.9844 c-1.0416 1.1979 -2.2916 2.1094 -3.75 2.7344 c-0.67711 0.3125 -1.3802 0.54688 -2.1094 0.70313 l0 5.9375 c1.5625 -0.20836 3.125 -0.65109 4.6875 -1.3282 c2.1354 -0.88539 4.0885 -2.2135 5.8594 -3.9844 c1.7188 -1.8229 2.9948 -3.802 3.8281 -5.9374 c0.9375 -2.2916 1.4063 -4.6875 1.4063 -7.1875 l0 -0.15625 z M43.8281 38.5937 l6.4844 0 l0 -19.922 l-6.4844 -9.1406 l0 29.063 z M69.76599999999999 1.4059999999999988 l0 25.703 l-18.359 -25.703 l-7.0313 0 l26.406 37.188 l5.3906 0 l0 -37.188 l-6.4063 0 z M86.0938 1.4059999999999988 l27.813 0 l0 5.9375 l-27.813 0 l0 -5.9375 z M86.0938 32.6562 l27.734 0 l0 5.9375 l-27.734 0 l0 -5.9375 z M86.0938 16.875 l25.078 0 l0 5.8594 l-25.078 0 l0 -5.8594 z M127.2656 12.5 c0.9375 -2.2916 2.2916 -4.2447 4.0624 -5.8593 c1.6146 -1.6146 3.698 -2.9167 6.2501 -3.9063 s5.2344 -1.4844 8.0469 -1.4844 l8.6719 0 l0 5.9375 l-8.5938 0 c-2.0313 0 -3.8281 0.33852 -5.3906 1.0156 c-1.6666 0.67711 -3.0208 1.5625 -4.0624 2.6563 c-1.0938 1.0416 -1.9791 2.3958 -2.6563 4.0624 c-0.625 1.5104 -0.9375 3.2031 -0.9375 5.0781 s0.3125 3.5677 0.9375 5.0781 c0.625 1.5625 1.5104 2.9166 2.6563 4.0625 c1.0416 1.0416 2.3958 1.901 4.0624 2.5781 c1.6666 0.625 3.4635 0.9375 5.3906 0.9375 l8.5938 0 l0 5.9375 l-8.6719 0 c-2.9166 0 -5.5729 -0.46875 -7.9688 -1.4063 c-2.5 -1.0416 -4.6094 -2.3698 -6.3281 -3.9844 c-1.7709 -1.6666 -3.125 -3.6458 -4.0625 -5.9374 c-0.98961 -2.3959 -1.4844 -4.8438 -1.4844 -7.3438 c0 -2.6563 0.49477 -5.1302 1.4844 -7.4219 z M176.484 29.375 l3.5156 -4.6875 l-0.078125 -0.15625 z M196.875 1.4059999999999988 l-7.5 0 l-9.2969 13.359 l-9.2188 -13.359 l-7.7344 0 l13.047 18.281 l-13.516 18.906 l8.3594 0 z M197.344 38.5937 l-10.313 -14.609 l-3.9063 5.2344 l6.5625 9.375 l7.6563 0 z\"\n ></path>\n </g>\n </svg>\n </div>\n <a\n id=\"ocx_vertical_menu_action_toggle\"\n class=\"layout-menu-button\"\n (click)=\"onMenuButtonClick($event)\"\n pRipple\n [pTooltip]=\"'OCX_HEADER.MENU_TOGGLE' | translate\"\n tooltipPosition=\"top\"\n tooltipEvent=\"hover\"\n >\n <i class=\"pi pi-chevron-right\"></i>\n </a>\n </div>\n\n <div class=\"layout-topbar-right\">\n <div class=\"layout-topbar-actions-left\">\n <ng-content></ng-content>\n </div>\n <div class=\"layout-topbar-actions-right\">\n <ocx-slot name=\"onecx-shell-header-right\" class=\"layout-topbar-items\">\n <ng-template #skeleton>\n <div class=\"flex align-items-center h-full justify-content-center\" style=\"width: 56px\">\n <p-skeleton shape=\"circle\" size=\"2.5rem\" class=\"h-full flex align-items-center\"></p-skeleton>\n </div>\n </ng-template>\n </ocx-slot>\n </div>\n </div>\n</div>\n", styles: [".http-progress-loader{margin-left:8px;padding-top:5px}@media screen and (max-width: 1024px){.http-progress-loader{margin-left:0;margin-right:8px}}.default-logo{color:var(--logo-color, #12abdb);fill:currentColor}\n"] }]
71
74
  }], ctorParameters: () => [{ type: i1.ThemeService }, { type: i1.AppStateService }, { type: undefined, decorators: [{
72
75
  type: Optional
73
76
  }, {
@@ -81,7 +84,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImpo
81
84
  type: Input
82
85
  }], homeNavTitle: [{
83
86
  type: Input
87
+ }], isHorizontalMenu: [{
88
+ type: Input
84
89
  }], menuButtonClick: [{
85
90
  type: Output
86
91
  }] } });
87
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2hlbGwtY29yZS9zcmMvbGliL2NvbXBvbmVudHMvcG9ydGFsLWhlYWRlci9oZWFkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zaGVsbC1jb3JlL3NyYy9saWIvY29tcG9uZW50cy9wb3J0YWwtaGVhZGVyL2hlYWRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ3pFLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUN4RixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sdUJBQXVCLENBQUE7QUFDcEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQTtBQUNwRixPQUFPLEVBQWMsYUFBYSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUMzRSxPQUFPLEVBQ0wscUNBQXFDLEdBRXRDLE1BQU0sNkRBQTZELENBQUE7Ozs7Ozs7QUFpQjdELElBQU0sZUFBZSxHQUFyQixNQUFNLGVBQWU7SUFrQjFCLFlBQ1UsWUFBMEIsRUFDMUIsZUFBZ0MsRUFHakMseUJBQWdFO1FBSi9ELGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUdqQyw4QkFBeUIsR0FBekIseUJBQXlCLENBQXVDO1FBdEJ6RSxpQkFBWSxHQUFHLEtBQUssQ0FBQTtRQUNwQixnQkFBVyxHQUFHLEtBQUssQ0FBQTtRQUtuQixxQkFBZ0IsR0FBRyxJQUFJLENBQUE7UUFFdkIsZUFBVSxHQUFHLEdBQUcsQ0FBQTtRQUVoQixpQkFBWSxHQUFHLE1BQU0sQ0FBQTtRQUdyQixvQkFBZSxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFBO1FBV3JELElBQUksQ0FBQyxRQUFRLEdBQUcsYUFBYSxDQUFDO1lBQzVCLElBQUksQ0FBQyxZQUFZLENBQUMsYUFBYSxDQUFDLFlBQVksRUFBRTtZQUM5QyxJQUFJLENBQUMsZUFBZSxDQUFDLGlCQUFpQixDQUFDLFlBQVksRUFBRTtTQUN0RCxDQUFDLENBQUMsSUFBSSxDQUNMLFFBQVEsQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxFQUFFLEVBQUU7WUFDM0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQ3RDLE9BQU8sQ0FBQyxJQUFJLENBQUMseUJBQXlCLEVBQUUsa0JBQWtCLENBQUMsS0FBSyxDQUFDLElBQUksSUFBSSxFQUFFLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FDeEYsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQ3hCLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUN6QyxDQUFBO1lBQ0gsQ0FBQztZQUNELE9BQU8sRUFBRSxDQUFDLEtBQUssQ0FBQyxPQUFPLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFBO1FBQzVDLENBQUMsQ0FBQyxDQUNILENBQUE7SUFDSCxDQUFDO0lBRUQsaUJBQWlCLENBQUMsQ0FBUTtRQUN4QixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUM5QixDQUFDO0lBRUQsTUFBTSxDQUFDLE9BQWU7UUFDcEIsSUFBSSxPQUFPLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7WUFDakMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQTtRQUM5QixDQUFDO0lBQ0gsQ0FBQzsrR0FqRFUsZUFBZSw2RUFzQmhCLHFDQUFxQzttR0F0QnBDLGVBQWUsdVBDekI1QixpdkxBZ0VBLDJ5QkRsRGM7WUFDVixPQUFPLENBQUMsNEJBQTRCLEVBQUU7Z0JBQ3BDLFVBQVUsQ0FBQyxRQUFRLEVBQUU7b0JBQ25CLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsU0FBUyxFQUFFLGFBQWEsRUFBRSxDQUFDO29CQUMvQyxPQUFPLENBQUMsaUNBQWlDLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQztpQkFDbEYsQ0FBQztnQkFDRixVQUFVLENBQUMsUUFBUSxFQUFFLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDckUsQ0FBQztTQUNIOztBQUdVLGVBQWU7SUFEM0IsWUFBWSxFQUFFO3FDQW9CVyxZQUFZO1FBQ1QsZUFBZTtHQXBCL0IsZUFBZSxDQWtEM0I7OzRGQWxEWSxlQUFlO2tCQWYzQixTQUFTOytCQUNFLGtCQUFrQixjQUdoQjt3QkFDVixPQUFPLENBQUMsNEJBQTRCLEVBQUU7NEJBQ3BDLFVBQVUsQ0FBQyxRQUFRLEVBQUU7Z0NBQ25CLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsU0FBUyxFQUFFLGFBQWEsRUFBRSxDQUFDO2dDQUMvQyxPQUFPLENBQUMsaUNBQWlDLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQzs2QkFDbEYsQ0FBQzs0QkFDRixVQUFVLENBQUMsUUFBUSxFQUFFLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7eUJBQ3JFLENBQUM7cUJBQ0g7OzBCQXdCRSxRQUFROzswQkFDUixNQUFNOzJCQUFDLHFDQUFxQzt5Q0FqQi9DLGVBQWU7c0JBRGQsS0FBSztnQkFHTixnQkFBZ0I7c0JBRGYsS0FBSztnQkFHTixVQUFVO3NCQURULEtBQUs7Z0JBR04sWUFBWTtzQkFEWCxLQUFLO2dCQUlOLGVBQWU7c0JBRGQsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFuaW1hdGUsIHN0eWxlLCB0cmFuc2l0aW9uLCB0cmlnZ2VyIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucydcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbmplY3QsIElucHV0LCBPcHRpb25hbCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IFVudGlsRGVzdHJveSB9IGZyb20gJ0BuZ25lYXQvdW50aWwtZGVzdHJveSdcbmltcG9ydCB7IEFwcFN0YXRlU2VydmljZSwgVGhlbWVTZXJ2aWNlIH0gZnJvbSAnQG9uZWN4L2FuZ3VsYXItaW50ZWdyYXRpb24taW50ZXJmYWNlJ1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgY29tYmluZUxhdGVzdCwgZmlsdGVyLCBtYXAsIG1lcmdlTWFwLCBvZiB9IGZyb20gJ3J4anMnXG5pbXBvcnQge1xuICBXT1JLU1BBQ0VfQ09ORklHX0JGRl9TRVJWSUNFX1BST1ZJREVSLFxuICBXb3Jrc3BhY2VDb25maWdCZmZTZXJ2aWNlLFxufSBmcm9tICcuLi8uLi9zaGVsbC1pbnRlcmZhY2Uvd29ya3NwYWNlLWNvbmZpZy1iZmYtc2VydmljZS1wcm92aWRlcidcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnb2N4LXNoZWxsLWhlYWRlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9oZWFkZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9oZWFkZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgYW5pbWF0aW9uczogW1xuICAgIHRyaWdnZXIoJ3RvcGJhckFjdGlvblBhbmVsQW5pbWF0aW9uJywgW1xuICAgICAgdHJhbnNpdGlvbignOmVudGVyJywgW1xuICAgICAgICBzdHlsZSh7IG9wYWNpdHk6IDAsIHRyYW5zZm9ybTogJ3NjYWxlWSgwLjgpJyB9KSxcbiAgICAgICAgYW5pbWF0ZSgnLjEycyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKScsIHN0eWxlKHsgb3BhY2l0eTogMSwgdHJhbnNmb3JtOiAnKicgfSkpLFxuICAgICAgXSksXG4gICAgICB0cmFuc2l0aW9uKCc6bGVhdmUnLCBbYW5pbWF0ZSgnLjFzIGxpbmVhcicsIHN0eWxlKHsgb3BhY2l0eTogMCB9KSldKSxcbiAgICBdKSxcbiAgXSxcbn0pXG5AVW50aWxEZXN0cm95KClcbmV4cG9ydCBjbGFzcyBIZWFkZXJDb21wb25lbnQge1xuICBtZW51RXhwYW5kZWQgPSBmYWxzZVxuICBmYWxsYmFja0ltZyA9IGZhbHNlXG5cbiAgQElucHV0KClcbiAgbWVudUJ1dHRvblRpdGxlOiBzdHJpbmcgfCB1bmRlZmluZWRcbiAgQElucHV0KClcbiAgZnVsbFBvcnRhbExheW91dCA9IHRydWVcbiAgQElucHV0KClcbiAgaG9tZU5hdlVybCA9ICcvJ1xuICBASW5wdXQoKVxuICBob21lTmF2VGl0bGUgPSAnSG9tZSdcblxuICBAT3V0cHV0KClcbiAgbWVudUJ1dHRvbkNsaWNrOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKVxuXG4gIGxvZ29VcmwkOiBPYnNlcnZhYmxlPHN0cmluZyB8IHVuZGVmaW5lZD5cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHRoZW1lU2VydmljZTogVGhlbWVTZXJ2aWNlLFxuICAgIHByaXZhdGUgYXBwU3RhdGVTZXJ2aWNlOiBBcHBTdGF0ZVNlcnZpY2UsXG4gICAgQE9wdGlvbmFsKClcbiAgICBASW5qZWN0KFdPUktTUEFDRV9DT05GSUdfQkZGX1NFUlZJQ0VfUFJPVklERVIpXG4gICAgcHVibGljIHdvcmtzcGFjZUNvbmZpZ0JmZlNlcnZpY2U6IFdvcmtzcGFjZUNvbmZpZ0JmZlNlcnZpY2UgfCB1bmRlZmluZWRcbiAgKSB7XG4gICAgdGhpcy5sb2dvVXJsJCA9IGNvbWJpbmVMYXRlc3QoW1xuICAgICAgdGhpcy50aGVtZVNlcnZpY2UuY3VycmVudFRoZW1lJC5hc09ic2VydmFibGUoKSxcbiAgICAgIHRoaXMuYXBwU3RhdGVTZXJ2aWNlLmN1cnJlbnRXb3Jrc3BhY2UkLmFzT2JzZXJ2YWJsZSgpLFxuICAgIF0pLnBpcGUoXG4gICAgICBtZXJnZU1hcCgoW3RoZW1lLCBwb3J0YWxdKSA9PiB7XG4gICAgICAgIGlmICghdGhlbWUubG9nb1VybCAmJiAhcG9ydGFsLmxvZ29VcmwpIHtcbiAgICAgICAgICByZXR1cm4gKHRoaXMud29ya3NwYWNlQ29uZmlnQmZmU2VydmljZT8uZ2V0VGhlbWVMb2dvQnlOYW1lKHRoZW1lLm5hbWUgPz8gJycpID8/IG9mKCkpLnBpcGUoXG4gICAgICAgICAgICBmaWx0ZXIoKGJsb2IpID0+ICEhYmxvYiksXG4gICAgICAgICAgICBtYXAoKGJsb2IpID0+IFVSTC5jcmVhdGVPYmplY3RVUkwoYmxvYikpXG4gICAgICAgICAgKVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBvZih0aGVtZS5sb2dvVXJsIHx8IHBvcnRhbC5sb2dvVXJsKVxuICAgICAgfSlcbiAgICApXG4gIH1cblxuICBvbk1lbnVCdXR0b25DbGljayhlOiBFdmVudCkge1xuICAgIHRoaXMubWVudUJ1dHRvbkNsaWNrLmVtaXQoZSlcbiAgfVxuXG4gIG9uTG9hZChsb2dvVXJsOiBzdHJpbmcpIHtcbiAgICBpZiAobG9nb1VybC5zdGFydHNXaXRoKCdibG9iOiAnKSkge1xuICAgICAgVVJMLnJldm9rZU9iamVjdFVSTChsb2dvVXJsKVxuICAgIH1cbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImxheW91dC10b3BiYXIgc2hhZG93LTRcIiBpZD1cImhlYWRlclwiIHJvbGU9XCJiYW5uZXJcIj5cbiAgPGRpdiBjbGFzcz1cImxheW91dC10b3BiYXItbGVmdFwiPlxuICAgIDxhIGNsYXNzPVwibGF5b3V0LXRvcGJhci1sb2dvXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibG9nb1VybCQgfCBhc3luYyBhcyBsb2dvVXJsXCI+XG4gICAgICAgIDxpbWdcbiAgICAgICAgICAqbmdJZj1cImxvZ29VcmwgJiYgIWZhbGxiYWNrSW1nXCJcbiAgICAgICAgICBpZD1cImFwcC1sb2dvXCJcbiAgICAgICAgICBbb2N4U2hlbGxTcmNdPVwibG9nb1VybFwiXG4gICAgICAgICAgYWx0PVwiTG9nb1wiXG4gICAgICAgICAgc3R5bGU9XCJtYXgtaGVpZ2h0OiAxMDAlOyBtYXgtd2lkdGg6IDEwMCVcIlxuICAgICAgICAgIChlcnJvcik9XCJmYWxsYmFja0ltZz10cnVlXCJcbiAgICAgICAgICAobG9hZCk9XCJvbkxvYWQobG9nb1VybClcIlxuICAgICAgICAvPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8c3ZnICpuZ0lmPVwiKChsb2dvVXJsJCB8IGFzeW5jKSA9PT0gbnVsbCkgfHwgZmFsbGJhY2tJbWdcIiB3aWR0aD1cIjE2MFwiIHZpZXdCb3g9XCIwIDAgMjgzIDcyXCIgY2xhc3M9XCJkZWZhdWx0LWxvZ29cIj5cbiAgICAgICAgPGRlZnMgaWQ9XCJTdmdqc0RlZnM0OTYyXCI+PC9kZWZzPlxuICAgICAgICA8Z1xuICAgICAgICAgIGlkPVwiU3ZnanNHNDk2M1wiXG4gICAgICAgICAgZmVhdHVyZWtleT1cInN5bWJvbEZlYXR1cmUtMFwiXG4gICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDAuNzU1NTQwNjUwMTY4NjAyMywwLDAsMC43NTU1NDA2NTAxNjg2MDIzLC00Ljg4MzgxNDU3MjQ2NzM2MSwtMC4yNjU5NTAyODQ5MDE0MDI1NClcIlxuICAgICAgICA+XG4gICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgICAgICAgZD1cIk04OC41NCw0Ni4yNTZMOS40NjQsMC42MTZjLTAuNjE2LTAuMzUyLTEuMzg0LTAuMzUyLTIsMGMtMC42MiwwLjM2LTEsMS4wMi0xLDEuNzM2djkxLjI5NmMwLDAuNzE2LDAuMzgsMS4zNzUsMSwxLjczMSAgYzAuMzA4LDAuMTg1LDAuNjU2LDAuMjY5LDEsMC4yNjljMC4zNDQsMCwwLjY5Mi0wLjA4NCwxLTAuMjY5TDg4LjU0LDQ5LjcyOWMwLjYxNi0wLjM2LDEtMS4wMjEsMS0xLjczNiAgQzg5LjU0LDQ3LjI3Niw4OS4xNTIsNDYuNjE2LDg4LjU0LDQ2LjI1NnogTTYwLjA4LDQ5Ljc3MUwyMS4zODgsNjkuODA1Yy0wLjI4OCwwLjE0Ny0wLjYwNCwwLjIyMy0wLjkyLDAuMjIzICBjLTAuMzYsMC0wLjcyLTAuMDkyLTEuMDQtMC4yODdjLTAuNTk2LTAuMzY0LTAuOTYtMS4wMDgtMC45Ni0xLjcxM3YtNDAuMDZjMC0wLjY5NiwwLjM2NC0xLjM0NCwwLjk2LTEuNzEyICBjMC41OTYtMC4zNiwxLjMzNi0wLjM5MiwxLjk2LTAuMDY4bDM4LjY5NiwyMC4wMjhjMC42NjQsMC4zNDQsMS4wODQsMS4wMzIsMS4wODQsMS43NzJDNjEuMTY0LDQ4Ljc0LDYwLjc0NCw0OS40MjgsNjAuMDgsNDkuNzcxelwiXG4gICAgICAgICAgPjwvcGF0aD5cbiAgICAgICAgICA8cGF0aCB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgZD1cIk0yMi40NjQsNjQuNzQ0bDMyLjM0NS0xNi43NDhsLTMyLjM0NS0xNi43NFY2NC43NDR6XCI+PC9wYXRoPlxuICAgICAgICA8L2c+XG4gICAgICAgIDxnXG4gICAgICAgICAgaWQ9XCJTdmdqc0c0OTY0XCJcbiAgICAgICAgICBmZWF0dXJla2V5PVwibmFtZUZlYXR1cmUtMFwiXG4gICAgICAgICAgdHJhbnNmb3JtPVwibWF0cml4KDEuMDIwNzMzMTc1MzcwMTM5NiwwLDAsMS4wMjA3MzMxNzUzNzAxMzk2LDgxLjU2NDQ0MDQxMDg2OTQsMTUuNzI0MDgzNzc0MTQ5MDgpXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICBkPVwiTTE3LjM0NCAzMi42NTYyIGMtMC43ODEyNSAtMC4xNTYyNSAtMS41MTA1IC0wLjM5MDcgLTIuMTg3NiAtMC43MDMyIGMtMS40NTg0IC0wLjY3NzExIC0yLjczNDQgLTEuNjE0NiAtMy44MjgxIC0yLjgxMjUgYy0xLjA0MTYgLTEuMDkzOCAtMS44NzUgLTIuNDQ3OSAtMi41IC00LjA2MjUgYy0wLjU3Mjg5IC0xLjYxNDYgLTAuODU5MzggLTMuMjU1MiAtMC44NTkzOCAtNC45MjE5IGwwIC0wLjE1NjI1IGwwIC0wLjIzNDM4IGMwIC0xLjcxODggMC4yODY0OCAtMy4zODU0IDAuODU5MzggLTUgYzAuNjc3MTEgLTEuNjY2NiAxLjUxMDUgLTIuOTk0OCAyLjUwMDEgLTMuOTg0NCBjMS4wNDE2IC0xLjE5NzkgMi4yOTE2IC0yLjEwOTQgMy43NSAtMi43MzQ0IGMwLjg4NTM5IC0wLjQxNjY0IDEuNjQwNiAtMC42NzcwMyAyLjI2NTYgLTAuNzgxMTcgbDAgLTUuODU5NCBjLTEuODIyOSAwLjI2MDM5IC0zLjQzNzUgMC43MDMxMyAtNC44NDM4IDEuMzI4MSBjLTIuMjkxNiAwLjk4OTYxIC00LjI0NDggMi4zMTc3IC01Ljg1OTQgMy45ODQ0IHMtMi44OTA2IDMuNjQ1OCAtMy44MjgxIDUuOTM3NCBzLTEuNDA2MyA0LjY4NzUgLTEuNDA2MyA3LjE4NzUgbDAgMC4xNTYyNSBsMCAwLjIzNDM4IGMwIDIuNTUyMSAwLjQ2ODc1IDQuOTQ4IDEuNDA2MyA3LjE4NzYgYzAuODMzMzYgMi4yMzk2IDIuMDgzNCA0LjE5MjcgMy43NSA1Ljg1OTQgYzEuNjY2NiAxLjcxODggMy42MTk4IDMuMDQ2OSA1Ljg1OTQgMy45ODQ0IGMxLjQwNjMgMC42MjUgMy4wNDY5IDEuMDY3NyA0LjkyMTkgMS4zMjgxIGwwIC01LjkzNzUgeiBNMzguNTk0IDIwIGwwLjAwMDA3NjI5NCAtMC4yMzQzOCBjMCAtMi41NTIxIC0wLjQ2ODc1IC00Ljk0OCAtMS40MDYzIC03LjE4NzYgYy0wLjkzNzUgLTIuMjkxNiAtMi4yMTM1IC00LjI3MDggLTMuODI4MSAtNS45Mzc0IGMtMS41NjI1IC0xLjY2NjYgLTMuNDg5NiAtMi45Njg4IC01Ljc4MTMgLTMuOTA2MyBjLTEuMzAyMSAtMC42MjUgLTIuODkwNiAtMS4wNjc3IC00Ljc2NTYgLTEuMzI4MSBsMCA1LjkzNzUgbDAuOTM3NSAwLjMxMjUgYzAuNDY4NzUgMC4xNTYyNSAwLjgzMzM2IDAuMjg2NDggMS4wOTM4IDAuMzkwNjMgYzEuNDU4NCAwLjY3NzExIDIuNzM0NCAxLjYxNDYgMy44MjgxIDIuODEyNSBjMS4wNDE2IDEuMDkzOCAxLjg3NSAyLjQ0NzkgMi41IDQuMDYyNSBjMC41NzI4OSAxLjYxNDYgMC44NTkzOCAzLjI1NTIgMC44NTkzOCA0LjkyMTkgbDAgMC4xNTYyNSBsMCAwLjIzNDM4IGMwIDEuNzE4OCAtMC4yODY0OCAzLjM4NTQgLTAuODU5MzggNSBjLTAuNjc3MTEgMS42NjY2IC0xLjUxMDUgMi45OTQ4IC0yLjUwMDEgMy45ODQ0IGMtMS4wNDE2IDEuMTk3OSAtMi4yOTE2IDIuMTA5NCAtMy43NSAyLjczNDQgYy0wLjY3NzExIDAuMzEyNSAtMS4zODAyIDAuNTQ2ODggLTIuMTA5NCAwLjcwMzEzIGwwIDUuOTM3NSBjMS41NjI1IC0wLjIwODM2IDMuMTI1IC0wLjY1MTA5IDQuNjg3NSAtMS4zMjgyIGMyLjEzNTQgLTAuODg1MzkgNC4wODg1IC0yLjIxMzUgNS44NTk0IC0zLjk4NDQgYzEuNzE4OCAtMS44MjI5IDIuOTk0OCAtMy44MDIgMy44MjgxIC01LjkzNzQgYzAuOTM3NSAtMi4yOTE2IDEuNDA2MyAtNC42ODc1IDEuNDA2MyAtNy4xODc1IGwwIC0wLjE1NjI1IHogTTQzLjgyODEgMzguNTkzNyBsNi40ODQ0IDAgbDAgLTE5LjkyMiBsLTYuNDg0NCAtOS4xNDA2IGwwIDI5LjA2MyB6IE02OS43NjU5OTk5OTk5OTk5OSAxLjQwNTk5OTk5OTk5OTk5ODggbDAgMjUuNzAzIGwtMTguMzU5IC0yNS43MDMgbC03LjAzMTMgMCBsMjYuNDA2IDM3LjE4OCBsNS4zOTA2IDAgbDAgLTM3LjE4OCBsLTYuNDA2MyAwIHogTTg2LjA5MzggMS40MDU5OTk5OTk5OTk5OTg4IGwyNy44MTMgMCBsMCA1LjkzNzUgbC0yNy44MTMgMCBsMCAtNS45Mzc1IHogTTg2LjA5MzggMzIuNjU2MiBsMjcuNzM0IDAgbDAgNS45Mzc1IGwtMjcuNzM0IDAgbDAgLTUuOTM3NSB6IE04Ni4wOTM4IDE2Ljg3NSBsMjUuMDc4IDAgbDAgNS44NTk0IGwtMjUuMDc4IDAgbDAgLTUuODU5NCB6IE0xMjcuMjY1NiAxMi41IGMwLjkzNzUgLTIuMjkxNiAyLjI5MTYgLTQuMjQ0NyA0LjA2MjQgLTUuODU5MyBjMS42MTQ2IC0xLjYxNDYgMy42OTggLTIuOTE2NyA2LjI1MDEgLTMuOTA2MyBzNS4yMzQ0IC0xLjQ4NDQgOC4wNDY5IC0xLjQ4NDQgbDguNjcxOSAwIGwwIDUuOTM3NSBsLTguNTkzOCAwIGMtMi4wMzEzIDAgLTMuODI4MSAwLjMzODUyIC01LjM5MDYgMS4wMTU2IGMtMS42NjY2IDAuNjc3MTEgLTMuMDIwOCAxLjU2MjUgLTQuMDYyNCAyLjY1NjMgYy0xLjA5MzggMS4wNDE2IC0xLjk3OTEgMi4zOTU4IC0yLjY1NjMgNC4wNjI0IGMtMC42MjUgMS41MTA0IC0wLjkzNzUgMy4yMDMxIC0wLjkzNzUgNS4wNzgxIHMwLjMxMjUgMy41Njc3IDAuOTM3NSA1LjA3ODEgYzAuNjI1IDEuNTYyNSAxLjUxMDQgMi45MTY2IDIuNjU2MyA0LjA2MjUgYzEuMDQxNiAxLjA0MTYgMi4zOTU4IDEuOTAxIDQuMDYyNCAyLjU3ODEgYzEuNjY2NiAwLjYyNSAzLjQ2MzUgMC45Mzc1IDUuMzkwNiAwLjkzNzUgbDguNTkzOCAwIGwwIDUuOTM3NSBsLTguNjcxOSAwIGMtMi45MTY2IDAgLTUuNTcyOSAtMC40Njg3NSAtNy45Njg4IC0xLjQwNjMgYy0yLjUgLTEuMDQxNiAtNC42MDk0IC0yLjM2OTggLTYuMzI4MSAtMy45ODQ0IGMtMS43NzA5IC0xLjY2NjYgLTMuMTI1IC0zLjY0NTggLTQuMDYyNSAtNS45Mzc0IGMtMC45ODk2MSAtMi4zOTU5IC0xLjQ4NDQgLTQuODQzOCAtMS40ODQ0IC03LjM0MzggYzAgLTIuNjU2MyAwLjQ5NDc3IC01LjEzMDIgMS40ODQ0IC03LjQyMTkgeiBNMTc2LjQ4NCAyOS4zNzUgbDMuNTE1NiAtNC42ODc1IGwtMC4wNzgxMjUgLTAuMTU2MjUgeiBNMTk2Ljg3NSAxLjQwNTk5OTk5OTk5OTk5ODggbC03LjUgMCBsLTkuMjk2OSAxMy4zNTkgbC05LjIxODggLTEzLjM1OSBsLTcuNzM0NCAwIGwxMy4wNDcgMTguMjgxIGwtMTMuNTE2IDE4LjkwNiBsOC4zNTk0IDAgeiBNMTk3LjM0NCAzOC41OTM3IGwtMTAuMzEzIC0xNC42MDkgbC0zLjkwNjMgNS4yMzQ0IGw2LjU2MjUgOS4zNzUgbDcuNjU2MyAwIHpcIlxuICAgICAgICAgID48L3BhdGg+XG4gICAgICAgIDwvZz5cbiAgICAgIDwvc3ZnPlxuICAgIDwvYT5cblxuICAgIDxhXG4gICAgICBjbGFzcz1cImxheW91dC1tZW51LWJ1dHRvbiBzaGFkb3ctNlwiXG4gICAgICAoY2xpY2spPVwib25NZW51QnV0dG9uQ2xpY2soJGV2ZW50KVwiXG4gICAgICBwUmlwcGxlXG4gICAgICBbdGl0bGVdPVwibWVudUJ1dHRvblRpdGxlID8/ICgnT0NYX0hFQURFUi5NRU5VX1RPR0dMRScpXCJcbiAgICA+XG4gICAgICA8aSBjbGFzcz1cInBpIHBpLWNoZXZyb24tcmlnaHRcIj48L2k+XG4gICAgPC9hPlxuICA8L2Rpdj5cblxuICA8ZGl2IGNsYXNzPVwibGF5b3V0LXRvcGJhci1yaWdodFwiPlxuICAgIDxkaXYgY2xhc3M9XCJsYXlvdXQtdG9wYmFyLWFjdGlvbnMtbGVmdFwiPlxuICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJsYXlvdXQtdG9wYmFyLWFjdGlvbnMtcmlnaHRcIj5cbiAgICAgIDxvY3gtc2xvdCBuYW1lPVwib25lY3gtc2hlbGwtaGVhZGVyLXJpZ2h0XCIgY2xhc3M9XCJsYXlvdXQtdG9wYmFyLWl0ZW1zXCI+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSAjc2tlbGV0b24+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggYWxpZ24taXRlbXMtY2VudGVyIGgtZnVsbCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyXCIgc3R5bGU9XCJ3aWR0aDogNTZweFwiPlxuICAgICAgICAgICAgPHAtc2tlbGV0b24gc2hhcGU9XCJjaXJjbGVcIiBzaXplPVwiMi41cmVtXCIgY2xhc3M9XCJoLWZ1bGwgZmxleCBhbGlnbi1pdGVtcy1jZW50ZXJcIj48L3Atc2tlbGV0b24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8L29jeC1zbG90PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
92
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2hlbGwtY29yZS9zcmMvbGliL2NvbXBvbmVudHMvcG9ydGFsLWhlYWRlci9oZWFkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zaGVsbC1jb3JlL3NyYy9saWIvY29tcG9uZW50cy9wb3J0YWwtaGVhZGVyL2hlYWRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ3hGLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUN6RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sdUJBQXVCLENBQUE7QUFDcEQsT0FBTyxFQUFjLGFBQWEsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFFM0UsT0FBTyxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQTtBQUNwRixPQUFPLEVBQ0wscUNBQXFDLEdBRXRDLE1BQU0sNkRBQTZELENBQUE7Ozs7Ozs7OztBQWlCN0QsSUFBTSxlQUFlLEdBQXJCLE1BQU0sZUFBZTtJQVkxQixZQUNVLFlBQTBCLEVBQzFCLGVBQWdDLEVBR2pDLHlCQUFnRTtRQUovRCxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFHakMsOEJBQXlCLEdBQXpCLHlCQUF5QixDQUF1QztRQWZoRSxxQkFBZ0IsR0FBRyxJQUFJLENBQUE7UUFDdkIsZUFBVSxHQUFHLEdBQUcsQ0FBQTtRQUNoQixpQkFB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QUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQzt5QkFDckUsQ0FBQztxQkFDSDs7MEJBa0JFLFFBQVE7OzBCQUNSLE1BQU07MkJBQUMscUNBQXFDO3lDQWZ0QyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNJLGVBQWU7c0JBQXhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5qZWN0LCBJbnB1dCwgT3B0aW9uYWwsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBhbmltYXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnXG5pbXBvcnQgeyBVbnRpbERlc3Ryb3kgfSBmcm9tICdAbmduZWF0L3VudGlsLWRlc3Ryb3knXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBjb21iaW5lTGF0ZXN0LCBmaWx0ZXIsIG1hcCwgbWVyZ2VNYXAsIG9mIH0gZnJvbSAncnhqcydcblxuaW1wb3J0IHsgQXBwU3RhdGVTZXJ2aWNlLCBUaGVtZVNlcnZpY2UgfSBmcm9tICdAb25lY3gvYW5ndWxhci1pbnRlZ3JhdGlvbi1pbnRlcmZhY2UnXG5pbXBvcnQge1xuICBXT1JLU1BBQ0VfQ09ORklHX0JGRl9TRVJWSUNFX1BST1ZJREVSLFxuICBXb3Jrc3BhY2VDb25maWdCZmZTZXJ2aWNlLFxufSBmcm9tICcuLi8uLi9zaGVsbC1pbnRlcmZhY2Uvd29ya3NwYWNlLWNvbmZpZy1iZmYtc2VydmljZS1wcm92aWRlcidcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnb2N4LXNoZWxsLWhlYWRlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9oZWFkZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9oZWFkZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgYW5pbWF0aW9uczogW1xuICAgIHRyaWdnZXIoJ3RvcGJhckFjdGlvblBhbmVsQW5pbWF0aW9uJywgW1xuICAgICAgdHJhbnNpdGlvbignOmVudGVyJywgW1xuICAgICAgICBzdHlsZSh7IG9wYWNpdHk6IDAsIHRyYW5zZm9ybTogJ3NjYWxlWSgwLjgpJyB9KSxcbiAgICAgICAgYW5pbWF0ZSgnLjEycyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKScsIHN0eWxlKHsgb3BhY2l0eTogMSwgdHJhbnNmb3JtOiAnKicgfSkpLFxuICAgICAgXSksXG4gICAgICB0cmFuc2l0aW9uKCc6bGVhdmUnLCBbYW5pbWF0ZSgnLjFzIGxpbmVhcicsIHN0eWxlKHsgb3BhY2l0eTogMCB9KSldKSxcbiAgICBdKSxcbiAgXSxcbn0pXG5AVW50aWxEZXN0cm95KClcbmV4cG9ydCBjbGFzcyBIZWFkZXJDb21wb25lbnQge1xuICBASW5wdXQoKSBtZW51QnV0dG9uVGl0bGU6IHN0cmluZyB8IHVuZGVmaW5lZFxuICBASW5wdXQoKSBmdWxsUG9ydGFsTGF5b3V0ID0gdHJ1ZVxuICBASW5wdXQoKSBob21lTmF2VXJsID0gJy8nXG4gIEBJbnB1dCgpIGhvbWVOYXZUaXRsZSA9ICdIb21lJ1xuICBASW5wdXQoKSBpc0hvcml6b250YWxNZW51ID0gZmFsc2VcbiAgQE91dHB1dCgpIG1lbnVCdXR0b25DbGljazogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKClcblxuICBtZW51RXhwYW5kZWQgPSBmYWxzZVxuICBmYWxsYmFja0ltZyA9IGZhbHNlXG4gIGxvZ29VcmwkOiBPYnNlcnZhYmxlPHN0cmluZyB8IHVuZGVmaW5lZD5cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHRoZW1lU2VydmljZTogVGhlbWVTZXJ2aWNlLFxuICAgIHByaXZhdGUgYXBwU3RhdGVTZXJ2aWNlOiBBcHBTdGF0ZVNlcnZpY2UsXG4gICAgQE9wdGlvbmFsKClcbiAgICBASW5qZWN0KFdPUktTUEFDRV9DT05GSUdfQkZGX1NFUlZJQ0VfUFJPVklERVIpXG4gICAgcHVibGljIHdvcmtzcGFjZUNvbmZpZ0JmZlNlcnZpY2U6IFdvcmtzcGFjZUNvbmZpZ0JmZlNlcnZpY2UgfCB1bmRlZmluZWRcbiAgKSB7XG4gICAgdGhpcy5sb2dvVXJsJCA9IGNvbWJpbmVMYXRlc3QoW1xuICAgICAgdGhpcy50aGVtZVNlcnZpY2UuY3VycmVudFRoZW1lJC5hc09ic2VydmFibGUoKSxcbiAgICAgIHRoaXMuYXBwU3RhdGVTZXJ2aWNlLmN1cnJlbnRXb3Jrc3BhY2UkLmFzT2JzZXJ2YWJsZSgpLFxuICAgIF0pLnBpcGUoXG4gICAgICBtZXJnZU1hcCgoW3RoZW1lLCBwb3J0YWxdKSA9PiB7XG4gICAgICAgIGlmICghdGhlbWUubG9nb1VybCAmJiAhcG9ydGFsLmxvZ29VcmwpIHtcbiAgICAgICAgICByZXR1cm4gKHRoaXMud29ya3NwYWNlQ29uZmlnQmZmU2VydmljZT8uZ2V0VGhlbWVMb2dvQnlOYW1lKHRoZW1lLm5hbWUgPz8gJycpID8/IG9mKCkpLnBpcGUoXG4gICAgICAgICAgICBmaWx0ZXIoKGJsb2IpID0+ICEhYmxvYiksXG4gICAgICAgICAgICBtYXAoKGJsb2IpID0+IFVSTC5jcmVhdGVPYmplY3RVUkwoYmxvYikpXG4gICAgICAgICAgKVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBvZih0aGVtZS5sb2dvVXJsIHx8IHBvcnRhbC5sb2dvVXJsKVxuICAgICAgfSlcbiAgICApXG4gIH1cblxuICBvbk1lbnVCdXR0b25DbGljayhlOiBFdmVudCkge1xuICAgIHRoaXMubWVudUJ1dHRvbkNsaWNrLmVtaXQoZSlcbiAgfVxuXG4gIG9uTG9hZChsb2dvVXJsOiBzdHJpbmcpIHtcbiAgICBpZiAobG9nb1VybC5zdGFydHNXaXRoKCdibG9iOiAnKSkge1xuICAgICAgVVJMLnJldm9rZU9iamVjdFVSTChsb2dvVXJsKVxuICAgIH1cbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImxheW91dC10b3BiYXJcIiBpZD1cIm9jeF9oZWFkZXJcIiByb2xlPVwiYmFubmVyXCI+XG4gIDxkaXYgY2xhc3M9XCJsYXlvdXQtdG9wYmFyLWxlZnRcIiBbbmdDbGFzc109XCJ7J3ZlcnRpY2FsLW1lbnUnOiAhaXNIb3Jpem9udGFsTWVudX1cIj5cbiAgICA8ZGl2ICpuZ0lmPVwibG9nb1VybCQgfCBhc3luYyBhcyBsb2dvVXJsXCIgY2xhc3M9XCJsYXlvdXQtdG9wYmFyLWxvZ29cIj5cbiAgICAgIDxpbWdcbiAgICAgICAgKm5nSWY9XCJsb2dvVXJsICYmICFmYWxsYmFja0ltZ1wiXG4gICAgICAgIGlkPVwib2N4X2FwcF9sb2dvXCJcbiAgICAgICAgW29jeFNoZWxsU3JjXT1cImxvZ29VcmxcIlxuICAgICAgICBhbHQ9XCJMb2dvXCJcbiAgICAgICAgKGVycm9yKT1cImZhbGxiYWNrSW1nID0gdHJ1ZVwiXG4gICAgICAgIChsb2FkKT1cIm9uTG9hZChsb2dvVXJsKVwiXG4gICAgICAvPlxuXG4gICAgICA8c3ZnICpuZ0lmPVwibG9nb1VybCA9PT0gbnVsbCB8fCBmYWxsYmFja0ltZ1wiIHdpZHRoPVwiMTYwXCIgdmlld0JveD1cIjAgMCAyODMgNzJcIiBjbGFzcz1cImRlZmF1bHQtbG9nb1wiPlxuICAgICAgICA8ZGVmcyBpZD1cIlN2Z2pzRGVmczQ5NjJcIj48L2RlZnM+XG4gICAgICAgIDxnXG4gICAgICAgICAgaWQ9XCJTdmdqc0c0OTYzXCJcbiAgICAgICAgICBmZWF0dXJla2V5PVwic3ltYm9sRmVhdHVyZS0wXCJcbiAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMC43NTU1NDA2NTAxNjg2MDIzLDAsMCwwLjc1NTU0MDY1MDE2ODYwMjMsLTQuODgzODE0NTcyNDY3MzYxLC0wLjI2NTk1MDI4NDkwMTQwMjU0KVwiXG4gICAgICAgID5cbiAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgICAgICAgICBkPVwiTTg4LjU0LDQ2LjI1Nkw5LjQ2NCwwLjYxNmMtMC42MTYtMC4zNTItMS4zODQtMC4zNTItMiwwYy0wLjYyLDAuMzYtMSwxLjAyLTEsMS43MzZ2OTEuMjk2YzAsMC43MTYsMC4zOCwxLjM3NSwxLDEuNzMxICBjMC4zMDgsMC4xODUsMC42NTYsMC4yNjksMSwwLjI2OWMwLjM0NCwwLDAuNjkyLTAuMDg0LDEtMC4yNjlMODguNTQsNDkuNzI5YzAuNjE2LTAuMzYsMS0xLjAyMSwxLTEuNzM2ICBDODkuNTQsNDcuMjc2LDg5LjE1Miw0Ni42MTYsODguNTQsNDYuMjU2eiBNNjAuMDgsNDkuNzcxTDIxLjM4OCw2OS44MDVjLTAuMjg4LDAuMTQ3LTAuNjA0LDAuMjIzLTAuOTIsMC4yMjMgIGMtMC4zNiwwLTAuNzItMC4wOTItMS4wNC0wLjI4N2MtMC41OTYtMC4zNjQtMC45Ni0xLjAwOC0wLjk2LTEuNzEzdi00MC4wNmMwLTAuNjk2LDAuMzY0LTEuMzQ0LDAuOTYtMS43MTIgIGMwLjU5Ni0wLjM2LDEuMzM2LTAuMzkyLDEuOTYtMC4wNjhsMzguNjk2LDIwLjAyOGMwLjY2NCwwLjM0NCwxLjA4NCwxLjAzMiwxLjA4NCwxLjc3MkM2MS4xNjQsNDguNzQsNjAuNzQ0LDQ5LjQyOCw2MC4wOCw0OS43NzF6XCJcbiAgICAgICAgICA+PC9wYXRoPlxuICAgICAgICAgIDxwYXRoIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiBkPVwiTTIyLjQ2NCw2NC43NDRsMzIuMzQ1LTE2Ljc0OGwtMzIuMzQ1LTE2Ljc0VjY0Ljc0NHpcIj48L3BhdGg+XG4gICAgICAgIDwvZz5cbiAgICAgICAgPGdcbiAgICAgICAgICBpZD1cIlN2Z2pzRzQ5NjRcIlxuICAgICAgICAgIGZlYXR1cmVrZXk9XCJuYW1lRmVhdHVyZS0wXCJcbiAgICAgICAgICB0cmFuc2Zvcm09XCJtYXRyaXgoMS4wMjA3MzMxNzUzNzAxMzk2LDAsMCwxLjAyMDczMzE3NTM3MDEzOTYsODEuNTY0NDQwNDEwODY5NCwxNS43MjQwODM3NzQxNDkwOClcIlxuICAgICAgICA+XG4gICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgIGQ9XCJNMTcuMzQ0IDMyLjY1NjIgYy0wLjc4MTI1IC0wLjE1NjI1IC0xLjUxMDUgLTAuMzkwNyAtMi4xODc2IC0wLjcwMzIgYy0xLjQ1ODQgLTAuNjc3MTEgLTIuNzM0NCAtMS42MTQ2IC0zLjgyODEgLTIuODEyNSBjLTEuMDQxNiAtMS4wOTM4IC0xLjg3NSAtMi40NDc5IC0yLjUgLTQuMDYyNSBjLTAuNTcyODkgLTEuNjE0NiAtMC44NTkzOCAtMy4yNTUyIC0wLjg1OTM4IC00LjkyMTkgbDAgLTAuMTU2MjUgbDAgLTAuMjM0MzggYzAgLTEuNzE4OCAwLjI4NjQ4IC0zLjM4NTQgMC44NTkzOCAtNSBjMC42NzcxMSAtMS42NjY2IDEuNTEwNSAtMi45OTQ4IDIuNTAwMSAtMy45ODQ0IGMxLjA0MTYgLTEuMTk3OSAyLjI5MTYgLTIuMTA5NCAzLjc1IC0yLjczNDQgYzAuODg1MzkgLTAuNDE2NjQgMS42NDA2IC0wLjY3NzAzIDIuMjY1NiAtMC43ODExNyBsMCAtNS44NTk0IGMtMS44MjI5IDAuMjYwMzkgLTMuNDM3NSAwLjcwMzEzIC00Ljg0MzggMS4zMjgxIGMtMi4yOTE2IDAuOTg5NjEgLTQuMjQ0OCAyLjMxNzcgLTUuODU5NCAzLjk4NDQgcy0yLjg5MDYgMy42NDU4IC0zLjgyODEgNS45Mzc0IHMtMS40MDYzIDQuNjg3NSAtMS40MDYzIDcuMTg3NSBsMCAwLjE1NjI1IGwwIDAuMjM0MzggYzAgMi41NTIxIDAuNDY4NzUgNC45NDggMS40MDYzIDcuMTg3NiBjMC44MzMzNiAyLjIzOTYgMi4wODM0IDQuMTkyNyAzLjc1IDUuODU5NCBjMS42NjY2IDEuNzE4OCAzLjYxOTggMy4wNDY5IDUuODU5NCAzLjk4NDQgYzEuNDA2MyAwLjYyNSAzLjA0NjkgMS4wNjc3IDQuOTIxOSAxLjMyODEgbDAgLTUuOTM3NSB6IE0zOC41OTQgMjAgbDAuMDAwMDc2Mjk0IC0wLjIzNDM4IGMwIC0yLjU1MjEgLTAuNDY4NzUgLTQuOTQ4IC0xLjQwNjMgLTcuMTg3NiBjLTAuOTM3NSAtMi4yOTE2IC0yLjIxMzUgLTQuMjcwOCAtMy44MjgxIC01LjkzNzQgYy0xLjU2MjUgLTEuNjY2NiAtMy40ODk2IC0yLjk2ODggLTUuNzgxMyAtMy45MDYzIGMtMS4zMDIxIC0wLjYyNSAtMi44OTA2IC0xLjA2NzcgLTQuNzY1NiAtMS4zMjgxIGwwIDUuOTM3NSBsMC45Mzc1IDAuMzEyNSBjMC40Njg3NSAwLjE1NjI1IDAuODMzMzYgMC4yODY0OCAxLjA5MzggMC4zOTA2MyBjMS40NTg0IDAuNjc3MTEgMi43MzQ0IDEuNjE0NiAzLjgyODEgMi44MTI1IGMxLjA0MTYgMS4wOTM4IDEuODc1IDIuNDQ3OSAyLjUgNC4wNjI1IGMwLjU3Mjg5IDEuNjE0NiAwLjg1OTM4IDMuMjU1MiAwLjg1OTM4IDQuOTIxOSBsMCAwLjE1NjI1IGwwIDAuMjM0MzggYzAgMS43MTg4IC0wLjI4NjQ4IDMuMzg1NCAtMC44NTkzOCA1IGMtMC42NzcxMSAxLjY2NjYgLTEuNTEwNSAyLjk5NDggLTIuNTAwMSAzLjk4NDQgYy0xLjA0MTYgMS4xOTc5IC0yLjI5MTYgMi4xMDk0IC0zLjc1IDIuNzM0NCBjLTAuNjc3MTEgMC4zMTI1IC0xLjM4MDIgMC41NDY4OCAtMi4xMDk0IDAuNzAzMTMgbDAgNS45Mzc1IGMxLjU2MjUgLTAuMjA4MzYgMy4xMjUgLTAuNjUxMDkgNC42ODc1IC0xLjMyODIgYzIuMTM1NCAtMC44ODUzOSA0LjA4ODUgLTIuMjEzNSA1Ljg1OTQgLTMuOTg0NCBjMS43MTg4IC0xLjgyMjkgMi45OTQ4IC0zLjgwMiAzLjgyODEgLTUuOTM3NCBjMC45Mzc1IC0yLjI5MTYgMS40MDYzIC00LjY4NzUgMS40MDYzIC03LjE4NzUgbDAgLTAuMTU2MjUgeiBNNDMuODI4MSAzOC41OTM3IGw2LjQ4NDQgMCBsMCAtMTkuOTIyIGwtNi40ODQ0IC05LjE0MDYgbDAgMjkuMDYzIHogTTY5Ljc2NTk5OTk5OTk5OTk5IDEuNDA1OTk5OTk5OTk5OTk4OCBsMCAyNS43MDMgbC0xOC4zNTkgLTI1LjcwMyBsLTcuMDMxMyAwIGwyNi40MDYgMzcuMTg4IGw1LjM5MDYgMCBsMCAtMzcuMTg4IGwtNi40MDYzIDAgeiBNODYuMDkzOCAxLjQwNTk5OTk5OTk5OTk5ODggbDI3LjgxMyAwIGwwIDUuOTM3NSBsLTI3LjgxMyAwIGwwIC01LjkzNzUgeiBNODYuMDkzOCAzMi42NTYyIGwyNy43MzQgMCBsMCA1LjkzNzUgbC0yNy43MzQgMCBsMCAtNS45Mzc1IHogTTg2LjA5MzggMTYuODc1IGwyNS4wNzggMCBsMCA1Ljg1OTQgbC0yNS4wNzggMCBsMCAtNS44NTk0IHogTTEyNy4yNjU2IDEyLjUgYzAuOTM3NSAtMi4yOTE2IDIuMjkxNiAtNC4yNDQ3IDQuMDYyNCAtNS44NTkzIGMxLjYxNDYgLTEuNjE0NiAzLjY5OCAtMi45MTY3IDYuMjUwMSAtMy45MDYzIHM1LjIzNDQgLTEuNDg0NCA4LjA0NjkgLTEuNDg0NCBsOC42NzE5IDAgbDAgNS45Mzc1IGwtOC41OTM4IDAgYy0yLjAzMTMgMCAtMy44MjgxIDAuMzM4NTIgLTUuMzkwNiAxLjAxNTYgYy0xLjY2NjYgMC42NzcxMSAtMy4wMjA4IDEuNTYyNSAtNC4wNjI0IDIuNjU2MyBjLTEuMDkzOCAxLjA0MTYgLTEuOTc5MSAyLjM5NTggLTIuNjU2MyA0LjA2MjQgYy0wLjYyNSAxLjUxMDQgLTAuOTM3NSAzLjIwMzEgLTAuOTM3NSA1LjA3ODEgczAuMzEyNSAzLjU2NzcgMC45Mzc1IDUuMDc4MSBjMC42MjUgMS41NjI1IDEuNTEwNCAyLjkxNjYgMi42NTYzIDQuMDYyNSBjMS4wNDE2IDEuMDQxNiAyLjM5NTggMS45MDEgNC4wNjI0IDIuNTc4MSBjMS42NjY2IDAuNjI1IDMuNDYzNSAwLjkzNzUgNS4zOTA2IDAuOTM3NSBsOC41OTM4IDAgbDAgNS45Mzc1IGwtOC42NzE5IDAgYy0yLjkxNjYgMCAtNS41NzI5IC0wLjQ2ODc1IC03Ljk2ODggLTEuNDA2MyBjLTIuNSAtMS4wNDE2IC00LjYwOTQgLTIuMzY5OCAtNi4zMjgxIC0zLjk4NDQgYy0xLjc3MDkgLTEuNjY2NiAtMy4xMjUgLTMuNjQ1OCAtNC4wNjI1IC01LjkzNzQgYy0wLjk4OTYxIC0yLjM5NTkgLTEuNDg0NCAtNC44NDM4IC0xLjQ4NDQgLTcuMzQzOCBjMCAtMi42NTYzIDAuNDk0NzcgLTUuMTMwMiAxLjQ4NDQgLTcuNDIxOSB6IE0xNzYuNDg0IDI5LjM3NSBsMy41MTU2IC00LjY4NzUgbC0wLjA3ODEyNSAtMC4xNTYyNSB6IE0xOTYuODc1IDEuNDA1OTk5OTk5OTk5OTk4OCBsLTcuNSAwIGwtOS4yOTY5IDEzLjM1OSBsLTkuMjE4OCAtMTMuMzU5IGwtNy43MzQ0IDAgbDEzLjA0NyAxOC4yODEgbC0xMy41MTYgMTguOTA2IGw4LjM1OTQgMCB6IE0xOTcuMzQ0IDM4LjU5MzcgbC0xMC4zMTMgLTE0LjYwOSBsLTMuOTA2MyA1LjIzNDQgbDYuNTYyNSA5LjM3NSBsNy42NTYzIDAgelwiXG4gICAgICAgICAgPjwvcGF0aD5cbiAgICAgICAgPC9nPlxuICAgICAgPC9zdmc+XG4gICAgPC9kaXY+XG4gICAgPGFcbiAgICAgIGlkPVwib2N4X3ZlcnRpY2FsX21lbnVfYWN0aW9uX3RvZ2dsZVwiXG4gICAgICBjbGFzcz1cImxheW91dC1tZW51LWJ1dHRvblwiXG4gICAgICAoY2xpY2spPVwib25NZW51QnV0dG9uQ2xpY2soJGV2ZW50KVwiXG4gICAgICBwUmlwcGxlXG4gICAgICBbcFRvb2x0aXBdPVwiJ09DWF9IRUFERVIuTUVOVV9UT0dHTEUnIHwgdHJhbnNsYXRlXCJcbiAgICAgIHRvb2x0aXBQb3NpdGlvbj1cInRvcFwiXG4gICAgICB0b29sdGlwRXZlbnQ9XCJob3ZlclwiXG4gICAgPlxuICAgICAgPGkgY2xhc3M9XCJwaSBwaS1jaGV2cm9uLXJpZ2h0XCI+PC9pPlxuICAgIDwvYT5cbiAgPC9kaXY+XG5cbiAgPGRpdiBjbGFzcz1cImxheW91dC10b3BiYXItcmlnaHRcIj5cbiAgICA8ZGl2IGNsYXNzPVwibGF5b3V0LXRvcGJhci1hY3Rpb25zLWxlZnRcIj5cbiAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwibGF5b3V0LXRvcGJhci1hY3Rpb25zLXJpZ2h0XCI+XG4gICAgICA8b2N4LXNsb3QgbmFtZT1cIm9uZWN4LXNoZWxsLWhlYWRlci1yaWdodFwiIGNsYXNzPVwibGF5b3V0LXRvcGJhci1pdGVtc1wiPlxuICAgICAgICA8bmctdGVtcGxhdGUgI3NrZWxldG9uPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBoLWZ1bGwganVzdGlmeS1jb250ZW50LWNlbnRlclwiIHN0eWxlPVwid2lkdGg6IDU2cHhcIj5cbiAgICAgICAgICAgIDxwLXNrZWxldG9uIHNoYXBlPVwiY2lyY2xlXCIgc2l6ZT1cIjIuNXJlbVwiIGNsYXNzPVwiaC1mdWxsIGZsZXggYWxpZ24taXRlbXMtY2VudGVyXCI+PC9wLXNrZWxldG9uPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPC9vY3gtc2xvdD5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
@@ -1,6 +1,6 @@
1
1
  import { __decorate, __metadata } from "tslib";
2
+ import { Component, HostListener, Inject, Optional } from '@angular/core';
2
3
  import { HttpClient } from '@angular/common/http';
3
- import { Component, HostListener, Inject, Optional, Renderer2 } from '@angular/core';
4
4
  import { Router } from '@angular/router';
5
5
  import { UntilDestroy, untilDestroyed } from '@ngneat/until-destroy';
6
6
  import { AppStateService, PortalMessageService, ThemeService, UserService, } from '@onecx/angular-integration-interface';
@@ -13,17 +13,16 @@ import * as i1 from "primeng/api";
13
13
  import * as i2 from "@onecx/angular-integration-interface";
14
14
  import * as i3 from "@angular/common/http";
15
15
  import * as i4 from "@angular/router";
16
- import * as i5 from "@angular/common";
17
- import * as i6 from "@onecx/angular-remote-components";
18
- import * as i7 from "primeng/toast";
19
- import * as i8 from "primeng/skeleton";
16
+ import * as i5 from "@onecx/angular-remote-components";
17
+ import * as i6 from "@angular/common";
18
+ import * as i7 from "primeng/skeleton";
19
+ import * as i8 from "primeng/toast";
20
20
  import * as i9 from "../portal-header/header.component";
21
21
  import * as i10 from "../portal-footer/portal-footer.component";
22
22
  import * as i11 from "../error-component/global-error.component";
23
23
  import * as i12 from "../app-loading-spinner/app-loading-spinner.component";
24
24
  let PortalViewportComponent = class PortalViewportComponent {
25
- constructor(renderer, primengConfig, messageService, appStateService, portalMessageService, userService, themeService, httpClient, router, showContentProvider, workspaceConfigBffService) {
26
- this.renderer = renderer;
25
+ constructor(primengConfig, messageService, appStateService, portalMessageService, userService, themeService, httpClient, router, showContentProvider, workspaceConfigBffService) {
27
26
  this.primengConfig = primengConfig;
28
27
  this.messageService = messageService;
29
28
  this.appStateService = appStateService;
@@ -36,9 +35,7 @@ let PortalViewportComponent = class PortalViewportComponent {
36
35
  this.workspaceConfigBffService = workspaceConfigBffService;
37
36
  this.menuButtonTitle = '';
38
37
  this.menuActive = true;
39
- this.topbarTheme = 'var';
40
38
  this.colorScheme = 'light';
41
- this.layoutMode = 'light';
42
39
  this.menuMode = 'static';
43
40
  this.inputStyle = 'outline';
44
41
  this.ripple = true;
@@ -46,9 +43,9 @@ let PortalViewportComponent = class PortalViewportComponent {
46
43
  this.portalMessageService.message$.subscribe((message) => this.messageService.add(message));
47
44
  this.userService.profile$.pipe(untilDestroyed(this)).subscribe((profile) => {
48
45
  this.menuMode =
49
- profile?.accountSettings?.layoutAndThemeSettings?.menuMode?.toLowerCase() || this.menuMode;
46
+ profile?.accountSettings?.layoutAndThemeSettings?.menuMode?.toLowerCase() ?? this.menuMode;
50
47
  this.colorScheme =
51
- profile?.accountSettings?.layoutAndThemeSettings?.colorScheme?.toLowerCase() || this.colorScheme;
48
+ profile?.accountSettings?.layoutAndThemeSettings?.colorScheme?.toLowerCase() ?? this.colorScheme;
52
49
  });
53
50
  this.themeService.currentTheme$
54
51
  .pipe(first(), mergeMap((theme) => {
@@ -78,6 +75,7 @@ let PortalViewportComponent = class PortalViewportComponent {
78
75
  .pipe(untilDestroyed(this))
79
76
  .pipe(filter((i) => i !== undefined))
80
77
  .subscribe((err) => {
78
+ console.error('global error');
81
79
  this.globalErrMsg = err;
82
80
  });
83
81
  this.onResize();
@@ -108,13 +106,12 @@ let PortalViewportComponent = class PortalViewportComponent {
108
106
  isHorizontalMenuVisible() {
109
107
  return this.isHorizontalMenuMode();
110
108
  }
111
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: PortalViewportComponent, deps: [{ token: i0.Renderer2 }, { token: i1.PrimeNGConfig }, { token: i1.MessageService }, { token: i2.AppStateService }, { token: i2.PortalMessageService }, { token: i2.UserService }, { token: i2.ThemeService }, { token: i3.HttpClient }, { token: i4.Router }, { token: SHOW_CONTENT_PROVIDER, optional: true }, { token: WORKSPACE_CONFIG_BFF_SERVICE_PROVIDER, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
112
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: PortalViewportComponent, selector: "ocx-shell-portal-viewport", host: { listeners: { "window:resize": "onResize()" } }, ngImport: i0, template: "<div\n *ngIf=\"!globalErrMsg; else globalError\"\n class=\"layout-wrapper\"\n [ngClass]=\"{\n 'p-input-filled': inputStyle === 'filled', \n 'p-ripple-disabled': !ripple,\n 'layout-menu-active': isStaticalMenuVisible(),\n 'layout-menu-button-hidden': isHorizontalMenuMode()\n }\"\n [class]=\"'layout-menu-' + colorScheme + ' layout-topbar-' + topbarTheme\"\n>\n <ocx-shell-header [menuButtonTitle]=\"menuButtonTitle\" (menuButtonClick)=\"onMenuButtonClick($event)\">\n <div *ngIf=\"isHorizontalMenuVisible()\">\n <ocx-slot name=\"onecx-shell-horizontal-menu\">\n <ng-template #skeleton>\n <div class=\"ml-4 flex flex-row gap-4\">\n <p-skeleton class=\"w-full h-full inline-block\" height=\"35px\" width=\"120px\"></p-skeleton>\n <p-skeleton class=\"w-full h-full inline-block\" height=\"35px\" width=\"120px\"></p-skeleton>\n </div>\n </ng-template>\n </ocx-slot>\n </div>\n </ocx-shell-header>\n\n <p-toast></p-toast>\n\n <div class=\"menu-wrapper\">\n <div class=\"layout-menu-container overflow-auto\" *ngIf=\"isStaticalMenuVisible()\">\n <ocx-slot name=\"onecx-shell-vertical-menu\">\n <ng-template #skeleton>\n <p-skeleton class=\"w-full h-full inline-block p-2\" height=\"35px\"></p-skeleton>\n </ng-template>\n </ocx-slot>\n </div>\n </div>\n\n <div class=\"layout-main\">\n <div class=\"layout-content relative\">\n <ocx-slot name=\"onecx-shell-sub-header\"></ocx-slot>\n <ng-container *ngIf=\"!showContentProvider || (showContentProvider.showContent$ | async); else appLoading\">\n <ng-content></ng-content>\n <router-outlet></router-outlet>\n </ng-container>\n </div>\n\n <ocx-shell-footer></ocx-shell-footer>\n </div>\n\n <div *ngIf=\"menuActive || !!activeTopbarItem\" class=\"layout-mask modal-in\"></div>\n</div>\n\n<ng-template #globalError>\n <ocx-shell-error [errCode]=\"globalErrMsg\"></ocx-shell-error>\n</ng-template>\n\n<ng-template #appLoading>\n <ocx-app-loading-spinner></ocx-app-loading-spinner>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "component", type: i6.SlotComponent, selector: "ocx-slot[name]", inputs: ["name", "inputs", "outputs"] }, { kind: "component", type: i7.Toast, selector: "p-toast", inputs: ["key", "autoZIndex", "baseZIndex", "life", "style", "styleClass", "position", "preventOpenDuplicates", "preventDuplicates", "showTransformOptions", "hideTransformOptions", "showTransitionOptions", "hideTransitionOptions", "breakpoints"], outputs: ["onClose"] }, { kind: "component", type: i8.Skeleton, selector: "p-skeleton", inputs: ["styleClass", "style", "shape", "animation", "borderRadius", "size", "width", "height"] }, { kind: "component", type: i9.HeaderComponent, selector: "ocx-shell-header", inputs: ["menuButtonTitle", "fullPortalLayout", "homeNavUrl", "homeNavTitle"], outputs: ["menuButtonClick"] }, { kind: "component", type: i10.PortalFooterComponent, selector: "ocx-shell-footer" }, { kind: "component", type: i11.GlobalErrorComponent, selector: "ocx-shell-error", inputs: ["errCode"] }, { kind: "component", type: i12.AppLoadingSpinnerComponent, selector: "ocx-app-loading-spinner" }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }] }); }
109
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: PortalViewportComponent, deps: [{ token: i1.PrimeNGConfig }, { token: i1.MessageService }, { token: i2.AppStateService }, { token: i2.PortalMessageService }, { token: i2.UserService }, { token: i2.ThemeService }, { token: i3.HttpClient }, { token: i4.Router }, { token: SHOW_CONTENT_PROVIDER, optional: true }, { token: WORKSPACE_CONFIG_BFF_SERVICE_PROVIDER, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
110
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: PortalViewportComponent, selector: "ocx-shell-portal-viewport", host: { listeners: { "window:resize": "onResize()" } }, ngImport: i0, template: "<div\n *ngIf=\"!globalErrMsg; else globalError\"\n [ngClass]=\"{\n 'layout-wrapper layout-topbar-var': appStateService.currentWorkspace$ | async,\n 'p-input-filled': inputStyle === 'filled', \n 'p-ripple-disabled': !ripple,\n 'layout-menu-active': isStaticalMenuVisible(),\n 'layout-menu-button-hidden': isHorizontalMenuMode()\n }\"\n [class]=\"'layout-menu-' + this.colorScheme\"\n>\n <ng-container *ngIf=\"appStateService.currentWorkspace$ | async; else noWorkspace\">\n <ocx-shell-header\n [menuButtonTitle]=\"menuButtonTitle\"\n (menuButtonClick)=\"onMenuButtonClick($event)\"\n [isHorizontalMenu]=\"isHorizontalMenuMode()\"\n >\n <div *ngIf=\"isHorizontalMenuVisible()\">\n <ocx-slot name=\"onecx-shell-horizontal-menu\">\n <ng-template #skeleton>\n <div class=\"ml-4 flex flex-row gap-4\">\n <p-skeleton class=\"w-full h-full inline-block\" height=\"35px\" width=\"120px\"></p-skeleton>\n <p-skeleton class=\"w-full h-full inline-block\" height=\"35px\" width=\"120px\"></p-skeleton>\n </div>\n </ng-template>\n </ocx-slot>\n </div>\n </ocx-shell-header>\n\n <p-toast></p-toast>\n\n <div *ngIf=\"isStaticalMenuVisible()\" class=\"menu-wrapper\">\n <div class=\"layout-menu-container overflow-auto\">\n <ocx-slot name=\"onecx-shell-vertical-menu\">\n <ng-template #skeleton>\n <p-skeleton class=\"w-full h-full inline-block p-2\" height=\"35px\"></p-skeleton>\n </ng-template>\n </ocx-slot>\n </div>\n </div>\n\n <div class=\"layout-main\">\n <div class=\"layout-content relative\">\n <ocx-slot name=\"onecx-shell-sub-header\"></ocx-slot>\n <ng-container *ngIf=\"!showContentProvider || (showContentProvider.showContent$ | async); else appLoading\">\n <ng-content></ng-content>\n <router-outlet></router-outlet>\n </ng-container>\n </div>\n\n <ocx-shell-footer></ocx-shell-footer>\n </div>\n <div *ngIf=\"menuActive || !!activeTopbarItem\" class=\"layout-mask modal-in\"></div>\n </ng-container>\n\n <ng-template #noWorkspace>\n <div class=\"layout-main\">\n <div class=\"layout-content relative\">\n <ng-content></ng-content>\n <router-outlet></router-outlet>\n </div>\n </div>\n </ng-template>\n</div>\n\n<ng-template #globalError>\n <ocx-shell-error [errCode]=\"globalErrMsg\"></ocx-shell-error>\n</ng-template>\n\n<ng-template #appLoading>\n <ocx-app-loading-spinner></ocx-app-loading-spinner>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "component", type: i5.SlotComponent, selector: "ocx-slot[name]", inputs: ["name", "inputs", "outputs"] }, { kind: "directive", type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "component", type: i7.Skeleton, selector: "p-skeleton", inputs: ["styleClass", "style", "shape", "animation", "borderRadius", "size", "width", "height"] }, { kind: "component", type: i8.Toast, selector: "p-toast", inputs: ["key", "autoZIndex", "baseZIndex", "life", "style", "styleClass", "position", "preventOpenDuplicates", "preventDuplicates", "showTransformOptions", "hideTransformOptions", "showTransitionOptions", "hideTransitionOptions", "breakpoints"], outputs: ["onClose"] }, { kind: "component", type: i9.HeaderComponent, selector: "ocx-shell-header", inputs: ["menuButtonTitle", "fullPortalLayout", "homeNavUrl", "homeNavTitle", "isHorizontalMenu"], outputs: ["menuButtonClick"] }, { kind: "component", type: i10.PortalFooterComponent, selector: "ocx-shell-footer" }, { kind: "component", type: i11.GlobalErrorComponent, selector: "ocx-shell-error", inputs: ["errCode"] }, { kind: "component", type: i12.AppLoadingSpinnerComponent, selector: "ocx-app-loading-spinner" }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }] }); }
113
111
  };
114
112
  PortalViewportComponent = __decorate([
115
113
  UntilDestroy(),
116
- __metadata("design:paramtypes", [Renderer2,
117
- PrimeNGConfig,
114
+ __metadata("design:paramtypes", [PrimeNGConfig,
118
115
  MessageService,
119
116
  AppStateService,
120
117
  PortalMessageService,
@@ -126,8 +123,8 @@ PortalViewportComponent = __decorate([
126
123
  export { PortalViewportComponent };
127
124
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: PortalViewportComponent, decorators: [{
128
125
  type: Component,
129
- args: [{ selector: 'ocx-shell-portal-viewport', template: "<div\n *ngIf=\"!globalErrMsg; else globalError\"\n class=\"layout-wrapper\"\n [ngClass]=\"{\n 'p-input-filled': inputStyle === 'filled', \n 'p-ripple-disabled': !ripple,\n 'layout-menu-active': isStaticalMenuVisible(),\n 'layout-menu-button-hidden': isHorizontalMenuMode()\n }\"\n [class]=\"'layout-menu-' + colorScheme + ' layout-topbar-' + topbarTheme\"\n>\n <ocx-shell-header [menuButtonTitle]=\"menuButtonTitle\" (menuButtonClick)=\"onMenuButtonClick($event)\">\n <div *ngIf=\"isHorizontalMenuVisible()\">\n <ocx-slot name=\"onecx-shell-horizontal-menu\">\n <ng-template #skeleton>\n <div class=\"ml-4 flex flex-row gap-4\">\n <p-skeleton class=\"w-full h-full inline-block\" height=\"35px\" width=\"120px\"></p-skeleton>\n <p-skeleton class=\"w-full h-full inline-block\" height=\"35px\" width=\"120px\"></p-skeleton>\n </div>\n </ng-template>\n </ocx-slot>\n </div>\n </ocx-shell-header>\n\n <p-toast></p-toast>\n\n <div class=\"menu-wrapper\">\n <div class=\"layout-menu-container overflow-auto\" *ngIf=\"isStaticalMenuVisible()\">\n <ocx-slot name=\"onecx-shell-vertical-menu\">\n <ng-template #skeleton>\n <p-skeleton class=\"w-full h-full inline-block p-2\" height=\"35px\"></p-skeleton>\n </ng-template>\n </ocx-slot>\n </div>\n </div>\n\n <div class=\"layout-main\">\n <div class=\"layout-content relative\">\n <ocx-slot name=\"onecx-shell-sub-header\"></ocx-slot>\n <ng-container *ngIf=\"!showContentProvider || (showContentProvider.showContent$ | async); else appLoading\">\n <ng-content></ng-content>\n <router-outlet></router-outlet>\n </ng-container>\n </div>\n\n <ocx-shell-footer></ocx-shell-footer>\n </div>\n\n <div *ngIf=\"menuActive || !!activeTopbarItem\" class=\"layout-mask modal-in\"></div>\n</div>\n\n<ng-template #globalError>\n <ocx-shell-error [errCode]=\"globalErrMsg\"></ocx-shell-error>\n</ng-template>\n\n<ng-template #appLoading>\n <ocx-app-loading-spinner></ocx-app-loading-spinner>\n</ng-template>\n" }]
130
- }], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i1.PrimeNGConfig }, { type: i1.MessageService }, { type: i2.AppStateService }, { type: i2.PortalMessageService }, { type: i2.UserService }, { type: i2.ThemeService }, { type: i3.HttpClient }, { type: i4.Router }, { type: undefined, decorators: [{
126
+ args: [{ selector: 'ocx-shell-portal-viewport', template: "<div\n *ngIf=\"!globalErrMsg; else globalError\"\n [ngClass]=\"{\n 'layout-wrapper layout-topbar-var': appStateService.currentWorkspace$ | async,\n 'p-input-filled': inputStyle === 'filled', \n 'p-ripple-disabled': !ripple,\n 'layout-menu-active': isStaticalMenuVisible(),\n 'layout-menu-button-hidden': isHorizontalMenuMode()\n }\"\n [class]=\"'layout-menu-' + this.colorScheme\"\n>\n <ng-container *ngIf=\"appStateService.currentWorkspace$ | async; else noWorkspace\">\n <ocx-shell-header\n [menuButtonTitle]=\"menuButtonTitle\"\n (menuButtonClick)=\"onMenuButtonClick($event)\"\n [isHorizontalMenu]=\"isHorizontalMenuMode()\"\n >\n <div *ngIf=\"isHorizontalMenuVisible()\">\n <ocx-slot name=\"onecx-shell-horizontal-menu\">\n <ng-template #skeleton>\n <div class=\"ml-4 flex flex-row gap-4\">\n <p-skeleton class=\"w-full h-full inline-block\" height=\"35px\" width=\"120px\"></p-skeleton>\n <p-skeleton class=\"w-full h-full inline-block\" height=\"35px\" width=\"120px\"></p-skeleton>\n </div>\n </ng-template>\n </ocx-slot>\n </div>\n </ocx-shell-header>\n\n <p-toast></p-toast>\n\n <div *ngIf=\"isStaticalMenuVisible()\" class=\"menu-wrapper\">\n <div class=\"layout-menu-container overflow-auto\">\n <ocx-slot name=\"onecx-shell-vertical-menu\">\n <ng-template #skeleton>\n <p-skeleton class=\"w-full h-full inline-block p-2\" height=\"35px\"></p-skeleton>\n </ng-template>\n </ocx-slot>\n </div>\n </div>\n\n <div class=\"layout-main\">\n <div class=\"layout-content relative\">\n <ocx-slot name=\"onecx-shell-sub-header\"></ocx-slot>\n <ng-container *ngIf=\"!showContentProvider || (showContentProvider.showContent$ | async); else appLoading\">\n <ng-content></ng-content>\n <router-outlet></router-outlet>\n </ng-container>\n </div>\n\n <ocx-shell-footer></ocx-shell-footer>\n </div>\n <div *ngIf=\"menuActive || !!activeTopbarItem\" class=\"layout-mask modal-in\"></div>\n </ng-container>\n\n <ng-template #noWorkspace>\n <div class=\"layout-main\">\n <div class=\"layout-content relative\">\n <ng-content></ng-content>\n <router-outlet></router-outlet>\n </div>\n </div>\n </ng-template>\n</div>\n\n<ng-template #globalError>\n <ocx-shell-error [errCode]=\"globalErrMsg\"></ocx-shell-error>\n</ng-template>\n\n<ng-template #appLoading>\n <ocx-app-loading-spinner></ocx-app-loading-spinner>\n</ng-template>\n" }]
127
+ }], ctorParameters: () => [{ type: i1.PrimeNGConfig }, { type: i1.MessageService }, { type: i2.AppStateService }, { type: i2.PortalMessageService }, { type: i2.UserService }, { type: i2.ThemeService }, { type: i3.HttpClient }, { type: i4.Router }, { type: undefined, decorators: [{
131
128
  type: Optional
132
129
  }, {
133
130
  type: Inject,
@@ -141,4 +138,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImpo
141
138
  type: HostListener,
142
139
  args: ['window:resize']
143
140
  }] } });
144
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9ydGFsLXZpZXdwb3J0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2hlbGwtY29yZS9zcmMvbGliL2NvbXBvbmVudHMvcG9ydGFsLXZpZXdwb3J0L3BvcnRhbC12aWV3cG9ydC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3NoZWxsLWNvcmUvc3JjL2xpYi9jb21wb25lbnRzL3BvcnRhbC12aWV3cG9ydC9wb3J0YWwtdmlld3BvcnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUNqRCxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQXFCLFFBQVEsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDdkcsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQ3hDLE9BQU8sRUFBRSxZQUFZLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUJBQXVCLENBQUE7QUFDcEUsT0FBTyxFQUNMLGVBQWUsRUFFZixvQkFBb0IsRUFDcEIsWUFBWSxFQUNaLFdBQVcsR0FDWixNQUFNLHNDQUFzQyxDQUFBO0FBQzdDLE9BQU8sRUFBRSxjQUFjLEVBQUUsYUFBYSxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBQzNELE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQ3hELE9BQU8sRUFBRSxxQkFBcUIsRUFBdUIsTUFBTSw2Q0FBNkMsQ0FBQTtBQUN4RyxPQUFPLEVBQ0wscUNBQXFDLEdBRXRDLE1BQU0sNkRBQTZELENBQUE7Ozs7Ozs7Ozs7Ozs7O0FBUTdELElBQU0sdUJBQXVCLEdBQTdCLE1BQU0sdUJBQXVCO0lBaUJsQyxZQUNVLFFBQW1CLEVB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QVM7K0JBQ0UsMkJBQTJCOzswQkFnQ2xDLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMscUJBQXFCOzswQkFDeEMsUUFBUTs7MEJBQ1IsTUFBTTsyQkFBQyxxQ0FBcUM7eUNBMEUvQyxRQUFRO3NCQURQLFlBQVk7dUJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCdcbmltcG9ydCB7IENvbXBvbmVudCwgSG9zdExpc3RlbmVyLCBJbmplY3QsIE9uRGVzdHJveSwgT25Jbml0LCBPcHRpb25hbCwgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcidcbmltcG9ydCB7IFVudGlsRGVzdHJveSwgdW50aWxEZXN0cm95ZWQgfSBmcm9tICdAbmduZWF0L3VudGlsLWRlc3Ryb3knXG5pbXBvcnQge1xuICBBcHBTdGF0ZVNlcnZpY2UsXG4gIE1lc3NhZ2UsXG4gIFBvcnRhbE1lc3NhZ2VTZXJ2aWNlLFxuICBUaGVtZVNlcnZpY2UsXG4gIFVzZXJTZXJ2aWNlLFxufSBmcm9tICdAb25lY3gvYW5ndWxhci1pbnRlZ3JhdGlvbi1pbnRlcmZhY2UnXG5pbXBvcnQgeyBNZXNzYWdlU2VydmljZSwgUHJpbWVOR0NvbmZpZyB9IGZyb20gJ3ByaW1lbmcvYXBpJ1xuaW1wb3J0IHsgZmlsdGVyLCBmaXJzdCwgZnJvbSwgbWVyZ2VNYXAsIG9mIH0gZnJvbSAncnhqcydcbmltcG9ydCB7IFNIT1dfQ09OVEVOVF9QUk9WSURFUiwgU2hvd0NvbnRlbnRQcm92aWRlciB9IGZyb20gJy4uLy4uL3NoZWxsLWludGVyZmFjZS9zaG93LWNvbnRlbnQtcHJvdmlkZXInXG5pbXBvcnQge1xuICBXT1JLU1BBQ0VfQ09ORklHX0JGRl9TRVJWSUNFX1BST1ZJREVSLFxuICBXb3Jrc3BhY2VDb25maWdCZmZTZXJ2aWNlLFxufSBmcm9tICcuLi8uLi9zaGVsbC1pbnRlcmZhY2Uvd29ya3NwYWNlLWNvbmZpZy1iZmYtc2VydmljZS1wcm92aWRlcidcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnb2N4LXNoZWxsLXBvcnRhbC12aWV3cG9ydCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9wb3J0YWwtdmlld3BvcnQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9wb3J0YWwtdmlld3BvcnQuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5AVW50aWxEZXN0cm95KClcbmV4cG9ydCBjbGFzcyBQb3J0YWxWaWV3cG9ydENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgbWVudUJ1dHRvblRpdGxlID0gJydcbiAgbWVudUFjdGl2ZSA9IHRydWVcbiAgYWN0aXZlVG9wYmFySXRlbTogc3RyaW5nIHwgdW5kZWZpbmVkXG5cbiAgcmVtb3ZlRG9jdW1lbnRDbGlja0xpc3RlbmVyOiAoKCkgPT4gdm9pZCkgfCB1bmRlZmluZWRcblxuICB0b3BiYXJUaGVtZSA9ICd2YXInXG4gIGNvbG9yU2NoZW1lOiAnYXV0bycgfCAnbGlnaHQnIHwgJ2RhcmsnID0gJ2xpZ2h0J1xuICBsYXlvdXRNb2RlOiAnYXV0bycgfCAnbGlnaHQnIHwgJ2RhcmsnID0gJ2xpZ2h0J1xuICBtZW51TW9kZTogJ2hvcml6b250YWwnIHwgJ3N0YXRpYycgfCAnb3ZlcmxheScgfCAnc2xpbScgfCAnc2xpbXBsdXMnID0gJ3N0YXRpYydcbiAgaW5wdXRTdHlsZSA9ICdvdXRsaW5lJ1xuICByaXBwbGUgPSB0cnVlXG4gIGlzTW9iaWxlID0gZmFsc2VcblxuICBnbG9iYWxFcnJNc2c6IHN0cmluZyB8IHVuZGVmaW5lZFxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICBwcml2YXRlIHByaW1lbmdDb25maWc6IFByaW1lTkdDb25maWcsXG4gICAgcHJpdmF0ZSBtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2UsXG4gICAgcHVibGljIGFwcFN0YXRlU2VydmljZTogQXBwU3RhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgcG9ydGFsTWVzc2FnZVNlcnZpY2U6IFBvcnRhbE1lc3NhZ2VTZXJ2aWNlLFxuICAgIHByaXZhdGUgdXNlclNlcnZpY2U6IFVzZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgdGhlbWVTZXJ2aWNlOiBUaGVtZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBodHRwQ2xpZW50OiBIdHRwQ2xpZW50LFxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChTSE9XX0NPTlRFTlRfUFJPVklERVIpIHB1YmxpYyBzaG93Q29udGVudFByb3ZpZGVyOiBTaG93Q29udGVudFByb3ZpZGVyIHwgdW5kZWZpbmVkLFxuICAgIEBPcHRpb25hbCgpXG4gICAgQEluamVjdChXT1JLU1BBQ0VfQ09ORklHX0JGRl9TRVJWSUNFX1BST1ZJREVSKVxuICAgIHB1YmxpYyB3b3Jrc3BhY2VDb25maWdCZmZTZXJ2aWNlOiBXb3Jrc3BhY2VDb25maWdCZmZTZXJ2aWNlIHwgdW5kZWZpbmVkXG4gICkge1xuICAgIHRoaXMucG9ydGFsTWVzc2FnZVNlcnZpY2UubWVzc2FnZSQuc3Vic2NyaWJlKChtZXNzYWdlOiBNZXNzYWdlKSA9PiB0aGlzLm1lc3NhZ2VTZXJ2aWNlLmFkZChtZXNzYWdlKSlcbiAgICB0aGlzLnVzZXJTZXJ2aWNlLnByb2ZpbGUkLnBpcGUodW50aWxEZXN0cm95ZWQodGhpcykpLnN1YnNjcmliZSgocHJvZmlsZSkgPT4ge1xuICAgICAgdGhpcy5tZW51TW9kZSA9XG4gICAgICAgIChwcm9maWxlPy5hY2NvdW50U2V0dGluZ3M/LmxheW91dEFuZFRoZW1lU2V0dGluZ3M/Lm1lbnVNb2RlPy50b0xvd2VyQ2FzZSgpIGFzXG4gICAgICAgICAgfCB0eXBlb2YgdGhpcy5tZW51TW9kZVxuICAgICAgICAgIHwgdW5kZWZpbmVkKSB8fCB0aGlzLm1lbnVNb2RlXG5cbiAgICAgIHRoaXMuY29sb3JTY2hlbWUgPVxuICAgICAgICAocHJvZmlsZT8uYWNjb3VudFNldHRpbmdzPy5sYXlvdXRBbmRUaGVtZVNldHRpbmdzPy5jb2xvclNjaGVtZT8udG9Mb3dlckNhc2UoKSBhc1xuICAgICAgICAgIHwgdHlwZW9mIHRoaXMuY29sb3JTY2hlbWVcbiAgICAgICAgICB8IHVuZGVmaW5lZCkgfHwgdGhpcy5jb2xvclNjaGVtZVxuICAgIH0pXG5cbiAgICB0aGlzLnRoZW1lU2VydmljZS5jdXJyZW50VGhlbWUkXG4gICAgICAucGlwZShcbiAgICAgICAgZmlyc3QoKSxcbiAgICAgICAgbWVyZ2VNYXAoKHRoZW1lKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIHRoZW1lLmZhdmljb25VcmxcbiAgICAgICAgICAgICAgPyB0aGlzLmh0dHBDbGllbnQuZ2V0KHRoZW1lLmZhdmljb25VcmwgPz8gJycsIHsgcmVzcG9uc2VUeXBlOiAnYmxvYicgfSlcbiAgICAgICAgICAgICAgOiAodGhpcy53b3Jrc3BhY2VDb25maWdCZmZTZXJ2aWNlPy5nZXRUaGVtZUZhdmljb25CeU5hbWUodGhlbWUubmFtZSA/PyAnJykgPz8gb2YoKSlcbiAgICAgICAgICApLnBpcGUoXG4gICAgICAgICAgICBmaWx0ZXIoKGJsb2IpID0+ICEhYmxvYiksXG4gICAgICAgICAgICBtZXJnZU1hcCgoYmxvYikgPT4ge1xuICAgICAgICAgICAgICByZXR1cm4gZnJvbShcbiAgICAgICAgICAgICAgICBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgY29uc3QgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKVxuICAgICAgICAgICAgICAgICAgcmVhZGVyLm9ubG9hZCA9IChlKSA9PiByZXNvbHZlKGUudGFyZ2V0Py5yZXN1bHQpXG4gICAgICAgICAgICAgICAgICByZWFkZXIucmVhZEFzRGF0YVVSTChibG9iKVxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgKVxuICAgICAgICB9KVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgodXJsKSA9PiB7XG4gICAgICAgIGxldCBsaW5rID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcihcImxpbmtbcmVsfj0naWNvbiddXCIpIGFzIGFueVxuICAgICAgICBpZiAoIWxpbmspIHtcbiAgICAgICAgICBsaW5rID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnbGluaycpXG4gICAgICAgICAgbGluay5yZWwgPSAnaWNvbidcbiAgICAgICAgICBkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKGxpbmspXG4gICAgICAgIH1cbiAgICAgICAgbGluay5ocmVmID0gdXJsXG4gICAgICB9KVxuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5wcmltZW5nQ29uZmlnLnJpcHBsZSA9IHRydWVcblxuICAgIHRoaXMuYXBwU3RhdGVTZXJ2aWNlLmdsb2JhbEVycm9yJFxuICAgICAgLnBpcGUodW50aWxEZXN0cm95ZWQodGhpcykpXG4gICAgICAucGlwZShmaWx0ZXIoKGkpID0+IGkgIT09IHVuZGVmaW5lZCkpXG4gICAgICAuc3Vic2NyaWJlKChlcnI6IHN0cmluZyB8IHVuZGVmaW5lZCkgPT4ge1xuICAgICAgICB0aGlzLmdsb2JhbEVyck1zZyA9IGVyclxuICAgICAgfSlcblxuICAgIHRoaXMub25SZXNpemUoKVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5yZW1vdmVEb2N1bWVudENsaWNrTGlzdGVuZXI/LigpXG4gIH1cblxuICBvbk1lbnVCdXR0b25DbGljayhldmVudDogTW91c2VFdmVudCkge1xuICAgIHRoaXMuYWN0aXZlVG9wYmFySXRlbSA9IHVuZGVmaW5lZFxuICAgIHRoaXMubWVudUFjdGl2ZSA9ICF0aGlzLm1lbnVBY3RpdmVcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnKVxuICBvblJlc2l6ZSgpIHtcbiAgICBjb25zdCBtb2JpbGVCcmVha3BvaW50VmFyID0gZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQpLmdldFByb3BlcnR5VmFsdWUoJy0tbW9iaWxlLWJyZWFrLXBvaW50JylcbiAgICBjb25zdCBpc01vYmlsZSA9IHdpbmRvdy5tYXRjaE1lZGlhKGAobWF4LXdpZHRoOiAke21vYmlsZUJyZWFrcG9pbnRWYXJ9KWApLm1hdGNoZXNcbiAgICAvLyBhdXRvIHNob3cgc2lkZWJhciB3aGVuIGNoYW5naW5nIHRvIGRlc2t0b3AsIGhpZGUgd2hlbiBjaGFuZ2luZyB0byBtb2JpbGVcbiAgICBpZiAoaXNNb2JpbGUgIT09IHRoaXMuaXNNb2JpbGUpIHRoaXMubWVudUFjdGl2ZSA9ICFpc01vYmlsZVxuICAgIHRoaXMuaXNNb2JpbGUgPSBpc01vYmlsZVxuICB9XG5cbiAgaXNIb3Jpem9udGFsTWVudU1vZGUoKSB7XG4gICAgcmV0dXJuIHRoaXMubWVudU1vZGUgPT09ICdob3Jpem9udGFsJyAmJiAhdGhpcy5pc01vYmlsZVxuICB9XG5cbiAgaXNTdGF0aWNhbE1lbnVWaXNpYmxlKCkge1xuICAgIHJldHVybiB0aGlzLm1lbnVBY3RpdmUgJiYgIXRoaXMuaXNIb3Jpem9udGFsTWVudU1vZGUoKVxuICB9XG5cbiAgaXNIb3Jpem9udGFsTWVudVZpc2libGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuaXNIb3Jpem9udGFsTWVudU1vZGUoKVxuICB9XG59XG4iLCI8ZGl2XG4gICpuZ0lmPVwiIWdsb2JhbEVyck1zZzsgZWxzZSBnbG9iYWxFcnJvclwiXG4gIGNsYXNzPVwibGF5b3V0LXdyYXBwZXJcIlxuICBbbmdDbGFzc109XCJ7XG4gICAgJ3AtaW5wdXQtZmlsbGVkJzogaW5wdXRTdHlsZSA9PT0gJ2ZpbGxlZCcsIFxuICAgICdwLXJpcHBsZS1kaXNhYmxlZCc6ICFyaXBwbGUsXG4gICAgJ2xheW91dC1tZW51LWFjdGl2ZSc6IGlzU3RhdGljYWxNZW51VmlzaWJsZSgpLFxuICAgICdsYXlvdXQtbWVudS1idXR0b24taGlkZGVuJzogaXNIb3Jpem9udGFsTWVudU1vZGUoKVxuICB9XCJcbiAgW2NsYXNzXT1cIidsYXlvdXQtbWVudS0nICsgY29sb3JTY2hlbWUgKyAnIGxheW91dC10b3BiYXItJyArIHRvcGJhclRoZW1lXCJcbj5cbiAgPG9jeC1zaGVsbC1oZWFkZXIgW21lbnVCdXR0b25UaXRsZV09XCJtZW51QnV0dG9uVGl0bGVcIiAobWVudUJ1dHRvbkNsaWNrKT1cIm9uTWVudUJ1dHRvbkNsaWNrKCRldmVudClcIj5cbiAgICA8ZGl2ICpuZ0lmPVwiaXNIb3Jpem9udGFsTWVudVZpc2libGUoKVwiPlxuICAgICAgPG9jeC1zbG90IG5hbWU9XCJvbmVjeC1zaGVsbC1ob3Jpem9udGFsLW1lbnVcIj5cbiAgICAgICAgPG5nLXRlbXBsYXRlICNza2VsZXRvbj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibWwtNCBmbGV4IGZsZXgtcm93IGdhcC00XCI+XG4gICAgICAgICAgICA8cC1za2VsZXRvbiBjbGFzcz1cInctZnVsbCBoLWZ1bGwgaW5saW5lLWJsb2NrXCIgaGVpZ2h0PVwiMzVweFwiIHdpZHRoPVwiMTIwcHhcIj48L3Atc2tlbGV0b24+XG4gICAgICAgICAgICA8cC1za2VsZXRvbiBjbGFzcz1cInctZnVsbCBoLWZ1bGwgaW5saW5lLWJsb2NrXCIgaGVpZ2h0PVwiMzVweFwiIHdpZHRoPVwiMTIwcHhcIj48L3Atc2tlbGV0b24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8L29jeC1zbG90PlxuICAgIDwvZGl2PlxuICA8L29jeC1zaGVsbC1oZWFkZXI+XG5cbiAgPHAtdG9hc3Q+PC9wLXRvYXN0PlxuXG4gIDxkaXYgY2xhc3M9XCJtZW51LXdyYXBwZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwibGF5b3V0LW1lbnUtY29udGFpbmVyIG92ZXJmbG93LWF1dG9cIiAqbmdJZj1cImlzU3RhdGljYWxNZW51VmlzaWJsZSgpXCI+XG4gICAgICA8b2N4LXNsb3QgbmFtZT1cIm9uZWN4LXNoZWxsLXZlcnRpY2FsLW1lbnVcIj5cbiAgICAgICAgPG5nLXRlbXBsYXRlICNza2VsZXRvbj5cbiAgICAgICAgICA8cC1za2VsZXRvbiBjbGFzcz1cInctZnVsbCBoLWZ1bGwgaW5saW5lLWJsb2NrIHAtMlwiIGhlaWdodD1cIjM1cHhcIj48L3Atc2tlbGV0b24+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8L29jeC1zbG90PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cblxuICA8ZGl2IGNsYXNzPVwibGF5b3V0LW1haW5cIj5cbiAgICA8ZGl2IGNsYXNzPVwibGF5b3V0LWNvbnRlbnQgcmVsYXRpdmVcIj5cbiAgICAgIDxvY3gtc2xvdCBuYW1lPVwib25lY3gtc2hlbGwtc3ViLWhlYWRlclwiPjwvb2N4LXNsb3Q+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIXNob3dDb250ZW50UHJvdmlkZXIgfHwgKHNob3dDb250ZW50UHJvdmlkZXIuc2hvd0NvbnRlbnQkIHwgYXN5bmMpOyBlbHNlIGFwcExvYWRpbmdcIj5cbiAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgICAgICA8cm91dGVyLW91dGxldD48L3JvdXRlci1vdXRsZXQ+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cblxuICAgIDxvY3gtc2hlbGwtZm9vdGVyPjwvb2N4LXNoZWxsLWZvb3Rlcj5cbiAgPC9kaXY+XG5cbiAgPGRpdiAqbmdJZj1cIm1lbnVBY3RpdmUgfHwgISFhY3RpdmVUb3BiYXJJdGVtXCIgY2xhc3M9XCJsYXlvdXQtbWFzayBtb2RhbC1pblwiPjwvZGl2PlxuPC9kaXY+XG5cbjxuZy10ZW1wbGF0ZSAjZ2xvYmFsRXJyb3I+XG4gIDxvY3gtc2hlbGwtZXJyb3IgW2VyckNvZGVdPVwiZ2xvYmFsRXJyTXNnXCI+PC9vY3gtc2hlbGwtZXJyb3I+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2FwcExvYWRpbmc+XG4gIDxvY3gtYXBwLWxvYWRpbmctc3Bpbm5lcj48L29jeC1hcHAtbG9hZGluZy1zcGlubmVyPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
141
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9ydGFsLXZpZXdwb3J0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2hlbGwtY29yZS9zcmMvbGliL2NvbXBvbmVudHMvcG9ydGFsLXZpZXdwb3J0L3BvcnRhbC12aWV3cG9ydC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3NoZWxsLWNvcmUvc3JjL2xpYi9jb21wb25lbnRzL3BvcnRhbC12aWV3cG9ydC9wb3J0YWwtdmlld3BvcnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBcUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzVGLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUNqRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDeEMsT0FBTyxFQUFFLFlBQVksRUFBRSxjQUFjLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUNwRSxPQUFPLEVBQ0wsZUFBZSxFQUVmLG9CQUFvQixFQUNwQixZQUFZLEVBQ1osV0FBVyxHQUNaLE1BQU0sc0NBQXNDLENBQUE7QUFDN0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxhQUFhLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFDM0QsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFDeEQsT0FBTyxFQUFFLHFCQUFxQixFQUF1QixNQUFNLDZDQUE2QyxDQUFBO0FBQ3hHLE9BQU8sRUFDTCxxQ0FBcUMsR0FFdEMsTUFBTSw2REFBNkQsQ0FBQTs7Ozs7Ozs7Ozs7Ozs7QUFRN0QsSUFBTSx1QkFBdUIsR0FBN0IsTUFBTSx1QkFBdUI7SUFjbEMsWUFDVSxhQUE0QixFQUM1QixjQUE4QixF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Q1IsTUFBTTsyQkFBQyxxQ0FBcUM7eUNBMkUvQyxRQUFRO3NCQURQLFlBQVk7dUJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSG9zdExpc3RlbmVyLCBJbmplY3QsIE9uRGVzdHJveSwgT25Jbml0LCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInXG5pbXBvcnQgeyBVbnRpbERlc3Ryb3ksIHVudGlsRGVzdHJveWVkIH0gZnJvbSAnQG5nbmVhdC91bnRpbC1kZXN0cm95J1xuaW1wb3J0IHtcbiAgQXBwU3RhdGVTZXJ2aWNlLFxuICBNZXNzYWdlLFxuICBQb3J0YWxNZXNzYWdlU2VydmljZSxcbiAgVGhlbWVTZXJ2aWNlLFxuICBVc2VyU2VydmljZSxcbn0gZnJvbSAnQG9uZWN4L2FuZ3VsYXItaW50ZWdyYXRpb24taW50ZXJmYWNlJ1xuaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UsIFByaW1lTkdDb25maWcgfSBmcm9tICdwcmltZW5nL2FwaSdcbmltcG9ydCB7IGZpbHRlciwgZmlyc3QsIGZyb20sIG1lcmdlTWFwLCBvZiB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBTSE9XX0NPTlRFTlRfUFJPVklERVIsIFNob3dDb250ZW50UHJvdmlkZXIgfSBmcm9tICcuLi8uLi9zaGVsbC1pbnRlcmZhY2Uvc2hvdy1jb250ZW50LXByb3ZpZGVyJ1xuaW1wb3J0IHtcbiAgV09SS1NQQUNFX0NPTkZJR19CRkZfU0VSVklDRV9QUk9WSURFUixcbiAgV29ya3NwYWNlQ29uZmlnQmZmU2VydmljZSxcbn0gZnJvbSAnLi4vLi4vc2hlbGwtaW50ZXJmYWNlL3dvcmtzcGFjZS1jb25maWctYmZmLXNlcnZpY2UtcHJvdmlkZXInXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ29jeC1zaGVsbC1wb3J0YWwtdmlld3BvcnQnLFxuICB0ZW1wbGF0ZVVybDogJy4vcG9ydGFsLXZpZXdwb3J0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcG9ydGFsLXZpZXdwb3J0LmNvbXBvbmVudC5zY3NzJ10sXG59KVxuQFVudGlsRGVzdHJveSgpXG5leHBvcnQgY2xhc3MgUG9ydGFsVmlld3BvcnRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIG1lbnVCdXR0b25UaXRsZSA9ICcnXG4gIG1lbnVBY3RpdmUgPSB0cnVlXG4gIGFjdGl2ZVRvcGJhckl0ZW06IHN0cmluZyB8IHVuZGVmaW5lZFxuXG4gIHJlbW92ZURvY3VtZW50Q2xpY2tMaXN0ZW5lcjogKCgpID0+IHZvaWQpIHwgdW5kZWZpbmVkXG5cbiAgY29sb3JTY2hlbWU6ICdhdXRvJyB8ICdsaWdodCcgfCAnZGFyaycgPSAnbGlnaHQnXG4gIG1lbnVNb2RlOiAnaG9yaXpvbnRhbCcgfCAnc3RhdGljJyB8ICdvdmVybGF5JyB8ICdzbGltJyB8ICdzbGltcGx1cycgPSAnc3RhdGljJ1xuICBpbnB1dFN0eWxlID0gJ291dGxpbmUnXG4gIHJpcHBsZSA9IHRydWVcbiAgaXNNb2JpbGUgPSBmYWxzZVxuICBnbG9iYWxFcnJNc2c6IHN0cmluZyB8IHVuZGVmaW5lZFxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcHJpbWVuZ0NvbmZpZzogUHJpbWVOR0NvbmZpZyxcbiAgICBwcml2YXRlIG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSxcbiAgICBwdWJsaWMgYXBwU3RhdGVTZXJ2aWNlOiBBcHBTdGF0ZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBwb3J0YWxNZXNzYWdlU2VydmljZTogUG9ydGFsTWVzc2FnZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSB1c2VyU2VydmljZTogVXNlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSB0aGVtZVNlcnZpY2U6IFRoZW1lU2VydmljZSxcbiAgICBwcml2YXRlIGh0dHBDbGllbnQ6IEh0dHBDbGllbnQsXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KFNIT1dfQ09OVEVOVF9QUk9WSURFUikgcHVibGljIHNob3dDb250ZW50UHJvdmlkZXI6IFNob3dDb250ZW50UHJvdmlkZXIgfCB1bmRlZmluZWQsXG4gICAgQE9wdGlvbmFsKClcbiAgICBASW5qZWN0KFdPUktTUEFDRV9DT05GSUdfQkZGX1NFUlZJQ0VfUFJPVklERVIpXG4gICAgcHVibGljIHdvcmtzcGFjZUNvbmZpZ0JmZlNlcnZpY2U6IFdvcmtzcGFjZUNvbmZpZ0JmZlNlcnZpY2UgfCB1bmRlZmluZWRcbiAgKSB7XG4gICAgdGhpcy5wb3J0YWxNZXNzYWdlU2VydmljZS5tZXNzYWdlJC5zdWJzY3JpYmUoKG1lc3NhZ2U6IE1lc3NhZ2UpID0+IHRoaXMubWVzc2FnZVNlcnZpY2UuYWRkKG1lc3NhZ2UpKVxuICAgIHRoaXMudXNlclNlcnZpY2UucHJvZmlsZSQucGlwZSh1bnRpbERlc3Ryb3llZCh0aGlzKSkuc3Vic2NyaWJlKChwcm9maWxlKSA9PiB7XG4gICAgICB0aGlzLm1lbnVNb2RlID1cbiAgICAgICAgKHByb2ZpbGU/LmFjY291bnRTZXR0aW5ncz8ubGF5b3V0QW5kVGhlbWVTZXR0aW5ncz8ubWVudU1vZGU/LnRvTG93ZXJDYXNlKCkgYXNcbiAgICAgICAgICB8IHR5cGVvZiB0aGlzLm1lbnVNb2RlXG4gICAgICAgICAgfCB1bmRlZmluZWQpID8/IHRoaXMubWVudU1vZGVcblxuICAgICAgdGhpcy5jb2xvclNjaGVtZSA9XG4gICAgICAgIChwcm9maWxlPy5hY2NvdW50U2V0dGluZ3M/LmxheW91dEFuZFRoZW1lU2V0dGluZ3M/LmNvbG9yU2NoZW1lPy50b0xvd2VyQ2FzZSgpIGFzXG4gICAgICAgICAgfCB0eXBlb2YgdGhpcy5jb2xvclNjaGVtZVxuICAgICAgICAgIHwgdW5kZWZpbmVkKSA/PyB0aGlzLmNvbG9yU2NoZW1lXG4gICAgfSlcblxuICAgIHRoaXMudGhlbWVTZXJ2aWNlLmN1cnJlbnRUaGVtZSRcbiAgICAgIC5waXBlKFxuICAgICAgICBmaXJzdCgpLFxuICAgICAgICBtZXJnZU1hcCgodGhlbWUpID0+IHtcbiAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgdGhlbWUuZmF2aWNvblVybFxuICAgICAgICAgICAgICA/IHRoaXMuaHR0cENsaWVudC5nZXQodGhlbWUuZmF2aWNvblVybCA/PyAnJywgeyByZXNwb25zZVR5cGU6ICdibG9iJyB9KVxuICAgICAgICAgICAgICA6ICh0aGlzLndvcmtzcGFjZUNvbmZpZ0JmZlNlcnZpY2U/LmdldFRoZW1lRmF2aWNvbkJ5TmFtZSh0aGVtZS5uYW1lID8/ICcnKSA/PyBvZigpKVxuICAgICAgICAgICkucGlwZShcbiAgICAgICAgICAgIGZpbHRlcigoYmxvYikgPT4gISFibG9iKSxcbiAgICAgICAgICAgIG1lcmdlTWFwKChibG9iKSA9PiB7XG4gICAgICAgICAgICAgIHJldHVybiBmcm9tKFxuICAgICAgICAgICAgICAgIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7XG4gICAgICAgICAgICAgICAgICBjb25zdCByZWFkZXIgPSBuZXcgRmlsZVJlYWRlcigpXG4gICAgICAgICAgICAgICAgICByZWFkZXIub25sb2FkID0gKGUpID0+IHJlc29sdmUoZS50YXJnZXQ/LnJlc3VsdClcbiAgICAgICAgICAgICAgICAgIHJlYWRlci5yZWFkQXNEYXRhVVJMKGJsb2IpXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICApXG4gICAgICAgIH0pXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCh1cmwpID0+IHtcbiAgICAgICAgbGV0IGxpbmsgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKFwibGlua1tyZWx+PSdpY29uJ11cIikgYXMgYW55XG4gICAgICAgIGlmICghbGluaykge1xuICAgICAgICAgIGxpbmsgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdsaW5rJylcbiAgICAgICAgICBsaW5rLnJlbCA9ICdpY29uJ1xuICAgICAgICAgIGRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQobGluaylcbiAgICAgICAgfVxuICAgICAgICBsaW5rLmhyZWYgPSB1cmxcbiAgICAgIH0pXG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnByaW1lbmdDb25maWcucmlwcGxlID0gdHJ1ZVxuXG4gICAgdGhpcy5hcHBTdGF0ZVNlcnZpY2UuZ2xvYmFsRXJyb3IkXG4gICAgICAucGlwZSh1bnRpbERlc3Ryb3llZCh0aGlzKSlcbiAgICAgIC5waXBlKGZpbHRlcigoaSkgPT4gaSAhPT0gdW5kZWZpbmVkKSlcbiAgICAgIC5zdWJzY3JpYmUoKGVycjogc3RyaW5nIHwgdW5kZWZpbmVkKSA9PiB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ2dsb2JhbCBlcnJvcicpXG4gICAgICAgIHRoaXMuZ2xvYmFsRXJyTXNnID0gZXJyXG4gICAgICB9KVxuXG4gICAgdGhpcy5vblJlc2l6ZSgpXG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLnJlbW92ZURvY3VtZW50Q2xpY2tMaXN0ZW5lcj8uKClcbiAgfVxuXG4gIG9uTWVudUJ1dHRvbkNsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgdGhpcy5hY3RpdmVUb3BiYXJJdGVtID0gdW5kZWZpbmVkXG4gICAgdGhpcy5tZW51QWN0aXZlID0gIXRoaXMubWVudUFjdGl2ZVxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KClcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKVxuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OnJlc2l6ZScpXG4gIG9uUmVzaXplKCkge1xuICAgIGNvbnN0IG1vYmlsZUJyZWFrcG9pbnRWYXIgPSBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCkuZ2V0UHJvcGVydHlWYWx1ZSgnLS1tb2JpbGUtYnJlYWstcG9pbnQnKVxuICAgIGNvbnN0IGlzTW9iaWxlID0gd2luZG93Lm1hdGNoTWVkaWEoYChtYXgtd2lkdGg6ICR7bW9iaWxlQnJlYWtwb2ludFZhcn0pYCkubWF0Y2hlc1xuICAgIC8vIGF1dG8gc2hvdyBzaWRlYmFyIHdoZW4gY2hhbmdpbmcgdG8gZGVza3RvcCwgaGlkZSB3aGVuIGNoYW5naW5nIHRvIG1vYmlsZVxuICAgIGlmIChpc01vYmlsZSAhPT0gdGhpcy5pc01vYmlsZSkgdGhpcy5tZW51QWN0aXZlID0gIWlzTW9iaWxlXG4gICAgdGhpcy5pc01vYmlsZSA9IGlzTW9iaWxlXG4gIH1cblxuICBpc0hvcml6b250YWxNZW51TW9kZSgpIHtcbiAgICByZXR1cm4gdGhpcy5tZW51TW9kZSA9PT0gJ2hvcml6b250YWwnICYmICF0aGlzLmlzTW9iaWxlXG4gIH1cblxuICBpc1N0YXRpY2FsTWVudVZpc2libGUoKSB7XG4gICAgcmV0dXJuIHRoaXMubWVudUFjdGl2ZSAmJiAhdGhpcy5pc0hvcml6b250YWxNZW51TW9kZSgpXG4gIH1cblxuICBpc0hvcml6b250YWxNZW51VmlzaWJsZSgpIHtcbiAgICByZXR1cm4gdGhpcy5pc0hvcml6b250YWxNZW51TW9kZSgpXG4gIH1cbn1cbiIsIjxkaXZcbiAgKm5nSWY9XCIhZ2xvYmFsRXJyTXNnOyBlbHNlIGdsb2JhbEVycm9yXCJcbiAgW25nQ2xhc3NdPVwie1xuICAgICdsYXlvdXQtd3JhcHBlciBsYXlvdXQtdG9wYmFyLXZhcic6IGFwcFN0YXRlU2VydmljZS5jdXJyZW50V29ya3NwYWNlJCB8IGFzeW5jLFxuICAgICdwLWlucHV0LWZpbGxlZCc6IGlucHV0U3R5bGUgPT09ICdmaWxsZWQnLCBcbiAgICAncC1yaXBwbGUtZGlzYWJsZWQnOiAhcmlwcGxlLFxuICAgICdsYXlvdXQtbWVudS1hY3RpdmUnOiBpc1N0YXRpY2FsTWVudVZpc2libGUoKSxcbiAgICAnbGF5b3V0LW1lbnUtYnV0dG9uLWhpZGRlbic6IGlzSG9yaXpvbnRhbE1lbnVNb2RlKClcbiAgfVwiXG4gIFtjbGFzc109XCInbGF5b3V0LW1lbnUtJyArIHRoaXMuY29sb3JTY2hlbWVcIlxuPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiYXBwU3RhdGVTZXJ2aWNlLmN1cnJlbnRXb3Jrc3BhY2UkIHwgYXN5bmM7IGVsc2Ugbm9Xb3Jrc3BhY2VcIj5cbiAgICA8b2N4LXNoZWxsLWhlYWRlclxuICAgICAgW21lbnVCdXR0b25UaXRsZV09XCJtZW51QnV0dG9uVGl0bGVcIlxuICAgICAgKG1lbnVCdXR0b25DbGljayk9XCJvbk1lbnVCdXR0b25DbGljaygkZXZlbnQpXCJcbiAgICAgIFtpc0hvcml6b250YWxNZW51XT1cImlzSG9yaXpvbnRhbE1lbnVNb2RlKClcIlxuICAgID5cbiAgICAgIDxkaXYgKm5nSWY9XCJpc0hvcml6b250YWxNZW51VmlzaWJsZSgpXCI+XG4gICAgICAgIDxvY3gtc2xvdCBuYW1lPVwib25lY3gtc2hlbGwtaG9yaXpvbnRhbC1tZW51XCI+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlICNza2VsZXRvbj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtbC00IGZsZXggZmxleC1yb3cgZ2FwLTRcIj5cbiAgICAgICAgICAgICAgPHAtc2tlbGV0b24gY2xhc3M9XCJ3LWZ1bGwgaC1mdWxsIGlubGluZS1ibG9ja1wiIGhlaWdodD1cIjM1cHhcIiB3aWR0aD1cIjEyMHB4XCI+PC9wLXNrZWxldG9uPlxuICAgICAgICAgICAgICA8cC1za2VsZXRvbiBjbGFzcz1cInctZnVsbCBoLWZ1bGwgaW5saW5lLWJsb2NrXCIgaGVpZ2h0PVwiMzVweFwiIHdpZHRoPVwiMTIwcHhcIj48L3Atc2tlbGV0b24+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8L29jeC1zbG90PlxuICAgICAgPC9kaXY+XG4gICAgPC9vY3gtc2hlbGwtaGVhZGVyPlxuXG4gICAgPHAtdG9hc3Q+PC9wLXRvYXN0PlxuXG4gICAgPGRpdiAqbmdJZj1cImlzU3RhdGljYWxNZW51VmlzaWJsZSgpXCIgY2xhc3M9XCJtZW51LXdyYXBwZXJcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJsYXlvdXQtbWVudS1jb250YWluZXIgb3ZlcmZsb3ctYXV0b1wiPlxuICAgICAgICA8b2N4LXNsb3QgbmFtZT1cIm9uZWN4LXNoZWxsLXZlcnRpY2FsLW1lbnVcIj5cbiAgICAgICAgICA8bmctdGVtcGxhdGUgI3NrZWxldG9uPlxuICAgICAgICAgICAgPHAtc2tlbGV0b24gY2xhc3M9XCJ3LWZ1bGwgaC1mdWxsIGlubGluZS1ibG9jayBwLTJcIiBoZWlnaHQ9XCIzNXB4XCI+PC9wLXNrZWxldG9uPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvb2N4LXNsb3Q+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgY2xhc3M9XCJsYXlvdXQtbWFpblwiPlxuICAgICAgPGRpdiBjbGFzcz1cImxheW91dC1jb250ZW50IHJlbGF0aXZlXCI+XG4gICAgICAgIDxvY3gtc2xvdCBuYW1lPVwib25lY3gtc2hlbGwtc3ViLWhlYWRlclwiPjwvb2N4LXNsb3Q+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhc2hvd0NvbnRlbnRQcm92aWRlciB8fCAoc2hvd0NvbnRlbnRQcm92aWRlci5zaG93Q29udGVudCQgfCBhc3luYyk7IGVsc2UgYXBwTG9hZGluZ1wiPlxuICAgICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICAgICAgICA8cm91dGVyLW91dGxldD48L3JvdXRlci1vdXRsZXQ+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxvY3gtc2hlbGwtZm9vdGVyPjwvb2N4LXNoZWxsLWZvb3Rlcj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2ICpuZ0lmPVwibWVudUFjdGl2ZSB8fCAhIWFjdGl2ZVRvcGJhckl0ZW1cIiBjbGFzcz1cImxheW91dC1tYXNrIG1vZGFsLWluXCI+PC9kaXY+XG4gIDwvbmctY29udGFpbmVyPlxuXG4gIDxuZy10ZW1wbGF0ZSAjbm9Xb3Jrc3BhY2U+XG4gICAgPGRpdiBjbGFzcz1cImxheW91dC1tYWluXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwibGF5b3V0LWNvbnRlbnQgcmVsYXRpdmVcIj5cbiAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgICAgICA8cm91dGVyLW91dGxldD48L3JvdXRlci1vdXRsZXQ+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI2dsb2JhbEVycm9yPlxuICA8b2N4LXNoZWxsLWVycm9yIFtlcnJDb2RlXT1cImdsb2JhbEVyck1zZ1wiPjwvb2N4LXNoZWxsLWVycm9yPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNhcHBMb2FkaW5nPlxuICA8b2N4LWFwcC1sb2FkaW5nLXNwaW5uZXI+PC9vY3gtYXBwLWxvYWRpbmctc3Bpbm5lcj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
@@ -10,18 +10,68 @@ import { PortalViewportComponent } from './components/portal-viewport/portal-vie
10
10
  import { SkeletonModule } from 'primeng/skeleton';
11
11
  import { AppLoadingSpinnerComponent } from './components/app-loading-spinner/app-loading-spinner.component';
12
12
  import { ShellSrcDirective } from './directives/src.directive';
13
+ import { TranslateModule } from '@ngx-translate/core';
14
+ import { TooltipModule } from 'primeng/tooltip';
13
15
  import * as i0 from "@angular/core";
14
16
  export class ShellCoreModule {
15
17
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ShellCoreModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
16
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.12", ngImport: i0, type: ShellCoreModule, declarations: [PortalViewportComponent, HeaderComponent, PortalFooterComponent, GlobalErrorComponent, AppLoadingSpinnerComponent, ShellSrcDirective], imports: [CommonModule, RouterModule, AngularRemoteComponentsModule, ToastModule, SkeletonModule], exports: [PortalViewportComponent, HeaderComponent, PortalFooterComponent, ToastModule, GlobalErrorComponent] }); }
17
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ShellCoreModule, imports: [CommonModule, RouterModule, AngularRemoteComponentsModule, ToastModule, SkeletonModule, ToastModule] }); }
18
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.12", ngImport: i0, type: ShellCoreModule, declarations: [PortalViewportComponent,
19
+ HeaderComponent,
20
+ PortalFooterComponent,
21
+ GlobalErrorComponent,
22
+ AppLoadingSpinnerComponent,
23
+ ShellSrcDirective], imports: [AngularRemoteComponentsModule,
24
+ CommonModule,
25
+ RouterModule,
26
+ SkeletonModule,
27
+ ToastModule,
28
+ TooltipModule,
29
+ TranslateModule], exports: [GlobalErrorComponent,
30
+ HeaderComponent,
31
+ PortalViewportComponent,
32
+ PortalFooterComponent,
33
+ ToastModule,
34
+ TooltipModule,
35
+ TranslateModule] }); }
36
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ShellCoreModule, imports: [AngularRemoteComponentsModule,
37
+ CommonModule,
38
+ RouterModule,
39
+ SkeletonModule,
40
+ ToastModule,
41
+ TooltipModule,
42
+ TranslateModule, ToastModule,
43
+ TooltipModule,
44
+ TranslateModule] }); }
18
45
  }
19
46
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ShellCoreModule, decorators: [{
20
47
  type: NgModule,
21
48
  args: [{
22
- imports: [CommonModule, RouterModule, AngularRemoteComponentsModule, ToastModule, SkeletonModule],
23
- declarations: [PortalViewportComponent, HeaderComponent, PortalFooterComponent, GlobalErrorComponent, AppLoadingSpinnerComponent, ShellSrcDirective],
24
- exports: [PortalViewportComponent, HeaderComponent, PortalFooterComponent, ToastModule, GlobalErrorComponent],
49
+ imports: [
50
+ AngularRemoteComponentsModule,
51
+ CommonModule,
52
+ RouterModule,
53
+ SkeletonModule,
54
+ ToastModule,
55
+ TooltipModule,
56
+ TranslateModule,
57
+ ],
58
+ declarations: [
59
+ PortalViewportComponent,
60
+ HeaderComponent,
61
+ PortalFooterComponent,
62
+ GlobalErrorComponent,
63
+ AppLoadingSpinnerComponent,
64
+ ShellSrcDirective,
65
+ ],
66
+ exports: [
67
+ GlobalErrorComponent,
68
+ HeaderComponent,
69
+ PortalViewportComponent,
70
+ PortalFooterComponent,
71
+ ToastModule,
72
+ TooltipModule,
73
+ TranslateModule,
74
+ ],
25
75
  }]
26
76
  }] });
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hlbGwtY29yZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL3NoZWxsLWNvcmUvc3JjL2xpYi9zaGVsbC1jb3JlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUN4QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sa0NBQWtDLENBQUE7QUFDaEYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUMzQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxxREFBcUQsQ0FBQTtBQUMxRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQTtBQUMxRixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNkNBQTZDLENBQUE7QUFDN0UsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sd0RBQXdELENBQUE7QUFDaEcsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFBO0FBQ2pELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGdFQUFnRSxDQUFBO0FBQzNHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRCQUE0QixDQUFBOztBQU85RCxNQUFNLE9BQU8sZUFBZTsrR0FBZixlQUFlO2dIQUFmLGVBQWUsaUJBSFgsdUJBQXVCLEVBQUUsZUFBZSxFQUFFLHFCQUFxQixFQUFFLG9CQUFvQixFQUFFLDBCQUEwQixFQUFFLGlCQUFpQixhQUR6SSxZQUFZLEVBQUUsWUFBWSxFQUFFLDZCQUE2QixFQUFFLFdBQVcsRUFBRSxjQUFjLGFBRXRGLHVCQUF1QixFQUFFLGVBQWUsRUFBRSxxQkFBcUIsRUFBRSxXQUFXLEVBQUUsb0JBQW9CO2dIQUVqRyxlQUFlLFlBSmhCLFlBQVksRUFBRSxZQUFZLEVBQUUsNkJBQTZCLEVBQUUsV0FBVyxFQUFFLGNBQWMsRUFFckIsV0FBVzs7NEZBRTNFLGVBQWU7a0JBTDNCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLFlBQVksRUFBRSw2QkFBNkIsRUFBRSxXQUFXLEVBQUUsY0FBYyxDQUFDO29CQUNqRyxZQUFZLEVBQUUsQ0FBQyx1QkFBdUIsRUFBRSxlQUFlLEVBQUUscUJBQXFCLEVBQUUsb0JBQW9CLEVBQUUsMEJBQTBCLEVBQUUsaUJBQWlCLENBQUM7b0JBQ3BKLE9BQU8sRUFBRSxDQUFDLHVCQUF1QixFQUFFLGVBQWUsRUFBRSxxQkFBcUIsRUFBRSxXQUFXLEVBQUUsb0JBQW9CLENBQUM7aUJBQzlHIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJ1xuaW1wb3J0IHsgQW5ndWxhclJlbW90ZUNvbXBvbmVudHNNb2R1bGUgfSBmcm9tICdAb25lY3gvYW5ndWxhci1yZW1vdGUtY29tcG9uZW50cydcbmltcG9ydCB7IFRvYXN0TW9kdWxlIH0gZnJvbSAncHJpbWVuZy90b2FzdCdcbmltcG9ydCB7IEdsb2JhbEVycm9yQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Vycm9yLWNvbXBvbmVudC9nbG9iYWwtZXJyb3IuY29tcG9uZW50J1xuaW1wb3J0IHsgUG9ydGFsRm9vdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3BvcnRhbC1mb290ZXIvcG9ydGFsLWZvb3Rlci5jb21wb25lbnQnXG5pbXBvcnQgeyBIZWFkZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcG9ydGFsLWhlYWRlci9oZWFkZXIuY29tcG9uZW50J1xuaW1wb3J0IHsgUG9ydGFsVmlld3BvcnRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcG9ydGFsLXZpZXdwb3J0L3BvcnRhbC12aWV3cG9ydC5jb21wb25lbnQnXG5pbXBvcnQgeyBTa2VsZXRvbk1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvc2tlbGV0b24nXG5pbXBvcnQgeyBBcHBMb2FkaW5nU3Bpbm5lckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9hcHAtbG9hZGluZy1zcGlubmVyL2FwcC1sb2FkaW5nLXNwaW5uZXIuY29tcG9uZW50J1xuaW1wb3J0IHsgU2hlbGxTcmNEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvc3JjLmRpcmVjdGl2ZSdcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgUm91dGVyTW9kdWxlLCBBbmd1bGFyUmVtb3RlQ29tcG9uZW50c01vZHVsZSwgVG9hc3RNb2R1bGUsIFNrZWxldG9uTW9kdWxlXSxcbiAgZGVjbGFyYXRpb25zOiBbUG9ydGFsVmlld3BvcnRDb21wb25lbnQsIEhlYWRlckNvbXBvbmVudCwgUG9ydGFsRm9vdGVyQ29tcG9uZW50LCBHbG9iYWxFcnJvckNvbXBvbmVudCwgQXBwTG9hZGluZ1NwaW5uZXJDb21wb25lbnQsIFNoZWxsU3JjRGlyZWN0aXZlXSxcbiAgZXhwb3J0czogW1BvcnRhbFZpZXdwb3J0Q29tcG9uZW50LCBIZWFkZXJDb21wb25lbnQsIFBvcnRhbEZvb3RlckNvbXBvbmVudCwgVG9hc3RNb2R1bGUsIEdsb2JhbEVycm9yQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgU2hlbGxDb3JlTW9kdWxlIHt9XG4iXX0=
77
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hlbGwtY29yZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL3NoZWxsLWNvcmUvc3JjL2xpYi9zaGVsbC1jb3JlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUN4QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sa0NBQWtDLENBQUE7QUFDaEYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUMzQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxxREFBcUQsQ0FBQTtBQUMxRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQTtBQUMxRixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNkNBQTZDLENBQUE7QUFDN0UsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sd0RBQXdELENBQUE7QUFDaEcsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFBO0FBQ2pELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGdFQUFnRSxDQUFBO0FBQzNHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRCQUE0QixDQUFBO0FBQzlELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUNyRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0saUJBQWlCLENBQUE7O0FBOEIvQyxNQUFNLE9BQU8sZUFBZTsrR0FBZixlQUFlO2dIQUFmLGVBQWUsaUJBakJ4Qix1QkFBdUI7WUFDdkIsZUFBZTtZQUNmLHFCQUFxQjtZQUNyQixvQkFBb0I7WUFDcEIsMEJBQTBCO1lBQzFCLGlCQUFpQixhQWRqQiw2QkFBNkI7WUFDN0IsWUFBWTtZQUNaLFlBQVk7WUFDWixjQUFjO1lBQ2QsV0FBVztZQUNYLGFBQWE7WUFDYixlQUFlLGFBV2Ysb0JBQW9CO1lBQ3BCLGVBQWU7WUFDZix1QkFBdUI7WUFDdkIscUJBQXFCO1lBQ3JCLFdBQVc7WUFDWCxhQUFhO1lBQ2IsZUFBZTtnSEFHTixlQUFlLFlBMUJ4Qiw2QkFBNkI7WUFDN0IsWUFBWTtZQUNaLFlBQVk7WUFDWixjQUFjO1lBQ2QsV0FBVztZQUNYLGFBQWE7WUFDYixlQUFlLEVBZWYsV0FBVztZQUNYLGFBQWE7WUFDYixlQUFlOzs0RkFHTixlQUFlO2tCQTVCM0IsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsNkJBQTZCO3dCQUM3QixZQUFZO3dCQUNaLFlBQVk7d0JBQ1osY0FBYzt3QkFDZCxXQUFXO3dCQUNYLGFBQWE7d0JBQ2IsZUFBZTtxQkFDaEI7b0JBQ0QsWUFBWSxFQUFFO3dCQUNaLHVCQUF1Qjt3QkFDdkIsZUFBZTt3QkFDZixxQkFBcUI7d0JBQ3JCLG9CQUFvQjt3QkFDcEIsMEJBQTBCO3dCQUMxQixpQkFBaUI7cUJBQ2xCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxvQkFBb0I7d0JBQ3BCLGVBQWU7d0JBQ2YsdUJBQXVCO3dCQUN2QixxQkFBcUI7d0JBQ3JCLFdBQVc7d0JBQ1gsYUFBYTt3QkFDYixlQUFlO3FCQUNoQjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcidcbmltcG9ydCB7IEFuZ3VsYXJSZW1vdGVDb21wb25lbnRzTW9kdWxlIH0gZnJvbSAnQG9uZWN4L2FuZ3VsYXItcmVtb3RlLWNvbXBvbmVudHMnXG5pbXBvcnQgeyBUb2FzdE1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvdG9hc3QnXG5pbXBvcnQgeyBHbG9iYWxFcnJvckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9lcnJvci1jb21wb25lbnQvZ2xvYmFsLWVycm9yLmNvbXBvbmVudCdcbmltcG9ydCB7IFBvcnRhbEZvb3RlckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wb3J0YWwtZm9vdGVyL3BvcnRhbC1mb290ZXIuY29tcG9uZW50J1xuaW1wb3J0IHsgSGVhZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3BvcnRhbC1oZWFkZXIvaGVhZGVyLmNvbXBvbmVudCdcbmltcG9ydCB7IFBvcnRhbFZpZXdwb3J0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3BvcnRhbC12aWV3cG9ydC9wb3J0YWwtdmlld3BvcnQuY29tcG9uZW50J1xuaW1wb3J0IHsgU2tlbGV0b25Nb2R1bGUgfSBmcm9tICdwcmltZW5nL3NrZWxldG9uJ1xuaW1wb3J0IHsgQXBwTG9hZGluZ1NwaW5uZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYXBwLWxvYWRpbmctc3Bpbm5lci9hcHAtbG9hZGluZy1zcGlubmVyLmNvbXBvbmVudCdcbmltcG9ydCB7IFNoZWxsU3JjRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL3NyYy5kaXJlY3RpdmUnXG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJ1xuaW1wb3J0IHsgVG9vbHRpcE1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvdG9vbHRpcCdcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIEFuZ3VsYXJSZW1vdGVDb21wb25lbnRzTW9kdWxlLFxuICAgIENvbW1vbk1vZHVsZSxcbiAgICBSb3V0ZXJNb2R1bGUsXG4gICAgU2tlbGV0b25Nb2R1bGUsXG4gICAgVG9hc3RNb2R1bGUsXG4gICAgVG9vbHRpcE1vZHVsZSxcbiAgICBUcmFuc2xhdGVNb2R1bGUsXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIFBvcnRhbFZpZXdwb3J0Q29tcG9uZW50LFxuICAgIEhlYWRlckNvbXBvbmVudCxcbiAgICBQb3J0YWxGb290ZXJDb21wb25lbnQsXG4gICAgR2xvYmFsRXJyb3JDb21wb25lbnQsXG4gICAgQXBwTG9hZGluZ1NwaW5uZXJDb21wb25lbnQsXG4gICAgU2hlbGxTcmNEaXJlY3RpdmUsXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBHbG9iYWxFcnJvckNvbXBvbmVudCxcbiAgICBIZWFkZXJDb21wb25lbnQsXG4gICAgUG9ydGFsVmlld3BvcnRDb21wb25lbnQsXG4gICAgUG9ydGFsRm9vdGVyQ29tcG9uZW50LFxuICAgIFRvYXN0TW9kdWxlLFxuICAgIFRvb2x0aXBNb2R1bGUsXG4gICAgVHJhbnNsYXRlTW9kdWxlLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBTaGVsbENvcmVNb2R1bGUge31cbiJdfQ==