isy-nodejs 1.0.2-alpha.6 → 1.0.3-alpha.2

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 (271) hide show
  1. package/dist/esm/CodeGeneration/CodeFactory.js +17 -6
  2. package/dist/esm/CodeGeneration/CodeFactory.js.map +1 -1
  3. package/dist/esm/CodeGeneration/EnumFactory.js +1 -1
  4. package/dist/esm/CodeGeneration/EnumFactory.js.map +1 -1
  5. package/dist/esm/CodeGeneration/NodeClassFactory.js +8 -8
  6. package/dist/esm/CodeGeneration/NodeClassFactory.js.map +1 -1
  7. package/dist/esm/Converters.js +16 -6
  8. package/dist/esm/Converters.js.map +1 -1
  9. package/dist/esm/Devices/Insteon/Generated/AlertModuleArmed.js +3 -1
  10. package/dist/esm/Devices/Insteon/Generated/AlertModuleArmed.js.map +1 -1
  11. package/dist/esm/Devices/Insteon/Generated/AlertModuleSiren.js +3 -1
  12. package/dist/esm/Devices/Insteon/Generated/AlertModuleSiren.js.map +1 -1
  13. package/dist/esm/Devices/Insteon/Generated/BallastRelayLampSwitch.js +3 -1
  14. package/dist/esm/Devices/Insteon/Generated/BallastRelayLampSwitch.js.map +1 -1
  15. package/dist/esm/Devices/Insteon/Generated/BinaryAlarm.js +3 -1
  16. package/dist/esm/Devices/Insteon/Generated/BinaryAlarm.js.map +1 -1
  17. package/dist/esm/Devices/Insteon/Generated/BinaryControl.js +3 -1
  18. package/dist/esm/Devices/Insteon/Generated/BinaryControl.js.map +1 -1
  19. package/dist/esm/Devices/Insteon/Generated/DimmerLamp.js +3 -1
  20. package/dist/esm/Devices/Insteon/Generated/DimmerLamp.js.map +1 -1
  21. package/dist/esm/Devices/Insteon/Generated/DimmerLampSwitch.js +3 -1
  22. package/dist/esm/Devices/Insteon/Generated/DimmerLampSwitch.js.map +1 -1
  23. package/dist/esm/Devices/Insteon/Generated/DimmerLampSwitchLed.js +3 -1
  24. package/dist/esm/Devices/Insteon/Generated/DimmerLampSwitchLed.js.map +1 -1
  25. package/dist/esm/Devices/Insteon/Generated/DimmerMotorSwitch.js +3 -1
  26. package/dist/esm/Devices/Insteon/Generated/DimmerMotorSwitch.js.map +1 -1
  27. package/dist/esm/Devices/Insteon/Generated/DimmerSwitch.js +3 -1
  28. package/dist/esm/Devices/Insteon/Generated/DimmerSwitch.js.map +1 -1
  29. package/dist/esm/Devices/Insteon/Generated/DoorLock.js +3 -1
  30. package/dist/esm/Devices/Insteon/Generated/DoorLock.js.map +1 -1
  31. package/dist/esm/Devices/Insteon/Generated/Ezio2x4Input.js +3 -1
  32. package/dist/esm/Devices/Insteon/Generated/Ezio2x4Input.js.map +1 -1
  33. package/dist/esm/Devices/Insteon/Generated/Ezio2x4Output.js +3 -1
  34. package/dist/esm/Devices/Insteon/Generated/Ezio2x4Output.js.map +1 -1
  35. package/dist/esm/Devices/Insteon/Generated/EzrainInput.js +3 -1
  36. package/dist/esm/Devices/Insteon/Generated/EzrainInput.js.map +1 -1
  37. package/dist/esm/Devices/Insteon/Generated/EzrainOutput.js +3 -1
  38. package/dist/esm/Devices/Insteon/Generated/EzrainOutput.js.map +1 -1
  39. package/dist/esm/Devices/Insteon/Generated/FanLincMotor.js +3 -1
  40. package/dist/esm/Devices/Insteon/Generated/FanLincMotor.js.map +1 -1
  41. package/dist/esm/Devices/Insteon/Generated/I3KeypadFlags.js +3 -1
  42. package/dist/esm/Devices/Insteon/Generated/I3KeypadFlags.js.map +1 -1
  43. package/dist/esm/Devices/Insteon/Generated/I3PaddleFlags.js +3 -1
  44. package/dist/esm/Devices/Insteon/Generated/I3PaddleFlags.js.map +1 -1
  45. package/dist/esm/Devices/Insteon/Generated/ImeterSolo.js +3 -1
  46. package/dist/esm/Devices/Insteon/Generated/ImeterSolo.js.map +1 -1
  47. package/dist/esm/Devices/Insteon/Generated/IrLincTx.js +3 -1
  48. package/dist/esm/Devices/Insteon/Generated/IrLincTx.js.map +1 -1
  49. package/dist/esm/Devices/Insteon/Generated/KeypadButton.js +3 -1
  50. package/dist/esm/Devices/Insteon/Generated/KeypadButton.js.map +1 -1
  51. package/dist/esm/Devices/Insteon/Generated/KeypadDimmer.js +4 -2
  52. package/dist/esm/Devices/Insteon/Generated/KeypadDimmer.js.map +1 -1
  53. package/dist/esm/Devices/Insteon/Generated/KeypadRelay.js +4 -2
  54. package/dist/esm/Devices/Insteon/Generated/KeypadRelay.js.map +1 -1
  55. package/dist/esm/Devices/Insteon/Generated/OnOffControl.js +4 -2
  56. package/dist/esm/Devices/Insteon/Generated/OnOffControl.js.map +1 -1
  57. package/dist/esm/Devices/Insteon/Generated/Pir2844.js +4 -2
  58. package/dist/esm/Devices/Insteon/Generated/Pir2844.js.map +1 -1
  59. package/dist/esm/Devices/Insteon/Generated/Pir2844OnOff.js +3 -1
  60. package/dist/esm/Devices/Insteon/Generated/Pir2844OnOff.js.map +1 -1
  61. package/dist/esm/Devices/Insteon/Generated/Pir2844c.js +4 -2
  62. package/dist/esm/Devices/Insteon/Generated/Pir2844c.js.map +1 -1
  63. package/dist/esm/Devices/Insteon/Generated/RelayLamp.js +4 -2
  64. package/dist/esm/Devices/Insteon/Generated/RelayLamp.js.map +1 -1
  65. package/dist/esm/Devices/Insteon/Generated/RelayLampSwitch.js +4 -2
  66. package/dist/esm/Devices/Insteon/Generated/RelayLampSwitch.js.map +1 -1
  67. package/dist/esm/Devices/Insteon/Generated/RelayLampSwitchLed.js +4 -2
  68. package/dist/esm/Devices/Insteon/Generated/RelayLampSwitchLed.js.map +1 -1
  69. package/dist/esm/Devices/Insteon/Generated/RelaySwitch.js +4 -2
  70. package/dist/esm/Devices/Insteon/Generated/RelaySwitch.js.map +1 -1
  71. package/dist/esm/Devices/Insteon/Generated/RelaySwitchOnlyPlusQuery.js +4 -2
  72. package/dist/esm/Devices/Insteon/Generated/RelaySwitchOnlyPlusQuery.js.map +1 -1
  73. package/dist/esm/Devices/Insteon/Generated/RemoteLinc2.js +3 -1
  74. package/dist/esm/Devices/Insteon/Generated/RemoteLinc2.js.map +1 -1
  75. package/dist/esm/Devices/Insteon/Generated/Siren.js +3 -1
  76. package/dist/esm/Devices/Insteon/Generated/Siren.js.map +1 -1
  77. package/dist/esm/Devices/Insteon/Generated/SirenAlert.js +3 -1
  78. package/dist/esm/Devices/Insteon/Generated/SirenAlert.js.map +1 -1
  79. package/dist/esm/Devices/Insteon/Generated/TempLinc.js +3 -1
  80. package/dist/esm/Devices/Insteon/Generated/TempLinc.js.map +1 -1
  81. package/dist/esm/Devices/Insteon/Generated/Thermostat.js +3 -1
  82. package/dist/esm/Devices/Insteon/Generated/Thermostat.js.map +1 -1
  83. package/dist/esm/Devices/Insteon/Generated/X10.js +3 -1
  84. package/dist/esm/Devices/Insteon/Generated/X10.js.map +1 -1
  85. package/dist/esm/Devices/Lutron/Generated/LoadShed.js +3 -1
  86. package/dist/esm/Devices/Lutron/Generated/LoadShed.js.map +1 -1
  87. package/dist/esm/Devices/UDI/Generated/Channel.js +3 -1
  88. package/dist/esm/Devices/UDI/Generated/Channel.js.map +1 -1
  89. package/dist/esm/Devices/UDI/Generated/Em3MainChannel.js +3 -1
  90. package/dist/esm/Devices/UDI/Generated/Em3MainChannel.js.map +1 -1
  91. package/dist/esm/Devices/UDI/Generated/Main.js +3 -1
  92. package/dist/esm/Devices/UDI/Generated/Main.js.map +1 -1
  93. package/dist/esm/Devices/UDI/Generated/PulseCounter.js +3 -1
  94. package/dist/esm/Devices/UDI/Generated/PulseCounter.js.map +1 -1
  95. package/dist/esm/Devices/UDI/Generated/Relay.js +3 -1
  96. package/dist/esm/Devices/UDI/Generated/Relay.js.map +1 -1
  97. package/dist/esm/Devices/UDI/Generated/TemperatureSensor.js +3 -1
  98. package/dist/esm/Devices/UDI/Generated/TemperatureSensor.js.map +1 -1
  99. package/dist/esm/Devices/ZWave/Generated/ColorSwitch.js +8 -2
  100. package/dist/esm/Devices/ZWave/Generated/ColorSwitch.js.map +1 -1
  101. package/dist/esm/Devices/ZWave/Generated/DimmerSwitch.js +3 -1
  102. package/dist/esm/Devices/ZWave/Generated/DimmerSwitch.js.map +1 -1
  103. package/dist/esm/ISY.js +64 -34
  104. package/dist/esm/ISY.js.map +1 -1
  105. package/dist/esm/Matter/Behaviors/ISYBridgedDeviceBehavior.js +1 -1
  106. package/dist/esm/Matter/Behaviors/ISYBridgedDeviceBehavior.js.map +1 -1
  107. package/dist/esm/Matter/Behaviors/ISYClusterBehavior.js.map +1 -1
  108. package/dist/esm/Matter/Behaviors/Insteon/ISYOnOffBehavior.js.map +1 -1
  109. package/dist/esm/Matter/Bridge/Server.js +6 -6
  110. package/dist/esm/Matter/Bridge/Server.js.map +1 -1
  111. package/dist/esm/Matter/Mappings/Insteon.js +36 -13
  112. package/dist/esm/Matter/Mappings/Insteon.js.map +1 -1
  113. package/dist/esm/{Model/ClusterMap.js → Matter/Mappings/MappingRegistry.js} +12 -7
  114. package/dist/esm/Matter/Mappings/MappingRegistry.js.map +1 -0
  115. package/dist/esm/Model/ClassDefinition.js +7 -5
  116. package/dist/esm/Model/ClassDefinition.js.map +1 -1
  117. package/dist/esm/types/CodeGeneration/CodeFactory.d.ts.map +1 -1
  118. package/dist/esm/types/CodeGeneration/EnumFactory.d.ts.map +1 -1
  119. package/dist/esm/types/CodeGeneration/NodeClassFactory.d.ts.map +1 -1
  120. package/dist/esm/types/Converters.d.ts +12 -6
  121. package/dist/esm/types/Converters.d.ts.map +1 -1
  122. package/dist/esm/types/Devices/EndpointFor.d.ts +1 -1
  123. package/dist/esm/types/Devices/Insteon/Generated/AlertModuleArmed.d.ts.map +1 -1
  124. package/dist/esm/types/Devices/Insteon/Generated/AlertModuleSiren.d.ts.map +1 -1
  125. package/dist/esm/types/Devices/Insteon/Generated/BallastRelayLampSwitch.d.ts.map +1 -1
  126. package/dist/esm/types/Devices/Insteon/Generated/BinaryAlarm.d.ts.map +1 -1
  127. package/dist/esm/types/Devices/Insteon/Generated/BinaryControl.d.ts.map +1 -1
  128. package/dist/esm/types/Devices/Insteon/Generated/DimmerLamp.d.ts.map +1 -1
  129. package/dist/esm/types/Devices/Insteon/Generated/DimmerLampSwitch.d.ts.map +1 -1
  130. package/dist/esm/types/Devices/Insteon/Generated/DimmerLampSwitchLed.d.ts.map +1 -1
  131. package/dist/esm/types/Devices/Insteon/Generated/DimmerMotorSwitch.d.ts.map +1 -1
  132. package/dist/esm/types/Devices/Insteon/Generated/DimmerSwitch.d.ts.map +1 -1
  133. package/dist/esm/types/Devices/Insteon/Generated/DoorLock.d.ts.map +1 -1
  134. package/dist/esm/types/Devices/Insteon/Generated/Ezio2x4Input.d.ts.map +1 -1
  135. package/dist/esm/types/Devices/Insteon/Generated/Ezio2x4Output.d.ts.map +1 -1
  136. package/dist/esm/types/Devices/Insteon/Generated/EzrainInput.d.ts.map +1 -1
  137. package/dist/esm/types/Devices/Insteon/Generated/EzrainOutput.d.ts.map +1 -1
  138. package/dist/esm/types/Devices/Insteon/Generated/FanLincMotor.d.ts.map +1 -1
  139. package/dist/esm/types/Devices/Insteon/Generated/I3KeypadFlags.d.ts.map +1 -1
  140. package/dist/esm/types/Devices/Insteon/Generated/I3PaddleFlags.d.ts.map +1 -1
  141. package/dist/esm/types/Devices/Insteon/Generated/ImeterSolo.d.ts.map +1 -1
  142. package/dist/esm/types/Devices/Insteon/Generated/IrLincTx.d.ts.map +1 -1
  143. package/dist/esm/types/Devices/Insteon/Generated/KeypadButton.d.ts.map +1 -1
  144. package/dist/esm/types/Devices/Insteon/Generated/KeypadDimmer.d.ts.map +1 -1
  145. package/dist/esm/types/Devices/Insteon/Generated/KeypadRelay.d.ts +6 -6
  146. package/dist/esm/types/Devices/Insteon/Generated/KeypadRelay.d.ts.map +1 -1
  147. package/dist/esm/types/Devices/Insteon/Generated/OnOffControl.d.ts +3 -3
  148. package/dist/esm/types/Devices/Insteon/Generated/OnOffControl.d.ts.map +1 -1
  149. package/dist/esm/types/Devices/Insteon/Generated/Pir2844.d.ts.map +1 -1
  150. package/dist/esm/types/Devices/Insteon/Generated/Pir2844OnOff.d.ts.map +1 -1
  151. package/dist/esm/types/Devices/Insteon/Generated/Pir2844c.d.ts.map +1 -1
  152. package/dist/esm/types/Devices/Insteon/Generated/RelayLamp.d.ts +3 -3
  153. package/dist/esm/types/Devices/Insteon/Generated/RelayLamp.d.ts.map +1 -1
  154. package/dist/esm/types/Devices/Insteon/Generated/RelayLampSwitch.d.ts +3 -3
  155. package/dist/esm/types/Devices/Insteon/Generated/RelayLampSwitch.d.ts.map +1 -1
  156. package/dist/esm/types/Devices/Insteon/Generated/RelayLampSwitchLed.d.ts +6 -6
  157. package/dist/esm/types/Devices/Insteon/Generated/RelayLampSwitchLed.d.ts.map +1 -1
  158. package/dist/esm/types/Devices/Insteon/Generated/RelaySwitch.d.ts.map +1 -1
  159. package/dist/esm/types/Devices/Insteon/Generated/RelaySwitchOnlyPlusQuery.d.ts.map +1 -1
  160. package/dist/esm/types/Devices/Insteon/Generated/RemoteLinc2.d.ts.map +1 -1
  161. package/dist/esm/types/Devices/Insteon/Generated/Siren.d.ts.map +1 -1
  162. package/dist/esm/types/Devices/Insteon/Generated/SirenAlert.d.ts.map +1 -1
  163. package/dist/esm/types/Devices/Insteon/Generated/TempLinc.d.ts.map +1 -1
  164. package/dist/esm/types/Devices/Insteon/Generated/Thermostat.d.ts.map +1 -1
  165. package/dist/esm/types/Devices/Insteon/Generated/X10.d.ts.map +1 -1
  166. package/dist/esm/types/Devices/Insteon/InsteonDevice.d.ts +2 -2
  167. package/dist/esm/types/Devices/Lutron/Generated/LoadShed.d.ts.map +1 -1
  168. package/dist/esm/types/Devices/UDI/Generated/Channel.d.ts.map +1 -1
  169. package/dist/esm/types/Devices/UDI/Generated/Em3MainChannel.d.ts.map +1 -1
  170. package/dist/esm/types/Devices/UDI/Generated/Main.d.ts.map +1 -1
  171. package/dist/esm/types/Devices/UDI/Generated/PulseCounter.d.ts.map +1 -1
  172. package/dist/esm/types/Devices/UDI/Generated/Relay.d.ts.map +1 -1
  173. package/dist/esm/types/Devices/UDI/Generated/TemperatureSensor.d.ts.map +1 -1
  174. package/dist/esm/types/Devices/ZWave/Generated/ColorSwitch.d.ts +16 -9
  175. package/dist/esm/types/Devices/ZWave/Generated/ColorSwitch.d.ts.map +1 -1
  176. package/dist/esm/types/Devices/ZWave/Generated/DimmerSwitch.d.ts +15 -15
  177. package/dist/esm/types/Devices/ZWave/Generated/DimmerSwitch.d.ts.map +1 -1
  178. package/dist/esm/types/ISY.d.ts +6 -2
  179. package/dist/esm/types/ISY.d.ts.map +1 -1
  180. package/dist/esm/types/ISYNode.d.ts +1 -1
  181. package/dist/esm/types/ISYNode.d.ts.map +1 -1
  182. package/dist/esm/types/Matter/Behaviors/ISYBridgedDeviceBehavior.d.ts +1 -1
  183. package/dist/esm/types/Matter/Behaviors/ISYBridgedDeviceBehavior.d.ts.map +1 -1
  184. package/dist/esm/types/Matter/Behaviors/ISYClusterBehavior.d.ts +1 -1
  185. package/dist/esm/types/Matter/Behaviors/ISYClusterBehavior.d.ts.map +1 -1
  186. package/dist/esm/types/Matter/Behaviors/Insteon/ISYOnOffBehavior.d.ts.map +1 -1
  187. package/dist/esm/types/Matter/Bridge/Server.d.ts +0 -1
  188. package/dist/esm/types/Matter/Bridge/Server.d.ts.map +1 -1
  189. package/dist/esm/types/Matter/Mappings/Insteon.d.ts +3 -1
  190. package/dist/esm/types/Matter/Mappings/Insteon.d.ts.map +1 -1
  191. package/dist/esm/types/Matter/Mappings/MappingRegistry.d.ts +144 -0
  192. package/dist/esm/types/Matter/Mappings/MappingRegistry.d.ts.map +1 -0
  193. package/dist/esm/types/Model/ClassDefinition.d.ts +9 -623
  194. package/dist/esm/types/Model/ClassDefinition.d.ts.map +1 -1
  195. package/dist/esm/types/Model/EnumDefinition.d.ts +1 -1
  196. package/dist/tsconfig.esm.tsbuildinfo +1 -1
  197. package/package.json +4 -2
  198. package/src/CodeGeneration/CodeFactory.ts +18 -2
  199. package/src/CodeGeneration/EnumFactory.ts +5 -4
  200. package/src/CodeGeneration/NodeClassFactory.ts +9 -8
  201. package/src/Converters.ts +16 -10
  202. package/src/Devices/Brultech/Generated/Channel.ts +3 -1
  203. package/src/Devices/Brultech/Generated/Main.ts +3 -1
  204. package/src/Devices/Insteon/Generated/AlertModuleArmed.ts +3 -1
  205. package/src/Devices/Insteon/Generated/AlertModuleSiren.ts +3 -1
  206. package/src/Devices/Insteon/Generated/BallastRelayLampSwitch.ts +3 -1
  207. package/src/Devices/Insteon/Generated/BinaryAlarm.ts +3 -1
  208. package/src/Devices/Insteon/Generated/BinaryControl.ts +3 -1
  209. package/src/Devices/Insteon/Generated/DimmerLamp.ts +3 -1
  210. package/src/Devices/Insteon/Generated/DimmerLampSwitch.ts +3 -1
  211. package/src/Devices/Insteon/Generated/DimmerLampSwitchLed.ts +3 -1
  212. package/src/Devices/Insteon/Generated/DimmerMotorSwitch.ts +3 -1
  213. package/src/Devices/Insteon/Generated/DimmerSwitch.ts +3 -1
  214. package/src/Devices/Insteon/Generated/DoorLock.ts +3 -1
  215. package/src/Devices/Insteon/Generated/Ezio2x4Input.ts +3 -1
  216. package/src/Devices/Insteon/Generated/Ezio2x4Output.ts +3 -1
  217. package/src/Devices/Insteon/Generated/EzrainInput.ts +3 -1
  218. package/src/Devices/Insteon/Generated/EzrainOutput.ts +3 -1
  219. package/src/Devices/Insteon/Generated/FanLincMotor.ts +3 -1
  220. package/src/Devices/Insteon/Generated/I3KeypadFlags.ts +3 -1
  221. package/src/Devices/Insteon/Generated/I3PaddleFlags.ts +3 -1
  222. package/src/Devices/Insteon/Generated/ImeterSolo.ts +3 -1
  223. package/src/Devices/Insteon/Generated/IrLincTx.ts +3 -1
  224. package/src/Devices/Insteon/Generated/KeypadButton.ts +3 -1
  225. package/src/Devices/Insteon/Generated/KeypadDimmer.ts +4 -2
  226. package/src/Devices/Insteon/Generated/KeypadRelay.ts +16 -14
  227. package/src/Devices/Insteon/Generated/OnOffControl.ts +7 -5
  228. package/src/Devices/Insteon/Generated/Pir2844.ts +4 -2
  229. package/src/Devices/Insteon/Generated/Pir2844OnOff.ts +3 -1
  230. package/src/Devices/Insteon/Generated/Pir2844c.ts +4 -2
  231. package/src/Devices/Insteon/Generated/RelayLamp.ts +7 -5
  232. package/src/Devices/Insteon/Generated/RelayLampSwitch.ts +7 -5
  233. package/src/Devices/Insteon/Generated/RelayLampSwitchLed.ts +9 -7
  234. package/src/Devices/Insteon/Generated/RelaySwitch.ts +4 -2
  235. package/src/Devices/Insteon/Generated/RelaySwitchOnlyPlusQuery.ts +4 -2
  236. package/src/Devices/Insteon/Generated/RemoteLinc2.ts +3 -1
  237. package/src/Devices/Insteon/Generated/Siren.ts +3 -1
  238. package/src/Devices/Insteon/Generated/SirenAlert.ts +3 -1
  239. package/src/Devices/Insteon/Generated/TempLinc.ts +3 -1
  240. package/src/Devices/Insteon/Generated/Thermostat.ts +3 -1
  241. package/src/Devices/Insteon/Generated/X10.ts +3 -1
  242. package/src/Devices/Lutron/Generated/LoadShed.ts +3 -1
  243. package/src/Devices/NCD/Generated/Relay.ts +3 -1
  244. package/src/Devices/Poly/Generated/MatterBridge.ts +3 -1
  245. package/src/Devices/Scene/Generated/Scene.ts +3 -1
  246. package/src/Devices/UDI/Generated/Channel.ts +3 -1
  247. package/src/Devices/UDI/Generated/Em3MainChannel.ts +3 -1
  248. package/src/Devices/UDI/Generated/Main.ts +3 -1
  249. package/src/Devices/UDI/Generated/PulseCounter.ts +3 -1
  250. package/src/Devices/UDI/Generated/Relay.ts +3 -1
  251. package/src/Devices/UDI/Generated/TemperatureSensor.ts +3 -1
  252. package/src/Devices/ZWave/Generated/ColorSwitch.ts +19 -7
  253. package/src/Devices/ZWave/Generated/DimmerSwitch.ts +13 -11
  254. package/src/Devices/ZigBeeLegacy/Generated/Relay.ts +3 -1
  255. package/src/Devices/ZigBeeLegacy/Generated/Thermostat.ts +3 -1
  256. package/src/ISY.ts +65 -25
  257. package/src/Matter/Behaviors/ISYBridgedDeviceBehavior.ts +1 -1
  258. package/src/Matter/Behaviors/ISYClusterBehavior.ts +2 -1
  259. package/src/Matter/Behaviors/Insteon/ISYOnOffBehavior.ts +2 -1
  260. package/src/Matter/Bridge/Server.ts +10 -6
  261. package/src/Matter/Mappings/Insteon.ts +38 -15
  262. package/src/{Model/ClusterMap.ts → Matter/Mappings/MappingRegistry.ts} +26 -14
  263. package/src/Model/ClassDefinition.ts +16 -10
  264. package/src/Utils.ts +1 -1
  265. package/dist/esm/CodeGeneration/NodeFactory.js +0 -245
  266. package/dist/esm/CodeGeneration/NodeFactory.js.map +0 -1
  267. package/dist/esm/Model/ClusterMap.js.map +0 -1
  268. package/dist/esm/types/CodeGeneration/NodeFactory.d.ts +0 -75
  269. package/dist/esm/types/CodeGeneration/NodeFactory.d.ts.map +0 -1
  270. package/dist/esm/types/Model/ClusterMap.d.ts +0 -101
  271. package/dist/esm/types/Model/ClusterMap.d.ts.map +0 -1
