zigbee-herdsman 0.55.5 → 0.56.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (336) hide show
  1. package/.release-please-manifest.json +1 -1
  2. package/CHANGELOG.md +14 -0
  3. package/dist/adapter/adapter.d.ts +16 -8
  4. package/dist/adapter/adapter.d.ts.map +1 -1
  5. package/dist/adapter/adapter.js +4 -2
  6. package/dist/adapter/adapter.js.map +1 -1
  7. package/dist/adapter/deconz/adapter/deconzAdapter.d.ts +11 -11
  8. package/dist/adapter/deconz/adapter/deconzAdapter.d.ts.map +1 -1
  9. package/dist/adapter/deconz/adapter/deconzAdapter.js +98 -91
  10. package/dist/adapter/deconz/adapter/deconzAdapter.js.map +1 -1
  11. package/dist/adapter/deconz/adapter/index.d.ts.map +1 -1
  12. package/dist/adapter/deconz/adapter/index.js +0 -2
  13. package/dist/adapter/deconz/adapter/index.js.map +1 -1
  14. package/dist/adapter/deconz/driver/driver.d.ts +13 -13
  15. package/dist/adapter/deconz/driver/driver.d.ts.map +1 -1
  16. package/dist/adapter/deconz/driver/driver.js +124 -126
  17. package/dist/adapter/deconz/driver/driver.js.map +1 -1
  18. package/dist/adapter/deconz/driver/frame.d.ts.map +1 -1
  19. package/dist/adapter/deconz/driver/frame.js +1 -1
  20. package/dist/adapter/deconz/driver/frame.js.map +1 -1
  21. package/dist/adapter/deconz/driver/frameParser.d.ts +3 -1
  22. package/dist/adapter/deconz/driver/frameParser.d.ts.map +1 -1
  23. package/dist/adapter/deconz/driver/frameParser.js +31 -29
  24. package/dist/adapter/deconz/driver/frameParser.js.map +1 -1
  25. package/dist/adapter/deconz/driver/parser.d.ts +3 -4
  26. package/dist/adapter/deconz/driver/parser.d.ts.map +1 -1
  27. package/dist/adapter/deconz/driver/parser.js +3 -28
  28. package/dist/adapter/deconz/driver/parser.js.map +1 -1
  29. package/dist/adapter/ember/adapter/emberAdapter.d.ts +7 -8
  30. package/dist/adapter/ember/adapter/emberAdapter.d.ts.map +1 -1
  31. package/dist/adapter/ember/adapter/emberAdapter.js +63 -78
  32. package/dist/adapter/ember/adapter/emberAdapter.js.map +1 -1
  33. package/dist/adapter/ember/adapter/oneWaitress.d.ts.map +1 -1
  34. package/dist/adapter/ember/adapter/oneWaitress.js +5 -2
  35. package/dist/adapter/ember/adapter/oneWaitress.js.map +1 -1
  36. package/dist/adapter/ember/adapter/tokensManager.d.ts +1 -1
  37. package/dist/adapter/ember/adapter/tokensManager.d.ts.map +1 -1
  38. package/dist/adapter/ember/adapter/tokensManager.js +2 -2
  39. package/dist/adapter/ember/adapter/tokensManager.js.map +1 -1
  40. package/dist/adapter/ember/ezsp/buffalo.d.ts +1 -3
  41. package/dist/adapter/ember/ezsp/buffalo.d.ts.map +1 -1
  42. package/dist/adapter/ember/ezsp/buffalo.js +11 -34
  43. package/dist/adapter/ember/ezsp/buffalo.js.map +1 -1
  44. package/dist/adapter/ember/ezsp/ezsp.d.ts +22 -38
  45. package/dist/adapter/ember/ezsp/ezsp.d.ts.map +1 -1
  46. package/dist/adapter/ember/ezsp/ezsp.js +36 -65
  47. package/dist/adapter/ember/ezsp/ezsp.js.map +1 -1
  48. package/dist/adapter/ember/types.d.ts +16 -23
  49. package/dist/adapter/ember/types.d.ts.map +1 -1
  50. package/dist/adapter/ember/uart/ash.d.ts +6 -22
  51. package/dist/adapter/ember/uart/ash.d.ts.map +1 -1
  52. package/dist/adapter/ember/uart/ash.js +97 -115
  53. package/dist/adapter/ember/uart/ash.js.map +1 -1
  54. package/dist/adapter/ember/uart/queues.d.ts +9 -9
  55. package/dist/adapter/ember/uart/queues.d.ts.map +1 -1
  56. package/dist/adapter/ember/uart/queues.js +26 -25
  57. package/dist/adapter/ember/uart/queues.js.map +1 -1
  58. package/dist/adapter/events.d.ts +1 -9
  59. package/dist/adapter/events.d.ts.map +1 -1
  60. package/dist/adapter/events.js +0 -10
  61. package/dist/adapter/events.js.map +1 -1
  62. package/dist/adapter/ezsp/adapter/backup.d.ts +1 -1
  63. package/dist/adapter/ezsp/adapter/backup.d.ts.map +1 -1
  64. package/dist/adapter/ezsp/adapter/backup.js +6 -6
  65. package/dist/adapter/ezsp/adapter/backup.js.map +1 -1
  66. package/dist/adapter/ezsp/adapter/ezspAdapter.d.ts +6 -6
  67. package/dist/adapter/ezsp/adapter/ezspAdapter.d.ts.map +1 -1
  68. package/dist/adapter/ezsp/adapter/ezspAdapter.js +24 -29
  69. package/dist/adapter/ezsp/adapter/ezspAdapter.js.map +1 -1
  70. package/dist/adapter/ezsp/adapter/index.d.ts.map +1 -1
  71. package/dist/adapter/ezsp/adapter/index.js +0 -2
  72. package/dist/adapter/ezsp/adapter/index.js.map +1 -1
  73. package/dist/adapter/ezsp/driver/commands.d.ts +2 -2
  74. package/dist/adapter/ezsp/driver/commands.d.ts.map +1 -1
  75. package/dist/adapter/ezsp/driver/commands.js +111 -111
  76. package/dist/adapter/ezsp/driver/commands.js.map +1 -1
  77. package/dist/adapter/ezsp/driver/driver.d.ts +0 -1
  78. package/dist/adapter/ezsp/driver/driver.d.ts.map +1 -1
  79. package/dist/adapter/ezsp/driver/driver.js +20 -11
  80. package/dist/adapter/ezsp/driver/driver.js.map +1 -1
  81. package/dist/adapter/ezsp/driver/ezsp.d.ts +2 -2
  82. package/dist/adapter/ezsp/driver/ezsp.d.ts.map +1 -1
  83. package/dist/adapter/ezsp/driver/ezsp.js +7 -8
  84. package/dist/adapter/ezsp/driver/ezsp.js.map +1 -1
  85. package/dist/adapter/ezsp/driver/index.d.ts.map +1 -1
  86. package/dist/adapter/ezsp/driver/index.js +0 -1
  87. package/dist/adapter/ezsp/driver/index.js.map +1 -1
  88. package/dist/adapter/ezsp/driver/multicast.js +1 -1
  89. package/dist/adapter/ezsp/driver/multicast.js.map +1 -1
  90. package/dist/adapter/ezsp/driver/parser.d.ts +1 -2
  91. package/dist/adapter/ezsp/driver/parser.d.ts.map +1 -1
  92. package/dist/adapter/ezsp/driver/parser.js +2 -8
  93. package/dist/adapter/ezsp/driver/parser.js.map +1 -1
  94. package/dist/adapter/ezsp/driver/types/basic.d.ts.map +1 -1
  95. package/dist/adapter/ezsp/driver/types/basic.js +0 -1
  96. package/dist/adapter/ezsp/driver/types/basic.js.map +1 -1
  97. package/dist/adapter/ezsp/driver/types/index.d.ts +1 -1
  98. package/dist/adapter/ezsp/driver/types/index.d.ts.map +1 -1
  99. package/dist/adapter/ezsp/driver/types/index.js +0 -1
  100. package/dist/adapter/ezsp/driver/types/index.js.map +1 -1
  101. package/dist/adapter/ezsp/driver/types/named.d.ts.map +1 -1
  102. package/dist/adapter/ezsp/driver/types/named.js +0 -1
  103. package/dist/adapter/ezsp/driver/types/named.js.map +1 -1
  104. package/dist/adapter/ezsp/driver/types/struct.d.ts.map +1 -1
  105. package/dist/adapter/ezsp/driver/types/struct.js +62 -1
  106. package/dist/adapter/ezsp/driver/types/struct.js.map +1 -1
  107. package/dist/adapter/ezsp/driver/uart.d.ts +2 -3
  108. package/dist/adapter/ezsp/driver/uart.d.ts.map +1 -1
  109. package/dist/adapter/ezsp/driver/uart.js +8 -12
  110. package/dist/adapter/ezsp/driver/uart.js.map +1 -1
  111. package/dist/adapter/ezsp/driver/utils/crc16ccitt.d.ts +3 -1
  112. package/dist/adapter/ezsp/driver/utils/crc16ccitt.d.ts.map +1 -1
  113. package/dist/adapter/ezsp/driver/utils/crc16ccitt.js.map +1 -1
  114. package/dist/adapter/ezsp/driver/utils/index.d.ts +1 -15
  115. package/dist/adapter/ezsp/driver/utils/index.d.ts.map +1 -1
  116. package/dist/adapter/ezsp/driver/utils/index.js +1 -39
  117. package/dist/adapter/ezsp/driver/utils/index.js.map +1 -1
  118. package/dist/adapter/serialPort.d.ts +7 -2
  119. package/dist/adapter/serialPort.d.ts.map +1 -1
  120. package/dist/adapter/serialPort.js +5 -0
  121. package/dist/adapter/serialPort.js.map +1 -1
  122. package/dist/adapter/z-stack/adapter/adapter-backup.d.ts +1 -1
  123. package/dist/adapter/z-stack/adapter/adapter-backup.d.ts.map +1 -1
  124. package/dist/adapter/z-stack/adapter/adapter-backup.js +25 -17
  125. package/dist/adapter/z-stack/adapter/adapter-backup.js.map +1 -1
  126. package/dist/adapter/z-stack/adapter/adapter-nv-memory.d.ts +1 -1
  127. package/dist/adapter/z-stack/adapter/adapter-nv-memory.d.ts.map +1 -1
  128. package/dist/adapter/z-stack/adapter/adapter-nv-memory.js +27 -12
  129. package/dist/adapter/z-stack/adapter/adapter-nv-memory.js.map +1 -1
  130. package/dist/adapter/z-stack/adapter/manager.d.ts.map +1 -1
  131. package/dist/adapter/z-stack/adapter/manager.js +10 -9
  132. package/dist/adapter/z-stack/adapter/manager.js.map +1 -1
  133. package/dist/adapter/z-stack/adapter/zStackAdapter.d.ts +6 -6
  134. package/dist/adapter/z-stack/adapter/zStackAdapter.d.ts.map +1 -1
  135. package/dist/adapter/z-stack/adapter/zStackAdapter.js +37 -30
  136. package/dist/adapter/z-stack/adapter/zStackAdapter.js.map +1 -1
  137. package/dist/adapter/z-stack/structs/entries/address-manager-entry.d.ts.map +1 -1
  138. package/dist/adapter/z-stack/structs/entries/address-manager-entry.js +0 -2
  139. package/dist/adapter/z-stack/structs/entries/address-manager-entry.js.map +1 -1
  140. package/dist/adapter/z-stack/structs/entries/address-manager-table.d.ts.map +1 -1
  141. package/dist/adapter/z-stack/structs/entries/address-manager-table.js +5 -0
  142. package/dist/adapter/z-stack/structs/entries/address-manager-table.js.map +1 -1
  143. package/dist/adapter/z-stack/structs/entries/aps-link-key-data-entry.d.ts.map +1 -1
  144. package/dist/adapter/z-stack/structs/entries/aps-link-key-data-entry.js +0 -1
  145. package/dist/adapter/z-stack/structs/entries/aps-link-key-data-entry.js.map +1 -1
  146. package/dist/adapter/z-stack/structs/entries/aps-link-key-data-table.d.ts.map +1 -1
  147. package/dist/adapter/z-stack/structs/entries/aps-link-key-data-table.js +5 -0
  148. package/dist/adapter/z-stack/structs/entries/aps-link-key-data-table.js.map +1 -1
  149. package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-entry.d.ts.map +1 -1
  150. package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-entry.js +0 -1
  151. package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-entry.js.map +1 -1
  152. package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-table.d.ts.map +1 -1
  153. package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-table.js +5 -0
  154. package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-table.js.map +1 -1
  155. package/dist/adapter/z-stack/structs/entries/channel-list.d.ts.map +1 -1
  156. package/dist/adapter/z-stack/structs/entries/channel-list.js +0 -1
  157. package/dist/adapter/z-stack/structs/entries/channel-list.js.map +1 -1
  158. package/dist/adapter/z-stack/structs/entries/has-configured.d.ts +1 -1
  159. package/dist/adapter/z-stack/structs/entries/has-configured.d.ts.map +1 -1
  160. package/dist/adapter/z-stack/structs/entries/has-configured.js +11 -5
  161. package/dist/adapter/z-stack/structs/entries/has-configured.js.map +1 -1
  162. package/dist/adapter/z-stack/structs/entries/nib.d.ts +1 -1
  163. package/dist/adapter/z-stack/structs/entries/nib.d.ts.map +1 -1
  164. package/dist/adapter/z-stack/structs/entries/nib.js +5 -1
  165. package/dist/adapter/z-stack/structs/entries/nib.js.map +1 -1
  166. package/dist/adapter/z-stack/structs/entries/nwk-key-descriptor.d.ts +1 -1
  167. package/dist/adapter/z-stack/structs/entries/nwk-key-descriptor.d.ts.map +1 -1
  168. package/dist/adapter/z-stack/structs/entries/nwk-key-descriptor.js +8 -2
  169. package/dist/adapter/z-stack/structs/entries/nwk-key-descriptor.js.map +1 -1
  170. package/dist/adapter/z-stack/structs/entries/nwk-key.d.ts +1 -1
  171. package/dist/adapter/z-stack/structs/entries/nwk-key.d.ts.map +1 -1
  172. package/dist/adapter/z-stack/structs/entries/nwk-key.js +8 -2
  173. package/dist/adapter/z-stack/structs/entries/nwk-key.js.map +1 -1
  174. package/dist/adapter/z-stack/structs/entries/nwk-pan-id.d.ts.map +1 -1
  175. package/dist/adapter/z-stack/structs/entries/nwk-pan-id.js +0 -1
  176. package/dist/adapter/z-stack/structs/entries/nwk-pan-id.js.map +1 -1
  177. package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-entry.d.ts.map +1 -1
  178. package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-entry.js +0 -1
  179. package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-entry.js.map +1 -1
  180. package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-table.d.ts.map +1 -1
  181. package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-table.js +5 -0
  182. package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-table.js.map +1 -1
  183. package/dist/adapter/z-stack/structs/entries/security-manager-entry.d.ts.map +1 -1
  184. package/dist/adapter/z-stack/structs/entries/security-manager-entry.js +0 -1
  185. package/dist/adapter/z-stack/structs/entries/security-manager-entry.js.map +1 -1
  186. package/dist/adapter/z-stack/structs/entries/security-manager-table.d.ts.map +1 -1
  187. package/dist/adapter/z-stack/structs/entries/security-manager-table.js +6 -0
  188. package/dist/adapter/z-stack/structs/entries/security-manager-table.js.map +1 -1
  189. package/dist/adapter/z-stack/structs/struct.d.ts.map +1 -1
  190. package/dist/adapter/z-stack/structs/struct.js +11 -1
  191. package/dist/adapter/z-stack/structs/struct.js.map +1 -1
  192. package/dist/adapter/z-stack/structs/table.d.ts +1 -1
  193. package/dist/adapter/z-stack/structs/table.d.ts.map +1 -1
  194. package/dist/adapter/z-stack/structs/table.js +18 -13
  195. package/dist/adapter/z-stack/structs/table.js.map +1 -1
  196. package/dist/adapter/z-stack/unpi/frame.d.ts +2 -2
  197. package/dist/adapter/z-stack/unpi/frame.d.ts.map +1 -1
  198. package/dist/adapter/z-stack/unpi/frame.js +1 -1
  199. package/dist/adapter/z-stack/unpi/frame.js.map +1 -1
  200. package/dist/adapter/z-stack/unpi/parser.js +1 -1
  201. package/dist/adapter/z-stack/unpi/parser.js.map +1 -1
  202. package/dist/adapter/z-stack/utils/network-options.js +1 -1
  203. package/dist/adapter/z-stack/utils/network-options.js.map +1 -1
  204. package/dist/adapter/z-stack/znp/znp.d.ts +5 -6
  205. package/dist/adapter/z-stack/znp/znp.d.ts.map +1 -1
  206. package/dist/adapter/z-stack/znp/znp.js +19 -26
  207. package/dist/adapter/z-stack/znp/znp.js.map +1 -1
  208. package/dist/adapter/z-stack/znp/zpiObject.d.ts.map +1 -1
  209. package/dist/adapter/z-stack/znp/zpiObject.js +2 -2
  210. package/dist/adapter/z-stack/znp/zpiObject.js.map +1 -1
  211. package/dist/adapter/zigate/adapter/zigateAdapter.d.ts +9 -9
  212. package/dist/adapter/zigate/adapter/zigateAdapter.d.ts.map +1 -1
  213. package/dist/adapter/zigate/adapter/zigateAdapter.js +92 -118
  214. package/dist/adapter/zigate/adapter/zigateAdapter.js.map +1 -1
  215. package/dist/adapter/zigate/driver/buffaloZiGate.d.ts +1 -1
  216. package/dist/adapter/zigate/driver/buffaloZiGate.d.ts.map +1 -1
  217. package/dist/adapter/zigate/driver/buffaloZiGate.js +3 -3
  218. package/dist/adapter/zigate/driver/buffaloZiGate.js.map +1 -1
  219. package/dist/adapter/zigate/driver/commandType.d.ts.map +1 -1
  220. package/dist/adapter/zigate/driver/commandType.js +3 -2
  221. package/dist/adapter/zigate/driver/commandType.js.map +1 -1
  222. package/dist/adapter/zigate/driver/constants.d.ts +7 -1
  223. package/dist/adapter/zigate/driver/constants.d.ts.map +1 -1
  224. package/dist/adapter/zigate/driver/constants.js +1 -2
  225. package/dist/adapter/zigate/driver/constants.js.map +1 -1
  226. package/dist/adapter/zigate/driver/frame.d.ts.map +1 -1
  227. package/dist/adapter/zigate/driver/frame.js +3 -4
  228. package/dist/adapter/zigate/driver/frame.js.map +1 -1
  229. package/dist/adapter/zigate/driver/messageType.d.ts.map +1 -1
  230. package/dist/adapter/zigate/driver/messageType.js +1 -2
  231. package/dist/adapter/zigate/driver/messageType.js.map +1 -1
  232. package/dist/adapter/zigate/driver/ziGateObject.d.ts +5 -5
  233. package/dist/adapter/zigate/driver/ziGateObject.d.ts.map +1 -1
  234. package/dist/adapter/zigate/driver/ziGateObject.js +8 -9
  235. package/dist/adapter/zigate/driver/ziGateObject.js.map +1 -1
  236. package/dist/adapter/zigate/driver/zigate.d.ts +7 -10
  237. package/dist/adapter/zigate/driver/zigate.d.ts.map +1 -1
  238. package/dist/adapter/zigate/driver/zigate.js +33 -39
  239. package/dist/adapter/zigate/driver/zigate.js.map +1 -1
  240. package/dist/controller/controller.d.ts +18 -6
  241. package/dist/controller/controller.d.ts.map +1 -1
  242. package/dist/controller/controller.js +95 -103
  243. package/dist/controller/controller.js.map +1 -1
  244. package/dist/controller/events.d.ts +2 -13
  245. package/dist/controller/events.d.ts.map +1 -1
  246. package/dist/controller/events.js +0 -13
  247. package/dist/controller/events.js.map +1 -1
  248. package/dist/controller/greenPower.d.ts +6 -2
  249. package/dist/controller/greenPower.d.ts.map +1 -1
  250. package/dist/controller/greenPower.js +17 -13
  251. package/dist/controller/greenPower.js.map +1 -1
  252. package/dist/controller/helpers/request.d.ts +1 -1
  253. package/dist/controller/helpers/request.d.ts.map +1 -1
  254. package/dist/controller/helpers/request.js.map +1 -1
  255. package/dist/controller/helpers/requestQueue.d.ts.map +1 -1
  256. package/dist/controller/helpers/requestQueue.js +1 -1
  257. package/dist/controller/helpers/requestQueue.js.map +1 -1
  258. package/dist/controller/helpers/zclFrameConverter.d.ts +2 -2
  259. package/dist/controller/helpers/zclFrameConverter.d.ts.map +1 -1
  260. package/dist/controller/helpers/zclFrameConverter.js.map +1 -1
  261. package/dist/controller/model/device.d.ts +30 -28
  262. package/dist/controller/model/device.d.ts.map +1 -1
  263. package/dist/controller/model/device.js +41 -29
  264. package/dist/controller/model/device.js.map +1 -1
  265. package/dist/controller/model/endpoint.d.ts +5 -2
  266. package/dist/controller/model/endpoint.d.ts.map +1 -1
  267. package/dist/controller/model/endpoint.js +92 -93
  268. package/dist/controller/model/endpoint.js.map +1 -1
  269. package/dist/controller/model/entity.d.ts +5 -3
  270. package/dist/controller/model/entity.d.ts.map +1 -1
  271. package/dist/controller/model/entity.js +2 -2
  272. package/dist/controller/model/entity.js.map +1 -1
  273. package/dist/controller/model/group.d.ts +1 -0
  274. package/dist/controller/model/group.d.ts.map +1 -1
  275. package/dist/controller/model/group.js +36 -28
  276. package/dist/controller/model/group.js.map +1 -1
  277. package/dist/controller/touchlink.d.ts.map +1 -1
  278. package/dist/controller/touchlink.js +6 -5
  279. package/dist/controller/touchlink.js.map +1 -1
  280. package/dist/controller/tstype.d.ts +1 -4
  281. package/dist/controller/tstype.d.ts.map +1 -1
  282. package/dist/controller/tstype.js +0 -5
  283. package/dist/controller/tstype.js.map +1 -1
  284. package/dist/models/backup-storage-unified.d.ts +2 -2
  285. package/dist/models/backup-storage-unified.d.ts.map +1 -1
  286. package/dist/models/backup.d.ts +1 -1
  287. package/dist/models/backup.d.ts.map +1 -1
  288. package/dist/utils/backup.d.ts.map +1 -1
  289. package/dist/utils/backup.js +20 -52
  290. package/dist/utils/backup.js.map +1 -1
  291. package/dist/utils/index.d.ts +2 -3
  292. package/dist/utils/index.d.ts.map +1 -1
  293. package/dist/utils/index.js +3 -5
  294. package/dist/utils/index.js.map +1 -1
  295. package/dist/utils/logger.d.ts +1 -1
  296. package/dist/utils/logger.d.ts.map +1 -1
  297. package/dist/utils/queue.d.ts.map +1 -1
  298. package/dist/utils/queue.js +8 -8
  299. package/dist/utils/queue.js.map +1 -1
  300. package/dist/utils/utils.d.ts +5 -0
  301. package/dist/utils/utils.d.ts.map +1 -0
  302. package/dist/utils/utils.js +24 -0
  303. package/dist/utils/utils.js.map +1 -0
  304. package/dist/zspec/index.js +0 -10
  305. package/dist/zspec/index.js.map +1 -1
  306. package/dist/zspec/utils.d.ts.map +1 -1
  307. package/dist/zspec/utils.js +7 -1
  308. package/dist/zspec/utils.js.map +1 -1
  309. package/dist/zspec/zcl/buffaloZcl.js +12 -12
  310. package/dist/zspec/zcl/buffaloZcl.js.map +1 -1
  311. package/dist/zspec/zcl/utils.d.ts +1 -1
  312. package/dist/zspec/zcl/utils.d.ts.map +1 -1
  313. package/dist/zspec/zcl/utils.js +21 -20
  314. package/dist/zspec/zcl/utils.js.map +1 -1
  315. package/dist/zspec/zcl/zclFrame.d.ts +3 -3
  316. package/dist/zspec/zcl/zclFrame.d.ts.map +1 -1
  317. package/dist/zspec/zcl/zclFrame.js +10 -17
  318. package/dist/zspec/zcl/zclFrame.js.map +1 -1
  319. package/dist/zspec/zcl/zclHeader.d.ts +2 -2
  320. package/dist/zspec/zcl/zclHeader.d.ts.map +1 -1
  321. package/dist/zspec/zcl/zclHeader.js +3 -3
  322. package/dist/zspec/zcl/zclHeader.js.map +1 -1
  323. package/dist/zspec/zdo/buffaloZdo.d.ts +1 -1
  324. package/dist/zspec/zdo/buffaloZdo.d.ts.map +1 -1
  325. package/dist/zspec/zdo/buffaloZdo.js +12 -8
  326. package/dist/zspec/zdo/buffaloZdo.js.map +1 -1
  327. package/package.json +3 -3
  328. package/tsconfig.json +1 -0
  329. package/dist/utils/assertString.d.ts +0 -3
  330. package/dist/utils/assertString.d.ts.map +0 -1
  331. package/dist/utils/assertString.js +0 -9
  332. package/dist/utils/assertString.js.map +0 -1
  333. package/dist/utils/isNumberArray.d.ts +0 -3
  334. package/dist/utils/isNumberArray.d.ts.map +0 -1
  335. package/dist/utils/isNumberArray.js +0 -7
  336. package/dist/utils/isNumberArray.js.map +0 -1
