@c8y/ngx-components
Version:
Angular modules for Cumulocity IoT applications
36 lines • 13.9 kB
JavaScript
import { Component } from '@angular/core';
import { map } from 'rxjs/operators';
import { AppStateService } from '../../common/ui-state.service';
import { HeaderService } from '../../header/header.service';
import { PRODUCT_EXPERIENCE_CORE_SHARED } from '../../shared/core.model';
import { legalNoticesItem } from '../defaults.items';
import { DocsService } from '../docs.service';
import * as i0 from "@angular/core";
import * as i1 from "../docs.service";
import * as i2 from "../../common/ui-state.service";
import * as i3 from "../../header/header.service";
import * as i4 from "../../common/icon.directive";
import * as i5 from "@angular/common";
import * as i6 from "../../common/component-outlet.directive";
import * as i7 from "ngx-bootstrap/collapse";
import * as i8 from "../../product-experience/product-experience.directive";
import * as i9 from "../../i18n/c8y-translate.pipe";
export class HelpAndSupportOutletComponent {
constructor(docsService, appState, headerService) {
this.docsService = docsService;
this.appState = appState;
this.headerService = headerService;
this.PRODUCT_EXPERIENCE = PRODUCT_EXPERIENCE_CORE_SHARED;
this.documentationOpen = false;
this.helpAndSupport$ = this.docsService.items$.pipe(map(items => items.filter(item => item.type === 'doc' && item.label !== legalNoticesItem.label)));
this.appState$ = this.appState.state$;
this.drawerOpen$ = this.headerService.rightDrawerOpen$;
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: HelpAndSupportOutletComponent, deps: [{ token: i1.DocsService }, { token: i2.AppStateService }, { token: i3.HeaderService }], target: i0.ɵɵFactoryTarget.Component }); }
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: HelpAndSupportOutletComponent, selector: "c8y-help-and-support-outlet", ngImport: i0, template: "<ng-container *ngIf=\"helpAndSupport$ | async as helpAndSupport\">\n <div\n class=\"separator-top p-t-8 p-b-8\"\n *ngIf=\"(appState$ | async).showRightDrawer && helpAndSupport.length\"\n >\n <button\n class=\"c8y-right-drawer__link sticky-top\"\n [tabindex]=\"(drawerOpen$ | async) ? '0' : '-1'\"\n [attr.aria-expanded]=\"documentationOpen\"\n [attr.aria-controls]=\"'collapseDocs'\"\n type=\"button\"\n (click)=\"documentationOpen = !documentationOpen\"\n >\n <i c8yIcon=\"book-shelf\"></i>\n <span class=\"text-bold\">{{ 'Documentation' | translate }}</span>\n <i\n class=\"m-l-auto\"\n c8yIcon=\"angle-down\"\n [ngClass]=\"{ 'icon-rotate-180': documentationOpen }\"\n ></i>\n </button>\n <div\n class=\"collapse\"\n id=\"collapseDocs\"\n [collapse]=\"!documentationOpen\"\n [isAnimated]=\"true\"\n #documentationCol=\"bs-collapse\"\n >\n <ng-container *ngFor=\"let link of helpAndSupport\">\n <ng-container *ngIf=\"link.component\">\n <ng-container *c8yComponentOutlet=\"link.component; environmentInjector: link.injector\"></ng-container>\n </ng-container>\n <a\n class=\"c8y-right-drawer__link\"\n title=\"{{ link.label | translate }}\"\n [tabindex]=\"(drawerOpen$ | async) ? '0' : '-1'\"\n type=\"button\"\n target=\"_blank\"\n *ngIf=\"!link.component\"\n rel=\"noopener noreferrer\"\n [href]=\"link.url\"\n c8yProductExperience\n [actionName]=\"PRODUCT_EXPERIENCE.QUICK_LINKS.EVENTS.QUICK_LINK_RIGHT_DRAWER\"\n [actionData]=\"{\n component: PRODUCT_EXPERIENCE.QUICK_LINKS.COMPONENTS.RIGHT_DRAWER_COMPONENT,\n action: link.label\n }\"\n >\n <span\n class=\"text-truncate text-12\"\n title=\"{{ link.label | translate }}\"\n >\n {{ link.label | translate }}\n </span>\n </a>\n </ng-container>\n </div>\n </div>\n</ng-container>\n", dependencies: [{ kind: "directive", type: i4.IconDirective, selector: "[c8yIcon]", inputs: ["c8yIcon"] }, { kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.C8yComponentOutlet, selector: "[c8yComponentOutlet]", inputs: ["c8yComponentOutlet", "c8yComponentOutletInjector", "c8yComponentOutletEnvironmentInjector"] }, { kind: "directive", type: i7.CollapseDirective, selector: "[collapse]", inputs: ["display", "isAnimated", "collapse"], outputs: ["collapsed", "collapses", "expanded", "expands"], exportAs: ["bs-collapse"] }, { kind: "directive", type: i8.ProductExperienceDirective, selector: "[c8yProductExperience]", inputs: ["actionName", "actionData", "inherit", "suppressDataOverriding"] }, { kind: "pipe", type: i9.C8yTranslatePipe, name: "translate" }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }] }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: HelpAndSupportOutletComponent, decorators: [{
type: Component,
args: [{ selector: 'c8y-help-and-support-outlet', template: "<ng-container *ngIf=\"helpAndSupport$ | async as helpAndSupport\">\n <div\n class=\"separator-top p-t-8 p-b-8\"\n *ngIf=\"(appState$ | async).showRightDrawer && helpAndSupport.length\"\n >\n <button\n class=\"c8y-right-drawer__link sticky-top\"\n [tabindex]=\"(drawerOpen$ | async) ? '0' : '-1'\"\n [attr.aria-expanded]=\"documentationOpen\"\n [attr.aria-controls]=\"'collapseDocs'\"\n type=\"button\"\n (click)=\"documentationOpen = !documentationOpen\"\n >\n <i c8yIcon=\"book-shelf\"></i>\n <span class=\"text-bold\">{{ 'Documentation' | translate }}</span>\n <i\n class=\"m-l-auto\"\n c8yIcon=\"angle-down\"\n [ngClass]=\"{ 'icon-rotate-180': documentationOpen }\"\n ></i>\n </button>\n <div\n class=\"collapse\"\n id=\"collapseDocs\"\n [collapse]=\"!documentationOpen\"\n [isAnimated]=\"true\"\n #documentationCol=\"bs-collapse\"\n >\n <ng-container *ngFor=\"let link of helpAndSupport\">\n <ng-container *ngIf=\"link.component\">\n <ng-container *c8yComponentOutlet=\"link.component; environmentInjector: link.injector\"></ng-container>\n </ng-container>\n <a\n class=\"c8y-right-drawer__link\"\n title=\"{{ link.label | translate }}\"\n [tabindex]=\"(drawerOpen$ | async) ? '0' : '-1'\"\n type=\"button\"\n target=\"_blank\"\n *ngIf=\"!link.component\"\n rel=\"noopener noreferrer\"\n [href]=\"link.url\"\n c8yProductExperience\n [actionName]=\"PRODUCT_EXPERIENCE.QUICK_LINKS.EVENTS.QUICK_LINK_RIGHT_DRAWER\"\n [actionData]=\"{\n component: PRODUCT_EXPERIENCE.QUICK_LINKS.COMPONENTS.RIGHT_DRAWER_COMPONENT,\n action: link.label\n }\"\n >\n <span\n class=\"text-truncate text-12\"\n title=\"{{ link.label | translate }}\"\n >\n {{ link.label | translate }}\n </span>\n </a>\n </ng-container>\n </div>\n </div>\n</ng-container>\n" }]
}], ctorParameters: () => [{ type: i1.DocsService }, { type: i2.AppStateService }, { type: i3.HeaderService }] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscC1hbmQtc3VwcG9ydC1vdXRsZXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vY29yZS9kb2NzL2hlbHAtYW5kLXN1cHBvcnQtb3V0bGV0L2hlbHAtYW5kLXN1cHBvcnQtb3V0bGV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL2NvcmUvZG9jcy9oZWxwLWFuZC1zdXBwb3J0LW91dGxldC9oZWxwLWFuZC1zdXBwb3J0LW91dGxldC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTFDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzVELE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRXJELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7Ozs7Ozs7QUFNOUMsTUFBTSxPQUFPLDZCQUE2QjtJQU94QyxZQUNVLFdBQXdCLEVBQ3hCLFFBQXlCLEVBQ3pCLGFBQTRCO1FBRjVCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLGFBQVEsR0FBUixRQUFRLENBQWlCO1FBQ3pCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBVHRDLHVCQUFrQixHQUFHLDhCQUE4QixDQUFDO1FBRXBELHNCQUFpQixHQUFHLEtBQUssQ0FBQztRQVN4QixJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDakQsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQ1YsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssS0FBSyxJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQ25GLENBQ0YsQ0FBQztRQUNGLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUM7UUFDdEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLGdCQUFnQixDQUFDO0lBQ3pELENBQUM7K0dBbkJVLDZCQUE2QjttR0FBN0IsNkJBQTZCLG1FQ2QxQyx1akVBMkRBOzs0RkQ3Q2EsNkJBQTZCO2tCQUp6QyxTQUFTOytCQUNFLDZCQUE2QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQXBwU3RhdGVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29tbW9uL3VpLXN0YXRlLnNlcnZpY2UnO1xuaW1wb3J0IHsgSGVhZGVyU2VydmljZSB9IGZyb20gJy4uLy4uL2hlYWRlci9oZWFkZXIuc2VydmljZSc7XG5pbXBvcnQgeyBQUk9EVUNUX0VYUEVSSUVOQ0VfQ09SRV9TSEFSRUQgfSBmcm9tICcuLi8uLi9zaGFyZWQvY29yZS5tb2RlbCc7XG5pbXBvcnQgeyBsZWdhbE5vdGljZXNJdGVtIH0gZnJvbSAnLi4vZGVmYXVsdHMuaXRlbXMnO1xuaW1wb3J0IHsgRG9jTGluayB9IGZyb20gJy4uL2RvY3MubW9kZWxzJztcbmltcG9ydCB7IERvY3NTZXJ2aWNlIH0gZnJvbSAnLi4vZG9jcy5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYzh5LWhlbHAtYW5kLXN1cHBvcnQtb3V0bGV0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2hlbHAtYW5kLXN1cHBvcnQtb3V0bGV0LmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBIZWxwQW5kU3VwcG9ydE91dGxldENvbXBvbmVudCB7XG4gIFBST0RVQ1RfRVhQRVJJRU5DRSA9IFBST0RVQ1RfRVhQRVJJRU5DRV9DT1JFX1NIQVJFRDtcbiAgaGVscEFuZFN1cHBvcnQkOiBPYnNlcnZhYmxlPERvY0xpbmtbXT47XG4gIGRvY3VtZW50YXRpb25PcGVuID0gZmFsc2U7XG4gIGFwcFN0YXRlJDogT2JzZXJ2YWJsZTxhbnk+O1xuICBkcmF3ZXJPcGVuJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGRvY3NTZXJ2aWNlOiBEb2NzU2VydmljZSxcbiAgICBwcml2YXRlIGFwcFN0YXRlOiBBcHBTdGF0ZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBoZWFkZXJTZXJ2aWNlOiBIZWFkZXJTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMuaGVscEFuZFN1cHBvcnQkID0gdGhpcy5kb2NzU2VydmljZS5pdGVtcyQucGlwZShcbiAgICAgIG1hcChpdGVtcyA9PlxuICAgICAgICBpdGVtcy5maWx0ZXIoaXRlbSA9PiBpdGVtLnR5cGUgPT09ICdkb2MnICYmIGl0ZW0ubGFiZWwgIT09IGxlZ2FsTm90aWNlc0l0ZW0ubGFiZWwpXG4gICAgICApXG4gICAgKTtcbiAgICB0aGlzLmFwcFN0YXRlJCA9IHRoaXMuYXBwU3RhdGUuc3RhdGUkO1xuICAgIHRoaXMuZHJhd2VyT3BlbiQgPSB0aGlzLmhlYWRlclNlcnZpY2UucmlnaHREcmF3ZXJPcGVuJDtcbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cImhlbHBBbmRTdXBwb3J0JCB8IGFzeW5jIGFzIGhlbHBBbmRTdXBwb3J0XCI+XG4gIDxkaXZcbiAgICBjbGFzcz1cInNlcGFyYXRvci10b3AgcC10LTggcC1iLThcIlxuICAgICpuZ0lmPVwiKGFwcFN0YXRlJCB8IGFzeW5jKS5zaG93UmlnaHREcmF3ZXIgJiYgaGVscEFuZFN1cHBvcnQubGVuZ3RoXCJcbiAgPlxuICAgIDxidXR0b25cbiAgICAgIGNsYXNzPVwiYzh5LXJpZ2h0LWRyYXdlcl9fbGluayBzdGlja3ktdG9wXCJcbiAgICAgIFt0YWJpbmRleF09XCIoZHJhd2VyT3BlbiQgfCBhc3luYykgPyAnMCcgOiAnLTEnXCJcbiAgICAgIFthdHRyLmFyaWEtZXhwYW5kZWRdPVwiZG9jdW1lbnRhdGlvbk9wZW5cIlxuICAgICAgW2F0dHIuYXJpYS1jb250cm9sc109XCInY29sbGFwc2VEb2NzJ1wiXG4gICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgIChjbGljayk9XCJkb2N1bWVudGF0aW9uT3BlbiA9ICFkb2N1bWVudGF0aW9uT3BlblwiXG4gICAgPlxuICAgICAgPGkgYzh5SWNvbj1cImJvb2stc2hlbGZcIj48L2k+XG4gICAgICA8c3BhbiBjbGFzcz1cInRleHQtYm9sZFwiPnt7ICdEb2N1bWVudGF0aW9uJyB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj5cbiAgICAgIDxpXG4gICAgICAgIGNsYXNzPVwibS1sLWF1dG9cIlxuICAgICAgICBjOHlJY29uPVwiYW5nbGUtZG93blwiXG4gICAgICAgIFtuZ0NsYXNzXT1cInsgJ2ljb24tcm90YXRlLTE4MCc6IGRvY3VtZW50YXRpb25PcGVuIH1cIlxuICAgICAgPjwvaT5cbiAgICA8L2J1dHRvbj5cbiAgICA8ZGl2XG4gICAgICBjbGFzcz1cImNvbGxhcHNlXCJcbiAgICAgIGlkPVwiY29sbGFwc2VEb2NzXCJcbiAgICAgIFtjb2xsYXBzZV09XCIhZG9jdW1lbnRhdGlvbk9wZW5cIlxuICAgICAgW2lzQW5pbWF0ZWRdPVwidHJ1ZVwiXG4gICAgICAjZG9jdW1lbnRhdGlvbkNvbD1cImJzLWNvbGxhcHNlXCJcbiAgICA+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBsaW5rIG9mIGhlbHBBbmRTdXBwb3J0XCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJsaW5rLmNvbXBvbmVudFwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKmM4eUNvbXBvbmVudE91dGxldD1cImxpbmsuY29tcG9uZW50OyBlbnZpcm9ubWVudEluamVjdG9yOiBsaW5rLmluamVjdG9yXCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8YVxuICAgICAgICAgIGNsYXNzPVwiYzh5LXJpZ2h0LWRyYXdlcl9fbGlua1wiXG4gICAgICAgICAgdGl0bGU9XCJ7eyBsaW5rLmxhYmVsIHwgdHJhbnNsYXRlIH19XCJcbiAgICAgICAgICBbdGFiaW5kZXhdPVwiKGRyYXdlck9wZW4kIHwgYXN5bmMpID8gJzAnIDogJy0xJ1wiXG4gICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgdGFyZ2V0PVwiX2JsYW5rXCJcbiAgICAgICAgICAqbmdJZj1cIiFsaW5rLmNvbXBvbmVudFwiXG4gICAgICAgICAgcmVsPVwibm9vcGVuZXIgbm9yZWZlcnJlclwiXG4gICAgICAgICAgW2hyZWZdPVwibGluay51cmxcIlxuICAgICAgICAgIGM4eVByb2R1Y3RFeHBlcmllbmNlXG4gICAgICAgICAgW2FjdGlvbk5hbWVdPVwiUFJPRFVDVF9FWFBFUklFTkNFLlFVSUNLX0xJTktTLkVWRU5UUy5RVUlDS19MSU5LX1JJR0hUX0RSQVdFUlwiXG4gICAgICAgICAgW2FjdGlvbkRhdGFdPVwie1xuICAgICAgICAgICAgY29tcG9uZW50OiBQUk9EVUNUX0VYUEVSSUVOQ0UuUVVJQ0tfTElOS1MuQ09NUE9ORU5UUy5SSUdIVF9EUkFXRVJfQ09NUE9ORU5ULFxuICAgICAgICAgICAgYWN0aW9uOiBsaW5rLmxhYmVsXG4gICAgICAgICAgfVwiXG4gICAgICAgID5cbiAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgY2xhc3M9XCJ0ZXh0LXRydW5jYXRlIHRleHQtMTJcIlxuICAgICAgICAgICAgdGl0bGU9XCJ7eyBsaW5rLmxhYmVsIHwgdHJhbnNsYXRlIH19XCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICB7eyBsaW5rLmxhYmVsIHwgdHJhbnNsYXRlIH19XG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICA8L2E+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==