@zwave-js/cc 9.3.1-0-pr-4662-79458fb

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 (297) hide show
  1. package/build/cc/AlarmSensorCC.d.ts +54 -0
  2. package/build/cc/AlarmSensorCC.d.ts.map +1 -0
  3. package/build/cc/AlarmSensorCC.js +378 -0
  4. package/build/cc/AlarmSensorCC.js.map +1 -0
  5. package/build/cc/AssociationCC.d.ts +123 -0
  6. package/build/cc/AssociationCC.d.ts.map +1 -0
  7. package/build/cc/AssociationCC.js +615 -0
  8. package/build/cc/AssociationCC.js.map +1 -0
  9. package/build/cc/AssociationGroupInfoCC.d.ts +97 -0
  10. package/build/cc/AssociationGroupInfoCC.d.ts.map +1 -0
  11. package/build/cc/AssociationGroupInfoCC.js +530 -0
  12. package/build/cc/AssociationGroupInfoCC.js.map +1 -0
  13. package/build/cc/BarrierOperatorCC.d.ts +75 -0
  14. package/build/cc/BarrierOperatorCC.d.ts.map +1 -0
  15. package/build/cc/BarrierOperatorCC.js +492 -0
  16. package/build/cc/BarrierOperatorCC.js.map +1 -0
  17. package/build/cc/BasicCC.d.ts +51 -0
  18. package/build/cc/BasicCC.d.ts.map +1 -0
  19. package/build/cc/BasicCC.js +344 -0
  20. package/build/cc/BasicCC.js.map +1 -0
  21. package/build/cc/BatteryCC.d.ts +56 -0
  22. package/build/cc/BatteryCC.d.ts.map +1 -0
  23. package/build/cc/BatteryCC.js +417 -0
  24. package/build/cc/BatteryCC.js.map +1 -0
  25. package/build/cc/BinarySensorCC.d.ts +52 -0
  26. package/build/cc/BinarySensorCC.d.ts.map +1 -0
  27. package/build/cc/BinarySensorCC.js +321 -0
  28. package/build/cc/BinarySensorCC.js.map +1 -0
  29. package/build/cc/BinarySwitchCC.d.ts +55 -0
  30. package/build/cc/BinarySwitchCC.d.ts.map +1 -0
  31. package/build/cc/BinarySwitchCC.js +327 -0
  32. package/build/cc/BinarySwitchCC.js.map +1 -0
  33. package/build/cc/CRC16CC.d.ts +28 -0
  34. package/build/cc/CRC16CC.d.ts.map +1 -0
  35. package/build/cc/CRC16CC.js +109 -0
  36. package/build/cc/CRC16CC.js.map +1 -0
  37. package/build/cc/CentralSceneCC.d.ts +69 -0
  38. package/build/cc/CentralSceneCC.d.ts.map +1 -0
  39. package/build/cc/CentralSceneCC.js +443 -0
  40. package/build/cc/CentralSceneCC.js.map +1 -0
  41. package/build/cc/ClimateControlScheduleCC.d.ts +78 -0
  42. package/build/cc/ClimateControlScheduleCC.d.ts.map +1 -0
  43. package/build/cc/ClimateControlScheduleCC.js +417 -0
  44. package/build/cc/ClimateControlScheduleCC.js.map +1 -0
  45. package/build/cc/ClockCC.d.ts +40 -0
  46. package/build/cc/ClockCC.d.ts.map +1 -0
  47. package/build/cc/ClockCC.js +185 -0
  48. package/build/cc/ClockCC.js.map +1 -0
  49. package/build/cc/ColorSwitchCC.d.ts +98 -0
  50. package/build/cc/ColorSwitchCC.d.ts.map +1 -0
  51. package/build/cc/ColorSwitchCC.js +1045 -0
  52. package/build/cc/ColorSwitchCC.js.map +1 -0
  53. package/build/cc/ConfigurationCC.d.ts +315 -0
  54. package/build/cc/ConfigurationCC.d.ts.map +1 -0
  55. package/build/cc/ConfigurationCC.js +2257 -0
  56. package/build/cc/ConfigurationCC.js.map +1 -0
  57. package/build/cc/DeviceResetLocallyCC.d.ts +9 -0
  58. package/build/cc/DeviceResetLocallyCC.d.ts.map +1 -0
  59. package/build/cc/DeviceResetLocallyCC.js +28 -0
  60. package/build/cc/DeviceResetLocallyCC.js.map +1 -0
  61. package/build/cc/DoorLockCC.d.ts +116 -0
  62. package/build/cc/DoorLockCC.d.ts.map +1 -0
  63. package/build/cc/DoorLockCC.js +1112 -0
  64. package/build/cc/DoorLockCC.js.map +1 -0
  65. package/build/cc/DoorLockLoggingCC.d.ts +41 -0
  66. package/build/cc/DoorLockLoggingCC.d.ts.map +1 -0
  67. package/build/cc/DoorLockLoggingCC.js +288 -0
  68. package/build/cc/DoorLockLoggingCC.js.map +1 -0
  69. package/build/cc/EntryControlCC.d.ts +71 -0
  70. package/build/cc/EntryControlCC.d.ts.map +1 -0
  71. package/build/cc/EntryControlCC.js +492 -0
  72. package/build/cc/EntryControlCC.js.map +1 -0
  73. package/build/cc/FirmwareUpdateMetaDataCC.d.ts +148 -0
  74. package/build/cc/FirmwareUpdateMetaDataCC.d.ts.map +1 -0
  75. package/build/cc/FirmwareUpdateMetaDataCC.js +727 -0
  76. package/build/cc/FirmwareUpdateMetaDataCC.js.map +1 -0
  77. package/build/cc/HailCC.d.ts +6 -0
  78. package/build/cc/HailCC.d.ts.map +1 -0
  79. package/build/cc/HailCC.js +23 -0
  80. package/build/cc/HailCC.js.map +1 -0
  81. package/build/cc/HumidityControlModeCC.d.ts +47 -0
  82. package/build/cc/HumidityControlModeCC.d.ts.map +1 -0
  83. package/build/cc/HumidityControlModeCC.js +288 -0
  84. package/build/cc/HumidityControlModeCC.js.map +1 -0
  85. package/build/cc/HumidityControlOperatingStateCC.d.ts +24 -0
  86. package/build/cc/HumidityControlOperatingStateCC.d.ts.map +1 -0
  87. package/build/cc/HumidityControlOperatingStateCC.js +129 -0
  88. package/build/cc/HumidityControlOperatingStateCC.js.map +1 -0
  89. package/build/cc/HumidityControlSetpointCC.d.ts +103 -0
  90. package/build/cc/HumidityControlSetpointCC.d.ts.map +1 -0
  91. package/build/cc/HumidityControlSetpointCC.js +626 -0
  92. package/build/cc/HumidityControlSetpointCC.js.map +1 -0
  93. package/build/cc/IndicatorCC.d.ts +88 -0
  94. package/build/cc/IndicatorCC.d.ts.map +1 -0
  95. package/build/cc/IndicatorCC.js +758 -0
  96. package/build/cc/IndicatorCC.js.map +1 -0
  97. package/build/cc/IrrigationCC.d.ts +278 -0
  98. package/build/cc/IrrigationCC.d.ts.map +1 -0
  99. package/build/cc/IrrigationCC.js +2062 -0
  100. package/build/cc/IrrigationCC.js.map +1 -0
  101. package/build/cc/LanguageCC.d.ts +41 -0
  102. package/build/cc/LanguageCC.d.ts.map +1 -0
  103. package/build/cc/LanguageCC.js +220 -0
  104. package/build/cc/LanguageCC.js.map +1 -0
  105. package/build/cc/LockCC.d.ts +41 -0
  106. package/build/cc/LockCC.d.ts.map +1 -0
  107. package/build/cc/LockCC.js +185 -0
  108. package/build/cc/LockCC.js.map +1 -0
  109. package/build/cc/ManufacturerProprietaryCC.d.ts +31 -0
  110. package/build/cc/ManufacturerProprietaryCC.d.ts.map +1 -0
  111. package/build/cc/ManufacturerProprietaryCC.js +275 -0
  112. package/build/cc/ManufacturerProprietaryCC.js.map +1 -0
  113. package/build/cc/ManufacturerSpecificCC.d.ts +59 -0
  114. package/build/cc/ManufacturerSpecificCC.d.ts.map +1 -0
  115. package/build/cc/ManufacturerSpecificCC.js +285 -0
  116. package/build/cc/ManufacturerSpecificCC.js.map +1 -0
  117. package/build/cc/MeterCC.d.ts +100 -0
  118. package/build/cc/MeterCC.d.ts.map +1 -0
  119. package/build/cc/MeterCC.js +820 -0
  120. package/build/cc/MeterCC.js.map +1 -0
  121. package/build/cc/MultiChannelAssociationCC.d.ts +127 -0
  122. package/build/cc/MultiChannelAssociationCC.d.ts.map +1 -0
  123. package/build/cc/MultiChannelAssociationCC.js +883 -0
  124. package/build/cc/MultiChannelAssociationCC.js.map +1 -0
  125. package/build/cc/MultiChannelCC.d.ts +164 -0
  126. package/build/cc/MultiChannelCC.d.ts.map +1 -0
  127. package/build/cc/MultiChannelCC.js +1004 -0
  128. package/build/cc/MultiChannelCC.js.map +1 -0
  129. package/build/cc/MultiCommandCC.d.ts +28 -0
  130. package/build/cc/MultiCommandCC.d.ts.map +1 -0
  131. package/build/cc/MultiCommandCC.js +137 -0
  132. package/build/cc/MultiCommandCC.js.map +1 -0
  133. package/build/cc/MultilevelSensorCC.d.ts +83 -0
  134. package/build/cc/MultilevelSensorCC.d.ts.map +1 -0
  135. package/build/cc/MultilevelSensorCC.js +633 -0
  136. package/build/cc/MultilevelSensorCC.js.map +1 -0
  137. package/build/cc/MultilevelSwitchCC.d.ts +86 -0
  138. package/build/cc/MultilevelSwitchCC.d.ts.map +1 -0
  139. package/build/cc/MultilevelSwitchCC.js +774 -0
  140. package/build/cc/MultilevelSwitchCC.js.map +1 -0
  141. package/build/cc/NoOperationCC.d.ts +17 -0
  142. package/build/cc/NoOperationCC.d.ts.map +1 -0
  143. package/build/cc/NoOperationCC.js +50 -0
  144. package/build/cc/NoOperationCC.js.map +1 -0
  145. package/build/cc/NodeNamingCC.d.ts +57 -0
  146. package/build/cc/NodeNamingCC.d.ts.map +1 -0
  147. package/build/cc/NodeNamingCC.js +313 -0
  148. package/build/cc/NodeNamingCC.js.map +1 -0
  149. package/build/cc/NotificationCC.d.ts +127 -0
  150. package/build/cc/NotificationCC.d.ts.map +1 -0
  151. package/build/cc/NotificationCC.js +1193 -0
  152. package/build/cc/NotificationCC.js.map +1 -0
  153. package/build/cc/PowerlevelCC.d.ts +63 -0
  154. package/build/cc/PowerlevelCC.d.ts.map +1 -0
  155. package/build/cc/PowerlevelCC.js +262 -0
  156. package/build/cc/PowerlevelCC.js.map +1 -0
  157. package/build/cc/ProtectionCC.d.ts +94 -0
  158. package/build/cc/ProtectionCC.d.ts.map +1 -0
  159. package/build/cc/ProtectionCC.js +630 -0
  160. package/build/cc/ProtectionCC.js.map +1 -0
  161. package/build/cc/SceneActivationCC.d.ts +34 -0
  162. package/build/cc/SceneActivationCC.d.ts.map +1 -0
  163. package/build/cc/SceneActivationCC.js +170 -0
  164. package/build/cc/SceneActivationCC.js.map +1 -0
  165. package/build/cc/SceneActuatorConfigurationCC.d.ts +52 -0
  166. package/build/cc/SceneActuatorConfigurationCC.d.ts.map +1 -0
  167. package/build/cc/SceneActuatorConfigurationCC.js +368 -0
  168. package/build/cc/SceneActuatorConfigurationCC.js.map +1 -0
  169. package/build/cc/SceneControllerConfigurationCC.d.ts +61 -0
  170. package/build/cc/SceneControllerConfigurationCC.d.ts.map +1 -0
  171. package/build/cc/SceneControllerConfigurationCC.js +444 -0
  172. package/build/cc/SceneControllerConfigurationCC.js.map +1 -0
  173. package/build/cc/Security2CC.d.ts +213 -0
  174. package/build/cc/Security2CC.d.ts.map +1 -0
  175. package/build/cc/Security2CC.js +1124 -0
  176. package/build/cc/Security2CC.js.map +1 -0
  177. package/build/cc/SecurityCC.d.ts +109 -0
  178. package/build/cc/SecurityCC.d.ts.map +1 -0
  179. package/build/cc/SecurityCC.js +609 -0
  180. package/build/cc/SecurityCC.js.map +1 -0
  181. package/build/cc/SoundSwitchCC.d.ts +87 -0
  182. package/build/cc/SoundSwitchCC.d.ts.map +1 -0
  183. package/build/cc/SoundSwitchCC.js +548 -0
  184. package/build/cc/SoundSwitchCC.js.map +1 -0
  185. package/build/cc/SupervisionCC.d.ts +63 -0
  186. package/build/cc/SupervisionCC.d.ts.map +1 -0
  187. package/build/cc/SupervisionCC.js +239 -0
  188. package/build/cc/SupervisionCC.js.map +1 -0
  189. package/build/cc/ThermostatFanModeCC.d.ts +53 -0
  190. package/build/cc/ThermostatFanModeCC.d.ts.map +1 -0
  191. package/build/cc/ThermostatFanModeCC.js +359 -0
  192. package/build/cc/ThermostatFanModeCC.js.map +1 -0
  193. package/build/cc/ThermostatFanStateCC.d.ts +24 -0
  194. package/build/cc/ThermostatFanStateCC.d.ts.map +1 -0
  195. package/build/cc/ThermostatFanStateCC.js +131 -0
  196. package/build/cc/ThermostatFanStateCC.js.map +1 -0
  197. package/build/cc/ThermostatModeCC.d.ts +58 -0
  198. package/build/cc/ThermostatModeCC.d.ts.map +1 -0
  199. package/build/cc/ThermostatModeCC.js +370 -0
  200. package/build/cc/ThermostatModeCC.js.map +1 -0
  201. package/build/cc/ThermostatOperatingStateCC.d.ts +24 -0
  202. package/build/cc/ThermostatOperatingStateCC.d.ts.map +1 -0
  203. package/build/cc/ThermostatOperatingStateCC.js +127 -0
  204. package/build/cc/ThermostatOperatingStateCC.js.map +1 -0
  205. package/build/cc/ThermostatSetbackCC.d.ts +42 -0
  206. package/build/cc/ThermostatSetbackCC.d.ts.map +1 -0
  207. package/build/cc/ThermostatSetbackCC.js +237 -0
  208. package/build/cc/ThermostatSetbackCC.js.map +1 -0
  209. package/build/cc/ThermostatSetpointCC.d.ts +98 -0
  210. package/build/cc/ThermostatSetpointCC.d.ts.map +1 -0
  211. package/build/cc/ThermostatSetpointCC.js +707 -0
  212. package/build/cc/ThermostatSetpointCC.js.map +1 -0
  213. package/build/cc/TimeCC.d.ts +78 -0
  214. package/build/cc/TimeCC.d.ts.map +1 -0
  215. package/build/cc/TimeCC.js +373 -0
  216. package/build/cc/TimeCC.js.map +1 -0
  217. package/build/cc/TimeParametersCC.d.ts +40 -0
  218. package/build/cc/TimeParametersCC.d.ts.map +1 -0
  219. package/build/cc/TimeParametersCC.js +275 -0
  220. package/build/cc/TimeParametersCC.js.map +1 -0
  221. package/build/cc/TransportServiceCC.d.ts +101 -0
  222. package/build/cc/TransportServiceCC.d.ts.map +1 -0
  223. package/build/cc/TransportServiceCC.js +404 -0
  224. package/build/cc/TransportServiceCC.js.map +1 -0
  225. package/build/cc/UserCodeCC.d.ts +219 -0
  226. package/build/cc/UserCodeCC.d.ts.map +1 -0
  227. package/build/cc/UserCodeCC.js +1526 -0
  228. package/build/cc/UserCodeCC.js.map +1 -0
  229. package/build/cc/VersionCC.d.ts +91 -0
  230. package/build/cc/VersionCC.d.ts.map +1 -0
  231. package/build/cc/VersionCC.js +654 -0
  232. package/build/cc/VersionCC.js.map +1 -0
  233. package/build/cc/WakeUpCC.d.ts +67 -0
  234. package/build/cc/WakeUpCC.d.ts.map +1 -0
  235. package/build/cc/WakeUpCC.js +425 -0
  236. package/build/cc/WakeUpCC.js.map +1 -0
  237. package/build/cc/ZWavePlusCC.d.ts +40 -0
  238. package/build/cc/ZWavePlusCC.d.ts.map +1 -0
  239. package/build/cc/ZWavePlusCC.js +269 -0
  240. package/build/cc/ZWavePlusCC.js.map +1 -0
  241. package/build/cc/index.d.ts +64 -0
  242. package/build/cc/index.d.ts.map +1 -0
  243. package/build/cc/index.js +496 -0
  244. package/build/cc/index.js.map +1 -0
  245. package/build/cc/manufacturerProprietary/FibaroCC.d.ts +62 -0
  246. package/build/cc/manufacturerProprietary/FibaroCC.d.ts.map +1 -0
  247. package/build/cc/manufacturerProprietary/FibaroCC.js +247 -0
  248. package/build/cc/manufacturerProprietary/FibaroCC.js.map +1 -0
  249. package/build/index.d.ts +11 -0
  250. package/build/index.d.ts.map +1 -0
  251. package/build/index.js +48 -0
  252. package/build/index.js.map +1 -0
  253. package/build/index_safe.d.ts +4 -0
  254. package/build/index_safe.d.ts.map +1 -0
  255. package/build/index_safe.js +30 -0
  256. package/build/index_safe.js.map +1 -0
  257. package/build/lib/API.d.ts +176 -0
  258. package/build/lib/API.d.ts.map +1 -0
  259. package/build/lib/API.js +325 -0
  260. package/build/lib/API.js.map +1 -0
  261. package/build/lib/CommandClass.d.ts +341 -0
  262. package/build/lib/CommandClass.d.ts.map +1 -0
  263. package/build/lib/CommandClass.js +1088 -0
  264. package/build/lib/CommandClass.js.map +1 -0
  265. package/build/lib/EncapsulatingCommandClass.d.ts +35 -0
  266. package/build/lib/EncapsulatingCommandClass.d.ts.map +1 -0
  267. package/build/lib/EncapsulatingCommandClass.js +53 -0
  268. package/build/lib/EncapsulatingCommandClass.js.map +1 -0
  269. package/build/lib/ICommandClassContainer.d.ts +9 -0
  270. package/build/lib/ICommandClassContainer.d.ts.map +1 -0
  271. package/build/lib/ICommandClassContainer.js +12 -0
  272. package/build/lib/ICommandClassContainer.js.map +1 -0
  273. package/build/lib/NotificationEventPayload.d.ts +11 -0
  274. package/build/lib/NotificationEventPayload.d.ts.map +1 -0
  275. package/build/lib/NotificationEventPayload.js +11 -0
  276. package/build/lib/NotificationEventPayload.js.map +1 -0
  277. package/build/lib/Security2/Extension.d.ts +87 -0
  278. package/build/lib/Security2/Extension.d.ts.map +1 -0
  279. package/build/lib/Security2/Extension.js +235 -0
  280. package/build/lib/Security2/Extension.js.map +1 -0
  281. package/build/lib/Security2/shared.d.ts +31 -0
  282. package/build/lib/Security2/shared.d.ts.map +1 -0
  283. package/build/lib/Security2/shared.js +37 -0
  284. package/build/lib/Security2/shared.js.map +1 -0
  285. package/build/lib/_Types.d.ts +1446 -0
  286. package/build/lib/_Types.d.ts.map +1 -0
  287. package/build/lib/_Types.js +1334 -0
  288. package/build/lib/_Types.js.map +1 -0
  289. package/build/lib/serializers.d.ts +24 -0
  290. package/build/lib/serializers.d.ts.map +1 -0
  291. package/build/lib/serializers.js +66 -0
  292. package/build/lib/serializers.js.map +1 -0
  293. package/build/lib/utils.d.ts +13 -0
  294. package/build/lib/utils.d.ts.map +1 -0
  295. package/build/lib/utils.js +675 -0
  296. package/build/lib/utils.js.map +1 -0
  297. package/package.json +77 -0
