zigbee-herdsman-converters 22.1.0 → 23.0.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 (2581) hide show
  1. package/README.md +23 -6
  2. package/dist/converters/fromZigbee.d.ts +2036 -0
  3. package/dist/converters/fromZigbee.d.ts.map +1 -0
  4. package/dist/converters/fromZigbee.js +5348 -0
  5. package/dist/converters/fromZigbee.js.map +1 -0
  6. package/dist/converters/toZigbee.d.ts +1582 -0
  7. package/dist/converters/toZigbee.d.ts.map +1 -0
  8. package/dist/converters/toZigbee.js +4418 -0
  9. package/dist/converters/toZigbee.js.map +1 -0
  10. package/dist/devices/ITCommander.d.ts +3 -0
  11. package/dist/devices/ITCommander.d.ts.map +1 -0
  12. package/dist/devices/ITCommander.js +76 -0
  13. package/dist/devices/acova.d.ts +3 -0
  14. package/dist/devices/acova.d.ts.map +1 -0
  15. package/dist/devices/acova.js +126 -0
  16. package/dist/devices/acuity_brands_lighting.d.ts +3 -0
  17. package/dist/devices/acuity_brands_lighting.d.ts.map +1 -0
  18. package/dist/devices/acuity_brands_lighting.js +61 -0
  19. package/dist/devices/adeo.d.ts +3 -0
  20. package/dist/devices/adeo.d.ts.map +1 -0
  21. package/dist/devices/adeo.js +485 -0
  22. package/dist/devices/adeo.js.map +1 -0
  23. package/dist/devices/adurosmart.d.ts +3 -0
  24. package/dist/devices/adurosmart.d.ts.map +1 -0
  25. package/dist/devices/adurosmart.js +189 -0
  26. package/dist/devices/aeotec.d.ts +3 -0
  27. package/dist/devices/aeotec.d.ts.map +1 -0
  28. package/dist/devices/aeotec.js +98 -0
  29. package/dist/devices/airam.d.ts +3 -0
  30. package/dist/devices/airam.d.ts.map +1 -0
  31. package/dist/devices/airam.js +105 -0
  32. package/dist/devices/airzone_aidoo.d.ts +3 -0
  33. package/dist/devices/airzone_aidoo.d.ts.map +1 -0
  34. package/dist/devices/airzone_aidoo.js +80 -0
  35. package/dist/devices/ajax_online.d.ts +3 -0
  36. package/dist/devices/ajax_online.d.ts.map +1 -0
  37. package/dist/devices/ajax_online.js +83 -0
  38. package/dist/devices/akuvox.d.ts +3 -0
  39. package/dist/devices/akuvox.d.ts.map +1 -0
  40. package/dist/devices/akuvox.js +68 -0
  41. package/dist/devices/alchemy.d.ts +3 -0
  42. package/dist/devices/alchemy.d.ts.map +1 -0
  43. package/dist/devices/alchemy.js +54 -0
  44. package/dist/devices/aldi.d.ts +3 -0
  45. package/dist/devices/aldi.d.ts.map +1 -0
  46. package/dist/devices/aldi.js +57 -0
  47. package/dist/devices/alecto.d.ts +3 -0
  48. package/dist/devices/alecto.d.ts.map +1 -0
  49. package/dist/devices/alecto.js +95 -0
  50. package/dist/devices/amina.d.ts +3 -0
  51. package/dist/devices/amina.d.ts.map +1 -0
  52. package/dist/devices/amina.js +366 -0
  53. package/dist/devices/amina.js.map +1 -0
  54. package/dist/devices/anchor.d.ts +3 -0
  55. package/dist/devices/anchor.d.ts.map +1 -0
  56. package/dist/devices/anchor.js +47 -0
  57. package/dist/devices/atlantic.d.ts +3 -0
  58. package/dist/devices/atlantic.d.ts.map +1 -0
  59. package/dist/devices/atlantic.js +145 -0
  60. package/dist/devices/atlantic.js.map +1 -0
  61. package/dist/devices/atsmart.d.ts +3 -0
  62. package/dist/devices/atsmart.d.ts.map +1 -0
  63. package/dist/devices/atsmart.js +47 -0
  64. package/dist/devices/aubess.d.ts +3 -0
  65. package/dist/devices/aubess.d.ts.map +1 -0
  66. package/dist/devices/aubess.js +60 -0
  67. package/dist/devices/aurora_lighting.d.ts +3 -0
  68. package/dist/devices/aurora_lighting.d.ts.map +1 -0
  69. package/dist/devices/aurora_lighting.js +332 -0
  70. package/dist/devices/automaton.d.ts +3 -0
  71. package/dist/devices/automaton.d.ts.map +1 -0
  72. package/dist/devices/automaton.js +64 -0
  73. package/dist/devices/avatto.d.ts +3 -0
  74. package/dist/devices/avatto.d.ts.map +1 -0
  75. package/dist/devices/avatto.js +275 -0
  76. package/dist/devices/avatto.js.map +1 -0
  77. package/dist/devices/awox.d.ts +3 -0
  78. package/dist/devices/awox.d.ts.map +1 -0
  79. package/dist/devices/awox.js +239 -0
  80. package/dist/devices/axis.d.ts +3 -0
  81. package/dist/devices/axis.d.ts.map +1 -0
  82. package/dist/devices/axis.js +62 -0
  83. package/dist/devices/bankamp.d.ts +3 -0
  84. package/dist/devices/bankamp.d.ts.map +1 -0
  85. package/dist/devices/bankamp.js +47 -0
  86. package/dist/devices/bega.d.ts +3 -0
  87. package/dist/devices/bega.d.ts.map +1 -0
  88. package/dist/devices/bega.js +61 -0
  89. package/dist/devices/belkin.d.ts +3 -0
  90. package/dist/devices/belkin.d.ts.map +1 -0
  91. package/dist/devices/belkin.js +47 -0
  92. package/dist/devices/bitron.d.ts +3 -0
  93. package/dist/devices/bitron.d.ts.map +1 -0
  94. package/dist/devices/bitron.js +357 -0
  95. package/dist/devices/bitron.js.map +1 -0
  96. package/dist/devices/bituo_technik.d.ts +3 -0
  97. package/dist/devices/bituo_technik.d.ts.map +1 -0
  98. package/dist/devices/bituo_technik.js +120 -0
  99. package/dist/devices/blaupunkt.d.ts +3 -0
  100. package/dist/devices/blaupunkt.d.ts.map +1 -0
  101. package/dist/devices/blaupunkt.js +67 -0
  102. package/dist/devices/blitzwolf.d.ts +3 -0
  103. package/dist/devices/blitzwolf.d.ts.map +1 -0
  104. package/dist/devices/blitzwolf.js +73 -0
  105. package/dist/devices/bosch.d.ts +3 -0
  106. package/dist/devices/bosch.d.ts.map +1 -0
  107. package/dist/devices/bosch.js +2042 -0
  108. package/dist/devices/bosch.js.map +1 -0
  109. package/dist/devices/bouffalo_lab.d.ts +3 -0
  110. package/dist/devices/bouffalo_lab.d.ts.map +1 -0
  111. package/dist/devices/bouffalo_lab.js +47 -0
  112. package/dist/devices/brimate.d.ts +3 -0
  113. package/dist/devices/brimate.d.ts.map +1 -0
  114. package/dist/devices/brimate.js +54 -0
  115. package/dist/devices/bseed.d.ts +3 -0
  116. package/dist/devices/bseed.d.ts.map +1 -0
  117. package/dist/devices/bseed.js +53 -0
  118. package/dist/devices/bticino.d.ts +3 -0
  119. package/dist/devices/bticino.d.ts.map +1 -0
  120. package/dist/devices/bticino.js +112 -0
  121. package/dist/devices/busch_jaeger.d.ts +3 -0
  122. package/dist/devices/busch_jaeger.d.ts.map +1 -0
  123. package/dist/devices/busch_jaeger.js +184 -0
  124. package/dist/devices/busch_jaeger.js.map +1 -0
  125. package/dist/devices/byun.d.ts +3 -0
  126. package/dist/devices/byun.d.ts.map +1 -0
  127. package/dist/devices/byun.js +63 -0
  128. package/dist/devices/calex.d.ts +3 -0
  129. package/dist/devices/calex.d.ts.map +1 -0
  130. package/dist/devices/calex.js +90 -0
  131. package/dist/devices/candeo.d.ts +3 -0
  132. package/dist/devices/candeo.d.ts.map +1 -0
  133. package/dist/devices/candeo.js +224 -0
  134. package/dist/devices/casaia.d.ts +3 -0
  135. package/dist/devices/casaia.d.ts.map +1 -0
  136. package/dist/devices/casaia.js +98 -0
  137. package/dist/devices/cel.d.ts +3 -0
  138. package/dist/devices/cel.d.ts.map +1 -0
  139. package/dist/devices/cel.js +19 -0
  140. package/dist/devices/centralite.d.ts +3 -0
  141. package/dist/devices/centralite.d.ts.map +1 -0
  142. package/dist/devices/centralite.js +452 -0
  143. package/dist/devices/centralite.js.map +1 -0
  144. package/dist/devices/chacon.d.ts +3 -0
  145. package/dist/devices/chacon.d.ts.map +1 -0
  146. package/dist/devices/chacon.js +57 -0
  147. package/dist/devices/cleode.d.ts +3 -0
  148. package/dist/devices/cleode.d.ts.map +1 -0
  149. package/dist/devices/cleode.js +47 -0
  150. package/dist/devices/cleverio.d.ts +3 -0
  151. package/dist/devices/cleverio.d.ts.map +1 -0
  152. package/dist/devices/cleverio.js +77 -0
  153. package/dist/devices/climax.d.ts +3 -0
  154. package/dist/devices/climax.d.ts.map +1 -0
  155. package/dist/devices/climax.js +180 -0
  156. package/dist/devices/commercial_electric.d.ts +3 -0
  157. package/dist/devices/commercial_electric.d.ts.map +1 -0
  158. package/dist/devices/commercial_electric.js +47 -0
  159. package/dist/devices/cree.d.ts +3 -0
  160. package/dist/devices/cree.d.ts.map +1 -0
  161. package/dist/devices/cree.js +47 -0
  162. package/dist/devices/ctm.d.ts +3 -0
  163. package/dist/devices/ctm.d.ts.map +1 -0
  164. package/dist/devices/ctm.js +1361 -0
  165. package/dist/devices/ctm.js.map +1 -0
  166. package/dist/devices/current_products_corp.d.ts +3 -0
  167. package/dist/devices/current_products_corp.d.ts.map +1 -0
  168. package/dist/devices/current_products_corp.js +63 -0
  169. package/dist/devices/custom_devices_diy.d.ts +3 -0
  170. package/dist/devices/custom_devices_diy.d.ts.map +1 -0
  171. package/dist/devices/custom_devices_diy.js +1204 -0
  172. package/dist/devices/custom_devices_diy.js.map +1 -0
  173. package/dist/devices/cy_lighting.d.ts +3 -0
  174. package/dist/devices/cy_lighting.d.ts.map +1 -0
  175. package/dist/devices/cy_lighting.js +47 -0
  176. package/dist/devices/danalock.d.ts +3 -0
  177. package/dist/devices/danalock.d.ts.map +1 -0
  178. package/dist/devices/danalock.js +64 -0
  179. package/dist/devices/danfoss.d.ts +3 -0
  180. package/dist/devices/danfoss.d.ts.map +1 -0
  181. package/dist/devices/danfoss.js +741 -0
  182. package/dist/devices/danfoss.js.map +1 -0
  183. package/dist/devices/databyte.d.ts +3 -0
  184. package/dist/devices/databyte.d.ts.map +1 -0
  185. package/dist/devices/databyte.js +93 -0
  186. package/dist/devices/datek.d.ts +3 -0
  187. package/dist/devices/datek.d.ts.map +1 -0
  188. package/dist/devices/datek.js +307 -0
  189. package/dist/devices/datek.js.map +1 -0
  190. package/dist/devices/dawon_dns.d.ts +3 -0
  191. package/dist/devices/dawon_dns.d.ts.map +1 -0
  192. package/dist/devices/dawon_dns.js +317 -0
  193. package/dist/devices/develco.d.ts +3 -0
  194. package/dist/devices/develco.d.ts.map +1 -0
  195. package/dist/devices/develco.js +1034 -0
  196. package/dist/devices/develco.js.map +1 -0
  197. package/dist/devices/digi.d.ts +3 -0
  198. package/dist/devices/digi.d.ts.map +1 -0
  199. package/dist/devices/digi.js +24 -0
  200. package/dist/devices/direct_signs.d.ts +3 -0
  201. package/dist/devices/direct_signs.d.ts.map +1 -0
  202. package/dist/devices/direct_signs.js +47 -0
  203. package/dist/devices/diyruz.d.ts +3 -0
  204. package/dist/devices/diyruz.d.ts.map +1 -0
  205. package/dist/devices/diyruz.js +400 -0
  206. package/dist/devices/dlink.d.ts +3 -0
  207. package/dist/devices/dlink.d.ts.map +1 -0
  208. package/dist/devices/dlink.js +75 -0
  209. package/dist/devices/dnake.d.ts +3 -0
  210. package/dist/devices/dnake.d.ts.map +1 -0
  211. package/dist/devices/dnake.js +47 -0
  212. package/dist/devices/dowsing_reynolds.d.ts +3 -0
  213. package/dist/devices/dowsing_reynolds.d.ts.map +1 -0
  214. package/dist/devices/dowsing_reynolds.js +47 -0
  215. package/dist/devices/dresden_elektronik.d.ts +3 -0
  216. package/dist/devices/dresden_elektronik.d.ts.map +1 -0
  217. package/dist/devices/dresden_elektronik.js +82 -0
  218. package/dist/devices/easyaccess.d.ts +3 -0
  219. package/dist/devices/easyaccess.d.ts.map +1 -0
  220. package/dist/devices/easyaccess.js +70 -0
  221. package/dist/devices/easyiot.d.ts +3 -0
  222. package/dist/devices/easyiot.d.ts.map +1 -0
  223. package/dist/devices/easyiot.js +357 -0
  224. package/dist/devices/easyiot.js.map +1 -0
  225. package/dist/devices/eatonhalo_led.d.ts +3 -0
  226. package/dist/devices/eatonhalo_led.d.ts.map +1 -0
  227. package/dist/devices/eatonhalo_led.js +47 -0
  228. package/dist/devices/echostar.d.ts +3 -0
  229. package/dist/devices/echostar.d.ts.map +1 -0
  230. package/dist/devices/echostar.js +64 -0
  231. package/dist/devices/ecodim.d.ts +3 -0
  232. package/dist/devices/ecodim.d.ts.map +1 -0
  233. package/dist/devices/ecodim.js +269 -0
  234. package/dist/devices/ecolink.d.ts +3 -0
  235. package/dist/devices/ecolink.d.ts.map +1 -0
  236. package/dist/devices/ecolink.js +60 -0
  237. package/dist/devices/ecosmart.d.ts +3 -0
  238. package/dist/devices/ecosmart.d.ts.map +1 -0
  239. package/dist/devices/ecosmart.js +115 -0
  240. package/dist/devices/ecozy.d.ts +3 -0
  241. package/dist/devices/ecozy.d.ts.map +1 -0
  242. package/dist/devices/ecozy.js +88 -0
  243. package/dist/devices/edp.d.ts +3 -0
  244. package/dist/devices/edp.d.ts.map +1 -0
  245. package/dist/devices/edp.js +73 -0
  246. package/dist/devices/efekta.d.ts +3 -0
  247. package/dist/devices/efekta.d.ts.map +1 -0
  248. package/dist/devices/efekta.js +2632 -0
  249. package/dist/devices/eglo.d.ts +3 -0
  250. package/dist/devices/eglo.d.ts.map +1 -0
  251. package/dist/devices/eglo.js +133 -0
  252. package/dist/devices/elko.d.ts +3 -0
  253. package/dist/devices/elko.d.ts.map +1 -0
  254. package/dist/devices/elko.js +239 -0
  255. package/dist/devices/enbrighten.d.ts +3 -0
  256. package/dist/devices/enbrighten.d.ts.map +1 -0
  257. package/dist/devices/enbrighten.js +156 -0
  258. package/dist/devices/enocean.d.ts +3 -0
  259. package/dist/devices/enocean.d.ts.map +1 -0
  260. package/dist/devices/enocean.js +152 -0
  261. package/dist/devices/envilar.d.ts +3 -0
  262. package/dist/devices/envilar.d.ts.map +1 -0
  263. package/dist/devices/envilar.js +99 -0
  264. package/dist/devices/essentialb.d.ts +3 -0
  265. package/dist/devices/essentialb.d.ts.map +1 -0
  266. package/dist/devices/essentialb.js +136 -0
  267. package/dist/devices/essentials.d.ts +3 -0
  268. package/dist/devices/essentials.d.ts.map +1 -0
  269. package/dist/devices/essentials.js +150 -0
  270. package/dist/devices/eucontrols.d.ts +3 -0
  271. package/dist/devices/eucontrols.d.ts.map +1 -0
  272. package/dist/devices/eucontrols.js +47 -0
  273. package/dist/devices/eurotronic.d.ts +3 -0
  274. package/dist/devices/eurotronic.d.ts.map +1 -0
  275. package/dist/devices/eurotronic.js +205 -0
  276. package/dist/devices/evanell.d.ts +3 -0
  277. package/dist/devices/evanell.d.ts.map +1 -0
  278. package/dist/devices/evanell.js +71 -0
  279. package/dist/devices/evn.d.ts +3 -0
  280. package/dist/devices/evn.d.ts.map +1 -0
  281. package/dist/devices/evn.js +93 -0
  282. package/dist/devices/evology.d.ts +3 -0
  283. package/dist/devices/evology.d.ts.map +1 -0
  284. package/dist/devices/evology.js +63 -0
  285. package/dist/devices/evvr.d.ts +3 -0
  286. package/dist/devices/evvr.d.ts.map +1 -0
  287. package/dist/devices/evvr.js +47 -0
  288. package/dist/devices/ewelink.d.ts +3 -0
  289. package/dist/devices/ewelink.d.ts.map +1 -0
  290. package/dist/devices/ewelink.js +352 -0
  291. package/dist/devices/ewelink.js.map +1 -0
  292. package/dist/devices/ezex.d.ts +3 -0
  293. package/dist/devices/ezex.d.ts.map +1 -0
  294. package/dist/devices/ezex.js +47 -0
  295. package/dist/devices/fantem.d.ts +3 -0
  296. package/dist/devices/fantem.d.ts.map +1 -0
  297. package/dist/devices/fantem.js +116 -0
  298. package/dist/devices/fantem.js.map +1 -0
  299. package/dist/devices/feibit.d.ts +3 -0
  300. package/dist/devices/feibit.d.ts.map +1 -0
  301. package/dist/devices/feibit.js +343 -0
  302. package/dist/devices/feibit.js.map +1 -0
  303. package/dist/devices/fireangel.d.ts +3 -0
  304. package/dist/devices/fireangel.d.ts.map +1 -0
  305. package/dist/devices/fireangel.js +54 -0
  306. package/dist/devices/frankever.d.ts +3 -0
  307. package/dist/devices/frankever.d.ts.map +1 -0
  308. package/dist/devices/frankever.js +67 -0
  309. package/dist/devices/frient.d.ts +3 -0
  310. package/dist/devices/frient.d.ts.map +1 -0
  311. package/dist/devices/frient.js +74 -0
  312. package/dist/devices/futurehome.d.ts +3 -0
  313. package/dist/devices/futurehome.d.ts.map +1 -0
  314. package/dist/devices/futurehome.js +123 -0
  315. package/dist/devices/ge.d.ts +3 -0
  316. package/dist/devices/ge.d.ts.map +1 -0
  317. package/dist/devices/ge.js +133 -0
  318. package/dist/devices/gewiss.d.ts +3 -0
  319. package/dist/devices/gewiss.d.ts.map +1 -0
  320. package/dist/devices/gewiss.js +85 -0
  321. package/dist/devices/gidealed.d.ts +3 -0
  322. package/dist/devices/gidealed.d.ts.map +1 -0
  323. package/dist/devices/gidealed.js +47 -0
  324. package/dist/devices/giderwel.d.ts +3 -0
  325. package/dist/devices/giderwel.d.ts.map +1 -0
  326. package/dist/devices/giderwel.js +47 -0
  327. package/dist/devices/giex.d.ts +3 -0
  328. package/dist/devices/giex.d.ts.map +1 -0
  329. package/dist/devices/giex.js +114 -0
  330. package/dist/devices/girier.d.ts +3 -0
  331. package/dist/devices/girier.d.ts.map +1 -0
  332. package/dist/devices/girier.js +51 -0
  333. package/dist/devices/gledopto.d.ts +3 -0
  334. package/dist/devices/gledopto.d.ts.map +1 -0
  335. package/dist/devices/gledopto.js +1051 -0
  336. package/dist/devices/gledopto.js.map +1 -0
  337. package/dist/devices/gmmts.d.ts +3 -0
  338. package/dist/devices/gmmts.d.ts.map +1 -0
  339. package/dist/devices/gmmts.js +2285 -0
  340. package/dist/devices/gmmts.js.map +1 -0
  341. package/dist/devices/gmy.d.ts +3 -0
  342. package/dist/devices/gmy.d.ts.map +1 -0
  343. package/dist/devices/gmy.js +47 -0
  344. package/dist/devices/gs.d.ts +3 -0
  345. package/dist/devices/gs.d.ts.map +1 -0
  346. package/dist/devices/gs.js +121 -0
  347. package/dist/devices/gumax.d.ts +3 -0
  348. package/dist/devices/gumax.d.ts.map +1 -0
  349. package/dist/devices/gumax.js +47 -0
  350. package/dist/devices/halemeier.d.ts +3 -0
  351. package/dist/devices/halemeier.d.ts.map +1 -0
  352. package/dist/devices/halemeier.js +128 -0
  353. package/dist/devices/hampton_bay.d.ts +3 -0
  354. package/dist/devices/hampton_bay.d.ts.map +1 -0
  355. package/dist/devices/hampton_bay.js +71 -0
  356. package/dist/devices/heatit.d.ts +3 -0
  357. package/dist/devices/heatit.d.ts.map +1 -0
  358. package/dist/devices/heatit.js +47 -0
  359. package/dist/devices/heiman.d.ts +3 -0
  360. package/dist/devices/heiman.d.ts.map +1 -0
  361. package/dist/devices/heiman.js +816 -0
  362. package/dist/devices/heimgard_technologies.d.ts +3 -0
  363. package/dist/devices/heimgard_technologies.d.ts.map +1 -0
  364. package/dist/devices/heimgard_technologies.js +192 -0
  365. package/dist/devices/hej.d.ts +3 -0
  366. package/dist/devices/hej.d.ts.map +1 -0
  367. package/dist/devices/hej.js +105 -0
  368. package/dist/devices/hfh.d.ts +3 -0
  369. package/dist/devices/hfh.d.ts.map +1 -0
  370. package/dist/devices/hfh.js +47 -0
  371. package/dist/devices/hilux.d.ts +3 -0
  372. package/dist/devices/hilux.d.ts.map +1 -0
  373. package/dist/devices/hilux.js +54 -0
  374. package/dist/devices/hive.d.ts +3 -0
  375. package/dist/devices/hive.d.ts.map +1 -0
  376. package/dist/devices/hive.js +765 -0
  377. package/dist/devices/hommyn.d.ts +3 -0
  378. package/dist/devices/hommyn.d.ts.map +1 -0
  379. package/dist/devices/hommyn.js +63 -0
  380. package/dist/devices/honyar.d.ts +3 -0
  381. package/dist/devices/honyar.d.ts.map +1 -0
  382. package/dist/devices/honyar.js +170 -0
  383. package/dist/devices/hornbach.d.ts +3 -0
  384. package/dist/devices/hornbach.d.ts.map +1 -0
  385. package/dist/devices/hornbach.js +138 -0
  386. package/dist/devices/hzc_electric.d.ts +3 -0
  387. package/dist/devices/hzc_electric.d.ts.map +1 -0
  388. package/dist/devices/hzc_electric.js +105 -0
  389. package/dist/devices/icasa.d.ts +3 -0
  390. package/dist/devices/icasa.d.ts.map +1 -0
  391. package/dist/devices/icasa.js +166 -0
  392. package/dist/devices/idinio.d.ts +3 -0
  393. package/dist/devices/idinio.d.ts.map +1 -0
  394. package/dist/devices/idinio.js +47 -0
  395. package/dist/devices/ihorn.d.ts +3 -0
  396. package/dist/devices/ihorn.d.ts.map +1 -0
  397. package/dist/devices/ihorn.js +108 -0
  398. package/dist/devices/ikea.d.ts +3 -0
  399. package/dist/devices/ikea.d.ts.map +1 -0
  400. package/dist/devices/ikea.js +980 -0
  401. package/dist/devices/ilightsin.d.ts +3 -0
  402. package/dist/devices/ilightsin.d.ts.map +1 -0
  403. package/dist/devices/ilightsin.js +47 -0
  404. package/dist/devices/iluminize.d.ts +3 -0
  405. package/dist/devices/iluminize.d.ts.map +1 -0
  406. package/dist/devices/iluminize.js +389 -0
  407. package/dist/devices/ilux.d.ts +3 -0
  408. package/dist/devices/ilux.d.ts.map +1 -0
  409. package/dist/devices/ilux.js +47 -0
  410. package/dist/devices/imhotepcreation.d.ts +3 -0
  411. package/dist/devices/imhotepcreation.d.ts.map +1 -0
  412. package/dist/devices/imhotepcreation.js +242 -0
  413. package/dist/devices/immax.d.ts +3 -0
  414. package/dist/devices/immax.d.ts.map +1 -0
  415. package/dist/devices/immax.js +303 -0
  416. package/dist/devices/imou.d.ts +3 -0
  417. package/dist/devices/imou.d.ts.map +1 -0
  418. package/dist/devices/imou.js +60 -0
  419. package/dist/devices/index.js +649 -0
  420. package/dist/devices/index.js.map +1 -0
  421. package/dist/devices/innr.d.ts +3 -0
  422. package/dist/devices/innr.d.ts.map +1 -0
  423. package/dist/devices/innr.js +868 -0
  424. package/dist/devices/inovelli.d.ts +3 -0
  425. package/dist/devices/inovelli.d.ts.map +1 -0
  426. package/dist/devices/inovelli.js +2002 -0
  427. package/dist/devices/inovelli.js.map +1 -0
  428. package/dist/devices/insta.d.ts +3 -0
  429. package/dist/devices/insta.d.ts.map +1 -0
  430. package/dist/devices/insta.js +185 -0
  431. package/dist/devices/iolloi.d.ts +3 -0
  432. package/dist/devices/iolloi.d.ts.map +1 -0
  433. package/dist/devices/iolloi.js +48 -0
  434. package/dist/devices/iotperfect.d.ts +3 -0
  435. package/dist/devices/iotperfect.d.ts.map +1 -0
  436. package/dist/devices/iotperfect.js +57 -0
  437. package/dist/devices/iris.d.ts +3 -0
  438. package/dist/devices/iris.d.ts.map +1 -0
  439. package/dist/devices/iris.js +210 -0
  440. package/dist/devices/istar.d.ts +3 -0
  441. package/dist/devices/istar.d.ts.map +1 -0
  442. package/dist/devices/istar.js +54 -0
  443. package/dist/devices/jasco.d.ts +3 -0
  444. package/dist/devices/jasco.d.ts.map +1 -0
  445. package/dist/devices/jasco.js +66 -0
  446. package/dist/devices/javis.d.ts +3 -0
  447. package/dist/devices/javis.d.ts.map +1 -0
  448. package/dist/devices/javis.js +80 -0
  449. package/dist/devices/jethome.d.ts +3 -0
  450. package/dist/devices/jethome.d.ts.map +1 -0
  451. package/dist/devices/jethome.js +123 -0
  452. package/dist/devices/jethome.js.map +1 -0
  453. package/dist/devices/jiawen.d.ts +3 -0
  454. package/dist/devices/jiawen.d.ts.map +1 -0
  455. package/dist/devices/jiawen.js +54 -0
  456. package/dist/devices/jumitech.d.ts +3 -0
  457. package/dist/devices/jumitech.d.ts.map +1 -0
  458. package/dist/devices/jumitech.js +47 -0
  459. package/dist/devices/jxuan.d.ts +3 -0
  460. package/dist/devices/jxuan.d.ts.map +1 -0
  461. package/dist/devices/jxuan.js +88 -0
  462. package/dist/devices/kami.d.ts +3 -0
  463. package/dist/devices/kami.d.ts.map +1 -0
  464. package/dist/devices/kami.js +54 -0
  465. package/dist/devices/keen_home.d.ts +3 -0
  466. package/dist/devices/keen_home.d.ts.map +1 -0
  467. package/dist/devices/keen_home.js +159 -0
  468. package/dist/devices/klikaanklikuit.d.ts +3 -0
  469. package/dist/devices/klikaanklikuit.d.ts.map +1 -0
  470. package/dist/devices/klikaanklikuit.js +54 -0
  471. package/dist/devices/kmpcil.d.ts +3 -0
  472. package/dist/devices/kmpcil.d.ts.map +1 -0
  473. package/dist/devices/kmpcil.js +215 -0
  474. package/dist/devices/kmpcil.js.map +1 -0
  475. package/dist/devices/konke.d.ts +3 -0
  476. package/dist/devices/konke.d.ts.map +1 -0
  477. package/dist/devices/konke.js +210 -0
  478. package/dist/devices/ksentry.d.ts +3 -0
  479. package/dist/devices/ksentry.d.ts.map +1 -0
  480. package/dist/devices/ksentry.js +47 -0
  481. package/dist/devices/kurvia.d.ts +3 -0
  482. package/dist/devices/kurvia.d.ts.map +1 -0
  483. package/dist/devices/kurvia.js +52 -0
  484. package/dist/devices/kwikset.d.ts +3 -0
  485. package/dist/devices/kwikset.d.ts.map +1 -0
  486. package/dist/devices/kwikset.js +156 -0
  487. package/dist/devices/lanesto.d.ts +3 -0
  488. package/dist/devices/lanesto.d.ts.map +1 -0
  489. package/dist/devices/lanesto.js +47 -0
  490. package/dist/devices/lds.d.ts +3 -0
  491. package/dist/devices/lds.d.ts.map +1 -0
  492. package/dist/devices/lds.js +47 -0
  493. package/dist/devices/led_trading.d.ts +3 -0
  494. package/dist/devices/led_trading.d.ts.map +1 -0
  495. package/dist/devices/led_trading.js +111 -0
  496. package/dist/devices/led_trading.js.map +1 -0
  497. package/dist/devices/ledvance.d.ts +3 -0
  498. package/dist/devices/ledvance.d.ts.map +1 -0
  499. package/dist/devices/ledvance.js +370 -0
  500. package/dist/devices/leedarson.d.ts +3 -0
  501. package/dist/devices/leedarson.d.ts.map +1 -0
  502. package/dist/devices/leedarson.js +183 -0
  503. package/dist/devices/legrand.d.ts +3 -0
  504. package/dist/devices/legrand.d.ts.map +1 -0
  505. package/dist/devices/legrand.js +737 -0
  506. package/dist/devices/lellki.d.ts +3 -0
  507. package/dist/devices/lellki.d.ts.map +1 -0
  508. package/dist/devices/lellki.js +164 -0
  509. package/dist/devices/letsled.d.ts +3 -0
  510. package/dist/devices/letsled.d.ts.map +1 -0
  511. package/dist/devices/letsled.js +47 -0
  512. package/dist/devices/letv.d.ts +3 -0
  513. package/dist/devices/letv.d.ts.map +1 -0
  514. package/dist/devices/letv.js +89 -0
  515. package/dist/devices/leviton.d.ts +3 -0
  516. package/dist/devices/leviton.d.ts.map +1 -0
  517. package/dist/devices/leviton.js +167 -0
  518. package/dist/devices/leviton.js.map +1 -0
  519. package/dist/devices/lg.d.ts +3 -0
  520. package/dist/devices/lg.d.ts.map +1 -0
  521. package/dist/devices/lg.js +61 -0
  522. package/dist/devices/lidl.d.ts +3 -0
  523. package/dist/devices/lidl.d.ts.map +1 -0
  524. package/dist/devices/lidl.js +673 -0
  525. package/dist/devices/lidl.js.map +1 -0
  526. package/dist/devices/lifecontrol.d.ts +3 -0
  527. package/dist/devices/lifecontrol.d.ts.map +1 -0
  528. package/dist/devices/lifecontrol.js +150 -0
  529. package/dist/devices/lifecontrol.js.map +1 -0
  530. package/dist/devices/lightsolutions.d.ts +3 -0
  531. package/dist/devices/lightsolutions.d.ts.map +1 -0
  532. package/dist/devices/lightsolutions.js +68 -0
  533. package/dist/devices/linkind.d.ts +3 -0
  534. package/dist/devices/linkind.d.ts.map +1 -0
  535. package/dist/devices/linkind.js +274 -0
  536. package/dist/devices/linptech.d.ts +3 -0
  537. package/dist/devices/linptech.d.ts.map +1 -0
  538. package/dist/devices/linptech.js +158 -0
  539. package/dist/devices/linptech.js.map +1 -0
  540. package/dist/devices/livingwise.d.ts +3 -0
  541. package/dist/devices/livingwise.d.ts.map +1 -0
  542. package/dist/devices/livingwise.js +118 -0
  543. package/dist/devices/livolo.d.ts +3 -0
  544. package/dist/devices/livolo.d.ts.map +1 -0
  545. package/dist/devices/livolo.js +421 -0
  546. package/dist/devices/livolo.js.map +1 -0
  547. package/dist/devices/lixee.d.ts +3 -0
  548. package/dist/devices/lixee.d.ts.map +1 -0
  549. package/dist/devices/lixee.js +1922 -0
  550. package/dist/devices/lixee.js.map +1 -0
  551. package/dist/devices/lonsonho.d.ts +3 -0
  552. package/dist/devices/lonsonho.d.ts.map +1 -0
  553. package/dist/devices/lonsonho.js +290 -0
  554. package/dist/devices/ls.d.ts +3 -0
  555. package/dist/devices/ls.d.ts.map +1 -0
  556. package/dist/devices/ls.js +66 -0
  557. package/dist/devices/lubeez.d.ts +3 -0
  558. package/dist/devices/lubeez.d.ts.map +1 -0
  559. package/dist/devices/lubeez.js +47 -0
  560. package/dist/devices/lumi.d.ts +3 -0
  561. package/dist/devices/lumi.d.ts.map +1 -0
  562. package/dist/devices/lumi.js +4433 -0
  563. package/dist/devices/lumi.js.map +1 -0
  564. package/dist/devices/lupus.d.ts +3 -0
  565. package/dist/devices/lupus.d.ts.map +1 -0
  566. package/dist/devices/lupus.js +97 -0
  567. package/dist/devices/lutron.d.ts +3 -0
  568. package/dist/devices/lutron.d.ts.map +1 -0
  569. package/dist/devices/lutron.js +71 -0
  570. package/dist/devices/lux.d.ts +3 -0
  571. package/dist/devices/lux.d.ts.map +1 -0
  572. package/dist/devices/lux.js +90 -0
  573. package/dist/devices/lytko.d.ts +3 -0
  574. package/dist/devices/lytko.d.ts.map +1 -0
  575. package/dist/devices/lytko.js +787 -0
  576. package/dist/devices/lytko.js.map +1 -0
  577. package/dist/devices/m_elec.d.ts +3 -0
  578. package/dist/devices/m_elec.d.ts.map +1 -0
  579. package/dist/devices/m_elec.js +68 -0
  580. package/dist/devices/makegood.d.ts +3 -0
  581. package/dist/devices/makegood.d.ts.map +1 -0
  582. package/dist/devices/makegood.js +65 -0
  583. package/dist/devices/matcall_bv.d.ts +3 -0
  584. package/dist/devices/matcall_bv.d.ts.map +1 -0
  585. package/dist/devices/matcall_bv.js +54 -0
  586. package/dist/devices/mazda.d.ts +3 -0
  587. package/dist/devices/mazda.d.ts.map +1 -0
  588. package/dist/devices/mazda.js +163 -0
  589. package/dist/devices/mazda.js.map +1 -0
  590. package/dist/devices/meazon.d.ts +3 -0
  591. package/dist/devices/meazon.d.ts.map +1 -0
  592. package/dist/devices/meazon.js +98 -0
  593. package/dist/devices/meazon.js.map +1 -0
  594. package/dist/devices/mercator.d.ts +3 -0
  595. package/dist/devices/mercator.d.ts.map +1 -0
  596. package/dist/devices/mercator.js +252 -0
  597. package/dist/devices/miboxer.d.ts +3 -0
  598. package/dist/devices/miboxer.d.ts.map +1 -0
  599. package/dist/devices/miboxer.js +92 -0
  600. package/dist/devices/micromatic.d.ts +3 -0
  601. package/dist/devices/micromatic.d.ts.map +1 -0
  602. package/dist/devices/micromatic.js +47 -0
  603. package/dist/devices/modular.d.ts +3 -0
  604. package/dist/devices/modular.d.ts.map +1 -0
  605. package/dist/devices/modular.js +47 -0
  606. package/dist/devices/moes.d.ts +3 -0
  607. package/dist/devices/moes.d.ts.map +1 -0
  608. package/dist/devices/moes.js +722 -0
  609. package/dist/devices/muller_licht.d.ts +3 -0
  610. package/dist/devices/muller_licht.d.ts.map +1 -0
  611. package/dist/devices/muller_licht.js +337 -0
  612. package/dist/devices/multiterm.d.ts +3 -0
  613. package/dist/devices/multiterm.d.ts.map +1 -0
  614. package/dist/devices/multiterm.js +122 -0
  615. package/dist/devices/multiterm.js.map +1 -0
  616. package/dist/devices/namron.d.ts +3 -0
  617. package/dist/devices/namron.d.ts.map +1 -0
  618. package/dist/devices/namron.js +1576 -0
  619. package/dist/devices/namron.js.map +1 -0
  620. package/dist/devices/nanoleaf.d.ts +3 -0
  621. package/dist/devices/nanoleaf.d.ts.map +1 -0
  622. package/dist/devices/nanoleaf.js +47 -0
  623. package/dist/devices/nedis.d.ts +3 -0
  624. package/dist/devices/nedis.d.ts.map +1 -0
  625. package/dist/devices/nedis.js +87 -0
  626. package/dist/devices/neo.d.ts +3 -0
  627. package/dist/devices/neo.d.ts.map +1 -0
  628. package/dist/devices/neo.js +561 -0
  629. package/dist/devices/neo.js.map +1 -0
  630. package/dist/devices/net2grid.d.ts +3 -0
  631. package/dist/devices/net2grid.d.ts.map +1 -0
  632. package/dist/devices/net2grid.js +67 -0
  633. package/dist/devices/netvox.d.ts +3 -0
  634. package/dist/devices/netvox.d.ts.map +1 -0
  635. package/dist/devices/netvox.js +74 -0
  636. package/dist/devices/nexelec.d.ts +3 -0
  637. package/dist/devices/nexelec.d.ts.map +1 -0
  638. package/dist/devices/nexelec.js +47 -0
  639. package/dist/devices/niko.d.ts +3 -0
  640. package/dist/devices/niko.d.ts.map +1 -0
  641. package/dist/devices/niko.js +626 -0
  642. package/dist/devices/niko.js.map +1 -0
  643. package/dist/devices/ninja_blocks.d.ts +3 -0
  644. package/dist/devices/ninja_blocks.d.ts.map +1 -0
  645. package/dist/devices/ninja_blocks.js +63 -0
  646. package/dist/devices/niviss.d.ts +3 -0
  647. package/dist/devices/niviss.d.ts.map +1 -0
  648. package/dist/devices/niviss.js +47 -0
  649. package/dist/devices/nodon.d.ts +3 -0
  650. package/dist/devices/nodon.d.ts.map +1 -0
  651. package/dist/devices/nodon.js +386 -0
  652. package/dist/devices/nordtronic.d.ts +3 -0
  653. package/dist/devices/nordtronic.d.ts.map +1 -0
  654. package/dist/devices/nordtronic.js +73 -0
  655. package/dist/devices/nous.d.ts +3 -0
  656. package/dist/devices/nous.d.ts.map +1 -0
  657. package/dist/devices/nous.js +168 -0
  658. package/dist/devices/novo.d.ts +3 -0
  659. package/dist/devices/novo.d.ts.map +1 -0
  660. package/dist/devices/novo.js +57 -0
  661. package/dist/devices/nue_3a.d.ts +3 -0
  662. package/dist/devices/nue_3a.d.ts.map +1 -0
  663. package/dist/devices/nue_3a.js +360 -0
  664. package/dist/devices/nue_3a.js.map +1 -0
  665. package/dist/devices/nyce.d.ts +3 -0
  666. package/dist/devices/nyce.d.ts.map +1 -0
  667. package/dist/devices/nyce.js +133 -0
  668. package/dist/devices/onenuo.d.ts +3 -0
  669. package/dist/devices/onenuo.d.ts.map +1 -0
  670. package/dist/devices/onenuo.js +85 -0
  671. package/dist/devices/onesti.d.ts +3 -0
  672. package/dist/devices/onesti.d.ts.map +1 -0
  673. package/dist/devices/onesti.js +207 -0
  674. package/dist/devices/onesti.js.map +1 -0
  675. package/dist/devices/openlumi.d.ts +3 -0
  676. package/dist/devices/openlumi.d.ts.map +1 -0
  677. package/dist/devices/openlumi.js +61 -0
  678. package/dist/devices/orvibo.d.ts +12 -0
  679. package/dist/devices/orvibo.d.ts.map +1 -0
  680. package/dist/devices/orvibo.js +597 -0
  681. package/dist/devices/orvibo.js.map +1 -0
  682. package/dist/devices/osram.d.ts +3 -0
  683. package/dist/devices/osram.d.ts.map +1 -0
  684. package/dist/devices/osram.js +516 -0
  685. package/dist/devices/oujiabao.d.ts +3 -0
  686. package/dist/devices/oujiabao.d.ts.map +1 -0
  687. package/dist/devices/oujiabao.js +54 -0
  688. package/dist/devices/owon.d.ts +3 -0
  689. package/dist/devices/owon.d.ts.map +1 -0
  690. package/dist/devices/owon.js +476 -0
  691. package/dist/devices/owon.js.map +1 -0
  692. package/dist/devices/ozsmartthings.d.ts +3 -0
  693. package/dist/devices/ozsmartthings.d.ts.map +1 -0
  694. package/dist/devices/ozsmartthings.js +47 -0
  695. package/dist/devices/paul_neuhaus.d.ts +3 -0
  696. package/dist/devices/paul_neuhaus.d.ts.map +1 -0
  697. package/dist/devices/paul_neuhaus.js +193 -0
  698. package/dist/devices/paulmann.d.ts +3 -0
  699. package/dist/devices/paulmann.d.ts.map +1 -0
  700. package/dist/devices/paulmann.js +337 -0
  701. package/dist/devices/peq.d.ts +3 -0
  702. package/dist/devices/peq.d.ts.map +1 -0
  703. package/dist/devices/peq.js +63 -0
  704. package/dist/devices/perenio.d.ts +3 -0
  705. package/dist/devices/perenio.d.ts.map +1 -0
  706. package/dist/devices/perenio.js +465 -0
  707. package/dist/devices/perenio.js.map +1 -0
  708. package/dist/devices/philio.d.ts +3 -0
  709. package/dist/devices/philio.d.ts.map +1 -0
  710. package/dist/devices/philio.js +48 -0
  711. package/dist/devices/philips.d.ts +3 -0
  712. package/dist/devices/philips.d.ts.map +1 -0
  713. package/dist/devices/philips.js +4064 -0
  714. package/dist/devices/philips.js.map +1 -0
  715. package/dist/devices/plaid.d.ts +3 -0
  716. package/dist/devices/plaid.d.ts.map +1 -0
  717. package/dist/devices/plaid.js +64 -0
  718. package/dist/devices/plugwise.d.ts +3 -0
  719. package/dist/devices/plugwise.d.ts.map +1 -0
  720. package/dist/devices/plugwise.js +209 -0
  721. package/dist/devices/plugwise.js.map +1 -0
  722. package/dist/devices/profalux.d.ts +3 -0
  723. package/dist/devices/profalux.d.ts.map +1 -0
  724. package/dist/devices/profalux.js +207 -0
  725. package/dist/devices/profalux.js.map +1 -0
  726. package/dist/devices/prolight.d.ts +3 -0
  727. package/dist/devices/prolight.d.ts.map +1 -0
  728. package/dist/devices/prolight.js +114 -0
  729. package/dist/devices/purmo.d.ts +3 -0
  730. package/dist/devices/purmo.d.ts.map +1 -0
  731. package/dist/devices/purmo.js +94 -0
  732. package/dist/devices/pushok.d.ts +3 -0
  733. package/dist/devices/pushok.d.ts.map +1 -0
  734. package/dist/devices/pushok.js +375 -0
  735. package/dist/devices/pushok.js.map +1 -0
  736. package/dist/devices/qa.d.ts +3 -0
  737. package/dist/devices/qa.d.ts.map +1 -0
  738. package/dist/devices/qa.js +294 -0
  739. package/dist/devices/qmotion.d.ts +3 -0
  740. package/dist/devices/qmotion.d.ts.map +1 -0
  741. package/dist/devices/qmotion.js +72 -0
  742. package/dist/devices/qoto.d.ts +3 -0
  743. package/dist/devices/qoto.d.ts.map +1 -0
  744. package/dist/devices/qoto.js +86 -0
  745. package/dist/devices/quotra.d.ts +3 -0
  746. package/dist/devices/quotra.d.ts.map +1 -0
  747. package/dist/devices/quotra.js +54 -0
  748. package/dist/devices/rademacher.d.ts +3 -0
  749. package/dist/devices/rademacher.d.ts.map +1 -0
  750. package/dist/devices/rademacher.js +61 -0
  751. package/dist/devices/radium.d.ts +3 -0
  752. package/dist/devices/radium.d.ts.map +1 -0
  753. package/dist/devices/radium.js +47 -0
  754. package/dist/devices/raex.d.ts +3 -0
  755. package/dist/devices/raex.d.ts.map +1 -0
  756. package/dist/devices/raex.js +47 -0
  757. package/dist/devices/rgb_genie.d.ts +3 -0
  758. package/dist/devices/rgb_genie.d.ts.map +1 -0
  759. package/dist/devices/rgb_genie.js +278 -0
  760. package/dist/devices/robb.d.ts +3 -0
  761. package/dist/devices/robb.d.ts.map +1 -0
  762. package/dist/devices/robb.js +471 -0
  763. package/dist/devices/roome.d.ts +3 -0
  764. package/dist/devices/roome.d.ts.map +1 -0
  765. package/dist/devices/roome.js +54 -0
  766. package/dist/devices/rtx.d.ts +3 -0
  767. package/dist/devices/rtx.d.ts.map +1 -0
  768. package/dist/devices/rtx.js +146 -0
  769. package/dist/devices/salus_controls.d.ts +3 -0
  770. package/dist/devices/salus_controls.d.ts.map +1 -0
  771. package/dist/devices/salus_controls.js +224 -0
  772. package/dist/devices/samotech.d.ts +3 -0
  773. package/dist/devices/samotech.d.ts.map +1 -0
  774. package/dist/devices/samotech.js +107 -0
  775. package/dist/devices/saswell.d.ts +3 -0
  776. package/dist/devices/saswell.d.ts.map +1 -0
  777. package/dist/devices/saswell.js +126 -0
  778. package/dist/devices/sber.d.ts +3 -0
  779. package/dist/devices/sber.d.ts.map +1 -0
  780. package/dist/devices/sber.js +98 -0
  781. package/dist/devices/scanproducts.d.ts +3 -0
  782. package/dist/devices/scanproducts.d.ts.map +1 -0
  783. package/dist/devices/scanproducts.js +54 -0
  784. package/dist/devices/schlage.d.ts +3 -0
  785. package/dist/devices/schlage.d.ts.map +1 -0
  786. package/dist/devices/schlage.js +63 -0
  787. package/dist/devices/schneider_electric.d.ts +3 -0
  788. package/dist/devices/schneider_electric.d.ts.map +1 -0
  789. package/dist/devices/schneider_electric.js +2187 -0
  790. package/dist/devices/schneider_electric.js.map +1 -0
  791. package/dist/devices/schwaiger.d.ts +3 -0
  792. package/dist/devices/schwaiger.d.ts.map +1 -0
  793. package/dist/devices/schwaiger.js +108 -0
  794. package/dist/devices/seastar_intelligence.d.ts +3 -0
  795. package/dist/devices/seastar_intelligence.d.ts.map +1 -0
  796. package/dist/devices/seastar_intelligence.js +52 -0
  797. package/dist/devices/securifi.d.ts +3 -0
  798. package/dist/devices/securifi.d.ts.map +1 -0
  799. package/dist/devices/securifi.js +82 -0
  800. package/dist/devices/sengled.d.ts +6 -0
  801. package/dist/devices/sengled.d.ts.map +1 -0
  802. package/dist/devices/sengled.js +388 -0
  803. package/dist/devices/sengled.js.map +1 -0
  804. package/dist/devices/sercomm.d.ts +3 -0
  805. package/dist/devices/sercomm.d.ts.map +1 -0
  806. package/dist/devices/sercomm.js +189 -0
  807. package/dist/devices/shade_control.d.ts +3 -0
  808. package/dist/devices/shade_control.d.ts.map +1 -0
  809. package/dist/devices/shade_control.js +64 -0
  810. package/dist/devices/shenzhen_homa.d.ts +3 -0
  811. package/dist/devices/shenzhen_homa.d.ts.map +1 -0
  812. package/dist/devices/shenzhen_homa.js +143 -0
  813. package/dist/devices/shinasystem.d.ts +3 -0
  814. package/dist/devices/shinasystem.d.ts.map +1 -0
  815. package/dist/devices/shinasystem.js +960 -0
  816. package/dist/devices/shinasystem.js.map +1 -0
  817. package/dist/devices/shyugj.d.ts +3 -0
  818. package/dist/devices/shyugj.d.ts.map +1 -0
  819. package/dist/devices/shyugj.js +53 -0
  820. package/dist/devices/siglis.d.ts +3 -0
  821. package/dist/devices/siglis.d.ts.map +1 -0
  822. package/dist/devices/siglis.js +452 -0
  823. package/dist/devices/siglis.js.map +1 -0
  824. package/dist/devices/sikom.d.ts +3 -0
  825. package/dist/devices/sikom.d.ts.map +1 -0
  826. package/dist/devices/sikom.js +67 -0
  827. package/dist/devices/simon.d.ts +3 -0
  828. package/dist/devices/simon.d.ts.map +1 -0
  829. package/dist/devices/simon.js +14 -0
  830. package/dist/devices/sinope.d.ts +3 -0
  831. package/dist/devices/sinope.d.ts.map +1 -0
  832. package/dist/devices/sinope.js +1754 -0
  833. package/dist/devices/sinope.js.map +1 -0
  834. package/dist/devices/siterwell.d.ts +3 -0
  835. package/dist/devices/siterwell.d.ts.map +1 -0
  836. package/dist/devices/siterwell.js +110 -0
  837. package/dist/devices/skydance.d.ts +3 -0
  838. package/dist/devices/skydance.d.ts.map +1 -0
  839. package/dist/devices/skydance.js +138 -0
  840. package/dist/devices/slv.d.ts +3 -0
  841. package/dist/devices/slv.d.ts.map +1 -0
  842. package/dist/devices/slv.js +70 -0
  843. package/dist/devices/smart9.d.ts +3 -0
  844. package/dist/devices/smart9.d.ts.map +1 -0
  845. package/dist/devices/smart9.js +66 -0
  846. package/dist/devices/smart_home_pty.d.ts +3 -0
  847. package/dist/devices/smart_home_pty.d.ts.map +1 -0
  848. package/dist/devices/smart_home_pty.js +54 -0
  849. package/dist/devices/smartenit.d.ts +3 -0
  850. package/dist/devices/smartenit.d.ts.map +1 -0
  851. package/dist/devices/smartenit.js +80 -0
  852. package/dist/devices/smartthings.d.ts +3 -0
  853. package/dist/devices/smartthings.d.ts.map +1 -0
  854. package/dist/devices/smartthings.js +526 -0
  855. package/dist/devices/smartthings.js.map +1 -0
  856. package/dist/devices/smartwings.d.ts +3 -0
  857. package/dist/devices/smartwings.d.ts.map +1 -0
  858. package/dist/devices/smartwings.js +63 -0
  859. package/dist/devices/smlight.d.ts +3 -0
  860. package/dist/devices/smlight.d.ts.map +1 -0
  861. package/dist/devices/smlight.js +56 -0
  862. package/dist/devices/sohan_electric.d.ts +3 -0
  863. package/dist/devices/sohan_electric.d.ts.map +1 -0
  864. package/dist/devices/sohan_electric.js +53 -0
  865. package/dist/devices/solaredge.d.ts +3 -0
  866. package/dist/devices/solaredge.d.ts.map +1 -0
  867. package/dist/devices/solaredge.js +47 -0
  868. package/dist/devices/soma.d.ts +3 -0
  869. package/dist/devices/soma.d.ts.map +1 -0
  870. package/dist/devices/soma.js +47 -0
  871. package/dist/devices/somfy.d.ts +3 -0
  872. package/dist/devices/somfy.d.ts.map +1 -0
  873. package/dist/devices/somfy.js +101 -0
  874. package/dist/devices/somgoms.d.ts +3 -0
  875. package/dist/devices/somgoms.d.ts.map +1 -0
  876. package/dist/devices/somgoms.js +84 -0
  877. package/dist/devices/sonoff.d.ts +3 -0
  878. package/dist/devices/sonoff.d.ts.map +1 -0
  879. package/dist/devices/sonoff.js +1612 -0
  880. package/dist/devices/sonoff.js.map +1 -0
  881. package/dist/devices/sowilo.d.ts +3 -0
  882. package/dist/devices/sowilo.d.ts.map +1 -0
  883. package/dist/devices/sowilo.js +47 -0
  884. package/dist/devices/spotmau.d.ts +3 -0
  885. package/dist/devices/spotmau.d.ts.map +1 -0
  886. package/dist/devices/spotmau.js +74 -0
  887. package/dist/devices/stelpro.d.ts +3 -0
  888. package/dist/devices/stelpro.d.ts.map +1 -0
  889. package/dist/devices/stelpro.js +365 -0
  890. package/dist/devices/stelpro.js.map +1 -0
  891. package/dist/devices/sunricher.d.ts +3 -0
  892. package/dist/devices/sunricher.d.ts.map +1 -0
  893. package/dist/devices/sunricher.js +2282 -0
  894. package/dist/devices/sunricher.js.map +1 -0
  895. package/dist/devices/swann.d.ts +3 -0
  896. package/dist/devices/swann.d.ts.map +1 -0
  897. package/dist/devices/swann.js +72 -0
  898. package/dist/devices/sylvania.d.ts +3 -0
  899. package/dist/devices/sylvania.d.ts.map +1 -0
  900. package/dist/devices/sylvania.js +226 -0
  901. package/dist/devices/tapestry.d.ts +3 -0
  902. package/dist/devices/tapestry.d.ts.map +1 -0
  903. package/dist/devices/tapestry.js +55 -0
  904. package/dist/devices/tci.d.ts +3 -0
  905. package/dist/devices/tci.d.ts.map +1 -0
  906. package/dist/devices/tci.js +61 -0
  907. package/dist/devices/tech.d.ts +3 -0
  908. package/dist/devices/tech.d.ts.map +1 -0
  909. package/dist/devices/tech.js +225 -0
  910. package/dist/devices/tech.js.map +1 -0
  911. package/dist/devices/technicolor.d.ts +3 -0
  912. package/dist/devices/technicolor.d.ts.map +1 -0
  913. package/dist/devices/technicolor.js +101 -0
  914. package/dist/devices/terncy.d.ts +3 -0
  915. package/dist/devices/terncy.d.ts.map +1 -0
  916. package/dist/devices/terncy.js +116 -0
  917. package/dist/devices/the_light_group.d.ts +3 -0
  918. package/dist/devices/the_light_group.d.ts.map +1 -0
  919. package/dist/devices/the_light_group.js +129 -0
  920. package/dist/devices/third_reality.d.ts +3 -0
  921. package/dist/devices/third_reality.d.ts.map +1 -0
  922. package/dist/devices/third_reality.js +609 -0
  923. package/dist/devices/third_reality.js.map +1 -0
  924. package/dist/devices/titan_products.d.ts +3 -0
  925. package/dist/devices/titan_products.d.ts.map +1 -0
  926. package/dist/devices/titan_products.js +61 -0
  927. package/dist/devices/tlwglobal.d.ts +3 -0
  928. package/dist/devices/tlwglobal.d.ts.map +1 -0
  929. package/dist/devices/tlwglobal.js +64 -0
  930. package/dist/devices/tplink.d.ts +3 -0
  931. package/dist/devices/tplink.d.ts.map +1 -0
  932. package/dist/devices/tplink.js +80 -0
  933. package/dist/devices/trust.d.ts +3 -0
  934. package/dist/devices/trust.d.ts.map +1 -0
  935. package/dist/devices/trust.js +182 -0
  936. package/dist/devices/tubeszb.d.ts +3 -0
  937. package/dist/devices/tubeszb.d.ts.map +1 -0
  938. package/dist/devices/tubeszb.js +59 -0
  939. package/dist/devices/tuya.d.ts +3 -0
  940. package/dist/devices/tuya.d.ts.map +1 -0
  941. package/dist/devices/tuya.js +16004 -0
  942. package/dist/devices/tuya.js.map +1 -0
  943. package/dist/devices/ubisys.d.ts +3 -0
  944. package/dist/devices/ubisys.d.ts.map +1 -0
  945. package/dist/devices/ubisys.js +1310 -0
  946. package/dist/devices/ubisys.js.map +1 -0
  947. package/dist/devices/uhome.d.ts +3 -0
  948. package/dist/devices/uhome.d.ts.map +1 -0
  949. package/dist/devices/uhome.js +63 -0
  950. package/dist/devices/universal_electronics_inc.d.ts +3 -0
  951. package/dist/devices/universal_electronics_inc.d.ts.map +1 -0
  952. package/dist/devices/universal_electronics_inc.js +185 -0
  953. package/dist/devices/vbled.d.ts +3 -0
  954. package/dist/devices/vbled.d.ts.map +1 -0
  955. package/dist/devices/vbled.js +47 -0
  956. package/dist/devices/vesternet.d.ts +3 -0
  957. package/dist/devices/vesternet.d.ts.map +1 -0
  958. package/dist/devices/vesternet.js +329 -0
  959. package/dist/devices/vesternet.js.map +1 -0
  960. package/dist/devices/viessmann.d.ts +3 -0
  961. package/dist/devices/viessmann.d.ts.map +1 -0
  962. package/dist/devices/viessmann.js +123 -0
  963. package/dist/devices/villeroy_boch.d.ts +3 -0
  964. package/dist/devices/villeroy_boch.d.ts.map +1 -0
  965. package/dist/devices/villeroy_boch.js +54 -0
  966. package/dist/devices/vimar.d.ts +3 -0
  967. package/dist/devices/vimar.d.ts.map +1 -0
  968. package/dist/devices/vimar.js +136 -0
  969. package/dist/devices/visonic.d.ts +3 -0
  970. package/dist/devices/visonic.d.ts.map +1 -0
  971. package/dist/devices/visonic.js +137 -0
  972. package/dist/devices/vrey.d.ts +3 -0
  973. package/dist/devices/vrey.d.ts.map +1 -0
  974. package/dist/devices/vrey.js +48 -0
  975. package/dist/devices/wally.d.ts +3 -0
  976. package/dist/devices/wally.d.ts.map +1 -0
  977. package/dist/devices/wally.js +63 -0
  978. package/dist/devices/waxman.d.ts +3 -0
  979. package/dist/devices/waxman.d.ts.map +1 -0
  980. package/dist/devices/waxman.js +84 -0
  981. package/dist/devices/weiser.d.ts +3 -0
  982. package/dist/devices/weiser.d.ts.map +1 -0
  983. package/dist/devices/weiser.js +102 -0
  984. package/dist/devices/weiser.js.map +1 -0
  985. package/dist/devices/weten.d.ts +3 -0
  986. package/dist/devices/weten.d.ts.map +1 -0
  987. package/dist/devices/weten.js +88 -0
  988. package/dist/devices/wirenboard.d.ts +3 -0
  989. package/dist/devices/wirenboard.d.ts.map +1 -0
  990. package/dist/devices/wirenboard.js +666 -0
  991. package/dist/devices/wirenboard.js.map +1 -0
  992. package/dist/devices/wisdom.d.ts +3 -0
  993. package/dist/devices/wisdom.d.ts.map +1 -0
  994. package/dist/devices/wisdom.js +47 -0
  995. package/dist/devices/woolley.d.ts +3 -0
  996. package/dist/devices/woolley.d.ts.map +1 -0
  997. package/dist/devices/woolley.js +87 -0
  998. package/dist/devices/woox.d.ts +3 -0
  999. package/dist/devices/woox.d.ts.map +1 -0
  1000. package/dist/devices/woox.js +132 -0
  1001. package/dist/devices/wyze.d.ts +3 -0
  1002. package/dist/devices/wyze.d.ts.map +1 -0
  1003. package/dist/devices/wyze.js +62 -0
  1004. package/dist/devices/xal.d.ts +3 -0
  1005. package/dist/devices/xal.d.ts.map +1 -0
  1006. package/dist/devices/xal.js +61 -0
  1007. package/dist/devices/xinghuoyuan.d.ts +3 -0
  1008. package/dist/devices/xinghuoyuan.d.ts.map +1 -0
  1009. package/dist/devices/xinghuoyuan.js +47 -0
  1010. package/dist/devices/xyzroe.d.ts +3 -0
  1011. package/dist/devices/xyzroe.d.ts.map +1 -0
  1012. package/dist/devices/xyzroe.js +516 -0
  1013. package/dist/devices/xyzroe.js.map +1 -0
  1014. package/dist/devices/yale.d.ts +3 -0
  1015. package/dist/devices/yale.d.ts.map +1 -0
  1016. package/dist/devices/yale.js +502 -0
  1017. package/dist/devices/yale.js.map +1 -0
  1018. package/dist/devices/yandex.d.ts +3 -0
  1019. package/dist/devices/yandex.d.ts.map +1 -0
  1020. package/dist/devices/yandex.js +444 -0
  1021. package/dist/devices/yandex.js.map +1 -0
  1022. package/dist/devices/ynoa.d.ts +3 -0
  1023. package/dist/devices/ynoa.d.ts.map +1 -0
  1024. package/dist/devices/ynoa.js +112 -0
  1025. package/dist/devices/yokis.d.ts +3 -0
  1026. package/dist/devices/yokis.d.ts.map +1 -0
  1027. package/dist/devices/yokis.js +2535 -0
  1028. package/dist/devices/yokis.js.map +1 -0
  1029. package/dist/devices/yookee.d.ts +3 -0
  1030. package/dist/devices/yookee.d.ts.map +1 -0
  1031. package/dist/devices/yookee.js +62 -0
  1032. package/dist/devices/ysrsai.d.ts +3 -0
  1033. package/dist/devices/ysrsai.d.ts.map +1 -0
  1034. package/dist/devices/ysrsai.js +65 -0
  1035. package/dist/devices/zemismart.d.ts +3 -0
  1036. package/dist/devices/zemismart.d.ts.map +1 -0
  1037. package/dist/devices/zemismart.js +391 -0
  1038. package/dist/devices/zen.d.ts +3 -0
  1039. package/dist/devices/zen.d.ts.map +1 -0
  1040. package/dist/devices/zen.js +95 -0
  1041. package/dist/devices/zigbeetlc.js +235 -0
  1042. package/dist/devices/zipato.d.ts +3 -0
  1043. package/dist/devices/zipato.d.ts.map +1 -0
  1044. package/dist/devices/zipato.js +47 -0
  1045. package/dist/index.d.ts +20 -0
  1046. package/dist/index.d.ts.map +1 -0
  1047. package/dist/index.js +513 -0
  1048. package/dist/index.js.map +1 -0
  1049. package/dist/indexer.d.ts +5 -0
  1050. package/dist/indexer.d.ts.map +1 -0
  1051. package/dist/indexer.js +135 -0
  1052. package/dist/indexer.js.map +1 -0
  1053. package/dist/lib/color.d.ts +271 -0
  1054. package/dist/lib/color.d.ts.map +1 -0
  1055. package/dist/lib/color.js +754 -0
  1056. package/dist/lib/color.js.map +1 -0
  1057. package/dist/lib/configureKey.d.ts +3 -0
  1058. package/dist/lib/configureKey.d.ts.map +1 -0
  1059. package/dist/lib/configureKey.js +938 -0
  1060. package/dist/lib/configureKey.js.map +1 -0
  1061. package/dist/lib/constants.d.ts +68 -0
  1062. package/dist/lib/constants.d.ts.map +1 -0
  1063. package/dist/lib/constants.js +264 -0
  1064. package/dist/lib/constants.js.map +1 -0
  1065. package/dist/lib/develco.d.ts +15 -0
  1066. package/dist/lib/develco.d.ts.map +1 -0
  1067. package/dist/lib/develco.js +183 -0
  1068. package/dist/lib/develco.js.map +1 -0
  1069. package/dist/lib/ewelink.d.ts +30 -0
  1070. package/dist/lib/ewelink.d.ts.map +1 -0
  1071. package/dist/lib/ewelink.js +716 -0
  1072. package/dist/lib/ewelink.js.map +1 -0
  1073. package/dist/lib/exposes.d.ts +360 -0
  1074. package/dist/lib/exposes.d.ts.map +1 -0
  1075. package/dist/lib/exposes.js +1085 -0
  1076. package/dist/lib/exposes.js.map +1 -0
  1077. package/dist/lib/generateDefinition.d.ts +6 -0
  1078. package/dist/lib/generateDefinition.d.ts.map +1 -0
  1079. package/dist/lib/generateDefinition.js +345 -0
  1080. package/dist/lib/generateDefinition.js.map +1 -0
  1081. package/dist/lib/ikea.d.ts +39 -0
  1082. package/dist/lib/ikea.d.ts.map +1 -0
  1083. package/dist/lib/ikea.js +785 -0
  1084. package/dist/lib/ikea.js.map +1 -0
  1085. package/dist/lib/kelvinToXy.js +1913 -0
  1086. package/dist/lib/kelvinToXy.js.map +1 -0
  1087. package/dist/lib/ledvance.d.ts +20 -0
  1088. package/dist/lib/ledvance.d.ts.map +1 -0
  1089. package/dist/lib/ledvance.js +103 -0
  1090. package/dist/lib/ledvance.js.map +1 -0
  1091. package/dist/lib/legacy.d.ts +5054 -0
  1092. package/dist/lib/legacy.d.ts.map +1 -0
  1093. package/dist/lib/legacy.js +6456 -0
  1094. package/dist/lib/legacy.js.map +1 -0
  1095. package/dist/lib/legrand.d.ts +69 -0
  1096. package/dist/lib/legrand.d.ts.map +1 -0
  1097. package/dist/lib/legrand.js +282 -0
  1098. package/dist/lib/legrand.js.map +1 -0
  1099. package/dist/lib/light.d.ts +8 -0
  1100. package/dist/lib/light.d.ts.map +1 -0
  1101. package/dist/lib/light.js +142 -0
  1102. package/dist/lib/light.js.map +1 -0
  1103. package/dist/lib/logger.d.ts +4 -0
  1104. package/dist/lib/logger.d.ts.map +1 -0
  1105. package/dist/lib/logger.js +14 -0
  1106. package/dist/lib/lumi.d.ts +962 -0
  1107. package/dist/lib/lumi.d.ts.map +1 -0
  1108. package/dist/lib/lumi.js +5020 -0
  1109. package/dist/lib/lumi.js.map +1 -0
  1110. package/dist/lib/modernExtend.d.ts +337 -0
  1111. package/dist/lib/modernExtend.d.ts.map +1 -0
  1112. package/dist/lib/modernExtend.js +2091 -0
  1113. package/dist/lib/modernExtend.js.map +1 -0
  1114. package/dist/lib/namron.d.ts +56 -0
  1115. package/dist/lib/namron.d.ts.map +1 -0
  1116. package/dist/lib/namron.js +434 -0
  1117. package/dist/lib/namron.js.map +1 -0
  1118. package/dist/lib/nodon.d.ts +3 -0
  1119. package/dist/lib/nodon.d.ts.map +1 -0
  1120. package/dist/lib/nodon.js +130 -0
  1121. package/dist/lib/nodon.js.map +1 -0
  1122. package/dist/lib/ota.d.ts +71 -0
  1123. package/dist/lib/ota.d.ts.map +1 -0
  1124. package/dist/lib/ota.js +661 -0
  1125. package/dist/lib/ota.js.map +1 -0
  1126. package/dist/lib/philips.d.ts +252 -0
  1127. package/dist/lib/philips.d.ts.map +1 -0
  1128. package/dist/lib/philips.js +687 -0
  1129. package/dist/lib/philips.js.map +1 -0
  1130. package/dist/lib/reporting.d.ts +58 -0
  1131. package/dist/lib/reporting.d.ts.map +1 -0
  1132. package/dist/lib/reporting.js +285 -0
  1133. package/dist/lib/store.d.ts +7 -0
  1134. package/dist/lib/store.d.ts.map +1 -0
  1135. package/dist/lib/store.js +49 -0
  1136. package/dist/lib/store.js.map +1 -0
  1137. package/dist/lib/sunricher.d.ts +13 -0
  1138. package/dist/lib/sunricher.d.ts.map +1 -0
  1139. package/dist/lib/sunricher.js +14 -0
  1140. package/dist/lib/tuya.d.ts +784 -0
  1141. package/dist/lib/tuya.d.ts.map +1 -0
  1142. package/dist/lib/tuya.js +2397 -0
  1143. package/dist/lib/tuya.js.map +1 -0
  1144. package/dist/lib/types.d.ts +440 -0
  1145. package/dist/lib/types.d.ts.map +1 -0
  1146. package/dist/lib/ubisys.d.ts +19 -0
  1147. package/dist/lib/ubisys.d.ts.map +1 -0
  1148. package/dist/lib/ubisys.js +293 -0
  1149. package/dist/lib/ubisys.js.map +1 -0
  1150. package/dist/lib/utils.d.ts +93 -0
  1151. package/dist/lib/utils.d.ts.map +1 -0
  1152. package/dist/lib/utils.js +726 -0
  1153. package/dist/lib/utils.js.map +1 -0
  1154. package/dist/lib/zosung.d.ts +52 -0
  1155. package/dist/lib/zosung.d.ts.map +1 -0
  1156. package/dist/lib/zosung.js +253 -0
  1157. package/dist/lib/zosung.js.map +1 -0
  1158. package/dist/models-index.json +1 -0
  1159. package/package.json +21 -30
  1160. package/CHANGELOG.md +0 -7334
  1161. package/converters/fromZigbee.d.ts +0 -2031
  1162. package/converters/fromZigbee.d.ts.map +0 -1
  1163. package/converters/fromZigbee.js +0 -5324
  1164. package/converters/fromZigbee.js.map +0 -1
  1165. package/converters/toZigbee.d.ts +0 -1574
  1166. package/converters/toZigbee.d.ts.map +0 -1
  1167. package/converters/toZigbee.js +0 -4433
  1168. package/converters/toZigbee.js.map +0 -1
  1169. package/devices/ITCommander.d.ts +0 -3
  1170. package/devices/ITCommander.d.ts.map +0 -1
  1171. package/devices/ITCommander.js +0 -76
  1172. package/devices/acova.d.ts +0 -3
  1173. package/devices/acova.d.ts.map +0 -1
  1174. package/devices/acova.js +0 -126
  1175. package/devices/acuity_brands_lighting.d.ts +0 -3
  1176. package/devices/acuity_brands_lighting.d.ts.map +0 -1
  1177. package/devices/acuity_brands_lighting.js +0 -61
  1178. package/devices/adeo.d.ts +0 -3
  1179. package/devices/adeo.d.ts.map +0 -1
  1180. package/devices/adeo.js +0 -485
  1181. package/devices/adeo.js.map +0 -1
  1182. package/devices/adurosmart.d.ts +0 -3
  1183. package/devices/adurosmart.d.ts.map +0 -1
  1184. package/devices/adurosmart.js +0 -189
  1185. package/devices/aeotec.d.ts +0 -3
  1186. package/devices/aeotec.d.ts.map +0 -1
  1187. package/devices/aeotec.js +0 -98
  1188. package/devices/airam.d.ts +0 -3
  1189. package/devices/airam.d.ts.map +0 -1
  1190. package/devices/airam.js +0 -105
  1191. package/devices/airzone_aidoo.d.ts +0 -3
  1192. package/devices/airzone_aidoo.d.ts.map +0 -1
  1193. package/devices/airzone_aidoo.js +0 -80
  1194. package/devices/ajax_online.d.ts +0 -3
  1195. package/devices/ajax_online.d.ts.map +0 -1
  1196. package/devices/ajax_online.js +0 -83
  1197. package/devices/akuvox.d.ts +0 -3
  1198. package/devices/akuvox.d.ts.map +0 -1
  1199. package/devices/akuvox.js +0 -68
  1200. package/devices/alchemy.d.ts +0 -3
  1201. package/devices/alchemy.d.ts.map +0 -1
  1202. package/devices/alchemy.js +0 -54
  1203. package/devices/aldi.d.ts +0 -3
  1204. package/devices/aldi.d.ts.map +0 -1
  1205. package/devices/aldi.js +0 -57
  1206. package/devices/alecto.d.ts +0 -3
  1207. package/devices/alecto.d.ts.map +0 -1
  1208. package/devices/alecto.js +0 -95
  1209. package/devices/amina.d.ts +0 -3
  1210. package/devices/amina.d.ts.map +0 -1
  1211. package/devices/amina.js +0 -369
  1212. package/devices/amina.js.map +0 -1
  1213. package/devices/anchor.d.ts +0 -3
  1214. package/devices/anchor.d.ts.map +0 -1
  1215. package/devices/anchor.js +0 -47
  1216. package/devices/atlantic.d.ts +0 -3
  1217. package/devices/atlantic.d.ts.map +0 -1
  1218. package/devices/atlantic.js +0 -145
  1219. package/devices/atlantic.js.map +0 -1
  1220. package/devices/atsmart.d.ts +0 -3
  1221. package/devices/atsmart.d.ts.map +0 -1
  1222. package/devices/atsmart.js +0 -47
  1223. package/devices/aubess.d.ts +0 -3
  1224. package/devices/aubess.d.ts.map +0 -1
  1225. package/devices/aubess.js +0 -60
  1226. package/devices/aurora_lighting.d.ts +0 -3
  1227. package/devices/aurora_lighting.d.ts.map +0 -1
  1228. package/devices/aurora_lighting.js +0 -332
  1229. package/devices/automaton.d.ts +0 -3
  1230. package/devices/automaton.d.ts.map +0 -1
  1231. package/devices/automaton.js +0 -64
  1232. package/devices/avatto.d.ts +0 -3
  1233. package/devices/avatto.d.ts.map +0 -1
  1234. package/devices/avatto.js +0 -273
  1235. package/devices/avatto.js.map +0 -1
  1236. package/devices/awox.d.ts +0 -3
  1237. package/devices/awox.d.ts.map +0 -1
  1238. package/devices/awox.js +0 -239
  1239. package/devices/axis.d.ts +0 -3
  1240. package/devices/axis.d.ts.map +0 -1
  1241. package/devices/axis.js +0 -62
  1242. package/devices/bankamp.d.ts +0 -3
  1243. package/devices/bankamp.d.ts.map +0 -1
  1244. package/devices/bankamp.js +0 -47
  1245. package/devices/bega.d.ts +0 -3
  1246. package/devices/bega.d.ts.map +0 -1
  1247. package/devices/bega.js +0 -61
  1248. package/devices/belkin.d.ts +0 -3
  1249. package/devices/belkin.d.ts.map +0 -1
  1250. package/devices/belkin.js +0 -47
  1251. package/devices/bitron.d.ts +0 -3
  1252. package/devices/bitron.d.ts.map +0 -1
  1253. package/devices/bitron.js +0 -357
  1254. package/devices/bitron.js.map +0 -1
  1255. package/devices/bituo_technik.d.ts +0 -3
  1256. package/devices/bituo_technik.d.ts.map +0 -1
  1257. package/devices/bituo_technik.js +0 -120
  1258. package/devices/blaupunkt.d.ts +0 -3
  1259. package/devices/blaupunkt.d.ts.map +0 -1
  1260. package/devices/blaupunkt.js +0 -67
  1261. package/devices/blitzwolf.d.ts +0 -3
  1262. package/devices/blitzwolf.d.ts.map +0 -1
  1263. package/devices/blitzwolf.js +0 -73
  1264. package/devices/bosch.d.ts +0 -3
  1265. package/devices/bosch.d.ts.map +0 -1
  1266. package/devices/bosch.js +0 -2046
  1267. package/devices/bosch.js.map +0 -1
  1268. package/devices/bouffalo_lab.d.ts +0 -3
  1269. package/devices/bouffalo_lab.d.ts.map +0 -1
  1270. package/devices/bouffalo_lab.js +0 -47
  1271. package/devices/brimate.d.ts +0 -3
  1272. package/devices/brimate.d.ts.map +0 -1
  1273. package/devices/brimate.js +0 -54
  1274. package/devices/bseed.d.ts +0 -3
  1275. package/devices/bseed.d.ts.map +0 -1
  1276. package/devices/bseed.js +0 -53
  1277. package/devices/bticino.d.ts +0 -3
  1278. package/devices/bticino.d.ts.map +0 -1
  1279. package/devices/bticino.js +0 -112
  1280. package/devices/busch_jaeger.d.ts +0 -3
  1281. package/devices/busch_jaeger.d.ts.map +0 -1
  1282. package/devices/busch_jaeger.js +0 -184
  1283. package/devices/busch_jaeger.js.map +0 -1
  1284. package/devices/byun.d.ts +0 -3
  1285. package/devices/byun.d.ts.map +0 -1
  1286. package/devices/byun.js +0 -63
  1287. package/devices/calex.d.ts +0 -3
  1288. package/devices/calex.d.ts.map +0 -1
  1289. package/devices/calex.js +0 -90
  1290. package/devices/candeo.d.ts +0 -3
  1291. package/devices/candeo.d.ts.map +0 -1
  1292. package/devices/candeo.js +0 -224
  1293. package/devices/casaia.d.ts +0 -3
  1294. package/devices/casaia.d.ts.map +0 -1
  1295. package/devices/casaia.js +0 -98
  1296. package/devices/cel.d.ts +0 -3
  1297. package/devices/cel.d.ts.map +0 -1
  1298. package/devices/cel.js +0 -19
  1299. package/devices/centralite.d.ts +0 -3
  1300. package/devices/centralite.d.ts.map +0 -1
  1301. package/devices/centralite.js +0 -452
  1302. package/devices/centralite.js.map +0 -1
  1303. package/devices/chacon.d.ts +0 -3
  1304. package/devices/chacon.d.ts.map +0 -1
  1305. package/devices/chacon.js +0 -57
  1306. package/devices/cleode.d.ts +0 -3
  1307. package/devices/cleode.d.ts.map +0 -1
  1308. package/devices/cleode.js +0 -47
  1309. package/devices/cleverio.d.ts +0 -3
  1310. package/devices/cleverio.d.ts.map +0 -1
  1311. package/devices/cleverio.js +0 -77
  1312. package/devices/climax.d.ts +0 -3
  1313. package/devices/climax.d.ts.map +0 -1
  1314. package/devices/climax.js +0 -180
  1315. package/devices/commercial_electric.d.ts +0 -3
  1316. package/devices/commercial_electric.d.ts.map +0 -1
  1317. package/devices/commercial_electric.js +0 -47
  1318. package/devices/cree.d.ts +0 -3
  1319. package/devices/cree.d.ts.map +0 -1
  1320. package/devices/cree.js +0 -47
  1321. package/devices/ctm.d.ts +0 -3
  1322. package/devices/ctm.d.ts.map +0 -1
  1323. package/devices/ctm.js +0 -1361
  1324. package/devices/ctm.js.map +0 -1
  1325. package/devices/current_products_corp.d.ts +0 -3
  1326. package/devices/current_products_corp.d.ts.map +0 -1
  1327. package/devices/current_products_corp.js +0 -63
  1328. package/devices/custom_devices_diy.d.ts +0 -3
  1329. package/devices/custom_devices_diy.d.ts.map +0 -1
  1330. package/devices/custom_devices_diy.js +0 -1206
  1331. package/devices/custom_devices_diy.js.map +0 -1
  1332. package/devices/cy_lighting.d.ts +0 -3
  1333. package/devices/cy_lighting.d.ts.map +0 -1
  1334. package/devices/cy_lighting.js +0 -47
  1335. package/devices/danalock.d.ts +0 -3
  1336. package/devices/danalock.d.ts.map +0 -1
  1337. package/devices/danalock.js +0 -64
  1338. package/devices/danfoss.d.ts +0 -3
  1339. package/devices/danfoss.d.ts.map +0 -1
  1340. package/devices/danfoss.js +0 -741
  1341. package/devices/danfoss.js.map +0 -1
  1342. package/devices/databyte.d.ts +0 -3
  1343. package/devices/databyte.d.ts.map +0 -1
  1344. package/devices/databyte.js +0 -93
  1345. package/devices/datek.d.ts +0 -3
  1346. package/devices/datek.d.ts.map +0 -1
  1347. package/devices/datek.js +0 -307
  1348. package/devices/datek.js.map +0 -1
  1349. package/devices/dawon_dns.d.ts +0 -3
  1350. package/devices/dawon_dns.d.ts.map +0 -1
  1351. package/devices/dawon_dns.js +0 -317
  1352. package/devices/develco.d.ts +0 -3
  1353. package/devices/develco.d.ts.map +0 -1
  1354. package/devices/develco.js +0 -1034
  1355. package/devices/develco.js.map +0 -1
  1356. package/devices/digi.d.ts +0 -3
  1357. package/devices/digi.d.ts.map +0 -1
  1358. package/devices/digi.js +0 -24
  1359. package/devices/direct_signs.d.ts +0 -3
  1360. package/devices/direct_signs.d.ts.map +0 -1
  1361. package/devices/direct_signs.js +0 -47
  1362. package/devices/diyruz.d.ts +0 -3
  1363. package/devices/diyruz.d.ts.map +0 -1
  1364. package/devices/diyruz.js +0 -400
  1365. package/devices/dlink.d.ts +0 -3
  1366. package/devices/dlink.d.ts.map +0 -1
  1367. package/devices/dlink.js +0 -75
  1368. package/devices/dnake.d.ts +0 -3
  1369. package/devices/dnake.d.ts.map +0 -1
  1370. package/devices/dnake.js +0 -47
  1371. package/devices/dowsing_reynolds.d.ts +0 -3
  1372. package/devices/dowsing_reynolds.d.ts.map +0 -1
  1373. package/devices/dowsing_reynolds.js +0 -47
  1374. package/devices/dresden_elektronik.d.ts +0 -3
  1375. package/devices/dresden_elektronik.d.ts.map +0 -1
  1376. package/devices/dresden_elektronik.js +0 -82
  1377. package/devices/easyaccess.d.ts +0 -3
  1378. package/devices/easyaccess.d.ts.map +0 -1
  1379. package/devices/easyaccess.js +0 -70
  1380. package/devices/easyiot.d.ts +0 -3
  1381. package/devices/easyiot.d.ts.map +0 -1
  1382. package/devices/easyiot.js +0 -357
  1383. package/devices/easyiot.js.map +0 -1
  1384. package/devices/eatonhalo_led.d.ts +0 -3
  1385. package/devices/eatonhalo_led.d.ts.map +0 -1
  1386. package/devices/eatonhalo_led.js +0 -47
  1387. package/devices/echostar.d.ts +0 -3
  1388. package/devices/echostar.d.ts.map +0 -1
  1389. package/devices/echostar.js +0 -64
  1390. package/devices/ecodim.d.ts +0 -3
  1391. package/devices/ecodim.d.ts.map +0 -1
  1392. package/devices/ecodim.js +0 -269
  1393. package/devices/ecolink.d.ts +0 -3
  1394. package/devices/ecolink.d.ts.map +0 -1
  1395. package/devices/ecolink.js +0 -60
  1396. package/devices/ecosmart.d.ts +0 -3
  1397. package/devices/ecosmart.d.ts.map +0 -1
  1398. package/devices/ecosmart.js +0 -115
  1399. package/devices/ecozy.d.ts +0 -3
  1400. package/devices/ecozy.d.ts.map +0 -1
  1401. package/devices/ecozy.js +0 -88
  1402. package/devices/edp.d.ts +0 -3
  1403. package/devices/edp.d.ts.map +0 -1
  1404. package/devices/edp.js +0 -73
  1405. package/devices/efekta.d.ts +0 -3
  1406. package/devices/efekta.d.ts.map +0 -1
  1407. package/devices/efekta.js +0 -2632
  1408. package/devices/eglo.d.ts +0 -3
  1409. package/devices/eglo.d.ts.map +0 -1
  1410. package/devices/eglo.js +0 -133
  1411. package/devices/elko.d.ts +0 -3
  1412. package/devices/elko.d.ts.map +0 -1
  1413. package/devices/elko.js +0 -239
  1414. package/devices/enbrighten.d.ts +0 -3
  1415. package/devices/enbrighten.d.ts.map +0 -1
  1416. package/devices/enbrighten.js +0 -156
  1417. package/devices/enocean.d.ts +0 -3
  1418. package/devices/enocean.d.ts.map +0 -1
  1419. package/devices/enocean.js +0 -152
  1420. package/devices/envilar.d.ts +0 -3
  1421. package/devices/envilar.d.ts.map +0 -1
  1422. package/devices/envilar.js +0 -99
  1423. package/devices/essentialb.d.ts +0 -3
  1424. package/devices/essentialb.d.ts.map +0 -1
  1425. package/devices/essentialb.js +0 -136
  1426. package/devices/essentials.d.ts +0 -3
  1427. package/devices/essentials.d.ts.map +0 -1
  1428. package/devices/essentials.js +0 -150
  1429. package/devices/eucontrols.d.ts +0 -3
  1430. package/devices/eucontrols.d.ts.map +0 -1
  1431. package/devices/eucontrols.js +0 -47
  1432. package/devices/eurotronic.d.ts +0 -3
  1433. package/devices/eurotronic.d.ts.map +0 -1
  1434. package/devices/eurotronic.js +0 -205
  1435. package/devices/evanell.d.ts +0 -3
  1436. package/devices/evanell.d.ts.map +0 -1
  1437. package/devices/evanell.js +0 -71
  1438. package/devices/evn.d.ts +0 -3
  1439. package/devices/evn.d.ts.map +0 -1
  1440. package/devices/evn.js +0 -93
  1441. package/devices/evology.d.ts +0 -3
  1442. package/devices/evology.d.ts.map +0 -1
  1443. package/devices/evology.js +0 -63
  1444. package/devices/evvr.d.ts +0 -3
  1445. package/devices/evvr.d.ts.map +0 -1
  1446. package/devices/evvr.js +0 -47
  1447. package/devices/ewelink.d.ts +0 -3
  1448. package/devices/ewelink.d.ts.map +0 -1
  1449. package/devices/ewelink.js +0 -352
  1450. package/devices/ewelink.js.map +0 -1
  1451. package/devices/ezex.d.ts +0 -3
  1452. package/devices/ezex.d.ts.map +0 -1
  1453. package/devices/ezex.js +0 -47
  1454. package/devices/fantem.d.ts +0 -3
  1455. package/devices/fantem.d.ts.map +0 -1
  1456. package/devices/fantem.js +0 -114
  1457. package/devices/fantem.js.map +0 -1
  1458. package/devices/feibit.d.ts +0 -3
  1459. package/devices/feibit.d.ts.map +0 -1
  1460. package/devices/feibit.js +0 -344
  1461. package/devices/feibit.js.map +0 -1
  1462. package/devices/fireangel.d.ts +0 -3
  1463. package/devices/fireangel.d.ts.map +0 -1
  1464. package/devices/fireangel.js +0 -54
  1465. package/devices/frankever.d.ts +0 -3
  1466. package/devices/frankever.d.ts.map +0 -1
  1467. package/devices/frankever.js +0 -67
  1468. package/devices/frient.d.ts +0 -3
  1469. package/devices/frient.d.ts.map +0 -1
  1470. package/devices/frient.js +0 -74
  1471. package/devices/futurehome.d.ts +0 -3
  1472. package/devices/futurehome.d.ts.map +0 -1
  1473. package/devices/futurehome.js +0 -123
  1474. package/devices/ge.d.ts +0 -3
  1475. package/devices/ge.d.ts.map +0 -1
  1476. package/devices/ge.js +0 -133
  1477. package/devices/gewiss.d.ts +0 -3
  1478. package/devices/gewiss.d.ts.map +0 -1
  1479. package/devices/gewiss.js +0 -85
  1480. package/devices/gidealed.d.ts +0 -3
  1481. package/devices/gidealed.d.ts.map +0 -1
  1482. package/devices/gidealed.js +0 -47
  1483. package/devices/giderwel.d.ts +0 -3
  1484. package/devices/giderwel.d.ts.map +0 -1
  1485. package/devices/giderwel.js +0 -47
  1486. package/devices/giex.d.ts +0 -3
  1487. package/devices/giex.d.ts.map +0 -1
  1488. package/devices/giex.js +0 -114
  1489. package/devices/girier.d.ts +0 -3
  1490. package/devices/girier.d.ts.map +0 -1
  1491. package/devices/girier.js +0 -51
  1492. package/devices/gledopto.d.ts +0 -3
  1493. package/devices/gledopto.d.ts.map +0 -1
  1494. package/devices/gledopto.js +0 -1052
  1495. package/devices/gledopto.js.map +0 -1
  1496. package/devices/gmmts.d.ts +0 -3
  1497. package/devices/gmmts.d.ts.map +0 -1
  1498. package/devices/gmmts.js +0 -2285
  1499. package/devices/gmmts.js.map +0 -1
  1500. package/devices/gmy.d.ts +0 -3
  1501. package/devices/gmy.d.ts.map +0 -1
  1502. package/devices/gmy.js +0 -47
  1503. package/devices/gs.d.ts +0 -3
  1504. package/devices/gs.d.ts.map +0 -1
  1505. package/devices/gs.js +0 -121
  1506. package/devices/gumax.d.ts +0 -3
  1507. package/devices/gumax.d.ts.map +0 -1
  1508. package/devices/gumax.js +0 -47
  1509. package/devices/halemeier.d.ts +0 -3
  1510. package/devices/halemeier.d.ts.map +0 -1
  1511. package/devices/halemeier.js +0 -128
  1512. package/devices/hampton_bay.d.ts +0 -3
  1513. package/devices/hampton_bay.d.ts.map +0 -1
  1514. package/devices/hampton_bay.js +0 -71
  1515. package/devices/heatit.d.ts +0 -3
  1516. package/devices/heatit.d.ts.map +0 -1
  1517. package/devices/heatit.js +0 -47
  1518. package/devices/heiman.d.ts +0 -3
  1519. package/devices/heiman.d.ts.map +0 -1
  1520. package/devices/heiman.js +0 -816
  1521. package/devices/heimgard_technologies.d.ts +0 -3
  1522. package/devices/heimgard_technologies.d.ts.map +0 -1
  1523. package/devices/heimgard_technologies.js +0 -192
  1524. package/devices/hej.d.ts +0 -3
  1525. package/devices/hej.d.ts.map +0 -1
  1526. package/devices/hej.js +0 -105
  1527. package/devices/hfh.d.ts +0 -3
  1528. package/devices/hfh.d.ts.map +0 -1
  1529. package/devices/hfh.js +0 -47
  1530. package/devices/hilux.d.ts +0 -3
  1531. package/devices/hilux.d.ts.map +0 -1
  1532. package/devices/hilux.js +0 -54
  1533. package/devices/hive.d.ts +0 -3
  1534. package/devices/hive.d.ts.map +0 -1
  1535. package/devices/hive.js +0 -765
  1536. package/devices/hommyn.d.ts +0 -3
  1537. package/devices/hommyn.d.ts.map +0 -1
  1538. package/devices/hommyn.js +0 -63
  1539. package/devices/honyar.d.ts +0 -3
  1540. package/devices/honyar.d.ts.map +0 -1
  1541. package/devices/honyar.js +0 -170
  1542. package/devices/hornbach.d.ts +0 -3
  1543. package/devices/hornbach.d.ts.map +0 -1
  1544. package/devices/hornbach.js +0 -138
  1545. package/devices/hzc_electric.d.ts +0 -3
  1546. package/devices/hzc_electric.d.ts.map +0 -1
  1547. package/devices/hzc_electric.js +0 -105
  1548. package/devices/icasa.d.ts +0 -3
  1549. package/devices/icasa.d.ts.map +0 -1
  1550. package/devices/icasa.js +0 -166
  1551. package/devices/idinio.d.ts +0 -3
  1552. package/devices/idinio.d.ts.map +0 -1
  1553. package/devices/idinio.js +0 -47
  1554. package/devices/ihorn.d.ts +0 -3
  1555. package/devices/ihorn.d.ts.map +0 -1
  1556. package/devices/ihorn.js +0 -108
  1557. package/devices/ikea.d.ts +0 -3
  1558. package/devices/ikea.d.ts.map +0 -1
  1559. package/devices/ikea.js +0 -980
  1560. package/devices/ilightsin.d.ts +0 -3
  1561. package/devices/ilightsin.d.ts.map +0 -1
  1562. package/devices/ilightsin.js +0 -47
  1563. package/devices/iluminize.d.ts +0 -3
  1564. package/devices/iluminize.d.ts.map +0 -1
  1565. package/devices/iluminize.js +0 -389
  1566. package/devices/ilux.d.ts +0 -3
  1567. package/devices/ilux.d.ts.map +0 -1
  1568. package/devices/ilux.js +0 -47
  1569. package/devices/imhotepcreation.d.ts +0 -3
  1570. package/devices/imhotepcreation.d.ts.map +0 -1
  1571. package/devices/imhotepcreation.js +0 -242
  1572. package/devices/immax.d.ts +0 -3
  1573. package/devices/immax.d.ts.map +0 -1
  1574. package/devices/immax.js +0 -303
  1575. package/devices/imou.d.ts +0 -3
  1576. package/devices/imou.d.ts.map +0 -1
  1577. package/devices/imou.js +0 -60
  1578. package/devices/index.js +0 -649
  1579. package/devices/index.js.map +0 -1
  1580. package/devices/innr.d.ts +0 -3
  1581. package/devices/innr.d.ts.map +0 -1
  1582. package/devices/innr.js +0 -868
  1583. package/devices/inovelli.d.ts +0 -3
  1584. package/devices/inovelli.d.ts.map +0 -1
  1585. package/devices/inovelli.js +0 -2014
  1586. package/devices/inovelli.js.map +0 -1
  1587. package/devices/insta.d.ts +0 -3
  1588. package/devices/insta.d.ts.map +0 -1
  1589. package/devices/insta.js +0 -185
  1590. package/devices/iolloi.d.ts +0 -3
  1591. package/devices/iolloi.d.ts.map +0 -1
  1592. package/devices/iolloi.js +0 -48
  1593. package/devices/iotperfect.d.ts +0 -3
  1594. package/devices/iotperfect.d.ts.map +0 -1
  1595. package/devices/iotperfect.js +0 -57
  1596. package/devices/iris.d.ts +0 -3
  1597. package/devices/iris.d.ts.map +0 -1
  1598. package/devices/iris.js +0 -210
  1599. package/devices/istar.d.ts +0 -3
  1600. package/devices/istar.d.ts.map +0 -1
  1601. package/devices/istar.js +0 -54
  1602. package/devices/jasco.d.ts +0 -3
  1603. package/devices/jasco.d.ts.map +0 -1
  1604. package/devices/jasco.js +0 -66
  1605. package/devices/javis.d.ts +0 -3
  1606. package/devices/javis.d.ts.map +0 -1
  1607. package/devices/javis.js +0 -80
  1608. package/devices/jethome.d.ts +0 -3
  1609. package/devices/jethome.d.ts.map +0 -1
  1610. package/devices/jethome.js +0 -123
  1611. package/devices/jethome.js.map +0 -1
  1612. package/devices/jiawen.d.ts +0 -3
  1613. package/devices/jiawen.d.ts.map +0 -1
  1614. package/devices/jiawen.js +0 -54
  1615. package/devices/jumitech.d.ts +0 -3
  1616. package/devices/jumitech.d.ts.map +0 -1
  1617. package/devices/jumitech.js +0 -47
  1618. package/devices/jxuan.d.ts +0 -3
  1619. package/devices/jxuan.d.ts.map +0 -1
  1620. package/devices/jxuan.js +0 -88
  1621. package/devices/kami.d.ts +0 -3
  1622. package/devices/kami.d.ts.map +0 -1
  1623. package/devices/kami.js +0 -54
  1624. package/devices/keen_home.d.ts +0 -3
  1625. package/devices/keen_home.d.ts.map +0 -1
  1626. package/devices/keen_home.js +0 -159
  1627. package/devices/klikaanklikuit.d.ts +0 -3
  1628. package/devices/klikaanklikuit.d.ts.map +0 -1
  1629. package/devices/klikaanklikuit.js +0 -54
  1630. package/devices/kmpcil.d.ts +0 -3
  1631. package/devices/kmpcil.d.ts.map +0 -1
  1632. package/devices/kmpcil.js +0 -215
  1633. package/devices/kmpcil.js.map +0 -1
  1634. package/devices/konke.d.ts +0 -3
  1635. package/devices/konke.d.ts.map +0 -1
  1636. package/devices/konke.js +0 -210
  1637. package/devices/ksentry.d.ts +0 -3
  1638. package/devices/ksentry.d.ts.map +0 -1
  1639. package/devices/ksentry.js +0 -47
  1640. package/devices/kurvia.d.ts +0 -3
  1641. package/devices/kurvia.d.ts.map +0 -1
  1642. package/devices/kurvia.js +0 -52
  1643. package/devices/kwikset.d.ts +0 -3
  1644. package/devices/kwikset.d.ts.map +0 -1
  1645. package/devices/kwikset.js +0 -156
  1646. package/devices/lanesto.d.ts +0 -3
  1647. package/devices/lanesto.d.ts.map +0 -1
  1648. package/devices/lanesto.js +0 -47
  1649. package/devices/lds.d.ts +0 -3
  1650. package/devices/lds.d.ts.map +0 -1
  1651. package/devices/lds.js +0 -47
  1652. package/devices/led_trading.d.ts +0 -3
  1653. package/devices/led_trading.d.ts.map +0 -1
  1654. package/devices/led_trading.js +0 -111
  1655. package/devices/led_trading.js.map +0 -1
  1656. package/devices/ledvance.d.ts +0 -3
  1657. package/devices/ledvance.d.ts.map +0 -1
  1658. package/devices/ledvance.js +0 -370
  1659. package/devices/leedarson.d.ts +0 -3
  1660. package/devices/leedarson.d.ts.map +0 -1
  1661. package/devices/leedarson.js +0 -183
  1662. package/devices/legrand.d.ts +0 -3
  1663. package/devices/legrand.d.ts.map +0 -1
  1664. package/devices/legrand.js +0 -737
  1665. package/devices/lellki.d.ts +0 -3
  1666. package/devices/lellki.d.ts.map +0 -1
  1667. package/devices/lellki.js +0 -164
  1668. package/devices/letsled.d.ts +0 -3
  1669. package/devices/letsled.d.ts.map +0 -1
  1670. package/devices/letsled.js +0 -47
  1671. package/devices/letv.d.ts +0 -3
  1672. package/devices/letv.d.ts.map +0 -1
  1673. package/devices/letv.js +0 -89
  1674. package/devices/leviton.d.ts +0 -3
  1675. package/devices/leviton.d.ts.map +0 -1
  1676. package/devices/leviton.js +0 -163
  1677. package/devices/leviton.js.map +0 -1
  1678. package/devices/lg.d.ts +0 -3
  1679. package/devices/lg.d.ts.map +0 -1
  1680. package/devices/lg.js +0 -61
  1681. package/devices/lidl.d.ts +0 -3
  1682. package/devices/lidl.d.ts.map +0 -1
  1683. package/devices/lidl.js +0 -673
  1684. package/devices/lidl.js.map +0 -1
  1685. package/devices/lifecontrol.d.ts +0 -3
  1686. package/devices/lifecontrol.d.ts.map +0 -1
  1687. package/devices/lifecontrol.js +0 -148
  1688. package/devices/lifecontrol.js.map +0 -1
  1689. package/devices/lightsolutions.d.ts +0 -3
  1690. package/devices/lightsolutions.d.ts.map +0 -1
  1691. package/devices/lightsolutions.js +0 -68
  1692. package/devices/linkind.d.ts +0 -3
  1693. package/devices/linkind.d.ts.map +0 -1
  1694. package/devices/linkind.js +0 -274
  1695. package/devices/linptech.d.ts +0 -3
  1696. package/devices/linptech.d.ts.map +0 -1
  1697. package/devices/linptech.js +0 -158
  1698. package/devices/linptech.js.map +0 -1
  1699. package/devices/livingwise.d.ts +0 -3
  1700. package/devices/livingwise.d.ts.map +0 -1
  1701. package/devices/livingwise.js +0 -118
  1702. package/devices/livolo.d.ts +0 -3
  1703. package/devices/livolo.d.ts.map +0 -1
  1704. package/devices/livolo.js +0 -421
  1705. package/devices/livolo.js.map +0 -1
  1706. package/devices/lixee.d.ts +0 -3
  1707. package/devices/lixee.d.ts.map +0 -1
  1708. package/devices/lixee.js +0 -1924
  1709. package/devices/lixee.js.map +0 -1
  1710. package/devices/lonsonho.d.ts +0 -3
  1711. package/devices/lonsonho.d.ts.map +0 -1
  1712. package/devices/lonsonho.js +0 -290
  1713. package/devices/ls.d.ts +0 -3
  1714. package/devices/ls.d.ts.map +0 -1
  1715. package/devices/ls.js +0 -66
  1716. package/devices/lubeez.d.ts +0 -3
  1717. package/devices/lubeez.d.ts.map +0 -1
  1718. package/devices/lubeez.js +0 -47
  1719. package/devices/lumi.d.ts +0 -3
  1720. package/devices/lumi.d.ts.map +0 -1
  1721. package/devices/lumi.js +0 -4430
  1722. package/devices/lumi.js.map +0 -1
  1723. package/devices/lupus.d.ts +0 -3
  1724. package/devices/lupus.d.ts.map +0 -1
  1725. package/devices/lupus.js +0 -97
  1726. package/devices/lutron.d.ts +0 -3
  1727. package/devices/lutron.d.ts.map +0 -1
  1728. package/devices/lutron.js +0 -71
  1729. package/devices/lux.d.ts +0 -3
  1730. package/devices/lux.d.ts.map +0 -1
  1731. package/devices/lux.js +0 -90
  1732. package/devices/lytko.d.ts +0 -3
  1733. package/devices/lytko.d.ts.map +0 -1
  1734. package/devices/lytko.js +0 -787
  1735. package/devices/lytko.js.map +0 -1
  1736. package/devices/m_elec.d.ts +0 -3
  1737. package/devices/m_elec.d.ts.map +0 -1
  1738. package/devices/m_elec.js +0 -68
  1739. package/devices/makegood.d.ts +0 -3
  1740. package/devices/makegood.d.ts.map +0 -1
  1741. package/devices/makegood.js +0 -65
  1742. package/devices/matcall_bv.d.ts +0 -3
  1743. package/devices/matcall_bv.d.ts.map +0 -1
  1744. package/devices/matcall_bv.js +0 -54
  1745. package/devices/mazda.d.ts +0 -3
  1746. package/devices/mazda.d.ts.map +0 -1
  1747. package/devices/mazda.js +0 -163
  1748. package/devices/mazda.js.map +0 -1
  1749. package/devices/meazon.d.ts +0 -3
  1750. package/devices/meazon.d.ts.map +0 -1
  1751. package/devices/meazon.js +0 -98
  1752. package/devices/meazon.js.map +0 -1
  1753. package/devices/mercator.d.ts +0 -3
  1754. package/devices/mercator.d.ts.map +0 -1
  1755. package/devices/mercator.js +0 -252
  1756. package/devices/miboxer.d.ts +0 -3
  1757. package/devices/miboxer.d.ts.map +0 -1
  1758. package/devices/miboxer.js +0 -92
  1759. package/devices/micromatic.d.ts +0 -3
  1760. package/devices/micromatic.d.ts.map +0 -1
  1761. package/devices/micromatic.js +0 -47
  1762. package/devices/modular.d.ts +0 -3
  1763. package/devices/modular.d.ts.map +0 -1
  1764. package/devices/modular.js +0 -47
  1765. package/devices/moes.d.ts +0 -3
  1766. package/devices/moes.d.ts.map +0 -1
  1767. package/devices/moes.js +0 -722
  1768. package/devices/muller_licht.d.ts +0 -3
  1769. package/devices/muller_licht.d.ts.map +0 -1
  1770. package/devices/muller_licht.js +0 -337
  1771. package/devices/multiterm.d.ts +0 -3
  1772. package/devices/multiterm.d.ts.map +0 -1
  1773. package/devices/multiterm.js +0 -122
  1774. package/devices/multiterm.js.map +0 -1
  1775. package/devices/namron.d.ts +0 -3
  1776. package/devices/namron.d.ts.map +0 -1
  1777. package/devices/namron.js +0 -1572
  1778. package/devices/namron.js.map +0 -1
  1779. package/devices/nanoleaf.d.ts +0 -3
  1780. package/devices/nanoleaf.d.ts.map +0 -1
  1781. package/devices/nanoleaf.js +0 -47
  1782. package/devices/nedis.d.ts +0 -3
  1783. package/devices/nedis.d.ts.map +0 -1
  1784. package/devices/nedis.js +0 -87
  1785. package/devices/neo.d.ts +0 -3
  1786. package/devices/neo.d.ts.map +0 -1
  1787. package/devices/neo.js +0 -557
  1788. package/devices/neo.js.map +0 -1
  1789. package/devices/net2grid.d.ts +0 -3
  1790. package/devices/net2grid.d.ts.map +0 -1
  1791. package/devices/net2grid.js +0 -67
  1792. package/devices/netvox.d.ts +0 -3
  1793. package/devices/netvox.d.ts.map +0 -1
  1794. package/devices/netvox.js +0 -74
  1795. package/devices/nexelec.d.ts +0 -3
  1796. package/devices/nexelec.d.ts.map +0 -1
  1797. package/devices/nexelec.js +0 -47
  1798. package/devices/niko.d.ts +0 -3
  1799. package/devices/niko.d.ts.map +0 -1
  1800. package/devices/niko.js +0 -632
  1801. package/devices/niko.js.map +0 -1
  1802. package/devices/ninja_blocks.d.ts +0 -3
  1803. package/devices/ninja_blocks.d.ts.map +0 -1
  1804. package/devices/ninja_blocks.js +0 -63
  1805. package/devices/niviss.d.ts +0 -3
  1806. package/devices/niviss.d.ts.map +0 -1
  1807. package/devices/niviss.js +0 -47
  1808. package/devices/nodon.d.ts +0 -3
  1809. package/devices/nodon.d.ts.map +0 -1
  1810. package/devices/nodon.js +0 -386
  1811. package/devices/nordtronic.d.ts +0 -3
  1812. package/devices/nordtronic.d.ts.map +0 -1
  1813. package/devices/nordtronic.js +0 -73
  1814. package/devices/nous.d.ts +0 -3
  1815. package/devices/nous.d.ts.map +0 -1
  1816. package/devices/nous.js +0 -168
  1817. package/devices/novo.d.ts +0 -3
  1818. package/devices/novo.d.ts.map +0 -1
  1819. package/devices/novo.js +0 -57
  1820. package/devices/nue_3a.d.ts +0 -3
  1821. package/devices/nue_3a.d.ts.map +0 -1
  1822. package/devices/nue_3a.js +0 -360
  1823. package/devices/nue_3a.js.map +0 -1
  1824. package/devices/nyce.d.ts +0 -3
  1825. package/devices/nyce.d.ts.map +0 -1
  1826. package/devices/nyce.js +0 -133
  1827. package/devices/onenuo.d.ts +0 -3
  1828. package/devices/onenuo.d.ts.map +0 -1
  1829. package/devices/onenuo.js +0 -85
  1830. package/devices/onesti.d.ts +0 -3
  1831. package/devices/onesti.d.ts.map +0 -1
  1832. package/devices/onesti.js +0 -207
  1833. package/devices/onesti.js.map +0 -1
  1834. package/devices/openlumi.d.ts +0 -3
  1835. package/devices/openlumi.d.ts.map +0 -1
  1836. package/devices/openlumi.js +0 -61
  1837. package/devices/orvibo.d.ts +0 -12
  1838. package/devices/orvibo.d.ts.map +0 -1
  1839. package/devices/orvibo.js +0 -595
  1840. package/devices/orvibo.js.map +0 -1
  1841. package/devices/osram.d.ts +0 -3
  1842. package/devices/osram.d.ts.map +0 -1
  1843. package/devices/osram.js +0 -516
  1844. package/devices/oujiabao.d.ts +0 -3
  1845. package/devices/oujiabao.d.ts.map +0 -1
  1846. package/devices/oujiabao.js +0 -54
  1847. package/devices/owon.d.ts +0 -3
  1848. package/devices/owon.d.ts.map +0 -1
  1849. package/devices/owon.js +0 -476
  1850. package/devices/owon.js.map +0 -1
  1851. package/devices/ozsmartthings.d.ts +0 -3
  1852. package/devices/ozsmartthings.d.ts.map +0 -1
  1853. package/devices/ozsmartthings.js +0 -47
  1854. package/devices/paul_neuhaus.d.ts +0 -3
  1855. package/devices/paul_neuhaus.d.ts.map +0 -1
  1856. package/devices/paul_neuhaus.js +0 -193
  1857. package/devices/paulmann.d.ts +0 -3
  1858. package/devices/paulmann.d.ts.map +0 -1
  1859. package/devices/paulmann.js +0 -337
  1860. package/devices/peq.d.ts +0 -3
  1861. package/devices/peq.d.ts.map +0 -1
  1862. package/devices/peq.js +0 -63
  1863. package/devices/perenio.d.ts +0 -3
  1864. package/devices/perenio.d.ts.map +0 -1
  1865. package/devices/perenio.js +0 -467
  1866. package/devices/perenio.js.map +0 -1
  1867. package/devices/philio.d.ts +0 -3
  1868. package/devices/philio.d.ts.map +0 -1
  1869. package/devices/philio.js +0 -48
  1870. package/devices/philips.d.ts +0 -3
  1871. package/devices/philips.d.ts.map +0 -1
  1872. package/devices/philips.js +0 -4057
  1873. package/devices/philips.js.map +0 -1
  1874. package/devices/plaid.d.ts +0 -3
  1875. package/devices/plaid.d.ts.map +0 -1
  1876. package/devices/plaid.js +0 -64
  1877. package/devices/plugwise.d.ts +0 -3
  1878. package/devices/plugwise.d.ts.map +0 -1
  1879. package/devices/plugwise.js +0 -209
  1880. package/devices/plugwise.js.map +0 -1
  1881. package/devices/profalux.d.ts +0 -3
  1882. package/devices/profalux.d.ts.map +0 -1
  1883. package/devices/profalux.js +0 -190
  1884. package/devices/profalux.js.map +0 -1
  1885. package/devices/prolight.d.ts +0 -3
  1886. package/devices/prolight.d.ts.map +0 -1
  1887. package/devices/prolight.js +0 -114
  1888. package/devices/purmo.d.ts +0 -3
  1889. package/devices/purmo.d.ts.map +0 -1
  1890. package/devices/purmo.js +0 -94
  1891. package/devices/pushok.d.ts +0 -3
  1892. package/devices/pushok.d.ts.map +0 -1
  1893. package/devices/pushok.js +0 -375
  1894. package/devices/pushok.js.map +0 -1
  1895. package/devices/qa.d.ts +0 -3
  1896. package/devices/qa.d.ts.map +0 -1
  1897. package/devices/qa.js +0 -294
  1898. package/devices/qmotion.d.ts +0 -3
  1899. package/devices/qmotion.d.ts.map +0 -1
  1900. package/devices/qmotion.js +0 -72
  1901. package/devices/qoto.d.ts +0 -3
  1902. package/devices/qoto.d.ts.map +0 -1
  1903. package/devices/qoto.js +0 -86
  1904. package/devices/quotra.d.ts +0 -3
  1905. package/devices/quotra.d.ts.map +0 -1
  1906. package/devices/quotra.js +0 -54
  1907. package/devices/rademacher.d.ts +0 -3
  1908. package/devices/rademacher.d.ts.map +0 -1
  1909. package/devices/rademacher.js +0 -61
  1910. package/devices/radium.d.ts +0 -3
  1911. package/devices/radium.d.ts.map +0 -1
  1912. package/devices/radium.js +0 -47
  1913. package/devices/raex.d.ts +0 -3
  1914. package/devices/raex.d.ts.map +0 -1
  1915. package/devices/raex.js +0 -47
  1916. package/devices/rgb_genie.d.ts +0 -3
  1917. package/devices/rgb_genie.d.ts.map +0 -1
  1918. package/devices/rgb_genie.js +0 -278
  1919. package/devices/robb.d.ts +0 -3
  1920. package/devices/robb.d.ts.map +0 -1
  1921. package/devices/robb.js +0 -471
  1922. package/devices/roome.d.ts +0 -3
  1923. package/devices/roome.d.ts.map +0 -1
  1924. package/devices/roome.js +0 -54
  1925. package/devices/rtx.d.ts +0 -3
  1926. package/devices/rtx.d.ts.map +0 -1
  1927. package/devices/rtx.js +0 -146
  1928. package/devices/salus_controls.d.ts +0 -3
  1929. package/devices/salus_controls.d.ts.map +0 -1
  1930. package/devices/salus_controls.js +0 -224
  1931. package/devices/samotech.d.ts +0 -3
  1932. package/devices/samotech.d.ts.map +0 -1
  1933. package/devices/samotech.js +0 -107
  1934. package/devices/saswell.d.ts +0 -3
  1935. package/devices/saswell.d.ts.map +0 -1
  1936. package/devices/saswell.js +0 -126
  1937. package/devices/sber.d.ts +0 -3
  1938. package/devices/sber.d.ts.map +0 -1
  1939. package/devices/sber.js +0 -98
  1940. package/devices/scanproducts.d.ts +0 -3
  1941. package/devices/scanproducts.d.ts.map +0 -1
  1942. package/devices/scanproducts.js +0 -54
  1943. package/devices/schlage.d.ts +0 -3
  1944. package/devices/schlage.d.ts.map +0 -1
  1945. package/devices/schlage.js +0 -63
  1946. package/devices/schneider_electric.d.ts +0 -3
  1947. package/devices/schneider_electric.d.ts.map +0 -1
  1948. package/devices/schneider_electric.js +0 -2189
  1949. package/devices/schneider_electric.js.map +0 -1
  1950. package/devices/schwaiger.d.ts +0 -3
  1951. package/devices/schwaiger.d.ts.map +0 -1
  1952. package/devices/schwaiger.js +0 -108
  1953. package/devices/seastar_intelligence.d.ts +0 -3
  1954. package/devices/seastar_intelligence.d.ts.map +0 -1
  1955. package/devices/seastar_intelligence.js +0 -52
  1956. package/devices/securifi.d.ts +0 -3
  1957. package/devices/securifi.d.ts.map +0 -1
  1958. package/devices/securifi.js +0 -82
  1959. package/devices/sengled.d.ts +0 -6
  1960. package/devices/sengled.d.ts.map +0 -1
  1961. package/devices/sengled.js +0 -390
  1962. package/devices/sengled.js.map +0 -1
  1963. package/devices/sercomm.d.ts +0 -3
  1964. package/devices/sercomm.d.ts.map +0 -1
  1965. package/devices/sercomm.js +0 -189
  1966. package/devices/shade_control.d.ts +0 -3
  1967. package/devices/shade_control.d.ts.map +0 -1
  1968. package/devices/shade_control.js +0 -64
  1969. package/devices/shenzhen_homa.d.ts +0 -3
  1970. package/devices/shenzhen_homa.d.ts.map +0 -1
  1971. package/devices/shenzhen_homa.js +0 -143
  1972. package/devices/shinasystem.d.ts +0 -3
  1973. package/devices/shinasystem.d.ts.map +0 -1
  1974. package/devices/shinasystem.js +0 -960
  1975. package/devices/shinasystem.js.map +0 -1
  1976. package/devices/shyugj.d.ts +0 -3
  1977. package/devices/shyugj.d.ts.map +0 -1
  1978. package/devices/shyugj.js +0 -53
  1979. package/devices/siglis.d.ts +0 -3
  1980. package/devices/siglis.d.ts.map +0 -1
  1981. package/devices/siglis.js +0 -454
  1982. package/devices/siglis.js.map +0 -1
  1983. package/devices/sikom.d.ts +0 -3
  1984. package/devices/sikom.d.ts.map +0 -1
  1985. package/devices/sikom.js +0 -67
  1986. package/devices/simon.d.ts +0 -3
  1987. package/devices/simon.d.ts.map +0 -1
  1988. package/devices/simon.js +0 -14
  1989. package/devices/sinope.d.ts +0 -3
  1990. package/devices/sinope.d.ts.map +0 -1
  1991. package/devices/sinope.js +0 -1754
  1992. package/devices/sinope.js.map +0 -1
  1993. package/devices/siterwell.d.ts +0 -3
  1994. package/devices/siterwell.d.ts.map +0 -1
  1995. package/devices/siterwell.js +0 -110
  1996. package/devices/skydance.d.ts +0 -3
  1997. package/devices/skydance.d.ts.map +0 -1
  1998. package/devices/skydance.js +0 -138
  1999. package/devices/slv.d.ts +0 -3
  2000. package/devices/slv.d.ts.map +0 -1
  2001. package/devices/slv.js +0 -70
  2002. package/devices/smart9.d.ts +0 -3
  2003. package/devices/smart9.d.ts.map +0 -1
  2004. package/devices/smart9.js +0 -66
  2005. package/devices/smart_home_pty.d.ts +0 -3
  2006. package/devices/smart_home_pty.d.ts.map +0 -1
  2007. package/devices/smart_home_pty.js +0 -54
  2008. package/devices/smartenit.d.ts +0 -3
  2009. package/devices/smartenit.d.ts.map +0 -1
  2010. package/devices/smartenit.js +0 -80
  2011. package/devices/smartthings.d.ts +0 -3
  2012. package/devices/smartthings.d.ts.map +0 -1
  2013. package/devices/smartthings.js +0 -526
  2014. package/devices/smartthings.js.map +0 -1
  2015. package/devices/smartwings.d.ts +0 -3
  2016. package/devices/smartwings.d.ts.map +0 -1
  2017. package/devices/smartwings.js +0 -63
  2018. package/devices/smlight.d.ts +0 -3
  2019. package/devices/smlight.d.ts.map +0 -1
  2020. package/devices/smlight.js +0 -56
  2021. package/devices/sohan_electric.d.ts +0 -3
  2022. package/devices/sohan_electric.d.ts.map +0 -1
  2023. package/devices/sohan_electric.js +0 -53
  2024. package/devices/solaredge.d.ts +0 -3
  2025. package/devices/solaredge.d.ts.map +0 -1
  2026. package/devices/solaredge.js +0 -47
  2027. package/devices/soma.d.ts +0 -3
  2028. package/devices/soma.d.ts.map +0 -1
  2029. package/devices/soma.js +0 -47
  2030. package/devices/somfy.d.ts +0 -3
  2031. package/devices/somfy.d.ts.map +0 -1
  2032. package/devices/somfy.js +0 -101
  2033. package/devices/somgoms.d.ts +0 -3
  2034. package/devices/somgoms.d.ts.map +0 -1
  2035. package/devices/somgoms.js +0 -84
  2036. package/devices/sonoff.d.ts +0 -3
  2037. package/devices/sonoff.d.ts.map +0 -1
  2038. package/devices/sonoff.js +0 -1583
  2039. package/devices/sonoff.js.map +0 -1
  2040. package/devices/sowilo.d.ts +0 -3
  2041. package/devices/sowilo.d.ts.map +0 -1
  2042. package/devices/sowilo.js +0 -47
  2043. package/devices/spotmau.d.ts +0 -3
  2044. package/devices/spotmau.d.ts.map +0 -1
  2045. package/devices/spotmau.js +0 -74
  2046. package/devices/stelpro.d.ts +0 -3
  2047. package/devices/stelpro.d.ts.map +0 -1
  2048. package/devices/stelpro.js +0 -365
  2049. package/devices/stelpro.js.map +0 -1
  2050. package/devices/sunricher.d.ts +0 -3
  2051. package/devices/sunricher.d.ts.map +0 -1
  2052. package/devices/sunricher.js +0 -2169
  2053. package/devices/sunricher.js.map +0 -1
  2054. package/devices/swann.d.ts +0 -3
  2055. package/devices/swann.d.ts.map +0 -1
  2056. package/devices/swann.js +0 -72
  2057. package/devices/sylvania.d.ts +0 -3
  2058. package/devices/sylvania.d.ts.map +0 -1
  2059. package/devices/sylvania.js +0 -226
  2060. package/devices/tapestry.d.ts +0 -3
  2061. package/devices/tapestry.d.ts.map +0 -1
  2062. package/devices/tapestry.js +0 -55
  2063. package/devices/tci.d.ts +0 -3
  2064. package/devices/tci.d.ts.map +0 -1
  2065. package/devices/tci.js +0 -61
  2066. package/devices/tech.d.ts +0 -3
  2067. package/devices/tech.d.ts.map +0 -1
  2068. package/devices/tech.js +0 -217
  2069. package/devices/tech.js.map +0 -1
  2070. package/devices/technicolor.d.ts +0 -3
  2071. package/devices/technicolor.d.ts.map +0 -1
  2072. package/devices/technicolor.js +0 -101
  2073. package/devices/terncy.d.ts +0 -3
  2074. package/devices/terncy.d.ts.map +0 -1
  2075. package/devices/terncy.js +0 -116
  2076. package/devices/the_light_group.d.ts +0 -3
  2077. package/devices/the_light_group.d.ts.map +0 -1
  2078. package/devices/the_light_group.js +0 -129
  2079. package/devices/third_reality.d.ts +0 -3
  2080. package/devices/third_reality.d.ts.map +0 -1
  2081. package/devices/third_reality.js +0 -609
  2082. package/devices/third_reality.js.map +0 -1
  2083. package/devices/titan_products.d.ts +0 -3
  2084. package/devices/titan_products.d.ts.map +0 -1
  2085. package/devices/titan_products.js +0 -61
  2086. package/devices/tlwglobal.d.ts +0 -3
  2087. package/devices/tlwglobal.d.ts.map +0 -1
  2088. package/devices/tlwglobal.js +0 -64
  2089. package/devices/tplink.d.ts +0 -3
  2090. package/devices/tplink.d.ts.map +0 -1
  2091. package/devices/tplink.js +0 -80
  2092. package/devices/trust.d.ts +0 -3
  2093. package/devices/trust.d.ts.map +0 -1
  2094. package/devices/trust.js +0 -182
  2095. package/devices/tubeszb.d.ts +0 -3
  2096. package/devices/tubeszb.d.ts.map +0 -1
  2097. package/devices/tubeszb.js +0 -59
  2098. package/devices/tuya.d.ts +0 -3
  2099. package/devices/tuya.d.ts.map +0 -1
  2100. package/devices/tuya.js +0 -14328
  2101. package/devices/tuya.js.map +0 -1
  2102. package/devices/ubisys.d.ts +0 -3
  2103. package/devices/ubisys.d.ts.map +0 -1
  2104. package/devices/ubisys.js +0 -1313
  2105. package/devices/ubisys.js.map +0 -1
  2106. package/devices/uhome.d.ts +0 -3
  2107. package/devices/uhome.d.ts.map +0 -1
  2108. package/devices/uhome.js +0 -63
  2109. package/devices/universal_electronics_inc.d.ts +0 -3
  2110. package/devices/universal_electronics_inc.d.ts.map +0 -1
  2111. package/devices/universal_electronics_inc.js +0 -185
  2112. package/devices/vbled.d.ts +0 -3
  2113. package/devices/vbled.d.ts.map +0 -1
  2114. package/devices/vbled.js +0 -47
  2115. package/devices/vesternet.d.ts +0 -3
  2116. package/devices/vesternet.d.ts.map +0 -1
  2117. package/devices/vesternet.js +0 -329
  2118. package/devices/vesternet.js.map +0 -1
  2119. package/devices/viessmann.d.ts +0 -3
  2120. package/devices/viessmann.d.ts.map +0 -1
  2121. package/devices/viessmann.js +0 -123
  2122. package/devices/villeroy_boch.d.ts +0 -3
  2123. package/devices/villeroy_boch.d.ts.map +0 -1
  2124. package/devices/villeroy_boch.js +0 -54
  2125. package/devices/vimar.d.ts +0 -3
  2126. package/devices/vimar.d.ts.map +0 -1
  2127. package/devices/vimar.js +0 -136
  2128. package/devices/visonic.d.ts +0 -3
  2129. package/devices/visonic.d.ts.map +0 -1
  2130. package/devices/visonic.js +0 -137
  2131. package/devices/vrey.d.ts +0 -3
  2132. package/devices/vrey.d.ts.map +0 -1
  2133. package/devices/vrey.js +0 -48
  2134. package/devices/wally.d.ts +0 -3
  2135. package/devices/wally.d.ts.map +0 -1
  2136. package/devices/wally.js +0 -63
  2137. package/devices/waxman.d.ts +0 -3
  2138. package/devices/waxman.d.ts.map +0 -1
  2139. package/devices/waxman.js +0 -84
  2140. package/devices/weiser.d.ts +0 -3
  2141. package/devices/weiser.d.ts.map +0 -1
  2142. package/devices/weiser.js +0 -102
  2143. package/devices/weiser.js.map +0 -1
  2144. package/devices/weten.d.ts +0 -3
  2145. package/devices/weten.d.ts.map +0 -1
  2146. package/devices/weten.js +0 -88
  2147. package/devices/wirenboard.d.ts +0 -3
  2148. package/devices/wirenboard.d.ts.map +0 -1
  2149. package/devices/wirenboard.js +0 -666
  2150. package/devices/wirenboard.js.map +0 -1
  2151. package/devices/wisdom.d.ts +0 -3
  2152. package/devices/wisdom.d.ts.map +0 -1
  2153. package/devices/wisdom.js +0 -47
  2154. package/devices/woolley.d.ts +0 -3
  2155. package/devices/woolley.d.ts.map +0 -1
  2156. package/devices/woolley.js +0 -87
  2157. package/devices/woox.d.ts +0 -3
  2158. package/devices/woox.d.ts.map +0 -1
  2159. package/devices/woox.js +0 -132
  2160. package/devices/wyze.d.ts +0 -3
  2161. package/devices/wyze.d.ts.map +0 -1
  2162. package/devices/wyze.js +0 -62
  2163. package/devices/xal.d.ts +0 -3
  2164. package/devices/xal.d.ts.map +0 -1
  2165. package/devices/xal.js +0 -61
  2166. package/devices/xinghuoyuan.d.ts +0 -3
  2167. package/devices/xinghuoyuan.d.ts.map +0 -1
  2168. package/devices/xinghuoyuan.js +0 -47
  2169. package/devices/xyzroe.d.ts +0 -3
  2170. package/devices/xyzroe.d.ts.map +0 -1
  2171. package/devices/xyzroe.js +0 -518
  2172. package/devices/xyzroe.js.map +0 -1
  2173. package/devices/yale.d.ts +0 -3
  2174. package/devices/yale.d.ts.map +0 -1
  2175. package/devices/yale.js +0 -502
  2176. package/devices/yale.js.map +0 -1
  2177. package/devices/yandex.d.ts +0 -3
  2178. package/devices/yandex.d.ts.map +0 -1
  2179. package/devices/yandex.js +0 -442
  2180. package/devices/yandex.js.map +0 -1
  2181. package/devices/ynoa.d.ts +0 -3
  2182. package/devices/ynoa.d.ts.map +0 -1
  2183. package/devices/ynoa.js +0 -112
  2184. package/devices/yokis.d.ts +0 -3
  2185. package/devices/yokis.d.ts.map +0 -1
  2186. package/devices/yokis.js +0 -2532
  2187. package/devices/yokis.js.map +0 -1
  2188. package/devices/yookee.d.ts +0 -3
  2189. package/devices/yookee.d.ts.map +0 -1
  2190. package/devices/yookee.js +0 -62
  2191. package/devices/ysrsai.d.ts +0 -3
  2192. package/devices/ysrsai.d.ts.map +0 -1
  2193. package/devices/ysrsai.js +0 -65
  2194. package/devices/zemismart.d.ts +0 -3
  2195. package/devices/zemismart.d.ts.map +0 -1
  2196. package/devices/zemismart.js +0 -391
  2197. package/devices/zen.d.ts +0 -3
  2198. package/devices/zen.d.ts.map +0 -1
  2199. package/devices/zen.js +0 -95
  2200. package/devices/zigbeetlc.js +0 -235
  2201. package/devices/zipato.d.ts +0 -3
  2202. package/devices/zipato.d.ts.map +0 -1
  2203. package/devices/zipato.js +0 -47
  2204. package/index.d.ts +0 -20
  2205. package/index.d.ts.map +0 -1
  2206. package/index.js +0 -526
  2207. package/index.js.map +0 -1
  2208. package/lib/color.d.ts +0 -271
  2209. package/lib/color.d.ts.map +0 -1
  2210. package/lib/color.js +0 -761
  2211. package/lib/color.js.map +0 -1
  2212. package/lib/configureKey.d.ts +0 -3
  2213. package/lib/configureKey.d.ts.map +0 -1
  2214. package/lib/configureKey.js +0 -938
  2215. package/lib/configureKey.js.map +0 -1
  2216. package/lib/constants.d.ts +0 -68
  2217. package/lib/constants.d.ts.map +0 -1
  2218. package/lib/constants.js +0 -264
  2219. package/lib/constants.js.map +0 -1
  2220. package/lib/develco.d.ts +0 -15
  2221. package/lib/develco.d.ts.map +0 -1
  2222. package/lib/develco.js +0 -183
  2223. package/lib/develco.js.map +0 -1
  2224. package/lib/ewelink.d.ts +0 -30
  2225. package/lib/ewelink.d.ts.map +0 -1
  2226. package/lib/ewelink.js +0 -718
  2227. package/lib/ewelink.js.map +0 -1
  2228. package/lib/exposes.d.ts +0 -360
  2229. package/lib/exposes.d.ts.map +0 -1
  2230. package/lib/exposes.js +0 -1085
  2231. package/lib/exposes.js.map +0 -1
  2232. package/lib/generateDefinition.d.ts +0 -6
  2233. package/lib/generateDefinition.d.ts.map +0 -1
  2234. package/lib/generateDefinition.js +0 -345
  2235. package/lib/generateDefinition.js.map +0 -1
  2236. package/lib/ikea.d.ts +0 -39
  2237. package/lib/ikea.d.ts.map +0 -1
  2238. package/lib/ikea.js +0 -787
  2239. package/lib/ikea.js.map +0 -1
  2240. package/lib/kelvinToXy.js +0 -1913
  2241. package/lib/kelvinToXy.js.map +0 -1
  2242. package/lib/ledvance.d.ts +0 -20
  2243. package/lib/ledvance.d.ts.map +0 -1
  2244. package/lib/ledvance.js +0 -103
  2245. package/lib/ledvance.js.map +0 -1
  2246. package/lib/legacy.d.ts +0 -5054
  2247. package/lib/legacy.d.ts.map +0 -1
  2248. package/lib/legacy.js +0 -6540
  2249. package/lib/legacy.js.map +0 -1
  2250. package/lib/legrand.d.ts +0 -69
  2251. package/lib/legrand.d.ts.map +0 -1
  2252. package/lib/legrand.js +0 -282
  2253. package/lib/legrand.js.map +0 -1
  2254. package/lib/light.d.ts +0 -8
  2255. package/lib/light.d.ts.map +0 -1
  2256. package/lib/light.js +0 -142
  2257. package/lib/light.js.map +0 -1
  2258. package/lib/logger.d.ts +0 -4
  2259. package/lib/logger.d.ts.map +0 -1
  2260. package/lib/logger.js +0 -14
  2261. package/lib/lumi.d.ts +0 -962
  2262. package/lib/lumi.d.ts.map +0 -1
  2263. package/lib/lumi.js +0 -5027
  2264. package/lib/lumi.js.map +0 -1
  2265. package/lib/modernExtend.d.ts +0 -325
  2266. package/lib/modernExtend.d.ts.map +0 -1
  2267. package/lib/modernExtend.js +0 -2015
  2268. package/lib/modernExtend.js.map +0 -1
  2269. package/lib/namron.d.ts +0 -56
  2270. package/lib/namron.d.ts.map +0 -1
  2271. package/lib/namron.js +0 -434
  2272. package/lib/namron.js.map +0 -1
  2273. package/lib/nodon.d.ts +0 -3
  2274. package/lib/nodon.d.ts.map +0 -1
  2275. package/lib/nodon.js +0 -130
  2276. package/lib/nodon.js.map +0 -1
  2277. package/lib/ota.d.ts +0 -71
  2278. package/lib/ota.d.ts.map +0 -1
  2279. package/lib/ota.js +0 -663
  2280. package/lib/ota.js.map +0 -1
  2281. package/lib/philips.d.ts +0 -249
  2282. package/lib/philips.d.ts.map +0 -1
  2283. package/lib/philips.js +0 -656
  2284. package/lib/philips.js.map +0 -1
  2285. package/lib/reporting.d.ts +0 -58
  2286. package/lib/reporting.d.ts.map +0 -1
  2287. package/lib/reporting.js +0 -285
  2288. package/lib/store.d.ts +0 -7
  2289. package/lib/store.d.ts.map +0 -1
  2290. package/lib/store.js +0 -51
  2291. package/lib/store.js.map +0 -1
  2292. package/lib/sunricher.d.ts +0 -13
  2293. package/lib/sunricher.d.ts.map +0 -1
  2294. package/lib/sunricher.js +0 -14
  2295. package/lib/tuya.d.ts +0 -786
  2296. package/lib/tuya.d.ts.map +0 -1
  2297. package/lib/tuya.js +0 -2415
  2298. package/lib/tuya.js.map +0 -1
  2299. package/lib/types.d.ts +0 -439
  2300. package/lib/types.d.ts.map +0 -1
  2301. package/lib/ubisys.d.ts +0 -19
  2302. package/lib/ubisys.d.ts.map +0 -1
  2303. package/lib/ubisys.js +0 -293
  2304. package/lib/ubisys.js.map +0 -1
  2305. package/lib/utils.d.ts +0 -93
  2306. package/lib/utils.d.ts.map +0 -1
  2307. package/lib/utils.js +0 -754
  2308. package/lib/utils.js.map +0 -1
  2309. package/lib/zosung.d.ts +0 -52
  2310. package/lib/zosung.d.ts.map +0 -1
  2311. package/lib/zosung.js +0 -253
  2312. package/lib/zosung.js.map +0 -1
  2313. package/models-index.json +0 -1
  2314. /package/{devices → dist/devices}/ITCommander.js.map +0 -0
  2315. /package/{devices → dist/devices}/acova.js.map +0 -0
  2316. /package/{devices → dist/devices}/acuity_brands_lighting.js.map +0 -0
  2317. /package/{devices → dist/devices}/adurosmart.js.map +0 -0
  2318. /package/{devices → dist/devices}/aeotec.js.map +0 -0
  2319. /package/{devices → dist/devices}/airam.js.map +0 -0
  2320. /package/{devices → dist/devices}/airzone_aidoo.js.map +0 -0
  2321. /package/{devices → dist/devices}/ajax_online.js.map +0 -0
  2322. /package/{devices → dist/devices}/akuvox.js.map +0 -0
  2323. /package/{devices → dist/devices}/alchemy.js.map +0 -0
  2324. /package/{devices → dist/devices}/aldi.js.map +0 -0
  2325. /package/{devices → dist/devices}/alecto.js.map +0 -0
  2326. /package/{devices → dist/devices}/anchor.js.map +0 -0
  2327. /package/{devices → dist/devices}/atsmart.js.map +0 -0
  2328. /package/{devices → dist/devices}/aubess.js.map +0 -0
  2329. /package/{devices → dist/devices}/aurora_lighting.js.map +0 -0
  2330. /package/{devices → dist/devices}/automaton.js.map +0 -0
  2331. /package/{devices → dist/devices}/awox.js.map +0 -0
  2332. /package/{devices → dist/devices}/axis.js.map +0 -0
  2333. /package/{devices → dist/devices}/bankamp.js.map +0 -0
  2334. /package/{devices → dist/devices}/bega.js.map +0 -0
  2335. /package/{devices → dist/devices}/belkin.js.map +0 -0
  2336. /package/{devices → dist/devices}/bituo_technik.js.map +0 -0
  2337. /package/{devices → dist/devices}/blaupunkt.js.map +0 -0
  2338. /package/{devices → dist/devices}/blitzwolf.js.map +0 -0
  2339. /package/{devices → dist/devices}/bouffalo_lab.js.map +0 -0
  2340. /package/{devices → dist/devices}/brimate.js.map +0 -0
  2341. /package/{devices → dist/devices}/bseed.js.map +0 -0
  2342. /package/{devices → dist/devices}/bticino.js.map +0 -0
  2343. /package/{devices → dist/devices}/byun.js.map +0 -0
  2344. /package/{devices → dist/devices}/calex.js.map +0 -0
  2345. /package/{devices → dist/devices}/candeo.js.map +0 -0
  2346. /package/{devices → dist/devices}/casaia.js.map +0 -0
  2347. /package/{devices → dist/devices}/cel.js.map +0 -0
  2348. /package/{devices → dist/devices}/chacon.js.map +0 -0
  2349. /package/{devices → dist/devices}/cleode.js.map +0 -0
  2350. /package/{devices → dist/devices}/cleverio.js.map +0 -0
  2351. /package/{devices → dist/devices}/climax.js.map +0 -0
  2352. /package/{devices → dist/devices}/commercial_electric.js.map +0 -0
  2353. /package/{devices → dist/devices}/cree.js.map +0 -0
  2354. /package/{devices → dist/devices}/current_products_corp.js.map +0 -0
  2355. /package/{devices → dist/devices}/cy_lighting.js.map +0 -0
  2356. /package/{devices → dist/devices}/danalock.js.map +0 -0
  2357. /package/{devices → dist/devices}/databyte.js.map +0 -0
  2358. /package/{devices → dist/devices}/dawon_dns.js.map +0 -0
  2359. /package/{devices → dist/devices}/digi.js.map +0 -0
  2360. /package/{devices → dist/devices}/direct_signs.js.map +0 -0
  2361. /package/{devices → dist/devices}/diyruz.js.map +0 -0
  2362. /package/{devices → dist/devices}/dlink.js.map +0 -0
  2363. /package/{devices → dist/devices}/dnake.js.map +0 -0
  2364. /package/{devices → dist/devices}/dowsing_reynolds.js.map +0 -0
  2365. /package/{devices → dist/devices}/dresden_elektronik.js.map +0 -0
  2366. /package/{devices → dist/devices}/easyaccess.js.map +0 -0
  2367. /package/{devices → dist/devices}/eatonhalo_led.js.map +0 -0
  2368. /package/{devices → dist/devices}/echostar.js.map +0 -0
  2369. /package/{devices → dist/devices}/ecodim.js.map +0 -0
  2370. /package/{devices → dist/devices}/ecolink.js.map +0 -0
  2371. /package/{devices → dist/devices}/ecosmart.js.map +0 -0
  2372. /package/{devices → dist/devices}/ecozy.js.map +0 -0
  2373. /package/{devices → dist/devices}/edp.js.map +0 -0
  2374. /package/{devices → dist/devices}/efekta.js.map +0 -0
  2375. /package/{devices → dist/devices}/eglo.js.map +0 -0
  2376. /package/{devices → dist/devices}/elko.js.map +0 -0
  2377. /package/{devices → dist/devices}/enbrighten.js.map +0 -0
  2378. /package/{devices → dist/devices}/enocean.js.map +0 -0
  2379. /package/{devices → dist/devices}/envilar.js.map +0 -0
  2380. /package/{devices → dist/devices}/essentialb.js.map +0 -0
  2381. /package/{devices → dist/devices}/essentials.js.map +0 -0
  2382. /package/{devices → dist/devices}/eucontrols.js.map +0 -0
  2383. /package/{devices → dist/devices}/eurotronic.js.map +0 -0
  2384. /package/{devices → dist/devices}/evanell.js.map +0 -0
  2385. /package/{devices → dist/devices}/evn.js.map +0 -0
  2386. /package/{devices → dist/devices}/evology.js.map +0 -0
  2387. /package/{devices → dist/devices}/evvr.js.map +0 -0
  2388. /package/{devices → dist/devices}/ezex.js.map +0 -0
  2389. /package/{devices → dist/devices}/fireangel.js.map +0 -0
  2390. /package/{devices → dist/devices}/frankever.js.map +0 -0
  2391. /package/{devices → dist/devices}/frient.js.map +0 -0
  2392. /package/{devices → dist/devices}/futurehome.js.map +0 -0
  2393. /package/{devices → dist/devices}/ge.js.map +0 -0
  2394. /package/{devices → dist/devices}/gewiss.js.map +0 -0
  2395. /package/{devices → dist/devices}/gidealed.js.map +0 -0
  2396. /package/{devices → dist/devices}/giderwel.js.map +0 -0
  2397. /package/{devices → dist/devices}/giex.js.map +0 -0
  2398. /package/{devices → dist/devices}/girier.js.map +0 -0
  2399. /package/{devices → dist/devices}/gmy.js.map +0 -0
  2400. /package/{devices → dist/devices}/gs.js.map +0 -0
  2401. /package/{devices → dist/devices}/gumax.js.map +0 -0
  2402. /package/{devices → dist/devices}/halemeier.js.map +0 -0
  2403. /package/{devices → dist/devices}/hampton_bay.js.map +0 -0
  2404. /package/{devices → dist/devices}/heatit.js.map +0 -0
  2405. /package/{devices → dist/devices}/heiman.js.map +0 -0
  2406. /package/{devices → dist/devices}/heimgard_technologies.js.map +0 -0
  2407. /package/{devices → dist/devices}/hej.js.map +0 -0
  2408. /package/{devices → dist/devices}/hfh.js.map +0 -0
  2409. /package/{devices → dist/devices}/hilux.js.map +0 -0
  2410. /package/{devices → dist/devices}/hive.js.map +0 -0
  2411. /package/{devices → dist/devices}/hommyn.js.map +0 -0
  2412. /package/{devices → dist/devices}/honyar.js.map +0 -0
  2413. /package/{devices → dist/devices}/hornbach.js.map +0 -0
  2414. /package/{devices → dist/devices}/hzc_electric.js.map +0 -0
  2415. /package/{devices → dist/devices}/icasa.js.map +0 -0
  2416. /package/{devices → dist/devices}/idinio.js.map +0 -0
  2417. /package/{devices → dist/devices}/ihorn.js.map +0 -0
  2418. /package/{devices → dist/devices}/ikea.js.map +0 -0
  2419. /package/{devices → dist/devices}/ilightsin.js.map +0 -0
  2420. /package/{devices → dist/devices}/iluminize.js.map +0 -0
  2421. /package/{devices → dist/devices}/ilux.js.map +0 -0
  2422. /package/{devices → dist/devices}/imhotepcreation.js.map +0 -0
  2423. /package/{devices → dist/devices}/immax.js.map +0 -0
  2424. /package/{devices → dist/devices}/imou.js.map +0 -0
  2425. /package/{devices → dist/devices}/index.d.ts +0 -0
  2426. /package/{devices → dist/devices}/index.d.ts.map +0 -0
  2427. /package/{devices → dist/devices}/innr.js.map +0 -0
  2428. /package/{devices → dist/devices}/insta.js.map +0 -0
  2429. /package/{devices → dist/devices}/iolloi.js.map +0 -0
  2430. /package/{devices → dist/devices}/iotperfect.js.map +0 -0
  2431. /package/{devices → dist/devices}/iris.js.map +0 -0
  2432. /package/{devices → dist/devices}/istar.js.map +0 -0
  2433. /package/{devices → dist/devices}/jasco.js.map +0 -0
  2434. /package/{devices → dist/devices}/javis.js.map +0 -0
  2435. /package/{devices → dist/devices}/jiawen.js.map +0 -0
  2436. /package/{devices → dist/devices}/jumitech.js.map +0 -0
  2437. /package/{devices → dist/devices}/jxuan.js.map +0 -0
  2438. /package/{devices → dist/devices}/kami.js.map +0 -0
  2439. /package/{devices → dist/devices}/keen_home.js.map +0 -0
  2440. /package/{devices → dist/devices}/klikaanklikuit.js.map +0 -0
  2441. /package/{devices → dist/devices}/konke.js.map +0 -0
  2442. /package/{devices → dist/devices}/ksentry.js.map +0 -0
  2443. /package/{devices → dist/devices}/kurvia.js.map +0 -0
  2444. /package/{devices → dist/devices}/kwikset.js.map +0 -0
  2445. /package/{devices → dist/devices}/lanesto.js.map +0 -0
  2446. /package/{devices → dist/devices}/lds.js.map +0 -0
  2447. /package/{devices → dist/devices}/ledvance.js.map +0 -0
  2448. /package/{devices → dist/devices}/leedarson.js.map +0 -0
  2449. /package/{devices → dist/devices}/legrand.js.map +0 -0
  2450. /package/{devices → dist/devices}/lellki.js.map +0 -0
  2451. /package/{devices → dist/devices}/letsled.js.map +0 -0
  2452. /package/{devices → dist/devices}/letv.js.map +0 -0
  2453. /package/{devices → dist/devices}/lg.js.map +0 -0
  2454. /package/{devices → dist/devices}/lightsolutions.js.map +0 -0
  2455. /package/{devices → dist/devices}/linkind.js.map +0 -0
  2456. /package/{devices → dist/devices}/livingwise.js.map +0 -0
  2457. /package/{devices → dist/devices}/lonsonho.js.map +0 -0
  2458. /package/{devices → dist/devices}/ls.js.map +0 -0
  2459. /package/{devices → dist/devices}/lubeez.js.map +0 -0
  2460. /package/{devices → dist/devices}/lupus.js.map +0 -0
  2461. /package/{devices → dist/devices}/lutron.js.map +0 -0
  2462. /package/{devices → dist/devices}/lux.js.map +0 -0
  2463. /package/{devices → dist/devices}/m_elec.js.map +0 -0
  2464. /package/{devices → dist/devices}/makegood.js.map +0 -0
  2465. /package/{devices → dist/devices}/matcall_bv.js.map +0 -0
  2466. /package/{devices → dist/devices}/mercator.js.map +0 -0
  2467. /package/{devices → dist/devices}/miboxer.js.map +0 -0
  2468. /package/{devices → dist/devices}/micromatic.js.map +0 -0
  2469. /package/{devices → dist/devices}/modular.js.map +0 -0
  2470. /package/{devices → dist/devices}/moes.js.map +0 -0
  2471. /package/{devices → dist/devices}/muller_licht.js.map +0 -0
  2472. /package/{devices → dist/devices}/nanoleaf.js.map +0 -0
  2473. /package/{devices → dist/devices}/nedis.js.map +0 -0
  2474. /package/{devices → dist/devices}/net2grid.js.map +0 -0
  2475. /package/{devices → dist/devices}/netvox.js.map +0 -0
  2476. /package/{devices → dist/devices}/nexelec.js.map +0 -0
  2477. /package/{devices → dist/devices}/ninja_blocks.js.map +0 -0
  2478. /package/{devices → dist/devices}/niviss.js.map +0 -0
  2479. /package/{devices → dist/devices}/nodon.js.map +0 -0
  2480. /package/{devices → dist/devices}/nordtronic.js.map +0 -0
  2481. /package/{devices → dist/devices}/nous.js.map +0 -0
  2482. /package/{devices → dist/devices}/novo.js.map +0 -0
  2483. /package/{devices → dist/devices}/nyce.js.map +0 -0
  2484. /package/{devices → dist/devices}/onenuo.js.map +0 -0
  2485. /package/{devices → dist/devices}/openlumi.js.map +0 -0
  2486. /package/{devices → dist/devices}/osram.js.map +0 -0
  2487. /package/{devices → dist/devices}/oujiabao.js.map +0 -0
  2488. /package/{devices → dist/devices}/ozsmartthings.js.map +0 -0
  2489. /package/{devices → dist/devices}/paul_neuhaus.js.map +0 -0
  2490. /package/{devices → dist/devices}/paulmann.js.map +0 -0
  2491. /package/{devices → dist/devices}/peq.js.map +0 -0
  2492. /package/{devices → dist/devices}/philio.js.map +0 -0
  2493. /package/{devices → dist/devices}/plaid.js.map +0 -0
  2494. /package/{devices → dist/devices}/prolight.js.map +0 -0
  2495. /package/{devices → dist/devices}/purmo.js.map +0 -0
  2496. /package/{devices → dist/devices}/qa.js.map +0 -0
  2497. /package/{devices → dist/devices}/qmotion.js.map +0 -0
  2498. /package/{devices → dist/devices}/qoto.js.map +0 -0
  2499. /package/{devices → dist/devices}/quotra.js.map +0 -0
  2500. /package/{devices → dist/devices}/rademacher.js.map +0 -0
  2501. /package/{devices → dist/devices}/radium.js.map +0 -0
  2502. /package/{devices → dist/devices}/raex.js.map +0 -0
  2503. /package/{devices → dist/devices}/rgb_genie.js.map +0 -0
  2504. /package/{devices → dist/devices}/robb.js.map +0 -0
  2505. /package/{devices → dist/devices}/roome.js.map +0 -0
  2506. /package/{devices → dist/devices}/rtx.js.map +0 -0
  2507. /package/{devices → dist/devices}/salus_controls.js.map +0 -0
  2508. /package/{devices → dist/devices}/samotech.js.map +0 -0
  2509. /package/{devices → dist/devices}/saswell.js.map +0 -0
  2510. /package/{devices → dist/devices}/sber.js.map +0 -0
  2511. /package/{devices → dist/devices}/scanproducts.js.map +0 -0
  2512. /package/{devices → dist/devices}/schlage.js.map +0 -0
  2513. /package/{devices → dist/devices}/schwaiger.js.map +0 -0
  2514. /package/{devices → dist/devices}/seastar_intelligence.js.map +0 -0
  2515. /package/{devices → dist/devices}/securifi.js.map +0 -0
  2516. /package/{devices → dist/devices}/sercomm.js.map +0 -0
  2517. /package/{devices → dist/devices}/shade_control.js.map +0 -0
  2518. /package/{devices → dist/devices}/shenzhen_homa.js.map +0 -0
  2519. /package/{devices → dist/devices}/shyugj.js.map +0 -0
  2520. /package/{devices → dist/devices}/sikom.js.map +0 -0
  2521. /package/{devices → dist/devices}/simon.js.map +0 -0
  2522. /package/{devices → dist/devices}/siterwell.js.map +0 -0
  2523. /package/{devices → dist/devices}/skydance.js.map +0 -0
  2524. /package/{devices → dist/devices}/slv.js.map +0 -0
  2525. /package/{devices → dist/devices}/smart9.js.map +0 -0
  2526. /package/{devices → dist/devices}/smart_home_pty.js.map +0 -0
  2527. /package/{devices → dist/devices}/smartenit.js.map +0 -0
  2528. /package/{devices → dist/devices}/smartwings.js.map +0 -0
  2529. /package/{devices → dist/devices}/smlight.js.map +0 -0
  2530. /package/{devices → dist/devices}/sohan_electric.js.map +0 -0
  2531. /package/{devices → dist/devices}/solaredge.js.map +0 -0
  2532. /package/{devices → dist/devices}/soma.js.map +0 -0
  2533. /package/{devices → dist/devices}/somfy.js.map +0 -0
  2534. /package/{devices → dist/devices}/somgoms.js.map +0 -0
  2535. /package/{devices → dist/devices}/sowilo.js.map +0 -0
  2536. /package/{devices → dist/devices}/spotmau.js.map +0 -0
  2537. /package/{devices → dist/devices}/swann.js.map +0 -0
  2538. /package/{devices → dist/devices}/sylvania.js.map +0 -0
  2539. /package/{devices → dist/devices}/tapestry.js.map +0 -0
  2540. /package/{devices → dist/devices}/tci.js.map +0 -0
  2541. /package/{devices → dist/devices}/technicolor.js.map +0 -0
  2542. /package/{devices → dist/devices}/terncy.js.map +0 -0
  2543. /package/{devices → dist/devices}/the_light_group.js.map +0 -0
  2544. /package/{devices → dist/devices}/titan_products.js.map +0 -0
  2545. /package/{devices → dist/devices}/tlwglobal.js.map +0 -0
  2546. /package/{devices → dist/devices}/tplink.js.map +0 -0
  2547. /package/{devices → dist/devices}/trust.js.map +0 -0
  2548. /package/{devices → dist/devices}/tubeszb.js.map +0 -0
  2549. /package/{devices → dist/devices}/uhome.js.map +0 -0
  2550. /package/{devices → dist/devices}/universal_electronics_inc.js.map +0 -0
  2551. /package/{devices → dist/devices}/vbled.js.map +0 -0
  2552. /package/{devices → dist/devices}/viessmann.js.map +0 -0
  2553. /package/{devices → dist/devices}/villeroy_boch.js.map +0 -0
  2554. /package/{devices → dist/devices}/vimar.js.map +0 -0
  2555. /package/{devices → dist/devices}/visonic.js.map +0 -0
  2556. /package/{devices → dist/devices}/vrey.js.map +0 -0
  2557. /package/{devices → dist/devices}/wally.js.map +0 -0
  2558. /package/{devices → dist/devices}/waxman.js.map +0 -0
  2559. /package/{devices → dist/devices}/weten.js.map +0 -0
  2560. /package/{devices → dist/devices}/wisdom.js.map +0 -0
  2561. /package/{devices → dist/devices}/woolley.js.map +0 -0
  2562. /package/{devices → dist/devices}/woox.js.map +0 -0
  2563. /package/{devices → dist/devices}/wyze.js.map +0 -0
  2564. /package/{devices → dist/devices}/xal.js.map +0 -0
  2565. /package/{devices → dist/devices}/xinghuoyuan.js.map +0 -0
  2566. /package/{devices → dist/devices}/ynoa.js.map +0 -0
  2567. /package/{devices → dist/devices}/yookee.js.map +0 -0
  2568. /package/{devices → dist/devices}/ysrsai.js.map +0 -0
  2569. /package/{devices → dist/devices}/zemismart.js.map +0 -0
  2570. /package/{devices → dist/devices}/zen.js.map +0 -0
  2571. /package/{devices → dist/devices}/zigbeetlc.d.ts +0 -0
  2572. /package/{devices → dist/devices}/zigbeetlc.d.ts.map +0 -0
  2573. /package/{devices → dist/devices}/zigbeetlc.js.map +0 -0
  2574. /package/{devices → dist/devices}/zipato.js.map +0 -0
  2575. /package/{lib → dist/lib}/kelvinToXy.d.ts +0 -0
  2576. /package/{lib → dist/lib}/kelvinToXy.d.ts.map +0 -0
  2577. /package/{lib → dist/lib}/logger.js.map +0 -0
  2578. /package/{lib → dist/lib}/reporting.js.map +0 -0
  2579. /package/{lib → dist/lib}/sunricher.js.map +0 -0
  2580. /package/{lib → dist/lib}/types.js +0 -0
  2581. /package/{lib → dist/lib}/types.js.map +0 -0
