@onecx/shell-core 5.51.0 → 5.52.0

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,10 +1,10 @@
1
1
  import { Component } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  export class AppLoadingSpinnerComponent {
4
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AppLoadingSpinnerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: AppLoadingSpinnerComponent, selector: "ocx-app-loading-spinner", ngImport: i0, template: "<div class=\"w-full h-full absolute top-0 left-0 element-overlay\">\n <div class=\"loader\"></div>\n</div>", styles: ["@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.element-overlay{position:relative;width:100%;cursor:default;pointer-events:none}.element-overlay:before{content:\"\";position:absolute;top:0;left:0;width:100%;height:100%;background-color:#00000080;z-index:1}.loader{width:28px;height:28px;border:3px solid var(--primary-color, var(--primary-color-default));border-bottom-color:transparent;border-radius:50%;display:inline-block;box-sizing:border-box;animation:rotation 1s linear infinite;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2}.loader.loader-small{width:20px;height:20px;top:20%;left:45%}\n"] }); }
4
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AppLoadingSpinnerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: AppLoadingSpinnerComponent, selector: "ocx-app-loading-spinner", ngImport: i0, template: "<div class=\"w-full h-full absolute top-0 left-0 element-overlay\">\n <div class=\"loader\"></div>\n</div>", styles: ["@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.element-overlay{position:relative;width:100%;cursor:default;pointer-events:none}.element-overlay:before{content:\"\";position:absolute;top:0;left:0;width:100%;height:100%;background-color:#00000080;z-index:1}.loader{width:28px;height:28px;border:3px solid var(--primary-color, var(--primary-color-default));border-bottom-color:transparent;border-radius:50%;display:inline-block;box-sizing:border-box;animation:rotation 1s linear infinite;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2}.loader.loader-small{width:20px;height:20px;top:20%;left:45%}\n"] }); }
6
6
  }
7
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AppLoadingSpinnerComponent, decorators: [{
7
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AppLoadingSpinnerComponent, decorators: [{
8
8
  type: Component,
9
9
  args: [{ selector: 'ocx-app-loading-spinner', template: "<div class=\"w-full h-full absolute top-0 left-0 element-overlay\">\n <div class=\"loader\"></div>\n</div>", styles: ["@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.element-overlay{position:relative;width:100%;cursor:default;pointer-events:none}.element-overlay:before{content:\"\";position:absolute;top:0;left:0;width:100%;height:100%;background-color:#00000080;z-index:1}.loader{width:28px;height:28px;border:3px solid var(--primary-color, var(--primary-color-default));border-bottom-color:transparent;border-radius:50%;display:inline-block;box-sizing:border-box;animation:rotation 1s linear infinite;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2}.loader.loader-small{width:20px;height:20px;top:20%;left:45%}\n"] }]
10
10
  }] });
@@ -15,10 +15,10 @@ export class GlobalErrorComponent {
15
15
  reload() {
16
16
  window.location.reload();
17
17
  }
18
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GlobalErrorComponent, deps: [{ token: i1.Router }, { token: i1.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
19
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: GlobalErrorComponent, selector: "ocx-shell-error", inputs: { errCode: "errCode" }, ngImport: i0, template: "<div class=\"pages-body error-page flex flex-column\">\n <div class=\"align-self-center mt-auto mb-auto\">\n <div class=\"pages-panel card flex flex-column\">\n <div class=\"pages-header px-3 py-1\">\n <h2>ERROR</h2>\n </div>\n <div class=\"card mt-3 px-6\">\n <img src=\"assets/images/error.png\" alt=\"\" />\n </div>\n <div class=\"pages-detail pb-6\">{{errCode}}</div>\n <button pButton pRipple type=\"button\" label=\"Try Again\" (click)=\"reload()\" class=\"p-button-text\"></button>\n </div>\n </div>\n</div>\n", styles: [".pages-body{height:100vh}.pages-body .topbar{box-shadow:0 2px 5px #00000042;background-color:#1565c0;z-index:100}.pages-body .topbar .topbar-left img{height:2rem}.pages-body .topbar .p-button.p-button-text.p-button-plain{color:#fff}.pages-body .pages-panel{text-align:center;z-index:200}.pages-body .pages-panel.card{border:1.5px solid var(--divider-color, var(--divider-color-default));border-radius:6px}.pages-body .pages-panel.card img{width:100%}.pages-body .pages-panel.card>.card{background-color:var(--content-alt-bg-color, var(--content-alt-bg-color-default))}.pages-body .pages-panel .pages-header{margin-top:-3rem;color:var(--primary-color-text);border:1.5px solid var(--divider-color, var(--divider-color-default));border-radius:4px;margin-left:auto;margin-right:auto}.pages-body .pages-panel .pages-header h2{margin:0}.pages-body .pages-panel .pages-detail{color:var(--text-secondary-color, var(--text-secondary-color-default))}.pages-body.error-page{background-size:cover;background-color:var(--primary-color, var(--primary-color-default))}.pages-body.error-page .pages-panel .pages-header{background:#d81b60}.pages-body.notfound-page{background-size:cover}.pages-body.notfound-page .pages-panel .pages-header{background:#455a64}.pages-body.accessdenied-page{background-size:cover}.pages-body.accessdenied-page .pages-panel .pages-header{background:#fb8c00}@media screen and (max-width: 768px){.pages-body.contact-page .pages-panel{padding-bottom:10em}.pages-body.contact-page .pages-panel .p-button{width:100%}.pages-body.contact-page .pages-panel .card .right-panel{text-align:center}}\n"] }); }
18
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: GlobalErrorComponent, deps: [{ token: i1.Router }, { token: i1.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
19
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: GlobalErrorComponent, selector: "ocx-shell-error", inputs: { errCode: "errCode" }, ngImport: i0, template: "<div class=\"pages-body error-page flex flex-column\">\n <div class=\"align-self-center mt-auto mb-auto\">\n <div class=\"pages-panel card flex flex-column\">\n <div class=\"pages-header px-3 py-1\">\n <h2>ERROR</h2>\n </div>\n <div class=\"card mt-3 px-6\">\n <img src=\"assets/images/error.png\" alt=\"\" />\n </div>\n <div class=\"pages-detail pb-6\">{{errCode}}</div>\n <button pButton pRipple type=\"button\" label=\"Try Again\" (click)=\"reload()\" class=\"p-button-text\"></button>\n </div>\n </div>\n</div>\n", styles: [".pages-body{height:100vh}.pages-body .topbar{box-shadow:0 2px 5px #00000042;background-color:#1565c0;z-index:100}.pages-body .topbar .topbar-left img{height:2rem}.pages-body .topbar .p-button.p-button-text.p-button-plain{color:#fff}.pages-body .pages-panel{text-align:center;z-index:200}.pages-body .pages-panel.card{border:1.5px solid var(--divider-color, var(--divider-color-default));border-radius:6px}.pages-body .pages-panel.card img{width:100%}.pages-body .pages-panel.card>.card{background-color:var(--content-alt-bg-color, var(--content-alt-bg-color-default))}.pages-body .pages-panel .pages-header{margin-top:-3rem;color:var(--primary-color-text);border:1.5px solid var(--divider-color, var(--divider-color-default));border-radius:4px;margin-left:auto;margin-right:auto}.pages-body .pages-panel .pages-header h2{margin:0}.pages-body .pages-panel .pages-detail{color:var(--text-secondary-color, var(--text-secondary-color-default))}.pages-body.error-page{background-size:cover;background-color:var(--primary-color, var(--primary-color-default))}.pages-body.error-page .pages-panel .pages-header{background:#d81b60}.pages-body.notfound-page{background-size:cover}.pages-body.notfound-page .pages-panel .pages-header{background:#455a64}.pages-body.accessdenied-page{background-size:cover}.pages-body.accessdenied-page .pages-panel .pages-header{background:#fb8c00}@media screen and (max-width: 768px){.pages-body.contact-page .pages-panel{padding-bottom:10em}.pages-body.contact-page .pages-panel .p-button{width:100%}.pages-body.contact-page .pages-panel .card .right-panel{text-align:center}}\n"] }); }
20
20
  }
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GlobalErrorComponent, decorators: [{
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: GlobalErrorComponent, decorators: [{
22
22
  type: Component,
23
23
  args: [{ selector: 'ocx-shell-error', template: "<div class=\"pages-body error-page flex flex-column\">\n <div class=\"align-self-center mt-auto mb-auto\">\n <div class=\"pages-panel card flex flex-column\">\n <div class=\"pages-header px-3 py-1\">\n <h2>ERROR</h2>\n </div>\n <div class=\"card mt-3 px-6\">\n <img src=\"assets/images/error.png\" alt=\"\" />\n </div>\n <div class=\"pages-detail pb-6\">{{errCode}}</div>\n <button pButton pRipple type=\"button\" label=\"Try Again\" (click)=\"reload()\" class=\"p-button-text\"></button>\n </div>\n </div>\n</div>\n", styles: [".pages-body{height:100vh}.pages-body .topbar{box-shadow:0 2px 5px #00000042;background-color:#1565c0;z-index:100}.pages-body .topbar .topbar-left img{height:2rem}.pages-body .topbar .p-button.p-button-text.p-button-plain{color:#fff}.pages-body .pages-panel{text-align:center;z-index:200}.pages-body .pages-panel.card{border:1.5px solid var(--divider-color, var(--divider-color-default));border-radius:6px}.pages-body .pages-panel.card img{width:100%}.pages-body .pages-panel.card>.card{background-color:var(--content-alt-bg-color, var(--content-alt-bg-color-default))}.pages-body .pages-panel .pages-header{margin-top:-3rem;color:var(--primary-color-text);border:1.5px solid var(--divider-color, var(--divider-color-default));border-radius:4px;margin-left:auto;margin-right:auto}.pages-body .pages-panel .pages-header h2{margin:0}.pages-body .pages-panel .pages-detail{color:var(--text-secondary-color, var(--text-secondary-color-default))}.pages-body.error-page{background-size:cover;background-color:var(--primary-color, var(--primary-color-default))}.pages-body.error-page .pages-panel .pages-header{background:#d81b60}.pages-body.notfound-page{background-size:cover}.pages-body.notfound-page .pages-panel .pages-header{background:#455a64}.pages-body.accessdenied-page{background-size:cover}.pages-body.accessdenied-page .pages-panel .pages-header{background:#fb8c00}@media screen and (max-width: 768px){.pages-body.contact-page .pages-panel{padding-bottom:10em}.pages-body.contact-page .pages-panel .p-button{width:100%}.pages-body.contact-page .pages-panel .card .right-panel{text-align:center}}\n"] }]
24
24
  }], ctorParameters: () => [{ type: i1.Router }, { type: i1.ActivatedRoute }], propDecorators: { errCode: [{
@@ -44,10 +44,10 @@ export class PortalFooterComponent {
44
44
  URL.revokeObjectURL(logoUrl);
45
45
  }
46
46
  }
47
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", 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 }); }
48
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", 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" }] }); }
47
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", 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 }); }
48
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", 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" }] }); }
49
49
  }
