UNPKG

@shadman-a/homebridge-my-ac

Version:

A Homebridge plugin for controlling/monitoring LG ThinQ devices via LG ThinQ platform.

66 lines 2.68 kB
import AirPurifier from './devices/AirPurifier.js'; import Refrigerator from './devices/Refrigerator.js'; import WasherDryer from './devices/WasherDryer.js'; import Dishwasher from './devices/Dishwasher.js'; import Dehumidifier from './devices/Dehumidifier.js'; import { default as V1helper } from './v1/helper.js'; import { PlatformType } from './lib/constants.js'; import AirConditioner from './devices/AirConditioner.js'; import AeroTower from './devices/AeroTower.js'; import Styler from './devices/Styler.js'; import RangeHood from './devices/RangeHood.js'; import Oven from './devices/Oven.js'; import Microwave from './devices/Microwave.js'; import WasherDryer2 from './devices/WasherDryer2.js'; /** * Platform Accessory * An instance of this class is created for each accessory your platform registers * Each accessory may expose multiple services of different service types. */ export class Helper { static make(device) { if (device.platform === PlatformType.ThinQ1) { // check if thinq1 available return V1helper.make(device); } // thinq2 switch (device.type) { case 'AERO_TOWER': return AeroTower; case 'AIR_PURIFIER': return AirPurifier; case 'REFRIGERATOR': return Refrigerator; case 'WASHER': case 'WASHER_NEW': case 'WASH_TOWER': case 'DRYER': return WasherDryer; case 'WASH_TOWER_2': return WasherDryer2; // new kind of washer case 'DISHWASHER': return Dishwasher; case 'DEHUMIDIFIER': return Dehumidifier; case 'AC': return AirConditioner; case 'STYLER': return Styler; case 'HOOD': return RangeHood; case 'MICROWAVE': return Microwave; case 'OVEN': return Oven; } return null; } static category(device) { switch (device.type) { case 'AIR_PURIFIER': return 19 /* Categories.AIR_PURIFIER */; case 'DEHUMIDIFIER': return 23 /* Categories.AIR_DEHUMIDIFIER */; case 'AC': return 21 /* Categories.AIR_CONDITIONER */; case 'DISHWASHER': return 1 /*Sprinkler*/; case 'OVEN': return 9 /*Thermostat*/; case 'MICROWAVE': return 9 /*air heater*/; default: return 1 /* Categories.OTHER */; } } } export function fToC(fahrenheit) { return parseFloat(((fahrenheit - 32) * 5 / 9).toFixed(1)); } export function cToF(celsius) { return Math.round(celsius * 9 / 5 + 32); } export { normalizeBoolean, normalizeNumber } from './utils/normalize.js'; //# sourceMappingURL=helper.js.map