homebridge 2.0.0-beta.44 → 2.0.0-beta.45

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 (321) hide show
  1. package/dist/api.d.ts +3 -365
  2. package/dist/api.d.ts.map +1 -1
  3. package/dist/api.js +13 -85
  4. package/dist/api.js.map +1 -1
  5. package/dist/bridgeService.d.ts +0 -25
  6. package/dist/bridgeService.d.ts.map +1 -1
  7. package/dist/bridgeService.js +32 -85
  8. package/dist/bridgeService.js.map +1 -1
  9. package/dist/childBridgeFork.d.ts +12 -15
  10. package/dist/childBridgeFork.d.ts.map +1 -1
  11. package/dist/childBridgeFork.js +126 -80
  12. package/dist/childBridgeFork.js.map +1 -1
  13. package/dist/childBridgeService.d.ts +21 -105
  14. package/dist/childBridgeService.d.ts.map +1 -1
  15. package/dist/childBridgeService.js +57 -134
  16. package/dist/childBridgeService.js.map +1 -1
  17. package/dist/cli.js +0 -2
  18. package/dist/cli.js.map +1 -1
  19. package/dist/externalPortService.d.ts +0 -21
  20. package/dist/externalPortService.d.ts.map +1 -1
  21. package/dist/externalPortService.js +0 -28
  22. package/dist/externalPortService.js.map +1 -1
  23. package/dist/index.d.ts +0 -112
  24. package/dist/index.d.ts.map +1 -1
  25. package/dist/index.js +0 -44
  26. package/dist/index.js.map +1 -1
  27. package/dist/ipcService.d.ts +23 -15
  28. package/dist/ipcService.d.ts.map +1 -1
  29. package/dist/ipcService.js +6 -12
  30. package/dist/ipcService.js.map +1 -1
  31. package/dist/logger.d.ts +0 -46
  32. package/dist/logger.d.ts.map +1 -1
  33. package/dist/logger.js +13 -57
  34. package/dist/logger.js.map +1 -1
  35. package/dist/matter/BaseMatterManager.d.ts +19 -0
  36. package/dist/matter/BaseMatterManager.d.ts.map +1 -0
  37. package/dist/matter/BaseMatterManager.js +170 -0
  38. package/dist/matter/BaseMatterManager.js.map +1 -0
  39. package/dist/matter/ChildBridgeMatterManager.d.ts +5 -69
  40. package/dist/matter/ChildBridgeMatterManager.d.ts.map +1 -1
  41. package/dist/matter/ChildBridgeMatterManager.js +36 -227
  42. package/dist/matter/ChildBridgeMatterManager.js.map +1 -1
  43. package/dist/matter/ClusterCommandMapper.d.ts +5 -0
  44. package/dist/matter/ClusterCommandMapper.d.ts.map +1 -0
  45. package/dist/matter/ClusterCommandMapper.js +203 -0
  46. package/dist/matter/ClusterCommandMapper.js.map +1 -0
  47. package/dist/matter/ExternalMatterAccessoryPublisher.d.ts +0 -27
  48. package/dist/matter/ExternalMatterAccessoryPublisher.d.ts.map +1 -1
  49. package/dist/matter/ExternalMatterAccessoryPublisher.js +2 -27
  50. package/dist/matter/ExternalMatterAccessoryPublisher.js.map +1 -1
  51. package/dist/matter/MatterAPIImpl.d.ts +0 -68
  52. package/dist/matter/MatterAPIImpl.d.ts.map +1 -1
  53. package/dist/matter/MatterAPIImpl.js +6 -106
  54. package/dist/matter/MatterAPIImpl.js.map +1 -1
  55. package/dist/matter/MatterBridgeManager.d.ts +9 -60
  56. package/dist/matter/MatterBridgeManager.d.ts.map +1 -1
  57. package/dist/matter/MatterBridgeManager.js +139 -215
  58. package/dist/matter/MatterBridgeManager.js.map +1 -1
  59. package/dist/matter/MatterConfigCollector.d.ts +1 -20
  60. package/dist/matter/MatterConfigCollector.d.ts.map +1 -1
  61. package/dist/matter/MatterConfigCollector.js +14 -27
  62. package/dist/matter/MatterConfigCollector.js.map +1 -1
  63. package/dist/matter/accessoryCache.d.ts +0 -48
  64. package/dist/matter/accessoryCache.d.ts.map +1 -1
  65. package/dist/matter/accessoryCache.js +1 -60
  66. package/dist/matter/accessoryCache.js.map +1 -1
  67. package/dist/matter/behaviors/AirQualityBehavior.d.ts +0 -42
  68. package/dist/matter/behaviors/AirQualityBehavior.d.ts.map +1 -1
  69. package/dist/matter/behaviors/AirQualityBehavior.js +0 -44
  70. package/dist/matter/behaviors/AirQualityBehavior.js.map +1 -1
  71. package/dist/matter/behaviors/BehaviorRegistry.d.ts +4 -42
  72. package/dist/matter/behaviors/BehaviorRegistry.d.ts.map +1 -1
  73. package/dist/matter/behaviors/BehaviorRegistry.js +12 -42
  74. package/dist/matter/behaviors/BehaviorRegistry.js.map +1 -1
  75. package/dist/matter/behaviors/ColorControlBehavior.d.ts +0 -49
  76. package/dist/matter/behaviors/ColorControlBehavior.d.ts.map +1 -1
  77. package/dist/matter/behaviors/ColorControlBehavior.js +0 -90
  78. package/dist/matter/behaviors/ColorControlBehavior.js.map +1 -1
  79. package/dist/matter/behaviors/ConcentrationMeasurementBehavior.d.ts +0 -91
  80. package/dist/matter/behaviors/ConcentrationMeasurementBehavior.d.ts.map +1 -1
  81. package/dist/matter/behaviors/ConcentrationMeasurementBehavior.js +0 -96
  82. package/dist/matter/behaviors/ConcentrationMeasurementBehavior.js.map +1 -1
  83. package/dist/matter/behaviors/DoorLockBehavior.d.ts +0 -11
  84. package/dist/matter/behaviors/DoorLockBehavior.d.ts.map +1 -1
  85. package/dist/matter/behaviors/DoorLockBehavior.js +0 -25
  86. package/dist/matter/behaviors/DoorLockBehavior.js.map +1 -1
  87. package/dist/matter/behaviors/FanControlBehavior.d.ts +0 -11
  88. package/dist/matter/behaviors/FanControlBehavior.d.ts.map +1 -1
  89. package/dist/matter/behaviors/FanControlBehavior.js +0 -25
  90. package/dist/matter/behaviors/FanControlBehavior.js.map +1 -1
  91. package/dist/matter/behaviors/IdentifyBehavior.d.ts +0 -11
  92. package/dist/matter/behaviors/IdentifyBehavior.d.ts.map +1 -1
  93. package/dist/matter/behaviors/IdentifyBehavior.js +0 -17
  94. package/dist/matter/behaviors/IdentifyBehavior.js.map +1 -1
  95. package/dist/matter/behaviors/LevelControlBehavior.d.ts +0 -20
  96. package/dist/matter/behaviors/LevelControlBehavior.d.ts.map +1 -1
  97. package/dist/matter/behaviors/LevelControlBehavior.js +0 -52
  98. package/dist/matter/behaviors/LevelControlBehavior.js.map +1 -1
  99. package/dist/matter/behaviors/OnOffBehavior.d.ts +0 -17
  100. package/dist/matter/behaviors/OnOffBehavior.d.ts.map +1 -1
  101. package/dist/matter/behaviors/OnOffBehavior.js +0 -38
  102. package/dist/matter/behaviors/OnOffBehavior.js.map +1 -1
  103. package/dist/matter/behaviors/RvcCleanModeBehavior.d.ts +0 -11
  104. package/dist/matter/behaviors/RvcCleanModeBehavior.d.ts.map +1 -1
  105. package/dist/matter/behaviors/RvcCleanModeBehavior.js +0 -17
  106. package/dist/matter/behaviors/RvcCleanModeBehavior.js.map +1 -1
  107. package/dist/matter/behaviors/RvcOperationalStateBehavior.d.ts +0 -11
  108. package/dist/matter/behaviors/RvcOperationalStateBehavior.d.ts.map +1 -1
  109. package/dist/matter/behaviors/RvcOperationalStateBehavior.js +0 -29
  110. package/dist/matter/behaviors/RvcOperationalStateBehavior.js.map +1 -1
  111. package/dist/matter/behaviors/RvcRunModeBehavior.d.ts +0 -11
  112. package/dist/matter/behaviors/RvcRunModeBehavior.d.ts.map +1 -1
  113. package/dist/matter/behaviors/RvcRunModeBehavior.js +0 -17
  114. package/dist/matter/behaviors/RvcRunModeBehavior.js.map +1 -1
  115. package/dist/matter/behaviors/ServiceAreaBehavior.d.ts +0 -11
  116. package/dist/matter/behaviors/ServiceAreaBehavior.d.ts.map +1 -1
  117. package/dist/matter/behaviors/ServiceAreaBehavior.js +0 -23
  118. package/dist/matter/behaviors/ServiceAreaBehavior.js.map +1 -1
  119. package/dist/matter/behaviors/ThermostatBehavior.d.ts +0 -11
  120. package/dist/matter/behaviors/ThermostatBehavior.d.ts.map +1 -1
  121. package/dist/matter/behaviors/ThermostatBehavior.js +0 -39
  122. package/dist/matter/behaviors/ThermostatBehavior.js.map +1 -1
  123. package/dist/matter/behaviors/WindowCoveringBehavior.d.ts +0 -17
  124. package/dist/matter/behaviors/WindowCoveringBehavior.d.ts.map +1 -1
  125. package/dist/matter/behaviors/WindowCoveringBehavior.js +0 -56
  126. package/dist/matter/behaviors/WindowCoveringBehavior.js.map +1 -1
  127. package/dist/matter/behaviors/index.d.ts +0 -5
  128. package/dist/matter/behaviors/index.d.ts.map +1 -1
  129. package/dist/matter/behaviors/index.js +0 -5
  130. package/dist/matter/behaviors/index.js.map +1 -1
  131. package/dist/matter/configValidator.d.ts +0 -55
  132. package/dist/matter/configValidator.d.ts.map +1 -1
  133. package/dist/matter/configValidator.js +1 -68
  134. package/dist/matter/configValidator.js.map +1 -1
  135. package/dist/matter/errorHandler.d.ts +0 -22
  136. package/dist/matter/errorHandler.d.ts.map +1 -1
  137. package/dist/matter/errorHandler.js +0 -32
  138. package/dist/matter/errorHandler.js.map +1 -1
  139. package/dist/matter/errors.d.ts +0 -132
  140. package/dist/matter/errors.d.ts.map +1 -1
  141. package/dist/matter/errors.js +0 -132
  142. package/dist/matter/errors.js.map +1 -1
  143. package/dist/matter/index.d.ts +0 -30
  144. package/dist/matter/index.d.ts.map +1 -1
  145. package/dist/matter/index.js +0 -13
  146. package/dist/matter/index.js.map +1 -1
  147. package/dist/matter/logFormatter.d.ts +0 -17
  148. package/dist/matter/logFormatter.d.ts.map +1 -1
  149. package/dist/matter/logFormatter.js +5 -63
  150. package/dist/matter/logFormatter.js.map +1 -1
  151. package/dist/matter/server.d.ts +12 -236
  152. package/dist/matter/server.d.ts.map +1 -1
  153. package/dist/matter/server.js +177 -488
  154. package/dist/matter/server.js.map +1 -1
  155. package/dist/matter/serverHelpers.d.ts +0 -56
  156. package/dist/matter/serverHelpers.d.ts.map +1 -1
  157. package/dist/matter/serverHelpers.js +1 -66
  158. package/dist/matter/serverHelpers.js.map +1 -1
  159. package/dist/matter/sharedTypes.d.ts +0 -83
  160. package/dist/matter/sharedTypes.d.ts.map +1 -1
  161. package/dist/matter/sharedTypes.js +0 -26
  162. package/dist/matter/sharedTypes.js.map +1 -1
  163. package/dist/matter/storage.d.ts +0 -90
  164. package/dist/matter/storage.d.ts.map +1 -1
  165. package/dist/matter/storage.js +2 -130
  166. package/dist/matter/storage.js.map +1 -1
  167. package/dist/matter/typeHelpers.d.ts +0 -30
  168. package/dist/matter/typeHelpers.d.ts.map +1 -1
  169. package/dist/matter/typeHelpers.js +0 -24
  170. package/dist/matter/typeHelpers.js.map +1 -1
  171. package/dist/matter/types.d.ts +0 -273
  172. package/dist/matter/types.d.ts.map +1 -1
  173. package/dist/matter/types.js +0 -83
  174. package/dist/matter/types.js.map +1 -1
  175. package/dist/platformAccessory.d.ts +0 -15
  176. package/dist/platformAccessory.d.ts.map +1 -1
  177. package/dist/platformAccessory.js +6 -32
  178. package/dist/platformAccessory.js.map +1 -1
  179. package/dist/plugin.d.ts +0 -3
  180. package/dist/plugin.d.ts.map +1 -1
  181. package/dist/plugin.js +6 -29
  182. package/dist/plugin.js.map +1 -1
  183. package/dist/pluginManager.d.ts +0 -22
  184. package/dist/pluginManager.d.ts.map +1 -1
  185. package/dist/pluginManager.js +18 -41
  186. package/dist/pluginManager.js.map +1 -1
  187. package/dist/server.d.ts +9 -29
  188. package/dist/server.d.ts.map +1 -1
  189. package/dist/server.js +304 -157
  190. package/dist/server.js.map +1 -1
  191. package/dist/user.d.ts +0 -3
  192. package/dist/user.d.ts.map +1 -1
  193. package/dist/user.js +2 -5
  194. package/dist/user.js.map +1 -1
  195. package/dist/util/mac.js +0 -1
  196. package/dist/util/mac.js.map +1 -1
  197. package/package.json +4 -4
  198. package/dist/api.spec.d.ts +0 -2
  199. package/dist/api.spec.d.ts.map +0 -1
  200. package/dist/api.spec.js +0 -413
  201. package/dist/api.spec.js.map +0 -1
  202. package/dist/logger.spec.d.ts +0 -2
  203. package/dist/logger.spec.d.ts.map +0 -1
  204. package/dist/logger.spec.js +0 -95
  205. package/dist/logger.spec.js.map +0 -1
  206. package/dist/matter/ExternalMatterAccessoryPublisher.spec.d.ts +0 -2
  207. package/dist/matter/ExternalMatterAccessoryPublisher.spec.d.ts.map +0 -1
  208. package/dist/matter/ExternalMatterAccessoryPublisher.spec.js +0 -293
  209. package/dist/matter/ExternalMatterAccessoryPublisher.spec.js.map +0 -1
  210. package/dist/matter/accessoryCache.spec.d.ts +0 -2
  211. package/dist/matter/accessoryCache.spec.d.ts.map +0 -1
  212. package/dist/matter/accessoryCache.spec.js +0 -452
  213. package/dist/matter/accessoryCache.spec.js.map +0 -1
  214. package/dist/matter/behaviors/AirQualityBehavior.spec.d.ts +0 -5
  215. package/dist/matter/behaviors/AirQualityBehavior.spec.d.ts.map +0 -1
  216. package/dist/matter/behaviors/AirQualityBehavior.spec.js +0 -46
  217. package/dist/matter/behaviors/AirQualityBehavior.spec.js.map +0 -1
  218. package/dist/matter/behaviors/BehaviorRegistry.spec.d.ts +0 -2
  219. package/dist/matter/behaviors/BehaviorRegistry.spec.d.ts.map +0 -1
  220. package/dist/matter/behaviors/BehaviorRegistry.spec.js +0 -307
  221. package/dist/matter/behaviors/BehaviorRegistry.spec.js.map +0 -1
  222. package/dist/matter/behaviors/ColorControlBehavior.spec.d.ts +0 -2
  223. package/dist/matter/behaviors/ColorControlBehavior.spec.d.ts.map +0 -1
  224. package/dist/matter/behaviors/ColorControlBehavior.spec.js +0 -29
  225. package/dist/matter/behaviors/ColorControlBehavior.spec.js.map +0 -1
  226. package/dist/matter/behaviors/ConcentrationMeasurementBehavior.spec.d.ts +0 -5
  227. package/dist/matter/behaviors/ConcentrationMeasurementBehavior.spec.d.ts.map +0 -1
  228. package/dist/matter/behaviors/ConcentrationMeasurementBehavior.spec.js +0 -95
  229. package/dist/matter/behaviors/ConcentrationMeasurementBehavior.spec.js.map +0 -1
  230. package/dist/matter/behaviors/DoorLockBehavior.spec.d.ts +0 -2
  231. package/dist/matter/behaviors/DoorLockBehavior.spec.d.ts.map +0 -1
  232. package/dist/matter/behaviors/DoorLockBehavior.spec.js +0 -120
  233. package/dist/matter/behaviors/DoorLockBehavior.spec.js.map +0 -1
  234. package/dist/matter/behaviors/FanControlBehavior.spec.d.ts +0 -2
  235. package/dist/matter/behaviors/FanControlBehavior.spec.d.ts.map +0 -1
  236. package/dist/matter/behaviors/FanControlBehavior.spec.js +0 -23
  237. package/dist/matter/behaviors/FanControlBehavior.spec.js.map +0 -1
  238. package/dist/matter/behaviors/IdentifyBehavior.spec.d.ts +0 -2
  239. package/dist/matter/behaviors/IdentifyBehavior.spec.d.ts.map +0 -1
  240. package/dist/matter/behaviors/IdentifyBehavior.spec.js +0 -64
  241. package/dist/matter/behaviors/IdentifyBehavior.spec.js.map +0 -1
  242. package/dist/matter/behaviors/LevelControlBehavior.spec.d.ts +0 -2
  243. package/dist/matter/behaviors/LevelControlBehavior.spec.d.ts.map +0 -1
  244. package/dist/matter/behaviors/LevelControlBehavior.spec.js +0 -145
  245. package/dist/matter/behaviors/LevelControlBehavior.spec.js.map +0 -1
  246. package/dist/matter/behaviors/OnOffBehavior.spec.d.ts +0 -2
  247. package/dist/matter/behaviors/OnOffBehavior.spec.d.ts.map +0 -1
  248. package/dist/matter/behaviors/OnOffBehavior.spec.js +0 -128
  249. package/dist/matter/behaviors/OnOffBehavior.spec.js.map +0 -1
  250. package/dist/matter/behaviors/RvcCleanModeBehavior.spec.d.ts +0 -2
  251. package/dist/matter/behaviors/RvcCleanModeBehavior.spec.d.ts.map +0 -1
  252. package/dist/matter/behaviors/RvcCleanModeBehavior.spec.js +0 -57
  253. package/dist/matter/behaviors/RvcCleanModeBehavior.spec.js.map +0 -1
  254. package/dist/matter/behaviors/RvcOperationalStateBehavior.spec.d.ts +0 -2
  255. package/dist/matter/behaviors/RvcOperationalStateBehavior.spec.d.ts.map +0 -1
  256. package/dist/matter/behaviors/RvcOperationalStateBehavior.spec.js +0 -55
  257. package/dist/matter/behaviors/RvcOperationalStateBehavior.spec.js.map +0 -1
  258. package/dist/matter/behaviors/RvcRunModeBehavior.spec.d.ts +0 -2
  259. package/dist/matter/behaviors/RvcRunModeBehavior.spec.d.ts.map +0 -1
  260. package/dist/matter/behaviors/RvcRunModeBehavior.spec.js +0 -57
  261. package/dist/matter/behaviors/RvcRunModeBehavior.spec.js.map +0 -1
  262. package/dist/matter/behaviors/ServiceAreaBehavior.spec.d.ts +0 -2
  263. package/dist/matter/behaviors/ServiceAreaBehavior.spec.d.ts.map +0 -1
  264. package/dist/matter/behaviors/ServiceAreaBehavior.spec.js +0 -53
  265. package/dist/matter/behaviors/ServiceAreaBehavior.spec.js.map +0 -1
  266. package/dist/matter/behaviors/ThermostatBehavior.spec.d.ts +0 -2
  267. package/dist/matter/behaviors/ThermostatBehavior.spec.d.ts.map +0 -1
  268. package/dist/matter/behaviors/ThermostatBehavior.spec.js +0 -23
  269. package/dist/matter/behaviors/ThermostatBehavior.spec.js.map +0 -1
  270. package/dist/matter/behaviors/WindowCoveringBehavior.spec.d.ts +0 -2
  271. package/dist/matter/behaviors/WindowCoveringBehavior.spec.d.ts.map +0 -1
  272. package/dist/matter/behaviors/WindowCoveringBehavior.spec.js +0 -27
  273. package/dist/matter/behaviors/WindowCoveringBehavior.spec.js.map +0 -1
  274. package/dist/matter/configValidator.spec.d.ts +0 -2
  275. package/dist/matter/configValidator.spec.d.ts.map +0 -1
  276. package/dist/matter/configValidator.spec.js +0 -390
  277. package/dist/matter/configValidator.spec.js.map +0 -1
  278. package/dist/matter/errorHandler.spec.d.ts +0 -2
  279. package/dist/matter/errorHandler.spec.d.ts.map +0 -1
  280. package/dist/matter/errorHandler.spec.js +0 -159
  281. package/dist/matter/errorHandler.spec.js.map +0 -1
  282. package/dist/matter/logFormatter.spec.d.ts +0 -2
  283. package/dist/matter/logFormatter.spec.d.ts.map +0 -1
  284. package/dist/matter/logFormatter.spec.js +0 -252
  285. package/dist/matter/logFormatter.spec.js.map +0 -1
  286. package/dist/matter/serverHelpers.spec.d.ts +0 -2
  287. package/dist/matter/serverHelpers.spec.d.ts.map +0 -1
  288. package/dist/matter/serverHelpers.spec.js +0 -527
  289. package/dist/matter/serverHelpers.spec.js.map +0 -1
  290. package/dist/matter/storage.spec.d.ts +0 -2
  291. package/dist/matter/storage.spec.d.ts.map +0 -1
  292. package/dist/matter/storage.spec.js +0 -570
  293. package/dist/matter/storage.spec.js.map +0 -1
  294. package/dist/matter/typeHelpers.spec.d.ts +0 -2
  295. package/dist/matter/typeHelpers.spec.d.ts.map +0 -1
  296. package/dist/matter/typeHelpers.spec.js +0 -127
  297. package/dist/matter/typeHelpers.spec.js.map +0 -1
  298. package/dist/platformAccessory.spec.d.ts +0 -2
  299. package/dist/platformAccessory.spec.d.ts.map +0 -1
  300. package/dist/platformAccessory.spec.js +0 -126
  301. package/dist/platformAccessory.spec.js.map +0 -1
  302. package/dist/pluginManager.spec.d.ts +0 -2
  303. package/dist/pluginManager.spec.d.ts.map +0 -1
  304. package/dist/pluginManager.spec.js +0 -43
  305. package/dist/pluginManager.spec.js.map +0 -1
  306. package/dist/server.spec.d.ts +0 -2
  307. package/dist/server.spec.d.ts.map +0 -1
  308. package/dist/server.spec.js +0 -57
  309. package/dist/server.spec.js.map +0 -1
  310. package/dist/user.spec.d.ts +0 -2
  311. package/dist/user.spec.d.ts.map +0 -1
  312. package/dist/user.spec.js +0 -31
  313. package/dist/user.spec.js.map +0 -1
  314. package/dist/util/mac.spec.d.ts +0 -2
  315. package/dist/util/mac.spec.d.ts.map +0 -1
  316. package/dist/util/mac.spec.js +0 -36
  317. package/dist/util/mac.spec.js.map +0 -1
  318. package/dist/version.spec.d.ts +0 -2
  319. package/dist/version.spec.d.ts.map +0 -1
  320. package/dist/version.spec.js +0 -20
  321. package/dist/version.spec.js.map +0 -1
