UNPKG

shelly-sdk

Version:

Shelly SDK for Node.js with Types definition

208 lines 7.9 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.marshallRemoteSettings = exports.unmarshallRemoteSettings = void 0; const relay_1 = require("./relay"); const unmarshallRemoteSettings = (settings) => { if (!settings) { throw new Error('Invalid settings: ' + settings); } return { device: { type: settings.device.type, mac: settings.device.mac, hostname: settings.device.hostname, num_outputs: settings.device.num_outputs, }, wifiAccessPoint: { enabled: settings.wifi_ap.enabled, ssid: settings.wifi_ap.ssid, key: settings.wifi_ap.key, }, wifi: { enabled: settings.wifi_sta.enabled, ssid: settings.wifi_sta.ssid, ipv4Method: settings.wifi_sta.ipv4_method, ip: settings.wifi_sta.ip, gw: settings.wifi_sta.gw, mask: settings.wifi_sta.mask, dns: settings.wifi_sta.dns, }, wifi02: { enabled: settings.wifi_sta1.enabled, ssid: settings.wifi_sta1.ssid, ipv4Method: settings.wifi_sta1.ipv4_method, ip: settings.wifi_sta1.ip, gw: settings.wifi_sta1.gw, mask: settings.wifi_sta1.mask, dns: settings.wifi_sta1.dns, }, accessPointRoaming: { enabled: settings.ap_roaming.enabled, threshold: settings.ap_roaming.threshold, }, mqtt: { enable: settings.mqtt.enable, server: settings.mqtt.server, user: settings.mqtt.user, id: settings.mqtt.id, reconnect_timeout_max: settings.mqtt.reconnect_timeout_max, reconnect_timeout_min: settings.mqtt.reconnect_timeout_min, clean_session: settings.mqtt.clean_session, keep_alive: settings.mqtt.keep_alive, max_qos: settings.mqtt.max_qos, retain: settings.mqtt.retain, update_period: settings.mqtt.update_period, }, coiot: { enabled: settings.coiot.enabled, updatePeriod: settings.coiot.update_period, peer: settings.coiot.peer, }, sntp: { server: settings.sntp.server, enabled: settings.sntp.enabled }, login: { enabled: settings.login.enabled, unprotected: settings.login.unprotected, username: settings.login.username, }, pinCode: settings.pin_code, name: settings.name, fw: settings.fw, factoryResetFromSwitch: settings.factory_reset_from_switch, discoverable: settings.discoverable, buildInfo: { id: settings.build_info.build_id, timestamp: settings.build_info.build_timestamp, version: settings.build_info.build_version, }, cloud: { enabled: settings.cloud.enabled, connected: settings.cloud.connected, }, timezone: settings.timezone, lat: settings.lat, lng: settings.lng, tzAutodetect: settings.tzautodetect, tzUtcOffset: settings.tz_utc_offset, tzDst: settings.tz_dst, tzDstAuto: settings.tz_dst_auto, time: settings.time, unixtime: settings.unixtime, debugEnabled: settings.debug_enable, allowCrossOrigin: settings.allow_cross_origin, enable: settings.ext_switch_enable, reverse: settings.ext_switch_reverse, switchRelays: settings.ext_switch, actions: settings.actions, hwinfo: settings.hwinfo, mode: settings.mode, longpushTime: settings.longpush_time, relays: settings.relays.map(relay_1.unmarshallRelay), extSensors: settings.ext_sensors, extTemperature: settings.ext_temperature, extHumidity: settings.ext_humidity, ecoModeEnabled: settings.eco_mode_enabled, }; }; exports.unmarshallRemoteSettings = unmarshallRemoteSettings; const marshallRemoteSettings = (settings) => { return { device: { type: settings.device.type, mac: settings.device.mac, hostname: settings.device.hostname, num_outputs: settings.device.num_outputs, }, wifi_ap: { enabled: settings.wifiAccessPoint.enabled, ssid: settings.wifiAccessPoint.ssid, key: settings.wifiAccessPoint.key, }, wifi_sta: { enabled: settings.wifi.enabled, ssid: settings.wifi.ssid, ipv4_method: settings.wifi.ipv4Method, ip: settings.wifi.ip, gw: settings.wifi.gw, mask: settings.wifi.mask, dns: settings.wifi.dns, }, wifi_sta1: { enabled: settings.wifi02.enabled, ssid: settings.wifi02.ssid, ipv4_method: settings.wifi02.ipv4Method, ip: settings.wifi02.ip, gw: settings.wifi02.gw, mask: settings.wifi02.mask, dns: settings.wifi02.dns, }, ap_roaming: { enabled: settings.accessPointRoaming.enabled, threshold: settings.accessPointRoaming.threshold, }, mqtt: { enable: settings.mqtt.enable, server: settings.mqtt.server, user: settings.mqtt.user, id: settings.mqtt.id, reconnect_timeout_max: settings.mqtt.reconnect_timeout_max, reconnect_timeout_min: settings.mqtt.reconnect_timeout_min, clean_session: settings.mqtt.clean_session, keep_alive: settings.mqtt.keep_alive, max_qos: settings.mqtt.max_qos, retain: settings.mqtt.retain, update_period: settings.mqtt.update_period, }, coiot: { enabled: settings.coiot.enabled, update_period: settings.coiot.updatePeriod, peer: settings.coiot.peer, }, sntp: { server: settings.sntp.server, enabled: settings.sntp.enabled }, login: { enabled: settings.login.enabled, unprotected: settings.login.unprotected, username: settings.login.username, }, pin_code: settings.pinCode, name: settings.name, fw: settings.fw, factory_reset_from_switch: settings.factoryResetFromSwitch, discoverable: settings.discoverable, build_info: { build_id: settings.buildInfo.id, build_timestamp: settings.buildInfo.timestamp, build_version: settings.buildInfo.version, }, cloud: { enabled: settings.cloud.enabled, connected: settings.cloud.connected, }, timezone: settings.timezone, lat: settings.lat, lng: settings.lng, tzautodetect: settings.tzAutodetect, tz_utc_offset: settings.tzUtcOffset, tz_dst: settings.tzDst, tz_dst_auto: settings.tzDstAuto, time: settings.time, unixtime: settings.unixtime, debug_enable: settings.debugEnabled, allow_cross_origin: settings.allowCrossOrigin, ext_switch_enable: settings.enable, ext_switch_reverse: settings.reverse, ext_switch: settings.switchRelays, actions: settings.actions, hwinfo: settings.hwinfo, mode: settings.mode, longpush_time: settings.longpushTime, relays: settings.relays.map(relay => { return (0, relay_1.marshallRelay)(relay); }), ext_sensors: settings.extSensors, ext_temperature: settings.extTemperature, ext_humidity: settings.extHumidity, eco_mode_enabled: settings.ecoModeEnabled, }; }; exports.marshallRemoteSettings = marshallRemoteSettings; //# sourceMappingURL=settings.js.map