@zwave-js/cc 15.20.1 → 15.21.1

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 (679) hide show
  1. package/build/cjs/cc/AlarmSensorCC._validateArgs.js.map +2 -2
  2. package/build/cjs/cc/AlarmSensorCC.d.ts +4 -131
  3. package/build/cjs/cc/AlarmSensorCC.js +1 -2
  4. package/build/cjs/cc/AlarmSensorCC.js.map +3 -3
  5. package/build/cjs/cc/ApplicationStatusCC.d.ts +1 -1
  6. package/build/cjs/cc/ApplicationStatusCC.js.map +3 -3
  7. package/build/cjs/cc/AssociationCC._validateArgs.js.map +2 -2
  8. package/build/cjs/cc/AssociationCC.d.ts +3 -109
  9. package/build/cjs/cc/AssociationCC.js +0 -1
  10. package/build/cjs/cc/AssociationCC.js.map +3 -3
  11. package/build/cjs/cc/AssociationGroupInfoCC._validateArgs.js.map +2 -2
  12. package/build/cjs/cc/AssociationGroupInfoCC.d.ts +3 -112
  13. package/build/cjs/cc/AssociationGroupInfoCC.js +0 -1
  14. package/build/cjs/cc/AssociationGroupInfoCC.js.map +3 -3
  15. package/build/cjs/cc/BarrierOperatorCC._validateArgs.js.map +2 -2
  16. package/build/cjs/cc/BarrierOperatorCC.d.ts +4 -148
  17. package/build/cjs/cc/BarrierOperatorCC.js +1 -2
  18. package/build/cjs/cc/BarrierOperatorCC.js.map +3 -3
  19. package/build/cjs/cc/BasicCC._validateArgs.js.map +2 -2
  20. package/build/cjs/cc/BasicCC.d.ts +4 -143
  21. package/build/cjs/cc/BasicCC.js +0 -1
  22. package/build/cjs/cc/BasicCC.js.map +3 -3
  23. package/build/cjs/cc/BasicWindowCoveringCC._validateArgs.js.map +2 -2
  24. package/build/cjs/cc/BasicWindowCoveringCC.d.ts +3 -63
  25. package/build/cjs/cc/BasicWindowCoveringCC.js +2 -3
  26. package/build/cjs/cc/BasicWindowCoveringCC.js.map +3 -3
  27. package/build/cjs/cc/BatteryCC.d.ts +4 -305
  28. package/build/cjs/cc/BatteryCC.js +39 -15
  29. package/build/cjs/cc/BatteryCC.js.map +3 -3
  30. package/build/cjs/cc/BinarySensorCC._validateArgs.js.map +2 -2
  31. package/build/cjs/cc/BinarySensorCC.d.ts +4 -59
  32. package/build/cjs/cc/BinarySensorCC.js +12 -3
  33. package/build/cjs/cc/BinarySensorCC.js.map +3 -3
  34. package/build/cjs/cc/BinarySwitchCC._validateArgs.js.map +2 -2
  35. package/build/cjs/cc/BinarySwitchCC.d.ts +4 -83
  36. package/build/cjs/cc/BinarySwitchCC.js +0 -1
  37. package/build/cjs/cc/BinarySwitchCC.js.map +3 -3
  38. package/build/cjs/cc/CRC16CC.d.ts +1 -1
  39. package/build/cjs/cc/CRC16CC.js.map +3 -3
  40. package/build/cjs/cc/CentralSceneCC._validateArgs.js.map +2 -2
  41. package/build/cjs/cc/CentralSceneCC.d.ts +3 -136
  42. package/build/cjs/cc/CentralSceneCC.js +0 -1
  43. package/build/cjs/cc/CentralSceneCC.js.map +3 -3
  44. package/build/cjs/cc/ClimateControlScheduleCC._validateArgs.js.map +2 -2
  45. package/build/cjs/cc/ClimateControlScheduleCC.d.ts +4 -87
  46. package/build/cjs/cc/ClimateControlScheduleCC.js +3 -4
  47. package/build/cjs/cc/ClimateControlScheduleCC.js.map +3 -3
  48. package/build/cjs/cc/ClockCC._validateArgs.js.map +2 -2
  49. package/build/cjs/cc/ClockCC.d.ts +1 -1
  50. package/build/cjs/cc/ClockCC.js +1 -1
  51. package/build/cjs/cc/ClockCC.js.map +3 -3
  52. package/build/cjs/cc/ColorSwitchCC._validateArgs.js.map +2 -2
  53. package/build/cjs/cc/ColorSwitchCC.d.ts +4 -227
  54. package/build/cjs/cc/ColorSwitchCC.js +3 -3
  55. package/build/cjs/cc/ColorSwitchCC.js.map +3 -3
  56. package/build/cjs/cc/ConfigurationCC._validateArgs.js.map +2 -2
  57. package/build/cjs/cc/ConfigurationCC.d.ts +9 -60
  58. package/build/cjs/cc/ConfigurationCC.js +71 -59
  59. package/build/cjs/cc/ConfigurationCC.js.map +3 -3
  60. package/build/cjs/cc/DeviceResetLocallyCC.d.ts +1 -1
  61. package/build/cjs/cc/DeviceResetLocallyCC.js.map +3 -3
  62. package/build/cjs/cc/DoorLockCC._validateArgs.js.map +2 -2
  63. package/build/cjs/cc/DoorLockCC.d.ts +4 -688
  64. package/build/cjs/cc/DoorLockCC.js +1 -2
  65. package/build/cjs/cc/DoorLockCC.js.map +3 -3
  66. package/build/cjs/cc/DoorLockLoggingCC._validateArgs.js.map +2 -2
  67. package/build/cjs/cc/DoorLockLoggingCC.d.ts +4 -29
  68. package/build/cjs/cc/DoorLockLoggingCC.js +0 -1
  69. package/build/cjs/cc/DoorLockLoggingCC.js.map +3 -3
  70. package/build/cjs/cc/EnergyProductionCC._validateArgs.js.map +2 -2
  71. package/build/cjs/cc/EnergyProductionCC.d.ts +4 -33
  72. package/build/cjs/cc/EnergyProductionCC.js +1 -2
  73. package/build/cjs/cc/EnergyProductionCC.js.map +3 -3
  74. package/build/cjs/cc/EntryControlCC._validateArgs.js.map +2 -2
  75. package/build/cjs/cc/EntryControlCC.d.ts +3 -137
  76. package/build/cjs/cc/EntryControlCC.js +0 -1
  77. package/build/cjs/cc/EntryControlCC.js.map +3 -3
  78. package/build/cjs/cc/FirmwareUpdateMetaDataCC._validateArgs.js.map +2 -2
  79. package/build/cjs/cc/FirmwareUpdateMetaDataCC.d.ts +4 -154
  80. package/build/cjs/cc/FirmwareUpdateMetaDataCC.js +0 -1
  81. package/build/cjs/cc/FirmwareUpdateMetaDataCC.js.map +3 -3
  82. package/build/cjs/cc/HailCC.js.map +3 -3
  83. package/build/cjs/cc/HumidityControlModeCC._validateArgs.js.map +2 -2
  84. package/build/cjs/cc/HumidityControlModeCC.d.ts +4 -58
  85. package/build/cjs/cc/HumidityControlModeCC.js +1 -2
  86. package/build/cjs/cc/HumidityControlModeCC.js.map +3 -3
  87. package/build/cjs/cc/HumidityControlOperatingStateCC.d.ts +4 -33
  88. package/build/cjs/cc/HumidityControlOperatingStateCC.js +0 -1
  89. package/build/cjs/cc/HumidityControlOperatingStateCC.js.map +3 -3
  90. package/build/cjs/cc/HumidityControlSetpointCC._validateArgs.js.map +2 -2
  91. package/build/cjs/cc/HumidityControlSetpointCC.d.ts +4 -92
  92. package/build/cjs/cc/HumidityControlSetpointCC.js +0 -1
  93. package/build/cjs/cc/HumidityControlSetpointCC.js.map +3 -3
  94. package/build/cjs/cc/InclusionControllerCC.d.ts +1 -1
  95. package/build/cjs/cc/InclusionControllerCC.js.map +3 -3
  96. package/build/cjs/cc/IndicatorCC._validateArgs.js.map +2 -2
  97. package/build/cjs/cc/IndicatorCC.d.ts +4 -207
  98. package/build/cjs/cc/IndicatorCC.js +0 -1
  99. package/build/cjs/cc/IndicatorCC.js.map +3 -3
  100. package/build/cjs/cc/IrrigationCC._validateArgs.js.map +2 -2
  101. package/build/cjs/cc/IrrigationCC.d.ts +4 -1186
  102. package/build/cjs/cc/IrrigationCC.js +1 -3
  103. package/build/cjs/cc/IrrigationCC.js.map +3 -3
  104. package/build/cjs/cc/LanguageCC._validateArgs.js.map +2 -2
  105. package/build/cjs/cc/LanguageCC.d.ts +4 -56
  106. package/build/cjs/cc/LanguageCC.js +0 -1
  107. package/build/cjs/cc/LanguageCC.js.map +3 -3
  108. package/build/cjs/cc/LockCC._validateArgs.js.map +2 -2
  109. package/build/cjs/cc/LockCC.d.ts +4 -31
  110. package/build/cjs/cc/LockCC.js +0 -1
  111. package/build/cjs/cc/LockCC.js.map +3 -3
  112. package/build/cjs/cc/ManufacturerProprietaryCC._validateArgs.js.map +2 -2
  113. package/build/cjs/cc/ManufacturerProprietaryCC.d.ts +1 -1
  114. package/build/cjs/cc/ManufacturerProprietaryCC.js.map +3 -3
  115. package/build/cjs/cc/ManufacturerSpecificCC._validateArgs.js.map +2 -2
  116. package/build/cjs/cc/ManufacturerSpecificCC.d.ts +3 -116
  117. package/build/cjs/cc/ManufacturerSpecificCC.js +0 -1
  118. package/build/cjs/cc/ManufacturerSpecificCC.js.map +3 -3
  119. package/build/cjs/cc/MeterCC._validateArgs.js.map +2 -2
  120. package/build/cjs/cc/MeterCC.d.ts +4 -203
  121. package/build/cjs/cc/MeterCC.js +0 -2
  122. package/build/cjs/cc/MeterCC.js.map +3 -3
  123. package/build/cjs/cc/MultiChannelAssociationCC._validateArgs.js.map +2 -2
  124. package/build/cjs/cc/MultiChannelAssociationCC.d.ts +3 -112
  125. package/build/cjs/cc/MultiChannelAssociationCC.js +0 -1
  126. package/build/cjs/cc/MultiChannelAssociationCC.js.map +3 -3
  127. package/build/cjs/cc/MultiChannelCC._validateArgs.js.map +2 -2
  128. package/build/cjs/cc/MultiChannelCC.d.ts +3 -207
  129. package/build/cjs/cc/MultiChannelCC.js +0 -1
  130. package/build/cjs/cc/MultiChannelCC.js.map +3 -3
  131. package/build/cjs/cc/MultiCommandCC._validateArgs.js.map +2 -2
  132. package/build/cjs/cc/MultiCommandCC.d.ts +1 -1
  133. package/build/cjs/cc/MultiCommandCC.js.map +3 -3
  134. package/build/cjs/cc/MultilevelSensorCC._validateArgs.js.map +2 -2
  135. package/build/cjs/cc/MultilevelSensorCC.d.ts +4 -84
  136. package/build/cjs/cc/MultilevelSensorCC.js +0 -1
  137. package/build/cjs/cc/MultilevelSensorCC.js.map +3 -3
  138. package/build/cjs/cc/MultilevelSwitchCC._validateArgs.js.map +2 -2
  139. package/build/cjs/cc/MultilevelSwitchCC.d.ts +5 -264
  140. package/build/cjs/cc/MultilevelSwitchCC.js +34 -1
  141. package/build/cjs/cc/MultilevelSwitchCC.js.map +3 -3
  142. package/build/cjs/cc/NoOperationCC.js.map +3 -3
  143. package/build/cjs/cc/NodeNamingCC._validateArgs.js.map +2 -2
  144. package/build/cjs/cc/NodeNamingCC.d.ts +8 -58
  145. package/build/cjs/cc/NodeNamingCC.js +48 -25
  146. package/build/cjs/cc/NodeNamingCC.js.map +3 -3
  147. package/build/cjs/cc/NotificationCC._validateArgs.js.map +2 -2
  148. package/build/cjs/cc/NotificationCC.d.ts +5 -357
  149. package/build/cjs/cc/NotificationCC.js +2 -2
  150. package/build/cjs/cc/NotificationCC.js.map +3 -3
  151. package/build/cjs/cc/PowerlevelCC._validateArgs.js.map +2 -2
  152. package/build/cjs/cc/PowerlevelCC.d.ts +1 -1
  153. package/build/cjs/cc/PowerlevelCC.js +2 -2
  154. package/build/cjs/cc/PowerlevelCC.js.map +3 -3
  155. package/build/cjs/cc/ProtectionCC._validateArgs.js.map +2 -2
  156. package/build/cjs/cc/ProtectionCC.d.ts +4 -212
  157. package/build/cjs/cc/ProtectionCC.js +1 -2
  158. package/build/cjs/cc/ProtectionCC.js.map +3 -3
  159. package/build/cjs/cc/SceneActivationCC._validateArgs.js.map +2 -2
  160. package/build/cjs/cc/SceneActivationCC.d.ts +4 -59
  161. package/build/cjs/cc/SceneActivationCC.js +0 -1
  162. package/build/cjs/cc/SceneActivationCC.js.map +3 -3
  163. package/build/cjs/cc/SceneActuatorConfigurationCC._validateArgs.js.map +2 -2
  164. package/build/cjs/cc/SceneActuatorConfigurationCC.d.ts +4 -65
  165. package/build/cjs/cc/SceneActuatorConfigurationCC.js +0 -1
  166. package/build/cjs/cc/SceneActuatorConfigurationCC.js.map +3 -3
  167. package/build/cjs/cc/SceneControllerConfigurationCC._validateArgs.js.map +2 -2
  168. package/build/cjs/cc/SceneControllerConfigurationCC.d.ts +3 -64
  169. package/build/cjs/cc/SceneControllerConfigurationCC.js +0 -1
  170. package/build/cjs/cc/SceneControllerConfigurationCC.js.map +3 -3
  171. package/build/cjs/cc/ScheduleEntryLockCC._validateArgs.js.map +2 -2
  172. package/build/cjs/cc/ScheduleEntryLockCC.d.ts +4 -163
  173. package/build/cjs/cc/ScheduleEntryLockCC.js +0 -1
  174. package/build/cjs/cc/ScheduleEntryLockCC.js.map +3 -3
  175. package/build/cjs/cc/Security2CC.d.ts +1 -1
  176. package/build/cjs/cc/Security2CC.js.map +3 -3
  177. package/build/cjs/cc/SecurityCC.d.ts +4 -2
  178. package/build/cjs/cc/SecurityCC.js.map +3 -3
  179. package/build/cjs/cc/SoundSwitchCC._validateArgs.js.map +2 -2
  180. package/build/cjs/cc/SoundSwitchCC.d.ts +4 -123
  181. package/build/cjs/cc/SoundSwitchCC.js +6 -2
  182. package/build/cjs/cc/SoundSwitchCC.js.map +3 -3
  183. package/build/cjs/cc/SupervisionCC.d.ts +3 -31
  184. package/build/cjs/cc/SupervisionCC.js +4 -2
  185. package/build/cjs/cc/SupervisionCC.js.map +3 -3
  186. package/build/cjs/cc/ThermostatFanModeCC._validateArgs.js.map +2 -2
  187. package/build/cjs/cc/ThermostatFanModeCC.d.ts +4 -84
  188. package/build/cjs/cc/ThermostatFanModeCC.js +1 -2
  189. package/build/cjs/cc/ThermostatFanModeCC.js.map +3 -3
  190. package/build/cjs/cc/ThermostatFanStateCC.d.ts +4 -33
  191. package/build/cjs/cc/ThermostatFanStateCC.js +0 -1
  192. package/build/cjs/cc/ThermostatFanStateCC.js.map +3 -3
  193. package/build/cjs/cc/ThermostatModeCC._validateArgs.js.map +2 -2
  194. package/build/cjs/cc/ThermostatModeCC.d.ts +4 -84
  195. package/build/cjs/cc/ThermostatModeCC.js +1 -2
  196. package/build/cjs/cc/ThermostatModeCC.js.map +3 -3
  197. package/build/cjs/cc/ThermostatOperatingStateCC.d.ts +4 -33
  198. package/build/cjs/cc/ThermostatOperatingStateCC.js +0 -1
  199. package/build/cjs/cc/ThermostatOperatingStateCC.js.map +3 -3
  200. package/build/cjs/cc/ThermostatSetbackCC._validateArgs.js.map +2 -2
  201. package/build/cjs/cc/ThermostatSetbackCC.d.ts +1 -1
  202. package/build/cjs/cc/ThermostatSetbackCC.js.map +3 -3
  203. package/build/cjs/cc/ThermostatSetpointCC._validateArgs.js.map +2 -2
  204. package/build/cjs/cc/ThermostatSetpointCC.d.ts +5 -90
  205. package/build/cjs/cc/ThermostatSetpointCC.js +0 -1
  206. package/build/cjs/cc/ThermostatSetpointCC.js.map +3 -3
  207. package/build/cjs/cc/TimeCC._validateArgs.js.map +2 -2
  208. package/build/cjs/cc/TimeCC.d.ts +2 -2
  209. package/build/cjs/cc/TimeCC.js.map +3 -3
  210. package/build/cjs/cc/TimeParametersCC._validateArgs.js.map +2 -2
  211. package/build/cjs/cc/TimeParametersCC.d.ts +4 -30
  212. package/build/cjs/cc/TimeParametersCC.js +0 -1
  213. package/build/cjs/cc/TimeParametersCC.js.map +3 -3
  214. package/build/cjs/cc/TransportServiceCC.d.ts +1 -1
  215. package/build/cjs/cc/TransportServiceCC.js.map +3 -3
  216. package/build/cjs/cc/UserCodeCC._validateArgs.js.map +2 -2
  217. package/build/cjs/cc/UserCodeCC.d.ts +4 -415
  218. package/build/cjs/cc/UserCodeCC.js +1 -2
  219. package/build/cjs/cc/UserCodeCC.js.map +3 -3
  220. package/build/cjs/cc/VersionCC._validateArgs.js.map +2 -2
  221. package/build/cjs/cc/VersionCC.d.ts +3 -367
  222. package/build/cjs/cc/VersionCC.js +0 -1
  223. package/build/cjs/cc/VersionCC.js.map +3 -3
  224. package/build/cjs/cc/WakeUpCC._validateArgs.js.map +2 -2
  225. package/build/cjs/cc/WakeUpCC.d.ts +4 -83
  226. package/build/cjs/cc/WakeUpCC.js +11 -4
  227. package/build/cjs/cc/WakeUpCC.js.map +3 -3
  228. package/build/cjs/cc/WindowCoveringCC._validateArgs.js.map +2 -2
  229. package/build/cjs/cc/WindowCoveringCC.d.ts +4 -207
  230. package/build/cjs/cc/WindowCoveringCC.js +3 -5
  231. package/build/cjs/cc/WindowCoveringCC.js.map +3 -3
  232. package/build/cjs/cc/ZWaveLongRangeCC.js.map +3 -3
  233. package/build/cjs/cc/ZWavePlusCC._validateArgs.js.map +2 -2
  234. package/build/cjs/cc/ZWavePlusCC.d.ts +4 -129
  235. package/build/cjs/cc/ZWavePlusCC.js +0 -1
  236. package/build/cjs/cc/ZWavePlusCC.js.map +3 -3
  237. package/build/cjs/cc/ZWaveProtocolCC.d.ts +1 -1
  238. package/build/cjs/cc/ZWaveProtocolCC.js.map +3 -3
  239. package/build/cjs/cc/_CCValues.generated.js.map +1 -1
  240. package/build/cjs/cc/index.js.map +1 -1
  241. package/build/cjs/cc/manufacturerProprietary/Decorators.js.map +1 -1
  242. package/build/cjs/cc/manufacturerProprietary/FibaroCC._validateArgs.js.map +2 -2
  243. package/build/cjs/cc/manufacturerProprietary/FibaroCC.d.ts +1 -1
  244. package/build/cjs/cc/manufacturerProprietary/FibaroCC.js.map +3 -3
  245. package/build/cjs/index.js.map +1 -1
  246. package/build/cjs/index_browser.js.map +1 -1
  247. package/build/cjs/index_safe.js.map +1 -1
  248. package/build/cjs/lib/API.d.ts +3 -135
  249. package/build/cjs/lib/API.js.map +3 -3
  250. package/build/cjs/lib/CCValueUtils.js.map +1 -1
  251. package/build/cjs/lib/CommandClass.d.ts +1 -1
  252. package/build/cjs/lib/CommandClass.js.map +3 -3
  253. package/build/cjs/lib/CommandClassDecorators.js.map +1 -1
  254. package/build/cjs/lib/EncapsulatingCommandClass.js.map +1 -1
  255. package/build/cjs/lib/NotificationEventPayload.js.map +1 -1
  256. package/build/cjs/lib/Security2/Extension.js.map +1 -1
  257. package/build/cjs/lib/Security2/shared.js.map +1 -1
  258. package/build/cjs/lib/SetValueResult.js.map +1 -1
  259. package/build/cjs/lib/Values.js.map +1 -1
  260. package/build/cjs/lib/_CCAPI.generated.d.ts +136 -0
  261. package/build/cjs/lib/_CCAPI.generated.js +17 -0
  262. package/build/cjs/lib/_CCAPI.generated.js.map +7 -0
  263. package/build/cjs/lib/_Types.js.map +1 -1
  264. package/build/cjs/lib/serializers.js.map +1 -1
  265. package/build/cjs/lib/utils.js.map +1 -1
  266. package/build/esm/cc/AlarmSensorCC._validateArgs.d.ts.map +1 -1
  267. package/build/esm/cc/AlarmSensorCC._validateArgs.js.map +1 -1
  268. package/build/esm/cc/AlarmSensorCC.d.ts +4 -131
  269. package/build/esm/cc/AlarmSensorCC.d.ts.map +1 -1
  270. package/build/esm/cc/AlarmSensorCC.js +2 -3
  271. package/build/esm/cc/AlarmSensorCC.js.map +1 -1
  272. package/build/esm/cc/ApplicationStatusCC.d.ts +1 -1
  273. package/build/esm/cc/ApplicationStatusCC.d.ts.map +1 -1
  274. package/build/esm/cc/ApplicationStatusCC.js.map +1 -1
  275. package/build/esm/cc/AssociationCC._validateArgs.d.ts.map +1 -1
  276. package/build/esm/cc/AssociationCC._validateArgs.js.map +1 -1
  277. package/build/esm/cc/AssociationCC.d.ts +3 -109
  278. package/build/esm/cc/AssociationCC.d.ts.map +1 -1
  279. package/build/esm/cc/AssociationCC.js +0 -1
  280. package/build/esm/cc/AssociationCC.js.map +1 -1
  281. package/build/esm/cc/AssociationGroupInfoCC._validateArgs.d.ts.map +1 -1
  282. package/build/esm/cc/AssociationGroupInfoCC._validateArgs.js.map +1 -1
  283. package/build/esm/cc/AssociationGroupInfoCC.d.ts +3 -112
  284. package/build/esm/cc/AssociationGroupInfoCC.d.ts.map +1 -1
  285. package/build/esm/cc/AssociationGroupInfoCC.js +12 -13
  286. package/build/esm/cc/AssociationGroupInfoCC.js.map +1 -1
  287. package/build/esm/cc/BarrierOperatorCC._validateArgs.d.ts.map +1 -1
  288. package/build/esm/cc/BarrierOperatorCC._validateArgs.js.map +1 -1
  289. package/build/esm/cc/BarrierOperatorCC.d.ts +4 -148
  290. package/build/esm/cc/BarrierOperatorCC.d.ts.map +1 -1
  291. package/build/esm/cc/BarrierOperatorCC.js +2 -3
  292. package/build/esm/cc/BarrierOperatorCC.js.map +1 -1
  293. package/build/esm/cc/BasicCC._validateArgs.d.ts.map +1 -1
  294. package/build/esm/cc/BasicCC._validateArgs.js.map +1 -1
  295. package/build/esm/cc/BasicCC.d.ts +4 -143
  296. package/build/esm/cc/BasicCC.d.ts.map +1 -1
  297. package/build/esm/cc/BasicCC.js +1 -2
  298. package/build/esm/cc/BasicCC.js.map +1 -1
  299. package/build/esm/cc/BasicWindowCoveringCC._validateArgs.d.ts.map +1 -1
  300. package/build/esm/cc/BasicWindowCoveringCC._validateArgs.js.map +1 -1
  301. package/build/esm/cc/BasicWindowCoveringCC.d.ts +3 -63
  302. package/build/esm/cc/BasicWindowCoveringCC.d.ts.map +1 -1
  303. package/build/esm/cc/BasicWindowCoveringCC.js +5 -6
  304. package/build/esm/cc/BasicWindowCoveringCC.js.map +1 -1
  305. package/build/esm/cc/BatteryCC.d.ts +4 -305
  306. package/build/esm/cc/BatteryCC.d.ts.map +1 -1
  307. package/build/esm/cc/BatteryCC.js +67 -26
  308. package/build/esm/cc/BatteryCC.js.map +1 -1
  309. package/build/esm/cc/BinarySensorCC._validateArgs.d.ts.map +1 -1
  310. package/build/esm/cc/BinarySensorCC._validateArgs.js.map +1 -1
  311. package/build/esm/cc/BinarySensorCC.d.ts +4 -59
  312. package/build/esm/cc/BinarySensorCC.d.ts.map +1 -1
  313. package/build/esm/cc/BinarySensorCC.js +24 -4
  314. package/build/esm/cc/BinarySensorCC.js.map +1 -1
  315. package/build/esm/cc/BinarySwitchCC._validateArgs.d.ts.map +1 -1
  316. package/build/esm/cc/BinarySwitchCC._validateArgs.js.map +1 -1
  317. package/build/esm/cc/BinarySwitchCC.d.ts +4 -83
  318. package/build/esm/cc/BinarySwitchCC.d.ts.map +1 -1
  319. package/build/esm/cc/BinarySwitchCC.js +1 -2
  320. package/build/esm/cc/BinarySwitchCC.js.map +1 -1
  321. package/build/esm/cc/CRC16CC.d.ts +1 -1
  322. package/build/esm/cc/CRC16CC.d.ts.map +1 -1
  323. package/build/esm/cc/CRC16CC.js.map +1 -1
  324. package/build/esm/cc/CentralSceneCC._validateArgs.d.ts.map +1 -1
  325. package/build/esm/cc/CentralSceneCC._validateArgs.js.map +1 -1
  326. package/build/esm/cc/CentralSceneCC.d.ts +3 -136
  327. package/build/esm/cc/CentralSceneCC.d.ts.map +1 -1
  328. package/build/esm/cc/CentralSceneCC.js +5 -6
  329. package/build/esm/cc/CentralSceneCC.js.map +1 -1
  330. package/build/esm/cc/ClimateControlScheduleCC._validateArgs.d.ts.map +1 -1
  331. package/build/esm/cc/ClimateControlScheduleCC._validateArgs.js.map +1 -1
  332. package/build/esm/cc/ClimateControlScheduleCC.d.ts +4 -87
  333. package/build/esm/cc/ClimateControlScheduleCC.d.ts.map +1 -1
  334. package/build/esm/cc/ClimateControlScheduleCC.js +4 -5
  335. package/build/esm/cc/ClimateControlScheduleCC.js.map +1 -1
  336. package/build/esm/cc/ClockCC._validateArgs.d.ts.map +1 -1
  337. package/build/esm/cc/ClockCC._validateArgs.js.map +1 -1
  338. package/build/esm/cc/ClockCC.d.ts +1 -1
  339. package/build/esm/cc/ClockCC.d.ts.map +1 -1
  340. package/build/esm/cc/ClockCC.js +1 -1
  341. package/build/esm/cc/ClockCC.js.map +1 -1
  342. package/build/esm/cc/ColorSwitchCC._validateArgs.d.ts.map +1 -1
  343. package/build/esm/cc/ColorSwitchCC._validateArgs.js.map +1 -1
  344. package/build/esm/cc/ColorSwitchCC.d.ts +4 -227
  345. package/build/esm/cc/ColorSwitchCC.d.ts.map +1 -1
  346. package/build/esm/cc/ColorSwitchCC.js +8 -8
  347. package/build/esm/cc/ColorSwitchCC.js.map +1 -1
  348. package/build/esm/cc/ConfigurationCC._validateArgs.d.ts.map +1 -1
  349. package/build/esm/cc/ConfigurationCC._validateArgs.js.map +1 -1
  350. package/build/esm/cc/ConfigurationCC.d.ts +9 -60
  351. package/build/esm/cc/ConfigurationCC.d.ts.map +1 -1
  352. package/build/esm/cc/ConfigurationCC.js +94 -76
  353. package/build/esm/cc/ConfigurationCC.js.map +1 -1
  354. package/build/esm/cc/DeviceResetLocallyCC.d.ts +1 -1
  355. package/build/esm/cc/DeviceResetLocallyCC.d.ts.map +1 -1
  356. package/build/esm/cc/DeviceResetLocallyCC.js.map +1 -1
  357. package/build/esm/cc/DoorLockCC._validateArgs.d.ts.map +1 -1
  358. package/build/esm/cc/DoorLockCC._validateArgs.js.map +1 -1
  359. package/build/esm/cc/DoorLockCC.d.ts +4 -688
  360. package/build/esm/cc/DoorLockCC.d.ts.map +1 -1
  361. package/build/esm/cc/DoorLockCC.js +14 -15
  362. package/build/esm/cc/DoorLockCC.js.map +1 -1
  363. package/build/esm/cc/DoorLockLoggingCC._validateArgs.d.ts.map +1 -1
  364. package/build/esm/cc/DoorLockLoggingCC._validateArgs.js.map +1 -1
  365. package/build/esm/cc/DoorLockLoggingCC.d.ts +4 -29
  366. package/build/esm/cc/DoorLockLoggingCC.d.ts.map +1 -1
  367. package/build/esm/cc/DoorLockLoggingCC.js +0 -1
  368. package/build/esm/cc/DoorLockLoggingCC.js.map +1 -1
  369. package/build/esm/cc/EnergyProductionCC._validateArgs.d.ts.map +1 -1
  370. package/build/esm/cc/EnergyProductionCC._validateArgs.js.map +1 -1
  371. package/build/esm/cc/EnergyProductionCC.d.ts +4 -33
  372. package/build/esm/cc/EnergyProductionCC.d.ts.map +1 -1
  373. package/build/esm/cc/EnergyProductionCC.js +2 -3
  374. package/build/esm/cc/EnergyProductionCC.js.map +1 -1
  375. package/build/esm/cc/EntryControlCC._validateArgs.d.ts.map +1 -1
  376. package/build/esm/cc/EntryControlCC._validateArgs.js.map +1 -1
  377. package/build/esm/cc/EntryControlCC.d.ts +3 -137
  378. package/build/esm/cc/EntryControlCC.d.ts.map +1 -1
  379. package/build/esm/cc/EntryControlCC.js +1 -2
  380. package/build/esm/cc/EntryControlCC.js.map +1 -1
  381. package/build/esm/cc/FirmwareUpdateMetaDataCC._validateArgs.d.ts.map +1 -1
  382. package/build/esm/cc/FirmwareUpdateMetaDataCC._validateArgs.js.map +1 -1
  383. package/build/esm/cc/FirmwareUpdateMetaDataCC.d.ts +4 -154
  384. package/build/esm/cc/FirmwareUpdateMetaDataCC.d.ts.map +1 -1
  385. package/build/esm/cc/FirmwareUpdateMetaDataCC.js +0 -1
  386. package/build/esm/cc/FirmwareUpdateMetaDataCC.js.map +1 -1
  387. package/build/esm/cc/HailCC.d.ts.map +1 -1
  388. package/build/esm/cc/HailCC.js.map +1 -1
  389. package/build/esm/cc/HumidityControlModeCC._validateArgs.d.ts.map +1 -1
  390. package/build/esm/cc/HumidityControlModeCC._validateArgs.js.map +1 -1
  391. package/build/esm/cc/HumidityControlModeCC.d.ts +4 -58
  392. package/build/esm/cc/HumidityControlModeCC.d.ts.map +1 -1
  393. package/build/esm/cc/HumidityControlModeCC.js +2 -3
  394. package/build/esm/cc/HumidityControlModeCC.js.map +1 -1
  395. package/build/esm/cc/HumidityControlOperatingStateCC.d.ts +4 -33
  396. package/build/esm/cc/HumidityControlOperatingStateCC.d.ts.map +1 -1
  397. package/build/esm/cc/HumidityControlOperatingStateCC.js +1 -2
  398. package/build/esm/cc/HumidityControlOperatingStateCC.js.map +1 -1
  399. package/build/esm/cc/HumidityControlSetpointCC._validateArgs.d.ts.map +1 -1
  400. package/build/esm/cc/HumidityControlSetpointCC._validateArgs.js.map +1 -1
  401. package/build/esm/cc/HumidityControlSetpointCC.d.ts +4 -92
  402. package/build/esm/cc/HumidityControlSetpointCC.d.ts.map +1 -1
  403. package/build/esm/cc/HumidityControlSetpointCC.js +1 -2
  404. package/build/esm/cc/HumidityControlSetpointCC.js.map +1 -1
  405. package/build/esm/cc/InclusionControllerCC.d.ts +1 -1
  406. package/build/esm/cc/InclusionControllerCC.d.ts.map +1 -1
  407. package/build/esm/cc/InclusionControllerCC.js.map +1 -1
  408. package/build/esm/cc/IndicatorCC._validateArgs.d.ts.map +1 -1
  409. package/build/esm/cc/IndicatorCC._validateArgs.js.map +1 -1
  410. package/build/esm/cc/IndicatorCC.d.ts +4 -207
  411. package/build/esm/cc/IndicatorCC.d.ts.map +1 -1
  412. package/build/esm/cc/IndicatorCC.js +0 -1
  413. package/build/esm/cc/IndicatorCC.js.map +1 -1
  414. package/build/esm/cc/IrrigationCC._validateArgs.d.ts.map +1 -1
  415. package/build/esm/cc/IrrigationCC._validateArgs.js.map +1 -1
  416. package/build/esm/cc/IrrigationCC.d.ts +4 -1186
  417. package/build/esm/cc/IrrigationCC.d.ts.map +1 -1
  418. package/build/esm/cc/IrrigationCC.js +6 -8
  419. package/build/esm/cc/IrrigationCC.js.map +1 -1
  420. package/build/esm/cc/LanguageCC._validateArgs.d.ts.map +1 -1
  421. package/build/esm/cc/LanguageCC._validateArgs.js.map +1 -1
  422. package/build/esm/cc/LanguageCC.d.ts +4 -56
  423. package/build/esm/cc/LanguageCC.d.ts.map +1 -1
  424. package/build/esm/cc/LanguageCC.js +1 -2
  425. package/build/esm/cc/LanguageCC.js.map +1 -1
  426. package/build/esm/cc/LockCC._validateArgs.d.ts.map +1 -1
  427. package/build/esm/cc/LockCC._validateArgs.js.map +1 -1
  428. package/build/esm/cc/LockCC.d.ts +4 -31
  429. package/build/esm/cc/LockCC.d.ts.map +1 -1
  430. package/build/esm/cc/LockCC.js +1 -2
  431. package/build/esm/cc/LockCC.js.map +1 -1
  432. package/build/esm/cc/ManufacturerProprietaryCC._validateArgs.d.ts.map +1 -1
  433. package/build/esm/cc/ManufacturerProprietaryCC._validateArgs.js.map +1 -1
  434. package/build/esm/cc/ManufacturerProprietaryCC.d.ts +1 -1
  435. package/build/esm/cc/ManufacturerProprietaryCC.d.ts.map +1 -1
  436. package/build/esm/cc/ManufacturerProprietaryCC.js.map +1 -1
  437. package/build/esm/cc/ManufacturerSpecificCC._validateArgs.d.ts.map +1 -1
  438. package/build/esm/cc/ManufacturerSpecificCC._validateArgs.js.map +1 -1
  439. package/build/esm/cc/ManufacturerSpecificCC.d.ts +3 -116
  440. package/build/esm/cc/ManufacturerSpecificCC.d.ts.map +1 -1
  441. package/build/esm/cc/ManufacturerSpecificCC.js +1 -2
  442. package/build/esm/cc/ManufacturerSpecificCC.js.map +1 -1
  443. package/build/esm/cc/MeterCC._validateArgs.d.ts.map +1 -1
  444. package/build/esm/cc/MeterCC._validateArgs.js.map +1 -1
  445. package/build/esm/cc/MeterCC.d.ts +4 -203
  446. package/build/esm/cc/MeterCC.d.ts.map +1 -1
  447. package/build/esm/cc/MeterCC.js +17 -19
  448. package/build/esm/cc/MeterCC.js.map +1 -1
  449. package/build/esm/cc/MultiChannelAssociationCC._validateArgs.d.ts.map +1 -1
  450. package/build/esm/cc/MultiChannelAssociationCC._validateArgs.js.map +1 -1
  451. package/build/esm/cc/MultiChannelAssociationCC.d.ts +3 -112
  452. package/build/esm/cc/MultiChannelAssociationCC.d.ts.map +1 -1
  453. package/build/esm/cc/MultiChannelAssociationCC.js +4 -5
  454. package/build/esm/cc/MultiChannelAssociationCC.js.map +1 -1
  455. package/build/esm/cc/MultiChannelCC._validateArgs.d.ts.map +1 -1
  456. package/build/esm/cc/MultiChannelCC._validateArgs.js.map +1 -1
  457. package/build/esm/cc/MultiChannelCC.d.ts +3 -207
  458. package/build/esm/cc/MultiChannelCC.d.ts.map +1 -1
  459. package/build/esm/cc/MultiChannelCC.js +9 -10
  460. package/build/esm/cc/MultiChannelCC.js.map +1 -1
  461. package/build/esm/cc/MultiCommandCC._validateArgs.d.ts.map +1 -1
  462. package/build/esm/cc/MultiCommandCC._validateArgs.js.map +1 -1
  463. package/build/esm/cc/MultiCommandCC.d.ts +1 -1
  464. package/build/esm/cc/MultiCommandCC.d.ts.map +1 -1
  465. package/build/esm/cc/MultiCommandCC.js.map +1 -1
  466. package/build/esm/cc/MultilevelSensorCC._validateArgs.d.ts.map +1 -1
  467. package/build/esm/cc/MultilevelSensorCC._validateArgs.js.map +1 -1
  468. package/build/esm/cc/MultilevelSensorCC.d.ts +4 -84
  469. package/build/esm/cc/MultilevelSensorCC.d.ts.map +1 -1
  470. package/build/esm/cc/MultilevelSensorCC.js +1 -2
  471. package/build/esm/cc/MultilevelSensorCC.js.map +1 -1
  472. package/build/esm/cc/MultilevelSwitchCC._validateArgs.d.ts.map +1 -1
  473. package/build/esm/cc/MultilevelSwitchCC._validateArgs.js.map +1 -1
  474. package/build/esm/cc/MultilevelSwitchCC.d.ts +5 -264
  475. package/build/esm/cc/MultilevelSwitchCC.d.ts.map +1 -1
  476. package/build/esm/cc/MultilevelSwitchCC.js +44 -6
  477. package/build/esm/cc/MultilevelSwitchCC.js.map +1 -1
  478. package/build/esm/cc/NoOperationCC.d.ts.map +1 -1
  479. package/build/esm/cc/NoOperationCC.js.map +1 -1
  480. package/build/esm/cc/NodeNamingCC._validateArgs.d.ts.map +1 -1
  481. package/build/esm/cc/NodeNamingCC._validateArgs.js.map +1 -1
  482. package/build/esm/cc/NodeNamingCC.d.ts +8 -58
  483. package/build/esm/cc/NodeNamingCC.d.ts.map +1 -1
  484. package/build/esm/cc/NodeNamingCC.js +49 -38
  485. package/build/esm/cc/NodeNamingCC.js.map +1 -1
  486. package/build/esm/cc/NotificationCC._validateArgs.d.ts.map +1 -1
  487. package/build/esm/cc/NotificationCC._validateArgs.js.map +1 -1
  488. package/build/esm/cc/NotificationCC.d.ts +5 -357
  489. package/build/esm/cc/NotificationCC.d.ts.map +1 -1
  490. package/build/esm/cc/NotificationCC.js +9 -9
  491. package/build/esm/cc/NotificationCC.js.map +1 -1
  492. package/build/esm/cc/PowerlevelCC._validateArgs.d.ts.map +1 -1
  493. package/build/esm/cc/PowerlevelCC._validateArgs.js.map +1 -1
  494. package/build/esm/cc/PowerlevelCC.d.ts +1 -1
  495. package/build/esm/cc/PowerlevelCC.d.ts.map +1 -1
  496. package/build/esm/cc/PowerlevelCC.js +2 -2
  497. package/build/esm/cc/PowerlevelCC.js.map +1 -1
  498. package/build/esm/cc/ProtectionCC._validateArgs.d.ts.map +1 -1
  499. package/build/esm/cc/ProtectionCC._validateArgs.js.map +1 -1
  500. package/build/esm/cc/ProtectionCC.d.ts +4 -212
  501. package/build/esm/cc/ProtectionCC.d.ts.map +1 -1
  502. package/build/esm/cc/ProtectionCC.js +2 -3
  503. package/build/esm/cc/ProtectionCC.js.map +1 -1
  504. package/build/esm/cc/SceneActivationCC._validateArgs.d.ts.map +1 -1
  505. package/build/esm/cc/SceneActivationCC._validateArgs.js.map +1 -1
  506. package/build/esm/cc/SceneActivationCC.d.ts +4 -59
  507. package/build/esm/cc/SceneActivationCC.d.ts.map +1 -1
  508. package/build/esm/cc/SceneActivationCC.js +1 -2
  509. package/build/esm/cc/SceneActivationCC.js.map +1 -1
  510. package/build/esm/cc/SceneActuatorConfigurationCC._validateArgs.d.ts.map +1 -1
  511. package/build/esm/cc/SceneActuatorConfigurationCC._validateArgs.js.map +1 -1
  512. package/build/esm/cc/SceneActuatorConfigurationCC.d.ts +4 -65
  513. package/build/esm/cc/SceneActuatorConfigurationCC.d.ts.map +1 -1
  514. package/build/esm/cc/SceneActuatorConfigurationCC.js +2 -3
  515. package/build/esm/cc/SceneActuatorConfigurationCC.js.map +1 -1
  516. package/build/esm/cc/SceneControllerConfigurationCC._validateArgs.d.ts.map +1 -1
  517. package/build/esm/cc/SceneControllerConfigurationCC._validateArgs.js.map +1 -1
  518. package/build/esm/cc/SceneControllerConfigurationCC.d.ts +3 -64
  519. package/build/esm/cc/SceneControllerConfigurationCC.d.ts.map +1 -1
  520. package/build/esm/cc/SceneControllerConfigurationCC.js +1 -2
  521. package/build/esm/cc/SceneControllerConfigurationCC.js.map +1 -1
  522. package/build/esm/cc/ScheduleEntryLockCC._validateArgs.d.ts.map +1 -1
  523. package/build/esm/cc/ScheduleEntryLockCC._validateArgs.js.map +1 -1
  524. package/build/esm/cc/ScheduleEntryLockCC.d.ts +4 -163
  525. package/build/esm/cc/ScheduleEntryLockCC.d.ts.map +1 -1
  526. package/build/esm/cc/ScheduleEntryLockCC.js +0 -1
  527. package/build/esm/cc/ScheduleEntryLockCC.js.map +1 -1
  528. package/build/esm/cc/Security2CC.d.ts +1 -1
  529. package/build/esm/cc/Security2CC.d.ts.map +1 -1
  530. package/build/esm/cc/Security2CC.js +2 -2
  531. package/build/esm/cc/Security2CC.js.map +1 -1
  532. package/build/esm/cc/SecurityCC.d.ts +4 -2
  533. package/build/esm/cc/SecurityCC.d.ts.map +1 -1
  534. package/build/esm/cc/SecurityCC.js +2 -2
  535. package/build/esm/cc/SecurityCC.js.map +1 -1
  536. package/build/esm/cc/SoundSwitchCC._validateArgs.d.ts.map +1 -1
  537. package/build/esm/cc/SoundSwitchCC._validateArgs.js.map +1 -1
  538. package/build/esm/cc/SoundSwitchCC.d.ts +4 -123
  539. package/build/esm/cc/SoundSwitchCC.d.ts.map +1 -1
  540. package/build/esm/cc/SoundSwitchCC.js +7 -3
  541. package/build/esm/cc/SoundSwitchCC.js.map +1 -1
  542. package/build/esm/cc/SupervisionCC.d.ts +3 -31
  543. package/build/esm/cc/SupervisionCC.d.ts.map +1 -1
  544. package/build/esm/cc/SupervisionCC.js +9 -7
  545. package/build/esm/cc/SupervisionCC.js.map +1 -1
  546. package/build/esm/cc/ThermostatFanModeCC._validateArgs.d.ts.map +1 -1
  547. package/build/esm/cc/ThermostatFanModeCC._validateArgs.js.map +1 -1
  548. package/build/esm/cc/ThermostatFanModeCC.d.ts +4 -84
  549. package/build/esm/cc/ThermostatFanModeCC.d.ts.map +1 -1
  550. package/build/esm/cc/ThermostatFanModeCC.js +4 -5
  551. package/build/esm/cc/ThermostatFanModeCC.js.map +1 -1
  552. package/build/esm/cc/ThermostatFanStateCC.d.ts +4 -33
  553. package/build/esm/cc/ThermostatFanStateCC.d.ts.map +1 -1
  554. package/build/esm/cc/ThermostatFanStateCC.js +1 -2
  555. package/build/esm/cc/ThermostatFanStateCC.js.map +1 -1
  556. package/build/esm/cc/ThermostatModeCC._validateArgs.d.ts.map +1 -1
  557. package/build/esm/cc/ThermostatModeCC._validateArgs.js.map +1 -1
  558. package/build/esm/cc/ThermostatModeCC.d.ts +4 -84
  559. package/build/esm/cc/ThermostatModeCC.d.ts.map +1 -1
  560. package/build/esm/cc/ThermostatModeCC.js +2 -3
  561. package/build/esm/cc/ThermostatModeCC.js.map +1 -1
  562. package/build/esm/cc/ThermostatOperatingStateCC.d.ts +4 -33
  563. package/build/esm/cc/ThermostatOperatingStateCC.d.ts.map +1 -1
  564. package/build/esm/cc/ThermostatOperatingStateCC.js +1 -2
  565. package/build/esm/cc/ThermostatOperatingStateCC.js.map +1 -1
  566. package/build/esm/cc/ThermostatSetbackCC._validateArgs.d.ts.map +1 -1
  567. package/build/esm/cc/ThermostatSetbackCC._validateArgs.js.map +1 -1
  568. package/build/esm/cc/ThermostatSetbackCC.d.ts +1 -1
  569. package/build/esm/cc/ThermostatSetbackCC.d.ts.map +1 -1
  570. package/build/esm/cc/ThermostatSetbackCC.js.map +1 -1
  571. package/build/esm/cc/ThermostatSetpointCC._validateArgs.d.ts.map +1 -1
  572. package/build/esm/cc/ThermostatSetpointCC._validateArgs.js.map +1 -1
  573. package/build/esm/cc/ThermostatSetpointCC.d.ts +5 -90
  574. package/build/esm/cc/ThermostatSetpointCC.d.ts.map +1 -1
  575. package/build/esm/cc/ThermostatSetpointCC.js +1 -2
  576. package/build/esm/cc/ThermostatSetpointCC.js.map +1 -1
  577. package/build/esm/cc/TimeCC._validateArgs.d.ts.map +1 -1
  578. package/build/esm/cc/TimeCC._validateArgs.js.map +1 -1
  579. package/build/esm/cc/TimeCC.d.ts +2 -2
  580. package/build/esm/cc/TimeCC.d.ts.map +1 -1
  581. package/build/esm/cc/TimeCC.js.map +1 -1
  582. package/build/esm/cc/TimeParametersCC._validateArgs.d.ts.map +1 -1
  583. package/build/esm/cc/TimeParametersCC._validateArgs.js.map +1 -1
  584. package/build/esm/cc/TimeParametersCC.d.ts +4 -30
  585. package/build/esm/cc/TimeParametersCC.d.ts.map +1 -1
  586. package/build/esm/cc/TimeParametersCC.js +1 -2
  587. package/build/esm/cc/TimeParametersCC.js.map +1 -1
  588. package/build/esm/cc/TransportServiceCC.d.ts +1 -1
  589. package/build/esm/cc/TransportServiceCC.d.ts.map +1 -1
  590. package/build/esm/cc/TransportServiceCC.js +2 -2
  591. package/build/esm/cc/TransportServiceCC.js.map +1 -1
  592. package/build/esm/cc/UserCodeCC._validateArgs.d.ts.map +1 -1
  593. package/build/esm/cc/UserCodeCC._validateArgs.js.map +1 -1
  594. package/build/esm/cc/UserCodeCC.d.ts +4 -415
  595. package/build/esm/cc/UserCodeCC.d.ts.map +1 -1
  596. package/build/esm/cc/UserCodeCC.js +17 -18
  597. package/build/esm/cc/UserCodeCC.js.map +1 -1
  598. package/build/esm/cc/VersionCC._validateArgs.d.ts.map +1 -1
  599. package/build/esm/cc/VersionCC._validateArgs.js.map +1 -1
  600. package/build/esm/cc/VersionCC.d.ts +3 -367
  601. package/build/esm/cc/VersionCC.d.ts.map +1 -1
  602. package/build/esm/cc/VersionCC.js +1 -2
  603. package/build/esm/cc/VersionCC.js.map +1 -1
  604. package/build/esm/cc/WakeUpCC._validateArgs.d.ts.map +1 -1
  605. package/build/esm/cc/WakeUpCC._validateArgs.js.map +1 -1
  606. package/build/esm/cc/WakeUpCC.d.ts +4 -83
  607. package/build/esm/cc/WakeUpCC.d.ts.map +1 -1
  608. package/build/esm/cc/WakeUpCC.js +10 -3
  609. package/build/esm/cc/WakeUpCC.js.map +1 -1
  610. package/build/esm/cc/WindowCoveringCC._validateArgs.d.ts.map +1 -1
  611. package/build/esm/cc/WindowCoveringCC._validateArgs.js.map +1 -1
  612. package/build/esm/cc/WindowCoveringCC.d.ts +4 -207
  613. package/build/esm/cc/WindowCoveringCC.d.ts.map +1 -1
  614. package/build/esm/cc/WindowCoveringCC.js +6 -8
  615. package/build/esm/cc/WindowCoveringCC.js.map +1 -1
  616. package/build/esm/cc/ZWaveLongRangeCC.d.ts.map +1 -1
  617. package/build/esm/cc/ZWaveLongRangeCC.js.map +1 -1
  618. package/build/esm/cc/ZWavePlusCC._validateArgs.d.ts.map +1 -1
  619. package/build/esm/cc/ZWavePlusCC._validateArgs.js.map +1 -1
  620. package/build/esm/cc/ZWavePlusCC.d.ts +4 -129
  621. package/build/esm/cc/ZWavePlusCC.d.ts.map +1 -1
  622. package/build/esm/cc/ZWavePlusCC.js +0 -1
  623. package/build/esm/cc/ZWavePlusCC.js.map +1 -1
  624. package/build/esm/cc/ZWaveProtocolCC.d.ts +1 -1
  625. package/build/esm/cc/ZWaveProtocolCC.d.ts.map +1 -1
  626. package/build/esm/cc/ZWaveProtocolCC.js +4 -4
  627. package/build/esm/cc/ZWaveProtocolCC.js.map +1 -1
  628. package/build/esm/cc/_CCValues.generated.d.ts.map +1 -1
  629. package/build/esm/cc/_CCValues.generated.js.map +1 -1
  630. package/build/esm/cc/index.d.ts.map +1 -1
  631. package/build/esm/cc/index.js.map +1 -1
  632. package/build/esm/cc/manufacturerProprietary/Decorators.d.ts.map +1 -1
  633. package/build/esm/cc/manufacturerProprietary/Decorators.js.map +1 -1
  634. package/build/esm/cc/manufacturerProprietary/FibaroCC._validateArgs.d.ts.map +1 -1
  635. package/build/esm/cc/manufacturerProprietary/FibaroCC._validateArgs.js.map +1 -1
  636. package/build/esm/cc/manufacturerProprietary/FibaroCC.d.ts +1 -1
  637. package/build/esm/cc/manufacturerProprietary/FibaroCC.d.ts.map +1 -1
  638. package/build/esm/cc/manufacturerProprietary/FibaroCC.js.map +1 -1
  639. package/build/esm/index.d.ts.map +1 -1
  640. package/build/esm/index.js.map +1 -1
  641. package/build/esm/index_browser.d.ts.map +1 -1
  642. package/build/esm/index_browser.js.map +1 -1
  643. package/build/esm/index_safe.d.ts.map +1 -1
  644. package/build/esm/index_safe.js.map +1 -1
  645. package/build/esm/lib/API.d.ts +3 -135
  646. package/build/esm/lib/API.d.ts.map +1 -1
  647. package/build/esm/lib/API.js.map +1 -1
  648. package/build/esm/lib/CCValueUtils.d.ts.map +1 -1
  649. package/build/esm/lib/CCValueUtils.js.map +1 -1
  650. package/build/esm/lib/CommandClass.d.ts +1 -1
  651. package/build/esm/lib/CommandClass.d.ts.map +1 -1
  652. package/build/esm/lib/CommandClass.js.map +1 -1
  653. package/build/esm/lib/CommandClassDecorators.d.ts.map +1 -1
  654. package/build/esm/lib/CommandClassDecorators.js.map +1 -1
  655. package/build/esm/lib/EncapsulatingCommandClass.d.ts.map +1 -1
  656. package/build/esm/lib/EncapsulatingCommandClass.js.map +1 -1
  657. package/build/esm/lib/NotificationEventPayload.d.ts.map +1 -1
  658. package/build/esm/lib/NotificationEventPayload.js.map +1 -1
  659. package/build/esm/lib/Security2/Extension.d.ts.map +1 -1
  660. package/build/esm/lib/Security2/Extension.js.map +1 -1
  661. package/build/esm/lib/Security2/shared.d.ts.map +1 -1
  662. package/build/esm/lib/Security2/shared.js.map +1 -1
  663. package/build/esm/lib/SetValueResult.d.ts.map +1 -1
  664. package/build/esm/lib/SetValueResult.js.map +1 -1
  665. package/build/esm/lib/Values.d.ts.map +1 -1
  666. package/build/esm/lib/Values.js.map +1 -1
  667. package/build/esm/lib/_CCAPI.generated.d.ts +136 -0
  668. package/build/esm/lib/_CCAPI.generated.d.ts.map +1 -0
  669. package/build/esm/lib/_CCAPI.generated.js +4 -0
  670. package/build/esm/lib/_CCAPI.generated.js.map +1 -0
  671. package/build/esm/lib/_Types.d.ts.map +1 -1
  672. package/build/esm/lib/_Types.js.map +1 -1
  673. package/build/esm/lib/serializers.d.ts.map +1 -1
  674. package/build/esm/lib/serializers.js.map +1 -1
  675. package/build/esm/lib/traits.d.ts.map +1 -1
  676. package/build/esm/lib/traits.js.map +1 -1
  677. package/build/esm/lib/utils.d.ts.map +1 -1
  678. package/build/esm/lib/utils.js.map +1 -1
  679. package/package.json +11 -11
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../src/cc/WindowCoveringCC.ts"],
4
- "sourcesContent": ["import type { CCEncodingContext, CCParsingContext } from \"@zwave-js/cc\";\nimport {\n\tCommandClasses,\n\tDuration,\n\ttype GetValueDB,\n\ttype MaybeNotKnown,\n\ttype MessageOrCCLogEntry,\n\tMessagePriority,\n\ttype MessageRecord,\n\ttype SupervisionResult,\n\tValueMetadata,\n\ttype WithAddress,\n\tencodeBitMask,\n\tparseBitMask,\n\tvalidatePayload,\n} from \"@zwave-js/core\";\nimport { Bytes, getEnumMemberName, pick } from \"@zwave-js/shared\";\nimport { validateArgs } from \"@zwave-js/transformers\";\nimport {\n\tCCAPI,\n\tPOLL_VALUE,\n\ttype PollValueImplementation,\n\tSET_VALUE,\n\tSET_VALUE_HOOKS,\n\ttype SetValueImplementation,\n\ttype SetValueImplementationHooksFactory,\n\tthrowMissingPropertyKey,\n\tthrowUnsupportedProperty,\n\tthrowUnsupportedPropertyKey,\n\tthrowWrongValueType,\n} from \"../lib/API.js\";\nimport {\n\twindowCoveringParameterToLevelChangeLabel,\n\twindowCoveringParameterToMetadataStates,\n} from \"../lib/CCValueUtils.js\";\nimport {\n\ttype CCRaw,\n\tCommandClass,\n\ttype InterviewContext,\n\ttype RefreshValuesContext,\n} from \"../lib/CommandClass.js\";\nimport {\n\tAPI,\n\tCCCommand,\n\tccValueProperty,\n\tccValues,\n\tcommandClass,\n\texpectedCCResponse,\n\timplementedVersion,\n\tuseSupervision,\n} from \"../lib/CommandClassDecorators.js\";\nimport { V } from \"../lib/Values.js\";\nimport {\n\ttype LevelChangeDirection,\n\tWindowCoveringCommand,\n\tWindowCoveringParameter,\n} from \"../lib/_Types.js\";\n\nexport const WindowCoveringCCValues = V.defineCCValues(\n\tCommandClasses[\"Window Covering\"],\n\t{\n\t\t...V.staticProperty(\n\t\t\t\"supportedParameters\",\n\t\t\tundefined, // meta\n\t\t\t{ internal: true }, // value options\n\t\t),\n\t\t...V.dynamicPropertyAndKeyWithName(\n\t\t\t\"currentValue\",\n\t\t\t\"currentValue\",\n\t\t\t(parameter: WindowCoveringParameter) => parameter,\n\t\t\t({ property, propertyKey }) =>\n\t\t\t\tproperty === \"currentValue\" && typeof propertyKey === \"number\",\n\t\t\t(parameter: WindowCoveringParameter) => {\n\t\t\t\treturn {\n\t\t\t\t\t...ValueMetadata.ReadOnlyLevel,\n\t\t\t\t\tlabel: `Current value - ${\n\t\t\t\t\t\tgetEnumMemberName(\n\t\t\t\t\t\t\tWindowCoveringParameter,\n\t\t\t\t\t\t\tparameter,\n\t\t\t\t\t\t)\n\t\t\t\t\t}`,\n\t\t\t\t\tstates: windowCoveringParameterToMetadataStates(parameter),\n\t\t\t\t\tccSpecific: { parameter },\n\t\t\t\t} as const;\n\t\t\t},\n\t\t),\n\t\t...V.dynamicPropertyAndKeyWithName(\n\t\t\t\"targetValue\",\n\t\t\t\"targetValue\",\n\t\t\t(parameter: WindowCoveringParameter) => parameter,\n\t\t\t({ property, propertyKey }) =>\n\t\t\t\tproperty === \"targetValue\" && typeof propertyKey === \"number\",\n\t\t\t(parameter: WindowCoveringParameter) => {\n\t\t\t\t// Only odd-numbered parameters have position support and are writable\n\t\t\t\tconst writeable = parameter % 2 === 1;\n\t\t\t\treturn {\n\t\t\t\t\t...ValueMetadata.Level,\n\t\t\t\t\tlabel: `Target value - ${\n\t\t\t\t\t\tgetEnumMemberName(\n\t\t\t\t\t\t\tWindowCoveringParameter,\n\t\t\t\t\t\t\tparameter,\n\t\t\t\t\t\t)\n\t\t\t\t\t}`,\n\t\t\t\t\t// Only odd-numbered parameters have position support and are writable\n\t\t\t\t\twriteable: parameter % 2 === 1,\n\t\t\t\t\tstates: windowCoveringParameterToMetadataStates(parameter),\n\t\t\t\t\tallowManualEntry: writeable,\n\t\t\t\t\tccSpecific: { parameter },\n\t\t\t\t\tvalueChangeOptions: [\"transitionDuration\"],\n\t\t\t\t} as const;\n\t\t\t},\n\t\t),\n\t\t...V.dynamicPropertyAndKeyWithName(\n\t\t\t\"duration\",\n\t\t\t\"duration\",\n\t\t\t(parameter: WindowCoveringParameter) => parameter,\n\t\t\t({ property, propertyKey }) =>\n\t\t\t\tproperty === \"duration\" && typeof propertyKey === \"number\",\n\t\t\t(parameter: WindowCoveringParameter) => ({\n\t\t\t\t...ValueMetadata.ReadOnlyDuration,\n\t\t\t\tlabel: `Remaining duration - ${\n\t\t\t\t\tgetEnumMemberName(\n\t\t\t\t\t\tWindowCoveringParameter,\n\t\t\t\t\t\tparameter,\n\t\t\t\t\t)\n\t\t\t\t}`,\n\t\t\t\tccSpecific: {\n\t\t\t\t\tparameter,\n\t\t\t\t},\n\t\t\t} as const),\n\t\t),\n\t\t...V.dynamicPropertyAndKeyWithName(\n\t\t\t\"levelChangeUp\",\n\t\t\t// The direction refers to the change in level, not the physical location\n\t\t\t\"levelChangeUp\",\n\t\t\t(parameter: WindowCoveringParameter) => parameter,\n\t\t\t({ property, propertyKey }) =>\n\t\t\t\tproperty === \"levelChangeUp\" && typeof propertyKey === \"number\",\n\t\t\t(parameter: WindowCoveringParameter) => {\n\t\t\t\treturn {\n\t\t\t\t\t...ValueMetadata.WriteOnlyBoolean,\n\t\t\t\t\tlabel: `${\n\t\t\t\t\t\twindowCoveringParameterToLevelChangeLabel(\n\t\t\t\t\t\t\tparameter,\n\t\t\t\t\t\t\t\"up\",\n\t\t\t\t\t\t)\n\t\t\t\t\t} - ${\n\t\t\t\t\t\tgetEnumMemberName(\n\t\t\t\t\t\t\tWindowCoveringParameter,\n\t\t\t\t\t\t\tparameter,\n\t\t\t\t\t\t)\n\t\t\t\t\t}`,\n\t\t\t\t\tvalueChangeOptions: [\"transitionDuration\"],\n\t\t\t\t\tstates: {\n\t\t\t\t\t\ttrue: \"Start\",\n\t\t\t\t\t\tfalse: \"Stop\",\n\t\t\t\t\t},\n\t\t\t\t\tccSpecific: { parameter },\n\t\t\t\t} as const;\n\t\t\t},\n\t\t),\n\t\t...V.dynamicPropertyAndKeyWithName(\n\t\t\t\"levelChangeDown\",\n\t\t\t// The direction refers to the change in level, not the physical location\n\t\t\t\"levelChangeDown\",\n\t\t\t(parameter: WindowCoveringParameter) => parameter,\n\t\t\t({ property, propertyKey }) =>\n\t\t\t\tproperty === \"levelChangeDown\"\n\t\t\t\t&& typeof propertyKey === \"number\",\n\t\t\t(parameter: WindowCoveringParameter) => {\n\t\t\t\treturn {\n\t\t\t\t\t...ValueMetadata.WriteOnlyBoolean,\n\t\t\t\t\tlabel: `${\n\t\t\t\t\t\twindowCoveringParameterToLevelChangeLabel(\n\t\t\t\t\t\t\tparameter,\n\t\t\t\t\t\t\t\"down\",\n\t\t\t\t\t\t)\n\t\t\t\t\t} - ${\n\t\t\t\t\t\tgetEnumMemberName(\n\t\t\t\t\t\t\tWindowCoveringParameter,\n\t\t\t\t\t\t\tparameter,\n\t\t\t\t\t\t)\n\t\t\t\t\t}`,\n\t\t\t\t\tvalueChangeOptions: [\"transitionDuration\"],\n\t\t\t\t\tstates: {\n\t\t\t\t\t\ttrue: \"Start\",\n\t\t\t\t\t\tfalse: \"Stop\",\n\t\t\t\t\t},\n\t\t\t\t\tccSpecific: { parameter },\n\t\t\t\t} as const;\n\t\t\t},\n\t\t),\n\t},\n);\n\n@API(CommandClasses[\"Window Covering\"])\nexport class WindowCoveringCCAPI extends CCAPI {\n\tpublic supportsCommand(cmd: WindowCoveringCommand): MaybeNotKnown<boolean> {\n\t\tswitch (cmd) {\n\t\t\tcase WindowCoveringCommand.Get:\n\t\t\tcase WindowCoveringCommand.Set:\n\t\t\tcase WindowCoveringCommand.SupportedGet:\n\t\t\tcase WindowCoveringCommand.StartLevelChange:\n\t\t\tcase WindowCoveringCommand.StopLevelChange:\n\t\t\t\treturn true; // This is mandatory\n\t\t}\n\t\treturn super.supportsCommand(cmd);\n\t}\n\n\tprotected override get [SET_VALUE](): SetValueImplementation {\n\t\treturn async function(\n\t\t\tthis: WindowCoveringCCAPI,\n\t\t\t{ property, propertyKey },\n\t\t\tvalue,\n\t\t\toptions,\n\t\t) {\n\t\t\tconst valueId = {\n\t\t\t\tcommandClass: this.ccId,\n\t\t\t\tproperty,\n\t\t\t\tpropertyKey,\n\t\t\t};\n\n\t\t\tif (WindowCoveringCCValues.targetValue.is(valueId)) {\n\t\t\t\tif (\n\t\t\t\t\ttypeof propertyKey !== \"number\"\n\t\t\t\t\t// Only odd-numbered parameters have position support and are writable\n\t\t\t\t\t|| propertyKey % 2 === 0\n\t\t\t\t) {\n\t\t\t\t\tthrowUnsupportedPropertyKey(\n\t\t\t\t\t\tthis.ccId,\n\t\t\t\t\t\tproperty,\n\t\t\t\t\t\tpropertyKey!,\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\tif (typeof value !== \"number\") {\n\t\t\t\t\tthrowWrongValueType(\n\t\t\t\t\t\tthis.ccId,\n\t\t\t\t\t\tproperty,\n\t\t\t\t\t\t\"number\",\n\t\t\t\t\t\ttypeof value,\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\tconst parameter = propertyKey;\n\t\t\t\tconst duration = Duration.from(options?.transitionDuration);\n\n\t\t\t\treturn this.set([{ parameter, value }], duration);\n\t\t\t} else if (\n\t\t\t\tWindowCoveringCCValues.levelChangeUp.is(valueId)\n\t\t\t\t|| WindowCoveringCCValues.levelChangeDown.is(valueId)\n\t\t\t) {\n\t\t\t\tif (typeof value !== \"boolean\") {\n\t\t\t\t\tthrowWrongValueType(\n\t\t\t\t\t\tthis.ccId,\n\t\t\t\t\t\tproperty,\n\t\t\t\t\t\t\"boolean\",\n\t\t\t\t\t\ttypeof value,\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\tconst parameter = propertyKey as number;\n\t\t\t\tconst direction = WindowCoveringCCValues.levelChangeUp.is(\n\t\t\t\t\t\tvalueId,\n\t\t\t\t\t)\n\t\t\t\t\t? \"up\"\n\t\t\t\t\t: \"down\";\n\n\t\t\t\tif (value) {\n\t\t\t\t\t// Perform the level change\n\t\t\t\t\tconst duration = Duration.from(options?.transitionDuration);\n\t\t\t\t\treturn this.startLevelChange(\n\t\t\t\t\t\tparameter,\n\t\t\t\t\t\tdirection,\n\t\t\t\t\t\tduration,\n\t\t\t\t\t);\n\t\t\t\t} else {\n\t\t\t\t\treturn this.stopLevelChange(parameter);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tthrowUnsupportedProperty(this.ccId, property);\n\t\t\t}\n\t\t};\n\t}\n\n\tprotected [SET_VALUE_HOOKS]: SetValueImplementationHooksFactory = (\n\t\t{ property, propertyKey },\n\t\tvalue,\n\t\toptions,\n\t) => {\n\t\tconst valueId = {\n\t\t\tcommandClass: this.ccId,\n\t\t\tproperty,\n\t\t\tpropertyKey,\n\t\t};\n\n\t\tif (WindowCoveringCCValues.targetValue.is(valueId)) {\n\t\t\tif (typeof propertyKey !== \"number\") return;\n\t\t\tconst parameter = propertyKey;\n\n\t\t\tconst duration = Duration.from(options?.transitionDuration);\n\n\t\t\tconst currentValueValueId = WindowCoveringCCValues.currentValue(\n\t\t\t\tparameter,\n\t\t\t).endpoint(this.endpoint.index);\n\n\t\t\treturn {\n\t\t\t\t// Window Covering commands may take some time to be executed.\n\t\t\t\t// Therefore we try to supervise the command execution and delay the\n\t\t\t\t// optimistic update until the final result is received.\n\t\t\t\tsupervisionDelayedUpdates: true,\n\t\t\t\tsupervisionOnSuccess: async () => {\n\t\t\t\t\t// Only update currentValue for valid target values\n\t\t\t\t\tif (\n\t\t\t\t\t\ttypeof value === \"number\"\n\t\t\t\t\t\t&& value >= 0\n\t\t\t\t\t\t&& value <= 99\n\t\t\t\t\t) {\n\t\t\t\t\t\tthis.tryGetValueDB()?.setValue(\n\t\t\t\t\t\t\tcurrentValueValueId,\n\t\t\t\t\t\t\tvalue,\n\t\t\t\t\t\t);\n\t\t\t\t\t} else if (value === 255) {\n\t\t\t\t\t\t// We don't know the status now, so refresh the current value\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tawait this.get(parameter);\n\t\t\t\t\t\t} catch {\n\t\t\t\t\t\t\t// ignore\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tsupervisionOnFailure: async () => {\n\t\t\t\t\t// The transition failed, so now we don't know the status - refresh the current value\n\t\t\t\t\ttry {\n\t\t\t\t\t\tawait this.get(parameter);\n\t\t\t\t\t} catch {\n\t\t\t\t\t\t// ignore\n\t\t\t\t\t}\n\t\t\t\t},\n\n\t\t\t\toptimisticallyUpdateRelatedValues: (\n\t\t\t\t\t_supervisedAndSuccessful,\n\t\t\t\t) => {\n\t\t\t\t\t// Only update currentValue for valid target values\n\t\t\t\t\tif (\n\t\t\t\t\t\ttypeof value === \"number\"\n\t\t\t\t\t\t&& value >= 0\n\t\t\t\t\t\t&& value <= 99\n\t\t\t\t\t) {\n\t\t\t\t\t\tif (this.isSinglecast()) {\n\t\t\t\t\t\t\tthis.tryGetValueDB()?.setValue(\n\t\t\t\t\t\t\t\tcurrentValueValueId,\n\t\t\t\t\t\t\t\tvalue,\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t} else if (this.isMulticast()) {\n\t\t\t\t\t\t\t// Figure out which nodes were affected by this command\n\t\t\t\t\t\t\tconst affectedNodes = this.endpoint.node\n\t\t\t\t\t\t\t\t.physicalNodes.filter(\n\t\t\t\t\t\t\t\t\t(node) =>\n\t\t\t\t\t\t\t\t\t\tnode\n\t\t\t\t\t\t\t\t\t\t\t.getEndpoint(this.endpoint.index)\n\t\t\t\t\t\t\t\t\t\t\t?.supportsCC(this.ccId),\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t// and optimistically update the currentValue\n\t\t\t\t\t\t\tfor (const node of affectedNodes) {\n\t\t\t\t\t\t\t\tthis.host\n\t\t\t\t\t\t\t\t\t.tryGetValueDB(node.id)\n\t\t\t\t\t\t\t\t\t?.setValue(currentValueValueId, value);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\n\t\t\t\tverifyChanges: () => {\n\t\t\t\t\tif (this.isSinglecast()) {\n\t\t\t\t\t\t// We query currentValue instead of targetValue to make sure that unsolicited updates cancel the scheduled poll\n\t\t\t\t\t\tthis.schedulePoll(currentValueValueId, value, {\n\t\t\t\t\t\t\tduration,\n\t\t\t\t\t\t});\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// For multicasts, do not schedule a refresh - this could cause a LOT of traffic\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t};\n\t\t}\n\t};\n\n\tprotected get [POLL_VALUE](): PollValueImplementation {\n\t\treturn async function(\n\t\t\tthis: WindowCoveringCCAPI,\n\t\t\t{ property, propertyKey },\n\t\t) {\n\t\t\tswitch (property) {\n\t\t\t\tcase \"currentValue\":\n\t\t\t\tcase \"targetValue\":\n\t\t\t\tcase \"duration\":\n\t\t\t\t\tif (propertyKey == undefined) {\n\t\t\t\t\t\tthrowMissingPropertyKey(this.ccId, property);\n\t\t\t\t\t} else if (typeof propertyKey !== \"number\") {\n\t\t\t\t\t\tthrowUnsupportedPropertyKey(\n\t\t\t\t\t\t\tthis.ccId,\n\t\t\t\t\t\t\tproperty,\n\t\t\t\t\t\t\tpropertyKey,\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\treturn (await this.get(propertyKey))?.[property];\n\t\t\t\tdefault:\n\t\t\t\t\tthrowUnsupportedProperty(this.ccId, property);\n\t\t\t}\n\t\t};\n\t}\n\n\tpublic async getSupported(): Promise<\n\t\tMaybeNotKnown<readonly WindowCoveringParameter[]>\n\t> {\n\t\tthis.assertSupportsCommand(\n\t\t\tWindowCoveringCommand,\n\t\t\tWindowCoveringCommand.SupportedGet,\n\t\t);\n\n\t\tconst cc = new WindowCoveringCCSupportedGet({\n\t\t\tnodeId: this.endpoint.nodeId,\n\t\t\tendpointIndex: this.endpoint.index,\n\t\t});\n\t\tconst response = await this.host.sendCommand<\n\t\t\tWindowCoveringCCSupportedReport\n\t\t>(\n\t\t\tcc,\n\t\t\tthis.commandOptions,\n\t\t);\n\t\treturn response?.supportedParameters;\n\t}\n\n\t@validateArgs({ strictEnums: true })\n\t// oxlint-disable-next-line typescript/explicit-module-boundary-types\n\tpublic async get(parameter: WindowCoveringParameter) {\n\t\tthis.assertSupportsCommand(\n\t\t\tWindowCoveringCommand,\n\t\t\tWindowCoveringCommand.Get,\n\t\t);\n\n\t\tconst cc = new WindowCoveringCCGet({\n\t\t\tnodeId: this.endpoint.nodeId,\n\t\t\tendpointIndex: this.endpoint.index,\n\t\t\tparameter,\n\t\t});\n\t\tconst response = await this.host.sendCommand<\n\t\t\tWindowCoveringCCReport\n\t\t>(\n\t\t\tcc,\n\t\t\tthis.commandOptions,\n\t\t);\n\t\tif (response) {\n\t\t\treturn pick(response, [\"currentValue\", \"targetValue\", \"duration\"]);\n\t\t}\n\t}\n\n\t@validateArgs()\n\tpublic async set(\n\t\ttargetValues: {\n\t\t\tparameter: WindowCoveringParameter;\n\t\t\tvalue: number;\n\t\t}[],\n\t\tduration?: Duration | string,\n\t): Promise<SupervisionResult | undefined> {\n\t\tthis.assertSupportsCommand(\n\t\t\tWindowCoveringCommand,\n\t\t\tWindowCoveringCommand.StartLevelChange,\n\t\t);\n\n\t\tconst cc = new WindowCoveringCCSet({\n\t\t\tnodeId: this.endpoint.nodeId,\n\t\t\tendpointIndex: this.endpoint.index,\n\t\t\ttargetValues,\n\t\t\tduration,\n\t\t});\n\n\t\treturn this.host.sendCommand(cc, this.commandOptions);\n\t}\n\n\t@validateArgs({ strictEnums: true })\n\tpublic async startLevelChange(\n\t\tparameter: WindowCoveringParameter,\n\t\tdirection: keyof typeof LevelChangeDirection,\n\t\tduration?: Duration | string,\n\t): Promise<SupervisionResult | undefined> {\n\t\tthis.assertSupportsCommand(\n\t\t\tWindowCoveringCommand,\n\t\t\tWindowCoveringCommand.StartLevelChange,\n\t\t);\n\n\t\tconst cc = new WindowCoveringCCStartLevelChange({\n\t\t\tnodeId: this.endpoint.nodeId,\n\t\t\tendpointIndex: this.endpoint.index,\n\t\t\tparameter,\n\t\t\tdirection,\n\t\t\tduration,\n\t\t});\n\n\t\treturn this.host.sendCommand(cc, this.commandOptions);\n\t}\n\n\t@validateArgs({ strictEnums: true })\n\tpublic async stopLevelChange(\n\t\tparameter: WindowCoveringParameter,\n\t): Promise<SupervisionResult | undefined> {\n\t\tthis.assertSupportsCommand(\n\t\t\tWindowCoveringCommand,\n\t\t\tWindowCoveringCommand.StopLevelChange,\n\t\t);\n\n\t\tconst cc = new WindowCoveringCCStopLevelChange({\n\t\t\tnodeId: this.endpoint.nodeId,\n\t\t\tendpointIndex: this.endpoint.index,\n\t\t\tparameter,\n\t\t});\n\n\t\treturn this.host.sendCommand(cc, this.commandOptions);\n\t}\n}\n\n@commandClass(CommandClasses[\"Window Covering\"])\n@implementedVersion(1)\n@ccValues(WindowCoveringCCValues)\nexport class WindowCoveringCC extends CommandClass {\n\tdeclare ccCommand: WindowCoveringCommand;\n\n\tpublic async interview(\n\t\tctx: InterviewContext,\n\t): Promise<void> {\n\t\tconst node = this.getNode(ctx)!;\n\t\tconst endpoint = this.getEndpoint(ctx)!;\n\t\tconst api = CCAPI.create(\n\t\t\tCommandClasses[\"Window Covering\"],\n\t\t\tctx,\n\t\t\tendpoint,\n\t\t).withOptions({\n\t\t\tpriority: MessagePriority.NodeQuery,\n\t\t});\n\n\t\tctx.logNode(node.id, {\n\t\t\tendpoint: this.endpointIndex,\n\t\t\tmessage: `Interviewing ${this.ccName}...`,\n\t\t\tdirection: \"none\",\n\t\t});\n\n\t\tctx.logNode(node.id, {\n\t\t\tendpoint: this.endpointIndex,\n\t\t\tmessage: \"querying supported window covering parameters...\",\n\t\t\tdirection: \"outbound\",\n\t\t});\n\t\tconst supported = await api.getSupported();\n\t\tif (supported?.length) {\n\t\t\tconst logMessage = `supported window covering parameters:\n${\n\t\t\t\tsupported\n\t\t\t\t\t.map((p) =>\n\t\t\t\t\t\t`\u00B7 ${getEnumMemberName(WindowCoveringParameter, p)}`\n\t\t\t\t\t)\n\t\t\t\t\t.join(\"\\n\")\n\t\t\t}`;\n\t\t\tctx.logNode(node.id, {\n\t\t\t\tendpoint: this.endpointIndex,\n\t\t\t\tmessage: logMessage,\n\t\t\t\tdirection: \"inbound\",\n\t\t\t});\n\n\t\t\t// Create metadata for all supported parameters\n\t\t\tfor (const param of supported) {\n\t\t\t\t// Default values\n\t\t\t\tthis.setMetadata(\n\t\t\t\t\tctx,\n\t\t\t\t\tWindowCoveringCCValues.currentValue(param),\n\t\t\t\t);\n\t\t\t\tthis.setMetadata(\n\t\t\t\t\tctx,\n\t\t\t\t\tWindowCoveringCCValues.targetValue(param),\n\t\t\t\t);\n\t\t\t\tthis.setMetadata(\n\t\t\t\t\tctx,\n\t\t\t\t\tWindowCoveringCCValues.duration(param),\n\t\t\t\t);\n\n\t\t\t\t// Level change values\n\t\t\t\tthis.setMetadata(\n\t\t\t\t\tctx,\n\t\t\t\t\tWindowCoveringCCValues.levelChangeUp(param),\n\t\t\t\t);\n\t\t\t\tthis.setMetadata(\n\t\t\t\t\tctx,\n\t\t\t\t\tWindowCoveringCCValues.levelChangeDown(param),\n\t\t\t\t);\n\t\t\t}\n\n\t\t\t// Query current values for all supported parameters\n\t\t\tawait this.refreshValues(ctx);\n\t\t}\n\n\t\t// Remember that the interview is complete\n\t\tthis.setInterviewComplete(ctx, true);\n\t}\n\n\tpublic async refreshValues(\n\t\tctx: RefreshValuesContext,\n\t): Promise<void> {\n\t\tconst node = this.getNode(ctx)!;\n\t\tconst endpoint = this.getEndpoint(ctx)!;\n\t\tconst api = CCAPI.create(\n\t\t\tCommandClasses[\"Window Covering\"],\n\t\t\tctx,\n\t\t\tendpoint,\n\t\t).withOptions({\n\t\t\tpriority: MessagePriority.NodeQuery,\n\t\t});\n\n\t\tconst parameters: number[] = this.getValue(\n\t\t\tctx,\n\t\t\tWindowCoveringCCValues.supportedParameters,\n\t\t) ?? [];\n\n\t\tfor (const param of parameters) {\n\t\t\t// Only query odd parameters (with position support)\n\t\t\tif (param % 2 == 0) continue;\n\n\t\t\tctx.logNode(node.id, {\n\t\t\t\tendpoint: this.endpointIndex,\n\t\t\t\tmessage: `querying position for parameter ${\n\t\t\t\t\tgetEnumMemberName(\n\t\t\t\t\t\tWindowCoveringParameter,\n\t\t\t\t\t\tparam,\n\t\t\t\t\t)\n\t\t\t\t}...`,\n\t\t\t\tdirection: \"outbound\",\n\t\t\t});\n\t\t\tawait api.get(param);\n\t\t}\n\t}\n\n\tpublic translatePropertyKey(\n\t\tctx: GetValueDB,\n\t\tproperty: string | number,\n\t\tpropertyKey: string | number,\n\t): string | undefined {\n\t\tif (typeof propertyKey === \"number\") {\n\t\t\treturn getEnumMemberName(WindowCoveringParameter, propertyKey);\n\t\t}\n\t\treturn super.translatePropertyKey(ctx, property, propertyKey);\n\t}\n}\n\n// @publicAPI\nexport interface WindowCoveringCCSupportedReportOptions {\n\tsupportedParameters: readonly WindowCoveringParameter[];\n}\n\n@CCCommand(WindowCoveringCommand.SupportedReport)\n@ccValueProperty(\n\t\"supportedParameters\",\n\tWindowCoveringCCValues.supportedParameters,\n)\nexport class WindowCoveringCCSupportedReport extends WindowCoveringCC {\n\tpublic constructor(\n\t\toptions: WithAddress<WindowCoveringCCSupportedReportOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.supportedParameters = options.supportedParameters;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): WindowCoveringCCSupportedReport {\n\t\tvalidatePayload(raw.payload.length >= 1);\n\n\t\tconst numBitmaskBytes = raw.payload[0] & 0b1111;\n\t\tvalidatePayload(raw.payload.length >= 1 + numBitmaskBytes);\n\t\tconst bitmask = raw.payload.subarray(1, 1 + numBitmaskBytes);\n\t\tconst supportedParameters: WindowCoveringParameter[] = parseBitMask(\n\t\t\tbitmask,\n\t\t\tWindowCoveringParameter[\"Outbound Left (no position)\"],\n\t\t);\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tsupportedParameters,\n\t\t});\n\t}\n\n\tpublic readonly supportedParameters: readonly WindowCoveringParameter[];\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tconst bitmask = encodeBitMask(\n\t\t\tthis.supportedParameters,\n\t\t\tundefined,\n\t\t\tWindowCoveringParameter[\"Outbound Left (no position)\"],\n\t\t).subarray(0, 15);\n\t\tconst numBitmaskBytes = bitmask.length & 0b1111;\n\n\t\tthis.payload = Bytes.concat([\n\t\t\t[numBitmaskBytes],\n\t\t\tbitmask.subarray(0, numBitmaskBytes),\n\t\t]);\n\n\t\treturn super.serialize(ctx);\n\t}\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage: {\n\t\t\t\t\"supported parameters\": this.supportedParameters\n\t\t\t\t\t.map(\n\t\t\t\t\t\t(p) =>\n\t\t\t\t\t\t\t`\\n\u00B7 ${\n\t\t\t\t\t\t\t\tgetEnumMemberName(\n\t\t\t\t\t\t\t\t\tWindowCoveringParameter,\n\t\t\t\t\t\t\t\t\tp,\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t}`,\n\t\t\t\t\t)\n\t\t\t\t\t.join(\"\"),\n\t\t\t},\n\t\t};\n\t}\n}\n\n@CCCommand(WindowCoveringCommand.SupportedGet)\n@expectedCCResponse(WindowCoveringCCSupportedReport)\nexport class WindowCoveringCCSupportedGet extends WindowCoveringCC {}\n\n// @publicAPI\nexport interface WindowCoveringCCReportOptions {\n\tparameter: WindowCoveringParameter;\n\tcurrentValue: number;\n\ttargetValue: number;\n\tduration: Duration;\n}\n\n@CCCommand(WindowCoveringCommand.Report)\n@ccValueProperty(\n\t\"currentValue\",\n\tWindowCoveringCCValues.currentValue,\n\t(self) => [self.parameter],\n)\n@ccValueProperty(\n\t\"targetValue\",\n\tWindowCoveringCCValues.targetValue,\n\t(self) => [self.parameter],\n)\n@ccValueProperty(\n\t\"duration\",\n\tWindowCoveringCCValues.duration,\n\t(self) => [self.parameter],\n)\nexport class WindowCoveringCCReport extends WindowCoveringCC {\n\tpublic constructor(\n\t\toptions: WithAddress<WindowCoveringCCReportOptions>,\n\t) {\n\t\tsuper(options);\n\n\t\t// TODO: Check implementation:\n\t\tthis.parameter = options.parameter;\n\t\tthis.currentValue = options.currentValue;\n\t\tthis.targetValue = options.targetValue;\n\t\tthis.duration = options.duration;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): WindowCoveringCCReport {\n\t\tvalidatePayload(raw.payload.length >= 4);\n\t\tconst parameter: WindowCoveringParameter = raw.payload[0];\n\t\tconst currentValue = raw.payload[1];\n\t\tconst targetValue = raw.payload[2];\n\t\tconst duration = Duration.parseReport(raw.payload[3])\n\t\t\t?? Duration.unknown();\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tparameter,\n\t\t\tcurrentValue,\n\t\t\ttargetValue,\n\t\t\tduration,\n\t\t});\n\t}\n\n\tpublic readonly parameter: WindowCoveringParameter;\n\tpublic readonly currentValue: number;\n\tpublic readonly targetValue: number;\n\tpublic readonly duration: Duration;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([\n\t\t\tthis.parameter,\n\t\t\tthis.currentValue,\n\t\t\tthis.targetValue,\n\t\t\tthis.duration.serializeReport(),\n\t\t]);\n\t\treturn super.serialize(ctx);\n\t}\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage: {\n\t\t\t\tparameter: getEnumMemberName(\n\t\t\t\t\tWindowCoveringParameter,\n\t\t\t\t\tthis.parameter,\n\t\t\t\t),\n\t\t\t\t\"current value\": this.currentValue,\n\t\t\t\t\"target value\": this.targetValue,\n\t\t\t\tduration: this.duration.toString(),\n\t\t\t},\n\t\t};\n\t}\n}\n\n// @publicAPI\nexport interface WindowCoveringCCGetOptions {\n\tparameter: WindowCoveringParameter;\n}\n\nfunction testResponseForWindowCoveringGet(\n\tsent: WindowCoveringCCGet,\n\treceived: WindowCoveringCCReport,\n) {\n\treturn received.parameter === sent.parameter;\n}\n\n@CCCommand(WindowCoveringCommand.Get)\n@expectedCCResponse(WindowCoveringCCReport, testResponseForWindowCoveringGet)\nexport class WindowCoveringCCGet extends WindowCoveringCC {\n\tpublic constructor(\n\t\toptions: WithAddress<WindowCoveringCCGetOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.parameter = options.parameter;\n\t}\n\n\tpublic static from(raw: CCRaw, ctx: CCParsingContext): WindowCoveringCCGet {\n\t\tvalidatePayload(raw.payload.length >= 1);\n\t\tconst parameter: WindowCoveringParameter = raw.payload[0];\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tparameter,\n\t\t});\n\t}\n\n\tpublic parameter: WindowCoveringParameter;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([this.parameter]);\n\t\treturn super.serialize(ctx);\n\t}\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage: {\n\t\t\t\tparameter: getEnumMemberName(\n\t\t\t\t\tWindowCoveringParameter,\n\t\t\t\t\tthis.parameter,\n\t\t\t\t),\n\t\t\t},\n\t\t};\n\t}\n}\n\n// @publicAPI\nexport interface WindowCoveringCCSetOptions {\n\ttargetValues: {\n\t\tparameter: WindowCoveringParameter;\n\t\tvalue: number;\n\t}[];\n\tduration?: Duration | string;\n}\n\n@CCCommand(WindowCoveringCommand.Set)\n@useSupervision()\nexport class WindowCoveringCCSet extends WindowCoveringCC {\n\tpublic constructor(\n\t\toptions: WithAddress<WindowCoveringCCSetOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.targetValues = options.targetValues;\n\t\tthis.duration = Duration.from(options.duration);\n\t}\n\n\tpublic static from(raw: CCRaw, ctx: CCParsingContext): WindowCoveringCCSet {\n\t\tvalidatePayload(raw.payload.length >= 1);\n\t\tconst numEntries = raw.payload[0] & 0b11111;\n\n\t\tvalidatePayload(raw.payload.length >= 1 + numEntries * 2);\n\t\tconst targetValues: WindowCoveringCCSetOptions[\"targetValues\"] = [];\n\n\t\tfor (let i = 0; i < numEntries; i++) {\n\t\t\tconst offset = 1 + i * 2;\n\t\t\ttargetValues.push({\n\t\t\t\tparameter: raw.payload[offset],\n\t\t\t\tvalue: raw.payload[offset + 1],\n\t\t\t});\n\t\t}\n\n\t\tlet duration: Duration | undefined;\n\n\t\tif (raw.payload.length >= 2 + numEntries * 2) {\n\t\t\tduration = Duration.parseSet(\n\t\t\t\traw.payload[1 + numEntries * 2],\n\t\t\t);\n\t\t}\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\ttargetValues,\n\t\t\tduration,\n\t\t});\n\t}\n\n\tpublic targetValues: {\n\t\tparameter: WindowCoveringParameter;\n\t\tvalue: number;\n\t}[];\n\tpublic duration: Duration | undefined;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tconst numEntries = this.targetValues.length & 0b11111;\n\t\tthis.payload = new Bytes(2 + numEntries * 2);\n\n\t\tthis.payload[0] = numEntries;\n\t\tfor (let i = 0; i < numEntries; i++) {\n\t\t\tconst offset = 1 + i * 2;\n\t\t\tthis.payload[offset] = this.targetValues[i].parameter;\n\t\t\tthis.payload[offset + 1] = this.targetValues[i].value;\n\t\t}\n\n\t\tthis.payload[this.payload.length - 1] = (\n\t\t\tthis.duration ?? Duration.default()\n\t\t).serializeSet();\n\n\t\treturn super.serialize(ctx);\n\t}\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\tconst message: MessageRecord = {};\n\t\tfor (const { parameter, value } of this.targetValues) {\n\t\t\tmessage[getEnumMemberName(WindowCoveringParameter, parameter)] =\n\t\t\t\tvalue;\n\t\t}\n\t\tif (this.duration) {\n\t\t\tmessage.duration = this.duration.toString();\n\t\t}\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage,\n\t\t};\n\t}\n}\n\n// @publicAPI\nexport interface WindowCoveringCCStartLevelChangeOptions {\n\tparameter: WindowCoveringParameter;\n\tdirection: keyof typeof LevelChangeDirection;\n\tduration?: Duration | string;\n}\n\n@CCCommand(WindowCoveringCommand.StartLevelChange)\n@useSupervision()\nexport class WindowCoveringCCStartLevelChange extends WindowCoveringCC {\n\tpublic constructor(\n\t\toptions: WithAddress<WindowCoveringCCStartLevelChangeOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.parameter = options.parameter;\n\t\tthis.direction = options.direction;\n\t\tthis.duration = Duration.from(options.duration);\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): WindowCoveringCCStartLevelChange {\n\t\tvalidatePayload(raw.payload.length >= 2);\n\t\tconst direction = !!(raw.payload[0] & 0b0100_0000)\n\t\t\t? \"down\"\n\t\t\t: \"up\";\n\t\tconst parameter: WindowCoveringParameter = raw.payload[1];\n\t\tlet duration: Duration | undefined;\n\n\t\tif (raw.payload.length >= 3) {\n\t\t\tduration = Duration.parseSet(raw.payload[2]);\n\t\t}\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tdirection,\n\t\t\tparameter,\n\t\t\tduration,\n\t\t});\n\t}\n\n\tpublic parameter: WindowCoveringParameter;\n\tpublic direction: keyof typeof LevelChangeDirection;\n\tpublic duration: Duration | undefined;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([\n\t\t\tthis.direction === \"down\" ? 0b0100_0000 : 0b0000_0000,\n\t\t\tthis.parameter,\n\t\t\t(this.duration ?? Duration.default()).serializeSet(),\n\t\t]);\n\t\treturn super.serialize(ctx);\n\t}\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\tconst message: MessageRecord = {\n\t\t\tparameter: getEnumMemberName(\n\t\t\t\tWindowCoveringParameter,\n\t\t\t\tthis.parameter,\n\t\t\t),\n\t\t\tdirection: this.direction,\n\t\t};\n\t\tif (this.duration) {\n\t\t\tmessage.duration = this.duration.toString();\n\t\t}\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage,\n\t\t};\n\t}\n}\n\n// @publicAPI\nexport interface WindowCoveringCCStopLevelChangeOptions {\n\tparameter: WindowCoveringParameter;\n}\n\n@CCCommand(WindowCoveringCommand.StopLevelChange)\n@useSupervision()\nexport class WindowCoveringCCStopLevelChange extends WindowCoveringCC {\n\tpublic constructor(\n\t\toptions: WithAddress<WindowCoveringCCStopLevelChangeOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.parameter = options.parameter;\n\t}\n\n\tpublic static from(\n\t\traw: CCRaw,\n\t\tctx: CCParsingContext,\n\t): WindowCoveringCCStopLevelChange {\n\t\tvalidatePayload(raw.payload.length >= 1);\n\t\tconst parameter: WindowCoveringParameter = raw.payload[0];\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tparameter,\n\t\t});\n\t}\n\n\tpublic parameter: WindowCoveringParameter;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([this.parameter]);\n\t\treturn super.serialize(ctx);\n\t}\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage: {\n\t\t\t\tparameter: getEnumMemberName(\n\t\t\t\t\tWindowCoveringParameter,\n\t\t\t\t\tthis.parameter,\n\t\t\t\t),\n\t\t\t},\n\t\t};\n\t}\n}\n"],
5
- "mappings": "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",
3
+ "sources": ["../../../src_gen/cc/WindowCoveringCC.ts"],
4
+ "sourcesContent": ["import * as __validateArgs from \"./WindowCoveringCC._validateArgs.js\";\nconst { validateArgs_WindowCoveringCCAPI_get, validateArgs_WindowCoveringCCAPI_set, validateArgs_WindowCoveringCCAPI_startLevelChange, validateArgs_WindowCoveringCCAPI_stopLevelChange } = __validateArgs;\nimport { CommandClasses, Duration, type GetValueDB, type MaybeNotKnown, type MessageOrCCLogEntry, MessagePriority, type MessageRecord, type SupervisionResult, ValueMetadata, type WithAddress, encodeBitMask, parseBitMask, validatePayload, } from \"@zwave-js/core\";\nimport { Bytes, getEnumMemberName, pick } from \"@zwave-js/shared\";\nimport { CCAPI, POLL_VALUE, type PollValueImplementation, SET_VALUE, SET_VALUE_HOOKS, type SetValueImplementation, type SetValueImplementationHooksFactory, throwMissingPropertyKey, throwUnsupportedProperty, throwUnsupportedPropertyKey, throwWrongValueType, } from \"../lib/API.js\";\nimport { windowCoveringParameterToLevelChangeLabel, windowCoveringParameterToMetadataStates, } from \"../lib/CCValueUtils.js\";\nimport { type CCRaw, CommandClass, type InterviewContext, type RefreshValuesContext, } from \"../lib/CommandClass.js\";\nimport { API, CCCommand, ccValueProperty, ccValues, commandClass, expectedCCResponse, implementedVersion, useSupervision, } from \"../lib/CommandClassDecorators.js\";\nimport { V } from \"../lib/Values.js\";\nimport { type LevelChangeDirection, WindowCoveringCommand, WindowCoveringParameter, } from \"../lib/_Types.js\";\nimport type { CCEncodingContext, CCParsingContext } from \"../lib/traits.js\";\nimport { WindowCoveringCCValues } from \"./_CCValues.generated.js\";\nexport { WindowCoveringCCValues };\n@API(CommandClasses[\"Window Covering\"])\nexport class WindowCoveringCCAPI extends CCAPI {\n public supportsCommand(cmd: WindowCoveringCommand): MaybeNotKnown<boolean> {\n switch (cmd) {\n case WindowCoveringCommand.Get:\n case WindowCoveringCommand.Set:\n case WindowCoveringCommand.SupportedGet:\n case WindowCoveringCommand.StartLevelChange:\n case WindowCoveringCommand.StopLevelChange:\n return true; // This is mandatory\n }\n return super.supportsCommand(cmd);\n }\n protected override get [SET_VALUE](): SetValueImplementation {\n return async function (this: WindowCoveringCCAPI, { property, propertyKey }, value, options) {\n const valueId = {\n commandClass: this.ccId,\n property,\n propertyKey,\n };\n if (WindowCoveringCCValues.targetValue.is(valueId)) {\n if (typeof propertyKey !== \"number\"\n // Only odd-numbered parameters have position support and are writable\n || propertyKey % 2 === 0) {\n throwUnsupportedPropertyKey(this.ccId, property, propertyKey!);\n }\n if (typeof value !== \"number\") {\n throwWrongValueType(this.ccId, property, \"number\", typeof value);\n }\n const parameter = propertyKey;\n const duration = Duration.from(options?.transitionDuration);\n return this.set([{ parameter, value }], duration);\n }\n else if (WindowCoveringCCValues.levelChangeUp.is(valueId)\n || WindowCoveringCCValues.levelChangeDown.is(valueId)) {\n if (typeof value !== \"boolean\") {\n throwWrongValueType(this.ccId, property, \"boolean\", typeof value);\n }\n const parameter = propertyKey as number;\n const direction = WindowCoveringCCValues.levelChangeUp.is(valueId)\n ? \"up\"\n : \"down\";\n if (value) {\n // Perform the level change\n const duration = Duration.from(options?.transitionDuration);\n return this.startLevelChange(parameter, direction, duration);\n }\n else {\n return this.stopLevelChange(parameter);\n }\n }\n else {\n throwUnsupportedProperty(this.ccId, property);\n }\n };\n }\n protected [SET_VALUE_HOOKS]: SetValueImplementationHooksFactory = ({ property, propertyKey }, value, options) => {\n const valueId = {\n commandClass: this.ccId,\n property,\n propertyKey,\n };\n if (WindowCoveringCCValues.targetValue.is(valueId)) {\n if (typeof propertyKey !== \"number\")\n return;\n const parameter = propertyKey;\n const duration = Duration.from(options?.transitionDuration);\n const currentValueValueId = WindowCoveringCCValues.currentValue(parameter).endpoint(this.endpoint.index);\n return {\n // Window Covering commands may take some time to be executed.\n // Therefore we try to supervise the command execution and delay the\n // optimistic update until the final result is received.\n supervisionDelayedUpdates: true,\n supervisionOnSuccess: async () => {\n // Only update currentValue for valid target values\n if (typeof value === \"number\"\n && value >= 0\n && value <= 99) {\n this.tryGetValueDB()?.setValue(currentValueValueId, value);\n }\n else if (value === 255) {\n // We don't know the status now, so refresh the current value\n try {\n await this.get(parameter);\n }\n catch {\n // ignore\n }\n }\n },\n supervisionOnFailure: async () => {\n // The transition failed, so now we don't know the status - refresh the current value\n try {\n await this.get(parameter);\n }\n catch {\n // ignore\n }\n },\n optimisticallyUpdateRelatedValues: (_supervisedAndSuccessful) => {\n // Only update currentValue for valid target values\n if (typeof value === \"number\"\n && value >= 0\n && value <= 99) {\n if (this.isSinglecast()) {\n this.tryGetValueDB()?.setValue(currentValueValueId, value);\n }\n else if (this.isMulticast()) {\n // Figure out which nodes were affected by this command\n const affectedNodes = this.endpoint.node\n .physicalNodes.filter((node) => node\n .getEndpoint(this.endpoint.index)\n ?.supportsCC(this.ccId));\n // and optimistically update the currentValue\n for (const node of affectedNodes) {\n this.host\n .tryGetValueDB(node.id)\n ?.setValue(currentValueValueId, value);\n }\n }\n }\n },\n verifyChanges: () => {\n if (this.isSinglecast()) {\n // We query currentValue instead of targetValue to make sure that unsolicited updates cancel the scheduled poll\n this.schedulePoll(currentValueValueId, value, {\n duration,\n });\n }\n else {\n // For multicasts, do not schedule a refresh - this could cause a LOT of traffic\n }\n },\n };\n }\n };\n protected get [POLL_VALUE](): PollValueImplementation {\n return async function (this: WindowCoveringCCAPI, { property, propertyKey }) {\n switch (property) {\n case \"currentValue\":\n case \"targetValue\":\n case \"duration\":\n if (propertyKey == undefined) {\n throwMissingPropertyKey(this.ccId, property);\n }\n else if (typeof propertyKey !== \"number\") {\n throwUnsupportedPropertyKey(this.ccId, property, propertyKey);\n }\n return (await this.get(propertyKey))?.[property];\n default:\n throwUnsupportedProperty(this.ccId, property);\n }\n };\n }\n public async getSupported(): Promise<MaybeNotKnown<readonly WindowCoveringParameter[]>> {\n this.assertSupportsCommand(WindowCoveringCommand, WindowCoveringCommand.SupportedGet);\n const cc = new WindowCoveringCCSupportedGet({\n nodeId: this.endpoint.nodeId,\n endpointIndex: this.endpoint.index,\n });\n const response = await this.host.sendCommand<WindowCoveringCCSupportedReport>(cc, this.commandOptions);\n return response?.supportedParameters;\n }\n @validateArgs_WindowCoveringCCAPI_get()\n // oxlint-disable-next-line typescript/explicit-module-boundary-types\n public async get(parameter: WindowCoveringParameter) {\n this.assertSupportsCommand(WindowCoveringCommand, WindowCoveringCommand.Get);\n const cc = new WindowCoveringCCGet({\n nodeId: this.endpoint.nodeId,\n endpointIndex: this.endpoint.index,\n parameter,\n });\n const response = await this.host.sendCommand<WindowCoveringCCReport>(cc, this.commandOptions);\n if (response) {\n return pick(response, [\"currentValue\", \"targetValue\", \"duration\"]);\n }\n }\n @validateArgs_WindowCoveringCCAPI_set()\n public async set(targetValues: {\n parameter: WindowCoveringParameter;\n value: number;\n }[], duration?: Duration | string): Promise<SupervisionResult | undefined> {\n this.assertSupportsCommand(WindowCoveringCommand, WindowCoveringCommand.StartLevelChange);\n const cc = new WindowCoveringCCSet({\n nodeId: this.endpoint.nodeId,\n endpointIndex: this.endpoint.index,\n targetValues,\n duration,\n });\n return this.host.sendCommand(cc, this.commandOptions);\n }\n @validateArgs_WindowCoveringCCAPI_startLevelChange()\n public async startLevelChange(parameter: WindowCoveringParameter, direction: keyof typeof LevelChangeDirection, duration?: Duration | string): Promise<SupervisionResult | undefined> {\n this.assertSupportsCommand(WindowCoveringCommand, WindowCoveringCommand.StartLevelChange);\n const cc = new WindowCoveringCCStartLevelChange({\n nodeId: this.endpoint.nodeId,\n endpointIndex: this.endpoint.index,\n parameter,\n direction,\n duration,\n });\n return this.host.sendCommand(cc, this.commandOptions);\n }\n @validateArgs_WindowCoveringCCAPI_stopLevelChange()\n public async stopLevelChange(parameter: WindowCoveringParameter): Promise<SupervisionResult | undefined> {\n this.assertSupportsCommand(WindowCoveringCommand, WindowCoveringCommand.StopLevelChange);\n const cc = new WindowCoveringCCStopLevelChange({\n nodeId: this.endpoint.nodeId,\n endpointIndex: this.endpoint.index,\n parameter,\n });\n return this.host.sendCommand(cc, this.commandOptions);\n }\n}\n@commandClass(CommandClasses[\"Window Covering\"])\n@implementedVersion(1)\n@ccValues(WindowCoveringCCValues)\nexport class WindowCoveringCC extends CommandClass {\n declare ccCommand: WindowCoveringCommand;\n public async interview(ctx: InterviewContext): Promise<void> {\n const node = this.getNode(ctx)!;\n const endpoint = this.getEndpoint(ctx)!;\n const api = CCAPI.create(CommandClasses[\"Window Covering\"], ctx, endpoint).withOptions({\n priority: MessagePriority.NodeQuery,\n });\n ctx.logNode(node.id, {\n endpoint: this.endpointIndex,\n message: `Interviewing ${this.ccName}...`,\n direction: \"none\",\n });\n ctx.logNode(node.id, {\n endpoint: this.endpointIndex,\n message: \"querying supported window covering parameters...\",\n direction: \"outbound\",\n });\n const supported = await api.getSupported();\n if (supported?.length) {\n const logMessage = `supported window covering parameters:\n${supported\n .map((p) => `\u00B7 ${getEnumMemberName(WindowCoveringParameter, p)}`)\n .join(\"\\n\")}`;\n ctx.logNode(node.id, {\n endpoint: this.endpointIndex,\n message: logMessage,\n direction: \"inbound\",\n });\n // Create metadata for all supported parameters\n for (const param of supported) {\n // Default values\n this.setMetadata(ctx, WindowCoveringCCValues.currentValue(param));\n this.setMetadata(ctx, WindowCoveringCCValues.targetValue(param));\n this.setMetadata(ctx, WindowCoveringCCValues.duration(param));\n // Level change values\n this.setMetadata(ctx, WindowCoveringCCValues.levelChangeUp(param));\n this.setMetadata(ctx, WindowCoveringCCValues.levelChangeDown(param));\n }\n // Query current values for all supported parameters\n await this.refreshValues(ctx);\n }\n // Remember that the interview is complete\n this.setInterviewComplete(ctx, true);\n }\n public async refreshValues(ctx: RefreshValuesContext): Promise<void> {\n const node = this.getNode(ctx)!;\n const endpoint = this.getEndpoint(ctx)!;\n const api = CCAPI.create(CommandClasses[\"Window Covering\"], ctx, endpoint).withOptions({\n priority: MessagePriority.NodeQuery,\n });\n const parameters: number[] = this.getValue(ctx, WindowCoveringCCValues.supportedParameters) ?? [];\n for (const param of parameters) {\n // Only query odd parameters (with position support)\n if (param % 2 == 0)\n continue;\n ctx.logNode(node.id, {\n endpoint: this.endpointIndex,\n message: `querying position for parameter ${getEnumMemberName(WindowCoveringParameter, param)}...`,\n direction: \"outbound\",\n });\n await api.get(param);\n }\n }\n public translatePropertyKey(ctx: GetValueDB, property: string | number, propertyKey: string | number): string | undefined {\n if (typeof propertyKey === \"number\") {\n return getEnumMemberName(WindowCoveringParameter, propertyKey);\n }\n return super.translatePropertyKey(ctx, property, propertyKey);\n }\n}\n// @publicAPI\nexport interface WindowCoveringCCSupportedReportOptions {\n supportedParameters: readonly WindowCoveringParameter[];\n}\n@CCCommand(WindowCoveringCommand.SupportedReport)\n@ccValueProperty(\"supportedParameters\", WindowCoveringCCValues.supportedParameters)\nexport class WindowCoveringCCSupportedReport extends WindowCoveringCC {\n public constructor(options: WithAddress<WindowCoveringCCSupportedReportOptions>) {\n super(options);\n this.supportedParameters = options.supportedParameters;\n }\n public static from(raw: CCRaw, ctx: CCParsingContext): WindowCoveringCCSupportedReport {\n validatePayload(raw.payload.length >= 1);\n const numBitmaskBytes = raw.payload[0] & 0b1111;\n validatePayload(raw.payload.length >= 1 + numBitmaskBytes);\n const bitmask = raw.payload.subarray(1, 1 + numBitmaskBytes);\n const supportedParameters: WindowCoveringParameter[] = parseBitMask(bitmask, WindowCoveringParameter[\"Outbound Left (no position)\"]);\n return new this({\n nodeId: ctx.sourceNodeId,\n supportedParameters,\n });\n }\n public readonly supportedParameters: readonly WindowCoveringParameter[];\n public serialize(ctx: CCEncodingContext): Promise<Bytes> {\n const bitmask = encodeBitMask(this.supportedParameters, undefined, WindowCoveringParameter[\"Outbound Left (no position)\"]).subarray(0, 15);\n const numBitmaskBytes = bitmask.length & 0b1111;\n this.payload = Bytes.concat([\n [numBitmaskBytes],\n bitmask.subarray(0, numBitmaskBytes),\n ]);\n return super.serialize(ctx);\n }\n public toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n return {\n ...super.toLogEntry(ctx),\n message: {\n \"supported parameters\": this.supportedParameters\n .map((p) => `\\n\u00B7 ${getEnumMemberName(WindowCoveringParameter, p)}`)\n .join(\"\"),\n },\n };\n }\n}\n@CCCommand(WindowCoveringCommand.SupportedGet)\n@expectedCCResponse(WindowCoveringCCSupportedReport)\nexport class WindowCoveringCCSupportedGet extends WindowCoveringCC {\n}\n// @publicAPI\nexport interface WindowCoveringCCReportOptions {\n parameter: WindowCoveringParameter;\n currentValue: number;\n targetValue: number;\n duration: Duration;\n}\n@CCCommand(WindowCoveringCommand.Report)\n@ccValueProperty(\"currentValue\", WindowCoveringCCValues.currentValue, (self) => [self.parameter])\n@ccValueProperty(\"targetValue\", WindowCoveringCCValues.targetValue, (self) => [self.parameter])\n@ccValueProperty(\"duration\", WindowCoveringCCValues.duration, (self) => [self.parameter])\nexport class WindowCoveringCCReport extends WindowCoveringCC {\n public constructor(options: WithAddress<WindowCoveringCCReportOptions>) {\n super(options);\n // TODO: Check implementation:\n this.parameter = options.parameter;\n this.currentValue = options.currentValue;\n this.targetValue = options.targetValue;\n this.duration = options.duration;\n }\n public static from(raw: CCRaw, ctx: CCParsingContext): WindowCoveringCCReport {\n validatePayload(raw.payload.length >= 4);\n const parameter: WindowCoveringParameter = raw.payload[0];\n const currentValue = raw.payload[1];\n const targetValue = raw.payload[2];\n const duration = Duration.parseReport(raw.payload[3])\n ?? Duration.unknown();\n return new this({\n nodeId: ctx.sourceNodeId,\n parameter,\n currentValue,\n targetValue,\n duration,\n });\n }\n public readonly parameter: WindowCoveringParameter;\n public readonly currentValue: number;\n public readonly targetValue: number;\n public readonly duration: Duration;\n public serialize(ctx: CCEncodingContext): Promise<Bytes> {\n this.payload = Bytes.from([\n this.parameter,\n this.currentValue,\n this.targetValue,\n this.duration.serializeReport(),\n ]);\n return super.serialize(ctx);\n }\n public toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n return {\n ...super.toLogEntry(ctx),\n message: {\n parameter: getEnumMemberName(WindowCoveringParameter, this.parameter),\n \"current value\": this.currentValue,\n \"target value\": this.targetValue,\n duration: this.duration.toString(),\n },\n };\n }\n}\n// @publicAPI\nexport interface WindowCoveringCCGetOptions {\n parameter: WindowCoveringParameter;\n}\nfunction testResponseForWindowCoveringGet(sent: WindowCoveringCCGet, received: WindowCoveringCCReport) {\n return received.parameter === sent.parameter;\n}\n@CCCommand(WindowCoveringCommand.Get)\n@expectedCCResponse(WindowCoveringCCReport, testResponseForWindowCoveringGet)\nexport class WindowCoveringCCGet extends WindowCoveringCC {\n public constructor(options: WithAddress<WindowCoveringCCGetOptions>) {\n super(options);\n this.parameter = options.parameter;\n }\n public static from(raw: CCRaw, ctx: CCParsingContext): WindowCoveringCCGet {\n validatePayload(raw.payload.length >= 1);\n const parameter: WindowCoveringParameter = raw.payload[0];\n return new this({\n nodeId: ctx.sourceNodeId,\n parameter,\n });\n }\n public parameter: WindowCoveringParameter;\n public serialize(ctx: CCEncodingContext): Promise<Bytes> {\n this.payload = Bytes.from([this.parameter]);\n return super.serialize(ctx);\n }\n public toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n return {\n ...super.toLogEntry(ctx),\n message: {\n parameter: getEnumMemberName(WindowCoveringParameter, this.parameter),\n },\n };\n }\n}\n// @publicAPI\nexport interface WindowCoveringCCSetOptions {\n targetValues: {\n parameter: WindowCoveringParameter;\n value: number;\n }[];\n duration?: Duration | string;\n}\n@CCCommand(WindowCoveringCommand.Set)\n@useSupervision()\nexport class WindowCoveringCCSet extends WindowCoveringCC {\n public constructor(options: WithAddress<WindowCoveringCCSetOptions>) {\n super(options);\n this.targetValues = options.targetValues;\n this.duration = Duration.from(options.duration);\n }\n public static from(raw: CCRaw, ctx: CCParsingContext): WindowCoveringCCSet {\n validatePayload(raw.payload.length >= 1);\n const numEntries = raw.payload[0] & 0b11111;\n validatePayload(raw.payload.length >= 1 + numEntries * 2);\n const targetValues: WindowCoveringCCSetOptions[\"targetValues\"] = [];\n for (let i = 0; i < numEntries; i++) {\n const offset = 1 + i * 2;\n targetValues.push({\n parameter: raw.payload[offset],\n value: raw.payload[offset + 1],\n });\n }\n let duration: Duration | undefined;\n if (raw.payload.length >= 2 + numEntries * 2) {\n duration = Duration.parseSet(raw.payload[1 + numEntries * 2]);\n }\n return new this({\n nodeId: ctx.sourceNodeId,\n targetValues,\n duration,\n });\n }\n public targetValues: {\n parameter: WindowCoveringParameter;\n value: number;\n }[];\n public duration: Duration | undefined;\n public serialize(ctx: CCEncodingContext): Promise<Bytes> {\n const numEntries = this.targetValues.length & 0b11111;\n this.payload = new Bytes(2 + numEntries * 2);\n this.payload[0] = numEntries;\n for (let i = 0; i < numEntries; i++) {\n const offset = 1 + i * 2;\n this.payload[offset] = this.targetValues[i].parameter;\n this.payload[offset + 1] = this.targetValues[i].value;\n }\n this.payload[this.payload.length - 1] = (this.duration ?? Duration.default()).serializeSet();\n return super.serialize(ctx);\n }\n public toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n const message: MessageRecord = {};\n for (const { parameter, value } of this.targetValues) {\n message[getEnumMemberName(WindowCoveringParameter, parameter)] =\n value;\n }\n if (this.duration) {\n message.duration = this.duration.toString();\n }\n return {\n ...super.toLogEntry(ctx),\n message,\n };\n }\n}\n// @publicAPI\nexport interface WindowCoveringCCStartLevelChangeOptions {\n parameter: WindowCoveringParameter;\n direction: keyof typeof LevelChangeDirection;\n duration?: Duration | string;\n}\n@CCCommand(WindowCoveringCommand.StartLevelChange)\n@useSupervision()\nexport class WindowCoveringCCStartLevelChange extends WindowCoveringCC {\n public constructor(options: WithAddress<WindowCoveringCCStartLevelChangeOptions>) {\n super(options);\n this.parameter = options.parameter;\n this.direction = options.direction;\n this.duration = Duration.from(options.duration);\n }\n public static from(raw: CCRaw, ctx: CCParsingContext): WindowCoveringCCStartLevelChange {\n validatePayload(raw.payload.length >= 2);\n const direction = !!(raw.payload[0] & 64)\n ? \"down\"\n : \"up\";\n const parameter: WindowCoveringParameter = raw.payload[1];\n let duration: Duration | undefined;\n if (raw.payload.length >= 3) {\n duration = Duration.parseSet(raw.payload[2]);\n }\n return new this({\n nodeId: ctx.sourceNodeId,\n direction,\n parameter,\n duration,\n });\n }\n public parameter: WindowCoveringParameter;\n public direction: keyof typeof LevelChangeDirection;\n public duration: Duration | undefined;\n public serialize(ctx: CCEncodingContext): Promise<Bytes> {\n this.payload = Bytes.from([\n this.direction === \"down\" ? 64 : 0,\n this.parameter,\n (this.duration ?? Duration.default()).serializeSet(),\n ]);\n return super.serialize(ctx);\n }\n public toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n const message: MessageRecord = {\n parameter: getEnumMemberName(WindowCoveringParameter, this.parameter),\n direction: this.direction,\n };\n if (this.duration) {\n message.duration = this.duration.toString();\n }\n return {\n ...super.toLogEntry(ctx),\n message,\n };\n }\n}\n// @publicAPI\nexport interface WindowCoveringCCStopLevelChangeOptions {\n parameter: WindowCoveringParameter;\n}\n@CCCommand(WindowCoveringCommand.StopLevelChange)\n@useSupervision()\nexport class WindowCoveringCCStopLevelChange extends WindowCoveringCC {\n public constructor(options: WithAddress<WindowCoveringCCStopLevelChangeOptions>) {\n super(options);\n this.parameter = options.parameter;\n }\n public static from(raw: CCRaw, ctx: CCParsingContext): WindowCoveringCCStopLevelChange {\n validatePayload(raw.payload.length >= 1);\n const parameter: WindowCoveringParameter = raw.payload[0];\n return new this({\n nodeId: ctx.sourceNodeId,\n parameter,\n });\n }\n public parameter: WindowCoveringParameter;\n public serialize(ctx: CCEncodingContext): Promise<Bytes> {\n this.payload = Bytes.from([this.parameter]);\n return super.serialize(ctx);\n }\n public toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n return {\n ...super.toLogEntry(ctx),\n message: {\n parameter: getEnumMemberName(WindowCoveringParameter, this.parameter),\n },\n };\n }\n}\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../src/cc/ZWaveLongRangeCC.ts"],
4
- "sourcesContent": ["import { CommandClasses } from \"@zwave-js/core\";\nimport { CommandClass } from \"../lib/CommandClass.js\";\nimport {\n\tcommandClass,\n\timplementedVersion,\n} from \"../lib/CommandClassDecorators.js\";\n\n@commandClass(CommandClasses[\"Z-Wave Long Range\"])\n@implementedVersion(1)\nexport class ZWaveLongRangeCC extends CommandClass {\n\t// declare ccCommand: ZWaveLongRangeCommand;\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA,kBAA+B;AAC/B,0BAA6B;AAC7B,oCAGO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAIM,oBAAgB,MAAA;8BAF5B,4CAAa,2BAAe,mBAAmB,CAAC,OAChD,kDAAmB,CAAC,CAAC;;;;oBACgB;wCAAA,YAAY;WAAA;;;;;;;;AAAlD,mBAAA,MAAA,mBAAA,EAAA,OAAA,WAAA,GAAA,kBAAA,EAAA,MAAA,SAAA,MAAA,WAAA,MAAA,UAAA,UAAA,GAAA,MAAA,uBAAA;;;AAAa,wBAAA,YAAA,uBAAA;;;;;",
3
+ "sources": ["../../../src_gen/cc/ZWaveLongRangeCC.ts"],
4
+ "sourcesContent": ["import { CommandClasses } from \"@zwave-js/core\";\nimport { CommandClass } from \"../lib/CommandClass.js\";\nimport { commandClass, implementedVersion, } from \"../lib/CommandClassDecorators.js\";\n@commandClass(CommandClasses[\"Z-Wave Long Range\"])\n@implementedVersion(1)\nexport class ZWaveLongRangeCC extends CommandClass {\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA,kBAA+B;AAC/B,0BAA6B;AAC7B,oCAAkD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAGrC,oBAAgB,MAAA;8BAF5B,4CAAa,2BAAe,mBAAmB,CAAC,OAChD,kDAAmB,CAAC,CAAC;;;;oBACgB;wCAAA,YAAY;WAAA;;;;;;;;AAAlD,mBAAA,MAAA,mBAAA,EAAA,OAAA,WAAA,GAAA,kBAAA,EAAA,MAAA,SAAA,MAAA,WAAA,MAAA,UAAA,UAAA,GAAA,MAAA,uBAAA;;;AAAa,wBAAA,YAAA,uBAAA;;;;;",
6
6
  "names": []
7
7
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../src/cc/ZWavePlusCC._validateArgs.ts"],
4
- "sourcesContent": [null],
3
+ "sources": ["../../../src_gen/cc/ZWavePlusCC._validateArgs.ts"],
4
+ "sourcesContent": ["import * as v from \"@zwave-js/core/validation\";\n\nexport function validateArgs_ZWavePlusCCAPI_sendReport() {\n\treturn <T extends Function>(__decoratedMethod: T, { kind }: ClassMethodDecoratorContext): T | void => {\n\t\tif (kind === \"method\") {\n\t\t\treturn function sendReport(this: any, options: unknown) {\n\t\t\t\tv.assert(\n\t\t\t\t\tv.object({ kind: \"parameter\", name: \"options\" }, 'ZWavePlusCCReportOptions', { \"zwavePlusVersion\": v.primitive({ kind: \"property\", name: \"zwavePlusVersion\" }, \"number\"), \"nodeType\": v.enum({ kind: \"property\", name: \"nodeType\" }, \"ZWavePlusNodeType\"), \"roleType\": v.enum({ kind: \"property\", name: \"roleType\" }, \"ZWavePlusRoleType\"), \"installerIcon\": v.primitive({ kind: \"property\", name: \"installerIcon\" }, \"number\"), \"userIcon\": v.primitive({ kind: \"property\", name: \"userIcon\" }, \"number\") })(options),\n\t\t\t\t);\n\t\t\t\treturn __decoratedMethod.call(this, options);\n\t\t\t} as unknown as T;\n\t\t}\n\t};\n}"],
5
5
  "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;AAAA,QAAmB;AAEb,SAAU,yCAAsC;AACrD,SAAO,CAAqB,mBAAsB,EAAE,KAAI,MAA6C;AACpG,QAAI,SAAS,UAAU;AACtB,aAAO,gCAAS,WAAsB,SAAgB;AACrD,UAAE,OACD,EAAE,OAAO,EAAE,MAAM,aAAa,MAAM,UAAS,GAAI,4BAA4B,EAAE,oBAAoB,EAAE,UAAU,EAAE,MAAM,YAAY,MAAM,mBAAkB,GAAI,QAAQ,GAAG,YAAY,EAAE,KAAK,EAAE,MAAM,YAAY,MAAM,WAAU,GAAI,mBAAmB,GAAG,YAAY,EAAE,KAAK,EAAE,MAAM,YAAY,MAAM,WAAU,GAAI,mBAAmB,GAAG,iBAAiB,EAAE,UAAU,EAAE,MAAM,YAAY,MAAM,gBAAe,GAAI,QAAQ,GAAG,YAAY,EAAE,UAAU,EAAE,MAAM,YAAY,MAAM,WAAU,GAAI,QAAQ,EAAC,CAAE,EAAE,OAAO,CAAC;AAEvf,eAAO,kBAAkB,KAAK,MAAM,OAAO;MAC5C,GALO;IAMR;EACD;AACD;AAXgB;",
6
6
  "names": []
7
7
  }
@@ -1,136 +1,11 @@
1
- import type { CCEncodingContext, CCParsingContext } from "@zwave-js/cc";
2
- import { CommandClasses, type GetValueDB, type MaybeNotKnown, type MessageOrCCLogEntry, type WithAddress } from "@zwave-js/core";
1
+ import { type GetValueDB, type MaybeNotKnown, type MessageOrCCLogEntry, type WithAddress } from "@zwave-js/core";
3
2
  import { Bytes } from "@zwave-js/shared";
4
3
  import { PhysicalCCAPI } from "../lib/API.js";
5
4
  import { type CCRaw, CommandClass, type InterviewContext } from "../lib/CommandClass.js";
6
5
  import { ZWavePlusCommand, ZWavePlusNodeType, ZWavePlusRoleType } from "../lib/_Types.js";
7
- export declare const ZWavePlusCCValues: Readonly<{
8
- zwavePlusVersion: {
9
- id: {
10
- readonly commandClass: (typeof CommandClasses)["Z-Wave Plus Info"];
11
- readonly property: "zwavePlusVersion";
12
- };
13
- endpoint: (_endpoint?: number) => {
14
- readonly commandClass: (typeof CommandClasses)["Z-Wave Plus Info"];
15
- readonly endpoint: 0;
16
- readonly property: "zwavePlusVersion";
17
- };
18
- is: (valueId: import("@zwave-js/core").ValueID) => boolean;
19
- readonly meta: Readonly<{
20
- readonly type: "any";
21
- readonly readable: true;
22
- readonly writeable: true;
23
- }>;
24
- options: {
25
- readonly internal: true;
26
- readonly minVersion: 1;
27
- readonly secret: false;
28
- readonly stateful: true;
29
- readonly supportsEndpoints: false;
30
- readonly autoCreate: true;
31
- };
32
- };
33
- nodeType: {
34
- id: {
35
- readonly commandClass: (typeof CommandClasses)["Z-Wave Plus Info"];
36
- readonly property: "nodeType";
37
- };
38
- endpoint: (_endpoint?: number) => {
39
- readonly commandClass: (typeof CommandClasses)["Z-Wave Plus Info"];
40
- readonly endpoint: 0;
41
- readonly property: "nodeType";
42
- };
43
- is: (valueId: import("@zwave-js/core").ValueID) => boolean;
44
- readonly meta: Readonly<{
45
- readonly type: "any";
46
- readonly readable: true;
47
- readonly writeable: true;
48
- }>;
49
- options: {
50
- readonly internal: true;
51
- readonly minVersion: 1;
52
- readonly secret: false;
53
- readonly stateful: true;
54
- readonly supportsEndpoints: false;
55
- readonly autoCreate: true;
56
- };
57
- };
58
- roleType: {
59
- id: {
60
- readonly commandClass: (typeof CommandClasses)["Z-Wave Plus Info"];
61
- readonly property: "roleType";
62
- };
63
- endpoint: (_endpoint?: number) => {
64
- readonly commandClass: (typeof CommandClasses)["Z-Wave Plus Info"];
65
- readonly endpoint: 0;
66
- readonly property: "roleType";
67
- };
68
- is: (valueId: import("@zwave-js/core").ValueID) => boolean;
69
- readonly meta: Readonly<{
70
- readonly type: "any";
71
- readonly readable: true;
72
- readonly writeable: true;
73
- }>;
74
- options: {
75
- readonly internal: true;
76
- readonly minVersion: 1;
77
- readonly secret: false;
78
- readonly stateful: true;
79
- readonly supportsEndpoints: false;
80
- readonly autoCreate: true;
81
- };
82
- };
83
- userIcon: {
84
- id: {
85
- readonly commandClass: (typeof CommandClasses)["Z-Wave Plus Info"];
86
- readonly property: "userIcon";
87
- };
88
- endpoint: (endpoint?: number) => {
89
- readonly commandClass: (typeof CommandClasses)["Z-Wave Plus Info"];
90
- readonly endpoint: number;
91
- readonly property: "userIcon";
92
- };
93
- is: (valueId: import("@zwave-js/core").ValueID) => boolean;
94
- readonly meta: Readonly<{
95
- readonly type: "any";
96
- readonly readable: true;
97
- readonly writeable: true;
98
- }>;
99
- options: {
100
- readonly internal: true;
101
- readonly minVersion: 1;
102
- readonly secret: false;
103
- readonly stateful: true;
104
- readonly supportsEndpoints: true;
105
- readonly autoCreate: true;
106
- };
107
- };
108
- installerIcon: {
109
- id: {
110
- readonly commandClass: (typeof CommandClasses)["Z-Wave Plus Info"];
111
- readonly property: "installerIcon";
112
- };
113
- endpoint: (endpoint?: number) => {
114
- readonly commandClass: (typeof CommandClasses)["Z-Wave Plus Info"];
115
- readonly endpoint: number;
116
- readonly property: "installerIcon";
117
- };
118
- is: (valueId: import("@zwave-js/core").ValueID) => boolean;
119
- readonly meta: Readonly<{
120
- readonly type: "any";
121
- readonly readable: true;
122
- readonly writeable: true;
123
- }>;
124
- options: {
125
- readonly internal: true;
126
- readonly minVersion: 1;
127
- readonly secret: false;
128
- readonly stateful: true;
129
- readonly supportsEndpoints: true;
130
- readonly autoCreate: true;
131
- };
132
- };
133
- }>;
6
+ import type { CCEncodingContext, CCParsingContext } from "../lib/traits.js";
7
+ import { ZWavePlusCCValues } from "./_CCValues.generated.js";
8
+ export { ZWavePlusCCValues };
134
9
  export declare class ZWavePlusCCAPI extends PhysicalCCAPI {
135
10
  supportsCommand(cmd: ZWavePlusCommand): MaybeNotKnown<boolean>;
136
11
  get(): Promise<Pick<ZWavePlusCCReport, "zwavePlusVersion" | "nodeType" | "roleType" | "userIcon" | "installerIcon"> | undefined>;
@@ -42,7 +42,6 @@ var import_shared = require("@zwave-js/shared");
42
42
  var import_API = require("../lib/API.js");
43
43
  var import_CommandClass = require("../lib/CommandClass.js");
44
44
  var import_CommandClassDecorators = require("../lib/CommandClassDecorators.js");
45
- var import_Values = require("../lib/Values.js");
46
45
  var import_Types = require("../lib/_Types.js");
47
46
  var import_CCValues_generated = require("./_CCValues.generated.js");
48
47
  var __runInitializers = function(thisArg, initializers, value) {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../src/cc/ZWavePlusCC.ts"],
4
- "sourcesContent": ["import type { CCEncodingContext, CCParsingContext } from \"@zwave-js/cc\";\nimport {\n\tCommandClasses,\n\ttype GetValueDB,\n\ttype MaybeNotKnown,\n\ttype MessageOrCCLogEntry,\n\tMessagePriority,\n\ttype WithAddress,\n\tvalidatePayload,\n} from \"@zwave-js/core\";\nimport { Bytes, getEnumMemberName, num2hex, pick } from \"@zwave-js/shared\";\nimport { validateArgs } from \"@zwave-js/transformers\";\nimport { CCAPI, PhysicalCCAPI } from \"../lib/API.js\";\nimport {\n\ttype CCRaw,\n\tCommandClass,\n\ttype InterviewContext,\n} from \"../lib/CommandClass.js\";\nimport {\n\tAPI,\n\tCCCommand,\n\tccValueProperty,\n\tccValues,\n\tcommandClass,\n\texpectedCCResponse,\n\timplementedVersion,\n} from \"../lib/CommandClassDecorators.js\";\nimport { V } from \"../lib/Values.js\";\nimport {\n\tZWavePlusCommand,\n\tZWavePlusNodeType,\n\tZWavePlusRoleType,\n} from \"../lib/_Types.js\";\n\n// SDS13782 The advertised Z-Wave Plus Version, Role Type and Node Type information values\n// MUST be identical for the Root Device and all Multi Channel End Points\n// --> We only access endpoint 0\n\nexport const ZWavePlusCCValues = V.defineCCValues(\n\tCommandClasses[\"Z-Wave Plus Info\"],\n\t{\n\t\t...V.staticProperty(\"zwavePlusVersion\", undefined, {\n\t\t\tsupportsEndpoints: false,\n\t\t\tinternal: true,\n\t\t}),\n\t\t...V.staticProperty(\"nodeType\", undefined, {\n\t\t\tsupportsEndpoints: false,\n\t\t\tinternal: true,\n\t\t}),\n\t\t...V.staticProperty(\"roleType\", undefined, {\n\t\t\tsupportsEndpoints: false,\n\t\t\tinternal: true,\n\t\t}),\n\t\t...V.staticProperty(\"userIcon\", undefined, {\n\t\t\tinternal: true,\n\t\t}),\n\t\t...V.staticProperty(\"installerIcon\", undefined, {\n\t\t\tinternal: true,\n\t\t}),\n\t},\n);\n\n// @noSetValueAPI This CC is read-only\n\n@API(CommandClasses[\"Z-Wave Plus Info\"])\nexport class ZWavePlusCCAPI extends PhysicalCCAPI {\n\tpublic supportsCommand(cmd: ZWavePlusCommand): MaybeNotKnown<boolean> {\n\t\tswitch (cmd) {\n\t\t\tcase ZWavePlusCommand.Get:\n\t\t\tcase ZWavePlusCommand.Report:\n\t\t\t\treturn true; // This is mandatory\n\t\t}\n\t\treturn super.supportsCommand(cmd);\n\t}\n\n\t// oxlint-disable-next-line typescript/explicit-module-boundary-types\n\tpublic async get() {\n\t\tthis.assertSupportsCommand(ZWavePlusCommand, ZWavePlusCommand.Get);\n\n\t\tconst cc = new ZWavePlusCCGet({\n\t\t\tnodeId: this.endpoint.nodeId,\n\t\t\tendpointIndex: this.endpoint.index,\n\t\t});\n\t\tconst response = await this.host.sendCommand<ZWavePlusCCReport>(\n\t\t\tcc,\n\t\t\tthis.commandOptions,\n\t\t);\n\t\tif (response) {\n\t\t\treturn pick(response, [\n\t\t\t\t\"zwavePlusVersion\",\n\t\t\t\t\"nodeType\",\n\t\t\t\t\"roleType\",\n\t\t\t\t\"installerIcon\",\n\t\t\t\t\"userIcon\",\n\t\t\t]);\n\t\t}\n\t}\n\n\t@validateArgs()\n\tpublic async sendReport(options: ZWavePlusCCReportOptions): Promise<void> {\n\t\tthis.assertSupportsCommand(ZWavePlusCommand, ZWavePlusCommand.Report);\n\n\t\tconst cc = new ZWavePlusCCReport({\n\t\t\tnodeId: this.endpoint.nodeId,\n\t\t\tendpointIndex: this.endpoint.index,\n\t\t\t...options,\n\t\t});\n\t\tawait this.host.sendCommand(cc, this.commandOptions);\n\t}\n}\n\n@commandClass(CommandClasses[\"Z-Wave Plus Info\"])\n@implementedVersion(2)\n@ccValues(ZWavePlusCCValues)\nexport class ZWavePlusCC extends CommandClass {\n\tdeclare ccCommand: ZWavePlusCommand;\n\n\tpublic async interview(\n\t\tctx: InterviewContext,\n\t): Promise<void> {\n\t\tconst node = this.getNode(ctx)!;\n\t\tconst endpoint = this.getEndpoint(ctx)!;\n\t\tconst api = CCAPI.create(\n\t\t\tCommandClasses[\"Z-Wave Plus Info\"],\n\t\t\tctx,\n\t\t\tendpoint,\n\t\t).withOptions({\n\t\t\tpriority: MessagePriority.NodeQuery,\n\t\t});\n\n\t\tctx.logNode(node.id, {\n\t\t\tendpoint: this.endpointIndex,\n\t\t\tmessage: `Interviewing ${this.ccName}...`,\n\t\t\tdirection: \"none\",\n\t\t});\n\n\t\tctx.logNode(node.id, {\n\t\t\tendpoint: this.endpointIndex,\n\t\t\tmessage: \"querying Z-Wave+ information...\",\n\t\t\tdirection: \"outbound\",\n\t\t});\n\n\t\tconst zwavePlusResponse = await api.get();\n\t\tif (zwavePlusResponse) {\n\t\t\tconst logMessage = `received response for Z-Wave+ information:\nZ-Wave+ version: ${zwavePlusResponse.zwavePlusVersion}\nrole type: ${ZWavePlusRoleType[zwavePlusResponse.roleType]}\nnode type: ${ZWavePlusNodeType[zwavePlusResponse.nodeType]}\ninstaller icon: ${num2hex(zwavePlusResponse.installerIcon)}\nuser icon: ${num2hex(zwavePlusResponse.userIcon)}`;\n\t\t\tctx.logNode(node.id, {\n\t\t\t\tendpoint: this.endpointIndex,\n\t\t\t\tmessage: logMessage,\n\t\t\t\tdirection: \"inbound\",\n\t\t\t});\n\t\t}\n\n\t\t// Remember that the interview is complete\n\t\tthis.setInterviewComplete(ctx, true);\n\t}\n}\n\n// @publicAPI\nexport interface ZWavePlusCCReportOptions {\n\tzwavePlusVersion: number;\n\tnodeType: ZWavePlusNodeType;\n\troleType: ZWavePlusRoleType;\n\tinstallerIcon: number;\n\tuserIcon: number;\n}\n\n@CCCommand(ZWavePlusCommand.Report)\n@ccValueProperty(\"zwavePlusVersion\", ZWavePlusCCValues.zwavePlusVersion)\n@ccValueProperty(\"nodeType\", ZWavePlusCCValues.nodeType)\n@ccValueProperty(\"roleType\", ZWavePlusCCValues.roleType)\n@ccValueProperty(\"installerIcon\", ZWavePlusCCValues.installerIcon)\n@ccValueProperty(\"userIcon\", ZWavePlusCCValues.userIcon)\nexport class ZWavePlusCCReport extends ZWavePlusCC {\n\tpublic constructor(\n\t\toptions: WithAddress<ZWavePlusCCReportOptions>,\n\t) {\n\t\tsuper(options);\n\t\tthis.zwavePlusVersion = options.zwavePlusVersion;\n\t\tthis.roleType = options.roleType;\n\t\tthis.nodeType = options.nodeType;\n\t\tthis.installerIcon = options.installerIcon;\n\t\tthis.userIcon = options.userIcon;\n\t}\n\n\tpublic static from(raw: CCRaw, ctx: CCParsingContext): ZWavePlusCCReport {\n\t\tvalidatePayload(raw.payload.length >= 7);\n\t\tconst zwavePlusVersion = raw.payload[0];\n\t\tconst roleType: ZWavePlusRoleType = raw.payload[1];\n\t\tconst nodeType: ZWavePlusNodeType = raw.payload[2];\n\t\tconst installerIcon = raw.payload.readUInt16BE(3);\n\t\tconst userIcon = raw.payload.readUInt16BE(5);\n\n\t\treturn new this({\n\t\t\tnodeId: ctx.sourceNodeId,\n\t\t\tzwavePlusVersion,\n\t\t\troleType,\n\t\t\tnodeType,\n\t\t\tinstallerIcon,\n\t\t\tuserIcon,\n\t\t});\n\t}\n\n\tpublic zwavePlusVersion: number;\n\n\tpublic nodeType: ZWavePlusNodeType;\n\n\tpublic roleType: ZWavePlusRoleType;\n\n\tpublic installerIcon: number;\n\n\tpublic userIcon: number;\n\n\tpublic serialize(ctx: CCEncodingContext): Promise<Bytes> {\n\t\tthis.payload = Bytes.from([\n\t\t\tthis.zwavePlusVersion,\n\t\t\tthis.roleType,\n\t\t\tthis.nodeType,\n\t\t\t// placeholder for icons\n\t\t\t0,\n\t\t\t0,\n\t\t\t0,\n\t\t\t0,\n\t\t]);\n\t\tthis.payload.writeUInt16BE(this.installerIcon, 3);\n\t\tthis.payload.writeUInt16BE(this.userIcon, 5);\n\t\treturn super.serialize(ctx);\n\t}\n\n\tpublic toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n\t\treturn {\n\t\t\t...super.toLogEntry(ctx),\n\t\t\tmessage: {\n\t\t\t\tversion: this.zwavePlusVersion,\n\t\t\t\t\"node type\": getEnumMemberName(\n\t\t\t\t\tZWavePlusNodeType,\n\t\t\t\t\tthis.nodeType,\n\t\t\t\t),\n\t\t\t\t\"role type\": getEnumMemberName(\n\t\t\t\t\tZWavePlusRoleType,\n\t\t\t\t\tthis.roleType,\n\t\t\t\t),\n\t\t\t\t\"icon (mgmt.)\": num2hex(this.installerIcon),\n\t\t\t\t\"icon (user)\": num2hex(this.userIcon),\n\t\t\t},\n\t\t};\n\t}\n}\n\n@CCCommand(ZWavePlusCommand.Get)\n@expectedCCResponse(ZWavePlusCCReport)\nexport class ZWavePlusCCGet extends ZWavePlusCC {}\n"],
5
- "mappings": "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",
3
+ "sources": ["../../../src_gen/cc/ZWavePlusCC.ts"],
4
+ "sourcesContent": ["import * as __validateArgs from \"./ZWavePlusCC._validateArgs.js\";\nconst { validateArgs_ZWavePlusCCAPI_sendReport } = __validateArgs;\nimport { CommandClasses, type GetValueDB, type MaybeNotKnown, type MessageOrCCLogEntry, MessagePriority, type WithAddress, validatePayload, } from \"@zwave-js/core\";\nimport { Bytes, getEnumMemberName, num2hex, pick } from \"@zwave-js/shared\";\nimport { CCAPI, PhysicalCCAPI } from \"../lib/API.js\";\nimport { type CCRaw, CommandClass, type InterviewContext, } from \"../lib/CommandClass.js\";\nimport { API, CCCommand, ccValueProperty, ccValues, commandClass, expectedCCResponse, implementedVersion, } from \"../lib/CommandClassDecorators.js\";\nimport { V } from \"../lib/Values.js\";\nimport { ZWavePlusCommand, ZWavePlusNodeType, ZWavePlusRoleType, } from \"../lib/_Types.js\";\nimport type { CCEncodingContext, CCParsingContext } from \"../lib/traits.js\";\nimport { ZWavePlusCCValues } from \"./_CCValues.generated.js\";\nexport { ZWavePlusCCValues };\n// @noSetValueAPI This CC is read-only\n@API(CommandClasses[\"Z-Wave Plus Info\"])\nexport class ZWavePlusCCAPI extends PhysicalCCAPI {\n public supportsCommand(cmd: ZWavePlusCommand): MaybeNotKnown<boolean> {\n switch (cmd) {\n case ZWavePlusCommand.Get:\n case ZWavePlusCommand.Report:\n return true; // This is mandatory\n }\n return super.supportsCommand(cmd);\n }\n // oxlint-disable-next-line typescript/explicit-module-boundary-types\n public async get() {\n this.assertSupportsCommand(ZWavePlusCommand, ZWavePlusCommand.Get);\n const cc = new ZWavePlusCCGet({\n nodeId: this.endpoint.nodeId,\n endpointIndex: this.endpoint.index,\n });\n const response = await this.host.sendCommand<ZWavePlusCCReport>(cc, this.commandOptions);\n if (response) {\n return pick(response, [\n \"zwavePlusVersion\",\n \"nodeType\",\n \"roleType\",\n \"installerIcon\",\n \"userIcon\",\n ]);\n }\n }\n @validateArgs_ZWavePlusCCAPI_sendReport()\n public async sendReport(options: ZWavePlusCCReportOptions): Promise<void> {\n this.assertSupportsCommand(ZWavePlusCommand, ZWavePlusCommand.Report);\n const cc = new ZWavePlusCCReport({\n nodeId: this.endpoint.nodeId,\n endpointIndex: this.endpoint.index,\n ...options,\n });\n await this.host.sendCommand(cc, this.commandOptions);\n }\n}\n@commandClass(CommandClasses[\"Z-Wave Plus Info\"])\n@implementedVersion(2)\n@ccValues(ZWavePlusCCValues)\nexport class ZWavePlusCC extends CommandClass {\n declare ccCommand: ZWavePlusCommand;\n public async interview(ctx: InterviewContext): Promise<void> {\n const node = this.getNode(ctx)!;\n const endpoint = this.getEndpoint(ctx)!;\n const api = CCAPI.create(CommandClasses[\"Z-Wave Plus Info\"], ctx, endpoint).withOptions({\n priority: MessagePriority.NodeQuery,\n });\n ctx.logNode(node.id, {\n endpoint: this.endpointIndex,\n message: `Interviewing ${this.ccName}...`,\n direction: \"none\",\n });\n ctx.logNode(node.id, {\n endpoint: this.endpointIndex,\n message: \"querying Z-Wave+ information...\",\n direction: \"outbound\",\n });\n const zwavePlusResponse = await api.get();\n if (zwavePlusResponse) {\n const logMessage = `received response for Z-Wave+ information:\nZ-Wave+ version: ${zwavePlusResponse.zwavePlusVersion}\nrole type: ${ZWavePlusRoleType[zwavePlusResponse.roleType]}\nnode type: ${ZWavePlusNodeType[zwavePlusResponse.nodeType]}\ninstaller icon: ${num2hex(zwavePlusResponse.installerIcon)}\nuser icon: ${num2hex(zwavePlusResponse.userIcon)}`;\n ctx.logNode(node.id, {\n endpoint: this.endpointIndex,\n message: logMessage,\n direction: \"inbound\",\n });\n }\n // Remember that the interview is complete\n this.setInterviewComplete(ctx, true);\n }\n}\n// @publicAPI\nexport interface ZWavePlusCCReportOptions {\n zwavePlusVersion: number;\n nodeType: ZWavePlusNodeType;\n roleType: ZWavePlusRoleType;\n installerIcon: number;\n userIcon: number;\n}\n@CCCommand(ZWavePlusCommand.Report)\n@ccValueProperty(\"zwavePlusVersion\", ZWavePlusCCValues.zwavePlusVersion)\n@ccValueProperty(\"nodeType\", ZWavePlusCCValues.nodeType)\n@ccValueProperty(\"roleType\", ZWavePlusCCValues.roleType)\n@ccValueProperty(\"installerIcon\", ZWavePlusCCValues.installerIcon)\n@ccValueProperty(\"userIcon\", ZWavePlusCCValues.userIcon)\nexport class ZWavePlusCCReport extends ZWavePlusCC {\n public constructor(options: WithAddress<ZWavePlusCCReportOptions>) {\n super(options);\n this.zwavePlusVersion = options.zwavePlusVersion;\n this.roleType = options.roleType;\n this.nodeType = options.nodeType;\n this.installerIcon = options.installerIcon;\n this.userIcon = options.userIcon;\n }\n public static from(raw: CCRaw, ctx: CCParsingContext): ZWavePlusCCReport {\n validatePayload(raw.payload.length >= 7);\n const zwavePlusVersion = raw.payload[0];\n const roleType: ZWavePlusRoleType = raw.payload[1];\n const nodeType: ZWavePlusNodeType = raw.payload[2];\n const installerIcon = raw.payload.readUInt16BE(3);\n const userIcon = raw.payload.readUInt16BE(5);\n return new this({\n nodeId: ctx.sourceNodeId,\n zwavePlusVersion,\n roleType,\n nodeType,\n installerIcon,\n userIcon,\n });\n }\n public zwavePlusVersion: number;\n public nodeType: ZWavePlusNodeType;\n public roleType: ZWavePlusRoleType;\n public installerIcon: number;\n public userIcon: number;\n public serialize(ctx: CCEncodingContext): Promise<Bytes> {\n this.payload = Bytes.from([\n this.zwavePlusVersion,\n this.roleType,\n this.nodeType,\n // placeholder for icons\n 0,\n 0,\n 0,\n 0,\n ]);\n this.payload.writeUInt16BE(this.installerIcon, 3);\n this.payload.writeUInt16BE(this.userIcon, 5);\n return super.serialize(ctx);\n }\n public toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry {\n return {\n ...super.toLogEntry(ctx),\n message: {\n version: this.zwavePlusVersion,\n \"node type\": getEnumMemberName(ZWavePlusNodeType, this.nodeType),\n \"role type\": getEnumMemberName(ZWavePlusRoleType, this.roleType),\n \"icon (mgmt.)\": num2hex(this.installerIcon),\n \"icon (user)\": num2hex(this.userIcon),\n },\n };\n }\n}\n@CCCommand(ZWavePlusCommand.Get)\n@expectedCCResponse(ZWavePlusCCReport)\nexport class ZWavePlusCCGet extends ZWavePlusCC {\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qBAAgC;AAEhC,kBAAmJ;AACnJ,oBAAwD;AACxD,iBAAqC;AACrC,0BAAiE;AACjE,oCAAiH;AAEjH,mBAAwE;AAExE,gCAAkC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AATlC,MAAM,EAAE,uCAAsC,IAAK;IAatC,kBAAc,MAAA;8BAD1B,mCAAI,2BAAe,kBAAkB,CAAC,CAAC;;;;oBACJ;;;sCAAA,YAAa;WAAA;;;;;;;;gCA2B5C,uCAAsC,CAAE;AACzC,mBAAA,MAAA,MAAA,wBAAA,EAAA,MAAA,UAAA,MAAA,cAAA,QAAA,OAAA,SAAA,OAAA,QAAA,EAAA,KAAA,gCAAA,gBAAA,KAAA,QAAA,KAAA,gCAAA,IAAa,YAAb,OAAuB,GAAA,UAAA,UAAA,GAAA,MAAA,0BAAA;AA5B3B,mBAAA,MAAA,mBAAA,EAAA,OAAA,WAAA,GAAA,kBAAA,EAAA,MAAA,SAAA,MAAA,WAAA,MAAA,UAAA,UAAA,GAAA,MAAA,uBAAA;;;AAAa,wBAAA,YAAA,uBAAA;;IACF,gBAAgB,KAAqB;AACxC,cAAQ,KAAK;QACT,KAAK,8BAAiB;QACtB,KAAK,8BAAiB;AAClB,iBAAO;MACf;AACA,aAAO,MAAM,gBAAgB,GAAG;IACpC;;IAEO,MAAM,MAAG;AACZ,WAAK,sBAAsB,+BAAkB,8BAAiB,GAAG;AACjE,YAAM,KAAK,IAAI,eAAe;QAC1B,QAAQ,KAAK,SAAS;QACtB,eAAe,KAAK,SAAS;OAChC;AACD,YAAM,WAAW,MAAM,KAAK,KAAK,YAA+B,IAAI,KAAK,cAAc;AACvF,UAAI,UAAU;AACV,mBAAO,oBAAK,UAAU;UAClB;UACA;UACA;UACA;UACA;SACH;MACL;IACJ;IAEO,MAAM,WAAW,SAAiC;AACrD,WAAK,sBAAsB,+BAAkB,8BAAiB,MAAM;AACpE,YAAM,KAAK,IAAI,kBAAkB;QAC7B,QAAQ,KAAK,SAAS;QACtB,eAAe,KAAK,SAAS;QAC7B,GAAG;OACN;AACD,YAAM,KAAK,KAAK,YAAY,IAAI,KAAK,cAAc;IACvD;;;AApCS,wBAAA,MAAA,0BAAA;;;;;IAyCA,eAAW,MAAA;8BAHvB,4CAAa,2BAAe,kBAAkB,CAAC,OAC/C,kDAAmB,CAAC,OACpB,wCAAS,2CAAiB,CAAC;;;;oBACK;mCAAA,YAAY;WAAA;;;;;;;;AAA7C,mBAAA,MAAA,mBAAA,EAAA,OAAA,WAAA,GAAA,kBAAA,EAAA,MAAA,SAAA,MAAA,WAAA,MAAA,UAAA,UAAA,GAAA,MAAA,uBAAA;;;AAAa,wBAAA,YAAA,uBAAA;;IAEF,MAAM,UAAU,KAAqB;AACxC,YAAM,OAAO,KAAK,QAAQ,GAAG;AAC7B,YAAM,WAAW,KAAK,YAAY,GAAG;AACrC,YAAM,MAAM,iBAAM,OAAO,2BAAe,kBAAkB,GAAG,KAAK,QAAQ,EAAE,YAAY;QACpF,UAAU,4BAAgB;OAC7B;AACD,UAAI,QAAQ,KAAK,IAAI;QACjB,UAAU,KAAK;QACf,SAAS,gBAAgB,KAAK,MAAM;QACpC,WAAW;OACd;AACD,UAAI,QAAQ,KAAK,IAAI;QACjB,UAAU,KAAK;QACf,SAAS;QACT,WAAW;OACd;AACD,YAAM,oBAAoB,MAAM,IAAI,IAAG;AACvC,UAAI,mBAAmB;AACnB,cAAM,aAAa;mBACZ,kBAAkB,gBAAgB;mBAClC,+BAAkB,kBAAkB,QAAQ,CAAC;mBAC7C,+BAAkB,kBAAkB,QAAQ,CAAC;uBAC7C,uBAAQ,kBAAkB,aAAa,CAAC;uBACxC,uBAAQ,kBAAkB,QAAQ,CAAC;AAC1C,YAAI,QAAQ,KAAK,IAAI;UACjB,UAAU,KAAK;UACf,SAAS;UACT,WAAW;SACd;MACL;AAEA,WAAK,qBAAqB,KAAK,IAAI;IACvC;;;;IAgBS,qBAAiB,MAAA;8BAN7B,yCAAU,8BAAiB,MAAM,OACjC,+CAAgB,oBAAoB,4CAAkB,gBAAgB,OACtE,+CAAgB,YAAY,4CAAkB,QAAQ,OACtD,+CAAgB,YAAY,4CAAkB,QAAQ,OACtD,+CAAgB,iBAAiB,4CAAkB,aAAa,OAChE,+CAAgB,YAAY,4CAAkB,QAAQ,CAAC;;;;oBACjB;yCAAA,YAAW;WAAA;;;;;;;;AAAlD,mBAAA,MAAA,mBAAA,EAAA,OAAA,WAAA,GAAA,kBAAA,EAAA,MAAA,SAAA,MAAA,WAAA,MAAA,UAAA,UAAA,GAAA,MAAA,uBAAA;;;AAAa,wBAAA,YAAA,uBAAA;;IACT,YAAmB,SAA8C;AAC7D,YAAM,OAAO;AACb,WAAK,mBAAmB,QAAQ;AAChC,WAAK,WAAW,QAAQ;AACxB,WAAK,WAAW,QAAQ;AACxB,WAAK,gBAAgB,QAAQ;AAC7B,WAAK,WAAW,QAAQ;IAC5B;IACO,OAAO,KAAK,KAAY,KAAqB;AAChD,uCAAgB,IAAI,QAAQ,UAAU,CAAC;AACvC,YAAM,mBAAmB,IAAI,QAAQ,CAAC;AACtC,YAAM,WAA8B,IAAI,QAAQ,CAAC;AACjD,YAAM,WAA8B,IAAI,QAAQ,CAAC;AACjD,YAAM,gBAAgB,IAAI,QAAQ,aAAa,CAAC;AAChD,YAAM,WAAW,IAAI,QAAQ,aAAa,CAAC;AAC3C,aAAO,IAAI,KAAK;QACZ,QAAQ,IAAI;QACZ;QACA;QACA;QACA;QACA;OACH;IACL;IACO;IACA;IACA;IACA;IACA;IACA,UAAU,KAAsB;AACnC,WAAK,UAAU,oBAAM,KAAK;QACtB,KAAK;QACL,KAAK;QACL,KAAK;;QAEL;QACA;QACA;QACA;OACH;AACD,WAAK,QAAQ,cAAc,KAAK,eAAe,CAAC;AAChD,WAAK,QAAQ,cAAc,KAAK,UAAU,CAAC;AAC3C,aAAO,MAAM,UAAU,GAAG;IAC9B;IACO,WAAW,KAAgB;AAC9B,aAAO;QACH,GAAG,MAAM,WAAW,GAAG;QACvB,SAAS;UACL,SAAS,KAAK;UACd,iBAAa,iCAAkB,gCAAmB,KAAK,QAAQ;UAC/D,iBAAa,iCAAkB,gCAAmB,KAAK,QAAQ;UAC/D,oBAAgB,uBAAQ,KAAK,aAAa;UAC1C,mBAAe,uBAAQ,KAAK,QAAQ;;;IAGhD;;;;IAIS,kBAAc,MAAA;8BAF1B,yCAAU,8BAAiB,GAAG,OAC9B,kDAAmB,iBAAiB,CAAC;;;;oBACF;sCAAA,YAAW;WAAA;;;;;;;;AAA/C,mBAAA,MAAA,mBAAA,EAAA,OAAA,WAAA,GAAA,kBAAA,EAAA,MAAA,SAAA,MAAA,WAAA,MAAA,UAAA,UAAA,GAAA,MAAA,uBAAA;;;AAAa,wBAAA,YAAA,uBAAA;;;;;",
6
6
  "names": []
7
7
  }
@@ -1,8 +1,8 @@
1
- import type { CCEncodingContext, CCParsingContext } from "@zwave-js/cc";
2
1
  import { type BasicDeviceClass, CommandClasses, type DataRate, type FLiRS, type NodeInformationFrame, type NodeProtocolInfoAndDeviceClass, type NodeType, type ProtocolVersion, type WithAddress, ZWaveDataRate } from "@zwave-js/core";
3
2
  import { Bytes, type BytesView } from "@zwave-js/shared";
4
3
  import { type CCRaw, CommandClass } from "../lib/CommandClass.js";
5
4
  import { type NetworkTransferStatus, WakeUpTime, ZWaveProtocolCommand } from "../lib/_Types.js";
5
+ import type { CCEncodingContext, CCParsingContext } from "../lib/traits.js";
6
6
  export declare class ZWaveProtocolCC extends CommandClass {
7
7
  ccCommand: ZWaveProtocolCommand;
8
8
  }