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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (331) hide show
  1. package/build/cjs/cc/AlarmSensorCC.js +381 -266
  2. package/build/cjs/cc/AlarmSensorCC.js.map +3 -3
  3. package/build/cjs/cc/AssociationCC.js +669 -503
  4. package/build/cjs/cc/AssociationCC.js.map +3 -3
  5. package/build/cjs/cc/AssociationGroupInfoCC.js +633 -492
  6. package/build/cjs/cc/AssociationGroupInfoCC.js.map +3 -3
  7. package/build/cjs/cc/BarrierOperatorCC.js +595 -429
  8. package/build/cjs/cc/BarrierOperatorCC.js.map +3 -3
  9. package/build/cjs/cc/BasicCC.js +354 -260
  10. package/build/cjs/cc/BasicCC.js.map +3 -3
  11. package/build/cjs/cc/BatteryCC.js +427 -345
  12. package/build/cjs/cc/BatteryCC.js.map +3 -3
  13. package/build/cjs/cc/BinarySensorCC.js +391 -276
  14. package/build/cjs/cc/BinarySensorCC.js.map +3 -3
  15. package/build/cjs/cc/BinarySwitchCC.js +347 -253
  16. package/build/cjs/cc/BinarySwitchCC.js.map +3 -3
  17. package/build/cjs/cc/CRC16CC.js +160 -85
  18. package/build/cjs/cc/CRC16CC.js.map +3 -3
  19. package/build/cjs/cc/CentralSceneCC.js +459 -324
  20. package/build/cjs/cc/CentralSceneCC.js.map +3 -3
  21. package/build/cjs/cc/ClimateControlScheduleCC.js +459 -293
  22. package/build/cjs/cc/ClimateControlScheduleCC.js.map +3 -3
  23. package/build/cjs/cc/ClockCC.js +254 -150
  24. package/build/cjs/cc/ClockCC.js.map +3 -3
  25. package/build/cjs/cc/ColorSwitchCC.js +758 -610
  26. package/build/cjs/cc/ColorSwitchCC.js.map +3 -3
  27. package/build/cjs/cc/ConfigurationCC.js +1700 -1453
  28. package/build/cjs/cc/ConfigurationCC.js.map +3 -3
  29. package/build/cjs/cc/DeviceResetLocallyCC.js +125 -49
  30. package/build/cjs/cc/DeviceResetLocallyCC.js.map +3 -3
  31. package/build/cjs/cc/DoorLockCC.js +904 -777
  32. package/build/cjs/cc/DoorLockCC.js.map +3 -3
  33. package/build/cjs/cc/DoorLockLoggingCC.js +321 -206
  34. package/build/cjs/cc/DoorLockLoggingCC.js.map +3 -3
  35. package/build/cjs/cc/EnergyProductionCC.js +249 -160
  36. package/build/cjs/cc/EnergyProductionCC.js.map +3 -3
  37. package/build/cjs/cc/EntryControlCC.js +619 -458
  38. package/build/cjs/cc/EntryControlCC.js.map +3 -3
  39. package/build/cjs/cc/FirmwareUpdateMetaDataCC.js +898 -698
  40. package/build/cjs/cc/FirmwareUpdateMetaDataCC.js.map +3 -3
  41. package/build/cjs/cc/HailCC.js +57 -11
  42. package/build/cjs/cc/HailCC.js.map +2 -2
  43. package/build/cjs/cc/HumidityControlModeCC.js +359 -233
  44. package/build/cjs/cc/HumidityControlModeCC.js.map +3 -3
  45. package/build/cjs/cc/HumidityControlOperatingStateCC.js +189 -103
  46. package/build/cjs/cc/HumidityControlOperatingStateCC.js.map +3 -3
  47. package/build/cjs/cc/HumidityControlSetpointCC.js +682 -495
  48. package/build/cjs/cc/HumidityControlSetpointCC.js.map +3 -3
  49. package/build/cjs/cc/InclusionControllerCC.js +205 -114
  50. package/build/cjs/cc/InclusionControllerCC.js.map +3 -3
  51. package/build/cjs/cc/IndicatorCC.js +897 -736
  52. package/build/cjs/cc/IndicatorCC.js.map +3 -3
  53. package/build/cjs/cc/IrrigationCC.js +1651 -1405
  54. package/build/cjs/cc/IrrigationCC.js.map +3 -3
  55. package/build/cjs/cc/LanguageCC.js +268 -171
  56. package/build/cjs/cc/LanguageCC.js.map +3 -3
  57. package/build/cjs/cc/LockCC.js +254 -154
  58. package/build/cjs/cc/LockCC.js.map +3 -3
  59. package/build/cjs/cc/ManufacturerProprietaryCC.js +189 -129
  60. package/build/cjs/cc/ManufacturerProprietaryCC.js.map +2 -2
  61. package/build/cjs/cc/ManufacturerSpecificCC.js +319 -213
  62. package/build/cjs/cc/ManufacturerSpecificCC.js.map +3 -3
  63. package/build/cjs/cc/MeterCC.js +827 -707
  64. package/build/cjs/cc/MeterCC.js.map +3 -3
  65. package/build/cjs/cc/MultiChannelAssociationCC.js +612 -478
  66. package/build/cjs/cc/MultiChannelAssociationCC.js.map +3 -3
  67. package/build/cjs/cc/MultiChannelCC.js +1037 -819
  68. package/build/cjs/cc/MultiChannelCC.js.map +3 -3
  69. package/build/cjs/cc/MultiCommandCC.js +172 -97
  70. package/build/cjs/cc/MultiCommandCC.js.map +3 -3
  71. package/build/cjs/cc/MultilevelSensorCC.js +589 -449
  72. package/build/cjs/cc/MultilevelSensorCC.js.map +3 -3
  73. package/build/cjs/cc/MultilevelSwitchCC.js +587 -439
  74. package/build/cjs/cc/MultilevelSwitchCC.js.map +3 -3
  75. package/build/cjs/cc/NoOperationCC.js +89 -27
  76. package/build/cjs/cc/NoOperationCC.js.map +2 -2
  77. package/build/cjs/cc/NodeNamingCC.js +417 -277
  78. package/build/cjs/cc/NodeNamingCC.js.map +3 -3
  79. package/build/cjs/cc/NotificationCC.js +972 -818
  80. package/build/cjs/cc/NotificationCC.js.map +3 -3
  81. package/build/cjs/cc/PowerlevelCC.js +450 -303
  82. package/build/cjs/cc/PowerlevelCC.js.map +3 -3
  83. package/build/cjs/cc/ProtectionCC.js +686 -494
  84. package/build/cjs/cc/ProtectionCC.js.map +3 -3
  85. package/build/cjs/cc/SceneActivationCC.js +165 -97
  86. package/build/cjs/cc/SceneActivationCC.js.map +3 -3
  87. package/build/cjs/cc/SceneActuatorConfigurationCC.js +346 -243
  88. package/build/cjs/cc/SceneActuatorConfigurationCC.js.map +3 -3
  89. package/build/cjs/cc/SceneControllerConfigurationCC.js +401 -298
  90. package/build/cjs/cc/SceneControllerConfigurationCC.js.map +3 -3
  91. package/build/cjs/cc/ScheduleEntryLockCC.js +1552 -1272
  92. package/build/cjs/cc/ScheduleEntryLockCC.js.map +3 -3
  93. package/build/cjs/cc/Security2CC.js +1483 -1219
  94. package/build/cjs/cc/Security2CC.js.map +3 -3
  95. package/build/cjs/cc/SecurityCC.js +839 -619
  96. package/build/cjs/cc/SecurityCC.js.map +3 -3
  97. package/build/cjs/cc/SoundSwitchCC.js +707 -515
  98. package/build/cjs/cc/SoundSwitchCC.js.map +3 -3
  99. package/build/cjs/cc/SupervisionCC.js +327 -237
  100. package/build/cjs/cc/SupervisionCC.js.map +3 -3
  101. package/build/cjs/cc/ThermostatFanModeCC.js +386 -263
  102. package/build/cjs/cc/ThermostatFanModeCC.js.map +3 -3
  103. package/build/cjs/cc/ThermostatFanStateCC.js +192 -106
  104. package/build/cjs/cc/ThermostatFanStateCC.js.map +3 -3
  105. package/build/cjs/cc/ThermostatModeCC.js +425 -302
  106. package/build/cjs/cc/ThermostatModeCC.js.map +3 -3
  107. package/build/cjs/cc/ThermostatOperatingStateCC.js +188 -102
  108. package/build/cjs/cc/ThermostatOperatingStateCC.js.map +3 -3
  109. package/build/cjs/cc/ThermostatSetbackCC.js +277 -173
  110. package/build/cjs/cc/ThermostatSetbackCC.js.map +3 -3
  111. package/build/cjs/cc/ThermostatSetpointCC.js +645 -491
  112. package/build/cjs/cc/ThermostatSetpointCC.js.map +3 -3
  113. package/build/cjs/cc/TimeCC.js +515 -353
  114. package/build/cjs/cc/TimeCC.js.map +3 -3
  115. package/build/cjs/cc/TimeParametersCC.js +302 -202
  116. package/build/cjs/cc/TimeParametersCC.js.map +3 -3
  117. package/build/cjs/cc/TransportServiceCC.js +433 -315
  118. package/build/cjs/cc/TransportServiceCC.js.map +3 -3
  119. package/build/cjs/cc/UserCodeCC.js +1385 -1102
  120. package/build/cjs/cc/UserCodeCC.js.map +3 -3
  121. package/build/cjs/cc/VersionCC.js +696 -562
  122. package/build/cjs/cc/VersionCC.js.map +3 -3
  123. package/build/cjs/cc/WakeUpCC.js +499 -346
  124. package/build/cjs/cc/WakeUpCC.js.map +3 -3
  125. package/build/cjs/cc/WindowCoveringCC.js +626 -478
  126. package/build/cjs/cc/WindowCoveringCC.js.map +3 -3
  127. package/build/cjs/cc/ZWaveLongRangeCC.js +57 -10
  128. package/build/cjs/cc/ZWaveLongRangeCC.js.map +2 -2
  129. package/build/cjs/cc/ZWavePlusCC.js +233 -159
  130. package/build/cjs/cc/ZWavePlusCC.js.map +3 -3
  131. package/build/cjs/cc/ZWaveProtocolCC.js +1515 -948
  132. package/build/cjs/cc/ZWaveProtocolCC.js.map +3 -3
  133. package/build/cjs/cc/manufacturerProprietary/Decorators.d.ts +4 -4
  134. package/build/cjs/cc/manufacturerProprietary/Decorators.js.map +1 -1
  135. package/build/cjs/cc/manufacturerProprietary/FibaroCC.js +395 -274
  136. package/build/cjs/cc/manufacturerProprietary/FibaroCC.js.map +3 -3
  137. package/build/cjs/lib/CommandClassDecorators.d.ts +11 -15
  138. package/build/cjs/lib/CommandClassDecorators.js +19 -20
  139. package/build/cjs/lib/CommandClassDecorators.js.map +2 -2
  140. package/build/cjs/lib/Security2/Extension.d.ts +1 -1
  141. package/build/cjs/lib/Security2/Extension.js +217 -126
  142. package/build/cjs/lib/Security2/Extension.js.map +3 -3
  143. package/build/esm/cc/AlarmSensorCC.d.ts.map +1 -1
  144. package/build/esm/cc/AlarmSensorCC.js +389 -291
  145. package/build/esm/cc/AlarmSensorCC.js.map +1 -1
  146. package/build/esm/cc/AssociationCC.d.ts.map +1 -1
  147. package/build/esm/cc/AssociationCC.js +678 -537
  148. package/build/esm/cc/AssociationCC.js.map +1 -1
  149. package/build/esm/cc/AssociationGroupInfoCC.d.ts.map +1 -1
  150. package/build/esm/cc/AssociationGroupInfoCC.js +659 -539
  151. package/build/esm/cc/AssociationGroupInfoCC.js.map +1 -1
  152. package/build/esm/cc/BarrierOperatorCC.d.ts.map +1 -1
  153. package/build/esm/cc/BarrierOperatorCC.js +634 -493
  154. package/build/esm/cc/BarrierOperatorCC.js.map +1 -1
  155. package/build/esm/cc/BasicCC.d.ts.map +1 -1
  156. package/build/esm/cc/BasicCC.js +380 -302
  157. package/build/esm/cc/BasicCC.js.map +1 -1
  158. package/build/esm/cc/BatteryCC.d.ts.map +1 -1
  159. package/build/esm/cc/BatteryCC.js +449 -384
  160. package/build/esm/cc/BatteryCC.js.map +1 -1
  161. package/build/esm/cc/BinarySensorCC.d.ts.map +1 -1
  162. package/build/esm/cc/BinarySensorCC.js +395 -297
  163. package/build/esm/cc/BinarySensorCC.js.map +1 -1
  164. package/build/esm/cc/BinarySwitchCC.d.ts.map +1 -1
  165. package/build/esm/cc/BinarySwitchCC.js +353 -274
  166. package/build/esm/cc/BinarySwitchCC.js.map +1 -1
  167. package/build/esm/cc/CRC16CC.js +162 -98
  168. package/build/esm/cc/CRC16CC.js.map +1 -1
  169. package/build/esm/cc/CentralSceneCC.d.ts.map +1 -1
  170. package/build/esm/cc/CentralSceneCC.js +465 -351
  171. package/build/esm/cc/CentralSceneCC.js.map +1 -1
  172. package/build/esm/cc/ClimateControlScheduleCC.d.ts.map +1 -1
  173. package/build/esm/cc/ClimateControlScheduleCC.js +454 -313
  174. package/build/esm/cc/ClimateControlScheduleCC.js.map +1 -1
  175. package/build/esm/cc/ClockCC.js +248 -159
  176. package/build/esm/cc/ClockCC.js.map +1 -1
  177. package/build/esm/cc/ColorSwitchCC.d.ts.map +1 -1
  178. package/build/esm/cc/ColorSwitchCC.js +802 -677
  179. package/build/esm/cc/ColorSwitchCC.js.map +1 -1
  180. package/build/esm/cc/ConfigurationCC.js +1899 -1687
  181. package/build/esm/cc/ConfigurationCC.js.map +1 -1
  182. package/build/esm/cc/DeviceResetLocallyCC.js +124 -59
  183. package/build/esm/cc/DeviceResetLocallyCC.js.map +1 -1
  184. package/build/esm/cc/DoorLockCC.d.ts.map +1 -1
  185. package/build/esm/cc/DoorLockCC.js +951 -849
  186. package/build/esm/cc/DoorLockCC.js.map +1 -1
  187. package/build/esm/cc/DoorLockLoggingCC.d.ts.map +1 -1
  188. package/build/esm/cc/DoorLockLoggingCC.js +316 -218
  189. package/build/esm/cc/DoorLockLoggingCC.js.map +1 -1
  190. package/build/esm/cc/EnergyProductionCC.js +240 -164
  191. package/build/esm/cc/EnergyProductionCC.js.map +1 -1
  192. package/build/esm/cc/EntryControlCC.d.ts.map +1 -1
  193. package/build/esm/cc/EntryControlCC.js +629 -493
  194. package/build/esm/cc/EntryControlCC.js.map +1 -1
  195. package/build/esm/cc/FirmwareUpdateMetaDataCC.d.ts.map +1 -1
  196. package/build/esm/cc/FirmwareUpdateMetaDataCC.js +938 -769
  197. package/build/esm/cc/FirmwareUpdateMetaDataCC.js.map +1 -1
  198. package/build/esm/cc/HailCC.js +51 -12
  199. package/build/esm/cc/HailCC.js.map +1 -1
  200. package/build/esm/cc/HumidityControlModeCC.d.ts.map +1 -1
  201. package/build/esm/cc/HumidityControlModeCC.js +357 -250
  202. package/build/esm/cc/HumidityControlModeCC.js.map +1 -1
  203. package/build/esm/cc/HumidityControlOperatingStateCC.d.ts.map +1 -1
  204. package/build/esm/cc/HumidityControlOperatingStateCC.js +182 -109
  205. package/build/esm/cc/HumidityControlOperatingStateCC.js.map +1 -1
  206. package/build/esm/cc/HumidityControlSetpointCC.d.ts.map +1 -1
  207. package/build/esm/cc/HumidityControlSetpointCC.js +706 -546
  208. package/build/esm/cc/HumidityControlSetpointCC.js.map +1 -1
  209. package/build/esm/cc/InclusionControllerCC.js +197 -119
  210. package/build/esm/cc/InclusionControllerCC.js.map +1 -1
  211. package/build/esm/cc/IndicatorCC.js +973 -835
  212. package/build/esm/cc/IndicatorCC.js.map +1 -1
  213. package/build/esm/cc/IrrigationCC.d.ts.map +1 -1
  214. package/build/esm/cc/IrrigationCC.js +1697 -1496
  215. package/build/esm/cc/IrrigationCC.js.map +1 -1
  216. package/build/esm/cc/LanguageCC.d.ts.map +1 -1
  217. package/build/esm/cc/LanguageCC.js +266 -184
  218. package/build/esm/cc/LanguageCC.js.map +1 -1
  219. package/build/esm/cc/LockCC.d.ts.map +1 -1
  220. package/build/esm/cc/LockCC.js +247 -162
  221. package/build/esm/cc/LockCC.js.map +1 -1
  222. package/build/esm/cc/ManufacturerProprietaryCC.js +192 -141
  223. package/build/esm/cc/ManufacturerProprietaryCC.js.map +1 -1
  224. package/build/esm/cc/ManufacturerSpecificCC.d.ts.map +1 -1
  225. package/build/esm/cc/ManufacturerSpecificCC.js +312 -223
  226. package/build/esm/cc/ManufacturerSpecificCC.js.map +1 -1
  227. package/build/esm/cc/MeterCC.d.ts.map +1 -1
  228. package/build/esm/cc/MeterCC.js +896 -795
  229. package/build/esm/cc/MeterCC.js.map +1 -1
  230. package/build/esm/cc/MultiChannelAssociationCC.d.ts.map +1 -1
  231. package/build/esm/cc/MultiChannelAssociationCC.js +631 -518
  232. package/build/esm/cc/MultiChannelAssociationCC.js.map +1 -1
  233. package/build/esm/cc/MultiChannelCC.d.ts.map +1 -1
  234. package/build/esm/cc/MultiChannelCC.js +1106 -921
  235. package/build/esm/cc/MultiChannelCC.js.map +1 -1
  236. package/build/esm/cc/MultiCommandCC.js +166 -102
  237. package/build/esm/cc/MultiCommandCC.js.map +1 -1
  238. package/build/esm/cc/MultilevelSensorCC.d.ts.map +1 -1
  239. package/build/esm/cc/MultilevelSensorCC.js +616 -497
  240. package/build/esm/cc/MultilevelSensorCC.js.map +1 -1
  241. package/build/esm/cc/MultilevelSwitchCC.d.ts.map +1 -1
  242. package/build/esm/cc/MultilevelSwitchCC.js +621 -496
  243. package/build/esm/cc/MultilevelSwitchCC.js.map +1 -1
  244. package/build/esm/cc/NoOperationCC.js +82 -29
  245. package/build/esm/cc/NoOperationCC.js.map +1 -1
  246. package/build/esm/cc/NodeNamingCC.d.ts.map +1 -1
  247. package/build/esm/cc/NodeNamingCC.js +413 -294
  248. package/build/esm/cc/NodeNamingCC.js.map +1 -1
  249. package/build/esm/cc/NotificationCC.d.ts.map +1 -1
  250. package/build/esm/cc/NotificationCC.js +1097 -966
  251. package/build/esm/cc/NotificationCC.js.map +1 -1
  252. package/build/esm/cc/PowerlevelCC.js +437 -311
  253. package/build/esm/cc/PowerlevelCC.js.map +1 -1
  254. package/build/esm/cc/ProtectionCC.d.ts.map +1 -1
  255. package/build/esm/cc/ProtectionCC.js +704 -543
  256. package/build/esm/cc/ProtectionCC.js.map +1 -1
  257. package/build/esm/cc/SceneActivationCC.d.ts.map +1 -1
  258. package/build/esm/cc/SceneActivationCC.js +157 -100
  259. package/build/esm/cc/SceneActivationCC.js.map +1 -1
  260. package/build/esm/cc/SceneActuatorConfigurationCC.js +357 -269
  261. package/build/esm/cc/SceneActuatorConfigurationCC.js.map +1 -1
  262. package/build/esm/cc/SceneControllerConfigurationCC.js +434 -346
  263. package/build/esm/cc/SceneControllerConfigurationCC.js.map +1 -1
  264. package/build/esm/cc/ScheduleEntryLockCC.d.ts.map +1 -1
  265. package/build/esm/cc/ScheduleEntryLockCC.js +1596 -1357
  266. package/build/esm/cc/ScheduleEntryLockCC.js.map +1 -1
  267. package/build/esm/cc/Security2CC.js +1633 -1406
  268. package/build/esm/cc/Security2CC.js.map +1 -1
  269. package/build/esm/cc/SecurityCC.js +876 -687
  270. package/build/esm/cc/SecurityCC.js.map +1 -1
  271. package/build/esm/cc/SoundSwitchCC.d.ts.map +1 -1
  272. package/build/esm/cc/SoundSwitchCC.js +689 -526
  273. package/build/esm/cc/SoundSwitchCC.js.map +1 -1
  274. package/build/esm/cc/SupervisionCC.js +349 -272
  275. package/build/esm/cc/SupervisionCC.js.map +1 -1
  276. package/build/esm/cc/ThermostatFanModeCC.d.ts.map +1 -1
  277. package/build/esm/cc/ThermostatFanModeCC.js +388 -284
  278. package/build/esm/cc/ThermostatFanModeCC.js.map +1 -1
  279. package/build/esm/cc/ThermostatFanStateCC.d.ts.map +1 -1
  280. package/build/esm/cc/ThermostatFanStateCC.js +184 -111
  281. package/build/esm/cc/ThermostatFanStateCC.js.map +1 -1
  282. package/build/esm/cc/ThermostatModeCC.d.ts.map +1 -1
  283. package/build/esm/cc/ThermostatModeCC.js +435 -331
  284. package/build/esm/cc/ThermostatModeCC.js.map +1 -1
  285. package/build/esm/cc/ThermostatOperatingStateCC.d.ts.map +1 -1
  286. package/build/esm/cc/ThermostatOperatingStateCC.js +180 -107
  287. package/build/esm/cc/ThermostatOperatingStateCC.js.map +1 -1
  288. package/build/esm/cc/ThermostatSetbackCC.js +274 -185
  289. package/build/esm/cc/ThermostatSetbackCC.js.map +1 -1
  290. package/build/esm/cc/ThermostatSetpointCC.d.ts.map +1 -1
  291. package/build/esm/cc/ThermostatSetpointCC.js +674 -543
  292. package/build/esm/cc/ThermostatSetpointCC.js.map +1 -1
  293. package/build/esm/cc/TimeCC.js +499 -360
  294. package/build/esm/cc/TimeCC.js.map +1 -1
  295. package/build/esm/cc/TimeParametersCC.d.ts.map +1 -1
  296. package/build/esm/cc/TimeParametersCC.js +296 -211
  297. package/build/esm/cc/TimeParametersCC.js.map +1 -1
  298. package/build/esm/cc/TransportServiceCC.js +464 -363
  299. package/build/esm/cc/TransportServiceCC.js.map +1 -1
  300. package/build/esm/cc/UserCodeCC.d.ts.map +1 -1
  301. package/build/esm/cc/UserCodeCC.js +1443 -1205
  302. package/build/esm/cc/UserCodeCC.js.map +1 -1
  303. package/build/esm/cc/VersionCC.d.ts.map +1 -1
  304. package/build/esm/cc/VersionCC.js +744 -635
  305. package/build/esm/cc/VersionCC.js.map +1 -1
  306. package/build/esm/cc/WakeUpCC.d.ts.map +1 -1
  307. package/build/esm/cc/WakeUpCC.js +494 -364
  308. package/build/esm/cc/WakeUpCC.js.map +1 -1
  309. package/build/esm/cc/WindowCoveringCC.d.ts.map +1 -1
  310. package/build/esm/cc/WindowCoveringCC.js +655 -530
  311. package/build/esm/cc/WindowCoveringCC.js.map +1 -1
  312. package/build/esm/cc/ZWaveLongRangeCC.js +51 -11
  313. package/build/esm/cc/ZWaveLongRangeCC.js.map +1 -1
  314. package/build/esm/cc/ZWavePlusCC.d.ts.map +1 -1
  315. package/build/esm/cc/ZWavePlusCC.js +223 -162
  316. package/build/esm/cc/ZWavePlusCC.js.map +1 -1
  317. package/build/esm/cc/ZWaveProtocolCC.js +1443 -953
  318. package/build/esm/cc/ZWaveProtocolCC.js.map +1 -1
  319. package/build/esm/cc/manufacturerProprietary/Decorators.d.ts +4 -4
  320. package/build/esm/cc/manufacturerProprietary/Decorators.d.ts.map +1 -1
  321. package/build/esm/cc/manufacturerProprietary/FibaroCC.js +390 -286
  322. package/build/esm/cc/manufacturerProprietary/FibaroCC.js.map +1 -1
  323. package/build/esm/lib/CommandClassDecorators.d.ts +11 -15
  324. package/build/esm/lib/CommandClassDecorators.d.ts.map +1 -1
  325. package/build/esm/lib/CommandClassDecorators.js +24 -24
  326. package/build/esm/lib/CommandClassDecorators.js.map +1 -1
  327. package/build/esm/lib/Security2/Extension.d.ts +1 -1
  328. package/build/esm/lib/Security2/Extension.d.ts.map +1 -1
  329. package/build/esm/lib/Security2/Extension.js +207 -123
  330. package/build/esm/lib/Security2/Extension.js.map +1 -1
  331. package/package.json +6 -6
