@willieee802/zigbee-herdsman 0.15.0 → 0.15.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 (347) hide show
  1. package/dist/adapter/adapter.d.ts +61 -61
  2. package/dist/adapter/adapter.d.ts.map +1 -1
  3. package/dist/adapter/adapter.js +146 -100
  4. package/dist/adapter/adapter.js.map +1 -1
  5. package/dist/adapter/deconz/adapter/deconzAdapter.d.ts +68 -68
  6. package/dist/adapter/deconz/adapter/deconzAdapter.d.ts.map +1 -1
  7. package/dist/adapter/deconz/adapter/deconzAdapter.js +1060 -1063
  8. package/dist/adapter/deconz/adapter/deconzAdapter.js.map +1 -1
  9. package/dist/adapter/deconz/adapter/index.d.ts +2 -2
  10. package/dist/adapter/deconz/adapter/index.js +10 -10
  11. package/dist/adapter/deconz/driver/constants.d.ts +104 -104
  12. package/dist/adapter/deconz/driver/constants.js +55 -55
  13. package/dist/adapter/deconz/driver/driver.d.ts +81 -81
  14. package/dist/adapter/deconz/driver/driver.js +732 -732
  15. package/dist/adapter/deconz/driver/frame.d.ts +6 -6
  16. package/dist/adapter/deconz/driver/frame.js +13 -13
  17. package/dist/adapter/deconz/driver/frameParser.d.ts +2 -2
  18. package/dist/adapter/deconz/driver/frameParser.js +443 -443
  19. package/dist/adapter/deconz/driver/parser.d.ts +12 -12
  20. package/dist/adapter/deconz/driver/parser.js +61 -61
  21. package/dist/adapter/deconz/driver/writer.d.ts +8 -8
  22. package/dist/adapter/deconz/driver/writer.js +44 -44
  23. package/dist/adapter/events.d.ts +47 -47
  24. package/dist/adapter/events.js +14 -14
  25. package/dist/adapter/ezsp/adapter/backup.d.ts +9 -9
  26. package/dist/adapter/ezsp/adapter/backup.js +53 -53
  27. package/dist/adapter/ezsp/adapter/ezspAdapter.d.ts +59 -59
  28. package/dist/adapter/ezsp/adapter/ezspAdapter.js +585 -585
  29. package/dist/adapter/ezsp/adapter/index.d.ts +2 -2
  30. package/dist/adapter/ezsp/adapter/index.js +10 -10
  31. package/dist/adapter/ezsp/driver/commands.d.ts +36 -34
  32. package/dist/adapter/ezsp/driver/commands.d.ts.map +1 -1
  33. package/dist/adapter/ezsp/driver/commands.js +2359 -2357
  34. package/dist/adapter/ezsp/driver/commands.js.map +1 -1
  35. package/dist/adapter/ezsp/driver/consts.d.ts +10 -10
  36. package/dist/adapter/ezsp/driver/consts.js +13 -13
  37. package/dist/adapter/ezsp/driver/driver.d.ts +103 -103
  38. package/dist/adapter/ezsp/driver/driver.js +639 -639
  39. package/dist/adapter/ezsp/driver/driver.js.map +1 -1
  40. package/dist/adapter/ezsp/driver/ezsp.d.ts +96 -96
  41. package/dist/adapter/ezsp/driver/ezsp.d.ts.map +1 -1
  42. package/dist/adapter/ezsp/driver/ezsp.js +586 -577
  43. package/dist/adapter/ezsp/driver/ezsp.js.map +1 -1
  44. package/dist/adapter/ezsp/driver/index.d.ts +3 -3
  45. package/dist/adapter/ezsp/driver/index.js +8 -8
  46. package/dist/adapter/ezsp/driver/multicast.d.ts +12 -12
  47. package/dist/adapter/ezsp/driver/multicast.js +74 -74
  48. package/dist/adapter/ezsp/driver/parser.d.ts +12 -12
  49. package/dist/adapter/ezsp/driver/parser.js +111 -111
  50. package/dist/adapter/ezsp/driver/types/basic.d.ts +62 -62
  51. package/dist/adapter/ezsp/driver/types/basic.js +208 -208
  52. package/dist/adapter/ezsp/driver/types/basic.js.map +1 -1
  53. package/dist/adapter/ezsp/driver/types/index.d.ts +9 -9
  54. package/dist/adapter/ezsp/driver/types/index.js +133 -133
  55. package/dist/adapter/ezsp/driver/types/named.d.ts +697 -697
  56. package/dist/adapter/ezsp/driver/types/named.js +1726 -1726
  57. package/dist/adapter/ezsp/driver/types/named.js.map +1 -1
  58. package/dist/adapter/ezsp/driver/types/struct.d.ts +251 -251
  59. package/dist/adapter/ezsp/driver/types/struct.js +708 -708
  60. package/dist/adapter/ezsp/driver/types/struct.js.map +1 -1
  61. package/dist/adapter/ezsp/driver/uart.d.ts +44 -44
  62. package/dist/adapter/ezsp/driver/uart.d.ts.map +1 -1
  63. package/dist/adapter/ezsp/driver/uart.js +368 -366
  64. package/dist/adapter/ezsp/driver/uart.js.map +1 -1
  65. package/dist/adapter/ezsp/driver/utils/crc16ccitt.d.ts +2 -2
  66. package/dist/adapter/ezsp/driver/utils/crc16ccitt.js +55 -55
  67. package/dist/adapter/ezsp/driver/utils/index.d.ts +18 -18
  68. package/dist/adapter/ezsp/driver/utils/index.js +67 -67
  69. package/dist/adapter/ezsp/driver/writer.d.ts +13 -13
  70. package/dist/adapter/ezsp/driver/writer.js +88 -88
  71. package/dist/adapter/index.d.ts +4 -4
  72. package/dist/adapter/index.js +35 -35
  73. package/dist/adapter/serialPort.d.ts +8 -8
  74. package/dist/adapter/serialPort.js +22 -22
  75. package/dist/adapter/serialPort.js.map +1 -1
  76. package/dist/adapter/serialPortUtils.d.ts +12 -12
  77. package/dist/adapter/serialPortUtils.js +18 -18
  78. package/dist/adapter/socketPortUtils.d.ts +10 -10
  79. package/dist/adapter/socketPortUtils.js +16 -16
  80. package/dist/adapter/tstype.d.ts +85 -85
  81. package/dist/adapter/tstype.js +2 -2
  82. package/dist/adapter/z-stack/adapter/adapter-backup.d.ts +62 -62
  83. package/dist/adapter/z-stack/adapter/adapter-backup.js +441 -441
  84. package/dist/adapter/z-stack/adapter/adapter-nv-memory.d.ts +150 -150
  85. package/dist/adapter/z-stack/adapter/adapter-nv-memory.js +258 -258
  86. package/dist/adapter/z-stack/adapter/endpoints.d.ts +11 -11
  87. package/dist/adapter/z-stack/adapter/endpoints.js +73 -73
  88. package/dist/adapter/z-stack/adapter/index.d.ts +2 -2
  89. package/dist/adapter/z-stack/adapter/index.js +8 -8
  90. package/dist/adapter/z-stack/adapter/manager.d.ts +86 -86
  91. package/dist/adapter/z-stack/adapter/manager.js +476 -476
  92. package/dist/adapter/z-stack/adapter/tstype.d.ts +6 -6
  93. package/dist/adapter/z-stack/adapter/tstype.js +10 -10
  94. package/dist/adapter/z-stack/adapter/zStackAdapter.d.ts +81 -81
  95. package/dist/adapter/z-stack/adapter/zStackAdapter.js +868 -868
  96. package/dist/adapter/z-stack/constants/af.d.ts +23 -23
  97. package/dist/adapter/z-stack/constants/af.js +27 -27
  98. package/dist/adapter/z-stack/constants/common.d.ts +278 -278
  99. package/dist/adapter/z-stack/constants/common.js +289 -289
  100. package/dist/adapter/z-stack/constants/dbg.d.ts +22 -22
  101. package/dist/adapter/z-stack/constants/dbg.js +24 -24
  102. package/dist/adapter/z-stack/constants/index.d.ts +10 -10
  103. package/dist/adapter/z-stack/constants/index.js +47 -47
  104. package/dist/adapter/z-stack/constants/mac.d.ts +127 -127
  105. package/dist/adapter/z-stack/constants/mac.js +129 -129
  106. package/dist/adapter/z-stack/constants/sapi.d.ts +24 -24
  107. package/dist/adapter/z-stack/constants/sapi.js +26 -26
  108. package/dist/adapter/z-stack/constants/sys.d.ts +71 -71
  109. package/dist/adapter/z-stack/constants/sys.js +73 -73
  110. package/dist/adapter/z-stack/constants/util.d.ts +81 -81
  111. package/dist/adapter/z-stack/constants/util.js +83 -83
  112. package/dist/adapter/z-stack/constants/utils.d.ts +4 -4
  113. package/dist/adapter/z-stack/constants/utils.js +14 -14
  114. package/dist/adapter/z-stack/constants/zdo.d.ts +102 -102
  115. package/dist/adapter/z-stack/constants/zdo.js +104 -104
  116. package/dist/adapter/z-stack/models/index.d.ts +1 -1
  117. package/dist/adapter/z-stack/models/index.js +17 -17
  118. package/dist/adapter/z-stack/models/startup-options.d.ts +12 -12
  119. package/dist/adapter/z-stack/models/startup-options.js +2 -2
  120. package/dist/adapter/z-stack/structs/entries/address-manager-entry.d.ts +23 -23
  121. package/dist/adapter/z-stack/structs/entries/address-manager-entry.js +45 -45
  122. package/dist/adapter/z-stack/structs/entries/address-manager-table.d.ts +10 -10
  123. package/dist/adapter/z-stack/structs/entries/address-manager-table.js +22 -22
  124. package/dist/adapter/z-stack/structs/entries/aps-link-key-data-entry.d.ts +10 -10
  125. package/dist/adapter/z-stack/structs/entries/aps-link-key-data-entry.js +21 -21
  126. package/dist/adapter/z-stack/structs/entries/aps-link-key-data-table.d.ts +10 -10
  127. package/dist/adapter/z-stack/structs/entries/aps-link-key-data-table.js +23 -23
  128. package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-entry.d.ts +10 -10
  129. package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-entry.js +24 -24
  130. package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-table.d.ts +10 -10
  131. package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-table.js +23 -23
  132. package/dist/adapter/z-stack/structs/entries/channel-list.d.ts +8 -8
  133. package/dist/adapter/z-stack/structs/entries/channel-list.js +15 -15
  134. package/dist/adapter/z-stack/structs/entries/has-configured.d.ts +8 -8
  135. package/dist/adapter/z-stack/structs/entries/has-configured.js +16 -16
  136. package/dist/adapter/z-stack/structs/entries/index.d.ts +16 -16
  137. package/dist/adapter/z-stack/structs/entries/index.js +32 -32
  138. package/dist/adapter/z-stack/structs/entries/nib.d.ts +10 -10
  139. package/dist/adapter/z-stack/structs/entries/nib.js +68 -68
  140. package/dist/adapter/z-stack/structs/entries/nwk-key-descriptor.d.ts +10 -10
  141. package/dist/adapter/z-stack/structs/entries/nwk-key-descriptor.js +18 -18
  142. package/dist/adapter/z-stack/structs/entries/nwk-key.d.ts +8 -8
  143. package/dist/adapter/z-stack/structs/entries/nwk-key.js +15 -15
  144. package/dist/adapter/z-stack/structs/entries/nwk-pan-id.d.ts +8 -8
  145. package/dist/adapter/z-stack/structs/entries/nwk-pan-id.js +15 -15
  146. package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-entry.d.ts +13 -13
  147. package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-entry.js +23 -23
  148. package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-table.d.ts +10 -10
  149. package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-table.js +22 -22
  150. package/dist/adapter/z-stack/structs/entries/security-manager-entry.d.ts +20 -20
  151. package/dist/adapter/z-stack/structs/entries/security-manager-entry.js +36 -36
  152. package/dist/adapter/z-stack/structs/entries/security-manager-table.d.ts +10 -10
  153. package/dist/adapter/z-stack/structs/entries/security-manager-table.js +24 -24
  154. package/dist/adapter/z-stack/structs/index.d.ts +4 -4
  155. package/dist/adapter/z-stack/structs/index.js +20 -20
  156. package/dist/adapter/z-stack/structs/serializable-memory-object.d.ts +13 -13
  157. package/dist/adapter/z-stack/structs/serializable-memory-object.js +2 -2
  158. package/dist/adapter/z-stack/structs/struct.d.ts +99 -99
  159. package/dist/adapter/z-stack/structs/struct.js +295 -295
  160. package/dist/adapter/z-stack/structs/table.d.ts +94 -94
  161. package/dist/adapter/z-stack/structs/table.js +161 -161
  162. package/dist/adapter/z-stack/unpi/constants.d.ts +28 -28
  163. package/dist/adapter/z-stack/unpi/constants.js +41 -41
  164. package/dist/adapter/z-stack/unpi/frame.d.ts +16 -16
  165. package/dist/adapter/z-stack/unpi/frame.js +48 -48
  166. package/dist/adapter/z-stack/unpi/index.d.ts +5 -5
  167. package/dist/adapter/z-stack/unpi/index.js +37 -37
  168. package/dist/adapter/z-stack/unpi/parser.d.ts +10 -10
  169. package/dist/adapter/z-stack/unpi/parser.js +74 -74
  170. package/dist/adapter/z-stack/unpi/writer.d.ts +10 -10
  171. package/dist/adapter/z-stack/unpi/writer.js +44 -44
  172. package/dist/adapter/z-stack/utils/channel-list.d.ts +20 -20
  173. package/dist/adapter/z-stack/utils/channel-list.js +40 -40
  174. package/dist/adapter/z-stack/utils/index.d.ts +2 -2
  175. package/dist/adapter/z-stack/utils/index.js +18 -18
  176. package/dist/adapter/z-stack/utils/network-options.d.ts +8 -8
  177. package/dist/adapter/z-stack/utils/network-options.js +22 -22
  178. package/dist/adapter/z-stack/znp/buffaloZnp.d.ts +11 -11
  179. package/dist/adapter/z-stack/znp/buffaloZnp.js +113 -113
  180. package/dist/adapter/z-stack/znp/definition.d.ts +5 -5
  181. package/dist/adapter/z-stack/znp/definition.js +3050 -3050
  182. package/dist/adapter/z-stack/znp/index.d.ts +3 -3
  183. package/dist/adapter/z-stack/znp/index.js +10 -10
  184. package/dist/adapter/z-stack/znp/parameterType.d.ts +22 -22
  185. package/dist/adapter/z-stack/znp/parameterType.js +25 -25
  186. package/dist/adapter/z-stack/znp/tstype.d.ts +21 -21
  187. package/dist/adapter/z-stack/znp/tstype.js +2 -2
  188. package/dist/adapter/z-stack/znp/znp.d.ts +43 -43
  189. package/dist/adapter/z-stack/znp/znp.js +325 -325
  190. package/dist/adapter/z-stack/znp/zpiObject.d.ts +19 -19
  191. package/dist/adapter/z-stack/znp/zpiObject.js +96 -96
  192. package/dist/adapter/zigate/adapter/index.d.ts +2 -2
  193. package/dist/adapter/zigate/adapter/index.js +10 -10
  194. package/dist/adapter/zigate/adapter/zigateAdapter.d.ts +69 -69
  195. package/dist/adapter/zigate/adapter/zigateAdapter.js +678 -678
  196. package/dist/adapter/zigate/debug.d.ts +7 -7
  197. package/dist/adapter/zigate/debug.js +22 -22
  198. package/dist/adapter/zigate/driver/buffaloZiGate.d.ts +18 -18
  199. package/dist/adapter/zigate/driver/buffaloZiGate.js +139 -139
  200. package/dist/adapter/zigate/driver/commandType.d.ts +41 -41
  201. package/dist/adapter/zigate/driver/commandType.js +385 -385
  202. package/dist/adapter/zigate/driver/constants.d.ts +276 -276
  203. package/dist/adapter/zigate/driver/constants.js +371 -371
  204. package/dist/adapter/zigate/driver/frame.d.ts +26 -26
  205. package/dist/adapter/zigate/driver/frame.js +172 -172
  206. package/dist/adapter/zigate/driver/frame.js.map +1 -1
  207. package/dist/adapter/zigate/driver/messageType.d.ts +11 -11
  208. package/dist/adapter/zigate/driver/messageType.js +278 -278
  209. package/dist/adapter/zigate/driver/parameterType.d.ts +20 -20
  210. package/dist/adapter/zigate/driver/parameterType.js +23 -23
  211. package/dist/adapter/zigate/driver/ziGateObject.d.ts +23 -23
  212. package/dist/adapter/zigate/driver/ziGateObject.js +106 -106
  213. package/dist/adapter/zigate/driver/zigate.d.ts +49 -49
  214. package/dist/adapter/zigate/driver/zigate.js +303 -303
  215. package/dist/buffalo/buffalo.d.ts +50 -48
  216. package/dist/buffalo/buffalo.d.ts.map +1 -1
  217. package/dist/buffalo/buffalo.js +322 -307
  218. package/dist/buffalo/buffalo.js.map +1 -1
  219. package/dist/buffalo/index.d.ts +3 -3
  220. package/dist/buffalo/index.js +33 -33
  221. package/dist/buffalo/tstype.d.ts +8 -8
  222. package/dist/buffalo/tstype.js +2 -2
  223. package/dist/controller/controller.d.ts +110 -110
  224. package/dist/controller/controller.js +607 -607
  225. package/dist/controller/database.d.ts +18 -18
  226. package/dist/controller/database.js +93 -93
  227. package/dist/controller/events.d.ts +55 -55
  228. package/dist/controller/events.d.ts.map +1 -1
  229. package/dist/controller/events.js +101 -99
  230. package/dist/controller/events.js.map +1 -1
  231. package/dist/controller/greenPower.d.ts +12 -12
  232. package/dist/controller/greenPower.js +220 -220
  233. package/dist/controller/helpers/index.d.ts +2 -2
  234. package/dist/controller/helpers/index.js +28 -28
  235. package/dist/controller/helpers/request.d.ts +23 -0
  236. package/dist/controller/helpers/request.d.ts.map +1 -0
  237. package/dist/controller/helpers/request.js +72 -0
  238. package/dist/controller/helpers/request.js.map +1 -0
  239. package/dist/controller/helpers/zclFrameConverter.d.ts +7 -7
  240. package/dist/controller/helpers/zclFrameConverter.js +31 -31
  241. package/dist/controller/helpers/zclTransactionSequenceNumber.d.ts +5 -5
  242. package/dist/controller/helpers/zclTransactionSequenceNumber.js +13 -13
  243. package/dist/controller/index.d.ts +5 -5
  244. package/dist/controller/index.js +8 -8
  245. package/dist/controller/logger-stub.d.ts +6 -6
  246. package/dist/controller/logger-stub.js +2 -2
  247. package/dist/controller/model/device.d.ts +132 -127
  248. package/dist/controller/model/device.d.ts.map +1 -1
  249. package/dist/controller/model/device.js +708 -681
  250. package/dist/controller/model/device.js.map +1 -1
  251. package/dist/controller/model/endpoint.d.ts +131 -128
  252. package/dist/controller/model/endpoint.d.ts.map +1 -1
  253. package/dist/controller/model/endpoint.js +817 -665
  254. package/dist/controller/model/endpoint.js.map +1 -1
  255. package/dist/controller/model/entity.d.ts +14 -14
  256. package/dist/controller/model/entity.js +26 -26
  257. package/dist/controller/model/group.d.ts +38 -39
  258. package/dist/controller/model/group.d.ts.map +1 -1
  259. package/dist/controller/model/group.js +221 -221
  260. package/dist/controller/model/group.js.map +1 -1
  261. package/dist/controller/model/index.d.ts +5 -5
  262. package/dist/controller/model/index.js +14 -14
  263. package/dist/controller/touchlink.d.ts +19 -19
  264. package/dist/controller/touchlink.js +157 -157
  265. package/dist/controller/tstype.d.ts +21 -20
  266. package/dist/controller/tstype.d.ts.map +1 -1
  267. package/dist/controller/tstype.js +9 -9
  268. package/dist/controller/tstype.js.map +1 -1
  269. package/dist/index.d.ts +3 -3
  270. package/dist/index.js +33 -33
  271. package/dist/models/backup-storage-legacy.d.ts +26 -26
  272. package/dist/models/backup-storage-legacy.js +2 -2
  273. package/dist/models/backup-storage-unified.d.ts +49 -49
  274. package/dist/models/backup-storage-unified.js +2 -2
  275. package/dist/models/backup.d.ts +37 -37
  276. package/dist/models/backup.js +2 -2
  277. package/dist/models/index.d.ts +4 -4
  278. package/dist/models/index.js +20 -20
  279. package/dist/models/network-options.d.ts +12 -12
  280. package/dist/models/network-options.js +2 -2
  281. package/dist/utils/assertString.d.ts +2 -2
  282. package/dist/utils/assertString.js +8 -8
  283. package/dist/utils/backup.d.ts +20 -20
  284. package/dist/utils/backup.js +187 -187
  285. package/dist/utils/equalsPartial.d.ts +2 -2
  286. package/dist/utils/equalsPartial.js +11 -11
  287. package/dist/utils/index.d.ts +9 -9
  288. package/dist/utils/index.js +45 -45
  289. package/dist/utils/isNumberArray.d.ts +2 -2
  290. package/dist/utils/isNumberArray.js +6 -6
  291. package/dist/utils/queue.d.ts +11 -11
  292. package/dist/utils/queue.js +50 -50
  293. package/dist/utils/realpathSync.d.ts +2 -2
  294. package/dist/utils/realpathSync.js +12 -12
  295. package/dist/utils/wait.d.ts +2 -2
  296. package/dist/utils/wait.js +8 -8
  297. package/dist/utils/waitress.d.ts +21 -21
  298. package/dist/utils/waitress.js +61 -61
  299. package/dist/zcl/buffaloZcl.d.ts +41 -41
  300. package/dist/zcl/buffaloZcl.js +591 -591
  301. package/dist/zcl/definition/buffaloZclDataType.d.ts +17 -17
  302. package/dist/zcl/definition/buffaloZclDataType.js +20 -20
  303. package/dist/zcl/definition/cluster.d.ts +29 -29
  304. package/dist/zcl/definition/cluster.d.ts.map +1 -1
  305. package/dist/zcl/definition/cluster.js +5335 -5215
  306. package/dist/zcl/definition/cluster.js.map +1 -1
  307. package/dist/zcl/definition/dataType.d.ts +59 -59
  308. package/dist/zcl/definition/dataType.d.ts.map +1 -1
  309. package/dist/zcl/definition/dataType.js +64 -64
  310. package/dist/zcl/definition/dataType.js.map +1 -1
  311. package/dist/zcl/definition/direction.d.ts +5 -5
  312. package/dist/zcl/definition/direction.js +8 -8
  313. package/dist/zcl/definition/endpointDeviceType.d.ts +4 -4
  314. package/dist/zcl/definition/endpointDeviceType.js +15 -15
  315. package/dist/zcl/definition/foundation.d.ts +11 -11
  316. package/dist/zcl/definition/foundation.js +167 -167
  317. package/dist/zcl/definition/frameControl.d.ts +10 -10
  318. package/dist/zcl/definition/frameControl.js +2 -2
  319. package/dist/zcl/definition/frameType.d.ts +5 -5
  320. package/dist/zcl/definition/frameType.js +8 -8
  321. package/dist/zcl/definition/index.d.ts +13 -13
  322. package/dist/zcl/definition/index.js +51 -51
  323. package/dist/zcl/definition/manufacturerCode.d.ts +1074 -1074
  324. package/dist/zcl/definition/manufacturerCode.js +1079 -1079
  325. package/dist/zcl/definition/powerSource.d.ts +4 -4
  326. package/dist/zcl/definition/powerSource.js +12 -12
  327. package/dist/zcl/definition/status.d.ts +38 -38
  328. package/dist/zcl/definition/status.js +41 -41
  329. package/dist/zcl/definition/tstype.d.ts +16 -16
  330. package/dist/zcl/definition/tstype.js +2 -2
  331. package/dist/zcl/index.d.ts +15 -15
  332. package/dist/zcl/index.js +55 -55
  333. package/dist/zcl/tstype.d.ts +56 -56
  334. package/dist/zcl/tstype.js +10 -10
  335. package/dist/zcl/utils.d.ts +6 -6
  336. package/dist/zcl/utils.js +165 -165
  337. package/dist/zcl/zclFrame.d.ts +45 -45
  338. package/dist/zcl/zclFrame.js +347 -347
  339. package/dist/zcl/zclStatusError.d.ts +5 -5
  340. package/dist/zcl/zclStatusError.js +13 -13
  341. package/package.json +1 -1
  342. package/.github/ISSUE_TEMPLATE/config.yml +0 -5
  343. package/.github/dependabot.yml +0 -6
  344. package/.github/workflows/ci.yml +0 -40
  345. package/.github/workflows/release_please.yml +0 -20
  346. package/.github/workflows/stale.yml +0 -20
  347. package/.github/workflows/update_deps.yml +0 -29