50
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PortalFooterComponent, decorators: [{
50
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: PortalFooterComponent, decorators: [{
51
51
  type: Component,
52
52
  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" }]
53
53
  }], ctorParameters: () => [{ type: i1.ConfigurationService }, { type: i2.Router }, { type: i1.AppStateService }, { type: i1.ThemeService }, { type: undefined, decorators: [{
@@ -25,8 +25,8 @@ let HeaderComponent = class HeaderComponent {
25
25
  onMenuButtonClick(e) {
26
26
  this.menuButtonClick.emit(e);
27
27
  }
28
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: HeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
29
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: HeaderComponent, selector: "ocx-shell-header", inputs: { menuButtonTitle: "menuButtonTitle", fullPortalLayout: "fullPortalLayout", homeNavUrl: "homeNavUrl", homeNavTitle: "homeNavTitle", isHorizontalMenu: "isHorizontalMenu", isStaticalMenu: "isStaticalMenu" }, outputs: { menuButtonClick: "menuButtonClick" }, ngImport: i0, template: "<header class=\"layout-topbar_flex\" id=\"ocx_header\">\n <section\n class=\"layout-topbar-left relative flex justify-content-center align-items-center\"\n [ngClass]=\"{'vertical-menu': !isHorizontalMenu}\"\n [attr.aria-label]=\"'Left'\"\n >\n <ocx-slot\n name=\"onecx-shell-header-left\"\n class=\"flex flex-row flex-wrap align-items-center column-gap-3 row-gap-1\"\n [inputs]=\"{ imageStyleClass: 'max-h-3rem max-w-9rem vertical-align-middle' }\"\n [outputs]=\"{ imageLoadingFailed: logoLoadingEmitter }\"\n >\n <ng-template #skeleton>\n <div class=\"flex align-items-center h-full justify-content-center\" style=\"width: 26px\">\n <p-skeleton size=\"2rem\" class=\"h-full flex align-items-center\"></p-skeleton>\n </div>\n </ng-template>\n </ocx-slot>\n <div *ngIf=\"themeLogoLoadingFailed\"><!-- portal logo --></div>\n\n <button\n id=\"ocx_vertical_menu_action_toggle\"\n class=\"layout-menu-button border-none\"\n pRipple\n (click)=\"onMenuButtonClick($event)\"\n [attr.aria-label]=\"'OCX_HEADER.MENU_TOGGLE' | translate\"\n [pTooltip]=\"'OCX_HEADER.MENU_TOGGLE' | translate\"\n tooltipPosition=\"top\"\n tooltipEvent=\"hover\"\n >\n <span\n id=\"ocx_vertical_menu_action_toggle_icon\"\n class=\"pi\"\n [ngClass]=\"'pi-chevron-' + (isStaticalMenu ? 'left' : 'right')\"\n aria-hidden=\"true\"\n ></span>\n </button>\n </section>\n\n <section class=\"layout-topbar-right\" [attr.aria-label]=\"'Topbar'\">\n <div class=\"layout-topbar-actions-left\">\n <ng-content></ng-content>\n </div>\n <div class=\"layout-topbar-actions-right_flex\">\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 </section>\n</header>\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, var(--logo-color-default, #12abdb));fill:currentColor}\n"], dependencies: [{ kind: "component", type: i1.SlotComponent, selector: "ocx-slot[name]", inputs: ["name", "inputs", "outputs"] }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.Skeleton, selector: "p-skeleton", inputs: ["styleClass", "style", "shape", "animation", "borderRadius", "size", "width", "height"] }, { kind: "directive", type: i4.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }], animations: [
28
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: HeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
29
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: HeaderComponent, selector: "ocx-shell-header", inputs: { menuButtonTitle: "menuButtonTitle", fullPortalLayout: "fullPortalLayout", homeNavUrl: "homeNavUrl", homeNavTitle: "homeNavTitle", isHorizontalMenu: "isHorizontalMenu", isStaticalMenu: "isStaticalMenu" }, outputs: { menuButtonClick: "menuButtonClick" }, ngImport: i0, template: "<header class=\"layout-topbar_flex\" id=\"ocx_header\">\n <section\n class=\"layout-topbar-left relative flex justify-content-center align-items-center\"\n [ngClass]=\"{'vertical-menu': !isHorizontalMenu}\"\n [attr.aria-label]=\"'Left'\"\n >\n <ocx-slot\n name=\"onecx-shell-header-left\"\n class=\"flex flex-row flex-wrap align-items-center column-gap-3 row-gap-1\"\n [inputs]=\"{ imageStyleClass: 'max-h-3rem max-w-9rem vertical-align-middle' }\"\n [outputs]=\"{ imageLoadingFailed: logoLoadingEmitter }\"\n >\n <ng-template #skeleton>\n <div class=\"flex align-items-center h-full justify-content-center\" style=\"width: 26px\">\n <p-skeleton size=\"2rem\" class=\"h-full flex align-items-center\"></p-skeleton>\n </div>\n </ng-template>\n </ocx-slot>\n <div *ngIf=\"themeLogoLoadingFailed\"><!-- portal logo --></div>\n\n <button\n id=\"ocx_vertical_menu_action_toggle\"\n class=\"layout-menu-button border-none\"\n pRipple\n (click)=\"onMenuButtonClick($event)\"\n [attr.aria-label]=\"'OCX_HEADER.MENU_TOGGLE' | translate\"\n [pTooltip]=\"'OCX_HEADER.MENU_TOGGLE' | translate\"\n tooltipPosition=\"top\"\n tooltipEvent=\"hover\"\n >\n <span\n id=\"ocx_vertical_menu_action_toggle_icon\"\n class=\"pi\"\n [ngClass]=\"'pi-chevron-' + (isStaticalMenu ? 'left' : 'right')\"\n aria-hidden=\"true\"\n ></span>\n </button>\n </section>\n\n <section class=\"layout-topbar-right\" [attr.aria-label]=\"'Topbar'\">\n <div class=\"layout-topbar-actions-left\">\n <ng-content></ng-content>\n </div>\n <div class=\"layout-topbar-actions-right_flex\">\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 </section>\n</header>\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, var(--logo-color-default, #12abdb));fill:currentColor}\n"], dependencies: [{ kind: "component", type: i1.SlotComponent, selector: "ocx-slot[name]", inputs: ["name", "inputs", "outputs"] }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.Skeleton, selector: "p-skeleton", inputs: ["styleClass", "style", "shape", "animation", "borderRadius", "size", "width", "height"] }, { kind: "directive", type: i4.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }], animations: [
30
30
  trigger('topbarActionPanelAnimation', [
31
31
  transition(':enter', [
32
32
  style({ opacity: 0, transform: 'scaleY(0.8)' }),
@@ -41,7 +41,7 @@ HeaderComponent = __decorate([
41
41
  __metadata("design:paramtypes", [])
42
42
  ], HeaderComponent);
43
43
  export { HeaderComponent };
44
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: HeaderComponent, decorators: [{
44
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: HeaderComponent, decorators: [{
45
45
  type: Component,
46
46
  args: [{ selector: 'ocx-shell-header', animations: [
47
47
  trigger('topbarActionPanelAnimation', [
@@ -107,8 +107,8 @@ let PortalViewportComponent = class PortalViewportComponent {
107
107
  isHorizontalMenuVisible() {
108
108
  return this.isHorizontalMenuMode();
109
109
  }
110
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", 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.SlotService }, { token: SHOW_CONTENT_PROVIDER, optional: true }, { token: WORKSPACE_CONFIG_BFF_SERVICE_PROVIDER, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
111
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", 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': themeService.currentTheme$ | async,\n 'p-input-filled': inputStyle === 'filled', \n 'p-ripple-disabled': !ripple,\n 'layout-menu-active': isStaticalMenuVisible() && (isVerticalMenuComponentDefined$ | async),\n 'layout-menu-button-hidden': isHorizontalMenuMode() || (isVerticalMenuComponentDefined$ | async) === false\n }\"\n [class]=\"'layout-menu-' + this.colorScheme\"\n>\n <ng-container *ngIf=\"themeService.currentTheme$ | async; else noTheme\">\n <ocx-shell-header\n [menuButtonTitle]=\"menuButtonTitle\"\n (menuButtonClick)=\"onMenuButtonClick($event)\"\n [isStaticalMenu]=\"isStaticalMenuVisible()\"\n [isHorizontalMenu]=\"isHorizontalMenuMode()\"\n >\n <div [hidden]=\"!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 [style]=\"{'word-break': 'break-word'}\"></p-toast>\n\n <div [hidden]=\"!isStaticalMenuVisible()\" class=\"menu-wrapper\">\n <div class=\"layout-menu-container overflow-auto\">\n <ocx-slot [name]=\"verticalMenuSlotName\">\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 <!-- custom page content -->\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 <!-- page footer -->\n <footer>\n <ocx-slot\n name=\"onecx-shell-footer\"\n class=\"onecx-shell-footer mx-3 flex flex-row flex-wrap align-items-center column-gap-3 row-gap-1 text-sm\"\n [inputs]=\"{ imageStyleClass: 'h-1rem vertical-align-middle' }\"\n >\n <ng-template #skeleton>\n <div class=\"flex align-items-center h-full justify-content-center\" style=\"width: 26px\">\n <p-skeleton shape=\"circle\" size=\"1rem\" class=\"h-full flex align-items-center\"></p-skeleton>\n </div>\n </ng-template>\n </ocx-slot>\n </footer>\n </div>\n\n <div *ngIf=\"menuActive || !!activeTopbarItem\" class=\"layout-mask modal-in\"></div>\n </ng-container>\n\n <ng-template #noTheme>\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: [":host ::ng-deep .onecx-shell-footer div:nth-child(2){flex-grow:1}\n"], dependencies: [{ kind: "component", type: i4.SlotComponent, selector: "ocx-slot[name]", inputs: ["name", "inputs", "outputs"] }, { kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.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", "isStaticalMenu"], outputs: ["menuButtonClick"] }, { kind: "component", type: i10.GlobalErrorComponent, selector: "ocx-shell-error", inputs: ["errCode"] }, { kind: "component", type: i11.AppLoadingSpinnerComponent, selector: "ocx-app-loading-spinner" }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }] }); }
110
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", 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.SlotService }, { token: SHOW_CONTENT_PROVIDER, optional: true }, { token: WORKSPACE_CONFIG_BFF_SERVICE_PROVIDER, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
111
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", 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': themeService.currentTheme$ | async,\n 'p-input-filled': inputStyle === 'filled', \n 'p-ripple-disabled': !ripple,\n 'layout-menu-active': isStaticalMenuVisible() && (isVerticalMenuComponentDefined$ | async),\n 'layout-menu-button-hidden': isHorizontalMenuMode() || (isVerticalMenuComponentDefined$ | async) === false\n }\"\n [class]=\"'layout-menu-' + this.colorScheme\"\n>\n <ng-container *ngIf=\"themeService.currentTheme$ | async; else noTheme\">\n <ocx-shell-header\n [menuButtonTitle]=\"menuButtonTitle\"\n (menuButtonClick)=\"onMenuButtonClick($event)\"\n [isStaticalMenu]=\"isStaticalMenuVisible()\"\n [isHorizontalMenu]=\"isHorizontalMenuMode()\"\n >\n <div [hidden]=\"!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 [style]=\"{'word-break': 'break-word'}\"></p-toast>\n\n <div [hidden]=\"!isStaticalMenuVisible()\" class=\"menu-wrapper\">\n <div class=\"layout-menu-container overflow-auto\">\n <ocx-slot [name]=\"verticalMenuSlotName\">\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 <!-- custom page content -->\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 <!-- page footer -->\n <footer>\n <ocx-slot\n name=\"onecx-shell-footer\"\n class=\"onecx-shell-footer mx-3 flex flex-row flex-wrap align-items-center column-gap-3 row-gap-1 text-sm\"\n [inputs]=\"{ imageStyleClass: 'h-1rem vertical-align-middle' }\"\n >\n <ng-template #skeleton>\n <div class=\"flex align-items-center h-full justify-content-center\" style=\"width: 26px\">\n <p-skeleton shape=\"circle\" size=\"1rem\" class=\"h-full flex align-items-center\"></p-skeleton>\n </div>\n </ng-template>\n </ocx-slot>\n </footer>\n </div>\n\n <div *ngIf=\"menuActive || !!activeTopbarItem\" class=\"layout-mask modal-in\"></div>\n </ng-container>\n\n <ng-template #noTheme>\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: [":host ::ng-deep .onecx-shell-footer div:nth-child(2){flex-grow:1}\n"], dependencies: [{ kind: "component", type: i4.SlotComponent, selector: "ocx-slot[name]", inputs: ["name", "inputs", "outputs"] }, { kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.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", "isStaticalMenu"], outputs: ["menuButtonClick"] }, { kind: "component", type: i10.GlobalErrorComponent, selector: "ocx-shell-error", inputs: ["errCode"] }, { kind: "component", type: i11.AppLoadingSpinnerComponent, selector: "ocx-app-loading-spinner" }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }] }); }
112
112
  };
113
113
  PortalViewportComponent = __decorate([
114
114
  UntilDestroy(),
@@ -122,7 +122,7 @@ PortalViewportComponent = __decorate([
122
122
  SlotService, Object, Object])
123
123
  ], PortalViewportComponent);
124
124
  export { PortalViewportComponent };
125
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PortalViewportComponent, decorators: [{
125
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: PortalViewportComponent, decorators: [{
126
126
  type: Component,
127
127
  args: [{ selector: 'ocx-shell-portal-viewport', template: "<div\n *ngIf=\"!globalErrMsg; else globalError\"\n [ngClass]=\"{\n 'layout-wrapper layout-topbar-var': themeService.currentTheme$ | async,\n 'p-input-filled': inputStyle === 'filled', \n 'p-ripple-disabled': !ripple,\n 'layout-menu-active': isStaticalMenuVisible() && (isVerticalMenuComponentDefined$ | async),\n 'layout-menu-button-hidden': isHorizontalMenuMode() || (isVerticalMenuComponentDefined$ | async) === false\n }\"\n [class]=\"'layout-menu-' + this.colorScheme\"\n>\n <ng-container *ngIf=\"themeService.currentTheme$ | async; else noTheme\">\n <ocx-shell-header\n [menuButtonTitle]=\"menuButtonTitle\"\n (menuButtonClick)=\"onMenuButtonClick($event)\"\n [isStaticalMenu]=\"isStaticalMenuVisible()\"\n [isHorizontalMenu]=\"isHorizontalMenuMode()\"\n >\n <div [hidden]=\"!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 [style]=\"{'word-break': 'break-word'}\"></p-toast>\n\n <div [hidden]=\"!isStaticalMenuVisible()\" class=\"menu-wrapper\">\n <div class=\"layout-menu-container overflow-auto\">\n <ocx-slot [name]=\"verticalMenuSlotName\">\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 <!-- custom page content -->\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 <!-- page footer -->\n <footer>\n <ocx-slot\n name=\"onecx-shell-footer\"\n class=\"onecx-shell-footer mx-3 flex flex-row flex-wrap align-items-center column-gap-3 row-gap-1 text-sm\"\n [inputs]=\"{ imageStyleClass: 'h-1rem vertical-align-middle' }\"\n >\n <ng-template #skeleton>\n <div class=\"flex align-items-center h-full justify-content-center\" style=\"width: 26px\">\n <p-skeleton shape=\"circle\" size=\"1rem\" class=\"h-full flex align-items-center\"></p-skeleton>\n </div>\n </ng-template>\n </ocx-slot>\n </footer>\n </div>\n\n <div *ngIf=\"menuActive || !!activeTopbarItem\" class=\"layout-mask modal-in\"></div>\n </ng-container>\n\n <ng-template #noTheme>\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: [":host ::ng-deep .onecx-shell-footer div:nth-child(2){flex-grow:1}\n"] }]
128
128
  }], ctorParameters: () => [{ type: i1.PrimeNGConfig }, { type: i1.MessageService }, { type: i2.AppStateService }, { type: i2.PortalMessageService }, { type: i2.UserService }, { type: i2.ThemeService }, { type: i3.HttpClient }, { type: i4.SlotService }, { type: undefined, decorators: [{
@@ -51,10 +51,10 @@ export class ShellSrcDirective {
51
51
  this.error = new EventEmitter();
52
52
  this.el.nativeElement.style.visibility = 'hidden';
53
53
  }
54
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ShellSrcDirective, deps: [{ token: i0.ElementRef }, { token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Directive }); }
55
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: ShellSrcDirective, selector: "[ocxShellSrc]", inputs: { ocxShellSrc: "ocxShellSrc" }, outputs: { error: "error" }, ngImport: i0 }); }
54
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ShellSrcDirective, deps: [{ token: i0.ElementRef }, { token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Directive }); }
55
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: ShellSrcDirective, selector: "[ocxShellSrc]", inputs: { ocxShellSrc: "ocxShellSrc" }, outputs: { error: "error" }, ngImport: i0 }); }
56
56
  }
57
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ShellSrcDirective, decorators: [{
57
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ShellSrcDirective, decorators: [{
58
58
  type: Directive,
59
59
  args: [{ selector: '[ocxShellSrc]' }]
60
60
  }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.HttpClient }], propDecorators: { error: [{
@@ -12,10 +12,10 @@ export class PermissionsCacheService {
12
12
  }
13
13
  return this.permissions[key];
14
14
  }
15
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PermissionsCacheService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
16
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PermissionsCacheService, providedIn: 'root' }); }
15
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: PermissionsCacheService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
16
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: PermissionsCacheService, providedIn: 'root' }); }
17
17
  }
