UNPKG

@c8y/ngx-components

Version:

Angular modules for Cumulocity IoT applications

44 lines 5.58 kB
import { Injectable } from '@angular/core'; import { OperationService } from '@c8y/client'; import { gettext, OptionsService } from '@c8y/ngx-components'; import { CommandDeliveryType } from './device-shell.model'; import * as i0 from "@angular/core"; import * as i1 from "@c8y/ngx-components"; import * as i2 from "@c8y/client"; export class DeviceShellService { constructor(optionsService, operationService) { this.optionsService = optionsService; this.operationService = operationService; } getDeliveryTypes() { return [ { name: gettext(CommandDeliveryType.DEFAULT), default: true }, { name: gettext(CommandDeliveryType.SMS) } ]; } async canSendCommandsViaSMS() { return !!(await this.optionsService.getSystemOption('messaging', 'provider', false)); } createCommandOperation(deviceId, command, deliveryType) { const operation = { deviceId, description: gettext('Execute shell command') + (command.name ? `: ${command.name}` : ''), deliveryType: deliveryType === CommandDeliveryType.SMS ? CommandDeliveryType.SMS : undefined, c8y_Command: { text: command.text } }; return this.operationService.create(operation); } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DeviceShellService, deps: [{ token: i1.OptionsService }, { token: i2.OperationService }], target: i0.ɵɵFactoryTarget.Injectable }); } static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DeviceShellService }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DeviceShellService, decorators: [{ type: Injectable }], ctorParameters: () => [{ type: i1.OptionsService }, { type: i2.OperationService }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2aWNlLXNoZWxsLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9kZXZpY2Utc2hlbGwvc2hhcmVkL2RldmljZS1zaGVsbC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUF1QixnQkFBZ0IsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNwRSxPQUFPLEVBQUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzlELE9BQU8sRUFBVyxtQkFBbUIsRUFBZ0IsTUFBTSxzQkFBc0IsQ0FBQzs7OztBQUdsRixNQUFNLE9BQU8sa0JBQWtCO0lBQzdCLFlBQW9CLGNBQThCLEVBQVUsZ0JBQWtDO1FBQTFFLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUFVLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7SUFBRyxDQUFDO0lBRWxHLGdCQUFnQjtRQUNkLE9BQU87WUFDTDtnQkFDRSxJQUFJLEVBQUUsT0FBTyxDQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQztnQkFDMUMsT0FBTyxFQUFFLElBQUk7YUFDZDtZQUNEO2dCQUNFLElBQUksRUFBRSxPQUFPLENBQUMsbUJBQW1CLENBQUMsR0FBRyxDQUFDO2FBQ3ZDO1NBQ0YsQ0FBQztJQUNKLENBQUM7SUFFRCxLQUFLLENBQUMscUJBQXFCO1FBQ3pCLE9BQU8sQ0FBQyxDQUFDLENBQUMsTUFBTSxJQUFJLENBQUMsY0FBYyxDQUFDLGVBQWUsQ0FBQyxXQUFXLEVBQUUsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDdkYsQ0FBQztJQUVELHNCQUFzQixDQUNwQixRQUFnQixFQUNoQixPQUFnQixFQUNoQixZQUFpQztRQUVqQyxNQUFNLFNBQVMsR0FBZTtZQUM1QixRQUFRO1lBQ1IsV0FBVyxFQUFFLE9BQU8sQ0FBQyx1QkFBdUIsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUN6RixZQUFZLEVBQUUsWUFBWSxLQUFLLG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsbUJBQW1CLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxTQUFTO1lBQzVGLFdBQVcsRUFBRTtnQkFDWCxJQUFJLEVBQUUsT0FBTyxDQUFDLElBQUk7YUFDbkI7U0FDRixDQUFDO1FBQ0YsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ2pELENBQUM7K0dBakNVLGtCQUFrQjttSEFBbEIsa0JBQWtCOzs0RkFBbEIsa0JBQWtCO2tCQUQ5QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSU9wZXJhdGlvbiwgSVJlc3VsdCwgT3BlcmF0aW9uU2VydmljZSB9IGZyb20gJ0BjOHkvY2xpZW50JztcbmltcG9ydCB7IGdldHRleHQsIE9wdGlvbnNTZXJ2aWNlIH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cyc7XG5pbXBvcnQgeyBDb21tYW5kLCBDb21tYW5kRGVsaXZlcnlUeXBlLCBEZWxpdmVyeVR5cGUgfSBmcm9tICcuL2RldmljZS1zaGVsbC5tb2RlbCc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBEZXZpY2VTaGVsbFNlcnZpY2Uge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIG9wdGlvbnNTZXJ2aWNlOiBPcHRpb25zU2VydmljZSwgcHJpdmF0ZSBvcGVyYXRpb25TZXJ2aWNlOiBPcGVyYXRpb25TZXJ2aWNlKSB7fVxuXG4gIGdldERlbGl2ZXJ5VHlwZXMoKTogRGVsaXZlcnlUeXBlW10ge1xuICAgIHJldHVybiBbXG4gICAgICB7XG4gICAgICAgIG5hbWU6IGdldHRleHQoQ29tbWFuZERlbGl2ZXJ5VHlwZS5ERUZBVUxUKSxcbiAgICAgICAgZGVmYXVsdDogdHJ1ZVxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogZ2V0dGV4dChDb21tYW5kRGVsaXZlcnlUeXBlLlNNUylcbiAgICAgIH1cbiAgICBdO1xuICB9XG5cbiAgYXN5bmMgY2FuU2VuZENvbW1hbmRzVmlhU01TKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIHJldHVybiAhIShhd2FpdCB0aGlzLm9wdGlvbnNTZXJ2aWNlLmdldFN5c3RlbU9wdGlvbignbWVzc2FnaW5nJywgJ3Byb3ZpZGVyJywgZmFsc2UpKTtcbiAgfVxuXG4gIGNyZWF0ZUNvbW1hbmRPcGVyYXRpb24oXG4gICAgZGV2aWNlSWQ6IHN0cmluZyxcbiAgICBjb21tYW5kOiBDb21tYW5kLFxuICAgIGRlbGl2ZXJ5VHlwZTogQ29tbWFuZERlbGl2ZXJ5VHlwZVxuICApOiBQcm9taXNlPElSZXN1bHQ8SU9wZXJhdGlvbj4+IHtcbiAgICBjb25zdCBvcGVyYXRpb246IElPcGVyYXRpb24gPSB7XG4gICAgICBkZXZpY2VJZCxcbiAgICAgIGRlc2NyaXB0aW9uOiBnZXR0ZXh0KCdFeGVjdXRlIHNoZWxsIGNvbW1hbmQnKSArIChjb21tYW5kLm5hbWUgPyBgOiAke2NvbW1hbmQubmFtZX1gIDogJycpLFxuICAgICAgZGVsaXZlcnlUeXBlOiBkZWxpdmVyeVR5cGUgPT09IENvbW1hbmREZWxpdmVyeVR5cGUuU01TID8gQ29tbWFuZERlbGl2ZXJ5VHlwZS5TTVMgOiB1bmRlZmluZWQsXG4gICAgICBjOHlfQ29tbWFuZDoge1xuICAgICAgICB0ZXh0OiBjb21tYW5kLnRleHRcbiAgICAgIH1cbiAgICB9O1xuICAgIHJldHVybiB0aGlzLm9wZXJhdGlvblNlcnZpY2UuY3JlYXRlKG9wZXJhdGlvbik7XG4gIH1cbn1cbiJdfQ==