UNPKG

@iotize/tap-scripts

Version:

IoTize Tap scripts

76 lines 5.9 kB
"use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.CComInstruction = exports.CComInstructionType = void 0; const errors_1 = require("../errors"); const abstract_instruction_1 = require("./abstract-instruction"); var CComInstructionType; (function (CComInstructionType) { CComInstructionType["RandStart"] = "RandStart"; CComInstructionType["AutoRandStartOn"] = "AutoRandStartOn"; CComInstructionType["AutoRandStartOff"] = "AutoRandStartOff"; CComInstructionType["Enable"] = "Enable"; CComInstructionType["Disable"] = "Disable"; })(CComInstructionType = exports.CComInstructionType || (exports.CComInstructionType = {})); class CComInstruction extends abstract_instruction_1.AbstractInstruction { constructor(type, parserContext) { super(); this.type = type; this.parserContext = parserContext; } run(context) { return __awaiter(this, void 0, void 0, function* () { try { switch (this.type) { case CComInstructionType.AutoRandStartOn: context.store(CComInstruction.STORE_KEY, true); return; case CComInstructionType.AutoRandStartOff: context.store(CComInstruction.STORE_KEY, false); return; case CComInstructionType.Disable: yield context.device.encryption.pause(); return; case CComInstructionType.Enable: yield context.device.encryption.resume(); return; case CComInstructionType.RandStart: yield context.device.encryption.start(); return; default: return Promise.reject(errors_1.ScriptError.instructionPartiallyImplemented(this, `command type ${this.type} does not exist or is not implemented`)); } } catch (err) { throw errors_1.ScriptError.instructionExecError(err, this.parserContext); } }); } describe() { switch (this.type) { case 'Enable': return `Enable encryption (restaure session key if it exists)`; case 'RandStart': return `Enable encryption (with new session key)`; case 'Disable': return 'Disable encryption'; case 'AutoRandStartOn': return 'Enable encryption after connect'; case 'AutoRandStartOff': return 'Disable encryption after connect'; default: return JSON.stringify(this); } } } exports.CComInstruction = CComInstruction; CComInstruction.STORE_KEY = 'randstartafterconnect'; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2NvbS1pbnN0cnVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvaW5zdHJ1Y3Rpb25zL2Njb20taW5zdHJ1Y3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBRUEsc0NBQXdDO0FBRXhDLGlFQUE2RDtBQUU3RCxJQUFZLG1CQU1YO0FBTkQsV0FBWSxtQkFBbUI7SUFDM0IsOENBQXVCLENBQUE7SUFDdkIsMERBQW1DLENBQUE7SUFDbkMsNERBQXFDLENBQUE7SUFDckMsd0NBQWlCLENBQUE7SUFDakIsMENBQW1CLENBQUE7QUFDdkIsQ0FBQyxFQU5XLG1CQUFtQixHQUFuQiwyQkFBbUIsS0FBbkIsMkJBQW1CLFFBTTlCO0FBRUQsTUFBYSxlQUFnQixTQUFRLDBDQUF3QjtJQUd6RCxZQUNXLElBQXlCLEVBQ3pCLGFBQWlDO1FBRXhDLEtBQUssRUFBRSxDQUFDO1FBSEQsU0FBSSxHQUFKLElBQUksQ0FBcUI7UUFDekIsa0JBQWEsR0FBYixhQUFhLENBQW9CO0lBRzVDLENBQUM7SUFFWSxHQUFHLENBQUMsT0FBbUM7O1lBQ2hELElBQUk7Z0JBQ0EsUUFBUSxJQUFJLENBQUMsSUFBSSxFQUFFO29CQUNmLEtBQUssbUJBQW1CLENBQUMsZUFBZTt3QkFDcEMsT0FBTyxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDO3dCQUMvQyxPQUFPO29CQUNYLEtBQUssbUJBQW1CLENBQUMsZ0JBQWdCO3dCQUNyQyxPQUFPLENBQUMsS0FBSyxDQUFDLGVBQWUsQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLENBQUM7d0JBQ2hELE9BQU87b0JBQ1gsS0FBSyxtQkFBbUIsQ0FBQyxPQUFPO3dCQUM1QixNQUFNLE9BQU8sQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxDQUFDO3dCQUN4QyxPQUFPO29CQUNYLEtBQUssbUJBQW1CLENBQUMsTUFBTTt3QkFDM0IsTUFBTSxPQUFPLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsQ0FBQzt3QkFDekMsT0FBTztvQkFDWCxLQUFLLG1CQUFtQixDQUFDLFNBQVM7d0JBQzlCLE1BQU0sT0FBTyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLENBQUM7d0JBQ3hDLE9BQU87b0JBQ1g7d0JBQ0ksT0FBTyxPQUFPLENBQUMsTUFBTSxDQUNqQixvQkFBVyxDQUFDLCtCQUErQixDQUN2QyxJQUFJLEVBQ0osZ0JBQWdCLElBQUksQ0FBQyxJQUFJLHVDQUF1QyxDQUNuRSxDQUNKLENBQUM7aUJBQ1Q7YUFDSjtZQUFDLE9BQU8sR0FBUSxFQUFFO2dCQUNmLE1BQU0sb0JBQVcsQ0FBQyxvQkFBb0IsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO2FBQ25FO1FBQ0wsQ0FBQztLQUFBO0lBRUQsUUFBUTtRQUNKLFFBQVEsSUFBSSxDQUFDLElBQUksRUFBRTtZQUNmLEtBQUssUUFBUTtnQkFDVCxPQUFPLHVEQUF1RCxDQUFDO1lBQ25FLEtBQUssV0FBVztnQkFDWixPQUFPLDBDQUEwQyxDQUFDO1lBQ3RELEtBQUssU0FBUztnQkFDVixPQUFPLG9CQUFvQixDQUFDO1lBQ2hDLEtBQUssaUJBQWlCO2dCQUNsQixPQUFPLGlDQUFpQyxDQUFDO1lBQzdDLEtBQUssa0JBQWtCO2dCQUNuQixPQUFPLGtDQUFrQyxDQUFDO1lBQzlDO2dCQUNJLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNuQztJQUNMLENBQUM7O0FBeERMLDBDQXlEQztBQXhEaUIseUJBQVMsR0FBRyx1QkFBdUIsQ0FBQyJ9