@mp-consulting/homebridge-daikin-cloud 1.3.5 → 1.3.7

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 (234) hide show
  1. package/LICENSE +39 -1
  2. package/README.md +5 -3
  3. package/dist/src/accessories/air-conditioning-accessory.d.ts +2 -2
  4. package/dist/src/accessories/air-conditioning-accessory.d.ts.map +1 -1
  5. package/dist/src/accessories/air-conditioning-accessory.js.map +1 -1
  6. package/dist/src/accessories/altherma-accessory.d.ts +2 -2
  7. package/dist/src/accessories/altherma-accessory.d.ts.map +1 -1
  8. package/dist/src/accessories/altherma-accessory.js.map +1 -1
  9. package/dist/src/accessories/base-accessory.d.ts +6 -6
  10. package/dist/src/accessories/base-accessory.d.ts.map +1 -1
  11. package/dist/src/accessories/base-accessory.js +15 -15
  12. package/dist/src/accessories/base-accessory.js.map +1 -1
  13. package/dist/src/api/daikin-api.d.ts +26 -26
  14. package/dist/src/api/daikin-api.d.ts.map +1 -1
  15. package/dist/src/api/daikin-api.js +68 -42
  16. package/dist/src/api/daikin-api.js.map +1 -1
  17. package/dist/src/api/daikin-cloud.repository.d.ts.map +1 -1
  18. package/dist/src/api/daikin-cloud.repository.js +22 -14
  19. package/dist/src/api/daikin-cloud.repository.js.map +1 -1
  20. package/dist/src/api/daikin-controller.d.ts +41 -47
  21. package/dist/src/api/daikin-controller.d.ts.map +1 -1
  22. package/dist/src/api/daikin-controller.js +40 -64
  23. package/dist/src/api/daikin-controller.js.map +1 -1
  24. package/dist/src/api/daikin-device.d.ts +36 -31
  25. package/dist/src/api/daikin-device.d.ts.map +1 -1
  26. package/dist/src/api/daikin-device.js +45 -31
  27. package/dist/src/api/daikin-device.js.map +1 -1
  28. package/dist/src/api/daikin-mobile-oauth.d.ts +20 -20
  29. package/dist/src/api/daikin-mobile-oauth.d.ts.map +1 -1
  30. package/dist/src/api/daikin-mobile-oauth.js +49 -44
  31. package/dist/src/api/daikin-mobile-oauth.js.map +1 -1
  32. package/dist/src/api/daikin-oauth.d.ts +32 -32
  33. package/dist/src/api/daikin-oauth.d.ts.map +1 -1
  34. package/dist/src/api/daikin-oauth.js +64 -56
  35. package/dist/src/api/daikin-oauth.js.map +1 -1
  36. package/dist/src/api/daikin-schemas.d.ts +476 -351
  37. package/dist/src/api/daikin-schemas.d.ts.map +1 -1
  38. package/dist/src/api/daikin-schemas.js +11 -42
  39. package/dist/src/api/daikin-schemas.js.map +1 -1
  40. package/dist/src/api/daikin-types.d.ts +5 -1
  41. package/dist/src/api/daikin-types.d.ts.map +1 -1
  42. package/dist/src/api/daikin-types.js.map +1 -1
  43. package/dist/src/api/daikin-websocket.d.ts +31 -32
  44. package/dist/src/api/daikin-websocket.d.ts.map +1 -1
  45. package/dist/src/api/daikin-websocket.js +55 -35
  46. package/dist/src/api/daikin-websocket.js.map +1 -1
  47. package/dist/src/api/index.d.ts +2 -1
  48. package/dist/src/api/index.d.ts.map +1 -1
  49. package/dist/src/api/index.js +3 -1
  50. package/dist/src/api/index.js.map +1 -1
  51. package/dist/src/api/token-storage.d.ts +21 -0
  52. package/dist/src/api/token-storage.d.ts.map +1 -0
  53. package/dist/src/api/token-storage.js +90 -0
  54. package/dist/src/api/token-storage.js.map +1 -0
  55. package/dist/src/config/config-manager.d.ts +33 -33
  56. package/dist/src/config/config-manager.d.ts.map +1 -1
  57. package/dist/src/config/config-manager.js +33 -33
  58. package/dist/src/config/config-manager.js.map +1 -1
  59. package/dist/src/constants/api.constants.d.ts +4 -0
  60. package/dist/src/constants/api.constants.d.ts.map +1 -1
  61. package/dist/src/constants/api.constants.js +5 -1
  62. package/dist/src/constants/api.constants.js.map +1 -1
  63. package/dist/src/constants/device.constants.d.ts +4 -0
  64. package/dist/src/constants/device.constants.d.ts.map +1 -1
  65. package/dist/src/constants/device.constants.js +5 -1
  66. package/dist/src/constants/device.constants.js.map +1 -1
  67. package/dist/src/device/accessory-factory.d.ts +10 -10
  68. package/dist/src/device/accessory-factory.d.ts.map +1 -1
  69. package/dist/src/device/accessory-factory.js +7 -7
  70. package/dist/src/device/accessory-factory.js.map +1 -1
  71. package/dist/src/device/capability-detector.d.ts +8 -8
  72. package/dist/src/device/capability-detector.d.ts.map +1 -1
  73. package/dist/src/device/capability-detector.js +6 -6
  74. package/dist/src/device/capability-detector.js.map +1 -1
  75. package/dist/src/device/capability-docs.d.ts +1 -9
  76. package/dist/src/device/capability-docs.d.ts.map +1 -1
  77. package/dist/src/device/capability-docs.js +19 -73
  78. package/dist/src/device/capability-docs.js.map +1 -1
  79. package/dist/src/device/profiles/device-profile.d.ts +1 -1
  80. package/dist/src/device/profiles/device-profile.d.ts.map +1 -1
  81. package/dist/src/device/profiles/device-profile.js +4 -4
  82. package/dist/src/device/profiles/device-profile.js.map +1 -1
  83. package/dist/src/features/base-feature.d.ts +2 -2
  84. package/dist/src/features/base-feature.d.ts.map +1 -1
  85. package/dist/src/features/base-feature.js +2 -3
  86. package/dist/src/features/base-feature.js.map +1 -1
  87. package/dist/src/features/feature-manager.d.ts +8 -16
  88. package/dist/src/features/feature-manager.d.ts.map +1 -1
  89. package/dist/src/features/feature-manager.js +5 -17
  90. package/dist/src/features/feature-manager.js.map +1 -1
  91. package/dist/src/features/modes/dry-operation-mode.feature.d.ts +1 -1
  92. package/dist/src/features/modes/dry-operation-mode.feature.d.ts.map +1 -1
  93. package/dist/src/features/modes/dry-operation-mode.feature.js.map +1 -1
  94. package/dist/src/features/modes/econo-mode.feature.d.ts +1 -1
  95. package/dist/src/features/modes/econo-mode.feature.d.ts.map +1 -1
  96. package/dist/src/features/modes/econo-mode.feature.js.map +1 -1
  97. package/dist/src/features/modes/fan-only-operation-mode.feature.d.ts +1 -1
  98. package/dist/src/features/modes/fan-only-operation-mode.feature.d.ts.map +1 -1
  99. package/dist/src/features/modes/fan-only-operation-mode.feature.js.map +1 -1
  100. package/dist/src/features/modes/indoor-silent-mode.feature.d.ts +1 -1
  101. package/dist/src/features/modes/indoor-silent-mode.feature.d.ts.map +1 -1
  102. package/dist/src/features/modes/indoor-silent-mode.feature.js.map +1 -1
  103. package/dist/src/features/modes/outdoor-silent-mode.feature.d.ts +1 -1
  104. package/dist/src/features/modes/outdoor-silent-mode.feature.d.ts.map +1 -1
  105. package/dist/src/features/modes/outdoor-silent-mode.feature.js.map +1 -1
  106. package/dist/src/features/modes/powerful-mode.feature.d.ts +1 -1
  107. package/dist/src/features/modes/powerful-mode.feature.d.ts.map +1 -1
  108. package/dist/src/features/modes/powerful-mode.feature.js.map +1 -1
  109. package/dist/src/features/modes/streamer-mode.feature.d.ts +1 -1
  110. package/dist/src/features/modes/streamer-mode.feature.d.ts.map +1 -1
  111. package/dist/src/features/modes/streamer-mode.feature.js.map +1 -1
  112. package/dist/src/index.d.ts +1 -1
  113. package/dist/src/index.d.ts.map +1 -1
  114. package/dist/src/index.js.map +1 -1
  115. package/dist/src/platform.d.ts +11 -8
  116. package/dist/src/platform.d.ts.map +1 -1
  117. package/dist/src/platform.js +64 -15
  118. package/dist/src/platform.js.map +1 -1
  119. package/dist/src/services/climate-control.service.d.ts +8 -2
  120. package/dist/src/services/climate-control.service.d.ts.map +1 -1
  121. package/dist/src/services/climate-control.service.js +59 -58
  122. package/dist/src/services/climate-control.service.js.map +1 -1
  123. package/dist/src/services/hot-water-tank.service.d.ts +6 -2
  124. package/dist/src/services/hot-water-tank.service.d.ts.map +1 -1
  125. package/dist/src/services/hot-water-tank.service.js +33 -31
  126. package/dist/src/services/hot-water-tank.service.js.map +1 -1
  127. package/dist/src/types/daikin-enums.js +12 -12
  128. package/dist/src/types/daikin-enums.js.map +1 -1
  129. package/dist/src/types/device-capabilities.d.ts +1 -1
  130. package/dist/src/types/device-capabilities.d.ts.map +1 -1
  131. package/dist/src/utils/log-context.d.ts +23 -23
  132. package/dist/src/utils/log-context.d.ts.map +1 -1
  133. package/dist/src/utils/log-context.js +28 -28
  134. package/dist/src/utils/log-context.js.map +1 -1
  135. package/dist/src/utils/strings.d.ts.map +1 -1
  136. package/dist/src/utils/strings.js.map +1 -1
  137. package/dist/src/utils/update-mapper.d.ts +16 -16
  138. package/dist/src/utils/update-mapper.d.ts.map +1 -1
  139. package/dist/src/utils/update-mapper.js +14 -14
  140. package/dist/src/utils/update-mapper.js.map +1 -1
  141. package/homebridge-ui/public/index.html +2 -2
  142. package/homebridge-ui/public/script.js +957 -898
  143. package/homebridge-ui/server.js +746 -678
  144. package/package.json +29 -27
  145. package/.claude/settings.json +0 -3
  146. package/.claude/settings.local.json +0 -29
  147. package/CHANGELOG.md +0 -103
  148. package/CLAUDE.md +0 -269
  149. package/config.md +0 -2
  150. package/dist/src/api/daikin-device-tracker.d.ts +0 -97
  151. package/dist/src/api/daikin-device-tracker.d.ts.map +0 -1
  152. package/dist/src/api/daikin-device-tracker.js +0 -136
  153. package/dist/src/api/daikin-device-tracker.js.map +0 -1
  154. package/dist/src/api/http-interceptor.d.ts +0 -99
  155. package/dist/src/api/http-interceptor.d.ts.map +0 -1
  156. package/dist/src/api/http-interceptor.js +0 -177
  157. package/dist/src/api/http-interceptor.js.map +0 -1
  158. package/dist/src/di/service-container.d.ts +0 -92
  159. package/dist/src/di/service-container.d.ts.map +0 -1
  160. package/dist/src/di/service-container.js +0 -156
  161. package/dist/src/di/service-container.js.map +0 -1
  162. package/dist/src/features/feature-registry.d.ts +0 -100
  163. package/dist/src/features/feature-registry.d.ts.map +0 -1
  164. package/dist/src/features/feature-registry.js +0 -142
  165. package/dist/src/features/feature-registry.js.map +0 -1
  166. package/dist/src/services/service-factory.d.ts +0 -46
  167. package/dist/src/services/service-factory.d.ts.map +0 -1
  168. package/dist/src/services/service-factory.js +0 -72
  169. package/dist/src/services/service-factory.js.map +0 -1
  170. package/dist/src/utils/error-handler.d.ts +0 -101
  171. package/dist/src/utils/error-handler.d.ts.map +0 -1
  172. package/dist/src/utils/error-handler.js +0 -251
  173. package/dist/src/utils/error-handler.js.map +0 -1
  174. package/dist/src/utils/retry.d.ts +0 -42
  175. package/dist/src/utils/retry.d.ts.map +0 -1
  176. package/dist/src/utils/retry.js +0 -70
  177. package/dist/src/utils/retry.js.map +0 -1
  178. package/docs/ARCHITECTURE.md +0 -645
  179. package/docs/IMPLEMENTATION_GUIDE.md +0 -899
  180. package/docs/IMPROVEMENTS_SUMMARY.md +0 -415
  181. package/docs/NEXT_STEPS.md +0 -368
  182. package/docs/Screenshot 2024-07-04 at 18.41.28.png +0 -0
  183. package/docs/TROUBLESHOOTING.md +0 -475
  184. package/docs/api-response-for-BRP069A8x.json +0 -520
  185. package/docs/api-response-for-BRP069C4x-2.json +0 -881
  186. package/docs/api-response-for-BRP069C4x.json +0 -916
  187. package/docs/api-response-for-altherma.json +0 -759
  188. package/docs/api-response-for-altherma2.json +0 -2735
  189. package/docs/api-response-with-multiple-devices-incl-heatpump.json +0 -2544
  190. package/docs/cr-insance-altherma-id-0.json +0 -834
  191. package/docs/mock-air-to-air-dx23.json +0 -759
  192. package/docs/mock-air-to-air-dx4.json +0 -1134
  193. package/docs/mock-airpurifier-with-humidifier.json +0 -732
  194. package/docs/mock-airpurifier.json +0 -450
  195. package/docs/mock-altherma-air-to-water-lan.json +0 -845
  196. package/docs/mock-altherma-air-to-water-wlan.json +0 -845
  197. package/docs/mock-d2cnd-gas-boiler.json +0 -649
  198. package/docs/setpointmode-vs-controlmode-vs-setpoints-vs-sensorydata.txt +0 -6
  199. package/images/fan-speed.jpeg +0 -0
  200. package/images/homekit-controls.jpeg +0 -0
  201. package/images/homekit-settings.jpeg +0 -0
  202. package/images/swing-mode.png +0 -0
  203. package/jest.config.ts +0 -13
  204. package/test/fixtures/altherma-crSense-2.ts +0 -834
  205. package/test/fixtures/altherma-fraction.ts +0 -718
  206. package/test/fixtures/altherma-heat-pump-2.ts +0 -479
  207. package/test/fixtures/altherma-heat-pump.ts +0 -757
  208. package/test/fixtures/altherma-miladcerkic-off.ts +0 -524
  209. package/test/fixtures/altherma-miladcerkic.ts +0 -524
  210. package/test/fixtures/altherma-v1ckoeln.ts +0 -644
  211. package/test/fixtures/altherma-with-embedded-id-zero.ts +0 -834
  212. package/test/fixtures/dx23-airco-2.ts +0 -343
  213. package/test/fixtures/dx23-airco.ts +0 -518
  214. package/test/fixtures/dx4-airco.ts +0 -914
  215. package/test/fixtures/unknown-jan.ts +0 -488
  216. package/test/fixtures/unknown-kitchen-guests.ts +0 -488
  217. package/test/helpers/test-isolation.ts +0 -228
  218. package/test/integration/air-conditioning.test.ts +0 -410
  219. package/test/integration/altherma.test.ts +0 -289
  220. package/test/integration/platform.test.ts +0 -118
  221. package/test/mocks/index.ts +0 -27
  222. package/test/test-gigya-auth.js +0 -443
  223. package/test/test-mobile-oauth.js +0 -175
  224. package/test/test-websocket-mobile.js +0 -123
  225. package/test/test-websocket.js +0 -116
  226. package/test/unit/api/__snapshots__/daikinCloud.test.ts.snap +0 -1320
  227. package/test/unit/api/daikin-api.test.ts +0 -384
  228. package/test/unit/api/daikin-oauth.test.ts +0 -214
  229. package/test/unit/api/daikinCloud.test.ts +0 -12
  230. package/test/unit/config/config-manager.test.ts +0 -271
  231. package/test/unit/device/daikin-device.test.ts +0 -79
  232. package/test/unit/services/hot-water-tank.service.test.ts +0 -123
  233. package/test/unit/utils/error-handler.test.ts +0 -274
  234. package/test/unit/utils/log-context.test.ts +0 -271
