@elshaer/homebridge-lg-thinq
Version:
A Homebridge plugin for controlling/monitoring LG ThinQ device via LG ThinQ platform.
60 lines • 3.43 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.SoilWash = exports.ChildLock = exports.RemoteStart = exports.WasherState = void 0;
const helper_1 = require("../helper");
var WasherState;
(function (WasherState) {
WasherState["POWEROFF"] = "@WM_STATE_POWER_OFF_W";
WasherState["INITIAL"] = "@WM_STATE_INITIAL_W";
WasherState["PAUSE"] = "@WM_STATE_PAUSE_W";
WasherState["RESERVED"] = "@WM_STATE_RESERVE_W";
WasherState["DETECTING"] = "@WM_STATE_DETECTING_W";
WasherState["RUNNING"] = "@WM_STATE_RUNNING_W";
WasherState["RINSING"] = "@WM_STATE_RINSING_W";
WasherState["SPINNING"] = "@WM_STATE_SPINNING_W";
WasherState["DRYING"] = "@WM_STATE_DRYING_W";
WasherState["END"] = "@WM_STATE_END_W";
WasherState["COOLDOWN"] = "@WM_STATE_COOLDOWN_W";
WasherState["RINSEHOLD"] = "@WM_STATE_RINSEHOLD_W";
WasherState["WASH_REFRESHING"] = "@WM_STATE_WASH_REFRESHING_W";
WasherState["STEAMSOFTENING"] = "@WM_STATE_STEAMSOFTENING_W";
WasherState["ERROR"] = "@WM_STATE_ERROR_W";
})(WasherState = exports.WasherState || (exports.WasherState = {}));
var RemoteStart;
(function (RemoteStart) {
RemoteStart["REMOTE_START_OFF"] = "@CP_OFF_EN_W";
RemoteStart["REMOTE_START_ON"] = "@CP_ON_EN_W";
})(RemoteStart = exports.RemoteStart || (exports.RemoteStart = {}));
var ChildLock;
(function (ChildLock) {
ChildLock["CHILDLOCK_OFF"] = "@CP_OFF_EN_W";
ChildLock["CHILDLOCK_ON"] = "@CP_ON_EN_W";
})(ChildLock = exports.ChildLock || (exports.ChildLock = {}));
var SoilWash;
(function (SoilWash) {
SoilWash["NO_SOILWASH"] = "-";
SoilWash["SOILWASH_TURBO_WASH"] = "@WM_FL24_TITAN_SOIL_LIGHT_W";
SoilWash["SOILWASH_TIMESAVE"] = "@WM_FL24_TITAN_SOIL_NORMAL_W";
SoilWash["SOILWASH_NORMAL"] = "@WM_FL24_TITAN_SOIL_HEAVY_W";
})(SoilWash = exports.SoilWash || (exports.SoilWash = {}));
function WasherDryer(deviceModel, decodedMonitor) {
return {
washerDryer: {
state: (0, helper_1.lookupEnumIndex)(WasherState, (0, helper_1.loopupEnum)(deviceModel, decodedMonitor, 'State')) || 'POWEROFF',
preState: (0, helper_1.lookupEnumIndex)(WasherState, (0, helper_1.loopupEnum)(deviceModel, decodedMonitor, 'PreState')) || 'POWEROFF',
remoteStart: (0, helper_1.lookupEnumIndex)(RemoteStart, (0, helper_1.loopupEnum)(deviceModel, decodedMonitor, 'RemoteStart')) || 'REMOTE_START_OFF',
initialBit: (decodedMonitor['InitialBit'] || false) ? 'INITIAL_BIT_ON' : 'INITIAL_BIT_OFF',
childLock: (0, helper_1.lookupEnumIndex)(ChildLock, (0, helper_1.loopupEnum)(deviceModel, decodedMonitor, 'ChildLock')) || 'CHILDLOCK_OFF',
TCLCount: (decodedMonitor['TCLCount'] || 0),
reserveTimeHour: parseInt(decodedMonitor['Reserve_Time_H'] || 0),
reserveTimeMinute: parseInt(decodedMonitor['Reserve_Time_M'] || 0),
remainTimeHour: parseInt(decodedMonitor['Remain_Time_H'] || 0),
remainTimeMinute: parseInt(decodedMonitor['Remain_Time_M'] || 0),
initialTimeHour: parseInt(decodedMonitor['Initial_Time_H'] || 0),
initialTimeMinute: parseInt(decodedMonitor['Initial_Time_M'] || 0),
soilWash: (0, helper_1.lookupEnumIndex)(SoilWash, (0, helper_1.loopupEnum)(deviceModel, decodedMonitor, 'Soil')) || 'NO_SOILWASH',
},
};
}
exports.default = WasherDryer;
//# sourceMappingURL=WasherDryer.js.map