@@ -1,296 +1,296 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Struct = void 0;
4
- /**
5
- * Struct provides a builder-like interface to create Buffer-based memory
6
- * structures for read/write interfacing with data structures from adapters.
7
- */
8
- class Struct {
9
- /**
10
- * Creates an empty struct. Further calls to `member()` and `method()` functions will form the structure.
11
- * Finally call to `build()` will type the resulting structure appropriately without internal functions.
12
- */
13
- static new() {
14
- return new Struct();
15
- }
16
- constructor() {
17
- this.members = [];
18
- this.childStructs = {};
19
- this.length = 0;
20
- this.paddingByte = 0x00;
21
- }
22
- /**
23
- * Returns raw contents of the structure as a sliced Buffer.
24
- * Mutations to the returned buffer will not be reflected within struct.
25
- */
26
- serialize(alignment = "unaligned", padLength = true, parentOffset = 0) {
27
- switch (alignment) {
28
- case "unaligned": {
29
- /* update child struct values and return as-is (unaligned) */
30
- /* istanbul ignore next */
31
- for (const key of Object.keys(this.childStructs)) {
32
- const child = this.childStructs[key];
33
- this.buffer.set(child.struct.serialize(alignment), child.offset);
34
- }
35
- return Buffer.from(this.buffer);
36
- }
37
- case "aligned": {
38
- /* create 16-bit aligned buffer */
39
- const aligned = Buffer.alloc(this.getLength(alignment, padLength, parentOffset), this.paddingByte);
40
- let offset = 0;
41
- for (const member of this.members) {
42
- switch (member.type) {
43
- case "uint8":
44
- aligned.set(this.buffer.slice(member.offset, member.offset + 1), offset);
45
- offset += 1;
46
- break;
47
- case "uint16":
48
- offset += offset % 2;
49
- aligned.set(this.buffer.slice(member.offset, member.offset + 2), offset);
50
- offset += 2;
51
- break;
52
- case "uint32":
53
- offset += offset % 2;
54
- aligned.set(this.buffer.slice(member.offset, member.offset + 4), offset);
55
- offset += 4;
56
- break;
57
- case "uint8array":
58
- case "uint8array-reversed":
59
- aligned.set(this.buffer.slice(member.offset, member.offset + member.length), offset);
60
- offset += member.length;
61
- break;
62
- case "struct":
63
- const structData = this.childStructs[member.key].struct.serialize(alignment, false, offset);
64
- aligned.set(structData, offset);
65
- offset += structData.length;
66
- break;
67
- }
68
- }
69
- return aligned;
70
- }
71
- }
72
- }
73
- /**
74
- * Returns total length of the struct. Struct length is always fixed and configured
75
- * by calls to `member()` methods.
76
- */
77
- /* istanbul ignore next */
78
- getLength(alignment = "unaligned", padLength = true, parentOffset = 0) {
79
- switch (alignment) {
80
- case "unaligned": {
81
- /* return actual length */
82
- return this.length;
83
- }
84
- case "aligned": {
85
- /* compute aligned length and return */
86
- let length = this.members.reduce((offset, member) => {
87
- switch (member.type) {
88
- case "uint8":
89
- offset += 1;
90
- break;
91
- case "uint16":
92
- offset += ((parentOffset + offset) % 2) + 2;
93
- break;
94
- case "uint32":
95
- offset += ((parentOffset + offset) % 2) + 4;
96
- break;
97
- case "uint8array":
98
- case "uint8array-reversed":
99
- offset += member.length;
100
- break;
101
- case "struct":
102
- offset += this.childStructs[member.key].struct.getLength(alignment, false);
103
- break;
104
- }
105
- return offset;
106
- }, 0);
107
- if (padLength) {
108
- length += length % 2;
109
- }
110
- return length;
111
- }
112
- }
113
- }
114
- /**
115
- * Returns structure contents in JS object format.
116
- */
117
- // eslint-disable-next-line max-len
118
- // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types,@typescript-eslint/explicit-function-return-type
119
- toJSON() {
120
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
121
- return this.members.reduce((a, c) => { a[c.key] = this[c.key]; return a; }, {});
122
- }
123
- member(type, name, lengthOrStructFactory) {
124
- const offset = this.length;
125
- const structFactory = type === "struct" ? lengthOrStructFactory : undefined;
126
- const length = type === "struct" ?
127
- structFactory().length :
128
- lengthOrStructFactory;
129
- switch (type) {
130
- case "uint8": {
131
- Object.defineProperty(this, name, {
132
- enumerable: true,
133
- get: () => this.buffer.readUInt8(offset),
134
- set: (value) => this.buffer.writeUInt8(value, offset)
135
- });
136
- this.length += 1;
137
- break;
138
- }
139
- case "uint16": {
140
- Object.defineProperty(this, name, {
141
- enumerable: true,
142
- get: () => this.buffer.readUInt16LE(offset),
143
- set: (value) => this.buffer.writeUInt16LE(value, offset)
144
- });
145
- this.length += 2;
146
- break;
147
- }
148
- case "uint32": {
149
- Object.defineProperty(this, name, {
150
- enumerable: true,
151
- get: () => this.buffer.readUInt32LE(offset),
152
- set: (value) => this.buffer.writeUInt32LE(value, offset)
153
- });
154
- this.length += 4;
155
- break;
156
- }
157
- case "uint8array":
158
- case "uint8array-reversed": {
159
- /* istanbul ignore next */
160
- if (!length) {
161
- throw new Error("Struct builder requires length for `uint8array` and `uint8array-reversed` type");
162
- }
163
- Object.defineProperty(this, name, {
164
- enumerable: true,
165
- get: () => type === "uint8array-reversed" ?
166
- Buffer.from(this.buffer.slice(offset, offset + length)).reverse() :
167
- Buffer.from(this.buffer.slice(offset, offset + length)),
168
- set: (value) => {
169
- if (value.length !== length) {
170
- throw new Error(`Invalid length for member ${name} (expected=${length}, got=${value.length})`);
171
- }
172
- if (type === "uint8array-reversed") {
173
- value = Buffer.from(value).reverse();
174
- }
175
- for (let i = 0; i < length; i++) {
176
- this.buffer[offset + i] = value[i];
177
- }
178
- }
179
- });
180
- this.length += length;
181
- break;
182
- }
183
- case "struct": {
184
- this.childStructs[name] = { offset, struct: structFactory() };
185
- Object.defineProperty(this, name, {
186
- enumerable: true,
187
- get: () => this.childStructs[name].struct
188
- });
189
- this.length += length;
190
- }
191
- }
192
- this.members.push({ key: name, offset, type, length });
193
- return this;
194
- }
195
- /**
196
- * Adds a custom method to the struct.
197
- *
198
- * *This method is stripped from type on struct `build()`.*
199
- *
200
- * @param name Name of the method to be appended.
201
- * @param returnType Return type (eg. `Buffer.prototype`).
202
- * @param body Function implementation. Takes struct as a first and single input parameter.
203
- */
204
- method(name, returnType, body) {
205
- Object.defineProperty(this, name, {
206
- enumerable: true,
207
- configurable: false,
208
- writable: false,
209
- value: () => body.bind(this)(this)
210
- });
211
- return this;
212
- }
213
- /**
214
- * Sets default data to initialize empty struct with.
215
- *
216
- * @param data Data to initialize empty struct with.
217
- */
218
- /* istanbul ignore next */
219
- default(data) {
220
- if (data.length !== this.length) {
221
- throw new Error("Default value needs to have the length of unaligned structure.");
222
- }
223
- this.defaultData = Buffer.from(data);
224
- return this;
225
- }
226
- /**
227
- * Sets byte to use for padding.
228
- *
229
- * @param padding Byte to use for padding
230
- */
231
- /* istanbul ignore next */
232
- padding(padding = 0x00) {
233
- this.paddingByte = padding;
234
- return this;
235
- }
236
- /**
237
- * Creates the struct and optionally fills it with data. If data is provided, the length
238
- * of the provided buffer needs to match the structure length.
239
- *
240
- * *This method is stripped from type on struct `build()`.*
241
- */
242
- build(data) {
243
- if (data) {
244
- if (data.length === this.getLength("unaligned")) {
245
- this.buffer = Buffer.from(data);
246
- for (const key of Object.keys(this.childStructs)) {
247
- const child = this.childStructs[key];
248
- child.struct.build(this.buffer.slice(child.offset, child.offset + child.struct.length));
249
- }
250
- }
251
- else if (data.length === this.getLength("aligned")) {
252
- this.buffer = Buffer.alloc(this.length, this.paddingByte);
253
- let offset = 0;
254
- for (const member of this.members) {
255
- switch (member.type) {
256
- case "uint8":
257
- this.buffer.set(data.slice(offset, offset + 1), member.offset);
258
- offset += 1;
259
- break;
260
- case "uint16":
261
- offset += offset % 2;
262
- this.buffer.set(data.slice(offset, offset + 2), member.offset);
263
- offset += 2;
264
- break;
265
- case "uint32":
266
- offset += offset % 2;
267
- this.buffer.set(data.slice(offset, offset + 4), member.offset);
268
- offset += 4;
269
- break;
270
- case "uint8array":
271
- case "uint8array-reversed":
272
- this.buffer.set(data.slice(offset, offset + member.length), member.offset);
273
- offset += member.length;
274
- break;
275
- case "struct":
276
- const child = this.childStructs[member.key];
277
- child.struct.build(data.slice(offset, offset + child.struct.length));
278
- this.buffer.set(child.struct.serialize(), member.offset);
279
- offset += child.struct.length;
280
- break;
281
- }
282
- }
283
- }
284
- else {
285
- const expectedLengths = `${this.getLength("unaligned")}/${this.getLength("aligned")}`;
286
- throw new Error(`Struct length mismatch (expected=${expectedLengths}, got=${data.length})`);
287
- }
288
- }
289
- else {
290
- this.buffer = this.defaultData ? Buffer.from(this.defaultData) : Buffer.alloc(this.length);
291
- }
292
- return this;
293
- }
294
- }
295
- exports.Struct = Struct;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Struct = void 0;
4
+ /**
5
+ * Struct provides a builder-like interface to create Buffer-based memory
6
+ * structures for read/write interfacing with data structures from adapters.
7
+ */
8
+ class Struct {
9
+ /**
10
+ * Creates an empty struct. Further calls to `member()` and `method()` functions will form the structure.
11
+ * Finally call to `build()` will type the resulting structure appropriately without internal functions.
12
+ */
13
+ static new() {
14
+ return new Struct();
15
+ }
16
+ constructor() {
17
+ this.members = [];
18
+ this.childStructs = {};
19
+ this.length = 0;
20
+ this.paddingByte = 0x00;
21
+ }
22
+ /**
23
+ * Returns raw contents of the structure as a sliced Buffer.
24
+ * Mutations to the returned buffer will not be reflected within struct.
25
+ */
26
+ serialize(alignment = "unaligned", padLength = true, parentOffset = 0) {
27
+ switch (alignment) {
28
+ case "unaligned": {
29
+ /* update child struct values and return as-is (unaligned) */
30
+ /* istanbul ignore next */
31
+ for (const key of Object.keys(this.childStructs)) {
32
+ const child = this.childStructs[key];
33
+ this.buffer.set(child.struct.serialize(alignment), child.offset);
34
+ }
35
+ return Buffer.from(this.buffer);
36
+ }
37
+ case "aligned": {
38
+ /* create 16-bit aligned buffer */
39
+ const aligned = Buffer.alloc(this.getLength(alignment, padLength, parentOffset), this.paddingByte);
40
+ let offset = 0;
41
+ for (const member of this.members) {
42
+ switch (member.type) {
43
+ case "uint8":
44
+ aligned.set(this.buffer.slice(member.offset, member.offset + 1), offset);
45
+ offset += 1;
46
+ break;
47
+ case "uint16":
48
+ offset += offset % 2;
49
+ aligned.set(this.buffer.slice(member.offset, member.offset + 2), offset);
50
+ offset += 2;
51
+ break;
52
+ case "uint32":
53
+ offset += offset % 2;
54
+ aligned.set(this.buffer.slice(member.offset, member.offset + 4), offset);
55
+ offset += 4;
56
+ break;
57
+ case "uint8array":
58
+ case "uint8array-reversed":
59
+ aligned.set(this.buffer.slice(member.offset, member.offset + member.length), offset);
60
+ offset += member.length;
61
+ break;
62
+ case "struct":
63
+ const structData = this.childStructs[member.key].struct.serialize(alignment, false, offset);
64
+ aligned.set(structData, offset);
65
+ offset += structData.length;
66
+ break;
67
+ }
68
+ }
69
+ return aligned;
70
+ }
71
+ }
72
+ }
73
+ /**
74
+ * Returns total length of the struct. Struct length is always fixed and configured
75
+ * by calls to `member()` methods.
76
+ */
77
+ /* istanbul ignore next */
78
+ getLength(alignment = "unaligned", padLength = true, parentOffset = 0) {
79
+ switch (alignment) {
80
+ case "unaligned": {
81
+ /* return actual length */
82
+ return this.length;
83
+ }
84
+ case "aligned": {
85
+ /* compute aligned length and return */
86
+ let length = this.members.reduce((offset, member) => {
87
+ switch (member.type) {
88
+ case "uint8":
89
+ offset += 1;
90
+ break;
91
+ case "uint16":
92
+ offset += ((parentOffset + offset) % 2) + 2;
93
+ break;
94
+ case "uint32":
95
+ offset += ((parentOffset + offset) % 2) + 4;
96
+ break;
97
+ case "uint8array":
98
+ case "uint8array-reversed":
99
+ offset += member.length;
100
+ break;
101
+ case "struct":
102
+ offset += this.childStructs[member.key].struct.getLength(alignment, false);
103
+ break;
104
+ }
105
+ return offset;
106
+ }, 0);
107
+ if (padLength) {
108
+ length += length % 2;
109
+ }
110
+ return length;
111
+ }
112
+ }
113
+ }
114
+ /**
115
+ * Returns structure contents in JS object format.
116
+ */
117
+ // eslint-disable-next-line max-len
118
+ // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types,@typescript-eslint/explicit-function-return-type
119
+ toJSON() {
120
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
121
+ return this.members.reduce((a, c) => { a[c.key] = this[c.key]; return a; }, {});
122
+ }
123
+ member(type, name, lengthOrStructFactory) {
124
+ const offset = this.length;
125
+ const structFactory = type === "struct" ? lengthOrStructFactory : undefined;
126
+ const length = type === "struct" ?
127
+ structFactory().length :
128
+ lengthOrStructFactory;
129
+ switch (type) {
130
+ case "uint8": {
131
+ Object.defineProperty(this, name, {
132
+ enumerable: true,
133
+ get: () => this.buffer.readUInt8(offset),
134
+ set: (value) => this.buffer.writeUInt8(value, offset)
135
+ });
136
+ this.length += 1;
137
+ break;
138
+ }
139
+ case "uint16": {
140
+ Object.defineProperty(this, name, {
141
+ enumerable: true,
142
+ get: () => this.buffer.readUInt16LE(offset),
143
+ set: (value) => this.buffer.writeUInt16LE(value, offset)
144
+ });
145
+ this.length += 2;
146
+ break;
147
+ }
148
+ case "uint32": {
149
+ Object.defineProperty(this, name, {
150
+ enumerable: true,
151
+ get: () => this.buffer.readUInt32LE(offset),
152
+ set: (value) => this.buffer.writeUInt32LE(value, offset)
153
+ });
154
+ this.length += 4;
155
+ break;
156
+ }
157
+ case "uint8array":
158
+ case "uint8array-reversed": {
159
+ /* istanbul ignore next */
160
+ if (!length) {
161
+ throw new Error("Struct builder requires length for `uint8array` and `uint8array-reversed` type");
162
+ }
163
+ Object.defineProperty(this, name, {
164
+ enumerable: true,
165
+ get: () => type === "uint8array-reversed" ?
166
+ Buffer.from(this.buffer.slice(offset, offset + length)).reverse() :
167
+ Buffer.from(this.buffer.slice(offset, offset + length)),
168
+ set: (value) => {
169
+ if (value.length !== length) {
170
+ throw new Error(`Invalid length for member ${name} (expected=${length}, got=${value.length})`);
171
+ }
172
+ if (type === "uint8array-reversed") {
173
+ value = Buffer.from(value).reverse();
174
+ }
175
+ for (let i = 0; i < length; i++) {
176
+ this.buffer[offset + i] = value[i];
177
+ }
178
+ }
179
+ });
180
+ this.length += length;
181
+ break;
182
+ }
183
+ case "struct": {
184
+ this.childStructs[name] = { offset, struct: structFactory() };
185
+ Object.defineProperty(this, name, {
186
+ enumerable: true,
187
+ get: () => this.childStructs[name].struct
188
+ });
189
+ this.length += length;
190
+ }
191
+ }
192
+ this.members.push({ key: name, offset, type, length });
193
+ return this;
194
+ }
195
+ /**
196
+ * Adds a custom method to the struct.
197
+ *
198
+ * *This method is stripped from type on struct `build()`.*
199
+ *
200
+ * @param name Name of the method to be appended.
201
+ * @param returnType Return type (eg. `Buffer.prototype`).
202
+ * @param body Function implementation. Takes struct as a first and single input parameter.
203
+ */
204
+ method(name, returnType, body) {
205
+ Object.defineProperty(this, name, {
206
+ enumerable: true,
207
+ configurable: false,
208
+ writable: false,
209
+ value: () => body.bind(this)(this)
210
+ });
211
+ return this;
212
+ }
213
+ /**
214
+ * Sets default data to initialize empty struct with.
215
+ *
216
+ * @param data Data to initialize empty struct with.
217
+ */
218
+ /* istanbul ignore next */
219
+ default(data) {
220
+ if (data.length !== this.length) {
221
+ throw new Error("Default value needs to have the length of unaligned structure.");
222
+ }
223
+ this.defaultData = Buffer.from(data);
224
+ return this;
225
+ }
226
+ /**
227
+ * Sets byte to use for padding.
228
+ *
229
+ * @param padding Byte to use for padding
230
+ */
231
+ /* istanbul ignore next */
232
+ padding(padding = 0x00) {
233
+ this.paddingByte = padding;
234
+ return this;
235
+ }
236
+ /**
237
+ * Creates the struct and optionally fills it with data. If data is provided, the length
238
+ * of the provided buffer needs to match the structure length.
239
+ *
240
+ * *This method is stripped from type on struct `build()`.*
241
+ */
242
+ build(data) {
243
+ if (data) {
244
+ if (data.length === this.getLength("unaligned")) {
245
+ this.buffer = Buffer.from(data);
246
+ for (const key of Object.keys(this.childStructs)) {
247
+ const child = this.childStructs[key];
248
+ child.struct.build(this.buffer.slice(child.offset, child.offset + child.struct.length));
249
+ }
250
+ }
251
+ else if (data.length === this.getLength("aligned")) {
252
+ this.buffer = Buffer.alloc(this.length, this.paddingByte);
253
+ let offset = 0;
254
+ for (const member of this.members) {
255
+ switch (member.type) {
256
+ case "uint8":
257
+ this.buffer.set(data.slice(offset, offset + 1), member.offset);
258
+ offset += 1;
259
+ break;
260
+ case "uint16":
261
+ offset += offset % 2;
262
+ this.buffer.set(data.slice(offset, offset + 2), member.offset);
263
+ offset += 2;
264
+ break;
265
+ case "uint32":
266
+ offset += offset % 2;
267
+ this.buffer.set(data.slice(offset, offset + 4), member.offset);
268
+ offset += 4;
269
+ break;
270
+ case "uint8array":
271
+ case "uint8array-reversed":
272
+ this.buffer.set(data.slice(offset, offset + member.length), member.offset);
273
+ offset += member.length;
274
+ break;
275
+ case "struct":
276
+ const child = this.childStructs[member.key];
277
+ child.struct.build(data.slice(offset, offset + child.struct.length));
278
+ this.buffer.set(child.struct.serialize(), member.offset);
279
+ offset += child.struct.length;
280
+ break;
281
+ }
282
+ }
283
+ }
284
+ else {
285
+ const expectedLengths = `${this.getLength("unaligned")}/${this.getLength("aligned")}`;
286
+ throw new Error(`Struct length mismatch (expected=${expectedLengths}, got=${data.length})`);
287
+ }
288
+ }
289
+ else {
290
+ this.buffer = this.defaultData ? Buffer.from(this.defaultData) : Buffer.alloc(this.length);
291
+ }
292
+ return this;
293
+ }
294
+ }
295
+ exports.Struct = Struct;
296
296
  //# sourceMappingURL=struct.js.map