@@ -0,0 +1 @@
1
+ {"version":3,"file":"token-storage.d.ts","sourceRoot":"","sources":["../../../src/api/token-storage.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAM/C;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI,CAgBnE;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAM1E;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAQtD"}
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+ /**
3
+ * Token Storage Utility
4
+ *
5
+ * Provides shared token file operations for OAuth clients.
6
+ * Ensures consistent file permissions and error handling.
7
+ */
8
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
9
+ if (k2 === undefined) k2 = k;
10
+ var desc = Object.getOwnPropertyDescriptor(m, k);
11
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
12
+ desc = { enumerable: true, get: function() { return m[k]; } };
13
+ }
14
+ Object.defineProperty(o, k2, desc);
15
+ }) : (function(o, m, k, k2) {
16
+ if (k2 === undefined) k2 = k;
17
+ o[k2] = m[k];
18
+ }));
19
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
20
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
21
+ }) : function(o, v) {
22
+ o["default"] = v;
23
+ });
24
+ var __importStar = (this && this.__importStar) || (function () {
25
+ var ownKeys = function(o) {
26
+ ownKeys = Object.getOwnPropertyNames || function (o) {
27
+ var ar = [];
28
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
29
+ return ar;
30
+ };
31
+ return ownKeys(o);
32
+ };
33
+ return function (mod) {
34
+ if (mod && mod.__esModule) return mod;
35
+ var result = {};
36
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
37
+ __setModuleDefault(result, mod);
38
+ return result;
39
+ };
40
+ })();
41
+ Object.defineProperty(exports, "__esModule", { value: true });
42
+ exports.loadTokenFromFile = loadTokenFromFile;
43
+ exports.saveTokenToFile = saveTokenToFile;
44
+ exports.deleteTokenFile = deleteTokenFile;
45
+ const fs = __importStar(require("node:fs"));
46
+ const daikin_schemas_1 = require("./daikin-schemas");
47
+ /** File permissions: owner read/write only */
48
+ const TOKEN_FILE_MODE = 0o600;
49
+ /**
50
+ * Load a token set from a file.
51
+ * Validates the loaded data against the TokenSetSchema.
52
+ */
53
+ function loadTokenFromFile(filePath) {
54
+ try {
55
+ if (fs.existsSync(filePath)) {
56
+ const data = fs.readFileSync(filePath, 'utf8');
57
+ const parsed = JSON.parse(data);
58
+ const result = daikin_schemas_1.TokenSetSchema.safeParse(parsed);
59
+ if (result.success) {
60
+ return result.data;
61
+ }
62
+ // Token file has invalid structure - treat as missing
63
+ return null;
64
+ }
65
+ }
66
+ catch {
67
+ // Return null on any read/parse error
68
+ }
69
+ return null;
70
+ }
71
+ /**
72
+ * Save a token set to a file with restricted permissions.
73
+ */
74
+ function saveTokenToFile(filePath, tokenSet) {
75
+ fs.writeFileSync(filePath, JSON.stringify(tokenSet, null, 2), { encoding: 'utf8', mode: TOKEN_FILE_MODE });
76
+ }
77
+ /**
78
+ * Delete a token file if it exists.
79
+ */
80
+ function deleteTokenFile(filePath) {
81
+ try {
82
+ if (fs.existsSync(filePath)) {
83
+ fs.unlinkSync(filePath);
84
+ }
85
+ }
86
+ catch {
87
+ // Ignore delete errors
88
+ }
89
+ }
90
+ //# sourceMappingURL=token-storage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"token-storage.js","sourceRoot":"","sources":["../../../src/api/token-storage.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAaH,8CAgBC;AAKD,0CAMC;AAKD,0CAQC;AAnDD,4CAA8B;AAE9B,qDAAkD;AAElD,8CAA8C;AAC9C,MAAM,eAAe,GAAG,KAAK,CAAC;AAE9B;;;GAGG;AACH,SAAgB,iBAAiB,CAAC,QAAgB;IAChD,IAAI,CAAC;QACH,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,MAAM,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAC/C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAChC,MAAM,MAAM,GAAG,+BAAc,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YAChD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,OAAO,MAAM,CAAC,IAAgB,CAAC;YACjC,CAAC;YACD,sDAAsD;YACtD,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,sCAAsC;IACxC,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;GAEG;AACH,SAAgB,eAAe,CAAC,QAAgB,EAAE,QAAkB;IAClE,EAAE,CAAC,aAAa,CACd,QAAQ,EACR,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,EACjC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,CAC5C,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAgB,eAAe,CAAC,QAAgB;IAC9C,IAAI,CAAC;QACH,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,uBAAuB;IACzB,CAAC;AACH,CAAC"}
@@ -4,7 +4,7 @@
4
4
  * Centralizes configuration management with validation,