@@ -1,2015 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- var __importDefault = (this && this.__importDefault) || function (mod) {
36
- return (mod && mod.__esModule) ? mod : { "default": mod };
37
- };
38
- Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.TIME_LOOKUP = void 0;
40
- exports.setupAttributes = setupAttributes;
41
- exports.setupConfigureForReporting = setupConfigureForReporting;
42
- exports.setupConfigureForBinding = setupConfigureForBinding;
43
- exports.setupConfigureForReading = setupConfigureForReading;
44
- exports.determineEndpoint = determineEndpoint;
45
- exports.forceDeviceType = forceDeviceType;
46
- exports.forcePowerSource = forcePowerSource;
47
- exports.linkQuality = linkQuality;
48
- exports.battery = battery;
49
- exports.deviceTemperature = deviceTemperature;
50
- exports.identify = identify;
51
- exports.onOff = onOff;
52
- exports.commandsOnOff = commandsOnOff;
53
- exports.customTimeResponse = customTimeResponse;
54
- exports.illuminance = illuminance;
55
- exports.temperature = temperature;
56
- exports.pressure = pressure;
57
- exports.flow = flow;
58
- exports.humidity = humidity;
59
- exports.soilMoisture = soilMoisture;
60
- exports.occupancy = occupancy;
61
- exports.co2 = co2;
62
- exports.pm25 = pm25;
63
- exports.light = light;
64
- exports.commandsLevelCtrl = commandsLevelCtrl;
65
- exports.commandsColorCtrl = commandsColorCtrl;
66
- exports.lightingBallast = lightingBallast;
67
- exports.lock = lock;
68
- exports.windowCovering = windowCovering;
69
- exports.commandsWindowCovering = commandsWindowCovering;
70
- exports.iasZoneAlarm = iasZoneAlarm;
71
- exports.iasWarning = iasWarning;
72
- exports.electricityMeter = electricityMeter;
73
- exports.commandsScenes = commandsScenes;
74
- exports.enumLookup = enumLookup;
75
- exports.numeric = numeric;
76
- exports.binary = binary;
77
- exports.text = text;
78
- exports.actionEnumLookup = actionEnumLookup;
79
- exports.quirkAddEndpointCluster = quirkAddEndpointCluster;
80
- exports.quirkCheckinInterval = quirkCheckinInterval;
81
- exports.reconfigureReportingsOnDeviceAnnounce = reconfigureReportingsOnDeviceAnnounce;
82
- exports.deviceEndpoints = deviceEndpoints;
83
- exports.deviceAddCustomCluster = deviceAddCustomCluster;
84
- exports.ignoreClusterReport = ignoreClusterReport;
85
- exports.bindCluster = bindCluster;
86
- const zigbee_herdsman_1 = require("zigbee-herdsman");
87
- const fromZigbee_1 = __importDefault(require("../converters/fromZigbee"));
88
- const toZigbee_1 = __importDefault(require("../converters/toZigbee"));
89
- const logger_1 = require("../lib/logger");
90
- const globalStore = __importStar(require("../lib/store"));
91
- const exposes_1 = require("./exposes");
92
- const light_1 = require("./light");
93
- const utils_1 = require("./utils");
94
- function getEndpointsWithCluster(device, cluster, type) {
95
- if (!device.endpoints) {
96
- throw new Error(device.ieeeAddr + ' ' + device.endpoints);
97
- }
98
- const endpoints = type === 'input'
99
- ? device.endpoints.filter((ep) => ep.getInputClusters().find((c) => ((0, utils_1.isNumber)(cluster) ? c.ID === cluster : c.name === cluster)))
100
- : device.endpoints.filter((ep) => ep.getOutputClusters().find((c) => ((0, utils_1.isNumber)(cluster) ? c.ID === cluster : c.name === cluster)));
101
- if (endpoints.length === 0) {
102
- throw new Error(`Device ${device.ieeeAddr} has no ${type} cluster ${cluster}`);
103
- }
104
- return endpoints;
105
- }
106
- const IAS_EXPOSE_LOOKUP = {
107
- occupancy: exposes_1.presets.binary('occupancy', exposes_1.access.STATE, true, false).withDescription('Indicates whether the device detected occupancy'),
108
- contact: exposes_1.presets.binary('contact', exposes_1.access.STATE, false, true).withDescription('Indicates whether the device is opened or closed'),
109
- smoke: exposes_1.presets.binary('smoke', exposes_1.access.STATE, true, false).withDescription('Indicates whether the device detected smoke'),
110
- water_leak: exposes_1.presets.binary('water_leak', exposes_1.access.STATE, true, false).withDescription('Indicates whether the device detected a water leak'),
111
- carbon_monoxide: exposes_1.presets.binary('carbon_monoxide', exposes_1.access.STATE, true, false).withDescription('Indicates whether the device detected carbon monoxide'),
112
- sos: exposes_1.presets.binary('sos', exposes_1.access.STATE, true, false).withLabel('SOS').withDescription('Indicates whether the SOS alarm is triggered'),
113
- vibration: exposes_1.presets.binary('vibration', exposes_1.access.STATE, true, false).withDescription('Indicates whether the device detected vibration'),
114
- alarm: exposes_1.presets.binary('alarm', exposes_1.access.STATE, true, false).withDescription('Indicates whether the alarm is triggered'),
115
- gas: exposes_1.presets.binary('gas', exposes_1.access.STATE, true, false).withDescription('Indicates whether the device detected gas'),
116
- alarm_1: exposes_1.presets.binary('alarm_1', exposes_1.access.STATE, true, false).withDescription('Indicates whether IAS Zone alarm 1 is active'),
117
- alarm_2: exposes_1.presets.binary('alarm_2', exposes_1.access.STATE, true, false).withDescription('Indicates whether IAS Zone alarm 2 is active'),
118
- tamper: exposes_1.presets.binary('tamper', exposes_1.access.STATE, true, false).withDescription('Indicates whether the device is tampered').withCategory('diagnostic'),
119
- rain: exposes_1.presets.binary('rain', exposes_1.access.STATE, true, false).withDescription('Indicates whether the device detected rainfall'),
120
- battery_low: exposes_1.presets
121
- .binary('battery_low', exposes_1.access.STATE, true, false)
122
- .withDescription('Indicates whether the battery of the device is almost empty')
123
- .withCategory('diagnostic'),
124
- supervision_reports: exposes_1.presets
125
- .binary('supervision_reports', exposes_1.access.STATE, true, false)
126
- .withDescription('Indicates whether the device issues reports on zone operational status')
127
- .withCategory('diagnostic'),
128
- restore_reports: exposes_1.presets
129
- .binary('restore_reports', exposes_1.access.STATE, true, false)
130
- .withDescription('Indicates whether the device issues reports on alarm no longer being present')
131
- .withCategory('diagnostic'),
132
- ac_status: exposes_1.presets
133
- .binary('ac_status', exposes_1.access.STATE, true, false)
134
- .withDescription('Indicates whether the device mains voltage supply is at fault')
135
- .withCategory('diagnostic'),
136
- test: exposes_1.presets
137
- .binary('test', exposes_1.access.STATE, true, false)
138
- .withDescription('Indicates whether the device is currently performing a test')
139
- .withCategory('diagnostic'),
140
- trouble: exposes_1.presets
141
- .binary('trouble', exposes_1.access.STATE, true, false)
142
- .withDescription('Indicates whether the device is currently havin trouble')
143
- .withCategory('diagnostic'),
144
- battery_defect: exposes_1.presets
145
- .binary('battery_defect', exposes_1.access.STATE, true, false)
146
- .withDescription('Indicates whether the device battery is defective')
147
- .withCategory('diagnostic'),
148
- };
149
- exports.TIME_LOOKUP = {
150
- MAX: 65000,
151
- '4_HOURS': 14400,
152
- '1_HOUR': 3600,
153
- '30_MINUTES': 1800,
154
- '5_MINUTES': 300,
155
- '2_MINUTES': 120,
156
- '1_MINUTE': 60,
157
- '10_SECONDS': 10,
158
- '5_SECONDS': 5,
159
- '1_SECOND': 1,
160
- MIN: 0,
161
- };
162
- function convertReportingConfigTime(time) {
163
- if ((0, utils_1.isString)(time)) {
164
- if (!(time in exports.TIME_LOOKUP))
165
- throw new Error(`Reporting time '${time}' is unknown`);
166
- return exports.TIME_LOOKUP[time];
167
- }
168
- else {
169
- return time;
170
- }
171
- }
172
- async function setupAttributes(entity, coordinatorEndpoint, cluster, config, configureReporting = true, read = true) {
173
- const endpoints = (0, utils_1.isEndpoint)(entity) ? [entity] : getEndpointsWithCluster(entity, cluster, 'input');
174
- const ieeeAddr = (0, utils_1.isEndpoint)(entity) ? entity.deviceIeeeAddress : entity.ieeeAddr;
175
- for (const endpoint of endpoints) {
176
- logger_1.logger.debug(`Configure reporting: ${configureReporting}, read: ${read} for ${ieeeAddr}/${endpoint.ID} ${cluster} ${JSON.stringify(config)}`, 'zhc:setupattribute');
177
- // Split into chunks of 4 to prevent to message becoming too big.
178
- const chunks = (0, utils_1.splitArrayIntoChunks)(config, 4);
179
- if (configureReporting) {
180
- await endpoint.bind(cluster, coordinatorEndpoint);
181
- for (const chunk of chunks) {
182
- await endpoint.configureReporting(cluster, chunk.map((a) => ({
183
- minimumReportInterval: convertReportingConfigTime(a.min),
184
- maximumReportInterval: convertReportingConfigTime(a.max),
185
- reportableChange: a.change,
186
- attribute: a.attribute,
187
- })));
188
- }
189
- }
190
- if (read) {
191
- for (const chunk of chunks) {
192
- try {
193
- // Don't fail configuration if reading this attribute fails
194
- // https://github.com/Koenkk/zigbee-herdsman-converters/pull/7074
195
- await endpoint.read(cluster, chunk.map((a) => ((0, utils_1.isString)(a) ? a : (0, utils_1.isObject)(a.attribute) ? a.attribute.ID : a.attribute)));
196
- }
197
- catch (e) {
198
- logger_1.logger.debug(`Reading attribute failed: ${e}`, 'zhc:setupattribute');
199
- }
200
- }
201
- }
202
- }
203
- }
204
- function setupConfigureForReporting(cluster, attribute, config, access, endpointNames) {
205
- const configureReporting = !!config;
206
- const read = !!(access & exposes_1.access.GET);
207
- if (configureReporting || read) {
208
- const configure = async (device, coordinatorEndpoint, definition) => {
209
- const reportConfig = config ? { ...config, attribute: attribute } : { attribute, min: -1, max: -1, change: -1 };
210
- let entities = [device];
211
- if (endpointNames) {
212
- const definitionEndpoints = definition.endpoint(device);
213
- const endpointIds = endpointNames.map((e) => definitionEndpoints[e]);
214
- entities = device.endpoints.filter((e) => endpointIds.includes(e.ID));
215
- }
216
- for (const entity of entities) {
217
- await setupAttributes(entity, coordinatorEndpoint, cluster, [reportConfig], configureReporting, read);
218
- }
219
- };
220
- return configure;
221
- }
222
- else {
223
- return undefined;
224
- }
225
- }
226
- function setupConfigureForBinding(cluster, clusterType, endpointNames) {
227
- const configure = async (device, coordinatorEndpoint, definition) => {
228
- if (endpointNames) {
229
- const definitionEndpoints = definition.endpoint(device);
230
- const endpointIds = endpointNames.map((e) => definitionEndpoints[e]);
231
- const endpoints = device.endpoints.filter((e) => endpointIds.includes(e.ID));
232
- for (const endpoint of endpoints) {
233
- await endpoint.bind(cluster, coordinatorEndpoint);
234
- }
235
- }
236
- else {
237
- const endpoints = getEndpointsWithCluster(device, cluster, clusterType);
238
- for (const endpoint of endpoints) {
239
- await endpoint.bind(cluster, coordinatorEndpoint);
240
- }
241
- }
242
- };
243
- return configure;
244
- }
245
- function setupConfigureForReading(cluster, attributes, endpointNames) {
246
- const configure = async (device, coordinatorEndpoint, definition) => {
247
- if (endpointNames) {
248
- const definitionEndpoints = definition.endpoint(device);
249
- const endpointIds = endpointNames.map((e) => definitionEndpoints[e]);
250
- const endpoints = device.endpoints.filter((e) => endpointIds.includes(e.ID));
251
- for (const endpoint of endpoints) {
252
- await endpoint.read(cluster, attributes);
253
- }
254
- }
255
- else {
256
- const endpoints = getEndpointsWithCluster(device, cluster, 'input');
257
- for (const endpoint of endpoints) {
258
- await endpoint.read(cluster, attributes);
259
- }
260
- }
261
- };
262
- return configure;
263
- }
264
- function determineEndpoint(entity, meta, cluster) {
265
- const { device, endpoint_name } = meta;
266
- if (endpoint_name !== undefined) {
267
- // In case an explicit endpoint is given, always send it to that endpoint
268
- return entity;
269
- }
270
- else {
271
- // In case no endpoint is given, match the first endpoint which support the cluster.
272
- return device.endpoints.find((e) => e.supportsInputCluster(cluster)) ?? device.endpoints[0];
273
- }
274
- }
275
- // #region General
276
- function forceDeviceType(args) {
277
- const configure = [
278
- async (device, coordinatorEndpoint, definition) => {
279
- device.type = args.type;
280
- device.save();
281
- },
282
- ];
283
- return { configure, isModernExtend: true };
284
- }
285
- function forcePowerSource(args) {
286
- const configure = [
287
- async (device, coordinatorEndpoint, definition) => {
288
- device.powerSource = args.powerSource;
289
- device.save();
290
- },
291
- ];
292
- return { configure, isModernExtend: true };
293
- }
294
- function linkQuality(args) {
295
- args = { reporting: false, attribute: 'zclVersion', reportingConfig: { min: '1_HOUR', max: '4_HOURS', change: 0 }, ...args };
296
- // Exposes is empty because the application (e.g. Z2M) adds a linkquality sensor
297
- // for every device already.
298
- const exposes = [];
299
- const fromZigbee = [
300
- {
301
- cluster: 'genBasic',
302
- type: ['attributeReport', 'readResponse'],
303
- convert: (model, msg, publish, options, meta) => {
304
- return { linkquality: msg.linkquality };
305
- },
306
- },
307
- ];
308
- const result = { exposes, fromZigbee, isModernExtend: true };
309
- if (args.reporting) {
310
- result.configure = [setupConfigureForReporting('genBasic', args.attribute, args.reportingConfig, exposes_1.access.GET)];
311
- }
312
- return result;
313
- }
314
- function battery(args) {
315
- args = {
316
- percentage: true,
317
- voltage: false,
318
- lowStatus: false,
319
- percentageReporting: true,
320
- voltageReporting: false,
321
- dontDividePercentage: false,
322
- percentageReportingConfig: { min: '1_HOUR', max: 'MAX', change: 10 },
323
- voltageReportingConfig: { min: '1_HOUR', max: 'MAX', change: 10 },
324
- ...args,
325
- };
326
- const exposes = [];
327
- if (args.percentage) {
328
- exposes.push(exposes_1.presets
329
- .numeric('battery', exposes_1.access.STATE_GET)
330
- .withUnit('%')
331
- .withDescription('Remaining battery in %')
332
- .withValueMin(0)
333
- .withValueMax(100)
334
- .withCategory('diagnostic'));
335
- }
336
- if (args.voltage) {
337
- exposes.push(exposes_1.presets.numeric('voltage', exposes_1.access.STATE_GET).withUnit('mV').withDescription('Reported battery voltage in millivolts').withCategory('diagnostic'));
338
- }
339
- if (args.lowStatus) {
340
- exposes.push(exposes_1.presets.binary('battery_low', exposes_1.access.STATE, true, false).withDescription('Empty battery indicator').withCategory('diagnostic'));
341
- }
342
- const fromZigbee = [
343
- {
344
- cluster: 'genPowerCfg',
345
- type: ['attributeReport', 'readResponse'],
346
- convert: (model, msg, publish, options, meta) => {
347
- const payload = {};
348
- if (msg.data.batteryPercentageRemaining !== undefined && msg.data['batteryPercentageRemaining'] < 255) {
349
- // Some devices do not comply to the ZCL and report a
350
- // batteryPercentageRemaining of 100 when the battery is full (should be 200).
351
- const dontDividePercentage = args.dontDividePercentage;
352
- let percentage = msg.data['batteryPercentageRemaining'];
353
- percentage = dontDividePercentage ? percentage : percentage / 2;
354
- if (args.percentage)
355
- payload.battery = (0, utils_1.precisionRound)(percentage, 2);
356
- }
357
- if (msg.data.batteryVoltage !== undefined && msg.data['batteryVoltage'] < 255) {
358
- // Deprecated: voltage is = mV now but should be V
359
- if (args.voltage)
360
- payload.voltage = msg.data['batteryVoltage'] * 100;
361
- if (args.voltageToPercentage) {
362
- payload.battery = (0, utils_1.batteryVoltageToPercentage)(payload.voltage, args.voltageToPercentage);
363
- }
364
- }
365
- if (msg.data.batteryAlarmState !== undefined) {
366
- const battery1Low = (msg.data.batteryAlarmState & (1 << 0) ||
367
- msg.data.batteryAlarmState & (1 << 1) ||
368
- msg.data.batteryAlarmState & (1 << 2) ||
369
- msg.data.batteryAlarmState & (1 << 3)) > 0;
370
- const battery2Low = (msg.data.batteryAlarmState & (1 << 10) ||
371
- msg.data.batteryAlarmState & (1 << 11) ||
372
- msg.data.batteryAlarmState & (1 << 12) ||
373
- msg.data.batteryAlarmState & (1 << 13)) > 0;
374
- const battery3Low = (msg.data.batteryAlarmState & (1 << 20) ||
375
- msg.data.batteryAlarmState & (1 << 21) ||
376
- msg.data.batteryAlarmState & (1 << 22) ||
377
- msg.data.batteryAlarmState & (1 << 23)) > 0;
378
- if (args.lowStatus)
379
- payload.battery_low = battery1Low || battery2Low || battery3Low;
380
- }
381
- return payload;
382
- },
383
- },
384
- ];
385
- const toZigbee = [
386
- {
387
- key: ['battery', 'voltage'],
388
- convertGet: async (entity, key, meta) => {
389
- // Don't fail GET reqest if reading fails
390
- // Split reading is needed for more clear debug logs
391
- const ep = determineEndpoint(entity, meta, 'genPowerCfg');
392
- try {
393
- await ep.read('genPowerCfg', ['batteryPercentageRemaining']);
394
- }
395
- catch (e) {
396
- logger_1.logger.debug(`Reading batteryPercentageRemaining failed: ${e}, device probably doesn't support it`, 'zhc:setupattribute');
397
- }
398
- try {
399
- await ep.read('genPowerCfg', ['batteryVoltage']);
400
- }
401
- catch (e) {
402
- logger_1.logger.debug(`Reading batteryVoltage failed: ${e}, device probably doesn't support it`, 'zhc:setupattribute');
403
- }
404
- },
405
- },
406
- ];
407
- const result = { exposes, fromZigbee, toZigbee, isModernExtend: true };
408
- if (args.percentageReporting || args.voltageReporting) {
409
- const configure = [];
410
- if (args.percentageReporting) {
411
- configure.push(setupConfigureForReporting('genPowerCfg', 'batteryPercentageRemaining', args.percentageReportingConfig, exposes_1.access.STATE_GET));
412
- }
413
- if (args.voltageReporting) {
414
- configure.push(setupConfigureForReporting('genPowerCfg', 'batteryVoltage', args.voltageReportingConfig, exposes_1.access.STATE_GET));
415
- }
416
- configure.push((0, utils_1.configureSetPowerSourceWhenUnknown)('Battery'));
417
- result.configure = configure;
418
- }
419
- if (args.voltageToPercentage || args.dontDividePercentage) {
420
- const meta = { battery: {} };
421
- if (args.voltageToPercentage)
422
- meta.battery.voltageToPercentage = args.voltageToPercentage;
423
- if (args.dontDividePercentage)
424
- meta.battery.dontDividePercentage = args.dontDividePercentage;
425
- result.meta = meta;
426
- }
427
- return result;
428
- }
429
- function deviceTemperature(args) {
430
- return numeric({
431
- name: 'device_temperature',
432
- cluster: 'genDeviceTempCfg',
433
- attribute: 'currentTemperature',
434
- reporting: { min: '5_MINUTES', max: '1_HOUR', change: 1 },
435
- description: 'Temperature of the device',
436
- unit: '°C',
437
- access: 'STATE_GET',
438
- entityCategory: 'diagnostic',
439
- ...args,
440
- });
441
- }
442
- function identify(args) {
443
- args = { isSleepy: false, ...args };
444
- const normal = exposes_1.presets.enum('identify', exposes_1.access.SET, ['identify']).withDescription('Initiate device identification').withCategory('config');
445
- const sleepy = exposes_1.presets
446
- .enum('identify', exposes_1.access.SET, ['identify'])
447
- .withDescription('Initiate device identification. This device is asleep by default.' +
448
- 'You may need to wake it up first before sending the identify command.')
449
- .withCategory('config');
450
- const exposes = args.isSleepy ? [sleepy] : [normal];
451
- const identifyTimeout = exposes_1.presets
452
- .numeric('identify_timeout', exposes_1.access.SET)
453
- .withDescription('Sets the duration of the identification procedure in seconds (i.e., how long the device would flash).' +
454
- 'The value ranges from 1 to 30 seconds (default: 3).')
455
- .withValueMin(1)
456
- .withValueMax(30);
457
- const toZigbee = [
458
- {
459
- key: ['identify'],
460
- options: [identifyTimeout],
461
- convertSet: async (entity, key, value, meta) => {
462
- const identifyTimeout = meta.options.identify_timeout ?? 3;
463
- await entity.command('genIdentify', 'identify', { identifytime: identifyTimeout }, (0, utils_1.getOptions)(meta.mapped, entity));
464
- },
465
- },
466
- ];
467
- return { exposes, toZigbee, isModernExtend: true };
468
- }
469
- function onOff(args) {
470
- args = { powerOnBehavior: true, skipDuplicateTransaction: false, configureReporting: true, ...args };
471
- const exposes = args.description
472
- ? (0, utils_1.exposeEndpoints)(exposes_1.presets.switch(args.description), args.endpointNames)
473
- : (0, utils_1.exposeEndpoints)(exposes_1.presets.switch(), args.endpointNames);
474
- const fromZigbee = [args.skipDuplicateTransaction ? fromZigbee_1.default.on_off_skip_duplicate_transaction : fromZigbee_1.default.on_off];
475
- const toZigbee = [args?.endpointNames ? { ...toZigbee_1.default.on_off, endpoints: args?.endpointNames } : toZigbee_1.default.on_off];
476
- if (args.powerOnBehavior) {
477
- exposes.push(...(0, utils_1.exposeEndpoints)(exposes_1.presets.power_on_behavior(['off', 'on', 'toggle', 'previous']), args.endpointNames));
478
- fromZigbee.push(fromZigbee_1.default.power_on_behavior);
479
- toZigbee.push(toZigbee_1.default.power_on_behavior);
480
- }
481
- const result = { exposes, fromZigbee, toZigbee, isModernExtend: true };
482
- if (args.ota)
483
- result.ota = args.ota;
484
- if (args.configureReporting) {
485
- result.configure = [
486
- async (device, coordinatorEndpoint) => {
487
- await setupAttributes(device, coordinatorEndpoint, 'genOnOff', [{ attribute: 'onOff', min: 'MIN', max: 'MAX', change: 1 }]);
488
- if (args.powerOnBehavior) {
489
- try {
490
- // Don't fail configure if reading this attribute fails, some devices don't support it.
491
- await setupAttributes(device, coordinatorEndpoint, 'genOnOff', [{ attribute: 'startUpOnOff', min: 'MIN', max: 'MAX', change: 1 }], false);
492
- }
493
- catch (e) {
494
- if (e.message.includes('UNSUPPORTED_ATTRIBUTE')) {
495
- logger_1.logger.debug('Reading startUpOnOff failed, this features is unsupported', 'zhc:onoff');
496
- }
497
- else {
498
- throw e;
499
- }
500
- }
501
- }
502
- },
503
- (0, utils_1.configureSetPowerSourceWhenUnknown)('Mains (single phase)'),
504
- ];
505
- }
506
- return result;
507
- }
508
- function commandsOnOff(args) {
509
- args = { commands: ['on', 'off', 'toggle'], bind: true, ...args };
510
- let actions = args.commands;
511
- if (args.endpointNames) {
512
- actions = args.commands.map((c) => args.endpointNames.map((e) => `${c}_${e}`)).flat();
513
- }
514
- const exposes = [exposes_1.presets.enum('action', exposes_1.access.STATE, actions).withDescription('Triggered action (e.g. a button click)')];
515
- const actionPayloadLookup = {
516
- commandOn: 'on',
517
- commandOff: 'off',
518
- commandOffWithEffect: 'off',
519
- commandToggle: 'toggle',
520
- };
521
- const fromZigbee = [
522
- {
523
- cluster: 'genOnOff',
524
- type: ['commandOn', 'commandOff', 'commandOffWithEffect', 'commandToggle'],
525
- convert: (model, msg, publish, options, meta) => {
526
- if ((0, utils_1.hasAlreadyProcessedMessage)(msg, model))
527
- return;
528
- const payload = { action: (0, utils_1.postfixWithEndpointName)(actionPayloadLookup[msg.type], msg, model, meta) };
529
- (0, utils_1.addActionGroup)(payload, msg, model);
530
- return payload;
531
- },
532
- },
533
- ];
534
- const result = { exposes, fromZigbee, isModernExtend: true };
535
- if (args.bind)
536
- result.configure = [setupConfigureForBinding('genOnOff', 'output', args.endpointNames)];
537
- return result;
538
- }
539
- function customTimeResponse(start) {
540
- // The Zigbee Cluster Library specification states that the genTime.time response should be the
541
- // number of seconds since 1st Jan 2000 00:00:00 UTC. This extend modifies that:
542
- // 1970_UTC: number of seconds since the Unix Epoch (1st Jan 1970 00:00:00 UTC)
543
- // 2000_LOCAL: seconds since 1 January in the local time zone.
544
- // Disable the responses of zigbee-herdsman and respond here instead.
545
- const onEvent = async (type, data, device, options, state) => {
546
- if (!device.customReadResponse) {
547
- device.customReadResponse = (frame, endpoint) => {
548
- if (frame.isCluster('genTime')) {
549
- const payload = {};
550
- if (start === '1970_UTC') {
551
- const time = Math.round(new Date().getTime() / 1000);
552
- payload.time = time;
553
- payload.localTime = time - new Date().getTimezoneOffset() * 60;
554
- }
555
- else if (start === '2000_LOCAL') {
556
- const oneJanuary2000 = new Date('January 01, 2000 00:00:00 UTC+00:00').getTime();
557
- const secondsUTC = Math.round((new Date().getTime() - oneJanuary2000) / 1000);
558
- payload.time = secondsUTC - new Date().getTimezoneOffset() * 60;
559
- }
560
- endpoint.readResponse('genTime', frame.header.transactionSequenceNumber, payload).catch((e) => {
561
- logger_1.logger.warning(`Custom time response failed for '${device.ieeeAddr}': ${e}`, 'zhc:customtimeresponse');
562
- });
563
- return true;
564
- }
565
- return false;
566
- };
567
- }
568
- };
569
- return { onEvent, isModernExtend: true };
570
- }
571
- // #endregion
572
- // #region Measurement and Sensing
573
- function illuminance(args) {
574
- const luxScale = (value, type) => {
575
- let result = value;
576
- if (type === 'from') {
577
- result = Math.pow(10, (result - 1) / 10000);
578
- }
579
- return result;
580
- };
581
- const result = numeric({
582
- name: 'illuminance',
583
- cluster: 'msIlluminanceMeasurement',
584
- attribute: 'measuredValue',
585
- reporting: { min: '10_SECONDS', max: '1_HOUR', change: 5 }, // 5 lux
586
- description: 'Measured illuminance',
587
- unit: 'lx',
588
- scale: luxScale,
589
- access: 'STATE_GET',
590
- ...args,
591
- });
592
- const fzIlluminanceRaw = {
593
- cluster: 'msIlluminanceMeasurement',
594
- type: ['attributeReport', 'readResponse'],
595
- options: [exposes_1.options.illuminance_raw()],
596
- convert: (model, msg, publish, options, meta) => {
597
- if (options.illuminance_raw) {
598
- return { illuminance_raw: msg.data['measuredValue'] };
599
- }
600
- },
601
- };
602
- result.fromZigbee.push(fzIlluminanceRaw);
603
- const exposeIlluminanceRaw = (device, options) => {
604
- return options?.illuminance_raw ? [exposes_1.presets.illuminance_raw()] : [];
605
- };
606
- result.exposes.push(exposeIlluminanceRaw);
607
- return result;
608
- }
609
- function temperature(args) {
610
- return numeric({
611
- name: 'temperature',
612
- cluster: 'msTemperatureMeasurement',
613
- attribute: 'measuredValue',
614
- reporting: { min: '10_SECONDS', max: '1_HOUR', change: 100 },
615
- description: 'Measured temperature value',
616
- unit: '°C',
617
- scale: 100,
618
- access: 'STATE_GET',
619
- ...args,
620
- });
621
- }
622
- function pressure(args) {
623
- return numeric({
624
- name: 'pressure',
625
- cluster: 'msPressureMeasurement',
626
- attribute: 'measuredValue',
627
- reporting: { min: '10_SECONDS', max: '1_HOUR', change: 50 }, // 5 kPa
628
- description: 'The measured atmospheric pressure',
629
- unit: 'kPa',
630
- scale: 10,
631
- access: 'STATE_GET',
632
- ...args,
633
- });
634
- }
635
- function flow(args) {
636
- return numeric({
637
- name: 'flow',
638
- cluster: 'msFlowMeasurement',
639
- attribute: 'measuredValue',
640
- reporting: { min: '10_SECONDS', max: '1_HOUR', change: 10 },
641
- description: 'Measured water flow',
642
- unit: 'm³/h',
643
- scale: 10,
644
- access: 'STATE_GET',
645
- ...args,
646
- });
647
- }
648
- function humidity(args) {
649
- return numeric({
650
- name: 'humidity',
651
- cluster: 'msRelativeHumidity',
652
- attribute: 'measuredValue',
653
- reporting: { min: '10_SECONDS', max: '1_HOUR', change: 100 },
654
- description: 'Measured relative humidity',
655
- unit: '%',
656
- scale: 100,
657
- access: 'STATE_GET',
658
- ...args,
659
- });
660
- }
661
- function soilMoisture(args) {
662
- return numeric({
663
- name: 'soil_moisture',
664
- cluster: 'msSoilMoisture',
665
- attribute: 'measuredValue',
666
- reporting: { min: '10_SECONDS', max: '1_HOUR', change: 100 },
667
- description: 'Measured soil moisture value',
668
- unit: '%',
669
- scale: 100,
670
- access: 'STATE_GET',
671
- ...args,
672
- });
673
- }
674
- function occupancy(args) {
675
- args = { reporting: true, reportingConfig: { min: 'MIN', max: '1_HOUR', change: 0 }, ...args };
676
- const templateExposes = [exposes_1.presets.occupancy().withAccess(exposes_1.access.STATE_GET)];
677
- const exposes = args.endpointNames
678
- ? templateExposes.map((exp) => args.endpointNames.map((ep) => exp.withEndpoint(ep))).flat()
679
- : templateExposes;
680
- const fromZigbee = [
681
- {
682
- cluster: 'msOccupancySensing',
683
- type: ['attributeReport', 'readResponse'],
684
- options: [exposes_1.options.no_occupancy_since_false()],
685
- convert: (model, msg, publish, options, meta) => {
686
- if ('occupancy' in msg.data && (!args.endpointNames || args.endpointNames.includes((0, utils_1.getEndpointName)(msg, model, meta).toString()))) {
687
- const propertyName = (0, utils_1.postfixWithEndpointName)('occupancy', msg, model, meta);
688
- const payload = { [propertyName]: (msg.data['occupancy'] & 1) > 0 };
689
- (0, utils_1.noOccupancySince)(msg.endpoint, options, publish, payload[propertyName] ? 'stop' : 'start');
690
- return payload;
691
- }
692
- },
693
- },
694
- ];
695
- const toZigbee = [
696
- {
697
- key: ['occupancy'],
698
- convertGet: async (entity, key, meta) => {
699
- await determineEndpoint(entity, meta, 'msOccupancySensing').read('msOccupancySensing', ['occupancy']);
700
- },
701
- },
702
- ];
703
- const settingsExtends = [];
704
- const settingsTemplate = {
705
- cluster: 'msOccupancySensing',
706
- description: '',
707
- endpointNames: args.endpointNames,
708
- access: 'ALL',
709
- entityCategory: 'config',
710
- };
711
- const attributesForReading = [];
712
- if (args.pirConfig) {
713
- if (args.pirConfig.includes('otu_delay')) {
714
- settingsExtends.push(numeric({
715
- name: 'occupancy_timeout',
716
- attribute: 'pirOToUDelay',
717
- valueMin: 0,
718
- valueMax: 65534,
719
- unit: 's',
720
- ...settingsTemplate,
721
- description: 'Time in seconds before occupancy is cleared after the last detected movement.',
722
- }));
723
- attributesForReading.push('pirOToUDelay');
724
- }
725
- if (args.pirConfig.includes('uto_delay')) {
726
- settingsExtends.push(numeric({
727
- name: 'pir_uto_delay',
728
- attribute: 'pirUToODelay',
729
- valueMin: 0,
730
- valueMax: 65534,
731
- ...settingsTemplate,
732
- }));
733
- attributesForReading.push('pirUToODelay');
734
- }
735
- if (args.pirConfig.includes('uto_threshold')) {
736
- settingsExtends.push(numeric({
737
- name: 'pir_uto_threshold',
738
- attribute: 'pirUToOThreshold',
739
- valueMin: 1,
740
- valueMax: 254,
741
- ...settingsTemplate,
742
- }));
743
- attributesForReading.push('pirUToOThreshold');
744
- }
745
- }
746
- if (args.ultrasonicConfig) {
747
- if (args.pirConfig.includes('otu_delay')) {
748
- settingsExtends.push(numeric({
749
- name: 'ultrasonic_otu_delay',
750
- attribute: 'ultrasonicOToUDelay',
751
- valueMin: 0,
752
- valueMax: 65534,
753
- ...settingsTemplate,
754
- }));
755
- attributesForReading.push('ultrasonicOToUDelay');
756
- }
757
- if (args.pirConfig.includes('uto_delay')) {
758
- settingsExtends.push(numeric({
759
- name: 'ultrasonic_uto_delay',
760
- attribute: 'ultrasonicUToODelay',
761
- valueMin: 0,
762
- valueMax: 65534,
763
- ...settingsTemplate,
764
- }));
765
- attributesForReading.push('ultrasonicUToODelay');
766
- }
767
- if (args.pirConfig.includes('uto_threshold')) {
768
- settingsExtends.push(numeric({
769
- name: 'ultrasonic_uto_threshold',
770
- attribute: 'ultrasonicUToOThreshold',
771
- valueMin: 1,
772
- valueMax: 254,
773
- ...settingsTemplate,
774
- }));
775
- attributesForReading.push('ultrasonicUToOThreshold');
776
- }
777
- }
778
- if (args.contactConfig) {
779
- if (args.pirConfig.includes('otu_delay')) {
780
- settingsExtends.push(numeric({
781
- name: 'contact_otu_delay',
782
- attribute: 'contactOToUDelay',
783
- valueMin: 0,
784
- valueMax: 65534,
785
- ...settingsTemplate,
786
- }));
787
- attributesForReading.push('contactOToUDelay');
788
- }
789
- if (args.pirConfig.includes('uto_delay')) {
790
- settingsExtends.push(numeric({
791
- name: 'contact_uto_delay',
792
- attribute: 'contactUToODelay',
793
- valueMin: 0,
794
- valueMax: 65534,
795
- ...settingsTemplate,
796
- }));
797
- attributesForReading.push('contactUToODelay');
798
- }
799
- if (args.pirConfig.includes('uto_threshold')) {
800
- settingsExtends.push(numeric({
801
- name: 'contact_uto_threshold',
802
- attribute: 'contactUToOThreshold',
803
- valueMin: 1,
804
- valueMax: 254,
805
- ...settingsTemplate,
806
- }));
807
- attributesForReading.push('contactUToOThreshold');
808
- }
809
- }
810
- settingsExtends.map((extend) => exposes.push(...extend.exposes));
811
- settingsExtends.map((extend) => fromZigbee.push(...extend.fromZigbee));
812
- settingsExtends.map((extend) => toZigbee.push(...extend.toZigbee));
813
- const configure = [];
814
- if (attributesForReading.length > 0)
815
- configure.push(setupConfigureForReading('msOccupancySensing', attributesForReading, args.endpointNames));
816
- if (args.reporting) {
817
- configure.push(setupConfigureForReporting('msOccupancySensing', 'occupancy', args.reportingConfig, exposes_1.access.STATE_GET, args.endpointNames));
818
- }
819
- return { exposes, fromZigbee, toZigbee, configure, isModernExtend: true };
820
- }
821
- function co2(args) {
822
- return numeric({
823
- name: 'co2',
824
- cluster: 'msCO2',
825
- label: 'CO2',
826
- attribute: 'measuredValue',
827
- reporting: { min: '10_SECONDS', max: '1_HOUR', change: 0.00005 }, // 50 ppm change
828
- description: 'Measured value',
829
- unit: 'ppm',
830
- scale: 0.000001,
831
- access: 'STATE_GET',
832
- ...args,
833
- });
834
- }
835
- function pm25(args) {
836
- return numeric({
837
- name: 'pm25',
838
- cluster: 'pm25Measurement',
839
- attribute: 'measuredValue',
840
- reporting: { min: '10_SECONDS', max: '1_HOUR', change: 1 },
841
- description: 'Measured PM2.5 (particulate matter) concentration',
842
- unit: 'µg/m³',
843
- access: 'STATE_GET',
844
- ...args,
845
- });
846
- }
847
- function light(args) {
848
- args = { effect: true, powerOnBehavior: true, configureReporting: false, ...args };
849
- if (args.colorTemp) {
850
- args.colorTemp = { startup: true, ...args.colorTemp };
851
- }
852
- const argsColor = args.color
853
- ? {
854
- modes: ['xy'],
855
- applyRedFix: false,
856
- enhancedHue: true,
857
- ...((0, utils_1.isObject)(args.color) ? args.color : {}),
858
- }
859
- : false;
860
- const lightExpose = (0, utils_1.exposeEndpoints)(exposes_1.presets.light().withBrightness(), args.endpointNames);
861
- const fromZigbee = [fromZigbee_1.default.on_off, fromZigbee_1.default.brightness, fromZigbee_1.default.ignore_basic_report, fromZigbee_1.default.level_config];
862
- const toZigbee = [
863
- args?.endpointNames ? { ...toZigbee_1.default.light_onoff_brightness, endpoints: args?.endpointNames } : toZigbee_1.default.light_onoff_brightness,
864
- toZigbee_1.default.ignore_transition,
865
- toZigbee_1.default.level_config,
866
- toZigbee_1.default.ignore_rate,
867
- toZigbee_1.default.light_brightness_move,
868
- toZigbee_1.default.light_brightness_step,
869
- ];
870
- const meta = {};
871
- if (args.colorTemp || argsColor) {
872
- fromZigbee.push(fromZigbee_1.default.color_colortemp);
873
- if (args.colorTemp && argsColor)
874
- toZigbee.push(toZigbee_1.default.light_color_colortemp);
875
- else if (args.colorTemp)
876
- toZigbee.push(toZigbee_1.default.light_colortemp);
877
- else if (argsColor)
878
- toZigbee.push(toZigbee_1.default.light_color);
879
- toZigbee.push(toZigbee_1.default.light_color_mode, toZigbee_1.default.light_color_options);
880
- }
881
- if (args.colorTemp) {
882
- lightExpose.forEach((e) => e.withColorTemp(args.colorTemp.range));
883
- toZigbee.push(toZigbee_1.default.light_colortemp_move, toZigbee_1.default.light_colortemp_step);
884
- if (args.colorTemp.startup) {
885
- toZigbee.push(toZigbee_1.default.light_colortemp_startup);
886
- lightExpose.forEach((e) => e.withColorTempStartup(args.colorTemp.range));
887
- }
888
- }
889
- if (argsColor) {
890
- lightExpose.forEach((e) => e.withColor(argsColor.modes));
891
- toZigbee.push(toZigbee_1.default.light_hue_saturation_move, toZigbee_1.default.light_hue_saturation_step);
892
- if (argsColor.modes.includes('hs')) {
893
- meta.supportsHueAndSaturation = true;
894
- }
895
- if (argsColor.applyRedFix) {
896
- meta.applyRedFix = true;
897
- }
898
- if (!argsColor.enhancedHue) {
899
- meta.supportsEnhancedHue = false;
900
- }
901
- }
902
- if (args.levelConfig) {
903
- lightExpose.forEach((e) => e.withLevelConfig(args.levelConfig.disabledFeatures ?? []));
904
- toZigbee.push(toZigbee_1.default.level_config);
905
- }
906
- const exposes = lightExpose;
907
- if (args.effect) {
908
- const effects = exposes_1.presets.effect();
909
- if (args.color) {
910
- effects.values.push('colorloop', 'stop_colorloop');
911
- }
912
- exposes.push(...(0, utils_1.exposeEndpoints)(effects, args.endpointNames));
913
- toZigbee.push(toZigbee_1.default.effect);
914
- }
915
- if (args.powerOnBehavior) {
916
- exposes.push(...(0, utils_1.exposeEndpoints)(exposes_1.presets.power_on_behavior(['off', 'on', 'toggle', 'previous']), args.endpointNames));
917
- fromZigbee.push(fromZigbee_1.default.power_on_behavior);
918
- toZigbee.push(toZigbee_1.default.power_on_behavior);
919
- }
920
- if (args.turnsOffAtBrightness1 !== undefined) {
921
- meta.turnsOffAtBrightness1 = args.turnsOffAtBrightness1;
922
- }
923
- const configure = [
924
- async (device, coordinatorEndpoint, definition) => {
925
- await (0, light_1.configure)(device, coordinatorEndpoint, true);
926
- if (args.configureReporting) {
927
- await setupAttributes(device, coordinatorEndpoint, 'genOnOff', [{ attribute: 'onOff', min: 'MIN', max: 'MAX', change: 1 }]);
928
- await setupAttributes(device, coordinatorEndpoint, 'genLevelCtrl', [
929
- { attribute: 'currentLevel', min: '10_SECONDS', max: 'MAX', change: 1 },
930
- ]);
931
- if (args.colorTemp) {
932
- await setupAttributes(device, coordinatorEndpoint, 'lightingColorCtrl', [
933
- { attribute: 'colorTemperature', min: '10_SECONDS', max: 'MAX', change: 1 },
934
- ]);
935
- }
936
- if (argsColor) {
937
- const attributes = [];
938
- if (argsColor.modes.includes('xy')) {
939
- attributes.push({ attribute: 'currentX', min: '10_SECONDS', max: 'MAX', change: 1 }, { attribute: 'currentY', min: '10_SECONDS', max: 'MAX', change: 1 });
940
- }
941
- if (argsColor.modes.includes('hs')) {
942
- attributes.push({ attribute: argsColor.enhancedHue ? 'enhancedCurrentHue' : 'currentHue', min: '10_SECONDS', max: 'MAX', change: 1 }, { attribute: 'currentSaturation', min: '10_SECONDS', max: 'MAX', change: 1 });
943
- }
944
- await setupAttributes(device, coordinatorEndpoint, 'lightingColorCtrl', attributes);
945
- }
946
- }
947
- },
948
- (0, utils_1.configureSetPowerSourceWhenUnknown)('Mains (single phase)'),
949
- ];
950
- const result = { exposes, fromZigbee, toZigbee, configure, meta, isModernExtend: true };
951
- if (args.ota)
952
- result.ota = args.ota;
953
- return result;
954
- }
955
- function commandsLevelCtrl(args) {
956
- args = {
957
- commands: [
958
- 'brightness_move_to_level',
959
- 'brightness_move_up',
960
- 'brightness_move_down',
961
- 'brightness_step_up',
962
- 'brightness_step_down',
963
- 'brightness_stop',
964
- ],
965
- bind: true,
966
- ...args,
967
- };
968
- let actions = args.commands;
969
- if (args.endpointNames) {
970
- actions = args.commands.map((c) => args.endpointNames.map((e) => `${c}_${e}`)).flat();
971
- }
972
- const exposes = [
973
- exposes_1.presets.enum('action', exposes_1.access.STATE, actions).withDescription('Triggered action (e.g. a button click)').withCategory('diagnostic'),
974
- ];
975
- const fromZigbee = [fromZigbee_1.default.command_move_to_level, fromZigbee_1.default.command_move, fromZigbee_1.default.command_step, fromZigbee_1.default.command_stop];
976
- const result = { exposes, fromZigbee, isModernExtend: true };
977
- if (args.bind)
978
- result.configure = [setupConfigureForBinding('genLevelCtrl', 'output', args.endpointNames)];
979
- return result;
980
- }
981
- function commandsColorCtrl(args) {
982
- args = {
983
- commands: [
984
- 'color_temperature_move_stop',
985
- 'color_temperature_move_up',
986
- 'color_temperature_move_down',
987
- 'color_temperature_step_up',
988
- 'color_temperature_step_down',
989
- 'enhanced_move_to_hue_and_saturation',
990
- 'move_to_hue_and_saturation',
991
- 'color_hue_step_up',
992
- 'color_hue_step_down',
993
- 'color_saturation_step_up',
994
- 'color_saturation_step_down',
995
- 'color_loop_set',
996
- 'color_temperature_move',
997
- 'color_move',
998
- 'hue_move',
999
- 'hue_stop',
1000
- 'move_to_saturation',
1001
- 'move_to_hue',
1002
- ],
1003
- bind: true,
1004
- ...args,
1005
- };
1006
- let actions = args.commands;
1007
- if (args.endpointNames) {
1008
- actions = args.commands.map((c) => args.endpointNames.map((e) => `${c}_${e}`)).flat();
1009
- }
1010
- const exposes = [
1011
- exposes_1.presets.enum('action', exposes_1.access.STATE, actions).withDescription('Triggered action (e.g. a button click)').withCategory('diagnostic'),
1012
- ];
1013
- const fromZigbee = [
1014
- fromZigbee_1.default.command_move_color_temperature,
1015
- fromZigbee_1.default.command_step_color_temperature,
1016
- fromZigbee_1.default.command_ehanced_move_to_hue_and_saturation,
1017
- fromZigbee_1.default.command_move_to_hue_and_saturation,
1018
- fromZigbee_1.default.command_step_hue,
1019
- fromZigbee_1.default.command_step_saturation,
1020
- fromZigbee_1.default.command_color_loop_set,
1021
- fromZigbee_1.default.command_move_to_color_temp,
1022
- fromZigbee_1.default.command_move_to_color,
1023
- fromZigbee_1.default.command_move_hue,
1024
- fromZigbee_1.default.command_move_to_saturation,
1025
- fromZigbee_1.default.command_move_to_hue,
1026
- ];
1027
- const result = { exposes, fromZigbee, isModernExtend: true };
1028
- if (args.bind)
1029
- result.configure = [setupConfigureForBinding('lightingColorCtrl', 'output', args.endpointNames)];
1030
- return result;
1031
- }
1032
- function lightingBallast() {
1033
- const result = {
1034
- fromZigbee: [fromZigbee_1.default.lighting_ballast_configuration],
1035
- toZigbee: [toZigbee_1.default.ballast_config],
1036
- exposes: [
1037
- new exposes_1.Numeric('ballast_minimum_level', exposes_1.access.ALL)
1038
- .withValueMin(1)
1039
- .withValueMax(254)
1040
- .withDescription('Specifies the minimum light output of the ballast'),
1041
- new exposes_1.Numeric('ballast_maximum_level', exposes_1.access.ALL)
1042
- .withValueMin(1)
1043
- .withValueMax(254)
1044
- .withDescription('Specifies the maximum light output of the ballast'),
1045
- ],
1046
- configure: [setupConfigureForReading('lightingBallastCfg', ['minLevel', 'maxLevel'])],
1047
- isModernExtend: true,
1048
- };
1049
- return result;
1050
- }
1051
- function lock(args) {
1052
- args = { ...args };
1053
- const fromZigbee = [fromZigbee_1.default.lock, fromZigbee_1.default.lock_operation_event, fromZigbee_1.default.lock_programming_event, fromZigbee_1.default.lock_pin_code_response, fromZigbee_1.default.lock_user_status_response];
1054
- const toZigbee = [
1055
- { ...toZigbee_1.default.lock, endpoints: args?.endpointNames },
1056
- toZigbee_1.default.pincode_lock,
1057
- toZigbee_1.default.lock_userstatus,
1058
- toZigbee_1.default.lock_auto_relock_time,
1059
- toZigbee_1.default.lock_sound_volume,
1060
- ];
1061
- const exposes = [
1062
- exposes_1.presets.lock(),
1063
- exposes_1.presets.pincode(),
1064
- exposes_1.presets.lock_action(),
1065
- exposes_1.presets.lock_action_source_name(),
1066
- exposes_1.presets.lock_action_user(),
1067
- exposes_1.presets.auto_relock_time().withValueMin(0).withValueMax(3600),
1068
- exposes_1.presets.sound_volume(),
1069
- ];
1070
- const configure = [
1071
- setupConfigureForReporting('closuresDoorLock', 'lockState', { min: 'MIN', max: '1_HOUR', change: 0 }, exposes_1.access.STATE_GET),
1072
- ];
1073
- const meta = { pinCodeCount: args.pinCodeCount };
1074
- const result = { fromZigbee, toZigbee, exposes, configure, meta, isModernExtend: true };
1075
- if (args.endpointNames) {
1076
- result.exposes = (0, utils_1.flatten)(exposes.map((expose) => args.endpointNames.map((endpoint) => expose.clone().withEndpoint(endpoint))));
1077
- }
1078
- return result;
1079
- }
1080
- function windowCovering(args) {
1081
- args = { stateSource: 'lift', configureReporting: true, ...args };
1082
- let coverExpose = exposes_1.presets.cover();
1083
- if (args.controls.includes('lift'))
1084
- coverExpose = coverExpose.withPosition();
1085
- if (args.controls.includes('tilt'))
1086
- coverExpose = coverExpose.withTilt();
1087
- const exposes = [coverExpose];
1088
- const fromZigbee = [fromZigbee_1.default.cover_position_tilt];
1089
- const toZigbee = [{ ...toZigbee_1.default.cover_state, endpoints: args?.endpointNames }, toZigbee_1.default.cover_position_tilt];
1090
- const result = { exposes, fromZigbee, toZigbee, isModernExtend: true };
1091
- if (args.configureReporting) {
1092
- const configure = [];
1093
- if (args.controls.includes('lift')) {
1094
- configure.push(setupConfigureForReporting('closuresWindowCovering', 'currentPositionLiftPercentage', { min: '1_SECOND', max: 'MAX', change: 1 }, exposes_1.access.STATE_GET));
1095
- }
1096
- if (args.controls.includes('tilt')) {
1097
- configure.push(setupConfigureForReporting('closuresWindowCovering', 'currentPositionTiltPercentage', { min: '1_SECOND', max: 'MAX', change: 1 }, exposes_1.access.STATE_GET));
1098
- }
1099
- result.configure = configure;
1100
- }
1101
- if (args.coverInverted || args.stateSource === 'tilt') {
1102
- const meta = {};
1103
- if (args.coverInverted)
1104
- meta.coverInverted = true;
1105
- if (args.stateSource === 'tilt')
1106
- meta.coverStateFromTilt = true;
1107
- result.meta = meta;
1108
- }
1109
- if (args.coverMode) {
1110
- result.toZigbee.push(toZigbee_1.default.cover_mode);
1111
- result.exposes.push(exposes_1.presets.cover_mode());
1112
- }
1113
- if (args.endpointNames) {
1114
- result.exposes = (0, utils_1.flatten)(exposes.map((expose) => args.endpointNames.map((endpoint) => expose.clone().withEndpoint(endpoint))));
1115
- }
1116
- return result;
1117
- }
1118
- function commandsWindowCovering(args) {
1119
- args = { commands: ['open', 'close', 'stop'], bind: true, ...args };
1120
- let actions = args.commands;
1121
- if (args.endpointNames) {
1122
- actions = args.commands.map((c) => args.endpointNames.map((e) => `${c}_${e}`)).flat();
1123
- }
1124
- const exposes = [
1125
- exposes_1.presets.enum('action', exposes_1.access.STATE, actions).withDescription('Triggered action (e.g. a button click)').withCategory('diagnostic'),
1126
- ];
1127
- const actionPayloadLookup = {
1128
- commandUpOpen: 'open',
1129
- commandDownClose: 'close',
1130
- commandStop: 'stop',
1131
- };
1132
- const fromZigbee = [
1133
- {
1134
- cluster: 'closuresWindowCovering',
1135
- type: ['commandUpOpen', 'commandDownClose', 'commandStop'],
1136
- convert: (model, msg, publish, options, meta) => {
1137
- if ((0, utils_1.hasAlreadyProcessedMessage)(msg, model))
1138
- return;
1139
- const payload = { action: (0, utils_1.postfixWithEndpointName)(actionPayloadLookup[msg.type], msg, model, meta) };
1140
- (0, utils_1.addActionGroup)(payload, msg, model);
1141
- return payload;
1142
- },
1143
- },
1144
- ];
1145
- const result = { exposes, fromZigbee, isModernExtend: true };
1146
- if (args.bind)
1147
- result.configure = [setupConfigureForBinding('closuresWindowCovering', 'output', args.endpointNames)];
1148
- return result;
1149
- }
1150
- function iasZoneAlarm(args) {
1151
- const exposes = [];
1152
- const invertAlarmPayload = args.zoneType === 'contact';
1153
- const bothAlarms = args.zoneAttributes.includes('alarm_1') && args.zoneAttributes.includes('alarm_2');
1154
- let alarm1Name = 'alarm_1';
1155
- let alarm2Name = 'alarm_2';
1156
- if (args.zoneType === 'generic') {
1157
- args.zoneAttributes.map((attr) => {
1158
- let expose = IAS_EXPOSE_LOOKUP[attr];
1159
- if (args.description) {
1160
- expose = expose.clone().withDescription(args.description);
1161
- }
1162
- exposes.push(expose);
1163
- });
1164
- }
1165
- else {
1166
- if (bothAlarms) {
1167
- exposes.push(exposes_1.presets
1168
- .binary(args.zoneType + '_alarm_1', exposes_1.access.STATE, true, false)
1169
- .withDescription(IAS_EXPOSE_LOOKUP[args.zoneType].description + ' (alarm_1)'));
1170
- alarm1Name = args.zoneType + '_alarm_1';
1171
- exposes.push(exposes_1.presets
1172
- .binary(args.zoneType + '_alarm_2', exposes_1.access.STATE, true, false)
1173
- .withDescription(IAS_EXPOSE_LOOKUP[args.zoneType].description + ' (alarm_2)'));
1174
- alarm2Name = args.zoneType + '_alarm_2';
1175
- }
1176
- else {
1177
- exposes.push(IAS_EXPOSE_LOOKUP[args.zoneType]);
1178
- alarm1Name = args.zoneType;
1179
- alarm2Name = args.zoneType;
1180
- }
1181
- args.zoneAttributes.map((attr) => {
1182
- if (attr !== 'alarm_1' && attr !== 'alarm_2')
1183
- exposes.push(IAS_EXPOSE_LOOKUP[attr]);
1184
- });
1185
- }
1186
- if (args.manufacturerZoneAttributes)
1187
- args.manufacturerZoneAttributes.map((attr) => {
1188
- let expose = exposes_1.presets.binary(attr.name, exposes_1.access.STATE, attr.valueOn, attr.valueOff).withDescription(attr.description);
1189
- if (attr.entityCategory)
1190
- expose = expose.withCategory(attr.entityCategory);
1191
- exposes.push(expose);
1192
- });
1193
- const timeoutProperty = `${args.zoneType}_timeout`;
1194
- const fromZigbee = [
1195
- {
1196
- cluster: 'ssIasZone',
1197
- type: ['commandStatusChangeNotification', 'attributeReport', 'readResponse'],
1198
- options: args.alarmTimeout
1199
- ? [
1200
- exposes_1.presets
1201
- .numeric(timeoutProperty, exposes_1.access.SET)
1202
- .withValueMin(0)
1203
- .withDescription(`Time in seconds after which ${args.zoneType} is cleared after detecting it (default 90 seconds).`),
1204
- ]
1205
- : [],
1206
- convert: (model, msg, publish, options, meta) => {
1207
- if (args.alarmTimeout) {
1208
- const timeout = options?.[timeoutProperty] !== undefined ? Number(options[timeoutProperty]) : 90;
1209
- clearTimeout(globalStore.getValue(msg.endpoint, 'timer'));
1210
- if (timeout !== 0) {
1211
- const timer = setTimeout(() => publish({ [alarm1Name]: false, [alarm2Name]: false }), timeout * 1000);
1212
- globalStore.putValue(msg.endpoint, 'timer', timer);
1213
- }
1214
- }
1215
- const isChange = msg.type === 'commandStatusChangeNotification';
1216
- const zoneStatus = isChange ? msg.data.zonestatus : msg.data.zoneStatus;
1217
- if (zoneStatus !== undefined) {
1218
- let payload = {};
1219
- if (args.zoneAttributes.includes('tamper')) {
1220
- payload = { tamper: (zoneStatus & (1 << 2)) > 0, ...payload };
1221
- }
1222
- if (args.zoneAttributes.includes('battery_low')) {
1223
- payload = { battery_low: (zoneStatus & (1 << 3)) > 0, ...payload };
1224
- }
1225
- if (args.zoneAttributes.includes('supervision_reports')) {
1226
- payload = { supervision_reports: (zoneStatus & (1 << 4)) > 0, ...payload };
1227
- }
1228
- if (args.zoneAttributes.includes('restore_reports')) {
1229
- payload = { restore_reports: (zoneStatus & (1 << 5)) > 0, ...payload };
1230
- }
1231
- if (args.zoneAttributes.includes('trouble')) {
1232
- payload = { trouble: (zoneStatus & (1 << 6)) > 0, ...payload };
1233
- }
1234
- if (args.zoneAttributes.includes('ac_status')) {
1235
- payload = { ac_status: (zoneStatus & (1 << 7)) > 0, ...payload };
1236
- }
1237
- if (args.zoneAttributes.includes('test')) {
1238
- payload = { test: (zoneStatus & (1 << 8)) > 0, ...payload };
1239
- }
1240
- if (args.zoneAttributes.includes('battery_defect')) {
1241
- payload = { battery_defect: (zoneStatus & (1 << 9)) > 0, ...payload };
1242
- }
1243
- let alarm1Payload = (zoneStatus & 1) > 0;
1244
- let alarm2Payload = (zoneStatus & (1 << 1)) > 0;
1245
- if (invertAlarmPayload) {
1246
- alarm1Payload = !alarm1Payload;
1247
- alarm2Payload = !alarm2Payload;
1248
- }
1249
- // Can't just alarm1Payload || alarm2Payload as an unused alarm's bit might be always 1 or random in the received data
1250
- let addTimeout = false;
1251
- if (args.zoneAttributes.includes('alarm_1')) {
1252
- payload = { [alarm1Name]: alarm1Payload, ...payload };
1253
- addTimeout ||= alarm1Payload;
1254
- }
1255
- if (args.zoneAttributes.includes('alarm_2')) {
1256
- payload = { [alarm2Name]: alarm2Payload, ...payload };
1257
- addTimeout ||= alarm2Payload;
1258
- }
1259
- if (isChange && args.keepAliveTimeout > 0) {
1260
- // This sensor continuously sends occupation updates as long as motion is detected; (re)start a timeout
1261
- // each time we receive one, in case the clearance message gets lost. Normally, these kinds of sensors
1262
- // send a clearance message, so this is an additional safety measure.
1263
- clearTimeout(globalStore.getValue(msg.endpoint, 'timeout'));
1264
- if (addTimeout) {
1265
- // At least one zone active
1266
- const timer = setTimeout(() => publish({ [alarm1Name]: false, [alarm2Name]: false }), args.keepAliveTimeout * 1000);
1267
- globalStore.putValue(msg.endpoint, 'timeout', timer);
1268
- }
1269
- else {
1270
- globalStore.clearValue(msg.endpoint, 'timeout');
1271
- }
1272
- }
1273
- if (args.manufacturerZoneAttributes)
1274
- args.manufacturerZoneAttributes.map((attr) => {
1275
- payload = { [attr.name]: (zoneStatus & (1 << attr.bit)) > 0, ...payload };
1276
- });
1277
- return payload;
1278
- }
1279
- },
1280
- },
1281
- ];
1282
- let configure;
1283
- if (args.zoneStatusReporting) {
1284
- configure = [
1285
- async (device, coordinatorEndpoint) => {
1286
- await setupAttributes(device, coordinatorEndpoint, 'ssIasZone', [{ attribute: 'zoneStatus', min: 'MIN', max: 'MAX', change: 0 }]);
1287
- },
1288
- ];
1289
- }
1290
- return { fromZigbee, exposes, isModernExtend: true, ...(configure && { configure }) };
1291
- }
1292
- function iasWarning(args) {
1293
- const warningMode = { stop: 0, burglar: 1, fire: 2, emergency: 3, police_panic: 4, fire_panic: 5, emergency_panic: 6 };
1294
- // levels for siren, strobe and squawk are identical
1295
- const level = { low: 0, medium: 1, high: 2, very_high: 3 };
1296
- const exposes = [
1297
- exposes_1.presets
1298
- .composite('warning', 'warning', exposes_1.access.SET)
1299
- .withFeature(exposes_1.presets.enum('mode', exposes_1.access.SET, Object.keys(warningMode)).withDescription('Mode of the warning (sound effect)'))
1300
- .withFeature(exposes_1.presets.enum('level', exposes_1.access.SET, Object.keys(level)).withDescription('Sound level'))
1301
- .withFeature(exposes_1.presets.enum('strobe_level', exposes_1.access.SET, Object.keys(level)).withDescription('Intensity of the strobe'))
1302
- .withFeature(exposes_1.presets.binary('strobe', exposes_1.access.SET, true, false).withDescription('Turn on/off the strobe (light) during warning'))
1303
- .withFeature(exposes_1.presets.numeric('strobe_duty_cycle', exposes_1.access.SET).withValueMax(10).withValueMin(0).withDescription('Length of the flash cycle'))
1304
- .withFeature(exposes_1.presets.numeric('duration', exposes_1.access.SET).withUnit('s').withDescription('Duration in seconds of the alarm')),
1305
- ];
1306
- const toZigbee = [
1307
- {
1308
- key: ['warning'],
1309
- convertSet: async (entity, key, value, meta) => {
1310
- const values = {
1311
- // @ts-expect-error ignore
1312
- mode: value.mode || 'emergency',
1313
- // @ts-expect-error ignore
1314
- level: value.level || 'medium',
1315
- // @ts-expect-error ignore
1316
- strobe: value.strobe !== undefined ? value.strobe : true,
1317
- // @ts-expect-error ignore
1318
- duration: value.duration !== undefined ? value.duration : 10,
1319
- // @ts-expect-error ignore
1320
- strobeDutyCycle: value.strobe_duty_cycle !== undefined ? value.strobe_duty_cycle * 10 : 0,
1321
- // @ts-expect-error ignore
1322
- strobeLevel: value.strobe_level !== undefined ? utils.getFromLookup(value.strobe_level, strobeLevel) : 1,
1323
- };
1324
- let info;
1325
- if (args?.reversePayload) {
1326
- info = (0, utils_1.getFromLookup)(values.mode, warningMode) + ((values.strobe ? 1 : 0) << 4) + ((0, utils_1.getFromLookup)(values.level, level) << 6);
1327
- }
1328
- else {
1329
- info = ((0, utils_1.getFromLookup)(values.mode, warningMode) << 4) + ((values.strobe ? 1 : 0) << 2) + (0, utils_1.getFromLookup)(values.level, level);
1330
- }
1331
- const payload = {
1332
- startwarninginfo: info,
1333
- warningduration: values.duration,
1334
- strobedutycycle: values.strobeDutyCycle,
1335
- strobelevel: values.strobeLevel,
1336
- };
1337
- await entity.command('ssIasWd', 'startWarning', payload, (0, utils_1.getOptions)(meta.mapped, entity));
1338
- },
1339
- },
1340
- ];
1341
- return { toZigbee, exposes, isModernExtend: true };
1342
- }
1343
- function electricityMeter(args) {
1344
- args = {
1345
- cluster: 'both',
1346
- electricalMeasurementType: 'ac',
1347
- configureReporting: true,
1348
- threePhase: false,
1349
- producedEnergy: false,
1350
- acFrequency: false,
1351
- powerFactor: false,
1352
- ...args,
1353
- };
1354
- if (args.cluster !== 'electrical') {
1355
- const divisors = new Set([
1356
- args.cluster === 'metering' && (0, utils_1.isObject)(args.power) ? args.power?.divisor : false,
1357
- (0, utils_1.isObject)(args.energy) ? args.energy?.divisor : false,
1358
- (0, utils_1.isObject)(args.producedEnergy) ? args.producedEnergy?.divisor : false,
1359
- ]);
1360
- divisors.delete(false);
1361
- const multipliers = new Set([
1362
- args.cluster === 'metering' && (0, utils_1.isObject)(args.power) ? args.power?.multiplier : false,
1363
- (0, utils_1.isObject)(args.energy) ? args.energy?.multiplier : false,
1364
- (0, utils_1.isObject)(args.producedEnergy) ? args.producedEnergy?.multiplier : false,
1365
- ]);
1366
- multipliers.delete(false);
1367
- if (multipliers.size > 1 || divisors.size > 1) {
1368
- throw new Error(`When cluster is metering, power and energy divisor/multiplier should be equal, got divisors=${Array.from(divisors).join(', ')}, multipliers=${Array.from(multipliers).join(', ')}`);
1369
- }
1370
- }
1371
- if (args.cluster === 'electrical' && args.producedEnergy) {
1372
- throw new Error(`Produced energy is not supported with cluster 'electrical', use 'both' or 'metering'`);
1373
- }
1374
- if (args.cluster === 'metering' && args.acFrequency) {
1375
- throw new Error(`AC frequency is not supported with cluster 'metering', use 'both' or 'electrical'`);
1376
- }
1377
- if (args.cluster === 'metering' && args.powerFactor) {
1378
- throw new Error(`Power factor is not supported with cluster 'metering', use 'both' or 'electrical'`);
1379
- }
1380
- if (args.cluster === 'metering' && args.electricalMeasurementType === 'dc') {
1381
- throw new Error(`DC attributes are not supported with cluster 'metering', use 'both' or 'ac'`);
1382
- }
1383
- let exposes = [];
1384
- let fromZigbee;
1385
- let toZigbee;
1386
- const configureLookup = {
1387
- haElectricalMeasurement: {
1388
- // Report change with every 5W change
1389
- power: { attribute: 'activePower', divisor: 'acPowerDivisor', multiplier: 'acPowerMultiplier', forced: args.power, change: 5 },
1390
- power_phase_b: { attribute: 'activePowerPhB', divisor: 'acPowerDivisor', multiplier: 'acPowerMultiplier', forced: args.power, change: 5 },
1391
- power_phase_c: { attribute: 'activePowerPhC', divisor: 'acPowerDivisor', multiplier: 'acPowerMultiplier', forced: args.power, change: 5 },
1392
- // Report change with every 0.05A change
1393
- current: { attribute: 'rmsCurrent', divisor: 'acCurrentDivisor', multiplier: 'acCurrentMultiplier', forced: args.current, change: 0.05 },
1394
- // Report change every 1 Hz
1395
- ac_frequency: {
1396
- attribute: 'acFrequency',
1397
- divisor: 'acFrequencyDivisor',
1398
- multiplier: 'acFrequencyMultiplier',
1399
- forced: (0, utils_1.isObject)(args.acFrequency) ? args.acFrequency : false,
1400
- change: 1,
1401
- },
1402
- current_phase_b: {
1403
- attribute: 'rmsCurrentPhB',
1404
- divisor: 'acCurrentDivisor',
1405
- multiplier: 'acCurrentMultiplier',
1406
- forced: args.current,
1407
- change: 0.05,
1408
- },
1409
- current_phase_c: {
1410
- attribute: 'rmsCurrentPhC',
1411
- divisor: 'acCurrentDivisor',
1412
- multiplier: 'acCurrentMultiplier',
1413
- forced: args.current,
1414
- change: 0.05,
1415
- },
1416
- power_factor: {
1417
- attribute: 'powerFactor',
1418
- change: 10,
1419
- },
1420
- // Report change with every 5V change
1421
- voltage: { attribute: 'rmsVoltage', divisor: 'acVoltageDivisor', multiplier: 'acVoltageMultiplier', forced: args.voltage, change: 5 },
1422
- voltage_phase_b: {
1423
- attribute: 'rmsVoltagePhB',
1424
- divisor: 'acVoltageDivisor',
1425
- multiplier: 'acVoltageMultiplier',
1426
- forced: args.voltage,
1427
- change: 5,
1428
- },
1429
- voltage_phase_c: {
1430
- attribute: 'rmsVoltagePhC',
1431
- divisor: 'acVoltageDivisor',
1432
- multiplier: 'acVoltageMultiplier',
1433
- forced: args.voltage,
1434
- change: 5,
1435
- },
1436
- // Report change with every 100mW change
1437
- dc_power: { attribute: 'dcPower', divisor: 'dcPowerDivisor', multiplier: 'dcPowerMultiplier', forced: args.power, change: 100 },
1438
- // Report change with every 100mV change
1439
- dc_voltage: { attribute: 'dcVoltage', divisor: 'dcVoltageDivisor', multiplier: 'dcVoltageMultiplier', forced: args.voltage, change: 100 },
1440
- // Report change with every 100mA change
1441
- dc_current: { attribute: 'dcCurrent', divisor: 'dcCurrentDivisor', multiplier: 'dcCurrentMultiplier', forced: args.current, change: 100 },
1442
- },
1443
- seMetering: {
1444
- // Report change with every 5W change
1445
- power: { attribute: 'instantaneousDemand', divisor: 'divisor', multiplier: 'multiplier', forced: args.power, change: 0.005 },
1446
- // Report change with every 0.1kWh change
1447
- energy: { attribute: 'currentSummDelivered', divisor: 'divisor', multiplier: 'multiplier', forced: args.energy, change: 0.1 },
1448
- produced_energy: {
1449
- attribute: 'currentSummReceived',
1450
- divisor: 'divisor',
1451
- multiplier: 'multiplier',
1452
- forced: (0, utils_1.isObject)(args.producedEnergy) ? args.producedEnergy : false,
1453
- change: 0.1,
1454
- },
1455
- },
1456
- };
1457
- if (args.power === false) {
1458
- delete configureLookup.haElectricalMeasurement.power;
1459
- delete configureLookup.seMetering.power;
1460
- delete configureLookup.haElectricalMeasurement.power_phase_b;
1461
- delete configureLookup.haElectricalMeasurement.power_phase_c;
1462
- delete configureLookup.haElectricalMeasurement.dc_power;
1463
- }
1464
- if (args.voltage === false) {
1465
- delete configureLookup.haElectricalMeasurement.voltage;
1466
- delete configureLookup.haElectricalMeasurement.voltage_phase_b;
1467
- delete configureLookup.haElectricalMeasurement.voltage_phase_c;
1468
- delete configureLookup.haElectricalMeasurement.dc_voltage;
1469
- }
1470
- if (args.current === false) {
1471
- delete configureLookup.haElectricalMeasurement.current;
1472
- delete configureLookup.haElectricalMeasurement.current_phase_b;
1473
- delete configureLookup.haElectricalMeasurement.current_phase_c;
1474
- delete configureLookup.haElectricalMeasurement.dc_current;
1475
- }
1476
- if (args.energy === false) {
1477
- delete configureLookup.seMetering.energy;
1478
- }
1479
- if (args.producedEnergy === false) {
1480
- delete configureLookup.seMetering.produced_energy;
1481
- }
1482
- if (args.powerFactor === false) {
1483
- delete configureLookup.haElectricalMeasurement.power_factor;
1484
- }
1485
- if (args.acFrequency === false) {
1486
- delete configureLookup.haElectricalMeasurement.ac_frequency;
1487
- }
1488
- if (args.threePhase === false) {
1489
- delete configureLookup.haElectricalMeasurement.power_phase_b;
1490
- delete configureLookup.haElectricalMeasurement.power_phase_c;
1491
- delete configureLookup.haElectricalMeasurement.current_phase_b;
1492
- delete configureLookup.haElectricalMeasurement.current_phase_c;
1493
- delete configureLookup.haElectricalMeasurement.voltage_phase_b;
1494
- delete configureLookup.haElectricalMeasurement.voltage_phase_c;
1495
- }
1496
- if (args.electricalMeasurementType === 'dc') {
1497
- delete configureLookup.haElectricalMeasurement.power;
1498
- delete configureLookup.haElectricalMeasurement.voltage;
1499
- delete configureLookup.haElectricalMeasurement.current;
1500
- delete configureLookup.haElectricalMeasurement.power_factor;
1501
- delete configureLookup.haElectricalMeasurement.ac_frequency;
1502
- delete configureLookup.haElectricalMeasurement.power_phase_b;
1503
- delete configureLookup.haElectricalMeasurement.power_phase_c;
1504
- delete configureLookup.haElectricalMeasurement.current_phase_b;
1505
- delete configureLookup.haElectricalMeasurement.current_phase_c;
1506
- delete configureLookup.haElectricalMeasurement.voltage_phase_b;
1507
- delete configureLookup.haElectricalMeasurement.voltage_phase_c;
1508
- }
1509
- if (args.electricalMeasurementType === 'ac') {
1510
- delete configureLookup.haElectricalMeasurement.dc_power;
1511
- delete configureLookup.haElectricalMeasurement.dc_voltage;
1512
- delete configureLookup.haElectricalMeasurement.dc_current;
1513
- }
1514
- if (args.cluster === 'both') {
1515
- if (args.power !== false)
1516
- exposes.push(exposes_1.presets.power().withAccess(exposes_1.access.STATE_GET));
1517
- if (args.voltage !== false)
1518
- exposes.push(exposes_1.presets.voltage().withAccess(exposes_1.access.STATE_GET));
1519
- if (args.acFrequency !== false)
1520
- exposes.push(exposes_1.presets.ac_frequency().withAccess(exposes_1.access.STATE_GET));
1521
- if (args.powerFactor !== false)
1522
- exposes.push(exposes_1.presets.power_factor().withAccess(exposes_1.access.STATE_GET));
1523
- if (args.current !== false)
1524
- exposes.push(exposes_1.presets.current().withAccess(exposes_1.access.STATE_GET));
1525
- if (args.energy !== false)
1526
- exposes.push(exposes_1.presets.energy().withAccess(exposes_1.access.STATE_GET));
1527
- if (args.producedEnergy !== false)
1528
- exposes.push(exposes_1.presets.produced_energy().withAccess(exposes_1.access.STATE_GET));
1529
- fromZigbee = [args.fzElectricalMeasurement ?? fromZigbee_1.default.electrical_measurement, args.fzMetering ?? fromZigbee_1.default.metering];
1530
- toZigbee = [
1531
- toZigbee_1.default.electrical_measurement_power,
1532
- toZigbee_1.default.acvoltage,
1533
- toZigbee_1.default.accurrent,
1534
- toZigbee_1.default.currentsummdelivered,
1535
- toZigbee_1.default.currentsummreceived,
1536
- toZigbee_1.default.frequency,
1537
- toZigbee_1.default.powerfactor,
1538
- ];
1539
- delete configureLookup.seMetering.power;
1540
- }
1541
- else if (args.cluster === 'metering') {
1542
- if (args.power !== false)
1543
- exposes.push(exposes_1.presets.power().withAccess(exposes_1.access.STATE_GET));
1544
- if (args.energy !== false)
1545
- exposes.push(exposes_1.presets.energy().withAccess(exposes_1.access.STATE_GET));
1546
- if (args.producedEnergy !== false)
1547
- exposes.push(exposes_1.presets.produced_energy().withAccess(exposes_1.access.STATE_GET));
1548
- fromZigbee = [args.fzMetering ?? fromZigbee_1.default.metering];
1549
- toZigbee = [toZigbee_1.default.metering_power, toZigbee_1.default.currentsummdelivered, toZigbee_1.default.currentsummreceived];
1550
- delete configureLookup.haElectricalMeasurement;
1551
- }
1552
- else if (args.cluster === 'electrical') {
1553
- if (args.power !== false)
1554
- exposes.push(exposes_1.presets.power().withAccess(exposes_1.access.STATE_GET));
1555
- if (args.voltage !== false)
1556
- exposes.push(exposes_1.presets.voltage().withAccess(exposes_1.access.STATE_GET));
1557
- if (args.current !== false)
1558
- exposes.push(exposes_1.presets.current().withAccess(exposes_1.access.STATE_GET));
1559
- if (args.acFrequency !== false)
1560
- exposes.push(exposes_1.presets.ac_frequency().withAccess(exposes_1.access.STATE_GET));
1561
- if (args.powerFactor !== false)
1562
- exposes.push(exposes_1.presets.power_factor().withAccess(exposes_1.access.STATE_GET));
1563
- fromZigbee = [args.fzElectricalMeasurement ?? fromZigbee_1.default.electrical_measurement];
1564
- toZigbee = [toZigbee_1.default.electrical_measurement_power, toZigbee_1.default.acvoltage, toZigbee_1.default.accurrent, toZigbee_1.default.frequency, toZigbee_1.default.powerfactor];
1565
- delete configureLookup.seMetering;
1566
- }
1567
- if (args.threePhase === true) {
1568
- exposes.push(exposes_1.presets.power_phase_b().withAccess(exposes_1.access.STATE_GET), exposes_1.presets.power_phase_c().withAccess(exposes_1.access.STATE_GET), exposes_1.presets.voltage_phase_b().withAccess(exposes_1.access.STATE_GET), exposes_1.presets.voltage_phase_c().withAccess(exposes_1.access.STATE_GET), exposes_1.presets.current_phase_b().withAccess(exposes_1.access.STATE_GET), exposes_1.presets.current_phase_c().withAccess(exposes_1.access.STATE_GET));
1569
- toZigbee.push(toZigbee_1.default.electrical_measurement_power_phase_b, toZigbee_1.default.electrical_measurement_power_phase_c, toZigbee_1.default.acvoltage_phase_b, toZigbee_1.default.acvoltage_phase_c, toZigbee_1.default.accurrent_phase_b, toZigbee_1.default.accurrent_phase_c);
1570
- }
1571
- if (args.endpointNames) {
1572
- exposes = (0, utils_1.flatten)(exposes.map((expose) => args.endpointNames.map((endpoint) => expose.clone().withEndpoint(endpoint))));
1573
- }
1574
- const result = { exposes, fromZigbee, toZigbee, isModernExtend: true };
1575
- if (args.configureReporting) {
1576
- result.configure = [
1577
- async (device, coordinatorEndpoint) => {
1578
- for (const [cluster, properties] of Object.entries(configureLookup)) {
1579
- for (const endpoint of getEndpointsWithCluster(device, cluster, 'input')) {
1580
- const items = [];
1581
- for (const property of Object.values(properties)) {
1582
- let change = property.change;
1583
- let min = '10_SECONDS';
1584
- let max = 'MAX';
1585
- // Check if this property has a divisor and multiplier, e.g. AC frequency doesn't.
1586
- if ('divisor' in property) {
1587
- // In case multiplier or divisor was provided, use that instead of reading from device.
1588
- if (property.forced && (property.forced.divisor || property.forced.multiplier)) {
1589
- endpoint.saveClusterAttributeKeyValue(cluster, {
1590
- [property.divisor]: property.forced.divisor ?? 1,
1591
- [property.multiplier]: property.forced.multiplier ?? 1,
1592
- });
1593
- endpoint.save();
1594
- }
1595
- else {
1596
- await endpoint.read(cluster, [property.divisor, property.multiplier]);
1597
- }
1598
- const divisor = endpoint.getClusterAttributeValue(cluster, property.divisor);
1599
- (0, utils_1.assertNumber)(divisor, property.divisor);
1600
- const multiplier = endpoint.getClusterAttributeValue(cluster, property.multiplier);
1601
- (0, utils_1.assertNumber)(multiplier, property.multiplier);
1602
- change = property.change * (divisor / multiplier);
1603
- }
1604
- if ('forced' in property && property.forced) {
1605
- if ('min' in property.forced) {
1606
- min = property.forced.min;
1607
- }
1608
- if ('max' in property.forced) {
1609
- max = property.forced.max;
1610
- }
1611
- if ('change' in property.forced) {
1612
- change = property.forced.change;
1613
- }
1614
- }
1615
- items.push({ attribute: property.attribute, min, max, change });
1616
- }
1617
- if (items.length) {
1618
- await setupAttributes(endpoint, coordinatorEndpoint, cluster, items);
1619
- }
1620
- }
1621
- }
1622
- },
1623
- ];
1624
- }
1625
- return result;
1626
- }
1627
- function commandsScenes(args) {
1628
- args = { commands: ['recall', 'store', 'add', 'remove', 'remove_all'], bind: true, ...args };
1629
- let actions = args.commands;
1630
- if (args.endpointNames) {
1631
- actions = args.commands.map((c) => args.endpointNames.map((e) => `${c}_${e}`)).flat();
1632
- }
1633
- const exposesArray = [exposes_1.presets.enum('action', exposes_1.access.STATE, actions).withDescription('Triggered scene action (e.g. recall a scene)')];
1634
- const actionPayloadLookup = {
1635
- commandRecall: 'recall',
1636
- commandStore: 'store',
1637
- commandAdd: 'add',
1638
- commandRemove: 'remove',
1639
- commandRemoveAll: 'remove_all',
1640
- };
1641
- const fromZigbee = [
1642
- {
1643
- cluster: 'genScenes',
1644
- type: ['commandRecall', 'commandStore', 'commandAdd', 'commandRemove', 'commandRemoveAll'],
1645
- convert: (model, msg, publish, options, meta) => {
1646
- if ((0, utils_1.hasAlreadyProcessedMessage)(msg, model))
1647
- return;
1648
- let trailing = '';
1649
- if (msg.type === 'commandRecall' || msg.type === 'commandStore') {
1650
- trailing = `_${msg.data.sceneid}`;
1651
- }
1652
- const payload = {
1653
- action: (0, utils_1.postfixWithEndpointName)(actionPayloadLookup[msg.type] + trailing, msg, model, meta),
1654
- };
1655
- (0, utils_1.addActionGroup)(payload, msg, model);
1656
- return payload;
1657
- },
1658
- },
1659
- ];
1660
- const result = { exposes: exposesArray, fromZigbee, isModernExtend: true };
1661
- if (args.bind)
1662
- result.configure = [setupConfigureForBinding('genScenes', 'output', args.endpointNames)];
1663
- return result;
1664
- }
1665
- function enumLookup(args) {
1666
- const { name, lookup, cluster, attribute, description, zigbeeCommandOptions, endpointName, reporting, entityCategory } = args;
1667
- const attributeKey = (0, utils_1.isString)(attribute) ? attribute : attribute.ID;
1668
- const access = exposes_1.access[args.access ?? 'ALL'];
1669
- let expose = exposes_1.presets.enum(name, access, Object.keys(lookup)).withDescription(description);
1670
- if (endpointName)
1671
- expose = expose.withEndpoint(endpointName);
1672
- if (entityCategory)
1673
- expose = expose.withCategory(entityCategory);
1674
- const fromZigbee = [
1675
- {
1676
- cluster: cluster.toString(),
1677
- type: ['attributeReport', 'readResponse'],
1678
- convert: (model, msg, publish, options, meta) => {
1679
- if (attributeKey in msg.data && (!endpointName || (0, utils_1.getEndpointName)(msg, model, meta) === endpointName)) {
1680
- // skip undefined value
1681
- if (msg.data[attributeKey] !== undefined)
1682
- return { [expose.property]: (0, utils_1.getFromLookupByValue)(msg.data[attributeKey], lookup) };
1683
- }
1684
- },
1685
- },
1686
- ];
1687
- const toZigbee = [
1688
- {
1689
- key: [name],
1690
- convertSet: access & exposes_1.access.SET
1691
- ? async (entity, key, value, meta) => {
1692
- const payloadValue = (0, utils_1.getFromLookup)(value, lookup);
1693
- const payload = (0, utils_1.isString)(attribute)
1694
- ? { [attribute]: payloadValue }
1695
- : { [attribute.ID]: { value: payloadValue, type: attribute.type } };
1696
- await determineEndpoint(entity, meta, cluster).write(cluster, payload, zigbeeCommandOptions);
1697
- return { state: { [key]: value } };
1698
- }
1699
- : undefined,
1700
- convertGet: access & exposes_1.access.GET
1701
- ? async (entity, key, meta) => {
1702
- await determineEndpoint(entity, meta, cluster).read(cluster, [attributeKey], zigbeeCommandOptions);
1703
- }
1704
- : undefined,
1705
- },
1706
- ];
1707
- const configure = [setupConfigureForReporting(cluster, attribute, reporting, access)];
1708
- return { exposes: [expose], fromZigbee, toZigbee, configure, isModernExtend: true };
1709
- }
1710
- function numeric(args) {
1711
- const { name, cluster, attribute, description, zigbeeCommandOptions, unit, reporting, valueMin, valueMax, valueStep, valueIgnore, scale, label, entityCategory, precision, } = args;
1712
- const endpoints = args.endpointNames;
1713
- const attributeKey = (0, utils_1.isString)(attribute) ? attribute : attribute.ID;
1714
- const access = exposes_1.access[args.access ?? 'ALL'];
1715
- const exposes = [];
1716
- const createExpose = (endpoint) => {
1717
- let expose = exposes_1.presets.numeric(name, access).withDescription(description);
1718
- if (endpoint)
1719
- expose = expose.withEndpoint(endpoint);
1720
- if (unit)
1721
- expose = expose.withUnit(unit);
1722
- if (valueMin !== undefined)
1723
- expose = expose.withValueMin(valueMin);
1724
- if (valueMax !== undefined)
1725
- expose = expose.withValueMax(valueMax);
1726
- if (valueStep !== undefined)
1727
- expose = expose.withValueStep(valueStep);
1728
- if (label !== undefined)
1729
- expose = expose.withLabel(label);
1730
- if (entityCategory)
1731
- expose = expose.withCategory(entityCategory);
1732
- return expose;
1733
- };
1734
- // Generate for multiple endpoints only if required.
1735
- if (!endpoints) {
1736
- exposes.push(createExpose(undefined));
1737
- }
1738
- else {
1739
- for (const endpoint of endpoints) {
1740
- exposes.push(createExpose(endpoint));
1741
- }
1742
- }
1743
- const fromZigbee = [
1744
- {
1745
- cluster: cluster.toString(),
1746
- type: ['attributeReport', 'readResponse'],
1747
- convert: (model, msg, publish, options, meta) => {
1748
- if (attributeKey in msg.data) {
1749
- const endpoint = endpoints?.find((e) => (0, utils_1.getEndpointName)(msg, model, meta) === e);
1750
- if (endpoints && !endpoint) {
1751
- return;
1752
- }
1753
- let value = msg.data[attributeKey];
1754
- (0, utils_1.assertNumber)(value);
1755
- if (valueIgnore && valueIgnore.includes(value))
1756
- return;
1757
- if (scale !== undefined) {
1758
- value = typeof scale === 'number' ? value / scale : scale(value, 'from');
1759
- }
1760
- (0, utils_1.assertNumber)(value);
1761
- if (precision != null)
1762
- value = (0, utils_1.precisionRound)(value, precision);
1763
- const expose = exposes.length === 1 ? exposes[0] : exposes.find((e) => e.endpoint === endpoint);
1764
- return { [expose.property]: value };
1765
- }
1766
- },
1767
- },
1768
- ];
1769
- const toZigbee = [
1770
- {
1771
- key: [name],
1772
- convertSet: access & exposes_1.access.SET
1773
- ? async (entity, key, value, meta) => {
1774
- (0, utils_1.assertNumber)(value, key);
1775
- let payloadValue = value;
1776
- if (scale !== undefined) {
1777
- payloadValue = typeof scale === 'number' ? payloadValue * scale : scale(payloadValue, 'to');
1778
- }
1779
- (0, utils_1.assertNumber)(payloadValue);
1780
- if (precision != null)
1781
- payloadValue = (0, utils_1.precisionRound)(payloadValue, precision);
1782
- const payload = (0, utils_1.isString)(attribute)
1783
- ? { [attribute]: payloadValue }
1784
- : { [attribute.ID]: { value: payloadValue, type: attribute.type } };
1785
- await determineEndpoint(entity, meta, cluster).write(cluster, payload, zigbeeCommandOptions);
1786
- return { state: { [key]: value } };
1787
- }
1788
- : undefined,
1789
- convertGet: access & exposes_1.access.GET
1790
- ? async (entity, key, meta) => {
1791
- await determineEndpoint(entity, meta, cluster).read(cluster, [attributeKey], zigbeeCommandOptions);
1792
- }
1793
- : undefined,
1794
- },
1795
- ];
1796
- const configure = [];
1797
- if (reporting) {
1798
- configure.push(setupConfigureForReporting(cluster, attribute, reporting, access, endpoints));
1799
- }
1800
- return { exposes, fromZigbee, toZigbee, configure, isModernExtend: true };
1801
- }
1802
- function binary(args) {
1803
- const { name, valueOn, valueOff, cluster, attribute, description, zigbeeCommandOptions, endpointName, reporting, entityCategory } = args;
1804
- const attributeKey = (0, utils_1.isString)(attribute) ? attribute : attribute.ID;
1805
- const access = exposes_1.access[args.access ?? 'ALL'];
1806
- let expose = exposes_1.presets.binary(name, access, valueOn[0], valueOff[0]).withDescription(description);
1807
- if (endpointName)
1808
- expose = expose.withEndpoint(endpointName);
1809
- if (entityCategory)
1810
- expose = expose.withCategory(entityCategory);
1811
- const fromZigbee = [
1812
- {
1813
- cluster: cluster.toString(),
1814
- type: ['attributeReport', 'readResponse'],
1815
- convert: (model, msg, publish, options, meta) => {
1816
- if (attributeKey in msg.data && (!endpointName || (0, utils_1.getEndpointName)(msg, model, meta) === endpointName)) {
1817
- return { [expose.property]: msg.data[attributeKey] === valueOn[1] ? valueOn[0] : valueOff[0] };
1818
- }
1819
- },
1820
- },
1821
- ];
1822
- const toZigbee = [
1823
- {
1824
- key: [name],
1825
- convertSet: access & exposes_1.access.SET
1826
- ? async (entity, key, value, meta) => {
1827
- const payloadValue = value === valueOn[0] ? valueOn[1] : valueOff[1];
1828
- const payload = (0, utils_1.isString)(attribute)
1829
- ? { [attribute]: payloadValue }
1830
- : { [attribute.ID]: { value: payloadValue, type: attribute.type } };
1831
- await determineEndpoint(entity, meta, cluster).write(cluster, payload, zigbeeCommandOptions);
1832
- return { state: { [key]: value } };
1833
- }
1834
- : undefined,
1835
- convertGet: access & exposes_1.access.GET
1836
- ? async (entity, key, meta) => {
1837
- await determineEndpoint(entity, meta, cluster).read(cluster, [attributeKey], zigbeeCommandOptions);
1838
- }
1839
- : undefined,
1840
- },
1841
- ];
1842
- const configure = [];
1843
- if (reporting) {
1844
- configure.push(setupConfigureForReporting(cluster, attribute, reporting, access));
1845
- }
1846
- return { exposes: [expose], fromZigbee, toZigbee, configure, isModernExtend: true };
1847
- }
1848
- function text(args) {
1849
- const { name, cluster, attribute, description, zigbeeCommandOptions, endpointName, reporting, entityCategory, validate } = args;
1850
- const attributeKey = (0, utils_1.isString)(attribute) ? attribute : attribute.ID;
1851
- const access = exposes_1.access[args.access ?? 'ALL'];
1852
- let expose = exposes_1.presets.text(name, access).withDescription(description);
1853
- if (endpointName)
1854
- expose = expose.withEndpoint(endpointName);
1855
- if (entityCategory)
1856
- expose = expose.withCategory(entityCategory);
1857
- const fromZigbee = [
1858
- {
1859
- cluster: cluster.toString(),
1860
- type: ['attributeReport', 'readResponse'],
1861
- convert: (model, msg, publish, options, meta) => {
1862
- if (attributeKey in msg.data && (!endpointName || (0, utils_1.getEndpointName)(msg, model, meta) === endpointName)) {
1863
- return { [expose.property]: msg.data[attributeKey] };
1864
- }
1865
- },
1866
- },
1867
- ];
1868
- const toZigbee = [
1869
- {
1870
- key: [name],
1871
- convertSet: access & exposes_1.access.SET
1872
- ? async (entity, key, value, meta) => {
1873
- void validate(value);
1874
- const payload = (0, utils_1.isString)(attribute) ? { [attribute]: value } : { [attribute.ID]: { value, type: attribute.type } };
1875
- await determineEndpoint(entity, meta, cluster).write(cluster, payload, zigbeeCommandOptions);
1876
- return { state: { [key]: value } };
1877
- }
1878
- : undefined,
1879
- convertGet: access & exposes_1.access.GET
1880
- ? async (entity, key, meta) => {
1881
- await determineEndpoint(entity, meta, cluster).read(cluster, [attributeKey], zigbeeCommandOptions);
1882
- }
1883
- : undefined,
1884
- },
1885
- ];
1886
- const configure = [setupConfigureForReporting(cluster, attribute, reporting, access)];
1887
- return { exposes: [expose], fromZigbee, toZigbee, configure, isModernExtend: true };
1888
- }
1889
- function actionEnumLookup(args) {
1890
- const { actionLookup: lookup, attribute, cluster, buttonLookup } = args;
1891
- const attributeKey = (0, utils_1.isString)(attribute) ? attribute : attribute.ID;
1892
- const commands = args.commands || ['attributeReport', 'readResponse'];
1893
- const parse = args.parse;
1894
- let actions = Object.keys(lookup)
1895
- .map((a) => (args.endpointNames ? args.endpointNames.map((e) => `${a}_${e}`) : [a]))
1896
- .flat();
1897
- // allows direct external input to be used by other extends in the same device
1898
- if (args.extraActions)
1899
- actions = actions.concat(args.extraActions);
1900
- const expose = exposes_1.presets.enum('action', exposes_1.access.STATE, actions).withDescription('Triggered action (e.g. a button click)').withCategory('diagnostic');
1901
- const fromZigbee = [
1902
- {
1903
- cluster: cluster.toString(),
1904
- type: commands,
1905
- convert: (model, msg, publish, options, meta) => {
1906
- if (attributeKey in msg.data) {
1907
- let value = parse ? parse(msg, attributeKey) : msg.data[attributeKey];
1908
- value = (0, utils_1.getFromLookupByValue)(value, lookup);
1909
- // endpointNames is used when action endpoint names don't overlap with other endpoint names
1910
- if (args.endpointNames)
1911
- value = (0, utils_1.postfixWithEndpointName)(value, msg, model, meta);
1912
- // buttonLookup is used when action endpoint names overlap with other endpoint names
1913
- if (args.buttonLookup) {
1914
- const endpointName = (0, utils_1.getFromLookupByValue)(msg.endpoint.ID, buttonLookup);
1915
- value = `${value}_${endpointName}`;
1916
- }
1917
- return { [expose.property]: value };
1918
- }
1919
- },
1920
- },
1921
- ];
1922
- return { exposes: [expose], fromZigbee, isModernExtend: true };
1923
- }
1924
- function quirkAddEndpointCluster(args) {
1925
- const { endpointID, inputClusters, outputClusters } = args;
1926
- const configure = [
1927
- async (device, coordinatorEndpoint, definition) => {
1928
- const endpoint = device.getEndpoint(endpointID);
1929
- if (endpoint == undefined) {
1930
- logger_1.logger.error(`Quirk: cannot add clusters to endpoint ${endpointID}, endpoint does not exist!`, 'zhc:quirkaddendpointcluster');
1931
- return;
1932
- }
1933
- inputClusters?.forEach((cluster) => {
1934
- const clusterID = (0, utils_1.isString)(cluster) ? zigbee_herdsman_1.Zcl.Utils.getCluster(cluster, device.manufacturerID, device.customClusters).ID : cluster;
1935
- if (!endpoint.inputClusters.includes(clusterID)) {
1936
- logger_1.logger.debug(`Quirk: adding input cluster ${clusterID} to endpoint ${endpointID}.`, 'zhc:quirkaddendpointcluster');
1937
- endpoint.inputClusters.push(clusterID);
1938
- }
1939
- });
1940
- outputClusters?.forEach((cluster) => {
1941
- const clusterID = (0, utils_1.isString)(cluster) ? zigbee_herdsman_1.Zcl.Utils.getCluster(cluster, device.manufacturerID, device.customClusters).ID : cluster;
1942
- if (!endpoint.outputClusters.includes(clusterID)) {
1943
- logger_1.logger.debug(`Quirk: adding output cluster ${clusterID} to endpoint ${endpointID}.`, 'zhc:quirkaddendpointcluster');
1944
- endpoint.outputClusters.push(clusterID);
1945
- }
1946
- });
1947
- device.save();
1948
- },
1949
- ];
1950
- return { configure, isModernExtend: true };
1951
- }
1952
- function quirkCheckinInterval(timeout) {
1953
- const configure = [
1954
- async (device, coordinatorEndpoint, definition) => {
1955
- device.checkinInterval = typeof timeout == 'number' ? timeout : exports.TIME_LOOKUP[timeout];
1956
- device.save();
1957
- },
1958
- ];
1959
- return { configure, isModernExtend: true };
1960
- }
1961
- function reconfigureReportingsOnDeviceAnnounce() {
1962
- const onEvent = async (type, data, device, options, state) => {
1963
- if (type === 'deviceAnnounce') {
1964
- for (const endpoint of device.endpoints) {
1965
- for (const c of endpoint.configuredReportings) {
1966
- await endpoint.configureReporting(c.cluster.name, [
1967
- {
1968
- attribute: c.attribute.name,
1969
- minimumReportInterval: c.minimumReportInterval,
1970
- maximumReportInterval: c.maximumReportInterval,
1971
- reportableChange: c.reportableChange,
1972
- },
1973
- ]);
1974
- }
1975
- }
1976
- }
1977
- };
1978
- return { onEvent, isModernExtend: true };
1979
- }
1980
- function deviceEndpoints(args) {
1981
- const result = {
1982
- meta: { multiEndpoint: true },
1983
- endpoint: (d) => args.endpoints,
1984
- isModernExtend: true,
1985
- };
1986
- if (args.multiEndpointSkip)
1987
- result.meta.multiEndpointSkip = args.multiEndpointSkip;
1988
- return result;
1989
- }
1990
- function deviceAddCustomCluster(clusterName, clusterDefinition) {
1991
- const addCluster = (device) => {
1992
- if (!device.customClusters[clusterName]) {
1993
- device.addCustomCluster(clusterName, clusterDefinition);
1994
- }
1995
- };
1996
- const onEvent = async (type, data, device, options, state) => addCluster(device);
1997
- const configure = [async (device) => addCluster(device)];
1998
- return { onEvent, configure, isModernExtend: true };
1999
- }
2000
- function ignoreClusterReport(args) {
2001
- const fromZigbee = [
2002
- {
2003
- cluster: args.cluster.toString(),
2004
- type: ['attributeReport', 'readResponse'],
2005
- convert: (model, msg, publish, options, meta) => { },
2006
- },
2007
- ];
2008
- return { fromZigbee, isModernExtend: true };
2009
- }
2010
- function bindCluster(args) {
2011
- const configure = [setupConfigureForBinding(args.cluster, args.clusterType, args.endpointNames)];
2012
- return { configure, isModernExtend: true };
2013
- }
2014
- // #endregion
2015
- //# sourceMappingURL=modernExtend.js.map