UNPKG

@c8y/ngx-components

Version:

Angular modules for Cumulocity IoT applications

47 lines 6.22 kB
import { Injectable } from '@angular/core'; import { NavigatorNode, NavigatorService, gettext } from '@c8y/ngx-components'; import { ReportDashboardService } from './report-dashboard.service'; import * as i0 from "@angular/core"; import * as i1 from "@c8y/ngx-components"; import * as i2 from "./report-dashboard.service"; const REPORTS_NAVIGATOR_NODE_PRIORITY = 40; export class ReportDashboardNavigationFactory { constructor(navigatorService, reportDashboardService) { this.navigatorService = navigatorService; this.reportDashboardService = reportDashboardService; this.loaded = false; } async get() { if (!this.loaded) { this.loaded = true; this.navigatorService.add(new NavigatorNode({ label: gettext('Reports'), path: 'reports', icon: 'c8y-reports', featureId: 'reports', priority: REPORTS_NAVIGATOR_NODE_PRIORITY })); const reports = (await this.reportDashboardService.listReports({ filter: { __has: 'c8y_IsNavigatorNode' }, pageSize: 2000 })).data; reports.forEach(report => { const node = new NavigatorNode({ label: report.name, path: `reports/${report.id}`, icon: report.icon, priority: report.priority, routerLinkExact: false }); this.navigatorService.add(node); }); } } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ReportDashboardNavigationFactory, deps: [{ token: i1.NavigatorService }, { token: i2.ReportDashboardService }], target: i0.ɵɵFactoryTarget.Injectable }); } static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ReportDashboardNavigationFactory, providedIn: 'root' }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ReportDashboardNavigationFactory, decorators: [{ type: Injectable, args: [{ providedIn: 'root' }] }], ctorParameters: () => [{ type: i1.NavigatorService }, { type: i2.ReportDashboardService }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwb3J0LWRhc2hib2FyZC1uYXZpZ2F0aW9uLmZhY3RvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9yZXBvcnQtZGFzaGJvYXJkL3JlcG9ydC1kYXNoYm9hcmQtbmF2aWdhdGlvbi5mYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxnQkFBZ0IsRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUMvRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7OztBQUVwRSxNQUFNLCtCQUErQixHQUFHLEVBQUUsQ0FBQztBQUczQyxNQUFNLE9BQU8sZ0NBQWdDO0lBRzNDLFlBQ1UsZ0JBQWtDLEVBQ2xDLHNCQUE4QztRQUQ5QyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBd0I7UUFKeEQsV0FBTSxHQUFHLEtBQUssQ0FBQztJQUtaLENBQUM7SUFFSixLQUFLLENBQUMsR0FBRztRQUNQLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDakIsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7WUFFbkIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FDdkIsSUFBSSxhQUFhLENBQUM7Z0JBQ2hCLEtBQUssRUFBRSxPQUFPLENBQUMsU0FBUyxDQUFDO2dCQUN6QixJQUFJLEVBQUUsU0FBUztnQkFDZixJQUFJLEVBQUUsYUFBYTtnQkFDbkIsU0FBUyxFQUFFLFNBQVM7Z0JBQ3BCLFFBQVEsRUFBRSwrQkFBK0I7YUFDMUMsQ0FBQyxDQUNILENBQUM7WUFFRixNQUFNLE9BQU8sR0FBcUIsQ0FDaEMsTUFBTSxJQUFJLENBQUMsc0JBQXNCLENBQUMsV0FBVyxDQUFDO2dCQUM1QyxNQUFNLEVBQUUsRUFBRSxLQUFLLEVBQUUscUJBQXFCLEVBQUU7Z0JBQ3hDLFFBQVEsRUFBRSxJQUFJO2FBQ2YsQ0FBQyxDQUNILENBQUMsSUFBSSxDQUFDO1lBQ1AsT0FBTyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRTtnQkFDdkIsTUFBTSxJQUFJLEdBQUcsSUFBSSxhQUFhLENBQUM7b0JBQzdCLEtBQUssRUFBRSxNQUFNLENBQUMsSUFBSTtvQkFDbEIsSUFBSSxFQUFFLFdBQVcsTUFBTSxDQUFDLEVBQUUsRUFBRTtvQkFDNUIsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJO29CQUNqQixRQUFRLEVBQUUsTUFBTSxDQUFDLFFBQVE7b0JBQ3pCLGVBQWUsRUFBRSxLQUFLO2lCQUN2QixDQUFDLENBQUM7Z0JBQ0gsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNsQyxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUM7SUFDSCxDQUFDOytHQXZDVSxnQ0FBZ0M7bUhBQWhDLGdDQUFnQyxjQURuQixNQUFNOzs0RkFDbkIsZ0NBQWdDO2tCQUQ1QyxVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElNYW5hZ2VkT2JqZWN0IH0gZnJvbSAnQGM4eS9jbGllbnQnO1xuaW1wb3J0IHsgTmF2aWdhdG9yTm9kZSwgTmF2aWdhdG9yU2VydmljZSwgZ2V0dGV4dCB9IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMnO1xuaW1wb3J0IHsgUmVwb3J0RGFzaGJvYXJkU2VydmljZSB9IGZyb20gJy4vcmVwb3J0LWRhc2hib2FyZC5zZXJ2aWNlJztcblxuY29uc3QgUkVQT1JUU19OQVZJR0FUT1JfTk9ERV9QUklPUklUWSA9IDQwO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIFJlcG9ydERhc2hib2FyZE5hdmlnYXRpb25GYWN0b3J5IHtcbiAgbG9hZGVkID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBuYXZpZ2F0b3JTZXJ2aWNlOiBOYXZpZ2F0b3JTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVwb3J0RGFzaGJvYXJkU2VydmljZTogUmVwb3J0RGFzaGJvYXJkU2VydmljZVxuICApIHt9XG5cbiAgYXN5bmMgZ2V0KCkge1xuICAgIGlmICghdGhpcy5sb2FkZWQpIHtcbiAgICAgIHRoaXMubG9hZGVkID0gdHJ1ZTtcblxuICAgICAgdGhpcy5uYXZpZ2F0b3JTZXJ2aWNlLmFkZChcbiAgICAgICAgbmV3IE5hdmlnYXRvck5vZGUoe1xuICAgICAgICAgIGxhYmVsOiBnZXR0ZXh0KCdSZXBvcnRzJyksXG4gICAgICAgICAgcGF0aDogJ3JlcG9ydHMnLFxuICAgICAgICAgIGljb246ICdjOHktcmVwb3J0cycsXG4gICAgICAgICAgZmVhdHVyZUlkOiAncmVwb3J0cycsXG4gICAgICAgICAgcHJpb3JpdHk6IFJFUE9SVFNfTkFWSUdBVE9SX05PREVfUFJJT1JJVFlcbiAgICAgICAgfSlcbiAgICAgICk7XG5cbiAgICAgIGNvbnN0IHJlcG9ydHM6IElNYW5hZ2VkT2JqZWN0W10gPSAoXG4gICAgICAgIGF3YWl0IHRoaXMucmVwb3J0RGFzaGJvYXJkU2VydmljZS5saXN0UmVwb3J0cyh7XG4gICAgICAgICAgZmlsdGVyOiB7IF9faGFzOiAnYzh5X0lzTmF2aWdhdG9yTm9kZScgfSxcbiAgICAgICAgICBwYWdlU2l6ZTogMjAwMFxuICAgICAgICB9KVxuICAgICAgKS5kYXRhO1xuICAgICAgcmVwb3J0cy5mb3JFYWNoKHJlcG9ydCA9PiB7XG4gICAgICAgIGNvbnN0IG5vZGUgPSBuZXcgTmF2aWdhdG9yTm9kZSh7XG4gICAgICAgICAgbGFiZWw6IHJlcG9ydC5uYW1lLFxuICAgICAgICAgIHBhdGg6IGByZXBvcnRzLyR7cmVwb3J0LmlkfWAsXG4gICAgICAgICAgaWNvbjogcmVwb3J0Lmljb24sXG4gICAgICAgICAgcHJpb3JpdHk6IHJlcG9ydC5wcmlvcml0eSxcbiAgICAgICAgICByb3V0ZXJMaW5rRXhhY3Q6IGZhbHNlXG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLm5hdmlnYXRvclNlcnZpY2UuYWRkKG5vZGUpO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG59XG4iXX0=