node-poweredup 8.0.5 → 10.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 (763) hide show
  1. package/.drone.yml +2 -2
  2. package/.gitmodules +0 -3
  3. package/README.md +6 -11
  4. package/dist/color.d.ts +7 -0
  5. package/dist/color.d.ts.map +1 -0
  6. package/dist/color.js +15 -0
  7. package/dist/color.js.map +1 -0
  8. package/dist/consts.d.ts +645 -0
  9. package/dist/consts.d.ts.map +1 -0
  10. package/dist/consts.js +675 -0
  11. package/dist/consts.js.map +1 -0
  12. package/dist/devices/absolutemotor.d.ts +41 -0
  13. package/dist/devices/absolutemotor.d.ts.map +1 -0
  14. package/dist/devices/absolutemotor.js +115 -0
  15. package/dist/devices/absolutemotor.js.map +1 -0
  16. package/dist/devices/basicmotor.d.ts +37 -0
  17. package/dist/devices/basicmotor.d.ts.map +1 -0
  18. package/dist/devices/basicmotor.js +57 -0
  19. package/dist/devices/basicmotor.js.map +1 -0
  20. package/dist/devices/colordistancesensor.d.ts +74 -0
  21. package/dist/devices/colordistancesensor.d.ts.map +1 -0
  22. package/dist/devices/colordistancesensor.js +278 -0
  23. package/dist/devices/colordistancesensor.js.map +1 -0
  24. package/dist/devices/currentsensor.d.ts +17 -0
  25. package/dist/devices/currentsensor.d.ts.map +1 -0
  26. package/dist/devices/currentsensor.js +55 -0
  27. package/dist/devices/currentsensor.js.map +1 -0
  28. package/dist/devices/device.d.ts +72 -0
  29. package/dist/devices/device.d.ts.map +1 -0
  30. package/dist/devices/device.js +162 -0
  31. package/dist/devices/device.js.map +1 -0
  32. package/dist/devices/duplotrainbasecolorsensor.d.ts +20 -0
  33. package/dist/devices/duplotrainbasecolorsensor.d.ts.map +1 -0
  34. package/dist/devices/duplotrainbasecolorsensor.js +77 -0
  35. package/dist/devices/duplotrainbasecolorsensor.js.map +1 -0
  36. package/dist/devices/duplotrainbasemotor.d.ts +10 -0
  37. package/dist/devices/duplotrainbasemotor.d.ts.map +1 -0
  38. package/dist/devices/duplotrainbasemotor.js +12 -0
  39. package/dist/devices/duplotrainbasemotor.js.map +1 -0
  40. package/dist/devices/duplotrainbasespeaker.d.ts +27 -0
  41. package/dist/devices/duplotrainbasespeaker.d.ts.map +1 -0
  42. package/dist/devices/duplotrainbasespeaker.js +38 -0
  43. package/dist/devices/duplotrainbasespeaker.js.map +1 -0
  44. package/dist/devices/duplotrainbasespeedometer.d.ts +17 -0
  45. package/dist/devices/duplotrainbasespeedometer.d.ts.map +1 -0
  46. package/dist/devices/duplotrainbasespeedometer.js +34 -0
  47. package/dist/devices/duplotrainbasespeedometer.js.map +1 -0
  48. package/dist/devices/hubled.d.ts +28 -0
  49. package/dist/devices/hubled.d.ts.map +1 -0
  50. package/dist/devices/hubled.js +58 -0
  51. package/dist/devices/hubled.js.map +1 -0
  52. package/dist/devices/light.d.ts +24 -0
  53. package/dist/devices/light.d.ts.map +1 -0
  54. package/dist/devices/light.js +44 -0
  55. package/dist/devices/light.js.map +1 -0
  56. package/dist/devices/marioaccelerometer.d.ts +18 -0
  57. package/dist/devices/marioaccelerometer.d.ts.map +1 -0
  58. package/dist/devices/marioaccelerometer.js +50 -0
  59. package/dist/devices/marioaccelerometer.js.map +1 -0
  60. package/dist/devices/mariobarcodesensor.d.ts +18 -0
  61. package/dist/devices/mariobarcodesensor.d.ts.map +1 -0
  62. package/dist/devices/mariobarcodesensor.js +58 -0
  63. package/dist/devices/mariobarcodesensor.js.map +1 -0
  64. package/dist/devices/mariopantssensor.d.ts +17 -0
  65. package/dist/devices/mariopantssensor.d.ts.map +1 -0
  66. package/dist/devices/mariopantssensor.js +34 -0
  67. package/dist/devices/mariopantssensor.js.map +1 -0
  68. package/dist/devices/mediumlinearmotor.d.ts +10 -0
  69. package/dist/devices/mediumlinearmotor.d.ts.map +1 -0
  70. package/dist/devices/mediumlinearmotor.js +12 -0
  71. package/dist/devices/mediumlinearmotor.js.map +1 -0
  72. package/dist/devices/motionsensor.d.ts +17 -0
  73. package/dist/devices/motionsensor.d.ts.map +1 -0
  74. package/dist/devices/motionsensor.js +38 -0
  75. package/dist/devices/motionsensor.js.map +1 -0
  76. package/dist/devices/movehubmediumlinearmotor.d.ts +10 -0
  77. package/dist/devices/movehubmediumlinearmotor.d.ts.map +1 -0
  78. package/dist/devices/movehubmediumlinearmotor.js +12 -0
  79. package/dist/devices/movehubmediumlinearmotor.js.map +1 -0
  80. package/dist/devices/movehubtiltsensor.d.ts +17 -0
  81. package/dist/devices/movehubtiltsensor.d.ts.map +1 -0
  82. package/dist/devices/movehubtiltsensor.js +36 -0
  83. package/dist/devices/movehubtiltsensor.js.map +1 -0
  84. package/dist/devices/piezobuzzer.d.ts +17 -0
  85. package/dist/devices/piezobuzzer.d.ts.map +1 -0
  86. package/dist/devices/piezobuzzer.js +27 -0
  87. package/dist/devices/piezobuzzer.js.map +1 -0
  88. package/dist/devices/remotecontrolbutton.d.ts +20 -0
  89. package/dist/devices/remotecontrolbutton.d.ts.map +1 -0
  90. package/dist/devices/remotecontrolbutton.js +40 -0
  91. package/dist/devices/remotecontrolbutton.js.map +1 -0
  92. package/dist/devices/simplemediumlinearmotor.d.ts +10 -0
  93. package/dist/devices/simplemediumlinearmotor.d.ts.map +1 -0
  94. package/dist/devices/simplemediumlinearmotor.js +12 -0
  95. package/dist/devices/simplemediumlinearmotor.js.map +1 -0
  96. package/dist/devices/tachomotor.d.ts +65 -0
  97. package/dist/devices/tachomotor.d.ts.map +1 -0
  98. package/dist/devices/tachomotor.js +161 -0
  99. package/dist/devices/tachomotor.js.map +1 -0
  100. package/dist/devices/technic3x3colorlightmatrix.d.ts +22 -0
  101. package/dist/devices/technic3x3colorlightmatrix.d.ts.map +1 -0
  102. package/dist/devices/technic3x3colorlightmatrix.js +53 -0
  103. package/dist/devices/technic3x3colorlightmatrix.js.map +1 -0
  104. package/dist/devices/techniccolorsensor.d.ts +27 -0
  105. package/dist/devices/techniccolorsensor.d.ts.map +1 -0
  106. package/dist/devices/techniccolorsensor.js +71 -0
  107. package/dist/devices/techniccolorsensor.js.map +1 -0
  108. package/dist/devices/technicdistancesensor.d.ts +27 -0
  109. package/dist/devices/technicdistancesensor.d.ts.map +1 -0
  110. package/dist/devices/technicdistancesensor.js +57 -0
  111. package/dist/devices/technicdistancesensor.js.map +1 -0
  112. package/dist/devices/technicforcesensor.d.ts +19 -0
  113. package/dist/devices/technicforcesensor.d.ts.map +1 -0
  114. package/dist/devices/technicforcesensor.js +58 -0
  115. package/dist/devices/technicforcesensor.js.map +1 -0
  116. package/dist/devices/techniclargeangularmotor.d.ts +13 -0
  117. package/dist/devices/techniclargeangularmotor.d.ts.map +1 -0
  118. package/dist/devices/techniclargeangularmotor.js +12 -0
  119. package/dist/devices/techniclargeangularmotor.js.map +1 -0
  120. package/dist/devices/techniclargelinearmotor.d.ts +10 -0
  121. package/dist/devices/techniclargelinearmotor.d.ts.map +1 -0
  122. package/dist/devices/techniclargelinearmotor.js +12 -0
  123. package/dist/devices/techniclargelinearmotor.js.map +1 -0
  124. package/dist/devices/technicmediumangularmotor.d.ts +13 -0
  125. package/dist/devices/technicmediumangularmotor.d.ts.map +1 -0
  126. package/dist/devices/technicmediumangularmotor.js +12 -0
  127. package/dist/devices/technicmediumangularmotor.js.map +1 -0
  128. package/dist/devices/technicmediumhubaccelerometersensor.d.ts +17 -0
  129. package/dist/devices/technicmediumhubaccelerometersensor.d.ts.map +1 -0
  130. package/dist/devices/technicmediumhubaccelerometersensor.js +38 -0
  131. package/dist/devices/technicmediumhubaccelerometersensor.js.map +1 -0
  132. package/dist/devices/technicmediumhubgyrosensor.d.ts +17 -0
  133. package/dist/devices/technicmediumhubgyrosensor.d.ts.map +1 -0
  134. package/dist/devices/technicmediumhubgyrosensor.js +38 -0
  135. package/dist/devices/technicmediumhubgyrosensor.js.map +1 -0
  136. package/dist/devices/technicmediumhubtiltsensor.d.ts +38 -0
  137. package/dist/devices/technicmediumhubtiltsensor.d.ts.map +1 -0
  138. package/dist/devices/technicmediumhubtiltsensor.js +103 -0
  139. package/dist/devices/technicmediumhubtiltsensor.js.map +1 -0
  140. package/dist/devices/technicsmallangularmotor.d.ts +13 -0
  141. package/dist/devices/technicsmallangularmotor.d.ts.map +1 -0
  142. package/dist/devices/technicsmallangularmotor.js +12 -0
  143. package/dist/devices/technicsmallangularmotor.js.map +1 -0
  144. package/dist/devices/technicxlargelinearmotor.d.ts +10 -0
  145. package/dist/devices/technicxlargelinearmotor.d.ts.map +1 -0
  146. package/dist/devices/technicxlargelinearmotor.js +12 -0
  147. package/dist/devices/technicxlargelinearmotor.js.map +1 -0
  148. package/dist/devices/tiltsensor.d.ts +17 -0
  149. package/dist/devices/tiltsensor.d.ts.map +1 -0
  150. package/dist/devices/tiltsensor.js +36 -0
  151. package/dist/devices/tiltsensor.js.map +1 -0
  152. package/dist/devices/trainmotor.d.ts +10 -0
  153. package/dist/devices/trainmotor.d.ts.map +1 -0
  154. package/dist/devices/trainmotor.js +12 -0
  155. package/dist/devices/trainmotor.js.map +1 -0
  156. package/dist/devices/voltagesensor.d.ts +17 -0
  157. package/dist/devices/voltagesensor.d.ts.map +1 -0
  158. package/dist/devices/voltagesensor.js +59 -0
  159. package/dist/devices/voltagesensor.js.map +1 -0
  160. package/dist/hubs/basehub.d.ts +154 -0
  161. package/dist/hubs/basehub.d.ts.map +1 -0
  162. package/dist/hubs/basehub.js +383 -0
  163. package/dist/hubs/basehub.js.map +1 -0
  164. package/dist/hubs/duplotrainbase.d.ts +18 -0
  165. package/dist/hubs/duplotrainbase.d.ts.map +1 -0
  166. package/dist/hubs/duplotrainbase.js +35 -0
  167. package/dist/hubs/duplotrainbase.js.map +1 -0
  168. package/dist/hubs/hub.d.ts +20 -0
  169. package/dist/hubs/hub.d.ts.map +1 -0
  170. package/dist/hubs/hub.js +44 -0
  171. package/dist/hubs/hub.js.map +1 -0
  172. package/dist/hubs/lpf2hub.d.ts +46 -0
  173. package/dist/hubs/lpf2hub.d.ts.map +1 -0
  174. package/dist/hubs/lpf2hub.js +311 -0
  175. package/dist/hubs/lpf2hub.js.map +1 -0
  176. package/dist/hubs/mario.d.ts +18 -0
  177. package/dist/hubs/mario.d.ts.map +1 -0
  178. package/dist/hubs/mario.js +31 -0
  179. package/dist/hubs/mario.js.map +1 -0
  180. package/dist/hubs/movehub.d.ts +19 -0
  181. package/dist/hubs/movehub.d.ts.map +1 -0
  182. package/dist/hubs/movehub.js +46 -0
  183. package/dist/hubs/movehub.js.map +1 -0
  184. package/dist/hubs/remotecontrol.d.ts +18 -0
  185. package/dist/hubs/remotecontrol.d.ts.map +1 -0
  186. package/dist/hubs/remotecontrol.js +37 -0
  187. package/dist/hubs/remotecontrol.js.map +1 -0
  188. package/dist/hubs/technicmediumhub.d.ts +18 -0
  189. package/dist/hubs/technicmediumhub.d.ts.map +1 -0
  190. package/dist/hubs/technicmediumhub.js +42 -0
  191. package/dist/hubs/technicmediumhub.js.map +1 -0
  192. package/dist/hubs/technicsmallhub.d.ts +19 -0
  193. package/dist/hubs/technicsmallhub.d.ts.map +1 -0
  194. package/dist/hubs/technicsmallhub.js +41 -0
  195. package/dist/hubs/technicsmallhub.js.map +1 -0
  196. package/dist/hubs/wedo2smarthub.d.ts +39 -0
  197. package/dist/hubs/wedo2smarthub.d.ts.map +1 -0
  198. package/dist/hubs/wedo2smarthub.js +186 -0
  199. package/dist/hubs/wedo2smarthub.js.map +1 -0
  200. package/dist/index-browser.d.ts +2 -0
  201. package/dist/index-browser.d.ts.map +1 -0
  202. package/dist/index-browser.js +96 -0
  203. package/dist/index-browser.js.map +1 -0
  204. package/dist/index-node.d.ts +50 -0
  205. package/dist/index-node.d.ts.map +1 -0
  206. package/dist/index-node.js +50 -0
  207. package/dist/index-node.js.map +1 -0
  208. package/dist/interfaces.d.ts +24 -0
  209. package/dist/interfaces.d.ts.map +1 -0
  210. package/dist/interfaces.js +2 -0
  211. package/dist/interfaces.js.map +1 -0
  212. package/dist/nobleabstraction.d.ts +27 -0
  213. package/dist/nobleabstraction.d.ts.map +1 -0
  214. package/dist/nobleabstraction.js +121 -0
  215. package/dist/nobleabstraction.js.map +1 -0
  216. package/dist/node/color.js +2 -25
  217. package/dist/node/color.js.map +1 -1
  218. package/dist/node/commands.d.ts +299 -0
  219. package/dist/node/commands.js +672 -0
  220. package/dist/node/commands.js.map +1 -0
  221. package/dist/node/connection.d.ts +187 -0
  222. package/dist/node/connection.js +478 -0
  223. package/dist/node/connection.js.map +1 -0
  224. package/dist/node/consts.d.ts +21 -21
  225. package/dist/node/consts.js +57 -60
  226. package/dist/node/consts.js.map +1 -1
  227. package/dist/node/devices/absolutemotor.d.ts +0 -1
  228. package/dist/node/devices/absolutemotor.js +14 -37
  229. package/dist/node/devices/absolutemotor.js.map +1 -1
  230. package/dist/node/devices/basicmotor.d.ts +3 -3
  231. package/dist/node/devices/basicmotor.js +6 -29
  232. package/dist/node/devices/basicmotor.js.map +1 -1
  233. package/dist/node/devices/colordistancesensor.d.ts +4 -5
  234. package/dist/node/devices/colordistancesensor.js +11 -34
  235. package/dist/node/devices/colordistancesensor.js.map +1 -1
  236. package/dist/node/devices/currentsensor.d.ts +0 -1
  237. package/dist/node/devices/currentsensor.js +7 -30
  238. package/dist/node/devices/currentsensor.js.map +1 -1
  239. package/dist/node/devices/device.d.ts +5 -6
  240. package/dist/node/devices/device.js +3 -26
  241. package/dist/node/devices/device.js.map +1 -1
  242. package/dist/node/devices/duplotrainbasecolorsensor.d.ts +0 -1
  243. package/dist/node/devices/duplotrainbasecolorsensor.js +9 -32
  244. package/dist/node/devices/duplotrainbasecolorsensor.js.map +1 -1
  245. package/dist/node/devices/duplotrainbasemotor.js +3 -26
  246. package/dist/node/devices/duplotrainbasemotor.js.map +1 -1
  247. package/dist/node/devices/duplotrainbasespeaker.js +5 -28
  248. package/dist/node/devices/duplotrainbasespeaker.js.map +1 -1
  249. package/dist/node/devices/duplotrainbasespeedometer.d.ts +0 -1
  250. package/dist/node/devices/duplotrainbasespeedometer.js +7 -30
  251. package/dist/node/devices/duplotrainbasespeedometer.js.map +1 -1
  252. package/dist/node/devices/hubled.js +5 -28
  253. package/dist/node/devices/hubled.js.map +1 -1
  254. package/dist/node/devices/index.d.ts +14 -0
  255. package/dist/node/devices/index.js +154 -0
  256. package/dist/node/devices/index.js.map +1 -0
  257. package/dist/node/devices/led.d.ts +140 -0
  258. package/dist/node/devices/led.js +295 -0
  259. package/dist/node/devices/led.js.map +1 -0
  260. package/dist/node/devices/light.js +5 -28
  261. package/dist/node/devices/light.js.map +1 -1
  262. package/dist/node/devices/marioaccelerometer.d.ts +0 -1
  263. package/dist/node/devices/marioaccelerometer.js +7 -30
  264. package/dist/node/devices/marioaccelerometer.js.map +1 -1
  265. package/dist/node/devices/mariobarcodesensor.d.ts +0 -1
  266. package/dist/node/devices/mariobarcodesensor.js +7 -30
  267. package/dist/node/devices/mariobarcodesensor.js.map +1 -1
  268. package/dist/node/devices/mariopantssensor.d.ts +0 -1
  269. package/dist/node/devices/mariopantssensor.js +7 -30
  270. package/dist/node/devices/mariopantssensor.js.map +1 -1
  271. package/dist/node/devices/mediumlinearmotor.js +3 -26
  272. package/dist/node/devices/mediumlinearmotor.js.map +1 -1
  273. package/dist/node/devices/motionsensor.d.ts +0 -1
  274. package/dist/node/devices/motionsensor.js +7 -30
  275. package/dist/node/devices/motionsensor.js.map +1 -1
  276. package/dist/node/devices/motor.d.ts +182 -0
  277. package/dist/node/devices/motor.js +367 -0
  278. package/dist/node/devices/motor.js.map +1 -0
  279. package/dist/node/devices/movehubmediumlinearmotor.js +3 -26
  280. package/dist/node/devices/movehubmediumlinearmotor.js.map +1 -1
  281. package/dist/node/devices/movehubtiltsensor.d.ts +0 -1
  282. package/dist/node/devices/movehubtiltsensor.js +7 -30
  283. package/dist/node/devices/movehubtiltsensor.js.map +1 -1
  284. package/dist/node/devices/piezobuzzer.js +3 -26
  285. package/dist/node/devices/piezobuzzer.js.map +1 -1
  286. package/dist/node/devices/remotecontrolbutton.d.ts +0 -1
  287. package/dist/node/devices/remotecontrolbutton.js +9 -32
  288. package/dist/node/devices/remotecontrolbutton.js.map +1 -1
  289. package/dist/node/devices/sensor.d.ts +305 -0
  290. package/dist/node/devices/sensor.js +662 -0
  291. package/dist/node/devices/sensor.js.map +1 -0
  292. package/dist/node/devices/simplemediumlinearmotor.js +3 -26
  293. package/dist/node/devices/simplemediumlinearmotor.js.map +1 -1
  294. package/dist/node/devices/tachomotor.d.ts +0 -1
  295. package/dist/node/devices/tachomotor.js +14 -37
  296. package/dist/node/devices/tachomotor.js.map +1 -1
  297. package/dist/node/devices/technic3x3colorlightmatrix.js +7 -30
  298. package/dist/node/devices/technic3x3colorlightmatrix.js.map +1 -1
  299. package/dist/node/devices/techniccolorsensor.d.ts +0 -1
  300. package/dist/node/devices/techniccolorsensor.js +9 -32
  301. package/dist/node/devices/techniccolorsensor.js.map +1 -1
  302. package/dist/node/devices/technicdistancesensor.d.ts +0 -1
  303. package/dist/node/devices/technicdistancesensor.js +7 -30
  304. package/dist/node/devices/technicdistancesensor.js.map +1 -1
  305. package/dist/node/devices/technicforcesensor.d.ts +0 -1
  306. package/dist/node/devices/technicforcesensor.js +7 -30
  307. package/dist/node/devices/technicforcesensor.js.map +1 -1
  308. package/dist/node/devices/techniclargeangularmotor.js +3 -26
  309. package/dist/node/devices/techniclargeangularmotor.js.map +1 -1
  310. package/dist/node/devices/techniclargelinearmotor.js +3 -26
  311. package/dist/node/devices/techniclargelinearmotor.js.map +1 -1
  312. package/dist/node/devices/technicmediumangularmotor.js +3 -26
  313. package/dist/node/devices/technicmediumangularmotor.js.map +1 -1
  314. package/dist/node/devices/technicmediumhubaccelerometersensor.d.ts +0 -1
  315. package/dist/node/devices/technicmediumhubaccelerometersensor.js +7 -30
  316. package/dist/node/devices/technicmediumhubaccelerometersensor.js.map +1 -1
  317. package/dist/node/devices/technicmediumhubgyrosensor.d.ts +0 -1
  318. package/dist/node/devices/technicmediumhubgyrosensor.js +7 -30
  319. package/dist/node/devices/technicmediumhubgyrosensor.js.map +1 -1
  320. package/dist/node/devices/technicmediumhubtiltsensor.d.ts +0 -1
  321. package/dist/node/devices/technicmediumhubtiltsensor.js +8 -31
  322. package/dist/node/devices/technicmediumhubtiltsensor.js.map +1 -1
  323. package/dist/node/devices/technicsmallangularmotor.js +3 -26
  324. package/dist/node/devices/technicsmallangularmotor.js.map +1 -1
  325. package/dist/node/devices/technicxlargelinearmotor.js +3 -26
  326. package/dist/node/devices/technicxlargelinearmotor.js.map +1 -1
  327. package/dist/node/devices/tiltsensor.d.ts +0 -1
  328. package/dist/node/devices/tiltsensor.js +7 -30
  329. package/dist/node/devices/tiltsensor.js.map +1 -1
  330. package/dist/node/devices/trainmotor.js +3 -26
  331. package/dist/node/devices/trainmotor.js.map +1 -1
  332. package/dist/node/devices/voltagesensor.d.ts +0 -1
  333. package/dist/node/devices/voltagesensor.js +7 -30
  334. package/dist/node/devices/voltagesensor.js.map +1 -1
  335. package/dist/node/hub.d.ts +291 -0
  336. package/dist/node/hub.js +778 -0
  337. package/dist/node/hub.js.map +1 -0
  338. package/dist/node/hubs/basehub.d.ts +9 -10
  339. package/dist/node/hubs/basehub.js +74 -97
  340. package/dist/node/hubs/basehub.js.map +1 -1
  341. package/dist/node/hubs/duplotrainbase.d.ts +1 -1
  342. package/dist/node/hubs/duplotrainbase.js +6 -29
  343. package/dist/node/hubs/duplotrainbase.js.map +1 -1
  344. package/dist/node/hubs/hub.d.ts +1 -1
  345. package/dist/node/hubs/hub.js +12 -38
  346. package/dist/node/hubs/hub.js.map +1 -1
  347. package/dist/node/hubs/lpf2hub.d.ts +5 -6
  348. package/dist/node/hubs/lpf2hub.js +17 -40
  349. package/dist/node/hubs/lpf2hub.js.map +1 -1
  350. package/dist/node/hubs/mario.d.ts +1 -1
  351. package/dist/node/hubs/mario.js +6 -29
  352. package/dist/node/hubs/mario.js.map +1 -1
  353. package/dist/node/hubs/movehub.d.ts +1 -1
  354. package/dist/node/hubs/movehub.js +8 -34
  355. package/dist/node/hubs/movehub.js.map +1 -1
  356. package/dist/node/hubs/remotecontrol.d.ts +1 -1
  357. package/dist/node/hubs/remotecontrol.js +6 -29
  358. package/dist/node/hubs/remotecontrol.js.map +1 -1
  359. package/dist/node/hubs/technicmediumhub.d.ts +1 -1
  360. package/dist/node/hubs/technicmediumhub.js +6 -29
  361. package/dist/node/hubs/technicmediumhub.js.map +1 -1
  362. package/dist/node/hubs/technicsmallhub.d.ts +1 -1
  363. package/dist/node/hubs/technicsmallhub.js +10 -33
  364. package/dist/node/hubs/technicsmallhub.js.map +1 -1
  365. package/dist/node/hubs/wedo2smarthub.d.ts +3 -4
  366. package/dist/node/hubs/wedo2smarthub.js +15 -38
  367. package/dist/node/hubs/wedo2smarthub.js.map +1 -1
  368. package/dist/node/index-browser.js +91 -112
  369. package/dist/node/index-browser.js.map +1 -1
  370. package/dist/node/index-node.d.ts +1 -0
  371. package/dist/node/index-node.js +49 -115
  372. package/dist/node/index-node.js.map +1 -1
  373. package/dist/node/index.d.ts +31 -0
  374. package/dist/node/index.js +93 -0
  375. package/dist/node/index.js.map +1 -0
  376. package/dist/node/index.mjs +0 -0
  377. package/dist/node/interfaces.d.ts +1 -2
  378. package/dist/node/interfaces.js +1 -2
  379. package/dist/node/nobleabstraction.d.ts +0 -1
  380. package/dist/node/nobleabstraction.js +5 -7
  381. package/dist/node/nobleabstraction.js.map +1 -1
  382. package/dist/node/poweredup-browser.d.ts +0 -2
  383. package/dist/node/poweredup-browser.js +28 -47
  384. package/dist/node/poweredup-browser.js.map +1 -1
  385. package/dist/node/poweredup-node.d.ts +0 -2
  386. package/dist/node/poweredup-node.js +31 -54
  387. package/dist/node/poweredup-node.js.map +1 -1
  388. package/dist/node/poweredup.d.ts +83 -0
  389. package/dist/node/poweredup.js +542 -0
  390. package/dist/node/poweredup.js.map +1 -0
  391. package/dist/node/protocol-wedo.d.ts +158 -0
  392. package/dist/node/protocol-wedo.js +342 -0
  393. package/dist/node/protocol-wedo.js.map +1 -0
  394. package/dist/node/protocol.d.ts +340 -0
  395. package/dist/node/protocol.js +730 -0
  396. package/dist/node/protocol.js.map +1 -0
  397. package/dist/node/types.d.ts +408 -0
  398. package/dist/node/types.js +291 -0
  399. package/dist/node/types.js.map +1 -0
  400. package/dist/node/utils.d.ts +1 -1
  401. package/dist/node/utils.js +14 -26
  402. package/dist/node/utils.js.map +1 -1
  403. package/dist/node/webbleabstraction.d.ts +2 -3
  404. package/dist/node/webbleabstraction.js +4 -8
  405. package/dist/node/webbleabstraction.js.map +1 -1
  406. package/dist/poweredup-browser.d.ts +46 -0
  407. package/dist/poweredup-browser.d.ts.map +1 -0
  408. package/dist/poweredup-browser.js +210 -0
  409. package/dist/poweredup-browser.js.map +1 -0
  410. package/dist/poweredup-node.d.ts +49 -0
  411. package/dist/poweredup-node.d.ts.map +1 -0
  412. package/dist/poweredup-node.js +166 -0
  413. package/dist/poweredup-node.js.map +1 -0
  414. package/dist/tsconfig.tsbuildinfo +1 -0
  415. package/dist/utils.d.ts +13 -0
  416. package/dist/utils.d.ts.map +1 -0
  417. package/dist/utils.js +90 -0
  418. package/dist/utils.js.map +1 -0
  419. package/dist/webbleabstraction.d.ts +27 -0
  420. package/dist/webbleabstraction.d.ts.map +1 -0
  421. package/dist/webbleabstraction.js +104 -0
  422. package/dist/webbleabstraction.js.map +1 -0
  423. package/docs/.nojekyll +1 -0
  424. package/docs/assets/hierarchy.js +1 -0
  425. package/docs/assets/highlight.css +99 -0
  426. package/docs/assets/icons.js +18 -0
  427. package/docs/assets/icons.svg +1 -0
  428. package/docs/assets/main.js +60 -0
  429. package/docs/assets/navigation.js +1 -0
  430. package/docs/assets/search.js +1 -0
  431. package/docs/assets/style.css +1633 -0
  432. package/docs/classes/AbsoluteMotor.html +242 -0
  433. package/docs/classes/BaseHub.html +220 -0
  434. package/docs/classes/BasicMotor.html +201 -0
  435. package/docs/classes/Color.html +3 -0
  436. package/docs/classes/ColorDistanceSensor.html +214 -0
  437. package/docs/classes/CurrentSensor.html +185 -0
  438. package/docs/classes/Device.html +185 -0
  439. package/docs/classes/DuploTrainBase.html +233 -0
  440. package/docs/classes/DuploTrainBaseColorSensor.html +185 -0
  441. package/docs/classes/DuploTrainBaseMotor.html +201 -0
  442. package/docs/classes/DuploTrainBaseSpeaker.html +191 -0
  443. package/docs/classes/DuploTrainBaseSpeedometer.html +185 -0
  444. package/docs/classes/Hub.html +233 -0
  445. package/docs/classes/HubLED.html +191 -0
  446. package/docs/classes/Light.html +195 -0
  447. package/docs/classes/Mario.html +233 -0
  448. package/docs/classes/MediumLinearMotor.html +229 -0
  449. package/docs/classes/MotionSensor.html +185 -0
  450. package/docs/classes/MoveHub.html +233 -0
  451. package/docs/classes/MoveHubMediumLinearMotor.html +229 -0
  452. package/docs/classes/MoveHubTiltSensor.html +185 -0
  453. package/docs/classes/PiezoBuzzer.html +189 -0
  454. package/docs/classes/PoweredUP.html +180 -0
  455. package/docs/classes/RemoteControl.html +233 -0
  456. package/docs/classes/RemoteControlButton.html +185 -0
  457. package/docs/classes/SimpleMediumLinearMotor.html +201 -0
  458. package/docs/classes/TachoMotor.html +229 -0
  459. package/docs/classes/Technic3x3ColorLightMatrix.html +189 -0
  460. package/docs/classes/TechnicColorSensor.html +191 -0
  461. package/docs/classes/TechnicDistanceSensor.html +192 -0
  462. package/docs/classes/TechnicForceSensor.html +185 -0
  463. package/docs/classes/TechnicLargeAngularMotor.html +242 -0
  464. package/docs/classes/TechnicLargeLinearMotor.html +242 -0
  465. package/docs/classes/TechnicMediumAngularMotor.html +242 -0
  466. package/docs/classes/TechnicMediumHub.html +233 -0
  467. package/docs/classes/TechnicMediumHubAccelerometerSensor.html +185 -0
  468. package/docs/classes/TechnicMediumHubGyroSensor.html +185 -0
  469. package/docs/classes/TechnicMediumHubTiltSensor.html +197 -0
  470. package/docs/classes/TechnicSmallAngularMotor.html +242 -0
  471. package/docs/classes/TechnicXLargeLinearMotor.html +242 -0
  472. package/docs/classes/TiltSensor.html +185 -0
  473. package/docs/classes/TrainMotor.html +201 -0
  474. package/docs/classes/VoltageSensor.html +185 -0
  475. package/docs/classes/WeDo2SmartHub.html +229 -0
  476. package/docs/enums/ActionType.html +22 -0
  477. package/docs/enums/AlertOperation.html +10 -0
  478. package/docs/enums/AlertPayload.html +6 -0
  479. package/docs/enums/AlertType.html +10 -0
  480. package/docs/enums/BLECharacteristic.html +15 -0
  481. package/docs/enums/BLEManufacturerData.html +8 -0
  482. package/docs/enums/BLEService.html +7 -0
  483. package/docs/enums/BrakingStyle.html +7 -0
  484. package/docs/enums/ButtonState.html +11 -0
  485. package/docs/enums/Consts.Color.html +25 -0
  486. package/docs/enums/DeviceType.html +79 -0
  487. package/docs/enums/DuploTrainBaseSound.html +11 -0
  488. package/docs/enums/ErrorCode.html +18 -0
  489. package/docs/enums/Event.html +8 -0
  490. package/docs/enums/HWNetWorkCommandType.html +28 -0
  491. package/docs/enums/HWNetworkFamily.html +20 -0
  492. package/docs/enums/HWNetworkSubFamily.html +16 -0
  493. package/docs/enums/HubPropertyOperation.html +14 -0
  494. package/docs/enums/HubPropertyPayload.html +32 -0
  495. package/docs/enums/HubPropertyReference.html +32 -0
  496. package/docs/enums/HubType.html +19 -0
  497. package/docs/enums/IOTypeID.html +30 -0
  498. package/docs/enums/MarioColor.html +17 -0
  499. package/docs/enums/MarioPantsType.html +13 -0
  500. package/docs/enums/MessageType.html +48 -0
  501. package/docs/enums/ModeInformationType.html +22 -0
  502. package/docs/enums/PortInputFormatSetupSubCommand.html +14 -0
  503. package/docs/hierarchy.html +1 -0
  504. package/docs/index.html +18 -167
  505. package/docs/modules/Consts.html +1 -0
  506. package/docs/modules.html +1 -0
  507. package/docs/variables/ColorNames.html +1 -0
  508. package/docs/variables/DeviceTypeNames.html +1 -0
  509. package/docs/variables/HubTypeNames.html +1 -0
  510. package/docs/variables/isWebBluetooth.html +1 -0
  511. package/package.json +19 -25
  512. package/src/color.ts +1 -1
  513. package/src/consts.ts +16 -16
  514. package/src/devices/absolutemotor.ts +4 -7
  515. package/src/devices/basicmotor.ts +4 -8
  516. package/src/devices/colordistancesensor.ts +8 -14
  517. package/src/devices/currentsensor.ts +3 -3
  518. package/src/devices/device.ts +4 -4
  519. package/src/devices/duplotrainbasecolorsensor.ts +4 -4
  520. package/src/devices/duplotrainbasemotor.ts +3 -3
  521. package/src/devices/duplotrainbasespeaker.ts +3 -5
  522. package/src/devices/duplotrainbasespeedometer.ts +3 -3
  523. package/src/devices/hubled.ts +3 -5
  524. package/src/devices/light.ts +4 -6
  525. package/src/devices/marioaccelerometer.ts +3 -3
  526. package/src/devices/mariobarcodesensor.ts +3 -3
  527. package/src/devices/mariopantssensor.ts +3 -3
  528. package/src/devices/mediumlinearmotor.ts +3 -3
  529. package/src/devices/motionsensor.ts +3 -3
  530. package/src/devices/movehubmediumlinearmotor.ts +3 -3
  531. package/src/devices/movehubtiltsensor.ts +3 -3
  532. package/src/devices/piezobuzzer.ts +3 -4
  533. package/src/devices/remotecontrolbutton.ts +4 -4
  534. package/src/devices/simplemediumlinearmotor.ts +3 -3
  535. package/src/devices/tachomotor.ts +5 -11
  536. package/src/devices/technic3x3colorlightmatrix.ts +4 -5
  537. package/src/devices/techniccolorsensor.ts +4 -5
  538. package/src/devices/technicdistancesensor.ts +3 -4
  539. package/src/devices/technicforcesensor.ts +3 -3
  540. package/src/devices/techniclargeangularmotor.ts +3 -3
  541. package/src/devices/techniclargelinearmotor.ts +3 -3
  542. package/src/devices/technicmediumangularmotor.ts +3 -3
  543. package/src/devices/technicmediumhubaccelerometersensor.ts +3 -3
  544. package/src/devices/technicmediumhubgyrosensor.ts +3 -3
  545. package/src/devices/technicmediumhubtiltsensor.ts +7 -10
  546. package/src/devices/technicsmallangularmotor.ts +3 -3
  547. package/src/devices/technicxlargelinearmotor.ts +3 -3
  548. package/src/devices/tiltsensor.ts +3 -3
  549. package/src/devices/trainmotor.ts +3 -3
  550. package/src/devices/voltagesensor.ts +3 -3
  551. package/src/hubs/basehub.ts +42 -51
  552. package/src/hubs/duplotrainbase.ts +5 -5
  553. package/src/hubs/hub.ts +7 -7
  554. package/src/hubs/lpf2hub.ts +4 -7
  555. package/src/hubs/mario.ts +5 -5
  556. package/src/hubs/movehub.ts +7 -7
  557. package/src/hubs/remotecontrol.ts +5 -5
  558. package/src/hubs/technicmediumhub.ts +5 -5
  559. package/src/hubs/technicsmallhub.ts +5 -5
  560. package/src/hubs/wedo2smarthub.ts +7 -9
  561. package/src/index-browser.ts +46 -46
  562. package/src/index-node.ts +47 -46
  563. package/src/interfaces.ts +2 -2
  564. package/src/nobleabstraction.ts +10 -10
  565. package/src/poweredup-browser.ts +20 -21
  566. package/src/poweredup-node.ts +15 -22
  567. package/src/utils.ts +1 -1
  568. package/src/webbleabstraction.ts +5 -5
  569. package/tsconfig.tsbuildinfo +1 -0
  570. package/typedoc.json +14 -0
  571. package/.jsdoc.json +0 -41
  572. package/abandonware-noble.d.ts +0 -129
  573. package/dist/browser/poweredup.js +0 -3
  574. package/dist/browser/poweredup.js.LICENSE.txt +0 -8
  575. package/dist/browser/poweredup.js.map +0 -1
  576. package/docs/AbsoluteMotor.html +0 -2037
  577. package/docs/BaseHub.html +0 -1576
  578. package/docs/BasicMotor.html +0 -1561
  579. package/docs/ColorDistanceSensor.html +0 -3136
  580. package/docs/CurrentSensor.html +0 -1175
  581. package/docs/Device.html +0 -971
  582. package/docs/DuploTrainBase.html +0 -2313
  583. package/docs/DuploTrainBaseColorSensor.html +0 -1671
  584. package/docs/DuploTrainBaseMotor.html +0 -1597
  585. package/docs/DuploTrainBaseSpeaker.html +0 -1321
  586. package/docs/DuploTraniBaseSpeedometer.html +0 -1025
  587. package/docs/Hub.html +0 -7596
  588. package/docs/HubLED.html +0 -1379
  589. package/docs/LPF2Hub.html +0 -2271
  590. package/docs/Light.html +0 -1379
  591. package/docs/Mario.html +0 -2313
  592. package/docs/MarioAccelerometer.html +0 -1379
  593. package/docs/MarioBarcodeSensor.html +0 -1379
  594. package/docs/MarioPantsSensor.html +0 -1175
  595. package/docs/MediumLinearMotor.html +0 -1426
  596. package/docs/MotionSensor.html +0 -1175
  597. package/docs/MoveHub.html +0 -2313
  598. package/docs/MoveHubMediumLinearMotor.html +0 -1426
  599. package/docs/MoveHubTiltSensor.html +0 -1204
  600. package/docs/PiezoBuzzer.html +0 -1204
  601. package/docs/PoweredUP.html +0 -4322
  602. package/docs/RemoteControl.html +0 -2313
  603. package/docs/RemoteControlButton.html +0 -1175
  604. package/docs/SimpleMediumLinearMotor.html +0 -1025
  605. package/docs/TachoMotor.html +0 -2715
  606. package/docs/Technic3x3ColorLightMatrix.html +0 -1181
  607. package/docs/TechnicColorSensor.html +0 -1675
  608. package/docs/TechnicDistanceSensor.html +0 -1558
  609. package/docs/TechnicForceSensor.html +0 -1467
  610. package/docs/TechnicLargeAngularMotor.html +0 -2073
  611. package/docs/TechnicLargeLinearMotor.html +0 -2073
  612. package/docs/TechnicMediumAngularMotor.html +0 -2073
  613. package/docs/TechnicMediumHub.html +0 -2313
  614. package/docs/TechnicMediumHubAccelerometerSensor.html +0 -1233
  615. package/docs/TechnicMediumHubGyroSensor.html +0 -1233
  616. package/docs/TechnicMediumHubTiltSensor.html +0 -1821
  617. package/docs/TechnicSmallAngularMotor.html +0 -2073
  618. package/docs/TechnicXLargeLinearMotor.html +0 -2073
  619. package/docs/TiltSensor.html +0 -1204
  620. package/docs/TrainMotor.html +0 -1597
  621. package/docs/VoltageSensor.html +0 -1175
  622. package/docs/WeDo2SmartHub.html +0 -2099
  623. package/docs/consts.js.html +0 -791
  624. package/docs/devices_absolutemotor.js.html +0 -254
  625. package/docs/devices_basicmotor.js.html +0 -197
  626. package/docs/devices_colordistancesensor.js.html +0 -420
  627. package/docs/devices_currentsensor.js.html +0 -191
  628. package/docs/devices_device.js.html +0 -298
  629. package/docs/devices_duplotrainbasecolorsensor.js.html +0 -213
  630. package/docs/devices_duplotrainbasemotor.js.html +0 -148
  631. package/docs/devices_duplotrainbasespeaker.js.html +0 -176
  632. package/docs/devices_duplotrainbasespeedometer.js.html +0 -170
  633. package/docs/devices_hubled.js.html +0 -196
  634. package/docs/devices_light.js.html +0 -182
  635. package/docs/devices_marioaccelerometer.js.html +0 -186
  636. package/docs/devices_mariobarcodesensor.js.html +0 -194
  637. package/docs/devices_mariopantssensor.js.html +0 -170
  638. package/docs/devices_mediumlinearmotor.js.html +0 -148
  639. package/docs/devices_motionsensor.js.html +0 -174
  640. package/docs/devices_movehubmediumlinearmotor.js.html +0 -148
  641. package/docs/devices_movehubtiltsensor.js.html +0 -172
  642. package/docs/devices_piezobuzzer.js.html +0 -164
  643. package/docs/devices_remotecontrolbutton.js.html +0 -176
  644. package/docs/devices_simplemediumlinearmotor.js.html +0 -148
  645. package/docs/devices_tachomotor.js.html +0 -303
  646. package/docs/devices_technic3x3colorlightmatrix.js.html +0 -190
  647. package/docs/devices_techniccolorsensor.js.html +0 -208
  648. package/docs/devices_technicdistancesensor.js.html +0 -194
  649. package/docs/devices_technicforcesensor.js.html +0 -194
  650. package/docs/devices_techniclargeangularmotor.js.html +0 -148
  651. package/docs/devices_techniclargelinearmotor.js.html +0 -148
  652. package/docs/devices_technicmediumangularmotor.js.html +0 -148
  653. package/docs/devices_technicmediumhubaccelerometersensor.js.html +0 -174
  654. package/docs/devices_technicmediumhubgyrosensor.js.html +0 -174
  655. package/docs/devices_technicmediumhubtiltsensor.js.html +0 -242
  656. package/docs/devices_technicsmallangularmotor.js.html +0 -148
  657. package/docs/devices_technicxlargelinearmotor.js.html +0 -148
  658. package/docs/devices_tiltsensor.js.html +0 -172
  659. package/docs/devices_trainmotor.js.html +0 -148
  660. package/docs/devices_voltagesensor.js.html +0 -195
  661. package/docs/fonts/OpenSans-Bold-webfont.eot +0 -0
  662. package/docs/fonts/OpenSans-Bold-webfont.svg +0 -1830
  663. package/docs/fonts/OpenSans-Bold-webfont.woff +0 -0
  664. package/docs/fonts/OpenSans-BoldItalic-webfont.eot +0 -0
  665. package/docs/fonts/OpenSans-BoldItalic-webfont.svg +0 -1830
  666. package/docs/fonts/OpenSans-BoldItalic-webfont.woff +0 -0
  667. package/docs/fonts/OpenSans-Italic-webfont.eot +0 -0
  668. package/docs/fonts/OpenSans-Italic-webfont.svg +0 -1830
  669. package/docs/fonts/OpenSans-Italic-webfont.woff +0 -0
  670. package/docs/fonts/OpenSans-Light-webfont.eot +0 -0
  671. package/docs/fonts/OpenSans-Light-webfont.svg +0 -1831
  672. package/docs/fonts/OpenSans-Light-webfont.woff +0 -0
  673. package/docs/fonts/OpenSans-LightItalic-webfont.eot +0 -0
  674. package/docs/fonts/OpenSans-LightItalic-webfont.svg +0 -1835
  675. package/docs/fonts/OpenSans-LightItalic-webfont.woff +0 -0
  676. package/docs/fonts/OpenSans-Regular-webfont.eot +0 -0
  677. package/docs/fonts/OpenSans-Regular-webfont.svg +0 -1831
  678. package/docs/fonts/OpenSans-Regular-webfont.woff +0 -0
  679. package/docs/fonts/OpenSans-Semibold-webfont.eot +0 -0
  680. package/docs/fonts/OpenSans-Semibold-webfont.svg +0 -1830
  681. package/docs/fonts/OpenSans-Semibold-webfont.ttf +0 -0
  682. package/docs/fonts/OpenSans-Semibold-webfont.woff +0 -0
  683. package/docs/fonts/OpenSans-SemiboldItalic-webfont.eot +0 -0
  684. package/docs/fonts/OpenSans-SemiboldItalic-webfont.svg +0 -1830
  685. package/docs/fonts/OpenSans-SemiboldItalic-webfont.ttf +0 -0
  686. package/docs/fonts/OpenSans-SemiboldItalic-webfont.woff +0 -0
  687. package/docs/global.html +0 -9829
  688. package/docs/hubs_basehub.js.html +0 -528
  689. package/docs/hubs_duplotrainbase.js.html +0 -171
  690. package/docs/hubs_hub.js.html +0 -183
  691. package/docs/hubs_lpf2hub.js.html +0 -450
  692. package/docs/hubs_mario.js.html +0 -167
  693. package/docs/hubs_movehub.js.html +0 -185
  694. package/docs/hubs_remotecontrol.js.html +0 -173
  695. package/docs/hubs_technicmediumhub.js.html +0 -178
  696. package/docs/hubs_technicsmallhub.js.html +0 -177
  697. package/docs/hubs_wedo2smarthub.js.html +0 -324
  698. package/docs/icons/home.svg +0 -4
  699. package/docs/icons/search.svg +0 -4
  700. package/docs/poweredup-browser.js.html +0 -348
  701. package/docs/poweredup-node.js.html +0 -309
  702. package/docs/scripts/linenumber.js +0 -23
  703. package/docs/scripts/pagelocation.js +0 -89
  704. package/docs/styles/collapse.css +0 -27
  705. package/docs/styles/jsdoc-default.css +0 -953
  706. package/docs/styles/prettify-jsdoc.css +0 -111
  707. package/docs/styles/prettify-tomorrow.css +0 -138
  708. package/jsdoc-template/braintree/CHANGELOG.md +0 -31
  709. package/jsdoc-template/braintree/LICENSE +0 -27
  710. package/jsdoc-template/braintree/README.md +0 -90
  711. package/jsdoc-template/braintree/package.json +0 -39
  712. package/jsdoc-template/braintree/publish.js +0 -675
  713. package/jsdoc-template/braintree/static/fonts/OpenSans-Bold-webfont.eot +0 -0
  714. package/jsdoc-template/braintree/static/fonts/OpenSans-Bold-webfont.svg +0 -1830
  715. package/jsdoc-template/braintree/static/fonts/OpenSans-Bold-webfont.woff +0 -0
  716. package/jsdoc-template/braintree/static/fonts/OpenSans-BoldItalic-webfont.eot +0 -0
  717. package/jsdoc-template/braintree/static/fonts/OpenSans-BoldItalic-webfont.svg +0 -1830
  718. package/jsdoc-template/braintree/static/fonts/OpenSans-BoldItalic-webfont.woff +0 -0
  719. package/jsdoc-template/braintree/static/fonts/OpenSans-Italic-webfont.eot +0 -0
  720. package/jsdoc-template/braintree/static/fonts/OpenSans-Italic-webfont.svg +0 -1830
  721. package/jsdoc-template/braintree/static/fonts/OpenSans-Italic-webfont.woff +0 -0
  722. package/jsdoc-template/braintree/static/fonts/OpenSans-Light-webfont.eot +0 -0
  723. package/jsdoc-template/braintree/static/fonts/OpenSans-Light-webfont.svg +0 -1831
  724. package/jsdoc-template/braintree/static/fonts/OpenSans-Light-webfont.woff +0 -0
  725. package/jsdoc-template/braintree/static/fonts/OpenSans-LightItalic-webfont.eot +0 -0
  726. package/jsdoc-template/braintree/static/fonts/OpenSans-LightItalic-webfont.svg +0 -1835
  727. package/jsdoc-template/braintree/static/fonts/OpenSans-LightItalic-webfont.woff +0 -0
  728. package/jsdoc-template/braintree/static/fonts/OpenSans-Regular-webfont.eot +0 -0
  729. package/jsdoc-template/braintree/static/fonts/OpenSans-Regular-webfont.svg +0 -1831
  730. package/jsdoc-template/braintree/static/fonts/OpenSans-Regular-webfont.woff +0 -0
  731. package/jsdoc-template/braintree/static/fonts/OpenSans-Semibold-webfont.eot +0 -0
  732. package/jsdoc-template/braintree/static/fonts/OpenSans-Semibold-webfont.svg +0 -1830
  733. package/jsdoc-template/braintree/static/fonts/OpenSans-Semibold-webfont.ttf +0 -0
  734. package/jsdoc-template/braintree/static/fonts/OpenSans-Semibold-webfont.woff +0 -0
  735. package/jsdoc-template/braintree/static/fonts/OpenSans-SemiboldItalic-webfont.eot +0 -0
  736. package/jsdoc-template/braintree/static/fonts/OpenSans-SemiboldItalic-webfont.svg +0 -1830
  737. package/jsdoc-template/braintree/static/fonts/OpenSans-SemiboldItalic-webfont.ttf +0 -0
  738. package/jsdoc-template/braintree/static/fonts/OpenSans-SemiboldItalic-webfont.woff +0 -0
  739. package/jsdoc-template/braintree/static/icons/home.svg +0 -4
  740. package/jsdoc-template/braintree/static/icons/search.svg +0 -4
  741. package/jsdoc-template/braintree/static/scripts/linenumber.js +0 -23
  742. package/jsdoc-template/braintree/static/scripts/pagelocation.js +0 -89
  743. package/jsdoc-template/braintree/static/styles/collapse.css +0 -27
  744. package/jsdoc-template/braintree/static/styles/jsdoc-default.css +0 -953
  745. package/jsdoc-template/braintree/static/styles/prettify-jsdoc.css +0 -111
  746. package/jsdoc-template/braintree/static/styles/prettify-tomorrow.css +0 -138
  747. package/jsdoc-template/braintree/tmpl/augments.tmpl +0 -10
  748. package/jsdoc-template/braintree/tmpl/container.tmpl +0 -213
  749. package/jsdoc-template/braintree/tmpl/details.tmpl +0 -223
  750. package/jsdoc-template/braintree/tmpl/example.tmpl +0 -2
  751. package/jsdoc-template/braintree/tmpl/examples.tmpl +0 -14
  752. package/jsdoc-template/braintree/tmpl/exceptions.tmpl +0 -28
  753. package/jsdoc-template/braintree/tmpl/layout.tmpl +0 -150
  754. package/jsdoc-template/braintree/tmpl/mainpage.tmpl +0 -9
  755. package/jsdoc-template/braintree/tmpl/members.tmpl +0 -38
  756. package/jsdoc-template/braintree/tmpl/method.tmpl +0 -128
  757. package/jsdoc-template/braintree/tmpl/params.tmpl +0 -125
  758. package/jsdoc-template/braintree/tmpl/properties.tmpl +0 -111
  759. package/jsdoc-template/braintree/tmpl/returns.tmpl +0 -17
  760. package/jsdoc-template/braintree/tmpl/source.tmpl +0 -9
  761. package/jsdoc-template/braintree/tmpl/tutorial.tmpl +0 -23
  762. package/jsdoc-template/braintree/tmpl/type.tmpl +0 -11
  763. package/noble-mac.d.ts +0 -3
