@willieee802/zigbee-herdsman 0.19.21 → 0.36.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 (523) hide show
  1. package/.babelrc.js +0 -4
  2. package/.release-please-manifest.json +1 -2
  3. package/CHANGELOG.md +462 -0
  4. package/README.md +1 -1
  5. package/dist/adapter/adapter.d.ts +61 -61
  6. package/dist/adapter/adapter.d.ts.map +1 -1
  7. package/dist/adapter/adapter.js +158 -153
  8. package/dist/adapter/adapter.js.map +1 -1
  9. package/dist/adapter/deconz/adapter/deconzAdapter.d.ts +68 -68
  10. package/dist/adapter/deconz/adapter/deconzAdapter.d.ts.map +1 -1
  11. package/dist/adapter/deconz/adapter/deconzAdapter.js +1081 -1060
  12. package/dist/adapter/deconz/adapter/deconzAdapter.js.map +1 -1
  13. package/dist/adapter/deconz/adapter/index.d.ts +2 -2
  14. package/dist/adapter/deconz/adapter/index.js +10 -10
  15. package/dist/adapter/deconz/driver/constants.d.ts +104 -104
  16. package/dist/adapter/deconz/driver/constants.js +55 -55
  17. package/dist/adapter/deconz/driver/driver.d.ts +81 -81
  18. package/dist/adapter/deconz/driver/driver.d.ts.map +1 -1
  19. package/dist/adapter/deconz/driver/driver.js +750 -732
  20. package/dist/adapter/deconz/driver/driver.js.map +1 -1
  21. package/dist/adapter/deconz/driver/frame.d.ts +6 -6
  22. package/dist/adapter/deconz/driver/frame.js +13 -13
  23. package/dist/adapter/deconz/driver/frameParser.d.ts +2 -2
  24. package/dist/adapter/deconz/driver/frameParser.js +443 -443
  25. package/dist/adapter/deconz/driver/frameParser.js.map +1 -1
  26. package/dist/adapter/deconz/driver/parser.d.ts +12 -12
  27. package/dist/adapter/deconz/driver/parser.js +63 -61
  28. package/dist/adapter/deconz/driver/parser.js.map +1 -1
  29. package/dist/adapter/deconz/driver/writer.d.ts +8 -8
  30. package/dist/adapter/deconz/driver/writer.js +44 -44
  31. package/dist/adapter/ember/adapter/emberAdapter.d.ts +810 -0
  32. package/dist/adapter/ember/adapter/emberAdapter.d.ts.map +1 -0
  33. package/dist/adapter/ember/adapter/emberAdapter.js +2970 -0
  34. package/dist/adapter/ember/adapter/emberAdapter.js.map +1 -0
  35. package/dist/adapter/ember/adapter/endpoints.d.ts +25 -0
  36. package/dist/adapter/ember/adapter/endpoints.d.ts.map +1 -0
  37. package/dist/adapter/ember/adapter/endpoints.js +66 -0
  38. package/dist/adapter/ember/adapter/endpoints.js.map +1 -0
  39. package/dist/adapter/ember/adapter/index.d.ts +3 -0
  40. package/dist/adapter/ember/adapter/index.d.ts.map +1 -0
  41. package/dist/adapter/ember/adapter/index.js +6 -0
  42. package/dist/adapter/ember/adapter/index.js.map +1 -0
  43. package/dist/adapter/ember/adapter/oneWaitress.d.ts +100 -0
  44. package/dist/adapter/ember/adapter/oneWaitress.d.ts.map +1 -0
  45. package/dist/adapter/ember/adapter/oneWaitress.js +227 -0
  46. package/dist/adapter/ember/adapter/oneWaitress.js.map +1 -0
  47. package/dist/adapter/ember/adapter/requestQueue.d.ts +59 -0
  48. package/dist/adapter/ember/adapter/requestQueue.d.ts.map +1 -0
  49. package/dist/adapter/ember/adapter/requestQueue.js +144 -0
  50. package/dist/adapter/ember/adapter/requestQueue.js.map +1 -0
  51. package/dist/adapter/ember/adapter/tokensManager.d.ts +69 -0
  52. package/dist/adapter/ember/adapter/tokensManager.d.ts.map +1 -0
  53. package/dist/adapter/ember/adapter/tokensManager.js +685 -0
  54. package/dist/adapter/ember/adapter/tokensManager.js.map +1 -0
  55. package/dist/adapter/ember/consts.d.ts +198 -0
  56. package/dist/adapter/ember/consts.d.ts.map +1 -0
  57. package/dist/adapter/ember/consts.js +253 -0
  58. package/dist/adapter/ember/consts.js.map +1 -0
  59. package/dist/adapter/ember/enums.d.ts +2174 -0
  60. package/dist/adapter/ember/enums.d.ts.map +1 -0
  61. package/dist/adapter/ember/enums.js +2377 -0
  62. package/dist/adapter/ember/enums.js.map +1 -0
  63. package/dist/adapter/ember/ezsp/buffalo.d.ts +156 -0
  64. package/dist/adapter/ember/ezsp/buffalo.d.ts.map +1 -0
  65. package/dist/adapter/ember/ezsp/buffalo.js +1033 -0
  66. package/dist/adapter/ember/ezsp/buffalo.js.map +1 -0
  67. package/dist/adapter/ember/ezsp/consts.d.ts +116 -0
  68. package/dist/adapter/ember/ezsp/consts.d.ts.map +1 -0
  69. package/dist/adapter/ember/ezsp/consts.js +128 -0
  70. package/dist/adapter/ember/ezsp/consts.js.map +1 -0
  71. package/dist/adapter/ember/ezsp/enums.d.ts +879 -0
  72. package/dist/adapter/ember/ezsp/enums.d.ts.map +1 -0
  73. package/dist/adapter/ember/ezsp/enums.js +948 -0
  74. package/dist/adapter/ember/ezsp/enums.js.map +1 -0
  75. package/dist/adapter/ember/ezsp/ezsp.d.ts +2663 -0
  76. package/dist/adapter/ember/ezsp/ezsp.d.ts.map +1 -0
  77. package/dist/adapter/ember/ezsp/ezsp.js +6435 -0
  78. package/dist/adapter/ember/ezsp/ezsp.js.map +1 -0
  79. package/dist/adapter/ember/types.d.ts +733 -0
  80. package/dist/adapter/ember/types.d.ts.map +1 -0
  81. package/dist/adapter/ember/types.js +3 -0
  82. package/dist/adapter/ember/types.js.map +1 -0
  83. package/dist/adapter/ember/uart/ash.d.ts +458 -0
  84. package/dist/adapter/ember/uart/ash.d.ts.map +1 -0
  85. package/dist/adapter/ember/uart/ash.js +1601 -0
  86. package/dist/adapter/ember/uart/ash.js.map +1 -0
  87. package/dist/adapter/ember/uart/consts.d.ts +91 -0
  88. package/dist/adapter/ember/uart/consts.d.ts.map +1 -0
  89. package/dist/adapter/ember/uart/consts.js +100 -0
  90. package/dist/adapter/ember/uart/consts.js.map +1 -0
  91. package/dist/adapter/ember/uart/enums.d.ts +191 -0
  92. package/dist/adapter/ember/uart/enums.d.ts.map +1 -0
  93. package/dist/adapter/ember/uart/enums.js +197 -0
  94. package/dist/adapter/ember/uart/enums.js.map +1 -0
  95. package/dist/adapter/ember/uart/parser.d.ts +10 -0
  96. package/dist/adapter/ember/uart/parser.d.ts.map +1 -0
  97. package/dist/adapter/ember/uart/parser.js +41 -0
  98. package/dist/adapter/ember/uart/parser.js.map +1 -0
  99. package/dist/adapter/ember/uart/queues.d.ts +85 -0
  100. package/dist/adapter/ember/uart/queues.d.ts.map +1 -0
  101. package/dist/adapter/ember/uart/queues.js +212 -0
  102. package/dist/adapter/ember/uart/queues.js.map +1 -0
  103. package/dist/adapter/ember/uart/writer.d.ts +15 -0
  104. package/dist/adapter/ember/uart/writer.d.ts.map +1 -0
  105. package/dist/adapter/ember/uart/writer.js +48 -0
  106. package/dist/adapter/ember/uart/writer.js.map +1 -0
  107. package/dist/adapter/ember/utils/initters.d.ts +20 -0
  108. package/dist/adapter/ember/utils/initters.d.ts.map +1 -0
  109. package/dist/adapter/ember/utils/initters.js +58 -0
  110. package/dist/adapter/ember/utils/initters.js.map +1 -0
  111. package/dist/adapter/ember/utils/math.d.ts +51 -0
  112. package/dist/adapter/ember/utils/math.d.ts.map +1 -0
  113. package/dist/adapter/ember/utils/math.js +102 -0
  114. package/dist/adapter/ember/utils/math.js.map +1 -0
  115. package/dist/adapter/ember/zdo.d.ts +921 -0
  116. package/dist/adapter/ember/zdo.d.ts.map +1 -0
  117. package/dist/adapter/ember/zdo.js +723 -0
  118. package/dist/adapter/ember/zdo.js.map +1 -0
  119. package/dist/adapter/events.d.ts +47 -47
  120. package/dist/adapter/events.js +13 -14
  121. package/dist/adapter/events.js.map +1 -1
  122. package/dist/adapter/ezsp/adapter/backup.d.ts +13 -9
  123. package/dist/adapter/ezsp/adapter/backup.d.ts.map +1 -1
  124. package/dist/adapter/ezsp/adapter/backup.js +104 -53
  125. package/dist/adapter/ezsp/adapter/backup.js.map +1 -1
  126. package/dist/adapter/ezsp/adapter/ezspAdapter.d.ts +61 -60
  127. package/dist/adapter/ezsp/adapter/ezspAdapter.d.ts.map +1 -1
  128. package/dist/adapter/ezsp/adapter/ezspAdapter.js +626 -608
  129. package/dist/adapter/ezsp/adapter/ezspAdapter.js.map +1 -1
  130. package/dist/adapter/ezsp/adapter/index.d.ts +2 -2
  131. package/dist/adapter/ezsp/adapter/index.js +10 -10
  132. package/dist/adapter/ezsp/driver/commands.d.ts +36 -36
  133. package/dist/adapter/ezsp/driver/commands.d.ts.map +1 -1
  134. package/dist/adapter/ezsp/driver/commands.js +2388 -2359
  135. package/dist/adapter/ezsp/driver/commands.js.map +1 -1
  136. package/dist/adapter/ezsp/driver/consts.d.ts +10 -10
  137. package/dist/adapter/ezsp/driver/consts.js +13 -13
  138. package/dist/adapter/ezsp/driver/driver.d.ts +111 -101
  139. package/dist/adapter/ezsp/driver/driver.d.ts.map +1 -1
  140. package/dist/adapter/ezsp/driver/driver.js +816 -638
  141. package/dist/adapter/ezsp/driver/driver.js.map +1 -1
  142. package/dist/adapter/ezsp/driver/ezsp.d.ts +105 -96
  143. package/dist/adapter/ezsp/driver/ezsp.d.ts.map +1 -1
  144. package/dist/adapter/ezsp/driver/ezsp.js +652 -586
  145. package/dist/adapter/ezsp/driver/ezsp.js.map +1 -1
  146. package/dist/adapter/ezsp/driver/frame.d.ts +40 -0
  147. package/dist/adapter/ezsp/driver/frame.d.ts.map +1 -0
  148. package/dist/adapter/ezsp/driver/frame.js +101 -0
  149. package/dist/adapter/ezsp/driver/frame.js.map +1 -0
  150. package/dist/adapter/ezsp/driver/index.d.ts +3 -3
  151. package/dist/adapter/ezsp/driver/index.js +8 -8
  152. package/dist/adapter/ezsp/driver/multicast.d.ts +12 -12
  153. package/dist/adapter/ezsp/driver/multicast.js +77 -72
  154. package/dist/adapter/ezsp/driver/multicast.js.map +1 -1
  155. package/dist/adapter/ezsp/driver/parser.d.ts +11 -12
  156. package/dist/adapter/ezsp/driver/parser.d.ts.map +1 -1
  157. package/dist/adapter/ezsp/driver/parser.js +104 -111
  158. package/dist/adapter/ezsp/driver/parser.js.map +1 -1
  159. package/dist/adapter/ezsp/driver/types/basic.d.ts +62 -62
  160. package/dist/adapter/ezsp/driver/types/basic.js +208 -208
  161. package/dist/adapter/ezsp/driver/types/basic.js.map +1 -1
  162. package/dist/adapter/ezsp/driver/types/index.d.ts +9 -9
  163. package/dist/adapter/ezsp/driver/types/index.d.ts.map +1 -1
  164. package/dist/adapter/ezsp/driver/types/index.js +138 -133
  165. package/dist/adapter/ezsp/driver/types/index.js.map +1 -1
  166. package/dist/adapter/ezsp/driver/types/named.d.ts +1287 -697
  167. package/dist/adapter/ezsp/driver/types/named.d.ts.map +1 -1
  168. package/dist/adapter/ezsp/driver/types/named.js +2329 -1726
  169. package/dist/adapter/ezsp/driver/types/named.js.map +1 -1
  170. package/dist/adapter/ezsp/driver/types/struct.d.ts +270 -251
  171. package/dist/adapter/ezsp/driver/types/struct.d.ts.map +1 -1
  172. package/dist/adapter/ezsp/driver/types/struct.js +803 -708
  173. package/dist/adapter/ezsp/driver/types/struct.js.map +1 -1
  174. package/dist/adapter/ezsp/driver/uart.d.ts +48 -44
  175. package/dist/adapter/ezsp/driver/uart.d.ts.map +1 -1
  176. package/dist/adapter/ezsp/driver/uart.js +382 -368
  177. package/dist/adapter/ezsp/driver/uart.js.map +1 -1
  178. package/dist/adapter/ezsp/driver/utils/crc16ccitt.d.ts +2 -2
  179. package/dist/adapter/ezsp/driver/utils/crc16ccitt.js +55 -55
  180. package/dist/adapter/ezsp/driver/utils/crc16ccitt.js.map +1 -1
  181. package/dist/adapter/ezsp/driver/utils/index.d.ts +19 -18
  182. package/dist/adapter/ezsp/driver/utils/index.d.ts.map +1 -1
  183. package/dist/adapter/ezsp/driver/utils/index.js +72 -67
  184. package/dist/adapter/ezsp/driver/utils/index.js.map +1 -1
  185. package/dist/adapter/ezsp/driver/writer.d.ts +13 -13
  186. package/dist/adapter/ezsp/driver/writer.d.ts.map +1 -1
  187. package/dist/adapter/ezsp/driver/writer.js +85 -88
  188. package/dist/adapter/ezsp/driver/writer.js.map +1 -1
  189. package/dist/adapter/index.d.ts +4 -4
  190. package/dist/adapter/index.js +35 -35
  191. package/dist/adapter/serialPort.d.ts +13 -8
  192. package/dist/adapter/serialPort.d.ts.map +1 -1
  193. package/dist/adapter/serialPort.js +46 -22
  194. package/dist/adapter/serialPort.js.map +1 -1
  195. package/dist/adapter/serialPortUtils.d.ts +12 -12
  196. package/dist/adapter/serialPortUtils.js +18 -18
  197. package/dist/adapter/serialPortUtils.js.map +1 -1
  198. package/dist/adapter/socketPortUtils.d.ts +10 -10
  199. package/dist/adapter/socketPortUtils.js +16 -16
  200. package/dist/adapter/tstype.d.ts +85 -85
  201. package/dist/adapter/tstype.d.ts.map +1 -1
  202. package/dist/adapter/tstype.js +2 -2
  203. package/dist/adapter/z-stack/adapter/adapter-backup.d.ts +62 -62
  204. package/dist/adapter/z-stack/adapter/adapter-backup.js +462 -461
  205. package/dist/adapter/z-stack/adapter/adapter-backup.js.map +1 -1
  206. package/dist/adapter/z-stack/adapter/adapter-nv-memory.d.ts +150 -150
  207. package/dist/adapter/z-stack/adapter/adapter-nv-memory.js +258 -258
  208. package/dist/adapter/z-stack/adapter/adapter-nv-memory.js.map +1 -1
  209. package/dist/adapter/z-stack/adapter/endpoints.d.ts +11 -11
  210. package/dist/adapter/z-stack/adapter/endpoints.js +73 -73
  211. package/dist/adapter/z-stack/adapter/index.d.ts +2 -2
  212. package/dist/adapter/z-stack/adapter/index.js +8 -8
  213. package/dist/adapter/z-stack/adapter/manager.d.ts +86 -86
  214. package/dist/adapter/z-stack/adapter/manager.d.ts.map +1 -1
  215. package/dist/adapter/z-stack/adapter/manager.js +482 -476
  216. package/dist/adapter/z-stack/adapter/manager.js.map +1 -1
  217. package/dist/adapter/z-stack/adapter/tstype.d.ts +6 -6
  218. package/dist/adapter/z-stack/adapter/tstype.js +9 -10
  219. package/dist/adapter/z-stack/adapter/tstype.js.map +1 -1
  220. package/dist/adapter/z-stack/adapter/zStackAdapter.d.ts +81 -81
  221. package/dist/adapter/z-stack/adapter/zStackAdapter.d.ts.map +1 -1
  222. package/dist/adapter/z-stack/adapter/zStackAdapter.js +885 -868
  223. package/dist/adapter/z-stack/adapter/zStackAdapter.js.map +1 -1
  224. package/dist/adapter/z-stack/constants/af.d.ts +23 -23
  225. package/dist/adapter/z-stack/constants/af.js +27 -27
  226. package/dist/adapter/z-stack/constants/common.d.ts +278 -278
  227. package/dist/adapter/z-stack/constants/common.d.ts.map +1 -1
  228. package/dist/adapter/z-stack/constants/common.js +292 -289
  229. package/dist/adapter/z-stack/constants/common.js.map +1 -1
  230. package/dist/adapter/z-stack/constants/dbg.d.ts +22 -22
  231. package/dist/adapter/z-stack/constants/dbg.js +24 -24
  232. package/dist/adapter/z-stack/constants/index.d.ts +10 -10
  233. package/dist/adapter/z-stack/constants/index.js +47 -47
  234. package/dist/adapter/z-stack/constants/mac.d.ts +127 -127
  235. package/dist/adapter/z-stack/constants/mac.js +129 -129
  236. package/dist/adapter/z-stack/constants/sapi.d.ts +24 -24
  237. package/dist/adapter/z-stack/constants/sapi.js +26 -26
  238. package/dist/adapter/z-stack/constants/sys.d.ts +71 -71
  239. package/dist/adapter/z-stack/constants/sys.js +73 -73
  240. package/dist/adapter/z-stack/constants/util.d.ts +81 -81
  241. package/dist/adapter/z-stack/constants/util.js +83 -83
  242. package/dist/adapter/z-stack/constants/utils.d.ts +4 -4
  243. package/dist/adapter/z-stack/constants/utils.js +14 -14
  244. package/dist/adapter/z-stack/constants/zdo.d.ts +102 -102
  245. package/dist/adapter/z-stack/constants/zdo.js +104 -104
  246. package/dist/adapter/z-stack/models/index.d.ts +1 -1
  247. package/dist/adapter/z-stack/models/index.js +17 -17
  248. package/dist/adapter/z-stack/models/startup-options.d.ts +12 -12
  249. package/dist/adapter/z-stack/models/startup-options.js +2 -2
  250. package/dist/adapter/z-stack/structs/entries/address-manager-entry.d.ts +23 -23
  251. package/dist/adapter/z-stack/structs/entries/address-manager-entry.js +45 -45
  252. package/dist/adapter/z-stack/structs/entries/address-manager-entry.js.map +1 -1
  253. package/dist/adapter/z-stack/structs/entries/address-manager-table.d.ts +10 -10
  254. package/dist/adapter/z-stack/structs/entries/address-manager-table.js +22 -22
  255. package/dist/adapter/z-stack/structs/entries/aps-link-key-data-entry.d.ts +10 -10
  256. package/dist/adapter/z-stack/structs/entries/aps-link-key-data-entry.js +21 -21
  257. package/dist/adapter/z-stack/structs/entries/aps-link-key-data-table.d.ts +10 -10
  258. package/dist/adapter/z-stack/structs/entries/aps-link-key-data-table.js +23 -23
  259. package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-entry.d.ts +10 -10
  260. package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-entry.js +24 -24
  261. package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-table.d.ts +10 -10
  262. package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-table.js +23 -23
  263. package/dist/adapter/z-stack/structs/entries/channel-list.d.ts +8 -8
  264. package/dist/adapter/z-stack/structs/entries/channel-list.js +15 -15
  265. package/dist/adapter/z-stack/structs/entries/has-configured.d.ts +8 -8
  266. package/dist/adapter/z-stack/structs/entries/has-configured.js +16 -16
  267. package/dist/adapter/z-stack/structs/entries/index.d.ts +16 -16
  268. package/dist/adapter/z-stack/structs/entries/index.js +32 -32
  269. package/dist/adapter/z-stack/structs/entries/nib.d.ts +10 -10
  270. package/dist/adapter/z-stack/structs/entries/nib.js +68 -68
  271. package/dist/adapter/z-stack/structs/entries/nwk-key-descriptor.d.ts +10 -10
  272. package/dist/adapter/z-stack/structs/entries/nwk-key-descriptor.js +18 -18
  273. package/dist/adapter/z-stack/structs/entries/nwk-key.d.ts +8 -8
  274. package/dist/adapter/z-stack/structs/entries/nwk-key.js +15 -15
  275. package/dist/adapter/z-stack/structs/entries/nwk-pan-id.d.ts +8 -8
  276. package/dist/adapter/z-stack/structs/entries/nwk-pan-id.js +15 -15
  277. package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-entry.d.ts +13 -13
  278. package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-entry.js +23 -23
  279. package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-table.d.ts +10 -10
  280. package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-table.js +22 -22
  281. package/dist/adapter/z-stack/structs/entries/security-manager-entry.d.ts +20 -20
  282. package/dist/adapter/z-stack/structs/entries/security-manager-entry.js +36 -36
  283. package/dist/adapter/z-stack/structs/entries/security-manager-entry.js.map +1 -1
  284. package/dist/adapter/z-stack/structs/entries/security-manager-table.d.ts +10 -10
  285. package/dist/adapter/z-stack/structs/entries/security-manager-table.js +24 -24
  286. package/dist/adapter/z-stack/structs/index.d.ts +4 -4
  287. package/dist/adapter/z-stack/structs/index.js +20 -20
  288. package/dist/adapter/z-stack/structs/serializable-memory-object.d.ts +13 -13
  289. package/dist/adapter/z-stack/structs/serializable-memory-object.js +2 -2
  290. package/dist/adapter/z-stack/structs/struct.d.ts +99 -99
  291. package/dist/adapter/z-stack/structs/struct.js +296 -295
  292. package/dist/adapter/z-stack/structs/struct.js.map +1 -1
  293. package/dist/adapter/z-stack/structs/table.d.ts +94 -94
  294. package/dist/adapter/z-stack/structs/table.js +163 -161
  295. package/dist/adapter/z-stack/structs/table.js.map +1 -1
  296. package/dist/adapter/z-stack/unpi/constants.d.ts +28 -28
  297. package/dist/adapter/z-stack/unpi/constants.js +39 -41
  298. package/dist/adapter/z-stack/unpi/constants.js.map +1 -1
  299. package/dist/adapter/z-stack/unpi/frame.d.ts +16 -16
  300. package/dist/adapter/z-stack/unpi/frame.js +54 -48
  301. package/dist/adapter/z-stack/unpi/frame.js.map +1 -1
  302. package/dist/adapter/z-stack/unpi/index.d.ts +5 -5
  303. package/dist/adapter/z-stack/unpi/index.js +37 -37
  304. package/dist/adapter/z-stack/unpi/parser.d.ts +10 -10
  305. package/dist/adapter/z-stack/unpi/parser.js +75 -74
  306. package/dist/adapter/z-stack/unpi/parser.js.map +1 -1
  307. package/dist/adapter/z-stack/unpi/writer.d.ts +10 -10
  308. package/dist/adapter/z-stack/unpi/writer.js +44 -44
  309. package/dist/adapter/z-stack/utils/channel-list.d.ts +20 -20
  310. package/dist/adapter/z-stack/utils/channel-list.js +40 -40
  311. package/dist/adapter/z-stack/utils/channel-list.js.map +1 -1
  312. package/dist/adapter/z-stack/utils/index.d.ts +2 -2
  313. package/dist/adapter/z-stack/utils/index.js +18 -18
  314. package/dist/adapter/z-stack/utils/network-options.d.ts +8 -8
  315. package/dist/adapter/z-stack/utils/network-options.js +22 -22
  316. package/dist/adapter/z-stack/znp/buffaloZnp.d.ts +11 -11
  317. package/dist/adapter/z-stack/znp/buffaloZnp.js +113 -113
  318. package/dist/adapter/z-stack/znp/buffaloZnp.js.map +1 -1
  319. package/dist/adapter/z-stack/znp/definition.d.ts +5 -5
  320. package/dist/adapter/z-stack/znp/definition.js +3050 -3050
  321. package/dist/adapter/z-stack/znp/index.d.ts +3 -3
  322. package/dist/adapter/z-stack/znp/index.js +10 -10
  323. package/dist/adapter/z-stack/znp/parameterType.d.ts +22 -22
  324. package/dist/adapter/z-stack/znp/parameterType.js +25 -25
  325. package/dist/adapter/z-stack/znp/tstype.d.ts +21 -21
  326. package/dist/adapter/z-stack/znp/tstype.js +2 -2
  327. package/dist/adapter/z-stack/znp/znp.d.ts +44 -43
  328. package/dist/adapter/z-stack/znp/znp.d.ts.map +1 -1
  329. package/dist/adapter/z-stack/znp/znp.js +326 -325
  330. package/dist/adapter/z-stack/znp/znp.js.map +1 -1
  331. package/dist/adapter/z-stack/znp/zpiObject.d.ts +19 -19
  332. package/dist/adapter/z-stack/znp/zpiObject.js +102 -96
  333. package/dist/adapter/z-stack/znp/zpiObject.js.map +1 -1
  334. package/dist/adapter/zigate/adapter/index.d.ts +2 -2
  335. package/dist/adapter/zigate/adapter/index.js +10 -10
  336. package/dist/adapter/zigate/adapter/zigateAdapter.d.ts +70 -70
  337. package/dist/adapter/zigate/adapter/zigateAdapter.js +689 -684
  338. package/dist/adapter/zigate/adapter/zigateAdapter.js.map +1 -1
  339. package/dist/adapter/zigate/debug.d.ts +7 -7
  340. package/dist/adapter/zigate/debug.d.ts.map +1 -1
  341. package/dist/adapter/zigate/debug.js +19 -22
  342. package/dist/adapter/zigate/debug.js.map +1 -1
  343. package/dist/adapter/zigate/driver/buffaloZiGate.d.ts +18 -18
  344. package/dist/adapter/zigate/driver/buffaloZiGate.js +139 -139
  345. package/dist/adapter/zigate/driver/buffaloZiGate.js.map +1 -1
  346. package/dist/adapter/zigate/driver/commandType.d.ts +41 -41
  347. package/dist/adapter/zigate/driver/commandType.js +385 -385
  348. package/dist/adapter/zigate/driver/commandType.js.map +1 -1
  349. package/dist/adapter/zigate/driver/constants.d.ts +276 -276
  350. package/dist/adapter/zigate/driver/constants.d.ts.map +1 -1
  351. package/dist/adapter/zigate/driver/constants.js +371 -371
  352. package/dist/adapter/zigate/driver/constants.js.map +1 -1
  353. package/dist/adapter/zigate/driver/frame.d.ts +26 -26
  354. package/dist/adapter/zigate/driver/frame.js +172 -172
  355. package/dist/adapter/zigate/driver/frame.js.map +1 -1
  356. package/dist/adapter/zigate/driver/messageType.d.ts +11 -11
  357. package/dist/adapter/zigate/driver/messageType.js +278 -278
  358. package/dist/adapter/zigate/driver/messageType.js.map +1 -1
  359. package/dist/adapter/zigate/driver/parameterType.d.ts +20 -20
  360. package/dist/adapter/zigate/driver/parameterType.js +23 -23
  361. package/dist/adapter/zigate/driver/ziGateObject.d.ts +23 -23
  362. package/dist/adapter/zigate/driver/ziGateObject.js +110 -106
  363. package/dist/adapter/zigate/driver/ziGateObject.js.map +1 -1
  364. package/dist/adapter/zigate/driver/zigate.d.ts +49 -49
  365. package/dist/adapter/zigate/driver/zigate.d.ts.map +1 -1
  366. package/dist/adapter/zigate/driver/zigate.js +296 -303
  367. package/dist/adapter/zigate/driver/zigate.js.map +1 -1
  368. package/dist/buffalo/buffalo.d.ts +50 -50
  369. package/dist/buffalo/buffalo.js +324 -322
  370. package/dist/buffalo/buffalo.js.map +1 -1
  371. package/dist/buffalo/index.d.ts +3 -3
  372. package/dist/buffalo/index.js +33 -33
  373. package/dist/buffalo/tstype.d.ts +8 -8
  374. package/dist/buffalo/tstype.js +2 -2
  375. package/dist/controller/controller.d.ts +113 -113
  376. package/dist/controller/controller.d.ts.map +1 -1
  377. package/dist/controller/controller.js +641 -619
  378. package/dist/controller/controller.js.map +1 -1
  379. package/dist/controller/database.d.ts +18 -18
  380. package/dist/controller/database.js +96 -93
  381. package/dist/controller/database.js.map +1 -1
  382. package/dist/controller/events.d.ts +58 -58
  383. package/dist/controller/events.d.ts.map +1 -1
  384. package/dist/controller/events.js +108 -102
  385. package/dist/controller/events.js.map +1 -1
  386. package/dist/controller/greenPower.d.ts +12 -12
  387. package/dist/controller/greenPower.js +221 -220
  388. package/dist/controller/greenPower.js.map +1 -1
  389. package/dist/controller/helpers/index.d.ts +2 -2
  390. package/dist/controller/helpers/index.js +28 -28
  391. package/dist/controller/helpers/request.d.ts +21 -22
  392. package/dist/controller/helpers/request.d.ts.map +1 -1
  393. package/dist/controller/helpers/request.js +77 -71
  394. package/dist/controller/helpers/request.js.map +1 -1
  395. package/dist/controller/helpers/requestQueue.d.ts +13 -0
  396. package/dist/controller/helpers/requestQueue.d.ts.map +1 -0
  397. package/dist/controller/helpers/requestQueue.js +116 -0
  398. package/dist/controller/helpers/requestQueue.js.map +1 -0
  399. package/dist/controller/helpers/zclFrameConverter.d.ts +7 -7
  400. package/dist/controller/helpers/zclFrameConverter.d.ts.map +1 -1
  401. package/dist/controller/helpers/zclFrameConverter.js +50 -31
  402. package/dist/controller/helpers/zclFrameConverter.js.map +1 -1
  403. package/dist/controller/helpers/zclTransactionSequenceNumber.d.ts +5 -5
  404. package/dist/controller/helpers/zclTransactionSequenceNumber.js +13 -13
  405. package/dist/controller/helpers/zclTransactionSequenceNumber.js.map +1 -1
  406. package/dist/controller/index.d.ts +5 -5
  407. package/dist/controller/index.js +8 -8
  408. package/dist/controller/logger-stub.d.ts +6 -6
  409. package/dist/controller/logger-stub.js +2 -2
  410. package/dist/controller/model/device.d.ts +132 -133
  411. package/dist/controller/model/device.d.ts.map +1 -1
  412. package/dist/controller/model/device.js +726 -717
  413. package/dist/controller/model/device.js.map +1 -1
  414. package/dist/controller/model/endpoint.d.ts +128 -131
  415. package/dist/controller/model/endpoint.d.ts.map +1 -1
  416. package/dist/controller/model/endpoint.js +755 -821
  417. package/dist/controller/model/endpoint.js.map +1 -1
  418. package/dist/controller/model/entity.d.ts +14 -14
  419. package/dist/controller/model/entity.js +26 -26
  420. package/dist/controller/model/entity.js.map +1 -1
  421. package/dist/controller/model/group.d.ts +38 -38
  422. package/dist/controller/model/group.d.ts.map +1 -1
  423. package/dist/controller/model/group.js +225 -221
  424. package/dist/controller/model/group.js.map +1 -1
  425. package/dist/controller/model/index.d.ts +5 -5
  426. package/dist/controller/model/index.js +14 -14
  427. package/dist/controller/touchlink.d.ts +19 -19
  428. package/dist/controller/touchlink.js +159 -157
  429. package/dist/controller/touchlink.js.map +1 -1
  430. package/dist/controller/tstype.d.ts +20 -21
  431. package/dist/controller/tstype.d.ts.map +1 -1
  432. package/dist/controller/tstype.js +8 -9
  433. package/dist/controller/tstype.js.map +1 -1
  434. package/dist/index.d.ts +3 -3
  435. package/dist/index.js +33 -33
  436. package/dist/models/backup-storage-legacy.d.ts +26 -26
  437. package/dist/models/backup-storage-legacy.js +2 -2
  438. package/dist/models/backup-storage-unified.d.ts +49 -49
  439. package/dist/models/backup-storage-unified.js +2 -2
  440. package/dist/models/backup.d.ts +37 -37
  441. package/dist/models/backup.js +2 -2
  442. package/dist/models/index.d.ts +4 -4
  443. package/dist/models/index.js +20 -20
  444. package/dist/models/network-options.d.ts +12 -12
  445. package/dist/models/network-options.js +2 -2
  446. package/dist/utils/assertString.d.ts +2 -2
  447. package/dist/utils/assertString.js +8 -8
  448. package/dist/utils/assertString.js.map +1 -1
  449. package/dist/utils/backup.d.ts +20 -20
  450. package/dist/utils/backup.d.ts.map +1 -1
  451. package/dist/utils/backup.js +189 -187
  452. package/dist/utils/backup.js.map +1 -1
  453. package/dist/utils/equalsPartial.d.ts +2 -2
  454. package/dist/utils/equalsPartial.js +11 -11
  455. package/dist/utils/index.d.ts +9 -9
  456. package/dist/utils/index.js +45 -45
  457. package/dist/utils/isNumberArray.d.ts +2 -2
  458. package/dist/utils/isNumberArray.js +6 -6
  459. package/dist/utils/queue.d.ts +11 -11
  460. package/dist/utils/queue.d.ts.map +1 -1
  461. package/dist/utils/queue.js +61 -50
  462. package/dist/utils/queue.js.map +1 -1
  463. package/dist/utils/realpathSync.d.ts +2 -2
  464. package/dist/utils/realpathSync.js +12 -12
  465. package/dist/utils/wait.d.ts +2 -2
  466. package/dist/utils/wait.js +8 -8
  467. package/dist/utils/waitress.d.ts +21 -21
  468. package/dist/utils/waitress.d.ts.map +1 -1
  469. package/dist/utils/waitress.js +68 -61
  470. package/dist/utils/waitress.js.map +1 -1
  471. package/dist/zcl/buffaloZcl.d.ts +41 -41
  472. package/dist/zcl/buffaloZcl.d.ts.map +1 -1
  473. package/dist/zcl/buffaloZcl.js +594 -591
  474. package/dist/zcl/buffaloZcl.js.map +1 -1
  475. package/dist/zcl/definition/buffaloZclDataType.d.ts +17 -17
  476. package/dist/zcl/definition/buffaloZclDataType.js +20 -20
  477. package/dist/zcl/definition/cluster.d.ts +29 -29
  478. package/dist/zcl/definition/cluster.d.ts.map +1 -1
  479. package/dist/zcl/definition/cluster.js +5530 -5335
  480. package/dist/zcl/definition/cluster.js.map +1 -1
  481. package/dist/zcl/definition/dataType.d.ts +59 -59
  482. package/dist/zcl/definition/dataType.js +64 -64
  483. package/dist/zcl/definition/direction.d.ts +5 -5
  484. package/dist/zcl/definition/direction.js +8 -8
  485. package/dist/zcl/definition/endpointDeviceType.d.ts +4 -4
  486. package/dist/zcl/definition/endpointDeviceType.js +15 -15
  487. package/dist/zcl/definition/foundation.d.ts +11 -11
  488. package/dist/zcl/definition/foundation.js +167 -167
  489. package/dist/zcl/definition/frameControl.d.ts +10 -10
  490. package/dist/zcl/definition/frameControl.js +2 -2
  491. package/dist/zcl/definition/frameType.d.ts +5 -5
  492. package/dist/zcl/definition/frameType.js +8 -8
  493. package/dist/zcl/definition/index.d.ts +13 -13
  494. package/dist/zcl/definition/index.js +51 -51
  495. package/dist/zcl/definition/manufacturerCode.d.ts +1077 -1074
  496. package/dist/zcl/definition/manufacturerCode.d.ts.map +1 -1
  497. package/dist/zcl/definition/manufacturerCode.js +1082 -1079
  498. package/dist/zcl/definition/manufacturerCode.js.map +1 -1
  499. package/dist/zcl/definition/powerSource.d.ts +4 -4
  500. package/dist/zcl/definition/powerSource.js +12 -12
  501. package/dist/zcl/definition/status.d.ts +38 -38
  502. package/dist/zcl/definition/status.js +41 -41
  503. package/dist/zcl/definition/tstype.d.ts +16 -16
  504. package/dist/zcl/definition/tstype.js +2 -2
  505. package/dist/zcl/index.d.ts +16 -16
  506. package/dist/zcl/index.js +55 -55
  507. package/dist/zcl/tstype.d.ts +56 -56
  508. package/dist/zcl/tstype.js +9 -10
  509. package/dist/zcl/tstype.js.map +1 -1
  510. package/dist/zcl/utils.d.ts +6 -6
  511. package/dist/zcl/utils.js +164 -165
  512. package/dist/zcl/utils.js.map +1 -1
  513. package/dist/zcl/zclFrame.d.ts +40 -40
  514. package/dist/zcl/zclFrame.js +351 -347
  515. package/dist/zcl/zclFrame.js.map +1 -1
  516. package/dist/zcl/zclHeader.d.ts +8 -8
  517. package/dist/zcl/zclHeader.js +2 -2
  518. package/dist/zcl/zclStatusError.d.ts +5 -5
  519. package/dist/zcl/zclStatusError.js +14 -13
  520. package/dist/zcl/zclStatusError.js.map +1 -1
  521. package/package.json +11 -11
  522. package/release-please-config.json +1 -5
  523. package/tsconfig.json +4 -2
