@homebridge-plugins/homebridge-smarthq 0.4.0-beta.2 → 0.4.0-beta.4

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 (85) hide show
  1. package/README.md +2 -1
  2. package/dist/devices/OpalIceMaker/Managers/OpalDescaleSvcManager.d.ts +17 -0
  3. package/dist/devices/OpalIceMaker/Managers/OpalDescaleSvcManager.d.ts.map +1 -0
  4. package/dist/devices/OpalIceMaker/Managers/OpalDescaleSvcManager.js +54 -0
  5. package/dist/devices/OpalIceMaker/Managers/OpalDescaleSvcManager.js.map +1 -0
  6. package/dist/devices/OpalIceMaker/Managers/OpalFilterMaintenanceSvcManager.d.ts +3 -0
  7. package/dist/devices/OpalIceMaker/Managers/OpalFilterMaintenanceSvcManager.d.ts.map +1 -1
  8. package/dist/devices/OpalIceMaker/Managers/OpalFilterMaintenanceSvcManager.js +29 -12
  9. package/dist/devices/OpalIceMaker/Managers/OpalFilterMaintenanceSvcManager.js.map +1 -1
  10. package/dist/devices/OpalIceMaker/Managers/OpalMetadataSvcManager.d.ts +5 -1
  11. package/dist/devices/OpalIceMaker/Managers/OpalMetadataSvcManager.d.ts.map +1 -1
  12. package/dist/devices/OpalIceMaker/Managers/OpalMetadataSvcManager.js +26 -19
  13. package/dist/devices/OpalIceMaker/Managers/OpalMetadataSvcManager.js.map +1 -1
  14. package/dist/devices/OpalIceMaker/Managers/OpalMonitorManager.d.ts +3 -7
  15. package/dist/devices/OpalIceMaker/Managers/OpalMonitorManager.d.ts.map +1 -1
  16. package/dist/devices/OpalIceMaker/Managers/OpalMonitorManager.js +12 -17
  17. package/dist/devices/OpalIceMaker/Managers/OpalMonitorManager.js.map +1 -1
  18. package/dist/devices/OpalIceMaker/Managers/OpalNightlightSvcManager.d.ts +2 -0
  19. package/dist/devices/OpalIceMaker/Managers/OpalNightlightSvcManager.d.ts.map +1 -1
  20. package/dist/devices/OpalIceMaker/Managers/OpalNightlightSvcManager.js +19 -4
  21. package/dist/devices/OpalIceMaker/Managers/OpalNightlightSvcManager.js.map +1 -1
  22. package/dist/devices/OpalIceMaker/Managers/OpalPowerSvcManager.d.ts +3 -0
  23. package/dist/devices/OpalIceMaker/Managers/OpalPowerSvcManager.d.ts.map +1 -1
  24. package/dist/devices/OpalIceMaker/Managers/OpalPowerSvcManager.js +19 -3
  25. package/dist/devices/OpalIceMaker/Managers/OpalPowerSvcManager.js.map +1 -1
  26. package/dist/devices/OpalIceMaker/Managers/OpalProgressSvcManager.d.ts +2 -0
  27. package/dist/devices/OpalIceMaker/Managers/OpalProgressSvcManager.d.ts.map +1 -1
  28. package/dist/devices/OpalIceMaker/Managers/OpalProgressSvcManager.js +12 -3
  29. package/dist/devices/OpalIceMaker/Managers/OpalProgressSvcManager.js.map +1 -1
  30. package/dist/devices/OpalIceMaker/Managers/StatusManagers/OpalAddWaterStatusSvcManager.d.ts +8 -3
  31. package/dist/devices/OpalIceMaker/Managers/StatusManagers/OpalAddWaterStatusSvcManager.d.ts.map +1 -1
  32. package/dist/devices/OpalIceMaker/Managers/StatusManagers/OpalAddWaterStatusSvcManager.js +26 -6
  33. package/dist/devices/OpalIceMaker/Managers/StatusManagers/OpalAddWaterStatusSvcManager.js.map +1 -1
  34. package/dist/devices/OpalIceMaker/Managers/StatusManagers/OpalIceBucketStatusSvcManager.d.ts +8 -3
  35. package/dist/devices/OpalIceMaker/Managers/StatusManagers/OpalIceBucketStatusSvcManager.d.ts.map +1 -1
  36. package/dist/devices/OpalIceMaker/Managers/StatusManagers/OpalIceBucketStatusSvcManager.js +26 -6
  37. package/dist/devices/OpalIceMaker/Managers/StatusManagers/OpalIceBucketStatusSvcManager.js.map +1 -1
  38. package/dist/devices/OpalIceMaker/Managers/StatusManagers/OpalStatusBase.d.ts +1 -2
  39. package/dist/devices/OpalIceMaker/Managers/StatusManagers/OpalStatusBase.d.ts.map +1 -1
  40. package/dist/devices/OpalIceMaker/Managers/StatusManagers/OpalStatusBase.js +1 -1
  41. package/dist/devices/OpalIceMaker/Managers/StatusManagers/OpalStatusBase.js.map +1 -1
  42. package/dist/devices/OpalIceMaker/Managers/StatusManagers/index.d.ts +7 -3
  43. package/dist/devices/OpalIceMaker/Managers/StatusManagers/index.d.ts.map +1 -1
  44. package/dist/devices/OpalIceMaker/Managers/StatusManagers/index.js +5 -3
  45. package/dist/devices/OpalIceMaker/Managers/StatusManagers/index.js.map +1 -1
  46. package/dist/devices/OpalIceMaker/Managers/index.d.ts +1 -0
  47. package/dist/devices/OpalIceMaker/Managers/index.d.ts.map +1 -1
  48. package/dist/devices/OpalIceMaker/Managers/index.js +1 -0
  49. package/dist/devices/OpalIceMaker/Managers/index.js.map +1 -1
  50. package/dist/devices/OpalIceMaker/index.d.ts +7 -4
  51. package/dist/devices/OpalIceMaker/index.d.ts.map +1 -1
  52. package/dist/devices/OpalIceMaker/index.js +10 -6
  53. package/dist/devices/OpalIceMaker/index.js.map +1 -1
  54. package/dist/devices/device.js +1 -1
  55. package/dist/homebridge-ui/public/index.html +41 -17
  56. package/dist/platform.d.ts.map +1 -1
  57. package/dist/platform.js +1 -0
  58. package/dist/platform.js.map +1 -1
  59. package/dist/settings.d.ts +10 -1
  60. package/dist/settings.d.ts.map +1 -1
  61. package/dist/settings.js.map +1 -1
  62. package/docs/assets/dmt/dmt-component-data.js +1 -1
  63. package/docs/assets/dmt/dmt-search.cmp +0 -0
  64. package/docs/classes/SmartHQPlatform.html +8 -8
  65. package/docs/functions/default.html +1 -1
  66. package/docs/index.html +1 -0
  67. package/docs/interfaces/DeviceOptions.html +3 -0
  68. package/docs/interfaces/SmartHQPlatformConfig.html +4 -3
  69. package/docs/interfaces/SmartHqContext.html +2 -2
  70. package/docs/interfaces/credentials.html +2 -2
  71. package/docs/interfaces/devicesConfig.html +2 -2
  72. package/docs/interfaces/options.html +2 -7
  73. package/docs/modules.html +1 -1
  74. package/docs/variables/API_URL.html +1 -1
  75. package/docs/variables/ERD_CODES.html +1 -1
  76. package/docs/variables/ERD_TYPES.html +1 -1
  77. package/docs/variables/KEEPALIVE_TIMEOUT.html +1 -1
  78. package/docs/variables/LOGIN_URL.html +1 -1
  79. package/docs/variables/OAUTH2_CLIENT_ID.html +1 -1
  80. package/docs/variables/OAUTH2_CLIENT_SECRET.html +1 -1
  81. package/docs/variables/OAUTH2_REDIRECT_URI.html +1 -1
  82. package/docs/variables/PLATFORM_NAME.html +1 -1
  83. package/docs/variables/PLUGIN_NAME.html +1 -1
  84. package/docs/variables/SECURE_URL.html +1 -1
  85. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"OpalProgressSvcManager.js","sourceRoot":"","sources":["../../../../src/devices/OpalIceMaker/Managers/OpalProgressSvcManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OpalProgressSvcManager.js","sourceRoot":"","sources":["../../../../src/devices/OpalIceMaker/Managers/OpalProgressSvcManager.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAIpC,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAExD,MAAM,OAAO,sBAAuB,SAAQ,cAAc;IAU7C;IACF;IACE;IAXJ,uBAAuB,GAAa;QACzC,2IAA2I;QAC3I,4GAA4G;KAC7G,CAAA;IACM,WAAW,GAAW,eAAe,CAAA;IACrC,OAAO,GAAmB,IAAI,CAAA;IAC7B,cAAc,GAAG,cAAc,CAAA;IAChC,mBAAmB,GAAY,QAAQ,CAAA;IAC9C,YACW,QAAyB,EAC3B,SAA4C,EAC1C,MAAgD;QAEzD,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;QAJzB,aAAQ,GAAR,QAAQ,CAAiB;QAC3B,cAAS,GAAT,SAAS,CAAmC;QAC1C,WAAM,GAAN,MAAM,CAA0C;QAIzD,IAAI,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC;YAC7D,IAAI,CAAC,aAAa,EAAE,CAAA;YACpB,IAAI,CAAC,mBAAmB,GAAG,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,mBAAmB,CAAA;QACnF,CAAC;aAAM,CAAC;YACN,0DAA0D;YAC1D,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;YACnE,IAAI,eAAe,EAAE,CAAC;gBACpB,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,eAAe,CAAC,CAAA;YAC/C,CAAC;YACD,IAAI,CAAC,mBAAmB,GAAG,QAAQ,CAAA;QACrC,CAAC;IACH,CAAC;IAED,sCAAsC;IAC9B,aAAa;QACnB,kCAAkC;QAClC,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QAEnE,uCAAuC;QACvC,IAAI,eAAe,EAAE,CAAC;YACpB,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,eAAe,CAAC,CAAA;QAC/C,CAAC;QAED,qBAAqB;QACrB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,CAAA;QAEvF,IAAI,CAAC,OAAO;aACT,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,cAAc,CAAC;aAC9D,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC;aAChC,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;QAEhC,kCAAkC;QAClC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC;aAChE,QAAQ,CAAC;YACR,KAAK,EAAE,uDAAiC;SACzC,CAAC,CAAA;QAEJ,yCAAyC;QACzC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,aAAa,CAAC;aACvE,QAAQ,CAAC;YACR,MAAM,yBAAa;YACnB,IAAI,qCAAkB;YACtB,OAAO,EAAE,CAAC;YACV,QAAQ,EAAE,CAAC;YACX,QAAQ,EAAE,GAAG;YACb,KAAK,EAAE,uDAAiC;SACzC,CAAC;aACD,WAAW,EAAE;aACb,WAAW,EAAE;aACb,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YAC1B,IAAI,GAAG,CAAC,QAAQ,KAAK,GAAG,IAAI,GAAG,CAAC,QAAQ,KAAK,GAAG,EAAE,CAAC;gBACjD,MAAM,gBAAgB,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE,IAAI,EAAE,sCAAsC,CAAA;gBACzG,IAAI,gBAAgB,EAAE,CAAC;oBACrB,MAAM,IAAI,CAAC,iCAAiC,CAAC,gBAAgB,CAAC,CAAA;gBAChE,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAA;IACN,CAAC;IAED,2CAA2C;IAC3C,oBAAoB,CAAC,cAAmB,EAAE,KAAU;QAClD,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,cAAc,EAAE,KAAK,CAAC,CAAA;QAC1D,CAAC;IACH,CAAC;IAED,0BAA0B;IAC1B,UAAU;QACR,OAAO,IAAI,CAAC,OAAO,KAAK,IAAI,CAAA;IAC9B,CAAC;IAED,sDAAsD;IACtD,UAAU,CAAC,OAAgB;QACzB,IAAI,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAC7B,IAAI,CAAC,aAAa,EAAE,CAAA;QACtB,CAAC;aAAM,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACpC,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YAC1C,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;QACrB,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,yBAAyB;QACpC,IAAI,CAAC;YACH,MAAM,CAAC,0BAA0B,EAAE,sBAAsB,CAAC,GAAG,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAA;YAE5F,IAAI,CAAC,OAAO,EAAE,oBAAoB,CAChC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,aAAa,EAC1C,IAAI,CAAC,GAAG,CAAC,0BAA0B,EAAE,GAAG,CAAC,CAC1C,CAAA;YAED,IAAI,CAAC,OAAO,EAAE,oBAAoB,CAChC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,EACnC,sBAAsB,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CACnC,CAAA;YAED,OAAO,sBAAsB,CAAA;QAC/B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,QAAQ,GAAG,GAA0B,CAAA;YAC3C,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,kBAAkB,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAA;YAC5D,OAAO,CAAC,CAAA;QACV,CAAC;IACH,CAAC;IAED,0BAA0B;IAC1B,qBAAqB,CAAC,QAAgB;QACpC,IAAI,CAAC,mBAAmB,GAAG,QAAQ,CAAA;QACnC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,gCAAgC,QAAQ,EAAE,CAAC,CAAA;IACpE,CAAC;IAED,+BAA+B;IACvB,KAAK,CAAC,kBAAkB;QAC9B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,cAAc,CAAC,CAAA;YAC3D,MAAM,sBAAsB,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;YAEtE,MAAM,gBAAgB,GAAG,sBAAsB,GAAG,GAAG,CAAC,CAAC,CAAC,iBAAiB,sBAAsB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;YACtG,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,eAAe,sBAAsB,YAAY,IAAI,CAAC,mBAAmB,GAAG,gBAAgB,EAAE,CAAC,CAAA;YAE7H,MAAM,0BAA0B,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,mBAAoB,CAAC,GAAG,sBAAsB,CAAC,CAAA;YACzG,OAAO,CAAC,0BAA0B,EAAE,sBAAsB,CAAC,CAAA;QAC7D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,QAAQ,GAAG,KAA4B,CAAA;YAC7C,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,oCAAoC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAA;YAC9E,mCAAmC;YACnC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QACf,CAAC;IACH,CAAC;CACF"}
@@ -1,16 +1,21 @@
1
1
  import type { PlatformAccessory, Service } from 'homebridge';
2
- import type { SmartHQPlatform } from '../../../../platform.js';
3
- import type { devicesConfig, SmartHqContext } from '../../../../settings.js';
2
+ import type { SmartHQIceMaker } from '../../index.js';
3
+ import type { SmartHQPlatform } from '../../../../index.js';
4
+ import type { devicesConfig, SmartHqContext } from '../../../../index.js';
4
5
  import { OpalDeviceBase } from '../../OpalDeviceBase.js';
5
6
  export declare class OpalAddWaterStatusSvcManager extends OpalDeviceBase {
6
7
  service: Service;
8
+ opalIceMaker: SmartHQIceMaker;
7
9
  private serviceName;
10
+ private configuredName;
11
+ advancedOptionQueryStrs: string[];
8
12
  AddWaterCurrentStatus: {
9
13
  readonly WATER_OK: 0;
10
14
  readonly ADD_WATER: 1;
11
15
  };
12
16
  addWaterCurrentStatus: 0 | 1;
13
- constructor(platform: SmartHQPlatform, accessory: PlatformAccessory<SmartHqContext>, device: SmartHqContext['device'] & devicesConfig);
17
+ constructor(opalIceMaker: SmartHQIceMaker, platform: SmartHQPlatform, accessory: PlatformAccessory<SmartHqContext>, device: SmartHqContext['device'] & devicesConfig);
18
+ private createService;
14
19
  setAddWaterCurrentStatus(updateValue: 0 | 1): void;
15
20
  getService(): Service;
16
21
  }
@@ -1 +1 @@
1
- {"version":3,"file":"OpalAddWaterStatusSvcManager.d.ts","sourceRoot":"","sources":["../../../../../src/devices/OpalIceMaker/Managers/StatusManagers/OpalAddWaterStatusSvcManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AAE5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAC9D,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAE5E,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAExD,qBAAa,4BAA6B,SAAQ,cAAc;IACvD,OAAO,EAAE,OAAO,CAAA;IACvB,OAAO,CAAC,WAAW,CAAqB;IACjC,qBAAqB;;;MAGlB;IACH,qBAAqB,EAAE,CAAC,GAAG,CAAC,CAAsC;gBAGvE,QAAQ,EAAE,eAAe,EACzB,SAAS,EAAE,iBAAiB,CAAC,cAAc,CAAC,EAC5C,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,GAAG,aAAa;IAqBlD,wBAAwB,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC;IAM3C,UAAU,IAAI,OAAO;CAGtB"}
1
+ {"version":3,"file":"OpalAddWaterStatusSvcManager.d.ts","sourceRoot":"","sources":["../../../../../src/devices/OpalIceMaker/Managers/StatusManagers/OpalAddWaterStatusSvcManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AAE5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AACrD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,OAAO,CAAA;AAC5C,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,OAAO,CAAA;AAE1D,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAExD,qBAAa,4BAA6B,SAAQ,cAAc;IACvD,OAAO,EAAE,OAAO,CAAA;IAChB,YAAY,EAAE,eAAe,CAAA;IACpC,OAAO,CAAC,WAAW,CAA0B;IAC7C,OAAO,CAAC,cAAc,CAAc;IAC7B,uBAAuB,WAAiG;IACxH,qBAAqB;;;MAGlB;IACH,qBAAqB,EAAE,CAAC,GAAG,CAAC,CAAsC;gBAGvE,YAAY,EAAE,eAAe,EAC7B,QAAQ,EAAE,eAAe,EACzB,SAAS,EAAE,iBAAiB,CAAC,cAAc,CAAC,EAC5C,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,GAAG,aAAa;IAOlD,OAAO,CAAC,aAAa;IAiCrB,wBAAwB,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC;IAU3C,UAAU,IAAI,OAAO;CAGtB"}
@@ -1,32 +1,52 @@
1
1
  import { OpalDeviceBase } from '../../OpalDeviceBase.js';
2
2
  export class OpalAddWaterStatusSvcManager extends OpalDeviceBase {
3
3
  service;
4
- serviceName = 'Add Water Sensor';
4
+ opalIceMaker;
5
+ serviceName = 'Opal Add Water Sensor';
6
+ configuredName = 'Add Water';
7
+ advancedOptionQueryStrs = ['device=opal&label=HKC_Add_Water_Notification_Path&indicator=oplHKCAddWaterNotificationPath'];
5
8
  AddWaterCurrentStatus = {
6
9
  WATER_OK: 0,
7
10
  ADD_WATER: 1,
8
11
  };
9
12
  addWaterCurrentStatus = this.AddWaterCurrentStatus.WATER_OK;
10
- constructor(platform, accessory, device) {
13
+ constructor(opalIceMaker, platform, accessory, device) {
11
14
  super(platform, accessory, device);
12
- this.service = this.accessory.getService(this.serviceName)
13
- || this.accessory.addService(this.platform.Service.ContactSensor, this.serviceName, 'opal-add-water-sensor');
14
- this.service
15
+ this.opalIceMaker = opalIceMaker;
16
+ this.service = this.createService();
17
+ }
18
+ createService() {
19
+ // Check if service already exists
20
+ const existingService = this.accessory.getService(this.serviceName);
21
+ // Remove existing service if it exists
22
+ if (existingService) {
23
+ this.accessory.removeService(existingService);
24
+ }
25
+ const service = this.accessory.addService(this.platform.Service.ContactSensor, this.serviceName, 'opal-add-water-sensor');
26
+ service
27
+ .getCharacteristic(this.platform.Characteristic.ConfiguredName)
28
+ .onGet(() => this.configuredName)
29
+ .setValue(this.configuredName);
30
+ service
15
31
  .getCharacteristic(this.platform.Characteristic.ContactSensorState)
16
32
  .onGet(() => this.addWaterCurrentStatus)
17
33
  .on('change', async (chg) => {
18
34
  if (chg.oldValue === this.AddWaterCurrentStatus.WATER_OK && chg.newValue === this.AddWaterCurrentStatus.ADD_WATER) {
19
- const notificationPath = this.platform.config.options?.oplHKCAddWaterNotificationPath;
35
+ const notificationPath = this.platform.config.deviceOptions?.opal?.oplHKCAddWaterNotificationPath;
20
36
  if (notificationPath) {
21
37
  await this.sendHomeKitControllerNotification(notificationPath);
22
38
  }
23
39
  }
24
40
  });
41
+ return service;
25
42
  }
26
43
  setAddWaterCurrentStatus(updateValue) {
27
44
  this.addWaterCurrentStatus = updateValue;
28
45
  // Stimulate on change handler for native notification
29
46
  this.service.getCharacteristic(this.platform.Characteristic.ContactSensorState).setValue(updateValue);
47
+ if (updateValue === this.AddWaterCurrentStatus.ADD_WATER && this.platform.config.deviceOptions?.opal?.oplAutoShutoffOnBlockingEvent === true) {
48
+ this.opalIceMaker.powerManager.setOpalPowerState(false);
49
+ }
30
50
  }
31
51
  getService() {
32
52
  return this.service;
@@ -1 +1 @@
1
- {"version":3,"file":"OpalAddWaterStatusSvcManager.js","sourceRoot":"","sources":["../../../../../src/devices/OpalIceMaker/Managers/StatusManagers/OpalAddWaterStatusSvcManager.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAExD,MAAM,OAAO,4BAA6B,SAAQ,cAAc;IACvD,OAAO,CAAS;IACf,WAAW,GAAG,kBAAkB,CAAA;IACjC,qBAAqB,GAAG;QAC7B,QAAQ,EAAE,CAAC;QACX,SAAS,EAAE,CAAC;KACJ,CAAA;IACH,qBAAqB,GAAU,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAA;IAEzE,YACE,QAAyB,EACzB,SAA4C,EAC5C,MAAgD;QAEhD,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;QAElC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;eACrD,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,aAAa,EAAE,IAAI,CAAC,WAAW,EAAE,uBAAuB,CAAC,CAAA;QAE9G,IAAI,CAAC,OAAO;aACT,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,kBAAkB,CAAC;aAClE,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC;aACvC,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YAC1B,IAAI,GAAG,CAAC,QAAQ,KAAK,IAAI,CAAC,qBAAqB,CAAC,QAAQ,IAAI,GAAG,CAAC,QAAQ,KAAK,IAAI,CAAC,qBAAqB,CAAC,SAAS,EAAE,CAAC;gBAClH,MAAM,gBAAgB,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,8BAA8B,CAAA;gBAErF,IAAI,gBAAgB,EAAE,CAAC;oBACrB,MAAM,IAAI,CAAC,iCAAiC,CAAC,gBAAgB,CAAC,CAAA;gBAChE,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAA;IACN,CAAC;IAED,wBAAwB,CAAC,WAAkB;QACzC,IAAI,CAAC,qBAAqB,GAAG,WAAW,CAAA;QACxC,sDAAsD;QACtD,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAA;IACvG,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,OAAO,CAAA;IACrB,CAAC;CACF"}
1
+ {"version":3,"file":"OpalAddWaterStatusSvcManager.js","sourceRoot":"","sources":["../../../../../src/devices/OpalIceMaker/Managers/StatusManagers/OpalAddWaterStatusSvcManager.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAExD,MAAM,OAAO,4BAA6B,SAAQ,cAAc;IACvD,OAAO,CAAS;IAChB,YAAY,CAAiB;IAC5B,WAAW,GAAG,uBAAuB,CAAA;IACrC,cAAc,GAAG,WAAW,CAAA;IAC7B,uBAAuB,GAAG,CAAC,4FAA4F,CAAC,CAAA;IACxH,qBAAqB,GAAG;QAC7B,QAAQ,EAAE,CAAC;QACX,SAAS,EAAE,CAAC;KACJ,CAAA;IACH,qBAAqB,GAAU,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAA;IAEzE,YACE,YAA6B,EAC7B,QAAyB,EACzB,SAA4C,EAC5C,MAAgD;QAEhD,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;QAClC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAA;QAChC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,aAAa,EAAE,CAAA;IACrC,CAAC;IAEO,aAAa;QACnB,kCAAkC;QAClC,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QAEnE,uCAAuC;QACvC,IAAI,eAAe,EAAE,CAAC;YACpB,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,eAAe,CAAC,CAAA;QAC/C,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,aAAa,EAAE,IAAI,CAAC,WAAW,EAAE,uBAAuB,CAAC,CAAA;QAEzH,OAAO;aACJ,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,cAAc,CAAC;aAC9D,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC;aAChC,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;QAEhC,OAAO;aACJ,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,kBAAkB,CAAC;aAClE,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC;aACvC,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YAC1B,IAAI,GAAG,CAAC,QAAQ,KAAK,IAAI,CAAC,qBAAqB,CAAC,QAAQ,IAAI,GAAG,CAAC,QAAQ,KAAK,IAAI,CAAC,qBAAqB,CAAC,SAAS,EAAE,CAAC;gBAClH,MAAM,gBAAgB,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE,IAAI,EAAE,8BAA8B,CAAA;gBAEjG,IAAI,gBAAgB,EAAE,CAAC;oBACrB,MAAM,IAAI,CAAC,iCAAiC,CAAC,gBAAgB,CAAC,CAAA;gBAChE,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAA;QAEJ,OAAO,OAAO,CAAA;IAEhB,CAAC;IAED,wBAAwB,CAAC,WAAkB;QACzC,IAAI,CAAC,qBAAqB,GAAG,WAAW,CAAA;QACxC,sDAAsD;QACtD,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAA;QAErG,IAAI,WAAW,KAAK,IAAI,CAAC,qBAAqB,CAAC,SAAS,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE,IAAI,EAAE,6BAA6B,KAAK,IAAI,EAAE,CAAC;YAC7I,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAA;QACzD,CAAC;IACH,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,OAAO,CAAA;IACrB,CAAC;CACF"}
@@ -1,16 +1,21 @@
1
1
  import type { PlatformAccessory, Service } from 'homebridge';
2
- import type { SmartHQPlatform } from '../../../../platform.js';
3
- import type { devicesConfig, SmartHqContext } from '../../../../settings.js';
2
+ import type { SmartHQPlatform } from '../../../../index.js';
3
+ import type { devicesConfig, SmartHqContext } from '../../../../index.js';
4
+ import { SmartHQIceMaker } from '../../index.js';
4
5
  import { OpalDeviceBase } from '../../OpalDeviceBase.js';
5
6
  export declare class OpalIceBucketStatusSvcManager extends OpalDeviceBase {
6
7
  service: Service;
7
8
  private serviceName;
9
+ private configuredName;
10
+ opalIceMaker: SmartHQIceMaker;
11
+ advancedOptionQueryStrs: string[];
8
12
  IceBucketFullStatus: {
9
13
  readonly ICE_BUCKET_NOT_FULL: 0;
10
14
  readonly ICE_BUCKET_FULL: 1;
11
15
  };
12
16
  iceBucketCurrentStatus: 0 | 1;
13
- constructor(platform: SmartHQPlatform, accessory: PlatformAccessory<SmartHqContext>, device: SmartHqContext['device'] & devicesConfig);
17
+ constructor(opalIceMaker: SmartHQIceMaker, platform: SmartHQPlatform, accessory: PlatformAccessory<SmartHqContext>, device: SmartHqContext['device'] & devicesConfig);
18
+ private createService;
14
19
  setIceBucketFullStatus(updateValue: 0 | 1): void;
15
20
  getService(): Service;
16
21
  }
@@ -1 +1 @@
1
- {"version":3,"file":"OpalIceBucketStatusSvcManager.d.ts","sourceRoot":"","sources":["../../../../../src/devices/OpalIceMaker/Managers/StatusManagers/OpalIceBucketStatusSvcManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AAE5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAC9D,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAE5E,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAExD,qBAAa,6BAA8B,SAAQ,cAAc;IACxD,OAAO,EAAE,OAAO,CAAA;IACvB,OAAO,CAAC,WAAW,CAAiB;IAC7B,mBAAmB;;;MAGhB;IACH,sBAAsB,EAAE,CAAC,GAAG,CAAC,CAA+C;gBAGjF,QAAQ,EAAE,eAAe,EACzB,SAAS,EAAE,iBAAiB,CAAC,cAAc,CAAC,EAC5C,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,GAAG,aAAa;IAoBlD,sBAAsB,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC;IAMzC,UAAU,IAAI,OAAO;CAGtB"}
1
+ {"version":3,"file":"OpalIceBucketStatusSvcManager.d.ts","sourceRoot":"","sources":["../../../../../src/devices/OpalIceMaker/Managers/StatusManagers/OpalIceBucketStatusSvcManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AAE5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,OAAO,CAAA;AAC5C,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,OAAO,CAAA;AAE1D,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAExD,qBAAa,6BAA8B,SAAQ,cAAc;IACxD,OAAO,EAAE,OAAO,CAAA;IACvB,OAAO,CAAC,WAAW,CAAgC;IACnD,OAAO,CAAC,cAAc,CAAgB;IAC/B,YAAY,EAAE,eAAe,CAAA;IAC7B,uBAAuB,EAAE,MAAM,EAAE,CAA4G;IAC7I,mBAAmB;;;MAGhB;IACH,sBAAsB,EAAE,CAAC,GAAG,CAAC,CAA+C;gBAGjF,YAAY,EAAE,eAAe,EAC7B,QAAQ,EAAE,eAAe,EACzB,SAAS,EAAE,iBAAiB,CAAC,cAAc,CAAC,EAC5C,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,GAAG,aAAa;IAOlD,OAAO,CAAC,aAAa;IA+BrB,sBAAsB,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC;IASzC,UAAU,IAAI,OAAO;CAGtB"}
@@ -1,32 +1,52 @@
1
1
  import { OpalDeviceBase } from '../../OpalDeviceBase.js';
2
2
  export class OpalIceBucketStatusSvcManager extends OpalDeviceBase {
3
3
  service;
4
- serviceName = 'Ice Bin Full';
4
+ serviceName = 'Opal Ice Bucket Full Sensor';
5
+ configuredName = 'Bucket Full';
6
+ opalIceMaker;
7
+ advancedOptionQueryStrs = ['device=opal&label=HKC_Ice_Bucket_Full_Notification_Path&indicator=oplHKCIceBucketFullNotificationPath'];
5
8
  IceBucketFullStatus = {
6
9
  ICE_BUCKET_NOT_FULL: 0,
7
10
  ICE_BUCKET_FULL: 1,
8
11
  };
9
12
  iceBucketCurrentStatus = this.IceBucketFullStatus.ICE_BUCKET_NOT_FULL;
10
- constructor(platform, accessory, device) {
13
+ constructor(opalIceMaker, platform, accessory, device) {
11
14
  super(platform, accessory, device);
12
- this.service = this.accessory.getService(this.serviceName)
13
- || this.accessory.addService(this.platform.Service.ContactSensor, this.serviceName);
14
- this.service
15
+ this.opalIceMaker = opalIceMaker;
16
+ this.service = this.createService();
17
+ }
18
+ createService() {
19
+ // Check if service already exists
20
+ const existingService = this.accessory.getService(this.serviceName);
21
+ // Remove existing service if it exists
22
+ if (existingService) {
23
+ this.accessory.removeService(existingService);
24
+ }
25
+ const service = this.accessory.addService(this.platform.Service.ContactSensor, this.serviceName, 'opal-ice-bin-full-sensor');
26
+ service
27
+ .getCharacteristic(this.platform.Characteristic.ConfiguredName)
28
+ .onGet(() => this.configuredName)
29
+ .setValue(this.configuredName);
30
+ service
15
31
  .getCharacteristic(this.platform.Characteristic.ContactSensorState)
16
32
  .onGet(() => this.iceBucketCurrentStatus)
17
33
  .on('change', async (chg) => {
18
34
  if (chg.oldValue === this.IceBucketFullStatus.ICE_BUCKET_NOT_FULL && chg.newValue === this.IceBucketFullStatus.ICE_BUCKET_FULL) {
19
- const notificationPath = this.platform.config.options?.oplHKCIceBucketFullNotificationPath;
35
+ const notificationPath = this.platform.config.deviceOptions?.opal?.oplHKCIceBucketFullNotificationPath;
20
36
  if (notificationPath) {
21
37
  await this.sendHomeKitControllerNotification(notificationPath);
22
38
  }
23
39
  }
24
40
  });
41
+ return service;
25
42
  }
26
43
  setIceBucketFullStatus(updateValue) {
27
44
  this.iceBucketCurrentStatus = updateValue;
28
45
  // Stimulate on change handler for native notification
29
46
  this.service.getCharacteristic(this.platform.Characteristic.ContactSensorState).setValue(updateValue);
47
+ if (updateValue === this.IceBucketFullStatus.ICE_BUCKET_FULL && this.platform.config.deviceOptions?.opal?.oplAutoShutoffOnBlockingEvent === true) {
48
+ this.opalIceMaker.powerManager.setOpalPowerState(false);
49
+ }
30
50
  }
31
51
  getService() {
32
52
  return this.service;
@@ -1 +1 @@
1
- {"version":3,"file":"OpalIceBucketStatusSvcManager.js","sourceRoot":"","sources":["../../../../../src/devices/OpalIceMaker/Managers/StatusManagers/OpalIceBucketStatusSvcManager.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAExD,MAAM,OAAO,6BAA8B,SAAQ,cAAc;IACxD,OAAO,CAAS;IACf,WAAW,GAAG,cAAc,CAAA;IAC7B,mBAAmB,GAAG;QAC3B,mBAAmB,EAAE,CAAC;QACtB,eAAe,EAAE,CAAC;KACV,CAAA;IACH,sBAAsB,GAAU,IAAI,CAAC,mBAAmB,CAAC,mBAAmB,CAAA;IAEnF,YACE,QAAyB,EACzB,SAA4C,EAC5C,MAAgD;QAEhD,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;QAElC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;eACrD,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,aAAa,EAAE,IAAI,CAAC,WAAW,CAAC,CAAA;QAErF,IAAI,CAAC,OAAO;aACT,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,kBAAkB,CAAC;aAClE,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,sBAAsB,CAAC;aACxC,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YAC1B,IAAI,GAAG,CAAC,QAAQ,KAAK,IAAI,CAAC,mBAAmB,CAAC,mBAAmB,IAAI,GAAG,CAAC,QAAQ,KAAK,IAAI,CAAC,mBAAmB,CAAC,eAAe,EAAE,CAAC;gBAC/H,MAAM,gBAAgB,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,mCAAmC,CAAA;gBAC1F,IAAI,gBAAgB,EAAE,CAAC;oBACrB,MAAM,IAAI,CAAC,iCAAiC,CAAC,gBAAgB,CAAC,CAAA;gBAChE,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAA;IACN,CAAC;IAED,sBAAsB,CAAC,WAAkB;QACvC,IAAI,CAAC,sBAAsB,GAAG,WAAW,CAAA;QACzC,sDAAsD;QACtD,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAA;IACvG,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,OAAO,CAAA;IACrB,CAAC;CACF"}
1
+ {"version":3,"file":"OpalIceBucketStatusSvcManager.js","sourceRoot":"","sources":["../../../../../src/devices/OpalIceMaker/Managers/StatusManagers/OpalIceBucketStatusSvcManager.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,5 @@
1
1
  import type { PlatformAccessory } from 'homebridge';
2
- import type { SmartHQPlatform } from '../../../../platform.js';
3
- import type { devicesConfig, SmartHqContext } from '../../../../settings.js';
2
+ import type { SmartHQPlatform, devicesConfig, SmartHqContext } from '../../../../index.js';
4
3
  import { OpalDeviceBase } from '../../OpalDeviceBase.js';
5
4
  export declare class OpalStatusBase extends OpalDeviceBase {
6
5
  readonly platform: SmartHQPlatform;
@@ -1 +1 @@
1
- {"version":3,"file":"OpalStatusBase.d.ts","sourceRoot":"","sources":["../../../../../src/devices/OpalIceMaker/Managers/StatusManagers/OpalStatusBase.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAEnD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAC9D,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAG5E,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAExD,qBAAa,cAAe,SAAQ,cAAc;IAgB9C,QAAQ,CAAC,QAAQ,EAAE,eAAe;IAC3B,SAAS,EAAE,iBAAiB,CAAC,cAAc,CAAC;IACnD,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,GAAG,aAAa;IAjBpD,eAAe;;;;;;;;;;;MAWrB;IACM,iBAAiB,EAAE,MAAM,CAA4B;gBAGjD,QAAQ,EAAE,eAAe,EAC3B,SAAS,EAAE,iBAAiB,CAAC,cAAc,CAAC,EAC1C,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,GAAG,aAAa;IAKrD,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC;IAMrC,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAM5D,cAAc,IAAI,IAAI;CAGvB"}
1
+ {"version":3,"file":"OpalStatusBase.d.ts","sourceRoot":"","sources":["../../../../../src/devices/OpalIceMaker/Managers/StatusManagers/OpalStatusBase.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAEnD,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,OAAO,CAAA;AAG3E,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAExD,qBAAa,cAAe,SAAQ,cAAc;IAgB9C,QAAQ,CAAC,QAAQ,EAAE,eAAe;IAC3B,SAAS,EAAE,iBAAiB,CAAC,cAAc,CAAC;IACnD,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,GAAG,aAAa;IAjBpD,eAAe;;;;;;;;;;;MAWrB;IACM,iBAAiB,EAAE,MAAM,CAA4B;gBAGjD,QAAQ,EAAE,eAAe,EAC3B,SAAS,EAAE,iBAAiB,CAAC,cAAc,CAAC,EAC1C,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,GAAG,aAAa;IAKrD,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC;IAMrC,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAM5D,cAAc,IAAI,IAAI;CAGvB"}
@@ -1,4 +1,4 @@
1
- import { ERD_TYPES } from '../../../../settings.js';
1
+ import { ERD_TYPES } from '../../../../index.js';
2
2
  import { OpalDeviceBase } from '../../OpalDeviceBase.js';
3
3
  export class OpalStatusBase extends OpalDeviceBase {
4
4
  platform;
@@ -1 +1 @@
1
- {"version":3,"file":"OpalStatusBase.js","sourceRoot":"","sources":["../../../../../src/devices/OpalIceMaker/Managers/StatusManagers/OpalStatusBase.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAExD,MAAM,OAAO,cAAe,SAAQ,cAAc;IAgBrC;IACF;IACE;IAjBJ,eAAe,GAAG;QACvB,UAAU,EAAE,CAAC;QACb,UAAU,EAAE,CAAC;QACb,QAAQ,EAAE,CAAC;QACX,YAAY,EAAE,CAAC;QACf,SAAS,EAAE,CAAC;QACZ,eAAe,EAAE,CAAC;QAClB,IAAI,EAAE,CAAC;QACP,oBAAoB,EAAE,CAAC;QACvB,QAAQ,EAAE,CAAC;QACX,OAAO,EAAE,GAAG;KACb,CAAA;IACM,iBAAiB,GAAW,IAAI,CAAC,eAAe,CAAC,IAAI,CAAA;IAE5D,YACW,QAAyB,EAC3B,SAA4C,EAC1C,MAAgD;QAEzD,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;QAJzB,aAAQ,GAAR,QAAQ,CAAiB;QAC3B,cAAS,GAAT,SAAS,CAAmC;QAC1C,WAAM,GAAN,MAAM,CAA0C;IAG3D,CAAC;IAED,KAAK,CAAC,oBAAoB;QACxB,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA;QAClE,MAAM,kBAAkB,GAAG,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAA;QAC7D,IAAI,CAAC,oBAAoB,CAAC,kBAAkB,CAAC,CAAA;IAC/C,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,SAAiB;QAC1C,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAA;QAClC,IAAI,CAAC,cAAc,EAAE,CAAA;IACvB,CAAC;IAED,6CAA6C;IAC7C,cAAc;QACZ,sCAAsC;IACxC,CAAC;CACF"}
1
+ {"version":3,"file":"OpalStatusBase.js","sourceRoot":"","sources":["../../../../../src/devices/OpalIceMaker/Managers/StatusManagers/OpalStatusBase.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAExD,MAAM,OAAO,cAAe,SAAQ,cAAc;IAgBrC;IACF;IACE;IAjBJ,eAAe,GAAG;QACvB,UAAU,EAAE,CAAC;QACb,UAAU,EAAE,CAAC;QACb,QAAQ,EAAE,CAAC;QACX,YAAY,EAAE,CAAC;QACf,SAAS,EAAE,CAAC;QACZ,eAAe,EAAE,CAAC;QAClB,IAAI,EAAE,CAAC;QACP,oBAAoB,EAAE,CAAC;QACvB,QAAQ,EAAE,CAAC;QACX,OAAO,EAAE,GAAG;KACb,CAAA;IACM,iBAAiB,GAAW,IAAI,CAAC,eAAe,CAAC,IAAI,CAAA;IAE5D,YACW,QAAyB,EAC3B,SAA4C,EAC1C,MAAgD;QAEzD,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;QAJzB,aAAQ,GAAR,QAAQ,CAAiB;QAC3B,cAAS,GAAT,SAAS,CAAmC;QAC1C,WAAM,GAAN,MAAM,CAA0C;IAG3D,CAAC;IAED,KAAK,CAAC,oBAAoB;QACxB,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA;QAClE,MAAM,kBAAkB,GAAG,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAA;QAC7D,IAAI,CAAC,oBAAoB,CAAC,kBAAkB,CAAC,CAAA;IAC/C,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,SAAiB;QAC1C,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAA;QAClC,IAAI,CAAC,cAAc,EAAE,CAAA;IACvB,CAAC;IAED,6CAA6C;IAC7C,cAAc;QACZ,sCAAsC;IACxC,CAAC;CACF"}
@@ -1,13 +1,17 @@
1
1
  import type { PlatformAccessory } from 'homebridge';
2
2
  import type { SmartHQPlatform, devicesConfig, SmartHqContext } from '../../../../index.js';
3
+ import { SmartHQIceMaker } from '../../index.js';
4
+ import { OpalIceBucketStatusSvcManager } from '../../Managers/StatusManagers/OpalIceBucketStatusSvcManager.js';
5
+ import { OpalAddWaterStatusSvcManager } from '../../Managers/StatusManagers/OpalAddWaterStatusSvcManager.js';
3
6
  import { OpalStatusBase } from './OpalStatusBase.js';
4
7
  export declare class OpalStatusSvcManager extends OpalStatusBase {
8
+ opalIceMaker: SmartHQIceMaker;
5
9
  readonly platform: SmartHQPlatform;
6
10
  accessory: PlatformAccessory<SmartHqContext>;
7
11
  readonly device: SmartHqContext['device'] & devicesConfig;
8
- private iceBucketStatusManager;
9
- private addWaterStatusManager;
10
- constructor(platform: SmartHQPlatform, accessory: PlatformAccessory<SmartHqContext>, device: SmartHqContext['device'] & devicesConfig);
12
+ iceBucketStatusManager: OpalIceBucketStatusSvcManager;
13
+ addWaterStatusManager: OpalAddWaterStatusSvcManager;
14
+ constructor(opalIceMaker: SmartHQIceMaker, platform: SmartHQPlatform, accessory: PlatformAccessory<SmartHqContext>, device: SmartHqContext['device'] & devicesConfig);
11
15
  setChildStatus(): void;
12
16
  }
13
17
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/devices/OpalIceMaker/Managers/StatusManagers/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AACnD,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,OAAO,CAAA;AAI3E,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEpD,qBAAa,oBAAqB,SAAQ,cAAc;IAIpD,QAAQ,CAAC,QAAQ,EAAE,eAAe;IAC3B,SAAS,EAAE,iBAAiB,CAAC,cAAc,CAAC;IACnD,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,GAAG,aAAa;IAL3D,OAAO,CAAC,sBAAsB,CAA+B;IAC7D,OAAO,CAAC,qBAAqB,CAA8B;gBAEhD,QAAQ,EAAE,eAAe,EAC3B,SAAS,EAAE,iBAAiB,CAAC,cAAc,CAAC,EAC1C,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,GAAG,aAAa;IAOlD,cAAc,IAAI,IAAI;CAchC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/devices/OpalIceMaker/Managers/StatusManagers/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AACnD,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,OAAO,CAAA;AAE3E,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,6BAA6B,EAAE,MAAM,gEAAgE,CAAA;AAC9G,OAAO,EAAE,4BAA4B,EAAE,MAAM,+DAA+D,CAAA;AAC5G,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEpD,qBAAa,oBAAqB,SAAQ,cAAc;IAI7C,YAAY,EAAE,eAAe;IACpC,QAAQ,CAAC,QAAQ,EAAE,eAAe;IAC3B,SAAS,EAAE,iBAAiB,CAAC,cAAc,CAAC;IACnD,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,GAAG,aAAa;IANpD,sBAAsB,EAAE,6BAA6B,CAAA;IACrD,qBAAqB,EAAE,4BAA4B,CAAA;gBAEjD,YAAY,EAAE,eAAe,EAC3B,QAAQ,EAAE,eAAe,EAC3B,SAAS,EAAE,iBAAiB,CAAC,cAAc,CAAC,EAC1C,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,GAAG,aAAa;IAOlD,cAAc,IAAI,IAAI;CAchC"}
@@ -2,18 +2,20 @@ import { OpalIceBucketStatusSvcManager } from '../../Managers/StatusManagers/Opa
2
2
  import { OpalAddWaterStatusSvcManager } from '../../Managers/StatusManagers/OpalAddWaterStatusSvcManager.js';
3
3
  import { OpalStatusBase } from './OpalStatusBase.js';
4
4
  export class OpalStatusSvcManager extends OpalStatusBase {
5
+ opalIceMaker;
5
6
  platform;
6
7
  accessory;
7
8
  device;
8
9
  iceBucketStatusManager;
9
10
  addWaterStatusManager;
10
- constructor(platform, accessory, device) {
11
+ constructor(opalIceMaker, platform, accessory, device) {
11
12
  super(platform, accessory, device);
13
+ this.opalIceMaker = opalIceMaker;
12
14
  this.platform = platform;
13
15
  this.accessory = accessory;
14
16
  this.device = device;
15
- this.iceBucketStatusManager = new OpalIceBucketStatusSvcManager(platform, accessory, device);
16
- this.addWaterStatusManager = new OpalAddWaterStatusSvcManager(platform, accessory, device);
17
+ this.iceBucketStatusManager = new OpalIceBucketStatusSvcManager(opalIceMaker, platform, accessory, device);
18
+ this.addWaterStatusManager = new OpalAddWaterStatusSvcManager(opalIceMaker, platform, accessory, device);
17
19
  }
18
20
  setChildStatus() {
19
21
  switch (this.opalCurrentStatus) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/devices/OpalIceMaker/Managers/StatusManagers/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,6BAA6B,EAAE,MAAM,gEAAgE,CAAA;AAC9G,OAAO,EAAE,4BAA4B,EAAE,MAAM,+DAA+D,CAAA;AAC5G,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEpD,MAAM,OAAO,oBAAqB,SAAQ,cAAc;IAI3C;IACF;IACE;IALH,sBAAsB,CAA+B;IACrD,qBAAqB,CAA8B;IAC3D,YACW,QAAyB,EAC3B,SAA4C,EAC1C,MAAgD;QAEzD,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;QAJzB,aAAQ,GAAR,QAAQ,CAAiB;QAC3B,cAAS,GAAT,SAAS,CAAmC;QAC1C,WAAM,GAAN,MAAM,CAA0C;QAGzD,IAAI,CAAC,sBAAsB,GAAG,IAAI,6BAA6B,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;QAC5F,IAAI,CAAC,qBAAqB,GAAG,IAAI,4BAA4B,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;IAC5F,CAAC;IAEQ,cAAc;QACrB,QAAQ,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC/B,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC;gBACtC,IAAI,CAAC,sBAAsB,CAAC,sBAAsB,CAAC,IAAI,CAAC,sBAAsB,CAAC,mBAAmB,CAAC,eAAe,CAAC,CAAA;gBACnH,MAAK;YACP,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC;gBACnC,IAAI,CAAC,qBAAqB,CAAC,wBAAwB,CAAC,IAAI,CAAC,qBAAqB,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAA;gBAC/G,MAAK;YACP;gBACE,IAAI,CAAC,sBAAsB,CAAC,sBAAsB,CAAC,IAAI,CAAC,sBAAsB,CAAC,mBAAmB,CAAC,mBAAmB,CAAC,CAAA;gBACvH,IAAI,CAAC,qBAAqB,CAAC,wBAAwB,CAAC,IAAI,CAAC,qBAAqB,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAA;gBAC9G,MAAK;QACT,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/devices/OpalIceMaker/Managers/StatusManagers/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,6BAA6B,EAAE,MAAM,gEAAgE,CAAA;AAC9G,OAAO,EAAE,4BAA4B,EAAE,MAAM,+DAA+D,CAAA;AAC5G,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEpD,MAAM,OAAO,oBAAqB,SAAQ,cAAc;IAI7C;IACE;IACF;IACE;IANJ,sBAAsB,CAA+B;IACrD,qBAAqB,CAA8B;IAC1D,YACS,YAA6B,EAC3B,QAAyB,EAC3B,SAA4C,EAC1C,MAAgD;QAEzD,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;QAL3B,iBAAY,GAAZ,YAAY,CAAiB;QAC3B,aAAQ,GAAR,QAAQ,CAAiB;QAC3B,cAAS,GAAT,SAAS,CAAmC;QAC1C,WAAM,GAAN,MAAM,CAA0C;QAGzD,IAAI,CAAC,sBAAsB,GAAG,IAAI,6BAA6B,CAAC,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;QAC1G,IAAI,CAAC,qBAAqB,GAAG,IAAI,4BAA4B,CAAC,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;IAC1G,CAAC;IAEQ,cAAc;QACrB,QAAQ,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC/B,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC;gBACtC,IAAI,CAAC,sBAAsB,CAAC,sBAAsB,CAAC,IAAI,CAAC,sBAAsB,CAAC,mBAAmB,CAAC,eAAe,CAAC,CAAA;gBACnH,MAAK;YACP,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC;gBACnC,IAAI,CAAC,qBAAqB,CAAC,wBAAwB,CAAC,IAAI,CAAC,qBAAqB,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAA;gBAC/G,MAAK;YACP;gBACE,IAAI,CAAC,sBAAsB,CAAC,sBAAsB,CAAC,IAAI,CAAC,sBAAsB,CAAC,mBAAmB,CAAC,mBAAmB,CAAC,CAAA;gBACvH,IAAI,CAAC,qBAAqB,CAAC,wBAAwB,CAAC,IAAI,CAAC,qBAAqB,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAA;gBAC9G,MAAK;QACT,CAAC;IACH,CAAC;CACF"}
@@ -4,4 +4,5 @@ export * from './OpalMonitorManager.js';
4
4
  export * from './OpalNightlightSvcManager.js';
5
5
  export * from './OpalPowerSvcManager.js';
6
6
  export * from './OpalProgressSvcManager.js';
7
+ export * from './OpalDescaleSvcManager.js';
7
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/devices/OpalIceMaker/Managers/index.ts"],"names":[],"mappings":"AAAA,cAAc,sCAAsC,CAAA;AACpD,cAAc,6BAA6B,CAAA;AAC3C,cAAc,yBAAyB,CAAA;AACvC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,0BAA0B,CAAA;AACxC,cAAc,6BAA6B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/devices/OpalIceMaker/Managers/index.ts"],"names":[],"mappings":"AAAA,cAAc,sCAAsC,CAAA;AACpD,cAAc,6BAA6B,CAAA;AAC3C,cAAc,yBAAyB,CAAA;AACvC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,0BAA0B,CAAA;AACxC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,4BAA4B,CAAA"}
@@ -4,4 +4,5 @@ export * from './OpalMonitorManager.js';
4
4
  export * from './OpalNightlightSvcManager.js';
5
5
  export * from './OpalPowerSvcManager.js';
6
6
  export * from './OpalProgressSvcManager.js';
7
+ export * from './OpalDescaleSvcManager.js';
7
8
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/devices/OpalIceMaker/Managers/index.ts"],"names":[],"mappings":"AAAA,cAAc,sCAAsC,CAAA;AACpD,cAAc,6BAA6B,CAAA;AAC3C,cAAc,yBAAyB,CAAA;AACvC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,0BAA0B,CAAA;AACxC,cAAc,6BAA6B,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/devices/OpalIceMaker/Managers/index.ts"],"names":[],"mappings":"AAAA,cAAc,sCAAsC,CAAA;AACpD,cAAc,6BAA6B,CAAA;AAC3C,cAAc,yBAAyB,CAAA;AACvC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,0BAA0B,CAAA;AACxC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,4BAA4B,CAAA"}
@@ -1,16 +1,19 @@
1
1
  import type { PlatformAccessory } from 'homebridge';
2
2
  import type { devicesConfig, SmartHqContext, SmartHQPlatform } from '../../index.js';
3
3
  import { deviceBase } from '../../devices/device.js';
4
+ import { OpalProgressSvcManager, OpalPowerSvcManager, OpalFilterMaintenanceSvcManager, OpalDescaleSvcManager } from './Managers/index.js';
5
+ import { OpalStatusSvcManager } from './Managers/StatusManagers/index.js';
4
6
  export declare class SmartHQIceMaker extends deviceBase {
5
7
  readonly platform: SmartHQPlatform;
6
8
  readonly device: SmartHqContext['device'] & devicesConfig;
7
- private powerManager;
9
+ powerManager: OpalPowerSvcManager;
8
10
  private nightlightService;
9
- private statusManager;
11
+ statusManager: OpalStatusSvcManager;
10
12
  private monitorManager;
11
- private progressManager?;
13
+ progressManager?: OpalProgressSvcManager;
12
14
  private metadataManager;
13
- private filterMaintenanceManager;
15
+ filterMaintenanceManager: OpalFilterMaintenanceSvcManager;
16
+ descaleManager: OpalDescaleSvcManager;
14
17
  constructor(platform: SmartHQPlatform, accessory: PlatformAccessory<SmartHqContext>, device: SmartHqContext['device'] & devicesConfig);
15
18
  shutdown(): void;
16
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/devices/OpalIceMaker/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AACnD,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,OAAO,CAAA;AAE3E,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAapD,qBAAa,eAAgB,SAAQ,UAAU;IAU3C,QAAQ,CAAC,QAAQ,EAAE,eAAe;IAElC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,GAAG,aAAa;IAX3D,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,iBAAiB,CAA0B;IACnD,OAAO,CAAC,aAAa,CAAsB;IAC3C,OAAO,CAAC,cAAc,CAAoB;IAC1C,OAAO,CAAC,eAAe,CAAC,CAAwB;IAChD,OAAO,CAAC,eAAe,CAAwB;IAC/C,OAAO,CAAC,wBAAwB,CAAiC;gBAGtD,QAAQ,EAAE,eAAe,EAClC,SAAS,EAAE,iBAAiB,CAAC,cAAc,CAAC,EACnC,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,GAAG,aAAa;IAgC3D,QAAQ,IAAI,IAAI;CAIjB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/devices/OpalIceMaker/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AACnD,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,OAAO,CAAA;AAE3E,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAEpD,OAAO,EACL,sBAAsB,EACtB,mBAAmB,EAGnB,+BAA+B,EAE/B,qBAAqB,EACtB,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAG7E,qBAAa,eAAgB,SAAQ,UAAU;IAW3C,QAAQ,CAAC,QAAQ,EAAE,eAAe;IAElC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,GAAG,aAAa;IAZpD,YAAY,EAAE,mBAAmB,CAAA;IACxC,OAAO,CAAC,iBAAiB,CAA0B;IAC5C,aAAa,EAAE,oBAAoB,CAAA;IAC1C,OAAO,CAAC,cAAc,CAAoB;IACnC,eAAe,CAAC,EAAE,sBAAsB,CAAA;IAC/C,OAAO,CAAC,eAAe,CAAwB;IACxC,wBAAwB,EAAE,+BAA+B,CAAA;IACzD,cAAc,EAAE,qBAAqB,CAAA;gBAGjC,QAAQ,EAAE,eAAe,EAClC,SAAS,EAAE,iBAAiB,CAAC,cAAc,CAAC,EACnC,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,GAAG,aAAa;IA8B3D,QAAQ,IAAI,IAAI;CAIjB"}
@@ -1,5 +1,5 @@
1
1
  import { deviceBase } from '../../devices/device.js';
2
- import { OpalProgressSvcManager, OpalPowerSvcManager, OpalMonitorManager, OpalMetadataSvcManager, OpalFilterMaintenanceSvcManager, OpalNightlightSvcManager } from './Managers/index.js';
2
+ import { OpalProgressSvcManager, OpalPowerSvcManager, OpalMonitorManager, OpalMetadataSvcManager, OpalFilterMaintenanceSvcManager, OpalNightlightSvcManager, OpalDescaleSvcManager } from './Managers/index.js';
3
3
  import { OpalStatusSvcManager } from './Managers/StatusManagers/index.js';
4
4
  export class SmartHQIceMaker extends deviceBase {
5
5
  platform;
@@ -11,18 +11,22 @@ export class SmartHQIceMaker extends deviceBase {
11
11
  progressManager;
12
12
  metadataManager;
13
13
  filterMaintenanceManager;
14
+ descaleManager;
14
15
  constructor(platform, accessory, device) {
15
16
  super(platform, accessory, device);
16
17
  this.platform = platform;
17
18
  this.device = device;
18
19
  this.platform.debugSuccessLog(`Opal IceMaker Features: ${JSON.stringify(accessory.context.device.features)}`);
19
- this.metadataManager = new OpalMetadataSvcManager(platform, accessory, device);
20
- this.progressManager = new OpalProgressSvcManager(platform, accessory, device);
21
- this.filterMaintenanceManager = new OpalFilterMaintenanceSvcManager(platform, accessory, device);
20
+ /* Services- The order matters! */
22
21
  this.powerManager = new OpalPowerSvcManager(platform, accessory, device);
22
+ this.filterMaintenanceManager = new OpalFilterMaintenanceSvcManager(platform, accessory, device);
23
+ this.descaleManager = new OpalDescaleSvcManager(platform, accessory, device);
24
+ this.progressManager = new OpalProgressSvcManager(platform, accessory, device);
23
25
  this.nightlightService = new OpalNightlightSvcManager(platform, accessory, device);
24
- this.statusManager = new OpalStatusSvcManager(platform, accessory, device);
25
- this.monitorManager = new OpalMonitorManager(platform, accessory, device, this.statusManager, this.powerManager, this.progressManager, this.filterMaintenanceManager);
26
+ this.statusManager = new OpalStatusSvcManager(this, platform, accessory, device);
27
+ /* ------- -------- */
28
+ this.metadataManager = new OpalMetadataSvcManager(this, platform, accessory, device);
29
+ this.monitorManager = new OpalMonitorManager(this, platform, accessory, device);
26
30
  this.monitorManager.startMonitoring();
27
31
  }
28
32
  shutdown() {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/devices/OpalIceMaker/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAEpD,OAAO,EACL,sBAAsB,EACtB,mBAAmB,EACnB,kBAAkB,EAClB,sBAAsB,EACtB,+BAA+B,EAC/B,wBAAwB,EACzB,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAG7E,MAAM,OAAO,eAAgB,SAAQ,UAAU;IAUlC;IAEA;IAXH,YAAY,CAAqB;IACjC,iBAAiB,CAA0B;IAC3C,aAAa,CAAsB;IACnC,cAAc,CAAoB;IAClC,eAAe,CAAyB;IACxC,eAAe,CAAwB;IACvC,wBAAwB,CAAiC;IAEjE,YACW,QAAyB,EAClC,SAA4C,EACnC,MAAgD;QAEzD,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;QAJzB,aAAQ,GAAR,QAAQ,CAAiB;QAEzB,WAAM,GAAN,MAAM,CAA0C;QAIzD,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,2BAA2B,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;QAE7G,IAAI,CAAC,eAAe,GAAG,IAAI,sBAAsB,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;QAE9E,IAAI,CAAC,eAAe,GAAG,IAAI,sBAAsB,CAC/C,QAAQ,EACR,SAAS,EACT,MAAM,CACP,CAAA;QAED,IAAI,CAAC,wBAAwB,GAAG,IAAI,+BAA+B,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;QAEhG,IAAI,CAAC,YAAY,GAAG,IAAI,mBAAmB,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;QACxE,IAAI,CAAC,iBAAiB,GAAG,IAAI,wBAAwB,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;QAClF,IAAI,CAAC,aAAa,GAAG,IAAI,oBAAoB,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;QAC1E,IAAI,CAAC,cAAc,GAAG,IAAI,kBAAkB,CAC1C,QAAQ,EACR,SAAS,EACT,MAAM,EACN,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,wBAAwB,CAC9B,CAAA;QAED,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,CAAA;IACvC,CAAC;IAED,QAAQ;QACN,yBAAyB;QACzB,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE,CAAA;IACtC,CAAC;CACF"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/devices/OpalIceMaker/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAEpD,OAAO,EACL,sBAAsB,EACtB,mBAAmB,EACnB,kBAAkB,EAClB,sBAAsB,EACtB,+BAA+B,EAC/B,wBAAwB,EACxB,qBAAqB,EACtB,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAA;AAG7E,MAAM,OAAO,eAAgB,SAAQ,UAAU;IAWlC;IAEA;IAZJ,YAAY,CAAqB;IAChC,iBAAiB,CAA0B;IAC5C,aAAa,CAAsB;IAClC,cAAc,CAAoB;IACnC,eAAe,CAAyB;IACvC,eAAe,CAAwB;IACxC,wBAAwB,CAAiC;IACzD,cAAc,CAAuB;IAE5C,YACW,QAAyB,EAClC,SAA4C,EACnC,MAAgD;QAEzD,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;QAJzB,aAAQ,GAAR,QAAQ,CAAiB;QAEzB,WAAM,GAAN,MAAM,CAA0C;QAIzD,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,2BAA2B,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;QAE7G,kCAAkC;QAClC,IAAI,CAAC,YAAY,GAAG,IAAI,mBAAmB,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;QACxE,IAAI,CAAC,wBAAwB,GAAG,IAAI,+BAA+B,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;QAChG,IAAI,CAAC,cAAc,GAAG,IAAI,qBAAqB,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;QAC5E,IAAI,CAAC,eAAe,GAAG,IAAI,sBAAsB,CAC/C,QAAQ,EACR,SAAS,EACT,MAAM,CACP,CAAA;QACD,IAAI,CAAC,iBAAiB,GAAG,IAAI,wBAAwB,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;QAClF,IAAI,CAAC,aAAa,GAAG,IAAI,oBAAoB,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;QAChF,wBAAwB;QACxB,IAAI,CAAC,eAAe,GAAG,IAAI,sBAAsB,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;QAEpF,IAAI,CAAC,cAAc,GAAG,IAAI,kBAAkB,CAC1C,IAAI,EACJ,QAAQ,EACR,SAAS,EACT,MAAM,CACP,CAAA;QAED,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,CAAA;IACvC,CAAC;IAED,QAAQ;QACN,yBAAyB;QACzB,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE,CAAA;IACtC,CAAC;CACF"}
@@ -27,7 +27,7 @@ export class deviceBase {
27
27
  // Set accessory information
28
28
  accessory
29
29
  .getService(this.hap.Service.AccessoryInformation)
30
- .setCharacteristic(this.hap.Characteristic.Manufacturer, accessory.context.device.brand ?? 'GE')
30
+ .setCharacteristic(this.hap.Characteristic.Manufacturer, accessory.context.device.brand || 'GE')
31
31
  .setCharacteristic(this.hap.Characteristic.Name, accessory.context.device.nickname)
32
32
  .setCharacteristic(this.hap.Characteristic.ConfiguredName, accessory.context.device.nickname)
33
33
  .setCharacteristic(this.hap.Characteristic.Model, accessory.context.device.model)
@@ -1,8 +1,7 @@
1
1
  <p class="text-center">
2
2
  <img
3
3
  src="https://raw.githubusercontent.com/homebridge-plugins/homebridge-smarthq/latest/branding/Homebridge_x_SmartHQ.svg"
4
- alt="homebridge-smarthq logo"
5
- style="width: 40%" />
4
+ alt="homebridge-smarthq logo" style="width: 40%" />
6
5
  </p>
7
6
  <div id="pageIntro" style="display: none">
8
7
  <p class="lead text-center">Thank you for installing <strong>homebridge-smarthq</strong></p>
@@ -74,31 +73,38 @@
74
73
  <a href="https://github.com/homebridge-plugins/homebridge-smarthq/wiki" target="_blank">Wiki Home</a>
75
74
  </li>
76
75
  <li>
77
- <a href="https://github.com/homebridge-plugins/homebridge-smarthq/wiki/Configuration" target="_blank">Configuration</a>
76
+ <a href="https://github.com/homebridge-plugins/homebridge-smarthq/wiki/Configuration"
77
+ target="_blank">Configuration</a>
78
78
  </li>
79
79
  <li>
80
- <a href="https://github.com/homebridge-plugins/homebridge-smarthq/wiki/Beta-Version" target="_blank">Beta Version</a>
80
+ <a href="https://github.com/homebridge-plugins/homebridge-smarthq/wiki/Beta-Version" target="_blank">Beta
81
+ Version</a>
81
82
  </li>
82
83
  <li>
83
- <a href="https://github.com/homebridge-plugins/homebridge-smarthq/wiki/Node-Version" target="_blank">Node Version</a>
84
+ <a href="https://github.com/homebridge-plugins/homebridge-smarthq/wiki/Node-Version" target="_blank">Node
85
+ Version</a>
84
86
  </li>
85
87
  <li>
86
- <a href="https://github.com/homebridge-plugins/homebridge-smarthq/wiki/Uninstallation" target="_blank">Uninstallation</a>
88
+ <a href="https://github.com/homebridge-plugins/homebridge-smarthq/wiki/Uninstallation"
89
+ target="_blank">Uninstallation</a>
87
90
  </li>
88
91
  </ul>
89
92
  <h5>Features</h5>
90
93
  <ul>
91
94
  <li>
92
- <a href="https://github.com/homebridge-plugins/homebridge-smarthq/wiki/Supported-Devices" target="_blank">Supported Devices</a>
95
+ <a href="https://github.com/homebridge-plugins/homebridge-smarthq/wiki/Supported-Devices"
96
+ target="_blank">Supported Devices</a>
93
97
  </li>
94
98
  </ul>
95
99
  <h5>Help/About</h5>
96
100
  <ul>
97
101
  <li>
98
- <a href="https://github.com/homebridge-plugins/homebridge-smarthq/issues/new/choose" target="_blank">Support Request</a>
102
+ <a href="https://github.com/homebridge-plugins/homebridge-smarthq/issues/new/choose" target="_blank">Support
103
+ Request</a>
99
104
  </li>
100
105
  <li>
101
- <a href="https://github.com/homebridge-plugins/homebridge-smarthq/blob/latest/CHANGELOG.md" target="_blank">Changelog</a>
106
+ <a href="https://github.com/homebridge-plugins/homebridge-smarthq/blob/latest/CHANGELOG.md"
107
+ target="_blank">Changelog</a>
102
108
  </li>
103
109
  </ul>
104
110
  </div>
@@ -162,7 +168,7 @@
162
168
  const advancedOptions = thisAcc.services.filter((svc) => !!svc.characteristics.find((char) => char.displayName === 'Product Data'))
163
169
 
164
170
  if (advancedOptions.length) {
165
- // currently only supporting one advanced option
171
+ // currently only supporting one accessory for now - opal
166
172
  const raw = advancedOptions[0].characteristics.find((char) => char.displayName === 'Product Data').value.split(',')
167
173
  raw.forEach((r) => {
168
174
  const tr = document.createElement('tr')
@@ -170,19 +176,37 @@
170
176
  const metadata = Object.fromEntries(params)
171
177
  const th = document.createElement('th')
172
178
  th.scope = 'row'
173
- th.innerHTML = metadata.l?.replaceAll('_', ' ')
179
+ th.innerHTML = metadata.label?.replaceAll('_', ' ')
174
180
  tr.appendChild(th)
175
181
  const td = document.createElement('td')
176
182
 
177
183
  const input = document.createElement('input')
178
- input.type = metadata.t
179
- input.placeholder = metadata.p?.replaceAll('_', ' ') || ''
180
- const existingDefaultValue = metadata.t === 'number' ? Number(currentConfig[0].options?.[metadata.i]) : (currentConfig[0].options?.[metadata.i] ?? "")
184
+ input.type = metadata.type === 'number' ? 'number' : metadata.type === 'boolean' ? 'checkbox' : ''
185
+ input.placeholder = metadata.placeholder?.replaceAll('_', ' ') || ''
186
+ const existingDefaultValue = metadata.type === 'number' ?
187
+ Number(currentConfig[0].deviceOptions?.[metadata.device]?.[metadata.indicator] ?? 0)
188
+ : metadata.t === 'boolean' ? Boolean(currentConfig[0].deviceOptions?.[metadata.device]?.[metadata.indicator] ?? false)
189
+ : (currentConfig[0].deviceOptions?.[metadata.device]?.[metadata.indicator] ?? "")
181
190
 
182
191
  input.defaultValue = existingDefaultValue
192
+ input.checked = existingDefaultValue
183
193
  input.addEventListener('change', async () => {
184
- const value = metadata.t === 'number' ? Number(event.target.value) : (event.target.value ?? "")
185
- currentConfig[0].options = {...currentConfig[0].options, [metadata.i]: value }
194
+ const value =
195
+ metadata.type === 'number'
196
+ ? Number(event.target.value)
197
+ : metadata.type === 'boolean' ? Boolean(input.checked ?? false)
198
+ : (event.target.value ?? "")
199
+
200
+ currentConfig[0] = {
201
+ ...currentConfig[0],
202
+ deviceOptions: {
203
+ ...currentConfig[0].deviceOptions,
204
+ [metadata.device]: {
205
+ ...currentConfig[0].deviceOptions?.[metadata.device],
206
+ [metadata.indicator]: value
207
+ }
208
+ }
209
+ }
186
210
  await homebridge.updatePluginConfig([...currentConfig])
187
211
  await homebridge.savePluginConfig();
188
212
  })
@@ -261,4 +285,4 @@
261
285
  homebridge.hideSpinner();
262
286
  }
263
287
  })();
264
- </script>
288
+ </script>
@@ -1 +1 @@
1
- {"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../src/platform.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,GAAG,EAAE,qBAAqB,EAAE,GAAG,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAG7F,OAAO,KAAK,EAA8B,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA;AAoB/G;;;;GAIG;AACH,qBAAa,eAAgB,YAAW,qBAAqB;IACpD,WAAW,EAAE,iBAAiB,CAAC,cAAc,CAAC,EAAE,CAAA;IACvD,SAAgB,GAAG,EAAE,GAAG,CAAA;IACxB,SAAgB,GAAG,EAAE,OAAO,CAAA;IAC5B,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAA;IACpB,MAAM,EAAG,qBAAqB,CAAA;IAE9B,OAAO,EAAG,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAA;IACrC,cAAc,EAAG,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,cAAc,CAAA;IAC1D,OAAO,CAAC,QAAQ,CAAW;IAE3B,cAAc,EAAG,qBAAqB,CAAA;IACtC,eAAe,EAAG,OAAO,CAAC,SAAS,CAAC,CAAA;IACpC,mBAAmB,EAAG,OAAO,CAAC,aAAa,CAAC,CAAA;IAC5C,gBAAgB,EAAG,OAAO,CAAC,UAAU,CAAC,CAAA;IACtC,kBAAkB,EAAG,OAAO,CAAC,YAAY,CAAC,CAAA;IAC1C,SAAS,EAAG,OAAO,CAAA;IACnB,OAAO,EAAG,MAAM,CAAA;gBAGd,GAAG,EAAE,OAAO,EACZ,MAAM,EAAE,qBAAqB,EAC7B,GAAG,EAAE,GAAG;IAyDV;;;OAGG;IACG,kBAAkB,CAAC,SAAS,EAAE,iBAAiB,CAAC,cAAc,CAAC;IAOrE;;OAEG;IACG,YAAY;IAaZ,sBAAsB;IAsB5B;;;OAGG;IACG,eAAe;YAkHP,uBAAuB;YAiDvB,iBAAiB;YAiDjB,qBAAqB;YAgDrB,yBAAyB;IAiD1B,6BAA6B,CAAC,iBAAiB,EAAE,iBAAiB;IAMzE,sBAAsB;IAUtB,uBAAuB;IAevB,yBAAyB;IAgB/B;;;;;;;;OAQG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAMjC;;;;;;OAMG;IACG,2BAA2B,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAgCpG;;;OAGG;IACG,OAAO,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAMrC,UAAU,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAMxC,eAAe,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ7C,OAAO,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAMrC,YAAY,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ1C,QAAQ,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAMtC,aAAa,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ3C,QAAQ,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAUtC,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC;IAIlC,uBAAuB,IAAI,OAAO,CAAC,OAAO,CAAC;CAGlD"}
1
+ {"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../src/platform.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,GAAG,EAAE,qBAAqB,EAAE,GAAG,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAG7F,OAAO,KAAK,EAA8B,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA;AAoB/G;;;;GAIG;AACH,qBAAa,eAAgB,YAAW,qBAAqB;IACpD,WAAW,EAAE,iBAAiB,CAAC,cAAc,CAAC,EAAE,CAAA;IACvD,SAAgB,GAAG,EAAE,GAAG,CAAA;IACxB,SAAgB,GAAG,EAAE,OAAO,CAAA;IAC5B,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAA;IACpB,MAAM,EAAG,qBAAqB,CAAA;IAE9B,OAAO,EAAG,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAA;IACrC,cAAc,EAAG,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,cAAc,CAAA;IAC1D,OAAO,CAAC,QAAQ,CAAW;IAE3B,cAAc,EAAG,qBAAqB,CAAA;IACtC,eAAe,EAAG,OAAO,CAAC,SAAS,CAAC,CAAA;IACpC,mBAAmB,EAAG,OAAO,CAAC,aAAa,CAAC,CAAA;IAC5C,gBAAgB,EAAG,OAAO,CAAC,UAAU,CAAC,CAAA;IACtC,kBAAkB,EAAG,OAAO,CAAC,YAAY,CAAC,CAAA;IAC1C,SAAS,EAAG,OAAO,CAAA;IACnB,OAAO,EAAG,MAAM,CAAA;gBAGd,GAAG,EAAE,OAAO,EACZ,MAAM,EAAE,qBAAqB,EAC7B,GAAG,EAAE,GAAG;IA0DV;;;OAGG;IACG,kBAAkB,CAAC,SAAS,EAAE,iBAAiB,CAAC,cAAc,CAAC;IAOrE;;OAEG;IACG,YAAY;IAaZ,sBAAsB;IAsB5B;;;OAGG;IACG,eAAe;YAkHP,uBAAuB;YAiDvB,iBAAiB;YAiDjB,qBAAqB;YAgDrB,yBAAyB;IAiD1B,6BAA6B,CAAC,iBAAiB,EAAE,iBAAiB;IAMzE,sBAAsB;IAUtB,uBAAuB;IAevB,yBAAyB;IAgB/B;;;;;;;;OAQG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAMjC;;;;;;OAMG;IACG,2BAA2B,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAgCpG;;;OAGG;IACG,OAAO,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAMrC,UAAU,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAMxC,eAAe,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ7C,OAAO,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAMrC,YAAY,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ1C,QAAQ,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAMtC,aAAa,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ3C,QAAQ,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAUtC,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC;IAIlC,uBAAuB,IAAI,OAAO,CAAC,OAAO,CAAC;CAGlD"}
package/dist/platform.js CHANGED
@@ -48,6 +48,7 @@ export class SmartHQPlatform {
48
48
  credentials: config.credentials,
49
49
  devices: config.devices,
50
50
  options: config.options,
51
+ deviceOptions: config.deviceOptions
51
52
  };
52
53
  // Plugin Configuration
53
54
  this.getPlatformLogSettings();