@switchbot/homebridge-switchbot 3.5.1-beta.12 → 3.5.1-beta.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (150) hide show
  1. package/config.schema.json +19 -3
  2. package/dist/device/blindtilt.d.ts +6 -4
  3. package/dist/device/blindtilt.d.ts.map +1 -1
  4. package/dist/device/blindtilt.js +57 -45
  5. package/dist/device/blindtilt.js.map +1 -1
  6. package/dist/device/bot.d.ts +6 -3
  7. package/dist/device/bot.d.ts.map +1 -1
  8. package/dist/device/bot.js +38 -24
  9. package/dist/device/bot.js.map +1 -1
  10. package/dist/device/ceilinglight.d.ts +6 -3
  11. package/dist/device/ceilinglight.d.ts.map +1 -1
  12. package/dist/device/ceilinglight.js +40 -21
  13. package/dist/device/ceilinglight.js.map +1 -1
  14. package/dist/device/colorbulb.d.ts +6 -3
  15. package/dist/device/colorbulb.d.ts.map +1 -1
  16. package/dist/device/colorbulb.js +42 -31
  17. package/dist/device/colorbulb.js.map +1 -1
  18. package/dist/device/contact.d.ts +6 -3
  19. package/dist/device/contact.d.ts.map +1 -1
  20. package/dist/device/contact.js +40 -28
  21. package/dist/device/contact.js.map +1 -1
  22. package/dist/device/curtain.d.ts +6 -4
  23. package/dist/device/curtain.d.ts.map +1 -1
  24. package/dist/device/curtain.js +35 -22
  25. package/dist/device/curtain.js.map +1 -1
  26. package/dist/device/device.d.ts +13 -2
  27. package/dist/device/device.d.ts.map +1 -1
  28. package/dist/device/device.js +223 -108
  29. package/dist/device/device.js.map +1 -1
  30. package/dist/device/fan.d.ts +6 -3
  31. package/dist/device/fan.d.ts.map +1 -1
  32. package/dist/device/fan.js +48 -29
  33. package/dist/device/fan.js.map +1 -1
  34. package/dist/device/hub.d.ts +6 -3
  35. package/dist/device/hub.d.ts.map +1 -1
  36. package/dist/device/hub.js +43 -26
  37. package/dist/device/hub.js.map +1 -1
  38. package/dist/device/humidifier.d.ts +6 -3
  39. package/dist/device/humidifier.d.ts.map +1 -1
  40. package/dist/device/humidifier.js +43 -26
  41. package/dist/device/humidifier.js.map +1 -1
  42. package/dist/device/iosensor.d.ts +6 -3
  43. package/dist/device/iosensor.d.ts.map +1 -1
  44. package/dist/device/iosensor.js +39 -24
  45. package/dist/device/iosensor.js.map +1 -1
  46. package/dist/device/lightstrip.d.ts +6 -3
  47. package/dist/device/lightstrip.d.ts.map +1 -1
  48. package/dist/device/lightstrip.js +43 -27
  49. package/dist/device/lightstrip.js.map +1 -1
  50. package/dist/device/lock.d.ts +6 -3
  51. package/dist/device/lock.d.ts.map +1 -1
  52. package/dist/device/lock.js +33 -22
  53. package/dist/device/lock.js.map +1 -1
  54. package/dist/device/meter.d.ts +6 -3
  55. package/dist/device/meter.d.ts.map +1 -1
  56. package/dist/device/meter.js +38 -24
  57. package/dist/device/meter.js.map +1 -1
  58. package/dist/device/meterplus.d.ts +6 -3
  59. package/dist/device/meterplus.d.ts.map +1 -1
  60. package/dist/device/meterplus.js +37 -24
  61. package/dist/device/meterplus.js.map +1 -1
  62. package/dist/device/motion.d.ts +6 -3
  63. package/dist/device/motion.d.ts.map +1 -1
  64. package/dist/device/motion.js +33 -22
  65. package/dist/device/motion.js.map +1 -1
  66. package/dist/device/plug.d.ts +6 -3
  67. package/dist/device/plug.d.ts.map +1 -1
  68. package/dist/device/plug.js +27 -16
  69. package/dist/device/plug.js.map +1 -1
  70. package/dist/device/robotvacuumcleaner.d.ts +6 -3
  71. package/dist/device/robotvacuumcleaner.d.ts.map +1 -1
  72. package/dist/device/robotvacuumcleaner.js +34 -21
  73. package/dist/device/robotvacuumcleaner.js.map +1 -1
  74. package/dist/device/waterdetector.d.ts +6 -3
  75. package/dist/device/waterdetector.d.ts.map +1 -1
  76. package/dist/device/waterdetector.js +38 -23
  77. package/dist/device/waterdetector.js.map +1 -1
  78. package/dist/irdevice/airconditioner.d.ts.map +1 -1
  79. package/dist/irdevice/airconditioner.js +19 -72
  80. package/dist/irdevice/airconditioner.js.map +1 -1
  81. package/dist/irdevice/airpurifier.js +4 -4
  82. package/dist/irdevice/airpurifier.js.map +1 -1
  83. package/dist/irdevice/camera.d.ts.map +1 -1
  84. package/dist/irdevice/camera.js +3 -10
  85. package/dist/irdevice/camera.js.map +1 -1
  86. package/dist/irdevice/fan.d.ts.map +1 -1
  87. package/dist/irdevice/fan.js +7 -25
  88. package/dist/irdevice/fan.js.map +1 -1
  89. package/dist/irdevice/irdevice.d.ts +1 -1
  90. package/dist/irdevice/irdevice.js +1 -1
  91. package/dist/irdevice/irdevice.js.map +1 -1
  92. package/dist/irdevice/light.d.ts.map +1 -1
  93. package/dist/irdevice/light.js +9 -27
  94. package/dist/irdevice/light.js.map +1 -1
  95. package/dist/irdevice/other.js +1 -1
  96. package/dist/irdevice/other.js.map +1 -1
  97. package/dist/irdevice/tv.d.ts.map +1 -1
  98. package/dist/irdevice/tv.js +3 -18
  99. package/dist/irdevice/tv.js.map +1 -1
  100. package/dist/irdevice/vacuumcleaner.d.ts.map +1 -1
  101. package/dist/irdevice/vacuumcleaner.js +2 -9
  102. package/dist/irdevice/vacuumcleaner.js.map +1 -1
  103. package/dist/irdevice/waterheater.d.ts.map +1 -1
  104. package/dist/irdevice/waterheater.js +2 -9
  105. package/dist/irdevice/waterheater.js.map +1 -1
  106. package/dist/platform.d.ts +0 -11
  107. package/dist/platform.d.ts.map +1 -1
  108. package/dist/platform.js +11 -184
  109. package/dist/platform.js.map +1 -1
  110. package/dist/settings.d.ts +9 -8
  111. package/dist/settings.d.ts.map +1 -1
  112. package/dist/settings.js.map +1 -1
  113. package/dist/types/bledevicestatus.d.ts +2 -1
  114. package/dist/types/bledevicestatus.d.ts.map +1 -1
  115. package/dist/types/devicestatus.d.ts +1 -1
  116. package/dist/types/devicestatus.d.ts.map +1 -1
  117. package/package.json +9 -9
  118. package/src/device/blindtilt.ts +60 -47
  119. package/src/device/bot.ts +47 -25
  120. package/src/device/ceilinglight.ts +52 -21
  121. package/src/device/colorbulb.ts +45 -31
  122. package/src/device/contact.ts +43 -28
  123. package/src/device/curtain.ts +45 -23
  124. package/src/device/device.ts +226 -96
  125. package/src/device/fan.ts +61 -30
  126. package/src/device/hub.ts +55 -29
  127. package/src/device/humidifier.ts +55 -31
  128. package/src/device/iosensor.ts +45 -27
  129. package/src/device/lightstrip.ts +48 -28
  130. package/src/device/lock.ts +49 -23
  131. package/src/device/meter.ts +54 -26
  132. package/src/device/meterplus.ts +50 -26
  133. package/src/device/motion.ts +45 -24
  134. package/src/device/plug.ts +34 -17
  135. package/src/device/robotvacuumcleaner.ts +49 -23
  136. package/src/device/waterdetector.ts +56 -25
  137. package/src/irdevice/airconditioner.ts +19 -65
  138. package/src/irdevice/airpurifier.ts +4 -4
  139. package/src/irdevice/camera.ts +4 -9
  140. package/src/irdevice/fan.ts +10 -22
  141. package/src/irdevice/irdevice.ts +1 -1
  142. package/src/irdevice/light.ts +10 -24
  143. package/src/irdevice/other.ts +1 -1
  144. package/src/irdevice/tv.ts +5 -16
  145. package/src/irdevice/vacuumcleaner.ts +3 -8
  146. package/src/irdevice/waterheater.ts +3 -8
  147. package/src/platform.ts +11 -184
  148. package/src/settings.ts +10 -8
  149. package/src/types/bledevicestatus.ts +4 -2
  150. package/src/types/devicestatus.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"tv.d.ts","sourceRoot":"","sources":["../../src/irdevice/tv.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,KAAK,EAAE,mBAAmB,EAAE,iBAAiB,EAAW,MAAM,YAAY,CAAC;AAElF;;;;GAIG;AACH,qBAAa,EAAG,SAAQ,YAAY;IAuBhC,QAAQ,CAAC,QAAQ,EAAE,iBAAiB;IArBtC,OAAO,CAAC,UAAU,CAQhB;IAEF,OAAO,CAAC,iBAAiB,CAMvB;gBAKS,QAAQ,EAAE,iBAAiB,EACpC,SAAS,EAAE,iBAAiB,EAC5B,MAAM,EAAE,QAAQ,GAAG,eAAe;IAqF9B,iBAAiB,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAS5D,YAAY,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAgEvD,mBAAmB,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAK9D,SAAS,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAW1D;;;;;;;;;OASG;IACG,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAehC,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAejC,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAY9B,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAYhC,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAYhC,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAY9B,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAYhC,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAYjC,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAYhC,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAYpC,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC;IAYtC,aAAa,CAAC,UAAU,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAwB7C,4BAA4B,IAAI,OAAO,CAAC,IAAI,CAAC;IAqB7C,QAAQ,CAAC,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;CAItC"}