5
5
  * defaults, and type-safe access to config values.
6
6
  */
7
- import { AuthMode } from '../api/daikin-types';
7
+ import type { AuthMode } from '../api/daikin-types';
8
8
  export interface PluginConfig {
9
9
  platform: string;
10
10
  name?: string;
@@ -50,24 +50,24 @@ export declare class ConfigManager {
50
50
  private normalized;
51
51
  constructor(config: PluginConfig);
52
52
  /**
53
- * Get the normalized configuration with defaults applied
54
- */
53
+ * Get the normalized configuration with defaults applied
54
+ */
55
55
  getNormalized(): NormalizedConfig;
56
56
  /**
57
- * Get authentication mode
58
- */
57
+ * Get authentication mode
58
+ */
59
59
  getAuthMode(): AuthMode;
60
60
  /**
61
- * Check if mobile app mode is enabled
62
- */
61
+ * Check if mobile app mode is enabled
62
+ */
63
63
  isMobileAppMode(): boolean;
64
64
  /**
65
- * Check if developer portal mode is enabled
66
- */
65
+ * Check if developer portal mode is enabled
66
+ */
67
67
  isDeveloperPortalMode(): boolean;
68
68
  /**
69
- * Get developer portal credentials
70
- */
69
+ * Get developer portal credentials
70
+ */
71
71
  getDeveloperCredentials(): {
72
72
  clientId: string;
73
73
  clientSecret: string;
@@ -76,58 +76,58 @@ export declare class ConfigManager {
76
76
  oidcCallbackServerBindAddr?: string;
77
77
  } | null;
78
78
  /**
79
- * Get mobile app credentials
80
- */
79
+ * Get mobile app credentials
80
+ */
81
81
  getMobileCredentials(): {
82
82
  email: string;
83
83
  password: string;
84
84
  } | null;
85
85
  /**
86
- * Get update interval in milliseconds
87
- */
86
+ * Get update interval in milliseconds
87
+ */
88
88
  getUpdateIntervalMs(): number;
89
89
  /**
90
- * Get force update delay in milliseconds
91
- */
90
+ * Get force update delay in milliseconds
91
+ */
92
92
  getForceUpdateDelayMs(): number;
93
93
  /**
94
- * Get excluded device IDs as a Set
95
- */
94
+ * Get excluded device IDs as a Set
95
+ */
96
96
  getExcludedDeviceIds(): Set<string>;
97
97
  /**
98
- * Check if a device is excluded
99
- */
98
+ * Check if a device is excluded
99
+ */
100
100
  isDeviceExcluded(deviceId: string): boolean;
101
101
  /**
102
- * Get feature configuration
103
- */
102
+ * Get feature configuration
103
+ */
104
104
  getFeatures(): NormalizedConfig['features'];
105
105
  /**
106
- * Check if WebSocket is enabled
107
- */
106
+ * Check if WebSocket is enabled
107
+ */
108
108
  isWebSocketEnabled(): boolean;
109
109
  /**
110
- * Validate configuration using Zod schemas
111
- */
110
+ * Validate configuration using Zod schemas
111
+ */
112
112
  validateWithZod(): {
113
113
  valid: boolean;
114
114
  errors: string[];
115
115
  };
116
116
  /**
117
- * Validate configuration
118
- */
117
+ * Validate configuration
118
+ */
119
119
  validate(): {
120
120
  valid: boolean;
121
121
  errors: string[];
122
122
  warnings: string[];
123
123
  };
124
124
  /**
125
- * Normalize the configuration with all defaults applied
126
- */
125
+ * Normalize the configuration with all defaults applied
126
+ */
127
127
  private normalize;
128
128
  /**
129
- * Get raw config value (escape hatch for migration)
130
- */
129
+ * Get raw config value (escape hatch for migration)
130
+ */
131
131
  getRawConfig(): PluginConfig;
132
132
  }
133
133
  //# sourceMappingURL=config-manager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config-manager.d.ts","sourceRoot":"","sources":["../../../src/config/config-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config-manager.d.ts","sourceRoot":"","sources":["../../../src/config/config-manager.ts"],"names":[],"mappings":"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"}
@@ -16,8 +16,8 @@ class ConfigManager {
16
16
  this.config = config;
17
17
  }
18
18
  /**
19
- * Get the normalized configuration with defaults applied
20
- */
19
+ * Get the normalized configuration with defaults applied
20
+ */
21
21
  getNormalized() {
22
22
  if (!this.normalized) {
23
23
  this.normalized = this.normalize();
@@ -25,26 +25,26 @@ class ConfigManager {
25
25
  return this.normalized;
26
26
  }
27
27
  /**
28
- * Get authentication mode
29
- */
28
+ * Get authentication mode
29
+ */
30
30
  getAuthMode() {
31
31
  return this.config.authMode === 'mobile_app' ? 'mobile_app' : 'developer_portal';
32
32
  }
33
33
  /**
34
- * Check if mobile app mode is enabled
35
- */
34
+ * Check if mobile app mode is enabled
35
+ */
36
36
  isMobileAppMode() {
37
37
  return this.getAuthMode() === 'mobile_app';
38
38
  }
39
39
  /**
40
- * Check if developer portal mode is enabled
41
- */
40
+ * Check if developer portal mode is enabled
41
+ */
42
42
  isDeveloperPortalMode() {
43
43
  return this.getAuthMode() === 'developer_portal';
44
44
  }
45
45
  /**
46
- * Get developer portal credentials
47
- */
46
+ * Get developer portal credentials
47
+ */
48
48
  getDeveloperCredentials() {
49
49
  const { clientId, clientSecret, callbackServerExternalAddress, callbackServerPort } = this.config;
50
50
  if (!clientId || !clientSecret || !callbackServerExternalAddress) {
@@ -59,8 +59,8 @@ class ConfigManager {
59
59
  };
60
60
  }
61
61
  /**
62
- * Get mobile app credentials
63
- */
62
+ * Get mobile app credentials
63
+ */
64
64
  getMobileCredentials() {
65
65
  const { daikinEmail, daikinPassword } = this.config;
66
66
  if (!daikinEmail || !daikinPassword) {
@@ -72,33 +72,33 @@ class ConfigManager {
72
72
  };
73
73
  }
74
74
  /**
75
- * Get update interval in milliseconds
76
- */
75
+ * Get update interval in milliseconds
76
+ */
77
77
  getUpdateIntervalMs() {
78
78
  const minutes = this.config.updateIntervalInMinutes || constants_1.DEFAULT_UPDATE_INTERVAL_MINUTES;
79
79
  return constants_1.ONE_MINUTE_MS * minutes;
80
80
  }
81
81
  /**
82
- * Get force update delay in milliseconds
83
- */
82
+ * Get force update delay in milliseconds
83
+ */
84
84
  getForceUpdateDelayMs() {
85
85
  return this.config.forceUpdateDelay ?? constants_1.DEFAULT_FORCE_UPDATE_DELAY_MS;
86
86
  }
87
87
  /**
88
- * Get excluded device IDs as a Set
89
- */
88
+ * Get excluded device IDs as a Set
89
+ */
90
90
  getExcludedDeviceIds() {
91
91
  return new Set(this.config.excludedDevicesByDeviceId || []);
92
92
  }
93
93
  /**
94
- * Check if a device is excluded
95
- */
94
+ * Check if a device is excluded
95
+ */
96
96
  isDeviceExcluded(deviceId) {
97
97
  return this.getExcludedDeviceIds().has(deviceId);
98
98
  }
99
99
  /**
100
- * Get feature configuration
101
- */
100
+ * Get feature configuration
101
+ */
102
102
  getFeatures() {
103
103
  const legacy = this.config.showExtraFeatures === true;
104
104
  return {
@@ -112,18 +112,18 @@ class ConfigManager {
112
112
  };
113
113
  }
114
114
  /**
115
- * Check if WebSocket is enabled
116
- */
115
+ * Check if WebSocket is enabled
116
+ */
117
117
  isWebSocketEnabled() {
118
118
  return this.config.enableWebSocket !== false;
119
119
  }
120
120
  /**
121
- * Validate configuration using Zod schemas
122
- */
121
+ * Validate configuration using Zod schemas
122
+ */
123
123
  validateWithZod() {
124
124
  const configData = {
125
125
  authMode: this.getAuthMode(),
126
- tokenFilePath: '',
126
+ tokenFilePath: '', // This will be set by the controller
127
127
  clientId: this.config.clientId,
128
128
  clientSecret: this.config.clientSecret,
129
129
  callbackServerExternalAddress: this.config.callbackServerExternalAddress,
@@ -142,8 +142,8 @@ class ConfigManager {
142
142
  return { valid: true, errors: [] };
143
143
  }
144
144
  /**
145
- * Validate configuration
146
- */
145
+ * Validate configuration
146
+ */
147
147
  validate() {
148
148
  const errors = [];
149
149
  const warnings = [];
@@ -210,8 +210,8 @@ class ConfigManager {
210
210
  };
211
211
  }
212
212
  /**
213
- * Normalize the configuration with all defaults applied
214
- */
213
+ * Normalize the configuration with all defaults applied
214
+ */
215
215
  normalize() {
216
216
  return {
217
217
  authMode: this.getAuthMode(),
@@ -223,8 +223,8 @@ class ConfigManager {
223
223
  };
224
224
  }
225
225
  /**
226
- * Get raw config value (escape hatch for migration)
227
- */
226
+ * Get raw config value (escape hatch for migration)
227
+ */
228
228
  getRawConfig() {
229
229
  return this.config;
230
230
  }
@@ -1 +1 @@
1
- {"version":3,"file":"config-manager.js","sourceRoot":"","sources":["../../../src/config/config-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config-manager.js","sourceRoot":"","sources":["../../../src/config/config-manager.ts"],"names":[],"mappings":"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"}
@@ -29,4 +29,8 @@ export declare const MAX_RETRY_ATTEMPTS = 3;
29
29
  export declare const RETRY_BASE_DELAY_MS = 1000;
30
30
  /** Maximum delay for exponential backoff (milliseconds) */
31
31
  export declare const RETRY_MAX_DELAY_MS = 10000;
32
+ /** HTTP request timeout (milliseconds) */
33
+ export declare const HTTP_REQUEST_TIMEOUT_MS = 30000;
34
+ /** Daikin WebSocket URL for real-time updates */
35
+ export declare const DAIKIN_WEBSOCKET_URL = "wss://wsapi.onecta.daikineurope.com";
32
36
  //# sourceMappingURL=api.constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"api.constants.d.ts","sourceRoot":"","sources":["../../../src/constants/api.constants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,wBAAwB;AACxB,eAAO,MAAM,WAAW;;;;;;;;;;;;CAYd,CAAC;AAEX,4DAA4D;AAC5D,eAAO,MAAM,2BAA2B,KAAK,CAAC;AAE9C,8DAA8D;AAC9D,eAAO,MAAM,4BAA4B,QAAQ,CAAC;AAElD,kFAAkF;AAClF,eAAO,MAAM,4BAA4B,KAAK,CAAC;AAE/C,wDAAwD;AACxD,eAAO,MAAM,kBAAkB,IAAI,CAAC;AAEpC,wDAAwD;AACxD,eAAO,MAAM,mBAAmB,OAAO,CAAC;AAExC,2DAA2D;AAC3D,eAAO,MAAM,kBAAkB,QAAQ,CAAC"}
1
+ {"version":3,"file":"api.constants.d.ts","sourceRoot":"","sources":["../../../src/constants/api.constants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,wBAAwB;AACxB,eAAO,MAAM,WAAW;;;;;;;;;;;;CAYd,CAAC;AAEX,4DAA4D;AAC5D,eAAO,MAAM,2BAA2B,KAAK,CAAC;AAE9C,8DAA8D;AAC9D,eAAO,MAAM,4BAA4B,QAAQ,CAAC;AAElD,kFAAkF;AAClF,eAAO,MAAM,4BAA4B,KAAK,CAAC;AAE/C,wDAAwD;AACxD,eAAO,MAAM,kBAAkB,IAAI,CAAC;AAEpC,wDAAwD;AACxD,eAAO,MAAM,mBAAmB,OAAO,CAAC;AAExC,2DAA2D;AAC3D,eAAO,MAAM,kBAAkB,QAAQ,CAAC;AAExC,0CAA0C;AAC1C,eAAO,MAAM,uBAAuB,QAAQ,CAAC;AAE7C,iDAAiD;AACjD,eAAO,MAAM,oBAAoB,wCAAwC,CAAC"}
@@ -5,7 +5,7 @@
5
5
  * Constants related to API communication, rate limiting, and retries.
6
6
  */
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.RETRY_MAX_DELAY_MS = exports.RETRY_BASE_DELAY_MS = exports.MAX_RETRY_ATTEMPTS = exports.RATE_LIMIT_WARNING_THRESHOLD = exports.MAX_RATE_LIMIT_BLOCK_SECONDS = exports.DEFAULT_RETRY_AFTER_SECONDS = exports.HTTP_STATUS = void 0;
8
+ exports.DAIKIN_WEBSOCKET_URL = exports.HTTP_REQUEST_TIMEOUT_MS = exports.RETRY_MAX_DELAY_MS = exports.RETRY_BASE_DELAY_MS = exports.MAX_RETRY_ATTEMPTS = exports.RATE_LIMIT_WARNING_THRESHOLD = exports.MAX_RATE_LIMIT_BLOCK_SECONDS = exports.DEFAULT_RETRY_AFTER_SECONDS = exports.HTTP_STATUS = void 0;
9
9
  /** HTTP Status Codes */
10
10
  exports.HTTP_STATUS = {
11
11
  OK: 200,
@@ -32,4 +32,8 @@ exports.MAX_RETRY_ATTEMPTS = 3;
32
32
  exports.RETRY_BASE_DELAY_MS = 1000;
33
33
  /** Maximum delay for exponential backoff (milliseconds) */
34
34
  exports.RETRY_MAX_DELAY_MS = 10000;
35
+ /** HTTP request timeout (milliseconds) */
36
+ exports.HTTP_REQUEST_TIMEOUT_MS = 30000;
37
+ /** Daikin WebSocket URL for real-time updates */
38
+ exports.DAIKIN_WEBSOCKET_URL = 'wss://wsapi.onecta.daikineurope.com';
35
39
  //# sourceMappingURL=api.constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"api.constants.js","sourceRoot":"","sources":["../../../src/constants/api.constants.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,wBAAwB;AACX,QAAA,WAAW,GAAG;IACvB,EAAE,EAAE,GAAG;IACP,UAAU,EAAE,GAAG;IACf,WAAW,EAAE,GAAG;IAChB,YAAY,EAAE,GAAG;IACjB,SAAS,EAAE,GAAG;IACd,QAAQ,EAAE,GAAG;IACb,oBAAoB,EAAE,GAAG;IACzB,iBAAiB,EAAE,GAAG;IACtB,WAAW,EAAE,GAAG;IAChB,mBAAmB,EAAE,GAAG;IACxB,eAAe,EAAE,GAAG;CACd,CAAC;AAEX,4DAA4D;AAC/C,QAAA,2BAA2B,GAAG,EAAE,CAAC;AAE9C,8DAA8D;AACjD,QAAA,4BAA4B,GAAG,KAAK,CAAC;AAElD,kFAAkF;AACrE,QAAA,4BAA4B,GAAG,EAAE,CAAC;AAE/C,wDAAwD;AAC3C,QAAA,kBAAkB,GAAG,CAAC,CAAC;AAEpC,wDAAwD;AAC3C,QAAA,mBAAmB,GAAG,IAAI,CAAC;AAExC,2DAA2D;AAC9C,QAAA,kBAAkB,GAAG,KAAK,CAAC"}
1
+ {"version":3,"file":"api.constants.js","sourceRoot":"","sources":["../../../src/constants/api.constants.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,wBAAwB;AACX,QAAA,WAAW,GAAG;IACzB,EAAE,EAAE,GAAG;IACP,UAAU,EAAE,GAAG;IACf,WAAW,EAAE,GAAG;IAChB,YAAY,EAAE,GAAG;IACjB,SAAS,EAAE,GAAG;IACd,QAAQ,EAAE,GAAG;IACb,oBAAoB,EAAE,GAAG;IACzB,iBAAiB,EAAE,GAAG;IACtB,WAAW,EAAE,GAAG;IAChB,mBAAmB,EAAE,GAAG;IACxB,eAAe,EAAE,GAAG;CACZ,CAAC;AAEX,4DAA4D;AAC/C,QAAA,2BAA2B,GAAG,EAAE,CAAC;AAE9C,8DAA8D;AACjD,QAAA,4BAA4B,GAAG,KAAK,CAAC;AAElD,kFAAkF;AACrE,QAAA,4BAA4B,GAAG,EAAE,CAAC;AAE/C,wDAAwD;AAC3C,QAAA,kBAAkB,GAAG,CAAC,CAAC;AAEpC,wDAAwD;AAC3C,QAAA,mBAAmB,GAAG,IAAI,CAAC;AAExC,2DAA2D;AAC9C,QAAA,kBAAkB,GAAG,KAAK,CAAC;AAExC,0CAA0C;AAC7B,QAAA,uBAAuB,GAAG,KAAK,CAAC;AAE7C,iDAAiD;AACpC,QAAA,oBAAoB,GAAG,qCAAqC,CAAC"}
@@ -15,6 +15,10 @@ export declare const HOMEKIT_TEMP_MIN = 10;
15
15
  export declare const HOMEKIT_TEMP_MAX = 38;
16
16
  /** Cooling temperature clamp maximum (°C) */
17
17
  export declare const COOLING_TEMP_CLAMP_MAX = 35;
18
+ /** Heating temperature clamp minimum (°C) */
19
+ export declare const HEATING_TEMP_CLAMP_MIN = 0;
20
+ /** Heating temperature clamp maximum (°C) */
21
+ export declare const HEATING_TEMP_CLAMP_MAX = 25;
18
22
  /** Fan speed levels (1-5) to HomeKit percentage multiplier */
19
23
  export declare const FAN_SPEED_TO_PERCENTAGE_MULTIPLIER = 20;
20
24
  /** Minimum fan speed level */
@@ -1 +1 @@
1
- {"version":3,"file":"device.constants.d.ts","sourceRoot":"","sources":["../../../src/constants/device.constants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,oEAAoE;AACpE,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAE3C,yEAAyE;AACzE,eAAO,MAAM,6BAA6B,KAAK,CAAC;AAEhD,iEAAiE;AACjE,eAAO,MAAM,oCAAoC,KAAK,CAAC;AAEvD,sDAAsD;AACtD,eAAO,MAAM,gBAAgB,KAAK,CAAC;AAEnC,sDAAsD;AACtD,eAAO,MAAM,gBAAgB,KAAK,CAAC;AAEnC,6CAA6C;AAC7C,eAAO,MAAM,sBAAsB,KAAK,CAAC;AAMzC,8DAA8D;AAC9D,eAAO,MAAM,kCAAkC,KAAK,CAAC;AAErD,8BAA8B;AAC9B,eAAO,MAAM,aAAa,IAAI,CAAC;AAE/B,8BAA8B;AAC9B,eAAO,MAAM,aAAa,IAAI,CAAC"}
1
+ {"version":3,"file":"device.constants.d.ts","sourceRoot":"","sources":["../../../src/constants/device.constants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,oEAAoE;AACpE,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAE3C,yEAAyE;AACzE,eAAO,MAAM,6BAA6B,KAAK,CAAC;AAEhD,iEAAiE;AACjE,eAAO,MAAM,oCAAoC,KAAK,CAAC;AAEvD,sDAAsD;AACtD,eAAO,MAAM,gBAAgB,KAAK,CAAC;AAEnC,sDAAsD;AACtD,eAAO,MAAM,gBAAgB,KAAK,CAAC;AAEnC,6CAA6C;AAC7C,eAAO,MAAM,sBAAsB,KAAK,CAAC;AAEzC,6CAA6C;AAC7C,eAAO,MAAM,sBAAsB,IAAI,CAAC;AAExC,6CAA6C;AAC7C,eAAO,MAAM,sBAAsB,KAAK,CAAC;AAMzC,8DAA8D;AAC9D,eAAO,MAAM,kCAAkC,KAAK,CAAC;AAErD,8BAA8B;AAC9B,eAAO,MAAM,aAAa,IAAI,CAAC;AAE/B,8BAA8B;AAC9B,eAAO,MAAM,aAAa,IAAI,CAAC"}
@@ -5,7 +5,7 @@
5
5
  * Constants related to device characteristics, temperatures, and fan speeds.
6
6
  */
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.FAN_SPEED_MAX = exports.FAN_SPEED_MIN = exports.FAN_SPEED_TO_PERCENTAGE_MULTIPLIER = exports.COOLING_TEMP_CLAMP_MAX = exports.HOMEKIT_TEMP_MAX = exports.HOMEKIT_TEMP_MIN = exports.DEFAULT_HOT_WATER_TARGET_TEMPERATURE = exports.DEFAULT_HOT_WATER_TEMPERATURE = exports.DEFAULT_ROOM_TEMPERATURE = void 0;
8
+ exports.FAN_SPEED_MAX = exports.FAN_SPEED_MIN = exports.FAN_SPEED_TO_PERCENTAGE_MULTIPLIER = exports.HEATING_TEMP_CLAMP_MAX = exports.HEATING_TEMP_CLAMP_MIN = exports.COOLING_TEMP_CLAMP_MAX = exports.HOMEKIT_TEMP_MAX = exports.HOMEKIT_TEMP_MIN = exports.DEFAULT_HOT_WATER_TARGET_TEMPERATURE = exports.DEFAULT_HOT_WATER_TEMPERATURE = exports.DEFAULT_ROOM_TEMPERATURE = void 0;
9
9
  // =============================================================================
10
10
  // Temperature Constants
11
11
  // =============================================================================
@@ -21,6 +21,10 @@ exports.HOMEKIT_TEMP_MIN = 10;
21
21
  exports.HOMEKIT_TEMP_MAX = 38;
22
22
  /** Cooling temperature clamp maximum (°C) */
23
23
  exports.COOLING_TEMP_CLAMP_MAX = 35;
24
+ /** Heating temperature clamp minimum (°C) */
25
+ exports.HEATING_TEMP_CLAMP_MIN = 0;
26
+ /** Heating temperature clamp maximum (°C) */
27
+ exports.HEATING_TEMP_CLAMP_MAX = 25;
24
28
  // =============================================================================
25
29
  // Fan Speed Constants
26
30
  // =============================================================================
@@ -1 +1 @@
1
- {"version":3,"file":"device.constants.js","sourceRoot":"","sources":["../../../src/constants/device.constants.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,gFAAgF;AAChF,wBAAwB;AACxB,gFAAgF;AAEhF,oEAAoE;AACvD,QAAA,wBAAwB,GAAG,EAAE,CAAC;AAE3C,yEAAyE;AAC5D,QAAA,6BAA6B,GAAG,EAAE,CAAC;AAEhD,iEAAiE;AACpD,QAAA,oCAAoC,GAAG,EAAE,CAAC;AAEvD,sDAAsD;AACzC,QAAA,gBAAgB,GAAG,EAAE,CAAC;AAEnC,sDAAsD;AACzC,QAAA,gBAAgB,GAAG,EAAE,CAAC;AAEnC,6CAA6C;AAChC,QAAA,sBAAsB,GAAG,EAAE,CAAC;AAEzC,gFAAgF;AAChF,sBAAsB;AACtB,gFAAgF;AAEhF,8DAA8D;AACjD,QAAA,kCAAkC,GAAG,EAAE,CAAC;AAErD,8BAA8B;AACjB,QAAA,aAAa,GAAG,CAAC,CAAC;AAE/B,8BAA8B;AACjB,QAAA,aAAa,GAAG,CAAC,CAAC"}
1
+ {"version":3,"file":"device.constants.js","sourceRoot":"","sources":["../../../src/constants/device.constants.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,gFAAgF;AAChF,wBAAwB;AACxB,gFAAgF;AAEhF,oEAAoE;AACvD,QAAA,wBAAwB,GAAG,EAAE,CAAC;AAE3C,yEAAyE;AAC5D,QAAA,6BAA6B,GAAG,EAAE,CAAC;AAEhD,iEAAiE;AACpD,QAAA,oCAAoC,GAAG,EAAE,CAAC;AAEvD,sDAAsD;AACzC,QAAA,gBAAgB,GAAG,EAAE,CAAC;AAEnC,sDAAsD;AACzC,QAAA,gBAAgB,GAAG,EAAE,CAAC;AAEnC,6CAA6C;AAChC,QAAA,sBAAsB,GAAG,EAAE,CAAC;AAEzC,6CAA6C;AAChC,QAAA,sBAAsB,GAAG,CAAC,CAAC;AAExC,6CAA6C;AAChC,QAAA,sBAAsB,GAAG,EAAE,CAAC;AAEzC,gFAAgF;AAChF,sBAAsB;AACtB,gFAAgF;AAEhF,8DAA8D;AACjD,QAAA,kCAAkC,GAAG,EAAE,CAAC;AAErD,8BAA8B;AACjB,QAAA,aAAa,GAAG,CAAC,CAAC;AAE/B,8BAA8B;AACjB,QAAA,aAAa,GAAG,CAAC,CAAC"}
@@ -4,10 +4,10 @@
4
4
  * Factory for creating accessories based on device profiles.
5
5
  * Replaces hard-coded device type checks in platform.ts.
6
6
  */
7
- import { PlatformAccessory } from 'homebridge';
8
- import { DaikinCloudAccessoryContext, DaikinCloudPlatform } from '../platform';
9
- import { DeviceProfile } from './profiles/device-profile';
10
- import { BaseAccessory } from '../accessories';
7
+ import type { PlatformAccessory } from 'homebridge';
8
+ import type { DaikinCloudAccessoryContext, DaikinCloudPlatform } from '../platform';
9
+ import type { DeviceProfile } from './profiles/device-profile';
10
+ import type { BaseAccessory } from '../accessories';
11
11
  /**
12
12
  * Result of accessory creation
13
13
  */
@@ -23,14 +23,14 @@ export declare class AccessoryFactory {
23
23
  private readonly log;
24
24
  constructor(platform: DaikinCloudPlatform);
25
25
  /**
26
- * Create an accessory for the given platform accessory.
27
- * Uses the device profile to determine which accessory class to instantiate.
28
- */
26
+ * Create an accessory for the given platform accessory.
27
+ * Uses the device profile to determine which accessory class to instantiate.
28
+ */
29
29
  createAccessory(platformAccessory: PlatformAccessory<DaikinCloudAccessoryContext>): AccessoryFactoryResult;
30
30
  /**
31
- * Get the profile for a device without creating an accessory.
32
- * Useful for logging and diagnostics.
33
- */
31
+ * Get the profile for a device without creating an accessory.
32
+ * Useful for logging and diagnostics.
33
+ */
34
34
  getDeviceProfile(platformAccessory: PlatformAccessory<DaikinCloudAccessoryContext>): DeviceProfile;
35
35
  }
36
36
  //# sourceMappingURL=accessory-factory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"accessory-factory.d.ts","sourceRoot":"","sources":["../../../src/device/accessory-factory.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAC,iBAAiB,EAAS,MAAM,YAAY,CAAC;AACrD,OAAO,EAAC,2BAA2B,EAAE,mBAAmB,EAAC,MAAM,aAAa,CAAC;AAC7E,OAAO,EAAiC,aAAa,EAAC,MAAM,2BAA2B,CAAC;AACxF,OAAO,EAA8C,aAAa,EAAC,MAAM,gBAAgB,CAAC;AAE1F;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACnC,SAAS,EAAE,aAAa,CAAC;IACzB,OAAO,EAAE,aAAa,CAAC;CAC1B;AAED;;GAEG;AACH,qBAAa,gBAAgB;IACzB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAsB;IAC/C,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;gBAEjB,QAAQ,EAAE,mBAAmB;IAKzC;;;OAGG;IACH,eAAe,CACX,iBAAiB,EAAE,iBAAiB,CAAC,2BAA2B,CAAC,GAClE,sBAAsB;IAmCzB;;;OAGG;IACH,gBAAgB,CACZ,iBAAiB,EAAE,iBAAiB,CAAC,2BAA2B,CAAC,GAClE,aAAa;CAGnB"}
1
+ {"version":3,"file":"accessory-factory.d.ts","sourceRoot":"","sources":["../../../src/device/accessory-factory.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAU,MAAM,YAAY,CAAC;AAC5D,OAAO,KAAK,EAAE,2BAA2B,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AACpF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAGpD;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACnC,SAAS,EAAE,aAAa,CAAC;IACzB,OAAO,EAAE,aAAa,CAAC;CAC1B;AAED;;GAEG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAsB;IAC/C,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;gBAEjB,QAAQ,EAAE,mBAAmB;IAKzC;;;SAGK;IACL,eAAe,CACb,iBAAiB,EAAE,iBAAiB,CAAC,2BAA2B,CAAC,GAChE,sBAAsB;IAmCzB;;;SAGK;IACL,gBAAgB,CACd,iBAAiB,EAAE,iBAAiB,CAAC,2BAA2B,CAAC,GAChE,aAAa;CAGjB"}
@@ -20,9 +20,9 @@ class AccessoryFactory {
20
20
  this.log = platform.log;
21
21
  }
22
22
  /**
23
- * Create an accessory for the given platform accessory.
24
- * Uses the device profile to determine which accessory class to instantiate.
25
- */
23
+ * Create an accessory for the given platform accessory.
24
+ * Uses the device profile to determine which accessory class to instantiate.
25
+ */
26
26
  createAccessory(platformAccessory) {
27
27
  const device = platformAccessory.context.device;
28
28
  const profile = (0, device_profile_1.matchDeviceProfile)(device);
@@ -43,16 +43,16 @@ class AccessoryFactory {
43
43
  }
44
44
  else {
45
45
  throw new Error(`Unsupported device type: ${device.getDescription().deviceModel}. ` +
46
- `Device has no climate control management point.`);
46
+ 'Device has no climate control management point.');
47
47
  }
48
48
  break;
49
49
  }
50
50
  return { accessory, profile };
51
51
  }
52
52
  /**
53
- * Get the profile for a device without creating an accessory.
54
- * Useful for logging and diagnostics.
55
- */
53
+ * Get the profile for a device without creating an accessory.
54
+ * Useful for logging and diagnostics.
55
+ */
56
56
  getDeviceProfile(platformAccessory) {
57
57
  return (0, device_profile_1.matchDeviceProfile)(platformAccessory.context.device);
58
58
  }
@@ -1 +1 @@
1
- {"version":3,"file":"accessory-factory.js","sourceRoot":"","sources":["../../../src/device/accessory-factory.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAIH,8DAAwF;AACxF,gDAA0F;AAU1F;;GAEG;AACH,MAAa,gBAAgB;IACR,QAAQ,CAAsB;IAC9B,GAAG,CAAS;IAE7B,YAAY,QAA6B;QACrC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC;IAC5B,CAAC;IAED;;;OAGG;IACH,eAAe,CACX,iBAAiE;QAEjE,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC;QAChD,MAAM,OAAO,GAAG,IAAA,mCAAkB,EAAC,MAAM,CAAC,CAAC;QAE3C,IAAI,CAAC,GAAG,CAAC,KAAK,CACV,0DAA0D,OAAO,CAAC,IAAI,IAAI;YAC1E,UAAU,MAAM,CAAC,cAAc,EAAE,CAAC,WAAW,IAAI;YACjD,iBAAiB,OAAO,CAAC,WAAW,EAAE,CACzC,CAAC;QAEF,IAAI,SAAwB,CAAC;QAE7B,QAAQ,OAAO,CAAC,IAAI,EAAE;YAClB,KAAK,2BAAU,CAAC,QAAQ;gBACpB,SAAS,GAAG,IAAI,+BAAiB,CAAC,IAAI,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC;gBACpE,MAAM;YAEV,KAAK,2BAAU,CAAC,gBAAgB,CAAC;YACjC,KAAK,2BAAU,CAAC,OAAO,CAAC;YACxB;gBACI,kEAAkE;gBAClE,IAAI,OAAO,CAAC,gBAAgB,CAAC,cAAc,EAAE;oBACzC,SAAS,GAAG,IAAI,sCAAwB,CAAC,IAAI,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC;iBAC9E;qBAAM;oBACH,MAAM,IAAI,KAAK,CACX,4BAA4B,MAAM,CAAC,cAAc,EAAE,CAAC,WAAW,IAAI;wBACnE,iDAAiD,CACpD,CAAC;iBACL;gBACD,MAAM;SACb;QAED,OAAO,EAAC,SAAS,EAAE,OAAO,EAAC,CAAC;IAChC,CAAC;IAED;;;OAGG;IACH,gBAAgB,CACZ,iBAAiE;QAEjE,OAAO,IAAA,mCAAkB,EAAC,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAChE,CAAC;CACJ;AA3DD,4CA2DC"}
1
+ {"version":3,"file":"accessory-factory.js","sourceRoot":"","sources":["../../../src/device/accessory-factory.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAKH,8DAA2E;AAE3E,gDAA6E;AAU7E;;GAEG;AACH,MAAa,gBAAgB;IACV,QAAQ,CAAsB;IAC9B,GAAG,CAAS;IAE7B,YAAY,QAA6B;QACvC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC;IAC1B,CAAC;IAED;;;SAGK;IACL,eAAe,CACb,iBAAiE;QAEjE,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC;QAChD,MAAM,OAAO,GAAG,IAAA,mCAAkB,EAAC,MAAM,CAAC,CAAC;QAE3C,IAAI,CAAC,GAAG,CAAC,KAAK,CACZ,0DAA0D,OAAO,CAAC,IAAI,IAAI;YACpE,UAAU,MAAM,CAAC,cAAc,EAAE,CAAC,WAAW,IAAI;YACjD,iBAAiB,OAAO,CAAC,WAAW,EAAE,CAC7C,CAAC;QAEF,IAAI,SAAwB,CAAC;QAE7B,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;YACrB,KAAK,2BAAU,CAAC,QAAQ;gBACtB,SAAS,GAAG,IAAI,+BAAiB,CAAC,IAAI,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC;gBACpE,MAAM;YAER,KAAK,2BAAU,CAAC,gBAAgB,CAAC;YACjC,KAAK,2BAAU,CAAC,OAAO,CAAC;YACxB;gBACE,kEAAkE;gBAClE,IAAI,OAAO,CAAC,gBAAgB,CAAC,cAAc,EAAE,CAAC;oBAC5C,SAAS,GAAG,IAAI,sCAAwB,CAAC,IAAI,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC;gBAC7E,CAAC;qBAAM,CAAC;oBACN,MAAM,IAAI,KAAK,CACb,4BAA4B,MAAM,CAAC,cAAc,EAAE,CAAC,WAAW,IAAI;wBACvD,iDAAiD,CAC9D,CAAC;gBACJ,CAAC;gBACD,MAAM;QACV,CAAC;QAED,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC;IAChC,CAAC;IAED;;;SAGK;IACL,gBAAgB,CACd,iBAAiE;QAEjE,OAAO,IAAA,mCAAkB,EAAC,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9D,CAAC;CACF;AA3DD,4CA2DC"}
@@ -4,8 +4,8 @@
4
4
  * Centralized service for detecting device capabilities once and caching the results.
5
5
  * This replaces the scattered hasXxxFeature() methods in service classes.
6
6
  */
7
- import { DaikinCloudDevice } from '../api';
8
- import { DeviceCapabilities, DeviceTemperatureCapabilities } from '../types';
7
+ import type { DaikinCloudDevice } from '../api';
8
+ import type { DeviceCapabilities, DeviceTemperatureCapabilities } from '../types';
9
9
  export declare class DeviceCapabilityDetector {
10
10
  private readonly device;
11
11
  private readonly managementPointId;
@@ -13,16 +13,16 @@ export declare class DeviceCapabilityDetector {
13
13
  private cachedTemperatureCapabilities;
14
14
  constructor(device: DaikinCloudDevice, managementPointId: string);
15
15
  /**
16
- * Get all device capabilities. Results are cached after first detection.
17
- */
16
+ * Get all device capabilities. Results are cached after first detection.
17
+ */
18
18
  getCapabilities(): DeviceCapabilities;
19
19
  /**
20
- * Get temperature capabilities per operation mode. Results are cached.
21
- */
20
+ * Get temperature capabilities per operation mode. Results are cached.
21
+ */
22
22
  getTemperatureCapabilities(): DeviceTemperatureCapabilities;
23
23
  /**
24
- * Clear cached capabilities (useful if device data is refreshed).
25
- */
24
+ * Clear cached capabilities (useful if device data is refreshed).
25
+ */
26
26
  clearCache(): void;
27
27
  private detectCapabilities;
28
28
  private hasManagementPoint;