@@ -0,0 +1,344 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ 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;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var _a, _b;
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.BasicCCGet = exports.BasicCCReport = exports.BasicCCSet = exports.BasicCC = exports.BasicCCAPI = exports.getCompatEventValueId = exports.getCurrentValueValueId = exports.getTargetValueValueId = void 0;
11
+ function __assertType(argName, typeName, boundHasError) {
12
+ const { ZWaveError, ZWaveErrorCodes } = require("@zwave-js/core");
13
+ if (boundHasError()) {
14
+ throw new ZWaveError(typeName ? `${argName} is not a ${typeName}` : `${argName} has the wrong type`, ZWaveErrorCodes.Argument_Invalid);
15
+ }
16
+ }
17
+ const __assertType__number = $o => {
18
+ function _number($o) {
19
+ return typeof $o !== "number" ? {} : null;
20
+ }
21
+ return _number($o);
22
+ };
23
+ const safe_1 = require("@zwave-js/core/safe");
24
+ const safe_2 = require("@zwave-js/shared/safe");
25
+ const API_1 = require("../lib/API");
26
+ const CommandClass_1 = require("../lib/CommandClass");
27
+ const _Types_1 = require("../lib/_Types");
28
+ function getTargetValueValueId(endpoint) {
29
+ return {
30
+ commandClass: safe_1.CommandClasses.Basic,
31
+ endpoint,
32
+ property: "targetValue",
33
+ };
34
+ }
35
+ exports.getTargetValueValueId = getTargetValueValueId;
36
+ function getCurrentValueValueId(endpoint) {
37
+ return {
38
+ commandClass: safe_1.CommandClasses.Basic,
39
+ endpoint,
40
+ property: "currentValue",
41
+ };
42
+ }
43
+ exports.getCurrentValueValueId = getCurrentValueValueId;
44
+ function getCompatEventValueId(endpoint) {
45
+ return {
46
+ commandClass: safe_1.CommandClasses.Basic,
47
+ endpoint,
48
+ property: "event",
49
+ };
50
+ }
51
+ exports.getCompatEventValueId = getCompatEventValueId;
52
+ let BasicCCAPI = class BasicCCAPI extends API_1.CCAPI {
53
+ constructor() {
54
+ super(...arguments);
55
+ this[_a] = async ({ property }, value) => {
56
+ var _c;
57
+ if (property !== "targetValue") {
58
+ (0, API_1.throwUnsupportedProperty)(this.ccId, property);
59
+ }
60
+ if (typeof value !== "number") {
61
+ (0, API_1.throwWrongValueType)(this.ccId, property, "number", typeof value);
62
+ }
63
+ await this.set(value);
64
+ // If the command did not fail, assume that it succeeded and update the currentValue accordingly
65
+ // so UIs have immediate feedback
66
+ if (this.isSinglecast()) {
67
+ // Only update currentValue for valid target values
68
+ if (!this.applHost.options.disableOptimisticValueUpdate &&
69
+ value >= 0 &&
70
+ value <= 99) {
71
+ this.getValueDB().setValue(getCurrentValueValueId(this.endpoint.index), value);
72
+ }
73
+ // and verify the current value after a delay. We query currentValue instead of targetValue to make sure
74
+ // that unsolicited updates cancel the scheduled poll
75
+ if (property === "targetValue")
76
+ property = "currentValue";
77
+ this.schedulePoll({ property }, value);
78
+ }
79
+ else if (this.isMulticast()) {
80
+ // Only update currentValue for valid target values
81
+ if (!this.applHost.options.disableOptimisticValueUpdate &&
82
+ value >= 0 &&
83
+ value <= 99) {
84
+ // Figure out which nodes were affected by this command
85
+ const affectedNodes = this.endpoint.node.physicalNodes.filter((node) => {
86
+ var _c;
87
+ return (_c = node
88
+ .getEndpoint(this.endpoint.index)) === null || _c === void 0 ? void 0 : _c.supportsCC(this.ccId);
89
+ });
90
+ // and optimistically update the currentValue
91
+ for (const node of affectedNodes) {
92
+ (_c = this.applHost
93
+ .tryGetValueDB(node.id)) === null || _c === void 0 ? void 0 : _c.setValue(getCurrentValueValueId(this.endpoint.index), value);
94
+ }
95
+ }
96
+ else if (value === 255) {
97
+ // We generally don't want to poll for multicasts because of how much traffic it can cause
98
+ // However, when setting the value 255 (ON), we don't know the actual state
99
+ // We query currentValue instead of targetValue to make sure that unsolicited updates cancel the scheduled poll
100
+ if (property === "targetValue")
101
+ property = "currentValue";
102
+ this.schedulePoll({ property }, undefined);
103
+ }
104
+ }
105
+ };
106
+ this[_b] = async ({ property, }) => {
107
+ var _c;
108
+ switch (property) {
109
+ case "currentValue":
110
+ case "targetValue":
111
+ case "duration":
112
+ return (_c = (await this.get())) === null || _c === void 0 ? void 0 : _c[property];
113
+ default:
114
+ (0, API_1.throwUnsupportedProperty)(this.ccId, property);
115
+ }
116
+ };
117
+ }
118
+ supportsCommand(cmd) {
119
+ switch (cmd) {
120
+ case _Types_1.BasicCommand.Get:
121
+ return this.isSinglecast();
122
+ case _Types_1.BasicCommand.Set:
123
+ return true;
124
+ }
125
+ return super.supportsCommand(cmd);
126
+ }
127
+ // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
128
+ async get() {
129
+ var _c;
130
+ this.assertSupportsCommand(_Types_1.BasicCommand, _Types_1.BasicCommand.Get);
131
+ const cc = new BasicCCGet(this.applHost, {
132
+ nodeId: this.endpoint.nodeId,
133
+ endpoint: this.endpoint.index,
134
+ });
135
+ const response = await this.applHost.sendCommand(cc, this.commandOptions);
136
+ if (response) {
137
+ (_c = this.tryGetValueDB()) === null || _c === void 0 ? void 0 : _c.setValue(getCurrentValueValueId(this.endpoint.index), response.currentValue);
138
+ return (0, safe_2.pick)(response, ["currentValue", "targetValue", "duration"]);
139
+ }
140
+ }
141
+ async set(targetValue) {
142
+ __assertType("targetValue", "number", __assertType__number.bind(void 0, targetValue));
143
+ this.assertSupportsCommand(_Types_1.BasicCommand, _Types_1.BasicCommand.Set);
144
+ const cc = new BasicCCSet(this.applHost, {
145
+ nodeId: this.endpoint.nodeId,
146
+ endpoint: this.endpoint.index,
147
+ targetValue,
148
+ });
149
+ await this.applHost.sendCommand(cc, this.commandOptions);
150
+ }
151
+ };
152
+ _a = API_1.SET_VALUE, _b = API_1.POLL_VALUE;
153
+ BasicCCAPI = __decorate([
154
+ (0, CommandClass_1.API)(safe_1.CommandClasses.Basic)
155
+ ], BasicCCAPI);
156
+ exports.BasicCCAPI = BasicCCAPI;
157
+ let BasicCC = class BasicCC extends CommandClass_1.CommandClass {
158
+ async interview(applHost) {
159
+ var _c, _d, _e;
160
+ const node = this.getNode(applHost);
161
+ const endpoint = this.getEndpoint(applHost);
162
+ const valueDB = this.getValueDB(applHost);
163
+ applHost.controllerLog.logNode(node.id, {
164
+ endpoint: this.endpointIndex,
165
+ message: `Interviewing ${this.ccName}...`,
166
+ direction: "none",
167
+ });
168
+ // try to query the current state
169
+ await this.refreshValues(applHost);
170
+ // create compat event value if necessary
171
+ if ((_e = (_d = (_c = applHost.getDeviceConfig) === null || _c === void 0 ? void 0 : _c.call(applHost, node.id)) === null || _d === void 0 ? void 0 : _d.compat) === null || _e === void 0 ? void 0 : _e.treatBasicSetAsEvent) {
172
+ const valueId = getCompatEventValueId(this.endpointIndex);
173
+ if (!valueDB.hasMetadata(valueId)) {
174
+ valueDB.setMetadata(valueId, {
175
+ ...safe_1.ValueMetadata.ReadOnlyUInt8,
176
+ label: "Event value",
177
+ });
178
+ }
179
+ }
180
+ else if (valueDB.getValue(getCurrentValueValueId(this.endpointIndex)) ==
181
+ undefined) {
182
+ applHost.controllerLog.logNode(node.id, {
183
+ endpoint: this.endpointIndex,
184
+ message: "No response to Basic Get command, assuming the node does not support Basic CC...",
185
+ });
186
+ // SDS14223: A controlling node MUST conclude that the Basic Command Class is not supported by a node (or
187
+ // endpoint) if no Basic Report is returned.
188
+ endpoint.removeCC(safe_1.CommandClasses.Basic);
189
+ }
190
+ // Remember that the interview is complete
191
+ this.setInterviewComplete(applHost, true);
192
+ }
193
+ async refreshValues(applHost) {
194
+ var _c, _d;
195
+ const node = this.getNode(applHost);
196
+ const endpoint = this.getEndpoint(applHost);
197
+ const api = API_1.CCAPI.create(safe_1.CommandClasses.Basic, applHost, endpoint).withOptions({
198
+ priority: safe_1.MessagePriority.NodeQuery,
199
+ });
200
+ // try to query the current state
201
+ applHost.controllerLog.logNode(node.id, {
202
+ endpoint: this.endpointIndex,
203
+ message: "querying Basic CC state...",
204
+ direction: "outbound",
205
+ });
206
+ const basicResponse = await api.get();
207
+ if (basicResponse) {
208
+ let logMessage = `received Basic CC state:
209
+ current value: ${basicResponse.currentValue}`;
210
+ if (basicResponse.targetValue != undefined) {
211
+ logMessage += `
212
+ target value: ${basicResponse.targetValue}
213
+ remaining duration: ${(_d = (_c = basicResponse.duration) === null || _c === void 0 ? void 0 : _c.toString()) !== null && _d !== void 0 ? _d : "undefined"}`;
214
+ }
215
+ applHost.controllerLog.logNode(node.id, {
216
+ endpoint: this.endpointIndex,
217
+ message: logMessage,
218
+ direction: "inbound",
219
+ });
220
+ }
221
+ }
222
+ };
223
+ BasicCC = __decorate([
224
+ (0, CommandClass_1.commandClass)(safe_1.CommandClasses.Basic),
225
+ (0, CommandClass_1.implementedVersion)(2) // Update tests in CommandClass.test.ts when changing this
226
+ ], BasicCC);
227
+ exports.BasicCC = BasicCC;
228
+ let BasicCCSet = class BasicCCSet extends BasicCC {
229
+ constructor(host, options) {
230
+ super(host, options);
231
+ if ((0, CommandClass_1.gotDeserializationOptions)(options)) {
232
+ (0, safe_1.validatePayload)(this.payload.length >= 1);
233
+ this.targetValue = this.payload[0];
234
+ }
235
+ else {
236
+ this.targetValue = options.targetValue;
237
+ }
238
+ }
239
+ serialize() {
240
+ this.payload = Buffer.from([this.targetValue]);
241
+ return super.serialize();
242
+ }
243
+ toLogEntry(applHost) {
244
+ return {
245
+ ...super.toLogEntry(applHost),
246
+ message: { "target value": this.targetValue },
247
+ };
248
+ }
249
+ };
250
+ BasicCCSet = __decorate([
251
+ (0, CommandClass_1.CCCommand)(_Types_1.BasicCommand.Set)
252
+ ], BasicCCSet);
253
+ exports.BasicCCSet = BasicCCSet;
254
+ let BasicCCReport = class BasicCCReport extends BasicCC {
255
+ // @noCCValues See comment in the constructor
256
+ constructor(host, options) {
257
+ super(host, options);
258
+ if ((0, CommandClass_1.gotDeserializationOptions)(options)) {
259
+ (0, safe_1.validatePayload)(this.payload.length >= 1);
260
+ this._currentValue = (0, safe_1.parseMaybeNumber)(this.payload[0]);
261
+ if (this.version >= 2 && this.payload.length >= 3) {
262
+ this.targetValue = (0, safe_1.parseNumber)(this.payload[1]);
263
+ this.duration = safe_1.Duration.parseReport(this.payload[2]);
264
+ }
265
+ // Do not persist values here. We want to control when this is happening,
266
+ // in case the report is mapped to another CC
267
+ }
268
+ else {
269
+ this._currentValue = options.currentValue;
270
+ if ("targetValue" in options) {
271
+ this.targetValue = options.targetValue;
272
+ this.duration = options.duration;
273
+ }
274
+ }
275
+ }
276
+ persistValues(applHost) {
277
+ if (this.currentValue === safe_1.unknownNumber &&
278
+ !applHost.options.preserveUnknownValues) {
279
+ this._currentValue = undefined;
280
+ }
281
+ return super.persistValues(applHost);
282
+ }
283
+ get currentValue() {
284
+ return this._currentValue;
285
+ }
286
+ serialize() {
287
+ const payload = [
288
+ typeof this.currentValue !== "number" ? 0xfe : this.currentValue,
289
+ ];
290
+ if (this.version >= 2 && this.targetValue && this.duration) {
291
+ payload.push(this.targetValue, this.duration.serializeReport());
292
+ }
293
+ this.payload = Buffer.from(payload);
294
+ return super.serialize();
295
+ }
296
+ toLogEntry(applHost) {
297
+ const message = {
298
+ "current value": this.currentValue,
299
+ };
300
+ if (this.targetValue != undefined) {
301
+ message["target value"] = this.targetValue;
302
+ }
303
+ if (this.duration != undefined) {
304
+ message.duration = this.duration.toString();
305
+ }
306
+ return {
307
+ ...super.toLogEntry(applHost),
308
+ message,
309
+ };
310
+ }
311
+ };
312
+ __decorate([
313
+ (0, CommandClass_1.ccValue)(),
314
+ (0, CommandClass_1.ccValueMetadata)({
315
+ ...safe_1.ValueMetadata.ReadOnlyLevel,
316
+ label: "Current value",
317
+ })
318
+ ], BasicCCReport.prototype, "currentValue", null);
319
+ __decorate([
320
+ (0, CommandClass_1.ccValue)({ forceCreation: true }),
321
+ (0, CommandClass_1.ccValueMetadata)({
322
+ ...safe_1.ValueMetadata.Level,
323
+ label: "Target value",
324
+ })
325
+ ], BasicCCReport.prototype, "targetValue", void 0);
326
+ __decorate([
327
+ (0, CommandClass_1.ccValue)({ minVersion: 2 }),
328
+ (0, CommandClass_1.ccValueMetadata)({
329
+ ...safe_1.ValueMetadata.ReadOnlyDuration,
330
+ label: "Remaining duration",
331
+ })
332
+ ], BasicCCReport.prototype, "duration", void 0);
333
+ BasicCCReport = __decorate([
334
+ (0, CommandClass_1.CCCommand)(_Types_1.BasicCommand.Report)
335
+ ], BasicCCReport);
336
+ exports.BasicCCReport = BasicCCReport;
337
+ let BasicCCGet = class BasicCCGet extends BasicCC {
338
+ };
339
+ BasicCCGet = __decorate([
340
+ (0, CommandClass_1.CCCommand)(_Types_1.BasicCommand.Get),
341
+ (0, CommandClass_1.expectedCCResponse)(BasicCCReport)
342
+ ], BasicCCGet);
343
+ exports.BasicCCGet = BasicCCGet;
344
+ //# sourceMappingURL=BasicCC.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BasicCC.js","sourceRoot":"","sources":["../../src/cc/BasicCC.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,56 @@
1
+ import type { MessageOrCCLogEntry } from "@zwave-js/core/safe";
2
+ import { Maybe } from "@zwave-js/core/safe";
3
+ import type { ZWaveApplicationHost, ZWaveHost } from "@zwave-js/host/safe";
4
+ import { PhysicalCCAPI, PollValueImplementation, POLL_VALUE } from "../lib/API";
5
+ import { CommandClass, type CommandClassDeserializationOptions } from "../lib/CommandClass";
6
+ import { BatteryChargingStatus, BatteryCommand, BatteryReplacementStatus } from "../lib/_Types";
7
+ export declare class BatteryCCAPI extends PhysicalCCAPI {
8
+ supportsCommand(cmd: BatteryCommand): Maybe<boolean>;
9
+ protected [POLL_VALUE]: PollValueImplementation;
10
+ get(): Promise<Pick<BatteryCCReport, "level" | "isLow" | "chargingStatus" | "rechargeable" | "backup" | "overheating" | "lowFluid" | "rechargeOrReplace" | "lowTemperatureStatus" | "disconnected"> | undefined>;
11
+ getHealth(): Promise<Pick<BatteryCCHealthReport, "maximumCapacity" | "temperature"> | undefined>;
12
+ }
13
+ export declare class BatteryCC extends CommandClass {
14
+ ccCommand: BatteryCommand;
15
+ interview(applHost: ZWaveApplicationHost): Promise<void>;
16
+ refreshValues(applHost: ZWaveApplicationHost): Promise<void>;
17
+ }
18
+ export declare class BatteryCCReport extends BatteryCC {
19
+ constructor(host: ZWaveHost, options: CommandClassDeserializationOptions);
20
+ private _level;
21
+ get level(): number;
22
+ private _isLow;
23
+ get isLow(): boolean;
24
+ private _chargingStatus;
25
+ get chargingStatus(): BatteryChargingStatus | undefined;
26
+ private _rechargeable;
27
+ get rechargeable(): boolean | undefined;
28
+ private _backup;
29
+ get backup(): boolean | undefined;
30
+ private _overheating;
31
+ get overheating(): boolean | undefined;
32
+ private _lowFluid;
33
+ get lowFluid(): boolean | undefined;
34
+ private _rechargeOrReplace;
35
+ get rechargeOrReplace(): BatteryReplacementStatus | undefined;
36
+ private _disconnected;
37
+ get disconnected(): boolean | undefined;
38
+ private _lowTemperatureStatus;
39
+ get lowTemperatureStatus(): boolean | undefined;
40
+ toLogEntry(applHost: ZWaveApplicationHost): MessageOrCCLogEntry;
41
+ }
42
+ export declare class BatteryCCGet extends BatteryCC {
43
+ }
44
+ export declare class BatteryCCHealthReport extends BatteryCC {
45
+ constructor(host: ZWaveHost, options: CommandClassDeserializationOptions);
46
+ persistValues(applHost: ZWaveApplicationHost): boolean;
47
+ private _maximumCapacity;
48
+ get maximumCapacity(): number | undefined;
49
+ private _temperature;
50
+ get temperature(): number | undefined;
51
+ private readonly temperatureScale;
52
+ toLogEntry(applHost: ZWaveApplicationHost): MessageOrCCLogEntry;
53
+ }
54
+ export declare class BatteryCCHealthGet extends BatteryCC {
55
+ }
56
+ //# sourceMappingURL=BatteryCC.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BatteryCC.d.ts","sourceRoot":"","sources":["../../src/cc/BatteryCC.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,mBAAmB,EAGnB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAGN,KAAK,EAKL,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,oBAAoB,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAE3E,OAAO,EAEN,aAAa,EACb,uBAAuB,EACvB,UAAU,EAEV,MAAM,YAAY,CAAC;AACpB,OAAO,EAMN,YAAY,EAGZ,KAAK,kCAAkC,EACvC,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACN,qBAAqB,EACrB,cAAc,EACd,wBAAwB,EACxB,MAAM,eAAe,CAAC;AAIvB,qBACa,YAAa,SAAQ,aAAa;IACvC,eAAe,CAAC,GAAG,EAAE,cAAc,GAAG,KAAK,CAAC,OAAO,CAAC;IAU3D,SAAS,CAAC,CAAC,UAAU,CAAC,EAAE,uBAAuB,CAuB7C;IAGW,GAAG;IA4BH,SAAS;CAetB;AAED,qBAEa,SAAU,SAAQ,YAAY;IAClC,SAAS,EAAE,cAAc,CAAC;IAErB,SAAS,CAAC,QAAQ,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBxD,aAAa,CAAC,QAAQ,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;CAkEzE;AAED,qBACa,eAAgB,SAAQ,SAAS;gBAE5C,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,kCAAkC;IA8B5C,OAAO,CAAC,MAAM,CAAS;IACvB,IAOW,KAAK,IAAI,MAAM,CAEzB;IAED,OAAO,CAAC,MAAM,CAAU;IACxB,IAKW,KAAK,IAAI,OAAO,CAE1B;IAED,OAAO,CAAC,eAAe,CAAoC;IAC3D,IAMW,cAAc,IAAI,qBAAqB,GAAG,SAAS,CAE7D;IAED,OAAO,CAAC,aAAa,CAAsB;IAC3C,IAKW,YAAY,IAAI,OAAO,GAAG,SAAS,CAE7C;IAED,OAAO,CAAC,OAAO,CAAsB;IACrC,IAKW,MAAM,IAAI,OAAO,GAAG,SAAS,CAEvC;IAED,OAAO,CAAC,YAAY,CAAsB;IAC1C,IAKW,WAAW,IAAI,OAAO,GAAG,SAAS,CAE5C;IAED,OAAO,CAAC,SAAS,CAAsB;IACvC,IAKW,QAAQ,IAAI,OAAO,GAAG,SAAS,CAEzC;IAED,OAAO,CAAC,kBAAkB,CAAuC;IACjE,IAMW,iBAAiB,IAAI,wBAAwB,GAAG,SAAS,CAEnE;IAED,OAAO,CAAC,aAAa,CAAsB;IAC3C,IAKW,YAAY,IAAI,OAAO,GAAG,SAAS,CAE7C;IAED,OAAO,CAAC,qBAAqB,CAAsB;IACnD,IAKW,oBAAoB,IAAI,OAAO,GAAG,SAAS,CAErD;IAEM,UAAU,CAAC,QAAQ,EAAE,oBAAoB,GAAG,mBAAmB;CAwCtE;AAED,qBAEa,YAAa,SAAQ,SAAS;CAAG;AAE9C,qBACa,qBAAsB,SAAQ,SAAS;gBAElD,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,kCAAkC;IAkBrC,aAAa,CAAC,QAAQ,EAAE,oBAAoB,GAAG,OAAO;IAmB7D,OAAO,CAAC,gBAAgB,CAAqB;IAC7C,IAOW,eAAe,IAAI,MAAM,GAAG,SAAS,CAE/C;IAED,OAAO,CAAC,YAAY,CAAqB;IACzC,IAKW,WAAW,IAAI,MAAM,GAAG,SAAS,CAE3C;IAED,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAqB;IAE/C,UAAU,CAAC,QAAQ,EAAE,oBAAoB,GAAG,mBAAmB;CAetE;AAED,qBAEa,kBAAmB,SAAQ,SAAS;CAAG"}