@c8y/ngx-components
Version:
Angular modules for Cumulocity IoT applications
42 lines • 11.3 kB
JavaScript
import { Component } from '@angular/core';
import { ActivatedRoute, Router } from '@angular/router';
import { ContextRouteService, gettext, ViewContext } from '@c8y/ngx-components';
import { of } from 'rxjs';
import { AlarmsViewService } from './alarms-view.service';
import * as i0 from "@angular/core";
import * as i1 from "@angular/router";
import * as i2 from "@c8y/ngx-components";
import * as i3 from "./alarms-view.service";
import * as i4 from "@angular/common";
import * as i5 from "./alarm-details.component";
import * as i6 from "@ngx-translate/core";
export class AlarmInfoComponent {
constructor(activatedRoute, router, contextRouteService, alarmsViewService) {
this.activatedRoute = activatedRoute;
this.router = router;
this.contextRouteService = contextRouteService;
this.alarmsViewService = alarmsViewService;
this.isContextRoute = false;
this.TITLE = gettext('Alarms');
}
async ngOnInit() {
const contextData = this.contextRouteService.getContextData(this.activatedRoute);
this.selectedAlarm$ = of(contextData.contextData);
this.isContextRoute = this.contextRouteService.isContextRoute(this.router.url, [
ViewContext.Device,
ViewContext.Group
]);
}
back() {
const contextData = this.contextRouteService.getContextData(this.activatedRoute);
const backLink = this.alarmsViewService.getRouterNavigationArray(contextData);
this.router.navigate(backLink, { queryParamsHandling: 'preserve' });
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AlarmInfoComponent, deps: [{ token: i1.ActivatedRoute }, { token: i1.Router }, { token: i2.ContextRouteService }, { token: i3.AlarmsViewService }], target: i0.ɵɵFactoryTarget.Component }); }
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: AlarmInfoComponent, selector: "c8y-alarm-info", ngImport: i0, template: "<ng-container *ngIf=\"!isContextRoute\">\n <c8y-title>{{ TITLE | translate }}</c8y-title>\n</ng-container>\n\n<div\n class=\"inner-scroll split-view__detail split-view__detail--selected\"\n *ngIf=\"selectedAlarm$ | async\"\n>\n <div class=\"sticky-top bg-component\">\n <div class=\"card-header gap-16 d-block-xs d-block-sm p-l-24 p-r-24 p-t-16 separator\">\n <button\n class=\"btn btn-clean text-primary visible-sm visible-xs\"\n [title]=\"'Back' | translate\"\n (click)=\"back()\"\n >\n <i c8yIcon=\"chevron-left\"></i>\n <span>{{ 'Back' | translate }}</span>\n </button>\n\n <div class=\"flex-no-shrink a-s-start\"></div>\n <div class=\"flex-grow d-col\">\n <div\n class=\"text-break-word flex-grow text-16\"\n data-cy=\"c8y-alarms-info--title\"\n >\n {{ (selectedAlarm$ | async)?.text | translate }}\n </div>\n </div>\n </div>\n <div class=\"p-relative\">\n <c8y-tabs-outlet\n outletName=\"alarms\"\n orientation=\"horizontal\"\n ></c8y-tabs-outlet>\n </div>\n <div class=\"card-block overflow-visible p-l-24 p-r-24\">\n <c8y-alarm-details [selectedAlarm]=\"selectedAlarm$ | async\"></c8y-alarm-details>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i2.IconDirective, selector: "[c8yIcon]", inputs: ["c8yIcon"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.TitleComponent, selector: "c8y-title", inputs: ["pageTitleUpdate"] }, { kind: "component", type: i2.TabsOutletComponent, selector: "c8y-tabs-outlet,c8y-ui-tabs", inputs: ["tabs", "orientation", "navigatorOpen", "outletName", "context", "openFirstTab", "hasHeader"] }, { kind: "component", type: i5.AlarmDetailsComponent, selector: "c8y-alarm-details", inputs: ["selectedAlarm"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }] }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AlarmInfoComponent, decorators: [{
type: Component,
args: [{ selector: 'c8y-alarm-info', template: "<ng-container *ngIf=\"!isContextRoute\">\n <c8y-title>{{ TITLE | translate }}</c8y-title>\n</ng-container>\n\n<div\n class=\"inner-scroll split-view__detail split-view__detail--selected\"\n *ngIf=\"selectedAlarm$ | async\"\n>\n <div class=\"sticky-top bg-component\">\n <div class=\"card-header gap-16 d-block-xs d-block-sm p-l-24 p-r-24 p-t-16 separator\">\n <button\n class=\"btn btn-clean text-primary visible-sm visible-xs\"\n [title]=\"'Back' | translate\"\n (click)=\"back()\"\n >\n <i c8yIcon=\"chevron-left\"></i>\n <span>{{ 'Back' | translate }}</span>\n </button>\n\n <div class=\"flex-no-shrink a-s-start\"></div>\n <div class=\"flex-grow d-col\">\n <div\n class=\"text-break-word flex-grow text-16\"\n data-cy=\"c8y-alarms-info--title\"\n >\n {{ (selectedAlarm$ | async)?.text | translate }}\n </div>\n </div>\n </div>\n <div class=\"p-relative\">\n <c8y-tabs-outlet\n outletName=\"alarms\"\n orientation=\"horizontal\"\n ></c8y-tabs-outlet>\n </div>\n <div class=\"card-block overflow-visible p-l-24 p-r-24\">\n <c8y-alarm-details [selectedAlarm]=\"selectedAlarm$ | async\"></c8y-alarm-details>\n </div>\n </div>\n</div>\n" }]
}], ctorParameters: () => [{ type: i1.ActivatedRoute }, { type: i1.Router }, { type: i2.ContextRouteService }, { type: i3.AlarmsViewService }] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxhcm0taW5mby5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9hbGFybXMvYWxhcm0taW5mby5jb21wb25lbnQudHMiLCIuLi8uLi8uLi9hbGFybXMvYWxhcm0taW5mby5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFekQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNoRixPQUFPLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7Ozs7OztBQU0xRCxNQUFNLE9BQU8sa0JBQWtCO0lBTzdCLFlBQ1MsY0FBOEIsRUFDN0IsTUFBYyxFQUNkLG1CQUF3QyxFQUN4QyxpQkFBb0M7UUFIckMsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzdCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQ3hDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFQOUMsbUJBQWMsR0FBRyxLQUFLLENBQUM7UUFDZCxVQUFLLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBT2hDLENBQUM7SUFFSixLQUFLLENBQUMsUUFBUTtRQUNaLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ2pGLElBQUksQ0FBQyxjQUFjLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FBQyxXQUFxQixDQUFDLENBQUM7UUFDNUQsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFO1lBQzdFLFdBQVcsQ0FBQyxNQUFNO1lBQ2xCLFdBQVcsQ0FBQyxLQUFLO1NBQ2xCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxJQUFJO1FBQ0YsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDakYsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLHdCQUF3QixDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzlFLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxFQUFFLG1CQUFtQixFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7SUFDdEUsQ0FBQzsrR0EzQlUsa0JBQWtCO21HQUFsQixrQkFBa0Isc0RDWC9CLHN4Q0F3Q0E7OzRGRDdCYSxrQkFBa0I7a0JBSjlCLFNBQVM7K0JBQ0UsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgSUFsYXJtIH0gZnJvbSAnQGM4eS9jbGllbnQnO1xuaW1wb3J0IHsgQ29udGV4dFJvdXRlU2VydmljZSwgZ2V0dGV4dCwgVmlld0NvbnRleHQgfSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzJztcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBbGFybXNWaWV3U2VydmljZSB9IGZyb20gJy4vYWxhcm1zLXZpZXcuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2M4eS1hbGFybS1pbmZvJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2FsYXJtLWluZm8uY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIEFsYXJtSW5mb0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHNlbGVjdGVkQWxhcm0kOiBPYnNlcnZhYmxlPElBbGFybT47XG5cbiAgaGFzQW55Um9sZUFsbG93aW5nVG9DcmVhdGVTbWFydFJ1bGU6IGJvb2xlYW47XG4gIGlzQ29udGV4dFJvdXRlID0gZmFsc2U7XG4gIHJlYWRvbmx5IFRJVExFID0gZ2V0dGV4dCgnQWxhcm1zJyk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGFjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICAgIHByaXZhdGUgY29udGV4dFJvdXRlU2VydmljZTogQ29udGV4dFJvdXRlU2VydmljZSxcbiAgICBwcml2YXRlIGFsYXJtc1ZpZXdTZXJ2aWNlOiBBbGFybXNWaWV3U2VydmljZVxuICApIHt9XG5cbiAgYXN5bmMgbmdPbkluaXQoKSB7XG4gICAgY29uc3QgY29udGV4dERhdGEgPSB0aGlzLmNvbnRleHRSb3V0ZVNlcnZpY2UuZ2V0Q29udGV4dERhdGEodGhpcy5hY3RpdmF0ZWRSb3V0ZSk7XG4gICAgdGhpcy5zZWxlY3RlZEFsYXJtJCA9IG9mKGNvbnRleHREYXRhLmNvbnRleHREYXRhIGFzIElBbGFybSk7XG4gICAgdGhpcy5pc0NvbnRleHRSb3V0ZSA9IHRoaXMuY29udGV4dFJvdXRlU2VydmljZS5pc0NvbnRleHRSb3V0ZSh0aGlzLnJvdXRlci51cmwsIFtcbiAgICAgIFZpZXdDb250ZXh0LkRldmljZSxcbiAgICAgIFZpZXdDb250ZXh0Lkdyb3VwXG4gICAgXSk7XG4gIH1cblxuICBiYWNrKCk6IHZvaWQge1xuICAgIGNvbnN0IGNvbnRleHREYXRhID0gdGhpcy5jb250ZXh0Um91dGVTZXJ2aWNlLmdldENvbnRleHREYXRhKHRoaXMuYWN0aXZhdGVkUm91dGUpO1xuICAgIGNvbnN0IGJhY2tMaW5rID0gdGhpcy5hbGFybXNWaWV3U2VydmljZS5nZXRSb3V0ZXJOYXZpZ2F0aW9uQXJyYXkoY29udGV4dERhdGEpO1xuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKGJhY2tMaW5rLCB7IHF1ZXJ5UGFyYW1zSGFuZGxpbmc6ICdwcmVzZXJ2ZScgfSk7XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCIhaXNDb250ZXh0Um91dGVcIj5cbiAgPGM4eS10aXRsZT57eyBUSVRMRSB8IHRyYW5zbGF0ZSB9fTwvYzh5LXRpdGxlPlxuPC9uZy1jb250YWluZXI+XG5cbjxkaXZcbiAgY2xhc3M9XCJpbm5lci1zY3JvbGwgc3BsaXQtdmlld19fZGV0YWlsIHNwbGl0LXZpZXdfX2RldGFpbC0tc2VsZWN0ZWRcIlxuICAqbmdJZj1cInNlbGVjdGVkQWxhcm0kIHwgYXN5bmNcIlxuPlxuICA8ZGl2IGNsYXNzPVwic3RpY2t5LXRvcCBiZy1jb21wb25lbnRcIj5cbiAgICA8ZGl2IGNsYXNzPVwiY2FyZC1oZWFkZXIgZ2FwLTE2IGQtYmxvY2steHMgZC1ibG9jay1zbSBwLWwtMjQgcC1yLTI0IHAtdC0xNiBzZXBhcmF0b3JcIj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgY2xhc3M9XCJidG4gYnRuLWNsZWFuIHRleHQtcHJpbWFyeSB2aXNpYmxlLXNtIHZpc2libGUteHNcIlxuICAgICAgICBbdGl0bGVdPVwiJ0JhY2snIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgKGNsaWNrKT1cImJhY2soKVwiXG4gICAgICA+XG4gICAgICAgIDxpIGM4eUljb249XCJjaGV2cm9uLWxlZnRcIj48L2k+XG4gICAgICAgIDxzcGFuPnt7ICdCYWNrJyB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj5cbiAgICAgIDwvYnV0dG9uPlxuXG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleC1uby1zaHJpbmsgYS1zLXN0YXJ0XCI+PC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleC1ncm93IGQtY29sXCI+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBjbGFzcz1cInRleHQtYnJlYWstd29yZCBmbGV4LWdyb3cgdGV4dC0xNlwiXG4gICAgICAgICAgZGF0YS1jeT1cImM4eS1hbGFybXMtaW5mby0tdGl0bGVcIlxuICAgICAgICA+XG4gICAgICAgICAge3sgKHNlbGVjdGVkQWxhcm0kIHwgYXN5bmMpPy50ZXh0IHwgdHJhbnNsYXRlIH19XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInAtcmVsYXRpdmVcIj5cbiAgICAgIDxjOHktdGFicy1vdXRsZXRcbiAgICAgICAgb3V0bGV0TmFtZT1cImFsYXJtc1wiXG4gICAgICAgIG9yaWVudGF0aW9uPVwiaG9yaXpvbnRhbFwiXG4gICAgICA+PC9jOHktdGFicy1vdXRsZXQ+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImNhcmQtYmxvY2sgb3ZlcmZsb3ctdmlzaWJsZSBwLWwtMjQgcC1yLTI0XCI+XG4gICAgICA8Yzh5LWFsYXJtLWRldGFpbHMgW3NlbGVjdGVkQWxhcm1dPVwic2VsZWN0ZWRBbGFybSQgfCBhc3luY1wiPjwvYzh5LWFsYXJtLWRldGFpbHM+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=