18
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PermissionsCacheService, decorators: [{
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: PermissionsCacheService, decorators: [{
19
19
  type: Injectable,
20
20
  args: [{ providedIn: 'root' }]
21
21
  }] });
@@ -14,8 +14,8 @@ import { TranslateModule } from '@ngx-translate/core';
14
14
  import { TooltipModule } from 'primeng/tooltip';
15
15
  import * as i0 from "@angular/core";
16
16
  export class ShellCoreModule {
17
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ShellCoreModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
18
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: ShellCoreModule, declarations: [PortalViewportComponent,
17
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ShellCoreModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
18
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: ShellCoreModule, declarations: [PortalViewportComponent,
19
19
  HeaderComponent,
20
20
  PortalFooterComponent,
21
21
  GlobalErrorComponent,
@@ -33,7 +33,7 @@ export class ShellCoreModule {
33
33
  ToastModule,
34
34
  TooltipModule,
35
35
  TranslateModule] }); }
36
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ShellCoreModule, imports: [AngularRemoteComponentsModule,
36
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ShellCoreModule, imports: [AngularRemoteComponentsModule,
37
37
  CommonModule,
38
38
  RouterModule,
39
39
  SkeletonModule,
@@ -43,7 +43,7 @@ export class ShellCoreModule {
43
43
  TooltipModule,
44
44
  TranslateModule] }); }
