/**
 * Minified by jsDelivr using Terser v5.39.0.
 * Original file: /npm/homebridge-lookin@1.0.10/dist/index.js
 *
 * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
 */
"use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.Platform=void 0;const UDPserver_1=__importDefault(require("./Utilites/UDPserver")),getSavedRemoteControllers_1=__importDefault(require("./Utilites/getSavedRemoteControllers")),type_tv_1=require("./Modules/type_tv"),type_lightBulb_1=require("./Modules/type_lightBulb"),type_humidifier_1=require("./Modules/type_humidifier"),type_airPurifier_1=require("./Modules/type_airPurifier"),type_switch_1=require("./Modules/type_switch"),type_fan_1=require("./Modules/type_fan");module.exports=e=>{e.registerPlatform("homebridge-remote-ir-test","Platform",Platform)};class Platform{constructor(e,t,i,s){this.log=e,this.config=t,this.api=i,this.myAccessories=s,this.Service=this.api.hap.Service,this.Characteristic=this.api.hap.Characteristic,this.config=t,this.api=i,this.myAccessories=[],this.Characteristic=this.api.hap.Characteristic,this.ID="",this.api.on("didFinishLaunching",(async()=>{let e=await(0,UDPserver_1.default)();this.ID=e.ID;const t=await(0,getSavedRemoteControllers_1.default)(e.IP);this.log.info("REMOTES:",t),t.forEach((e=>{switch(e.Type){case"01":this.addAccessory("TV",type_tv_1.TV,e);break;case"03":this.addAccessory("Lightbulb",type_lightBulb_1.Lightbulb,e);break;case"04":this.addAccessory("Humidifier",type_humidifier_1.Humidifier,e);break;case"05":this.addAccessory("Air Purifier",type_airPurifier_1.AirPurifier,e);break;case"06":this.addAccessory("Switch",type_switch_1.Switch,e);break;case"07":this.addAccessory("Fan",type_fan_1.Fan,e)}}))}))}addAccessory(e,t,i){const s=this.api.hap.uuid.generate(`${i.UUID}`),r=this.myAccessories.find((e=>e.UUID===s));if(r)new t(this,r);else{const r=new this.api.platformAccessory(`${e} UUID: ${i.UUID}`,s);r.context.deviceInfo=i.deviceInfo,r.context.IP=i.IP,r.context.ID=this.ID,r.context.name=`${e} UUID: ${i.UUID}`,r.context.UUID=i.UUID,new t(this,r),this.configureAccessory(r),this.api.registerPlatformAccessories("homebridge-remote-ir-test",`${this.config.name}`,[r])}}configureAccessory(e){this.myAccessories.push(e)}}exports.Platform=Platform;
//# sourceMappingURL=/sm/839e77913947fc78e1814f4006b3ab1eedd8ddff866b335e23b58883c78c89c9.map