@zwave-js/cc 15.27.1 → 15.29.0

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 (327) hide show
  1. package/build/cjs/cc/AlarmSensorCC.js.map +2 -2
  2. package/build/cjs/cc/AssociationCC.js +6 -5
  3. package/build/cjs/cc/AssociationCC.js.map +2 -2
  4. package/build/cjs/cc/AssociationGroupInfoCC.js +5 -5
  5. package/build/cjs/cc/AssociationGroupInfoCC.js.map +2 -2
  6. package/build/cjs/cc/BarrierOperatorCC.js.map +2 -2
  7. package/build/cjs/cc/BasicCC.d.ts +4 -1
  8. package/build/cjs/cc/BasicCC.js +18 -0
  9. package/build/cjs/cc/BasicCC.js.map +3 -3
  10. package/build/cjs/cc/BasicWindowCoveringCC.js.map +2 -2
  11. package/build/cjs/cc/BatteryCC.js +18 -4
  12. package/build/cjs/cc/BatteryCC.js.map +2 -2
  13. package/build/cjs/cc/BinarySensorCC.js +5 -1
  14. package/build/cjs/cc/BinarySensorCC.js.map +2 -2
  15. package/build/cjs/cc/BinarySwitchCC.d.ts +4 -1
  16. package/build/cjs/cc/BinarySwitchCC.js +18 -0
  17. package/build/cjs/cc/BinarySwitchCC.js.map +3 -3
  18. package/build/cjs/cc/CRC16CC.d.ts +3 -2
  19. package/build/cjs/cc/CRC16CC.js +7 -1
  20. package/build/cjs/cc/CRC16CC.js.map +3 -3
  21. package/build/cjs/cc/CentralSceneCC.js.map +2 -2
  22. package/build/cjs/cc/ClimateControlScheduleCC.js.map +2 -2
  23. package/build/cjs/cc/ClockCC.js.map +2 -2
  24. package/build/cjs/cc/ColorSwitchCC.js +1 -4
  25. package/build/cjs/cc/ColorSwitchCC.js.map +2 -2
  26. package/build/cjs/cc/ConfigurationCC.js +16 -8
  27. package/build/cjs/cc/ConfigurationCC.js.map +2 -2
  28. package/build/cjs/cc/DeviceResetLocallyCC.js.map +2 -2
  29. package/build/cjs/cc/DoorLockCC.js +1 -1
  30. package/build/cjs/cc/DoorLockCC.js.map +2 -2
  31. package/build/cjs/cc/EntryControlCC.js.map +2 -2
  32. package/build/cjs/cc/FirmwareUpdateMetaDataCC.js +4 -16
  33. package/build/cjs/cc/FirmwareUpdateMetaDataCC.js.map +2 -2
  34. package/build/cjs/cc/HumidityControlSetpointCC.js +10 -4
  35. package/build/cjs/cc/HumidityControlSetpointCC.js.map +2 -2
  36. package/build/cjs/cc/IndicatorCC.js +5 -8
  37. package/build/cjs/cc/IndicatorCC.js.map +2 -2
  38. package/build/cjs/cc/IrrigationCC.js.map +2 -2
  39. package/build/cjs/cc/ManufacturerProprietaryCC.js.map +2 -2
  40. package/build/cjs/cc/ManufacturerSpecificCC._validateArgs.d.ts +1 -0
  41. package/build/cjs/cc/ManufacturerSpecificCC._validateArgs.js +13 -0
  42. package/build/cjs/cc/ManufacturerSpecificCC._validateArgs.js.map +2 -2
  43. package/build/cjs/cc/ManufacturerSpecificCC.d.ts +6 -4
  44. package/build/cjs/cc/ManufacturerSpecificCC.js +41 -8
  45. package/build/cjs/cc/ManufacturerSpecificCC.js.map +2 -2
  46. package/build/cjs/cc/MeterCC.js +18 -29
  47. package/build/cjs/cc/MeterCC.js.map +2 -2
  48. package/build/cjs/cc/MultiChannelAssociationCC.js +11 -7
  49. package/build/cjs/cc/MultiChannelAssociationCC.js.map +2 -2
  50. package/build/cjs/cc/MultiChannelCC.d.ts +3 -1
  51. package/build/cjs/cc/MultiChannelCC.js +21 -10
  52. package/build/cjs/cc/MultiChannelCC.js.map +3 -3
  53. package/build/cjs/cc/MultilevelSensorCC.js.map +2 -2
  54. package/build/cjs/cc/MultilevelSwitchCC.d.ts +5 -1
  55. package/build/cjs/cc/MultilevelSwitchCC.js +30 -0
  56. package/build/cjs/cc/MultilevelSwitchCC.js.map +3 -3
  57. package/build/cjs/cc/NotificationCC.js +29 -11
  58. package/build/cjs/cc/NotificationCC.js.map +2 -2
  59. package/build/cjs/cc/PowerlevelCC.js.map +1 -1
  60. package/build/cjs/cc/ProtectionCC.js +2 -0
  61. package/build/cjs/cc/ProtectionCC.js.map +2 -2
  62. package/build/cjs/cc/SceneActuatorConfigurationCC.js.map +2 -2
  63. package/build/cjs/cc/SceneControllerConfigurationCC.js.map +2 -2
  64. package/build/cjs/cc/ScheduleEntryLockCC.js.map +2 -2
  65. package/build/cjs/cc/Security2CC.d.ts +2 -1
  66. package/build/cjs/cc/Security2CC.js +31 -3
  67. package/build/cjs/cc/Security2CC.js.map +2 -2
  68. package/build/cjs/cc/SecurityCC.d.ts +3 -2
  69. package/build/cjs/cc/SecurityCC.js +7 -6
  70. package/build/cjs/cc/SecurityCC.js.map +2 -2
  71. package/build/cjs/cc/SoundSwitchCC.js +6 -6
  72. package/build/cjs/cc/SoundSwitchCC.js.map +2 -2
  73. package/build/cjs/cc/SupervisionCC.d.ts +2 -1
  74. package/build/cjs/cc/SupervisionCC.js +6 -0
  75. package/build/cjs/cc/SupervisionCC.js.map +3 -3
  76. package/build/cjs/cc/ThermostatFanModeCC.js.map +2 -2
  77. package/build/cjs/cc/ThermostatModeCC.js +1 -3
  78. package/build/cjs/cc/ThermostatModeCC.js.map +2 -2
  79. package/build/cjs/cc/ThermostatOperatingStateCC.js.map +2 -2
  80. package/build/cjs/cc/ThermostatSetpointCC.d.ts +4 -1
  81. package/build/cjs/cc/ThermostatSetpointCC.js +18 -0
  82. package/build/cjs/cc/ThermostatSetpointCC.js.map +3 -3
  83. package/build/cjs/cc/TimeCC.js.map +2 -2
  84. package/build/cjs/cc/TransportServiceCC.js.map +2 -2
  85. package/build/cjs/cc/UserCodeCC.js +3 -6
  86. package/build/cjs/cc/UserCodeCC.js.map +2 -2
  87. package/build/cjs/cc/UserCredentialCC.js +8 -6
  88. package/build/cjs/cc/UserCredentialCC.js.map +2 -2
  89. package/build/cjs/cc/VersionCC.js.map +2 -2
  90. package/build/cjs/cc/WindowCoveringCC.js +5 -1
  91. package/build/cjs/cc/WindowCoveringCC.js.map +2 -2
  92. package/build/cjs/cc/ZWaveProtocolCC.js +3 -11
  93. package/build/cjs/cc/ZWaveProtocolCC.js.map +2 -2
  94. package/build/cjs/cc/_CCValues.generated.d.ts +4 -4
  95. package/build/cjs/cc/_CCValues.generated.js +1 -1
  96. package/build/cjs/cc/_CCValues.generated.js.map +2 -2
  97. package/build/cjs/cc/index.d.ts +179 -179
  98. package/build/cjs/cc/index.js.map +1 -1
  99. package/build/cjs/cc/manufacturerProprietary/Decorators.js.map +2 -2
  100. package/build/cjs/lib/API.d.ts +3 -2
  101. package/build/cjs/lib/API.js.map +2 -2
  102. package/build/cjs/lib/CommandClass.d.ts +23 -1
  103. package/build/cjs/lib/CommandClass.js +63 -15
  104. package/build/cjs/lib/CommandClass.js.map +3 -3
  105. package/build/cjs/lib/CommandClassDecorators.js.map +2 -2
  106. package/build/cjs/lib/EncapsulatingCommandClass.js.map +2 -2
  107. package/build/cjs/lib/NotificationEventPayload.js.map +2 -2
  108. package/build/cjs/lib/Security2/Extension.js +1 -4
  109. package/build/cjs/lib/Security2/Extension.js.map +2 -2
  110. package/build/cjs/lib/Security2/shared.js.map +2 -2
  111. package/build/cjs/lib/SetValueResult.js.map +1 -1
  112. package/build/cjs/lib/Values.d.ts +1 -1
  113. package/build/cjs/lib/Values.js.map +2 -2
  114. package/build/cjs/lib/_CCAPI.generated.js.map +1 -1
  115. package/build/cjs/lib/_Types.d.ts +34 -30
  116. package/build/cjs/lib/_Types.js +7 -0
  117. package/build/cjs/lib/_Types.js.map +3 -3
  118. package/build/cjs/lib/serializers.js +1 -4
  119. package/build/cjs/lib/serializers.js.map +2 -2
  120. package/build/cjs/lib/utils.js.map +2 -2
  121. package/build/esm/cc/AlarmSensorCC.d.ts.map +1 -1
  122. package/build/esm/cc/AlarmSensorCC.js +1 -2
  123. package/build/esm/cc/AlarmSensorCC.js.map +1 -1
  124. package/build/esm/cc/AssociationCC.d.ts.map +1 -1
  125. package/build/esm/cc/AssociationCC.js +8 -7
  126. package/build/esm/cc/AssociationCC.js.map +1 -1
  127. package/build/esm/cc/AssociationGroupInfoCC.d.ts.map +1 -1
  128. package/build/esm/cc/AssociationGroupInfoCC.js +11 -12
  129. package/build/esm/cc/AssociationGroupInfoCC.js.map +1 -1
  130. package/build/esm/cc/BarrierOperatorCC.d.ts.map +1 -1
  131. package/build/esm/cc/BarrierOperatorCC.js +10 -9
  132. package/build/esm/cc/BarrierOperatorCC.js.map +1 -1
  133. package/build/esm/cc/BasicCC.d.ts +4 -1
  134. package/build/esm/cc/BasicCC.d.ts.map +1 -1
  135. package/build/esm/cc/BasicCC.js +30 -7
  136. package/build/esm/cc/BasicCC.js.map +1 -1
  137. package/build/esm/cc/BasicWindowCoveringCC.d.ts.map +1 -1
  138. package/build/esm/cc/BasicWindowCoveringCC.js +2 -5
  139. package/build/esm/cc/BasicWindowCoveringCC.js.map +1 -1
  140. package/build/esm/cc/BatteryCC.d.ts.map +1 -1
  141. package/build/esm/cc/BatteryCC.js +17 -14
  142. package/build/esm/cc/BatteryCC.js.map +1 -1
  143. package/build/esm/cc/BinarySensorCC.d.ts.map +1 -1
  144. package/build/esm/cc/BinarySensorCC.js +12 -7
  145. package/build/esm/cc/BinarySensorCC.js.map +1 -1
  146. package/build/esm/cc/BinarySwitchCC.d.ts +4 -1
  147. package/build/esm/cc/BinarySwitchCC.d.ts.map +1 -1
  148. package/build/esm/cc/BinarySwitchCC.js +31 -6
  149. package/build/esm/cc/BinarySwitchCC.js.map +1 -1
  150. package/build/esm/cc/CRC16CC.d.ts +3 -2
  151. package/build/esm/cc/CRC16CC.d.ts.map +1 -1
  152. package/build/esm/cc/CRC16CC.js +10 -4
  153. package/build/esm/cc/CRC16CC.js.map +1 -1
  154. package/build/esm/cc/CentralSceneCC.d.ts.map +1 -1
  155. package/build/esm/cc/CentralSceneCC.js +2 -1
  156. package/build/esm/cc/CentralSceneCC.js.map +1 -1
  157. package/build/esm/cc/ClimateControlScheduleCC.d.ts.map +1 -1
  158. package/build/esm/cc/ClimateControlScheduleCC.js +6 -2
  159. package/build/esm/cc/ClimateControlScheduleCC.js.map +1 -1
  160. package/build/esm/cc/ClockCC.d.ts.map +1 -1
  161. package/build/esm/cc/ClockCC.js +6 -2
  162. package/build/esm/cc/ClockCC.js.map +1 -1
  163. package/build/esm/cc/ColorSwitchCC.d.ts.map +1 -1
  164. package/build/esm/cc/ColorSwitchCC.js +17 -20
  165. package/build/esm/cc/ColorSwitchCC.js.map +1 -1
  166. package/build/esm/cc/ConfigurationCC.d.ts.map +1 -1
  167. package/build/esm/cc/ConfigurationCC.js +37 -33
  168. package/build/esm/cc/ConfigurationCC.js.map +1 -1
  169. package/build/esm/cc/DeviceResetLocallyCC.d.ts.map +1 -1
  170. package/build/esm/cc/DeviceResetLocallyCC.js +1 -2
  171. package/build/esm/cc/DeviceResetLocallyCC.js.map +1 -1
  172. package/build/esm/cc/DoorLockCC.d.ts.map +1 -1
  173. package/build/esm/cc/DoorLockCC.js +26 -30
  174. package/build/esm/cc/DoorLockCC.js.map +1 -1
  175. package/build/esm/cc/EntryControlCC.d.ts.map +1 -1
  176. package/build/esm/cc/EntryControlCC.js +10 -7
  177. package/build/esm/cc/EntryControlCC.js.map +1 -1
  178. package/build/esm/cc/FirmwareUpdateMetaDataCC.d.ts.map +1 -1
  179. package/build/esm/cc/FirmwareUpdateMetaDataCC.js +15 -27
  180. package/build/esm/cc/FirmwareUpdateMetaDataCC.js.map +1 -1
  181. package/build/esm/cc/HumidityControlSetpointCC.d.ts.map +1 -1
  182. package/build/esm/cc/HumidityControlSetpointCC.js +8 -9
  183. package/build/esm/cc/HumidityControlSetpointCC.js.map +1 -1
  184. package/build/esm/cc/IndicatorCC.d.ts.map +1 -1
  185. package/build/esm/cc/IndicatorCC.js +27 -42
  186. package/build/esm/cc/IndicatorCC.js.map +1 -1
  187. package/build/esm/cc/IrrigationCC.d.ts.map +1 -1
  188. package/build/esm/cc/IrrigationCC.js +8 -6
  189. package/build/esm/cc/IrrigationCC.js.map +1 -1
  190. package/build/esm/cc/ManufacturerProprietaryCC.d.ts.map +1 -1
  191. package/build/esm/cc/ManufacturerProprietaryCC.js +1 -2
  192. package/build/esm/cc/ManufacturerProprietaryCC.js.map +1 -1
  193. package/build/esm/cc/ManufacturerSpecificCC._validateArgs.d.ts +1 -0
  194. package/build/esm/cc/ManufacturerSpecificCC._validateArgs.d.ts.map +1 -1
  195. package/build/esm/cc/ManufacturerSpecificCC._validateArgs.js +10 -0
  196. package/build/esm/cc/ManufacturerSpecificCC._validateArgs.js.map +1 -1
  197. package/build/esm/cc/ManufacturerSpecificCC.d.ts +6 -4
  198. package/build/esm/cc/ManufacturerSpecificCC.d.ts.map +1 -1
  199. package/build/esm/cc/ManufacturerSpecificCC.js +54 -17
  200. package/build/esm/cc/ManufacturerSpecificCC.js.map +1 -1
  201. package/build/esm/cc/MeterCC.d.ts.map +1 -1
  202. package/build/esm/cc/MeterCC.js +28 -38
  203. package/build/esm/cc/MeterCC.js.map +1 -1
  204. package/build/esm/cc/MultiChannelAssociationCC.d.ts.map +1 -1
  205. package/build/esm/cc/MultiChannelAssociationCC.js +15 -20
  206. package/build/esm/cc/MultiChannelAssociationCC.js.map +1 -1
  207. package/build/esm/cc/MultiChannelCC.d.ts +3 -1
  208. package/build/esm/cc/MultiChannelCC.d.ts.map +1 -1
  209. package/build/esm/cc/MultiChannelCC.js +28 -22
  210. package/build/esm/cc/MultiChannelCC.js.map +1 -1
  211. package/build/esm/cc/MultilevelSensorCC.d.ts.map +1 -1
  212. package/build/esm/cc/MultilevelSensorCC.js +11 -11
  213. package/build/esm/cc/MultilevelSensorCC.js.map +1 -1
  214. package/build/esm/cc/MultilevelSwitchCC.d.ts +5 -1
  215. package/build/esm/cc/MultilevelSwitchCC.d.ts.map +1 -1
  216. package/build/esm/cc/MultilevelSwitchCC.js +56 -16
  217. package/build/esm/cc/MultilevelSwitchCC.js.map +1 -1
  218. package/build/esm/cc/NotificationCC.d.ts.map +1 -1
  219. package/build/esm/cc/NotificationCC.js +66 -55
  220. package/build/esm/cc/NotificationCC.js.map +1 -1
  221. package/build/esm/cc/PowerlevelCC.d.ts.map +1 -1
  222. package/build/esm/cc/ProtectionCC.d.ts.map +1 -1
  223. package/build/esm/cc/ProtectionCC.js +13 -9
  224. package/build/esm/cc/ProtectionCC.js.map +1 -1
  225. package/build/esm/cc/SceneActuatorConfigurationCC.d.ts.map +1 -1
  226. package/build/esm/cc/SceneActuatorConfigurationCC.js +5 -8
  227. package/build/esm/cc/SceneActuatorConfigurationCC.js.map +1 -1
  228. package/build/esm/cc/SceneControllerConfigurationCC.d.ts.map +1 -1
  229. package/build/esm/cc/SceneControllerConfigurationCC.js +10 -16
  230. package/build/esm/cc/SceneControllerConfigurationCC.js.map +1 -1
  231. package/build/esm/cc/ScheduleEntryLockCC.d.ts.map +1 -1
  232. package/build/esm/cc/ScheduleEntryLockCC.js +13 -20
  233. package/build/esm/cc/ScheduleEntryLockCC.js.map +1 -1
  234. package/build/esm/cc/Security2CC.d.ts +2 -1
  235. package/build/esm/cc/Security2CC.d.ts.map +1 -1
  236. package/build/esm/cc/Security2CC.js +68 -32
  237. package/build/esm/cc/Security2CC.js.map +1 -1
  238. package/build/esm/cc/SecurityCC.d.ts +3 -2
  239. package/build/esm/cc/SecurityCC.d.ts.map +1 -1
  240. package/build/esm/cc/SecurityCC.js +16 -11
  241. package/build/esm/cc/SecurityCC.js.map +1 -1
  242. package/build/esm/cc/SoundSwitchCC.js +2 -2
  243. package/build/esm/cc/SoundSwitchCC.js.map +1 -1
  244. package/build/esm/cc/SupervisionCC.d.ts +2 -1
  245. package/build/esm/cc/SupervisionCC.d.ts.map +1 -1
  246. package/build/esm/cc/SupervisionCC.js +13 -6
  247. package/build/esm/cc/SupervisionCC.js.map +1 -1
  248. package/build/esm/cc/ThermostatFanModeCC.d.ts.map +1 -1
  249. package/build/esm/cc/ThermostatFanModeCC.js +1 -2
  250. package/build/esm/cc/ThermostatFanModeCC.js.map +1 -1
  251. package/build/esm/cc/ThermostatModeCC.d.ts.map +1 -1
  252. package/build/esm/cc/ThermostatModeCC.js +1 -3
  253. package/build/esm/cc/ThermostatModeCC.js.map +1 -1
  254. package/build/esm/cc/ThermostatOperatingStateCC.d.ts.map +1 -1
  255. package/build/esm/cc/ThermostatOperatingStateCC.js +1 -2
  256. package/build/esm/cc/ThermostatOperatingStateCC.js.map +1 -1
  257. package/build/esm/cc/ThermostatSetpointCC.d.ts +4 -1
  258. package/build/esm/cc/ThermostatSetpointCC.d.ts.map +1 -1
  259. package/build/esm/cc/ThermostatSetpointCC.js +31 -19
  260. package/build/esm/cc/ThermostatSetpointCC.js.map +1 -1
  261. package/build/esm/cc/TimeCC.d.ts.map +1 -1
  262. package/build/esm/cc/TimeCC.js +6 -2
  263. package/build/esm/cc/TimeCC.js.map +1 -1
  264. package/build/esm/cc/TransportServiceCC.d.ts.map +1 -1
  265. package/build/esm/cc/TransportServiceCC.js +8 -8
  266. package/build/esm/cc/TransportServiceCC.js.map +1 -1
  267. package/build/esm/cc/UserCodeCC.d.ts.map +1 -1
  268. package/build/esm/cc/UserCodeCC.js +23 -30
  269. package/build/esm/cc/UserCodeCC.js.map +1 -1
  270. package/build/esm/cc/UserCredentialCC.d.ts.map +1 -1
  271. package/build/esm/cc/UserCredentialCC.js +49 -60
  272. package/build/esm/cc/UserCredentialCC.js.map +1 -1
  273. package/build/esm/cc/VersionCC.js +3 -3
  274. package/build/esm/cc/VersionCC.js.map +1 -1
  275. package/build/esm/cc/WindowCoveringCC.d.ts.map +1 -1
  276. package/build/esm/cc/WindowCoveringCC.js +10 -9
  277. package/build/esm/cc/WindowCoveringCC.js.map +1 -1
  278. package/build/esm/cc/ZWaveProtocolCC.d.ts.map +1 -1
  279. package/build/esm/cc/ZWaveProtocolCC.js +5 -26
  280. package/build/esm/cc/ZWaveProtocolCC.js.map +1 -1
  281. package/build/esm/cc/_CCValues.generated.d.ts +4 -4
  282. package/build/esm/cc/_CCValues.generated.d.ts.map +1 -1
  283. package/build/esm/cc/_CCValues.generated.js +638 -679
  284. package/build/esm/cc/_CCValues.generated.js.map +1 -1
  285. package/build/esm/cc/index.d.ts +179 -179
  286. package/build/esm/cc/index.d.ts.map +1 -1
  287. package/build/esm/cc/index.js +124 -124
  288. package/build/esm/cc/index.js.map +1 -1
  289. package/build/esm/cc/manufacturerProprietary/Decorators.d.ts.map +1 -1
  290. package/build/esm/cc/manufacturerProprietary/Decorators.js.map +1 -1
  291. package/build/esm/lib/API.d.ts +3 -2
  292. package/build/esm/lib/API.d.ts.map +1 -1
  293. package/build/esm/lib/API.js +1 -1
  294. package/build/esm/lib/API.js.map +1 -1
  295. package/build/esm/lib/CommandClass.d.ts +23 -1
  296. package/build/esm/lib/CommandClass.d.ts.map +1 -1
  297. package/build/esm/lib/CommandClass.js +61 -20
  298. package/build/esm/lib/CommandClass.js.map +1 -1
  299. package/build/esm/lib/CommandClassDecorators.d.ts.map +1 -1
  300. package/build/esm/lib/CommandClassDecorators.js +1 -2
  301. package/build/esm/lib/CommandClassDecorators.js.map +1 -1
  302. package/build/esm/lib/EncapsulatingCommandClass.d.ts.map +1 -1
  303. package/build/esm/lib/EncapsulatingCommandClass.js.map +1 -1
  304. package/build/esm/lib/NotificationEventPayload.d.ts.map +1 -1
  305. package/build/esm/lib/NotificationEventPayload.js.map +1 -1
  306. package/build/esm/lib/Security2/Extension.d.ts.map +1 -1
  307. package/build/esm/lib/Security2/Extension.js +2 -6
  308. package/build/esm/lib/Security2/Extension.js.map +1 -1
  309. package/build/esm/lib/Security2/shared.d.ts.map +1 -1
  310. package/build/esm/lib/Security2/shared.js.map +1 -1
  311. package/build/esm/lib/SetValueResult.d.ts.map +1 -1
  312. package/build/esm/lib/Values.d.ts +1 -1
  313. package/build/esm/lib/Values.d.ts.map +1 -1
  314. package/build/esm/lib/Values.js.map +1 -1
  315. package/build/esm/lib/_CCAPI.generated.d.ts.map +1 -1
  316. package/build/esm/lib/_Types.d.ts +34 -30
  317. package/build/esm/lib/_Types.d.ts.map +1 -1
  318. package/build/esm/lib/_Types.js +5 -0
  319. package/build/esm/lib/_Types.js.map +1 -1
  320. package/build/esm/lib/serializers.d.ts.map +1 -1
  321. package/build/esm/lib/serializers.js +1 -4
  322. package/build/esm/lib/serializers.js.map +1 -1
  323. package/build/esm/lib/traits.d.ts.map +1 -1
  324. package/build/esm/lib/utils.d.ts.map +1 -1
  325. package/build/esm/lib/utils.js +25 -31
  326. package/build/esm/lib/utils.js.map +1 -1
  327. package/package.json +7 -7