@@ -0,0 +1,50 @@
1
+ import * as Consts from "./consts.js";
2
+ export * from "./consts.js";
3
+ import { PoweredUP } from "./poweredup-node.js";
4
+ import { Color } from "./color.js";
5
+ import { BaseHub } from "./hubs/basehub.js";
6
+ import { DuploTrainBase } from "./hubs/duplotrainbase.js";
7
+ import { Hub } from "./hubs/hub.js";
8
+ import { Mario } from "./hubs/mario.js";
9
+ import { MoveHub } from "./hubs/movehub.js";
10
+ import { RemoteControl } from "./hubs/remotecontrol.js";
11
+ import { TechnicMediumHub } from "./hubs/technicmediumhub.js";
12
+ import { WeDo2SmartHub } from "./hubs/wedo2smarthub.js";
13
+ import { ColorDistanceSensor } from "./devices/colordistancesensor.js";
14
+ import { CurrentSensor } from "./devices/currentsensor.js";
15
+ import { Device } from "./devices/device.js";
16
+ import { DuploTrainBaseColorSensor } from "./devices/duplotrainbasecolorsensor.js";
17
+ import { DuploTrainBaseMotor } from "./devices/duplotrainbasemotor.js";
18
+ import { DuploTrainBaseSpeaker } from "./devices/duplotrainbasespeaker.js";
19
+ import { DuploTrainBaseSpeedometer } from "./devices/duplotrainbasespeedometer.js";
20
+ import { HubLED } from "./devices/hubled.js";
21
+ import { Light } from "./devices/light.js";
22
+ import { MediumLinearMotor } from "./devices/mediumlinearmotor.js";
23
+ import { MotionSensor } from "./devices/motionsensor.js";
24
+ import { MoveHubMediumLinearMotor } from "./devices/movehubmediumlinearmotor.js";
25
+ import { MoveHubTiltSensor } from "./devices/movehubtiltsensor.js";
26
+ import { PiezoBuzzer } from "./devices/piezobuzzer.js";
27
+ import { RemoteControlButton } from "./devices/remotecontrolbutton.js";
28
+ import { SimpleMediumLinearMotor } from "./devices/simplemediumlinearmotor.js";
29
+ import { TechnicColorSensor } from "./devices/techniccolorsensor.js";
30
+ import { TechnicDistanceSensor } from "./devices/technicdistancesensor.js";
31
+ import { TechnicForceSensor } from "./devices/technicforcesensor.js";
32
+ import { TechnicLargeAngularMotor } from "./devices/techniclargeangularmotor.js";
33
+ import { TechnicLargeLinearMotor } from "./devices/techniclargelinearmotor.js";
34
+ import { TechnicSmallAngularMotor } from "./devices/technicsmallangularmotor.js";
35
+ import { TechnicMediumAngularMotor } from "./devices/technicmediumangularmotor.js";
36
+ import { TechnicMediumHubAccelerometerSensor } from "./devices/technicmediumhubaccelerometersensor.js";
37
+ import { TechnicMediumHubGyroSensor } from "./devices/technicmediumhubgyrosensor.js";
38
+ import { TechnicMediumHubTiltSensor } from "./devices/technicmediumhubtiltsensor.js";
39
+ import { TechnicXLargeLinearMotor } from "./devices/technicxlargelinearmotor.js";
40
+ import { Technic3x3ColorLightMatrix } from "./devices/technic3x3colorlightmatrix.js";
41
+ import { TiltSensor } from "./devices/tiltsensor.js";
42
+ import { TrainMotor } from "./devices/trainmotor.js";
43
+ import { VoltageSensor } from "./devices/voltagesensor.js";
44
+ import { TachoMotor } from "./devices/tachomotor.js";
45
+ import { AbsoluteMotor } from "./devices/absolutemotor.js";
46
+ import { BasicMotor } from "./devices/basicmotor.js";
47
+ import { isWebBluetooth } from "./utils.js";
48
+ export default PoweredUP;
49
+ export { PoweredUP, BaseHub, WeDo2SmartHub, TechnicMediumHub, Hub, RemoteControl, DuploTrainBase, Consts, Color, ColorDistanceSensor, Device, DuploTrainBaseColorSensor, DuploTrainBaseMotor, DuploTrainBaseSpeaker, DuploTrainBaseSpeedometer, HubLED, Light, Mario, MediumLinearMotor, MotionSensor, MoveHub, MoveHubMediumLinearMotor, MoveHubTiltSensor, PiezoBuzzer, RemoteControlButton, SimpleMediumLinearMotor, TechnicColorSensor, TechnicDistanceSensor, TechnicForceSensor, TechnicMediumHubAccelerometerSensor, TechnicMediumHubGyroSensor, TechnicMediumHubTiltSensor, TechnicSmallAngularMotor, TechnicMediumAngularMotor, TechnicLargeAngularMotor, TechnicLargeLinearMotor, TechnicXLargeLinearMotor, Technic3x3ColorLightMatrix, TiltSensor, TrainMotor, VoltageSensor, CurrentSensor, TachoMotor, AbsoluteMotor, BasicMotor, isWebBluetooth };
50
+ //# sourceMappingURL=index-node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-node.js","sourceRoot":"","sources":["../src/index-node.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ import { EventEmitter } from "events";
2
+ import * as Consts from "./consts.js";
3
+ export interface IBLEAbstraction extends EventEmitter {
4
+ uuid: string;
5
+ name: string;
6
+ connecting: boolean;
7
+ connected: boolean;
8
+ connect: () => Promise<void>;
9
+ disconnect: () => Promise<void>;
10
+ discoverCharacteristicsForService: (uuid: string) => Promise<void>;
11
+ subscribeToCharacteristic: (uuid: string, callback: (data: Buffer) => void) => void;
12
+ addToCharacteristicMailbox: (uuid: string, data: Buffer) => void;
13
+ readFromCharacteristic: (uuid: string, callback: (err: Error | null, data: Buffer | null) => void) => void;
14
+ writeToCharacteristic: (uuid: string, data: Buffer) => Promise<void>;
15
+ }
16
+ export interface IDeviceInterface extends EventEmitter {
17
+ type: Consts.HubType;
18
+ getPortNameForPortId: (portId: number) => string | undefined;
19
+ send: (message: Buffer, uuid: string) => Promise<void>;
20
+ subscribe: (portId: number, deviceType: number, mode: number) => void;
21
+ isPortVirtual: (portId: number) => boolean;
22
+ sleep: (delay: number) => Promise<any>;
23
+ }
24
+ //# sourceMappingURL=interfaces.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AAEtC,MAAM,WAAW,eAAgB,SAAQ,YAAY;IACjD,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,UAAU,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAChC,iCAAiC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACnE,yBAAyB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,KAAK,IAAI,CAAC;IACpF,0BAA0B,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACjE,sBAAsB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,KAAK,GAAG,IAAI,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,KAAK,IAAI,CAAC;IAC3G,qBAAqB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACxE;AAED,MAAM,WAAW,gBAAiB,SAAQ,YAAY;IAClD,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC;IACrB,oBAAoB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;IAC7D,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACvD,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACtE,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC;IAC3C,KAAK,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;CAC1C"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=interfaces.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":""}
@@ -0,0 +1,27 @@
1
+ import { EventEmitter } from "events";
2
+ import { IBLEAbstraction } from "./interfaces.js";
3
+ export declare class NobleDevice extends EventEmitter implements IBLEAbstraction {
4
+ private _noblePeripheral;
5
+ private _uuid;
6
+ private _name;
7
+ private _listeners;
8
+ private _characteristics;
9
+ private _queue;
10
+ private _mailbox;
11
+ private _connected;
12
+ private _connecting;
13
+ constructor(device: any);
14
+ get uuid(): string;
15
+ get name(): string;
16
+ get connecting(): boolean;
17
+ get connected(): boolean;
18
+ connect(): Promise<void>;
19
+ disconnect(): Promise<void>;
20
+ discoverCharacteristicsForService(uuid: string): Promise<void>;
21
+ subscribeToCharacteristic(uuid: string, callback: (data: Buffer) => void): void;
22
+ addToCharacteristicMailbox(uuid: string, data: Buffer): void;
23
+ readFromCharacteristic(uuid: string, callback: (err: Error | null, data: Buffer | null) => void): void;
24
+ writeToCharacteristic(uuid: string, data: Buffer): Promise<void>;
25
+ private _sanitizeUUID;
26
+ }
27
+ //# sourceMappingURL=nobleabstraction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nobleabstraction.d.ts","sourceRoot":"","sources":["../src/nobleabstraction.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAIlD,qBAAa,WAAY,SAAQ,YAAa,YAAW,eAAe;IAEpE,OAAO,CAAC,gBAAgB,CAAa;IAErC,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,KAAK,CAAc;IAE3B,OAAO,CAAC,UAAU,CAA6B;IAC/C,OAAO,CAAC,gBAAgB,CAAwC;IAEhE,OAAO,CAAC,MAAM,CAAmC;IACjD,OAAO,CAAC,QAAQ,CAAgB;IAEhC,OAAO,CAAC,UAAU,CAAkB;IACpC,OAAO,CAAC,WAAW,CAAkB;gBAGxB,MAAM,EAAE,GAAG;IAiBxB,IAAW,IAAI,WAEd;IAGD,IAAW,IAAI,WAEd;IAGD,IAAW,UAAU,YAEpB;IAGD,IAAW,SAAS,YAEnB;IAGM,OAAO;IAgBP,UAAU;IAUV,iCAAiC,CAAE,IAAI,EAAE,MAAM;IA6B/C,yBAAyB,CAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI;IAazE,0BAA0B,CAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;IAKtD,sBAAsB,CAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,KAAK,GAAG,IAAI,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI;IAQhG,qBAAqB,CAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;IAcxD,OAAO,CAAC,aAAa;CAKxB"}
@@ -0,0 +1,121 @@
1
+ import Debug from "debug";
2
+ import { EventEmitter } from "events";
3
+ const debug = Debug("bledevice");
4
+ export class NobleDevice extends EventEmitter {
5
+ constructor(device) {
6
+ super();
7
+ this._name = "";
8
+ this._listeners = {};
9
+ this._characteristics = {};
10
+ this._queue = Promise.resolve();
11
+ this._mailbox = [];
12
+ this._connected = false;
13
+ this._connecting = false;
14
+ this._noblePeripheral = device;
15
+ this._uuid = device.uuid;
16
+ device.on("disconnect", () => {
17
+ this._connecting = false;
18
+ this._connected = false;
19
+ this.emit("disconnect");
20
+ });
21
+ // NK: This hack allows LPF2.0 hubs to send a second advertisement packet consisting of the hub name before we try to read it
22
+ setTimeout(() => {
23
+ this._name = device.advertisement.localName;
24
+ this.emit("discoverComplete");
25
+ }, 1000);
26
+ }
27
+ get uuid() {
28
+ return this._uuid;
29
+ }
30
+ get name() {
31
+ return this._name;
32
+ }
33
+ get connecting() {
34
+ return this._connecting;
35
+ }
36
+ get connected() {
37
+ return this._connected;
38
+ }
39
+ connect() {
40
+ return new Promise((resolve, reject) => {
41
+ this._connecting = true;
42
+ this._noblePeripheral.connect((err) => {
43
+ if (err) {
44
+ return reject(err);
45
+ }
46
+ this._connecting = false;
47
+ this._connected = true;
48
+ return resolve();
49
+ });
50
+ });
51
+ }
52
+ disconnect() {
53
+ return new Promise((resolve) => {
54
+ this._noblePeripheral.disconnect();
55
+ this._connecting = false;
56
+ this._connected = false;
57
+ return resolve();
58
+ });
59
+ }
60
+ discoverCharacteristicsForService(uuid) {
61
+ return new Promise(async (discoverResolve, discoverReject) => {
62
+ uuid = this._sanitizeUUID(uuid);
63
+ this._noblePeripheral.discoverServices([uuid], (err, services) => {
64
+ if (err) {
65
+ return discoverReject(err);
66
+ }
67
+ debug("Service/characteristic discovery started");
68
+ const servicePromises = [];
69
+ services.forEach((service) => {
70
+ servicePromises.push(new Promise((resolve) => {
71
+ service.discoverCharacteristics([], (err, characteristics) => {
72
+ characteristics.forEach((characteristic) => {
73
+ this._characteristics[characteristic.uuid] = characteristic;
74
+ });
75
+ return resolve();
76
+ });
77
+ }));
78
+ });
79
+ Promise.all(servicePromises).then(() => {
80
+ debug("Service/characteristic discovery finished");
81
+ return discoverResolve();
82
+ });
83
+ });
84
+ });
85
+ }
86
+ subscribeToCharacteristic(uuid, callback) {
87
+ uuid = this._sanitizeUUID(uuid);
88
+ this._characteristics[uuid].on("data", (data) => {
89
+ return callback(data);
90
+ });
91
+ this._characteristics[uuid].subscribe((err) => {
92
+ if (err) {
93
+ throw err;
94
+ }
95
+ });
96
+ }
97
+ addToCharacteristicMailbox(uuid, data) {
98
+ this._mailbox.push(data);
99
+ }
100
+ readFromCharacteristic(uuid, callback) {
101
+ uuid = this._sanitizeUUID(uuid);
102
+ this._characteristics[uuid].read((err, data) => {
103
+ return callback(err ?? null, data);
104
+ });
105
+ }
106
+ writeToCharacteristic(uuid, data) {
107
+ return new Promise((resolve, reject) => {
108
+ uuid = this._sanitizeUUID(uuid);
109
+ this._characteristics[uuid].write(data, false, (error) => {
110
+ if (error) {
111
+ return reject(error);
112
+ }
113
+ return resolve();
114
+ });
115
+ });
116
+ }
117
+ _sanitizeUUID(uuid) {
118
+ return uuid.replace(/-/g, "");
119
+ }
120
+ }
121
+ //# sourceMappingURL=nobleabstraction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nobleabstraction.js","sourceRoot":"","sources":["../src/nobleabstraction.ts"],"names":[],"mappings":"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"}
@@ -1,27 +1,5 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
- }) : (function(o, m, k, k2) {
6
- if (k2 === undefined) k2 = k;
7
- o[k2] = m[k];
8
- }));
9
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
- Object.defineProperty(o, "default", { enumerable: true, value: v });
11
- }) : function(o, v) {
12
- o["default"] = v;
13
- });
14
- var __importStar = (this && this.__importStar) || function (mod) {
15
- if (mod && mod.__esModule) return mod;
16
- var result = {};
17
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
- __setModuleDefault(result, mod);
19
- return result;
20
- };
21
- Object.defineProperty(exports, "__esModule", { value: true });
22
- exports.Color = void 0;
23
- const Consts = __importStar(require("./consts"));
24
- class Color {
1
+ import * as Consts from "./consts";
2
+ export class Color {
25
3
  constructor(color, brightness) {
26
4
  this._brightness = 100;
27
5
  this._color = color;
@@ -34,5 +12,4 @@ class Color {
34
12
  return this._color + (Math.round(this._brightness / 10) << 4);
35
13
  }
36
14
  }
37
- exports.Color = Color;
38
15
  //# sourceMappingURL=color.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"color.js","sourceRoot":"","sources":["../../src/color.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,iDAAmC;AAEnC,MAAa,KAAK;IAKd,YAAa,KAAa,EAAE,UAAmB;QAFvC,gBAAW,GAAW,GAAG,CAAC;QAG9B,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,WAAW,GAAG,UAAU,IAAI,GAAG,CAAC;IACzC,CAAC;IAEM,OAAO;QACV,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE;YACnC,OAAO,IAAI,CAAC,MAAM,CAAC;SACtB;QACD,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAClE,CAAC;CAEJ;AAjBD,sBAiBC"}
1
+ {"version":3,"file":"color.js","sourceRoot":"","sources":["../../src/color.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AAEnC,MAAM,OAAO,KAAK;IAKd,YAAa,KAAa,EAAE,UAAmB;QAFvC,gBAAW,GAAW,GAAG,CAAC;QAG9B,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,WAAW,GAAG,UAAU,IAAI,GAAG,CAAC;IACzC,CAAC;IAEM,OAAO;QACV,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YACpC,OAAO,IAAI,CAAC,MAAM,CAAC;QACvB,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAClE,CAAC;CAEJ"}
@@ -0,0 +1,299 @@
1
+ /**
2
+ * PoweredUp Commands
3
+ * Factory functions for creating hub and device commands
4
+ */
5
+ import * as Protocol from "./protocol";
6
+ import { BrakingStyle, Color, Profile, DeviceType, DuploTrainBaseSound } from "./types";
7
+ /**
8
+ * Create a shutdown command
9
+ */
10
+ export declare function shutdown(): Buffer;
11
+ /**
12
+ * Create a disconnect command
13
+ */
14
+ export declare function disconnect(): Buffer;
15
+ /**
16
+ * Create a set name command
17
+ */
18
+ export declare function setName(name: string): Buffer;
19
+ /**
20
+ * Request a hub property update
21
+ */
22
+ export declare function requestProperty(property: Protocol.HubProperty): Buffer;
23
+ /**
24
+ * Enable updates for a hub property
25
+ */
26
+ export declare function enablePropertyUpdates(property: Protocol.HubProperty): Buffer;
27
+ /**
28
+ * Disable updates for a hub property
29
+ */
30
+ export declare function disablePropertyUpdates(property: Protocol.HubProperty): Buffer;
31
+ /**
32
+ * Enable alert notifications
33
+ */
34
+ export declare function enableAlerts(alertType: Protocol.AlertOperation): Buffer;
35
+ /**
36
+ * Disable alert notifications
37
+ */
38
+ export declare function disableAlerts(alertType: Protocol.AlertOperation): Buffer;
39
+ /**
40
+ * Subscribe to port notifications
41
+ */
42
+ export declare function subscribe(portId: number, mode: number, deltaInterval?: number): Buffer;
43
+ /**
44
+ * Unsubscribe from port notifications
45
+ */
46
+ export declare function unsubscribe(portId: number, mode: number): Buffer;
47
+ /**
48
+ * Request port information
49
+ */
50
+ export declare function requestPortInfo(portId: number, informationType: Protocol.PortInformationType): Buffer;
51
+ /**
52
+ * Request port mode information
53
+ */
54
+ export declare function requestPortModeInfo(portId: number, mode: number, infoType: Protocol.ModeInformationType): Buffer;
55
+ /**
56
+ * Create a virtual port from two physical ports
57
+ */
58
+ export declare function createVirtualPort(portIdA: number, portIdB: number): Buffer;
59
+ /**
60
+ * Disconnect a virtual port
61
+ */
62
+ export declare function disconnectVirtualPort(virtualPortId: number): Buffer;
63
+ /**
64
+ * Stop a motor (set power to 0)
65
+ */
66
+ export declare function motorStop(portId: number): Buffer;
67
+ /**
68
+ * Brake a motor
69
+ */
70
+ export declare function motorBrake(portId: number): Buffer;
71
+ /**
72
+ * Set motor power (unregulated)
73
+ * @param portId Port ID
74
+ * @param power Power level (-100 to 100)
75
+ */
76
+ export declare function motorPower(portId: number, power: number): Buffer;
77
+ /**
78
+ * Set dual motor power (for virtual ports)
79
+ */
80
+ export declare function motorPowerDual(portId: number, power1: number, power2: number): Buffer;
81
+ /**
82
+ * Set motor speed (regulated)
83
+ * @param portId Port ID
84
+ * @param speed Speed (-100 to 100)
85
+ * @param maxPower Maximum power (0 to 100)
86
+ * @param profile Acceleration/deceleration profile
87
+ */
88
+ export declare function motorSpeed(portId: number, speed: number, maxPower?: number, profile?: Profile): Buffer;
89
+ /**
90
+ * Set dual motor speed (for virtual ports)
91
+ */
92
+ export declare function motorSpeedDual(portId: number, speed1: number, speed2: number, maxPower?: number, profile?: Profile): Buffer;
93
+ /**
94
+ * Run motor for time
95
+ * @param portId Port ID
96
+ * @param time Time in milliseconds
97
+ * @param speed Speed (-100 to 100)
98
+ * @param maxPower Maximum power (0 to 100)
99
+ * @param endState State after completion
100
+ * @param profile Acceleration/deceleration profile
101
+ */
102
+ export declare function motorRunForTime(portId: number, time: number, speed: number, maxPower?: number, endState?: BrakingStyle, profile?: Profile): Buffer;
103
+ /**
104
+ * Run motor for degrees
105
+ * @param portId Port ID
106
+ * @param degrees Degrees to rotate
107
+ * @param speed Speed (-100 to 100)
108
+ * @param maxPower Maximum power (0 to 100)
109
+ * @param endState State after completion
110
+ * @param profile Acceleration/deceleration profile
111
+ */
112
+ export declare function motorRunForDegrees(portId: number, degrees: number, speed: number, maxPower?: number, endState?: BrakingStyle, profile?: Profile): Buffer;
113
+ /**
114
+ * Go to absolute position
115
+ * @param portId Port ID
116
+ * @param position Target position in degrees
117
+ * @param speed Speed (0 to 100)
118
+ * @param maxPower Maximum power (0 to 100)
119
+ * @param endState State after completion
120
+ * @param profile Acceleration/deceleration profile
121
+ */
122
+ export declare function motorGotoPosition(portId: number, position: number, speed: number, maxPower?: number, endState?: BrakingStyle, profile?: Profile): Buffer;
123
+ /**
124
+ * Reset motor encoder
125
+ * @param portId Port ID
126
+ * @param position Position to set (default 0)
127
+ */
128
+ export declare function motorResetEncoder(portId: number, position?: number): Buffer;
129
+ /**
130
+ * Set motor acceleration time
131
+ * @param portId Port ID
132
+ * @param time Time in milliseconds (0 to 10000)
133
+ * @param profileNumber Profile number (0 to 3)
134
+ */
135
+ export declare function motorSetAccelerationTime(portId: number, time: number, profileNumber?: number): Buffer;
136
+ /**
137
+ * Set motor deceleration time
138
+ * @param portId Port ID
139
+ * @param time Time in milliseconds (0 to 10000)
140
+ * @param profileNumber Profile number (0 to 3)
141
+ */
142
+ export declare function motorSetDecelerationTime(portId: number, time: number, profileNumber?: number): Buffer;
143
+ /**
144
+ * Set LED color by color number
145
+ * @param portId Port ID of the LED
146
+ * @param color Color value
147
+ */
148
+ export declare function ledColor(portId: number, color: Color): Buffer;
149
+ /**
150
+ * Set LED color by RGB values
151
+ * @param portId Port ID of the LED
152
+ * @param red Red component (0-255)
153
+ * @param green Green component (0-255)
154
+ * @param blue Blue component (0-255)
155
+ */
156
+ export declare function ledRGB(portId: number, red: number, green: number, blue: number): Buffer;
157
+ /**
158
+ * Set Technic 3x3 Color Light Matrix pixels
159
+ * @param portId Port ID
160
+ * @param pixels Array of 9 color values (or colors with brightness)
161
+ */
162
+ export declare function technicMatrix3x3(portId: number, pixels: Color[]): Buffer;
163
+ /**
164
+ * Play Duplo Train Base sound
165
+ * @param portId Port ID of the speaker
166
+ * @param sound Sound to play
167
+ */
168
+ export declare function duploTrainSound(portId: number, sound: DuploTrainBaseSound): Buffer;
169
+ /**
170
+ * Set Duplo Train Base speaker tone
171
+ * @param portId Port ID of the speaker
172
+ * @param tone Tone value (0-10)
173
+ */
174
+ export declare function duploTrainTone(portId: number, tone: number): Buffer;
175
+ /**
176
+ * Play piezo buzzer tone
177
+ * @param portId Port ID
178
+ * @param frequency Frequency in Hz
179
+ * @param duration Duration in milliseconds
180
+ */
181
+ export declare function piezoTone(portId: number, frequency: number, duration: number): Buffer;
182
+ /**
183
+ * Stop piezo buzzer
184
+ * @param portId Port ID
185
+ */
186
+ export declare function piezoStop(portId: number): Buffer;
187
+ /**
188
+ * Set light brightness
189
+ * @param portId Port ID
190
+ * @param brightness Brightness (0-100)
191
+ */
192
+ export declare function lightBrightness(portId: number, brightness: number): Buffer;
193
+ /**
194
+ * Configure color sensor mode
195
+ * @param portId Port ID
196
+ * @param mode Mode (0=color, 1=tag, etc.)
197
+ */
198
+ export declare function colorSensorMode(portId: number, mode: number): Buffer;
199
+ /**
200
+ * Configure tilt sensor orientation
201
+ * @param portId Port ID
202
+ * @param orientation Orientation (0-5 for different orientations)
203
+ */
204
+ export declare function tiltSensorOrientation(portId: number, orientation: number): Buffer;
205
+ /**
206
+ * Configure tilt sensor impact threshold
207
+ * @param portId Port ID
208
+ * @param threshold Impact threshold (0-127)
209
+ * @param holdoff Bump holdoff in 10ms units (1-127)
210
+ */
211
+ export declare function tiltSensorImpact(portId: number, threshold: number, holdoff: number): Buffer;
212
+ /**
213
+ * Set Technic Distance Sensor LED brightness
214
+ * The sensor has 4 LEDs that can be individually controlled
215
+ * @param portId Port ID
216
+ * @param upperLeft Upper left LED brightness (0-100)
217
+ * @param upperRight Upper right LED brightness (0-100)
218
+ * @param lowerLeft Lower left LED brightness (0-100)
219
+ * @param lowerRight Lower right LED brightness (0-100)
220
+ */
221
+ export declare function setDistanceSensorLEDs(portId: number, upperLeft: number, upperRight: number, lowerLeft: number, lowerRight: number): Buffer;
222
+ /**
223
+ * Set Technic 3x3 Light Matrix pixels
224
+ * @param portId Port ID
225
+ * @param pixels Array of 9 colors (row by row, left to right)
226
+ */
227
+ export declare function setLightMatrix(portId: number, pixels: number[]): Buffer;
228
+ /**
229
+ * Play sound on Duplo Train Base Speaker
230
+ * @param portId Port ID
231
+ * @param sound Sound index to play
232
+ */
233
+ export declare function playSound(portId: number, sound: number): Buffer;
234
+ export declare const wedo2: {
235
+ /**
236
+ * Set motor power on WeDo 2.0
237
+ */
238
+ motorPower(portId: number, power: number): Buffer;
239
+ /**
240
+ * Brake motor on WeDo 2.0
241
+ */
242
+ motorBrake(portId: number): Buffer;
243
+ /**
244
+ * Float motor on WeDo 2.0
245
+ */
246
+ motorFloat(portId: number): Buffer;
247
+ /**
248
+ * Set LED color on WeDo 2.0
249
+ */
250
+ ledColor(portId: number, color: Color): Buffer;
251
+ /**
252
+ * Set LED RGB on WeDo 2.0
253
+ */
254
+ ledRGB(portId: number, red: number, green: number, blue: number): Buffer;
255
+ /**
256
+ * Play piezo tone on WeDo 2.0
257
+ */
258
+ piezoTone(portId: number, frequency: number, duration: number): Buffer;
259
+ /**
260
+ * Stop piezo on WeDo 2.0
261
+ */
262
+ piezoStop(portId: number): Buffer;
263
+ /**
264
+ * Subscribe to sensor on WeDo 2.0
265
+ */
266
+ subscribe(portId: number, deviceType: DeviceType, mode: number): Buffer;
267
+ /**
268
+ * Unsubscribe from sensor on WeDo 2.0
269
+ */
270
+ unsubscribe(portId: number, deviceType: DeviceType, mode: number): Buffer;
271
+ /**
272
+ * Disconnect WeDo 2.0
273
+ */
274
+ disconnect(): Buffer;
275
+ /**
276
+ * Set name on WeDo 2.0
277
+ */
278
+ setName(name: string): Buffer;
279
+ };
280
+ /**
281
+ * Check if a device type is a motor
282
+ */
283
+ export declare function isMotor(deviceType: DeviceType): boolean;
284
+ /**
285
+ * Check if a device type is a tacho motor (has encoder)
286
+ */
287
+ export declare function isTachoMotor(deviceType: DeviceType): boolean;
288
+ /**
289
+ * Check if a device type is an absolute position motor
290
+ */
291
+ export declare function isAbsoluteMotor(deviceType: DeviceType): boolean;
292
+ /**
293
+ * Check if a device type is a sensor
294
+ */
295
+ export declare function isSensor(deviceType: DeviceType): boolean;
296
+ /**
297
+ * Get default sensor mode for a device type
298
+ */
299
+ export declare function getDefaultSensorMode(deviceType: DeviceType): number;