1
+ {"version":3,"file":"tv.d.ts","sourceRoot":"","sources":["../../src/irdevice/tv.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,KAAK,EAAE,mBAAmB,EAAE,iBAAiB,EAAW,MAAM,YAAY,CAAC;AAElF;;;;GAIG;AACH,qBAAa,EAAG,SAAQ,YAAY;IAuBhC,QAAQ,CAAC,QAAQ,EAAE,iBAAiB;IArBtC,OAAO,CAAC,UAAU,CAQhB;IAEF,OAAO,CAAC,iBAAiB,CAMvB;gBAKS,QAAQ,EAAE,iBAAiB,EACpC,SAAS,EAAE,iBAAiB,EAC5B,MAAM,EAAE,QAAQ,GAAG,eAAe;IAqF9B,iBAAiB,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAS5D,YAAY,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAgEvD,mBAAmB,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAK9D,SAAS,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAW1D;;;;;;;;;OASG;IACG,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAehC,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAejC,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAY9B,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAYhC,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAYhC,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAY9B,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAYhC,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAYjC,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAYhC,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAYpC,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC;IAYtC,aAAa,CAAC,UAAU,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAwB7C,4BAA4B,IAAI,OAAO,CAAC,IAAI,CAAC;IAU7C,QAAQ,CAAC,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;CAItC"}
@@ -321,7 +321,7 @@ export class TV extends irdeviceBase {
321
321
  const { body, statusCode } = await this.pushChangeRequest(bodyChange);
322
322
  const deviceStatus = await body.json();
323
323
  await this.pushStatusCodes(statusCode, deviceStatus);
324
- if ((statusCode === 200 || statusCode === 100) && (deviceStatus.statusCode === 200 || deviceStatus.statusCode === 100)) {
324
+ if (await this.successfulStatusCodes(statusCode, deviceStatus)) {
325
325
  await this.successfulPushChange(statusCode, deviceStatus, bodyChange);
326
326
  await this.updateHomeKitCharacteristics();
327
327
  }
@@ -342,24 +342,9 @@ export class TV extends irdeviceBase {
342
342
  async updateHomeKitCharacteristics() {
343
343
  await this.debugLog('updateHomeKitCharacteristics');
344
344
  // Active
345
- if (this.Television.Active === undefined) {
346
- await this.debugLog(`Active: ${this.Television.Active}`);
347
- }
348
- else {
349
- this.accessory.context.Active = this.Television.Active;
350
- this.Television.Service.updateCharacteristic(this.hap.Characteristic.Active, this.Television.Active);
351
- await this.debugLog(`updateCharacteristic Active: ${this.Television.Active}`);
352
- }
345
+ await this.updateCharacteristic(this.Television.Service, this.hap.Characteristic.Active, this.Television.Active, 'Active');
353
346
  // ActiveIdentifier
354
- if (this.Television.ActiveIdentifier === undefined) {
355
- await this.debugLog(`ActiveIdentifier: ${this.Television.ActiveIdentifier}`);
356
- }
357
- else {
358
- this.accessory.context.ActiveIdentifier = this.Television.ActiveIdentifier;
359
- this.Television.Service.updateCharacteristic(this.hap.Characteristic.ActiveIdentifier, this.Television.ActiveIdentifier);
360
- await this.debugLog('updateCharacteristic'
361
- + ` ActiveIdentifier: ${this.Television.ActiveIdentifier}`);
362
- }
347
+ await this.updateCharacteristic(this.Television.Service, this.hap.Characteristic.ActiveIdentifier, this.Television.ActiveIdentifier, 'ActiveIdentifier');
363
348
  }
364
349
  async apiError(e) {
365
350
  this.Television.Service.updateCharacteristic(this.hap.Characteristic.Active, e);
@@ -1 +1 @@
1
- {"version":3,"file":"tv.js","sourceRoot":"","sources":["../../src/irdevice/tv.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAO7C;;;;GAIG;AACH,MAAM,OAAO,EAAG,SAAQ,YAAY;IAuBvB;IAtBX,WAAW;IACH,UAAU,CAQhB;IAEM,iBAAiB,CAMvB;IAEF,wBAAwB;IAExB,YACW,QAA2B,EACpC,SAA4B,EAC5B,MAAkC;QAElC,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;QAJ1B,aAAQ,GAAR,QAAQ,CAAmB;QAMpC,gCAAgC;QAChC,SAAS,CAAC,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,OAAO,CAAC,UAAU,IAAI,EAAE,CAAC;QAClE,IAAI,CAAC,UAAU,GAAG;YAChB,IAAI,EAAE,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,IAAI,GAAG,SAAS,CAAC,WAAW,IAAI,MAAM,CAAC,UAAU,EAAE;YAC1F,cAAc,EAAE,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,cAAc,IAAI,GAAG,SAAS,CAAC,WAAW,IAAI,MAAM,CAAC,UAAU,EAAE;YAC9G,OAAO,EAAE,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAY;YAC1H,MAAM,EAAE,SAAS,CAAC,OAAO,CAAC,MAAM,IAAI,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,MAAM,CAAC,QAAQ;YAC3E,gBAAgB,EAAE,SAAS,CAAC,OAAO,CAAC,gBAAgB,IAAI,CAAC;YACzD,kBAAkB,EAAE,SAAS,CAAC,OAAO,CAAC,kBAAkB,IAAI,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,kBAAkB,CAAC,mBAAmB;YAC1H,SAAS,EAAE,SAAS,CAAC,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,SAAS,CAAC,IAAI;SACjF,CAAC;QACF,SAAS,CAAC,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,UAAoB,CAAC;QAEzD,QAAQ,MAAM,CAAC,UAAU,EAAE,CAAC;YAC1B,KAAK,SAAS,CAAC;YACf,KAAK,aAAa;gBAChB,SAAS,CAAC,QAAQ,oDAA2C,CAAC;gBAC9D,MAAM;YACR,KAAK,MAAM,CAAC;YACZ,KAAK,UAAU;gBACb,SAAS,CAAC,QAAQ,+DAAsD,CAAC;gBACzE,MAAM;YACR,KAAK,KAAK,CAAC;YACX,KAAK,SAAS,CAAC;YACf,KAAK,aAAa,CAAC;YACnB,KAAK,iBAAiB;gBACpB,SAAS,CAAC,QAAQ,2DAAkD,CAAC;gBACrE,MAAM;YACR;gBACE,SAAS,CAAC,QAAQ,uDAA8C,CAAC;QACrE,CAAC;QAED,IAAI,CAAC,UAAU,CAAC,OAAO;aACpB,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,kBAAkB,EAAE,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,kBAAkB,CAAC,mBAAmB,CAAC;aAC7H,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,cAAc,EAAE,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC;aACzF,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;QAE7D,IAAI,CAAC,UAAU,CAAC,OAAO;aACpB,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,gBAAgB,EAAE,CAAC,CAAC;aAC9D,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,MAAM,CAAC;aACjD,KAAK,CAAC,GAAG,EAAE;YACV,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QAChC,CAAC,CAAC;aACD,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAEpC,IAAI,CAAC,UAAU,CAAC,OAAO;aACpB,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,gBAAgB,CAAC;aAC3D,KAAK,CAAC,GAAG,EAAE;YACV,OAAO,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC;QAC1C,CAAC,CAAC;aACD,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAE9C,IAAI,CAAC,UAAU,CAAC,OAAO;aACpB,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,SAAS,CAAC;aACpD,KAAK,CAAC,GAAG,EAAE;YACV,OAAO,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC;QACnC,CAAC,CAAC;aACD,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAEvC,uCAAuC;QACvC,SAAS,CAAC,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC,OAAO,CAAC,iBAAiB,IAAI,EAAE,CAAC;QAChF,IAAI,CAAC,iBAAiB,GAAG;YACvB,IAAI,EAAE,SAAS,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,IAAI,GAAG,SAAS,CAAC,WAAW,IAAI,MAAM,CAAC,UAAU,UAAU;YACzG,OAAO,EAAE,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAAY;YACxI,MAAM,EAAE,SAAS,CAAC,OAAO,CAAC,MAAM,IAAI,KAAK;YACzC,iBAAiB,EAAE,SAAS,CAAC,OAAO,CAAC,iBAAiB,IAAI,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,iBAAiB,CAAC,QAAQ;YAC5G,cAAc,EAAE,SAAS,CAAC,OAAO,CAAC,cAAc,IAAI,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,cAAc,CAAC,SAAS;SACrG,CAAC;QACF,SAAS,CAAC,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAA2B,CAAC;QAEvE,IAAI,CAAC,iBAAiB,CAAC,OAAO;aAC3B,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC;aAC5E,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC;aACxF,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,iBAAiB,EAAE,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,iBAAiB,CAAC,QAAQ,CAAC;aAChH,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,cAAc,CAAC;aACzD,KAAK,CAAC,GAAG,EAAE;YACV,OAAO,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC;QAC/C,CAAC,CAAC;aACD,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9C,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,KAA0B;QAChD,MAAM,IAAI,CAAC,QAAQ,CAAC,mBAAmB,KAAK,EAAE,CAAC,CAAC;QAChD,IAAI,KAAK,KAAK,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,cAAc,CAAC,SAAS,EAAE,CAAC;YAC/D,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC7B,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC/B,CAAC;IACH,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,KAA0B;QAC3C,QAAQ,KAAK,EAAE,CAAC;YACd,KAAK,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;gBAC9C,MAAM,IAAI,CAAC,QAAQ,CAAC,gCAAgC,CAAC,CAAC;gBACtD,MAAM;YACR,CAAC;YACD,KAAK,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC;gBACpD,MAAM,IAAI,CAAC,QAAQ,CAAC,sCAAsC,CAAC,CAAC;gBAC5D,MAAM;YACR,CAAC;YACD,KAAK,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;gBAClD,MAAM,IAAI,CAAC,QAAQ,CAAC,oCAAoC,CAAC,CAAC;gBAC1D,MAAM;YACR,CAAC;YACD,KAAK,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC;gBACtD,MAAM,IAAI,CAAC,QAAQ,CAAC,wCAAwC,CAAC,CAAC;gBAC9D,MAAM;YACR,CAAC;YACD,KAAK,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAChD,MAAM,IAAI,CAAC,QAAQ,CAAC,kCAAkC,CAAC,CAAC;gBACxD,uBAAuB;gBACvB,MAAM;YACR,CAAC;YACD,KAAK,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;gBAClD,MAAM,IAAI,CAAC,QAAQ,CAAC,oCAAoC,CAAC,CAAC;gBAC1D,yBAAyB;gBACzB,MAAM;YACR,CAAC;YACD,KAAK,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;gBAClD,MAAM,IAAI,CAAC,QAAQ,CAAC,oCAAoC,CAAC,CAAC;gBAC1D,yBAAyB;gBACzB,MAAM;YACR,CAAC;YACD,KAAK,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC;gBACnD,MAAM,IAAI,CAAC,QAAQ,CAAC,qCAAqC,CAAC,CAAC;gBAC3D,0BAA0B;gBAC1B,MAAM;YACR,CAAC;YACD,KAAK,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;gBAC9C,MAAM,IAAI,CAAC,QAAQ,CAAC,gCAAgC,CAAC,CAAC;gBACtD,uBAAuB;gBACvB,MAAM;YACR,CAAC;YACD,KAAK,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC5C,MAAM,IAAI,CAAC,QAAQ,CAAC,8BAA8B,CAAC,CAAC;gBACpD,yBAAyB;gBACzB,MAAM;YACR,CAAC;YACD,KAAK,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC5C,MAAM,IAAI,CAAC,QAAQ,CAAC,8BAA8B,CAAC,CAAC;gBACpD,MAAM;YACR,CAAC;YACD,KAAK,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;gBAClD,MAAM,IAAI,CAAC,QAAQ,CAAC,oCAAoC,CAAC,CAAC;gBAC1D,MAAM;YACR,CAAC;YACD,KAAK,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC;gBACnD,MAAM,IAAI,CAAC,QAAQ,CAAC,qCAAqC,CAAC,CAAC;gBAC3D,yBAAyB;gBACzB,MAAM;YACR,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,KAA0B;QAClD,MAAM,IAAI,CAAC,QAAQ,CAAC,qBAAqB,KAAK,EAAE,CAAC,CAAC;QAClD,IAAI,CAAC,UAAU,CAAC,gBAAgB,GAAG,KAAK,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,KAA0B;QACxC,MAAM,IAAI,CAAC,QAAQ,CAAC,mBAAmB,KAAK,EAAE,CAAC,CAAC;QAEhD,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,KAAK,CAAC;QAC/B,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACrE,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC/B,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAChC,CAAC;IACH,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,eAAe;QACnB,MAAM,IAAI,CAAC,QAAQ,CAAC,iBAAiB;cACjC,YAAY,IAAI,CAAC,UAAU,CAAC,MAAM,oBAAoB,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAChF,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YAC5F,MAAM,WAAW,GAAW,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;YACrD,MAAM,OAAO,GAAW,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;YAC/C,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC;gBAChC,OAAO,EAAE,OAAO;gBAChB,SAAS,EAAE,SAAS;gBACpB,WAAW,EAAE,WAAW;aACzB,CAAC,CAAC;YACH,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,gBAAgB;QACpB,MAAM,IAAI,CAAC,QAAQ,CAAC,kBAAkB;cAClC,YAAY,IAAI,CAAC,UAAU,CAAC,MAAM,qBAAqB,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;QAClF,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,MAAM,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;YAC/F,MAAM,WAAW,GAAW,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;YACrD,MAAM,OAAO,GAAW,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;YAChD,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC;gBAChC,OAAO,EAAE,OAAO;gBAChB,SAAS,EAAE,SAAS;gBACpB,WAAW,EAAE,WAAW;aACzB,CAAC,CAAC;YACH,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,aAAa;QACjB,MAAM,IAAI,CAAC,QAAQ,CAAC,oCAAoC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;QAClF,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC5B,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC;gBAChC,OAAO,EAAE,IAAI;gBACb,SAAS,EAAE,SAAS;gBACpB,WAAW,EAAE,SAAS;aACvB,CAAC,CAAC;YACH,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,eAAe;QACnB,MAAM,IAAI,CAAC,QAAQ,CAAC,sCAAsC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;QACpF,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC5B,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC;gBAChC,OAAO,EAAE,MAAM;gBACf,SAAS,EAAE,SAAS;gBACpB,WAAW,EAAE,SAAS;aACvB,CAAC,CAAC;YACH,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,eAAe;QACnB,MAAM,IAAI,CAAC,QAAQ,CAAC,sCAAsC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;QACpF,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC5B,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC;gBAChC,OAAO,EAAE,MAAM;gBACf,SAAS,EAAE,SAAS;gBACpB,WAAW,EAAE,SAAS;aACvB,CAAC,CAAC;YACH,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,aAAa;QACjB,MAAM,IAAI,CAAC,QAAQ,CAAC,oCAAoC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;QAClF,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC5B,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC;gBAChC,OAAO,EAAE,IAAI;gBACb,SAAS,EAAE,SAAS;gBACpB,WAAW,EAAE,SAAS;aACvB,CAAC,CAAC;YACH,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,eAAe;QACnB,MAAM,IAAI,CAAC,QAAQ,CAAC,sCAAsC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;QACpF,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC5B,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC;gBAChC,OAAO,EAAE,MAAM;gBACf,SAAS,EAAE,SAAS;gBACpB,WAAW,EAAE,SAAS;aACvB,CAAC,CAAC;YACH,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,gBAAgB;QACpB,MAAM,IAAI,CAAC,QAAQ,CAAC,uCAAuC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;QACrF,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC5B,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC;gBAChC,OAAO,EAAE,OAAO;gBAChB,SAAS,EAAE,SAAS;gBACpB,WAAW,EAAE,SAAS;aACvB,CAAC,CAAC;YACH,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,eAAe;QACnB,MAAM,IAAI,CAAC,QAAQ,CAAC,sCAAsC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;QACpF,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC5B,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC;gBAChC,OAAO,EAAE,MAAM;gBACf,SAAS,EAAE,SAAS;gBACpB,WAAW,EAAE,SAAS;aACvB,CAAC,CAAC;YACH,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,mBAAmB;QACvB,MAAM,IAAI,CAAC,QAAQ,CAAC,0CAA0C,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;QACxF,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC5B,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC;gBAChC,OAAO,EAAE,WAAW;gBACpB,SAAS,EAAE,SAAS;gBACpB,WAAW,EAAE,SAAS;aACvB,CAAC,CAAC;YACH,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,qBAAqB;QACzB,MAAM,IAAI,CAAC,QAAQ,CAAC,4CAA4C,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;QAC1F,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC5B,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC;gBAChC,OAAO,EAAE,WAAW;gBACpB,SAAS,EAAE,SAAS;gBACpB,WAAW,EAAE,SAAS;aACvB,CAAC,CAAC;YACH,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,UAAe;QACjC,MAAM,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;QACrC,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;YAC7C,MAAM,IAAI,CAAC,OAAO,CAAC,2CAA2C,UAAU,GAAG,CAAC,CAAC;YAC7E,IAAI,CAAC;gBACH,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;gBACtE,MAAM,YAAY,GAAQ,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;gBAC5C,MAAM,IAAI,CAAC,eAAe,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;gBACrD,IAAI,CAAC,UAAU,KAAK,GAAG,IAAI,UAAU,KAAK,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,KAAK,GAAG,IAAI,YAAY,CAAC,UAAU,KAAK,GAAG,CAAC,EAAE,CAAC;oBACvH,MAAM,IAAI,CAAC,oBAAoB,CAAC,UAAU,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;oBACtE,MAAM,IAAI,CAAC,4BAA4B,EAAE,CAAC;gBAC5C,CAAC;qBAAM,CAAC;oBACN,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;oBAClC,MAAM,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;gBACjD,CAAC;YACH,CAAC;YAAC,OAAO,CAAM,EAAE,CAAC;gBAChB,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACvB,MAAM,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;YAChC,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,CAAC,OAAO,CAAC,oBAAoB,IAAI,CAAC,MAAM,CAAC,cAAc,wCAAwC,CAAC,CAAC;QAC7G,CAAC;IACH,CAAC;IAED,KAAK,CAAC,4BAA4B;QAChC,MAAM,IAAI,CAAC,QAAQ,CAAC,8BAA8B,CAAC,CAAC;QACpD,SAAS;QACT,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YACzC,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC;QAC3D,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;YACvD,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YACrG,MAAM,IAAI,CAAC,QAAQ,CAAC,gCAAgC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC;QAChF,CAAC;QACD,mBAAmB;QACnB,IAAI,IAAI,CAAC,UAAU,CAAC,gBAAgB,KAAK,SAAS,EAAE,CAAC;YACnD,MAAM,IAAI,CAAC,QAAQ,CAAC,qBAAqB,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAAE,CAAC,CAAC;QAC/E,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC;YAC3E,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,gBAAgB,EAAE,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;YACzH,MAAM,IAAI,CAAC,QAAQ,CAAC,sBAAsB;kBACtC,sBAAsB,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAAE,CAAC,CAAC;QAChE,CAAC;IACH,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,CAAM;QACnB,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAChF,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;IAC5F,CAAC;CACF"}
1
+ {"version":3,"file":"tv.js","sourceRoot":"","sources":["../../src/irdevice/tv.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"vacuumcleaner.d.ts","sourceRoot":"","sources":["../../src/irdevice/vacuumcleaner.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,KAAK,EAAE,mBAAmB,EAAE,iBAAiB,EAAW,MAAM,YAAY,CAAC;AAElF;;;;GAIG;AACH,qBAAa,aAAc,SAAQ,YAAY;IAS3C,QAAQ,CAAC,QAAQ,EAAE,iBAAiB;IAPtC,OAAO,CAAC,MAAM,CAIZ;gBAGS,QAAQ,EAAE,iBAAiB,EACpC,SAAS,EAAE,iBAAiB,EAC5B,MAAM,EAAE,QAAQ,GAAG,eAAe;IAsB9B,KAAK,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAYtD;;;;;OAKG;IACG,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAe9B,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAe/B,WAAW,CAAC,UAAU,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAwB3C,4BAA4B,IAAI,OAAO,CAAC,IAAI,CAAC;IAY7C,QAAQ,CAAC,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;CAGtC"}
1
+ {"version":3,"file":"vacuumcleaner.d.ts","sourceRoot":"","sources":["../../src/irdevice/vacuumcleaner.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,KAAK,EAAE,mBAAmB,EAAE,iBAAiB,EAAW,MAAM,YAAY,CAAC;AAElF;;;;GAIG;AACH,qBAAa,aAAc,SAAQ,YAAY;IAS3C,QAAQ,CAAC,QAAQ,EAAE,iBAAiB;IAPtC,OAAO,CAAC,MAAM,CAIZ;gBAGS,QAAQ,EAAE,iBAAiB,EACpC,SAAS,EAAE,iBAAiB,EAC5B,MAAM,EAAE,QAAQ,GAAG,eAAe;IAsB9B,KAAK,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAYtD;;;;;OAKG;IACG,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAe9B,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAe/B,WAAW,CAAC,UAAU,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAwB3C,4BAA4B,IAAI,OAAO,CAAC,IAAI,CAAC;IAO7C,QAAQ,CAAC,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;CAGtC"}
@@ -84,7 +84,7 @@ export class VacuumCleaner extends irdeviceBase {
84
84
  const { body, statusCode } = await this.pushChangeRequest(bodyChange);
85
85
  const deviceStatus = await body.json();
86
86
  await this.pushStatusCodes(statusCode, deviceStatus);
87
- if ((statusCode === 200 || statusCode === 100) && (deviceStatus.statusCode === 200 || deviceStatus.statusCode === 100)) {
87
+ if (await this.successfulStatusCodes(statusCode, deviceStatus)) {
88
88
  await this.successfulPushChange(statusCode, deviceStatus, bodyChange);
89
89
  await this.updateHomeKitCharacteristics();
90
90
  }
@@ -105,14 +105,7 @@ export class VacuumCleaner extends irdeviceBase {
105
105
  async updateHomeKitCharacteristics() {
106
106
  await this.debugLog('updateHomeKitCharacteristics');
107
107
  // On
108
- if (this.Switch.On === undefined) {
109
- await this.debugLog(`On: ${this.Switch.On}`);
110
- }
111
- else {
112
- this.accessory.context.On = this.Switch.On;
113
- this.Switch.Service.updateCharacteristic(this.hap.Characteristic.On, this.Switch.On);
114
- await this.debugLog(`updateCharacteristic On: ${this.Switch.On}`);
115
- }
108
+ await this.updateCharacteristic(this.Switch.Service, this.hap.Characteristic.On, this.Switch.On, 'On');
116
109
  }
117
110
  async apiError(e) {
118
111
  this.Switch.Service.updateCharacteristic(this.hap.Characteristic.On, e);
@@ -1 +1 @@
1
- {"version":3,"file":"vacuumcleaner.js","sourceRoot":"","sources":["../../src/irdevice/vacuumcleaner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vacuumcleaner.js","sourceRoot":"","sources":["../../src/irdevice/vacuumcleaner.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"waterheater.d.ts","sourceRoot":"","sources":["../../src/irdevice/waterheater.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,KAAK,EAAE,mBAAmB,EAAE,iBAAiB,EAAW,MAAM,YAAY,CAAC;AAElF;;;;GAIG;AACH,qBAAa,WAAY,SAAQ,YAAY;IASzC,QAAQ,CAAC,QAAQ,EAAE,iBAAiB;IAPtC,OAAO,CAAC,KAAK,CAIX;gBAGS,QAAQ,EAAE,iBAAiB,EACpC,SAAS,EAAE,iBAAiB,EAC5B,MAAM,EAAE,QAAQ,GAAG,eAAe;IAuB9B,SAAS,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAa1D;;;;;OAKG;IACG,wBAAwB,IAAI,OAAO,CAAC,IAAI,CAAC;IAezC,yBAAyB,IAAI,OAAO,CAAC,IAAI,CAAC;IAe1C,WAAW,CAAC,UAAU,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAwB3C,4BAA4B,IAAI,OAAO,CAAC,IAAI,CAAC;IAY7C,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE;QAAE,CAAC,EAAE,GAAG,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAGjD"}
1
+ {"version":3,"file":"waterheater.d.ts","sourceRoot":"","sources":["../../src/irdevice/waterheater.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,KAAK,EAAE,mBAAmB,EAAE,iBAAiB,EAAW,MAAM,YAAY,CAAC;AAElF;;;;GAIG;AACH,qBAAa,WAAY,SAAQ,YAAY;IASzC,QAAQ,CAAC,QAAQ,EAAE,iBAAiB;IAPtC,OAAO,CAAC,KAAK,CAIX;gBAGS,QAAQ,EAAE,iBAAiB,EACpC,SAAS,EAAE,iBAAiB,EAC5B,MAAM,EAAE,QAAQ,GAAG,eAAe;IAuB9B,SAAS,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAa1D;;;;;OAKG;IACG,wBAAwB,IAAI,OAAO,CAAC,IAAI,CAAC;IAezC,yBAAyB,IAAI,OAAO,CAAC,IAAI,CAAC;IAe1C,WAAW,CAAC,UAAU,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAwB3C,4BAA4B,IAAI,OAAO,CAAC,IAAI,CAAC;IAO7C,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE;QAAE,CAAC,EAAE,GAAG,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAGjD"}
@@ -86,7 +86,7 @@ export class WaterHeater extends irdeviceBase {
86
86
  const { body, statusCode } = await this.pushChangeRequest(bodyChange);
87
87
  const deviceStatus = await body.json();
88
88
  await this.pushStatusCodes(statusCode, deviceStatus);
89
- if ((statusCode === 200 || statusCode === 100) && (deviceStatus.statusCode === 200 || deviceStatus.statusCode === 100)) {
89
+ if (await this.successfulStatusCodes(statusCode, deviceStatus)) {
90
90
  await this.successfulPushChange(statusCode, deviceStatus, bodyChange);
91
91
  await this.updateHomeKitCharacteristics();
92
92
  }
@@ -107,14 +107,7 @@ export class WaterHeater extends irdeviceBase {
107
107
  async updateHomeKitCharacteristics() {
108
108
  await this.debugLog('updateHomeKitCharacteristics');
109
109
  // Active
110
- if (this.Valve.Active === undefined) {
111
- await this.debugLog(`Active: ${this.Valve.Active}`);
112
- }
113
- else {
114
- this.accessory.context.Active = this.Valve.Active;
115
- this.Valve.Service.updateCharacteristic(this.hap.Characteristic.Active, this.Valve.Active);
116
- await this.debugLog(`updateCharacteristic Active: ${this.Valve.Active}`);
117
- }
110
+ await this.updateCharacteristic(this.Valve.Service, this.hap.Characteristic.Active, this.Valve.Active, 'Active');
118
111
  }
119
112
  async apiError({ e }) {
120
113
  this.Valve.Service.updateCharacteristic(this.hap.Characteristic.Active, e);
@@ -1 +1 @@
1
- {"version":3,"file":"waterheater.js","sourceRoot":"","sources":["../../src/irdevice/waterheater.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"waterheater.js","sourceRoot":"","sources":["../../src/irdevice/waterheater.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,5 @@
1
- /// <reference types="node" />
2
- /// <reference types="node" />
3
1
  import type { UrlObject } from 'url';
4
- import type { MqttClient } from 'mqtt';
5
2
  import type { Dispatcher } from 'undici';
6
- import type { Server } from 'http';
7
3
  import type { blindTilt, curtain, curtain3, device } from './types/devicelist.js';
8
4
  import type { API, DynamicPlatformPlugin, Logging, PlatformAccessory } from 'homebridge';
9
5
  import type { SwitchBotPlatformConfig, devicesConfig, irDevicesConfig } from './settings.js';
@@ -24,16 +20,9 @@ export declare class SwitchBotPlatform implements DynamicPlatformPlugin {
24
20
  platformConfig: SwitchBotPlatformConfig['options'];
25
21
  platformLogging: SwitchBotPlatformConfig['logging'];
26
22
  config: SwitchBotPlatformConfig;
27
- webhookEventListener: Server | null;
28
- mqttClient: MqttClient | null;
29
23
  readonly fakegatoAPI: any;
30
24
  readonly eve: any;
31
- readonly webhookEventHandler: {
32
- [x: string]: (context: any) => void;
33
- };
34
25
  constructor(log: Logging, config: SwitchBotPlatformConfig, api: API);
35
- setupMqtt(): Promise<void>;
36
- setupwebhook(): Promise<void>;
37
26
  /**
38
27
  * This function is invoked when homebridge restores cached accessories from disk at startup.
39
28
  * It should be used to setup event handlers for characteristics and update respective values.
@@ -1 +1 @@
1
- {"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../src/platform.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../src/platform.ts"],"names":[],"mappings":"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"}
package/dist/platform.js CHANGED
@@ -31,15 +31,13 @@ import { VacuumCleaner } from './irdevice/vacuumcleaner.js';
31
31
  import { AirConditioner } from './irdevice/airconditioner.js';
32
32
  import { Buffer } from 'buffer';
33
33
  import { request } from 'undici';
34
- import asyncmqtt from 'async-mqtt';
35
- import { createServer } from 'http';
36
34
  import { queueScheduler } from 'rxjs';
37
35
  import fakegato from 'fakegato-history';
38
36
  import crypto, { randomUUID } from 'crypto';
39
37
  import { readFileSync, writeFileSync } from 'fs';
40
38
  import { EveHomeKitTypes } from 'homebridge-lib/EveHomeKitTypes';
39
+ import { PLATFORM_NAME, PLUGIN_NAME, Devices } from './settings.js';
41
40
  import { isBlindTiltDevice, isCurtainDevice, sleep } from './utils.js';
42
- import { PLATFORM_NAME, PLUGIN_NAME, Devices, setupWebhook, updateWebhook, deleteWebhook, queryWebhook } from './settings.js';
43
41
  /**
44
42
  * HomebridgePlatform
45
43
  * This class is the main constructor for your plugin, this is where you should
@@ -57,11 +55,8 @@ export class SwitchBotPlatform {
57
55
  platformConfig;
58
56
  platformLogging;
59
57
  config;
60
- webhookEventListener = null;
61
- mqttClient = null;
62
58
  fakegatoAPI;
63
59
  eve;
64
- webhookEventHandler = {};
65
60
  constructor(log, config, api) {
66
61
  // initialize
67
62
  this.accessories = [];
@@ -120,174 +115,6 @@ export class SwitchBotPlatform {
120
115
  await this.debugErrorLog(`Failed to Discover, Error: ${e}`);
121
116
  }
122
117
  });
123
- this.setupMqtt();
124
- this.setupwebhook();
125
- }
126
- async setupMqtt() {
127
- if (this.config.options?.mqttURL) {
128
- try {
129
- const { connectAsync } = asyncmqtt;
130
- this.mqttClient = await connectAsync(this.config.options?.mqttURL, this.config.options.mqttOptions || {});
131
- await this.debugLog('MQTT connection has been established successfully.');
132
- this.mqttClient.on('error', async (e) => {
133
- await this.errorLog(`Failed to publish MQTT messages. ${e}`);
134
- });
135
- if (!this.config.options?.webhookURL) {
136
- // receive webhook events via MQTT
137
- await this.infoLog(`Webhook is configured to be received through ${this.config.options.mqttURL}/homebridge-switchbot/webhook.`);
138
- this.mqttClient.subscribe('homebridge-switchbot/webhook/+');
139
- this.mqttClient.on('message', async (topic, message) => {
140
- try {
141
- await await this.debugLog(`Received Webhook via MQTT: ${topic}=${message}`);
142
- const context = JSON.parse(message.toString());
143
- this.webhookEventHandler[context.deviceMac]?.(context);
144
- }
145
- catch (e) {
146
- await this.errorLog(`Failed to handle webhook event. Error:${e}`);
147
- }
148
- });
149
- }
150
- }
151
- catch (e) {
152
- this.mqttClient = null;
153
- await this.errorLog(`Failed to establish MQTT connection. ${e}`);
154
- }
155
- }
156
- }
157
- async setupwebhook() {
158
- //webhook configuration
159
- if (this.config.options?.webhookURL) {
160
- const url = this.config.options?.webhookURL;
161
- try {
162
- const xurl = new URL(url);
163
- const port = Number(xurl.port);
164
- const path = xurl.pathname;
165
- this.webhookEventListener = createServer((request, response) => {
166
- try {
167
- if (request.url === path && request.method === 'POST') {
168
- request.on('data', async (data) => {
169
- try {
170
- const body = JSON.parse(data);
171
- await this.debugLog(`Received Webhook: ${JSON.stringify(body)}`);
172
- if (this.config.options?.mqttURL) {
173
- const mac = body.context.deviceMac
174
- ?.toLowerCase()
175
- .match(/[\s\S]{1,2}/g)
176
- ?.join(':');
177
- const options = this.config.options?.mqttPubOptions || {};
178
- this.mqttClient?.publish(`homebridge-switchbot/webhook/${mac}`, `${JSON.stringify(body.context)}`, options);
179
- }
180
- this.webhookEventHandler[body.context.deviceMac]?.(body.context);
181
- }
182
- catch (e) {
183
- this.errorLog(`Failed to handle webhook event. Error:${e}`);
184
- }
185
- });
186
- response.writeHead(200, { 'Content-Type': 'text/plain' });
187
- response.end('OK');
188
- }
189
- // else {
190
- // response.writeHead(403, {'Content-Type': 'text/plain'});
191
- // response.end(`NG`);
192
- // }
193
- }
194
- catch (e) {
195
- this.errorLog(`Failed to handle webhook event. Error:${e}`);
196
- }
197
- }).listen(port ? port : 80);
198
- }
199
- catch (e) {
200
- this.errorLog(`Failed to create webhook listener. Error:${e.message}`);
201
- return;
202
- }
203
- try {
204
- const { body, statusCode } = await request(setupWebhook, {
205
- method: 'POST',
206
- headers: this.generateHeaders(),
207
- body: JSON.stringify({
208
- 'action': 'setupWebhook',
209
- 'url': url,
210
- 'deviceList': 'ALL',
211
- }),
212
- });
213
- const response = await body.json();
214
- await this.debugLog(`setupWebhook: url:${url}`);
215
- await this.debugLog(`setupWebhook: body:${JSON.stringify(response)}`);
216
- await this.debugLog(`setupWebhook: statusCode:${statusCode}`);
217
- if (statusCode !== 200 || response?.statusCode !== 100) {
218
- this.errorLog(`Failed to configure webhook. Existing webhook well be overridden. HTTP:${statusCode} API:${response?.statusCode} `
219
- + `message:${response?.message}`);
220
- }
221
- }
222
- catch (e) {
223
- this.errorLog(`Failed to configure webhook. Error: ${e.message}`);
224
- }
225
- try {
226
- const { body, statusCode } = await request(updateWebhook, {
227
- method: 'POST', headers: this.generateHeaders(), body: JSON.stringify({
228
- 'action': 'updateWebhook',
229
- 'config': {
230
- 'url': url,
231
- 'enable': true,
232
- },
233
- }),
234
- });
235
- const response = await body.json();
236
- await this.debugLog(`updateWebhook: url:${url}`);
237
- await this.debugLog(`updateWebhook: body:${JSON.stringify(response)}`);
238
- await this.debugLog(`updateWebhook: statusCode:${statusCode}`);
239
- if (statusCode !== 200 || response?.statusCode !== 100) {
240
- this.errorLog(`Failed to update webhook. HTTP:${statusCode} API:${response?.statusCode} message:${response?.message}`);
241
- }
242
- }
243
- catch (e) {
244
- this.errorLog(`Failed to update webhook. Error:${e.message}`);
245
- }
246
- try {
247
- const { body, statusCode } = await request(queryWebhook, {
248
- method: 'POST',
249
- headers: this.generateHeaders(),
250
- body: JSON.stringify({
251
- 'action': 'queryUrl',
252
- }),
253
- });
254
- const response = await body.json();
255
- await this.debugLog(`queryWebhook: body:${JSON.stringify(response)}`);
256
- await this.debugLog(`queryWebhook: statusCode:${statusCode}`);
257
- if (statusCode !== 200 || response?.statusCode !== 100) {
258
- this.errorLog(`Failed to query webhook. HTTP:${statusCode} API:${response?.statusCode} message:${response?.message}`);
259
- }
260
- else {
261
- this.infoLog(`Listening webhook on ${response?.body?.urls[0]}`);
262
- }
263
- }
264
- catch (e) {
265
- this.errorLog(`Failed to query webhook. Error:${e}`);
266
- }
267
- this.api.on('shutdown', async () => {
268
- try {
269
- const { body, statusCode } = await request(deleteWebhook, {
270
- method: 'POST',
271
- headers: this.generateHeaders(),
272
- body: JSON.stringify({
273
- 'action': 'deleteWebhook',
274
- 'url': url,
275
- }),
276
- });
277
- const response = await body.json();
278
- await this.debugLog(`deleteWebhook: url:${url}, body:${JSON.stringify(response)}, statusCode:${statusCode}`);
279
- if (statusCode !== 200 || response?.statusCode !== 100) {
280
- this.errorLog(`Failed to delete webhook. HTTP:${statusCode} API:${response?.statusCode} message:${response?.message}`);
281
- }
282
- else {
283
- this.infoLog('Unregistered webhook to close listening.');
284
- }
285
- }
286
- catch (e) {
287
- this.errorLog(`Failed to delete webhook. Error:${e.message}`);
288
- }
289
- });
290
- }
291
118
  }
292
119
  /**
293
120
  * This function is invoked when homebridge restores cached accessories from disk at startup.
@@ -2559,10 +2386,10 @@ export class SwitchBotPlatform {
2559
2386
  await this.errorLog(`Requests reached the daily limit, statusCode: ${statusCode}`);
2560
2387
  break;
2561
2388
  case 100:
2562
- await await this.debugLog(`Command successfully sent, statusCode: ${statusCode}`);
2389
+ await this.debugLog(`Command successfully sent, statusCode: ${statusCode}`);
2563
2390
  break;
2564
2391
  case 200:
2565
- await await this.debugLog(`Request successful, statusCode: ${statusCode}`);
2392
+ await this.debugLog(`Request successful, statusCode: ${statusCode}`);
2566
2393
  break;
2567
2394
  case 400:
2568
2395
  await this.errorLog('Bad Request, The client has issued an invalid request. This is commonly used to specify validation errors in a request '
@@ -2614,14 +2441,14 @@ export class SwitchBotPlatform {
2614
2441
  return { body, statusCode };
2615
2442
  }
2616
2443
  else {
2617
- await await this.debugLog(`Received status code: ${statusCode}`);
2444
+ await this.debugLog(`Received status code: ${statusCode}`);
2618
2445
  }
2619
2446
  }
2620
2447
  catch (error) {
2621
2448
  await this.errorLog(`Error making request: ${error.message}`);
2622
2449
  }
2623
2450
  retryCount++;
2624
- await await this.debugLog(`Retry attempt ${retryCount} of ${maxRetries}`);
2451
+ await this.debugLog(`Retry attempt ${retryCount} of ${maxRetries}`);
2625
2452
  await sleep(delayBetweenRetries);
2626
2453
  }
2627
2454
  return { body: null, statusCode: -1 };
@@ -2632,7 +2459,7 @@ export class SwitchBotPlatform {
2632
2459
  try {
2633
2460
  const SwitchBot = (await import('node-switchbot')).SwitchBot;
2634
2461
  queueScheduler.schedule(() => (switchbot = new SwitchBot()));
2635
- await await this.debugLog(`${device.deviceType}: ${accessory.displayName} 'node-switchbot' found: ${switchbot}`);
2462
+ await this.debugLog(`${device.deviceType}: ${accessory.displayName} 'node-switchbot' found: ${switchbot}`);
2636
2463
  }
2637
2464
  catch (e) {
2638
2465
  switchbot = false;
@@ -2642,7 +2469,7 @@ export class SwitchBotPlatform {
2642
2469
  }
2643
2470
  async getVersion() {
2644
2471
  const json = JSON.parse(readFileSync(new URL('../package.json', import.meta.url), 'utf-8'));
2645
- await await this.debugLog(`Plugin Version: ${json.version}`);
2472
+ await this.debugLog(`Plugin Version: ${json.version}`);
2646
2473
  this.version = json.version;
2647
2474
  }
2648
2475
  async getPlatformConfigSettings() {
@@ -2679,7 +2506,7 @@ export class SwitchBotPlatform {
2679
2506
  platformConfig.delayBetweenRetries = this.delayBetweenRetries / 1000;
2680
2507
  }
2681
2508
  if (Object.entries(platformConfig).length !== 0) {
2682
- await await this.debugLog(`Platform Config: ${JSON.stringify(platformConfig)}`);
2509
+ await this.debugLog(`Platform Config: ${JSON.stringify(platformConfig)}`);
2683
2510
  }
2684
2511
  this.platformConfig = platformConfig;
2685
2512
  }
@@ -2688,15 +2515,15 @@ export class SwitchBotPlatform {
2688
2515
  this.debugMode = process.argv.includes('-D') || process.argv.includes('--debug');
2689
2516
  if (this.config.options?.logging === 'debug' || this.config.options?.logging === 'standard' || this.config.options?.logging === 'none') {
2690
2517
  this.platformLogging = this.config.options.logging;
2691
- await await this.debugWarnLog(`Using Config Logging: ${this.platformLogging}`);
2518
+ await this.debugWarnLog(`Using Config Logging: ${this.platformLogging}`);
2692
2519
  }
2693
2520
  else if (this.debugMode) {
2694
2521
  this.platformLogging = 'debugMode';
2695
- await await this.debugWarnLog(`Using ${this.platformLogging} Logging`);
2522
+ await this.debugWarnLog(`Using ${this.platformLogging} Logging`);
2696
2523
  }
2697
2524
  else {
2698
2525
  this.platformLogging = 'standard';
2699
- await await this.debugWarnLog(`Using ${this.platformLogging} Logging`);
2526
+ await this.debugWarnLog(`Using ${this.platformLogging} Logging`);
2700
2527
  }
2701
2528
  }
2702
2529
  /**