UNPKG

@c8y/ngx-components

Version:

Angular modules for Cumulocity IoT applications

53 lines (51 loc) 5.24 kB
import { Injectable } from '@angular/core'; import { Permissions } from '@c8y/ngx-components'; import * as i0 from "@angular/core"; import * as i1 from "@c8y/ngx-components"; export class EcosystemNavigationFactory { constructor(permissions) { this.permissions = permissions; this.navs = []; this.showNavigatorNodes = this.permissions.hasAnyRole([ Permissions.ROLE_APPLICATION_MANAGEMENT_READ, Permissions.ROLE_APPLICATION_MANAGEMENT_ADMIN ]); } async get() { /* The NavigatorNodes are added in AngularJS code to keep the Quick links widget working. After the Quick links widget is migrated to Angular, the logic of adding the NavigatorNodes can be migrated as well. if (this.navs.length === 0 && this.showNavigatorNodes) { const applicationsNode: NavigatorNode = new NavigatorNode({ label: gettext('Applications'), icon: 'c8y-modules', path: '/ecosystem', priority: 300, routerLinkExact: false }); const microservicesNode = new NavigatorNode({ label: gettext('Microservices'), icon: 'microchip', path: '/microservices', priority: 200, routerLinkExact: false }); this.navs.push( new NavigatorNode({ label: gettext('Ecosystem'), icon: 'c8y-atom', priority: 3200, children: [applicationsNode, microservicesNode] }) ); } */ return this.navs; } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EcosystemNavigationFactory, deps: [{ token: i1.Permissions }], target: i0.ɵɵFactoryTarget.Injectable }); } static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EcosystemNavigationFactory }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EcosystemNavigationFactory, decorators: [{ type: Injectable }], ctorParameters: () => [{ type: i1.Permissions }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNvc3lzdGVtLW5hdmlnYXRpb24uZmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2Vjb3N5c3RlbS9lY29zeXN0ZW0tbmF2aWdhdGlvbi5mYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUF1QyxXQUFXLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7O0FBR3ZGLE1BQU0sT0FBTywwQkFBMEI7SUFJckMsWUFBb0IsV0FBd0I7UUFBeEIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFIcEMsU0FBSSxHQUFvQixFQUFFLENBQUM7UUFJakMsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDO1lBQ3BELFdBQVcsQ0FBQyxnQ0FBZ0M7WUFDNUMsV0FBVyxDQUFDLGlDQUFpQztTQUM5QyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsS0FBSyxDQUFDLEdBQUc7UUFDUDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7TUE2QkY7UUFDRSxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDbkIsQ0FBQzsrR0EzQ1UsMEJBQTBCO21IQUExQiwwQkFBMEI7OzRGQUExQiwwQkFBMEI7a0JBRHRDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOYXZpZ2F0b3JOb2RlLCBOYXZpZ2F0b3JOb2RlRmFjdG9yeSwgUGVybWlzc2lvbnMgfSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEVjb3N5c3RlbU5hdmlnYXRpb25GYWN0b3J5IGltcGxlbWVudHMgTmF2aWdhdG9yTm9kZUZhY3Rvcnkge1xuICBwcml2YXRlIG5hdnM6IE5hdmlnYXRvck5vZGVbXSA9IFtdO1xuICBwcml2YXRlIHNob3dOYXZpZ2F0b3JOb2RlczogYm9vbGVhbjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHBlcm1pc3Npb25zOiBQZXJtaXNzaW9ucykge1xuICAgIHRoaXMuc2hvd05hdmlnYXRvck5vZGVzID0gdGhpcy5wZXJtaXNzaW9ucy5oYXNBbnlSb2xlKFtcbiAgICAgIFBlcm1pc3Npb25zLlJPTEVfQVBQTElDQVRJT05fTUFOQUdFTUVOVF9SRUFELFxuICAgICAgUGVybWlzc2lvbnMuUk9MRV9BUFBMSUNBVElPTl9NQU5BR0VNRU5UX0FETUlOXG4gICAgXSk7XG4gIH1cblxuICBhc3luYyBnZXQoKSB7XG4gICAgLypcblRoZSBOYXZpZ2F0b3JOb2RlcyBhcmUgYWRkZWQgaW4gQW5ndWxhckpTIGNvZGUgdG8ga2VlcCB0aGUgUXVpY2sgbGlua3Mgd2lkZ2V0IHdvcmtpbmcuXG5BZnRlciB0aGUgUXVpY2sgbGlua3Mgd2lkZ2V0IGlzIG1pZ3JhdGVkIHRvIEFuZ3VsYXIsIHRoZSBsb2dpYyBvZiBhZGRpbmcgdGhlIE5hdmlnYXRvck5vZGVzIGNhbiBiZSBtaWdyYXRlZCBhcyB3ZWxsLlxuICAgIGlmICh0aGlzLm5hdnMubGVuZ3RoID09PSAwICYmIHRoaXMuc2hvd05hdmlnYXRvck5vZGVzKSB7XG4gICAgICBjb25zdCBhcHBsaWNhdGlvbnNOb2RlOiBOYXZpZ2F0b3JOb2RlID0gbmV3IE5hdmlnYXRvck5vZGUoe1xuICAgICAgICBsYWJlbDogZ2V0dGV4dCgnQXBwbGljYXRpb25zJyksXG4gICAgICAgIGljb246ICdjOHktbW9kdWxlcycsXG4gICAgICAgIHBhdGg6ICcvZWNvc3lzdGVtJyxcbiAgICAgICAgcHJpb3JpdHk6IDMwMCxcbiAgICAgICAgcm91dGVyTGlua0V4YWN0OiBmYWxzZVxuICAgICAgfSk7XG5cbiAgICAgIGNvbnN0IG1pY3Jvc2VydmljZXNOb2RlID0gbmV3IE5hdmlnYXRvck5vZGUoe1xuICAgICAgICBsYWJlbDogZ2V0dGV4dCgnTWljcm9zZXJ2aWNlcycpLFxuICAgICAgICBpY29uOiAnbWljcm9jaGlwJyxcbiAgICAgICAgcGF0aDogJy9taWNyb3NlcnZpY2VzJyxcbiAgICAgICAgcHJpb3JpdHk6IDIwMCxcbiAgICAgICAgcm91dGVyTGlua0V4YWN0OiBmYWxzZVxuICAgICAgfSk7XG5cbiAgICAgIHRoaXMubmF2cy5wdXNoKFxuICAgICAgICBuZXcgTmF2aWdhdG9yTm9kZSh7XG4gICAgICAgICAgbGFiZWw6IGdldHRleHQoJ0Vjb3N5c3RlbScpLFxuICAgICAgICAgIGljb246ICdjOHktYXRvbScsXG4gICAgICAgICAgcHJpb3JpdHk6IDMyMDAsXG4gICAgICAgICAgY2hpbGRyZW46IFthcHBsaWNhdGlvbnNOb2RlLCBtaWNyb3NlcnZpY2VzTm9kZV1cbiAgICAgICAgfSlcbiAgICAgICk7XG4gICAgfVxuKi9cbiAgICByZXR1cm4gdGhpcy5uYXZzO1xuICB9XG59XG4iXX0=