45
45
  }
46
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ShellCoreModule, decorators: [{
46
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ShellCoreModule, decorators: [{
47
47
  type: NgModule,
48
48
  args: [{
49
49
  imports: [
@@ -38,10 +38,10 @@ class GlobalErrorComponent {
38
38
  reload() {
39
39
  window.location.reload();
40
40
  }
41
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GlobalErrorComponent, deps: [{ token: i1.Router }, { token: i1.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
42
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: GlobalErrorComponent, selector: "ocx-shell-error", inputs: { errCode: "errCode" }, ngImport: i0, template: "<div class=\"pages-body error-page flex flex-column\">\n <div class=\"align-self-center mt-auto mb-auto\">\n <div class=\"pages-panel card flex flex-column\">\n <div class=\"pages-header px-3 py-1\">\n <h2>ERROR</h2>\n </div>\n <div class=\"card mt-3 px-6\">\n <img src=\"assets/images/error.png\" alt=\"\" />\n </div>\n <div class=\"pages-detail pb-6\">{{errCode}}</div>\n <button pButton pRipple type=\"button\" label=\"Try Again\" (click)=\"reload()\" class=\"p-button-text\"></button>\n </div>\n </div>\n</div>\n", styles: [".pages-body{height:100vh}.pages-body .topbar{box-shadow:0 2px 5px #00000042;background-color:#1565c0;z-index:100}.pages-body .topbar .topbar-left img{height:2rem}.pages-body .topbar .p-button.p-button-text.p-button-plain{color:#fff}.pages-body .pages-panel{text-align:center;z-index:200}.pages-body .pages-panel.card{border:1.5px solid var(--divider-color, var(--divider-color-default));border-radius:6px}.pages-body .pages-panel.card img{width:100%}.pages-body .pages-panel.card>.card{background-color:var(--content-alt-bg-color, var(--content-alt-bg-color-default))}.pages-body .pages-panel .pages-header{margin-top:-3rem;color:var(--primary-color-text);border:1.5px solid var(--divider-color, var(--divider-color-default));border-radius:4px;margin-left:auto;margin-right:auto}.pages-body .pages-panel .pages-header h2{margin:0}.pages-body .pages-panel .pages-detail{color:var(--text-secondary-color, var(--text-secondary-color-default))}.pages-body.error-page{background-size:cover;background-color:var(--primary-color, var(--primary-color-default))}.pages-body.error-page .pages-panel .pages-header{background:#d81b60}.pages-body.notfound-page{background-size:cover}.pages-body.notfound-page .pages-panel .pages-header{background:#455a64}.pages-body.accessdenied-page{background-size:cover}.pages-body.accessdenied-page .pages-panel .pages-header{background:#fb8c00}@media screen and (max-width: 768px){.pages-body.contact-page .pages-panel{padding-bottom:10em}.pages-body.contact-page .pages-panel .p-button{width:100%}.pages-body.contact-page .pages-panel .card .right-panel{text-align:center}}\n"] }); }
41
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: GlobalErrorComponent, deps: [{ token: i1.Router }, { token: i1.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
42
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: GlobalErrorComponent, selector: "ocx-shell-error", inputs: { errCode: "errCode" }, ngImport: i0, template: "<div class=\"pages-body error-page flex flex-column\">\n <div class=\"align-self-center mt-auto mb-auto\">\n <div class=\"pages-panel card flex flex-column\">\n <div class=\"pages-header px-3 py-1\">\n <h2>ERROR</h2>\n </div>\n <div class=\"card mt-3 px-6\">\n <img src=\"assets/images/error.png\" alt=\"\" />\n </div>\n <div class=\"pages-detail pb-6\">{{errCode}}</div>\n <button pButton pRipple type=\"button\" label=\"Try Again\" (click)=\"reload()\" class=\"p-button-text\"></button>\n </div>\n </div>\n</div>\n", styles: [".pages-body{height:100vh}.pages-body .topbar{box-shadow:0 2px 5px #00000042;background-color:#1565c0;z-index:100}.pages-body .topbar .topbar-left img{height:2rem}.pages-body .topbar .p-button.p-button-text.p-button-plain{color:#fff}.pages-body .pages-panel{text-align:center;z-index:200}.pages-body .pages-panel.card{border:1.5px solid var(--divider-color, var(--divider-color-default));border-radius:6px}.pages-body .pages-panel.card img{width:100%}.pages-body .pages-panel.card>.card{background-color:var(--content-alt-bg-color, var(--content-alt-bg-color-default))}.pages-body .pages-panel .pages-header{margin-top:-3rem;color:var(--primary-color-text);border:1.5px solid var(--divider-color, var(--divider-color-default));border-radius:4px;margin-left:auto;margin-right:auto}.pages-body .pages-panel .pages-header h2{margin:0}.pages-body .pages-panel .pages-detail{color:var(--text-secondary-color, var(--text-secondary-color-default))}.pages-body.error-page{background-size:cover;background-color:var(--primary-color, var(--primary-color-default))}.pages-body.error-page .pages-panel .pages-header{background:#d81b60}.pages-body.notfound-page{background-size:cover}.pages-body.notfound-page .pages-panel .pages-header{background:#455a64}.pages-body.accessdenied-page{background-size:cover}.pages-body.accessdenied-page .pages-panel .pages-header{background:#fb8c00}@media screen and (max-width: 768px){.pages-body.contact-page .pages-panel{padding-bottom:10em}.pages-body.contact-page .pages-panel .p-button{width:100%}.pages-body.contact-page .pages-panel .card .right-panel{text-align:center}}\n"] }); }
43
43
  }
44
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GlobalErrorComponent, decorators: [{
44
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: GlobalErrorComponent, decorators: [{
45
45
  type: Component,
46
46
  args: [{ selector: 'ocx-shell-error', template: "<div class=\"pages-body error-page flex flex-column\">\n <div class=\"align-self-center mt-auto mb-auto\">\n <div class=\"pages-panel card flex flex-column\">\n <div class=\"pages-header px-3 py-1\">\n <h2>ERROR</h2>\n </div>\n <div class=\"card mt-3 px-6\">\n <img src=\"assets/images/error.png\" alt=\"\" />\n </div>\n <div class=\"pages-detail pb-6\">{{errCode}}</div>\n <button pButton pRipple type=\"button\" label=\"Try Again\" (click)=\"reload()\" class=\"p-button-text\"></button>\n </div>\n </div>\n</div>\n", styles: [".pages-body{height:100vh}.pages-body .topbar{box-shadow:0 2px 5px #00000042;background-color:#1565c0;z-index:100}.pages-body .topbar .topbar-left img{height:2rem}.pages-body .topbar .p-button.p-button-text.p-button-plain{color:#fff}.pages-body .pages-panel{text-align:center;z-index:200}.pages-body .pages-panel.card{border:1.5px solid var(--divider-color, var(--divider-color-default));border-radius:6px}.pages-body .pages-panel.card img{width:100%}.pages-body .pages-panel.card>.card{background-color:var(--content-alt-bg-color, var(--content-alt-bg-color-default))}.pages-body .pages-panel .pages-header{margin-top:-3rem;color:var(--primary-color-text);border:1.5px solid var(--divider-color, var(--divider-color-default));border-radius:4px;margin-left:auto;margin-right:auto}.pages-body .pages-panel .pages-header h2{margin:0}.pages-body .pages-panel .pages-detail{color:var(--text-secondary-color, var(--text-secondary-color-default))}.pages-body.error-page{background-size:cover;background-color:var(--primary-color, var(--primary-color-default))}.pages-body.error-page .pages-panel .pages-header{background:#d81b60}.pages-body.notfound-page{background-size:cover}.pages-body.notfound-page .pages-panel .pages-header{background:#455a64}.pages-body.accessdenied-page{background-size:cover}.pages-body.accessdenied-page .pages-panel .pages-header{background:#fb8c00}@media screen and (max-width: 768px){.pages-body.contact-page .pages-panel{padding-bottom:10em}.pages-body.contact-page .pages-panel .p-button{width:100%}.pages-body.contact-page .pages-panel .card .right-panel{text-align:center}}\n"] }]
47
47
  }], ctorParameters: () => [{ type: i1.Router }, { type: i1.ActivatedRoute }], propDecorators: { errCode: [{
@@ -99,10 +99,10 @@ class ShellSrcDirective {
99
99
  this.error = new EventEmitter();
100
100
  this.el.nativeElement.style.visibility = 'hidden';
101
101
  }
102
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ShellSrcDirective, deps: [{ token: i0.ElementRef }, { token: i1$1.HttpClient }], target: i0.ɵɵFactoryTarget.Directive }); }
103
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: ShellSrcDirective, selector: "[ocxShellSrc]", inputs: { ocxShellSrc: "ocxShellSrc" }, outputs: { error: "error" }, ngImport: i0 }); }
102
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ShellSrcDirective, deps: [{ token: i0.ElementRef }, { token: i1$1.HttpClient }], target: i0.ɵɵFactoryTarget.Directive }); }
103
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: ShellSrcDirective, selector: "[ocxShellSrc]", inputs: { ocxShellSrc: "ocxShellSrc" }, outputs: { error: "error" }, ngImport: i0 }); }
104
104
  }
