@c8y/ngx-components
Version:
Angular modules for Cumulocity IoT applications
33 lines • 4.28 kB
JavaScript
import { Injectable } from '@angular/core';
import { ContextRouteService, ViewContext, gettext } from '@c8y/ngx-components';
import * as i0 from "@angular/core";
import * as i1 from "@c8y/ngx-components";
export class LocationTabFactory {
constructor(contextRouteService) {
this.contextRouteService = contextRouteService;
}
get(activatedRoute) {
const contextData = this.contextRouteService.getContextData(activatedRoute);
const isDeviceOrGroupWithPosition = (contextData?.context === ViewContext.Device || contextData?.context === ViewContext.Group) &&
contextData?.contextData.c8y_Position;
if (isDeviceOrGroupWithPosition) {
return [
{
label: gettext('Location'),
icon: 'location-arrow',
path: `${this.contextRouteService.getContextRoute(contextData)}/location`
}
];
}
return [];
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LocationTabFactory, deps: [{ token: i1.ContextRouteService }], target: i0.ɵɵFactoryTarget.Injectable }); }
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LocationTabFactory, providedIn: 'root' }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LocationTabFactory, decorators: [{
type: Injectable,
args: [{
providedIn: 'root'
}]
}], ctorParameters: () => [{ type: i1.ContextRouteService }] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYXRpb24tdGFiLmZhY3RvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9sb2NhdGlvbi9sb2NhdGlvbi10YWIuZmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFDTCxtQkFBbUIsRUFFbkIsV0FBVyxFQUVYLE9BQU8sRUFDUixNQUFNLHFCQUFxQixDQUFDOzs7QUFLN0IsTUFBTSxPQUFPLGtCQUFrQjtJQUM3QixZQUFvQixtQkFBd0M7UUFBeEMsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtJQUFHLENBQUM7SUFFaEUsR0FBRyxDQUFDLGNBQThCO1FBQ2hDLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxjQUFjLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDNUUsTUFBTSwyQkFBMkIsR0FDL0IsQ0FBQyxXQUFXLEVBQUUsT0FBTyxLQUFLLFdBQVcsQ0FBQyxNQUFNLElBQUksV0FBVyxFQUFFLE9BQU8sS0FBSyxXQUFXLENBQUMsS0FBSyxDQUFDO1lBQzNGLFdBQVcsRUFBRSxXQUFXLENBQUMsWUFBWSxDQUFDO1FBQ3hDLElBQUksMkJBQTJCLEVBQUUsQ0FBQztZQUNoQyxPQUFPO2dCQUNMO29CQUNFLEtBQUssRUFBRSxPQUFPLENBQUMsVUFBVSxDQUFDO29CQUMxQixJQUFJLEVBQUUsZ0JBQWdCO29CQUN0QixJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsZUFBZSxDQUFDLFdBQVcsQ0FBQyxXQUFXO2lCQUMxRTthQUNGLENBQUM7UUFDSixDQUFDO1FBQ0QsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDOytHQWxCVSxrQkFBa0I7bUhBQWxCLGtCQUFrQixjQUZqQixNQUFNOzs0RkFFUCxrQkFBa0I7a0JBSDlCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtcbiAgQ29udGV4dFJvdXRlU2VydmljZSxcbiAgVGFiLFxuICBWaWV3Q29udGV4dCxcbiAgRXh0ZW5zaW9uRmFjdG9yeSxcbiAgZ2V0dGV4dFxufSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgTG9jYXRpb25UYWJGYWN0b3J5IGltcGxlbWVudHMgRXh0ZW5zaW9uRmFjdG9yeTxUYWI+IHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjb250ZXh0Um91dGVTZXJ2aWNlOiBDb250ZXh0Um91dGVTZXJ2aWNlKSB7fVxuXG4gIGdldChhY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGUpOiBUYWJbXSB7XG4gICAgY29uc3QgY29udGV4dERhdGEgPSB0aGlzLmNvbnRleHRSb3V0ZVNlcnZpY2UuZ2V0Q29udGV4dERhdGEoYWN0aXZhdGVkUm91dGUpO1xuICAgIGNvbnN0IGlzRGV2aWNlT3JHcm91cFdpdGhQb3NpdGlvbiA9XG4gICAgICAoY29udGV4dERhdGE/LmNvbnRleHQgPT09IFZpZXdDb250ZXh0LkRldmljZSB8fCBjb250ZXh0RGF0YT8uY29udGV4dCA9PT0gVmlld0NvbnRleHQuR3JvdXApICYmXG4gICAgICBjb250ZXh0RGF0YT8uY29udGV4dERhdGEuYzh5X1Bvc2l0aW9uO1xuICAgIGlmIChpc0RldmljZU9yR3JvdXBXaXRoUG9zaXRpb24pIHtcbiAgICAgIHJldHVybiBbXG4gICAgICAgIHtcbiAgICAgICAgICBsYWJlbDogZ2V0dGV4dCgnTG9jYXRpb24nKSxcbiAgICAgICAgICBpY29uOiAnbG9jYXRpb24tYXJyb3cnLFxuICAgICAgICAgIHBhdGg6IGAke3RoaXMuY29udGV4dFJvdXRlU2VydmljZS5nZXRDb250ZXh0Um91dGUoY29udGV4dERhdGEpfS9sb2NhdGlvbmBcbiAgICAgICAgfVxuICAgICAgXTtcbiAgICB9XG4gICAgcmV0dXJuIFtdO1xuICB9XG59XG4iXX0=