@@ -1,57 +0,0 @@
1
- import { beforeEach, describe, expect, it, vi } from 'vitest';
2
- import { HomebridgeRvcRunModeServer } from './RvcRunModeBehavior.js';
3
- describe('homebridgeRvcRunModeServer', () => {
4
- let mockRegistry;
5
- let behavior;
6
- let mockEndpoint;
7
- beforeEach(() => {
8
- // Create mock registry
9
- mockRegistry = {
10
- executeHandler: vi.fn().mockResolvedValue(true),
11
- };
12
- // Set registry on behavior class
13
- HomebridgeRvcRunModeServer.setRegistry(mockRegistry);
14
- // Create mock endpoint
15
- mockEndpoint = {
16
- id: 'test-endpoint-123',
17
- };
18
- // Create behavior instance with mocked properties
19
- behavior = Object.create(HomebridgeRvcRunModeServer.prototype);
20
- Object.defineProperty(behavior, 'endpoint', {
21
- get: () => mockEndpoint,
22
- configurable: true,
23
- });
24
- // Mock super method
25
- vi.spyOn(Object.getPrototypeOf(HomebridgeRvcRunModeServer.prototype), 'changeToMode').mockReturnValue(undefined);
26
- });
27
- describe('setRegistry', () => {
28
- it('should set the registry', () => {
29
- const newRegistry = {};
30
- HomebridgeRvcRunModeServer.setRegistry(newRegistry);
31
- expect(true).toBe(true);
32
- });
33
- });
34
- describe('changeToMode', () => {
35
- it('should execute handler with request', () => {
36
- const request = { newMode: 1 };
37
- behavior.changeToMode(request);
38
- expect(mockRegistry.executeHandler).toHaveBeenCalledWith('test-endpoint-123', 'rvcRunMode', 'changeToMode', request);
39
- });
40
- it('should handle different mode values', () => {
41
- const modes = [0, 1, 2, 3];
42
- for (const mode of modes) {
43
- const request = { newMode: mode };
44
- behavior.changeToMode(request);
45
- expect(mockRegistry.executeHandler).toHaveBeenCalledWith('test-endpoint-123', 'rvcRunMode', 'changeToMode', request);
46
- vi.clearAllMocks();
47
- }
48
- });
49
- it('should handle handler execution errors gracefully', async () => {
50
- mockRegistry.executeHandler = vi.fn().mockRejectedValue(new Error('Handler failed'));
51
- const request = { newMode: 1 };
52
- // Errors are wrapped in StatusResponseError and propagated to Matter.js
53
- await expect(behavior.changeToMode(request)).rejects.toThrow('Failed to change run mode: Handler failed');
54
- });
55
- });
56
- });
57
- //# sourceMappingURL=RvcRunModeBehavior.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"RvcRunModeBehavior.spec.js","sourceRoot":"","sources":["../../../src/matter/behaviors/RvcRunModeBehavior.spec.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=ServiceAreaBehavior.spec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ServiceAreaBehavior.spec.d.ts","sourceRoot":"","sources":["../../../src/matter/behaviors/ServiceAreaBehavior.spec.ts"],"names":[],"mappings":""}
@@ -1,53 +0,0 @@
1
- import { beforeEach, describe, expect, it, vi } from 'vitest';
2
- import { HomebridgeServiceAreaServer } from './ServiceAreaBehavior.js';
3
- describe('homebridgeServiceAreaServer', () => {
4
- let mockRegistry;
5
- let behavior;
6
- let mockEndpoint;
7
- beforeEach(() => {
8
- // Create mock registry
9
- mockRegistry = {
10
- executeHandler: vi.fn().mockResolvedValue(true),
11
- };
12
- // Set registry on behavior class
13
- HomebridgeServiceAreaServer.setRegistry(mockRegistry);
14
- // Create mock endpoint
15
- mockEndpoint = {
16
- id: 'test-endpoint-123',
17
- };
18
- // Create behavior instance with mocked properties
19
- behavior = Object.create(HomebridgeServiceAreaServer.prototype);
20
- Object.defineProperty(behavior, 'endpoint', {
21
- get: () => mockEndpoint,
22
- configurable: true,
23
- });
24
- // Mock super method
25
- vi.spyOn(Object.getPrototypeOf(HomebridgeServiceAreaServer.prototype), 'selectAreas').mockReturnValue(undefined);
26
- });
27
- describe('setRegistry', () => {
28
- it('should set the registry', () => {
29
- const newRegistry = {};
30
- HomebridgeServiceAreaServer.setRegistry(newRegistry);
31
- expect(true).toBe(true);
32
- });
33
- });
34
- describe('selectAreas', () => {
35
- it('should execute handler with request', () => {
36
- const request = { newAreas: [0, 1, 2] };
37
- behavior.selectAreas(request);
38
- expect(mockRegistry.executeHandler).toHaveBeenCalledWith('test-endpoint-123', 'serviceArea', 'selectAreas', request);
39
- });
40
- it('should handle empty area selection', () => {
41
- const request = { newAreas: [] };
42
- behavior.selectAreas(request);
43
- expect(mockRegistry.executeHandler).toHaveBeenCalledWith('test-endpoint-123', 'serviceArea', 'selectAreas', request);
44
- });
45
- it('should handle handler execution errors gracefully', async () => {
46
- mockRegistry.executeHandler = vi.fn().mockRejectedValue(new Error('Handler failed'));
47
- const request = { newAreas: [0, 1] };
48
- // Errors are wrapped in StatusResponseError and propagated to Matter.js
49
- await expect(behavior.selectAreas(request)).rejects.toThrow('Failed to select areas: Handler failed');
50
- });
51
- });
52
- });
53
- //# sourceMappingURL=ServiceAreaBehavior.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ServiceAreaBehavior.spec.js","sourceRoot":"","sources":["../../../src/matter/behaviors/ServiceAreaBehavior.spec.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=ThermostatBehavior.spec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ThermostatBehavior.spec.d.ts","sourceRoot":"","sources":["../../../src/matter/behaviors/ThermostatBehavior.spec.ts"],"names":[],"mappings":""}
@@ -1,23 +0,0 @@
1
- import { describe, expect, it } from 'vitest';
2
- import { HomebridgeThermostatServer } from './ThermostatBehavior.js';
3
- describe('homebridgeThermostatServer', () => {
4
- describe('setRegistry', () => {
5
- it('should set the registry', () => {
6
- const newRegistry = {};
7
- HomebridgeThermostatServer.setRegistry(newRegistry);
8
- expect(true).toBe(true);
9
- });
10
- });
11
- describe('behavior structure', () => {
12
- it('should extend ThermostatServer', () => {
13
- expect(HomebridgeThermostatServer.prototype).toBeDefined();
14
- });
15
- it('should have initialize method', () => {
16
- expect(typeof HomebridgeThermostatServer.prototype.initialize).toBe('function');
17
- });
18
- });
19
- });
20
- // Note: ThermostatBehavior uses reactTo() pattern with private handlers for multiple attributes
21
- // (systemMode, occupiedCoolingSetpoint, occupiedHeatingSetpoint, etc.)
22
- // Integration tests would be more appropriate for testing the event reaction logic.
23
- //# sourceMappingURL=ThermostatBehavior.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ThermostatBehavior.spec.js","sourceRoot":"","sources":["../../../src/matter/behaviors/ThermostatBehavior.spec.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAE7C,OAAO,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAA;AAEpE,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;IAC1C,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;QAC3B,EAAE,CAAC,yBAAyB,EAAE,GAAG,EAAE;YACjC,MAAM,WAAW,GAAG,EAAsB,CAAA;YAC1C,0BAA0B,CAAC,WAAW,CAAC,WAAW,CAAC,CAAA;YACnD,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACzB,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;QAClC,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;YACxC,MAAM,CAAC,0BAA0B,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAA;QAC5D,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,+BAA+B,EAAE,GAAG,EAAE;YACvC,MAAM,CAAC,OAAO,0BAA0B,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QACjF,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,gGAAgG;AAChG,uEAAuE;AACvE,oFAAoF"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=WindowCoveringBehavior.spec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"WindowCoveringBehavior.spec.d.ts","sourceRoot":"","sources":["../../../src/matter/behaviors/WindowCoveringBehavior.spec.ts"],"names":[],"mappings":""}
@@ -1,27 +0,0 @@
1
- import { describe, expect, it } from 'vitest';
2
- import { HomebridgeWindowCoveringServer } from './WindowCoveringBehavior.js';
3
- describe('homebridgeWindowCoveringServer', () => {
4
- describe('setRegistry', () => {
5
- it('should set the registry', () => {
6
- const newRegistry = {};
7
- HomebridgeWindowCoveringServer.setRegistry(newRegistry);
8
- expect(true).toBe(true);
9
- });
10
- });
11
- describe('behavior structure', () => {
12
- it('should extend WindowCoveringServer', () => {
13
- expect(HomebridgeWindowCoveringServer.prototype).toBeDefined();
14
- });
15
- it('should have window covering command methods', () => {
16
- expect(typeof HomebridgeWindowCoveringServer.prototype.upOrOpen).toBe('function');
17
- expect(typeof HomebridgeWindowCoveringServer.prototype.downOrClose).toBe('function');
18
- expect(typeof HomebridgeWindowCoveringServer.prototype.stopMotion).toBe('function');
19
- expect(typeof HomebridgeWindowCoveringServer.prototype.goToLiftPercentage).toBe('function');
20
- expect(typeof HomebridgeWindowCoveringServer.prototype.goToTiltPercentage).toBe('function');
21
- });
22
- });
23
- });
24
- // Note: WindowCoveringBehavior has complex position control with helper methods.
25
- // Full unit testing would require mocking the entire Matter.js state machine.
26
- // Integration tests would be more appropriate.
27
- //# sourceMappingURL=WindowCoveringBehavior.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"WindowCoveringBehavior.spec.js","sourceRoot":"","sources":["../../../src/matter/behaviors/WindowCoveringBehavior.spec.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAE7C,OAAO,EAAE,8BAA8B,EAAE,MAAM,6BAA6B,CAAA;AAE5E,QAAQ,CAAC,gCAAgC,EAAE,GAAG,EAAE;IAC9C,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;QAC3B,EAAE,CAAC,yBAAyB,EAAE,GAAG,EAAE;YACjC,MAAM,WAAW,GAAG,EAAsB,CAAA;YAC1C,8BAA8B,CAAC,WAAW,CAAC,WAAW,CAAC,CAAA;YACvD,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACzB,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;QAClC,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;YAC5C,MAAM,CAAC,8BAA8B,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAA;QAChE,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;YACrD,MAAM,CAAC,OAAO,8BAA8B,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;YACjF,MAAM,CAAC,OAAO,8BAA8B,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;YACpF,MAAM,CAAC,OAAO,8BAA8B,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;YACnF,MAAM,CAAC,OAAO,8BAA8B,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;YAC3F,MAAM,CAAC,OAAO,8BAA8B,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QAC7F,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,iFAAiF;AACjF,8EAA8E;AAC9E,+CAA+C"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=configValidator.spec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"configValidator.spec.d.ts","sourceRoot":"","sources":["../../src/matter/configValidator.spec.ts"],"names":[],"mappings":""}
@@ -1,390 +0,0 @@
1
- import { beforeEach, describe, expect, it, vi } from 'vitest';
2
- import { Logger } from '../logger.js';
3
- import { checkPortProximity, MatterConfigValidator, sanitizeUniqueId, truncateString, validatePort, } from './configValidator.js';
4
- // Mock Logger
5
- vi.mock('../logger.js', () => {
6
- const mockLogger = {
7
- error: vi.fn(),
8
- info: vi.fn(),
9
- warn: vi.fn(),
10
- debug: vi.fn(),
11
- log: vi.fn(),
12
- };
13
- return {
14
- Logger: {
15
- withPrefix: vi.fn(() => mockLogger),
16
- },
17
- };
18
- });
19
- describe('configValidator', () => {
20
- let logWarnSpy;
21
- beforeEach(() => {
22
- vi.clearAllMocks();
23
- logWarnSpy = vi.mocked(Logger).withPrefix('test').warn;
24
- });
25
- describe('validatePort', () => {
26
- it('should accept valid port numbers', () => {
27
- expect(validatePort(5540).valid).toBe(true);
28
- expect(validatePort(1025).valid).toBe(true);
29
- expect(validatePort(65534).valid).toBe(true);
30
- });
31
- it('should reject non-integer port numbers', () => {
32
- const result = validatePort(5540.5);
33
- expect(result.valid).toBe(false);
34
- expect(result.error).toContain('must be an integer');
35
- });
36
- it('should reject port numbers below 1025', () => {
37
- const result = validatePort(1024);
38
- expect(result.valid).toBe(false);
39
- expect(result.error).toContain('must be between 1025 and 65534');
40
- });
41
- it('should reject port numbers above 65534', () => {
42
- const result = validatePort(65535);
43
- expect(result.valid).toBe(false);
44
- expect(result.error).toContain('must be between 1025 and 65534');
45
- });
46
- it('should warn about conflicting ports when checkConflicts is true', () => {
47
- const result = validatePort(5353, true);
48
- expect(result.valid).toBe(true);
49
- expect(result.warning).toContain('may conflict with other services');
50
- });
51
- it('should not warn about conflicting ports when checkConflicts is false', () => {
52
- const result = validatePort(5353, false);
53
- expect(result.valid).toBe(true);
54
- expect(result.warning).toBeUndefined();
55
- });
56
- it('should warn about common HTTP port 8080', () => {
57
- const result = validatePort(8080, true);
58
- expect(result.valid).toBe(true);
59
- expect(result.warning).toContain('may conflict');
60
- });
61
- it('should warn about common HTTPS port 8443', () => {
62
- const result = validatePort(8443, true);
63
- expect(result.valid).toBe(true);
64
- expect(result.warning).toContain('may conflict');
65
- });
66
- });
67
- describe('sanitizeUniqueId', () => {
68
- it('should remove colons and convert to uppercase', () => {
69
- const result = sanitizeUniqueId('ab:cd:ef:12:34:56');
70
- expect(result.value).toBe('ABCDEF123456');
71
- expect(result.warnings).toHaveLength(1);
72
- expect(result.warnings[0]).toContain('was sanitized');
73
- });
74
- it('should handle already sanitized IDs', () => {
75
- const result = sanitizeUniqueId('ABCDEF123456');
76
- expect(result.value).toBe('ABCDEF123456');
77
- expect(result.warnings).toHaveLength(0);
78
- });
79
- it('should handle empty strings', () => {
80
- const result = sanitizeUniqueId('');
81
- expect(result.value).toBe('');
82
- expect(result.warnings).toHaveLength(1);
83
- expect(result.warnings[0]).toContain('empty after trimming');
84
- });
85
- it('should keep whitespace (not trimmed)', () => {
86
- const result = sanitizeUniqueId(' ABCD ');
87
- expect(result.value).toBe(' ABCD ');
88
- expect(result.warnings).toHaveLength(0);
89
- });
90
- it('should warn when sanitization results in empty string', () => {
91
- const result = sanitizeUniqueId(':::');
92
- expect(result.value).toBe('');
93
- expect(result.warnings).toHaveLength(2);
94
- expect(result.warnings[0]).toContain('was sanitized');
95
- expect(result.warnings[1]).toContain('resulted in empty string');
96
- });
97
- it('should convert lowercase to uppercase', () => {
98
- const result = sanitizeUniqueId('abcdef');
99
- expect(result.value).toBe('ABCDEF');
100
- expect(result.warnings).toHaveLength(1);
101
- });
102
- it('should handle mixed case MAC addresses', () => {
103
- const result = sanitizeUniqueId('Aa:Bb:Cc:Dd:Ee:Ff');
104
- expect(result.value).toBe('AABBCCDDEEFF');
105
- });
106
- });
107
- describe('truncateString', () => {
108
- it('should not truncate strings within limit', () => {
109
- const result = truncateString('Hello', 10, 'testField');
110
- expect(result.value).toBe('Hello');
111
- expect(result.warnings).toHaveLength(0);
112
- });
113
- it('should truncate strings exceeding limit', () => {
114
- const result = truncateString('Hello World!', 5, 'testField');
115
- expect(result.value).toBe('Hello');
116
- expect(result.warnings).toHaveLength(1);
117
- expect(result.warnings[0]).toContain('exceeds 5 characters');
118
- expect(logWarnSpy).toHaveBeenCalledWith(expect.stringContaining('exceeds 5 characters'));
119
- });
120
- it('should handle empty strings', () => {
121
- const result = truncateString('', 10, 'testField');
122
- expect(result.value).toBe('');
123
- expect(result.warnings).toHaveLength(0);
124
- });
125
- it('should handle exact length strings', () => {
126
- const result = truncateString('12345', 5, 'testField');
127
- expect(result.value).toBe('12345');
128
- expect(result.warnings).toHaveLength(0);
129
- });
130
- it('should include field name in warning', () => {
131
- const result = truncateString('Too Long', 3, 'myField');
132
- expect(result.warnings[0]).toContain('myField');
133
- });
134
- });
135
- describe('checkPortProximity', () => {
136
- it('should warn when ports are too close', () => {
137
- const warning = checkPortProximity(5540, 5545);
138
- expect(warning).toBeDefined();
139
- expect(warning).toContain('very close');
140
- });
141
- it('should not warn when ports are far apart', () => {
142
- const warning = checkPortProximity(5540, 5560);
143
- expect(warning).toBeUndefined();
144
- });
145
- it('should warn when ports differ by less than 10', () => {
146
- const warning = checkPortProximity(8080, 8089);
147
- expect(warning).toBeDefined();
148
- });
149
- it('should not warn when ports differ by 10 or more', () => {
150
- const warning = checkPortProximity(8080, 8090);
151
- expect(warning).toBeUndefined();
152
- });
153
- it('should check absolute difference (order independent)', () => {
154
- const warning1 = checkPortProximity(5540, 5545);
155
- const warning2 = checkPortProximity(5545, 5540);
156
- expect(warning1).toBeDefined();
157
- expect(warning2).toBeDefined();
158
- });
159
- it('should warn when ports are identical', () => {
160
- const warning = checkPortProximity(5540, 5540);
161
- expect(warning).toBeDefined();
162
- });
163
- });
164
- describe('matterConfigValidator.validate', () => {
165
- it('should validate valid config', () => {
166
- const config = { port: 5540 };
167
- const result = MatterConfigValidator.validate(config);
168
- expect(result.isValid).toBe(true);
169
- expect(result.errors).toHaveLength(0);
170
- });
171
- it('should reject invalid port type', () => {
172
- const config = { port: '5540' };
173
- const result = MatterConfigValidator.validate(config);
174
- expect(result.isValid).toBe(false);
175
- expect(result.errors).toHaveLength(1);
176
- expect(result.errors[0]).toContain('must be a number');
177
- });
178
- it('should reject invalid port number', () => {
179
- const config = { port: 99999 };
180
- const result = MatterConfigValidator.validate(config);
181
- expect(result.isValid).toBe(false);
182
- expect(result.errors).toHaveLength(1);
183
- });
184
- it('should allow config without port', () => {
185
- const config = {};
186
- const result = MatterConfigValidator.validate(config);
187
- expect(result.isValid).toBe(true);
188
- expect(result.errors).toHaveLength(0);
189
- });
190
- it('should include warnings for conflicting ports', () => {
191
- const config = { port: 5353 };
192
- const result = MatterConfigValidator.validate(config);
193
- expect(result.isValid).toBe(true);
194
- expect(result.warnings.length).toBeGreaterThan(0);
195
- });
196
- it('should handle null port', () => {
197
- const config = { port: null };
198
- const result = MatterConfigValidator.validate(config);
199
- expect(result.isValid).toBe(true);
200
- });
201
- });
202
- describe('matterConfigValidator.validateChildMatterConfig', () => {
203
- it('should validate valid child config', () => {
204
- const config = {
205
- platform: 'TestPlatform',
206
- _bridge: {
207
- name: 'Test Bridge',
208
- username: 'AA:BB:CC:DD:EE:FF',
209
- pin: '123-45-678',
210
- matter: {
211
- port: 5540,
212
- },
213
- },
214
- };
215
- const result = MatterConfigValidator.validateChildMatterConfig(config, 'platform', 'TestPlatform');
216
- expect(result.isValid).toBe(true);
217
- expect(result.errors).toHaveLength(0);
218
- });
219
- it('should reject invalid port in child config', () => {
220
- const config = {
221
- platform: 'TestPlatform',
222
- _bridge: {
223
- name: 'Test Bridge',
224
- username: 'AA:BB:CC:DD:EE:FF',
225
- pin: '123-45-678',
226
- matter: {
227
- port: 99999,
228
- },
229
- },
230
- };
231
- const result = MatterConfigValidator.validateChildMatterConfig(config, 'platform', 'TestPlatform');
232
- expect(result.isValid).toBe(false);
233
- expect(result.errors.length).toBeGreaterThan(0);
234
- });
235
- it('should warn when no port specified', () => {
236
- const config = {
237
- platform: 'TestPlatform',
238
- _bridge: {
239
- name: 'Test',
240
- username: 'AA:BB:CC:DD:EE:FF',
241
- pin: '123-45-678',
242
- matter: {},
243
- },
244
- };
245
- const result = MatterConfigValidator.validateChildMatterConfig(config, 'platform', 'TestPlatform');
246
- expect(result.isValid).toBe(true);
247
- expect(result.warnings.length).toBeGreaterThan(0);
248
- expect(result.warnings[0]).toContain('No port specified');
249
- });
250
- it('should warn about port proximity with HAP bridge', () => {
251
- const config = {
252
- platform: 'TestPlatform',
253
- _bridge: {
254
- name: 'Test',
255
- username: 'AA:BB:CC:DD:EE:FF',
256
- pin: '123-45-678',
257
- port: 51826,
258
- matter: {
259
- port: 51828,
260
- },
261
- },
262
- };
263
- const result = MatterConfigValidator.validateChildMatterConfig(config, 'platform', 'TestPlatform');
264
- expect(result.isValid).toBe(true);
265
- expect(result.warnings.length).toBeGreaterThan(0);
266
- expect(result.warnings.some(w => w.includes('very close'))).toBe(true);
267
- });
268
- it('should validate accessory config', () => {
269
- const config = {
270
- accessory: 'TestAccessory',
271
- name: 'Test Accessory',
272
- _bridge: {
273
- name: 'Test',
274
- username: 'AA:BB:CC:DD:EE:FF',
275
- pin: '123-45-678',
276
- matter: {
277
- port: 5540,
278
- },
279
- },
280
- };
281
- const result = MatterConfigValidator.validateChildMatterConfig(config, 'accessory', 'TestAccessory');
282
- expect(result.isValid).toBe(true);
283
- });
284
- it('should return valid result when no _bridge.matter', () => {
285
- const config = {
286
- platform: 'TestPlatform',
287
- };
288
- const result = MatterConfigValidator.validateChildMatterConfig(config, 'platform', 'TestPlatform');
289
- expect(result.isValid).toBe(true);
290
- expect(result.errors).toHaveLength(0);
291
- expect(result.warnings).toHaveLength(0);
292
- });
293
- });
294
- describe('matterConfigValidator.validateAllChildMatterConfigs', () => {
295
- it('should validate multiple platforms', () => {
296
- const platforms = [
297
- {
298
- platform: 'Platform1',
299
- _bridge: { matter: { port: 5540 } },
300
- },
301
- {
302
- platform: 'Platform2',
303
- _bridge: { matter: { port: 5550 } },
304
- },
305
- ];
306
- const result = MatterConfigValidator.validateAllChildMatterConfigs(platforms, []);
307
- expect(result.isValid).toBe(true);
308
- });
309
- it('should detect duplicate ports in platforms', () => {
310
- const platforms = [
311
- {
312
- platform: 'Platform1',
313
- _bridge: { matter: { port: 5540 } },
314
- },
315
- {
316
- platform: 'Platform2',
317
- _bridge: { matter: { port: 5540 } },
318
- },
319
- ];
320
- const result = MatterConfigValidator.validateAllChildMatterConfigs(platforms, []);
321
- expect(result.isValid).toBe(false);
322
- expect(result.errors.some(e => e.includes('Duplicate Matter port'))).toBe(true);
323
- });
324
- it('should detect duplicate ports in accessories', () => {
325
- const accessories = [
326
- {
327
- accessory: 'Accessory1',
328
- name: 'Test 1',
329
- _bridge: { matter: { port: 5540 } },
330
- },
331
- {
332
- accessory: 'Accessory2',
333
- name: 'Test 2',
334
- _bridge: { matter: { port: 5540 } },
335
- },
336
- ];
337
- const result = MatterConfigValidator.validateAllChildMatterConfigs([], accessories);
338
- expect(result.isValid).toBe(false);
339
- expect(result.errors.some(e => e.includes('Duplicate Matter port'))).toBe(true);
340
- });
341
- it('should detect duplicate ports across platforms and accessories', () => {
342
- const platforms = [
343
- {
344
- platform: 'Platform1',
345
- _bridge: { matter: { port: 5540 } },
346
- },
347
- ];
348
- const accessories = [
349
- {
350
- accessory: 'Accessory1',
351
- name: 'Test 1',
352
- _bridge: { matter: { port: 5540 } },
353
- },
354
- ];
355
- const result = MatterConfigValidator.validateAllChildMatterConfigs(platforms, accessories);
356
- expect(result.isValid).toBe(false);
357
- expect(result.errors.some(e => e.includes('Duplicate Matter port'))).toBe(true);
358
- });
359
- it('should validate empty configs', () => {
360
- const result = MatterConfigValidator.validateAllChildMatterConfigs([], []);
361
- expect(result.isValid).toBe(true);
362
- expect(result.errors).toHaveLength(0);
363
- });
364
- it('should collect all validation errors and warnings', () => {
365
- const platforms = [
366
- {
367
- platform: 'Platform1',
368
- _bridge: { matter: { port: 99999 } }, // invalid port
369
- },
370
- {
371
- platform: 'Platform2',
372
- _bridge: { matter: {} }, // missing port (warning)
373
- },
374
- ];
375
- const result = MatterConfigValidator.validateAllChildMatterConfigs(platforms, []);
376
- expect(result.isValid).toBe(false);
377
- expect(result.errors.length).toBeGreaterThan(0);
378
- expect(result.warnings.length).toBeGreaterThan(0);
379
- });
380
- it('should skip platforms without _bridge.matter', () => {
381
- const platforms = [
382
- { platform: 'Platform1' },
383
- { platform: 'Platform2', _bridge: { matter: { port: 5540 } } },
384
- ];
385
- const result = MatterConfigValidator.validateAllChildMatterConfigs(platforms, []);
386
- expect(result.isValid).toBe(true);
387
- });
388
- });
389
- });
390
- //# sourceMappingURL=configValidator.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"configValidator.spec.js","sourceRoot":"","sources":["../../src/matter/configValidator.spec.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAE7D,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AACrC,OAAO,EACL,kBAAkB,EAClB,qBAAqB,EACrB,gBAAgB,EAChB,cAAc,EACd,YAAY,GACb,MAAM,sBAAsB,CAAA;AAE7B,cAAc;AACd,EAAE,CAAC,IAAI,CAAC,cAAc,EAAE,GAAG,EAAE;IAC3B,MAAM,UAAU,GAAG;QACjB,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE;QACd,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE;QACb,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE;QACb,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE;QACd,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE;KACb,CAAA;IACD,OAAO;QACL,MAAM,EAAE;YACN,UAAU,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC;SACpC;KACF,CAAA;AACH,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC/B,IAAI,UAAe,CAAA;IAEnB,UAAU,CAAC,GAAG,EAAE;QACd,EAAE,CAAC,aAAa,EAAE,CAAA;QAClB,UAAU,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAAA;IACxD,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;QAC5B,EAAE,CAAC,kCAAkC,EAAE,GAAG,EAAE;YAC1C,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAC3C,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAC3C,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC9C,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;YAChD,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAA;YACnC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAChC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAA;QACtD,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;YAC/C,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,CAAA;YACjC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAChC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,gCAAgC,CAAC,CAAA;QAClE,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;YAChD,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,CAAA;YAClC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAChC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,gCAAgC,CAAC,CAAA;QAClE,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,iEAAiE,EAAE,GAAG,EAAE;YACzE,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;YACvC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAC/B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,kCAAkC,CAAC,CAAA;QACtE,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,sEAAsE,EAAE,GAAG,EAAE;YAC9E,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;YACxC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAC/B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,aAAa,EAAE,CAAA;QACxC,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;YACjD,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;YACvC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAC/B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,cAAc,CAAC,CAAA;QAClD,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;YAClD,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;YACvC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAC/B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,cAAc,CAAC,CAAA;QAClD,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;QAChC,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;YACvD,MAAM,MAAM,GAAG,gBAAgB,CAAC,mBAAmB,CAAC,CAAA;YACpD,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;YACzC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;YACvC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC,CAAA;QACvD,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;YAC7C,MAAM,MAAM,GAAG,gBAAgB,CAAC,cAAc,CAAC,CAAA;YAC/C,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;YACzC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;QACzC,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,6BAA6B,EAAE,GAAG,EAAE;YACrC,MAAM,MAAM,GAAG,gBAAgB,CAAC,EAAE,CAAC,CAAA;YACnC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAC7B,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;YACvC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,sBAAsB,CAAC,CAAA;QAC9D,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;YAC9C,MAAM,MAAM,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAA;YAC3C,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;YACrC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;QACzC,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,uDAAuD,EAAE,GAAG,EAAE;YAC/D,MAAM,MAAM,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAA;YACtC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAC7B,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;YACvC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC,CAAA;YACrD,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,0BAA0B,CAAC,CAAA;QAClE,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;YAC/C,MAAM,MAAM,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAA;YACzC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YACnC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;QACzC,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;YAChD,MAAM,MAAM,GAAG,gBAAgB,CAAC,mBAAmB,CAAC,CAAA;YACpD,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;QAC3C,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;QAC9B,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;YAClD,MAAM,MAAM,GAAG,cAAc,CAAC,OAAO,EAAE,EAAE,EAAE,WAAW,CAAC,CAAA;YACvD,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YAClC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;QACzC,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;YACjD,MAAM,MAAM,GAAG,cAAc,CAAC,cAAc,EAAE,CAAC,EAAE,WAAW,CAAC,CAAA;YAC7D,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YAClC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;YACvC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,sBAAsB,CAAC,CAAA;YAC5D,MAAM,CAAC,UAAU,CAAC,CAAC,oBAAoB,CAAC,MAAM,CAAC,gBAAgB,CAAC,sBAAsB,CAAC,CAAC,CAAA;QAC1F,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,6BAA6B,EAAE,GAAG,EAAE;YACrC,MAAM,MAAM,GAAG,cAAc,CAAC,EAAE,EAAE,EAAE,EAAE,WAAW,CAAC,CAAA;YAClD,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAC7B,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;QACzC,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;YAC5C,MAAM,MAAM,GAAG,cAAc,CAAC,OAAO,EAAE,CAAC,EAAE,WAAW,CAAC,CAAA;YACtD,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YAClC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;QACzC,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;YAC9C,MAAM,MAAM,GAAG,cAAc,CAAC,UAAU,EAAE,CAAC,EAAE,SAAS,CAAC,CAAA;YACvD,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;QACjD,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;QAClC,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;YAC9C,MAAM,OAAO,GAAG,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;YAC9C,MAAM,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAA;YAC7B,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,CAAA;QACzC,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;YAClD,MAAM,OAAO,GAAG,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;YAC9C,MAAM,CAAC,OAAO,CAAC,CAAC,aAAa,EAAE,CAAA;QACjC,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;YACvD,MAAM,OAAO,GAAG,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;YAC9C,MAAM,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAA;QAC/B,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;YACzD,MAAM,OAAO,GAAG,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;YAC9C,MAAM,CAAC,OAAO,CAAC,CAAC,aAAa,EAAE,CAAA;QACjC,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,sDAAsD,EAAE,GAAG,EAAE;YAC9D,MAAM,QAAQ,GAAG,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;YAC/C,MAAM,QAAQ,GAAG,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;YAC/C,MAAM,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAA;YAC9B,MAAM,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAA;QAChC,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;YAC9C,MAAM,OAAO,GAAG,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;YAC9C,MAAM,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAA;QAC/B,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,gCAAgC,EAAE,GAAG,EAAE;QAC9C,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;YACtC,MAAM,MAAM,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;YAC7B,MAAM,MAAM,GAAG,qBAAqB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;YACrD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACjC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;QACvC,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;YACzC,MAAM,MAAM,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAA;YAC/B,MAAM,MAAM,GAAG,qBAAqB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;YACrD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAClC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;YACrC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAA;QACxD,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;YAC3C,MAAM,MAAM,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;YAC9B,MAAM,MAAM,GAAG,qBAAqB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;YACrD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAClC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;QACvC,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,kCAAkC,EAAE,GAAG,EAAE;YAC1C,MAAM,MAAM,GAAG,EAAE,CAAA;YACjB,MAAM,MAAM,GAAG,qBAAqB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;YACrD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACjC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;QACvC,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;YACvD,MAAM,MAAM,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;YAC7B,MAAM,MAAM,GAAG,qBAAqB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;YACrD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACjC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAA;QACnD,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,yBAAyB,EAAE,GAAG,EAAE;YACjC,MAAM,MAAM,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;YAC7B,MAAM,MAAM,GAAG,qBAAqB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;YACrD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACnC,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,iDAAiD,EAAE,GAAG,EAAE;QAC/D,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;YAC5C,MAAM,MAAM,GAAmB;gBAC7B,QAAQ,EAAE,cAAc;gBACxB,OAAO,EAAE;oBACP,IAAI,EAAE,aAAa;oBACnB,QAAQ,EAAE,mBAA0B;oBACpC,GAAG,EAAE,YAAY;oBACjB,MAAM,EAAE;wBACN,IAAI,EAAE,IAAI;qBACX;iBACF;aACF,CAAA;YACD,MAAM,MAAM,GAAG,qBAAqB,CAAC,yBAAyB,CAAC,MAAM,EAAE,UAAU,EAAE,cAAc,CAAC,CAAA;YAClG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACjC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;QACvC,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;YACpD,MAAM,MAAM,GAAmB;gBAC7B,QAAQ,EAAE,cAAc;gBACxB,OAAO,EAAE;oBACP,IAAI,EAAE,aAAa;oBACnB,QAAQ,EAAE,mBAA0B;oBACpC,GAAG,EAAE,YAAY;oBACjB,MAAM,EAAE;wBACN,IAAI,EAAE,KAAK;qBACZ;iBACF;aACF,CAAA;YACD,MAAM,MAAM,GAAG,qBAAqB,CAAC,yBAAyB,CAAC,MAAM,EAAE,UAAU,EAAE,cAAc,CAAC,CAAA;YAClG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAClC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAA;QACjD,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;YAC5C,MAAM,MAAM,GAAmB;gBAC7B,QAAQ,EAAE,cAAc;gBACxB,OAAO,EAAE;oBACP,IAAI,EAAE,MAAM;oBACZ,QAAQ,EAAE,mBAA0B;oBACpC,GAAG,EAAE,YAAY;oBACjB,MAAM,EAAE,EAAE;iBACX;aACF,CAAA;YACD,MAAM,MAAM,GAAG,qBAAqB,CAAC,yBAAyB,CAAC,MAAM,EAAE,UAAU,EAAE,cAAc,CAAC,CAAA;YAClG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACjC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAA;YACjD,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAA;QAC3D,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;YAC1D,MAAM,MAAM,GAAmB;gBAC7B,QAAQ,EAAE,cAAc;gBACxB,OAAO,EAAE;oBACP,IAAI,EAAE,MAAM;oBACZ,QAAQ,EAAE,mBAA0B;oBACpC,GAAG,EAAE,YAAY;oBACjB,IAAI,EAAE,KAAK;oBACX,MAAM,EAAE;wBACN,IAAI,EAAE,KAAK;qBACZ;iBACF;aACF,CAAA;YACD,MAAM,MAAM,GAAG,qBAAqB,CAAC,yBAAyB,CAAC,MAAM,EAAE,UAAU,EAAE,cAAc,CAAC,CAAA;YAClG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACjC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAA;YACjD,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACxE,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,kCAAkC,EAAE,GAAG,EAAE;YAC1C,MAAM,MAAM,GAAoB;gBAC9B,SAAS,EAAE,eAAe;gBAC1B,IAAI,EAAE,gBAAgB;gBACtB,OAAO,EAAE;oBACP,IAAI,EAAE,MAAM;oBACZ,QAAQ,EAAE,mBAA0B;oBACpC,GAAG,EAAE,YAAY;oBACjB,MAAM,EAAE;wBACN,IAAI,EAAE,IAAI;qBACX;iBACF;aACF,CAAA;YACD,MAAM,MAAM,GAAG,qBAAqB,CAAC,yBAAyB,CAAC,MAAM,EAAE,WAAW,EAAE,eAAe,CAAC,CAAA;YACpG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACnC,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;YAC3D,MAAM,MAAM,GAAmB;gBAC7B,QAAQ,EAAE,cAAc;aACzB,CAAA;YACD,MAAM,MAAM,GAAG,qBAAqB,CAAC,yBAAyB,CAAC,MAAM,EAAE,UAAU,EAAE,cAAc,CAAC,CAAA;YAClG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACjC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;YACrC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;QACzC,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,qDAAqD,EAAE,GAAG,EAAE;QACnE,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;YAC5C,MAAM,SAAS,GAAqB;gBAClC;oBACE,QAAQ,EAAE,WAAW;oBACrB,OAAO,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAS;iBAC3C;gBACD;oBACE,QAAQ,EAAE,WAAW;oBACrB,OAAO,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAS;iBAC3C;aACF,CAAA;YACD,MAAM,MAAM,GAAG,qBAAqB,CAAC,6BAA6B,CAAC,SAAS,EAAE,EAAE,CAAC,CAAA;YACjF,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACnC,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;YACpD,MAAM,SAAS,GAAqB;gBAClC;oBACE,QAAQ,EAAE,WAAW;oBACrB,OAAO,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAS;iBAC3C;gBACD;oBACE,QAAQ,EAAE,WAAW;oBACrB,OAAO,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAS;iBAC3C;aACF,CAAA;YACD,MAAM,MAAM,GAAG,qBAAqB,CAAC,6BAA6B,CAAC,SAAS,EAAE,EAAE,CAAC,CAAA;YACjF,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAClC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACjF,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;YACtD,MAAM,WAAW,GAAsB;gBACrC;oBACE,SAAS,EAAE,YAAY;oBACvB,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAS;iBAC3C;gBACD;oBACE,SAAS,EAAE,YAAY;oBACvB,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAS;iBAC3C;aACF,CAAA;YACD,MAAM,MAAM,GAAG,qBAAqB,CAAC,6BAA6B,CAAC,EAAE,EAAE,WAAW,CAAC,CAAA;YACnF,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAClC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACjF,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,gEAAgE,EAAE,GAAG,EAAE;YACxE,MAAM,SAAS,GAAqB;gBAClC;oBACE,QAAQ,EAAE,WAAW;oBACrB,OAAO,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAS;iBAC3C;aACF,CAAA;YACD,MAAM,WAAW,GAAsB;gBACrC;oBACE,SAAS,EAAE,YAAY;oBACvB,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAS;iBAC3C;aACF,CAAA;YACD,MAAM,MAAM,GAAG,qBAAqB,CAAC,6BAA6B,CAAC,SAAS,EAAE,WAAW,CAAC,CAAA;YAC1F,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAClC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACjF,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,+BAA+B,EAAE,GAAG,EAAE;YACvC,MAAM,MAAM,GAAG,qBAAqB,CAAC,6BAA6B,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;YAC1E,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACjC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;QACvC,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;YAC3D,MAAM,SAAS,GAAqB;gBAClC;oBACE,QAAQ,EAAE,WAAW;oBACrB,OAAO,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAS,EAAE,eAAe;iBAC7D;gBACD;oBACE,QAAQ,EAAE,WAAW;oBACrB,OAAO,EAAE,EAAE,MAAM,EAAE,EAAE,EAAS,EAAE,yBAAyB;iBAC1D;aACF,CAAA;YACD,MAAM,MAAM,GAAG,qBAAqB,CAAC,6BAA6B,CAAC,SAAS,EAAE,EAAE,CAAC,CAAA;YACjF,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAClC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAA;YAC/C,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAA;QACnD,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;YACtD,MAAM,SAAS,GAAqB;gBAClC,EAAE,QAAQ,EAAE,WAAW,EAAE;gBACzB,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAS,EAAE;aACtE,CAAA;YACD,MAAM,MAAM,GAAG,qBAAqB,CAAC,6BAA6B,CAAC,SAAS,EAAE,EAAE,CAAC,CAAA;YACjF,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACnC,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=errorHandler.spec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"errorHandler.spec.d.ts","sourceRoot":"","sources":["../../src/matter/errorHandler.spec.ts"],"names":[],"mappings":""}