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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (922) hide show
  1. package/build/cjs/cc/AlarmSensorCC.d.ts +194 -0
  2. package/build/cjs/cc/AlarmSensorCC.js +395 -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 +711 -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 +746 -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 +582 -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 +384 -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 +508 -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 +431 -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 +378 -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 +133 -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 +449 -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 +480 -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 +226 -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 +1117 -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 +2230 -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 +92 -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 +1239 -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 +343 -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 +240 -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 +593 -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 +1122 -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 +45 -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 +323 -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 +164 -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 +634 -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 +160 -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 +1234 -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 +1978 -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 +267 -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 +222 -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 +209 -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 +334 -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 +1235 -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 +956 -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 +1050 -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 +159 -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 +716 -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 +780 -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 +64 -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 +364 -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 +1245 -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 +510 -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 +667 -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 +193 -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 +370 -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 +423 -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 +1763 -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 +1589 -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 +757 -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 +661 -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 +308 -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 +372 -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 +166 -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 +436 -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 +162 -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 +262 -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 +638 -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 +473 -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 +313 -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 +404 -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 +1620 -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 +828 -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 +456 -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 +776 -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 +43 -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 +288 -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 +1071 -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 +412 -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 +112 -0
  221. package/build/cjs/lib/CommandClassDecorators.js +182 -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.js +333 -0
  232. package/build/cjs/lib/Security2/Extension.js.map +7 -0
  233. package/build/cjs/lib/Security2/shared.js +69 -0
  234. package/build/cjs/lib/Security2/shared.js.map +7 -0
  235. package/build/cjs/lib/SetValueResult.js +65 -0
  236. package/build/cjs/lib/SetValueResult.js.map +7 -0
  237. package/build/cjs/lib/Values.d.ts +223 -0
  238. package/build/cjs/lib/Values.js +191 -0
  239. package/build/cjs/lib/Values.js.map +7 -0
  240. package/build/cjs/lib/_Types.js +1676 -0
  241. package/build/cjs/lib/_Types.js.map +7 -0
  242. package/build/cjs/lib/serializers.d.ts +34 -0
  243. package/build/cjs/lib/serializers.js +110 -0
  244. package/build/cjs/lib/serializers.js.map +7 -0
  245. package/build/cjs/lib/utils.d.ts +17 -0
  246. package/build/cjs/lib/utils.js +678 -0
  247. package/build/cjs/lib/utils.js.map +7 -0
  248. package/build/cjs/package.json +3 -0
  249. package/build/esm/cc/AlarmSensorCC.d.ts +194 -0
  250. package/build/esm/cc/AlarmSensorCC.d.ts.map +1 -0
  251. package/build/esm/cc/AlarmSensorCC.js +392 -0
  252. package/build/esm/cc/AlarmSensorCC.js.map +1 -0
  253. package/build/esm/cc/AssociationCC.d.ts +253 -0
  254. package/build/esm/cc/AssociationCC.d.ts.map +1 -0
  255. package/build/esm/cc/AssociationCC.js +706 -0
  256. package/build/esm/cc/AssociationCC.js.map +1 -0
  257. package/build/esm/cc/AssociationGroupInfoCC.d.ts +230 -0
  258. package/build/esm/cc/AssociationGroupInfoCC.d.ts.map +1 -0
  259. package/build/esm/cc/AssociationGroupInfoCC.js +769 -0
  260. package/build/esm/cc/AssociationGroupInfoCC.js.map +1 -0
  261. package/build/esm/cc/BarrierOperatorCC.d.ts +243 -0
  262. package/build/esm/cc/BarrierOperatorCC.d.ts.map +1 -0
  263. package/build/esm/cc/BarrierOperatorCC.js +610 -0
  264. package/build/esm/cc/BarrierOperatorCC.js.map +1 -0
  265. package/build/esm/cc/BasicCC.d.ts +191 -0
  266. package/build/esm/cc/BasicCC.d.ts.map +1 -0
  267. package/build/esm/cc/BasicCC.js +390 -0
  268. package/build/esm/cc/BasicCC.js.map +1 -0
  269. package/build/esm/cc/BatteryCC.d.ts +406 -0
  270. package/build/esm/cc/BatteryCC.d.ts.map +1 -0
  271. package/build/esm/cc/BatteryCC.js +513 -0
  272. package/build/esm/cc/BatteryCC.js.map +1 -0
  273. package/build/esm/cc/BinarySensorCC.d.ts +122 -0
  274. package/build/esm/cc/BinarySensorCC.d.ts.map +1 -0
  275. package/build/esm/cc/BinarySensorCC.js +417 -0
  276. package/build/esm/cc/BinarySensorCC.js.map +1 -0
  277. package/build/esm/cc/BinarySwitchCC.d.ts +139 -0
  278. package/build/esm/cc/BinarySwitchCC.d.ts.map +1 -0
  279. package/build/esm/cc/BinarySwitchCC.js +362 -0
  280. package/build/esm/cc/BinarySwitchCC.js.map +1 -0
  281. package/build/esm/cc/CRC16CC.d.ts +29 -0
  282. package/build/esm/cc/CRC16CC.d.ts.map +1 -0
  283. package/build/esm/cc/CRC16CC.js +123 -0
  284. package/build/esm/cc/CRC16CC.js.map +1 -0
  285. package/build/esm/cc/CentralSceneCC.d.ts +210 -0
  286. package/build/esm/cc/CentralSceneCC.d.ts.map +1 -0
  287. package/build/esm/cc/CentralSceneCC.js +427 -0
  288. package/build/esm/cc/CentralSceneCC.js.map +1 -0
  289. package/build/esm/cc/ClimateControlScheduleCC.d.ts +177 -0
  290. package/build/esm/cc/ClimateControlScheduleCC.d.ts.map +1 -0
  291. package/build/esm/cc/ClimateControlScheduleCC.js +466 -0
  292. package/build/esm/cc/ClimateControlScheduleCC.js.map +1 -0
  293. package/build/esm/cc/ClockCC.d.ts +47 -0
  294. package/build/esm/cc/ClockCC.d.ts.map +1 -0
  295. package/build/esm/cc/ClockCC.js +205 -0
  296. package/build/esm/cc/ClockCC.js.map +1 -0
  297. package/build/esm/cc/ColorSwitchCC.d.ts +339 -0
  298. package/build/esm/cc/ColorSwitchCC.d.ts.map +1 -0
  299. package/build/esm/cc/ColorSwitchCC.js +1149 -0
  300. package/build/esm/cc/ColorSwitchCC.js.map +1 -0
  301. package/build/esm/cc/ConfigurationCC.d.ts +396 -0
  302. package/build/esm/cc/ConfigurationCC.d.ts.map +1 -0
  303. package/build/esm/cc/ConfigurationCC.js +2454 -0
  304. package/build/esm/cc/ConfigurationCC.js.map +1 -0
  305. package/build/esm/cc/DeviceResetLocallyCC.d.ts +17 -0
  306. package/build/esm/cc/DeviceResetLocallyCC.d.ts.map +1 -0
  307. package/build/esm/cc/DeviceResetLocallyCC.js +73 -0
  308. package/build/esm/cc/DeviceResetLocallyCC.js.map +1 -0
  309. package/build/esm/cc/DoorLockCC.d.ts +837 -0
  310. package/build/esm/cc/DoorLockCC.d.ts.map +1 -0
  311. package/build/esm/cc/DoorLockCC.js +1270 -0
  312. package/build/esm/cc/DoorLockCC.js.map +1 -0
  313. package/build/esm/cc/DoorLockLoggingCC.d.ts +77 -0
  314. package/build/esm/cc/DoorLockLoggingCC.d.ts.map +1 -0
  315. package/build/esm/cc/DoorLockLoggingCC.js +316 -0
  316. package/build/esm/cc/DoorLockLoggingCC.js.map +1 -0
  317. package/build/esm/cc/EnergyProductionCC.d.ts +77 -0
  318. package/build/esm/cc/EnergyProductionCC.d.ts.map +1 -0
  319. package/build/esm/cc/EnergyProductionCC.js +213 -0
  320. package/build/esm/cc/EnergyProductionCC.js.map +1 -0
  321. package/build/esm/cc/EntryControlCC.d.ts +231 -0
  322. package/build/esm/cc/EntryControlCC.d.ts.map +1 -0
  323. package/build/esm/cc/EntryControlCC.js +581 -0
  324. package/build/esm/cc/EntryControlCC.js.map +1 -0
  325. package/build/esm/cc/FirmwareUpdateMetaDataCC.d.ts +359 -0
  326. package/build/esm/cc/FirmwareUpdateMetaDataCC.d.ts.map +1 -0
  327. package/build/esm/cc/FirmwareUpdateMetaDataCC.js +1142 -0
  328. package/build/esm/cc/FirmwareUpdateMetaDataCC.js.map +1 -0
  329. package/build/esm/cc/HailCC.d.ts +6 -0
  330. package/build/esm/cc/HailCC.d.ts.map +1 -0
  331. package/build/esm/cc/HailCC.js +21 -0
  332. package/build/esm/cc/HailCC.js.map +1 -0
  333. package/build/esm/cc/HumidityControlModeCC.d.ts +111 -0
  334. package/build/esm/cc/HumidityControlModeCC.d.ts.map +1 -0
  335. package/build/esm/cc/HumidityControlModeCC.js +305 -0
  336. package/build/esm/cc/HumidityControlModeCC.js.map +1 -0
  337. package/build/esm/cc/HumidityControlOperatingStateCC.d.ts +60 -0
  338. package/build/esm/cc/HumidityControlOperatingStateCC.d.ts.map +1 -0
  339. package/build/esm/cc/HumidityControlOperatingStateCC.js +137 -0
  340. package/build/esm/cc/HumidityControlOperatingStateCC.js.map +1 -0
  341. package/build/esm/cc/HumidityControlSetpointCC.d.ts +209 -0
  342. package/build/esm/cc/HumidityControlSetpointCC.d.ts.map +1 -0
  343. package/build/esm/cc/HumidityControlSetpointCC.js +645 -0
  344. package/build/esm/cc/HumidityControlSetpointCC.js.map +1 -0
  345. package/build/esm/cc/InclusionControllerCC.d.ts +42 -0
  346. package/build/esm/cc/InclusionControllerCC.d.ts.map +1 -0
  347. package/build/esm/cc/InclusionControllerCC.js +133 -0
  348. package/build/esm/cc/InclusionControllerCC.js.map +1 -0
  349. package/build/esm/cc/IndicatorCC.d.ts +338 -0
  350. package/build/esm/cc/IndicatorCC.d.ts.map +1 -0
  351. package/build/esm/cc/IndicatorCC.js +1317 -0
  352. package/build/esm/cc/IndicatorCC.js.map +1 -0
  353. package/build/esm/cc/IrrigationCC.d.ts +1496 -0
  354. package/build/esm/cc/IrrigationCC.d.ts.map +1 -0
  355. package/build/esm/cc/IrrigationCC.js +2038 -0
  356. package/build/esm/cc/IrrigationCC.js.map +1 -0
  357. package/build/esm/cc/LanguageCC.d.ts +101 -0
  358. package/build/esm/cc/LanguageCC.d.ts.map +1 -0
  359. package/build/esm/cc/LanguageCC.js +243 -0
  360. package/build/esm/cc/LanguageCC.js.map +1 -0
  361. package/build/esm/cc/LockCC.d.ts +73 -0
  362. package/build/esm/cc/LockCC.d.ts.map +1 -0
  363. package/build/esm/cc/LockCC.js +197 -0
  364. package/build/esm/cc/LockCC.js.map +1 -0
  365. package/build/esm/cc/ManufacturerProprietaryCC.d.ts +32 -0
  366. package/build/esm/cc/ManufacturerProprietaryCC.d.ts.map +1 -0
  367. package/build/esm/cc/ManufacturerProprietaryCC.js +201 -0
  368. package/build/esm/cc/ManufacturerProprietaryCC.js.map +1 -0
  369. package/build/esm/cc/ManufacturerSpecificCC.d.ts +171 -0
  370. package/build/esm/cc/ManufacturerSpecificCC.d.ts.map +1 -0
  371. package/build/esm/cc/ManufacturerSpecificCC.js +315 -0
  372. package/build/esm/cc/ManufacturerSpecificCC.js.map +1 -0
  373. package/build/esm/cc/MeterCC.d.ts +318 -0
  374. package/build/esm/cc/MeterCC.d.ts.map +1 -0
  375. package/build/esm/cc/MeterCC.js +1308 -0
  376. package/build/esm/cc/MeterCC.js.map +1 -0
  377. package/build/esm/cc/MultiChannelAssociationCC.d.ts +241 -0
  378. package/build/esm/cc/MultiChannelAssociationCC.d.ts.map +1 -0
  379. package/build/esm/cc/MultiChannelAssociationCC.js +981 -0
  380. package/build/esm/cc/MultiChannelAssociationCC.js.map +1 -0
  381. package/build/esm/cc/MultiChannelCC.d.ts +394 -0
  382. package/build/esm/cc/MultiChannelCC.d.ts.map +1 -0
  383. package/build/esm/cc/MultiChannelCC.js +1127 -0
  384. package/build/esm/cc/MultiChannelCC.js.map +1 -0
  385. package/build/esm/cc/MultiCommandCC.d.ts +27 -0
  386. package/build/esm/cc/MultiCommandCC.d.ts.map +1 -0
  387. package/build/esm/cc/MultiCommandCC.js +142 -0
  388. package/build/esm/cc/MultiCommandCC.js.map +1 -0
  389. package/build/esm/cc/MultilevelSensorCC.d.ts +185 -0
  390. package/build/esm/cc/MultilevelSensorCC.d.ts.map +1 -0
  391. package/build/esm/cc/MultilevelSensorCC.js +753 -0
  392. package/build/esm/cc/MultilevelSensorCC.js.map +1 -0
  393. package/build/esm/cc/MultilevelSwitchCC.d.ts +357 -0
  394. package/build/esm/cc/MultilevelSwitchCC.d.ts.map +1 -0
  395. package/build/esm/cc/MultilevelSwitchCC.js +810 -0
  396. package/build/esm/cc/MultilevelSwitchCC.js.map +1 -0
  397. package/build/esm/cc/NoOperationCC.d.ts +9 -0
  398. package/build/esm/cc/NoOperationCC.d.ts.map +1 -0
  399. package/build/esm/cc/NoOperationCC.js +39 -0
  400. package/build/esm/cc/NoOperationCC.js.map +1 -0
  401. package/build/esm/cc/NodeNamingCC.d.ts +118 -0
  402. package/build/esm/cc/NodeNamingCC.d.ts.map +1 -0
  403. package/build/esm/cc/NodeNamingCC.js +345 -0
  404. package/build/esm/cc/NodeNamingCC.js.map +1 -0
  405. package/build/esm/cc/NotificationCC.d.ts +479 -0
  406. package/build/esm/cc/NotificationCC.d.ts.map +1 -0
  407. package/build/esm/cc/NotificationCC.js +1350 -0
  408. package/build/esm/cc/NotificationCC.js.map +1 -0
  409. package/build/esm/cc/PowerlevelCC.d.ts +82 -0
  410. package/build/esm/cc/PowerlevelCC.d.ts.map +1 -0
  411. package/build/esm/cc/PowerlevelCC.js +485 -0
  412. package/build/esm/cc/PowerlevelCC.js.map +1 -0
  413. package/build/esm/cc/ProtectionCC.d.ts +325 -0
  414. package/build/esm/cc/ProtectionCC.d.ts.map +1 -0
  415. package/build/esm/cc/ProtectionCC.js +669 -0
  416. package/build/esm/cc/ProtectionCC.js.map +1 -0
  417. package/build/esm/cc/SceneActivationCC.d.ts +89 -0
  418. package/build/esm/cc/SceneActivationCC.d.ts.map +1 -0
  419. package/build/esm/cc/SceneActivationCC.js +166 -0
  420. package/build/esm/cc/SceneActivationCC.js.map +1 -0
  421. package/build/esm/cc/SceneActuatorConfigurationCC.d.ts +120 -0
  422. package/build/esm/cc/SceneActuatorConfigurationCC.d.ts.map +1 -0
  423. package/build/esm/cc/SceneActuatorConfigurationCC.js +374 -0
  424. package/build/esm/cc/SceneActuatorConfigurationCC.js.map +1 -0
  425. package/build/esm/cc/SceneControllerConfigurationCC.d.ts +129 -0
  426. package/build/esm/cc/SceneControllerConfigurationCC.d.ts.map +1 -0
  427. package/build/esm/cc/SceneControllerConfigurationCC.js +446 -0
  428. package/build/esm/cc/SceneControllerConfigurationCC.js.map +1 -0
  429. package/build/esm/cc/ScheduleEntryLockCC.d.ts +434 -0
  430. package/build/esm/cc/ScheduleEntryLockCC.d.ts.map +1 -0
  431. package/build/esm/cc/ScheduleEntryLockCC.js +1826 -0
  432. package/build/esm/cc/ScheduleEntryLockCC.js.map +1 -0
  433. package/build/esm/cc/Security2CC.d.ts +251 -0
  434. package/build/esm/cc/Security2CC.d.ts.map +1 -0
  435. package/build/esm/cc/Security2CC.js +1814 -0
  436. package/build/esm/cc/Security2CC.js.map +1 -0
  437. package/build/esm/cc/SecurityCC.d.ts +128 -0
  438. package/build/esm/cc/SecurityCC.d.ts.map +1 -0
  439. package/build/esm/cc/SecurityCC.js +800 -0
  440. package/build/esm/cc/SecurityCC.js.map +1 -0
  441. package/build/esm/cc/SoundSwitchCC.d.ts +232 -0
  442. package/build/esm/cc/SoundSwitchCC.d.ts.map +1 -0
  443. package/build/esm/cc/SoundSwitchCC.js +633 -0
  444. package/build/esm/cc/SoundSwitchCC.js.map +1 -0
  445. package/build/esm/cc/SupervisionCC.d.ts +104 -0
  446. package/build/esm/cc/SupervisionCC.d.ts.map +1 -0
  447. package/build/esm/cc/SupervisionCC.js +319 -0
  448. package/build/esm/cc/SupervisionCC.js.map +1 -0
  449. package/build/esm/cc/ThermostatFanModeCC.d.ts +141 -0
  450. package/build/esm/cc/ThermostatFanModeCC.d.ts.map +1 -0
  451. package/build/esm/cc/ThermostatFanModeCC.js +359 -0
  452. package/build/esm/cc/ThermostatFanModeCC.js.map +1 -0
  453. package/build/esm/cc/ThermostatFanStateCC.d.ts +60 -0
  454. package/build/esm/cc/ThermostatFanStateCC.d.ts.map +1 -0
  455. package/build/esm/cc/ThermostatFanStateCC.js +139 -0
  456. package/build/esm/cc/ThermostatFanStateCC.js.map +1 -0
  457. package/build/esm/cc/ThermostatModeCC.d.ts +150 -0
  458. package/build/esm/cc/ThermostatModeCC.d.ts.map +1 -0
  459. package/build/esm/cc/ThermostatModeCC.js +426 -0
  460. package/build/esm/cc/ThermostatModeCC.js.map +1 -0
  461. package/build/esm/cc/ThermostatOperatingStateCC.d.ts +61 -0
  462. package/build/esm/cc/ThermostatOperatingStateCC.d.ts.map +1 -0
  463. package/build/esm/cc/ThermostatOperatingStateCC.js +135 -0
  464. package/build/esm/cc/ThermostatOperatingStateCC.js.map +1 -0
  465. package/build/esm/cc/ThermostatSetbackCC.d.ts +46 -0
  466. package/build/esm/cc/ThermostatSetbackCC.d.ts.map +1 -0
  467. package/build/esm/cc/ThermostatSetbackCC.js +244 -0
  468. package/build/esm/cc/ThermostatSetbackCC.js.map +1 -0
  469. package/build/esm/cc/ThermostatSetpointCC.d.ts +197 -0
  470. package/build/esm/cc/ThermostatSetpointCC.d.ts.map +1 -0
  471. package/build/esm/cc/ThermostatSetpointCC.js +655 -0
  472. package/build/esm/cc/ThermostatSetpointCC.js.map +1 -0
  473. package/build/esm/cc/TimeCC.d.ts +88 -0
  474. package/build/esm/cc/TimeCC.d.ts.map +1 -0
  475. package/build/esm/cc/TimeCC.js +451 -0
  476. package/build/esm/cc/TimeCC.js.map +1 -0
  477. package/build/esm/cc/TimeParametersCC.d.ts +72 -0
  478. package/build/esm/cc/TimeParametersCC.d.ts.map +1 -0
  479. package/build/esm/cc/TimeParametersCC.js +300 -0
  480. package/build/esm/cc/TimeParametersCC.js.map +1 -0
  481. package/build/esm/cc/TransportServiceCC.d.ts +107 -0
  482. package/build/esm/cc/TransportServiceCC.d.ts.map +1 -0
  483. package/build/esm/cc/TransportServiceCC.js +422 -0
  484. package/build/esm/cc/TransportServiceCC.js.map +1 -0
  485. package/build/esm/cc/UserCodeCC.d.ts +683 -0
  486. package/build/esm/cc/UserCodeCC.d.ts.map +1 -0
  487. package/build/esm/cc/UserCodeCC.js +1695 -0
  488. package/build/esm/cc/UserCodeCC.js.map +1 -0
  489. package/build/esm/cc/VersionCC.d.ts +469 -0
  490. package/build/esm/cc/VersionCC.d.ts.map +1 -0
  491. package/build/esm/cc/VersionCC.js +862 -0
  492. package/build/esm/cc/VersionCC.js.map +1 -0
  493. package/build/esm/cc/WakeUpCC.d.ts +150 -0
  494. package/build/esm/cc/WakeUpCC.d.ts.map +1 -0
  495. package/build/esm/cc/WakeUpCC.js +438 -0
  496. package/build/esm/cc/WakeUpCC.js.map +1 -0
  497. package/build/esm/cc/WindowCoveringCC.d.ts +315 -0
  498. package/build/esm/cc/WindowCoveringCC.d.ts.map +1 -0
  499. package/build/esm/cc/WindowCoveringCC.js +780 -0
  500. package/build/esm/cc/WindowCoveringCC.js.map +1 -0
  501. package/build/esm/cc/ZWaveLongRangeCC.d.ts +4 -0
  502. package/build/esm/cc/ZWaveLongRangeCC.d.ts.map +1 -0
  503. package/build/esm/cc/ZWaveLongRangeCC.js +17 -0
  504. package/build/esm/cc/ZWaveLongRangeCC.js.map +1 -0
  505. package/build/esm/cc/ZWavePlusCC.d.ts +163 -0
  506. package/build/esm/cc/ZWavePlusCC.d.ts.map +1 -0
  507. package/build/esm/cc/ZWavePlusCC.js +267 -0
  508. package/build/esm/cc/ZWavePlusCC.js.map +1 -0
  509. package/build/esm/cc/ZWaveProtocolCC.d.ts +344 -0
  510. package/build/esm/cc/ZWaveProtocolCC.d.ts.map +1 -0
  511. package/build/esm/cc/ZWaveProtocolCC.js +1030 -0
  512. package/build/esm/cc/ZWaveProtocolCC.js.map +1 -0
  513. package/build/esm/cc/index.d.ts +132 -0
  514. package/build/esm/cc/index.d.ts.map +1 -0
  515. package/build/esm/cc/index.js +71 -0
  516. package/build/esm/cc/index.js.map +1 -0
  517. package/build/esm/cc/manufacturerProprietary/Decorators.d.ts +64 -0
  518. package/build/esm/cc/manufacturerProprietary/Decorators.d.ts.map +1 -0
  519. package/build/esm/cc/manufacturerProprietary/Decorators.js +79 -0
  520. package/build/esm/cc/manufacturerProprietary/Decorators.js.map +1 -0
  521. package/build/esm/cc/manufacturerProprietary/FibaroCC.d.ts +79 -0
  522. package/build/esm/cc/manufacturerProprietary/FibaroCC.d.ts.map +1 -0
  523. package/build/esm/cc/manufacturerProprietary/FibaroCC.js +385 -0
  524. package/build/esm/cc/manufacturerProprietary/FibaroCC.js.map +1 -0
  525. package/build/esm/index.d.ts +15 -0
  526. package/build/esm/index.d.ts.map +1 -0
  527. package/build/esm/index.js +14 -0
  528. package/build/esm/index.js.map +1 -0
  529. package/build/esm/index_safe.d.ts +3 -0
  530. package/build/esm/index_safe.d.ts.map +1 -0
  531. package/build/esm/index_safe.js +4 -0
  532. package/build/esm/index_safe.js.map +1 -0
  533. package/build/esm/lib/API.d.ts +271 -0
  534. package/build/esm/lib/API.d.ts.map +1 -0
  535. package/build/esm/lib/API.js +448 -0
  536. package/build/esm/lib/API.js.map +1 -0
  537. package/build/esm/lib/CommandClass.d.ts +234 -0
  538. package/build/esm/lib/CommandClass.d.ts.map +1 -0
  539. package/build/esm/lib/CommandClass.js +781 -0
  540. package/build/esm/lib/CommandClass.js.map +1 -0
  541. package/build/esm/lib/CommandClassDecorators.d.ts +112 -0
  542. package/build/esm/lib/CommandClassDecorators.d.ts.map +1 -0
  543. package/build/esm/lib/CommandClassDecorators.js +229 -0
  544. package/build/esm/lib/CommandClassDecorators.js.map +1 -0
  545. package/build/esm/lib/EncapsulatingCommandClass.d.ts +22 -0
  546. package/build/esm/lib/EncapsulatingCommandClass.d.ts.map +1 -0
  547. package/build/esm/lib/EncapsulatingCommandClass.js +56 -0
  548. package/build/esm/lib/EncapsulatingCommandClass.js.map +1 -0
  549. package/build/esm/lib/ICommandClassContainer.d.ts +2 -0
  550. package/build/esm/lib/ICommandClassContainer.d.ts.map +1 -0
  551. package/build/esm/lib/ICommandClassContainer.js +2 -0
  552. package/build/esm/lib/ICommandClassContainer.js.map +1 -0
  553. package/build/esm/lib/NotificationEventPayload.d.ts +10 -0
  554. package/build/esm/lib/NotificationEventPayload.d.ts.map +1 -0
  555. package/build/esm/lib/NotificationEventPayload.js +7 -0
  556. package/build/esm/lib/NotificationEventPayload.js.map +1 -0
  557. package/build/esm/lib/Security2/Extension.d.ts +106 -0
  558. package/build/esm/lib/Security2/Extension.d.ts.map +1 -0
  559. package/build/esm/lib/Security2/Extension.js +296 -0
  560. package/build/esm/lib/Security2/Extension.js.map +1 -0
  561. package/build/esm/lib/Security2/shared.d.ts +37 -0
  562. package/build/esm/lib/Security2/shared.d.ts.map +1 -0
  563. package/build/esm/lib/Security2/shared.js +40 -0
  564. package/build/esm/lib/Security2/shared.js.map +1 -0
  565. package/build/esm/lib/SetValueResult.d.ts +55 -0
  566. package/build/esm/lib/SetValueResult.d.ts.map +1 -0
  567. package/build/esm/lib/SetValueResult.js +53 -0
  568. package/build/esm/lib/SetValueResult.js.map +1 -0
  569. package/build/esm/lib/Values.d.ts +223 -0
  570. package/build/esm/lib/Values.d.ts.map +1 -0
  571. package/build/esm/lib/Values.js +169 -0
  572. package/build/esm/lib/Values.js.map +1 -0
  573. package/build/esm/lib/_Types.d.ts +1461 -0
  574. package/build/esm/lib/_Types.d.ts.map +1 -0
  575. package/build/esm/lib/_Types.js +1432 -0
  576. package/build/esm/lib/_Types.js.map +1 -0
  577. package/build/esm/lib/serializers.d.ts +34 -0
  578. package/build/esm/lib/serializers.d.ts.map +1 -0
  579. package/build/esm/lib/serializers.js +98 -0
  580. package/build/esm/lib/serializers.js.map +1 -0
  581. package/build/esm/lib/utils.d.ts +17 -0
  582. package/build/esm/lib/utils.d.ts.map +1 -0
  583. package/build/esm/lib/utils.js +847 -0
  584. package/build/esm/lib/utils.js.map +1 -0
  585. package/build/esm/package.json +3 -0
  586. package/package.json +28 -23
  587. package/build/cc/AlarmSensorCC.d.ts +0 -194
  588. package/build/cc/AlarmSensorCC.d.ts.map +0 -1
  589. package/build/cc/AlarmSensorCC.js +0 -395
  590. package/build/cc/AlarmSensorCC.js.map +0 -1
  591. package/build/cc/AssociationCC.d.ts +0 -253
  592. package/build/cc/AssociationCC.d.ts.map +0 -1
  593. package/build/cc/AssociationCC.js +0 -732
  594. package/build/cc/AssociationCC.js.map +0 -1
  595. package/build/cc/AssociationGroupInfoCC.d.ts +0 -230
  596. package/build/cc/AssociationGroupInfoCC.d.ts.map +0 -1
  597. package/build/cc/AssociationGroupInfoCC.js +0 -772
  598. package/build/cc/AssociationGroupInfoCC.js.map +0 -1
  599. package/build/cc/BarrierOperatorCC.d.ts +0 -243
  600. package/build/cc/BarrierOperatorCC.d.ts.map +0 -1
  601. package/build/cc/BarrierOperatorCC.js +0 -613
  602. package/build/cc/BarrierOperatorCC.js.map +0 -1
  603. package/build/cc/BasicCC.d.ts +0 -191
  604. package/build/cc/BasicCC.d.ts.map +0 -1
  605. package/build/cc/BasicCC.js +0 -393
  606. package/build/cc/BasicCC.js.map +0 -1
  607. package/build/cc/BatteryCC.d.ts +0 -406
  608. package/build/cc/BatteryCC.d.ts.map +0 -1
  609. package/build/cc/BatteryCC.js +0 -516
  610. package/build/cc/BatteryCC.js.map +0 -1
  611. package/build/cc/BinarySensorCC.d.ts +0 -122
  612. package/build/cc/BinarySensorCC.d.ts.map +0 -1
  613. package/build/cc/BinarySensorCC.js +0 -420
  614. package/build/cc/BinarySensorCC.js.map +0 -1
  615. package/build/cc/BinarySwitchCC.d.ts +0 -139
  616. package/build/cc/BinarySwitchCC.d.ts.map +0 -1
  617. package/build/cc/BinarySwitchCC.js +0 -365
  618. package/build/cc/BinarySwitchCC.js.map +0 -1
  619. package/build/cc/CRC16CC.d.ts +0 -29
  620. package/build/cc/CRC16CC.d.ts.map +0 -1
  621. package/build/cc/CRC16CC.js +0 -126
  622. package/build/cc/CRC16CC.js.map +0 -1
  623. package/build/cc/CentralSceneCC.d.ts +0 -210
  624. package/build/cc/CentralSceneCC.d.ts.map +0 -1
  625. package/build/cc/CentralSceneCC.js +0 -453
  626. package/build/cc/CentralSceneCC.js.map +0 -1
  627. package/build/cc/ClimateControlScheduleCC.d.ts +0 -177
  628. package/build/cc/ClimateControlScheduleCC.d.ts.map +0 -1
  629. package/build/cc/ClimateControlScheduleCC.js +0 -469
  630. package/build/cc/ClimateControlScheduleCC.js.map +0 -1
  631. package/build/cc/ClockCC.d.ts +0 -47
  632. package/build/cc/ClockCC.d.ts.map +0 -1
  633. package/build/cc/ClockCC.js +0 -208
  634. package/build/cc/ClockCC.js.map +0 -1
  635. package/build/cc/ColorSwitchCC.d.ts +0 -339
  636. package/build/cc/ColorSwitchCC.d.ts.map +0 -1
  637. package/build/cc/ColorSwitchCC.js +0 -1152
  638. package/build/cc/ColorSwitchCC.js.map +0 -1
  639. package/build/cc/ConfigurationCC.d.ts +0 -396
  640. package/build/cc/ConfigurationCC.d.ts.map +0 -1
  641. package/build/cc/ConfigurationCC.js +0 -2458
  642. package/build/cc/ConfigurationCC.js.map +0 -1
  643. package/build/cc/DeviceResetLocallyCC.d.ts +0 -17
  644. package/build/cc/DeviceResetLocallyCC.d.ts.map +0 -1
  645. package/build/cc/DeviceResetLocallyCC.js +0 -76
  646. package/build/cc/DeviceResetLocallyCC.js.map +0 -1
  647. package/build/cc/DoorLockCC.d.ts +0 -837
  648. package/build/cc/DoorLockCC.d.ts.map +0 -1
  649. package/build/cc/DoorLockCC.js +0 -1273
  650. package/build/cc/DoorLockCC.js.map +0 -1
  651. package/build/cc/DoorLockLoggingCC.d.ts +0 -77
  652. package/build/cc/DoorLockLoggingCC.d.ts.map +0 -1
  653. package/build/cc/DoorLockLoggingCC.js +0 -319
  654. package/build/cc/DoorLockLoggingCC.js.map +0 -1
  655. package/build/cc/EnergyProductionCC.d.ts +0 -77
  656. package/build/cc/EnergyProductionCC.d.ts.map +0 -1
  657. package/build/cc/EnergyProductionCC.js +0 -216
  658. package/build/cc/EnergyProductionCC.js.map +0 -1
  659. package/build/cc/EntryControlCC.d.ts +0 -231
  660. package/build/cc/EntryControlCC.d.ts.map +0 -1
  661. package/build/cc/EntryControlCC.js +0 -607
  662. package/build/cc/EntryControlCC.js.map +0 -1
  663. package/build/cc/FirmwareUpdateMetaDataCC.d.ts +0 -359
  664. package/build/cc/FirmwareUpdateMetaDataCC.d.ts.map +0 -1
  665. package/build/cc/FirmwareUpdateMetaDataCC.js +0 -1145
  666. package/build/cc/FirmwareUpdateMetaDataCC.js.map +0 -1
  667. package/build/cc/HailCC.d.ts +0 -6
  668. package/build/cc/HailCC.d.ts.map +0 -1
  669. package/build/cc/HailCC.js +0 -24
  670. package/build/cc/HailCC.js.map +0 -1
  671. package/build/cc/HumidityControlModeCC.d.ts +0 -111
  672. package/build/cc/HumidityControlModeCC.d.ts.map +0 -1
  673. package/build/cc/HumidityControlModeCC.js +0 -308
  674. package/build/cc/HumidityControlModeCC.js.map +0 -1
  675. package/build/cc/HumidityControlOperatingStateCC.d.ts +0 -60
  676. package/build/cc/HumidityControlOperatingStateCC.d.ts.map +0 -1
  677. package/build/cc/HumidityControlOperatingStateCC.js +0 -140
  678. package/build/cc/HumidityControlOperatingStateCC.js.map +0 -1
  679. package/build/cc/HumidityControlSetpointCC.d.ts +0 -209
  680. package/build/cc/HumidityControlSetpointCC.d.ts.map +0 -1
  681. package/build/cc/HumidityControlSetpointCC.js +0 -648
  682. package/build/cc/HumidityControlSetpointCC.js.map +0 -1
  683. package/build/cc/InclusionControllerCC.d.ts +0 -42
  684. package/build/cc/InclusionControllerCC.d.ts.map +0 -1
  685. package/build/cc/InclusionControllerCC.js +0 -136
  686. package/build/cc/InclusionControllerCC.js.map +0 -1
  687. package/build/cc/IndicatorCC.d.ts +0 -338
  688. package/build/cc/IndicatorCC.d.ts.map +0 -1
  689. package/build/cc/IndicatorCC.js +0 -1320
  690. package/build/cc/IndicatorCC.js.map +0 -1
  691. package/build/cc/IrrigationCC.d.ts +0 -1496
  692. package/build/cc/IrrigationCC.d.ts.map +0 -1
  693. package/build/cc/IrrigationCC.js +0 -2041
  694. package/build/cc/IrrigationCC.js.map +0 -1
  695. package/build/cc/LanguageCC.d.ts +0 -101
  696. package/build/cc/LanguageCC.d.ts.map +0 -1
  697. package/build/cc/LanguageCC.js +0 -246
  698. package/build/cc/LanguageCC.js.map +0 -1
  699. package/build/cc/LockCC.d.ts +0 -73
  700. package/build/cc/LockCC.d.ts.map +0 -1
  701. package/build/cc/LockCC.js +0 -200
  702. package/build/cc/LockCC.js.map +0 -1
  703. package/build/cc/ManufacturerProprietaryCC.d.ts +0 -32
  704. package/build/cc/ManufacturerProprietaryCC.d.ts.map +0 -1
  705. package/build/cc/ManufacturerProprietaryCC.js +0 -204
  706. package/build/cc/ManufacturerProprietaryCC.js.map +0 -1
  707. package/build/cc/ManufacturerSpecificCC.d.ts +0 -171
  708. package/build/cc/ManufacturerSpecificCC.d.ts.map +0 -1
  709. package/build/cc/ManufacturerSpecificCC.js +0 -318
  710. package/build/cc/ManufacturerSpecificCC.js.map +0 -1
  711. package/build/cc/MeterCC.d.ts +0 -318
  712. package/build/cc/MeterCC.d.ts.map +0 -1
  713. package/build/cc/MeterCC.js +0 -1312
  714. package/build/cc/MeterCC.js.map +0 -1
  715. package/build/cc/MultiChannelAssociationCC.d.ts +0 -241
  716. package/build/cc/MultiChannelAssociationCC.d.ts.map +0 -1
  717. package/build/cc/MultiChannelAssociationCC.js +0 -1007
  718. package/build/cc/MultiChannelAssociationCC.js.map +0 -1
  719. package/build/cc/MultiChannelCC.d.ts +0 -394
  720. package/build/cc/MultiChannelCC.d.ts.map +0 -1
  721. package/build/cc/MultiChannelCC.js +0 -1130
  722. package/build/cc/MultiChannelCC.js.map +0 -1
  723. package/build/cc/MultiCommandCC.d.ts +0 -27
  724. package/build/cc/MultiCommandCC.d.ts.map +0 -1
  725. package/build/cc/MultiCommandCC.js +0 -145
  726. package/build/cc/MultiCommandCC.js.map +0 -1
  727. package/build/cc/MultilevelSensorCC.d.ts +0 -185
  728. package/build/cc/MultilevelSensorCC.d.ts.map +0 -1
  729. package/build/cc/MultilevelSensorCC.js +0 -756
  730. package/build/cc/MultilevelSensorCC.js.map +0 -1
  731. package/build/cc/MultilevelSwitchCC.d.ts +0 -357
  732. package/build/cc/MultilevelSwitchCC.d.ts.map +0 -1
  733. package/build/cc/MultilevelSwitchCC.js +0 -813
  734. package/build/cc/MultilevelSwitchCC.js.map +0 -1
  735. package/build/cc/NoOperationCC.d.ts +0 -9
  736. package/build/cc/NoOperationCC.d.ts.map +0 -1
  737. package/build/cc/NoOperationCC.js +0 -42
  738. package/build/cc/NoOperationCC.js.map +0 -1
  739. package/build/cc/NodeNamingCC.d.ts +0 -118
  740. package/build/cc/NodeNamingCC.d.ts.map +0 -1
  741. package/build/cc/NodeNamingCC.js +0 -348
  742. package/build/cc/NodeNamingCC.js.map +0 -1
  743. package/build/cc/NotificationCC.d.ts +0 -479
  744. package/build/cc/NotificationCC.d.ts.map +0 -1
  745. package/build/cc/NotificationCC.js +0 -1379
  746. package/build/cc/NotificationCC.js.map +0 -1
  747. package/build/cc/PowerlevelCC.d.ts +0 -82
  748. package/build/cc/PowerlevelCC.d.ts.map +0 -1
  749. package/build/cc/PowerlevelCC.js +0 -488
  750. package/build/cc/PowerlevelCC.js.map +0 -1
  751. package/build/cc/ProtectionCC.d.ts +0 -325
  752. package/build/cc/ProtectionCC.d.ts.map +0 -1
  753. package/build/cc/ProtectionCC.js +0 -672
  754. package/build/cc/ProtectionCC.js.map +0 -1
  755. package/build/cc/SceneActivationCC.d.ts +0 -89
  756. package/build/cc/SceneActivationCC.d.ts.map +0 -1
  757. package/build/cc/SceneActivationCC.js +0 -169
  758. package/build/cc/SceneActivationCC.js.map +0 -1
  759. package/build/cc/SceneActuatorConfigurationCC.d.ts +0 -120
  760. package/build/cc/SceneActuatorConfigurationCC.d.ts.map +0 -1
  761. package/build/cc/SceneActuatorConfigurationCC.js +0 -377
  762. package/build/cc/SceneActuatorConfigurationCC.js.map +0 -1
  763. package/build/cc/SceneControllerConfigurationCC.d.ts +0 -129
  764. package/build/cc/SceneControllerConfigurationCC.d.ts.map +0 -1
  765. package/build/cc/SceneControllerConfigurationCC.js +0 -449
  766. package/build/cc/SceneControllerConfigurationCC.js.map +0 -1
  767. package/build/cc/ScheduleEntryLockCC.d.ts +0 -434
  768. package/build/cc/ScheduleEntryLockCC.d.ts.map +0 -1
  769. package/build/cc/ScheduleEntryLockCC.js +0 -1829
  770. package/build/cc/ScheduleEntryLockCC.js.map +0 -1
  771. package/build/cc/Security2CC.d.ts +0 -251
  772. package/build/cc/Security2CC.d.ts.map +0 -1
  773. package/build/cc/Security2CC.js +0 -1817
  774. package/build/cc/Security2CC.js.map +0 -1
  775. package/build/cc/SecurityCC.d.ts +0 -128
  776. package/build/cc/SecurityCC.d.ts.map +0 -1
  777. package/build/cc/SecurityCC.js +0 -803
  778. package/build/cc/SecurityCC.js.map +0 -1
  779. package/build/cc/SoundSwitchCC.d.ts +0 -232
  780. package/build/cc/SoundSwitchCC.d.ts.map +0 -1
  781. package/build/cc/SoundSwitchCC.js +0 -636
  782. package/build/cc/SoundSwitchCC.js.map +0 -1
  783. package/build/cc/SupervisionCC.d.ts +0 -104
  784. package/build/cc/SupervisionCC.d.ts.map +0 -1
  785. package/build/cc/SupervisionCC.js +0 -322
  786. package/build/cc/SupervisionCC.js.map +0 -1
  787. package/build/cc/ThermostatFanModeCC.d.ts +0 -141
  788. package/build/cc/ThermostatFanModeCC.d.ts.map +0 -1
  789. package/build/cc/ThermostatFanModeCC.js +0 -362
  790. package/build/cc/ThermostatFanModeCC.js.map +0 -1
  791. package/build/cc/ThermostatFanStateCC.d.ts +0 -60
  792. package/build/cc/ThermostatFanStateCC.d.ts.map +0 -1
  793. package/build/cc/ThermostatFanStateCC.js +0 -142
  794. package/build/cc/ThermostatFanStateCC.js.map +0 -1
  795. package/build/cc/ThermostatModeCC.d.ts +0 -150
  796. package/build/cc/ThermostatModeCC.d.ts.map +0 -1
  797. package/build/cc/ThermostatModeCC.js +0 -429
  798. package/build/cc/ThermostatModeCC.js.map +0 -1
  799. package/build/cc/ThermostatOperatingStateCC.d.ts +0 -61
  800. package/build/cc/ThermostatOperatingStateCC.d.ts.map +0 -1
  801. package/build/cc/ThermostatOperatingStateCC.js +0 -138
  802. package/build/cc/ThermostatOperatingStateCC.js.map +0 -1
  803. package/build/cc/ThermostatSetbackCC.d.ts +0 -46
  804. package/build/cc/ThermostatSetbackCC.d.ts.map +0 -1
  805. package/build/cc/ThermostatSetbackCC.js +0 -247
  806. package/build/cc/ThermostatSetbackCC.js.map +0 -1
  807. package/build/cc/ThermostatSetpointCC.d.ts +0 -197
  808. package/build/cc/ThermostatSetpointCC.d.ts.map +0 -1
  809. package/build/cc/ThermostatSetpointCC.js +0 -658
  810. package/build/cc/ThermostatSetpointCC.js.map +0 -1
  811. package/build/cc/TimeCC.d.ts +0 -88
  812. package/build/cc/TimeCC.d.ts.map +0 -1
  813. package/build/cc/TimeCC.js +0 -454
  814. package/build/cc/TimeCC.js.map +0 -1
  815. package/build/cc/TimeParametersCC.d.ts +0 -72
  816. package/build/cc/TimeParametersCC.d.ts.map +0 -1
  817. package/build/cc/TimeParametersCC.js +0 -303
  818. package/build/cc/TimeParametersCC.js.map +0 -1
  819. package/build/cc/TransportServiceCC.d.ts +0 -107
  820. package/build/cc/TransportServiceCC.d.ts.map +0 -1
  821. package/build/cc/TransportServiceCC.js +0 -426
  822. package/build/cc/TransportServiceCC.js.map +0 -1
  823. package/build/cc/UserCodeCC.d.ts +0 -683
  824. package/build/cc/UserCodeCC.d.ts.map +0 -1
  825. package/build/cc/UserCodeCC.js +0 -1699
  826. package/build/cc/UserCodeCC.js.map +0 -1
  827. package/build/cc/VersionCC.d.ts +0 -469
  828. package/build/cc/VersionCC.d.ts.map +0 -1
  829. package/build/cc/VersionCC.js +0 -865
  830. package/build/cc/VersionCC.js.map +0 -1
  831. package/build/cc/WakeUpCC.d.ts +0 -150
  832. package/build/cc/WakeUpCC.d.ts.map +0 -1
  833. package/build/cc/WakeUpCC.js +0 -441
  834. package/build/cc/WakeUpCC.js.map +0 -1
  835. package/build/cc/WindowCoveringCC.d.ts +0 -315
  836. package/build/cc/WindowCoveringCC.d.ts.map +0 -1
  837. package/build/cc/WindowCoveringCC.js +0 -783
  838. package/build/cc/WindowCoveringCC.js.map +0 -1
  839. package/build/cc/ZWaveLongRangeCC.d.ts +0 -4
  840. package/build/cc/ZWaveLongRangeCC.d.ts.map +0 -1
  841. package/build/cc/ZWaveLongRangeCC.js +0 -20
  842. package/build/cc/ZWaveLongRangeCC.js.map +0 -1
  843. package/build/cc/ZWavePlusCC.d.ts +0 -163
  844. package/build/cc/ZWavePlusCC.d.ts.map +0 -1
  845. package/build/cc/ZWavePlusCC.js +0 -270
  846. package/build/cc/ZWavePlusCC.js.map +0 -1
  847. package/build/cc/ZWaveProtocolCC.d.ts +0 -344
  848. package/build/cc/ZWaveProtocolCC.d.ts.map +0 -1
  849. package/build/cc/ZWaveProtocolCC.js +0 -1033
  850. package/build/cc/ZWaveProtocolCC.js.map +0 -1
  851. package/build/cc/index.d.ts +0 -132
  852. package/build/cc/index.d.ts.map +0 -1
  853. package/build/cc/index.js +0 -627
  854. package/build/cc/index.js.map +0 -1
  855. package/build/cc/manufacturerProprietary/Decorators.d.ts +0 -64
  856. package/build/cc/manufacturerProprietary/Decorators.d.ts.map +0 -1
  857. package/build/cc/manufacturerProprietary/Decorators.js +0 -83
  858. package/build/cc/manufacturerProprietary/Decorators.js.map +0 -1
  859. package/build/cc/manufacturerProprietary/FibaroCC.d.ts +0 -79
  860. package/build/cc/manufacturerProprietary/FibaroCC.d.ts.map +0 -1
  861. package/build/cc/manufacturerProprietary/FibaroCC.js +0 -392
  862. package/build/cc/manufacturerProprietary/FibaroCC.js.map +0 -1
  863. package/build/index.d.ts +0 -15
  864. package/build/index.d.ts.map +0 -1
  865. package/build/index.js +0 -52
  866. package/build/index.js.map +0 -1
  867. package/build/index_safe.d.ts +0 -3
  868. package/build/index_safe.d.ts.map +0 -1
  869. package/build/index_safe.js +0 -20
  870. package/build/index_safe.js.map +0 -1
  871. package/build/lib/API.d.ts +0 -271
  872. package/build/lib/API.d.ts.map +0 -1
  873. package/build/lib/API.js +0 -458
  874. package/build/lib/API.js.map +0 -1
  875. package/build/lib/CommandClass.d.ts +0 -234
  876. package/build/lib/CommandClass.d.ts.map +0 -1
  877. package/build/lib/CommandClass.js +0 -788
  878. package/build/lib/CommandClass.js.map +0 -1
  879. package/build/lib/CommandClassDecorators.d.ts +0 -112
  880. package/build/lib/CommandClassDecorators.d.ts.map +0 -1
  881. package/build/lib/CommandClassDecorators.js +0 -243
  882. package/build/lib/CommandClassDecorators.js.map +0 -1
  883. package/build/lib/EncapsulatingCommandClass.d.ts +0 -22
  884. package/build/lib/EncapsulatingCommandClass.d.ts.map +0 -1
  885. package/build/lib/EncapsulatingCommandClass.js +0 -61
  886. package/build/lib/EncapsulatingCommandClass.js.map +0 -1
  887. package/build/lib/ICommandClassContainer.d.ts.map +0 -1
  888. package/build/lib/ICommandClassContainer.js +0 -3
  889. package/build/lib/ICommandClassContainer.js.map +0 -1
  890. package/build/lib/NotificationEventPayload.d.ts +0 -10
  891. package/build/lib/NotificationEventPayload.d.ts.map +0 -1
  892. package/build/lib/NotificationEventPayload.js +0 -10
  893. package/build/lib/NotificationEventPayload.js.map +0 -1
  894. package/build/lib/Security2/Extension.d.ts.map +0 -1
  895. package/build/lib/Security2/Extension.js +0 -303
  896. package/build/lib/Security2/Extension.js.map +0 -1
  897. package/build/lib/Security2/shared.d.ts.map +0 -1
  898. package/build/lib/Security2/shared.js +0 -43
  899. package/build/lib/Security2/shared.js.map +0 -1
  900. package/build/lib/SetValueResult.d.ts.map +0 -1
  901. package/build/lib/SetValueResult.js +0 -60
  902. package/build/lib/SetValueResult.js.map +0 -1
  903. package/build/lib/Values.d.ts +0 -223
  904. package/build/lib/Values.d.ts.map +0 -1
  905. package/build/lib/Values.js +0 -172
  906. package/build/lib/Values.js.map +0 -1
  907. package/build/lib/_Types.d.ts.map +0 -1
  908. package/build/lib/_Types.js +0 -1443
  909. package/build/lib/_Types.js.map +0 -1
  910. package/build/lib/serializers.d.ts +0 -34
  911. package/build/lib/serializers.d.ts.map +0 -1
  912. package/build/lib/serializers.js +0 -107
  913. package/build/lib/serializers.js.map +0 -1
  914. package/build/lib/utils.d.ts +0 -17
  915. package/build/lib/utils.d.ts.map +0 -1
  916. package/build/lib/utils.js +0 -860
  917. package/build/lib/utils.js.map +0 -1
  918. /package/build/{lib → cjs/lib}/ICommandClassContainer.d.ts +0 -0
  919. /package/build/{lib → cjs/lib}/Security2/Extension.d.ts +0 -0
  920. /package/build/{lib → cjs/lib}/Security2/shared.d.ts +0 -0
  921. /package/build/{lib → cjs/lib}/SetValueResult.d.ts +0 -0
  922. /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