UNPKG

@c8y/ngx-components

Version:

Angular modules for Cumulocity IoT applications

58 lines 6.84 kB
import { Injectable } from '@angular/core'; import { AlarmService } from '@c8y/client'; import * as i0 from "@angular/core"; import * as i1 from "@c8y/client"; export class ChartAlarmsService { constructor(alarmService) { this.alarmService = alarmService; } /** * List alarms for the given alarm details. * @param params Additonal fetchOptions * @param alarms List of alarm types with details like color, target, etc. * @returns List of alarms for the given alarm details */ async listAlarms(params, alarms) { if (!alarms) { return []; } const promises = alarms.map(alarm => { if (alarm.__severity && alarm.__severity?.length > 0) { const severities = alarm.__severity.join(','); params = { ...params, severity: severities }; } if (alarm.__status && alarm.__status?.length > 0) { const statuses = alarm.__status.join(','); params = { ...params, status: statuses }; } const fetchOptions = { source: alarm.__target.id, type: alarm.filters.type, withTotalPages: true, pageSize: 1000, ...params }; return this.alarmService.list(fetchOptions).then(result => { result.data.forEach(iAlarm => { iAlarm['color'] = alarm.color; iAlarm['selectedDatapoint'] = alarm.selectedDatapoint; }); return result.data; }); }); const result = await Promise.all(promises); return result.flat(); } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ChartAlarmsService, deps: [{ token: i1.AlarmService }], target: i0.ɵɵFactoryTarget.Injectable }); } static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ChartAlarmsService }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ChartAlarmsService, decorators: [{ type: Injectable }], ctorParameters: () => [{ type: i1.AlarmService }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQtYWxhcm1zLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9lY2hhcnQvc2VydmljZXMvY2hhcnQtYWxhcm1zLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsWUFBWSxFQUF5QixNQUFNLGFBQWEsQ0FBQzs7O0FBSWxFLE1BQU0sT0FBTyxrQkFBa0I7SUFDN0IsWUFBb0IsWUFBMEI7UUFBMUIsaUJBQVksR0FBWixZQUFZLENBQWM7SUFBRyxDQUFDO0lBRWxEOzs7OztPQUtHO0lBQ0gsS0FBSyxDQUFDLFVBQVUsQ0FBQyxNQUFZLEVBQUUsTUFBK0I7UUFDNUQsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ1osT0FBTyxFQUFFLENBQUM7UUFDWixDQUFDO1FBQ0QsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNsQyxJQUFJLEtBQUssQ0FBQyxVQUFVLElBQUksS0FBSyxDQUFDLFVBQVUsRUFBRSxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7Z0JBQ3JELE1BQU0sVUFBVSxHQUFHLEtBQUssQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUM5QyxNQUFNLEdBQUc7b0JBQ1AsR0FBRyxNQUFNO29CQUNULFFBQVEsRUFBRSxVQUFVO2lCQUNyQixDQUFDO1lBQ0osQ0FBQztZQUNELElBQUksS0FBSyxDQUFDLFFBQVEsSUFBSSxLQUFLLENBQUMsUUFBUSxFQUFFLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDakQsTUFBTSxRQUFRLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQzFDLE1BQU0sR0FBRztvQkFDUCxHQUFHLE1BQU07b0JBQ1QsTUFBTSxFQUFFLFFBQVE7aUJBQ2pCLENBQUM7WUFDSixDQUFDO1lBQ0QsTUFBTSxZQUFZLEdBQWtCO2dCQUNsQyxNQUFNLEVBQUUsS0FBSyxDQUFDLFFBQVEsQ0FBQyxFQUFFO2dCQUN6QixJQUFJLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJO2dCQUN4QixjQUFjLEVBQUUsSUFBSTtnQkFDcEIsUUFBUSxFQUFFLElBQUk7Z0JBQ2QsR0FBRyxNQUFNO2FBQ1YsQ0FBQztZQUNGLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFO2dCQUN4RCxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRTtvQkFDM0IsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUM7b0JBQzlCLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQztnQkFDeEQsQ0FBQyxDQUFDLENBQUM7Z0JBQ0gsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDO1lBQ3JCLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFDSCxNQUFNLE1BQU0sR0FBRyxNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDM0MsT0FBTyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDdkIsQ0FBQzsrR0E3Q1Usa0JBQWtCO21IQUFsQixrQkFBa0I7OzRGQUFsQixrQkFBa0I7a0JBRDlCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBbGFybVNlcnZpY2UsIElBbGFybSwgSUZldGNoT3B0aW9ucyB9IGZyb20gJ0BjOHkvY2xpZW50JztcbmltcG9ydCB7IEFsYXJtRGV0YWlsc0V4dGVuZGVkIH0gZnJvbSAnLi4vbW9kZWxzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIENoYXJ0QWxhcm1zU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYWxhcm1TZXJ2aWNlOiBBbGFybVNlcnZpY2UpIHt9XG5cbiAgLyoqXG4gICAqIExpc3QgYWxhcm1zIGZvciB0aGUgZ2l2ZW4gYWxhcm0gZGV0YWlscy5cbiAgICogQHBhcmFtIHBhcmFtcyBBZGRpdG9uYWwgZmV0Y2hPcHRpb25zXG4gICAqIEBwYXJhbSBhbGFybXMgTGlzdCBvZiBhbGFybSB0eXBlcyB3aXRoIGRldGFpbHMgbGlrZSBjb2xvciwgdGFyZ2V0LCBldGMuXG4gICAqIEByZXR1cm5zIExpc3Qgb2YgYWxhcm1zIGZvciB0aGUgZ2l2ZW4gYWxhcm0gZGV0YWlsc1xuICAgKi9cbiAgYXN5bmMgbGlzdEFsYXJtcyhwYXJhbXM/OiBhbnksIGFsYXJtcz86IEFsYXJtRGV0YWlsc0V4dGVuZGVkW10pOiBQcm9taXNlPElBbGFybVtdPiB7XG4gICAgaWYgKCFhbGFybXMpIHtcbiAgICAgIHJldHVybiBbXTtcbiAgICB9XG4gICAgY29uc3QgcHJvbWlzZXMgPSBhbGFybXMubWFwKGFsYXJtID0+IHtcbiAgICAgIGlmIChhbGFybS5fX3NldmVyaXR5ICYmIGFsYXJtLl9fc2V2ZXJpdHk/Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgY29uc3Qgc2V2ZXJpdGllcyA9IGFsYXJtLl9fc2V2ZXJpdHkuam9pbignLCcpO1xuICAgICAgICBwYXJhbXMgPSB7XG4gICAgICAgICAgLi4ucGFyYW1zLFxuICAgICAgICAgIHNldmVyaXR5OiBzZXZlcml0aWVzXG4gICAgICAgIH07XG4gICAgICB9XG4gICAgICBpZiAoYWxhcm0uX19zdGF0dXMgJiYgYWxhcm0uX19zdGF0dXM/Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgY29uc3Qgc3RhdHVzZXMgPSBhbGFybS5fX3N0YXR1cy5qb2luKCcsJyk7XG4gICAgICAgIHBhcmFtcyA9IHtcbiAgICAgICAgICAuLi5wYXJhbXMsXG4gICAgICAgICAgc3RhdHVzOiBzdGF0dXNlc1xuICAgICAgICB9O1xuICAgICAgfVxuICAgICAgY29uc3QgZmV0Y2hPcHRpb25zOiBJRmV0Y2hPcHRpb25zID0ge1xuICAgICAgICBzb3VyY2U6IGFsYXJtLl9fdGFyZ2V0LmlkLFxuICAgICAgICB0eXBlOiBhbGFybS5maWx0ZXJzLnR5cGUsXG4gICAgICAgIHdpdGhUb3RhbFBhZ2VzOiB0cnVlLFxuICAgICAgICBwYWdlU2l6ZTogMTAwMCxcbiAgICAgICAgLi4ucGFyYW1zXG4gICAgICB9O1xuICAgICAgcmV0dXJuIHRoaXMuYWxhcm1TZXJ2aWNlLmxpc3QoZmV0Y2hPcHRpb25zKS50aGVuKHJlc3VsdCA9PiB7XG4gICAgICAgIHJlc3VsdC5kYXRhLmZvckVhY2goaUFsYXJtID0+IHtcbiAgICAgICAgICBpQWxhcm1bJ2NvbG9yJ10gPSBhbGFybS5jb2xvcjtcbiAgICAgICAgICBpQWxhcm1bJ3NlbGVjdGVkRGF0YXBvaW50J10gPSBhbGFybS5zZWxlY3RlZERhdGFwb2ludDtcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiByZXN1bHQuZGF0YTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IFByb21pc2UuYWxsKHByb21pc2VzKTtcbiAgICByZXR1cm4gcmVzdWx0LmZsYXQoKTtcbiAgfVxufVxuIl19