@@ -7,17 +7,16 @@ class Queue {
7
7
  this.jobs = [];
8
8
  this.concurrent = concurrent;
9
9
  }
10
- async execute(func, key = null) {
11
- const job = { key, running: false, start: null };
12
- // Minor optimization/workaround: various tests like the idea that a job that is
13
- // immediately runnable is run without an event loop spin. This also helps with stack
14
- // traces in some cases, so avoid an `await` if we can help it.
10
+ async execute(func, key) {
11
+ const job = { key, running: false };
15
12
  this.jobs.push(job);
13
+ // Minor optimization/workaround: various tests like the idea that a job that is immediately runnable is run without an event loop spin.
14
+ // This also helps with stack traces in some cases, so avoid an `await` if we can help it.
16
15
  if (this.getNext() !== job) {
17
16
  await new Promise((resolve) => {
18
17
  job.start = () => {
19
18
  job.running = true;
20
- resolve(null);
19
+ resolve();
21
20
  };
22
21
  this.executeNext();
23
22
  });
@@ -36,12 +35,13 @@ class Queue {
36
35
  executeNext() {
37
36
  const job = this.getNext();
38
37
  if (job) {
38
+ // if we get here, start is always defined for job
39
39
  job.start();
40
40
  }
41
41
  }
42
42
  getNext() {
43
43
  if (this.jobs.filter((j) => j.running).length > this.concurrent - 1) {
44
- return null;
44
+ return undefined;
45
45
  }
46
46
  for (let i = 0; i < this.jobs.length; i++) {
47
47
  const job = this.jobs[i];
@@ -49,7 +49,7 @@ class Queue {
49
49
  return job;
50
50
  }
51
51
  }
52
- return null;
52
+ return undefined;
53
53
  }
54
54
  clear() {
55
55
  this.jobs = [];
@@ -1 +1 @@
1
- {"version":3,"file":"queue.js","sourceRoot":"","sources":["../../src/utils/queue.ts"],"names":[],"mappings":";;AAMA,MAAM,KAAK;IACC,IAAI,CAAQ;IACH,UAAU,CAAS;IAEpC,YAAY,UAAU,GAAG,CAAC;QACtB,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;QACf,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IACjC,CAAC;IAEM,KAAK,CAAC,OAAO,CAAI,IAAsB,EAAE,MAAuB,IAAI;QACvE,MAAM,GAAG,GAAQ,EAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAC,CAAC;QACpD,gFAAgF;QAChF,qFAAqF;QACrF,+DAA+D;QAC/D,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACpB,IAAI,IAAI,CAAC,OAAO,EAAE,KAAK,GAAG,EAAE,CAAC;YACzB,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAQ,EAAE;gBAChC,GAAG,CAAC,KAAK,GAAG,GAAS,EAAE;oBACnB,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC;oBACnB,OAAO,CAAC,IAAI,CAAC,CAAC;gBAClB,CAAC,CAAC;gBACF,IAAI,CAAC,WAAW,EAAE,CAAC;YACvB,CAAC,CAAC,CAAC;QACP,CAAC;aAAM,CAAC;YACJ,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC;QACvB,CAAC;QAED,IAAI,CAAC;YACD,OAAO,MAAM,IAAI,EAAE,CAAC;QACxB,CAAC;gBAAS,CAAC;YACP,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;YAC5C,IAAI,CAAC,WAAW,EAAE,CAAC;QACvB,CAAC;IACL,CAAC;IAEO,WAAW;QACf,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAE3B,IAAI,GAAG,EAAE,CAAC;YACN,GAAG,CAAC,KAAK,EAAE,CAAC;QAChB,CAAC;IACL,CAAC;IAEO,OAAO;QACX,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC;YAClE,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACxC,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAEzB,IAAI,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;gBACvF,OAAO,GAAG,CAAC;YACf,CAAC;QACL,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,KAAK;QACR,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;IACnB,CAAC;IAEM,KAAK;QACR,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;IAC5B,CAAC;CACJ;AAED,kBAAe,KAAK,CAAC"}
1
+ {"version":3,"file":"queue.js","sourceRoot":"","sources":["../../src/utils/queue.ts"],"names":[],"mappings":";;AAMA,MAAM,KAAK;IACC,IAAI,CAAQ;IACH,UAAU,CAAS;IAEpC,YAAY,UAAU,GAAG,CAAC;QACtB,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;QACf,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IACjC,CAAC;IAEM,KAAK,CAAC,OAAO,CAAI,IAAsB,EAAE,GAAqB;QACjE,MAAM,GAAG,GAAQ,EAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAC,CAAC;QACvC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAEpB,wIAAwI;QACxI,0FAA0F;QAC1F,IAAI,IAAI,CAAC,OAAO,EAAE,KAAK,GAAG,EAAE,CAAC;YACzB,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAQ,EAAE;gBACtC,GAAG,CAAC,KAAK,GAAG,GAAS,EAAE;oBACnB,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC;oBACnB,OAAO,EAAE,CAAC;gBACd,CAAC,CAAC;gBAEF,IAAI,CAAC,WAAW,EAAE,CAAC;YACvB,CAAC,CAAC,CAAC;QACP,CAAC;aAAM,CAAC;YACJ,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC;QACvB,CAAC;QAED,IAAI,CAAC;YACD,OAAO,MAAM,IAAI,EAAE,CAAC;QACxB,CAAC;gBAAS,CAAC;YACP,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;YAC5C,IAAI,CAAC,WAAW,EAAE,CAAC;QACvB,CAAC;IACL,CAAC;IAEO,WAAW;QACf,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAE3B,IAAI,GAAG,EAAE,CAAC;YACN,kDAAkD;YAClD,GAAG,CAAC,KAAM,EAAE,CAAC;QACjB,CAAC;IACL,CAAC;IAEO,OAAO;QACX,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC;YAClE,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACxC,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAEzB,IAAI,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;gBACvF,OAAO,GAAG,CAAC;YACf,CAAC;QACL,CAAC;QAED,OAAO,SAAS,CAAC;IACrB,CAAC;IAEM,KAAK;QACR,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;IACnB,CAAC;IAEM,KAAK;QACR,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;IAC5B,CAAC;CACJ;AAED,kBAAe,KAAK,CAAC"}
@@ -0,0 +1,5 @@
1
+ export declare function isNumberArray(value: unknown): value is number[];
2
+ export declare function isNumberArrayOfLength(value: unknown, length: number): boolean;
3
+ export declare function assertString(input: unknown): asserts input is string;
4
+ export declare function isObjectEmpty(object: object): boolean;
5
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils/utils.ts"],"names":[],"mappings":"AAAA,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,EAAE,CAE/D;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAE7E;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,KAAK,IAAI,MAAM,CAIpE;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAIrD"}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isNumberArray = isNumberArray;
4
+ exports.isNumberArrayOfLength = isNumberArrayOfLength;
5
+ exports.assertString = assertString;
6
+ exports.isObjectEmpty = isObjectEmpty;
7
+ function isNumberArray(value) {
8
+ return value instanceof Array && value.every((item) => typeof item === 'number');
9
+ }
10
+ function isNumberArrayOfLength(value, length) {
11
+ return isNumberArray(value) && value.length === length;
12
+ }
13
+ function assertString(input) {
14
+ if (typeof input !== 'string') {
15
+ throw new Error('Input must be a string!');
16
+ }
17
+ }
18
+ function isObjectEmpty(object) {
19
+ // much faster than checking `Object.keys(object).length`
20
+ for (const k in object)
21
+ return false;
22
+ return true;
23
+ }
24
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils/utils.ts"],"names":[],"mappings":";;AAAA,sCAEC;AAED,sDAEC;AAED,oCAIC;AAED,sCAIC;AAlBD,SAAgB,aAAa,CAAC,KAAc;IACxC,OAAO,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC;AACrF,CAAC;AAED,SAAgB,qBAAqB,CAAC,KAAc,EAAE,MAAc;IAChE,OAAO,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC;AAC3D,CAAC;AAED,SAAgB,YAAY,CAAC,KAAc;IACvC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;AACL,CAAC;AAED,SAAgB,aAAa,CAAC,MAAc;IACxC,yDAAyD;IACzD,KAAK,MAAM,CAAC,IAAI,MAAM;QAAE,OAAO,KAAK,CAAC;IACrC,OAAO,IAAI,CAAC;AAChB,CAAC"}
@@ -30,14 +30,4 @@ exports.Utils = void 0;
30
30
  __exportStar(require("./consts"), exports);
31
31
  __exportStar(require("./enums"), exports);
32
32
  exports.Utils = __importStar(require("./utils"));
33
- // TODO: TBD:
34
- // export Zcl/Zdo nested here, or just in root index.ts?
35
- // export * as Zcl from './zcl';
36
- // export * as Zdo from './zdo';
37
- // resulting in:
38
- // import {ZSpec, Zcl, Zdo} from 'zigbee-herdsman';
39
- // vs
40
- // import {ZSpec} from 'zigbee-herdsman';
41
- // ZSpec.Zcl;
42
- // ZSpec.Zdo;
43
33
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/zspec/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,0CAAwB;AACxB,iDAAiC;AAEjC,aAAa;AACb,wDAAwD;AACxD,gCAAgC;AAChC,gCAAgC;AAEhC,gBAAgB;AAChB,mDAAmD;AACnD,KAAK;AACL,yCAAyC;AACzC,aAAa;AACb,aAAa"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/zspec/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,0CAAwB;AACxB,iDAAiC"}
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/zspec/utils.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,aAAc,MAAM,EAAE,KAAG,MAEzD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,SAAU,MAAM,KAAG,MAAM,EAEzD,CAAC;AAEF,eAAO,MAAM,kBAAkB,YAAa,MAAM,KAAG,OAOpD,CAAC"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/zspec/utils.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,aAAc,MAAM,EAAE,KAAG,MAEzD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,SAAU,MAAM,KAAG,MAAM,EAUzD,CAAC;AAEF,eAAO,MAAM,kBAAkB,YAAa,MAAM,KAAG,OAOpD,CAAC"}
@@ -18,7 +18,13 @@ exports.channelsToUInt32Mask = channelsToUInt32Mask;
18
18
  * @returns
19
19
  */
20
20
  const uint32MaskToChannels = (mask) => {
21
- return consts_1.ALL_802_15_4_CHANNELS.map((c) => ((2 ** c) & mask ? c : null)).filter((x) => x);
21
+ const channels = [];
22
+ for (const channel of consts_1.ALL_802_15_4_CHANNELS) {
23
+ if ((2 ** channel) & mask) {
24
+ channels.push(channel);
25
+ }
26
+ }
27
+ return channels;
22
28
  };
23
29
  exports.uint32MaskToChannels = uint32MaskToChannels;
24
30
  const isBroadcastAddress = (address) => {
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/zspec/utils.ts"],"names":[],"mappings":";;;AAAA,qCAA+C;AAC/C,mCAAyC;AAEzC;;;;GAIG;AACI,MAAM,oBAAoB,GAAG,CAAC,QAAkB,EAAU,EAAE;IAC/D,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACtD,CAAC,CAAC;AAFW,QAAA,oBAAoB,wBAE/B;AAEF;;;;GAIG;AACI,MAAM,oBAAoB,GAAG,CAAC,IAAY,EAAY,EAAE;IAC3D,OAAO,8BAAqB,CAAC,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;AACnG,CAAC,CAAC;AAFW,QAAA,oBAAoB,wBAE/B;AAEK,MAAM,kBAAkB,GAAG,CAAC,OAAe,EAAW,EAAE;IAC3D,OAAO,CACH,OAAO,KAAK,wBAAgB,CAAC,OAAO;QACpC,OAAO,KAAK,wBAAgB,CAAC,eAAe;QAC5C,OAAO,KAAK,wBAAgB,CAAC,MAAM;QACnC,OAAO,KAAK,wBAAgB,CAAC,iBAAiB,CACjD,CAAC;AACN,CAAC,CAAC;AAPW,QAAA,kBAAkB,sBAO7B"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/zspec/utils.ts"],"names":[],"mappings":";;;AAAA,qCAA+C;AAC/C,mCAAyC;AAEzC;;;;GAIG;AACI,MAAM,oBAAoB,GAAG,CAAC,QAAkB,EAAU,EAAE;IAC/D,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACtD,CAAC,CAAC;AAFW,QAAA,oBAAoB,wBAE/B;AAEF;;;;GAIG;AACI,MAAM,oBAAoB,GAAG,CAAC,IAAY,EAAY,EAAE;IAC3D,MAAM,QAAQ,GAAa,EAAE,CAAC;IAE9B,KAAK,MAAM,OAAO,IAAI,8BAAqB,EAAE,CAAC;QAC1C,IAAI,CAAC,CAAC,IAAI,OAAO,CAAC,GAAG,IAAI,EAAE,CAAC;YACxB,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC3B,CAAC;IACL,CAAC;IAED,OAAO,QAAQ,CAAC;AACpB,CAAC,CAAC;AAVW,QAAA,oBAAoB,wBAU/B;AAEK,MAAM,kBAAkB,GAAG,CAAC,OAAe,EAAW,EAAE;IAC3D,OAAO,CACH,OAAO,KAAK,wBAAgB,CAAC,OAAO;QACpC,OAAO,KAAK,wBAAgB,CAAC,eAAe;QAC5C,OAAO,KAAK,wBAAgB,CAAC,MAAM;QACnC,OAAO,KAAK,wBAAgB,CAAC,iBAAiB,CACjD,CAAC;AACN,CAAC,CAAC;AAPW,QAAA,kBAAkB,sBAO7B"}
@@ -25,8 +25,8 @@ var __importStar = (this && this.__importStar) || function (mod) {
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
26
  exports.BuffaloZcl = void 0;
27
27
  const buffalo_1 = require("../../buffalo");
28
- const utils_1 = require("../../utils");
29
28
  const logger_1 = require("../../utils/logger");
29
+ const utils_1 = require("../../utils/utils");
30
30
  const enums_1 = require("./definition/enums");
31
31
  const Utils = __importStar(require("./utils"));
32
32
  const NS = 'zh:zcl:buffalo';
@@ -208,14 +208,14 @@ class BuffaloZcl extends buffalo_1.Buffalo {
208
208
  const seconds = this.readUInt8();
209
209
  const hundredths = this.readUInt8();
210
210
  return {
211
- hours: hours < 0xff ? hours : null,
212
- minutes: minutes < 0xff ? minutes : null,
213
- seconds: seconds < 0xff ? seconds : null,
214
- hundredths: hundredths < 0xff ? hundredths : null,
211
+ hours: hours < 0xff ? hours : undefined,
212
+ minutes: minutes < 0xff ? minutes : undefined,
213
+ seconds: seconds < 0xff ? seconds : undefined,
214
+ hundredths: hundredths < 0xff ? hundredths : undefined,
215
215
  };
216
216
  }
217
217
  writeDate(value) {
218
- this.writeUInt8(value.year != null ? value.year - 1900 : 0xff);
218
+ this.writeUInt8(value.year != undefined ? value.year - 1900 : 0xff);
219
219
  this.writeUInt8(value.month ?? 0xff);
220
220
  this.writeUInt8(value.dayOfMonth ?? 0xff);
221
221
  this.writeUInt8(value.dayOfWeek ?? 0xff);
@@ -226,10 +226,10 @@ class BuffaloZcl extends buffalo_1.Buffalo {
226
226
  const dayOfMonth = this.readUInt8();
227
227
  const dayOfWeek = this.readUInt8();
228
228
  return {
229
- year: year < 0xff ? year + 1900 : null,
230
- month: month < 0xff ? month : null,
231
- dayOfMonth: dayOfMonth < 0xff ? dayOfMonth : null,
232
- dayOfWeek: dayOfWeek < 0xff ? dayOfWeek : null,
229
+ year: year < 0xff ? year + 1900 : undefined,
230
+ month: month < 0xff ? month : undefined,
231
+ dayOfMonth: dayOfMonth < 0xff ? dayOfMonth : undefined,
232
+ dayOfWeek: dayOfWeek < 0xff ? dayOfWeek : undefined,
233
233
  };
234
234
  }
235
235
  //--- BuffaloZclDataType
@@ -670,7 +670,7 @@ class BuffaloZcl extends buffalo_1.Buffalo {
670
670
  }
671
671
  case enums_1.BuffaloZclDataType.USE_DATA_TYPE: {
672
672
  if (options.dataType == null) {
673
- if (Buffer.isBuffer(value) || (0, utils_1.IsNumberArray)(value)) {
673
+ if (Buffer.isBuffer(value) || (0, utils_1.isNumberArray)(value)) {
674
674
  return this.writeBuffer(value, value.length);
675
675
  }
676
676
  else {
@@ -722,7 +722,7 @@ class BuffaloZcl extends buffalo_1.Buffalo {
722
722
  default: {
723
723
  // In case the type is undefined, write it as a buffer to easily allow for custom types
724
724
  // e.g. for https://github.com/Koenkk/zigbee-herdsman/issues/127
725
- if (Buffer.isBuffer(value) || (0, utils_1.IsNumberArray)(value)) {
725
+ if (Buffer.isBuffer(value) || (0, utils_1.isNumberArray)(value)) {
726
726
  return this.writeBuffer(value, value.length);
727
727
  }
728
728
  }
@@ -1 +1 @@
1
- {"version":3,"file":"buffaloZcl.js","sourceRoot":"","sources":["../../../src/zspec/zcl/buffaloZcl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"buffaloZcl.js","sourceRoot":"","sources":["../../../src/zspec/zcl/buffaloZcl.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import { DataType, DataTypeClass } from './definition/enums';
2
2
  import { FoundationDefinition } from './definition/foundation';
3
3
  import { Cluster, ClusterName, Command, CustomClusters } from './definition/tstype';
4
4
  export declare function getDataTypeClass(dataType: DataType): DataTypeClass;
5
- export declare function getCluster(key: string | number, manufacturerCode: number | null, customClusters: CustomClusters): Cluster;
5
+ export declare function getCluster(key: string | number, manufacturerCode: number | undefined, customClusters: CustomClusters): Cluster;
6
6
  export declare function getGlobalCommand(key: number | string): Command;
7
7
  export declare function isClusterName(name: string): name is ClusterName;
8
8
  export declare function getFoundationCommand(id: number): FoundationDefinition;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/zspec/zcl/utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,QAAQ,EAAE,aAAa,EAAC,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAa,oBAAoB,EAAwB,MAAM,yBAAyB,CAAC;AAChG,OAAO,EAAY,OAAO,EAAqB,WAAW,EAAE,OAAO,EAAE,cAAc,EAAC,MAAM,qBAAqB,CAAC;AAkEhH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,GAAG,aAAa,CAQlE;AAsMD,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,gBAAgB,EAAE,MAAM,GAAG,IAAI,EAAE,cAAc,EAAE,cAAc,GAAG,OAAO,CAGzH;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CA+B9D;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,WAAW,CAE/D;AAED,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,MAAM,GAAG,oBAAoB,CAQrE;AAED,wBAAgB,uBAAuB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAE3D"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/zspec/zcl/utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,QAAQ,EAAE,aAAa,EAAC,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAa,oBAAoB,EAAwB,MAAM,yBAAyB,CAAC;AAChG,OAAO,EAAY,OAAO,EAAqB,WAAW,EAAE,OAAO,EAAE,cAAc,EAAC,MAAM,qBAAqB,CAAC;AAkEhH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,GAAG,aAAa,CAQlE;AA8MD,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,gBAAgB,EAAE,MAAM,GAAG,SAAS,EAAE,cAAc,EAAE,cAAc,GAAG,OAAO,CAG9H;AAYD,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAmB9D;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,WAAW,CAE/D;AAED,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,MAAM,GAAG,oBAAoB,CAUrE;AAED,wBAAgB,uBAAuB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAE3D"}
@@ -92,7 +92,7 @@ function hasCustomClusters(customClusters) {
92
92
  function findClusterNameByID(id, manufacturerCode, clusters) {
93
93
  let name;
94
94
  // if manufacturer code is given, consider partial match if didn't match against manufacturer code
95
- let partialMatch = manufacturerCode != null;
95
+ let partialMatch = Boolean(manufacturerCode);
96
96
  for (const clusterName in clusters) {
97
97
  const cluster = clusters[clusterName];
98
98
  if (cluster.ID === id) {
@@ -127,7 +127,7 @@ function getClusterDefinition(key, manufacturerCode, customClusters) {
127
127
  let zclName;
128
128
  [zclName, partialMatch] = findClusterNameByID(key, manufacturerCode, cluster_1.Clusters);
129
129
  // Zcl clusters contain a better match, use that one
130
- if (zclName != undefined && !partialMatch) {
130
+ if (zclName !== undefined && !partialMatch) {
131
131
  name = zclName;
132
132
  }
133
133
  }
@@ -135,7 +135,7 @@ function getClusterDefinition(key, manufacturerCode, customClusters) {
135
135
  else {
136
136
  name = key;
137
137
  }
138
- let cluster = name != undefined && hasCustomClusters(customClusters)
138
+ let cluster = name !== undefined && hasCustomClusters(customClusters)
139
139
  ? {
140
140
  ...cluster_1.Clusters[name],
141
141
  ...customClusters[name], // should override Zcl clusters
@@ -144,28 +144,31 @@ function getClusterDefinition(key, manufacturerCode, customClusters) {
144
144
  if (!cluster) {
145
145
  if (typeof key === 'number') {
146
146
  name = key.toString();
147
- cluster = { attributes: {}, commands: {}, commandsResponse: {}, manufacturerCode: null, ID: key };
147
+ cluster = { attributes: {}, commands: {}, commandsResponse: {}, manufacturerCode: undefined, ID: key };
148
148
  }
149
149
  else {
150
- throw new Error(`Cluster with name '${key}' does not exist`);
150
+ name = undefined;
151
151
  }
152
152
  }
153
+ if (!name) {
154
+ throw new Error(`Cluster with name '${key}' does not exist`);
155
+ }
153
156
  return { name, cluster };
154
157
  }
155
- function createCluster(name, cluster, manufacturerCode = null) {
158
+ function createCluster(name, cluster, manufacturerCode) {
156
159
  const attributes = Object.assign({}, ...Object.entries(cluster.attributes).map(([k, v]) => ({ [k]: { ...v, name: k } })));
157
160
  const commands = Object.assign({}, ...Object.entries(cluster.commands).map(([k, v]) => ({ [k]: { ...v, name: k } })));
158
161
  const commandsResponse = Object.assign({}, ...Object.entries(cluster.commandsResponse).map(([k, v]) => ({ [k]: { ...v, name: k } })));
159
162
  const getAttributeInternal = (key) => {
160
163
  if (typeof key === 'number') {
161
- let partialMatchAttr = null;
164
+ let partialMatchAttr;
162
165
  for (const attrKey in attributes) {
163
166
  const attr = attributes[attrKey];
164
167
  if (attr.ID === key) {
165
168
  if (manufacturerCode && attr.manufacturerCode === manufacturerCode) {
166
169
  return attr;
167
170
  }
168
- if (attr.manufacturerCode == null) {
171
+ if (attr.manufacturerCode == undefined) {
169
172
  partialMatchAttr = attr;
170
173
  }
171
174
  }
@@ -180,7 +183,7 @@ function createCluster(name, cluster, manufacturerCode = null) {
180
183
  }
181
184
  }
182
185
  }
183
- return null;
186
+ return undefined;
184
187
  };
185
188
  const getAttribute = (key) => {
186
189
  const result = getAttributeInternal(key);
@@ -248,19 +251,16 @@ function getCluster(key, manufacturerCode, customClusters) {
248
251
  const { name, cluster } = getClusterDefinition(key, manufacturerCode, customClusters);
249
252
  return createCluster(name, cluster, manufacturerCode);
250
253
  }
251
- function getGlobalCommand(key) {
252
- let name;
253
- if (typeof key === 'number') {
254
- for (const commandName in foundation_1.Foundation) {
255
- if (foundation_1.Foundation[commandName].ID === key) {
256
- name = commandName;
257
- break;
258
- }
254
+ function getGlobalCommandNameById(id) {
255
+ for (const commandName in foundation_1.Foundation) {
256
+ if (foundation_1.Foundation[commandName].ID === id) {
257
+ return commandName;
259
258
  }
260
259
  }
261
- else {
262
- name = key;
263
- }
260
+ throw new Error(`Global command with id '${id}' does not exist.`);
261
+ }
262
+ function getGlobalCommand(key) {
263
+ const name = typeof key === 'number' ? getGlobalCommandNameById(key) : key;
264
264
  const command = foundation_1.Foundation[name];
265
265
  if (!command) {
266
266
  throw new Error(`Global command with key '${key}' does not exist`);
@@ -285,6 +285,7 @@ function getFoundationCommand(id) {
285
285
  return command;
286
286
  }
287
287
  }
288
+ throw new Error(`Foundation command '${id}' does not exist.`);
288
289
  }
289
290
  function isFoundationDiscoverRsp(id) {
290
291
  return FOUNDATION_DISCOVER_RSP_IDS.includes(id);
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/zspec/zcl/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/zspec/zcl/utils.ts"],"names":[],"mappings":"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"}
@@ -13,14 +13,14 @@ export declare class ZclFrame {
13
13
  /**
14
14
  * Creating
15
15
  */
16
- static create(frameType: FrameType, direction: Direction, disableDefaultResponse: boolean, manufacturerCode: number | null, transactionSequenceNumber: number, commandKey: number | string, clusterKey: number | string, payload: ZclPayload, customClusters: CustomClusters, reservedBits?: number): ZclFrame;
16
+ static create(frameType: FrameType, direction: Direction, disableDefaultResponse: boolean, manufacturerCode: number | undefined, transactionSequenceNumber: number, commandKey: number | string, clusterKey: number | string, payload: ZclPayload, customClusters: CustomClusters, reservedBits?: number): ZclFrame;
17
17
  toBuffer(): Buffer;
18
18
  private writePayloadGlobal;
19
19
  private writePayloadCluster;
20
20
  /**
21
21
  * Parsing
22
22
  */
23
- static fromBuffer(clusterID: number, header: ZclHeader, buffer: Buffer, customClusters: CustomClusters): ZclFrame;
23
+ static fromBuffer(clusterID: number, header: ZclHeader | undefined, buffer: Buffer, customClusters: CustomClusters): ZclFrame;
24
24
  private static parsePayload;
25
25
  private static parsePayloadCluster;
26
26
  private static parsePayloadGlobal;
@@ -29,7 +29,7 @@ export declare class ZclFrame {
29
29
  */
30
30
  static conditionsValid(parameter: ParameterDefinition, entry: ZclPayload, remainingBufferBytes: number | null): boolean;
31
31
  isCluster(clusterName: FoundationCommandName | ClusterName): boolean;
32
- isCommand(commandName: FoundationCommandName | 'remove' | 'add' | 'write' | 'enrollReq' | 'checkin' | 'getAlarm'): boolean;
32
+ isCommand(commandName: FoundationCommandName | 'remove' | 'add' | 'write' | 'enrollReq' | 'checkin' | 'getAlarm' | 'arm'): boolean;
33
33
  }
34
34
  export {};
35
35
  //# sourceMappingURL=zclFrame.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"zclFrame.d.ts","sourceRoot":"","sources":["../../../src/zspec/zcl/zclFrame.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,SAAS,EAAgC,SAAS,EAAqB,MAAM,oBAAoB,CAAC;AAC1G,OAAO,EAAC,qBAAqB,EAAC,MAAM,yBAAyB,CAAC;AAE9D,OAAO,EAAoB,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,mBAAmB,EAAC,MAAM,qBAAqB,CAAC;AAE1H,OAAO,EAAC,SAAS,EAAC,MAAM,aAAa,CAAC;AAGtC,KAAK,UAAU,GAAG,GAAG,CAAC;AAUtB,qBAAa,QAAQ;IACjB,SAAgB,MAAM,EAAE,SAAS,CAAC;IAClC,SAAgB,OAAO,EAAE,UAAU,CAAC;IACpC,SAAgB,OAAO,EAAE,OAAO,CAAC;IACjC,SAAgB,OAAO,EAAE,OAAO,CAAC;IAEjC,OAAO;IAOA,QAAQ,IAAI,MAAM;IAIzB;;OAEG;WACW,MAAM,CAChB,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,SAAS,EACpB,sBAAsB,EAAE,OAAO,EAC/B,gBAAgB,EAAE,MAAM,GAAG,IAAI,EAC/B,yBAAyB,EAAE,MAAM,EACjC,UAAU,EAAE,MAAM,GAAG,MAAM,EAC3B,UAAU,EAAE,MAAM,GAAG,MAAM,EAC3B,OAAO,EAAE,UAAU,EACnB,cAAc,EAAE,cAAc,EAC9B,YAAY,SAAI,GACjB,QAAQ;IAmBJ,QAAQ,IAAI,MAAM;IAezB,OAAO,CAAC,kBAAkB;IAyC1B,OAAO,CAAC,mBAAmB;IAc3B;;OAEG;WACW,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,cAAc,GAAG,QAAQ;IAuBxH,OAAO,CAAC,MAAM,CAAC,YAAY;IAU3B,OAAO,CAAC,MAAM,CAAC,mBAAmB;IA8BlC,OAAO,CAAC,MAAM,CAAC,kBAAkB;IA6EjC;;OAEG;WAEW,eAAe,CAAC,SAAS,EAAE,mBAAmB,EAAE,KAAK,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO;IAuCvH,SAAS,CAAC,WAAW,EAAE,qBAAqB,GAAG,WAAW,GAAG,OAAO;IAKpE,SAAS,CAAC,WAAW,EAAE,qBAAqB,GAAG,QAAQ,GAAG,KAAK,GAAG,OAAO,GAAG,WAAW,GAAG,SAAS,GAAG,UAAU,GAAG,OAAO;CAGpI"}
1
+ {"version":3,"file":"zclFrame.d.ts","sourceRoot":"","sources":["../../../src/zspec/zcl/zclFrame.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,SAAS,EAAgC,SAAS,EAAqB,MAAM,oBAAoB,CAAC;AAC1G,OAAO,EAAC,qBAAqB,EAAC,MAAM,yBAAyB,CAAC;AAE9D,OAAO,EAAoB,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,mBAAmB,EAAC,MAAM,qBAAqB,CAAC;AAE1H,OAAO,EAAC,SAAS,EAAC,MAAM,aAAa,CAAC;AAGtC,KAAK,UAAU,GAAG,GAAG,CAAC;AAUtB,qBAAa,QAAQ;IACjB,SAAgB,MAAM,EAAE,SAAS,CAAC;IAClC,SAAgB,OAAO,EAAE,UAAU,CAAC;IACpC,SAAgB,OAAO,EAAE,OAAO,CAAC;IACjC,SAAgB,OAAO,EAAE,OAAO,CAAC;IAEjC,OAAO;IAOA,QAAQ,IAAI,MAAM;IAIzB;;OAEG;WACW,MAAM,CAChB,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,SAAS,EACpB,sBAAsB,EAAE,OAAO,EAC/B,gBAAgB,EAAE,MAAM,GAAG,SAAS,EACpC,yBAAyB,EAAE,MAAM,EACjC,UAAU,EAAE,MAAM,GAAG,MAAM,EAC3B,UAAU,EAAE,MAAM,GAAG,MAAM,EAC3B,OAAO,EAAE,UAAU,EACnB,cAAc,EAAE,cAAc,EAC9B,YAAY,SAAI,GACjB,QAAQ;IAmBJ,QAAQ,IAAI,MAAM;IAezB,OAAO,CAAC,kBAAkB;IAyC1B,OAAO,CAAC,mBAAmB;IAc3B;;OAEG;WACW,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,GAAG,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,cAAc,GAAG,QAAQ;IAiBpI,OAAO,CAAC,MAAM,CAAC,YAAY;IAU3B,OAAO,CAAC,MAAM,CAAC,mBAAmB;IA8BlC,OAAO,CAAC,MAAM,CAAC,kBAAkB;IA6EjC;;OAEG;WAEW,eAAe,CAAC,SAAS,EAAE,mBAAmB,EAAE,KAAK,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO;IAuCvH,SAAS,CAAC,WAAW,EAAE,qBAAqB,GAAG,WAAW,GAAG,OAAO;IAKpE,SAAS,CAAC,WAAW,EAAE,qBAAqB,GAAG,QAAQ,GAAG,KAAK,GAAG,OAAO,GAAG,WAAW,GAAG,SAAS,GAAG,UAAU,GAAG,KAAK,GAAG,OAAO;CAG5I"}
@@ -54,13 +54,11 @@ class ZclFrame {
54
54
  */
55
55
  static create(frameType, direction, disableDefaultResponse, manufacturerCode, transactionSequenceNumber, commandKey, clusterKey, payload, customClusters, reservedBits = 0) {
56
56
  const cluster = Utils.getCluster(clusterKey, manufacturerCode, customClusters);
57
- let command = null;
58
- if (frameType === enums_1.FrameType.GLOBAL) {
59
- command = Utils.getGlobalCommand(commandKey);
60
- }
61
- else {
62
- command = direction === enums_1.Direction.CLIENT_TO_SERVER ? cluster.getCommand(commandKey) : cluster.getCommandResponse(commandKey);
63
- }
57
+ const command = frameType === enums_1.FrameType.GLOBAL
58
+ ? Utils.getGlobalCommand(commandKey)
59
+ : direction === enums_1.Direction.CLIENT_TO_SERVER
60
+ ? cluster.getCommand(commandKey)
61
+ : cluster.getCommandResponse(commandKey);
64
62
  const header = new zclHeader_1.ZclHeader({ reservedBits, frameType, direction, disableDefaultResponse, manufacturerSpecific: manufacturerCode != null }, manufacturerCode, transactionSequenceNumber, command.ID);
65
63
  return new ZclFrame(header, payload, cluster, command);
66
64
  }
@@ -135,16 +133,11 @@ class ZclFrame {
135
133
  }
136
134
  const buffalo = new buffaloZcl_1.BuffaloZcl(buffer, header.length);
137
135
  const cluster = Utils.getCluster(clusterID, header.manufacturerCode, customClusters);
138
- let command = null;
139
- if (header.isGlobal) {
140
- command = Utils.getGlobalCommand(header.commandIdentifier);
141
- }
142
- else {
143
- command =
144
- header.frameControl.direction === enums_1.Direction.CLIENT_TO_SERVER
145
- ? cluster.getCommand(header.commandIdentifier)
146
- : cluster.getCommandResponse(header.commandIdentifier);
147
- }
136
+ const command = header.isGlobal
137
+ ? Utils.getGlobalCommand(header.commandIdentifier)
138
+ : header.frameControl.direction === enums_1.Direction.CLIENT_TO_SERVER
139
+ ? cluster.getCommand(header.commandIdentifier)
140
+ : cluster.getCommandResponse(header.commandIdentifier);
148
141
  const payload = this.parsePayload(header, cluster, buffalo);
149
142
  return new ZclFrame(header, payload, cluster, command);
150
143
  }