@elshaer/homebridge-lg-thinq
Version:
A Homebridge plugin for controlling/monitoring LG ThinQ device via LG ThinQ platform.
34 lines • 1.76 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.DoorOpenState = void 0;
const helper_1 = require("../helper");
var DoorOpenState;
(function (DoorOpenState) {
DoorOpenState["OPEN"] = "OPEN";
DoorOpenState["CLOSE"] = "CLOSE";
})(DoorOpenState = exports.DoorOpenState || (exports.DoorOpenState = {}));
function RefState(deviceModel, decodedMonitor) {
const snapshot = {
refState: {
fridgeTemp: decodedMonitor['TempRefrigerator'] || deviceModel.default('TempRefrigerator') || '0',
freezerTemp: decodedMonitor['TempFreezer'] || deviceModel.default('TempFreezer') || '0',
// eslint-disable-next-line max-len
atLeastOneDoorOpen: (0, helper_1.lookupEnumIndex)(DoorOpenState, (0, helper_1.loopupEnum)(deviceModel, decodedMonitor, 'DoorOpenState') || deviceModel.default('DoorOpenState')),
tempUnit: parseInt(decodedMonitor['TempUnit'] || deviceModel.default('TempUnit')) ? 'CELSIUS' : 'FAHRENHEIT',
},
};
snapshot.refState.fridgeTemp = parseInt(snapshot.refState.fridgeTemp);
snapshot.refState.freezerTemp = parseInt(snapshot.refState.freezerTemp);
if ('IcePlus' in decodedMonitor) {
snapshot.refState['expressMode'] = decodedMonitor['IcePlus'] || deviceModel.default('IcePlus') || '0';
}
if ('ExpressFridge' in decodedMonitor) {
snapshot.refState['expressFridge'] = decodedMonitor['ExpressFridge'] || deviceModel.default('ExpressFridge') || '0';
}
if ('EcoFriendly' in decodedMonitor) {
snapshot.refState['ecoFriendly'] = decodedMonitor['EcoFriendly'] || deviceModel.default('EcoFriendly') || '0';
}
return snapshot;
}
exports.default = RefState;
//# sourceMappingURL=RefState.js.map