@@ -38,13 +38,45 @@ var import_CommandClass = require("../lib/CommandClass.js");
38
38
  var import_CommandClassDecorators = require("../lib/CommandClassDecorators.js");
39
39
  var import_Types = require("../lib/_Types.js");
40
40
  var import_serializers = require("../lib/serializers.js");
41
- var __decorate = function(decorators, target, key, desc) {
42
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
43
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
44
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
45
- return c > 3 && r && Object.defineProperty(target, key, r), r;
41
+ var __esDecorate = function(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
42
+ function accept(f) {
43
+ if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected");
44
+ return f;
45
+ }
46
+ var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
47
+ var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
48
+ var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
49
+ var _, done = false;
50
+ for (var i = decorators.length - 1; i >= 0; i--) {
51
+ var context = {};
52
+ for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
53
+ for (var p in contextIn.access) context.access[p] = contextIn.access[p];
54
+ context.addInitializer = function(f) {
55
+ if (done) throw new TypeError("Cannot add initializers after decoration has completed");
56
+ extraInitializers.push(accept(f || null));
57
+ };
58
+ var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
59
+ if (kind === "accessor") {
60
+ if (result === void 0) continue;
61
+ if (result === null || typeof result !== "object") throw new TypeError("Object expected");
62
+ if (_ = accept(result.get)) descriptor.get = _;
63
+ if (_ = accept(result.set)) descriptor.set = _;
64
+ if (_ = accept(result.init)) initializers.unshift(_);
65
+ } else if (_ = accept(result)) {
66
+ if (kind === "field") initializers.unshift(_);
67
+ else descriptor[key] = _;
68
+ }
69
+ }
70
+ if (target) Object.defineProperty(target, contextIn.name, descriptor);
71
+ done = true;
72
+ };
73
+ var __runInitializers = function(thisArg, initializers, value) {
74
+ var useValue = arguments.length > 2;
75
+ for (var i = 0; i < initializers.length; i++) {
76
+ value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
77
+ }
78
+ return useValue ? value : void 0;
46
79
  };
47
- var TimeCCTimeReport_1, TimeCCDateReport_1, TimeCCTimeOffsetReport_1;
48
80
  function __assertType(argName, typeName, boundHasError) {
49
81
  const { ZWaveError: ZWaveError2, ZWaveErrorCodes: ZWaveErrorCodes2 } = require("@zwave-js/core");
50
82
  if (boundHasError()) {
@@ -103,361 +135,491 @@ const __assertType__DSTInfo = ($o) => {
103
135
  }
104
136
  return _0($o);
105
137
  };
106
- let TimeCCAPI = class TimeCCAPI2 extends import_API.CCAPI {
107
- supportsCommand(cmd) {
108
- switch (cmd) {
109
- case import_Types.TimeCommand.TimeGet:
110
- case import_Types.TimeCommand.TimeReport:
111
- case import_Types.TimeCommand.DateGet:
112
- case import_Types.TimeCommand.DateReport:
113
- return this.isSinglecast();
114
- // "mandatory"
115
- case import_Types.TimeCommand.TimeOffsetGet:
116
- case import_Types.TimeCommand.TimeOffsetReport:
117
- return this.version >= 2 && this.isSinglecast();
118
- case import_Types.TimeCommand.TimeOffsetSet:
119
- return this.version >= 2;
120
- }
121
- return super.supportsCommand(cmd);
122
- }
123
- // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
124
- async getTime() {
125
- this.assertSupportsCommand(import_Types.TimeCommand, import_Types.TimeCommand.TimeGet);
126
- const cc = new TimeCCTimeGet({
127
- nodeId: this.endpoint.nodeId,
128
- endpointIndex: this.endpoint.index
129
- });
130
- const response = await this.host.sendCommand(cc, this.commandOptions);
131
- if (response) {
132
- return (0, import_safe2.pick)(response, ["hour", "minute", "second"]);
138
+ let TimeCCAPI = (() => {
139
+ let _classDecorators = [(0, import_CommandClassDecorators.API)(import_core.CommandClasses.Time)];
140
+ let _classDescriptor;
141
+ let _classExtraInitializers = [];
142
+ let _classThis;
143
+ let _classSuper = import_API.CCAPI;
144
+ var TimeCCAPI2 = class extends _classSuper {
145
+ static {
146
+ _classThis = this;
133
147
  }
134
- }
135
- async reportTime(hour, minute, second) {
136
- __assertType("hour", "number", __assertType__number.bind(void 0, hour));
137
- __assertType("minute", "number", __assertType__number.bind(void 0, minute));
138
- __assertType("second", "number", __assertType__number.bind(void 0, second));
139
- this.assertSupportsCommand(import_Types.TimeCommand, import_Types.TimeCommand.TimeReport);
140
- const cc = new TimeCCTimeReport({
141
- nodeId: this.endpoint.nodeId,
142
- endpointIndex: this.endpoint.index,
143
- hour,
144
- minute,
145
- second
146
- });
147
- return this.host.sendCommand(cc, this.commandOptions);
148
- }
149
- // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
150
- async getDate() {
151
- this.assertSupportsCommand(import_Types.TimeCommand, import_Types.TimeCommand.DateGet);
152
- const cc = new TimeCCDateGet({
153
- nodeId: this.endpoint.nodeId,
154
- endpointIndex: this.endpoint.index
155
- });
156
- const response = await this.host.sendCommand(cc, this.commandOptions);
157
- if (response) {
158
- return (0, import_safe2.pick)(response, ["day", "month", "year"]);
148
+ static {
149
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
150
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
151
+ TimeCCAPI2 = _classThis = _classDescriptor.value;
152
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
153
+ __runInitializers(_classThis, _classExtraInitializers);
159
154
  }
160
- }
161
- async reportDate(year, month, day) {
162
- __assertType("year", "number", __assertType__number.bind(void 0, year));
163
- __assertType("month", "number", __assertType__number.bind(void 0, month));
164
- __assertType("day", "number", __assertType__number.bind(void 0, day));
165
- this.assertSupportsCommand(import_Types.TimeCommand, import_Types.TimeCommand.DateReport);
166
- const cc = new TimeCCDateReport({
167
- nodeId: this.endpoint.nodeId,
168
- endpointIndex: this.endpoint.index,
169
- year,
170
- month,
171
- day
172
- });
173
- return this.host.sendCommand(cc, this.commandOptions);
174
- }
175
- async setTimezone(timezone) {
176
- __assertType("timezone", "DSTInfo", __assertType__DSTInfo.bind(void 0, timezone));
177
- this.assertSupportsCommand(import_Types.TimeCommand, import_Types.TimeCommand.TimeOffsetSet);
178
- const cc = new TimeCCTimeOffsetSet({
179
- nodeId: this.endpoint.nodeId,
180
- endpointIndex: this.endpoint.index,
181
- standardOffset: timezone.standardOffset,
182
- dstOffset: timezone.dstOffset,
183
- dstStart: timezone.startDate,
184
- dstEnd: timezone.endDate
185
- });
186
- return this.host.sendCommand(cc, this.commandOptions);
187
- }
188
- async getTimezone() {
189
- this.assertSupportsCommand(import_Types.TimeCommand, import_Types.TimeCommand.TimeOffsetGet);
190
- const cc = new TimeCCTimeOffsetGet({
191
- nodeId: this.endpoint.nodeId,
192
- endpointIndex: this.endpoint.index
193
- });
194
- const response = await this.host.sendCommand(cc, this.commandOptions);
195
- if (response) {
196
- return {
197
- standardOffset: response.standardOffset,
198
- dstOffset: response.dstOffset,
199
- startDate: response.dstStartDate,
200
- endDate: response.dstEndDate
201
- };
155
+ supportsCommand(cmd) {
156
+ switch (cmd) {
157
+ case import_Types.TimeCommand.TimeGet:
158
+ case import_Types.TimeCommand.TimeReport:
159
+ case import_Types.TimeCommand.DateGet:
160
+ case import_Types.TimeCommand.DateReport:
161
+ return this.isSinglecast();
162
+ // "mandatory"
163
+ case import_Types.TimeCommand.TimeOffsetGet:
164
+ case import_Types.TimeCommand.TimeOffsetReport:
165
+ return this.version >= 2 && this.isSinglecast();
166
+ case import_Types.TimeCommand.TimeOffsetSet:
167
+ return this.version >= 2;
168
+ }
169
+ return super.supportsCommand(cmd);
202
170
  }
203
- }
204
- async reportTimezone(timezone) {
205
- __assertType("timezone", "DSTInfo", __assertType__DSTInfo.bind(void 0, timezone));
206
- this.assertSupportsCommand(import_Types.TimeCommand, import_Types.TimeCommand.TimeOffsetReport);
207
- const cc = new TimeCCTimeOffsetReport({
208
- nodeId: this.endpoint.nodeId,
209
- endpointIndex: this.endpoint.index,
210
- standardOffset: timezone.standardOffset,
211
- dstOffset: timezone.dstOffset,
212
- dstStart: timezone.startDate,
213
- dstEnd: timezone.endDate
214
- });
215
- return this.host.sendCommand(cc, this.commandOptions);
216
- }
217
- };
218
- TimeCCAPI = __decorate([
219
- (0, import_CommandClassDecorators.API)(import_core.CommandClasses.Time)
220
- ], TimeCCAPI);
221
- let TimeCC = class TimeCC2 extends import_CommandClass.CommandClass {
222
- async interview(ctx) {
223
- const node = this.getNode(ctx);
224
- const endpoint = this.getEndpoint(ctx);
225
- const api = import_API.CCAPI.create(import_core.CommandClasses.Time, ctx, endpoint).withOptions({
226
- priority: import_core.MessagePriority.NodeQuery
227
- });
228
- ctx.logNode(node.id, {
229
- endpoint: this.endpointIndex,
230
- message: `Interviewing ${this.ccName}...`,
231
- direction: "none"
232
- });
233
- if (api.version >= 2) {
234
- ctx.logNode(node.id, {
235
- endpoint: this.endpointIndex,
236
- message: "setting timezone information...",
237
- direction: "outbound"
171
+ // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
172
+ async getTime() {
173
+ this.assertSupportsCommand(import_Types.TimeCommand, import_Types.TimeCommand.TimeGet);
174
+ const cc = new TimeCCTimeGet({
175
+ nodeId: this.endpoint.nodeId,
176
+ endpointIndex: this.endpoint.index
238
177
  });
239
- const timezone = (0, import_core.getDSTInfo)();
240
- await api.setTimezone(timezone);
241
- }
242
- this.setInterviewComplete(ctx, true);
243
- }
244
- };
245
- TimeCC = __decorate([
246
- (0, import_CommandClassDecorators.commandClass)(import_core.CommandClasses.Time),
247
- (0, import_CommandClassDecorators.implementedVersion)(2)
248
- ], TimeCC);
249
- let TimeCCTimeReport = TimeCCTimeReport_1 = class TimeCCTimeReport2 extends TimeCC {
250
- constructor(options) {
251
- super(options);
252
- this.hour = options.hour;
253
- this.minute = options.minute;
254
- this.second = options.second;
255
- }
256
- static from(raw, ctx) {
257
- (0, import_core.validatePayload)(raw.payload.length >= 3);
258
- const hour = raw.payload[0] & 31;
259
- const minute = raw.payload[1];
260
- const second = raw.payload[2];
261
- (0, import_core.validatePayload)(hour >= 0, hour <= 23, minute >= 0, minute <= 59, second >= 0, second <= 59);
262
- return new TimeCCTimeReport_1({
263
- nodeId: ctx.sourceNodeId,
264
- hour,
265
- minute,
266
- second
267
- });
268
- }
269
- hour;
270
- minute;
271
- second;
272
- serialize(ctx) {
273
- this.payload = import_safe.Bytes.from([
274
- this.hour & 31,
275
- this.minute,
276
- this.second
277
- ]);
278
- return super.serialize(ctx);
279
- }
280
- toLogEntry(ctx) {
281
- return {
282
- ...super.toLogEntry(ctx),
283
- message: {
284
- time: `${(0, import_strings.padStart)(this.hour.toString(), 2, "0")}:${(0, import_strings.padStart)(this.minute.toString(), 2, "0")}:${(0, import_strings.padStart)(this.second.toString(), 2, "0")}`
178
+ const response = await this.host.sendCommand(cc, this.commandOptions);
179
+ if (response) {
180
+ return (0, import_safe2.pick)(response, ["hour", "minute", "second"]);
285
181
  }
286
- };
287
- }
288
- };
289
- TimeCCTimeReport = TimeCCTimeReport_1 = __decorate([
290
- (0, import_CommandClassDecorators.CCCommand)(import_Types.TimeCommand.TimeReport)
291
- ], TimeCCTimeReport);
292
- let TimeCCTimeGet = class TimeCCTimeGet2 extends TimeCC {
293
- };
294
- TimeCCTimeGet = __decorate([
295
- (0, import_CommandClassDecorators.CCCommand)(import_Types.TimeCommand.TimeGet),
296
- (0, import_CommandClassDecorators.expectedCCResponse)(TimeCCTimeReport)
297
- ], TimeCCTimeGet);
298
- let TimeCCDateReport = TimeCCDateReport_1 = class TimeCCDateReport2 extends TimeCC {
299
- constructor(options) {
300
- super(options);
301
- this.year = options.year;
302
- this.month = options.month;
303
- this.day = options.day;
304
- }
305
- static from(raw, ctx) {
306
- (0, import_core.validatePayload)(raw.payload.length >= 4);
307
- const year = raw.payload.readUInt16BE(0);
308
- const month = raw.payload[2];
309
- const day = raw.payload[3];
310
- return new TimeCCDateReport_1({
311
- nodeId: ctx.sourceNodeId,
312
- year,
313
- month,
314
- day
315
- });
316
- }
317
- year;
318
- month;
319
- day;
320
- serialize(ctx) {
321
- this.payload = import_safe.Bytes.from([
322
- // 2 bytes placeholder for year
323
- 0,
324
- 0,
325
- this.month,
326
- this.day
327
- ]);
328
- this.payload.writeUInt16BE(this.year, 0);
329
- return super.serialize(ctx);
330
- }
331
- toLogEntry(ctx) {
332
- return {
333
- ...super.toLogEntry(ctx),
334
- message: {
335
- date: `${(0, import_strings.padStart)(this.year.toString(), 4, "0")}-${(0, import_strings.padStart)(this.month.toString(), 2, "0")}-${(0, import_strings.padStart)(this.day.toString(), 2, "0")}`
182
+ }
183
+ async reportTime(hour, minute, second) {
184
+ __assertType("hour", "number", __assertType__number.bind(void 0, hour));
185
+ __assertType("minute", "number", __assertType__number.bind(void 0, minute));
186
+ __assertType("second", "number", __assertType__number.bind(void 0, second));
187
+ this.assertSupportsCommand(import_Types.TimeCommand, import_Types.TimeCommand.TimeReport);
188
+ const cc = new TimeCCTimeReport({
189
+ nodeId: this.endpoint.nodeId,
190
+ endpointIndex: this.endpoint.index,
191
+ hour,
192
+ minute,
193
+ second
194
+ });
195
+ return this.host.sendCommand(cc, this.commandOptions);
196
+ }
197
+ // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
198
+ async getDate() {
199
+ this.assertSupportsCommand(import_Types.TimeCommand, import_Types.TimeCommand.DateGet);
200
+ const cc = new TimeCCDateGet({
201
+ nodeId: this.endpoint.nodeId,
202
+ endpointIndex: this.endpoint.index
203
+ });
204
+ const response = await this.host.sendCommand(cc, this.commandOptions);
205
+ if (response) {
206
+ return (0, import_safe2.pick)(response, ["day", "month", "year"]);
336
207
  }
337
- };
338
- }
339
- };
340
- TimeCCDateReport = TimeCCDateReport_1 = __decorate([
341
- (0, import_CommandClassDecorators.CCCommand)(import_Types.TimeCommand.DateReport)
342
- ], TimeCCDateReport);
343
- let TimeCCDateGet = class TimeCCDateGet2 extends TimeCC {
344
- };
345
- TimeCCDateGet = __decorate([
346
- (0, import_CommandClassDecorators.CCCommand)(import_Types.TimeCommand.DateGet),
347
- (0, import_CommandClassDecorators.expectedCCResponse)(TimeCCDateReport)
348
- ], TimeCCDateGet);
349
- let TimeCCTimeOffsetSet = class TimeCCTimeOffsetSet2 extends TimeCC {
350
- constructor(options) {
351
- super(options);
352
- this.standardOffset = options.standardOffset;
353
- this.dstOffset = options.dstOffset;
354
- this.dstStartDate = options.dstStart;
355
- this.dstEndDate = options.dstEnd;
356
- }
357
- static from(_raw, _ctx) {
358
- throw new import_core.ZWaveError(`${this.name}: deserialization not implemented`, import_core.ZWaveErrorCodes.Deserialization_NotImplemented);
359
- }
360
- standardOffset;
361
- dstOffset;
362
- dstStartDate;
363
- dstEndDate;
364
- serialize(ctx) {
365
- this.payload = import_safe.Bytes.concat([
366
- (0, import_serializers.encodeTimezone)({
367
- standardOffset: this.standardOffset,
368
- dstOffset: this.dstOffset
369
- }),
370
- import_safe.Bytes.from([
371
- this.dstStartDate.getUTCMonth() + 1,
372
- this.dstStartDate.getUTCDate(),
373
- this.dstStartDate.getUTCHours(),
374
- this.dstEndDate.getUTCMonth() + 1,
375
- this.dstEndDate.getUTCDate(),
376
- this.dstEndDate.getUTCHours()
377
- ])
378
- ]);
379
- return super.serialize(ctx);
380
- }
381
- toLogEntry(ctx) {
382
- return {
383
- ...super.toLogEntry(ctx),
384
- message: {
385
- "standard time offset": `${this.standardOffset} minutes`,
386
- "DST offset": `${this.dstOffset} minutes`,
387
- "DST start date": (0, import_core.formatDate)(this.dstStartDate, "YYYY-MM-DD"),
388
- "DST end date": (0, import_core.formatDate)(this.dstEndDate, "YYYY-MM-DD")
208
+ }
209
+ async reportDate(year, month, day) {
210
+ __assertType("year", "number", __assertType__number.bind(void 0, year));
211
+ __assertType("month", "number", __assertType__number.bind(void 0, month));
212
+ __assertType("day", "number", __assertType__number.bind(void 0, day));
213
+ this.assertSupportsCommand(import_Types.TimeCommand, import_Types.TimeCommand.DateReport);
214
+ const cc = new TimeCCDateReport({
215
+ nodeId: this.endpoint.nodeId,
216
+ endpointIndex: this.endpoint.index,
217
+ year,
218
+ month,
219
+ day
220
+ });
221
+ return this.host.sendCommand(cc, this.commandOptions);
222
+ }
223
+ async setTimezone(timezone) {
224
+ __assertType("timezone", "DSTInfo", __assertType__DSTInfo.bind(void 0, timezone));
225
+ this.assertSupportsCommand(import_Types.TimeCommand, import_Types.TimeCommand.TimeOffsetSet);
226
+ const cc = new TimeCCTimeOffsetSet({
227
+ nodeId: this.endpoint.nodeId,
228
+ endpointIndex: this.endpoint.index,
229
+ standardOffset: timezone.standardOffset,
230
+ dstOffset: timezone.dstOffset,
231
+ dstStart: timezone.startDate,
232
+ dstEnd: timezone.endDate
233
+ });
234
+ return this.host.sendCommand(cc, this.commandOptions);
235
+ }
236
+ async getTimezone() {
237
+ this.assertSupportsCommand(import_Types.TimeCommand, import_Types.TimeCommand.TimeOffsetGet);
238
+ const cc = new TimeCCTimeOffsetGet({
239
+ nodeId: this.endpoint.nodeId,
240
+ endpointIndex: this.endpoint.index
241
+ });
242
+ const response = await this.host.sendCommand(cc, this.commandOptions);
243
+ if (response) {
244
+ return {
245
+ standardOffset: response.standardOffset,
246
+ dstOffset: response.dstOffset,
247
+ startDate: response.dstStartDate,
248
+ endDate: response.dstEndDate
249
+ };
389
250
  }
390
- };
391
- }
392
- };
393
- TimeCCTimeOffsetSet = __decorate([
394
- (0, import_CommandClassDecorators.CCCommand)(import_Types.TimeCommand.TimeOffsetSet),
395
- (0, import_CommandClassDecorators.useSupervision)()
396
- ], TimeCCTimeOffsetSet);
397
- let TimeCCTimeOffsetReport = TimeCCTimeOffsetReport_1 = class TimeCCTimeOffsetReport2 extends TimeCC {
398
- constructor(options) {
399
- super(options);
400
- this.standardOffset = options.standardOffset;
401
- this.dstOffset = options.dstOffset;
402
- this.dstStartDate = options.dstStart;
403
- this.dstEndDate = options.dstEnd;
404
- }
405
- static from(raw, ctx) {
406
- (0, import_core.validatePayload)(raw.payload.length >= 9);
407
- const { standardOffset, dstOffset } = (0, import_serializers.parseTimezone)(raw.payload);
408
- const currentYear = (/* @__PURE__ */ new Date()).getUTCFullYear();
409
- const dstStartDate = new Date(Date.UTC(currentYear, raw.payload[3] - 1, raw.payload[4], raw.payload[5]));
410
- const dstEndDate = new Date(Date.UTC(currentYear, raw.payload[6] - 1, raw.payload[7], raw.payload[8]));
411
- return new TimeCCTimeOffsetReport_1({
412
- nodeId: ctx.sourceNodeId,
413
- standardOffset,
414
- dstOffset,
415
- dstStart: dstStartDate,
416
- dstEnd: dstEndDate
417
- });
418
- }
419
- standardOffset;
420
- dstOffset;
421
- dstStartDate;
422
- dstEndDate;
423
- serialize(ctx) {
424
- this.payload = import_safe.Bytes.concat([
425
- (0, import_serializers.encodeTimezone)({
426
- standardOffset: this.standardOffset,
427
- dstOffset: this.dstOffset
428
- }),
429
- import_safe.Bytes.from([
430
- this.dstStartDate.getUTCMonth() + 1,
431
- this.dstStartDate.getUTCDate(),
432
- this.dstStartDate.getUTCHours(),
433
- this.dstEndDate.getUTCMonth() + 1,
434
- this.dstEndDate.getUTCDate(),
435
- this.dstEndDate.getUTCHours()
436
- ])
437
- ]);
438
- return super.serialize(ctx);
439
- }
440
- toLogEntry(ctx) {
441
- return {
442
- ...super.toLogEntry(ctx),
443
- message: {
444
- "standard time offset": `${this.standardOffset} minutes`,
445
- "DST offset": `${this.dstOffset} minutes`,
446
- "DST start date": (0, import_core.formatDate)(this.dstStartDate, "YYYY-MM-DD"),
447
- "DST end date": (0, import_core.formatDate)(this.dstEndDate, "YYYY-MM-DD")
251
+ }
252
+ async reportTimezone(timezone) {
253
+ __assertType("timezone", "DSTInfo", __assertType__DSTInfo.bind(void 0, timezone));
254
+ this.assertSupportsCommand(import_Types.TimeCommand, import_Types.TimeCommand.TimeOffsetReport);
255
+ const cc = new TimeCCTimeOffsetReport({
256
+ nodeId: this.endpoint.nodeId,
257
+ endpointIndex: this.endpoint.index,
258
+ standardOffset: timezone.standardOffset,
259
+ dstOffset: timezone.dstOffset,
260
+ dstStart: timezone.startDate,
261
+ dstEnd: timezone.endDate
262
+ });
263
+ return this.host.sendCommand(cc, this.commandOptions);
264
+ }
265
+ };
266
+ return TimeCCAPI2 = _classThis;
267
+ })();
268
+ let TimeCC = (() => {
269
+ let _classDecorators = [(0, import_CommandClassDecorators.commandClass)(import_core.CommandClasses.Time), (0, import_CommandClassDecorators.implementedVersion)(2)];
270
+ let _classDescriptor;
271
+ let _classExtraInitializers = [];
272
+ let _classThis;
273
+ let _classSuper = import_CommandClass.CommandClass;
274
+ var TimeCC2 = class extends _classSuper {
275
+ static {
276
+ _classThis = this;
277
+ }
278
+ static {
279
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
280
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
281
+ TimeCC2 = _classThis = _classDescriptor.value;
282
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
283
+ __runInitializers(_classThis, _classExtraInitializers);
284
+ }
285
+ async interview(ctx) {
286
+ const node = this.getNode(ctx);
287
+ const endpoint = this.getEndpoint(ctx);
288
+ const api = import_API.CCAPI.create(import_core.CommandClasses.Time, ctx, endpoint).withOptions({
289
+ priority: import_core.MessagePriority.NodeQuery
290
+ });
291
+ ctx.logNode(node.id, {
292
+ endpoint: this.endpointIndex,
293
+ message: `Interviewing ${this.ccName}...`,
294
+ direction: "none"
295
+ });
296
+ if (api.version >= 2) {
297
+ ctx.logNode(node.id, {
298
+ endpoint: this.endpointIndex,
299
+ message: "setting timezone information...",
300
+ direction: "outbound"
301
+ });
302
+ const timezone = (0, import_core.getDSTInfo)();
303
+ await api.setTimezone(timezone);
448
304
  }
449
- };
450
- }
451
- };
452
- TimeCCTimeOffsetReport = TimeCCTimeOffsetReport_1 = __decorate([
453
- (0, import_CommandClassDecorators.CCCommand)(import_Types.TimeCommand.TimeOffsetReport)
454
- ], TimeCCTimeOffsetReport);
455
- let TimeCCTimeOffsetGet = class TimeCCTimeOffsetGet2 extends TimeCC {
456
- };
457
- TimeCCTimeOffsetGet = __decorate([
458
- (0, import_CommandClassDecorators.CCCommand)(import_Types.TimeCommand.TimeOffsetGet),
459
- (0, import_CommandClassDecorators.expectedCCResponse)(TimeCCTimeOffsetReport)
460
- ], TimeCCTimeOffsetGet);
305
+ this.setInterviewComplete(ctx, true);
306
+ }
307
+ };
308
+ return TimeCC2 = _classThis;
309
+ })();
310
+ let TimeCCTimeReport = (() => {
311
+ let _classDecorators = [(0, import_CommandClassDecorators.CCCommand)(import_Types.TimeCommand.TimeReport)];
312
+ let _classDescriptor;
313
+ let _classExtraInitializers = [];
314
+ let _classThis;
315
+ let _classSuper = TimeCC;
316
+ var TimeCCTimeReport2 = class extends _classSuper {
317
+ static {
318
+ _classThis = this;
319
+ }
320
+ static {
321
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
322
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
323
+ TimeCCTimeReport2 = _classThis = _classDescriptor.value;
324
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
325
+ __runInitializers(_classThis, _classExtraInitializers);
326
+ }
327
+ constructor(options) {
328
+ super(options);
329
+ this.hour = options.hour;
330
+ this.minute = options.minute;
331
+ this.second = options.second;
332
+ }
333
+ static from(raw, ctx) {
334
+ (0, import_core.validatePayload)(raw.payload.length >= 3);
335
+ const hour = raw.payload[0] & 31;
336
+ const minute = raw.payload[1];
337
+ const second = raw.payload[2];
338
+ (0, import_core.validatePayload)(hour >= 0, hour <= 23, minute >= 0, minute <= 59, second >= 0, second <= 59);
339
+ return new this({
340
+ nodeId: ctx.sourceNodeId,
341
+ hour,
342
+ minute,
343
+ second
344
+ });
345
+ }
346
+ hour;
347
+ minute;
348
+ second;
349
+ serialize(ctx) {
350
+ this.payload = import_safe.Bytes.from([
351
+ this.hour & 31,
352
+ this.minute,
353
+ this.second
354
+ ]);
355
+ return super.serialize(ctx);
356
+ }
357
+ toLogEntry(ctx) {
358
+ return {
359
+ ...super.toLogEntry(ctx),
360
+ message: {
361
+ time: `${(0, import_strings.padStart)(this.hour.toString(), 2, "0")}:${(0, import_strings.padStart)(this.minute.toString(), 2, "0")}:${(0, import_strings.padStart)(this.second.toString(), 2, "0")}`
362
+ }
363
+ };
364
+ }
365
+ };
366
+ return TimeCCTimeReport2 = _classThis;
367
+ })();
368
+ let TimeCCTimeGet = (() => {
369
+ let _classDecorators = [(0, import_CommandClassDecorators.CCCommand)(import_Types.TimeCommand.TimeGet), (0, import_CommandClassDecorators.expectedCCResponse)(TimeCCTimeReport)];
370
+ let _classDescriptor;
371
+ let _classExtraInitializers = [];
372
+ let _classThis;
373
+ let _classSuper = TimeCC;
374
+ var TimeCCTimeGet2 = class extends _classSuper {
375
+ static {
376
+ _classThis = this;
377
+ }
378
+ static {
379
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
380
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
381
+ TimeCCTimeGet2 = _classThis = _classDescriptor.value;
382
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
383
+ __runInitializers(_classThis, _classExtraInitializers);
384
+ }
385
+ };
386
+ return TimeCCTimeGet2 = _classThis;
387
+ })();
388
+ let TimeCCDateReport = (() => {
389
+ let _classDecorators = [(0, import_CommandClassDecorators.CCCommand)(import_Types.TimeCommand.DateReport)];
390
+ let _classDescriptor;
391
+ let _classExtraInitializers = [];
392
+ let _classThis;
393
+ let _classSuper = TimeCC;
394
+ var TimeCCDateReport2 = class extends _classSuper {
395
+ static {
396
+ _classThis = this;
397
+ }
398
+ static {
399
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
400
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
401
+ TimeCCDateReport2 = _classThis = _classDescriptor.value;
402
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
403
+ __runInitializers(_classThis, _classExtraInitializers);
404
+ }
405
+ constructor(options) {
406
+ super(options);
407
+ this.year = options.year;
408
+ this.month = options.month;
409
+ this.day = options.day;
410
+ }
411
+ static from(raw, ctx) {
412
+ (0, import_core.validatePayload)(raw.payload.length >= 4);
413
+ const year = raw.payload.readUInt16BE(0);
414
+ const month = raw.payload[2];
415
+ const day = raw.payload[3];
416
+ return new this({
417
+ nodeId: ctx.sourceNodeId,
418
+ year,
419
+ month,
420
+ day
421
+ });
422
+ }
423
+ year;
424
+ month;
425
+ day;
426
+ serialize(ctx) {
427
+ this.payload = import_safe.Bytes.from([
428
+ // 2 bytes placeholder for year
429
+ 0,
430
+ 0,
431
+ this.month,
432
+ this.day
433
+ ]);
434
+ this.payload.writeUInt16BE(this.year, 0);
435
+ return super.serialize(ctx);
436
+ }
437
+ toLogEntry(ctx) {
438
+ return {
439
+ ...super.toLogEntry(ctx),
440
+ message: {
441
+ date: `${(0, import_strings.padStart)(this.year.toString(), 4, "0")}-${(0, import_strings.padStart)(this.month.toString(), 2, "0")}-${(0, import_strings.padStart)(this.day.toString(), 2, "0")}`
442
+ }
443
+ };
444
+ }
445
+ };
446
+ return TimeCCDateReport2 = _classThis;
447
+ })();
448
+ let TimeCCDateGet = (() => {
449
+ let _classDecorators = [(0, import_CommandClassDecorators.CCCommand)(import_Types.TimeCommand.DateGet), (0, import_CommandClassDecorators.expectedCCResponse)(TimeCCDateReport)];
450
+ let _classDescriptor;
451
+ let _classExtraInitializers = [];
452
+ let _classThis;
453
+ let _classSuper = TimeCC;
454
+ var TimeCCDateGet2 = class extends _classSuper {
455
+ static {
456
+ _classThis = this;
457
+ }
458
+ static {
459
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
460
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
461
+ TimeCCDateGet2 = _classThis = _classDescriptor.value;
462
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
463
+ __runInitializers(_classThis, _classExtraInitializers);
464
+ }
465
+ };
466
+ return TimeCCDateGet2 = _classThis;
467
+ })();
468
+ let TimeCCTimeOffsetSet = (() => {
469
+ let _classDecorators = [(0, import_CommandClassDecorators.CCCommand)(import_Types.TimeCommand.TimeOffsetSet), (0, import_CommandClassDecorators.useSupervision)()];
470
+ let _classDescriptor;
471
+ let _classExtraInitializers = [];
472
+ let _classThis;
473
+ let _classSuper = TimeCC;
474
+ var TimeCCTimeOffsetSet2 = class extends _classSuper {
475
+ static {
476
+ _classThis = this;
477
+ }
478
+ static {
479
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
480
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
481
+ TimeCCTimeOffsetSet2 = _classThis = _classDescriptor.value;
482
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
483
+ __runInitializers(_classThis, _classExtraInitializers);
484
+ }
485
+ constructor(options) {
486
+ super(options);
487
+ this.standardOffset = options.standardOffset;
488
+ this.dstOffset = options.dstOffset;
489
+ this.dstStartDate = options.dstStart;
490
+ this.dstEndDate = options.dstEnd;
491
+ }
492
+ static from(_raw, _ctx) {
493
+ throw new import_core.ZWaveError(`${this.name}: deserialization not implemented`, import_core.ZWaveErrorCodes.Deserialization_NotImplemented);
494
+ }
495
+ standardOffset;
496
+ dstOffset;
497
+ dstStartDate;
498
+ dstEndDate;
499
+ serialize(ctx) {
500
+ this.payload = import_safe.Bytes.concat([
501
+ (0, import_serializers.encodeTimezone)({
502
+ standardOffset: this.standardOffset,
503
+ dstOffset: this.dstOffset
504
+ }),
505
+ import_safe.Bytes.from([
506
+ this.dstStartDate.getUTCMonth() + 1,
507
+ this.dstStartDate.getUTCDate(),
508
+ this.dstStartDate.getUTCHours(),
509
+ this.dstEndDate.getUTCMonth() + 1,
510
+ this.dstEndDate.getUTCDate(),
511
+ this.dstEndDate.getUTCHours()
512
+ ])
513
+ ]);
514
+ return super.serialize(ctx);
515
+ }
516
+ toLogEntry(ctx) {
517
+ return {
518
+ ...super.toLogEntry(ctx),
519
+ message: {
520
+ "standard time offset": `${this.standardOffset} minutes`,
521
+ "DST offset": `${this.dstOffset} minutes`,
522
+ "DST start date": (0, import_core.formatDate)(this.dstStartDate, "YYYY-MM-DD"),
523
+ "DST end date": (0, import_core.formatDate)(this.dstEndDate, "YYYY-MM-DD")
524
+ }
525
+ };
526
+ }
527
+ };
528
+ return TimeCCTimeOffsetSet2 = _classThis;
529
+ })();
530
+ let TimeCCTimeOffsetReport = (() => {
531
+ let _classDecorators = [(0, import_CommandClassDecorators.CCCommand)(import_Types.TimeCommand.TimeOffsetReport)];
532
+ let _classDescriptor;
533
+ let _classExtraInitializers = [];
534
+ let _classThis;
535
+ let _classSuper = TimeCC;
536
+ var TimeCCTimeOffsetReport2 = class extends _classSuper {
537
+ static {
538
+ _classThis = this;
539
+ }
540
+ static {
541
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
542
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
543
+ TimeCCTimeOffsetReport2 = _classThis = _classDescriptor.value;
544
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
545
+ __runInitializers(_classThis, _classExtraInitializers);
546
+ }
547
+ constructor(options) {
548
+ super(options);
549
+ this.standardOffset = options.standardOffset;
550
+ this.dstOffset = options.dstOffset;
551
+ this.dstStartDate = options.dstStart;
552
+ this.dstEndDate = options.dstEnd;
553
+ }
554
+ static from(raw, ctx) {
555
+ (0, import_core.validatePayload)(raw.payload.length >= 9);
556
+ const { standardOffset, dstOffset } = (0, import_serializers.parseTimezone)(raw.payload);
557
+ const currentYear = (/* @__PURE__ */ new Date()).getUTCFullYear();
558
+ const dstStartDate = new Date(Date.UTC(currentYear, raw.payload[3] - 1, raw.payload[4], raw.payload[5]));
559
+ const dstEndDate = new Date(Date.UTC(currentYear, raw.payload[6] - 1, raw.payload[7], raw.payload[8]));
560
+ return new this({
561
+ nodeId: ctx.sourceNodeId,
562
+ standardOffset,
563
+ dstOffset,
564
+ dstStart: dstStartDate,
565
+ dstEnd: dstEndDate
566
+ });
567
+ }
568
+ standardOffset;
569
+ dstOffset;
570
+ dstStartDate;
571
+ dstEndDate;
572
+ serialize(ctx) {
573
+ this.payload = import_safe.Bytes.concat([
574
+ (0, import_serializers.encodeTimezone)({
575
+ standardOffset: this.standardOffset,
576
+ dstOffset: this.dstOffset
577
+ }),
578
+ import_safe.Bytes.from([
579
+ this.dstStartDate.getUTCMonth() + 1,
580
+ this.dstStartDate.getUTCDate(),
581
+ this.dstStartDate.getUTCHours(),
582
+ this.dstEndDate.getUTCMonth() + 1,
583
+ this.dstEndDate.getUTCDate(),
584
+ this.dstEndDate.getUTCHours()
585
+ ])
586
+ ]);
587
+ return super.serialize(ctx);
588
+ }
589
+ toLogEntry(ctx) {
590
+ return {
591
+ ...super.toLogEntry(ctx),
592
+ message: {
593
+ "standard time offset": `${this.standardOffset} minutes`,
594
+ "DST offset": `${this.dstOffset} minutes`,
595
+ "DST start date": (0, import_core.formatDate)(this.dstStartDate, "YYYY-MM-DD"),
596
+ "DST end date": (0, import_core.formatDate)(this.dstEndDate, "YYYY-MM-DD")
597
+ }
598
+ };
599
+ }
600
+ };
601
+ return TimeCCTimeOffsetReport2 = _classThis;
602
+ })();
603
+ let TimeCCTimeOffsetGet = (() => {
604
+ let _classDecorators = [(0, import_CommandClassDecorators.CCCommand)(import_Types.TimeCommand.TimeOffsetGet), (0, import_CommandClassDecorators.expectedCCResponse)(TimeCCTimeOffsetReport)];
605
+ let _classDescriptor;
606
+ let _classExtraInitializers = [];
607
+ let _classThis;
608
+ let _classSuper = TimeCC;
609
+ var TimeCCTimeOffsetGet2 = class extends _classSuper {
610
+ static {
611
+ _classThis = this;
612
+ }
613
+ static {
614
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
615
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
616
+ TimeCCTimeOffsetGet2 = _classThis = _classDescriptor.value;
617
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
618
+ __runInitializers(_classThis, _classExtraInitializers);
619
+ }
620
+ };
621
+ return TimeCCTimeOffsetGet2 = _classThis;
622
+ })();
461
623
  // Annotate the CommonJS export names for ESM import in node:
462
624
  0 && (module.exports = {
463
625
  TimeCC,