@@ -1,5 +1,5 @@
1
- /* THIS FILE WAS AUTOMATICALLY GENERATED. DO NOT EDIT DIRECTLY. */
2
-
1
+ /* THIS FILE WAS AUTOMATICALLY GENERATED. DO NOT EDIT DIRECTLY. */
2
+
3
3
  import { UnitOfMeasure } from "../../../Definitions/Global/UOM.js";
4
4
  import { Family } from "../../../Definitions/Global/Families.js";
5
5
  import type { NodeInfo } from "../../../Model/NodeInfo.js";
@@ -11,12 +11,12 @@ import { Driver } from "../../../Definitions/Global/Drivers.js";
11
11
  import { Insteon } from "../../../Definitions/index.js";
12
12
  import type { DriverState } from "../../../Model/DriverState.js";
13
13
  import { NodeFactory } from "../../NodeFactory.js";
14
-
14
+
15
15
  const nodeDefId = "KeypadRelay";
16
-
16
+
17
17
  type Commands = KeypadRelay.Commands;
18
18
  type Drivers = KeypadRelay.Drivers;
19
-
19
+
20
20
  export class KeypadRelayNode extends Base<Drivers, Commands> implements KeypadRelay.Interface {
21
21
  public override readonly commands = {
22
22
  DON: this.on,
@@ -33,7 +33,7 @@ export class KeypadRelayNode extends Base<Drivers, Commands> implements KeypadRe
33
33
  declare readonly nodeDefId: "KeypadRelay" | "KeypadRelay_ADV";
34
34
  constructor (isy: ISY, nodeInfo: NodeInfo) {
35
35
  super(isy, nodeInfo);
36
- this.drivers.ST = Driver.create("ST", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Boolean, label: "Status", name: "status" });
36
+ this.drivers.ST = Driver.create("ST", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
37
37
  this.drivers.ERR = Driver.create("ERR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
38
38
  }
39
39
  async on(value?: (0 | 100)) { return this.sendCommand("DON", value); }
@@ -42,24 +42,26 @@ export class KeypadRelayNode extends Base<Drivers, Commands> implements KeypadRe
42
42
  async fastOn() { return this.sendCommand("DFON"); }
43
43
  async query() { return this.sendCommand("QUERY"); }
44
44
  async beep(value?: number) { return this.sendCommand("BEEP", value); }
45
- async backlight(value: number) { return this.sendCommand("BL", value); }
45
+ async backlight(value: Insteon.Backlight) { return this.sendCommand("BL", value); }
46
46
  async writeChanges() { return this.sendCommand("WDU"); }
47
- public get status(): number {
47
+ public get status(): Insteon.OnLevelRelay {
48
48
  return this.drivers.ST?.value;
49
49
  }
50
50
  public get responding(): Insteon.Error {
51
51
  return this.drivers.ERR?.value;
52
52
  }
53
53
  }
54
-
54
+
55
55
  NodeFactory.register(KeypadRelayNode);
56
56
  NodeFactory.register(KeypadRelayNode, "KeypadRelay_ADV");
57
-
57
+
58
58
  export namespace KeypadRelay {
59
59
  export interface Interface extends Omit<InstanceType<typeof KeypadRelayNode>, keyof ISYDeviceNode<any, any, any, any>> {
60
60
  nodeDefId: "KeypadRelay" | "KeypadRelay_ADV";
61
61
  }
62
- export function is(node: ISYNode<any, any, any, any>): node is KeypadRelayNode { return ["KeypadRelay", "KeypadRelay_ADV"].includes(node.nodeDefId); }
62
+ export function is(node: ISYNode<any, any, any, any>): node is KeypadRelayNode {
63
+ return ["KeypadRelay", "KeypadRelay_ADV"].includes(node.nodeDefId);
64
+ }
63
65
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is KeypadRelayNode {
64
66
  return ["KeypadRelay", "KeypadRelay_ADV"].includes(node.nodeDefId);
65
67
  }
@@ -92,7 +94,7 @@ export namespace KeypadRelay {
92
94
  label: "Beep";
93
95
  name: "beep";
94
96
  };
95
- BL: ((value: number) => Promise<boolean>) & {
97
+ BL: ((value: Insteon.Backlight) => Promise<boolean>) & {
96
98
  label: "Backlight";
97
99
  name: "backlight";
98
100
  };
@@ -103,8 +105,8 @@ export namespace KeypadRelay {
103
105
  };
104
106
  export type Drivers = {
105
107
  ST: {
106
- uom: UnitOfMeasure.Boolean;
107
- value: number;
108
+ uom: UnitOfMeasure.Percent;
109
+ value: Insteon.OnLevelRelay;
108
110
  label: "Status";
109
111
  name: "status";
110
112
  };
@@ -24,10 +24,10 @@ export class OnOffControlNode extends Base<Drivers, Commands> implements OnOffCo
24
24
  declare readonly nodeDefId: "OnOffControl" | "OnOffControl_ADV";
25
25
  constructor (isy: ISY, nodeInfo: NodeInfo) {
26
26
  super(isy, nodeInfo);
27
- this.drivers.ST = Driver.create("ST", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Boolean, label: "Status", name: "status" });
27
+ this.drivers.ST = Driver.create("ST", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
28
28
  this.drivers.ERR = Driver.create("ERR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
29
29
  }
30
- public get status(): Insteon.OnLevelRelay | Insteon.OnLevelRelay {
30
+ public get status(): Insteon.OnLevelRelay {
31
31
  return this.drivers.ST?.value;
32
32
  }
33
33
  public get responding(): Insteon.Error {
@@ -42,7 +42,9 @@ export namespace OnOffControl {
42
42
  export interface Interface extends Omit<InstanceType<typeof OnOffControlNode>, keyof ISYDeviceNode<any, any, any, any>> {
43
43
  nodeDefId: "OnOffControl" | "OnOffControl_ADV";
44
44
  }
45
- export function is(node: ISYNode<any, any, any, any>): node is OnOffControlNode { return ["OnOffControl", "OnOffControl_ADV"].includes(node.nodeDefId); }
45
+ export function is(node: ISYNode<any, any, any, any>): node is OnOffControlNode {
46
+ return ["OnOffControl", "OnOffControl_ADV"].includes(node.nodeDefId);
47
+ }
46
48
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is OnOffControlNode {
47
49
  return ["OnOffControl", "X10", "OnOffControl_ADV"].includes(node.nodeDefId);
48
50
  }
@@ -53,8 +55,8 @@ export namespace OnOffControl {
53
55
  export type Commands = {};
54
56
  export type Drivers = {
55
57
  ST: {
56
- uom: UnitOfMeasure.Boolean | UnitOfMeasure.Percent;
57
- value: Insteon.OnLevelRelay | Insteon.OnLevelRelay;
58
+ uom: UnitOfMeasure.Percent;
59
+ value: Insteon.OnLevelRelay;
58
60
  label: "Status";
59
61
  name: "status";
60
62
  };
@@ -25,7 +25,7 @@ export class Pir2844Node extends Base<Drivers, Commands> implements Pir2844.Inte
25
25
  WDU: this.writeChanges
26
26
  };
27
27
  static override nodeDefId = "PIR2844";
28
- static override implements = ["PIR2844"];
28
+ static override implements = ["PIR2844", "PIR2844C", "PIR2844C_ADV"];
29
29
  declare readonly nodeDefId: "PIR2844" | "PIR2844_ADV";
30
30
  constructor (isy: ISY, nodeInfo: NodeInfo) {
31
31
  super(isy, nodeInfo);
@@ -67,7 +67,9 @@ export namespace Pir2844 {
67
67
  export interface Interface extends Omit<InstanceType<typeof Pir2844Node>, keyof ISYDeviceNode<any, any, any, any>> {
68
68
  nodeDefId: "PIR2844" | "PIR2844_ADV";
69
69
  }
70
- export function is(node: ISYNode<any, any, any, any>): node is Pir2844Node { return ["PIR2844", "PIR2844_ADV"].includes(node.nodeDefId); }
70
+ export function is(node: ISYNode<any, any, any, any>): node is Pir2844Node {
71
+ return ["PIR2844", "PIR2844_ADV"].includes(node.nodeDefId);
72
+ }
71
73
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is Pir2844Node {
72
74
  return ["PIR2844", "PIR2844_ADV"].includes(node.nodeDefId);
73
75
  }
@@ -53,7 +53,9 @@ export namespace Pir2844OnOff {
53
53
  export interface Interface extends Omit<InstanceType<typeof Pir2844OnOffNode>, keyof ISYDeviceNode<any, any, any, any>> {
54
54
  nodeDefId: "PIR2844OnOff" | "PIR2844OnOff_ADV";
55
55
  }
56
- export function is(node: ISYNode<any, any, any, any>): node is Pir2844OnOffNode { return ["PIR2844OnOff", "PIR2844OnOff_ADV"].includes(node.nodeDefId); }
56
+ export function is(node: ISYNode<any, any, any, any>): node is Pir2844OnOffNode {
57
+ return ["PIR2844OnOff", "PIR2844OnOff_ADV"].includes(node.nodeDefId);
58
+ }
57
59
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is Pir2844OnOffNode {
58
60
  return ["PIR2844OnOff", "RelayLampSwitch", "RelayLampSwitch_ADV", "RelayLampSwitchLED", "RelayLampSwitchLED_ADV", "KeypadRelay", "KeypadRelay_ADV", "PIR2844OnOff_ADV"].includes(node.nodeDefId);
59
61
  }
@@ -67,10 +67,12 @@ export namespace Pir2844c {
67
67
  export interface Interface extends Omit<InstanceType<typeof Pir2844cNode>, keyof ISYDeviceNode<any, any, any, any>> {
68
68
  nodeDefId: "PIR2844C" | "PIR2844C_ADV";
69
69
  }
70
- export function is(node: ISYNode<any, any, any, any>): node is Pir2844cNode { return ["PIR2844C", "PIR2844C_ADV"].includes(node.nodeDefId); }
71
- export function isImplementedBy(node: ISYNode<any, any, any, any>): node is Pir2844cNode {
70
+ export function is(node: ISYNode<any, any, any, any>): node is Pir2844cNode {
72
71
  return ["PIR2844C", "PIR2844C_ADV"].includes(node.nodeDefId);
73
72
  }
73
+ export function isImplementedBy(node: ISYNode<any, any, any, any>): node is Pir2844cNode {
74
+ return ["PIR2844C", "PIR2844", "PIR2844_ADV", "PIR2844C_ADV"].includes(node.nodeDefId);
75
+ }
74
76
  export function create(isy: ISY, nodeInfo: NodeInfo) {
75
77
  return new Pir2844cNode(isy, nodeInfo);
76
78
  }
@@ -32,7 +32,7 @@ export class RelayLampNode extends Base<Drivers, Commands> implements RelayLamp.
32
32
  declare readonly nodeDefId: "RelayLampOnly" | "RelayLampOnly_ADV";
33
33
  constructor (isy: ISY, nodeInfo: NodeInfo) {
34
34
  super(isy, nodeInfo);
35
- this.drivers.ST = Driver.create("ST", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Boolean, label: "Status", name: "status" });
35
+ this.drivers.ST = Driver.create("ST", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
36
36
  this.drivers.ERR = Driver.create("ERR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
37
37
  }
38
38
  async on(value?: (0 | 100)) { return this.sendCommand("DON", value); }
@@ -42,7 +42,7 @@ export class RelayLampNode extends Base<Drivers, Commands> implements RelayLamp.
42
42
  async query() { return this.sendCommand("QUERY"); }
43
43
  async beep(value?: number) { return this.sendCommand("BEEP", value); }
44
44
  async writeChanges() { return this.sendCommand("WDU"); }
45
- public get status(): Insteon.OnLevelRelay | Insteon.OnLevelRelay {
45
+ public get status(): Insteon.OnLevelRelay {
46
46
  return this.drivers.ST?.value;
47
47
  }
48
48
  public get responding(): Insteon.Error {
@@ -57,7 +57,9 @@ export namespace RelayLamp {
57
57
  export interface Interface extends Omit<InstanceType<typeof RelayLampNode>, keyof ISYDeviceNode<any, any, any, any>> {
58
58
  nodeDefId: "RelayLampOnly" | "RelayLampOnly_ADV";
59
59
  }
60
- export function is(node: ISYNode<any, any, any, any>): node is RelayLampNode { return ["RelayLampOnly", "RelayLampOnly_ADV"].includes(node.nodeDefId); }
60
+ export function is(node: ISYNode<any, any, any, any>): node is RelayLampNode {
61
+ return ["RelayLampOnly", "RelayLampOnly_ADV"].includes(node.nodeDefId);
62
+ }
61
63
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is RelayLampNode {
62
64
  return ["RelayLampOnly", "BallastRelayLampSwitch", "BallastRelayLampSwitch_ADV", "RelayLampSwitch", "RelayLampSwitch_ADV", "RelayLampSwitchLED", "RelayLampSwitchLED_ADV", "RelayLampOnly_ADV"].includes(node.nodeDefId);
63
65
  }
@@ -97,8 +99,8 @@ export namespace RelayLamp {
97
99
  };
98
100
  export type Drivers = {
99
101
  ST: {
100
- uom: UnitOfMeasure.Boolean | UnitOfMeasure.Percent;
101
- value: Insteon.OnLevelRelay | Insteon.OnLevelRelay;
102
+ uom: UnitOfMeasure.Percent;
103
+ value: Insteon.OnLevelRelay;
102
104
  label: "Status";
103
105
  name: "status";
104
106
  };
@@ -33,7 +33,7 @@ export class RelayLampSwitchNode extends Base<Drivers, Commands> implements Rela
33
33
  declare readonly nodeDefId: "RelayLampSwitch" | "RelayLampSwitch_ADV";
34
34
  constructor (isy: ISY, nodeInfo: NodeInfo) {
35
35
  super(isy, nodeInfo);
36
- this.drivers.ST = Driver.create("ST", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Boolean, label: "Status", name: "status" });
36
+ this.drivers.ST = Driver.create("ST", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
37
37
  this.drivers.ERR = Driver.create("ERR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
38
38
  }
39
39
  async on(value?: (0 | 100)) { return this.sendCommand("DON", value); }
@@ -44,7 +44,7 @@ export class RelayLampSwitchNode extends Base<Drivers, Commands> implements Rela
44
44
  async beep(value?: number) { return this.sendCommand("BEEP", value); }
45
45
  async backlight(value: number) { return this.sendCommand("BL", value); }
46
46
  async writeChanges() { return this.sendCommand("WDU"); }
47
- public get status(): Insteon.OnLevelRelay | Insteon.OnLevelRelay {
47
+ public get status(): Insteon.OnLevelRelay {
48
48
  return this.drivers.ST?.value;
49
49
  }
50
50
  public get responding(): Insteon.Error {
@@ -59,7 +59,9 @@ export namespace RelayLampSwitch {
59
59
  export interface Interface extends Omit<InstanceType<typeof RelayLampSwitchNode>, keyof ISYDeviceNode<any, any, any, any>> {
60
60
  nodeDefId: "RelayLampSwitch" | "RelayLampSwitch_ADV";
61
61
  }
62
- export function is(node: ISYNode<any, any, any, any>): node is RelayLampSwitchNode { return ["RelayLampSwitch", "RelayLampSwitch_ADV"].includes(node.nodeDefId); }
62
+ export function is(node: ISYNode<any, any, any, any>): node is RelayLampSwitchNode {
63
+ return ["RelayLampSwitch", "RelayLampSwitch_ADV"].includes(node.nodeDefId);
64
+ }
63
65
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is RelayLampSwitchNode {
64
66
  return ["RelayLampSwitch", "RelayLampSwitch_ADV"].includes(node.nodeDefId);
65
67
  }
@@ -103,8 +105,8 @@ export namespace RelayLampSwitch {
103
105
  };
104
106
  export type Drivers = {
105
107
  ST: {
106
- uom: UnitOfMeasure.Boolean | UnitOfMeasure.Percent;
107
- value: Insteon.OnLevelRelay | Insteon.OnLevelRelay;
108
+ uom: UnitOfMeasure.Percent;
109
+ value: Insteon.OnLevelRelay;
108
110
  label: "Status";
109
111
  name: "status";
110
112
  };
@@ -34,7 +34,7 @@ export class RelayLampSwitchLedNode extends Base<Drivers, Commands> implements R
34
34
  declare readonly nodeDefId: "RelayLampSwitchLED" | "RelayLampSwitchLED_ADV";
35
35
  constructor (isy: ISY, nodeInfo: NodeInfo) {
36
36
  super(isy, nodeInfo);
37
- this.drivers.ST = Driver.create("ST", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Boolean, label: "Status", name: "status" });
37
+ this.drivers.ST = Driver.create("ST", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Percent, label: "Status", name: "status" });
38
38
  this.drivers.ERR = Driver.create("ERR", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Index, label: "Responding", name: "responding" });
39
39
  }
40
40
  async on(value?: (0 | 100)) { return this.sendCommand("DON", value); }
@@ -43,10 +43,10 @@ export class RelayLampSwitchLedNode extends Base<Drivers, Commands> implements R
43
43
  async fastOn() { return this.sendCommand("DFON"); }
44
44
  async query() { return this.sendCommand("QUERY"); }
45
45
  async beep(value?: number) { return this.sendCommand("BEEP", value); }
46
- async led(value: number) { return this.sendCommand("LED", value); }
46
+ async led(value: Insteon.I3RgbLed) { return this.sendCommand("LED", value); }
47
47
  async backlight(value: number) { return this.sendCommand("BL", value); }
48
48
  async writeChanges() { return this.sendCommand("WDU"); }
49
- public get status(): Insteon.OnLevelRelay | Insteon.OnLevelRelay {
49
+ public get status(): Insteon.OnLevelRelay {
50
50
  return this.drivers.ST?.value;
51
51
  }
52
52
  public get responding(): Insteon.Error {
@@ -61,7 +61,9 @@ export namespace RelayLampSwitchLed {
61
61
  export interface Interface extends Omit<InstanceType<typeof RelayLampSwitchLedNode>, keyof ISYDeviceNode<any, any, any, any>> {
62
62
  nodeDefId: "RelayLampSwitchLED" | "RelayLampSwitchLED_ADV";
63
63
  }
64
- export function is(node: ISYNode<any, any, any, any>): node is RelayLampSwitchLedNode { return ["RelayLampSwitchLED", "RelayLampSwitchLED_ADV"].includes(node.nodeDefId); }
64
+ export function is(node: ISYNode<any, any, any, any>): node is RelayLampSwitchLedNode {
65
+ return ["RelayLampSwitchLED", "RelayLampSwitchLED_ADV"].includes(node.nodeDefId);
66
+ }
65
67
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is RelayLampSwitchLedNode {
66
68
  return ["RelayLampSwitchLED", "RelayLampSwitchLED_ADV"].includes(node.nodeDefId);
67
69
  }
@@ -94,7 +96,7 @@ export namespace RelayLampSwitchLed {
94
96
  label: "Beep";
95
97
  name: "beep";
96
98
  };
97
- LED: ((value: number) => Promise<boolean>) & {
99
+ LED: ((value: Insteon.I3RgbLed) => Promise<boolean>) & {
98
100
  label: "LED";
99
101
  name: "led";
100
102
  };
@@ -109,8 +111,8 @@ export namespace RelayLampSwitchLed {
109
111
  };
110
112
  export type Drivers = {
111
113
  ST: {
112
- uom: UnitOfMeasure.Boolean | UnitOfMeasure.Percent;
113
- value: Insteon.OnLevelRelay | Insteon.OnLevelRelay;
114
+ uom: UnitOfMeasure.Percent;
115
+ value: Insteon.OnLevelRelay;
114
116
  label: "Status";
115
117
  name: "status";
116
118
  };
@@ -45,9 +45,11 @@ export namespace RelaySwitch {
45
45
  export interface Interface extends Omit<InstanceType<typeof RelaySwitchNode>, keyof ISYDeviceNode<any, any, any, any>> {
46
46
  nodeDefId: "RelaySwitchOnly" | "RelaySwitchOnly_ADV";
47
47
  }
48
- export function is(node: ISYNode<any, any, any, any>): node is RelaySwitchNode { return ["RelaySwitchOnly", "RelaySwitchOnly_ADV"].includes(node.nodeDefId); }
48
+ export function is(node: ISYNode<any, any, any, any>): node is RelaySwitchNode {
49
+ return ["RelaySwitchOnly", "RelaySwitchOnly_ADV"].includes(node.nodeDefId);
50
+ }
49
51
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is RelaySwitchNode {
50
- return ["RelaySwitchOnly", "DimmerMotorSwitch", "DimmerMotorSwitch_ADV", "DimmerLampSwitch", "DimmerLampSwitch_ADV", "DimmerLampSwitchLED", "DimmerLampSwitchLED_ADV", "RelayLampSwitch", "RelayLampSwitch_ADV", "RelayLampSwitchLED", "RelayLampSwitchLED_ADV", "RelaySwitchOnlyPlusQuery", "RelaySwitchOnlyPlusQuery_ADV", "RelaySwitchOnly_ADV"].includes(node.nodeDefId);
52
+ return ["RelaySwitchOnly", "DimmerMotorSwitch", "DimmerMotorSwitch_ADV", "DimmerLampSwitch", "DimmerLampSwitch_ADV", "DimmerLampSwitchLED", "DimmerLampSwitchLED_ADV", "KeypadDimmer", "KeypadDimmer_ADV", "RelayLampSwitch", "RelayLampSwitch_ADV", "RelayLampSwitchLED", "RelayLampSwitchLED_ADV", "RelaySwitchOnlyPlusQuery", "RelaySwitchOnlyPlusQuery_ADV", "RelaySwitchOnly_ADV"].includes(node.nodeDefId);
51
53
  }
52
54
  export function create(isy: ISY, nodeInfo: NodeInfo) {
53
55
  return new RelaySwitchNode(isy, nodeInfo);
@@ -47,9 +47,11 @@ export namespace RelaySwitchOnlyPlusQuery {
47
47
  export interface Interface extends Omit<InstanceType<typeof RelaySwitchOnlyPlusQueryNode>, keyof ISYDeviceNode<any, any, any, any>> {
48
48
  nodeDefId: "RelaySwitchOnlyPlusQuery" | "RelaySwitchOnlyPlusQuery_ADV";
49
49
  }
50
- export function is(node: ISYNode<any, any, any, any>): node is RelaySwitchOnlyPlusQueryNode { return ["RelaySwitchOnlyPlusQuery", "RelaySwitchOnlyPlusQuery_ADV"].includes(node.nodeDefId); }
50
+ export function is(node: ISYNode<any, any, any, any>): node is RelaySwitchOnlyPlusQueryNode {
51
+ return ["RelaySwitchOnlyPlusQuery", "RelaySwitchOnlyPlusQuery_ADV"].includes(node.nodeDefId);
52
+ }
51
53
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is RelaySwitchOnlyPlusQueryNode {
52
- return ["RelaySwitchOnlyPlusQuery", "DimmerMotorSwitch", "DimmerMotorSwitch_ADV", "DimmerLampSwitch", "DimmerLampSwitch_ADV", "DimmerLampSwitchLED", "DimmerLampSwitchLED_ADV", "RelayLampSwitch", "RelayLampSwitch_ADV", "RelayLampSwitchLED", "RelayLampSwitchLED_ADV", "RelaySwitchOnlyPlusQuery_ADV"].includes(node.nodeDefId);
54
+ return ["RelaySwitchOnlyPlusQuery", "DimmerMotorSwitch", "DimmerMotorSwitch_ADV", "DimmerLampSwitch", "DimmerLampSwitch_ADV", "DimmerLampSwitchLED", "DimmerLampSwitchLED_ADV", "KeypadDimmer", "KeypadDimmer_ADV", "RelayLampSwitch", "RelayLampSwitch_ADV", "RelayLampSwitchLED", "RelayLampSwitchLED_ADV", "RelaySwitchOnlyPlusQuery_ADV"].includes(node.nodeDefId);
53
55
  }
54
56
  export function create(isy: ISY, nodeInfo: NodeInfo) {
55
57
  return new RelaySwitchOnlyPlusQueryNode(isy, nodeInfo);
@@ -45,7 +45,9 @@ export namespace RemoteLinc2 {
45
45
  export interface Interface extends Omit<InstanceType<typeof RemoteLinc2Node>, keyof ISYDeviceNode<any, any, any, any>> {
46
46
  nodeDefId: "RemoteLinc2" | "RemoteLinc2_ADV";
47
47
  }
48
- export function is(node: ISYNode<any, any, any, any>): node is RemoteLinc2Node { return ["RemoteLinc2", "RemoteLinc2_ADV"].includes(node.nodeDefId); }
48
+ export function is(node: ISYNode<any, any, any, any>): node is RemoteLinc2Node {
49
+ return ["RemoteLinc2", "RemoteLinc2_ADV"].includes(node.nodeDefId);
50
+ }
49
51
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is RemoteLinc2Node {
50
52
  return ["RemoteLinc2", "DimmerMotorSwitch", "DimmerMotorSwitch_ADV", "DimmerLampSwitch", "DimmerLampSwitch_ADV", "DimmerLampSwitchLED", "DimmerLampSwitchLED_ADV", "KeypadDimmer", "KeypadDimmer_ADV", "RemoteLinc2_ADV"].includes(node.nodeDefId);
51
53
  }
@@ -69,7 +69,9 @@ export namespace Siren {
69
69
  export interface Interface extends Omit<InstanceType<typeof SirenNode>, keyof ISYDeviceNode<any, any, any, any>> {
70
70
  nodeDefId: "Siren" | "Siren_ADV";
71
71
  }
72
- export function is(node: ISYNode<any, any, any, any>): node is SirenNode { return ["Siren", "Siren_ADV"].includes(node.nodeDefId); }
72
+ export function is(node: ISYNode<any, any, any, any>): node is SirenNode {
73
+ return ["Siren", "Siren_ADV"].includes(node.nodeDefId);
74
+ }
73
75
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is SirenNode {
74
76
  return ["Siren", "Siren_ADV"].includes(node.nodeDefId);
75
77
  }
@@ -38,7 +38,9 @@ export namespace SirenAlert {
38
38
  export interface Interface extends Omit<InstanceType<typeof SirenAlertNode>, keyof ISYDeviceNode<any, any, any, any>> {
39
39
  nodeDefId: "SirenAlert" | "SirenArm";
40
40
  }
41
- export function is(node: ISYNode<any, any, any, any>): node is SirenAlertNode { return ["SirenAlert", "SirenArm"].includes(node.nodeDefId); }
41
+ export function is(node: ISYNode<any, any, any, any>): node is SirenAlertNode {
42
+ return ["SirenAlert", "SirenArm"].includes(node.nodeDefId);
43
+ }
42
44
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is SirenAlertNode {
43
45
  return ["SirenAlert", "X10", "Thermostat", "TempLinc", "OnOffControl", "OnOffControl_ADV", "DimmerMotorSwitch", "DimmerMotorSwitch_ADV", "DimmerLampSwitch", "DimmerLampSwitch_ADV", "DimmerLampSwitchLED", "DimmerLampSwitchLED_ADV", "DimmerSwitchOnly", "DimmerSwitchOnly_ADV", "DimmerLampOnly", "KeypadDimmer", "KeypadDimmer_ADV", "BallastRelayLampSwitch", "BallastRelayLampSwitch_ADV", "RelayLampSwitch", "RelayLampSwitch_ADV", "RelayLampSwitchLED", "RelayLampSwitchLED_ADV", "RelaySwitchOnlyPlusQuery", "RelaySwitchOnlyPlusQuery_ADV", "RelaySwitchOnly", "RelaySwitchOnly_ADV", "RelayLampOnly", "RelayLampOnly_ADV", "KeypadRelay", "KeypadRelay_ADV", "RemoteLinc2", "RemoteLinc2_ADV", "IRLincTx", "FanLincMotor", "KeypadButton", "KeypadButton_ADV", "EZRAIN_Output", "EZRAIN_Input", "EZRAIN_Input_ADV", "EZIO2x4_Output", "EZIO2x4_Input", "EZIO2x4_Input_ADV", "IMETER_SOLO", "DoorLock", "BinaryAlarm", "BinaryAlarm_ADV", "BinaryControl", "BinaryControl_ADV", "AlertModuleSiren", "AlertModuleSiren_ADV", "AlertModuleArmed", "Siren", "Siren_ADV", "SirenArm", "PIR2844_ADV", "PIR2844C_ADV", "PIR2844OnOff_ADV"].includes(node.nodeDefId);
44
46
  }
@@ -86,7 +86,9 @@ export namespace TempLinc {
86
86
  export interface Interface extends Omit<InstanceType<typeof TempLincNode>, keyof ISYDeviceNode<any, any, any, any>> {
87
87
  nodeDefId: "TempLinc";
88
88
  }
89
- export function is(node: ISYNode<any, any, any, any>): node is TempLincNode { return ["TempLinc"].includes(node.nodeDefId); }
89
+ export function is(node: ISYNode<any, any, any, any>): node is TempLincNode {
90
+ return ["TempLinc"].includes(node.nodeDefId);
91
+ }
90
92
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is TempLincNode {
91
93
  return ["TempLinc", "Thermostat"].includes(node.nodeDefId);
92
94
  }
@@ -86,7 +86,9 @@ export namespace Thermostat {
86
86
  export interface Interface extends Omit<InstanceType<typeof ThermostatNode>, keyof ISYDeviceNode<any, any, any, any>> {
87
87
  nodeDefId: "Thermostat";
88
88
  }
89
- export function is(node: ISYNode<any, any, any, any>): node is ThermostatNode { return ["Thermostat"].includes(node.nodeDefId); }
89
+ export function is(node: ISYNode<any, any, any, any>): node is ThermostatNode {
90
+ return ["Thermostat"].includes(node.nodeDefId);
91
+ }
90
92
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is ThermostatNode {
91
93
  return ["Thermostat"].includes(node.nodeDefId);
92
94
  }
@@ -52,7 +52,9 @@ export namespace X10 {
52
52
  export interface Interface extends Omit<InstanceType<typeof X10Node>, keyof ISYDeviceNode<any, any, any, any>> {
53
53
  nodeDefId: "X10";
54
54
  }
55
- export function is(node: ISYNode<any, any, any, any>): node is X10Node { return ["X10"].includes(node.nodeDefId); }
55
+ export function is(node: ISYNode<any, any, any, any>): node is X10Node {
56
+ return ["X10"].includes(node.nodeDefId);
57
+ }
56
58
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is X10Node {
57
59
  return ["X10"].includes(node.nodeDefId);
58
60
  }
@@ -48,7 +48,9 @@ export namespace LoadShed {
48
48
  export interface Interface extends Omit<InstanceType<typeof LoadShedNode>, keyof ISYDeviceNode<any, any, any, any>> {
49
49
  nodeDefId: "LUTLoadShed";
50
50
  }
51
- export function is(node: ISYNode<any, any, any, any>): node is LoadShedNode { return ["LUTLoadShed"].includes(node.nodeDefId); }
51
+ export function is(node: ISYNode<any, any, any, any>): node is LoadShedNode {
52
+ return ["LUTLoadShed"].includes(node.nodeDefId);
53
+ }
52
54
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is LoadShedNode {
53
55
  return ["LUTLoadShed"].includes(node.nodeDefId);
54
56
  }
@@ -50,7 +50,9 @@ export namespace Relay {
50
50
  export interface Interface extends Omit<InstanceType<typeof RelayNode>, keyof ISYDeviceNode<any, any, any, any>> {
51
51
  nodeDefId: "NCDRelay";
52
52
  }
53
- export function is(node: ISYNode<any, any, any, any>): node is RelayNode { return ["NCDRelay"].includes(node.nodeDefId); }
53
+ export function is(node: ISYNode<any, any, any, any>): node is RelayNode {
54
+ return ["NCDRelay"].includes(node.nodeDefId);
55
+ }
54
56
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is RelayNode {
55
57
  return ["NCDRelay"].includes(node.nodeDefId);
56
58
  }
@@ -47,7 +47,9 @@ export namespace MatterBridge {
47
47
  export interface Interface extends Omit<InstanceType<typeof MatterBridgeNode>, keyof ISYDeviceNode<any, any, any, any>> {
48
48
  nodeDefId: "CONTROLLER";
49
49
  }
50
- export function is(node: ISYNode<any, any, any, any>): node is MatterBridgeNode { return ["CONTROLLER"].includes(node.nodeDefId); }
50
+ export function is(node: ISYNode<any, any, any, any>): node is MatterBridgeNode {
51
+ return ["CONTROLLER"].includes(node.nodeDefId);
52
+ }
51
53
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is MatterBridgeNode {
52
54
  return ["CONTROLLER"].includes(node.nodeDefId);
53
55
  }
@@ -68,7 +68,9 @@ export namespace Scene {
68
68
  export interface Interface extends Omit<InstanceType<typeof SceneNode>, keyof ISYDeviceNode<any, any, any, any>> {
69
69
  nodeDefId: "InsteonDimmer";
70
70
  }
71
- export function is(node: ISYNode<any, any, any, any>): node is SceneNode { return ["InsteonDimmer"].includes(node.nodeDefId); }
71
+ export function is(node: ISYNode<any, any, any, any>): node is SceneNode {
72
+ return ["InsteonDimmer"].includes(node.nodeDefId);
73
+ }
72
74
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is SceneNode {
73
75
  return ["InsteonDimmer"].includes(node.nodeDefId);
74
76
  }
@@ -45,7 +45,9 @@ export namespace Channel {
45
45
  export interface Interface extends Omit<InstanceType<typeof ChannelNode>, keyof ISYDeviceNode<any, any, any, any>> {
46
46
  nodeDefId: "EM3Channel";
47
47
  }
48
- export function is(node: ISYNode<any, any, any, any>): node is ChannelNode { return ["EM3Channel"].includes(node.nodeDefId); }
48
+ export function is(node: ISYNode<any, any, any, any>): node is ChannelNode {
49
+ return ["EM3Channel"].includes(node.nodeDefId);
50
+ }
49
51
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is ChannelNode {
50
52
  return ["EM3Channel", "EM3Main", "EM3MainChannel"].includes(node.nodeDefId);
51
53
  }
@@ -57,7 +57,9 @@ export namespace Em3MainChannel {
57
57
  export interface Interface extends Omit<InstanceType<typeof Em3MainChannelNode>, keyof ISYDeviceNode<any, any, any, any>> {
58
58
  nodeDefId: "EM3MainChannel";
59
59
  }
60
- export function is(node: ISYNode<any, any, any, any>): node is Em3MainChannelNode { return ["EM3MainChannel"].includes(node.nodeDefId); }
60
+ export function is(node: ISYNode<any, any, any, any>): node is Em3MainChannelNode {
61
+ return ["EM3MainChannel"].includes(node.nodeDefId);
62
+ }
61
63
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is Em3MainChannelNode {
62
64
  return ["EM3MainChannel"].includes(node.nodeDefId);
63
65
  }
@@ -48,7 +48,9 @@ export namespace Main {
48
48
  export interface Interface extends Omit<InstanceType<typeof MainNode>, keyof ISYDeviceNode<any, any, any, any>> {
49
49
  nodeDefId: "EM3Main";
50
50
  }
51
- export function is(node: ISYNode<any, any, any, any>): node is MainNode { return ["EM3Main"].includes(node.nodeDefId); }
51
+ export function is(node: ISYNode<any, any, any, any>): node is MainNode {
52
+ return ["EM3Main"].includes(node.nodeDefId);
53
+ }
52
54
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is MainNode {
53
55
  return ["EM3Main"].includes(node.nodeDefId);
54
56
  }
@@ -49,7 +49,9 @@ export namespace PulseCounter {
49
49
  export interface Interface extends Omit<InstanceType<typeof PulseCounterNode>, keyof ISYDeviceNode<any, any, any, any>> {
50
50
  nodeDefId: "EM3PulseCounter";
51
51
  }
52
- export function is(node: ISYNode<any, any, any, any>): node is PulseCounterNode { return ["EM3PulseCounter"].includes(node.nodeDefId); }
52
+ export function is(node: ISYNode<any, any, any, any>): node is PulseCounterNode {
53
+ return ["EM3PulseCounter"].includes(node.nodeDefId);
54
+ }
53
55
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is PulseCounterNode {
54
56
  return ["EM3PulseCounter"].includes(node.nodeDefId);
55
57
  }
@@ -48,7 +48,9 @@ export namespace Relay {
48
48
  export interface Interface extends Omit<InstanceType<typeof RelayNode>, keyof ISYDeviceNode<any, any, any, any>> {
49
49
  nodeDefId: "EM3Relay";
50
50
  }
51
- export function is(node: ISYNode<any, any, any, any>): node is RelayNode { return ["EM3Relay"].includes(node.nodeDefId); }
51
+ export function is(node: ISYNode<any, any, any, any>): node is RelayNode {
52
+ return ["EM3Relay"].includes(node.nodeDefId);
53
+ }
52
54
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is RelayNode {
53
55
  return ["EM3Relay"].includes(node.nodeDefId);
54
56
  }
@@ -41,7 +41,9 @@ export namespace TemperatureSensor {
41
41
  export interface Interface extends Omit<InstanceType<typeof TemperatureSensorNode>, keyof ISYDeviceNode<any, any, any, any>> {
42
42
  nodeDefId: "EM3TempSensor";
43
43
  }
44
- export function is(node: ISYNode<any, any, any, any>): node is TemperatureSensorNode { return ["EM3TempSensor"].includes(node.nodeDefId); }
44
+ export function is(node: ISYNode<any, any, any, any>): node is TemperatureSensorNode {
45
+ return ["EM3TempSensor"].includes(node.nodeDefId);
46
+ }
45
47
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is TemperatureSensorNode {
46
48
  return ["EM3TempSensor"].includes(node.nodeDefId);
47
49
  }
@@ -34,10 +34,11 @@ export class ColorSwitchNode extends Base<Drivers, Commands> implements ColorSwi
34
34
  this.drivers.GV2 = Driver.create("GV2", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Raw1ByteUnsignedValue, label: "Red", name: "red" });
35
35
  this.drivers.GV3 = Driver.create("GV3", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Raw1ByteUnsignedValue, label: "Green", name: "green" });
36
36
  this.drivers.GV4 = Driver.create("GV4", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Raw1ByteUnsignedValue, label: "Blue", name: "blue" });
37
+ this.drivers.GV1 = Driver.create("GV1", this, nodeInfo.property as DriverState, { uom: UnitOfMeasure.Raw1ByteUnsignedValue, label: "Cold White", name: "coldWhite" });
37
38
  }
38
- async set(warmWhite?: number, red?: number, green?: number, blue?: number, duration?: number | number) { return this.sendCommand("DON", { GV0: warmWhite, GV2: red, GV3: green, GV4: blue, RR: duration }); }
39
- async fadeUp(component: ZWave.ColorComponent, startLevel?: number, duration?: number | number) { return this.sendCommand("FDUP", { ID: component, STARTLEVEL: startLevel, RR: duration }); }
40
- async fadeDown(component: ZWave.ColorComponent, startLevel?: number, duration?: number | number) { return this.sendCommand("FDDOWN", { ID: component, STARTLEVEL: startLevel, RR: duration }); }
39
+ async set(warmWhite?: number, red?: number, green?: number, blue?: number, duration?: number, coldWhite?: number) { return this.sendCommand("DON", { GV0: warmWhite, GV2: red, GV3: green, GV4: blue, RR: duration, GV1: coldWhite }); }
40
+ async fadeUp(component: ZWave.ColorComponent, startLevel?: number, duration?: number) { return this.sendCommand("FDUP", { ID: component, STARTLEVEL: startLevel, RR: duration }); }
41
+ async fadeDown(component: ZWave.ColorComponent, startLevel?: number, duration?: number) { return this.sendCommand("FDDOWN", { ID: component, STARTLEVEL: startLevel, RR: duration }); }
41
42
  async fadeStop(component: ZWave.ColorComponent) { return this.sendCommand("FDSTOP", { ID: component }); }
42
43
  async query() { return this.sendCommand("QUERY"); }
43
44
  public get warmWhite(): number {
@@ -52,6 +53,9 @@ export class ColorSwitchNode extends Base<Drivers, Commands> implements ColorSwi
52
53
  public get blue(): number {
53
54
  return this.drivers.GV4?.value;
54
55
  }
56
+ public get coldWhite(): number {
57
+ return this.drivers.GV1?.value;
58
+ }
55
59
  }
56
60
 
57
61
  NodeFactory.register(ColorSwitchNode);
@@ -60,7 +64,9 @@ export namespace ColorSwitch {
60
64
  export interface Interface extends Omit<InstanceType<typeof ColorSwitchNode>, keyof ISYDeviceNode<any, any, any, any>> {
61
65
  nodeDefId: "186";
62
66
  }
63
- export function is(node: ISYNode<any, any, any, any>): node is ColorSwitchNode { return ["186"].includes(node.nodeDefId); }
67
+ export function is(node: ISYNode<any, any, any, any>): node is ColorSwitchNode {
68
+ return ["186"].includes(node.nodeDefId);
69
+ }
64
70
  export function isImplementedBy(node: ISYNode<any, any, any, any>): node is ColorSwitchNode {
65
71
  return ["186"].includes(node.nodeDefId);
66
72
  }
@@ -69,15 +75,15 @@ export namespace ColorSwitch {
69
75
  }
70
76
  export const Node = ColorSwitchNode;
71
77
  export type Commands = {
72
- DON: ((GV0?: number, GV2?: number, GV3?: number, GV4?: number, RR?: number | number) => Promise<boolean>) & {
78
+ DON: ((GV0?: number, GV2?: number, GV3?: number, GV4?: number, RR?: number, GV1?: number) => Promise<boolean>) & {
73
79
  label: "Set";
74
80
  name: "set";
75
81
  };
76
- FDUP: ((ID: ZWave.ColorComponent, STARTLEVEL?: number, RR?: number | number) => Promise<boolean>) & {
82
+ FDUP: ((ID: ZWave.ColorComponent, STARTLEVEL?: number, RR?: number) => Promise<boolean>) & {
77
83
  label: "Fade Up";
78
84
  name: "fadeUp";
79
85
  };
80
- FDDOWN: ((ID: ZWave.ColorComponent, STARTLEVEL?: number, RR?: number | number) => Promise<boolean>) & {
86
+ FDDOWN: ((ID: ZWave.ColorComponent, STARTLEVEL?: number, RR?: number) => Promise<boolean>) & {
81
87
  label: "Fade Down";
82
88
  name: "fadeDown";
83
89
  };
@@ -115,5 +121,11 @@ export namespace ColorSwitch {
115
121
  label: "Blue";
116
122
  name: "blue";
117
123
  };
124
+ GV1: {
125
+ uom: UnitOfMeasure.Raw1ByteUnsignedValue;
126
+ value: number;
127
+ label: "Cold White";
128
+ name: "coldWhite";
129
+ };
118
130
  };
119
131
  }