@zwave-js/cc 14.0.0-beta.1 → 14.0.0-beta.5

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 (923) hide show
  1. package/build/cjs/cc/AlarmSensorCC.d.ts +194 -0
  2. package/build/cjs/cc/AlarmSensorCC.js +510 -0
  3. package/build/cjs/cc/AlarmSensorCC.js.map +7 -0
  4. package/build/cjs/cc/AssociationCC.d.ts +253 -0
  5. package/build/cjs/cc/AssociationCC.js +877 -0
  6. package/build/cjs/cc/AssociationCC.js.map +7 -0
  7. package/build/cjs/cc/AssociationGroupInfoCC.d.ts +230 -0
  8. package/build/cjs/cc/AssociationGroupInfoCC.js +887 -0
  9. package/build/cjs/cc/AssociationGroupInfoCC.js.map +7 -0
  10. package/build/cjs/cc/BarrierOperatorCC.d.ts +243 -0
  11. package/build/cjs/cc/BarrierOperatorCC.js +748 -0
  12. package/build/cjs/cc/BarrierOperatorCC.js.map +7 -0
  13. package/build/cjs/cc/BasicCC.d.ts +191 -0
  14. package/build/cjs/cc/BasicCC.js +478 -0
  15. package/build/cjs/cc/BasicCC.js.map +7 -0
  16. package/build/cjs/cc/BatteryCC.d.ts +406 -0
  17. package/build/cjs/cc/BatteryCC.js +590 -0
  18. package/build/cjs/cc/BatteryCC.js.map +7 -0
  19. package/build/cjs/cc/BinarySensorCC.d.ts +122 -0
  20. package/build/cjs/cc/BinarySensorCC.js +546 -0
  21. package/build/cjs/cc/BinarySensorCC.js.map +7 -0
  22. package/build/cjs/cc/BinarySwitchCC.d.ts +139 -0
  23. package/build/cjs/cc/BinarySwitchCC.js +472 -0
  24. package/build/cjs/cc/BinarySwitchCC.js.map +7 -0
  25. package/build/cjs/cc/CRC16CC.d.ts +29 -0
  26. package/build/cjs/cc/CRC16CC.js +208 -0
  27. package/build/cjs/cc/CRC16CC.js.map +7 -0
  28. package/build/cjs/cc/CentralSceneCC.d.ts +210 -0
  29. package/build/cjs/cc/CentralSceneCC.js +584 -0
  30. package/build/cjs/cc/CentralSceneCC.js.map +7 -0
  31. package/build/cjs/cc/ClimateControlScheduleCC.d.ts +177 -0
  32. package/build/cjs/cc/ClimateControlScheduleCC.js +646 -0
  33. package/build/cjs/cc/ClimateControlScheduleCC.js.map +7 -0
  34. package/build/cjs/cc/ClockCC.d.ts +47 -0
  35. package/build/cjs/cc/ClockCC.js +330 -0
  36. package/build/cjs/cc/ClockCC.js.map +7 -0
  37. package/build/cjs/cc/ColorSwitchCC.d.ts +339 -0
  38. package/build/cjs/cc/ColorSwitchCC.js +1265 -0
  39. package/build/cjs/cc/ColorSwitchCC.js.map +7 -0
  40. package/build/cjs/cc/ConfigurationCC.d.ts +396 -0
  41. package/build/cjs/cc/ConfigurationCC.js +2477 -0
  42. package/build/cjs/cc/ConfigurationCC.js.map +7 -0
  43. package/build/cjs/cc/DeviceResetLocallyCC.d.ts +17 -0
  44. package/build/cjs/cc/DeviceResetLocallyCC.js +168 -0
  45. package/build/cjs/cc/DeviceResetLocallyCC.js.map +7 -0
  46. package/build/cjs/cc/DoorLockCC.d.ts +837 -0
  47. package/build/cjs/cc/DoorLockCC.js +1366 -0
  48. package/build/cjs/cc/DoorLockCC.js.map +7 -0
  49. package/build/cjs/cc/DoorLockLoggingCC.d.ts +77 -0
  50. package/build/cjs/cc/DoorLockLoggingCC.js +458 -0
  51. package/build/cjs/cc/DoorLockLoggingCC.js.map +7 -0
  52. package/build/cjs/cc/EnergyProductionCC.d.ts +77 -0
  53. package/build/cjs/cc/EnergyProductionCC.js +329 -0
  54. package/build/cjs/cc/EnergyProductionCC.js.map +7 -0
  55. package/build/cjs/cc/EntryControlCC.d.ts +231 -0
  56. package/build/cjs/cc/EntryControlCC.js +754 -0
  57. package/build/cjs/cc/EntryControlCC.js.map +7 -0
  58. package/build/cjs/cc/FirmwareUpdateMetaDataCC.d.ts +359 -0
  59. package/build/cjs/cc/FirmwareUpdateMetaDataCC.js +1322 -0
  60. package/build/cjs/cc/FirmwareUpdateMetaDataCC.js.map +7 -0
  61. package/build/cjs/cc/HailCC.d.ts +6 -0
  62. package/build/cjs/cc/HailCC.js +91 -0
  63. package/build/cjs/cc/HailCC.js.map +7 -0
  64. package/build/cjs/cc/HumidityControlModeCC.d.ts +111 -0
  65. package/build/cjs/cc/HumidityControlModeCC.js +449 -0
  66. package/build/cjs/cc/HumidityControlModeCC.js.map +7 -0
  67. package/build/cjs/cc/HumidityControlOperatingStateCC.d.ts +60 -0
  68. package/build/cjs/cc/HumidityControlOperatingStateCC.js +250 -0
  69. package/build/cjs/cc/HumidityControlOperatingStateCC.js.map +7 -0
  70. package/build/cjs/cc/HumidityControlSetpointCC.d.ts +209 -0
  71. package/build/cjs/cc/HumidityControlSetpointCC.js +821 -0
  72. package/build/cjs/cc/HumidityControlSetpointCC.js.map +7 -0
  73. package/build/cjs/cc/InclusionControllerCC.d.ts +42 -0
  74. package/build/cjs/cc/InclusionControllerCC.js +251 -0
  75. package/build/cjs/cc/InclusionControllerCC.js.map +7 -0
  76. package/build/cjs/cc/IndicatorCC.d.ts +338 -0
  77. package/build/cjs/cc/IndicatorCC.js +1395 -0
  78. package/build/cjs/cc/IndicatorCC.js.map +7 -0
  79. package/build/cjs/cc/IrrigationCC.d.ts +1496 -0
  80. package/build/cjs/cc/IrrigationCC.js +2224 -0
  81. package/build/cjs/cc/IrrigationCC.js.map +7 -0
  82. package/build/cjs/cc/LanguageCC.d.ts +101 -0
  83. package/build/cjs/cc/LanguageCC.js +364 -0
  84. package/build/cjs/cc/LanguageCC.js.map +7 -0
  85. package/build/cjs/cc/LockCC.d.ts +73 -0
  86. package/build/cjs/cc/LockCC.js +322 -0
  87. package/build/cjs/cc/LockCC.js.map +7 -0
  88. package/build/cjs/cc/ManufacturerProprietaryCC.d.ts +32 -0
  89. package/build/cjs/cc/ManufacturerProprietaryCC.js +269 -0
  90. package/build/cjs/cc/ManufacturerProprietaryCC.js.map +7 -0
  91. package/build/cjs/cc/ManufacturerSpecificCC.d.ts +171 -0
  92. package/build/cjs/cc/ManufacturerSpecificCC.js +440 -0
  93. package/build/cjs/cc/ManufacturerSpecificCC.js.map +7 -0
  94. package/build/cjs/cc/MeterCC.d.ts +318 -0
  95. package/build/cjs/cc/MeterCC.js +1355 -0
  96. package/build/cjs/cc/MeterCC.js.map +7 -0
  97. package/build/cjs/cc/MultiChannelAssociationCC.d.ts +241 -0
  98. package/build/cjs/cc/MultiChannelAssociationCC.js +1090 -0
  99. package/build/cjs/cc/MultiChannelAssociationCC.js.map +7 -0
  100. package/build/cjs/cc/MultiChannelCC.d.ts +394 -0
  101. package/build/cjs/cc/MultiChannelCC.js +1268 -0
  102. package/build/cjs/cc/MultiChannelCC.js.map +7 -0
  103. package/build/cjs/cc/MultiCommandCC.d.ts +27 -0
  104. package/build/cjs/cc/MultiCommandCC.js +234 -0
  105. package/build/cjs/cc/MultiCommandCC.js.map +7 -0
  106. package/build/cjs/cc/MultilevelSensorCC.d.ts +185 -0
  107. package/build/cjs/cc/MultilevelSensorCC.js +856 -0
  108. package/build/cjs/cc/MultilevelSensorCC.js.map +7 -0
  109. package/build/cjs/cc/MultilevelSwitchCC.d.ts +357 -0
  110. package/build/cjs/cc/MultilevelSwitchCC.js +928 -0
  111. package/build/cjs/cc/MultilevelSwitchCC.js.map +7 -0
  112. package/build/cjs/cc/NoOperationCC.d.ts +9 -0
  113. package/build/cjs/cc/NoOperationCC.js +126 -0
  114. package/build/cjs/cc/NoOperationCC.js.map +7 -0
  115. package/build/cjs/cc/NodeNamingCC.d.ts +118 -0
  116. package/build/cjs/cc/NodeNamingCC.js +504 -0
  117. package/build/cjs/cc/NodeNamingCC.js.map +7 -0
  118. package/build/cjs/cc/NotificationCC.d.ts +479 -0
  119. package/build/cjs/cc/NotificationCC.js +1399 -0
  120. package/build/cjs/cc/NotificationCC.js.map +7 -0
  121. package/build/cjs/cc/PowerlevelCC.d.ts +82 -0
  122. package/build/cjs/cc/PowerlevelCC.js +657 -0
  123. package/build/cjs/cc/PowerlevelCC.js.map +7 -0
  124. package/build/cjs/cc/ProtectionCC.d.ts +325 -0
  125. package/build/cjs/cc/ProtectionCC.js +859 -0
  126. package/build/cjs/cc/ProtectionCC.js.map +7 -0
  127. package/build/cjs/cc/SceneActivationCC.d.ts +89 -0
  128. package/build/cjs/cc/SceneActivationCC.js +261 -0
  129. package/build/cjs/cc/SceneActivationCC.js.map +7 -0
  130. package/build/cjs/cc/SceneActuatorConfigurationCC.d.ts +120 -0
  131. package/build/cjs/cc/SceneActuatorConfigurationCC.js +473 -0
  132. package/build/cjs/cc/SceneActuatorConfigurationCC.js.map +7 -0
  133. package/build/cjs/cc/SceneControllerConfigurationCC.d.ts +129 -0
  134. package/build/cjs/cc/SceneControllerConfigurationCC.js +526 -0
  135. package/build/cjs/cc/SceneControllerConfigurationCC.js.map +7 -0
  136. package/build/cjs/cc/ScheduleEntryLockCC.d.ts +434 -0
  137. package/build/cjs/cc/ScheduleEntryLockCC.js +2043 -0
  138. package/build/cjs/cc/ScheduleEntryLockCC.js.map +7 -0
  139. package/build/cjs/cc/Security2CC.d.ts +251 -0
  140. package/build/cjs/cc/Security2CC.js +1853 -0
  141. package/build/cjs/cc/Security2CC.js.map +7 -0
  142. package/build/cjs/cc/SecurityCC.d.ts +128 -0
  143. package/build/cjs/cc/SecurityCC.js +977 -0
  144. package/build/cjs/cc/SecurityCC.js.map +7 -0
  145. package/build/cjs/cc/SoundSwitchCC.d.ts +232 -0
  146. package/build/cjs/cc/SoundSwitchCC.js +853 -0
  147. package/build/cjs/cc/SoundSwitchCC.js.map +7 -0
  148. package/build/cjs/cc/SupervisionCC.d.ts +104 -0
  149. package/build/cjs/cc/SupervisionCC.js +398 -0
  150. package/build/cjs/cc/SupervisionCC.js.map +7 -0
  151. package/build/cjs/cc/ThermostatFanModeCC.d.ts +141 -0
  152. package/build/cjs/cc/ThermostatFanModeCC.js +495 -0
  153. package/build/cjs/cc/ThermostatFanModeCC.js.map +7 -0
  154. package/build/cjs/cc/ThermostatFanStateCC.d.ts +60 -0
  155. package/build/cjs/cc/ThermostatFanStateCC.js +252 -0
  156. package/build/cjs/cc/ThermostatFanStateCC.js.map +7 -0
  157. package/build/cjs/cc/ThermostatModeCC.d.ts +150 -0
  158. package/build/cjs/cc/ThermostatModeCC.js +559 -0
  159. package/build/cjs/cc/ThermostatModeCC.js.map +7 -0
  160. package/build/cjs/cc/ThermostatOperatingStateCC.d.ts +61 -0
  161. package/build/cjs/cc/ThermostatOperatingStateCC.js +248 -0
  162. package/build/cjs/cc/ThermostatOperatingStateCC.js.map +7 -0
  163. package/build/cjs/cc/ThermostatSetbackCC.d.ts +46 -0
  164. package/build/cjs/cc/ThermostatSetbackCC.js +366 -0
  165. package/build/cjs/cc/ThermostatSetbackCC.js.map +7 -0
  166. package/build/cjs/cc/ThermostatSetpointCC.d.ts +197 -0
  167. package/build/cjs/cc/ThermostatSetpointCC.js +792 -0
  168. package/build/cjs/cc/ThermostatSetpointCC.js.map +7 -0
  169. package/build/cjs/cc/TimeCC.d.ts +88 -0
  170. package/build/cjs/cc/TimeCC.js +635 -0
  171. package/build/cjs/cc/TimeCC.js.map +7 -0
  172. package/build/cjs/cc/TimeParametersCC.d.ts +72 -0
  173. package/build/cjs/cc/TimeParametersCC.js +413 -0
  174. package/build/cjs/cc/TimeParametersCC.js.map +7 -0
  175. package/build/cjs/cc/TransportServiceCC.d.ts +107 -0
  176. package/build/cjs/cc/TransportServiceCC.js +522 -0
  177. package/build/cjs/cc/TransportServiceCC.js.map +7 -0
  178. package/build/cjs/cc/UserCodeCC.d.ts +683 -0
  179. package/build/cjs/cc/UserCodeCC.js +1903 -0
  180. package/build/cjs/cc/UserCodeCC.js.map +7 -0
  181. package/build/cjs/cc/VersionCC.d.ts +469 -0
  182. package/build/cjs/cc/VersionCC.js +962 -0
  183. package/build/cjs/cc/VersionCC.js.map +7 -0
  184. package/build/cjs/cc/WakeUpCC.d.ts +150 -0
  185. package/build/cjs/cc/WakeUpCC.js +609 -0
  186. package/build/cjs/cc/WakeUpCC.js.map +7 -0
  187. package/build/cjs/cc/WindowCoveringCC.d.ts +315 -0
  188. package/build/cjs/cc/WindowCoveringCC.js +924 -0
  189. package/build/cjs/cc/WindowCoveringCC.js.map +7 -0
  190. package/build/cjs/cc/ZWaveLongRangeCC.d.ts +4 -0
  191. package/build/cjs/cc/ZWaveLongRangeCC.js +90 -0
  192. package/build/cjs/cc/ZWaveLongRangeCC.js.map +7 -0
  193. package/build/cjs/cc/ZWavePlusCC.d.ts +163 -0
  194. package/build/cjs/cc/ZWavePlusCC.js +362 -0
  195. package/build/cjs/cc/ZWavePlusCC.js.map +7 -0
  196. package/build/cjs/cc/ZWaveProtocolCC.d.ts +344 -0
  197. package/build/cjs/cc/ZWaveProtocolCC.js +1638 -0
  198. package/build/cjs/cc/ZWaveProtocolCC.js.map +7 -0
  199. package/build/cjs/cc/index.d.ts +132 -0
  200. package/build/cjs/cc/index.js +1180 -0
  201. package/build/cjs/cc/index.js.map +7 -0
  202. package/build/cjs/cc/manufacturerProprietary/Decorators.d.ts +64 -0
  203. package/build/cjs/cc/manufacturerProprietary/Decorators.js +76 -0
  204. package/build/cjs/cc/manufacturerProprietary/Decorators.js.map +7 -0
  205. package/build/cjs/cc/manufacturerProprietary/FibaroCC.d.ts +79 -0
  206. package/build/cjs/cc/manufacturerProprietary/FibaroCC.js +533 -0
  207. package/build/cjs/cc/manufacturerProprietary/FibaroCC.js.map +7 -0
  208. package/build/cjs/index.d.ts +15 -0
  209. package/build/cjs/index.js +77 -0
  210. package/build/cjs/index.js.map +7 -0
  211. package/build/cjs/index_safe.d.ts +3 -0
  212. package/build/cjs/index_safe.js +25 -0
  213. package/build/cjs/index_safe.js.map +7 -0
  214. package/build/cjs/lib/API.d.ts +271 -0
  215. package/build/cjs/lib/API.js +413 -0
  216. package/build/cjs/lib/API.js.map +7 -0
  217. package/build/cjs/lib/CommandClass.d.ts +234 -0
  218. package/build/cjs/lib/CommandClass.js +692 -0
  219. package/build/cjs/lib/CommandClass.js.map +7 -0
  220. package/build/cjs/lib/CommandClassDecorators.d.ts +108 -0
  221. package/build/cjs/lib/CommandClassDecorators.js +181 -0
  222. package/build/cjs/lib/CommandClassDecorators.js.map +7 -0
  223. package/build/cjs/lib/EncapsulatingCommandClass.d.ts +22 -0
  224. package/build/cjs/lib/EncapsulatingCommandClass.js +71 -0
  225. package/build/cjs/lib/EncapsulatingCommandClass.js.map +7 -0
  226. package/build/cjs/lib/ICommandClassContainer.js +17 -0
  227. package/build/cjs/lib/ICommandClassContainer.js.map +7 -0
  228. package/build/cjs/lib/NotificationEventPayload.d.ts +10 -0
  229. package/build/cjs/lib/NotificationEventPayload.js +31 -0
  230. package/build/cjs/lib/NotificationEventPayload.js.map +7 -0
  231. package/build/cjs/lib/Security2/Extension.d.ts +106 -0
  232. package/build/cjs/lib/Security2/Extension.js +424 -0
  233. package/build/cjs/lib/Security2/Extension.js.map +7 -0
  234. package/build/cjs/lib/Security2/shared.js +69 -0
  235. package/build/cjs/lib/Security2/shared.js.map +7 -0
  236. package/build/cjs/lib/SetValueResult.js +65 -0
  237. package/build/cjs/lib/SetValueResult.js.map +7 -0
  238. package/build/cjs/lib/Values.d.ts +223 -0
  239. package/build/cjs/lib/Values.js +191 -0
  240. package/build/cjs/lib/Values.js.map +7 -0
  241. package/build/cjs/lib/_Types.js +1676 -0
  242. package/build/cjs/lib/_Types.js.map +7 -0
  243. package/build/cjs/lib/serializers.d.ts +34 -0
  244. package/build/cjs/lib/serializers.js +110 -0
  245. package/build/cjs/lib/serializers.js.map +7 -0
  246. package/build/cjs/lib/utils.d.ts +17 -0
  247. package/build/cjs/lib/utils.js +678 -0
  248. package/build/cjs/lib/utils.js.map +7 -0
  249. package/build/cjs/package.json +3 -0
  250. package/build/esm/cc/AlarmSensorCC.d.ts +194 -0
  251. package/build/esm/cc/AlarmSensorCC.d.ts.map +1 -0
  252. package/build/esm/cc/AlarmSensorCC.js +490 -0
  253. package/build/esm/cc/AlarmSensorCC.js.map +1 -0
  254. package/build/esm/cc/AssociationCC.d.ts +253 -0
  255. package/build/esm/cc/AssociationCC.d.ts.map +1 -0
  256. package/build/esm/cc/AssociationCC.js +847 -0
  257. package/build/esm/cc/AssociationCC.js.map +1 -0
  258. package/build/esm/cc/AssociationGroupInfoCC.d.ts +230 -0
  259. package/build/esm/cc/AssociationGroupInfoCC.d.ts.map +1 -0
  260. package/build/esm/cc/AssociationGroupInfoCC.js +889 -0
  261. package/build/esm/cc/AssociationGroupInfoCC.js.map +1 -0
  262. package/build/esm/cc/BarrierOperatorCC.d.ts +243 -0
  263. package/build/esm/cc/BarrierOperatorCC.d.ts.map +1 -0
  264. package/build/esm/cc/BarrierOperatorCC.js +751 -0
  265. package/build/esm/cc/BarrierOperatorCC.js.map +1 -0
  266. package/build/esm/cc/BasicCC.d.ts +191 -0
  267. package/build/esm/cc/BasicCC.d.ts.map +1 -0
  268. package/build/esm/cc/BasicCC.js +468 -0
  269. package/build/esm/cc/BasicCC.js.map +1 -0
  270. package/build/esm/cc/BatteryCC.d.ts +406 -0
  271. package/build/esm/cc/BatteryCC.d.ts.map +1 -0
  272. package/build/esm/cc/BatteryCC.js +578 -0
  273. package/build/esm/cc/BatteryCC.js.map +1 -0
  274. package/build/esm/cc/BinarySensorCC.d.ts +122 -0
  275. package/build/esm/cc/BinarySensorCC.d.ts.map +1 -0
  276. package/build/esm/cc/BinarySensorCC.js +515 -0
  277. package/build/esm/cc/BinarySensorCC.js.map +1 -0
  278. package/build/esm/cc/BinarySwitchCC.d.ts +139 -0
  279. package/build/esm/cc/BinarySwitchCC.d.ts.map +1 -0
  280. package/build/esm/cc/BinarySwitchCC.js +441 -0
  281. package/build/esm/cc/BinarySwitchCC.js.map +1 -0
  282. package/build/esm/cc/CRC16CC.d.ts +29 -0
  283. package/build/esm/cc/CRC16CC.d.ts.map +1 -0
  284. package/build/esm/cc/CRC16CC.js +187 -0
  285. package/build/esm/cc/CRC16CC.js.map +1 -0
  286. package/build/esm/cc/CentralSceneCC.d.ts +210 -0
  287. package/build/esm/cc/CentralSceneCC.d.ts.map +1 -0
  288. package/build/esm/cc/CentralSceneCC.js +541 -0
  289. package/build/esm/cc/CentralSceneCC.js.map +1 -0
  290. package/build/esm/cc/ClimateControlScheduleCC.d.ts +177 -0
  291. package/build/esm/cc/ClimateControlScheduleCC.d.ts.map +1 -0
  292. package/build/esm/cc/ClimateControlScheduleCC.js +607 -0
  293. package/build/esm/cc/ClimateControlScheduleCC.js.map +1 -0
  294. package/build/esm/cc/ClockCC.d.ts +47 -0
  295. package/build/esm/cc/ClockCC.d.ts.map +1 -0
  296. package/build/esm/cc/ClockCC.js +294 -0
  297. package/build/esm/cc/ClockCC.js.map +1 -0
  298. package/build/esm/cc/ColorSwitchCC.d.ts +339 -0
  299. package/build/esm/cc/ColorSwitchCC.d.ts.map +1 -0
  300. package/build/esm/cc/ColorSwitchCC.js +1274 -0
  301. package/build/esm/cc/ColorSwitchCC.js.map +1 -0
  302. package/build/esm/cc/ConfigurationCC.d.ts +396 -0
  303. package/build/esm/cc/ConfigurationCC.d.ts.map +1 -0
  304. package/build/esm/cc/ConfigurationCC.js +2666 -0
  305. package/build/esm/cc/ConfigurationCC.js.map +1 -0
  306. package/build/esm/cc/DeviceResetLocallyCC.d.ts +17 -0
  307. package/build/esm/cc/DeviceResetLocallyCC.d.ts.map +1 -0
  308. package/build/esm/cc/DeviceResetLocallyCC.js +138 -0
  309. package/build/esm/cc/DeviceResetLocallyCC.js.map +1 -0
  310. package/build/esm/cc/DoorLockCC.d.ts +837 -0
  311. package/build/esm/cc/DoorLockCC.d.ts.map +1 -0
  312. package/build/esm/cc/DoorLockCC.js +1372 -0
  313. package/build/esm/cc/DoorLockCC.js.map +1 -0
  314. package/build/esm/cc/DoorLockLoggingCC.d.ts +77 -0
  315. package/build/esm/cc/DoorLockLoggingCC.d.ts.map +1 -0
  316. package/build/esm/cc/DoorLockLoggingCC.js +414 -0
  317. package/build/esm/cc/DoorLockLoggingCC.js.map +1 -0
  318. package/build/esm/cc/EnergyProductionCC.d.ts +77 -0
  319. package/build/esm/cc/EnergyProductionCC.d.ts.map +1 -0
  320. package/build/esm/cc/EnergyProductionCC.js +289 -0
  321. package/build/esm/cc/EnergyProductionCC.js.map +1 -0
  322. package/build/esm/cc/EntryControlCC.d.ts +231 -0
  323. package/build/esm/cc/EntryControlCC.d.ts.map +1 -0
  324. package/build/esm/cc/EntryControlCC.js +717 -0
  325. package/build/esm/cc/EntryControlCC.js.map +1 -0
  326. package/build/esm/cc/FirmwareUpdateMetaDataCC.d.ts +359 -0
  327. package/build/esm/cc/FirmwareUpdateMetaDataCC.d.ts.map +1 -0
  328. package/build/esm/cc/FirmwareUpdateMetaDataCC.js +1311 -0
  329. package/build/esm/cc/FirmwareUpdateMetaDataCC.js.map +1 -0
  330. package/build/esm/cc/HailCC.d.ts +6 -0
  331. package/build/esm/cc/HailCC.d.ts.map +1 -0
  332. package/build/esm/cc/HailCC.js +60 -0
  333. package/build/esm/cc/HailCC.js.map +1 -0
  334. package/build/esm/cc/HumidityControlModeCC.d.ts +111 -0
  335. package/build/esm/cc/HumidityControlModeCC.d.ts.map +1 -0
  336. package/build/esm/cc/HumidityControlModeCC.js +412 -0
  337. package/build/esm/cc/HumidityControlModeCC.js.map +1 -0
  338. package/build/esm/cc/HumidityControlOperatingStateCC.d.ts +60 -0
  339. package/build/esm/cc/HumidityControlOperatingStateCC.d.ts.map +1 -0
  340. package/build/esm/cc/HumidityControlOperatingStateCC.js +210 -0
  341. package/build/esm/cc/HumidityControlOperatingStateCC.js.map +1 -0
  342. package/build/esm/cc/HumidityControlSetpointCC.d.ts +209 -0
  343. package/build/esm/cc/HumidityControlSetpointCC.d.ts.map +1 -0
  344. package/build/esm/cc/HumidityControlSetpointCC.js +805 -0
  345. package/build/esm/cc/HumidityControlSetpointCC.js.map +1 -0
  346. package/build/esm/cc/InclusionControllerCC.d.ts +42 -0
  347. package/build/esm/cc/InclusionControllerCC.d.ts.map +1 -0
  348. package/build/esm/cc/InclusionControllerCC.js +211 -0
  349. package/build/esm/cc/InclusionControllerCC.js.map +1 -0
  350. package/build/esm/cc/IndicatorCC.d.ts +338 -0
  351. package/build/esm/cc/IndicatorCC.d.ts.map +1 -0
  352. package/build/esm/cc/IndicatorCC.js +1455 -0
  353. package/build/esm/cc/IndicatorCC.js.map +1 -0
  354. package/build/esm/cc/IrrigationCC.d.ts +1496 -0
  355. package/build/esm/cc/IrrigationCC.d.ts.map +1 -0
  356. package/build/esm/cc/IrrigationCC.js +2239 -0
  357. package/build/esm/cc/IrrigationCC.js.map +1 -0
  358. package/build/esm/cc/LanguageCC.d.ts +101 -0
  359. package/build/esm/cc/LanguageCC.d.ts.map +1 -0
  360. package/build/esm/cc/LanguageCC.js +325 -0
  361. package/build/esm/cc/LanguageCC.js.map +1 -0
  362. package/build/esm/cc/LockCC.d.ts +73 -0
  363. package/build/esm/cc/LockCC.d.ts.map +1 -0
  364. package/build/esm/cc/LockCC.js +282 -0
  365. package/build/esm/cc/LockCC.js.map +1 -0
  366. package/build/esm/cc/ManufacturerProprietaryCC.d.ts +32 -0
  367. package/build/esm/cc/ManufacturerProprietaryCC.d.ts.map +1 -0
  368. package/build/esm/cc/ManufacturerProprietaryCC.js +252 -0
  369. package/build/esm/cc/ManufacturerProprietaryCC.js.map +1 -0
  370. package/build/esm/cc/ManufacturerSpecificCC.d.ts +171 -0
  371. package/build/esm/cc/ManufacturerSpecificCC.d.ts.map +1 -0
  372. package/build/esm/cc/ManufacturerSpecificCC.js +404 -0
  373. package/build/esm/cc/ManufacturerSpecificCC.js.map +1 -0
  374. package/build/esm/cc/MeterCC.d.ts +318 -0
  375. package/build/esm/cc/MeterCC.d.ts.map +1 -0
  376. package/build/esm/cc/MeterCC.js +1409 -0
  377. package/build/esm/cc/MeterCC.js.map +1 -0
  378. package/build/esm/cc/MultiChannelAssociationCC.d.ts +241 -0
  379. package/build/esm/cc/MultiChannelAssociationCC.d.ts.map +1 -0
  380. package/build/esm/cc/MultiChannelAssociationCC.js +1094 -0
  381. package/build/esm/cc/MultiChannelAssociationCC.js.map +1 -0
  382. package/build/esm/cc/MultiChannelCC.d.ts +394 -0
  383. package/build/esm/cc/MultiChannelCC.d.ts.map +1 -0
  384. package/build/esm/cc/MultiChannelCC.js +1312 -0
  385. package/build/esm/cc/MultiChannelCC.js.map +1 -0
  386. package/build/esm/cc/MultiCommandCC.d.ts +27 -0
  387. package/build/esm/cc/MultiCommandCC.d.ts.map +1 -0
  388. package/build/esm/cc/MultiCommandCC.js +206 -0
  389. package/build/esm/cc/MultiCommandCC.js.map +1 -0
  390. package/build/esm/cc/MultilevelSensorCC.d.ts +185 -0
  391. package/build/esm/cc/MultilevelSensorCC.d.ts.map +1 -0
  392. package/build/esm/cc/MultilevelSensorCC.js +872 -0
  393. package/build/esm/cc/MultilevelSensorCC.js.map +1 -0
  394. package/build/esm/cc/MultilevelSwitchCC.d.ts +357 -0
  395. package/build/esm/cc/MultilevelSwitchCC.d.ts.map +1 -0
  396. package/build/esm/cc/MultilevelSwitchCC.js +935 -0
  397. package/build/esm/cc/MultilevelSwitchCC.js.map +1 -0
  398. package/build/esm/cc/NoOperationCC.d.ts +9 -0
  399. package/build/esm/cc/NoOperationCC.d.ts.map +1 -0
  400. package/build/esm/cc/NoOperationCC.js +92 -0
  401. package/build/esm/cc/NoOperationCC.js.map +1 -0
  402. package/build/esm/cc/NodeNamingCC.d.ts +118 -0
  403. package/build/esm/cc/NodeNamingCC.d.ts.map +1 -0
  404. package/build/esm/cc/NodeNamingCC.js +464 -0
  405. package/build/esm/cc/NodeNamingCC.js.map +1 -0
  406. package/build/esm/cc/NotificationCC.d.ts +479 -0
  407. package/build/esm/cc/NotificationCC.d.ts.map +1 -0
  408. package/build/esm/cc/NotificationCC.js +1481 -0
  409. package/build/esm/cc/NotificationCC.js.map +1 -0
  410. package/build/esm/cc/PowerlevelCC.d.ts +82 -0
  411. package/build/esm/cc/PowerlevelCC.d.ts.map +1 -0
  412. package/build/esm/cc/PowerlevelCC.js +611 -0
  413. package/build/esm/cc/PowerlevelCC.js.map +1 -0
  414. package/build/esm/cc/ProtectionCC.d.ts +325 -0
  415. package/build/esm/cc/ProtectionCC.d.ts.map +1 -0
  416. package/build/esm/cc/ProtectionCC.js +830 -0
  417. package/build/esm/cc/ProtectionCC.js.map +1 -0
  418. package/build/esm/cc/SceneActivationCC.d.ts +89 -0
  419. package/build/esm/cc/SceneActivationCC.d.ts.map +1 -0
  420. package/build/esm/cc/SceneActivationCC.js +223 -0
  421. package/build/esm/cc/SceneActivationCC.js.map +1 -0
  422. package/build/esm/cc/SceneActuatorConfigurationCC.d.ts +120 -0
  423. package/build/esm/cc/SceneActuatorConfigurationCC.d.ts.map +1 -0
  424. package/build/esm/cc/SceneActuatorConfigurationCC.js +462 -0
  425. package/build/esm/cc/SceneActuatorConfigurationCC.js.map +1 -0
  426. package/build/esm/cc/SceneControllerConfigurationCC.d.ts +129 -0
  427. package/build/esm/cc/SceneControllerConfigurationCC.d.ts.map +1 -0
  428. package/build/esm/cc/SceneControllerConfigurationCC.js +534 -0
  429. package/build/esm/cc/SceneControllerConfigurationCC.js.map +1 -0
  430. package/build/esm/cc/ScheduleEntryLockCC.d.ts +434 -0
  431. package/build/esm/cc/ScheduleEntryLockCC.d.ts.map +1 -0
  432. package/build/esm/cc/ScheduleEntryLockCC.js +2065 -0
  433. package/build/esm/cc/ScheduleEntryLockCC.js.map +1 -0
  434. package/build/esm/cc/Security2CC.d.ts +251 -0
  435. package/build/esm/cc/Security2CC.d.ts.map +1 -0
  436. package/build/esm/cc/Security2CC.js +2041 -0
  437. package/build/esm/cc/Security2CC.js.map +1 -0
  438. package/build/esm/cc/SecurityCC.d.ts +128 -0
  439. package/build/esm/cc/SecurityCC.d.ts.map +1 -0
  440. package/build/esm/cc/SecurityCC.js +989 -0
  441. package/build/esm/cc/SecurityCC.js.map +1 -0
  442. package/build/esm/cc/SoundSwitchCC.d.ts +232 -0
  443. package/build/esm/cc/SoundSwitchCC.d.ts.map +1 -0
  444. package/build/esm/cc/SoundSwitchCC.js +796 -0
  445. package/build/esm/cc/SoundSwitchCC.js.map +1 -0
  446. package/build/esm/cc/SupervisionCC.d.ts +104 -0
  447. package/build/esm/cc/SupervisionCC.d.ts.map +1 -0
  448. package/build/esm/cc/SupervisionCC.js +396 -0
  449. package/build/esm/cc/SupervisionCC.js.map +1 -0
  450. package/build/esm/cc/ThermostatFanModeCC.d.ts +141 -0
  451. package/build/esm/cc/ThermostatFanModeCC.d.ts.map +1 -0
  452. package/build/esm/cc/ThermostatFanModeCC.js +463 -0
  453. package/build/esm/cc/ThermostatFanModeCC.js.map +1 -0
  454. package/build/esm/cc/ThermostatFanStateCC.d.ts +60 -0
  455. package/build/esm/cc/ThermostatFanStateCC.d.ts.map +1 -0
  456. package/build/esm/cc/ThermostatFanStateCC.js +212 -0
  457. package/build/esm/cc/ThermostatFanStateCC.js.map +1 -0
  458. package/build/esm/cc/ThermostatModeCC.d.ts +150 -0
  459. package/build/esm/cc/ThermostatModeCC.d.ts.map +1 -0
  460. package/build/esm/cc/ThermostatModeCC.js +530 -0
  461. package/build/esm/cc/ThermostatModeCC.js.map +1 -0
  462. package/build/esm/cc/ThermostatOperatingStateCC.d.ts +61 -0
  463. package/build/esm/cc/ThermostatOperatingStateCC.d.ts.map +1 -0
  464. package/build/esm/cc/ThermostatOperatingStateCC.js +208 -0
  465. package/build/esm/cc/ThermostatOperatingStateCC.js.map +1 -0
  466. package/build/esm/cc/ThermostatSetbackCC.d.ts +46 -0
  467. package/build/esm/cc/ThermostatSetbackCC.d.ts.map +1 -0
  468. package/build/esm/cc/ThermostatSetbackCC.js +333 -0
  469. package/build/esm/cc/ThermostatSetbackCC.js.map +1 -0
  470. package/build/esm/cc/ThermostatSetpointCC.d.ts +197 -0
  471. package/build/esm/cc/ThermostatSetpointCC.d.ts.map +1 -0
  472. package/build/esm/cc/ThermostatSetpointCC.js +786 -0
  473. package/build/esm/cc/ThermostatSetpointCC.js.map +1 -0
  474. package/build/esm/cc/TimeCC.d.ts +88 -0
  475. package/build/esm/cc/TimeCC.d.ts.map +1 -0
  476. package/build/esm/cc/TimeCC.js +590 -0
  477. package/build/esm/cc/TimeCC.js.map +1 -0
  478. package/build/esm/cc/TimeParametersCC.d.ts +72 -0
  479. package/build/esm/cc/TimeParametersCC.d.ts.map +1 -0
  480. package/build/esm/cc/TimeParametersCC.js +385 -0
  481. package/build/esm/cc/TimeParametersCC.js.map +1 -0
  482. package/build/esm/cc/TransportServiceCC.d.ts +107 -0
  483. package/build/esm/cc/TransportServiceCC.d.ts.map +1 -0
  484. package/build/esm/cc/TransportServiceCC.js +523 -0
  485. package/build/esm/cc/TransportServiceCC.js.map +1 -0
  486. package/build/esm/cc/UserCodeCC.d.ts +683 -0
  487. package/build/esm/cc/UserCodeCC.d.ts.map +1 -0
  488. package/build/esm/cc/UserCodeCC.js +1933 -0
  489. package/build/esm/cc/UserCodeCC.js.map +1 -0
  490. package/build/esm/cc/VersionCC.d.ts +469 -0
  491. package/build/esm/cc/VersionCC.d.ts.map +1 -0
  492. package/build/esm/cc/VersionCC.js +971 -0
  493. package/build/esm/cc/VersionCC.js.map +1 -0
  494. package/build/esm/cc/WakeUpCC.d.ts +150 -0
  495. package/build/esm/cc/WakeUpCC.d.ts.map +1 -0
  496. package/build/esm/cc/WakeUpCC.js +568 -0
  497. package/build/esm/cc/WakeUpCC.js.map +1 -0
  498. package/build/esm/cc/WindowCoveringCC.d.ts +315 -0
  499. package/build/esm/cc/WindowCoveringCC.d.ts.map +1 -0
  500. package/build/esm/cc/WindowCoveringCC.js +905 -0
  501. package/build/esm/cc/WindowCoveringCC.js.map +1 -0
  502. package/build/esm/cc/ZWaveLongRangeCC.d.ts +4 -0
  503. package/build/esm/cc/ZWaveLongRangeCC.d.ts.map +1 -0
  504. package/build/esm/cc/ZWaveLongRangeCC.js +57 -0
  505. package/build/esm/cc/ZWaveLongRangeCC.js.map +1 -0
  506. package/build/esm/cc/ZWavePlusCC.d.ts +163 -0
  507. package/build/esm/cc/ZWavePlusCC.d.ts.map +1 -0
  508. package/build/esm/cc/ZWavePlusCC.js +328 -0
  509. package/build/esm/cc/ZWavePlusCC.js.map +1 -0
  510. package/build/esm/cc/ZWaveProtocolCC.d.ts +344 -0
  511. package/build/esm/cc/ZWaveProtocolCC.d.ts.map +1 -0
  512. package/build/esm/cc/ZWaveProtocolCC.js +1520 -0
  513. package/build/esm/cc/ZWaveProtocolCC.js.map +1 -0
  514. package/build/esm/cc/index.d.ts +132 -0
  515. package/build/esm/cc/index.d.ts.map +1 -0
  516. package/build/esm/cc/index.js +71 -0
  517. package/build/esm/cc/index.js.map +1 -0
  518. package/build/esm/cc/manufacturerProprietary/Decorators.d.ts +64 -0
  519. package/build/esm/cc/manufacturerProprietary/Decorators.d.ts.map +1 -0
  520. package/build/esm/cc/manufacturerProprietary/Decorators.js +79 -0
  521. package/build/esm/cc/manufacturerProprietary/Decorators.js.map +1 -0
  522. package/build/esm/cc/manufacturerProprietary/FibaroCC.d.ts +79 -0
  523. package/build/esm/cc/manufacturerProprietary/FibaroCC.d.ts.map +1 -0
  524. package/build/esm/cc/manufacturerProprietary/FibaroCC.js +489 -0
  525. package/build/esm/cc/manufacturerProprietary/FibaroCC.js.map +1 -0
  526. package/build/esm/index.d.ts +15 -0
  527. package/build/esm/index.d.ts.map +1 -0
  528. package/build/esm/index.js +14 -0
  529. package/build/esm/index.js.map +1 -0
  530. package/build/esm/index_safe.d.ts +3 -0
  531. package/build/esm/index_safe.d.ts.map +1 -0
  532. package/build/esm/index_safe.js +4 -0
  533. package/build/esm/index_safe.js.map +1 -0
  534. package/build/esm/lib/API.d.ts +271 -0
  535. package/build/esm/lib/API.d.ts.map +1 -0
  536. package/build/esm/lib/API.js +448 -0
  537. package/build/esm/lib/API.js.map +1 -0
  538. package/build/esm/lib/CommandClass.d.ts +234 -0
  539. package/build/esm/lib/CommandClass.d.ts.map +1 -0
  540. package/build/esm/lib/CommandClass.js +781 -0
  541. package/build/esm/lib/CommandClass.js.map +1 -0
  542. package/build/esm/lib/CommandClassDecorators.d.ts +108 -0
  543. package/build/esm/lib/CommandClassDecorators.d.ts.map +1 -0
  544. package/build/esm/lib/CommandClassDecorators.js +229 -0
  545. package/build/esm/lib/CommandClassDecorators.js.map +1 -0
  546. package/build/esm/lib/EncapsulatingCommandClass.d.ts +22 -0
  547. package/build/esm/lib/EncapsulatingCommandClass.d.ts.map +1 -0
  548. package/build/esm/lib/EncapsulatingCommandClass.js +56 -0
  549. package/build/esm/lib/EncapsulatingCommandClass.js.map +1 -0
  550. package/build/esm/lib/ICommandClassContainer.d.ts +2 -0
  551. package/build/esm/lib/ICommandClassContainer.d.ts.map +1 -0
  552. package/build/esm/lib/ICommandClassContainer.js +2 -0
  553. package/build/esm/lib/ICommandClassContainer.js.map +1 -0
  554. package/build/esm/lib/NotificationEventPayload.d.ts +10 -0
  555. package/build/esm/lib/NotificationEventPayload.d.ts.map +1 -0
  556. package/build/esm/lib/NotificationEventPayload.js +7 -0
  557. package/build/esm/lib/NotificationEventPayload.js.map +1 -0
  558. package/build/esm/lib/Security2/Extension.d.ts +106 -0
  559. package/build/esm/lib/Security2/Extension.d.ts.map +1 -0
  560. package/build/esm/lib/Security2/Extension.js +380 -0
  561. package/build/esm/lib/Security2/Extension.js.map +1 -0
  562. package/build/esm/lib/Security2/shared.d.ts +37 -0
  563. package/build/esm/lib/Security2/shared.d.ts.map +1 -0
  564. package/build/esm/lib/Security2/shared.js +40 -0
  565. package/build/esm/lib/Security2/shared.js.map +1 -0
  566. package/build/esm/lib/SetValueResult.d.ts +55 -0
  567. package/build/esm/lib/SetValueResult.d.ts.map +1 -0
  568. package/build/esm/lib/SetValueResult.js +53 -0
  569. package/build/esm/lib/SetValueResult.js.map +1 -0
  570. package/build/esm/lib/Values.d.ts +223 -0
  571. package/build/esm/lib/Values.d.ts.map +1 -0
  572. package/build/esm/lib/Values.js +169 -0
  573. package/build/esm/lib/Values.js.map +1 -0
  574. package/build/esm/lib/_Types.d.ts +1461 -0
  575. package/build/esm/lib/_Types.d.ts.map +1 -0
  576. package/build/esm/lib/_Types.js +1432 -0
  577. package/build/esm/lib/_Types.js.map +1 -0
  578. package/build/esm/lib/serializers.d.ts +34 -0
  579. package/build/esm/lib/serializers.d.ts.map +1 -0
  580. package/build/esm/lib/serializers.js +98 -0
  581. package/build/esm/lib/serializers.js.map +1 -0
  582. package/build/esm/lib/utils.d.ts +17 -0
  583. package/build/esm/lib/utils.d.ts.map +1 -0
  584. package/build/esm/lib/utils.js +847 -0
  585. package/build/esm/lib/utils.js.map +1 -0
  586. package/build/esm/package.json +3 -0
  587. package/package.json +28 -23
  588. package/build/cc/AlarmSensorCC.d.ts +0 -194
  589. package/build/cc/AlarmSensorCC.d.ts.map +0 -1
  590. package/build/cc/AlarmSensorCC.js +0 -395
  591. package/build/cc/AlarmSensorCC.js.map +0 -1
  592. package/build/cc/AssociationCC.d.ts +0 -253
  593. package/build/cc/AssociationCC.d.ts.map +0 -1
  594. package/build/cc/AssociationCC.js +0 -732
  595. package/build/cc/AssociationCC.js.map +0 -1
  596. package/build/cc/AssociationGroupInfoCC.d.ts +0 -230
  597. package/build/cc/AssociationGroupInfoCC.d.ts.map +0 -1
  598. package/build/cc/AssociationGroupInfoCC.js +0 -772
  599. package/build/cc/AssociationGroupInfoCC.js.map +0 -1
  600. package/build/cc/BarrierOperatorCC.d.ts +0 -243
  601. package/build/cc/BarrierOperatorCC.d.ts.map +0 -1
  602. package/build/cc/BarrierOperatorCC.js +0 -613
  603. package/build/cc/BarrierOperatorCC.js.map +0 -1
  604. package/build/cc/BasicCC.d.ts +0 -191
  605. package/build/cc/BasicCC.d.ts.map +0 -1
  606. package/build/cc/BasicCC.js +0 -393
  607. package/build/cc/BasicCC.js.map +0 -1
  608. package/build/cc/BatteryCC.d.ts +0 -406
  609. package/build/cc/BatteryCC.d.ts.map +0 -1
  610. package/build/cc/BatteryCC.js +0 -516
  611. package/build/cc/BatteryCC.js.map +0 -1
  612. package/build/cc/BinarySensorCC.d.ts +0 -122
  613. package/build/cc/BinarySensorCC.d.ts.map +0 -1
  614. package/build/cc/BinarySensorCC.js +0 -420
  615. package/build/cc/BinarySensorCC.js.map +0 -1
  616. package/build/cc/BinarySwitchCC.d.ts +0 -139
  617. package/build/cc/BinarySwitchCC.d.ts.map +0 -1
  618. package/build/cc/BinarySwitchCC.js +0 -365
  619. package/build/cc/BinarySwitchCC.js.map +0 -1
  620. package/build/cc/CRC16CC.d.ts +0 -29
  621. package/build/cc/CRC16CC.d.ts.map +0 -1
  622. package/build/cc/CRC16CC.js +0 -126
  623. package/build/cc/CRC16CC.js.map +0 -1
  624. package/build/cc/CentralSceneCC.d.ts +0 -210
  625. package/build/cc/CentralSceneCC.d.ts.map +0 -1
  626. package/build/cc/CentralSceneCC.js +0 -453
  627. package/build/cc/CentralSceneCC.js.map +0 -1
  628. package/build/cc/ClimateControlScheduleCC.d.ts +0 -177
  629. package/build/cc/ClimateControlScheduleCC.d.ts.map +0 -1
  630. package/build/cc/ClimateControlScheduleCC.js +0 -469
  631. package/build/cc/ClimateControlScheduleCC.js.map +0 -1
  632. package/build/cc/ClockCC.d.ts +0 -47
  633. package/build/cc/ClockCC.d.ts.map +0 -1
  634. package/build/cc/ClockCC.js +0 -208
  635. package/build/cc/ClockCC.js.map +0 -1
  636. package/build/cc/ColorSwitchCC.d.ts +0 -339
  637. package/build/cc/ColorSwitchCC.d.ts.map +0 -1
  638. package/build/cc/ColorSwitchCC.js +0 -1152
  639. package/build/cc/ColorSwitchCC.js.map +0 -1
  640. package/build/cc/ConfigurationCC.d.ts +0 -396
  641. package/build/cc/ConfigurationCC.d.ts.map +0 -1
  642. package/build/cc/ConfigurationCC.js +0 -2458
  643. package/build/cc/ConfigurationCC.js.map +0 -1
  644. package/build/cc/DeviceResetLocallyCC.d.ts +0 -17
  645. package/build/cc/DeviceResetLocallyCC.d.ts.map +0 -1
  646. package/build/cc/DeviceResetLocallyCC.js +0 -76
  647. package/build/cc/DeviceResetLocallyCC.js.map +0 -1
  648. package/build/cc/DoorLockCC.d.ts +0 -837
  649. package/build/cc/DoorLockCC.d.ts.map +0 -1
  650. package/build/cc/DoorLockCC.js +0 -1273
  651. package/build/cc/DoorLockCC.js.map +0 -1
  652. package/build/cc/DoorLockLoggingCC.d.ts +0 -77
  653. package/build/cc/DoorLockLoggingCC.d.ts.map +0 -1
  654. package/build/cc/DoorLockLoggingCC.js +0 -319
  655. package/build/cc/DoorLockLoggingCC.js.map +0 -1
  656. package/build/cc/EnergyProductionCC.d.ts +0 -77
  657. package/build/cc/EnergyProductionCC.d.ts.map +0 -1
  658. package/build/cc/EnergyProductionCC.js +0 -216
  659. package/build/cc/EnergyProductionCC.js.map +0 -1
  660. package/build/cc/EntryControlCC.d.ts +0 -231
  661. package/build/cc/EntryControlCC.d.ts.map +0 -1
  662. package/build/cc/EntryControlCC.js +0 -607
  663. package/build/cc/EntryControlCC.js.map +0 -1
  664. package/build/cc/FirmwareUpdateMetaDataCC.d.ts +0 -359
  665. package/build/cc/FirmwareUpdateMetaDataCC.d.ts.map +0 -1
  666. package/build/cc/FirmwareUpdateMetaDataCC.js +0 -1145
  667. package/build/cc/FirmwareUpdateMetaDataCC.js.map +0 -1
  668. package/build/cc/HailCC.d.ts +0 -6
  669. package/build/cc/HailCC.d.ts.map +0 -1
  670. package/build/cc/HailCC.js +0 -24
  671. package/build/cc/HailCC.js.map +0 -1
  672. package/build/cc/HumidityControlModeCC.d.ts +0 -111
  673. package/build/cc/HumidityControlModeCC.d.ts.map +0 -1
  674. package/build/cc/HumidityControlModeCC.js +0 -308
  675. package/build/cc/HumidityControlModeCC.js.map +0 -1
  676. package/build/cc/HumidityControlOperatingStateCC.d.ts +0 -60
  677. package/build/cc/HumidityControlOperatingStateCC.d.ts.map +0 -1
  678. package/build/cc/HumidityControlOperatingStateCC.js +0 -140
  679. package/build/cc/HumidityControlOperatingStateCC.js.map +0 -1
  680. package/build/cc/HumidityControlSetpointCC.d.ts +0 -209
  681. package/build/cc/HumidityControlSetpointCC.d.ts.map +0 -1
  682. package/build/cc/HumidityControlSetpointCC.js +0 -648
  683. package/build/cc/HumidityControlSetpointCC.js.map +0 -1
  684. package/build/cc/InclusionControllerCC.d.ts +0 -42
  685. package/build/cc/InclusionControllerCC.d.ts.map +0 -1
  686. package/build/cc/InclusionControllerCC.js +0 -136
  687. package/build/cc/InclusionControllerCC.js.map +0 -1
  688. package/build/cc/IndicatorCC.d.ts +0 -338
  689. package/build/cc/IndicatorCC.d.ts.map +0 -1
  690. package/build/cc/IndicatorCC.js +0 -1320
  691. package/build/cc/IndicatorCC.js.map +0 -1
  692. package/build/cc/IrrigationCC.d.ts +0 -1496
  693. package/build/cc/IrrigationCC.d.ts.map +0 -1
  694. package/build/cc/IrrigationCC.js +0 -2041
  695. package/build/cc/IrrigationCC.js.map +0 -1
  696. package/build/cc/LanguageCC.d.ts +0 -101
  697. package/build/cc/LanguageCC.d.ts.map +0 -1
  698. package/build/cc/LanguageCC.js +0 -246
  699. package/build/cc/LanguageCC.js.map +0 -1
  700. package/build/cc/LockCC.d.ts +0 -73
  701. package/build/cc/LockCC.d.ts.map +0 -1
  702. package/build/cc/LockCC.js +0 -200
  703. package/build/cc/LockCC.js.map +0 -1
  704. package/build/cc/ManufacturerProprietaryCC.d.ts +0 -32
  705. package/build/cc/ManufacturerProprietaryCC.d.ts.map +0 -1
  706. package/build/cc/ManufacturerProprietaryCC.js +0 -204
  707. package/build/cc/ManufacturerProprietaryCC.js.map +0 -1
  708. package/build/cc/ManufacturerSpecificCC.d.ts +0 -171
  709. package/build/cc/ManufacturerSpecificCC.d.ts.map +0 -1
  710. package/build/cc/ManufacturerSpecificCC.js +0 -318
  711. package/build/cc/ManufacturerSpecificCC.js.map +0 -1
  712. package/build/cc/MeterCC.d.ts +0 -318
  713. package/build/cc/MeterCC.d.ts.map +0 -1
  714. package/build/cc/MeterCC.js +0 -1312
  715. package/build/cc/MeterCC.js.map +0 -1
  716. package/build/cc/MultiChannelAssociationCC.d.ts +0 -241
  717. package/build/cc/MultiChannelAssociationCC.d.ts.map +0 -1
  718. package/build/cc/MultiChannelAssociationCC.js +0 -1007
  719. package/build/cc/MultiChannelAssociationCC.js.map +0 -1
  720. package/build/cc/MultiChannelCC.d.ts +0 -394
  721. package/build/cc/MultiChannelCC.d.ts.map +0 -1
  722. package/build/cc/MultiChannelCC.js +0 -1130
  723. package/build/cc/MultiChannelCC.js.map +0 -1
  724. package/build/cc/MultiCommandCC.d.ts +0 -27
  725. package/build/cc/MultiCommandCC.d.ts.map +0 -1
  726. package/build/cc/MultiCommandCC.js +0 -145
  727. package/build/cc/MultiCommandCC.js.map +0 -1
  728. package/build/cc/MultilevelSensorCC.d.ts +0 -185
  729. package/build/cc/MultilevelSensorCC.d.ts.map +0 -1
  730. package/build/cc/MultilevelSensorCC.js +0 -756
  731. package/build/cc/MultilevelSensorCC.js.map +0 -1
  732. package/build/cc/MultilevelSwitchCC.d.ts +0 -357
  733. package/build/cc/MultilevelSwitchCC.d.ts.map +0 -1
  734. package/build/cc/MultilevelSwitchCC.js +0 -813
  735. package/build/cc/MultilevelSwitchCC.js.map +0 -1
  736. package/build/cc/NoOperationCC.d.ts +0 -9
  737. package/build/cc/NoOperationCC.d.ts.map +0 -1
  738. package/build/cc/NoOperationCC.js +0 -42
  739. package/build/cc/NoOperationCC.js.map +0 -1
  740. package/build/cc/NodeNamingCC.d.ts +0 -118
  741. package/build/cc/NodeNamingCC.d.ts.map +0 -1
  742. package/build/cc/NodeNamingCC.js +0 -348
  743. package/build/cc/NodeNamingCC.js.map +0 -1
  744. package/build/cc/NotificationCC.d.ts +0 -479
  745. package/build/cc/NotificationCC.d.ts.map +0 -1
  746. package/build/cc/NotificationCC.js +0 -1379
  747. package/build/cc/NotificationCC.js.map +0 -1
  748. package/build/cc/PowerlevelCC.d.ts +0 -82
  749. package/build/cc/PowerlevelCC.d.ts.map +0 -1
  750. package/build/cc/PowerlevelCC.js +0 -488
  751. package/build/cc/PowerlevelCC.js.map +0 -1
  752. package/build/cc/ProtectionCC.d.ts +0 -325
  753. package/build/cc/ProtectionCC.d.ts.map +0 -1
  754. package/build/cc/ProtectionCC.js +0 -672
  755. package/build/cc/ProtectionCC.js.map +0 -1
  756. package/build/cc/SceneActivationCC.d.ts +0 -89
  757. package/build/cc/SceneActivationCC.d.ts.map +0 -1
  758. package/build/cc/SceneActivationCC.js +0 -169
  759. package/build/cc/SceneActivationCC.js.map +0 -1
  760. package/build/cc/SceneActuatorConfigurationCC.d.ts +0 -120
  761. package/build/cc/SceneActuatorConfigurationCC.d.ts.map +0 -1
  762. package/build/cc/SceneActuatorConfigurationCC.js +0 -377
  763. package/build/cc/SceneActuatorConfigurationCC.js.map +0 -1
  764. package/build/cc/SceneControllerConfigurationCC.d.ts +0 -129
  765. package/build/cc/SceneControllerConfigurationCC.d.ts.map +0 -1
  766. package/build/cc/SceneControllerConfigurationCC.js +0 -449
  767. package/build/cc/SceneControllerConfigurationCC.js.map +0 -1
  768. package/build/cc/ScheduleEntryLockCC.d.ts +0 -434
  769. package/build/cc/ScheduleEntryLockCC.d.ts.map +0 -1
  770. package/build/cc/ScheduleEntryLockCC.js +0 -1829
  771. package/build/cc/ScheduleEntryLockCC.js.map +0 -1
  772. package/build/cc/Security2CC.d.ts +0 -251
  773. package/build/cc/Security2CC.d.ts.map +0 -1
  774. package/build/cc/Security2CC.js +0 -1817
  775. package/build/cc/Security2CC.js.map +0 -1
  776. package/build/cc/SecurityCC.d.ts +0 -128
  777. package/build/cc/SecurityCC.d.ts.map +0 -1
  778. package/build/cc/SecurityCC.js +0 -803
  779. package/build/cc/SecurityCC.js.map +0 -1
  780. package/build/cc/SoundSwitchCC.d.ts +0 -232
  781. package/build/cc/SoundSwitchCC.d.ts.map +0 -1
  782. package/build/cc/SoundSwitchCC.js +0 -636
  783. package/build/cc/SoundSwitchCC.js.map +0 -1
  784. package/build/cc/SupervisionCC.d.ts +0 -104
  785. package/build/cc/SupervisionCC.d.ts.map +0 -1
  786. package/build/cc/SupervisionCC.js +0 -322
  787. package/build/cc/SupervisionCC.js.map +0 -1
  788. package/build/cc/ThermostatFanModeCC.d.ts +0 -141
  789. package/build/cc/ThermostatFanModeCC.d.ts.map +0 -1
  790. package/build/cc/ThermostatFanModeCC.js +0 -362
  791. package/build/cc/ThermostatFanModeCC.js.map +0 -1
  792. package/build/cc/ThermostatFanStateCC.d.ts +0 -60
  793. package/build/cc/ThermostatFanStateCC.d.ts.map +0 -1
  794. package/build/cc/ThermostatFanStateCC.js +0 -142
  795. package/build/cc/ThermostatFanStateCC.js.map +0 -1
  796. package/build/cc/ThermostatModeCC.d.ts +0 -150
  797. package/build/cc/ThermostatModeCC.d.ts.map +0 -1
  798. package/build/cc/ThermostatModeCC.js +0 -429
  799. package/build/cc/ThermostatModeCC.js.map +0 -1
  800. package/build/cc/ThermostatOperatingStateCC.d.ts +0 -61
  801. package/build/cc/ThermostatOperatingStateCC.d.ts.map +0 -1
  802. package/build/cc/ThermostatOperatingStateCC.js +0 -138
  803. package/build/cc/ThermostatOperatingStateCC.js.map +0 -1
  804. package/build/cc/ThermostatSetbackCC.d.ts +0 -46
  805. package/build/cc/ThermostatSetbackCC.d.ts.map +0 -1
  806. package/build/cc/ThermostatSetbackCC.js +0 -247
  807. package/build/cc/ThermostatSetbackCC.js.map +0 -1
  808. package/build/cc/ThermostatSetpointCC.d.ts +0 -197
  809. package/build/cc/ThermostatSetpointCC.d.ts.map +0 -1
  810. package/build/cc/ThermostatSetpointCC.js +0 -658
  811. package/build/cc/ThermostatSetpointCC.js.map +0 -1
  812. package/build/cc/TimeCC.d.ts +0 -88
  813. package/build/cc/TimeCC.d.ts.map +0 -1
  814. package/build/cc/TimeCC.js +0 -454
  815. package/build/cc/TimeCC.js.map +0 -1
  816. package/build/cc/TimeParametersCC.d.ts +0 -72
  817. package/build/cc/TimeParametersCC.d.ts.map +0 -1
  818. package/build/cc/TimeParametersCC.js +0 -303
  819. package/build/cc/TimeParametersCC.js.map +0 -1
  820. package/build/cc/TransportServiceCC.d.ts +0 -107
  821. package/build/cc/TransportServiceCC.d.ts.map +0 -1
  822. package/build/cc/TransportServiceCC.js +0 -426
  823. package/build/cc/TransportServiceCC.js.map +0 -1
  824. package/build/cc/UserCodeCC.d.ts +0 -683
  825. package/build/cc/UserCodeCC.d.ts.map +0 -1
  826. package/build/cc/UserCodeCC.js +0 -1699
  827. package/build/cc/UserCodeCC.js.map +0 -1
  828. package/build/cc/VersionCC.d.ts +0 -469
  829. package/build/cc/VersionCC.d.ts.map +0 -1
  830. package/build/cc/VersionCC.js +0 -865
  831. package/build/cc/VersionCC.js.map +0 -1
  832. package/build/cc/WakeUpCC.d.ts +0 -150
  833. package/build/cc/WakeUpCC.d.ts.map +0 -1
  834. package/build/cc/WakeUpCC.js +0 -441
  835. package/build/cc/WakeUpCC.js.map +0 -1
  836. package/build/cc/WindowCoveringCC.d.ts +0 -315
  837. package/build/cc/WindowCoveringCC.d.ts.map +0 -1
  838. package/build/cc/WindowCoveringCC.js +0 -783
  839. package/build/cc/WindowCoveringCC.js.map +0 -1
  840. package/build/cc/ZWaveLongRangeCC.d.ts +0 -4
  841. package/build/cc/ZWaveLongRangeCC.d.ts.map +0 -1
  842. package/build/cc/ZWaveLongRangeCC.js +0 -20
  843. package/build/cc/ZWaveLongRangeCC.js.map +0 -1
  844. package/build/cc/ZWavePlusCC.d.ts +0 -163
  845. package/build/cc/ZWavePlusCC.d.ts.map +0 -1
  846. package/build/cc/ZWavePlusCC.js +0 -270
  847. package/build/cc/ZWavePlusCC.js.map +0 -1
  848. package/build/cc/ZWaveProtocolCC.d.ts +0 -344
  849. package/build/cc/ZWaveProtocolCC.d.ts.map +0 -1
  850. package/build/cc/ZWaveProtocolCC.js +0 -1033
  851. package/build/cc/ZWaveProtocolCC.js.map +0 -1
  852. package/build/cc/index.d.ts +0 -132
  853. package/build/cc/index.d.ts.map +0 -1
  854. package/build/cc/index.js +0 -627
  855. package/build/cc/index.js.map +0 -1
  856. package/build/cc/manufacturerProprietary/Decorators.d.ts +0 -64
  857. package/build/cc/manufacturerProprietary/Decorators.d.ts.map +0 -1
  858. package/build/cc/manufacturerProprietary/Decorators.js +0 -83
  859. package/build/cc/manufacturerProprietary/Decorators.js.map +0 -1
  860. package/build/cc/manufacturerProprietary/FibaroCC.d.ts +0 -79
  861. package/build/cc/manufacturerProprietary/FibaroCC.d.ts.map +0 -1
  862. package/build/cc/manufacturerProprietary/FibaroCC.js +0 -392
  863. package/build/cc/manufacturerProprietary/FibaroCC.js.map +0 -1
  864. package/build/index.d.ts +0 -15
  865. package/build/index.d.ts.map +0 -1
  866. package/build/index.js +0 -52
  867. package/build/index.js.map +0 -1
  868. package/build/index_safe.d.ts +0 -3
  869. package/build/index_safe.d.ts.map +0 -1
  870. package/build/index_safe.js +0 -20
  871. package/build/index_safe.js.map +0 -1
  872. package/build/lib/API.d.ts +0 -271
  873. package/build/lib/API.d.ts.map +0 -1
  874. package/build/lib/API.js +0 -458
  875. package/build/lib/API.js.map +0 -1
  876. package/build/lib/CommandClass.d.ts +0 -234
  877. package/build/lib/CommandClass.d.ts.map +0 -1
  878. package/build/lib/CommandClass.js +0 -788
  879. package/build/lib/CommandClass.js.map +0 -1
  880. package/build/lib/CommandClassDecorators.d.ts +0 -112
  881. package/build/lib/CommandClassDecorators.d.ts.map +0 -1
  882. package/build/lib/CommandClassDecorators.js +0 -243
  883. package/build/lib/CommandClassDecorators.js.map +0 -1
  884. package/build/lib/EncapsulatingCommandClass.d.ts +0 -22
  885. package/build/lib/EncapsulatingCommandClass.d.ts.map +0 -1
  886. package/build/lib/EncapsulatingCommandClass.js +0 -61
  887. package/build/lib/EncapsulatingCommandClass.js.map +0 -1
  888. package/build/lib/ICommandClassContainer.d.ts.map +0 -1
  889. package/build/lib/ICommandClassContainer.js +0 -3
  890. package/build/lib/ICommandClassContainer.js.map +0 -1
  891. package/build/lib/NotificationEventPayload.d.ts +0 -10
  892. package/build/lib/NotificationEventPayload.d.ts.map +0 -1
  893. package/build/lib/NotificationEventPayload.js +0 -10
  894. package/build/lib/NotificationEventPayload.js.map +0 -1
  895. package/build/lib/Security2/Extension.d.ts +0 -106
  896. package/build/lib/Security2/Extension.d.ts.map +0 -1
  897. package/build/lib/Security2/Extension.js +0 -303
  898. package/build/lib/Security2/Extension.js.map +0 -1
  899. package/build/lib/Security2/shared.d.ts.map +0 -1
  900. package/build/lib/Security2/shared.js +0 -43
  901. package/build/lib/Security2/shared.js.map +0 -1
  902. package/build/lib/SetValueResult.d.ts.map +0 -1
  903. package/build/lib/SetValueResult.js +0 -60
  904. package/build/lib/SetValueResult.js.map +0 -1
  905. package/build/lib/Values.d.ts +0 -223
  906. package/build/lib/Values.d.ts.map +0 -1
  907. package/build/lib/Values.js +0 -172
  908. package/build/lib/Values.js.map +0 -1
  909. package/build/lib/_Types.d.ts.map +0 -1
  910. package/build/lib/_Types.js +0 -1443
  911. package/build/lib/_Types.js.map +0 -1
  912. package/build/lib/serializers.d.ts +0 -34
  913. package/build/lib/serializers.d.ts.map +0 -1
  914. package/build/lib/serializers.js +0 -107
  915. package/build/lib/serializers.js.map +0 -1
  916. package/build/lib/utils.d.ts +0 -17
  917. package/build/lib/utils.d.ts.map +0 -1
  918. package/build/lib/utils.js +0 -860
  919. package/build/lib/utils.js.map +0 -1
  920. /package/build/{lib → cjs/lib}/ICommandClassContainer.d.ts +0 -0
  921. /package/build/{lib → cjs/lib}/Security2/shared.d.ts +0 -0
  922. /package/build/{lib → cjs/lib}/SetValueResult.d.ts +0 -0
  923. /package/build/{lib → cjs/lib}/_Types.d.ts +0 -0