105
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ShellSrcDirective, decorators: [{
105
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ShellSrcDirective, decorators: [{
106
106
  type: Directive,
107
107
  args: [{ selector: '[ocxShellSrc]' }]
108
108
  }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1$1.HttpClient }], propDecorators: { error: [{
@@ -146,10 +146,10 @@ class PortalFooterComponent {
146
146
  URL.revokeObjectURL(logoUrl);
147
147
  }
148
148
  }
149
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PortalFooterComponent, deps: [{ token: i2.ConfigurationService }, { token: i1.Router }, { token: i2.AppStateService }, { token: i2.ThemeService }, { token: WORKSPACE_CONFIG_BFF_SERVICE_PROVIDER, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
150
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", 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: i4.SlotComponent, selector: "ocx-slot[name]", inputs: ["name", "inputs", "outputs"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: ShellSrcDirective, selector: "[ocxShellSrc]", inputs: ["ocxShellSrc"], outputs: ["error"] }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }] }); }
149
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: PortalFooterComponent, deps: [{ token: i2.ConfigurationService }, { token: i1.Router }, { token: i2.AppStateService }, { token: i2.ThemeService }, { token: WORKSPACE_CONFIG_BFF_SERVICE_PROVIDER, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
150
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", 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: i4.SlotComponent, selector: "ocx-slot[name]", inputs: ["name", "inputs", "outputs"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: ShellSrcDirective, selector: "[ocxShellSrc]", inputs: ["ocxShellSrc"], outputs: ["error"] }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }] }); }
151
151
  }
152
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PortalFooterComponent, decorators: [{
152
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: PortalFooterComponent, decorators: [{
153
153
  type: Component,
154
154
  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" }]
155
155
  }], ctorParameters: () => [{ type: i2.ConfigurationService }, { type: i1.Router }, { type: i2.AppStateService }, { type: i2.ThemeService }, { type: undefined, decorators: [{
@@ -176,8 +176,8 @@ let HeaderComponent = class HeaderComponent {
176
176
  onMenuButtonClick(e) {
177
177
  this.menuButtonClick.emit(e);
178
178
  }
179
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: HeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
180
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: HeaderComponent, selector: "ocx-shell-header", inputs: { menuButtonTitle: "menuButtonTitle", fullPortalLayout: "fullPortalLayout", homeNavUrl: "homeNavUrl", homeNavTitle: "homeNavTitle", isHorizontalMenu: "isHorizontalMenu", isStaticalMenu: "isStaticalMenu" }, outputs: { menuButtonClick: "menuButtonClick" }, ngImport: i0, template: "<header class=\"layout-topbar_flex\" id=\"ocx_header\">\n <section\n class=\"layout-topbar-left relative flex justify-content-center align-items-center\"\n [ngClass]=\"{'vertical-menu': !isHorizontalMenu}\"\n [attr.aria-label]=\"'Left'\"\n >\n <ocx-slot\n name=\"onecx-shell-header-left\"\n class=\"flex flex-row flex-wrap align-items-center column-gap-3 row-gap-1\"\n [inputs]=\"{ imageStyleClass: 'max-h-3rem max-w-9rem vertical-align-middle' }\"\n [outputs]=\"{ imageLoadingFailed: logoLoadingEmitter }\"\n >\n <ng-template #skeleton>\n <div class=\"flex align-items-center h-full justify-content-center\" style=\"width: 26px\">\n <p-skeleton size=\"2rem\" class=\"h-full flex align-items-center\"></p-skeleton>\n </div>\n </ng-template>\n </ocx-slot>\n <div *ngIf=\"themeLogoLoadingFailed\"><!-- portal logo --></div>\n\n <button\n id=\"ocx_vertical_menu_action_toggle\"\n class=\"layout-menu-button border-none\"\n pRipple\n (click)=\"onMenuButtonClick($event)\"\n [attr.aria-label]=\"'OCX_HEADER.MENU_TOGGLE' | translate\"\n [pTooltip]=\"'OCX_HEADER.MENU_TOGGLE' | translate\"\n tooltipPosition=\"top\"\n tooltipEvent=\"hover\"\n >\n <span\n id=\"ocx_vertical_menu_action_toggle_icon\"\n class=\"pi\"\n [ngClass]=\"'pi-chevron-' + (isStaticalMenu ? 'left' : 'right')\"\n aria-hidden=\"true\"\n ></span>\n </button>\n </section>\n\n <section class=\"layout-topbar-right\" [attr.aria-label]=\"'Topbar'\">\n <div class=\"layout-topbar-actions-left\">\n <ng-content></ng-content>\n </div>\n <div class=\"layout-topbar-actions-right_flex\">\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 </section>\n</header>\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, var(--logo-color-default, #12abdb));fill:currentColor}\n"], dependencies: [{ kind: "component", type: i4.SlotComponent, selector: "ocx-slot[name]", inputs: ["name", "inputs", "outputs"] }, { kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.Skeleton, selector: "p-skeleton", inputs: ["styleClass", "style", "shape", "animation", "borderRadius", "size", "width", "height"] }, { kind: "directive", type: i4$1.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "pipe", type: i5$1.TranslatePipe, name: "translate" }], animations: [
179
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: HeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
180
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: HeaderComponent, selector: "ocx-shell-header", inputs: { menuButtonTitle: "menuButtonTitle", fullPortalLayout: "fullPortalLayout", homeNavUrl: "homeNavUrl", homeNavTitle: "homeNavTitle", isHorizontalMenu: "isHorizontalMenu", isStaticalMenu: "isStaticalMenu" }, outputs: { menuButtonClick: "menuButtonClick" }, ngImport: i0, template: "<header class=\"layout-topbar_flex\" id=\"ocx_header\">\n <section\n class=\"layout-topbar-left relative flex justify-content-center align-items-center\"\n [ngClass]=\"{'vertical-menu': !isHorizontalMenu}\"\n [attr.aria-label]=\"'Left'\"\n >\n <ocx-slot\n name=\"onecx-shell-header-left\"\n class=\"flex flex-row flex-wrap align-items-center column-gap-3 row-gap-1\"\n [inputs]=\"{ imageStyleClass: 'max-h-3rem max-w-9rem vertical-align-middle' }\"\n [outputs]=\"{ imageLoadingFailed: logoLoadingEmitter }\"\n >\n <ng-template #skeleton>\n <div class=\"flex align-items-center h-full justify-content-center\" style=\"width: 26px\">\n <p-skeleton size=\"2rem\" class=\"h-full flex align-items-center\"></p-skeleton>\n </div>\n </ng-template>\n </ocx-slot>\n <div *ngIf=\"themeLogoLoadingFailed\"><!-- portal logo --></div>\n\n <button\n id=\"ocx_vertical_menu_action_toggle\"\n class=\"layout-menu-button border-none\"\n pRipple\n (click)=\"onMenuButtonClick($event)\"\n [attr.aria-label]=\"'OCX_HEADER.MENU_TOGGLE' | translate\"\n [pTooltip]=\"'OCX_HEADER.MENU_TOGGLE' | translate\"\n tooltipPosition=\"top\"\n tooltipEvent=\"hover\"\n >\n <span\n id=\"ocx_vertical_menu_action_toggle_icon\"\n class=\"pi\"\n [ngClass]=\"'pi-chevron-' + (isStaticalMenu ? 'left' : 'right')\"\n aria-hidden=\"true\"\n ></span>\n </button>\n </section>\n\n <section class=\"layout-topbar-right\" [attr.aria-label]=\"'Topbar'\">\n <div class=\"layout-topbar-actions-left\">\n <ng-content></ng-content>\n </div>\n <div class=\"layout-topbar-actions-right_flex\">\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 </section>\n</header>\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, var(--logo-color-default, #12abdb));fill:currentColor}\n"], dependencies: [{ kind: "component", type: i4.SlotComponent, selector: "ocx-slot[name]", inputs: ["name", "inputs", "outputs"] }, { kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.Skeleton, selector: "p-skeleton", inputs: ["styleClass", "style", "shape", "animation", "borderRadius", "size", "width", "height"] }, { kind: "directive", type: i4$1.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "pipe", type: i5$1.TranslatePipe, name: "translate" }], animations: [
181
181
  trigger('topbarActionPanelAnimation', [
182
182
  transition(':enter', [
183
183
  style({ opacity: 0, transform: 'scaleY(0.8)' }),
@@ -191,7 +191,7 @@ HeaderComponent = __decorate([
191
191
  UntilDestroy(),
192
192
  __metadata("design:paramtypes", [])
193
193
  ], HeaderComponent);
194
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: HeaderComponent, decorators: [{
194
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: HeaderComponent, decorators: [{
195
195
  type: Component,
196
196
  args: [{ selector: 'ocx-shell-header', animations: [
197
197
  trigger('topbarActionPanelAnimation', [
@@ -221,10 +221,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
221
221
  const SHOW_CONTENT_PROVIDER = new InjectionToken('SHOW_CONTENT_PROVIDER');
222
222
 
223
223
  class AppLoadingSpinnerComponent {
224
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AppLoadingSpinnerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
225
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: AppLoadingSpinnerComponent, selector: "ocx-app-loading-spinner", ngImport: i0, template: "<div class=\"w-full h-full absolute top-0 left-0 element-overlay\">\n <div class=\"loader\"></div>\n</div>", styles: ["@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.element-overlay{position:relative;width:100%;cursor:default;pointer-events:none}.element-overlay:before{content:\"\";position:absolute;top:0;left:0;width:100%;height:100%;background-color:#00000080;z-index:1}.loader{width:28px;height:28px;border:3px solid var(--primary-color, var(--primary-color-default));border-bottom-color:transparent;border-radius:50%;display:inline-block;box-sizing:border-box;animation:rotation 1s linear infinite;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2}.loader.loader-small{width:20px;height:20px;top:20%;left:45%}\n"] }); }
224
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AppLoadingSpinnerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
225
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: AppLoadingSpinnerComponent, selector: "ocx-app-loading-spinner", ngImport: i0, template: "<div class=\"w-full h-full absolute top-0 left-0 element-overlay\">\n <div class=\"loader\"></div>\n</div>", styles: ["@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.element-overlay{position:relative;width:100%;cursor:default;pointer-events:none}.element-overlay:before{content:\"\";position:absolute;top:0;left:0;width:100%;height:100%;background-color:#00000080;z-index:1}.loader{width:28px;height:28px;border:3px solid var(--primary-color, var(--primary-color-default));border-bottom-color:transparent;border-radius:50%;display:inline-block;box-sizing:border-box;animation:rotation 1s linear infinite;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2}.loader.loader-small{width:20px;height:20px;top:20%;left:45%}\n"] }); }
226
226
  }
227
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AppLoadingSpinnerComponent, decorators: [{
227
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AppLoadingSpinnerComponent, decorators: [{
228
228
  type: Component,
229
229
  args: [{ selector: 'ocx-app-loading-spinner', template: "<div class=\"w-full h-full absolute top-0 left-0 element-overlay\">\n <div class=\"loader\"></div>\n</div>", styles: ["@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.element-overlay{position:relative;width:100%;cursor:default;pointer-events:none}.element-overlay:before{content:\"\";position:absolute;top:0;left:0;width:100%;height:100%;background-color:#00000080;z-index:1}.loader{width:28px;height:28px;border:3px solid var(--primary-color, var(--primary-color-default));border-bottom-color:transparent;border-radius:50%;display:inline-block;box-sizing:border-box;animation:rotation 1s linear infinite;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2}.loader.loader-small{width:20px;height:20px;top:20%;left:45%}\n"] }]
230
230
  }] });
@@ -316,8 +316,8 @@ let PortalViewportComponent = class PortalViewportComponent {
316
316
  isHorizontalMenuVisible() {
317
317
  return this.isHorizontalMenuMode();
318
318
  }
319
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PortalViewportComponent, deps: [{ token: i1$2.PrimeNGConfig }, { token: i1$2.MessageService }, { token: i2.AppStateService }, { token: i2.PortalMessageService }, { token: i2.UserService }, { token: i2.ThemeService }, { token: i1$1.HttpClient }, { token: i4.SlotService }, { token: SHOW_CONTENT_PROVIDER, optional: true }, { token: WORKSPACE_CONFIG_BFF_SERVICE_PROVIDER, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
320
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", 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': themeService.currentTheme$ | async,\n 'p-input-filled': inputStyle === 'filled', \n 'p-ripple-disabled': !ripple,\n 'layout-menu-active': isStaticalMenuVisible() && (isVerticalMenuComponentDefined$ | async),\n 'layout-menu-button-hidden': isHorizontalMenuMode() || (isVerticalMenuComponentDefined$ | async) === false\n }\"\n [class]=\"'layout-menu-' + this.colorScheme\"\n>\n <ng-container *ngIf=\"themeService.currentTheme$ | async; else noTheme\">\n <ocx-shell-header\n [menuButtonTitle]=\"menuButtonTitle\"\n (menuButtonClick)=\"onMenuButtonClick($event)\"\n [isStaticalMenu]=\"isStaticalMenuVisible()\"\n [isHorizontalMenu]=\"isHorizontalMenuMode()\"\n >\n <div [hidden]=\"!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 [style]=\"{'word-break': 'break-word'}\"></p-toast>\n\n <div [hidden]=\"!isStaticalMenuVisible()\" class=\"menu-wrapper\">\n <div class=\"layout-menu-container overflow-auto\">\n <ocx-slot [name]=\"verticalMenuSlotName\">\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 <!-- custom page content -->\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 <!-- page footer -->\n <footer>\n <ocx-slot\n name=\"onecx-shell-footer\"\n class=\"onecx-shell-footer mx-3 flex flex-row flex-wrap align-items-center column-gap-3 row-gap-1 text-sm\"\n [inputs]=\"{ imageStyleClass: 'h-1rem vertical-align-middle' }\"\n >\n <ng-template #skeleton>\n <div class=\"flex align-items-center h-full justify-content-center\" style=\"width: 26px\">\n <p-skeleton shape=\"circle\" size=\"1rem\" class=\"h-full flex align-items-center\"></p-skeleton>\n </div>\n </ng-template>\n </ocx-slot>\n </footer>\n </div>\n\n <div *ngIf=\"menuActive || !!activeTopbarItem\" class=\"layout-mask modal-in\"></div>\n </ng-container>\n\n <ng-template #noTheme>\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: [":host ::ng-deep .onecx-shell-footer div:nth-child(2){flex-grow:1}\n"], dependencies: [{ kind: "component", type: i4.SlotComponent, selector: "ocx-slot[name]", inputs: ["name", "inputs", "outputs"] }, { kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "component", type: i3.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: HeaderComponent, selector: "ocx-shell-header", inputs: ["menuButtonTitle", "fullPortalLayout", "homeNavUrl", "homeNavTitle", "isHorizontalMenu", "isStaticalMenu"], outputs: ["menuButtonClick"] }, { kind: "component", type: GlobalErrorComponent, selector: "ocx-shell-error", inputs: ["errCode"] }, { kind: "component", type: AppLoadingSpinnerComponent, selector: "ocx-app-loading-spinner" }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }] }); }
319
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: PortalViewportComponent, deps: [{ token: i1$2.PrimeNGConfig }, { token: i1$2.MessageService }, { token: i2.AppStateService }, { token: i2.PortalMessageService }, { token: i2.UserService }, { token: i2.ThemeService }, { token: i1$1.HttpClient }, { token: i4.SlotService }, { token: SHOW_CONTENT_PROVIDER, optional: true }, { token: WORKSPACE_CONFIG_BFF_SERVICE_PROVIDER, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
320
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", 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': themeService.currentTheme$ | async,\n 'p-input-filled': inputStyle === 'filled', \n 'p-ripple-disabled': !ripple,\n 'layout-menu-active': isStaticalMenuVisible() && (isVerticalMenuComponentDefined$ | async),\n 'layout-menu-button-hidden': isHorizontalMenuMode() || (isVerticalMenuComponentDefined$ | async) === false\n }\"\n [class]=\"'layout-menu-' + this.colorScheme\"\n>\n <ng-container *ngIf=\"themeService.currentTheme$ | async; else noTheme\">\n <ocx-shell-header\n [menuButtonTitle]=\"menuButtonTitle\"\n (menuButtonClick)=\"onMenuButtonClick($event)\"\n [isStaticalMenu]=\"isStaticalMenuVisible()\"\n [isHorizontalMenu]=\"isHorizontalMenuMode()\"\n >\n <div [hidden]=\"!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 [style]=\"{'word-break': 'break-word'}\"></p-toast>\n\n <div [hidden]=\"!isStaticalMenuVisible()\" class=\"menu-wrapper\">\n <div class=\"layout-menu-container overflow-auto\">\n <ocx-slot [name]=\"verticalMenuSlotName\">\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 <!-- custom page content -->\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 <!-- page footer -->\n <footer>\n <ocx-slot\n name=\"onecx-shell-footer\"\n class=\"onecx-shell-footer mx-3 flex flex-row flex-wrap align-items-center column-gap-3 row-gap-1 text-sm\"\n [inputs]=\"{ imageStyleClass: 'h-1rem vertical-align-middle' }\"\n >\n <ng-template #skeleton>\n <div class=\"flex align-items-center h-full justify-content-center\" style=\"width: 26px\">\n <p-skeleton shape=\"circle\" size=\"1rem\" class=\"h-full flex align-items-center\"></p-skeleton>\n </div>\n </ng-template>\n </ocx-slot>\n </footer>\n </div>\n\n <div *ngIf=\"menuActive || !!activeTopbarItem\" class=\"layout-mask modal-in\"></div>\n </ng-container>\n\n <ng-template #noTheme>\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: [":host ::ng-deep .onecx-shell-footer div:nth-child(2){flex-grow:1}\n"], dependencies: [{ kind: "component", type: i4.SlotComponent, selector: "ocx-slot[name]", inputs: ["name", "inputs", "outputs"] }, { kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "component", type: i3.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: HeaderComponent, selector: "ocx-shell-header", inputs: ["menuButtonTitle", "fullPortalLayout", "homeNavUrl", "homeNavTitle", "isHorizontalMenu", "isStaticalMenu"], outputs: ["menuButtonClick"] }, { kind: "component", type: GlobalErrorComponent, selector: "ocx-shell-error", inputs: ["errCode"] }, { kind: "component", type: AppLoadingSpinnerComponent, selector: "ocx-app-loading-spinner" }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }] }); }
321
321
  };
322
322
  PortalViewportComponent = __decorate([
323
323
  UntilDestroy(),
@@ -330,7 +330,7 @@ PortalViewportComponent = __decorate([
330
330
  HttpClient,
331
331
  SlotService, Object, Object])
332
332
  ], PortalViewportComponent);
333
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PortalViewportComponent, decorators: [{
333
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: PortalViewportComponent, decorators: [{
334
334
  type: Component,
335
335
  args: [{ selector: 'ocx-shell-portal-viewport', template: "<div\n *ngIf=\"!globalErrMsg; else globalError\"\n [ngClass]=\"{\n 'layout-wrapper layout-topbar-var': themeService.currentTheme$ | async,\n 'p-input-filled': inputStyle === 'filled', \n 'p-ripple-disabled': !ripple,\n 'layout-menu-active': isStaticalMenuVisible() && (isVerticalMenuComponentDefined$ | async),\n 'layout-menu-button-hidden': isHorizontalMenuMode() || (isVerticalMenuComponentDefined$ | async) === false\n }\"\n [class]=\"'layout-menu-' + this.colorScheme\"\n>\n <ng-container *ngIf=\"themeService.currentTheme$ | async; else noTheme\">\n <ocx-shell-header\n [menuButtonTitle]=\"menuButtonTitle\"\n (menuButtonClick)=\"onMenuButtonClick($event)\"\n [isStaticalMenu]=\"isStaticalMenuVisible()\"\n [isHorizontalMenu]=\"isHorizontalMenuMode()\"\n >\n <div [hidden]=\"!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 [style]=\"{'word-break': 'break-word'}\"></p-toast>\n\n <div [hidden]=\"!isStaticalMenuVisible()\" class=\"menu-wrapper\">\n <div class=\"layout-menu-container overflow-auto\">\n <ocx-slot [name]=\"verticalMenuSlotName\">\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 <!-- custom page content -->\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 <!-- page footer -->\n <footer>\n <ocx-slot\n name=\"onecx-shell-footer\"\n class=\"onecx-shell-footer mx-3 flex flex-row flex-wrap align-items-center column-gap-3 row-gap-1 text-sm\"\n [inputs]=\"{ imageStyleClass: 'h-1rem vertical-align-middle' }\"\n >\n <ng-template #skeleton>\n <div class=\"flex align-items-center h-full justify-content-center\" style=\"width: 26px\">\n <p-skeleton shape=\"circle\" size=\"1rem\" class=\"h-full flex align-items-center\"></p-skeleton>\n </div>\n </ng-template>\n </ocx-slot>\n </footer>\n </div>\n\n <div *ngIf=\"menuActive || !!activeTopbarItem\" class=\"layout-mask modal-in\"></div>\n </ng-container>\n\n <ng-template #noTheme>\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: [":host ::ng-deep .onecx-shell-footer div:nth-child(2){flex-grow:1}\n"] }]
336
336
  }], ctorParameters: () => [{ type: i1$2.PrimeNGConfig }, { type: i1$2.MessageService }, { type: i2.AppStateService }, { type: i2.PortalMessageService }, { type: i2.UserService }, { type: i2.ThemeService }, { type: i1$1.HttpClient }, { type: i4.SlotService }, { type: undefined, decorators: [{
@@ -349,8 +349,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
349
349
  }] } });
350
350
 
351
351
  class ShellCoreModule {
352
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ShellCoreModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
353
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: ShellCoreModule, declarations: [PortalViewportComponent,
352
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ShellCoreModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
353
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: ShellCoreModule, declarations: [PortalViewportComponent,
354
354
  HeaderComponent,
355
355
  PortalFooterComponent,
356
356
  GlobalErrorComponent,
@@ -368,7 +368,7 @@ class ShellCoreModule {
368
368
  ToastModule,
369
369
  TooltipModule,
370
370
  TranslateModule] }); }
371
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ShellCoreModule, imports: [AngularRemoteComponentsModule,
371
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ShellCoreModule, imports: [AngularRemoteComponentsModule,
372
372
  CommonModule,
373
373
  RouterModule,
374
374
  SkeletonModule,
@@ -378,7 +378,7 @@ class ShellCoreModule {
378
378
  TooltipModule,
379
379
  TranslateModule] }); }
380
380
  }
381
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ShellCoreModule, decorators: [{
381
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ShellCoreModule, decorators: [{
382
382
  type: NgModule,
383
383
  args: [{
384
384
  imports: [
@@ -421,10 +421,10 @@ class PermissionsCacheService {
421
421
  }
422
422
  return this.permissions[key];
423
423
  }
424
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PermissionsCacheService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
425
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PermissionsCacheService, providedIn: 'root' }); }
424
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: PermissionsCacheService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
425
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: PermissionsCacheService, providedIn: 'root' }); }
426
426
  }
427
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PermissionsCacheService, decorators: [{
427
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: PermissionsCacheService, decorators: [{
428
428
  type: Injectable,
429
429
  args: [{ providedIn: 'root' }]
430
430
  }] });
package/package.json CHANGED
@@ -1,7 +1,11 @@
1
1
  {
2
2
  "name": "@onecx/shell-core",
3
- "version": "5.51.0",
3
+ "version": "5.52.0",
4
4
  "license": "Apache-2.0",
5
+ "repository": {
6
+ "type": "git",
7
+ "url": "https://github.com/onecx/onecx-portal-ui-libs"
8
+ },
5
9
  "peerDependencies": {
6
10
  "rxjs": "^7.8.1",
7
11
  "@angular/animations": "^18.0.5",
@@ -9,8 +13,8 @@
9
13
  "@angular/core": "^18.0.5",
10
14
  "@angular/router": "^18.0.5",
11
15
  "@ngneat/until-destroy": "^10.0.0",
12
- "@onecx/angular-integration-interface": "^5.51.0",
13
- "@onecx/angular-remote-components": "^5.51.0",
16
+ "@onecx/angular-integration-interface": "^5.52.0",
17
+ "@onecx/angular-remote-components": "^5.52.0",
14
18
  "@ngx-translate/core": "^15.0.0",
15
19
  "primeng": "^17.18.6"
16
20
  },