UNPKG

@c8y/ngx-components

Version:

Angular modules for Cumulocity IoT applications

62 lines 13.6 kB
import { Component } from '@angular/core'; import { LWM2MEndpoint } from '@c8y/ngx-components/protocol-lwm2m/model'; import { ActivatedRoute, RouterModule } from '@angular/router'; import { Lwm2mConfigurationService } from '@c8y/ngx-components/protocol-lwm2m/services'; import { Lwm2mUIThemeModule } from '@c8y/ngx-components/protocol-lwm2m/formly'; import { CdkTreeModule } from '@angular/cdk/tree'; import { CoreModule, gettext } from '@c8y/ngx-components'; import * as i0 from "@angular/core"; import * as i1 from "@c8y/ngx-components/protocol-lwm2m/services"; import * as i2 from "@angular/router"; import * as i3 from "@c8y/ngx-components"; import * as i4 from "@angular/common"; import * as i5 from "@angular/forms"; export class Lwm2mConfigurationComponent { constructor(lwm2mConfigService, route) { this.lwm2mConfigService = lwm2mConfigService; this.route = route; this.lwm2mConfigService.deviceId = this.route?.snapshot?.parent?.params?.id; this.tabs = [ { icon: 'cog', label: gettext('Device settings'), path: this.getPath(LWM2MEndpoint.deviceSettings) }, { icon: 'connected', label: gettext('Connectivity'), path: this.getPath(LWM2MEndpoint.connectivity) }, { icon: 'c8y-firmware', label: gettext('Firmware update'), path: this.getPath(LWM2MEndpoint.firmware) }, { icon: 'root-server', label: gettext('Bootstrap'), path: this.getPath(LWM2MEndpoint.bootstrap) }, { icon: 'stack', label: gettext('Servers written during bootstrap'), path: this.getPath(LWM2MEndpoint.servers) } ]; this.lwm2mConfigService.getSecurityModes(); } onActivate(event) { this.componentInstance = event; } getPath(endpoint) { const { deviceId } = this.lwm2mConfigService; return `/device/${deviceId}/lwm2m-configuration/${endpoint}`; } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: Lwm2mConfigurationComponent, deps: [{ token: i1.Lwm2mConfigurationService }, { token: i2.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); } static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: Lwm2mConfigurationComponent, isStandalone: true, selector: "c8y-lwm2m-configuration", ngImport: i0, template: "<div class=\"card content-fullpage d-col\">\n <div class=\"card-header p-0\">\n <c8y-ui-tabs\n class=\"card-has-tabs card-tabs\"\n [tabs]=\"tabs\"\n [orientation]=\"'horizontal'\"\n ></c8y-ui-tabs>\n </div>\n <div class=\"inner-scroll bg-level-0 flex-grow\">\n <form class=\"card-block--formly fit-h\">\n <router-outlet (activate)=\"onActivate($event)\"></router-outlet>\n </form>\n </div>\n <div\n class=\"card-footer separator sticky-bottom\"\n *ngIf=\"componentInstance?.fields?.length > 0\"\n >\n <button\n class=\"btn btn-default\"\n title=\"{{ 'Cancel' | translate }}\"\n type=\"button\"\n (click)=\"componentInstance.cancel()\"\n [disabled]=\"!componentInstance.form.dirty\"\n >\n {{ 'Cancel' | translate }}\n </button>\n <button\n class=\"btn btn-primary\"\n title=\"{{ 'Save' | translate }}\"\n type=\"button\"\n [disabled]=\"componentInstance.form.invalid || !componentInstance.form.dirty\"\n (click)=\"componentInstance.save()\"\n >\n {{ 'Save' | translate }}\n </button>\n </div>\n</div>\n", dependencies: [{ kind: "ngmodule", type: CoreModule }, { kind: "pipe", type: i3.C8yTranslatePipe, name: "translate" }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.TabsOutletComponent, selector: "c8y-tabs-outlet,c8y-ui-tabs", inputs: ["tabs", "orientation", "navigatorOpen", "outletName", "context", "openFirstTab", "hasHeader"] }, { kind: "directive", type: i5.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i5.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: Lwm2mUIThemeModule }, { kind: "ngmodule", type: CdkTreeModule }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i2.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }] }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: Lwm2mConfigurationComponent, decorators: [{ type: Component, args: [{ selector: 'c8y-lwm2m-configuration', imports: [CoreModule, Lwm2mUIThemeModule, CdkTreeModule, RouterModule], standalone: true, template: "<div class=\"card content-fullpage d-col\">\n <div class=\"card-header p-0\">\n <c8y-ui-tabs\n class=\"card-has-tabs card-tabs\"\n [tabs]=\"tabs\"\n [orientation]=\"'horizontal'\"\n ></c8y-ui-tabs>\n </div>\n <div class=\"inner-scroll bg-level-0 flex-grow\">\n <form class=\"card-block--formly fit-h\">\n <router-outlet (activate)=\"onActivate($event)\"></router-outlet>\n </form>\n </div>\n <div\n class=\"card-footer separator sticky-bottom\"\n *ngIf=\"componentInstance?.fields?.length > 0\"\n >\n <button\n class=\"btn btn-default\"\n title=\"{{ 'Cancel' | translate }}\"\n type=\"button\"\n (click)=\"componentInstance.cancel()\"\n [disabled]=\"!componentInstance.form.dirty\"\n >\n {{ 'Cancel' | translate }}\n </button>\n <button\n class=\"btn btn-primary\"\n title=\"{{ 'Save' | translate }}\"\n type=\"button\"\n [disabled]=\"componentInstance.form.invalid || !componentInstance.form.dirty\"\n (click)=\"componentInstance.save()\"\n >\n {{ 'Save' | translate }}\n </button>\n </div>\n</div>\n" }] }], ctorParameters: () => [{ type: i1.Lwm2mConfigurationService }, { type: i2.ActivatedRoute }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibHdtMm0tY29uZmlndXJhdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm90b2NvbC1sd20ybS9jb21wb25lbnRzL2NvbmZpZ3VyYXRpb24vbHdtMm0tY29uZmlndXJhdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm90b2NvbC1sd20ybS9jb21wb25lbnRzL2NvbmZpZ3VyYXRpb24vbHdtMm0tY29uZmlndXJhdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxhQUFhLEVBQVksTUFBTSwwQ0FBMEMsQ0FBQztBQUNuRixPQUFPLEVBQUUsY0FBYyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9ELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsVUFBVSxFQUFPLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7Ozs7O0FBVS9ELE1BQU0sT0FBTywyQkFBMkI7SUFJdEMsWUFDVSxrQkFBMEQsRUFDMUQsS0FBcUI7UUFEckIsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUF3QztRQUMxRCxVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUU3QixJQUFJLENBQUMsa0JBQWtCLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsRUFBRSxDQUFDO1FBRTVFLElBQUksQ0FBQyxJQUFJLEdBQUc7WUFDVjtnQkFDRSxJQUFJLEVBQUUsS0FBSztnQkFDWCxLQUFLLEVBQUUsT0FBTyxDQUFDLGlCQUFpQixDQUFDO2dCQUNqQyxJQUFJLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDO2FBQ2pEO1lBQ0Q7Z0JBQ0UsSUFBSSxFQUFFLFdBQVc7Z0JBQ2pCLEtBQUssRUFBRSxPQUFPLENBQUMsY0FBYyxDQUFDO2dCQUM5QixJQUFJLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDO2FBQy9DO1lBQ0Q7Z0JBQ0UsSUFBSSxFQUFFLGNBQWM7Z0JBQ3BCLEtBQUssRUFBRSxPQUFPLENBQUMsaUJBQWlCLENBQUM7Z0JBQ2pDLElBQUksRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUM7YUFDM0M7WUFDRDtnQkFDRSxJQUFJLEVBQUUsYUFBYTtnQkFDbkIsS0FBSyxFQUFFLE9BQU8sQ0FBQyxXQUFXLENBQUM7Z0JBQzNCLElBQUksRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUM7YUFDNUM7WUFDRDtnQkFDRSxJQUFJLEVBQUUsT0FBTztnQkFDYixLQUFLLEVBQUUsT0FBTyxDQUFDLGtDQUFrQyxDQUFDO2dCQUNsRCxJQUFJLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDO2FBQzFDO1NBQ0YsQ0FBQztRQUVGLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO0lBQzdDLENBQUM7SUFFRCxVQUFVLENBQUMsS0FBSztRQUNkLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxLQUFLLENBQUM7SUFDakMsQ0FBQztJQUVPLE9BQU8sQ0FBQyxRQUF1QjtRQUNyQyxNQUFNLEVBQUUsUUFBUSxFQUFFLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDO1FBQzdDLE9BQU8sV0FBVyxRQUFRLHdCQUF3QixRQUFRLEVBQUUsQ0FBQztJQUMvRCxDQUFDOytHQWhEVSwyQkFBMkI7bUdBQTNCLDJCQUEyQixtRkNoQnhDLHNtQ0FxQ0EsMkNEeEJZLFVBQVUsaTBCQUFFLGtCQUFrQiw4QkFBRSxhQUFhLDhCQUFFLFlBQVk7OzRGQUcxRCwyQkFBMkI7a0JBTnZDLFNBQVM7K0JBQ0UseUJBQXlCLFdBRTFCLENBQUMsVUFBVSxFQUFFLGtCQUFrQixFQUFFLGFBQWEsRUFBRSxZQUFZLENBQUMsY0FDMUQsSUFBSSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTFdNMk1FbmRwb2ludCwgU2V0dGluZ3MgfSBmcm9tICdAYzh5L25neC1jb21wb25lbnRzL3Byb3RvY29sLWx3bTJtL21vZGVsJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgTHdtMm1Db25maWd1cmF0aW9uU2VydmljZSB9IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMvcHJvdG9jb2wtbHdtMm0vc2VydmljZXMnO1xuaW1wb3J0IHsgTHdtMm1VSVRoZW1lTW9kdWxlIH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cy9wcm90b2NvbC1sd20ybS9mb3JtbHknO1xuaW1wb3J0IHsgQ2RrVHJlZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay90cmVlJztcbmltcG9ydCB7IENvcmVNb2R1bGUsIFRhYiwgZ2V0dGV4dCB9IGZyb20gJ0BjOHkvbmd4LWNvbXBvbmVudHMnO1xuaW1wb3J0IHsgSUlkZW50aWZpZWQgfSBmcm9tICdAYzh5L2NsaWVudCc7XG5pbXBvcnQgeyBMd20ybUZvcm1XcmFwcGVyQmFzZSB9IGZyb20gJy4vdHlwZWQtZm9ybXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjOHktbHdtMm0tY29uZmlndXJhdGlvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9sd20ybS1jb25maWd1cmF0aW9uLmNvbXBvbmVudC5odG1sJyxcbiAgaW1wb3J0czogW0NvcmVNb2R1bGUsIEx3bTJtVUlUaGVtZU1vZHVsZSwgQ2RrVHJlZU1vZHVsZSwgUm91dGVyTW9kdWxlXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBMd20ybUNvbmZpZ3VyYXRpb25Db21wb25lbnQge1xuICB0YWJzOiBUYWJbXTtcbiAgY29tcG9uZW50SW5zdGFuY2U6IEx3bTJtRm9ybVdyYXBwZXJCYXNlPFNldHRpbmdzPjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGx3bTJtQ29uZmlnU2VydmljZTogTHdtMm1Db25maWd1cmF0aW9uU2VydmljZTxJSWRlbnRpZmllZD4sXG4gICAgcHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGVcbiAgKSB7XG4gICAgdGhpcy5sd20ybUNvbmZpZ1NlcnZpY2UuZGV2aWNlSWQgPSB0aGlzLnJvdXRlPy5zbmFwc2hvdD8ucGFyZW50Py5wYXJhbXM/LmlkO1xuXG4gICAgdGhpcy50YWJzID0gW1xuICAgICAge1xuICAgICAgICBpY29uOiAnY29nJyxcbiAgICAgICAgbGFiZWw6IGdldHRleHQoJ0RldmljZSBzZXR0aW5ncycpLFxuICAgICAgICBwYXRoOiB0aGlzLmdldFBhdGgoTFdNMk1FbmRwb2ludC5kZXZpY2VTZXR0aW5ncylcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGljb246ICdjb25uZWN0ZWQnLFxuICAgICAgICBsYWJlbDogZ2V0dGV4dCgnQ29ubmVjdGl2aXR5JyksXG4gICAgICAgIHBhdGg6IHRoaXMuZ2V0UGF0aChMV00yTUVuZHBvaW50LmNvbm5lY3Rpdml0eSlcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGljb246ICdjOHktZmlybXdhcmUnLFxuICAgICAgICBsYWJlbDogZ2V0dGV4dCgnRmlybXdhcmUgdXBkYXRlJyksXG4gICAgICAgIHBhdGg6IHRoaXMuZ2V0UGF0aChMV00yTUVuZHBvaW50LmZpcm13YXJlKVxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWNvbjogJ3Jvb3Qtc2VydmVyJyxcbiAgICAgICAgbGFiZWw6IGdldHRleHQoJ0Jvb3RzdHJhcCcpLFxuICAgICAgICBwYXRoOiB0aGlzLmdldFBhdGgoTFdNMk1FbmRwb2ludC5ib290c3RyYXApXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpY29uOiAnc3RhY2snLFxuICAgICAgICBsYWJlbDogZ2V0dGV4dCgnU2VydmVycyB3cml0dGVuIGR1cmluZyBib290c3RyYXAnKSxcbiAgICAgICAgcGF0aDogdGhpcy5nZXRQYXRoKExXTTJNRW5kcG9pbnQuc2VydmVycylcbiAgICAgIH1cbiAgICBdO1xuXG4gICAgdGhpcy5sd20ybUNvbmZpZ1NlcnZpY2UuZ2V0U2VjdXJpdHlNb2RlcygpO1xuICB9XG5cbiAgb25BY3RpdmF0ZShldmVudCkge1xuICAgIHRoaXMuY29tcG9uZW50SW5zdGFuY2UgPSBldmVudDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0UGF0aChlbmRwb2ludDogTFdNMk1FbmRwb2ludCkge1xuICAgIGNvbnN0IHsgZGV2aWNlSWQgfSA9IHRoaXMubHdtMm1Db25maWdTZXJ2aWNlO1xuICAgIHJldHVybiBgL2RldmljZS8ke2RldmljZUlkfS9sd20ybS1jb25maWd1cmF0aW9uLyR7ZW5kcG9pbnR9YDtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImNhcmQgY29udGVudC1mdWxscGFnZSBkLWNvbFwiPlxuICA8ZGl2IGNsYXNzPVwiY2FyZC1oZWFkZXIgcC0wXCI+XG4gICAgPGM4eS11aS10YWJzXG4gICAgICBjbGFzcz1cImNhcmQtaGFzLXRhYnMgY2FyZC10YWJzXCJcbiAgICAgIFt0YWJzXT1cInRhYnNcIlxuICAgICAgW29yaWVudGF0aW9uXT1cIidob3Jpem9udGFsJ1wiXG4gICAgPjwvYzh5LXVpLXRhYnM+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiaW5uZXItc2Nyb2xsIGJnLWxldmVsLTAgZmxleC1ncm93XCI+XG4gICAgPGZvcm0gY2xhc3M9XCJjYXJkLWJsb2NrLS1mb3JtbHkgZml0LWhcIj5cbiAgICAgIDxyb3V0ZXItb3V0bGV0IChhY3RpdmF0ZSk9XCJvbkFjdGl2YXRlKCRldmVudClcIj48L3JvdXRlci1vdXRsZXQ+XG4gICAgPC9mb3JtPlxuICA8L2Rpdj5cbiAgPGRpdlxuICAgIGNsYXNzPVwiY2FyZC1mb290ZXIgc2VwYXJhdG9yIHN0aWNreS1ib3R0b21cIlxuICAgICpuZ0lmPVwiY29tcG9uZW50SW5zdGFuY2U/LmZpZWxkcz8ubGVuZ3RoID4gMFwiXG4gID5cbiAgICA8YnV0dG9uXG4gICAgICBjbGFzcz1cImJ0biBidG4tZGVmYXVsdFwiXG4gICAgICB0aXRsZT1cInt7ICdDYW5jZWwnIHwgdHJhbnNsYXRlIH19XCJcbiAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgKGNsaWNrKT1cImNvbXBvbmVudEluc3RhbmNlLmNhbmNlbCgpXCJcbiAgICAgIFtkaXNhYmxlZF09XCIhY29tcG9uZW50SW5zdGFuY2UuZm9ybS5kaXJ0eVwiXG4gICAgPlxuICAgICAge3sgJ0NhbmNlbCcgfCB0cmFuc2xhdGUgfX1cbiAgICA8L2J1dHRvbj5cbiAgICA8YnV0dG9uXG4gICAgICBjbGFzcz1cImJ0biBidG4tcHJpbWFyeVwiXG4gICAgICB0aXRsZT1cInt7ICdTYXZlJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgIFtkaXNhYmxlZF09XCJjb21wb25lbnRJbnN0YW5jZS5mb3JtLmludmFsaWQgfHwgIWNvbXBvbmVudEluc3RhbmNlLmZvcm0uZGlydHlcIlxuICAgICAgKGNsaWNrKT1cImNvbXBvbmVudEluc3RhbmNlLnNhdmUoKVwiXG4gICAgPlxuICAgICAge3sgJ1NhdmUnIHwgdHJhbnNsYXRlIH19XG4gICAgPC9idXR0b24+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=