@@ -0,0 +1,197 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NcpFailedCode = exports.AshReservedByte = exports.AshFrameType = void 0;
4
+ /**
5
+ * Identify the type of frame from control byte.
6
+ *
7
+ * Control byte formats
8
+ * +---------+----+----+----+----+----+----+----+----++---------+
9
+ * | | B7 | B6 | B5 | B4 | B3 | B2 | B1 | B0 || Range |
10
+ * +---------+----+----+----+----+----+----+----+----++---------+
11
+ * | DATA | 0 | frameNum | rF | ackNum ||0x00-0x7F|
12
+ * +---------+----+----+----+----+----+----+----+----++---------+
13
+ * | ACK | 1 | 0 | 0 | pF | nF | ackNum ||0x80-0x9F|
14
+ * | NAK | 1 | 0 | 1 | pF | nF | ackNum ||0xA0-0xBF|
15
+ * +---------+----+----+----+----+----+----+----+----++---------+
16
+ * | RST | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 || 0xC0 |
17
+ * | RSTACK | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 1 || 0xC1 |
18
+ * | ERROR | 1 | 1 | 0 | 0 | 0 | 0 | 1 | 0 || 0xC2 |
19
+ * +---------+----+----+----+----+----+----+----+----++---------+
20
+ * rF = rFlag (retransmission flag)
21
+ * nF = nFlag (receiver not ready flag, always 0 in frames sent by the NCP)
22
+ * pF = flag reserved for future use
23
+ * frameNum = DATA frame’s 3-bit sequence number
24
+ * ackNum = acknowledges receipt of DATA frames up to, but not including, ackNum
25
+ * Control byte values 0xC3-0xFE are unused, 0xFF is reserved.
26
+ */
27
+ var AshFrameType;
28
+ (function (AshFrameType) {
29
+ AshFrameType[AshFrameType["INVALID"] = -1] = "INVALID";
30
+ /**
31
+ * Carries all EZSP frames.
32
+ *
33
+ * [CONTROL, EZSP 0, EZSP 1, EZSP 2, EZSP n, CRC high, CRC low, FLAG]
34
+ *
35
+ * Notation used in documentation: DATA(F, A, R)
36
+ * - F: frame number (frmNum)
37
+ * - A: acknowledge number (ackNum)
38
+ * - R: retransmit flag (reTx)
39
+ *
40
+ * Example without pseudo-random sequence applied to Data Field:
41
+ * - EZSP “version” command: 00 00 00 02
42
+ * - DATA(2, 5, 0) = 25 00 00 00 02 1A AD 7E
43
+ * - EZSP “version” response: 00 80 00 02 02 11 30
44
+ * - DATA(5, 3, 0) = 53 00 80 00 02 02 11 30 63 16 7E
45
+ *
46
+ * Example with pseudo-random sequence applied to Data Field:
47
+ * - EZSP “version” command: 00 00 00 02
48
+ * - DATA(2, 5, 0) = 25 42 21 A8 56 A6 09 7E
49
+ * - EZSP “version” response: 00 80 00 02 02 11 30
50
+ * - DATA(5, 3, 0) = 53 42 A1 A8 56 28 04 82 96 23 7E
51
+ *
52
+ * Sent by: NCP, Host
53
+ */
54
+ AshFrameType[AshFrameType["DATA"] = 0] = "DATA";
55
+ /**
56
+ * Acknowledges receipt of a valid DATA frame.
57
+ *
58
+ * [CONTROL, CRC high, CRC low, FLAG]
59
+ *
60
+ * Notation used in documentation: ACK(A)+/-
61
+ * - A: acknowledge number (ackNum)
62
+ * - +/-: not ready flag (nRdy); “+” = “0” = “ready”; “-” = “1” = “not ready”
63
+ *
64
+ * Examples:
65
+ * - ACK(1)+ :81 60 59 7E
66
+ * - ACK(6)– : 8E 91 B6 7E
67
+ *
68
+ * Sent by: NCP, Host
69
+ */
70
+ AshFrameType[AshFrameType["ACK"] = 128] = "ACK";
71
+ /**
72
+ * Indicates receipt of a DATA frame with an error or that was discarded due to lack of memory.
73
+ *
74
+ * [CONTROL, CRC high, CRC low, FLAG]
75
+ *
76
+ * Notation used in documentation: NAK(A)+/-
77
+ * - A: acknowledge number (ackNum)
78
+ * - +/-: not ready flag (nRdy); “+” = “0” = “ready”; “-” = “1” = “not ready”
79
+ *
80
+ * Examples:
81
+ * - NAK(6)+ : A6 34 DC 7E
82
+ * - NAK(5)- : AD 85 B7 7E
83
+ *
84
+ * Sent by: NCP, Host
85
+ */
86
+ AshFrameType[AshFrameType["NAK"] = 160] = "NAK";
87
+ /**
88
+ * Requests the NCP to perform a software reset (valid even if the NCP is in the FAILED state).
89
+ *
90
+ * [CONTROL, CRC high, CRC low, FLAG]
91
+ *
92
+ * Notation used in documentation: RST()
93
+ *
94
+ * Example: C0 38 BC 7E
95
+ *
96
+ * Sent by: Host
97
+ */
98
+ AshFrameType[AshFrameType["RST"] = 192] = "RST";
99
+ /**
100
+ * Informs the Host that the NCP has reset and the reason for the reset.
101
+ *
102
+ * [CONTROL, version, reset code, CRC high, CRC low, FLAG]
103
+ *
104
+ * Notation used in documentation: RSTACK(V, C)
105
+ * - V: version
106
+ * - C: reset code
107
+ *
108
+ * Example: C1 02 02 9B 7B 7E
109
+ *
110
+ * Sent by: NCP
111
+ */
112
+ AshFrameType[AshFrameType["RSTACK"] = 193] = "RSTACK";
113
+ /**
114
+ * Informs the Host that the NCP detected a fatal error and is in the FAILED state.
115
+ *
116
+ * [CONTROL, version, error code, CRC high, CRC low, FLAG]
117
+ *
118
+ * Notation used in documentation: ERROR(V, C )
119
+ * - V: version
120
+ * - C: reset code
121
+ *
122
+ * Example: C2 01 52 FA BD 7E
123
+ *
124
+ * Sent by: NCP
125
+ */
126
+ AshFrameType[AshFrameType["ERROR"] = 194] = "ERROR";
127
+ })(AshFrameType || (exports.AshFrameType = AshFrameType = {}));
128
+ var AshReservedByte;
129
+ (function (AshReservedByte) {
130
+ /**
131
+ * Marks the end of a frame.
132
+ *
133
+ * When a Flag Byte is received, the data received since the last Flag Byte or Cancel Byte
134
+ * is tested to see whether it is a valid frame. */
135
+ AshReservedByte[AshReservedByte["FLAG"] = 126] = "FLAG";
136
+ /**
137
+ * Indicates that the following byte is escaped.
138
+ *
139
+ * If the byte after the Escape Byte is not a reserved byte,
140
+ * bit 5 of the byte is complemented to restore its original value.
141
+ * If the byte after the Escape Byte is a reserved value, the Escape Byte has no effect. */
142
+ AshReservedByte[AshReservedByte["ESCAPE"] = 125] = "ESCAPE";
143
+ /**
144
+ * Resume transmission.
145
+ *
146
+ * Used in XON/XOFF flow control. Always ignored if received by the NCP.
147
+ */
148
+ AshReservedByte[AshReservedByte["XON"] = 17] = "XON";
149
+ /**
150
+ * Stop transmission.
151
+ *
152
+ * Used in XON/XOFF flow control. Always ignored if received by the NCP
153
+ */
154
+ AshReservedByte[AshReservedByte["XOFF"] = 19] = "XOFF";
155
+ /**
156
+ * Replaces a byte received with a low-level communication error (e.g., framing error) from the UART.
157
+ *
158
+ * When a Substitute Byte is processed, the data between the previous and the next Flag Bytes is ignored.
159
+ */
160
+ AshReservedByte[AshReservedByte["SUBSTITUTE"] = 24] = "SUBSTITUTE";
161
+ /**
162
+ * Terminates a frame in progress.
163
+ *
164
+ * A Cancel Byte causes all data received since the previous Flag Byte to be ignored.
165
+ * Note that as a special case, RST and RSTACK frames are preceded by Cancel Bytes to ignore any link startup noise.
166
+ */
167
+ AshReservedByte[AshReservedByte["CANCEL"] = 26] = "CANCEL";
168
+ })(AshReservedByte || (exports.AshReservedByte = AshReservedByte = {}));
169
+ /**
170
+ * The NCP enters the FAILED state if it detects one of the following errors:
171
+ * - An abnormal internal reset due to an error, failed assertion, or fault.
172
+ * - Exceeding the maximum number of consecutive acknowledgement timeouts.
173
+ *
174
+ * When the NCP enters the FAILED state, the NCP sends an ERROR frame containing a reset or error code
175
+ * and will reply to all subsequent frames received, except RST, with an ERROR frame.
176
+ * To reinitialize the ASH protocol, the Host must reset the NCP by either asserting the nRESET pin or sending the RST frame.
177
+ *
178
+ * The codes are returned by the NCP in the:
179
+ * - Reset Code byte of a RSTACK frame
180
+ * - Error Code byte of an ERROR frame.
181
+ *
182
+ * Silicon Labs wireless mesh chips can detect numerous reset fault causes beyond those in the table.
183
+ * When sent to the host, these new reset codes have 0x80 added to the value returned by their HAL’s reset code.
184
+ */
185
+ var NcpFailedCode;
186
+ (function (NcpFailedCode) {
187
+ NcpFailedCode[NcpFailedCode["RESET_UNKNOWN_REASON"] = 0] = "RESET_UNKNOWN_REASON";
188
+ NcpFailedCode[NcpFailedCode["RESET_EXTERNAL"] = 1] = "RESET_EXTERNAL";
189
+ NcpFailedCode[NcpFailedCode["RESET_POWERON"] = 2] = "RESET_POWERON";
190
+ NcpFailedCode[NcpFailedCode["RESET_WATCHDOG"] = 3] = "RESET_WATCHDOG";
191
+ NcpFailedCode[NcpFailedCode["RESET_ASSERT"] = 6] = "RESET_ASSERT";
192
+ NcpFailedCode[NcpFailedCode["RESET_BOOTLOADER"] = 9] = "RESET_BOOTLOADER";
193
+ NcpFailedCode[NcpFailedCode["RESET_SOFTWARE"] = 11] = "RESET_SOFTWARE";
194
+ NcpFailedCode[NcpFailedCode["ERROR_EXCEEDED_MAXIMUM_ACK_TIMEOUT_COUNT"] = 81] = "ERROR_EXCEEDED_MAXIMUM_ACK_TIMEOUT_COUNT";
195
+ NcpFailedCode[NcpFailedCode["CHIP_SPECIFIC_ERROR_RESET_CODE"] = 128] = "CHIP_SPECIFIC_ERROR_RESET_CODE";
196
+ })(NcpFailedCode || (exports.NcpFailedCode = NcpFailedCode = {}));
197
+ //# sourceMappingURL=enums.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enums.js","sourceRoot":"","sources":["../../../../src/adapter/ember/uart/enums.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,IAAY,YAmGX;AAnGD,WAAY,YAAY;IACpB,sDAAY,CAAA;IACZ;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,+CAAQ,CAAA;IACR;;;;;;;;;;;;;;OAcG;IACH,+CAAU,CAAA;IACV;;;;;;;;;;;;;;OAcG;IACH,+CAAU,CAAA;IACV;;;;;;;;;;OAUG;IACH,+CAAU,CAAA;IACV;;;;;;;;;;;;OAYG;IACH,qDAAa,CAAA;IACb;;;;;;;;;;;;OAYG;IACH,mDAAY,CAAA;AAChB,CAAC,EAnGW,YAAY,4BAAZ,YAAY,QAmGvB;AAED,IAAY,eAuCX;AAvCD,WAAY,eAAe;IACvB;;;;uDAImD;IACnD,uDAAW,CAAA;IACX;;;;;+FAK2F;IAC3F,2DAAa,CAAA;IACb;;;;OAIG;IACH,oDAAU,CAAA;IACV;;;;OAIG;IACH,sDAAW,CAAA;IACX;;;;OAIG;IACH,kEAAiB,CAAA;IACjB;;;;;OAKG;IACH,0DAAa,CAAA;AACjB,CAAC,EAvCW,eAAe,+BAAf,eAAe,QAuC1B;AAED;;;;;;;;;;;;;;;GAeG;AACH,IAAY,aAUX;AAVD,WAAY,aAAa;IACrB,iFAAwB,CAAA;IACxB,qEAAkB,CAAA;IAClB,mEAAiB,CAAA;IACjB,qEAAkB,CAAA;IAClB,iEAAgB,CAAA;IAChB,yEAAoB,CAAA;IACpB,sEAAmB,CAAA;IACnB,0HAA+C,CAAA;IAC/C,uGAAqC,CAAA;AACzC,CAAC,EAVW,aAAa,6BAAb,aAAa,QAUxB"}
@@ -0,0 +1,10 @@
1
+ /// <reference types="node" />
2
+ /// <reference types="node" />
3
+ import { Transform, TransformCallback, TransformOptions } from "stream";
4
+ export declare class AshParser extends Transform {
5
+ private buffer;
6
+ constructor(opts?: TransformOptions);
7
+ _transform(chunk: Buffer, encoding: BufferEncoding, cb: TransformCallback): void;
8
+ _flush(cb: TransformCallback): void;
9
+ }
10
+ //# sourceMappingURL=parser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../../../src/adapter/ember/uart/parser.ts"],"names":[],"mappings":";;AAEA,OAAO,EAAC,SAAS,EAAE,iBAAiB,EAAE,gBAAgB,EAAC,MAAM,QAAQ,CAAC;AAKtE,qBAAa,SAAU,SAAQ,SAAS;IACpC,OAAO,CAAC,MAAM,CAAS;gBAEJ,IAAI,CAAC,EAAE,gBAAgB;IAM1C,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,EAAE,EAAE,iBAAiB,GAAG,IAAI;IAsBhF,MAAM,CAAC,EAAE,EAAE,iBAAiB,GAAG,IAAI;CAOtC"}
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.AshParser = void 0;
7
+ /* istanbul ignore file */
8
+ const debug_1 = __importDefault(require("debug"));
9
+ const stream_1 = require("stream");
10
+ const enums_1 = require("./enums");
11
+ const debug = (0, debug_1.default)('zigbee-herdsman:adapter:ember:uart:ash:parser');
12
+ class AshParser extends stream_1.Transform {
13
+ buffer;
14
+ constructor(opts) {
15
+ super(opts);
16
+ this.buffer = Buffer.alloc(0);
17
+ }
18
+ _transform(chunk, encoding, cb) {
19
+ let data = Buffer.concat([this.buffer, chunk]);
20
+ let position;
21
+ while ((position = data.indexOf(enums_1.AshReservedByte.FLAG)) !== -1) {
22
+ // emit the frame via 'data' event
23
+ const frame = data.subarray(0, position + 1);
24
+ setImmediate(() => {
25
+ debug(`<<<< [FRAME raw=${frame.toString('hex')}]`);
26
+ this.push(frame);
27
+ });
28
+ // remove the frame from internal buffer (set below)
29
+ data = data.subarray(position + 1);
30
+ }
31
+ this.buffer = data;
32
+ cb();
33
+ }
34
+ _flush(cb) {
35
+ this.push(this.buffer);
36
+ this.buffer = Buffer.alloc(0);
37
+ cb();
38
+ }
39
+ }
40
+ exports.AshParser = AshParser;
41
+ //# sourceMappingURL=parser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parser.js","sourceRoot":"","sources":["../../../../src/adapter/ember/uart/parser.ts"],"names":[],"mappings":";;;;;;AAAA,0BAA0B;AAC1B,kDAA0B;AAC1B,mCAAsE;AACtE,mCAAwC;AAExC,MAAM,KAAK,GAAG,IAAA,eAAK,EAAC,+CAA+C,CAAC,CAAC;AAErE,MAAa,SAAU,SAAQ,kBAAS;IAC5B,MAAM,CAAS;IAEvB,YAAmB,IAAuB;QACtC,KAAK,CAAC,IAAI,CAAC,CAAC;QAEZ,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAClC,CAAC;IAED,UAAU,CAAC,KAAa,EAAE,QAAwB,EAAE,EAAqB;QACrE,IAAI,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;QAC/C,IAAI,QAAgB,CAAC;QAErB,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,uBAAe,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;YAC5D,kCAAkC;YAClC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,QAAQ,GAAG,CAAC,CAAC,CAAC;YAE7C,YAAY,CAAC,GAAS,EAAE;gBACpB,KAAK,CAAC,mBAAmB,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACnD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACrB,CAAC,CAAC,CAAC;YAEH,oDAAoD;YACpD,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;QACvC,CAAC;QAED,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QAEnB,EAAE,EAAE,CAAC;IACT,CAAC;IAED,MAAM,CAAC,EAAqB;QACxB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAEvB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAE9B,EAAE,EAAE,CAAC;IACT,CAAC;CACJ;AAtCD,8BAsCC"}
@@ -0,0 +1,85 @@
1
+ /// <reference types="node" />
2
+ /**
3
+ * Buffer to hold a DATA frame.
4
+ * Allocates `data` to `EZSP_MAX_FRAME_LENGTH` filled with zeroes.
5
+ */
6
+ export declare class EzspBuffer {
7
+ /** uint8_t[EZSP_MAX_FRAME_LENGTH] */
8
+ data: Buffer;
9
+ link: EzspBuffer;
10
+ /** uint8_t */
11
+ len: number;
12
+ constructor();
13
+ }
14
+ /**
15
+ * Simple queue (singly-linked list)
16
+ */
17
+ export declare class EzspQueue {
18
+ tail: EzspBuffer;
19
+ constructor();
20
+ /**
21
+ * Get the number of buffers in the queue.
22
+ * @returns
23
+ */
24
+ get length(): number;
25
+ get empty(): boolean;
26
+ /**
27
+ * Get a pointer to the buffer at the head of the queue.
28
+ * @returns
29
+ */
30
+ get head(): EzspBuffer;
31
+ /**
32
+ * Get a pointer to the Nth entry in the queue (the tail corresponds to N = 1).
33
+ *
34
+ * @param n
35
+ * @returns
36
+ */
37
+ getNthEntry(n: number): EzspBuffer;
38
+ /**
39
+ * Get a pointer to the entry before the specified entry (closer to the tail).
40
+ * If the buffer specified is null, the head entry is returned.
41
+ * If the buffer specified is the tail, null is returned.
42
+ * @param entry The buffer to look before.
43
+ * @returns
44
+ */
45
+ getPrecedingEntry(entry: EzspBuffer): EzspBuffer;
46
+ /**
47
+ * Add a buffer to the tail of the queue.
48
+ * @param buf
49
+ */
50
+ addTail(buf: EzspBuffer): void;
51
+ /**
52
+ * Remove the buffer at the head of the queue.
53
+ * @returns The removed buffer.
54
+ */
55
+ removeHead(): EzspBuffer;
56
+ /**
57
+ * Remove the specified entry from the queue.
58
+ * @param entry
59
+ * @returns A pointer to the preceding entry (if any).
60
+ */
61
+ removeEntry(entry: EzspBuffer): EzspBuffer;
62
+ }
63
+ /**
64
+ * Simple free list (singly-linked list)
65
+ */
66
+ export declare class EzspFreeList {
67
+ link: EzspBuffer;
68
+ constructor();
69
+ /**
70
+ * Get the number of buffers in the free list.
71
+ * @returns
72
+ */
73
+ get length(): number;
74
+ /**
75
+ * Add a buffer to the free list.
76
+ * @param buf
77
+ */
78
+ freeBuffer(buf: EzspBuffer): void;
79
+ /**
80
+ * Get a buffer from the free list.
81
+ * @returns
82
+ */
83
+ allocBuffer(): EzspBuffer;
84
+ }
85
+ //# sourceMappingURL=queues.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queues.d.ts","sourceRoot":"","sources":["../../../../src/adapter/ember/uart/queues.ts"],"names":[],"mappings":";AAIA;;;GAGG;AACH,qBAAa,UAAU;IACnB,qCAAqC;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,UAAU,CAAC;IACxB,cAAc;IACP,GAAG,EAAE,MAAM,CAAC;;CAOtB;AAED;;GAEG;AACH,qBAAa,SAAS;IACX,IAAI,EAAE,UAAU,CAAC;;IAMxB;;;OAGG;IACH,IAAI,MAAM,IAAI,MAAM,CASnB;IAED,IAAI,KAAK,IAAI,OAAO,CAEnB;IAED;;;OAGG;IACH,IAAI,IAAI,IAAI,UAAU,CAerB;IAED;;;;;OAKG;IACI,WAAW,CAAC,CAAC,EAAE,MAAM,GAAG,UAAU;IAkBzC;;;;;;OAMG;IACI,iBAAiB,CAAC,KAAK,EAAE,UAAU,GAAG,UAAU;IAkBvD;;;OAGG;IACI,OAAO,CAAC,GAAG,EAAE,UAAU,GAAG,IAAI;IASrC;;;OAGG;IACI,UAAU,IAAI,UAAU;IAuB/B;;;;OAIG;IACI,WAAW,CAAC,KAAK,EAAE,UAAU,GAAG,UAAU;CAWpD;AAED;;GAEG;AACH,qBAAa,YAAY;IACd,IAAI,EAAE,UAAU,CAAC;;IAMxB;;;OAGG;IACH,IAAI,MAAM,IAAI,MAAM,CASnB;IAED;;;OAGG;IACI,UAAU,CAAC,GAAG,EAAE,UAAU,GAAG,IAAI;IASxC;;;OAGG;IACI,WAAW,IAAI,UAAU;CAqBnC"}
@@ -0,0 +1,212 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EzspFreeList = exports.EzspQueue = exports.EzspBuffer = void 0;
4
+ /* istanbul ignore file */
5
+ const consts_1 = require("../ezsp/consts");
6
+ /**
7
+ * Buffer to hold a DATA frame.
8
+ * Allocates `data` to `EZSP_MAX_FRAME_LENGTH` filled with zeroes.
9
+ */
10
+ class EzspBuffer {
11
+ /** uint8_t[EZSP_MAX_FRAME_LENGTH] */
12
+ data;
13
+ link;
14
+ /** uint8_t */
15
+ len;
16
+ constructor() {
17
+ this.data = Buffer.alloc(consts_1.EZSP_MAX_FRAME_LENGTH); // inits to all-zeroes
18
+ this.link = null;
19
+ this.len = 0;
20
+ }
21
+ }
22
+ exports.EzspBuffer = EzspBuffer;
23
+ /**
24
+ * Simple queue (singly-linked list)
25
+ */
26
+ class EzspQueue {
27
+ tail;
28
+ constructor() {
29
+ this.tail = null;
30
+ }
31
+ /**
32
+ * Get the number of buffers in the queue.
33
+ * @returns
34
+ */
35
+ get length() {
36
+ let head = this.tail;
37
+ let count = 0;
38
+ for (count; head != null; count++) {
39
+ head = head.link;
40
+ }
41
+ return count;
42
+ }
43
+ get empty() {
44
+ return (this.tail == null);
45
+ }
46
+ /**
47
+ * Get a pointer to the buffer at the head of the queue.
48
+ * @returns
49
+ */
50
+ get head() {
51
+ let head = this.tail;
52
+ if (head == null) {
53
+ throw new Error(`Tried to get head from an empty queue.`);
54
+ }
55
+ if (head != null) {
56
+ while (head.link != null) {
57
+ head = head.link;
58
+ }
59
+ }
60
+ return head;
61
+ }
62
+ /**
63
+ * Get a pointer to the Nth entry in the queue (the tail corresponds to N = 1).
64
+ *
65
+ * @param n
66
+ * @returns
67
+ */
68
+ getNthEntry(n) {
69
+ if (n === 0) {
70
+ throw new Error(`Asked for 0th element in queue.`);
71
+ }
72
+ let buf = this.tail;
73
+ while (--n) {
74
+ if (buf == null) {
75
+ throw new Error(`Less than N entries in queue.`);
76
+ }
77
+ buf = buf.link;
78
+ }
79
+ return buf;
80
+ }
81
+ /**
82
+ * Get a pointer to the entry before the specified entry (closer to the tail).
83
+ * If the buffer specified is null, the head entry is returned.
84
+ * If the buffer specified is the tail, null is returned.
85
+ * @param entry The buffer to look before.
86
+ * @returns
87
+ */
88
+ getPrecedingEntry(entry) {
89
+ let buf = this.tail;
90
+ if (buf === entry) {
91
+ return null;
92
+ }
93
+ else {
94
+ do {
95
+ if (buf.link === entry) {
96
+ return buf;
97
+ }
98
+ buf = buf.link;
99
+ } while (buf != null);
100
+ throw new Error(`Buffer not in queue.`);
101
+ }
102
+ }
103
+ /**
104
+ * Add a buffer to the tail of the queue.
105
+ * @param buf
106
+ */
107
+ addTail(buf) {
108
+ if (buf) {
109
+ buf.link = this.tail;
110
+ this.tail = buf;
111
+ }
112
+ else {
113
+ throw new Error(`Called addTail with null buffer`);
114
+ }
115
+ }
116
+ /**
117
+ * Remove the buffer at the head of the queue.
118
+ * @returns The removed buffer.
119
+ */
120
+ removeHead() {
121
+ let head = this.tail;
122
+ if (head == null) {
123
+ throw new Error(`Tried to remove head from an empty queue.`);
124
+ }
125
+ if (head.link == null) {
126
+ this.tail = null;
127
+ }
128
+ else {
129
+ let prev;
130
+ do {
131
+ prev = head;
132
+ head = head.link;
133
+ } while (head.link != null);
134
+ prev.link = null;
135
+ }
136
+ return head;
137
+ }
138
+ /**
139
+ * Remove the specified entry from the queue.
140
+ * @param entry
141
+ * @returns A pointer to the preceding entry (if any).
142
+ */
143
+ removeEntry(entry) {
144
+ const buf = this.getPrecedingEntry(entry);
145
+ if (buf != null) {
146
+ buf.link = entry.link;
147
+ }
148
+ else {
149
+ this.tail = entry.link;
150
+ }
151
+ return buf;
152
+ }
153
+ }
154
+ exports.EzspQueue = EzspQueue;
155
+ /**
156
+ * Simple free list (singly-linked list)
157
+ */
158
+ class EzspFreeList {
159
+ link;
160
+ constructor() {
161
+ this.link = null;
162
+ }
163
+ /**
164
+ * Get the number of buffers in the free list.
165
+ * @returns
166
+ */
167
+ get length() {
168
+ let next = this.link;
169
+ let count = 0;
170
+ for (count; next != null; count++) {
171
+ next = next.link;
172
+ }
173
+ return count;
174
+ }
175
+ /**
176
+ * Add a buffer to the free list.
177
+ * @param buf
178
+ */
179
+ freeBuffer(buf) {
180
+ if (buf) {
181
+ buf.link = this.link;
182
+ this.link = buf;
183
+ }
184
+ else {
185
+ throw new Error(`Called freeBuffer with null buffer`);
186
+ }
187
+ }
188
+ /**
189
+ * Get a buffer from the free list.
190
+ * @returns
191
+ */
192
+ allocBuffer() {
193
+ const buf = this.link;
194
+ if (buf != null) {
195
+ this.link = buf.link;
196
+ buf.len = 0;
197
+ if (buf.data.length !== consts_1.EZSP_MAX_FRAME_LENGTH) {
198
+ // should never happen if buffers are handled properly, but just in case, re-alloc to max length
199
+ buf.data = Buffer.alloc(consts_1.EZSP_MAX_FRAME_LENGTH);
200
+ const e = new Error();
201
+ console.assert(false, `Pre-allocated buffer had improper size and had to be re-allocated. ${e.stack}`);
202
+ }
203
+ else {
204
+ // (void) memset(buffer->data, 0, EZSP_MAX_FRAME_LENGTH);
205
+ buf.data.fill(0);
206
+ }
207
+ }
208
+ return buf;
209
+ }
210
+ }
211
+ exports.EzspFreeList = EzspFreeList;
212
+ //# sourceMappingURL=queues.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queues.js","sourceRoot":"","sources":["../../../../src/adapter/ember/uart/queues.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ /// <reference types="node" />
2
+ import { Readable, ReadableOptions } from "stream";
3
+ export declare class AshWriter extends Readable {
4
+ private bytesToWrite;
5
+ constructor(opts?: ReadableOptions);
6
+ private writeBytes;
7
+ writeByte(byte: number): void;
8
+ writeAvailable(): boolean;
9
+ /**
10
+ * If there is anything to send, send to the port.
11
+ */
12
+ writeFlush(): void;
13
+ _read(): void;
14
+ }
15
+ //# sourceMappingURL=writer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"writer.d.ts","sourceRoot":"","sources":["../../../../src/adapter/ember/uart/writer.ts"],"names":[],"mappings":";AAEA,OAAO,EAAC,QAAQ,EAAE,eAAe,EAAC,MAAM,QAAQ,CAAC;AAKjD,qBAAa,SAAU,SAAQ,QAAQ;IACnC,OAAO,CAAC,YAAY,CAAW;gBAEnB,IAAI,CAAC,EAAE,eAAe;IAMlC,OAAO,CAAC,UAAU;IAUX,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI7B,cAAc,IAAI,OAAO;IAUhC;;OAEG;IACI,UAAU,IAAI,IAAI;IAMlB,KAAK,IAAI,IAAI;CAEvB"}
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.AshWriter = void 0;
7
+ /* istanbul ignore file */
8
+ const debug_1 = __importDefault(require("debug"));
9
+ const stream_1 = require("stream");
10
+ const debug = (0, debug_1.default)('zigbee-herdsman:adapter:ember:uart:ash:writer');
11
+ class AshWriter extends stream_1.Readable {
12
+ bytesToWrite;
13
+ constructor(opts) {
14
+ super(opts);
15
+ this.bytesToWrite = [];
16
+ }
17
+ writeBytes() {
18
+ const buffer = Buffer.from(this.bytesToWrite);
19
+ this.bytesToWrite = [];
20
+ debug(`>>>> [FRAME raw=${buffer.toString('hex')}]`);
21
+ // this.push(buffer);
22
+ this.emit('data', buffer);
23
+ }
24
+ writeByte(byte) {
25
+ this.bytesToWrite.push(byte);
26
+ }
27
+ writeAvailable() {
28
+ if (this.readableLength < this.readableHighWaterMark) {
29
+ return true;
30
+ }
31
+ else {
32
+ this.writeFlush();
33
+ return false;
34
+ }
35
+ }
36
+ /**
37
+ * If there is anything to send, send to the port.
38
+ */
39
+ writeFlush() {
40
+ if (this.bytesToWrite.length) {
41
+ this.writeBytes();
42
+ }
43
+ }
44
+ _read() {
45
+ }
46
+ }
47
+ exports.AshWriter = AshWriter;
48
+ //# sourceMappingURL=writer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"writer.js","sourceRoot":"","sources":["../../../../src/adapter/ember/uart/writer.ts"],"names":[],"mappings":";;;;;;AAAA,0BAA0B;AAC1B,kDAA0B;AAC1B,mCAAiD;AAEjD,MAAM,KAAK,GAAG,IAAA,eAAK,EAAC,+CAA+C,CAAC,CAAC;AAGrE,MAAa,SAAU,SAAQ,iBAAQ;IAC3B,YAAY,CAAW;IAE/B,YAAY,IAAsB;QAC9B,KAAK,CAAC,IAAI,CAAC,CAAC;QAEZ,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;IAC3B,CAAC;IAEO,UAAU;QACd,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC9C,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;QAEvB,KAAK,CAAC,mBAAmB,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAEpD,qBAAqB;QACrB,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,CAAC;IAEM,SAAS,CAAC,IAAY;QACzB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAEM,cAAc;QACjB,IAAI,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;YACnD,OAAO,IAAI,CAAC;QAChB,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,UAAU,EAAE,CAAC;YAElB,OAAO,KAAK,CAAC;QACjB,CAAC;IACL,CAAC;IAED;;OAEG;IACI,UAAU;QACb,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;YAC3B,IAAI,CAAC,UAAU,EAAE,CAAC;QACtB,CAAC;IACL,CAAC;IAEM,KAAK;IACZ,CAAC;CACJ;AA5CD,8BA4CC"}
@@ -0,0 +1,20 @@
1
+ import { NetworkCache } from "../adapter/emberAdapter";
2
+ import { EmberAesMmoHashContext, SecManContext } from "../types";
3
+ /**
4
+ * Initialize a network cache index with proper "invalid" values.
5
+ * @returns
6
+ */
7
+ export declare const initNetworkCache: () => NetworkCache;
8
+ /**
9
+ * This routine will initialize a Security Manager context correctly for use in subsequent function calls.
10
+ * @returns
11
+ */
12
+ export declare const initSecurityManagerContext: () => SecManContext;
13
+ /**
14
+ * This routine clears the passed context so that a new hash calculation
15
+ * can be performed.
16
+ *
17
+ * @returns context A pointer to the location of hash context to clear.
18
+ */
19
+ export declare const aesMmoHashInit: () => EmberAesMmoHashContext;
20
+ //# sourceMappingURL=initters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"initters.d.ts","sourceRoot":"","sources":["../../../../src/adapter/ember/utils/initters.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,YAAY,EAAC,MAAM,yBAAyB,CAAC;AAmBrD,OAAO,EAAC,sBAAsB,EAAE,aAAa,EAAC,MAAM,UAAU,CAAC;AAG/D;;;GAGG;AACH,eAAO,MAAM,gBAAgB,QAAO,YAenC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,0BAA0B,QAAO,aAU7C,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,cAAc,QAAO,sBAMjC,CAAC"}