@@ -4,7 +4,7 @@ const { validateArgs_UserCredentialCCAPI_setUser, validateArgs_UserCredentialCCA
4
4
  import { CommandClasses, MessagePriority, ZWaveError, ZWaveErrorCodes, encodeBitMask, parseBitMask, validatePayload, } from "@zwave-js/core";
5
5
  import { Bytes, getEnumMemberName, pick, stringToUint8ArrayUTF16BE, uint8ArrayToStringUTF16BE, } from "@zwave-js/shared";
6
6
  import { CCAPI, PhysicalCCAPI } from "../lib/API.js";
7
- import { CommandClass, } from "../lib/CommandClass.js";
7
+ import { CommandClass, getEffectiveCCVersion, } from "../lib/CommandClass.js";
8
8
  import { API, CCCommand, ccValueProperty, ccValues, commandClass, expectedCCResponse, implementedVersion, useSupervision, } from "../lib/CommandClassDecorators.js";
9
9
  import { UserCredentialAdminCodeOperationResult, UserCredentialCommand, UserCredentialCredentialReportType, UserCredentialKeyLockerEntryType, UserCredentialLearnStatus, UserCredentialModifierType, UserCredentialNameEncoding, UserCredentialOperationType, UserCredentialRule, UserCredentialType, UserCredentialUserReportType, UserCredentialUserType, } from "../lib/_Types.js";
10
10
  function credentialToLogString(credential) {
@@ -141,8 +141,7 @@ let UserCredentialCCAPI = (() => {
141
141
  }
142
142
  case UserCredentialCommand.CredentialChecksumGet:
143
143
  case UserCredentialCommand.CredentialChecksumReport: {
144
- return this.tryGetValueDB()?.getValue(UserCredentialCCValues.supportsCredentialChecksum
145
- .endpoint(this.endpoint.index));
144
+ return this.tryGetValueDB()?.getValue(UserCredentialCCValues.supportsCredentialChecksum.endpoint(this.endpoint.index));
146
145
  }
147
146
  case UserCredentialCommand.AdminPinCodeSet:
148
147
  case UserCredentialCommand.AdminPinCodeGet:
@@ -375,11 +374,7 @@ let UserCredentialCCAPI = (() => {
375
374
  });
376
375
  const response = await this.host.sendCommand(cc, this.commandOptions);
377
376
  if (response) {
378
- return pick(response, [
379
- "occupied",
380
- "entryType",
381
- "entrySlot",
382
- ]);
377
+ return pick(response, ["occupied", "entryType", "entrySlot"]);
383
378
  }
384
379
  }
385
380
  async sendUserCapabilitiesReport(options) {
@@ -730,7 +725,8 @@ let UserCredentialCC = (() => {
730
725
  break; // No credential found, stop iterating
731
726
  nextCredType = cred.nextCredentialType ?? UserCredentialType.None;
732
727
  nextCredSlot = cred.nextCredentialSlot ?? 0;
733
- } while (nextCredType !== UserCredentialType.None || nextCredSlot !== 0);
728
+ } while (nextCredType !== UserCredentialType.None
729
+ || nextCredSlot !== 0);
734
730
  }
735
731
  static getSupportedUsersCached(ctx, endpoint) {
736
732
  return ctx
@@ -984,7 +980,9 @@ let UserCredentialCCCredentialCapabilitiesReport = (() => {
984
980
  persistValues(ctx) {
985
981
  if (!super.persistValues(ctx))
986
982
  return false;
987
- this.setValue(ctx, UserCredentialCCValues.supportedCredentialTypes, [...this.credentialTypes.keys()]);
983
+ this.setValue(ctx, UserCredentialCCValues.supportedCredentialTypes, [
984
+ ...this.credentialTypes.keys(),
985
+ ]);
988
986
  for (const [credentialType, capability] of this.credentialTypes) {
989
987
  this.setValue(ctx, UserCredentialCCValues.credentialCapabilities(credentialType), capability);
990
988
  }
@@ -993,9 +991,10 @@ let UserCredentialCCCredentialCapabilitiesReport = (() => {
993
991
  serialize(ctx) {
994
992
  const n = this.credentialTypes.size;
995
993
  this.payload = Bytes.alloc(2 + n * 9);
996
- this.payload[0] = (this.supportsCredentialChecksum ? 0x80 : 0)
997
- | (this.supportsAdminCode ? 0x40 : 0)
998
- | (this.supportsAdminCodeDeactivation ? 0x20 : 0);
994
+ this.payload[0] =
995
+ (this.supportsCredentialChecksum ? 0x80 : 0)
996
+ | (this.supportsAdminCode ? 0x40 : 0)
997
+ | (this.supportsAdminCodeDeactivation ? 0x20 : 0);
999
998
  this.payload[1] = n;
1000
999
  const credTypeOff = 2;
1001
1000
  const clSupportOff = credTypeOff + n;
@@ -1029,7 +1028,8 @@ let UserCredentialCCCredentialCapabilitiesReport = (() => {
1029
1028
  "admin code deactivation support": this.supportsAdminCodeDeactivation,
1030
1029
  };
1031
1030
  for (const [credentialType, ct] of this.credentialTypes) {
1032
- message[`credential type ${getEnumMemberName(UserCredentialType, credentialType)}`] = `slots: ${ct.numberOfCredentialSlots}, length: ${ct.minCredentialLength}-${ct.maxCredentialLength}`;
1031
+ message[`credential type ${getEnumMemberName(UserCredentialType, credentialType)}`] =
1032
+ `slots: ${ct.numberOfCredentialSlots}, length: ${ct.minCredentialLength}-${ct.maxCredentialLength}`;
1033
1033
  }
1034
1034
  return {
1035
1035
  ...super.toLogEntry(ctx),
@@ -1109,6 +1109,9 @@ let UserCredentialCCKeyLockerCapabilitiesReport = (() => {
1109
1109
  persistValues(ctx) {
1110
1110
  if (!super.persistValues(ctx))
1111
1111
  return false;
1112
+ // This command only exists in V2. Ignore it if the device advertises a lower version.
1113
+ if (getEffectiveCCVersion(ctx, this) < 2)
1114
+ return true;
1112
1115
  this.setValue(ctx, UserCredentialCCValues.supportedKeyLockerEntryTypes, [...this.keyLockerCapabilities.keys()]);
1113
1116
  for (const [entryType, capability] of this.keyLockerCapabilities) {
1114
1117
  this.setValue(ctx, UserCredentialCCValues.keyLockerCapabilities(entryType), capability);
@@ -1136,7 +1139,8 @@ let UserCredentialCCKeyLockerCapabilitiesReport = (() => {
1136
1139
  toLogEntry(ctx) {
1137
1140
  const message = {};
1138
1141
  for (const [entryType, capability] of this.keyLockerCapabilities) {
1139
- message[`entry type ${getEnumMemberName(UserCredentialKeyLockerEntryType, entryType)}`] = `slots: ${capability.numberOfEntrySlots}, length: ${capability.minEntryDataLength}-${capability.maxEntryDataLength}`;
1142
+ message[`entry type ${getEnumMemberName(UserCredentialKeyLockerEntryType, entryType)}`] =
1143
+ `slots: ${capability.numberOfEntrySlots}, length: ${capability.minEntryDataLength}-${capability.maxEntryDataLength}`;
1140
1144
  }
1141
1145
  return {
1142
1146
  ...super.toLogEntry(ctx),
@@ -1213,8 +1217,7 @@ let UserCredentialCCUserSet = (() => {
1213
1217
  userName;
1214
1218
  static from(raw, ctx) {
1215
1219
  validatePayload(raw.payload.length >= 3);
1216
- const operationType = raw.payload[0]
1217
- & 0b11;
1220
+ const operationType = raw.payload[0] & 0b11;
1218
1221
  const userId = raw.payload.readUInt16BE(1);
1219
1222
  if (operationType === UserCredentialOperationType.Delete) {
1220
1223
  return new this({
@@ -1299,8 +1302,7 @@ let UserCredentialCCUserSet = (() => {
1299
1302
  expiringTimeoutMinutes = 0;
1300
1303
  }
1301
1304
  // Name encoding defaults to ASCII
1302
- const nameEncoding = this.nameEncoding
1303
- ?? UserCredentialNameEncoding.ASCII;
1305
+ const nameEncoding = this.nameEncoding ?? UserCredentialNameEncoding.ASCII;
1304
1306
  // User name defaults to empty string
1305
1307
  const userName = this.userName ?? "";
1306
1308
  let nameBuffer;
@@ -1396,8 +1398,7 @@ let UserCredentialCCUserReport = (() => {
1396
1398
  const credentialRule = raw.payload[10];
1397
1399
  const expiringTimeoutMinutes = raw.payload.readUInt16BE(11);
1398
1400
  validatePayload(raw.payload.length >= 15);
1399
- const nameEncoding = raw.payload[13]
1400
- & 0b111;
1401
+ const nameEncoding = raw.payload[13] & 0b111;
1401
1402
  const nameLength = raw.payload[14];
1402
1403
  validatePayload(raw.payload.length >= 15 + nameLength);
1403
1404
  let userName;
@@ -1480,8 +1481,7 @@ let UserCredentialCCUserReport = (() => {
1480
1481
  || UserCredentialCCValues.credential.is(vid)
1481
1482
  || UserCredentialCCValues.credentialOwner.is(vid)
1482
1483
  || UserCredentialCCValues.credentialModifierType.is(vid)
1483
- || UserCredentialCCValues
1484
- .credentialModifierNodeId.is(vid)));
1484
+ || UserCredentialCCValues.credentialModifierNodeId.is(vid)));
1485
1485
  for (const value of cachedUsersAndCredentials) {
1486
1486
  valueDB.removeValue(value);
1487
1487
  }
@@ -1491,8 +1491,7 @@ let UserCredentialCCUserReport = (() => {
1491
1491
  }
1492
1492
  // A UserModifyRejectedLocationEmpty report means we have a stale cache
1493
1493
  // entry for a user that no longer exists on the device.
1494
- if (this.reportType
1495
- === UserCredentialUserReportType.UserDeleted
1494
+ if (this.reportType === UserCredentialUserReportType.UserDeleted
1496
1495
  || this.reportType
1497
1496
  === UserCredentialUserReportType.UserModifyRejectedLocationEmpty) {
1498
1497
  // Remove all values for this user
@@ -1529,12 +1528,9 @@ let UserCredentialCCUserReport = (() => {
1529
1528
  }
1530
1529
  // A UserAddRejectedLocationOccupied report contains the data for the
1531
1530
  // existing user, so we can update our cache with the actual state.
1532
- if (this.reportType
1533
- !== UserCredentialUserReportType.ResponseToGet
1534
- && this.reportType
1535
- !== UserCredentialUserReportType.UserAdded
1536
- && this.reportType
1537
- !== UserCredentialUserReportType.UserModified
1531
+ if (this.reportType !== UserCredentialUserReportType.ResponseToGet
1532
+ && this.reportType !== UserCredentialUserReportType.UserAdded
1533
+ && this.reportType !== UserCredentialUserReportType.UserModified
1538
1534
  && this.reportType
1539
1535
  !== UserCredentialUserReportType.UserAddRejectedLocationOccupied) {
1540
1536
  return true;
@@ -1577,8 +1573,7 @@ let UserCredentialCCUserReport = (() => {
1577
1573
  })();
1578
1574
  export { UserCredentialCCUserReport };
1579
1575
  function testResponseForUserCredentialUserGet(sent, received) {
1580
- return (received.reportType
1581
- === UserCredentialUserReportType.ResponseToGet);
1576
+ return received.reportType === UserCredentialUserReportType.ResponseToGet;
1582
1577
  }
1583
1578
  let UserCredentialCCUserGet = (() => {
1584
1579
  let _classDecorators = [CCCommand(UserCredentialCommand.UserGet), expectedCCResponse(UserCredentialCCUserReport, testResponseForUserCredentialUserGet)];
@@ -1632,8 +1627,7 @@ function testResponseForUserCredentialCredentialSet(sent, received) {
1632
1627
  // as the primary correlation. DuplicateCredential and DuplicateAdminPINCode
1633
1628
  // reports reference the EXISTING duplicate's (userId, slot) rather than
1634
1629
  // the requested location, so we cannot correlate them on slot.
1635
- if (received.reportType
1636
- === UserCredentialCredentialReportType.ResponseToGet) {
1630
+ if (received.reportType === UserCredentialCredentialReportType.ResponseToGet) {
1637
1631
  return false;
1638
1632
  }
1639
1633
  if (received.credentialType !== sent.credentialType) {
@@ -1682,8 +1676,7 @@ let UserCredentialCCCredentialSet = (() => {
1682
1676
  const userId = raw.payload.readUInt16BE(0);
1683
1677
  const credentialType = raw.payload[2];
1684
1678
  const credentialSlot = raw.payload.readUInt16BE(3);
1685
- const operationType = raw.payload[5]
1686
- & 0b11;
1679
+ const operationType = raw.payload[5] & 0b11;
1687
1680
  if (operationType === UserCredentialOperationType.Delete) {
1688
1681
  return new this({
1689
1682
  nodeId: ctx.sourceNodeId,
@@ -1847,8 +1840,8 @@ let UserCredentialCCCredentialReport = (() => {
1847
1840
  const offset = 8 + credentialData.length;
1848
1841
  this.payload[offset] = this.modifierType;
1849
1842
  this.payload.writeUInt16BE(this.modifierNodeId, offset + 1);
1850
- this.payload[offset + 3] = this.nextCredentialType
1851
- ?? UserCredentialType.None;
1843
+ this.payload[offset + 3] =
1844
+ this.nextCredentialType ?? UserCredentialType.None;
1852
1845
  this.payload.writeUInt16BE(this.nextCredentialSlot ?? 0, offset + 4);
1853
1846
  return super.serialize(ctx);
1854
1847
  }
@@ -1862,8 +1855,7 @@ let UserCredentialCCCredentialReport = (() => {
1862
1855
  if (this.reportType
1863
1856
  === UserCredentialCredentialReportType.CredentialDeleted
1864
1857
  || this.reportType
1865
- === UserCredentialCredentialReportType
1866
- .CredentialModifyRejectedLocationEmpty) {
1858
+ === UserCredentialCredentialReportType.CredentialModifyRejectedLocationEmpty) {
1867
1859
  if (this.credentialType !== UserCredentialType.None
1868
1860
  && this.credentialSlot !== 0) {
1869
1861
  // Single credential. The (type, slot) tuple uniquely identifies
@@ -1879,7 +1871,7 @@ let UserCredentialCCCredentialReport = (() => {
1879
1871
  const valueDB = this.getValueDB(ctx);
1880
1872
  const credentialOwners = valueDB.findValues((vid) => UserCredentialCCValues.credentialOwner.is(vid)
1881
1873
  && vid.endpoint === this.endpointIndex);
1882
- for (const { endpoint, propertyKey, value } of credentialOwners) {
1874
+ for (const { endpoint, propertyKey, value, } of credentialOwners) {
1883
1875
  // If a user ID is given, only delete credentials owned by that user
1884
1876
  if (this.userId !== 0 && value !== this.userId)
1885
1877
  continue;
@@ -1891,10 +1883,8 @@ let UserCredentialCCCredentialReport = (() => {
1891
1883
  && cType !== this.credentialType) {
1892
1884
  continue;
1893
1885
  }
1894
- valueDB.removeValue(UserCredentialCCValues.credential(cType, cSlot)
1895
- .endpoint(endpoint));
1896
- valueDB.removeValue(UserCredentialCCValues.credentialOwner(cType, cSlot)
1897
- .endpoint(endpoint));
1886
+ valueDB.removeValue(UserCredentialCCValues.credential(cType, cSlot).endpoint(endpoint));
1887
+ valueDB.removeValue(UserCredentialCCValues.credentialOwner(cType, cSlot).endpoint(endpoint));
1898
1888
  valueDB.removeValue(UserCredentialCCValues.credentialModifierType(cType, cSlot).endpoint(endpoint));
1899
1889
  valueDB.removeValue(UserCredentialCCValues.credentialModifierNodeId(cType, cSlot).endpoint(endpoint));
1900
1890
  }
@@ -1912,11 +1902,9 @@ let UserCredentialCCCredentialReport = (() => {
1912
1902
  // credential data in the read-back field when the device chooses to
1913
1903
  // reveal it, so we can update our cache with the real state.
1914
1904
  const isRejectionWithReadback = this.reportType
1915
- === UserCredentialCredentialReportType
1916
- .CredentialAddRejectedLocationOccupied
1905
+ === UserCredentialCredentialReportType.CredentialAddRejectedLocationOccupied
1917
1906
  && this.credentialReadBack;
1918
- if (this.reportType
1919
- !== UserCredentialCredentialReportType.ResponseToGet
1907
+ if (this.reportType !== UserCredentialCredentialReportType.ResponseToGet
1920
1908
  && this.reportType
1921
1909
  !== UserCredentialCredentialReportType.CredentialAdded
1922
1910
  && this.reportType
@@ -1959,8 +1947,7 @@ let UserCredentialCCCredentialReport = (() => {
1959
1947
  })();
1960
1948
  export { UserCredentialCCCredentialReport };
1961
1949
  function testResponseForUserCredentialCredentialGet(_sent, received) {
1962
- return (received.reportType
1963
- === UserCredentialCredentialReportType.ResponseToGet);
1950
+ return (received.reportType === UserCredentialCredentialReportType.ResponseToGet);
1964
1951
  }
1965
1952
  let UserCredentialCCCredentialGet = (() => {
1966
1953
  let _classDecorators = [CCCommand(UserCredentialCommand.CredentialGet), expectedCCResponse(UserCredentialCCCredentialReport, testResponseForUserCredentialCredentialGet)];
@@ -2052,8 +2039,7 @@ let UserCredentialCCCredentialLearnStart = (() => {
2052
2039
  const userId = raw.payload.readUInt16BE(0);
2053
2040
  const credentialType = raw.payload[2];
2054
2041
  const credentialSlot = raw.payload.readUInt16BE(3);
2055
- const operationType = raw.payload[5]
2056
- & 0b11;
2042
+ const operationType = raw.payload[5] & 0b11;
2057
2043
  const learnTimeout = raw.payload[6];
2058
2044
  return new this({
2059
2045
  nodeId: ctx.sourceNodeId,
@@ -2663,8 +2649,9 @@ let UserCredentialCCAdminPinCodeReport = (() => {
2663
2649
  serialize(ctx) {
2664
2650
  const pinBuffer = Bytes.from(this.pinCode, "ascii");
2665
2651
  this.payload = Bytes.alloc(1 + pinBuffer.length);
2666
- this.payload[0] = ((this.operationResult & 0b1111) << 4)
2667
- | (pinBuffer.length & 0b1111);
2652
+ this.payload[0] =
2653
+ ((this.operationResult & 0b1111) << 4)
2654
+ | (pinBuffer.length & 0b1111);
2668
2655
  if (pinBuffer.length > 0) {
2669
2656
  this.payload.set(pinBuffer, 1);
2670
2657
  }
@@ -2749,8 +2736,7 @@ let UserCredentialCCKeyLockerEntrySet = (() => {
2749
2736
  validatePayload(raw.payload.length >= 4);
2750
2737
  const entryType = raw.payload[0];
2751
2738
  const entrySlot = raw.payload.readUInt16BE(1);
2752
- const operationType = raw.payload[3]
2753
- & 0b11;
2739
+ const operationType = raw.payload[3] & 0b11;
2754
2740
  if (operationType === UserCredentialOperationType.Delete) {
2755
2741
  return new this({
2756
2742
  nodeId: ctx.sourceNodeId,
@@ -2856,6 +2842,9 @@ let UserCredentialCCKeyLockerEntryReport = (() => {
2856
2842
  persistValues(ctx) {
2857
2843
  if (!super.persistValues(ctx))
2858
2844
  return false;
2845
+ // This command only exists in V2. Ignore it if the device advertises a lower version.
2846
+ if (getEffectiveCCVersion(ctx, this) < 2)
2847
+ return true;
2859
2848
  this.setValue(ctx, UserCredentialCCValues.keyLockerEntry(this.entryType, this.entrySlot), this.occupied);
2860
2849
  return true;
2861
2850
  }
@@ -2874,8 +2863,8 @@ let UserCredentialCCKeyLockerEntryReport = (() => {
2874
2863
  })();
2875
2864
  export { UserCredentialCCKeyLockerEntryReport };
2876
2865
  function testResponseForUserCredentialKeyLockerEntryGet(sent, received) {
2877
- return received.entryType === sent.entryType
2878
- && received.entrySlot === sent.entrySlot;
2866
+ return (received.entryType === sent.entryType
2867
+ && received.entrySlot === sent.entrySlot);
2879
2868
  }
2880
2869
  let UserCredentialCCKeyLockerEntryGet = (() => {
2881
2870
  let _classDecorators = [CCCommand(UserCredentialCommand.KeyLockerEntryGet), expectedCCResponse(UserCredentialCCKeyLockerEntryReport, testResponseForUserCredentialKeyLockerEntryGet)];