@@ -0,0 +1,678 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var utils_exports = {};
20
+ __export(utils_exports, {
21
+ addAssociations: () => addAssociations,
22
+ assignLifelineIssueingCommand: () => assignLifelineIssueingCommand,
23
+ checkAssociation: () => checkAssociation,
24
+ configureLifelineAssociations: () => configureLifelineAssociations,
25
+ doesAnyLifelineSendActuatorOrSensorReports: () => doesAnyLifelineSendActuatorOrSensorReports,
26
+ getAllAssociationGroups: () => getAllAssociationGroups,
27
+ getAllAssociations: () => getAllAssociations,
28
+ getAssociationGroups: () => getAssociationGroups,
29
+ getAssociations: () => getAssociations,
30
+ getLifelineGroupIds: () => getLifelineGroupIds,
31
+ removeAssociations: () => removeAssociations
32
+ });
33
+ module.exports = __toCommonJS(utils_exports);
34
+ var import_safe = require("@zwave-js/core/safe");
35
+ var import_safe2 = require("@zwave-js/shared/safe");
36
+ var import_arrays = require("alcalzone-shared/arrays/index.js");
37
+ var import_AssociationCC = require("../cc/AssociationCC.js");
38
+ var import_AssociationGroupInfoCC = require("../cc/AssociationGroupInfoCC.js");
39
+ var import_MultiChannelAssociationCC = require("../cc/MultiChannelAssociationCC.js");
40
+ var import_API = require("./API.js");
41
+ var import_Types = require("./_Types.js");
42
+ function getAssociations(ctx, endpoint) {
43
+ const ret = /* @__PURE__ */ new Map();
44
+ if (endpoint.supportsCC(import_safe.CommandClasses.Association)) {
45
+ const destinations = import_AssociationCC.AssociationCC.getAllDestinationsCached(ctx, endpoint);
46
+ for (const [groupId, assocs] of destinations) {
47
+ ret.set(groupId, assocs);
48
+ }
49
+ } else {
50
+ throw new import_safe.ZWaveError(`Node ${endpoint.nodeId}${endpoint.index > 0 ? `, endpoint ${endpoint.index}` : ""} does not support associations!`, import_safe.ZWaveErrorCodes.CC_NotSupported);
51
+ }
52
+ if (endpoint.supportsCC(import_safe.CommandClasses["Multi Channel Association"])) {
53
+ const destinations = import_MultiChannelAssociationCC.MultiChannelAssociationCC.getAllDestinationsCached(ctx, endpoint);
54
+ for (const [groupId, assocs] of destinations) {
55
+ if (ret.has(groupId)) {
56
+ const normalAssociations = ret.get(groupId);
57
+ ret.set(groupId, [
58
+ ...normalAssociations,
59
+ // Eliminate potential duplicates
60
+ ...assocs.filter((a1) => !normalAssociations.some((a2) => a1.nodeId === a2.nodeId && a1.endpoint === a2.endpoint))
61
+ ]);
62
+ } else {
63
+ ret.set(groupId, assocs);
64
+ }
65
+ }
66
+ }
67
+ return ret;
68
+ }
69
+ function getAllAssociations(ctx, node) {
70
+ const ret = new import_safe2.ObjectKeyMap();
71
+ for (const endpoint of node.getAllEndpoints()) {
72
+ const address = {
73
+ nodeId: node.id,
74
+ endpoint: endpoint.index
75
+ };
76
+ if (endpoint.supportsCC(import_safe.CommandClasses.Association)) {
77
+ ret.set(address, getAssociations(ctx, endpoint));
78
+ }
79
+ }
80
+ return ret;
81
+ }
82
+ function checkAssociation(ctx, endpoint, group, destination) {
83
+ const targetNode = ctx.getNodeOrThrow(destination.nodeId);
84
+ const targetEndpoint = destination.nodeId === ctx.ownNodeId ? targetNode : targetNode.getEndpointOrThrow(destination.endpoint ?? 0);
85
+ if (!endpoint.supportsCC(import_safe.CommandClasses.Association) && !endpoint.supportsCC(import_safe.CommandClasses["Multi Channel Association"])) {
86
+ throw new import_safe.ZWaveError(`Node ${endpoint.nodeId}${endpoint.index > 0 ? `, endpoint ${endpoint.index}` : ""} does not support associations!`, import_safe.ZWaveErrorCodes.CC_NotSupported);
87
+ }
88
+ if ((0, import_safe.isLongRangeNodeId)(destination.nodeId)) {
89
+ return import_Types.AssociationCheckResult.Forbidden_DestinationIsLongRange;
90
+ } else if ((0, import_safe.isLongRangeNodeId)(endpoint.nodeId)) {
91
+ if (group !== 1 || destination.nodeId !== ctx.ownNodeId) {
92
+ return import_Types.AssociationCheckResult.Forbidden_SourceIsLongRange;
93
+ }
94
+ }
95
+ if (destination.nodeId === ctx.ownNodeId) {
96
+ return import_Types.AssociationCheckResult.OK;
97
+ }
98
+ if (destination.nodeId === endpoint.nodeId) {
99
+ return import_Types.AssociationCheckResult.Forbidden_SelfAssociation;
100
+ }
101
+ const sourceNode = ctx.getNode(endpoint.nodeId);
102
+ let securityClassMustMatch;
103
+ if (destination.endpoint == void 0) {
104
+ const sourceNodeCCVersion = endpoint.getCCVersion(import_safe.CommandClasses.Association);
105
+ securityClassMustMatch = sourceNodeCCVersion < 3;
106
+ } else {
107
+ const sourceNodeCCVersion = endpoint.getCCVersion(import_safe.CommandClasses["Multi Channel Association"]);
108
+ securityClassMustMatch = sourceNodeCCVersion < 4;
109
+ }
110
+ const sourceSecurityClass = sourceNode.getHighestSecurityClass();
111
+ const targetSecurityClass = targetNode.getHighestSecurityClass();
112
+ if (sourceSecurityClass != void 0 && targetSecurityClass != void 0) {
113
+ if (securityClassMustMatch && sourceSecurityClass !== targetSecurityClass) {
114
+ return import_Types.AssociationCheckResult.Forbidden_SecurityClassMismatch;
115
+ } else if (
116
+ // Commands to insecure nodes are allowed
117
+ targetSecurityClass !== import_safe.SecurityClass.None && !securityClassMustMatch && !sourceNode.hasSecurityClass(targetSecurityClass)
118
+ ) {
119
+ return import_Types.AssociationCheckResult.Forbidden_DestinationSecurityClassNotGranted;
120
+ }
121
+ }
122
+ if (!endpoint.supportsCC(import_safe.CommandClasses["Association Group Information"])) {
123
+ return import_Types.AssociationCheckResult.OK;
124
+ }
125
+ const groupCommandList = import_AssociationGroupInfoCC.AssociationGroupInfoCC.getIssuedCommandsCached(ctx, endpoint, group);
126
+ if (!groupCommandList || !groupCommandList.size) {
127
+ return import_Types.AssociationCheckResult.OK;
128
+ }
129
+ const groupCCs = [...groupCommandList.keys()];
130
+ if (groupCCs.includes(import_safe.CommandClasses.Basic) && import_safe.actuatorCCs.some((cc) => targetEndpoint?.supportsCC(cc))) {
131
+ return import_Types.AssociationCheckResult.OK;
132
+ }
133
+ if (groupCCs.some((cc) => targetEndpoint?.supportsCC(cc))) {
134
+ return import_Types.AssociationCheckResult.OK;
135
+ } else {
136
+ return import_Types.AssociationCheckResult.Forbidden_NoSupportedCCs;
137
+ }
138
+ }
139
+ function getAssociationGroups(ctx, endpoint) {
140
+ let assocInstance;
141
+ let mcInstance;
142
+ if (endpoint.supportsCC(import_safe.CommandClasses.Association)) {
143
+ assocInstance = import_AssociationCC.AssociationCC;
144
+ } else {
145
+ throw new import_safe.ZWaveError(`Node ${endpoint.nodeId}${endpoint.index > 0 ? `, endpoint ${endpoint.index}` : ""} does not support associations!`, import_safe.ZWaveErrorCodes.CC_NotSupported);
146
+ }
147
+ if (endpoint.supportsCC(import_safe.CommandClasses["Multi Channel Association"])) {
148
+ mcInstance = import_MultiChannelAssociationCC.MultiChannelAssociationCC;
149
+ }
150
+ const assocGroupCount = assocInstance.getGroupCountCached(ctx, endpoint) ?? 0;
151
+ const mcGroupCount = mcInstance?.getGroupCountCached(ctx, endpoint) ?? 0;
152
+ const groupCount = Math.max(assocGroupCount, mcGroupCount);
153
+ const deviceConfig = ctx.getDeviceConfig?.(endpoint.nodeId);
154
+ const ret = /* @__PURE__ */ new Map();
155
+ if (endpoint.supportsCC(import_safe.CommandClasses["Association Group Information"])) {
156
+ const agiInstance = import_AssociationGroupInfoCC.AssociationGroupInfoCC;
157
+ for (let group = 1; group <= groupCount; group++) {
158
+ const assocConfig = deviceConfig?.getAssociationConfigForEndpoint(endpoint.index, group);
159
+ const multiChannel = !!mcInstance && group <= mcGroupCount;
160
+ ret.set(group, {
161
+ maxNodes: (multiChannel ? mcInstance : assocInstance).getMaxNodesCached(ctx, endpoint, group) || 1,
162
+ // AGI implies Z-Wave+ where group 1 is the lifeline
163
+ isLifeline: group === 1,
164
+ label: (
165
+ // prefer the configured label if we have one
166
+ assocConfig?.label ?? agiInstance.getGroupNameCached(ctx, endpoint, group) ?? `Unnamed group ${group}`
167
+ ),
168
+ multiChannel,
169
+ profile: agiInstance.getGroupProfileCached(ctx, endpoint, group),
170
+ issuedCommands: agiInstance.getIssuedCommandsCached(ctx, endpoint, group)
171
+ });
172
+ }
173
+ } else {
174
+ for (let group = 1; group <= groupCount; group++) {
175
+ const assocConfig = deviceConfig?.getAssociationConfigForEndpoint(endpoint.index, group);
176
+ const multiChannel = !!mcInstance && group <= mcGroupCount;
177
+ ret.set(group, {
178
+ maxNodes: (multiChannel ? mcInstance : assocInstance).getMaxNodesCached(ctx, endpoint, group) || assocConfig?.maxNodes || 1,
179
+ isLifeline: assocConfig?.isLifeline ?? group === 1,
180
+ label: assocConfig?.label ?? `Unnamed group ${group}`,
181
+ multiChannel
182
+ });
183
+ }
184
+ }
185
+ return ret;
186
+ }
187
+ function getAllAssociationGroups(ctx, node) {
188
+ const ret = /* @__PURE__ */ new Map();
189
+ for (const endpoint of node.getAllEndpoints()) {
190
+ if (endpoint.supportsCC(import_safe.CommandClasses.Association)) {
191
+ ret.set(endpoint.index, getAssociationGroups(ctx, endpoint));
192
+ }
193
+ }
194
+ return ret;
195
+ }
196
+ async function addAssociations(ctx, endpoint, group, destinations) {
197
+ const nodeAndEndpointString = `${endpoint.nodeId}${endpoint.index > 0 ? `, endpoint ${endpoint.index}` : ""}`;
198
+ let assocInstance;
199
+ let mcInstance;
200
+ const nodeAssociations = (0, import_arrays.distinct)(destinations.filter((a) => a.endpoint == void 0).map((a) => a.nodeId));
201
+ const endpointAssociations = destinations.filter((a) => a.endpoint != void 0);
202
+ if (endpoint.supportsCC(import_safe.CommandClasses.Association)) {
203
+ assocInstance = import_AssociationCC.AssociationCC;
204
+ } else if (nodeAssociations.length > 0) {
205
+ throw new import_safe.ZWaveError(`Node ${nodeAndEndpointString} does not support associations!`, import_safe.ZWaveErrorCodes.CC_NotSupported);
206
+ }
207
+ if (endpoint.supportsCC(import_safe.CommandClasses["Multi Channel Association"])) {
208
+ mcInstance = import_MultiChannelAssociationCC.MultiChannelAssociationCC;
209
+ } else if (endpointAssociations.length > 0) {
210
+ throw new import_safe.ZWaveError(`Node ${nodeAndEndpointString} does not support multi channel associations!`, import_safe.ZWaveErrorCodes.CC_NotSupported);
211
+ }
212
+ const selfAssociations = destinations.filter((d) => d.nodeId === endpoint.nodeId);
213
+ if (selfAssociations.length > 0) {
214
+ throw new import_safe.ZWaveError(`Associating a node with itself is not allowed!`, import_safe.ZWaveErrorCodes.AssociationCC_NotAllowed, selfAssociations.map((a) => ({
215
+ ...a,
216
+ checkResult: import_Types.AssociationCheckResult.Forbidden_SelfAssociation
217
+ })));
218
+ }
219
+ const assocGroupCount = assocInstance?.getGroupCountCached(ctx, endpoint) ?? 0;
220
+ const mcGroupCount = mcInstance?.getGroupCountCached(ctx, endpoint) ?? 0;
221
+ const groupCount = Math.max(assocGroupCount, mcGroupCount);
222
+ if (group > groupCount) {
223
+ throw new import_safe.ZWaveError(`Group ${group} does not exist on node ${nodeAndEndpointString}`, import_safe.ZWaveErrorCodes.AssociationCC_InvalidGroup);
224
+ }
225
+ const deviceConfig = ctx.getDeviceConfig?.(endpoint.nodeId);
226
+ const groupIsMultiChannel = !!mcInstance && group <= mcGroupCount && deviceConfig?.associations?.get(group)?.multiChannel !== false;
227
+ if (groupIsMultiChannel) {
228
+ const disallowedAssociations = destinations.map((a) => ({
229
+ ...a,
230
+ checkResult: checkAssociation(ctx, endpoint, group, a)
231
+ })).filter(({ checkResult }) => checkResult !== import_Types.AssociationCheckResult.OK);
232
+ if (disallowedAssociations.length) {
233
+ let message = `The following associations are not allowed:`;
234
+ message += disallowedAssociations.map((a) => `
235
+ \xB7 Node ${a.nodeId}${a.endpoint ? `, endpoint ${a.endpoint}` : ""}: ${(0, import_safe2.getEnumMemberName)(import_Types.AssociationCheckResult, a.checkResult).replace("Forbidden_", "")}`).join("");
236
+ throw new import_safe.ZWaveError(message, import_safe.ZWaveErrorCodes.AssociationCC_NotAllowed, disallowedAssociations);
237
+ }
238
+ const api = import_API.CCAPI.create(import_safe.CommandClasses["Multi Channel Association"], ctx, endpoint);
239
+ await api.addDestinations({
240
+ groupId: group,
241
+ nodeIds: nodeAssociations,
242
+ endpoints: endpointAssociations
243
+ });
244
+ await api.getGroup(group);
245
+ } else {
246
+ if (destinations.some((a) => a.endpoint != void 0)) {
247
+ throw new import_safe.ZWaveError(`Node ${nodeAndEndpointString}, group ${group} does not support multi channel associations!`, import_safe.ZWaveErrorCodes.CC_NotSupported);
248
+ }
249
+ const disallowedAssociations = destinations.map((a) => ({
250
+ ...a,
251
+ checkResult: checkAssociation(ctx, endpoint, group, a)
252
+ })).filter(({ checkResult }) => checkResult !== import_Types.AssociationCheckResult.OK);
253
+ if (disallowedAssociations.length) {
254
+ let message = `The associations to the following nodes are not allowed`;
255
+ message += disallowedAssociations.map((a) => `
256
+ \xB7 Node ${a.nodeId}: ${(0, import_safe2.getEnumMemberName)(import_Types.AssociationCheckResult, a.checkResult).replace("Forbidden_", "")}`).join("");
257
+ throw new import_safe.ZWaveError(message, import_safe.ZWaveErrorCodes.AssociationCC_NotAllowed, disallowedAssociations);
258
+ }
259
+ const api = import_API.CCAPI.create(import_safe.CommandClasses.Association, ctx, endpoint);
260
+ await api.addNodeIds(group, ...destinations.map((a) => a.nodeId));
261
+ await api.getGroup(group);
262
+ }
263
+ }
264
+ async function removeAssociations(ctx, endpoint, group, destinations) {
265
+ const nodeAndEndpointString = `${endpoint.nodeId}${endpoint.index > 0 ? `, endpoint ${endpoint.index}` : ""}`;
266
+ const nodeAssociations = (0, import_arrays.distinct)(destinations.filter((a) => a.endpoint == void 0).map((a) => a.nodeId));
267
+ const endpointAssociations = destinations.filter((a) => a.endpoint != void 0);
268
+ let groupExistsAsMultiChannel = false;
269
+ let groupExistsAsNodeAssociation = false;
270
+ let mcInstance;
271
+ let assocInstance;
272
+ if (endpoint.supportsCC(import_safe.CommandClasses["Multi Channel Association"])) {
273
+ mcInstance = import_MultiChannelAssociationCC.MultiChannelAssociationCC;
274
+ if (group <= mcInstance.getGroupCountCached(ctx, endpoint)) {
275
+ groupExistsAsMultiChannel = true;
276
+ }
277
+ } else if (endpointAssociations.length > 0) {
278
+ throw new import_safe.ZWaveError(`Node ${nodeAndEndpointString} does not support multi channel associations!`, import_safe.ZWaveErrorCodes.CC_NotSupported);
279
+ }
280
+ if (endpoint.supportsCC(import_safe.CommandClasses.Association)) {
281
+ assocInstance = import_AssociationCC.AssociationCC;
282
+ if (group <= assocInstance.getGroupCountCached(ctx, endpoint)) {
283
+ groupExistsAsNodeAssociation = true;
284
+ }
285
+ }
286
+ if (!mcInstance && !assocInstance) {
287
+ throw new import_safe.ZWaveError(`Node ${nodeAndEndpointString} does not support associations!`, import_safe.ZWaveErrorCodes.CC_NotSupported);
288
+ }
289
+ if (!groupExistsAsMultiChannel && !groupExistsAsNodeAssociation) {
290
+ throw new import_safe.ZWaveError(` Association group ${group} does not exist for node ${nodeAndEndpointString}`, import_safe.ZWaveErrorCodes.AssociationCC_InvalidGroup);
291
+ }
292
+ if (endpointAssociations.length > 0 && !groupExistsAsMultiChannel) {
293
+ throw new import_safe.ZWaveError(`Node ${nodeAndEndpointString}, association group ${group} does not support multi channel associations!`, import_safe.ZWaveErrorCodes.AssociationCC_InvalidGroup);
294
+ }
295
+ if (assocInstance && nodeAssociations.length > 0 && groupExistsAsNodeAssociation) {
296
+ const api = import_API.CCAPI.create(import_safe.CommandClasses.Association, ctx, endpoint);
297
+ await api.removeNodeIds({
298
+ groupId: group,
299
+ nodeIds: nodeAssociations
300
+ });
301
+ await api.getGroup(group);
302
+ }
303
+ if (mcInstance && groupExistsAsMultiChannel) {
304
+ const api = import_API.CCAPI.create(import_safe.CommandClasses["Multi Channel Association"], ctx, endpoint);
305
+ await api.removeDestinations({
306
+ groupId: group,
307
+ nodeIds: nodeAssociations,
308
+ endpoints: endpointAssociations
309
+ });
310
+ await api.getGroup(group);
311
+ }
312
+ }
313
+ function getLifelineGroupIds(ctx, endpoint) {
314
+ if (endpoint.index > 0)
315
+ return [];
316
+ const lifelineGroups = [];
317
+ if (endpoint.supportsCC(import_safe.CommandClasses["Z-Wave Plus Info"])) {
318
+ lifelineGroups.push(1);
319
+ }
320
+ let associations;
321
+ const deviceConfig = ctx.getDeviceConfig?.(endpoint.nodeId);
322
+ if (endpoint.index === 0) {
323
+ associations = deviceConfig?.associations ?? deviceConfig?.endpoints?.get(0)?.associations;
324
+ } else {
325
+ associations = deviceConfig?.endpoints?.get(endpoint.index)?.associations;
326
+ }
327
+ if (associations?.size) {
328
+ lifelineGroups.push(...[...associations.values()].filter((a) => a.isLifeline).map((a) => a.groupId));
329
+ }
330
+ return (0, import_arrays.distinct)(lifelineGroups).sort();
331
+ }
332
+ async function configureLifelineAssociations(ctx, endpoint) {
333
+ const ownNodeId = ctx.ownNodeId;
334
+ const node = ctx.getNodeOrThrow(endpoint.nodeId);
335
+ const valueDB = ctx.getValueDB(node.id);
336
+ const deviceConfig = ctx.getDeviceConfig?.(node.id);
337
+ const nodeSupportsMultiChannel = node.supportsCC(import_safe.CommandClasses["Multi Channel"]);
338
+ let assocInstance;
339
+ const assocAPI = import_API.CCAPI.create(import_safe.CommandClasses.Association, ctx, endpoint);
340
+ if (endpoint.supportsCC(import_safe.CommandClasses.Association)) {
341
+ assocInstance = import_AssociationCC.AssociationCC;
342
+ }
343
+ let mcInstance;
344
+ let mcGroupCount = 0;
345
+ const mcAPI = import_API.CCAPI.create(import_safe.CommandClasses["Multi Channel Association"], ctx, endpoint);
346
+ if (endpoint.supportsCC(import_safe.CommandClasses["Multi Channel Association"])) {
347
+ mcInstance = import_MultiChannelAssociationCC.MultiChannelAssociationCC;
348
+ mcGroupCount = mcInstance.getGroupCountCached(ctx, endpoint) ?? 0;
349
+ }
350
+ const lifelineGroups = getLifelineGroupIds(ctx, node);
351
+ if (lifelineGroups.length === 0) {
352
+ if (endpoint.supportsCC(import_safe.CommandClasses["Association Group Information"])) {
353
+ const agiAPI = import_API.CCAPI.create(import_safe.CommandClasses["Association Group Information"], ctx, endpoint);
354
+ const lifeline = await agiAPI.getGroupInfo(1, true).catch(() => void 0);
355
+ if (lifeline?.profile === import_Types.AssociationGroupInfoProfile["General: Lifeline"]) {
356
+ lifelineGroups.push(1);
357
+ }
358
+ }
359
+ }
360
+ if (lifelineGroups.length === 0) {
361
+ ctx.logNode(node.id, {
362
+ endpoint: endpoint.index,
363
+ message: "No information about Lifeline associations, cannot assign ourselves!",
364
+ level: "warn"
365
+ });
366
+ valueDB.setValue(import_AssociationCC.AssociationCCValues.hasLifeline.endpoint(endpoint.index), false);
367
+ return;
368
+ }
369
+ ctx.logNode(node.id, {
370
+ endpoint: endpoint.index,
371
+ message: `Checking/assigning lifeline groups: ${lifelineGroups.join(", ")}
372
+ supports classic associations: ${!!assocInstance}
373
+ supports multi channel associations: ${!!mcInstance}`
374
+ });
375
+ for (const group of lifelineGroups) {
376
+ const groupSupportsMultiChannelAssociation = group <= mcGroupCount;
377
+ const assocConfig = deviceConfig?.getAssociationConfigForEndpoint(endpoint.index, group);
378
+ const mustUseNodeAssociation = !groupSupportsMultiChannelAssociation || !nodeSupportsMultiChannel || assocConfig?.multiChannel === false;
379
+ let mustUseMultiChannelAssociation = false;
380
+ if (groupSupportsMultiChannelAssociation && nodeSupportsMultiChannel) {
381
+ if (assocConfig?.multiChannel === true) {
382
+ mustUseMultiChannelAssociation = true;
383
+ } else if (endpoint.index === 0) {
384
+ const allEndpoints = node.getAllEndpoints();
385
+ if (allEndpoints.length > 1 && allEndpoints.filter((e) => e.index !== endpoint.index).every((e) => !e.supportsCC(import_safe.CommandClasses.Association) && !e.supportsCC(import_safe.CommandClasses["Multi Channel Association"]))) {
386
+ mustUseMultiChannelAssociation = true;
387
+ }
388
+ }
389
+ }
390
+ ctx.logNode(node.id, {
391
+ endpoint: endpoint.index,
392
+ message: `Configuring lifeline group #${group}:
393
+ group supports multi channel: ${groupSupportsMultiChannelAssociation}
394
+ configured strategy: ${assocConfig?.multiChannel ?? "auto"}
395
+ must use node association: ${mustUseNodeAssociation}
396
+ must use endpoint association: ${mustUseMultiChannelAssociation}`
397
+ });
398
+ const isAssignedAsNodeAssociation = (endpoint2) => {
399
+ if (groupSupportsMultiChannelAssociation && mcInstance) {
400
+ if (
401
+ // Only consider a group if it doesn't share its associations with the root endpoint
402
+ mcInstance.getMaxNodesCached(ctx, endpoint2, group) > 0 && !!mcInstance.getAllDestinationsCached(ctx, endpoint2).get(group)?.some((addr) => addr.nodeId === ownNodeId && addr.endpoint == void 0)
403
+ ) {
404
+ return true;
405
+ }
406
+ }
407
+ if (assocInstance) {
408
+ if (
409
+ // Only consider a group if it doesn't share its associations with the root endpoint
410
+ assocInstance.getMaxNodesCached(ctx, endpoint2, group) > 0 && !!assocInstance.getAllDestinationsCached(ctx, endpoint2).get(group)?.some((addr) => addr.nodeId === ownNodeId)
411
+ ) {
412
+ return true;
413
+ }
414
+ }
415
+ return false;
416
+ };
417
+ const isAssignedAsEndpointAssociation = (endpoint2) => {
418
+ if (mcInstance) {
419
+ if (
420
+ // Only consider a group if it doesn't share its associations with the root endpoint
421
+ mcInstance.getMaxNodesCached(ctx, endpoint2, group) > 0 && mcInstance.getAllDestinationsCached(ctx, endpoint2).get(group)?.some((addr) => addr.nodeId === ownNodeId && addr.endpoint === 0)
422
+ ) {
423
+ return true;
424
+ }
425
+ }
426
+ return false;
427
+ };
428
+ const invalidEndpointAssociations = mcInstance?.getAllDestinationsCached(ctx, endpoint).get(group)?.filter((addr) => addr.nodeId === ownNodeId && addr.endpoint != void 0 && addr.endpoint !== 0) ?? [];
429
+ if (invalidEndpointAssociations.length > 0 && mcAPI.isSupported() && groupSupportsMultiChannelAssociation) {
430
+ ctx.logNode(node.id, {
431
+ endpoint: endpoint.index,
432
+ message: `Found invalid lifeline associations in group #${group}, removing them...`,
433
+ direction: "outbound"
434
+ });
435
+ await mcAPI.removeDestinations({
436
+ groupId: group,
437
+ endpoints: invalidEndpointAssociations
438
+ });
439
+ await mcAPI.getGroup(group);
440
+ }
441
+ let hasLifeline = false;
442
+ if (!mustUseMultiChannelAssociation) {
443
+ if (isAssignedAsNodeAssociation(endpoint)) {
444
+ hasLifeline = true;
445
+ ctx.logNode(node.id, {
446
+ endpoint: endpoint.index,
447
+ message: `Lifeline group #${group} is already assigned with a node association`,
448
+ direction: "none"
449
+ });
450
+ } else if (assocAPI.isSupported() && assocInstance.getMaxNodesCached(ctx, endpoint, group) > 0) {
451
+ ctx.logNode(node.id, {
452
+ endpoint: endpoint.index,
453
+ message: `Assigning lifeline group #${group} with a node association via Association CC...`,
454
+ direction: "outbound"
455
+ });
456
+ if (isAssignedAsEndpointAssociation(endpoint) && mcAPI.isSupported()) {
457
+ await mcAPI.removeDestinations({
458
+ groupId: group,
459
+ endpoints: [{ nodeId: ownNodeId, endpoint: 0 }]
460
+ });
461
+ await mcAPI.getGroup(group);
462
+ }
463
+ await assocAPI.addNodeIds(group, ownNodeId);
464
+ const groupReport = await assocAPI.getGroup(group);
465
+ hasLifeline = !!groupReport?.nodeIds.includes(ownNodeId);
466
+ if (hasLifeline) {
467
+ ctx.logNode(node.id, {
468
+ endpoint: endpoint.index,
469
+ message: `Lifeline group #${group} was assigned with a node association via Association CC`,
470
+ direction: "none"
471
+ });
472
+ } else {
473
+ ctx.logNode(node.id, {
474
+ endpoint: endpoint.index,
475
+ message: `Assigning lifeline group #${group} with a node association via Association CC did not work`,
476
+ direction: "none"
477
+ });
478
+ }
479
+ }
480
+ if (!hasLifeline && mcAPI.isSupported() && mcInstance.getMaxNodesCached(ctx, endpoint, group) > 0) {
481
+ ctx.logNode(node.id, {
482
+ endpoint: endpoint.index,
483
+ message: `Assigning lifeline group #${group} with a node association via Multi Channel Association CC...`,
484
+ direction: "outbound"
485
+ });
486
+ if (isAssignedAsEndpointAssociation(endpoint)) {
487
+ await mcAPI.removeDestinations({
488
+ groupId: group,
489
+ endpoints: [{ nodeId: ownNodeId, endpoint: 0 }]
490
+ });
491
+ }
492
+ await mcAPI.addDestinations({
493
+ groupId: group,
494
+ nodeIds: [ownNodeId]
495
+ });
496
+ const groupReport = await mcAPI.getGroup(group);
497
+ hasLifeline = !!groupReport?.nodeIds.includes(ownNodeId);
498
+ if (hasLifeline) {
499
+ ctx.logNode(node.id, {
500
+ endpoint: endpoint.index,
501
+ message: `Lifeline group #${group} was assigned with a node association via Multi Channel Association CC`,
502
+ direction: "none"
503
+ });
504
+ } else {
505
+ ctx.logNode(node.id, {
506
+ endpoint: endpoint.index,
507
+ message: `Assigning lifeline group #${group} with a node association via Multi Channel Association CC did not work`,
508
+ direction: "none"
509
+ });
510
+ }
511
+ }
512
+ }
513
+ if (!hasLifeline && !mustUseNodeAssociation) {
514
+ if (isAssignedAsEndpointAssociation(endpoint)) {
515
+ hasLifeline = true;
516
+ ctx.logNode(node.id, {
517
+ endpoint: endpoint.index,
518
+ message: `Lifeline group #${group} is already assigned with an endpoint association`,
519
+ direction: "none"
520
+ });
521
+ } else if (mcAPI.isSupported() && mcAPI.version >= 3 && mcInstance.getMaxNodesCached(ctx, endpoint, group) > 0) {
522
+ ctx.logNode(node.id, {
523
+ endpoint: endpoint.index,
524
+ message: `Assigning lifeline group #${group} with a multi channel association...`,
525
+ direction: "outbound"
526
+ });
527
+ if (isAssignedAsNodeAssociation(endpoint)) {
528
+ await mcAPI.removeDestinations({
529
+ groupId: group,
530
+ nodeIds: [ownNodeId]
531
+ });
532
+ if (assocAPI.isSupported()) {
533
+ await assocAPI.removeNodeIds({
534
+ groupId: group,
535
+ nodeIds: [ownNodeId]
536
+ });
537
+ await assocAPI.getGroup(group);
538
+ }
539
+ }
540
+ await mcAPI.addDestinations({
541
+ groupId: group,
542
+ endpoints: [{ nodeId: ownNodeId, endpoint: 0 }]
543
+ });
544
+ const groupReport = await mcAPI.getGroup(group);
545
+ hasLifeline = !!groupReport?.endpoints.some((a) => a.nodeId === ownNodeId && a.endpoint === 0);
546
+ if (hasLifeline) {
547
+ ctx.logNode(node.id, {
548
+ endpoint: endpoint.index,
549
+ message: `Lifeline group #${group} was assigned with a multi channel association`,
550
+ direction: "none"
551
+ });
552
+ } else {
553
+ ctx.logNode(node.id, {
554
+ endpoint: endpoint.index,
555
+ message: `Assigning lifeline group #${group} with a multi channel association did not work`,
556
+ direction: "none"
557
+ });
558
+ }
559
+ }
560
+ }
561
+ if (!hasLifeline && group === 1 && node.supportsCC(import_safe.CommandClasses["Z-Wave Plus Info"]) && endpoint.index > 0) {
562
+ const rootAssocConfig = deviceConfig?.getAssociationConfigForEndpoint(0, group);
563
+ const rootMustUseNodeAssociation = !nodeSupportsMultiChannel || rootAssocConfig?.multiChannel === false;
564
+ ctx.logNode(node.id, {
565
+ endpoint: endpoint.index,
566
+ message: `Checking root device for fallback assignment of lifeline group #${group}:
567
+ root supports multi channel: ${nodeSupportsMultiChannel}
568
+ configured strategy: ${rootAssocConfig?.multiChannel ?? "auto"}
569
+ must use node association: ${rootMustUseNodeAssociation}`
570
+ });
571
+ if (!rootMustUseNodeAssociation) {
572
+ if (isAssignedAsEndpointAssociation(node)) {
573
+ hasLifeline = true;
574
+ ctx.logNode(node.id, {
575
+ endpoint: endpoint.index,
576
+ message: `Lifeline group #${group} is already assigned with a multi channel association on the root device`,
577
+ direction: "none"
578
+ });
579
+ } else {
580
+ const rootMCAPI = import_API.CCAPI.create(import_safe.CommandClasses["Multi Channel Association"], ctx, node);
581
+ const rootAssocAPI = import_API.CCAPI.create(import_safe.CommandClasses.Association, ctx, node);
582
+ if (rootMCAPI.isSupported()) {
583
+ ctx.logNode(node.id, {
584
+ endpoint: endpoint.index,
585
+ message: `Assigning lifeline group #${group} with a multi channel association on the root device...`,
586
+ direction: "outbound"
587
+ });
588
+ if (isAssignedAsNodeAssociation(node)) {
589
+ await rootMCAPI.removeDestinations({
590
+ groupId: group,
591
+ nodeIds: [ownNodeId]
592
+ });
593
+ if (rootAssocAPI.isSupported()) {
594
+ await rootAssocAPI.removeNodeIds({
595
+ groupId: group,
596
+ nodeIds: [ownNodeId]
597
+ });
598
+ await rootAssocAPI.getGroup(group);
599
+ }
600
+ }
601
+ await rootMCAPI.addDestinations({
602
+ groupId: group,
603
+ endpoints: [{ nodeId: ownNodeId, endpoint: 0 }]
604
+ });
605
+ const groupReport = await rootMCAPI.getGroup(group);
606
+ hasLifeline = !!groupReport?.endpoints.some((a) => a.nodeId === ownNodeId && a.endpoint === 0);
607
+ }
608
+ }
609
+ }
610
+ }
611
+ if (!hasLifeline) {
612
+ ctx.logNode(node.id, {
613
+ endpoint: endpoint.index,
614
+ message: `All attempts to assign lifeline group #${group} failed, skipping...`,
615
+ direction: "none",
616
+ level: "warn"
617
+ });
618
+ }
619
+ }
620
+ valueDB.setValue(import_AssociationCC.AssociationCCValues.hasLifeline.endpoint(endpoint.index), true);
621
+ }
622
+ async function assignLifelineIssueingCommand(ctx, endpoint, ccId, ccCommand) {
623
+ const node = ctx.getNodeOrThrow(endpoint.nodeId);
624
+ if (node.supportsCC(import_safe.CommandClasses["Association Group Information"]) && (node.supportsCC(import_safe.CommandClasses.Association) || node.supportsCC(import_safe.CommandClasses["Multi Channel Association"]))) {
625
+ const groupsIssueingNotifications = import_AssociationGroupInfoCC.AssociationGroupInfoCC.findGroupsForIssuedCommand(ctx, node, ccId, ccCommand);
626
+ if (groupsIssueingNotifications.length > 0) {
627
+ const groupId = groupsIssueingNotifications[0];
628
+ const existingAssociations = getAssociations(ctx, node).get(groupId) ?? [];
629
+ if (!existingAssociations.some((a) => a.nodeId === ctx.ownNodeId)) {
630
+ ctx.logNode(node.id, {
631
+ endpoint: endpoint.index,
632
+ message: `Configuring associations to receive ${(0, import_safe.getCCName)(ccId)} commands...`,
633
+ direction: "outbound"
634
+ });
635
+ await addAssociations(ctx, node, groupId, [
636
+ { nodeId: ctx.ownNodeId }
637
+ ]);
638
+ }
639
+ }
640
+ }
641
+ }
642
+ function doesAnyLifelineSendActuatorOrSensorReports(ctx, node) {
643
+ if (!node.supportsCC(import_safe.CommandClasses.Association) && !node.supportsCC(import_safe.CommandClasses["Multi Channel Association"])) {
644
+ return false;
645
+ }
646
+ if (!node.supportsCC(import_safe.CommandClasses["Association Group Information"])) {
647
+ return import_safe.NOT_KNOWN;
648
+ }
649
+ const lifelineGroupIds = getLifelineGroupIds(ctx, node);
650
+ if (lifelineGroupIds.some((id) => import_AssociationGroupInfoCC.AssociationGroupInfoCC.getGroupProfileCached(ctx, node, id) === import_Types.AssociationGroupInfoProfile["General: Lifeline"])) {
651
+ return true;
652
+ }
653
+ for (const groupId of lifelineGroupIds) {
654
+ const issuedCommands = import_AssociationGroupInfoCC.AssociationGroupInfoCC.getIssuedCommandsCached(ctx, node, groupId);
655
+ if (!issuedCommands)
656
+ continue;
657
+ const commands = [...issuedCommands.keys()];
658
+ if (commands.some((c) => (0, import_safe.isActuatorCC)(c) || (0, import_safe.isSensorCC)(c))) {
659
+ return true;
660
+ }
661
+ }
662
+ return false;
663
+ }
664
+ // Annotate the CommonJS export names for ESM import in node:
665
+ 0 && (module.exports = {
666
+ addAssociations,
667
+ assignLifelineIssueingCommand,
668
+ checkAssociation,
669
+ configureLifelineAssociations,
670
+ doesAnyLifelineSendActuatorOrSensorReports,
671
+ getAllAssociationGroups,
672
+ getAllAssociations,
673
+ getAssociationGroups,
674
+ getAssociations,
675
+ getLifelineGroupIds,
676
+ removeAssociations
677
+ });
678
+ //# sourceMappingURL=utils.js.map